diff --git a/.eslintrc b/.eslintrc index 5959670475..c6684e37ad 100644 --- a/.eslintrc +++ b/.eslintrc @@ -27,21 +27,6 @@ "max-len": "off", "no-trailing-spaces": "error", "no-underscore-dangle": "off", - "sort-imports": [ - "error", - { - "ignoreCase": true, - "ignoreDeclarationSort": false, - "ignoreMemberSort": false, - "memberSyntaxSortOrder": [ - "all", - "single", - "multiple", - "none" - ], - "allowSeparatedGroups": false - } - ], "padding-line-between-statements": [ "error", { @@ -114,6 +99,21 @@ "export" ] } + ], + "sort-imports": [ + "error", + { + "ignoreCase": true, + "ignoreDeclarationSort": false, + "ignoreMemberSort": false, + "memberSyntaxSortOrder": [ + "all", + "single", + "multiple", + "none" + ], + "allowSeparatedGroups": false + } ] }, "settings": { diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 92fb5c07c2..e1f90d66bc 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -1,6 +1,5 @@ -name: CI - -on: [push] +name: ci +on: push jobs: build: diff --git a/CHANGELOG.md b/CHANGELOG.md index cd6103329e..9504fbbf9f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,11 +1,18 @@ # Jira.js changelog +### 2.19.0 + +- Version 2, Version 3: + - `jqlFunctionsApps` API added. + - A lot of changes in Models. + - A log of new API added. + ### 2.18.0 - Agile - `Fields` model added for `Issue` Model. - Version 3: - - Support simple string body (comment) was added to `addComment` method of `issueComments` API. + - Support simple string body (comment) was added to `addComment` method of `issueComments` API. Thanks to [Michael "Mike" Ferris](https://github.com/Cellule) for releasing feature. - Version 2, Version 3: - `putAddonProperty` method fixed. Now you can provide property for set. diff --git a/README.md b/README.md index 42c2ceed9c..c0fa1415fe 100644 --- a/README.md +++ b/README.md @@ -343,6 +343,7 @@ Available groups: - [jiraExpressions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-jira-expressions/#api-group-jira-expressions) - [jiraSettings](https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-jira-settings/#api-group-jira-settings) - [jql](https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-jql/#api-group-jql) + - [jqlFunctionsApps](https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-jql-functions--apps-/#api-group-jql-functions--apps-) - [labels](https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-labels/#api-group-labels) - [licenseMetrics](https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-license-metrics/#api-group-license-metrics) - [myself](https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-myself/#api-group-myself) @@ -433,6 +434,7 @@ Available groups: - [jiraExpressions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-jira-expressions/#api-group-jira-expressions) - [jiraSettings](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-jira-settings/#api-group-jira-settings) - [jql](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-jql/#api-group-jql) + - [jqlFunctionsApps](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-jql-functions--apps-/#api-group-jql-functions--apps-) - [labels](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-labels/#api-group-labels) - [licenseMetrics](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-license-metrics/#api-group-license-metrics) - [myself](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-myself/#api-group-myself) diff --git a/package-lock.json b/package-lock.json index 354acc7f8d..c9c3d5d7f1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,49 +1,49 @@ { "name": "jira.js", - "version": "2.18.0", + "version": "2.19.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "jira.js", - "version": "2.18.0", + "version": "2.19.0", "license": "MIT", "dependencies": { "atlassian-jwt": "^2.0.2", "axios": "^1.4.0", "form-data": "^4.0.0", "oauth": "^0.10.0", - "tslib": "^2.5.0" + "tslib": "^2.5.3" }, "devDependencies": { "@swc-node/register": "^1.6.5", "@swc/helpers": "^0.5.1", "@types/express": "^4.17.17", - "@types/node": "^18.16.3", + "@types/node": "^10.17.60", "@types/oauth": "^0.9.1", - "@types/sinon": "^10.0.14", - "@typescript-eslint/eslint-plugin": "^5.59.1", - "@typescript-eslint/parser": "^5.59.1", - "ava": "^5.2.0", - "dotenv": "^16.0.3", - "eslint": "^8.39.0", + "@types/sinon": "^10.0.15", + "@typescript-eslint/eslint-plugin": "^5.59.8", + "@typescript-eslint/parser": "^5.59.8", + "ava": "^5.3.0", + "dotenv": "^16.1.4", + "eslint": "^8.42.0", "eslint-config-airbnb": "^19.0.4", "eslint-config-airbnb-typescript": "^17.0.0", "eslint-import-resolver-typescript": "^3.5.5", "eslint-plugin-import": "^2.27.5", "prettier": "^2.8.8", "prettier-plugin-jsdoc": "^0.4.2", - "sinon": "^15.0.4", + "sinon": "^15.1.0", "ts-node": "^10.9.1", - "typedoc": "^0.24.6", + "typedoc": "^0.24.8", "typedoc-plugin-extras": "^2.3.3", - "typescript": "^5.0.4" + "typescript": "^5.1.3" } }, "node_modules/@babel/runtime": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.5.tgz", - "integrity": "sha512-8jI69toZqqcsnqGGqwGS4Qb1VwLOEp4hz+CXPywcvjs60u3B4Pom/U/7rm4W8tMOYEB+E9wgD0mW1l3r8qlI9Q==", + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.3.tgz", + "integrity": "sha512-XsDuspWKLUsxwCp6r7EhsExHtYfbe5oAGQ19kqngTdCPUoPQzOPdUbD/pB9PJiwb2ptYKQDjSJT3R6dC+EPqfQ==", "dev": true, "peer": true, "dependencies": { @@ -81,23 +81,23 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.0.tgz", - "integrity": "sha512-vITaYzIcNmjn5tF5uxcZ/ft7/RXGrMUIS9HalWckEOF6ESiwXKoMzAQf2UW0aVd6rnOeExTJVd5hmWXucBKGXQ==", + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.1.tgz", + "integrity": "sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.2.tgz", - "integrity": "sha512-3W4f5tDUra+pA+FzgugqL2pRimUTDJWKr7BINqOpkZrC0uYI0NIc0/JFgBROCU07HR6GieA5m3/rsPIhDmCXTQ==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.3.tgz", + "integrity": "sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.5.1", + "espree": "^9.5.2", "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", @@ -113,18 +113,18 @@ } }, "node_modules/@eslint/js": { - "version": "8.39.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.39.0.tgz", - "integrity": "sha512-kf9RB0Fg7NZfap83B3QOqOGg9QmD9yBudqQXzzOtn3i4y7ZUXe5ONeW34Gwi+TxhH4mvj72R1Zc300KUMa9Bng==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.42.0.tgz", + "integrity": "sha512-6SWlXpWU5AvId8Ac7zjzmIOqMOba/JWY8XZ4A7q7Gn1Vlfg/SFFIlrtHXt9nPn4op9ZPAkl91Jao+QQv3r/ukw==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz", + "integrity": "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==", "dev": true, "dependencies": { "@humanwhocodes/object-schema": "^1.2.1", @@ -215,17 +215,17 @@ } }, "node_modules/@pkgr/utils": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@pkgr/utils/-/utils-2.3.1.tgz", - "integrity": "sha512-wfzX8kc1PMyUILA+1Z/EqoE4UCXGy0iRGMhPwdfae1+f0OXlLqCk+By+aMzgJBzR9AzS4CDizioG6Ss1gvAFJw==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@pkgr/utils/-/utils-2.4.1.tgz", + "integrity": "sha512-JOqwkgFEyi+OROIyq7l4Jy28h/WwhDnG/cPkXG2Z1iFbubB6jsHW1NDvmyOzTBxHr3yg68YGirmh1JUgMqa+9w==", "dev": true, "dependencies": { "cross-spawn": "^7.0.3", + "fast-glob": "^3.2.12", "is-glob": "^4.0.3", - "open": "^8.4.0", + "open": "^9.1.0", "picocolors": "^1.0.0", - "tiny-glob": "^0.2.9", - "tslib": "^2.4.0" + "tslib": "^2.5.0" }, "engines": { "node": "^12.20.0 || ^14.18.0 || >=16.0.0" @@ -244,21 +244,12 @@ } }, "node_modules/@sinonjs/fake-timers": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz", - "integrity": "sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==", - "dev": true, - "dependencies": { - "@sinonjs/commons": "^2.0.0" - } - }, - "node_modules/@sinonjs/fake-timers/node_modules/@sinonjs/commons": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz", - "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.2.0.tgz", + "integrity": "sha512-OPwQlEdg40HAj5KNF8WW6q2KG4Z+cBCZb3m4ninfTZKaBmbIJodviQsDBoYMPHkOyJJMHnOJo5j2+LKDOhOACg==", "dev": true, "dependencies": { - "type-detect": "4.0.8" + "@sinonjs/commons": "^3.0.0" } }, "node_modules/@sinonjs/samsam": { @@ -336,9 +327,9 @@ } }, "node_modules/@swc/core": { - "version": "1.3.55", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.55.tgz", - "integrity": "sha512-w/lN3OuJsuy868yJZKop+voZLVzI5pVSoopQVtgDNkEzejnPuRp9XaeAValvuMaWqKoTMtOjLzEPyv/xiAGYQQ==", + "version": "1.3.62", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.62.tgz", + "integrity": "sha512-J58hWY+/G8vOr4J6ZH9hLg0lMSijZtqIIf4HofZezGog/pVX6sJyBJ40dZ1ploFkDIlWTWvJyqtpesBKS73gkQ==", "dev": true, "hasInstallScript": true, "peer": true, @@ -350,16 +341,16 @@ "url": "https://opencollective.com/swc" }, "optionalDependencies": { - "@swc/core-darwin-arm64": "1.3.55", - "@swc/core-darwin-x64": "1.3.55", - "@swc/core-linux-arm-gnueabihf": "1.3.55", - "@swc/core-linux-arm64-gnu": "1.3.55", - "@swc/core-linux-arm64-musl": "1.3.55", - "@swc/core-linux-x64-gnu": "1.3.55", - "@swc/core-linux-x64-musl": "1.3.55", - "@swc/core-win32-arm64-msvc": "1.3.55", - "@swc/core-win32-ia32-msvc": "1.3.55", - "@swc/core-win32-x64-msvc": "1.3.55" + "@swc/core-darwin-arm64": "1.3.62", + "@swc/core-darwin-x64": "1.3.62", + "@swc/core-linux-arm-gnueabihf": "1.3.62", + "@swc/core-linux-arm64-gnu": "1.3.62", + "@swc/core-linux-arm64-musl": "1.3.62", + "@swc/core-linux-x64-gnu": "1.3.62", + "@swc/core-linux-x64-musl": "1.3.62", + "@swc/core-win32-arm64-msvc": "1.3.62", + "@swc/core-win32-ia32-msvc": "1.3.62", + "@swc/core-win32-x64-msvc": "1.3.62" }, "peerDependencies": { "@swc/helpers": "^0.5.0" @@ -371,9 +362,9 @@ } }, "node_modules/@swc/core-darwin-arm64": { - "version": "1.3.55", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.55.tgz", - "integrity": "sha512-UnHC8aPg/JvHhgXxTU6EhTtfnYNS7nhq8EKB8laNPxlHbwEyMBVQ2QuJHlNCtFtvSfX/uH5l04Ld1iGXnBTfdQ==", + "version": "1.3.62", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.62.tgz", + "integrity": "sha512-MmGilibITz68LEje6vJlKzc2gUUSgzvB3wGLSjEORikTNeM7P8jXVxE4A8fgZqDeudJUm9HVWrxCV+pHDSwXhA==", "cpu": [ "arm64" ], @@ -388,9 +379,9 @@ } }, "node_modules/@swc/core-darwin-x64": { - "version": "1.3.55", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.55.tgz", - "integrity": "sha512-VNJkFVARrktIqtaLrD1NFA54gqekH7eAUcUY2U2SdHwO67HYjfMXMxlugLP5PDasSKpTkrVooUdhkffoA5W50g==", + "version": "1.3.62", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.62.tgz", + "integrity": "sha512-Xl93MMB3sCWVlYWuQIB+v6EQgzoiuQYK5tNt9lsHoIEVu2zLdkQjae+5FUHZb1VYqCXIiWcULFfVz0R4Sjb7JQ==", "cpu": [ "x64" ], @@ -405,9 +396,9 @@ } }, "node_modules/@swc/core-linux-arm-gnueabihf": { - "version": "1.3.55", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.55.tgz", - "integrity": "sha512-6OcohhIFKKNW/TpJt26Tpul8zyL7dmp1Lnyj2BX9ycsZZ5UnsNiGqn37mrqJgVTx/ansEmbyOmKu2mzm/Ct6cQ==", + "version": "1.3.62", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.62.tgz", + "integrity": "sha512-nJsp6O7kCtAjTTMcIjVB0g5y1JNiYAa5q630eiwrnaHUusEFoANDdORI3Z9vXeikMkng+6yIv9/V8Rb093xLjQ==", "cpu": [ "arm" ], @@ -422,9 +413,9 @@ } }, "node_modules/@swc/core-linux-arm64-gnu": { - "version": "1.3.55", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.55.tgz", - "integrity": "sha512-MfZtXGBv21XWwvrSMP0CMxScDolT/iv5PRl9UBprYUehwWr7BNjA3V9W7QQ+kKoPyORWk7LX7OpJZF3FnO618Q==", + "version": "1.3.62", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.62.tgz", + "integrity": "sha512-XGsV93vpUAopDt5y6vPwbK1Nc/MlL55L77bAZUPIiosWD1cWWPHNtNSpriE6+I+JiMHe0pqtfS/SSTk6ZkFQVw==", "cpu": [ "arm64" ], @@ -439,9 +430,9 @@ } }, "node_modules/@swc/core-linux-arm64-musl": { - "version": "1.3.55", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.55.tgz", - "integrity": "sha512-iZJo+7L5lv10W0f0C6SlyteAyMJt5Tp+aH3+nlAwKdtc+VjyL1sGhR8DJMXp2/buBRZJ9tjEtpXKDaWUdSdF7Q==", + "version": "1.3.62", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.62.tgz", + "integrity": "sha512-ESUmJjSlTTkoBy9dMG49opcNn8BmviqStMhwyeD1G8XRnmRVCZZgoBOKdvCXmJhw8bQXDhZumeaTUB+OFUKVXg==", "cpu": [ "arm64" ], @@ -456,9 +447,9 @@ } }, "node_modules/@swc/core-linux-x64-gnu": { - "version": "1.3.55", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.55.tgz", - "integrity": "sha512-Rmc8ny/mslzzz0+wNK9/mLdyAWVbMZHRSvljhpzASmq48NBkmZ5vk9/WID6MnUz2e9cQ0JxJQs8t39KlFJtW3g==", + "version": "1.3.62", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.62.tgz", + "integrity": "sha512-wnHJkt3ZBrax3SFnUHDcncG6mrSg9ZZjMhQV9Mc3JL1x1s1Gy9rGZCoBNnV/BUZWTemxIBcQbANRSDut/WO+9A==", "cpu": [ "x64" ], @@ -473,9 +464,9 @@ } }, "node_modules/@swc/core-linux-x64-musl": { - "version": "1.3.55", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.55.tgz", - "integrity": "sha512-Ymoc4xxINzS93ZjVd2UZfLZk1jF6wHjdCbC1JF+0zK3IrNrxCIDoWoaAj0+Bbvyo3hD1Xg/cneSTsqX8amnnuQ==", + "version": "1.3.62", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.62.tgz", + "integrity": "sha512-9oRbuTC/VshB66Rgwi3pTq3sPxSTIb8k9L1vJjES+dDMKa29DAjPtWCXG/pyZ00ufpFZgkGEuAHH5uqUcr1JQg==", "cpu": [ "x64" ], @@ -490,9 +481,9 @@ } }, "node_modules/@swc/core-win32-arm64-msvc": { - "version": "1.3.55", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.55.tgz", - "integrity": "sha512-OhnmFstq2qRU2GI5I0G/8L+vc2rx8+w+IOA6EZBrY4FuMCbPIZKKzlnAIxYn2W+yD4gvBzYP3tgEcaDfQk6EkA==", + "version": "1.3.62", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.62.tgz", + "integrity": "sha512-zv14vlF2VRrxS061XkfzGjCYnOrEo5glKJjLK5PwUKysIoVrx/L8nAbFxjkX5cObdlyoqo+ekelyBPAO+4bS0w==", "cpu": [ "arm64" ], @@ -507,9 +498,9 @@ } }, "node_modules/@swc/core-win32-ia32-msvc": { - "version": "1.3.55", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.55.tgz", - "integrity": "sha512-3VR5rHZ6uoL/Vo3djV30GgX2oyDwWWsk+Yp+nyvYyBaKYiH2zeHfxdYRLSQV3W7kSlCAH3oDYpSljrWZ0t5XEQ==", + "version": "1.3.62", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.62.tgz", + "integrity": "sha512-8MC/PZQSsOP2iA/81tAfNRqMWyEqTS/8zKUI67vPuLvpx6NAjRn3E9qBv7iFqH79iqZNzqSMo3awnLrKZyFbcw==", "cpu": [ "ia32" ], @@ -524,9 +515,9 @@ } }, "node_modules/@swc/core-win32-x64-msvc": { - "version": "1.3.55", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.55.tgz", - "integrity": "sha512-KBtMFtRwnbxBugYf6i2ePqEGdxsk715KcqGMjGhxNg7BTACnXnhj37irHu2e7A7wZffbkUVUYuj/JEgVkEjSxg==", + "version": "1.3.62", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.62.tgz", + "integrity": "sha512-GJSmUJ95HKHZXAxiuPUmrcm/S3ivQvEzXhOZaIqYBIwUsm02vFZkClsV7eIKzWjso1t0+I/8MjrnUNaSWqh1rQ==", "cpu": [ "x64" ], @@ -568,9 +559,9 @@ "dev": true }, "node_modules/@tsconfig/node16": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", - "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", + "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", "dev": true }, "node_modules/@types/body-parser": { @@ -593,9 +584,9 @@ } }, "node_modules/@types/debug": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.7.tgz", - "integrity": "sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==", + "version": "4.1.8", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.8.tgz", + "integrity": "sha512-/vPO1EPOs306Cvhwv7KfVfYvOJqA/S/AXjaHQiJboCZzcNDb+TIJFN9/2C9DZ//ijSKWioNyUxD792QmDJ+HKQ==", "dev": true, "dependencies": { "@types/ms": "*" @@ -614,9 +605,9 @@ } }, "node_modules/@types/express-serve-static-core": { - "version": "4.17.34", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.34.tgz", - "integrity": "sha512-fvr49XlCGoUj2Pp730AItckfjat4WNb0lb3kfrLWffd+RLeoGAMsq7UOy04PAPtoL01uKwcp6u8nhzpgpDYr3w==", + "version": "4.17.35", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.35.tgz", + "integrity": "sha512-wALWQwrgiB2AWTT91CB62b6Yt0sNHpznUXeZEcnPU3DRdlDIz74x8Qg1UUYKSVFi+va5vKOLYRBI1bRKiLLKIg==", "dev": true, "dependencies": { "@types/node": "*", @@ -626,9 +617,9 @@ } }, "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "version": "7.0.12", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz", + "integrity": "sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==", "dev": true }, "node_modules/@types/json5": { @@ -659,9 +650,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "18.16.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.16.3.tgz", - "integrity": "sha512-OPs5WnnT1xkCBiuQrZA4+YAV4HEJejmHneyraIaxsbev5yCEr6KMwINNFP9wQeFIw8FWcoTqF3vQsa5CDaI+8Q==", + "version": "10.17.60", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", + "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==", "dev": true }, "node_modules/@types/oauth": { @@ -686,9 +677,9 @@ "dev": true }, "node_modules/@types/semver": { - "version": "7.3.13", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", - "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.0.tgz", + "integrity": "sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==", "dev": true }, "node_modules/@types/send": { @@ -712,9 +703,9 @@ } }, "node_modules/@types/sinon": { - "version": "10.0.14", - "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-10.0.14.tgz", - "integrity": "sha512-mn72up6cjaMyMuaPaa/AwKf6WtsSRysQC7wxFkCm1XcOKXPM1z+5Y4H5wjIVBz4gdAkjvZxVVfjA6ba1nHr5WQ==", + "version": "10.0.15", + "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-10.0.15.tgz", + "integrity": "sha512-3lrFNQG0Kr2LDzvjyjB6AMJk4ge+8iYhQfdnSwIwlG88FUOV43kPcQqDZkDa/h3WSZy6i8Fr0BSjfQtB1B3xuQ==", "dev": true, "dependencies": { "@types/sinonjs__fake-timers": "*" @@ -733,15 +724,15 @@ "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.1.tgz", - "integrity": "sha512-AVi0uazY5quFB9hlp2Xv+ogpfpk77xzsgsIEWyVS7uK/c7MZ5tw7ZPbapa0SbfkqE0fsAMkz5UwtgMLVk2BQAg==", + "version": "5.59.8", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.8.tgz", + "integrity": "sha512-JDMOmhXteJ4WVKOiHXGCoB96ADWg9q7efPWHRViT/f09bA8XOMLAVHHju3l0MkZnG1izaWXYmgvQcUjTRcpShQ==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.4.0", - "@typescript-eslint/scope-manager": "5.59.1", - "@typescript-eslint/type-utils": "5.59.1", - "@typescript-eslint/utils": "5.59.1", + "@typescript-eslint/scope-manager": "5.59.8", + "@typescript-eslint/type-utils": "5.59.8", + "@typescript-eslint/utils": "5.59.8", "debug": "^4.3.4", "grapheme-splitter": "^1.0.4", "ignore": "^5.2.0", @@ -767,14 +758,14 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.59.1.tgz", - "integrity": "sha512-nzjFAN8WEu6yPRDizIFyzAfgK7nybPodMNFGNH0M9tei2gYnYszRDqVA0xlnRjkl7Hkx2vYrEdb6fP2a21cG1g==", + "version": "5.59.8", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.59.8.tgz", + "integrity": "sha512-AnR19RjJcpjoeGojmwZtCwBX/RidqDZtzcbG3xHrmz0aHHoOcbWnpDllenRDmDvsV0RQ6+tbb09/kyc+UT9Orw==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.59.1", - "@typescript-eslint/types": "5.59.1", - "@typescript-eslint/typescript-estree": "5.59.1", + "@typescript-eslint/scope-manager": "5.59.8", + "@typescript-eslint/types": "5.59.8", + "@typescript-eslint/typescript-estree": "5.59.8", "debug": "^4.3.4" }, "engines": { @@ -794,13 +785,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.1.tgz", - "integrity": "sha512-mau0waO5frJctPuAzcxiNWqJR5Z8V0190FTSqRw1Q4Euop6+zTwHAf8YIXNwDOT29tyUDrQ65jSg9aTU/H0omA==", + "version": "5.59.8", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.8.tgz", + "integrity": "sha512-/w08ndCYI8gxGf+9zKf1vtx/16y8MHrZs5/tnjHhMLNSixuNcJavSX4wAiPf4aS5x41Es9YPCn44MIe4cxIlig==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.59.1", - "@typescript-eslint/visitor-keys": "5.59.1" + "@typescript-eslint/types": "5.59.8", + "@typescript-eslint/visitor-keys": "5.59.8" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -811,13 +802,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.59.1.tgz", - "integrity": "sha512-ZMWQ+Oh82jWqWzvM3xU+9y5U7MEMVv6GLioM3R5NJk6uvP47kZ7YvlgSHJ7ERD6bOY7Q4uxWm25c76HKEwIjZw==", + "version": "5.59.8", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.59.8.tgz", + "integrity": "sha512-+5M518uEIHFBy3FnyqZUF3BMP+AXnYn4oyH8RF012+e7/msMY98FhGL5SrN29NQ9xDgvqCgYnsOiKp1VjZ/fpA==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "5.59.1", - "@typescript-eslint/utils": "5.59.1", + "@typescript-eslint/typescript-estree": "5.59.8", + "@typescript-eslint/utils": "5.59.8", "debug": "^4.3.4", "tsutils": "^3.21.0" }, @@ -838,9 +829,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.1.tgz", - "integrity": "sha512-dg0ICB+RZwHlysIy/Dh1SP+gnXNzwd/KS0JprD3Lmgmdq+dJAJnUPe1gNG34p0U19HvRlGX733d/KqscrGC1Pg==", + "version": "5.59.8", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.8.tgz", + "integrity": "sha512-+uWuOhBTj/L6awoWIg0BlWy0u9TyFpCHrAuQ5bNfxDaZ1Ppb3mx6tUigc74LHcbHpOHuOTOJrBoAnhdHdaea1w==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -851,13 +842,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.1.tgz", - "integrity": "sha512-lYLBBOCsFltFy7XVqzX0Ju+Lh3WPIAWxYpmH/Q7ZoqzbscLiCW00LeYCdsUnnfnj29/s1WovXKh2gwCoinHNGA==", + "version": "5.59.8", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.8.tgz", + "integrity": "sha512-Jy/lPSDJGNow14vYu6IrW790p7HIf/SOV1Bb6lZ7NUkLc2iB2Z9elESmsaUtLw8kVqogSbtLH9tut5GCX1RLDg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.59.1", - "@typescript-eslint/visitor-keys": "5.59.1", + "@typescript-eslint/types": "5.59.8", + "@typescript-eslint/visitor-keys": "5.59.8", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -878,17 +869,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.59.1.tgz", - "integrity": "sha512-MkTe7FE+K1/GxZkP5gRj3rCztg45bEhsd8HYjczBuYm+qFHP5vtZmjx3B0yUCDotceQ4sHgTyz60Ycl225njmA==", + "version": "5.59.8", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.59.8.tgz", + "integrity": "sha512-Tr65630KysnNn9f9G7ROF3w1b5/7f6QVCJ+WK9nhIocWmx9F+TmCAcglF26Vm7z8KCTwoKcNEBZrhlklla3CKg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@types/json-schema": "^7.0.9", "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.59.1", - "@typescript-eslint/types": "5.59.1", - "@typescript-eslint/typescript-estree": "5.59.1", + "@typescript-eslint/scope-manager": "5.59.8", + "@typescript-eslint/types": "5.59.8", + "@typescript-eslint/typescript-estree": "5.59.8", "eslint-scope": "^5.1.1", "semver": "^7.3.7" }, @@ -904,12 +895,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.1.tgz", - "integrity": "sha512-6waEYwBTCWryx0VJmP7JaM4FpipLsFl9CvYf2foAE8Qh/Y0s+bxWysciwOs0LTBED4JCaNxTZ5rGadB14M6dwA==", + "version": "5.59.8", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.8.tgz", + "integrity": "sha512-pJhi2ms0x0xgloT7xYabil3SGGlojNNKjK/q6dB3Ey0uJLMjK2UDGJvHieiyJVW/7C3KI+Z4Q3pEHkm4ejA+xQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.59.1", + "@typescript-eslint/types": "5.59.8", "eslint-visitor-keys": "^3.3.0" }, "engines": { @@ -1193,12 +1184,12 @@ } }, "node_modules/ava": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-5.2.0.tgz", - "integrity": "sha512-W8yxFXJr/P68JP55eMpQIa6AiXhCX3VeuajM8nolyWNExcMDD6rnIWKTjw0B/+GkFHBIaN6Jd0LtcMThcoqVfg==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-5.3.0.tgz", + "integrity": "sha512-QYvBdyygl1LGX13IuYsC4bkwVCzZeovMGbxYkD73i7DVJxNlWnFa06YgrBOTbjw2QvSKUl5fOJ92Kj5WK9hSeg==", "dev": true, "dependencies": { - "acorn": "^8.8.1", + "acorn": "^8.8.2", "acorn-walk": "^8.2.0", "ansi-styles": "^6.2.1", "arrgv": "^1.0.2", @@ -1208,7 +1199,7 @@ "chalk": "^5.2.0", "chokidar": "^3.5.3", "chunkd": "^2.0.1", - "ci-info": "^3.7.1", + "ci-info": "^3.8.0", "ci-parallel-vars": "^1.0.1", "clean-yaml-object": "^0.1.0", "cli-truncate": "^3.1.0", @@ -1217,10 +1208,9 @@ "concordance": "^5.0.4", "currently-unhandled": "^0.4.1", "debug": "^4.3.4", - "del": "^7.0.0", "emittery": "^1.0.1", "figures": "^5.0.0", - "globby": "^13.1.3", + "globby": "^13.1.4", "ignore-by-default": "^2.1.0", "indent-string": "^5.0.0", "is-error": "^2.2.2", @@ -1236,13 +1226,12 @@ "plur": "^5.1.0", "pretty-ms": "^8.0.0", "resolve-cwd": "^3.0.0", - "slash": "^3.0.0", "stack-utils": "^2.0.6", "strip-ansi": "^7.0.1", "supertap": "^3.0.1", "temp-dir": "^3.0.0", - "write-file-atomic": "^5.0.0", - "yargs": "^17.6.2" + "write-file-atomic": "^5.0.1", + "yargs": "^17.7.2" }, "bin": { "ava": "entrypoints/cli.mjs" @@ -1278,7 +1267,7 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ava/node_modules/globby/node_modules/slash": { + "node_modules/ava/node_modules/slash": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", @@ -1303,9 +1292,9 @@ } }, "node_modules/axe-core": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.7.0.tgz", - "integrity": "sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==", + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.7.2.tgz", + "integrity": "sha512-zIURGIS1E1Q4pcrMjp+nnEh+16G56eG/MUllJH8yEvw7asDo7Ac9uhC9KIH5jzpITueEZolfYglnCGIuSBz39g==", "dev": true, "peer": true, "engines": { @@ -1338,6 +1327,15 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, + "node_modules/big-integer": { + "version": "1.6.51", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", + "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, "node_modules/binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", @@ -1359,6 +1357,18 @@ "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==", "dev": true }, + "node_modules/bplist-parser": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz", + "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==", + "dev": true, + "dependencies": { + "big-integer": "^1.6.44" + }, + "engines": { + "node": ">= 5.10.0" + } + }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -1387,6 +1397,21 @@ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "dev": true }, + "node_modules/bundle-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz", + "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==", + "dev": true, + "dependencies": { + "run-applescript": "^5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", @@ -1841,82 +1866,66 @@ "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", + "node_modules/default-browser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz", + "integrity": "sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==", "dev": true, "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" + "bundle-name": "^3.0.0", + "default-browser-id": "^3.0.0", + "execa": "^7.1.1", + "titleize": "^3.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=14.16" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/del": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/del/-/del-7.0.0.tgz", - "integrity": "sha512-tQbV/4u5WVB8HMJr08pgw0b6nG4RGt/tj+7Numvq+zqcvUFeMaIWWOUFltiU+6go8BSO2/ogsB4EasDaj0y68Q==", + "node_modules/default-browser-id": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz", + "integrity": "sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==", "dev": true, "dependencies": { - "globby": "^13.1.2", - "graceful-fs": "^4.2.10", - "is-glob": "^4.0.3", - "is-path-cwd": "^3.0.0", - "is-path-inside": "^4.0.0", - "p-map": "^5.5.0", - "rimraf": "^3.0.2", - "slash": "^4.0.0" + "bplist-parser": "^0.2.0", + "untildify": "^4.0.0" }, "engines": { - "node": ">=14.16" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/del/node_modules/globby": { - "version": "13.1.4", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.4.tgz", - "integrity": "sha512-iui/IiiW+QrJ1X1hKH5qwlMQyv34wJAYwH1vrf8b9kBA4sNiif3gKsMHa+BrdnOpEudWjpotfa7LrTzB1ERS/g==", + "node_modules/define-lazy-prop": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz", + "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", "dev": true, - "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/del/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "node_modules/define-properties": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", + "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", "dev": true, + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, "engines": { - "node": ">=12" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/delayed-stream": { @@ -1970,12 +1979,15 @@ } }, "node_modules/dotenv": { - "version": "16.0.3", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz", - "integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==", + "version": "16.1.4", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.1.4.tgz", + "integrity": "sha512-m55RtE8AsPeJBpOIFKihEmqUcoVncQIwo7x9U8ZwLEZw9ZpXboz2c+rvog+jUaJvVrZ5kBOeYQBX5+8Aa/OZQw==", "dev": true, "engines": { "node": ">=12" + }, + "funding": { + "url": "https://github.com/motdotla/dotenv?sponsor=1" } }, "node_modules/eastasianwidth": { @@ -2003,9 +2015,9 @@ "dev": true }, "node_modules/enhanced-resolve": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.13.0.tgz", - "integrity": "sha512-eyV8f0y1+bzyfh8xAwW/WTSZpLbjhqc4ne9eGSH4Zo2ejdyiNG9pU6mf9DG8a7+Auk6MFTlNOT4Y2y/9k8GKVg==", + "version": "5.14.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.14.1.tgz", + "integrity": "sha512-Vklwq2vDKtl0y/vtwjSesgJ5MYS7Etuk5txS8VdKL4AOS1aUlD96zqIfsOSLQsdv3xgMRbtkWM8eG9XDfKUPow==", "dev": true, "dependencies": { "graceful-fs": "^4.2.4", @@ -2146,16 +2158,16 @@ } }, "node_modules/eslint": { - "version": "8.39.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.39.0.tgz", - "integrity": "sha512-mwiok6cy7KTW7rBpo05k6+p4YVZByLNjAZ/ACB9DRCu4YDRwjXI01tWHp6KAUWelsBetTxKK/2sHB0vdS8Z2Og==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.42.0.tgz", + "integrity": "sha512-ulg9Ms6E1WPf67PHaEY4/6E2tEn5/f7FXGzr3t9cBMugOmf1INYvuUwwh1aXQN4MfJ6a5K2iNwP3w4AColvI9A==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.0.2", - "@eslint/js": "8.39.0", - "@humanwhocodes/config-array": "^0.11.8", + "@eslint/eslintrc": "^2.0.3", + "@eslint/js": "8.42.0", + "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", "ajv": "^6.10.0", @@ -2165,8 +2177,8 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.0", - "espree": "^9.5.1", + "eslint-visitor-keys": "^3.4.1", + "espree": "^9.5.2", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -2174,13 +2186,12 @@ "find-up": "^5.0.0", "glob-parent": "^6.0.2", "globals": "^13.19.0", - "grapheme-splitter": "^1.0.4", + "graphemer": "^1.4.0", "ignore": "^5.2.0", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", @@ -2576,9 +2587,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.0.tgz", - "integrity": "sha512-HPpKPUBQcAsZOsHAFwTtIKcYlCje62XB7SEAcxjtmW6TD1WVpkS6i6/hOVtTZIl4zGj/mBqpFVGvaDneik+VoQ==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", + "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2655,15 +2666,6 @@ "node": ">=10.13.0" } }, - "node_modules/eslint/node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/eslint/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -2677,14 +2679,14 @@ } }, "node_modules/espree": { - "version": "9.5.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.1.tgz", - "integrity": "sha512-5yxtHSZXRSW5pvv3hAlXM5+/Oswi1AUFqBmbibKb5s6bp3rGIDkyXU6xCoyuuLhijr4SFwPrXRoZjz0AZDN9tg==", + "version": "9.5.2", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.2.tgz", + "integrity": "sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==", "dev": true, "dependencies": { "acorn": "^8.8.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.0" + "eslint-visitor-keys": "^3.4.1" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2748,6 +2750,29 @@ "node": ">=0.10.0" } }, + "node_modules/execa": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-7.1.1.tgz", + "integrity": "sha512-wH0eMf/UXckdUYnO21+HDztteVv05rq2GXksxT4fCGeHkBhw1DROXh40wcjMcRqDOWE7iPJ4n3M7e2+YFP+76Q==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.1", + "human-signals": "^4.3.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^3.0.7", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": "^14.18.0 || ^16.14.0 || >=18.0.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -2755,9 +2780,9 @@ "dev": true }, "node_modules/fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", "dev": true }, "node_modules/fast-glob": { @@ -2988,19 +3013,32 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", + "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", "dev": true, "dependencies": { "function-bind": "^1.1.1", "has": "^1.0.3", + "has-proto": "^1.0.1", "has-symbols": "^1.0.3" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/get-symbol-description": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", @@ -3018,10 +3056,13 @@ } }, "node_modules/get-tsconfig": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.5.0.tgz", - "integrity": "sha512-MjhiaIWCJ1sAU4pIQ5i5OfOuHHxVo1oYeNsWTON7jxYkod8pHocXeh+SSbmu5OZZZK73B6cbJ2XADzXehLyovQ==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.6.0.tgz", + "integrity": "sha512-lgbo68hHTQnFddybKbbs/RDRJnJT5YyGy2kQzVwbq+g67X73i+5MVTval34QxGkOe9X5Ujf1UYpCaphLyltjEg==", "dev": true, + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, "funding": { "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" } @@ -3088,12 +3129,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/globalyzer": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/globalyzer/-/globalyzer-0.1.0.tgz", - "integrity": "sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==", - "dev": true - }, "node_modules/globby": { "version": "11.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", @@ -3114,12 +3149,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/globrex": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz", - "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==", - "dev": true - }, "node_modules/gopd": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", @@ -3144,6 +3173,12 @@ "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", "dev": true }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, "node_modules/has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", @@ -3225,6 +3260,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/human-signals": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", + "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", + "dev": true, + "engines": { + "node": ">=14.18.0" + } + }, "node_modules/ignore": { "version": "5.2.4", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", @@ -3403,9 +3447,9 @@ } }, "node_modules/is-core-module": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz", - "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==", + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", + "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", "dev": true, "dependencies": { "has": "^1.0.3" @@ -3430,15 +3474,15 @@ } }, "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", + "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", "dev": true, "bin": { "is-docker": "cli.js" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -3483,6 +3527,24 @@ "node": ">=0.10.0" } }, + "node_modules/is-inside-container": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", + "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", + "dev": true, + "dependencies": { + "is-docker": "^3.0.0" + }, + "bin": { + "is-inside-container": "cli.js" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-map": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", @@ -3529,28 +3591,13 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-path-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-3.0.0.tgz", - "integrity": "sha512-kyiNFFLU0Ampr6SDZitD/DwUo4Zs1nSdnygUBqsu3LooL00Qvb5j+UnvApUn/TTj1J3OuE6BTdQ5rudKmU2ZaA==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-path-inside": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz", - "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", "dev": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, "node_modules/is-plain-object": { @@ -3606,6 +3653,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-string": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", @@ -3715,6 +3774,21 @@ "node": ">=8" } }, + "node_modules/is-wsl/node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/isarray": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", @@ -3728,16 +3802,6 @@ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, - "node_modules/js-sdsl": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.0.tgz", - "integrity": "sha512-FfVSdx6pJ41Oa+CF7RDaFmTnCaFhua+SNYQX74riGOpl96x+2jQCqEfQ2bnXu/5DPCqlRuiqyvTJM0Qjz26IVg==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/js-sdsl" - } - }, "node_modules/js-string-escape": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", @@ -4008,9 +4072,9 @@ } }, "node_modules/mdast-util-from-markdown": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.0.tgz", - "integrity": "sha512-HN3W1gRIuN/ZW295c7zi7g9lVBllMgZE40RxCX37wrTPWXCWtpvOZdfnuK+1WNpvZje6XuJeI3Wnb4TJEUem+g==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.1.tgz", + "integrity": "sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==", "dev": true, "dependencies": { "@types/mdast": "^3.0.0", @@ -4060,6 +4124,12 @@ "url": "https://github.com/sindresorhus/mem?sponsor=1" } }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -4070,9 +4140,9 @@ } }, "node_modules/micromark": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-3.1.0.tgz", - "integrity": "sha512-6Mj0yHLdUZjHnOPgr5xfWIMqMWS12zDN6iws9SLuSz76W8jTtAv24MN4/CL7gJrl5vtxGInkkqDv/JIoRsQOvA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-3.2.0.tgz", + "integrity": "sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==", "dev": true, "funding": [ { @@ -4105,9 +4175,9 @@ } }, "node_modules/micromark-core-commonmark": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.0.6.tgz", - "integrity": "sha512-K+PkJTxqjFfSNkfAhp4GB+cZPfQd6dxtTXnf+RjZOV7T4EEXnvgzOcnp+eSTmpGk9d1S9sL6/lqrgSNn/s0HZA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.1.0.tgz", + "integrity": "sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==", "dev": true, "funding": [ { @@ -4139,9 +4209,9 @@ } }, "node_modules/micromark-factory-destination": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.0.0.tgz", - "integrity": "sha512-eUBA7Rs1/xtTVun9TmV3gjfPz2wEwgK5R5xcbIM5ZYAtvGF6JkyaDsj0agx8urXnO31tEO6Ug83iVH3tdedLnw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.1.0.tgz", + "integrity": "sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==", "dev": true, "funding": [ { @@ -4160,9 +4230,9 @@ } }, "node_modules/micromark-factory-label": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.0.2.tgz", - "integrity": "sha512-CTIwxlOnU7dEshXDQ+dsr2n+yxpP0+fn271pu0bwDIS8uqfFcumXpj5mLn3hSC8iw2MUr6Gx8EcKng1dD7i6hg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.1.0.tgz", + "integrity": "sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==", "dev": true, "funding": [ { @@ -4182,9 +4252,9 @@ } }, "node_modules/micromark-factory-space": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.0.0.tgz", - "integrity": "sha512-qUmqs4kj9a5yBnk3JMLyjtWYN6Mzfcx8uJfi5XAveBniDevmZasdGBba5b4QsvRcAkmvGo5ACmSUmyGiKTLZew==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.1.0.tgz", + "integrity": "sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==", "dev": true, "funding": [ { @@ -4202,9 +4272,9 @@ } }, "node_modules/micromark-factory-title": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.0.2.tgz", - "integrity": "sha512-zily+Nr4yFqgMGRKLpTVsNl5L4PMu485fGFDOQJQBl2NFpjGte1e86zC0da93wf97jrc4+2G2GQudFMHn3IX+A==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.1.0.tgz", + "integrity": "sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==", "dev": true, "funding": [ { @@ -4220,14 +4290,13 @@ "micromark-factory-space": "^1.0.0", "micromark-util-character": "^1.0.0", "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" + "micromark-util-types": "^1.0.0" } }, "node_modules/micromark-factory-whitespace": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.0.0.tgz", - "integrity": "sha512-Qx7uEyahU1lt1RnsECBiuEbfr9INjQTGa6Err+gF3g0Tx4YEviPbqqGKNv/NrBaE7dVHdn1bVZKM/n5I/Bak7A==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.1.0.tgz", + "integrity": "sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==", "dev": true, "funding": [ { @@ -4247,9 +4316,9 @@ } }, "node_modules/micromark-util-character": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.1.0.tgz", - "integrity": "sha512-agJ5B3unGNJ9rJvADMJ5ZiYjBRyDpzKAOk01Kpi1TKhlT1APx3XZk6eN7RtSz1erbWHC2L8T3xLZ81wdtGRZzg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz", + "integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==", "dev": true, "funding": [ { @@ -4267,9 +4336,9 @@ } }, "node_modules/micromark-util-chunked": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.0.0.tgz", - "integrity": "sha512-5e8xTis5tEZKgesfbQMKRCyzvffRRUX+lK/y+DvsMFdabAicPkkZV6gO+FEWi9RfuKKoxxPwNL+dFF0SMImc1g==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.1.0.tgz", + "integrity": "sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==", "dev": true, "funding": [ { @@ -4286,9 +4355,9 @@ } }, "node_modules/micromark-util-classify-character": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.0.0.tgz", - "integrity": "sha512-F8oW2KKrQRb3vS5ud5HIqBVkCqQi224Nm55o5wYLzY/9PwHGXC01tr3d7+TqHHz6zrKQ72Okwtvm/xQm6OVNZA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.1.0.tgz", + "integrity": "sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==", "dev": true, "funding": [ { @@ -4307,9 +4376,9 @@ } }, "node_modules/micromark-util-combine-extensions": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.0.0.tgz", - "integrity": "sha512-J8H058vFBdo/6+AsjHp2NF7AJ02SZtWaVUjsayNFeAiydTxUwViQPxN0Hf8dp4FmCQi0UUFovFsEyRSUmFH3MA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.1.0.tgz", + "integrity": "sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==", "dev": true, "funding": [ { @@ -4327,9 +4396,9 @@ } }, "node_modules/micromark-util-decode-numeric-character-reference": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.0.0.tgz", - "integrity": "sha512-OzO9AI5VUtrTD7KSdagf4MWgHMtET17Ua1fIpXTpuhclCqD8egFWo85GxSGvxgkGS74bEahvtM0WP0HjvV0e4w==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.1.0.tgz", + "integrity": "sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==", "dev": true, "funding": [ { @@ -4346,9 +4415,9 @@ } }, "node_modules/micromark-util-decode-string": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.0.2.tgz", - "integrity": "sha512-DLT5Ho02qr6QWVNYbRZ3RYOSSWWFuH3tJexd3dgN1odEuPNxCngTCXJum7+ViRAd9BbdxCvMToPOD/IvVhzG6Q==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.1.0.tgz", + "integrity": "sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==", "dev": true, "funding": [ { @@ -4368,9 +4437,9 @@ } }, "node_modules/micromark-util-encode": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.0.1.tgz", - "integrity": "sha512-U2s5YdnAYexjKDel31SVMPbfi+eF8y1U4pfiRW/Y8EFVCy/vgxk/2wWTxzcqE71LHtCuCzlBDRU2a5CQ5j+mQA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.1.0.tgz", + "integrity": "sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==", "dev": true, "funding": [ { @@ -4384,9 +4453,9 @@ ] }, "node_modules/micromark-util-html-tag-name": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.1.0.tgz", - "integrity": "sha512-BKlClMmYROy9UiV03SwNmckkjn8QHVaWkqoAqzivabvdGcwNGMMMH/5szAnywmsTBUzDsU57/mFi0sp4BQO6dA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.2.0.tgz", + "integrity": "sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==", "dev": true, "funding": [ { @@ -4400,9 +4469,9 @@ ] }, "node_modules/micromark-util-normalize-identifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.0.0.tgz", - "integrity": "sha512-yg+zrL14bBTFrQ7n35CmByWUTFsgst5JhA4gJYoty4Dqzj4Z4Fr/DHekSS5aLfH9bdlfnSvKAWsAgJhIbogyBg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.1.0.tgz", + "integrity": "sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==", "dev": true, "funding": [ { @@ -4419,9 +4488,9 @@ } }, "node_modules/micromark-util-resolve-all": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.0.0.tgz", - "integrity": "sha512-CB/AGk98u50k42kvgaMM94wzBqozSzDDaonKU7P7jwQIuH2RU0TeBqGYJz2WY1UdihhjweivStrJ2JdkdEmcfw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.1.0.tgz", + "integrity": "sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==", "dev": true, "funding": [ { @@ -4438,9 +4507,9 @@ } }, "node_modules/micromark-util-sanitize-uri": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.1.0.tgz", - "integrity": "sha512-RoxtuSCX6sUNtxhbmsEFQfWzs8VN7cTctmBPvYivo98xb/kDEoTCtJQX5wyzIYEmk/lvNFTat4hL8oW0KndFpg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.2.0.tgz", + "integrity": "sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==", "dev": true, "funding": [ { @@ -4459,9 +4528,9 @@ } }, "node_modules/micromark-util-subtokenize": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.0.2.tgz", - "integrity": "sha512-d90uqCnXp/cy4G881Ub4psE57Sf8YD0pim9QdjCRNjfas2M1u6Lbt+XZK9gnHL2XFhnozZiEdCa9CNfXSfQ6xA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.1.0.tgz", + "integrity": "sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==", "dev": true, "funding": [ { @@ -4481,9 +4550,9 @@ } }, "node_modules/micromark-util-symbol": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.0.1.tgz", - "integrity": "sha512-oKDEMK2u5qqAptasDAwWDXq0tG9AssVwAx3E9bBF3t/shRIGsWIRG+cGafs2p/SnDSOecnt6hZPCE2o6lHfFmQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz", + "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==", "dev": true, "funding": [ { @@ -4497,9 +4566,9 @@ ] }, "node_modules/micromark-util-types": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.0.2.tgz", - "integrity": "sha512-DCfg/T8fcrhrRKTPjRrw/5LLvdGV7BHySf/1LOZx7TzWZdYRjogNtyNq885z3nNallwr3QUKARjqvHqX1/7t+w==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", "dev": true, "funding": [ { @@ -4644,6 +4713,33 @@ "node": ">=0.10.0" } }, + "node_modules/npm-run-path": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "dev": true, + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm-run-path/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/oauth": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.10.0.tgz", @@ -4784,18 +4880,34 @@ "wrappy": "1" } }, + "node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/open": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/open/-/open-9.1.0.tgz", + "integrity": "sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==", "dev": true, "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", + "default-browser": "^4.0.0", + "define-lazy-prop": "^3.0.0", + "is-inside-container": "^1.0.0", "is-wsl": "^2.2.0" }, "engines": { - "node": ">=12" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -5330,6 +5442,15 @@ "node": ">=4" } }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "dev": true, + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, "node_modules/reusify": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", @@ -5355,6 +5476,110 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/run-applescript": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz", + "integrity": "sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==", + "dev": true, + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/run-applescript/node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/run-applescript/node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/run-applescript/node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/run-applescript/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/run-applescript/node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/run-applescript/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/run-applescript/node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -5405,9 +5630,9 @@ } }, "node_modules/semver": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz", - "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==", + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz", + "integrity": "sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -5494,25 +5719,19 @@ } }, "node_modules/signal-exit": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.1.tgz", - "integrity": "sha512-uUWsN4aOxJAS8KOuf3QMyFtgm1pkb6I+KRZbRF/ghdf5T7sM+B1lLLzPDxswUjkmHyxQAVzEgG35E3NzDM9GVw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true }, "node_modules/sinon": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.4.tgz", - "integrity": "sha512-uzmfN6zx3GQaria1kwgWGeKiXSSbShBbue6Dcj0SI8fiCNFbiUDqKl57WFlY5lyhxZVUKmXvzgG2pilRQCBwWg==", + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.0.tgz", + "integrity": "sha512-cS5FgpDdE9/zx7no8bxROHymSlPLZzq0ChbbLk1DrxBfc+eTeBK3y8nIL+nu/0QeYydhhbLIr7ecHJpywjQaoQ==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0", - "@sinonjs/fake-timers": "^10.0.2", + "@sinonjs/fake-timers": "^10.2.0", "@sinonjs/samsam": "^8.0.0", "diff": "^5.1.0", "nise": "^5.1.4", @@ -5690,9 +5909,9 @@ } }, "node_modules/strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", "dev": true, "dependencies": { "ansi-regex": "^6.0.1" @@ -5713,6 +5932,18 @@ "node": ">=4" } }, + "node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", @@ -5835,14 +6066,16 @@ "node": ">=4" } }, - "node_modules/tiny-glob": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/tiny-glob/-/tiny-glob-0.2.9.tgz", - "integrity": "sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==", + "node_modules/titleize": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz", + "integrity": "sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==", "dev": true, - "dependencies": { - "globalyzer": "0.1.0", - "globrex": "^0.1.2" + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/to-regex-range": { @@ -5922,9 +6155,9 @@ } }, "node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz", + "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==" }, "node_modules/tsutils": { "version": "3.21.0", @@ -5995,9 +6228,9 @@ } }, "node_modules/typedoc": { - "version": "0.24.6", - "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.24.6.tgz", - "integrity": "sha512-c3y3h45xJv3qYwKDAwU6Cl+26CjT0ZvblHzfHJ+SjQDM4p1mZxtgHky4lhmG0+nNarRht8kADfZlbspJWdZarQ==", + "version": "0.24.8", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.24.8.tgz", + "integrity": "sha512-ahJ6Cpcvxwaxfu4KtjA8qZNqS43wYt6JL27wYiIgl1vd38WW/KWX11YuAeZhuz9v+ttrutSsgK+XO1CjL1kA3w==", "dev": true, "dependencies": { "lunr": "^2.3.9", @@ -6012,7 +6245,7 @@ "node": ">= 14.14" }, "peerDependencies": { - "typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x" + "typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x" } }, "node_modules/typedoc-plugin-extras": { @@ -6034,9 +6267,9 @@ } }, "node_modules/typedoc/node_modules/minimatch": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz", - "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz", + "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -6049,16 +6282,16 @@ } }, "node_modules/typescript": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", - "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.3.tgz", + "integrity": "sha512-XH627E9vkeqhlZFQuL+UsyAXEnibT0kWR2FWONlr4sTjvxyJYnyefgrkyECLzM5NenmKzRAy2rR/OlYLA1HkZw==", "dev": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" }, "engines": { - "node": ">=12.20" + "node": ">=14.17" } }, "node_modules/unbox-primitive": { @@ -6089,6 +6322,15 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/untildify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", + "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -6320,6 +6562,18 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/write-file-atomic/node_modules/signal-exit": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", + "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", diff --git a/package.json b/package.json index 808065c3b1..5cf357fecd 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jira.js", - "version": "2.18.0", + "version": "2.19.0", "description": "jira.js is a powerful Node.JS/Browser module that allows you to interact with the Jira API very easily", "main": "out/index.js", "types": "out/index.d.ts", @@ -21,7 +21,7 @@ "scripts": { "build": "tsc", "prepublishOnly": "npm run build && npm run lint && npm run test", - "prettier": "prettier --write src/**/*.ts", + "prettier": "prettier --write src", "lint": "npm run lint:tests && npm run lint:src:agile && npm run lint:src:clients && npm run lint:src:services && npm run lint:src:version2 && npm run lint:src:version3 && npm run lint:src:files", "lint:tests": "npm run lint:base -- tests", "lint:src:agile": "npm run lint:base -- src/agile", @@ -37,6 +37,7 @@ "test": "npm run test:unit && npm run test:integration", "test:unit": "ava tests/unit --timeout=2m -с 8", "test:integration": "ava --timeout=2m --fail-fast --no-worker-threads -c 1 -s tests/integration/**/*.test.ts", + "replace:all": "npm run replace:permissions:version2 && npm run replace:permissions:version3 && npm run replace:pagination:version2 && npm run replace:pagination:version3 && npm run replace:async:version2 && npm run replace:async:version3 && npm run replace:expansion:version2 && npm run replace:expansion:version3 && npm run replace:groupMember:version2 && npm run replace:workflowPaginated:version2", "replace:permissions:version2": "grep -rl \"(#permissions)\" ./src/version2 | xargs sed -i '' 's/(#permissions)/(https:\\/\\/developer.atlassian.com\\/cloud\\/jira\\/platform\\/rest\\/v2\\/intro\\/#permissions)/g'", "replace:permissions:version3": "grep -rl \"(#permissions)\" ./src/version3 | xargs sed -i '' 's/(#permissions)/(https:\\/\\/developer.atlassian.com\\/cloud\\/jira\\/platform\\/rest\\/v3\\/intro\\/#permissions)/g'", "replace:pagination:version2": "grep -rl \"(#pagination)\" ./src/version2 | xargs sed -i '' 's/(#pagination)/(https:\\/\\/developer.atlassian.com\\/cloud\\/jira\\/platform\\/rest\\/v2\\/intro\\/#pagination)/g'", @@ -45,7 +46,9 @@ "replace:async:version3": "grep -rl \"(#async)\" ./src/version3 | xargs sed -i '' 's/(#async)/(https:\\/\\/developer.atlassian.com\\/cloud\\/jira\\/platform\\/rest\\/v3\\/intro\\/#async-operations)/g'", "replace:expansion:version2": "grep -rl \"(#expansion)\" ./src/version2 | xargs sed -i '' 's/(#expansion)/(https:\\/\\/developer.atlassian.com\\/cloud\\/jira\\/platform\\/rest\\/v2\\/intro\\/#expansion)/g'", "replace:expansion:version3": "grep -rl \"(#expansion)\" ./src/version3 | xargs sed -i '' 's/(#expansion)/(https:\\/\\/developer.atlassian.com\\/cloud\\/jira\\/platform\\/rest\\/v3\\/intro\\/#expansion)/g'", - "code:formatting": "npm run replace:permissions:version2 && npm run replace:permissions:version3 && npm run replace:pagination:version2 && npm run replace:pagination:version3 && npm run replace:async:version2 && npm run replace:async:version3 && npm run replace:expansion:version2 && npm run replace:expansion:version3 && npm run prettier && npm run lint:fix" + "replace:groupMember:version2": "grep -rl \"(#api-rest-api-2-group-member-get)\" ./src/version2 | xargs sed -i '' 's/(#api-rest-api-2-group-member-get)/(https:\\/\\/developer.atlassian.com\\/cloud\\/jira\\/platform\\/rest\\/v2\\/api-group-groups\\/#api-rest-api-2-group-member-get)/g'", + "replace:workflowPaginated:version2": "grep -rl \"(#api-rest-api-2-workflow-search-get)\" ./src/version2 | xargs sed -i '' 's/(#api-rest-api-2-workflow-search-get)/(https:\\/\\/developer.atlassian.com\\/cloud\\/jira\\/platform\\/rest\\/v2\\/api-group-workflows\\/#api-rest-api-2-workflow-search-get)/g'", + "code:formatting": "npm run replace:all && npm run prettier && npm run lint:fix" }, "ava": { "extensions": [ @@ -63,31 +66,31 @@ "@swc-node/register": "^1.6.5", "@swc/helpers": "^0.5.1", "@types/express": "^4.17.17", - "@types/node": "^18.16.3", + "@types/node": "^10.17.60", "@types/oauth": "^0.9.1", - "@types/sinon": "^10.0.14", - "@typescript-eslint/eslint-plugin": "^5.59.1", - "@typescript-eslint/parser": "^5.59.1", - "ava": "^5.2.0", - "dotenv": "^16.0.3", - "eslint": "^8.39.0", + "@types/sinon": "^10.0.15", + "@typescript-eslint/eslint-plugin": "^5.59.8", + "@typescript-eslint/parser": "^5.59.8", + "ava": "^5.3.0", + "dotenv": "^16.1.4", + "eslint": "^8.42.0", "eslint-config-airbnb": "^19.0.4", "eslint-config-airbnb-typescript": "^17.0.0", "eslint-import-resolver-typescript": "^3.5.5", "eslint-plugin-import": "^2.27.5", "prettier": "^2.8.8", "prettier-plugin-jsdoc": "^0.4.2", - "sinon": "^15.0.4", + "sinon": "^15.1.0", "ts-node": "^10.9.1", - "typedoc": "^0.24.6", + "typedoc": "^0.24.8", "typedoc-plugin-extras": "^2.3.3", - "typescript": "^5.0.4" + "typescript": "^5.1.3" }, "dependencies": { "atlassian-jwt": "^2.0.2", "axios": "^1.4.0", "form-data": "^4.0.0", "oauth": "^0.10.0", - "tslib": "^2.5.0" + "tslib": "^2.5.3" } } diff --git a/src/version2/appProperties.ts b/src/version2/appProperties.ts index 346e69c9a3..c53038539a 100644 --- a/src/version2/appProperties.ts +++ b/src/version2/appProperties.ts @@ -114,7 +114,7 @@ export class AppProperties { const config: RequestConfig = { url: `/rest/atlassian-connect/1/addons/${parameters.addonKey}/properties/${parameters.propertyKey}`, method: 'PUT', - data: parameters.property, + data: parameters.propertyValue ?? parameters.property, }; return this.client.sendRequest(config, callback); @@ -145,4 +145,80 @@ export class AppProperties { return this.client.sendRequest(config, callback); } + + /** + * Sets the value of a Forge app's property. These values can be retrieved in [Jira + * expressions](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/) through the `app` [context + * variable](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/#context-variables). + * + * For other use cases, use the [Storage + * API](https://developer.atlassian.com/platform/forge/runtime-reference/storage-api/). + * + * The value of the request body must be a [valid](http://tools.ietf.org/html/rfc4627), non-empty JSON blob. The + * maximum length is 32768 characters. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** Only + * Forge apps can make this request. + */ + async putAppProperty( + parameters: Parameters.PutAppProperty, + callback: Callback, + ): Promise; + /** + * Sets the value of a Forge app's property. These values can be retrieved in [Jira + * expressions](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/) through the `app` [context + * variable](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/#context-variables). + * + * For other use cases, use the [Storage + * API](https://developer.atlassian.com/platform/forge/runtime-reference/storage-api/). + * + * The value of the request body must be a [valid](http://tools.ietf.org/html/rfc4627), non-empty JSON blob. The + * maximum length is 32768 characters. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** Only + * Forge apps can make this request. + */ + async putAppProperty( + parameters: Parameters.PutAppProperty, + callback?: never, + ): Promise; + async putAppProperty( + parameters: Parameters.PutAppProperty, + callback?: Callback, + ): Promise { + // todo + const config: RequestConfig = { + url: `/rest/forge/1/app/properties/${parameters.propertyKey}`, + method: 'PUT', + data: parameters.propertyValue, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Deletes a Forge app's property. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** Only + * Forge apps can make this request. + */ + async deleteAppProperty(parameters: Parameters.DeleteAppProperty, callback: Callback): Promise; + /** + * Deletes a Forge app's property. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** Only + * Forge apps can make this request. + */ + async deleteAppProperty(parameters: Parameters.DeleteAppProperty, callback?: never): Promise; + async deleteAppProperty( + parameters: Parameters.DeleteAppProperty, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: `/rest/forge/1/app/properties/${parameters.propertyKey}`, + method: 'DELETE', + }; + + return this.client.sendRequest(config, callback); + } } diff --git a/src/version2/avatars.ts b/src/version2/avatars.ts index 602c3337e2..8d0d69a668 100644 --- a/src/version2/avatars.ts +++ b/src/version2/avatars.ts @@ -89,18 +89,6 @@ export class Avatars { * Headers](#special-request-headers). * - `Content-Type: image/image type` Valid image types are JPEG, GIF, or PNG. * - * For example: `curl --request POST ` - * - * `--user email@example.com: ` - * - * `--header 'X-Atlassian-Token: no-check' ` - * - * `--header 'Content-Type: image/< image_type>' ` - * - * `--data-binary "<@/path/to/file/with/your/avatar>" ` - * - * `--url 'https://your-domain.atlassian.net/rest/api/2/universal_avatar/type/{type}/owner/{entityId}'` - * * The avatar is cropped to a square. If no crop parameters are specified, the square originates at the top left of * the image. The length of the square's sides is set to the smaller of the height or width of the image. * @@ -125,18 +113,6 @@ export class Avatars { * Headers](#special-request-headers). * - `Content-Type: image/image type` Valid image types are JPEG, GIF, or PNG. * - * For example: `curl --request POST ` - * - * `--user email@example.com: ` - * - * `--header 'X-Atlassian-Token: no-check' ` - * - * `--header 'Content-Type: image/< image_type>' ` - * - * `--data-binary "<@/path/to/file/with/your/avatar>" ` - * - * `--url 'https://your-domain.atlassian.net/rest/api/2/universal_avatar/type/{type}/owner/{entityId}'` - * * The avatar is cropped to a square. If no crop parameters are specified, the square originates at the top left of * the image. The length of the square's sides is set to the smaller of the height or width of the image. * diff --git a/src/version2/client/version2Client.ts b/src/version2/client/version2Client.ts index dde960f999..7a65408615 100644 --- a/src/version2/client/version2Client.ts +++ b/src/version2/client/version2Client.ts @@ -47,6 +47,7 @@ import { JiraExpressions, JiraSettings, JQL, + JqlFunctionsApps, Labels, LicenseMetrics, Myself, @@ -136,6 +137,7 @@ export class Version2Client extends BaseClient { jiraExpressions = new JiraExpressions(this); jiraSettings = new JiraSettings(this); jql = new JQL(this); + jqlFunctionsApps = new JqlFunctionsApps(this); labels = new Labels(this); licenseMetrics = new LicenseMetrics(this); myself = new Myself(this); diff --git a/src/version2/index.ts b/src/version2/index.ts index 2d10211e5b..ea350b692a 100644 --- a/src/version2/index.ts +++ b/src/version2/index.ts @@ -45,6 +45,7 @@ export * from './issueWorklogs'; export * from './jiraExpressions'; export * from './jiraSettings'; export * from './jQL'; +export * from './jqlFunctionsApps'; export * from './labels'; export * from './licenseMetrics'; export * from './myself'; diff --git a/src/version2/issueSecuritySchemes.ts b/src/version2/issueSecuritySchemes.ts index e74609d0a8..5382c36d34 100644 --- a/src/version2/issueSecuritySchemes.ts +++ b/src/version2/issueSecuritySchemes.ts @@ -2,6 +2,7 @@ import * as Models from './models'; import * as Parameters from './parameters'; import { Callback } from '../callback'; import { Client } from '../clients'; +import { paramSerializer } from '../paramSerializer'; import { RequestConfig } from '../requestConfig'; export class IssueSecuritySchemes { @@ -30,6 +31,270 @@ export class IssueSecuritySchemes { return this.client.sendRequest(config, callback); } + /** + * Creates a security scheme with security scheme levels and levels' members. You can create up to 100 security scheme + * levels and security scheme levels' members per request. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async createIssueSecurityScheme( + parameters: Parameters.CreateIssueSecurityScheme, + callback: Callback, + ): Promise; + /** + * Creates a security scheme with security scheme levels and levels' members. You can create up to 100 security scheme + * levels and security scheme levels' members per request. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async createIssueSecurityScheme( + parameters: Parameters.CreateIssueSecurityScheme, + callback?: never, + ): Promise; + async createIssueSecurityScheme( + parameters: Parameters.CreateIssueSecurityScheme, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: '/rest/api/2/issuesecurityschemes', + method: 'POST', + data: { + description: parameters.description, + levels: parameters.levels, + name: parameters.name, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#pagination) list of issue + * security levels. + * + * Only issue security levels in the context of classic projects are returned. + * + * Filtering using IDs is inclusive: if you specify both security scheme IDs and level IDs, the result will include + * both specified issue security levels and all issue security levels from the specified schemes. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async getSecurityLevels( + parameters: Parameters.GetSecurityLevels | undefined, + callback: Callback, + ): Promise; + /** + * Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#pagination) list of issue + * security levels. + * + * Only issue security levels in the context of classic projects are returned. + * + * Filtering using IDs is inclusive: if you specify both security scheme IDs and level IDs, the result will include + * both specified issue security levels and all issue security levels from the specified schemes. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async getSecurityLevels( + parameters?: Parameters.GetSecurityLevels, + callback?: never, + ): Promise; + async getSecurityLevels( + parameters?: Parameters.GetSecurityLevels, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: '/rest/api/2/issuesecurityschemes/level', + method: 'GET', + params: { + startAt: parameters?.startAt, + maxResults: parameters?.maxResults, + id: paramSerializer('id', parameters?.id), + schemeId: paramSerializer('schemeId', parameters?.schemeId), + onlyDefault: parameters?.onlyDefault, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Sets default issue security levels for schemes. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async setDefaultLevels( + parameters: Parameters.SetDefaultLevels | undefined, + callback: Callback, + ): Promise; + /** + * Sets default issue security levels for schemes. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async setDefaultLevels(parameters?: Parameters.SetDefaultLevels, callback?: never): Promise; + async setDefaultLevels( + parameters?: Parameters.SetDefaultLevels, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: '/rest/api/2/issuesecurityschemes/level/default', + method: 'PUT', + data: { + defaultValues: parameters?.defaultValues, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#pagination) list of issue + * security level members. + * + * Only issue security level members in the context of classic projects are returned. + * + * Filtering using parameters is inclusive: if you specify both security scheme IDs and level IDs, the result will + * include all issue security level members from the specified schemes and levels. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async getSecurityLevelMembers( + parameters: Parameters.GetSecurityLevelMembers | undefined, + callback: Callback, + ): Promise; + /** + * Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#pagination) list of issue + * security level members. + * + * Only issue security level members in the context of classic projects are returned. + * + * Filtering using parameters is inclusive: if you specify both security scheme IDs and level IDs, the result will + * include all issue security level members from the specified schemes and levels. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async getSecurityLevelMembers( + parameters?: Parameters.GetSecurityLevelMembers, + callback?: never, + ): Promise; + async getSecurityLevelMembers( + parameters?: Parameters.GetSecurityLevelMembers, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: '/rest/api/2/issuesecurityschemes/level/member', + method: 'GET', + params: { + startAt: parameters?.startAt, + maxResults: parameters?.maxResults, + id: paramSerializer('id', parameters?.id), + schemeId: paramSerializer('schemeId', parameters?.schemeId), + levelId: paramSerializer('levelId', parameters?.levelId), + expand: parameters?.expand, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#pagination) mapping of + * projects that are using security schemes. You can provide either one or multiple security scheme IDs or project IDs + * to filter by. If you don't provide any, this will return a list of all mappings. Only issue security schemes in the + * context of classic projects are supported. + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async searchProjectsUsingSecuritySchemes( + parameters: Parameters.SearchProjectsUsingSecuritySchemes | undefined, + callback: Callback, + ): Promise; + /** + * Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#pagination) mapping of + * projects that are using security schemes. You can provide either one or multiple security scheme IDs or project IDs + * to filter by. If you don't provide any, this will return a list of all mappings. Only issue security schemes in the + * context of classic projects are supported. + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async searchProjectsUsingSecuritySchemes( + parameters?: Parameters.SearchProjectsUsingSecuritySchemes, + callback?: never, + ): Promise; + async searchProjectsUsingSecuritySchemes( + parameters?: Parameters.SearchProjectsUsingSecuritySchemes, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: '/rest/api/2/issuesecurityschemes/project', + method: 'GET', + params: { + startAt: parameters?.startAt, + maxResults: parameters?.maxResults, + issueSecuritySchemeId: parameters?.issueSecuritySchemeId, + projectId: parameters?.projectId, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#pagination) list of issue + * security schemes.\ + * If you specify the project ID parameter, the result will contain issue security schemes and related project IDs you + * filter by. Use {@link Parameters.SearchProjectsUsingSecuritySchemes} to obtain all projects related to scheme. + * + * Only issue security schemes in the context of classic projects are returned. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async searchSecuritySchemes( + parameters: Parameters.SearchSecuritySchemes | undefined, + callback: Callback, + ): Promise; + /** + * Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#pagination) list of issue + * security schemes.\ + * If you specify the project ID parameter, the result will contain issue security schemes and related project IDs you + * filter by. Use {@link Parameters.SearchProjectsUsingSecuritySchemes} to obtain all projects related to scheme. + * + * Only issue security schemes in the context of classic projects are returned. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async searchSecuritySchemes( + parameters?: Parameters.SearchSecuritySchemes, + callback?: never, + ): Promise; + async searchSecuritySchemes( + parameters?: Parameters.SearchSecuritySchemes, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: '/rest/api/2/issuesecurityschemes/search', + method: 'GET', + params: { + startAt: parameters?.startAt, + maxResults: parameters?.maxResults, + id: paramSerializer('id', parameters?.id), + projectId: paramSerializer('projectId', parameters?.projectId), + }, + }; + + return this.client.sendRequest(config, callback); + } + /** * Returns an issue security scheme along with its security levels. * @@ -69,4 +334,225 @@ export class IssueSecuritySchemes { return this.client.sendRequest(config, callback); } + + /** + * Updates the issue security scheme. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async updateIssueSecurityScheme( + parameters: Parameters.UpdateIssueSecurityScheme, + callback: Callback, + ): Promise; + /** + * Updates the issue security scheme. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async updateIssueSecurityScheme( + parameters: Parameters.UpdateIssueSecurityScheme, + callback?: never, + ): Promise; + async updateIssueSecurityScheme( + parameters: Parameters.UpdateIssueSecurityScheme, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: `/rest/api/2/issuesecurityschemes/${parameters.id}`, + method: 'PUT', + data: { + description: parameters.description, + name: parameters.name, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Deletes an issue security scheme. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async deleteSecurityScheme( + parameters: Parameters.DeleteSecurityScheme, + callback: Callback, + ): Promise; + /** + * Deletes an issue security scheme. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async deleteSecurityScheme(parameters: Parameters.DeleteSecurityScheme, callback?: never): Promise; + async deleteSecurityScheme( + parameters: Parameters.DeleteSecurityScheme, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: `/rest/api/2/issuesecurityschemes/${parameters.schemeId}`, + method: 'DELETE', + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Adds levels and levels' members to the issue security scheme. You can add up to 100 levels per request. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async addSecurityLevel(parameters: Parameters.AddSecurityLevel, callback: Callback): Promise; + /** + * Adds levels and levels' members to the issue security scheme. You can add up to 100 levels per request. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async addSecurityLevel(parameters: Parameters.AddSecurityLevel, callback?: never): Promise; + async addSecurityLevel(parameters: Parameters.AddSecurityLevel, callback?: Callback): Promise { + const config: RequestConfig = { + url: `/rest/api/2/issuesecurityschemes/${parameters.schemeId}/level`, + method: 'PUT', + data: { + levels: parameters.levels, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Updates the issue security level. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async updateSecurityLevel(parameters: Parameters.UpdateSecurityLevel, callback: Callback): Promise; + /** + * Updates the issue security level. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async updateSecurityLevel(parameters: Parameters.UpdateSecurityLevel, callback?: never): Promise; + async updateSecurityLevel( + parameters: Parameters.UpdateSecurityLevel, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: `/rest/api/2/issuesecurityschemes/${parameters.schemeId}/level/${parameters.levelId}`, + method: 'PUT', + data: { + description: parameters.description, + name: parameters.name, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Deletes an issue security level. + * + * This operation is + * [asynchronous](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#async-operations). Follow the + * `location` link in the response to determine the status of the task and use [Get + * task](#api-rest-api-2-task-taskId-get) to obtain subsequent updates. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async removeLevel(parameters: Parameters.RemoveLevel, callback: Callback): Promise; + /** + * Deletes an issue security level. + * + * This operation is + * [asynchronous](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#async-operations). Follow the + * `location` link in the response to determine the status of the task and use [Get + * task](#api-rest-api-2-task-taskId-get) to obtain subsequent updates. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async removeLevel(parameters: Parameters.RemoveLevel, callback?: never): Promise; + async removeLevel(parameters: Parameters.RemoveLevel, callback?: Callback): Promise { + const config: RequestConfig = { + url: `/rest/api/2/issuesecurityschemes/${parameters.schemeId}/level/${parameters.levelId}`, + method: 'DELETE', + params: { + replaceWith: parameters.replaceWith, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Adds members to the issue security level. You can add up to 100 members per request. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async addSecurityLevelMembers( + parameters: Parameters.AddSecurityLevelMembers, + callback: Callback, + ): Promise; + /** + * Adds members to the issue security level. You can add up to 100 members per request. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async addSecurityLevelMembers(parameters: Parameters.AddSecurityLevelMembers, callback?: never): Promise; + async addSecurityLevelMembers( + parameters: Parameters.AddSecurityLevelMembers, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: `/rest/api/2/issuesecurityschemes/${parameters.schemeId}/level/${parameters.levelId}/member`, + method: 'PUT', + data: { + members: parameters.members, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Removes an issue security level member from an issue security scheme. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async removeMemberFromSecurityLevel( + parameters: Parameters.RemoveMemberFromSecurityLevel, + callback: Callback, + ): Promise; + /** + * Removes an issue security level member from an issue security scheme. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async removeMemberFromSecurityLevel( + parameters: Parameters.RemoveMemberFromSecurityLevel, + callback?: never, + ): Promise; + async removeMemberFromSecurityLevel( + parameters: Parameters.RemoveMemberFromSecurityLevel, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: `/rest/api/2/issuesecurityschemes/${parameters.schemeId}/level/${parameters.levelId}/member/${parameters.memberId}`, + method: 'DELETE', + }; + + return this.client.sendRequest(config, callback); + } } diff --git a/src/version2/jQL.ts b/src/version2/jQL.ts index 7b75f85976..26d6b94118 100644 --- a/src/version2/jQL.ts +++ b/src/version2/jQL.ts @@ -310,10 +310,12 @@ export class JQL { return this.client.sendRequest(config, callback); } + /** @deprecated Use jqlFunctionApps.getPrecomputations */ async getPrecomputations( parameters: Parameters.GetPrecomputations | undefined, callback: Callback, ): Promise; + /** @deprecated Use jqlFunctionApps.getPrecomputations */ async getPrecomputations( parameters?: Parameters.GetPrecomputations, callback?: never, @@ -337,10 +339,12 @@ export class JQL { return this.client.sendRequest(config, callback); } + /** @deprecated Use jqlFunctionApps.updatePrecomputations */ async updatePrecomputations( parameters: Parameters.UpdatePrecomputations, callback: Callback, ): Promise; + /** @deprecated Use jqlFunctionApps.updatePrecomputations */ async updatePrecomputations(parameters: Parameters.UpdatePrecomputations, callback?: never): Promise; async updatePrecomputations( parameters: Parameters.UpdatePrecomputations, diff --git a/src/version2/jqlFunctionsApps.ts b/src/version2/jqlFunctionsApps.ts new file mode 100644 index 0000000000..ac95c558e5 --- /dev/null +++ b/src/version2/jqlFunctionsApps.ts @@ -0,0 +1,82 @@ +import * as Models from './models'; +import * as Parameters from './parameters'; +import { Callback } from '../callback'; +import { Client } from '../clients'; +import { RequestConfig } from '../requestConfig'; + +export class JqlFunctionsApps { + constructor(private client: Client) {} + + /** + * Returns the list of a function's precomputations along with information about when they were created, updated, and + * last used. Each precomputation has a `value` - the JQL fragment to replace the custom function clause with. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** This + * API is only accessible to apps and apps can only inspect their own functions. + */ + async getPrecomputations( + parameters: Parameters.GetPrecomputations | undefined, + callback: Callback, + ): Promise; + /** + * Returns the list of a function's precomputations along with information about when they were created, updated, and + * last used. Each precomputation has a `value` - the JQL fragment to replace the custom function clause with. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** This + * API is only accessible to apps and apps can only inspect their own functions. + */ + async getPrecomputations( + parameters?: Parameters.GetPrecomputations, + callback?: never, + ): Promise; + async getPrecomputations( + parameters?: Parameters.GetPrecomputations, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: '/rest/api/2/jql/function/computation', + method: 'GET', + params: { + functionKey: parameters?.functionKey, + startAt: parameters?.startAt, + maxResults: parameters?.maxResults, + orderBy: parameters?.orderBy, + filter: parameters?.filter, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Update the precomputation value of a function created by a Forge/Connect app. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** An API + * for apps to update their own precomputations. + */ + async updatePrecomputations( + parameters: Parameters.UpdatePrecomputations | undefined, + callback: Callback, + ): Promise; + /** + * Update the precomputation value of a function created by a Forge/Connect app. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** An API + * for apps to update their own precomputations. + */ + async updatePrecomputations(parameters?: Parameters.UpdatePrecomputations, callback?: never): Promise; + async updatePrecomputations( + parameters?: Parameters.UpdatePrecomputations, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: '/rest/api/2/jql/function/computation', + method: 'POST', + data: { + values: parameters?.values, + }, + }; + + return this.client.sendRequest(config, callback); + } +} diff --git a/src/version2/models/actorInput.ts b/src/version2/models/actorInput.ts index 2eec2a40d3..74a607b0ca 100644 --- a/src/version2/models/actorInput.ts +++ b/src/version2/models/actorInput.ts @@ -3,10 +3,11 @@ export type ActorInputBean = ActorInput; export interface ActorInput { /** - * The account IDs of the users to add as default actors. This parameter accepts a comma-separated list. For example, - * `"user":["5b10a2844c20165700ede21g", "5b109f2e9729b51b54dc274d"]`. + * The name of the group to add as a default actor. This parameter cannot be used with the `groupId` parameter. As a + * group's name can change,use of `groupId` is recommended. This parameter accepts a comma-separated list. For + * example, `"group":["project-admin", "jira-developers"]`. */ - user?: string[]; + group?: string[]; /** * The ID of the group to add as a default actor. This parameter cannot be used with the `group` parameter This * parameter accepts a comma-separated list. For example, `"groupId":["77f6ab39-e755-4570-a6ae-2d7a8df0bcb8", @@ -14,9 +15,8 @@ export interface ActorInput { */ groupId?: string[]; /** - * The name of the group to add as a default actor. This parameter cannot be used with the `groupId` parameter. As a - * group's name can change,use of `groupId` is recommended. This parameter accepts a comma-separated list. For - * example, `"group":["project-admin", "jira-developers"]`. + * The account IDs of the users to add as default actors. This parameter accepts a comma-separated list. For example, + * `"user":["5b10a2844c20165700ede21g", "5b109f2e9729b51b54dc274d"]`. */ - group?: string[]; + user?: string[]; } diff --git a/src/version2/models/actorsMap.ts b/src/version2/models/actorsMap.ts index 28b8076fe3..01c3b88e96 100644 --- a/src/version2/models/actorsMap.ts +++ b/src/version2/models/actorsMap.ts @@ -1,6 +1,4 @@ export interface ActorsMap { - /** The user account ID of the user to add. */ - user?: string[]; /** * The name of the group to add. This parameter cannot be used with the `groupId` parameter. As a group's name can * change, use of `groupId` is recommended. @@ -8,4 +6,6 @@ export interface ActorsMap { group?: string[]; /** The ID of the group to add. This parameter cannot be used with the `group` parameter. */ groupId?: string[]; + /** The user account ID of the user to add. */ + user?: string[]; } diff --git a/src/version2/models/addSecuritySchemeLevelsRequest.ts b/src/version2/models/addSecuritySchemeLevelsRequest.ts new file mode 100644 index 0000000000..df70a5daf2 --- /dev/null +++ b/src/version2/models/addSecuritySchemeLevelsRequest.ts @@ -0,0 +1,6 @@ +import { SecuritySchemeLevel } from './securitySchemeLevel'; + +export interface AddSecuritySchemeLevelsRequest { + /** The list of scheme levels which should be added to the security scheme. */ + levels: SecuritySchemeLevel[]; +} diff --git a/src/version2/models/announcementBannerConfiguration.ts b/src/version2/models/announcementBannerConfiguration.ts index 58eb19bd9d..cc7773706f 100644 --- a/src/version2/models/announcementBannerConfiguration.ts +++ b/src/version2/models/announcementBannerConfiguration.ts @@ -1,13 +1,13 @@ /** Announcement banner configuration. */ export interface AnnouncementBannerConfiguration { - /** The text on the announcement banner. */ - message?: string; + /** Hash of the banner data. The client detects updates by comparing hash IDs. */ + hashId?: string; /** Flag indicating if the announcement banner can be dismissed by the user. */ isDismissible?: boolean; /** Flag indicating if the announcement banner is enabled or not. */ isEnabled?: boolean; - /** Hash of the banner data. The client detects updates by comparing hash IDs. */ - hashId?: string; + /** The text on the announcement banner. */ + message?: string; /** Visibility of the announcement banner. */ visibility?: string; } diff --git a/src/version2/models/announcementBannerConfigurationUpdate.ts b/src/version2/models/announcementBannerConfigurationUpdate.ts index b47018ce98..df42d4dd49 100644 --- a/src/version2/models/announcementBannerConfigurationUpdate.ts +++ b/src/version2/models/announcementBannerConfigurationUpdate.ts @@ -1,11 +1,11 @@ /** Configuration of the announcement banner. */ export interface AnnouncementBannerConfigurationUpdate { - /** The text on the announcement banner. */ - message?: string; /** Flag indicating if the announcement banner can be dismissed by the user. */ isDismissible?: boolean; /** Flag indicating if the announcement banner is enabled or not. */ isEnabled?: boolean; + /** The text on the announcement banner. */ + message?: string; /** Visibility of the announcement banner. Can be public or private. */ visibility?: string; } diff --git a/src/version2/models/application.ts b/src/version2/models/application.ts index 2592742397..8f7f9105ab 100644 --- a/src/version2/models/application.ts +++ b/src/version2/models/application.ts @@ -1,7 +1,5 @@ /** The application the linked item is in. */ export interface Application { - /** The name-spaced type of the application, used by registered rendering apps. */ - type?: string; /** * The name of the application. Used in conjunction with the (remote) object icon title to display a tooltip for the * link's icon. The tooltip takes the format "[application name] icon title". Blank items are excluded from the @@ -9,4 +7,6 @@ export interface Application { * place links without an application name last. */ name?: string; + /** The name-spaced type of the application, used by registered rendering apps. */ + type?: string; } diff --git a/src/version2/models/applicationProperty.ts b/src/version2/models/applicationProperty.ts index 342cc6156d..6745dc0954 100644 --- a/src/version2/models/applicationProperty.ts +++ b/src/version2/models/applicationProperty.ts @@ -1,20 +1,20 @@ /** Details of an application property. */ export interface ApplicationProperty { + /** The allowed values, if applicable. */ + allowedValues?: string[]; + /** The default value of the application property. */ + defaultValue?: string; + /** The description of the application property. */ + desc?: string; + example?: string; /** The ID of the application property. The ID and key are the same. */ id?: string; /** The key of the application property. The ID and key are the same. */ key?: string; - /** The new value. */ - value?: string; /** The name of the application property. */ name?: string; - /** The description of the application property. */ - desc?: string; /** The data type of the application property. */ type?: string; - /** The default value of the application property. */ - defaultValue?: string; - example?: string; - /** The allowed values, if applicable. */ - allowedValues?: string[]; + /** The new value. */ + value?: string; } diff --git a/src/version2/models/applicationRole.ts b/src/version2/models/applicationRole.ts index 00678634e2..35b6905047 100644 --- a/src/version2/models/applicationRole.ts +++ b/src/version2/models/applicationRole.ts @@ -2,17 +2,6 @@ import { GroupName } from './groupName'; /** Details of an application role. */ export interface ApplicationRole { - /** The key of the application role. */ - key?: string; - /** - * The groups associated with the application role. As a group's name can change, use of `groupDetails` is recommended - * to identify a groups. - */ - groups?: string[]; - /** The groups associated with the application role. */ - groupDetails?: GroupName[]; - /** The display name of the application role. */ - name?: string; /** * The groups that are granted default access for this application role. As a group's name can change, use of * `defaultGroupsDetails` is recommended to identify a groups. @@ -20,19 +9,30 @@ export interface ApplicationRole { defaultGroups?: string[]; /** The groups that are granted default access for this application role. */ defaultGroupsDetails?: GroupName[]; - /** Determines whether this application role should be selected by default on user creation. */ - selectedByDefault?: boolean; /** Deprecated. */ defined?: boolean; + /** The groups associated with the application role. */ + groupDetails?: GroupName[]; + /** + * The groups associated with the application role. As a group's name can change, use of `groupDetails` is recommended + * to identify a groups. + */ + groups?: string[]; + hasUnlimitedSeats?: boolean; + /** The key of the application role. */ + key?: string; + /** The display name of the application role. */ + name?: string; /** The maximum count of users on your license. */ numberOfSeats?: number; + /** Indicates if the application role belongs to Jira platform (`jira-core`). */ + platform?: boolean; /** The count of users remaining on your license. */ remainingSeats?: number; + /** Determines whether this application role should be selected by default on user creation. */ + selectedByDefault?: boolean; /** The number of users counting against your license. */ userCount?: number; /** The [type of users](https://confluence.atlassian.com/x/lRW3Ng) being counted against your license. */ userCountDescription?: string; - hasUnlimitedSeats?: boolean; - /** Indicates if the application role belongs to Jira platform (`jira-core`). */ - platform?: boolean; } diff --git a/src/version2/models/associatedItem.ts b/src/version2/models/associatedItem.ts index 972c32393c..e4c9a40396 100644 --- a/src/version2/models/associatedItem.ts +++ b/src/version2/models/associatedItem.ts @@ -7,10 +7,10 @@ export interface AssociatedItem { id?: string; /** The name of the associated record. */ name?: string; - /** The type of the associated record. */ - typeName?: string; /** The ID of the associated parent record. */ parentId?: string; /** The name of the associated parent record. */ parentName?: string; + /** The type of the associated record. */ + typeName?: string; } diff --git a/src/version2/models/attachment.ts b/src/version2/models/attachment.ts index c646b9a48b..bf9edc2486 100644 --- a/src/version2/models/attachment.ts +++ b/src/version2/models/attachment.ts @@ -2,21 +2,21 @@ import { UserDetails } from './userDetails'; /** Details about an attachment. */ export interface Attachment { - /** The URL of the attachment details response. */ - self?: string; - /** The ID of the attachment. */ - id: string; - /** The file name of the attachment. */ - filename?: string; author?: UserDetails; + /** The content of the attachment. */ + content?: string; /** The datetime the attachment was created. */ created?: string; - /** The size of the attachment. */ - size?: number; + /** The file name of the attachment. */ + filename?: string; + /** The ID of the attachment. */ + id?: string; /** The MIME type of the attachment. */ mimeType?: string; - /** The content of the attachment. */ - content?: string; + /** The URL of the attachment details response. */ + self?: string; + /** The size of the attachment. */ + size?: number; /** The URL of a thumbnail representing the attachment. */ thumbnail?: string; } diff --git a/src/version2/models/attachmentArchive.ts b/src/version2/models/attachmentArchive.ts index aad4ccb853..16593d530a 100644 --- a/src/version2/models/attachmentArchive.ts +++ b/src/version2/models/attachmentArchive.ts @@ -1,8 +1,8 @@ import { AttachmentArchiveEntry } from './attachmentArchiveEntry'; export interface AttachmentArchive { + entries?: AttachmentArchiveEntry[]; moreAvailable?: boolean; - totalNumberOfEntriesAvailable?: number; totalEntryCount?: number; - entries?: AttachmentArchiveEntry[]; + totalNumberOfEntriesAvailable?: number; } diff --git a/src/version2/models/attachmentArchiveEntry.ts b/src/version2/models/attachmentArchiveEntry.ts index bda5551d76..6686d6ab03 100644 --- a/src/version2/models/attachmentArchiveEntry.ts +++ b/src/version2/models/attachmentArchiveEntry.ts @@ -1,7 +1,7 @@ export interface AttachmentArchiveEntry { - mediaType?: string; - entryIndex?: number; abbreviatedName?: string; + entryIndex?: number; + mediaType?: string; name?: string; size?: number; } diff --git a/src/version2/models/attachmentArchiveItemReadable.ts b/src/version2/models/attachmentArchiveItemReadable.ts index 57d3b4a520..191e9577f1 100644 --- a/src/version2/models/attachmentArchiveItemReadable.ts +++ b/src/version2/models/attachmentArchiveItemReadable.ts @@ -1,13 +1,13 @@ /** Metadata for an item in an attachment archive. */ export interface AttachmentArchiveItemReadable { - /** The path of the archive item. */ - path?: string; /** The position of the item within the archive. */ index?: number; - /** The size of the archive item. */ - size?: string; - /** The MIME type of the archive item. */ - mediaType?: string; /** The label for the archive item. */ label?: string; + /** The MIME type of the archive item. */ + mediaType?: string; + /** The path of the archive item. */ + path?: string; + /** The size of the archive item. */ + size?: string; } diff --git a/src/version2/models/attachmentArchiveMetadataReadable.ts b/src/version2/models/attachmentArchiveMetadataReadable.ts index c0ed85f963..e38e02a18a 100644 --- a/src/version2/models/attachmentArchiveMetadataReadable.ts +++ b/src/version2/models/attachmentArchiveMetadataReadable.ts @@ -2,14 +2,14 @@ import { AttachmentArchiveItemReadable } from './attachmentArchiveItemReadable'; /** Metadata for an archive (for example a zip) and its contents. */ export interface AttachmentArchiveMetadataReadable { + /** The list of the items included in the archive. */ + entries?: AttachmentArchiveItemReadable[]; /** The ID of the attachment. */ id?: number; + /** The MIME type of the attachment. */ + mediaType?: string; /** The name of the archive file. */ name?: string; - /** The list of the items included in the archive. */ - entries?: AttachmentArchiveItemReadable[]; /** The number of items included in the archive. */ totalEntryCount?: number; - /** The MIME type of the attachment. */ - mediaType?: string; } diff --git a/src/version2/models/auditRecords.ts b/src/version2/models/auditRecords.ts index 89bcc32404..0b36a5ae41 100644 --- a/src/version2/models/auditRecords.ts +++ b/src/version2/models/auditRecords.ts @@ -2,12 +2,12 @@ import { AuditRecord } from './auditRecord'; /** Container for a list of audit records. */ export interface AuditRecords { - /** The number of audit items skipped before the first item in this list. */ - offset?: number; /** The requested or default limit on the number of audit items to be returned. */ limit?: number; - /** The total number of audit items returned. */ - total?: number; + /** The number of audit items skipped before the first item in this list. */ + offset?: number; /** The list of audit items. */ records?: AuditRecord[]; + /** The total number of audit items returned. */ + total?: number; } diff --git a/src/version2/models/autoCompleteSuggestion.ts b/src/version2/models/autoCompleteSuggestion.ts index edb72b7dc7..3f0e8014c9 100644 --- a/src/version2/models/autoCompleteSuggestion.ts +++ b/src/version2/models/autoCompleteSuggestion.ts @@ -1,10 +1,10 @@ /** A field auto-complete suggestion. */ export interface AutoCompleteSuggestion { - /** The value of a suggested item. */ - value?: string; /** * The display name of a suggested item. If `fieldValue` or `predicateValue` are provided, the matching text is * highlighted with the HTML bold tag. */ displayName?: string; + /** The value of a suggested item. */ + value?: string; } diff --git a/src/version2/models/availableDashboardGadget.ts b/src/version2/models/availableDashboardGadget.ts index 33da0cc39c..0373695c49 100644 --- a/src/version2/models/availableDashboardGadget.ts +++ b/src/version2/models/availableDashboardGadget.ts @@ -2,8 +2,8 @@ export interface AvailableDashboardGadget { /** The module key of the gadget type. */ moduleKey?: string; - /** The URI of the gadget type. */ - uri?: string; /** The title of the gadget. */ title: string; + /** The URI of the gadget type. */ + uri?: string; } diff --git a/src/version2/models/avatar.ts b/src/version2/models/avatar.ts index cab1507727..59626a2763 100644 --- a/src/version2/models/avatar.ts +++ b/src/version2/models/avatar.ts @@ -1,20 +1,20 @@ /** Details of an avatar. */ export interface Avatar { + /** The file name of the avatar icon. Returned for system avatars. */ + fileName?: string; /** The ID of the avatar. */ id: string; + /** Whether the avatar can be deleted. */ + isDeletable?: boolean; + /** Whether the avatar is used in Jira. For example, shown as a project's avatar. */ + isSelected?: boolean; + /** Whether the avatar is a system avatar. */ + isSystemAvatar?: boolean; /** * The owner of the avatar. For a system avatar the owner is null (and nothing is returned). For non-system avatars * this is the appropriate identifier, such as the ID for a project or the account ID for a user. */ owner?: string; - /** Whether the avatar is a system avatar. */ - isSystemAvatar?: boolean; - /** Whether the avatar is used in Jira. For example, shown as a project's avatar. */ - isSelected?: boolean; - /** Whether the avatar can be deleted. */ - isDeletable?: boolean; - /** The file name of the avatar icon. Returned for system avatars. */ - fileName?: string; /** The list of avatar icon URLs. */ urls?: {}; } diff --git a/src/version2/models/avatars.ts b/src/version2/models/avatars.ts index 9954aeb966..df93aa3ca5 100644 --- a/src/version2/models/avatars.ts +++ b/src/version2/models/avatars.ts @@ -2,8 +2,8 @@ import { Avatar } from './avatar'; /** Details about system and custom avatars. */ export interface Avatars { - /** System avatars list. */ - system?: Avatar[]; /** Custom avatars list. */ custom?: Avatar[]; + /** System avatars list. */ + system?: Avatar[]; } diff --git a/src/version2/models/bulkIssuePropertyUpdateRequest.ts b/src/version2/models/bulkIssuePropertyUpdateRequest.ts index 2831b5b06b..8162a61c86 100644 --- a/src/version2/models/bulkIssuePropertyUpdateRequest.ts +++ b/src/version2/models/bulkIssuePropertyUpdateRequest.ts @@ -2,11 +2,6 @@ import { IssueFilterForBulkPropertySet } from './issueFilterForBulkPropertySet'; /** Bulk issue property update request details. */ export interface BulkIssuePropertyUpdateRequest { - /** - * The value of the property. The value must be a [valid](https://tools.ietf.org/html/rfc4627), non-empty JSON blob. - * The maximum length is 32768 characters. - */ - value?: any; /** * EXPERIMENTAL. The Jira expression to calculate the value of the property. The value of the expression must be an * object that can be converted to JSON, such as a number, boolean, string, list, or map. The context variables @@ -15,4 +10,9 @@ export interface BulkIssuePropertyUpdateRequest { */ expression?: string; filter?: IssueFilterForBulkPropertySet; + /** + * The value of the property. The value must be a [valid](https://tools.ietf.org/html/rfc4627), non-empty JSON blob. + * The maximum length is 32768 characters. + */ + value?: any; } diff --git a/src/version2/models/bulkOperationErrorResult.ts b/src/version2/models/bulkOperationErrorResult.ts index accfbdcfc7..7539a2009c 100644 --- a/src/version2/models/bulkOperationErrorResult.ts +++ b/src/version2/models/bulkOperationErrorResult.ts @@ -1,7 +1,7 @@ import { ErrorCollection } from './errorCollection'; export interface BulkOperationErrorResult { - status?: number; elementErrors?: ErrorCollection; failedElementNumber?: number; + status?: number; } diff --git a/src/version2/models/bulkPermissionGrants.ts b/src/version2/models/bulkPermissionGrants.ts index b94169b695..10cc5e5f1b 100644 --- a/src/version2/models/bulkPermissionGrants.ts +++ b/src/version2/models/bulkPermissionGrants.ts @@ -2,8 +2,8 @@ import { BulkProjectPermissionGrants } from './bulkProjectPermissionGrants'; /** Details of global and project permissions granted to the user. */ export interface BulkPermissionGrants { - /** List of project permissions and the projects and issues those permissions provide access to. */ - projectPermissions: BulkProjectPermissionGrants[]; /** List of permissions granted to the user. */ globalPermissions: string[]; + /** List of project permissions and the projects and issues those permissions provide access to. */ + projectPermissions: BulkProjectPermissionGrants[]; } diff --git a/src/version2/models/bulkPermissionsRequest.ts b/src/version2/models/bulkPermissionsRequest.ts index a772606f85..742cd1c93e 100644 --- a/src/version2/models/bulkPermissionsRequest.ts +++ b/src/version2/models/bulkPermissionsRequest.ts @@ -5,10 +5,10 @@ export type BulkPermissionsRequestBean = BulkPermissionsRequest; /** Details of global permissions to look up and project permissions with associated projects and issues to look up. */ export interface BulkPermissionsRequest { - /** Project permissions with associated projects and issues to look up. */ - projectPermissions?: BulkProjectPermissions[]; - /** Global permissions to look up. */ - globalPermissions?: string[]; /** The account ID of a user. */ accountId?: string; + /** Global permissions to look up. */ + globalPermissions?: string[]; + /** Project permissions with associated projects and issues to look up. */ + projectPermissions?: BulkProjectPermissions[]; } diff --git a/src/version2/models/bulkProjectPermissionGrants.ts b/src/version2/models/bulkProjectPermissionGrants.ts index 5ca922f694..dfc38188e7 100644 --- a/src/version2/models/bulkProjectPermissionGrants.ts +++ b/src/version2/models/bulkProjectPermissionGrants.ts @@ -1,9 +1,9 @@ /** List of project permissions and the projects and issues those permissions grant access to. */ export interface BulkProjectPermissionGrants { - /** A project permission, */ - permission: string; /** IDs of the issues the user has the permission for. */ issues: number[]; + /** A project permission, */ + permission: string; /** IDs of the projects the user has the permission for. */ projects: number[]; } diff --git a/src/version2/models/bulkProjectPermissions.ts b/src/version2/models/bulkProjectPermissions.ts index 64ef40d6ee..ed9623563d 100644 --- a/src/version2/models/bulkProjectPermissions.ts +++ b/src/version2/models/bulkProjectPermissions.ts @@ -2,8 +2,8 @@ export interface BulkProjectPermissions { /** List of issue IDs. */ issues?: number[]; - /** List of project IDs. */ - projects?: number[]; /** List of project permissions. */ permissions: string[]; + /** List of project IDs. */ + projects?: number[]; } diff --git a/src/version2/models/changeDetails.ts b/src/version2/models/changeDetails.ts index 5540c682fe..58743158a9 100644 --- a/src/version2/models/changeDetails.ts +++ b/src/version2/models/changeDetails.ts @@ -2,10 +2,10 @@ export interface ChangeDetails { /** The name of the field changed. */ field?: string; - /** The type of the field changed. */ - fieldtype?: string; /** The ID of the field changed. */ fieldId?: string; + /** The type of the field changed. */ + fieldtype?: string; /** The details of the original value. */ from?: string; /** The details of the original value as a string. */ diff --git a/src/version2/models/changedValue.ts b/src/version2/models/changedValue.ts index 21221a59d1..11925e3764 100644 --- a/src/version2/models/changedValue.ts +++ b/src/version2/models/changedValue.ts @@ -3,10 +3,10 @@ export type ChangedValueBean = ChangedValue; /** Details of names changed in the record event. */ export interface ChangedValue { - /** The name of the field changed. */ - fieldName?: string; /** The value of the field before the change. */ changedFrom?: string; /** The value of the field after the change. */ changedTo?: string; + /** The name of the field changed. */ + fieldName?: string; } diff --git a/src/version2/models/changedWorklog.ts b/src/version2/models/changedWorklog.ts index 007309c0a3..654ab2a43c 100644 --- a/src/version2/models/changedWorklog.ts +++ b/src/version2/models/changedWorklog.ts @@ -2,10 +2,10 @@ import { EntityProperty } from './entityProperty'; /** Details of a changed worklog. */ export interface ChangedWorklog { - /** The ID of the worklog. */ - worklogId?: number; - /** The datetime of the change. */ - updatedTime?: number; /** Details of properties associated with the change. */ properties?: EntityProperty[]; + /** The datetime of the change. */ + updatedTime?: number; + /** The ID of the worklog. */ + worklogId?: number; } diff --git a/src/version2/models/changedWorklogs.ts b/src/version2/models/changedWorklogs.ts index cd45c356b9..ecd6bea3d8 100644 --- a/src/version2/models/changedWorklogs.ts +++ b/src/version2/models/changedWorklogs.ts @@ -2,15 +2,15 @@ import { ChangedWorklog } from './changedWorklog'; /** List of changed worklogs. */ export interface ChangedWorklogs { - /** Changed worklog list. */ - values?: ChangedWorklog[]; + lastPage?: boolean; + /** The URL of the next list of changed worklogs. */ + nextPage?: string; + /** The URL of this changed worklogs list. */ + self?: string; /** The datetime of the first worklog item in the list. */ since?: number; /** The datetime of the last worklog item in the list. */ until?: number; - /** The URL of this changed worklogs list. */ - self?: string; - /** The URL of the next list of changed worklogs. */ - nextPage?: string; - lastPage?: boolean; + /** Changed worklog list. */ + values?: ChangedWorklog[]; } diff --git a/src/version2/models/changelog.ts b/src/version2/models/changelog.ts index d5a5ea1006..5671b53407 100644 --- a/src/version2/models/changelog.ts +++ b/src/version2/models/changelog.ts @@ -2,14 +2,14 @@ import { ChangeDetails } from './changeDetails'; import { HistoryMetadata } from './historyMetadata'; import { UserDetails } from './userDetails'; -/** A changelog. */ +/** A log of changes made to issue fields. Changelogs related to workflow associations are currently being deprecated. */ export interface Changelog { - /** The ID of the changelog. */ - id?: string; author?: UserDetails; /** The date on which the change took place. */ created?: string; + historyMetadata?: HistoryMetadata; + /** The ID of the changelog. */ + id?: string; /** The list of items changed. */ items?: ChangeDetails[]; - historyMetadata?: HistoryMetadata; } diff --git a/src/version2/models/comment.ts b/src/version2/models/comment.ts index ed20aa68c6..7183606daa 100644 --- a/src/version2/models/comment.ts +++ b/src/version2/models/comment.ts @@ -4,21 +4,20 @@ import { Visibility } from './visibility'; /** A comment. */ export interface Comment { - /** The URL of the comment. */ - self?: string; - /** The ID of the comment. */ - id?: string; author?: UserDetails; /** The comment text. */ body?: string; - /** The rendered version of the comment. */ - renderedBody?: string; - updateAuthor?: UserDetails; /** The date and time at which the comment was created. */ created?: string; - /** The date and time at which the comment was updated last. */ - updated?: string; - visibility?: Visibility; + /** The ID of the comment. */ + id?: string; + /** + * Whether the comment was added from an email sent by a person who is not part of the issue. See [Allow external + * emails to be added as comments on + * issues](https://support.atlassian.com/jira-service-management-cloud/docs/allow-external-emails-to-be-added-as-comments-on-issues/)for + * information on setting up this feature. + */ + jsdAuthorCanSeeRequest?: boolean; /** * Whether the comment is visible in Jira Service Desk. Defaults to true when comments are created in the Jira Cloud * Platform. This includes when the site doesn't use Jira Service Desk or the project isn't a Jira Service Desk @@ -28,13 +27,14 @@ export interface Comment { * operation. */ jsdPublic?: boolean; - /** - * Whether the comment was added from an email sent by a person who is not part of the issue. See [Allow external - * emails to be added as comments on - * issues](https://support.atlassian.com/jira-service-management-cloud/docs/allow-external-emails-to-be-added-as-comments-on-issues/)for - * information on setting up this feature. - */ - jsdAuthorCanSeeRequest?: boolean; /** A list of comment properties. Optional on create and update. */ properties?: EntityProperty[]; + /** The rendered version of the comment. */ + renderedBody?: string; + /** The URL of the comment. */ + self?: string; + updateAuthor?: UserDetails; + /** The date and time at which the comment was updated last. */ + updated?: string; + visibility?: Visibility; } diff --git a/src/version2/models/componentIssuesCount.ts b/src/version2/models/componentIssuesCount.ts index 54e5dcf897..48d5a1694d 100644 --- a/src/version2/models/componentIssuesCount.ts +++ b/src/version2/models/componentIssuesCount.ts @@ -1,7 +1,7 @@ /** Count of issues assigned to a component. */ export interface ComponentIssuesCount { - /** The URL for this count of issues for a component. */ - self?: string; /** The count of issues assigned to a component. */ issueCount?: number; + /** The URL for this count of issues for a component. */ + self?: string; } diff --git a/src/version2/models/componentWithIssueCount.ts b/src/version2/models/componentWithIssueCount.ts index 928ae00bcc..a8598fc017 100644 --- a/src/version2/models/componentWithIssueCount.ts +++ b/src/version2/models/componentWithIssueCount.ts @@ -2,15 +2,38 @@ import { User } from './user'; /** Details about a component with a count of the issues it contains. */ export interface ComponentWithIssueCount { - /** Count of issues for the component. */ - issueCount?: number; - realAssignee?: User; + assignee?: User; + /** + * The nominal user type used to determine the assignee for issues created with this component. See `realAssigneeType` + * for details on how the type of the user, and hence the user, assigned to issues is determined. Takes the following + * values: + * + * `PROJECT_LEAD` the assignee to any issues created with this component is nominally the lead for the project the + * component is in. `COMPONENT_LEAD` the assignee to any issues created with this component is nominally the lead for + * the component. `UNASSIGNED` an assignee is not set for issues created with this component. `PROJECT_DEFAULT` the + * assignee to any issues created with this component is nominally the default assignee for the project that the + * component is in. + */ + assigneeType?: string; + /** The description for the component. */ + description?: string; + /** The unique identifier for the component. */ + id?: string; /** * Whether a user is associated with `assigneeType`. For example, if the `assigneeType` is set to `COMPONENT_LEAD` but * the component lead is not set, then `false` is returned. */ isAssigneeTypeValid?: boolean; - assignee?: User; + /** Count of issues for the component. */ + issueCount?: number; + lead?: User; + /** The name for the component. */ + name?: string; + /** The key of the project to which the component is assigned. */ + project?: string; + /** Not used. */ + projectId?: number; + realAssignee?: User; /** * The type of the assignee that is assigned to issues created with this component, when an assignee cannot be set * from the `assigneeType`. For example, `assigneeType` is set to `COMPONENT_LEAD` but no component lead is set. This @@ -23,29 +46,6 @@ export interface ComponentWithIssueCount { * cases are true. */ realAssigneeType?: string; - /** The description for the component. */ - description?: string; /** The URL for this count of the issues contained in the component. */ self?: string; - /** Not used. */ - projectId?: number; - /** The key of the project to which the component is assigned. */ - project?: string; - lead?: User; - /** - * The nominal user type used to determine the assignee for issues created with this component. See `realAssigneeType` - * for details on how the type of the user, and hence the user, assigned to issues is determined. Takes the following - * values: - * - * `PROJECT_LEAD` the assignee to any issues created with this component is nominally the lead for the project the - * component is in. `COMPONENT_LEAD` the assignee to any issues created with this component is nominally the lead for - * the component. `UNASSIGNED` an assignee is not set for issues created with this component. `PROJECT_DEFAULT` the - * assignee to any issues created with this component is nominally the default assignee for the project that the - * component is in. - */ - assigneeType?: string; - /** The name for the component. */ - name?: string; - /** The unique identifier for the component. */ - id?: string; } diff --git a/src/version2/models/configuration.ts b/src/version2/models/configuration.ts index 404cd9a0d7..bdb4bb7226 100644 --- a/src/version2/models/configuration.ts +++ b/src/version2/models/configuration.ts @@ -2,6 +2,20 @@ import { TimeTrackingConfiguration } from './timeTrackingConfiguration'; /** Details about the configuration of Jira. */ export interface Configuration { + /** Whether the ability to add attachments to issues is enabled. */ + attachmentsEnabled?: boolean; + /** Whether the ability to link issues is enabled. */ + issueLinkingEnabled?: boolean; + /** Whether the ability to create subtasks for issues is enabled. */ + subTasksEnabled?: boolean; + timeTrackingConfiguration?: TimeTrackingConfiguration; + /** Whether the ability to track time is enabled. This property is deprecated. */ + timeTrackingEnabled?: boolean; + /** + * Whether the ability to create unassigned issues is enabled. See [Configuring Jira application + * options](https://confluence.atlassian.com/x/uYXKM) for details. + */ + unassignedIssuesAllowed?: boolean; /** * Whether the ability for users to vote on issues is enabled. See [Configuring Jira application * options](https://confluence.atlassian.com/x/uYXKM) for details. @@ -12,18 +26,4 @@ export interface Configuration { * options](https://confluence.atlassian.com/x/uYXKM) for details. */ watchingEnabled?: boolean; - /** - * Whether the ability to create unassigned issues is enabled. See [Configuring Jira application - * options](https://confluence.atlassian.com/x/uYXKM) for details. - */ - unassignedIssuesAllowed?: boolean; - /** Whether the ability to create subtasks for issues is enabled. */ - subTasksEnabled?: boolean; - /** Whether the ability to link issues is enabled. */ - issueLinkingEnabled?: boolean; - /** Whether the ability to track time is enabled. This property is deprecated. */ - timeTrackingEnabled?: boolean; - /** Whether the ability to add attachments to issues is enabled. */ - attachmentsEnabled?: boolean; - timeTrackingConfiguration?: TimeTrackingConfiguration; } diff --git a/src/version2/models/connectCustomFieldValue.ts b/src/version2/models/connectCustomFieldValue.ts index c2cd59a84d..a9c9d6f953 100644 --- a/src/version2/models/connectCustomFieldValue.ts +++ b/src/version2/models/connectCustomFieldValue.ts @@ -2,21 +2,21 @@ export interface ConnectCustomFieldValue { /** The type of custom field. */ Type: string; - /** The issue ID. */ - issueID: number; /** The custom field ID. */ fieldID: number; - /** The value of string type custom field when `_type` is `StringIssueField`. */ - string?: string; + /** The issue ID. */ + issueID: number; /** The value of number type custom field when `_type` is `NumberIssueField`. */ number?: number; - /** The value of richText type custom field when `_type` is `RichTextIssueField`. */ - richText?: string; /** * The value of single select and multiselect custom field type when `_type` is `SingleSelectIssueField` or * `MultiSelectIssueField`. */ optionID?: string; - /** The value of of text custom field type when `_type` is `TextIssueField`. */ + /** The value of richText type custom field when `_type` is `RichTextIssueField`. */ + richText?: string; + /** The value of string type custom field when `_type` is `StringIssueField`. */ + string?: string; + /** The value of text custom field type when `_type` is `TextIssueField`. */ text?: string; } diff --git a/src/version2/models/connectWorkflowTransitionRule.ts b/src/version2/models/connectWorkflowTransitionRule.ts index 43168bcc94..126c510de5 100644 --- a/src/version2/models/connectWorkflowTransitionRule.ts +++ b/src/version2/models/connectWorkflowTransitionRule.ts @@ -3,10 +3,10 @@ import { WorkflowTransition } from './workflowTransition'; /** A workflow transition rule. */ export interface ConnectWorkflowTransitionRule { + configuration: RuleConfiguration; /** The ID of the transition rule. */ id: string; /** The key of the rule, as defined in the Connect app descriptor. */ key: string; - configuration: RuleConfiguration; transition?: WorkflowTransition; } diff --git a/src/version2/models/contextForProjectAndIssueType.ts b/src/version2/models/contextForProjectAndIssueType.ts index 1b443b54b0..c576764e11 100644 --- a/src/version2/models/contextForProjectAndIssueType.ts +++ b/src/version2/models/contextForProjectAndIssueType.ts @@ -1,9 +1,9 @@ /** The project and issue type mapping with a matching custom field context. */ export interface ContextForProjectAndIssueType { - /** The ID of the project. */ - projectId: string; - /** The ID of the issue type. */ - issueTypeId: string; /** The ID of the custom field context. */ contextId: string; + /** The ID of the issue type. */ + issueTypeId: string; + /** The ID of the project. */ + projectId: string; } diff --git a/src/version2/models/convertedJQLQueries.ts b/src/version2/models/convertedJQLQueries.ts index 4f73a5d45c..c5cbfd6479 100644 --- a/src/version2/models/convertedJQLQueries.ts +++ b/src/version2/models/convertedJQLQueries.ts @@ -2,8 +2,8 @@ import { JQLQueryWithUnknownUsers } from './jQLQueryWithUnknownUsers'; /** The converted JQL queries. */ export interface ConvertedJQLQueries { - /** The list of converted query strings with account IDs in place of user identifiers. */ - queryStrings?: string[]; /** List of queries containing user information that could not be mapped to an existing user */ queriesWithUnknownUsers?: JQLQueryWithUnknownUsers[]; + /** The list of converted query strings with account IDs in place of user identifiers. */ + queryStrings?: string[]; } diff --git a/src/version2/models/createCustomFieldContext.ts b/src/version2/models/createCustomFieldContext.ts index 7cc7f23873..bcf3d24b35 100644 --- a/src/version2/models/createCustomFieldContext.ts +++ b/src/version2/models/createCustomFieldContext.ts @@ -1,13 +1,13 @@ /** The details of a created custom field context. */ export interface CreateCustomFieldContext { + /** The description of the context. */ + description?: string; /** The ID of the context. */ id?: string; + /** The list of issue types IDs for the context. If the list is empty, the context refers to all issue types. */ + issueTypeIds?: string[]; /** The name of the context. */ name: string; - /** The description of the context. */ - description?: string; /** The list of project IDs associated with the context. If the list is empty, the context is global. */ projectIds?: string[]; - /** The list of issue types IDs for the context. If the list is empty, the context refers to all issue types. */ - issueTypeIds?: string[]; } diff --git a/src/version2/models/createIssueSecuritySchemeDetails.ts b/src/version2/models/createIssueSecuritySchemeDetails.ts new file mode 100644 index 0000000000..d61b640ba1 --- /dev/null +++ b/src/version2/models/createIssueSecuritySchemeDetails.ts @@ -0,0 +1,11 @@ +import { SecuritySchemeLevel } from './securitySchemeLevel'; + +/** Issue security scheme and it's details */ +export interface CreateIssueSecuritySchemeDetails { + /** The description of the issue security scheme. */ + description?: string; + /** The list of scheme levels which should be added to the security scheme. */ + levels?: SecuritySchemeLevel[]; + /** The name of the issue security scheme. Must be unique (case-insensitive). */ + name: string; +} diff --git a/src/version2/models/createPriorityDetails.ts b/src/version2/models/createPriorityDetails.ts index 6d1af928fd..363c7a2759 100644 --- a/src/version2/models/createPriorityDetails.ts +++ b/src/version2/models/createPriorityDetails.ts @@ -1,11 +1,11 @@ /** Details of an issue priority. */ export interface CreatePriorityDetails { - /** The name of the priority. Must be unique. */ - name: string; /** The description of the priority. */ description?: string; /** The URL of an icon for the priority. Accepted protocols are HTTP and HTTPS. Built in icons can also be used. */ iconUrl?: string; + /** The name of the priority. Must be unique. */ + name: string; /** The status color of the priority in 3-digit or 6-digit hexadecimal format. */ statusColor: string; } diff --git a/src/version2/models/createResolutionDetails.ts b/src/version2/models/createResolutionDetails.ts index 5791de2eea..c5bd664c91 100644 --- a/src/version2/models/createResolutionDetails.ts +++ b/src/version2/models/createResolutionDetails.ts @@ -1,7 +1,7 @@ /** Details of an issue resolution. */ export interface CreateResolutionDetails { - /** The name of the resolution. Must be unique (case-insensitive). */ - name: string; /** The description of the resolution. */ description?: string; + /** The name of the resolution. Must be unique (case-insensitive). */ + name: string; } diff --git a/src/version2/models/createUiModificationDetails.ts b/src/version2/models/createUiModificationDetails.ts index ed1005a7ad..a5152b29ad 100644 --- a/src/version2/models/createUiModificationDetails.ts +++ b/src/version2/models/createUiModificationDetails.ts @@ -2,12 +2,12 @@ import { UiModificationContextDetails } from './uiModificationContextDetails'; /** The details of a UI modification. */ export interface CreateUiModificationDetails { - /** The name of the UI modification. The maximum length is 255 characters. */ - name: string; - /** The description of the UI modification. The maximum length is 255 characters. */ - description?: string; - /** The data of the UI modification. The maximum size of the data is 50000 characters. */ - data?: string; /** List of contexts of the UI modification. The maximum number of contexts is 1000. */ contexts?: UiModificationContextDetails[]; + /** The data of the UI modification. The maximum size of the data is 50000 characters. */ + data?: string; + /** The description of the UI modification. The maximum length is 255 characters. */ + description?: string; + /** The name of the UI modification. The maximum length is 255 characters. */ + name: string; } diff --git a/src/version2/models/createUpdateRoleRequest.ts b/src/version2/models/createUpdateRoleRequest.ts index b86df76a56..ff1f82ad27 100644 --- a/src/version2/models/createUpdateRoleRequest.ts +++ b/src/version2/models/createUpdateRoleRequest.ts @@ -2,14 +2,14 @@ export type CreateUpdateRoleRequestBean = CreateUpdateRoleRequest; export interface CreateUpdateRoleRequest { - /** - * The name of the project role. Must be unique. Cannot begin or end with whitespace. The maximum length is 255 - * characters. Required when creating a project role. Optional when partially updating a project role. - */ - name?: string; /** * A description of the project role. Required when fully updating a project role. Optional when creating or partially * updating a project role. */ description?: string; + /** + * The name of the project role. Must be unique. Cannot begin or end with whitespace. The maximum length is 255 + * characters. Required when creating a project role. Optional when partially updating a project role. + */ + name?: string; } diff --git a/src/version2/models/createWorkflowCondition.ts b/src/version2/models/createWorkflowCondition.ts index bc89856b0f..2cb993c5ad 100644 --- a/src/version2/models/createWorkflowCondition.ts +++ b/src/version2/models/createWorkflowCondition.ts @@ -1,11 +1,11 @@ /** A workflow transition condition. */ export interface CreateWorkflowCondition { - /** The compound condition operator. */ - operator?: string; /** The list of workflow conditions. */ conditions?: CreateWorkflowCondition[]; - /** The type of the transition rule. */ - type?: string; /** EXPERIMENTAL. The configuration of the transition rule. */ configuration?: {}; + /** The compound condition operator. */ + operator?: string; + /** The type of the transition rule. */ + type?: string; } diff --git a/src/version2/models/createWorkflowDetails.ts b/src/version2/models/createWorkflowDetails.ts index 057f9413f4..8c876ae677 100644 --- a/src/version2/models/createWorkflowDetails.ts +++ b/src/version2/models/createWorkflowDetails.ts @@ -3,13 +3,18 @@ import { CreateWorkflowTransitionDetails } from './createWorkflowTransitionDetai /** The details of a workflow. */ export interface CreateWorkflowDetails { + /** The description of the workflow. The maximum length is 1000 characters. */ + description?: string; /** * The name of the workflow. The name must be unique. The maximum length is 255 characters. Characters can be * separated by a whitespace but the name cannot start or end with a whitespace. */ name: string; - /** The description of the workflow. The maximum length is 1000 characters. */ - description?: string; + /** + * The statuses of the workflow. Any status that does not include a transition is added to the workflow without a + * transition. + */ + statuses: CreateWorkflowStatusDetails[]; /** * The transitions of the workflow. For the request to be valid, these transitions must: * @@ -18,12 +23,7 @@ export interface CreateWorkflowDetails { * each transition from a status. not have a 'from' status on _initial_ and _global_ transitions. have a 'from' status * on _directed_ transitions. * - * All the transition statuses must be included in `statuses`. + * All the transition statuses must be included in `statuses`. */ transitions: CreateWorkflowTransitionDetails[]; - /** - * The statuses of the workflow. Any status that does not include a transition is added to the workflow without a - * transition. - */ - statuses: CreateWorkflowStatusDetails[]; } diff --git a/src/version2/models/createWorkflowTransitionDetails.ts b/src/version2/models/createWorkflowTransitionDetails.ts index 1f5a1e9c66..7e948429e5 100644 --- a/src/version2/models/createWorkflowTransitionDetails.ts +++ b/src/version2/models/createWorkflowTransitionDetails.ts @@ -3,18 +3,18 @@ import { CreateWorkflowTransitionScreenDetails } from './createWorkflowTransitio /** The details of a workflow transition. */ export interface CreateWorkflowTransitionDetails { - /** The name of the transition. The maximum length is 60 characters. */ - name: string; /** The description of the transition. The maximum length is 1000 characters. */ description?: string; /** The statuses the transition can start from. */ from?: string[]; + /** The name of the transition. The maximum length is 60 characters. */ + name: string; + /** The properties of the transition. */ + properties?: {}; + rules?: CreateWorkflowTransitionRulesDetails; + screen?: CreateWorkflowTransitionScreenDetails; /** The status the transition goes to. */ to: string; /** The type of the transition. */ type: string; - rules?: CreateWorkflowTransitionRulesDetails; - screen?: CreateWorkflowTransitionScreenDetails; - /** The properties of the transition. */ - properties?: {}; } diff --git a/src/version2/models/createWorkflowTransitionRule.ts b/src/version2/models/createWorkflowTransitionRule.ts index 44c68dd949..3c4f2765a8 100644 --- a/src/version2/models/createWorkflowTransitionRule.ts +++ b/src/version2/models/createWorkflowTransitionRule.ts @@ -1,7 +1,7 @@ /** A workflow transition rule. */ export interface CreateWorkflowTransitionRule { - /** The type of the transition rule. */ - type: string; /** EXPERIMENTAL. The configuration of the transition rule. */ configuration?: {}; + /** The type of the transition rule. */ + type: string; } diff --git a/src/version2/models/createWorkflowTransitionRulesDetails.ts b/src/version2/models/createWorkflowTransitionRulesDetails.ts index d42a061e1b..739148ca91 100644 --- a/src/version2/models/createWorkflowTransitionRulesDetails.ts +++ b/src/version2/models/createWorkflowTransitionRulesDetails.ts @@ -4,27 +4,69 @@ import { CreateWorkflowTransitionRule } from './createWorkflowTransitionRule'; /** The details of a workflow transition rules. */ export interface CreateWorkflowTransitionRulesDetails { conditions?: CreateWorkflowCondition; - /** - * The workflow validators. - * - * _Note:_* The default permission validator is always added to the _initial_ transition, as in: - * - * "validators": [ { "type": "PermissionValidator", "configuration": { "permissionKey": "CREATE_ISSUES" } } ] - */ - validators?: CreateWorkflowTransitionRule[]; /** * The workflow post functions. * * _Note:_* The default post functions are always added to the _initial_ transition, as in: * - * "postFunctions": [ { "type": "IssueCreateFunction" }, { "type": "IssueReindexFunction" }, { "type": - * "FireIssueEventFunction", "configuration": { "event": { "id": "1", "name": "issue_created" } } } ] + * "postFunctions": [ + * { + * "type": "IssueCreateFunction" + * }, + * { + * "type": "IssueReindexFunction" + * }, + * { + * "type": "FireIssueEventFunction", + * "configuration": { + * "event": { + * "id": "1", + * "name": "issue_created" + * } + * } + * } + * ] * * _Note:_* The default post functions are always added to the _global_ and _directed_ transitions, as in: * - * "postFunctions": [ { "type": "UpdateIssueStatusFunction" }, { "type": "CreateCommentFunction" }, { "type": - * "GenerateChangeHistoryFunction" }, { "type": "IssueReindexFunction" }, { "type": "FireIssueEventFunction", - * "configuration": { "event": { "id": "13", "name": "issue_generic" } } } ] + * "postFunctions": [ + * { + * "type": "UpdateIssueStatusFunction" + * }, + * { + * "type": "CreateCommentFunction" + * }, + * { + * "type": "GenerateChangeHistoryFunction" + * }, + * { + * "type": "IssueReindexFunction" + * }, + * { + * "type": "FireIssueEventFunction", + * "configuration": { + * "event": { + * "id": "13", + * "name": "issue_generic" + * } + * } + * } + * ] */ postFunctions?: CreateWorkflowTransitionRule[]; + /** + * The workflow validators. + * + * _Note:_* The default permission validator is always added to the _initial_ transition, as in: + * + * "validators": [ + * { + * "type": "PermissionValidator", + * "configuration": { + * "permissionKey": "CREATE_ISSUES" + * } + * } + * ] + */ + validators?: CreateWorkflowTransitionRule[]; } diff --git a/src/version2/models/createdIssue.ts b/src/version2/models/createdIssue.ts index 1eccacc89e..aa78dd4879 100644 --- a/src/version2/models/createdIssue.ts +++ b/src/version2/models/createdIssue.ts @@ -9,4 +9,5 @@ export interface CreatedIssue { /** The URL of the created issue or subtask. */ self: string; transition?: NestedResponse; + watchers?: NestedResponse; } diff --git a/src/version2/models/createdIssues.ts b/src/version2/models/createdIssues.ts index f8b8a22d73..bf048798b5 100644 --- a/src/version2/models/createdIssues.ts +++ b/src/version2/models/createdIssues.ts @@ -3,8 +3,8 @@ import { CreatedIssue } from './createdIssue'; /** Details about the issues created and the errors for requests that failed. */ export interface CreatedIssues { - /** Details of the issues created. */ - issues?: CreatedIssue[]; /** Error details for failed issue creation requests. */ errors?: BulkOperationErrorResult[]; + /** Details of the issues created. */ + issues?: CreatedIssue[]; } diff --git a/src/version2/models/customFieldContext.ts b/src/version2/models/customFieldContext.ts index 0d553be305..b4792cb88e 100644 --- a/src/version2/models/customFieldContext.ts +++ b/src/version2/models/customFieldContext.ts @@ -1,13 +1,13 @@ /** The details of a custom field context. */ export interface CustomFieldContext { - /** The ID of the context. */ - id: string; - /** The name of the context. */ - name: string; /** The description of the context. */ description: string; - /** Whether the context is global. */ - isGlobalContext: boolean; + /** The ID of the context. */ + id: string; /** Whether the context apply to all issue types. */ isAnyIssueType: boolean; + /** Whether the context is global. */ + isGlobalContext: boolean; + /** The name of the context. */ + name: string; } diff --git a/src/version2/models/customFieldContextDefaultValueCascadingOption.ts b/src/version2/models/customFieldContextDefaultValueCascadingOption.ts index 197d79fc43..d3e7b9987e 100644 --- a/src/version2/models/customFieldContextDefaultValueCascadingOption.ts +++ b/src/version2/models/customFieldContextDefaultValueCascadingOption.ts @@ -1,10 +1,10 @@ /** The default value for a cascading select custom field. */ export interface CustomFieldContextDefaultValueCascadingOption { + /** The ID of the default cascading option. */ + cascadingOptionId?: string; /** The ID of the context. */ contextId: string; /** The ID of the default option. */ optionId: string; - /** The ID of the default cascading option. */ - cascadingOptionId?: string; type: string; } diff --git a/src/version2/models/customFieldContextOption.ts b/src/version2/models/customFieldContextOption.ts index cd88cebe37..1181145b8e 100644 --- a/src/version2/models/customFieldContextOption.ts +++ b/src/version2/models/customFieldContextOption.ts @@ -1,11 +1,11 @@ /** Details of the custom field options for a context. */ export interface CustomFieldContextOption { + /** Whether the option is disabled. */ + disabled: boolean; /** The ID of the custom field option. */ id: string; - /** The value of the custom field option. */ - value: string; /** For cascading options, the ID of the custom field option containing the cascading option. */ optionId?: string; - /** Whether the option is disabled. */ - disabled: boolean; + /** The value of the custom field option. */ + value: string; } diff --git a/src/version2/models/customFieldContextProjectMapping.ts b/src/version2/models/customFieldContextProjectMapping.ts index a0c57ac2ac..e1f76ed9ee 100644 --- a/src/version2/models/customFieldContextProjectMapping.ts +++ b/src/version2/models/customFieldContextProjectMapping.ts @@ -2,8 +2,8 @@ export interface CustomFieldContextProjectMapping { /** The ID of the context. */ contextId: string; - /** The ID of the project. */ - projectId?: string; /** Whether context is global. */ isGlobalContext?: boolean; + /** The ID of the project. */ + projectId?: string; } diff --git a/src/version2/models/customFieldContextUpdateDetails.ts b/src/version2/models/customFieldContextUpdateDetails.ts index 9185d2fe9a..044a778b3a 100644 --- a/src/version2/models/customFieldContextUpdateDetails.ts +++ b/src/version2/models/customFieldContextUpdateDetails.ts @@ -1,7 +1,7 @@ /** Details of a custom field context. */ export interface CustomFieldContextUpdateDetails { - /** The name of the custom field context. The name must be unique. The maximum length is 255 characters. */ - name?: string; /** The description of the custom field context. The maximum length is 255 characters. */ description?: string; + /** The name of the custom field context. The name must be unique. The maximum length is 255 characters. */ + name?: string; } diff --git a/src/version2/models/customFieldOptionCreate.ts b/src/version2/models/customFieldOptionCreate.ts index 3ee8d02138..43c4e659a8 100644 --- a/src/version2/models/customFieldOptionCreate.ts +++ b/src/version2/models/customFieldOptionCreate.ts @@ -1,9 +1,9 @@ /** Details of a custom field option to create. */ export interface CustomFieldOptionCreate { - /** The value of the custom field option. */ - value: string; - /** For cascading options, the ID of the custom field object containing the cascading option. */ - optionId?: string; /** Whether the option is disabled. */ disabled?: boolean; + /** For cascading options, the ID of the custom field object containing the cascading option. */ + optionId?: string; + /** The value of the custom field option. */ + value: string; } diff --git a/src/version2/models/customFieldOptionUpdate.ts b/src/version2/models/customFieldOptionUpdate.ts index 13b413da1d..63bcd5547c 100644 --- a/src/version2/models/customFieldOptionUpdate.ts +++ b/src/version2/models/customFieldOptionUpdate.ts @@ -1,9 +1,9 @@ /** Details of a custom field option for a context. */ export interface CustomFieldOptionUpdate { + /** Whether the option is disabled. */ + disabled?: boolean; /** The ID of the custom field option. */ id: string; /** The value of the custom field option. */ value?: string; - /** Whether the option is disabled. */ - disabled?: boolean; } diff --git a/src/version2/models/dashboardDetails.ts b/src/version2/models/dashboardDetails.ts index a3c0987838..35fdb9b664 100644 --- a/src/version2/models/dashboardDetails.ts +++ b/src/version2/models/dashboardDetails.ts @@ -2,12 +2,12 @@ import { SharePermission } from './sharePermission'; /** Details of a dashboard. */ export interface DashboardDetails { - /** The name of the dashboard. */ - name: string; /** The description of the dashboard. */ description?: string; - /** The share permissions for the dashboard. */ - sharePermissions: SharePermission[]; /** The edit permissions for the dashboard. */ editPermissions: SharePermission[]; + /** The name of the dashboard. */ + name: string; + /** The share permissions for the dashboard. */ + sharePermissions: SharePermission[]; } diff --git a/src/version2/models/dashboardGadget.ts b/src/version2/models/dashboardGadget.ts index 7df3e70659..3ca3b83957 100644 --- a/src/version2/models/dashboardGadget.ts +++ b/src/version2/models/dashboardGadget.ts @@ -2,15 +2,15 @@ import { DashboardGadgetPosition } from './dashboardGadgetPosition'; /** Details of a gadget. */ export interface DashboardGadget { + /** The color of the gadget. Should be one of `blue`, `red`, `yellow`, `green`, `cyan`, `purple`, `gray`, or `white`. */ + color: string; /** The ID of the gadget instance. */ id: number; /** The module key of the gadget type. */ moduleKey?: string; - /** The URI of the gadget type. */ - uri?: string; - /** The color of the gadget. Should be one of `blue`, `red`, `yellow`, `green`, `cyan`, `purple`, `gray`, or `white`. */ - color: 'blue' | 'red' | 'yellow' | 'green' | 'cyan' | 'purple' | 'gray' | 'white' | string; position?: DashboardGadgetPosition; /** The title of the gadget. */ title: string; + /** The URI of the gadget type. */ + uri?: string; } diff --git a/src/version2/models/defaultLevelValue.ts b/src/version2/models/defaultLevelValue.ts new file mode 100644 index 0000000000..c0a25b6e13 --- /dev/null +++ b/src/version2/models/defaultLevelValue.ts @@ -0,0 +1,10 @@ +/** Details of scheme and new default level. */ +export interface DefaultLevelValue { + /** + * The ID of the issue security level to set as default for the specified scheme. Providing null will reset the + * default level. + */ + defaultLevelId: string; + /** The ID of the issue security scheme to set default level for. */ + issueSecuritySchemeId: string; +} diff --git a/src/version2/models/defaultWorkflow.ts b/src/version2/models/defaultWorkflow.ts index f3288c5302..6cbc96d12a 100644 --- a/src/version2/models/defaultWorkflow.ts +++ b/src/version2/models/defaultWorkflow.ts @@ -1,10 +1,10 @@ /** Details about the default workflow. */ export interface DefaultWorkflow { - /** The name of the workflow to set as the default workflow. */ - workflow: string; /** * Whether a draft workflow scheme is created or updated when updating an active workflow scheme. The draft is updated * with the new default workflow. Defaults to `false`. */ updateDraftIfNeeded?: boolean; + /** The name of the workflow to set as the default workflow. */ + workflow: string; } diff --git a/src/version2/models/deleteAndReplaceVersion.ts b/src/version2/models/deleteAndReplaceVersion.ts index cb30386a04..320a7d4ce6 100644 --- a/src/version2/models/deleteAndReplaceVersion.ts +++ b/src/version2/models/deleteAndReplaceVersion.ts @@ -4,13 +4,13 @@ import { CustomFieldReplacement } from './customFieldReplacement'; export type DeleteAndReplaceVersionBean = DeleteAndReplaceVersion; export interface DeleteAndReplaceVersion { - /** The ID of the version to update `fixVersion` to when the field contains the deleted version. */ - moveFixIssuesTo?: number; - /** The ID of the version to update `affectedVersion` to when the field contains the deleted version. */ - moveAffectedIssuesTo?: number; /** * An array of custom field IDs (`customFieldId`) and version IDs (`moveTo`) to update when the fields contain the * deleted version. */ customFieldReplacementList?: CustomFieldReplacement[]; + /** The ID of the version to update `affectedVersion` to when the field contains the deleted version. */ + moveAffectedIssuesTo?: number; + /** The ID of the version to update `fixVersion` to when the field contains the deleted version. */ + moveFixIssuesTo?: number; } diff --git a/src/version2/models/deprecatedWorkflow.ts b/src/version2/models/deprecatedWorkflow.ts index cdd7155bc4..21f2dcd556 100644 --- a/src/version2/models/deprecatedWorkflow.ts +++ b/src/version2/models/deprecatedWorkflow.ts @@ -2,8 +2,7 @@ import { Scope } from './scope'; /** Details about a workflow. */ export interface DeprecatedWorkflow { - /** The name of the workflow. */ - name?: string; + default?: boolean; /** The description of the workflow. */ description?: string; /** The datetime the workflow was last modified. */ @@ -16,8 +15,9 @@ export interface DeprecatedWorkflow { lastModifiedUser?: string; /** The account ID of the user that last modified the workflow. */ lastModifiedUserAccountId?: string; + /** The name of the workflow. */ + name?: string; + scope?: Scope; /** The number of steps included in the workflow. */ steps?: number; - scope?: Scope; - default?: boolean; } diff --git a/src/version2/models/eventNotification.ts b/src/version2/models/eventNotification.ts index 81b51a1551..ed3e0e0e82 100644 --- a/src/version2/models/eventNotification.ts +++ b/src/version2/models/eventNotification.ts @@ -5,8 +5,12 @@ import { UserDetails } from './userDetails'; /** Details about a notification associated with an event. */ export interface EventNotification { + /** The email address. */ + emailAddress?: string; /** Expand options that include additional event notification details in the response. */ expand?: string; + field?: FieldDetails; + group?: GroupName; /** The ID of the notification. */ id?: number; /** Identifies the recipients of the notification. */ @@ -21,6 +25,7 @@ export interface EventNotification { * `GroupCustomField` The `parameter` is the ID of the custom field. */ parameter?: string; + projectRole?: ProjectRole; /** * The identifier associated with the `notificationType` value that defines the receiver of the notification, where * the receiver isn't implied by the `notificationType` value. So, when `notificationType` is: @@ -30,10 +35,5 @@ export interface EventNotification { * the ID of the custom field. */ recipient?: string; - group?: GroupName; - field?: FieldDetails; - /** The email address. */ - emailAddress?: string; - projectRole?: ProjectRole; user?: UserDetails; } diff --git a/src/version2/models/failedWebhook.ts b/src/version2/models/failedWebhook.ts index 985c8be51d..1672570ef6 100644 --- a/src/version2/models/failedWebhook.ts +++ b/src/version2/models/failedWebhook.ts @@ -1,11 +1,11 @@ /** Details about a failed webhook. */ export interface FailedWebhook { - /** The webhook ID, as sent in the `X-Atlassian-Webhook-Identifier` header with the webhook. */ - id: string; /** The webhook body. */ body?: string; - /** The original webhook destination. */ - url: string; /** The time the webhook was added to the list of failed webhooks (that is, the time of the last failed retry). */ failureTime: number; + /** The webhook ID, as sent in the `X-Atlassian-Webhook-Identifier` header with the webhook. */ + id: string; + /** The original webhook destination. */ + url: string; } diff --git a/src/version2/models/failedWebhooks.ts b/src/version2/models/failedWebhooks.ts index a3f2da5e0d..83559538b5 100644 --- a/src/version2/models/failedWebhooks.ts +++ b/src/version2/models/failedWebhooks.ts @@ -2,8 +2,6 @@ import { FailedWebhook } from './failedWebhook'; /** A page of failed webhooks. */ export interface FailedWebhooks { - /** The list of webhooks. */ - values: FailedWebhook[]; /** * The maximum number of items on the page. If the list of values is shorter than this number, then there are no more * pages. @@ -15,4 +13,6 @@ export interface FailedWebhooks { * the next page and query for new results periodically (for example, every hour). */ next?: string; + /** The list of webhooks. */ + values: FailedWebhook[]; } diff --git a/src/version2/models/field.ts b/src/version2/models/field.ts index 1b4651fcba..11baae0c86 100644 --- a/src/version2/models/field.ts +++ b/src/version2/models/field.ts @@ -3,24 +3,26 @@ import { JsonType } from './jsonType'; /** Details of a field. */ export interface Field { - /** The ID of the field. */ - id: string; - /** The name of the field. */ - name: string; - schema: JsonType; + /** Number of contexts where the field is used. */ + contextsCount?: number; /** The description of the field. */ description?: string; - /** The key of the field. */ - key?: string; + /** The ID of the field. */ + id: string; /** Whether the field is locked. */ isLocked?: boolean; /** Whether the field is shown on screen or not. */ isUnscreenable?: boolean; - /** The searcher key of the field. Returned for custom fields. */ - searcherKey?: string; + /** The key of the field. */ + key?: string; + lastUsed?: FieldLastUsed; + /** The name of the field. */ + name: string; + /** Number of projects where the field is used. */ + projectsCount?: number; + schema: JsonType; /** Number of screens where the field is used. */ screensCount?: number; - /** Number of contexts where the field is used. */ - contextsCount?: number; - lastUsed?: FieldLastUsed; + /** The searcher key of the field. Returned for custom fields. */ + searcherKey?: string; } diff --git a/src/version2/models/fieldConfiguration.ts b/src/version2/models/fieldConfiguration.ts index 703f84151e..ba4ae234a8 100644 --- a/src/version2/models/fieldConfiguration.ts +++ b/src/version2/models/fieldConfiguration.ts @@ -1,11 +1,11 @@ /** Details of a field configuration. */ export interface FieldConfiguration { - /** The ID of the field configuration. */ - id: number; - /** The name of the field configuration. */ - name: string; /** The description of the field configuration. */ description: string; + /** The ID of the field configuration. */ + id: number; /** Whether the field configuration is the default. */ isDefault?: boolean; + /** The name of the field configuration. */ + name: string; } diff --git a/src/version2/models/fieldConfigurationDetails.ts b/src/version2/models/fieldConfigurationDetails.ts index f354d41950..240de3c736 100644 --- a/src/version2/models/fieldConfigurationDetails.ts +++ b/src/version2/models/fieldConfigurationDetails.ts @@ -1,7 +1,7 @@ /** Details of a field configuration. */ export interface FieldConfigurationDetails { - /** The name of the field configuration. Must be unique. */ - name: string; /** The description of the field configuration. */ description?: string; + /** The name of the field configuration. Must be unique. */ + name: string; } diff --git a/src/version2/models/fieldConfigurationIssueTypeItem.ts b/src/version2/models/fieldConfigurationIssueTypeItem.ts index e88a6f13fa..f37e4bc98e 100644 --- a/src/version2/models/fieldConfigurationIssueTypeItem.ts +++ b/src/version2/models/fieldConfigurationIssueTypeItem.ts @@ -1,5 +1,7 @@ /** The field configuration for an issue type. */ export interface FieldConfigurationIssueTypeItem { + /** The ID of the field configuration. */ + fieldConfigurationId: string; /** The ID of the field configuration scheme. */ fieldConfigurationSchemeId: string; /** @@ -7,6 +9,4 @@ export interface FieldConfigurationIssueTypeItem { * all issue types without a field configuration. */ issueTypeId: string; - /** The ID of the field configuration. */ - fieldConfigurationId: string; } diff --git a/src/version2/models/fieldConfigurationItem.ts b/src/version2/models/fieldConfigurationItem.ts index c82e45ca93..e16b9dacc9 100644 --- a/src/version2/models/fieldConfigurationItem.ts +++ b/src/version2/models/fieldConfigurationItem.ts @@ -1,9 +1,9 @@ /** A field within a field configuration. */ export interface FieldConfigurationItem { - /** The ID of the field within the field configuration. */ - id: string; /** The description of the field within the field configuration. */ description?: string; + /** The ID of the field within the field configuration. */ + id: string; /** Whether the field is hidden in the field configuration. */ isHidden?: boolean; /** Whether the field is required in the field configuration. */ diff --git a/src/version2/models/fieldConfigurationScheme.ts b/src/version2/models/fieldConfigurationScheme.ts index 27f5cb515b..180aaf0b89 100644 --- a/src/version2/models/fieldConfigurationScheme.ts +++ b/src/version2/models/fieldConfigurationScheme.ts @@ -1,9 +1,9 @@ /** Details of a field configuration scheme. */ export interface FieldConfigurationScheme { + /** The description of the field configuration scheme. */ + description?: string; /** The ID of the field configuration scheme. */ id: string; /** The name of the field configuration scheme. */ name: string; - /** The description of the field configuration scheme. */ - description?: string; } diff --git a/src/version2/models/fieldConfigurationToIssueTypeMapping.ts b/src/version2/models/fieldConfigurationToIssueTypeMapping.ts index 400a6f281d..9e4ebfa70e 100644 --- a/src/version2/models/fieldConfigurationToIssueTypeMapping.ts +++ b/src/version2/models/fieldConfigurationToIssueTypeMapping.ts @@ -1,10 +1,10 @@ /** The field configuration to issue type mapping. */ export interface FieldConfigurationToIssueTypeMapping { + /** The ID of the field configuration. */ + fieldConfigurationId: string; /** * The ID of the issue type or _default_. When set to _default_ this field configuration issue type item applies to * all issue types without a field configuration. An issue type can be included only once in a request. */ issueTypeId: string; - /** The ID of the field configuration. */ - fieldConfigurationId: string; } diff --git a/src/version2/models/fieldDetails.ts b/src/version2/models/fieldDetails.ts index b785053166..f2fe580fae 100644 --- a/src/version2/models/fieldDetails.ts +++ b/src/version2/models/fieldDetails.ts @@ -3,25 +3,25 @@ import { Scope } from './scope'; /** Details about a field. */ export interface FieldDetails { + /** + * The names that can be used to reference the field in an advanced search. For more information, see [Advanced + * searching - fields reference](https://confluence.atlassian.com/x/gwORLQ). + */ + clauseNames?: string[]; + /** Whether the field is a custom field. */ + custom?: boolean; /** The ID of the field. */ id?: string; /** The key of the field. */ key?: string; /** The name of the field. */ name?: string; - /** Whether the field is a custom field. */ - custom?: boolean; - /** Whether the content of the field can be used to order lists. */ - orderable?: boolean; /** Whether the field can be used as a column on the issue navigator. */ navigable?: boolean; + /** Whether the content of the field can be used to order lists. */ + orderable?: boolean; + schema?: JsonType; + scope?: Scope; /** Whether the content of the field can be searched. */ searchable?: boolean; - /** - * The names that can be used to reference the field in an advanced search. For more information, see [Advanced - * searching - fields reference](https://confluence.atlassian.com/x/gwORLQ). - */ - clauseNames?: string[]; - scope?: Scope; - schema?: JsonType; } diff --git a/src/version2/models/fieldMetadata.ts b/src/version2/models/fieldMetadata.ts index 8955f21bc6..255d970adc 100644 --- a/src/version2/models/fieldMetadata.ts +++ b/src/version2/models/fieldMetadata.ts @@ -2,23 +2,23 @@ import { JsonType } from './jsonType'; /** The metadata describing an issue field. */ export interface FieldMetadata { - /** Whether the field is required. */ - required: boolean; - schema?: JsonType; - /** The name of the field. */ - name: string; - /** The key of the field. */ - key: string; + /** The list of values allowed in the field. */ + allowedValues?: any[]; /** The URL that can be used to automatically complete the field. */ autoCompleteUrl?: string; + /** The configuration properties. */ + configuration?: any; + /** The default value of the field. */ + defaultValue?: any; /** Whether the field has a default value. */ hasDefaultValue?: boolean; + /** The key of the field. */ + key: string; + /** The name of the field. */ + name: string; /** The list of operations that can be performed on the field. */ operations: string[]; - /** The list of values allowed in the field. */ - allowedValues?: any[]; - /** The default value of the field. */ - defaultValue?: any; - /** The configuration properties. */ - configuration?: any; + /** Whether the field is required. */ + required: boolean; + schema?: JsonType; } diff --git a/src/version2/models/fieldReferenceData.ts b/src/version2/models/fieldReferenceData.ts index bc61cbe25e..79f421f4ac 100644 --- a/src/version2/models/fieldReferenceData.ts +++ b/src/version2/models/fieldReferenceData.ts @@ -1,7 +1,13 @@ /** Details of a field that can be used in advanced searches. */ export interface FieldReferenceData { - /** The field identifier. */ - value?: string; + /** Whether the field provide auto-complete suggestions. */ + auto?: string; + /** If the item is a custom field, the ID of the custom field. */ + cfid?: string; + /** Whether this field has been deprecated. */ + deprecated?: string; + /** The searcher key of the field, only passed when the field is deprecated. */ + deprecatedSearcherKey?: string; /** * The display name contains the following: * @@ -10,20 +16,14 @@ export interface FieldReferenceData { * fields, the field name followed by a hyphen and then the custom field ID. For example, `Component - cf[10061]`. */ displayName?: string; + /** The valid search operators for the field. */ + operators?: string[]; /** Whether the field can be used in a query's `ORDER BY` clause. */ orderable?: string; /** Whether the content of this field can be searched. */ searchable?: string; - /** Whether this field has been deprecated. */ - deprecated?: string; - /** The searcher key of the field, only passed when the field is deprecated. */ - deprecatedSearcherKey?: string; - /** Whether the field provide auto-complete suggestions. */ - auto?: string; - /** If the item is a custom field, the ID of the custom field. */ - cfid?: string; - /** The valid search operators for the field. */ - operators?: string[]; /** The data types of items in the field. */ types?: string[]; + /** The field identifier. */ + value?: string; } diff --git a/src/version2/models/fieldValueClause.ts b/src/version2/models/fieldValueClause.ts index b9b9272676..e204ff0cc3 100644 --- a/src/version2/models/fieldValueClause.ts +++ b/src/version2/models/fieldValueClause.ts @@ -4,7 +4,7 @@ import { JqlQueryField } from './jqlQueryField'; /** A clause that asserts the current value of a field. For example, `summary ~ test`. */ export interface FieldValueClause { field: JqlQueryField; + operand: JqlQueryClauseOperand; /** The operator between the field and operand. */ operator: string; - operand: JqlQueryClauseOperand; } diff --git a/src/version2/models/fieldWasClause.ts b/src/version2/models/fieldWasClause.ts index 3aadeec93b..8fbc02379b 100644 --- a/src/version2/models/fieldWasClause.ts +++ b/src/version2/models/fieldWasClause.ts @@ -9,9 +9,9 @@ import { JqlQueryField } from './jqlQueryField'; */ export interface FieldWasClause { field: JqlQueryField; + operand: JqlQueryClauseOperand; /** The operator between the field and operand. */ operator: string; - operand: JqlQueryClauseOperand; /** The list of time predicates. */ predicates: JqlQueryClauseTimePredicate[]; } diff --git a/src/version2/models/fields.ts b/src/version2/models/fields.ts index 55b599797c..820f27c009 100644 --- a/src/version2/models/fields.ts +++ b/src/version2/models/fields.ts @@ -18,8 +18,6 @@ import { Worklog } from './worklog'; /** Key fields from the linked issue. */ export interface Fields { - [key: string]: any; - /** The estimate of how much longer working on the issue will take, in seconds. */ aggregatetimespent: number | null; /** The assignee of the linked issue. */ @@ -95,4 +93,6 @@ export interface Fields { worklogs: Worklog[]; }; workratio: number; + + [key: string]: any; } diff --git a/src/version2/models/filter.ts b/src/version2/models/filter.ts index 2b41fc00df..ac37b1db24 100644 --- a/src/version2/models/filter.ts +++ b/src/version2/models/filter.ts @@ -5,36 +5,36 @@ import { UserList } from './userList'; /** Details about a filter. */ export interface Filter { - /** The URL of the filter. */ - self?: string; + /** A description of the filter. */ + description?: string; + /** The groups and projects that can edit the filter. */ + editPermissions?: SharePermission[]; + /** Whether the filter is selected as a favorite. */ + favourite?: boolean; + /** The count of how many users have selected this filter as a favorite, including the filter owner. */ + favouritedCount?: number; /** The unique identifier for the filter. */ id?: string; + /** The JQL query for the filter. For example, _project = SSP AND issuetype = Bug_. */ + jql?: string; /** The name of the filter. Must be unique. */ name: string; - /** A description of the filter. */ - description?: string; owner?: User; - /** The JQL query for the filter. For example, _project = SSP AND issuetype = Bug_. */ - jql?: string; - /** - * A URL to view the filter results in Jira, using the ID of the filter. For example, - * _https://your-domain.atlassian.net/issues/?filter=10100_. - */ - viewUrl?: string; /** * A URL to view the filter results in Jira, using the [Search for issues using * JQL](#api-rest-api-2-filter-search-get) operation with the filter's JQL string to return the filter results. For * example, _https://your-domain.atlassian.net/rest/api/2/search?jql=project+%3D+SSP+AND+issuetype+%3D+Bug_. */ searchUrl?: string; - /** Whether the filter is selected as a favorite. */ - favourite?: boolean; - /** The count of how many users have selected this filter as a favorite, including the filter owner. */ - favouritedCount?: number; + /** The URL of the filter. */ + self?: string; /** The groups and projects that the filter is shared with. */ sharePermissions?: SharePermission[]; - /** The groups and projects that can edit the filter. */ - editPermissions?: SharePermission[]; sharedUsers?: UserList; subscriptions?: FilterSubscriptionsList; + /** + * A URL to view the filter results in Jira, using the ID of the filter. For example, + * _https://your-domain.atlassian.net/issues/?filter=10100_. + */ + viewUrl?: string; } diff --git a/src/version2/models/filterDetails.ts b/src/version2/models/filterDetails.ts index ad23ef782e..d4b8b3d624 100644 --- a/src/version2/models/filterDetails.ts +++ b/src/version2/models/filterDetails.ts @@ -4,44 +4,44 @@ import { User } from './user'; /** Details of a filter. */ export interface FilterDetails { + /** The description of the filter. */ + description?: string; + /** + * The groups and projects that can edit the filter. This can be specified when updating a filter, but not when + * creating a filter. + */ + editPermissions?: SharePermission[]; /** Expand options that include additional filter details in the response. */ expand?: string; - /** The URL of the filter. */ - self?: string; + /** Whether the filter is selected as a favorite by any users, not including the filter owner. */ + favourite?: boolean; + /** The count of how many users have selected this filter as a favorite, including the filter owner. */ + favouritedCount?: number; /** The unique identifier for the filter. */ id?: string; + /** The JQL query for the filter. For example, _project = SSP AND issuetype = Bug_. */ + jql?: string; /** The name of the filter. */ name: string; - /** The description of the filter. */ - description?: string; owner?: User; - /** The JQL query for the filter. For example, _project = SSP AND issuetype = Bug_. */ - jql?: string; - /** - * A URL to view the filter results in Jira, using the ID of the filter. For example, - * _https://your-domain.atlassian.net/issues/?filter=10100_. - */ - viewUrl?: string; /** * A URL to view the filter results in Jira, using the [Search for issues using * JQL](#api-rest-api-2-filter-search-get) operation with the filter's JQL string to return the filter results. For * example, _https://your-domain.atlassian.net/rest/api/2/search?jql=project+%3D+SSP+AND+issuetype+%3D+Bug_. */ searchUrl?: string; - /** Whether the filter is selected as a favorite by any users, not including the filter owner. */ - favourite?: boolean; - /** The count of how many users have selected this filter as a favorite, including the filter owner. */ - favouritedCount?: number; + /** The URL of the filter. */ + self?: string; /** * The groups and projects that the filter is shared with. This can be specified when updating a filter, but not when * creating a filter. */ sharePermissions?: SharePermission[]; - /** - * The groups and projects that can edit the filter. This can be specified when updating a filter, but not when - * creating a filter. - */ - editPermissions?: SharePermission[]; /** The users that are subscribed to the filter. */ subscriptions?: FilterSubscription[]; + /** + * A URL to view the filter results in Jira, using the ID of the filter. For example, + * _https://your-domain.atlassian.net/issues/?filter=10100_. + */ + viewUrl?: string; } diff --git a/src/version2/models/filterSubscription.ts b/src/version2/models/filterSubscription.ts index 8eb67d5a15..d5dd4380f2 100644 --- a/src/version2/models/filterSubscription.ts +++ b/src/version2/models/filterSubscription.ts @@ -3,8 +3,8 @@ import { User } from './user'; /** Details of a user or group subscribing to a filter. */ export interface FilterSubscription { + group?: GroupName; /** The ID of the filter subscription. */ id?: number; user?: User; - group?: GroupName; } diff --git a/src/version2/models/filterSubscriptionsList.ts b/src/version2/models/filterSubscriptionsList.ts index cf5d350a05..35dd5b1f74 100644 --- a/src/version2/models/filterSubscriptionsList.ts +++ b/src/version2/models/filterSubscriptionsList.ts @@ -2,14 +2,14 @@ import { FilterSubscription } from './filterSubscription'; /** A paginated list of subscriptions to a filter. */ export interface FilterSubscriptionsList { - /** The number of items on the page. */ - size?: number; + /** The index of the last item returned on the page. */ + 'end-index'?: number; /** The list of items. */ items?: FilterSubscription[]; /** The maximum number of results that could be on the page. */ 'max-results'?: number; + /** The number of items on the page. */ + size?: number; /** The index of the first item returned on the page. */ 'start-index'?: number; - /** The index of the last item returned on the page. */ - 'end-index'?: number; } diff --git a/src/version2/models/foundGroup.ts b/src/version2/models/foundGroup.ts index cda5992826..c66e8a0b5c 100644 --- a/src/version2/models/foundGroup.ts +++ b/src/version2/models/foundGroup.ts @@ -2,14 +2,14 @@ import { GroupLabel } from './groupLabel'; /** A group found in a search. */ export interface FoundGroup { - /** The name of the group. The name of a group is mutable, to reliably identify a group use ``groupId`.` */ - name?: string; - /** The group name with the matched query string highlighted with the HTML bold tag. */ - html?: string; - labels?: GroupLabel[]; /** * The ID of the group, which uniquely identifies the group across all Atlassian products. For example, * _952d12c3-5b5b-4d04-bb32-44d383afc4b2_. */ groupId?: string; + /** The group name with the matched query string highlighted with the HTML bold tag. */ + html?: string; + labels?: GroupLabel[]; + /** The name of the group. The name of a group is mutable, to reliably identify a group use ``groupId`.` */ + name?: string; } diff --git a/src/version2/models/foundGroups.ts b/src/version2/models/foundGroups.ts index 1b6c4a8317..cf7e63f3ed 100644 --- a/src/version2/models/foundGroups.ts +++ b/src/version2/models/foundGroups.ts @@ -5,9 +5,9 @@ import { FoundGroup } from './foundGroup'; * groups. */ export interface FoundGroups { + groups?: FoundGroup[]; /** Header text indicating the number of groups in the response and the total number of groups found in the search. */ header?: string; /** The total number of groups found in the search. */ total?: number; - groups?: FoundGroup[]; } diff --git a/src/version2/models/foundUsers.ts b/src/version2/models/foundUsers.ts index 357b8df537..92a4f1a16b 100644 --- a/src/version2/models/foundUsers.ts +++ b/src/version2/models/foundUsers.ts @@ -5,9 +5,9 @@ import { UserPickerUser } from './userPickerUser'; * users. */ export interface FoundUsers { - users?: UserPickerUser[]; - /** The total number of users found in the search. */ - total?: number; /** Header text indicating the number of users in the response and the total number of users found in the search. */ header?: string; + /** The total number of users found in the search. */ + total?: number; + users?: UserPickerUser[]; } diff --git a/src/version2/models/foundUsersAndGroups.ts b/src/version2/models/foundUsersAndGroups.ts index db6d1d4cdc..779d52f775 100644 --- a/src/version2/models/foundUsersAndGroups.ts +++ b/src/version2/models/foundUsersAndGroups.ts @@ -3,6 +3,6 @@ import { FoundUsers } from './foundUsers'; /** List of users and groups found in a search. */ export interface FoundUsersAndGroups { - users?: FoundUsers; groups?: FoundGroups; + users?: FoundUsers; } diff --git a/src/version2/models/functionOperand.ts b/src/version2/models/functionOperand.ts index ecb42aafdf..9110746b76 100644 --- a/src/version2/models/functionOperand.ts +++ b/src/version2/models/functionOperand.ts @@ -3,8 +3,10 @@ * reference](https://confluence.atlassian.com/x/dwiiLQ) for more information about JQL functions. */ export interface FunctionOperand { - /** The name of the function. */ - function: string; /** The list of function arguments. */ arguments: string[]; + /** Encoded operand, which can be used directly in a JQL query. */ + encodedOperand?: string; + /** The name of the function. */ + function: string; } diff --git a/src/version2/models/functionReferenceData.ts b/src/version2/models/functionReferenceData.ts index 4368306310..1d3e4a90b7 100644 --- a/src/version2/models/functionReferenceData.ts +++ b/src/version2/models/functionReferenceData.ts @@ -1,11 +1,11 @@ /** Details of functions that can be used in advanced searches. */ export interface FunctionReferenceData { - /** The function identifier. */ - value?: string; /** The display name of the function. */ displayName?: string; /** Whether the function can take a list of arguments. */ isList?: string; /** The data types returned by the function. */ types?: string[]; + /** The function identifier. */ + value?: string; } diff --git a/src/version2/models/group.ts b/src/version2/models/group.ts index 1730ce2008..7ff70b6e7a 100644 --- a/src/version2/models/group.ts +++ b/src/version2/models/group.ts @@ -1,16 +1,16 @@ import { PagedListUserDetailsApplicationUser } from './pagedListUserDetailsApplicationUser'; export interface Group { - /** The name of group. */ - name?: string; + /** Expand options that include additional group details in the response. */ + expand?: string; /** * The ID of the group, which uniquely identifies the group across all Atlassian products. For example, * _952d12c3-5b5b-4d04-bb32-44d383afc4b2_. */ groupId?: string; + /** The name of group. */ + name?: string; /** The URL for these group details. */ self?: string; users?: PagedListUserDetailsApplicationUser; - /** Expand options that include additional group details in the response. */ - expand?: string; } diff --git a/src/version2/models/groupDetails.ts b/src/version2/models/groupDetails.ts index 9d7d80bd8b..9f9b6e2238 100644 --- a/src/version2/models/groupDetails.ts +++ b/src/version2/models/groupDetails.ts @@ -1,10 +1,10 @@ /** Details about a group. */ export interface GroupDetails { - /** The name of the group. */ - name?: string; /** * The ID of the group, which uniquely identifies the group across all Atlassian products. For example, * _952d12c3-5b5b-4d04-bb32-44d383afc4b2_. */ groupId?: string; + /** The name of the group. */ + name?: string; } diff --git a/src/version2/models/groupName.ts b/src/version2/models/groupName.ts index 3c2ce650fa..795475dc2f 100644 --- a/src/version2/models/groupName.ts +++ b/src/version2/models/groupName.ts @@ -1,12 +1,12 @@ /** Details about a group. */ export interface GroupName { - /** The name of group. */ - name?: string; /** * The ID of the group, which uniquely identifies the group across all Atlassian products. For example, * _952d12c3-5b5b-4d04-bb32-44d383afc4b2_. */ groupId?: string; + /** The name of group. */ + name?: string; /** The URL for these group details. */ self?: string; } diff --git a/src/version2/models/healthCheckResult.ts b/src/version2/models/healthCheckResult.ts index abfe36498b..cf96a3c898 100644 --- a/src/version2/models/healthCheckResult.ts +++ b/src/version2/models/healthCheckResult.ts @@ -1,9 +1,9 @@ /** @deprecated Jira instance health check results. Deprecated and no longer returned. */ export interface HealthCheckResult { - /** The name of the Jira health check item. */ - name?: string; /** The description of the Jira health check item. */ description?: string; + /** The name of the Jira health check item. */ + name?: string; /** Whether the Jira health check item passed or failed. */ passed?: boolean; } diff --git a/src/version2/models/historyMetadata.ts b/src/version2/models/historyMetadata.ts index ff27d2ce33..28f94003e3 100644 --- a/src/version2/models/historyMetadata.ts +++ b/src/version2/models/historyMetadata.ts @@ -2,23 +2,23 @@ import { HistoryMetadataParticipant } from './historyMetadataParticipant'; /** Details of issue history metadata. */ export interface HistoryMetadata { - /** The type of the history record. */ - type?: string; - /** The description of the history record. */ - description?: string; - /** The description key of the history record. */ - descriptionKey?: string; /** The activity described in the history record. */ activityDescription?: string; /** The key of the activity described in the history record. */ activityDescriptionKey?: string; + actor?: HistoryMetadataParticipant; + cause?: HistoryMetadataParticipant; + /** The description of the history record. */ + description?: string; + /** The description key of the history record. */ + descriptionKey?: string; /** The description of the email address associated the history record. */ emailDescription?: string; /** The description key of the email address associated the history record. */ emailDescriptionKey?: string; - actor?: HistoryMetadataParticipant; - generator?: HistoryMetadataParticipant; - cause?: HistoryMetadataParticipant; /** Additional arbitrary information about the history record. */ extraData?: {}; + generator?: HistoryMetadataParticipant; + /** The type of the history record. */ + type?: string; } diff --git a/src/version2/models/historyMetadataParticipant.ts b/src/version2/models/historyMetadataParticipant.ts index b87417b933..2715e785fb 100644 --- a/src/version2/models/historyMetadataParticipant.ts +++ b/src/version2/models/historyMetadataParticipant.ts @@ -1,15 +1,15 @@ /** Details of user or system associated with a issue history metadata item. */ export interface HistoryMetadataParticipant { - /** The ID of the user or system associated with a history record. */ - id?: string; + /** The URL to an avatar for the user or system associated with a history record. */ + avatarUrl?: string; /** The display name of the user or system associated with a history record. */ displayName?: string; /** The key of the display name of the user or system associated with a history record. */ displayNameKey?: string; + /** The ID of the user or system associated with a history record. */ + id?: string; /** The type of the user or system associated with a history record. */ type?: string; - /** The URL to an avatar for the user or system associated with a history record. */ - avatarUrl?: string; /** The URL of the user or system associated with a history record. */ url?: string; } diff --git a/src/version2/models/icon.ts b/src/version2/models/icon.ts index 7756d0a321..b565585e37 100644 --- a/src/version2/models/icon.ts +++ b/src/version2/models/icon.ts @@ -8,8 +8,8 @@ export type IconBean = Icon; * - For the remote object icon, the default link icon displays in Jira. */ export interface Icon { - /** The URL of an icon that displays at 16x16 pixel in Jira. */ - url16x16?: string; + /** The URL of the tooltip, used only for a status icon. If not set, the status icon in Jira is not clickable. */ + link?: string; /** * The title of the icon. This is used as follows: * @@ -19,6 +19,6 @@ export interface Icon { * title. If both items are blank, the icon tooltop displays as "Web Link". */ title?: string; - /** The URL of the tooltip, used only for a status icon. If not set, the status icon in Jira is not clickable. */ - link?: string; + /** The URL of an icon that displays at 16x16 pixel in Jira. */ + url16x16?: string; } diff --git a/src/version2/models/includedFields.ts b/src/version2/models/includedFields.ts index 308a5f8eb8..5af83231ee 100644 --- a/src/version2/models/includedFields.ts +++ b/src/version2/models/includedFields.ts @@ -1,5 +1,5 @@ export interface IncludedFields { + actuallyIncluded?: string[]; excluded?: string[]; included?: string[]; - actuallyIncluded?: string[]; } diff --git a/src/version2/models/index.ts b/src/version2/models/index.ts index de41df517c..b214a31baa 100644 --- a/src/version2/models/index.ts +++ b/src/version2/models/index.ts @@ -3,6 +3,7 @@ export * from './actorsMap'; export * from './addField'; export * from './addGroup'; export * from './addNotificationsDetails'; +export * from './addSecuritySchemeLevelsRequest'; export * from './announcementBannerConfiguration'; export * from './announcementBannerConfigurationUpdate'; export * from './application'; @@ -66,6 +67,7 @@ export * from './createCustomFieldContext'; export * from './createdIssue'; export * from './createdIssues'; export * from './createIssueAdjustmentDetails'; +export * from './createIssueSecuritySchemeDetails'; export * from './createNotificationSchemeDetails'; export * from './createPriorityDetails'; export * from './createProjectDetails'; @@ -109,6 +111,7 @@ export * from './dashboardGadgetResponse'; export * from './dashboardGadgetSettings'; export * from './dashboardGadgetUpdateRequest'; export * from './dashboardUser'; +export * from './defaultLevelValue'; export * from './defaultShareScope'; export * from './defaultWorkflow'; export * from './deleteAndReplaceVersion'; @@ -190,6 +193,7 @@ export * from './issuePickerSuggestions'; export * from './issuePickerSuggestionsIssueType'; export * from './issuesAndJQLQueries'; export * from './issueSecurityLevelMember'; +export * from './issueSecuritySchemeToProjectMapping'; export * from './issuesJqlMetaData'; export * from './issuesMeta'; export * from './issuesUpdate'; @@ -314,6 +318,7 @@ export * from './pageGroupDetails'; export * from './pageIssueAdjustmentDetails'; export * from './pageIssueFieldOption'; export * from './pageIssueSecurityLevelMember'; +export * from './pageIssueSecuritySchemeToProjectMapping'; export * from './pageIssueTypeScheme'; export * from './pageIssueTypeSchemeMapping'; export * from './pageIssueTypeSchemeProjects'; @@ -335,6 +340,9 @@ export * from './pageResolution'; export * from './pageScreen'; export * from './pageScreenScheme'; export * from './pageScreenWithTab'; +export * from './pageSecurityLevel'; +export * from './pageSecurityLevelMember'; +export * from './pageSecuritySchemeWithProjects'; export * from './pageString'; export * from './pageUiModificationDetails'; export * from './pageUser'; @@ -425,9 +433,16 @@ export * from './searchAutoCompleteFilter'; export * from './searchRequest'; export * from './searchResults'; export * from './securityLevel'; +export * from './securityLevelMember'; export * from './securityScheme'; +export * from './securitySchemeId'; +export * from './securitySchemeLevel'; +export * from './securitySchemeLevelMember'; +export * from './securitySchemeMembersRequest'; export * from './securitySchemes'; +export * from './securitySchemeWithProjects'; export * from './serverInformation'; +export * from './setDefaultLevelsRequest'; export * from './setDefaultPriorityRequest'; export * from './setDefaultResolutionRequest'; export * from './sharePermission'; @@ -468,6 +483,8 @@ export * from './updateDefaultScreenScheme'; export * from './updatedProjectCategory'; export * from './updateFieldConfigurationSchemeDetails'; export * from './updateIssueAdjustmentDetails'; +export * from './updateIssueSecurityLevelDetails'; +export * from './updateIssueSecuritySchemeRequest'; export * from './updateNotificationSchemeDetails'; export * from './updatePriorityDetails'; export * from './updateProjectDetails'; @@ -495,6 +512,7 @@ export * from './versionUnresolvedIssuesCount'; export * from './versionUsageInCustomField'; export * from './visibility'; export * from './votes'; +export * from './warningCollection'; export * from './watchers'; export * from './webhook'; export * from './webhookDetails'; diff --git a/src/version2/models/issueFieldOption.ts b/src/version2/models/issueFieldOption.ts index 9c7f203657..1e84f48560 100644 --- a/src/version2/models/issueFieldOption.ts +++ b/src/version2/models/issueFieldOption.ts @@ -2,16 +2,16 @@ import { IssueFieldOptionConfiguration } from './issueFieldOptionConfiguration'; /** Details of the options for a select list issue field. */ export interface IssueFieldOption { + config?: IssueFieldOptionConfiguration; /** The unique identifier for the option. This is only unique within the select field's set of options. */ id: number; - /** The option's name, which is displayed in Jira. */ - value: string; /** * The properties of the object, as arbitrary key-value pairs. These properties can be searched using JQL, if the * extractions (see [Issue Field Option Property * Index](https://developer.atlassian.com/cloud/jira/platform/modules/issue-field-option-property-index/)) are defined * in the descriptor for the issue field module. */ - properties?: {}; - config?: IssueFieldOptionConfiguration; + properties?: Record; + /** The option's name, which is displayed in Jira. */ + value: string; } diff --git a/src/version2/models/issueFieldOptionConfiguration.ts b/src/version2/models/issueFieldOptionConfiguration.ts index 039c2014b5..0c5ccb00a1 100644 --- a/src/version2/models/issueFieldOptionConfiguration.ts +++ b/src/version2/models/issueFieldOptionConfiguration.ts @@ -2,7 +2,7 @@ import { IssueFieldOptionScope } from './issueFieldOptionScope'; /** Details of the projects the option is available in. */ export interface IssueFieldOptionConfiguration { - scope?: IssueFieldOptionScope; - /** DEPRECATED */ + /** @deprecated */ attributes?: string[]; + scope?: IssueFieldOptionScope; } diff --git a/src/version2/models/issueFieldOptionCreate.ts b/src/version2/models/issueFieldOptionCreate.ts index 3cf24ede73..5a02dba496 100644 --- a/src/version2/models/issueFieldOptionCreate.ts +++ b/src/version2/models/issueFieldOptionCreate.ts @@ -4,13 +4,13 @@ import { IssueFieldOptionConfiguration } from './issueFieldOptionConfiguration'; export type IssueFieldOptionCreateBean = IssueFieldOptionCreate; export interface IssueFieldOptionCreate { - /** The option's name, which is displayed in Jira. */ - value: string; + config?: IssueFieldOptionConfiguration; /** * The properties of the option as arbitrary key-value pairs. These properties can be searched using JQL, if the * extractions (see https://developer.atlassian.com/cloud/jira/platform/modules/issue-field-option-property-index/) * are defined in the descriptor for the issue field module. */ properties?: {}; - config?: IssueFieldOptionConfiguration; + /** The option's name, which is displayed in Jira. */ + value: string; } diff --git a/src/version2/models/issueFieldOptionScope.ts b/src/version2/models/issueFieldOptionScope.ts index 3a3b32619a..d28691d5ad 100644 --- a/src/version2/models/issueFieldOptionScope.ts +++ b/src/version2/models/issueFieldOptionScope.ts @@ -5,6 +5,7 @@ import { ProjectScope } from './projectScope'; export type IssueFieldOptionScopeBean = IssueFieldOptionScope; export interface IssueFieldOptionScope { + global?: GlobalScope; /** @deprecated */ projects?: number[]; /** @@ -13,5 +14,4 @@ export interface IssueFieldOptionScope { * context. */ projects2?: ProjectScope[]; - global?: GlobalScope; } diff --git a/src/version2/models/issueFilterForBulkPropertyDelete.ts b/src/version2/models/issueFilterForBulkPropertyDelete.ts index f1a384cc7f..d7762321df 100644 --- a/src/version2/models/issueFilterForBulkPropertyDelete.ts +++ b/src/version2/models/issueFilterForBulkPropertyDelete.ts @@ -1,7 +1,7 @@ /** Bulk operation filter details. */ export interface IssueFilterForBulkPropertyDelete { - /** List of issues to perform the bulk delete operation on. */ - entityIds?: number[]; /** The value of properties to perform the bulk operation on. */ currentValue?: any; + /** List of issues to perform the bulk delete operation on. */ + entityIds?: number[]; } diff --git a/src/version2/models/issueFilterForBulkPropertySet.ts b/src/version2/models/issueFilterForBulkPropertySet.ts index 292e29b7cb..b052a43642 100644 --- a/src/version2/models/issueFilterForBulkPropertySet.ts +++ b/src/version2/models/issueFilterForBulkPropertySet.ts @@ -1,9 +1,9 @@ /** Bulk operation filter details. */ export interface IssueFilterForBulkPropertySet { - /** List of issues to perform the bulk operation on. */ - entityIds?: number[]; /** The value of properties to perform the bulk operation on. */ currentValue?: any; + /** List of issues to perform the bulk operation on. */ + entityIds?: number[]; /** Whether the bulk operation occurs only when the property is present on or absent from an issue. */ hasProperty?: boolean; } diff --git a/src/version2/models/issueLink.ts b/src/version2/models/issueLink.ts index 795b976e00..d941b802bc 100644 --- a/src/version2/models/issueLink.ts +++ b/src/version2/models/issueLink.ts @@ -5,9 +5,9 @@ import { LinkedIssue } from './linkedIssue'; export interface IssueLink { /** The ID of the issue link. */ id?: string; + inwardIssue?: LinkedIssue; + outwardIssue?: LinkedIssue; /** The URL of the issue link. */ self?: string; type?: IssueLinkType; - inwardIssue?: LinkedIssue; - outwardIssue?: LinkedIssue; } diff --git a/src/version2/models/issueLinkType.ts b/src/version2/models/issueLinkType.ts index 10b00d081b..7f69fb1307 100644 --- a/src/version2/models/issueLinkType.ts +++ b/src/version2/models/issueLinkType.ts @@ -14,14 +14,6 @@ export interface IssueLinkType { * it is read only. */ id?: string; - /** - * The name of the issue link type and is used as follows: - * - * In the [issueLink](#api-rest-api-2-issueLink-post) resource it is the type of issue link. Required on create when - * `id` isn't provided. Otherwise, read only. In the [ issueLinkType](#api-rest-api-2-issueLinkType-post) resource it - * is required on create and optional on update. Otherwise, read only. - */ - name?: string; /** * The description of the issue link type inward link and is used as follows: * @@ -30,6 +22,14 @@ export interface IssueLinkType { * Otherwise, read only. */ inward?: string; + /** + * The name of the issue link type and is used as follows: + * + * In the [issueLink](#api-rest-api-2-issueLink-post) resource it is the type of issue link. Required on create when + * `id` isn't provided. Otherwise, read only. In the [ issueLinkType](#api-rest-api-2-issueLinkType-post) resource it + * is required on create and optional on update. Otherwise, read only. + */ + name?: string; /** * The description of the issue link type outward link and is used as follows: * diff --git a/src/version2/models/issueMatchesForJQL.ts b/src/version2/models/issueMatchesForJQL.ts index a50a51b134..3e641200c8 100644 --- a/src/version2/models/issueMatchesForJQL.ts +++ b/src/version2/models/issueMatchesForJQL.ts @@ -1,7 +1,7 @@ /** A list of the issues matched to a JQL query or details of errors encountered during matching. */ export interface IssueMatchesForJQL { - /** A list of issue IDs. */ - matchedIssues: number[]; /** A list of errors. */ errors: string[]; + /** A list of issue IDs. */ + matchedIssues: number[]; } diff --git a/src/version2/models/issuePickerSuggestionsIssueType.ts b/src/version2/models/issuePickerSuggestionsIssueType.ts index 5016f3b9f4..7059b446d2 100644 --- a/src/version2/models/issuePickerSuggestionsIssueType.ts +++ b/src/version2/models/issuePickerSuggestionsIssueType.ts @@ -2,14 +2,14 @@ import { SuggestedIssue } from './suggestedIssue'; /** A type of issue suggested for use in auto-completion. */ export interface IssuePickerSuggestionsIssueType { - /** The label of the type of issues suggested for use in auto-completion. */ - label?: string; - /** If issue suggestions are found, returns a message indicating the number of issues suggestions found and returned. */ - sub?: string; /** The ID of the type of issues suggested for use in auto-completion. */ id?: string; - /** If no issue suggestions are found, returns a message indicating no suggestions were found, */ - msg?: string; /** A list of issues suggested for use in auto-completion. */ issues?: SuggestedIssue[]; + /** The label of the type of issues suggested for use in auto-completion. */ + label?: string; + /** If no issue suggestions are found, returns a message indicating no suggestions were found, */ + msg?: string; + /** If issue suggestions are found, returns a message indicating the number of issues suggestions found and returned. */ + sub?: string; } diff --git a/src/version2/models/issueSecurityLevelMember.ts b/src/version2/models/issueSecurityLevelMember.ts index c235a601eb..de2484348a 100644 --- a/src/version2/models/issueSecurityLevelMember.ts +++ b/src/version2/models/issueSecurityLevelMember.ts @@ -2,9 +2,9 @@ import { PermissionHolder } from './permissionHolder'; /** Issue security level member. */ export interface IssueSecurityLevelMember { + holder?: PermissionHolder; /** The ID of the issue security level member. */ id: number; /** The ID of the issue security level. */ issueSecurityLevelId: number; - holder?: PermissionHolder; } diff --git a/src/version2/models/issueSecuritySchemeToProjectMapping.ts b/src/version2/models/issueSecuritySchemeToProjectMapping.ts new file mode 100644 index 0000000000..e6c92d5876 --- /dev/null +++ b/src/version2/models/issueSecuritySchemeToProjectMapping.ts @@ -0,0 +1,5 @@ +/** Details about a project using security scheme mapping. */ +export interface IssueSecuritySchemeToProjectMapping { + issueSecuritySchemeId: string; + projectId: string; +} diff --git a/src/version2/models/issueTypeCreate.ts b/src/version2/models/issueTypeCreate.ts index e1fcb5f96d..51097f6544 100644 --- a/src/version2/models/issueTypeCreate.ts +++ b/src/version2/models/issueTypeCreate.ts @@ -2,18 +2,8 @@ export type IssueTypeCreateBean = IssueTypeCreate; export interface IssueTypeCreate { - /** The unique name for the issue type. The maximum length is 60 characters. */ - name: string; /** The description of the issue type. */ description?: string; - /** - * @deprecated Deprecated. Use `hierarchyLevel` instead. See the [deprecation - * notice](https://community.developer.atlassian.com/t/deprecation-of-the-epic-link-parent-link-and-other-related-fields-in-rest-apis-and-webhooks/54048) - * for details. - * - * Whether the issue type is `subtype` or `standard`. Defaults to `standard`. - */ - type?: string; /** * The hierarchy level of the issue type. Use: * @@ -22,4 +12,14 @@ export interface IssueTypeCreate { * Defaults to `0`. */ hierarchyLevel?: number; + /** The unique name for the issue type. The maximum length is 60 characters. */ + name: string; + /** + * @deprecated Use `hierarchyLevel` instead. See the [deprecation + * notice](https://community.developer.atlassian.com/t/deprecation-of-the-epic-link-parent-link-and-other-related-fields-in-rest-apis-and-webhooks/54048) + * for details. + * + * Whether the issue type is `subtype` or `standard`. Defaults to `standard`. + */ + type?: 'subtype' | 'standard' | string; } diff --git a/src/version2/models/issueTypeDetails.ts b/src/version2/models/issueTypeDetails.ts index 635fffa87a..eec638a08e 100644 --- a/src/version2/models/issueTypeDetails.ts +++ b/src/version2/models/issueTypeDetails.ts @@ -2,23 +2,23 @@ import { Scope } from './scope'; /** Details about an issue type. */ export interface IssueTypeDetails { - /** The URL of these issue type details. */ - self?: string; - /** The ID of the issue type. */ - id?: string; + /** The ID of the issue type's avatar. */ + avatarId?: number; /** The description of the issue type. */ description?: string; + /** Unique ID for next-gen projects. */ + entityId?: string; + /** Hierarchy level of the issue type. */ + hierarchyLevel?: number; /** The URL of the issue type's avatar. */ iconUrl?: string; + /** The ID of the issue type. */ + id?: string; /** The name of the issue type. */ name?: string; + scope?: Scope; + /** The URL of these issue type details. */ + self?: string; /** Whether this issue type is used to create subtasks. */ subtask?: boolean; - /** The ID of the issue type's avatar. */ - avatarId?: number; - /** Unique ID for next-gen projects. */ - entityId?: string; - /** Hierarchy level of the issue type. */ - hierarchyLevel?: number; - scope?: Scope; } diff --git a/src/version2/models/issueTypeInfo.ts b/src/version2/models/issueTypeInfo.ts index 340b354c88..6d444d9020 100644 --- a/src/version2/models/issueTypeInfo.ts +++ b/src/version2/models/issueTypeInfo.ts @@ -1,9 +1,9 @@ /** Details of an issue type. */ export interface IssueTypeInfo { + /** The avatar of the issue type. */ + avatarId?: number; /** The ID of the issue type. */ id?: number; /** The name of the issue type. */ name?: string; - /** The avatar of the issue type. */ - avatarId?: number; } diff --git a/src/version2/models/issueTypeIssueCreateMetadata.ts b/src/version2/models/issueTypeIssueCreateMetadata.ts index ded2c866d2..6cd2a7c84e 100644 --- a/src/version2/models/issueTypeIssueCreateMetadata.ts +++ b/src/version2/models/issueTypeIssueCreateMetadata.ts @@ -2,27 +2,27 @@ import { Scope } from './scope'; /** Details of the issue creation metadata for an issue type. */ export interface IssueTypeIssueCreateMetadata { - /** The URL of these issue type details. */ - self?: string; - /** The ID of the issue type. */ - id?: string; - /** The description of the issue type. */ - description?: string; - /** The URL of the issue type's avatar. */ - iconUrl?: string; - /** The name of the issue type. */ - name?: string; - /** Whether this issue type is used to create subtasks. */ - subtask?: boolean; /** The ID of the issue type's avatar. */ avatarId?: number; + /** The description of the issue type. */ + description?: string; /** Unique ID for next-gen projects. */ entityId?: string; - /** Hierarchy level of the issue type. */ - hierarchyLevel?: number; - scope?: Scope; /** Expand options that include additional issue type metadata details in the response. */ expand?: string; /** List of the fields available when creating an issue for the issue type. */ fields?: {}; + /** Hierarchy level of the issue type. */ + hierarchyLevel?: number; + /** The URL of the issue type's avatar. */ + iconUrl?: string; + /** The ID of the issue type. */ + id?: string; + /** The name of the issue type. */ + name?: string; + scope?: Scope; + /** The URL of these issue type details. */ + self?: string; + /** Whether this issue type is used to create subtasks. */ + subtask?: boolean; } diff --git a/src/version2/models/issueTypeScheme.ts b/src/version2/models/issueTypeScheme.ts index 8d28b227db..38e75a2f97 100644 --- a/src/version2/models/issueTypeScheme.ts +++ b/src/version2/models/issueTypeScheme.ts @@ -1,13 +1,13 @@ /** Details of an issue type scheme. */ export interface IssueTypeScheme { - /** The ID of the issue type scheme. */ - id: string; - /** The name of the issue type scheme. */ - name: string; - /** The description of the issue type scheme. */ - description?: string; /** The ID of the default issue type of the issue type scheme. */ defaultIssueTypeId?: string; + /** The description of the issue type scheme. */ + description?: string; + /** The ID of the issue type scheme. */ + id: string; /** Whether the issue type scheme is the default. */ isDefault?: boolean; + /** The name of the issue type scheme. */ + name: string; } diff --git a/src/version2/models/issueTypeSchemeDetails.ts b/src/version2/models/issueTypeSchemeDetails.ts index 089eae3dd6..d7daa0c278 100644 --- a/src/version2/models/issueTypeSchemeDetails.ts +++ b/src/version2/models/issueTypeSchemeDetails.ts @@ -1,11 +1,11 @@ /** Details of an issue type scheme and its associated issue types. */ export interface IssueTypeSchemeDetails { - /** The name of the issue type scheme. The name must be unique. The maximum length is 255 characters. */ - name: string; - /** The description of the issue type scheme. The maximum length is 4000 characters. */ - description?: string; /** The ID of the default issue type of the issue type scheme. This ID must be included in `issueTypeIds`. */ defaultIssueTypeId?: string; + /** The description of the issue type scheme. The maximum length is 4000 characters. */ + description?: string; /** The list of issue types IDs of the issue type scheme. At least one standard issue type ID is required. */ issueTypeIds: string[]; + /** The name of the issue type scheme. The name must be unique. The maximum length is 255 characters. */ + name: string; } diff --git a/src/version2/models/issueTypeSchemeMapping.ts b/src/version2/models/issueTypeSchemeMapping.ts index fc990dfc31..e5cff525b9 100644 --- a/src/version2/models/issueTypeSchemeMapping.ts +++ b/src/version2/models/issueTypeSchemeMapping.ts @@ -1,7 +1,7 @@ /** Issue type scheme item. */ export interface IssueTypeSchemeMapping { - /** The ID of the issue type scheme. */ - issueTypeSchemeId: string; /** The ID of the issue type. */ issueTypeId: string; + /** The ID of the issue type scheme. */ + issueTypeSchemeId: string; } diff --git a/src/version2/models/issueTypeSchemeUpdateDetails.ts b/src/version2/models/issueTypeSchemeUpdateDetails.ts index fb6221300a..4ea8882272 100644 --- a/src/version2/models/issueTypeSchemeUpdateDetails.ts +++ b/src/version2/models/issueTypeSchemeUpdateDetails.ts @@ -1,9 +1,9 @@ /** Details of the name, description, and default issue type for an issue type scheme. */ export interface IssueTypeSchemeUpdateDetails { - /** The name of the issue type scheme. The name must be unique. The maximum length is 255 characters. */ - name?: string; - /** The description of the issue type scheme. The maximum length is 4000 characters. */ - description?: string; /** The ID of the default issue type of the issue type scheme. */ defaultIssueTypeId?: string; + /** The description of the issue type scheme. The maximum length is 4000 characters. */ + description?: string; + /** The name of the issue type scheme. The name must be unique. The maximum length is 255 characters. */ + name?: string; } diff --git a/src/version2/models/issueTypeScreenScheme.ts b/src/version2/models/issueTypeScreenScheme.ts index 0ad4559993..63be401961 100644 --- a/src/version2/models/issueTypeScreenScheme.ts +++ b/src/version2/models/issueTypeScreenScheme.ts @@ -1,9 +1,9 @@ /** Details of an issue type screen scheme. */ export interface IssueTypeScreenScheme { + /** The description of the issue type screen scheme. */ + description?: string; /** The ID of the issue type screen scheme. */ id: string; /** The name of the issue type screen scheme. */ name: string; - /** The description of the issue type screen scheme. */ - description?: string; } diff --git a/src/version2/models/issueTypeScreenSchemeDetails.ts b/src/version2/models/issueTypeScreenSchemeDetails.ts index 40180c1f20..370558f9e6 100644 --- a/src/version2/models/issueTypeScreenSchemeDetails.ts +++ b/src/version2/models/issueTypeScreenSchemeDetails.ts @@ -2,8 +2,6 @@ import { IssueTypeScreenSchemeMapping } from './issueTypeScreenSchemeMapping'; /** The details of an issue type screen scheme. */ export interface IssueTypeScreenSchemeDetails { - /** The name of the issue type screen scheme. The name must be unique. The maximum length is 255 characters. */ - name: string; /** The description of the issue type screen scheme. The maximum length is 255 characters. */ description?: string; /** @@ -11,4 +9,6 @@ export interface IssueTypeScreenSchemeDetails { * issue type screen scheme, it defines the mapping for all issue types without a screen scheme. */ issueTypeMappings: IssueTypeScreenSchemeMapping[]; + /** The name of the issue type screen scheme. The name must be unique. The maximum length is 255 characters. */ + name: string; } diff --git a/src/version2/models/issueTypeScreenSchemeItem.ts b/src/version2/models/issueTypeScreenSchemeItem.ts index 3cb4a79027..0af5e69f69 100644 --- a/src/version2/models/issueTypeScreenSchemeItem.ts +++ b/src/version2/models/issueTypeScreenSchemeItem.ts @@ -1,13 +1,13 @@ /** The screen scheme for an issue type. */ export interface IssueTypeScreenSchemeItem { - /** The ID of the issue type screen scheme. */ - issueTypeScreenSchemeId: string; /** * The ID of the issue type or _default_. Only issue types used in classic projects are accepted. When creating an * issue screen scheme, an entry for _default_ must be provided and defines the mapping for all issue types without a * screen scheme. Otherwise, a _default_ entry can't be provided. */ issueTypeId: string; + /** The ID of the issue type screen scheme. */ + issueTypeScreenSchemeId: string; /** The ID of the screen scheme. */ screenSchemeId: string; } diff --git a/src/version2/models/issueTypeScreenSchemeUpdateDetails.ts b/src/version2/models/issueTypeScreenSchemeUpdateDetails.ts index 59b332b6a7..6f2aa557d7 100644 --- a/src/version2/models/issueTypeScreenSchemeUpdateDetails.ts +++ b/src/version2/models/issueTypeScreenSchemeUpdateDetails.ts @@ -1,7 +1,7 @@ /** Details of an issue type screen scheme. */ export interface IssueTypeScreenSchemeUpdateDetails { - /** The name of the issue type screen scheme. The name must be unique. The maximum length is 255 characters. */ - name?: string; /** The description of the issue type screen scheme. The maximum length is 255 characters. */ description?: string; + /** The name of the issue type screen scheme. The name must be unique. The maximum length is 255 characters. */ + name?: string; } diff --git a/src/version2/models/issueTypeToContextMapping.ts b/src/version2/models/issueTypeToContextMapping.ts index 6d4968b546..f0f381ac68 100644 --- a/src/version2/models/issueTypeToContextMapping.ts +++ b/src/version2/models/issueTypeToContextMapping.ts @@ -2,8 +2,8 @@ export interface IssueTypeToContextMapping { /** The ID of the context. */ contextId: string; - /** The ID of the issue type. */ - issueTypeId?: string; /** Whether the context is mapped to any issue type. */ isAnyIssueType?: boolean; + /** The ID of the issue type. */ + issueTypeId?: string; } diff --git a/src/version2/models/issueTypeUpdate.ts b/src/version2/models/issueTypeUpdate.ts index 605f5bf3e4..b5d877cf84 100644 --- a/src/version2/models/issueTypeUpdate.ts +++ b/src/version2/models/issueTypeUpdate.ts @@ -2,10 +2,10 @@ export type IssueTypeUpdateBean = IssueTypeUpdate; export interface IssueTypeUpdate { - /** The unique name for the issue type. The maximum length is 60 characters. */ - name?: string; - /** The description of the issue type. */ - description?: string; /** The ID of an issue type avatar. */ avatarId?: number; + /** The description of the issue type. */ + description?: string; + /** The unique name for the issue type. The maximum length is 60 characters. */ + name?: string; } diff --git a/src/version2/models/issueTypeWithStatus.ts b/src/version2/models/issueTypeWithStatus.ts index a3f5428260..7c04fbe296 100644 --- a/src/version2/models/issueTypeWithStatus.ts +++ b/src/version2/models/issueTypeWithStatus.ts @@ -2,14 +2,14 @@ import { StatusDetails } from './statusDetails'; /** Status details for an issue type. */ export interface IssueTypeWithStatus { - /** The URL of the issue type's status details. */ - self: string; /** The ID of the issue type. */ id: string; /** The name of the issue type. */ name: string; - /** Whether this issue type represents subtasks. */ - subtask: boolean; + /** The URL of the issue type's status details. */ + self: string; /** List of status details for the issue type. */ statuses: StatusDetails[]; + /** Whether this issue type represents subtasks. */ + subtask: boolean; } diff --git a/src/version2/models/issueTypeWorkflowMapping.ts b/src/version2/models/issueTypeWorkflowMapping.ts index 5e95b42bb6..1007838384 100644 --- a/src/version2/models/issueTypeWorkflowMapping.ts +++ b/src/version2/models/issueTypeWorkflowMapping.ts @@ -2,12 +2,12 @@ export interface IssueTypeWorkflowMapping { /** The ID of the issue type. Not required if updating the issue type-workflow mapping. */ issueType?: string; - /** The name of the workflow. */ - workflow?: string; /** * Set to true to create or update the draft of a workflow scheme and update the mapping in the draft, when the * workflow scheme cannot be edited. Defaults to `false`. Only applicable when updating the workflow-issue types * mapping. */ updateDraftIfNeeded?: boolean; + /** The name of the workflow. */ + workflow?: string; } diff --git a/src/version2/models/issueTypesWorkflowMapping.ts b/src/version2/models/issueTypesWorkflowMapping.ts index 8d89e8a748..53e557cc26 100644 --- a/src/version2/models/issueTypesWorkflowMapping.ts +++ b/src/version2/models/issueTypesWorkflowMapping.ts @@ -1,14 +1,14 @@ /** Details about the mapping between issue types and a workflow. */ export interface IssueTypesWorkflowMapping { - /** The name of the workflow. Optional if updating the workflow-issue types mapping. */ - workflow?: string; - /** The list of issue type IDs. */ - issueTypes?: string[]; /** Whether the workflow is the default workflow for the workflow scheme. */ defaultMapping?: boolean; + /** The list of issue type IDs. */ + issueTypes?: string[]; /** * Whether a draft workflow scheme is created or updated when updating an active workflow scheme. The draft is updated * with the new workflow-issue types mapping. Defaults to `false`. */ updateDraftIfNeeded?: boolean; + /** The name of the workflow. Optional if updating the workflow-issue types mapping. */ + workflow?: string; } diff --git a/src/version2/models/issueUpdateDetails.ts b/src/version2/models/issueUpdateDetails.ts index 8da6d99993..516cccab9c 100644 --- a/src/version2/models/issueUpdateDetails.ts +++ b/src/version2/models/issueUpdateDetails.ts @@ -5,19 +5,19 @@ import { IssueTransition } from './issueTransition'; /** Details of an issue update request. */ export interface IssueUpdateDetails { - transition?: IssueTransition; /** * List of issue screen fields to update, specifying the sub-field to update and its value for each field. This field * provides a straightforward option when setting a sub-field. When multiple sub-fields or other operations are * required, use `update`. Fields included in here cannot be included in `update`. */ fields?: Partial | any; - /** - * A Map containing the field field name and a list of operations to perform on the issue screen field. Note that - * fields included in here cannot be included in `fields`. - */ - update?: any; historyMetadata?: HistoryMetadata; - /** Details of issue properties to be add or update. */ + /** Details of issue properties to be added or update. */ properties?: EntityProperty[]; + transition?: IssueTransition; + /** + * A Map containing the field name and a list of operations to perform on the issue screen field. Note that fields + * included in here cannot be included in `fields`. + */ + update?: {}; } diff --git a/src/version2/models/issuesAndJQLQueries.ts b/src/version2/models/issuesAndJQLQueries.ts index 9137c4b2bb..4a036ad0ea 100644 --- a/src/version2/models/issuesAndJQLQueries.ts +++ b/src/version2/models/issuesAndJQLQueries.ts @@ -1,7 +1,7 @@ /** List of issues and JQL queries. */ export interface IssuesAndJQLQueries { - /** A list of JQL queries. */ - jqls: string[]; /** A list of issue IDs. */ issueIds: number[]; + /** A list of JQL queries. */ + jqls: string[]; } diff --git a/src/version2/models/issuesJqlMetaData.ts b/src/version2/models/issuesJqlMetaData.ts index 97d995f8ec..7626d4bbed 100644 --- a/src/version2/models/issuesJqlMetaData.ts +++ b/src/version2/models/issuesJqlMetaData.ts @@ -3,12 +3,12 @@ export type IssuesJqlMetaDataBean = IssuesJqlMetaData; /** The description of the page of issues loaded by the provided JQL query. */ export interface IssuesJqlMetaData { - /** The index of the first issue. */ - startAt: number; - /** The maximum number of issues that could be loaded in this evaluation. */ - maxResults: number; /** The number of issues that were loaded in this evaluation. */ count: number; + /** The maximum number of issues that could be loaded in this evaluation. */ + maxResults: number; + /** The index of the first issue. */ + startAt: number; /** The total number of issues the JQL returned. */ totalCount: number; /** Any warnings related to the JQL query. Present only if the validation mode was set to `warn`. */ diff --git a/src/version2/models/jQLQueryWithUnknownUsers.ts b/src/version2/models/jQLQueryWithUnknownUsers.ts index fc6005951f..81661d53e3 100644 --- a/src/version2/models/jQLQueryWithUnknownUsers.ts +++ b/src/version2/models/jQLQueryWithUnknownUsers.ts @@ -1,7 +1,7 @@ /** JQL queries that contained users that could not be found */ export interface JQLQueryWithUnknownUsers { - /** The original query, for reference */ - originalQuery?: string; /** The converted query, with accountIDs instead of user identifiers, or 'unknown' for users that could not be found */ convertedQuery?: string; + /** The original query, for reference */ + originalQuery?: string; } diff --git a/src/version2/models/jQLReferenceData.ts b/src/version2/models/jQLReferenceData.ts index af9cb82c4b..51b706e33a 100644 --- a/src/version2/models/jQLReferenceData.ts +++ b/src/version2/models/jQLReferenceData.ts @@ -3,10 +3,10 @@ import { FunctionReferenceData } from './functionReferenceData'; /** Lists of JQL reference data. */ export interface JQLReferenceData { + /** List of JQL query reserved words. */ + jqlReservedWords?: string[]; /** List of fields usable in JQL queries. */ visibleFieldNames?: FieldReferenceData[]; /** List of functions usable in JQL queries. */ visibleFunctionNames?: FunctionReferenceData[]; - /** List of JQL query reserved words. */ - jqlReservedWords?: string[]; } diff --git a/src/version2/models/jexpJqlIssues.ts b/src/version2/models/jexpJqlIssues.ts index 3ed84d5edf..aeb69f78a3 100644 --- a/src/version2/models/jexpJqlIssues.ts +++ b/src/version2/models/jexpJqlIssues.ts @@ -5,15 +5,15 @@ * inspect `meta.issues.jql.count` in the response. */ export interface JexpJqlIssues { - /** The JQL query. */ - query?: string; - /** The index of the first issue to return from the JQL query. */ - startAt?: number; /** * The maximum number of issues to return from the JQL query. Inspect `meta.issues.jql.maxResults` in the response to * ensure the maximum value has not been exceeded. */ maxResults?: number; + /** The JQL query. */ + query?: string; + /** The index of the first issue to return from the JQL query. */ + startAt?: number; /** Determines how to validate the JQL query and treat the validation results. */ validation?: string; } diff --git a/src/version2/models/jiraExpressionAnalysis.ts b/src/version2/models/jiraExpressionAnalysis.ts index 93c69308c4..0740692e79 100644 --- a/src/version2/models/jiraExpressionAnalysis.ts +++ b/src/version2/models/jiraExpressionAnalysis.ts @@ -3,16 +3,16 @@ import { JiraExpressionValidationError } from './jiraExpressionValidationError'; /** Details about the analysed Jira expression. */ export interface JiraExpressionAnalysis { - /** The analysed expression. */ - expression: string; + complexity?: JiraExpressionComplexity; /** A list of validation errors. Not included if the expression is valid. */ errors?: JiraExpressionValidationError[]; + /** The analysed expression. */ + expression: string; + /** EXPERIMENTAL. The inferred type of the expression. */ + type?: string; /** * Whether the expression is valid and the interpreter will evaluate it. Note that the expression may fail at runtime * (for example, if it executes too many expensive operations). */ valid: boolean; - /** EXPERIMENTAL. The inferred type of the expression. */ - type?: string; - complexity?: JiraExpressionComplexity; } diff --git a/src/version2/models/jiraExpressionEvalContext.ts b/src/version2/models/jiraExpressionEvalContext.ts index 7d7fcf0b3b..5f80713a95 100644 --- a/src/version2/models/jiraExpressionEvalContext.ts +++ b/src/version2/models/jiraExpressionEvalContext.ts @@ -6,21 +6,8 @@ import { JexpIssues } from './jexpIssues'; export type JiraExpressionEvalContextBean = JiraExpressionEvalContext; export interface JiraExpressionEvalContext { - issue?: IdOrKey; - issues?: JexpIssues; - project?: IdOrKey; - /** The ID of the sprint that is available under the `sprint` variable when evaluating the expression. */ - sprint?: number; /** The ID of the board that is available under the `board` variable when evaluating the expression. */ board?: number; - /** The ID of the service desk that is available under the `serviceDesk` variable when evaluating the expression. */ - serviceDesk?: number; - /** - * The ID of the customer request that is available under the `customerRequest` variable when evaluating the - * expression. This is the same as the ID of the underlying Jira issue, but the customer request context variable will - * have a different type. - */ - customerRequest?: number; /** * Custom context variables and their types. These variable types are available for use in a custom context: * @@ -28,8 +15,21 @@ export interface JiraExpressionEvalContext { * specified as an Atlassian account ID. * - `issue`: An [issue](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#issue) * specified by ID or key. All the fields of the issue object are available in the Jira expression. - * - `json`: A JSON object with custom content. + * - `json`: A JSON object containing custom content. * - `list`: A JSON list of `user`, `issue`, or `json` variable types. */ custom?: CustomContextVariable[]; + /** + * The ID of the customer request that is available under the `customerRequest` variable when evaluating the + * expression. This is the same as the ID of the underlying Jira issue, but the customer request context variable will + * have a different type. + */ + customerRequest?: number; + issue?: IdOrKey; + issues?: JexpIssues; + project?: IdOrKey; + /** The ID of the service desk that is available under the `serviceDesk` variable when evaluating the expression. */ + serviceDesk?: number; + /** The ID of the sprint that is available under the `sprint` variable when evaluating the expression. */ + sprint?: number; } diff --git a/src/version2/models/jiraExpressionEvalRequest.ts b/src/version2/models/jiraExpressionEvalRequest.ts index 94269e7d10..a5828e67b8 100644 --- a/src/version2/models/jiraExpressionEvalRequest.ts +++ b/src/version2/models/jiraExpressionEvalRequest.ts @@ -4,7 +4,7 @@ import { JiraExpressionEvalContext } from './jiraExpressionEvalContext'; export type JiraExpressionEvalRequestBean = JiraExpressionEvalRequest; export interface JiraExpressionEvalRequest { + context?: JiraExpressionEvalContext; /** The Jira expression to evaluate. */ expression: string; - context?: JiraExpressionEvalContext; } diff --git a/src/version2/models/jiraExpressionForAnalysis.ts b/src/version2/models/jiraExpressionForAnalysis.ts index 5595fa80b2..20f9a20b23 100644 --- a/src/version2/models/jiraExpressionForAnalysis.ts +++ b/src/version2/models/jiraExpressionForAnalysis.ts @@ -1,7 +1,5 @@ /** Details of Jira expressions for analysis. */ export interface JiraExpressionForAnalysis { - /** The list of Jira expressions to analyse. */ - expressions: string[]; /** * Context variables and their types. The type checker assumes that [common context * variables](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/#context-variables), such as @@ -9,4 +7,6 @@ export interface JiraExpressionForAnalysis { * or provide details of new variables. */ contextVariables?: {}; + /** The list of Jira expressions to analyse. */ + expressions: string[]; } diff --git a/src/version2/models/jiraExpressionResult.ts b/src/version2/models/jiraExpressionResult.ts index 3fd9e8a227..f3010d988a 100644 --- a/src/version2/models/jiraExpressionResult.ts +++ b/src/version2/models/jiraExpressionResult.ts @@ -2,6 +2,7 @@ import { JiraExpressionEvaluationMetaData } from './jiraExpressionEvaluationMeta /** The result of evaluating a Jira expression. */ export interface JiraExpressionResult { + meta?: JiraExpressionEvaluationMetaData; /** * The value of the evaluated expression. It may be a primitive JSON value or a Jira REST API object. (Some * expressions do not produce any meaningful results—for example, an expression that returns a lambda function—if @@ -9,5 +10,4 @@ export interface JiraExpressionResult { * and may change without notice.) */ value: any; - meta?: JiraExpressionEvaluationMetaData; } diff --git a/src/version2/models/jiraExpressionValidationError.ts b/src/version2/models/jiraExpressionValidationError.ts index 14e4f52187..04d6051c22 100644 --- a/src/version2/models/jiraExpressionValidationError.ts +++ b/src/version2/models/jiraExpressionValidationError.ts @@ -5,12 +5,12 @@ * - `expression` */ export interface JiraExpressionValidationError { - /** The text line in which the error occurred. */ - line?: number; /** The text column in which the error occurred. */ column?: number; /** The part of the expression in which the error occurred. */ expression?: string; + /** The text line in which the error occurred. */ + line?: number; /** Details about the error. */ message: string; /** The error type. */ diff --git a/src/version2/models/jiraExpressionsComplexityValue.ts b/src/version2/models/jiraExpressionsComplexityValue.ts index 9418d75ed6..70f69c7941 100644 --- a/src/version2/models/jiraExpressionsComplexityValue.ts +++ b/src/version2/models/jiraExpressionsComplexityValue.ts @@ -2,8 +2,8 @@ export type JiraExpressionsComplexityValueBean = JiraExpressionsComplexityValue; export interface JiraExpressionsComplexityValue { - /** The complexity value of the current expression. */ - value: number; /** The maximum allowed complexity. The evaluation will fail if this value is exceeded. */ limit: number; + /** The complexity value of the current expression. */ + value: number; } diff --git a/src/version2/models/jiraStatus.ts b/src/version2/models/jiraStatus.ts index 2780805b6d..5166ae3115 100644 --- a/src/version2/models/jiraStatus.ts +++ b/src/version2/models/jiraStatus.ts @@ -3,15 +3,15 @@ import { StatusScope } from './statusScope'; /** Details of a status. */ export interface JiraStatus { + /** The description of the status. */ + description?: string; /** The ID of the status. */ id?: string; /** The name of the status. */ name?: string; + scope?: StatusScope; /** The category of the status. */ statusCategory?: string; - scope?: StatusScope; - /** The description of the status. */ - description?: string; /** Projects and issue types where the status is used. Only available if the `usages` expand is requested. */ usages?: ProjectIssueTypes[]; } diff --git a/src/version2/models/jqlQuery.ts b/src/version2/models/jqlQuery.ts index e9dc1cdbae..0deb348335 100644 --- a/src/version2/models/jqlQuery.ts +++ b/src/version2/models/jqlQuery.ts @@ -3,6 +3,6 @@ import { JqlQueryOrderByClause } from './jqlQueryOrderByClause'; /** A parsed JQL query. */ export interface JqlQuery { - where?: JqlQueryClause; orderBy?: JqlQueryOrderByClause; + where?: JqlQueryClause; } diff --git a/src/version2/models/jqlQueryClauseTimePredicate.ts b/src/version2/models/jqlQueryClauseTimePredicate.ts index 28472f63c3..2ca8750c69 100644 --- a/src/version2/models/jqlQueryClauseTimePredicate.ts +++ b/src/version2/models/jqlQueryClauseTimePredicate.ts @@ -2,7 +2,7 @@ import { JqlQueryClauseOperand } from './jqlQueryClauseOperand'; /** A time predicate for a temporal JQL clause. */ export interface JqlQueryClauseTimePredicate { + operand: JqlQueryClauseOperand; /** The operator between the field and the operand. */ operator: string; - operand: JqlQueryClauseOperand; } diff --git a/src/version2/models/jqlQueryField.ts b/src/version2/models/jqlQueryField.ts index cc1358df46..e6099458ec 100644 --- a/src/version2/models/jqlQueryField.ts +++ b/src/version2/models/jqlQueryField.ts @@ -5,6 +5,8 @@ import { JqlQueryFieldEntityProperty } from './jqlQueryFieldEntityProperty'; * for more information about fields in JQL queries. */ export interface JqlQueryField { + /** The encoded name of the field, which can be used directly in a JQL query. */ + encodedName?: string; /** The name of the field. */ name: string; /** When the field refers to a value in an entity property, details of the entity property value. */ diff --git a/src/version2/models/jqlQueryOrderByClauseElement.ts b/src/version2/models/jqlQueryOrderByClauseElement.ts index 925d9ee8ab..22488e7c30 100644 --- a/src/version2/models/jqlQueryOrderByClauseElement.ts +++ b/src/version2/models/jqlQueryOrderByClauseElement.ts @@ -2,7 +2,7 @@ import { JqlQueryField } from './jqlQueryField'; /** An element of the order-by JQL clause. */ export interface JqlQueryOrderByClauseElement { - field: JqlQueryField; /** The direction in which to order the results. */ direction?: string; + field: JqlQueryField; } diff --git a/src/version2/models/jsonNode.ts b/src/version2/models/jsonNode.ts index 90d5a8427c..089c7cc100 100644 --- a/src/version2/models/jsonNode.ts +++ b/src/version2/models/jsonNode.ts @@ -1,38 +1,38 @@ export interface JsonNode { - elements?: {}; - pojo?: boolean; - number?: boolean; - integralNumber?: boolean; - floatingPointNumber?: boolean; - int?: boolean; - long?: boolean; - double?: boolean; + array?: boolean; bigDecimal?: boolean; bigInteger?: boolean; - textual?: boolean; - boolean?: boolean; + bigIntegerValue?: number; binary?: boolean; + binaryValue?: string[]; + boolean?: boolean; + booleanValue?: boolean; containerNode?: boolean; - missingNode?: boolean; - object?: boolean; - valueNode?: boolean; - numberValue?: number; - numberType?: string; + decimalValue?: number; + double?: boolean; + doubleValue?: number; + elements?: {}; + fieldNames?: {}; + fields?: {}; + floatingPointNumber?: boolean; + int?: boolean; intValue?: number; + integralNumber?: boolean; + long?: boolean; longValue?: number; - bigIntegerValue?: number; - doubleValue?: number; - decimalValue?: number; - booleanValue?: boolean; - binaryValue?: string[]; + missingNode?: boolean; + null?: boolean; + number?: boolean; + numberType?: string; + numberValue?: number; + object?: boolean; + pojo?: boolean; + textValue?: string; + textual?: boolean; + valueAsBoolean?: boolean; + valueAsDouble?: number; valueAsInt?: number; valueAsLong?: number; - valueAsDouble?: number; - valueAsBoolean?: boolean; - textValue?: string; valueAsText?: string; - fieldNames?: {}; - array?: boolean; - fields?: {}; - null?: boolean; + valueNode?: boolean; } diff --git a/src/version2/models/jsonType.ts b/src/version2/models/jsonType.ts index 835c797ba8..5c8d983892 100644 --- a/src/version2/models/jsonType.ts +++ b/src/version2/models/jsonType.ts @@ -3,16 +3,16 @@ export type JsonTypeBean = JsonType; /** The schema of a field. */ export interface JsonType { - /** The data type of the field. */ - type: string; - /** When the data type is an array, the name of the field items within the array. */ - items?: string; - /** If the field is a system field, the name of the field. */ - system?: string; + /** If the field is a custom field, the configuration of the field. */ + configuration?: {}; /** If the field is a custom field, the URI of the field. */ custom?: string; /** If the field is a custom field, the custom ID of the field. */ customId?: number; - /** If the field is a custom field, the configuration of the field. */ - configuration?: {}; + /** When the data type is an array, the name of the field items within the array. */ + items?: string; + /** If the field is a system field, the name of the field. */ + system?: string; + /** The data type of the field. */ + type: string; } diff --git a/src/version2/models/linkGroup.ts b/src/version2/models/linkGroup.ts index 3450796946..ac47687cb5 100644 --- a/src/version2/models/linkGroup.ts +++ b/src/version2/models/linkGroup.ts @@ -2,10 +2,10 @@ import { SimpleLink } from './simpleLink'; /** Details a link group, which defines issue operations. */ export interface LinkGroup { + groups?: LinkGroup[]; + header?: SimpleLink; id?: string; + links?: SimpleLink[]; styleClass?: string; - header?: SimpleLink; weight?: number; - links?: SimpleLink[]; - groups?: LinkGroup[]; } diff --git a/src/version2/models/linkIssueRequestJson.ts b/src/version2/models/linkIssueRequestJson.ts index e9e0689ca5..c3c887f29a 100644 --- a/src/version2/models/linkIssueRequestJson.ts +++ b/src/version2/models/linkIssueRequestJson.ts @@ -6,8 +6,8 @@ import { LinkedIssue } from './linkedIssue'; export type LinkIssueRequestJsonBean = LinkIssueRequestJson; export interface LinkIssueRequestJson { - type: IssueLinkType; + comment?: Comment; inwardIssue: LinkedIssue; outwardIssue: LinkedIssue; - comment?: Comment; + type: IssueLinkType; } diff --git a/src/version2/models/linkedIssue.ts b/src/version2/models/linkedIssue.ts index 3d4638fc94..9008ae3e63 100644 --- a/src/version2/models/linkedIssue.ts +++ b/src/version2/models/linkedIssue.ts @@ -2,11 +2,11 @@ import { Fields } from './fields'; /** The ID or key of a linked issue. */ export interface LinkedIssue { + fields?: Fields; /** The ID of an issue. Required if `key` isn't provided. */ id?: string; /** The key of an issue. Required if `id` isn't provided. */ key?: string; /** The URL of the issue. */ self?: string; - fields?: Fields; } diff --git a/src/version2/models/listOperand.ts b/src/version2/models/listOperand.ts index e937ef7453..5006ebb59b 100644 --- a/src/version2/models/listOperand.ts +++ b/src/version2/models/listOperand.ts @@ -2,6 +2,8 @@ import { JqlQueryUnitaryOperand } from './jqlQueryUnitaryOperand'; /** An operand that is a list of values. */ export interface ListOperand { + /** Encoded operand, which can be used directly in a JQL query. */ + encodedOperand?: string; /** The list of operand values. */ values: JqlQueryUnitaryOperand[]; } diff --git a/src/version2/models/nestedResponse.ts b/src/version2/models/nestedResponse.ts index ffcb96ccec..c03a324001 100644 --- a/src/version2/models/nestedResponse.ts +++ b/src/version2/models/nestedResponse.ts @@ -1,6 +1,8 @@ import { ErrorCollection } from './errorCollection'; +import { WarningCollection } from './warningCollection'; export interface NestedResponse { - status?: number; errorCollection?: ErrorCollection; + status?: number; + warningCollection?: WarningCollection; } diff --git a/src/version2/models/newUserDetails.ts b/src/version2/models/newUserDetails.ts index 9d1387e68c..8b8b071d36 100644 --- a/src/version2/models/newUserDetails.ts +++ b/src/version2/models/newUserDetails.ts @@ -1,7 +1,14 @@ /** The user details. */ export interface NewUserDetails { - /** The URL of the user. */ - self?: string; + /** @deprecated Do not use. */ + applicationKeys?: string[]; + /** + * @deprecated This property is no longer available. If the user has an Atlassian account, their display name is not + * changed. If the user does not have an Atlassian account, they are sent an email asking them set up an account. + */ + displayName?: string; + /** The email address for the user. */ + emailAddress: string; /** * This property is no longer available. See the [migration * guide](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) @@ -19,13 +26,12 @@ export interface NewUserDetails { * user does not have an Atlassian account, they are sent an email asking them set up an account. */ password?: string; - /** The email address for the user. */ - emailAddress: string; /** - * @deprecated This property is no longer available. If the user has an Atlassian account, their display name is not - * changed. If the user does not have an Atlassian account, they are sent an email asking them set up an account. + * Products the new user has access to. Valid products are: jira-core, jira-servicedesk, jira-product-discovery, + * jira-software. If left empty, the user will get default product access. To create a user without product access, + * set this field to be an empty array. */ - displayName?: string; - /** Deprecated, do not use. */ - applicationKeys?: string[]; + products?: 'jira-core' | 'jira-servicedesk' | 'jira-product-discovery' | 'jira-software' | '' | string | string[]; + /** The URL of the user. */ + self?: string; } diff --git a/src/version2/models/notification.ts b/src/version2/models/notification.ts index e8526c2660..4be4478a74 100644 --- a/src/version2/models/notification.ts +++ b/src/version2/models/notification.ts @@ -3,6 +3,9 @@ import { NotificationRecipientsRestrictions } from './notificationRecipientsRest /** Details about a notification. */ export interface Notification { + /** The HTML body of the email notification for the issue. */ + htmlBody?: string; + restrict?: NotificationRecipientsRestrictions; /** * The subject of the email notification for the issue. If this is not specified, then the subject is set to the issue * key and summary. @@ -10,8 +13,5 @@ export interface Notification { subject?: string; /** The plain text body of the email notification for the issue. */ textBody?: string; - /** The HTML body of the email notification for the issue. */ - htmlBody?: string; to?: NotificationRecipients; - restrict?: NotificationRecipientsRestrictions; } diff --git a/src/version2/models/notificationEvent.ts b/src/version2/models/notificationEvent.ts index 066f84b646..e8b16e1498 100644 --- a/src/version2/models/notificationEvent.ts +++ b/src/version2/models/notificationEvent.ts @@ -1,5 +1,7 @@ /** Details about a notification event. */ export interface NotificationEvent { + /** The description of the event. */ + description?: string; /** * The ID of the event. The event can be a [Jira system * event](https://confluence.atlassian.com/x/8YdKLg#Creatinganotificationscheme-eventsEvents) or a [custom @@ -8,7 +10,5 @@ export interface NotificationEvent { id?: number; /** The name of the event. */ name?: string; - /** The description of the event. */ - description?: string; templateEvent?: NotificationEvent; } diff --git a/src/version2/models/notificationRecipients.ts b/src/version2/models/notificationRecipients.ts index beed8f9e51..fd14683b1d 100644 --- a/src/version2/models/notificationRecipients.ts +++ b/src/version2/models/notificationRecipients.ts @@ -3,18 +3,18 @@ import { UserDetails } from './userDetails'; /** Details of the users and groups to receive the notification. */ export interface NotificationRecipients { - /** Whether the notification should be sent to the issue's reporter. */ - reporter?: boolean; /** Whether the notification should be sent to the issue's assignees. */ assignee?: boolean; - /** Whether the notification should be sent to the issue's watchers. */ - watchers?: boolean; - /** Whether the notification should be sent to the issue's voters. */ - voters?: boolean; - /** List of users to receive the notification. */ - users?: UserDetails[]; - /** List of groups to receive the notification. */ - groups?: GroupName[]; /** List of groupIds to receive the notification. */ groupIds?: string[]; + /** List of groups to receive the notification. */ + groups?: GroupName[]; + /** Whether the notification should be sent to the issue's reporter. */ + reporter?: boolean; + /** List of users to receive the notification. */ + users?: UserDetails[]; + /** Whether the notification should be sent to the issue's voters. */ + voters?: boolean; + /** Whether the notification should be sent to the issue's watchers. */ + watchers?: boolean; } diff --git a/src/version2/models/notificationRecipientsRestrictions.ts b/src/version2/models/notificationRecipientsRestrictions.ts index 30a9b7bc37..f8c941a6ec 100644 --- a/src/version2/models/notificationRecipientsRestrictions.ts +++ b/src/version2/models/notificationRecipientsRestrictions.ts @@ -3,10 +3,10 @@ import { RestrictedPermission } from './restrictedPermission'; /** Details of the group membership or permissions needed to receive the notification. */ export interface NotificationRecipientsRestrictions { - /** List of group memberships required to receive the notification. */ - groups?: GroupName[]; /** List of groupId memberships required to receive the notification. */ groupIds?: string[]; + /** List of group memberships required to receive the notification. */ + groups?: GroupName[]; /** List of permissions required to receive the notification. */ permissions?: RestrictedPermission[]; } diff --git a/src/version2/models/notificationScheme.ts b/src/version2/models/notificationScheme.ts index 5547d49c15..9e507e03cc 100644 --- a/src/version2/models/notificationScheme.ts +++ b/src/version2/models/notificationScheme.ts @@ -3,16 +3,18 @@ import { Scope } from './scope'; /** Details about a notification scheme. */ export interface NotificationScheme { + /** The description of the notification scheme. */ + description?: string; /** Expand options that include additional notification scheme details in the response. */ expand?: string; /** The ID of the notification scheme. */ id?: number; - self?: string; /** The name of the notification scheme. */ name?: string; - /** The description of the notification scheme. */ - description?: string; /** The notification events and associated recipients. */ notificationSchemeEvents?: NotificationSchemeEvent[]; + /** The list of project IDs associated with the notification scheme. */ + projects?: number[]; scope?: Scope; + self?: string; } diff --git a/src/version2/models/orderOfCustomFieldOptions.ts b/src/version2/models/orderOfCustomFieldOptions.ts index 24727938df..f5912366e5 100644 --- a/src/version2/models/orderOfCustomFieldOptions.ts +++ b/src/version2/models/orderOfCustomFieldOptions.ts @@ -1,15 +1,15 @@ /** An ordered list of custom field option IDs and information on where to move them. */ export interface OrderOfCustomFieldOptions { - /** - * A list of IDs of custom field options to move. The order of the custom field option IDs in the list is the order - * they are given after the move. The list must contain custom field options or cascading options, but not both. - */ - customFieldOptionIds: string[]; /** * The ID of the custom field option or cascading option to place the moved options after. Required if `position` * isn't provided. */ after?: string; + /** + * A list of IDs of custom field options to move. The order of the custom field option IDs in the list is the order + * they are given after the move. The list must contain custom field options or cascading options, but not both. + */ + customFieldOptionIds: string[]; /** The position the custom field options should be moved to. Required if `after` isn't provided. */ position?: string; } diff --git a/src/version2/models/orderOfIssueTypes.ts b/src/version2/models/orderOfIssueTypes.ts index 032b960870..dfdf537398 100644 --- a/src/version2/models/orderOfIssueTypes.ts +++ b/src/version2/models/orderOfIssueTypes.ts @@ -1,12 +1,12 @@ /** An ordered list of issue type IDs and information about where to move them. */ export interface OrderOfIssueTypes { + /** The ID of the issue type to place the moved issue types after. Required if `position` isn't provided. */ + after?: string; /** * A list of the issue type IDs to move. The order of the issue type IDs in the list is the order they are given after * the move. */ issueTypeIds: string[]; - /** The ID of the issue type to place the moved issue types after. Required if `position` isn't provided. */ - after?: string; /** The position the issue types should be moved to. Required if `after` isn't provided. */ position?: string; } diff --git a/src/version2/models/pageChangelog.ts b/src/version2/models/pageChangelog.ts index b17c7c62e4..1f014659e1 100644 --- a/src/version2/models/pageChangelog.ts +++ b/src/version2/models/pageChangelog.ts @@ -5,18 +5,18 @@ export type PageBeanChangelog = PageChangelog; /** A page of items. */ export interface PageChangelog { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: Changelog[]; } diff --git a/src/version2/models/pageComment.ts b/src/version2/models/pageComment.ts index 4bfcdf7958..8a50a13c7c 100644 --- a/src/version2/models/pageComment.ts +++ b/src/version2/models/pageComment.ts @@ -5,18 +5,18 @@ export type PageBeanComment = PageComment; /** A page of items. */ export interface PageComment { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: Comment[]; } diff --git a/src/version2/models/pageComponentWithIssueCount.ts b/src/version2/models/pageComponentWithIssueCount.ts index 5c31f75759..f697e332c5 100644 --- a/src/version2/models/pageComponentWithIssueCount.ts +++ b/src/version2/models/pageComponentWithIssueCount.ts @@ -5,18 +5,18 @@ export type PageBeanComponentWithIssueCount = PageComponentWithIssueCount; /** A page of items. */ export interface PageComponentWithIssueCount { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: ComponentWithIssueCount[]; } diff --git a/src/version2/models/pageContext.ts b/src/version2/models/pageContext.ts index 04c1bac40e..97d7cc3da1 100644 --- a/src/version2/models/pageContext.ts +++ b/src/version2/models/pageContext.ts @@ -5,18 +5,18 @@ export type PageBeanContext = PageContext; /** A page of items. */ export interface PageContext { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: Context[]; } diff --git a/src/version2/models/pageContextForProjectAndIssueType.ts b/src/version2/models/pageContextForProjectAndIssueType.ts index 057da21b3e..342552b3eb 100644 --- a/src/version2/models/pageContextForProjectAndIssueType.ts +++ b/src/version2/models/pageContextForProjectAndIssueType.ts @@ -5,18 +5,18 @@ export type PageBeanContextForProjectAndIssueType = PageContextForProjectAndIssu /** A page of items. */ export interface PageContextForProjectAndIssueType { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: ContextForProjectAndIssueType[]; } diff --git a/src/version2/models/pageCustomFieldContext.ts b/src/version2/models/pageCustomFieldContext.ts index eea8eaff2b..3ed98987fd 100644 --- a/src/version2/models/pageCustomFieldContext.ts +++ b/src/version2/models/pageCustomFieldContext.ts @@ -5,18 +5,18 @@ export type PageBeanCustomFieldContext = PageCustomFieldContext; /** A page of items. */ export interface PageCustomFieldContext { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: CustomFieldContext[]; } diff --git a/src/version2/models/pageCustomFieldContextDefaultValue.ts b/src/version2/models/pageCustomFieldContextDefaultValue.ts index 940e1f3890..afebf7853a 100644 --- a/src/version2/models/pageCustomFieldContextDefaultValue.ts +++ b/src/version2/models/pageCustomFieldContextDefaultValue.ts @@ -5,18 +5,18 @@ export type PageBeanCustomFieldContextDefaultValue = PageCustomFieldContextDefau /** A page of items. */ export interface PageCustomFieldContextDefaultValue { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: CustomFieldContextDefaultValue[]; } diff --git a/src/version2/models/pageCustomFieldContextOption.ts b/src/version2/models/pageCustomFieldContextOption.ts index 5159078ac2..e0dbcc24a8 100644 --- a/src/version2/models/pageCustomFieldContextOption.ts +++ b/src/version2/models/pageCustomFieldContextOption.ts @@ -5,18 +5,18 @@ export type PageBeanCustomFieldContextOption = PageCustomFieldContextOption; /** A page of items. */ export interface PageCustomFieldContextOption { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: CustomFieldContextOption[]; } diff --git a/src/version2/models/pageCustomFieldContextProjectMapping.ts b/src/version2/models/pageCustomFieldContextProjectMapping.ts index 7fb0881eb4..31cf150c46 100644 --- a/src/version2/models/pageCustomFieldContextProjectMapping.ts +++ b/src/version2/models/pageCustomFieldContextProjectMapping.ts @@ -5,18 +5,18 @@ export type PageBeanCustomFieldContextProjectMapping = PageCustomFieldContextPro /** A page of items. */ export interface PageCustomFieldContextProjectMapping { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: CustomFieldContextProjectMapping[]; } diff --git a/src/version2/models/pageDashboard.ts b/src/version2/models/pageDashboard.ts index c11da900c4..02d457a369 100644 --- a/src/version2/models/pageDashboard.ts +++ b/src/version2/models/pageDashboard.ts @@ -5,18 +5,18 @@ export type PageBeanDashboard = PageDashboard; /** A page of items. */ export interface PageDashboard { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: Dashboard[]; } diff --git a/src/version2/models/pageField.ts b/src/version2/models/pageField.ts index a92a79e18b..5a06986b19 100644 --- a/src/version2/models/pageField.ts +++ b/src/version2/models/pageField.ts @@ -5,18 +5,18 @@ export type PageBeanField = PageField; /** A page of items. */ export interface PageField { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: Field[]; } diff --git a/src/version2/models/pageFieldConfigurationIssueTypeItem.ts b/src/version2/models/pageFieldConfigurationIssueTypeItem.ts index ae0656c954..b9a16782b5 100644 --- a/src/version2/models/pageFieldConfigurationIssueTypeItem.ts +++ b/src/version2/models/pageFieldConfigurationIssueTypeItem.ts @@ -5,18 +5,18 @@ export type PageBeanFieldConfigurationIssueTypeItem = PageFieldConfigurationIssu /** A page of items. */ export interface PageFieldConfigurationIssueTypeItem { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: FieldConfigurationIssueTypeItem[]; } diff --git a/src/version2/models/pageFieldConfigurationItem.ts b/src/version2/models/pageFieldConfigurationItem.ts index 0578f3c7b8..90b3b0e5c4 100644 --- a/src/version2/models/pageFieldConfigurationItem.ts +++ b/src/version2/models/pageFieldConfigurationItem.ts @@ -5,18 +5,18 @@ export type PageBeanFieldConfigurationItem = PageFieldConfigurationItem; /** A page of items. */ export interface PageFieldConfigurationItem { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: FieldConfigurationItem[]; } diff --git a/src/version2/models/pageFieldConfigurationScheme.ts b/src/version2/models/pageFieldConfigurationScheme.ts index 4e306c708a..10327b6996 100644 --- a/src/version2/models/pageFieldConfigurationScheme.ts +++ b/src/version2/models/pageFieldConfigurationScheme.ts @@ -5,18 +5,18 @@ export type PageBeanFieldConfigurationScheme = PageFieldConfigurationScheme; /** A page of items. */ export interface PageFieldConfigurationScheme { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: FieldConfigurationScheme[]; } diff --git a/src/version2/models/pageFieldConfigurationSchemeProjects.ts b/src/version2/models/pageFieldConfigurationSchemeProjects.ts index be0241b014..785a31e631 100644 --- a/src/version2/models/pageFieldConfigurationSchemeProjects.ts +++ b/src/version2/models/pageFieldConfigurationSchemeProjects.ts @@ -5,18 +5,18 @@ export type PageBeanFieldConfigurationSchemeProjects = PageFieldConfigurationSch /** A page of items. */ export interface PageFieldConfigurationSchemeProjects { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: FieldConfigurationSchemeProjects[]; } diff --git a/src/version2/models/pageFilterDetails.ts b/src/version2/models/pageFilterDetails.ts index a0ab6a3607..f4b5d25a70 100644 --- a/src/version2/models/pageFilterDetails.ts +++ b/src/version2/models/pageFilterDetails.ts @@ -5,18 +5,18 @@ export type PageBeanFilterDetails = PageFilterDetails; /** A page of items. */ export interface PageFilterDetails { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: FilterDetails[]; } diff --git a/src/version2/models/pageGroupDetails.ts b/src/version2/models/pageGroupDetails.ts index 7e3b5722f9..a834f44a2e 100644 --- a/src/version2/models/pageGroupDetails.ts +++ b/src/version2/models/pageGroupDetails.ts @@ -5,18 +5,18 @@ export type PageBeanGroupDetails = PageGroupDetails; /** A page of items. */ export interface PageGroupDetails { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: GroupDetails[]; } diff --git a/src/version2/models/pageIssueFieldOption.ts b/src/version2/models/pageIssueFieldOption.ts index 51f3cc2a04..1b746c3d0a 100644 --- a/src/version2/models/pageIssueFieldOption.ts +++ b/src/version2/models/pageIssueFieldOption.ts @@ -5,18 +5,18 @@ export type PageBeanIssueFieldOption = PageIssueFieldOption; /** A page of items. */ export interface PageIssueFieldOption { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: IssueFieldOption[]; } diff --git a/src/version2/models/pageIssueSecurityLevelMember.ts b/src/version2/models/pageIssueSecurityLevelMember.ts index 6946c68da0..cd0b69a692 100644 --- a/src/version2/models/pageIssueSecurityLevelMember.ts +++ b/src/version2/models/pageIssueSecurityLevelMember.ts @@ -5,18 +5,18 @@ export type PageBeanIssueSecurityLevelMember = PageIssueSecurityLevelMember; /** A page of items. */ export interface PageIssueSecurityLevelMember { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: IssueSecurityLevelMember[]; } diff --git a/src/version2/models/pageIssueSecuritySchemeToProjectMapping.ts b/src/version2/models/pageIssueSecuritySchemeToProjectMapping.ts new file mode 100644 index 0000000000..a2c49e6554 --- /dev/null +++ b/src/version2/models/pageIssueSecuritySchemeToProjectMapping.ts @@ -0,0 +1,19 @@ +import { IssueSecuritySchemeToProjectMapping } from './issueSecuritySchemeToProjectMapping'; + +/** A page of items. */ +export interface PageIssueSecuritySchemeToProjectMapping { + /** Whether this is the last page. */ + isLast: boolean; + /** The maximum number of items that could be returned. */ + maxResults: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self: string; + /** The index of the first item returned. */ + startAt: number; + /** The number of items returned. */ + total: number; + /** The list of items. */ + values: IssueSecuritySchemeToProjectMapping[]; +} diff --git a/src/version2/models/pageIssueTypeScheme.ts b/src/version2/models/pageIssueTypeScheme.ts index 67af428a83..9c5b04595d 100644 --- a/src/version2/models/pageIssueTypeScheme.ts +++ b/src/version2/models/pageIssueTypeScheme.ts @@ -5,18 +5,18 @@ export type PageBeanIssueTypeScheme = PageIssueTypeScheme; /** A page of items. */ export interface PageIssueTypeScheme { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: IssueTypeScheme[]; } diff --git a/src/version2/models/pageIssueTypeSchemeMapping.ts b/src/version2/models/pageIssueTypeSchemeMapping.ts index 03eacf933e..a145c8d546 100644 --- a/src/version2/models/pageIssueTypeSchemeMapping.ts +++ b/src/version2/models/pageIssueTypeSchemeMapping.ts @@ -5,18 +5,18 @@ export type PageBeanIssueTypeSchemeMapping = PageIssueTypeSchemeMapping; /** A page of items. */ export interface PageIssueTypeSchemeMapping { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: IssueTypeSchemeMapping[]; } diff --git a/src/version2/models/pageIssueTypeSchemeProjects.ts b/src/version2/models/pageIssueTypeSchemeProjects.ts index 6584a33900..54589aed5f 100644 --- a/src/version2/models/pageIssueTypeSchemeProjects.ts +++ b/src/version2/models/pageIssueTypeSchemeProjects.ts @@ -5,18 +5,18 @@ export type PageBeanIssueTypeSchemeProjects = PageIssueTypeSchemeProjects; /** A page of items. */ export interface PageIssueTypeSchemeProjects { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: IssueTypeSchemeProjects[]; } diff --git a/src/version2/models/pageIssueTypeScreenScheme.ts b/src/version2/models/pageIssueTypeScreenScheme.ts index 5d2bf1a35d..1ca132bad0 100644 --- a/src/version2/models/pageIssueTypeScreenScheme.ts +++ b/src/version2/models/pageIssueTypeScreenScheme.ts @@ -5,18 +5,18 @@ export type PageBeanIssueTypeScreenScheme = PageIssueTypeScreenScheme; /** A page of items. */ export interface PageIssueTypeScreenScheme { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: IssueTypeScreenScheme[]; } diff --git a/src/version2/models/pageIssueTypeScreenSchemeItem.ts b/src/version2/models/pageIssueTypeScreenSchemeItem.ts index bc110ad7b3..34163ed2cd 100644 --- a/src/version2/models/pageIssueTypeScreenSchemeItem.ts +++ b/src/version2/models/pageIssueTypeScreenSchemeItem.ts @@ -5,18 +5,18 @@ export type PageBeanIssueTypeScreenSchemeItem = PageIssueTypeScreenSchemeItem; /** A page of items. */ export interface PageIssueTypeScreenSchemeItem { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: IssueTypeScreenSchemeItem[]; } diff --git a/src/version2/models/pageIssueTypeScreenSchemesProjects.ts b/src/version2/models/pageIssueTypeScreenSchemesProjects.ts index 3d2be3511d..241dd77acb 100644 --- a/src/version2/models/pageIssueTypeScreenSchemesProjects.ts +++ b/src/version2/models/pageIssueTypeScreenSchemesProjects.ts @@ -5,18 +5,18 @@ export type PageBeanIssueTypeScreenSchemesProjects = PageIssueTypeScreenSchemesP /** A page of items. */ export interface PageIssueTypeScreenSchemesProjects { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: IssueTypeScreenSchemesProjects[]; } diff --git a/src/version2/models/pageIssueTypeToContextMapping.ts b/src/version2/models/pageIssueTypeToContextMapping.ts index 8b61f70d81..0ce3e233e7 100644 --- a/src/version2/models/pageIssueTypeToContextMapping.ts +++ b/src/version2/models/pageIssueTypeToContextMapping.ts @@ -5,18 +5,18 @@ export type PageBeanIssueTypeToContextMapping = PageIssueTypeToContextMapping; /** A page of items. */ export interface PageIssueTypeToContextMapping { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: IssueTypeToContextMapping[]; } diff --git a/src/version2/models/pageNotificationScheme.ts b/src/version2/models/pageNotificationScheme.ts index ebfa31c7c4..02c248a3f8 100644 --- a/src/version2/models/pageNotificationScheme.ts +++ b/src/version2/models/pageNotificationScheme.ts @@ -5,18 +5,18 @@ export type PageBeanNotificationScheme = PageNotificationScheme; /** A page of items. */ export interface PageNotificationScheme { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: NotificationScheme[]; } diff --git a/src/version2/models/pageOfChangelogs.ts b/src/version2/models/pageOfChangelogs.ts index d9a89272b2..da5aa695cc 100644 --- a/src/version2/models/pageOfChangelogs.ts +++ b/src/version2/models/pageOfChangelogs.ts @@ -2,12 +2,12 @@ import { Changelog } from './changelog'; /** A page of changelogs. */ export interface PageOfChangelogs { - /** The index of the first item returned on the page. */ - startAt?: number; + /** The list of changelogs. */ + histories?: Changelog[]; /** The maximum number of results that could be on the page. */ maxResults?: number; + /** The index of the first item returned on the page. */ + startAt?: number; /** The number of results on the page. */ total?: number; - /** The list of changelogs. */ - histories?: Changelog[]; } diff --git a/src/version2/models/pageOfComments.ts b/src/version2/models/pageOfComments.ts index 4939938866..8c681c1dbd 100644 --- a/src/version2/models/pageOfComments.ts +++ b/src/version2/models/pageOfComments.ts @@ -2,12 +2,12 @@ import { Comment } from './comment'; /** A page of comments. */ export interface PageOfComments { - /** The index of the first item returned. */ - startAt?: number; + /** The list of comments. */ + comments?: Comment[]; /** The maximum number of items that could be returned. */ maxResults?: number; + /** The index of the first item returned. */ + startAt?: number; /** The number of items returned. */ total?: number; - /** The list of comments. */ - comments?: Comment[]; } diff --git a/src/version2/models/pageOfDashboards.ts b/src/version2/models/pageOfDashboards.ts index 52cd82d27b..65f9386373 100644 --- a/src/version2/models/pageOfDashboards.ts +++ b/src/version2/models/pageOfDashboards.ts @@ -2,16 +2,16 @@ import { Dashboard } from './dashboard'; /** A page containing dashboard details. */ export interface PageOfDashboards { - /** The index of the first item returned on the page. */ - startAt?: number; + /** List of dashboards. */ + dashboards?: Dashboard[]; /** The maximum number of results that could be on the page. */ maxResults?: number; - /** The number of results on the page. */ - total?: number; - /** The URL of the previous page of results, if any. */ - prev?: string; /** The URL of the next page of results, if any. */ next?: string; - /** List of dashboards. */ - dashboards?: Dashboard[]; + /** The URL of the previous page of results, if any. */ + prev?: string; + /** The index of the first item returned on the page. */ + startAt?: number; + /** The number of results on the page. */ + total?: number; } diff --git a/src/version2/models/pageOfStatuses.ts b/src/version2/models/pageOfStatuses.ts index 8b40c3ed66..c31aa61007 100644 --- a/src/version2/models/pageOfStatuses.ts +++ b/src/version2/models/pageOfStatuses.ts @@ -1,18 +1,18 @@ import { JiraStatus } from './jiraStatus'; export interface PageOfStatuses { - /** The index of the first item returned on the page. */ - startAt?: number; - /** Number of items that satisfy the search. */ - total?: number; /** Whether this is the last page. */ isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; - /** The list of items. */ - values?: JiraStatus[]; - /** The URL of this page. */ - self?: string; /** The URL of the next page of results, if any. */ nextPage?: string; + /** The URL of this page. */ + self?: string; + /** The index of the first item returned on the page. */ + startAt?: number; + /** Number of items that satisfy the search. */ + total?: number; + /** The list of items. */ + values?: JiraStatus[]; } diff --git a/src/version2/models/pageOfWorklogs.ts b/src/version2/models/pageOfWorklogs.ts index 08620e1ded..2d131b35f5 100644 --- a/src/version2/models/pageOfWorklogs.ts +++ b/src/version2/models/pageOfWorklogs.ts @@ -2,10 +2,10 @@ import { Worklog } from './worklog'; /** Paginated list of worklog details */ export interface PageOfWorklogs { - /** The index of the first item returned on the page. */ - startAt: number; /** The maximum number of results that could be on the page. */ maxResults: number; + /** The index of the first item returned on the page. */ + startAt: number; /** The number of results on the page. */ total: number; /** List of worklogs. */ diff --git a/src/version2/models/pageProject.ts b/src/version2/models/pageProject.ts index 3074093ac3..74b05c5bde 100644 --- a/src/version2/models/pageProject.ts +++ b/src/version2/models/pageProject.ts @@ -5,18 +5,18 @@ export type PageBeanProject = PageProject; /** A page of items. */ export interface PageProject { - /** The URL of the page. */ - self: string; + /** Whether this is the last page. */ + isLast?: boolean; + /** The maximum number of items that could be returned. */ + maxResults?: number; /** If there is another page of results, the URL of the next page. */ nextPage?: string; - /** The maximum number of items that could be returned. */ - maxResults: number; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ - startAt: number; + startAt?: number; /** The number of items returned. */ - total: number; - /** Whether this is the last page. */ - isLast: boolean; + total?: number; /** The list of items. */ - values: Project[]; + values?: Project[]; } diff --git a/src/version2/models/pageScreen.ts b/src/version2/models/pageScreen.ts index c2af418e0d..ea221db8b8 100644 --- a/src/version2/models/pageScreen.ts +++ b/src/version2/models/pageScreen.ts @@ -5,18 +5,18 @@ export type PageBeanScreen = PageScreen; /** A page of items. */ export interface PageScreen { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: Screen[]; } diff --git a/src/version2/models/pageScreenScheme.ts b/src/version2/models/pageScreenScheme.ts index 4660a57ed9..ad18d0645c 100644 --- a/src/version2/models/pageScreenScheme.ts +++ b/src/version2/models/pageScreenScheme.ts @@ -5,18 +5,18 @@ export type PageBeanScreenScheme = PageScreenScheme; /** A page of items. */ export interface PageScreenScheme { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: ScreenScheme[]; } diff --git a/src/version2/models/pageScreenWithTab.ts b/src/version2/models/pageScreenWithTab.ts index 730cbcb0f5..7dafc9f8ea 100644 --- a/src/version2/models/pageScreenWithTab.ts +++ b/src/version2/models/pageScreenWithTab.ts @@ -5,18 +5,18 @@ export type PageBeanScreenWithTab = PageScreenWithTab; /** A page of items. */ export interface PageScreenWithTab { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: ScreenWithTab[]; } diff --git a/src/version2/models/pageSecurityLevel.ts b/src/version2/models/pageSecurityLevel.ts new file mode 100644 index 0000000000..629a4ef9fe --- /dev/null +++ b/src/version2/models/pageSecurityLevel.ts @@ -0,0 +1,19 @@ +import { SecurityLevel } from './securityLevel'; + +/** A page of items. */ +export interface PageSecurityLevel { + /** Whether this is the last page. */ + isLast: boolean; + /** The maximum number of items that could be returned. */ + maxResults: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self: string; + /** The index of the first item returned. */ + startAt: number; + /** The number of items returned. */ + total: number; + /** The list of items. */ + values: SecurityLevel[]; +} diff --git a/src/version2/models/pageSecurityLevelMember.ts b/src/version2/models/pageSecurityLevelMember.ts new file mode 100644 index 0000000000..5519acc8a3 --- /dev/null +++ b/src/version2/models/pageSecurityLevelMember.ts @@ -0,0 +1,19 @@ +import { SecurityLevelMember } from './securityLevelMember'; + +/** A page of items. */ +export interface PageSecurityLevelMember { + /** Whether this is the last page. */ + isLast: boolean; + /** The maximum number of items that could be returned. */ + maxResults: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self: string; + /** The index of the first item returned. */ + startAt: number; + /** The number of items returned. */ + total: number; + /** The list of items. */ + values: SecurityLevelMember[]; +} diff --git a/src/version2/models/pageSecuritySchemeWithProjects.ts b/src/version2/models/pageSecuritySchemeWithProjects.ts new file mode 100644 index 0000000000..a03f5ea09d --- /dev/null +++ b/src/version2/models/pageSecuritySchemeWithProjects.ts @@ -0,0 +1,19 @@ +import { SecuritySchemeWithProjects } from './securitySchemeWithProjects'; + +/** A page of items. */ +export interface PageSecuritySchemeWithProjects { + /** Whether this is the last page. */ + isLast: boolean; + /** The maximum number of items that could be returned. */ + maxResults: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self: string; + /** The index of the first item returned. */ + startAt: number; + /** The number of items returned. */ + total: number; + /** The list of items. */ + values: SecuritySchemeWithProjects[]; +} diff --git a/src/version2/models/pageString.ts b/src/version2/models/pageString.ts index 19185cc7dd..7b28a2fac9 100644 --- a/src/version2/models/pageString.ts +++ b/src/version2/models/pageString.ts @@ -3,18 +3,18 @@ export type PageBeanString = PageString; /** A page of items. */ export interface PageString { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: string[]; } diff --git a/src/version2/models/pageUser.ts b/src/version2/models/pageUser.ts index f68e79c1bb..8fa816e1f2 100644 --- a/src/version2/models/pageUser.ts +++ b/src/version2/models/pageUser.ts @@ -5,18 +5,18 @@ export type PageBeanUser = PageUser; /** A page of items. */ export interface PageUser { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: User[]; } diff --git a/src/version2/models/pageUserDetails.ts b/src/version2/models/pageUserDetails.ts index cd011ac51d..59b7665301 100644 --- a/src/version2/models/pageUserDetails.ts +++ b/src/version2/models/pageUserDetails.ts @@ -5,18 +5,18 @@ export type PageBeanUserDetails = PageUserDetails; /** A page of items. */ export interface PageUserDetails { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: UserDetails[]; } diff --git a/src/version2/models/pageUserKey.ts b/src/version2/models/pageUserKey.ts index f85a8b3ed0..3bfb7745fa 100644 --- a/src/version2/models/pageUserKey.ts +++ b/src/version2/models/pageUserKey.ts @@ -5,18 +5,18 @@ export type PageBeanUserKey = PageUserKey; /** A page of items. */ export interface PageUserKey { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: UserKey[]; } diff --git a/src/version2/models/pageVersion.ts b/src/version2/models/pageVersion.ts index bee8c3bec0..ce94f25211 100644 --- a/src/version2/models/pageVersion.ts +++ b/src/version2/models/pageVersion.ts @@ -5,18 +5,18 @@ export type PageBeanVersion = PageVersion; /** A page of items. */ export interface PageVersion { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: Version[]; } diff --git a/src/version2/models/pageWebhook.ts b/src/version2/models/pageWebhook.ts index fcf6393841..46ae217010 100644 --- a/src/version2/models/pageWebhook.ts +++ b/src/version2/models/pageWebhook.ts @@ -5,18 +5,18 @@ export type PageBeanWebhook = PageWebhook; /** A page of items. */ export interface PageWebhook { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: Webhook[]; } diff --git a/src/version2/models/pageWorkflow.ts b/src/version2/models/pageWorkflow.ts index 9e7bcc450a..79f27f9325 100644 --- a/src/version2/models/pageWorkflow.ts +++ b/src/version2/models/pageWorkflow.ts @@ -5,18 +5,18 @@ export type PageBeanWorkflow = PageWorkflow; /** A page of items. */ export interface PageWorkflow { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: Workflow[]; } diff --git a/src/version2/models/pageWorkflowScheme.ts b/src/version2/models/pageWorkflowScheme.ts index db6b8182d3..288f823b08 100644 --- a/src/version2/models/pageWorkflowScheme.ts +++ b/src/version2/models/pageWorkflowScheme.ts @@ -5,18 +5,18 @@ export type PageBeanWorkflowScheme = PageWorkflowScheme; /** A page of items. */ export interface PageWorkflowScheme { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: WorkflowScheme[]; } diff --git a/src/version2/models/pageWorkflowTransitionRules.ts b/src/version2/models/pageWorkflowTransitionRules.ts index fbccf6202a..31590a613a 100644 --- a/src/version2/models/pageWorkflowTransitionRules.ts +++ b/src/version2/models/pageWorkflowTransitionRules.ts @@ -5,18 +5,18 @@ export type PageBeanWorkflowTransitionRules = PageWorkflowTransitionRules; /** A page of items. */ export interface PageWorkflowTransitionRules { - /** The URL of the page. */ - self?: string; - /** If there is another page of results, the URL of the next page. */ - nextPage?: string; + /** Whether this is the last page. */ + isLast?: boolean; /** The maximum number of items that could be returned. */ maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; /** The index of the first item returned. */ startAt?: number; /** The number of items returned. */ total?: number; - /** Whether this is the last page. */ - isLast?: boolean; /** The list of items. */ values?: WorkflowTransitionRules[]; } diff --git a/src/version2/models/pagedListUserDetailsApplicationUser.ts b/src/version2/models/pagedListUserDetailsApplicationUser.ts index 98f6dd85ee..1e92b480c9 100644 --- a/src/version2/models/pagedListUserDetailsApplicationUser.ts +++ b/src/version2/models/pagedListUserDetailsApplicationUser.ts @@ -5,14 +5,14 @@ import { UserDetails } from './userDetails'; * `?expand=sharedUsers[10:40]` returns a list starting at item 10 and finishing at item 40. */ export interface PagedListUserDetailsApplicationUser { - /** The number of items on the page. */ - size?: number; + /** The index of the last item returned on the page. */ + 'end-index'?: number; /** The list of items. */ items?: UserDetails[]; /** The maximum number of results that could be on the page. */ 'max-results'?: number; + /** The number of items on the page. */ + size?: number; /** The index of the first item returned on the page. */ 'start-index'?: number; - /** The index of the last item returned on the page. */ - 'end-index'?: number; } diff --git a/src/version2/models/paginatedResponseComment.ts b/src/version2/models/paginatedResponseComment.ts index 8d48300af2..f8aba6db01 100644 --- a/src/version2/models/paginatedResponseComment.ts +++ b/src/version2/models/paginatedResponseComment.ts @@ -1,8 +1,8 @@ import { Comment } from './comment'; export interface PaginatedResponseComment { - total?: number; - startAt?: number; maxResults?: number; results?: Comment[]; + startAt?: number; + total?: number; } diff --git a/src/version2/models/parsedJqlQuery.ts b/src/version2/models/parsedJqlQuery.ts index 2a6dd3a724..fea14dedfe 100644 --- a/src/version2/models/parsedJqlQuery.ts +++ b/src/version2/models/parsedJqlQuery.ts @@ -2,9 +2,9 @@ import { JqlQuery } from './jqlQuery'; /** Details of a parsed JQL query. */ export interface ParsedJqlQuery { + /** The list of syntax or validation errors. */ + errors?: string[]; /** The JQL query that was parsed and validated. */ query: string; structure?: JqlQuery; - /** The list of syntax or validation errors. */ - errors?: string[]; } diff --git a/src/version2/models/permissionGrant.ts b/src/version2/models/permissionGrant.ts index bcc8a165b5..33909846d8 100644 --- a/src/version2/models/permissionGrant.ts +++ b/src/version2/models/permissionGrant.ts @@ -2,11 +2,9 @@ import { PermissionHolder } from './permissionHolder'; /** Details about a permission granted to a user or group. */ export interface PermissionGrant { + holder?: PermissionHolder; /** The ID of the permission granted details. */ id?: number; - /** The URL of the permission granted details. */ - self?: string; - holder?: PermissionHolder; /** * The permission to grant. This permission can be one of the built-in permissions or a custom permission added by an * app. See [Built-in permissions](../api-group-permission-schemes/#built-in-permissions) in _Get all permission @@ -16,4 +14,6 @@ export interface PermissionGrant { * for more information about custom permissions. */ permission?: string; + /** The URL of the permission granted details. */ + self?: string; } diff --git a/src/version2/models/permissionGrants.ts b/src/version2/models/permissionGrants.ts index 8f4bcc01f1..9f4b2d7619 100644 --- a/src/version2/models/permissionGrants.ts +++ b/src/version2/models/permissionGrants.ts @@ -2,8 +2,8 @@ import { PermissionGrant } from './permissionGrant'; /** List of permission grants. */ export interface PermissionGrants { - /** Permission grants list. */ - permissions?: PermissionGrant[]; /** Expand options that include additional permission grant details in the response. */ expand?: string; + /** Permission grants list. */ + permissions?: PermissionGrant[]; } diff --git a/src/version2/models/permissionHolder.ts b/src/version2/models/permissionHolder.ts index 00a8652c95..ce9c86f731 100644 --- a/src/version2/models/permissionHolder.ts +++ b/src/version2/models/permissionHolder.ts @@ -3,15 +3,15 @@ * object](../api-group-permission-schemes/#holder-object) in _Get all permission schemes_ for more information. */ export interface PermissionHolder { - /** The type of permission holder. */ - type: string; + /** Expand options that include additional permission holder details in the response. */ + expand?: string; /** * As a group's name can change, use of `value` is recommended. The identifier associated withthe `type` value that * defines the holder of the permission. */ parameter?: string; + /** The type of permission holder. */ + type: string; /** The identifier associated with the `type` value that defines the holder of the permission. */ value?: string; - /** Expand options that include additional permission holder details in the response. */ - expand?: string; } diff --git a/src/version2/models/permissionScheme.ts b/src/version2/models/permissionScheme.ts index 367d4222db..19b084d0dc 100644 --- a/src/version2/models/permissionScheme.ts +++ b/src/version2/models/permissionScheme.ts @@ -3,20 +3,20 @@ import { Scope } from './scope'; /** Details of a permission scheme. */ export interface PermissionScheme { + /** A description for the permission scheme. */ + description?: string; /** The expand options available for the permission scheme. */ expand?: string; /** The ID of the permission scheme. */ id?: number; - /** The URL of the permission scheme. */ - self?: string; /** The name of the permission scheme. Must be unique. */ name: string; - /** A description for the permission scheme. */ - description?: string; - scope?: Scope; /** * The permission scheme to create or update. See [About permission schemes and * grants](../api-group-permission-schemes/#about-permission-schemes-and-grants) for more information. */ permissions?: PermissionGrant[]; + scope?: Scope; + /** The URL of the permission scheme. */ + self?: string; } diff --git a/src/version2/models/priority.ts b/src/version2/models/priority.ts index 7e0aa74236..64f92a9683 100644 --- a/src/version2/models/priority.ts +++ b/src/version2/models/priority.ts @@ -1,17 +1,17 @@ /** An issue priority. */ export interface Priority { - /** The URL of the issue priority. */ - self?: string; - /** The color used to indicate the issue priority. */ - statusColor?: string; /** The description of the issue priority. */ description?: string; /** The URL of the icon for the issue priority. */ iconUrl?: string; - /** The name of the issue priority. */ - name?: string; /** The ID of the issue priority. */ id?: string; /** Whether this priority is the default. */ isDefault?: boolean; + /** The name of the issue priority. */ + name?: string; + /** The URL of the issue priority. */ + self?: string; + /** The color used to indicate the issue priority. */ + statusColor?: string; } diff --git a/src/version2/models/project.ts b/src/version2/models/project.ts index 83aea08c4f..474abbf236 100644 --- a/src/version2/models/project.ts +++ b/src/version2/models/project.ts @@ -11,37 +11,44 @@ import { Version } from './version'; /** Details about a project. */ export interface Project { + /** Whether the project is archived. */ + archived?: boolean; + archivedBy?: User; + /** The date when the project was archived. */ + archivedDate?: string; + /** The default assignee when creating issues for this project. */ + assigneeType?: string; + avatarUrls?: AvatarUrls; + /** List of the components contained in the project. */ + components?: ProjectComponent[]; + /** Whether the project is marked as deleted. */ + deleted?: boolean; + deletedBy?: User; + /** The date when the project was marked as deleted. */ + deletedDate?: string; + /** A brief description of the project. */ + description?: string; + /** An email address associated with the project. */ + email?: string; /** Expand options that include additional project details in the response. */ expand?: string; - /** The URL of the project details. */ - self?: string; + /** Whether the project is selected as a favorite. */ + favourite?: boolean; /** The ID of the project. */ - id: string; - /** The key of the project. */ - key: string; - /** A brief description of the project. */ - description?: string; - lead: User; - /** List of the components contained in the project. */ - components?: ProjectComponent[]; + id?: string; + insight?: ProjectInsight; + /** Whether the project is private. */ + isPrivate?: boolean; + issueTypeHierarchy?: Hierarchy; /** List of the issue types available in the project. */ issueTypes?: IssueTypeDetails[]; - /** A link to information about this project, such as project documentation. */ - url?: string; - /** An email address associated with the project. */ - email?: string; - /** The default assignee when creating issues for this project. */ - assigneeType?: string; - /** The versions defined in the project. For more information, see [Create version](#api-rest-api-2-version-post). */ - versions?: Version[]; + /** The key of the project. */ + key?: string; + landingPageInfo?: ProjectLandingPageInfo; + lead?: User; /** The name of the project. */ - name: string; - /** - * The name and self URL for each role defined in the project. For more information, see [Create project - * role](#api-rest-api-2-role-post). - */ - roles?: {}; - avatarUrls?: AvatarUrls; + name?: string; + permissions?: ProjectPermissions; projectCategory?: ProjectCategory; /** * The [project @@ -49,32 +56,25 @@ export interface Project { * project. */ projectTypeKey?: string; + /** Map of project properties */ + properties?: {}; + /** The date when the project is deleted permanently. */ + retentionTillDate?: string; + /** + * The name and self URL for each role defined in the project. For more information, see [Create project + * role](#api-rest-api-2-role-post). + */ + roles?: {}; + /** The URL of the project details. */ + self?: string; /** Whether the project is simplified. */ simplified?: boolean; /** The type of the project. */ style?: string; - /** Whether the project is selected as a favorite. */ - favourite?: boolean; - /** Whether the project is private. */ - isPrivate?: boolean; - issueTypeHierarchy?: Hierarchy; - permissions?: ProjectPermissions; - /** Map of project properties */ - properties?: {}; + /** A link to information about this project, such as project documentation. */ + url?: string; /** Unique ID for next-gen projects. */ uuid?: string; - insight?: ProjectInsight; - /** Whether the project is marked as deleted. */ - deleted?: boolean; - /** The date when the project is deleted permanently. */ - retentionTillDate?: string; - /** The date when the project was marked as deleted. */ - deletedDate?: string; - deletedBy?: User; - /** Whether the project is archived. */ - archived?: boolean; - /** The date when the project was archived. */ - archivedDate?: string; - archivedBy?: User; - landingPageInfo?: ProjectLandingPageInfo; + /** The versions defined in the project. For more information, see [Create version](#api-rest-api-2-version-post). */ + versions?: Version[]; } diff --git a/src/version2/models/projectAvatars.ts b/src/version2/models/projectAvatars.ts index 0f8c833f2c..cfbaeb49af 100644 --- a/src/version2/models/projectAvatars.ts +++ b/src/version2/models/projectAvatars.ts @@ -2,8 +2,8 @@ import { Avatar } from './avatar'; /** List of project avatars. */ export interface ProjectAvatars { - /** List of avatars included with Jira. These avatars cannot be deleted. */ - system?: Avatar[]; /** List of avatars added to Jira. These avatars may be deleted. */ custom?: Avatar[]; + /** List of avatars included with Jira. These avatars cannot be deleted. */ + system?: Avatar[]; } diff --git a/src/version2/models/projectCategory.ts b/src/version2/models/projectCategory.ts index dda0472de2..a62133daf8 100644 --- a/src/version2/models/projectCategory.ts +++ b/src/version2/models/projectCategory.ts @@ -1,11 +1,11 @@ /** A project category. */ export interface ProjectCategory { - /** The URL of the project category. */ - self?: string; + /** The description of the project category. */ + description?: string; /** The ID of the project category. */ id?: string; /** The name of the project category. Required on create, optional on update. */ name?: string; - /** The description of the project category. */ - description?: string; + /** The URL of the project category. */ + self?: string; } diff --git a/src/version2/models/projectDetails.ts b/src/version2/models/projectDetails.ts index 8a68dbde84..e3b010a6ed 100644 --- a/src/version2/models/projectDetails.ts +++ b/src/version2/models/projectDetails.ts @@ -3,22 +3,22 @@ import { UpdatedProjectCategory } from './updatedProjectCategory'; /** Details about a project. */ export interface ProjectDetails { - /** The URL of the project details. */ - self?: string; + avatarUrls?: AvatarUrls; /** The ID of the project. */ id?: string; /** The key of the project. */ key?: string; /** The name of the project. */ name?: string; + projectCategory?: UpdatedProjectCategory; /** * The [project * type](https://confluence.atlassian.com/x/GwiiLQ#Jiraapplicationsoverview-Productfeaturesandprojecttypes) of the * project. */ projectTypeKey?: string; + /** The URL of the project details. */ + self?: string; /** Whether or not the project is simplified. */ simplified?: boolean; - avatarUrls?: AvatarUrls; - projectCategory?: UpdatedProjectCategory; } diff --git a/src/version2/models/projectFeature.ts b/src/version2/models/projectFeature.ts index a122131221..97c5815872 100644 --- a/src/version2/models/projectFeature.ts +++ b/src/version2/models/projectFeature.ts @@ -1,5 +1,15 @@ /** Details of a project feature. */ export interface ProjectFeature { + /** The key of the feature. */ + feature?: string; + /** URI for the image representing the feature. */ + imageUri?: string; + /** Localized display description for the feature. */ + localisedDescription?: string; + /** Localized display name for the feature. */ + localisedName?: string; + /** List of keys of the features required to enable the feature. */ + prerequisites?: string[]; /** The ID of the project. */ projectId?: number; /** @@ -9,14 +19,4 @@ export interface ProjectFeature { state?: string; /** Whether the state of the feature can be updated. */ toggleLocked?: boolean; - /** The key of the feature. */ - feature?: string; - /** List of keys of the features required to enable the feature. */ - prerequisites?: string[]; - /** Localized display name for the feature. */ - localisedName?: string; - /** Localized display description for the feature. */ - localisedDescription?: string; - /** URI for the image representing the feature. */ - imageUri?: string; } diff --git a/src/version2/models/projectIdentifiers.ts b/src/version2/models/projectIdentifiers.ts index da2beab6ab..26ec8e333b 100644 --- a/src/version2/models/projectIdentifiers.ts +++ b/src/version2/models/projectIdentifiers.ts @@ -1,9 +1,9 @@ /** Identifiers for a project. */ export interface ProjectIdentifiers { - /** The URL of the created project. */ - self: string; /** The ID of the created project. */ id: number; /** The key of the created project. */ key: string; + /** The URL of the created project. */ + self: string; } diff --git a/src/version2/models/projectInsight.ts b/src/version2/models/projectInsight.ts index 554cf9db33..5dd6d2bffe 100644 --- a/src/version2/models/projectInsight.ts +++ b/src/version2/models/projectInsight.ts @@ -1,7 +1,7 @@ /** Additional details about a project. */ export interface ProjectInsight { - /** Total issue count. */ - totalIssueCount?: number; /** The last issue update time. */ lastIssueUpdateTime?: string; + /** Total issue count. */ + totalIssueCount?: number; } diff --git a/src/version2/models/projectIssueCreateMetadata.ts b/src/version2/models/projectIssueCreateMetadata.ts index f0ebe11d3c..3b350783e5 100644 --- a/src/version2/models/projectIssueCreateMetadata.ts +++ b/src/version2/models/projectIssueCreateMetadata.ts @@ -3,17 +3,17 @@ import { IssueTypeIssueCreateMetadata } from './issueTypeIssueCreateMetadata'; /** Details of the issue creation metadata for a project. */ export interface ProjectIssueCreateMetadata { + avatarUrls?: AvatarUrls; /** Expand options that include additional project issue create metadata details in the response. */ expand?: string; - /** The URL of the project. */ - self?: string; /** The ID of the project. */ id?: string; + /** List of the issue types supported by the project. */ + issuetypes?: IssueTypeIssueCreateMetadata[]; /** The key of the project. */ key?: string; /** The name of the project. */ name?: string; - avatarUrls?: AvatarUrls; - /** List of the issue types supported by the project. */ - issuetypes?: IssueTypeIssueCreateMetadata[]; + /** The URL of the project. */ + self?: string; } diff --git a/src/version2/models/projectIssueTypeHierarchy.ts b/src/version2/models/projectIssueTypeHierarchy.ts index e0825a17ac..868dc5dfb5 100644 --- a/src/version2/models/projectIssueTypeHierarchy.ts +++ b/src/version2/models/projectIssueTypeHierarchy.ts @@ -2,8 +2,8 @@ import { ProjectIssueTypesHierarchyLevel } from './projectIssueTypesHierarchyLev /** The hierarchy of issue types within a project. */ export interface ProjectIssueTypeHierarchy { - /** The ID of the project. */ - projectId?: number; /** Details of an issue type hierarchy level. */ hierarchy?: ProjectIssueTypesHierarchyLevel[]; + /** The ID of the project. */ + projectId?: number; } diff --git a/src/version2/models/projectIssueTypeMapping.ts b/src/version2/models/projectIssueTypeMapping.ts index f30b1bc77b..fb89ce3e3a 100644 --- a/src/version2/models/projectIssueTypeMapping.ts +++ b/src/version2/models/projectIssueTypeMapping.ts @@ -1,7 +1,7 @@ /** The project and issue type mapping. */ export interface ProjectIssueTypeMapping { - /** The ID of the project. */ - projectId: string; /** The ID of the issue type. */ issueTypeId: string; + /** The ID of the project. */ + projectId: string; } diff --git a/src/version2/models/projectIssueTypes.ts b/src/version2/models/projectIssueTypes.ts index a712f1e06e..147fec84f3 100644 --- a/src/version2/models/projectIssueTypes.ts +++ b/src/version2/models/projectIssueTypes.ts @@ -2,7 +2,7 @@ import { ProjectId } from './projectId'; /** Projects and issue types where the status is used. Only available if the `usages` expand is requested. */ export interface ProjectIssueTypes { - project?: ProjectId; /** IDs of the issue types */ issueTypes?: string[]; + project?: ProjectId; } diff --git a/src/version2/models/projectIssueTypesHierarchyLevel.ts b/src/version2/models/projectIssueTypesHierarchyLevel.ts index fc19c54c23..c3e693bb55 100644 --- a/src/version2/models/projectIssueTypesHierarchyLevel.ts +++ b/src/version2/models/projectIssueTypesHierarchyLevel.ts @@ -8,10 +8,10 @@ export interface ProjectIssueTypesHierarchyLevel { * APIs](https://developer.atlassian.com/cloud/jira/platform/change-notice-removing-hierarchy-level-ids-from-next-gen-apis/). */ entityId?: string; + /** The list of issue types in the hierarchy level. */ + issueTypes?: IssueTypeInfo[]; /** The level of the issue type hierarchy level. */ level?: number; /** The name of the issue type hierarchy level. */ name?: string; - /** The list of issue types in the hierarchy level. */ - issueTypes?: IssueTypeInfo[]; } diff --git a/src/version2/models/projectLandingPageInfo.ts b/src/version2/models/projectLandingPageInfo.ts index f22604544e..4e306970b2 100644 --- a/src/version2/models/projectLandingPageInfo.ts +++ b/src/version2/models/projectLandingPageInfo.ts @@ -1,13 +1,13 @@ export interface ProjectLandingPageInfo { - url?: string; - projectKey?: string; - projectType?: string; attributes?: {}; - boardName?: string; - simpleBoard?: boolean; boardId?: number; + boardName?: string; + projectKey?: string; + projectType?: string; + queueCategory?: string; queueId?: number; queueName?: string; - queueCategory?: string; + simpleBoard?: boolean; simplified?: boolean; + url?: string; } diff --git a/src/version2/models/projectRole.ts b/src/version2/models/projectRole.ts index 4c81cd2957..78b9b5e365 100644 --- a/src/version2/models/projectRole.ts +++ b/src/version2/models/projectRole.ts @@ -3,25 +3,25 @@ import { Scope } from './scope'; /** Details about the roles in a project. */ export interface ProjectRole { - /** The URL the project role details. */ - self?: string; - /** The name of the project role. */ - name?: string; - /** The ID of the project role. */ - id?: number; - /** The description of the project role. */ - description?: string; /** The list of users who act in this role. */ actors?: RoleActor[]; - scope?: Scope; - /** The translated name of the project role. */ - translatedName?: string; - /** Whether the calling user is part of this role. */ - currentUserRole?: boolean; - /** Whether the roles are configurable for this project. */ - roleConfigurable?: boolean; /** Whether this role is the admin role for the project. */ admin?: boolean; + /** Whether the calling user is part of this role. */ + currentUserRole?: boolean; /** Whether this role is the default role for the project */ default?: boolean; + /** The description of the project role. */ + description?: string; + /** The ID of the project role. */ + id?: number; + /** The name of the project role. */ + name?: string; + /** Whether the roles are configurable for this project. */ + roleConfigurable?: boolean; + scope?: Scope; + /** The URL the project role details. */ + self?: string; + /** The translated name of the project role. */ + translatedName?: string; } diff --git a/src/version2/models/projectRoleDetails.ts b/src/version2/models/projectRoleDetails.ts index 2b42382288..868fa39578 100644 --- a/src/version2/models/projectRoleDetails.ts +++ b/src/version2/models/projectRoleDetails.ts @@ -2,21 +2,21 @@ import { Scope } from './scope'; /** Details about a project role. */ export interface ProjectRoleDetails { - /** The URL the project role details. */ - self?: string; - /** The name of the project role. */ - name?: string; - /** The ID of the project role. */ - id?: number; - /** The description of the project role. */ - description?: string; /** Whether this role is the admin role for the project. */ admin?: boolean; - scope?: Scope; + /** Whether this role is the default role for the project. */ + default?: boolean; + /** The description of the project role. */ + description?: string; + /** The ID of the project role. */ + id?: number; + /** The name of the project role. */ + name?: string; /** Whether the roles are configurable for this project. */ roleConfigurable?: boolean; + scope?: Scope; + /** The URL the project role details. */ + self?: string; /** The translated name of the project role. */ translatedName?: string; - /** Whether this role is the default role for the project. */ - default?: boolean; } diff --git a/src/version2/models/projectRoleGroup.ts b/src/version2/models/projectRoleGroup.ts index f2e93de888..75613784d4 100644 --- a/src/version2/models/projectRoleGroup.ts +++ b/src/version2/models/projectRoleGroup.ts @@ -2,8 +2,8 @@ export interface ProjectRoleGroup { /** The display name of the group. */ displayName?: string; - /** The name of the group. As a group's name can change, use of `groupId` is recommended to identify the group. */ - name?: string; /** The ID of the group. */ groupId?: string; + /** The name of the group. As a group's name can change, use of `groupId` is recommended to identify the group. */ + name?: string; } diff --git a/src/version2/models/projectScope.ts b/src/version2/models/projectScope.ts index 4d85efdb26..e7e4b43969 100644 --- a/src/version2/models/projectScope.ts +++ b/src/version2/models/projectScope.ts @@ -2,12 +2,12 @@ export type ProjectScopeBean = ProjectScope; export interface ProjectScope { - /** The ID of the project that the option's behavior applies to. */ - id?: number; /** * Defines the behavior of the option in the project.If notSelectable is set, the option cannot be set as the field's * value. This is useful for archiving an option that has previously been selected but shouldn't be used anymore.If * defaultValue is set, the option is selected by default. */ attributes?: string[]; + /** The ID of the project that the option's behavior applies to. */ + id?: number; } diff --git a/src/version2/models/projectType.ts b/src/version2/models/projectType.ts index 913163a038..4975b62cd7 100644 --- a/src/version2/models/projectType.ts +++ b/src/version2/models/projectType.ts @@ -1,13 +1,13 @@ /** Details about a project type. */ export interface ProjectType { - /** The key of the project type. */ - key: string; - /** The formatted key of the project type. */ - formattedKey: string; + /** The color of the project type. */ + color: string; /** The key of the project type's description. */ descriptionI18nKey: string; + /** The formatted key of the project type. */ + formattedKey: string; /** The icon of the project type. */ icon: string; - /** The color of the project type. */ - color: string; + /** The key of the project type. */ + key: string; } diff --git a/src/version2/models/propertyKey.ts b/src/version2/models/propertyKey.ts index 428973550c..d9a3b7015e 100644 --- a/src/version2/models/propertyKey.ts +++ b/src/version2/models/propertyKey.ts @@ -1,7 +1,7 @@ /** Property key details. */ export interface PropertyKey { - /** The URL of the property. */ - self?: string; /** The key of the property. */ key?: string; + /** The URL of the property. */ + self?: string; } diff --git a/src/version2/models/publishedWorkflowId.ts b/src/version2/models/publishedWorkflowId.ts index 535fb12889..49969b10cb 100644 --- a/src/version2/models/publishedWorkflowId.ts +++ b/src/version2/models/publishedWorkflowId.ts @@ -1,7 +1,7 @@ /** Properties that identify a published workflow. */ export interface PublishedWorkflowId { - /** The name of the workflow. */ - name: string; /** The entity ID of the workflow. */ entityId?: string; + /** The name of the workflow. */ + name: string; } diff --git a/src/version2/models/remoteIssueLink.ts b/src/version2/models/remoteIssueLink.ts index 362b92a6e2..40bb68945f 100644 --- a/src/version2/models/remoteIssueLink.ts +++ b/src/version2/models/remoteIssueLink.ts @@ -3,14 +3,14 @@ import { RemoteObject } from './remoteObject'; /** Details of an issue remote link. */ export interface RemoteIssueLink { - /** The ID of the link. */ - id?: number; - /** The URL of the link. */ - self?: string; + application?: Application; /** The global ID of the link, such as the ID of the item on the remote system. */ globalId?: string; - application?: Application; + /** The ID of the link. */ + id?: number; + object?: RemoteObject; /** Description of the relationship between the issue and the linked item. */ relationship?: string; - object?: RemoteObject; + /** The URL of the link. */ + self?: string; } diff --git a/src/version2/models/remoteObject.ts b/src/version2/models/remoteObject.ts index be26a2abe2..5bc5ebffef 100644 --- a/src/version2/models/remoteObject.ts +++ b/src/version2/models/remoteObject.ts @@ -3,12 +3,12 @@ import { Status } from './status'; /** The linked item. */ export interface RemoteObject { - /** The URL of the item. */ - url: string; - /** The title of the item. */ - title: string; - /** The summary details of the item. */ - summary?: string; icon?: Icon; status?: Status; + /** The summary details of the item. */ + summary?: string; + /** The title of the item. */ + title: string; + /** The URL of the item. */ + url: string; } diff --git a/src/version2/models/removeOptionFromIssuesResult.ts b/src/version2/models/removeOptionFromIssuesResult.ts index 9331f4d676..cf18ad7c2f 100644 --- a/src/version2/models/removeOptionFromIssuesResult.ts +++ b/src/version2/models/removeOptionFromIssuesResult.ts @@ -1,9 +1,9 @@ import { SimpleErrorCollection } from './simpleErrorCollection'; export interface RemoveOptionFromIssuesResult { + errors?: SimpleErrorCollection; /** The IDs of the modified issues. */ modifiedIssues?: number[]; /** The IDs of the unchanged issues, those issues where errors prevent modification. */ unmodifiedIssues?: number[]; - errors?: SimpleErrorCollection; } diff --git a/src/version2/models/reorderIssuePriorities.ts b/src/version2/models/reorderIssuePriorities.ts index 665ed43b97..34d5b850bb 100644 --- a/src/version2/models/reorderIssuePriorities.ts +++ b/src/version2/models/reorderIssuePriorities.ts @@ -1,9 +1,9 @@ /** Change the order of issue priorities. */ export interface ReorderIssuePriorities { - /** The list of issue IDs to be reordered. Cannot contain duplicates nor after ID. */ - ids: string[]; /** The ID of the priority. Required if `position` isn't provided. */ after?: string; + /** The list of issue IDs to be reordered. Cannot contain duplicates nor after ID. */ + ids: string[]; /** The position for issue priorities to be moved to. Required if `after` isn't provided. */ position?: string; } diff --git a/src/version2/models/reorderIssueResolutionsRequest.ts b/src/version2/models/reorderIssueResolutionsRequest.ts index c990234040..7537d0ead5 100644 --- a/src/version2/models/reorderIssueResolutionsRequest.ts +++ b/src/version2/models/reorderIssueResolutionsRequest.ts @@ -1,9 +1,9 @@ /** Change the order of issue resolutions. */ export interface ReorderIssueResolutionsRequest { - /** The list of resolution IDs to be reordered. Cannot contain duplicates nor after ID. */ - ids: string[]; /** The ID of the resolution. Required if `position` isn't provided. */ after?: string; + /** The list of resolution IDs to be reordered. Cannot contain duplicates nor after ID. */ + ids: string[]; /** The position for issue resolutions to be moved to. Required if `after` isn't provided. */ position?: string; } diff --git a/src/version2/models/roleActor.ts b/src/version2/models/roleActor.ts index 8069252dc5..2f4971749d 100644 --- a/src/version2/models/roleActor.ts +++ b/src/version2/models/roleActor.ts @@ -3,23 +3,23 @@ import { ProjectRoleUser } from './projectRoleUser'; /** Details about a user assigned to a project role. */ export interface RoleActor { - /** The ID of the role actor. */ - id?: number; + actorGroup?: ProjectRoleGroup; + actorUser?: ProjectRoleUser; + /** The avatar of the role actor. */ + avatarUrl?: string; /** * The display name of the role actor. For users, depending on the user’s privacy setting, this may return an * alternative value for the user's name. */ displayName?: string; - /** The type of role actor. */ - type?: string; + /** The ID of the role actor. */ + id?: number; /** * This property is no longer available and will be removed from the documentation soon. See the [deprecation * notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) * for details. */ name?: string; - /** The avatar of the role actor. */ - avatarUrl?: string; - actorUser?: ProjectRoleUser; - actorGroup?: ProjectRoleGroup; + /** The type of role actor. */ + type?: string; } diff --git a/src/version2/models/ruleConfiguration.ts b/src/version2/models/ruleConfiguration.ts index ecec49716a..bcd3aefc4c 100644 --- a/src/version2/models/ruleConfiguration.ts +++ b/src/version2/models/ruleConfiguration.ts @@ -1,7 +1,5 @@ /** A rule configuration. */ export interface RuleConfiguration { - /** Configuration of the rule, as it is stored by the Connect app on the rule configuration page. */ - value: string; /** EXPERIMENTAL: Whether the rule is disabled. */ disabled?: boolean; /** @@ -9,4 +7,6 @@ export interface RuleConfiguration { * configurations](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-workflow-transition-rules/#api-rest-api-3-workflow-rule-config-get). */ tag?: string; + /** Configuration of the rule, as it is stored by the Connect or the Forge app on the rule configuration page. */ + value: string; } diff --git a/src/version2/models/sanitizedJqlQuery.ts b/src/version2/models/sanitizedJqlQuery.ts index fe84f38438..3422332316 100644 --- a/src/version2/models/sanitizedJqlQuery.ts +++ b/src/version2/models/sanitizedJqlQuery.ts @@ -2,11 +2,11 @@ import { ErrorCollection } from './errorCollection'; /** Details of the sanitized JQL query. */ export interface SanitizedJqlQuery { + /** The account ID of the user for whom sanitization was performed. */ + accountId?: string; + errors?: ErrorCollection; /** The initial query. */ initialQuery?: string; /** The sanitized query, if there were no errors. */ sanitizedQuery?: string; - errors?: ErrorCollection; - /** The account ID of the user for whom sanitization was performed. */ - accountId?: string; } diff --git a/src/version2/models/scope.ts b/src/version2/models/scope.ts index 944ba58162..681461b6af 100644 --- a/src/version2/models/scope.ts +++ b/src/version2/models/scope.ts @@ -5,7 +5,7 @@ import { ProjectDetails } from './projectDetails'; * projects](https://confluence.atlassian.com/x/loMyO). */ export interface Scope { + project?: ProjectDetails; /** The type of scope. */ type?: string; - project?: ProjectDetails; } diff --git a/src/version2/models/screen.ts b/src/version2/models/screen.ts index 82c0d7211d..2d1529648e 100644 --- a/src/version2/models/screen.ts +++ b/src/version2/models/screen.ts @@ -2,11 +2,11 @@ import { Scope } from './scope'; /** A screen. */ export interface Screen { + /** The description of the screen. */ + description?: string; /** The ID of the screen. */ id?: number; /** The name of the screen. */ name?: string; - /** The description of the screen. */ - description?: string; scope?: Scope; } diff --git a/src/version2/models/screenDetails.ts b/src/version2/models/screenDetails.ts index 991b3fc0a1..5d2bdfb2ec 100644 --- a/src/version2/models/screenDetails.ts +++ b/src/version2/models/screenDetails.ts @@ -1,7 +1,7 @@ /** Details of a screen. */ export interface ScreenDetails { - /** The name of the screen. The name must be unique. The maximum length is 255 characters. */ - name: string; /** The description of the screen. The maximum length is 255 characters. */ description?: string; + /** The name of the screen. The name must be unique. The maximum length is 255 characters. */ + name: string; } diff --git a/src/version2/models/screenScheme.ts b/src/version2/models/screenScheme.ts index 3332909366..dc593a9e7d 100644 --- a/src/version2/models/screenScheme.ts +++ b/src/version2/models/screenScheme.ts @@ -3,12 +3,12 @@ import { ScreenTypes } from './screenTypes'; /** A screen scheme. */ export interface ScreenScheme { + /** The description of the screen scheme. */ + description?: string; /** The ID of the screen scheme. */ id?: number; + issueTypeScreenSchemes?: PageIssueTypeScreenScheme; /** The name of the screen scheme. */ name?: string; - /** The description of the screen scheme. */ - description?: string; screens?: ScreenTypes; - issueTypeScreenSchemes?: PageIssueTypeScreenScheme; } diff --git a/src/version2/models/screenSchemeDetails.ts b/src/version2/models/screenSchemeDetails.ts index 7461ff0801..89b8f2077d 100644 --- a/src/version2/models/screenSchemeDetails.ts +++ b/src/version2/models/screenSchemeDetails.ts @@ -2,9 +2,9 @@ import { ScreenTypes } from './screenTypes'; /** Details of a screen scheme. */ export interface ScreenSchemeDetails { - /** The name of the screen scheme. The name must be unique. The maximum length is 255 characters. */ - name: string; /** The description of the screen scheme. The maximum length is 255 characters. */ description?: string; + /** The name of the screen scheme. The name must be unique. The maximum length is 255 characters. */ + name: string; screens?: ScreenTypes; } diff --git a/src/version2/models/screenTypes.ts b/src/version2/models/screenTypes.ts index 933f4319cd..4feb7de6cf 100644 --- a/src/version2/models/screenTypes.ts +++ b/src/version2/models/screenTypes.ts @@ -1,11 +1,11 @@ /** The IDs of the screens for the screen types of the screen scheme. */ export interface ScreenTypes { - /** The ID of the edit screen. */ - edit?: number; /** The ID of the create screen. */ create?: number; - /** The ID of the view screen. */ - view?: number; /** The ID of the default screen. Required when creating a screen scheme. */ default?: number; + /** The ID of the edit screen. */ + edit?: number; + /** The ID of the view screen. */ + view?: number; } diff --git a/src/version2/models/screenWithTab.ts b/src/version2/models/screenWithTab.ts index f39dab72d6..afac145fea 100644 --- a/src/version2/models/screenWithTab.ts +++ b/src/version2/models/screenWithTab.ts @@ -3,12 +3,12 @@ import { ScreenableTab } from './screenableTab'; /** A screen with tab details. */ export interface ScreenWithTab { + /** The description of the screen. */ + description?: string; /** The ID of the screen. */ id?: number; /** The name of the screen. */ name?: string; - /** The description of the screen. */ - description?: string; scope?: Scope; tab?: ScreenableTab; } diff --git a/src/version2/models/searchAutoCompleteFilter.ts b/src/version2/models/searchAutoCompleteFilter.ts index f45752940c..05f16e5b6b 100644 --- a/src/version2/models/searchAutoCompleteFilter.ts +++ b/src/version2/models/searchAutoCompleteFilter.ts @@ -1,7 +1,7 @@ /** Details of how to filter and list search auto complete information. */ export interface SearchAutoCompleteFilter { - /** List of project IDs used to filter the visible field details returned. */ - projectIds?: number[]; /** Include collapsed fields for fields that have non-unique names. */ includeCollapsedFields?: boolean; + /** List of project IDs used to filter the visible field details returned. */ + projectIds?: number[]; } diff --git a/src/version2/models/searchResults.ts b/src/version2/models/searchResults.ts index 49911301ed..295b48280a 100644 --- a/src/version2/models/searchResults.ts +++ b/src/version2/models/searchResults.ts @@ -4,18 +4,18 @@ import { Issue } from './issue'; export interface SearchResults { /** Expand options that include additional search result details in the response. */ expand?: string; - /** The index of the first item returned on the page. */ - startAt?: number; - /** The maximum number of results that could be on the page. */ - maxResults?: number; - /** The number of results on the page. */ - total?: number; /** The list of issues found by the search. */ issues?: Issue[]; - /** Any warnings related to the JQL query. */ - warningMessages?: string[]; + /** The maximum number of results that could be on the page. */ + maxResults?: number; /** The ID and name of each field in the search results. */ names?: {}; /** The schema describing the field types in the search results. */ schema?: {}; + /** The index of the first item returned on the page. */ + startAt?: number; + /** The number of results on the page. */ + total?: number; + /** Any warnings related to the JQL query. */ + warningMessages?: string[]; } diff --git a/src/version2/models/securityLevel.ts b/src/version2/models/securityLevel.ts index 2fcafce9f8..47db4df159 100644 --- a/src/version2/models/securityLevel.ts +++ b/src/version2/models/securityLevel.ts @@ -1,11 +1,15 @@ /** Details of an issue level security item. */ export interface SecurityLevel { - /** The URL of the issue level security item. */ - self?: string; - /** The ID of the issue level security item. */ - id?: string; /** The description of the issue level security item. */ description?: string; + /** The ID of the issue level security item. */ + id?: string; + /** Whether the issue level security item is the default. */ + isDefault?: boolean; + /** The ID of the issue level security scheme. */ + issueSecuritySchemeId?: string; /** The name of the issue level security item. */ name?: string; + /** The URL of the issue level security item. */ + self?: string; } diff --git a/src/version2/models/securityLevelMember.ts b/src/version2/models/securityLevelMember.ts new file mode 100644 index 0000000000..4c2f05fc63 --- /dev/null +++ b/src/version2/models/securityLevelMember.ts @@ -0,0 +1,12 @@ +import { PermissionHolder } from './permissionHolder'; + +/** Issue security level member. */ +export interface SecurityLevelMember { + holder?: PermissionHolder; + /** The ID of the issue security level member. */ + id: string; + /** The ID of the issue security level. */ + issueSecurityLevelId: string; + /** The ID of the issue security scheme. */ + issueSecuritySchemeId: string; +} diff --git a/src/version2/models/securityScheme.ts b/src/version2/models/securityScheme.ts index 2e744250f8..b97cc9125e 100644 --- a/src/version2/models/securityScheme.ts +++ b/src/version2/models/securityScheme.ts @@ -2,15 +2,15 @@ import { SecurityLevel } from './securityLevel'; /** Details about a security scheme. */ export interface SecurityScheme { - /** The URL of the issue security scheme. */ - self?: string; + /** The ID of the default security level. */ + defaultSecurityLevelId?: number; + /** The description of the issue security scheme. */ + description?: string; /** The ID of the issue security scheme. */ id?: number; + levels?: SecurityLevel[]; /** The name of the issue security scheme. */ name?: string; - /** The description of the issue security scheme. */ - description?: string; - /** The ID of the default security level. */ - defaultSecurityLevelId?: number; - levels?: SecurityLevel[]; + /** The URL of the issue security scheme. */ + self?: string; } diff --git a/src/version2/models/securitySchemeId.ts b/src/version2/models/securitySchemeId.ts new file mode 100644 index 0000000000..dfaa746d08 --- /dev/null +++ b/src/version2/models/securitySchemeId.ts @@ -0,0 +1,5 @@ +/** The ID of the issue security scheme. */ +export interface SecuritySchemeId { + /** The ID of the issue security scheme. */ + id: string; +} diff --git a/src/version2/models/securitySchemeLevel.ts b/src/version2/models/securitySchemeLevel.ts new file mode 100644 index 0000000000..a1e5b28ac4 --- /dev/null +++ b/src/version2/models/securitySchemeLevel.ts @@ -0,0 +1,12 @@ +import { SecuritySchemeLevelMember } from './securitySchemeLevelMember'; + +export interface SecuritySchemeLevel { + /** The description of the issue security scheme level. */ + description?: string; + /** Specifies whether the level is the default level. False by default. */ + isDefault?: boolean; + /** The list of level members which should be added to the issue security scheme level. */ + members?: SecuritySchemeLevelMember[]; + /** The name of the issue security scheme level. Must be unique. */ + name: string; +} diff --git a/src/version2/models/securitySchemeLevelMember.ts b/src/version2/models/securitySchemeLevelMember.ts new file mode 100644 index 0000000000..5c57dc8522 --- /dev/null +++ b/src/version2/models/securitySchemeLevelMember.ts @@ -0,0 +1,6 @@ +export interface SecuritySchemeLevelMember { + /** The value corresponding to the specified member type. */ + parameter?: string; + /** The issue security level member type, e.g `reporter`, `group`, `user`. */ + type: 'reporter' | 'group' | 'user' | string; +} diff --git a/src/version2/models/securitySchemeMembersRequest.ts b/src/version2/models/securitySchemeMembersRequest.ts new file mode 100644 index 0000000000..bec2ba7de3 --- /dev/null +++ b/src/version2/models/securitySchemeMembersRequest.ts @@ -0,0 +1,7 @@ +import { SecuritySchemeLevelMember } from './securitySchemeLevelMember'; + +/** Details of issue security scheme level new members. */ +export interface SecuritySchemeMembersRequest { + /** The list of level members which should be added to the issue security scheme level. */ + members: SecuritySchemeLevelMember[]; +} diff --git a/src/version2/models/securitySchemeWithProjects.ts b/src/version2/models/securitySchemeWithProjects.ts new file mode 100644 index 0000000000..3726acea89 --- /dev/null +++ b/src/version2/models/securitySchemeWithProjects.ts @@ -0,0 +1,15 @@ +/** Details about an issue security scheme. */ +export interface SecuritySchemeWithProjects { + /** The default level ID of the issue security scheme. */ + defaultLevel?: number; + /** The description of the issue security scheme. */ + description?: string; + /** The ID of the issue security scheme. */ + id: number; + /** The name of the issue security scheme. */ + name: string; + /** The list of project IDs associated with the issue security scheme. */ + projectIds?: number[]; + /** The URL of the issue security scheme. */ + self: string; +} diff --git a/src/version2/models/serverInformation.ts b/src/version2/models/serverInformation.ts index 196bc17f4e..bd7c3bb1c5 100644 --- a/src/version2/models/serverInformation.ts +++ b/src/version2/models/serverInformation.ts @@ -4,22 +4,22 @@ import { HealthCheckResult } from './healthCheckResult'; export interface ServerInformation { /** The base URL of the Jira instance. */ baseUrl?: string; - /** The version of Jira. */ - version?: string; - /** The major, minor, and revision version numbers of the Jira version. */ - versionNumbers?: number[]; - /** The type of server deployment. This is always returned as _Cloud_. */ - deploymentType?: string; - /** The build number of the Jira version. */ - buildNumber?: number; /** The timestamp when the Jira version was built. */ buildDate?: string; - /** The time in Jira when this request was responded to. */ - serverTime?: string; + /** The build number of the Jira version. */ + buildNumber?: number; + /** The type of server deployment. This is always returned as _Cloud_. */ + deploymentType?: string; + /** Jira instance health check results. Deprecated and no longer returned. */ + healthChecks?: HealthCheckResult[]; /** The unique identifier of the Jira version. */ scmInfo?: string; + /** The time in Jira when this request was responded to. */ + serverTime?: string; /** The name of the Jira instance. */ serverTitle?: string; - /** @deprecated Jira instance health check results. Deprecated and no longer returned. */ - healthChecks?: HealthCheckResult[]; + /** The version of Jira. */ + version?: string; + /** The major, minor, and revision version numbers of the Jira version. */ + versionNumbers?: number[]; } diff --git a/src/version2/models/setDefaultLevelsRequest.ts b/src/version2/models/setDefaultLevelsRequest.ts new file mode 100644 index 0000000000..64888b0ce6 --- /dev/null +++ b/src/version2/models/setDefaultLevelsRequest.ts @@ -0,0 +1,7 @@ +import { DefaultLevelValue } from './defaultLevelValue'; + +/** Details of new default levels. */ +export interface SetDefaultLevelsRequest { + /** List of objects with issue security scheme ID and new default level ID. */ + defaultValues: DefaultLevelValue[]; +} diff --git a/src/version2/models/simpleErrorCollection.ts b/src/version2/models/simpleErrorCollection.ts index 76588932b7..d3920e1594 100644 --- a/src/version2/models/simpleErrorCollection.ts +++ b/src/version2/models/simpleErrorCollection.ts @@ -1,10 +1,10 @@ export interface SimpleErrorCollection { + /** The list of error messages produced by this operation. For example, "input parameter 'key' must be provided" */ + errorMessages?: string[]; /** * The list of errors by parameter returned by the operation. For example,"projectKey": "Project keys must start with * an uppercase letter, followed by one or more uppercase alphanumeric characters." */ errors?: {}; - /** The list of error messages produced by this operation. For example, "input parameter 'key' must be provided" */ - errorMessages?: string[]; httpStatusCode?: number; } diff --git a/src/version2/models/simpleLink.ts b/src/version2/models/simpleLink.ts index 8a208f78bf..6d5df0e364 100644 --- a/src/version2/models/simpleLink.ts +++ b/src/version2/models/simpleLink.ts @@ -1,10 +1,10 @@ /** Details about the operations available in this version. */ export interface SimpleLink { - id?: string; - styleClass?: string; + href?: string; iconClass?: string; + id?: string; label?: string; + styleClass?: string; title?: string; - href?: string; weight?: number; } diff --git a/src/version2/models/simpleListWrapperApplicationRole.ts b/src/version2/models/simpleListWrapperApplicationRole.ts index 0320fce728..2b7c171dcc 100644 --- a/src/version2/models/simpleListWrapperApplicationRole.ts +++ b/src/version2/models/simpleListWrapperApplicationRole.ts @@ -2,9 +2,9 @@ import { ApplicationRole } from './applicationRole'; import { ListWrapperCallbackApplicationRole } from './listWrapperCallbackApplicationRole'; export interface SimpleListWrapperApplicationRole { - size?: number; - items?: ApplicationRole[]; - pagingCallback?: ListWrapperCallbackApplicationRole; callback?: ListWrapperCallbackApplicationRole; + items?: ApplicationRole[]; 'max-results'?: number; + pagingCallback?: ListWrapperCallbackApplicationRole; + size?: number; } diff --git a/src/version2/models/simpleListWrapperGroupName.ts b/src/version2/models/simpleListWrapperGroupName.ts index d8b4abc96f..41323db360 100644 --- a/src/version2/models/simpleListWrapperGroupName.ts +++ b/src/version2/models/simpleListWrapperGroupName.ts @@ -2,9 +2,9 @@ import { GroupName } from './groupName'; import { ListWrapperCallbackGroupName } from './listWrapperCallbackGroupName'; export interface SimpleListWrapperGroupName { - size?: number; - items?: GroupName[]; - pagingCallback?: ListWrapperCallbackGroupName; callback?: ListWrapperCallbackGroupName; + items?: GroupName[]; 'max-results'?: number; + pagingCallback?: ListWrapperCallbackGroupName; + size?: number; } diff --git a/src/version2/models/status.ts b/src/version2/models/status.ts index feb6a52f14..973aaeb523 100644 --- a/src/version2/models/status.ts +++ b/src/version2/models/status.ts @@ -2,10 +2,10 @@ import { Icon } from './icon'; /** The status of the item. */ export interface Status { + icon?: Icon; /** * Whether the item is resolved. If set to "true", the link to the issue is displayed in a strikethrough font, * otherwise the link displays in normal font. */ resolved?: boolean; - icon?: Icon; } diff --git a/src/version2/models/statusCategory.ts b/src/version2/models/statusCategory.ts index 466cc93a26..40127eafb8 100644 --- a/src/version2/models/statusCategory.ts +++ b/src/version2/models/statusCategory.ts @@ -1,13 +1,13 @@ /** A status category. */ export interface StatusCategory { - /** The URL of the status category. */ - self?: string; + /** The name of the color used to represent the status category. */ + colorName?: string; /** The ID of the status category. */ id?: number; /** The key of the status category. */ key?: string; - /** The name of the color used to represent the status category. */ - colorName?: string; /** The name of the status category. */ name?: string; + /** The URL of the status category. */ + self?: string; } diff --git a/src/version2/models/statusCreate.ts b/src/version2/models/statusCreate.ts index b8b60f1435..2d2ccd1f1c 100644 --- a/src/version2/models/statusCreate.ts +++ b/src/version2/models/statusCreate.ts @@ -1,9 +1,9 @@ /** Details of the status being created. */ export interface StatusCreate { + /** The description of the status. */ + description?: string; /** The name of the status. */ name: string; /** The category of the status. */ statusCategory: string; - /** The description of the status. */ - description?: string; } diff --git a/src/version2/models/statusCreateRequest.ts b/src/version2/models/statusCreateRequest.ts index 05948a5bc7..89e1f041c0 100644 --- a/src/version2/models/statusCreateRequest.ts +++ b/src/version2/models/statusCreateRequest.ts @@ -3,7 +3,7 @@ import { StatusScope } from './statusScope'; /** Details of the statuses being created and their scope. */ export interface StatusCreateRequest { + scope: StatusScope; /** Details of the statuses being created. */ statuses: StatusCreate[]; - scope: StatusScope; } diff --git a/src/version2/models/statusDetails.ts b/src/version2/models/statusDetails.ts index cff803cfad..ee2c95c9af 100644 --- a/src/version2/models/statusDetails.ts +++ b/src/version2/models/statusDetails.ts @@ -2,15 +2,15 @@ import { StatusCategory } from './statusCategory'; /** A status. */ export interface StatusDetails { - /** The URL of the status. */ - self?: string; /** The description of the status. */ description?: string; /** The URL of the icon used to represent the status. */ iconUrl?: string; - /** The name of the status. */ - name?: string; /** The ID of the status. */ id?: string; + /** The name of the status. */ + name?: string; + /** The URL of the status. */ + self?: string; statusCategory?: StatusCategory; } diff --git a/src/version2/models/statusMapping.ts b/src/version2/models/statusMapping.ts index 774f225d6f..09d52508c3 100644 --- a/src/version2/models/statusMapping.ts +++ b/src/version2/models/statusMapping.ts @@ -2,8 +2,8 @@ export interface StatusMapping { /** The ID of the issue type. */ issueTypeId: string; - /** The ID of the status. */ - statusId: string; /** The ID of the new status. */ newStatusId: string; + /** The ID of the status. */ + statusId: string; } diff --git a/src/version2/models/statusScope.ts b/src/version2/models/statusScope.ts index 00007de4ef..58fec1109e 100644 --- a/src/version2/models/statusScope.ts +++ b/src/version2/models/statusScope.ts @@ -2,7 +2,7 @@ import { ProjectId } from './projectId'; /** The scope of the status. */ export interface StatusScope { + project?: ProjectId; /** The scope of the status. `GLOBAL` for company-managed projects and `PROJECT` for team-managed projects. */ type: string; - project?: ProjectId; } diff --git a/src/version2/models/statusUpdate.ts b/src/version2/models/statusUpdate.ts index 227db2b833..3b95673734 100644 --- a/src/version2/models/statusUpdate.ts +++ b/src/version2/models/statusUpdate.ts @@ -1,11 +1,11 @@ /** Details of the status being updated. */ export interface StatusUpdate { + /** The description of the status. */ + description?: string; /** The ID of the status. */ id: string; /** The name of the status. */ name: string; /** The category of the status. */ statusCategory: string; - /** The description of the status. */ - description?: string; } diff --git a/src/version2/models/suggestedIssue.ts b/src/version2/models/suggestedIssue.ts index 8d3fafe51b..c47d498b87 100644 --- a/src/version2/models/suggestedIssue.ts +++ b/src/version2/models/suggestedIssue.ts @@ -2,12 +2,12 @@ export interface SuggestedIssue { /** The ID of the issue. */ id?: number; + /** The URL of the issue type's avatar. */ + img?: string; /** The key of the issue. */ key?: string; /** The key of the issue in HTML format. */ keyHtml?: string; - /** The URL of the issue type's avatar. */ - img?: string; /** The phrase containing the query string in HTML format, with the string highlighted with HTML bold tags. */ summary?: string; /** The phrase containing the query string, as plain text. */ diff --git a/src/version2/models/taskProgressObject.ts b/src/version2/models/taskProgressObject.ts index 99ff7d9c4a..bed64af8a8 100644 --- a/src/version2/models/taskProgressObject.ts +++ b/src/version2/models/taskProgressObject.ts @@ -3,30 +3,30 @@ export type TaskProgressBeanObject = TaskProgressObject; /** Details about a task. */ export interface TaskProgressObject { - /** The URL of the task. */ - self: string; - /** The ID of the task. */ - id: string; /** The description of the task. */ description?: string; - /** The status of the task. */ - status: string; - /** Information about the progress of the task. */ - message?: string; - /** The result of the task execution. */ - result?: any; - /** The ID of the user who submitted the task. */ - submittedBy: number; - /** The progress of the task, as a percentage complete. */ - progress: number; /** The execution time of the task, in milliseconds. */ elapsedRuntime: number; - /** A timestamp recording when the task was submitted. */ - submitted: number; - /** A timestamp recording when the task was started. */ - started?: number; /** A timestamp recording when the task was finished. */ finished?: number; + /** The ID of the task. */ + id: string; /** A timestamp recording when the task progress was last updated. */ lastUpdate: number; + /** Information about the progress of the task. */ + message?: string; + /** The progress of the task, as a percentage complete. */ + progress: number; + /** The result of the task execution. */ + result?: {}; + /** The URL of the task. */ + self: string; + /** A timestamp recording when the task was started. */ + started?: number; + /** The status of the task. */ + status: string; + /** A timestamp recording when the task was submitted. */ + submitted: number; + /** The ID of the user who submitted the task. */ + submittedBy: number; } diff --git a/src/version2/models/taskProgressRemoveOptionFromIssuesResult.ts b/src/version2/models/taskProgressRemoveOptionFromIssuesResult.ts index 6b3fade998..41e9ad8c16 100644 --- a/src/version2/models/taskProgressRemoveOptionFromIssuesResult.ts +++ b/src/version2/models/taskProgressRemoveOptionFromIssuesResult.ts @@ -5,29 +5,29 @@ export type TaskProgressBeanRemoveOptionFromIssuesResult = TaskProgressRemoveOpt /** Details about a task. */ export interface TaskProgressRemoveOptionFromIssuesResult { - /** The URL of the task. */ - self: string; - /** The ID of the task. */ - id: string; /** The description of the task. */ description?: string; - /** The status of the task. */ - status: string; - /** Information about the progress of the task. */ - message?: string; - result?: RemoveOptionFromIssuesResult; - /** The ID of the user who submitted the task. */ - submittedBy: number; - /** The progress of the task, as a percentage complete. */ - progress: number; /** The execution time of the task, in milliseconds. */ elapsedRuntime: number; - /** A timestamp recording when the task was submitted. */ - submitted: number; - /** A timestamp recording when the task was started. */ - started?: number; /** A timestamp recording when the task was finished. */ finished?: number; + /** The ID of the task. */ + id: string; /** A timestamp recording when the task progress was last updated. */ lastUpdate: number; + /** Information about the progress of the task. */ + message?: string; + /** The progress of the task, as a percentage complete. */ + progress: number; + result?: RemoveOptionFromIssuesResult; + /** The URL of the task. */ + self: string; + /** A timestamp recording when the task was started. */ + started?: number; + /** The status of the task. */ + status: string; + /** A timestamp recording when the task was submitted. */ + submitted: number; + /** The ID of the user who submitted the task. */ + submittedBy: number; } diff --git a/src/version2/models/timeTrackingConfiguration.ts b/src/version2/models/timeTrackingConfiguration.ts index 5aa8413832..33cbcb7432 100644 --- a/src/version2/models/timeTrackingConfiguration.ts +++ b/src/version2/models/timeTrackingConfiguration.ts @@ -1,11 +1,11 @@ /** Details of the time tracking configuration. */ export interface TimeTrackingConfiguration { - /** The number of hours in a working day. */ - workingHoursPerDay: number; - /** The number of days in a working week. */ - workingDaysPerWeek: number; - /** The format that will appear on an issue's _Time Spent_ field. */ - timeFormat: string; /** The default unit of time applied to logged time. */ defaultUnit: string; + /** The format that will appear on an issue's _Time Spent_ field. */ + timeFormat: string; + /** The number of days in a working week. */ + workingDaysPerWeek: number; + /** The number of hours in a working day. */ + workingHoursPerDay: number; } diff --git a/src/version2/models/timeTrackingDetails.ts b/src/version2/models/timeTrackingDetails.ts index d781d7cc0f..7ce5e5ebeb 100644 --- a/src/version2/models/timeTrackingDetails.ts +++ b/src/version2/models/timeTrackingDetails.ts @@ -2,14 +2,14 @@ export interface TimeTrackingDetails { /** The original estimate of time needed for this issue in readable format. */ originalEstimate?: string; - /** The remaining estimate of time needed for this issue in readable format. */ - remainingEstimate?: string; - /** Time worked on this issue in readable format. */ - timeSpent?: string; /** The original estimate of time needed for this issue in seconds. */ originalEstimateSeconds?: number; + /** The remaining estimate of time needed for this issue in readable format. */ + remainingEstimate?: string; /** The remaining estimate of time needed for this issue in seconds. */ remainingEstimateSeconds?: number; + /** Time worked on this issue in readable format. */ + timeSpent?: string; /** Time worked on this issue in seconds. */ timeSpentSeconds?: number; } diff --git a/src/version2/models/timeTrackingProvider.ts b/src/version2/models/timeTrackingProvider.ts index fd3ad1b850..467569f53e 100644 --- a/src/version2/models/timeTrackingProvider.ts +++ b/src/version2/models/timeTrackingProvider.ts @@ -5,7 +5,7 @@ export interface TimeTrackingProvider { /** The name of the time tracking provider. For example, _JIRA provided time tracking_. */ name?: string; /** - * The URL of the configuration page for the time tracking provider app. For example, * /example/config/url*. This + * The URL of the configuration page for the time tracking provider app. For example, _/example/config/url_. This * property is only returned if the `adminPageKey` property is set in the module descriptor of the time tracking * provider app. */ diff --git a/src/version2/models/transition.ts b/src/version2/models/transition.ts index d73a766840..f32828e74c 100644 --- a/src/version2/models/transition.ts +++ b/src/version2/models/transition.ts @@ -3,20 +3,20 @@ import { WorkflowRules } from './workflowRules'; /** Details of a workflow transition. */ export interface Transition { - /** The ID of the transition. */ - id: string; - /** The name of the transition. */ - name: string; /** The description of the transition. */ description: string; /** The statuses the transition can start from. */ from: string[]; + /** The ID of the transition. */ + id: string; + /** The name of the transition. */ + name: string; + /** The properties of the transition. */ + properties?: {}; + rules?: WorkflowRules; + screen?: TransitionScreenDetails; /** The status the transition goes to. */ to: string; /** The type of the transition. */ type: string; - screen?: TransitionScreenDetails; - rules?: WorkflowRules; - /** The properties of the transition. */ - properties?: {}; } diff --git a/src/version2/models/uiModificationContextDetails.ts b/src/version2/models/uiModificationContextDetails.ts index 9d074c0073..1c6b64db17 100644 --- a/src/version2/models/uiModificationContextDetails.ts +++ b/src/version2/models/uiModificationContextDetails.ts @@ -2,12 +2,12 @@ export interface UiModificationContextDetails { /** The ID of the UI modification context. */ id?: string; - /** The project ID of the context. */ - projectId: string; + /** Whether a context is available. For example, when a project is deleted the context becomes unavailable. */ + isAvailable?: boolean; /** The issue type ID of the context. */ issueTypeId: string; + /** The project ID of the context. */ + projectId: string; /** The view type of the context. Only `GIC` (Global Issue Create) is supported. */ viewType: string; - /** Whether a context is available. For example, when a project is deleted the context becomes unavailable. */ - isAvailable?: boolean; } diff --git a/src/version2/models/uiModificationDetails.ts b/src/version2/models/uiModificationDetails.ts index 62abda4603..7475cf76a8 100644 --- a/src/version2/models/uiModificationDetails.ts +++ b/src/version2/models/uiModificationDetails.ts @@ -2,16 +2,16 @@ import { UiModificationContextDetails } from './uiModificationContextDetails'; /** The details of a UI modification. */ export interface UiModificationDetails { + /** List of contexts of the UI modification. The maximum number of contexts is 1000. */ + contexts?: UiModificationContextDetails[]; + /** The data of the UI modification. The maximum size of the data is 50000 characters. */ + data?: string; + /** The description of the UI modification. The maximum length is 255 characters. */ + description?: string; /** The ID of the UI modification. */ id: string; /** The name of the UI modification. The maximum length is 255 characters. */ name: string; - /** The description of the UI modification. The maximum length is 255 characters. */ - description?: string; /** The URL of the UI modification. */ self: string; - /** The data of the UI modification. The maximum size of the data is 50000 characters. */ - data?: string; - /** List of contexts of the UI modification. The maximum number of contexts is 1000. */ - contexts?: UiModificationContextDetails[]; } diff --git a/src/version2/models/updateCustomFieldDetails.ts b/src/version2/models/updateCustomFieldDetails.ts index 87188585ee..6e155fedd3 100644 --- a/src/version2/models/updateCustomFieldDetails.ts +++ b/src/version2/models/updateCustomFieldDetails.ts @@ -1,9 +1,9 @@ /** Details of a custom field. */ export interface UpdateCustomFieldDetails { - /** The name of the custom field. It doesn't have to be unique. The maximum length is 255 characters. */ - name?: string; /** The description of the custom field. The maximum length is 40000 characters. */ description?: string; + /** The name of the custom field. It doesn't have to be unique. The maximum length is 255 characters. */ + name?: string; /** * The searcher that defines the way the field is searched in Jira. It can be set to `null`, otherwise you must * specify the valid searcher for the field type, as listed below (abbreviated values shown): diff --git a/src/version2/models/updateFieldConfigurationSchemeDetails.ts b/src/version2/models/updateFieldConfigurationSchemeDetails.ts index eef0707d72..eb66779231 100644 --- a/src/version2/models/updateFieldConfigurationSchemeDetails.ts +++ b/src/version2/models/updateFieldConfigurationSchemeDetails.ts @@ -1,7 +1,7 @@ /** The details of the field configuration scheme. */ export interface UpdateFieldConfigurationSchemeDetails { - /** The name of the field configuration scheme. The name must be unique. */ - name: string; /** The description of the field configuration scheme. */ description?: string; + /** The name of the field configuration scheme. The name must be unique. */ + name: string; } diff --git a/src/version2/models/updateIssueSecurityLevelDetails.ts b/src/version2/models/updateIssueSecurityLevelDetails.ts new file mode 100644 index 0000000000..6cad319f39 --- /dev/null +++ b/src/version2/models/updateIssueSecurityLevelDetails.ts @@ -0,0 +1,7 @@ +/** Details of issue security scheme level. */ +export interface UpdateIssueSecurityLevelDetails { + /** The description of the issue security scheme level. */ + description?: string; + /** The name of the issue security scheme level. Must be unique. */ + name?: string; +} diff --git a/src/version2/models/updateIssueSecuritySchemeRequest.ts b/src/version2/models/updateIssueSecuritySchemeRequest.ts new file mode 100644 index 0000000000..86f0ba32e3 --- /dev/null +++ b/src/version2/models/updateIssueSecuritySchemeRequest.ts @@ -0,0 +1,6 @@ +export interface UpdateIssueSecuritySchemeRequest { + /** The description of the security scheme. */ + description?: string; + /** The name of the security scheme. Must be unique. */ + name?: string; +} diff --git a/src/version2/models/updatePriorityDetails.ts b/src/version2/models/updatePriorityDetails.ts index 7dccc516bd..ab3ed530a2 100644 --- a/src/version2/models/updatePriorityDetails.ts +++ b/src/version2/models/updatePriorityDetails.ts @@ -1,11 +1,11 @@ /** Details of an issue priority. */ export interface UpdatePriorityDetails { - /** The name of the priority. Must be unique. */ - name?: string; /** The description of the priority. */ description?: string; /** The URL of an icon for the priority. Accepted protocols are HTTP and HTTPS. Built in icons can also be used. */ iconUrl?: string; + /** The name of the priority. Must be unique. */ + name?: string; /** The status color of the priority in 3-digit or 6-digit hexadecimal format. */ statusColor?: string; } diff --git a/src/version2/models/updateProjectDetails.ts b/src/version2/models/updateProjectDetails.ts index fd7de62b3f..285d417df6 100644 --- a/src/version2/models/updateProjectDetails.ts +++ b/src/version2/models/updateProjectDetails.ts @@ -1,14 +1,28 @@ /** Details about the project. */ export interface UpdateProjectDetails { + /** The default assignee when creating issues for this project. */ + assigneeType?: string; + /** An integer value for the project's avatar. */ + avatarId?: number; + /** + * The ID of the project's category. A complete list of category IDs is found using the [Get all project + * categories](#api-rest-api-2-projectCategory-get) operation. To remove the project category from the project, set + * the value to `-1.` + */ + categoryId?: number; + /** A brief description of the project. */ + description?: string; + /** + * The ID of the issue security scheme for the project, which enables you to control who can and cannot view issues. + * Use the [Get issue security schemes](#api-rest-api-2-issuesecurityschemes-get) resource to get all issue security + * scheme IDs. + */ + issueSecurityScheme?: number; /** * Project keys must be unique and start with an uppercase letter followed by one or more uppercase alphanumeric * characters. The maximum length is 10 characters. */ key?: string; - /** The name of the project. */ - name?: string; - /** A brief description of the project. */ - description?: string; /** * This parameter is deprecated because of privacy changes. Use `leadAccountId` instead. See the [migration * guide](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) @@ -17,32 +31,18 @@ export interface UpdateProjectDetails { lead?: string; /** The account ID of the project lead. Cannot be provided with `lead`. */ leadAccountId?: string; - /** A link to information about this project, such as project documentation */ - url?: string; - /** The default assignee when creating issues for this project. */ - assigneeType?: string; - /** An integer value for the project's avatar. */ - avatarId?: number; - /** - * The ID of the issue security scheme for the project, which enables you to control who can and cannot view issues. - * Use the [Get issue security schemes](#api-rest-api-2-issuesecurityschemes-get) resource to get all issue security - * scheme IDs. - */ - issueSecurityScheme?: number; - /** - * The ID of the permission scheme for the project. Use the [Get all permission - * schemes](#api-rest-api-2-permissionscheme-get) resource to see a list of all permission scheme IDs. - */ - permissionScheme?: number; + /** The name of the project. */ + name?: string; /** * The ID of the notification scheme for the project. Use the [Get notification * schemes](#api-rest-api-2-notificationscheme-get) resource to get a list of notification scheme IDs. */ notificationScheme?: number; /** - * The ID of the project's category. A complete list of category IDs is found using the [Get all project - * categories](#api-rest-api-2-projectCategory-get) operation. To remove the project category from the project, set - * the value to `-1.` + * The ID of the permission scheme for the project. Use the [Get all permission + * schemes](#api-rest-api-2-permissionscheme-get) resource to see a list of all permission scheme IDs. */ - categoryId?: number; + permissionScheme?: number; + /** A link to information about this project, such as project documentation */ + url?: string; } diff --git a/src/version2/models/updateResolutionDetails.ts b/src/version2/models/updateResolutionDetails.ts index b137885771..3b244271b8 100644 --- a/src/version2/models/updateResolutionDetails.ts +++ b/src/version2/models/updateResolutionDetails.ts @@ -1,7 +1,7 @@ /** Details of an issue resolution. */ export interface UpdateResolutionDetails { - /** The name of the resolution. Must be unique. */ - name: string; /** The description of the resolution. */ description?: string; + /** The name of the resolution. Must be unique. */ + name: string; } diff --git a/src/version2/models/updateScreenDetails.ts b/src/version2/models/updateScreenDetails.ts index 5361b08b40..0cde2c0e0e 100644 --- a/src/version2/models/updateScreenDetails.ts +++ b/src/version2/models/updateScreenDetails.ts @@ -1,7 +1,7 @@ /** Details of a screen. */ export interface UpdateScreenDetails { - /** The name of the screen. The name must be unique. The maximum length is 255 characters. */ - name?: string; /** The description of the screen. The maximum length is 255 characters. */ description?: string; + /** The name of the screen. The name must be unique. The maximum length is 255 characters. */ + name?: string; } diff --git a/src/version2/models/updateScreenSchemeDetails.ts b/src/version2/models/updateScreenSchemeDetails.ts index ab5320e13c..c860adf7e9 100644 --- a/src/version2/models/updateScreenSchemeDetails.ts +++ b/src/version2/models/updateScreenSchemeDetails.ts @@ -2,9 +2,9 @@ import { UpdateScreenTypes } from './updateScreenTypes'; /** Details of a screen scheme. */ export interface UpdateScreenSchemeDetails { - /** The name of the screen scheme. The name must be unique. The maximum length is 255 characters. */ - name?: string; /** The description of the screen scheme. The maximum length is 255 characters. */ description?: string; + /** The name of the screen scheme. The name must be unique. The maximum length is 255 characters. */ + name?: string; screens?: UpdateScreenTypes; } diff --git a/src/version2/models/updateScreenTypes.ts b/src/version2/models/updateScreenTypes.ts index e9c245ad60..497c914da8 100644 --- a/src/version2/models/updateScreenTypes.ts +++ b/src/version2/models/updateScreenTypes.ts @@ -1,11 +1,11 @@ /** The IDs of the screens for the screen types of the screen scheme. */ export interface UpdateScreenTypes { - /** The ID of the edit screen. To remove the screen association, pass a null. */ - edit?: string; /** The ID of the create screen. To remove the screen association, pass a null. */ create?: string; - /** The ID of the view screen. To remove the screen association, pass a null. */ - view?: string; /** The ID of the default screen. When specified, must include a screen ID as a default screen is required. */ default?: string; + /** The ID of the edit screen. To remove the screen association, pass a null. */ + edit?: string; + /** The ID of the view screen. To remove the screen association, pass a null. */ + view?: string; } diff --git a/src/version2/models/updateUiModificationDetails.ts b/src/version2/models/updateUiModificationDetails.ts index 3df4eb860b..c3c63b2a9a 100644 --- a/src/version2/models/updateUiModificationDetails.ts +++ b/src/version2/models/updateUiModificationDetails.ts @@ -2,15 +2,15 @@ import { UiModificationContextDetails } from './uiModificationContextDetails'; /** The details of a UI modification. */ export interface UpdateUiModificationDetails { - /** The name of the UI modification. The maximum length is 255 characters. */ - name?: string; - /** The description of the UI modification. The maximum length is 255 characters. */ - description?: string; - /** The data of the UI modification. The maximum size of the data is 50000 characters. */ - data?: string; /** * List of contexts of the UI modification. The maximum number of contexts is 1000. If provided, replaces all existing * contexts. */ contexts?: UiModificationContextDetails[]; + /** The data of the UI modification. The maximum size of the data is 50000 characters. */ + data?: string; + /** The description of the UI modification. The maximum length is 255 characters. */ + description?: string; + /** The name of the UI modification. The maximum length is 255 characters. */ + name?: string; } diff --git a/src/version2/models/updateUserToGroup.ts b/src/version2/models/updateUserToGroup.ts index 722be3f988..7f0a8bded2 100644 --- a/src/version2/models/updateUserToGroup.ts +++ b/src/version2/models/updateUserToGroup.ts @@ -2,15 +2,15 @@ export type UpdateUserToGroupBean = UpdateUserToGroup; export interface UpdateUserToGroup { + /** + * The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, + * _5b10ac8d82e05b22cc7d4ef5_. + */ + accountId?: string; /** * This property is no longer available. See the [deprecation * notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) * for details. */ name?: string; - /** - * The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, - * _5b10ac8d82e05b22cc7d4ef5_. - */ - accountId?: string; } diff --git a/src/version2/models/updatedProjectCategory.ts b/src/version2/models/updatedProjectCategory.ts index df18808980..c61a84e949 100644 --- a/src/version2/models/updatedProjectCategory.ts +++ b/src/version2/models/updatedProjectCategory.ts @@ -1,11 +1,11 @@ /** A project category. */ export interface UpdatedProjectCategory { - /** The URL of the project category. */ - self?: string; - /** The ID of the project category. */ - id?: string; /** The name of the project category. */ description?: string; + /** The ID of the project category. */ + id?: string; /** The description of the project category. */ name?: string; + /** The URL of the project category. */ + self?: string; } diff --git a/src/version2/models/user.ts b/src/version2/models/user.ts index f5e4ae012c..aa421e2121 100644 --- a/src/version2/models/user.ts +++ b/src/version2/models/user.ts @@ -15,19 +15,11 @@ import { SimpleListWrapperGroupName } from './simpleListWrapperGroupName'; * fallback values. */ export interface User { - /** The URL of the user. */ - self?: string; - /** - * This property is no longer available and will be removed from the documentation soon. See the [deprecation - * notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) - * for details. - */ - key?: string; /** * The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, * _5b10ac8d82e05b22cc7d4ef5_. Required in requests. */ - accountId: string; + accountId?: string; /** * The user account type. Can take the following values: * @@ -35,28 +27,36 @@ export interface User { * represent external systems `customer` Jira Service Desk account representing an external service desk */ accountType?: string; + /** Whether the user is active. */ + active?: boolean; + applicationRoles?: SimpleListWrapperApplicationRole; + avatarUrls?: AvatarUrls; + /** The display name of the user. Depending on the user’s privacy setting, this may return an alternative value. */ + displayName?: string; + /** The email address of the user. Depending on the user’s privacy setting, this may be returned as null. */ + emailAddress?: string; + /** Expand options that include additional user details in the response. */ + expand?: string; + groups?: SimpleListWrapperGroupName; + /** + * This property is no longer available and will be removed from the documentation soon. See the [deprecation + * notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) + * for details. + */ + key?: string; + /** The locale of the user. Depending on the user’s privacy setting, this may be returned as null. */ + locale?: string; /** * This property is no longer available and will be removed from the documentation soon. See the [deprecation * notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) * for details. */ name?: string; - /** The email address of the user. Depending on the user’s privacy setting, this may be returned as null. */ - emailAddress?: string; - avatarUrls?: AvatarUrls; - /** The display name of the user. Depending on the user’s privacy setting, this may return an alternative value. */ - displayName?: string; - /** Whether the user is active. */ - active: boolean; + /** The URL of the user. */ + self?: string; /** * The time zone specified in the user's profile. Depending on the user’s privacy setting, this may be returned as * null. */ timeZone?: string; - /** The locale of the user. Depending on the user’s privacy setting, this may be returned as null. */ - locale?: string; - groups?: SimpleListWrapperGroupName; - applicationRoles?: SimpleListWrapperApplicationRole; - /** Expand options that include additional user details in the response. */ - expand?: string; } diff --git a/src/version2/models/userAvatarUrls.ts b/src/version2/models/userAvatarUrls.ts index e5dcc1436b..501874002f 100644 --- a/src/version2/models/userAvatarUrls.ts +++ b/src/version2/models/userAvatarUrls.ts @@ -2,12 +2,12 @@ export type UserBeanAvatarUrls = UserAvatarUrls; export interface UserAvatarUrls { - /** The URL of the user's 32x32 pixel avatar. */ - '32x32'?: string; /** The URL of the user's 16x16 pixel avatar. */ '16x16'?: string; /** The URL of the user's 24x24 pixel avatar. */ '24x24'?: string; + /** The URL of the user's 32x32 pixel avatar. */ + '32x32'?: string; /** The URL of the user's 48x48 pixel avatar. */ '48x48'?: string; } diff --git a/src/version2/models/userDetails.ts b/src/version2/models/userDetails.ts index bcc42c2042..8f848988b6 100644 --- a/src/version2/models/userDetails.ts +++ b/src/version2/models/userDetails.ts @@ -12,14 +12,23 @@ import { AvatarUrls } from './avatarUrls'; * fallback values. */ export interface UserDetails { - /** The URL of the user. */ - self?: string; /** - * This property is no longer available and will be removed from the documentation soon. See the [deprecation - * notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) - * for details. + * The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, + * _5b10ac8d82e05b22cc7d4ef5_. */ - name?: string; + accountId?: string; + /** + * The type of account represented by this user. This will be one of 'atlassian' (normal users), 'app' (application + * user) or 'customer' (Jira Service Desk customer user) + */ + accountType?: string; + /** Whether the user is active. */ + active?: boolean; + avatarUrls?: AvatarUrls; + /** The display name of the user. Depending on the user’s privacy settings, this may return an alternative value. */ + displayName?: string; + /** The email address of the user. Depending on the user’s privacy settings, this may be returned as null. */ + emailAddress?: string; /** * This property is no longer available and will be removed from the documentation soon. See the [deprecation * notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) @@ -27,25 +36,16 @@ export interface UserDetails { */ key?: string; /** - * The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, - * _5b10ac8d82e05b22cc7d4ef5_. + * This property is no longer available and will be removed from the documentation soon. See the [deprecation + * notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) + * for details. */ - accountId?: string; - /** The email address of the user. Depending on the user’s privacy settings, this may be returned as null. */ - emailAddress?: string; - avatarUrls?: AvatarUrls; - /** The display name of the user. Depending on the user’s privacy settings, this may return an alternative value. */ - displayName?: string; - /** Whether the user is active. */ - active?: boolean; + name?: string; + /** The URL of the user. */ + self?: string; /** * The time zone specified in the user's profile. Depending on the user’s privacy settings, this may be returned as * null. */ timeZone?: string; - /** - * The type of account represented by this user. This will be one of 'atlassian' (normal users), 'app' (application - * user) or 'customer' (Jira Service Desk customer user) - */ - accountType?: string; } diff --git a/src/version2/models/userKey.ts b/src/version2/models/userKey.ts index a1554d342c..71742646ad 100644 --- a/src/version2/models/userKey.ts +++ b/src/version2/models/userKey.ts @@ -1,15 +1,15 @@ /** List of user account IDs. */ export interface UserKey { - /** - * This property is no longer available and will be removed from the documentation soon. See the [deprecation - * notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) - * for details. - */ - key?: string; /** * The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, * _5b10ac8d82e05b22cc7d4ef5_. Returns _unknown_ if the record is deleted and corrupted, for example, as the result of * a server import. */ accountId?: string; + /** + * This property is no longer available and will be removed from the documentation soon. See the [deprecation + * notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) + * for details. + */ + key?: string; } diff --git a/src/version2/models/userList.ts b/src/version2/models/userList.ts index 772b28b9fb..851a952eb6 100644 --- a/src/version2/models/userList.ts +++ b/src/version2/models/userList.ts @@ -5,14 +5,14 @@ import { User } from './user'; * projects that the filter is shared with. */ export interface UserList { - /** The number of items on the page. */ - size?: number; + /** The index of the last item returned on the page. */ + 'end-index'?: number; /** The list of items. */ items?: User[]; /** The maximum number of results that could be on the page. */ 'max-results'?: number; + /** The number of items on the page. */ + size?: number; /** The index of the first item returned on the page. */ 'start-index'?: number; - /** The index of the last item returned on the page. */ - 'end-index'?: number; } diff --git a/src/version2/models/userMigration.ts b/src/version2/models/userMigration.ts index b9feb805f0..ca864fa95c 100644 --- a/src/version2/models/userMigration.ts +++ b/src/version2/models/userMigration.ts @@ -2,7 +2,7 @@ export type UserMigrationBean = UserMigration; export interface UserMigration { + accountId?: string; key?: string; username?: string; - accountId?: string; } diff --git a/src/version2/models/userPermission.ts b/src/version2/models/userPermission.ts index 95216c8729..2080cee4d8 100644 --- a/src/version2/models/userPermission.ts +++ b/src/version2/models/userPermission.ts @@ -1,5 +1,14 @@ /** Details of a permission and its availability to a user. */ export interface UserPermission { + /** + * Indicate whether the permission key is deprecated. Note that deprecated keys cannot be used in the `permissions + * parameter of Get my permissions. Deprecated keys are not returned by Get all permissions.` + */ + deprecatedKey?: boolean; + /** The description of the permission. */ + description?: string; + /** Whether the permission is available to the user in the queried context. */ + havePermission?: boolean; /** * The ID of the permission. Either `id` or `key` must be specified. Use [Get all * permissions](#api-rest-api-2-permissions-get) to get the list of permissions. @@ -14,13 +23,4 @@ export interface UserPermission { name?: string; /** The type of the permission. */ type?: string; - /** The description of the permission. */ - description?: string; - /** Whether the permission is available to the user in the queried context. */ - havePermission?: boolean; - /** - * Indicate whether the permission key is deprecated. Note that deprecated keys cannot be used in the `permissions - * parameter of Get my permissions. Deprecated keys are not returned by Get all permissions.` - */ - deprecatedKey?: boolean; } diff --git a/src/version2/models/userPickerUser.ts b/src/version2/models/userPickerUser.ts index 4038050008..30da187e5c 100644 --- a/src/version2/models/userPickerUser.ts +++ b/src/version2/models/userPickerUser.ts @@ -5,12 +5,15 @@ export interface UserPickerUser { * _5b10ac8d82e05b22cc7d4ef5_. */ accountId?: string; + /** The avatar URL of the user. */ + avatarUrl?: string; + /** The display name of the user. Depending on the user’s privacy setting, this may be returned as null. */ + displayName?: string; /** - * This property is no longer available . See the [deprecation - * notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) - * for details. + * The display name, email address, and key of the user with the matched query string highlighted with the HTML bold + * tag. */ - name?: string; + html?: string; /** * This property is no longer available. See the [deprecation * notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) @@ -18,12 +21,9 @@ export interface UserPickerUser { */ key?: string; /** - * The display name, email address, and key of the user with the matched query string highlighted with the HTML bold - * tag. + * This property is no longer available . See the [deprecation + * notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) + * for details. */ - html?: string; - /** The display name of the user. Depending on the user’s privacy setting, this may be returned as null. */ - displayName?: string; - /** The avatar URL of the user. */ - avatarUrl?: string; + name?: string; } diff --git a/src/version2/models/valueOperand.ts b/src/version2/models/valueOperand.ts index 533f8a5838..1858981057 100644 --- a/src/version2/models/valueOperand.ts +++ b/src/version2/models/valueOperand.ts @@ -1,5 +1,7 @@ /** An operand that is a user-provided value. */ export interface ValueOperand { + /** Encoded value, which can be used directly in a JQL query. */ + encodedValue?: string; /** The operand value. */ value: string; } diff --git a/src/version2/models/version.ts b/src/version2/models/version.ts index d2eaa56552..aa29e348c9 100644 --- a/src/version2/models/version.ts +++ b/src/version2/models/version.ts @@ -4,8 +4,8 @@ import { VersionIssuesStatus } from './versionIssuesStatus'; /** Details about a project version. */ export interface Version { /** - * Use [expand](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#expansion) to include additional information about version in the response. This parameter accepts a - * comma-separated list. Expand options include: + * Use [expand](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#expansion) to include additional + * information about version in the response. This parameter accepts a comma-separated list. Expand options include: * * - `operations` Returns the list of operations available for this version. * - `issuesstatus` Returns the count of issues in this version for each of the status categories _to do_, _in diff --git a/src/version2/models/versionIssueCounts.ts b/src/version2/models/versionIssueCounts.ts index 2510a6bac0..fe9c86d59d 100644 --- a/src/version2/models/versionIssueCounts.ts +++ b/src/version2/models/versionIssueCounts.ts @@ -2,14 +2,14 @@ import { VersionUsageInCustomField } from './versionUsageInCustomField'; /** Various counts of issues within a version. */ export interface VersionIssueCounts { - /** The URL of these count details. */ - self?: string; - /** Count of issues where the `fixVersion` is set to the version. */ - issuesFixedCount?: number; - /** Count of issues where the `affectedVersion` is set to the version. */ - issuesAffectedCount?: number; - /** Count of issues where a version custom field is set to the version. */ - issueCountWithCustomFieldsShowingVersion?: number; /** List of custom fields using the version. */ customFieldUsage?: VersionUsageInCustomField[]; + /** Count of issues where a version custom field is set to the version. */ + issueCountWithCustomFieldsShowingVersion?: number; + /** Count of issues where the `affectedVersion` is set to the version. */ + issuesAffectedCount?: number; + /** Count of issues where the `fixVersion` is set to the version. */ + issuesFixedCount?: number; + /** The URL of these count details. */ + self?: string; } diff --git a/src/version2/models/versionIssuesStatus.ts b/src/version2/models/versionIssuesStatus.ts index 830cdb496e..8962f12643 100644 --- a/src/version2/models/versionIssuesStatus.ts +++ b/src/version2/models/versionIssuesStatus.ts @@ -1,11 +1,11 @@ /** Counts of the number of issues in various statuses. */ export interface VersionIssuesStatus { - /** Count of issues with a status other than _to do_, _in progress_, and _done_. */ - unmapped?: number; - /** Count of issues with status _to do_. */ - toDo?: number; - /** Count of issues with status _in progress_. */ - inProgress?: number; /** Count of issues with status _done_. */ done?: number; + /** Count of issues with status _in progress_. */ + inProgress?: number; + /** Count of issues with status _to do_. */ + toDo?: number; + /** Count of issues with a status other than _to do_, _in progress_, and _done_. */ + unmapped?: number; } diff --git a/src/version2/models/versionUnresolvedIssuesCount.ts b/src/version2/models/versionUnresolvedIssuesCount.ts index a225de9d60..853227c3dd 100644 --- a/src/version2/models/versionUnresolvedIssuesCount.ts +++ b/src/version2/models/versionUnresolvedIssuesCount.ts @@ -1,9 +1,9 @@ /** Count of a version's unresolved issues. */ export interface VersionUnresolvedIssuesCount { - /** The URL of these count details. */ - self?: string; - /** Count of unresolved issues. */ - issuesUnresolvedCount?: number; /** Count of issues. */ issuesCount?: number; + /** Count of unresolved issues. */ + issuesUnresolvedCount?: number; + /** The URL of these count details. */ + self?: string; } diff --git a/src/version2/models/versionUsageInCustomField.ts b/src/version2/models/versionUsageInCustomField.ts index ca08f44fa6..5b8d6daa6c 100644 --- a/src/version2/models/versionUsageInCustomField.ts +++ b/src/version2/models/versionUsageInCustomField.ts @@ -1,9 +1,9 @@ /** List of custom fields using the version. */ export interface VersionUsageInCustomField { - /** The name of the custom field. */ - fieldName?: string; /** The ID of the custom field. */ customFieldId?: number; + /** The name of the custom field. */ + fieldName?: string; /** Count of the issues where the custom field contains the version. */ issueCountWithVersionInCustomField?: number; } diff --git a/src/version2/models/visibility.ts b/src/version2/models/visibility.ts index 34bdb217a5..59eb4b6d88 100644 --- a/src/version2/models/visibility.ts +++ b/src/version2/models/visibility.ts @@ -1,5 +1,7 @@ /** The group or role to which this item is visible. */ export interface Visibility { + /** The ID of the group or the name of the role that visibility of this item is restricted to. */ + identifier?: string; /** Whether visibility of this item is restricted to a group or role. */ type?: string; /** @@ -7,6 +9,4 @@ export interface Visibility { * is mutable, to reliably identify a group use `identifier`. */ value?: string; - /** The ID of the group or the name of the role that visibility of this item is restricted to. */ - identifier?: string; } diff --git a/src/version2/models/votes.ts b/src/version2/models/votes.ts index 6ebda28733..4bf3785e87 100644 --- a/src/version2/models/votes.ts +++ b/src/version2/models/votes.ts @@ -2,15 +2,15 @@ import { User } from './user'; /** The details of votes on an issue. */ export interface Votes { - /** The URL of these issue vote details. */ - self: string; - /** The number of votes on the issue. */ - votes: number; /** Whether the user making this request has voted on the issue. */ - hasVoted: boolean; + hasVoted?: boolean; + /** The URL of these issue vote details. */ + self?: string; /** * List of the users who have voted on this issue. An empty list is returned when the calling user doesn't have the * _View voters and watchers_ project permission. */ - voters: User[]; + voters?: User[]; + /** The number of votes on the issue. */ + votes?: number; } diff --git a/src/version2/models/warningCollection.ts b/src/version2/models/warningCollection.ts new file mode 100644 index 0000000000..2cc2f83d77 --- /dev/null +++ b/src/version2/models/warningCollection.ts @@ -0,0 +1,3 @@ +export interface WarningCollection { + warnings?: string[]; +} diff --git a/src/version2/models/watchers.ts b/src/version2/models/watchers.ts index 282914a9b2..2414477abc 100644 --- a/src/version2/models/watchers.ts +++ b/src/version2/models/watchers.ts @@ -2,10 +2,10 @@ import { UserDetails } from './userDetails'; /** The details of watchers on an issue. */ export interface Watchers { - /** The URL of these issue watcher details. */ - self?: string; /** Whether the calling user is watching this issue. */ isWatching?: boolean; + /** The URL of these issue watcher details. */ + self?: string; /** The number of users watching this issue. */ watchCount?: number; /** Details of the users watching this issue. */ diff --git a/src/version2/models/webhook.ts b/src/version2/models/webhook.ts index 68bcbcfd18..7886ad7274 100644 --- a/src/version2/models/webhook.ts +++ b/src/version2/models/webhook.ts @@ -1,26 +1,26 @@ /** A webhook. */ export interface Webhook { - /** The ID of the webhook. */ - id: number; - /** The JQL filter that specifies which issues the webhook is sent for. */ - jqlFilter: string; + /** The Jira events that trigger the webhook. */ + events: string[]; + /** + * The date after which the webhook is no longer sent. Use [Extend webhook + * life](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-webhooks/#api-rest-api-3-webhook-refresh-put) + * to extend the date. + */ + expirationDate?: number; /** * A list of field IDs. When the issue changelog contains any of the fields, the webhook `jira:issue_updated` is sent. * If this parameter is not present, the app is notified about all field updates. */ fieldIdsFilter?: string[]; + /** The ID of the webhook. */ + id: number; /** * A list of issue property keys. A change of those issue properties triggers the `issue_property_set` or * `issue_property_deleted` webhooks. If this parameter is not present, the app is notified about all issue property * updates. */ issuePropertyKeysFilter?: string[]; - /** The Jira events that trigger the webhook. */ - events: string[]; - /** - * The date after which the webhook is no longer sent. Use [Extend webhook - * life](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-webhooks/#api-rest-api-3-webhook-refresh-put) - * to extend the date. - */ - expirationDate?: number; + /** The JQL filter that specifies which issues the webhook is sent for. */ + jqlFilter: string; } diff --git a/src/version2/models/webhookDetails.ts b/src/version2/models/webhookDetails.ts index 651f7d4f2e..2fb3e0f981 100644 --- a/src/version2/models/webhookDetails.ts +++ b/src/version2/models/webhookDetails.ts @@ -1,14 +1,7 @@ /** A list of webhooks. */ export interface WebhookDetails { - /** - * The JQL filter that specifies which issues the webhook is sent for. Only a subset of JQL can be used. The supported - * elements are: - * - * Fields: `issueKey`, `project`, `issuetype`, `status`, `assignee`, `reporter`, `issue.property`, and `cf[id]`. For - * custom fields (`cf[id]`), only the epic label custom field is supported.". Operators: `=`, `!=`, `IN`, and `NOT - * IN`. - */ - jqlFilter: string; + /** The Jira events that trigger the webhook. */ + events: string[]; /** * A list of field IDs. When the issue changelog contains any of the fields, the webhook `jira:issue_updated` is sent. * If this parameter is not present, the app is notified about all field updates. @@ -20,6 +13,13 @@ export interface WebhookDetails { * updates. */ issuePropertyKeysFilter?: string[]; - /** The Jira events that trigger the webhook. */ - events: string[]; + /** + * The JQL filter that specifies which issues the webhook is sent for. Only a subset of JQL can be used. The supported + * elements are: + * + * Fields: `issueKey`, `project`, `issuetype`, `status`, `assignee`, `reporter`, `issue.property`, and `cf[id]`. For + * custom fields (`cf[id]`), only the epic label custom field is supported.". Operators: `=`, `!=`, `IN`, and `NOT + * IN`. + */ + jqlFilter: string; } diff --git a/src/version2/models/webhookRegistrationDetails.ts b/src/version2/models/webhookRegistrationDetails.ts index 5cd0672740..6894c2f7ab 100644 --- a/src/version2/models/webhookRegistrationDetails.ts +++ b/src/version2/models/webhookRegistrationDetails.ts @@ -2,11 +2,11 @@ import { WebhookDetails } from './webhookDetails'; /** Details of webhooks to register. */ export interface WebhookRegistrationDetails { - /** A list of webhooks. */ - webhooks: WebhookDetails[]; /** * The URL that specifies where to send the webhooks. This URL must use the same base URL as the Connect app. Only a * single URL per app is allowed to be registered. */ url: string; + /** A list of webhooks. */ + webhooks: WebhookDetails[]; } diff --git a/src/version2/models/workflow.ts b/src/version2/models/workflow.ts index 741cf819e8..596a7b27bf 100644 --- a/src/version2/models/workflow.ts +++ b/src/version2/models/workflow.ts @@ -7,24 +7,24 @@ import { WorkflowStatus } from './workflowStatus'; /** Details about a workflow. */ export interface Workflow { - id: PublishedWorkflowId; + /** The creation date of the workflow. */ + created?: string; /** The description of the workflow. */ description: string; - /** The transitions of the workflow. */ - transitions?: Transition[]; - /** The statuses of the workflow. */ - statuses?: WorkflowStatus[]; + /** Whether the workflow has a draft version. */ + hasDraftWorkflow?: boolean; + id: PublishedWorkflowId; /** Whether this is the default workflow. */ isDefault?: boolean; - /** The workflow schemes the workflow is assigned to. */ - schemes?: WorkflowSchemeIdName[]; + operations?: WorkflowOperations; /** The projects the workflow is assigned to, through workflow schemes. */ projects?: ProjectDetails[]; - /** Whether the workflow has a draft version. */ - hasDraftWorkflow?: boolean; - operations?: WorkflowOperations; - /** The creation date of the workflow. */ - created?: string; + /** The workflow schemes the workflow is assigned to. */ + schemes?: WorkflowSchemeIdName[]; + /** The statuses of the workflow. */ + statuses?: WorkflowStatus[]; + /** The transitions of the workflow. */ + transitions?: Transition[]; /** The last edited date of the workflow. */ updated?: string; } diff --git a/src/version2/models/workflowCompoundCondition.ts b/src/version2/models/workflowCompoundCondition.ts index 9e789d57fa..3c8787d804 100644 --- a/src/version2/models/workflowCompoundCondition.ts +++ b/src/version2/models/workflowCompoundCondition.ts @@ -2,9 +2,9 @@ import { WorkflowCondition } from './workflowCondition'; /** A compound workflow transition rule condition. This object returns `nodeType` as `compound`. */ export interface WorkflowCompoundCondition { - /** The compound condition operator. */ - operator: string; /** The list of workflow conditions. */ conditions: WorkflowCondition[]; nodeType: string; + /** The compound condition operator. */ + operator: string; } diff --git a/src/version2/models/workflowId.ts b/src/version2/models/workflowId.ts index 68da32eba7..b25bbdcd59 100644 --- a/src/version2/models/workflowId.ts +++ b/src/version2/models/workflowId.ts @@ -1,7 +1,7 @@ /** Properties that identify a workflow. */ export interface WorkflowId { - /** The name of the workflow. */ - name: string; /** Whether the workflow is in the draft state. */ draft: boolean; + /** The name of the workflow. */ + name: string; } diff --git a/src/version2/models/workflowOperations.ts b/src/version2/models/workflowOperations.ts index e65a37e2c1..e467c1befb 100644 --- a/src/version2/models/workflowOperations.ts +++ b/src/version2/models/workflowOperations.ts @@ -1,7 +1,7 @@ /** Operations allowed on a workflow */ export interface WorkflowOperations { - /** Whether the workflow can be updated. */ - canEdit: boolean; /** Whether the workflow can be deleted. */ canDelete: boolean; + /** Whether the workflow can be updated. */ + canEdit: boolean; } diff --git a/src/version2/models/workflowRules.ts b/src/version2/models/workflowRules.ts index 6556c77ed7..2ce45fba7b 100644 --- a/src/version2/models/workflowRules.ts +++ b/src/version2/models/workflowRules.ts @@ -9,8 +9,8 @@ export interface WorkflowRules { */ conditions?: WorkflowTransitionRule[]; conditionsTree?: WorkflowCondition; - /** The workflow validators. */ - validators?: WorkflowTransitionRule[]; /** The workflow post functions. */ postFunctions?: WorkflowTransitionRule[]; + /** The workflow validators. */ + validators?: WorkflowTransitionRule[]; } diff --git a/src/version2/models/workflowRulesSearch.ts b/src/version2/models/workflowRulesSearch.ts index 107febbb2a..e3ebc7b671 100644 --- a/src/version2/models/workflowRulesSearch.ts +++ b/src/version2/models/workflowRulesSearch.ts @@ -1,12 +1,12 @@ /** Details of the workflow and its transition rules. */ export interface WorkflowRulesSearch { - /** The workflow ID. */ - workflowEntityId: string; - /** The list of workflow rule IDs. */ - ruleIds: string[]; /** * Use expand to include additional information in the response. This parameter accepts `transition` which, for each * rule, returns information about the transition the rule is assigned to. */ expand?: string; + /** The list of workflow rule IDs. */ + ruleIds: string[]; + /** The workflow ID. */ + workflowEntityId: string; } diff --git a/src/version2/models/workflowRulesSearchDetails.ts b/src/version2/models/workflowRulesSearchDetails.ts index 882a2e1d3b..f5973ced5e 100644 --- a/src/version2/models/workflowRulesSearchDetails.ts +++ b/src/version2/models/workflowRulesSearchDetails.ts @@ -2,10 +2,10 @@ import { WorkflowTransitionRules } from './workflowTransitionRules'; /** Details of workflow transition rules. */ export interface WorkflowRulesSearchDetails { - /** The workflow ID. */ - workflowEntityId?: string; /** List of workflow rule IDs that do not belong to the workflow or can not be found. */ invalidRules?: string[]; /** List of valid workflow transition rules. */ validRules?: WorkflowTransitionRules[]; + /** The workflow ID. */ + workflowEntityId?: string; } diff --git a/src/version2/models/workflowScheme.ts b/src/version2/models/workflowScheme.ts index da6497af8d..7940c321cd 100644 --- a/src/version2/models/workflowScheme.ts +++ b/src/version2/models/workflowScheme.ts @@ -2,26 +2,36 @@ import { User } from './user'; /** Details about a workflow scheme. */ export interface WorkflowScheme { - /** The ID of the workflow scheme. */ - id?: number; - /** - * The name of the workflow scheme. The name must be unique. The maximum length is 255 characters. Required when - * creating a workflow scheme. - */ - name?: string; - /** The description of the workflow scheme. */ - description?: string; /** * The name of the default workflow for the workflow scheme. The default workflow has _All Unassigned Issue Types_ * assigned to it in Jira. If `defaultWorkflow` is not specified when creating a workflow scheme, it is set to _Jira * Workflow (jira)_. */ defaultWorkflow?: string; + /** The description of the workflow scheme. */ + description?: string; + /** Whether the workflow scheme is a draft or not. */ + draft?: boolean; + /** The ID of the workflow scheme. */ + id?: number; /** * The issue type to workflow mappings, where each mapping is an issue type ID and workflow name pair. Note that an * issue type can only be mapped to one workflow in a workflow scheme. */ issueTypeMappings?: {}; + /** The issue types available in Jira. */ + issueTypes?: {}; + /** + * The date-time that the draft workflow scheme was last modified. A modification is a change to the issue + * type-project mappings only. This property does not apply to non-draft workflows. + */ + lastModified?: string; + lastModifiedUser?: User; + /** + * The name of the workflow scheme. The name must be unique. The maximum length is 255 characters. Required when + * creating a workflow scheme. + */ + name?: string; /** * For draft workflow schemes, this property is the name of the default workflow for the original workflow scheme. The * default workflow has _All Unassigned Issue Types_ assigned to it in Jira. @@ -33,14 +43,6 @@ export interface WorkflowScheme { * workflow in a workflow scheme. */ originalIssueTypeMappings?: {}; - /** Whether the workflow scheme is a draft or not. */ - draft?: boolean; - lastModifiedUser?: User; - /** - * The date-time that the draft workflow scheme was last modified. A modification is a change to the issue - * type-project mappings only. This property does not apply to non-draft workflows. - */ - lastModified?: string; self?: string; /** * Whether to create or update a draft workflow scheme when updating an active workflow scheme. An active workflow @@ -53,9 +55,7 @@ export interface WorkflowScheme { * scheme with `updateDraftIfNeeded` set to `true`: The workflow scheme is updated, as inactive workflow schemes do * not require drafts to update. * - * Defaults to `false`. + * Defaults to `false`. */ updateDraftIfNeeded?: boolean; - /** The issue types available in Jira. */ - issueTypes?: {}; } diff --git a/src/version2/models/workflowSchemeProjectAssociation.ts b/src/version2/models/workflowSchemeProjectAssociation.ts index 204ec4bee7..ab997e2efa 100644 --- a/src/version2/models/workflowSchemeProjectAssociation.ts +++ b/src/version2/models/workflowSchemeProjectAssociation.ts @@ -1,10 +1,10 @@ /** An associated workflow scheme and project. */ export interface WorkflowSchemeProjectAssociation { + /** The ID of the project. */ + projectId: string; /** * The ID of the workflow scheme. If the workflow scheme ID is `null`, the operation assigns the default workflow * scheme. */ workflowSchemeId?: string; - /** The ID of the project. */ - projectId: string; } diff --git a/src/version2/models/workflowSimpleCondition.ts b/src/version2/models/workflowSimpleCondition.ts index 7a0910b057..1a36a97ca0 100644 --- a/src/version2/models/workflowSimpleCondition.ts +++ b/src/version2/models/workflowSimpleCondition.ts @@ -1,8 +1,8 @@ /** A workflow transition rule condition. This object returns `nodeType` as `simple`. */ export interface WorkflowSimpleCondition { - /** The type of the transition rule. */ - type: string; /** EXPERIMENTAL. The configuration of the transition rule. */ configuration?: {}; nodeType: string; + /** The type of the transition rule. */ + type: string; } diff --git a/src/version2/models/workflowTransitionProperty.ts b/src/version2/models/workflowTransitionProperty.ts index 421a83c0a3..e3d385ded9 100644 --- a/src/version2/models/workflowTransitionProperty.ts +++ b/src/version2/models/workflowTransitionProperty.ts @@ -1,9 +1,9 @@ /** Details about the server Jira is running on. */ export interface WorkflowTransitionProperty { + /** The ID of the transition property. */ + id?: string; /** The key of the transition property. Also known as the name of the transition property. */ key?: string; /** The value of the transition property. */ value: string; - /** The ID of the transition property. */ - id?: string; } diff --git a/src/version2/models/workflowTransitionRule.ts b/src/version2/models/workflowTransitionRule.ts index 3906a222a4..71acbd7ce0 100644 --- a/src/version2/models/workflowTransitionRule.ts +++ b/src/version2/models/workflowTransitionRule.ts @@ -1,7 +1,7 @@ /** A workflow transition rule. */ export interface WorkflowTransitionRule { - /** The type of the transition rule. */ - type: string; /** EXPERIMENTAL. The configuration of the transition rule. */ configuration?: any; + /** The type of the transition rule. */ + type: string; } diff --git a/src/version2/models/workflowTransitionRulesUpdateErrorDetails.ts b/src/version2/models/workflowTransitionRulesUpdateErrorDetails.ts index c3c2e1b683..1163412b28 100644 --- a/src/version2/models/workflowTransitionRulesUpdateErrorDetails.ts +++ b/src/version2/models/workflowTransitionRulesUpdateErrorDetails.ts @@ -2,7 +2,6 @@ import { WorkflowId } from './workflowId'; /** Details of any errors encountered while updating workflow transition rules for a workflow. */ export interface WorkflowTransitionRulesUpdateErrorDetails { - workflowId: WorkflowId; /** * A list of transition rule update errors, indexed by the transition rule ID. Any transition rule that appears here * wasn't updated. @@ -13,4 +12,5 @@ export interface WorkflowTransitionRulesUpdateErrorDetails { * any entries. */ updateErrors: string[]; + workflowId: WorkflowId; } diff --git a/src/version2/models/worklog.ts b/src/version2/models/worklog.ts index a41235d806..a4d1f7c83d 100644 --- a/src/version2/models/worklog.ts +++ b/src/version2/models/worklog.ts @@ -4,17 +4,19 @@ import { Visibility } from './visibility'; /** Details of a worklog. */ export interface Worklog { - /** The URL of the worklog item. */ - self?: string; author?: UserDetails; - updateAuthor?: UserDetails; /** A comment about the worklog. Optional when creating or updating a worklog. */ comment?: string; /** The datetime on which the worklog was created. */ created?: string; - /** The datetime on which the worklog was last updated. */ - updated?: string; - visibility?: Visibility; + /** The ID of the worklog record. */ + id?: string; + /** The ID of the issue this worklog is for. */ + issueId?: string; + /** Details of properties for the worklog. Optional when creating or updating a worklog. */ + properties?: EntityProperty[]; + /** The URL of the worklog item. */ + self?: string; /** * The datetime on which the worklog effort was started. Required when creating a worklog. Optional when updating a * worklog. @@ -31,10 +33,8 @@ export interface Worklog { * Optional when updating a worklog. Cannot be provided if `timeSpent` is provided. */ timeSpentSeconds?: number; - /** The ID of the worklog record. */ - id?: string; - /** The ID of the issue this worklog is for. */ - issueId?: string; - /** Details of properties for the worklog. Optional when creating or updating a worklog. */ - properties?: EntityProperty[]; + updateAuthor?: UserDetails; + /** The datetime on which the worklog was last updated. */ + updated?: string; + visibility?: Visibility; } diff --git a/src/version2/parameters/addSecurityLevel.ts b/src/version2/parameters/addSecurityLevel.ts new file mode 100644 index 0000000000..ed915fa92c --- /dev/null +++ b/src/version2/parameters/addSecurityLevel.ts @@ -0,0 +1,6 @@ +import { AddSecuritySchemeLevelsRequest } from '../models'; + +export interface AddSecurityLevel extends AddSecuritySchemeLevelsRequest { + /** The ID of the issue security scheme. */ + schemeId: string; +} diff --git a/src/version2/parameters/addSecurityLevelMembers.ts b/src/version2/parameters/addSecurityLevelMembers.ts new file mode 100644 index 0000000000..ac1a26e84d --- /dev/null +++ b/src/version2/parameters/addSecurityLevelMembers.ts @@ -0,0 +1,8 @@ +import { SecuritySchemeMembersRequest } from '../models'; + +export interface AddSecurityLevelMembers extends SecuritySchemeMembersRequest { + /** The ID of the issue security scheme. */ + schemeId: string; + /** The ID of the issue security level. */ + levelId: string; +} diff --git a/src/version2/parameters/createIssueSecurityScheme.ts b/src/version2/parameters/createIssueSecurityScheme.ts new file mode 100644 index 0000000000..0f290307b4 --- /dev/null +++ b/src/version2/parameters/createIssueSecurityScheme.ts @@ -0,0 +1,3 @@ +import { CreateIssueSecuritySchemeDetails } from '../models'; + +export interface CreateIssueSecurityScheme extends CreateIssueSecuritySchemeDetails {} diff --git a/src/version2/parameters/deleteAppProperty.ts b/src/version2/parameters/deleteAppProperty.ts new file mode 100644 index 0000000000..91efe84b73 --- /dev/null +++ b/src/version2/parameters/deleteAppProperty.ts @@ -0,0 +1,4 @@ +export interface DeleteAppProperty { + /** The key of the property. */ + propertyKey: string; +} diff --git a/src/version2/parameters/deleteSecurityScheme.ts b/src/version2/parameters/deleteSecurityScheme.ts new file mode 100644 index 0000000000..6951711e73 --- /dev/null +++ b/src/version2/parameters/deleteSecurityScheme.ts @@ -0,0 +1,4 @@ +export interface DeleteSecurityScheme { + /** The ID of the issue security scheme. */ + schemeId: string; +} diff --git a/src/version2/parameters/getSecurityLevelMembers.ts b/src/version2/parameters/getSecurityLevelMembers.ts new file mode 100644 index 0000000000..662f599876 --- /dev/null +++ b/src/version2/parameters/getSecurityLevelMembers.ts @@ -0,0 +1,40 @@ +export interface GetSecurityLevelMembers { + /** The index of the first item to return in a page of results (page offset). */ + startAt?: string; + /** The maximum number of items to return per page. */ + maxResults?: string; + /** + * The list of issue security level member IDs. To include multiple issue security level members separate IDs with an + * ampersand: `id=10000&id=10001`. + */ + id?: string | string[]; + /** + * The list of issue security scheme IDs. To include multiple issue security schemes separate IDs with an ampersand: + * `schemeId=10000&schemeId=10001`. + */ + schemeId?: string | string[]; + /** + * The list of issue security level IDs. To include multiple issue security levels separate IDs with an ampersand: + * `levelId=10000&levelId=10001`. + */ + levelId?: string | string[]; + /** + * Use expand to include additional information in the response. This parameter accepts a comma-separated list. Expand + * options include: + * + * - `all` Returns all expandable information + * - `field` Returns information about the custom field granted the permission + * - `group` Returns information about the group that is granted the permission + * - `projectRole` Returns information about the project role granted the permission + * - `user` Returns information about the user who is granted the permission + */ + expand?: + | 'all' + | 'field' + | 'group' + | 'projectRole' + | 'user' + | ('all' | 'field' | 'group' | 'projectRole' | 'user')[] + | string + | string[]; +} diff --git a/src/version2/parameters/getSecurityLevels.ts b/src/version2/parameters/getSecurityLevels.ts new file mode 100644 index 0000000000..7b2fccad02 --- /dev/null +++ b/src/version2/parameters/getSecurityLevels.ts @@ -0,0 +1,21 @@ +export interface GetSecurityLevels { + /** The index of the first item to return in a page of results (page offset). */ + startAt?: string; + /** The maximum number of items to return per page. */ + maxResults?: string; + /** + * The list of issue security scheme level IDs. To include multiple issue security levels, separate IDs with an + * ampersand: `id=10000&id=10001`. + */ + id?: string | string[]; + /** + * The list of issue security scheme IDs. To include multiple issue security schemes, separate IDs with an ampersand: + * `schemeId=10000&schemeId=10001`. + */ + schemeId?: string | string[]; + /** + * When set to true, returns multiple default levels for each security scheme containing a default. If you provide + * scheme and level IDs not associated with the default, returns an empty page. The default value is false. + */ + onlyDefault?: boolean; +} diff --git a/src/version2/parameters/index.ts b/src/version2/parameters/index.ts index 334dc21c09..c25ff2dd10 100644 --- a/src/version2/parameters/index.ts +++ b/src/version2/parameters/index.ts @@ -9,6 +9,8 @@ export * from './addNotifications'; export * from './addProjectRoleActorsToRole'; export * from './addScreenTab'; export * from './addScreenTabField'; +export * from './addSecurityLevel'; +export * from './addSecurityLevelMembers'; export * from './addSharePermission'; export * from './addUserToGroup'; export * from './addVote'; @@ -50,6 +52,7 @@ export * from './createIssueAdjustment'; export * from './createIssueFieldOption'; export * from './createIssueLinkType'; export * from './createIssues'; +export * from './createIssueSecurityScheme'; export * from './createIssueType'; export * from './createIssueTypeAvatar'; export * from './createIssueTypeScheme'; @@ -77,6 +80,7 @@ export * from './createWorkflowTransitionProperty'; export * from './deleteActor'; export * from './deleteAddonProperty'; export * from './deleteAndReplaceVersion'; +export * from './deleteAppProperty'; export * from './deleteAvatar'; export * from './deleteComment'; export * from './deleteCommentProperty'; @@ -120,6 +124,7 @@ export * from './deleteResolution'; export * from './deleteScreen'; export * from './deleteScreenScheme'; export * from './deleteScreenTab'; +export * from './deleteSecurityScheme'; export * from './deleteSharePermission'; export * from './deleteStatusesById'; export * from './deleteUiModification'; @@ -293,6 +298,8 @@ export * from './getResolution'; export * from './getScreens'; export * from './getScreenSchemes'; export * from './getScreensForField'; +export * from './getSecurityLevelMembers'; +export * from './getSecurityLevels'; export * from './getSecurityLevelsForProject'; export * from './getSelectableIssueFieldOptions'; export * from './getSharePermission'; @@ -347,6 +354,7 @@ export * from './parseJqlQueries'; export * from './partialUpdateProjectRole'; export * from './publishDraftWorkflowScheme'; export * from './putAddonProperty'; +export * from './putAppProperty'; export * from './refreshWebhooks'; export * from './registerDynamicWebhooks'; export * from './registerModules'; @@ -357,7 +365,9 @@ export * from './removeGroup'; export * from './removeIssueTypeFromIssueTypeScheme'; export * from './removeIssueTypesFromContext'; export * from './removeIssueTypesFromGlobalFieldConfigurationScheme'; +export * from './removeLevel'; export * from './removeMappingsFromIssueTypeScreenScheme'; +export * from './removeMemberFromSecurityLevel'; export * from './removeModules'; export * from './removeNotificationFromNotificationScheme'; export * from './removePreference'; @@ -381,7 +391,9 @@ export * from './searchForIssuesUsingJql'; export * from './searchForIssuesUsingJqlPost'; export * from './searchPriorities'; export * from './searchProjects'; +export * from './searchProjectsUsingSecuritySchemes'; export * from './searchResolutions'; +export * from './searchSecuritySchemes'; export * from './selectTimeTrackingImplementation'; export * from './setActors'; export * from './setApplicationProperty'; @@ -389,6 +401,7 @@ export * from './setBanner'; export * from './setColumns'; export * from './setCommentProperty'; export * from './setDashboardItemProperty'; +export * from './setDefaultLevels'; export * from './setDefaultPriority'; export * from './setDefaultResolution'; export * from './setDefaultShareScope'; @@ -433,6 +446,7 @@ export * from './updateIssueAdjustment'; export * from './updateIssueFieldOption'; export * from './updateIssueFields'; export * from './updateIssueLinkType'; +export * from './updateIssueSecurityScheme'; export * from './updateIssueType'; export * from './updateIssueTypeScheme'; export * from './updateIssueTypeScreenScheme'; @@ -450,6 +464,7 @@ export * from './updateRemoteIssueLink'; export * from './updateResolution'; export * from './updateScreen'; export * from './updateScreenScheme'; +export * from './updateSecurityLevel'; export * from './updateStatuses'; export * from './updateUiModification'; export * from './updateVersion'; diff --git a/src/version2/parameters/putAddonProperty.ts b/src/version2/parameters/putAddonProperty.ts index 0199699cdb..b0028afd94 100644 --- a/src/version2/parameters/putAddonProperty.ts +++ b/src/version2/parameters/putAddonProperty.ts @@ -3,5 +3,8 @@ export interface PutAddonProperty { addonKey: string; /** The key of the property. */ propertyKey: string; + propertyValue: any; + + /** @deprecated */ property: any; } diff --git a/src/version2/parameters/putAppProperty.ts b/src/version2/parameters/putAppProperty.ts new file mode 100644 index 0000000000..38672db96f --- /dev/null +++ b/src/version2/parameters/putAppProperty.ts @@ -0,0 +1,5 @@ +export interface PutAppProperty { + /** The key of the property. */ + propertyKey: string; + propertyValue: any; +} diff --git a/src/version2/parameters/removeLevel.ts b/src/version2/parameters/removeLevel.ts new file mode 100644 index 0000000000..571f2e800f --- /dev/null +++ b/src/version2/parameters/removeLevel.ts @@ -0,0 +1,8 @@ +export interface RemoveLevel { + /** The ID of the issue security scheme. */ + schemeId: string; + /** The ID of the issue security level to remove. */ + levelId: string; + /** The ID of the issue security level that will replace the currently selected level. */ + replaceWith?: string; +} diff --git a/src/version2/parameters/removeMemberFromSecurityLevel.ts b/src/version2/parameters/removeMemberFromSecurityLevel.ts new file mode 100644 index 0000000000..6a880e85e2 --- /dev/null +++ b/src/version2/parameters/removeMemberFromSecurityLevel.ts @@ -0,0 +1,8 @@ +export interface RemoveMemberFromSecurityLevel { + /** The ID of the issue security scheme. */ + schemeId: string; + /** The ID of the issue security level. */ + levelId: string; + /** The ID of the issue security level member to be removed. */ + memberId: string; +} diff --git a/src/version2/parameters/searchProjectsUsingSecuritySchemes.ts b/src/version2/parameters/searchProjectsUsingSecuritySchemes.ts new file mode 100644 index 0000000000..6e2ee07020 --- /dev/null +++ b/src/version2/parameters/searchProjectsUsingSecuritySchemes.ts @@ -0,0 +1,10 @@ +export interface SearchProjectsUsingSecuritySchemes { + /** The index of the first item to return in a page of results (page offset). */ + startAt?: string; + /** The maximum number of items to return per page. */ + maxResults?: string; + /** The list of security scheme IDs to be filtered out. */ + issueSecuritySchemeId?: string[]; + /** The list of project IDs to be filtered out. */ + projectId?: string[]; +} diff --git a/src/version2/parameters/searchSecuritySchemes.ts b/src/version2/parameters/searchSecuritySchemes.ts new file mode 100644 index 0000000000..21e4af570f --- /dev/null +++ b/src/version2/parameters/searchSecuritySchemes.ts @@ -0,0 +1,16 @@ +export interface SearchSecuritySchemes { + /** The index of the first item to return in a page of results (page offset). */ + startAt?: string; + /** The maximum number of items to return per page. */ + maxResults?: string; + /** + * The list of issue security scheme IDs. To include multiple issue security scheme IDs, separate IDs with an + * ampersand: `id=10000&id=10001`. + */ + id?: string | string[]; + /** + * The list of project IDs. To include multiple project IDs, separate IDs with an ampersand: + * `projectId=10000&projectId=10001`. + */ + projectId?: string | string[]; +} diff --git a/src/version2/parameters/setDefaultLevels.ts b/src/version2/parameters/setDefaultLevels.ts new file mode 100644 index 0000000000..5162dac472 --- /dev/null +++ b/src/version2/parameters/setDefaultLevels.ts @@ -0,0 +1,3 @@ +import { SetDefaultLevelsRequest } from '../models'; + +export interface SetDefaultLevels extends SetDefaultLevelsRequest {} diff --git a/src/version2/parameters/updateIssueSecurityScheme.ts b/src/version2/parameters/updateIssueSecurityScheme.ts new file mode 100644 index 0000000000..a8487768b9 --- /dev/null +++ b/src/version2/parameters/updateIssueSecurityScheme.ts @@ -0,0 +1,6 @@ +import { UpdateIssueSecuritySchemeRequest } from '../models'; + +export interface UpdateIssueSecurityScheme extends UpdateIssueSecuritySchemeRequest { + /** The ID of the issue security scheme. */ + id: string; +} diff --git a/src/version2/parameters/updateSecurityLevel.ts b/src/version2/parameters/updateSecurityLevel.ts new file mode 100644 index 0000000000..0ae179629d --- /dev/null +++ b/src/version2/parameters/updateSecurityLevel.ts @@ -0,0 +1,8 @@ +import { UpdateIssueSecurityLevelDetails } from '../models'; + +export interface UpdateSecurityLevel extends UpdateIssueSecurityLevelDetails { + /** The ID of the issue security scheme level belongs to. */ + schemeId: string; + /** The ID of the issue security level to update. */ + levelId: string; +} diff --git a/src/version2/projectAvatars.ts b/src/version2/projectAvatars.ts index 8ba8722826..0fe7bb7c80 100644 --- a/src/version2/projectAvatars.ts +++ b/src/version2/projectAvatars.ts @@ -35,12 +35,12 @@ export class ProjectAvatars { url: `/rest/api/2/project/${parameters.projectIdOrKey}/avatar`, method: 'PUT', data: { + fileName: parameters.fileName, id: parameters.id, - owner: parameters.owner, - isSystemAvatar: parameters.isSystemAvatar, - isSelected: parameters.isSelected, isDeletable: parameters.isDeletable, - fileName: parameters.fileName, + isSelected: parameters.isSelected, + isSystemAvatar: parameters.isSystemAvatar, + owner: parameters.owner, urls: parameters.urls, }, }; @@ -83,18 +83,6 @@ export class ProjectAvatars { * Headers](#special-request-headers). * - `Content-Type: image/image type` Valid image types are JPEG, GIF, or PNG. * - * For example: `curl --request POST ` - * - * `--user email@example.com: ` - * - * `--header 'X-Atlassian-Token: no-check' ` - * - * `--header 'Content-Type: image/< image_type>' ` - * - * `--data-binary "<@/path/to/file/with/your/avatar>" ` - * - * `--url 'https://your-domain.atlassian.net/rest/api/2/project/{projectIdOrKey}/avatar2'` - * * The avatar is cropped to a square. If no crop parameters are specified, the square originates at the top left of * the image. The length of the square's sides is set to the smaller of the height or width of the image. * @@ -119,18 +107,6 @@ export class ProjectAvatars { * Headers](#special-request-headers). * - `Content-Type: image/image type` Valid image types are JPEG, GIF, or PNG. * - * For example: `curl --request POST ` - * - * `--user email@example.com: ` - * - * `--header 'X-Atlassian-Token: no-check' ` - * - * `--header 'Content-Type: image/< image_type>' ` - * - * `--data-binary "<@/path/to/file/with/your/avatar>" ` - * - * `--url 'https://your-domain.atlassian.net/rest/api/2/project/{projectIdOrKey}/avatar2'` - * * The avatar is cropped to a square. If no crop parameters are specified, the square originates at the top left of * the image. The length of the square's sides is set to the smaller of the height or width of the image. * diff --git a/src/version2/projects.ts b/src/version2/projects.ts index 18f4d074c3..be0585a803 100644 --- a/src/version2/projects.ts +++ b/src/version2/projects.ts @@ -52,11 +52,11 @@ export class Projects { /** * Creates a project based on a project type template, as shown in the following table: * - * | Project Type Key | Project Template Key | - * | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | - * | `business` | `com.atlassian.jira-core-project-templates:jira-core-simplified-content-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-document-approval`, `com.atlassian.jira-core-project-templates:jira-core-simplified-lead-tracking`, `com.atlassian.jira-core-project-templates:jira-core-simplified-process-control`, `com.atlassian.jira-core-project-templates:jira-core-simplified-procurement`, `com.atlassian.jira-core-project-templates:jira-core-simplified-project-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-recruitment`, `com.atlassian.jira-core-project-templates:jira-core-simplified-task-tracking` | - * | `service_desk` | `com.atlassian.servicedesk:simplified-it-service-management`, `com.atlassian.servicedesk:simplified-general-service-desk-it`, `com.atlassian.servicedesk:simplified-general-service-desk-business`, `com.atlassian.servicedesk:simplified-internal-service-desk`, `com.atlassian.servicedesk:simplified-external-service-desk`, `com.atlassian.servicedesk:simplified-hr-service-desk`, `com.atlassian.servicedesk:simplified-facilities-service-desk`, `com.atlassian.servicedesk:simplified-legal-service-desk`, `com.atlassian.servicedesk:simplified-analytics-service-desk`, `com.atlassian.servicedesk:simplified-marketing-service-desk`, `com.atlassian.servicedesk:simplified-finance-service-desk` | - * | `software` | `com.pyxis.greenhopper.jira:gh-simplified-agility-kanban`, `com.pyxis.greenhopper.jira:gh-simplified-agility-scrum`, `com.pyxis.greenhopper.jira:gh-simplified-basic`, `com.pyxis.greenhopper.jira:gh-simplified-kanban-classic`, `com.pyxis.greenhopper.jira:gh-simplified-scrum-classic` | + * | Project Type Key | Project Template Key | + * | ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | + * | `business` | `com.atlassian.jira-core-project-templates:jira-core-simplified-content-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-document-approval`, `com.atlassian.jira-core-project-templates:jira-core-simplified-lead-tracking`, `com.atlassian.jira-core-project-templates:jira-core-simplified-process-control`, `com.atlassian.jira-core-project-templates:jira-core-simplified-procurement`, `com.atlassian.jira-core-project-templates:jira-core-simplified-project-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-recruitment`, `com.atlassian.jira-core-project-templates:jira-core-simplified-task-tracking` | + * | `service_desk` | `com.atlassian.servicedesk:simplified-it-service-management`, `com.atlassian.servicedesk:simplified-general-service-desk-it`, `com.atlassian.servicedesk:simplified-general-service-desk-business`, `com.atlassian.servicedesk:simplified-internal-service-desk`, `com.atlassian.servicedesk:simplified-external-service-desk`, `com.atlassian.servicedesk:simplified-hr-service-desk`, `com.atlassian.servicedesk:simplified-facilities-service-desk`, `com.atlassian.servicedesk:simplified-legal-service-desk`, `com.atlassian.servicedesk:simplified-analytics-service-desk`, `com.atlassian.servicedesk:simplified-marketing-service-desk`, `com.atlassian.servicedesk:simplified-design-service-desk`, `com.atlassian.servicedesk:simplified-sales-service-desk`, `com.atlassian.servicedesk:simplified-finance-service-desk` | + * | `software` | `com.pyxis.greenhopper.jira:gh-simplified-agility-kanban`, `com.pyxis.greenhopper.jira:gh-simplified-agility-scrum`, `com.pyxis.greenhopper.jira:gh-simplified-basic`, `com.pyxis.greenhopper.jira:gh-cross-team-template`, `com.pyxis.greenhopper.jira:gh-simplified-kanban-classic`, `com.pyxis.greenhopper.jira:gh-simplified-scrum-classic` | * * The project types are available according to the installed Jira features as follows: * @@ -79,11 +79,11 @@ export class Projects { /** * Creates a project based on a project type template, as shown in the following table: * - * | Project Type Key | Project Template Key | - * | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | - * | `business` | `com.atlassian.jira-core-project-templates:jira-core-simplified-content-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-document-approval`, `com.atlassian.jira-core-project-templates:jira-core-simplified-lead-tracking`, `com.atlassian.jira-core-project-templates:jira-core-simplified-process-control`, `com.atlassian.jira-core-project-templates:jira-core-simplified-procurement`, `com.atlassian.jira-core-project-templates:jira-core-simplified-project-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-recruitment`, `com.atlassian.jira-core-project-templates:jira-core-simplified-task-tracking` | - * | `service_desk` | `com.atlassian.servicedesk:simplified-it-service-management`, `com.atlassian.servicedesk:simplified-general-service-desk-it`, `com.atlassian.servicedesk:simplified-general-service-desk-business`, `com.atlassian.servicedesk:simplified-internal-service-desk`, `com.atlassian.servicedesk:simplified-external-service-desk`, `com.atlassian.servicedesk:simplified-hr-service-desk`, `com.atlassian.servicedesk:simplified-facilities-service-desk`, `com.atlassian.servicedesk:simplified-legal-service-desk`, `com.atlassian.servicedesk:simplified-analytics-service-desk`, `com.atlassian.servicedesk:simplified-marketing-service-desk`, `com.atlassian.servicedesk:simplified-finance-service-desk` | - * | `software` | `com.pyxis.greenhopper.jira:gh-simplified-agility-kanban`, `com.pyxis.greenhopper.jira:gh-simplified-agility-scrum`, `com.pyxis.greenhopper.jira:gh-simplified-basic`, `com.pyxis.greenhopper.jira:gh-simplified-kanban-classic`, `com.pyxis.greenhopper.jira:gh-simplified-scrum-classic` | + * | Project Type Key | Project Template Key | + * | ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | + * | `business` | `com.atlassian.jira-core-project-templates:jira-core-simplified-content-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-document-approval`, `com.atlassian.jira-core-project-templates:jira-core-simplified-lead-tracking`, `com.atlassian.jira-core-project-templates:jira-core-simplified-process-control`, `com.atlassian.jira-core-project-templates:jira-core-simplified-procurement`, `com.atlassian.jira-core-project-templates:jira-core-simplified-project-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-recruitment`, `com.atlassian.jira-core-project-templates:jira-core-simplified-task-tracking` | + * | `service_desk` | `com.atlassian.servicedesk:simplified-it-service-management`, `com.atlassian.servicedesk:simplified-general-service-desk-it`, `com.atlassian.servicedesk:simplified-general-service-desk-business`, `com.atlassian.servicedesk:simplified-internal-service-desk`, `com.atlassian.servicedesk:simplified-external-service-desk`, `com.atlassian.servicedesk:simplified-hr-service-desk`, `com.atlassian.servicedesk:simplified-facilities-service-desk`, `com.atlassian.servicedesk:simplified-legal-service-desk`, `com.atlassian.servicedesk:simplified-analytics-service-desk`, `com.atlassian.servicedesk:simplified-marketing-service-desk`, `com.atlassian.servicedesk:simplified-design-service-desk`, `com.atlassian.servicedesk:simplified-sales-service-desk`, `com.atlassian.servicedesk:simplified-finance-service-desk` | + * | `software` | `com.pyxis.greenhopper.jira:gh-simplified-agility-kanban`, `com.pyxis.greenhopper.jira:gh-simplified-agility-scrum`, `com.pyxis.greenhopper.jira:gh-simplified-basic`, `com.pyxis.greenhopper.jira:gh-cross-team-template`, `com.pyxis.greenhopper.jira:gh-simplified-kanban-classic`, `com.pyxis.greenhopper.jira:gh-simplified-scrum-classic` | * * The project types are available according to the installed Jira features as follows: * @@ -111,24 +111,24 @@ export class Projects { url: '/rest/api/2/project', method: 'POST', data: { - key: parameters.key, - name: parameters.name, - description: parameters.description, - lead: parameters.lead, - leadAccountId: parameters.leadAccountId, - url: parameters.url, assigneeType: parameters.assigneeType, avatarId: parameters.avatarId, + categoryId: parameters.categoryId, + description: parameters.description, + fieldConfigurationScheme: parameters.fieldConfigurationScheme, issueSecurityScheme: parameters.issueSecurityScheme, - permissionScheme: parameters.permissionScheme, + issueTypeScheme: parameters.issueTypeScheme, + issueTypeScreenScheme: parameters.issueTypeScreenScheme, + key: parameters.key, + lead: parameters.lead, + leadAccountId: parameters.leadAccountId, + name: parameters.name, notificationScheme: parameters.notificationScheme, - categoryId: parameters.categoryId, - projectTypeKey: parameters.projectTypeKey, + permissionScheme: parameters.permissionScheme, projectTemplateKey: parameters.projectTemplateKey, + projectTypeKey: parameters.projectTypeKey, + url: parameters.url, workflowScheme: parameters.workflowScheme, - issueTypeScreenScheme: parameters.issueTypeScreenScheme, - issueTypeScheme: parameters.issueTypeScheme, - fieldConfigurationScheme: parameters.fieldConfigurationScheme, }, }; @@ -303,20 +303,20 @@ export class Projects { expand: parameters.expand, }, data: { - key: parameters.key, - name: parameters.name, - projectTypeKey: parameters.projectTypeKey, - projectTemplateKey: parameters.projectTemplateKey, - description: parameters.description, - lead: parameters.lead, - leadAccountId: parameters.leadAccountId, - url: parameters.url, assigneeType: parameters.assigneeType, avatarId: parameters.avatarId, + categoryId: parameters.categoryId, + description: parameters.description, issueSecurityScheme: parameters.issueSecurityScheme, - permissionScheme: parameters.permissionScheme, + key: parameters.key, + lead: parameters.lead, + leadAccountId: parameters.leadAccountId, + name: parameters.name, notificationScheme: parameters.notificationScheme, - categoryId: parameters.categoryId, + permissionScheme: parameters.permissionScheme, + projectTemplateKey: parameters.projectTemplateKey, + projectTypeKey: parameters.projectTypeKey, + url: parameters.url, }, }; diff --git a/src/version2/users.ts b/src/version2/users.ts index 600b286078..773b829ce1 100644 --- a/src/version2/users.ts +++ b/src/version2/users.ts @@ -72,13 +72,14 @@ export class Users { url: '/rest/api/2/user', method: 'POST', data: { - self: parameters.self, + applicationKeys: parameters.applicationKeys, + displayName: parameters.displayName, + emailAddress: parameters.emailAddress, key: parameters.key, name: parameters.name, password: parameters.password, - emailAddress: parameters.emailAddress, - displayName: parameters.displayName, - applicationKeys: parameters.applicationKeys, + products: parameters.products, + self: parameters.self, }, }; diff --git a/src/version2/workflowTransitionRules.ts b/src/version2/workflowTransitionRules.ts index 54424c5fe8..c8ea3b000c 100644 --- a/src/version2/workflowTransitionRules.ts +++ b/src/version2/workflowTransitionRules.ts @@ -16,13 +16,16 @@ export class WorkflowTransitionRules { * functions](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-post-function/). * - Matching one or more transition rule keys. * - * Only workflows containing transition rules created by the calling Connect app are returned. + * Only workflows containing transition rules created by the calling + * [Connect](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps) or + * [Forge](https://developer.atlassian.com/cloud/jira/platform/index/#forge-apps) app are returned. * * Due to server-side optimizations, workflows with an empty list of rules may be returned; these workflows can be * ignored. * * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** Only - * Connect apps can use this operation. + * [Connect](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps) or + * [Forge](https://developer.atlassian.com/cloud/jira/platform/index/#forge-apps) apps can use this operation. */ async getWorkflowTransitionRuleConfigurations( parameters: Parameters.GetWorkflowTransitionRuleConfigurations, @@ -37,13 +40,16 @@ export class WorkflowTransitionRules { * functions](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-post-function/). * - Matching one or more transition rule keys. * - * Only workflows containing transition rules created by the calling Connect app are returned. + * Only workflows containing transition rules created by the calling + * [Connect](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps) or + * [Forge](https://developer.atlassian.com/cloud/jira/platform/index/#forge-apps) app are returned. * * Due to server-side optimizations, workflows with an empty list of rules may be returned; these workflows can be * ignored. * * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#permissions) required:** Only - * Connect apps can use this operation. + * [Connect](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps) or + * [Forge](https://developer.atlassian.com/cloud/jira/platform/index/#forge-apps) apps can use this operation. */ async getWorkflowTransitionRuleConfigurations( parameters: Parameters.GetWorkflowTransitionRuleConfigurations, diff --git a/src/version3/appProperties.ts b/src/version3/appProperties.ts index ef5af6a98b..ba01d71635 100644 --- a/src/version3/appProperties.ts +++ b/src/version3/appProperties.ts @@ -114,7 +114,7 @@ export class AppProperties { const config: RequestConfig = { url: `/rest/atlassian-connect/1/addons/${parameters.addonKey}/properties/${parameters.propertyKey}`, method: 'PUT', - data: parameters.property, + data: parameters.propertyValue ?? parameters.property, }; return this.client.sendRequest(config, callback); @@ -145,4 +145,79 @@ export class AppProperties { return this.client.sendRequest(config, callback); } + + /** + * Sets the value of a Forge app's property. These values can be retrieved in [Jira + * expressions](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/) through the `app` [context + * variable](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/#context-variables). + * + * For other use cases, use the [Storage + * API](https://developer.atlassian.com/platform/forge/runtime-reference/storage-api/). + * + * The value of the request body must be a [valid](http://tools.ietf.org/html/rfc4627), non-empty JSON blob. The + * maximum length is 32768 characters. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** Only + * Forge apps can make this request. + */ + async putAppProperty( + parameters: Parameters.PutAppProperty, + callback: Callback, + ): Promise; + /** + * Sets the value of a Forge app's property. These values can be retrieved in [Jira + * expressions](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/) through the `app` [context + * variable](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/#context-variables). + * + * For other use cases, use the [Storage + * API](https://developer.atlassian.com/platform/forge/runtime-reference/storage-api/). + * + * The value of the request body must be a [valid](http://tools.ietf.org/html/rfc4627), non-empty JSON blob. The + * maximum length is 32768 characters. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** Only + * Forge apps can make this request. + */ + async putAppProperty( + parameters: Parameters.PutAppProperty, + callback?: never, + ): Promise; + async putAppProperty( + parameters: Parameters.PutAppProperty, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: `/rest/forge/1/app/properties/${parameters.propertyKey}`, + method: 'PUT', + data: parameters.propertyValue, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Deletes a Forge app's property. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** Only + * Forge apps can make this request. + */ + async deleteAppProperty(parameters: Parameters.DeleteAppProperty, callback: Callback): Promise; + /** + * Deletes a Forge app's property. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** Only + * Forge apps can make this request. + */ + async deleteAppProperty(parameters: Parameters.DeleteAppProperty, callback?: never): Promise; + async deleteAppProperty( + parameters: Parameters.DeleteAppProperty, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: `/rest/forge/1/app/properties/${parameters.propertyKey}`, + method: 'DELETE', + }; + + return this.client.sendRequest(config, callback); + } } diff --git a/src/version3/avatars.ts b/src/version3/avatars.ts index 87cb6e6b28..85926c85e1 100644 --- a/src/version3/avatars.ts +++ b/src/version3/avatars.ts @@ -89,18 +89,6 @@ export class Avatars { * Headers](#special-request-headers). * - `Content-Type: image/image type` Valid image types are JPEG, GIF, or PNG. * - * For example: `curl --request POST ` - * - * `--user email@example.com: ` - * - * `--header 'X-Atlassian-Token: no-check' ` - * - * `--header 'Content-Type: image/< image_type>' ` - * - * `--data-binary "<@/path/to/file/with/your/avatar>" ` - * - * `--url 'https://your-domain.atlassian.net/rest/api/3/universal_avatar/type/{type}/owner/{entityId}'` - * * The avatar is cropped to a square. If no crop parameters are specified, the square originates at the top left of * the image. The length of the square's sides is set to the smaller of the height or width of the image. * @@ -125,18 +113,6 @@ export class Avatars { * Headers](#special-request-headers). * - `Content-Type: image/image type` Valid image types are JPEG, GIF, or PNG. * - * For example: `curl --request POST ` - * - * `--user email@example.com: ` - * - * `--header 'X-Atlassian-Token: no-check' ` - * - * `--header 'Content-Type: image/< image_type>' ` - * - * `--data-binary "<@/path/to/file/with/your/avatar>" ` - * - * `--url 'https://your-domain.atlassian.net/rest/api/3/universal_avatar/type/{type}/owner/{entityId}'` - * * The avatar is cropped to a square. If no crop parameters are specified, the square originates at the top left of * the image. The length of the square's sides is set to the smaller of the height or width of the image. * diff --git a/src/version3/client/version3Client.ts b/src/version3/client/version3Client.ts index c60aad432f..e9e54b7500 100644 --- a/src/version3/client/version3Client.ts +++ b/src/version3/client/version3Client.ts @@ -47,6 +47,7 @@ import { JiraExpressions, JiraSettings, JQL, + JqlFunctionsApps, Labels, LicenseMetrics, Myself, @@ -136,6 +137,7 @@ export class Version3Client extends BaseClient { jiraExpressions = new JiraExpressions(this); jiraSettings = new JiraSettings(this); jql = new JQL(this); + jqlFunctionsApps = new JqlFunctionsApps(this); labels = new Labels(this); licenseMetrics = new LicenseMetrics(this); myself = new Myself(this); diff --git a/src/version3/index.ts b/src/version3/index.ts index 51a19dbab9..c771572d6e 100644 --- a/src/version3/index.ts +++ b/src/version3/index.ts @@ -45,6 +45,7 @@ export * from './issueWorklogs'; export * from './jiraExpressions'; export * from './jiraSettings'; export * from './jQL'; +export * from './jqlFunctionsApps'; export * from './labels'; export * from './licenseMetrics'; export * from './myself'; diff --git a/src/version3/issueSecuritySchemes.ts b/src/version3/issueSecuritySchemes.ts index 0a20479969..33a141d761 100644 --- a/src/version3/issueSecuritySchemes.ts +++ b/src/version3/issueSecuritySchemes.ts @@ -30,6 +30,270 @@ export class IssueSecuritySchemes { return this.client.sendRequest(config, callback); } + /** + * Creates a security scheme with security scheme levels and levels' members. You can create up to 100 security scheme + * levels and security scheme levels' members per request. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async createIssueSecurityScheme( + parameters: Parameters.CreateIssueSecurityScheme, + callback: Callback, + ): Promise; + /** + * Creates a security scheme with security scheme levels and levels' members. You can create up to 100 security scheme + * levels and security scheme levels' members per request. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async createIssueSecurityScheme( + parameters: Parameters.CreateIssueSecurityScheme, + callback?: never, + ): Promise; + async createIssueSecurityScheme( + parameters: Parameters.CreateIssueSecurityScheme, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: '/rest/api/3/issuesecurityschemes', + method: 'POST', + data: { + description: parameters?.description, + levels: parameters?.levels, + name: parameters?.name, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#pagination) list of issue + * security levels. + * + * Only issue security levels in the context of classic projects are returned. + * + * Filtering using IDs is inclusive: if you specify both security scheme IDs and level IDs, the result will include + * both specified issue security levels and all issue security levels from the specified schemes. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async getSecurityLevels( + parameters: Parameters.GetSecurityLevels | undefined, + callback: Callback, + ): Promise; + /** + * Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#pagination) list of issue + * security levels. + * + * Only issue security levels in the context of classic projects are returned. + * + * Filtering using IDs is inclusive: if you specify both security scheme IDs and level IDs, the result will include + * both specified issue security levels and all issue security levels from the specified schemes. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async getSecurityLevels( + parameters?: Parameters.GetSecurityLevels, + callback?: never, + ): Promise; + async getSecurityLevels( + parameters?: Parameters.GetSecurityLevels, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: '/rest/api/3/issuesecurityschemes/level', + method: 'GET', + params: { + startAt: parameters?.startAt, + maxResults: parameters?.maxResults, + id: parameters?.id, + schemeId: parameters?.schemeId, + onlyDefault: parameters?.onlyDefault, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Sets default issue security levels for schemes. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async setDefaultLevels( + parameters: Parameters.SetDefaultLevels | undefined, + callback: Callback, + ): Promise; + /** + * Sets default issue security levels for schemes. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async setDefaultLevels(parameters?: Parameters.SetDefaultLevels, callback?: never): Promise; + async setDefaultLevels( + parameters?: Parameters.SetDefaultLevels, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: '/rest/api/3/issuesecurityschemes/level/default', + method: 'PUT', + data: { + defaultValues: parameters?.defaultValues, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#pagination) list of issue + * security level members. + * + * Only issue security level members in the context of classic projects are returned. + * + * Filtering using parameters is inclusive: if you specify both security scheme IDs and level IDs, the result will + * include all issue security level members from the specified schemes and levels. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async getSecurityLevelMembers( + parameters: Parameters.GetSecurityLevelMembers | undefined, + callback: Callback, + ): Promise; + /** + * Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#pagination) list of issue + * security level members. + * + * Only issue security level members in the context of classic projects are returned. + * + * Filtering using parameters is inclusive: if you specify both security scheme IDs and level IDs, the result will + * include all issue security level members from the specified schemes and levels. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async getSecurityLevelMembers( + parameters?: Parameters.GetSecurityLevelMembers, + callback?: never, + ): Promise; + async getSecurityLevelMembers( + parameters?: Parameters.GetSecurityLevelMembers, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: '/rest/api/3/issuesecurityschemes/level/member', + method: 'GET', + params: { + startAt: parameters?.startAt, + maxResults: parameters?.maxResults, + id: parameters?.id, + schemeId: parameters?.schemeId, + levelId: parameters?.levelId, + expand: parameters?.expand, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#pagination) mapping of + * projects that are using security schemes. You can provide either one or multiple security scheme IDs or project IDs + * to filter by. If you don't provide any, this will return a list of all mappings. Only issue security schemes in the + * context of classic projects are supported. + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async searchProjectsUsingSecuritySchemes( + parameters: Parameters.SearchProjectsUsingSecuritySchemes | undefined, + callback: Callback, + ): Promise; + /** + * Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#pagination) mapping of + * projects that are using security schemes. You can provide either one or multiple security scheme IDs or project IDs + * to filter by. If you don't provide any, this will return a list of all mappings. Only issue security schemes in the + * context of classic projects are supported. + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async searchProjectsUsingSecuritySchemes( + parameters?: Parameters.SearchProjectsUsingSecuritySchemes, + callback?: never, + ): Promise; + async searchProjectsUsingSecuritySchemes( + parameters?: Parameters.SearchProjectsUsingSecuritySchemes, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: '/rest/api/3/issuesecurityschemes/project', + method: 'GET', + params: { + startAt: parameters?.startAt, + maxResults: parameters?.maxResults, + issueSecuritySchemeId: parameters?.issueSecuritySchemeId, + projectId: parameters?.projectId, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#pagination) list of issue + * security schemes. If you specify the project ID parameter, the result will contain issue security schemes and + * related project IDs you filter by. Use {@link Parameters.SearchProjectsUsingSecuritySchemes} to obtain all projects + * related to scheme. + * + * Only issue security schemes in the context of classic projects are returned. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async searchSecuritySchemes( + parameters: Parameters.SearchSecuritySchemes | undefined, + callback: Callback, + ): Promise; + /** + * Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#pagination) list of issue + * security schemes. If you specify the project ID parameter, the result will contain issue security schemes and + * related project IDs you filter by. Use {@link Parameters.SearchProjectsUsingSecuritySchemes} to obtain all projects + * related to scheme. + * + * Only issue security schemes in the context of classic projects are returned. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async searchSecuritySchemes( + parameters?: Parameters.SearchSecuritySchemes, + callback?: never, + ): Promise; + async searchSecuritySchemes( + parameters?: Parameters.SearchSecuritySchemes, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: '/rest/api/3/issuesecurityschemes/search', + method: 'GET', + params: { + startAt: parameters?.startAt, + maxResults: parameters?.maxResults, + id: parameters?.id, + projectId: parameters?.projectId, + }, + }; + + return this.client.sendRequest(config, callback); + } + /** * Returns an issue security scheme along with its security levels. * @@ -67,4 +331,225 @@ export class IssueSecuritySchemes { return this.client.sendRequest(config, callback); } + + /** + * Updates the issue security scheme. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async updateIssueSecurityScheme( + parameters: Parameters.UpdateIssueSecurityScheme, + callback: Callback, + ): Promise; + /** + * Updates the issue security scheme. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async updateIssueSecurityScheme( + parameters: Parameters.UpdateIssueSecurityScheme, + callback?: never, + ): Promise; + async updateIssueSecurityScheme( + parameters: Parameters.UpdateIssueSecurityScheme, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: `/rest/api/3/issuesecurityschemes/${parameters.id}`, + method: 'PUT', + data: { + description: parameters.description, + name: parameters.name, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Deletes an issue security scheme. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async deleteSecurityScheme( + parameters: Parameters.DeleteSecurityScheme, + callback: Callback, + ): Promise; + /** + * Deletes an issue security scheme. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async deleteSecurityScheme(parameters: Parameters.DeleteSecurityScheme, callback?: never): Promise; + async deleteSecurityScheme( + parameters: Parameters.DeleteSecurityScheme, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: `/rest/api/3/issuesecurityschemes/${parameters.schemeId}`, + method: 'DELETE', + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Adds levels and levels' members to the issue security scheme. You can add up to 100 levels per request. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async addSecurityLevel(parameters: Parameters.AddSecurityLevel, callback: Callback): Promise; + /** + * Adds levels and levels' members to the issue security scheme. You can add up to 100 levels per request. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async addSecurityLevel(parameters: Parameters.AddSecurityLevel, callback?: never): Promise; + async addSecurityLevel(parameters: Parameters.AddSecurityLevel, callback?: Callback): Promise { + const config: RequestConfig = { + url: `/rest/api/3/issuesecurityschemes/${parameters.schemeId}/level`, + method: 'PUT', + data: { + levels: parameters.levels, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Updates the issue security level. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async updateSecurityLevel(parameters: Parameters.UpdateSecurityLevel, callback: Callback): Promise; + /** + * Updates the issue security level. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async updateSecurityLevel(parameters: Parameters.UpdateSecurityLevel, callback?: never): Promise; + async updateSecurityLevel( + parameters: Parameters.UpdateSecurityLevel, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: `/rest/api/3/issuesecurityschemes/${parameters.schemeId}/level/${parameters.levelId}`, + method: 'PUT', + data: { + description: parameters.description, + name: parameters.name, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Deletes an issue security level. + * + * This operation is + * [asynchronous](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#async-operations). Follow the + * `location` link in the response to determine the status of the task and use [Get + * task](#api-rest-api-3-task-taskId-get) to obtain subsequent updates. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async removeLevel(parameters: Parameters.RemoveLevel, callback: Callback): Promise; + /** + * Deletes an issue security level. + * + * This operation is + * [asynchronous](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#async-operations). Follow the + * `location` link in the response to determine the status of the task and use [Get + * task](#api-rest-api-3-task-taskId-get) to obtain subsequent updates. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async removeLevel(parameters: Parameters.RemoveLevel, callback?: never): Promise; + async removeLevel(parameters: Parameters.RemoveLevel, callback?: Callback): Promise { + const config: RequestConfig = { + url: `/rest/api/3/issuesecurityschemes/${parameters.schemeId}/level/${parameters.levelId}`, + method: 'DELETE', + params: { + replaceWith: parameters.replaceWith, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Adds members to the issue security level. You can add up to 100 members per request. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async addSecurityLevelMembers( + parameters: Parameters.AddSecurityLevelMembers, + callback: Callback, + ): Promise; + /** + * Adds members to the issue security level. You can add up to 100 members per request. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async addSecurityLevelMembers(parameters: Parameters.AddSecurityLevelMembers, callback?: never): Promise; + async addSecurityLevelMembers( + parameters: Parameters.AddSecurityLevelMembers, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: `/rest/api/3/issuesecurityschemes/${parameters.schemeId}/level/${parameters.levelId}/member`, + method: 'PUT', + data: { + members: parameters.members, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Removes an issue security level member from an issue security scheme. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async removeMemberFromSecurityLevel( + parameters: Parameters.RemoveMemberFromSecurityLevel, + callback: Callback, + ): Promise; + /** + * Removes an issue security level member from an issue security scheme. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** + * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg). + */ + async removeMemberFromSecurityLevel( + parameters: Parameters.RemoveMemberFromSecurityLevel, + callback?: never, + ): Promise; + async removeMemberFromSecurityLevel( + parameters: Parameters.RemoveMemberFromSecurityLevel, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: `/rest/api/3/issuesecurityschemes/${parameters.schemeId}/level/${parameters.levelId}/member/${parameters.memberId}`, + method: 'DELETE', + }; + + return this.client.sendRequest(config, callback); + } } diff --git a/src/version3/jQL.ts b/src/version3/jQL.ts index e09036e124..20acb211b0 100644 --- a/src/version3/jQL.ts +++ b/src/version3/jQL.ts @@ -310,10 +310,12 @@ export class JQL { return this.client.sendRequest(config, callback); } + /** @deprecated */ async getPrecomputations( parameters: Parameters.GetPrecomputations | undefined, callback: Callback, ): Promise; + /** @deprecated */ async getPrecomputations( parameters?: Parameters.GetPrecomputations, callback?: never, @@ -336,10 +338,13 @@ export class JQL { return this.client.sendRequest(config, callback); } + + /** @deprecated */ async updatePrecomputations( parameters: Parameters.UpdatePrecomputations, callback: Callback, ): Promise; + /** @deprecated */ async updatePrecomputations(parameters: Parameters.UpdatePrecomputations, callback?: never): Promise; async updatePrecomputations( parameters: Parameters.UpdatePrecomputations, diff --git a/src/version3/jqlFunctionsApps.ts b/src/version3/jqlFunctionsApps.ts new file mode 100644 index 0000000000..d45dcf0020 --- /dev/null +++ b/src/version3/jqlFunctionsApps.ts @@ -0,0 +1,82 @@ +import * as Models from './models'; +import * as Parameters from './parameters'; +import { Callback } from '../callback'; +import { Client } from '../clients'; +import { RequestConfig } from '../requestConfig'; + +export class JqlFunctionsApps { + constructor(private client: Client) {} + + /** + * Returns the list of a function's precomputations along with information about when they were created, updated, and + * last used. Each precomputation has a `value` - the JQL fragment to replace the custom function clause with. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** This + * API is only accessible to apps and apps can only inspect their own functions. + */ + async getPrecomputations( + parameters: Parameters.GetPrecomputations | undefined, + callback: Callback, + ): Promise; + /** + * Returns the list of a function's precomputations along with information about when they were created, updated, and + * last used. Each precomputation has a `value` - the JQL fragment to replace the custom function clause with. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** This + * API is only accessible to apps and apps can only inspect their own functions. + */ + async getPrecomputations( + parameters?: Parameters.GetPrecomputations, + callback?: never, + ): Promise; + async getPrecomputations( + parameters?: Parameters.GetPrecomputations, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: '/rest/api/3/jql/function/computation', + method: 'GET', + params: { + functionKey: parameters?.functionKey, + startAt: parameters?.startAt, + maxResults: parameters?.maxResults, + orderBy: parameters?.orderBy, + filter: parameters?.filter, + }, + }; + + return this.client.sendRequest(config, callback); + } + + /** + * Update the precomputation value of a function created by a Forge/Connect app. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** An API + * for apps to update their own precomputations. + */ + async updatePrecomputations( + parameters: Parameters.UpdatePrecomputations | undefined, + callback: Callback, + ): Promise; + /** + * Update the precomputation value of a function created by a Forge/Connect app. + * + * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** An API + * for apps to update their own precomputations. + */ + async updatePrecomputations(parameters?: Parameters.UpdatePrecomputations, callback?: never): Promise; + async updatePrecomputations( + parameters?: Parameters.UpdatePrecomputations, + callback?: Callback, + ): Promise { + const config: RequestConfig = { + url: '/rest/api/3/jql/function/computation', + method: 'POST', + data: { + values: parameters?.values, + }, + }; + + return this.client.sendRequest(config, callback); + } +} diff --git a/src/version3/models/addSecuritySchemeLevelsRequest.ts b/src/version3/models/addSecuritySchemeLevelsRequest.ts new file mode 100644 index 0000000000..5111d85cdd --- /dev/null +++ b/src/version3/models/addSecuritySchemeLevelsRequest.ts @@ -0,0 +1,6 @@ +import { SecuritySchemeLevel } from './securitySchemeLevel'; + +export interface AddSecuritySchemeLevelsRequest { + /** The list of scheme levels which should be added to the security scheme. */ + levels?: SecuritySchemeLevel[]; +} diff --git a/src/version3/models/createIssueSecuritySchemeDetails.ts b/src/version3/models/createIssueSecuritySchemeDetails.ts new file mode 100644 index 0000000000..d61b640ba1 --- /dev/null +++ b/src/version3/models/createIssueSecuritySchemeDetails.ts @@ -0,0 +1,11 @@ +import { SecuritySchemeLevel } from './securitySchemeLevel'; + +/** Issue security scheme and it's details */ +export interface CreateIssueSecuritySchemeDetails { + /** The description of the issue security scheme. */ + description?: string; + /** The list of scheme levels which should be added to the security scheme. */ + levels?: SecuritySchemeLevel[]; + /** The name of the issue security scheme. Must be unique (case-insensitive). */ + name: string; +} diff --git a/src/version3/models/defaultLevelValue.ts b/src/version3/models/defaultLevelValue.ts new file mode 100644 index 0000000000..c0a25b6e13 --- /dev/null +++ b/src/version3/models/defaultLevelValue.ts @@ -0,0 +1,10 @@ +/** Details of scheme and new default level. */ +export interface DefaultLevelValue { + /** + * The ID of the issue security level to set as default for the specified scheme. Providing null will reset the + * default level. + */ + defaultLevelId: string; + /** The ID of the issue security scheme to set default level for. */ + issueSecuritySchemeId: string; +} diff --git a/src/version3/models/fields.ts b/src/version3/models/fields.ts index dae2e3de3c..8ae63d5a0e 100644 --- a/src/version3/models/fields.ts +++ b/src/version3/models/fields.ts @@ -19,8 +19,6 @@ import { Worklog } from './worklog'; /** Key fields from the linked issue. */ export interface Fields { - [key: string]: any; - /** The estimate of how much longer working on the issue will take, in seconds. */ aggregatetimespent: number | null; /** The assignee of the linked issue. */ @@ -50,7 +48,6 @@ export interface Fields { issuetype?: IssueTypeDetails; /** The type of the linked issue. */ issueType?: IssueTypeDetails; - environment: RichText | null; issuelinks: IssueLink[]; workratio: number; @@ -83,4 +80,6 @@ export interface Fields { total: number; worklogs: Worklog[]; }; + + [key: string]: any; } diff --git a/src/version3/models/index.ts b/src/version3/models/index.ts index 3413254e9a..ef044bd429 100644 --- a/src/version3/models/index.ts +++ b/src/version3/models/index.ts @@ -3,6 +3,7 @@ export * from './actorsMap'; export * from './addField'; export * from './addGroup'; export * from './addNotificationsDetails'; +export * from './addSecuritySchemeLevelsRequest'; export * from './announcementBannerConfiguration'; export * from './announcementBannerConfigurationUpdate'; export * from './application'; @@ -67,6 +68,7 @@ export * from './createCustomFieldContext'; export * from './createdIssue'; export * from './createdIssues'; export * from './createIssueAdjustmentDetails'; +export * from './createIssueSecuritySchemeDetails'; export * from './createNotificationSchemeDetails'; export * from './createPriorityDetails'; export * from './createProjectDetails'; @@ -110,6 +112,7 @@ export * from './dashboardGadgetResponse'; export * from './dashboardGadgetSettings'; export * from './dashboardGadgetUpdateRequest'; export * from './dashboardUser'; +export * from './defaultLevelValue'; export * from './defaultShareScope'; export * from './defaultWorkflow'; export * from './deleteAndReplaceVersion'; @@ -193,6 +196,7 @@ export * from './issuePickerSuggestions'; export * from './issuePickerSuggestionsIssueType'; export * from './issuesAndJQLQueries'; export * from './issueSecurityLevelMember'; +export * from './issueSecuritySchemeToProjectMapping'; export * from './issuesJqlMetaData'; export * from './issuesMeta'; export * from './issuesUpdate'; @@ -320,6 +324,7 @@ export * from './pageGroupDetails'; export * from './pageIssueAdjustmentDetails'; export * from './pageIssueFieldOption'; export * from './pageIssueSecurityLevelMember'; +export * from './pageIssueSecuritySchemeToProjectMapping'; export * from './pageIssueTypeScheme'; export * from './pageIssueTypeSchemeMapping'; export * from './pageIssueTypeSchemeProjects'; @@ -327,6 +332,7 @@ export * from './pageIssueTypeScreenScheme'; export * from './pageIssueTypeScreenSchemeItem'; export * from './pageIssueTypeScreenSchemesProjects'; export * from './pageIssueTypeToContextMapping'; +export * from './pageJqlFunctionPrecomputation'; export * from './pageNotificationScheme'; export * from './pageOfChangelogs'; export * from './pageOfComments'; @@ -340,6 +346,9 @@ export * from './pageResolution'; export * from './pageScreen'; export * from './pageScreenScheme'; export * from './pageScreenWithTab'; +export * from './pageSecurityLevel'; +export * from './pageSecurityLevelMember'; +export * from './pageSecuritySchemeWithProjects'; export * from './pageString'; export * from './pageUiModificationDetails'; export * from './pageUser'; @@ -434,9 +443,16 @@ export * from './searchAutoCompleteFilter'; export * from './searchRequest'; export * from './searchResults'; export * from './securityLevel'; +export * from './securityLevelMember'; export * from './securityScheme'; +export * from './securitySchemeId'; +export * from './securitySchemeLevel'; +export * from './securitySchemeLevelMember'; +export * from './securitySchemeMembersRequest'; export * from './securitySchemes'; +export * from './securitySchemeWithProjects'; export * from './serverInformation'; +export * from './setDefaultLevelsRequest'; export * from './setDefaultPriorityRequest'; export * from './setDefaultResolutionRequest'; export * from './sharePermission'; @@ -475,6 +491,8 @@ export * from './updateDefaultScreenScheme'; export * from './updatedProjectCategory'; export * from './updateFieldConfigurationSchemeDetails'; export * from './updateIssueAdjustmentDetails'; +export * from './updateIssueSecurityLevelDetails'; +export * from './updateIssueSecuritySchemeRequest'; export * from './updateNotificationSchemeDetails'; export * from './updatePriorityDetails'; export * from './updateProjectDetails'; diff --git a/src/version3/models/issueSecuritySchemeToProjectMapping.ts b/src/version3/models/issueSecuritySchemeToProjectMapping.ts new file mode 100644 index 0000000000..27c458c989 --- /dev/null +++ b/src/version3/models/issueSecuritySchemeToProjectMapping.ts @@ -0,0 +1,5 @@ +/** Details about a project using security scheme mapping. */ +export interface IssueSecuritySchemeToProjectMapping { + issueSecuritySchemeId?: string; + projectId?: string; +} diff --git a/src/version3/models/pageIssueSecuritySchemeToProjectMapping.ts b/src/version3/models/pageIssueSecuritySchemeToProjectMapping.ts new file mode 100644 index 0000000000..86b0e88bfe --- /dev/null +++ b/src/version3/models/pageIssueSecuritySchemeToProjectMapping.ts @@ -0,0 +1,19 @@ +import { IssueSecuritySchemeToProjectMapping } from './issueSecuritySchemeToProjectMapping'; + +/** A page of items. */ +export interface PageIssueSecuritySchemeToProjectMapping { + /** Whether this is the last page. */ + isLast?: boolean; + /** The maximum number of items that could be returned. */ + maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; + /** The index of the first item returned. */ + startAt?: number; + /** The number of items returned. */ + total?: number; + /** The list of items. */ + values?: IssueSecuritySchemeToProjectMapping[]; +} diff --git a/src/version3/models/pageJqlFunctionPrecomputation.ts b/src/version3/models/pageJqlFunctionPrecomputation.ts new file mode 100644 index 0000000000..3104ea5653 --- /dev/null +++ b/src/version3/models/pageJqlFunctionPrecomputation.ts @@ -0,0 +1,19 @@ +import { JqlFunctionPrecomputation } from './jqlFunctionPrecomputation'; + +/** A page of items. */ +export interface PageJqlFunctionPrecomputation { + /** Whether this is the last page. */ + isLast?: boolean; + /** The maximum number of items that could be returned. */ + maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; + /** The index of the first item returned. */ + startAt?: number; + /** The number of items returned. */ + total?: number; + /** The list of items. */ + values?: JqlFunctionPrecomputation[]; +} diff --git a/src/version3/models/pageSecurityLevel.ts b/src/version3/models/pageSecurityLevel.ts new file mode 100644 index 0000000000..9248cd0c9c --- /dev/null +++ b/src/version3/models/pageSecurityLevel.ts @@ -0,0 +1,19 @@ +import { SecurityLevel } from './securityLevel'; + +/** A page of items. */ +export interface PageSecurityLevel { + /** Whether this is the last page. */ + isLast?: boolean; + /** The maximum number of items that could be returned. */ + maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; + /** The index of the first item returned. */ + startAt?: number; + /** The number of items returned. */ + total?: number; + /** The list of items. */ + values?: SecurityLevel[]; +} diff --git a/src/version3/models/pageSecurityLevelMember.ts b/src/version3/models/pageSecurityLevelMember.ts new file mode 100644 index 0000000000..b168666ffc --- /dev/null +++ b/src/version3/models/pageSecurityLevelMember.ts @@ -0,0 +1,19 @@ +import { SecurityLevelMember } from './securityLevelMember'; + +/** A page of items. */ +export interface PageSecurityLevelMember { + /** Whether this is the last page. */ + isLast?: boolean; + /** The maximum number of items that could be returned. */ + maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; + /** The index of the first item returned. */ + startAt?: number; + /** The number of items returned. */ + total?: number; + /** The list of items. */ + values?: SecurityLevelMember[]; +} diff --git a/src/version3/models/pageSecuritySchemeWithProjects.ts b/src/version3/models/pageSecuritySchemeWithProjects.ts new file mode 100644 index 0000000000..06b1431177 --- /dev/null +++ b/src/version3/models/pageSecuritySchemeWithProjects.ts @@ -0,0 +1,19 @@ +import { SecuritySchemeWithProjects } from './securitySchemeWithProjects'; + +/** A page of items. */ +export interface PageSecuritySchemeWithProjects { + /** Whether this is the last page. */ + isLast?: boolean; + /** The maximum number of items that could be returned. */ + maxResults?: number; + /** If there is another page of results, the URL of the next page. */ + nextPage?: string; + /** The URL of the page. */ + self?: string; + /** The index of the first item returned. */ + startAt?: number; + /** The number of items returned. */ + total?: number; + /** The list of items. */ + values?: SecuritySchemeWithProjects[]; +} diff --git a/src/version3/models/securityLevelMember.ts b/src/version3/models/securityLevelMember.ts new file mode 100644 index 0000000000..4c2f05fc63 --- /dev/null +++ b/src/version3/models/securityLevelMember.ts @@ -0,0 +1,12 @@ +import { PermissionHolder } from './permissionHolder'; + +/** Issue security level member. */ +export interface SecurityLevelMember { + holder?: PermissionHolder; + /** The ID of the issue security level member. */ + id: string; + /** The ID of the issue security level. */ + issueSecurityLevelId: string; + /** The ID of the issue security scheme. */ + issueSecuritySchemeId: string; +} diff --git a/src/version3/models/securitySchemeId.ts b/src/version3/models/securitySchemeId.ts new file mode 100644 index 0000000000..dfaa746d08 --- /dev/null +++ b/src/version3/models/securitySchemeId.ts @@ -0,0 +1,5 @@ +/** The ID of the issue security scheme. */ +export interface SecuritySchemeId { + /** The ID of the issue security scheme. */ + id: string; +} diff --git a/src/version3/models/securitySchemeLevel.ts b/src/version3/models/securitySchemeLevel.ts new file mode 100644 index 0000000000..a1e5b28ac4 --- /dev/null +++ b/src/version3/models/securitySchemeLevel.ts @@ -0,0 +1,12 @@ +import { SecuritySchemeLevelMember } from './securitySchemeLevelMember'; + +export interface SecuritySchemeLevel { + /** The description of the issue security scheme level. */ + description?: string; + /** Specifies whether the level is the default level. False by default. */ + isDefault?: boolean; + /** The list of level members which should be added to the issue security scheme level. */ + members?: SecuritySchemeLevelMember[]; + /** The name of the issue security scheme level. Must be unique. */ + name: string; +} diff --git a/src/version3/models/securitySchemeLevelMember.ts b/src/version3/models/securitySchemeLevelMember.ts new file mode 100644 index 0000000000..1bf52f7a8a --- /dev/null +++ b/src/version3/models/securitySchemeLevelMember.ts @@ -0,0 +1,6 @@ +export interface SecuritySchemeLevelMember { + /** The value corresponding to the specified member type. */ + parameter?: string; + /** The issue security level member type, e.g `reporter`, `group`, `user`. */ + type: string; +} diff --git a/src/version3/models/securitySchemeMembersRequest.ts b/src/version3/models/securitySchemeMembersRequest.ts new file mode 100644 index 0000000000..0c8146b55c --- /dev/null +++ b/src/version3/models/securitySchemeMembersRequest.ts @@ -0,0 +1,7 @@ +import { SecuritySchemeLevelMember } from './securitySchemeLevelMember'; + +/** Details of issue security scheme level new members. */ +export interface SecuritySchemeMembersRequest { + /** The list of level members which should be added to the issue security scheme level. */ + members?: SecuritySchemeLevelMember[]; +} diff --git a/src/version3/models/securitySchemeWithProjects.ts b/src/version3/models/securitySchemeWithProjects.ts new file mode 100644 index 0000000000..3726acea89 --- /dev/null +++ b/src/version3/models/securitySchemeWithProjects.ts @@ -0,0 +1,15 @@ +/** Details about an issue security scheme. */ +export interface SecuritySchemeWithProjects { + /** The default level ID of the issue security scheme. */ + defaultLevel?: number; + /** The description of the issue security scheme. */ + description?: string; + /** The ID of the issue security scheme. */ + id: number; + /** The name of the issue security scheme. */ + name: string; + /** The list of project IDs associated with the issue security scheme. */ + projectIds?: number[]; + /** The URL of the issue security scheme. */ + self: string; +} diff --git a/src/version3/models/setDefaultLevelsRequest.ts b/src/version3/models/setDefaultLevelsRequest.ts new file mode 100644 index 0000000000..64888b0ce6 --- /dev/null +++ b/src/version3/models/setDefaultLevelsRequest.ts @@ -0,0 +1,7 @@ +import { DefaultLevelValue } from './defaultLevelValue'; + +/** Details of new default levels. */ +export interface SetDefaultLevelsRequest { + /** List of objects with issue security scheme ID and new default level ID. */ + defaultValues: DefaultLevelValue[]; +} diff --git a/src/version3/models/updateIssueSecurityLevelDetails.ts b/src/version3/models/updateIssueSecurityLevelDetails.ts new file mode 100644 index 0000000000..6cad319f39 --- /dev/null +++ b/src/version3/models/updateIssueSecurityLevelDetails.ts @@ -0,0 +1,7 @@ +/** Details of issue security scheme level. */ +export interface UpdateIssueSecurityLevelDetails { + /** The description of the issue security scheme level. */ + description?: string; + /** The name of the issue security scheme level. Must be unique. */ + name?: string; +} diff --git a/src/version3/models/updateIssueSecuritySchemeRequest.ts b/src/version3/models/updateIssueSecuritySchemeRequest.ts new file mode 100644 index 0000000000..86f0ba32e3 --- /dev/null +++ b/src/version3/models/updateIssueSecuritySchemeRequest.ts @@ -0,0 +1,6 @@ +export interface UpdateIssueSecuritySchemeRequest { + /** The description of the security scheme. */ + description?: string; + /** The name of the security scheme. Must be unique. */ + name?: string; +} diff --git a/src/version3/parameters/addSecurityLevel.ts b/src/version3/parameters/addSecurityLevel.ts new file mode 100644 index 0000000000..ed915fa92c --- /dev/null +++ b/src/version3/parameters/addSecurityLevel.ts @@ -0,0 +1,6 @@ +import { AddSecuritySchemeLevelsRequest } from '../models'; + +export interface AddSecurityLevel extends AddSecuritySchemeLevelsRequest { + /** The ID of the issue security scheme. */ + schemeId: string; +} diff --git a/src/version3/parameters/addSecurityLevelMembers.ts b/src/version3/parameters/addSecurityLevelMembers.ts new file mode 100644 index 0000000000..ac1a26e84d --- /dev/null +++ b/src/version3/parameters/addSecurityLevelMembers.ts @@ -0,0 +1,8 @@ +import { SecuritySchemeMembersRequest } from '../models'; + +export interface AddSecurityLevelMembers extends SecuritySchemeMembersRequest { + /** The ID of the issue security scheme. */ + schemeId: string; + /** The ID of the issue security level. */ + levelId: string; +} diff --git a/src/version3/parameters/createIssueSecurityScheme.ts b/src/version3/parameters/createIssueSecurityScheme.ts new file mode 100644 index 0000000000..0f290307b4 --- /dev/null +++ b/src/version3/parameters/createIssueSecurityScheme.ts @@ -0,0 +1,3 @@ +import { CreateIssueSecuritySchemeDetails } from '../models'; + +export interface CreateIssueSecurityScheme extends CreateIssueSecuritySchemeDetails {} diff --git a/src/version3/parameters/deleteAppProperty.ts b/src/version3/parameters/deleteAppProperty.ts new file mode 100644 index 0000000000..91efe84b73 --- /dev/null +++ b/src/version3/parameters/deleteAppProperty.ts @@ -0,0 +1,4 @@ +export interface DeleteAppProperty { + /** The key of the property. */ + propertyKey: string; +} diff --git a/src/version3/parameters/deleteSecurityScheme.ts b/src/version3/parameters/deleteSecurityScheme.ts new file mode 100644 index 0000000000..6951711e73 --- /dev/null +++ b/src/version3/parameters/deleteSecurityScheme.ts @@ -0,0 +1,4 @@ +export interface DeleteSecurityScheme { + /** The ID of the issue security scheme. */ + schemeId: string; +} diff --git a/src/version3/parameters/getSecurityLevelMembers.ts b/src/version3/parameters/getSecurityLevelMembers.ts new file mode 100644 index 0000000000..cf72d40bda --- /dev/null +++ b/src/version3/parameters/getSecurityLevelMembers.ts @@ -0,0 +1,32 @@ +export interface GetSecurityLevelMembers { + /** The index of the first item to return in a page of results (page offset). */ + startAt?: string; + /** The maximum number of items to return per page. */ + maxResults?: string; + /** + * The list of issue security level member IDs. To include multiple issue security level members separate IDs with an + * ampersand: `id=10000&id=10001`. + */ + id?: string[]; + /** + * The list of issue security scheme IDs. To include multiple issue security schemes separate IDs with an ampersand: + * `schemeId=10000&schemeId=10001`. + */ + schemeId?: string[]; + /** + * The list of issue security level IDs. To include multiple issue security levels separate IDs with an ampersand: + * `levelId=10000&levelId=10001`. + */ + levelId?: string[]; + /** + * Use expand to include additional information in the response. This parameter accepts a comma-separated list. Expand + * options include: + * + * - `all` Returns all expandable information + * - `field` Returns information about the custom field granted the permission + * - `group` Returns information about the group that is granted the permission + * - `projectRole` Returns information about the project role granted the permission + * - `user` Returns information about the user who is granted the permission + */ + expand?: string | string[]; +} diff --git a/src/version3/parameters/getSecurityLevels.ts b/src/version3/parameters/getSecurityLevels.ts new file mode 100644 index 0000000000..05024f88eb --- /dev/null +++ b/src/version3/parameters/getSecurityLevels.ts @@ -0,0 +1,21 @@ +export interface GetSecurityLevels { + /** The index of the first item to return in a page of results (page offset). */ + startAt?: string; + /** The maximum number of items to return per page. */ + maxResults?: string; + /** + * The list of issue security scheme level IDs. To include multiple issue security levels, separate IDs with an + * ampersand: `id=10000&id=10001`. + */ + id?: string[]; + /** + * The list of issue security scheme IDs. To include multiple issue security schemes, separate IDs with an ampersand: + * `schemeId=10000&schemeId=10001`. + */ + schemeId?: string[]; + /** + * When set to true, returns multiple default levels for each security scheme containing a default. If you provide + * scheme and level IDs not associated with the default, returns an empty page. The default value is false. + */ + onlyDefault?: boolean; +} diff --git a/src/version3/parameters/index.ts b/src/version3/parameters/index.ts index 86f757a2c0..65adc52cd5 100644 --- a/src/version3/parameters/index.ts +++ b/src/version3/parameters/index.ts @@ -5,23 +5,18 @@ export * from './addFieldToDefaultScreen'; export * from './addGadget'; export * from './addIssueTypesToContext'; export * from './addIssueTypesToIssueTypeScheme'; +export * from './addNotifications'; export * from './addProjectRoleActorsToRole'; export * from './addScreenTab'; export * from './addScreenTabField'; +export * from './addSecurityLevel'; +export * from './addSecurityLevelMembers'; export * from './addSharePermission'; export * from './addUserToGroup'; export * from './addVote'; export * from './addWatcher'; export * from './addWorklog'; -export * from './updatePrecomputations'; -export * from './getPrecomputations'; -export * from './createNotificationScheme'; -export * from './getNotificationSchemeToProjectMappings'; -export * from './updateNotificationScheme'; -export * from './addNotifications'; export * from './analyseExpression'; -export * from './deleteNotificationScheme'; -export * from './removeNotificationFromNotificationScheme'; export * from './appendMappingsForIssueTypeScreenScheme'; export * from './archiveProject'; export * from './assignFieldConfigurationSchemeToProject'; @@ -60,10 +55,12 @@ export * from './createIssueAdjustment'; export * from './createIssueFieldOption'; export * from './createIssueLinkType'; export * from './createIssues'; +export * from './createIssueSecurityScheme'; export * from './createIssueType'; export * from './createIssueTypeAvatar'; export * from './createIssueTypeScheme'; export * from './createIssueTypeScreenScheme'; +export * from './createNotificationScheme'; export * from './createOrUpdateRemoteIssueLink'; export * from './createPermissionGrant'; export * from './createPermissionScheme'; @@ -86,6 +83,7 @@ export * from './createWorkflowTransitionProperty'; export * from './deleteActor'; export * from './deleteAddonProperty'; export * from './deleteAndReplaceVersion'; +export * from './deleteAppProperty'; export * from './deleteAvatar'; export * from './deleteComment'; export * from './deleteCommentProperty'; @@ -114,6 +112,7 @@ export * from './deleteIssueType'; export * from './deleteIssueTypeProperty'; export * from './deleteIssueTypeScheme'; export * from './deleteIssueTypeScreenScheme'; +export * from './deleteNotificationScheme'; export * from './deletePermissionScheme'; export * from './deletePermissionSchemeEntity'; export * from './deletePriority'; @@ -129,6 +128,7 @@ export * from './deleteResolution'; export * from './deleteScreen'; export * from './deleteScreenScheme'; export * from './deleteScreenTab'; +export * from './deleteSecurityScheme'; export * from './deleteSharePermission'; export * from './deleteStatusesById'; export * from './deleteUiModification'; @@ -268,12 +268,14 @@ export * from './getMyPermissions'; export * from './getNotificationScheme'; export * from './getNotificationSchemeForProject'; export * from './getNotificationSchemes'; +export * from './getNotificationSchemeToProjectMappings'; export * from './getOptionsForContext'; export * from './getOptionsForField'; export * from './getPermissionScheme'; export * from './getPermissionSchemeGrant'; export * from './getPermissionSchemeGrants'; export * from './getPermittedProjects'; +export * from './getPrecomputations'; export * from './getPreference'; export * from './getPriority'; export * from './getProject'; @@ -301,6 +303,8 @@ export * from './getResolution'; export * from './getScreens'; export * from './getScreenSchemes'; export * from './getScreensForField'; +export * from './getSecurityLevelMembers'; +export * from './getSecurityLevels'; export * from './getSecurityLevelsForProject'; export * from './getSelectableIssueFieldOptions'; export * from './getSharePermission'; @@ -354,6 +358,7 @@ export * from './parseJqlQueries'; export * from './partialUpdateProjectRole'; export * from './publishDraftWorkflowScheme'; export * from './putAddonProperty'; +export * from './putAppProperty'; export * from './refreshWebhooks'; export * from './registerDynamicWebhooks'; export * from './registerModules'; @@ -365,8 +370,11 @@ export * from './removeIssueTypeFromIssueTypeScheme'; export * from './removeIssueTypesFromContext'; export * from './removeIssueTypesFromGlobalFieldConfigurationScheme'; export * from './removeIssueTypesFromGlobalFieldConfigurationScheme'; +export * from './removeLevel'; export * from './removeMappingsFromIssueTypeScreenScheme'; +export * from './removeMemberFromSecurityLevel'; export * from './removeModules'; +export * from './removeNotificationFromNotificationScheme'; export * from './removePreference'; export * from './removeProjectCategory'; export * from './removeScreenTabField'; @@ -388,7 +396,9 @@ export * from './searchForIssuesUsingJql'; export * from './searchForIssuesUsingJqlPost'; export * from './searchPriorities'; export * from './searchProjects'; +export * from './searchProjectsUsingSecuritySchemes'; export * from './searchResolutions'; +export * from './searchSecuritySchemes'; export * from './selectTimeTrackingImplementation'; export * from './setActors'; export * from './setApplicationProperty'; @@ -396,6 +406,7 @@ export * from './setBanner'; export * from './setColumns'; export * from './setCommentProperty'; export * from './setDashboardItemProperty'; +export * from './setDefaultLevels'; export * from './setDefaultPriority'; export * from './setDefaultResolution'; export * from './setDefaultShareScope'; @@ -442,11 +453,14 @@ export * from './updateIssueAdjustment'; export * from './updateIssueFieldOption'; export * from './updateIssueFields'; export * from './updateIssueLinkType'; +export * from './updateIssueSecurityScheme'; export * from './updateIssueType'; export * from './updateIssueTypeScheme'; export * from './updateIssueTypeScreenScheme'; export * from './updateMultipleCustomFieldValues'; +export * from './updateNotificationScheme'; export * from './updatePermissionScheme'; +export * from './updatePrecomputations'; export * from './updatePriority'; export * from './updateProject'; export * from './updateProjectAvatar'; @@ -457,6 +471,7 @@ export * from './updateRemoteIssueLink'; export * from './updateResolution'; export * from './updateScreen'; export * from './updateScreenScheme'; +export * from './updateSecurityLevel'; export * from './updateStatuses'; export * from './updateUiModification'; export * from './updateVersion'; diff --git a/src/version3/parameters/putAddonProperty.ts b/src/version3/parameters/putAddonProperty.ts index 0199699cdb..e55c600f54 100644 --- a/src/version3/parameters/putAddonProperty.ts +++ b/src/version3/parameters/putAddonProperty.ts @@ -3,5 +3,7 @@ export interface PutAddonProperty { addonKey: string; /** The key of the property. */ propertyKey: string; + /** @deprecated */ property: any; + propertyValue: any; } diff --git a/src/version3/parameters/putAppProperty.ts b/src/version3/parameters/putAppProperty.ts new file mode 100644 index 0000000000..8e156e580c --- /dev/null +++ b/src/version3/parameters/putAppProperty.ts @@ -0,0 +1,6 @@ +export interface PutAppProperty { + /** The key of the property. */ + propertyKey: string; + /** The value of the property. */ + propertyValue: string; +} diff --git a/src/version3/parameters/removeLevel.ts b/src/version3/parameters/removeLevel.ts new file mode 100644 index 0000000000..571f2e800f --- /dev/null +++ b/src/version3/parameters/removeLevel.ts @@ -0,0 +1,8 @@ +export interface RemoveLevel { + /** The ID of the issue security scheme. */ + schemeId: string; + /** The ID of the issue security level to remove. */ + levelId: string; + /** The ID of the issue security level that will replace the currently selected level. */ + replaceWith?: string; +} diff --git a/src/version3/parameters/removeMemberFromSecurityLevel.ts b/src/version3/parameters/removeMemberFromSecurityLevel.ts new file mode 100644 index 0000000000..6a880e85e2 --- /dev/null +++ b/src/version3/parameters/removeMemberFromSecurityLevel.ts @@ -0,0 +1,8 @@ +export interface RemoveMemberFromSecurityLevel { + /** The ID of the issue security scheme. */ + schemeId: string; + /** The ID of the issue security level. */ + levelId: string; + /** The ID of the issue security level member to be removed. */ + memberId: string; +} diff --git a/src/version3/parameters/searchProjectsUsingSecuritySchemes.ts b/src/version3/parameters/searchProjectsUsingSecuritySchemes.ts new file mode 100644 index 0000000000..6e2ee07020 --- /dev/null +++ b/src/version3/parameters/searchProjectsUsingSecuritySchemes.ts @@ -0,0 +1,10 @@ +export interface SearchProjectsUsingSecuritySchemes { + /** The index of the first item to return in a page of results (page offset). */ + startAt?: string; + /** The maximum number of items to return per page. */ + maxResults?: string; + /** The list of security scheme IDs to be filtered out. */ + issueSecuritySchemeId?: string[]; + /** The list of project IDs to be filtered out. */ + projectId?: string[]; +} diff --git a/src/version3/parameters/searchSecuritySchemes.ts b/src/version3/parameters/searchSecuritySchemes.ts new file mode 100644 index 0000000000..eb6b6edc62 --- /dev/null +++ b/src/version3/parameters/searchSecuritySchemes.ts @@ -0,0 +1,16 @@ +export interface SearchSecuritySchemes { + /** The index of the first item to return in a page of results (page offset). */ + startAt?: string; + /** The maximum number of items to return per page. */ + maxResults?: string; + /** + * The list of issue security scheme IDs. To include multiple issue security scheme IDs, separate IDs with an + * ampersand: `id=10000&id=10001`. + */ + id?: string[]; + /** + * The list of project IDs. To include multiple project IDs, separate IDs with an ampersand: + * `projectId=10000&projectId=10001`. + */ + projectId?: string[]; +} diff --git a/src/version3/parameters/setDefaultLevels.ts b/src/version3/parameters/setDefaultLevels.ts new file mode 100644 index 0000000000..5162dac472 --- /dev/null +++ b/src/version3/parameters/setDefaultLevels.ts @@ -0,0 +1,3 @@ +import { SetDefaultLevelsRequest } from '../models'; + +export interface SetDefaultLevels extends SetDefaultLevelsRequest {} diff --git a/src/version3/parameters/updateIssueSecurityScheme.ts b/src/version3/parameters/updateIssueSecurityScheme.ts new file mode 100644 index 0000000000..a8487768b9 --- /dev/null +++ b/src/version3/parameters/updateIssueSecurityScheme.ts @@ -0,0 +1,6 @@ +import { UpdateIssueSecuritySchemeRequest } from '../models'; + +export interface UpdateIssueSecurityScheme extends UpdateIssueSecuritySchemeRequest { + /** The ID of the issue security scheme. */ + id: string; +} diff --git a/src/version3/parameters/updateSecurityLevel.ts b/src/version3/parameters/updateSecurityLevel.ts new file mode 100644 index 0000000000..0ae179629d --- /dev/null +++ b/src/version3/parameters/updateSecurityLevel.ts @@ -0,0 +1,8 @@ +import { UpdateIssueSecurityLevelDetails } from '../models'; + +export interface UpdateSecurityLevel extends UpdateIssueSecurityLevelDetails { + /** The ID of the issue security scheme level belongs to. */ + schemeId: string; + /** The ID of the issue security level to update. */ + levelId: string; +} diff --git a/src/version3/projectAvatars.ts b/src/version3/projectAvatars.ts index 04763aa5eb..f343761268 100644 --- a/src/version3/projectAvatars.ts +++ b/src/version3/projectAvatars.ts @@ -35,12 +35,12 @@ export class ProjectAvatars { url: `/rest/api/3/project/${parameters.projectIdOrKey}/avatar`, method: 'PUT', data: { + fileName: parameters.fileName, id: parameters.id, - owner: parameters.owner, - isSystemAvatar: parameters.isSystemAvatar, - isSelected: parameters.isSelected, isDeletable: parameters.isDeletable, - fileName: parameters.fileName, + isSelected: parameters.isSelected, + isSystemAvatar: parameters.isSystemAvatar, + owner: parameters.owner, urls: parameters.urls, }, }; diff --git a/src/version3/projects.ts b/src/version3/projects.ts index ee1c2a5f09..0cd130f8e9 100644 --- a/src/version3/projects.ts +++ b/src/version3/projects.ts @@ -41,8 +41,8 @@ export class Projects { method: 'GET', params: { expand: parameters?.expand, - recent: parameters?.recent, properties: parameters?.properties, + recent: parameters?.recent, }, }; @@ -52,11 +52,11 @@ export class Projects { /** * Creates a project based on a project type template, as shown in the following table: * - * | Project Type Key | Project Template Key | - * | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | - * | `business` | `com.atlassian.jira-core-project-templates:jira-core-simplified-content-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-document-approval`, `com.atlassian.jira-core-project-templates:jira-core-simplified-lead-tracking`, `com.atlassian.jira-core-project-templates:jira-core-simplified-process-control`, `com.atlassian.jira-core-project-templates:jira-core-simplified-procurement`, `com.atlassian.jira-core-project-templates:jira-core-simplified-project-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-recruitment`, `com.atlassian.jira-core-project-templates:jira-core-simplified-task-tracking` | - * | `service_desk` | `com.atlassian.servicedesk:simplified-it-service-management`, `com.atlassian.servicedesk:simplified-general-service-desk-it`, `com.atlassian.servicedesk:simplified-general-service-desk-business`, `com.atlassian.servicedesk:simplified-internal-service-desk`, `com.atlassian.servicedesk:simplified-external-service-desk`, `com.atlassian.servicedesk:simplified-hr-service-desk`, `com.atlassian.servicedesk:simplified-facilities-service-desk`, `com.atlassian.servicedesk:simplified-legal-service-desk`, `com.atlassian.servicedesk:simplified-analytics-service-desk`, `com.atlassian.servicedesk:simplified-marketing-service-desk`, `com.atlassian.servicedesk:simplified-finance-service-desk` | - * | `software` | `com.pyxis.greenhopper.jira:gh-simplified-agility-kanban`, `com.pyxis.greenhopper.jira:gh-simplified-agility-scrum`, `com.pyxis.greenhopper.jira:gh-simplified-basic`, `com.pyxis.greenhopper.jira:gh-simplified-kanban-classic`, `com.pyxis.greenhopper.jira:gh-simplified-scrum-classic` | + * | Project Type Key | Project Template Key | + * | ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | + * | `business` | `com.atlassian.jira-core-project-templates:jira-core-simplified-content-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-document-approval`, `com.atlassian.jira-core-project-templates:jira-core-simplified-lead-tracking`, `com.atlassian.jira-core-project-templates:jira-core-simplified-process-control`, `com.atlassian.jira-core-project-templates:jira-core-simplified-procurement`, `com.atlassian.jira-core-project-templates:jira-core-simplified-project-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-recruitment`, `com.atlassian.jira-core-project-templates:jira-core-simplified-task-tracking` | + * | `service_desk` | `com.atlassian.servicedesk:simplified-it-service-management`, `com.atlassian.servicedesk:simplified-general-service-desk-it`, `com.atlassian.servicedesk:simplified-general-service-desk-business`, `com.atlassian.servicedesk:simplified-internal-service-desk`, `com.atlassian.servicedesk:simplified-external-service-desk`, `com.atlassian.servicedesk:simplified-hr-service-desk`, `com.atlassian.servicedesk:simplified-facilities-service-desk`, `com.atlassian.servicedesk:simplified-legal-service-desk`, `com.atlassian.servicedesk:simplified-analytics-service-desk`, `com.atlassian.servicedesk:simplified-marketing-service-desk`, `com.atlassian.servicedesk:simplified-design-service-desk`, `com.atlassian.servicedesk:simplified-sales-service-desk`, `com.atlassian.servicedesk:simplified-finance-service-desk` | + * | `software` | `com.pyxis.greenhopper.jira:gh-simplified-agility-kanban`, `com.pyxis.greenhopper.jira:gh-simplified-agility-scrum`, `com.pyxis.greenhopper.jira:gh-simplified-basic`, `com.pyxis.greenhopper.jira:gh-cross-team-template`, `com.pyxis.greenhopper.jira:gh-simplified-kanban-classic`, `com.pyxis.greenhopper.jira:gh-simplified-scrum-classic` | * * The project types are available according to the installed Jira features as follows: * @@ -79,11 +79,11 @@ export class Projects { /** * Creates a project based on a project type template, as shown in the following table: * - * | Project Type Key | Project Template Key | - * | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | - * | `business` | `com.atlassian.jira-core-project-templates:jira-core-simplified-content-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-document-approval`, `com.atlassian.jira-core-project-templates:jira-core-simplified-lead-tracking`, `com.atlassian.jira-core-project-templates:jira-core-simplified-process-control`, `com.atlassian.jira-core-project-templates:jira-core-simplified-procurement`, `com.atlassian.jira-core-project-templates:jira-core-simplified-project-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-recruitment`, `com.atlassian.jira-core-project-templates:jira-core-simplified-task-tracking` | - * | `service_desk` | `com.atlassian.servicedesk:simplified-it-service-management`, `com.atlassian.servicedesk:simplified-general-service-desk-it`, `com.atlassian.servicedesk:simplified-general-service-desk-business`, `com.atlassian.servicedesk:simplified-internal-service-desk`, `com.atlassian.servicedesk:simplified-external-service-desk`, `com.atlassian.servicedesk:simplified-hr-service-desk`, `com.atlassian.servicedesk:simplified-facilities-service-desk`, `com.atlassian.servicedesk:simplified-legal-service-desk`, `com.atlassian.servicedesk:simplified-analytics-service-desk`, `com.atlassian.servicedesk:simplified-marketing-service-desk`, `com.atlassian.servicedesk:simplified-finance-service-desk` | - * | `software` | `com.pyxis.greenhopper.jira:gh-simplified-agility-kanban`, `com.pyxis.greenhopper.jira:gh-simplified-agility-scrum`, `com.pyxis.greenhopper.jira:gh-simplified-basic`, `com.pyxis.greenhopper.jira:gh-simplified-kanban-classic`, `com.pyxis.greenhopper.jira:gh-simplified-scrum-classic` | + * | Project Type Key | Project Template Key | + * | ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | + * | `business` | `com.atlassian.jira-core-project-templates:jira-core-simplified-content-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-document-approval`, `com.atlassian.jira-core-project-templates:jira-core-simplified-lead-tracking`, `com.atlassian.jira-core-project-templates:jira-core-simplified-process-control`, `com.atlassian.jira-core-project-templates:jira-core-simplified-procurement`, `com.atlassian.jira-core-project-templates:jira-core-simplified-project-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-recruitment`, `com.atlassian.jira-core-project-templates:jira-core-simplified-task-tracking` | + * | `service_desk` | `com.atlassian.servicedesk:simplified-it-service-management`, `com.atlassian.servicedesk:simplified-general-service-desk-it`, `com.atlassian.servicedesk:simplified-general-service-desk-business`, `com.atlassian.servicedesk:simplified-internal-service-desk`, `com.atlassian.servicedesk:simplified-external-service-desk`, `com.atlassian.servicedesk:simplified-hr-service-desk`, `com.atlassian.servicedesk:simplified-facilities-service-desk`, `com.atlassian.servicedesk:simplified-legal-service-desk`, `com.atlassian.servicedesk:simplified-analytics-service-desk`, `com.atlassian.servicedesk:simplified-marketing-service-desk`, `com.atlassian.servicedesk:simplified-design-service-desk`, `com.atlassian.servicedesk:simplified-sales-service-desk`, `com.atlassian.servicedesk:simplified-finance-service-desk` | + * | `software` | `com.pyxis.greenhopper.jira:gh-simplified-agility-kanban`, `com.pyxis.greenhopper.jira:gh-simplified-agility-scrum`, `com.pyxis.greenhopper.jira:gh-simplified-basic`, `com.pyxis.greenhopper.jira:gh-cross-team-template`, `com.pyxis.greenhopper.jira:gh-simplified-kanban-classic`, `com.pyxis.greenhopper.jira:gh-simplified-scrum-classic` | * * The project types are available according to the installed Jira features as follows: * @@ -111,24 +111,24 @@ export class Projects { url: '/rest/api/3/project', method: 'POST', data: { - key: parameters.key, - name: parameters.name, - description: parameters.description, - lead: parameters.lead, - leadAccountId: parameters.leadAccountId, - url: parameters.url, assigneeType: parameters.assigneeType, avatarId: parameters.avatarId, + categoryId: parameters.categoryId, + description: parameters.description, + fieldConfigurationScheme: parameters.fieldConfigurationScheme, issueSecurityScheme: parameters.issueSecurityScheme, - permissionScheme: parameters.permissionScheme, + issueTypeScheme: parameters.issueTypeScheme, + issueTypeScreenScheme: parameters.issueTypeScreenScheme, + key: parameters.key, + lead: parameters.lead, + leadAccountId: parameters.leadAccountId, + name: parameters.name, notificationScheme: parameters.notificationScheme, - categoryId: parameters.categoryId, - projectTypeKey: parameters.projectTypeKey, + permissionScheme: parameters.permissionScheme, projectTemplateKey: parameters.projectTemplateKey, + projectTypeKey: parameters.projectTypeKey, + url: parameters.url, workflowScheme: parameters.workflowScheme, - issueTypeScreenScheme: parameters.issueTypeScreenScheme, - issueTypeScheme: parameters.issueTypeScheme, - fieldConfigurationScheme: parameters.fieldConfigurationScheme, }, }; @@ -216,19 +216,19 @@ export class Projects { url: '/rest/api/3/project/search', method: 'GET', params: { - startAt: parameters?.startAt, - maxResults: parameters?.maxResults, - orderBy: parameters?.orderBy, - id: parameters?.id, - keys: parameters?.keys, - query: parameters?.query, - typeKey: parameters?.typeKey, - categoryId: parameters?.categoryId, action: parameters?.action, + categoryId: parameters?.categoryId, expand: parameters?.expand, - status: parameters?.status, + id: parameters?.id, + keys: parameters?.keys, + maxResults: parameters?.maxResults, + orderBy: parameters?.orderBy, properties: parameters?.properties, propertyQuery: parameters?.propertyQuery, + query: parameters?.query, + startAt: parameters?.startAt, + status: parameters?.status, + typeKey: parameters?.typeKey, }, }; @@ -303,20 +303,20 @@ export class Projects { expand: parameters.expand, }, data: { - key: parameters.key, - name: parameters.name, - projectTypeKey: parameters.projectTypeKey, - projectTemplateKey: parameters.projectTemplateKey, - description: parameters.description, - lead: parameters.lead, - leadAccountId: parameters.leadAccountId, - url: parameters.url, assigneeType: parameters.assigneeType, avatarId: parameters.avatarId, + categoryId: parameters.categoryId, + description: parameters.description, issueSecurityScheme: parameters.issueSecurityScheme, - permissionScheme: parameters.permissionScheme, + key: parameters.key, + lead: parameters.lead, + leadAccountId: parameters.leadAccountId, + name: parameters.name, notificationScheme: parameters.notificationScheme, - categoryId: parameters.categoryId, + permissionScheme: parameters.permissionScheme, + projectTemplateKey: parameters.projectTemplateKey, + projectTypeKey: parameters.projectTypeKey, + url: parameters.url, }, }; @@ -396,7 +396,7 @@ export class Projects { * This operation is: * * - Transactional, that is, if part of the delete fails the project is not deleted. - * - [asynchronous](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#async-operations). Follow the + * - [asynchronous](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#async-operations). Follow the * `location` link in the response to determine the status of the task and use [Get * task](#api-rest-api-3-task-taskId-get) to obtain subsequent updates. * @@ -413,7 +413,7 @@ export class Projects { * This operation is: * * - Transactional, that is, if part of the delete fails the project is not deleted. - * - [asynchronous](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#async-operations). Follow the + * - [asynchronous](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#async-operations). Follow the * `location` link in the response to determine the status of the task and use [Get * task](#api-rest-api-3-task-taskId-get) to obtain subsequent updates. * @@ -597,8 +597,6 @@ export class Projects { * * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg) or _Administer Projects_ [project - * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** - * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg) or _Administer Projects_ [project * permission](https://confluence.atlassian.com/x/yodKLg). */ async getNotificationSchemeForProject( @@ -611,8 +609,6 @@ export class Projects { * * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg) or _Administer Projects_ [project - * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** - * _Administer Jira_ [global permission](https://confluence.atlassian.com/x/x4dKLg) or _Administer Projects_ [project * permission](https://confluence.atlassian.com/x/yodKLg). */ async getNotificationSchemeForProject( diff --git a/src/version3/users.ts b/src/version3/users.ts index 72b93cd50a..f5c1840b4b 100644 --- a/src/version3/users.ts +++ b/src/version3/users.ts @@ -36,9 +36,9 @@ export class Users { method: 'GET', params: { accountId: parameters?.accountId, - username: parameters?.username, - key: parameters?.key, expand: parameters?.expand, + key: parameters?.key, + username: parameters?.username, }, }; @@ -72,13 +72,13 @@ export class Users { url: '/rest/api/3/user', method: 'POST', data: { - self: parameters.self, + applicationKeys: parameters.applicationKeys, + displayName: parameters.displayName, + emailAddress: parameters.emailAddress, key: parameters.key, name: parameters.name, password: parameters.password, - emailAddress: parameters.emailAddress, - displayName: parameters.displayName, - applicationKeys: parameters.applicationKeys, + self: parameters.self, }, }; @@ -107,8 +107,8 @@ export class Users { method: 'DELETE', params: { accountId: parameters.accountId, - username: parameters.username, key: parameters.key, + username: parameters.username, }, }; @@ -139,11 +139,11 @@ export class Users { url: '/rest/api/3/user/bulk', method: 'GET', params: { - startAt: parameters.startAt, + accountId: paramSerializer('accountId', parameters.accountId), + key: parameters.key, maxResults: parameters.maxResults, + startAt: parameters.startAt, username: parameters.username, - key: parameters.key, - accountId: paramSerializer('accountId', parameters.accountId), }, }; @@ -180,10 +180,10 @@ export class Users { url: '/rest/api/3/user/bulk/migration', method: 'GET', params: { - startAt: parameters.startAt, + key: paramSerializer('key', parameters.key), maxResults: parameters.maxResults, + startAt: parameters.startAt, username: paramSerializer('username', parameters.username), - key: paramSerializer('key', parameters.key), }, }; @@ -407,8 +407,8 @@ export class Users { method: 'GET', params: { accountId: parameters.accountId, - username: parameters.username, key: parameters.key, + username: parameters.username, }, }; @@ -450,8 +450,8 @@ export class Users { url: '/rest/api/3/users', method: 'GET', params: { - startAt: parameters?.startAt, maxResults: parameters?.maxResults, + startAt: parameters?.startAt, }, }; @@ -490,8 +490,8 @@ export class Users { url: '/rest/api/3/users/search', method: 'GET', params: { - startAt: parameters?.startAt, maxResults: parameters?.maxResults, + startAt: parameters?.startAt, }, }; diff --git a/src/version3/workflowTransitionRules.ts b/src/version3/workflowTransitionRules.ts index b06e5b436b..21d2a8e41d 100644 --- a/src/version3/workflowTransitionRules.ts +++ b/src/version3/workflowTransitionRules.ts @@ -16,13 +16,16 @@ export class WorkflowTransitionRules { * functions](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-post-function/). * - Matching one or more transition rule keys. * - * Only workflows containing transition rules created by the calling Connect app are returned. + * Only workflows containing transition rules created by the calling + * [Connect](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps) or + * [Forge](https://developer.atlassian.com/cloud/jira/platform/index/#forge-apps) app are returned. * * Due to server-side optimizations, workflows with an empty list of rules may be returned; these workflows can be * ignored. * * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** Only - * Connect apps can use this operation. + * [Connect](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps) or + * [Forge](https://developer.atlassian.com/cloud/jira/platform/index/#forge-apps) apps can use this operation. */ async getWorkflowTransitionRuleConfigurations( parameters: Parameters.GetWorkflowTransitionRuleConfigurations, @@ -37,13 +40,16 @@ export class WorkflowTransitionRules { * functions](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-post-function/). * - Matching one or more transition rule keys. * - * Only workflows containing transition rules created by the calling Connect app are returned. + * Only workflows containing transition rules created by the calling + * [Connect](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps) or + * [Forge](https://developer.atlassian.com/cloud/jira/platform/index/#forge-apps) app are returned. * * Due to server-side optimizations, workflows with an empty list of rules may be returned; these workflows can be * ignored. * * **[Permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#permissions) required:** Only - * Connect apps can use this operation. + * [Connect](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps) or + * [Forge](https://developer.atlassian.com/cloud/jira/platform/index/#forge-apps) apps can use this operation. */ async getWorkflowTransitionRuleConfigurations( parameters: Parameters.GetWorkflowTransitionRuleConfigurations,