@forge/api 2.12.0-next.0 → 2.12.0-next.1-experimental-58938ba
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/out/api/fetch.d.ts.map +1 -1
- package/out/api/fetch.js +42 -10
- package/out/api/runtime.d.ts +2 -0
- package/out/api/runtime.d.ts.map +1 -1
- package/out/index.d.ts +4 -13
- package/out/index.d.ts.map +1 -1
- package/out/index.js +3 -1
- package/package.json +3 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
# @forge/api
|
|
2
2
|
|
|
3
|
+
## 2.12.0-next.1-experimental-58938ba
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 60a3be66: Add NodeJS runtime support for unauthenticated product requests via the api object
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- 82ea466c: Add metrics for NodeJS runtime
|
|
12
|
+
- eb084dba: Added capabilities for enabling Custom entities
|
|
13
|
+
- Updated dependencies [eb084dba]
|
|
14
|
+
- @forge/storage@1.3.2-experimental-58938ba
|
|
15
|
+
|
|
16
|
+
## 2.12.0-next.1
|
|
17
|
+
|
|
18
|
+
### Patch Changes
|
|
19
|
+
|
|
20
|
+
- 82ea466: Add metrics for NodeJS runtime
|
|
21
|
+
|
|
3
22
|
## 2.12.0-next.0
|
|
4
23
|
|
|
5
24
|
### Minor Changes
|
package/out/api/fetch.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../src/api/fetch.ts"],"names":[],"mappings":";AAAA,OAAc,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAW,MAAM,YAAY,CAAC;AAChF,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../src/api/fetch.ts"],"names":[],"mappings":";AAAA,OAAc,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAW,MAAM,YAAY,CAAC;AAChF,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAS9B,aAAK,aAAa,GAAG,CAAC,GAAG,EAAE,WAAW,GAAG,GAAG,EAAE,OAAO,EAAE,WAAW,GAAG,SAAS,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AACrG,aAAK,gBAAgB,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;AAChD,aAAK,cAAc,GAAG,MAAM,GAAG,YAAY,GAAG,UAAU,GAAG,WAAW,CAAC;AAuBvE,eAAO,MAAM,gBAAgB,aAAc,gBAAgB,UAAU,cAAc,KAAG,aAsCrF,CAAC;AAuBF,wBAAgB,iBAAiB,IAAI,QAAQ,CAoB5C;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,GAAG,QAAQ,CAEvD"}
|
package/out/api/fetch.js
CHANGED
|
@@ -8,22 +8,54 @@ const runtime_1 = require("./runtime");
|
|
|
8
8
|
const polyfill_response_1 = require("./polyfill-response");
|
|
9
9
|
const egress_1 = require("@forge/egress");
|
|
10
10
|
const errors_1 = require("./errors");
|
|
11
|
+
const perf_hooks_1 = require("perf_hooks");
|
|
12
|
+
const FORGE_PROXY_UPSTREAM_LATENCY_HEADER = 'forge-proxy-upstream-latency';
|
|
11
13
|
const ATLASSIAN_TOKEN_SERVICE_KEY = 'atlassian-token-service-key';
|
|
14
|
+
const providerToMetric = {
|
|
15
|
+
app: 'asApp',
|
|
16
|
+
user: 'asUser'
|
|
17
|
+
};
|
|
18
|
+
const remoteToMetric = {
|
|
19
|
+
jira: 'requestJira',
|
|
20
|
+
confluence: 'requestConfluence',
|
|
21
|
+
bitbucket: 'requestBitbucket',
|
|
22
|
+
stargate: 'requestAtlassian'
|
|
23
|
+
};
|
|
24
|
+
const metricName = (provider, remote) => {
|
|
25
|
+
if (provider === 'none') {
|
|
26
|
+
return `api.${remoteToMetric[remote]}`;
|
|
27
|
+
}
|
|
28
|
+
return `api.${providerToMetric[provider]}.${remoteToMetric[remote]}`;
|
|
29
|
+
};
|
|
12
30
|
const createProxyFetch = (provider, remote) => {
|
|
13
31
|
return async (url, options) => {
|
|
14
|
-
const { proxy } = (0, runtime_1.getRuntime)();
|
|
32
|
+
const { proxy, metrics } = (0, runtime_1.getRuntime)();
|
|
15
33
|
const request = new node_fetch_1.Request(url, options);
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
34
|
+
const metric = metricName(provider, remote);
|
|
35
|
+
const timer = metrics.timing(metric, { proxy: 'true' }).measure();
|
|
36
|
+
metrics.counter(metric).incr();
|
|
37
|
+
try {
|
|
38
|
+
const proxyRequest = new node_fetch_1.Request(`${proxy.url}/fpp/provider/${provider}/remote/${remote}`, request);
|
|
39
|
+
proxyRequest.headers.set('Forge-Proxy-Target-Relative', request.url);
|
|
40
|
+
proxyRequest.headers.set('Forge-Proxy-Authorization', `Bearer ${proxy.token}`);
|
|
41
|
+
const requestStart = perf_hooks_1.performance.now();
|
|
42
|
+
const response = await (0, node_fetch_1.default)(proxyRequest);
|
|
43
|
+
const requestEnd = perf_hooks_1.performance.now();
|
|
44
|
+
const proxyUpstreamLatency = parseInt(response.headers.get(FORGE_PROXY_UPSTREAM_LATENCY_HEADER) || '');
|
|
45
|
+
if (proxyUpstreamLatency) {
|
|
46
|
+
metrics.timing('proxy-success-overhead').set(requestEnd - requestStart - proxyUpstreamLatency);
|
|
47
|
+
}
|
|
48
|
+
if (response.headers.has('forge-proxy-error')) {
|
|
49
|
+
if (response.headers.get('forge-proxy-error') === 'NEEDS_AUTHENTICATION_ERR') {
|
|
50
|
+
throw new errors_1.NeedsAuthenticationError('Authentication Required', ATLASSIAN_TOKEN_SERVICE_KEY);
|
|
51
|
+
}
|
|
52
|
+
throw new errors_1.ProxyRequestError(response.status, response.headers.get('forge-proxy-error'));
|
|
23
53
|
}
|
|
24
|
-
|
|
54
|
+
return response;
|
|
55
|
+
}
|
|
56
|
+
finally {
|
|
57
|
+
timer.stop();
|
|
25
58
|
}
|
|
26
|
-
return response;
|
|
27
59
|
};
|
|
28
60
|
};
|
|
29
61
|
exports.createProxyFetch = createProxyFetch;
|
package/out/api/runtime.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { Metrics } from '@forge/util/packages/metrics-interface';
|
|
1
2
|
export declare type ForgeRuntime = {
|
|
2
3
|
proxy: {
|
|
3
4
|
token: string;
|
|
@@ -8,6 +9,7 @@ export declare type ForgeRuntime = {
|
|
|
8
9
|
lambdaContext: {
|
|
9
10
|
awsRequestId: string;
|
|
10
11
|
};
|
|
12
|
+
metrics: Metrics;
|
|
11
13
|
};
|
|
12
14
|
export declare function getRuntime(): ForgeRuntime;
|
|
13
15
|
//# sourceMappingURL=runtime.d.ts.map
|
package/out/api/runtime.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/api/runtime.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/api/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wCAAwC,CAAC;AAOtE,oBAAY,YAAY,GAAG;IACzB,KAAK,EAAE;QACL,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,EAAE;QACb,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,wBAAgB,UAAU,IAAI,YAAY,CAOzC"}
|
package/out/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { RequestInit, Response } from 'node-fetch';
|
|
2
|
-
import { QueryApi } from '@forge/storage';
|
|
2
|
+
import { QueryApi, EntityStorageApi } from '@forge/storage';
|
|
3
3
|
import { authorize } from './authorization';
|
|
4
4
|
import { Route } from './safeUrl';
|
|
5
5
|
import { webTrigger } from './webTrigger';
|
|
@@ -37,7 +37,7 @@ export interface PropertiesAPI {
|
|
|
37
37
|
onConfluencePage: (context: string) => StorageMethods;
|
|
38
38
|
onConfluenceSpace: (context: string) => StorageMethods;
|
|
39
39
|
}
|
|
40
|
-
export interface StorageAPI extends StorageMethods, QueryApi {
|
|
40
|
+
export interface StorageAPI extends StorageMethods, QueryApi, EntityStorageApi {
|
|
41
41
|
}
|
|
42
42
|
export interface ForgeStorageAPI extends StorageAPI {
|
|
43
43
|
getSecret: (key: string) => Promise<any>;
|
|
@@ -65,15 +65,7 @@ declare const requestJira: RequestProductMethod;
|
|
|
65
65
|
declare const requestConfluence: RequestProductMethod;
|
|
66
66
|
declare const requestBitbucket: RequestProductMethod;
|
|
67
67
|
declare const store: PropertiesAPI;
|
|
68
|
-
declare const storage:
|
|
69
|
-
get: (key: string) => Promise<any>;
|
|
70
|
-
set: (key: string, value: any) => Promise<void>;
|
|
71
|
-
delete: (key: string) => Promise<void>;
|
|
72
|
-
getSecret: (key: string) => Promise<any>;
|
|
73
|
-
setSecret: (key: string, value: any) => Promise<void>;
|
|
74
|
-
deleteSecret: (key: string) => Promise<void>;
|
|
75
|
-
query: () => import("packages/forge-storage/out/query-api").DefaultQueryBuilder;
|
|
76
|
-
};
|
|
68
|
+
declare const storage: StorageAPI;
|
|
77
69
|
declare const properties: PropertiesAPI;
|
|
78
70
|
declare const API: ForgeAPI;
|
|
79
71
|
export declare const privacy: {
|
|
@@ -81,8 +73,7 @@ export declare const privacy: {
|
|
|
81
73
|
};
|
|
82
74
|
export default API;
|
|
83
75
|
export { asUser, asApp, authorize, fetch, requestJira, requestConfluence, requestBitbucket, store, storage, properties, webTrigger, createRequestStargateAsApp };
|
|
84
|
-
export { QueryBuilder, QueryApi, Condition, ListResult, Predicate, Result, Value } from '@forge/storage';
|
|
85
|
-
export { startsWith } from '@forge/storage';
|
|
76
|
+
export { QueryBuilder, QueryApi, EntityStorageApi, Condition, ListResult, Predicate, Result, Value, WherePredicate, FilterPredicate, startsWith, WhereConditions, FilterConditions } from '@forge/storage';
|
|
86
77
|
export { route, assumeTrustedRoute, routeFromAbsolute, Route } from './safeUrl';
|
|
87
78
|
export { ForgeRuntime, getRuntime } from './api/runtime';
|
|
88
79
|
export { NeedsAuthenticationError, ProxyRequestError, FetchError, ExternalEndpointNotAllowedError, ProductEndpointNotAllowedError, RequestProductNotAllowedError, NotAllowedError, InvalidWorkspaceRequestedError, HttpError, FUNCTION_ERR, isForgePlatformError, isHostedCodeError } from './api/errors';
|
package/out/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAA8C,QAAQ,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/out/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var _a;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.isHostedCodeError = exports.isForgePlatformError = exports.FUNCTION_ERR = exports.HttpError = exports.InvalidWorkspaceRequestedError = exports.NotAllowedError = exports.RequestProductNotAllowedError = exports.ProductEndpointNotAllowedError = exports.ExternalEndpointNotAllowedError = exports.FetchError = exports.ProxyRequestError = exports.NeedsAuthenticationError = exports.getRuntime = exports.routeFromAbsolute = exports.assumeTrustedRoute = exports.route = exports.startsWith = exports.createRequestStargateAsApp = exports.webTrigger = exports.properties = exports.storage = exports.store = exports.requestBitbucket = exports.requestConfluence = exports.requestJira = exports.fetch = exports.authorize = exports.asApp = exports.asUser = exports.privacy = void 0;
|
|
4
|
+
exports.isHostedCodeError = exports.isForgePlatformError = exports.FUNCTION_ERR = exports.HttpError = exports.InvalidWorkspaceRequestedError = exports.NotAllowedError = exports.RequestProductNotAllowedError = exports.ProductEndpointNotAllowedError = exports.ExternalEndpointNotAllowedError = exports.FetchError = exports.ProxyRequestError = exports.NeedsAuthenticationError = exports.getRuntime = exports.routeFromAbsolute = exports.assumeTrustedRoute = exports.route = exports.FilterConditions = exports.WhereConditions = exports.startsWith = exports.createRequestStargateAsApp = exports.webTrigger = exports.properties = exports.storage = exports.store = exports.requestBitbucket = exports.requestConfluence = exports.requestJira = exports.fetch = exports.authorize = exports.asApp = exports.asUser = exports.privacy = void 0;
|
|
5
5
|
const storage_1 = require("@forge/storage");
|
|
6
6
|
const authorization_1 = require("./authorization");
|
|
7
7
|
Object.defineProperty(exports, "authorize", { enumerable: true, get: function () { return authorization_1.authorize; } });
|
|
@@ -52,6 +52,8 @@ exports.privacy = {
|
|
|
52
52
|
exports.default = API;
|
|
53
53
|
var storage_2 = require("@forge/storage");
|
|
54
54
|
Object.defineProperty(exports, "startsWith", { enumerable: true, get: function () { return storage_2.startsWith; } });
|
|
55
|
+
Object.defineProperty(exports, "WhereConditions", { enumerable: true, get: function () { return storage_2.WhereConditions; } });
|
|
56
|
+
Object.defineProperty(exports, "FilterConditions", { enumerable: true, get: function () { return storage_2.FilterConditions; } });
|
|
55
57
|
var safeUrl_1 = require("./safeUrl");
|
|
56
58
|
Object.defineProperty(exports, "route", { enumerable: true, get: function () { return safeUrl_1.route; } });
|
|
57
59
|
Object.defineProperty(exports, "assumeTrustedRoute", { enumerable: true, get: function () { return safeUrl_1.assumeTrustedRoute; } });
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forge/api",
|
|
3
|
-
"version": "2.12.0-next.
|
|
3
|
+
"version": "2.12.0-next.1-experimental-58938ba",
|
|
4
4
|
"description": "Forge API methods",
|
|
5
5
|
"author": "Atlassian",
|
|
6
6
|
"license": "UNLICENSED",
|
|
@@ -12,13 +12,14 @@
|
|
|
12
12
|
"compile": "tsc -b -v"
|
|
13
13
|
},
|
|
14
14
|
"devDependencies": {
|
|
15
|
+
"@forge/util": "1.2.1",
|
|
15
16
|
"nock": "^10.0.6",
|
|
16
17
|
"@types/node": "^12.12.63"
|
|
17
18
|
},
|
|
18
19
|
"dependencies": {
|
|
19
20
|
"@forge/auth": "0.0.1",
|
|
20
21
|
"@forge/egress": "1.1.2",
|
|
21
|
-
"@forge/storage": "1.3.2",
|
|
22
|
+
"@forge/storage": "1.3.2-experimental-58938ba",
|
|
22
23
|
"@types/node-fetch": "^2.5.7",
|
|
23
24
|
"node-fetch": "2.6.7"
|
|
24
25
|
}
|