@developer_tribe/react-builder 1.2.38 → 1.2.40

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 (134) hide show
  1. package/dist/build-components/BIcon/BIconProps.generated.d.ts +1 -1
  2. package/dist/build-components/CountDown/CountDownProps.generated.d.ts +1 -1
  3. package/dist/build-components/Image/ImageProps.generated.d.ts +2 -0
  4. package/dist/build-components/NavigationBarColor/NavigationBarColorProps.generated.d.ts +1 -40
  5. package/dist/build-components/OnboardFooter/OnboardFooterProps.generated.d.ts +1 -1
  6. package/dist/build-components/OnboardImage/OnboardImageProps.generated.d.ts +3 -1
  7. package/dist/build-components/OnboardSubtitle/OnboardSubtitleProps.generated.d.ts +1 -1
  8. package/dist/build-components/OnboardTitle/OnboardTitleProps.generated.d.ts +1 -1
  9. package/dist/build-components/PaywallBackground/PaywallBackgroundProps.generated.d.ts +1 -1
  10. package/dist/build-components/PaywallCloseButton/PaywallCloseButtonProps.generated.d.ts +1 -1
  11. package/dist/build-components/PaywallSubscribeButton/PaywallSubscribeButtonProps.generated.d.ts +1 -1
  12. package/dist/build-components/PriceTag/PriceTagProps.generated.d.ts +1 -1
  13. package/dist/build-components/Pricing/PricingProps.generated.d.ts +1 -1
  14. package/dist/build-components/Promo/PromoProps.generated.d.ts +1 -1
  15. package/dist/build-components/StatusBarColor/StatusBarColorProps.generated.d.ts +1 -1
  16. package/dist/build-components/patterns.generated.d.ts +51 -356
  17. package/dist/components/BuilderProvider.d.ts +1 -0
  18. package/dist/components/DeviceButton.d.ts +4 -1
  19. package/dist/index.cjs.js +1 -1
  20. package/dist/index.cjs.js.map +1 -1
  21. package/dist/index.esm.js +1 -1
  22. package/dist/index.esm.js.map +1 -1
  23. package/dist/index.web.cjs.js +4 -4
  24. package/dist/index.web.cjs.js.map +1 -1
  25. package/dist/index.web.esm.js +4 -4
  26. package/dist/index.web.esm.js.map +1 -1
  27. package/dist/mockOS/context/MockOSContext.d.ts +3 -1
  28. package/dist/size-matters/index.d.ts +1 -1
  29. package/dist/store.d.ts +6 -0
  30. package/dist/styles.css +1 -1
  31. package/dist/types/Device.d.ts +5 -0
  32. package/dist/utils/extractTextStyle/extractTextStyle.d.ts +1 -0
  33. package/dist/utils/extractViewStyle/extractViewStyle.d.ts +1 -0
  34. package/package.json +1 -1
  35. package/scripts/prebuild/assets/prompt_scheme.md +7 -0
  36. package/src/DeviceMockFrame.tsx +8 -0
  37. package/src/RenderPage.tsx +3 -0
  38. package/src/assets/devices.json +747 -183
  39. package/src/assets/meta.json +1 -1
  40. package/src/assets/prompt-scheme-onboard.generated.ts +1 -1
  41. package/src/assets/prompt-scheme-paywall.generated.ts +1 -1
  42. package/src/assets/samples/carousel-sample.json +30 -26
  43. package/src/assets/samples/paywall-1.json +30 -30
  44. package/src/assets/samples/paywall-2.json +26 -26
  45. package/src/assets/samples/paywall-app-delete-offer.json +27 -27
  46. package/src/assets/samples/paywall-app-open-offer.json +27 -27
  47. package/src/assets/samples/paywall-back-offer.json +27 -27
  48. package/src/assets/samples/paywall-notification-offer.json +27 -27
  49. package/src/assets/samples/simple-1.json +4 -4
  50. package/src/assets/samples/simple-2.json +25 -25
  51. package/src/assets/samples/unmigrated-builder-1.1.1.json +7 -7
  52. package/src/assets/samples/unmigrated-builder1.json +4 -4
  53. package/src/assets/samples/unvalidated-builder1.json +4 -4
  54. package/src/assets/samples/unvalidated-crash1.json +2 -2
  55. package/src/assets/samples/unvalidated-crashcomponent1.json +2 -2
  56. package/src/assets/samples/vpn-onboard-1.json +34 -30
  57. package/src/assets/samples/vpn-onboard-2.json +34 -30
  58. package/src/assets/samples/vpn-onboard-3.json +28 -27
  59. package/src/assets/samples/vpn-onboard-4.json +28 -27
  60. package/src/assets/samples/vpn-onboard-5.json +46 -40
  61. package/src/assets/samples/vpn-onboard-6.json +34 -30
  62. package/src/assets/samples/vpn-onboard-7.json +33 -29
  63. package/src/attribute-analyser/style/web/useExtractImageStyle.ts +8 -3
  64. package/src/attribute-analyser/style/web/useExtractViewStyle.ts +8 -3
  65. package/src/build-components/BIcon/BIconProps.generated.ts +1 -1
  66. package/src/build-components/BIcon/pattern.json +1 -2
  67. package/src/build-components/BackgroundImage/pattern.json +1 -2
  68. package/src/build-components/Button/pattern.json +1 -2
  69. package/src/build-components/Carousel/pattern.json +1 -2
  70. package/src/build-components/CarouselButtons/pattern.json +1 -2
  71. package/src/build-components/CarouselDots/CarouselDots.tsx +8 -3
  72. package/src/build-components/CarouselDots/pattern.json +1 -2
  73. package/src/build-components/CarouselItem/pattern.json +1 -4
  74. package/src/build-components/CarouselProvider/pattern.json +0 -3
  75. package/src/build-components/CountDown/CountDownProps.generated.ts +1 -1
  76. package/src/build-components/CountDown/pattern.json +1 -2
  77. package/src/build-components/Image/ImageProps.generated.ts +6 -0
  78. package/src/build-components/Image/pattern.json +10 -2
  79. package/src/build-components/Main/Main.tsx +3 -1
  80. package/src/build-components/Main/pattern.json +1 -2
  81. package/src/build-components/NavigationBarColor/NavigationBarColor.tsx +15 -1
  82. package/src/build-components/NavigationBarColor/NavigationBarColorProps.generated.ts +1 -52
  83. package/src/build-components/NavigationBarColor/pattern.json +10 -2
  84. package/src/build-components/Onboard/pattern.json +1 -4
  85. package/src/build-components/OnboardButtons/pattern.json +1 -2
  86. package/src/build-components/OnboardDot/OnboardDot.tsx +3 -2
  87. package/src/build-components/OnboardDot/pattern.json +1 -2
  88. package/src/build-components/OnboardFooter/OnboardFooterProps.generated.ts +1 -1
  89. package/src/build-components/OnboardFooter/pattern.json +1 -2
  90. package/src/build-components/OnboardImage/OnboardImageProps.generated.ts +7 -1
  91. package/src/build-components/OnboardImage/pattern.json +1 -2
  92. package/src/build-components/OnboardItem/pattern.json +1 -2
  93. package/src/build-components/OnboardProvider/pattern.json +1 -2
  94. package/src/build-components/OnboardSubtitle/OnboardSubtitleProps.generated.ts +1 -1
  95. package/src/build-components/OnboardSubtitle/pattern.json +1 -4
  96. package/src/build-components/OnboardTitle/OnboardTitleProps.generated.ts +1 -1
  97. package/src/build-components/OnboardTitle/pattern.json +1 -4
  98. package/src/build-components/PaywallBackground/PaywallBackgroundProps.generated.ts +1 -1
  99. package/src/build-components/PaywallBackground/pattern.json +0 -3
  100. package/src/build-components/PaywallCloseButton/PaywallCloseButtonProps.generated.ts +1 -1
  101. package/src/build-components/PaywallCloseButton/pattern.json +2 -4
  102. package/src/build-components/PaywallOptions/pattern.json +1 -4
  103. package/src/build-components/PaywallProvider/pattern.json +1 -2
  104. package/src/build-components/PaywallSubscribeButton/PaywallSubscribeButtonProps.generated.ts +1 -1
  105. package/src/build-components/PaywallSubscribeButton/pattern.json +1 -4
  106. package/src/build-components/PriceTag/PriceTagProps.generated.ts +1 -1
  107. package/src/build-components/PriceTag/pattern.json +1 -2
  108. package/src/build-components/Pricing/PricingProps.generated.ts +1 -1
  109. package/src/build-components/Pricing/pattern.json +1 -4
  110. package/src/build-components/Promo/PromoProps.generated.ts +1 -1
  111. package/src/build-components/Promo/pattern.json +1 -4
  112. package/src/build-components/RadioButton/pattern.json +1 -2
  113. package/src/build-components/StatusBarColor/StatusBarColor.tsx +15 -1
  114. package/src/build-components/StatusBarColor/StatusBarColorProps.generated.ts +1 -1
  115. package/src/build-components/StatusBarColor/pattern.json +10 -1
  116. package/src/build-components/Text/pattern.json +1 -2
  117. package/src/build-components/patterns.generated.ts +57 -376
  118. package/src/components/BuilderProvider.tsx +1 -0
  119. package/src/components/DeviceButton.tsx +35 -0
  120. package/src/components/EditorHeader.tsx +16 -1
  121. package/src/hooks/useSafeAreaViewStyle.ts +24 -4
  122. package/src/mockOS/context/MockOSContext.tsx +41 -13
  123. package/src/modals/DeviceSelectorModal.tsx +94 -10
  124. package/src/product-base/extractAndroidParams.ts +38 -8
  125. package/src/size-matters/index.ts +15 -9
  126. package/src/store.ts +27 -0
  127. package/src/styles/modals/_product-edit-modal.scss +2 -2
  128. package/src/types/Device.ts +5 -0
  129. package/src/utils/analyseNodeByPatterns.ts +6 -2
  130. package/src/utils/extractTextStyle/extractTextStyle.ts +3 -1
  131. package/src/utils/extractTextStyle/extractTextStyleNative.ts +1 -1
  132. package/src/utils/extractViewStyle/extractViewStyle.ts +19 -5
  133. package/src/utils/extractViewStyle/extractViewStyleNative.ts +5 -1
  134. package/src/utils/replaceLocalizationParams.ts +5 -7
