react-native-persona 2.7.0 → 2.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/RNPersonaInquiry2.podspec +2 -2
  2. package/android/build.gradle +8 -12
  3. package/android/gradle.properties +0 -1
  4. package/android/src/main/java/com/withpersona/sdk2/reactnative/PersonaInquiryModule2.java +7 -0
  5. package/ios/PersonaInquiry2.swift +10 -3
  6. package/lib/commonjs/fields.js +9 -44
  7. package/lib/commonjs/fields.js.map +1 -1
  8. package/lib/commonjs/index.js +73 -206
  9. package/lib/commonjs/index.js.map +1 -1
  10. package/lib/commonjs/persona-tool/AndroidResourcePrinter.js +48 -83
  11. package/lib/commonjs/persona-tool/AndroidResourcePrinter.js.map +1 -1
  12. package/lib/commonjs/persona-tool/Config.js +3 -20
  13. package/lib/commonjs/persona-tool/Config.js.map +1 -1
  14. package/lib/commonjs/persona-tool/Theme.js +12 -36
  15. package/lib/commonjs/persona-tool/Theme.js.map +1 -1
  16. package/lib/commonjs/persona-tool/index.js +0 -10
  17. package/lib/commonjs/persona-tool/index.js.map +1 -1
  18. package/lib/commonjs/persona-tool/prompts.js +0 -6
  19. package/lib/commonjs/persona-tool/prompts.js.map +1 -1
  20. package/lib/commonjs/persona-tool/tools/AndroidThemeGenerator.js +2 -27
  21. package/lib/commonjs/persona-tool/tools/AndroidThemeGenerator.js.map +1 -1
  22. package/lib/commonjs/persona-tool/tools/IosThemeInstructions.js +0 -10
  23. package/lib/commonjs/persona-tool/tools/IosThemeInstructions.js.map +1 -1
  24. package/lib/commonjs/util.js +0 -6
  25. package/lib/commonjs/util.js.map +1 -1
  26. package/lib/commonjs/versions.js +0 -5
  27. package/lib/commonjs/versions.js.map +1 -1
  28. package/lib/module/fields.js +9 -43
  29. package/lib/module/fields.js.map +1 -1
  30. package/lib/module/index.js +70 -177
  31. package/lib/module/index.js.map +1 -1
  32. package/lib/module/persona-tool/AndroidResourcePrinter.js +48 -82
  33. package/lib/module/persona-tool/AndroidResourcePrinter.js.map +1 -1
  34. package/lib/module/persona-tool/Config.js +3 -15
  35. package/lib/module/persona-tool/Config.js.map +1 -1
  36. package/lib/module/persona-tool/Theme.js +10 -28
  37. package/lib/module/persona-tool/Theme.js.map +1 -1
  38. package/lib/module/persona-tool/index.js +0 -5
  39. package/lib/module/persona-tool/index.js.map +1 -1
  40. package/lib/module/persona-tool/prompts.js.map +1 -1
  41. package/lib/module/persona-tool/tools/AndroidThemeGenerator.js +2 -8
  42. package/lib/module/persona-tool/tools/AndroidThemeGenerator.js.map +1 -1
  43. package/lib/module/persona-tool/tools/IosThemeInstructions.js +0 -5
  44. package/lib/module/persona-tool/tools/IosThemeInstructions.js.map +1 -1
  45. package/lib/module/util.js +0 -5
  46. package/lib/module/util.js.map +1 -1
  47. package/lib/module/versions.js +0 -1
  48. package/lib/module/versions.js.map +1 -1
  49. package/lib/typescript/fields.d.ts +2 -2
  50. package/lib/typescript/index.d.ts +14 -8
  51. package/lib/typescript/persona-tool/Theme.d.ts +3 -3
  52. package/package.json +2 -2
  53. package/src/index.ts +20 -0
