@triniwiz/nativescript-masonkit 1.0.0-beta.87 → 1.0.0-beta.89

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 (113) hide show
  1. package/DOCS.md +16 -4
  2. package/angular/README.md +204 -0
  3. package/angular/fesm2022/triniwiz-nativescript-masonkit-angular.mjs +496 -0
  4. package/angular/fesm2022/triniwiz-nativescript-masonkit-angular.mjs.map +1 -0
  5. package/angular/package.json +19 -0
  6. package/angular/types/triniwiz-nativescript-masonkit-angular.d.ts +181 -0
  7. package/button/index.android.d.ts +2 -1
  8. package/button/index.ios.d.ts +2 -1
  9. package/button/index.windows.d.ts +2 -1
  10. package/common.d.ts +102 -1
  11. package/common.js +93 -2
  12. package/common.js.map +1 -1
  13. package/img/index.android.d.ts +2 -1
  14. package/img/index.ios.d.ts +2 -1
  15. package/img/index.windows.d.ts +2 -1
  16. package/index.d.ts +21 -10
  17. package/input/index.android.d.ts +5 -1
  18. package/input/index.android.js +12 -1
  19. package/input/index.android.js.map +1 -1
  20. package/input/index.ios.d.ts +7 -1
  21. package/input/index.ios.js +12 -1
  22. package/input/index.ios.js.map +1 -1
  23. package/input/index.windows.d.ts +6 -1
  24. package/package.json +3 -1
  25. package/platforms/android/masonkit-release.aar +0 -0
  26. package/platforms/ios/Mason.xcframework/Info.plist +0 -34
  27. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Headers/Mason-Swift.h +32 -0
  28. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Headers/mason_native.h +27 -2
  29. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Mason +0 -0
  30. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  31. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.abi.json +2837 -826
  32. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.private.swiftinterface +43 -1
  33. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  34. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.swiftinterface +43 -1
  35. package/platforms/ios/Mason.xcframework/ios-arm64/dSYMs/Mason.framework.dSYM/Contents/Resources/DWARF/Mason +0 -0
  36. package/platforms/ios/Mason.xcframework/ios-arm64/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/aarch64/Mason.yml +8477 -8378
  37. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Headers/Mason-Swift.h +64 -0
  38. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Headers/mason_native.h +27 -2
  39. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Mason +0 -0
  40. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
  41. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
  42. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.abi.json +2837 -826
  43. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +43 -1
  44. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  45. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.swiftinterface +43 -1
  46. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.abi.json +2837 -826
  47. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +43 -1
  48. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  49. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +43 -1
  50. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/_CodeSignature/CodeResources +28 -28
  51. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/DWARF/Mason +0 -0
  52. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/aarch64/Mason.yml +8472 -8373
  53. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/x86_64/Mason.yml +8110 -8017
  54. package/platforms/windows/arm64/NativeScript.Mason.dll +0 -0
  55. package/platforms/windows/arm64/NativeScript.Mason.winmd +0 -0
  56. package/platforms/windows/x64/NativeScript.Mason.dll +0 -0
  57. package/platforms/windows/x64/NativeScript.Mason.winmd +0 -0
  58. package/properties.d.ts +4 -0
  59. package/properties.js +58 -15
  60. package/properties.js.map +1 -1
  61. package/style.d.ts +38 -37
  62. package/style.js +333 -110
  63. package/style.js.map +1 -1
  64. package/text/index.android.d.ts +3 -1
  65. package/text/index.ios.d.ts +3 -1
  66. package/text/index.windows.d.ts +2 -1
  67. package/textarea/index.android.d.ts +6 -2
  68. package/textarea/index.ios.d.ts +6 -2
  69. package/textarea/index.windows.d.ts +6 -2
  70. package/tree/index.android.js +8 -4
  71. package/tree/index.android.js.map +1 -1
  72. package/tree/index.ios.js +11 -0
  73. package/tree/index.ios.js.map +1 -1
  74. package/utils/index.android.d.ts +15 -6
  75. package/utils/index.android.js +83 -2
  76. package/utils/index.android.js.map +1 -1
  77. package/utils/index.ios.d.ts +15 -6
  78. package/utils/index.ios.js +83 -2
  79. package/utils/index.ios.js.map +1 -1
  80. package/utils/index.windows.d.ts +11 -2
  81. package/utils/index.windows.js +9 -0
  82. package/utils/index.windows.js.map +1 -1
  83. package/view/index.ios.js +14 -1
  84. package/view/index.ios.js.map +1 -1
  85. package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Headers/Mason-Swift.h +0 -1982
  86. package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Headers/Mason.h +0 -25
  87. package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Headers/mason_native.h +0 -499
  88. package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Info.plist +0 -0
  89. package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Mason +0 -0
  90. package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Modules/Mason.swiftmodule/Project/arm64-apple-xros.swiftsourceinfo +0 -0
  91. package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros.abi.json +0 -98937
  92. package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros.private.swiftinterface +0 -3475
  93. package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros.swiftdoc +0 -0
  94. package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros.swiftinterface +0 -3475
  95. package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Modules/module.modulemap +0 -10
  96. package/platforms/ios/Mason.xcframework/xros-arm64/dSYMs/Mason.framework.dSYM/Contents/Info.plist +0 -20
  97. package/platforms/ios/Mason.xcframework/xros-arm64/dSYMs/Mason.framework.dSYM/Contents/Resources/DWARF/Mason +0 -0
  98. package/platforms/ios/Mason.xcframework/xros-arm64/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/aarch64/Mason.yml +0 -2134
  99. package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Headers/Mason-Swift.h +0 -1982
  100. package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Headers/Mason.h +0 -25
  101. package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Headers/mason_native.h +0 -499
  102. package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Info.plist +0 -0
  103. package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Mason +0 -0
  104. package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Modules/Mason.swiftmodule/Project/arm64-apple-xros-simulator.swiftsourceinfo +0 -0
  105. package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros-simulator.abi.json +0 -98937
  106. package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros-simulator.private.swiftinterface +0 -3475
  107. package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros-simulator.swiftdoc +0 -0
  108. package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros-simulator.swiftinterface +0 -3475
  109. package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Modules/module.modulemap +0 -10
  110. package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/_CodeSignature/CodeResources +0 -212
  111. package/platforms/ios/Mason.xcframework/xros-arm64-simulator/dSYMs/Mason.framework.dSYM/Contents/Info.plist +0 -20
  112. package/platforms/ios/Mason.xcframework/xros-arm64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/DWARF/Mason +0 -0
  113. package/platforms/ios/Mason.xcframework/xros-arm64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/aarch64/Mason.yml +0 -2134
