@incodetech/web 2.2.0-rc.1 → 2.2.0-rc.2

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.
Files changed (127) hide show
  1. package/dist/ae-signature/ae-signature.es.js +3 -3
  2. package/dist/antifraud/antifraud.es.js +3 -3
  3. package/dist/authentication/authentication.es.js +4 -4
  4. package/dist/{autoFocusTitle-D7VzaZ2P.js → autoFocusTitle-Edt8-trP.js} +1 -1
  5. package/dist/certificate-issuance/certificate-issuance.es.js +8 -8
  6. package/dist/{checkbox-Jgwh943i.js → checkbox-gbHumlEi.js} +3 -3
  7. package/dist/{connectionError-Bl5E35Qm.js → connectionError-CvH1vnCt.js} +2 -2
  8. package/dist/consent/consent.es.js +6 -6
  9. package/dist/{countrySelector-Sd-u1WGf.js → countrySelector-DzLvpCfs.js} +1 -1
  10. package/dist/cross-document-data-match/cross-document-data-match.es.js +3 -3
  11. package/dist/curp-validation/curp-validation.es.js +13 -13
  12. package/dist/{customFields-CiEguXX9.js → customFields-DiOcfhlB.js} +8 -8
  13. package/dist/{customWatchlist-BSAW87qq.js → customWatchlist-CC9ZN7fk.js} +4 -4
  14. package/dist/{dateInputComposed-D0WEYWkS.js → dateInputComposed-3jXySs6M.js} +4 -4
  15. package/dist/dateInputComposed-BMauTxWJ.js +1 -0
  16. package/dist/document-capture/document-capture.es.js +1 -1
  17. package/dist/documentCapture-CcnnR36G.js +2 -0
  18. package/dist/{documentCapture-GFNkI1ly.js → documentCapture-Dc9Q2wYc.js} +13 -13
  19. package/dist/{dropdownComposed-BXleSN7n.js → dropdownComposed-Bk8viDop.js} +3 -3
  20. package/dist/dropdownComposed-DLaj01jA.js +1 -0
  21. package/dist/{dynamicForms-DU5fT72-.js → dynamicForms-BZB8JDkM.js} +9 -9
  22. package/dist/ekyb/ekyb.es.js +1 -1
  23. package/dist/{ekybModule-CMcpoTgh.js → ekybModule-C9UhcxKV.js} +12 -12
  24. package/dist/ekybModule-QcD4hQFD.js +2 -0
  25. package/dist/ekyc/ekyc.es.js +1 -1
  26. package/dist/{ekycModule-BTO8iIwh.js → ekycModule-Cp7kPhFr.js} +10 -10
  27. package/dist/ekycModule-DqX1bTFN.js +2 -0
  28. package/dist/electronic-signature/electronic-signature.es.js +1 -1
  29. package/dist/{electronic-signature-COBKJBjU.js → electronic-signature-DGL6y3os.js} +8 -8
  30. package/dist/email/email.es.js +6 -6
  31. package/dist/{emailInput-mPPvterQ.js → emailInput-Du_BH960.js} +2 -2
  32. package/dist/{expiredId-CD5ETLV9.js → expiredId-Cf7_dJQE.js} +4 -4
  33. package/dist/{extensibility-DBilbbhC.js → extensibility-CFhCNmsm.js} +22 -23
  34. package/dist/extensibility.es.js +20 -20
  35. package/dist/face-match/face-match.es.js +1 -1
  36. package/dist/{faceMatch-CwDBO9Is.js → faceMatch-BOJD6ZCq.js} +6 -6
  37. package/dist/faceMatch-Dhm-H0Pg.js +2 -0
  38. package/dist/field-comparison/field-comparison.es.js +1 -1
  39. package/dist/{fieldComparison-dDvSYYQP.js → fieldComparison-D_cMCcwa.js} +7 -7
  40. package/dist/fieldComparison-Fnup635x.js +2 -0
  41. package/dist/{finalSuccessScreen-B9kb72WR.js → finalSuccessScreen-DL08U8_o.js} +8 -8
  42. package/dist/fiscal-qr/fiscal-qr.es.js +7 -7
  43. package/dist/flow/flow.es.js +11 -11
  44. package/dist/geolocation/geolocation.es.js +6 -6
  45. package/dist/government-validation/government-validation.es.js +7 -7
  46. package/dist/{homeScreen-Dycy1yhN.js → homeScreen-D2XpU5z_.js} +5 -5
  47. package/dist/{icons-D0cfSCBM.js → icons-CIjsoS44.js} +1 -1
  48. package/dist/id/id.es.js +18 -19
  49. package/dist/id-selfie-flow/id-selfie-flow.es.js +7 -8
  50. package/dist/id-verification/id-verification.es.js +4 -4
  51. package/dist/{idOcr-riTHUOlr.js → idOcr-DkmZyLVu.js} +8 -8
  52. package/dist/identity-reuse/identity-reuse.es.js +4 -4
  53. package/dist/{incode-logo-cGsd55rc.js → incode-logo-DkPbEPiI.js} +1 -1
  54. package/dist/{incodeComponent-B-daxouV.js → incodeComponent-B6hBTDEE.js} +57 -12
  55. package/dist/{incodeModule-uyUrSSUM.js → incodeModule-CCI32xbn.js} +9 -3
  56. package/dist/{inputComposed-Pp_XN1-h.js → inputComposed-CGB8zKbd.js} +3 -3
  57. package/dist/inputComposed-DDFdXKT3.js +1 -0
  58. package/dist/{mandatoryConsent-DSAjFc0h.js → mandatoryConsent-L7Tpj3tg.js} +6 -6
  59. package/dist/{manualCaptureButton-BY8dRhGA.js → manualCaptureButton-B3ZD52_f.js} +3 -3
  60. package/dist/{manualCaptureButton-BldgUGso.js → manualCaptureButton-ByWujoAK.js} +8 -10
  61. package/dist/{modal-BlczH_pL.js → modal-9-lPt5Hj.js} +2 -2
  62. package/dist/{optionAccessibleLabel-Dmz3eRsO.js → optionAccessibleLabel-Cc91L4JK.js} +3 -3
  63. package/dist/{otpInput-B3vUjmBF.js → otpInput-BWiL_nBW.js} +4 -4
  64. package/dist/{pdfViewer-BGFFFvmi.js → pdfViewer-BbRv7mHX.js} +2 -2
  65. package/dist/pdfViewer-DHgpC35P.js +2 -0
  66. package/dist/phone/phone.es.js +7 -7
  67. package/dist/{phoneInputComposed-D1ZBsd4S.js → phoneInputComposed-Bvy15RAe.js} +4 -4
  68. package/dist/{processing-vGhs5Gvb.js → processing-DN0NyNqR.js} +1 -1
  69. package/dist/qe-signature/qe-signature.es.js +3 -3
  70. package/dist/{radioGroupComposed-CYPHpI6a.js → radioGroupComposed-CPFZJOtR.js} +4 -4
  71. package/dist/redirect-to-mobile/redirect-to-mobile.es.js +11 -11
  72. package/dist/{richText-2OnIN9ff.js → richText-DnGJiTPl.js} +1 -1
  73. package/dist/selfie/selfie.es.js +7 -7
  74. package/dist/signature/signature.es.js +6 -6
  75. package/dist/{snackbar-BzyWgQ7J.js → snackbar-zbTKBgCx.js} +1 -1
  76. package/dist/{spacer-Bnmh-DfR.js → spacer-C6GdxqM-.js} +1 -1
  77. package/dist/{spinner-HP_c74K-.js → spinner-CaEPC8gQ.js} +4 -4
  78. package/dist/{statusPage-C0vTVW0Q.js → statusPage-C-2V2g63.js} +3 -3
  79. package/dist/{tabs-B_TxQ9ZQ.js → tabs-BjLPiKhZ.js} +1 -1
  80. package/dist/{tutorial-Cuy2ZEG9.js → tutorial-B1F5C8Si.js} +8 -8
  81. package/dist/types/ae-signature.d.ts +28 -2
  82. package/dist/types/antifraud.d.ts +28 -2
  83. package/dist/types/authentication.d.ts +28 -2
  84. package/dist/types/certificate-issuance.d.ts +28 -2
  85. package/dist/types/consent.d.ts +28 -2
  86. package/dist/types/cross-document-data-match.d.ts +28 -2
  87. package/dist/types/curp-validation.d.ts +28 -2
  88. package/dist/types/document-capture.d.ts +28 -2
  89. package/dist/types/ekyb.d.ts +28 -2
  90. package/dist/types/ekyc.d.ts +28 -2
  91. package/dist/types/electronic-signature.d.ts +28 -2
  92. package/dist/types/email.d.ts +28 -2
  93. package/dist/types/extensibility.d.ts +55 -2
  94. package/dist/types/face-match.d.ts +28 -2
  95. package/dist/types/field-comparison.d.ts +28 -2
  96. package/dist/types/fiscal-qr.d.ts +28 -2
  97. package/dist/types/flow.d.ts +43 -3
  98. package/dist/types/geolocation.d.ts +28 -2
  99. package/dist/types/government-validation.d.ts +28 -2
  100. package/dist/types/id-selfie-flow.d.ts +28 -2
  101. package/dist/types/id-verification.d.ts +28 -2
  102. package/dist/types/id.d.ts +28 -2
  103. package/dist/types/identity-reuse.d.ts +28 -2
  104. package/dist/types/index.d.ts +46 -0
  105. package/dist/types/phone.d.ts +28 -2
  106. package/dist/types/qe-signature.d.ts +28 -2
  107. package/dist/types/selfie.d.ts +28 -2
  108. package/dist/types/signature.d.ts +28 -2
  109. package/dist/types/video-selfie.d.ts +28 -2
  110. package/dist/types/watchlist.d.ts +28 -2
  111. package/dist/types/workflow.d.ts +44 -3
  112. package/dist/{useModuleLoader-BImpfi_R.js → useModuleLoader-DVvqx4RT.js} +16 -16
  113. package/dist/{verificationResult-IUf0w1aR.js → verificationResult-tgNeUuHO.js} +6 -6
  114. package/dist/video-selfie/video-selfie.es.js +13 -14
  115. package/dist/watchlist/watchlist.es.js +4 -4
  116. package/dist/{watchlistForBusiness-zT9gCfTc.js → watchlistForBusiness-3bO7BVcy.js} +7 -7
  117. package/dist/workflow/workflow.es.js +9 -9
  118. package/package.json +2 -2
  119. package/dist/dateInputComposed-DKQJz0kJ.js +0 -1
  120. package/dist/documentCapture-sB2_X-we.js +0 -2
  121. package/dist/dropdownComposed-DE-VJgcR.js +0 -1
  122. package/dist/ekybModule-CR9A6Fqb.js +0 -2
  123. package/dist/ekycModule-CewwzYvk.js +0 -2
  124. package/dist/faceMatch-2pfSeXeA.js +0 -2
  125. package/dist/fieldComparison-DUYp39WI.js +0 -2
  126. package/dist/inputComposed-CABc288U.js +0 -1
  127. package/dist/pdfViewer-4xNYiBI1.js +0 -2
