@learncard/learn-cloud-plugin 2.3.26 → 2.3.28
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/learn-cloud-plugin.cjs.development.cjs +54 -14
- package/dist/learn-cloud-plugin.cjs.development.cjs.map +3 -3
- package/dist/learn-cloud-plugin.cjs.production.min.cjs +15 -15
- package/dist/learn-cloud-plugin.cjs.production.min.cjs.map +3 -3
- package/dist/learn-cloud-plugin.esm.js +55 -15
- package/dist/learn-cloud-plugin.esm.js.map +3 -3
- package/dist/plugin.d.ts.map +1 -1
- package/package.json +7 -7
|
@@ -6109,7 +6109,7 @@ var require_lib = __commonJS({
|
|
|
6109
6109
|
// src/plugin.ts
|
|
6110
6110
|
var import_lodash = __toESM(require_lodash(), 1);
|
|
6111
6111
|
import { getClient } from "@learncard/learn-cloud-client";
|
|
6112
|
-
import { isEncrypted } from "@learncard/helpers";
|
|
6112
|
+
import { isEncrypted, resolveStorageReadResult } from "@learncard/helpers";
|
|
6113
6113
|
|
|
6114
6114
|
// ../../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/external.js
|
|
6115
6115
|
var external_exports = {};
|
|
@@ -19640,6 +19640,17 @@ var CredentialFormatValidator = external_exports.enum([
|
|
|
19640
19640
|
"vc+sd-jwt",
|
|
19641
19641
|
"mso_mdoc"
|
|
19642
19642
|
]);
|
|
19643
|
+
var StoredCredentialEnvelopeValidator = external_exports.object({
|
|
19644
|
+
format: CredentialFormatValidator,
|
|
19645
|
+
data: external_exports.string()
|
|
19646
|
+
}).passthrough();
|
|
19647
|
+
var isStoredCredentialEnvelope = /* @__PURE__ */ __name2((value) => {
|
|
19648
|
+
if (!value || typeof value !== "object") return false;
|
|
19649
|
+
const candidate = value;
|
|
19650
|
+
if (typeof candidate.format !== "string") return false;
|
|
19651
|
+
if (!CredentialFormatValidator.safeParse(candidate.format).success) return false;
|
|
19652
|
+
return typeof candidate.data === "string" || candidate.data instanceof Uint8Array;
|
|
19653
|
+
}, "isStoredCredentialEnvelope");
|
|
19643
19654
|
var StatusCheckEntryValidator = external_exports.object({
|
|
19644
19655
|
/**
|
|
19645
19656
|
* The `credentialStatus.type` as it appeared on the credential.
|
|
@@ -19726,6 +19737,13 @@ var parseRegexString = /* @__PURE__ */ __name2((regexStr) => {
|
|
|
19726
19737
|
if (!match) throw new Error("Invalid RegExp string format");
|
|
19727
19738
|
return { pattern: match[1], flags: match[2] };
|
|
19728
19739
|
}, "parseRegexString");
|
|
19740
|
+
var withStringOverride = /* @__PURE__ */ __name2((schema) => {
|
|
19741
|
+
const metaSchema = schema;
|
|
19742
|
+
if (typeof metaSchema.meta === "function") {
|
|
19743
|
+
return metaSchema.meta({ override: { type: "string" } });
|
|
19744
|
+
}
|
|
19745
|
+
return schema;
|
|
19746
|
+
}, "withStringOverride");
|
|
19729
19747
|
var RegExpStringValidator = external_exports.string().refine(
|
|
19730
19748
|
(str) => {
|
|
19731
19749
|
try {
|
|
@@ -19745,9 +19763,9 @@ var RegExpStringValidator = external_exports.string().refine(
|
|
|
19745
19763
|
} catch (error46) {
|
|
19746
19764
|
throw new Error(`Invalid RegExp: ${error46.message}`);
|
|
19747
19765
|
}
|
|
19748
|
-
})
|
|
19749
|
-
var RegExpValidator = external_exports.instanceof(RegExp).
|
|
19750
|
-
var BaseStringQuery = external_exports.string().or(external_exports.object({ $in: external_exports.string().array() })).or(external_exports.object({ $regex: RegExpValidator
|
|
19766
|
+
});
|
|
19767
|
+
var RegExpValidator = withStringOverride(external_exports.instanceof(RegExp).or(RegExpStringValidator));
|
|
19768
|
+
var BaseStringQuery = external_exports.string().or(external_exports.object({ $in: external_exports.string().array() })).or(external_exports.object({ $regex: RegExpValidator }));
|
|
19751
19769
|
var StringQuery = external_exports.union([
|
|
19752
19770
|
BaseStringQuery,
|
|
19753
19771
|
external_exports.object({
|
|
@@ -19971,7 +19989,8 @@ var BoostRecipientValidator = external_exports.object({
|
|
|
19971
19989
|
to: LCNVisibleProfileValidator,
|
|
19972
19990
|
from: external_exports.string(),
|
|
19973
19991
|
received: external_exports.string().optional(),
|
|
19974
|
-
uri: external_exports.string().optional()
|
|
19992
|
+
uri: external_exports.string().optional(),
|
|
19993
|
+
status: external_exports.enum(["active", "revoked", "suspended"]).optional()
|
|
19975
19994
|
});
|
|
19976
19995
|
var PaginatedBoostRecipientsValidator = PaginationResponseValidator.extend({
|
|
19977
19996
|
records: BoostRecipientValidator.array()
|
|
@@ -19981,7 +20000,8 @@ var BoostRecipientWithChildrenValidator = external_exports.object({
|
|
|
19981
20000
|
from: external_exports.string(),
|
|
19982
20001
|
received: external_exports.string().optional(),
|
|
19983
20002
|
boostUris: external_exports.array(external_exports.string()),
|
|
19984
|
-
credentialUris: external_exports.array(external_exports.string()).optional()
|
|
20003
|
+
credentialUris: external_exports.array(external_exports.string()).optional(),
|
|
20004
|
+
status: external_exports.enum(["active", "revoked", "suspended"]).optional()
|
|
19985
20005
|
});
|
|
19986
20006
|
var PaginatedBoostRecipientsWithChildrenValidator = PaginationResponseValidator.extend({
|
|
19987
20007
|
records: BoostRecipientWithChildrenValidator.array()
|
|
@@ -21067,7 +21087,8 @@ var CredentialActivityValidator = external_exports.object({
|
|
|
21067
21087
|
inboxCredentialId: external_exports.string().optional(),
|
|
21068
21088
|
integrationId: external_exports.string().optional(),
|
|
21069
21089
|
source: CredentialActivitySourceTypeValidator,
|
|
21070
|
-
metadata: external_exports.record(external_exports.string(), external_exports.unknown()).optional()
|
|
21090
|
+
metadata: external_exports.record(external_exports.string(), external_exports.unknown()).optional(),
|
|
21091
|
+
status: external_exports.enum(["active", "revoked", "suspended"]).optional()
|
|
21071
21092
|
});
|
|
21072
21093
|
var CredentialActivityWithDetailsValidator = CredentialActivityValidator.extend({
|
|
21073
21094
|
boost: external_exports.object({
|
|
@@ -21225,6 +21246,19 @@ var generateEncryptedRecord = /* @__PURE__ */ __name(async (learnCard, record2,
|
|
|
21225
21246
|
}, "generateEncryptedRecord");
|
|
21226
21247
|
|
|
21227
21248
|
// src/plugin.ts
|
|
21249
|
+
var uint8ArrayToBase64Url = /* @__PURE__ */ __name((bytes) => {
|
|
21250
|
+
let binary = "";
|
|
21251
|
+
for (let i = 0; i < bytes.length; i += 1) binary += String.fromCharCode(bytes[i]);
|
|
21252
|
+
const base643 = typeof btoa === "function" ? btoa(binary) : Buffer.from(binary, "binary").toString("base64");
|
|
21253
|
+
return base643.replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
|
|
21254
|
+
}, "uint8ArrayToBase64Url");
|
|
21255
|
+
var normalizeEnvelopeForTransport = /* @__PURE__ */ __name((value) => {
|
|
21256
|
+
if (!isStoredCredentialEnvelope(value)) {
|
|
21257
|
+
return value;
|
|
21258
|
+
}
|
|
21259
|
+
if (typeof value.data === "string") return value;
|
|
21260
|
+
return { ...value, data: uint8ArrayToBase64Url(value.data) };
|
|
21261
|
+
}, "normalizeEnvelopeForTransport");
|
|
21228
21262
|
var getLearnCloudClient = /* @__PURE__ */ __name(async (url2, learnCard) => {
|
|
21229
21263
|
return getClient(url2, async (challenge) => {
|
|
21230
21264
|
const jwt2 = await learnCard.invoke.getDidAuthVp({ proofFormat: "jwt", challenge });
|
|
@@ -21428,7 +21462,9 @@ var getLearnCloudPlugin = /* @__PURE__ */ __name(async (initialLearnCard, url2,
|
|
|
21428
21462
|
if (!result) return null;
|
|
21429
21463
|
try {
|
|
21430
21464
|
const decryptedResult = await _learnCard.invoke.decryptDagJwe(result);
|
|
21431
|
-
|
|
21465
|
+
const parsed = await VCValidator.or(VPValidator).or(StoredCredentialEnvelopeValidator).parseAsync(decryptedResult);
|
|
21466
|
+
const resolved = resolveStorageReadResult(parsed);
|
|
21467
|
+
return resolved === void 0 || isStoredCredentialEnvelope(resolved) ? null : resolved;
|
|
21432
21468
|
} catch (error46) {
|
|
21433
21469
|
_learnCard.debug?.(error46);
|
|
21434
21470
|
return null;
|
|
@@ -21466,7 +21502,8 @@ var getLearnCloudPlugin = /* @__PURE__ */ __name(async (initialLearnCard, url2,
|
|
|
21466
21502
|
learnCard.debug?.("LearnCloud read.get result", result);
|
|
21467
21503
|
const decryptedResult = await _learnCard.invoke.decryptDagJwe(result);
|
|
21468
21504
|
learnCard.debug?.("LearnCloud read.get decryptedResult", decryptedResult);
|
|
21469
|
-
|
|
21505
|
+
const parsed = await VCValidator.or(VPValidator).or(StoredCredentialEnvelopeValidator).parseAsync(decryptedResult);
|
|
21506
|
+
return resolveStorageReadResult(parsed);
|
|
21470
21507
|
} catch (error46) {
|
|
21471
21508
|
_learnCard.debug?.(error46);
|
|
21472
21509
|
return void 0;
|
|
@@ -21477,7 +21514,8 @@ var getLearnCloudPlugin = /* @__PURE__ */ __name(async (initialLearnCard, url2,
|
|
|
21477
21514
|
learnCard.debug?.("LearnCloud read.get result", result);
|
|
21478
21515
|
const decryptedResult = await _learnCard.invoke.decryptDagJwe(result);
|
|
21479
21516
|
learnCard.debug?.("LearnCloud read.get decryptedResult", decryptedResult);
|
|
21480
|
-
|
|
21517
|
+
const parsed = await VCValidator.or(VPValidator).or(StoredCredentialEnvelopeValidator).parseAsync(decryptedResult);
|
|
21518
|
+
return resolveStorageReadResult(parsed);
|
|
21481
21519
|
} catch (error46) {
|
|
21482
21520
|
_learnCard.debug?.(error46);
|
|
21483
21521
|
return void 0;
|
|
@@ -21487,14 +21525,16 @@ var getLearnCloudPlugin = /* @__PURE__ */ __name(async (initialLearnCard, url2,
|
|
|
21487
21525
|
store: {
|
|
21488
21526
|
upload: /* @__PURE__ */ __name(async (_learnCard, credential) => {
|
|
21489
21527
|
_learnCard.debug?.("learnCard.store['LearnCard Network'].upload");
|
|
21490
|
-
return client.storage.store.mutate({
|
|
21528
|
+
return client.storage.store.mutate({
|
|
21529
|
+
item: normalizeEnvelopeForTransport(credential)
|
|
21530
|
+
});
|
|
21491
21531
|
}, "upload"),
|
|
21492
21532
|
uploadEncrypted: /* @__PURE__ */ __name(async (_learnCard, credential, { recipients = [] } = { recipients: [] }) => {
|
|
21493
21533
|
_learnCard.debug?.("learnCard.store['LearnCard Network'].upload");
|
|
21494
|
-
const jwe = await _learnCard.invoke.createDagJwe(
|
|
21495
|
-
|
|
21496
|
-
...recipients
|
|
21497
|
-
|
|
21534
|
+
const jwe = await _learnCard.invoke.createDagJwe(
|
|
21535
|
+
normalizeEnvelopeForTransport(credential),
|
|
21536
|
+
[_learnCard.id.did(), ...recipients]
|
|
21537
|
+
);
|
|
21498
21538
|
return client.storage.store.mutate({ item: jwe });
|
|
21499
21539
|
}, "uploadEncrypted"),
|
|
21500
21540
|
delete: /* @__PURE__ */ __name(async (_learnCard, uri) => {
|