@learncard/core 8.2.0 → 8.3.1
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/core.cjs.development.js +128 -58
- package/dist/core.cjs.development.js.map +4 -4
- package/dist/core.cjs.production.min.js +31 -31
- package/dist/core.cjs.production.min.js.map +4 -4
- package/dist/core.d.ts +58 -32
- package/dist/core.esm.js +127 -59
- package/dist/core.esm.js.map +4 -4
- package/package.json +5 -5
@@ -7128,10 +7128,10 @@ var require_lodash = __commonJS({
|
|
7128
7128
|
return array && array.length ? baseUniq(array) : [];
|
7129
7129
|
}
|
7130
7130
|
__name(uniq, "uniq");
|
7131
|
-
function
|
7131
|
+
function uniqBy2(array, iteratee2) {
|
7132
7132
|
return array && array.length ? baseUniq(array, getIteratee(iteratee2, 2)) : [];
|
7133
7133
|
}
|
7134
|
-
__name(
|
7134
|
+
__name(uniqBy2, "uniqBy");
|
7135
7135
|
function uniqWith(array, comparator) {
|
7136
7136
|
comparator = typeof comparator == "function" ? comparator : undefined2;
|
7137
7137
|
return array && array.length ? baseUniq(array, undefined2, comparator) : [];
|
@@ -8971,7 +8971,7 @@ var require_lodash = __commonJS({
|
|
8971
8971
|
lodash.unionBy = unionBy;
|
8972
8972
|
lodash.unionWith = unionWith;
|
8973
8973
|
lodash.uniq = uniq;
|
8974
|
-
lodash.uniqBy =
|
8974
|
+
lodash.uniqBy = uniqBy2;
|
8975
8975
|
lodash.uniqWith = uniqWith;
|
8976
8976
|
lodash.unset = unset;
|
8977
8977
|
lodash.unzip = unzip;
|
@@ -11423,7 +11423,7 @@ var require_sha256 = __commonJS({
|
|
11423
11423
|
var d3 = v[3];
|
11424
11424
|
var e2 = v[4];
|
11425
11425
|
var f = v[5];
|
11426
|
-
var
|
11426
|
+
var g2 = v[6];
|
11427
11427
|
var h3 = v[7];
|
11428
11428
|
for (var i2 = 0; i2 < 16; i2++) {
|
11429
11429
|
var j = pos + i2 * 4;
|
@@ -11437,10 +11437,10 @@ var require_sha256 = __commonJS({
|
|
11437
11437
|
w2[i2] = (t1 + w2[i2 - 7] | 0) + (t2 + w2[i2 - 16] | 0);
|
11438
11438
|
}
|
11439
11439
|
for (var i2 = 0; i2 < 64; i2++) {
|
11440
|
-
var t1 = (((e2 >>> 6 | e2 << 32 - 6) ^ (e2 >>> 11 | e2 << 32 - 11) ^ (e2 >>> 25 | e2 << 32 - 25)) + (e2 & f ^ ~e2 &
|
11440
|
+
var t1 = (((e2 >>> 6 | e2 << 32 - 6) ^ (e2 >>> 11 | e2 << 32 - 11) ^ (e2 >>> 25 | e2 << 32 - 25)) + (e2 & f ^ ~e2 & g2) | 0) + (h3 + (K2[i2] + w2[i2] | 0) | 0) | 0;
|
11441
11441
|
var t2 = ((a3 >>> 2 | a3 << 32 - 2) ^ (a3 >>> 13 | a3 << 32 - 13) ^ (a3 >>> 22 | a3 << 32 - 22)) + (a3 & b2 ^ a3 & c2 ^ b2 & c2) | 0;
|
11442
|
-
h3 =
|
11443
|
-
|
11442
|
+
h3 = g2;
|
11443
|
+
g2 = f;
|
11444
11444
|
f = e2;
|
11445
11445
|
e2 = d3 + t1 | 0;
|
11446
11446
|
d3 = c2;
|
@@ -11454,7 +11454,7 @@ var require_sha256 = __commonJS({
|
|
11454
11454
|
v[3] += d3;
|
11455
11455
|
v[4] += e2;
|
11456
11456
|
v[5] += f;
|
11457
|
-
v[6] +=
|
11457
|
+
v[6] += g2;
|
11458
11458
|
v[7] += h3;
|
11459
11459
|
pos += 64;
|
11460
11460
|
len -= 64;
|
@@ -14310,11 +14310,11 @@ var require_bn = __commonJS({
|
|
14310
14310
|
var B2 = new BN3(0);
|
14311
14311
|
var C = new BN3(0);
|
14312
14312
|
var D2 = new BN3(1);
|
14313
|
-
var
|
14313
|
+
var g2 = 0;
|
14314
14314
|
while (x2.isEven() && y3.isEven()) {
|
14315
14315
|
x2.iushrn(1);
|
14316
14316
|
y3.iushrn(1);
|
14317
|
-
++
|
14317
|
+
++g2;
|
14318
14318
|
}
|
14319
14319
|
var yp = y3.clone();
|
14320
14320
|
var xp = x2.clone();
|
@@ -14358,7 +14358,7 @@ var require_bn = __commonJS({
|
|
14358
14358
|
return {
|
14359
14359
|
a: C,
|
14360
14360
|
b: D2,
|
14361
|
-
gcd: y3.iushln(
|
14361
|
+
gcd: y3.iushln(g2)
|
14362
14362
|
};
|
14363
14363
|
}, "egcd");
|
14364
14364
|
BN3.prototype._invmp = /* @__PURE__ */ __name(function _invmp(p) {
|
@@ -16626,13 +16626,13 @@ var require_edwards = __commonJS({
|
|
16626
16626
|
c2 = c2.redIAdd(c2);
|
16627
16627
|
var d3 = this.curve._mulA(a3);
|
16628
16628
|
var e2 = this.x.redAdd(this.y).redSqr().redISub(a3).redISub(b2);
|
16629
|
-
var
|
16630
|
-
var f =
|
16629
|
+
var g2 = d3.redAdd(b2);
|
16630
|
+
var f = g2.redSub(c2);
|
16631
16631
|
var h3 = d3.redSub(b2);
|
16632
16632
|
var nx = e2.redMul(f);
|
16633
|
-
var ny =
|
16633
|
+
var ny = g2.redMul(h3);
|
16634
16634
|
var nt = e2.redMul(h3);
|
16635
|
-
var nz = f.redMul(
|
16635
|
+
var nz = f.redMul(g2);
|
16636
16636
|
return this.curve.point(nx, ny, nz, nt);
|
16637
16637
|
}, "_extDbl");
|
16638
16638
|
Point2.prototype._projDbl = /* @__PURE__ */ __name(function _projDbl() {
|
@@ -16684,12 +16684,12 @@ var require_edwards = __commonJS({
|
|
16684
16684
|
var d3 = this.z.redMul(p.z.redAdd(p.z));
|
16685
16685
|
var e2 = b2.redSub(a3);
|
16686
16686
|
var f = d3.redSub(c2);
|
16687
|
-
var
|
16687
|
+
var g2 = d3.redAdd(c2);
|
16688
16688
|
var h3 = b2.redAdd(a3);
|
16689
16689
|
var nx = e2.redMul(f);
|
16690
|
-
var ny =
|
16690
|
+
var ny = g2.redMul(h3);
|
16691
16691
|
var nt = e2.redMul(h3);
|
16692
|
-
var nz = f.redMul(
|
16692
|
+
var nz = f.redMul(g2);
|
16693
16693
|
return this.curve.point(nx, ny, nz, nt);
|
16694
16694
|
}, "_extAdd");
|
16695
16695
|
Point2.prototype._projAdd = /* @__PURE__ */ __name(function _projAdd(p) {
|
@@ -16699,17 +16699,17 @@ var require_edwards = __commonJS({
|
|
16699
16699
|
var d3 = this.y.redMul(p.y);
|
16700
16700
|
var e2 = this.curve.d.redMul(c2).redMul(d3);
|
16701
16701
|
var f = b2.redSub(e2);
|
16702
|
-
var
|
16702
|
+
var g2 = b2.redAdd(e2);
|
16703
16703
|
var tmp = this.x.redAdd(this.y).redMul(p.x.redAdd(p.y)).redISub(c2).redISub(d3);
|
16704
16704
|
var nx = a3.redMul(f).redMul(tmp);
|
16705
16705
|
var ny;
|
16706
16706
|
var nz;
|
16707
16707
|
if (this.curve.twisted) {
|
16708
|
-
ny = a3.redMul(
|
16709
|
-
nz = f.redMul(
|
16708
|
+
ny = a3.redMul(g2).redMul(d3.redSub(this.curve._mulA(c2)));
|
16709
|
+
nz = f.redMul(g2);
|
16710
16710
|
} else {
|
16711
|
-
ny = a3.redMul(
|
16712
|
-
nz = this.curve._mulC(f).redMul(
|
16711
|
+
ny = a3.redMul(g2).redMul(d3.redSub(c2));
|
16712
|
+
nz = this.curve._mulC(f).redMul(g2);
|
16713
16713
|
}
|
16714
16714
|
return this.curve.point(nx, ny, nz);
|
16715
16715
|
}, "_projAdd");
|
@@ -17396,14 +17396,14 @@ var require__2 = __commonJS({
|
|
17396
17396
|
var d3 = this.h[3];
|
17397
17397
|
var e2 = this.h[4];
|
17398
17398
|
var f = this.h[5];
|
17399
|
-
var
|
17399
|
+
var g2 = this.h[6];
|
17400
17400
|
var h3 = this.h[7];
|
17401
17401
|
assert2(this.k.length === W.length);
|
17402
17402
|
for (i2 = 0; i2 < W.length; i2++) {
|
17403
|
-
var T1 = sum32_5(h3, s1_256(e2), ch32(e2, f,
|
17403
|
+
var T1 = sum32_5(h3, s1_256(e2), ch32(e2, f, g2), this.k[i2], W[i2]);
|
17404
17404
|
var T2 = sum32(s0_256(a3), maj32(a3, b2, c2));
|
17405
|
-
h3 =
|
17406
|
-
|
17405
|
+
h3 = g2;
|
17406
|
+
g2 = f;
|
17407
17407
|
f = e2;
|
17408
17408
|
e2 = sum32(d3, T1);
|
17409
17409
|
d3 = c2;
|
@@ -17417,7 +17417,7 @@ var require__2 = __commonJS({
|
|
17417
17417
|
this.h[3] = sum32(this.h[3], d3);
|
17418
17418
|
this.h[4] = sum32(this.h[4], e2);
|
17419
17419
|
this.h[5] = sum32(this.h[5], f);
|
17420
|
-
this.h[6] = sum32(this.h[6],
|
17420
|
+
this.h[6] = sum32(this.h[6], g2);
|
17421
17421
|
this.h[7] = sum32(this.h[7], h3);
|
17422
17422
|
}, "_update");
|
17423
17423
|
SHA256.prototype._digest = /* @__PURE__ */ __name(function digest2(enc) {
|
@@ -21633,7 +21633,7 @@ var require_ed25519 = __commonJS({
|
|
21633
21633
|
}
|
21634
21634
|
__name(pow2523, "pow2523");
|
21635
21635
|
function edadd(p, q2) {
|
21636
|
-
const a3 = gf(), b2 = gf(), c2 = gf(), d3 = gf(), e2 = gf(), f = gf(),
|
21636
|
+
const a3 = gf(), b2 = gf(), c2 = gf(), d3 = gf(), e2 = gf(), f = gf(), g2 = gf(), h3 = gf(), t2 = gf();
|
21637
21637
|
sub(a3, p[1], p[0]);
|
21638
21638
|
sub(t2, q2[1], q2[0]);
|
21639
21639
|
mul3(a3, a3, t2);
|
@@ -21646,11 +21646,11 @@ var require_ed25519 = __commonJS({
|
|
21646
21646
|
add3(d3, d3, d3);
|
21647
21647
|
sub(e2, b2, a3);
|
21648
21648
|
sub(f, d3, c2);
|
21649
|
-
add3(
|
21649
|
+
add3(g2, d3, c2);
|
21650
21650
|
add3(h3, b2, a3);
|
21651
21651
|
mul3(p[0], e2, f);
|
21652
|
-
mul3(p[1], h3,
|
21653
|
-
mul3(p[2],
|
21652
|
+
mul3(p[1], h3, g2);
|
21653
|
+
mul3(p[2], g2, f);
|
21654
21654
|
mul3(p[3], e2, h3);
|
21655
21655
|
}
|
21656
21656
|
__name(edadd, "edadd");
|
@@ -23270,7 +23270,7 @@ var require_poly1305 = __commonJS({
|
|
23270
23270
|
if (macpos === void 0) {
|
23271
23271
|
macpos = 0;
|
23272
23272
|
}
|
23273
|
-
var
|
23273
|
+
var g2 = new Uint16Array(10);
|
23274
23274
|
var c2;
|
23275
23275
|
var mask;
|
23276
23276
|
var f;
|
@@ -23298,22 +23298,22 @@ var require_poly1305 = __commonJS({
|
|
23298
23298
|
c2 = this._h[1] >>> 13;
|
23299
23299
|
this._h[1] &= 8191;
|
23300
23300
|
this._h[2] += c2;
|
23301
|
-
|
23302
|
-
c2 =
|
23303
|
-
|
23301
|
+
g2[0] = this._h[0] + 5;
|
23302
|
+
c2 = g2[0] >>> 13;
|
23303
|
+
g2[0] &= 8191;
|
23304
23304
|
for (i2 = 1; i2 < 10; i2++) {
|
23305
|
-
|
23306
|
-
c2 =
|
23307
|
-
|
23305
|
+
g2[i2] = this._h[i2] + c2;
|
23306
|
+
c2 = g2[i2] >>> 13;
|
23307
|
+
g2[i2] &= 8191;
|
23308
23308
|
}
|
23309
|
-
|
23309
|
+
g2[9] -= 1 << 13;
|
23310
23310
|
mask = (c2 ^ 1) - 1;
|
23311
23311
|
for (i2 = 0; i2 < 10; i2++) {
|
23312
|
-
|
23312
|
+
g2[i2] &= mask;
|
23313
23313
|
}
|
23314
23314
|
mask = ~mask;
|
23315
23315
|
for (i2 = 0; i2 < 10; i2++) {
|
23316
|
-
this._h[i2] = this._h[i2] & mask |
|
23316
|
+
this._h[i2] = this._h[i2] & mask | g2[i2];
|
23317
23317
|
}
|
23318
23318
|
this._h[0] = (this._h[0] | this._h[1] << 13) & 65535;
|
23319
23319
|
this._h[1] = (this._h[1] >>> 3 | this._h[2] << 10) & 65535;
|
@@ -34964,11 +34964,11 @@ var require_bn2 = __commonJS({
|
|
34964
34964
|
var B2 = new BN3(0);
|
34965
34965
|
var C = new BN3(0);
|
34966
34966
|
var D2 = new BN3(1);
|
34967
|
-
var
|
34967
|
+
var g2 = 0;
|
34968
34968
|
while (x2.isEven() && y3.isEven()) {
|
34969
34969
|
x2.iushrn(1);
|
34970
34970
|
y3.iushrn(1);
|
34971
|
-
++
|
34971
|
+
++g2;
|
34972
34972
|
}
|
34973
34973
|
var yp = y3.clone();
|
34974
34974
|
var xp = x2.clone();
|
@@ -35012,7 +35012,7 @@ var require_bn2 = __commonJS({
|
|
35012
35012
|
return {
|
35013
35013
|
a: C,
|
35014
35014
|
b: D2,
|
35015
|
-
gcd: y3.iushln(
|
35015
|
+
gcd: y3.iushln(g2)
|
35016
35016
|
};
|
35017
35017
|
}, "egcd");
|
35018
35018
|
BN3.prototype._invmp = /* @__PURE__ */ __name(function _invmp(p) {
|
@@ -36915,10 +36915,10 @@ var require_tslib = __commonJS({
|
|
36915
36915
|
if (t2[0] & 1)
|
36916
36916
|
throw t2[1];
|
36917
36917
|
return t2[1];
|
36918
|
-
}, trys: [], ops: [] }, f, y3, t2,
|
36919
|
-
return
|
36918
|
+
}, trys: [], ops: [] }, f, y3, t2, g2;
|
36919
|
+
return g2 = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g2[Symbol.iterator] = function() {
|
36920
36920
|
return this;
|
36921
|
-
}),
|
36921
|
+
}), g2;
|
36922
36922
|
function verb(n) {
|
36923
36923
|
return function(v) {
|
36924
36924
|
return step([n, v]);
|
@@ -36928,7 +36928,7 @@ var require_tslib = __commonJS({
|
|
36928
36928
|
function step(op) {
|
36929
36929
|
if (f)
|
36930
36930
|
throw new TypeError("Generator is already executing.");
|
36931
|
-
while (
|
36931
|
+
while (g2 && (g2 = 0, op[0] && (_2 = 0)), _2)
|
36932
36932
|
try {
|
36933
36933
|
if (f = 1, y3 && (t2 = op[0] & 2 ? y3["return"] : op[0] ? y3["throw"] || ((t2 = y3["return"]) && t2.call(y3), 0) : y3.next) && !(t2 = t2.call(y3, op[1])).done)
|
36934
36934
|
return t2;
|
@@ -37073,12 +37073,12 @@ var require_tslib = __commonJS({
|
|
37073
37073
|
__asyncGenerator2 = /* @__PURE__ */ __name(function(thisArg, _arguments, generator) {
|
37074
37074
|
if (!Symbol.asyncIterator)
|
37075
37075
|
throw new TypeError("Symbol.asyncIterator is not defined.");
|
37076
|
-
var
|
37076
|
+
var g2 = generator.apply(thisArg, _arguments || []), i2, q2 = [];
|
37077
37077
|
return i2 = {}, verb("next"), verb("throw"), verb("return"), i2[Symbol.asyncIterator] = function() {
|
37078
37078
|
return this;
|
37079
37079
|
}, i2;
|
37080
37080
|
function verb(n) {
|
37081
|
-
if (
|
37081
|
+
if (g2[n])
|
37082
37082
|
i2[n] = function(v) {
|
37083
37083
|
return new Promise(function(a3, b2) {
|
37084
37084
|
q2.push([n, v, a3, b2]) > 1 || resume(n, v);
|
@@ -37088,7 +37088,7 @@ var require_tslib = __commonJS({
|
|
37088
37088
|
__name(verb, "verb");
|
37089
37089
|
function resume(n, v) {
|
37090
37090
|
try {
|
37091
|
-
step(
|
37091
|
+
step(g2[n](v));
|
37092
37092
|
} catch (e2) {
|
37093
37093
|
settle(q2[0][3], e2);
|
37094
37094
|
}
|
@@ -46186,6 +46186,7 @@ __export(src_exports2, {
|
|
46186
46186
|
getEthereumPlugin: () => getEthereumPlugin,
|
46187
46187
|
getIDXPlugin: () => getIDXPlugin,
|
46188
46188
|
getTestCache: () => getTestCache,
|
46189
|
+
getTestStorage: () => getTestStorage,
|
46189
46190
|
getVCAPIPlugin: () => getVCAPIPlugin,
|
46190
46191
|
getVCPlugin: () => getVCPlugin,
|
46191
46192
|
getVCTemplatesPlugin: () => getVCTemplatesPlugin,
|
@@ -46195,9 +46196,20 @@ __export(src_exports2, {
|
|
46195
46196
|
learnCardFromSeed: () => learnCardFromSeed
|
46196
46197
|
});
|
46197
46198
|
module.exports = __toCommonJS(src_exports2);
|
46199
|
+
|
46200
|
+
// src/polyfills.ts
|
46198
46201
|
var import_promise = __toESM(require_promise3());
|
46199
46202
|
var import_isomorphic_fetch = require("isomorphic-fetch");
|
46200
|
-
var
|
46203
|
+
var ac = __toESM(require("abort-controller/dist/abort-controller.js"));
|
46204
|
+
var g = typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : void 0;
|
46205
|
+
if (g) {
|
46206
|
+
if (typeof g.AbortController === "undefined") {
|
46207
|
+
g.AbortController = ac.AbortController;
|
46208
|
+
}
|
46209
|
+
if (typeof g.AbortSignal === "undefined") {
|
46210
|
+
g.AbortSignal = ac.AbortSignal;
|
46211
|
+
}
|
46212
|
+
}
|
46201
46213
|
|
46202
46214
|
// src/wallet/base/helpers.ts
|
46203
46215
|
var findFirstResult = /* @__PURE__ */ __name((array, callback) => {
|
@@ -46238,6 +46250,12 @@ var mapObject = /* @__PURE__ */ __name((obj, callback) => {
|
|
46238
46250
|
Object.entries(obj).map(([key2, value], index) => [key2, callback(value, index)])
|
46239
46251
|
);
|
46240
46252
|
}, "mapObject");
|
46253
|
+
var isFulfilledAndNotEmpty = /* @__PURE__ */ __name((input) => input.status === "fulfilled" && !!input.value, "isFulfilledAndNotEmpty");
|
46254
|
+
var uniqBy = /* @__PURE__ */ __name((array, key2) => {
|
46255
|
+
return [
|
46256
|
+
...new Map(array.map((obj) => [key2 instanceof Function ? key2(obj) : obj[key2], obj])).values()
|
46257
|
+
];
|
46258
|
+
}, "uniqBy");
|
46241
46259
|
|
46242
46260
|
// src/wallet/base/wallet.ts
|
46243
46261
|
var getPlaneProviders = /* @__PURE__ */ __name((plugins, plane) => {
|
@@ -46278,7 +46296,7 @@ var generateReadPlane = /* @__PURE__ */ __name((learnCard) => {
|
|
46278
46296
|
return cachedResponse;
|
46279
46297
|
}
|
46280
46298
|
}
|
46281
|
-
const
|
46299
|
+
const results = await Promise.allSettled(
|
46282
46300
|
learnCard.plugins.map(async (plugin) => {
|
46283
46301
|
if (!pluginImplementsPlane(plugin, "read")) {
|
46284
46302
|
throw new Error("Plugin is not a Read Plugin");
|
@@ -46286,6 +46304,7 @@ var generateReadPlane = /* @__PURE__ */ __name((learnCard) => {
|
|
46286
46304
|
return plugin.read.get(learnCard, uri);
|
46287
46305
|
})
|
46288
46306
|
);
|
46307
|
+
const vc = results.find(isFulfilledAndNotEmpty)?.value;
|
46289
46308
|
if (vc && learnCardImplementsPlane(learnCard, "cache") && cache !== "skip-cache") {
|
46290
46309
|
await learnCard.cache.setVc(uri, vc);
|
46291
46310
|
}
|
@@ -46415,7 +46434,7 @@ var generateIndexPlane = /* @__PURE__ */ __name((learnCard) => {
|
|
46415
46434
|
return plugin.index.get(learnCard, query);
|
46416
46435
|
})
|
46417
46436
|
)).flat();
|
46418
|
-
const results =
|
46437
|
+
const results = uniqBy(resultsWithDuplicates, "id");
|
46419
46438
|
if (results && learnCardImplementsPlane(learnCard, "cache") && cache !== "skip-cache") {
|
46420
46439
|
await learnCard.cache.setIndex("all", query ?? {}, results);
|
46421
46440
|
}
|
@@ -46429,7 +46448,7 @@ var generateCachePlane = /* @__PURE__ */ __name((learnCard) => {
|
|
46429
46448
|
getIndex: async (name5, query) => {
|
46430
46449
|
learnCard.debug?.("learnCard.cache.getIndex");
|
46431
46450
|
try {
|
46432
|
-
const
|
46451
|
+
const results = await Promise.allSettled(
|
46433
46452
|
learnCard.plugins.map(async (plugin) => {
|
46434
46453
|
if (!pluginImplementsPlane(plugin, "cache")) {
|
46435
46454
|
throw new Error("Plugin is not a Cache Plugin");
|
@@ -46437,6 +46456,7 @@ var generateCachePlane = /* @__PURE__ */ __name((learnCard) => {
|
|
46437
46456
|
return plugin.cache.getIndex(learnCard, name5, query);
|
46438
46457
|
})
|
46439
46458
|
);
|
46459
|
+
const index = results.find(isFulfilledAndNotEmpty)?.value;
|
46440
46460
|
return index;
|
46441
46461
|
} catch (error) {
|
46442
46462
|
return void 0;
|
@@ -46469,7 +46489,7 @@ var generateCachePlane = /* @__PURE__ */ __name((learnCard) => {
|
|
46469
46489
|
getVc: async (uri) => {
|
46470
46490
|
learnCard.debug?.("learnCard.cache.getVc");
|
46471
46491
|
try {
|
46472
|
-
const
|
46492
|
+
const results = await Promise.allSettled(
|
46473
46493
|
learnCard.plugins.map(async (plugin) => {
|
46474
46494
|
if (!pluginImplementsPlane(plugin, "cache")) {
|
46475
46495
|
throw new Error("Plugin is not a Cache Plugin");
|
@@ -46477,6 +46497,7 @@ var generateCachePlane = /* @__PURE__ */ __name((learnCard) => {
|
|
46477
46497
|
return plugin.cache.getVc(learnCard, uri);
|
46478
46498
|
})
|
46479
46499
|
);
|
46500
|
+
const vc = results.find(isFulfilledAndNotEmpty)?.value;
|
46480
46501
|
return vc;
|
46481
46502
|
} catch (error) {
|
46482
46503
|
return void 0;
|
@@ -51976,7 +51997,7 @@ var mod = /* @__PURE__ */ Object.freeze({
|
|
51976
51997
|
});
|
51977
51998
|
|
51978
51999
|
// ../learn-card-types/dist/types.esm.js
|
51979
|
-
var ContextValidator = mod.string().
|
52000
|
+
var ContextValidator = mod.array(mod.string().or(mod.record(mod.any())));
|
51980
52001
|
var AchievementCriteriaValidator = mod.object({
|
51981
52002
|
type: mod.string().optional(),
|
51982
52003
|
narrative: mod.string().optional()
|
@@ -71421,6 +71442,55 @@ var getTestCache = /* @__PURE__ */ __name(() => {
|
|
71421
71442
|
methods: {}
|
71422
71443
|
};
|
71423
71444
|
}, "getTestCache");
|
71445
|
+
|
71446
|
+
// src/wallet/plugins/test-storage/index.ts
|
71447
|
+
var getTestStorage = /* @__PURE__ */ __name(() => {
|
71448
|
+
let index = [];
|
71449
|
+
let vcs = [];
|
71450
|
+
return {
|
71451
|
+
name: "Test Storage",
|
71452
|
+
displayName: "Test Storage",
|
71453
|
+
description: "[Testing] Tests Storage Implementations",
|
71454
|
+
read: {
|
71455
|
+
get: async (_learnCard, uri) => {
|
71456
|
+
_learnCard.debug?.("Test Storage, read, get", { uri });
|
71457
|
+
if (!uri)
|
71458
|
+
return void 0;
|
71459
|
+
const [_lc, method, vcIndex] = uri.split(":");
|
71460
|
+
if (method !== "test")
|
71461
|
+
return void 0;
|
71462
|
+
return vcs[Number.parseInt(vcIndex)];
|
71463
|
+
}
|
71464
|
+
},
|
71465
|
+
store: {
|
71466
|
+
upload: async (_learnCard, vc) => {
|
71467
|
+
_learnCard.debug?.("Test Storage, store, upload", { vc });
|
71468
|
+
const vcIndex = vcs.length;
|
71469
|
+
vcs.push(vc);
|
71470
|
+
return `lc:test:${vcIndex}`;
|
71471
|
+
}
|
71472
|
+
},
|
71473
|
+
index: {
|
71474
|
+
get: async (_learnCard, query) => {
|
71475
|
+
_learnCard.debug?.("Test Storage, index, get", { query });
|
71476
|
+
return index;
|
71477
|
+
},
|
71478
|
+
add: async (_learnCard, record) => {
|
71479
|
+
_learnCard.debug?.("Test Storage, index, add", { record });
|
71480
|
+
index.push(record);
|
71481
|
+
return true;
|
71482
|
+
},
|
71483
|
+
update: async () => false,
|
71484
|
+
remove: async (_learnCard, id) => {
|
71485
|
+
_learnCard.debug?.("Test Storage, index, remove", { id });
|
71486
|
+
let recordIndex = index.findIndex((record) => record.id === id);
|
71487
|
+
index.splice(recordIndex, 1);
|
71488
|
+
return true;
|
71489
|
+
}
|
71490
|
+
},
|
71491
|
+
methods: {}
|
71492
|
+
};
|
71493
|
+
}, "getTestStorage");
|
71424
71494
|
/*!
|
71425
71495
|
* A CredentialHandlerRegistration provides a CredentialManager to enable Web
|
71426
71496
|
* apps to register Profiles that can be presented to websites.
|