@@ -117,15 +117,17 @@ declare type IncodeModuleProps<TConfig, TResult = void, TManager = unknown, TCon
117
117
  };
118
118
 
119
119
  /**
120
- * Per-instance asset/animation overrides for a single mounted SDK module.
120
+ * Per-instance overrides for a single mounted SDK module.
121
121
  *
122
122
  * These ride on the module's `config` prop and are published once at the
123
123
  * module root by `registerIncodeModuleElement`, so a deep `<Asset>`/`<AnimatedAsset>`
124
- * reads them via {@link useInstanceOverrides} without any prop drilling.
124
+ * or `<TransitionSpinner>` reads them via {@link useInstanceOverrides} without
125
+ * any prop drilling.
125
126
  */
126
127
  declare type InstanceOverrides = {
127
128
  assets?: AssetOverrides;
128
129
  animations?: AnimationOverrides;
130
+ spinner?: SpinnerPresentation;
129
131
  };
130
132
 
131
133
  declare type LottieAnimationData = {
@@ -137,6 +139,30 @@ declare type LottieAnimationData = {
137
139
  h: number;
138
140
  };
139
141
 
142
+ /**
143
+ * Host-facing loader presentation, settable globally via
144
+ * `setup({ uiConfig: { spinner } })` or per element via `config.spinner`.
145
+ *
146
+ * Copy is deliberately absent. Loader text comes from i18n (`loadingCircle.*`),
147
+ * which keeps it localizable — a literal string here would freeze in whatever
148
+ * language the host typed it in when the user switches language mid-flow — and
149
+ * leaves one source of truth for user-facing strings.
150
+ */
151
+ declare type SpinnerPresentation = {
152
+ renderMode?: SpinnerRenderMode;
153
+ size?: SpinnerSize;
154
+ };
155
+
156
+ /**
157
+ * Which parts of a loader render.
158
+ *
159
+ * An enum rather than a pair of booleans so the meaningless fourth state —
160
+ * neither icon nor text, i.e. a blank screen — is unrepresentable.
161
+ */
162
+ declare type SpinnerRenderMode = 'spinnerAndText' | 'spinnerOnly' | 'textOnly';
163
+
164
+ declare type SpinnerSize = 'small' | 'medium' | 'large';
165
+
140
166
  /** An SVG imported as a Preact component (the `?react` import shape). */
141
167
  declare type SvgComponent = FunctionComponent<SVGProps<SVGSVGElement>>;
142
168
 
@@ -117,15 +117,17 @@ declare type IncodeModuleProps<TConfig, TResult = void, TManager = unknown, TCon
117
117
  };