@@ -67,8 +67,8 @@ export const patterns = [
67
67
  right: 'size',
68
68
  zIndex: 'number',
69
69
  },
70
- testID: 'string',
71
70
  scrollable: 'boolean',
71
+ testID: 'string',
72
72
  iconType: 'iconType',
73
73
  size: 'number',
74
74
  strokeWidth: 'number',
@@ -3308,8 +3308,8 @@ export const patterns = [
3308
3308
  right: 'size',
3309
3309
  zIndex: 'number',
3310
3310
  },
3311
- testID: 'string',
3312
3311
  scrollable: 'boolean',
3312
+ testID: 'string',
3313
3313
  count: 'number',
3314
3314
  },
3315
3315
  },
@@ -3757,6 +3757,7 @@ export const patterns = [
3757
3757
  },
3758
3758
  testID: 'string',
3759
3759
  src: 'string',
3760
+ fetchStrategy: ['highIfItsAppLaunch', 'normal', 'lazy', 'none'],
3760
3761
  },
3761
3762
  },
3762
3763
  meta: {
@@ -4070,6 +4071,14 @@ export const patterns = [
4070
4071
  specialCategory: null,
4071
4072
  sort: 1,
4072
4073
  },
4074
+ fetchStrategy: {
4075
+ label: 'Fetch Strategy',
4076
+ description:
4077
+ "highIfItsAppLaunch ilk başta yükleniyor eğer app_launch placeholder'i ile gelirse\nnormal sonra bütün hepsi toplanıp prefetch ediniyor\nlazy builder açılır açılmaz\nnone ise os'a bırakıldı",
4078
+ category: 'other',
4079
+ specialCategory: null,
4080
+ sort: 2,
4081
+ },
4073
4082
  },
