@forge/api
8.4.0-next.78.4.0-next.8
out/webTrigger.js~
out/webTrigger.jsModified+14−42
Index: package/out/webTrigger.js
===================================================================
--- package/out/webTrigger.js
+++ package/out/webTrigger.js
@@ -2,15 +2,23 @@
Object.defineProperty(exports, "__esModule", { value: true });
exports.webTrigger = void 0;
const runtime_1 = require("./api/runtime");
const fetch_1 = require("./api/fetch");
-const proxyGetWebTriggerURL = (0, runtime_1.wrapInMetrics)('api.getWebTriggerUrl', async (webTriggerModuleKey, forceCreate) => {
+const proxyGetWebTriggerURL = (0, runtime_1.wrapInMetrics)('api.getWebTriggerUrl', async (webTriggerModuleKey, forceCreate, secretKeyConfig) => {
const runtime = (0, runtime_1.__getRuntime)();
const input = {
appId: runtime.appContext.appId,
envId: runtime.appContext.environmentId,
triggerKey: webTriggerModuleKey,
- contextId: runtime.contextAri
+ contextId: runtime.contextAri,
+ ...(secretKeyConfig !== undefined
+ ? {
+ secretKeyConfig: {
+ key: secretKeyConfig.key,
+ ...(secretKeyConfig.noExpiry !== undefined ? { noExpiry: secretKeyConfig.noExpiry } : {})
+ }
+ }
+ : {})
};
const response = await (0, fetch_1.__requestAtlassianAsApp)('/graphql', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
@@ -36,46 +44,8 @@
throw new Error(`Internal error occurred: Failed to get web trigger URL.`);
}
return responseBody.data.createWebTriggerUrl.url;
});
-const proxyCreateAuthWebTriggerURL = (0, runtime_1.wrapInMetrics)('api.createAuthWebTriggerUrl', async (webTriggerModuleKey, secretKeyConfig, forceCreate) => {
- const runtime = (0, runtime_1.__getRuntime)();
- const input = {
- appId: runtime.appContext.appId,
- envId: runtime.appContext.environmentId,
- triggerKey: webTriggerModuleKey,
- contextId: runtime.contextAri,
- secretKey: secretKeyConfig.key,
- ...(secretKeyConfig.noExpiry !== undefined ? { noExpiry: secretKeyConfig.noExpiry } : {})
- };
- const response = await (0, fetch_1.__requestAtlassianAsApp)('/graphql', {
- method: 'POST',
- headers: { 'Content-Type': 'application/json' },
- body: JSON.stringify({
- query: `
- mutation forge_app_createAuthenticatedWebTriggerUrl($input: CreateAuthenticatedWebTriggerUrlInput!, $forceCreate: Boolean) {
- createAuthenticatedWebTriggerUrl(input: $input, forceCreate: $forceCreate) {
- url
- keyId
- }
- }
- `,
- variables: {
- input,
- forceCreate
- }
- })
- });
- if (!response.ok) {
- throw new Error(`Internal error occurred: Failed to create authenticated web trigger URL: ${response.statusText}.`);
- }
- const responseBody = (await response.json());
- const { url, keyId } = responseBody?.data?.createAuthenticatedWebTriggerUrl ?? {};
- if (!url || !keyId) {
- throw new Error(`Internal error occurred: Failed to create authenticated web trigger URL.`);
- }
- return { url, keyId };
-});
const proxyDeleteWebTriggerURL = (0, runtime_1.wrapInMetrics)('api.deleteWebTriggerUrl', async (webTriggerUrl) => {
const webTriggerUrlIdRegexGroupMatch = /\/(?:x1|public)\/([^\/\?\#]+)/;
const matches = webTriggerUrl.match(webTriggerUrlIdRegexGroupMatch);
if (!matches || matches.length < 2) {
@@ -150,10 +120,12 @@
});
exports.webTrigger = {
getUrl: async (webTriggerModuleKey, optionsOrForceCreate) => {
const forceCreate = typeof optionsOrForceCreate === 'boolean' ? optionsOrForceCreate : optionsOrForceCreate?.forceCreate ?? false;
- return proxyGetWebTriggerURL(webTriggerModuleKey, forceCreate);
+ const secretKeyConfig = typeof optionsOrForceCreate === 'object' && optionsOrForceCreate !== null
+ ? optionsOrForceCreate.secretKeyConfig
+ : undefined;
+ return proxyGetWebTriggerURL(webTriggerModuleKey, forceCreate, secretKeyConfig);
},
- createAuthUrl: async (webTriggerModuleKey, secretKeyConfig, forceCreate = false) => proxyCreateAuthWebTriggerURL(webTriggerModuleKey, secretKeyConfig, forceCreate),
deleteUrl: async (webTriggerUrl) => proxyDeleteWebTriggerURL(webTriggerUrl),
queryUrls: async (moduleKey) => proxyQueryWebTriggerURLs(moduleKey)
};