@developer_tribe/react-builder 1.2.42 → 1.2.44-test.1

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 (131) hide show
  1. package/dist/build-components/BIcon/BIconProps.generated.d.ts +1 -1
  2. package/dist/build-components/Checkbox/Checkbox.d.ts +6 -0
  3. package/dist/build-components/Checkbox/CheckboxProps.generated.d.ts +67 -0
  4. package/dist/build-components/CountDown/CountDownProps.generated.d.ts +1 -1
  5. package/dist/build-components/FormCheckbox/FormCheckbox.d.ts +3 -0
  6. package/dist/build-components/FormCheckbox/FormCheckboxProps.generated.d.ts +69 -0
  7. package/dist/build-components/FormErrorText/FormErrorText.d.ts +3 -0
  8. package/dist/build-components/FormErrorText/FormErrorTextProps.generated.d.ts +61 -0
  9. package/dist/build-components/FormProvider/FormProvider.d.ts +11 -0
  10. package/dist/build-components/FormProvider/FormProviderProps.generated.d.ts +55 -0
  11. package/dist/build-components/FormSubmitButton/FormSubmitButton.d.ts +2 -0
  12. package/dist/build-components/FormSubmitButton/FormSubmitButtonProps.generated.d.ts +73 -0
  13. package/dist/build-components/GlobalProvider/GlobalContext.d.ts +28 -0
  14. package/dist/build-components/GlobalProvider/GlobalProvider.d.ts +5 -0
  15. package/dist/build-components/GlobalProvider/GlobalProviderProps.generated.d.ts +60 -0
  16. package/dist/build-components/GlobalProvider/globalProviderUtils.d.ts +37 -0
  17. package/dist/build-components/GlobalProvider/useGlobalNavigation.d.ts +19 -0
  18. package/dist/build-components/OnboardButton/OnboardButtonProps.generated.d.ts +17 -10
  19. package/dist/build-components/OnboardFooter/OnboardFooterProps.generated.d.ts +1 -1
  20. package/dist/build-components/OnboardProvider/OnboardProviderProps.generated.d.ts +2 -0
  21. package/dist/build-components/OnboardSubtitle/OnboardSubtitleProps.generated.d.ts +1 -1
  22. package/dist/build-components/OnboardTitle/OnboardTitleProps.generated.d.ts +1 -1
  23. package/dist/build-components/PaywallCloseButton/PaywallCloseButtonProps.generated.d.ts +1 -1
  24. package/dist/build-components/PaywallFooter/PaywallFooterProps.generated.d.ts +1 -1
  25. package/dist/build-components/PaywallProvider/PaywallProviderProps.generated.d.ts +2 -0
  26. package/dist/build-components/PriceTag/PriceTagProps.generated.d.ts +1 -1
  27. package/dist/build-components/Pricing/PricingProps.generated.d.ts +1 -1
  28. package/dist/build-components/Promo/PromoProps.generated.d.ts +1 -1
  29. package/dist/build-components/SystemButton/SystemButton.d.ts +7 -0
  30. package/dist/build-components/SystemButton/SystemButtonProps.generated.d.ts +71 -0
  31. package/dist/build-components/SystemButton/usePlacementButtonEvents.d.ts +28 -0
  32. package/dist/build-components/TermsProvider/TermsProvider.d.ts +5 -0
  33. package/dist/build-components/TermsProvider/TermsProviderProps.generated.d.ts +55 -0
  34. package/dist/build-components/Text/TextProps.generated.d.ts +1 -1
  35. package/dist/build-components/WebView/WebView.d.ts +2 -0
  36. package/dist/build-components/WebView/WebViewProps.generated.d.ts +59 -0
  37. package/dist/build-components/index.d.ts +10 -1
  38. package/dist/build-components/patterns.generated.d.ts +5507 -1543
  39. package/dist/index.cjs.js +1 -1
  40. package/dist/index.cjs.js.map +1 -1
  41. package/dist/index.esm.js +1 -1
  42. package/dist/index.esm.js.map +1 -1
  43. package/dist/index.web.cjs.js +5 -5
  44. package/dist/index.web.cjs.js.map +1 -1
  45. package/dist/index.web.d.ts +1 -0
  46. package/dist/index.web.esm.js +4 -4
  47. package/dist/index.web.esm.js.map +1 -1
  48. package/dist/mockOS/context/MockOSContextBase.d.ts +3 -1
  49. package/dist/styles.css +1 -1
  50. package/dist/types/PreviewConfig.d.ts +1 -1
  51. package/package.json +2 -1
  52. package/src/RenderPage.tsx +4 -1
  53. package/src/assets/meta.json +1 -1
  54. package/src/assets/prompt-scheme-onboard.generated.ts +1 -1
  55. package/src/assets/prompt-scheme-paywall.generated.ts +1 -1
  56. package/src/assets/samples/getSamples.ts +7 -0
  57. package/src/assets/samples/global-onboard-flow.json +729 -0
  58. package/src/assets/samples/paywall-1.json +2 -2
  59. package/src/assets/samples/terms-and-privacy-no-form.json +108 -0
  60. package/src/assets/samples/terms-and-privacy.json +130 -0
  61. package/src/attributes-editor/FallbackLocalizationField.tsx +725 -250
  62. package/src/build-components/BIcon/BIconProps.generated.ts +1 -1
  63. package/src/build-components/Checkbox/Checkbox.tsx +165 -0
  64. package/src/build-components/Checkbox/CheckboxProps.generated.ts +84 -0
  65. package/src/build-components/Checkbox/pattern.json +83 -0
  66. package/src/build-components/CountDown/CountDownProps.generated.ts +1 -1
  67. package/src/build-components/FormCheckbox/FormCheckbox.tsx +106 -0
  68. package/src/build-components/FormCheckbox/FormCheckboxProps.generated.ts +86 -0
  69. package/src/build-components/FormCheckbox/pattern.json +39 -0
  70. package/src/build-components/FormErrorText/FormErrorText.tsx +34 -0
  71. package/src/build-components/FormErrorText/FormErrorTextProps.generated.ts +78 -0
  72. package/src/build-components/FormErrorText/pattern.json +21 -0
  73. package/src/build-components/FormProvider/FormProvider.tsx +131 -0
  74. package/src/build-components/FormProvider/FormProviderProps.generated.ts +72 -0
  75. package/src/build-components/FormProvider/pattern.json +33 -0
  76. package/src/build-components/FormSubmitButton/FormSubmitButton.tsx +49 -0
  77. package/src/build-components/FormSubmitButton/FormSubmitButtonProps.generated.ts +91 -0
  78. package/src/build-components/FormSubmitButton/pattern.json +33 -0
  79. package/src/build-components/GlobalProvider/GlobalContext.ts +48 -0
  80. package/src/build-components/GlobalProvider/GlobalProvider.tsx +191 -0
  81. package/src/build-components/GlobalProvider/GlobalProviderProps.generated.ts +78 -0
  82. package/src/build-components/GlobalProvider/globalProviderUtils.ts +163 -0
  83. package/src/build-components/GlobalProvider/pattern.json +55 -0
  84. package/src/build-components/GlobalProvider/useGlobalNavigation.ts +70 -0
  85. package/src/build-components/OnboardButton/OnboardButton.tsx +41 -36
  86. package/src/build-components/OnboardButton/OnboardButtonProps.generated.ts +17 -10
  87. package/src/build-components/OnboardButton/pattern.json +5 -4
  88. package/src/build-components/OnboardFooter/OnboardFooterProps.generated.ts +1 -1
  89. package/src/build-components/OnboardProvider/OnboardProviderProps.generated.ts +12 -0
  90. package/src/build-components/OnboardProvider/pattern.json +9 -1
  91. package/src/build-components/OnboardSubtitle/OnboardSubtitleProps.generated.ts +1 -1
  92. package/src/build-components/OnboardTitle/OnboardTitleProps.generated.ts +1 -1
  93. package/src/build-components/PaywallCloseButton/PaywallCloseButtonProps.generated.ts +1 -1
  94. package/src/build-components/PaywallFooter/PaywallFooterProps.generated.ts +1 -1
  95. package/src/build-components/PaywallProvider/PaywallProviderProps.generated.ts +12 -0
  96. package/src/build-components/PaywallProvider/pattern.json +9 -1
  97. package/src/build-components/PriceTag/PriceTagProps.generated.ts +1 -1
  98. package/src/build-components/Pricing/PricingProps.generated.ts +1 -1
  99. package/src/build-components/Promo/PromoProps.generated.ts +1 -1
  100. package/src/build-components/RenderNode.generated.tsx +46 -1
  101. package/src/build-components/SystemButton/SystemButton.tsx +71 -0
  102. package/src/build-components/SystemButton/SystemButtonProps.generated.ts +89 -0
  103. package/src/build-components/SystemButton/pattern.json +61 -0
  104. package/src/build-components/SystemButton/usePlacementButtonEvents.ts +101 -0
  105. package/src/build-components/TermsProvider/TermsProvider.tsx +45 -0
  106. package/src/build-components/TermsProvider/TermsProviderProps.generated.ts +82 -0
  107. package/src/build-components/TermsProvider/pattern.json +35 -0
  108. package/src/build-components/Text/Text.tsx +5 -4
  109. package/src/build-components/Text/TextProps.generated.ts +1 -1
  110. package/src/build-components/Text/pattern.json +2 -1
  111. package/src/build-components/WebView/WebView.tsx +149 -0
  112. package/src/build-components/WebView/WebViewProps.generated.ts +76 -0
  113. package/src/build-components/WebView/pattern.json +71 -0
  114. package/src/build-components/index.ts +45 -0
  115. package/src/build-components/patterns.generated.ts +5712 -1559
  116. package/src/hooks/useSafeAreaViewStyle.ts +1 -11
  117. package/src/index.web.ts +3 -0
  118. package/src/mockOS/components/MockOSRouter.tsx +21 -0
  119. package/src/mockOS/context/MockOSContext.tsx +7 -0
  120. package/src/mockOS/context/MockOSContextBase.ts +4 -0
  121. package/src/styles/components/_checkbox.scss +19 -0
  122. package/src/styles/components/_global-provider.scss +131 -0
  123. package/src/styles/components/_webview.scss +52 -0
  124. package/src/styles/index.scss +4 -0
  125. package/src/types/PreviewConfig.ts +19 -0
  126. package/src/utils/analyseNodeByPatterns.ts +5 -2
  127. package/src/utils/extractViewStyle/extractViewStyle.ts +0 -1
  128. package/src/utils/projectColors.ts +4 -0
  129. package/src/utils/useMergedStyle.ts +1 -1
  130. package/src/.DS_Store +0 -0
  131. package/src/assets/.DS_Store +0 -0
