@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.
@@ -13715,7 +13715,7 @@ var FullClaimHookValidator = external_exports.object({ id: external_exports.stri
13715
13715
  var PaginatedClaimHooksValidator = PaginationResponseValidator.extend({
13716
13716
  records: FullClaimHookValidator.array()
13717
13717
  });
13718
- var LCNBoostStatus = external_exports.enum(["DRAFT", "LIVE"]);
13718
+ var LCNBoostStatus = external_exports.enum(["DRAFT", "PROVISIONAL", "LIVE"]);
13719
13719
  var BoostValidator = external_exports.object({
13720
13720
  uri: external_exports.string(),
13721
13721
  name: external_exports.string().optional(),
@@ -13799,21 +13799,46 @@ var SendBoostTemplateValidator = BoostValidator.partial().omit({ uri: true, clai
13799
13799
  claimPermissions: BoostPermissionsValidator.partial().optional(),
13800
13800
  skills: external_exports.array(external_exports.object({ frameworkId: external_exports.string(), id: external_exports.string() })).min(1).optional()
13801
13801
  });
13802
+ var SendBrandingOptionsValidator = external_exports.object({
13803
+ issuerName: external_exports.string().optional().describe("Name of the issuing organization"),
13804
+ issuerLogoUrl: external_exports.string().url().optional().describe("Logo URL of the issuing organization"),
13805
+ credentialName: external_exports.string().optional().describe("Display name for the credential"),
13806
+ recipientName: external_exports.string().optional().describe("Name of the recipient for personalization")
13807
+ });
13808
+ var SendOptionsValidator = external_exports.object({
13809
+ webhookUrl: external_exports.string().url().optional().describe("Webhook URL to receive claim notifications"),
13810
+ suppressDelivery: external_exports.boolean().optional().describe("If true, returns claimUrl without sending email/SMS"),
13811
+ branding: SendBrandingOptionsValidator.optional().describe("Branding for email/SMS delivery")
13812
+ });
13802
13813
  var SendBoostInputValidator = external_exports.object({
13803
13814
  type: external_exports.literal("boost"),
13804
- recipient: external_exports.string(),
13815
+ recipient: external_exports.string().describe("Profile ID, DID, email, or phone number (auto-detected)"),
13805
13816
  contractUri: external_exports.string().optional(),
13806
13817
  templateUri: external_exports.string().optional(),
13807
13818
  template: SendBoostTemplateValidator.optional(),
13808
- signedCredential: VCValidator.optional()
13819
+ signedCredential: VCValidator.optional(),
13820
+ options: SendOptionsValidator.optional().describe(
13821
+ "Options for email/phone recipients (Universal Inbox)"
13822
+ ),
13823
+ templateData: external_exports.record(external_exports.string(), external_exports.unknown()).optional(),
13824
+ integrationId: external_exports.string().optional().describe("Integration ID for activity tracking")
13809
13825
  }).refine((data) => data.templateUri || data.template, {
13810
13826
  message: "Either templateUri or template creation data must be provided.",
13811
13827
  path: ["templateUri"]
13812
13828
  });
13829
+ var SendInboxResponseValidator = external_exports.object({
13830
+ issuanceId: external_exports.string(),
13831
+ status: external_exports.enum(["PENDING", "ISSUED", "EXPIRED", "DELIVERED", "CLAIMED"]),
13832
+ claimUrl: external_exports.string().url().optional().describe("Present when suppressDelivery=true")
13833
+ });
13813
13834
  var SendBoostResponseValidator = external_exports.object({
13814
13835
  type: external_exports.literal("boost"),
13815
13836
  credentialUri: external_exports.string(),
13816
- uri: external_exports.string()
13837
+ uri: external_exports.string(),
13838
+ activityId: external_exports.string().describe("Links to the activity lifecycle for this issuance"),
13839
+ inbox: SendInboxResponseValidator.optional().describe(
13840
+ "Present when sent via email/phone (Universal Inbox)"
13841
+ )
13817
13842
  });
13818
13843
  var SendInputValidator = external_exports.discriminatedUnion("type", [SendBoostInputValidator]);
13819
13844
  var SendResponseValidator = external_exports.discriminatedUnion("type", [SendBoostResponseValidator]);
@@ -14165,6 +14190,8 @@ var InboxCredentialValidator = external_exports.object({
14165
14190
  createdAt: external_exports.string(),
14166
14191
  issuerDid: external_exports.string(),
14167
14192
  webhookUrl: external_exports.string().optional(),
14193
+ boostUri: external_exports.string().optional(),
14194
+ activityId: external_exports.string().optional(),
14168
14195
  signingAuthority: external_exports.object({
14169
14196
  endpoint: external_exports.string().optional(),
14170
14197
  name: external_exports.string().optional()
@@ -14180,7 +14207,8 @@ var InboxCredentialQueryValidator = external_exports.object({
14180
14207
  id: external_exports.string(),
14181
14208
  isSigned: external_exports.boolean(),
14182
14209
  isAccepted: external_exports.boolean().optional(),
14183
- issuerDid: external_exports.string()
14210
+ issuerDid: external_exports.string(),
14211
+ boostUri: external_exports.string()
14184
14212
  }).partial();
14185
14213
  var IssueInboxSigningAuthorityValidator = external_exports.object({
14186
14214
  endpoint: external_exports.string().url(),
@@ -14190,9 +14218,13 @@ var IssueInboxCredentialValidator = external_exports.object({
14190
14218
  // === CORE DATA (Required) ===
14191
14219
  // WHAT is being sent and WHO is it for?
14192
14220
  recipient: ContactMethodQueryValidator.describe("The recipient of the credential"),
14193
- credential: VCValidator.or(VPValidator).or(UnsignedVCValidator).describe(
14221
+ // Either credential OR templateUri must be provided
14222
+ credential: VCValidator.or(VPValidator).or(UnsignedVCValidator).optional().describe(
14194
14223
  "The credential to issue. If not signed, the users default signing authority will be used, or the specified signing authority in the configuration."
14195
14224
  ),
14225
+ templateUri: external_exports.string().optional().describe(
14226
+ "URI of a boost template to use for issuance. The boost credential will be resolved and used. Mutually exclusive with credential field."
14227
+ ),
14196
14228
  // === OPTIONAL FEATURES ===
14197
14229
  // Add major, distinct features at the top level.
14198
14230
  //consentRequest: ConsentRequestValidator.optional(),
@@ -14204,6 +14236,9 @@ var IssueInboxCredentialValidator = external_exports.object({
14204
14236
  ),
14205
14237
  webhookUrl: external_exports.string().url().optional().describe("The webhook URL to receive credential issuance events."),
14206
14238
  expiresInDays: external_exports.number().min(1).max(365).optional().describe("The number of days the credential will be valid for."),
14239
+ templateData: external_exports.record(external_exports.string(), external_exports.unknown()).optional().describe(
14240
+ "Template data to render into the boost credential template using Mustache syntax. Only used when boostUri is provided."
14241
+ ),
14207
14242
  // --- For User-Facing Delivery (Email/SMS) ---
14208
14243
  delivery: external_exports.object({
14209
14244
  suppress: external_exports.boolean().optional().default(false).describe(
@@ -14218,7 +14253,9 @@ var IssueInboxCredentialValidator = external_exports.object({
14218
14253
  name: external_exports.string().optional().describe(
14219
14254
  'The name of the organization (e.g., "State University").'
14220
14255
  ),
14221
- logoUrl: external_exports.string().url().optional().describe("The URL of the organization's logo.")
14256
+ logoUrl: external_exports.string().url().optional().describe(
14257
+ "The URL of the organization's logo."
14258
+ )
14222
14259
  }).optional(),
14223
14260
  credential: external_exports.object({
14224
14261
  name: external_exports.string().optional().describe(
@@ -14245,6 +14282,9 @@ var IssueInboxCredentialValidator = external_exports.object({
14245
14282
  }).optional().describe(
14246
14283
  "Configuration for the credential issuance. If not provided, the default configuration will be used."
14247
14284
  )
14285
+ }).refine((data) => data.credential || data.templateUri, {
14286
+ message: "Either credential or templateUri must be provided.",
14287
+ path: ["credential"]
14248
14288
  });
14249
14289
  var IssueInboxCredentialResponseValidator = external_exports.object({
14250
14290
  issuanceId: external_exports.string(),
@@ -14272,28 +14312,43 @@ var LCNDomainOrOriginValidator = external_exports.union([
14272
14312
  { message: "Must be a valid http(s) origin" }
14273
14313
  )
14274
14314
  ]);
14315
+ var LCNIntegrationStatusEnum = external_exports.enum(["setup", "active", "paused"]);
14275
14316
  var LCNIntegrationValidator = external_exports.object({
14276
14317
  id: external_exports.string(),
14277
14318
  name: external_exports.string(),
14278
14319
  description: external_exports.string().optional(),
14279
14320
  publishableKey: external_exports.string(),
14280
- whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).default([])
14321
+ whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).default([]),
14322
+ // Setup/onboarding status
14323
+ status: LCNIntegrationStatusEnum.default("setup"),
14324
+ guideType: external_exports.string().optional(),
14325
+ guideState: external_exports.record(external_exports.string(), external_exports.any()).optional(),
14326
+ // Timestamps
14327
+ createdAt: external_exports.string().optional(),
14328
+ updatedAt: external_exports.string().optional()
14281
14329
  });
14282
14330
  var LCNIntegrationCreateValidator = external_exports.object({
14283
14331
  name: external_exports.string(),
14284
14332
  description: external_exports.string().optional(),
14285
- whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).default([])
14333
+ whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).default([]),
14334
+ guideType: external_exports.string().optional()
14286
14335
  });
14287
14336
  var LCNIntegrationUpdateValidator = external_exports.object({
14288
14337
  name: external_exports.string().optional(),
14289
14338
  description: external_exports.string().optional(),
14290
14339
  whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).optional(),
14291
- rotatePublishableKey: external_exports.boolean().optional()
14340
+ rotatePublishableKey: external_exports.boolean().optional(),
14341
+ // Setup/onboarding updates
14342
+ status: LCNIntegrationStatusEnum.optional(),
14343
+ guideType: external_exports.string().optional(),
14344
+ guideState: external_exports.record(external_exports.string(), external_exports.any()).optional()
14292
14345
  });
14293
14346
  var LCNIntegrationQueryValidator = external_exports.object({
14294
14347
  id: StringQuery,
14295
14348
  name: StringQuery,
14296
- description: StringQuery
14349
+ description: StringQuery,
14350
+ status: StringQuery,
14351
+ guideType: StringQuery
14297
14352
  }).partial();
14298
14353
  var PaginatedLCNIntegrationsValidator = PaginationResponseValidator.extend({
14299
14354
  records: LCNIntegrationValidator.array()
@@ -14508,6 +14563,7 @@ var PromotionLevelValidator = external_exports.enum([
14508
14563
  ]);
14509
14564
  var AppStoreListingValidator = external_exports.object({
14510
14565
  listing_id: external_exports.string(),
14566
+ slug: external_exports.string().optional(),
14511
14567
  display_name: external_exports.string(),
14512
14568
  tagline: external_exports.string(),
14513
14569
  full_description: external_exports.string(),
@@ -14545,6 +14601,77 @@ var PaginatedAppStoreListingsValidator = PaginationResponseValidator.extend({
14545
14601
  var PaginatedInstalledAppsValidator = PaginationResponseValidator.extend({
14546
14602
  records: InstalledAppValidator.array()
14547
14603
  });
14604
+ var AppBoostValidator = external_exports.object({
14605
+ templateAlias: external_exports.string().min(1).max(50).regex(/^[a-z0-9-]+$/),
14606
+ boostUri: external_exports.string()
14607
+ });
14608
+ var SendCredentialEventValidator = external_exports.object({
14609
+ type: external_exports.literal("send-credential"),
14610
+ templateAlias: external_exports.string(),
14611
+ templateData: external_exports.record(external_exports.string(), external_exports.unknown()).optional()
14612
+ });
14613
+ var AppEventValidator = external_exports.discriminatedUnion("type", [SendCredentialEventValidator]);
14614
+ var AppEventInputValidator = external_exports.object({
14615
+ listingId: external_exports.string(),
14616
+ event: AppEventValidator
14617
+ });
14618
+ var AppEventResponseValidator = external_exports.record(external_exports.string(), external_exports.unknown());
14619
+ var CredentialActivityEventTypeValidator = external_exports.enum([
14620
+ "CREATED",
14621
+ "DELIVERED",
14622
+ "CLAIMED",
14623
+ "EXPIRED",
14624
+ "FAILED"
14625
+ ]);
14626
+ var CredentialActivityRecipientTypeValidator = external_exports.enum(["profile", "email", "phone"]);
14627
+ var CredentialActivitySourceTypeValidator = external_exports.enum([
14628
+ "send",
14629
+ "sendBoost",
14630
+ "sendCredential",
14631
+ "contract",
14632
+ "claim",
14633
+ "inbox",
14634
+ "claimLink",
14635
+ "acceptCredential"
14636
+ ]);
14637
+ var CredentialActivityValidator = external_exports.object({
14638
+ id: external_exports.string(),
14639
+ activityId: external_exports.string(),
14640
+ eventType: CredentialActivityEventTypeValidator,
14641
+ timestamp: external_exports.string(),
14642
+ actorProfileId: external_exports.string(),
14643
+ recipientType: CredentialActivityRecipientTypeValidator,
14644
+ recipientIdentifier: external_exports.string(),
14645
+ boostUri: external_exports.string().optional(),
14646
+ credentialUri: external_exports.string().optional(),
14647
+ inboxCredentialId: external_exports.string().optional(),
14648
+ integrationId: external_exports.string().optional(),
14649
+ source: CredentialActivitySourceTypeValidator,
14650
+ metadata: external_exports.record(external_exports.string(), external_exports.unknown()).optional()
14651
+ });
14652
+ var CredentialActivityWithDetailsValidator = CredentialActivityValidator.extend({
14653
+ boost: external_exports.object({
14654
+ id: external_exports.string(),
14655
+ name: external_exports.string().optional(),
14656
+ category: external_exports.string().optional()
14657
+ }).optional(),
14658
+ recipientProfile: external_exports.object({
14659
+ profileId: external_exports.string(),
14660
+ displayName: external_exports.string().optional()
14661
+ }).optional()
14662
+ });
14663
+ var PaginatedCredentialActivitiesValidator = PaginationResponseValidator.extend({
14664
+ records: CredentialActivityWithDetailsValidator.array()
14665
+ });
14666
+ var CredentialActivityStatsValidator = external_exports.object({
14667
+ total: external_exports.number(),
14668
+ created: external_exports.number(),
14669
+ delivered: external_exports.number(),
14670
+ claimed: external_exports.number(),
14671
+ expired: external_exports.number(),
14672
+ failed: external_exports.number(),
14673
+ claimRate: external_exports.number()
14674
+ });
14548
14675
 
14549
14676
  // ../../../node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/esm/typeof.js
14550
14677
  function _typeof(o) {