@forgeroute/ui 0.4.4 → 0.4.6

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forgeroute/ui",
3
- "version": "0.4.4",
3
+ "version": "0.4.6",
4
4
  "peerDependencies": {
5
5
  "@angular/common": ">=22.0.0",
6
6
  "@angular/core": ">=22.0.0",
@@ -115,7 +115,7 @@ export declare class TemplatePickerComponent {
115
115
  private readonly host;
116
116
  private readonly search$;
117
117
  /** Filter results to a specific channel: 'email', 'text', or omit for all. */
118
- readonly channel: import("@angular/core").InputSignal<"" | "text" | "email">;
118
+ readonly channel: import("@angular/core").InputSignal<"" | "email" | "text">;
119
119
  readonly selectedId: import("@angular/core").InputSignal<string | null>;
120
120
  readonly label: import("@angular/core").InputSignal<string>;
121
121
  /** Shows the red required asterisk (same as the library inputs) — e.g. when a template must be picked to send. */
@@ -543,7 +543,7 @@ export declare class DocumentSendOptionsComponent implements UiFieldValidity {
543
543
  /** API root from FORGEROUTE_CONFIG (e.g. a cross-origin prod API); falls back to same-origin `/api`. */
544
544
  private readonly apiBase;
545
545
  /** `email` → purpose select + attachment allowed; `text` → link only (purpose fixed to e-signature). */
546
- readonly channel: import("@angular/core").InputSignal<"text" | "email">;
546
+ readonly channel: import("@angular/core").InputSignal<"email" | "text">;
547
547
  readonly label: import("@angular/core").InputSignal<string>;
548
548
  /** When true, at least one document must be chosen. The message forms leave it false: documents are optional there. */
549
549
  readonly required: import("@angular/core").InputSignal<boolean>;
@@ -608,7 +608,7 @@ export declare class DocumentSendOptionsComponent implements UiFieldValidity {
608
608
  /** Roles of documents whose row had no `signerRoles` and that the host resolves (`signers().resolveRoles`). */
609
609
  readonly roleStates: import("@angular/core").WritableSignal<Record<string, RoleState>>;
610
610
  /** The envelope's documents: `loading` / `error` while the panel reads them (`loadDocuments`), `ready` once known. */
611
- readonly envelopeStatus: import("@angular/core").WritableSignal<"error" | "loading" | "ready" | "idle">;
611
+ readonly envelopeStatus: import("@angular/core").WritableSignal<"idle" | "loading" | "ready" | "error">;
612
612
  private envelopeSub;
613
613
  private readonly roleSubs;
614
614
  /** The sender opened the collapsed "Signing options" line. */
@@ -1813,7 +1813,7 @@ export declare class SendMessagePanelComponent {
1813
1813
  readonly activeContact: import("@angular/core").WritableSignal<MessageContact | null>;
1814
1814
  /** What the sender should know about the picked contact before sending (why a channel is missing, what to add). */
1815
1815
  readonly contactNotices: import("@angular/core").Signal<string[]>;
1816
- readonly channel: import("@angular/core").WritableSignal<"text" | "email">;
1816
+ readonly channel: import("@angular/core").WritableSignal<"email" | "text">;
1817
1817
  readonly valid: import("@angular/core").WritableSignal<boolean>;
1818
1818
  /** Bumped on every fresh open / new contact — re-creates the email and text forms so no draft carries over. */
1819
1819
  readonly formEpoch: import("@angular/core").WritableSignal<number>;
@@ -361,6 +361,15 @@ interface StripeBillingDetails {
361
361
  phone?: string;
362
362
  address?: Record<string, string | null | undefined>;
363
363
  }
364
+ /**
365
+ * The live Stripe.js objects of a form, handed to the host by `(stripeReady)`: the host's own code can call `stripe.confirmPayment({ elements, ... })`,
366
+ * `elements.submit()`, `elements.update()`, `elements.fetchUpdates()` and `paymentElement.update()` with its own arguments.
367
+ */
368
+ interface StripeReadyEvent {
369
+ stripe: StripeLike;
370
+ elements: StripeElementsLike;
371
+ paymentElement: StripePaymentElementLike;
372
+ }
364
373
  /**
365
374
  * Stripe Payment Element: saves a payment method (`mode="setup"`, a SetupIntent) or takes a payment (`mode="payment"`, a PaymentIntent).
366
375
  *
@@ -378,6 +387,12 @@ export declare class StripePaymentComponent {
378
387
  private readonly doc;
379
388
  private readonly isBrowser;
380
389
  private readonly host;
390
+ /**
391
+ * Mount-only mode: the component only mounts the Payment Element. No submit button, skeleton, status text (unless `a11yMessages` is set), bank notice or error
392
+ * alert; it never submits, confirms or updates by itself; load failures go to `(loadError)` only. The host keeps its own confirm code and calls Stripe.js with the
393
+ * objects from `(stripeReady)`. `mountId` / `mountClass` still apply, and `(ready)`, `(elementChange)`, `(paymentMethodTypeChange)` still emit.
394
+ */
395
+ readonly mountOnly: import("@angular/core").InputSignal<boolean>;
381
396
  /** `'setup'` saves a payment method (`confirmSetup`), `'payment'` takes a payment (`confirmPayment`). */
382
397
  readonly mode: import("@angular/core").InputSignal<StripeIntentKind>;
383
398
  /** The publishable key (`pk_...`). Falls back to `provideStripePayment({ publishableKey })`. */
@@ -463,6 +478,12 @@ export declare class StripePaymentComponent {
463
478
  readonly loadErrorMessage: import("@angular/core").InputSignal<string>;
464
479
  /** Texts of the screen-reader status region (translate them); missing keys keep the English defaults. */
465
480
  readonly a11yMessages: import("@angular/core").InputSignal<Partial<StripeA11yMessages> | null>;
481
+ /**
482
+ * The live Stripe.js objects, emitted once each time the Elements are created: right after `elements.create('payment')` and `mount()` succeeded, before `(ready)`
483
+ * (the moment the old inline code had `this.stripe` / `this.elements` / `this.paymentElement` assigned). `null` is emitted when they go away (the form is re-created for new
484
+ * inputs, or `destroyElements()`): drop your references. Destroying the component itself emits nothing (the host owns that moment).
485
+ */
486
+ readonly stripeReady: import("@angular/core").OutputEmitterRef<StripeReadyEvent | null>;
466
487
  /** The Payment Element finished loading. */
467
488
  readonly ready: import("@angular/core").OutputEmitterRef<void>;
468
489
  /** The customer picked another payment method type (`'card'`, `'us_bank_account'`, ...). */
@@ -570,6 +591,11 @@ export declare class StripePaymentComponent {
570
591
  private onChange;
571
592
  static ɵfac: i0.ɵɵFactoryDeclaration<StripePaymentComponent, never>;
572
593
  static ɵcmp: i0.ɵɵComponentDeclaration<StripePaymentComponent, "ui-stripe-payment", never, {
594
+ "mountOnly": {
595
+ "alias": "mountOnly";
596
+ "required": false;
597
+ "isSignal": true;
598
+ };
573
599
  "mode": {
574
600
  "alias": "mode";
575
601
  "required": false;
@@ -796,6 +822,7 @@ export declare class StripePaymentComponent {
796
822
  "isSignal": true;
797
823
  };
798
824
  }, {
825
+ "stripeReady": "stripeReady";
799
826
  "ready": "ready";
800
827
  "paymentMethodTypeChange": "paymentMethodTypeChange";
801
828
  "elementChange": "elementChange";
@@ -1114,4 +1141,4 @@ export declare class MicrodepositVerifyComponent {
1114
1141
  "verifyFailed": "verifyFailed";
1115
1142
  }, never, never, true, never>;
1116
1143
  }
1117
- export type { HandleReturnOptions, MicrodepositStartedBy, MicrodepositStepsContext, MicrodepositType, MicrodepositVerifyData, MicrodepositVerifyEvent, ProvideStripePaymentOptions, StripeA11yMessages, StripeAppearance, StripeBillingDetails, StripeConfirmResult, StripeConfirmedEvent, StripeConnection, StripeCreateIntentFn, StripeDeferredIntent, StripeElementChange, StripeElementsLike, StripeErrorDisplay, StripeErrorLike, StripeErrorMessageOptions, StripeFailure, StripeFailureStage, StripeIntentKind, StripeIntentLike, StripeLike, StripeLikeWithBankSetup, StripeLoadOptions, StripeLoaderFn, StripeMicrodepositNextAction, StripeMicrodepositResult, StripeOutcome, StripePaymentDefaults, StripePaymentElementLike, StripeReturnParams, StripeReturnResult, StripeVerification };
1144
+ export type { HandleReturnOptions, MicrodepositStartedBy, MicrodepositStepsContext, MicrodepositType, MicrodepositVerifyData, MicrodepositVerifyEvent, ProvideStripePaymentOptions, StripeA11yMessages, StripeAppearance, StripeBillingDetails, StripeConfirmResult, StripeConfirmedEvent, StripeConnection, StripeCreateIntentFn, StripeDeferredIntent, StripeElementChange, StripeElementsLike, StripeErrorDisplay, StripeErrorLike, StripeErrorMessageOptions, StripeFailure, StripeFailureStage, StripeIntentKind, StripeIntentLike, StripeLike, StripeLikeWithBankSetup, StripeLoadOptions, StripeLoaderFn, StripeMicrodepositNextAction, StripeMicrodepositResult, StripeOutcome, StripePaymentDefaults, StripePaymentElementLike, StripeReadyEvent, StripeReturnParams, StripeReturnResult, StripeVerification };