@osaas/client-web 0.3.8 → 0.4.0
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/lib/cat.d.ts +40 -0
- package/lib/cat.d.ts.map +1 -0
- package/lib/cat.js +63 -0
- package/lib/cat.js.map +1 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +3 -1
- package/lib/index.js.map +1 -1
- package/lib/util.d.ts +2 -0
- package/lib/util.d.ts.map +1 -0
- package/lib/util.js +6 -0
- package/lib/util.js.map +1 -0
- package/package.json +2 -2
package/lib/cat.d.ts
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Context } from '@osaas/client-core';
|
|
2
|
+
type Claims = {
|
|
3
|
+
[key: string]: string | number;
|
|
4
|
+
};
|
|
5
|
+
interface CatOptions {
|
|
6
|
+
signingKey: string;
|
|
7
|
+
instanceName?: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Generate a Common Access Token (CTA-5007) using Andersnas Nodecat open webservice
|
|
11
|
+
*
|
|
12
|
+
* @memberof module:@osaas/client-web
|
|
13
|
+
* @async
|
|
14
|
+
* @param {Context} ctx - Eyevinn OSC context
|
|
15
|
+
* @param {Claims} claims - Claims to be included in the token
|
|
16
|
+
* @param {CatOptions} opts - Service options
|
|
17
|
+
* @returns {Promise<string>} - The generated token
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* import { Context } from '@osaas/client-core';
|
|
21
|
+
* import { generateCommonAccessToken } from '@osaas/client-web';
|
|
22
|
+
*
|
|
23
|
+
* const ctx = new Context();
|
|
24
|
+
* const token = await generateCommonAccessToken(
|
|
25
|
+
* ctx,
|
|
26
|
+
* {
|
|
27
|
+
* iss: 'eyevinn',
|
|
28
|
+
* sub: 'jonas'
|
|
29
|
+
* },
|
|
30
|
+
* {
|
|
31
|
+
* signingKey:
|
|
32
|
+
* '403697de87af64611c1d32a05dab0fe1fcb715a86ab435f1ec99192d79569388'
|
|
33
|
+
* }
|
|
34
|
+
* );
|
|
35
|
+
* console.log(token);
|
|
36
|
+
* // 2D3RhEOhAQWhBFBha2FtYWlfa2V5X2hzMjU2WB2kAWdleWV2aW5uAmVqb25hcwYaZ9TH9QUaZ9TH9Vgg40JB9G77k5RWOlayUSLDl7oFVnnyb4aHYc1qls148WY
|
|
37
|
+
*/
|
|
38
|
+
export declare function generateCommonAccessToken(ctx: Context, claims: Claims, opts: CatOptions): Promise<string>;
|
|
39
|
+
export {};
|
|
40
|
+
//# sourceMappingURL=cat.d.ts.map
|
package/lib/cat.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cat.d.ts","sourceRoot":"","sources":["../src/cat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAwB,MAAM,oBAAoB,CAAC;AAOnE,KAAK,MAAM,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAEjD,UAAU,UAAU;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAsB,yBAAyB,CAC7C,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,UAAU,mBA4BjB"}
|
package/lib/cat.js
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.generateCommonAccessToken = void 0;
|
|
4
|
+
const client_core_1 = require("@osaas/client-core");
|
|
5
|
+
const client_services_1 = require("@osaas/client-services");
|
|
6
|
+
/**
|
|
7
|
+
* Generate a Common Access Token (CTA-5007) using Andersnas Nodecat open webservice
|
|
8
|
+
*
|
|
9
|
+
* @memberof module:@osaas/client-web
|
|
10
|
+
* @async
|
|
11
|
+
* @param {Context} ctx - Eyevinn OSC context
|
|
12
|
+
* @param {Claims} claims - Claims to be included in the token
|
|
13
|
+
* @param {CatOptions} opts - Service options
|
|
14
|
+
* @returns {Promise<string>} - The generated token
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* import { Context } from '@osaas/client-core';
|
|
18
|
+
* import { generateCommonAccessToken } from '@osaas/client-web';
|
|
19
|
+
*
|
|
20
|
+
* const ctx = new Context();
|
|
21
|
+
* const token = await generateCommonAccessToken(
|
|
22
|
+
* ctx,
|
|
23
|
+
* {
|
|
24
|
+
* iss: 'eyevinn',
|
|
25
|
+
* sub: 'jonas'
|
|
26
|
+
* },
|
|
27
|
+
* {
|
|
28
|
+
* signingKey:
|
|
29
|
+
* '403697de87af64611c1d32a05dab0fe1fcb715a86ab435f1ec99192d79569388'
|
|
30
|
+
* }
|
|
31
|
+
* );
|
|
32
|
+
* console.log(token);
|
|
33
|
+
* // 2D3RhEOhAQWhBFBha2FtYWlfa2V5X2hzMjU2WB2kAWdleWV2aW5uAmVqb25hcwYaZ9TH9QUaZ9TH9Vgg40JB9G77k5RWOlayUSLDl7oFVnnyb4aHYc1qls148WY
|
|
34
|
+
*/
|
|
35
|
+
async function generateCommonAccessToken(ctx, claims, opts) {
|
|
36
|
+
const instanceName = opts.instanceName || 'default';
|
|
37
|
+
let instance = await (0, client_services_1.getAndersnasNodecatInstance)(ctx, instanceName);
|
|
38
|
+
if (!instance) {
|
|
39
|
+
const config = {
|
|
40
|
+
name: instanceName,
|
|
41
|
+
SigningKey: opts.signingKey
|
|
42
|
+
};
|
|
43
|
+
instance = await (0, client_services_1.createAndersnasNodecatInstance)(ctx, config);
|
|
44
|
+
await (0, client_core_1.waitForInstanceReady)('andersnas-nodecat', instanceName, ctx);
|
|
45
|
+
}
|
|
46
|
+
const sat = await ctx.getServiceAccessToken('andersnas-nodecat');
|
|
47
|
+
const apiUrl = new URL('/generateToken', instance.url);
|
|
48
|
+
const response = await fetch(apiUrl, {
|
|
49
|
+
method: 'POST',
|
|
50
|
+
headers: {
|
|
51
|
+
Authorization: `Bearer ${sat}`,
|
|
52
|
+
'Content-Type': 'application/json'
|
|
53
|
+
},
|
|
54
|
+
body: JSON.stringify(claims)
|
|
55
|
+
});
|
|
56
|
+
if (!response.ok) {
|
|
57
|
+
throw new Error(`Failed to generate token: ${response.statusText}`);
|
|
58
|
+
}
|
|
59
|
+
const token = await response.text();
|
|
60
|
+
return token;
|
|
61
|
+
}
|
|
62
|
+
exports.generateCommonAccessToken = generateCommonAccessToken;
|
|
63
|
+
//# sourceMappingURL=cat.js.map
|
package/lib/cat.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cat.js","sourceRoot":"","sources":["../src/cat.ts"],"names":[],"mappings":";;;AAAA,oDAAmE;AACnE,4DAIgC;AAShC;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACI,KAAK,UAAU,yBAAyB,CAC7C,GAAY,EACZ,MAAc,EACd,IAAgB;IAEhB,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,SAAS,CAAC;IACpD,IAAI,QAAQ,GAAG,MAAM,IAAA,6CAA2B,EAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IACpE,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,MAAM,GAA2B;YACrC,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;QACF,QAAQ,GAAG,MAAM,IAAA,gDAA8B,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC7D,MAAM,IAAA,kCAAoB,EAAC,mBAAmB,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC;KACpE;IAED,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,qBAAqB,CAAC,mBAAmB,CAAC,CAAC;IACjE,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,gBAAgB,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE;QACnC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,GAAG,EAAE;YAC9B,cAAc,EAAE,kBAAkB;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;KAC7B,CAAC,CAAC;IACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;QAChB,MAAM,IAAI,KAAK,CAAC,6BAA6B,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;KACrE;IACD,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACpC,OAAO,KAAK,CAAC;AACf,CAAC;AA/BD,8DA+BC"}
|
package/lib/index.d.ts
CHANGED
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,4BAA4B,EAAE,MAAM,OAAO,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,4BAA4B,EAAE,MAAM,OAAO,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,OAAO,CAAC"}
|
package/lib/index.js
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/** @module @osaas/client-web */
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.createCloudfrontDistribution = exports.publish = void 0;
|
|
4
|
+
exports.generateCommonAccessToken = exports.createCloudfrontDistribution = exports.publish = void 0;
|
|
5
5
|
var publish_1 = require("./publish");
|
|
6
6
|
Object.defineProperty(exports, "publish", { enumerable: true, get: function () { return publish_1.publish; } });
|
|
7
7
|
var cdn_1 = require("./cdn");
|
|
8
8
|
Object.defineProperty(exports, "createCloudfrontDistribution", { enumerable: true, get: function () { return cdn_1.createCloudfrontDistribution; } });
|
|
9
|
+
var cat_1 = require("./cat");
|
|
10
|
+
Object.defineProperty(exports, "generateCommonAccessToken", { enumerable: true, get: function () { return cat_1.generateCommonAccessToken; } });
|
|
9
11
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,gCAAgC;;;AAEhC,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,6BAAqD;AAA5C,mHAAA,4BAA4B,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,gCAAgC;;;AAEhC,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,6BAAqD;AAA5C,mHAAA,4BAA4B,OAAA;AACrC,6BAAkD;AAAzC,gHAAA,yBAAyB,OAAA"}
|
package/lib/util.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,KAAK,OAAQ,MAAM,qBAA8C,CAAC"}
|
package/lib/util.js
ADDED
package/lib/util.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":";;;AAAO,MAAM,KAAK,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;AAAlE,QAAA,KAAK,SAA6D"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@osaas/client-web",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Open Source Cloud Client SDK web library",
|
|
5
5
|
"author": "Eyevinn Open Source Cloud <osc@eyevinn.se>",
|
|
6
6
|
"homepage": "https://www.osaas.io",
|
|
@@ -35,5 +35,5 @@
|
|
|
35
35
|
"publishConfig": {
|
|
36
36
|
"access": "public"
|
|
37
37
|
},
|
|
38
|
-
"gitHead": "
|
|
38
|
+
"gitHead": "e218804b34b175b86dcea1bb46f1d47e8e429120"
|
|
39
39
|
}
|