react-native-persona 2.18.0 → 2.19.0

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.
@@ -65,5 +65,5 @@ dependencies {
65
65
  implementation("com.facebook.react:react-android")
66
66
 
67
67
  // NB: be sure to bump `nfc-impl` in example/android/app/build.gradle as well
68
- implementation 'com.withpersona.sdk2:inquiry:2.23.0'
68
+ implementation 'com.withpersona.sdk2:inquiry:2.24.0'
69
69
  }
@@ -3,7 +3,9 @@ package com.withpersona.sdk2.reactnative;
3
3
  import android.app.Activity;
4
4
  import android.content.Intent;
5
5
 
6
+ import androidx.annotation.NonNull;
6
7
  import androidx.annotation.Nullable;
8
+ import androidx.annotation.OptIn;
7
9
 
8
10
  import com.facebook.react.bridge.ActivityEventListener;
9
11
  import com.facebook.react.bridge.Arguments;
@@ -18,21 +20,23 @@ import com.facebook.react.modules.core.DeviceEventManagerModule;
18
20
  import com.withpersona.sdk2.reactnative.R;
19
21
  import com.withpersona.sdk2.inquiry.ClientThemeSource;
20
22
  import com.withpersona.sdk2.inquiry.Environment;
23
+ import com.withpersona.sdk2.inquiry.ExperimentalInlineApi;
24
+ import com.withpersona.sdk2.inquiry.ExperimentalInquiryApi;
21
25
  import com.withpersona.sdk2.inquiry.Fields;
22
26
  import com.withpersona.sdk2.inquiry.Inquiry;
23
27
  import com.withpersona.sdk2.inquiry.InquiryBuilder;
24
28
  import com.withpersona.sdk2.inquiry.InquiryField;
25
29
  import com.withpersona.sdk2.inquiry.InquiryResponse;
26
30
  import com.withpersona.sdk2.inquiry.InquiryTemplateBuilder;
31
+ import com.withpersona.sdk2.inquiry.OnInquiryEventListener;
27
32
  import com.withpersona.sdk2.inquiry.ServerThemeSource;
33
+ import com.withpersona.sdk2.inquiry.inline_inquiry.InquiryEvent;
28
34
  import com.withpersona.sdk2.inquiry.types.collected_data.CollectedData;
29
35
  import com.withpersona.sdk2.inquiry.types.collected_data.DocumentFile;
30
36
  import com.withpersona.sdk2.inquiry.types.collected_data.GovernmentIdCapture;
31
37
  import com.withpersona.sdk2.inquiry.types.collected_data.SelfieCapture;
32
38
  import com.withpersona.sdk2.inquiry.types.collected_data.StepData;
33
39
 
34
- import org.jetbrains.annotations.NotNull;
35
-
36
40
  import java.util.HashMap;
37
41
  import java.util.List;
38
42
  import java.util.Map;
@@ -63,6 +67,7 @@ public class PersonaInquiryModule2 extends ReactContextBaseJavaModule
63
67
  super(reactContext);
64
68
  this.reactContext = reactContext;
65
69
  reactContext.addActivityEventListener(this);
70
+ registerOnInquiryEventListener();
66
71
  }
67
72
 
68
73
  @Override
@@ -273,7 +278,7 @@ public class PersonaInquiryModule2 extends ReactContextBaseJavaModule
273
278
  return map;
274
279
  }
275
280
 
276
- @NotNull
281
+ @NonNull
277
282
  @Override
278
283
  public String getName() {
279
284
  return "PersonaInquiry2";
@@ -420,4 +425,59 @@ public class PersonaInquiryModule2 extends ReactContextBaseJavaModule
420
425
  return null;
421
426
  }
422
427
  }
428
+
429
+
430
+ @OptIn(markerClass = ExperimentalInquiryApi.class)
431
+ private void registerOnInquiryEventListener() {
432
+ Inquiry.Companion.setOnEventListener(new OnInquiryEventListener() {
433
+ @OptIn(markerClass = ExperimentalInlineApi.class)
434
+ @Override
435
+ public void onEvent(@NonNull InquiryEvent inquiryEvent) {
436
+ DeviceEventManagerModule.RCTDeviceEventEmitter jsModule = getJsModule();
437
+
438
+ if (jsModule == null) {
439
+ return;
440
+ }
441
+
442
+ ReadableMap map = inquiryEventToMap(inquiryEvent);
443
+
444
+ if (map != null) {
445
+ WritableMap params = Arguments.createMap();
446
+ params.putMap("event", map);
447
+ jsModule.emit("onEvent", params);
448
+ }
449
+ }
450
+ });
451
+ }
452
+
453
+ @OptIn(markerClass = ExperimentalInlineApi.class)
454
+ @Nullable
455
+ private ReadableMap inquiryEventToMap(@NonNull InquiryEvent inquiryEvent) {
456
+ WritableMap inquiryEventMap = Arguments.createMap();
457
+
458
+ if (inquiryEvent instanceof InquiryEvent.StartEvent) {
459
+ InquiryEvent.StartEvent start = (InquiryEvent.StartEvent) inquiryEvent;
460
+ inquiryEventMap.putString("type", "start");
461
+ inquiryEventMap.putString("inquiryId", start.getInquiryId());
462
+ inquiryEventMap.putString("sessionToken", start.getSessionToken());
463
+ } else if (inquiryEvent instanceof InquiryEvent.PageChange) {
464
+ InquiryEvent.PageChange pageChange = (InquiryEvent.PageChange) inquiryEvent;
465
+ inquiryEventMap.putString("type", "page_change");
466
+ inquiryEventMap.putString("name", pageChange.getName());
467
+ inquiryEventMap.putString("path", pageChange.getPath());
468
+ } else {
469
+ return null;
470
+ }
471
+
472
+ return inquiryEventMap;
473
+ }
474
+
475
+ @Nullable
476
+ private DeviceEventManagerModule.RCTDeviceEventEmitter getJsModule() {
477
+ try {
478
+ return this.reactContext.getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class);
479
+ } catch (Exception e) {
480
+ return null;
481
+ }
482
+ }
423
483
  }
@@ -23,7 +23,7 @@ private var collectedData: InquiryData? = nil
23
23
  class PersonaInquiry2: RCTEventEmitter {
24
24
 
25
25
  override func supportedEvents() -> [String] {
26
- ["onComplete", "onCanceled", "onError"]
26
+ ["onComplete", "onCanceled", "onError", "onEvent"]
27
27
  }
28
28
 
29
29
  override static func moduleName() -> String {
@@ -191,6 +191,22 @@ extension PersonaInquiry2: InquiryDelegate {
191
191
  ]
192
192
  )
193
193
  }
194
+
195
+ func inquiryEventOccurred(event: InquiryEvent) {
196
+ let canProcessEvent = switch event {
197
+ case .start, .pageChange:
198
+ true
199
+ @unknown default:
200
+ false
201
+ }
202
+ guard canProcessEvent else { return }
203
+ sendEvent(
204
+ withName: "onEvent",
205
+ body: [
206
+ "event": inquiryEventToDictionary(event: event)
207
+ ] as [String : Any]
208
+ )
209
+ }
194
210
  }
195
211
 
196
212
  // MARK: - InquiryCollectionDelegate
@@ -777,6 +793,31 @@ extension PersonaInquiry2 {
777
793
  }
778
794
  }
779
795
  }
796
+
797
+ /// Converts an InquiryEvent like
798
+ /// `.pageChange(name: "start", path: "inquriy/start")]` to
799
+ /// `["name": "start", "path": "inquriy/start"]`
800
+ private func inquiryEventToDictionary(event: InquiryEvent) -> [String: String] {
801
+ switch event {
802
+ case .start(let value):
803
+ return [
804
+ "type": "start",
805
+ "inquiryId": value.inquiryId,
806
+ "sessionToken": value.sessionToken,
807
+ ]
808
+ case .pageChange(let value):
809
+ return [
810
+ "type": "page_change",
811
+ "name": value.name,
812
+ "path": value.path,
813
+ ]
814
+ @unknown default:
815
+ return [
816
+ "type": "unknown",
817
+ "value": "unknown"
818
+ ]
819
+ }
820
+ }
780
821
  }
781
822
 