@@ -536,6 +536,8 @@ typedef SWIFT_ENUM_NAMED(NSInteger, MasonFlexWrap, "FlexWrap", open) {
536
536
  MasonFlexWrapNoWrap = 0,
537
537
  MasonFlexWrapWrap = 1,
538
538
  MasonFlexWrapWrapReverse = 2,
539
+ MasonFlexWrapBalance = 3,
540
+ MasonFlexWrapBalanceReverse = 4,
539
541
  };
540
542
 
541
543
  typedef SWIFT_ENUM_NAMED(NSInteger, MasonFontStyle, "FontStyle", open) {
@@ -714,12 +716,24 @@ SWIFT_CLASS_NAMED("MasonDimensionCompat")
714
716
  @interface MasonDimensionCompat : NSObject
715
717
  - (nonnull instancetype)initWithPoints:(float)points OBJC_DESIGNATED_INITIALIZER;
716
718
  - (nonnull instancetype)initWithPercent:(float)percent OBJC_DESIGNATED_INITIALIZER;
719
+ - (nonnull instancetype)initWithFitContentPoints:(float)fitContentPoints OBJC_DESIGNATED_INITIALIZER;
720
+ - (nonnull instancetype)initWithFitContentPercent:(float)fitContentPercent OBJC_DESIGNATED_INITIALIZER;
717
721
  @property (nonatomic, readonly) enum MasonDimensionCompatType type;
718
722
  @property (nonatomic, readonly) float value;
719
723
  @property (nonatomic, readonly, copy) NSString * _Nonnull cssValue;
720
724
  @property (nonatomic, readonly, copy) NSString * _Nullable jsonValue;
721
725
  SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) MasonDimensionCompat * _Nonnull Auto;)
722
726
  + (MasonDimensionCompat * _Nonnull)Auto SWIFT_WARN_UNUSED_RESULT;
