@developer_tribe/react-builder 1.0.4 → 1.0.6

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 (512) hide show
  1. package/README.md +6 -0
  2. package/dist/assets/samples/getSamples.d.ts +1 -0
  3. package/dist/background.jpg +0 -0
  4. package/dist/build-components/BIcon/BIcon.d.ts +5 -0
  5. package/dist/build-components/BIcon/BIconProps.generated.d.ts +55 -0
  6. package/dist/build-components/BackgroundImage/BackgroundImageProps.generated.d.ts +4 -0
  7. package/dist/build-components/Button/ButtonProps.generated.d.ts +4 -0
  8. package/dist/build-components/Carousel/CarouselProps.generated.d.ts +4 -0
  9. package/dist/build-components/CarouselButtons/CarouselButtonsProps.generated.d.ts +4 -0
  10. package/dist/build-components/CarouselDots/CarouselDotsProps.generated.d.ts +4 -0
  11. package/dist/build-components/CarouselItem/CarouselItemProps.generated.d.ts +4 -0
  12. package/dist/build-components/CarouselProvider/CarouselProviderProps.generated.d.ts +4 -0
  13. package/dist/build-components/Image/ImageProps.generated.d.ts +4 -0
  14. package/dist/build-components/Main/Main.d.ts +5 -0
  15. package/dist/build-components/Main/MainProps.generated.d.ts +48 -0
  16. package/dist/build-components/Onboard/OnboardProps.generated.d.ts +4 -0
  17. package/dist/build-components/OnboardButton/OnboardButtonProps.generated.d.ts +4 -0
  18. package/dist/build-components/OnboardButtons/OnboardButtonsProps.generated.d.ts +4 -0
  19. package/dist/build-components/OnboardDot/OnboardDotProps.generated.d.ts +4 -0
  20. package/dist/build-components/OnboardFooter/OnboardFooterProps.generated.d.ts +4 -0
  21. package/dist/build-components/OnboardImage/OnboardImageProps.generated.d.ts +4 -0
  22. package/dist/build-components/OnboardItem/OnboardItemProps.generated.d.ts +4 -0
  23. package/dist/build-components/OnboardProvider/OnboardProviderProps.generated.d.ts +4 -1
  24. package/dist/build-components/OnboardSubtitle/OnboardSubtitleProps.generated.d.ts +4 -0
  25. package/dist/build-components/OnboardTitle/OnboardTitleProps.generated.d.ts +4 -0
  26. package/dist/build-components/PaywallBackground/PaywallBackground.d.ts +5 -0
  27. package/dist/build-components/PaywallBackground/PaywallBackgroundProps.generated.d.ts +47 -0
  28. package/dist/build-components/PaywallCloseButton/PaywallCloseButton.d.ts +5 -0
  29. package/dist/build-components/PaywallCloseButton/PaywallCloseButtonProps.generated.d.ts +56 -0
  30. package/dist/build-components/PaywallOptions/PaywallOptionButton.d.ts +9 -0
  31. package/dist/build-components/PaywallOptions/PaywallOptions.d.ts +5 -0
  32. package/dist/build-components/PaywallOptions/PaywallOptionsProps.generated.d.ts +47 -0
  33. package/dist/build-components/PaywallOptions/usePaywallOptionParamsFactory.d.ts +10 -0
  34. package/dist/build-components/PaywallProvider/PaywallProvider.d.ts +5 -0
  35. package/dist/build-components/PaywallProvider/PaywallProviderProps.generated.d.ts +47 -0
  36. package/dist/build-components/PaywallSubscribeButton/PaywallSubscribeButton.d.ts +5 -0
  37. package/dist/build-components/PaywallSubscribeButton/PaywallSubscribeButtonProps.generated.d.ts +50 -0
  38. package/dist/build-components/RadioButton/RadioButton.d.ts +11 -0
  39. package/dist/build-components/RadioButton/RadioButtonProps.generated.d.ts +50 -0
  40. package/dist/build-components/RenderNode.generated.d.ts +1 -1
  41. package/dist/build-components/Text/TextProps.generated.d.ts +4 -0
  42. package/dist/build-components/View/ViewProps.generated.d.ts +4 -0
  43. package/dist/build-components/index.d.ts +9 -1
  44. package/dist/build-components/patterns.generated.d.ts +4442 -655
  45. package/dist/components/AttributesEditorPanel.d.ts +4 -3
  46. package/dist/components/BottomBar.d.ts +8 -0
  47. package/dist/components/Builder.d.ts +1 -1
  48. package/dist/components/BuilderButton.d.ts +1 -1
  49. package/dist/components/BuilderProvider.d.ts +15 -0
  50. package/dist/components/Checkbox.d.ts +1 -1
  51. package/dist/components/EditorHeader.d.ts +1 -1
  52. package/dist/components/Icon.generated.d.ts +11 -0
  53. package/dist/components/LoadingComponent.d.ts +1 -0
  54. package/dist/components/LocalizationParamsProvider.d.ts +11 -0
  55. package/dist/components/MobilePanelToggleButton.d.ts +8 -0
  56. package/dist/components/ParamsProvider.d.ts +14 -0
  57. package/dist/hooks/useLocalizationParams.d.ts +1 -0
  58. package/dist/hooks/useLocalize.d.ts +2 -0
  59. package/dist/hooks/useMinimumDelay.d.ts +7 -0
  60. package/dist/hooks/useMobileEditorPanels.d.ts +12 -0
  61. package/dist/hooks/useParams.d.ts +1 -0
  62. package/dist/hooks/useSafeAreaViewStyle.d.ts +1 -0
  63. package/dist/hooks/useSyncProjectPageStore.d.ts +15 -0
  64. package/dist/index.cjs.js +5 -5
  65. package/dist/index.cjs.js.map +1 -1
  66. package/dist/index.d.ts +8 -0
  67. package/dist/index.esm.js +5 -5
  68. package/dist/index.esm.js.map +1 -1
  69. package/dist/index.native.cjs.js +29 -0
  70. package/dist/index.native.cjs.js.map +1 -0
  71. package/dist/index.native.d.ts +31 -0
  72. package/dist/index.native.esm.js +29 -0
  73. package/dist/index.native.esm.js.map +1 -0
  74. package/dist/mockOS/components/MockOSRouter.d.ts +1 -1
  75. package/dist/mockOS/context/MockOSContext.d.ts +4 -18
  76. package/dist/mockOS/context/MockOSContextBase.d.ts +21 -0
  77. package/dist/mockOS/index.d.ts +3 -2
  78. package/dist/modals/BenefitEditModal.d.ts +13 -0
  79. package/dist/modals/BenefitPresetsModal.d.ts +9 -0
  80. package/dist/modals/IconPickerModal.d.ts +9 -0
  81. package/dist/modals/MockableFeatureModal.d.ts +6 -0
  82. package/dist/modals/ProductEditModal.d.ts +9 -0
  83. package/dist/modals/ProductPresetsModal.d.ts +9 -0
  84. package/dist/modals/ScreenColorsModal.d.ts +8 -0
  85. package/dist/modals/index.d.ts +7 -0
  86. package/dist/pages/ProjectPage.d.ts +3 -2
  87. package/dist/pages/tabs/BuilderPanel.d.ts +3 -3
  88. package/dist/paywall/hooks/index.d.ts +5 -0
  89. package/dist/paywall/hooks/useCalculateLocalizedPrice.d.ts +4 -0
  90. package/dist/paywall/hooks/useCarouselOptionsSeperator.d.ts +6 -0
  91. package/dist/paywall/hooks/useCloseStatusPaywall.d.ts +4 -0
  92. package/dist/paywall/hooks/useDiscountRate.d.ts +4 -0
  93. package/dist/paywall/hooks/usePaywallCounter.d.ts +4 -0
  94. package/dist/paywall/types/benefits.d.ts +14 -0
  95. package/dist/paywall/types/paywall-types.d.ts +43 -0
  96. package/dist/store.d.ts +35 -1
  97. package/dist/styles.css +1 -1
  98. package/dist/types/Icons.d.ts +2 -0
  99. package/dist/types/Project.d.ts +5 -0
  100. package/dist/utils/analyseNode.d.ts +1 -4
  101. package/dist/utils/analyseNodeByPatterns.d.ts +16 -0
  102. package/dist/utils/analyseNodeStructural.d.ts +11 -0
  103. package/dist/utils/findNodeByKeyNested.d.ts +2 -0
  104. package/dist/utils/nodeGuards.d.ts +5 -0
  105. package/dist/utils/nodeTree.d.ts +5 -0
  106. package/dist/utils/novaToJson.d.ts +5 -0
  107. package/dist/utils/patterns.d.ts +14 -0
  108. package/dist/utils/replaceLocalizationParams.d.ts +1 -0
  109. package/package.json +33 -3
  110. package/scripts/prebuild/assets/icon.template +71 -0
  111. package/scripts/prebuild/build-components.js +5 -0
  112. package/scripts/prebuild/icon-generator.js +206 -0
  113. package/scripts/prebuild/prebuild.js +10 -1
  114. package/scripts/prebuild/utils/createComponentTsx.js +6 -3
  115. package/scripts/prebuild/utils/createGeneratedProps.js +4 -2
  116. package/scripts/prebuild/utils/createRenderNodeGenerated.js +43 -8
  117. package/scripts/prebuild/utils/validateAllComponentsOrThrow.js +20 -9
  118. package/scripts/prebuild/utils/validatePatternJson.js +3 -2
  119. package/src/AttributesEditor.tsx +178 -34
  120. package/src/DeviceMockFrame.tsx +41 -43
  121. package/src/RenderPage.tsx +11 -49
  122. package/src/assets/benefits.json +24 -0
  123. package/src/assets/iconset/activity-heart.svg +3 -0
  124. package/src/assets/iconset/activity.svg +3 -0
  125. package/src/assets/iconset/alert-circle.svg +3 -0
  126. package/src/assets/iconset/alert-triangle.svg +3 -0
  127. package/src/assets/iconset/anchor.svg +3 -0
  128. package/src/assets/iconset/archive.svg +3 -0
  129. package/src/assets/iconset/arrow-down.svg +3 -0
  130. package/src/assets/iconset/arrow-left.svg +3 -0
  131. package/src/assets/iconset/arrow-narrow-down-left.svg +3 -0
  132. package/src/assets/iconset/arrow-narrow-up-right.svg +3 -0
  133. package/src/assets/iconset/arrow-right-smooth.svg +4 -0
  134. package/src/assets/iconset/arrow-right.svg +7 -0
  135. package/src/assets/iconset/asterisk-01.svg +3 -0
  136. package/src/assets/iconset/asterisk-02.svg +3 -0
  137. package/src/assets/iconset/at-sign.svg +3 -0
  138. package/src/assets/iconset/award.svg +4 -0
  139. package/src/assets/iconset/battery-charging.svg +6 -0
  140. package/src/assets/iconset/bell-01.svg +5 -0
  141. package/src/assets/iconset/bell-02.svg +3 -0
  142. package/src/assets/iconset/bell-ringing-02.svg +3 -0
  143. package/src/assets/iconset/bookmark-add.svg +3 -0
  144. package/src/assets/iconset/bookmark-check.svg +3 -0
  145. package/src/assets/iconset/bookmark-minus.svg +3 -0
  146. package/src/assets/iconset/bookmark-x.svg +3 -0
  147. package/src/assets/iconset/bookmark.svg +3 -0
  148. package/src/assets/iconset/bubble.svg +5 -0
  149. package/src/assets/iconset/building-01.svg +3 -0
  150. package/src/assets/iconset/building-02.svg +3 -0
  151. package/src/assets/iconset/building-03.svg +3 -0
  152. package/src/assets/iconset/building-04.svg +3 -0
  153. package/src/assets/iconset/building-05.svg +3 -0
  154. package/src/assets/iconset/building-06.svg +3 -0
  155. package/src/assets/iconset/building-07.svg +3 -0
  156. package/src/assets/iconset/building-08.svg +3 -0
  157. package/src/assets/iconset/building-09.svg +3 -0
  158. package/src/assets/iconset/camera-01.svg +8 -0
  159. package/src/assets/iconset/camera-steel.svg +4 -0
  160. package/src/assets/iconset/camera.svg +4 -0
  161. package/src/assets/iconset/check-circle-bold.svg +3 -0
  162. package/src/assets/iconset/check-circle-broken.svg +3 -0
  163. package/src/assets/iconset/check-circle.svg +3 -0
  164. package/src/assets/iconset/check-done-01.svg +3 -0
  165. package/src/assets/iconset/check-done-02.svg +3 -0
  166. package/src/assets/iconset/check-heart.svg +3 -0
  167. package/src/assets/iconset/check-square-broken.svg +3 -0
  168. package/src/assets/iconset/check-square.svg +3 -0
  169. package/src/assets/iconset/check-verified-01.svg +3 -0
  170. package/src/assets/iconset/check-verified-02.svg +3 -0
  171. package/src/assets/iconset/check-verified-03.svg +3 -0
  172. package/src/assets/iconset/check.svg +3 -0
  173. package/src/assets/iconset/checkbox.svg +4 -0
  174. package/src/assets/iconset/checkv.svg +3 -0
  175. package/src/assets/iconset/chevron-down.svg +3 -0
  176. package/src/assets/iconset/chevron-down2.svg +3 -0
  177. package/src/assets/iconset/chevron-left-2.svg +3 -0
  178. package/src/assets/iconset/chevron-left.svg +3 -0
  179. package/src/assets/iconset/chevron-right-empty.svg +3 -0
  180. package/src/assets/iconset/chevron-right-smooth.svg +3 -0
  181. package/src/assets/iconset/chevron-right.svg +3 -0
  182. package/src/assets/iconset/chevron-up.svg +3 -0
  183. package/src/assets/iconset/circle.svg +32 -0
  184. package/src/assets/iconset/clock-fast-forward.svg +10 -0
  185. package/src/assets/iconset/clock.svg +3 -0
  186. package/src/assets/iconset/close-circle.svg +3 -0
  187. package/src/assets/iconset/close.svg +3 -0
  188. package/src/assets/iconset/cloud-01.svg +5 -0
  189. package/src/assets/iconset/cloud-blank-01.svg +3 -0
  190. package/src/assets/iconset/cloud-blank-02.svg +3 -0
  191. package/src/assets/iconset/coin.svg +5 -0
  192. package/src/assets/iconset/coins-02.svg +3 -0
  193. package/src/assets/iconset/colors.svg +3 -0
  194. package/src/assets/iconset/copy-01.svg +3 -0
  195. package/src/assets/iconset/copy-02.svg +3 -0
  196. package/src/assets/iconset/copy-03.svg +3 -0
  197. package/src/assets/iconset/copy-04.svg +3 -0
  198. package/src/assets/iconset/copy-05.svg +3 -0
  199. package/src/assets/iconset/copy-06.svg +3 -0
  200. package/src/assets/iconset/copy-07.svg +3 -0
  201. package/src/assets/iconset/corner-down-right.svg +3 -0
  202. package/src/assets/iconset/crypto-bold.svg +4 -0
  203. package/src/assets/iconset/delete-icon.svg +5 -0
  204. package/src/assets/iconset/diamond.svg +3 -0
  205. package/src/assets/iconset/dice-3.svg +3 -0
  206. package/src/assets/iconset/divide-01.svg +3 -0
  207. package/src/assets/iconset/divide-02.svg +3 -0
  208. package/src/assets/iconset/divide-03.svg +3 -0
  209. package/src/assets/iconset/document-check-bold.svg +4 -0
  210. package/src/assets/iconset/dots-circle.svg +10 -0
  211. package/src/assets/iconset/dots-grid.svg +11 -0
  212. package/src/assets/iconset/dots-horizontal.svg +5 -0
  213. package/src/assets/iconset/dots-vertical.svg +5 -0
  214. package/src/assets/iconset/download-01.svg +3 -0
  215. package/src/assets/iconset/download-02.svg +3 -0
  216. package/src/assets/iconset/download-03.svg +3 -0
  217. package/src/assets/iconset/edit-03.svg +3 -0
  218. package/src/assets/iconset/edit-04.svg +3 -0
  219. package/src/assets/iconset/edit-05.svg +3 -0
  220. package/src/assets/iconset/element-3.svg +6 -0
  221. package/src/assets/iconset/ellipse-127.svg +3 -0
  222. package/src/assets/iconset/exclaimation-circle.svg +8 -0
  223. package/src/assets/iconset/eye-off-line.svg +5 -0
  224. package/src/assets/iconset/face-smile.svg +5 -0
  225. package/src/assets/iconset/file-04.svg +3 -0
  226. package/src/assets/iconset/file-05.svg +3 -0
  227. package/src/assets/iconset/file-check-02.svg +3 -0
  228. package/src/assets/iconset/file-plus-01.svg +5 -0
  229. package/src/assets/iconset/file-shield-02.svg +5 -0
  230. package/src/assets/iconset/filter-funnel-01.svg +3 -0
  231. package/src/assets/iconset/flag-03.svg +3 -0
  232. package/src/assets/iconset/flash.svg +3 -0
  233. package/src/assets/iconset/folder-plus.svg +3 -0
  234. package/src/assets/iconset/folder.svg +3 -0
  235. package/src/assets/iconset/gallery.svg +3 -0
  236. package/src/assets/iconset/globe-01.svg +3 -0
  237. package/src/assets/iconset/globe-04.svg +5 -0
  238. package/src/assets/iconset/globe-bold.svg +4 -0
  239. package/src/assets/iconset/guard.svg +3 -0
  240. package/src/assets/iconset/headphones-01.svg +3 -0
  241. package/src/assets/iconset/headphones-02.svg +5 -0
  242. package/src/assets/iconset/headset-bold.svg +4 -0
  243. package/src/assets/iconset/heart-bold.svg +3 -0
  244. package/src/assets/iconset/heart.svg +3 -0
  245. package/src/assets/iconset/help-circle.svg +5 -0
  246. package/src/assets/iconset/home-2.svg +4 -0
  247. package/src/assets/iconset/home-line.svg +3 -0
  248. package/src/assets/iconset/hourglass-02.svg +5 -0
  249. package/src/assets/iconset/image-01.svg +5 -0
  250. package/src/assets/iconset/image-03.svg +3 -0
  251. package/src/assets/iconset/image.svg +4 -0
  252. package/src/assets/iconset/inbox-01.svg +3 -0
  253. package/src/assets/iconset/inbox-arrow-down.svg +3 -0
  254. package/src/assets/iconset/info-circle.svg +3 -0
  255. package/src/assets/iconset/keyboard-line.svg +9 -0
  256. package/src/assets/iconset/lamp-charge.svg +5 -0
  257. package/src/assets/iconset/layer.svg +3 -0
  258. package/src/assets/iconset/light.svg +6 -0
  259. package/src/assets/iconset/like-dislike.svg +6 -0
  260. package/src/assets/iconset/lock-03.svg +3 -0
  261. package/src/assets/iconset/logout.svg +3 -0
  262. package/src/assets/iconset/magicpen.svg +7 -0
  263. package/src/assets/iconset/mail-01.svg +5 -0
  264. package/src/assets/iconset/mail.svg +3 -0
  265. package/src/assets/iconset/marker.svg +3 -0
  266. package/src/assets/iconset/medal-star.svg +5 -0
  267. package/src/assets/iconset/menu-04.svg +3 -0
  268. package/src/assets/iconset/menu.svg +5 -0
  269. package/src/assets/iconset/message-circle-01.svg +5 -0
  270. package/src/assets/iconset/message-plus-circle.svg +3 -0
  271. package/src/assets/iconset/message-question-circle.svg +5 -0
  272. package/src/assets/iconset/message-text-circle-01.svg +5 -0
  273. package/src/assets/iconset/message-text-square-02.svg +3 -0
  274. package/src/assets/iconset/message-x-square.svg +3 -0
  275. package/src/assets/iconset/microphone-02.svg +3 -0
  276. package/src/assets/iconset/microphone-slash.svg +8 -0
  277. package/src/assets/iconset/mirror.svg +4 -0
  278. package/src/assets/iconset/moon-01.svg +3 -0
  279. package/src/assets/iconset/moon-bold.svg +3 -0
  280. package/src/assets/iconset/mouse-circle.svg +4 -0
  281. package/src/assets/iconset/move.svg +5 -0
  282. package/src/assets/iconset/notification-fill.svg +3 -0
  283. package/src/assets/iconset/notification-text.svg +3 -0
  284. package/src/assets/iconset/notification.svg +5 -0
  285. package/src/assets/iconset/pdf-01.svg +6 -0
  286. package/src/assets/iconset/pencil-01.svg +5 -0
  287. package/src/assets/iconset/phone-01.svg +3 -0
  288. package/src/assets/iconset/phone-arrow-down-left.svg +4 -0
  289. package/src/assets/iconset/phone-arrow-up-right.svg +8 -0
  290. package/src/assets/iconset/phone-hang-up.svg +5 -0
  291. package/src/assets/iconset/phone-hangup2.svg +8 -0
  292. package/src/assets/iconset/phone-incoming-01.svg +3 -0
  293. package/src/assets/iconset/phone-outgoing-01.svg +3 -0
  294. package/src/assets/iconset/phone-plus.svg +3 -0
  295. package/src/assets/iconset/phone-x.svg +3 -0
  296. package/src/assets/iconset/phone.svg +3 -0
  297. package/src/assets/iconset/plus-circle.svg +3 -0
  298. package/src/assets/iconset/plus.svg +4 -0
  299. package/src/assets/iconset/printer.svg +3 -0
  300. package/src/assets/iconset/question-mark-circle.svg +5 -0
  301. package/src/assets/iconset/refresh-ccw-01.svg +3 -0
  302. package/src/assets/iconset/refresh-cw-01.svg +3 -0
  303. package/src/assets/iconset/refresh-cw-04.svg +3 -0
  304. package/src/assets/iconset/refresh-right-square-bold.svg +3 -0
  305. package/src/assets/iconset/remove-circle.svg +12 -0
  306. package/src/assets/iconset/repeat-04.svg +3 -0
  307. package/src/assets/iconset/repeat-bold.svg +3 -0
  308. package/src/assets/iconset/ruler-pen.svg +4 -0
  309. package/src/assets/iconset/search-lg.svg +3 -0
  310. package/src/assets/iconset/search-md.svg +5 -0
  311. package/src/assets/iconset/search-refraction.svg +5 -0
  312. package/src/assets/iconset/search.svg +3 -0
  313. package/src/assets/iconset/send-01.svg +3 -0
  314. package/src/assets/iconset/send-02.svg +5 -0
  315. package/src/assets/iconset/send-diagonal.svg +3 -0
  316. package/src/assets/iconset/setting-2.svg +4 -0
  317. package/src/assets/iconset/settings-02.svg +4 -0
  318. package/src/assets/iconset/settings-04.svg +5 -0
  319. package/src/assets/iconset/settings-2.svg +4 -0
  320. package/src/assets/iconset/settings-cog.svg +3 -0
  321. package/src/assets/iconset/settings.svg +4 -0
  322. package/src/assets/iconset/share-01.svg +4 -0
  323. package/src/assets/iconset/share-03.svg +3 -0
  324. package/src/assets/iconset/share-04.svg +3 -0
  325. package/src/assets/iconset/share-05.svg +5 -0
  326. package/src/assets/iconset/share-06.svg +3 -0
  327. package/src/assets/iconset/share-bold.svg +3 -0
  328. package/src/assets/iconset/shield-01.svg +3 -0
  329. package/src/assets/iconset/shield-bold.svg +3 -0
  330. package/src/assets/iconset/solar-check.svg +3 -0
  331. package/src/assets/iconset/speaker-wave.svg +9 -0
  332. package/src/assets/iconset/speaker.svg +5 -0
  333. package/src/assets/iconset/speedometer-03.svg +3 -0
  334. package/src/assets/iconset/star-rounded.svg +3 -0
  335. package/src/assets/iconset/star.svg +3 -0
  336. package/src/assets/iconset/sun.svg +5 -0
  337. package/src/assets/iconset/target-03.svg +3 -0
  338. package/src/assets/iconset/text-input.svg +3 -0
  339. package/src/assets/iconset/translate.svg +7 -0
  340. package/src/assets/iconset/trash-02.svg +3 -0
  341. package/src/assets/iconset/trash-03.svg +5 -0
  342. package/src/assets/iconset/trash-04.svg +3 -0
  343. package/src/assets/iconset/trash.svg +7 -0
  344. package/src/assets/iconset/trush-square-bold.svg +3 -0
  345. package/src/assets/iconset/unlimited.svg +3 -0
  346. package/src/assets/iconset/user-circle.svg +3 -0
  347. package/src/assets/iconset/user-jogging.svg +3 -0
  348. package/src/assets/iconset/user-plus-01.svg +5 -0
  349. package/src/assets/iconset/user-square.svg +5 -0
  350. package/src/assets/iconset/user-x-01.svg +5 -0
  351. package/src/assets/iconset/user-x-02.svg +3 -0
  352. package/src/assets/iconset/user2.svg +3 -0
  353. package/src/assets/iconset/users-02.svg +5 -0
  354. package/src/assets/iconset/users-speaker.svg +7 -0
  355. package/src/assets/iconset/verify.svg +3 -0
  356. package/src/assets/iconset/voice-cricle.svg +8 -0
  357. package/src/assets/iconset/x-circle.svg +3 -0
  358. package/src/assets/iconset/x-close.svg +3 -0
  359. package/src/assets/iconset/x-sm.svg +3 -0
  360. package/src/assets/iconset/zap.svg +3 -0
  361. package/src/assets/images/background.jpg +0 -0
  362. package/src/assets/loading_animation.json +1 -0
  363. package/src/assets/products.json +98 -0
  364. package/src/assets/samples/carousel-sample.json +100 -81
  365. package/src/assets/samples/getSamples.ts +39 -66
  366. package/src/assets/samples/paywall-1.json +220 -0
  367. package/src/assets/samples/simple-1.json +9 -2
  368. package/src/assets/samples/simple-2.json +37 -9
  369. package/src/assets/samples/vpn-onboard-1.json +326 -718
  370. package/src/assets/samples/vpn-onboard-2.json +329 -709
  371. package/src/assets/samples/vpn-onboard-3.json +297 -706
  372. package/src/assets/samples/vpn-onboard-4.json +297 -707
  373. package/src/assets/samples/vpn-onboard-5.json +440 -919
  374. package/src/assets/samples/vpn-onboard-6.json +301 -612
  375. package/src/attributes-editor/SpecialCategorySection.tsx +1 -1
  376. package/src/build-components/BIcon/BIcon.tsx +56 -0
  377. package/src/build-components/BIcon/BIconProps.generated.ts +82 -0
  378. package/src/build-components/BIcon/pattern.json +47 -0
  379. package/src/build-components/BackgroundImage/BackgroundImageProps.generated.ts +4 -0
  380. package/src/build-components/BackgroundImage/pattern.json +2 -2
  381. package/src/build-components/Button/Button.tsx +14 -1
  382. package/src/build-components/Button/ButtonProps.generated.ts +4 -0
  383. package/src/build-components/Button/pattern.json +4 -1
  384. package/src/build-components/Carousel/CarouselProps.generated.ts +4 -0
  385. package/src/build-components/Carousel/pattern.json +2 -2
  386. package/src/build-components/CarouselButtons/CarouselButtonsProps.generated.ts +4 -0
  387. package/src/build-components/CarouselButtons/pattern.json +1 -1
  388. package/src/build-components/CarouselDots/CarouselDotsProps.generated.ts +4 -0
  389. package/src/build-components/CarouselDots/pattern.json +1 -1
  390. package/src/build-components/CarouselItem/CarouselItem.tsx +1 -1
  391. package/src/build-components/CarouselItem/CarouselItemProps.generated.ts +4 -0
  392. package/src/build-components/CarouselItem/pattern.json +1 -1
  393. package/src/build-components/CarouselProvider/CarouselProvider.tsx +1 -1
  394. package/src/build-components/CarouselProvider/CarouselProviderProps.generated.ts +4 -0
  395. package/src/build-components/CarouselProvider/pattern.json +1 -1
  396. package/src/build-components/Image/ImageProps.generated.ts +4 -0
  397. package/src/build-components/Image/pattern.json +1 -1
  398. package/src/build-components/Main/Main.tsx +61 -0
  399. package/src/build-components/Main/MainProps.generated.ts +64 -0
  400. package/src/build-components/Main/pattern.json +35 -0
  401. package/src/build-components/Onboard/OnboardProps.generated.ts +4 -0
  402. package/src/build-components/OnboardButton/OnboardButtonProps.generated.ts +4 -0
  403. package/src/build-components/OnboardButtons/OnboardButtonsProps.generated.ts +4 -0
  404. package/src/build-components/OnboardDot/OnboardDotProps.generated.ts +4 -0
  405. package/src/build-components/OnboardFooter/OnboardFooterProps.generated.ts +4 -0
  406. package/src/build-components/OnboardImage/OnboardImageProps.generated.ts +4 -0
  407. package/src/build-components/OnboardItem/OnboardItem.tsx +1 -1
  408. package/src/build-components/OnboardItem/OnboardItemProps.generated.ts +4 -0
  409. package/src/build-components/OnboardProvider/OnboardProviderProps.generated.ts +4 -1
  410. package/src/build-components/OnboardProvider/pattern.json +6 -16
  411. package/src/build-components/OnboardSubtitle/OnboardSubtitleProps.generated.ts +4 -0
  412. package/src/build-components/OnboardTitle/OnboardTitleProps.generated.ts +4 -0
  413. package/src/build-components/PaywallBackground/PaywallBackground.tsx +47 -0
  414. package/src/build-components/PaywallBackground/PaywallBackgroundProps.generated.ts +63 -0
  415. package/src/build-components/PaywallBackground/pattern.json +16 -0
  416. package/src/build-components/PaywallCloseButton/PaywallCloseButton.tsx +62 -0
  417. package/src/build-components/PaywallCloseButton/PaywallCloseButtonProps.generated.ts +83 -0
  418. package/src/build-components/PaywallCloseButton/pattern.json +23 -0
  419. package/src/build-components/PaywallOptions/PaywallOptionButton.tsx +64 -0
  420. package/src/build-components/PaywallOptions/PaywallOptions.tsx +92 -0
  421. package/src/build-components/PaywallOptions/PaywallOptionsProps.generated.ts +63 -0
  422. package/src/build-components/PaywallOptions/pattern.json +22 -0
  423. package/src/build-components/PaywallOptions/usePaywallOptionParamsFactory.ts +42 -0
  424. package/src/build-components/PaywallProvider/PaywallProvider.tsx +78 -0
  425. package/src/build-components/PaywallProvider/PaywallProviderProps.generated.ts +63 -0
  426. package/src/build-components/PaywallProvider/pattern.json +24 -0
  427. package/src/build-components/PaywallSubscribeButton/PaywallSubscribeButton.tsx +60 -0
  428. package/src/build-components/PaywallSubscribeButton/PaywallSubscribeButtonProps.generated.ts +77 -0
  429. package/src/build-components/PaywallSubscribeButton/pattern.json +27 -0
  430. package/src/build-components/RadioButton/RadioButton.tsx +123 -0
  431. package/src/build-components/RadioButton/RadioButtonProps.generated.ts +66 -0
  432. package/src/build-components/RadioButton/pattern.json +42 -0
  433. package/src/build-components/RenderNode.generated.tsx +133 -37
  434. package/src/build-components/Text/Text.tsx +3 -3
  435. package/src/build-components/Text/TextProps.generated.ts +4 -0
  436. package/src/build-components/Text/pattern.json +1 -1
  437. package/src/build-components/View/ViewProps.generated.ts +4 -0
  438. package/src/build-components/View/pattern.json +44 -6
  439. package/src/build-components/index.ts +50 -10
  440. package/src/build-components/patterns.generated.ts +4516 -712
  441. package/src/components/AttributesEditorPanel.tsx +15 -9
  442. package/src/components/BottomBar.tsx +236 -0
  443. package/src/components/Builder.tsx +3 -5
  444. package/src/components/BuilderButton.tsx +2 -7
  445. package/src/components/BuilderProvider.tsx +45 -0
  446. package/src/components/DeviceNavigationBar.tsx +1 -1
  447. package/src/components/EditorHeader.tsx +15 -5
  448. package/src/components/Icon.generated.tsx +540 -0
  449. package/src/components/LoadingComponent.tsx +10 -0
  450. package/src/components/LocalizationParamsProvider.tsx +22 -0
  451. package/src/components/MobilePanelToggleButton.tsx +39 -0
  452. package/src/components/ParamsProvider.tsx +38 -0
  453. package/src/hooks/useLocalizationParams.ts +5 -0
  454. package/src/hooks/useLocalize.ts +23 -0
  455. package/src/hooks/useMinimumDelay.ts +20 -0
  456. package/src/hooks/useMobileEditorPanels.ts +56 -0
  457. package/src/hooks/useParams.ts +8 -0
  458. package/src/hooks/useSafeAreaViewStyle.ts +67 -0
  459. package/src/hooks/useSyncProjectPageStore.ts +40 -0
  460. package/src/index.native.ts +75 -0
  461. package/src/index.ts +26 -0
  462. package/src/mockOS/components/MockOSRouter.tsx +9 -14
  463. package/src/mockOS/context/MockOSContext.tsx +12 -36
  464. package/src/mockOS/context/MockOSContextBase.ts +35 -0
  465. package/src/mockOS/index.ts +3 -2
  466. package/src/modals/AddComponentModal.tsx +1 -0
  467. package/src/modals/BenefitEditModal.tsx +160 -0
  468. package/src/modals/BenefitPresetsModal.tsx +166 -0
  469. package/src/modals/IconPickerModal.tsx +109 -0
  470. package/src/modals/MockableFeatureModal.tsx +292 -0
  471. package/src/modals/ProductEditModal.tsx +215 -0
  472. package/src/modals/ProductPresetsModal.tsx +151 -0
  473. package/src/modals/ScreenColorsModal.tsx +115 -0
  474. package/src/modals/index.ts +7 -0
  475. package/src/pages/ProjectPage.tsx +99 -232
  476. package/src/pages/tabs/BuilderPanel.tsx +15 -9
  477. package/src/paywall/hooks/index.ts +5 -0
  478. package/src/paywall/hooks/useCalculateLocalizedPrice.ts +6 -0
  479. package/src/paywall/hooks/useCarouselOptionsSeperator.ts +8 -0
  480. package/src/paywall/hooks/useCloseStatusPaywall.ts +6 -0
  481. package/src/paywall/hooks/useDiscountRate.ts +6 -0
  482. package/src/paywall/hooks/usePaywallCounter.ts +6 -0
  483. package/src/paywall/types/benefits.ts +44 -0
  484. package/src/paywall/types/paywall-types.ts +51 -0
  485. package/src/store.ts +165 -47
  486. package/src/styles/base/_global.scss +61 -45
  487. package/src/styles/components/_attributes-editor.scss +49 -6
  488. package/src/styles/components/_bottom-bar.scss +113 -0
  489. package/src/styles/components/_editor-shell.scss +0 -25
  490. package/src/styles/components/_ui-components.scss +2 -1
  491. package/src/styles/index.scss +6 -0
  492. package/src/styles/modals/_benefit-edit-modal.scss +17 -0
  493. package/src/styles/modals/_benefit-presets-modal.scss +79 -0
  494. package/src/styles/modals/_mockable-feature-modal.scss +15 -0
  495. package/src/styles/modals/_product-edit-modal.scss +23 -0
  496. package/src/styles/modals/_product-presets-modal.scss +81 -0
  497. package/src/types/Icons.ts +244 -0
  498. package/src/types/Project.ts +5 -0
  499. package/src/types/jest-globals.d.ts +13 -0
  500. package/src/utils/analyseNode.ts +22 -109
  501. package/src/utils/analyseNodeByPatterns.ts +453 -0
  502. package/src/utils/analyseNodeStructural.ts +52 -0
  503. package/src/utils/extractViewStyle.ts +19 -0
  504. package/src/utils/findNodeByKeyNested.ts +32 -0
  505. package/src/utils/isCarousel.ts +21 -5
  506. package/src/utils/nodeGuards.ts +26 -0
  507. package/src/utils/nodeTree.ts +99 -0
  508. package/src/utils/novaToJson.ts +21 -9
  509. package/src/utils/patterns.ts +62 -3
  510. package/src/utils/replaceLocalizationParams.ts +15 -0
  511. package/dist/pages/tabs/SideTool.d.ts +0 -8
  512. package/src/pages/tabs/SideTool.tsx +0 -260
