react-native-persona 1.2.11 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/android/README.md +14 -0
  3. package/android/build.gradle +21 -100
  4. package/lib/commonjs/index.js +477 -0
  5. package/lib/commonjs/index.js.map +1 -0
  6. package/lib/commonjs/util.js +36 -0
  7. package/lib/commonjs/util.js.map +1 -0
  8. package/lib/commonjs/util.spec.js +31 -0
  9. package/lib/commonjs/util.spec.js.map +1 -0
  10. package/lib/module/index.js +452 -0
  11. package/lib/module/index.js.map +1 -0
  12. package/lib/module/util.js +29 -0
  13. package/lib/module/util.js.map +1 -0
  14. package/lib/module/util.spec.js +28 -0
  15. package/lib/module/util.spec.js.map +1 -0
  16. package/lib/typescript/persona-tools/Config.d.ts +15 -0
  17. package/lib/typescript/persona-tools/Theme.d.ts +124 -0
  18. package/lib/typescript/persona-tools/index.d.ts +1 -0
  19. package/lib/typescript/persona-tools/lib/AndroidResourcePrinter.d.ts +40 -0
  20. package/lib/typescript/persona-tools/lib/AndroidResourcePrinter.spec.d.ts +1 -0
  21. package/lib/typescript/persona-tools/lib/prompts.d.ts +8 -0
  22. package/lib/typescript/persona-tools/tools/AndroidThemeGenerator.d.ts +5 -0
  23. package/lib/typescript/persona-tools/tools/IosThemeInstructions.d.ts +5 -0
  24. package/{generatedTypes → lib/typescript/src}/index.d.ts +67 -3
  25. package/lib/typescript/src/util.d.ts +3 -0
  26. package/lib/typescript/src/util.spec.d.ts +1 -0
  27. package/package.json +78 -20
  28. package/persona-tools/{config.ts → Config.ts} +7 -7
  29. package/persona-tools/Theme.ts +140 -138
  30. package/persona-tools/index.ts +9 -9
  31. package/persona-tools/lib/AndroidResourcePrinter.spec.ts +100 -101
  32. package/persona-tools/lib/AndroidResourcePrinter.ts +314 -278
  33. package/persona-tools/lib/prompts.ts +11 -11
  34. package/persona-tools/tools/AndroidThemeGenerator.ts +31 -32
  35. package/persona-tools/tools/IosThemeInstructions.ts +8 -8
  36. package/src/index.ts +17 -18
  37. package/src/util.spec.ts +14 -8
  38. package/src/util.ts +3 -3
  39. package/jest.config.js +0 -10
  40. package/persona-tools/Theme.js +0 -213
  41. package/persona-tools/config.js +0 -72
  42. package/persona-tools/index.js +0 -30
  43. package/persona-tools/lib/AndroidResourcePrinter.js +0 -832
  44. package/persona-tools/lib/AndroidResourcePrinter.spec.js +0 -1135
  45. package/persona-tools/lib/prompts.js +0 -39
  46. package/persona-tools/tools/AndroidThemeGenerator.js +0 -59
  47. package/persona-tools/tools/IosThemeInstructions.js +0 -34
  48. package/src/index.js +0 -307
  49. package/src/util.js +0 -29
  50. package/src/util.spec.js +0 -15
  51. package/tsconfig.json +0 -29
