diff --git a/.tool-versions b/.tool-versions new file mode 100644 index 0000000..d2dcf15 --- /dev/null +++ b/.tool-versions @@ -0,0 +1 @@ +nodejs 16.9.1 diff --git a/build/src/api.js b/build/src/api.js index 2e6b5bc..7489818 100644 --- a/build/src/api.js +++ b/build/src/api.js @@ -35,7 +35,7 @@ function api(apiParameters) { } exports.api = api; function apiRequest(url, options) { - return common_1.request(url, options).then((response) => { + return (0, common_1.request)(url, options).then((response) => { const apiResponse = response; apiResponse.response = response; if (response.status === 204) { @@ -44,7 +44,7 @@ function apiRequest(url, options) { return response .json() .then((data) => { - const resource = resourceKey(url); + const resource = resourceKey(url, options.method); apiResponse.next = nextFunc(url, options, data); apiResponse.data = data; apiResponse.resource = resource ? data[resource] : null; @@ -53,10 +53,20 @@ function apiRequest(url, options) { .catch(() => Promise.reject(apiResponse)); }); } -function resourceKey(url) { +function resourceKey(url, method) { const resource = url.match(/.+.com\/(?[\w]+)/); if (resource) { - return resource[1]; + const resourceName = resource[1]; + if (method && method.toLowerCase() === 'get') { + return resourceName; + } + if (resourceName.endsWith('ies')) { + return resourceName.slice(0, -3) + 'y'; + } + else if (resourceName.endsWith('s')) { + return resourceName.slice(0, -1); + } + return resourceName; } return null; } diff --git a/build/src/api.js.map b/build/src/api.js.map index 6197c9d..c818dd1 100644 --- a/build/src/api.js.map +++ b/build/src/api.js.map @@ -1 +1 @@ -{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/src/api.test.js b/build/src/api.test.js index 523e056..5c60c63 100644 --- a/build/src/api.test.js +++ b/build/src/api.test.js @@ -9,7 +9,7 @@ const EMPTY_BODY = { total: null, more: false, }; -test('API calls return JSON for basic API calls with server', async (done) => { +test('API calls return JSON for basic API calls with server', async () => { nock('https://api.pagerduty.com', { reqheaders: { Authorization: 'Token token=someToken1234567890', @@ -18,16 +18,15 @@ test('API calls return JSON for basic API calls with server', async (done) => { }) .get('/incidents') .reply(200, EMPTY_BODY); - const resp = await index_1.api({ + const resp = await (0, index_1.api)({ token: 'someToken1234567890', server: 'api.pagerduty.com', endpoint: 'incidents', }); expect(resp.url).toEqual('https://api.pagerduty.com/incidents'); expect(resp.data).toEqual(EMPTY_BODY); - done(); }); -test('API calls return JSON for basic API calls with url', async (done) => { +test('API calls return JSON for basic API calls with url', async () => { nock('https://api.pagerduty.com', { reqheaders: { Authorization: 'Token token=someToken1234567890', @@ -36,15 +35,14 @@ test('API calls return JSON for basic API calls with url', async (done) => { }) .get('/incidents') .reply(200, EMPTY_BODY); - const resp = await index_1.api({ + const resp = await (0, index_1.api)({ token: 'someToken1234567890', url: 'https://api.pagerduty.com/incidents', }); expect(resp.url).toEqual('https://api.pagerduty.com/incidents'); expect(resp.data).toEqual(EMPTY_BODY); - done(); }); -test('API calls return JSON for basic API calls with endpoint', async (done) => { +test('API calls return JSON for basic API calls with endpoint', async () => { nock('https://api.pagerduty.com', { reqheaders: { Authorization: 'Token token=someToken1234567890', @@ -53,15 +51,14 @@ test('API calls return JSON for basic API calls with endpoint', async (done) => }) .get('/incidents') .reply(200, EMPTY_BODY); - const resp = await index_1.api({ + const resp = await (0, index_1.api)({ token: 'someToken1234567890', endpoint: 'incidents', }); expect(resp.url).toEqual('https://api.pagerduty.com/incidents'); expect(resp.data).toEqual(EMPTY_BODY); - done(); }); -test('API calls return successfully on DELETE endpoints', async (done) => { +test('API calls return successfully on DELETE endpoints', async () => { nock('https://api.pagerduty.com', { reqheaders: { Authorization: 'Token token=someToken1234567890', @@ -70,13 +67,12 @@ test('API calls return successfully on DELETE endpoints', async (done) => { }) .delete('/incidents/delete') .reply(204); - const pd = index_1.api({ token: 'someToken1234567890' }); + const pd = (0, index_1.api)({ token: 'someToken1234567890' }); const response = await pd.delete('/incidents/delete'); expect(response.url).toEqual('https://api.pagerduty.com/incidents/delete'); expect(response.data).toEqual(undefined); - done(); }); -test('API calls support partial application with url', async (done) => { +test('API calls support partial application with url', async () => { nock('https://api.pagerduty.com', { reqheaders: { Authorization: 'Token token=someToken1234567890', @@ -85,15 +81,14 @@ test('API calls support partial application with url', async (done) => { }) .get('/incidents') .reply(200, EMPTY_BODY); - const pd = index_1.api({ token: 'someToken1234567890' }); + const pd = (0, index_1.api)({ token: 'someToken1234567890' }); const resp = await pd({ url: 'https://api.pagerduty.com/incidents', }); expect(resp.url).toEqual('https://api.pagerduty.com/incidents'); expect(resp.data).toEqual(EMPTY_BODY); - done(); }); -test('API calls support partial application with convenience methods', async (done) => { +test('API calls support partial application with convenience methods', async () => { nock('https://api.pagerduty.com', { reqheaders: { Authorization: 'Token token=someToken1234567890', @@ -102,25 +97,23 @@ test('API calls support partial application with convenience methods', async (do }) .get('/incidents') .reply(200, EMPTY_BODY); - const resp = await index_1.api({ token: 'someToken1234567890' }).get('/incidents'); + const resp = await (0, index_1.api)({ token: 'someToken1234567890' }).get('/incidents'); expect(resp.url).toEqual('https://api.pagerduty.com/incidents'); expect(resp.data).toEqual(EMPTY_BODY); - done(); }); -test('API calls use data in place of queryParameters when provided on GET requests', async (done) => { +test('API calls use data in place of queryParameters when provided on GET requests', async () => { nock('https://api.pagerduty.com') .get('/incidents?sort_by=created_at&total=true') .reply(200, EMPTY_BODY); - const resp = await index_1.api({ + const resp = await (0, index_1.api)({ token: 'someToken1234567890', endpoint: '/incidents', data: { sort_by: 'created_at', total: true }, }); expect(resp.url).toEqual('https://api.pagerduty.com/incidents?sort_by=created_at&total=true'); expect(resp.data).toEqual(EMPTY_BODY); - done(); }); -test('API calls populate resource field', async (done) => { +test('API calls populate resource field', async () => { nock('https://api.pagerduty.com') .get('/incidents') .reply(200, { @@ -130,14 +123,24 @@ test('API calls populate resource field', async (done) => { total: null, more: false, }); - const resp = await index_1.api({ + nock('https://api.pagerduty.com') + .post('/incidents') + .reply(201, { + incident: ['some incident'], + }); + const respGet = await (0, index_1.api)({ + token: 'someToken1234567890', + endpoint: '/incidents', + }); + expect(respGet.resource).toEqual(['one', 1, null]); + const respPost = await (0, index_1.api)({ token: 'someToken1234567890', endpoint: '/incidents', + method: 'POST', }); - expect(resp.resource).toEqual(['one', 1, null]); - done(); + expect(respPost.resource).toEqual(['some incident']); }); -test('API explodes list based parameters properly', async (done) => { +test('API explodes list based parameters properly', async () => { nock('https://api.pagerduty.com') .get('/incidents?additional_fields[]=one&additional_fields[]=two&additional_fields[]=three') .reply(200, { @@ -147,7 +150,7 @@ test('API explodes list based parameters properly', async (done) => { total: null, more: false, }); - const resp = await index_1.api({ + const resp = await (0, index_1.api)({ token: 'someToken1234567890', endpoint: '/incidents', queryParameters: { @@ -155,9 +158,8 @@ test('API explodes list based parameters properly', async (done) => { }, }); expect(resp.url).toEqual('https://api.pagerduty.com/incidents?additional_fields%5B%5D=one&additional_fields%5B%5D=two&additional_fields%5B%5D=three'); - done(); }); -test('API `all` calls for offset should generate requests until no more results', async (done) => { +test('API `all` calls for offset should generate requests until no more results', async () => { nock('https://api.pagerduty.com') .get('/incidents?limit=1') .reply(200, { @@ -185,12 +187,11 @@ test('API `all` calls for offset should generate requests until no more results' more: false, total: null, }); - const pd = index_1.api({ token: 'someToken1234567890' }); + const pd = (0, index_1.api)({ token: 'someToken1234567890' }); const responses = await pd.all('/incidents', { data: { limit: 1 } }); expect(responses.resource).toEqual([{ name: 1 }, { name: 2 }, { name: 3 }]); - done(); }); -test('API `all` calls for cursor should generate requests until no more results', async (done) => { +test('API `all` calls for cursor should generate requests until no more results', async () => { nock('https://api.pagerduty.com') .get('/incidents?limit=1') .reply(200, { @@ -212,59 +213,52 @@ test('API `all` calls for cursor should generate requests until no more results' limit: 1, cursor: null, }); - const pd = index_1.api({ token: 'someToken1234567890' }); + const pd = (0, index_1.api)({ token: 'someToken1234567890' }); const responses = await pd.all('/incidents', { data: { limit: 1 }, }); expect(responses.resource).toEqual([{ name: 1 }, { name: 2 }, { name: 3 }]); - done(); }); -test('API `get` calls with shorthand `get` should succeed', async (done) => { +test('API `get` calls with shorthand `get` should succeed', async () => { nock('https://api.pagerduty.com').get('/incidents').reply(200, EMPTY_BODY); - const pd = index_1.api({ token: 'someToken1234567890' }); + const pd = (0, index_1.api)({ token: 'someToken1234567890' }); const response = await pd.get('/incidents'); expect(response.url).toEqual('https://api.pagerduty.com/incidents'); expect(response.data).toEqual(EMPTY_BODY); - done(); }); -test('API `post` calls with shorthand `get` should succeed', async (done) => { +test('API `post` calls with shorthand `get` should succeed', async () => { nock('https://api.pagerduty.com').post('/incidents').reply(200, EMPTY_BODY); - const pd = index_1.api({ token: 'someToken1234567890' }); + const pd = (0, index_1.api)({ token: 'someToken1234567890' }); const response = await pd.post('/incidents'); expect(response.url).toEqual('https://api.pagerduty.com/incidents'); expect(response.data).toEqual(EMPTY_BODY); - done(); }); -test('API `put` calls with shorthand `get` should succeed', async (done) => { +test('API `put` calls with shorthand `get` should succeed', async () => { nock('https://api.pagerduty.com').put('/incidents').reply(200, EMPTY_BODY); - const pd = index_1.api({ token: 'someToken1234567890' }); + const pd = (0, index_1.api)({ token: 'someToken1234567890' }); const response = await pd.put('/incidents'); expect(response.url).toEqual('https://api.pagerduty.com/incidents'); expect(response.data).toEqual(EMPTY_BODY); - done(); }); -test('API `patch` calls with shorthand `get` should succeed', async (done) => { +test('API `patch` calls with shorthand `get` should succeed', async () => { nock('https://api.pagerduty.com').patch('/incidents').reply(200, EMPTY_BODY); - const pd = index_1.api({ token: 'someToken1234567890' }); + const pd = (0, index_1.api)({ token: 'someToken1234567890' }); const response = await pd.patch('/incidents'); expect(response.url).toEqual('https://api.pagerduty.com/incidents'); expect(response.data).toEqual(EMPTY_BODY); - done(); }); -test('API `delete` calls with shorthand `get` should succeed', async (done) => { +test('API `delete` calls with shorthand `get` should succeed', async () => { nock('https://api.pagerduty.com').delete('/incidents').reply(200, EMPTY_BODY); - const pd = index_1.api({ token: 'someToken1234567890' }); + const pd = (0, index_1.api)({ token: 'someToken1234567890' }); const response = await pd.delete('/incidents'); expect(response.url).toEqual('https://api.pagerduty.com/incidents'); expect(response.data).toEqual(EMPTY_BODY); - done(); }); -test('API catches ETIMEDOUT error', async (done) => { +test('API catches ETIMEDOUT error', async () => { nock('https://api.pagerduty.com') .get('/incidents') .replyWithError({ code: 'ETIMEDOUT' }); - const pd = index_1.api({ token: 'someToken1234567890' }); + const pd = (0, index_1.api)({ token: 'someToken1234567890' }); await expect(pd.get('/incidents')).rejects.toThrow('request to https://api.pagerduty.com/incidents failed, reason: undefined'); - done(); }); //# sourceMappingURL=api.test.js.map \ No newline at end of file diff --git a/build/src/api.test.js.map b/build/src/api.test.js.map index 7a5d9d6..0507eaa 100644 --- a/build/src/api.test.js.map +++ b/build/src/api.test.js.map @@ -1 +1 @@ -{"version":3,"file":"api.test.js","sourceRoot":"","sources":["../../src/api.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"api.test.js","sourceRoot":"","sources":["../../src/api.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/src/common.d.ts b/build/src/common.d.ts index 284c354..4299926 100644 --- a/build/src/common.d.ts +++ b/build/src/common.d.ts @@ -3,6 +3,7 @@ export interface RequestOptions extends RequestInit { queryParameters?: QueryParameter; retryCount?: number; requestTimeout?: number; + requestTimer?: any; retryTimeout?: number; timeout?: number; } diff --git a/build/src/common.js b/build/src/common.js index 1a1b8a9..500460b 100644 --- a/build/src/common.js +++ b/build/src/common.js @@ -3,30 +3,29 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.request = void 0; /* LEGACY-BROWSER-SUPPORT-START */ const cross_fetch_1 = require("cross-fetch"); -const cjs_ponyfill_1 = require("abortcontroller-polyfill/dist/cjs-ponyfill"); const browser_or_node_1 = require("browser-or-node"); /* LEGACY-BROWSER-SUPPORT-END */ const VERSION = '2.0.0'; function request(url, options = {}) { - const { queryParameters, requestTimeout = 30000, ...rest } = options; + const { queryParameters, requestTimeout = 30000 } = options; url = new URL(url.toString()); url = applyParameters(url, queryParameters); options = applyTimeout(options, requestTimeout); return fetch_retry(url.toString(), 3, { - ...rest, + ...options, headers: new cross_fetch_1.Headers({ 'Content-Type': 'application/json; charset=utf-8', /* LEGACY-BROWSER-SUPPORT-START */ ...userAgentHeader(), /* LEGACY-BROWSER-SUPPORT-END */ - ...rest.headers, + ...options.headers, }), }); } exports.request = request; function fetch_retry(url, retries, options) { return new Promise((resolve, reject) => { - cross_fetch_1.default(url, options) + (0, cross_fetch_1.default)(url, options) .then(response => { // We don't want to `reject` when retries have finished // Instead simply stop trying and return. @@ -41,6 +40,7 @@ function fetch_retry(url, retries, options) { }); } else { + clearTimeout(options.requestTimer); resolve(response); } }) @@ -79,11 +79,10 @@ function applyParameters(url, queryParameters) { function applyTimeout(init, timeout) { if (!timeout) return init; - const controller = new cjs_ponyfill_1.AbortController(); - setTimeout(() => controller.abort(), timeout); + const timer = setTimeout(() => { }, timeout); return { ...init, - signal: controller.signal, + requestTimer: timer, }; } //# sourceMappingURL=common.js.map \ No newline at end of file diff --git a/build/src/common.js.map b/build/src/common.js.map index df1066d..65d60ca 100644 --- a/build/src/common.js.map +++ b/build/src/common.js.map @@ -1 +1 @@ -{"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/common.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/common.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/src/events.js b/build/src/events.js index 3fa043b..03103fa 100644 --- a/build/src/events.js +++ b/build/src/events.js @@ -31,7 +31,7 @@ exports.resolve = shorthand('resolve'); const change = (eventParameters) => event({ ...eventParameters, type: 'change' }); exports.change = change; function eventFetch(url, options) { - return common_1.request(url, options).then((response) => { + return (0, common_1.request)(url, options).then((response) => { const apiResponse = response; return response.json().then((data) => { apiResponse.data = data; diff --git a/build/src/events.js.map b/build/src/events.js.map index 8755162..731f716 100644 --- a/build/src/events.js.map +++ b/build/src/events.js.map @@ -1 +1 @@ -{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":";;;AAAA,qCAAiD;AA+DjD,SAAgB,KAAK,CAAC,eAAgC;IACpD,MAAM,EACJ,MAAM,GAAG,sBAAsB,EAC/B,IAAI,GAAG,OAAO,EACd,IAAI,EACJ,GAAG,MAAM,EACV,GAAG,eAAe,CAAC;IAEpB,IAAI,GAAG,GAAG,WAAW,MAAM,aAAa,CAAC;IACzC,IAAI,IAAI,KAAK,QAAQ,EAAE;QACrB,GAAG,GAAG,WAAW,MAAM,oBAAoB,CAAC;KAC7C;IAED,OAAO,UAAU,CAAC,GAAG,EAAE;QACrB,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QAC1B,GAAG,MAAM;KACV,CAAC,CAAC;AACL,CAAC;AAlBD,sBAkBC;AAED,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,CACpC,eAAgC,EAClB,EAAE;IAChB,MAAM,SAAS,GAAG,cAAc,CAAC;IAEjC,OAAO,KAAK,CAAC;QACX,GAAG,eAAe;QAClB,IAAI,EAAE;YACJ,GAAG,eAAe,CAAC,IAAI;YACvB,CAAC,SAAS,CAAC,EAAE,MAAM;SACpB;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAEW,QAAA,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;AAC/B,QAAA,WAAW,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;AACvC,QAAA,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;AACrC,MAAM,MAAM,GAAG,CAAC,eAAgC,EAAE,EAAE,CACzD,KAAK,CAAC,EAAC,GAAG,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAC,CAAC,CAAC;AADjC,QAAA,MAAM,UAC2B;AAE9C,SAAS,UAAU,CAAC,GAAW,EAAE,OAAuB;IACtD,OAAO,gBAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,IAAI,CAC/B,CAAC,QAAkB,EAAgB,EAAE;QACnC,MAAM,WAAW,GAAG,QAAyB,CAAC;QAC9C,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,CACzB,CAAC,IAAI,EAAiB,EAAE;YACtB,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC;YACxB,WAAW,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAChC,OAAO,WAAW,CAAC;QACrB,CAAC,CACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"} \ No newline at end of file +{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":";;;AAAA,qCAAiD;AA+DjD,SAAgB,KAAK,CAAC,eAAgC;IACpD,MAAM,EACJ,MAAM,GAAG,sBAAsB,EAC/B,IAAI,GAAG,OAAO,EACd,IAAI,EACJ,GAAG,MAAM,EACV,GAAG,eAAe,CAAC;IAEpB,IAAI,GAAG,GAAG,WAAW,MAAM,aAAa,CAAC;IACzC,IAAI,IAAI,KAAK,QAAQ,EAAE;QACrB,GAAG,GAAG,WAAW,MAAM,oBAAoB,CAAC;KAC7C;IAED,OAAO,UAAU,CAAC,GAAG,EAAE;QACrB,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QAC1B,GAAG,MAAM;KACV,CAAC,CAAC;AACL,CAAC;AAlBD,sBAkBC;AAED,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,CACpC,eAAgC,EAClB,EAAE;IAChB,MAAM,SAAS,GAAG,cAAc,CAAC;IAEjC,OAAO,KAAK,CAAC;QACX,GAAG,eAAe;QAClB,IAAI,EAAE;YACJ,GAAG,eAAe,CAAC,IAAI;YACvB,CAAC,SAAS,CAAC,EAAE,MAAM;SACpB;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAEW,QAAA,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;AAC/B,QAAA,WAAW,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;AACvC,QAAA,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;AACrC,MAAM,MAAM,GAAG,CAAC,eAAgC,EAAE,EAAE,CACzD,KAAK,CAAC,EAAC,GAAG,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAC,CAAC,CAAC;AADjC,QAAA,MAAM,UAC2B;AAE9C,SAAS,UAAU,CAAC,GAAW,EAAE,OAAuB;IACtD,OAAO,IAAA,gBAAO,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC,IAAI,CAC/B,CAAC,QAAkB,EAAgB,EAAE;QACnC,MAAM,WAAW,GAAG,QAAyB,CAAC;QAC9C,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,CACzB,CAAC,IAAI,EAAiB,EAAE;YACtB,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC;YACxB,WAAW,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAChC,OAAO,WAAW,CAAC;QACrB,CAAC,CACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"} \ No newline at end of file diff --git a/build/src/events.test.js b/build/src/events.test.js index b4f2231..124ca18 100644 --- a/build/src/events.test.js +++ b/build/src/events.test.js @@ -14,7 +14,7 @@ const eventPayloadV2 = { }, }, }; -test('Events API properly passes Events V2 requests', async (done) => { +test('Events API properly passes Events V2 requests', async () => { const body = { data: { status: 'success', @@ -29,12 +29,11 @@ test('Events API properly passes Events V2 requests', async (done) => { }) .post('/v2/enqueue') .reply(202, body); - const response = await index_1.event(eventPayloadV2); + const response = await (0, index_1.event)(eventPayloadV2); expect(response.url).toEqual('https://events.pagerduty.com/v2/enqueue'); expect(response.data).toEqual(body); - done(); }); -test('Events API properly passes Change Events requests', async (done) => { +test('Events API properly passes Change Events requests', async () => { const body = { data: { status: 'success', @@ -49,12 +48,11 @@ test('Events API properly passes Change Events requests', async (done) => { }) .post('/v2/change/enqueue') .reply(202, body); - const response = await index_1.change(eventPayloadV2); + const response = await (0, index_1.change)(eventPayloadV2); expect(response.url).toEqual('https://events.pagerduty.com/v2/change/enqueue'); expect(response.data).toEqual(body); - done(); }); -test('Events API properly passes Events V2 requests with images/links/details', async (done) => { +test('Events API properly passes Events V2 requests with images/links/details', async () => { const body = { data: { status: 'success', @@ -69,7 +67,7 @@ test('Events API properly passes Events V2 requests with images/links/details', }) .post('/v2/enqueue') .reply(202, body); - const response = await index_1.event({ + const response = await (0, index_1.event)({ data: { routing_key: 'someRoutingKeybfa2a710673888f520', event_action: 'trigger', @@ -96,9 +94,8 @@ test('Events API properly passes Events V2 requests with images/links/details', }); expect(response.url).toEqual('https://events.pagerduty.com/v2/enqueue'); expect(response.data).toEqual(body); - done(); }); -test('Events API shorthands should send corresponding events', async (done) => { +test('Events API shorthands should send corresponding events', async () => { const body = { data: { status: 'success', @@ -117,15 +114,14 @@ test('Events API shorthands should send corresponding events', async (done) => { .reply(202, body) .post('/v2/enqueue') .reply(202, body); - let response = await index_1.acknowledge(eventPayloadV2); + let response = await (0, index_1.acknowledge)(eventPayloadV2); expect(response.url).toEqual('https://events.pagerduty.com/v2/enqueue'); expect(response.data).toEqual(body); - response = await index_1.resolve(eventPayloadV2); + response = await (0, index_1.resolve)(eventPayloadV2); expect(response.url).toEqual('https://events.pagerduty.com/v2/enqueue'); expect(response.data).toEqual(body); - response = await index_1.trigger(eventPayloadV2); + response = await (0, index_1.trigger)(eventPayloadV2); expect(response.url).toEqual('https://events.pagerduty.com/v2/enqueue'); expect(response.data).toEqual(body); - done(); }); //# sourceMappingURL=events.test.js.map \ No newline at end of file diff --git a/build/src/events.test.js.map b/build/src/events.test.js.map index de38f1f..db275ba 100644 --- a/build/src/events.test.js.map +++ b/build/src/events.test.js.map @@ -1 +1 @@ -{"version":3,"file":"events.test.js","sourceRoot":"","sources":["../../src/events.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"events.test.js","sourceRoot":"","sources":["../../src/events.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/src/retries.test.js b/build/src/retries.test.js index a5291df..5faebea 100644 --- a/build/src/retries.test.js +++ b/build/src/retries.test.js @@ -2,7 +2,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); const nock = require("nock"); const index_1 = require("./index"); -test('API request should return after 3 rate limited requests', async (done) => { +test('API request should return after 3 rate limited requests', async () => { const body = { incidents: [], limit: 1, @@ -19,15 +19,14 @@ test('API request should return after 3 rate limited requests', async (done) => .reply(429, body) .get('/incidents') .reply(429, body); - const response = await index_1.api({ + const response = await (0, index_1.api)({ token: 'someToken1234567890', endpoint: '/incidents', retryTimeout: 20, }); expect(response.response.status).toEqual(429); - done(); }); -test('API should return data after getting rate limited once.', async (done) => { +test('API should return data after getting rate limited once.', async () => { const body = { incidents: [], limit: 1, @@ -40,13 +39,12 @@ test('API should return data after getting rate limited once.', async (done) => .reply(429, body) .get('/incidents') .reply(200, body); - const response = await index_1.api({ + const response = await (0, index_1.api)({ token: 'someToken1234567890', endpoint: '/incidents', retryTimeout: 20, }); expect(response.response.status).toEqual(200); expect(response.data).toEqual(body); - done(); }); //# sourceMappingURL=retries.test.js.map \ No newline at end of file diff --git a/build/src/retries.test.js.map b/build/src/retries.test.js.map index f4bcac1..b185f15 100644 --- a/build/src/retries.test.js.map +++ b/build/src/retries.test.js.map @@ -1 +1 @@ -{"version":3,"file":"retries.test.js","sourceRoot":"","sources":["../../src/retries.test.ts"],"names":[],"mappings":";;AAAA,6BAA8B;AAC9B,mCAA4B;AAE5B,IAAI,CAAC,yDAAyD,EAAE,KAAK,EAAC,IAAI,EAAC,EAAE;IAC3E,MAAM,IAAI,GAAG;QACX,SAAS,EAAE,EAAE;QACb,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,KAAK,EAAE,IAAI;QACX,IAAI,EAAE,IAAI;KACX,CAAC;IAEF,IAAI,CAAC,2BAA2B,CAAC;SAC9B,GAAG,CAAC,YAAY,CAAC;SACjB,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;SAChB,GAAG,CAAC,YAAY,CAAC;SACjB,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;SAChB,GAAG,CAAC,YAAY,CAAC;SACjB,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;SAChB,GAAG,CAAC,YAAY,CAAC;SACjB,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAEpB,MAAM,QAAQ,GAAG,MAAM,WAAG,CAAC;QACzB,KAAK,EAAE,qBAAqB;QAC5B,QAAQ,EAAE,YAAY;QACtB,YAAY,EAAE,EAAE;KACjB,CAAC,CAAC;IAEH,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9C,IAAI,EAAE,CAAC;AACT,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yDAAyD,EAAE,KAAK,EAAC,IAAI,EAAC,EAAE;IAC3E,MAAM,IAAI,GAAG;QACX,SAAS,EAAE,EAAE;QACb,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,KAAK,EAAE,IAAI;QACX,IAAI,EAAE,IAAI;KACX,CAAC;IAEF,IAAI,CAAC,2BAA2B,CAAC;SAC9B,GAAG,CAAC,YAAY,CAAC;SACjB,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;SAChB,GAAG,CAAC,YAAY,CAAC;SACjB,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAEpB,MAAM,QAAQ,GAAG,MAAM,WAAG,CAAC;QACzB,KAAK,EAAE,qBAAqB;QAC5B,QAAQ,EAAE,YAAY;QACtB,YAAY,EAAE,EAAE;KACjB,CAAC,CAAC;IAEH,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9C,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,EAAE,CAAC;AACT,CAAC,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"retries.test.js","sourceRoot":"","sources":["../../src/retries.test.ts"],"names":[],"mappings":";;AAAA,6BAA8B;AAC9B,mCAA4B;AAE5B,IAAI,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;IACzE,MAAM,IAAI,GAAG;QACX,SAAS,EAAE,EAAE;QACb,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,KAAK,EAAE,IAAI;QACX,IAAI,EAAE,IAAI;KACX,CAAC;IAEF,IAAI,CAAC,2BAA2B,CAAC;SAC9B,GAAG,CAAC,YAAY,CAAC;SACjB,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;SAChB,GAAG,CAAC,YAAY,CAAC;SACjB,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;SAChB,GAAG,CAAC,YAAY,CAAC;SACjB,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;SAChB,GAAG,CAAC,YAAY,CAAC;SACjB,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAEpB,MAAM,QAAQ,GAAG,MAAM,IAAA,WAAG,EAAC;QACzB,KAAK,EAAE,qBAAqB;QAC5B,QAAQ,EAAE,YAAY;QACtB,YAAY,EAAE,EAAE;KACjB,CAAC,CAAC;IAEH,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAChD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;IACzE,MAAM,IAAI,GAAG;QACX,SAAS,EAAE,EAAE;QACb,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,KAAK,EAAE,IAAI;QACX,IAAI,EAAE,IAAI;KACX,CAAC;IAEF,IAAI,CAAC,2BAA2B,CAAC;SAC9B,GAAG,CAAC,YAAY,CAAC;SACjB,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;SAChB,GAAG,CAAC,YAAY,CAAC;SACjB,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAEpB,MAAM,QAAQ,GAAG,MAAM,IAAA,WAAG,EAAC;QACzB,KAAK,EAAE,qBAAqB;QAC5B,QAAQ,EAAE,YAAY;QACtB,YAAY,EAAE,EAAE;KACjB,CAAC,CAAC;IAEH,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9C,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACtC,CAAC,CAAC,CAAC"} \ No newline at end of file diff --git a/dist/pdjs-legacy.js b/dist/pdjs-legacy.js index c3364d7..b5eb822 100644 --- a/dist/pdjs-legacy.js +++ b/dist/pdjs-legacy.js @@ -1,2 +1,2 @@ -var PagerDuty;(()=>{var t={988:(t,e)=>{"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){for(var r=0;r{"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n="undefined"!=typeof window&&void 0!==window.document;"object"===("undefined"==typeof self?"undefined":r(self))&&self.constructor&&self.constructor.name,"undefined"!=typeof process&&null!=process.versions&&process.versions.node;e.jU=n},98:function(t,e){var r="undefined"!=typeof self?self:this,n=function(){function t(){this.fetch=!1,this.DOMException=r.DOMException}return t.prototype=r,new t}();!function(t){!function(e){var r="URLSearchParams"in t,n="Symbol"in t&&"iterator"in Symbol,o="FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(t){return!1}}(),i="FormData"in t,u="ArrayBuffer"in t;if(u)var a=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],s=ArrayBuffer.isView||function(t){return t&&a.indexOf(Object.prototype.toString.call(t))>-1};function c(t){if("string"!=typeof t&&(t=String(t)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(t))throw new TypeError("Invalid character in header field name");return t.toLowerCase()}function f(t){return"string"!=typeof t&&(t=String(t)),t}function l(t){var e={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return n&&(e[Symbol.iterator]=function(){return e}),e}function p(t){this.map={},t instanceof p?t.forEach((function(t,e){this.append(e,t)}),this):Array.isArray(t)?t.forEach((function(t){this.append(t[0],t[1])}),this):t&&Object.getOwnPropertyNames(t).forEach((function(e){this.append(e,t[e])}),this)}function y(t){if(t.bodyUsed)return Promise.reject(new TypeError("Already read"));t.bodyUsed=!0}function h(t){return new Promise((function(e,r){t.onload=function(){e(t.result)},t.onerror=function(){r(t.error)}}))}function d(t){var e=new FileReader,r=h(e);return e.readAsArrayBuffer(t),r}function b(t){if(t.slice)return t.slice(0);var e=new Uint8Array(t.byteLength);return e.set(new Uint8Array(t)),e.buffer}function v(){return this.bodyUsed=!1,this._initBody=function(t){var e;this._bodyInit=t,t?"string"==typeof t?this._bodyText=t:o&&Blob.prototype.isPrototypeOf(t)?this._bodyBlob=t:i&&FormData.prototype.isPrototypeOf(t)?this._bodyFormData=t:r&&URLSearchParams.prototype.isPrototypeOf(t)?this._bodyText=t.toString():u&&o&&(e=t)&&DataView.prototype.isPrototypeOf(e)?(this._bodyArrayBuffer=b(t.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):u&&(ArrayBuffer.prototype.isPrototypeOf(t)||s(t))?this._bodyArrayBuffer=b(t):this._bodyText=t=Object.prototype.toString.call(t):this._bodyText="",this.headers.get("content-type")||("string"==typeof t?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(t)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},o&&(this.blob=function(){var t=y(this);if(t)return t;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?y(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(d)}),this.text=function(){var t,e,r,n=y(this);if(n)return n;if(this._bodyBlob)return t=this._bodyBlob,r=h(e=new FileReader),e.readAsText(t),r;if(this._bodyArrayBuffer)return Promise.resolve(function(t){for(var e=new Uint8Array(t),r=new Array(e.length),n=0;n-1?n:r),this.mode=e.mode||this.mode||null,this.signal=e.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&o)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(o)}function g(t){var e=new FormData;return t.trim().split("&").forEach((function(t){if(t){var r=t.split("="),n=r.shift().replace(/\+/g," "),o=r.join("=").replace(/\+/g," ");e.append(decodeURIComponent(n),decodeURIComponent(o))}})),e}function w(t,e){e||(e={}),this.type="default",this.status=void 0===e.status?200:e.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in e?e.statusText:"OK",this.headers=new p(e.headers),this.url=e.url||"",this._initBody(t)}O.prototype.clone=function(){return new O(this,{body:this._bodyInit})},v.call(O.prototype),v.call(w.prototype),w.prototype.clone=function(){return new w(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new p(this.headers),url:this.url})},w.error=function(){var t=new w(null,{status:0,statusText:""});return t.type="error",t};var j=[301,302,303,307,308];w.redirect=function(t,e){if(-1===j.indexOf(e))throw new RangeError("Invalid status code");return new w(null,{status:e,headers:{location:t}})},e.DOMException=t.DOMException;try{new e.DOMException}catch(t){e.DOMException=function(t,e){this.message=t,this.name=e;var r=Error(t);this.stack=r.stack},e.DOMException.prototype=Object.create(Error.prototype),e.DOMException.prototype.constructor=e.DOMException}function P(t,r){return new Promise((function(n,i){var u=new O(t,r);if(u.signal&&u.signal.aborted)return i(new e.DOMException("Aborted","AbortError"));var a=new XMLHttpRequest;function s(){a.abort()}a.onload=function(){var t,e,r={status:a.status,statusText:a.statusText,headers:(t=a.getAllResponseHeaders()||"",e=new p,t.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(t){var r=t.split(":"),n=r.shift().trim();if(n){var o=r.join(":").trim();e.append(n,o)}})),e)};r.url="responseURL"in a?a.responseURL:r.headers.get("X-Request-URL");var o="response"in a?a.response:a.responseText;n(new w(o,r))},a.onerror=function(){i(new TypeError("Network request failed"))},a.ontimeout=function(){i(new TypeError("Network request failed"))},a.onabort=function(){i(new e.DOMException("Aborted","AbortError"))},a.open(u.method,u.url,!0),"include"===u.credentials?a.withCredentials=!0:"omit"===u.credentials&&(a.withCredentials=!1),"responseType"in a&&o&&(a.responseType="blob"),u.headers.forEach((function(t,e){a.setRequestHeader(e,t)})),u.signal&&(u.signal.addEventListener("abort",s),a.onreadystatechange=function(){4===a.readyState&&u.signal.removeEventListener("abort",s)}),a.send(void 0===u._bodyInit?null:u._bodyInit)}))}P.polyfill=!0,t.fetch||(t.fetch=P,t.Headers=p,t.Request=O,t.Response=w),e.Headers=p,e.Request=O,e.Response=w,e.fetch=P,Object.defineProperty(e,"__esModule",{value:!0})}({})}(n),n.fetch.ponyfill=!0,delete n.fetch.polyfill;var o=n;(e=o.fetch).default=o.fetch,e.fetch=o.fetch,e.Headers=o.Headers,e.Request=o.Request,e.Response=o.Response,t.exports=e}},e={};function r(n){var o=e[n];if(void 0!==o)return o.exports;var i=e[n]={exports:{}};return t[n].call(i.exports,i,i.exports,r),i.exports}r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var n={};(()=>{"use strict";r.r(n),r.d(n,{acknowledge:()=>q,api:()=>_,change:()=>M,event:()=>k,resolve:()=>I,trigger:()=>U});var t=r(98),e=r.n(t),o=r(988),i=r(818);function u(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function a(t){for(var e=1;e=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}function f(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=r,o=n.queryParameters,i=n.requestTimeout,u=void 0===i?3e4:i,s=c(n,["queryParameters","requestTimeout"]);return e=h(e=new URL(e.toString()),o),r=d(r,u),l(e.toString(),3,a(a({},s),{},{headers:new t.Headers(a(a({"Content-Type":"application/json; charset=utf-8"},y()),s.headers))}))}function l(t,r,n){return new Promise((function(o,i){e()(t,n).then((function(e){if(0===r)return o(e);if(429===e.status){var u=n.retryTimeout;p(void 0===u?2e4:u).then((function(){l(t,r-1,n).then(o).catch(i)}))}else o(e)})).catch(i)}))}var p=function(t){return new Promise((function(e){return setTimeout(e,t)}))};function y(){return i.jU?{}:{"User-Agent":"pdjs/".concat("2.0.0"," (").concat(process.version,"/").concat(process.platform,")")}}function h(t,e){if(!e)return t;for(var r=t.searchParams,n=function(){var t=i[o],n=e[t];Array.isArray(n)?n.forEach((function(e){r.append(t,e)})):r.append(t,n)},o=0,i=Object.keys(e);o]+)>/g,(function(t,e){return"$"+r[e]})))}if("function"==typeof e){var i=this;return n[Symbol.replace].call(this,t,(function(){var t=[];return t.push.apply(t,arguments),"object"!==b(t[t.length-1])&&t.push(u(t,i)),e.apply(this,t)}))}return n[Symbol.replace].call(this,t,e)},v.apply(this,arguments)}function m(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&j(t,e)}function O(t){var e="function"==typeof Map?new Map:void 0;return(O=function(t){if(null===t||(r=t,-1===Function.toString.call(r).indexOf("[native code]")))return t;var r;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==e){if(e.has(t))return e.get(t);e.set(t,n)}function n(){return g(t,arguments,P(this).constructor)}return n.prototype=Object.create(t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),j(n,t)})(t)}function g(t,e,r){return(g=w()?Reflect.construct:function(t,e,r){var n=[null];n.push.apply(n,e);var o=new(Function.bind.apply(t,n));return r&&j(o,r.prototype),o}).apply(null,arguments)}function w(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}function j(t,e){return(j=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function P(t){return(P=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function E(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function S(t){for(var e=1;e=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}(t,["endpoint","server","token","tokenType","url","version","data"]),d=S(S({method:"GET"},h),{},{headers:S({Accept:"application/vnd.pagerduty+json;version=".concat(p),Authorization:"".concat({bearer:"Bearer ",token:"Token token="}[c]).concat(a)},h.headers)});return r=d.method,!["PUT","POST","DELETE","PATCH"].includes(null!==(n=r.toUpperCase())&&void 0!==n?n:"GET")&&y?d.queryParameters=null!==(e=d.queryParameters)&&void 0!==e?e:y:d.body=JSON.stringify(y),T(null!=f?f:"https://".concat(u,"/").concat(o.replace(/^\/+/,"")),d)}function T(t,e){return f(t,e).then((function(r){var n=r;return n.response=r,204===r.status?Promise.resolve(n):r.json().then((function(r){var o=function(t){var e=t.match(v(/.+.com\/([0-9A-Z_a-z]+)/,{resource:1}));return e?e[1]:null}(t);return n.next=function(t,e,r){if(function(t){return void 0!==t.offset}(r)){if(null!=r&&r.more&&void 0!==b(r.offset)&&r.limit)return function(){return T(t,S(S({},e),{},{queryParameters:S(S({},e.queryParameters),{},{limit:r.limit.toString(),offset:(r.limit+r.offset).toString()})}))}}else if(function(t){return void 0!==t.cursor}(r)&&null!=r&&r.cursor)return function(){return T(t,S(S({},e),{},{queryParameters:S(S({},e.queryParameters),{},{cursor:r.cursor,limit:r.limit.toString()})}))}}(t,e,r),n.data=r,n.resource=o?r[o]:null,n})).catch((function(){return Promise.reject(n)}))}))}function A(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function D(t){for(var e=1;e=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}(t,["server","type","data"]),a="https://".concat(r,"/v2/enqueue");return"change"===o&&(a="https://".concat(r,"/v2/change/enqueue")),function(t,e){return f(t,e).then((function(t){var e=t;return t.json().then((function(r){return e.data=r,e.response=t,e}))}))}(a,D({method:"POST",body:JSON.stringify(i)},u))}var B=function(t){return function(e){return k(D(D({},e),{},{data:D(D({},e.data),{},R({},"event_action",t))}))}},U=B("trigger"),q=B("acknowledge"),I=B("resolve"),M=function(t){return k(D(D({},t),{},{type:"change"}))}})(),PagerDuty=n})(); +var PagerDuty;(()=>{var e={818:(e,t)=>{"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n="undefined"!=typeof window&&void 0!==window.document;"object"===("undefined"==typeof self?"undefined":r(self))&&self.constructor&&self.constructor.name,"undefined"!=typeof process&&null!=process.versions&&process.versions.node;t.jU=n},98:function(e,t){var r="undefined"!=typeof self?self:this,n=function(){function e(){this.fetch=!1,this.DOMException=r.DOMException}return e.prototype=r,new e}();!function(e){!function(t){var r="URLSearchParams"in e,n="Symbol"in e&&"iterator"in Symbol,o="FileReader"in e&&"Blob"in e&&function(){try{return new Blob,!0}catch(e){return!1}}(),i="FormData"in e,s="ArrayBuffer"in e;if(s)var a=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],u=ArrayBuffer.isView||function(e){return e&&a.indexOf(Object.prototype.toString.call(e))>-1};function c(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(e))throw new TypeError("Invalid character in header field name");return e.toLowerCase()}function f(e){return"string"!=typeof e&&(e=String(e)),e}function p(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return n&&(t[Symbol.iterator]=function(){return t}),t}function l(e){this.map={},e instanceof l?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function y(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function h(e){return new Promise((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function d(e){var t=new FileReader,r=h(t);return t.readAsArrayBuffer(e),r}function b(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function m(){return this.bodyUsed=!1,this._initBody=function(e){var t;this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:o&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:i&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():s&&o&&(t=e)&&DataView.prototype.isPrototypeOf(t)?(this._bodyArrayBuffer=b(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):s&&(ArrayBuffer.prototype.isPrototypeOf(e)||u(e))?this._bodyArrayBuffer=b(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText="",this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},o&&(this.blob=function(){var e=y(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?y(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(d)}),this.text=function(){var e,t,r,n=y(this);if(n)return n;if(this._bodyBlob)return e=this._bodyBlob,r=h(t=new FileReader),t.readAsText(e),r;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?n:r),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&o)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(o)}function g(e){var t=new FormData;return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),o=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(n),decodeURIComponent(o))}})),t}function w(e,t){t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in t?t.statusText:"OK",this.headers=new l(t.headers),this.url=t.url||"",this._initBody(e)}O.prototype.clone=function(){return new O(this,{body:this._bodyInit})},m.call(O.prototype),m.call(w.prototype),w.prototype.clone=function(){return new w(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new l(this.headers),url:this.url})},w.error=function(){var e=new w(null,{status:0,statusText:""});return e.type="error",e};var j=[301,302,303,307,308];w.redirect=function(e,t){if(-1===j.indexOf(t))throw new RangeError("Invalid status code");return new w(null,{status:t,headers:{location:e}})},t.DOMException=e.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function P(e,r){return new Promise((function(n,i){var s=new O(e,r);if(s.signal&&s.signal.aborted)return i(new t.DOMException("Aborted","AbortError"));var a=new XMLHttpRequest;function u(){a.abort()}a.onload=function(){var e,t,r={status:a.status,statusText:a.statusText,headers:(e=a.getAllResponseHeaders()||"",t=new l,e.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(e){var r=e.split(":"),n=r.shift().trim();if(n){var o=r.join(":").trim();t.append(n,o)}})),t)};r.url="responseURL"in a?a.responseURL:r.headers.get("X-Request-URL");var o="response"in a?a.response:a.responseText;n(new w(o,r))},a.onerror=function(){i(new TypeError("Network request failed"))},a.ontimeout=function(){i(new TypeError("Network request failed"))},a.onabort=function(){i(new t.DOMException("Aborted","AbortError"))},a.open(s.method,s.url,!0),"include"===s.credentials?a.withCredentials=!0:"omit"===s.credentials&&(a.withCredentials=!1),"responseType"in a&&o&&(a.responseType="blob"),s.headers.forEach((function(e,t){a.setRequestHeader(t,e)})),s.signal&&(s.signal.addEventListener("abort",u),a.onreadystatechange=function(){4===a.readyState&&s.signal.removeEventListener("abort",u)}),a.send(void 0===s._bodyInit?null:s._bodyInit)}))}P.polyfill=!0,e.fetch||(e.fetch=P,e.Headers=l,e.Request=O,e.Response=w),t.Headers=l,t.Request=O,t.Response=w,t.fetch=P,Object.defineProperty(t,"__esModule",{value:!0})}({})}(n),n.fetch.ponyfill=!0,delete n.fetch.polyfill;var o=n;(t=o.fetch).default=o.fetch,t.fetch=o.fetch,t.Headers=o.Headers,t.Request=o.Request,t.Response=o.Response,e.exports=t}},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var i=t[n]={exports:{}};return e[n].call(i.exports,i,i.exports,r),i.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};(()=>{"use strict";r.r(n),r.d(n,{acknowledge:()=>B,api:()=>j,change:()=>R,event:()=>_,resolve:()=>U,trigger:()=>D});var e=r(98),t=r.n(e),o=r(818);function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function s(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{},n=r,o=n.queryParameters,i=n.requestTimeout,a=void 0===i?3e4:i;return t=l(t=new URL(t.toString()),o),r=y(r,a),c(t.toString(),3,s(s({},r),{},{headers:new e.Headers(s(s({"Content-Type":"application/json; charset=utf-8"},p()),r.headers))}))}function c(e,r,n){return new Promise((function(o,i){t()(e,n).then((function(t){if(0===r)return o(t);if(429===t.status){var s=n.retryTimeout;f(void 0===s?2e4:s).then((function(){c(e,r-1,n).then(o).catch(i)}))}else clearTimeout(n.requestTimer),o(t)})).catch(i)}))}var f=function(e){return new Promise((function(t){return setTimeout(t,e)}))};function p(){return o.jU?{}:{"User-Agent":"pdjs/".concat("2.0.0"," (").concat(process.version,"/").concat(process.platform,")")}}function l(e,t){if(!t)return e;for(var r=e.searchParams,n=function(){var e=i[o],n=t[e];Array.isArray(n)?n.forEach((function(t){r.append(e,t)})):r.append(e,n)},o=0,i=Object.keys(t);o]+)>/g,(function(e,t){return"$"+i[t]})))}if("function"==typeof o){var s=this;return e[Symbol.replace].call(this,r,(function(){var e=arguments;return"object"!==d(e[e.length-1])&&(e=[].slice.call(e)).push(n(e,s)),o.apply(this,e)}))}return e[Symbol.replace].call(this,r,o)},b.apply(this,arguments)}function m(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&v(e,t)}function v(e,t){return v=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},v(e,t)}function O(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function g(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,h),b=g(g({method:"GET"},d),{},{headers:g({Accept:"application/vnd.pagerduty+json;version=".concat(l),Authorization:"".concat({bearer:"Bearer ",token:"Token token="}[c]).concat(a)},d.headers)});return r=b.method,!["PUT","POST","DELETE","PATCH"].includes(null!==(n=r.toUpperCase())&&void 0!==n?n:"GET")&&y?b.queryParameters=null!==(t=b.queryParameters)&&void 0!==t?t:y:b.body=JSON.stringify(y),P(null!=f?f:"https://".concat(s,"/").concat(o.replace(/^\/+/,"")),b)}function P(e,t){return u(e,t).then((function(r){var n=r;return n.response=r,204===r.status?Promise.resolve(n):r.json().then((function(r){var o=function(e,t){var r=e.match(b(/.+.com\/([0-9A-Z_a-z]+)/,{resource:1}));if(r){var n=r[1];return t&&"get"===t.toLowerCase()?n:n.endsWith("ies")?n.slice(0,-3)+"y":n.endsWith("s")?n.slice(0,-1):n}return null}(e,t.method);return n.next=function(e,t,r){if(function(e){return void 0!==e.offset}(r)){if(null!=r&&r.more&&void 0!==d(r.offset)&&r.limit)return function(){return P(e,g(g({},t),{},{queryParameters:g(g({},t.queryParameters),{},{limit:r.limit.toString(),offset:(r.limit+r.offset).toString()})}))}}else if(function(e){return void 0!==e.cursor}(r)&&null!=r&&r.cursor)return function(){return P(e,g(g({},t),{},{queryParameters:g(g({},t.queryParameters),{},{cursor:r.cursor,limit:r.limit.toString()})}))}}(e,t,r),n.data=r,n.resource=o?r[o]:null,n})).catch((function(){return Promise.reject(n)}))}))}var E=["server","type","data"];function S(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function x(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,E),a="https://".concat(r,"/v2/enqueue");return"change"===o&&(a="https://".concat(r,"/v2/change/enqueue")),function(e,t){return u(e,t).then((function(e){var t=e;return e.json().then((function(r){return t.data=r,t.response=e,t}))}))}(a,x({method:"POST",body:JSON.stringify(i)},s))}var A=function(e){return function(t){return _(x(x({},t),{},{data:x(x({},t.data),{},T({},"event_action",e))}))}},D=A("trigger"),B=A("acknowledge"),U=A("resolve"),R=function(e){return _(x(x({},e),{},{type:"change"}))}})(),PagerDuty=n})(); //# sourceMappingURL=pdjs-legacy.js.map \ No newline at end of file diff --git a/dist/pdjs-legacy.js.map b/dist/pdjs-legacy.js.map index 83281f7..e979727 100644 --- a/dist/pdjs-legacy.js.map +++ b/dist/pdjs-legacy.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack://PagerDuty/./node_modules/abortcontroller-polyfill/dist/cjs-ponyfill.js","webpack://PagerDuty/./node_modules/browser-or-node/lib/index.js","webpack://PagerDuty/./node_modules/cross-fetch/dist/browser-ponyfill.js","webpack://PagerDuty/webpack/bootstrap","webpack://PagerDuty/webpack/runtime/compat get default export","webpack://PagerDuty/webpack/runtime/define property getters","webpack://PagerDuty/webpack/runtime/hasOwnProperty shorthand","webpack://PagerDuty/webpack/runtime/make namespace object","webpack://PagerDuty/./src/common.ts","webpack://PagerDuty/./src/api.ts","webpack://PagerDuty/./src/events.ts"],"names":["_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_createClass","protoProps","staticProps","prototype","_getPrototypeOf","o","setPrototypeOf","getPrototypeOf","__proto__","_setPrototypeOf","p","_assertThisInitialized","self","ReferenceError","_possibleConstructorReturn","call","_get","property","receiver","Reflect","get","base","object","hasOwnProperty","_superPropBase","desc","getOwnPropertyDescriptor","value","Emitter","this","type","callback","options","listeners","push","stack","l","splice","event","stackToCall","slice","listener","e","Promise","resolve","then","once","removeEventListener","defaultPrevented","AbortSignal","_Emitter","subClass","superClass","create","constructor","_inherits","Derived","hasNativeReflectConstruct","_super","construct","sham","Proxy","Date","toString","_isNativeReflectConstruct","result","Super","NewTarget","arguments","apply","_this","aborted","onabort","AbortController","Event","document","createEvent","initEvent","createEventObject","bubbles","cancelable","signal","dispatchEvent","Symbol","toStringTag","exports","_typeof","iterator","obj","isBrowser","window","name","process","versions","node","global","__self__","F","fetch","DOMException","support","Blob","viewClasses","isArrayBufferView","ArrayBuffer","isView","indexOf","normalizeName","String","test","toLowerCase","normalizeValue","iteratorFor","items","next","shift","done","undefined","Headers","headers","map","forEach","append","Array","isArray","header","getOwnPropertyNames","consumed","body","bodyUsed","reject","fileReaderReady","reader","onload","onerror","error","readBlobAsArrayBuffer","blob","FileReader","promise","readAsArrayBuffer","bufferClone","buf","view","Uint8Array","byteLength","set","buffer","Body","_initBody","_bodyInit","_bodyText","isPrototypeOf","_bodyBlob","FormData","_bodyFormData","URLSearchParams","DataView","_bodyArrayBuffer","rejected","Error","arrayBuffer","text","readAsText","chars","fromCharCode","join","readArrayBufferAsText","formData","decode","json","JSON","parse","oldValue","has","thisArg","keys","values","entries","methods","Request","input","method","upcased","url","credentials","mode","toUpperCase","referrer","form","trim","split","bytes","replace","decodeURIComponent","Response","bodyInit","status","ok","statusText","clone","response","redirectStatuses","redirect","RangeError","location","err","message","init","request","xhr","XMLHttpRequest","abortXhr","abort","rawHeaders","getAllResponseHeaders","line","parts","responseURL","responseText","ontimeout","open","withCredentials","responseType","setRequestHeader","addEventListener","onreadystatechange","readyState","send","polyfill","ponyfill","ctx","default","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","n","getter","__esModule","d","a","definition","prop","r","queryParameters","requestTimeout","rest","applyParameters","URL","applyTimeout","fetch_retry","userAgentHeader","retries","retryTimeout","retryTimeoutPromise","milliseconds","setTimeout","version","platform","combinedParameters","searchParams","parameter","item","search","timeout","controller","api","apiParameters","endpoint","partialParameters","partial","shorthand","shorthandParameters","post","put","patch","all","allInner","responses","concat","repackedResponse","data","resource","repackResponses","partialCall","server","token","tokenType","config","Accept","Authorization","bearer","includes","stringify","apiRequest","apiResponse","match","resourceKey","offset","isOffsetPagination","more","limit","cursor","isCursorPagination","nextFunc","eventParameters","eventFetch","action","trigger","acknowledge","change"],"mappings":"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","file":"pdjs-legacy.js","sourcesContent":["'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _superPropBase(object, property) {\n while (!Object.prototype.hasOwnProperty.call(object, property)) {\n object = _getPrototypeOf(object);\n if (object === null) break;\n }\n\n return object;\n}\n\nfunction _get(target, property, receiver) {\n if (typeof Reflect !== \"undefined\" && Reflect.get) {\n _get = Reflect.get;\n } else {\n _get = function _get(target, property, receiver) {\n var base = _superPropBase(target, property);\n\n if (!base) return;\n var desc = Object.getOwnPropertyDescriptor(base, property);\n\n if (desc.get) {\n return desc.get.call(receiver);\n }\n\n return desc.value;\n };\n }\n\n return _get(target, property, receiver || target);\n}\n\nvar Emitter = /*#__PURE__*/function () {\n function Emitter() {\n _classCallCheck(this, Emitter);\n\n Object.defineProperty(this, 'listeners', {\n value: {},\n writable: true,\n configurable: true\n });\n }\n\n _createClass(Emitter, [{\n key: \"addEventListener\",\n value: function addEventListener(type, callback, options) {\n if (!(type in this.listeners)) {\n this.listeners[type] = [];\n }\n\n this.listeners[type].push({\n callback: callback,\n options: options\n });\n }\n }, {\n key: \"removeEventListener\",\n value: function removeEventListener(type, callback) {\n if (!(type in this.listeners)) {\n return;\n }\n\n var stack = this.listeners[type];\n\n for (var i = 0, l = stack.length; i < l; i++) {\n if (stack[i].callback === callback) {\n stack.splice(i, 1);\n return;\n }\n }\n }\n }, {\n key: \"dispatchEvent\",\n value: function dispatchEvent(event) {\n if (!(event.type in this.listeners)) {\n return;\n }\n\n var stack = this.listeners[event.type];\n var stackToCall = stack.slice();\n\n for (var i = 0, l = stackToCall.length; i < l; i++) {\n var listener = stackToCall[i];\n\n try {\n listener.callback.call(this, event);\n } catch (e) {\n Promise.resolve().then(function () {\n throw e;\n });\n }\n\n if (listener.options && listener.options.once) {\n this.removeEventListener(event.type, listener.callback);\n }\n }\n\n return !event.defaultPrevented;\n }\n }]);\n\n return Emitter;\n}();\n\nvar AbortSignal = /*#__PURE__*/function (_Emitter) {\n _inherits(AbortSignal, _Emitter);\n\n var _super = _createSuper(AbortSignal);\n\n function AbortSignal() {\n var _this;\n\n _classCallCheck(this, AbortSignal);\n\n _this = _super.call(this); // Some versions of babel does not transpile super() correctly for IE <= 10, if the parent\n // constructor has failed to run, then \"this.listeners\" will still be undefined and then we call\n // the parent constructor directly instead as a workaround. For general details, see babel bug:\n // https://github.com/babel/babel/issues/3041\n // This hack was added as a fix for the issue described here:\n // https://github.com/Financial-Times/polyfill-library/pull/59#issuecomment-477558042\n\n if (!_this.listeners) {\n Emitter.call(_assertThisInitialized(_this));\n } // Compared to assignment, Object.defineProperty makes properties non-enumerable by default and\n // we want Object.keys(new AbortController().signal) to be [] for compat with the native impl\n\n\n Object.defineProperty(_assertThisInitialized(_this), 'aborted', {\n value: false,\n writable: true,\n configurable: true\n });\n Object.defineProperty(_assertThisInitialized(_this), 'onabort', {\n value: null,\n writable: true,\n configurable: true\n });\n return _this;\n }\n\n _createClass(AbortSignal, [{\n key: \"toString\",\n value: function toString() {\n return '[object AbortSignal]';\n }\n }, {\n key: \"dispatchEvent\",\n value: function dispatchEvent(event) {\n if (event.type === 'abort') {\n this.aborted = true;\n\n if (typeof this.onabort === 'function') {\n this.onabort.call(this, event);\n }\n }\n\n _get(_getPrototypeOf(AbortSignal.prototype), \"dispatchEvent\", this).call(this, event);\n }\n }]);\n\n return AbortSignal;\n}(Emitter);\nvar AbortController = /*#__PURE__*/function () {\n function AbortController() {\n _classCallCheck(this, AbortController);\n\n // Compared to assignment, Object.defineProperty makes properties non-enumerable by default and\n // we want Object.keys(new AbortController()) to be [] for compat with the native impl\n Object.defineProperty(this, 'signal', {\n value: new AbortSignal(),\n writable: true,\n configurable: true\n });\n }\n\n _createClass(AbortController, [{\n key: \"abort\",\n value: function abort() {\n var event;\n\n try {\n event = new Event('abort');\n } catch (e) {\n if (typeof document !== 'undefined') {\n if (!document.createEvent) {\n // For Internet Explorer 8:\n event = document.createEventObject();\n event.type = 'abort';\n } else {\n // For Internet Explorer 11:\n event = document.createEvent('Event');\n event.initEvent('abort', false, false);\n }\n } else {\n // Fallback where document isn't available:\n event = {\n type: 'abort',\n bubbles: false,\n cancelable: false\n };\n }\n }\n\n this.signal.dispatchEvent(event);\n }\n }, {\n key: \"toString\",\n value: function toString() {\n return '[object AbortController]';\n }\n }]);\n\n return AbortController;\n}();\n\nif (typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n // These are necessary to make sure that we get correct output for:\n // Object.prototype.toString.call(new AbortController())\n AbortController.prototype[Symbol.toStringTag] = 'AbortController';\n AbortSignal.prototype[Symbol.toStringTag] = 'AbortSignal';\n}\n\nfunction polyfillNeeded(self) {\n if (self.__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL) {\n console.log('__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL=true is set, will force install polyfill');\n return true;\n } // Note that the \"unfetch\" minimal fetch polyfill defines fetch() without\n // defining window.Request, and this polyfill need to work on top of unfetch\n // so the below feature detection needs the !self.AbortController part.\n // The Request.prototype check is also needed because Safari versions 11.1.2\n // up to and including 12.1.x has a window.AbortController present but still\n // does NOT correctly implement abortable fetch:\n // https://bugs.webkit.org/show_bug.cgi?id=174980#c2\n\n\n return typeof self.Request === 'function' && !self.Request.prototype.hasOwnProperty('signal') || !self.AbortController;\n}\n\n/**\n * Note: the \"fetch.Request\" default value is available for fetch imported from\n * the \"node-fetch\" package and not in browsers. This is OK since browsers\n * will be importing umd-polyfill.js from that path \"self\" is passed the\n * decorator so the default value will not be used (because browsers that define\n * fetch also has Request). One quirky setup where self.fetch exists but\n * self.Request does not is when the \"unfetch\" minimal fetch polyfill is used\n * on top of IE11; for this case the browser will try to use the fetch.Request\n * default value which in turn will be undefined but then then \"if (Request)\"\n * will ensure that you get a patched fetch but still no Request (as expected).\n * @param {fetch, Request = fetch.Request}\n * @returns {fetch: abortableFetch, Request: AbortableRequest}\n */\n\nfunction abortableFetchDecorator(patchTargets) {\n if ('function' === typeof patchTargets) {\n patchTargets = {\n fetch: patchTargets\n };\n }\n\n var _patchTargets = patchTargets,\n fetch = _patchTargets.fetch,\n _patchTargets$Request = _patchTargets.Request,\n NativeRequest = _patchTargets$Request === void 0 ? fetch.Request : _patchTargets$Request,\n NativeAbortController = _patchTargets.AbortController,\n _patchTargets$__FORCE = _patchTargets.__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL,\n __FORCE_INSTALL_ABORTCONTROLLER_POLYFILL = _patchTargets$__FORCE === void 0 ? false : _patchTargets$__FORCE;\n\n if (!polyfillNeeded({\n fetch: fetch,\n Request: NativeRequest,\n AbortController: NativeAbortController,\n __FORCE_INSTALL_ABORTCONTROLLER_POLYFILL: __FORCE_INSTALL_ABORTCONTROLLER_POLYFILL\n })) {\n return {\n fetch: fetch,\n Request: Request\n };\n }\n\n var Request = NativeRequest; // Note that the \"unfetch\" minimal fetch polyfill defines fetch() without\n // defining window.Request, and this polyfill need to work on top of unfetch\n // hence we only patch it if it's available. Also we don't patch it if signal\n // is already available on the Request prototype because in this case support\n // is present and the patching below can cause a crash since it assigns to\n // request.signal which is technically a read-only property. This latter error\n // happens when you run the main5.js node-fetch example in the repo\n // \"abortcontroller-polyfill-examples\". The exact error is:\n // request.signal = init.signal;\n // ^\n // TypeError: Cannot set property signal of # which has only a getter\n\n if (Request && !Request.prototype.hasOwnProperty('signal') || __FORCE_INSTALL_ABORTCONTROLLER_POLYFILL) {\n Request = function Request(input, init) {\n var signal;\n\n if (init && init.signal) {\n signal = init.signal; // Never pass init.signal to the native Request implementation when the polyfill has\n // been installed because if we're running on top of a browser with a\n // working native AbortController (i.e. the polyfill was installed due to\n // __FORCE_INSTALL_ABORTCONTROLLER_POLYFILL being set), then passing our\n // fake AbortSignal to the native fetch will trigger:\n // TypeError: Failed to construct 'Request': member signal is not of type AbortSignal.\n\n delete init.signal;\n }\n\n var request = new NativeRequest(input, init);\n\n if (signal) {\n Object.defineProperty(request, 'signal', {\n writable: false,\n enumerable: false,\n configurable: true,\n value: signal\n });\n }\n\n return request;\n };\n\n Request.prototype = NativeRequest.prototype;\n }\n\n var realFetch = fetch;\n\n var abortableFetch = function abortableFetch(input, init) {\n var signal = Request && Request.prototype.isPrototypeOf(input) ? input.signal : init ? init.signal : undefined;\n\n if (signal) {\n var abortError;\n\n try {\n abortError = new DOMException('Aborted', 'AbortError');\n } catch (err) {\n // IE 11 does not support calling the DOMException constructor, use a\n // regular error object on it instead.\n abortError = new Error('Aborted');\n abortError.name = 'AbortError';\n } // Return early if already aborted, thus avoiding making an HTTP request\n\n\n if (signal.aborted) {\n return Promise.reject(abortError);\n } // Turn an event into a promise, reject it once `abort` is dispatched\n\n\n var cancellation = new Promise(function (_, reject) {\n signal.addEventListener('abort', function () {\n return reject(abortError);\n }, {\n once: true\n });\n });\n\n if (init && init.signal) {\n // Never pass .signal to the native implementation when the polyfill has\n // been installed because if we're running on top of a browser with a\n // working native AbortController (i.e. the polyfill was installed due to\n // __FORCE_INSTALL_ABORTCONTROLLER_POLYFILL being set), then passing our\n // fake AbortSignal to the native fetch will trigger:\n // TypeError: Failed to execute 'fetch' on 'Window': member signal is not of type AbortSignal.\n delete init.signal;\n } // Return the fastest promise (don't need to wait for request to finish)\n\n\n return Promise.race([cancellation, realFetch(input, init)]);\n }\n\n return realFetch(input, init);\n };\n\n return {\n fetch: abortableFetch,\n Request: Request\n };\n}\n\nexports.AbortController = AbortController;\nexports.AbortSignal = AbortSignal;\nexports.abortableFetch = abortableFetchDecorator;\n","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n/* global window self */\n\nvar isBrowser = typeof window !== 'undefined' && typeof window.document !== 'undefined';\n\n/* eslint-disable no-restricted-globals */\nvar isWebWorker = (typeof self === 'undefined' ? 'undefined' : _typeof(self)) === 'object' && self.constructor && self.constructor.name === 'DedicatedWorkerGlobalScope';\n/* eslint-enable no-restricted-globals */\n\nvar isNode = typeof process !== 'undefined' && process.versions != null && process.versions.node != null;\n\n/**\n * @see https://github.com/jsdom/jsdom/releases/tag/12.0.0\n * @see https://github.com/jsdom/jsdom/issues/1537\n */\n/* eslint-disable no-undef */\nvar isJsDom = function isJsDom() {\n return typeof window !== 'undefined' && window.name === 'nodejs' || navigator.userAgent.includes('Node.js') || navigator.userAgent.includes('jsdom');\n};\n\nexports.isBrowser = isBrowser;\nexports.isWebWorker = isWebWorker;\nexports.isNode = isNode;\nexports.isJsDom = isJsDom;","var global = typeof self !== 'undefined' ? self : this;\nvar __self__ = (function () {\nfunction F() {\nthis.fetch = false;\nthis.DOMException = global.DOMException\n}\nF.prototype = global;\nreturn new F();\n})();\n(function(self) {\n\nvar irrelevant = (function (exports) {\n\n var support = {\n searchParams: 'URLSearchParams' in self,\n iterable: 'Symbol' in self && 'iterator' in Symbol,\n blob:\n 'FileReader' in self &&\n 'Blob' in self &&\n (function() {\n try {\n new Blob();\n return true\n } catch (e) {\n return false\n }\n })(),\n formData: 'FormData' in self,\n arrayBuffer: 'ArrayBuffer' in self\n };\n\n function isDataView(obj) {\n return obj && DataView.prototype.isPrototypeOf(obj)\n }\n\n if (support.arrayBuffer) {\n var viewClasses = [\n '[object Int8Array]',\n '[object Uint8Array]',\n '[object Uint8ClampedArray]',\n '[object Int16Array]',\n '[object Uint16Array]',\n '[object Int32Array]',\n '[object Uint32Array]',\n '[object Float32Array]',\n '[object Float64Array]'\n ];\n\n var isArrayBufferView =\n ArrayBuffer.isView ||\n function(obj) {\n return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1\n };\n }\n\n function normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name);\n }\n if (/[^a-z0-9\\-#$%&'*+.^_`|~]/i.test(name)) {\n throw new TypeError('Invalid character in header field name')\n }\n return name.toLowerCase()\n }\n\n function normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value);\n }\n return value\n }\n\n // Build a destructive iterator for the value list\n function iteratorFor(items) {\n var iterator = {\n next: function() {\n var value = items.shift();\n return {done: value === undefined, value: value}\n }\n };\n\n if (support.iterable) {\n iterator[Symbol.iterator] = function() {\n return iterator\n };\n }\n\n return iterator\n }\n\n function Headers(headers) {\n this.map = {};\n\n if (headers instanceof Headers) {\n headers.forEach(function(value, name) {\n this.append(name, value);\n }, this);\n } else if (Array.isArray(headers)) {\n headers.forEach(function(header) {\n this.append(header[0], header[1]);\n }, this);\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach(function(name) {\n this.append(name, headers[name]);\n }, this);\n }\n }\n\n Headers.prototype.append = function(name, value) {\n name = normalizeName(name);\n value = normalizeValue(value);\n var oldValue = this.map[name];\n this.map[name] = oldValue ? oldValue + ', ' + value : value;\n };\n\n Headers.prototype['delete'] = function(name) {\n delete this.map[normalizeName(name)];\n };\n\n Headers.prototype.get = function(name) {\n name = normalizeName(name);\n return this.has(name) ? this.map[name] : null\n };\n\n Headers.prototype.has = function(name) {\n return this.map.hasOwnProperty(normalizeName(name))\n };\n\n Headers.prototype.set = function(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value);\n };\n\n Headers.prototype.forEach = function(callback, thisArg) {\n for (var name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n callback.call(thisArg, this.map[name], name, this);\n }\n }\n };\n\n Headers.prototype.keys = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push(name);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.values = function() {\n var items = [];\n this.forEach(function(value) {\n items.push(value);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.entries = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push([name, value]);\n });\n return iteratorFor(items)\n };\n\n if (support.iterable) {\n Headers.prototype[Symbol.iterator] = Headers.prototype.entries;\n }\n\n function consumed(body) {\n if (body.bodyUsed) {\n return Promise.reject(new TypeError('Already read'))\n }\n body.bodyUsed = true;\n }\n\n function fileReaderReady(reader) {\n return new Promise(function(resolve, reject) {\n reader.onload = function() {\n resolve(reader.result);\n };\n reader.onerror = function() {\n reject(reader.error);\n };\n })\n }\n\n function readBlobAsArrayBuffer(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsArrayBuffer(blob);\n return promise\n }\n\n function readBlobAsText(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsText(blob);\n return promise\n }\n\n function readArrayBufferAsText(buf) {\n var view = new Uint8Array(buf);\n var chars = new Array(view.length);\n\n for (var i = 0; i < view.length; i++) {\n chars[i] = String.fromCharCode(view[i]);\n }\n return chars.join('')\n }\n\n function bufferClone(buf) {\n if (buf.slice) {\n return buf.slice(0)\n } else {\n var view = new Uint8Array(buf.byteLength);\n view.set(new Uint8Array(buf));\n return view.buffer\n }\n }\n\n function Body() {\n this.bodyUsed = false;\n\n this._initBody = function(body) {\n this._bodyInit = body;\n if (!body) {\n this._bodyText = '';\n } else if (typeof body === 'string') {\n this._bodyText = body;\n } else if (support.blob && Blob.prototype.isPrototypeOf(body)) {\n this._bodyBlob = body;\n } else if (support.formData && FormData.prototype.isPrototypeOf(body)) {\n this._bodyFormData = body;\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this._bodyText = body.toString();\n } else if (support.arrayBuffer && support.blob && isDataView(body)) {\n this._bodyArrayBuffer = bufferClone(body.buffer);\n // IE 10-11 can't handle a DataView body.\n this._bodyInit = new Blob([this._bodyArrayBuffer]);\n } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) {\n this._bodyArrayBuffer = bufferClone(body);\n } else {\n this._bodyText = body = Object.prototype.toString.call(body);\n }\n\n if (!this.headers.get('content-type')) {\n if (typeof body === 'string') {\n this.headers.set('content-type', 'text/plain;charset=UTF-8');\n } else if (this._bodyBlob && this._bodyBlob.type) {\n this.headers.set('content-type', this._bodyBlob.type);\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n }\n };\n\n if (support.blob) {\n this.blob = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return Promise.resolve(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(new Blob([this._bodyArrayBuffer]))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as blob')\n } else {\n return Promise.resolve(new Blob([this._bodyText]))\n }\n };\n\n this.arrayBuffer = function() {\n if (this._bodyArrayBuffer) {\n return consumed(this) || Promise.resolve(this._bodyArrayBuffer)\n } else {\n return this.blob().then(readBlobAsArrayBuffer)\n }\n };\n }\n\n this.text = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return readBlobAsText(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as text')\n } else {\n return Promise.resolve(this._bodyText)\n }\n };\n\n if (support.formData) {\n this.formData = function() {\n return this.text().then(decode)\n };\n }\n\n this.json = function() {\n return this.text().then(JSON.parse)\n };\n\n return this\n }\n\n // HTTP methods whose capitalization should be normalized\n var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT'];\n\n function normalizeMethod(method) {\n var upcased = method.toUpperCase();\n return methods.indexOf(upcased) > -1 ? upcased : method\n }\n\n function Request(input, options) {\n options = options || {};\n var body = options.body;\n\n if (input instanceof Request) {\n if (input.bodyUsed) {\n throw new TypeError('Already read')\n }\n this.url = input.url;\n this.credentials = input.credentials;\n if (!options.headers) {\n this.headers = new Headers(input.headers);\n }\n this.method = input.method;\n this.mode = input.mode;\n this.signal = input.signal;\n if (!body && input._bodyInit != null) {\n body = input._bodyInit;\n input.bodyUsed = true;\n }\n } else {\n this.url = String(input);\n }\n\n this.credentials = options.credentials || this.credentials || 'same-origin';\n if (options.headers || !this.headers) {\n this.headers = new Headers(options.headers);\n }\n this.method = normalizeMethod(options.method || this.method || 'GET');\n this.mode = options.mode || this.mode || null;\n this.signal = options.signal || this.signal;\n this.referrer = null;\n\n if ((this.method === 'GET' || this.method === 'HEAD') && body) {\n throw new TypeError('Body not allowed for GET or HEAD requests')\n }\n this._initBody(body);\n }\n\n Request.prototype.clone = function() {\n return new Request(this, {body: this._bodyInit})\n };\n\n function decode(body) {\n var form = new FormData();\n body\n .trim()\n .split('&')\n .forEach(function(bytes) {\n if (bytes) {\n var split = bytes.split('=');\n var name = split.shift().replace(/\\+/g, ' ');\n var value = split.join('=').replace(/\\+/g, ' ');\n form.append(decodeURIComponent(name), decodeURIComponent(value));\n }\n });\n return form\n }\n\n function parseHeaders(rawHeaders) {\n var headers = new Headers();\n // Replace instances of \\r\\n and \\n followed by at least one space or horizontal tab with a space\n // https://tools.ietf.org/html/rfc7230#section-3.2\n var preProcessedHeaders = rawHeaders.replace(/\\r?\\n[\\t ]+/g, ' ');\n preProcessedHeaders.split(/\\r?\\n/).forEach(function(line) {\n var parts = line.split(':');\n var key = parts.shift().trim();\n if (key) {\n var value = parts.join(':').trim();\n headers.append(key, value);\n }\n });\n return headers\n }\n\n Body.call(Request.prototype);\n\n function Response(bodyInit, options) {\n if (!options) {\n options = {};\n }\n\n this.type = 'default';\n this.status = options.status === undefined ? 200 : options.status;\n this.ok = this.status >= 200 && this.status < 300;\n this.statusText = 'statusText' in options ? options.statusText : 'OK';\n this.headers = new Headers(options.headers);\n this.url = options.url || '';\n this._initBody(bodyInit);\n }\n\n Body.call(Response.prototype);\n\n Response.prototype.clone = function() {\n return new Response(this._bodyInit, {\n status: this.status,\n statusText: this.statusText,\n headers: new Headers(this.headers),\n url: this.url\n })\n };\n\n Response.error = function() {\n var response = new Response(null, {status: 0, statusText: ''});\n response.type = 'error';\n return response\n };\n\n var redirectStatuses = [301, 302, 303, 307, 308];\n\n Response.redirect = function(url, status) {\n if (redirectStatuses.indexOf(status) === -1) {\n throw new RangeError('Invalid status code')\n }\n\n return new Response(null, {status: status, headers: {location: url}})\n };\n\n exports.DOMException = self.DOMException;\n try {\n new exports.DOMException();\n } catch (err) {\n exports.DOMException = function(message, name) {\n this.message = message;\n this.name = name;\n var error = Error(message);\n this.stack = error.stack;\n };\n exports.DOMException.prototype = Object.create(Error.prototype);\n exports.DOMException.prototype.constructor = exports.DOMException;\n }\n\n function fetch(input, init) {\n return new Promise(function(resolve, reject) {\n var request = new Request(input, init);\n\n if (request.signal && request.signal.aborted) {\n return reject(new exports.DOMException('Aborted', 'AbortError'))\n }\n\n var xhr = new XMLHttpRequest();\n\n function abortXhr() {\n xhr.abort();\n }\n\n xhr.onload = function() {\n var options = {\n status: xhr.status,\n statusText: xhr.statusText,\n headers: parseHeaders(xhr.getAllResponseHeaders() || '')\n };\n options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL');\n var body = 'response' in xhr ? xhr.response : xhr.responseText;\n resolve(new Response(body, options));\n };\n\n xhr.onerror = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.ontimeout = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.onabort = function() {\n reject(new exports.DOMException('Aborted', 'AbortError'));\n };\n\n xhr.open(request.method, request.url, true);\n\n if (request.credentials === 'include') {\n xhr.withCredentials = true;\n } else if (request.credentials === 'omit') {\n xhr.withCredentials = false;\n }\n\n if ('responseType' in xhr && support.blob) {\n xhr.responseType = 'blob';\n }\n\n request.headers.forEach(function(value, name) {\n xhr.setRequestHeader(name, value);\n });\n\n if (request.signal) {\n request.signal.addEventListener('abort', abortXhr);\n\n xhr.onreadystatechange = function() {\n // DONE (success or failure)\n if (xhr.readyState === 4) {\n request.signal.removeEventListener('abort', abortXhr);\n }\n };\n }\n\n xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit);\n })\n }\n\n fetch.polyfill = true;\n\n if (!self.fetch) {\n self.fetch = fetch;\n self.Headers = Headers;\n self.Request = Request;\n self.Response = Response;\n }\n\n exports.Headers = Headers;\n exports.Request = Request;\n exports.Response = Response;\n exports.fetch = fetch;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n return exports;\n\n}({}));\n})(__self__);\n__self__.fetch.ponyfill = true;\n// Remove \"polyfill\" property added by whatwg-fetch\ndelete __self__.fetch.polyfill;\n// Choose between native implementation (global) or custom implementation (__self__)\n// var ctx = global.fetch ? global : __self__;\nvar ctx = __self__; // this line disable service worker support temporarily\nexports = ctx.fetch // To enable: import fetch from 'cross-fetch'\nexports.default = ctx.fetch // For TypeScript consumers without esModuleInterop.\nexports.fetch = ctx.fetch // To enable: import {fetch} from 'cross-fetch'\nexports.Headers = ctx.Headers\nexports.Request = ctx.Request\nexports.Response = ctx.Response\nmodule.exports = exports\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/* LEGACY-BROWSER-SUPPORT-START */\nimport fetch, {Headers} from 'cross-fetch';\nimport {AbortController} from 'abortcontroller-polyfill/dist/cjs-ponyfill';\nimport {isBrowser} from 'browser-or-node';\n/* LEGACY-BROWSER-SUPPORT-END */\n\nconst VERSION = '2.0.0';\n\ntype QueryParameter = Record>;\n\nexport interface RequestOptions extends RequestInit {\n queryParameters?: QueryParameter;\n retryCount?: number;\n requestTimeout?: number;\n retryTimeout?: number;\n timeout?: number;\n}\n\nexport function request(\n url: string | URL,\n options: RequestOptions = {}\n): Promise {\n const {queryParameters, requestTimeout = 30000, ...rest} = options;\n\n url = new URL(url.toString());\n\n url = applyParameters(url, queryParameters);\n options = applyTimeout(options, requestTimeout);\n\n return fetch_retry(url.toString(), 3, {\n ...rest,\n headers: new Headers({\n 'Content-Type': 'application/json; charset=utf-8',\n /* LEGACY-BROWSER-SUPPORT-START */\n ...userAgentHeader(),\n /* LEGACY-BROWSER-SUPPORT-END */\n ...rest.headers,\n }),\n });\n}\n\nfunction fetch_retry(\n url: string,\n retries: number,\n options: RequestOptions\n): Promise {\n return new Promise((resolve, reject) => {\n fetch(url, options)\n .then(response => {\n // We don't want to `reject` when retries have finished\n // Instead simply stop trying and return.\n if (retries === 0) return resolve(response);\n if (response.status === 429) {\n const {retryTimeout = 20000} = options;\n retryTimeoutPromise(retryTimeout).then(() => {\n fetch_retry(url, retries - 1, options)\n .then(resolve)\n .catch(reject);\n });\n } else {\n resolve(response);\n }\n })\n .catch(reject);\n });\n}\n\nconst retryTimeoutPromise = (milliseconds: number) => {\n return new Promise(resolve => setTimeout(resolve, milliseconds));\n};\n\nfunction userAgentHeader(): object {\n if (isBrowser) return {};\n\n return {\n 'User-Agent': `pdjs/${VERSION} (${process.version}/${process.platform})`,\n };\n}\n\nfunction applyParameters(url: URL, queryParameters?: QueryParameter): URL {\n if (!queryParameters) return url;\n\n const combinedParameters = url.searchParams;\n\n for (const key of Object.keys(queryParameters)) {\n const parameter = queryParameters[key];\n if (Array.isArray(parameter)) {\n // Support for array based keys like `additional_fields[]`\n parameter.forEach(item => {\n combinedParameters.append(key, item);\n });\n } else {\n combinedParameters.append(key, parameter);\n }\n }\n\n url.search = combinedParameters.toString();\n return url;\n}\n\nfunction applyTimeout(init: RequestOptions, timeout?: number): RequestOptions {\n if (!timeout) return init;\n\n const controller = new AbortController();\n setTimeout(() => controller.abort(), timeout);\n\n return {\n ...init,\n signal: controller.signal,\n };\n}\n","import {request, RequestOptions} from './common';\n\nexport interface ShorthandCall {\n (res: string, apiParameters?: Partial): APIPromise;\n}\n\nexport interface PartialCall {\n (apiParameters: APIParameters): APIPromise;\n (apiParameters: Partial): PartialCall;\n get: ShorthandCall;\n post: ShorthandCall;\n put: ShorthandCall;\n patch: ShorthandCall;\n delete: ShorthandCall;\n all: ShorthandCall;\n}\n\nexport type APIParameters = RequestOptions & {\n endpoint?: string;\n url?: string;\n data?: object;\n token?: string;\n tokenType?: string;\n server?: string;\n version?: number;\n} & ({endpoint: string} | {url: string});\n\nexport type APIPromise = Promise;\n\nexport interface APIResponse extends Response {\n data: any;\n resource: any;\n response: Response;\n next?: () => APIPromise;\n}\n\nexport function api(apiParameters: APIParameters): APIPromise;\nexport function api(apiParameters: Partial): PartialCall;\nexport function api(\n apiParameters: Partial\n): APIPromise | PartialCall {\n // If the apiParameters don't include `endpoint` treat it as a partial\n // application.\n if (!apiParameters.endpoint && !apiParameters.url) {\n return partialCall(apiParameters);\n }\n\n // allows for Token and Bearer token types to be used in Authorization\n type typeMap = {\n [key: string]: string;\n };\n\n const types: typeMap = {\n bearer: 'Bearer ',\n token: 'Token token=',\n };\n\n const {\n endpoint,\n server = 'api.pagerduty.com',\n token,\n tokenType = apiParameters.tokenType || 'token',\n url,\n version = 2,\n data,\n ...rest\n } = apiParameters;\n\n const config: RequestOptions = {\n method: 'GET',\n ...rest,\n headers: {\n Accept: `application/vnd.pagerduty+json;version=${version}`,\n Authorization: `${types[tokenType]}${token!}`,\n ...rest.headers,\n },\n };\n\n // Allow `data` for `queryParameters` for requests without bodies.\n if (isReadonlyRequest(config.method!) && data) {\n config.queryParameters =\n config.queryParameters ?? (data as Record);\n } else {\n config.body = JSON.stringify(data);\n }\n\n return apiRequest(\n url ?? `https://${server}/${endpoint!.replace(/^\\/+/, '')}`,\n config\n );\n}\n\nfunction apiRequest(url: string, options: RequestOptions): APIPromise {\n return request(url, options).then(\n (response: Response): APIPromise => {\n const apiResponse = response as APIResponse;\n apiResponse.response = response;\n\n if (response.status === 204) {\n return Promise.resolve(apiResponse);\n }\n\n return response\n .json()\n .then(\n (data): APIResponse => {\n const resource = resourceKey(url);\n apiResponse.next = nextFunc(url, options, data);\n apiResponse.data = data;\n apiResponse.resource = resource ? data[resource] : null;\n return apiResponse;\n }\n )\n .catch(() => Promise.reject(apiResponse));\n }\n );\n}\n\nfunction resourceKey(url: string) {\n const resource = url.match(/.+.com\\/(?[\\w]+)/);\n if (resource) {\n return resource[1];\n }\n return null;\n}\n\nfunction isReadonlyRequest(method: string) {\n return !['PUT', 'POST', 'DELETE', 'PATCH'].includes(\n method.toUpperCase() ?? 'GET'\n );\n}\n\ninterface OffsetPagination {\n type: 'offset';\n more?: boolean;\n offset?: number;\n limit?: number;\n}\n\ninterface CursorPagination {\n type: 'cursor';\n cursor?: string;\n limit?: number;\n}\n\nfunction isOffsetPagination(\n data: OffsetPagination | CursorPagination\n): data is OffsetPagination {\n if ((data as OffsetPagination).offset !== undefined) {\n return true;\n }\n return false;\n}\n\nfunction isCursorPagination(\n data: OffsetPagination | CursorPagination\n): data is CursorPagination {\n if ((data as CursorPagination).cursor !== undefined) {\n return true;\n }\n return false;\n}\n\nfunction nextFunc(\n url: string,\n options: RequestOptions,\n data: OffsetPagination | CursorPagination\n) {\n if (isOffsetPagination(data)) {\n if (data?.more && typeof data.offset !== undefined && data.limit) {\n return () =>\n apiRequest(url, {\n ...options,\n queryParameters: {\n ...options.queryParameters,\n limit: data.limit!.toString(),\n offset: (data.limit! + data.offset!).toString(),\n },\n });\n }\n } else if (isCursorPagination(data)) {\n if (data?.cursor) {\n return () =>\n apiRequest(url, {\n ...options,\n queryParameters: {\n ...options.queryParameters,\n cursor: data.cursor!,\n limit: data.limit!.toString(),\n },\n });\n }\n }\n\n return undefined;\n}\n\nfunction partialCall(apiParameters: Partial) {\n const partialParameters = apiParameters;\n const partial = ((apiParameters: Partial) =>\n api({...partialParameters, ...apiParameters})) as PartialCall;\n\n const shorthand = (method: string) => (\n endpoint: string,\n shorthandParameters?: Partial\n ): APIPromise =>\n api({\n endpoint,\n method,\n ...partialParameters,\n ...shorthandParameters,\n }) as APIPromise;\n\n partial.get = shorthand('get');\n partial.post = shorthand('post');\n partial.put = shorthand('put');\n partial.patch = shorthand('patch');\n partial.delete = shorthand('delete');\n\n partial.all = (\n endpoint: string,\n shorthandParameters?: Partial\n ): APIPromise => {\n function allInner(responses: APIResponse[]): Promise {\n const response = responses[responses.length - 1];\n if (!response.next) {\n // Base case, resolve and return all responses.\n return Promise.resolve(responses);\n }\n // If there are still more resources to get then concat and repeat.\n return response\n .next()\n .then(response => allInner(responses.concat([response])));\n }\n\n function repackResponses(responses: APIResponse[]): APIPromise {\n // Repack the responses object to make it more user friendly.\n const repackedResponse = responses.shift() as APIResponse; // Use the first response to build the standard response object\n repackedResponse.data = [repackedResponse.data];\n responses.forEach(response => {\n repackedResponse.data = repackedResponse.data.concat(response.data);\n repackedResponse.resource = repackedResponse.resource.concat(\n response.resource\n );\n });\n return Promise.resolve(repackedResponse);\n }\n\n const method = 'get';\n return (api({\n endpoint,\n method,\n ...partialParameters,\n ...shorthandParameters,\n }) as APIPromise)\n .then(response => allInner([response]))\n .then(responses => repackResponses(responses));\n };\n\n return partial;\n}\n","import {request, RequestOptions} from './common';\n\nexport type Action = 'trigger' | 'acknowledge' | 'resolve';\n\nexport type EventPromise = Promise;\n\nexport interface EventResponse extends Response {\n data: any;\n response: Response;\n}\n\nexport type Severity = 'critical' | 'error' | 'warning' | 'info';\n\nexport interface Image {\n src: string;\n href?: string;\n alt?: string;\n}\n\nexport interface Link {\n href: string;\n text?: string;\n}\n\nexport interface EventPayloadV2 {\n routing_key: string;\n event_action: Action;\n dedup_key?: string;\n payload: {\n summary: string;\n source: string;\n severity: Severity;\n timestamp?: string;\n component?: string;\n group?: string;\n class?: string;\n custom_details?: object;\n };\n images?: Array;\n links?: Array;\n}\n\nexport interface EventParameters extends RequestOptions {\n data: EventPayloadV2;\n type?: string;\n server?: string;\n}\n\nexport interface ChangePayload {\n routing_key: string;\n payload: {\n summary: string;\n source?: string;\n timestamp: string;\n custom_details: object;\n };\n links: Array;\n}\nexport interface ChangeParameters extends RequestOptions {\n data: ChangePayload;\n server?: string;\n}\n\nexport function event(eventParameters: EventParameters): EventPromise {\n const {\n server = 'events.pagerduty.com',\n type = 'event',\n data,\n ...config\n } = eventParameters;\n\n let url = `https://${server}/v2/enqueue`;\n if (type === 'change') {\n url = `https://${server}/v2/change/enqueue`;\n }\n\n return eventFetch(url, {\n method: 'POST',\n body: JSON.stringify(data),\n ...config,\n });\n}\n\nconst shorthand = (action: Action) => (\n eventParameters: EventParameters\n): EventPromise => {\n const typeField = 'event_action';\n\n return event({\n ...eventParameters,\n data: {\n ...eventParameters.data,\n [typeField]: action,\n },\n });\n};\n\nexport const trigger = shorthand('trigger');\nexport const acknowledge = shorthand('acknowledge');\nexport const resolve = shorthand('resolve');\nexport const change = (eventParameters: EventParameters) =>\n event({...eventParameters, type: 'change'});\n\nfunction eventFetch(url: string, options: RequestOptions): EventPromise {\n return request(url, options).then(\n (response: Response): EventPromise => {\n const apiResponse = response as EventResponse;\n return response.json().then(\n (data): EventResponse => {\n apiResponse.data = data;\n apiResponse.response = response;\n return apiResponse;\n }\n );\n }\n );\n}\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"pdjs-legacy.js","mappings":"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","sources":["webpack://PagerDuty/./node_modules/browser-or-node/lib/index.js","webpack://PagerDuty/./node_modules/cross-fetch/dist/browser-ponyfill.js","webpack://PagerDuty/webpack/bootstrap","webpack://PagerDuty/webpack/runtime/compat get default export","webpack://PagerDuty/webpack/runtime/define property getters","webpack://PagerDuty/webpack/runtime/hasOwnProperty shorthand","webpack://PagerDuty/webpack/runtime/make namespace object","webpack://PagerDuty/./src/common.ts","webpack://PagerDuty/./src/api.ts","webpack://PagerDuty/./src/events.ts"],"sourcesContent":["'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n/* global window self */\n\nvar isBrowser = typeof window !== 'undefined' && typeof window.document !== 'undefined';\n\n/* eslint-disable no-restricted-globals */\nvar isWebWorker = (typeof self === 'undefined' ? 'undefined' : _typeof(self)) === 'object' && self.constructor && self.constructor.name === 'DedicatedWorkerGlobalScope';\n/* eslint-enable no-restricted-globals */\n\nvar isNode = typeof process !== 'undefined' && process.versions != null && process.versions.node != null;\n\n/**\n * @see https://github.com/jsdom/jsdom/releases/tag/12.0.0\n * @see https://github.com/jsdom/jsdom/issues/1537\n */\n/* eslint-disable no-undef */\nvar isJsDom = function isJsDom() {\n return typeof window !== 'undefined' && window.name === 'nodejs' || navigator.userAgent.includes('Node.js') || navigator.userAgent.includes('jsdom');\n};\n\nexports.isBrowser = isBrowser;\nexports.isWebWorker = isWebWorker;\nexports.isNode = isNode;\nexports.isJsDom = isJsDom;","var global = typeof self !== 'undefined' ? self : this;\nvar __self__ = (function () {\nfunction F() {\nthis.fetch = false;\nthis.DOMException = global.DOMException\n}\nF.prototype = global;\nreturn new F();\n})();\n(function(self) {\n\nvar irrelevant = (function (exports) {\n\n var support = {\n searchParams: 'URLSearchParams' in self,\n iterable: 'Symbol' in self && 'iterator' in Symbol,\n blob:\n 'FileReader' in self &&\n 'Blob' in self &&\n (function() {\n try {\n new Blob();\n return true\n } catch (e) {\n return false\n }\n })(),\n formData: 'FormData' in self,\n arrayBuffer: 'ArrayBuffer' in self\n };\n\n function isDataView(obj) {\n return obj && DataView.prototype.isPrototypeOf(obj)\n }\n\n if (support.arrayBuffer) {\n var viewClasses = [\n '[object Int8Array]',\n '[object Uint8Array]',\n '[object Uint8ClampedArray]',\n '[object Int16Array]',\n '[object Uint16Array]',\n '[object Int32Array]',\n '[object Uint32Array]',\n '[object Float32Array]',\n '[object Float64Array]'\n ];\n\n var isArrayBufferView =\n ArrayBuffer.isView ||\n function(obj) {\n return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1\n };\n }\n\n function normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name);\n }\n if (/[^a-z0-9\\-#$%&'*+.^_`|~]/i.test(name)) {\n throw new TypeError('Invalid character in header field name')\n }\n return name.toLowerCase()\n }\n\n function normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value);\n }\n return value\n }\n\n // Build a destructive iterator for the value list\n function iteratorFor(items) {\n var iterator = {\n next: function() {\n var value = items.shift();\n return {done: value === undefined, value: value}\n }\n };\n\n if (support.iterable) {\n iterator[Symbol.iterator] = function() {\n return iterator\n };\n }\n\n return iterator\n }\n\n function Headers(headers) {\n this.map = {};\n\n if (headers instanceof Headers) {\n headers.forEach(function(value, name) {\n this.append(name, value);\n }, this);\n } else if (Array.isArray(headers)) {\n headers.forEach(function(header) {\n this.append(header[0], header[1]);\n }, this);\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach(function(name) {\n this.append(name, headers[name]);\n }, this);\n }\n }\n\n Headers.prototype.append = function(name, value) {\n name = normalizeName(name);\n value = normalizeValue(value);\n var oldValue = this.map[name];\n this.map[name] = oldValue ? oldValue + ', ' + value : value;\n };\n\n Headers.prototype['delete'] = function(name) {\n delete this.map[normalizeName(name)];\n };\n\n Headers.prototype.get = function(name) {\n name = normalizeName(name);\n return this.has(name) ? this.map[name] : null\n };\n\n Headers.prototype.has = function(name) {\n return this.map.hasOwnProperty(normalizeName(name))\n };\n\n Headers.prototype.set = function(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value);\n };\n\n Headers.prototype.forEach = function(callback, thisArg) {\n for (var name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n callback.call(thisArg, this.map[name], name, this);\n }\n }\n };\n\n Headers.prototype.keys = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push(name);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.values = function() {\n var items = [];\n this.forEach(function(value) {\n items.push(value);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.entries = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push([name, value]);\n });\n return iteratorFor(items)\n };\n\n if (support.iterable) {\n Headers.prototype[Symbol.iterator] = Headers.prototype.entries;\n }\n\n function consumed(body) {\n if (body.bodyUsed) {\n return Promise.reject(new TypeError('Already read'))\n }\n body.bodyUsed = true;\n }\n\n function fileReaderReady(reader) {\n return new Promise(function(resolve, reject) {\n reader.onload = function() {\n resolve(reader.result);\n };\n reader.onerror = function() {\n reject(reader.error);\n };\n })\n }\n\n function readBlobAsArrayBuffer(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsArrayBuffer(blob);\n return promise\n }\n\n function readBlobAsText(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsText(blob);\n return promise\n }\n\n function readArrayBufferAsText(buf) {\n var view = new Uint8Array(buf);\n var chars = new Array(view.length);\n\n for (var i = 0; i < view.length; i++) {\n chars[i] = String.fromCharCode(view[i]);\n }\n return chars.join('')\n }\n\n function bufferClone(buf) {\n if (buf.slice) {\n return buf.slice(0)\n } else {\n var view = new Uint8Array(buf.byteLength);\n view.set(new Uint8Array(buf));\n return view.buffer\n }\n }\n\n function Body() {\n this.bodyUsed = false;\n\n this._initBody = function(body) {\n this._bodyInit = body;\n if (!body) {\n this._bodyText = '';\n } else if (typeof body === 'string') {\n this._bodyText = body;\n } else if (support.blob && Blob.prototype.isPrototypeOf(body)) {\n this._bodyBlob = body;\n } else if (support.formData && FormData.prototype.isPrototypeOf(body)) {\n this._bodyFormData = body;\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this._bodyText = body.toString();\n } else if (support.arrayBuffer && support.blob && isDataView(body)) {\n this._bodyArrayBuffer = bufferClone(body.buffer);\n // IE 10-11 can't handle a DataView body.\n this._bodyInit = new Blob([this._bodyArrayBuffer]);\n } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) {\n this._bodyArrayBuffer = bufferClone(body);\n } else {\n this._bodyText = body = Object.prototype.toString.call(body);\n }\n\n if (!this.headers.get('content-type')) {\n if (typeof body === 'string') {\n this.headers.set('content-type', 'text/plain;charset=UTF-8');\n } else if (this._bodyBlob && this._bodyBlob.type) {\n this.headers.set('content-type', this._bodyBlob.type);\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n }\n };\n\n if (support.blob) {\n this.blob = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return Promise.resolve(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(new Blob([this._bodyArrayBuffer]))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as blob')\n } else {\n return Promise.resolve(new Blob([this._bodyText]))\n }\n };\n\n this.arrayBuffer = function() {\n if (this._bodyArrayBuffer) {\n return consumed(this) || Promise.resolve(this._bodyArrayBuffer)\n } else {\n return this.blob().then(readBlobAsArrayBuffer)\n }\n };\n }\n\n this.text = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return readBlobAsText(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as text')\n } else {\n return Promise.resolve(this._bodyText)\n }\n };\n\n if (support.formData) {\n this.formData = function() {\n return this.text().then(decode)\n };\n }\n\n this.json = function() {\n return this.text().then(JSON.parse)\n };\n\n return this\n }\n\n // HTTP methods whose capitalization should be normalized\n var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT'];\n\n function normalizeMethod(method) {\n var upcased = method.toUpperCase();\n return methods.indexOf(upcased) > -1 ? upcased : method\n }\n\n function Request(input, options) {\n options = options || {};\n var body = options.body;\n\n if (input instanceof Request) {\n if (input.bodyUsed) {\n throw new TypeError('Already read')\n }\n this.url = input.url;\n this.credentials = input.credentials;\n if (!options.headers) {\n this.headers = new Headers(input.headers);\n }\n this.method = input.method;\n this.mode = input.mode;\n this.signal = input.signal;\n if (!body && input._bodyInit != null) {\n body = input._bodyInit;\n input.bodyUsed = true;\n }\n } else {\n this.url = String(input);\n }\n\n this.credentials = options.credentials || this.credentials || 'same-origin';\n if (options.headers || !this.headers) {\n this.headers = new Headers(options.headers);\n }\n this.method = normalizeMethod(options.method || this.method || 'GET');\n this.mode = options.mode || this.mode || null;\n this.signal = options.signal || this.signal;\n this.referrer = null;\n\n if ((this.method === 'GET' || this.method === 'HEAD') && body) {\n throw new TypeError('Body not allowed for GET or HEAD requests')\n }\n this._initBody(body);\n }\n\n Request.prototype.clone = function() {\n return new Request(this, {body: this._bodyInit})\n };\n\n function decode(body) {\n var form = new FormData();\n body\n .trim()\n .split('&')\n .forEach(function(bytes) {\n if (bytes) {\n var split = bytes.split('=');\n var name = split.shift().replace(/\\+/g, ' ');\n var value = split.join('=').replace(/\\+/g, ' ');\n form.append(decodeURIComponent(name), decodeURIComponent(value));\n }\n });\n return form\n }\n\n function parseHeaders(rawHeaders) {\n var headers = new Headers();\n // Replace instances of \\r\\n and \\n followed by at least one space or horizontal tab with a space\n // https://tools.ietf.org/html/rfc7230#section-3.2\n var preProcessedHeaders = rawHeaders.replace(/\\r?\\n[\\t ]+/g, ' ');\n preProcessedHeaders.split(/\\r?\\n/).forEach(function(line) {\n var parts = line.split(':');\n var key = parts.shift().trim();\n if (key) {\n var value = parts.join(':').trim();\n headers.append(key, value);\n }\n });\n return headers\n }\n\n Body.call(Request.prototype);\n\n function Response(bodyInit, options) {\n if (!options) {\n options = {};\n }\n\n this.type = 'default';\n this.status = options.status === undefined ? 200 : options.status;\n this.ok = this.status >= 200 && this.status < 300;\n this.statusText = 'statusText' in options ? options.statusText : 'OK';\n this.headers = new Headers(options.headers);\n this.url = options.url || '';\n this._initBody(bodyInit);\n }\n\n Body.call(Response.prototype);\n\n Response.prototype.clone = function() {\n return new Response(this._bodyInit, {\n status: this.status,\n statusText: this.statusText,\n headers: new Headers(this.headers),\n url: this.url\n })\n };\n\n Response.error = function() {\n var response = new Response(null, {status: 0, statusText: ''});\n response.type = 'error';\n return response\n };\n\n var redirectStatuses = [301, 302, 303, 307, 308];\n\n Response.redirect = function(url, status) {\n if (redirectStatuses.indexOf(status) === -1) {\n throw new RangeError('Invalid status code')\n }\n\n return new Response(null, {status: status, headers: {location: url}})\n };\n\n exports.DOMException = self.DOMException;\n try {\n new exports.DOMException();\n } catch (err) {\n exports.DOMException = function(message, name) {\n this.message = message;\n this.name = name;\n var error = Error(message);\n this.stack = error.stack;\n };\n exports.DOMException.prototype = Object.create(Error.prototype);\n exports.DOMException.prototype.constructor = exports.DOMException;\n }\n\n function fetch(input, init) {\n return new Promise(function(resolve, reject) {\n var request = new Request(input, init);\n\n if (request.signal && request.signal.aborted) {\n return reject(new exports.DOMException('Aborted', 'AbortError'))\n }\n\n var xhr = new XMLHttpRequest();\n\n function abortXhr() {\n xhr.abort();\n }\n\n xhr.onload = function() {\n var options = {\n status: xhr.status,\n statusText: xhr.statusText,\n headers: parseHeaders(xhr.getAllResponseHeaders() || '')\n };\n options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL');\n var body = 'response' in xhr ? xhr.response : xhr.responseText;\n resolve(new Response(body, options));\n };\n\n xhr.onerror = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.ontimeout = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.onabort = function() {\n reject(new exports.DOMException('Aborted', 'AbortError'));\n };\n\n xhr.open(request.method, request.url, true);\n\n if (request.credentials === 'include') {\n xhr.withCredentials = true;\n } else if (request.credentials === 'omit') {\n xhr.withCredentials = false;\n }\n\n if ('responseType' in xhr && support.blob) {\n xhr.responseType = 'blob';\n }\n\n request.headers.forEach(function(value, name) {\n xhr.setRequestHeader(name, value);\n });\n\n if (request.signal) {\n request.signal.addEventListener('abort', abortXhr);\n\n xhr.onreadystatechange = function() {\n // DONE (success or failure)\n if (xhr.readyState === 4) {\n request.signal.removeEventListener('abort', abortXhr);\n }\n };\n }\n\n xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit);\n })\n }\n\n fetch.polyfill = true;\n\n if (!self.fetch) {\n self.fetch = fetch;\n self.Headers = Headers;\n self.Request = Request;\n self.Response = Response;\n }\n\n exports.Headers = Headers;\n exports.Request = Request;\n exports.Response = Response;\n exports.fetch = fetch;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n return exports;\n\n}({}));\n})(__self__);\n__self__.fetch.ponyfill = true;\n// Remove \"polyfill\" property added by whatwg-fetch\ndelete __self__.fetch.polyfill;\n// Choose between native implementation (global) or custom implementation (__self__)\n// var ctx = global.fetch ? global : __self__;\nvar ctx = __self__; // this line disable service worker support temporarily\nexports = ctx.fetch // To enable: import fetch from 'cross-fetch'\nexports.default = ctx.fetch // For TypeScript consumers without esModuleInterop.\nexports.fetch = ctx.fetch // To enable: import {fetch} from 'cross-fetch'\nexports.Headers = ctx.Headers\nexports.Request = ctx.Request\nexports.Response = ctx.Response\nmodule.exports = exports\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/* LEGACY-BROWSER-SUPPORT-START */\nimport fetch, {Headers} from 'cross-fetch';\nimport {isBrowser} from 'browser-or-node';\n/* LEGACY-BROWSER-SUPPORT-END */\n\nconst VERSION = '2.0.0';\n\ntype QueryParameter = Record>;\n\nexport interface RequestOptions extends RequestInit {\n queryParameters?: QueryParameter;\n retryCount?: number;\n requestTimeout?: number;\n requestTimer?: any;\n retryTimeout?: number;\n timeout?: number;\n}\n\nexport function request(\n url: string | URL,\n options: RequestOptions = {}\n): Promise {\n const {queryParameters, requestTimeout = 30000} = options;\n\n url = new URL(url.toString());\n url = applyParameters(url, queryParameters);\n options = applyTimeout(options, requestTimeout);\n\n return fetch_retry(url.toString(), 3, {\n ...options,\n headers: new Headers({\n 'Content-Type': 'application/json; charset=utf-8',\n /* LEGACY-BROWSER-SUPPORT-START */\n ...userAgentHeader(),\n /* LEGACY-BROWSER-SUPPORT-END */\n ...options.headers,\n }),\n });\n}\n\nfunction fetch_retry(\n url: string,\n retries: number,\n options: RequestOptions\n): Promise {\n return new Promise((resolve, reject) => {\n fetch(url, options)\n .then(response => {\n // We don't want to `reject` when retries have finished\n // Instead simply stop trying and return.\n if (retries === 0) return resolve(response);\n if (response.status === 429) {\n const {retryTimeout = 20000} = options;\n retryTimeoutPromise(retryTimeout).then(() => {\n fetch_retry(url, retries - 1, options)\n .then(resolve)\n .catch(reject);\n });\n } else {\n clearTimeout(options.requestTimer);\n resolve(response);\n }\n })\n .catch(reject);\n });\n}\n\nconst retryTimeoutPromise = (milliseconds: number) => {\n return new Promise(resolve => setTimeout(resolve, milliseconds));\n};\n\nfunction userAgentHeader(): object {\n if (isBrowser) return {};\n\n return {\n 'User-Agent': `pdjs/${VERSION} (${process.version}/${process.platform})`,\n };\n}\n\nfunction applyParameters(url: URL, queryParameters?: QueryParameter): URL {\n if (!queryParameters) return url;\n\n const combinedParameters = url.searchParams;\n\n for (const key of Object.keys(queryParameters)) {\n const parameter = queryParameters[key];\n if (Array.isArray(parameter)) {\n // Support for array based keys like `additional_fields[]`\n parameter.forEach(item => {\n combinedParameters.append(key, item);\n });\n } else {\n combinedParameters.append(key, parameter);\n }\n }\n\n url.search = combinedParameters.toString();\n return url;\n}\n\nfunction applyTimeout(init: RequestOptions, timeout?: number): RequestOptions {\n if (!timeout) return init;\n const timer = setTimeout(() => {}, timeout);\n return {\n ...init,\n requestTimer: timer,\n };\n}\n","import {request, RequestOptions} from './common';\n\nexport interface ShorthandCall {\n (res: string, apiParameters?: Partial): APIPromise;\n}\n\nexport interface PartialCall {\n (apiParameters: APIParameters): APIPromise;\n (apiParameters: Partial): PartialCall;\n get: ShorthandCall;\n post: ShorthandCall;\n put: ShorthandCall;\n patch: ShorthandCall;\n delete: ShorthandCall;\n all: ShorthandCall;\n}\n\nexport type APIParameters = RequestOptions & {\n endpoint?: string;\n url?: string;\n data?: object;\n token?: string;\n tokenType?: string;\n server?: string;\n version?: number;\n} & ({endpoint: string} | {url: string});\n\nexport type APIPromise = Promise;\n\nexport interface APIResponse extends Response {\n data: any;\n resource: any;\n response: Response;\n next?: () => APIPromise;\n}\n\nexport function api(apiParameters: APIParameters): APIPromise;\nexport function api(apiParameters: Partial): PartialCall;\nexport function api(\n apiParameters: Partial\n): APIPromise | PartialCall {\n // If the apiParameters don't include `endpoint` treat it as a partial\n // application.\n if (!apiParameters.endpoint && !apiParameters.url) {\n return partialCall(apiParameters);\n }\n\n // allows for Token and Bearer token types to be used in Authorization\n type typeMap = {\n [key: string]: string;\n };\n\n const types: typeMap = {\n bearer: 'Bearer ',\n token: 'Token token=',\n };\n\n const {\n endpoint,\n server = 'api.pagerduty.com',\n token,\n tokenType = apiParameters.tokenType || 'token',\n url,\n version = 2,\n data,\n ...rest\n } = apiParameters;\n\n const config: RequestOptions = {\n method: 'GET',\n ...rest,\n headers: {\n Accept: `application/vnd.pagerduty+json;version=${version}`,\n Authorization: `${types[tokenType]}${token!}`,\n ...rest.headers,\n },\n };\n\n // Allow `data` for `queryParameters` for requests without bodies.\n if (isReadonlyRequest(config.method!) && data) {\n config.queryParameters =\n config.queryParameters ?? (data as Record);\n } else {\n config.body = JSON.stringify(data);\n }\n\n return apiRequest(\n url ?? `https://${server}/${endpoint!.replace(/^\\/+/, '')}`,\n config\n );\n}\n\nfunction apiRequest(url: string, options: RequestOptions): APIPromise {\n return request(url, options).then(\n (response: Response): APIPromise => {\n const apiResponse = response as APIResponse;\n apiResponse.response = response;\n\n if (response.status === 204) {\n return Promise.resolve(apiResponse);\n }\n\n return response\n .json()\n .then(\n (data): APIResponse => {\n const resource = resourceKey(url, options.method);\n apiResponse.next = nextFunc(url, options, data);\n apiResponse.data = data;\n apiResponse.resource = resource ? data[resource] : null;\n return apiResponse;\n }\n )\n .catch(() => Promise.reject(apiResponse));\n }\n );\n}\n\nfunction resourceKey(url: string, method?: string) {\n const resource = url.match(/.+.com\\/(?[\\w]+)/);\n if (resource) {\n const resourceName = resource[1];\n if (method && method.toLowerCase() === 'get') {\n return resourceName;\n }\n if (resourceName.endsWith('ies')) {\n return resourceName.slice(0, -3) + 'y';\n } else if (resourceName.endsWith('s')) {\n return resourceName.slice(0, -1);\n }\n return resourceName;\n }\n return null;\n}\n\nfunction isReadonlyRequest(method: string) {\n return !['PUT', 'POST', 'DELETE', 'PATCH'].includes(\n method.toUpperCase() ?? 'GET'\n );\n}\n\ninterface OffsetPagination {\n type: 'offset';\n more?: boolean;\n offset?: number;\n limit?: number;\n}\n\ninterface CursorPagination {\n type: 'cursor';\n cursor?: string;\n limit?: number;\n}\n\nfunction isOffsetPagination(\n data: OffsetPagination | CursorPagination\n): data is OffsetPagination {\n if ((data as OffsetPagination).offset !== undefined) {\n return true;\n }\n return false;\n}\n\nfunction isCursorPagination(\n data: OffsetPagination | CursorPagination\n): data is CursorPagination {\n if ((data as CursorPagination).cursor !== undefined) {\n return true;\n }\n return false;\n}\n\nfunction nextFunc(\n url: string,\n options: RequestOptions,\n data: OffsetPagination | CursorPagination\n) {\n if (isOffsetPagination(data)) {\n if (data?.more && typeof data.offset !== undefined && data.limit) {\n return () =>\n apiRequest(url, {\n ...options,\n queryParameters: {\n ...options.queryParameters,\n limit: data.limit!.toString(),\n offset: (data.limit! + data.offset!).toString(),\n },\n });\n }\n } else if (isCursorPagination(data)) {\n if (data?.cursor) {\n return () =>\n apiRequest(url, {\n ...options,\n queryParameters: {\n ...options.queryParameters,\n cursor: data.cursor!,\n limit: data.limit!.toString(),\n },\n });\n }\n }\n\n return undefined;\n}\n\nfunction partialCall(apiParameters: Partial) {\n const partialParameters = apiParameters;\n const partial = ((apiParameters: Partial) =>\n api({...partialParameters, ...apiParameters})) as PartialCall;\n\n const shorthand = (method: string) => (\n endpoint: string,\n shorthandParameters?: Partial\n ): APIPromise =>\n api({\n endpoint,\n method,\n ...partialParameters,\n ...shorthandParameters,\n }) as APIPromise;\n\n partial.get = shorthand('get');\n partial.post = shorthand('post');\n partial.put = shorthand('put');\n partial.patch = shorthand('patch');\n partial.delete = shorthand('delete');\n\n partial.all = (\n endpoint: string,\n shorthandParameters?: Partial\n ): APIPromise => {\n function allInner(responses: APIResponse[]): Promise {\n const response = responses[responses.length - 1];\n if (!response.next) {\n // Base case, resolve and return all responses.\n return Promise.resolve(responses);\n }\n // If there are still more resources to get then concat and repeat.\n return response\n .next()\n .then(response => allInner(responses.concat([response])));\n }\n\n function repackResponses(responses: APIResponse[]): APIPromise {\n // Repack the responses object to make it more user friendly.\n const repackedResponse = responses.shift() as APIResponse; // Use the first response to build the standard response object\n repackedResponse.data = [repackedResponse.data];\n responses.forEach(response => {\n repackedResponse.data = repackedResponse.data.concat(response.data);\n repackedResponse.resource = repackedResponse.resource.concat(\n response.resource\n );\n });\n return Promise.resolve(repackedResponse);\n }\n\n const method = 'get';\n return (api({\n endpoint,\n method,\n ...partialParameters,\n ...shorthandParameters,\n }) as APIPromise)\n .then(response => allInner([response]))\n .then(responses => repackResponses(responses));\n };\n\n return partial;\n}\n","import {request, RequestOptions} from './common';\n\nexport type Action = 'trigger' | 'acknowledge' | 'resolve';\n\nexport type EventPromise = Promise;\n\nexport interface EventResponse extends Response {\n data: any;\n response: Response;\n}\n\nexport type Severity = 'critical' | 'error' | 'warning' | 'info';\n\nexport interface Image {\n src: string;\n href?: string;\n alt?: string;\n}\n\nexport interface Link {\n href: string;\n text?: string;\n}\n\nexport interface EventPayloadV2 {\n routing_key: string;\n event_action: Action;\n dedup_key?: string;\n payload: {\n summary: string;\n source: string;\n severity: Severity;\n timestamp?: string;\n component?: string;\n group?: string;\n class?: string;\n custom_details?: object;\n };\n images?: Array;\n links?: Array;\n}\n\nexport interface EventParameters extends RequestOptions {\n data: EventPayloadV2;\n type?: string;\n server?: string;\n}\n\nexport interface ChangePayload {\n routing_key: string;\n payload: {\n summary: string;\n source?: string;\n timestamp: string;\n custom_details: object;\n };\n links: Array;\n}\nexport interface ChangeParameters extends RequestOptions {\n data: ChangePayload;\n server?: string;\n}\n\nexport function event(eventParameters: EventParameters): EventPromise {\n const {\n server = 'events.pagerduty.com',\n type = 'event',\n data,\n ...config\n } = eventParameters;\n\n let url = `https://${server}/v2/enqueue`;\n if (type === 'change') {\n url = `https://${server}/v2/change/enqueue`;\n }\n\n return eventFetch(url, {\n method: 'POST',\n body: JSON.stringify(data),\n ...config,\n });\n}\n\nconst shorthand = (action: Action) => (\n eventParameters: EventParameters\n): EventPromise => {\n const typeField = 'event_action';\n\n return event({\n ...eventParameters,\n data: {\n ...eventParameters.data,\n [typeField]: action,\n },\n });\n};\n\nexport const trigger = shorthand('trigger');\nexport const acknowledge = shorthand('acknowledge');\nexport const resolve = shorthand('resolve');\nexport const change = (eventParameters: EventParameters) =>\n event({...eventParameters, type: 'change'});\n\nfunction eventFetch(url: string, options: RequestOptions): EventPromise {\n return request(url, options).then(\n (response: Response): EventPromise => {\n const apiResponse = response as EventResponse;\n return response.json().then(\n (data): EventResponse => {\n apiResponse.data = data;\n apiResponse.response = response;\n return apiResponse;\n }\n );\n }\n );\n}\n"],"names":["_typeof","Symbol","iterator","obj","constructor","prototype","isBrowser","window","document","self","name","process","versions","node","exports","global","this","__self__","F","fetch","DOMException","support","Blob","e","viewClasses","isArrayBufferView","ArrayBuffer","isView","indexOf","Object","toString","call","normalizeName","String","test","TypeError","toLowerCase","normalizeValue","value","iteratorFor","items","next","shift","done","undefined","Headers","headers","map","forEach","append","Array","isArray","header","getOwnPropertyNames","consumed","body","bodyUsed","Promise","reject","fileReaderReady","reader","resolve","onload","result","onerror","error","readBlobAsArrayBuffer","blob","FileReader","promise","readAsArrayBuffer","bufferClone","buf","slice","view","Uint8Array","byteLength","set","buffer","Body","_initBody","_bodyInit","_bodyText","isPrototypeOf","_bodyBlob","FormData","_bodyFormData","URLSearchParams","DataView","_bodyArrayBuffer","get","type","rejected","Error","arrayBuffer","then","text","readAsText","chars","length","i","fromCharCode","join","readArrayBufferAsText","formData","decode","json","JSON","parse","oldValue","has","hasOwnProperty","callback","thisArg","keys","push","values","entries","methods","Request","input","options","method","upcased","url","credentials","mode","signal","toUpperCase","referrer","form","trim","split","bytes","replace","decodeURIComponent","Response","bodyInit","status","ok","statusText","clone","response","redirectStatuses","redirect","RangeError","location","err","message","stack","create","init","request","aborted","xhr","XMLHttpRequest","abortXhr","abort","rawHeaders","getAllResponseHeaders","line","parts","key","responseURL","responseText","ontimeout","onabort","open","withCredentials","responseType","setRequestHeader","addEventListener","onreadystatechange","readyState","removeEventListener","send","polyfill","defineProperty","ponyfill","ctx","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","n","getter","__esModule","d","a","definition","o","enumerable","prop","r","toStringTag","queryParameters","requestTimeout","applyParameters","URL","applyTimeout","fetch_retry","userAgentHeader","retries","retryTimeout","retryTimeoutPromise","clearTimeout","requestTimer","milliseconds","setTimeout","version","platform","combinedParameters","searchParams","parameter","item","search","timeout","timer","api","apiParameters","endpoint","partialParameters","partial","shorthand","shorthandParameters","post","put","patch","all","allInner","responses","concat","repackedResponse","data","resource","repackResponses","partialCall","server","token","tokenType","rest","config","Accept","Authorization","bearer","includes","stringify","apiRequest","apiResponse","match","resourceName","endsWith","resourceKey","offset","isOffsetPagination","more","limit","cursor","isCursorPagination","nextFunc","event","eventParameters","eventFetch","action","trigger","acknowledge","change"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/pdjs.js b/dist/pdjs.js index 0e375e1..f7310e8 100644 --- a/dist/pdjs.js +++ b/dist/pdjs.js @@ -1,2 +1,2 @@ -var PagerDuty;(()=>{"use strict";var e={d:(t,r)=>{for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};function r(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function n(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function c(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t,o=r.queryParameters,c=r.requestTimeout,a=void 0===c?3e4:c,p=u(r,["queryParameters","requestTimeout"]);return e=f(e=new URL(e.toString()),o),t=l(t,a),i(e.toString(),3,n(n({},p),{},{headers:new Headers(n({"Content-Type":"application/json; charset=utf-8"},p.headers))}))}function i(e,t,r){return new Promise((function(n,o){fetch(e,r).then((function(u){if(0===t)return n(u);if(429===u.status){var c=r.retryTimeout;a(void 0===c?2e4:c).then((function(){i(e,t-1,r).then(n).catch(o)}))}else n(u)})).catch(o)}))}e.r(t),e.d(t,{acknowledge:()=>q,api:()=>P,change:()=>R,event:()=>E,resolve:()=>_,trigger:()=>D});var a=function(e){return new Promise((function(t){return setTimeout(t,e)}))};function f(e,t){if(!t)return e;for(var r=e.searchParams,n=function(){var e=u[o],n=t[e];Array.isArray(n)?n.forEach((function(t){r.append(e,t)})):r.append(e,n)},o=0,u=Object.keys(t);o]+)>/g,(function(e,t){return"$"+r[t]})))}if("function"==typeof t){var u=this;return n[Symbol.replace].call(this,e,(function(){var e=[];return e.push.apply(e,arguments),"object"!==p(e[e.length-1])&&e.push(c(e,u)),t.apply(this,e)}))}return n[Symbol.replace].call(this,e,t)},s.apply(this,arguments)}function y(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&d(e,t)}function b(e){var t="function"==typeof Map?new Map:void 0;return(b=function(e){if(null===e||(r=e,-1===Function.toString.call(r).indexOf("[native code]")))return e;var r;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return O(e,arguments,g(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),d(n,e)})(e)}function O(e,t,r){return(O=v()?Reflect.construct:function(e,t,r){var n=[null];n.push.apply(n,t);var o=new(Function.bind.apply(e,n));return r&&d(o,r.prototype),o}).apply(null,arguments)}function v(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function d(e,t){return(d=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function g(e){return(g=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function h(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function m(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["endpoint","server","token","tokenType","url","version","data"]),O=m(m({method:"GET"},b),{},{headers:m({Accept:"application/vnd.pagerduty+json;version=".concat(s),Authorization:"".concat({bearer:"Bearer ",token:"Token token="}[f]).concat(i)},b.headers)});return r=O.method,!["PUT","POST","DELETE","PATCH"].includes(null!==(n=r.toUpperCase())&&void 0!==n?n:"GET")&&y?O.queryParameters=null!==(t=O.queryParameters)&&void 0!==t?t:y:O.body=JSON.stringify(y),w(null!=l?l:"https://".concat(c,"/").concat(o.replace(/^\/+/,"")),O)}function w(e,t){return c(e,t).then((function(r){var n=r;return n.response=r,204===r.status?Promise.resolve(n):r.json().then((function(r){var o=function(e){var t=e.match(s(/.+.com\/([0-9A-Z_a-z]+)/,{resource:1}));return t?t[1]:null}(e);return n.next=function(e,t,r){if(function(e){return void 0!==e.offset}(r)){if(null!=r&&r.more&&void 0!==p(r.offset)&&r.limit)return function(){return w(e,m(m({},t),{},{queryParameters:m(m({},t.queryParameters),{},{limit:r.limit.toString(),offset:(r.limit+r.offset).toString()})}))}}else if(function(e){return void 0!==e.cursor}(r)&&null!=r&&r.cursor)return function(){return w(e,m(m({},t),{},{queryParameters:m(m({},t.queryParameters),{},{cursor:r.cursor,limit:r.limit.toString()})}))}}(e,t,r),n.data=r,n.resource=o?r[o]:null,n})).catch((function(){return Promise.reject(n)}))}))}function S(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function T(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["server","type","data"]),a="https://".concat(r,"/v2/enqueue");return"change"===o&&(a="https://".concat(r,"/v2/change/enqueue")),function(e,t){return c(e,t).then((function(e){var t=e;return e.json().then((function(r){return t.data=r,t.response=e,t}))}))}(a,T({method:"POST",body:JSON.stringify(u)},i))}var x=function(e){return function(t){return E(T(T({},t),{},{data:T(T({},t.data),{},k({},"event_action",e))}))}},D=x("trigger"),q=x("acknowledge"),_=x("resolve"),R=function(e){return E(T(T({},e),{},{type:"change"}))};PagerDuty=t})(); +var PagerDuty;(()=>{"use strict";var e={d:(t,r)=>{for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};function r(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function n(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{},r=t,o=r.queryParameters,u=r.requestTimeout,i=void 0===u?3e4:u;return e=a(e=new URL(e.toString()),o),t=f(t,i),c(e.toString(),3,n(n({},t),{},{headers:new Headers(n({"Content-Type":"application/json; charset=utf-8"},t.headers))}))}function c(e,t,r){return new Promise((function(n,o){fetch(e,r).then((function(u){if(0===t)return n(u);if(429===u.status){var a=r.retryTimeout;i(void 0===a?2e4:a).then((function(){c(e,t-1,r).then(n).catch(o)}))}else clearTimeout(r.requestTimer),n(u)})).catch(o)}))}e.r(t),e.d(t,{acknowledge:()=>E,api:()=>g,change:()=>x,event:()=>S,resolve:()=>D,trigger:()=>k});var i=function(e){return new Promise((function(t){return setTimeout(t,e)}))};function a(e,t){if(!t)return e;for(var r=e.searchParams,n=function(){var e=u[o],n=t[e];Array.isArray(n)?n.forEach((function(t){r.append(e,t)})):r.append(e,n)},o=0,u=Object.keys(t);o]+)>/g,(function(e,t){return"$"+u[t]})))}if("function"==typeof o){var c=this;return e[Symbol.replace].call(this,r,(function(){var e=arguments;return"object"!==l(e[e.length-1])&&(e=[].slice.call(e)).push(n(e,c)),o.apply(this,e)}))}return e[Symbol.replace].call(this,r,o)},p.apply(this,arguments)}function y(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&b(e,t)}function b(e,t){return b=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},b(e,t)}function v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function O(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,s),d=O(O({method:"GET"},v),{},{headers:O({Accept:"application/vnd.pagerduty+json;version=".concat(y),Authorization:"".concat({bearer:"Bearer ",token:"Token token="}[f]).concat(i)},v.headers)});return r=d.method,!["PUT","POST","DELETE","PATCH"].includes(null!==(n=r.toUpperCase())&&void 0!==n?n:"GET")&&b?d.queryParameters=null!==(t=d.queryParameters)&&void 0!==t?t:b:d.body=JSON.stringify(b),h(null!=l?l:"https://".concat(c,"/").concat(o.replace(/^\/+/,"")),d)}function h(e,t){return u(e,t).then((function(r){var n=r;return n.response=r,204===r.status?Promise.resolve(n):r.json().then((function(r){var o=function(e,t){var r=e.match(p(/.+.com\/([0-9A-Z_a-z]+)/,{resource:1}));if(r){var n=r[1];return t&&"get"===t.toLowerCase()?n:n.endsWith("ies")?n.slice(0,-3)+"y":n.endsWith("s")?n.slice(0,-1):n}return null}(e,t.method);return n.next=function(e,t,r){if(function(e){return void 0!==e.offset}(r)){if(null!=r&&r.more&&void 0!==l(r.offset)&&r.limit)return function(){return h(e,O(O({},t),{},{queryParameters:O(O({},t.queryParameters),{},{limit:r.limit.toString(),offset:(r.limit+r.offset).toString()})}))}}else if(function(e){return void 0!==e.cursor}(r)&&null!=r&&r.cursor)return function(){return h(e,O(O({},t),{},{queryParameters:O(O({},t.queryParameters),{},{cursor:r.cursor,limit:r.limit.toString()})}))}}(e,t,r),n.data=r,n.resource=o?r[o]:null,n})).catch((function(){return Promise.reject(n)}))}))}var m=["server","type","data"];function j(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function P(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,m),a="https://".concat(r,"/v2/enqueue");return"change"===o&&(a="https://".concat(r,"/v2/change/enqueue")),function(e,t){return u(e,t).then((function(e){var t=e;return e.json().then((function(r){return t.data=r,t.response=e,t}))}))}(a,P({method:"POST",body:JSON.stringify(c)},i))}var T=function(e){return function(t){return S(P(P({},t),{},{data:P(P({},t.data),{},w({},"event_action",e))}))}},k=T("trigger"),E=T("acknowledge"),D=T("resolve"),x=function(e){return S(P(P({},e),{},{type:"change"}))};PagerDuty=t})(); //# sourceMappingURL=pdjs.js.map \ No newline at end of file diff --git a/dist/pdjs.js.map b/dist/pdjs.js.map index c4e91da..05fffae 100644 --- a/dist/pdjs.js.map +++ b/dist/pdjs.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack://PagerDuty/webpack/bootstrap","webpack://PagerDuty/webpack/runtime/define property getters","webpack://PagerDuty/webpack/runtime/hasOwnProperty shorthand","webpack://PagerDuty/webpack/runtime/make namespace object","webpack://PagerDuty/./src/common.ts","webpack://PagerDuty/./src/api.ts","webpack://PagerDuty/./src/events.ts"],"names":["__webpack_require__","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","request","url","options","queryParameters","requestTimeout","rest","applyParameters","URL","toString","applyTimeout","fetch_retry","headers","Headers","retries","Promise","resolve","reject","fetch","then","response","status","retryTimeout","retryTimeoutPromise","milliseconds","setTimeout","combinedParameters","searchParams","parameter","Array","isArray","forEach","item","append","keys","search","init","timeout","controller","AbortController","abort","signal","api","apiParameters","endpoint","partialParameters","partial","shorthand","method","shorthandParameters","post","put","patch","all","allInner","responses","length","next","concat","repackedResponse","shift","data","resource","repackResponses","partialCall","server","token","tokenType","version","config","Accept","Authorization","bearer","includes","toUpperCase","body","JSON","stringify","apiRequest","replace","apiResponse","json","match","resourceKey","undefined","offset","isOffsetPagination","more","limit","cursor","isCursorPagination","nextFunc","event","eventParameters","type","eventFetch","action","trigger","acknowledge","change"],"mappings":"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","file":"pdjs.js","sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/* webpack-strip-block:removed */\n\nconst VERSION = '2.0.0';\n\ntype QueryParameter = Record>;\n\nexport interface RequestOptions extends RequestInit {\n queryParameters?: QueryParameter;\n retryCount?: number;\n requestTimeout?: number;\n retryTimeout?: number;\n timeout?: number;\n}\n\nexport function request(\n url: string | URL,\n options: RequestOptions = {}\n): Promise {\n const {queryParameters, requestTimeout = 30000, ...rest} = options;\n\n url = new URL(url.toString());\n\n url = applyParameters(url, queryParameters);\n options = applyTimeout(options, requestTimeout);\n\n return fetch_retry(url.toString(), 3, {\n ...rest,\n headers: new Headers({\n 'Content-Type': 'application/json; charset=utf-8',\n /* webpack-strip-block:removed */\n ...rest.headers,\n }),\n });\n}\n\nfunction fetch_retry(\n url: string,\n retries: number,\n options: RequestOptions\n): Promise {\n return new Promise((resolve, reject) => {\n fetch(url, options)\n .then(response => {\n // We don't want to `reject` when retries have finished\n // Instead simply stop trying and return.\n if (retries === 0) return resolve(response);\n if (response.status === 429) {\n const {retryTimeout = 20000} = options;\n retryTimeoutPromise(retryTimeout).then(() => {\n fetch_retry(url, retries - 1, options)\n .then(resolve)\n .catch(reject);\n });\n } else {\n resolve(response);\n }\n })\n .catch(reject);\n });\n}\n\nconst retryTimeoutPromise = (milliseconds: number) => {\n return new Promise(resolve => setTimeout(resolve, milliseconds));\n};\n\nfunction userAgentHeader(): object {\n if (isBrowser) return {};\n\n return {\n 'User-Agent': `pdjs/${VERSION} (${process.version}/${process.platform})`,\n };\n}\n\nfunction applyParameters(url: URL, queryParameters?: QueryParameter): URL {\n if (!queryParameters) return url;\n\n const combinedParameters = url.searchParams;\n\n for (const key of Object.keys(queryParameters)) {\n const parameter = queryParameters[key];\n if (Array.isArray(parameter)) {\n // Support for array based keys like `additional_fields[]`\n parameter.forEach(item => {\n combinedParameters.append(key, item);\n });\n } else {\n combinedParameters.append(key, parameter);\n }\n }\n\n url.search = combinedParameters.toString();\n return url;\n}\n\nfunction applyTimeout(init: RequestOptions, timeout?: number): RequestOptions {\n if (!timeout) return init;\n\n const controller = new AbortController();\n setTimeout(() => controller.abort(), timeout);\n\n return {\n ...init,\n signal: controller.signal,\n };\n}\n","import {request, RequestOptions} from './common';\n\nexport interface ShorthandCall {\n (res: string, apiParameters?: Partial): APIPromise;\n}\n\nexport interface PartialCall {\n (apiParameters: APIParameters): APIPromise;\n (apiParameters: Partial): PartialCall;\n get: ShorthandCall;\n post: ShorthandCall;\n put: ShorthandCall;\n patch: ShorthandCall;\n delete: ShorthandCall;\n all: ShorthandCall;\n}\n\nexport type APIParameters = RequestOptions & {\n endpoint?: string;\n url?: string;\n data?: object;\n token?: string;\n tokenType?: string;\n server?: string;\n version?: number;\n} & ({endpoint: string} | {url: string});\n\nexport type APIPromise = Promise;\n\nexport interface APIResponse extends Response {\n data: any;\n resource: any;\n response: Response;\n next?: () => APIPromise;\n}\n\nexport function api(apiParameters: APIParameters): APIPromise;\nexport function api(apiParameters: Partial): PartialCall;\nexport function api(\n apiParameters: Partial\n): APIPromise | PartialCall {\n // If the apiParameters don't include `endpoint` treat it as a partial\n // application.\n if (!apiParameters.endpoint && !apiParameters.url) {\n return partialCall(apiParameters);\n }\n\n // allows for Token and Bearer token types to be used in Authorization\n type typeMap = {\n [key: string]: string;\n };\n\n const types: typeMap = {\n bearer: 'Bearer ',\n token: 'Token token=',\n };\n\n const {\n endpoint,\n server = 'api.pagerduty.com',\n token,\n tokenType = apiParameters.tokenType || 'token',\n url,\n version = 2,\n data,\n ...rest\n } = apiParameters;\n\n const config: RequestOptions = {\n method: 'GET',\n ...rest,\n headers: {\n Accept: `application/vnd.pagerduty+json;version=${version}`,\n Authorization: `${types[tokenType]}${token!}`,\n ...rest.headers,\n },\n };\n\n // Allow `data` for `queryParameters` for requests without bodies.\n if (isReadonlyRequest(config.method!) && data) {\n config.queryParameters =\n config.queryParameters ?? (data as Record);\n } else {\n config.body = JSON.stringify(data);\n }\n\n return apiRequest(\n url ?? `https://${server}/${endpoint!.replace(/^\\/+/, '')}`,\n config\n );\n}\n\nfunction apiRequest(url: string, options: RequestOptions): APIPromise {\n return request(url, options).then(\n (response: Response): APIPromise => {\n const apiResponse = response as APIResponse;\n apiResponse.response = response;\n\n if (response.status === 204) {\n return Promise.resolve(apiResponse);\n }\n\n return response\n .json()\n .then(\n (data): APIResponse => {\n const resource = resourceKey(url);\n apiResponse.next = nextFunc(url, options, data);\n apiResponse.data = data;\n apiResponse.resource = resource ? data[resource] : null;\n return apiResponse;\n }\n )\n .catch(() => Promise.reject(apiResponse));\n }\n );\n}\n\nfunction resourceKey(url: string) {\n const resource = url.match(/.+.com\\/(?[\\w]+)/);\n if (resource) {\n return resource[1];\n }\n return null;\n}\n\nfunction isReadonlyRequest(method: string) {\n return !['PUT', 'POST', 'DELETE', 'PATCH'].includes(\n method.toUpperCase() ?? 'GET'\n );\n}\n\ninterface OffsetPagination {\n type: 'offset';\n more?: boolean;\n offset?: number;\n limit?: number;\n}\n\ninterface CursorPagination {\n type: 'cursor';\n cursor?: string;\n limit?: number;\n}\n\nfunction isOffsetPagination(\n data: OffsetPagination | CursorPagination\n): data is OffsetPagination {\n if ((data as OffsetPagination).offset !== undefined) {\n return true;\n }\n return false;\n}\n\nfunction isCursorPagination(\n data: OffsetPagination | CursorPagination\n): data is CursorPagination {\n if ((data as CursorPagination).cursor !== undefined) {\n return true;\n }\n return false;\n}\n\nfunction nextFunc(\n url: string,\n options: RequestOptions,\n data: OffsetPagination | CursorPagination\n) {\n if (isOffsetPagination(data)) {\n if (data?.more && typeof data.offset !== undefined && data.limit) {\n return () =>\n apiRequest(url, {\n ...options,\n queryParameters: {\n ...options.queryParameters,\n limit: data.limit!.toString(),\n offset: (data.limit! + data.offset!).toString(),\n },\n });\n }\n } else if (isCursorPagination(data)) {\n if (data?.cursor) {\n return () =>\n apiRequest(url, {\n ...options,\n queryParameters: {\n ...options.queryParameters,\n cursor: data.cursor!,\n limit: data.limit!.toString(),\n },\n });\n }\n }\n\n return undefined;\n}\n\nfunction partialCall(apiParameters: Partial) {\n const partialParameters = apiParameters;\n const partial = ((apiParameters: Partial) =>\n api({...partialParameters, ...apiParameters})) as PartialCall;\n\n const shorthand = (method: string) => (\n endpoint: string,\n shorthandParameters?: Partial\n ): APIPromise =>\n api({\n endpoint,\n method,\n ...partialParameters,\n ...shorthandParameters,\n }) as APIPromise;\n\n partial.get = shorthand('get');\n partial.post = shorthand('post');\n partial.put = shorthand('put');\n partial.patch = shorthand('patch');\n partial.delete = shorthand('delete');\n\n partial.all = (\n endpoint: string,\n shorthandParameters?: Partial\n ): APIPromise => {\n function allInner(responses: APIResponse[]): Promise {\n const response = responses[responses.length - 1];\n if (!response.next) {\n // Base case, resolve and return all responses.\n return Promise.resolve(responses);\n }\n // If there are still more resources to get then concat and repeat.\n return response\n .next()\n .then(response => allInner(responses.concat([response])));\n }\n\n function repackResponses(responses: APIResponse[]): APIPromise {\n // Repack the responses object to make it more user friendly.\n const repackedResponse = responses.shift() as APIResponse; // Use the first response to build the standard response object\n repackedResponse.data = [repackedResponse.data];\n responses.forEach(response => {\n repackedResponse.data = repackedResponse.data.concat(response.data);\n repackedResponse.resource = repackedResponse.resource.concat(\n response.resource\n );\n });\n return Promise.resolve(repackedResponse);\n }\n\n const method = 'get';\n return (api({\n endpoint,\n method,\n ...partialParameters,\n ...shorthandParameters,\n }) as APIPromise)\n .then(response => allInner([response]))\n .then(responses => repackResponses(responses));\n };\n\n return partial;\n}\n","import {request, RequestOptions} from './common';\n\nexport type Action = 'trigger' | 'acknowledge' | 'resolve';\n\nexport type EventPromise = Promise;\n\nexport interface EventResponse extends Response {\n data: any;\n response: Response;\n}\n\nexport type Severity = 'critical' | 'error' | 'warning' | 'info';\n\nexport interface Image {\n src: string;\n href?: string;\n alt?: string;\n}\n\nexport interface Link {\n href: string;\n text?: string;\n}\n\nexport interface EventPayloadV2 {\n routing_key: string;\n event_action: Action;\n dedup_key?: string;\n payload: {\n summary: string;\n source: string;\n severity: Severity;\n timestamp?: string;\n component?: string;\n group?: string;\n class?: string;\n custom_details?: object;\n };\n images?: Array;\n links?: Array;\n}\n\nexport interface EventParameters extends RequestOptions {\n data: EventPayloadV2;\n type?: string;\n server?: string;\n}\n\nexport interface ChangePayload {\n routing_key: string;\n payload: {\n summary: string;\n source?: string;\n timestamp: string;\n custom_details: object;\n };\n links: Array;\n}\nexport interface ChangeParameters extends RequestOptions {\n data: ChangePayload;\n server?: string;\n}\n\nexport function event(eventParameters: EventParameters): EventPromise {\n const {\n server = 'events.pagerduty.com',\n type = 'event',\n data,\n ...config\n } = eventParameters;\n\n let url = `https://${server}/v2/enqueue`;\n if (type === 'change') {\n url = `https://${server}/v2/change/enqueue`;\n }\n\n return eventFetch(url, {\n method: 'POST',\n body: JSON.stringify(data),\n ...config,\n });\n}\n\nconst shorthand = (action: Action) => (\n eventParameters: EventParameters\n): EventPromise => {\n const typeField = 'event_action';\n\n return event({\n ...eventParameters,\n data: {\n ...eventParameters.data,\n [typeField]: action,\n },\n });\n};\n\nexport const trigger = shorthand('trigger');\nexport const acknowledge = shorthand('acknowledge');\nexport const resolve = shorthand('resolve');\nexport const change = (eventParameters: EventParameters) =>\n event({...eventParameters, type: 'change'});\n\nfunction eventFetch(url: string, options: RequestOptions): EventPromise {\n return request(url, options).then(\n (response: Response): EventPromise => {\n const apiResponse = response as EventResponse;\n return response.json().then(\n (data): EventResponse => {\n apiResponse.data = data;\n apiResponse.response = response;\n return apiResponse;\n }\n );\n }\n );\n}\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"pdjs.js","mappings":"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","sources":["webpack://PagerDuty/webpack/bootstrap","webpack://PagerDuty/webpack/runtime/define property getters","webpack://PagerDuty/webpack/runtime/hasOwnProperty shorthand","webpack://PagerDuty/webpack/runtime/make namespace object","webpack://PagerDuty/./src/common.ts","webpack://PagerDuty/./src/api.ts","webpack://PagerDuty/./src/events.ts"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/* webpack-strip-block:removed */\n\nconst VERSION = '2.0.0';\n\ntype QueryParameter = Record>;\n\nexport interface RequestOptions extends RequestInit {\n queryParameters?: QueryParameter;\n retryCount?: number;\n requestTimeout?: number;\n requestTimer?: any;\n retryTimeout?: number;\n timeout?: number;\n}\n\nexport function request(\n url: string | URL,\n options: RequestOptions = {}\n): Promise {\n const {queryParameters, requestTimeout = 30000} = options;\n\n url = new URL(url.toString());\n url = applyParameters(url, queryParameters);\n options = applyTimeout(options, requestTimeout);\n\n return fetch_retry(url.toString(), 3, {\n ...options,\n headers: new Headers({\n 'Content-Type': 'application/json; charset=utf-8',\n /* webpack-strip-block:removed */\n ...options.headers,\n }),\n });\n}\n\nfunction fetch_retry(\n url: string,\n retries: number,\n options: RequestOptions\n): Promise {\n return new Promise((resolve, reject) => {\n fetch(url, options)\n .then(response => {\n // We don't want to `reject` when retries have finished\n // Instead simply stop trying and return.\n if (retries === 0) return resolve(response);\n if (response.status === 429) {\n const {retryTimeout = 20000} = options;\n retryTimeoutPromise(retryTimeout).then(() => {\n fetch_retry(url, retries - 1, options)\n .then(resolve)\n .catch(reject);\n });\n } else {\n clearTimeout(options.requestTimer);\n resolve(response);\n }\n })\n .catch(reject);\n });\n}\n\nconst retryTimeoutPromise = (milliseconds: number) => {\n return new Promise(resolve => setTimeout(resolve, milliseconds));\n};\n\nfunction userAgentHeader(): object {\n if (isBrowser) return {};\n\n return {\n 'User-Agent': `pdjs/${VERSION} (${process.version}/${process.platform})`,\n };\n}\n\nfunction applyParameters(url: URL, queryParameters?: QueryParameter): URL {\n if (!queryParameters) return url;\n\n const combinedParameters = url.searchParams;\n\n for (const key of Object.keys(queryParameters)) {\n const parameter = queryParameters[key];\n if (Array.isArray(parameter)) {\n // Support for array based keys like `additional_fields[]`\n parameter.forEach(item => {\n combinedParameters.append(key, item);\n });\n } else {\n combinedParameters.append(key, parameter);\n }\n }\n\n url.search = combinedParameters.toString();\n return url;\n}\n\nfunction applyTimeout(init: RequestOptions, timeout?: number): RequestOptions {\n if (!timeout) return init;\n const timer = setTimeout(() => {}, timeout);\n return {\n ...init,\n requestTimer: timer,\n };\n}\n","import {request, RequestOptions} from './common';\n\nexport interface ShorthandCall {\n (res: string, apiParameters?: Partial): APIPromise;\n}\n\nexport interface PartialCall {\n (apiParameters: APIParameters): APIPromise;\n (apiParameters: Partial): PartialCall;\n get: ShorthandCall;\n post: ShorthandCall;\n put: ShorthandCall;\n patch: ShorthandCall;\n delete: ShorthandCall;\n all: ShorthandCall;\n}\n\nexport type APIParameters = RequestOptions & {\n endpoint?: string;\n url?: string;\n data?: object;\n token?: string;\n tokenType?: string;\n server?: string;\n version?: number;\n} & ({endpoint: string} | {url: string});\n\nexport type APIPromise = Promise;\n\nexport interface APIResponse extends Response {\n data: any;\n resource: any;\n response: Response;\n next?: () => APIPromise;\n}\n\nexport function api(apiParameters: APIParameters): APIPromise;\nexport function api(apiParameters: Partial): PartialCall;\nexport function api(\n apiParameters: Partial\n): APIPromise | PartialCall {\n // If the apiParameters don't include `endpoint` treat it as a partial\n // application.\n if (!apiParameters.endpoint && !apiParameters.url) {\n return partialCall(apiParameters);\n }\n\n // allows for Token and Bearer token types to be used in Authorization\n type typeMap = {\n [key: string]: string;\n };\n\n const types: typeMap = {\n bearer: 'Bearer ',\n token: 'Token token=',\n };\n\n const {\n endpoint,\n server = 'api.pagerduty.com',\n token,\n tokenType = apiParameters.tokenType || 'token',\n url,\n version = 2,\n data,\n ...rest\n } = apiParameters;\n\n const config: RequestOptions = {\n method: 'GET',\n ...rest,\n headers: {\n Accept: `application/vnd.pagerduty+json;version=${version}`,\n Authorization: `${types[tokenType]}${token!}`,\n ...rest.headers,\n },\n };\n\n // Allow `data` for `queryParameters` for requests without bodies.\n if (isReadonlyRequest(config.method!) && data) {\n config.queryParameters =\n config.queryParameters ?? (data as Record);\n } else {\n config.body = JSON.stringify(data);\n }\n\n return apiRequest(\n url ?? `https://${server}/${endpoint!.replace(/^\\/+/, '')}`,\n config\n );\n}\n\nfunction apiRequest(url: string, options: RequestOptions): APIPromise {\n return request(url, options).then(\n (response: Response): APIPromise => {\n const apiResponse = response as APIResponse;\n apiResponse.response = response;\n\n if (response.status === 204) {\n return Promise.resolve(apiResponse);\n }\n\n return response\n .json()\n .then(\n (data): APIResponse => {\n const resource = resourceKey(url, options.method);\n apiResponse.next = nextFunc(url, options, data);\n apiResponse.data = data;\n apiResponse.resource = resource ? data[resource] : null;\n return apiResponse;\n }\n )\n .catch(() => Promise.reject(apiResponse));\n }\n );\n}\n\nfunction resourceKey(url: string, method?: string) {\n const resource = url.match(/.+.com\\/(?[\\w]+)/);\n if (resource) {\n const resourceName = resource[1];\n if (method && method.toLowerCase() === 'get') {\n return resourceName;\n }\n if (resourceName.endsWith('ies')) {\n return resourceName.slice(0, -3) + 'y';\n } else if (resourceName.endsWith('s')) {\n return resourceName.slice(0, -1);\n }\n return resourceName;\n }\n return null;\n}\n\nfunction isReadonlyRequest(method: string) {\n return !['PUT', 'POST', 'DELETE', 'PATCH'].includes(\n method.toUpperCase() ?? 'GET'\n );\n}\n\ninterface OffsetPagination {\n type: 'offset';\n more?: boolean;\n offset?: number;\n limit?: number;\n}\n\ninterface CursorPagination {\n type: 'cursor';\n cursor?: string;\n limit?: number;\n}\n\nfunction isOffsetPagination(\n data: OffsetPagination | CursorPagination\n): data is OffsetPagination {\n if ((data as OffsetPagination).offset !== undefined) {\n return true;\n }\n return false;\n}\n\nfunction isCursorPagination(\n data: OffsetPagination | CursorPagination\n): data is CursorPagination {\n if ((data as CursorPagination).cursor !== undefined) {\n return true;\n }\n return false;\n}\n\nfunction nextFunc(\n url: string,\n options: RequestOptions,\n data: OffsetPagination | CursorPagination\n) {\n if (isOffsetPagination(data)) {\n if (data?.more && typeof data.offset !== undefined && data.limit) {\n return () =>\n apiRequest(url, {\n ...options,\n queryParameters: {\n ...options.queryParameters,\n limit: data.limit!.toString(),\n offset: (data.limit! + data.offset!).toString(),\n },\n });\n }\n } else if (isCursorPagination(data)) {\n if (data?.cursor) {\n return () =>\n apiRequest(url, {\n ...options,\n queryParameters: {\n ...options.queryParameters,\n cursor: data.cursor!,\n limit: data.limit!.toString(),\n },\n });\n }\n }\n\n return undefined;\n}\n\nfunction partialCall(apiParameters: Partial) {\n const partialParameters = apiParameters;\n const partial = ((apiParameters: Partial) =>\n api({...partialParameters, ...apiParameters})) as PartialCall;\n\n const shorthand = (method: string) => (\n endpoint: string,\n shorthandParameters?: Partial\n ): APIPromise =>\n api({\n endpoint,\n method,\n ...partialParameters,\n ...shorthandParameters,\n }) as APIPromise;\n\n partial.get = shorthand('get');\n partial.post = shorthand('post');\n partial.put = shorthand('put');\n partial.patch = shorthand('patch');\n partial.delete = shorthand('delete');\n\n partial.all = (\n endpoint: string,\n shorthandParameters?: Partial\n ): APIPromise => {\n function allInner(responses: APIResponse[]): Promise {\n const response = responses[responses.length - 1];\n if (!response.next) {\n // Base case, resolve and return all responses.\n return Promise.resolve(responses);\n }\n // If there are still more resources to get then concat and repeat.\n return response\n .next()\n .then(response => allInner(responses.concat([response])));\n }\n\n function repackResponses(responses: APIResponse[]): APIPromise {\n // Repack the responses object to make it more user friendly.\n const repackedResponse = responses.shift() as APIResponse; // Use the first response to build the standard response object\n repackedResponse.data = [repackedResponse.data];\n responses.forEach(response => {\n repackedResponse.data = repackedResponse.data.concat(response.data);\n repackedResponse.resource = repackedResponse.resource.concat(\n response.resource\n );\n });\n return Promise.resolve(repackedResponse);\n }\n\n const method = 'get';\n return (api({\n endpoint,\n method,\n ...partialParameters,\n ...shorthandParameters,\n }) as APIPromise)\n .then(response => allInner([response]))\n .then(responses => repackResponses(responses));\n };\n\n return partial;\n}\n","import {request, RequestOptions} from './common';\n\nexport type Action = 'trigger' | 'acknowledge' | 'resolve';\n\nexport type EventPromise = Promise;\n\nexport interface EventResponse extends Response {\n data: any;\n response: Response;\n}\n\nexport type Severity = 'critical' | 'error' | 'warning' | 'info';\n\nexport interface Image {\n src: string;\n href?: string;\n alt?: string;\n}\n\nexport interface Link {\n href: string;\n text?: string;\n}\n\nexport interface EventPayloadV2 {\n routing_key: string;\n event_action: Action;\n dedup_key?: string;\n payload: {\n summary: string;\n source: string;\n severity: Severity;\n timestamp?: string;\n component?: string;\n group?: string;\n class?: string;\n custom_details?: object;\n };\n images?: Array;\n links?: Array;\n}\n\nexport interface EventParameters extends RequestOptions {\n data: EventPayloadV2;\n type?: string;\n server?: string;\n}\n\nexport interface ChangePayload {\n routing_key: string;\n payload: {\n summary: string;\n source?: string;\n timestamp: string;\n custom_details: object;\n };\n links: Array;\n}\nexport interface ChangeParameters extends RequestOptions {\n data: ChangePayload;\n server?: string;\n}\n\nexport function event(eventParameters: EventParameters): EventPromise {\n const {\n server = 'events.pagerduty.com',\n type = 'event',\n data,\n ...config\n } = eventParameters;\n\n let url = `https://${server}/v2/enqueue`;\n if (type === 'change') {\n url = `https://${server}/v2/change/enqueue`;\n }\n\n return eventFetch(url, {\n method: 'POST',\n body: JSON.stringify(data),\n ...config,\n });\n}\n\nconst shorthand = (action: Action) => (\n eventParameters: EventParameters\n): EventPromise => {\n const typeField = 'event_action';\n\n return event({\n ...eventParameters,\n data: {\n ...eventParameters.data,\n [typeField]: action,\n },\n });\n};\n\nexport const trigger = shorthand('trigger');\nexport const acknowledge = shorthand('acknowledge');\nexport const resolve = shorthand('resolve');\nexport const change = (eventParameters: EventParameters) =>\n event({...eventParameters, type: 'change'});\n\nfunction eventFetch(url: string, options: RequestOptions): EventPromise {\n return request(url, options).then(\n (response: Response): EventPromise => {\n const apiResponse = response as EventResponse;\n return response.json().then(\n (data): EventResponse => {\n apiResponse.data = data;\n apiResponse.response = response;\n return apiResponse;\n }\n );\n }\n );\n}\n"],"names":["__webpack_require__","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","request","url","options","queryParameters","requestTimeout","applyParameters","URL","toString","applyTimeout","fetch_retry","headers","Headers","retries","Promise","resolve","reject","fetch","then","response","status","retryTimeout","retryTimeoutPromise","clearTimeout","requestTimer","milliseconds","setTimeout","combinedParameters","searchParams","parameter","Array","isArray","forEach","item","append","keys","search","init","timeout","timer","api","apiParameters","endpoint","partialParameters","partial","shorthand","method","shorthandParameters","post","put","patch","all","allInner","responses","length","next","concat","repackedResponse","shift","data","resource","repackResponses","partialCall","server","token","tokenType","version","rest","config","Accept","Authorization","bearer","includes","toUpperCase","body","JSON","stringify","apiRequest","replace","apiResponse","json","match","resourceName","toLowerCase","endsWith","slice","resourceKey","undefined","offset","isOffsetPagination","more","limit","cursor","isCursorPagination","nextFunc","event","eventParameters","type","eventFetch","action","trigger","acknowledge","change"],"sourceRoot":""} \ No newline at end of file diff --git a/examples/browser.html b/examples/browser.html index b448134..a6001e8 100644 --- a/examples/browser.html +++ b/examples/browser.html @@ -7,8 +7,8 @@ - - + +