@@ -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","templateVersion","inquiryId","referenceId","accountId","environment","environmentId","sessionToken","fields","returnCollectedData","routingCountry","onComplete","onCanceled","onError","iosThemeObject","themeSource","clearListeners","onCompleteListener","remove","onCanceledListener","onErrorListener","fromTemplate","TemplateBuilder","fromTemplateVersion","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","_environmentId","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 && candidate.startsWith('inq_')) {\n return candidate as InquiryId;\n }\n\n throw new InvalidInquiryId(\n `Valid template IDs start with \"inq_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template token format\n * and do a type conversion to TemplateId.\n *\n * @param candidate\n */\nfunction makeTemplateId(candidate: string): TemplateId {\n if (candidate && candidate.startsWith('itmpl_')) {\n return candidate as TemplateId;\n }\n\n throw new InvalidTemplateId(\n `Valid template IDs start with \"itmpl_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template Version token format\n * and do a type conversion to TemplateVersion.\n *\n * @param candidate\n */\nfunction makeTemplateVersion(candidate: string): TemplateVersion {\n if (candidate && candidate.startsWith('itmplv_')) {\n return candidate as TemplateVersion;\n }\n\n throw new InvalidTemplateVersion(\n `Valid template versions start with \"itmplv_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template token format\n * and do a type conversion to AccountId.\n *\n * @param candidate\n */\nfunction makeAccountId(candidate: string): AccountId {\n if (candidate && candidate.startsWith('act_')) {\n return candidate as AccountId;\n }\n\n throw new InvalidAccountId(\n `Valid account IDs start with \"act_\". Received: ${candidate} `\n );\n}\n\n/**\n * String enum for environments. These strings will be parsed\n * on the native side bridge into Kotlin / Swift enums.\n */\nexport enum Environment {\n SANDBOX = 'sandbox',\n PRODUCTION = 'production',\n}\n\n/**\n * An enum value which determines whether this sdk should use the theme values sent from the server.\n */\nexport enum ThemeSource {\n SERVER = 'server',\n /**\n * @deprecated Client side theming is deprecated, please configure your theme inside\n * the Persona Dashboard and use SERVER as the theme source.\n */\n CLIENT = 'client',\n}\n\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 environmentId?: string;\n sessionToken?: string;\n returnCollectedData?: boolean;\n routingCountry?: 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) => void;\n\nconst eventEmitter = new NativeEventEmitter(PersonaInquiry2);\n\nexport class Inquiry {\n templateId?: TemplateId;\n templateVersion?: TemplateVersion;\n inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n environmentId?: string;\n sessionToken?: string;\n returnCollectedData?: boolean;\n routingCountry?: string;\n\n iosThemeObject?: Object | null;\n themeSource?: ThemeSource | null;\n fields?: Fields | null;\n\n private readonly onComplete?: OnCompleteCallback;\n private readonly onCanceled?: OnCanceledCallback;\n private readonly onError?: OnErrorCallback;\n\n private onCompleteListener?: EventSubscription;\n private onCanceledListener?: EventSubscription;\n private onErrorListener?: EventSubscription;\n\n constructor(options: InquiryOptions) {\n this.templateId = options.templateId;\n this.templateVersion = options.templateVersion;\n this.inquiryId = options.inquiryId;\n this.referenceId = options.referenceId;\n this.accountId = options.accountId;\n this.environment = options.environment;\n this.environmentId = options.environmentId;\n this.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 templateVersion: this.templateVersion,\n inquiryId: this.inquiryId,\n referenceId: this.referenceId,\n accountId: this.accountId,\n environment: this.environment,\n environmentId: this.environmentId,\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?: 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: string): 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 _environmentId?: string;\n private _fields?: Fields;\n private _sessionToken?: string;\n private _returnCollectedData?: boolean;\n private _routingCountry?: 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 environmentId(environmentId: string): TemplateBuilder {\n this._environmentId = environmentId;\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: string): 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 environmentId: this._environmentId,\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,"names":["NativeEventEmitter","NativeModules","processThemeValues","Fields","InquiryField","Versions","PersonaInquiry2","InvalidTemplateId","Error","InvalidTemplateVersion","InvalidInquiryId","InvalidAccountId","makeInquiryId","candidate","startsWith","makeTemplateId","makeTemplateVersion","makeAccountId","Environment","ThemeSource","RoutingCountry","DocumentStepData","constructor","_defineProperty","stepName","documents","GovernmentIdStepData","captures","GovernmentIdCaptureMethod","GovernmentIdCaptureSide","SelfieStepData","centerCapture","leftCapture","rightCapture","SelfieCaptureMethod","UiStepData","componentParams","eventEmitter","Inquiry","options","templateId","templateVersion","inquiryId","referenceId","accountId","environment","environmentId","sessionToken","fields","returnCollectedData","routingCountry","locale","onComplete","onCanceled","onError","iosThemeObject","themeSource","clearListeners","onCompleteListener","remove","onCanceledListener","onErrorListener","fromTemplate","TemplateBuilder","fromTemplateVersion","fromInquiry","InquiryBuilder","start","addListener","event","_event$collectedData","key","Object","keys","field","undefined","Unknown","type","Integer","Number","parseInt","value","Boolean","String","collectedData","stepData","translatedStepData","stepDatum","push","assign","extraData","status","debugMessage","startInquiry","iosTheme","SERVER","_inquiryId","_sessionToken","callback","_onComplete","_onCanceled","_onError","themeObject","_iosThemeObject","_themeSource","CLIENT","iosThemeToUse","_routingCountry","_locale","build","_fields","_templateId","_templateVersion","_returnCollectedData","_accountId","_referenceId","_environment","_environmentId","InquiryBuilders","_InquiryBuilders"],"sources":["index.ts"],"sourcesContent":["import {\n EventSubscription,\n NativeEventEmitter,\n NativeModules,\n} from 'react-native';\nimport { processThemeValues } from './util';\nimport { Fields, InquiryField, RawInquiryField } from './fields';\n\nexport { Fields };\n\nimport { Versions } from './versions';\n\nexport { Versions };\n\nconst { PersonaInquiry2 } = NativeModules;\n\n// Using Opaque types + Smart Constructor enforces validation at\n// instantiation time for IDS\ndeclare const Unique: unique symbol;\nexport type Opaque<T, Tag> = T & { [Unique]: Tag };\n\ntype TemplateId = Opaque<string, 'TemplateId'>;\ntype TemplateVersion = Opaque<string, 'TemplateVersion'>;\ntype InquiryId = Opaque<string, 'InquiryId'>;\ntype AccountId = Opaque<string, 'AccountId'>;\n\nexport class InvalidTemplateId extends Error {}\n\nexport class InvalidTemplateVersion extends Error {}\n\nexport class InvalidInquiryId extends Error {}\n\nexport class InvalidAccountId extends Error {}\n\n/**\n * Run validations that the string is in proper Inquiry token format\n * and do a type conversion to InquiryId.\n *\n * @param candidate\n */\nfunction makeInquiryId(candidate: string): InquiryId {\n if (candidate && candidate.startsWith('inq_')) {\n return candidate as InquiryId;\n }\n\n throw new InvalidInquiryId(\n `Valid template IDs start with \"inq_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template token format\n * and do a type conversion to TemplateId.\n *\n * @param candidate\n */\nfunction makeTemplateId(candidate: string): TemplateId {\n if (candidate && candidate.startsWith('itmpl_')) {\n return candidate as TemplateId;\n }\n\n throw new InvalidTemplateId(\n `Valid template IDs start with \"itmpl_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template Version token format\n * and do a type conversion to TemplateVersion.\n *\n * @param candidate\n */\nfunction makeTemplateVersion(candidate: string): TemplateVersion {\n if (candidate && candidate.startsWith('itmplv_')) {\n return candidate as TemplateVersion;\n }\n\n throw new InvalidTemplateVersion(\n `Valid template versions start with \"itmplv_\". Received: ${candidate} `\n );\n}\n\n/**\n * Run validations that the string is in proper Template token format\n * and do a type conversion to AccountId.\n *\n * @param candidate\n */\nfunction makeAccountId(candidate: string): AccountId {\n if (candidate && candidate.startsWith('act_')) {\n return candidate as AccountId;\n }\n\n throw new InvalidAccountId(\n `Valid account IDs start with \"act_\". Received: ${candidate} `\n );\n}\n\n/**\n * String enum for environments. These strings will be parsed\n * on the native side bridge into Kotlin / Swift enums.\n */\nexport enum Environment {\n SANDBOX = 'sandbox',\n PRODUCTION = 'production',\n}\n\n/**\n * An enum value which determines whether this sdk should use the theme values sent from the server.\n */\nexport enum ThemeSource {\n SERVER = 'server',\n /**\n * @deprecated Client side theming is deprecated, please configure your theme inside\n * the Persona Dashboard and use SERVER as the theme source.\n */\n CLIENT = 'client',\n}\n\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 environmentId?: string;\n sessionToken?: string;\n returnCollectedData?: boolean;\n routingCountry?: string;\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) => void;\n\nconst eventEmitter = new NativeEventEmitter(PersonaInquiry2);\n\nexport class Inquiry {\n templateId?: TemplateId;\n templateVersion?: TemplateVersion;\n inquiryId?: InquiryId;\n referenceId?: string;\n accountId?: AccountId;\n environment?: Environment;\n environmentId?: string;\n sessionToken?: string;\n returnCollectedData?: boolean;\n routingCountry?: string;\n locale?: String;\n\n iosThemeObject?: Object | null;\n themeSource?: ThemeSource | null;\n fields?: Fields | null;\n\n private readonly onComplete?: OnCompleteCallback;\n private readonly onCanceled?: OnCanceledCallback;\n private readonly onError?: OnErrorCallback;\n\n private onCompleteListener?: EventSubscription;\n private onCanceledListener?: EventSubscription;\n private onErrorListener?: EventSubscription;\n\n constructor(options: InquiryOptions) {\n this.templateId = options.templateId;\n this.templateVersion = options.templateVersion;\n this.inquiryId = options.inquiryId;\n this.referenceId = options.referenceId;\n this.accountId = options.accountId;\n this.environment = options.environment;\n this.environmentId = options.environmentId;\n this.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 }) => {\n if (this.onError) this.onError(new Error(event.debugMessage));\n this.clearListeners();\n }\n );\n\n PersonaInquiry2.startInquiry({\n templateId: this.templateId,\n templateVersion: this.templateVersion,\n inquiryId: this.inquiryId,\n referenceId: this.referenceId,\n accountId: this.accountId,\n environment: this.environment,\n environmentId: this.environmentId,\n 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?: string;\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: string): 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 _environmentId?: string;\n private _fields?: Fields;\n private _sessionToken?: string;\n private _returnCollectedData?: boolean;\n private _routingCountry?: string;\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 environmentId(environmentId: string): TemplateBuilder {\n this._environmentId = environmentId;\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: string): 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 environmentId: this._environmentId,\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"],"mappings":"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"}
@@ -1,23 +1,16 @@
1
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
-
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
3
4
  import { create as createXml } from 'xmlbuilder2';
4
-
5
5
  class AndroidResourcePrinter {
6
6
  constructor(theme) {
7
7
  _defineProperty(this, "theme", void 0);
8
-
9
8
  _defineProperty(this, "root", void 0);
10
-
11
9
  _defineProperty(this, "buttonDrawable", void 0);
12
-
13
10
  _defineProperty(this, "buttonColor", void 0);
14
-
15
11
  _defineProperty(this, "preprintQueue", []);
16
-
17
12
  _defineProperty(this, "printQueue", []);
18
-
19
13
  _defineProperty(this, "postPrintQueue", []);
20
-
21
14
  this.theme = theme;
22
15
  this.root = createXml({
23
16
  version: '1.0'
@@ -33,21 +26,18 @@ class AndroidResourcePrinter {
33
26
  'xmlns:android': 'http://schemas.android.com/apk/res/android'
34
27
  });
35
28
  }
36
-
37
29
  process() {
38
30
  if (!this.hasTheme()) {
39
31
  this.root = this.root.up();
40
32
  } else {
41
33
  this.print();
42
34
  }
43
-
44
35
  return {
45
36
  style: this.root,
46
37
  buttonDrawable: this.buttonDrawable,
47
38
  buttonColor: this.buttonColor
48
39
  };
49
40
  }
50
-
51
41
  print() {
52
42
  this.primaryColor();
53
43
  this.accentColor();
@@ -55,8 +45,8 @@ class AndroidResourcePrinter {
55
45
  this.backgroundColor();
56
46
  this.titleText();
57
47
  this.bodyText();
58
- this.footnoteText(); // this.formLabelText();
59
-
48
+ this.footnoteText();
49
+ // this.formLabelText();
60
50
  this.textField();
61
51
  this.pickerText();
62
52
  this.button();
@@ -65,8 +55,9 @@ class AndroidResourcePrinter {
65
55
  this.failAsset();
66
56
  this.loadingAnimationAsset();
67
57
  this.selfieAnimationAsset();
68
- this.preprintQueue.forEach(fn => fn()); // Precreate some style namespaces
58
+ this.preprintQueue.forEach(fn => fn());
69
59
 
60
+ // Precreate some style namespaces
70
61
  this.root = this.root.ele('style', {
71
62
  name: 'RN'
72
63
  }).up();
@@ -84,11 +75,9 @@ class AndroidResourcePrinter {
84
75
  this.root = this.root.up();
85
76
  this.postPrintQueue.forEach(fn => fn());
86
77
  }
87
-
88
78
  hasTheme() {
89
79
  return Object.keys(this.theme).length > 0 && Object.values(this.theme).filter(Boolean).length > 0;
90
80
  }
91
-
92
81
  primaryColor() {
93
82
  if (!this.theme.primaryColor) return;
94
83
  this.printQueue.push(() => {
@@ -97,7 +86,6 @@ class AndroidResourcePrinter {
97
86
  }).txt(this.theme.primaryColor).up().txt(' ');
98
87
  });
99
88
  }
100
-
101
89
  accentColor() {
102
90
  if (!this.theme.accentColor) return;
103
91
  this.printQueue.push(() => {
@@ -106,7 +94,6 @@ class AndroidResourcePrinter {
106
94
  }).txt(this.theme.accentColor).up().txt(' ');
107
95
  });
108
96
  }
109
-
110
97
  darkPrimaryColor() {
111
98
  if (!this.theme.darkPrimaryColor) return;
112
99
  this.printQueue.push(() => {
@@ -115,7 +102,6 @@ class AndroidResourcePrinter {
115
102
  }).txt(this.theme.darkPrimaryColor).up().txt(' ');
116
103
  });
117
104
  }
118
-
119
105
  backgroundColor() {
120
106
  if (!this.theme.backgroundColor) return;
121
107
  this.preprintQueue.push(() => {
@@ -129,37 +115,35 @@ class AndroidResourcePrinter {
129
115
  }).txt('@color/customPersonaBackgroundColor').up().txt(' ');
130
116
  });
131
117
  }
132
-
133
118
  titleText() {
134
119
  if (this.theme.titleTextColor || this.theme.titleTextFont) {
135
120
  this.printQueue.push(() => {
136
121
  this.root = this.root.ele('item', {
137
122
  name: 'textAppearanceHeadline6'
138
123
  }).txt('@style/RN.Persona.Text.Title').up();
139
- }); // Create a text appearance
124
+ });
140
125
 
126
+ // Create a text appearance
141
127
  this.postPrintQueue.push(() => {
142
128
  this.root = this.root.ele('style', {
143
129
  name: 'RN.Persona.Text.Title',
144
130
  parent: 'Persona.Inquiry2.Text.Body'
145
131
  });
146
-
147
132
  if (this.theme.titleTextColor) {
148
133
  this.root = this.root.ele('item', {
149
134
  name: 'android:textColor'
150
135
  }).txt(this.theme.titleTextColor).up();
151
136
  }
152
-
153
137
  if (this.theme.titleTextFont) {
154
138
  // TODO: Add notice about how to add a custom font that can be
155
139
  // referenced here on Android
156
140
  this.root = this.root.ele('item', {
157
141
  name: 'android:fontFamily'
158
142
  }).txt(this.theme.titleTextFont).up();
159
- } // Default values taken from `Persona.Text.Title`
160
- // in shared/src/main/res/values/styles.xml
161
-
143
+ }
162
144
 
145
+ // Default values taken from `Persona.Text.Title`
146
+ // in shared/src/main/res/values/styles.xml
163
147
  this.root = this.root.ele('item', {
164
148
  name: 'android:textSize'
165
149
  }).txt('26sp').up().ele('item', {
@@ -175,37 +159,35 @@ class AndroidResourcePrinter {
175
159
  });
176
160
  }
177
161
  }
178
-
179
162
  bodyText() {
180
163
  if (this.theme.bodyTextColor || this.theme.bodyTextFont) {
181
164
  this.printQueue.push(() => {
182
165
  this.root = this.root.ele('item', {
183
166
  name: 'textAppearanceSubtitle1'
184
167
  }).txt('@style/RN.Persona.Text.Body').up();
185
- }); // Create a text appearance
168
+ });
186
169
 
170
+ // Create a text appearance
187
171
  this.postPrintQueue.push(() => {
188
172
  this.root = this.root.ele('style', {
189
173
  name: 'RN.Persona.Text.Body',
190
174
  parent: 'Persona.Inquiry2.Text.Body'
191
175
  });
192
-
193
176
  if (this.theme.bodyTextColor) {
194
177
  this.root = this.root.ele('item', {
195
178
  name: 'android:textColor'
196
179
  }).txt(this.theme.bodyTextColor).up();
197
180
  }
198
-
199
181
  if (this.theme.bodyTextFont) {
200
182
  // TODO: Add notice about how to add a custom font that can be
201
183
  // referenced here on Android
202
184
  this.root = this.root.ele('item', {
203
185
  name: 'android:fontFamily'
204
186
  }).txt(this.theme.bodyTextFont).up();
205
- } // Default values taken from `Persona.Text.Body`
206
- // in shared/src/main/res/values/styles.xml
207
-
187
+ }
208
188
 
189
+ // Default values taken from `Persona.Text.Body`
190
+ // in shared/src/main/res/values/styles.xml
209
191
  this.root = this.root.ele('item', {
210
192
  name: 'android:textSize'
211
193
  }).txt('18sp').up();
@@ -219,36 +201,31 @@ class AndroidResourcePrinter {
219
201
  });
220
202
  }
221
203
  }