4074
4083
  styles: {
4075
4084
  resizeMode: {
@@ -4091,6 +4100,7 @@ export const patterns = [
4091
4100
  flexShrink: 0,
4092
4101
  resizeMode: 'contain',
4093
4102
  },
4103
+ fetchStrategy: 'normal',
4094
4104
  },
4095
4105
  types: {},
4096
4106
  },
@@ -4497,364 +4507,14 @@ export const patterns = [
4497
4507
  description: 'description',
4498
4508
  children: 'never',
4499
4509
  attributes: {
4500
- scrollable: 'boolean',
4501
- styles: {
4502
- flexDirection: ['row', 'column'],
4503
- flexWrap: ['nowrap', 'wrap', 'wrap-reverse'],
4504
- alignItems: [
4505
- 'flex-start',
4506
- 'center',
4507
- 'flex-end',
4508
- 'stretch',
4509
- 'baseline',
4510
- ],
4511
- justifyContent: [
4512
- 'flex-start',
4513
- 'center',
4514
- 'flex-end',
4515
- 'space-between',
4516
- 'space-around',
4517
- 'space-evenly',
4518
- ],
4519
- gap: 'size',
4520
- padding: 'size',
4521
- paddingHorizontal: 'size',
4522
- paddingVertical: 'size',
4523
- paddingTop: 'size',
4524
- paddingBottom: 'size',
4525
- paddingLeft: 'size',
4526
- paddingRight: 'size',
4527
- margin: 'size',
4528
- marginHorizontal: 'size',
4529
- marginVertical: 'size',
4530
- marginTop: 'size',
4531
- marginBottom: 'size',
4532
- marginLeft: 'size',
4533
- marginRight: 'size',
4534
- backgroundColor: 'color',
4535
- borderRadius: 'size',
4536
- width: 'size',
4537
- minWidth: 'size',
4538
- maxWidth: 'size',
4539
- height: 'size',
4540
- minHeight: 'size',
4541
- maxHeight: 'size',
4542
- flex: 'number',
4543
- position: ['relative', 'absolute'],
4544
- top: 'size',
4545
- bottom: 'size',
4546
- left: 'size',
4547
- right: 'size',
4548
- zIndex: 'number',
4549
- },
4550
- testID: 'string',
4510
+ styles: { backgroundColor: 'color' },
4511
+ translucent: 'boolean',
4551
4512
  },
4552
4513
  },