118
118
 
119
119
  /**
120
- * Per-instance asset/animation overrides for a single mounted SDK module.
120
+ * Per-instance overrides for a single mounted SDK module.
121
121
  *
122
122
  * These ride on the module's `config` prop and are published once at the
123
123
  * module root by `registerIncodeModuleElement`, so a deep `<Asset>`/`<AnimatedAsset>`
124
- * reads them via {@link useInstanceOverrides} without any prop drilling.
124
+ * or `<TransitionSpinner>` reads them via {@link useInstanceOverrides} without
125
+ * any prop drilling.
125
126
  */
126
127
  declare type InstanceOverrides = {
127
128
  assets?: AssetOverrides;
128
129
  animations?: AnimationOverrides;
130
+ spinner?: SpinnerPresentation;
129
131
  };
130
132
 
131
133
  declare type LottieAnimationData = {
@@ -137,6 +139,30 @@ declare type LottieAnimationData = {
137
139
  h: number;
138
140
  };
139
141
 
142
+ /**
143
+ * Host-facing loader presentation, settable globally via
144
+ * `setup({ uiConfig: { spinner } })` or per element via `config.spinner`.
145
+ *
146
+ * Copy is deliberately absent. Loader text comes from i18n (`loadingCircle.*`),
147
+ * which keeps it localizable — a literal string here would freeze in whatever
148
+ * language the host typed it in when the user switches language mid-flow — and
149
+ * leaves one source of truth for user-facing strings.
150
+ */
151
+ declare type SpinnerPresentation = {
152
+ renderMode?: SpinnerRenderMode;
153
+ size?: SpinnerSize;
154
+ };
155
+
156
+ /**
157
+ * Which parts of a loader render.
158
+ *
159
+ * An enum rather than a pair of booleans so the meaningless fourth state —
160
+ * neither icon nor text, i.e. a blank screen — is unrepresentable.
161
+ */
162
+ declare type SpinnerRenderMode = 'spinnerAndText' | 'spinnerOnly' | 'textOnly';
163
+
164
+ declare type SpinnerSize = 'small' | 'medium' | 'large';
165
+
140
166
  /** An SVG imported as a Preact component (the `?react` import shape). */
141
167
  declare type SvgComponent = FunctionComponent<SVGProps<SVGSVGElement>>;
142
168
 
@@ -117,15 +117,17 @@ declare type IncodeModuleProps<TConfig, TResult = void, TManager = unknown, TCon
117
117
  };
118
118
 
