@affinidi/cli 1.19.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/README.md +231 -0
- package/bin/dev +17 -0
- package/bin/dev.cmd +3 -0
- package/bin/run +5 -0
- package/bin/run.cmd +3 -0
- package/dist/commands/create/project.d.ts +10 -0
- package/dist/commands/create/project.js +41 -0
- package/dist/commands/create/project.js.map +1 -0
- package/dist/commands/generate-application/index.d.ts +16 -0
- package/dist/commands/generate-application/index.js +90 -0
- package/dist/commands/generate-application/index.js.map +1 -0
- package/dist/commands/issue-vc.d.ts +14 -0
- package/dist/commands/issue-vc.js +85 -0
- package/dist/commands/issue-vc.js.map +1 -0
- package/dist/commands/list/index.d.ts +7 -0
- package/dist/commands/list/index.js +24 -0
- package/dist/commands/list/index.js.map +1 -0
- package/dist/commands/list/projects.d.ts +15 -0
- package/dist/commands/list/projects.js +69 -0
- package/dist/commands/list/projects.js.map +1 -0
- package/dist/commands/list/schemas.d.ts +28 -0
- package/dist/commands/list/schemas.js +109 -0
- package/dist/commands/list/schemas.js.map +1 -0
- package/dist/commands/login/index.d.ts +10 -0
- package/dist/commands/login/index.js +50 -0
- package/dist/commands/login/index.js.map +1 -0
- package/dist/commands/logout/index.d.ts +7 -0
- package/dist/commands/logout/index.js +32 -0
- package/dist/commands/logout/index.js.map +1 -0
- package/dist/commands/show/index.d.ts +7 -0
- package/dist/commands/show/index.js +24 -0
- package/dist/commands/show/index.js.map +1 -0
- package/dist/commands/show/project.d.ts +14 -0
- package/dist/commands/show/project.js +84 -0
- package/dist/commands/show/project.js.map +1 -0
- package/dist/commands/show/schema.d.ts +13 -0
- package/dist/commands/show/schema.js +61 -0
- package/dist/commands/show/schema.js.map +1 -0
- package/dist/commands/sign-up/index.d.ts +10 -0
- package/dist/commands/sign-up/index.js +56 -0
- package/dist/commands/sign-up/index.js.map +1 -0
- package/dist/commands/use/index.d.ts +7 -0
- package/dist/commands/use/index.js +20 -0
- package/dist/commands/use/index.js.map +1 -0
- package/dist/commands/use/project.d.ts +13 -0
- package/dist/commands/use/project.js +77 -0
- package/dist/commands/use/project.js.map +1 -0
- package/dist/commands/verify-vc.d.ts +10 -0
- package/dist/commands/verify-vc.js +37 -0
- package/dist/commands/verify-vc.js.map +1 -0
- package/dist/errors/index.d.ts +20 -0
- package/dist/errors/index.js +63 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/fixtures/mock-projects.d.ts +22 -0
- package/dist/fixtures/mock-projects.js +38 -0
- package/dist/fixtures/mock-projects.js.map +1 -0
- package/dist/fixtures/mock-schemas.d.ts +4 -0
- package/dist/fixtures/mock-schemas.js +34 -0
- package/dist/fixtures/mock-schemas.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/render/functions.d.ts +2 -0
- package/dist/render/functions.js +28 -0
- package/dist/render/functions.js.map +1 -0
- package/dist/render/texts.d.ts +4 -0
- package/dist/render/texts.js +31 -0
- package/dist/render/texts.js.map +1 -0
- package/dist/services/git/index.d.ts +3 -0
- package/dist/services/git/index.js +20 -0
- package/dist/services/git/index.js.map +1 -0
- package/dist/services/iam/iam.api.d.ts +145 -0
- package/dist/services/iam/iam.api.js +202 -0
- package/dist/services/iam/iam.api.js.map +1 -0
- package/dist/services/iam/index.d.ts +11 -0
- package/dist/services/iam/index.js +59 -0
- package/dist/services/iam/index.js.map +1 -0
- package/dist/services/index.d.ts +4 -0
- package/dist/services/index.js +13 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/issuance/index.d.ts +10 -0
- package/dist/services/issuance/index.js +40 -0
- package/dist/services/issuance/index.js.map +1 -0
- package/dist/services/issuance/issuance.api.d.ts +360 -0
- package/dist/services/issuance/issuance.api.js +311 -0
- package/dist/services/issuance/issuance.api.js.map +1 -0
- package/dist/services/issuance/parse.schema.url.d.ts +5 -0
- package/dist/services/issuance/parse.schema.url.js +73 -0
- package/dist/services/issuance/parse.schema.url.js.map +1 -0
- package/dist/services/schema-manager/index.d.ts +19 -0
- package/dist/services/schema-manager/index.js +43 -0
- package/dist/services/schema-manager/index.js.map +1 -0
- package/dist/services/schema-manager/schema-manager.api.d.ts +279 -0
- package/dist/services/schema-manager/schema-manager.api.js +171 -0
- package/dist/services/schema-manager/schema-manager.api.js.map +1 -0
- package/dist/services/user-management/index.d.ts +35 -0
- package/dist/services/user-management/index.js +108 -0
- package/dist/services/user-management/index.js.map +1 -0
- package/dist/services/user-management/user-management.api.d.ts +110 -0
- package/dist/services/user-management/user-management.api.js +185 -0
- package/dist/services/user-management/user-management.api.js.map +1 -0
- package/dist/services/vault/index.d.ts +23 -0
- package/dist/services/vault/index.js +67 -0
- package/dist/services/vault/index.js.map +1 -0
- package/dist/services/verification/index.d.ts +9 -0
- package/dist/services/verification/index.js +29 -0
- package/dist/services/verification/index.js.map +1 -0
- package/dist/services/verification/verifier.api.d.ts +202 -0
- package/dist/services/verification/verifier.api.js +187 -0
- package/dist/services/verification/verifier.api.js.map +1 -0
- package/dist/services/writer/index.d.ts +3 -0
- package/dist/services/writer/index.js +17 -0
- package/dist/services/writer/index.js.map +1 -0
- package/dist/user-actions/index.d.ts +1 -0
- package/dist/user-actions/index.js +13 -0
- package/dist/user-actions/index.js.map +1 -0
- package/dist/user-actions/prompts.d.ts +10 -0
- package/dist/user-actions/prompts.js +36 -0
- package/dist/user-actions/prompts.js.map +1 -0
- package/package.json +145 -0
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseSchemaURL = void 0;
|
|
4
|
+
const index_1 = require("../../errors/index");
|
|
5
|
+
const SCHEMA_TYPE_UI_VIEW_REGEX = /\/schemas\/(.*)V([0-9]+)-([0-9]+)/;
|
|
6
|
+
const SCHEMA_TYPE_CONTEXT_OR_SCHEMA_REGEX = /(@did:[^/]+|\.org|\.com)\/(.*)V([0-9]+)-([0-9]+)\.(json|jsonld)/;
|
|
7
|
+
function parseSchemaTypeFromUIURL(url) {
|
|
8
|
+
const { pathname } = url;
|
|
9
|
+
const match = pathname.match(SCHEMA_TYPE_UI_VIEW_REGEX);
|
|
10
|
+
if (!match) {
|
|
11
|
+
return undefined;
|
|
12
|
+
}
|
|
13
|
+
if (match[1].startsWith('@did')) {
|
|
14
|
+
const [, ...rest] = match[1].split('/');
|
|
15
|
+
return { type: match[1], short: rest.join('/'), v: match[2], i: match[3] };
|
|
16
|
+
}
|
|
17
|
+
return { type: match[1], short: match[1], v: match[2], i: match[3] };
|
|
18
|
+
}
|
|
19
|
+
function parseSchemaTypeFromContextOrSchemaURL(url) {
|
|
20
|
+
const match = url.toString().match(SCHEMA_TYPE_CONTEXT_OR_SCHEMA_REGEX);
|
|
21
|
+
if (!match) {
|
|
22
|
+
return undefined;
|
|
23
|
+
}
|
|
24
|
+
if (match[2].startsWith('@did')) {
|
|
25
|
+
const [, ...rest] = match[2].split('/');
|
|
26
|
+
return { type: match[2], short: rest.join('/'), v: match[3], i: match[4] };
|
|
27
|
+
}
|
|
28
|
+
return { type: match[2], short: match[2], v: match[3], i: match[4] };
|
|
29
|
+
}
|
|
30
|
+
function parseSchemaType(url) {
|
|
31
|
+
const fromUIURL = parseSchemaTypeFromUIURL(url);
|
|
32
|
+
if (fromUIURL) {
|
|
33
|
+
return fromUIURL;
|
|
34
|
+
}
|
|
35
|
+
const fromContextOrSchemaURL = parseSchemaTypeFromContextOrSchemaURL(url);
|
|
36
|
+
if (fromContextOrSchemaURL) {
|
|
37
|
+
return fromContextOrSchemaURL;
|
|
38
|
+
}
|
|
39
|
+
throw new Error('could not match pathname');
|
|
40
|
+
}
|
|
41
|
+
function getBase(host) {
|
|
42
|
+
switch (host) {
|
|
43
|
+
case 'ui.schema.dev.affinidi.com':
|
|
44
|
+
case 'schema-manager.dev.affinity-project.org':
|
|
45
|
+
return 'https://schema-manager.dev.affinity-project.org';
|
|
46
|
+
case 'ui.schema.stg.affinidi.com':
|
|
47
|
+
case 'schema.stg.affinidi.com':
|
|
48
|
+
return 'https://schema.stg.affinidi.com';
|
|
49
|
+
case 'ui.schema.affinidi.com':
|
|
50
|
+
case 'schema.affinidi.com':
|
|
51
|
+
return 'https://schema.affinidi.com';
|
|
52
|
+
default:
|
|
53
|
+
throw new Error(`unknown host: ${host}`);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
function parseSchemaURL(schemaURL) {
|
|
57
|
+
try {
|
|
58
|
+
const url = new URL(schemaURL);
|
|
59
|
+
const { type, short, v, i } = parseSchemaType(url);
|
|
60
|
+
const fullSchemaType = `${type}V${v}-${i}`;
|
|
61
|
+
const base = getBase(url.host);
|
|
62
|
+
return {
|
|
63
|
+
schemaType: short,
|
|
64
|
+
jsonLdContext: new URL(`${base}/${fullSchemaType}.jsonld`),
|
|
65
|
+
jsonSchema: new URL(`${base}/${fullSchemaType}.json`),
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
catch (_) {
|
|
69
|
+
throw index_1.CouldNotParseSchema;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
exports.parseSchemaURL = parseSchemaURL;
|
|
73
|
+
//# sourceMappingURL=parse.schema.url.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse.schema.url.js","sourceRoot":"","sources":["../../../src/services/issuance/parse.schema.url.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Api as SchemaManagerApi, SchemaDto } from './schema-manager.api';
|
|
2
|
+
export declare const SCHEMA_MANAGER_URL = "https://affinidi-schema-manager.prod.affinity-project.org/api/v1";
|
|
3
|
+
export declare type ScopeType = 'public' | 'unlisted' | 'default';
|
|
4
|
+
declare class SchemaManagerService {
|
|
5
|
+
private readonly client;
|
|
6
|
+
constructor(client?: SchemaManagerApi<unknown>);
|
|
7
|
+
search: ({ apiKey, did, scope, skip, limit, }: {
|
|
8
|
+
apiKey?: string;
|
|
9
|
+
authorDid?: string;
|
|
10
|
+
did?: string;
|
|
11
|
+
scope: ScopeType;
|
|
12
|
+
search?: string;
|
|
13
|
+
skip: number;
|
|
14
|
+
limit: number;
|
|
15
|
+
}) => Promise<SchemaDto[]>;
|
|
16
|
+
getById: (id: string, apiKey: string) => Promise<SchemaDto>;
|
|
17
|
+
}
|
|
18
|
+
export declare const schemaManagerService: SchemaManagerService;
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.schemaManagerService = exports.SCHEMA_MANAGER_URL = void 0;
|
|
4
|
+
const http_status_codes_1 = require("http-status-codes");
|
|
5
|
+
const schema_manager_api_1 = require("./schema-manager.api");
|
|
6
|
+
const errors_1 = require("../../errors");
|
|
7
|
+
exports.SCHEMA_MANAGER_URL = 'https://affinidi-schema-manager.prod.affinity-project.org/api/v1';
|
|
8
|
+
const SERVICE = 'schema';
|
|
9
|
+
class SchemaManagerService {
|
|
10
|
+
constructor(client = new schema_manager_api_1.Api({
|
|
11
|
+
baseURL: exports.SCHEMA_MANAGER_URL,
|
|
12
|
+
})) {
|
|
13
|
+
this.client = client;
|
|
14
|
+
this.search = async ({ apiKey = null,
|
|
15
|
+
// authorDid = null,
|
|
16
|
+
did = null, scope = 'default', skip = 0, limit = 10, }) => {
|
|
17
|
+
try {
|
|
18
|
+
const response = await this.client.schemas.searchSchemas({ did, scope, skip, limit }, {
|
|
19
|
+
headers: {
|
|
20
|
+
'API-KEY': apiKey,
|
|
21
|
+
},
|
|
22
|
+
});
|
|
23
|
+
if (response.status !== http_status_codes_1.StatusCodes.OK) {
|
|
24
|
+
return [];
|
|
25
|
+
}
|
|
26
|
+
return response.data.schemas;
|
|
27
|
+
}
|
|
28
|
+
catch (err) {
|
|
29
|
+
return (0, errors_1.handleErrors)(new errors_1.CliError(err === null || err === void 0 ? void 0 : err.message, err.response.status, SERVICE));
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
this.getById = async (id, apiKey) => {
|
|
33
|
+
try {
|
|
34
|
+
return (await this.client.schemas.getSchema(id, { headers: { 'API-KEY': apiKey } })).data;
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
return (0, errors_1.handleErrors)(new errors_1.CliError(error === null || error === void 0 ? void 0 : error.message, error.response.status, SERVICE));
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.schemaManagerService = new SchemaManagerService();
|
|
43
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/schema-manager/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+C;AAE/C,6DAAyE;AACzE,yCAAqD;AAExC,QAAA,kBAAkB,GAAG,kEAAkE,CAAA;AAGpG,MAAM,OAAO,GAAG,QAAQ,CAAA;AAExB,MAAM,oBAAoB;IACxB,YACmB,SAAS,IAAI,wBAAgB,CAAC;QAC7C,OAAO,EAAE,0BAAkB;KAC5B,CAAC;QAFe,WAAM,GAAN,MAAM,CAErB;QAGG,WAAM,GAAG,KAAK,EAAE,EACrB,MAAM,GAAG,IAAI;QACb,oBAAoB;QACpB,GAAG,GAAG,IAAI,EACV,KAAK,GAAG,SAAS,EACjB,IAAI,GAAG,CAAC,EACR,KAAK,GAAG,EAAE,GASX,EAAwB,EAAE;YACzB,IAAI;gBACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CACtD,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAC3B;oBACE,OAAO,EAAE;wBACP,SAAS,EAAE,MAAM;qBAClB;iBACF,CACF,CAAA;gBACD,IAAI,QAAQ,CAAC,MAAM,KAAK,+BAAW,CAAC,EAAE,EAAE;oBACtC,OAAO,EAAE,CAAA;iBACV;gBACD,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;aAC7B;YAAC,OAAO,GAAG,EAAE;gBACZ,OAAO,IAAA,qBAAY,EAAC,IAAI,iBAAQ,CAAC,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;aAC9E;QACH,CAAC,CAAA;QAEM,YAAO,GAAG,KAAK,EAAE,EAAU,EAAE,MAAc,EAAsB,EAAE;YACxE,IAAI;gBACF,OAAO,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;aAC1F;YAAC,OAAO,KAAU,EAAE;gBACnB,OAAO,IAAA,qBAAY,EAAC,IAAI,iBAAQ,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;aAClF;QACH,CAAC,CAAA;IA1CE,CAAC;CA2CL;AAEY,QAAA,oBAAoB,GAAG,IAAI,oBAAoB,EAAE,CAAA"}
|
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `DidAuthRequestToken` is the token that user should use to generate a `DidAuthResponseToken`.
|
|
3
|
+
`DidAuthResponseToken` can then used to authenticate the subsequent calls to Schema Manager endpoints.
|
|
4
|
+
*/
|
|
5
|
+
export declare type DidAuthRequestToken = string;
|
|
6
|
+
export interface DidAuthRequestTokenInput {
|
|
7
|
+
/** DID that user is trying to authenticate with */
|
|
8
|
+
audienceDid: string;
|
|
9
|
+
/**
|
|
10
|
+
* When to expire the request token.
|
|
11
|
+
* @format int32
|
|
12
|
+
*/
|
|
13
|
+
expiresAt?: number;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Schema entity.
|
|
17
|
+
Do not confuse with "JSON schema".
|
|
18
|
+
|
|
19
|
+
Schema is an object that contains:
|
|
20
|
+
- Some metadata: creation date, authorDid, parentId, etc.
|
|
21
|
+
- Links to JSON Schema and JSON-LD context files.
|
|
22
|
+
*/
|
|
23
|
+
export interface SchemaDto {
|
|
24
|
+
/**
|
|
25
|
+
* Internal identifier of the schema.
|
|
26
|
+
* Used for URLs or `parentId` field.
|
|
27
|
+
*/
|
|
28
|
+
id: string;
|
|
29
|
+
/**
|
|
30
|
+
* ID of the parent of the schema.
|
|
31
|
+
* This identifies whether the schema is forked or not.
|
|
32
|
+
* Only used for UX purposes.
|
|
33
|
+
*/
|
|
34
|
+
parentId: string | null;
|
|
35
|
+
/** DID of the schema's author. */
|
|
36
|
+
authorDid: string;
|
|
37
|
+
/**
|
|
38
|
+
* Description of the schema.
|
|
39
|
+
* Only used for UX purposes.
|
|
40
|
+
*/
|
|
41
|
+
description: string | null;
|
|
42
|
+
/**
|
|
43
|
+
* Creation date of the schema.
|
|
44
|
+
* @format date-time
|
|
45
|
+
*/
|
|
46
|
+
createdAt: string;
|
|
47
|
+
/**
|
|
48
|
+
* Namespace of the schema.
|
|
49
|
+
* `null` means that schema is public.
|
|
50
|
+
* Any other value means that schema is unlisted under a namespace.
|
|
51
|
+
* Currently, if namespace exists, it always equals to the `authorDid` field.
|
|
52
|
+
*/
|
|
53
|
+
namespace: string | null;
|
|
54
|
+
/**
|
|
55
|
+
* VC type.
|
|
56
|
+
* Reference: https://www.w3.org/TR/vc-data-model/#types
|
|
57
|
+
*/
|
|
58
|
+
type: string;
|
|
59
|
+
/**
|
|
60
|
+
* Version of the schema.
|
|
61
|
+
* Ideally, each new version should represent a major (breaking) change in the schema.
|
|
62
|
+
* For example: adding new required properties or renaming them.
|
|
63
|
+
* We do not enforce that, so this is only used for UX purposes.
|
|
64
|
+
* @format int32
|
|
65
|
+
*/
|
|
66
|
+
version: number;
|
|
67
|
+
/**
|
|
68
|
+
* Revision of the schema.
|
|
69
|
+
* Ideally, each new revision should represent a minor (backwards compatible) change in the schema.
|
|
70
|
+
* For example: moving properties from one place to another, adding new optional properties.
|
|
71
|
+
* @format int32
|
|
72
|
+
*/
|
|
73
|
+
revision: number;
|
|
74
|
+
/**
|
|
75
|
+
* Link to the JSON schema file that is used for VC validation.
|
|
76
|
+
* Reference: https://www.w3.org/TR/vc-data-model/#data-schemas
|
|
77
|
+
*/
|
|
78
|
+
jsonSchemaUrl: string;
|
|
79
|
+
/**
|
|
80
|
+
* Link to the JSON-LD context file.
|
|
81
|
+
* Reference: https://www.w3.org/TR/vc-data-model/#contexts
|
|
82
|
+
*/
|
|
83
|
+
jsonLdContextUrl: string;
|
|
84
|
+
}
|
|
85
|
+
export interface CreateSchemaInputDto {
|
|
86
|
+
/**
|
|
87
|
+
* DID of the schema's author.
|
|
88
|
+
* Required if console authentication is used.
|
|
89
|
+
*/
|
|
90
|
+
authorDid?: string;
|
|
91
|
+
/**
|
|
92
|
+
* Description of the schema.
|
|
93
|
+
* Only used for UX purposes.
|
|
94
|
+
*/
|
|
95
|
+
description?: string | null;
|
|
96
|
+
/**
|
|
97
|
+
* ID of the parent of the schema.
|
|
98
|
+
* This identifies whether the schema is forked or not.
|
|
99
|
+
* Only used for UX purposes.
|
|
100
|
+
*/
|
|
101
|
+
parentId?: string | null;
|
|
102
|
+
/**
|
|
103
|
+
* Scope of the schema can be either public or unlisted.
|
|
104
|
+
* Unlisted schemas do not appear in the search, unless you are their owner.
|
|
105
|
+
* Unlisted schemas can still be accessed by their ID, so they are not private.
|
|
106
|
+
* Unlisted schemas are prefixed with author's DID.
|
|
107
|
+
*/
|
|
108
|
+
scope: 'public' | 'unlisted';
|
|
109
|
+
/**
|
|
110
|
+
* VC type.
|
|
111
|
+
* Reference: https://www.w3.org/TR/vc-data-model/#types
|
|
112
|
+
* @pattern ^[a-zA-Z0-9]{2,}$
|
|
113
|
+
*/
|
|
114
|
+
type: string;
|
|
115
|
+
/**
|
|
116
|
+
* Version of the schema.
|
|
117
|
+
* Ideally, each new version should represent a major (breaking) change in the schema.
|
|
118
|
+
* For example: adding new required properties or renaming them.
|
|
119
|
+
* We do not enforce that, so this is only used for UX purposes.
|
|
120
|
+
* @format int32
|
|
121
|
+
* @min 1
|
|
122
|
+
*/
|
|
123
|
+
version: number;
|
|
124
|
+
/**
|
|
125
|
+
* Revision of the schema.
|
|
126
|
+
* Ideally, each new revision should represent a minor (backwards compatible) change in the schema.
|
|
127
|
+
* For example: moving properties from one place to another, adding new optional properties.
|
|
128
|
+
* @format int32
|
|
129
|
+
* @min 0
|
|
130
|
+
* @max 999
|
|
131
|
+
*/
|
|
132
|
+
revision: number;
|
|
133
|
+
/**
|
|
134
|
+
* JSON representation of the JSON schema file that is used for VC validation.
|
|
135
|
+
* Reference: https://www.w3.org/TR/vc-data-model/#data-schemas
|
|
136
|
+
*/
|
|
137
|
+
jsonSchema: Record<string, any>;
|
|
138
|
+
/**
|
|
139
|
+
* JSON representation of the JSON-LD context file.
|
|
140
|
+
* Reference: https://www.w3.org/TR/vc-data-model/#contexts
|
|
141
|
+
*/
|
|
142
|
+
jsonLdContext: Record<string, any>;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Paginated schema search results.
|
|
146
|
+
*/
|
|
147
|
+
export interface SearchSchemasOutputDto {
|
|
148
|
+
/**
|
|
149
|
+
* List of found schemas by the provided criteria.
|
|
150
|
+
* Sorted from the newest (highest version & revision) to oldest.
|
|
151
|
+
*/
|
|
152
|
+
schemas: SchemaDto[];
|
|
153
|
+
/**
|
|
154
|
+
* Total amount of schemas that are found by the provided criteria.
|
|
155
|
+
* @format int32
|
|
156
|
+
*/
|
|
157
|
+
count: number;
|
|
158
|
+
}
|
|
159
|
+
import { AxiosInstance, AxiosRequestConfig, AxiosResponse, ResponseType } from 'axios';
|
|
160
|
+
export declare type QueryParamsType = Record<string | number, any>;
|
|
161
|
+
export interface FullRequestParams extends Omit<AxiosRequestConfig, 'data' | 'params' | 'url' | 'responseType'> {
|
|
162
|
+
/** set parameter to `true` for call `securityWorker` for this request */
|
|
163
|
+
secure?: boolean;
|
|
164
|
+
/** request path */
|
|
165
|
+
path: string;
|
|
166
|
+
/** content type of request body */
|
|
167
|
+
type?: ContentType;
|
|
168
|
+
/** query params */
|
|
169
|
+
query?: QueryParamsType;
|
|
170
|
+
/** format of response (i.e. response.json() -> format: "json") */
|
|
171
|
+
format?: ResponseType;
|
|
172
|
+
/** request body */
|
|
173
|
+
body?: unknown;
|
|
174
|
+
}
|
|
175
|
+
export declare type RequestParams = Omit<FullRequestParams, 'body' | 'method' | 'query' | 'path'>;
|
|
176
|
+
export interface ApiConfig<SecurityDataType = unknown> extends Omit<AxiosRequestConfig, 'data' | 'cancelToken'> {
|
|
177
|
+
securityWorker?: (securityData: SecurityDataType | null) => Promise<AxiosRequestConfig | void> | AxiosRequestConfig | void;
|
|
178
|
+
secure?: boolean;
|
|
179
|
+
format?: ResponseType;
|
|
180
|
+
}
|
|
181
|
+
export declare enum ContentType {
|
|
182
|
+
Json = "application/json",
|
|
183
|
+
FormData = "multipart/form-data",
|
|
184
|
+
UrlEncoded = "application/x-www-form-urlencoded"
|
|
185
|
+
}
|
|
186
|
+
export declare class HttpClient<SecurityDataType = unknown> {
|
|
187
|
+
instance: AxiosInstance;
|
|
188
|
+
private securityData;
|
|
189
|
+
private securityWorker?;
|
|
190
|
+
private secure?;
|
|
191
|
+
private format?;
|
|
192
|
+
constructor({ securityWorker, secure, format, ...axiosConfig }?: ApiConfig<SecurityDataType>);
|
|
193
|
+
setSecurityData: (data: SecurityDataType | null) => void;
|
|
194
|
+
protected mergeRequestParams(params1: AxiosRequestConfig, params2?: AxiosRequestConfig): AxiosRequestConfig;
|
|
195
|
+
protected stringifyFormItem(formItem: unknown): string;
|
|
196
|
+
protected createFormData(input: Record<string, unknown>): FormData;
|
|
197
|
+
request: <T = any, _E = any>({ secure, path, type, query, format, body, ...params }: FullRequestParams) => Promise<AxiosResponse<T, any>>;
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* @title @affinidi/schema-manager
|
|
201
|
+
* @version 1.14.2
|
|
202
|
+
* @license ISC
|
|
203
|
+
* @baseUrl /api/v1
|
|
204
|
+
* @contact Vitaly Rudenko <vitaly.r@affinidi.com>
|
|
205
|
+
*
|
|
206
|
+
* Schema Manager API
|
|
207
|
+
*/
|
|
208
|
+
export declare class Api<SecurityDataType extends unknown> extends HttpClient<SecurityDataType> {
|
|
209
|
+
didAuth: {
|
|
210
|
+
/**
|
|
211
|
+
* @description You can see <a href='https://swimlanes.io/u/GolxCmVL0' target='_blank' rel='noreferrer noopener'>this flow</a> for reference. In general, the client sends request to the server that he wants to get authenticated. The server creates a request and client creates response for that request, and that response using as auth.
|
|
212
|
+
*
|
|
213
|
+
* @tags SchemaManagerDidAuthentication
|
|
214
|
+
* @name SchemaManagerCreateDidAuthRequest
|
|
215
|
+
* @request POST:/did-auth/create-did-auth-request
|
|
216
|
+
*/
|
|
217
|
+
schemaManagerCreateDidAuthRequest: (data: DidAuthRequestTokenInput, params?: RequestParams) => Promise<AxiosResponse<string, any>>;
|
|
218
|
+
};
|
|
219
|
+
schemas: {
|
|
220
|
+
/**
|
|
221
|
+
* @description Create a VC schema. VC schema consists of two files: - JSON-LD context for describing the fields, - JSON schema for validating the fields.
|
|
222
|
+
*
|
|
223
|
+
* @tags Schema
|
|
224
|
+
* @name CreateSchema
|
|
225
|
+
* @request POST:/schemas
|
|
226
|
+
* @secure
|
|
227
|
+
*/
|
|
228
|
+
createSchema: (data: CreateSchemaInputDto, params?: RequestParams) => Promise<AxiosResponse<SchemaDto, any>>;
|
|
229
|
+
/**
|
|
230
|
+
* No description
|
|
231
|
+
*
|
|
232
|
+
* @tags Schema
|
|
233
|
+
* @name SearchSchemas
|
|
234
|
+
* @request GET:/schemas
|
|
235
|
+
* @secure
|
|
236
|
+
*/
|
|
237
|
+
searchSchemas: (query?: {
|
|
238
|
+
/** Search by scope: only public, only unlisted (that you own) or both. */
|
|
239
|
+
scope?: 'public' | 'unlisted' | 'default';
|
|
240
|
+
/** Schema author's DID */
|
|
241
|
+
authorDid?: string;
|
|
242
|
+
/**
|
|
243
|
+
* Partial search by type. For example: `BusinessCard*`, `*CardVC` or `*Card*`
|
|
244
|
+
* @pattern ^(?=.*\*)\*?[a-zA-Z0-9]{2,}\*?$
|
|
245
|
+
*/
|
|
246
|
+
query?: string;
|
|
247
|
+
/** Search by exact type */
|
|
248
|
+
type?: string;
|
|
249
|
+
/**
|
|
250
|
+
* Search by exact version (can be useful to find the latest revision)
|
|
251
|
+
* @format int32
|
|
252
|
+
* @min 1
|
|
253
|
+
*/
|
|
254
|
+
version?: number;
|
|
255
|
+
/**
|
|
256
|
+
* Pagination parameter for skipping search results
|
|
257
|
+
* @format int32
|
|
258
|
+
* @min 0
|
|
259
|
+
*/
|
|
260
|
+
skip?: number;
|
|
261
|
+
/**
|
|
262
|
+
* Pagination parameter for limiting search results
|
|
263
|
+
* @format int32
|
|
264
|
+
* @min 1
|
|
265
|
+
* @max 1000
|
|
266
|
+
*/
|
|
267
|
+
limit?: number;
|
|
268
|
+
did?: string;
|
|
269
|
+
}, params?: RequestParams) => Promise<AxiosResponse<SearchSchemasOutputDto, any>>;
|
|
270
|
+
/**
|
|
271
|
+
* @description Get schema by its internal ID.
|
|
272
|
+
*
|
|
273
|
+
* @tags Schema
|
|
274
|
+
* @name GetSchema
|
|
275
|
+
* @request GET:/schemas/{schemaId}
|
|
276
|
+
*/
|
|
277
|
+
getSchema: (schemaId: string, params?: RequestParams) => Promise<AxiosResponse<SchemaDto, any>>;
|
|
278
|
+
};
|
|
279
|
+
}
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/* tslint:disable */
|
|
4
|
+
/*
|
|
5
|
+
* ---------------------------------------------------------------
|
|
6
|
+
* ## THIS FILE WAS GENERATED VIA SWAGGER-TYPESCRIPT-API ##
|
|
7
|
+
* ## ##
|
|
8
|
+
* ## AUTHOR: acacode ##
|
|
9
|
+
* ## SOURCE: https://github.com/acacode/swagger-typescript-api ##
|
|
10
|
+
* ---------------------------------------------------------------
|
|
11
|
+
*/
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.Api = exports.HttpClient = exports.ContentType = void 0;
|
|
14
|
+
const tslib_1 = require("tslib");
|
|
15
|
+
const axios_1 = tslib_1.__importDefault(require("axios"));
|
|
16
|
+
var ContentType;
|
|
17
|
+
(function (ContentType) {
|
|
18
|
+
ContentType["Json"] = "application/json";
|
|
19
|
+
ContentType["FormData"] = "multipart/form-data";
|
|
20
|
+
ContentType["UrlEncoded"] = "application/x-www-form-urlencoded";
|
|
21
|
+
})(ContentType = exports.ContentType || (exports.ContentType = {}));
|
|
22
|
+
class HttpClient {
|
|
23
|
+
constructor({ securityWorker, secure, format, ...axiosConfig } = {}) {
|
|
24
|
+
this.securityData = null;
|
|
25
|
+
this.setSecurityData = (data) => {
|
|
26
|
+
this.securityData = data;
|
|
27
|
+
};
|
|
28
|
+
this.request = async ({ secure, path, type, query, format, body, ...params }) => {
|
|
29
|
+
const secureParams = ((typeof secure === 'boolean' ? secure : this.secure) &&
|
|
30
|
+
this.securityWorker &&
|
|
31
|
+
(await this.securityWorker(this.securityData))) ||
|
|
32
|
+
{};
|
|
33
|
+
const requestParams = this.mergeRequestParams(params, secureParams);
|
|
34
|
+
const responseFormat = format || this.format || undefined;
|
|
35
|
+
if (type === ContentType.FormData && body && body !== null && typeof body === 'object') {
|
|
36
|
+
body = this.createFormData(body);
|
|
37
|
+
}
|
|
38
|
+
return this.instance.request({
|
|
39
|
+
...requestParams,
|
|
40
|
+
headers: {
|
|
41
|
+
...(requestParams.headers || {}),
|
|
42
|
+
...(type && type !== ContentType.FormData ? { 'Content-Type': type } : {}),
|
|
43
|
+
},
|
|
44
|
+
params: query,
|
|
45
|
+
responseType: responseFormat,
|
|
46
|
+
data: body,
|
|
47
|
+
url: path,
|
|
48
|
+
});
|
|
49
|
+
};
|
|
50
|
+
this.instance = axios_1.default.create({ ...axiosConfig, baseURL: axiosConfig.baseURL || '/api/v1' });
|
|
51
|
+
this.secure = secure;
|
|
52
|
+
this.format = format;
|
|
53
|
+
this.securityWorker = securityWorker;
|
|
54
|
+
}
|
|
55
|
+
mergeRequestParams(params1, params2) {
|
|
56
|
+
const method = params1.method || (params2 && params2.method);
|
|
57
|
+
return {
|
|
58
|
+
...this.instance.defaults,
|
|
59
|
+
...params1,
|
|
60
|
+
...(params2 || {}),
|
|
61
|
+
headers: {
|
|
62
|
+
...((method &&
|
|
63
|
+
this.instance.defaults.headers[method.toLowerCase()]) ||
|
|
64
|
+
{}),
|
|
65
|
+
...(params1.headers || {}),
|
|
66
|
+
...((params2 && params2.headers) || {}),
|
|
67
|
+
},
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
stringifyFormItem(formItem) {
|
|
71
|
+
if (typeof formItem === 'object' && formItem !== null) {
|
|
72
|
+
return JSON.stringify(formItem);
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
return `${formItem}`;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
createFormData(input) {
|
|
79
|
+
return Object.keys(input || {}).reduce((formData, key) => {
|
|
80
|
+
const property = input[key];
|
|
81
|
+
const propertyContent = property instanceof Array ? property : [property];
|
|
82
|
+
for (const formItem of propertyContent) {
|
|
83
|
+
const isFileType = formItem instanceof Blob || formItem instanceof File;
|
|
84
|
+
formData.append(key, isFileType ? formItem : this.stringifyFormItem(formItem));
|
|
85
|
+
}
|
|
86
|
+
return formData;
|
|
87
|
+
}, new FormData());
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
exports.HttpClient = HttpClient;
|
|
91
|
+
/**
|
|
92
|
+
* @title @affinidi/schema-manager
|
|
93
|
+
* @version 1.14.2
|
|
94
|
+
* @license ISC
|
|
95
|
+
* @baseUrl /api/v1
|
|
96
|
+
* @contact Vitaly Rudenko <vitaly.r@affinidi.com>
|
|
97
|
+
*
|
|
98
|
+
* Schema Manager API
|
|
99
|
+
*/
|
|
100
|
+
class Api extends HttpClient {
|
|
101
|
+
constructor() {
|
|
102
|
+
super(...arguments);
|
|
103
|
+
this.didAuth = {
|
|
104
|
+
/**
|
|
105
|
+
* @description You can see <a href='https://swimlanes.io/u/GolxCmVL0' target='_blank' rel='noreferrer noopener'>this flow</a> for reference. In general, the client sends request to the server that he wants to get authenticated. The server creates a request and client creates response for that request, and that response using as auth.
|
|
106
|
+
*
|
|
107
|
+
* @tags SchemaManagerDidAuthentication
|
|
108
|
+
* @name SchemaManagerCreateDidAuthRequest
|
|
109
|
+
* @request POST:/did-auth/create-did-auth-request
|
|
110
|
+
*/
|
|
111
|
+
schemaManagerCreateDidAuthRequest: (data, params = {}) => this.request({
|
|
112
|
+
path: `/did-auth/create-did-auth-request`,
|
|
113
|
+
method: 'POST',
|
|
114
|
+
body: data,
|
|
115
|
+
type: ContentType.Json,
|
|
116
|
+
format: 'json',
|
|
117
|
+
...params,
|
|
118
|
+
}),
|
|
119
|
+
};
|
|
120
|
+
this.schemas = {
|
|
121
|
+
/**
|
|
122
|
+
* @description Create a VC schema. VC schema consists of two files: - JSON-LD context for describing the fields, - JSON schema for validating the fields.
|
|
123
|
+
*
|
|
124
|
+
* @tags Schema
|
|
125
|
+
* @name CreateSchema
|
|
126
|
+
* @request POST:/schemas
|
|
127
|
+
* @secure
|
|
128
|
+
*/
|
|
129
|
+
createSchema: (data, params = {}) => this.request({
|
|
130
|
+
path: `/schemas`,
|
|
131
|
+
method: 'POST',
|
|
132
|
+
body: data,
|
|
133
|
+
secure: true,
|
|
134
|
+
type: ContentType.Json,
|
|
135
|
+
format: 'json',
|
|
136
|
+
...params,
|
|
137
|
+
}),
|
|
138
|
+
/**
|
|
139
|
+
* No description
|
|
140
|
+
*
|
|
141
|
+
* @tags Schema
|
|
142
|
+
* @name SearchSchemas
|
|
143
|
+
* @request GET:/schemas
|
|
144
|
+
* @secure
|
|
145
|
+
*/
|
|
146
|
+
searchSchemas: (query, params = {}) => this.request({
|
|
147
|
+
path: `/schemas`,
|
|
148
|
+
method: 'GET',
|
|
149
|
+
query: query,
|
|
150
|
+
secure: true,
|
|
151
|
+
format: 'json',
|
|
152
|
+
...params,
|
|
153
|
+
}),
|
|
154
|
+
/**
|
|
155
|
+
* @description Get schema by its internal ID.
|
|
156
|
+
*
|
|
157
|
+
* @tags Schema
|
|
158
|
+
* @name GetSchema
|
|
159
|
+
* @request GET:/schemas/{schemaId}
|
|
160
|
+
*/
|
|
161
|
+
getSchema: (schemaId, params = {}) => this.request({
|
|
162
|
+
path: `/schemas/${schemaId}`,
|
|
163
|
+
method: 'GET',
|
|
164
|
+
format: 'json',
|
|
165
|
+
...params,
|
|
166
|
+
}),
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
exports.Api = Api;
|
|
171
|
+
//# sourceMappingURL=schema-manager.api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-manager.api.js","sourceRoot":"","sources":["../../../src/services/schema-manager/schema-manager.api.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Api as UserManagementApi } from './user-management.api';
|
|
2
|
+
declare type SessionToken = string;
|
|
3
|
+
declare type AuthFlow = 'login' | 'signup';
|
|
4
|
+
export declare const USER_MANAGEMENT_URL = "https://console-user-management.apse1.affinidi.com/api/v1";
|
|
5
|
+
declare type Session = {
|
|
6
|
+
id: string;
|
|
7
|
+
accessToken: string;
|
|
8
|
+
account: {
|
|
9
|
+
id: string;
|
|
10
|
+
label: string;
|
|
11
|
+
};
|
|
12
|
+
scopes: string[];
|
|
13
|
+
};
|
|
14
|
+
export declare const parseJwt: (token: string) => any;
|
|
15
|
+
export declare const getSession: () => Session;
|
|
16
|
+
export declare const createSession: (accountLabel: string, accountId: string, accessToken: string, scopes?: string[]) => Session;
|
|
17
|
+
declare class UserManagementService {
|
|
18
|
+
private readonly client;
|
|
19
|
+
constructor(client?: UserManagementApi<unknown>);
|
|
20
|
+
private readonly confirm;
|
|
21
|
+
signUp: (username: string) => Promise<string>;
|
|
22
|
+
login: (username: string) => Promise<string>;
|
|
23
|
+
confirmAndGetToken: (token: string, confirmationCode: string, flow: AuthFlow) => Promise<SessionToken>;
|
|
24
|
+
signout: ({ token }: {
|
|
25
|
+
token: string;
|
|
26
|
+
}) => Promise<void>;
|
|
27
|
+
me: () => Promise<{
|
|
28
|
+
tenantIds?: string;
|
|
29
|
+
role?: string;
|
|
30
|
+
userId: string;
|
|
31
|
+
username: string;
|
|
32
|
+
}>;
|
|
33
|
+
}
|
|
34
|
+
declare const userManagementService: UserManagementService;
|
|
35
|
+
export { userManagementService };
|