4553
4514
  meta: {
4554
4515
  desiredParent: ['all'],
4555
4516
  label: 'Navigation Bar Color',
4556
4517
  description: 'Sets the OS navigation bar background color.',
4557
- specialCategories: {
4558
- padding: {
4559
- label: 'Padding',
4560
- description: 'Uniform padding on all sides.',
4561
- category: 'container',
4562
- sort: 1,
4563
- },
4564
- margin: {
4565
- label: 'Margin',
4566
- description: 'Uniform margin on all sides.',
4567
- category: 'container',
4568
- sort: 2,
4569
- },
4570
- size: {
4571
- label: 'Size',
4572
- description: 'Fixed dimensions.',
4573
- category: 'container',
4574
- sort: 3,
4575
- },
4576
- offset: {
4577
- label: 'Offset',
4578
- description: 'Absolute positioning offsets.',
4579
- category: 'container',
4580
- sort: 4,
4581
- },
4582
- },
4583
- attributes: {
4584
- scrollable: {
4585
- label: 'Scrollable',
4586
- description: 'Turns scroll interaction on.',
4587
- category: 'container',
4588
- specialCategory: null,
4589
- sort: -1,
4590
- },
4591
- styles: {
4592
- backgroundColor: {
4593
- label: 'Background Color',
4594
- description: 'Background fill color.',
4595
- category: 'style',
4596
- specialCategory: null,
4597
- sort: 20,
4598
- },
4599
- borderRadius: {
4600
- label: 'Border Radius',
4601
- description: 'Corner rounding amount.',
4602
- category: 'style',
4603
- specialCategory: null,
4604
- sort: 21,
4605
- preferredScale: 's',
4606
- },
4607
- flexDirection: {
4608
- label: 'Flex Direction',
4609
- description: 'Sets row or column layout.',
4610
- category: 'container',
4611
- specialCategory: null,
4612
- sort: 4,
4613
- },
4614
- flexWrap: {
4615
- label: 'Flex Wrap',
4616
- description: 'Controls whether flex items wrap to multiple lines.',
4617
- category: 'container',
4618
- specialCategory: null,
4619
- sort: 4.5,
4620
- },
4621
- alignItems: {
4622
- label: 'Align Items',
4623
- description: 'Controls cross-axis alignment.',
4624
- category: 'container',
4625
- specialCategory: null,
4626
- sort: 3,
4627
- },
4628
- justifyContent: {
4629
- label: 'Justify Content',
4630
- description: 'Controls main-axis alignment.',
4631
- category: 'container',
4632
- specialCategory: null,
4633
- sort: 5,
4634
- },
4635
- gap: {
4636
- label: 'Gap',
4637
- description: 'Space between children.',
4638
- category: 'container',
4639
- specialCategory: null,
4640
- sort: 10,
4641
- preferredScale: 's',
4642
- },
4643
- padding: {
4644
- label: 'Padding',
4645
- description: 'Uniform padding on all sides.',
4646
- category: 'container',
4647
- specialCategory: 'padding',
4648
- sort: 6,
4649
- preferredScale: 's',
4650
- },
4651
- paddingHorizontal: {
4652
- label: 'Padding Horizontal',
4653
- description: 'Left and right padding.',
4654
- category: 'container',
4655
- specialCategory: 'padding',
4656
- sort: 7,
4657
- preferredScale: 's',
4658
- },
4659
- paddingVertical: {
4660
- label: 'Padding Vertical',
4661
- description: 'Top and bottom padding.',
4662
- category: 'container',
4663
- specialCategory: 'padding',
4664
- sort: 8,
4665
- preferredScale: 'vs',
4666
- },
4667
- paddingTop: {
4668
- label: 'Padding Top',
4669
- description: 'Top padding only.',
4670
- category: 'container',
4671
- specialCategory: 'padding',
4672
- sort: 9,
4673
- preferredScale: 'vs',
4674
- },
4675
- paddingBottom: {
4676
- label: 'Padding Bottom',
4677
- description: 'Bottom padding only.',
4678
- category: 'container',
4679
- specialCategory: 'padding',
4680
- sort: 10,
4681
- preferredScale: 'vs',
4682
- },
4683
- paddingLeft: {
4684
- label: 'Padding Left',
4685
- description: 'Left padding only.',
4686
- category: 'container',
4687
- specialCategory: 'padding',
4688
- sort: 11,
4689
- preferredScale: 's',
4690
- },
4691
- paddingRight: {
4692
- label: 'Padding Right',
4693
- description: 'Right padding only.',
4694
- category: 'container',
4695
- specialCategory: 'padding',
4696
- sort: 12,
4697
- preferredScale: 's',
4698
- },
4699
- margin: {
4700
- label: 'Margin',
4701
- description: 'Uniform margin on all sides.',
4702
- category: 'container',
4703
- specialCategory: 'margin',
4704
- sort: 13,
4705
- preferredScale: 's',
4706
- },
4707
- marginHorizontal: {
4708
- label: 'Margin Horizontal',
4709
- description: 'Left and right margin.',
4710
- category: 'container',
4711
- specialCategory: 'margin',
4712
- sort: 14,
4713
- preferredScale: 's',
4714
- },
4715
- marginVertical: {
4716
- label: 'Margin Vertical',
4717
- description: 'Top and bottom margin.',
4718
- category: 'container',
4719
- specialCategory: 'margin',
4720
- sort: 15,
4721
- preferredScale: 'vs',
4722
- },
4723
- marginTop: {
4724
- label: 'Margin Top',
4725
- description: 'Top margin only.',
4726
- category: 'container',
4727
- specialCategory: 'margin',
4728
- sort: 16,
4729
- preferredScale: 'vs',
4730
- },
4731
- marginBottom: {
4732
- label: 'Margin Bottom',
4733
- description: 'Bottom margin only.',
4734
- category: 'container',
4735
- specialCategory: 'margin',
4736
- sort: 17,
4737
- preferredScale: 'vs',
4738
- },
4739
- marginLeft: {
4740
- label: 'Margin Left',
4741
- description: 'Left margin only.',
4742
- category: 'container',
4743
- specialCategory: 'margin',
4744
- sort: 18,
4745
- preferredScale: 's',
4746
- },
4747
- marginRight: {
4748
- label: 'Margin Right',
4749
- description: 'Right margin only.',
4750
- category: 'container',
4751
- specialCategory: 'margin',
4752
- sort: 19,
4753
- preferredScale: 's',
4754
- },
4755
- width: {
4756
- label: 'Width',
4757
- description: 'Fixed width value.',
4758
- category: 'container',
4759
- specialCategory: 'size',
4760
- sort: 0,
4761
- preferredScale: 's',
4762
- },
4763
- minWidth: {
4764
- label: 'Min Width',
4765
- description: 'Minimum width constraint.',
4766
- category: 'container',
4767
- specialCategory: 'size',
4768
- sort: 1,
4769
- preferredScale: 's',
4770
- },
4771
- maxWidth: {
4772
- label: 'Max Width',
4773
- description: 'Maximum width constraint.',
4774
- category: 'container',
4775
- specialCategory: 'size',
4776
- sort: 2,
4777
- preferredScale: 's',
4778
- },
4779
- height: {
4780
- label: 'Height',
4781
- description: 'Fixed height value.',
4782
- category: 'container',
4783
- specialCategory: 'size',
4784
- sort: 3,
4785
- preferredScale: 'vs',
4786
- },
4787
- minHeight: {
4788
- label: 'Min Height',
4789
- description: 'Minimum height constraint.',
4790
- category: 'container',
4791
- specialCategory: 'size',
4792
- sort: 4,
4793
- preferredScale: 'vs',
4794
- },
4795
- maxHeight: {
4796
- label: 'Max Height',
4797
- description: 'Maximum height constraint.',
4798
- category: 'container',
4799
- specialCategory: 'size',
4800
- sort: 5,
4801
- preferredScale: 'vs',
4802
- },
4803
- flex: {
4804
- label: 'Flex',
4805
- description: 'Flex grow factor (e.g. 1 fills available space).',
4806
- category: 'container',
4807
- specialCategory: 'size',
4808
- sort: 6,
4809
- },
4810
- position: {
4811
- label: 'Position',
4812
- description: 'Sets layout positioning mode.',
4813
- category: 'container',
4814
- specialCategory: null,
4815
- sort: 3,
4816
- },
4817
- top: {
4818
- label: 'Top',
4819
- description: 'Offset from the top edge.',
4820
- category: 'container',
4821
- specialCategory: 'offset',
4822
- sort: 22,
4823
- preferredScale: 'vs',
4824
- },
4825
- bottom: {
4826
- label: 'Bottom',
4827
- description: 'Offset from the bottom edge.',
4828
- category: 'container',
4829
- specialCategory: 'offset',
4830
- sort: 23,
4831
- preferredScale: 'vs',
4832
- },
4833
- left: {
4834
- label: 'Left',
4835
- description: 'Offset from the left edge.',
4836
- category: 'container',
4837
- specialCategory: 'offset',
4838
- sort: 24,
4839
- preferredScale: 's',
4840
- },
4841
- right: {
4842
- label: 'Right',
4843
- description: 'Offset from the right edge.',
4844
- category: 'container',
4845
- specialCategory: 'offset',
4846
- sort: 25,
4847
- preferredScale: 's',
4848
- },
4849
- zIndex: {
4850
- label: 'Z-Index',
4851
- description: 'Controls stacking order.',
4852
- category: 'container',
4853
- specialCategory: null,
4854
- sort: 26,
4855
- },
4856
- },
4857
- },
4858
4518
  styles: {
4859
4519
  backgroundColor: {
4860
4520
  label: 'Background Color',
@@ -4864,19 +4524,17 @@ export const patterns = [
4864
4524
  sort: 1,
4865
4525
  },
4866
4526
  },
4867
- },
4868
- defaults: {
4869
- styles: {
4870
- flexDirection: 'column',
4871
- position: 'relative',
4872
- zIndex: 1,
4873
- alignSelf: 'flex-start',
4874
- flexGrow: 0,
4875
- flexShrink: 0,
4876
- backgroundColor: 'THEME_COLORS.BACKGROUND',
4527
+ attributes: {
4528
+ translucent: {
4529
+ label: 'Translucent',
4530
+ description: 'Sets the navigation bar to translucent.',
4531
+ category: 'style',
4532
+ specialCategory: null,
4533
+ sort: 2,
4534
+ },
4877
4535
  },
4878
4536
  },
4879
- types: {},
4537
+ defaults: { styles: { backgroundColor: 'THEME_COLORS.BACKGROUND' } },
4880
4538
  },
4881
4539
  {
4882
4540
  schemaVersion: 2,
@@ -6640,8 +6298,8 @@ export const patterns = [
6640
6298
  right: 'size',
6641
6299
  zIndex: 'number',
6642
6300
  },
6643
- testID: 'string',
6644
6301
  scrollable: 'boolean',
6302
+ testID: 'string',
6645
6303
  textLocalizationKey: 'string',
6646
6304
  linkedWordFirstLocalizationKey: 'string',
6647
6305
  linkedWordFirstColor: 'color',
@@ -7090,6 +6748,7 @@ export const patterns = [
7090
6748
  children: 'node',
7091
6749
  attributes: {
7092
6750
  src: 'string',
6751
+ fetchStrategy: ['highIfItsAppLaunch', 'normal', 'lazy', 'none'],
7093
6752
  styles: {
7094
6753
  resizeMode: ['cover', 'contain', 'stretch', 'center'],
7095
6754
  flexDirection: ['row', 'column'],
@@ -7140,8 +6799,8 @@ export const patterns = [
7140
6799
  right: 'size',
7141
6800
  zIndex: 'number',
7142
6801
  },
7143
- testID: 'string',
7144
6802
  scrollable: 'boolean',
6803
+ testID: 'string',
7145
6804
  video_url: 'string',
7146
6805
  lottie: 'string',
7147
6806
  },
@@ -7167,6 +6826,14 @@ export const patterns = [
7167
6826
  specialCategory: null,
7168
6827
  sort: 1,
7169
6828
  },
6829
+ fetchStrategy: {
6830
+ label: 'Fetch Strategy',
6831
+ description:
6832
+ "highIfItsAppLaunch ilk başta yükleniyor eğer app_launch placeholder'i ile gelirse\nnormal sonra bütün hepsi toplanıp prefetch ediniyor\nlazy builder açılır açılmaz\nnone ise os'a bırakıldı",
6833
+ category: 'other',
6834
+ specialCategory: null,
6835
+ sort: 2,
6836
+ },
7170
6837
  scrollable: {
7171
6838
  label: 'Scrollable',
7172
6839
  description: 'Turns scroll interaction on.',
@@ -7483,6 +7150,7 @@ export const patterns = [
7483
7150
  },
7484
7151
  },
7485
7152
  defaults: {
7153
+ fetchStrategy: 'normal',
7486
7154
  styles: {
7487
7155
  resizeMode: 'contain',
7488
7156
  flexDirection: 'column',
@@ -8337,8 +8005,8 @@ export const patterns = [
8337
8005
  right: 'size',
8338
8006
  zIndex: 'number',
8339
8007
  },
8340
- testID: 'string',
8341
8008
  scrollable: 'boolean',
8009
+ testID: 'string',
8342
8010
  },
8343
8011
  },
8344
8012
  meta: {
@@ -8782,8 +8450,8 @@ export const patterns = [
8782
8450
  right: 'size',
8783
8451
  zIndex: 'number',
8784
8452
  },
8785
- testID: 'string',
8786
8453
  scrollable: 'boolean',
8454
+ testID: 'string',
8787
8455
  },
8788
8456
  },
8789
8457
  meta: {
@@ -9173,7 +8841,6 @@ export const patterns = [
9173
8841
  attributes: {
9174
8842
  src: 'string',
9175
8843
  resizeMode: ['cover', 'contain', 'stretch', 'center'],
9176
- testID: 'string',
9177
8844
  scrollable: 'boolean',
9178
8845
  styles: {
9179
8846
  flexDirection: ['row', 'column'],
@@ -9224,6 +8891,7 @@ export const patterns = [
9224
8891
  right: 'size',
9225
8892
  zIndex: 'number',
9226
8893
  },
8894
+ testID: 'string',
9227
8895
  },
9228
8896
  },
9229
8897
  meta: {
@@ -9577,7 +9245,6 @@ export const patterns = [
9577
9245
  iconType: 'iconType',
9578
9246
  size: 'number',
9579
9247
  strokeWidth: 'number',
9580
- testID: 'string',
9581
9248
  adjustsFontSizeToFit: 'boolean',
9582
9249
  showEllipsis: 'boolean',
9583
9250
  translateCounter: 'number',
@@ -9636,6 +9303,7 @@ export const patterns = [
9636
9303
  zIndex: 'number',
9637
9304
  },
9638
9305
  scrollable: 'boolean',
9306
+ testID: 'string',
9639
9307
  },
9640
9308
  },
9641
9309
  meta: {
@@ -10038,6 +9706,7 @@ export const patterns = [
10038
9706
  alignItems: 'center',
10039
9707
  },
10040
9708
  translateCounter: 1,
9709
+ testID: 'paywall-close-button',
10041
9710
  size: 24,
10042
9711
  },
10043
9712
  types: {},
@@ -10889,8 +10558,8 @@ export const patterns = [
10889
10558
  right: 'size',
10890
10559
  zIndex: 'number',
10891
10560
  },
10892
- testID: 'string',
10893
10561
  scrollable: 'boolean',
10562
+ testID: 'string',
10894
10563
  },
10895
10564
  },
10896
10565
  meta: {
@@ -11310,8 +10979,8 @@ export const patterns = [
11310
10979
  zIndex: 'number',
11311
10980
  textDecorationLine: ['none', 'underline', 'line-through'],
11312
10981
  },
11313
- testID: 'string',
11314
10982
  scrollable: 'boolean',
10983
+ testID: 'string',
11315
10984
  showOriginalPricePossible: 'boolean',
11316
10985
  hideIfItsNotDiscount: 'boolean',
11317
10986
  },
@@ -11780,8 +11449,8 @@ export const patterns = [
11780
11449
  right: 'size',
11781
11450
  zIndex: 'number',
11782
11451
  },
11783
- testID: 'string',
11784
11452
  scrollable: 'boolean',
11453
+ testID: 'string',
11785
11454
  },
11786
11455
  },
11787
11456
  meta: {
@@ -12227,8 +11896,8 @@ export const patterns = [
12227
11896
  right: 'size',
12228
11897
  zIndex: 'number',
12229
11898
  },
12230
- testID: 'string',
12231
11899
  scrollable: 'boolean',
11900
+ testID: 'string',
12232
11901
  },
12233
11902
  },