119
119
  /**
120
- * Per-instance asset/animation overrides for a single mounted SDK module.
120
+ * Per-instance overrides for a single mounted SDK module.
121
121
  *
122
122
  * These ride on the module's `config` prop and are published once at the
123
123
  * module root by `registerIncodeModuleElement`, so a deep `<Asset>`/`<AnimatedAsset>`
124
- * reads them via {@link useInstanceOverrides} without any prop drilling.
124
+ * or `<TransitionSpinner>` reads them via {@link useInstanceOverrides} without
125
+ * any prop drilling.
125
126
  */
126
127
  declare type InstanceOverrides = {
127
128
  assets?: AssetOverrides;
128
129
  animations?: AnimationOverrides;
130
+ spinner?: SpinnerPresentation;
129
131
  };
130
132
 
131
133
  declare type LottieAnimationData = {
@@ -137,6 +139,30 @@ declare type LottieAnimationData = {
137
139
  h: number;
138
140
  };
139
141
 
142
+ /**
143
+ * Host-facing loader presentation, settable globally via
144
+ * `setup({ uiConfig: { spinner } })` or per element via `config.spinner`.
145
+ *
146
+ * Copy is deliberately absent. Loader text comes from i18n (`loadingCircle.*`),
147
+ * which keeps it localizable — a literal string here would freeze in whatever
148
+ * language the host typed it in when the user switches language mid-flow — and
149
+ * leaves one source of truth for user-facing strings.
150
+ */
151
+ declare type SpinnerPresentation = {
152
+ renderMode?: SpinnerRenderMode;
153
+ size?: SpinnerSize;
154
+ };
155
+
156
+ /**
157
+ * Which parts of a loader render.
158
+ *
159
+ * An enum rather than a pair of booleans so the meaningless fourth state —
160
+ * neither icon nor text, i.e. a blank screen — is unrepresentable.
161
+ */
162
+ declare type SpinnerRenderMode = 'spinnerAndText' | 'spinnerOnly' | 'textOnly';
163
+
164
+ declare type SpinnerSize = 'small' | 'medium' | 'large';
165
+
140
166
  /** An SVG imported as a Preact component (the `?react` import shape). */
141
167
  declare type SvgComponent = FunctionComponent<SVGProps<SVGSVGElement>>;
142
168
 
@@ -117,15 +117,17 @@ declare type IncodeModuleProps<TConfig, TResult = void, TManager = unknown, TCon
117
117
  };
118
118
 
119
119
  /**
120
- * Per-instance asset/animation overrides for a single mounted SDK module.
120
+ * Per-instance overrides for a single mounted SDK module.
121
121
  *
122
122
  * These ride on the module's `config` prop and are published once at the
123
123
  * module root by `registerIncodeModuleElement`, so a deep `<Asset>`/`<AnimatedAsset>`
124
- * reads them via {@link useInstanceOverrides} without any prop drilling.
124
+ * or `<TransitionSpinner>` reads them via {@link useInstanceOverrides} without
125
+ * any prop drilling.
125
126
  */
126
127
  declare type InstanceOverrides = {
127
128
  assets?: AssetOverrides;
128
129
  animations?: AnimationOverrides;
130
+ spinner?: SpinnerPresentation;
129
131
  };
130
132
 
131
133
  declare type LottieAnimationData = {
@@ -137,6 +139,30 @@ declare type LottieAnimationData = {
137
139
  h: number;
138
140
  };
139
141
 
142
+ /**
143
+ * Host-facing loader presentation, settable globally via
144
+ * `setup({ uiConfig: { spinner } })` or per element via `config.spinner`.
145
+ *
146
+ * Copy is deliberately absent. Loader text comes from i18n (`loadingCircle.*`),
147
+ * which keeps it localizable — a literal string here would freeze in whatever
148
+ * language the host typed it in when the user switches language mid-flow — and
149
+ * leaves one source of truth for user-facing strings.
150
+ */
151
+ declare type SpinnerPresentation = {
152
+ renderMode?: SpinnerRenderMode;
153
+ size?: SpinnerSize;
154
+ };
155
+
156
+ /**
157
+ * Which parts of a loader render.
158
+ *
159
+ * An enum rather than a pair of booleans so the meaningless fourth state —
160
+ * neither icon nor text, i.e. a blank screen — is unrepresentable.
161
+ */
162
+ declare type SpinnerRenderMode = 'spinnerAndText' | 'spinnerOnly' | 'textOnly';
163
+
164
+ declare type SpinnerSize = 'small' | 'medium' | 'large';
165
+
140
166
  /** An SVG imported as a Preact component (the `?react` import shape). */
141
167
  declare type SvgComponent = FunctionComponent<SVGProps<SVGSVGElement>>;
142
168
 
@@ -120,15 +120,17 @@ declare type IncodeModuleProps<TConfig, TResult = void, TManager = unknown, TCon
120
120
  };
121
121
 
122
122
  /**
123
- * Per-instance asset/animation overrides for a single mounted SDK module.
123
+ * Per-instance overrides for a single mounted SDK module.
124
124
  *
125
125
  * These ride on the module's `config` prop and are published once at the
126
126
  * module root by `registerIncodeModuleElement`, so a deep `<Asset>`/`<AnimatedAsset>`
127
- * reads them via {@link useInstanceOverrides} without any prop drilling.
127
+ * or `<TransitionSpinner>` reads them via {@link useInstanceOverrides} without
128
+ * any prop drilling.
128
129
  */
129
130
  declare type InstanceOverrides = {
130
131
  assets?: AssetOverrides;
131
132
  animations?: AnimationOverrides;
133
+ spinner?: SpinnerPresentation;
132
134
  };
