@learncard/learn-card-plugin 1.2.2 → 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,22 +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
13819
  signedCredential: VCValidator.optional(),
13809
- templateData: external_exports.record(external_exports.string(), external_exports.unknown()).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")
13810
13825
  }).refine((data) => data.templateUri || data.template, {
13811
13826
  message: "Either templateUri or template creation data must be provided.",
13812
13827
  path: ["templateUri"]
13813
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
+ });
13814
13834
  var SendBoostResponseValidator = external_exports.object({
13815
13835
  type: external_exports.literal("boost"),
13816
13836
  credentialUri: external_exports.string(),
13817
- 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
+ )
13818
13842
  });
13819
13843
  var SendInputValidator = external_exports.discriminatedUnion("type", [SendBoostInputValidator]);
13820
13844
  var SendResponseValidator = external_exports.discriminatedUnion("type", [SendBoostResponseValidator]);
@@ -14166,6 +14190,8 @@ var InboxCredentialValidator = external_exports.object({
14166
14190
  createdAt: external_exports.string(),
14167
14191
  issuerDid: external_exports.string(),
14168
14192
  webhookUrl: external_exports.string().optional(),
14193
+ boostUri: external_exports.string().optional(),
14194
+ activityId: external_exports.string().optional(),
14169
14195
  signingAuthority: external_exports.object({
14170
14196
  endpoint: external_exports.string().optional(),
14171
14197
  name: external_exports.string().optional()
@@ -14181,7 +14207,8 @@ var InboxCredentialQueryValidator = external_exports.object({
14181
14207
  id: external_exports.string(),
14182
14208
  isSigned: external_exports.boolean(),
14183
14209
  isAccepted: external_exports.boolean().optional(),
14184
- issuerDid: external_exports.string()
14210
+ issuerDid: external_exports.string(),
14211
+ boostUri: external_exports.string()
14185
14212
  }).partial();
14186
14213
  var IssueInboxSigningAuthorityValidator = external_exports.object({
14187
14214
  endpoint: external_exports.string().url(),
@@ -14191,9 +14218,13 @@ var IssueInboxCredentialValidator = external_exports.object({
14191
14218
  // === CORE DATA (Required) ===
14192
14219
  // WHAT is being sent and WHO is it for?
14193
14220
  recipient: ContactMethodQueryValidator.describe("The recipient of the credential"),
14194
- credential: VCValidator.or(VPValidator).or(UnsignedVCValidator).describe(
14221
+ // Either credential OR templateUri must be provided
14222
+ credential: VCValidator.or(VPValidator).or(UnsignedVCValidator).optional().describe(
14195
14223
  "The credential to issue. If not signed, the users default signing authority will be used, or the specified signing authority in the configuration."
14196
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
+ ),
14197
14228
  // === OPTIONAL FEATURES ===
14198
14229
  // Add major, distinct features at the top level.
14199
14230
  //consentRequest: ConsentRequestValidator.optional(),
@@ -14205,6 +14236,9 @@ var IssueInboxCredentialValidator = external_exports.object({
14205
14236
  ),
14206
14237
  webhookUrl: external_exports.string().url().optional().describe("The webhook URL to receive credential issuance events."),
14207
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
+ ),
14208
14242
  // --- For User-Facing Delivery (Email/SMS) ---
14209
14243
  delivery: external_exports.object({
14210
14244
  suppress: external_exports.boolean().optional().default(false).describe(
@@ -14219,7 +14253,9 @@ var IssueInboxCredentialValidator = external_exports.object({
14219
14253
  name: external_exports.string().optional().describe(
14220
14254
  'The name of the organization (e.g., "State University").'
14221
14255
  ),
14222
- 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
+ )
14223
14259
  }).optional(),
14224
14260
  credential: external_exports.object({
14225
14261
  name: external_exports.string().optional().describe(
@@ -14246,6 +14282,9 @@ var IssueInboxCredentialValidator = external_exports.object({
14246
14282
  }).optional().describe(
14247
14283
  "Configuration for the credential issuance. If not provided, the default configuration will be used."
14248
14284
  )
14285
+ }).refine((data) => data.credential || data.templateUri, {
14286
+ message: "Either credential or templateUri must be provided.",
14287
+ path: ["credential"]
14249
14288
  });
14250
14289
  var IssueInboxCredentialResponseValidator = external_exports.object({
14251
14290
  issuanceId: external_exports.string(),
@@ -14273,28 +14312,43 @@ var LCNDomainOrOriginValidator = external_exports.union([
14273
14312
  { message: "Must be a valid http(s) origin" }
14274
14313
  )
14275
14314
  ]);
14315
+ var LCNIntegrationStatusEnum = external_exports.enum(["setup", "active", "paused"]);
14276
14316
  var LCNIntegrationValidator = external_exports.object({
14277
14317
  id: external_exports.string(),
14278
14318
  name: external_exports.string(),
14279
14319
  description: external_exports.string().optional(),
14280
14320
  publishableKey: external_exports.string(),
14281
- 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()
14282
14329
  });
14283
14330
  var LCNIntegrationCreateValidator = external_exports.object({
14284
14331
  name: external_exports.string(),
14285
14332
  description: external_exports.string().optional(),
14286
- whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).default([])
14333
+ whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).default([]),
14334
+ guideType: external_exports.string().optional()
14287
14335
  });
14288
14336
  var LCNIntegrationUpdateValidator = external_exports.object({
14289
14337
  name: external_exports.string().optional(),
14290
14338
  description: external_exports.string().optional(),
14291
14339
  whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).optional(),
14292
- 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()
14293
14345
  });
14294
14346
  var LCNIntegrationQueryValidator = external_exports.object({
14295
14347
  id: StringQuery,
14296
14348
  name: StringQuery,
14297
- description: StringQuery
14349
+ description: StringQuery,
14350
+ status: StringQuery,
14351
+ guideType: StringQuery
14298
14352
  }).partial();
14299
14353
  var PaginatedLCNIntegrationsValidator = PaginationResponseValidator.extend({
14300
14354
  records: LCNIntegrationValidator.array()
@@ -14509,6 +14563,7 @@ var PromotionLevelValidator = external_exports.enum([
14509
14563
  ]);
14510
14564
  var AppStoreListingValidator = external_exports.object({
14511
14565
  listing_id: external_exports.string(),
14566
+ slug: external_exports.string().optional(),
14512
14567
  display_name: external_exports.string(),
14513
14568
  tagline: external_exports.string(),
14514
14569
  full_description: external_exports.string(),
@@ -14546,6 +14601,77 @@ var PaginatedAppStoreListingsValidator = PaginationResponseValidator.extend({
14546
14601
  var PaginatedInstalledAppsValidator = PaginationResponseValidator.extend({
14547
14602
  records: InstalledAppValidator.array()
14548
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
+ });
14549
14675
 
14550
14676
  // ../../../node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/esm/typeof.js
14551
14677
  function _typeof(o) {