12234
11903
  meta: {
@@ -13076,7 +12745,10 @@ export const patterns = [
13076
12745
  title: 'title',
13077
12746
  description: 'description',
13078
12747
  children: 'never',
13079
- attributes: { styles: { backgroundColor: 'color' }, testID: 'string' },
12748
+ attributes: {
12749
+ styles: { backgroundColor: 'color' },
12750
+ translucent: 'boolean',
12751
+ },
13080
12752
  },
13081
12753
  meta: {
13082
12754
  desiredParent: ['all'],
@@ -13091,6 +12763,15 @@ export const patterns = [
13091
12763
  sort: 1,
13092
12764
  },
13093
12765
  },
12766
+ attributes: {
12767
+ translucent: {
12768
+ label: 'Translucent',
12769
+ description: 'Sets the status bar to translucent.',
12770
+ category: 'style',
12771
+ specialCategory: null,
12772
+ sort: 2,
12773
+ },
12774
+ },
13094
12775
  },
13095
12776
  defaults: { styles: { backgroundColor: 'THEME_COLORS.BACKGROUND' } },
13096
12777
  },
@@ -44,6 +44,7 @@ export type BuilderProviderParams = {
44
44
  fonts?: Fonts;
45
45
  previewMode?: boolean;
46
46
  selectedKey?: string;
47
+ device?: import('../types/Device').Device;
47
48
  };