133
135
 
134
136
  declare type LottieAnimationData = {
@@ -140,6 +142,30 @@ declare type LottieAnimationData = {
140
142
  h: number;
141
143
  };
142
144
 
145
+ /**
146
+ * Host-facing loader presentation, settable globally via
147
+ * `setup({ uiConfig: { spinner } })` or per element via `config.spinner`.
148
+ *
149
+ * Copy is deliberately absent. Loader text comes from i18n (`loadingCircle.*`),
150
+ * which keeps it localizable — a literal string here would freeze in whatever
151
+ * language the host typed it in when the user switches language mid-flow — and
152
+ * leaves one source of truth for user-facing strings.
153
+ */
154
+ declare type SpinnerPresentation = {
155
+ renderMode?: SpinnerRenderMode;
156
+ size?: SpinnerSize;
157
+ };
158
+
159
+ /**
160
+ * Which parts of a loader render.
161
+ *
162
+ * An enum rather than a pair of booleans so the meaningless fourth state —
163
+ * neither icon nor text, i.e. a blank screen — is unrepresentable.
164
+ */
165
+ declare type SpinnerRenderMode = 'spinnerAndText' | 'spinnerOnly' | 'textOnly';
166
+
167
+ declare type SpinnerSize = 'small' | 'medium' | 'large';
168
+
143
169
  /** An SVG imported as a Preact component (the `?react` import shape). */
144
170
  declare type SvgComponent = FunctionComponent<SVGProps<SVGSVGElement>>;
145
171
 
@@ -630,15 +630,17 @@ declare type InputProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'class' |
630
630
  };
631
631
 
632
632
  /**
633
- * Per-instance asset/animation overrides for a single mounted SDK module.
633
+ * Per-instance overrides for a single mounted SDK module.
634
634
  *
635
635
  * These ride on the module's `config` prop and are published once at the
636
636
  * module root by `registerIncodeModuleElement`, so a deep `<Asset>`/`<AnimatedAsset>`
637
- * reads them via {@link useInstanceOverrides} without any prop drilling.
637
+ * or `<TransitionSpinner>` reads them via {@link useInstanceOverrides} without
638
+ * any prop drilling.
638
639
  */
639
640
  declare type InstanceOverrides = {
640
641
  assets?: AssetOverrides;
641
642
  animations?: AnimationOverrides;
643
+ spinner?: SpinnerPresentation;
642
644
  };
643
645
 
644
646
  export declare function LandscapeBlocker(): VNode | null;
