dcql 0.2.3 → 0.2.5
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/dist/src/dcql-presentation/index.d.ts +2 -0
- package/dist/src/dcql-presentation/index.d.ts.map +1 -0
- package/dist/src/dcql-presentation/index.js +3 -0
- package/dist/src/dcql-presentation/index.js.map +1 -0
- package/dist/src/dcql-presentation/m-dcql-presentation-record.d.ts +20 -0
- package/dist/src/dcql-presentation/m-dcql-presentation-record.d.ts.map +1 -0
- package/dist/src/dcql-presentation/m-dcql-presentation-record.js +61 -0
- package/dist/src/dcql-presentation/m-dcql-presentation-record.js.map +1 -0
- package/dist/src/dcql-presentation/m-dcql-presentation.d.ts +2 -0
- package/dist/src/dcql-presentation/m-dcql-presentation.d.ts.map +1 -0
- package/dist/src/dcql-presentation/m-dcql-presentation.js +3 -0
- package/dist/src/dcql-presentation/m-dcql-presentation.js.map +1 -0
- package/dist/src/dcql-query/claims-path.d.ts +14 -0
- package/dist/src/dcql-query/claims-path.d.ts.map +1 -0
- package/dist/src/dcql-query/claims-path.js +23 -0
- package/dist/src/dcql-query/claims-path.js.map +1 -0
- package/dist/src/dcql-query/claims-path.test.d.ts +2 -0
- package/dist/src/dcql-query/claims-path.test.d.ts.map +1 -0
- package/dist/src/dcql-query/claims-path.test.js +103 -0
- package/dist/src/dcql-query/claims-path.test.js.map +1 -0
- package/dist/src/dcql-query/dcql-query.d.ts +8 -0
- package/dist/src/dcql-query/dcql-query.d.ts.map +1 -0
- package/dist/src/dcql-query/dcql-query.js +53 -0
- package/dist/src/dcql-query/dcql-query.js.map +1 -0
- package/dist/src/dcql-query/dcql-query.test.d.ts +2 -0
- package/dist/src/dcql-query/dcql-query.test.d.ts.map +1 -0
- package/dist/src/dcql-query/dcql-query.test.js +188 -0
- package/dist/src/dcql-query/dcql-query.test.js.map +1 -0
- package/dist/src/dcql-query/m-dcql-claims-query.d.ts +37 -0
- package/dist/src/dcql-query/m-dcql-claims-query.d.ts.map +1 -0
- package/dist/src/dcql-query/m-dcql-claims-query.js +57 -0
- package/dist/src/dcql-query/m-dcql-claims-query.js.map +1 -0
- package/dist/src/dcql-query/m-dcql-credential-query.d.ts +186 -0
- package/dist/src/dcql-query/m-dcql-credential-query.d.ts.map +1 -0
- package/dist/src/dcql-query/m-dcql-credential-query.js +85 -0
- package/dist/src/dcql-query/m-dcql-credential-query.js.map +1 -0
- package/dist/src/dcql-query/m-dcql-credential-set-query.d.ts +18 -0
- package/dist/src/dcql-query/m-dcql-credential-set-query.d.ts.map +1 -0
- package/dist/src/dcql-query/m-dcql-credential-set-query.js +41 -0
- package/dist/src/dcql-query/m-dcql-credential-set-query.js.map +1 -0
- package/dist/src/dcql-query/m-dcql-query.d.ts +701 -0
- package/dist/src/dcql-query/m-dcql-query.d.ts.map +1 -0
- package/dist/src/dcql-query/m-dcql-query.js +91 -0
- package/dist/src/dcql-query/m-dcql-query.js.map +1 -0
- package/dist/src/dcql-query-result/dcql-claims-query-result.d.ts +22 -0
- package/dist/src/dcql-query-result/dcql-claims-query-result.d.ts.map +1 -0
- package/dist/src/dcql-query-result/dcql-claims-query-result.js +175 -0
- package/dist/src/dcql-query-result/dcql-claims-query-result.js.map +1 -0
- package/dist/src/dcql-query-result/dcql-credential-query-result.d.ts +8 -0
- package/dist/src/dcql-query-result/dcql-credential-query-result.d.ts.map +1 -0
- package/dist/src/dcql-query-result/dcql-credential-query-result.js +65 -0
- package/dist/src/dcql-query-result/dcql-credential-query-result.js.map +1 -0
- package/dist/src/dcql-query-result/m-dcql-query-result.d.ts +650 -0
- package/dist/src/dcql-query-result/m-dcql-query-result.d.ts.map +1 -0
- package/dist/src/dcql-query-result/m-dcql-query-result.js +78 -0
- package/dist/src/dcql-query-result/m-dcql-query-result.js.map +1 -0
- package/dist/src/e-base.d.ts +15 -0
- package/dist/src/e-base.d.ts.map +1 -0
- package/dist/{esm/src → src}/e-base.js +18 -23
- package/dist/src/e-base.js.map +1 -0
- package/dist/src/e-dcql.d.ts +44 -0
- package/dist/src/e-dcql.d.ts.map +1 -0
- package/dist/src/e-dcql.js +47 -0
- package/dist/src/e-dcql.js.map +1 -0
- package/dist/src/index.d.ts +9 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +28 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/u-dcql-credential-representation.d.ts +28 -0
- package/dist/src/u-dcql-credential-representation.d.ts.map +1 -0
- package/dist/src/u-dcql-credential-representation.js +32 -0
- package/dist/src/u-dcql-credential-representation.js.map +1 -0
- package/dist/src/u-dcql.d.ts +48 -0
- package/dist/src/u-dcql.d.ts.map +1 -0
- package/dist/src/u-dcql.js +76 -0
- package/dist/src/u-dcql.js.map +1 -0
- package/package.json +14 -9
- package/.cache/tsbuildinfo.json +0 -1
- package/.turbo/turbo-build.log +0 -4
- package/CHANGELOG.md +0 -13
- package/dist/esm/src/claims-query/claims-query-result.d.ts +0 -24
- package/dist/esm/src/claims-query/claims-query-result.d.ts.map +0 -1
- package/dist/esm/src/claims-query/claims-query-result.js +0 -67
- package/dist/esm/src/claims-query/claims-query-result.js.map +0 -1
- package/dist/esm/src/claims-query/v-claims-query-result.d.ts +0 -82
- package/dist/esm/src/claims-query/v-claims-query-result.d.ts.map +0 -1
- package/dist/esm/src/claims-query/v-claims-query-result.js +0 -30
- package/dist/esm/src/claims-query/v-claims-query-result.js.map +0 -1
- package/dist/esm/src/claims-query/v-claims-query.d.ts +0 -34
- package/dist/esm/src/claims-query/v-claims-query.d.ts.map +0 -1
- package/dist/esm/src/claims-query/v-claims-query.js +0 -24
- package/dist/esm/src/claims-query/v-claims-query.js.map +0 -1
- package/dist/esm/src/credential-query/credential-query-result.d.ts +0 -101
- package/dist/esm/src/credential-query/credential-query-result.d.ts.map +0 -1
- package/dist/esm/src/credential-query/credential-query-result.js +0 -91
- package/dist/esm/src/credential-query/credential-query-result.js.map +0 -1
- package/dist/esm/src/credential-query/v-credential-query-result.d.ts +0 -696
- package/dist/esm/src/credential-query/v-credential-query-result.d.ts.map +0 -1
- package/dist/esm/src/credential-query/v-credential-query-result.js +0 -44
- package/dist/esm/src/credential-query/v-credential-query-result.js.map +0 -1
- package/dist/esm/src/credential-query/v-credential-query.d.ts +0 -109
- package/dist/esm/src/credential-query/v-credential-query.d.ts.map +0 -1
- package/dist/esm/src/credential-query/v-credential-query.js +0 -57
- package/dist/esm/src/credential-query/v-credential-query.js.map +0 -1
- package/dist/esm/src/e-base.d.ts +0 -25
- package/dist/esm/src/e-base.d.ts.map +0 -1
- package/dist/esm/src/e-base.js.map +0 -1
- package/dist/esm/src/e-vp-query.d.ts +0 -32
- package/dist/esm/src/e-vp-query.d.ts.map +0 -1
- package/dist/esm/src/e-vp-query.js +0 -27
- package/dist/esm/src/e-vp-query.js.map +0 -1
- package/dist/esm/src/index.d.ts +0 -7
- package/dist/esm/src/index.d.ts.map +0 -1
- package/dist/esm/src/index.js +0 -7
- package/dist/esm/src/index.js.map +0 -1
- package/dist/esm/src/u-query.d.ts +0 -20
- package/dist/esm/src/u-query.d.ts.map +0 -1
- package/dist/esm/src/u-query.js +0 -25
- package/dist/esm/src/u-query.js.map +0 -1
- package/dist/esm/src/vp-query/v-vp-query-result.d.ts +0 -767
- package/dist/esm/src/vp-query/v-vp-query-result.d.ts.map +0 -1
- package/dist/esm/src/vp-query/v-vp-query-result.js +0 -18
- package/dist/esm/src/vp-query/v-vp-query-result.js.map +0 -1
- package/dist/esm/src/vp-query/v-vp-query.d.ts +0 -94
- package/dist/esm/src/vp-query/v-vp-query.d.ts.map +0 -1
- package/dist/esm/src/vp-query/v-vp-query.js +0 -52
- package/dist/esm/src/vp-query/v-vp-query.js.map +0 -1
- package/dist/esm/src/vp-query/vp-query.d.ts +0 -5
- package/dist/esm/src/vp-query/vp-query.d.ts.map +0 -1
- package/dist/esm/src/vp-query/vp-query.fixtures.d.ts +0 -7
- package/dist/esm/src/vp-query/vp-query.fixtures.d.ts.map +0 -1
- package/dist/esm/src/vp-query/vp-query.fixtures.js +0 -172
- package/dist/esm/src/vp-query/vp-query.fixtures.js.map +0 -1
- package/dist/esm/src/vp-query/vp-query.js +0 -21
- package/dist/esm/src/vp-query/vp-query.js.map +0 -1
- package/dist/esm/src/vp-query/vp-query.test.d.ts +0 -31
- package/dist/esm/src/vp-query/vp-query.test.d.ts.map +0 -1
- package/dist/esm/src/vp-query/vp-query.test.js +0 -130
- package/dist/esm/src/vp-query/vp-query.test.js.map +0 -1
- package/eslint.config.js +0 -10
- package/src/claims-query/claims-query-result.ts +0 -104
- package/src/claims-query/v-claims-query-result.ts +0 -42
- package/src/claims-query/v-claims-query.ts +0 -34
- package/src/credential-query/credential-query-result.ts +0 -130
- package/src/credential-query/v-credential-query-result.ts +0 -71
- package/src/credential-query/v-credential-query.ts +0 -85
- package/src/e-base.ts +0 -116
- package/src/e-vp-query.ts +0 -31
- package/src/index.ts +0 -6
- package/src/u-query.ts +0 -39
- package/src/vp-query/v-vp-query-result.ts +0 -23
- package/src/vp-query/v-vp-query.ts +0 -71
- package/src/vp-query/vp-query.fixtures.ts +0 -178
- package/src/vp-query/vp-query.test.ts +0 -156
- package/src/vp-query/vp-query.ts +0 -44
- package/tsconfig.json +0 -5
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dcql-presentation/index.ts"],"names":[],"mappings":""}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dcql-presentation/index.ts"],"names":[],"mappings":""}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
import * as v from 'valibot';
|
2
|
+
import type { DcqlQuery } from '../dcql-query/m-dcql-query.js';
|
3
|
+
import type { DcqlCredentialRepresentation } from '../u-dcql-credential-representation.js';
|
4
|
+
export declare namespace DcqlPresentationRecord {
|
5
|
+
const vModel: v.RecordSchema<v.SchemaWithPipe<[v.StringSchema<undefined>, v.RegexAction<string, undefined>]>, v.UnionSchema<[v.StringSchema<undefined>, v.RecordSchema<v.StringSchema<undefined>, v.GenericSchema<import("../u-dcql.js").Json, import("../u-dcql.js").Json, v.BaseIssue<unknown>>, undefined>], undefined>, undefined>;
|
6
|
+
type Input = v.InferInput<typeof vModel>;
|
7
|
+
type Output = v.InferOutput<typeof vModel>;
|
8
|
+
const parse: (input: Input | string) => {
|
9
|
+
[x: string]: string | {
|
10
|
+
[x: string]: import("../u-dcql.js").Json;
|
11
|
+
};
|
12
|
+
};
|
13
|
+
const encode: (input: Output) => string;
|
14
|
+
const validate: (input: Output, ctx: {
|
15
|
+
dcqlQuery: DcqlQuery;
|
16
|
+
credentials: DcqlCredentialRepresentation[];
|
17
|
+
}) => void;
|
18
|
+
}
|
19
|
+
export type DcQlPresentationRecord = DcqlPresentationRecord.Output;
|
20
|
+
//# sourceMappingURL=m-dcql-presentation-record.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"m-dcql-presentation-record.d.ts","sourceRoot":"","sources":["../../../src/dcql-presentation/m-dcql-presentation-record.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAK/D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AAG3F,yBAAiB,sBAAsB,CAAC;IAC/B,MAAM,MAAM,0TAGlB,CAAC;IAEF,KAAY,KAAK,GAAG,CAAC,CAAC,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC;IAChD,KAAY,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,MAAM,CAAC,CAAC;IAC3C,MAAM,KAAK,UAAW,KAAK,GAAG,MAAM;;;;KAM1C,CAAC;IAEK,MAAM,MAAM,UAAW,MAAM,WAEnC,CAAC;IAEK,MAAM,QAAQ,UACZ,MAAM,OACR;QACH,SAAS,EAAE,SAAS,CAAC;QACrB,WAAW,EAAE,4BAA4B,EAAE,CAAC;KAC7C,SAmBF,CAAC;CACH;AACD,MAAM,MAAM,sBAAsB,GAAG,sBAAsB,CAAC,MAAM,CAAC"}
|
@@ -0,0 +1,61 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
+
if (k2 === undefined) k2 = k;
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
+
}
|
8
|
+
Object.defineProperty(o, k2, desc);
|
9
|
+
}) : (function(o, m, k, k2) {
|
10
|
+
if (k2 === undefined) k2 = k;
|
11
|
+
o[k2] = m[k];
|
12
|
+
}));
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
15
|
+
}) : function(o, v) {
|
16
|
+
o["default"] = v;
|
17
|
+
});
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
19
|
+
if (mod && mod.__esModule) return mod;
|
20
|
+
var result = {};
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
22
|
+
__setModuleDefault(result, mod);
|
23
|
+
return result;
|
24
|
+
};
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
26
|
+
exports.DcqlPresentationRecord = void 0;
|
27
|
+
const v = __importStar(require("valibot"));
|
28
|
+
const dcql_query_js_1 = require("../dcql-query/dcql-query.js");
|
29
|
+
const e_dcql_js_1 = require("../e-dcql.js");
|
30
|
+
const u_dcql_js_1 = require("../u-dcql.js");
|
31
|
+
var DcqlPresentationRecord;
|
32
|
+
(function (DcqlPresentationRecord) {
|
33
|
+
DcqlPresentationRecord.vModel = v.record(v.pipe(v.string(), v.regex(u_dcql_js_1.idRegex)), v.union([v.string(), u_dcql_js_1.vJsonRecord]));
|
34
|
+
DcqlPresentationRecord.parse = (input) => {
|
35
|
+
if (typeof input === 'string') {
|
36
|
+
v.parse(v.pipe(v.string(), u_dcql_js_1.vStringToJson, DcqlPresentationRecord.vModel), input);
|
37
|
+
}
|
38
|
+
return v.parse(DcqlPresentationRecord.vModel, input);
|
39
|
+
};
|
40
|
+
DcqlPresentationRecord.encode = (input) => {
|
41
|
+
return JSON.stringify(input);
|
42
|
+
};
|
43
|
+
DcqlPresentationRecord.validate = (input, ctx) => {
|
44
|
+
if (Object.values(input).length === 0) {
|
45
|
+
throw new e_dcql_js_1.DcqlEmptyPresentationRecordError({
|
46
|
+
message: 'Empty Presentation record',
|
47
|
+
});
|
48
|
+
}
|
49
|
+
const result = (0, dcql_query_js_1.performDcqlQuery)(ctx.dcqlQuery, {
|
50
|
+
...ctx,
|
51
|
+
presentation: true,
|
52
|
+
});
|
53
|
+
if (!result.canBeSatisfied) {
|
54
|
+
throw new e_dcql_js_1.DcqlInvalidPresentationRecordError({
|
55
|
+
message: 'Invalid Presentation record',
|
56
|
+
cause: result,
|
57
|
+
});
|
58
|
+
}
|
59
|
+
};
|
60
|
+
})(DcqlPresentationRecord || (exports.DcqlPresentationRecord = DcqlPresentationRecord = {}));
|
61
|
+
//# sourceMappingURL=m-dcql-presentation-record.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"m-dcql-presentation-record.js","sourceRoot":"","sources":["../../../src/dcql-presentation/m-dcql-presentation-record.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6B;AAC7B,+DAA+D;AAE/D,4CAGsB;AAEtB,4CAAmE;AAEnE,IAAiB,sBAAsB,CA6CtC;AA7CD,WAAiB,sBAAsB;IACxB,6BAAM,GAAG,CAAC,CAAC,MAAM,CAC5B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAO,CAAC,CAAC,EACpC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,uBAAW,CAAC,CAAC,CACnC,CAAC;IAIW,4BAAK,GAAG,CAAC,KAAqB,EAAE,EAAE;QAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,yBAAa,EAAE,uBAAA,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC;QAED,OAAO,CAAC,CAAC,KAAK,CAAC,uBAAA,MAAM,EAAE,KAAK,CAAC,CAAC;IAChC,CAAC,CAAC;IAEW,6BAAM,GAAG,CAAC,KAAa,EAAE,EAAE;QACtC,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEW,+BAAQ,GAAG,CACtB,KAAa,EACb,GAGC,EACD,EAAE;QACF,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,4CAA2B,CAAC;gBACpC,OAAO,EAAE,2BAA2B;aACrC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,MAAM,GAAG,IAAA,gCAAgB,EAAC,GAAG,CAAC,SAAS,EAAE;YAC7C,GAAG,GAAG;YACN,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAC3B,MAAM,IAAI,8CAAkC,CAAC;gBAC3C,OAAO,EAAE,6BAA6B;gBACtC,KAAK,EAAE,MAAM;aACd,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;AACJ,CAAC,EA7CgB,sBAAsB,sCAAtB,sBAAsB,QA6CtC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"m-dcql-presentation.d.ts","sourceRoot":"","sources":["../../../src/dcql-presentation/m-dcql-presentation.ts"],"names":[],"mappings":""}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"m-dcql-presentation.js","sourceRoot":"","sources":["../../../src/dcql-presentation/m-dcql-presentation.ts"],"names":[],"mappings":""}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
export declare const limitToPath: {
|
2
|
+
name: string;
|
3
|
+
address: {
|
4
|
+
street_address: string;
|
5
|
+
locality: string;
|
6
|
+
postal_code: string;
|
7
|
+
};
|
8
|
+
degrees: {
|
9
|
+
type: string;
|
10
|
+
university: string;
|
11
|
+
}[];
|
12
|
+
nationalities: string[];
|
13
|
+
};
|
14
|
+
//# sourceMappingURL=claims-path.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"claims-path.d.ts","sourceRoot":"","sources":["../../../src/dcql-query/claims-path.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;;;;;;;;;;CAkBvB,CAAC"}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.limitToPath = void 0;
|
4
|
+
exports.limitToPath = {
|
5
|
+
name: 'Arthur Dent',
|
6
|
+
address: {
|
7
|
+
street_address: '42 Market Street',
|
8
|
+
locality: 'Milliways',
|
9
|
+
postal_code: '12345',
|
10
|
+
},
|
11
|
+
degrees: [
|
12
|
+
{
|
13
|
+
type: 'Bachelor of Science',
|
14
|
+
university: 'University of Betelgeuse',
|
15
|
+
},
|
16
|
+
{
|
17
|
+
type: 'Master of Science',
|
18
|
+
university: 'University of Betelgeuse',
|
19
|
+
},
|
20
|
+
],
|
21
|
+
nationalities: ['British', 'Betelgeusian'],
|
22
|
+
};
|
23
|
+
//# sourceMappingURL=claims-path.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"claims-path.js","sourceRoot":"","sources":["../../../src/dcql-query/claims-path.ts"],"names":[],"mappings":";;;AAAa,QAAA,WAAW,GAAG;IACzB,IAAI,EAAE,aAAa;IACnB,OAAO,EAAE;QACP,cAAc,EAAE,kBAAkB;QAClC,QAAQ,EAAE,WAAW;QACrB,WAAW,EAAE,OAAO;KACrB;IACD,OAAO,EAAE;QACP;YACE,IAAI,EAAE,qBAAqB;YAC3B,UAAU,EAAE,0BAA0B;SACvC;QACD;YACE,IAAI,EAAE,mBAAmB;YACzB,UAAU,EAAE,0BAA0B;SACvC;KACF;IACD,aAAa,EAAE,CAAC,SAAS,EAAE,cAAc,CAAC;CAC3C,CAAC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"claims-path.test.d.ts","sourceRoot":"","sources":["../../../src/dcql-query/claims-path.test.ts"],"names":[],"mappings":""}
|
@@ -0,0 +1,103 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
+
if (k2 === undefined) k2 = k;
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
+
}
|
8
|
+
Object.defineProperty(o, k2, desc);
|
9
|
+
}) : (function(o, m, k, k2) {
|
10
|
+
if (k2 === undefined) k2 = k;
|
11
|
+
o[k2] = m[k];
|
12
|
+
}));
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
15
|
+
}) : function(o, v) {
|
16
|
+
o["default"] = v;
|
17
|
+
});
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
19
|
+
if (mod && mod.__esModule) return mod;
|
20
|
+
var result = {};
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
22
|
+
__setModuleDefault(result, mod);
|
23
|
+
return result;
|
24
|
+
};
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
27
|
+
};
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
29
|
+
const node_assert_1 = __importDefault(require("node:assert"));
|
30
|
+
const node_test_1 = require("node:test");
|
31
|
+
const v = __importStar(require("valibot"));
|
32
|
+
const dcql_claims_query_result_js_1 = require("../dcql-query-result/dcql-claims-query-result.js");
|
33
|
+
const claimsPathPointerExample = {
|
34
|
+
name: 'Arthur Dent',
|
35
|
+
address: {
|
36
|
+
street_address: '42 Market Street',
|
37
|
+
locality: 'Milliways',
|
38
|
+
postal_code: '12345',
|
39
|
+
},
|
40
|
+
degrees: [
|
41
|
+
{
|
42
|
+
type: 'Bachelor of Science',
|
43
|
+
university: 'University of Betelgeuse',
|
44
|
+
},
|
45
|
+
{
|
46
|
+
type: 'Master of Science',
|
47
|
+
university: 'University of Betelgeuse',
|
48
|
+
},
|
49
|
+
],
|
50
|
+
nationalities: ['British', 'Betelgeusian'],
|
51
|
+
};
|
52
|
+
void (0, node_test_1.describe)('claims-path', () => {
|
53
|
+
void (0, node_test_1.it)('name', _t => {
|
54
|
+
const parser = (0, dcql_claims_query_result_js_1.getJsonClaimsParser)([{ path: ['name'] }], {
|
55
|
+
presentation: false,
|
56
|
+
});
|
57
|
+
const res = v.parse(parser, claimsPathPointerExample);
|
58
|
+
node_assert_1.default.deepStrictEqual(res, {
|
59
|
+
name: 'Arthur Dent',
|
60
|
+
});
|
61
|
+
});
|
62
|
+
void (0, node_test_1.it)('address', _t => {
|
63
|
+
const parser = (0, dcql_claims_query_result_js_1.getJsonClaimsParser)([{ path: ['address'] }], {
|
64
|
+
presentation: false,
|
65
|
+
});
|
66
|
+
const res = v.parse(parser, claimsPathPointerExample);
|
67
|
+
node_assert_1.default.deepStrictEqual(res, {
|
68
|
+
address: {
|
69
|
+
street_address: '42 Market Street',
|
70
|
+
locality: 'Milliways',
|
71
|
+
postal_code: '12345',
|
72
|
+
},
|
73
|
+
});
|
74
|
+
});
|
75
|
+
void (0, node_test_1.it)('address street address', _t => {
|
76
|
+
const parser = (0, dcql_claims_query_result_js_1.getJsonClaimsParser)([{ path: ['address', 'street_address'] }], { presentation: false });
|
77
|
+
const res = v.parse(parser, claimsPathPointerExample);
|
78
|
+
node_assert_1.default.deepStrictEqual(res, {
|
79
|
+
address: {
|
80
|
+
street_address: '42 Market Street',
|
81
|
+
},
|
82
|
+
});
|
83
|
+
});
|
84
|
+
void (0, node_test_1.it)('nationalities', _t => {
|
85
|
+
const parser = (0, dcql_claims_query_result_js_1.getJsonClaimsParser)([{ path: ['nationalities', 1] }], {
|
86
|
+
presentation: false,
|
87
|
+
});
|
88
|
+
const res = v.parse(parser, claimsPathPointerExample);
|
89
|
+
node_assert_1.default.deepStrictEqual(res, {
|
90
|
+
nationalities: 'Betelgeusian',
|
91
|
+
});
|
92
|
+
});
|
93
|
+
void (0, node_test_1.it)('all degree types', _t => {
|
94
|
+
const parser = (0, dcql_claims_query_result_js_1.getJsonClaimsParser)([{ path: ['degrees', null, 'type'] }], {
|
95
|
+
presentation: false,
|
96
|
+
});
|
97
|
+
const res = v.parse(parser, claimsPathPointerExample);
|
98
|
+
node_assert_1.default.deepStrictEqual(res, {
|
99
|
+
degrees: [{ type: 'Bachelor of Science' }, { type: 'Master of Science' }],
|
100
|
+
});
|
101
|
+
});
|
102
|
+
});
|
103
|
+
//# sourceMappingURL=claims-path.test.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"claims-path.test.js","sourceRoot":"","sources":["../../../src/dcql-query/claims-path.test.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import type { DcqlQueryResult } from '../dcql-query-result/m-dcql-query-result.js';
|
2
|
+
import type { DcqlCredentialRepresentation } from '../u-dcql-credential-representation.js';
|
3
|
+
import type { DcqlQuery } from './m-dcql-query.js';
|
4
|
+
export declare const performDcqlQuery: (dcqlQuery: DcqlQuery.Output, ctx: {
|
5
|
+
credentials: DcqlCredentialRepresentation[];
|
6
|
+
presentation: boolean;
|
7
|
+
}) => DcqlQueryResult;
|
8
|
+
//# sourceMappingURL=dcql-query.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"dcql-query.d.ts","sourceRoot":"","sources":["../../../src/dcql-query/dcql-query.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AACnF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AAC3F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,eAAO,MAAM,gBAAgB,cAChB,SAAS,CAAC,MAAM,OACtB;IACH,WAAW,EAAE,4BAA4B,EAAE,CAAC;IAC5C,YAAY,EAAE,OAAO,CAAC;CACvB,KACA,eAuEF,CAAC"}
|
@@ -0,0 +1,53 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.performDcqlQuery = void 0;
|
4
|
+
const dcql_credential_query_result_js_1 = require("../dcql-query-result/dcql-credential-query-result.js");
|
5
|
+
const performDcqlQuery = (dcqlQuery, ctx) => {
|
6
|
+
const credentialQueriesResults = Object.fromEntries(dcqlQuery.credentials.map(credentialQuery => [
|
7
|
+
credentialQuery.id,
|
8
|
+
(0, dcql_credential_query_result_js_1.queryCredentialFromCredentialQuery)(credentialQuery, ctx),
|
9
|
+
]));
|
10
|
+
const credentialMatches = Object.fromEntries(Object.entries(credentialQueriesResults).map(([key, credentialQueryResult]) => {
|
11
|
+
// Find the best match for each credential query
|
12
|
+
let bestMatch = undefined;
|
13
|
+
for (const credentialParseResult of credentialQueryResult) {
|
14
|
+
const bestMatchForCredential = credentialParseResult.find(result => result?.success == true);
|
15
|
+
if (!bestMatch) {
|
16
|
+
bestMatch = bestMatchForCredential;
|
17
|
+
continue;
|
18
|
+
}
|
19
|
+
if (bestMatchForCredential &&
|
20
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
21
|
+
bestMatchForCredential.claim_set_index < bestMatch.claim_set_index) {
|
22
|
+
bestMatch = bestMatchForCredential;
|
23
|
+
}
|
24
|
+
}
|
25
|
+
return [
|
26
|
+
key,
|
27
|
+
bestMatch
|
28
|
+
? { ...bestMatch, all: credentialQueryResult }
|
29
|
+
: // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
30
|
+
{ ...credentialQueryResult[0][0], all: credentialQueryResult },
|
31
|
+
];
|
32
|
+
}));
|
33
|
+
const credentialSetResults = dcqlQuery.credential_sets?.map(set => {
|
34
|
+
const matchingOptions = set.options.filter(option => option.every(credentialQueryId => credentialMatches[credentialQueryId]?.success));
|
35
|
+
return {
|
36
|
+
...set,
|
37
|
+
matching_options: matchingOptions.length > 0
|
38
|
+
? matchingOptions
|
39
|
+
: undefined,
|
40
|
+
};
|
41
|
+
});
|
42
|
+
const dqclQueryMatched = credentialSetResults
|
43
|
+
? credentialSetResults.every(set => !set.required || set.matching_options)
|
44
|
+
: Object.values(credentialMatches).every(query => query.success);
|
45
|
+
return {
|
46
|
+
...dcqlQuery,
|
47
|
+
canBeSatisfied: dqclQueryMatched,
|
48
|
+
credential_matches: credentialMatches,
|
49
|
+
credential_sets: credentialSetResults,
|
50
|
+
};
|
51
|
+
};
|
52
|
+
exports.performDcqlQuery = performDcqlQuery;
|
53
|
+
//# sourceMappingURL=dcql-query.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"dcql-query.js","sourceRoot":"","sources":["../../../src/dcql-query/dcql-query.ts"],"names":[],"mappings":";;;AAAA,0GAAoI;AAK7H,MAAM,gBAAgB,GAAG,CAC9B,SAA2B,EAC3B,GAGC,EACgB,EAAE;IACnB,MAAM,wBAAwB,GAAG,MAAM,CAAC,WAAW,CACjD,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;QAC3C,eAAe,CAAC,EAAE;QAClB,IAAA,oEAAsB,EAAC,eAAe,EAAE,GAAG,CAAC;KAC7C,CAAC,CACH,CAAC;IAEF,MAAM,iBAAiB,GAAG,MAAM,CAAC,WAAW,CAC1C,MAAM,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC,GAAG,CAC1C,CAAC,CAAC,GAAG,EAAE,qBAAqB,CAAC,EAAE,EAAE;QAC/B,gDAAgD;QAChD,IAAI,SAAS,GACX,SAAS,CAAC;QAEZ,KAAK,MAAM,qBAAqB,IAAI,qBAAqB,EAAE,CAAC;YAC1D,MAAM,sBAAsB,GAAG,qBAAqB,CAAC,IAAI,CACvD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,IAAI,IAAI,CAClC,CAAC;YAEF,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,SAAS,GAAG,sBAAsB,CAAC;gBACnC,SAAS;YACX,CAAC;YAED,IACE,sBAAsB;gBACtB,oEAAoE;gBACpE,sBAAsB,CAAC,eAAgB,GAAG,SAAS,CAAC,eAAgB,EACpE,CAAC;gBACD,SAAS,GAAG,sBAAsB,CAAC;YACrC,CAAC;QACH,CAAC;QAED,OAAO;YACL,GAAG;YACH,SAAS;gBACP,CAAC,CAAC,EAAE,GAAG,SAAS,EAAE,GAAG,EAAE,qBAAqB,EAAE;gBAC9C,CAAC,CAAC,oEAAoE;oBACpE,EAAE,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,EAAE,GAAG,EAAE,qBAAqB,EAAE;SACpE,CAAC;IACJ,CAAC,CACF,CAC8C,CAAC;IAElD,MAAM,oBAAoB,GAAG,SAAS,CAAC,eAAe,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE;QAChE,MAAM,eAAe,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAClD,MAAM,CAAC,KAAK,CACV,iBAAiB,CAAC,EAAE,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,OAAO,CACnE,CACF,CAAC;QAEF,OAAO;YACL,GAAG,GAAG;YACN,gBAAgB,EACd,eAAe,CAAC,MAAM,GAAG,CAAC;gBACxB,CAAC,CAAE,eAA6C;gBAChD,CAAC,CAAC,SAAS;SAChB,CAAC;IACJ,CAAC,CAA8C,CAAC;IAEhD,MAAM,gBAAgB,GAAG,oBAAoB;QAC3C,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,gBAAgB,CAAC;QAC1E,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAEnE,OAAO;QACL,GAAG,SAAS;QACZ,cAAc,EAAE,gBAAgB;QAChC,kBAAkB,EAAE,iBAAiB;QACrC,eAAe,EAAE,oBAAoB;KACtC,CAAC;AACJ,CAAC,CAAC;AA7EW,QAAA,gBAAgB,oBA6E3B"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"dcql-query.test.d.ts","sourceRoot":"","sources":["../../../src/dcql-query/dcql-query.test.ts"],"names":[],"mappings":""}
|
@@ -0,0 +1,188 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
const node_assert_1 = __importDefault(require("node:assert"));
|
7
|
+
const node_test_1 = require("node:test");
|
8
|
+
const m_dcql_presentation_record_js_1 = require("../dcql-presentation/m-dcql-presentation-record.js");
|
9
|
+
const m_dcql_query_js_1 = require("./m-dcql-query.js");
|
10
|
+
/**
|
11
|
+
* The following is a non-normative example of a DCQL query that requests
|
12
|
+
* a Verifiable Credential in the format mso_mdoc with the claims vehicle_holder and first_name:
|
13
|
+
*/
|
14
|
+
const mdocMvrcQuery = {
|
15
|
+
credentials: [
|
16
|
+
{
|
17
|
+
id: 'my_credential',
|
18
|
+
format: 'mso_mdoc',
|
19
|
+
meta: {
|
20
|
+
doctype_value: 'org.iso.7367.1.mVRC',
|
21
|
+
},
|
22
|
+
claims: [
|
23
|
+
{
|
24
|
+
namespace: 'org.iso.7367.1',
|
25
|
+
claim_name: 'vehicle_holder',
|
26
|
+
},
|
27
|
+
{
|
28
|
+
namespace: 'org.iso.18013.5.1',
|
29
|
+
claim_name: 'first_name',
|
30
|
+
},
|
31
|
+
],
|
32
|
+
},
|
33
|
+
],
|
34
|
+
};
|
35
|
+
const mdocMvrc = {
|
36
|
+
docType: 'org.iso.7367.1.mVRC',
|
37
|
+
namespaces: {
|
38
|
+
'org.iso.7367.1': {
|
39
|
+
vehicle_holder: 'Martin Auer',
|
40
|
+
non_disclosed: 'secret',
|
41
|
+
},
|
42
|
+
'org.iso.18013.5.1': { first_name: 'Martin Auer' },
|
43
|
+
},
|
44
|
+
};
|
45
|
+
const exampleMdoc = {
|
46
|
+
docType: 'example_doctype',
|
47
|
+
namespaces: {
|
48
|
+
example_namespaces: {
|
49
|
+
example_claim: 'example_value',
|
50
|
+
},
|
51
|
+
},
|
52
|
+
};
|
53
|
+
const sdJwtVcExample = {
|
54
|
+
credentials: [
|
55
|
+
{
|
56
|
+
id: 'my_credential',
|
57
|
+
format: 'vc+sd-jwt',
|
58
|
+
meta: {
|
59
|
+
vct_values: ['https://credentials.example.com/identity_credential'],
|
60
|
+
},
|
61
|
+
claims: [
|
62
|
+
{ path: ['last_name'] },
|
63
|
+
{ path: ['first_name'] },
|
64
|
+
{ path: ['address', 'street_address'] },
|
65
|
+
],
|
66
|
+
},
|
67
|
+
],
|
68
|
+
};
|
69
|
+
const sdJwtVc = {
|
70
|
+
vct: 'https://credentials.example.com/identity_credential',
|
71
|
+
claims: {
|
72
|
+
first_name: 'Arthur',
|
73
|
+
last_name: 'Dent',
|
74
|
+
address: {
|
75
|
+
street_address: '42 Market Street',
|
76
|
+
locality: 'Milliways',
|
77
|
+
postal_code: '12345',
|
78
|
+
},
|
79
|
+
degrees: [
|
80
|
+
{
|
81
|
+
type: 'Bachelor of Science',
|
82
|
+
university: 'University of Betelgeuse',
|
83
|
+
},
|
84
|
+
{
|
85
|
+
type: 'Master of Science',
|
86
|
+
university: 'University of Betelgeuse',
|
87
|
+
},
|
88
|
+
],
|
89
|
+
nationalities: ['British', 'Betelgeusian'],
|
90
|
+
},
|
91
|
+
};
|
92
|
+
void (0, node_test_1.describe)('credential-parser', () => {
|
93
|
+
void (0, node_test_1.it)('mdocMvrc example succeeds', _t => {
|
94
|
+
const query = m_dcql_query_js_1.DcqlQuery.parse(mdocMvrcQuery);
|
95
|
+
m_dcql_query_js_1.DcqlQuery.validate(query);
|
96
|
+
const credentials = [mdocMvrc];
|
97
|
+
const res = m_dcql_query_js_1.DcqlQuery.query(query, credentials);
|
98
|
+
(0, node_assert_1.default)(res.canBeSatisfied);
|
99
|
+
node_assert_1.default.deepStrictEqual(res.credential_matches, {
|
100
|
+
my_credential: {
|
101
|
+
issues: undefined,
|
102
|
+
success: true,
|
103
|
+
typed: true,
|
104
|
+
credential_index: 0,
|
105
|
+
claim_set_index: undefined,
|
106
|
+
output: {
|
107
|
+
docType: 'org.iso.7367.1.mVRC',
|
108
|
+
namespaces: {
|
109
|
+
'org.iso.7367.1': { vehicle_holder: 'Martin Auer' },
|
110
|
+
'org.iso.18013.5.1': { first_name: 'Martin Auer' },
|
111
|
+
},
|
112
|
+
},
|
113
|
+
all: res.credential_matches.my_credential?.all,
|
114
|
+
},
|
115
|
+
});
|
116
|
+
const presentationRecord = m_dcql_presentation_record_js_1.DcqlPresentationRecord.parse({
|
117
|
+
my_credential: res.credential_matches.my_credential.output,
|
118
|
+
});
|
119
|
+
m_dcql_presentation_record_js_1.DcqlPresentationRecord.validate(presentationRecord, {
|
120
|
+
credentials: [res.credential_matches.my_credential.output],
|
121
|
+
dcqlQuery: query,
|
122
|
+
});
|
123
|
+
});
|
124
|
+
void (0, node_test_1.it)('mdocMvrc example with multiple credentials succeeds', _t => {
|
125
|
+
const query = m_dcql_query_js_1.DcqlQuery.parse(mdocMvrcQuery);
|
126
|
+
m_dcql_query_js_1.DcqlQuery.validate(query);
|
127
|
+
const res = m_dcql_query_js_1.DcqlQuery.query(query, [exampleMdoc, mdocMvrc]);
|
128
|
+
(0, node_assert_1.default)(res.canBeSatisfied);
|
129
|
+
node_assert_1.default.deepStrictEqual(res.credential_matches, {
|
130
|
+
my_credential: {
|
131
|
+
issues: undefined,
|
132
|
+
success: true,
|
133
|
+
typed: true,
|
134
|
+
credential_index: 1,
|
135
|
+
claim_set_index: undefined,
|
136
|
+
output: {
|
137
|
+
docType: 'org.iso.7367.1.mVRC',
|
138
|
+
namespaces: {
|
139
|
+
'org.iso.7367.1': { vehicle_holder: 'Martin Auer' },
|
140
|
+
'org.iso.18013.5.1': { first_name: 'Martin Auer' },
|
141
|
+
},
|
142
|
+
},
|
143
|
+
all: res.credential_matches.my_credential?.all,
|
144
|
+
},
|
145
|
+
});
|
146
|
+
const presentationRecord = m_dcql_presentation_record_js_1.DcqlPresentationRecord.parse({
|
147
|
+
my_credential: res.credential_matches.my_credential.output,
|
148
|
+
});
|
149
|
+
m_dcql_presentation_record_js_1.DcqlPresentationRecord.validate(presentationRecord, {
|
150
|
+
credentials: [res.credential_matches.my_credential.output],
|
151
|
+
dcqlQuery: query,
|
152
|
+
});
|
153
|
+
});
|
154
|
+
void (0, node_test_1.it)('sdJwtVc example with multiple credentials succeeds', _t => {
|
155
|
+
const query = m_dcql_query_js_1.DcqlQuery.parse(sdJwtVcExample);
|
156
|
+
m_dcql_query_js_1.DcqlQuery.validate(query);
|
157
|
+
const res = m_dcql_query_js_1.DcqlQuery.query(query, [exampleMdoc, sdJwtVc]);
|
158
|
+
(0, node_assert_1.default)(res.canBeSatisfied);
|
159
|
+
node_assert_1.default.deepStrictEqual(res.credential_matches, {
|
160
|
+
my_credential: {
|
161
|
+
issues: undefined,
|
162
|
+
success: true,
|
163
|
+
typed: true,
|
164
|
+
credential_index: 1,
|
165
|
+
claim_set_index: undefined,
|
166
|
+
output: {
|
167
|
+
vct: 'https://credentials.example.com/identity_credential',
|
168
|
+
claims: {
|
169
|
+
first_name: 'Arthur',
|
170
|
+
last_name: 'Dent',
|
171
|
+
address: {
|
172
|
+
street_address: '42 Market Street',
|
173
|
+
},
|
174
|
+
},
|
175
|
+
},
|
176
|
+
all: res.credential_matches.my_credential?.all,
|
177
|
+
},
|
178
|
+
});
|
179
|
+
const presentationRecord = m_dcql_presentation_record_js_1.DcqlPresentationRecord.parse({
|
180
|
+
my_credential: res.credential_matches.my_credential.output,
|
181
|
+
});
|
182
|
+
m_dcql_presentation_record_js_1.DcqlPresentationRecord.validate(presentationRecord, {
|
183
|
+
credentials: [res.credential_matches.my_credential.output],
|
184
|
+
dcqlQuery: query,
|
185
|
+
});
|
186
|
+
});
|
187
|
+
});
|
188
|
+
//# sourceMappingURL=dcql-query.test.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"dcql-query.test.js","sourceRoot":"","sources":["../../../src/dcql-query/dcql-query.test.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,37 @@
|
|
1
|
+
import * as v from 'valibot';
|
2
|
+
/**
|
3
|
+
* Specifies claims withing a requested Credential.
|
4
|
+
*/
|
5
|
+
export declare namespace DcqlClaimsQuery {
|
6
|
+
const vValue: v.UnionSchema<[v.StringSchema<undefined>, v.SchemaWithPipe<[v.NumberSchema<undefined>, v.IntegerAction<number, undefined>]>, v.BooleanSchema<undefined>], undefined>;
|
7
|
+
type ClaimValue = v.InferOutput<typeof vValue>;
|
8
|
+
const vPath: v.UnionSchema<[v.StringSchema<undefined>, v.SchemaWithPipe<[v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, v.NullSchema<undefined>], undefined>;
|
9
|
+
type ClaimPath = v.InferOutput<typeof vPath>;
|
10
|
+
const vW3cSdJwtVc: v.ObjectSchema<{
|
11
|
+
readonly id: v.SchemaWithPipe<[v.OptionalSchema<v.SchemaWithPipe<[v.StringSchema<undefined>, v.RegexAction<string, undefined>]>, never>, v.DescriptionAction<string | undefined, "A string identifying the particular claim. The value MUST be a non-empty string consisting of alphanumeric, underscore (_) or hyphen (-) characters. Within the particular claims array, the same id MUST NOT be present more than once.">]>;
|
12
|
+
readonly path: v.SchemaWithPipe<[v.ArraySchema<v.UnionSchema<[v.StringSchema<undefined>, v.SchemaWithPipe<[v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, v.NullSchema<undefined>], undefined>, undefined>, v.DescriptionAction<(string | number | null)[], "A non-empty array representing a claims path pointer that specifies the path to a claim within the Verifiable Credential.">]>;
|
13
|
+
readonly values: v.SchemaWithPipe<[v.OptionalSchema<v.ArraySchema<v.UnionSchema<[v.StringSchema<undefined>, v.SchemaWithPipe<[v.NumberSchema<undefined>, v.IntegerAction<number, undefined>]>, v.BooleanSchema<undefined>], undefined>, undefined>, never>, v.DescriptionAction<(string | number | boolean)[] | undefined, "An array of strings, integers or boolean values that specifies the expected values of the claim. If the values property is present, the Wallet SHOULD return the claim only if the type and value of the claim both match for at least one of the elements in the array.">]>;
|
14
|
+
}, undefined>;
|
15
|
+
type W3cAndSdJwtVc = v.InferOutput<typeof vW3cSdJwtVc>;
|
16
|
+
const vMdoc: v.ObjectSchema<{
|
17
|
+
readonly id: v.SchemaWithPipe<[v.OptionalSchema<v.SchemaWithPipe<[v.StringSchema<undefined>, v.RegexAction<string, undefined>]>, never>, v.DescriptionAction<string | undefined, "A string identifying the particular claim. The value MUST be a non-empty string consisting of alphanumeric, underscore (_) or hyphen (-) characters. Within the particular claims array, the same id MUST NOT be present more than once.">]>;
|
18
|
+
readonly namespace: v.SchemaWithPipe<[v.StringSchema<undefined>, v.DescriptionAction<string, "A string that specifies the namespace of the data element within the mdoc, e.g., org.iso.18013.5.1.">]>;
|
19
|
+
readonly claim_name: v.SchemaWithPipe<[v.StringSchema<undefined>, v.DescriptionAction<string, "A string that specifies the data element identifier of the data element within the provided namespace in the mdoc, e.g., first_name.">]>;
|
20
|
+
readonly values: v.SchemaWithPipe<[v.OptionalSchema<v.ArraySchema<v.UnionSchema<[v.StringSchema<undefined>, v.SchemaWithPipe<[v.NumberSchema<undefined>, v.IntegerAction<number, undefined>]>, v.BooleanSchema<undefined>], undefined>, undefined>, never>, v.DescriptionAction<(string | number | boolean)[] | undefined, "An array of strings, integers or boolean values that specifies the expected values of the claim. If the values property is present, the Wallet SHOULD return the claim only if the type and value of the claim both match for at least one of the elements in the array.">]>;
|
21
|
+
}, undefined>;
|
22
|
+
type Mdoc = v.InferOutput<typeof vMdoc>;
|
23
|
+
const vModel: v.UnionSchema<[v.ObjectSchema<{
|
24
|
+
readonly id: v.SchemaWithPipe<[v.OptionalSchema<v.SchemaWithPipe<[v.StringSchema<undefined>, v.RegexAction<string, undefined>]>, never>, v.DescriptionAction<string | undefined, "A string identifying the particular claim. The value MUST be a non-empty string consisting of alphanumeric, underscore (_) or hyphen (-) characters. Within the particular claims array, the same id MUST NOT be present more than once.">]>;
|
25
|
+
readonly namespace: v.SchemaWithPipe<[v.StringSchema<undefined>, v.DescriptionAction<string, "A string that specifies the namespace of the data element within the mdoc, e.g., org.iso.18013.5.1.">]>;
|
26
|
+
readonly claim_name: v.SchemaWithPipe<[v.StringSchema<undefined>, v.DescriptionAction<string, "A string that specifies the data element identifier of the data element within the provided namespace in the mdoc, e.g., first_name.">]>;
|
27
|
+
readonly values: v.SchemaWithPipe<[v.OptionalSchema<v.ArraySchema<v.UnionSchema<[v.StringSchema<undefined>, v.SchemaWithPipe<[v.NumberSchema<undefined>, v.IntegerAction<number, undefined>]>, v.BooleanSchema<undefined>], undefined>, undefined>, never>, v.DescriptionAction<(string | number | boolean)[] | undefined, "An array of strings, integers or boolean values that specifies the expected values of the claim. If the values property is present, the Wallet SHOULD return the claim only if the type and value of the claim both match for at least one of the elements in the array.">]>;
|
28
|
+
}, undefined>, v.ObjectSchema<{
|
29
|
+
readonly id: v.SchemaWithPipe<[v.OptionalSchema<v.SchemaWithPipe<[v.StringSchema<undefined>, v.RegexAction<string, undefined>]>, never>, v.DescriptionAction<string | undefined, "A string identifying the particular claim. The value MUST be a non-empty string consisting of alphanumeric, underscore (_) or hyphen (-) characters. Within the particular claims array, the same id MUST NOT be present more than once.">]>;
|
30
|
+
readonly path: v.SchemaWithPipe<[v.ArraySchema<v.UnionSchema<[v.StringSchema<undefined>, v.SchemaWithPipe<[v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, v.NullSchema<undefined>], undefined>, undefined>, v.DescriptionAction<(string | number | null)[], "A non-empty array representing a claims path pointer that specifies the path to a claim within the Verifiable Credential.">]>;
|
31
|
+
readonly values: v.SchemaWithPipe<[v.OptionalSchema<v.ArraySchema<v.UnionSchema<[v.StringSchema<undefined>, v.SchemaWithPipe<[v.NumberSchema<undefined>, v.IntegerAction<number, undefined>]>, v.BooleanSchema<undefined>], undefined>, undefined>, never>, v.DescriptionAction<(string | number | boolean)[] | undefined, "An array of strings, integers or boolean values that specifies the expected values of the claim. If the values property is present, the Wallet SHOULD return the claim only if the type and value of the claim both match for at least one of the elements in the array.">]>;
|
32
|
+
}, undefined>], undefined>;
|
33
|
+
type Input = v.InferInput<typeof vModel>;
|
34
|
+
type Out = v.InferOutput<typeof vModel>;
|
35
|
+
}
|
36
|
+
export type DcqlClaimsQuery = DcqlClaimsQuery.Out;
|
37
|
+
//# sourceMappingURL=m-dcql-claims-query.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"m-dcql-claims-query.d.ts","sourceRoot":"","sources":["../../../src/dcql-query/m-dcql-claims-query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAG7B;;GAEG;AACH,yBAAiB,eAAe,CAAC;IACxB,MAAM,MAAM,sKAIjB,CAAC;IACH,KAAY,UAAU,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,MAAM,CAAC,CAAC;IAE/C,MAAM,KAAK,2MAIhB,CAAC;IACH,KAAY,SAAS,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,KAAK,CAAC,CAAC;IAE7C,MAAM,WAAW;;;;iBAmBtB,CAAC;IACH,KAAY,aAAa,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,WAAW,CAAC,CAAC;IAEvD,MAAM,KAAK;;;;;iBAyBhB,CAAC;IACH,KAAY,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,KAAK,CAAC,CAAC;IAExC,MAAM,MAAM;;;;;;;;;8BAAgC,CAAC;IACpD,KAAY,KAAK,GAAG,CAAC,CAAC,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC;IAChD,KAAY,GAAG,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,MAAM,CAAC,CAAC;CAChD;AACD,MAAM,MAAM,eAAe,GAAG,eAAe,CAAC,GAAG,CAAC"}
|