@@ -0,0 +1,729 @@
1
+ {
2
+ "name": "Global Onboard Flow",
3
+ "version": "1.1.2",
4
+ "type": "other",
5
+ "data": {
6
+ "type": "Main",
7
+ "isMain": true,
8
+ "attributes": {
9
+ "useSafeAreaView": true,
10
+ "description": "GlobalProvider flow: Terms → Onboard → Paywall",
11
+ "title": "Main",
12
+ "styles": {
13
+ "flex": 1,
14
+ "backgroundColor": "THEME_COLORS.BACKGROUND"
15
+ },
16
+ "testID": "GlobalFlow-Main"
17
+ },
18
+ "children": {
19
+ "type": "GlobalProvider",
20
+ "attributes": {
21
+ "initialPage": "terms",
22
+ "persistProgress": true,
23
+ "skipConditions": [
24
+ { "pageKey": "terms", "conditionKey": "termsAccepted" }
25
+ ],
26
+ "testID": "GlobalFlow-Provider"
27
+ },
28
+ "children": [
29
+ {
30
+ "type": "TermsProvider",
31
+ "key": "terms",
32
+ "attributes": {
33
+ "description": "Terms and Privacy page",
34
+ "title": "TermsProvider",
35
+ "styles": {
36
+ "flex": 1,
37
+ "backgroundColor": "THEME_COLORS.BACKGROUND"
38
+ },
39
+ "testID": "GlobalFlow-Terms"
40
+ },
41
+ "children": [
42
+ {
43
+ "type": "View",
44
+ "attributes": {
45
+ "description": "Header",
46
+ "styles": {
47
+ "padding": 16,
48
+ "alignItems": "center",
49
+ "borderBottomWidth": 1,
50
+ "borderBottomColor": "THEME_COLORS.LINE",
51
+ "backgroundColor": "THEME_COLORS.BACKGROUND"
52
+ }
53
+ },
54
+ "children": [
55
+ {
56
+ "type": "Text",
57
+ "children": "view.terms.header.title",
58
+ "attributes": {
59
+ "styles": {
60
+ "fontSize": 20,
61
+ "fontWeight": "700",
62
+ "color": "THEME_COLORS.TEXT"
63
+ }
64
+ }
65
+ }
66
+ ]
67
+ },
68
+ {
69
+ "type": "WebView",
70
+ "attributes": {
71
+ "iosUrl": "https://stage.vpn111.net/page/ios/privacy",
72
+ "androidUrl": "https://stage.vpn111.net/page/android/privacy",
73
+ "styles": {
74
+ "flex": 1,
75
+ "backgroundColor": "THEME_COLORS.BACKGROUND"
76
+ },
77
+ "testID": "GlobalFlow-Terms-WebView"
78
+ }
79
+ },
80
+ {
81
+ "type": "View",
82
+ "attributes": {
83
+ "description": "Footer",
84
+ "styles": {
85
+ "padding": 20,
86
+ "backgroundColor": "THEME_COLORS.BACKGROUND",
87
+ "borderTopWidth": 1,
88
+ "borderTopColor": "THEME_COLORS.LINE",
89
+ "gap": 16
90
+ }
91
+ },
92
+ "children": [
93
+ {
94
+ "type": "FormProvider",
95
+ "attributes": {
96
+ "defaultValues": "{\"termsAccepted\": false}",
97
+ "validationErrorMessageKey": "view.terms.error.must_accept"
98
+ },
99
+ "children": [
100
+ {
101
+ "type": "FormCheckbox",
102
+ "attributes": {
103
+ "name": "termsAccepted",
104
+ "validation": ["required"],
105
+ "checked": false,
106
+ "label": "view.terms.checkbox.label",
107
+ "checkedColor": "THEME_COLORS.CHECKBOX_ACTIVE_COLOR",
108
+ "styles": {
109
+ "marginBottom": 8
110
+ },
111
+ "testID": "GlobalFlow-Terms-Checkbox"
112
+ }
113
+ },
114
+ {
115
+ "type": "FormErrorText",
116
+ "attributes": {
117
+ "styles": {
118
+ "marginBottom": 8
119
+ },
120
+ "testID": "GlobalFlow-Terms-FormErrorText"
121
+ }
122
+ },
123
+ {
124
+ "type": "FormSubmitButton",
125
+ "attributes": {
126
+ "labelKey": "view.terms.accept.button",
127
+ "validationRequired": true,
128
+ "disableIfUnvalidated": true,
129
+ "events": [
130
+ {
131
+ "type": "Navigate",
132
+ "placementKey": "onboard"
133
+ }
134
+ ],
135
+ "styles": {
136
+ "backgroundColor": "STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND",
137
+ "color": "#FFFFFF",
138
+ "height": 48,
139
+ "borderRadius": 8,
140
+ "alignItems": "center",
141
+ "justifyContent": "center",
142
+ "fontWeight": "600"
143
+ },
144
+ "testID": "GlobalFlow-Terms-AcceptButton"
145
+ }
146
+ }
147
+ ]
148
+ }
149
+ ]
150
+ }
151
+ ]
152
+ },
153
+ {
154
+ "type": "OnboardProvider",
155
+ "key": "onboard",
156
+ "attributes": {
157
+ "theme": "dark",
158
+ "description": "Onboard page",
159
+ "title": "OnboardProvider",
160
+ "animation": "slide_from_bottom",
161
+ "testID": "GlobalFlow-OnboardProvider"
162
+ },
163
+ "children": [
164
+ {
165
+ "type": "Onboard",
166
+ "attributes": {
167
+ "description": "Onboard slides",
168
+ "title": "Onboard",
169
+ "styles": {
170
+ "flex": 1
171
+ },
172
+ "testID": "GlobalFlow-Onboard"
173
+ },
174
+ "children": [
175
+ {
176
+ "type": "OnboardItem",
177
+ "key": "global-onboard-page1",
178
+ "attributes": {
179
+ "description": "Slide 1",
180
+ "title": "OnboardItem 1",
181
+ "testID": "GlobalFlow-OnboardItem-1"
182
+ },
183
+ "children": [
184
+ {
185
+ "type": "OnboardTitle",
186
+ "attributes": {
187
+ "styles": {
188
+ "color": "THEME_COLORS.ONBOARD_TITLE",
189
+ "textAlign": "center",
190
+ "marginTop": 40
191
+ },
192
+ "testID": "GlobalFlow-OnboardTitle-1"
193
+ },
194
+ "children": "base.onboard.title.one-page"
195
+ },
196
+ {
197
+ "type": "OnboardSubtitle",
198
+ "attributes": {
199
+ "styles": {
200
+ "color": "THEME_COLORS.ONBOARD_SUBTITLE",
201
+ "fontSize": 16,
202
+ "textAlign": "center"
203
+ },
204
+ "testID": "GlobalFlow-OnboardSubtitle-1"
205
+ },
206
+ "children": "base.onboard.subtitle.one-page"
207
+ }
208
+ ]
209
+ },
210
+ {
211
+ "type": "OnboardItem",
212
+ "key": "global-onboard-page2",
213
+ "attributes": {
214
+ "description": "Slide 2",
215
+ "title": "OnboardItem 2",
216
+ "testID": "GlobalFlow-OnboardItem-2"
217
+ },
218
+ "children": [
219
+ {
220
+ "type": "OnboardTitle",
221
+ "attributes": {
222
+ "styles": {
223
+ "color": "THEME_COLORS.ONBOARD_TITLE",
224
+ "textAlign": "center",
225
+ "marginTop": 40
226
+ },
227
+ "testID": "GlobalFlow-OnboardTitle-2"
228
+ },
229
+ "children": "base.onboard.title.two-page"
230
+ },
231
+ {
232
+ "type": "OnboardSubtitle",
233
+ "attributes": {
234
+ "styles": {
235
+ "color": "THEME_COLORS.ONBOARD_SUBTITLE",
236
+ "fontSize": 16,
237
+ "textAlign": "center"
238
+ },
239
+ "testID": "GlobalFlow-OnboardSubtitle-2"
240
+ },
241
+ "children": "base.onboard.subtitle.two-page"
242
+ }
243
+ ]
244
+ }
245
+ ]
246
+ },
247
+ {
248
+ "type": "OnboardDot",
249
+ "attributes": {
250
+ "dotType": "expanding_dot",
251
+ "dot_thickness": 20,
252
+ "inactive_dot_opacity": 0.3,
253
+ "inactive_dot_color": "STATIC_COLORS.ONBOARD_DOT_INACTIVE",
254
+ "active_dot_color": "STATIC_COLORS.ONBOARD_DOT_ACTIVE",
255
+ "styles": {
256
+ "paddingVertical": 12
257
+ },
258
+ "testID": "GlobalFlow-OnboardDot"
259
+ }
260
+ },
261
+ {
262
+ "type": "OnboardButtons",
263
+ "attributes": {
264
+ "buttons_direction": "row",
265
+ "condition": "carousel-index",
266
+ "conditionVariable": 0,
267
+ "description": "Slide 1 buttons",
268
+ "title": "OnboardButtons 1",
269
+ "styles": {
270
+ "height": 40,
271
+ "marginVertical": 12,
272
+ "flexShrink": 0
273
+ },
274
+ "testID": "GlobalFlow-OnboardButtons-1"
275
+ },
276
+ "children": [
277
+ {
278
+ "type": "OnboardButton",
279
+ "attributes": {
280
+ "labelKey": "base.onboard.skip.one-page",
281
+ "events": [
282
+ {
283
+ "type": "Navigate",
284
+ "navigate_to": null,
285
+ "targetIndex": 1
286
+ }
287
+ ],
288
+ "styles": {
289
+ "flex": 1,
290
+ "color": "THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",
291
+ "backgroundColor": "STATIC_COLORS.TRANSPARENT"
292
+ },
293
+ "testID": "onboardSkip"
294
+ }
295
+ },
296
+ {
297
+ "type": "OnboardButton",
298
+ "attributes": {
299
+ "labelKey": "base.onboard.next.one-page",
300
+ "events": [
301
+ {
302
+ "type": "Navigate",
303
+ "navigate_to": null,
304
+ "targetIndex": 1
305
+ }
306
+ ],
307
+ "styles": {
308
+ "flex": 1,
309
+ "color": "STATIC_COLORS.WHITE",
310
+ "backgroundColor": "STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"
311
+ },
312
+ "testID": "onboardNext"
313
+ }
314
+ }
315
+ ]
316
+ },
317
+ {
318
+ "type": "OnboardButtons",
319
+ "attributes": {
320
+ "buttons_direction": "row",
321
+ "condition": "carousel-index",
322
+ "conditionVariable": 1,
323
+ "description": "Slide 2 buttons (last) — navigate to paywall",
324
+ "title": "OnboardButtons 2",
325
+ "styles": {
326
+ "height": 40,
327
+ "marginVertical": 12,
328
+ "flexShrink": 0
329
+ },
330
+ "testID": "GlobalFlow-OnboardButtons-2"
331
+ },
332
+ "children": [
333
+ {
334
+ "type": "OnboardButton",
335
+ "attributes": {
336
+ "labelKey": "base.onboard.allow.four-page",
337
+ "events": [
338
+ {
339
+ "type": "Permission",
340
+ "permission": "notification"
341
+ },
342
+ {
343
+ "type": "Navigate",
344
+ "placementKey": "paywall"
345
+ }
346
+ ],
347
+ "styles": {
348
+ "flex": 1,
349
+ "color": "STATIC_COLORS.WHITE",
350
+ "backgroundColor": "STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"
351
+ },
352
+ "testID": "onboardNext"
353
+ }
354
+ }
355
+ ]
356
+ }
357
+ ]
358
+ },
359
+ {
360
+ "type": "PaywallProvider",
361
+ "key": "paywall",
362
+ "attributes": {
363
+ "scrollable": true,
364
+ "description": "Paywall page",
365
+ "title": "PaywallProvider",
366
+ "animation": "none",
367
+ "styles": {
368
+ "flexDirection": "column",
369
+ "alignItems": "stretch",
370
+ "justifyContent": "flex-start",
371
+ "position": "relative",
372
+ "backgroundColor": "THEME_COLORS.BACKGROUND"
373
+ },
374
+ "testID": "GlobalFlow-PaywallProvider"
375
+ },
376
+ "children": [
377
+ {
378
+ "type": "PaywallBackground",
379
+ "attributes": {
380
+ "src": "https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=1200&q=80",
381
+ "resizeMode": "cover",
382
+ "description": "Paywall arka planı",
383
+ "testID": "GlobalFlow-PaywallBackground"
384
+ },
385
+ "children": null
386
+ },
387
+ {
388
+ "type": "View",
389
+ "attributes": {
390
+ "title": "Paywall Inner",
391
+ "styles": {
392
+ "paddingTop": 56,
393
+ "paddingHorizontal": 16,
394
+ "paddingBottom": 16,
395
+ "gap": 12,
396
+ "flex": 1
397
+ },
398
+ "testID": "GlobalFlow-Paywall-Inner"
399
+ },
400
+ "children": [
401
+ {
402
+ "type": "PaywallCloseButton",
403
+ "attributes": {
404
+ "styles": {
405
+ "width": 32,
406
+ "height": 32,
407
+ "borderRadius": 16,
408
+ "backgroundColor": "STATIC_COLORS.WHITE",
409
+ "color": "STATIC_COLORS.BLACK",
410
+ "zIndex": 10,
411
+ "alignItems": "center",
412
+ "justifyContent": "center"
413
+ },
414
+ "testID": "GlobalFlow-PaywallCloseButton"
415
+ },
416
+ "children": null
417
+ },
418
+ {
419
+ "type": "View",
420
+ "attributes": {
421
+ "description": "Benefits",
422
+ "title": "Benefits",
423
+ "styles": {
424
+ "flexDirection": "column",
425
+ "gap": 0,
426
+ "marginTop": "4%"
427
+ },
428
+ "testID": "GlobalFlow-Paywall-Benefits"
429
+ },
430
+ "children": [
431
+ {
432
+ "type": "View",
433
+ "attributes": {
434
+ "title": "Benefit #1",
435
+ "styles": {
436
+ "flexDirection": "row",
437
+ "alignItems": "center",
438
+ "gap": 8,
439
+ "paddingVertical": 8,
440
+ "paddingHorizontal": 12
441
+ },
442
+ "testID": "GlobalFlow-Benefit-1"
443
+ },
444
+ "children": [
445
+ {
446
+ "type": "BIcon",
447
+ "attributes": {
448
+ "iconType": "check",
449
+ "strokeWidth": 3,
450
+ "styles": {
451
+ "color": "THEME_COLORS.ICON",
452
+ "fontSize": "16",
453
+ "flex": 0
454
+ },
455
+ "testID": "GlobalFlow-BIcon-1"
456
+ },
457
+ "children": null
458
+ },
459
+ {
460
+ "type": "Text",
461
+ "attributes": {
462
+ "styles": {
463
+ "flex": 1,
464
+ "color": "STATIC_COLORS.WHITE",
465
+ "fontWeight": "700"
466
+ },
467
+ "testID": "GlobalFlow-BenefitText-1"
468
+ },
469
+ "children": "@benefit1 — Unlimited access"
470
+ }
471
+ ]
472
+ },
473
+ {
474
+ "type": "View",
475
+ "attributes": {
476
+ "title": "Benefit #2",
477
+ "styles": {
478
+ "flexDirection": "row",
479
+ "alignItems": "center",
480
+ "gap": 8,
481
+ "paddingVertical": 8,
482
+ "paddingHorizontal": 12
483
+ },
484
+ "testID": "GlobalFlow-Benefit-2"
485
+ },
486
+ "children": [
487
+ {
488
+ "type": "BIcon",
489
+ "attributes": {
490
+ "iconType": "check",
491
+ "strokeWidth": 3,
492
+ "styles": {
493
+ "color": "THEME_COLORS.ICON",
494
+ "fontSize": "16",
495
+ "flex": 0
496
+ },
497
+ "testID": "GlobalFlow-BIcon-2"
498
+ },
499
+ "children": null
500
+ },
501
+ {
502
+ "type": "Text",
503
+ "attributes": {
504
+ "styles": {
505
+ "flex": 1,
506
+ "color": "STATIC_COLORS.WHITE",
507
+ "fontWeight": "700"
508
+ },
509
+ "testID": "GlobalFlow-BenefitText-2"
510
+ },
511
+ "children": "@benefit2 — 7-day free trial"
512
+ }
513
+ ]
514
+ },
515
+ {
516
+ "type": "View",
517
+ "attributes": {
518
+ "title": "Benefit #3",
519
+ "styles": {
520
+ "flexDirection": "row",
521
+ "alignItems": "center",
522
+ "gap": 8,
523
+ "paddingVertical": 8,
524
+ "paddingHorizontal": 12
525
+ },
526
+ "testID": "GlobalFlow-Benefit-3"
527
+ },
528
+ "children": [
529
+ {
530
+ "type": "BIcon",
531
+ "attributes": {
532
+ "iconType": "check",
533
+ "strokeWidth": 3,
534
+ "styles": {
535
+ "color": "THEME_COLORS.ICON",
536
+ "fontSize": "16",
537
+ "flex": 0
538
+ },
539
+ "testID": "GlobalFlow-BIcon-3"
540
+ },
541
+ "children": null
542
+ },
543
+ {
544
+ "type": "Text",
545
+ "attributes": {
546
+ "styles": {
547
+ "flex": 1,
548
+ "color": "STATIC_COLORS.WHITE",
549
+ "fontWeight": "700"
550
+ },
551
+ "testID": "GlobalFlow-BenefitText-3"
552
+ },
553
+ "children": "@benefit3 — Cancel anytime"
554
+ }
555
+ ]
556
+ }
557
+ ]
558
+ },
559
+ {
560
+ "type": "PaywallOptions",
561
+ "attributes": {
562
+ "description": "Abonelik seçenekleri",
563
+ "styles": {
564
+ "borderRadius": 12,
565
+ "backgroundColor": "THEME_COLORS.BACKGROUND"
566
+ },
567
+ "testID": "GlobalFlow-PaywallOptions"
568
+ },
569
+ "children": [
570
+ {
571
+ "type": "RadioButton",
572
+ "attributes": {
573
+ "title": "Product Radio(s)",
574
+ "styles": { "flex": 1 },
575
+ "testID": "GlobalFlow-RadioButton"
576
+ },
577
+ "children": null
578
+ },
579
+ {
580
+ "type": "Text",
581
+ "attributes": {
582
+ "title": "Product Desc(s)",
583
+ "styles": { "flex": 6 },
584
+ "testID": "GlobalFlow-ProductDesc"
585
+ },
586
+ "children": "@productDescription"
587
+ },
588
+ {
589
+ "type": "View",
590
+ "attributes": {
591
+ "title": "Price Column",
592
+ "styles": {
593
+ "flexDirection": "column",
594
+ "flex": 2,
595
+ "alignItems": "flex-end"
596
+ },
597
+ "testID": "GlobalFlow-PriceColumn"
598
+ },
599
+ "children": [
600
+ {
601
+ "type": "PriceTag",
602
+ "attributes": {
603
+ "title": "Promo Price",
604
+ "styles": {
605
+ "textAlign": "right",
606
+ "fontWeight": "700"
607
+ },
608
+ "testID": "GlobalFlow-PriceTag-Promo"
609
+ },
610
+ "children": "@localizedCalculatedPrice"
611
+ },
612
+ {
613
+ "type": "PriceTag",
614
+ "attributes": {
615
+ "title": "Original Price",
616
+ "hideIfItsNotDiscount": true,
617
+ "styles": {
618
+ "textAlign": "right",
619
+ "textDecorationLine": "line-through",
620
+ "fontSize": "12@fs",
621
+ "fontWeight": "400",
622
+ "color": "#999999"
623
+ },
624
+ "testID": "GlobalFlow-PriceTag-Original"
625
+ },
626
+ "children": "@localizedPrice"
627
+ }
628
+ ]
629
+ },
630
+ {
631
+ "type": "BIcon",
632
+ "attributes": {
633
+ "iconType": "chevron-right",
634
+ "size": 16,
635
+ "title": "Product BIcon(s)",
636
+ "styles": {
637
+ "marginRight": 4,
638
+ "flex": 0,
639
+ "width": 32,
640
+ "color": "STATIC_COLORS.BLACK"
641
+ },
642
+ "testID": "GlobalFlow-Chevron"
643
+ },
644
+ "children": null
645
+ }
646
+ ]
647
+ },
648
+ {
649
+ "type": "View",
650
+ "attributes": {
651
+ "description": "Subscription button container",
652
+ "title": "Subs Container",
653
+ "styles": {
654
+ "flex": 1,
655
+ "flexDirection": "column",
656
+ "justifyContent": "flex-end",
657
+ "alignItems": "stretch",
658
+ "gap": 8,
659
+ "paddingBottom": "50px"
660
+ },
661
+ "testID": "GlobalFlow-SubsContainer"
662
+ },
663
+ "children": [
664
+ {
665
+ "type": "Pricing",
666
+ "attributes": {
667
+ "description": "Pricing breakdown",
668
+ "title": "Pricing Detail",
669
+ "testID": "GlobalFlow-Pricing"
670
+ },
671
+ "children": "@baseLocalizedPricingText"
672
+ },
673
+ {
674
+ "type": "Text",
675
+ "attributes": {
676
+ "title": "Trial Full",
677
+ "styles": {
678
+ "textAlign": "center",
679
+ "fontSize": 12,
680
+ "color": "rgba(255,255,255,0.6)"
681
+ },
682
+ "testID": "GlobalFlow-TrialText"
683
+ },
684
+ "children": "@trialPeriod days free, then @price/@period"
685
+ },
686
+ {
687
+ "type": "PaywallSubscribeButton",
688
+ "children": "@subscribe",
689
+ "attributes": {
690
+ "title": "Subscribe",
691
+ "testID": "GlobalFlow-SubscribeButton"
692
+ }
693
+ },
694
+ {
695
+ "type": "Promo",
696
+ "attributes": {
697
+ "description": "Discount badge",
698
+ "title": "Promo Badge",
699
+ "testID": "GlobalFlow-Promo"
700
+ },
701
+ "children": "@baseLocalizedPromoText"
702
+ },
703
+ {
704
+ "type": "PaywallFooter",
705
+ "attributes": {
706
+ "textLocalizationKey": "base.builder.paywall.footer.description",
707
+ "linkedWordFirstLocalizationKey": "base.builder.paywall.btnPrivacy",
708
+ "linkedWordFirstColor": "STATIC_COLORS.ONBOARD_LINK_COLOR",
709
+ "linkedWordFirstPage": "privacy",
710
+ "linkedWordSecondLocalizationKey": "base.builder.paywall.btnTerms",
711
+ "linkedWordSecondColor": "STATIC_COLORS.ONBOARD_LINK_COLOR",
712
+ "linkedWordSecondPage": "terms",
713
+ "styles": {
714
+ "gap": 8,
715
+ "color": "THEME_COLORS.ONBOARD_FOOTER_TEXT"
716
+ },
717
+ "testID": "GlobalFlow-PaywallFooter"
718
+ }
719
+ }
720
+ ]
721
+ }
722
+ ]
723
+ }
724
+ ]
725
+ }
726
+ ]
727
+ }
728
+ }
729
+ }