@@ -1,1135 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const AndroidResourcePrinter_1 = __importDefault(require("./AndroidResourcePrinter"));
7
- const EMPTY_THEME = {
8
- backgroundColor: null,
9
- primaryColor: null,
10
- darkPrimaryColor: null,
11
- accentColor: null,
12
- titleTextColor: null,
13
- titleTextFont: null,
14
- titleTextSize: null,
15
- bodyTextColor: null,
16
- bodyTextFont: null,
17
- bodyTextSize: null,
18
- footnoteTextColor: null,
19
- footnoteTextFont: null,
20
- footnoteTextSize: null,
21
- cameraInstructionsTextColor: null,
22
- cameraInstructionsTextFont: null,
23
- cameraInstructionsTextSize: null,
24
- cameraHintTextColor: null,
25
- cameraHintTextFont: null,
26
- cameraHintTextSize: null,
27
- cameraGuideHintTextColor: null,
28
- cameraGuideHintTextFont: null,
29
- cameraGuideHintTextSize: null,
30
- // formLabelTextColor: null,
31
- // formLabelTextFont: null,
32
- textFieldTextColor: null,
33
- textFieldTextFont: null,
34
- pickerTextColor: null,
35
- pickerTextFont: null,
36
- buttonBackgroundColor: null,
37
- buttonDisabledBackgroundColor: null,
38
- buttonTouchedBackgroundColor: null,
39
- buttonTextColor: null,
40
- buttonDisabledTextColor: null,
41
- // buttonTextAlignment: null,
42
- buttonCornerRadius: null,
43
- buttonFont: null,
44
- buttonTextSize: null,
45
- progressColor: null,
46
- successAsset: null,
47
- failAsset: null,
48
- loadingAnimationAsset: null,
49
- loadingAnimationWidthPercent: null,
50
- selfieAnimationAsset: null,
51
- selfieAnimationWidthPercent: null,
52
- };
53
- function printTheme(theme) {
54
- const { style, buttonDrawable, buttonSecondaryDrawable, buttonColor } = new AndroidResourcePrinter_1.default(theme).process();
55
- return [
56
- "res/values/styles_persona.xml",
57
- "-----------------------------",
58
- style.end({ prettyPrint: true }),
59
- "\n",
60
- "res/drawable/rn_persona_button.xml",
61
- "----------------------------------",
62
- buttonDrawable.end({
63
- prettyPrint: true,
64
- }),
65
- "\n",
66
- "res/drawable/rn_persona_button_secondary.xml",
67
- "----------------------------------",
68
- buttonSecondaryDrawable.end({
69
- prettyPrint: true,
70
- }),
71
- "\n",
72
- "res/color/rn_persona_button.xml",
73
- "-------------------------------",
74
- buttonColor.end({ prettyPrint: true }),
75
- ].join("\n");
76
- }
77
- it("works when empty", () => {
78
- const theme = EMPTY_THEME;
79
- expect(printTheme(theme)).toMatchInlineSnapshot(`
80
- "res/values/styles_persona.xml
81
- -----------------------------
82
- <?xml version=\\"1.0\\"?>
83
- <resources/>
84
-
85
-
86
- res/drawable/rn_persona_button.xml
87
- ----------------------------------
88
- <?xml version=\\"1.0\\"?>
89
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
90
-
91
-
92
- res/drawable/rn_persona_button_secondary.xml
93
- ----------------------------------
94
- <?xml version=\\"1.0\\"?>
95
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
96
-
97
-
98
- res/color/rn_persona_button.xml
99
- -------------------------------
100
- <?xml version=\\"1.0\\"?>
101
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
102
- `);
103
- });
104
- it("primaryColor", () => {
105
- const theme = { ...EMPTY_THEME, primaryColor: "#FFFFFF" };
106
- expect(printTheme(theme)).toMatchInlineSnapshot(`
107
- "res/values/styles_persona.xml
108
- -----------------------------
109
- <?xml version=\\"1.0\\"?>
110
- <resources>
111
- <style name=\\"RN\\"/>
112
- <style name=\\"RN.Persona\\"/>
113
- <style name=\\"RN.Persona.Text\\"/>
114
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
115
- <item name=\\"colorPrimary\\">#FFFFFF</item>
116
-
117
- <item name=\\"personaTitleTextAppearance\\">@style/Persona.Text.Title</item>
118
- <item name=\\"personaBodyTextAppearance\\">@style/Persona.Text.Body</item>
119
- </style>
120
- </resources>
121
-
122
-
123
- res/drawable/rn_persona_button.xml
124
- ----------------------------------
125
- <?xml version=\\"1.0\\"?>
126
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
127
-
128
-
129
- res/drawable/rn_persona_button_secondary.xml
130
- ----------------------------------
131
- <?xml version=\\"1.0\\"?>
132
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
133
-
134
-
135
- res/color/rn_persona_button.xml
136
- -------------------------------
137
- <?xml version=\\"1.0\\"?>
138
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
139
- `);
140
- });
141
- it("accentColor", () => {
142
- const theme = { ...EMPTY_THEME, accentColor: "#FFFFFF" };
143
- expect(printTheme(theme)).toMatchInlineSnapshot(`
144
- "res/values/styles_persona.xml
145
- -----------------------------
146
- <?xml version=\\"1.0\\"?>
147
- <resources>
148
- <style name=\\"RN\\"/>
149
- <style name=\\"RN.Persona\\"/>
150
- <style name=\\"RN.Persona.Text\\"/>
151
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
152
- <item name=\\"colorAccent\\">#FFFFFF</item>
153
-
154
- <item name=\\"personaTitleTextAppearance\\">@style/Persona.Text.Title</item>
155
- <item name=\\"personaBodyTextAppearance\\">@style/Persona.Text.Body</item>
156
- </style>
157
- </resources>
158
-
159
-
160
- res/drawable/rn_persona_button.xml
161
- ----------------------------------
162
- <?xml version=\\"1.0\\"?>
163
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
164
-
165
-
166
- res/drawable/rn_persona_button_secondary.xml
167
- ----------------------------------
168
- <?xml version=\\"1.0\\"?>
169
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
170
-
171
-
172
- res/color/rn_persona_button.xml
173
- -------------------------------
174
- <?xml version=\\"1.0\\"?>
175
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
176
- `);
177
- });
178
- it("darkPrimaryColor", () => {
179
- const theme = { ...EMPTY_THEME, darkPrimaryColor: "#FFFFFF" };
180
- expect(printTheme(theme)).toMatchInlineSnapshot(`
181
- "res/values/styles_persona.xml
182
- -----------------------------
183
- <?xml version=\\"1.0\\"?>
184
- <resources>
185
- <style name=\\"RN\\"/>
186
- <style name=\\"RN.Persona\\"/>
187
- <style name=\\"RN.Persona.Text\\"/>
188
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
189
- <item name=\\"colorPrimaryDark\\">#FFFFFF</item>
190
-
191
- <item name=\\"personaTitleTextAppearance\\">@style/Persona.Text.Title</item>
192
- <item name=\\"personaBodyTextAppearance\\">@style/Persona.Text.Body</item>
193
- </style>
194
- </resources>
195
-
196
-
197
- res/drawable/rn_persona_button.xml
198
- ----------------------------------
199
- <?xml version=\\"1.0\\"?>
200
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
201
-
202
-
203
- res/drawable/rn_persona_button_secondary.xml
204
- ----------------------------------
205
- <?xml version=\\"1.0\\"?>
206
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
207
-
208
-
209
- res/color/rn_persona_button.xml
210
- -------------------------------
211
- <?xml version=\\"1.0\\"?>
212
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
213
- `);
214
- });
215
- it("backgroundColor", () => {
216
- const theme = { ...EMPTY_THEME, backgroundColor: "#FFFFFF" };
217
- expect(printTheme(theme)).toMatchInlineSnapshot(`
218
- "res/values/styles_persona.xml
219
- -----------------------------
220
- <?xml version=\\"1.0\\"?>
221
- <resources>
222
- <color name=\\"customPersonaBackgroundColor\\">#FFFFFF</color>
223
-
224
- <style name=\\"RN\\"/>
225
- <style name=\\"RN.Persona\\"/>
226
- <style name=\\"RN.Persona.Text\\"/>
227
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
228
- <item name=\\"android:colorBackground\\">@color/customPersonaBackgroundColor</item>
229
-
230
- <item name=\\"personaTitleTextAppearance\\">@style/Persona.Text.Title</item>
231
- <item name=\\"personaBodyTextAppearance\\">@style/Persona.Text.Body</item>
232
- </style>
233
- </resources>
234
-
235
-
236
- res/drawable/rn_persona_button.xml
237
- ----------------------------------
238
- <?xml version=\\"1.0\\"?>
239
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
240
-
241
-
242
- res/drawable/rn_persona_button_secondary.xml
243
- ----------------------------------
244
- <?xml version=\\"1.0\\"?>
245
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
246
-
247
-
248
- res/color/rn_persona_button.xml
249
- -------------------------------
250
- <?xml version=\\"1.0\\"?>
251
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
252
- `);
253
- });
254
- it("titleTextColor", () => {
255
- const theme = { ...EMPTY_THEME, titleTextColor: "#FFFFFF" };
256
- expect(printTheme(theme)).toMatchInlineSnapshot(`
257
- "res/values/styles_persona.xml
258
- -----------------------------
259
- <?xml version=\\"1.0\\"?>
260
- <resources>
261
- <style name=\\"RN\\"/>
262
- <style name=\\"RN.Persona\\"/>
263
- <style name=\\"RN.Persona.Text\\"/>
264
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
265
- <item name=\\"personaTitleTextAppearance\\">@style/RN.Persona.Text.Title</item>
266
- <item name=\\"personaBodyTextAppearance\\">@style/Persona.Text.Body</item>
267
- </style>
268
- <style name=\\"RN.Persona.Text.Title\\" parent=\\"Persona.Text.Body\\">
269
- <item name=\\"android:textColor\\">#FFFFFF</item>
270
- <item name=\\"android:textSize\\">26sp</item>
271
- <item name=\\"android:textStyle\\">bold</item>
272
- </style>
273
- </resources>
274
-
275
-
276
- res/drawable/rn_persona_button.xml
277
- ----------------------------------
278
- <?xml version=\\"1.0\\"?>
279
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
280
-
281
-
282
- res/drawable/rn_persona_button_secondary.xml
283
- ----------------------------------
284
- <?xml version=\\"1.0\\"?>
285
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
286
-
287
-
288
- res/color/rn_persona_button.xml
289
- -------------------------------
290
- <?xml version=\\"1.0\\"?>
291
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
292
- `);
293
- });
294
- it("titleTextFont", () => {
295
- const theme = { ...EMPTY_THEME, titleTextFont: "Arial" };
296
- expect(printTheme(theme)).toMatchInlineSnapshot(`
297
- "res/values/styles_persona.xml
298
- -----------------------------
299
- <?xml version=\\"1.0\\"?>
300
- <resources>
301
- <style name=\\"RN\\"/>
302
- <style name=\\"RN.Persona\\"/>
303
- <style name=\\"RN.Persona.Text\\"/>
304
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
305
- <item name=\\"personaTitleTextAppearance\\">@style/RN.Persona.Text.Title</item>
306
- <item name=\\"personaBodyTextAppearance\\">@style/Persona.Text.Body</item>
307
- </style>
308
- <style name=\\"RN.Persona.Text.Title\\" parent=\\"Persona.Text.Body\\">
309
- <item name=\\"android:fontFamily\\">Arial</item>
310
- <item name=\\"android:textSize\\">26sp</item>
311
- <item name=\\"android:textStyle\\">bold</item>
312
- </style>
313
- </resources>
314
-
315
-
316
- res/drawable/rn_persona_button.xml
317
- ----------------------------------
318
- <?xml version=\\"1.0\\"?>
319
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
320
-
321
-
322
- res/drawable/rn_persona_button_secondary.xml
323
- ----------------------------------
324
- <?xml version=\\"1.0\\"?>
325
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
326
-
327
-
328
- res/color/rn_persona_button.xml
329
- -------------------------------
330
- <?xml version=\\"1.0\\"?>
331
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
332
- `);
333
- });
334
- it("titleTextFont and titleTextColor", () => {
335
- const theme = {
336
- ...EMPTY_THEME,
337
- titleTextColor: "#000000",
338
- titleTextFont: "Arial",
339
- };
340
- expect(printTheme(theme)).toMatchInlineSnapshot(`
341
- "res/values/styles_persona.xml
342
- -----------------------------
343
- <?xml version=\\"1.0\\"?>
344
- <resources>
345
- <style name=\\"RN\\"/>
346
- <style name=\\"RN.Persona\\"/>
347
- <style name=\\"RN.Persona.Text\\"/>
348
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
349
- <item name=\\"personaTitleTextAppearance\\">@style/RN.Persona.Text.Title</item>
350
- <item name=\\"personaBodyTextAppearance\\">@style/Persona.Text.Body</item>
351
- </style>
352
- <style name=\\"RN.Persona.Text.Title\\" parent=\\"Persona.Text.Body\\">
353
- <item name=\\"android:textColor\\">#000000</item>
354
- <item name=\\"android:fontFamily\\">Arial</item>
355
- <item name=\\"android:textSize\\">26sp</item>
356
- <item name=\\"android:textStyle\\">bold</item>
357
- </style>
358
- </resources>
359
-
360
-
361
- res/drawable/rn_persona_button.xml
362
- ----------------------------------
363
- <?xml version=\\"1.0\\"?>
364
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
365
-
366
-
367
- res/drawable/rn_persona_button_secondary.xml
368
- ----------------------------------
369
- <?xml version=\\"1.0\\"?>
370
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
371
-
372
-
373
- res/color/rn_persona_button.xml
374
- -------------------------------
375
- <?xml version=\\"1.0\\"?>
376
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
377
- `);
378
- });
379
- it("bodyTextColor", () => {
380
- const theme = { ...EMPTY_THEME, bodyTextColor: "#FFFFFF" };
381
- expect(printTheme(theme)).toMatchInlineSnapshot(`
382
- "res/values/styles_persona.xml
383
- -----------------------------
384
- <?xml version=\\"1.0\\"?>
385
- <resources>
386
- <style name=\\"RN\\"/>
387
- <style name=\\"RN.Persona\\"/>
388
- <style name=\\"RN.Persona.Text\\"/>
389
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
390
- <item name=\\"personaTitleTextAppearance\\">@style/Persona.Text.Title</item>
391
- <item name=\\"personaBodyTextAppearance\\">@style/RN.Persona.Text.Body</item>
392
- </style>
393
- <style name=\\"RN.Persona.Text.Body\\" parent=\\"Persona.Text.Body\\">
394
- <item name=\\"android:textColor\\">#FFFFFF</item>
395
- <item name=\\"android:textSize\\">18sp</item>
396
- </style>
397
- </resources>
398
-
399
-
400
- res/drawable/rn_persona_button.xml
401
- ----------------------------------
402
- <?xml version=\\"1.0\\"?>
403
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
404
-
405
-
406
- res/drawable/rn_persona_button_secondary.xml
407
- ----------------------------------
408
- <?xml version=\\"1.0\\"?>
409
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
410
-
411
-
412
- res/color/rn_persona_button.xml
413
- -------------------------------
414
- <?xml version=\\"1.0\\"?>
415
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
416
- `);
417
- });
418
- it("bodyTextFont", () => {
419
- const theme = { ...EMPTY_THEME, bodyTextFont: "Arial" };
420
- expect(printTheme(theme)).toMatchInlineSnapshot(`
421
- "res/values/styles_persona.xml
422
- -----------------------------
423
- <?xml version=\\"1.0\\"?>
424
- <resources>
425
- <style name=\\"RN\\"/>
426
- <style name=\\"RN.Persona\\"/>
427
- <style name=\\"RN.Persona.Text\\"/>
428
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
429
- <item name=\\"personaTitleTextAppearance\\">@style/Persona.Text.Title</item>
430
- <item name=\\"personaBodyTextAppearance\\">@style/RN.Persona.Text.Body</item>
431
- </style>
432
- <style name=\\"RN.Persona.Text.Body\\" parent=\\"Persona.Text.Body\\">
433
- <item name=\\"android:fontFamily\\">Arial</item>
434
- <item name=\\"android:textSize\\">18sp</item>
435
- </style>
436
- </resources>
437
-
438
-
439
- res/drawable/rn_persona_button.xml
440
- ----------------------------------
441
- <?xml version=\\"1.0\\"?>
442
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
443
-
444
-
445
- res/drawable/rn_persona_button_secondary.xml
446
- ----------------------------------
447
- <?xml version=\\"1.0\\"?>
448
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
449
-
450
-
451
- res/color/rn_persona_button.xml
452
- -------------------------------
453
- <?xml version=\\"1.0\\"?>
454
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
455
- `);
456
- });
457
- it("bodyTextFont and bodyTextColor", () => {
458
- const theme = {
459
- ...EMPTY_THEME,
460
- bodyTextFont: "Arial",
461
- bodyTextColor: "#000000",
462
- };
463
- expect(printTheme(theme)).toMatchInlineSnapshot(`
464
- "res/values/styles_persona.xml
465
- -----------------------------
466
- <?xml version=\\"1.0\\"?>
467
- <resources>
468
- <style name=\\"RN\\"/>
469
- <style name=\\"RN.Persona\\"/>
470
- <style name=\\"RN.Persona.Text\\"/>
471
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
472
- <item name=\\"personaTitleTextAppearance\\">@style/Persona.Text.Title</item>
473
- <item name=\\"personaBodyTextAppearance\\">@style/RN.Persona.Text.Body</item>
474
- </style>
475
- <style name=\\"RN.Persona.Text.Body\\" parent=\\"Persona.Text.Body\\">
476
- <item name=\\"android:textColor\\">#000000</item>
477
- <item name=\\"android:fontFamily\\">Arial</item>
478
- <item name=\\"android:textSize\\">18sp</item>
479
- </style>
480
- </resources>
481
-
482
-
483
- res/drawable/rn_persona_button.xml
484
- ----------------------------------
485
- <?xml version=\\"1.0\\"?>
486
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
487
-
488
-
489
- res/drawable/rn_persona_button_secondary.xml
490
- ----------------------------------
491
- <?xml version=\\"1.0\\"?>
492
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
493
-
494
-
495
- res/color/rn_persona_button.xml
496
- -------------------------------
497
- <?xml version=\\"1.0\\"?>
498
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
499
- `);
500
- });
501
- it("footnoteTextColor", () => {
502
- const theme = { ...EMPTY_THEME, footnoteTextColor: "#FFFFFF" };
503
- expect(printTheme(theme)).toMatchInlineSnapshot(`
504
- "res/values/styles_persona.xml
505
- -----------------------------
506
- <?xml version=\\"1.0\\"?>
507
- <resources>
508
- <style name=\\"RN\\"/>
509
- <style name=\\"RN.Persona\\"/>
510
- <style name=\\"RN.Persona.Text\\"/>
511
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
512
- <item name=\\"personaTitleTextAppearance\\">@style/Persona.Text.Title</item>
513
- <item name=\\"personaBodyTextAppearance\\">@style/Persona.Text.Body</item>
514
- </style>
515
- <style name=\\"TextAppearance.AppCompat.Small\\">
516
- <item name=\\"android:textColor\\">#FFFFFF</item>
517
- <item name=\\"android:textSize\\">@dimen/abc_text_size_small_material</item>
518
- </style>
519
- </resources>
520
-
521
-
522
- res/drawable/rn_persona_button.xml
523
- ----------------------------------
524
- <?xml version=\\"1.0\\"?>
525
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
526
-
527
-
528
- res/drawable/rn_persona_button_secondary.xml
529
- ----------------------------------
530
- <?xml version=\\"1.0\\"?>
531
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
532
-
533
-
534
- res/color/rn_persona_button.xml
535
- -------------------------------
536
- <?xml version=\\"1.0\\"?>
537
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
538
- `);
539
- });
540
- it("footnoteTextFont", () => {
541
- const theme = { ...EMPTY_THEME, footnoteTextFont: "Arial" };
542
- expect(printTheme(theme)).toMatchInlineSnapshot(`
543
- "res/values/styles_persona.xml
544
- -----------------------------
545
- <?xml version=\\"1.0\\"?>
546
- <resources>
547
- <style name=\\"RN\\"/>
548
- <style name=\\"RN.Persona\\"/>
549
- <style name=\\"RN.Persona.Text\\"/>
550
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
551
- <item name=\\"personaTitleTextAppearance\\">@style/Persona.Text.Title</item>
552
- <item name=\\"personaBodyTextAppearance\\">@style/Persona.Text.Body</item>
553
- </style>
554
- <style name=\\"TextAppearance.AppCompat.Small\\">
555
- <item name=\\"android:textColor\\">?android:attr/textColorTertiary</item>
556
- <item name=\\"android:fontFamily\\">Arial</item>
557
- <item name=\\"android:textSize\\">@dimen/abc_text_size_small_material</item>
558
- </style>
559
- </resources>
560
-
561
-
562
- res/drawable/rn_persona_button.xml
563
- ----------------------------------
564
- <?xml version=\\"1.0\\"?>
565
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
566
-
567
-
568
- res/drawable/rn_persona_button_secondary.xml
569
- ----------------------------------
570
- <?xml version=\\"1.0\\"?>
571
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
572
-
573
-
574
- res/color/rn_persona_button.xml
575
- -------------------------------
576
- <?xml version=\\"1.0\\"?>
577
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
578
- `);
579
- });
580
- it("footnoteTextFont and footnoteTextColor", () => {
581
- const theme = {
582
- ...EMPTY_THEME,
583
- footnoteTextFont: "Arial",
584
- footnoteTextColor: "#000000",
585
- };
586
- expect(printTheme(theme)).toMatchInlineSnapshot(`
587
- "res/values/styles_persona.xml
588
- -----------------------------
589
- <?xml version=\\"1.0\\"?>
590
- <resources>
591
- <style name=\\"RN\\"/>
592
- <style name=\\"RN.Persona\\"/>
593
- <style name=\\"RN.Persona.Text\\"/>
594
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
595
- <item name=\\"personaTitleTextAppearance\\">@style/Persona.Text.Title</item>
596
- <item name=\\"personaBodyTextAppearance\\">@style/Persona.Text.Body</item>
597
- </style>
598
- <style name=\\"TextAppearance.AppCompat.Small\\">
599
- <item name=\\"android:textColor\\">#000000</item>
600
- <item name=\\"android:fontFamily\\">Arial</item>
601
- <item name=\\"android:textSize\\">@dimen/abc_text_size_small_material</item>
602
- </style>
603
- </resources>
604
-
605
-
606
- res/drawable/rn_persona_button.xml
607
- ----------------------------------
608
- <?xml version=\\"1.0\\"?>
609
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
610
-
611
-
612
- res/drawable/rn_persona_button_secondary.xml
613
- ----------------------------------
614
- <?xml version=\\"1.0\\"?>
615
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
616
-
617
-
618
- res/color/rn_persona_button.xml
619
- -------------------------------
620
- <?xml version=\\"1.0\\"?>
621
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
622
- `);
623
- });
624
- it("pickerTextColor", () => {
625
- const theme = { ...EMPTY_THEME, pickerTextColor: "#FFFFFF" };
626
- expect(printTheme(theme)).toMatchInlineSnapshot(`
627
- "res/values/styles_persona.xml
628
- -----------------------------
629
- <?xml version=\\"1.0\\"?>
630
- <resources>
631
- <style name=\\"RN\\"/>
632
- <style name=\\"RN.Persona\\"/>
633
- <style name=\\"RN.Persona.Text\\"/>
634
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
635
- <item name=\\"personaTitleTextAppearance\\">@style/Persona.Text.Title</item>
636
- <item name=\\"personaBodyTextAppearance\\">@style/Persona.Text.Body</item>
637
- <item name=\\"spinnerStyle\\">@style/RN.Persona.Spinner</item>
638
- <item name=\\"spinnerDropDownItemStyle\\">@style/RN.Persona.DropDownItem.Spinner</item>
639
- </style>
640
- <style name=\\"RN.Persona.Spinner\\" parent=\\"Widget.AppCompat.Spinner\\">
641
- <item name=\\"android:textColor\\">#FFFFFF</item>
642
- <item name=\\"android:textAppearance\\">@style/Persona.Text.Body</item>
643
- </style>
644
- <style name=\\"RN.Persona.DropDownItem.Spinner\\" parent=\\"Widget.AppCompat.DropDownItem.Spinner\\">
645
- <item name=\\"android:textColor\\">#FFFFFF</item>
646
- <item name=\\"android:textAppearance\\">@style/Persona.Text.Body</item>
647
- </style>
648
- <style name=\\"RN.Persona.Text.Spinner\\">
649
- <item name=\\"android:textColor\\">#FFFFFF</item>
650
- </style>
651
- </resources>
652
-
653
-
654
- res/drawable/rn_persona_button.xml
655
- ----------------------------------
656
- <?xml version=\\"1.0\\"?>
657
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
658
-
659
-
660
- res/drawable/rn_persona_button_secondary.xml
661
- ----------------------------------
662
- <?xml version=\\"1.0\\"?>
663
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
664
-
665
-
666
- res/color/rn_persona_button.xml
667
- -------------------------------
668
- <?xml version=\\"1.0\\"?>
669
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
670
- `);
671
- });
672
- it("pickerTextFont", () => {
673
- const theme = { ...EMPTY_THEME, pickerTextFont: "Arial" };
674
- expect(printTheme(theme)).toMatchInlineSnapshot(`
675
- "res/values/styles_persona.xml
676
- -----------------------------
677
- <?xml version=\\"1.0\\"?>
678
- <resources>
679
- <style name=\\"RN\\"/>
680
- <style name=\\"RN.Persona\\"/>
681
- <style name=\\"RN.Persona.Text\\"/>
682
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
683
- <item name=\\"personaTitleTextAppearance\\">@style/Persona.Text.Title</item>
684
- <item name=\\"personaBodyTextAppearance\\">@style/Persona.Text.Body</item>
685
- <item name=\\"spinnerStyle\\">@style/RN.Persona.Spinner</item>
686
- <item name=\\"spinnerDropDownItemStyle\\">@style/RN.Persona.DropDownItem.Spinner</item>
687
- </style>
688
- <style name=\\"RN.Persona.Spinner\\" parent=\\"Widget.AppCompat.Spinner\\">
689
- <item name=\\"android:textColor\\">?android:attr/textColorPrimary</item>
690
- <item name=\\"android:textAppearance\\">@style/RN.Persona.Text.Spinner</item>
691
- </style>
692
- <style name=\\"RN.Persona.DropDownItem.Spinner\\" parent=\\"Widget.AppCompat.DropDownItem.Spinner\\">
693
- <item name=\\"android:textColor\\">?android:attr/textColorPrimary</item>
694
- <item name=\\"android:textAppearance\\">@style/RN.Persona.Text.Spinner</item>
695
- </style>
696
- <style name=\\"RN.Persona.Text.Spinner\\">
697
- <item name=\\"android:fontFamily\\">Arial</item>
698
- </style>
699
- </resources>
700
-
701
-
702
- res/drawable/rn_persona_button.xml
703
- ----------------------------------
704
- <?xml version=\\"1.0\\"?>
705
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
706
-
707
-
708
- res/drawable/rn_persona_button_secondary.xml
709
- ----------------------------------
710
- <?xml version=\\"1.0\\"?>
711
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
712
-
713
-
714
- res/color/rn_persona_button.xml
715
- -------------------------------
716
- <?xml version=\\"1.0\\"?>
717
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
718
- `);
719
- });
720
- it("pickerTextFont and pickerTextColor", () => {
721
- const theme = {
722
- ...EMPTY_THEME,
723
- pickerTextFont: "Arial",
724
- pickerTextColor: "#000000",
725
- };
726
- expect(printTheme(theme)).toMatchInlineSnapshot(`
727
- "res/values/styles_persona.xml
728
- -----------------------------
729
- <?xml version=\\"1.0\\"?>
730
- <resources>
731
- <style name=\\"RN\\"/>
732
- <style name=\\"RN.Persona\\"/>
733
- <style name=\\"RN.Persona.Text\\"/>
734
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
735
- <item name=\\"personaTitleTextAppearance\\">@style/Persona.Text.Title</item>
736
- <item name=\\"personaBodyTextAppearance\\">@style/Persona.Text.Body</item>
737
- <item name=\\"spinnerStyle\\">@style/RN.Persona.Spinner</item>
738
- <item name=\\"spinnerDropDownItemStyle\\">@style/RN.Persona.DropDownItem.Spinner</item>
739
- </style>
740
- <style name=\\"RN.Persona.Spinner\\" parent=\\"Widget.AppCompat.Spinner\\">
741
- <item name=\\"android:textColor\\">#000000</item>
742
- <item name=\\"android:textAppearance\\">@style/RN.Persona.Text.Spinner</item>
743
- </style>
744
- <style name=\\"RN.Persona.DropDownItem.Spinner\\" parent=\\"Widget.AppCompat.DropDownItem.Spinner\\">
745
- <item name=\\"android:textColor\\">#000000</item>
746
- <item name=\\"android:textAppearance\\">@style/RN.Persona.Text.Spinner</item>
747
- </style>
748
- <style name=\\"RN.Persona.Text.Spinner\\">
749
- <item name=\\"android:textColor\\">#000000</item>
750
- <item name=\\"android:fontFamily\\">Arial</item>
751
- </style>
752
- </resources>
753
-
754
-
755
- res/drawable/rn_persona_button.xml
756
- ----------------------------------
757
- <?xml version=\\"1.0\\"?>
758
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
759
-
760
-
761
- res/drawable/rn_persona_button_secondary.xml
762
- ----------------------------------
763
- <?xml version=\\"1.0\\"?>
764
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
765
-
766
-
767
- res/color/rn_persona_button.xml
768
- -------------------------------
769
- <?xml version=\\"1.0\\"?>
770
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
771
- `);
772
- });
773
- it("button", () => {
774
- const theme = {
775
- ...EMPTY_THEME,
776
- buttonBackgroundColor: "#FF0000",
777
- buttonDisabledBackgroundColor: null,
778
- buttonTouchedBackgroundColor: null,
779
- buttonTextColor: null,
780
- buttonDisabledTextColor: null,
781
- buttonTextAlignment: null,
782
- buttonCornerRadius: null,
783
- buttonFont: null,
784
- buttonTextSize: null,
785
- };
786
- expect(printTheme(theme)).toMatchInlineSnapshot(`
787
- "res/values/styles_persona.xml
788
- -----------------------------
789
- <?xml version=\\"1.0\\"?>
790
- <resources>
791
- <style name=\\"RN\\"/>
792
- <style name=\\"RN.Persona\\"/>
793
- <style name=\\"RN.Persona.Text\\"/>
794
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
795
- <item name=\\"personaTitleTextAppearance\\">@style/Persona.Text.Title</item>
796
- <item name=\\"personaBodyTextAppearance\\">@style/Persona.Text.Body</item>
797
- <item name=\\"buttonStyle\\">@style/RN.Persona.Button</item>
798
- <item name=\\"buttonStyleSecondary\\">@style/RN.Persona.Button.Secondary</item>
799
- </style>
800
- <style name=\\"RN.Persona.Button\\" parent=\\"android:style/Widget.Button\\">
801
- <item name=\\"android:minHeight\\">48dip</item>
802
- <item name=\\"android:minWidth\\">88dip</item>
803
- <item name=\\"android:textSize\\">18sp</item>
804
- <item name=\\"android:background\\">@drawable/rn_persona_button</item>
805
- <item name=\\"android:textColor\\">@color/rn_persona_button</item>
806
- </style>
807
- <style name=\\"RN.Persona.Button.Secondary\\" parent=\\"RN.Persona.Button\\">
808
- <item name=\\"android:background\\">@drawable/rn_persona_button_secondary</item>
809
- </style>
810
- </resources>
811
-
812
-
813
- res/drawable/rn_persona_button.xml
814
- ----------------------------------
815
- <?xml version=\\"1.0\\"?>
816
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\">
817
- <item android:state_enabled=\\"false\\">
818
- <shape android:shape=\\"rectangle\\">
819
- <corners android:radius=\\"@dimen/abc_control_corner_material\\"/>
820
- <padding android:left=\\"@dimen/abc_button_padding_horizontal_material\\" android:top=\\"@dimen/abc_button_padding_vertical_material\\" android:right=\\"@dimen/abc_button_padding_horizontal_material\\" android:bottom=\\"@dimen/abc_button_padding_vertical_material\\"/>
821
- <solid android:color=\\"?attr/colorPrimaryDark\\"/>
822
- </shape>
823
- </item>
824
- <item android:state_pressed=\\"true\\">
825
- <shape android:shape=\\"rectangle\\">
826
- <corners android:radius=\\"@dimen/abc_control_corner_material\\"/>
827
- <solid android:color=\\"?attr/colorPrimaryDark\\"/>
828
- <padding android:left=\\"@dimen/abc_button_padding_horizontal_material\\" android:top=\\"@dimen/abc_button_padding_vertical_material\\" android:right=\\"@dimen/abc_button_padding_horizontal_material\\" android:bottom=\\"@dimen/abc_button_padding_vertical_material\\"/>
829
- </shape>
830
- </item>
831
- <item>
832
- <shape android:shape=\\"rectangle\\">
833
- <corners android:radius=\\"@dimen/abc_control_corner_material\\"/>
834
- <solid android:color=\\"#FF0000\\"/>
835
- <padding android:left=\\"@dimen/abc_button_padding_horizontal_material\\" android:top=\\"@dimen/abc_button_padding_vertical_material\\" android:right=\\"@dimen/abc_button_padding_horizontal_material\\" android:bottom=\\"@dimen/abc_button_padding_vertical_material\\"/>
836
- </shape>
837
- </item>
838
- </selector>
839
-
840
-
841
- res/drawable/rn_persona_button_secondary.xml
842
- ----------------------------------
843
- <?xml version=\\"1.0\\"?>
844
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\">
845
- <item android:state_enabled=\\"false\\">
846
- <shape android:shape=\\"rectangle\\">
847
- <corners android:radius=\\"@dimen/abc_control_corner_material\\"/>
848
- <padding android:left=\\"@dimen/abc_button_padding_horizontal_material\\" android:top=\\"@dimen/abc_button_padding_vertical_material\\" android:right=\\"@dimen/abc_button_padding_horizontal_material\\" android:bottom=\\"@dimen/abc_button_padding_vertical_material\\"/>
849
- <solid android:color=\\"@android:color/darker_gray\\"/>
850
- </shape>
851
- </item>
852
- <item android:state_pressed=\\"true\\">
853
- <shape android:shape=\\"rectangle\\">
854
- <corners android:radius=\\"@dimen/abc_control_corner_material\\"/>
855
- <solid android:color=\\"@color/grayButtonDark\\"/>
856
- <padding android:left=\\"@dimen/abc_button_padding_horizontal_material\\" android:top=\\"@dimen/abc_button_padding_vertical_material\\" android:right=\\"@dimen/abc_button_padding_horizontal_material\\" android:bottom=\\"@dimen/abc_button_padding_vertical_material\\"/>
857
- </shape>
858
- </item>
859
- <item>
860
- <shape android:shape=\\"rectangle\\">
861
- <corners android:radius=\\"@dimen/abc_control_corner_material\\"/>
862
- <solid android:color=\\"@color/grayButton\\"/>
863
- <padding android:left=\\"@dimen/abc_button_padding_horizontal_material\\" android:top=\\"@dimen/abc_button_padding_vertical_material\\" android:right=\\"@dimen/abc_button_padding_horizontal_material\\" android:bottom=\\"@dimen/abc_button_padding_vertical_material\\"/>
864
- </shape>
865
- </item>
866
- </selector>
867
-
868
-
869
- res/color/rn_persona_button.xml
870
- -------------------------------
871
- <?xml version=\\"1.0\\"?>
872
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\">
873
- <item android:state_enabled=\\"false\\" android:color=\\"@android:color/darker_gray\\"/>
874
- <item android:state_pressed=\\"true\\" android:color=\\"@android:color/white\\"/>
875
- <item android:color=\\"@android:color/white\\"/>
876
- </selector>"
877
- `);
878
- });
879
- it("progressColor", () => {
880
- const theme = {
881
- ...EMPTY_THEME,
882
- progressColor: "#FF0000",
883
- };
884
- expect(printTheme(theme)).toMatchInlineSnapshot(`
885
- "res/values/styles_persona.xml
886
- -----------------------------
887
- <?xml version=\\"1.0\\"?>
888
- <resources>
889
- <style name=\\"RN\\"/>
890
- <style name=\\"RN.Persona\\"/>
891
- <style name=\\"RN.Persona.Text\\"/>
892
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
893
- <item name=\\"personaTitleTextAppearance\\">@style/Persona.Text.Title</item>
894
- <item name=\\"personaBodyTextAppearance\\">@style/Persona.Text.Body</item>
895
- <item name=\\"colorControlActivated\\">#FF0000</item>
896
- </style>
897
- </resources>
898
-
899
-
900
- res/drawable/rn_persona_button.xml
901
- ----------------------------------
902
- <?xml version=\\"1.0\\"?>
903
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
904
-
905
-
906
- res/drawable/rn_persona_button_secondary.xml
907
- ----------------------------------
908
- <?xml version=\\"1.0\\"?>
909
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>
910
-
911
-
912
- res/color/rn_persona_button.xml
913
- -------------------------------
914
- <?xml version=\\"1.0\\"?>
915
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\"/>"
916
- `);
917
- });
918
- it("fullTheme", () => {
919
- const theme = {
920
- backgroundColor: "#FF0000",
921
- primaryColor: "#FF0000",
922
- darkPrimaryColor: "#FF0000",
923
- accentColor: "#FF0000",
924
- titleTextColor: "#FF0000",
925
- titleTextFont: "Arial",
926
- bodyTextColor: "#FF0000",
927
- bodyTextFont: "Arial",
928
- footnoteTextColor: "#FF0000",
929
- footnoteTextFont: "Arial",
930
- footnoteTextSize: "2",
931
- cameraInstructionsTextColor: "#FF0000",
932
- cameraInstructionsTextFont: "Arial",
933
- cameraInstructionsTextSize: "30",
934
- cameraHintTextColor: "#FF0000",
935
- cameraHintTextFont: "Arial",
936
- cameraHintTextSize: "16",
937
- cameraGuideHintTextColor: "#FF0000",
938
- cameraGuideHintTextFont: "Arial",
939
- cameraGuideHintTextSize: "28",
940
- // formLabelTextColor: "#FF0000",
941
- // formLabelTextFont: "Arial",
942
- textFieldTextColor: "#FF0000",
943
- textFieldTextFont: "Arial",
944
- pickerTextColor: "#FF0000",
945
- pickerTextFont: "Arial",
946
- buttonBackgroundColor: "#FF0000",
947
- buttonDisabledBackgroundColor: "#FF0000",
948
- buttonTouchedBackgroundColor: "#FF0000",
949
- buttonTextColor: "#FF0000",
950
- buttonDisabledTextColor: "#FF0000",
951
- buttonTextAlignment: "left",
952
- buttonCornerRadius: "4",
953
- buttonFont: "Arial",
954
- buttonTextSize: "14",
955
- progressColor: "#FF0000",
956
- successAsset: "@drawable/success",
957
- failAsset: "@drawable/fail",
958
- loadingAnimationAsset: "@raw/loading",
959
- loadingAnimationWidthPercent: "0.2",
960
- selfieAnimationAsset: "@raw/selfie",
961
- selfieAnimationWidthPercent: "0.6",
962
- };
963
- expect(printTheme(theme)).toMatchInlineSnapshot(`
964
- "res/values/styles_persona.xml
965
- -----------------------------
966
- <?xml version=\\"1.0\\"?>
967
- <resources>
968
- <color name=\\"customPersonaBackgroundColor\\">#FF0000</color>
969
-
970
- <style name=\\"RN\\"/>
971
- <style name=\\"RN.Persona\\"/>
972
- <style name=\\"RN.Persona.Text\\"/>
973
- <style name=\\"Persona.Inquiry.Theme\\" parent=\\"Base.Persona.Inquiry.Theme.Light\\">
974
- <item name=\\"colorPrimary\\">#FF0000</item>
975
-
976
- <item name=\\"colorAccent\\">#FF0000</item>
977
-
978
- <item name=\\"colorPrimaryDark\\">#FF0000</item>
979
-
980
- <item name=\\"android:colorBackground\\">@color/customPersonaBackgroundColor</item>
981
-
982
- <item name=\\"personaTitleTextAppearance\\">@style/RN.Persona.Text.Title</item>
983
- <item name=\\"personaBodyTextAppearance\\">@style/RN.Persona.Text.Body</item>
984
- <item name=\\"personaCameraTitleTextAppearance\\">@style/RN.Persona.Text.CameraTitle</item>
985
- <item name=\\"personaCameraBodyTextAppearance\\">@style/RN.Persona.Text.CameraBody</item>
986
- <item name=\\"personaCameraHintTextAppearance\\">@style/RN.Persona.Text.CameraHint</item>
987
- <item name=\\"editTextStyle\\">@style/RN.Persona.EditText</item>
988
- <item name=\\"spinnerStyle\\">@style/RN.Persona.Spinner</item>
989
- <item name=\\"spinnerDropDownItemStyle\\">@style/RN.Persona.DropDownItem.Spinner</item>
990
- <item name=\\"buttonStyle\\">@style/RN.Persona.Button</item>
991
- <item name=\\"buttonStyleSecondary\\">@style/RN.Persona.Button.Secondary</item>
992
- <item name=\\"colorControlActivated\\">#FF0000</item>
993
- <item name=\\"personaInquiryCompleteImage\\">@drawable/success</item>
994
-
995
- <item name=\\"personaInquiryFailImage\\">@drawable/fail</item>
996
-
997
- <item name=\\"personaInquiryLoadingLottieRaw\\">@raw/loading</item>
998
-
999
- <item name=\\"personaInquiryLoadingLottieWidthPercent\\">0.2</item>
1000
-
1001
- <item name=\\"personaInquirySelfieLottieRaw\\">@raw/selfie</item>
1002
-
1003
- <item name=\\"personaInquirySelfieLottieWidthPercent\\">0.6</item>
1004
-
1005
- </style>
1006
- <style name=\\"RN.Persona.Text.Title\\" parent=\\"Persona.Text.Body\\">
1007
- <item name=\\"android:textColor\\">#FF0000</item>
1008
- <item name=\\"android:fontFamily\\">Arial</item>
1009
- <item name=\\"android:textSize\\">26sp</item>
1010
- <item name=\\"android:textStyle\\">bold</item>
1011
- </style>
1012
- <style name=\\"RN.Persona.Text.Body\\" parent=\\"Persona.Text.Body\\">
1013
- <item name=\\"android:textColor\\">#FF0000</item>
1014
- <item name=\\"android:fontFamily\\">Arial</item>
1015
- <item name=\\"android:textSize\\">18sp</item>
1016
- </style>
1017
- <style name=\\"TextAppearance.AppCompat.Small\\">
1018
- <item name=\\"android:textColor\\">#FF0000</item>
1019
- <item name=\\"android:fontFamily\\">Arial</item>
1020
- <item name=\\"android:textSize\\">2sp</item>
1021
- </style>
1022
- <style name=\\"RN.Persona.Text.CameraTitle\\" parent=\\"Persona.Text.CameraTitle\\">
1023
- <item name=\\"android:textColor\\">#FF0000</item>
1024
- <item name=\\"android:fontFamily\\">Arial</item>
1025
- <item name=\\"android:textSize\\">30sp</item>
1026
- </style>
1027
- <style name=\\"RN.Persona.Text.CameraBody\\" parent=\\"Persona.Text.CameraBody\\">
1028
- <item name=\\"android:textColor\\">#FF0000</item>
1029
- <item name=\\"android:fontFamily\\">Arial</item>
1030
- <item name=\\"android:textSize\\">16sp</item>
1031
- </style>
1032
- <style name=\\"RN.Persona.Text.CameraHint\\" parent=\\"Persona.Text.CameraHint\\">
1033
- <item name=\\"android:textColor\\">#FF0000</item>
1034
- <item name=\\"android:fontFamily\\">Arial</item>
1035
- <item name=\\"android:textSize\\">28sp</item>
1036
- </style>
1037
- <style name=\\"RN.Persona.EditText\\" parent=\\"Widget.AppCompat.EditText\\">
1038
- <item name=\\"android:textAppearance\\">@style/RN.Persona.EditText.TextAppearance</item>
1039
- <item name=\\"android:textColor\\">#FF0000</item>
1040
- </style>
1041
- <style name=\\"RN.Persona.EditText.TextAppearance\\" parent=\\"Base.TextAppearance.AppCompat.Medium\\">
1042
- <item name=\\"android:textSize\\">18sp</item>
1043
- <item name=\\"android:fontFamily\\">Arial</item>
1044
- </style>
1045
- <style name=\\"RN.Persona.Spinner\\" parent=\\"Widget.AppCompat.Spinner\\">
1046
- <item name=\\"android:textColor\\">#FF0000</item>
1047
- <item name=\\"android:textAppearance\\">@style/RN.Persona.Text.Spinner</item>
1048
- </style>
1049
- <style name=\\"RN.Persona.DropDownItem.Spinner\\" parent=\\"Widget.AppCompat.DropDownItem.Spinner\\">
1050
- <item name=\\"android:textColor\\">#FF0000</item>
1051
- <item name=\\"android:textAppearance\\">@style/RN.Persona.Text.Spinner</item>
1052
- </style>
1053
- <style name=\\"RN.Persona.Text.Spinner\\">
1054
- <item name=\\"android:textColor\\">#FF0000</item>
1055
- <item name=\\"android:fontFamily\\">Arial</item>
1056
- </style>
1057
- <style name=\\"RN.Persona.Button\\" parent=\\"android:style/Widget.Button\\">
1058
- <item name=\\"android:minHeight\\">48dip</item>
1059
- <item name=\\"android:minWidth\\">88dip</item>
1060
- <item name=\\"android:textSize\\">14sp</item>
1061
- <item name=\\"android:background\\">@drawable/rn_persona_button</item>
1062
- <item name=\\"android:textColor\\">@color/rn_persona_button</item>
1063
- </style>
1064
- <style name=\\"RN.Persona.Button.Secondary\\" parent=\\"RN.Persona.Button\\">
1065
- <item name=\\"android:background\\">@drawable/rn_persona_button_secondary</item>
1066
- </style>
1067
- </resources>
1068
-
1069
-
1070
- res/drawable/rn_persona_button.xml
1071
- ----------------------------------
1072
- <?xml version=\\"1.0\\"?>
1073
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\">
1074
- <item android:state_enabled=\\"false\\">
1075
- <shape android:shape=\\"rectangle\\">
1076
- <corners android:radius=\\"4dp\\"/>
1077
- <padding android:left=\\"@dimen/abc_button_padding_horizontal_material\\" android:top=\\"@dimen/abc_button_padding_vertical_material\\" android:right=\\"@dimen/abc_button_padding_horizontal_material\\" android:bottom=\\"@dimen/abc_button_padding_vertical_material\\"/>
1078
- <solid android:color=\\"#FF0000\\"/>
1079
- </shape>
1080
- </item>
1081
- <item android:state_pressed=\\"true\\">
1082
- <shape android:shape=\\"rectangle\\">
1083
- <corners android:radius=\\"4dp\\"/>
1084
- <solid android:color=\\"#FF0000\\"/>
1085
- <padding android:left=\\"@dimen/abc_button_padding_horizontal_material\\" android:top=\\"@dimen/abc_button_padding_vertical_material\\" android:right=\\"@dimen/abc_button_padding_horizontal_material\\" android:bottom=\\"@dimen/abc_button_padding_vertical_material\\"/>
1086
- </shape>
1087
- </item>
1088
- <item>
1089
- <shape android:shape=\\"rectangle\\">
1090
- <corners android:radius=\\"4dp\\"/>
1091
- <solid android:color=\\"#FF0000\\"/>
1092
- <padding android:left=\\"@dimen/abc_button_padding_horizontal_material\\" android:top=\\"@dimen/abc_button_padding_vertical_material\\" android:right=\\"@dimen/abc_button_padding_horizontal_material\\" android:bottom=\\"@dimen/abc_button_padding_vertical_material\\"/>
1093
- </shape>
1094
- </item>
1095
- </selector>
1096
-
1097
-
1098
- res/drawable/rn_persona_button_secondary.xml
1099
- ----------------------------------
1100
- <?xml version=\\"1.0\\"?>
1101
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\">
1102
- <item android:state_enabled=\\"false\\">
1103
- <shape android:shape=\\"rectangle\\">
1104
- <corners android:radius=\\"4dp\\"/>
1105
- <padding android:left=\\"@dimen/abc_button_padding_horizontal_material\\" android:top=\\"@dimen/abc_button_padding_vertical_material\\" android:right=\\"@dimen/abc_button_padding_horizontal_material\\" android:bottom=\\"@dimen/abc_button_padding_vertical_material\\"/>
1106
- <solid android:color=\\"@android:color/darker_gray\\"/>
1107
- </shape>
1108
- </item>
1109
- <item android:state_pressed=\\"true\\">
1110
- <shape android:shape=\\"rectangle\\">
1111
- <corners android:radius=\\"4dp\\"/>
1112
- <solid android:color=\\"@color/grayButtonDark\\"/>
1113
- <padding android:left=\\"@dimen/abc_button_padding_horizontal_material\\" android:top=\\"@dimen/abc_button_padding_vertical_material\\" android:right=\\"@dimen/abc_button_padding_horizontal_material\\" android:bottom=\\"@dimen/abc_button_padding_vertical_material\\"/>
1114
- </shape>
1115
- </item>
1116
- <item>
1117
- <shape android:shape=\\"rectangle\\">
1118
- <corners android:radius=\\"4dp\\"/>
1119
- <solid android:color=\\"@color/grayButton\\"/>
1120
- <padding android:left=\\"@dimen/abc_button_padding_horizontal_material\\" android:top=\\"@dimen/abc_button_padding_vertical_material\\" android:right=\\"@dimen/abc_button_padding_horizontal_material\\" android:bottom=\\"@dimen/abc_button_padding_vertical_material\\"/>
1121
- </shape>
1122
- </item>
1123
- </selector>
1124
-
1125
-
1126
- res/color/rn_persona_button.xml
1127
- -------------------------------
1128
- <?xml version=\\"1.0\\"?>
1129
- <selector xmlns:android=\\"http://schemas.android.com/apk/res/android\\">
1130
- <item android:state_enabled=\\"false\\" android:color=\\"#FF0000\\"/>
1131
- <item android:state_pressed=\\"true\\" android:color=\\"#FF0000\\"/>
1132
- <item android:color=\\"#FF0000\\"/>
1133
- </selector>"
1134
- `);
1135
- });