782
823
  extension Environment {
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.InquiryEvent = void 0;
7
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
8
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
9
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
10
+ let InquiryEvent = exports.InquiryEvent = void 0;
11
+ (function (_InquiryEvent) {
12
+ class Start {
13
+ constructor(inquiryId, sessionToken) {
14
+ _defineProperty(this, "type", 'start');
15
+ _defineProperty(this, "inquiryId", void 0);
16
+ _defineProperty(this, "sessionToken", void 0);
17
+ this.inquiryId = inquiryId;
18
+ this.sessionToken = sessionToken;
19
+ }
20
+ }
21
+ _InquiryEvent.Start = Start;
22
+ class PageChange {
23
+ constructor(name, path) {
24
+ _defineProperty(this, "type", 'page_change');
25
+ _defineProperty(this, "name", void 0);
26
+ _defineProperty(this, "path", void 0);
27
+ this.name = name;
28
+ this.path = path;
29
+ }
30
+ }
31
+ _InquiryEvent.PageChange = PageChange;
32
+ const isStart = event => {
33
+ return event.type === 'start' && event.inquiryId !== undefined && event.sessionToken !== undefined;
34
+ };
35
+ const isPageChange = event => {
36
+ return event.type === 'page_change' && event.name !== undefined && event.path !== undefined;
37
+ };
38
+ const fromJson = _InquiryEvent.fromJson = eventJson => {
39
+ let event;
40
+ if (isStart(eventJson)) {
41
+ event = new Start(eventJson.inquiryId, eventJson.sessionToken);
42
+ } else if (isPageChange(eventJson)) {
43
+ event = new PageChange(eventJson.name, eventJson.path);
44
+ } else {
45
+ event = null;
46
+ }
47
+ return event;
48
+ };
49
+ })(InquiryEvent || (exports.InquiryEvent = InquiryEvent = {}));
50
+ //# sourceMappingURL=InquiryEvent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["InquiryEvent","exports","_InquiryEvent","Start","constructor","inquiryId","sessionToken","_defineProperty","PageChange","name","path","isStart","event","type","undefined","isPageChange","fromJson","eventJson"],"sources":["InquiryEvent.ts"],"sourcesContent":["export interface InquiryEvent {\n readonly type: string;\n}\n\nexport namespace InquiryEvent {\n /**\n * Triggered when an Inquiry session has been created in the client.\n *\n * Dynamic Flow Templates will send this event at the same time as 'ready', and it will not\n * indicate user interaction.\n */\n export class Start implements InquiryEvent {\n readonly type: string = 'start';\n readonly inquiryId: string;\n readonly sessionToken: string;\n\n constructor(inquiryId: string, sessionToken: string) {\n this.inquiryId = inquiryId;\n this.sessionToken = sessionToken;\n }\n }\n\n /**\n * The current page in the Inquiry flow changed. This is primarily used with the Inlined React\n * flow to dynamically resize the widget based on the contents of the current page.\n *\n * page-change events receive a metadata object containing the following fields:\n *\n * @param name name of the next step as configured in the Inquiry Template\n * @param path string representing the step type\n */\n export class PageChange implements InquiryEvent {\n readonly type: string = 'page_change';\n readonly name: string;\n readonly path: string;\n\n constructor(name: string, path: string) {\n this.name = name;\n this.path = path;\n }\n }\n\n const isStart = (event: any): event is Start => {\n return (\n event.type === 'start' &&\n event.inquiryId !== undefined &&\n event.sessionToken !== undefined\n );\n };\n\n const isPageChange = (event: any): event is PageChange => {\n return (\n event.type === 'page_change' &&\n event.name !== undefined &&\n event.path !== undefined\n );\n };\n\n export const fromJson = (eventJson: any): InquiryEvent | null => {\n let event: InquiryEvent | null;\n\n if (isStart(eventJson)) {\n event = new Start(eventJson.inquiryId, eventJson.sessionToken);\n } else if (isPageChange(eventJson)) {\n event = new PageChange(eventJson.name, eventJson.path);\n } else {\n event = null;\n }\n\n return event;\n };\n}\n"],"mappings":";;;;;;;;;IAIiBA,YAAY,GAAAC,OAAA,CAAAD,YAAA;AAAA,WAAAE,aAAA;EAOpB,MAAMC,KAAK,CAAyB;IAKzCC,WAAWA,CAACC,SAAiB,EAAEC,YAAoB,EAAE;MAAAC,eAAA,eAJ7B,OAAO;MAAAA,eAAA;MAAAA,eAAA;MAK7B,IAAI,CAACF,SAAS,GAAGA,SAAS;MAC1B,IAAI,CAACC,YAAY,GAAGA,YAAY;IAClC;EACF;EAACJ,aAAA,CAAAC,KAAA,GAAAA,KAAA;EAWM,MAAMK,UAAU,CAAyB;IAK9CJ,WAAWA,CAACK,IAAY,EAAEC,IAAY,EAAE;MAAAH,eAAA,eAJhB,aAAa;MAAAA,eAAA;MAAAA,eAAA;MAKnC,IAAI,CAACE,IAAI,GAAGA,IAAI;MAChB,IAAI,CAACC,IAAI,GAAGA,IAAI;IAClB;EACF;EAACR,aAAA,CAAAM,UAAA,GAAAA,UAAA;EAED,MAAMG,OAAO,GAAIC,KAAU,IAAqB;IAC9C,OACEA,KAAK,CAACC,IAAI,KAAK,OAAO,IACtBD,KAAK,CAACP,SAAS,KAAKS,SAAS,IAC7BF,KAAK,CAACN,YAAY,KAAKQ,SAAS;EAEpC,CAAC;EAED,MAAMC,YAAY,GAAIH,KAAU,IAA0B;IACxD,OACEA,KAAK,CAACC,IAAI,KAAK,aAAa,IAC5BD,KAAK,CAACH,IAAI,KAAKK,SAAS,IACxBF,KAAK,CAACF,IAAI,KAAKI,SAAS;EAE5B,CAAC;EAEM,MAAME,QAAQ,GAAAd,aAAA,CAAAc,QAAA,GAAIC,SAAc,IAA0B;IAC/D,IAAIL,KAA0B;IAE9B,IAAID,OAAO,CAACM,SAAS,CAAC,EAAE;MACtBL,KAAK,GAAG,IAAIT,KAAK,CAACc,SAAS,CAACZ,SAAS,EAAEY,SAAS,CAACX,YAAY,CAAC;IAChE,CAAC,MAAM,IAAIS,YAAY,CAACE,SAAS,CAAC,EAAE;MAClCL,KAAK,GAAG,IAAIJ,UAAU,CAACS,SAAS,CAACR,IAAI,EAAEQ,SAAS,CAACP,IAAI,CAAC;IACxD,CAAC,MAAM;MACLE,KAAK,GAAG,IAAI;IACd;IAEA,OAAOA,KAAK;EACd,CAAC;AAAC,GAlEaZ,YAAY,KAAAC,OAAA,CAAAD,YAAA,GAAZA,YAAY","ignoreList":[]}
@@ -4,11 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.InquiryField = exports.Fields = void 0;
7
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
8
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
9
- function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
10
- let InquiryField;
11
- exports.InquiryField = InquiryField;
7
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
8
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
9
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
10
+ let InquiryField = exports.InquiryField = void 0;
12
11
  (function (_InquiryField) {
13
12
  class Integer {
14
13
  constructor(value) {
@@ -41,11 +40,10 @@ exports.InquiryField = InquiryField;
41
40
  }
42
41
  }
43
42
  _InquiryField.Unknown = Unknown;
44
- function parse(_ref) {
45
- let {
46
- type,
47
- value
48
- } = _ref;
43
+ function parse({
44
+ type,
45
+ value
46
+ }) {
49
47
  if (value == null) {
50
48
  return null;
51
49
  }
@@ -64,8 +62,7 @@ exports.InquiryField = InquiryField;
64
62
  }
65
63
  _InquiryField.parse = parse;
66
64
  })(InquiryField || (exports.InquiryField = InquiryField = {}));
67
- let Fields;
68
- exports.Fields = Fields;
65
+ let Fields = exports.Fields = void 0;
69
66
  (function (_Fields) {
70
67
  function builder() {
71
68
  return new Fields.Builder();
@@ -1 +1 @@
1
- {"version":3,"names":["InquiryField","exports","_InquiryField","Integer","constructor","value","_defineProperty","String","Boolean","Unknown","type","parse","_ref","Number","parseInt","JSON","Fields","_Fields","builder","Builder","_fields","integer","fieldKey","boolean","string","build"],"sources":["fields.ts"],"sourcesContent":["interface InquiryField {\n readonly type: string;\n}\n\nexport type RawInquiryField = {\n type: string;\n value?: any;\n};\n\nexport namespace InquiryField {\n export class Integer implements InquiryField {\n readonly type: string = 'integer';\n readonly value?: number;\n\n constructor(value?: number) {\n this.value = value;\n }\n }\n\n export class String implements InquiryField {\n readonly type: string = 'string';\n readonly value?: string;\n\n constructor(value?: string) {\n this.value = value;\n }\n }\n\n export class Boolean implements InquiryField {\n readonly type: string = 'boolean';\n readonly value?: boolean;\n\n constructor(value?: boolean) {\n this.value = value;\n }\n }\n\n export class Unknown implements InquiryField {\n readonly type: string;\n\n constructor(type: string) {\n this.type = type;\n }\n }\n\n export function parse({ type, value }: RawInquiryField): InquiryField | null {\n if (value == null) {\n return null;\n }\n switch (type) {\n case 'integer':\n return new InquiryField.Integer(Number.parseInt(value));\n case 'string':\n return new InquiryField.String(value);\n case 'boolean':\n return new InquiryField.Boolean(JSON.parse(value));\n case 'unknown':\n return new InquiryField.Unknown(value);\n default:\n return new InquiryField.Unknown(type);\n }\n }\n}\n\nexport type Fields = Record<string, InquiryField | null>;\n\nexport namespace Fields {\n export function builder(): Builder {\n return new Fields.Builder();\n }\n\n export class Builder {\n private _fields: Record<string, InquiryField>;\n\n constructor() {\n this._fields = {};\n }\n\n public integer(fieldKey: string, value?: number) {\n this._fields = {\n ...this._fields,\n [fieldKey]: new InquiryField.Integer(value),\n };\n\n return this;\n }\n\n public boolean(fieldKey: string, value?: boolean) {\n this._fields = {\n ...this._fields,\n [fieldKey]: new InquiryField.Boolean(value),\n };\n\n return this;\n }\n\n public string(fieldKey: string, value?: string) {\n this._fields = {\n ...this._fields,\n [fieldKey]: new InquiryField.String(value),\n };\n\n return this;\n }\n\n public build(): Fields {\n return this._fields;\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["InquiryField","exports","_InquiryField","Integer","constructor","value","_defineProperty","String","Boolean","Unknown","type","parse","Number","parseInt","JSON","Fields","_Fields","builder","Builder","_fields","integer","fieldKey","boolean","string","build"],"sources":["fields.ts"],"sourcesContent":["interface InquiryField {\n readonly type: string;\n}\n\nexport type RawInquiryField = {\n type: string;\n value?: any;\n};\n\nexport namespace InquiryField {\n export class Integer implements InquiryField {\n readonly type: string = 'integer';\n readonly value?: number;\n\n constructor(value?: number) {\n this.value = value;\n }\n }\n\n export class String implements InquiryField {\n readonly type: string = 'string';\n readonly value?: string;\n\n constructor(value?: string) {\n this.value = value;\n }\n }\n\n export class Boolean implements InquiryField {\n readonly type: string = 'boolean';\n readonly value?: boolean;\n\n constructor(value?: boolean) {\n this.value = value;\n }\n }\n\n export class Unknown implements InquiryField {\n readonly type: string;\n\n constructor(type: string) {\n this.type = type;\n }\n }\n\n export function parse({ type, value }: RawInquiryField): InquiryField | null {\n if (value == null) {\n return null;\n }\n switch (type) {\n case 'integer':\n return new InquiryField.Integer(Number.parseInt(value));\n case 'string':\n return new InquiryField.String(value);\n case 'boolean':\n return new InquiryField.Boolean(JSON.parse(value));\n case 'unknown':\n return new InquiryField.Unknown(value);\n default:\n return new InquiryField.Unknown(type);\n }\n }\n}\n\nexport type Fields = Record<string, InquiryField | null>;\n\nexport namespace Fields {\n export function builder(): Builder {\n return new Fields.Builder();\n }\n\n export class Builder {\n private _fields: Record<string, InquiryField>;\n\n constructor() {\n this._fields = {};\n }\n\n public integer(fieldKey: string, value?: number) {\n this._fields = {\n ...this._fields,\n [fieldKey]: new InquiryField.Integer(value),\n };\n\n return this;\n }\n\n public boolean(fieldKey: string, value?: boolean) {\n this._fields = {\n ...this._fields,\n [fieldKey]: new InquiryField.Boolean(value),\n };\n\n return this;\n }\n\n public string(fieldKey: string, value?: string) {\n this._fields = {\n ...this._fields,\n [fieldKey]: new InquiryField.String(value),\n };\n\n return this;\n }\n\n public build(): Fields {\n return this._fields;\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -21,10 +21,11 @@ exports.default = void 0;
21
21
  var _reactNative = require("react-native");
22
22
  var _util = require("./util");
23
23
  var _fields = require("./fields");
24
+ var _InquiryEvent = require("./InquiryEvent");
24
25
  var _versions = require("./versions");
25
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
26
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
27
- function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
26
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
27
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
28
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
28
29
  const {
29
30
  PersonaInquiry2
30
31
  } = _reactNative.NativeModules;
@@ -97,7 +98,7 @@ function makeAccountId(candidate) {
97
98
  * String enum for environments. These strings will be parsed
98
99
  * on the native side bridge into Kotlin / Swift enums.
99
100
  */
100
- let Environment = /*#__PURE__*/function (Environment) {
101
+ let Environment = exports.Environment = /*#__PURE__*/function (Environment) {
101
102
  Environment["SANDBOX"] = "sandbox";
102
103
  Environment["PRODUCTION"] = "production";
103
104
  return Environment;
@@ -105,9 +106,12 @@ let Environment = /*#__PURE__*/function (Environment) {
105
106
  /**
106
107
  * An enum value which determines whether this sdk should use the theme values sent from the server.
107
108
  */
108
- exports.Environment = Environment;
109
- let ThemeSource = /*#__PURE__*/function (ThemeSource) {
109
+ let ThemeSource = exports.ThemeSource = /*#__PURE__*/function (ThemeSource) {
110
110
  ThemeSource["SERVER"] = "server";
111
+ /**
112
+ * @deprecated Client side theming is deprecated, please configure your theme inside
113
+ * the Persona Dashboard and use SERVER as the theme source.
114
+ */
111
115
  ThemeSource["CLIENT"] = "client";
112
116
  return ThemeSource;
113
117
  }({});
@@ -115,7 +119,6 @@ let ThemeSource = /*#__PURE__*/function (ThemeSource) {
115
119
  * Type for collected data that came directly from iOS/Android.
116
120
  * Needs to be translated to TS classes before returning.
117
121
  */
118
- exports.ThemeSource = ThemeSource;
119
122
  class DocumentStepData {
120
123
  constructor() {
121
124
  _defineProperty(this, "stepName", void 0);
@@ -134,19 +137,17 @@ class GovernmentIdStepData {
134
137
  }
135
138
  }
136
139
  exports.GovernmentIdStepData = GovernmentIdStepData;
137
- let GovernmentIdCaptureMethod = /*#__PURE__*/function (GovernmentIdCaptureMethod) {
140
+ let GovernmentIdCaptureMethod = exports.GovernmentIdCaptureMethod = /*#__PURE__*/function (GovernmentIdCaptureMethod) {
138
141
  GovernmentIdCaptureMethod["Manual"] = "Manual";
139
142
  GovernmentIdCaptureMethod["Auto"] = "Auto";
140
143
  GovernmentIdCaptureMethod["Upload"] = "Upload";
141
144
  return GovernmentIdCaptureMethod;
142
145
  }({});
143
- exports.GovernmentIdCaptureMethod = GovernmentIdCaptureMethod;
144
- let GovernmentIdCaptureSide = /*#__PURE__*/function (GovernmentIdCaptureSide) {
146
+ let GovernmentIdCaptureSide = exports.GovernmentIdCaptureSide = /*#__PURE__*/function (GovernmentIdCaptureSide) {
145
147
  GovernmentIdCaptureSide["Front"] = "Front";
146
148
  GovernmentIdCaptureSide["Back"] = "Back";
147
149
  return GovernmentIdCaptureSide;
148
150
  }({});
149
- exports.GovernmentIdCaptureSide = GovernmentIdCaptureSide;
150
151
  class SelfieStepData {
151
152
  constructor() {
152
153
  _defineProperty(this, "stepName", void 0);
@@ -160,12 +161,11 @@ class SelfieStepData {
160
161
  }
161
162
  }
162
163
  exports.SelfieStepData = SelfieStepData;
163
- let SelfieCaptureMethod = /*#__PURE__*/function (SelfieCaptureMethod) {
164
+ let SelfieCaptureMethod = exports.SelfieCaptureMethod = /*#__PURE__*/function (SelfieCaptureMethod) {
164
165
  SelfieCaptureMethod["Manual"] = "Manual";
165
166
  SelfieCaptureMethod["Auto"] = "Auto";
166
167
  return SelfieCaptureMethod;
167
168
  }({});
168
- exports.SelfieCaptureMethod = SelfieCaptureMethod;
169
169
  class UiStepData {
170
170
  constructor() {
171
171
  _defineProperty(this, "stepName", void 0);
@@ -176,6 +176,7 @@ class UiStepData {
176
176
  }
177
177
  exports.UiStepData = UiStepData;
178
178
  const eventEmitter = new _reactNative.NativeEventEmitter(PersonaInquiry2);
179
+ let onEventListener = null;
179
180
  class Inquiry {
180
181
  constructor(options) {
181
182
  _defineProperty(this, "templateId", void 0);
@@ -267,6 +268,17 @@ class Inquiry {
267
268
  static fromInquiry(inquiryId) {
268
269
  return new InquiryBuilder(makeInquiryId(inquiryId));
269
270
  }
271
+ static onEvent(callback) {
272
+ if (onEventListener) {
273
+ onEventListener.remove();
274
+ }
275
+ onEventListener = eventEmitter.addListener('onEvent', rawEvent => {
276
+ let event = _InquiryEvent.InquiryEvent.fromJson(rawEvent.event);
277
+ if (event != null) {
278
+ callback(event);
279
+ }
280
+ });
281
+ }
270
282
 
271
283
  /**
272
284
  * Launch the Persona Inquiry.
@@ -557,6 +569,5 @@ let InquiryBuilders;
557
569
  }
558
570
  _InquiryBuilders.fromTemplateVersion = fromTemplateVersion;
559
571
  })(InquiryBuilders || (InquiryBuilders = {}));
560
- var _default = InquiryBuilders;
561
- exports.default = _default;
572
+ var _default = exports.default = InquiryBuilders;
562
573
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_util","_fields","_versions","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","PersonaInquiry2","NativeModules","InvalidTemplateId","Error","exports","InvalidTemplateVersion","InvalidInquiryId","InvalidAccountId","makeInquiryId","candidate","startsWith","makeTemplateId","makeTemplateVersion","makeAccountId","Environment","ThemeSource","DocumentStepData","constructor","stepName","documents","GovernmentIdStepData","captures","GovernmentIdCaptureMethod","GovernmentIdCaptureSide","SelfieStepData","centerCapture","leftCapture","rightCapture","SelfieCaptureMethod","UiStepData","componentParams","eventEmitter","NativeEventEmitter","Inquiry","options","templateId","templateVersion","inquiryId","referenceId","accountId","environment","environmentId","themeSetId","sessionToken","fields","returnCollectedData","locale","onComplete","onCanceled","onError","iosThemeObject","themeSource","clearListeners","onCompleteListener","remove","onCanceledListener","onErrorListener","fromTemplate","TemplateBuilder","fromTemplateVersion","fromInquiry","InquiryBuilder","start","addListener","event","_event$collectedData","keys","field","InquiryField","Unknown","type","Integer","parseInt","Boolean","collectedData","stepData","translatedStepData","stepDatum","push","assign","extraData","status","debugMessage","errorCode","startInquiry","iosTheme","processThemeValues","SERVER","_inquiryId","_sessionToken","callback","_onComplete","_onCanceled","_onError","themeObject","_iosThemeObject","_themeSource","CLIENT","iosThemeToUse","_locale","build","_templateId","_templateVersion","_returnCollectedData","_accountId","_referenceId","_environment","_environmentId","_themeSetId","InquiryBuilders","_InquiryBuilders","_default","default"],"sources":["index.ts"],"sourcesContent":["import {\n EventSubscription,\n NativeEventEmitter,\n NativeModules,\n} from 'react-native';\nimport { processThemeValues } from './util';\nimport { Fields, InquiryField, RawInquiryField } from './fields';\n\nexport { Fields };\n\nimport { Versions } from './versions';\n\nexport { Versions };\n\nconst { PersonaInquiry2 } = NativeModules;\n\n// Using Opaque types + Smart Constructor enforces validation at\n// instantiation time for IDS\ndeclare const Unique: unique symbol;\nexport type Opaque<T, Tag> = T & { [Unique]: Tag };\n\ntype TemplateId = Opaque<string, 'TemplateId'>;\ntype TemplateVersion = Opaque<string, 'TemplateVersion'>;\ntype InquiryId = Opaque<string, 'InquiryId'>;\ntype AccountId = Opaque<string, 'AccountId'>;\n\nexport class InvalidTemplateId extends Error {}\n\nexport class InvalidTemplateVersion extends Error {}\n\nexport class InvalidInquiryId extends Error {}\n\nexport class InvalidAccountId extends Error {}\n\n/**\n * Run validations that the string is in proper Inquiry token format\n * and do a type conversion to InquiryId.\n *\n * @param candidate\n */\nfunction makeInquiryId(candidate: string): InquiryId {\n if (candidate && candidate.startsWith('inq_')) {\n return candidate as InquiryId;\n }\n\n throw new InvalidInquiryId(\n `Valid template IDs start with \"inq_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template token format\n * and do a type conversion to TemplateId.\n *\n * @param candidate\n */\nfunction makeTemplateId(candidate: string): TemplateId {\n if (candidate && candidate.startsWith('itmpl_')) {\n return candidate as TemplateId;\n }\n\n throw new InvalidTemplateId(\n `Valid template IDs start with \"itmpl_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template Version token format\n * and do a type conversion to TemplateVersion.\n *\n * @param candidate\n */\nfunction makeTemplateVersion(candidate: string): TemplateVersion {\n if (candidate && candidate.startsWith('itmplv_')) {\n return candidate as TemplateVersion;\n }\n\n throw new InvalidTemplateVersion(\n `Valid template versions start with \"itmplv_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template token format\n * and do a type conversion to AccountId.\n *\n * @param candidate\n */\nfunction makeAccountId(candidate: string): AccountId {\n if (candidate && candidate.startsWith('act_')) {\n return candidate as AccountId;\n }\n\n throw new InvalidAccountId(\n `Valid account IDs start with \"act_\". Received: ${candidate} `\n );\n}\n\n/**\n * String enum for environments. These strings will be parsed\n * on the native side bridge into Kotlin / Swift enums.\n */\nexport enum Environment {\n SANDBOX = 'sandbox',\n PRODUCTION = 'production',\n}\n\n/**\n * An enum value which determines whether this sdk should use the theme values sent from the server.\n */\nexport enum ThemeSource {\n SERVER = 'server',\n /**\n * @deprecated Client side theming is deprecated, please configure your theme inside\n * the Persona Dashboard and use SERVER as the theme source.\n */\n CLIENT = 'client',\n}\n\nexport interface InquiryOptions {\n templateId?: TemplateId;\n templateVersion?: TemplateVersion;\n inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n environmentId?: string;\n themeSetId?: string;\n sessionToken?: string;\n returnCollectedData?: boolean;\n locale?: String;\n\n // Fields\n fields?: Fields;\n\n // Callbacks\n onComplete?: OnCompleteCallback;\n onCanceled?: OnCanceledCallback;\n onError?: OnErrorCallback;\n\n // Customization\n iosThemeObject?: Object | null;\n themeSource?: ThemeSource | null;\n}\n\ntype OnCompleteCallback = (\n inquiryId: string,\n status: string,\n fields: Fields,\n extraData: ExtraData\n) => void;\n\n/**\n * Type for collected data that came directly from iOS/Android.\n * Needs to be translated to TS classes before returning.\n */\ninterface ExternalCollectedData {\n stepData: any[];\n}\n\nexport interface ExtraData {\n collectedData: CollectedData | null;\n}\nexport interface CollectedData {\n stepData: StepData[];\n}\n\nexport interface StepData {\n stepName: string;\n}\n\nexport class DocumentStepData implements StepData {\n stepName: string;\n documents: Document[];\n\n constructor() {\n this.stepName = '';\n this.documents = [];\n }\n}\n\nexport interface Document {\n absoluteFilePath: string;\n}\n\nexport class GovernmentIdStepData implements StepData {\n stepName: string;\n captures: GovernmentIdCapture[];\n\n constructor() {\n this.stepName = '';\n this.captures = [];\n }\n}\n\nexport interface GovernmentIdCapture {\n idClass: string;\n captureMethod: GovernmentIdCaptureMethod;\n side: GovernmentIdCaptureSide;\n frames: GovernmentIdCaptureFrames[];\n}\n\nexport enum GovernmentIdCaptureMethod {\n Manual = 'Manual',\n Auto = 'Auto',\n Upload = 'Upload',\n}\n\nexport enum GovernmentIdCaptureSide {\n Front = 'Front',\n Back = 'Back',\n}\n\nexport interface GovernmentIdCaptureFrames {\n absoluteFilePath: string;\n}\n\nexport class SelfieStepData implements StepData {\n stepName: string;\n centerCapture: SelfieCapture | null;\n leftCapture: SelfieCapture | null;\n rightCapture: SelfieCapture | null;\n\n constructor() {\n this.stepName = '';\n this.centerCapture = null;\n this.leftCapture = null;\n this.rightCapture = null;\n }\n}\n\nexport interface SelfieCapture {\n captureMethod: SelfieCaptureMethod;\n absoluteFilePath: string;\n}\n\nexport enum SelfieCaptureMethod {\n Manual = 'Manual',\n Auto = 'Auto',\n}\n\nexport class UiStepData implements StepData {\n stepName: string;\n componentParams: { [key: string]: any };\n\n constructor() {\n this.stepName = '';\n this.componentParams = {};\n }\n}\n\ntype OnCanceledCallback = (inquiryId?: string, sessionToken?: string) => void;\n\ntype OnErrorCallback = (error: Error, errorCode?: string) => void;\n\nconst eventEmitter = new NativeEventEmitter(PersonaInquiry2);\n\nexport class Inquiry {\n templateId?: TemplateId;\n templateVersion?: TemplateVersion;\n inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n environmentId?: string;\n themeSetId?: string;\n sessionToken?: string;\n returnCollectedData?: boolean;\n locale?: String;\n\n iosThemeObject?: Object | null;\n themeSource?: ThemeSource | null;\n fields?: Fields | null;\n\n private readonly onComplete?: OnCompleteCallback;\n private readonly onCanceled?: OnCanceledCallback;\n private readonly onError?: OnErrorCallback;\n\n private onCompleteListener?: EventSubscription;\n private onCanceledListener?: EventSubscription;\n private onErrorListener?: EventSubscription;\n\n constructor(options: InquiryOptions) {\n this.templateId = options.templateId;\n this.templateVersion = options.templateVersion;\n this.inquiryId = options.inquiryId;\n this.referenceId = options.referenceId;\n this.accountId = options.accountId;\n this.environment = options.environment;\n this.environmentId = options.environmentId;\n this.themeSetId = options.themeSetId;\n this.sessionToken = options.sessionToken;\n this.fields = options.fields;\n this.returnCollectedData = options.returnCollectedData;\n this.locale = options.locale;\n\n // Callbacks\n this.onComplete = options.onComplete;\n this.onCanceled = options.onCanceled;\n this.onError = options.onError;\n\n // Theme object\n this.iosThemeObject = options.iosThemeObject;\n this.themeSource = options.themeSource;\n }\n\n private clearListeners() {\n if (this.onCompleteListener) this.onCompleteListener.remove();\n if (this.onCanceledListener) this.onCanceledListener.remove();\n if (this.onErrorListener) this.onErrorListener.remove();\n }\n\n /**\n * Create an Inquiry flow builder based on a template ID.\n *\n * You can find your template ID on the Dashboard under Inquiries > Templates.\n * {@link https://app.withpersona.com/dashboard/inquiry-templates}\n *\n * @param templateId template ID from your Persona Dashboard\n * @return builder for the Inquiry flow\n */\n static fromTemplate(templateId: string) {\n return new TemplateBuilder(makeTemplateId(templateId), null);\n }\n\n /**\n * Create an Inquiry flow builder based on a template ID version.\n *\n * You can find your template ID version on the Dashboard under the\n * settings view of a specific template.\n * {@link https://app.withpersona.com/dashboard/inquiry-templates}\n *\n * @param templateVersion template version from your Persona Dashboard\n * @return builder for the Inquiry flow\n */\n static fromTemplateVersion(templateVersion: string) {\n return new TemplateBuilder(null, makeTemplateVersion(templateVersion));\n }\n\n /**\n * Create an Inquiry flow builder based on an inquiry ID.\n *\n * You will need to generate the inquiry ID on the server. To try it out, you can create an\n * inquiry from the Persona Dashboard under \"Inquiries\". Click on the \"Create Inquiry\" button\n * and copy the inquiry ID from the URL.\n * {@link https://app.withpersona.com/dashboard/inquiries}\n *\n * @param inquiryId inquiry ID from your server\n * @return builder for the Inquiry flow\n */\n static fromInquiry(inquiryId: string) {\n return new InquiryBuilder(makeInquiryId(inquiryId));\n }\n\n /**\n * Launch the Persona Inquiry.\n */\n start() {\n this.onCompleteListener = eventEmitter.addListener(\n 'onComplete',\n (event: {\n inquiryId: string;\n status: string;\n fields: Record<string, RawInquiryField>;\n collectedData: ExternalCollectedData | null;\n }) => {\n if (this.onComplete) {\n let fields: Fields = {};\n for (let key of Object.keys(event.fields || {})) {\n let field = event.fields[key];\n if (field == undefined) {\n fields[key] = new InquiryField.Unknown('null');\n continue;\n }\n switch (field.type) {\n case 'integer':\n fields[key] = new InquiryField.Integer(\n Number.parseInt(field.value)\n );\n break;\n case 'boolean':\n fields[key] = new InquiryField.Boolean(field.value);\n break;\n case 'string':\n fields[key] = new InquiryField.String(field.value);\n break;\n default:\n fields[key] = new InquiryField.Unknown(field.type);\n break;\n }\n }\n\n let collectedData: CollectedData | null = null;\n\n let stepData = event.collectedData?.stepData;\n if (stepData != null) {\n // Translate the step data from JSON to actual class objects\n let translatedStepData = [];\n\n for (let stepDatum of stepData) {\n switch (stepDatum.type) {\n case 'DocumentStepData':\n translatedStepData.push(\n Object.assign(new DocumentStepData(), stepDatum)\n );\n break;\n case 'GovernmentIdStepData':\n translatedStepData.push(\n Object.assign(new GovernmentIdStepData(), stepDatum)\n );\n break;\n case 'SelfieStepData':\n translatedStepData.push(\n Object.assign(new SelfieStepData(), stepDatum)\n );\n break;\n case 'UiStepData':\n translatedStepData.push(\n Object.assign(new UiStepData(), stepDatum)\n );\n break;\n }\n }\n\n collectedData = {\n stepData: translatedStepData,\n };\n }\n\n let extraData: ExtraData = {\n collectedData: collectedData,\n };\n\n this.onComplete(event.inquiryId, event.status, fields, extraData);\n }\n this.clearListeners();\n }\n );\n\n this.onCanceledListener = eventEmitter.addListener(\n 'onCanceled',\n (event: { inquiryId?: string; sessionToken?: string }) => {\n if (this.onCanceled)\n this.onCanceled(event.inquiryId, event.sessionToken);\n this.clearListeners();\n }\n );\n\n this.onErrorListener = eventEmitter.addListener(\n 'onError',\n (event: { debugMessage: string; errorCode?: string }) => {\n if (this.onError)\n this.onError(new Error(event.debugMessage), event.errorCode);\n this.clearListeners();\n }\n );\n\n PersonaInquiry2.startInquiry({\n templateId: this.templateId,\n templateVersion: this.templateVersion,\n inquiryId: this.inquiryId,\n referenceId: this.referenceId,\n accountId: this.accountId,\n environment: this.environment,\n environmentId: this.environmentId,\n themeSetId: this.themeSetId,\n sessionToken: this.sessionToken,\n fields: this.fields,\n returnCollectedData: this.returnCollectedData,\n themeSource: this.themeSource,\n iosTheme: processThemeValues(this.iosThemeObject || {}),\n locale: this.locale,\n });\n }\n}\n\nclass InquiryBuilder {\n private _inquiryId: InquiryId;\n private _sessionToken?: string;\n\n // Callbacks\n private _onComplete?: OnCompleteCallback;\n private _onCanceled?: OnCanceledCallback;\n private _onError?: OnErrorCallback;\n private _iosThemeObject?: Object;\n private _themeSource: ThemeSource = ThemeSource.SERVER;\n private _fields?: Fields;\n private _locale?: string;\n\n constructor(inquiryId: InquiryId) {\n this._inquiryId = inquiryId;\n }\n\n sessionToken(sessionToken: string): InquiryBuilder {\n this._sessionToken = sessionToken;\n\n return this;\n }\n\n onComplete(callback: OnCompleteCallback): InquiryBuilder {\n this._onComplete = callback;\n\n return this;\n }\n\n onCanceled(callback: OnCanceledCallback): InquiryBuilder {\n this._onCanceled = callback;\n\n return this;\n }\n\n onError(callback: OnErrorCallback): InquiryBuilder {\n this._onError = callback;\n\n return this;\n }\n\n /**\n * @deprecated Use iosThemeToUse\n */\n iosTheme(themeObject: Object): InquiryBuilder {\n this._iosThemeObject = themeObject;\n this._themeSource = ThemeSource.CLIENT;\n\n return this;\n }\n\n iosThemeToUse(themeObject: Object, themeSource: ThemeSource): InquiryBuilder {\n this._iosThemeObject = themeObject;\n this._themeSource = themeSource;\n\n return this;\n }\n\n locale(locale: string): InquiryBuilder {\n this._locale = locale;\n\n return this;\n }\n\n build(): Inquiry {\n return new Inquiry({\n inquiryId: this._inquiryId,\n sessionToken: this._sessionToken,\n onComplete: this._onComplete,\n onCanceled: this._onCanceled,\n onError: this._onError,\n iosThemeObject: this._iosThemeObject,\n themeSource: this._themeSource,\n fields: this._fields,\n locale: this._locale,\n });\n }\n}\n\nclass TemplateBuilder {\n private readonly _templateId?: TemplateId;\n private readonly _templateVersion?: TemplateVersion;\n private _accountId?: AccountId;\n private _referenceId?: string;\n private _environment?: Environment;\n private _environmentId?: string;\n private _themeSetId?: string;\n private _fields?: Fields;\n private _sessionToken?: string;\n private _returnCollectedData?: boolean;\n private _locale?: string;\n\n // Callbacks\n private _onComplete?: OnCompleteCallback;\n private _onCanceled?: OnCanceledCallback;\n private _onError?: OnErrorCallback;\n\n // Customization\n private _iosThemeObject?: Object;\n private _themeSource: ThemeSource = ThemeSource.SERVER;\n\n constructor(\n templateId?: TemplateId | null,\n templateVersion?: TemplateVersion | null\n ) {\n if (templateId != null) {\n this._templateId = templateId;\n } else if (templateVersion != null) {\n this._templateVersion = templateVersion;\n } else {\n throw new InvalidTemplateId(\n `Either templateId or templateVersion needs to be set.`\n );\n }\n return this;\n }\n\n returnCollectedData(returnCollectedData: boolean) {\n this._returnCollectedData = returnCollectedData;\n\n return this;\n }\n\n referenceId(referenceId: string): TemplateBuilder {\n if (referenceId == null) {\n return this;\n }\n this._accountId = undefined;\n this._referenceId = referenceId;\n\n return this;\n }\n\n accountId(accountId: string): TemplateBuilder {\n if (accountId == null) {\n return this;\n }\n this._referenceId = undefined;\n this._accountId = makeAccountId(accountId);\n\n return this;\n }\n\n environment(environment: Environment): TemplateBuilder {\n this._environment = environment;\n\n return this;\n }\n\n environmentId(environmentId: string): TemplateBuilder {\n this._environmentId = environmentId;\n\n return this;\n }\n\n themeSetId(themeSetId: string): TemplateBuilder {\n this._themeSetId = themeSetId;\n\n return this;\n }\n\n sessionToken(sessionToken: string): TemplateBuilder {\n this._sessionToken = sessionToken;\n\n return this;\n }\n\n fields(fields: Fields): TemplateBuilder {\n this._fields = fields;\n\n return this;\n }\n\n locale(locale: string): TemplateBuilder {\n this._locale = locale;\n\n return this;\n }\n\n onComplete(callback: OnCompleteCallback): TemplateBuilder {\n this._onComplete = callback;\n\n return this;\n }\n\n onCanceled(callback: OnCanceledCallback): TemplateBuilder {\n this._onCanceled = callback;\n\n return this;\n }\n\n onError(callback: OnErrorCallback): TemplateBuilder {\n this._onError = callback;\n\n return this;\n }\n\n /**\n * @deprecated Use iosThemeToUse\n */\n iosTheme(themeObject: Object): TemplateBuilder {\n this._iosThemeObject = themeObject;\n this._themeSource = ThemeSource.CLIENT;\n\n return this;\n }\n\n iosThemeToUse(\n themeObject: Object,\n themeSource: ThemeSource\n ): TemplateBuilder {\n this._iosThemeObject = themeObject;\n this._themeSource = themeSource;\n\n return this;\n }\n\n build(): Inquiry {\n return new Inquiry({\n templateId: this._templateId,\n templateVersion: this._templateVersion,\n accountId: this._accountId,\n referenceId: this._referenceId,\n environment: this._environment,\n environmentId: this._environmentId,\n themeSetId: this._themeSetId,\n sessionToken: this._sessionToken,\n fields: this._fields,\n onComplete: this._onComplete,\n onCanceled: this._onCanceled,\n onError: this._onError,\n iosThemeObject: this._iosThemeObject,\n themeSource: this._themeSource,\n returnCollectedData: this._returnCollectedData,\n locale: this._locale,\n });\n }\n}\n\n/**\n * @deprecated Use the `Inquiry` static methods instead\n */\nnamespace InquiryBuilders {\n /**\n * @deprecated Use {@link Inquiry#fromInquiry} instead\n */\n export function fromInquiry(inquiryId: string) {\n return Inquiry.fromInquiry(inquiryId);\n }\n\n /**\n * @deprecated Use {@link Inquiry#fromTemplate} instead\n */\n export function fromTemplate(templateId: string) {\n return Inquiry.fromTemplate(templateId);\n }\n\n /**\n * @deprecated Use {@link Inquiry#fromTemplateVersion} instead\n */\n export function fromTemplateVersion(templateVersion: string) {\n return Inquiry.fromTemplateVersion(templateVersion);\n }\n}\n\nexport default InquiryBuilders;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_reactNative","require","_util","_fields","_InquiryEvent","_versions","_defineProperty","e","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","PersonaInquiry2","NativeModules","InvalidTemplateId","Error","exports","InvalidTemplateVersion","InvalidInquiryId","InvalidAccountId","makeInquiryId","candidate","startsWith","makeTemplateId","makeTemplateVersion","makeAccountId","Environment","ThemeSource","DocumentStepData","constructor","stepName","documents","GovernmentIdStepData","captures","GovernmentIdCaptureMethod","GovernmentIdCaptureSide","SelfieStepData","centerCapture","leftCapture","rightCapture","SelfieCaptureMethod","UiStepData","componentParams","eventEmitter","NativeEventEmitter","onEventListener","Inquiry","options","templateId","templateVersion","inquiryId","referenceId","accountId","environment","environmentId","themeSetId","sessionToken","fields","returnCollectedData","locale","onComplete","onCanceled","onError","iosThemeObject","themeSource","clearListeners","onCompleteListener","remove","onCanceledListener","onErrorListener","fromTemplate","TemplateBuilder","fromTemplateVersion","fromInquiry","InquiryBuilder","onEvent","callback","addListener","rawEvent","event","InquiryEvent","fromJson","start","_event$collectedData","key","keys","field","undefined","InquiryField","Unknown","type","Integer","parseInt","Boolean","collectedData","stepData","translatedStepData","stepDatum","push","assign","extraData","status","debugMessage","errorCode","startInquiry","iosTheme","processThemeValues","SERVER","_inquiryId","_sessionToken","_onComplete","_onCanceled","_onError","themeObject","_iosThemeObject","_themeSource","CLIENT","iosThemeToUse","_locale","build","_templateId","_templateVersion","_returnCollectedData","_accountId","_referenceId","_environment","_environmentId","_themeSetId","InquiryBuilders","_InquiryBuilders","_default","default"],"sources":["index.ts"],"sourcesContent":["import {\n EventSubscription,\n NativeEventEmitter,\n NativeModules,\n} from 'react-native';\nimport { processThemeValues } from './util';\nimport { Fields, InquiryField, RawInquiryField } from './fields';\nimport { InquiryEvent } from './InquiryEvent';\n\nexport { Fields };\n\nimport { Versions } from './versions';\n\nexport { Versions };\n\nconst { PersonaInquiry2 } = NativeModules;\n\n// Using Opaque types + Smart Constructor enforces validation at\n// instantiation time for IDS\ndeclare const Unique: unique symbol;\nexport type Opaque<T, Tag> = T & { [Unique]: Tag };\n\ntype TemplateId = Opaque<string, 'TemplateId'>;\ntype TemplateVersion = Opaque<string, 'TemplateVersion'>;\ntype InquiryId = Opaque<string, 'InquiryId'>;\ntype AccountId = Opaque<string, 'AccountId'>;\n\nexport class InvalidTemplateId extends Error {}\n\nexport class InvalidTemplateVersion extends Error {}\n\nexport class InvalidInquiryId extends Error {}\n\nexport class InvalidAccountId extends Error {}\n\n/**\n * Run validations that the string is in proper Inquiry token format\n * and do a type conversion to InquiryId.\n *\n * @param candidate\n */\nfunction makeInquiryId(candidate: string): InquiryId {\n if (candidate && candidate.startsWith('inq_')) {\n return candidate as InquiryId;\n }\n\n throw new InvalidInquiryId(\n `Valid template IDs start with \"inq_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template token format\n * and do a type conversion to TemplateId.\n *\n * @param candidate\n */\nfunction makeTemplateId(candidate: string): TemplateId {\n if (candidate && candidate.startsWith('itmpl_')) {\n return candidate as TemplateId;\n }\n\n throw new InvalidTemplateId(\n `Valid template IDs start with \"itmpl_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template Version token format\n * and do a type conversion to TemplateVersion.\n *\n * @param candidate\n */\nfunction makeTemplateVersion(candidate: string): TemplateVersion {\n if (candidate && candidate.startsWith('itmplv_')) {\n return candidate as TemplateVersion;\n }\n\n throw new InvalidTemplateVersion(\n `Valid template versions start with \"itmplv_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template token format\n * and do a type conversion to AccountId.\n *\n * @param candidate\n */\nfunction makeAccountId(candidate: string): AccountId {\n if (candidate && candidate.startsWith('act_')) {\n return candidate as AccountId;\n }\n\n throw new InvalidAccountId(\n `Valid account IDs start with \"act_\". Received: ${candidate} `\n );\n}\n\n/**\n * String enum for environments. These strings will be parsed\n * on the native side bridge into Kotlin / Swift enums.\n */\nexport enum Environment {\n SANDBOX = 'sandbox',\n PRODUCTION = 'production',\n}\n\n/**\n * An enum value which determines whether this sdk should use the theme values sent from the server.\n */\nexport enum ThemeSource {\n SERVER = 'server',\n /**\n * @deprecated Client side theming is deprecated, please configure your theme inside\n * the Persona Dashboard and use SERVER as the theme source.\n */\n CLIENT = 'client',\n}\n\nexport interface InquiryOptions {\n templateId?: TemplateId;\n templateVersion?: TemplateVersion;\n inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n environmentId?: string;\n themeSetId?: string;\n sessionToken?: string;\n returnCollectedData?: boolean;\n locale?: String;\n\n // Fields\n fields?: Fields;\n\n // Callbacks\n onComplete?: OnCompleteCallback;\n onCanceled?: OnCanceledCallback;\n onError?: OnErrorCallback;\n\n // Customization\n iosThemeObject?: Object | null;\n themeSource?: ThemeSource | null;\n}\n\ntype OnCompleteCallback = (\n inquiryId: string,\n status: string,\n fields: Fields,\n extraData: ExtraData\n) => void;\n\n/**\n * Type for collected data that came directly from iOS/Android.\n * Needs to be translated to TS classes before returning.\n */\ninterface ExternalCollectedData {\n stepData: any[];\n}\n\nexport interface ExtraData {\n collectedData: CollectedData | null;\n}\nexport interface CollectedData {\n stepData: StepData[];\n}\n\nexport interface StepData {\n stepName: string;\n}\n\nexport class DocumentStepData implements StepData {\n stepName: string;\n documents: Document[];\n\n constructor() {\n this.stepName = '';\n this.documents = [];\n }\n}\n\nexport interface Document {\n absoluteFilePath: string;\n}\n\nexport class GovernmentIdStepData implements StepData {\n stepName: string;\n captures: GovernmentIdCapture[];\n\n constructor() {\n this.stepName = '';\n this.captures = [];\n }\n}\n\nexport interface GovernmentIdCapture {\n idClass: string;\n captureMethod: GovernmentIdCaptureMethod;\n side: GovernmentIdCaptureSide;\n frames: GovernmentIdCaptureFrames[];\n}\n\nexport enum GovernmentIdCaptureMethod {\n Manual = 'Manual',\n Auto = 'Auto',\n Upload = 'Upload',\n}\n\nexport enum GovernmentIdCaptureSide {\n Front = 'Front',\n Back = 'Back',\n}\n\nexport interface GovernmentIdCaptureFrames {\n absoluteFilePath: string;\n}\n\nexport class SelfieStepData implements StepData {\n stepName: string;\n centerCapture: SelfieCapture | null;\n leftCapture: SelfieCapture | null;\n rightCapture: SelfieCapture | null;\n\n constructor() {\n this.stepName = '';\n this.centerCapture = null;\n this.leftCapture = null;\n this.rightCapture = null;\n }\n}\n\nexport interface SelfieCapture {\n captureMethod: SelfieCaptureMethod;\n absoluteFilePath: string;\n}\n\nexport enum SelfieCaptureMethod {\n Manual = 'Manual',\n Auto = 'Auto',\n}\n\nexport class UiStepData implements StepData {\n stepName: string;\n componentParams: { [key: string]: any };\n\n constructor() {\n this.stepName = '';\n this.componentParams = {};\n }\n}\n\ntype OnCanceledCallback = (inquiryId?: string, sessionToken?: string) => void;\n\ntype OnErrorCallback = (error: Error, errorCode?: string) => void;\n\ntype OnEventCallback = (event: InquiryEvent) => void;\n\nconst eventEmitter = new NativeEventEmitter(PersonaInquiry2);\n\nlet onEventListener: EventSubscription | null = null;\n\nexport class Inquiry {\n templateId?: TemplateId;\n templateVersion?: TemplateVersion;\n inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n environmentId?: string;\n themeSetId?: string;\n sessionToken?: string;\n returnCollectedData?: boolean;\n locale?: String;\n\n iosThemeObject?: Object | null;\n themeSource?: ThemeSource | null;\n fields?: Fields | null;\n\n private readonly onComplete?: OnCompleteCallback;\n private readonly onCanceled?: OnCanceledCallback;\n private readonly onError?: OnErrorCallback;\n\n private onCompleteListener?: EventSubscription;\n private onCanceledListener?: EventSubscription;\n private onErrorListener?: EventSubscription;\n\n constructor(options: InquiryOptions) {\n this.templateId = options.templateId;\n this.templateVersion = options.templateVersion;\n this.inquiryId = options.inquiryId;\n this.referenceId = options.referenceId;\n this.accountId = options.accountId;\n this.environment = options.environment;\n this.environmentId = options.environmentId;\n this.themeSetId = options.themeSetId;\n this.sessionToken = options.sessionToken;\n this.fields = options.fields;\n this.returnCollectedData = options.returnCollectedData;\n this.locale = options.locale;\n\n // Callbacks\n this.onComplete = options.onComplete;\n this.onCanceled = options.onCanceled;\n this.onError = options.onError;\n\n // Theme object\n this.iosThemeObject = options.iosThemeObject;\n this.themeSource = options.themeSource;\n }\n\n private clearListeners() {\n if (this.onCompleteListener) this.onCompleteListener.remove();\n if (this.onCanceledListener) this.onCanceledListener.remove();\n if (this.onErrorListener) this.onErrorListener.remove();\n }\n\n /**\n * Create an Inquiry flow builder based on a template ID.\n *\n * You can find your template ID on the Dashboard under Inquiries > Templates.\n * {@link https://app.withpersona.com/dashboard/inquiry-templates}\n *\n * @param templateId template ID from your Persona Dashboard\n * @return builder for the Inquiry flow\n */\n static fromTemplate(templateId: string) {\n return new TemplateBuilder(makeTemplateId(templateId), null);\n }\n\n /**\n * Create an Inquiry flow builder based on a template ID version.\n *\n * You can find your template ID version on the Dashboard under the\n * settings view of a specific template.\n * {@link https://app.withpersona.com/dashboard/inquiry-templates}\n *\n * @param templateVersion template version from your Persona Dashboard\n * @return builder for the Inquiry flow\n */\n static fromTemplateVersion(templateVersion: string) {\n return new TemplateBuilder(null, makeTemplateVersion(templateVersion));\n }\n\n /**\n * Create an Inquiry flow builder based on an inquiry ID.\n *\n * You will need to generate the inquiry ID on the server. To try it out, you can create an\n * inquiry from the Persona Dashboard under \"Inquiries\". Click on the \"Create Inquiry\" button\n * and copy the inquiry ID from the URL.\n * {@link https://app.withpersona.com/dashboard/inquiries}\n *\n * @param inquiryId inquiry ID from your server\n * @return builder for the Inquiry flow\n */\n static fromInquiry(inquiryId: string) {\n return new InquiryBuilder(makeInquiryId(inquiryId));\n }\n\n static onEvent(callback: OnEventCallback) {\n if (onEventListener) {\n onEventListener.remove();\n }\n\n onEventListener = eventEmitter.addListener(\n 'onEvent',\n (rawEvent: {\n event: {\n type: string;\n };\n }) => {\n let event = InquiryEvent.fromJson(rawEvent.event);\n\n if (event != null) {\n callback(event);\n }\n }\n );\n }\n\n /**\n * Launch the Persona Inquiry.\n */\n start() {\n this.onCompleteListener = eventEmitter.addListener(\n 'onComplete',\n (event: {\n inquiryId: string;\n status: string;\n fields: Record<string, RawInquiryField>;\n collectedData: ExternalCollectedData | null;\n }) => {\n if (this.onComplete) {\n let fields: Fields = {};\n for (let key of Object.keys(event.fields || {})) {\n let field = event.fields[key];\n if (field == undefined) {\n fields[key] = new InquiryField.Unknown('null');\n continue;\n }\n switch (field.type) {\n case 'integer':\n fields[key] = new InquiryField.Integer(\n Number.parseInt(field.value)\n );\n break;\n case 'boolean':\n fields[key] = new InquiryField.Boolean(field.value);\n break;\n case 'string':\n fields[key] = new InquiryField.String(field.value);\n break;\n default:\n fields[key] = new InquiryField.Unknown(field.type);\n break;\n }\n }\n\n let collectedData: CollectedData | null = null;\n\n let stepData = event.collectedData?.stepData;\n if (stepData != null) {\n // Translate the step data from JSON to actual class objects\n let translatedStepData = [];\n\n for (let stepDatum of stepData) {\n switch (stepDatum.type) {\n case 'DocumentStepData':\n translatedStepData.push(\n Object.assign(new DocumentStepData(), stepDatum)\n );\n break;\n case 'GovernmentIdStepData':\n translatedStepData.push(\n Object.assign(new GovernmentIdStepData(), stepDatum)\n );\n break;\n case 'SelfieStepData':\n translatedStepData.push(\n Object.assign(new SelfieStepData(), stepDatum)\n );\n break;\n case 'UiStepData':\n translatedStepData.push(\n Object.assign(new UiStepData(), stepDatum)\n );\n break;\n }\n }\n\n collectedData = {\n stepData: translatedStepData,\n };\n }\n\n let extraData: ExtraData = {\n collectedData: collectedData,\n };\n\n this.onComplete(event.inquiryId, event.status, fields, extraData);\n }\n this.clearListeners();\n }\n );\n\n this.onCanceledListener = eventEmitter.addListener(\n 'onCanceled',\n (event: { inquiryId?: string; sessionToken?: string }) => {\n if (this.onCanceled)\n this.onCanceled(event.inquiryId, event.sessionToken);\n this.clearListeners();\n }\n );\n\n this.onErrorListener = eventEmitter.addListener(\n 'onError',\n (event: { debugMessage: string; errorCode?: string }) => {\n if (this.onError)\n this.onError(new Error(event.debugMessage), event.errorCode);\n this.clearListeners();\n }\n );\n\n PersonaInquiry2.startInquiry({\n templateId: this.templateId,\n templateVersion: this.templateVersion,\n inquiryId: this.inquiryId,\n referenceId: this.referenceId,\n accountId: this.accountId,\n environment: this.environment,\n environmentId: this.environmentId,\n themeSetId: this.themeSetId,\n sessionToken: this.sessionToken,\n fields: this.fields,\n returnCollectedData: this.returnCollectedData,\n themeSource: this.themeSource,\n iosTheme: processThemeValues(this.iosThemeObject || {}),\n locale: this.locale,\n });\n }\n}\n\nclass InquiryBuilder {\n private _inquiryId: InquiryId;\n private _sessionToken?: string;\n\n // Callbacks\n private _onComplete?: OnCompleteCallback;\n private _onCanceled?: OnCanceledCallback;\n private _onError?: OnErrorCallback;\n private _iosThemeObject?: Object;\n private _themeSource: ThemeSource = ThemeSource.SERVER;\n private _fields?: Fields;\n private _locale?: string;\n\n constructor(inquiryId: InquiryId) {\n this._inquiryId = inquiryId;\n }\n\n sessionToken(sessionToken: string): InquiryBuilder {\n this._sessionToken = sessionToken;\n\n return this;\n }\n\n onComplete(callback: OnCompleteCallback): InquiryBuilder {\n this._onComplete = callback;\n\n return this;\n }\n\n onCanceled(callback: OnCanceledCallback): InquiryBuilder {\n this._onCanceled = callback;\n\n return this;\n }\n\n onError(callback: OnErrorCallback): InquiryBuilder {\n this._onError = callback;\n\n return this;\n }\n\n /**\n * @deprecated Use iosThemeToUse\n */\n iosTheme(themeObject: Object): InquiryBuilder {\n this._iosThemeObject = themeObject;\n this._themeSource = ThemeSource.CLIENT;\n\n return this;\n }\n\n iosThemeToUse(themeObject: Object, themeSource: ThemeSource): InquiryBuilder {\n this._iosThemeObject = themeObject;\n this._themeSource = themeSource;\n\n return this;\n }\n\n locale(locale: string): InquiryBuilder {\n this._locale = locale;\n\n return this;\n }\n\n build(): Inquiry {\n return new Inquiry({\n inquiryId: this._inquiryId,\n sessionToken: this._sessionToken,\n onComplete: this._onComplete,\n onCanceled: this._onCanceled,\n onError: this._onError,\n iosThemeObject: this._iosThemeObject,\n themeSource: this._themeSource,\n fields: this._fields,\n locale: this._locale,\n });\n }\n}\n\nclass TemplateBuilder {\n private readonly _templateId?: TemplateId;\n private readonly _templateVersion?: TemplateVersion;\n private _accountId?: AccountId;\n private _referenceId?: string;\n private _environment?: Environment;\n private _environmentId?: string;\n private _themeSetId?: string;\n private _fields?: Fields;\n private _sessionToken?: string;\n private _returnCollectedData?: boolean;\n private _locale?: string;\n\n // Callbacks\n private _onComplete?: OnCompleteCallback;\n private _onCanceled?: OnCanceledCallback;\n private _onError?: OnErrorCallback;\n\n // Customization\n private _iosThemeObject?: Object;\n private _themeSource: ThemeSource = ThemeSource.SERVER;\n\n constructor(\n templateId?: TemplateId | null,\n templateVersion?: TemplateVersion | null\n ) {\n if (templateId != null) {\n this._templateId = templateId;\n } else if (templateVersion != null) {\n this._templateVersion = templateVersion;\n } else {\n throw new InvalidTemplateId(\n `Either templateId or templateVersion needs to be set.`\n );\n }\n return this;\n }\n\n returnCollectedData(returnCollectedData: boolean) {\n this._returnCollectedData = returnCollectedData;\n\n return this;\n }\n\n referenceId(referenceId: string): TemplateBuilder {\n if (referenceId == null) {\n return this;\n }\n this._accountId = undefined;\n this._referenceId = referenceId;\n\n return this;\n }\n\n accountId(accountId: string): TemplateBuilder {\n if (accountId == null) {\n return this;\n }\n this._referenceId = undefined;\n this._accountId = makeAccountId(accountId);\n\n return this;\n }\n\n environment(environment: Environment): TemplateBuilder {\n this._environment = environment;\n\n return this;\n }\n\n environmentId(environmentId: string): TemplateBuilder {\n this._environmentId = environmentId;\n\n return this;\n }\n\n themeSetId(themeSetId: string): TemplateBuilder {\n this._themeSetId = themeSetId;\n\n return this;\n }\n\n sessionToken(sessionToken: string): TemplateBuilder {\n this._sessionToken = sessionToken;\n\n return this;\n }\n\n fields(fields: Fields): TemplateBuilder {\n this._fields = fields;\n\n return this;\n }\n\n locale(locale: string): TemplateBuilder {\n this._locale = locale;\n\n return this;\n }\n\n onComplete(callback: OnCompleteCallback): TemplateBuilder {\n this._onComplete = callback;\n\n return this;\n }\n\n onCanceled(callback: OnCanceledCallback): TemplateBuilder {\n this._onCanceled = callback;\n\n return this;\n }\n\n onError(callback: OnErrorCallback): TemplateBuilder {\n this._onError = callback;\n\n return this;\n }\n\n /**\n * @deprecated Use iosThemeToUse\n */\n iosTheme(themeObject: Object): TemplateBuilder {\n this._iosThemeObject = themeObject;\n this._themeSource = ThemeSource.CLIENT;\n\n return this;\n }\n\n iosThemeToUse(\n themeObject: Object,\n themeSource: ThemeSource\n ): TemplateBuilder {\n this._iosThemeObject = themeObject;\n this._themeSource = themeSource;\n\n return this;\n }\n\n build(): Inquiry {\n return new Inquiry({\n templateId: this._templateId,\n templateVersion: this._templateVersion,\n accountId: this._accountId,\n referenceId: this._referenceId,\n environment: this._environment,\n environmentId: this._environmentId,\n themeSetId: this._themeSetId,\n sessionToken: this._sessionToken,\n fields: this._fields,\n onComplete: this._onComplete,\n onCanceled: this._onCanceled,\n onError: this._onError,\n iosThemeObject: this._iosThemeObject,\n themeSource: this._themeSource,\n returnCollectedData: this._returnCollectedData,\n locale: this._locale,\n });\n }\n}\n\n/**\n * @deprecated Use the `Inquiry` static methods instead\n */\nnamespace InquiryBuilders {\n /**\n * @deprecated Use {@link Inquiry#fromInquiry} instead\n */\n export function fromInquiry(inquiryId: string) {\n return Inquiry.fromInquiry(inquiryId);\n }\n\n /**\n * @deprecated Use {@link Inquiry#fromTemplate} instead\n */\n export function fromTemplate(templateId: string) {\n return Inquiry.fromTemplate(templateId);\n }\n\n /**\n * @deprecated Use {@link Inquiry#fromTemplateVersion} instead\n */\n export function fromTemplateVersion(templateVersion: string) {\n return Inquiry.fromTemplateVersion(templateVersion);\n }\n}\n\nexport default InquiryBuilders;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAKA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AAIA,IAAAI,SAAA,GAAAJ,OAAA;AAAsC,SAAAK,gBAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAD,CAAA,GAAAI,MAAA,CAAAC,cAAA,CAAAL,CAAA,EAAAC,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAT,CAAA,CAAAC,CAAA,IAAAC,CAAA,EAAAF,CAAA;AAAA,SAAAG,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAF,CAAA,GAAAE,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAb,CAAA,QAAAU,CAAA,GAAAV,CAAA,CAAAc,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAItC,MAAM;EAAEgB;AAAgB,CAAC,GAAGC,0BAAa;;AAEzC;AACA;;AASO,MAAMC,iBAAiB,SAASC,KAAK,CAAC;AAAEC,OAAA,CAAAF,iBAAA,GAAAA,iBAAA;AAExC,MAAMG,sBAAsB,SAASF,KAAK,CAAC;AAAEC,OAAA,CAAAC,sBAAA,GAAAA,sBAAA;AAE7C,MAAMC,gBAAgB,SAASH,KAAK,CAAC;AAAEC,OAAA,CAAAE,gBAAA,GAAAA,gBAAA;AAEvC,MAAMC,gBAAgB,SAASJ,KAAK,CAAC;;AAE5C;AACA;AACA;AACA;AACA;AACA;AALAC,OAAA,CAAAG,gBAAA,GAAAA,gBAAA;AAMA,SAASC,aAAaA,CAACC,SAAiB,EAAa;EACnD,IAAIA,SAAS,IAAIA,SAAS,CAACC,UAAU,CAAC,MAAM,CAAC,EAAE;IAC7C,OAAOD,SAAS;EAClB;EAEA,MAAM,IAAIH,gBAAgB,CACxB,mDAAmDG,SAAS,GAC9D,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAASE,cAAcA,CAACF,SAAiB,EAAc;EACrD,IAAIA,SAAS,IAAIA,SAAS,CAACC,UAAU,CAAC,QAAQ,CAAC,EAAE;IAC/C,OAAOD,SAAS;EAClB;EAEA,MAAM,IAAIP,iBAAiB,CACzB,qDAAqDO,SAAS,GAChE,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAASG,mBAAmBA,CAACH,SAAiB,EAAmB;EAC/D,IAAIA,SAAS,IAAIA,SAAS,CAACC,UAAU,CAAC,SAAS,CAAC,EAAE;IAChD,OAAOD,SAAS;EAClB;EAEA,MAAM,IAAIJ,sBAAsB,CAC9B,2DAA2DI,SAAS,GACtE,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAASI,aAAaA,CAACJ,SAAiB,EAAa;EACnD,IAAIA,SAAS,IAAIA,SAAS,CAACC,UAAU,CAAC,MAAM,CAAC,EAAE;IAC7C,OAAOD,SAAS;EAClB;EAEA,MAAM,IAAIF,gBAAgB,CACxB,kDAAkDE,SAAS,GAC7D,CAAC;AACH;;AAEA;AACA;AACA;AACA;AAHA,IAIYK,WAAW,GAAAV,OAAA,CAAAU,WAAA,0BAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA;AAKvB;AACA;AACA;AAFA,IAGYC,WAAW,GAAAX,OAAA,CAAAW,WAAA,0BAAXA,WAAW;EAAXA,WAAW;EAErB;AACF;AACA;AACA;EALYA,WAAW;EAAA,OAAXA,WAAW;AAAA;AA0CvB;AACA;AACA;AACA;AAgBO,MAAMC,gBAAgB,CAAqB;EAIhDC,WAAWA,CAAA,EAAG;IAAApC,eAAA;IAAAA,eAAA;IACZ,IAAI,CAACqC,QAAQ,GAAG,EAAE;IAClB,IAAI,CAACC,SAAS,GAAG,EAAE;EACrB;AACF;AAACf,OAAA,CAAAY,gBAAA,GAAAA,gBAAA;AAMM,MAAMI,oBAAoB,CAAqB;EAIpDH,WAAWA,CAAA,EAAG;IAAApC,eAAA;IAAAA,eAAA;IACZ,IAAI,CAACqC,QAAQ,GAAG,EAAE;IAClB,IAAI,CAACG,QAAQ,GAAG,EAAE;EACpB;AACF;AAACjB,OAAA,CAAAgB,oBAAA,GAAAA,oBAAA;AAAA,IASWE,yBAAyB,GAAAlB,OAAA,CAAAkB,yBAAA,0BAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAA,OAAzBA,yBAAyB;AAAA;AAAA,IAMzBC,uBAAuB,GAAAnB,OAAA,CAAAmB,uBAAA,0BAAvBA,uBAAuB;EAAvBA,uBAAuB;EAAvBA,uBAAuB;EAAA,OAAvBA,uBAAuB;AAAA;AAS5B,MAAMC,cAAc,CAAqB;EAM9CP,WAAWA,CAAA,EAAG;IAAApC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IACZ,IAAI,CAACqC,QAAQ,GAAG,EAAE;IAClB,IAAI,CAACO,aAAa,GAAG,IAAI;IACzB,IAAI,CAACC,WAAW,GAAG,IAAI;IACvB,IAAI,CAACC,YAAY,GAAG,IAAI;EAC1B;AACF;AAACvB,OAAA,CAAAoB,cAAA,GAAAA,cAAA;AAAA,IAOWI,mBAAmB,GAAAxB,OAAA,CAAAwB,mBAAA,0BAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAA,OAAnBA,mBAAmB;AAAA;AAKxB,MAAMC,UAAU,CAAqB;EAI1CZ,WAAWA,CAAA,EAAG;IAAApC,eAAA;IAAAA,eAAA;IACZ,IAAI,CAACqC,QAAQ,GAAG,EAAE;IAClB,IAAI,CAACY,eAAe,GAAG,CAAC,CAAC;EAC3B;AACF;AAAC1B,OAAA,CAAAyB,UAAA,GAAAA,UAAA;AAQD,MAAME,YAAY,GAAG,IAAIC,+BAAkB,CAAChC,eAAe,CAAC;AAE5D,IAAIiC,eAAyC,GAAG,IAAI;AAE7C,MAAMC,OAAO,CAAC;EAyBnBjB,WAAWA,CAACkB,OAAuB,EAAE;IAAAtD,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IACnC,IAAI,CAACuD,UAAU,GAAGD,OAAO,CAACC,UAAU;IACpC,IAAI,CAACC,eAAe,GAAGF,OAAO,CAACE,eAAe;IAC9C,IAAI,CAACC,SAAS,GAAGH,OAAO,CAACG,SAAS;IAClC,IAAI,CAACC,WAAW,GAAGJ,OAAO,CAACI,WAAW;IACtC,IAAI,CAACC,SAAS,GAAGL,OAAO,CAACK,SAAS;IAClC,IAAI,CAACC,WAAW,GAAGN,OAAO,CAACM,WAAW;IACtC,IAAI,CAACC,aAAa,GAAGP,OAAO,CAACO,aAAa;IAC1C,IAAI,CAACC,UAAU,GAAGR,OAAO,CAACQ,UAAU;IACpC,IAAI,CAACC,YAAY,GAAGT,OAAO,CAACS,YAAY;IACxC,IAAI,CAACC,MAAM,GAAGV,OAAO,CAACU,MAAM;IAC5B,IAAI,CAACC,mBAAmB,GAAGX,OAAO,CAACW,mBAAmB;IACtD,IAAI,CAACC,MAAM,GAAGZ,OAAO,CAACY,MAAM;;IAE5B;IACA,IAAI,CAACC,UAAU,GAAGb,OAAO,CAACa,UAAU;IACpC,IAAI,CAACC,UAAU,GAAGd,OAAO,CAACc,UAAU;IACpC,IAAI,CAACC,OAAO,GAAGf,OAAO,CAACe,OAAO;;IAE9B;IACA,IAAI,CAACC,cAAc,GAAGhB,OAAO,CAACgB,cAAc;IAC5C,IAAI,CAACC,WAAW,GAAGjB,OAAO,CAACiB,WAAW;EACxC;EAEQC,cAAcA,CAAA,EAAG;IACvB,IAAI,IAAI,CAACC,kBAAkB,EAAE,IAAI,CAACA,kBAAkB,CAACC,MAAM,CAAC,CAAC;IAC7D,IAAI,IAAI,CAACC,kBAAkB,EAAE,IAAI,CAACA,kBAAkB,CAACD,MAAM,CAAC,CAAC;IAC7D,IAAI,IAAI,CAACE,eAAe,EAAE,IAAI,CAACA,eAAe,CAACF,MAAM,CAAC,CAAC;EACzD;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,OAAOG,YAAYA,CAACtB,UAAkB,EAAE;IACtC,OAAO,IAAIuB,eAAe,CAAChD,cAAc,CAACyB,UAAU,CAAC,EAAE,IAAI,CAAC;EAC9D;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,OAAOwB,mBAAmBA,CAACvB,eAAuB,EAAE;IAClD,OAAO,IAAIsB,eAAe,CAAC,IAAI,EAAE/C,mBAAmB,CAACyB,eAAe,CAAC,CAAC;EACxE;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,OAAOwB,WAAWA,CAACvB,SAAiB,EAAE;IACpC,OAAO,IAAIwB,cAAc,CAACtD,aAAa,CAAC8B,SAAS,CAAC,CAAC;EACrD;EAEA,OAAOyB,OAAOA,CAACC,QAAyB,EAAE;IACxC,IAAI/B,eAAe,EAAE;MACnBA,eAAe,CAACsB,MAAM,CAAC,CAAC;IAC1B;IAEAtB,eAAe,GAAGF,YAAY,CAACkC,WAAW,CACxC,SAAS,EACRC,QAIA,IAAK;MACJ,IAAIC,KAAK,GAAGC,0BAAY,CAACC,QAAQ,CAACH,QAAQ,CAACC,KAAK,CAAC;MAEjD,IAAIA,KAAK,IAAI,IAAI,EAAE;QACjBH,QAAQ,CAACG,KAAK,CAAC;MACjB;IACF,CACF,CAAC;EACH;;EAEA;AACF;AACA;EACEG,KAAKA,CAAA,EAAG;IACN,IAAI,CAAChB,kBAAkB,GAAGvB,YAAY,CAACkC,WAAW,CAChD,YAAY,EACXE,KAKA,IAAK;MACJ,IAAI,IAAI,CAACnB,UAAU,EAAE;QAAA,IAAAuB,oBAAA;QACnB,IAAI1B,MAAc,GAAG,CAAC,CAAC;QACvB,KAAK,IAAI2B,GAAG,IAAItF,MAAM,CAACuF,IAAI,CAACN,KAAK,CAACtB,MAAM,IAAI,CAAC,CAAC,CAAC,EAAE;UAC/C,IAAI6B,KAAK,GAAGP,KAAK,CAACtB,MAAM,CAAC2B,GAAG,CAAC;UAC7B,IAAIE,KAAK,IAAIC,SAAS,EAAE;YACtB9B,MAAM,CAAC2B,GAAG,CAAC,GAAG,IAAII,oBAAY,CAACC,OAAO,CAAC,MAAM,CAAC;YAC9C;UACF;UACA,QAAQH,KAAK,CAACI,IAAI;YAChB,KAAK,SAAS;cACZjC,MAAM,CAAC2B,GAAG,CAAC,GAAG,IAAII,oBAAY,CAACG,OAAO,CACpChF,MAAM,CAACiF,QAAQ,CAACN,KAAK,CAACtF,KAAK,CAC7B,CAAC;cACD;YACF,KAAK,SAAS;cACZyD,MAAM,CAAC2B,GAAG,CAAC,GAAG,IAAII,oBAAY,CAACK,OAAO,CAACP,KAAK,CAACtF,KAAK,CAAC;cACnD;YACF,KAAK,QAAQ;cACXyD,MAAM,CAAC2B,GAAG,CAAC,GAAG,IAAII,oBAAY,CAAC9E,MAAM,CAAC4E,KAAK,CAACtF,KAAK,CAAC;cAClD;YACF;cACEyD,MAAM,CAAC2B,GAAG,CAAC,GAAG,IAAII,oBAAY,CAACC,OAAO,CAACH,KAAK,CAACI,IAAI,CAAC;cAClD;UACJ;QACF;QAEA,IAAII,aAAmC,GAAG,IAAI;QAE9C,IAAIC,QAAQ,IAAAZ,oBAAA,GAAGJ,KAAK,CAACe,aAAa,cAAAX,oBAAA,uBAAnBA,oBAAA,CAAqBY,QAAQ;QAC5C,IAAIA,QAAQ,IAAI,IAAI,EAAE;UACpB;UACA,IAAIC,kBAAkB,GAAG,EAAE;UAE3B,KAAK,IAAIC,SAAS,IAAIF,QAAQ,EAAE;YAC9B,QAAQE,SAAS,CAACP,IAAI;cACpB,KAAK,kBAAkB;gBACrBM,kBAAkB,CAACE,IAAI,CACrBpG,MAAM,CAACqG,MAAM,CAAC,IAAIvE,gBAAgB,CAAC,CAAC,EAAEqE,SAAS,CACjD,CAAC;gBACD;cACF,KAAK,sBAAsB;gBACzBD,kBAAkB,CAACE,IAAI,CACrBpG,MAAM,CAACqG,MAAM,CAAC,IAAInE,oBAAoB,CAAC,CAAC,EAAEiE,SAAS,CACrD,CAAC;gBACD;cACF,KAAK,gBAAgB;gBACnBD,kBAAkB,CAACE,IAAI,CACrBpG,MAAM,CAACqG,MAAM,CAAC,IAAI/D,cAAc,CAAC,CAAC,EAAE6D,SAAS,CAC/C,CAAC;gBACD;cACF,KAAK,YAAY;gBACfD,kBAAkB,CAACE,IAAI,CACrBpG,MAAM,CAACqG,MAAM,CAAC,IAAI1D,UAAU,CAAC,CAAC,EAAEwD,SAAS,CAC3C,CAAC;gBACD;YACJ;UACF;UAEAH,aAAa,GAAG;YACdC,QAAQ,EAAEC;UACZ,CAAC;QACH;QAEA,IAAII,SAAoB,GAAG;UACzBN,aAAa,EAAEA;QACjB,CAAC;QAED,IAAI,CAAClC,UAAU,CAACmB,KAAK,CAAC7B,SAAS,EAAE6B,KAAK,CAACsB,MAAM,EAAE5C,MAAM,EAAE2C,SAAS,CAAC;MACnE;MACA,IAAI,CAACnC,cAAc,CAAC,CAAC;IACvB,CACF,CAAC;IAED,IAAI,CAACG,kBAAkB,GAAGzB,YAAY,CAACkC,WAAW,CAChD,YAAY,EACXE,KAAoD,IAAK;MACxD,IAAI,IAAI,CAAClB,UAAU,EACjB,IAAI,CAACA,UAAU,CAACkB,KAAK,CAAC7B,SAAS,EAAE6B,KAAK,CAACvB,YAAY,CAAC;MACtD,IAAI,CAACS,cAAc,CAAC,CAAC;IACvB,CACF,CAAC;IAED,IAAI,CAACI,eAAe,GAAG1B,YAAY,CAACkC,WAAW,CAC7C,SAAS,EACRE,KAAmD,IAAK;MACvD,IAAI,IAAI,CAACjB,OAAO,EACd,IAAI,CAACA,OAAO,CAAC,IAAI/C,KAAK,CAACgE,KAAK,CAACuB,YAAY,CAAC,EAAEvB,KAAK,CAACwB,SAAS,CAAC;MAC9D,IAAI,CAACtC,cAAc,CAAC,CAAC;IACvB,CACF,CAAC;IAEDrD,eAAe,CAAC4F,YAAY,CAAC;MAC3BxD,UAAU,EAAE,IAAI,CAACA,UAAU;MAC3BC,eAAe,EAAE,IAAI,CAACA,eAAe;MACrCC,SAAS,EAAE,IAAI,CAACA,SAAS;MACzBC,WAAW,EAAE,IAAI,CAACA,WAAW;MAC7BC,SAAS,EAAE,IAAI,CAACA,SAAS;MACzBC,WAAW,EAAE,IAAI,CAACA,WAAW;MAC7BC,aAAa,EAAE,IAAI,CAACA,aAAa;MACjCC,UAAU,EAAE,IAAI,CAACA,UAAU;MAC3BC,YAAY,EAAE,IAAI,CAACA,YAAY;MAC/BC,MAAM,EAAE,IAAI,CAACA,MAAM;MACnBC,mBAAmB,EAAE,IAAI,CAACA,mBAAmB;MAC7CM,WAAW,EAAE,IAAI,CAACA,WAAW;MAC7ByC,QAAQ,EAAE,IAAAC,wBAAkB,EAAC,IAAI,CAAC3C,cAAc,IAAI,CAAC,CAAC,CAAC;MACvDJ,MAAM,EAAE,IAAI,CAACA;IACf,CAAC,CAAC;EACJ;AACF;AAAC3C,OAAA,CAAA8B,OAAA,GAAAA,OAAA;AAED,MAAM4B,cAAc,CAAC;EAanB7C,WAAWA,CAACqB,SAAoB,EAAE;IAAAzD,eAAA;IAAAA,eAAA;IATlC;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,uBAKoCkC,WAAW,CAACgF,MAAM;IAAAlH,eAAA;IAAAA,eAAA;IAKpD,IAAI,CAACmH,UAAU,GAAG1D,SAAS;EAC7B;EAEAM,YAAYA,CAACA,YAAoB,EAAkB;IACjD,IAAI,CAACqD,aAAa,GAAGrD,YAAY;IAEjC,OAAO,IAAI;EACb;EAEAI,UAAUA,CAACgB,QAA4B,EAAkB;IACvD,IAAI,CAACkC,WAAW,GAAGlC,QAAQ;IAE3B,OAAO,IAAI;EACb;EAEAf,UAAUA,CAACe,QAA4B,EAAkB;IACvD,IAAI,CAACmC,WAAW,GAAGnC,QAAQ;IAE3B,OAAO,IAAI;EACb;EAEAd,OAAOA,CAACc,QAAyB,EAAkB;IACjD,IAAI,CAACoC,QAAQ,GAAGpC,QAAQ;IAExB,OAAO,IAAI;EACb;;EAEA;AACF;AACA;EACE6B,QAAQA,CAACQ,WAAmB,EAAkB;IAC5C,IAAI,CAACC,eAAe,GAAGD,WAAW;IAClC,IAAI,CAACE,YAAY,GAAGxF,WAAW,CAACyF,MAAM;IAEtC,OAAO,IAAI;EACb;EAEAC,aAAaA,CAACJ,WAAmB,EAAEjD,WAAwB,EAAkB;IAC3E,IAAI,CAACkD,eAAe,GAAGD,WAAW;IAClC,IAAI,CAACE,YAAY,GAAGnD,WAAW;IAE/B,OAAO,IAAI;EACb;EAEAL,MAAMA,CAACA,MAAc,EAAkB;IACrC,IAAI,CAAC2D,OAAO,GAAG3D,MAAM;IAErB,OAAO,IAAI;EACb;EAEA4D,KAAKA,CAAA,EAAY;IACf,OAAO,IAAIzE,OAAO,CAAC;MACjBI,SAAS,EAAE,IAAI,CAAC0D,UAAU;MAC1BpD,YAAY,EAAE,IAAI,CAACqD,aAAa;MAChCjD,UAAU,EAAE,IAAI,CAACkD,WAAW;MAC5BjD,UAAU,EAAE,IAAI,CAACkD,WAAW;MAC5BjD,OAAO,EAAE,IAAI,CAACkD,QAAQ;MACtBjD,cAAc,EAAE,IAAI,CAACmD,eAAe;MACpClD,WAAW,EAAE,IAAI,CAACmD,YAAY;MAC9B1D,MAAM,EAAE,IAAI,CAACnE,OAAO;MACpBqE,MAAM,EAAE,IAAI,CAAC2D;IACf,CAAC,CAAC;EACJ;AACF;AAEA,MAAM/C,eAAe,CAAC;EAsBpB1C,WAAWA,CACTmB,UAA8B,EAC9BC,eAAwC,EACxC;IAAAxD,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAZF;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAKA;IAAAA,eAAA;IAAAA,eAAA,uBAEoCkC,WAAW,CAACgF,MAAM;IAMpD,IAAI3D,UAAU,IAAI,IAAI,EAAE;MACtB,IAAI,CAACwE,WAAW,GAAGxE,UAAU;IAC/B,CAAC,MAAM,IAAIC,eAAe,IAAI,IAAI,EAAE;MAClC,IAAI,CAACwE,gBAAgB,GAAGxE,eAAe;IACzC,CAAC,MAAM;MACL,MAAM,IAAInC,iBAAiB,CACzB,uDACF,CAAC;IACH;IACA,OAAO,IAAI;EACb;EAEA4C,mBAAmBA,CAACA,mBAA4B,EAAE;IAChD,IAAI,CAACgE,oBAAoB,GAAGhE,mBAAmB;IAE/C,OAAO,IAAI;EACb;EAEAP,WAAWA,CAACA,WAAmB,EAAmB;IAChD,IAAIA,WAAW,IAAI,IAAI,EAAE;MACvB,OAAO,IAAI;IACb;IACA,IAAI,CAACwE,UAAU,GAAGpC,SAAS;IAC3B,IAAI,CAACqC,YAAY,GAAGzE,WAAW;IAE/B,OAAO,IAAI;EACb;EAEAC,SAASA,CAACA,SAAiB,EAAmB;IAC5C,IAAIA,SAAS,IAAI,IAAI,EAAE;MACrB,OAAO,IAAI;IACb;IACA,IAAI,CAACwE,YAAY,GAAGrC,SAAS;IAC7B,IAAI,CAACoC,UAAU,GAAGlG,aAAa,CAAC2B,SAAS,CAAC;IAE1C,OAAO,IAAI;EACb;EAEAC,WAAWA,CAACA,WAAwB,EAAmB;IACrD,IAAI,CAACwE,YAAY,GAAGxE,WAAW;IAE/B,OAAO,IAAI;EACb;EAEAC,aAAaA,CAACA,aAAqB,EAAmB;IACpD,IAAI,CAACwE,cAAc,GAAGxE,aAAa;IAEnC,OAAO,IAAI;EACb;EAEAC,UAAUA,CAACA,UAAkB,EAAmB;IAC9C,IAAI,CAACwE,WAAW,GAAGxE,UAAU;IAE7B,OAAO,IAAI;EACb;EAEAC,YAAYA,CAACA,YAAoB,EAAmB;IAClD,IAAI,CAACqD,aAAa,GAAGrD,YAAY;IAEjC,OAAO,IAAI;EACb;EAEAC,MAAMA,CAACA,MAAc,EAAmB;IACtC,IAAI,CAACnE,OAAO,GAAGmE,MAAM;IAErB,OAAO,IAAI;EACb;EAEAE,MAAMA,CAACA,MAAc,EAAmB;IACtC,IAAI,CAAC2D,OAAO,GAAG3D,MAAM;IAErB,OAAO,IAAI;EACb;EAEAC,UAAUA,CAACgB,QAA4B,EAAmB;IACxD,IAAI,CAACkC,WAAW,GAAGlC,QAAQ;IAE3B,OAAO,IAAI;EACb;EAEAf,UAAUA,CAACe,QAA4B,EAAmB;IACxD,IAAI,CAACmC,WAAW,GAAGnC,QAAQ;IAE3B,OAAO,IAAI;EACb;EAEAd,OAAOA,CAACc,QAAyB,EAAmB;IAClD,IAAI,CAACoC,QAAQ,GAAGpC,QAAQ;IAExB,OAAO,IAAI;EACb;;EAEA;AACF;AACA;EACE6B,QAAQA,CAACQ,WAAmB,EAAmB;IAC7C,IAAI,CAACC,eAAe,GAAGD,WAAW;IAClC,IAAI,CAACE,YAAY,GAAGxF,WAAW,CAACyF,MAAM;IAEtC,OAAO,IAAI;EACb;EAEAC,aAAaA,CACXJ,WAAmB,EACnBjD,WAAwB,EACP;IACjB,IAAI,CAACkD,eAAe,GAAGD,WAAW;IAClC,IAAI,CAACE,YAAY,GAAGnD,WAAW;IAE/B,OAAO,IAAI;EACb;EAEAuD,KAAKA,CAAA,EAAY;IACf,OAAO,IAAIzE,OAAO,CAAC;MACjBE,UAAU,EAAE,IAAI,CAACwE,WAAW;MAC5BvE,eAAe,EAAE,IAAI,CAACwE,gBAAgB;MACtCrE,SAAS,EAAE,IAAI,CAACuE,UAAU;MAC1BxE,WAAW,EAAE,IAAI,CAACyE,YAAY;MAC9BvE,WAAW,EAAE,IAAI,CAACwE,YAAY;MAC9BvE,aAAa,EAAE,IAAI,CAACwE,cAAc;MAClCvE,UAAU,EAAE,IAAI,CAACwE,WAAW;MAC5BvE,YAAY,EAAE,IAAI,CAACqD,aAAa;MAChCpD,MAAM,EAAE,IAAI,CAACnE,OAAO;MACpBsE,UAAU,EAAE,IAAI,CAACkD,WAAW;MAC5BjD,UAAU,EAAE,IAAI,CAACkD,WAAW;MAC5BjD,OAAO,EAAE,IAAI,CAACkD,QAAQ;MACtBjD,cAAc,EAAE,IAAI,CAACmD,eAAe;MACpClD,WAAW,EAAE,IAAI,CAACmD,YAAY;MAC9BzD,mBAAmB,EAAE,IAAI,CAACgE,oBAAoB;MAC9C/D,MAAM,EAAE,IAAI,CAAC2D;IACf,CAAC,CAAC;EACJ;AACF;;AAEA;AACA;AACA;AAFA,IAAAU,eAAA;AAAA,WAAAC,gBAAA;EAOS,SAASxD,WAAWA,CAACvB,SAAiB,EAAE;IAC7C,OAAOJ,OAAO,CAAC2B,WAAW,CAACvB,SAAS,CAAC;EACvC;EAAC+E,gBAAA,CAAAxD,WAAA,GAAAA,WAAA;EAKM,SAASH,YAAYA,CAACtB,UAAkB,EAAE;IAC/C,OAAOF,OAAO,CAACwB,YAAY,CAACtB,UAAU,CAAC;EACzC;EAACiF,gBAAA,CAAA3D,YAAA,GAAAA,YAAA;EAKM,SAASE,mBAAmBA,CAACvB,eAAuB,EAAE;IAC3D,OAAOH,OAAO,CAAC0B,mBAAmB,CAACvB,eAAe,CAAC;EACrD;EAACgF,gBAAA,CAAAzD,mBAAA,GAAAA,mBAAA;AAAA,GApBOwD,eAAe,KAAfA,eAAe;AAAA,IAAAE,QAAA,GAAAlH,OAAA,CAAAmH,OAAA,GAuBVH,eAAe","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["HEX_REGEX","processThemeValues","themeObject","result","key","value","Object","entries","includes","colorValue","slice","test","toString"],"sources":["util.ts"],"sourcesContent":["const HEX_REGEX = /^[a-fA-F0-9]{6}$/;\nexport function processThemeValues(themeObject: Object) {\n const result: { [key: string]: string } = {};\n for (const [key, value] of Object.entries(themeObject)) {\n if (value === null) {\n continue;\n }\n\n if (key.includes('Color')) {\n let colorValue = value;\n if (value[0] === '#') {\n colorValue = value.slice(1);\n }\n\n if (HEX_REGEX.test(colorValue)) {\n result[key] = `#${colorValue}`;\n } else {\n continue;\n }\n } else {\n result[key] = value.toString();\n }\n }\n\n return result;\n}\n"],"mappings":";;;;;;AAAA,MAAMA,SAAS,GAAG,kBAAkB;AAC7B,SAASC,kBAAkBA,CAACC,WAAmB,EAAE;EACtD,MAAMC,MAAiC,GAAG,CAAC,CAAC;EAC5C,KAAK,MAAM,CAACC,GAAG,EAAEC,KAAK,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACL,WAAW,CAAC,EAAE;IACtD,IAAIG,KAAK,KAAK,IAAI,EAAE;MAClB;IACF;IAEA,IAAID,GAAG,CAACI,QAAQ,CAAC,OAAO,CAAC,EAAE;MACzB,IAAIC,UAAU,GAAGJ,KAAK;MACtB,IAAIA,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;QACpBI,UAAU,GAAGJ,KAAK,CAACK,KAAK,CAAC,CAAC,CAAC;MAC7B;MAEA,IAAIV,SAAS,CAACW,IAAI,CAACF,UAAU,CAAC,EAAE;QAC9BN,MAAM,CAACC,GAAG,CAAC,GAAI,IAAGK,UAAW,EAAC;MAChC,CAAC,MAAM;QACL;MACF;IACF,CAAC,MAAM;MACLN,MAAM,CAACC,GAAG,CAAC,GAAGC,KAAK,CAACO,QAAQ,CAAC,CAAC;IAChC;EACF;EAEA,OAAOT,MAAM;AACf"}
1
+ {"version":3,"names":["HEX_REGEX","processThemeValues","themeObject","result","key","value","Object","entries","includes","colorValue","slice","test","toString"],"sources":["util.ts"],"sourcesContent":["const HEX_REGEX = /^[a-fA-F0-9]{6}$/;\nexport function processThemeValues(themeObject: Object) {\n const result: { [key: string]: string } = {};\n for (const [key, value] of Object.entries(themeObject)) {\n if (value === null) {\n continue;\n }\n\n if (key.includes('Color')) {\n let colorValue = value;\n if (value[0] === '#') {\n colorValue = value.slice(1);\n }\n\n if (HEX_REGEX.test(colorValue)) {\n result[key] = `#${colorValue}`;\n } else {\n continue;\n }\n } else {\n result[key] = value.toString();\n }\n }\n\n return result;\n}\n"],"mappings":";;;;;;AAAA,MAAMA,SAAS,GAAG,kBAAkB;AAC7B,SAASC,kBAAkBA,CAACC,WAAmB,EAAE;EACtD,MAAMC,MAAiC,GAAG,CAAC,CAAC;EAC5C,KAAK,MAAM,CAACC,GAAG,EAAEC,KAAK,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACL,WAAW,CAAC,EAAE;IACtD,IAAIG,KAAK,KAAK,IAAI,EAAE;MAClB;IACF;IAEA,IAAID,GAAG,CAACI,QAAQ,CAAC,OAAO,CAAC,EAAE;MACzB,IAAIC,UAAU,GAAGJ,KAAK;MACtB,IAAIA,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;QACpBI,UAAU,GAAGJ,KAAK,CAACK,KAAK,CAAC,CAAC,CAAC;MAC7B;MAEA,IAAIV,SAAS,CAACW,IAAI,CAACF,UAAU,CAAC,EAAE;QAC9BN,MAAM,CAACC,GAAG,CAAC,GAAG,IAAIK,UAAU,EAAE;MAChC,CAAC,MAAM;QACL;MACF;IACF,CAAC,MAAM;MACLN,MAAM,CAACC,GAAG,CAAC,GAAGC,KAAK,CAACO,QAAQ,CAAC,CAAC;IAChC;EACF;EAEA,OAAOT,MAAM;AACf","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","PersonaInquiry2","NativeModules","Versions","nativeSdkVersion","getConstants","INQUIRY_SDK_VERSION","exports"],"sources":["versions.ts"],"sourcesContent":["import { NativeModules } from 'react-native';\n\nconst { PersonaInquiry2 } = NativeModules;\n\nexport class Versions {\n /**\n * @return version of the underlying Android/iOS Inquiry SDK\n */\n static nativeSdkVersion(): String {\n return PersonaInquiry2.getConstants().INQUIRY_SDK_VERSION;\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,MAAM;EAAEC;AAAgB,CAAC,GAAGC,0BAAa;AAElC,MAAMC,QAAQ,CAAC;EACpB;AACF;AACA;EACE,OAAOC,gBAAgBA,CAAA,EAAW;IAChC,OAAOH,eAAe,CAACI,YAAY,CAAC,CAAC,CAACC,mBAAmB;EAC3D;AACF;AAACC,OAAA,CAAAJ,QAAA,GAAAA,QAAA"}
1
+ {"version":3,"names":["_reactNative","require","PersonaInquiry2","NativeModules","Versions","nativeSdkVersion","getConstants","INQUIRY_SDK_VERSION","exports"],"sources":["versions.ts"],"sourcesContent":["import { NativeModules } from 'react-native';\n\nconst { PersonaInquiry2 } = NativeModules;\n\nexport class Versions {\n /**\n * @return version of the underlying Android/iOS Inquiry SDK\n */\n static nativeSdkVersion(): String {\n return PersonaInquiry2.getConstants().INQUIRY_SDK_VERSION;\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,MAAM;EAAEC;AAAgB,CAAC,GAAGC,0BAAa;AAElC,MAAMC,QAAQ,CAAC;EACpB;AACF;AACA;EACE,OAAOC,gBAAgBA,CAAA,EAAW;IAChC,OAAOH,eAAe,CAACI,YAAY,CAAC,CAAC,CAACC,mBAAmB;EAC3D;AACF;AAACC,OAAA,CAAAJ,QAAA,GAAAA,QAAA","ignoreList":[]}
@@ -0,0 +1,44 @@
1
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
2
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
+ export let InquiryEvent;
5
+ (function (_InquiryEvent) {
6
+ class Start {
7
+ constructor(inquiryId, sessionToken) {
8
+ _defineProperty(this, "type", 'start');
9
+ _defineProperty(this, "inquiryId", void 0);
10
+ _defineProperty(this, "sessionToken", void 0);
11
+ this.inquiryId = inquiryId;
12
+ this.sessionToken = sessionToken;
13
+ }
14
+ }
15
+ _InquiryEvent.Start = Start;
16
+ class PageChange {
17
+ constructor(name, path) {
18
+ _defineProperty(this, "type", 'page_change');
19
+ _defineProperty(this, "name", void 0);
20
+ _defineProperty(this, "path", void 0);
21
+ this.name = name;
22
+ this.path = path;
23
+ }
24
+ }
25
+ _InquiryEvent.PageChange = PageChange;
26
+ const isStart = event => {
27
+ return event.type === 'start' && event.inquiryId !== undefined && event.sessionToken !== undefined;
28
+ };
29
+ const isPageChange = event => {
30
+ return event.type === 'page_change' && event.name !== undefined && event.path !== undefined;
31
+ };
32
+ const fromJson = _InquiryEvent.fromJson = eventJson => {
33
+ let event;
34
+ if (isStart(eventJson)) {
35
+ event = new Start(eventJson.inquiryId, eventJson.sessionToken);
36
+ } else if (isPageChange(eventJson)) {
37
+ event = new PageChange(eventJson.name, eventJson.path);
38
+ } else {
39
+ event = null;
40
+ }
41
+ return event;
42
+ };
43
+ })(InquiryEvent || (InquiryEvent = {}));
44
+ //# sourceMappingURL=InquiryEvent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["InquiryEvent","_InquiryEvent","Start","constructor","inquiryId","sessionToken","_defineProperty","PageChange","name","path","isStart","event","type","undefined","isPageChange","fromJson","eventJson"],"sources":["InquiryEvent.ts"],"sourcesContent":["export interface InquiryEvent {\n readonly type: string;\n}\n\nexport namespace InquiryEvent {\n /**\n * Triggered when an Inquiry session has been created in the client.\n *\n * Dynamic Flow Templates will send this event at the same time as 'ready', and it will not\n * indicate user interaction.\n */\n export class Start implements InquiryEvent {\n readonly type: string = 'start';\n readonly inquiryId: string;\n readonly sessionToken: string;\n\n constructor(inquiryId: string, sessionToken: string) {\n this.inquiryId = inquiryId;\n this.sessionToken = sessionToken;\n }\n }\n\n /**\n * The current page in the Inquiry flow changed. This is primarily used with the Inlined React\n * flow to dynamically resize the widget based on the contents of the current page.\n *\n * page-change events receive a metadata object containing the following fields:\n *\n * @param name name of the next step as configured in the Inquiry Template\n * @param path string representing the step type\n */\n export class PageChange implements InquiryEvent {\n readonly type: string = 'page_change';\n readonly name: string;\n readonly path: string;\n\n constructor(name: string, path: string) {\n this.name = name;\n this.path = path;\n }\n }\n\n const isStart = (event: any): event is Start => {\n return (\n event.type === 'start' &&\n event.inquiryId !== undefined &&\n event.sessionToken !== undefined\n );\n };\n\n const isPageChange = (event: any): event is PageChange => {\n return (\n event.type === 'page_change' &&\n event.name !== undefined &&\n event.path !== undefined\n );\n };\n\n export const fromJson = (eventJson: any): InquiryEvent | null => {\n let event: InquiryEvent | null;\n\n if (isStart(eventJson)) {\n event = new Start(eventJson.inquiryId, eventJson.sessionToken);\n } else if (isPageChange(eventJson)) {\n event = new PageChange(eventJson.name, eventJson.path);\n } else {\n event = null;\n }\n\n return event;\n };\n}\n"],"mappings":";;;WAIiBA,YAAY;AAAA,WAAAC,aAAA;EAOpB,MAAMC,KAAK,CAAyB;IAKzCC,WAAWA,CAACC,SAAiB,EAAEC,YAAoB,EAAE;MAAAC,eAAA,eAJ7B,OAAO;MAAAA,eAAA;MAAAA,eAAA;MAK7B,IAAI,CAACF,SAAS,GAAGA,SAAS;MAC1B,IAAI,CAACC,YAAY,GAAGA,YAAY;IAClC;EACF;EAACJ,aAAA,CAAAC,KAAA,GAAAA,KAAA;EAWM,MAAMK,UAAU,CAAyB;IAK9CJ,WAAWA,CAACK,IAAY,EAAEC,IAAY,EAAE;MAAAH,eAAA,eAJhB,aAAa;MAAAA,eAAA;MAAAA,eAAA;MAKnC,IAAI,CAACE,IAAI,GAAGA,IAAI;MAChB,IAAI,CAACC,IAAI,GAAGA,IAAI;IAClB;EACF;EAACR,aAAA,CAAAM,UAAA,GAAAA,UAAA;EAED,MAAMG,OAAO,GAAIC,KAAU,IAAqB;IAC9C,OACEA,KAAK,CAACC,IAAI,KAAK,OAAO,IACtBD,KAAK,CAACP,SAAS,KAAKS,SAAS,IAC7BF,KAAK,CAACN,YAAY,KAAKQ,SAAS;EAEpC,CAAC;EAED,MAAMC,YAAY,GAAIH,KAAU,IAA0B;IACxD,OACEA,KAAK,CAACC,IAAI,KAAK,aAAa,IAC5BD,KAAK,CAACH,IAAI,KAAKK,SAAS,IACxBF,KAAK,CAACF,IAAI,KAAKI,SAAS;EAE5B,CAAC;EAEM,MAAME,QAAQ,GAAAd,aAAA,CAAAc,QAAA,GAAIC,SAAc,IAA0B;IAC/D,IAAIL,KAA0B;IAE9B,IAAID,OAAO,CAACM,SAAS,CAAC,EAAE;MACtBL,KAAK,GAAG,IAAIT,KAAK,CAACc,SAAS,CAACZ,SAAS,EAAEY,SAAS,CAACX,YAAY,CAAC;IAChE,CAAC,MAAM,IAAIS,YAAY,CAACE,SAAS,CAAC,EAAE;MAClCL,KAAK,GAAG,IAAIJ,UAAU,CAACS,SAAS,CAACR,IAAI,EAAEQ,SAAS,CAACP,IAAI,CAAC;IACxD,CAAC,MAAM;MACLE,KAAK,GAAG,IAAI;IACd;IAEA,OAAOA,KAAK;EACd,CAAC;AAAC,GAlEaX,YAAY,KAAZA,YAAY","ignoreList":[]}
@@ -1,6 +1,6 @@
1
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3
- function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
1
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
2
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  export let InquiryField;
5
5
  (function (_InquiryField) {
6
6
  class Integer {
@@ -34,11 +34,10 @@ export let InquiryField;
34
34
  }
35
35
  }
36
36
  _InquiryField.Unknown = Unknown;
37
- function parse(_ref) {
38
- let {
39
- type,
40
- value
41
- } = _ref;
37
+ function parse({
38
+ type,
39
+ value
40
+ }) {
42
41
  if (value == null) {
43
42
  return null;
44
43
  }
@@ -1 +1 @@
1
- {"version":3,"names":["InquiryField","_InquiryField","Integer","constructor","value","_defineProperty","String","Boolean","Unknown","type","parse","_ref","Number","parseInt","JSON","Fields","_Fields","builder","Builder","_fields","integer","fieldKey","boolean","string","build"],"sources":["fields.ts"],"sourcesContent":["interface InquiryField {\n readonly type: string;\n}\n\nexport type RawInquiryField = {\n type: string;\n value?: any;\n};\n\nexport namespace InquiryField {\n export class Integer implements InquiryField {\n readonly type: string = 'integer';\n readonly value?: number;\n\n constructor(value?: number) {\n this.value = value;\n }\n }\n\n export class String implements InquiryField {\n readonly type: string = 'string';\n readonly value?: string;\n\n constructor(value?: string) {\n this.value = value;\n }\n }\n\n export class Boolean implements InquiryField {\n readonly type: string = 'boolean';\n readonly value?: boolean;\n\n constructor(value?: boolean) {\n this.value = value;\n }\n }\n\n export class Unknown implements InquiryField {\n readonly type: string;\n\n constructor(type: string) {\n this.type = type;\n }\n }\n\n export function parse({ type, value }: RawInquiryField): InquiryField | null {\n if (value == null) {\n return null;\n }\n switch (type) {\n case 'integer':\n return new InquiryField.Integer(Number.parseInt(value));\n case 'string':\n return new InquiryField.String(value);\n case 'boolean':\n return new InquiryField.Boolean(JSON.parse(value));\n case 'unknown':\n return new InquiryField.Unknown(value);\n default:\n return new InquiryField.Unknown(type);\n }\n }\n}\n\nexport type Fields = Record<string, InquiryField | null>;\n\nexport namespace Fields {\n export function builder(): Builder {\n return new Fields.Builder();\n }\n\n export class Builder {\n private _fields: Record<string, InquiryField>;\n\n constructor() {\n this._fields = {};\n }\n\n public integer(fieldKey: string, value?: number) {\n this._fields = {\n ...this._fields,\n [fieldKey]: new InquiryField.Integer(value),\n };\n\n return this;\n }\n\n public boolean(fieldKey: string, value?: boolean) {\n this._fields = {\n ...this._fields,\n [fieldKey]: new InquiryField.Boolean(value),\n };\n\n return this;\n }\n\n public string(fieldKey: string, value?: string) {\n this._fields = {\n ...this._fields,\n [fieldKey]: new InquiryField.String(value),\n };\n\n return this;\n }\n\n public build(): Fields {\n return this._fields;\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["InquiryField","_InquiryField","Integer","constructor","value","_defineProperty","String","Boolean","Unknown","type","parse","Number","parseInt","JSON","Fields","_Fields","builder","Builder","_fields","integer","fieldKey","boolean","string","build"],"sources":["fields.ts"],"sourcesContent":["interface InquiryField {\n readonly type: string;\n}\n\nexport type RawInquiryField = {\n type: string;\n value?: any;\n};\n\nexport namespace InquiryField {\n export class Integer implements InquiryField {\n readonly type: string = 'integer';\n readonly value?: number;\n\n constructor(value?: number) {\n this.value = value;\n }\n }\n\n export class String implements InquiryField {\n readonly type: string = 'string';\n readonly value?: string;\n\n constructor(value?: string) {\n this.value = value;\n }\n }\n\n export class Boolean implements InquiryField {\n readonly type: string = 'boolean';\n readonly value?: boolean;\n\n constructor(value?: boolean) {\n this.value = value;\n }\n }\n\n export class Unknown implements InquiryField {\n readonly type: string;\n\n constructor(type: string) {\n this.type = type;\n }\n }\n\n export function parse({ type, value }: RawInquiryField): InquiryField | null {\n if (value == null) {\n return null;\n }\n switch (type) {\n case 'integer':\n return new InquiryField.Integer(Number.parseInt(value));\n case 'string':\n return new InquiryField.String(value);\n case 'boolean':\n return new InquiryField.Boolean(JSON.parse(value));\n case 'unknown':\n return new InquiryField.Unknown(value);\n default:\n return new InquiryField.Unknown(type);\n }\n }\n}\n\nexport type Fields = Record<string, InquiryField | null>;\n\nexport namespace Fields {\n export function builder(): Builder {\n return new Fields.Builder();\n }\n\n export class Builder {\n private _fields: Record<string, InquiryField>;\n\n constructor() {\n this._fields = {};\n }\n\n public integer(fieldKey: string, value?: number) {\n this._fields = {\n ...this._fields,\n [fieldKey]: new InquiryField.Integer(value),\n };\n\n return this;\n }\n\n public boolean(fieldKey: string, value?: boolean) {\n this._fields = {\n ...this._fields,\n [fieldKey]: new InquiryField.Boolean(value),\n };\n\n return this;\n }\n\n public string(fieldKey: string, value?: string) {\n this._fields = {\n ...this._fields,\n [fieldKey]: new InquiryField.String(value),\n };\n\n return this;\n }\n\n public build(): Fields {\n return this._fields;\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,9 +1,10 @@
1
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3
- function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
1
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
2
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  import { NativeEventEmitter, NativeModules } from 'react-native';
5
5
  import { processThemeValues } from './util';
6
6
  import { Fields, InquiryField } from './fields';
7
+ import { InquiryEvent } from './InquiryEvent';
7
8
  export { Fields };
8
9
  import { Versions } from './versions';
9
10
  export { Versions };
@@ -86,6 +87,10 @@ export let Environment = /*#__PURE__*/function (Environment) {
86
87
  */
87
88
  export let ThemeSource = /*#__PURE__*/function (ThemeSource) {
88
89
  ThemeSource["SERVER"] = "server";
90
+ /**
91
+ * @deprecated Client side theming is deprecated, please configure your theme inside
92
+ * the Persona Dashboard and use SERVER as the theme source.
93
+ */
89
94
  ThemeSource["CLIENT"] = "client";
90
95
  return ThemeSource;
91
96
  }({});
@@ -148,6 +153,7 @@ export class UiStepData {
148
153
  }
149
154
  }
150
155
  const eventEmitter = new NativeEventEmitter(PersonaInquiry2);
156
+ let onEventListener = null;
151
157
  export class Inquiry {
152
158
  constructor(options) {
153
159
  _defineProperty(this, "templateId", void 0);
@@ -239,6 +245,17 @@ export class Inquiry {
239
245
  static fromInquiry(inquiryId) {
240
246
  return new InquiryBuilder(makeInquiryId(inquiryId));
241
247
  }
248
+ static onEvent(callback) {
249
+ if (onEventListener) {
250
+ onEventListener.remove();
251
+ }
252
+ onEventListener = eventEmitter.addListener('onEvent', rawEvent => {
253
+ let event = InquiryEvent.fromJson(rawEvent.event);
254
+ if (event != null) {
255
+ callback(event);
256
+ }
257
+ });
258
+ }
242
259
 
243
260
  /**
244
261
  * Launch the Persona Inquiry.
@@ -1 +1 @@
1
- {"version":3,"names":["NativeEventEmitter","NativeModules","processThemeValues","Fields","InquiryField","Versions","PersonaInquiry2","InvalidTemplateId","Error","InvalidTemplateVersion","InvalidInquiryId","InvalidAccountId","makeInquiryId","candidate","startsWith","makeTemplateId","makeTemplateVersion","makeAccountId","Environment","ThemeSource","DocumentStepData","constructor","_defineProperty","stepName","documents","GovernmentIdStepData","captures","GovernmentIdCaptureMethod","GovernmentIdCaptureSide","SelfieStepData","centerCapture","leftCapture","rightCapture","SelfieCaptureMethod","UiStepData","componentParams","eventEmitter","Inquiry","options","templateId","templateVersion","inquiryId","referenceId","accountId","environment","environmentId","themeSetId","sessionToken","fields","returnCollectedData","locale","onComplete","onCanceled","onError","iosThemeObject","themeSource","clearListeners","onCompleteListener","remove","onCanceledListener","onErrorListener","fromTemplate","TemplateBuilder","fromTemplateVersion","fromInquiry","InquiryBuilder","start","addListener","event","_event$collectedData","key","Object","keys","field","undefined","Unknown","type","Integer","Number","parseInt","value","Boolean","String","collectedData","stepData","translatedStepData","stepDatum","push","assign","extraData","status","debugMessage","errorCode","startInquiry","iosTheme","SERVER","_inquiryId","_sessionToken","callback","_onComplete","_onCanceled","_onError","themeObject","_iosThemeObject","_themeSource","CLIENT","iosThemeToUse","_locale","build","_fields","_templateId","_templateVersion","_returnCollectedData","_accountId","_referenceId","_environment","_environmentId","_themeSetId","InquiryBuilders","_InquiryBuilders"],"sources":["index.ts"],"sourcesContent":["import {\n EventSubscription,\n NativeEventEmitter,\n NativeModules,\n} from 'react-native';\nimport { processThemeValues } from './util';\nimport { Fields, InquiryField, RawInquiryField } from './fields';\n\nexport { Fields };\n\nimport { Versions } from './versions';\n\nexport { Versions };\n\nconst { PersonaInquiry2 } = NativeModules;\n\n// Using Opaque types + Smart Constructor enforces validation at\n// instantiation time for IDS\ndeclare const Unique: unique symbol;\nexport type Opaque<T, Tag> = T & { [Unique]: Tag };\n\ntype TemplateId = Opaque<string, 'TemplateId'>;\ntype TemplateVersion = Opaque<string, 'TemplateVersion'>;\ntype InquiryId = Opaque<string, 'InquiryId'>;\ntype AccountId = Opaque<string, 'AccountId'>;\n\nexport class InvalidTemplateId extends Error {}\n\nexport class InvalidTemplateVersion extends Error {}\n\nexport class InvalidInquiryId extends Error {}\n\nexport class InvalidAccountId extends Error {}\n\n/**\n * Run validations that the string is in proper Inquiry token format\n * and do a type conversion to InquiryId.\n *\n * @param candidate\n */\nfunction makeInquiryId(candidate: string): InquiryId {\n if (candidate && candidate.startsWith('inq_')) {\n return candidate as InquiryId;\n }\n\n throw new InvalidInquiryId(\n `Valid template IDs start with \"inq_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template token format\n * and do a type conversion to TemplateId.\n *\n * @param candidate\n */\nfunction makeTemplateId(candidate: string): TemplateId {\n if (candidate && candidate.startsWith('itmpl_')) {\n return candidate as TemplateId;\n }\n\n throw new InvalidTemplateId(\n `Valid template IDs start with \"itmpl_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template Version token format\n * and do a type conversion to TemplateVersion.\n *\n * @param candidate\n */\nfunction makeTemplateVersion(candidate: string): TemplateVersion {\n if (candidate && candidate.startsWith('itmplv_')) {\n return candidate as TemplateVersion;\n }\n\n throw new InvalidTemplateVersion(\n `Valid template versions start with \"itmplv_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template token format\n * and do a type conversion to AccountId.\n *\n * @param candidate\n */\nfunction makeAccountId(candidate: string): AccountId {\n if (candidate && candidate.startsWith('act_')) {\n return candidate as AccountId;\n }\n\n throw new InvalidAccountId(\n `Valid account IDs start with \"act_\". Received: ${candidate} `\n );\n}\n\n/**\n * String enum for environments. These strings will be parsed\n * on the native side bridge into Kotlin / Swift enums.\n */\nexport enum Environment {\n SANDBOX = 'sandbox',\n PRODUCTION = 'production',\n}\n\n/**\n * An enum value which determines whether this sdk should use the theme values sent from the server.\n */\nexport enum ThemeSource {\n SERVER = 'server',\n /**\n * @deprecated Client side theming is deprecated, please configure your theme inside\n * the Persona Dashboard and use SERVER as the theme source.\n */\n CLIENT = 'client',\n}\n\nexport interface InquiryOptions {\n templateId?: TemplateId;\n templateVersion?: TemplateVersion;\n inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n environmentId?: string;\n themeSetId?: string;\n sessionToken?: string;\n returnCollectedData?: boolean;\n locale?: String;\n\n // Fields\n fields?: Fields;\n\n // Callbacks\n onComplete?: OnCompleteCallback;\n onCanceled?: OnCanceledCallback;\n onError?: OnErrorCallback;\n\n // Customization\n iosThemeObject?: Object | null;\n themeSource?: ThemeSource | null;\n}\n\ntype OnCompleteCallback = (\n inquiryId: string,\n status: string,\n fields: Fields,\n extraData: ExtraData\n) => void;\n\n/**\n * Type for collected data that came directly from iOS/Android.\n * Needs to be translated to TS classes before returning.\n */\ninterface ExternalCollectedData {\n stepData: any[];\n}\n\nexport interface ExtraData {\n collectedData: CollectedData | null;\n}\nexport interface CollectedData {\n stepData: StepData[];\n}\n\nexport interface StepData {\n stepName: string;\n}\n\nexport class DocumentStepData implements StepData {\n stepName: string;\n documents: Document[];\n\n constructor() {\n this.stepName = '';\n this.documents = [];\n }\n}\n\nexport interface Document {\n absoluteFilePath: string;\n}\n\nexport class GovernmentIdStepData implements StepData {\n stepName: string;\n captures: GovernmentIdCapture[];\n\n constructor() {\n this.stepName = '';\n this.captures = [];\n }\n}\n\nexport interface GovernmentIdCapture {\n idClass: string;\n captureMethod: GovernmentIdCaptureMethod;\n side: GovernmentIdCaptureSide;\n frames: GovernmentIdCaptureFrames[];\n}\n\nexport enum GovernmentIdCaptureMethod {\n Manual = 'Manual',\n Auto = 'Auto',\n Upload = 'Upload',\n}\n\nexport enum GovernmentIdCaptureSide {\n Front = 'Front',\n Back = 'Back',\n}\n\nexport interface GovernmentIdCaptureFrames {\n absoluteFilePath: string;\n}\n\nexport class SelfieStepData implements StepData {\n stepName: string;\n centerCapture: SelfieCapture | null;\n leftCapture: SelfieCapture | null;\n rightCapture: SelfieCapture | null;\n\n constructor() {\n this.stepName = '';\n this.centerCapture = null;\n this.leftCapture = null;\n this.rightCapture = null;\n }\n}\n\nexport interface SelfieCapture {\n captureMethod: SelfieCaptureMethod;\n absoluteFilePath: string;\n}\n\nexport enum SelfieCaptureMethod {\n Manual = 'Manual',\n Auto = 'Auto',\n}\n\nexport class UiStepData implements StepData {\n stepName: string;\n componentParams: { [key: string]: any };\n\n constructor() {\n this.stepName = '';\n this.componentParams = {};\n }\n}\n\ntype OnCanceledCallback = (inquiryId?: string, sessionToken?: string) => void;\n\ntype OnErrorCallback = (error: Error, errorCode?: string) => void;\n\nconst eventEmitter = new NativeEventEmitter(PersonaInquiry2);\n\nexport class Inquiry {\n templateId?: TemplateId;\n templateVersion?: TemplateVersion;\n inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n environmentId?: string;\n themeSetId?: string;\n sessionToken?: string;\n returnCollectedData?: boolean;\n locale?: String;\n\n iosThemeObject?: Object | null;\n themeSource?: ThemeSource | null;\n fields?: Fields | null;\n\n private readonly onComplete?: OnCompleteCallback;\n private readonly onCanceled?: OnCanceledCallback;\n private readonly onError?: OnErrorCallback;\n\n private onCompleteListener?: EventSubscription;\n private onCanceledListener?: EventSubscription;\n private onErrorListener?: EventSubscription;\n\n constructor(options: InquiryOptions) {\n this.templateId = options.templateId;\n this.templateVersion = options.templateVersion;\n this.inquiryId = options.inquiryId;\n this.referenceId = options.referenceId;\n this.accountId = options.accountId;\n this.environment = options.environment;\n this.environmentId = options.environmentId;\n this.themeSetId = options.themeSetId;\n this.sessionToken = options.sessionToken;\n this.fields = options.fields;\n this.returnCollectedData = options.returnCollectedData;\n this.locale = options.locale;\n\n // Callbacks\n this.onComplete = options.onComplete;\n this.onCanceled = options.onCanceled;\n this.onError = options.onError;\n\n // Theme object\n this.iosThemeObject = options.iosThemeObject;\n this.themeSource = options.themeSource;\n }\n\n private clearListeners() {\n if (this.onCompleteListener) this.onCompleteListener.remove();\n if (this.onCanceledListener) this.onCanceledListener.remove();\n if (this.onErrorListener) this.onErrorListener.remove();\n }\n\n /**\n * Create an Inquiry flow builder based on a template ID.\n *\n * You can find your template ID on the Dashboard under Inquiries > Templates.\n * {@link https://app.withpersona.com/dashboard/inquiry-templates}\n *\n * @param templateId template ID from your Persona Dashboard\n * @return builder for the Inquiry flow\n */\n static fromTemplate(templateId: string) {\n return new TemplateBuilder(makeTemplateId(templateId), null);\n }\n\n /**\n * Create an Inquiry flow builder based on a template ID version.\n *\n * You can find your template ID version on the Dashboard under the\n * settings view of a specific template.\n * {@link https://app.withpersona.com/dashboard/inquiry-templates}\n *\n * @param templateVersion template version from your Persona Dashboard\n * @return builder for the Inquiry flow\n */\n static fromTemplateVersion(templateVersion: string) {\n return new TemplateBuilder(null, makeTemplateVersion(templateVersion));\n }\n\n /**\n * Create an Inquiry flow builder based on an inquiry ID.\n *\n * You will need to generate the inquiry ID on the server. To try it out, you can create an\n * inquiry from the Persona Dashboard under \"Inquiries\". Click on the \"Create Inquiry\" button\n * and copy the inquiry ID from the URL.\n * {@link https://app.withpersona.com/dashboard/inquiries}\n *\n * @param inquiryId inquiry ID from your server\n * @return builder for the Inquiry flow\n */\n static fromInquiry(inquiryId: string) {\n return new InquiryBuilder(makeInquiryId(inquiryId));\n }\n\n /**\n * Launch the Persona Inquiry.\n */\n start() {\n this.onCompleteListener = eventEmitter.addListener(\n 'onComplete',\n (event: {\n inquiryId: string;\n status: string;\n fields: Record<string, RawInquiryField>;\n collectedData: ExternalCollectedData | null;\n }) => {\n if (this.onComplete) {\n let fields: Fields = {};\n for (let key of Object.keys(event.fields || {})) {\n let field = event.fields[key];\n if (field == undefined) {\n fields[key] = new InquiryField.Unknown('null');\n continue;\n }\n switch (field.type) {\n case 'integer':\n fields[key] = new InquiryField.Integer(\n Number.parseInt(field.value)\n );\n break;\n case 'boolean':\n fields[key] = new InquiryField.Boolean(field.value);\n break;\n case 'string':\n fields[key] = new InquiryField.String(field.value);\n break;\n default:\n fields[key] = new InquiryField.Unknown(field.type);\n break;\n }\n }\n\n let collectedData: CollectedData | null = null;\n\n let stepData = event.collectedData?.stepData;\n if (stepData != null) {\n // Translate the step data from JSON to actual class objects\n let translatedStepData = [];\n\n for (let stepDatum of stepData) {\n switch (stepDatum.type) {\n case 'DocumentStepData':\n translatedStepData.push(\n Object.assign(new DocumentStepData(), stepDatum)\n );\n break;\n case 'GovernmentIdStepData':\n translatedStepData.push(\n Object.assign(new GovernmentIdStepData(), stepDatum)\n );\n break;\n case 'SelfieStepData':\n translatedStepData.push(\n Object.assign(new SelfieStepData(), stepDatum)\n );\n break;\n case 'UiStepData':\n translatedStepData.push(\n Object.assign(new UiStepData(), stepDatum)\n );\n break;\n }\n }\n\n collectedData = {\n stepData: translatedStepData,\n };\n }\n\n let extraData: ExtraData = {\n collectedData: collectedData,\n };\n\n this.onComplete(event.inquiryId, event.status, fields, extraData);\n }\n this.clearListeners();\n }\n );\n\n this.onCanceledListener = eventEmitter.addListener(\n 'onCanceled',\n (event: { inquiryId?: string; sessionToken?: string }) => {\n if (this.onCanceled)\n this.onCanceled(event.inquiryId, event.sessionToken);\n this.clearListeners();\n }\n );\n\n this.onErrorListener = eventEmitter.addListener(\n 'onError',\n (event: { debugMessage: string; errorCode?: string }) => {\n if (this.onError)\n this.onError(new Error(event.debugMessage), event.errorCode);\n this.clearListeners();\n }\n );\n\n PersonaInquiry2.startInquiry({\n templateId: this.templateId,\n templateVersion: this.templateVersion,\n inquiryId: this.inquiryId,\n referenceId: this.referenceId,\n accountId: this.accountId,\n environment: this.environment,\n environmentId: this.environmentId,\n themeSetId: this.themeSetId,\n sessionToken: this.sessionToken,\n fields: this.fields,\n returnCollectedData: this.returnCollectedData,\n themeSource: this.themeSource,\n iosTheme: processThemeValues(this.iosThemeObject || {}),\n locale: this.locale,\n });\n }\n}\n\nclass InquiryBuilder {\n private _inquiryId: InquiryId;\n private _sessionToken?: string;\n\n // Callbacks\n private _onComplete?: OnCompleteCallback;\n private _onCanceled?: OnCanceledCallback;\n private _onError?: OnErrorCallback;\n private _iosThemeObject?: Object;\n private _themeSource: ThemeSource = ThemeSource.SERVER;\n private _fields?: Fields;\n private _locale?: string;\n\n constructor(inquiryId: InquiryId) {\n this._inquiryId = inquiryId;\n }\n\n sessionToken(sessionToken: string): InquiryBuilder {\n this._sessionToken = sessionToken;\n\n return this;\n }\n\n onComplete(callback: OnCompleteCallback): InquiryBuilder {\n this._onComplete = callback;\n\n return this;\n }\n\n onCanceled(callback: OnCanceledCallback): InquiryBuilder {\n this._onCanceled = callback;\n\n return this;\n }\n\n onError(callback: OnErrorCallback): InquiryBuilder {\n this._onError = callback;\n\n return this;\n }\n\n /**\n * @deprecated Use iosThemeToUse\n */\n iosTheme(themeObject: Object): InquiryBuilder {\n this._iosThemeObject = themeObject;\n this._themeSource = ThemeSource.CLIENT;\n\n return this;\n }\n\n iosThemeToUse(themeObject: Object, themeSource: ThemeSource): InquiryBuilder {\n this._iosThemeObject = themeObject;\n this._themeSource = themeSource;\n\n return this;\n }\n\n locale(locale: string): InquiryBuilder {\n this._locale = locale;\n\n return this;\n }\n\n build(): Inquiry {\n return new Inquiry({\n inquiryId: this._inquiryId,\n sessionToken: this._sessionToken,\n onComplete: this._onComplete,\n onCanceled: this._onCanceled,\n onError: this._onError,\n iosThemeObject: this._iosThemeObject,\n themeSource: this._themeSource,\n fields: this._fields,\n locale: this._locale,\n });\n }\n}\n\nclass TemplateBuilder {\n private readonly _templateId?: TemplateId;\n private readonly _templateVersion?: TemplateVersion;\n private _accountId?: AccountId;\n private _referenceId?: string;\n private _environment?: Environment;\n private _environmentId?: string;\n private _themeSetId?: string;\n private _fields?: Fields;\n private _sessionToken?: string;\n private _returnCollectedData?: boolean;\n private _locale?: string;\n\n // Callbacks\n private _onComplete?: OnCompleteCallback;\n private _onCanceled?: OnCanceledCallback;\n private _onError?: OnErrorCallback;\n\n // Customization\n private _iosThemeObject?: Object;\n private _themeSource: ThemeSource = ThemeSource.SERVER;\n\n constructor(\n templateId?: TemplateId | null,\n templateVersion?: TemplateVersion | null\n ) {\n if (templateId != null) {\n this._templateId = templateId;\n } else if (templateVersion != null) {\n this._templateVersion = templateVersion;\n } else {\n throw new InvalidTemplateId(\n `Either templateId or templateVersion needs to be set.`\n );\n }\n return this;\n }\n\n returnCollectedData(returnCollectedData: boolean) {\n this._returnCollectedData = returnCollectedData;\n\n return this;\n }\n\n referenceId(referenceId: string): TemplateBuilder {\n if (referenceId == null) {\n return this;\n }\n this._accountId = undefined;\n this._referenceId = referenceId;\n\n return this;\n }\n\n accountId(accountId: string): TemplateBuilder {\n if (accountId == null) {\n return this;\n }\n this._referenceId = undefined;\n this._accountId = makeAccountId(accountId);\n\n return this;\n }\n\n environment(environment: Environment): TemplateBuilder {\n this._environment = environment;\n\n return this;\n }\n\n environmentId(environmentId: string): TemplateBuilder {\n this._environmentId = environmentId;\n\n return this;\n }\n\n themeSetId(themeSetId: string): TemplateBuilder {\n this._themeSetId = themeSetId;\n\n return this;\n }\n\n sessionToken(sessionToken: string): TemplateBuilder {\n this._sessionToken = sessionToken;\n\n return this;\n }\n\n fields(fields: Fields): TemplateBuilder {\n this._fields = fields;\n\n return this;\n }\n\n locale(locale: string): TemplateBuilder {\n this._locale = locale;\n\n return this;\n }\n\n onComplete(callback: OnCompleteCallback): TemplateBuilder {\n this._onComplete = callback;\n\n return this;\n }\n\n onCanceled(callback: OnCanceledCallback): TemplateBuilder {\n this._onCanceled = callback;\n\n return this;\n }\n\n onError(callback: OnErrorCallback): TemplateBuilder {\n this._onError = callback;\n\n return this;\n }\n\n /**\n * @deprecated Use iosThemeToUse\n */\n iosTheme(themeObject: Object): TemplateBuilder {\n this._iosThemeObject = themeObject;\n this._themeSource = ThemeSource.CLIENT;\n\n return this;\n }\n\n iosThemeToUse(\n themeObject: Object,\n themeSource: ThemeSource\n ): TemplateBuilder {\n this._iosThemeObject = themeObject;\n this._themeSource = themeSource;\n\n return this;\n }\n\n build(): Inquiry {\n return new Inquiry({\n templateId: this._templateId,\n templateVersion: this._templateVersion,\n accountId: this._accountId,\n referenceId: this._referenceId,\n environment: this._environment,\n environmentId: this._environmentId,\n themeSetId: this._themeSetId,\n sessionToken: this._sessionToken,\n fields: this._fields,\n onComplete: this._onComplete,\n onCanceled: this._onCanceled,\n onError: this._onError,\n iosThemeObject: this._iosThemeObject,\n themeSource: this._themeSource,\n returnCollectedData: this._returnCollectedData,\n locale: this._locale,\n });\n }\n}\n\n/**\n * @deprecated Use the `Inquiry` static methods instead\n */\nnamespace InquiryBuilders {\n /**\n * @deprecated Use {@link Inquiry#fromInquiry} instead\n */\n export function fromInquiry(inquiryId: string) {\n return Inquiry.fromInquiry(inquiryId);\n }\n\n /**\n * @deprecated Use {@link Inquiry#fromTemplate} instead\n */\n export function fromTemplate(templateId: string) {\n return Inquiry.fromTemplate(templateId);\n }\n\n /**\n * @deprecated Use {@link Inquiry#fromTemplateVersion} instead\n */\n export function fromTemplateVersion(templateVersion: string) {\n return Inquiry.fromTemplateVersion(templateVersion);\n }\n}\n\nexport default InquiryBuilders;\n"],"mappings":"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"}
1
+ {"version":3,"names":["NativeEventEmitter","NativeModules","processThemeValues","Fields","InquiryField","InquiryEvent","Versions","PersonaInquiry2","InvalidTemplateId","Error","InvalidTemplateVersion","InvalidInquiryId","InvalidAccountId","makeInquiryId","candidate","startsWith","makeTemplateId","makeTemplateVersion","makeAccountId","Environment","ThemeSource","DocumentStepData","constructor","_defineProperty","stepName","documents","GovernmentIdStepData","captures","GovernmentIdCaptureMethod","GovernmentIdCaptureSide","SelfieStepData","centerCapture","leftCapture","rightCapture","SelfieCaptureMethod","UiStepData","componentParams","eventEmitter","onEventListener","Inquiry","options","templateId","templateVersion","inquiryId","referenceId","accountId","environment","environmentId","themeSetId","sessionToken","fields","returnCollectedData","locale","onComplete","onCanceled","onError","iosThemeObject","themeSource","clearListeners","onCompleteListener","remove","onCanceledListener","onErrorListener","fromTemplate","TemplateBuilder","fromTemplateVersion","fromInquiry","InquiryBuilder","onEvent","callback","addListener","rawEvent","event","fromJson","start","_event$collectedData","key","Object","keys","field","undefined","Unknown","type","Integer","Number","parseInt","value","Boolean","String","collectedData","stepData","translatedStepData","stepDatum","push","assign","extraData","status","debugMessage","errorCode","startInquiry","iosTheme","SERVER","_inquiryId","_sessionToken","_onComplete","_onCanceled","_onError","themeObject","_iosThemeObject","_themeSource","CLIENT","iosThemeToUse","_locale","build","_fields","_templateId","_templateVersion","_returnCollectedData","_accountId","_referenceId","_environment","_environmentId","_themeSetId","InquiryBuilders","_InquiryBuilders"],"sources":["index.ts"],"sourcesContent":["import {\n EventSubscription,\n NativeEventEmitter,\n NativeModules,\n} from 'react-native';\nimport { processThemeValues } from './util';\nimport { Fields, InquiryField, RawInquiryField } from './fields';\nimport { InquiryEvent } from './InquiryEvent';\n\nexport { Fields };\n\nimport { Versions } from './versions';\n\nexport { Versions };\n\nconst { PersonaInquiry2 } = NativeModules;\n\n// Using Opaque types + Smart Constructor enforces validation at\n// instantiation time for IDS\ndeclare const Unique: unique symbol;\nexport type Opaque<T, Tag> = T & { [Unique]: Tag };\n\ntype TemplateId = Opaque<string, 'TemplateId'>;\ntype TemplateVersion = Opaque<string, 'TemplateVersion'>;\ntype InquiryId = Opaque<string, 'InquiryId'>;\ntype AccountId = Opaque<string, 'AccountId'>;\n\nexport class InvalidTemplateId extends Error {}\n\nexport class InvalidTemplateVersion extends Error {}\n\nexport class InvalidInquiryId extends Error {}\n\nexport class InvalidAccountId extends Error {}\n\n/**\n * Run validations that the string is in proper Inquiry token format\n * and do a type conversion to InquiryId.\n *\n * @param candidate\n */\nfunction makeInquiryId(candidate: string): InquiryId {\n if (candidate && candidate.startsWith('inq_')) {\n return candidate as InquiryId;\n }\n\n throw new InvalidInquiryId(\n `Valid template IDs start with \"inq_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template token format\n * and do a type conversion to TemplateId.\n *\n * @param candidate\n */\nfunction makeTemplateId(candidate: string): TemplateId {\n if (candidate && candidate.startsWith('itmpl_')) {\n return candidate as TemplateId;\n }\n\n throw new InvalidTemplateId(\n `Valid template IDs start with \"itmpl_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template Version token format\n * and do a type conversion to TemplateVersion.\n *\n * @param candidate\n */\nfunction makeTemplateVersion(candidate: string): TemplateVersion {\n if (candidate && candidate.startsWith('itmplv_')) {\n return candidate as TemplateVersion;\n }\n\n throw new InvalidTemplateVersion(\n `Valid template versions start with \"itmplv_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template token format\n * and do a type conversion to AccountId.\n *\n * @param candidate\n */\nfunction makeAccountId(candidate: string): AccountId {\n if (candidate && candidate.startsWith('act_')) {\n return candidate as AccountId;\n }\n\n throw new InvalidAccountId(\n `Valid account IDs start with \"act_\". Received: ${candidate} `\n );\n}\n\n/**\n * String enum for environments. These strings will be parsed\n * on the native side bridge into Kotlin / Swift enums.\n */\nexport enum Environment {\n SANDBOX = 'sandbox',\n PRODUCTION = 'production',\n}\n\n/**\n * An enum value which determines whether this sdk should use the theme values sent from the server.\n */\nexport enum ThemeSource {\n SERVER = 'server',\n /**\n * @deprecated Client side theming is deprecated, please configure your theme inside\n * the Persona Dashboard and use SERVER as the theme source.\n */\n CLIENT = 'client',\n}\n\nexport interface InquiryOptions {\n templateId?: TemplateId;\n templateVersion?: TemplateVersion;\n inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n environmentId?: string;\n themeSetId?: string;\n sessionToken?: string;\n returnCollectedData?: boolean;\n locale?: String;\n\n // Fields\n fields?: Fields;\n\n // Callbacks\n onComplete?: OnCompleteCallback;\n onCanceled?: OnCanceledCallback;\n onError?: OnErrorCallback;\n\n // Customization\n iosThemeObject?: Object | null;\n themeSource?: ThemeSource | null;\n}\n\ntype OnCompleteCallback = (\n inquiryId: string,\n status: string,\n fields: Fields,\n extraData: ExtraData\n) => void;\n\n/**\n * Type for collected data that came directly from iOS/Android.\n * Needs to be translated to TS classes before returning.\n */\ninterface ExternalCollectedData {\n stepData: any[];\n}\n\nexport interface ExtraData {\n collectedData: CollectedData | null;\n}\nexport interface CollectedData {\n stepData: StepData[];\n}\n\nexport interface StepData {\n stepName: string;\n}\n\nexport class DocumentStepData implements StepData {\n stepName: string;\n documents: Document[];\n\n constructor() {\n this.stepName = '';\n this.documents = [];\n }\n}\n\nexport interface Document {\n absoluteFilePath: string;\n}\n\nexport class GovernmentIdStepData implements StepData {\n stepName: string;\n captures: GovernmentIdCapture[];\n\n constructor() {\n this.stepName = '';\n this.captures = [];\n }\n}\n\nexport interface GovernmentIdCapture {\n idClass: string;\n captureMethod: GovernmentIdCaptureMethod;\n side: GovernmentIdCaptureSide;\n frames: GovernmentIdCaptureFrames[];\n}\n\nexport enum GovernmentIdCaptureMethod {\n Manual = 'Manual',\n Auto = 'Auto',\n Upload = 'Upload',\n}\n\nexport enum GovernmentIdCaptureSide {\n Front = 'Front',\n Back = 'Back',\n}\n\nexport interface GovernmentIdCaptureFrames {\n absoluteFilePath: string;\n}\n\nexport class SelfieStepData implements StepData {\n stepName: string;\n centerCapture: SelfieCapture | null;\n leftCapture: SelfieCapture | null;\n rightCapture: SelfieCapture | null;\n\n constructor() {\n this.stepName = '';\n this.centerCapture = null;\n this.leftCapture = null;\n this.rightCapture = null;\n }\n}\n\nexport interface SelfieCapture {\n captureMethod: SelfieCaptureMethod;\n absoluteFilePath: string;\n}\n\nexport enum SelfieCaptureMethod {\n Manual = 'Manual',\n Auto = 'Auto',\n}\n\nexport class UiStepData implements StepData {\n stepName: string;\n componentParams: { [key: string]: any };\n\n constructor() {\n this.stepName = '';\n this.componentParams = {};\n }\n}\n\ntype OnCanceledCallback = (inquiryId?: string, sessionToken?: string) => void;\n\ntype OnErrorCallback = (error: Error, errorCode?: string) => void;\n\ntype OnEventCallback = (event: InquiryEvent) => void;\n\nconst eventEmitter = new NativeEventEmitter(PersonaInquiry2);\n\nlet onEventListener: EventSubscription | null = null;\n\nexport class Inquiry {\n templateId?: TemplateId;\n templateVersion?: TemplateVersion;\n inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n environmentId?: string;\n themeSetId?: string;\n sessionToken?: string;\n returnCollectedData?: boolean;\n locale?: String;\n\n iosThemeObject?: Object | null;\n themeSource?: ThemeSource | null;\n fields?: Fields | null;\n\n private readonly onComplete?: OnCompleteCallback;\n private readonly onCanceled?: OnCanceledCallback;\n private readonly onError?: OnErrorCallback;\n\n private onCompleteListener?: EventSubscription;\n private onCanceledListener?: EventSubscription;\n private onErrorListener?: EventSubscription;\n\n constructor(options: InquiryOptions) {\n this.templateId = options.templateId;\n this.templateVersion = options.templateVersion;\n this.inquiryId = options.inquiryId;\n this.referenceId = options.referenceId;\n this.accountId = options.accountId;\n this.environment = options.environment;\n this.environmentId = options.environmentId;\n this.themeSetId = options.themeSetId;\n this.sessionToken = options.sessionToken;\n this.fields = options.fields;\n this.returnCollectedData = options.returnCollectedData;\n this.locale = options.locale;\n\n // Callbacks\n this.onComplete = options.onComplete;\n this.onCanceled = options.onCanceled;\n this.onError = options.onError;\n\n // Theme object\n this.iosThemeObject = options.iosThemeObject;\n this.themeSource = options.themeSource;\n }\n\n private clearListeners() {\n if (this.onCompleteListener) this.onCompleteListener.remove();\n if (this.onCanceledListener) this.onCanceledListener.remove();\n if (this.onErrorListener) this.onErrorListener.remove();\n }\n\n /**\n * Create an Inquiry flow builder based on a template ID.\n *\n * You can find your template ID on the Dashboard under Inquiries > Templates.\n * {@link https://app.withpersona.com/dashboard/inquiry-templates}\n *\n * @param templateId template ID from your Persona Dashboard\n * @return builder for the Inquiry flow\n */\n static fromTemplate(templateId: string) {\n return new TemplateBuilder(makeTemplateId(templateId), null);\n }\n\n /**\n * Create an Inquiry flow builder based on a template ID version.\n *\n * You can find your template ID version on the Dashboard under the\n * settings view of a specific template.\n * {@link https://app.withpersona.com/dashboard/inquiry-templates}\n *\n * @param templateVersion template version from your Persona Dashboard\n * @return builder for the Inquiry flow\n */\n static fromTemplateVersion(templateVersion: string) {\n return new TemplateBuilder(null, makeTemplateVersion(templateVersion));\n }\n\n /**\n * Create an Inquiry flow builder based on an inquiry ID.\n *\n * You will need to generate the inquiry ID on the server. To try it out, you can create an\n * inquiry from the Persona Dashboard under \"Inquiries\". Click on the \"Create Inquiry\" button\n * and copy the inquiry ID from the URL.\n * {@link https://app.withpersona.com/dashboard/inquiries}\n *\n * @param inquiryId inquiry ID from your server\n * @return builder for the Inquiry flow\n */\n static fromInquiry(inquiryId: string) {\n return new InquiryBuilder(makeInquiryId(inquiryId));\n }\n\n static onEvent(callback: OnEventCallback) {\n if (onEventListener) {\n onEventListener.remove();\n }\n\n onEventListener = eventEmitter.addListener(\n 'onEvent',\n (rawEvent: {\n event: {\n type: string;\n };\n }) => {\n let event = InquiryEvent.fromJson(rawEvent.event);\n\n if (event != null) {\n callback(event);\n }\n }\n );\n }\n\n /**\n * Launch the Persona Inquiry.\n */\n start() {\n this.onCompleteListener = eventEmitter.addListener(\n 'onComplete',\n (event: {\n inquiryId: string;\n status: string;\n fields: Record<string, RawInquiryField>;\n collectedData: ExternalCollectedData | null;\n }) => {\n if (this.onComplete) {\n let fields: Fields = {};\n for (let key of Object.keys(event.fields || {})) {\n let field = event.fields[key];\n if (field == undefined) {\n fields[key] = new InquiryField.Unknown('null');\n continue;\n }\n switch (field.type) {\n case 'integer':\n fields[key] = new InquiryField.Integer(\n Number.parseInt(field.value)\n );\n break;\n case 'boolean':\n fields[key] = new InquiryField.Boolean(field.value);\n break;\n case 'string':\n fields[key] = new InquiryField.String(field.value);\n break;\n default:\n fields[key] = new InquiryField.Unknown(field.type);\n break;\n }\n }\n\n let collectedData: CollectedData | null = null;\n\n let stepData = event.collectedData?.stepData;\n if (stepData != null) {\n // Translate the step data from JSON to actual class objects\n let translatedStepData = [];\n\n for (let stepDatum of stepData) {\n switch (stepDatum.type) {\n case 'DocumentStepData':\n translatedStepData.push(\n Object.assign(new DocumentStepData(), stepDatum)\n );\n break;\n case 'GovernmentIdStepData':\n translatedStepData.push(\n Object.assign(new GovernmentIdStepData(), stepDatum)\n );\n break;\n case 'SelfieStepData':\n translatedStepData.push(\n Object.assign(new SelfieStepData(), stepDatum)\n );\n break;\n case 'UiStepData':\n translatedStepData.push(\n Object.assign(new UiStepData(), stepDatum)\n );\n break;\n }\n }\n\n collectedData = {\n stepData: translatedStepData,\n };\n }\n\n let extraData: ExtraData = {\n collectedData: collectedData,\n };\n\n this.onComplete(event.inquiryId, event.status, fields, extraData);\n }\n this.clearListeners();\n }\n );\n\n this.onCanceledListener = eventEmitter.addListener(\n 'onCanceled',\n (event: { inquiryId?: string; sessionToken?: string }) => {\n if (this.onCanceled)\n this.onCanceled(event.inquiryId, event.sessionToken);\n this.clearListeners();\n }\n );\n\n this.onErrorListener = eventEmitter.addListener(\n 'onError',\n (event: { debugMessage: string; errorCode?: string }) => {\n if (this.onError)\n this.onError(new Error(event.debugMessage), event.errorCode);\n this.clearListeners();\n }\n );\n\n PersonaInquiry2.startInquiry({\n templateId: this.templateId,\n templateVersion: this.templateVersion,\n inquiryId: this.inquiryId,\n referenceId: this.referenceId,\n accountId: this.accountId,\n environment: this.environment,\n environmentId: this.environmentId,\n themeSetId: this.themeSetId,\n sessionToken: this.sessionToken,\n fields: this.fields,\n returnCollectedData: this.returnCollectedData,\n themeSource: this.themeSource,\n iosTheme: processThemeValues(this.iosThemeObject || {}),\n locale: this.locale,\n });\n }\n}\n\nclass InquiryBuilder {\n private _inquiryId: InquiryId;\n private _sessionToken?: string;\n\n // Callbacks\n private _onComplete?: OnCompleteCallback;\n private _onCanceled?: OnCanceledCallback;\n private _onError?: OnErrorCallback;\n private _iosThemeObject?: Object;\n private _themeSource: ThemeSource = ThemeSource.SERVER;\n private _fields?: Fields;\n private _locale?: string;\n\n constructor(inquiryId: InquiryId) {\n this._inquiryId = inquiryId;\n }\n\n sessionToken(sessionToken: string): InquiryBuilder {\n this._sessionToken = sessionToken;\n\n return this;\n }\n\n onComplete(callback: OnCompleteCallback): InquiryBuilder {\n this._onComplete = callback;\n\n return this;\n }\n\n onCanceled(callback: OnCanceledCallback): InquiryBuilder {\n this._onCanceled = callback;\n\n return this;\n }\n\n onError(callback: OnErrorCallback): InquiryBuilder {\n this._onError = callback;\n\n return this;\n }\n\n /**\n * @deprecated Use iosThemeToUse\n */\n iosTheme(themeObject: Object): InquiryBuilder {\n this._iosThemeObject = themeObject;\n this._themeSource = ThemeSource.CLIENT;\n\n return this;\n }\n\n iosThemeToUse(themeObject: Object, themeSource: ThemeSource): InquiryBuilder {\n this._iosThemeObject = themeObject;\n this._themeSource = themeSource;\n\n return this;\n }\n\n locale(locale: string): InquiryBuilder {\n this._locale = locale;\n\n return this;\n }\n\n build(): Inquiry {\n return new Inquiry({\n inquiryId: this._inquiryId,\n sessionToken: this._sessionToken,\n onComplete: this._onComplete,\n onCanceled: this._onCanceled,\n onError: this._onError,\n iosThemeObject: this._iosThemeObject,\n themeSource: this._themeSource,\n fields: this._fields,\n locale: this._locale,\n });\n }\n}\n\nclass TemplateBuilder {\n private readonly _templateId?: TemplateId;\n private readonly _templateVersion?: TemplateVersion;\n private _accountId?: AccountId;\n private _referenceId?: string;\n private _environment?: Environment;\n private _environmentId?: string;\n private _themeSetId?: string;\n private _fields?: Fields;\n private _sessionToken?: string;\n private _returnCollectedData?: boolean;\n private _locale?: string;\n\n // Callbacks\n private _onComplete?: OnCompleteCallback;\n private _onCanceled?: OnCanceledCallback;\n private _onError?: OnErrorCallback;\n\n // Customization\n private _iosThemeObject?: Object;\n private _themeSource: ThemeSource = ThemeSource.SERVER;\n\n constructor(\n templateId?: TemplateId | null,\n templateVersion?: TemplateVersion | null\n ) {\n if (templateId != null) {\n this._templateId = templateId;\n } else if (templateVersion != null) {\n this._templateVersion = templateVersion;\n } else {\n throw new InvalidTemplateId(\n `Either templateId or templateVersion needs to be set.`\n );\n }\n return this;\n }\n\n returnCollectedData(returnCollectedData: boolean) {\n this._returnCollectedData = returnCollectedData;\n\n return this;\n }\n\n referenceId(referenceId: string): TemplateBuilder {\n if (referenceId == null) {\n return this;\n }\n this._accountId = undefined;\n this._referenceId = referenceId;\n\n return this;\n }\n\n accountId(accountId: string): TemplateBuilder {\n if (accountId == null) {\n return this;\n }\n this._referenceId = undefined;\n this._accountId = makeAccountId(accountId);\n\n return this;\n }\n\n environment(environment: Environment): TemplateBuilder {\n this._environment = environment;\n\n return this;\n }\n\n environmentId(environmentId: string): TemplateBuilder {\n this._environmentId = environmentId;\n\n return this;\n }\n\n themeSetId(themeSetId: string): TemplateBuilder {\n this._themeSetId = themeSetId;\n\n return this;\n }\n\n sessionToken(sessionToken: string): TemplateBuilder {\n this._sessionToken = sessionToken;\n\n return this;\n }\n\n fields(fields: Fields): TemplateBuilder {\n this._fields = fields;\n\n return this;\n }\n\n locale(locale: string): TemplateBuilder {\n this._locale = locale;\n\n return this;\n }\n\n onComplete(callback: OnCompleteCallback): TemplateBuilder {\n this._onComplete = callback;\n\n return this;\n }\n\n onCanceled(callback: OnCanceledCallback): TemplateBuilder {\n this._onCanceled = callback;\n\n return this;\n }\n\n onError(callback: OnErrorCallback): TemplateBuilder {\n this._onError = callback;\n\n return this;\n }\n\n /**\n * @deprecated Use iosThemeToUse\n */\n iosTheme(themeObject: Object): TemplateBuilder {\n this._iosThemeObject = themeObject;\n this._themeSource = ThemeSource.CLIENT;\n\n return this;\n }\n\n iosThemeToUse(\n themeObject: Object,\n themeSource: ThemeSource\n ): TemplateBuilder {\n this._iosThemeObject = themeObject;\n this._themeSource = themeSource;\n\n return this;\n }\n\n build(): Inquiry {\n return new Inquiry({\n templateId: this._templateId,\n templateVersion: this._templateVersion,\n accountId: this._accountId,\n referenceId: this._referenceId,\n environment: this._environment,\n environmentId: this._environmentId,\n themeSetId: this._themeSetId,\n sessionToken: this._sessionToken,\n fields: this._fields,\n onComplete: this._onComplete,\n onCanceled: this._onCanceled,\n onError: this._onError,\n iosThemeObject: this._iosThemeObject,\n themeSource: this._themeSource,\n returnCollectedData: this._returnCollectedData,\n locale: this._locale,\n });\n }\n}\n\n/**\n * @deprecated Use the `Inquiry` static methods instead\n */\nnamespace InquiryBuilders {\n /**\n * @deprecated Use {@link Inquiry#fromInquiry} instead\n */\n export function fromInquiry(inquiryId: string) {\n return Inquiry.fromInquiry(inquiryId);\n }\n\n /**\n * @deprecated Use {@link Inquiry#fromTemplate} instead\n */\n export function fromTemplate(templateId: string) {\n return Inquiry.fromTemplate(templateId);\n }\n\n /**\n * @deprecated Use {@link Inquiry#fromTemplateVersion} instead\n */\n export function fromTemplateVersion(templateVersion: string) {\n return Inquiry.fromTemplateVersion(templateVersion);\n }\n}\n\nexport default InquiryBuilders;\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["HEX_REGEX","processThemeValues","themeObject","result","key","value","Object","entries","includes","colorValue","slice","test","toString"],"sources":["util.ts"],"sourcesContent":["const HEX_REGEX = /^[a-fA-F0-9]{6}$/;\nexport function processThemeValues(themeObject: Object) {\n const result: { [key: string]: string } = {};\n for (const [key, value] of Object.entries(themeObject)) {\n if (value === null) {\n continue;\n }\n\n if (key.includes('Color')) {\n let colorValue = value;\n if (value[0] === '#') {\n colorValue = value.slice(1);\n }\n\n if (HEX_REGEX.test(colorValue)) {\n result[key] = `#${colorValue}`;\n } else {\n continue;\n }\n } else {\n result[key] = value.toString();\n }\n }\n\n return result;\n}\n"],"mappings":"AAAA,MAAMA,SAAS,GAAG,kBAAkB;AACpC,OAAO,SAASC,kBAAkBA,CAACC,WAAmB,EAAE;EACtD,MAAMC,MAAiC,GAAG,CAAC,CAAC;EAC5C,KAAK,MAAM,CAACC,GAAG,EAAEC,KAAK,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACL,WAAW,CAAC,EAAE;IACtD,IAAIG,KAAK,KAAK,IAAI,EAAE;MAClB;IACF;IAEA,IAAID,GAAG,CAACI,QAAQ,CAAC,OAAO,CAAC,EAAE;MACzB,IAAIC,UAAU,GAAGJ,KAAK;MACtB,IAAIA,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;QACpBI,UAAU,GAAGJ,KAAK,CAACK,KAAK,CAAC,CAAC,CAAC;MAC7B;MAEA,IAAIV,SAAS,CAACW,IAAI,CAACF,UAAU,CAAC,EAAE;QAC9BN,MAAM,CAACC,GAAG,CAAC,GAAI,IAAGK,UAAW,EAAC;MAChC,CAAC,MAAM;QACL;MACF;IACF,CAAC,MAAM;MACLN,MAAM,CAACC,GAAG,CAAC,GAAGC,KAAK,CAACO,QAAQ,CAAC,CAAC;IAChC;EACF;EAEA,OAAOT,MAAM;AACf"}
1
+ {"version":3,"names":["HEX_REGEX","processThemeValues","themeObject","result","key","value","Object","entries","includes","colorValue","slice","test","toString"],"sources":["util.ts"],"sourcesContent":["const HEX_REGEX = /^[a-fA-F0-9]{6}$/;\nexport function processThemeValues(themeObject: Object) {\n const result: { [key: string]: string } = {};\n for (const [key, value] of Object.entries(themeObject)) {\n if (value === null) {\n continue;\n }\n\n if (key.includes('Color')) {\n let colorValue = value;\n if (value[0] === '#') {\n colorValue = value.slice(1);\n }\n\n if (HEX_REGEX.test(colorValue)) {\n result[key] = `#${colorValue}`;\n } else {\n continue;\n }\n } else {\n result[key] = value.toString();\n }\n }\n\n return result;\n}\n"],"mappings":"AAAA,MAAMA,SAAS,GAAG,kBAAkB;AACpC,OAAO,SAASC,kBAAkBA,CAACC,WAAmB,EAAE;EACtD,MAAMC,MAAiC,GAAG,CAAC,CAAC;EAC5C,KAAK,MAAM,CAACC,GAAG,EAAEC,KAAK,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACL,WAAW,CAAC,EAAE;IACtD,IAAIG,KAAK,KAAK,IAAI,EAAE;MAClB;IACF;IAEA,IAAID,GAAG,CAACI,QAAQ,CAAC,OAAO,CAAC,EAAE;MACzB,IAAIC,UAAU,GAAGJ,KAAK;MACtB,IAAIA,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;QACpBI,UAAU,GAAGJ,KAAK,CAACK,KAAK,CAAC,CAAC,CAAC;MAC7B;MAEA,IAAIV,SAAS,CAACW,IAAI,CAACF,UAAU,CAAC,EAAE;QAC9BN,MAAM,CAACC,GAAG,CAAC,GAAG,IAAIK,UAAU,EAAE;MAChC,CAAC,MAAM;QACL;MACF;IACF,CAAC,MAAM;MACLN,MAAM,CAACC,GAAG,CAAC,GAAGC,KAAK,CAACO,QAAQ,CAAC,CAAC;IAChC;EACF;EAEA,OAAOT,MAAM;AACf","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","PersonaInquiry2","Versions","nativeSdkVersion","getConstants","INQUIRY_SDK_VERSION"],"sources":["versions.ts"],"sourcesContent":["import { NativeModules } from 'react-native';\n\nconst { PersonaInquiry2 } = NativeModules;\n\nexport class Versions {\n /**\n * @return version of the underlying Android/iOS Inquiry SDK\n */\n static nativeSdkVersion(): String {\n return PersonaInquiry2.getConstants().INQUIRY_SDK_VERSION;\n }\n}\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,cAAc;AAE5C,MAAM;EAAEC;AAAgB,CAAC,GAAGD,aAAa;AAEzC,OAAO,MAAME,QAAQ,CAAC;EACpB;AACF;AACA;EACE,OAAOC,gBAAgBA,CAAA,EAAW;IAChC,OAAOF,eAAe,CAACG,YAAY,CAAC,CAAC,CAACC,mBAAmB;EAC3D;AACF"}
1
+ {"version":3,"names":["NativeModules","PersonaInquiry2","Versions","nativeSdkVersion","getConstants","INQUIRY_SDK_VERSION"],"sources":["versions.ts"],"sourcesContent":["import { NativeModules } from 'react-native';\n\nconst { PersonaInquiry2 } = NativeModules;\n\nexport class Versions {\n /**\n * @return version of the underlying Android/iOS Inquiry SDK\n */\n static nativeSdkVersion(): String {\n return PersonaInquiry2.getConstants().INQUIRY_SDK_VERSION;\n }\n}\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,cAAc;AAE5C,MAAM;EAAEC;AAAgB,CAAC,GAAGD,aAAa;AAEzC,OAAO,MAAME,QAAQ,CAAC;EACpB;AACF;AACA;EACE,OAAOC,gBAAgBA,CAAA,EAAW;IAChC,OAAOF,eAAe,CAACG,YAAY,CAAC,CAAC,CAACC,mBAAmB;EAC3D;AACF","ignoreList":[]}
@@ -0,0 +1,33 @@
1
+ export interface InquiryEvent {
2
+ readonly type: string;
3
+ }
4
+ export declare namespace InquiryEvent {
5
+ /**
6
+ * Triggered when an Inquiry session has been created in the client.
7
+ *
8
+ * Dynamic Flow Templates will send this event at the same time as 'ready', and it will not
9
+ * indicate user interaction.
10
+ */
11
+ class Start implements InquiryEvent {
12
+ readonly type: string;
13
+ readonly inquiryId: string;
14
+ readonly sessionToken: string;
15
+ constructor(inquiryId: string, sessionToken: string);
16
+ }
17
+ /**
18
+ * The current page in the Inquiry flow changed. This is primarily used with the Inlined React
19
+ * flow to dynamically resize the widget based on the contents of the current page.
20
+ *
21
+ * page-change events receive a metadata object containing the following fields:
22
+ *
23
+ * @param name name of the next step as configured in the Inquiry Template
24
+ * @param path string representing the step type
25
+ */
26
+ class PageChange implements InquiryEvent {
27
+ readonly type: string;
28
+ readonly name: string;
29
+ readonly path: string;
30
+ constructor(name: string, path: string);
31
+ }
32
+ const fromJson: (eventJson: any) => InquiryEvent | null;
33
+ }
@@ -1,4 +1,5 @@
1
1
  import { Fields } from './fields';
2
+ import { InquiryEvent } from './InquiryEvent';
2
3
  export { Fields };
3
4
  import { Versions } from './versions';
4
5
  export { Versions };
@@ -121,6 +122,7 @@ export declare class UiStepData implements StepData {
121
122
  }
122
123
  type OnCanceledCallback = (inquiryId?: string, sessionToken?: string) => void;
123
124
  type OnErrorCallback = (error: Error, errorCode?: string) => void;
125
+ type OnEventCallback = (event: InquiryEvent) => void;
124
126
  export declare class Inquiry {
125
127
  templateId?: TemplateId;
126
128
  templateVersion?: TemplateVersion;
@@ -177,6 +179,7 @@ export declare class Inquiry {
177
179
  * @return builder for the Inquiry flow
178
180
  */
179
181
  static fromInquiry(inquiryId: string): InquiryBuilder;
182
+ static onEvent(callback: OnEventCallback): void;
180
183
  /**
181
184
  * Launch the Persona Inquiry.
182
185
  */
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "react-native-persona",
3
3
  "title": "React Native Persona",
4
- "version": "2.18.0",
4
+ "version": "2.19.0",
5
5
  "description": "Launch a mobile native implementation of the Persona inquiry flow from React Native.",
6
6
  "homepage": "https://docs.withpersona.com/docs/react-native-sdk-integration",
7
7
  "bugs": "https://github.com/persona-id/persona-inquiry-sdk-public",
@@ -0,0 +1,72 @@
1
+ export interface InquiryEvent {
2
+ readonly type: string;
3
+ }
4
+
5
+ export namespace InquiryEvent {
6
+ /**
7
+ * Triggered when an Inquiry session has been created in the client.
8
+ *
9
+ * Dynamic Flow Templates will send this event at the same time as 'ready', and it will not
10
+ * indicate user interaction.
11
+ */
12
+ export class Start implements InquiryEvent {
13
+ readonly type: string = 'start';
14
+ readonly inquiryId: string;
15
+ readonly sessionToken: string;
16
+
17
+ constructor(inquiryId: string, sessionToken: string) {
18
+ this.inquiryId = inquiryId;
19
+ this.sessionToken = sessionToken;
20
+ }
21
+ }
22
+
23
+ /**
24
+ * The current page in the Inquiry flow changed. This is primarily used with the Inlined React
25
+ * flow to dynamically resize the widget based on the contents of the current page.
26
+ *
27
+ * page-change events receive a metadata object containing the following fields:
28
+ *
29
+ * @param name name of the next step as configured in the Inquiry Template
30
+ * @param path string representing the step type
31
+ */
32
+ export class PageChange implements InquiryEvent {
33
+ readonly type: string = 'page_change';
34
+ readonly name: string;
35
+ readonly path: string;
36
+
37
+ constructor(name: string, path: string) {
38
+ this.name = name;
39
+ this.path = path;
40
+ }
41
+ }
42
+
43
+ const isStart = (event: any): event is Start => {
44
+ return (
45
+ event.type === 'start' &&
46
+ event.inquiryId !== undefined &&
47
+ event.sessionToken !== undefined
48
+ );
49
+ };
50
+
51
+ const isPageChange = (event: any): event is PageChange => {
52
+ return (
53
+ event.type === 'page_change' &&
54
+ event.name !== undefined &&
55
+ event.path !== undefined
56
+ );
57
+ };
58
+
59
+ export const fromJson = (eventJson: any): InquiryEvent | null => {
60
+ let event: InquiryEvent | null;
61
+
62
+ if (isStart(eventJson)) {
63
+ event = new Start(eventJson.inquiryId, eventJson.sessionToken);
64
+ } else if (isPageChange(eventJson)) {
65
+ event = new PageChange(eventJson.name, eventJson.path);
66
+ } else {
67
+ event = null;
68
+ }
69
+
70
+ return event;
71
+ };
72
+ }
package/src/index.ts CHANGED
@@ -5,6 +5,7 @@ import {
5
5
  } from 'react-native';
6
6
  import { processThemeValues } from './util';
7
7
  import { Fields, InquiryField, RawInquiryField } from './fields';
8
+ import { InquiryEvent } from './InquiryEvent';
8
9
 
9
10
  export { Fields };
10
11
 
@@ -253,8 +254,12 @@ type OnCanceledCallback = (inquiryId?: string, sessionToken?: string) => void;
253
254
 
254
255
  type OnErrorCallback = (error: Error, errorCode?: string) => void;
255
256
 
257
+ type OnEventCallback = (event: InquiryEvent) => void;
258
+
256
259
  const eventEmitter = new NativeEventEmitter(PersonaInquiry2);
257
260
 
261
+ let onEventListener: EventSubscription | null = null;
262
+
258
263
  export class Inquiry {
259
264
  templateId?: TemplateId;
260
265
  templateVersion?: TemplateVersion;
@@ -352,6 +357,27 @@ export class Inquiry {
352
357
  return new InquiryBuilder(makeInquiryId(inquiryId));
353
358
  }
354
359
 
360
+ static onEvent(callback: OnEventCallback) {
361
+ if (onEventListener) {
362
+ onEventListener.remove();
363
+ }
364
+
365
+ onEventListener = eventEmitter.addListener(
366
+ 'onEvent',
367
+ (rawEvent: {
368
+ event: {
369
+ type: string;
370
+ };
371
+ }) => {
372
+ let event = InquiryEvent.fromJson(rawEvent.event);
373
+
374
+ if (event != null) {
375
+ callback(event);
376
+ }
377
+ }
378
+ );
379
+ }
380
+
355
381
  /**
356
382
  * Launch the Persona Inquiry.
357
383
  */