727
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) MasonDimensionCompat * _Nonnull MinContent;)
728
+ + (MasonDimensionCompat * _Nonnull)MinContent SWIFT_WARN_UNUSED_RESULT;
729
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) MasonDimensionCompat * _Nonnull MaxContent;)
730
+ + (MasonDimensionCompat * _Nonnull)MaxContent SWIFT_WARN_UNUSED_RESULT;
731
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) MasonDimensionCompat * _Nonnull FitContent;)
732
+ + (MasonDimensionCompat * _Nonnull)FitContent SWIFT_WARN_UNUSED_RESULT;
733
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) MasonDimensionCompat * _Nonnull Stretch;)
734
+ + (MasonDimensionCompat * _Nonnull)Stretch SWIFT_WARN_UNUSED_RESULT;
735
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) MasonDimensionCompat * _Nonnull Content;)
736
+ + (MasonDimensionCompat * _Nonnull)Content SWIFT_WARN_UNUSED_RESULT;
723
737
  SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) MasonDimensionCompat * _Nonnull Zero;)
724
738
  + (MasonDimensionCompat * _Nonnull)Zero SWIFT_WARN_UNUSED_RESULT;
725
739
  - (nonnull instancetype)init SWIFT_UNAVAILABLE;
@@ -730,6 +744,13 @@ typedef SWIFT_ENUM_NAMED(NSInteger, MasonDimensionCompatType, "MasonDimensionCom
730
744
  MasonDimensionCompatTypeAuto = 0,
731
745
  MasonDimensionCompatTypePoints = 1,
732
746
  MasonDimensionCompatTypePercent = 2,
747
+ MasonDimensionCompatTypeMinContent = 3,
748
+ MasonDimensionCompatTypeMaxContent = 4,
749
+ MasonDimensionCompatTypeFitContent = 5,
750
+ MasonDimensionCompatTypeFitContentPoints = 6,
751
+ MasonDimensionCompatTypeFitContentPercent = 7,
752
+ MasonDimensionCompatTypeStretch = 8,
753
+ MasonDimensionCompatTypeContent = 9,
733
754
  };
734
755
 
735
756
  SWIFT_CLASS_NAMED("MasonDimensionPointCompat")
@@ -866,6 +887,12 @@ typedef SWIFT_ENUM_NAMED(int8_t, MasonInputType, "MasonInputType", open) {
866
887
  MasonInputTypeColor = 11,
867
888
  MasonInputTypeFile = 12,
868
889
  MasonInputTypeSubmit = 13,
890
+ MasonInputTypeSearch = 14,
891
+ MasonInputTypeTime = 15,
892
+ MasonInputTypeDatetimeLocal = 16,
893
+ MasonInputTypeMonth = 17,
894
+ MasonInputTypeWeek = 18,
895
+ MasonInputTypeReset = 19,
869
896
  };
870
897
 
871
898
  @class MasonRectHelper;
@@ -1766,6 +1793,7 @@ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly) float scale;)
1766
1793
  - (void)mason_computeWithViewSize;
1767
1794
  - (void)mason_computeWithViewSizeWithLayout:(BOOL)layout;
1768
1795
  - (void)mason_computeWithMaxContent;
1796
+ - (void)mason_markRootComputeApplied;
1769
1797
  - (void)mason_computeWithMinContent;
1770
1798
  - (void)mason_attachAndApply;
1771
1799
  - (void)mason_requestLayout;
@@ -1959,6 +1987,10 @@ typedef SWIFT_ENUM(uint8_t, TransformOpType, open) {
1959
1987
  TransformOpTypeSkewY = 9,
1960
1988
  };
1961
1989
 