222
-
223
204
  footnoteText() {
224
205
  if (this.theme.footnoteTextColor || this.theme.footnoteTextFont) {
225
206
  this.postPrintQueue.push(() => {
226
- var _this$theme$footnoteT;
227
-
228
207
  this.root = this.root.ele('style', {
229
208
  name: 'TextAppearance.AppCompat.Small'
230
209
  }).ele('item', {
231
210
  name: 'android:textSize'
232
- }) // Used default value found in the Android SDK
211
+ })
212
+ // Used default value found in the Android SDK
233
213
  .txt('@dimen/abc_text_size_small_material').up().ele('item', {
234
214
  name: 'android:textColor'
235
- }).txt( // Used default value found in the Android SDK
236
- (_this$theme$footnoteT = this.theme.footnoteTextColor) !== null && _this$theme$footnoteT !== void 0 ? _this$theme$footnoteT : '?android:attr/textColorTertiary').up();
237
-
215
+ }).txt(
216
+ // Used default value found in the Android SDK
217
+ this.theme.footnoteTextColor ?? '?android:attr/textColorTertiary').up();
238
218
  if (this.theme.footnoteTextFont) {
239
- var _this$theme$footnoteT2;
240
-
241
219
  this.root = this.root.ele('item', {
242
220
  name: 'android:fontFamily'
243
- }).txt( // Used default value found in the Android SDK
244
- (_this$theme$footnoteT2 = this.theme.footnoteTextFont) !== null && _this$theme$footnoteT2 !== void 0 ? _this$theme$footnoteT2 : '?android:attr/textColorTertiary').up();
221
+ }).txt(
222
+ // Used default value found in the Android SDK
223
+ this.theme.footnoteTextFont ?? '?android:attr/textColorTertiary').up();
245
224
  }