48
49
 
49
50
  type BuilderProviderProps = {
@@ -11,12 +11,16 @@ type DeviceButtonProps = {
11
11
  device: Device;
12
12
  selectedDevice: Device | null;
13
13
  onSelect: (device: Device) => void;
14
+ isFavorite?: boolean;
15
+ onToggleFavorite?: (device: Device, e: React.MouseEvent) => void;
14
16
  };
15
17
 
16
18
  export function DeviceButton({
17
19
  device,
18
20
  selectedDevice,
19
21
  onSelect,
22
+ isFavorite,
23
+ onToggleFavorite,
20
24
  }: DeviceButtonProps) {
21
25
  const platformIcon = platformIcons[device.platform];
22
26
  const aspect =
@@ -36,6 +40,37 @@ export function DeviceButton({
36
40
  }`}
37
41
  onClick={() => onSelect(device)}
38
42
  >
43
+ {onToggleFavorite && (
44
+ <span
45
+ className="editor-device-button__favorite"
46
+ onClick={(e) => {
47
+ e.stopPropagation();
48
+ onToggleFavorite(device, e);
49
+ }}
50
+ title={isFavorite ? 'Remove from favorites' : 'Add to favorites'}
51
+ style={{
52
+ position: 'absolute',
53
+ top: 4,
54
+ right: 4,
55
+ cursor: 'pointer',
56
+ opacity: isFavorite ? 1 : 0.3,
57
+ color: isFavorite ? '#ecc538' : 'currentColor',
58
+ }}
59
+ >
60
+ <svg
61
+ width="14"
62
+ height="14"
63
+ viewBox="0 0 24 24"
64
+ fill={isFavorite ? 'currentColor' : 'none'}
65
+ stroke="currentColor"
66
+ strokeWidth="2"
67
+ strokeLinecap="round"
68
+ strokeLinejoin="round"
69
+ >
70
+ <polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"></polygon>
71
+ </svg>
72
+ </span>
73
+ )}
39
74
  {device.name} <br />
40
75
  {device.width}×{device.height} ({aspect})
41
76
  {platformIcon && (