@@ -1,13 +1,19 @@
1
1
  {
2
2
  "name": "vpn-onboard-6 (legacy)",
3
- "version": "0.0.0",
4
- "type": "nova",
3
+ "version": "1.0.0",
4
+ "type": "onboard",
5
5
  "appConfig": {
6
6
  "theme": "dark",
7
7
  "isRtl": false,
8
8
  "screenStyle": {
9
- "light": { "backgroundColor": "#FDFDFD", "color": "#161827" },
10
- "dark": { "backgroundColor": "#12131A", "color": "#E9EBF9" }
9
+ "light": {
10
+ "backgroundColor": "#FDFDFD",
11
+ "color": "#161827"
12
+ },
13
+ "dark": {
14
+ "backgroundColor": "#12131A",
15
+ "color": "#E9EBF9"
16
+ }
11
17
  },
12
18
  "localication": {
13
19
  "en": {
@@ -70,639 +76,322 @@
70
76
  "defaultLanguage": "en"
71
77
  },
72
78
  "data": {
73
- "name": "app_onboard1",
74
- "key": "app_onboard",
75
- "theme": "dark",
76
- "order": 3,
77
- "data": {
78
- "layout": "onboard-layout",
79
- "key": "cJVVSS7q9Qe1trnb",
80
- "attributes": {
81
- "use_safe_area_inset": true,
82
- "general_components": [
79
+ "type": "Main",
80
+ "isMain": true,
81
+ "key": "cJVVSS7q9Qe1trnb",
82
+ "attributes": {
83
+ "useSafeAreaView": true
84
+ },
85
+ "children": [
86
+ {
87
+ "type": "OnboardProvider",
88
+ "children": [
83
89
  {
84
- "layout": "dots-layout",
85
- "key": "cdNahru8m9BDyVr9",
86
- "attributes": {
87
- "position": "before_buttons",
88
- "dots_type": "Dots Type Info",
89
- "dot": [
90
- {
91
- "layout": "expanding_dot",
92
- "key": "ctWoX6jkgKy1nNGQ",
93
- "attributes": {
94
- "inactive_dot_opacity": null,
95
- "expanding_dot_width": "20",
96
- "dot_style": null,
97
- "container_style": null,
98
- "active_dot_color": null
90
+ "type": "Onboard",
91
+ "children": [
92
+ {
93
+ "type": "OnboardItem",
94
+ "key": "app_onboard-page1",
95
+ "children": [
96
+ {
97
+ "type": "OnboardImage",
98
+ "attributes": {
99
+ "src": "https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/9cb1d668b3724655f93a91e5eee771c5.png",
100
+ "height": 400,
101
+ "resizeMode": "contain"
102
+ },
103
+ "children": null
104
+ },
105
+ {
106
+ "type": "OnboardTitle",
107
+ "attributes": {
108
+ "color": "#F4F5FF"
109
+ },
110
+ "children": "onboard.title.one-page"
111
+ },
112
+ {
113
+ "type": "OnboardSubtitle",
114
+ "attributes": {
115
+ "color": "#DBDDEB"
116
+ },
117
+ "children": "onboard.subtitle.one-page"
99
118
  }
100
- }
101
- ],
102
- "styles": []
103
- }
119
+ ]
120
+ },
121
+ {
122
+ "type": "OnboardItem",
123
+ "key": "app_onboard-page2",
124
+ "children": [
125
+ {
126
+ "type": "OnboardImage",
127
+ "attributes": {
128
+ "src": "https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/f8d0c64bf89cc5f2f14126d0544ba174.png",
129
+ "height": 400,
130
+ "resizeMode": "contain"
131
+ },
132
+ "children": null
133
+ },
134
+ {
135
+ "type": "OnboardTitle",
136
+ "attributes": {
137
+ "color": "#F4F5FF"
138
+ },
139
+ "children": "onboard.title.two-page"
140
+ },
141
+ {
142
+ "type": "OnboardSubtitle",
143
+ "attributes": {
144
+ "color": "#DBDDEB"
145
+ },
146
+ "children": "onboard.subtitle.two-page"
147
+ }
148
+ ]
149
+ },
150
+ {
151
+ "type": "OnboardItem",
152
+ "key": "app_onboard-page3",
153
+ "children": [
154
+ {
155
+ "type": "OnboardImage",
156
+ "attributes": {
157
+ "src": "https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/ad823809885c1a2a8e4632039f35a94e.png",
158
+ "height": 400,
159
+ "resizeMode": "contain"
160
+ },
161
+ "children": null
162
+ },
163
+ {
164
+ "type": "OnboardTitle",
165
+ "attributes": {
166
+ "color": "#F4F5FF"
167
+ },
168
+ "children": "onboard.title.three-page"
169
+ },
170
+ {
171
+ "type": "OnboardSubtitle",
172
+ "attributes": {
173
+ "color": "#DBDDEB"
174
+ },
175
+ "children": "onboard.subtitle.three-page"
176
+ }
177
+ ]
178
+ },
179
+ {
180
+ "type": "OnboardItem",
181
+ "key": "app_onboard-page4",
182
+ "children": [
183
+ {
184
+ "type": "OnboardImage",
185
+ "attributes": {
186
+ "src": "https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/ede1705c51f3434ae9053ed5f29bf5dd.png",
187
+ "height": 400,
188
+ "resizeMode": "contain"
189
+ },
190
+ "children": null
191
+ },
192
+ {
193
+ "type": "OnboardTitle",
194
+ "attributes": {
195
+ "color": "#F4F5FF"
196
+ },
197
+ "children": "onboard.title.four-page"
198
+ },
199
+ {
200
+ "type": "OnboardSubtitle",
201
+ "attributes": {
202
+ "color": "#DBDDEB"
203
+ },
204
+ "children": "onboard.subtitle.four-page"
205
+ }
206
+ ]
207
+ }
208
+ ]
104
209
  },
105
210
  {
106
- "layout": "footer-layout",
107
- "key": "cgOl0PVI66a51Xr3",
211
+ "type": "OnboardDot",
108
212
  "attributes": {
109
- "texts": [
110
- {
111
- "layout": "Text",
112
- "key": "cAqUfPg1uA4PjtmV",
113
- "attributes": {
114
- "text_localization_key": "view.onboarding.footer.description",
115
- "text_color": "#81838F",
116
- "width": null,
117
- "linkedwords": [
118
- {
119
- "layout": "LinkedWords",
120
- "key": "c0wJnbvQu8vLB0BJ",
121
- "attributes": {
122
- "linked_word_localization_key": "view.onboarding.btnPrivacy",
123
- "linked_word_color": "#0450E2",
124
- "page": "privacy"
125
- }
126
- },
127
- {
128
- "layout": "LinkedWords",
129
- "key": "cyoIya4E71u4OHWq",
130
- "attributes": {
131
- "linked_word_localization_key": "view.onboarding.btnTerms",
132
- "linked_word_color": "#0450E2",
133
- "page": "terms"
134
- }
135
- }
136
- ],
137
- "styles": []
138
- }
139
- }
140
- ]
141
- }
142
- }
143
- ],
144
- "data": [
213
+ "dotType": "expanding_dot",
214
+ "expanding_dot_width": 20
215
+ },
216
+ "children": null
217
+ },
145
218
  {
146
- "layout": "simple-onboard-layout",
147
- "key": "cQcJZFJji41pTo1Q",
219
+ "type": "OnboardButtons",
148
220
  "attributes": {
149
- "key": "app_onboard-page1",
150
- "components": [
151
- {
152
- "layout": "image-layout",
153
- "key": "cXoQJuJ7cxH4s64I",
154
- "attributes": {
155
- "is_bg_image": false,
156
- "height": "400",
157
- "styles": [
158
- {
159
- "layout": "style-layout",
160
- "key": "c5j5kKdUlw2FPgpj",
161
- "attributes": {
162
- "styles": [
163
- {
164
- "layout": "Styles",
165
- "key": "c2wx1diAfvoO73UE",
166
- "attributes": {
167
- "type": "containerStyle",
168
- "style": {
169
- "marginTop": 40
170
- }
171
- }
172
- }
173
- ]
174
- }
175
- }
176
- ],
177
- "android_height": "400",
178
- "ios_height": "400",
179
- "image": "https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/9cb1d668b3724655f93a91e5eee771c5.png"
180
- }
221
+ "buttons_direction": "row",
222
+ "condition": "carousel-index",
223
+ "conditionVariable": 0
224
+ },
225
+ "children": [
226
+ {
227
+ "type": "OnboardButton",
228
+ "attributes": {
229
+ "labelKey": "onboard.skip.one-page",
230
+ "button_text_color": "#0450E2",
231
+ "button_background_color": "#161827",
232
+ "flex": 1,
233
+ "events": [
234
+ {
235
+ "type": "Navigate",
236
+ "targetIndex": 3
237
+ }
238
+ ]
181
239
  },
182
- {
183
- "layout": "title-layout",
184
- "key": "cDhqeMQJnHwrKDWx",
185
- "attributes": {
186
- "title_localization_key": "onboard.title.one-page",
187
- "title_color": "#F4F5FF",
188
- "coloredwords": [],
189
- "styles": [],
190
- "number_of_lines": "2",
191
- "adaptive_font_size": false
192
- }
240
+ "children": null
241
+ },
242
+ {
243
+ "type": "OnboardButton",
244
+ "attributes": {
245
+ "labelKey": "onboard.next.one-page",
246
+ "button_text_color": "#FFFFFF",
247
+ "button_background_color": "#0450E2",
248
+ "flex": 1,
249
+ "events": [
250
+ {
251
+ "type": "Navigate",
252
+ "targetIndex": 1
253
+ }
254
+ ]
193
255
  },
194
- {
195
- "layout": "subtitle-layout",
196
- "key": "cNXYD8CPZaJoOKjR",
197
- "attributes": {
198
- "subtitle_localization_key": "onboard.subtitle.one-page",
199
- "subtitle_color": "#DBDDEB",
200
- "subtitle_font": null,
201
- "styles": []
202
- }
203
- },
204
- {
205
- "layout": "Buttons",
206
- "key": "cWgBUJIek4XF9XfH",
207
- "attributes": {
208
- "buttons_direction": "row",
209
- "buttons": [
210
- {
211
- "layout": "skip-button-layout",
212
- "key": "cG54WG2pH8LVehkt",
213
- "attributes": {
214
- "flex": "1",
215
- "button_text_localization_key": "onboard.skip.one-page",
216
- "button_text_color": "#0450E2",
217
- "is_transparant_bg": false,
218
- "button_background_color": "#161827",
219
- "actions": [
220
- {
221
- "layout": "action-layout",
222
- "key": "cxo62SYr15CFXzWj",
223
- "attributes": {
224
- "events": [
225
- {
226
- "layout": "Navigate",
227
- "key": "cLhVLu0pR5E3OuHk",
228
- "attributes": {
229
- "next_page_key": "app_onboard-page4",
230
- "if_allowed_this_permissions": null,
231
- "if_not_allowed_this_permissions": null,
232
- "navigate_backward": null,
233
- "close_button_delay": null
234
- }
235
- }
236
- ]
237
- }
238
- }
239
- ],
240
- "styles": [],
241
- "animation": null,
242
- "animation_color": null
243
- }
244
- },
245
- {
246
- "layout": "button-layout",
247
- "key": "c8r6biKAKhGKBZXn",
248
- "attributes": {
249
- "show_text": true,
250
- "button_text_localization_key": "onboard.next.one-page",
251
- "is_passive_button": false,
252
- "flex": "1",
253
- "show_icon": false,
254
- "icons": [],
255
- "actions": [
256
- {
257
- "layout": "action-layout",
258
- "key": "c7fcavpy1HpWKAHU",
259
- "attributes": {
260
- "events": [
261
- {
262
- "layout": "Navigate",
263
- "key": "cEgzPBOiNNrbshp5",
264
- "attributes": {
265
- "next_page_key": "app_onboard-page2",
266
- "if_allowed_this_permissions": null,
267
- "if_not_allowed_this_permissions": null,
268
- "navigate_backward": null,
269
- "close_button_delay": null
270
- }
271
- }
272
- ]
273
- }
274
- }
275
- ],
276
- "styles": [],
277
- "button_text_color": "#FFFFFF",
278
- "button_background_color": "#0450E2",
279
- "animation": null,
280
- "animation_color": null
281
- }
282
- }
283
- ]
284
- }
285
- }
286
- ],
287
- "min_android_version": null
288
- }
256
+ "children": null
257
+ }
258
+ ]
289
259
  },
290
260
  {
291
- "layout": "simple-onboard-layout",
292
- "key": "crIFXHKvOoOdLFbc",
261
+ "type": "OnboardButtons",
293
262
  "attributes": {
294
- "key": "app_onboard-page2",
295
- "components": [
296
- {
297
- "layout": "image-layout",
298
- "key": "crGN7ZD9Al0KDbyO",
299
- "attributes": {
300
- "is_bg_image": false,
301
- "height": "400",
302
- "styles": [
303
- {
304
- "layout": "style-layout",
305
- "key": "ctLDm5bItpLEGj67",
306
- "attributes": {
307
- "styles": [
308
- {
309
- "layout": "Styles",
310
- "key": "cjvTMl0iVyMoSLJX",
311
- "attributes": {
312
- "type": "containerStyle",
313
- "style": {
314
- "marginTop": 40
315
- }
316
- }
317
- }
318
- ]
319
- }
320
- }
321
- ],
322
- "android_height": "400",
323
- "ios_height": "400",
324
- "image": "https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/f8d0c64bf89cc5f2f14126d0544ba174.png"
325
- }
263
+ "buttons_direction": "row",
264
+ "condition": "carousel-index",
265
+ "conditionVariable": 1
266
+ },
267
+ "children": [
268
+ {
269
+ "type": "OnboardButton",
270
+ "attributes": {
271
+ "labelKey": "onboard.skip.two-page",
272
+ "button_text_color": "#0450E2",
273
+ "button_background_color": "#161827",
274
+ "flex": 1,
275
+ "events": [
276
+ {
277
+ "type": "Navigate",
278
+ "targetIndex": 3
279
+ }
280
+ ]
326
281
  },
327
- {
328
- "layout": "title-layout",
329
- "key": "cSlHcp6WVRGdj233",
330
- "attributes": {
331
- "title_localization_key": "onboard.title.two-page",
332
- "title_color": "#F4F5FF",
333
- "coloredwords": [],
334
- "styles": [],
335
- "number_of_lines": "2",
336
- "adaptive_font_size": false
337
- }
282
+ "children": null
283
+ },
284
+ {
285
+ "type": "OnboardButton",
286
+ "attributes": {
287
+ "labelKey": "onboard.next.two-page",
288
+ "button_text_color": "#FFFFFF",
289
+ "button_background_color": "#0450E2",
290
+ "flex": 1,
291
+ "events": [
292
+ {
293
+ "type": "Navigate",
294
+ "targetIndex": 2
295
+ }
296
+ ]
338
297
  },
339
- {
340
- "layout": "subtitle-layout",
341
- "key": "ciJuUH1g7kHrcZDq",
342
- "attributes": {
343
- "subtitle_localization_key": "onboard.subtitle.two-page",
344
- "subtitle_color": "#DBDDEB",
345
- "subtitle_font": null,
346
- "styles": []
347
- }
348
- },
349
- {
350
- "layout": "Buttons",
351
- "key": "cSDr8RbSvsWaHgVS",
352
- "attributes": {
353
- "buttons_direction": "row",
354
- "buttons": [
355
- {
356
- "layout": "skip-button-layout",
357
- "key": "cl9p09wdxNez5TmI",
358
- "attributes": {
359
- "flex": "1",
360
- "button_text_localization_key": "onboard.skip.two-page",
361
- "button_text_color": "#0450E2",
362
- "is_transparant_bg": false,
363
- "button_background_color": "#161827",
364
- "actions": [
365
- {
366
- "layout": "action-layout",
367
- "key": "cOARcdUyemgWucuS",
368
- "attributes": {
369
- "events": [
370
- {
371
- "layout": "Navigate",
372
- "key": "cdF9gJjTW63M4S3c",
373
- "attributes": {
374
- "next_page_key": "app_onboard-page4",
375
- "if_allowed_this_permissions": null,
376
- "if_not_allowed_this_permissions": null,
377
- "navigate_backward": null,
378
- "close_button_delay": null
379
- }
380
- }
381
- ]
382
- }
383
- }
384
- ],
385
- "styles": [],
386
- "animation": null,
387
- "animation_color": null
388
- }
389
- },
390
- {
391
- "layout": "button-layout",
392
- "key": "cC9C4xf7Kwnryduw",
393
- "attributes": {
394
- "show_text": true,
395
- "button_text_localization_key": "onboard.next.two-page",
396
- "is_passive_button": false,
397
- "flex": "1",
398
- "show_icon": false,
399
- "icons": [],
400
- "actions": [
401
- {
402
- "layout": "action-layout",
403
- "key": "cO0ZNlY08Wa33OUp",
404
- "attributes": {
405
- "events": [
406
- {
407
- "layout": "Navigate",
408
- "key": "cOwrXBiSMDOXAARa",
409
- "attributes": {
410
- "next_page_key": "app_onboard-page3",
411
- "if_allowed_this_permissions": null,
412
- "if_not_allowed_this_permissions": null,
413
- "navigate_backward": null,
414
- "close_button_delay": null
415
- }
416
- }
417
- ]
418
- }
419
- }
420
- ],
421
- "styles": [],
422
- "button_text_color": "#FFFFFF",
423
- "button_background_color": "#0450E2",
424
- "animation": null,
425
- "animation_color": null
426
- }
427
- }
428
- ]
429
- }
430
- }
431
- ],
432
- "min_android_version": null
433
- }
298
+ "children": null
299
+ }
300
+ ]
434
301
  },
435
302
  {
436
- "layout": "simple-onboard-layout",
437
- "key": "cRcBQOfcmficdPUY",
303
+ "type": "OnboardButtons",
438
304
  "attributes": {
439
- "key": "app_onboard-page3",
440
- "components": [
441
- {
442
- "layout": "image-layout",
443
- "key": "chWqWfotZ42DTHkU",
444
- "attributes": {
445
- "is_bg_image": false,
446
- "height": "400",
447
- "styles": [
448
- {
449
- "layout": "style-layout",
450
- "key": "cjqEEYogrLEzZRtY",
451
- "attributes": {
452
- "styles": [
453
- {
454
- "layout": "Styles",
455
- "key": "c5PHmIfw5M0ncTMb",
456
- "attributes": {
457
- "type": "containerStyle",
458
- "style": {
459
- "marginTop": 40
460
- }
461
- }
462
- }
463
- ]
464
- }
465
- }
466
- ],
467
- "android_height": "400",
468
- "ios_height": "400",
469
- "image": "https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/ad823809885c1a2a8e4632039f35a94e.png"
470
- }
305
+ "buttons_direction": "row",
306
+ "condition": "carousel-index",
307
+ "conditionVariable": 2
308
+ },
309
+ "children": [
310
+ {
311
+ "type": "OnboardButton",
312
+ "attributes": {
313
+ "labelKey": "onboard.skip.three-page",
314
+ "button_text_color": "#0450E2",
315
+ "button_background_color": "#161827",
316
+ "flex": 1,
317
+ "events": [
318
+ {
319
+ "type": "Navigate",
320
+ "targetIndex": 3
321
+ }
322
+ ]
471
323
  },
472
- {
473
- "layout": "title-layout",
474
- "key": "cc69aqukeCYi6zuO",
475
- "attributes": {
476
- "title_localization_key": "onboard.title.three-page",
477
- "title_color": "#F4F5FF",
478
- "coloredwords": [],
479
- "styles": [],
480
- "number_of_lines": "2",
481
- "adaptive_font_size": false
482
- }
324
+ "children": null
325
+ },
326
+ {
327
+ "type": "OnboardButton",
328
+ "attributes": {
329
+ "labelKey": "onboard.next.three-page",
330
+ "button_text_color": "#FFFFFF",
331
+ "button_background_color": "#0450E2",
332
+ "flex": 1,
333
+ "events": [
334
+ {
335
+ "type": "Permission",
336
+ "permission": "rating"
337
+ },
338
+ {
339
+ "type": "Navigate",
340
+ "targetIndex": 3
341
+ }
342
+ ]
483
343
  },
484
- {
485
- "layout": "subtitle-layout",
486
- "key": "cNtG6fvLNACSZliB",
487
- "attributes": {
488
- "subtitle_localization_key": "onboard.subtitle.three-page",
489
- "subtitle_color": "#DBDDEB",
490
- "subtitle_font": null,
491
- "styles": []
492
- }
493
- },
494
- {
495
- "layout": "Buttons",
496
- "key": "cRNaL0iEMtwOMqVT",
497
- "attributes": {
498
- "buttons_direction": "row",
499
- "buttons": [
500
- {
501
- "layout": "skip-button-layout",
502
- "key": "c70LtlMO3Nv6Cgb4",
503
- "attributes": {
504
- "flex": "1",
505
- "button_text_localization_key": "onboard.skip.three-page",
506
- "button_text_color": "#0450E2",
507
- "is_transparant_bg": false,
508
- "button_background_color": "#161827",
509
- "actions": [
510
- {
511
- "layout": "action-layout",
512
- "key": "cmLkX9THQz0n5cmC",
513
- "attributes": {
514
- "events": [
515
- {
516
- "layout": "Navigate",
517
- "key": "cUsGGKCMR6jtd041",
518
- "attributes": {
519
- "next_page_key": "app_onboard-page4",
520
- "if_allowed_this_permissions": null,
521
- "if_not_allowed_this_permissions": null,
522
- "navigate_backward": null,
523
- "close_button_delay": null
524
- }
525
- }
526
- ]
527
- }
528
- }
529
- ],
530
- "styles": [],
531
- "animation": null,
532
- "animation_color": null
533
- }
534
- },
535
- {
536
- "layout": "button-layout",
537
- "key": "cFjtaB6BOUV3Ip29",
538
- "attributes": {
539
- "show_text": true,
540
- "button_text_localization_key": "onboard.next.three-page",
541
- "is_passive_button": false,
542
- "flex": "1",
543
- "show_icon": false,
544
- "icons": [],
545
- "actions": [
546
- {
547
- "layout": "action-layout",
548
- "key": "cWnCp8SEvoozyzHt",
549
- "attributes": {
550
- "events": [
551
- {
552
- "layout": "Permission",
553
- "key": "cuBXgAPhZi9KjP9e",
554
- "attributes": {
555
- "permission": "rating"
556
- }
557
- },
558
- {
559
- "layout": "Navigate",
560
- "key": "cuDh9kCby5zuxxM2",
561
- "attributes": {
562
- "next_page_key": "app_onboard-page4",
563
- "if_allowed_this_permissions": null,
564
- "if_not_allowed_this_permissions": null,
565
- "navigate_backward": null,
566
- "close_button_delay": null
567
- }
568
- }
569
- ]
570
- }
571
- }
572
- ],
573
- "styles": [],
574
- "button_text_color": "#FFFFFF",
575
- "button_background_color": "#0450E2",
576
- "animation": null,
577
- "animation_color": null
578
- }
579
- }
580
- ]
581
- }
582
- }
583
- ],
584
- "min_android_version": null
585
- }
344
+ "children": null
345
+ }
346
+ ]
586
347
  },
587
348
  {
588
- "layout": "simple-onboard-layout",
589
- "key": "cvF8znA2sZJvJKV5",
349
+ "type": "OnboardButtons",
590
350
  "attributes": {
591
- "key": "app_onboard-page4",
592
- "components": [
593
- {
594
- "layout": "image-layout",
595
- "key": "cmw7qmHSA52Mttez",
596
- "attributes": {
597
- "is_bg_image": false,
598
- "height": "400",
599
- "styles": [
600
- {
601
- "layout": "style-layout",
602
- "key": "clFXKiPX8Zc5DZa9",
603
- "attributes": {
604
- "styles": [
605
- {
606
- "layout": "Styles",
607
- "key": "cPLa5Mzc2mMNHcVS",
608
- "attributes": {
609
- "type": "containerStyle",
610
- "style": {
611
- "marginTop": 40
612
- }
613
- }
614
- }
615
- ]
616
- }
617
- }
618
- ],
619
- "android_height": "400",
620
- "ios_height": "400",
621
- "image": "https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/ede1705c51f3434ae9053ed5f29bf5dd.png"
622
- }
351
+ "buttons_direction": "row",
352
+ "condition": "carousel-index",
353
+ "conditionVariable": 3
354
+ },
355
+ "children": [
356
+ {
357
+ "type": "OnboardButton",
358
+ "attributes": {
359
+ "labelKey": "onboard.allow.four-page",
360
+ "button_text_color": "#FFFFFF",
361
+ "button_background_color": "#0450E2",
362
+ "flex": 1,
363
+ "events": [
364
+ {
365
+ "type": "Permission",
366
+ "permission": "notification"
367
+ },
368
+ {
369
+ "type": "Navigate",
370
+ "navigate_to": "subscriptions"
371
+ }
372
+ ]
623
373
  },
624
- {
625
- "layout": "title-layout",
626
- "key": "cMW4PNcuTdZKSngn",
627
- "attributes": {
628
- "title_localization_key": "onboard.title.four-page",
629
- "title_color": "#F4F5FF",
630
- "coloredwords": [],
631
- "styles": [],
632
- "number_of_lines": "2",
633
- "adaptive_font_size": false
634
- }
635
- },
636
- {
637
- "layout": "subtitle-layout",
638
- "key": "ccpicN327gsRyFJp",
639
- "attributes": {
640
- "subtitle_localization_key": "onboard.subtitle.four-page",
641
- "subtitle_color": "#DBDDEB",
642
- "subtitle_font": null,
643
- "styles": []
644
- }
645
- },
646
- {
647
- "layout": "Buttons",
648
- "key": "cdm2DIT7kD4SvwxW",
649
- "attributes": {
650
- "buttons_direction": "row",
651
- "buttons": [
652
- {
653
- "layout": "button-layout",
654
- "key": "cc4zDTvmHh5AhjTr",
655
- "attributes": {
656
- "show_text": true,
657
- "button_text_localization_key": "onboard.allow.four-page",
658
- "is_passive_button": false,
659
- "flex": "1",
660
- "show_icon": false,
661
- "icons": [],
662
- "actions": [
663
- {
664
- "layout": "action-layout",
665
- "key": "cab9Uvd4nqeUA4Hb",
666
- "attributes": {
667
- "events": [
668
- {
669
- "layout": "Permission",
670
- "key": "cW6WWySokxpYwV9w",
671
- "attributes": {
672
- "permission": "notification"
673
- }
674
- },
675
- {
676
- "layout": "Navigate",
677
- "key": "cBdaRtFk5Iqo1FGu",
678
- "attributes": {
679
- "next_page_key": "subscriptions",
680
- "if_allowed_this_permissions": null,
681
- "if_not_allowed_this_permissions": null,
682
- "navigate_backward": "home",
683
- "close_button_delay": null
684
- }
685
- }
686
- ]
687
- }
688
- }
689
- ],
690
- "styles": [],
691
- "button_text_color": "#FFFFFF",
692
- "button_background_color": "#0450E2",
693
- "animation": null,
694
- "animation_color": null
695
- }
696
- }
697
- ]
698
- }
699
- }
700
- ],
701
- "min_android_version": "12"
702
- }
374
+ "children": null
375
+ }
376
+ ]
377
+ },
378
+ {
379
+ "type": "OnboardFooter",
380
+ "attributes": {
381
+ "gap": 8,
382
+ "textLocalizationKey": "view.onboarding.footer.description",
383
+ "textColor": "#81838F",
384
+ "linkedWordFirstLocalizationKey": "view.onboarding.btnPrivacy",
385
+ "linkedWordFirstColor": "#0450E2",
386
+ "linkedWordFirstPage": "privacy",
387
+ "linkedWordSecondLocalizationKey": "view.onboarding.btnTerms",
388
+ "linkedWordSecondColor": "#0450E2",
389
+ "linkedWordSecondPage": "terms"
390
+ },
391
+ "children": null
703
392
  }
704
393
  ]
705
394
  }
706
- }
395
+ ]
707
396
  }
708
397
  }