1990
+ @interface UIView (SWIFT_EXTENSION(Mason))
1991
+ - (UIView * _Nullable)mason_elementFromPoint:(CGFloat)x y:(CGFloat)y SWIFT_WARN_UNUSED_RESULT;
1992
+ @end
1993
+
1962
1994
  typedef SWIFT_ENUM_NAMED(NSInteger, MasonWhiteSpace, "WhiteSpace", open) {
1963
1995
  MasonWhiteSpaceNormal = 0,
1964
1996
  MasonWhiteSpacePre = 1,
@@ -2514,6 +2546,8 @@ typedef SWIFT_ENUM_NAMED(NSInteger, MasonFlexWrap, "FlexWrap", open) {
2514
2546
  MasonFlexWrapNoWrap = 0,
2515
2547
  MasonFlexWrapWrap = 1,
2516
2548
  MasonFlexWrapWrapReverse = 2,
2549
+ MasonFlexWrapBalance = 3,
2550
+ MasonFlexWrapBalanceReverse = 4,
2517
2551
  };
2518
2552
 
2519
2553
  typedef SWIFT_ENUM_NAMED(NSInteger, MasonFontStyle, "FontStyle", open) {
@@ -2692,12 +2726,24 @@ SWIFT_CLASS_NAMED("MasonDimensionCompat")
2692
2726
  @interface MasonDimensionCompat : NSObject
2693
2727
  - (nonnull instancetype)initWithPoints:(float)points OBJC_DESIGNATED_INITIALIZER;
2694
2728
  - (nonnull instancetype)initWithPercent:(float)percent OBJC_DESIGNATED_INITIALIZER;
2729
+ - (nonnull instancetype)initWithFitContentPoints:(float)fitContentPoints OBJC_DESIGNATED_INITIALIZER;
2730
+ - (nonnull instancetype)initWithFitContentPercent:(float)fitContentPercent OBJC_DESIGNATED_INITIALIZER;
2695
2731
  @property (nonatomic, readonly) enum MasonDimensionCompatType type;
2696
2732
  @property (nonatomic, readonly) float value;
2697
2733
  @property (nonatomic, readonly, copy) NSString * _Nonnull cssValue;
2698
2734
  @property (nonatomic, readonly, copy) NSString * _Nullable jsonValue;
2699
2735
  SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) MasonDimensionCompat * _Nonnull Auto;)
2700
2736
  + (MasonDimensionCompat * _Nonnull)Auto SWIFT_WARN_UNUSED_RESULT;
2737
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) MasonDimensionCompat * _Nonnull MinContent;)
2738
+ + (MasonDimensionCompat * _Nonnull)MinContent SWIFT_WARN_UNUSED_RESULT;
2739
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) MasonDimensionCompat * _Nonnull MaxContent;)
2740
+ + (MasonDimensionCompat * _Nonnull)MaxContent SWIFT_WARN_UNUSED_RESULT;
2741
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) MasonDimensionCompat * _Nonnull FitContent;)
2742
+ + (MasonDimensionCompat * _Nonnull)FitContent SWIFT_WARN_UNUSED_RESULT;
2743
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) MasonDimensionCompat * _Nonnull Stretch;)
2744
+ + (MasonDimensionCompat * _Nonnull)Stretch SWIFT_WARN_UNUSED_RESULT;
2745
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) MasonDimensionCompat * _Nonnull Content;)
2746
+ + (MasonDimensionCompat * _Nonnull)Content SWIFT_WARN_UNUSED_RESULT;
2701
2747
  SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) MasonDimensionCompat * _Nonnull Zero;)
2702
2748
  + (MasonDimensionCompat * _Nonnull)Zero SWIFT_WARN_UNUSED_RESULT;
2703
2749
  - (nonnull instancetype)init SWIFT_UNAVAILABLE;
@@ -2708,6 +2754,13 @@ typedef SWIFT_ENUM_NAMED(NSInteger, MasonDimensionCompatType, "MasonDimensionCom
2708
2754
  MasonDimensionCompatTypeAuto = 0,
2709
2755
  MasonDimensionCompatTypePoints = 1,
2710
2756
  MasonDimensionCompatTypePercent = 2,
2757
+ MasonDimensionCompatTypeMinContent = 3,
2758
+ MasonDimensionCompatTypeMaxContent = 4,
2759
+ MasonDimensionCompatTypeFitContent = 5,
2760
+ MasonDimensionCompatTypeFitContentPoints = 6,
2761
+ MasonDimensionCompatTypeFitContentPercent = 7,
2762
+ MasonDimensionCompatTypeStretch = 8,
2763
+ MasonDimensionCompatTypeContent = 9,
2711
2764
  };
2712
2765
 
2713
2766
  SWIFT_CLASS_NAMED("MasonDimensionPointCompat")
@@ -2844,6 +2897,12 @@ typedef SWIFT_ENUM_NAMED(int8_t, MasonInputType, "MasonInputType", open) {
2844
2897
  MasonInputTypeColor = 11,
2845
2898
  MasonInputTypeFile = 12,
2846
2899
  MasonInputTypeSubmit = 13,
2900
+ MasonInputTypeSearch = 14,
2901
+ MasonInputTypeTime = 15,
2902
+ MasonInputTypeDatetimeLocal = 16,
2903
+ MasonInputTypeMonth = 17,
2904
+ MasonInputTypeWeek = 18,
2905
+ MasonInputTypeReset = 19,
2847
2906
  };
