@learncard/learn-card-plugin 1.2.1 → 1.2.4

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.
@@ -13695,7 +13695,7 @@ var FullClaimHookValidator = external_exports.object({ id: external_exports.stri
13695
13695
  var PaginatedClaimHooksValidator = PaginationResponseValidator.extend({
13696
13696
  records: FullClaimHookValidator.array()
13697
13697
  });
13698
- var LCNBoostStatus = external_exports.enum(["DRAFT", "LIVE"]);
13698
+ var LCNBoostStatus = external_exports.enum(["DRAFT", "PROVISIONAL", "LIVE"]);
13699
13699
  var BoostValidator = external_exports.object({
13700
13700
  uri: external_exports.string(),
13701
13701
  name: external_exports.string().optional(),
@@ -13779,21 +13779,46 @@ var SendBoostTemplateValidator = BoostValidator.partial().omit({ uri: true, clai
13779
13779
  claimPermissions: BoostPermissionsValidator.partial().optional(),
13780
13780
  skills: external_exports.array(external_exports.object({ frameworkId: external_exports.string(), id: external_exports.string() })).min(1).optional()
13781
13781
  });
13782
+ var SendBrandingOptionsValidator = external_exports.object({
13783
+ issuerName: external_exports.string().optional().describe("Name of the issuing organization"),
13784
+ issuerLogoUrl: external_exports.string().url().optional().describe("Logo URL of the issuing organization"),
13785
+ credentialName: external_exports.string().optional().describe("Display name for the credential"),
13786
+ recipientName: external_exports.string().optional().describe("Name of the recipient for personalization")
13787
+ });
13788
+ var SendOptionsValidator = external_exports.object({
13789
+ webhookUrl: external_exports.string().url().optional().describe("Webhook URL to receive claim notifications"),
13790
+ suppressDelivery: external_exports.boolean().optional().describe("If true, returns claimUrl without sending email/SMS"),
13791
+ branding: SendBrandingOptionsValidator.optional().describe("Branding for email/SMS delivery")
13792
+ });
13782
13793
  var SendBoostInputValidator = external_exports.object({
13783
13794
  type: external_exports.literal("boost"),
13784
- recipient: external_exports.string(),
13795
+ recipient: external_exports.string().describe("Profile ID, DID, email, or phone number (auto-detected)"),
13785
13796
  contractUri: external_exports.string().optional(),
13786
13797
  templateUri: external_exports.string().optional(),
13787
13798
  template: SendBoostTemplateValidator.optional(),
13788
- signedCredential: VCValidator.optional()
13799
+ signedCredential: VCValidator.optional(),
13800
+ options: SendOptionsValidator.optional().describe(
13801
+ "Options for email/phone recipients (Universal Inbox)"
13802
+ ),
13803
+ templateData: external_exports.record(external_exports.string(), external_exports.unknown()).optional(),
13804
+ integrationId: external_exports.string().optional().describe("Integration ID for activity tracking")
13789
13805
  }).refine((data) => data.templateUri || data.template, {
13790
13806
  message: "Either templateUri or template creation data must be provided.",
13791
13807
  path: ["templateUri"]
13792
13808
  });
13809
+ var SendInboxResponseValidator = external_exports.object({
13810
+ issuanceId: external_exports.string(),
13811
+ status: external_exports.enum(["PENDING", "ISSUED", "EXPIRED", "DELIVERED", "CLAIMED"]),
13812
+ claimUrl: external_exports.string().url().optional().describe("Present when suppressDelivery=true")
13813
+ });
13793
13814
  var SendBoostResponseValidator = external_exports.object({
13794
13815
  type: external_exports.literal("boost"),
13795
13816
  credentialUri: external_exports.string(),
13796
- uri: external_exports.string()
13817
+ uri: external_exports.string(),
13818
+ activityId: external_exports.string().describe("Links to the activity lifecycle for this issuance"),
13819
+ inbox: SendInboxResponseValidator.optional().describe(
13820
+ "Present when sent via email/phone (Universal Inbox)"
13821
+ )
13797
13822
  });
13798
13823
  var SendInputValidator = external_exports.discriminatedUnion("type", [SendBoostInputValidator]);
13799
13824
  var SendResponseValidator = external_exports.discriminatedUnion("type", [SendBoostResponseValidator]);
@@ -14145,6 +14170,8 @@ var InboxCredentialValidator = external_exports.object({
14145
14170
  createdAt: external_exports.string(),
14146
14171
  issuerDid: external_exports.string(),
14147
14172
  webhookUrl: external_exports.string().optional(),
14173
+ boostUri: external_exports.string().optional(),
14174
+ activityId: external_exports.string().optional(),
14148
14175
  signingAuthority: external_exports.object({
14149
14176
  endpoint: external_exports.string().optional(),
14150
14177
  name: external_exports.string().optional()
@@ -14160,7 +14187,8 @@ var InboxCredentialQueryValidator = external_exports.object({
14160
14187
  id: external_exports.string(),
14161
14188
  isSigned: external_exports.boolean(),
14162
14189
  isAccepted: external_exports.boolean().optional(),
14163
- issuerDid: external_exports.string()
14190
+ issuerDid: external_exports.string(),
14191
+ boostUri: external_exports.string()
14164
14192
  }).partial();
14165
14193
  var IssueInboxSigningAuthorityValidator = external_exports.object({
14166
14194
  endpoint: external_exports.string().url(),
@@ -14170,9 +14198,13 @@ var IssueInboxCredentialValidator = external_exports.object({
14170
14198
  // === CORE DATA (Required) ===
14171
14199
  // WHAT is being sent and WHO is it for?
14172
14200
  recipient: ContactMethodQueryValidator.describe("The recipient of the credential"),
14173
- credential: VCValidator.or(VPValidator).or(UnsignedVCValidator).describe(
14201
+ // Either credential OR templateUri must be provided
14202
+ credential: VCValidator.or(VPValidator).or(UnsignedVCValidator).optional().describe(
14174
14203
  "The credential to issue. If not signed, the users default signing authority will be used, or the specified signing authority in the configuration."
14175
14204
  ),
14205
+ templateUri: external_exports.string().optional().describe(
14206
+ "URI of a boost template to use for issuance. The boost credential will be resolved and used. Mutually exclusive with credential field."
14207
+ ),
14176
14208
  // === OPTIONAL FEATURES ===
14177
14209
  // Add major, distinct features at the top level.
14178
14210
  //consentRequest: ConsentRequestValidator.optional(),
@@ -14184,6 +14216,9 @@ var IssueInboxCredentialValidator = external_exports.object({
14184
14216
  ),
14185
14217
  webhookUrl: external_exports.string().url().optional().describe("The webhook URL to receive credential issuance events."),
14186
14218
  expiresInDays: external_exports.number().min(1).max(365).optional().describe("The number of days the credential will be valid for."),
14219
+ templateData: external_exports.record(external_exports.string(), external_exports.unknown()).optional().describe(
14220
+ "Template data to render into the boost credential template using Mustache syntax. Only used when boostUri is provided."
14221
+ ),
14187
14222
  // --- For User-Facing Delivery (Email/SMS) ---
14188
14223
  delivery: external_exports.object({
14189
14224
  suppress: external_exports.boolean().optional().default(false).describe(
@@ -14198,7 +14233,9 @@ var IssueInboxCredentialValidator = external_exports.object({
14198
14233
  name: external_exports.string().optional().describe(
14199
14234
  'The name of the organization (e.g., "State University").'
14200
14235
  ),
14201
- logoUrl: external_exports.string().url().optional().describe("The URL of the organization's logo.")
14236
+ logoUrl: external_exports.string().url().optional().describe(
14237
+ "The URL of the organization's logo."
14238
+ )
14202
14239
  }).optional(),
14203
14240
  credential: external_exports.object({
14204
14241
  name: external_exports.string().optional().describe(
@@ -14225,6 +14262,9 @@ var IssueInboxCredentialValidator = external_exports.object({
14225
14262
  }).optional().describe(
14226
14263
  "Configuration for the credential issuance. If not provided, the default configuration will be used."
14227
14264
  )
14265
+ }).refine((data) => data.credential || data.templateUri, {
14266
+ message: "Either credential or templateUri must be provided.",
14267
+ path: ["credential"]
14228
14268
  });
14229
14269
  var IssueInboxCredentialResponseValidator = external_exports.object({
14230
14270
  issuanceId: external_exports.string(),
@@ -14252,28 +14292,43 @@ var LCNDomainOrOriginValidator = external_exports.union([
14252
14292
  { message: "Must be a valid http(s) origin" }
14253
14293
  )
14254
14294
  ]);
14295
+ var LCNIntegrationStatusEnum = external_exports.enum(["setup", "active", "paused"]);
14255
14296
  var LCNIntegrationValidator = external_exports.object({
14256
14297
  id: external_exports.string(),
14257
14298
  name: external_exports.string(),
14258
14299
  description: external_exports.string().optional(),
14259
14300
  publishableKey: external_exports.string(),
14260
- whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).default([])
14301
+ whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).default([]),
14302
+ // Setup/onboarding status
14303
+ status: LCNIntegrationStatusEnum.default("setup"),
14304
+ guideType: external_exports.string().optional(),
14305
+ guideState: external_exports.record(external_exports.string(), external_exports.any()).optional(),
14306
+ // Timestamps
14307
+ createdAt: external_exports.string().optional(),
14308
+ updatedAt: external_exports.string().optional()
14261
14309
  });
14262
14310
  var LCNIntegrationCreateValidator = external_exports.object({
14263
14311
  name: external_exports.string(),
14264
14312
  description: external_exports.string().optional(),
14265
- whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).default([])
14313
+ whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).default([]),
14314
+ guideType: external_exports.string().optional()
14266
14315
  });
14267
14316
  var LCNIntegrationUpdateValidator = external_exports.object({
14268
14317
  name: external_exports.string().optional(),
14269
14318
  description: external_exports.string().optional(),
14270
14319
  whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).optional(),
14271
- rotatePublishableKey: external_exports.boolean().optional()
14320
+ rotatePublishableKey: external_exports.boolean().optional(),
14321
+ // Setup/onboarding updates
14322
+ status: LCNIntegrationStatusEnum.optional(),
14323
+ guideType: external_exports.string().optional(),
14324
+ guideState: external_exports.record(external_exports.string(), external_exports.any()).optional()
14272
14325
  });
14273
14326
  var LCNIntegrationQueryValidator = external_exports.object({
14274
14327
  id: StringQuery,
14275
14328
  name: StringQuery,
14276
- description: StringQuery
14329
+ description: StringQuery,
14330
+ status: StringQuery,
14331
+ guideType: StringQuery
14277
14332
  }).partial();
14278
14333
  var PaginatedLCNIntegrationsValidator = PaginationResponseValidator.extend({
14279
14334
  records: LCNIntegrationValidator.array()
@@ -14488,6 +14543,7 @@ var PromotionLevelValidator = external_exports.enum([
14488
14543
  ]);
14489
14544
  var AppStoreListingValidator = external_exports.object({
14490
14545
  listing_id: external_exports.string(),
14546
+ slug: external_exports.string().optional(),
14491
14547
  display_name: external_exports.string(),
14492
14548
  tagline: external_exports.string(),
14493
14549
  full_description: external_exports.string(),
@@ -14525,6 +14581,77 @@ var PaginatedAppStoreListingsValidator = PaginationResponseValidator.extend({
14525
14581
  var PaginatedInstalledAppsValidator = PaginationResponseValidator.extend({
14526
14582
  records: InstalledAppValidator.array()
14527
14583
  });
14584
+ var AppBoostValidator = external_exports.object({
14585
+ templateAlias: external_exports.string().min(1).max(50).regex(/^[a-z0-9-]+$/),
14586
+ boostUri: external_exports.string()
14587
+ });
14588
+ var SendCredentialEventValidator = external_exports.object({
14589
+ type: external_exports.literal("send-credential"),
14590
+ templateAlias: external_exports.string(),
14591
+ templateData: external_exports.record(external_exports.string(), external_exports.unknown()).optional()
14592
+ });
14593
+ var AppEventValidator = external_exports.discriminatedUnion("type", [SendCredentialEventValidator]);
14594
+ var AppEventInputValidator = external_exports.object({
14595
+ listingId: external_exports.string(),
14596
+ event: AppEventValidator
14597
+ });
14598
+ var AppEventResponseValidator = external_exports.record(external_exports.string(), external_exports.unknown());
14599
+ var CredentialActivityEventTypeValidator = external_exports.enum([
14600
+ "CREATED",
14601
+ "DELIVERED",
14602
+ "CLAIMED",
14603
+ "EXPIRED",
14604
+ "FAILED"
14605
+ ]);
14606
+ var CredentialActivityRecipientTypeValidator = external_exports.enum(["profile", "email", "phone"]);
14607
+ var CredentialActivitySourceTypeValidator = external_exports.enum([
14608
+ "send",
14609
+ "sendBoost",
14610
+ "sendCredential",
14611
+ "contract",
14612
+ "claim",
14613
+ "inbox",
14614
+ "claimLink",
14615
+ "acceptCredential"
14616
+ ]);
14617
+ var CredentialActivityValidator = external_exports.object({
14618
+ id: external_exports.string(),
14619
+ activityId: external_exports.string(),
14620
+ eventType: CredentialActivityEventTypeValidator,
14621
+ timestamp: external_exports.string(),
14622
+ actorProfileId: external_exports.string(),
14623
+ recipientType: CredentialActivityRecipientTypeValidator,
14624
+ recipientIdentifier: external_exports.string(),
14625
+ boostUri: external_exports.string().optional(),
14626
+ credentialUri: external_exports.string().optional(),
14627
+ inboxCredentialId: external_exports.string().optional(),
14628
+ integrationId: external_exports.string().optional(),
14629
+ source: CredentialActivitySourceTypeValidator,
14630
+ metadata: external_exports.record(external_exports.string(), external_exports.unknown()).optional()
14631
+ });
14632
+ var CredentialActivityWithDetailsValidator = CredentialActivityValidator.extend({
14633
+ boost: external_exports.object({
14634
+ id: external_exports.string(),
14635
+ name: external_exports.string().optional(),
14636
+ category: external_exports.string().optional()
14637
+ }).optional(),
14638
+ recipientProfile: external_exports.object({
14639
+ profileId: external_exports.string(),
14640
+ displayName: external_exports.string().optional()
14641
+ }).optional()
14642
+ });
14643
+ var PaginatedCredentialActivitiesValidator = PaginationResponseValidator.extend({
14644
+ records: CredentialActivityWithDetailsValidator.array()
14645
+ });
14646
+ var CredentialActivityStatsValidator = external_exports.object({
14647
+ total: external_exports.number(),
14648
+ created: external_exports.number(),
14649
+ delivered: external_exports.number(),
14650
+ claimed: external_exports.number(),
14651
+ expired: external_exports.number(),
14652
+ failed: external_exports.number(),
14653
+ claimRate: external_exports.number()
14654
+ });
14528
14655
 
14529
14656
  // ../../../node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/esm/typeof.js
14530
14657
  function _typeof(o) {