246
-
247
225
  this.root = this.root.up();
248
226
  });
249
227
  }
250
228
  }
251
-
252
229
  textField() {
253
230
  if (this.theme.textFieldTextColor || this.theme.textFieldTextFont) {
254
231
  this.printQueue.push(() => {
@@ -269,24 +246,20 @@ class AndroidResourcePrinter {
269
246
  name: 'RN.Persona.EditText.TextAppearance',
270
247
  parent: 'Base.TextAppearance.TextAppearance.MaterialComponents.Body1'
271
248
  });
272
-
273
249
  if (this.theme.textFieldTextColor) {
274
250
  this.root = this.root.ele('item', {
275
251
  name: 'android:textSize'
276
252
  }).txt('18sp').up();
277
253
  }
278
-
279
254
  if (this.theme.textFieldTextFont) {
280
255
  this.root = this.root.ele('item', {
281
256
  name: 'android:fontFamily'
282
257
  }).txt(this.theme.textFieldTextFont).up();
283
258
  }
284
-
285
259
  this.root = this.root.up();
286
260
  });
287
261
  }
288
262
  }
289
-
290
263
  pickerText() {
291
264
  if (this.theme.pickerTextColor || this.theme.pickerTextFont) {
292
265
  this.printQueue.push(() => {
@@ -298,37 +271,35 @@ class AndroidResourcePrinter {
298
271
  }).txt('@style/RN.Persona.DropDownItem.Spinner').up();
299
272
  });
300
273
  this.postPrintQueue.push(() => {
301
- var _this$theme$pickerTex, _this$theme$pickerTex2;
302
-
303
274
  // Build Rn.Persona.Spinner
304
275
  this.root = this.root.ele('style', {
305
276
  name: 'RN.Persona.Spinner',
306
277
  parent: 'Persona.Inquiry2.Spinner'
307
278
  }).ele('item', {
308
279
  name: 'android:textColor'
309
- }).txt((_this$theme$pickerTex = this.theme.pickerTextColor) !== null && _this$theme$pickerTex !== void 0 ? _this$theme$pickerTex : '?android:attr/textColorPrimary').up().ele('item', {
280
+ }).txt(this.theme.pickerTextColor ?? '?android:attr/textColorPrimary').up().ele('item', {
310
281
  name: 'android:textAppearance'
311
- }).txt(this.theme.pickerTextFont ? '@style/RN.Persona.Text.Spinner' : '@style/Persona.Inquiry2.Text.Body').up().up(); // Build RN.Persona.DropDownItem.Spinner
282
+ }).txt(this.theme.pickerTextFont ? '@style/RN.Persona.Text.Spinner' : '@style/Persona.Inquiry2.Text.Body').up().up();
312
283
 
284
+ // Build RN.Persona.DropDownItem.Spinner
313
285
  this.root = this.root.ele('style', {
314
286
  name: 'RN.Persona.DropDownItem.Spinner',
315
287
  parent: 'Persona.Inquiry2.Spinner'
316
288
  }).ele('item', {
317
289
  name: 'android:textColor'
318
- }).txt((_this$theme$pickerTex2 = this.theme.pickerTextColor) !== null && _this$theme$pickerTex2 !== void 0 ? _this$theme$pickerTex2 : '?android:attr/textColorPrimary').up().ele('item', {
290
+ }).txt(this.theme.pickerTextColor ?? '?android:attr/textColorPrimary').up().ele('item', {
319
291
  name: 'android:textAppearance'
320
- }).txt(this.theme.pickerTextFont ? '@style/RN.Persona.Text.Spinner' : '@style/Persona.Inquiry2.Text.Body').up().up(); // Build RN.Persona.Text.Spinner
292
+ }).txt(this.theme.pickerTextFont ? '@style/RN.Persona.Text.Spinner' : '@style/Persona.Inquiry2.Text.Body').up().up();
321
293
 