2848
2907
 
2849
2908
  @class MasonRectHelper;
@@ -3744,6 +3803,7 @@ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly) float scale;)
3744
3803
  - (void)mason_computeWithViewSize;
3745
3804
  - (void)mason_computeWithViewSizeWithLayout:(BOOL)layout;
3746
3805
  - (void)mason_computeWithMaxContent;
3806
+ - (void)mason_markRootComputeApplied;
3747
3807
  - (void)mason_computeWithMinContent;
3748
3808
  - (void)mason_attachAndApply;
3749
3809
  - (void)mason_requestLayout;
@@ -3937,6 +3997,10 @@ typedef SWIFT_ENUM(uint8_t, TransformOpType, open) {
3937
3997
  TransformOpTypeSkewY = 9,
3938
3998
  };
3939
3999
 
4000
+ @interface UIView (SWIFT_EXTENSION(Mason))
4001
+ - (UIView * _Nullable)mason_elementFromPoint:(CGFloat)x y:(CGFloat)y SWIFT_WARN_UNUSED_RESULT;
4002
+ @end
4003
+
3940
4004
  typedef SWIFT_ENUM_NAMED(NSInteger, MasonWhiteSpace, "WhiteSpace", open) {
3941
4005
  MasonWhiteSpaceNormal = 0,
3942
4006
  MasonWhiteSpacePre = 1,
@@ -12,6 +12,20 @@ typedef struct CMason CMason;
12
12
 
13
13
  typedef struct CMasonNode CMasonNode;
14
14
 
15
+ /**
16
+ * User-agent default (font-size, margin) for a block text tag ("p",
17
+ * "h1".."h6", "blockquote", "pre"), in unscaled CSS px. Callers apply their
18
+ * own device-scale multiplier. Returns `false` (and leaves `out` untouched)
19
+ * if `tag` is null, not valid UTF-8, or has no UA default.
20
+ */
21
+ typedef struct CMasonUaDefault {
22
+ float font_size;
23
+ float margin_top;
24
+ float margin_bottom;
25
+ float margin_left;
26
+ float margin_right;
27
+ } CMasonUaDefault;
28
+
15
29
  typedef struct CMasonInlineTextSegment {
16
30
  float width;
17
31
  float ascent;
@@ -76,6 +90,17 @@ typedef struct CMasonMinMax {
76
90
 
77
91
  struct CMason *mason_init(void);
78
92
 
93
+ /**
94
+ * Like `mason_init`, but pre-reserves storage for `capacity` nodes up
95
+ * front instead of `Mason::new()`'s built-in default (512). Callers who
96
+ * know roughly how many nodes their screen/tree will have (e.g. a known
97
+ * list length) can pass that here to avoid the SlotMap/SecondaryMap
98
+ * doubling-reallocation churn that shows up as noisy compute_wh timings
99
+ * and ~2x extra peak memory on very large trees. `capacity` is a soft
100
+ * hint, not a hard limit - the tree still grows past it if needed.
101
+ */
102
+ struct CMason *mason_init_with_capacity(uintptr_t capacity);
103
+
79
104
  void mason_clear(struct CMason *mason);
80
105
 
81
106
  void mason_release(struct CMason *mason);
@@ -88,6 +113,8 @@ void mason_set_preflight(struct CMason *mason, bool enabled);
88
113
 
89
114
  bool mason_get_preflight(void);
90
115
 
116
+ bool mason_ua_default_for_tag(const char *tag, struct CMasonUaDefault *out);
117
+
91
118
  void *mason_get_buffer(struct CMason *mason, int handle);
92
119
 
93
120
  void mason_node_set_segments(struct CMason *mason,
@@ -354,9 +381,7 @@ void mason_node_set_context(struct CMason *mason,
354
381
  void mason_node_remove_context(struct CMason *mason, struct CMasonNode *node);
355
382
  #endif
356
383
 
357
- #if !defined(TARGET_OS_ANDROID)
358
384
  void mason_node_set_apple_node(struct CMason *mason, struct CMasonNode *node, void *apple_node);
359
- #endif
360
385
 
361
386
  void mason_style_update_non_buffer_data(struct CMason *mason,
362
387
  struct CMasonNode *node,