@credo-ts/core 0.6.0-pr-2195-20250218041242 → 0.6.0-pr-2195-20250218154951
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/build/modules/dcql/DcqlService.d.ts +4 -4
- package/build/modules/dcql/DcqlService.js +12 -15
- package/build/modules/dcql/DcqlService.js.map +1 -1
- package/build/modules/dcql/utils/DcqlPresentationsToCreate.d.ts +2 -2
- package/build/modules/dcql/utils/DcqlPresentationsToCreate.js +1 -1
- package/build/modules/dcql/utils/DcqlPresentationsToCreate.js.map +1 -1
- package/build/modules/dif-presentation-exchange/DifPresentationExchangeService.d.ts +3 -3
- package/build/modules/dif-presentation-exchange/DifPresentationExchangeService.js +1 -1
- package/build/modules/dif-presentation-exchange/DifPresentationExchangeService.js.map +1 -1
- package/build/modules/mdoc/MdocContext.js +1 -1
- package/build/modules/mdoc/MdocContext.js.map +1 -1
- package/build/modules/mdoc/MdocDeviceResponse.d.ts +5 -6
- package/build/modules/mdoc/MdocDeviceResponse.js +45 -45
- package/build/modules/mdoc/MdocDeviceResponse.js.map +1 -1
- package/build/modules/mdoc/MdocOptions.d.ts +22 -18
- package/build/modules/mdoc/MdocService.d.ts +2 -2
- package/build/modules/mdoc/MdocService.js +2 -2
- package/build/modules/mdoc/MdocService.js.map +1 -1
- package/build/modules/mdoc/mdocUtil.d.ts +1 -0
- package/build/modules/mdoc/mdocUtil.js +4 -0
- package/build/modules/mdoc/mdocUtil.js.map +1 -1
- package/build/modules/x509/X509Api.d.ts +4 -4
- package/build/modules/x509/X509Api.js +4 -4
- package/build/modules/x509/X509Api.js.map +1 -1
- package/build/modules/x509/X509Certificate.d.ts +35 -19
- package/build/modules/x509/X509Certificate.js +97 -41
- package/build/modules/x509/X509Certificate.js.map +1 -1
- package/build/modules/x509/X509Service.d.ts +3 -3
- package/build/modules/x509/X509Service.js +2 -2
- package/build/modules/x509/X509Service.js.map +1 -1
- package/build/modules/x509/X509ServiceOptions.d.ts +114 -12
- package/build/modules/x509/extensions/IssuerAlternativeNameExtension.d.ts +8 -0
- package/build/modules/x509/extensions/IssuerAlternativeNameExtension.js +22 -0
- package/build/modules/x509/extensions/IssuerAlternativeNameExtension.js.map +1 -0
- package/build/modules/x509/extensions/index.d.ts +1 -0
- package/build/modules/x509/extensions/index.js +18 -0
- package/build/modules/x509/extensions/index.js.map +1 -0
- package/build/modules/x509/index.d.ts +1 -0
- package/build/modules/x509/index.js +1 -0
- package/build/modules/x509/index.js.map +1 -1
- package/build/modules/x509/utils/extensions.d.ts +15 -0
- package/build/modules/x509/utils/extensions.js +50 -0
- package/build/modules/x509/utils/extensions.js.map +1 -0
- package/build/modules/x509/utils/index.d.ts +2 -0
- package/build/modules/x509/utils/index.js +19 -0
- package/build/modules/x509/utils/index.js.map +1 -0
- package/build/modules/x509/utils/nameConversion.d.ts +2 -0
- package/build/modules/x509/utils/nameConversion.js +24 -0
- package/build/modules/x509/utils/nameConversion.js.map +1 -0
- package/package.json +1 -1
|
@@ -2,7 +2,7 @@ import type { Mdoc } from './Mdoc';
|
|
|
2
2
|
import type { Key } from '../../crypto/Key';
|
|
3
3
|
import type { DifPresentationExchangeDefinition } from '../dif-presentation-exchange';
|
|
4
4
|
import type { EncodedX509Certificate } from '../x509';
|
|
5
|
-
import type {
|
|
5
|
+
import type { ValidityInfo } from '@animo-id/mdoc';
|
|
6
6
|
export { DateOnly } from '@animo-id/mdoc';
|
|
7
7
|
export type MdocNameSpaces = Record<string, Record<string, unknown>>;
|
|
8
8
|
export type MdocVerifyOptions = {
|
|
@@ -10,38 +10,42 @@ export type MdocVerifyOptions = {
|
|
|
10
10
|
now?: Date;
|
|
11
11
|
};
|
|
12
12
|
export type MdocOpenId4VpSessionTranscriptOptions = {
|
|
13
|
+
type: 'openId4Vp';
|
|
13
14
|
responseUri: string;
|
|
14
15
|
clientId: string;
|
|
15
16
|
verifierGeneratedNonce: string;
|
|
16
17
|
mdocGeneratedNonce: string;
|
|
17
18
|
};
|
|
18
|
-
export type
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
export type MdocSessionTranscriptByteOptions = {
|
|
20
|
+
type: 'sesionTranscriptBytes';
|
|
21
|
+
sessionTranscriptBytes: Uint8Array;
|
|
22
|
+
};
|
|
23
|
+
export type MdocOpenId4VpDcApiSessionTranscriptOptions = {
|
|
24
|
+
type: 'openId4VpDcApi';
|
|
25
|
+
clientId: string;
|
|
26
|
+
origin: string;
|
|
27
|
+
verifierGeneratedNonce: string;
|
|
28
|
+
};
|
|
29
|
+
export type MdocSessionTranscriptOptions = MdocOpenId4VpSessionTranscriptOptions | MdocSessionTranscriptByteOptions | MdocOpenId4VpDcApiSessionTranscriptOptions;
|
|
30
|
+
export type MdocDocumentRequest = {
|
|
31
|
+
docType: string;
|
|
32
|
+
nameSpaces: Record<string, Record<string, boolean>>;
|
|
23
33
|
};
|
|
24
34
|
export type MdocDeviceResponseOptions = {
|
|
25
35
|
mdocs: [Mdoc, ...Mdoc[]];
|
|
26
|
-
|
|
36
|
+
documentRequests: MdocDocumentRequest[];
|
|
27
37
|
deviceNameSpaces?: MdocNameSpaces;
|
|
28
|
-
|
|
38
|
+
sessionTranscriptOptions: MdocSessionTranscriptOptions;
|
|
29
39
|
};
|
|
30
|
-
export type
|
|
31
|
-
itemsRequestData: {
|
|
32
|
-
docType: string;
|
|
33
|
-
nameSpaces: Record<string, Record<string, boolean>>;
|
|
34
|
-
};
|
|
35
|
-
};
|
|
36
|
-
export type MdocDcqlDeviceResponseOpenId4VpOptions = {
|
|
40
|
+
export type MdocDeviceResponsePresentationDefinitionOptions = {
|
|
37
41
|
mdocs: [Mdoc, ...Mdoc[]];
|
|
38
|
-
|
|
42
|
+
presentationDefinition: DifPresentationExchangeDefinition;
|
|
39
43
|
deviceNameSpaces?: MdocNameSpaces;
|
|
40
|
-
sessionTranscriptOptions:
|
|
44
|
+
sessionTranscriptOptions: MdocSessionTranscriptOptions;
|
|
41
45
|
};
|
|
42
46
|
export type MdocDeviceResponseVerifyOptions = {
|
|
43
47
|
trustedCertificates?: EncodedX509Certificate[];
|
|
44
|
-
sessionTranscriptOptions:
|
|
48
|
+
sessionTranscriptOptions: MdocSessionTranscriptOptions;
|
|
45
49
|
/**
|
|
46
50
|
* The base64Url-encoded device response string.
|
|
47
51
|
*/
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { MdocSignOptions,
|
|
1
|
+
import type { MdocSignOptions, MdocDeviceResponsePresentationDefinitionOptions, MdocDeviceResponseVerifyOptions, MdocVerifyOptions, MdocDeviceResponseOptions } from './MdocOptions';
|
|
2
2
|
import type { Query, QueryOptions } from '../../storage/StorageService';
|
|
3
3
|
import { AgentContext } from '../../agent';
|
|
4
4
|
import { Mdoc } from './Mdoc';
|
|
@@ -18,7 +18,7 @@ export declare class MdocService {
|
|
|
18
18
|
error: string;
|
|
19
19
|
}>;
|
|
20
20
|
createDeviceResponse(agentContext: AgentContext, options: MdocDeviceResponseOptions): Promise<Uint8Array>;
|
|
21
|
-
|
|
21
|
+
createPresentationDefinitionDeviceResponse(agentContext: AgentContext, options: MdocDeviceResponsePresentationDefinitionOptions): Promise<{
|
|
22
22
|
deviceResponseBase64Url: string;
|
|
23
23
|
presentationSubmission: {
|
|
24
24
|
id: string;
|
|
@@ -33,8 +33,8 @@ let MdocService = class MdocService {
|
|
|
33
33
|
async createDeviceResponse(agentContext, options) {
|
|
34
34
|
return MdocDeviceResponse_1.MdocDeviceResponse.createDeviceResponse(agentContext, options);
|
|
35
35
|
}
|
|
36
|
-
async
|
|
37
|
-
return MdocDeviceResponse_1.MdocDeviceResponse.
|
|
36
|
+
async createPresentationDefinitionDeviceResponse(agentContext, options) {
|
|
37
|
+
return MdocDeviceResponse_1.MdocDeviceResponse.createPresentationDefinitionDeviceResponse(agentContext, options);
|
|
38
38
|
}
|
|
39
39
|
async verifyDeviceResponse(agentContext, options) {
|
|
40
40
|
const deviceResponse = MdocDeviceResponse_1.MdocDeviceResponse.fromBase64Url(options.deviceResponse);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MdocService.js","sourceRoot":"","sources":["../../../src/modules/mdoc/MdocService.ts"],"names":[],"mappings":";;;;;;;;;;;;AASA,uCAAqC;AAIrC,iCAA6B;AAC7B,6DAAyD;AACzD,6CAAyD;AAEzD;;GAEG;AAEI,IAAM,WAAW,GAAjB,MAAM,WAAW;IAGtB,YAAmB,cAA8B;QAC/C,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;IACtC,CAAC;IAEM,iBAAiB,CAAC,cAAsB;QAC7C,OAAO,WAAI,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;IAC3C,CAAC;IAEM,QAAQ,CAAC,YAA0B,EAAE,OAAwB;QAClE,OAAO,WAAI,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IACzC,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,YAA0B,EAAE,IAAU,EAAE,OAA0B;QACxF,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IACjD,CAAC;IAEM,KAAK,CAAC,oBAAoB,CAAC,YAA0B,EAAE,OAAkC;QAC9F,OAAO,uCAAkB,CAAC,oBAAoB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IACvE,CAAC;IAEM,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"MdocService.js","sourceRoot":"","sources":["../../../src/modules/mdoc/MdocService.ts"],"names":[],"mappings":";;;;;;;;;;;;AASA,uCAAqC;AAIrC,iCAA6B;AAC7B,6DAAyD;AACzD,6CAAyD;AAEzD;;GAEG;AAEI,IAAM,WAAW,GAAjB,MAAM,WAAW;IAGtB,YAAmB,cAA8B;QAC/C,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;IACtC,CAAC;IAEM,iBAAiB,CAAC,cAAsB;QAC7C,OAAO,WAAI,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;IAC3C,CAAC;IAEM,QAAQ,CAAC,YAA0B,EAAE,OAAwB;QAClE,OAAO,WAAI,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IACzC,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,YAA0B,EAAE,IAAU,EAAE,OAA0B;QACxF,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IACjD,CAAC;IAEM,KAAK,CAAC,oBAAoB,CAAC,YAA0B,EAAE,OAAkC;QAC9F,OAAO,uCAAkB,CAAC,oBAAoB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IACvE,CAAC;IAEM,KAAK,CAAC,0CAA0C,CACrD,YAA0B,EAC1B,OAAwD;QAExD,OAAO,uCAAkB,CAAC,0CAA0C,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IAC7F,CAAC;IAEM,KAAK,CAAC,oBAAoB,CAAC,YAA0B,EAAE,OAAwC;QACpG,MAAM,cAAc,GAAG,uCAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;QAC/E,OAAO,cAAc,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IACrD,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,YAA0B,EAAE,IAAU;QACvD,MAAM,UAAU,GAAG,IAAI,uBAAU,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3C,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,CAAA;QAExD,OAAO,UAAU,CAAA;IACnB,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,YAA0B,EAAE,EAAU;QACzD,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;IAC5D,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,YAA0B;QAC5C,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;IACvD,CAAC;IAEM,KAAK,CAAC,WAAW,CACtB,YAA0B,EAC1B,KAAwB,EACxB,YAA2B;QAE3B,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,YAAY,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;IACjF,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,YAA0B,EAAE,EAAU;QAC5D,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;IACxD,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,YAA0B,EAAE,UAAsB;QACpE,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAA;IAC5D,CAAC;CACF,CAAA;AAjEY,kCAAW;sBAAX,WAAW;IADvB,IAAA,qBAAU,GAAE;qCAIwB,2BAAc;GAHtC,WAAW,CAiEvB"}
|
|
@@ -1 +1,2 @@
|
|
|
1
1
|
export declare function nameSpacesRecordToMap<NamespaceValue extends unknown, NameSpaces extends Record<string, Record<string, NamespaceValue>>>(nameSpaces: NameSpaces): Map<string, Map<string, NamespaceValue>>;
|
|
2
|
+
export declare function namespacesMapToRecord<NamespaceValue extends unknown, NameSpaces extends Map<string, Map<string, NamespaceValue>>>(nameSpaces: NameSpaces): Record<string, Record<string, NamespaceValue>>;
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.nameSpacesRecordToMap = nameSpacesRecordToMap;
|
|
4
|
+
exports.namespacesMapToRecord = namespacesMapToRecord;
|
|
4
5
|
function nameSpacesRecordToMap(nameSpaces) {
|
|
5
6
|
return new Map(Object.entries(nameSpaces).map(([key, value]) => [key, new Map(Object.entries(value))]));
|
|
6
7
|
}
|
|
8
|
+
function namespacesMapToRecord(nameSpaces) {
|
|
9
|
+
return Object.fromEntries(Array.from(nameSpaces.entries()).map(([key, value]) => [key, Object.fromEntries(Array.from(value.entries()))]));
|
|
10
|
+
}
|
|
7
11
|
//# sourceMappingURL=mdocUtil.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mdocUtil.js","sourceRoot":"","sources":["../../../src/modules/mdoc/mdocUtil.ts"],"names":[],"mappings":";;AAAA,sDAMC;
|
|
1
|
+
{"version":3,"file":"mdocUtil.js","sourceRoot":"","sources":["../../../src/modules/mdoc/mdocUtil.ts"],"names":[],"mappings":";;AAAA,sDAMC;AAED,sDAQC;AAhBD,SAAgB,qBAAqB,CAInC,UAAsB;IACtB,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAU,CAAC,CAAC,CAAA;AAClH,CAAC;AAED,SAAgB,qBAAqB,CAInC,UAAsB;IACtB,OAAO,MAAM,CAAC,WAAW,CACvB,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAC/G,CAAA;AACH,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AgentContext } from '../../agent';
|
|
2
2
|
import { X509ModuleConfig } from './X509ModuleConfig';
|
|
3
|
-
import {
|
|
3
|
+
import { X509CreateCertificateOptions, X509ValidateCertificateChainOptions } from './X509ServiceOptions';
|
|
4
4
|
/**
|
|
5
5
|
* @public
|
|
6
6
|
*/
|
|
@@ -21,11 +21,11 @@ export declare class X509Api {
|
|
|
21
21
|
*/
|
|
22
22
|
setTrustedCertificates(certificates?: [string, ...string[]]): Promise<void>;
|
|
23
23
|
/**
|
|
24
|
-
* Creates a
|
|
24
|
+
* Creates a X.509 certificate.
|
|
25
25
|
*
|
|
26
|
-
* @param options
|
|
26
|
+
* @param options X509CreateCertificateOptions
|
|
27
27
|
*/
|
|
28
|
-
|
|
28
|
+
createCertificate(options: X509CreateCertificateOptions): Promise<import("./X509Certificate").X509Certificate>;
|
|
29
29
|
/**
|
|
30
30
|
* Validate a certificate chain.
|
|
31
31
|
*
|
|
@@ -39,12 +39,12 @@ let X509Api = class X509Api {
|
|
|
39
39
|
this.x509ModuleConfig.setTrustedCertificates(certificates);
|
|
40
40
|
}
|
|
41
41
|
/**
|
|
42
|
-
* Creates a
|
|
42
|
+
* Creates a X.509 certificate.
|
|
43
43
|
*
|
|
44
|
-
* @param options
|
|
44
|
+
* @param options X509CreateCertificateOptions
|
|
45
45
|
*/
|
|
46
|
-
async
|
|
47
|
-
return await X509Service_1.X509Service.
|
|
46
|
+
async createCertificate(options) {
|
|
47
|
+
return await X509Service_1.X509Service.createCertificate(this.agentContext, options);
|
|
48
48
|
}
|
|
49
49
|
/**
|
|
50
50
|
* Validate a certificate chain.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"X509Api.js","sourceRoot":"","sources":["../../../src/modules/x509/X509Api.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAA0C;AAC1C,2CAA0C;AAE1C,yDAAqD;AACrD,+CAA2C;AAG3C;;GAEG;AAEI,IAAM,OAAO,GAAb,MAAM,OAAO;IAClB,YAA2B,YAA0B,EAAU,gBAAkC;QAAtE,iBAAY,GAAZ,YAAY,CAAc;QAAU,qBAAgB,GAAhB,gBAAgB,CAAkB;IAAG,CAAC;IAErG;;;;OAIG;IACI,qBAAqB,CAAC,WAAmB;QAC9C,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAA;IAC1D,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,sBAAsB,CAAC,YAAoC;QACtE,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAA;IAC5D,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"X509Api.js","sourceRoot":"","sources":["../../../src/modules/x509/X509Api.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAA0C;AAC1C,2CAA0C;AAE1C,yDAAqD;AACrD,+CAA2C;AAG3C;;GAEG;AAEI,IAAM,OAAO,GAAb,MAAM,OAAO;IAClB,YAA2B,YAA0B,EAAU,gBAAkC;QAAtE,iBAAY,GAAZ,YAAY,CAAc;QAAU,qBAAgB,GAAhB,gBAAgB,CAAkB;IAAG,CAAC;IAErG;;;;OAIG;IACI,qBAAqB,CAAC,WAAmB;QAC9C,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAA;IAC1D,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,sBAAsB,CAAC,YAAoC;QACtE,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAA;IAC5D,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,iBAAiB,CAAC,OAAqC;QAClE,OAAO,MAAM,yBAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IACxE,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,wBAAwB,CAAC,OAA4C;QAChF,OAAO,MAAM,yBAAW,CAAC,wBAAwB,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IAC/E,CAAC;CACF,CAAA;AAtCY,0BAAO;kBAAP,OAAO;IADnB,IAAA,oBAAU,GAAE;qCAE8B,oBAAY,EAA4B,mCAAgB;GADtF,OAAO,CAsCnB"}
|
|
@@ -1,28 +1,32 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { X509CreateCertificateOptions } from './X509ServiceOptions';
|
|
2
2
|
import type { AgentContext } from '../../agent';
|
|
3
3
|
import { Key } from '../../crypto/Key';
|
|
4
4
|
import { CredoWebCrypto } from '../../crypto/webcrypto';
|
|
5
5
|
type ExtensionObjectIdentifier = string;
|
|
6
|
-
type
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
type CanBeCritical<T> = T & {
|
|
7
|
+
critical?: boolean;
|
|
8
|
+
};
|
|
9
|
+
type SubjectAlternativeNameExtension = CanBeCritical<{
|
|
10
|
+
name: Array<{
|
|
11
|
+
type: 'url' | 'dns';
|
|
12
|
+
value: string;
|
|
13
|
+
}>;
|
|
9
14
|
}>;
|
|
10
|
-
type AuthorityKeyIdentifierExtension = {
|
|
15
|
+
type AuthorityKeyIdentifierExtension = CanBeCritical<{
|
|
11
16
|
keyId: string;
|
|
12
|
-
}
|
|
13
|
-
type SubjectKeyIdentifierExtension = {
|
|
17
|
+
}>;
|
|
18
|
+
type SubjectKeyIdentifierExtension = CanBeCritical<{
|
|
14
19
|
keyId: string;
|
|
15
|
-
}
|
|
16
|
-
type KeyUsageExtension = {
|
|
20
|
+
}>;
|
|
21
|
+
type KeyUsageExtension = CanBeCritical<{
|
|
17
22
|
usage: number;
|
|
18
|
-
}
|
|
19
|
-
type
|
|
23
|
+
}>;
|
|
24
|
+
type ExtendedKeyUsageExtension = CanBeCritical<{
|
|
25
|
+
usage: Array<X509ExtendedKeyUsage>;
|
|
26
|
+
}>;
|
|
27
|
+
type ExtensionValues = SubjectAlternativeNameExtension | AuthorityKeyIdentifierExtension | SubjectKeyIdentifierExtension | KeyUsageExtension | ExtendedKeyUsageExtension;
|
|
20
28
|
type Extension = Record<ExtensionObjectIdentifier, ExtensionValues>;
|
|
21
|
-
export
|
|
22
|
-
type: 'dns' | 'url';
|
|
23
|
-
value: string;
|
|
24
|
-
}>>;
|
|
25
|
-
export declare enum KeyUsage {
|
|
29
|
+
export declare enum X509KeyUsage {
|
|
26
30
|
DigitalSignature = 1,
|
|
27
31
|
NonRepudiation = 2,
|
|
28
32
|
KeyEncipherment = 4,
|
|
@@ -33,6 +37,15 @@ export declare enum KeyUsage {
|
|
|
33
37
|
EncipherOnly = 128,
|
|
34
38
|
DecipherOnly = 256
|
|
35
39
|
}
|
|
40
|
+
export declare enum X509ExtendedKeyUsage {
|
|
41
|
+
ServerAuth = "1.3.6.1.5.5.7.3.1",
|
|
42
|
+
ClientAuth = "1.3.6.1.5.5.7.3.2",
|
|
43
|
+
CodeSigning = "1.3.6.1.5.5.7.3.3",
|
|
44
|
+
EmailProtection = "1.3.6.1.5.5.7.3.4",
|
|
45
|
+
TimeStamping = "1.3.6.1.5.5.7.3.8",
|
|
46
|
+
OcspSigning = "1.3.6.1.5.5.7.3.9",
|
|
47
|
+
MdlDs = "1.0.18013.5.1.2"
|
|
48
|
+
}
|
|
36
49
|
export type X509CertificateOptions = {
|
|
37
50
|
publicKey: Key;
|
|
38
51
|
privateKey?: Uint8Array;
|
|
@@ -53,9 +66,12 @@ export declare class X509Certificate {
|
|
|
53
66
|
get sanUriNames(): string[];
|
|
54
67
|
get authorityKeyIdentifier(): string | undefined;
|
|
55
68
|
get subjectKeyIdentifier(): string | undefined;
|
|
56
|
-
get keyUsage(): Array<
|
|
57
|
-
|
|
69
|
+
get keyUsage(): Array<X509KeyUsage>;
|
|
70
|
+
get extendedKeyUsage(): Array<X509ExtendedKeyUsage> | undefined;
|
|
71
|
+
isExtensionCritical(id: string): boolean;
|
|
72
|
+
static create(options: X509CreateCertificateOptions, webCrypto: CredoWebCrypto): Promise<X509Certificate>;
|
|
58
73
|
get subject(): string;
|
|
74
|
+
get issuer(): string;
|
|
59
75
|
verify({ verificationDate, publicKey }: {
|
|
60
76
|
verificationDate: Date;
|
|
61
77
|
publicKey?: Key;
|
|
@@ -63,7 +79,7 @@ export declare class X509Certificate {
|
|
|
63
79
|
/**
|
|
64
80
|
* Get the thumprint of the X509 certificate in hex format.
|
|
65
81
|
*/
|
|
66
|
-
|
|
82
|
+
getThumprintInHex(agentContext: AgentContext): Promise<string>;
|
|
67
83
|
/**
|
|
68
84
|
* Get the data elements of the x509 certificate
|
|
69
85
|
*/
|
|
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.X509Certificate = exports.
|
|
26
|
+
exports.X509Certificate = exports.X509ExtendedKeyUsage = exports.X509KeyUsage = void 0;
|
|
27
27
|
const asn1_schema_1 = require("@peculiar/asn1-schema");
|
|
28
28
|
const asn1_x509_1 = require("@peculiar/asn1-x509");
|
|
29
29
|
const x509 = __importStar(require("@peculiar/x509"));
|
|
@@ -32,18 +32,29 @@ const webcrypto_1 = require("../../crypto/webcrypto");
|
|
|
32
32
|
const utils_1 = require("../../crypto/webcrypto/utils");
|
|
33
33
|
const utils_2 = require("../../utils");
|
|
34
34
|
const X509Error_1 = require("./X509Error");
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
35
|
+
const utils_3 = require("./utils");
|
|
36
|
+
var X509KeyUsage;
|
|
37
|
+
(function (X509KeyUsage) {
|
|
38
|
+
X509KeyUsage[X509KeyUsage["DigitalSignature"] = 1] = "DigitalSignature";
|
|
39
|
+
X509KeyUsage[X509KeyUsage["NonRepudiation"] = 2] = "NonRepudiation";
|
|
40
|
+
X509KeyUsage[X509KeyUsage["KeyEncipherment"] = 4] = "KeyEncipherment";
|
|
41
|
+
X509KeyUsage[X509KeyUsage["DataEncipherment"] = 8] = "DataEncipherment";
|
|
42
|
+
X509KeyUsage[X509KeyUsage["KeyAgreement"] = 16] = "KeyAgreement";
|
|
43
|
+
X509KeyUsage[X509KeyUsage["KeyCertSign"] = 32] = "KeyCertSign";
|
|
44
|
+
X509KeyUsage[X509KeyUsage["CrlSign"] = 64] = "CrlSign";
|
|
45
|
+
X509KeyUsage[X509KeyUsage["EncipherOnly"] = 128] = "EncipherOnly";
|
|
46
|
+
X509KeyUsage[X509KeyUsage["DecipherOnly"] = 256] = "DecipherOnly";
|
|
47
|
+
})(X509KeyUsage || (exports.X509KeyUsage = X509KeyUsage = {}));
|
|
48
|
+
var X509ExtendedKeyUsage;
|
|
49
|
+
(function (X509ExtendedKeyUsage) {
|
|
50
|
+
X509ExtendedKeyUsage["ServerAuth"] = "1.3.6.1.5.5.7.3.1";
|
|
51
|
+
X509ExtendedKeyUsage["ClientAuth"] = "1.3.6.1.5.5.7.3.2";
|
|
52
|
+
X509ExtendedKeyUsage["CodeSigning"] = "1.3.6.1.5.5.7.3.3";
|
|
53
|
+
X509ExtendedKeyUsage["EmailProtection"] = "1.3.6.1.5.5.7.3.4";
|
|
54
|
+
X509ExtendedKeyUsage["TimeStamping"] = "1.3.6.1.5.5.7.3.8";
|
|
55
|
+
X509ExtendedKeyUsage["OcspSigning"] = "1.3.6.1.5.5.7.3.9";
|
|
56
|
+
X509ExtendedKeyUsage["MdlDs"] = "1.0.18013.5.1.2";
|
|
57
|
+
})(X509ExtendedKeyUsage || (exports.X509ExtendedKeyUsage = X509ExtendedKeyUsage = {}));
|
|
47
58
|
class X509Certificate {
|
|
48
59
|
constructor(options) {
|
|
49
60
|
this.extensions = options.extensions;
|
|
@@ -68,16 +79,24 @@ class X509Certificate {
|
|
|
68
79
|
const extensions = certificate.extensions
|
|
69
80
|
.map((e) => {
|
|
70
81
|
if (e instanceof x509.AuthorityKeyIdentifierExtension) {
|
|
71
|
-
return { [e.type]: { keyId: e.keyId } };
|
|
82
|
+
return { [e.type]: { keyId: e.keyId, critical: e.critical } };
|
|
72
83
|
}
|
|
73
84
|
else if (e instanceof x509.SubjectKeyIdentifierExtension) {
|
|
74
|
-
return { [e.type]: { keyId: e.keyId } };
|
|
85
|
+
return { [e.type]: { keyId: e.keyId, critical: e.critical } };
|
|
75
86
|
}
|
|
76
87
|
else if (e instanceof x509.SubjectAlternativeNameExtension) {
|
|
77
|
-
return {
|
|
88
|
+
return {
|
|
89
|
+
[e.type]: {
|
|
90
|
+
name: JSON.parse(JSON.stringify(e.names)),
|
|
91
|
+
critical: e.critical,
|
|
92
|
+
},
|
|
93
|
+
};
|
|
78
94
|
}
|
|
79
95
|
else if (e instanceof x509.KeyUsagesExtension) {
|
|
80
|
-
return { [e.type]: { usage: e.usages } };
|
|
96
|
+
return { [e.type]: { usage: e.usages, critical: e.critical } };
|
|
97
|
+
}
|
|
98
|
+
else if (e instanceof x509.ExtendedKeyUsageExtension) {
|
|
99
|
+
return { [e.type]: { usage: e.usages, critical: e.critical } };
|
|
81
100
|
}
|
|
82
101
|
// TODO: We could throw an error when we don't understand the extension?
|
|
83
102
|
// This will break everytime we do not understand an extension though
|
|
@@ -87,7 +106,7 @@ class X509Certificate {
|
|
|
87
106
|
return new X509Certificate({
|
|
88
107
|
publicKey: key,
|
|
89
108
|
privateKey,
|
|
90
|
-
extensions,
|
|
109
|
+
extensions: extensions.length > 0 ? extensions : undefined,
|
|
91
110
|
rawCertificate: new Uint8Array(certificate.rawData),
|
|
92
111
|
});
|
|
93
112
|
}
|
|
@@ -97,14 +116,14 @@ class X509Certificate {
|
|
|
97
116
|
get sanDnsNames() {
|
|
98
117
|
const san = this.getMatchingExtensions(asn1_x509_1.id_ce_subjectAltName);
|
|
99
118
|
return (san
|
|
100
|
-
?.flatMap((e) => e)
|
|
119
|
+
?.flatMap((e) => e.name)
|
|
101
120
|
?.filter((e) => e.type === 'dns')
|
|
102
121
|
?.map((e) => e.value) ?? []);
|
|
103
122
|
}
|
|
104
123
|
get sanUriNames() {
|
|
105
124
|
const san = this.getMatchingExtensions(asn1_x509_1.id_ce_subjectAltName);
|
|
106
125
|
return (san
|
|
107
|
-
?.flatMap((e) => e)
|
|
126
|
+
?.flatMap((e) => e.name)
|
|
108
127
|
?.filter((e) => e.type === 'url')
|
|
109
128
|
?.map((e) => e.value) ?? []);
|
|
110
129
|
}
|
|
@@ -128,34 +147,67 @@ class X509Certificate {
|
|
|
128
147
|
throw new X509Error_1.X509Error('Multiple Key Usages are not allowed');
|
|
129
148
|
}
|
|
130
149
|
if (keyUsages) {
|
|
131
|
-
return Object.values(
|
|
150
|
+
return Object.values(X509KeyUsage)
|
|
132
151
|
.filter((key) => typeof key === 'number')
|
|
133
152
|
.filter((flagValue) => (keyUsages[0] & flagValue) === flagValue)
|
|
134
153
|
.map((flagValue) => flagValue);
|
|
135
154
|
}
|
|
136
155
|
return [];
|
|
137
156
|
}
|
|
138
|
-
|
|
139
|
-
const
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
const hexPublicKey = utils_2.TypedArrayEncoder.toHex(key.publicKey);
|
|
143
|
-
const x509Extensions = [
|
|
144
|
-
new x509.SubjectKeyIdentifierExtension(hexPublicKey),
|
|
145
|
-
new x509.KeyUsagesExtension(x509.KeyUsageFlags.digitalSignature | x509.KeyUsageFlags.keyCertSign),
|
|
146
|
-
];
|
|
147
|
-
if (includeAuthorityKeyIdentifier) {
|
|
148
|
-
x509Extensions.push(new x509.AuthorityKeyIdentifierExtension(hexPublicKey));
|
|
157
|
+
get extendedKeyUsage() {
|
|
158
|
+
const extendedKeyUsages = this.getMatchingExtensions(asn1_x509_1.id_ce_extKeyUsage)?.map((e) => e.usage);
|
|
159
|
+
if (extendedKeyUsages && extendedKeyUsages.length > 1) {
|
|
160
|
+
throw new X509Error_1.X509Error('Multiple Key Usages are not allowed');
|
|
149
161
|
}
|
|
150
|
-
|
|
151
|
-
|
|
162
|
+
return extendedKeyUsages?.[0];
|
|
163
|
+
}
|
|
164
|
+
isExtensionCritical(id) {
|
|
165
|
+
const extension = this.getMatchingExtensions(id);
|
|
166
|
+
if (!extension) {
|
|
167
|
+
throw new X509Error_1.X509Error(`extension with id '${id}' is not found`);
|
|
152
168
|
}
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
169
|
+
return !!extension[0].critical;
|
|
170
|
+
}
|
|
171
|
+
static async create(options, webCrypto) {
|
|
172
|
+
const subjectPublicKey = options.subjectPublicKey ?? options.authorityKey;
|
|
173
|
+
const isSelfSignedCertificate = options.authorityKey.publicKeyBase58 === subjectPublicKey.publicKeyBase58;
|
|
174
|
+
const signingKey = new webcrypto_1.CredoWebCryptoKey(options.authorityKey, (0, utils_1.credoKeyTypeIntoCryptoKeyAlgorithm)(options.authorityKey.keyType), false, 'private', ['sign']);
|
|
175
|
+
const publicKey = new webcrypto_1.CredoWebCryptoKey(subjectPublicKey, (0, utils_1.credoKeyTypeIntoCryptoKeyAlgorithm)(options.authorityKey.keyType), true, 'public', ['verify']);
|
|
176
|
+
const issuerName = (0, utils_3.convertName)(options.issuer);
|
|
177
|
+
const extensions = [];
|
|
178
|
+
extensions.push((0, utils_3.createSubjectKeyIdentifierExtension)(options.extensions?.subjectKeyIdentifier, { key: subjectPublicKey }));
|
|
179
|
+
extensions.push((0, utils_3.createKeyUsagesExtension)(options.extensions?.keyUsage));
|
|
180
|
+
extensions.push((0, utils_3.createExtendedKeyUsagesExtension)(options.extensions?.extendedKeyUsage));
|
|
181
|
+
extensions.push((0, utils_3.createAuthorityKeyIdentifierExtension)(options.extensions?.authorityKeyIdentifier, { key: options.authorityKey }));
|
|
182
|
+
extensions.push((0, utils_3.createIssuerAlternativeNameExtension)(options.extensions?.issuerAlternativeName));
|
|
183
|
+
extensions.push((0, utils_3.createSubjectAlternativeNameExtension)(options.extensions?.subjectAlternativeName));
|
|
184
|
+
extensions.push((0, utils_3.createBasicConstraintsExtension)(options.extensions?.basicConstraints));
|
|
185
|
+
if (isSelfSignedCertificate) {
|
|
186
|
+
if (options.subject) {
|
|
187
|
+
throw new X509Error_1.X509Error('Do not provide a subject name when the certificate is supposed to be self signed');
|
|
188
|
+
}
|
|
189
|
+
const certificate = await x509.X509CertificateGenerator.createSelfSigned({
|
|
190
|
+
keys: { publicKey, privateKey: signingKey },
|
|
191
|
+
name: issuerName,
|
|
192
|
+
notBefore: options.validity?.notBefore,
|
|
193
|
+
notAfter: options.validity?.notAfter,
|
|
194
|
+
extensions: extensions.filter((e) => e !== undefined),
|
|
195
|
+
serialNumber: options.serialNumber,
|
|
196
|
+
}, webCrypto);
|
|
197
|
+
return X509Certificate.parseCertificate(certificate);
|
|
198
|
+
}
|
|
199
|
+
if (!options.subject) {
|
|
200
|
+
throw new X509Error_1.X509Error('Provide a subject name when the certificate is not supposed to be self signed');
|
|
201
|
+
}
|
|
202
|
+
const subjectName = (0, utils_3.convertName)(options.subject);
|
|
203
|
+
const certificate = await x509.X509CertificateGenerator.create({
|
|
204
|
+
signingKey,
|
|
205
|
+
publicKey,
|
|
206
|
+
issuer: issuerName,
|
|
207
|
+
subject: subjectName,
|
|
208
|
+
notBefore: options.validity?.notBefore,
|
|
209
|
+
notAfter: options.validity?.notAfter,
|
|
210
|
+
extensions: extensions.filter((e) => e !== undefined),
|
|
159
211
|
}, webCrypto);
|
|
160
212
|
return X509Certificate.parseCertificate(certificate);
|
|
161
213
|
}
|
|
@@ -163,6 +215,10 @@ class X509Certificate {
|
|
|
163
215
|
const certificate = new x509.X509Certificate(this.rawCertificate);
|
|
164
216
|
return certificate.subject;
|
|
165
217
|
}
|
|
218
|
+
get issuer() {
|
|
219
|
+
const certificate = new x509.X509Certificate(this.rawCertificate);
|
|
220
|
+
return certificate.issuer;
|
|
221
|
+
}
|
|
166
222
|
async verify({ verificationDate = new Date(), publicKey }, webCrypto) {
|
|
167
223
|
const certificate = new x509.X509Certificate(this.rawCertificate);
|
|
168
224
|
let publicCryptoKey;
|
|
@@ -188,7 +244,7 @@ class X509Certificate {
|
|
|
188
244
|
/**
|
|
189
245
|
* Get the thumprint of the X509 certificate in hex format.
|
|
190
246
|
*/
|
|
191
|
-
async
|
|
247
|
+
async getThumprintInHex(agentContext) {
|
|
192
248
|
const certificate = new x509.X509Certificate(this.rawCertificate);
|
|
193
249
|
const thumbprint = await certificate.getThumbprint(new webcrypto_1.CredoWebCrypto(agentContext));
|
|
194
250
|
const thumbprintHex = utils_2.TypedArrayEncoder.toHex(new Uint8Array(thumbprint));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"X509Certificate.js","sourceRoot":"","sources":["../../../src/modules/x509/X509Certificate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"X509Certificate.js","sourceRoot":"","sources":["../../../src/modules/x509/X509Certificate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { X509ValidateCertificateChainOptions,
|
|
1
|
+
import type { X509ValidateCertificateChainOptions, X509GetLeafCertificateOptions, X509ParseCertificateOptions, X509CreateCertificateOptions } from './X509ServiceOptions';
|
|
2
2
|
import { AgentContext } from '../../agent';
|
|
3
3
|
import { X509Certificate } from './X509Certificate';
|
|
4
4
|
export declare class X509Service {
|
|
@@ -22,6 +22,6 @@ export declare class X509Service {
|
|
|
22
22
|
*
|
|
23
23
|
*/
|
|
24
24
|
static parseCertificate(_agentContext: AgentContext, { encodedCertificate }: X509ParseCertificateOptions): X509Certificate;
|
|
25
|
-
static getLeafCertificate(_agentContext: AgentContext, { certificateChain }:
|
|
26
|
-
static
|
|
25
|
+
static getLeafCertificate(_agentContext: AgentContext, { certificateChain }: X509GetLeafCertificateOptions): X509Certificate;
|
|
26
|
+
static createCertificate(agentContext: AgentContext, options: X509CreateCertificateOptions): Promise<X509Certificate>;
|
|
27
27
|
}
|
|
@@ -96,9 +96,9 @@ let X509Service = class X509Service {
|
|
|
96
96
|
const certificate = X509Certificate_1.X509Certificate.fromEncodedCertificate(certificateChain[0]);
|
|
97
97
|
return certificate;
|
|
98
98
|
}
|
|
99
|
-
static async
|
|
99
|
+
static async createCertificate(agentContext, options) {
|
|
100
100
|
const webCrypto = new webcrypto_1.CredoWebCrypto(agentContext);
|
|
101
|
-
const certificate = await X509Certificate_1.X509Certificate.
|
|
101
|
+
const certificate = await X509Certificate_1.X509Certificate.create(options, webCrypto);
|
|
102
102
|
return certificate;
|
|
103
103
|
}
|
|
104
104
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"X509Service.js","sourceRoot":"","sources":["../../../src/modules/x509/X509Service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"X509Service.js","sourceRoot":"","sources":["../../../src/modules/x509/X509Service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,qDAAsC;AACtC,uCAAqC;AAGrC,sDAAuD;AAEvD,uDAAmD;AACnD,2CAAuC;AAGhC,IAAM,WAAW,GAAjB,MAAM,WAAW;IACtB;;;;;;;;;;;;OAYG;IACI,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAC1C,YAA0B,EAC1B,EACE,gBAAgB,EAChB,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC,EACjC,gBAAgB,GAAG,IAAI,IAAI,EAAE,EAC7B,mBAAmB,GACiB;QAEtC,MAAM,SAAS,GAAG,IAAI,0BAAc,CAAC,YAAY,CAAC,CAAA;QAClD,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,qBAAS,CAAC,4BAA4B,CAAC,CAAA;QAEpF,MAAM,qBAAqB,GAAG,IAAI,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAA;QAEnE,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAA;QAEnF,MAAM,uBAAuB,GAAG,IAAI,IAAI,CAAC,gBAAgB,CAAC,EAAE,YAAY,EAAE,kBAAkB,EAAE,CAAC,CAAA;QAE/F,MAAM,KAAK,GAAG,MAAM,uBAAuB,CAAC,KAAK,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAA;QAEnF,uEAAuE;QACvE,iGAAiG;QACjG,IAAI,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iCAAe,CAAC,kBAAkB,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA;QAE3G,IAAI,WAAW,CAAC,MAAM,KAAK,gBAAgB,CAAC,MAAM,EAAE,CAAC;YACnD,MAAM,IAAI,qBAAS,CAAC,kEAAkE,CAAC,CAAA;QACzF,CAAC;QAED,IAAI,mBAAmB,EAAE,CAAC;YACxB,MAAM,yBAAyB,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC,kBAAkB,EAAE,EAAE,CAC/E,iCAAe,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAC3D,CAAA;YAED,MAAM,uBAAuB,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAC7D,yBAAyB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAC7D,CAAA;YAED,IAAI,uBAAuB,KAAK,CAAC,CAAC,EAAE,CAAC;gBACnC,MAAM,IAAI,qBAAS,CAAC,mEAAmE,CAAC,CAAA;YAC1F,CAAC;YAED,yFAAyF;YACzF,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,uBAAuB,CAAC,CAAA;QAC7D,CAAC;QAED,qEAAqE;QACrE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;YAC3B,MAAM,mBAAmB,GAAG,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YAC9C,MAAM,SAAS,GAAG,mBAAmB,CAAC,CAAC,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;YACjF,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,EAAE,SAAS,CAAC,CAAA;QAC/D,CAAC;QAED,OAAO,WAAW,CAAA;IACpB,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,gBAAgB,CAC5B,aAA2B,EAC3B,EAAE,kBAAkB,EAA+B;QAEnD,MAAM,WAAW,GAAG,iCAAe,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAA;QAE9E,OAAO,WAAW,CAAA;IACpB,CAAC;IAEM,MAAM,CAAC,kBAAkB,CAC9B,aAA2B,EAC3B,EAAE,gBAAgB,EAAiC;QAEnD,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,qBAAS,CAAC,4BAA4B,CAAC,CAAA;QAEpF,MAAM,WAAW,GAAG,iCAAe,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAA;QAE/E,OAAO,WAAW,CAAA;IACpB,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,YAA0B,EAAE,OAAqC;QACrG,MAAM,SAAS,GAAG,IAAI,0BAAc,CAAC,YAAY,CAAC,CAAA;QAElD,MAAM,WAAW,GAAG,MAAM,iCAAe,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QAEpE,OAAO,WAAW,CAAA;IACpB,CAAC;CACF,CAAA;AAtGY,kCAAW;sBAAX,WAAW;IADvB,IAAA,qBAAU,GAAE;GACA,WAAW,CAsGvB"}
|