294
+ // Build RN.Persona.Text.Spinner
322
295
  this.root = this.root.ele('style', {
323
296
  name: 'RN.Persona.Text.Spinner'
324
297
  });
325
-
326
298
  if (this.theme.pickerTextColor) {
327
299
  this.root = this.root.ele('item', {
328
300
  name: 'android:textColor'
329
301
  }).txt(this.theme.pickerTextColor).up();
330
302
  }
331
-
332
303
  if (this.theme.pickerTextFont) {
333
304
  // TODO: Add notice about how to add a custom font that can be
334
305
  // referenced here on Android
@@ -336,12 +307,10 @@ class AndroidResourcePrinter {
336
307
  name: 'android:fontFamily'
337
308
  }).txt(this.theme.pickerTextFont).up();
338
309
  }
339
-
340
310
  this.root = this.root.up();
341
311
  });
342
312
  }
343
313
  }
344
-
345
314
  button() {
346
315
  if (this.theme.buttonBackgroundColor || this.theme.buttonDisabledBackgroundColor || this.theme.buttonTouchedBackgroundColor || this.theme.buttonTextColor || this.theme.buttonDisabledTextColor || this.theme.buttonCornerRadius || this.theme.buttonFont) {
347
316
  this.printQueue.push(() => {
@@ -350,20 +319,21 @@ class AndroidResourcePrinter {
350
319
  }).txt('@style/RN.Persona.Button').up();
351
320
  });
352
321
  this.postPrintQueue.push(() => {
353
- var _this$theme$buttonTou, _this$theme$buttonBac, _this$theme$buttonDis, _this$theme$buttonTex, _this$theme$buttonTex2;
354
-
355
322
  this.root = this.root.ele('style', {
356
323
  name: 'RN.Persona.Button',
357
324
  parent: 'Persona.Inquiry2.Button'
358
- }) // Taken from
325
+ })
326
+ // Taken from
359
327
  // appcompat's res/values/values.xml
360
328
  .ele('item', {
361
329
  name: 'android:minHeight'
362
- }).txt('48dip').up() // Taken from
330
+ }).txt('48dip').up()
331
+ // Taken from
363
332
  // appcompat's res/values/values.xml