@@ -1010,6 +1012,37 @@ declare type SpacerProps = {
1010
1012
 
1011
1013
  export declare const Spinner: FC<SpinnerProps>;
1012
1014
 
1015
+ /**
1016
+ * The presentation fields plus the legacy inline copy accepted by
1017
+ * `<incode-flow>` / `<incode-workflow>`.
1018
+ */
1019
+ export declare type SpinnerConfig = SpinnerPresentation & {
1020
+ /**
1021
+ * @deprecated Set loader copy via i18n translations (`loadingCircle.holdOn`).
1022
+ * TODO(2.3.0): remove.
1023
+ */
1024
+ title?: string;
1025
+ /**
1026
+ * @deprecated Set loader copy via i18n translations (`loadingCircle.validating`).
1027
+ * TODO(2.3.0): remove.
1028
+ */
1029
+ subtitle?: string;
1030
+ };
1031
+
1032
+ /**
1033
+ * Host-facing loader presentation, settable globally via
1034
+ * `setup({ uiConfig: { spinner } })` or per element via `config.spinner`.
1035
+ *
1036
+ * Copy is deliberately absent. Loader text comes from i18n (`loadingCircle.*`),
1037
+ * which keeps it localizable — a literal string here would freeze in whatever
1038
+ * language the host typed it in when the user switches language mid-flow — and
1039
+ * leaves one source of truth for user-facing strings.
1040
+ */
1041
+ export declare type SpinnerPresentation = {
1042
+ renderMode?: SpinnerRenderMode;
1043
+ size?: SpinnerSize;
1044
+ };
1045
+
1013
1046
  declare type SpinnerProps = {
1014
1047
  /** Title text to display below the spinner */
1015
1048
  title?: string;
@@ -1032,8 +1065,23 @@ declare type SpinnerProps = {
1032
1065
  * screen reader must not be able to swipe into or hear it behind that prompt.
1033
1066
  */
1034
1067
  presentational?: boolean;
1068
+ /**
1069
+ * Render the title/subtitle without the spinning icon.
1070
+ *
1071
+ * Backs `renderMode: 'textOnly'`, for hosts that animate their own copy and
1072
+ * want no icon competing with it.
1073
+ */
1074
+ hideIcon?: boolean;
1035
1075
  };
1036
1076
 
1077
+ /**
1078
+ * Which parts of a loader render.
1079
+ *
1080
+ * An enum rather than a pair of booleans so the meaningless fourth state —
1081
+ * neither icon nor text, i.e. a blank screen — is unrepresentable.
1082
+ */
1083
+ export declare type SpinnerRenderMode = 'spinnerAndText' | 'spinnerOnly' | 'textOnly';
1084
+
1037
1085
  export declare type SpinnerSize = 'small' | 'medium' | 'large';
1038
1086
 
1039
1087
  export declare const SuccessIcon: FC<SuccessIconProps>;
@@ -1117,6 +1165,11 @@ export declare type UiConfig = {
1117
1165
  hideFooterBranding?: boolean;
1118
1166
  assets?: AssetOverrides;
1119
1167
  animations?: AnimationOverrides;
1168
+ /**
1169
+ * Global loader presentation. Copy stays in i18n — see
1170
+ * {@link SpinnerPresentation}.
1171
+ */
1172
+ spinner?: SpinnerPresentation;
1120
1173
  };
1121
1174
 
1122
1175
  /**
@@ -120,15 +120,17 @@ declare type IncodeModuleProps<TConfig, TResult = void, TManager = unknown, TCon
120
120
  };
121
121
 
122
122
  /**
123
- * Per-instance asset/animation overrides for a single mounted SDK module.
123
+ * Per-instance overrides for a single mounted SDK module.
124
124
  *
125
125
  * These ride on the module's `config` prop and are published once at the
126
126
  * module root by `registerIncodeModuleElement`, so a deep `<Asset>`/`<AnimatedAsset>`
127
- * reads them via {@link useInstanceOverrides} without any prop drilling.
127
+ * or `<TransitionSpinner>` reads them via {@link useInstanceOverrides} without
128
+ * any prop drilling.
128
129
  */
129
130
  declare type InstanceOverrides = {
130
131
  assets?: AssetOverrides;
131
132
  animations?: AnimationOverrides;
133
+ spinner?: SpinnerPresentation;
132
134
  };
133
135
 
134
136
  declare type LottieAnimationData = {
@@ -140,6 +142,30 @@ declare type LottieAnimationData = {
140
142
  h: number;
141
143
  };
142
144
 
145
+ /**
146
+ * Host-facing loader presentation, settable globally via
147
+ * `setup({ uiConfig: { spinner } })` or per element via `config.spinner`.
148
+ *
149
+ * Copy is deliberately absent. Loader text comes from i18n (`loadingCircle.*`),
150
+ * which keeps it localizable — a literal string here would freeze in whatever
151
+ * language the host typed it in when the user switches language mid-flow — and
152
+ * leaves one source of truth for user-facing strings.
153
+ */
154
+ declare type SpinnerPresentation = {
155
+ renderMode?: SpinnerRenderMode;
156
+ size?: SpinnerSize;
157
+ };
158
+
159
+ /**
160
+ * Which parts of a loader render.
161
+ *
162
+ * An enum rather than a pair of booleans so the meaningless fourth state —
163
+ * neither icon nor text, i.e. a blank screen — is unrepresentable.
164
+ */
165
+ declare type SpinnerRenderMode = 'spinnerAndText' | 'spinnerOnly' | 'textOnly';
166
+
167
+ declare type SpinnerSize = 'small' | 'medium' | 'large';
168
+
143
169
  /** An SVG imported as a Preact component (the `?react` import shape). */
144
170
  declare type SvgComponent = FunctionComponent<SVGProps<SVGSVGElement>>;
145
171
 
@@ -117,15 +117,17 @@ declare type IncodeModuleProps<TConfig, TResult = void, TManager = unknown, TCon
117
117
  };
118
118
 
119
119
  /**
120
- * Per-instance asset/animation overrides for a single mounted SDK module.
120
+ * Per-instance overrides for a single mounted SDK module.
121
121
  *
122
122
  * These ride on the module's `config` prop and are published once at the
123
123
  * module root by `registerIncodeModuleElement`, so a deep `<Asset>`/`<AnimatedAsset>`
124
- * reads them via {@link useInstanceOverrides} without any prop drilling.
124
+ * or `<TransitionSpinner>` reads them via {@link useInstanceOverrides} without
125
+ * any prop drilling.
125
126
  */
126
127
  declare type InstanceOverrides = {
127
128
  assets?: AssetOverrides;
128
129
  animations?: AnimationOverrides;
130
+ spinner?: SpinnerPresentation;
129
131
  };
130
132
 
131
133
  declare type LottieAnimationData = {
@@ -137,6 +139,30 @@ declare type LottieAnimationData = {
137
139
  h: number;
138
140
  };
139
141
 
142
+ /**
143
+ * Host-facing loader presentation, settable globally via
144
+ * `setup({ uiConfig: { spinner } })` or per element via `config.spinner`.
145
+ *
146
+ * Copy is deliberately absent. Loader text comes from i18n (`loadingCircle.*`),
147
+ * which keeps it localizable — a literal string here would freeze in whatever
148
+ * language the host typed it in when the user switches language mid-flow — and
149
+ * leaves one source of truth for user-facing strings.
150
+ */
151
+ declare type SpinnerPresentation = {
152
+ renderMode?: SpinnerRenderMode;
153
+ size?: SpinnerSize;
154
+ };
155
+
156
+ /**
157
+ * Which parts of a loader render.
158
+ *
159
+ * An enum rather than a pair of booleans so the meaningless fourth state —
160
+ * neither icon nor text, i.e. a blank screen — is unrepresentable.
161
+ */
162
+ declare type SpinnerRenderMode = 'spinnerAndText' | 'spinnerOnly' | 'textOnly';
163
+
164
+ declare type SpinnerSize = 'small' | 'medium' | 'large';
165
+
140
166
  /** An SVG imported as a Preact component (the `?react` import shape). */
141
167
  declare type SvgComponent = FunctionComponent<SVGProps<SVGSVGElement>>;
142
168
 
@@ -117,15 +117,17 @@ declare type IncodeModuleProps<TConfig, TResult = void, TManager = unknown, TCon
117
117
  };
118
118
 
119
119
  /**
120
- * Per-instance asset/animation overrides for a single mounted SDK module.
120
+ * Per-instance overrides for a single mounted SDK module.
121
121
  *
122
122
  * These ride on the module's `config` prop and are published once at the
123
123
  * module root by `registerIncodeModuleElement`, so a deep `<Asset>`/`<AnimatedAsset>`
124
- * reads them via {@link useInstanceOverrides} without any prop drilling.
124
+ * or `<TransitionSpinner>` reads them via {@link useInstanceOverrides} without
125
+ * any prop drilling.
125
126
  */
126
127
  declare type InstanceOverrides = {
127
128
  assets?: AssetOverrides;
128
129
  animations?: AnimationOverrides;
130
+ spinner?: SpinnerPresentation;
129
131
  };
130
132
 
131
133
  declare type LottieAnimationData = {
@@ -137,6 +139,30 @@ declare type LottieAnimationData = {
137
139
  h: number;
138
140
  };
139
141
 
142
+ /**
143
+ * Host-facing loader presentation, settable globally via
144
+ * `setup({ uiConfig: { spinner } })` or per element via `config.spinner`.
145
+ *
146
+ * Copy is deliberately absent. Loader text comes from i18n (`loadingCircle.*`),
147
+ * which keeps it localizable — a literal string here would freeze in whatever
148
+ * language the host typed it in when the user switches language mid-flow — and
149
+ * leaves one source of truth for user-facing strings.
150
+ */
151
+ declare type SpinnerPresentation = {
152
+ renderMode?: SpinnerRenderMode;
153
+ size?: SpinnerSize;
154
+ };
155
+
156
+ /**
157
+ * Which parts of a loader render.
158
+ *
159
+ * An enum rather than a pair of booleans so the meaningless fourth state —
160
+ * neither icon nor text, i.e. a blank screen — is unrepresentable.
161
+ */
162
+ declare type SpinnerRenderMode = 'spinnerAndText' | 'spinnerOnly' | 'textOnly';
163
+
164
+ declare type SpinnerSize = 'small' | 'medium' | 'large';
165
+
140
166
  /** An SVG imported as a Preact component (the `?react` import shape). */
141
167
  declare type SvgComponent = FunctionComponent<SVGProps<SVGSVGElement>>;
142
168
 
@@ -105,6 +105,11 @@ declare type FlowUiConfig = {
105
105
  assets?: AssetOverrides;
106
106
  /** Per-instance Lottie-animation overrides for this flow. */
107
107
  animations?: AnimationOverrides;
108
+ /**
109
+ * Per-instance loader presentation for this flow and its modules. Overrides
110
+ * the global `setup({ uiConfig: { spinner } })` value. Copy stays in i18n.
111
+ */
112
+ spinner?: SpinnerPresentation;
108
113
  };
109
114
 
110
115
  /**
@@ -167,15 +172,17 @@ declare type IncodeModuleProps<TConfig, TResult = void, TManager = unknown, TCon
167
172
  };
168
173
 
169
174
  /**
170
- * Per-instance asset/animation overrides for a single mounted SDK module.
175
+ * Per-instance overrides for a single mounted SDK module.
171
176
  *
172
177
  * These ride on the module's `config` prop and are published once at the
173
178
  * module root by `registerIncodeModuleElement`, so a deep `<Asset>`/`<AnimatedAsset>`
174
- * reads them via {@link useInstanceOverrides} without any prop drilling.
179
+ * or `<TransitionSpinner>` reads them via {@link useInstanceOverrides} without
180
+ * any prop drilling.
175
181
  */
176
182
  declare type InstanceOverrides = {
177
183
  assets?: AssetOverrides;
178
184
  animations?: AnimationOverrides;
185
+ spinner?: SpinnerPresentation;
179
186
  };
180
187
 
181
188
  declare type LottieAnimationData = {
@@ -214,12 +221,45 @@ declare type SelfLoadingFlowRuntimeConfig = FlowBaseConfig & SelfLoadingSessionO
214
221
 
215
222
  declare type SelfLoadingSessionOptions = Pick<CreateSessionOptions, 'configurationId' | 'externalId' | 'externalCustomerId' | 'customFields' | 'uuid' | 'urlUuid' | 'interviewId' | 'loginHint'>;
216
223
 
217
- declare type SpinnerConfig = {
224
+ /**
225
+ * The presentation fields plus the legacy inline copy accepted by
226
+ * `<incode-flow>` / `<incode-workflow>`.
227
+ */
228
+ declare type SpinnerConfig = SpinnerPresentation & {
229
+ /**
230
+ * @deprecated Set loader copy via i18n translations (`loadingCircle.holdOn`).
231
+ * TODO(2.3.0): remove.
232
+ */
218
233
  title?: string;
234
+ /**
235
+ * @deprecated Set loader copy via i18n translations (`loadingCircle.validating`).
236
+ * TODO(2.3.0): remove.
237
+ */
219
238
  subtitle?: string;
239
+ };
240
+
241
+ /**
242
+ * Host-facing loader presentation, settable globally via
243
+ * `setup({ uiConfig: { spinner } })` or per element via `config.spinner`.
244
+ *
245
+ * Copy is deliberately absent. Loader text comes from i18n (`loadingCircle.*`),
246
+ * which keeps it localizable — a literal string here would freeze in whatever
247
+ * language the host typed it in when the user switches language mid-flow — and
248
+ * leaves one source of truth for user-facing strings.
249
+ */
250
+ declare type SpinnerPresentation = {
251
+ renderMode?: SpinnerRenderMode;
220
252
  size?: SpinnerSize;
221
253
  };
222
254
 
255
+ /**
256
+ * Which parts of a loader render.
257
+ *
258
+ * An enum rather than a pair of booleans so the meaningless fourth state —
259
+ * neither icon nor text, i.e. a blank screen — is unrepresentable.
260
+ */
261
+ declare type SpinnerRenderMode = 'spinnerAndText' | 'spinnerOnly' | 'textOnly';
262
+
223
263
  declare type SpinnerSize = 'small' | 'medium' | 'large';
224
264
 
225
265
  /** An SVG imported as a Preact component (the `?react` import shape). */
@@ -120,15 +120,17 @@ declare type IncodeModuleProps<TConfig, TResult = void, TManager = unknown, TCon
120
120
  };
121
121
 
122
122
  /**
123
- * Per-instance asset/animation overrides for a single mounted SDK module.
123
+ * Per-instance overrides for a single mounted SDK module.
124
124
  *
125
125
  * These ride on the module's `config` prop and are published once at the
126
126
  * module root by `registerIncodeModuleElement`, so a deep `<Asset>`/`<AnimatedAsset>`
127
- * reads them via {@link useInstanceOverrides} without any prop drilling.
127
+ * or `<TransitionSpinner>` reads them via {@link useInstanceOverrides} without
128
+ * any prop drilling.
128
129
  */
129
130
  declare type InstanceOverrides = {
130
131
  assets?: AssetOverrides;
131
132
  animations?: AnimationOverrides;
133
+ spinner?: SpinnerPresentation;
132
134
  };
133
135
 
134
136
  declare type LottieAnimationData = {
@@ -140,6 +142,30 @@ declare type LottieAnimationData = {
140
142
  h: number;
141
143
  };
142
144
 
145
+ /**
146
+ * Host-facing loader presentation, settable globally via
147
+ * `setup({ uiConfig: { spinner } })` or per element via `config.spinner`.
148
+ *
149
+ * Copy is deliberately absent. Loader text comes from i18n (`loadingCircle.*`),
150
+ * which keeps it localizable — a literal string here would freeze in whatever
151
+ * language the host typed it in when the user switches language mid-flow — and
152
+ * leaves one source of truth for user-facing strings.
153
+ */
154
+ declare type SpinnerPresentation = {
155
+ renderMode?: SpinnerRenderMode;
156
+ size?: SpinnerSize;
157
+ };
158
+
159
+ /**
160
+ * Which parts of a loader render.
161
+ *
162
+ * An enum rather than a pair of booleans so the meaningless fourth state —
163
+ * neither icon nor text, i.e. a blank screen — is unrepresentable.
164
+ */
165
+ declare type SpinnerRenderMode = 'spinnerAndText' | 'spinnerOnly' | 'textOnly';
166
+
167
+ declare type SpinnerSize = 'small' | 'medium' | 'large';
168
+
143
169
  /** An SVG imported as a Preact component (the `?react` import shape). */
144
170
  declare type SvgComponent = FunctionComponent<SVGProps<SVGSVGElement>>;
145
171
 
@@ -116,15 +116,17 @@ declare type IncodeModuleProps<TConfig, TResult = void, TManager = unknown, TCon
116
116
  };
117
117
 
118
118
  /**
119
- * Per-instance asset/animation overrides for a single mounted SDK module.
119
+ * Per-instance overrides for a single mounted SDK module.
120
120
  *
121
121
  * These ride on the module's `config` prop and are published once at the
122
122
  * module root by `registerIncodeModuleElement`, so a deep `<Asset>`/`<AnimatedAsset>`
123
- * reads them via {@link useInstanceOverrides} without any prop drilling.
123
+ * or `<TransitionSpinner>` reads them via {@link useInstanceOverrides} without
124
+ * any prop drilling.
124
125
  */
125
126
  declare type InstanceOverrides = {
126
127
  assets?: AssetOverrides;
127
128
  animations?: AnimationOverrides;
129
+ spinner?: SpinnerPresentation;
128
130
  };
129
131
 
130
132
  declare type LottieAnimationData = {
@@ -136,6 +138,30 @@ declare type LottieAnimationData = {
136
138
  h: number;
137
139
  };
138
140
 
141
+ /**
142
+ * Host-facing loader presentation, settable globally via
143
+ * `setup({ uiConfig: { spinner } })` or per element via `config.spinner`.
144
+ *
145
+ * Copy is deliberately absent. Loader text comes from i18n (`loadingCircle.*`),
146
+ * which keeps it localizable — a literal string here would freeze in whatever
147
+ * language the host typed it in when the user switches language mid-flow — and
148
+ * leaves one source of truth for user-facing strings.
149
+ */
150
+ declare type SpinnerPresentation = {
151
+ renderMode?: SpinnerRenderMode;
152
+ size?: SpinnerSize;
153
+ };
154
+
155
+ /**
156
+ * Which parts of a loader render.
157
+ *
158
+ * An enum rather than a pair of booleans so the meaningless fourth state —
159
+ * neither icon nor text, i.e. a blank screen — is unrepresentable.
160
+ */
161
+ declare type SpinnerRenderMode = 'spinnerAndText' | 'spinnerOnly' | 'textOnly';
162
+
163
+ declare type SpinnerSize = 'small' | 'medium' | 'large';
164
+
139
165
  /** An SVG imported as a Preact component (the `?react` import shape). */
140
166
  declare type SvgComponent = FunctionComponent<SVGProps<SVGSVGElement>>;
141
167