react-native-persona 2.6.3 → 2.6.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/RNPersonaInquiry2.podspec +2 -2
- package/android/build.gradle +1 -1
- package/android/src/main/java/com/withpersona/sdk2/reactnative/PersonaInquiryModule2.java +20 -1
- package/ios/PersonaInquiry2.swift +4 -0
- package/lib/commonjs/index.js +25 -5
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/index.js +25 -5
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/index.d.ts +7 -1
- package/package.json +1 -1
- package/src/index.ts +24 -3
|
@@ -25,11 +25,11 @@ Pod::Spec.new do |s|
|
|
|
25
25
|
|
|
26
26
|
s.default_subspec = 'Core'
|
|
27
27
|
s.subspec 'Core' do |ss|
|
|
28
|
-
ss.dependency 'PersonaInquirySDK2', '2.
|
|
28
|
+
ss.dependency 'PersonaInquirySDK2', '2.13.0'
|
|
29
29
|
end
|
|
30
30
|
|
|
31
31
|
s.subspec 'Nfc' do |ss|
|
|
32
|
-
ss.dependency 'PersonaNfc', '2.
|
|
32
|
+
ss.dependency 'PersonaNfc', '2.13.0'
|
|
33
33
|
ss.dependency 'OpenSSL-Universal', '1.1.180'
|
|
34
34
|
end
|
|
35
35
|
end
|
package/android/build.gradle
CHANGED
|
@@ -53,6 +53,7 @@ public class PersonaInquiryModule2 extends ReactContextBaseJavaModule
|
|
|
53
53
|
private static final String RETURN_COLLECTED_DATA = "returnCollectedData";
|
|
54
54
|
private static final String THEME_SOURCE = "themeSource";
|
|
55
55
|
private static final String ROUTING_COUNTRY = "routingCountry";
|
|
56
|
+
private static final String LOCALE = "locale";
|
|
56
57
|
|
|
57
58
|
private final ReactApplicationContext reactContext;
|
|
58
59
|
|
|
@@ -122,8 +123,11 @@ public class PersonaInquiryModule2 extends ReactContextBaseJavaModule
|
|
|
122
123
|
params.putString("sessionToken", cancel.getSessionToken());
|
|
123
124
|
jsModule.emit("onCanceled", params);
|
|
124
125
|
} else if (response instanceof InquiryResponse.Error) {
|
|
126
|
+
InquiryResponse.Error error = (InquiryResponse.Error) response;
|
|
127
|
+
|
|
125
128
|
WritableMap params = Arguments.createMap();
|
|
126
|
-
params.putString("debugMessage",
|
|
129
|
+
params.putString("debugMessage", error.getDebugMessage());
|
|
130
|
+
params.putString("errorCode", error.getErrorCode().name());
|
|
127
131
|
jsModule.emit("onError", params);
|
|
128
132
|
}
|
|
129
133
|
}
|
|
@@ -300,6 +304,16 @@ public class PersonaInquiryModule2 extends ReactContextBaseJavaModule
|
|
|
300
304
|
builder = builder.sessionToken(sessionToken);
|
|
301
305
|
}
|
|
302
306
|
|
|
307
|
+
String routingCountry = options.hasKey(ROUTING_COUNTRY) ? options.getString(ROUTING_COUNTRY) : null;
|
|
308
|
+
if (routingCountry != null) {
|
|
309
|
+
builder = builder.routingCountry(routingCountry);
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
String locale = options.hasKey(LOCALE) ? options.getString(LOCALE) : null;
|
|
313
|
+
if (locale != null) {
|
|
314
|
+
builder = builder.locale(locale);
|
|
315
|
+
}
|
|
316
|
+
|
|
303
317
|
if (currentActivity != null) {
|
|
304
318
|
builder.build().start(currentActivity, PERSONA_INQUIRY_REQUEST_CODE);
|
|
305
319
|
}
|
|
@@ -334,6 +348,11 @@ public class PersonaInquiryModule2 extends ReactContextBaseJavaModule
|
|
|
334
348
|
builder = builder.routingCountry(routingCountry);
|
|
335
349
|
}
|
|
336
350
|
|
|
351
|
+
String locale = options.hasKey(LOCALE) ? options.getString(LOCALE) : null;
|
|
352
|
+
if (locale != null) {
|
|
353
|
+
builder = builder.locale(locale);
|
|
354
|
+
}
|
|
355
|
+
|
|
337
356
|
ReadableMap fields = options.hasKey(FIELDS) ? options.getMap(FIELDS) : null;
|
|
338
357
|
|
|
339
358
|
if (fields != null) {
|
|
@@ -50,6 +50,7 @@ class PersonaInquiry2: RCTEventEmitter {
|
|
|
50
50
|
let fieldsObject = options["fields"] as? [String: [String: Any]]
|
|
51
51
|
let returnCollectedData = options["returnCollectedData"] as? Bool ?? false
|
|
52
52
|
let routingCountry = options["routingCountry"] as? String
|
|
53
|
+
let locale = options["locale"] as? String
|
|
53
54
|
|
|
54
55
|
var nfcAdapter: InquiryNfcAdapter? = nil
|
|
55
56
|
#if canImport(PersonaNfc)
|
|
@@ -64,6 +65,7 @@ class PersonaInquiry2: RCTEventEmitter {
|
|
|
64
65
|
.nfcAdapter(nfcAdapter)
|
|
65
66
|
.collectionDelegate(returnCollectedData ? self : nil)
|
|
66
67
|
.routingCountry(routingCountry)
|
|
68
|
+
.locale(locale)
|
|
67
69
|
.build()
|
|
68
70
|
} else if let templateId {
|
|
69
71
|
inquiry = Inquiry.from(templateId: templateId, delegate: self)
|
|
@@ -74,6 +76,7 @@ class PersonaInquiry2: RCTEventEmitter {
|
|
|
74
76
|
.nfcAdapter(nfcAdapter)
|
|
75
77
|
.collectionDelegate(returnCollectedData ? self : nil)
|
|
76
78
|
.routingCountry(routingCountry)
|
|
79
|
+
.locale(locale)
|
|
77
80
|
.build()
|
|
78
81
|
} else if let templateVersion {
|
|
79
82
|
inquiry = Inquiry.from(templateVersion: templateVersion, delegate: self)
|
|
@@ -84,6 +87,7 @@ class PersonaInquiry2: RCTEventEmitter {
|
|
|
84
87
|
.nfcAdapter(nfcAdapter)
|
|
85
88
|
.collectionDelegate(returnCollectedData ? self : nil)
|
|
86
89
|
.routingCountry(routingCountry)
|
|
90
|
+
.locale(locale)
|
|
87
91
|
.build()
|
|
88
92
|
}
|
|
89
93
|
|
package/lib/commonjs/index.js
CHANGED
|
@@ -248,6 +248,8 @@ class Inquiry {
|
|
|
248
248
|
|
|
249
249
|
_defineProperty(this, "routingCountry", void 0);
|
|
250
250
|
|
|
251
|
+
_defineProperty(this, "locale", void 0);
|
|
252
|
+
|
|
251
253
|
_defineProperty(this, "iosThemeObject", void 0);
|
|
252
254
|
|
|
253
255
|
_defineProperty(this, "themeSource", void 0);
|
|
@@ -274,7 +276,8 @@ class Inquiry {
|
|
|
274
276
|
this.sessionToken = options.sessionToken;
|
|
275
277
|
this.fields = options.fields;
|
|
276
278
|
this.returnCollectedData = options.returnCollectedData;
|
|
277
|
-
this.routingCountry = options.routingCountry;
|
|
279
|
+
this.routingCountry = options.routingCountry;
|
|
280
|
+
this.locale = options.locale; // Callbacks
|
|
278
281
|
|
|
279
282
|
this.onComplete = options.onComplete;
|
|
280
283
|
this.onCanceled = options.onCanceled;
|
|
@@ -418,7 +421,7 @@ class Inquiry {
|
|
|
418
421
|
this.clearListeners();
|
|
419
422
|
});
|
|
420
423
|
this.onErrorListener = eventEmitter.addListener('onError', event => {
|
|
421
|
-
if (this.onError) this.onError(new Error(event.debugMessage));
|
|
424
|
+
if (this.onError) this.onError(new Error(event.debugMessage), event.errorCode);
|
|
422
425
|
this.clearListeners();
|
|
423
426
|
});
|
|
424
427
|
PersonaInquiry2.startInquiry({
|
|
@@ -432,7 +435,8 @@ class Inquiry {
|
|
|
432
435
|
returnCollectedData: this.returnCollectedData,
|
|
433
436
|
themeSource: this.themeSource,
|
|
434
437
|
iosTheme: (0, _util.processThemeValues)(this.iosThemeObject || {}),
|
|
435
|
-
routingCountry: this.routingCountry
|
|
438
|
+
routingCountry: this.routingCountry,
|
|
439
|
+
locale: this.locale
|
|
436
440
|
});
|
|
437
441
|
}
|
|
438
442
|
|
|
@@ -461,6 +465,8 @@ class InquiryBuilder {
|
|
|
461
465
|
|
|
462
466
|
_defineProperty(this, "_routingCountry", void 0);
|
|
463
467
|
|
|
468
|
+
_defineProperty(this, "_locale", void 0);
|
|
469
|
+
|
|
464
470
|
this._inquiryId = inquiryId;
|
|
465
471
|
}
|
|
466
472
|
|
|
@@ -505,6 +511,11 @@ class InquiryBuilder {
|
|
|
505
511
|
return this;
|
|
506
512
|
}
|
|
507
513
|
|
|
514
|
+
locale(locale) {
|
|
515
|
+
this._locale = locale;
|
|
516
|
+
return this;
|
|
517
|
+
}
|
|
518
|
+
|
|
508
519
|
build() {
|
|
509
520
|
return new Inquiry({
|
|
510
521
|
inquiryId: this._inquiryId,
|
|
@@ -515,7 +526,8 @@ class InquiryBuilder {
|
|
|
515
526
|
iosThemeObject: this._iosThemeObject,
|
|
516
527
|
themeSource: this._themeSource,
|
|
517
528
|
fields: this._fields,
|
|
518
|
-
routingCountry: this._routingCountry
|
|
529
|
+
routingCountry: this._routingCountry,
|
|
530
|
+
locale: this._locale
|
|
519
531
|
});
|
|
520
532
|
}
|
|
521
533
|
|
|
@@ -543,6 +555,8 @@ class TemplateBuilder {
|
|
|
543
555
|
|
|
544
556
|
_defineProperty(this, "_routingCountry", void 0);
|
|
545
557
|
|
|
558
|
+
_defineProperty(this, "_locale", void 0);
|
|
559
|
+
|
|
546
560
|
_defineProperty(this, "_onComplete", void 0);
|
|
547
561
|
|
|
548
562
|
_defineProperty(this, "_onCanceled", void 0);
|
|
@@ -601,6 +615,11 @@ class TemplateBuilder {
|
|
|
601
615
|
return this;
|
|
602
616
|
}
|
|
603
617
|
|
|
618
|
+
locale(locale) {
|
|
619
|
+
this._locale = locale;
|
|
620
|
+
return this;
|
|
621
|
+
}
|
|
622
|
+
|
|
604
623
|
onComplete(callback) {
|
|
605
624
|
this._onComplete = callback;
|
|
606
625
|
return this;
|
|
@@ -647,7 +666,8 @@ class TemplateBuilder {
|
|
|
647
666
|
iosThemeObject: this._iosThemeObject,
|
|
648
667
|
themeSource: this._themeSource,
|
|
649
668
|
returnCollectedData: this._returnCollectedData,
|
|
650
|
-
routingCountry: this._routingCountry
|
|
669
|
+
routingCountry: this._routingCountry,
|
|
670
|
+
locale: this._locale
|
|
651
671
|
});
|
|
652
672
|
}
|
|
653
673
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.ts"],"names":["PersonaInquiry2","NativeModules","InvalidTemplateId","Error","InvalidTemplateVersion","InvalidInquiryId","InvalidAccountId","makeInquiryId","candidate","startsWith","makeTemplateId","makeTemplateVersion","makeAccountId","Environment","ThemeSource","RoutingCountry","DocumentStepData","constructor","stepName","documents","GovernmentIdStepData","captures","GovernmentIdCaptureMethod","GovernmentIdCaptureSide","SelfieStepData","centerCapture","leftCapture","rightCapture","SelfieCaptureMethod","UiStepData","componentParams","eventEmitter","NativeEventEmitter","Inquiry","options","templateId","inquiryId","referenceId","accountId","environment","sessionToken","fields","returnCollectedData","routingCountry","onComplete","onCanceled","onError","iosThemeObject","themeSource","clearListeners","onCompleteListener","remove","onCanceledListener","onErrorListener","fromTemplate","TemplateBuilder","fromTemplateVersion","templateVersion","fromInquiry","InquiryBuilder","start","addListener","event","key","Object","keys","field","undefined","InquiryField","Unknown","type","Integer","Number","parseInt","value","Boolean","String","collectedData","stepData","translatedStepData","stepDatum","push","assign","extraData","status","debugMessage","startInquiry","iosTheme","SERVER","_inquiryId","_sessionToken","callback","_onComplete","_onCanceled","_onError","themeObject","_iosThemeObject","_themeSource","CLIENT","iosThemeToUse","_routingCountry","build","_fields","_templateId","_templateVersion","_returnCollectedData","_accountId","_referenceId","_environment","InquiryBuilders"],"mappings":"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","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.startsWith('inq_')) return candidate as InquiryId;\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.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.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.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\n/**\n * Defines the country api requests route to\n */\nexport enum RoutingCountry {\n /**\n * Route api requests to germany servers\n */\n DE = 'de',\n /**\n * Route api requests to us servers\n */\n US = 'us',\n}\n\nexport interface InquiryOptions {\n templateId?: TemplateId;\n templateVersion?: TemplateVersion;\n inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n sessionToken?: string;\n returnCollectedData?: boolean;\n routingCountry?: RoutingCountry;\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) => void;\n\nconst eventEmitter = new NativeEventEmitter(PersonaInquiry2);\n\nexport class Inquiry {\n templateId?: TemplateId;\n inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n sessionToken?: string;\n returnCollectedData?: boolean;\n routingCountry?: RoutingCountry;\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.inquiryId = options.inquiryId;\n this.referenceId = options.referenceId;\n this.accountId = options.accountId;\n this.environment = options.environment;\n this.sessionToken = options.sessionToken;\n this.fields = options.fields;\n this.returnCollectedData = options.returnCollectedData;\n this.routingCountry = options.routingCountry;\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 }) => {\n if (this.onError) this.onError(new Error(event.debugMessage));\n this.clearListeners();\n }\n );\n\n PersonaInquiry2.startInquiry({\n templateId: this.templateId,\n inquiryId: this.inquiryId,\n referenceId: this.referenceId,\n accountId: this.accountId,\n environment: this.environment,\n sessionToken: this.sessionToken,\n fields: this.fields,\n returnCollectedData: this.returnCollectedData,\n themeSource: this.themeSource,\n iosTheme: processThemeValues(this.iosThemeObject || {}),\n routingCountry: this.routingCountry,\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 _routingCountry?: RoutingCountry;\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 routingCountry(routingCountry: RoutingCountry): InquiryBuilder {\n this._routingCountry = routingCountry;\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 routingCountry: this._routingCountry,\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 _fields?: Fields;\n private _sessionToken?: string;\n private _returnCollectedData?: boolean;\n private _routingCountry?: RoutingCountry;\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 this._accountId = undefined;\n this._referenceId = referenceId;\n\n return this;\n }\n\n accountId(accountId: string): TemplateBuilder {\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 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 routingCountry(routingCountry: RoutingCountry): TemplateBuilder {\n this._routingCountry = routingCountry;\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 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 routingCountry: this._routingCountry,\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"]}
|
|
1
|
+
{"version":3,"sources":["index.ts"],"names":["PersonaInquiry2","NativeModules","InvalidTemplateId","Error","InvalidTemplateVersion","InvalidInquiryId","InvalidAccountId","makeInquiryId","candidate","startsWith","makeTemplateId","makeTemplateVersion","makeAccountId","Environment","ThemeSource","RoutingCountry","DocumentStepData","constructor","stepName","documents","GovernmentIdStepData","captures","GovernmentIdCaptureMethod","GovernmentIdCaptureSide","SelfieStepData","centerCapture","leftCapture","rightCapture","SelfieCaptureMethod","UiStepData","componentParams","eventEmitter","NativeEventEmitter","Inquiry","options","templateId","inquiryId","referenceId","accountId","environment","sessionToken","fields","returnCollectedData","routingCountry","locale","onComplete","onCanceled","onError","iosThemeObject","themeSource","clearListeners","onCompleteListener","remove","onCanceledListener","onErrorListener","fromTemplate","TemplateBuilder","fromTemplateVersion","templateVersion","fromInquiry","InquiryBuilder","start","addListener","event","key","Object","keys","field","undefined","InquiryField","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","_routingCountry","_locale","build","_fields","_templateId","_templateVersion","_returnCollectedData","_accountId","_referenceId","_environment","InquiryBuilders"],"mappings":"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","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.startsWith('inq_')) return candidate as InquiryId;\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.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.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.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\n/**\n * Defines the country api requests route to\n */\nexport enum RoutingCountry {\n /**\n * Route api requests to germany servers\n */\n DE = 'de',\n /**\n * Route api requests to us servers\n */\n US = 'us',\n}\n\nexport interface InquiryOptions {\n templateId?: TemplateId;\n templateVersion?: TemplateVersion;\n inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n sessionToken?: string;\n returnCollectedData?: boolean;\n routingCountry?: RoutingCountry;\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 inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n sessionToken?: string;\n returnCollectedData?: boolean;\n routingCountry?: RoutingCountry;\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.inquiryId = options.inquiryId;\n this.referenceId = options.referenceId;\n this.accountId = options.accountId;\n this.environment = options.environment;\n this.sessionToken = options.sessionToken;\n this.fields = options.fields;\n this.returnCollectedData = options.returnCollectedData;\n this.routingCountry = options.routingCountry;\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 inquiryId: this.inquiryId,\n referenceId: this.referenceId,\n accountId: this.accountId,\n environment: this.environment,\n sessionToken: this.sessionToken,\n fields: this.fields,\n returnCollectedData: this.returnCollectedData,\n themeSource: this.themeSource,\n iosTheme: processThemeValues(this.iosThemeObject || {}),\n routingCountry: this.routingCountry,\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 _routingCountry?: RoutingCountry;\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 routingCountry(routingCountry: RoutingCountry): InquiryBuilder {\n this._routingCountry = routingCountry;\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 routingCountry: this._routingCountry,\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 _fields?: Fields;\n private _sessionToken?: string;\n private _returnCollectedData?: boolean;\n private _routingCountry?: RoutingCountry;\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 this._accountId = undefined;\n this._referenceId = referenceId;\n\n return this;\n }\n\n accountId(accountId: string): TemplateBuilder {\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 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 routingCountry(routingCountry: RoutingCountry): TemplateBuilder {\n this._routingCountry = routingCountry;\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 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 routingCountry: this._routingCountry,\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"]}
|
package/lib/module/index.js
CHANGED
|
@@ -195,6 +195,8 @@ export class Inquiry {
|
|
|
195
195
|
|
|
196
196
|
_defineProperty(this, "routingCountry", void 0);
|
|
197
197
|
|
|
198
|
+
_defineProperty(this, "locale", void 0);
|
|
199
|
+
|
|
198
200
|
_defineProperty(this, "iosThemeObject", void 0);
|
|
199
201
|
|
|
200
202
|
_defineProperty(this, "themeSource", void 0);
|
|
@@ -221,7 +223,8 @@ export class Inquiry {
|
|
|
221
223
|
this.sessionToken = options.sessionToken;
|
|
222
224
|
this.fields = options.fields;
|
|
223
225
|
this.returnCollectedData = options.returnCollectedData;
|
|
224
|
-
this.routingCountry = options.routingCountry;
|
|
226
|
+
this.routingCountry = options.routingCountry;
|
|
227
|
+
this.locale = options.locale; // Callbacks
|
|
225
228
|
|
|
226
229
|
this.onComplete = options.onComplete;
|
|
227
230
|
this.onCanceled = options.onCanceled;
|
|
@@ -365,7 +368,7 @@ export class Inquiry {
|
|
|
365
368
|
this.clearListeners();
|
|
366
369
|
});
|
|
367
370
|
this.onErrorListener = eventEmitter.addListener('onError', event => {
|
|
368
|
-
if (this.onError) this.onError(new Error(event.debugMessage));
|
|
371
|
+
if (this.onError) this.onError(new Error(event.debugMessage), event.errorCode);
|
|
369
372
|
this.clearListeners();
|
|
370
373
|
});
|
|
371
374
|
PersonaInquiry2.startInquiry({
|
|
@@ -379,7 +382,8 @@ export class Inquiry {
|
|
|
379
382
|
returnCollectedData: this.returnCollectedData,
|
|
380
383
|
themeSource: this.themeSource,
|
|
381
384
|
iosTheme: processThemeValues(this.iosThemeObject || {}),
|
|
382
|
-
routingCountry: this.routingCountry
|
|
385
|
+
routingCountry: this.routingCountry,
|
|
386
|
+
locale: this.locale
|
|
383
387
|
});
|
|
384
388
|
}
|
|
385
389
|
|
|
@@ -406,6 +410,8 @@ class InquiryBuilder {
|
|
|
406
410
|
|
|
407
411
|
_defineProperty(this, "_routingCountry", void 0);
|
|
408
412
|
|
|
413
|
+
_defineProperty(this, "_locale", void 0);
|
|
414
|
+
|
|
409
415
|
this._inquiryId = inquiryId;
|
|
410
416
|
}
|
|
411
417
|
|
|
@@ -450,6 +456,11 @@ class InquiryBuilder {
|
|
|
450
456
|
return this;
|
|
451
457
|
}
|
|
452
458
|
|
|
459
|
+
locale(locale) {
|
|
460
|
+
this._locale = locale;
|
|
461
|
+
return this;
|
|
462
|
+
}
|
|
463
|
+
|
|
453
464
|
build() {
|
|
454
465
|
return new Inquiry({
|
|
455
466
|
inquiryId: this._inquiryId,
|
|
@@ -460,7 +471,8 @@ class InquiryBuilder {
|
|
|
460
471
|
iosThemeObject: this._iosThemeObject,
|
|
461
472
|
themeSource: this._themeSource,
|
|
462
473
|
fields: this._fields,
|
|
463
|
-
routingCountry: this._routingCountry
|
|
474
|
+
routingCountry: this._routingCountry,
|
|
475
|
+
locale: this._locale
|
|
464
476
|
});
|
|
465
477
|
}
|
|
466
478
|
|
|
@@ -488,6 +500,8 @@ class TemplateBuilder {
|
|
|
488
500
|
|
|
489
501
|
_defineProperty(this, "_routingCountry", void 0);
|
|
490
502
|
|
|
503
|
+
_defineProperty(this, "_locale", void 0);
|
|
504
|
+
|
|
491
505
|
_defineProperty(this, "_onComplete", void 0);
|
|
492
506
|
|
|
493
507
|
_defineProperty(this, "_onCanceled", void 0);
|
|
@@ -546,6 +560,11 @@ class TemplateBuilder {
|
|
|
546
560
|
return this;
|
|
547
561
|
}
|
|
548
562
|
|
|
563
|
+
locale(locale) {
|
|
564
|
+
this._locale = locale;
|
|
565
|
+
return this;
|
|
566
|
+
}
|
|
567
|
+
|
|
549
568
|
onComplete(callback) {
|
|
550
569
|
this._onComplete = callback;
|
|
551
570
|
return this;
|
|
@@ -592,7 +611,8 @@ class TemplateBuilder {
|
|
|
592
611
|
iosThemeObject: this._iosThemeObject,
|
|
593
612
|
themeSource: this._themeSource,
|
|
594
613
|
returnCollectedData: this._returnCollectedData,
|
|
595
|
-
routingCountry: this._routingCountry
|
|
614
|
+
routingCountry: this._routingCountry,
|
|
615
|
+
locale: this._locale
|
|
596
616
|
});
|
|
597
617
|
}
|
|
598
618
|
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.ts"],"names":["NativeEventEmitter","NativeModules","processThemeValues","Fields","InquiryField","Versions","PersonaInquiry2","InvalidTemplateId","Error","InvalidTemplateVersion","InvalidInquiryId","InvalidAccountId","makeInquiryId","candidate","startsWith","makeTemplateId","makeTemplateVersion","makeAccountId","Environment","ThemeSource","RoutingCountry","DocumentStepData","constructor","stepName","documents","GovernmentIdStepData","captures","GovernmentIdCaptureMethod","GovernmentIdCaptureSide","SelfieStepData","centerCapture","leftCapture","rightCapture","SelfieCaptureMethod","UiStepData","componentParams","eventEmitter","Inquiry","options","templateId","inquiryId","referenceId","accountId","environment","sessionToken","fields","returnCollectedData","routingCountry","onComplete","onCanceled","onError","iosThemeObject","themeSource","clearListeners","onCompleteListener","remove","onCanceledListener","onErrorListener","fromTemplate","TemplateBuilder","fromTemplateVersion","templateVersion","fromInquiry","InquiryBuilder","start","addListener","event","key","Object","keys","field","undefined","Unknown","type","Integer","Number","parseInt","value","Boolean","String","collectedData","stepData","translatedStepData","stepDatum","push","assign","extraData","status","debugMessage","startInquiry","iosTheme","SERVER","_inquiryId","_sessionToken","callback","_onComplete","_onCanceled","_onError","themeObject","_iosThemeObject","_themeSource","CLIENT","iosThemeToUse","_routingCountry","build","_fields","_templateId","_templateVersion","_returnCollectedData","_accountId","_referenceId","_environment","InquiryBuilders"],"mappings":"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","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.startsWith('inq_')) return candidate as InquiryId;\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.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.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.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\n/**\n * Defines the country api requests route to\n */\nexport enum RoutingCountry {\n /**\n * Route api requests to germany servers\n */\n DE = 'de',\n /**\n * Route api requests to us servers\n */\n US = 'us',\n}\n\nexport interface InquiryOptions {\n templateId?: TemplateId;\n templateVersion?: TemplateVersion;\n inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n sessionToken?: string;\n returnCollectedData?: boolean;\n routingCountry?: RoutingCountry;\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) => void;\n\nconst eventEmitter = new NativeEventEmitter(PersonaInquiry2);\n\nexport class Inquiry {\n templateId?: TemplateId;\n inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n sessionToken?: string;\n returnCollectedData?: boolean;\n routingCountry?: RoutingCountry;\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.inquiryId = options.inquiryId;\n this.referenceId = options.referenceId;\n this.accountId = options.accountId;\n this.environment = options.environment;\n this.sessionToken = options.sessionToken;\n this.fields = options.fields;\n this.returnCollectedData = options.returnCollectedData;\n this.routingCountry = options.routingCountry;\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 }) => {\n if (this.onError) this.onError(new Error(event.debugMessage));\n this.clearListeners();\n }\n );\n\n PersonaInquiry2.startInquiry({\n templateId: this.templateId,\n inquiryId: this.inquiryId,\n referenceId: this.referenceId,\n accountId: this.accountId,\n environment: this.environment,\n sessionToken: this.sessionToken,\n fields: this.fields,\n returnCollectedData: this.returnCollectedData,\n themeSource: this.themeSource,\n iosTheme: processThemeValues(this.iosThemeObject || {}),\n routingCountry: this.routingCountry,\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 _routingCountry?: RoutingCountry;\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 routingCountry(routingCountry: RoutingCountry): InquiryBuilder {\n this._routingCountry = routingCountry;\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 routingCountry: this._routingCountry,\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 _fields?: Fields;\n private _sessionToken?: string;\n private _returnCollectedData?: boolean;\n private _routingCountry?: RoutingCountry;\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 this._accountId = undefined;\n this._referenceId = referenceId;\n\n return this;\n }\n\n accountId(accountId: string): TemplateBuilder {\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 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 routingCountry(routingCountry: RoutingCountry): TemplateBuilder {\n this._routingCountry = routingCountry;\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 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 routingCountry: this._routingCountry,\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"]}
|
|
1
|
+
{"version":3,"sources":["index.ts"],"names":["NativeEventEmitter","NativeModules","processThemeValues","Fields","InquiryField","Versions","PersonaInquiry2","InvalidTemplateId","Error","InvalidTemplateVersion","InvalidInquiryId","InvalidAccountId","makeInquiryId","candidate","startsWith","makeTemplateId","makeTemplateVersion","makeAccountId","Environment","ThemeSource","RoutingCountry","DocumentStepData","constructor","stepName","documents","GovernmentIdStepData","captures","GovernmentIdCaptureMethod","GovernmentIdCaptureSide","SelfieStepData","centerCapture","leftCapture","rightCapture","SelfieCaptureMethod","UiStepData","componentParams","eventEmitter","Inquiry","options","templateId","inquiryId","referenceId","accountId","environment","sessionToken","fields","returnCollectedData","routingCountry","locale","onComplete","onCanceled","onError","iosThemeObject","themeSource","clearListeners","onCompleteListener","remove","onCanceledListener","onErrorListener","fromTemplate","TemplateBuilder","fromTemplateVersion","templateVersion","fromInquiry","InquiryBuilder","start","addListener","event","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","_routingCountry","_locale","build","_fields","_templateId","_templateVersion","_returnCollectedData","_accountId","_referenceId","_environment","InquiryBuilders"],"mappings":"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","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.startsWith('inq_')) return candidate as InquiryId;\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.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.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.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\n/**\n * Defines the country api requests route to\n */\nexport enum RoutingCountry {\n /**\n * Route api requests to germany servers\n */\n DE = 'de',\n /**\n * Route api requests to us servers\n */\n US = 'us',\n}\n\nexport interface InquiryOptions {\n templateId?: TemplateId;\n templateVersion?: TemplateVersion;\n inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n sessionToken?: string;\n returnCollectedData?: boolean;\n routingCountry?: RoutingCountry;\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 inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n sessionToken?: string;\n returnCollectedData?: boolean;\n routingCountry?: RoutingCountry;\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.inquiryId = options.inquiryId;\n this.referenceId = options.referenceId;\n this.accountId = options.accountId;\n this.environment = options.environment;\n this.sessionToken = options.sessionToken;\n this.fields = options.fields;\n this.returnCollectedData = options.returnCollectedData;\n this.routingCountry = options.routingCountry;\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 inquiryId: this.inquiryId,\n referenceId: this.referenceId,\n accountId: this.accountId,\n environment: this.environment,\n sessionToken: this.sessionToken,\n fields: this.fields,\n returnCollectedData: this.returnCollectedData,\n themeSource: this.themeSource,\n iosTheme: processThemeValues(this.iosThemeObject || {}),\n routingCountry: this.routingCountry,\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 _routingCountry?: RoutingCountry;\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 routingCountry(routingCountry: RoutingCountry): InquiryBuilder {\n this._routingCountry = routingCountry;\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 routingCountry: this._routingCountry,\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 _fields?: Fields;\n private _sessionToken?: string;\n private _returnCollectedData?: boolean;\n private _routingCountry?: RoutingCountry;\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 this._accountId = undefined;\n this._referenceId = referenceId;\n\n return this;\n }\n\n accountId(accountId: string): TemplateBuilder {\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 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 routingCountry(routingCountry: RoutingCountry): TemplateBuilder {\n this._routingCountry = routingCountry;\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 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 routingCountry: this._routingCountry,\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"]}
|
|
@@ -60,6 +60,7 @@ export interface InquiryOptions {
|
|
|
60
60
|
sessionToken?: string;
|
|
61
61
|
returnCollectedData?: boolean;
|
|
62
62
|
routingCountry?: RoutingCountry;
|
|
63
|
+
locale?: String;
|
|
63
64
|
fields?: Fields;
|
|
64
65
|
onComplete?: OnCompleteCallback;
|
|
65
66
|
onCanceled?: OnCanceledCallback;
|
|
@@ -131,7 +132,7 @@ export declare class UiStepData implements StepData {
|
|
|
131
132
|
constructor();
|
|
132
133
|
}
|
|
133
134
|
declare type OnCanceledCallback = (inquiryId?: string, sessionToken?: string) => void;
|
|
134
|
-
declare type OnErrorCallback = (error: Error) => void;
|
|
135
|
+
declare type OnErrorCallback = (error: Error, errorCode?: string) => void;
|
|
135
136
|
export declare class Inquiry {
|
|
136
137
|
templateId?: TemplateId;
|
|
137
138
|
inquiryId?: InquiryId;
|
|
@@ -141,6 +142,7 @@ export declare class Inquiry {
|
|
|
141
142
|
sessionToken?: string;
|
|
142
143
|
returnCollectedData?: boolean;
|
|
143
144
|
routingCountry?: RoutingCountry;
|
|
145
|
+
locale?: String;
|
|
144
146
|
iosThemeObject?: Object | null;
|
|
145
147
|
themeSource?: ThemeSource | null;
|
|
146
148
|
fields?: Fields | null;
|
|
@@ -200,6 +202,7 @@ declare class InquiryBuilder {
|
|
|
200
202
|
private _themeSource;
|
|
201
203
|
private _fields?;
|
|
202
204
|
private _routingCountry?;
|
|
205
|
+
private _locale?;
|
|
203
206
|
constructor(inquiryId: InquiryId);
|
|
204
207
|
sessionToken(sessionToken: string): InquiryBuilder;
|
|
205
208
|
onComplete(callback: OnCompleteCallback): InquiryBuilder;
|
|
@@ -211,6 +214,7 @@ declare class InquiryBuilder {
|
|
|
211
214
|
iosTheme(themeObject: Object): InquiryBuilder;
|
|
212
215
|
iosThemeToUse(themeObject: Object, themeSource: ThemeSource): InquiryBuilder;
|
|
213
216
|
routingCountry(routingCountry: RoutingCountry): InquiryBuilder;
|
|
217
|
+
locale(locale: string): InquiryBuilder;
|
|
214
218
|
build(): Inquiry;
|
|
215
219
|
}
|
|
216
220
|
declare class TemplateBuilder {
|
|
@@ -223,6 +227,7 @@ declare class TemplateBuilder {
|
|
|
223
227
|
private _sessionToken?;
|
|
224
228
|
private _returnCollectedData?;
|
|
225
229
|
private _routingCountry?;
|
|
230
|
+
private _locale?;
|
|
226
231
|
private _onComplete?;
|
|
227
232
|
private _onCanceled?;
|
|
228
233
|
private _onError?;
|
|
@@ -236,6 +241,7 @@ declare class TemplateBuilder {
|
|
|
236
241
|
sessionToken(sessionToken: string): TemplateBuilder;
|
|
237
242
|
fields(fields: Fields): TemplateBuilder;
|
|
238
243
|
routingCountry(routingCountry: RoutingCountry): TemplateBuilder;
|
|
244
|
+
locale(locale: string): TemplateBuilder;
|
|
239
245
|
onComplete(callback: OnCompleteCallback): TemplateBuilder;
|
|
240
246
|
onCanceled(callback: OnCanceledCallback): TemplateBuilder;
|
|
241
247
|
onError(callback: OnErrorCallback): TemplateBuilder;
|
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.6.
|
|
4
|
+
"version": "2.6.5",
|
|
5
5
|
"description": "Launch a mobile native implementation of the Persona inquiry flow from React Native.",
|
|
6
6
|
"main": "lib/commonjs/index",
|
|
7
7
|
"module": "lib/module/index",
|
package/src/index.ts
CHANGED
|
@@ -139,6 +139,7 @@ export interface InquiryOptions {
|
|
|
139
139
|
sessionToken?: string;
|
|
140
140
|
returnCollectedData?: boolean;
|
|
141
141
|
routingCountry?: RoutingCountry;
|
|
142
|
+
locale?: String;
|
|
142
143
|
|
|
143
144
|
// Fields
|
|
144
145
|
fields?: Fields;
|
|
@@ -261,7 +262,7 @@ export class UiStepData implements StepData {
|
|
|
261
262
|
|
|
262
263
|
type OnCanceledCallback = (inquiryId?: string, sessionToken?: string) => void;
|
|
263
264
|
|
|
264
|
-
type OnErrorCallback = (error: Error) => void;
|
|
265
|
+
type OnErrorCallback = (error: Error, errorCode?: string) => void;
|
|
265
266
|
|
|
266
267
|
const eventEmitter = new NativeEventEmitter(PersonaInquiry2);
|
|
267
268
|
|
|
@@ -274,6 +275,7 @@ export class Inquiry {
|
|
|
274
275
|
sessionToken?: string;
|
|
275
276
|
returnCollectedData?: boolean;
|
|
276
277
|
routingCountry?: RoutingCountry;
|
|
278
|
+
locale?: String;
|
|
277
279
|
|
|
278
280
|
iosThemeObject?: Object | null;
|
|
279
281
|
themeSource?: ThemeSource | null;
|
|
@@ -297,6 +299,7 @@ export class Inquiry {
|
|
|
297
299
|
this.fields = options.fields;
|
|
298
300
|
this.returnCollectedData = options.returnCollectedData;
|
|
299
301
|
this.routingCountry = options.routingCountry;
|
|
302
|
+
this.locale = options.locale;
|
|
300
303
|
|
|
301
304
|
// Callbacks
|
|
302
305
|
this.onComplete = options.onComplete;
|
|
@@ -452,8 +455,9 @@ export class Inquiry {
|
|
|
452
455
|
|
|
453
456
|
this.onErrorListener = eventEmitter.addListener(
|
|
454
457
|
'onError',
|
|
455
|
-
(event: { debugMessage: string }) => {
|
|
456
|
-
if (this.onError)
|
|
458
|
+
(event: { debugMessage: string; errorCode?: string }) => {
|
|
459
|
+
if (this.onError)
|
|
460
|
+
this.onError(new Error(event.debugMessage), event.errorCode);
|
|
457
461
|
this.clearListeners();
|
|
458
462
|
}
|
|
459
463
|
);
|
|
@@ -470,6 +474,7 @@ export class Inquiry {
|
|
|
470
474
|
themeSource: this.themeSource,
|
|
471
475
|
iosTheme: processThemeValues(this.iosThemeObject || {}),
|
|
472
476
|
routingCountry: this.routingCountry,
|
|
477
|
+
locale: this.locale,
|
|
473
478
|
});
|
|
474
479
|
}
|
|
475
480
|
}
|
|
@@ -486,6 +491,7 @@ class InquiryBuilder {
|
|
|
486
491
|
private _themeSource: ThemeSource = ThemeSource.SERVER;
|
|
487
492
|
private _fields?: Fields;
|
|
488
493
|
private _routingCountry?: RoutingCountry;
|
|
494
|
+
private _locale?: string;
|
|
489
495
|
|
|
490
496
|
constructor(inquiryId: InquiryId) {
|
|
491
497
|
this._inquiryId = inquiryId;
|
|
@@ -538,6 +544,12 @@ class InquiryBuilder {
|
|
|
538
544
|
return this;
|
|
539
545
|
}
|
|
540
546
|
|
|
547
|
+
locale(locale: string): InquiryBuilder {
|
|
548
|
+
this._locale = locale;
|
|
549
|
+
|
|
550
|
+
return this;
|
|
551
|
+
}
|
|
552
|
+
|
|
541
553
|
build(): Inquiry {
|
|
542
554
|
return new Inquiry({
|
|
543
555
|
inquiryId: this._inquiryId,
|
|
@@ -549,6 +561,7 @@ class InquiryBuilder {
|
|
|
549
561
|
themeSource: this._themeSource,
|
|
550
562
|
fields: this._fields,
|
|
551
563
|
routingCountry: this._routingCountry,
|
|
564
|
+
locale: this._locale,
|
|
552
565
|
});
|
|
553
566
|
}
|
|
554
567
|
}
|
|
@@ -563,6 +576,7 @@ class TemplateBuilder {
|
|
|
563
576
|
private _sessionToken?: string;
|
|
564
577
|
private _returnCollectedData?: boolean;
|
|
565
578
|
private _routingCountry?: RoutingCountry;
|
|
579
|
+
private _locale?: string;
|
|
566
580
|
|
|
567
581
|
// Callbacks
|
|
568
582
|
private _onComplete?: OnCompleteCallback;
|
|
@@ -633,6 +647,12 @@ class TemplateBuilder {
|
|
|
633
647
|
return this;
|
|
634
648
|
}
|
|
635
649
|
|
|
650
|
+
locale(locale: string): TemplateBuilder {
|
|
651
|
+
this._locale = locale;
|
|
652
|
+
|
|
653
|
+
return this;
|
|
654
|
+
}
|
|
655
|
+
|
|
636
656
|
onComplete(callback: OnCompleteCallback): TemplateBuilder {
|
|
637
657
|
this._onComplete = callback;
|
|
638
658
|
|
|
@@ -687,6 +707,7 @@ class TemplateBuilder {
|
|
|
687
707
|
themeSource: this._themeSource,
|
|
688
708
|
returnCollectedData: this._returnCollectedData,
|
|
689
709
|
routingCountry: this._routingCountry,
|
|
710
|
+
locale: this._locale,
|
|
690
711
|
});
|
|
691
712
|
}
|
|
692
713
|
}
|