364
333
  .ele('item', {
365
334
  name: 'android:minWidth'
366
- }).txt('88dip').up() // Taken from
335
+ }).txt('88dip').up()
336
+ // Taken from
367
337
  // persona-android's shared/src/main/res/values/styles.xml
368
338
  .ele('item', {
369
339
  name: 'android:textSize'
@@ -371,8 +341,9 @@ class AndroidResourcePrinter {
371
341
  name: 'android:background'
372
342
  }).txt('@drawable/rn_persona_button').up().ele('item', {
373
343
  name: 'android:textColor'
374
- }).txt('@color/rn_persona_button').up().up(); // Disabled
344
+ }).txt('@color/rn_persona_button').up().up();
375
345
 
346
+ // Disabled
376
347
  this.buttonDrawable = this.buttonDrawable.ele('item', {
377
348
  'android:state_enabled': 'false'
378
349
  }).ele('shape', {
@@ -386,8 +357,9 @@ class AndroidResourcePrinter {
386
357
  'android:bottom': '@dimen/abc_button_padding_vertical_material'
387
358
  }).up().ele('solid', {
388
359
  'android:color': this.theme.buttonDisabledBackgroundColor ? this.theme.buttonDisabledBackgroundColor : '?attr/colorPrimaryVariant'
389
- }).up().up().up(); // touched
360
+ }).up().up().up();
390
361
 
362
+ // touched
391
363
  this.buttonDrawable = this.buttonDrawable.ele('item', {
392
364
  'android:state_pressed': 'true'
393
365
  }).ele('shape', {
@@ -395,7 +367,7 @@ class AndroidResourcePrinter {
395
367
  }).ele('corners', {
396
368
  'android:radius': this.theme.buttonCornerRadius ? `${this.theme.buttonCornerRadius}dp` : '@dimen/abc_control_corner_material'
397
369
  }).up().ele('solid', {
398
- 'android:color': (_this$theme$buttonTou = this.theme.buttonTouchedBackgroundColor) !== null && _this$theme$buttonTou !== void 0 ? _this$theme$buttonTou : '?attr/colorPrimaryVariant'
370
+ 'android:color': this.theme.buttonTouchedBackgroundColor ?? '?attr/colorPrimaryVariant'
399
371
  }).up().ele('padding', {
400
372
  'android:left': '@dimen/abc_button_padding_horizontal_material',
401
373
  'android:top': '@dimen/abc_button_padding_vertical_material',
@@ -407,30 +379,30 @@ class AndroidResourcePrinter {
407
379
  }).ele('corners', {
408
380
  'android:radius': this.theme.buttonCornerRadius ? `${this.theme.buttonCornerRadius}dp` : '@dimen/abc_control_corner_material'
409
381
  }).up().ele('solid', {
410
- 'android:color': (_this$theme$buttonBac = this.theme.buttonBackgroundColor) !== null && _this$theme$buttonBac !== void 0 ? _this$theme$buttonBac : '?attr/colorPrimary'
382
+ 'android:color': this.theme.buttonBackgroundColor ?? '?attr/colorPrimary'
411
383
  }).up().ele('padding', {
412
384
  'android:left': '@dimen/abc_button_padding_horizontal_material',
413
385
  'android:top': '@dimen/abc_button_padding_vertical_material',
414
386
  'android:right': '@dimen/abc_button_padding_horizontal_material',
415
387
  'android:bottom': '@dimen/abc_button_padding_vertical_material'
416
- }).up().up().up(); // Finish button drawable
388
+ }).up().up().up();
417
389
 
390
+ // Finish button drawable
418
391
  this.buttonDrawable = this.buttonDrawable.up();
419
392
  this.buttonColor = this.buttonColor.ele('item', {
420
393
  'android:state_enabled': 'false',
421
- 'android:color': (_this$theme$buttonDis = this.theme.buttonDisabledTextColor) !== null && _this$theme$buttonDis !== void 0 ? _this$theme$buttonDis : '@android:color/darker_gray'
394
+ 'android:color': this.theme.buttonDisabledTextColor ?? '@android:color/darker_gray'
422
395
  }).up().ele('item', {
423
396
  'android:state_pressed': 'true',
424
- 'android:color': (_this$theme$buttonTex = this.theme.buttonTextColor) !== null && _this$theme$buttonTex !== void 0 ? _this$theme$buttonTex : '@android:color/white'
397
+ 'android:color': this.theme.buttonTextColor ?? '@android:color/white'
425
398
  }).up().ele('item', {
426
- 'android:color': (_this$theme$buttonTex2 = this.theme.buttonTextColor) !== null && _this$theme$buttonTex2 !== void 0 ? _this$theme$buttonTex2 : '@android:color/white'
399
+ 'android:color': this.theme.buttonTextColor ?? '@android:color/white'
427
400
  }).up();
428
401
  this.buttonColor = this.buttonColor.up();
429
402
  this.root = this.root.up();
430
403
  });
431
404
  }
432
405
  }
433
-
434
406
  progressColor() {
435
407
  if (this.theme.progressColor) {
436
408
  this.printQueue.push(() => {
@@ -440,7 +412,6 @@ class AndroidResourcePrinter {
440
412
  });
441
413
  }
442
414
  }
443
-
444
415
  successAsset() {
445
416
  if (!this.theme.successAsset) return;
446
417
  this.printQueue.push(() => {
@@ -449,7 +420,6 @@ class AndroidResourcePrinter {
449
420
  }).txt(this.theme.successAsset).up().txt(' ');
450
421
  });
451
422
  }
452
-
453
423
  failAsset() {
454
424
  if (!this.theme.failAsset) return;
455
425
  this.printQueue.push(() => {
@@ -458,7 +428,6 @@ class AndroidResourcePrinter {
458
428
  }).txt(this.theme.failAsset).up().txt(' ');
459
429
  });
460
430
  }
461
-
462
431
  loadingAnimationAsset() {
463
432
  if (!this.theme.loadingAnimationAsset || !this.theme.loadingAnimationWidthPercent) return;
464
433
  this.printQueue.push(() => {
@@ -470,7 +439,6 @@ class AndroidResourcePrinter {
470
439
  }).txt(this.theme.loadingAnimationWidthPercent).up().txt(' ');
471
440
  });
472
441
  }
473
-
474
442
  selfieAnimationAsset() {
475
443
  if (!this.theme.selfieAnimationAsset || !this.theme.selfieAnimationWidthPercent) return;
476
444
  this.printQueue.push(() => {
@@ -482,8 +450,6 @@ class AndroidResourcePrinter {
482
450
  }).txt(this.theme.selfieAnimationWidthPercent).up().txt(' ');
483
451
  });
484
452
  }
485
-
486
453
  }
487
-
488
454
  export default AndroidResourcePrinter;
489
455
  //# sourceMappingURL=AndroidResourcePrinter.js.map