@nativescript/core 9.0.0-alpha.20 → 9.0.0-alpha.21

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 (1034) hide show
  1. package/css/package.json +36 -0
  2. package/css-value/package.json +23 -0
  3. package/package.json +86 -86
  4. package/platforms/android/widgets-release.aar +0 -0
  5. package/references.d.ts +1 -1
  6. package/ui/animation/index.d.ts +14 -1
  7. package/ui/button/index.d.ts +1 -1
  8. package/ui/core/view/index.d.ts +17 -5
  9. package/ui/search-bar/index.d.ts +7 -0
  10. package/ui/slider/index.d.ts +1 -1
  11. package/LICENSE +0 -19
  12. package/abortcontroller/abortsignal.d.ts +0 -23
  13. package/abortcontroller/abortsignal.js +0 -57
  14. package/abortcontroller/abortsignal.js.map +0 -1
  15. package/abortcontroller/index.d.ts +0 -20
  16. package/abortcontroller/index.js +0 -52
  17. package/abortcontroller/index.js.map +0 -1
  18. package/accessibility/accessibility-common.d.ts +0 -282
  19. package/accessibility/accessibility-common.js +0 -416
  20. package/accessibility/accessibility-common.js.map +0 -1
  21. package/accessibility/accessibility-properties.d.ts +0 -24
  22. package/accessibility/accessibility-properties.js +0 -118
  23. package/accessibility/accessibility-properties.js.map +0 -1
  24. package/accessibility/index.d.ts +0 -1
  25. package/accessibility/index.js +0 -2
  26. package/accessibility/index.js.map +0 -1
  27. package/animation-frame/animation-native.android.d.ts +0 -1
  28. package/animation-frame/animation-native.android.js +0 -4
  29. package/animation-frame/animation-native.android.js.map +0 -1
  30. package/animation-frame/animation-native.ios.d.ts +0 -1
  31. package/animation-frame/animation-native.ios.js +0 -3
  32. package/animation-frame/animation-native.ios.js.map +0 -1
  33. package/animation-frame/index.js +0 -81
  34. package/animation-frame/index.js.map +0 -1
  35. package/application/application-common.d.ts +0 -222
  36. package/application/application-common.js +0 -515
  37. package/application/application-common.js.map +0 -1
  38. package/application/application-interfaces.d.ts +0 -189
  39. package/application/application-interfaces.js +0 -2
  40. package/application/application-interfaces.js.map +0 -1
  41. package/application/application-shims.d.ts +0 -351
  42. package/application/application-shims.js +0 -353
  43. package/application/application-shims.js.map +0 -1
  44. package/application/application.android.d.ts +0 -71
  45. package/application/application.android.js +0 -1195
  46. package/application/application.android.js.map +0 -1
  47. package/application/application.ios.d.ts +0 -78
  48. package/application/application.ios.js +0 -871
  49. package/application/application.ios.js.map +0 -1
  50. package/application/helpers-common.d.ts +0 -50
  51. package/application/helpers-common.js +0 -153
  52. package/application/helpers-common.js.map +0 -1
  53. package/application/helpers.android.d.ts +0 -17
  54. package/application/helpers.android.js +0 -173
  55. package/application/helpers.android.js.map +0 -1
  56. package/application/helpers.ios.d.ts +0 -27
  57. package/application/helpers.ios.js +0 -62
  58. package/application/helpers.ios.js.map +0 -1
  59. package/application/index.android.d.ts +0 -2
  60. package/application/index.android.js +0 -3
  61. package/application/index.android.js.map +0 -1
  62. package/application/index.ios.d.ts +0 -2
  63. package/application/index.ios.js +0 -3
  64. package/application/index.ios.js.map +0 -1
  65. package/application-settings/application-settings-common.d.ts +0 -2
  66. package/application-settings/application-settings-common.js +0 -15
  67. package/application-settings/application-settings-common.js.map +0 -1
  68. package/application-settings/index.android.d.ts +0 -11
  69. package/application-settings/index.android.js +0 -124
  70. package/application-settings/index.android.js.map +0 -1
  71. package/application-settings/index.ios.d.ts +0 -11
  72. package/application-settings/index.ios.js +0 -81
  73. package/application-settings/index.ios.js.map +0 -1
  74. package/bundle-entry-points.d.ts +0 -1
  75. package/bundle-entry-points.js +0 -47
  76. package/bundle-entry-points.js.map +0 -1
  77. package/color/color-common.d.ts +0 -136
  78. package/color/color-common.js +0 -341
  79. package/color/color-common.js.map +0 -1
  80. package/color/color-types.d.ts +0 -49
  81. package/color/color-types.js +0 -3
  82. package/color/color-types.js.map +0 -1
  83. package/color/color-utils.d.ts +0 -38
  84. package/color/color-utils.js +0 -213
  85. package/color/color-utils.js.map +0 -1
  86. package/color/index.android.d.ts +0 -4
  87. package/color/index.android.js +0 -7
  88. package/color/index.android.js.map +0 -1
  89. package/color/index.ios.d.ts +0 -7
  90. package/color/index.ios.js +0 -19
  91. package/color/index.ios.js.map +0 -1
  92. package/color/known-colors.d.ts +0 -144
  93. package/color/known-colors.js +0 -165
  94. package/color/known-colors.js.map +0 -1
  95. package/config/config.interface.d.ts +0 -254
  96. package/config/config.interface.js +0 -2
  97. package/config/config.interface.js.map +0 -1
  98. package/config/index.d.ts +0 -1
  99. package/config/index.js +0 -2
  100. package/config/index.js.map +0 -1
  101. package/connectivity/index.android.d.ts +0 -11
  102. package/connectivity/index.android.js +0 -157
  103. package/connectivity/index.android.js.map +0 -1
  104. package/connectivity/index.ios.d.ts +0 -11
  105. package/connectivity/index.ios.js +0 -132
  106. package/connectivity/index.ios.js.map +0 -1
  107. package/console/index.d.ts +0 -14
  108. package/console/index.js +0 -33
  109. package/console/index.js.map +0 -1
  110. package/core-types/animation-types.d.ts +0 -11
  111. package/core-types/animation-types.js +0 -13
  112. package/core-types/animation-types.js.map +0 -1
  113. package/core-types/index.d.ts +0 -331
  114. package/core-types/index.js +0 -281
  115. package/core-types/index.js.map +0 -1
  116. package/core-types/validators.d.ts +0 -2
  117. package/core-types/validators.js +0 -18
  118. package/core-types/validators.js.map +0 -1
  119. package/css/CSS3Parser.d.ts +0 -184
  120. package/css/CSS3Parser.js +0 -534
  121. package/css/CSS3Parser.js.map +0 -1
  122. package/css/CSSNativeScript.d.ts +0 -14
  123. package/css/CSSNativeScript.js +0 -113
  124. package/css/CSSNativeScript.js.map +0 -1
  125. package/css/css-tree-parser.d.ts +0 -1
  126. package/css/css-tree-parser.js +0 -133
  127. package/css/css-tree-parser.js.map +0 -1
  128. package/css/lib/parse/index.d.ts +0 -1
  129. package/css/lib/parse/index.js +0 -500
  130. package/css/lib/parse/index.js.map +0 -1
  131. package/css/parser.d.ts +0 -70
  132. package/css/parser.js +0 -517
  133. package/css/parser.js.map +0 -1
  134. package/css/reworkcss.d.ts +0 -44
  135. package/css/reworkcss.js +0 -5
  136. package/css/reworkcss.js.map +0 -1
  137. package/css/system-classes.d.ts +0 -12
  138. package/css/system-classes.js +0 -47
  139. package/css/system-classes.js.map +0 -1
  140. package/css-mediaquery/index.d.ts +0 -27
  141. package/css-mediaquery/index.js +0 -118
  142. package/css-mediaquery/index.js.map +0 -1
  143. package/css-value/reworkcss-value.d.ts +0 -31
  144. package/css-value/reworkcss-value.js +0 -91
  145. package/css-value/reworkcss-value.js.map +0 -1
  146. package/data/observable/index.d.ts +0 -212
  147. package/data/observable/index.js +0 -440
  148. package/data/observable/index.js.map +0 -1
  149. package/data/observable-array/index.d.ts +0 -215
  150. package/data/observable-array/index.js +0 -325
  151. package/data/observable-array/index.js.map +0 -1
  152. package/data/virtual-array/index.d.ts +0 -72
  153. package/data/virtual-array/index.js +0 -133
  154. package/data/virtual-array/index.js.map +0 -1
  155. package/debugger/InspectorBackendCommands.d.ts +0 -1056
  156. package/debugger/InspectorBackendCommands.js +0 -578
  157. package/debugger/InspectorBackendCommands.js.map +0 -1
  158. package/debugger/devtools-elements-interfaces.d.ts +0 -16
  159. package/debugger/devtools-elements-interfaces.js +0 -2
  160. package/debugger/devtools-elements-interfaces.js.map +0 -1
  161. package/debugger/devtools-elements.common.d.ts +0 -7
  162. package/debugger/devtools-elements.common.js +0 -93
  163. package/debugger/devtools-elements.common.js.map +0 -1
  164. package/debugger/devtools-elements.js +0 -20
  165. package/debugger/devtools-elements.js.map +0 -1
  166. package/debugger/dom-types.d.ts +0 -24
  167. package/debugger/dom-types.js +0 -152
  168. package/debugger/dom-types.js.map +0 -1
  169. package/debugger/index.d.ts +0 -87
  170. package/debugger/index.js +0 -118
  171. package/debugger/index.js.map +0 -1
  172. package/debugger/webinspector-css.d.ts +0 -34
  173. package/debugger/webinspector-css.js +0 -72
  174. package/debugger/webinspector-css.js.map +0 -1
  175. package/debugger/webinspector-dom.d.ts +0 -33
  176. package/debugger/webinspector-dom.js +0 -75
  177. package/debugger/webinspector-dom.js.map +0 -1
  178. package/debugger/webinspector-network.android.d.ts +0 -79
  179. package/debugger/webinspector-network.android.js +0 -208
  180. package/debugger/webinspector-network.android.js.map +0 -1
  181. package/debugger/webinspector-network.ios.d.ts +0 -79
  182. package/debugger/webinspector-network.ios.js +0 -204
  183. package/debugger/webinspector-network.ios.js.map +0 -1
  184. package/fetch/index.d.ts +0 -72
  185. package/fetch/index.js +0 -529
  186. package/fetch/index.js.map +0 -1
  187. package/file-system/file-system-access.android.d.ts +0 -151
  188. package/file-system/file-system-access.android.js +0 -1162
  189. package/file-system/file-system-access.android.js.map +0 -1
  190. package/file-system/file-system-access.ios.d.ts +0 -85
  191. package/file-system/file-system-access.ios.js +0 -622
  192. package/file-system/file-system-access.ios.js.map +0 -1
  193. package/file-system/index.js +0 -873
  194. package/file-system/index.js.map +0 -1
  195. package/fps-meter/fps-native.android.d.ts +0 -11
  196. package/fps-meter/fps-native.android.js +0 -62
  197. package/fps-meter/fps-native.android.js.map +0 -1
  198. package/fps-meter/fps-native.ios.d.ts +0 -10
  199. package/fps-meter/fps-native.ios.js +0 -56
  200. package/fps-meter/fps-native.ios.js.map +0 -1
  201. package/fps-meter/index.js +0 -77
  202. package/fps-meter/index.js.map +0 -1
  203. package/globals/global-utils.d.ts +0 -27
  204. package/globals/global-utils.js +0 -67
  205. package/globals/global-utils.js.map +0 -1
  206. package/globals/index.d.ts +0 -3
  207. package/globals/index.js +0 -313
  208. package/globals/index.js.map +0 -1
  209. package/http/http-interfaces.d.ts +0 -84
  210. package/http/http-interfaces.js +0 -6
  211. package/http/http-interfaces.js.map +0 -1
  212. package/http/http-request/http-request-common.d.ts +0 -1
  213. package/http/http-request/http-request-common.js +0 -15
  214. package/http/http-request/http-request-common.js.map +0 -1
  215. package/http/http-request/index.android.d.ts +0 -3
  216. package/http/http-request/index.android.js +0 -274
  217. package/http/http-request/index.android.js.map +0 -1
  218. package/http/http-request/index.ios.d.ts +0 -3
  219. package/http/http-request/index.ios.js +0 -221
  220. package/http/http-request/index.ios.js.map +0 -1
  221. package/http/http-shared.d.ts +0 -5
  222. package/http/http-shared.js +0 -14
  223. package/http/http-shared.js.map +0 -1
  224. package/http/index.js +0 -72
  225. package/http/index.js.map +0 -1
  226. package/image-asset/image-asset-common.d.ts +0 -25
  227. package/image-asset/image-asset-common.js +0 -46
  228. package/image-asset/image-asset-common.js.map +0 -1
  229. package/image-asset/index.android.d.ts +0 -9
  230. package/image-asset/index.android.js +0 -33
  231. package/image-asset/index.android.js.map +0 -1
  232. package/image-asset/index.ios.d.ts +0 -10
  233. package/image-asset/index.ios.js +0 -57
  234. package/image-asset/index.ios.js.map +0 -1
  235. package/image-source/image-source-common.d.ts +0 -4
  236. package/image-source/image-source-common.js +0 -21
  237. package/image-source/image-source-common.js.map +0 -1
  238. package/image-source/index.android.d.ts +0 -58
  239. package/image-source/index.android.js +0 -370
  240. package/image-source/index.android.js.map +0 -1
  241. package/image-source/index.ios.d.ts +0 -59
  242. package/image-source/index.ios.js +0 -454
  243. package/image-source/index.ios.js.map +0 -1
  244. package/index.js +0 -39
  245. package/index.js.map +0 -1
  246. package/inspector_modules.d.ts +0 -7
  247. package/inspector_modules.js +0 -147
  248. package/inspector_modules.js.map +0 -1
  249. package/matrix/index.js +0 -45
  250. package/matrix/index.js.map +0 -1
  251. package/media-query-list/index.d.ts +0 -21
  252. package/media-query-list/index.js +0 -159
  253. package/media-query-list/index.js.map +0 -1
  254. package/module-name-resolver/helpers.d.ts +0 -14
  255. package/module-name-resolver/helpers.js +0 -27
  256. package/module-name-resolver/helpers.js.map +0 -1
  257. package/module-name-resolver/index.d.ts +0 -14
  258. package/module-name-resolver/index.js +0 -67
  259. package/module-name-resolver/index.js.map +0 -1
  260. package/module-name-resolver/non-bundle-workflow-compat.d.ts +0 -6
  261. package/module-name-resolver/non-bundle-workflow-compat.js +0 -128
  262. package/module-name-resolver/non-bundle-workflow-compat.js.map +0 -1
  263. package/module-name-resolver/qualifier-matcher/index.d.ts +0 -11
  264. package/module-name-resolver/qualifier-matcher/index.js +0 -141
  265. package/module-name-resolver/qualifier-matcher/index.js.map +0 -1
  266. package/platform/common.d.ts +0 -10
  267. package/platform/common.js +0 -14
  268. package/platform/common.js.map +0 -1
  269. package/platform/device/index.android.d.ts +0 -20
  270. package/platform/device/index.android.js +0 -78
  271. package/platform/device/index.android.js.map +0 -1
  272. package/platform/device/index.ios.d.ts +0 -19
  273. package/platform/device/index.ios.js +0 -69
  274. package/platform/device/index.ios.js.map +0 -1
  275. package/platform/index.js +0 -4
  276. package/platform/index.js.map +0 -1
  277. package/platform/screen/index.android.d.ts +0 -16
  278. package/platform/screen/index.android.js +0 -41
  279. package/platform/screen/index.android.js.map +0 -1
  280. package/platform/screen/index.ios.d.ts +0 -15
  281. package/platform/screen/index.ios.js +0 -35
  282. package/platform/screen/index.ios.js.map +0 -1
  283. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Headers/NSCCrypto.h +0 -79
  284. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Headers/NSCWinterTC.h +0 -20
  285. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Headers/NSString+WinterTC.h +0 -21
  286. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Modules/module.modulemap +0 -6
  287. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Resources/Info.plist +0 -52
  288. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Versions/Current/Headers/NSCCrypto.h +0 -79
  289. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Versions/Current/Headers/NSCWinterTC.h +0 -20
  290. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Versions/Current/Headers/NSString+WinterTC.h +0 -21
  291. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Versions/Current/Modules/module.modulemap +0 -6
  292. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Versions/Current/NSCWinterTC +0 -0
  293. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Versions/Current/Resources/Info.plist +0 -52
  294. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/NSCCrypto.h +0 -60
  295. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/NSData+Async.h +0 -24
  296. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/NSFileHandle+Async.h +0 -22
  297. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/NSString+Async.h +0 -25
  298. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/TNSLabel.h +0 -16
  299. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/TNSProcess.h +0 -29
  300. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/TNSWidgets.h +0 -25
  301. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/UIImage+TNSBlocks.h +0 -26
  302. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/UIView+PassThroughParent.h +0 -17
  303. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Modules/module.modulemap +0 -6
  304. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/PrivateHeaders/NSObject+Swizzling.h +0 -17
  305. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/PrivateHeaders/UIView+PropertyBag.h +0 -18
  306. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Resources/Info.plist +0 -52
  307. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/NSCCrypto.h +0 -60
  308. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/NSData+Async.h +0 -24
  309. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/NSFileHandle+Async.h +0 -22
  310. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/NSString+Async.h +0 -25
  311. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/TNSLabel.h +0 -16
  312. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/TNSProcess.h +0 -29
  313. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/TNSWidgets.h +0 -25
  314. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/UIImage+TNSBlocks.h +0 -26
  315. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/UIView+PassThroughParent.h +0 -17
  316. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Modules/module.modulemap +0 -6
  317. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/PrivateHeaders/NSObject+Swizzling.h +0 -17
  318. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/PrivateHeaders/UIView+PropertyBag.h +0 -18
  319. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Resources/Info.plist +0 -52
  320. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/TNSWidgets +0 -0
  321. package/profiling/index.js +0 -273
  322. package/profiling/index.js.map +0 -1
  323. package/text/formatted-string.js +0 -2
  324. package/text/formatted-string.js.map +0 -1
  325. package/text/index.android.d.ts +0 -9
  326. package/text/index.android.js +0 -11
  327. package/text/index.android.js.map +0 -1
  328. package/text/index.ios.d.ts +0 -9
  329. package/text/index.ios.js +0 -11
  330. package/text/index.ios.js.map +0 -1
  331. package/text/span.js +0 -2
  332. package/text/span.js.map +0 -1
  333. package/text/text-common.d.ts +0 -12
  334. package/text/text-common.js +0 -111
  335. package/text/text-common.js.map +0 -1
  336. package/timer/index.android.d.ts +0 -4
  337. package/timer/index.android.js +0 -83
  338. package/timer/index.android.js.map +0 -1
  339. package/timer/index.ios.d.ts +0 -4
  340. package/timer/index.ios.js +0 -68
  341. package/timer/index.ios.js.map +0 -1
  342. package/trace/index.js +0 -255
  343. package/trace/index.js.map +0 -1
  344. package/ui/action-bar/action-bar-common.d.ts +0 -85
  345. package/ui/action-bar/action-bar-common.js +0 -381
  346. package/ui/action-bar/action-bar-common.js.map +0 -1
  347. package/ui/action-bar/index.android.d.ts +0 -55
  348. package/ui/action-bar/index.android.js +0 -504
  349. package/ui/action-bar/index.android.js.map +0 -1
  350. package/ui/action-bar/index.ios.d.ts +0 -64
  351. package/ui/action-bar/index.ios.js +0 -616
  352. package/ui/action-bar/index.ios.js.map +0 -1
  353. package/ui/activity-indicator/activity-indicator-common.d.ts +0 -9
  354. package/ui/activity-indicator/activity-indicator-common.js +0 -22
  355. package/ui/activity-indicator/activity-indicator-common.js.map +0 -1
  356. package/ui/activity-indicator/index.android.d.ts +0 -15
  357. package/ui/activity-indicator/index.android.js +0 -54
  358. package/ui/activity-indicator/index.android.js.map +0 -1
  359. package/ui/activity-indicator/index.ios.d.ts +0 -16
  360. package/ui/activity-indicator/index.ios.js +0 -54
  361. package/ui/activity-indicator/index.ios.js.map +0 -1
  362. package/ui/animation/animation-common.d.ts +0 -30
  363. package/ui/animation/animation-common.js +0 -239
  364. package/ui/animation/animation-common.js.map +0 -1
  365. package/ui/animation/animation-shared.d.ts +0 -84
  366. package/ui/animation/animation-shared.js +0 -4
  367. package/ui/animation/animation-shared.js.map +0 -1
  368. package/ui/animation/animation-types.d.ts +0 -1
  369. package/ui/animation/animation-types.js +0 -3
  370. package/ui/animation/animation-types.js.map +0 -1
  371. package/ui/animation/index.android.d.ts +0 -23
  372. package/ui/animation/index.android.js +0 -432
  373. package/ui/animation/index.android.js.map +0 -1
  374. package/ui/animation/index.ios.d.ts +0 -28
  375. package/ui/animation/index.ios.js +0 -809
  376. package/ui/animation/index.ios.js.map +0 -1
  377. package/ui/animation/keyframe-animation.d.ts +0 -76
  378. package/ui/animation/keyframe-animation.js +0 -238
  379. package/ui/animation/keyframe-animation.js.map +0 -1
  380. package/ui/builder/binding-builder.d.ts +0 -13
  381. package/ui/builder/binding-builder.js +0 -171
  382. package/ui/builder/binding-builder.js.map +0 -1
  383. package/ui/builder/component-builder/index.d.ts +0 -7
  384. package/ui/builder/component-builder/index.js +0 -219
  385. package/ui/builder/component-builder/index.js.map +0 -1
  386. package/ui/builder/index.d.ts +0 -193
  387. package/ui/builder/index.js +0 -643
  388. package/ui/builder/index.js.map +0 -1
  389. package/ui/button/button-common.d.ts +0 -9
  390. package/ui/button/button-common.js +0 -26
  391. package/ui/button/button-common.js.map +0 -1
  392. package/ui/button/index.android.d.ts +0 -29
  393. package/ui/button/index.android.js +0 -168
  394. package/ui/button/index.android.js.map +0 -1
  395. package/ui/button/index.ios.d.ts +0 -36
  396. package/ui/button/index.ios.js +0 -298
  397. package/ui/button/index.ios.js.map +0 -1
  398. package/ui/content-view/index.js +0 -87
  399. package/ui/content-view/index.js.map +0 -1
  400. package/ui/core/bindable/bindable-expressions.d.ts +0 -7
  401. package/ui/core/bindable/bindable-expressions.js +0 -255
  402. package/ui/core/bindable/bindable-expressions.js.map +0 -1
  403. package/ui/core/bindable/bindable-resources.d.ts +0 -2
  404. package/ui/core/bindable/bindable-resources.js +0 -8
  405. package/ui/core/bindable/bindable-resources.js.map +0 -1
  406. package/ui/core/bindable/bindable-types.d.ts +0 -37
  407. package/ui/core/bindable/bindable-types.js +0 -3
  408. package/ui/core/bindable/bindable-types.js.map +0 -1
  409. package/ui/core/bindable/index.d.ts +0 -53
  410. package/ui/core/bindable/index.js +0 -555
  411. package/ui/core/bindable/index.js.map +0 -1
  412. package/ui/core/control-state-change/index.android.d.ts +0 -6
  413. package/ui/core/control-state-change/index.android.js +0 -8
  414. package/ui/core/control-state-change/index.android.js.map +0 -1
  415. package/ui/core/control-state-change/index.ios.d.ts +0 -10
  416. package/ui/core/control-state-change/index.ios.js +0 -43
  417. package/ui/core/control-state-change/index.ios.js.map +0 -1
  418. package/ui/core/properties/index.d.ts +0 -114
  419. package/ui/core/properties/index.js +0 -1290
  420. package/ui/core/properties/index.js.map +0 -1
  421. package/ui/core/properties/property-shared.d.ts +0 -35
  422. package/ui/core/properties/property-shared.js +0 -16
  423. package/ui/core/properties/property-shared.js.map +0 -1
  424. package/ui/core/view/index.android.d.ts +0 -134
  425. package/ui/core/view/index.android.js +0 -1613
  426. package/ui/core/view/index.android.js.map +0 -1
  427. package/ui/core/view/index.ios.d.ts +0 -140
  428. package/ui/core/view/index.ios.js +0 -1009
  429. package/ui/core/view/index.ios.js.map +0 -1
  430. package/ui/core/view/view-common.d.ts +0 -304
  431. package/ui/core/view/view-common.js +0 -1095
  432. package/ui/core/view/view-common.js.map +0 -1
  433. package/ui/core/view/view-helper/index.android.d.ts +0 -9
  434. package/ui/core/view/view-helper/index.android.js +0 -56
  435. package/ui/core/view/view-helper/index.android.js.map +0 -1
  436. package/ui/core/view/view-helper/index.ios.d.ts +0 -64
  437. package/ui/core/view/view-helper/index.ios.js +0 -363
  438. package/ui/core/view/view-helper/index.ios.js.map +0 -1
  439. package/ui/core/view/view-helper/view-helper-common.d.ts +0 -11
  440. package/ui/core/view/view-helper/view-helper-common.js +0 -159
  441. package/ui/core/view/view-helper/view-helper-common.js.map +0 -1
  442. package/ui/core/view/view-helper/view-helper-shared.d.ts +0 -5
  443. package/ui/core/view/view-helper/view-helper-shared.js +0 -6
  444. package/ui/core/view/view-helper/view-helper-shared.js.map +0 -1
  445. package/ui/core/view/view-interfaces.d.ts +0 -73
  446. package/ui/core/view/view-interfaces.js +0 -2
  447. package/ui/core/view/view-interfaces.js.map +0 -1
  448. package/ui/core/view-base/index.d.ts +0 -597
  449. package/ui/core/view-base/index.js +0 -1154
  450. package/ui/core/view-base/index.js.map +0 -1
  451. package/ui/core/view-base/utils.d.ts +0 -1
  452. package/ui/core/view-base/utils.js +0 -9
  453. package/ui/core/view-base/utils.js.map +0 -1
  454. package/ui/core/weak-event-listener/index.js +0 -123
  455. package/ui/core/weak-event-listener/index.js.map +0 -1
  456. package/ui/date-picker/date-picker-common.d.ts +0 -28
  457. package/ui/date-picker/date-picker-common.js +0 -82
  458. package/ui/date-picker/date-picker-common.js.map +0 -1
  459. package/ui/date-picker/index.android.d.ts +0 -19
  460. package/ui/date-picker/index.android.js +0 -133
  461. package/ui/date-picker/index.android.js.map +0 -1
  462. package/ui/date-picker/index.ios.d.ts +0 -27
  463. package/ui/date-picker/index.ios.js +0 -165
  464. package/ui/date-picker/index.ios.js.map +0 -1
  465. package/ui/dialogs/dialogs-common.d.ts +0 -211
  466. package/ui/dialogs/dialogs-common.js +0 -167
  467. package/ui/dialogs/dialogs-common.js.map +0 -1
  468. package/ui/dialogs/index.android.d.ts +0 -20
  469. package/ui/dialogs/index.android.js +0 -330
  470. package/ui/dialogs/index.android.js.map +0 -1
  471. package/ui/dialogs/index.ios.d.ts +0 -17
  472. package/ui/dialogs/index.ios.js +0 -293
  473. package/ui/dialogs/index.ios.js.map +0 -1
  474. package/ui/editable-text-base/editable-text-base-common.d.ts +0 -36
  475. package/ui/editable-text-base/editable-text-base-common.js +0 -91
  476. package/ui/editable-text-base/editable-text-base-common.js.map +0 -1
  477. package/ui/editable-text-base/index.android.d.ts +0 -48
  478. package/ui/editable-text-base/index.android.js +0 -499
  479. package/ui/editable-text-base/index.android.js.map +0 -1
  480. package/ui/editable-text-base/index.ios.d.ts +0 -20
  481. package/ui/editable-text-base/index.ios.js +0 -255
  482. package/ui/editable-text-base/index.ios.js.map +0 -1
  483. package/ui/embedding/index.android.d.ts +0 -4
  484. package/ui/embedding/index.android.js +0 -14
  485. package/ui/embedding/index.android.js.map +0 -1
  486. package/ui/embedding/index.ios.d.ts +0 -1
  487. package/ui/embedding/index.ios.js +0 -4
  488. package/ui/embedding/index.ios.js.map +0 -1
  489. package/ui/enums/enums.js +0 -6
  490. package/ui/enums/enums.js.map +0 -1
  491. package/ui/enums/index.js +0 -6
  492. package/ui/enums/index.js.map +0 -1
  493. package/ui/frame/activity.android.d.ts +0 -1
  494. package/ui/frame/activity.android.js +0 -113
  495. package/ui/frame/activity.android.js.map +0 -1
  496. package/ui/frame/fragment.android.d.ts +0 -3
  497. package/ui/frame/fragment.android.js +0 -90
  498. package/ui/frame/fragment.android.js.map +0 -1
  499. package/ui/frame/fragment.ios.d.ts +0 -3
  500. package/ui/frame/fragment.ios.js +0 -4
  501. package/ui/frame/fragment.ios.js.map +0 -1
  502. package/ui/frame/fragment.transitions.android.d.ts +0 -39
  503. package/ui/frame/fragment.transitions.android.js +0 -680
  504. package/ui/frame/fragment.transitions.android.js.map +0 -1
  505. package/ui/frame/fragment.transitions.types.d.ts +0 -6
  506. package/ui/frame/fragment.transitions.types.js +0 -2
  507. package/ui/frame/fragment.transitions.types.js.map +0 -1
  508. package/ui/frame/frame-common.d.ts +0 -101
  509. package/ui/frame/frame-common.js +0 -688
  510. package/ui/frame/frame-common.js.map +0 -1
  511. package/ui/frame/frame-helper-for-android.d.ts +0 -37
  512. package/ui/frame/frame-helper-for-android.js +0 -337
  513. package/ui/frame/frame-helper-for-android.js.map +0 -1
  514. package/ui/frame/frame-helpers.d.ts +0 -16
  515. package/ui/frame/frame-helpers.js +0 -19
  516. package/ui/frame/frame-helpers.js.map +0 -1
  517. package/ui/frame/frame-interfaces.d.ts +0 -130
  518. package/ui/frame/frame-interfaces.js +0 -7
  519. package/ui/frame/frame-interfaces.js.map +0 -1
  520. package/ui/frame/frame-stack.d.ts +0 -7
  521. package/ui/frame/frame-stack.js +0 -41
  522. package/ui/frame/frame-stack.js.map +0 -1
  523. package/ui/frame/index.android.d.ts +0 -93
  524. package/ui/frame/index.android.js +0 -919
  525. package/ui/frame/index.android.js.map +0 -1
  526. package/ui/frame/index.ios.d.ts +0 -56
  527. package/ui/frame/index.ios.js +0 -668
  528. package/ui/frame/index.ios.js.map +0 -1
  529. package/ui/gestures/gestures-common.d.ts +0 -32
  530. package/ui/gestures/gestures-common.js +0 -78
  531. package/ui/gestures/gestures-common.js.map +0 -1
  532. package/ui/gestures/gestures-types.d.ts +0 -108
  533. package/ui/gestures/gestures-types.js +0 -40
  534. package/ui/gestures/gestures-types.js.map +0 -1
  535. package/ui/gestures/index.android.d.ts +0 -49
  536. package/ui/gestures/index.android.js +0 -597
  537. package/ui/gestures/index.android.js.map +0 -1
  538. package/ui/gestures/index.ios.d.ts +0 -70
  539. package/ui/gestures/index.ios.js +0 -512
  540. package/ui/gestures/index.ios.js.map +0 -1
  541. package/ui/gestures/touch-manager.d.ts +0 -82
  542. package/ui/gestures/touch-manager.js +0 -268
  543. package/ui/gestures/touch-manager.js.map +0 -1
  544. package/ui/html-view/html-view-common.d.ts +0 -12
  545. package/ui/html-view/html-view-common.js +0 -31
  546. package/ui/html-view/html-view-common.js.map +0 -1
  547. package/ui/html-view/index.android.d.ts +0 -27
  548. package/ui/html-view/index.android.js +0 -90
  549. package/ui/html-view/index.android.js.map +0 -1
  550. package/ui/html-view/index.ios.d.ts +0 -22
  551. package/ui/html-view/index.ios.js +0 -101
  552. package/ui/html-view/index.ios.js.map +0 -1
  553. package/ui/image/image-common.d.ts +0 -45
  554. package/ui/image/image-common.js +0 -195
  555. package/ui/image/image-common.js.map +0 -1
  556. package/ui/image/index.android.d.ts +0 -23
  557. package/ui/image/index.android.js +0 -173
  558. package/ui/image/index.android.js.map +0 -1
  559. package/ui/image/index.ios.d.ts +0 -26
  560. package/ui/image/index.ios.js +0 -186
  561. package/ui/image/index.ios.js.map +0 -1
  562. package/ui/image/symbol-effects-common.d.ts +0 -36
  563. package/ui/image/symbol-effects-common.js +0 -35
  564. package/ui/image/symbol-effects-common.js.map +0 -1
  565. package/ui/image/symbol-effects.android.d.ts +0 -5
  566. package/ui/image/symbol-effects.android.js +0 -8
  567. package/ui/image/symbol-effects.android.js.map +0 -1
  568. package/ui/image/symbol-effects.ios.d.ts +0 -6
  569. package/ui/image/symbol-effects.ios.js +0 -79
  570. package/ui/image/symbol-effects.ios.js.map +0 -1
  571. package/ui/image-cache/image-cache-common.d.ts +0 -40
  572. package/ui/image-cache/image-cache-common.js +0 -176
  573. package/ui/image-cache/image-cache-common.js.map +0 -1
  574. package/ui/image-cache/index.android.d.ts +0 -11
  575. package/ui/image-cache/index.android.js +0 -76
  576. package/ui/image-cache/index.android.js.map +0 -1
  577. package/ui/image-cache/index.ios.d.ts +0 -11
  578. package/ui/image-cache/index.ios.js +0 -78
  579. package/ui/image-cache/index.ios.js.map +0 -1
  580. package/ui/index.d.ts +0 -90
  581. package/ui/index.js +0 -79
  582. package/ui/index.js.map +0 -1
  583. package/ui/label/index.android.d.ts +0 -13
  584. package/ui/label/index.android.js +0 -44
  585. package/ui/label/index.android.js.map +0 -1
  586. package/ui/label/index.ios.d.ts +0 -30
  587. package/ui/label/index.ios.js +0 -224
  588. package/ui/label/index.ios.js.map +0 -1
  589. package/ui/layouts/absolute-layout/absolute-layout-common.d.ts +0 -16
  590. package/ui/layouts/absolute-layout/absolute-layout-common.js +0 -72
  591. package/ui/layouts/absolute-layout/absolute-layout-common.js.map +0 -1
  592. package/ui/layouts/absolute-layout/index.android.d.ts +0 -6
  593. package/ui/layouts/absolute-layout/index.android.js +0 -26
  594. package/ui/layouts/absolute-layout/index.android.js.map +0 -1
  595. package/ui/layouts/absolute-layout/index.ios.d.ts +0 -10
  596. package/ui/layouts/absolute-layout/index.ios.js +0 -48
  597. package/ui/layouts/absolute-layout/index.ios.js.map +0 -1
  598. package/ui/layouts/dock-layout/dock-layout-common.d.ts +0 -14
  599. package/ui/layouts/dock-layout/dock-layout-common.js +0 -51
  600. package/ui/layouts/dock-layout/dock-layout-common.js.map +0 -1
  601. package/ui/layouts/dock-layout/index.android.d.ts +0 -8
  602. package/ui/layouts/dock-layout/index.android.js +0 -38
  603. package/ui/layouts/dock-layout/index.android.js.map +0 -1
  604. package/ui/layouts/dock-layout/index.ios.d.ts +0 -8
  605. package/ui/layouts/dock-layout/index.ios.js +0 -115
  606. package/ui/layouts/dock-layout/index.ios.js.map +0 -1
  607. package/ui/layouts/flexbox-layout/flexbox-layout-common.d.ts +0 -126
  608. package/ui/layouts/flexbox-layout/flexbox-layout-common.js +0 -403
  609. package/ui/layouts/flexbox-layout/flexbox-layout-common.js.map +0 -1
  610. package/ui/layouts/flexbox-layout/index.android.d.ts +0 -23
  611. package/ui/layouts/flexbox-layout/index.android.js +0 -152
  612. package/ui/layouts/flexbox-layout/index.android.js.map +0 -1
  613. package/ui/layouts/flexbox-layout/index.ios.d.ts +0 -44
  614. package/ui/layouts/flexbox-layout/index.ios.js +0 -1244
  615. package/ui/layouts/flexbox-layout/index.ios.js.map +0 -1
  616. package/ui/layouts/grid-layout/grid-layout-common.d.ts +0 -72
  617. package/ui/layouts/grid-layout/grid-layout-common.js +0 -358
  618. package/ui/layouts/grid-layout/grid-layout-common.js.map +0 -1
  619. package/ui/layouts/grid-layout/index.android.d.ts +0 -23
  620. package/ui/layouts/grid-layout/index.android.js +0 -122
  621. package/ui/layouts/grid-layout/index.android.js.map +0 -1
  622. package/ui/layouts/grid-layout/index.ios.d.ts +0 -28
  623. package/ui/layouts/grid-layout/index.ios.js +0 -778
  624. package/ui/layouts/grid-layout/index.ios.js.map +0 -1
  625. package/ui/layouts/index.d.ts +0 -10
  626. package/ui/layouts/index.js +0 -9
  627. package/ui/layouts/index.js.map +0 -1
  628. package/ui/layouts/layout-base-common.d.ts +0 -36
  629. package/ui/layouts/layout-base-common.js +0 -141
  630. package/ui/layouts/layout-base-common.js.map +0 -1
  631. package/ui/layouts/layout-base.android.d.ts +0 -17
  632. package/ui/layouts/layout-base.android.js +0 -50
  633. package/ui/layouts/layout-base.android.js.map +0 -1
  634. package/ui/layouts/layout-base.ios.d.ts +0 -13
  635. package/ui/layouts/layout-base.ios.js +0 -40
  636. package/ui/layouts/layout-base.ios.js.map +0 -1
  637. package/ui/layouts/root-layout/index.android.d.ts +0 -15
  638. package/ui/layouts/root-layout/index.android.js +0 -126
  639. package/ui/layouts/root-layout/index.android.js.map +0 -1
  640. package/ui/layouts/root-layout/index.ios.d.ts +0 -17
  641. package/ui/layouts/root-layout/index.ios.js +0 -101
  642. package/ui/layouts/root-layout/index.ios.js.map +0 -1
  643. package/ui/layouts/root-layout/root-layout-common.d.ts +0 -61
  644. package/ui/layouts/root-layout/root-layout-common.js +0 -422
  645. package/ui/layouts/root-layout/root-layout-common.js.map +0 -1
  646. package/ui/layouts/root-layout/root-layout-stack.d.ts +0 -5
  647. package/ui/layouts/root-layout/root-layout-stack.js +0 -19
  648. package/ui/layouts/root-layout/root-layout-stack.js.map +0 -1
  649. package/ui/layouts/stack-layout/index.android.d.ts +0 -7
  650. package/ui/layouts/stack-layout/index.android.js +0 -11
  651. package/ui/layouts/stack-layout/index.android.js.map +0 -1
  652. package/ui/layouts/stack-layout/index.ios.d.ts +0 -10
  653. package/ui/layouts/stack-layout/index.ios.js +0 -149
  654. package/ui/layouts/stack-layout/index.ios.js.map +0 -1
  655. package/ui/layouts/stack-layout/stack-layout-common.d.ts +0 -8
  656. package/ui/layouts/stack-layout/stack-layout-common.js +0 -19
  657. package/ui/layouts/stack-layout/stack-layout-common.js.map +0 -1
  658. package/ui/layouts/wrap-layout/index.android.d.ts +0 -10
  659. package/ui/layouts/wrap-layout/index.android.js +0 -18
  660. package/ui/layouts/wrap-layout/index.android.js.map +0 -1
  661. package/ui/layouts/wrap-layout/index.ios.d.ts +0 -8
  662. package/ui/layouts/wrap-layout/index.ios.js +0 -170
  663. package/ui/layouts/wrap-layout/index.ios.js.map +0 -1
  664. package/ui/layouts/wrap-layout/wrap-layout-common.d.ts +0 -15
  665. package/ui/layouts/wrap-layout/wrap-layout-common.js +0 -40
  666. package/ui/layouts/wrap-layout/wrap-layout-common.js.map +0 -1
  667. package/ui/list-picker/index.android.d.ts +0 -18
  668. package/ui/list-picker/index.android.js +0 -181
  669. package/ui/list-picker/index.android.js.map +0 -1
  670. package/ui/list-picker/index.ios.d.ts +0 -19
  671. package/ui/list-picker/index.ios.js +0 -99
  672. package/ui/list-picker/index.ios.js.map +0 -1
  673. package/ui/list-picker/list-picker-common.d.ts +0 -23
  674. package/ui/list-picker/list-picker-common.js +0 -78
  675. package/ui/list-picker/list-picker-common.js.map +0 -1
  676. package/ui/list-view/index.android.d.ts +0 -43
  677. package/ui/list-view/index.android.js +0 -368
  678. package/ui/list-view/index.android.js.map +0 -1
  679. package/ui/list-view/index.ios.d.ts +0 -52
  680. package/ui/list-view/index.ios.js +0 -460
  681. package/ui/list-view/index.ios.js.map +0 -1
  682. package/ui/list-view/list-view-common.d.ts +0 -66
  683. package/ui/list-view/list-view-common.js +0 -211
  684. package/ui/list-view/list-view-common.js.map +0 -1
  685. package/ui/page/events.d.ts +0 -6
  686. package/ui/page/events.js +0 -7
  687. package/ui/page/events.js.map +0 -1
  688. package/ui/page/index.android.d.ts +0 -25
  689. package/ui/page/index.android.js +0 -150
  690. package/ui/page/index.android.js.map +0 -1
  691. package/ui/page/index.ios.d.ts +0 -54
  692. package/ui/page/index.ios.js +0 -569
  693. package/ui/page/index.ios.js.map +0 -1
  694. package/ui/page/page-common.d.ts +0 -77
  695. package/ui/page/page-common.js +0 -199
  696. package/ui/page/page-common.js.map +0 -1
  697. package/ui/placeholder/index.android.d.ts +0 -12
  698. package/ui/placeholder/index.android.js +0 -21
  699. package/ui/placeholder/index.android.js.map +0 -1
  700. package/ui/placeholder/index.js +0 -16
  701. package/ui/placeholder/index.js.map +0 -1
  702. package/ui/placeholder/placeholder-common.d.ts +0 -11
  703. package/ui/placeholder/placeholder-common.js +0 -2
  704. package/ui/placeholder/placeholder-common.js.map +0 -1
  705. package/ui/progress/index.android.d.ts +0 -18
  706. package/ui/progress/index.android.js +0 -65
  707. package/ui/progress/index.android.js.map +0 -1
  708. package/ui/progress/index.ios.d.ts +0 -19
  709. package/ui/progress/index.ios.js +0 -45
  710. package/ui/progress/index.ios.js.map +0 -1
  711. package/ui/progress/progress-common.d.ts +0 -15
  712. package/ui/progress/progress-common.js +0 -34
  713. package/ui/progress/progress-common.js.map +0 -1
  714. package/ui/proxy-view-container/index.d.ts +0 -33
  715. package/ui/proxy-view-container/index.js +0 -247
  716. package/ui/proxy-view-container/index.js.map +0 -1
  717. package/ui/repeater/index.d.ts +0 -67
  718. package/ui/repeater/index.js +0 -225
  719. package/ui/repeater/index.js.map +0 -1
  720. package/ui/scroll-view/index.android.d.ts +0 -27
  721. package/ui/scroll-view/index.android.js +0 -157
  722. package/ui/scroll-view/index.android.js.map +0 -1
  723. package/ui/scroll-view/index.ios.d.ts +0 -27
  724. package/ui/scroll-view/index.ios.js +0 -174
  725. package/ui/scroll-view/index.ios.js.map +0 -1
  726. package/ui/scroll-view/scroll-view-common.d.ts +0 -32
  727. package/ui/scroll-view/scroll-view-common.js +0 -93
  728. package/ui/scroll-view/scroll-view-common.js.map +0 -1
  729. package/ui/search-bar/index.android.d.ts +0 -43
  730. package/ui/search-bar/index.android.js +0 -249
  731. package/ui/search-bar/index.android.js.map +0 -1
  732. package/ui/search-bar/index.ios.d.ts +0 -35
  733. package/ui/search-bar/index.ios.js +0 -196
  734. package/ui/search-bar/index.ios.js.map +0 -1
  735. package/ui/search-bar/search-bar-common.d.ts +0 -17
  736. package/ui/search-bar/search-bar-common.js +0 -36
  737. package/ui/search-bar/search-bar-common.js.map +0 -1
  738. package/ui/segmented-bar/index.android.d.ts +0 -42
  739. package/ui/segmented-bar/index.android.js +0 -286
  740. package/ui/segmented-bar/index.android.js.map +0 -1
  741. package/ui/segmented-bar/index.ios.d.ts +0 -28
  742. package/ui/segmented-bar/index.ios.js +0 -140
  743. package/ui/segmented-bar/index.ios.js.map +0 -1
  744. package/ui/segmented-bar/segmented-bar-common.d.ts +0 -37
  745. package/ui/segmented-bar/segmented-bar-common.js +0 -146
  746. package/ui/segmented-bar/segmented-bar-common.js.map +0 -1
  747. package/ui/slider/index.android.d.ts +0 -32
  748. package/ui/slider/index.android.js +0 -126
  749. package/ui/slider/index.android.js.map +0 -1
  750. package/ui/slider/index.ios.d.ts +0 -34
  751. package/ui/slider/index.ios.js +0 -145
  752. package/ui/slider/index.ios.js.map +0 -1
  753. package/ui/slider/slider-common.d.ts +0 -27
  754. package/ui/slider/slider-common.js +0 -69
  755. package/ui/slider/slider-common.js.map +0 -1
  756. package/ui/styling/background-common.d.ts +0 -78
  757. package/ui/styling/background-common.js +0 -241
  758. package/ui/styling/background-common.js.map +0 -1
  759. package/ui/styling/background.android.d.ts +0 -3
  760. package/ui/styling/background.android.js +0 -82
  761. package/ui/styling/background.android.js.map +0 -1
  762. package/ui/styling/background.ios.d.ts +0 -20
  763. package/ui/styling/background.ios.js +0 -1096
  764. package/ui/styling/background.ios.js.map +0 -1
  765. package/ui/styling/box-shadow.d.ts +0 -9
  766. package/ui/styling/box-shadow.js +0 -3
  767. package/ui/styling/box-shadow.js.map +0 -1
  768. package/ui/styling/clip-path-function.d.ts +0 -16
  769. package/ui/styling/clip-path-function.js +0 -25
  770. package/ui/styling/clip-path-function.js.map +0 -1
  771. package/ui/styling/converters.d.ts +0 -2
  772. package/ui/styling/converters.js +0 -41
  773. package/ui/styling/converters.js.map +0 -1
  774. package/ui/styling/css-animation-parser.d.ts +0 -14
  775. package/ui/styling/css-animation-parser.js +0 -187
  776. package/ui/styling/css-animation-parser.js.map +0 -1
  777. package/ui/styling/css-selector.d.ts +0 -270
  778. package/ui/styling/css-selector.js +0 -934
  779. package/ui/styling/css-selector.js.map +0 -1
  780. package/ui/styling/css-shadow.d.ts +0 -19
  781. package/ui/styling/css-shadow.js +0 -26
  782. package/ui/styling/css-shadow.js.map +0 -1
  783. package/ui/styling/css-stroke.d.ts +0 -12
  784. package/ui/styling/css-stroke.js +0 -19
  785. package/ui/styling/css-stroke.js.map +0 -1
  786. package/ui/styling/css-transform.d.ts +0 -2
  787. package/ui/styling/css-transform.js +0 -110
  788. package/ui/styling/css-transform.js.map +0 -1
  789. package/ui/styling/css-utils.d.ts +0 -7
  790. package/ui/styling/css-utils.js +0 -62
  791. package/ui/styling/css-utils.js.map +0 -1
  792. package/ui/styling/font-common.d.ts +0 -62
  793. package/ui/styling/font-common.js +0 -195
  794. package/ui/styling/font-common.js.map +0 -1
  795. package/ui/styling/font-interfaces.d.ts +0 -16
  796. package/ui/styling/font-interfaces.js +0 -2
  797. package/ui/styling/font-interfaces.js.map +0 -1
  798. package/ui/styling/font.android.d.ts +0 -15
  799. package/ui/styling/font.android.js +0 -226
  800. package/ui/styling/font.android.js.map +0 -1
  801. package/ui/styling/font.ios.d.ts +0 -18
  802. package/ui/styling/font.ios.js +0 -159
  803. package/ui/styling/font.ios.js.map +0 -1
  804. package/ui/styling/length-shared.d.ts +0 -52
  805. package/ui/styling/length-shared.js +0 -173
  806. package/ui/styling/length-shared.js.map +0 -1
  807. package/ui/styling/linear-gradient.d.ts +0 -13
  808. package/ui/styling/linear-gradient.js +0 -48
  809. package/ui/styling/linear-gradient.js.map +0 -1
  810. package/ui/styling/style/index.d.ts +0 -164
  811. package/ui/styling/style/index.js +0 -67
  812. package/ui/styling/style/index.js.map +0 -1
  813. package/ui/styling/style-properties.d.ts +0 -62
  814. package/ui/styling/style-properties.js +0 -1132
  815. package/ui/styling/style-properties.js.map +0 -1
  816. package/ui/styling/style-scope.d.ts +0 -87
  817. package/ui/styling/style-scope.js +0 -1020
  818. package/ui/styling/style-scope.js.map +0 -1
  819. package/ui/styling/styling-profile.d.ts +0 -1
  820. package/ui/styling/styling-profile.js +0 -4
  821. package/ui/styling/styling-profile.js.map +0 -1
  822. package/ui/styling/styling-shared.d.ts +0 -3
  823. package/ui/styling/styling-shared.js +0 -6
  824. package/ui/styling/styling-shared.js.map +0 -1
  825. package/ui/switch/index.android.d.ts +0 -23
  826. package/ui/switch/index.android.js +0 -113
  827. package/ui/switch/index.android.js.map +0 -1
  828. package/ui/switch/index.ios.d.ts +0 -25
  829. package/ui/switch/index.ios.js +0 -135
  830. package/ui/switch/index.ios.js.map +0 -1
  831. package/ui/switch/switch-common.d.ts +0 -12
  832. package/ui/switch/switch-common.js +0 -37
  833. package/ui/switch/switch-common.js.map +0 -1
  834. package/ui/tab-view/index.android.d.ts +0 -73
  835. package/ui/tab-view/index.android.js +0 -648
  836. package/ui/tab-view/index.android.js.map +0 -1
  837. package/ui/tab-view/index.ios.d.ts +0 -72
  838. package/ui/tab-view/index.ios.js +0 -589
  839. package/ui/tab-view/index.ios.js.map +0 -1
  840. package/ui/tab-view/tab-view-common.d.ts +0 -71
  841. package/ui/tab-view/tab-view-common.js +0 -262
  842. package/ui/tab-view/tab-view-common.js.map +0 -1
  843. package/ui/text-base/formatted-string.js +0 -163
  844. package/ui/text-base/formatted-string.js.map +0 -1
  845. package/ui/text-base/index.android.d.ts +0 -78
  846. package/ui/text-base/index.android.js +0 -556
  847. package/ui/text-base/index.android.js.map +0 -1
  848. package/ui/text-base/index.ios.d.ts +0 -53
  849. package/ui/text-base/index.ios.js +0 -458
  850. package/ui/text-base/index.ios.js.map +0 -1
  851. package/ui/text-base/span.js +0 -113
  852. package/ui/text-base/span.js.map +0 -1
  853. package/ui/text-base/text-base-common.d.ts +0 -98
  854. package/ui/text-base/text-base-common.js +0 -323
  855. package/ui/text-base/text-base-common.js.map +0 -1
  856. package/ui/text-field/index.android.d.ts +0 -10
  857. package/ui/text-field/index.android.js +0 -92
  858. package/ui/text-field/index.android.js.map +0 -1
  859. package/ui/text-field/index.ios.d.ts +0 -55
  860. package/ui/text-field/index.ios.js +0 -311
  861. package/ui/text-field/index.ios.js.map +0 -1
  862. package/ui/text-field/text-field-common.d.ts +0 -11
  863. package/ui/text-field/text-field-common.js +0 -25
  864. package/ui/text-field/text-field-common.js.map +0 -1
  865. package/ui/text-view/index.android.d.ts +0 -8
  866. package/ui/text-view/index.android.js +0 -24
  867. package/ui/text-view/index.android.js.map +0 -1
  868. package/ui/text-view/index.ios.d.ts +0 -58
  869. package/ui/text-view/index.ios.js +0 -427
  870. package/ui/text-view/index.ios.js.map +0 -1
  871. package/ui/text-view/text-view-common.d.ts +0 -32
  872. package/ui/text-view/text-view-common.js +0 -39
  873. package/ui/text-view/text-view-common.js.map +0 -1
  874. package/ui/time-picker/index.android.d.ts +0 -10
  875. package/ui/time-picker/index.android.js +0 -81
  876. package/ui/time-picker/index.android.js.map +0 -1
  877. package/ui/time-picker/index.ios.d.ts +0 -31
  878. package/ui/time-picker/index.ios.js +0 -138
  879. package/ui/time-picker/index.ios.js.map +0 -1
  880. package/ui/time-picker/time-picker-common.d.ts +0 -31
  881. package/ui/time-picker/time-picker-common.js +0 -176
  882. package/ui/time-picker/time-picker-common.js.map +0 -1
  883. package/ui/transition/fade-transition.android.d.ts +0 -4
  884. package/ui/transition/fade-transition.android.js +0 -28
  885. package/ui/transition/fade-transition.android.js.map +0 -1
  886. package/ui/transition/fade-transition.ios.d.ts +0 -17
  887. package/ui/transition/fade-transition.ios.js +0 -65
  888. package/ui/transition/fade-transition.ios.js.map +0 -1
  889. package/ui/transition/flip-transition.android.d.ts +0 -6
  890. package/ui/transition/flip-transition.android.js +0 -90
  891. package/ui/transition/flip-transition.android.js.map +0 -1
  892. package/ui/transition/index.android.d.ts +0 -19
  893. package/ui/transition/index.android.js +0 -37
  894. package/ui/transition/index.android.js.map +0 -1
  895. package/ui/transition/index.ios.d.ts +0 -14
  896. package/ui/transition/index.ios.js +0 -30
  897. package/ui/transition/index.ios.js.map +0 -1
  898. package/ui/transition/modal-transition.android.d.ts +0 -5
  899. package/ui/transition/modal-transition.android.js +0 -7
  900. package/ui/transition/modal-transition.android.js.map +0 -1
  901. package/ui/transition/modal-transition.ios.d.ts +0 -34
  902. package/ui/transition/modal-transition.ios.js +0 -182
  903. package/ui/transition/modal-transition.ios.js.map +0 -1
  904. package/ui/transition/page-transition.android.d.ts +0 -9
  905. package/ui/transition/page-transition.android.js +0 -293
  906. package/ui/transition/page-transition.android.js.map +0 -1
  907. package/ui/transition/page-transition.ios.d.ts +0 -35
  908. package/ui/transition/page-transition.ios.js +0 -199
  909. package/ui/transition/page-transition.ios.js.map +0 -1
  910. package/ui/transition/shared-transition-helper.android.d.ts +0 -9
  911. package/ui/transition/shared-transition-helper.android.js +0 -10
  912. package/ui/transition/shared-transition-helper.android.js.map +0 -1
  913. package/ui/transition/shared-transition-helper.ios.d.ts +0 -14
  914. package/ui/transition/shared-transition-helper.ios.js +0 -539
  915. package/ui/transition/shared-transition-helper.ios.js.map +0 -1
  916. package/ui/transition/shared-transition.d.ts +0 -271
  917. package/ui/transition/shared-transition.js +0 -215
  918. package/ui/transition/shared-transition.js.map +0 -1
  919. package/ui/transition/slide-transition.android.d.ts +0 -7
  920. package/ui/transition/slide-transition.android.js +0 -116
  921. package/ui/transition/slide-transition.android.js.map +0 -1
  922. package/ui/transition/slide-transition.ios.d.ts +0 -19
  923. package/ui/transition/slide-transition.ios.js +0 -95
  924. package/ui/transition/slide-transition.ios.js.map +0 -1
  925. package/ui/utils.android.d.ts +0 -5
  926. package/ui/utils.android.js +0 -16
  927. package/ui/utils.android.js.map +0 -1
  928. package/ui/utils.ios.d.ts +0 -11
  929. package/ui/utils.ios.js +0 -66
  930. package/ui/utils.ios.js.map +0 -1
  931. package/ui/web-view/index.android.d.ts +0 -18
  932. package/ui/web-view/index.android.js +0 -177
  933. package/ui/web-view/index.android.js.map +0 -1
  934. package/ui/web-view/index.ios.d.ts +0 -27
  935. package/ui/web-view/index.ios.js +0 -246
  936. package/ui/web-view/index.ios.js.map +0 -1
  937. package/ui/web-view/web-view-common.d.ts +0 -30
  938. package/ui/web-view/web-view-common.js +0 -74
  939. package/ui/web-view/web-view-common.js.map +0 -1
  940. package/ui/web-view/web-view-interfaces.d.ts +0 -11
  941. package/ui/web-view/web-view-interfaces.js +0 -2
  942. package/ui/web-view/web-view-interfaces.js.map +0 -1
  943. package/utils/animation-helpers.d.ts +0 -27
  944. package/utils/animation-helpers.js +0 -48
  945. package/utils/animation-helpers.js.map +0 -1
  946. package/utils/common.d.ts +0 -26
  947. package/utils/common.js +0 -139
  948. package/utils/common.js.map +0 -1
  949. package/utils/constants.android.d.ts +0 -2
  950. package/utils/constants.android.js +0 -5
  951. package/utils/constants.android.js.map +0 -1
  952. package/utils/constants.ios.d.ts +0 -2
  953. package/utils/constants.ios.js +0 -5
  954. package/utils/constants.ios.js.map +0 -1
  955. package/utils/debug-source.d.ts +0 -19
  956. package/utils/debug-source.js +0 -78
  957. package/utils/debug-source.js.map +0 -1
  958. package/utils/debug.js +0 -3
  959. package/utils/debug.js.map +0 -1
  960. package/utils/index.android.d.ts +0 -26
  961. package/utils/index.android.js +0 -205
  962. package/utils/index.android.js.map +0 -1
  963. package/utils/index.ios.d.ts +0 -22
  964. package/utils/index.ios.js +0 -113
  965. package/utils/index.ios.js.map +0 -1
  966. package/utils/layout-helper/index.android.d.ts +0 -24
  967. package/utils/layout-helper/index.android.js +0 -77
  968. package/utils/layout-helper/index.android.js.map +0 -1
  969. package/utils/layout-helper/index.ios.d.ts +0 -24
  970. package/utils/layout-helper/index.ios.js +0 -64
  971. package/utils/layout-helper/index.ios.js.map +0 -1
  972. package/utils/layout-helper/layout-helper-common.d.ts +0 -5
  973. package/utils/layout-helper/layout-helper-common.js +0 -49
  974. package/utils/layout-helper/layout-helper-common.js.map +0 -1
  975. package/utils/layout-helper/layout-helper-shared.d.ts +0 -9
  976. package/utils/layout-helper/layout-helper-shared.js +0 -13
  977. package/utils/layout-helper/layout-helper-shared.js.map +0 -1
  978. package/utils/lazy.js +0 -5
  979. package/utils/lazy.js.map +0 -1
  980. package/utils/macrotask-scheduler.js +0 -26
  981. package/utils/macrotask-scheduler.js.map +0 -1
  982. package/utils/mainthread-helper.android.d.ts +0 -3
  983. package/utils/mainthread-helper.android.js +0 -28
  984. package/utils/mainthread-helper.android.js.map +0 -1
  985. package/utils/mainthread-helper.ios.d.ts +0 -3
  986. package/utils/mainthread-helper.ios.js +0 -17
  987. package/utils/mainthread-helper.ios.js.map +0 -1
  988. package/utils/module-merge.d.ts +0 -1
  989. package/utils/module-merge.js +0 -8
  990. package/utils/module-merge.js.map +0 -1
  991. package/utils/native-helper-for-android.d.ts +0 -34
  992. package/utils/native-helper-for-android.js +0 -373
  993. package/utils/native-helper-for-android.js.map +0 -1
  994. package/utils/native-helper.android.d.ts +0 -42
  995. package/utils/native-helper.android.js +0 -30
  996. package/utils/native-helper.android.js.map +0 -1
  997. package/utils/native-helper.ios.d.ts +0 -79
  998. package/utils/native-helper.ios.js +0 -339
  999. package/utils/native-helper.ios.js.map +0 -1
  1000. package/utils/number-utils.d.ts +0 -19
  1001. package/utils/number-utils.js +0 -37
  1002. package/utils/number-utils.js.map +0 -1
  1003. package/utils/platform-check.d.ts +0 -4
  1004. package/utils/platform-check.js +0 -21
  1005. package/utils/platform-check.js.map +0 -1
  1006. package/utils/shared.d.ts +0 -17
  1007. package/utils/shared.js +0 -40
  1008. package/utils/shared.js.map +0 -1
  1009. package/utils/types.js +0 -104
  1010. package/utils/types.js.map +0 -1
  1011. package/utils/utils-shared.d.ts +0 -1
  1012. package/utils/utils-shared.js +0 -8
  1013. package/utils/utils-shared.js.map +0 -1
  1014. package/wgc/atob.d.ts +0 -1
  1015. package/wgc/atob.js +0 -9
  1016. package/wgc/atob.js.map +0 -1
  1017. package/wgc/btoa.d.ts +0 -1
  1018. package/wgc/btoa.js +0 -9
  1019. package/wgc/btoa.js.map +0 -1
  1020. package/wgc/crypto/SubtleCrypto.d.ts +0 -63
  1021. package/wgc/crypto/SubtleCrypto.js +0 -551
  1022. package/wgc/crypto/SubtleCrypto.js.map +0 -1
  1023. package/wgc/crypto/index.d.ts +0 -8
  1024. package/wgc/crypto/index.js +0 -32
  1025. package/wgc/crypto/index.js.map +0 -1
  1026. package/wgc/index.d.ts +0 -2
  1027. package/wgc/index.js +0 -3
  1028. package/wgc/index.js.map +0 -1
  1029. package/xhr/index.d.ts +0 -113
  1030. package/xhr/index.js +0 -486
  1031. package/xhr/index.js.map +0 -1
  1032. package/xml/index.d.ts +0 -108
  1033. package/xml/index.js +0 -574
  1034. package/xml/index.js.map +0 -1
@@ -1,1096 +0,0 @@
1
- import { LinearGradient } from './linear-gradient';
2
- import { Screen } from '../../platform';
3
- import { isDataURI, isFileOrResourcePath, layout } from '../../utils';
4
- import { ios as iosViewUtils } from '../utils';
5
- import { ImageSource } from '../../image-source';
6
- import { parse as cssParse } from '../../css-value/reworkcss-value';
7
- import { ClipPathFunction } from './clip-path-function';
8
- export * from './background-common';
9
- const clearCGColor = UIColor.clearColor.CGColor;
10
- const uriPattern = /url\(('|")(.*?)\1\)/;
11
- const symbolUrl = Symbol('backgroundImageUrl');
12
- export var CacheMode;
13
- (function (CacheMode) {
14
- CacheMode[CacheMode["none"] = 0] = "none";
15
- })(CacheMode || (CacheMode = {}));
16
- export var ios;
17
- (function (ios) {
18
- function createBackgroundUIColor(view, callback, flip) {
19
- const background = view.style.backgroundInternal;
20
- const nativeView = view.nativeViewProtected;
21
- if (!nativeView) {
22
- return;
23
- }
24
- // Unset this in case another layer handles background color (e.g. gradient)
25
- nativeView.layer.backgroundColor = null;
26
- // Cleanup of previous values
27
- clearBackgroundVisualEffects(view);
28
- // Borders, shadows, etc
29
- drawBackgroundVisualEffects(view);
30
- if (!background.image) {
31
- callback(background?.color?.ios);
32
- }
33
- else {
34
- if (!(background.image instanceof LinearGradient)) {
35
- createUIImageFromURI(view, background.image, flip, (image) => {
36
- callback(image ? UIColor.alloc().initWithPatternImage(image) : background?.color?.ios);
37
- });
38
- }
39
- }
40
- }
41
- ios.createBackgroundUIColor = createBackgroundUIColor;
42
- function drawBackgroundVisualEffects(view) {
43
- const background = view.style.backgroundInternal;
44
- const nativeView = view.nativeViewProtected;
45
- const layer = nativeView.layer;
46
- let needsLayerAdjustmentOnScroll = false;
47
- // Add new gradient layer or update existing one
48
- if (background.image instanceof LinearGradient) {
49
- if (!nativeView.gradientLayer) {
50
- nativeView.gradientLayer = CAGradientLayer.new();
51
- layer.insertSublayerAtIndex(nativeView.gradientLayer, 0);
52
- }
53
- iosViewUtils.drawGradient(nativeView, nativeView.gradientLayer, background.image);
54
- needsLayerAdjustmentOnScroll = true;
55
- }
56
- // Initialize clipping mask (usually for clip-path and non-uniform rounded borders)
57
- maskLayerIfNeeded(nativeView, background);
58
- if (background.hasUniformBorder()) {
59
- const borderColor = background.getUniformBorderColor();
60
- layer.borderColor = borderColor?.ios?.CGColor;
61
- layer.borderWidth = layout.toDeviceIndependentPixels(background.getUniformBorderWidth());
62
- layer.cornerRadius = getUniformBorderRadius(view, layer.bounds);
63
- }
64
- else {
65
- drawNonUniformBorders(nativeView, background);
66
- needsLayerAdjustmentOnScroll = true;
67
- }
68
- // Clip-path should be called after borders are applied
69
- if (nativeView.maskType === iosViewUtils.LayerMask.CLIP_PATH && layer.mask instanceof CAShapeLayer) {
70
- layer.mask.path = generateClipPath(view, layer.bounds);
71
- }
72
- if (background.hasBoxShadow()) {
73
- drawBoxShadow(view);
74
- needsLayerAdjustmentOnScroll = true;
75
- }
76
- if (needsLayerAdjustmentOnScroll) {
77
- registerAdjustLayersOnScrollListener(view);
78
- }
79
- }
80
- ios.drawBackgroundVisualEffects = drawBackgroundVisualEffects;
81
- function clearBackgroundVisualEffects(view) {
82
- const nativeView = view.nativeViewProtected;
83
- if (!nativeView) {
84
- return;
85
- }
86
- const background = view.style.backgroundInternal;
87
- const hasGradientBackground = background.image && background.image instanceof LinearGradient;
88
- // Remove mask if there is no clip path or non-uniform border with radius
89
- let needsMask;
90
- switch (nativeView.maskType) {
91
- case iosViewUtils.LayerMask.BORDER:
92
- needsMask = !background.hasUniformBorder() && background.hasBorderRadius();
93
- break;
94
- case iosViewUtils.LayerMask.CLIP_PATH:
95
- needsMask = !!background.clipPath;
96
- break;
97
- default:
98
- needsMask = false;
99
- break;
100
- }
101
- if (!needsMask) {
102
- clearLayerMask(nativeView);
103
- }
104
- // Clear box shadow if it's no longer needed
105
- if (background.clearFlags & 2 /* BackgroundClearFlags.CLEAR_BOX_SHADOW */) {
106
- clearBoxShadow(nativeView);
107
- }
108
- // Non-uniform borders cleanup
109
- if (nativeView.hasNonUniformBorder) {
110
- if (nativeView.hasNonUniformBorderColor && background.hasUniformBorderColor()) {
111
- clearNonUniformColorBorders(nativeView);
112
- }
113
- if (background.hasUniformBorder()) {
114
- clearNonUniformBorders(nativeView);
115
- }
116
- }
117
- if (nativeView.gradientLayer && !hasGradientBackground) {
118
- nativeView.gradientLayer.removeFromSuperlayer();
119
- nativeView.gradientLayer = null;
120
- }
121
- // Force unset scroll listener
122
- unregisterAdjustLayersOnScrollListener(view);
123
- // Reset clear flags
124
- background.clearFlags = 0 /* BackgroundClearFlags.NONE */;
125
- }
126
- ios.clearBackgroundVisualEffects = clearBackgroundVisualEffects;
127
- function createUIImageFromURI(view, imageURI, flip, callback) {
128
- const nativeView = view.nativeViewProtected;
129
- if (!nativeView) {
130
- return;
131
- }
132
- const frame = nativeView.frame;
133
- const boundsWidth = view.scaleX ? frame.size.width / view.scaleX : frame.size.width;
134
- const boundsHeight = view.scaleY ? frame.size.height / view.scaleY : frame.size.height;
135
- if (!boundsWidth || !boundsHeight) {
136
- return undefined;
137
- }
138
- const style = view.style;
139
- if (imageURI) {
140
- const match = imageURI.match(uriPattern);
141
- if (match && match[2]) {
142
- imageURI = match[2];
143
- }
144
- }
145
- let bitmap;
146
- if (isDataURI(imageURI)) {
147
- const base64Data = imageURI.split(',')[1];
148
- if (base64Data !== undefined) {
149
- const imageSource = ImageSource.fromBase64Sync(base64Data);
150
- bitmap = imageSource && imageSource.ios;
151
- }
152
- }
153
- else if (isFileOrResourcePath(imageURI)) {
154
- const imageSource = ImageSource.fromFileOrResourceSync(imageURI);
155
- bitmap = imageSource && imageSource.ios;
156
- }
157
- else if (imageURI.indexOf('http') !== -1) {
158
- style[symbolUrl] = imageURI;
159
- ImageSource.fromUrl(imageURI)
160
- .then((r) => {
161
- if (style && style[symbolUrl] === imageURI) {
162
- callback(generatePatternImage(r.ios, view, flip));
163
- }
164
- })
165
- .catch(() => { });
166
- }
167
- callback(generatePatternImage(bitmap, view, flip));
168
- }
169
- ios.createUIImageFromURI = createUIImageFromURI;
170
- function generateShadowLayerPaths(view, bounds) {
171
- const background = view.style.backgroundInternal;
172
- const nativeView = view.nativeViewProtected;
173
- const layer = nativeView.layer;
174
- const boxShadow = background.getBoxShadow();
175
- const spreadRadius = layout.toDeviceIndependentPixels(boxShadow.spreadRadius);
176
- const { width, height } = bounds.size;
177
- let innerPath, shadowPath;
178
- // Generate more detailed paths if view has border radius
179
- if (background.hasBorderRadius()) {
180
- if (background.hasUniformBorder()) {
181
- const cornerRadius = layer.cornerRadius;
182
- const cappedRadius = getBorderCapRadius(cornerRadius, width / 2, height / 2);
183
- const cappedOuterRadii = {
184
- topLeft: cappedRadius,
185
- topRight: cappedRadius,
186
- bottomLeft: cappedRadius,
187
- bottomRight: cappedRadius,
188
- };
189
- const cappedOuterRadiiWithSpread = {
190
- topLeft: cappedRadius + spreadRadius,
191
- topRight: cappedRadius + spreadRadius,
192
- bottomLeft: cappedRadius + spreadRadius,
193
- bottomRight: cappedRadius + spreadRadius,
194
- };
195
- innerPath = generateNonUniformBorderOuterClipPath(bounds, cappedOuterRadii);
196
- shadowPath = generateNonUniformBorderOuterClipPath(bounds, cappedOuterRadiiWithSpread, spreadRadius);
197
- }
198
- else {
199
- const outerTopLeftRadius = layout.toDeviceIndependentPixels(background.borderTopLeftRadius);
200
- const outerTopRightRadius = layout.toDeviceIndependentPixels(background.borderTopRightRadius);
201
- const outerBottomRightRadius = layout.toDeviceIndependentPixels(background.borderBottomRightRadius);
202
- const outerBottomLeftRadius = layout.toDeviceIndependentPixels(background.borderBottomLeftRadius);
203
- const topRadii = outerTopLeftRadius + outerTopRightRadius;
204
- const rightRadii = outerTopRightRadius + outerBottomRightRadius;
205
- const bottomRadii = outerBottomRightRadius + outerBottomLeftRadius;
206
- const leftRadii = outerBottomLeftRadius + outerTopLeftRadius;
207
- const cappedOuterRadii = {
208
- topLeft: getBorderCapRadius(outerTopLeftRadius, (outerTopLeftRadius / topRadii) * width, (outerTopLeftRadius / leftRadii) * height),
209
- topRight: getBorderCapRadius(outerTopRightRadius, (outerTopRightRadius / topRadii) * width, (outerTopRightRadius / rightRadii) * height),
210
- bottomLeft: getBorderCapRadius(outerBottomLeftRadius, (outerBottomLeftRadius / bottomRadii) * width, (outerBottomLeftRadius / leftRadii) * height),
211
- bottomRight: getBorderCapRadius(outerBottomRightRadius, (outerBottomRightRadius / bottomRadii) * width, (outerBottomRightRadius / rightRadii) * height),
212
- };
213
- // Add spread radius to corners that actually have radius as shadow has grown larger
214
- // than view itself and needs to be rounded accordingly
215
- const cappedOuterRadiiWithSpread = {
216
- topLeft: cappedOuterRadii.topLeft > 0 ? cappedOuterRadii.topLeft + spreadRadius : cappedOuterRadii.topLeft,
217
- topRight: cappedOuterRadii.topRight > 0 ? cappedOuterRadii.topRight + spreadRadius : cappedOuterRadii.topRight,
218
- bottomLeft: cappedOuterRadii.bottomLeft > 0 ? cappedOuterRadii.bottomLeft + spreadRadius : cappedOuterRadii.bottomLeft,
219
- bottomRight: cappedOuterRadii.bottomRight > 0 ? cappedOuterRadii.bottomRight + spreadRadius : cappedOuterRadii.bottomRight,
220
- };
221
- innerPath = generateNonUniformBorderOuterClipPath(bounds, cappedOuterRadii);
222
- shadowPath = generateNonUniformBorderOuterClipPath(bounds, cappedOuterRadiiWithSpread, spreadRadius);
223
- }
224
- }
225
- else {
226
- innerPath = CGPathCreateWithRect(bounds, null);
227
- shadowPath = CGPathCreateWithRect(CGRectInset(bounds, -spreadRadius, -spreadRadius), null);
228
- }
229
- return {
230
- maskPath: generateShadowMaskPath(bounds, boxShadow, innerPath),
231
- shadowPath,
232
- };
233
- }
234
- ios.generateShadowLayerPaths = generateShadowLayerPaths;
235
- function generateClipPath(view, bounds) {
236
- const background = view.style.backgroundInternal;
237
- const { origin, size } = bounds;
238
- const position = {
239
- left: origin.x,
240
- top: origin.y,
241
- bottom: size.height,
242
- right: size.width,
243
- };
244
- if (position.right === 0 || position.bottom === 0) {
245
- return;
246
- }
247
- let path;
248
- const clipPath = background.clipPath;
249
- if (clipPath instanceof ClipPathFunction) {
250
- switch (clipPath.shape) {
251
- case 'rect':
252
- path = rectPath(clipPath.rule, position);
253
- break;
254
- case 'inset':
255
- path = insetPath(clipPath.rule, position);
256
- break;
257
- case 'circle':
258
- path = circlePath(clipPath.rule, position);
259
- break;
260
- case 'ellipse':
261
- path = ellipsePath(clipPath.rule, position);
262
- break;
263
- case 'polygon':
264
- path = polygonPath(clipPath.rule, position);
265
- break;
266
- }
267
- }
268
- else {
269
- path = null;
270
- }
271
- return path;
272
- }
273
- ios.generateClipPath = generateClipPath;
274
- function getUniformBorderRadius(view, bounds) {
275
- const background = view.style.backgroundInternal;
276
- const { width, height } = bounds.size;
277
- const cornerRadius = layout.toDeviceIndependentPixels(background.getUniformBorderRadius());
278
- return Math.min(Math.min(width / 2, height / 2), cornerRadius);
279
- }
280
- ios.getUniformBorderRadius = getUniformBorderRadius;
281
- function generateNonUniformBorderInnerClipRoundedPath(view, bounds) {
282
- const background = view.style.backgroundInternal;
283
- const cappedOuterRadii = calculateNonUniformBorderCappedRadii(bounds, background);
284
- return generateNonUniformBorderInnerClipPath(bounds, background, cappedOuterRadii);
285
- }
286
- ios.generateNonUniformBorderInnerClipRoundedPath = generateNonUniformBorderInnerClipRoundedPath;
287
- function generateNonUniformBorderOuterClipRoundedPath(view, bounds) {
288
- const background = view.style.backgroundInternal;
289
- const cappedOuterRadii = calculateNonUniformBorderCappedRadii(bounds, background);
290
- return generateNonUniformBorderOuterClipPath(bounds, cappedOuterRadii);
291
- }
292
- ios.generateNonUniformBorderOuterClipRoundedPath = generateNonUniformBorderOuterClipRoundedPath;
293
- function generateNonUniformMultiColorBorderRoundedPaths(view, bounds) {
294
- const background = view.style.backgroundInternal;
295
- return generateNonUniformMultiColorBorderPaths(bounds, background);
296
- }
297
- ios.generateNonUniformMultiColorBorderRoundedPaths = generateNonUniformMultiColorBorderRoundedPaths;
298
- })(ios || (ios = {}));
299
- function maskLayerIfNeeded(nativeView, background) {
300
- const layer = nativeView.layer;
301
- // Check if layer should be masked
302
- if (!(layer.mask instanceof CAShapeLayer)) {
303
- // Since layers can only accept up to a single mask at a time, clip path is given more priority
304
- if (background.clipPath) {
305
- nativeView.maskType = iosViewUtils.LayerMask.CLIP_PATH;
306
- }
307
- else if (!background.hasUniformBorder() && background.hasBorderRadius()) {
308
- nativeView.maskType = iosViewUtils.LayerMask.BORDER;
309
- }
310
- else {
311
- nativeView.maskType = null;
312
- }
313
- if (nativeView.maskType != null) {
314
- nativeView.originalMask = layer.mask;
315
- layer.mask = CAShapeLayer.new();
316
- }
317
- }
318
- }
319
- function clearLayerMask(nativeView) {
320
- if (nativeView.outerShadowContainerLayer) {
321
- nativeView.outerShadowContainerLayer.mask = null;
322
- }
323
- nativeView.layer.mask = nativeView.originalMask;
324
- nativeView.originalMask = null;
325
- nativeView.maskType = null;
326
- }
327
- function onBackgroundViewScroll(args) {
328
- const view = args.object;
329
- const nativeView = view.nativeViewProtected;
330
- if (nativeView instanceof UIScrollView) {
331
- adjustLayersForScrollView(nativeView);
332
- }
333
- }
334
- function adjustLayersForScrollView(nativeView) {
335
- // Compensates with transition for the background layers for scrolling in ScrollView based controls.
336
- CATransaction.begin();
337
- CATransaction.setDisableActions(true);
338
- const offset = nativeView.contentOffset;
339
- const transform = {
340
- a: 1,
341
- b: 0,
342
- c: 0,
343
- d: 1,
344
- tx: offset.x,
345
- ty: offset.y,
346
- };
347
- if (nativeView.layer.mask) {
348
- nativeView.layer.mask.setAffineTransform(transform);
349
- }
350
- // Nested layers
351
- if (nativeView.gradientLayer) {
352
- nativeView.gradientLayer.setAffineTransform(transform);
353
- }
354
- if (nativeView.borderLayer) {
355
- nativeView.borderLayer.setAffineTransform(transform);
356
- }
357
- if (nativeView.outerShadowContainerLayer) {
358
- // Update bounds of shadow layer as it belongs to parent view
359
- nativeView.outerShadowContainerLayer.bounds = nativeView.bounds;
360
- nativeView.outerShadowContainerLayer.setAffineTransform(transform);
361
- }
362
- CATransaction.setDisableActions(false);
363
- CATransaction.commit();
364
- }
365
- function unregisterAdjustLayersOnScrollListener(view) {
366
- if (view.nativeViewProtected instanceof UIScrollView) {
367
- view.off('scroll', onBackgroundViewScroll);
368
- }
369
- }
370
- function registerAdjustLayersOnScrollListener(view) {
371
- if (view.nativeViewProtected instanceof UIScrollView) {
372
- view.off('scroll', onBackgroundViewScroll);
373
- view.on('scroll', onBackgroundViewScroll);
374
- adjustLayersForScrollView(view.nativeViewProtected);
375
- }
376
- }
377
- function clearNonUniformColorBorders(nativeView) {
378
- if (nativeView.borderLayer) {
379
- nativeView.borderLayer.mask = null;
380
- nativeView.borderLayer.sublayers = null;
381
- }
382
- nativeView.hasNonUniformBorderColor = false;
383
- }
384
- function clearNonUniformBorders(nativeView) {
385
- if (nativeView.borderLayer) {
386
- nativeView.borderLayer.removeFromSuperlayer();
387
- nativeView.borderLayer = null;
388
- }
389
- nativeView.hasNonUniformBorder = false;
390
- }
391
- function parsePosition(pos) {
392
- const values = cssParse(pos);
393
- if (values.length === 2) {
394
- // @ts-ignore
395
- return { x: values[0], y: values[1] };
396
- }
397
- if (values.length === 1) {
398
- const center = { type: 'ident', string: 'center' };
399
- if (values[0].type === 'ident') {
400
- const val = values[0].string.toLocaleLowerCase();
401
- // If you only one keyword is specified, the other value is "center"
402
- if (val === 'left' || val === 'right') {
403
- return { x: values[0], y: center };
404
- }
405
- else if (val === 'top' || val === 'bottom') {
406
- return { x: center, y: values[0] };
407
- }
408
- else if (val === 'center') {
409
- return { x: center, y: center };
410
- }
411
- }
412
- else if (values[0].type === 'number') {
413
- return { x: values[0], y: center };
414
- }
415
- }
416
- return null;
417
- }
418
- function getDrawParams(image, background, width, height) {
419
- if (!image) {
420
- return null;
421
- }
422
- const res = {
423
- repeatX: true,
424
- repeatY: true,
425
- posX: 0,
426
- posY: 0,
427
- };
428
- // repeat
429
- if (background.repeat) {
430
- switch (background.repeat.toLowerCase()) {
431
- case 'no-repeat':
432
- res.repeatX = false;
433
- res.repeatY = false;
434
- break;
435
- case 'repeat-x':
436
- res.repeatY = false;
437
- break;
438
- case 'repeat-y':
439
- res.repeatX = false;
440
- break;
441
- }
442
- }
443
- const imageSize = image.size;
444
- let imageWidth = imageSize.width;
445
- let imageHeight = imageSize.height;
446
- // size
447
- const size = background.size;
448
- if (size) {
449
- const values = cssParse(size);
450
- if (values.length === 2) {
451
- const vx = values[0];
452
- const vy = values[1];
453
- if (vx.unit === '%' && vy.unit === '%') {
454
- imageWidth = (width * vx.value) / 100;
455
- imageHeight = (height * vy.value) / 100;
456
- res.sizeX = imageWidth;
457
- res.sizeY = imageHeight;
458
- }
459
- else if (vx.type === 'number' && vy.type === 'number' && ((vx.unit === 'px' && vy.unit === 'px') || (vx.unit === '' && vy.unit === ''))) {
460
- imageWidth = vx.value;
461
- imageHeight = vy.value;
462
- res.sizeX = imageWidth;
463
- res.sizeY = imageHeight;
464
- }
465
- }
466
- else if (values.length === 1 && values[0].type === 'ident') {
467
- let scale = 0;
468
- if (values[0].string === 'cover') {
469
- scale = Math.max(width / imageWidth, height / imageHeight);
470
- }
471
- else if (values[0].string === 'contain') {
472
- scale = Math.min(width / imageWidth, height / imageHeight);
473
- }
474
- if (scale > 0) {
475
- imageWidth *= scale;
476
- imageHeight *= scale;
477
- res.sizeX = imageWidth;
478
- res.sizeY = imageHeight;
479
- }
480
- }
481
- }
482
- // position
483
- const position = background.position;
484
- if (position) {
485
- const v = parsePosition(position);
486
- if (v) {
487
- const spaceX = width - imageWidth;
488
- const spaceY = height - imageHeight;
489
- if (v.x.unit === '%' && v.y.unit === '%') {
490
- res.posX = (spaceX * v.x.value) / 100;
491
- res.posY = (spaceY * v.y.value) / 100;
492
- }
493
- else if (v.x.type === 'number' && v.y.type === 'number' && ((v.x.unit === 'px' && v.y.unit === 'px') || (v.x.unit === '' && v.y.unit === ''))) {
494
- res.posX = v.x.value;
495
- res.posY = v.y.value;
496
- }
497
- else if (v.x.type === 'ident' && v.y.type === 'ident') {
498
- if (v.x.string.toLowerCase() === 'center') {
499
- res.posX = spaceX / 2;
500
- }
501
- else if (v.x.string.toLowerCase() === 'right') {
502
- res.posX = spaceX;
503
- }
504
- if (v.y.string.toLowerCase() === 'center') {
505
- res.posY = spaceY / 2;
506
- }
507
- else if (v.y.string.toLowerCase() === 'bottom') {
508
- res.posY = spaceY;
509
- }
510
- }
511
- else if (v.x.type === 'number' && v.y.type === 'ident') {
512
- if (v.x.unit === '%') {
513
- res.posX = (spaceX * v.x.value) / 100;
514
- }
515
- else if (v.x.unit === 'px' || v.x.unit === '') {
516
- res.posX = v.x.value;
517
- }
518
- if (v.y.string.toLowerCase() === 'center') {
519
- res.posY = spaceY / 2;
520
- }
521
- else if (v.y.string.toLowerCase() === 'bottom') {
522
- res.posY = spaceY;
523
- }
524
- }
525
- }
526
- }
527
- return res;
528
- }
529
- function generatePatternImage(img, view, flip) {
530
- const background = view.style.backgroundInternal;
531
- const nativeView = view.nativeViewProtected;
532
- if (!img || !nativeView) {
533
- return null;
534
- }
535
- const frame = nativeView.frame;
536
- const boundsWidth = view.scaleX ? frame.size.width / view.scaleX : frame.size.width;
537
- const boundsHeight = view.scaleY ? frame.size.height / view.scaleY : frame.size.height;
538
- const params = getDrawParams(img, background, boundsWidth, boundsHeight);
539
- if (params.sizeX > 0 && params.sizeY > 0) {
540
- const resizeRect = CGRectMake(0, 0, params.sizeX, params.sizeY);
541
- UIGraphicsBeginImageContextWithOptions(resizeRect.size, false, 0.0);
542
- img.drawInRect(resizeRect);
543
- img = UIGraphicsGetImageFromCurrentImageContext();
544
- UIGraphicsEndImageContext();
545
- }
546
- UIGraphicsBeginImageContextWithOptions(CGSizeFromString(`{${boundsWidth},${boundsHeight}}`), false, 0.0);
547
- const context = UIGraphicsGetCurrentContext();
548
- if (background.color && background.color.ios) {
549
- CGContextSetFillColorWithColor(context, background.color.ios.CGColor);
550
- CGContextFillRect(context, CGRectMake(0, 0, boundsWidth, boundsHeight));
551
- }
552
- if (!params.repeatX && !params.repeatY) {
553
- img.drawAtPoint(CGPointMake(params.posX, params.posY));
554
- }
555
- else {
556
- const w = params.repeatX ? boundsWidth : img.size.width;
557
- const h = params.repeatY ? boundsHeight : img.size.height;
558
- CGContextSetPatternPhase(context, CGSizeMake(params.posX, params.posY));
559
- params.posX = params.repeatX ? 0 : params.posX;
560
- params.posY = params.repeatY ? 0 : params.posY;
561
- const patternRect = CGRectMake(params.posX, params.posY, w, h);
562
- img.drawAsPatternInRect(patternRect);
563
- }
564
- const bgImage = UIGraphicsGetImageFromCurrentImageContext();
565
- UIGraphicsEndImageContext();
566
- return flip ? _flipImage(bgImage) : bgImage;
567
- }
568
- // Flipping the default coordinate system
569
- // https://developer.apple.com/library/ios/documentation/2DDrawing/Conceptual/DrawingPrintingiOS/GraphicsDrawingOverview/GraphicsDrawingOverview.html
570
- function _flipImage(originalImage) {
571
- UIGraphicsBeginImageContextWithOptions(originalImage.size, false, 0.0);
572
- const context = UIGraphicsGetCurrentContext();
573
- CGContextSaveGState(context);
574
- CGContextTranslateCTM(context, 0.0, originalImage.size.height);
575
- CGContextScaleCTM(context, 1.0, -1.0);
576
- originalImage.drawInRect(CGRectMake(0, 0, originalImage.size.width, originalImage.size.height));
577
- CGContextRestoreGState(context);
578
- const flippedImage = UIGraphicsGetImageFromCurrentImageContext();
579
- UIGraphicsEndImageContext();
580
- return flippedImage;
581
- }
582
- function cssValueToDeviceIndependentPixels(source, total) {
583
- source = source.trim();
584
- if (source.indexOf('px') !== -1) {
585
- return layout.toDeviceIndependentPixels(parseFloat(source.replace('px', '')));
586
- }
587
- else if (source.indexOf('%') !== -1 && total > 0) {
588
- return (parseFloat(source.replace('%', '')) / 100) * total;
589
- }
590
- else {
591
- return parseFloat(source);
592
- }
593
- }
594
- function getBorderCapRadius(a, b, c) {
595
- return a && Math.min(a, Math.min(b, c));
596
- }
597
- function calculateNonUniformBorderCappedRadii(bounds, background) {
598
- const { width, height } = bounds.size;
599
- const { x, y } = bounds.origin;
600
- const outerTopLeftRadius = layout.toDeviceIndependentPixels(background.borderTopLeftRadius);
601
- const outerTopRightRadius = layout.toDeviceIndependentPixels(background.borderTopRightRadius);
602
- const outerBottomRightRadius = layout.toDeviceIndependentPixels(background.borderBottomRightRadius);
603
- const outerBottomLeftRadius = layout.toDeviceIndependentPixels(background.borderBottomLeftRadius);
604
- const topRadii = outerTopLeftRadius + outerTopRightRadius;
605
- const rightRadii = outerTopRightRadius + outerBottomRightRadius;
606
- const bottomRadii = outerBottomRightRadius + outerBottomLeftRadius;
607
- const leftRadii = outerBottomLeftRadius + outerTopLeftRadius;
608
- const cappedOuterRadii = {
609
- topLeft: getBorderCapRadius(outerTopLeftRadius, (outerTopLeftRadius / topRadii) * width, (outerTopLeftRadius / leftRadii) * height),
610
- topRight: getBorderCapRadius(outerTopRightRadius, (outerTopRightRadius / topRadii) * width, (outerTopRightRadius / rightRadii) * height),
611
- bottomLeft: getBorderCapRadius(outerBottomLeftRadius, (outerBottomLeftRadius / bottomRadii) * width, (outerBottomLeftRadius / leftRadii) * height),
612
- bottomRight: getBorderCapRadius(outerBottomRightRadius, (outerBottomRightRadius / bottomRadii) * width, (outerBottomRightRadius / rightRadii) * height),
613
- };
614
- return cappedOuterRadii;
615
- }
616
- function drawNonUniformBorders(nativeView, background) {
617
- const layer = nativeView.layer;
618
- const layerBounds = layer.bounds;
619
- layer.borderColor = null;
620
- layer.borderWidth = 0;
621
- layer.cornerRadius = 0;
622
- const cappedOuterRadii = calculateNonUniformBorderCappedRadii(layerBounds, background);
623
- if (nativeView.maskType === iosViewUtils.LayerMask.BORDER && layer.mask instanceof CAShapeLayer) {
624
- layer.mask.path = generateNonUniformBorderOuterClipPath(layerBounds, cappedOuterRadii);
625
- }
626
- if (background.hasBorderWidth()) {
627
- if (!nativeView.hasNonUniformBorder) {
628
- nativeView.borderLayer = CAShapeLayer.new();
629
- nativeView.borderLayer.fillRule = kCAFillRuleEvenOdd;
630
- layer.addSublayer(nativeView.borderLayer);
631
- nativeView.hasNonUniformBorder = true;
632
- }
633
- if (background.hasUniformBorderColor()) {
634
- // Use anti-aliasing or borders will draw incorrectly at times
635
- nativeView.borderLayer.shouldRasterize = true;
636
- nativeView.borderLayer.rasterizationScale = Screen.mainScreen.scale;
637
- nativeView.borderLayer.fillColor = background.borderTopColor?.ios?.CGColor || UIColor.blackColor.CGColor;
638
- nativeView.borderLayer.path = generateNonUniformBorderInnerClipPath(layerBounds, background, cappedOuterRadii);
639
- }
640
- else {
641
- // Non-uniform borders need more layers in order to display multiple colors at the same time
642
- let borderTopLayer, borderRightLayer, borderBottomLayer, borderLeftLayer;
643
- if (!nativeView.hasNonUniformBorderColor) {
644
- const maskLayer = CAShapeLayer.new();
645
- maskLayer.fillRule = kCAFillRuleEvenOdd;
646
- // Use anti-aliasing or borders will draw incorrectly at times
647
- maskLayer.shouldRasterize = true;
648
- maskLayer.rasterizationScale = Screen.mainScreen.scale;
649
- nativeView.borderLayer.mask = maskLayer;
650
- borderTopLayer = CAShapeLayer.new();
651
- borderRightLayer = CAShapeLayer.new();
652
- borderBottomLayer = CAShapeLayer.new();
653
- borderLeftLayer = CAShapeLayer.new();
654
- nativeView.borderLayer.addSublayer(borderTopLayer);
655
- nativeView.borderLayer.addSublayer(borderRightLayer);
656
- nativeView.borderLayer.addSublayer(borderBottomLayer);
657
- nativeView.borderLayer.addSublayer(borderLeftLayer);
658
- nativeView.hasNonUniformBorderColor = true;
659
- }
660
- else {
661
- borderTopLayer = nativeView.borderLayer.sublayers[0];
662
- borderRightLayer = nativeView.borderLayer.sublayers[1];
663
- borderBottomLayer = nativeView.borderLayer.sublayers[2];
664
- borderLeftLayer = nativeView.borderLayer.sublayers[3];
665
- }
666
- const paths = generateNonUniformMultiColorBorderPaths(layerBounds, background);
667
- borderTopLayer.fillColor = background.borderTopColor?.ios?.CGColor || UIColor.blackColor.CGColor;
668
- borderTopLayer.path = paths[0];
669
- borderRightLayer.fillColor = background.borderRightColor?.ios?.CGColor || UIColor.blackColor.CGColor;
670
- borderRightLayer.path = paths[1];
671
- borderBottomLayer.fillColor = background.borderBottomColor?.ios?.CGColor || UIColor.blackColor.CGColor;
672
- borderBottomLayer.path = paths[2];
673
- borderLeftLayer.fillColor = background.borderLeftColor?.ios?.CGColor || UIColor.blackColor.CGColor;
674
- borderLeftLayer.path = paths[3];
675
- // Clip inner area to create borders
676
- if (nativeView.borderLayer.mask instanceof CAShapeLayer) {
677
- nativeView.borderLayer.mask.path = generateNonUniformBorderInnerClipPath(layerBounds, background, cappedOuterRadii);
678
- }
679
- }
680
- }
681
- }
682
- function calculateInnerBorderClipRadius(radius, insetX, insetY) {
683
- const innerXRadius = Math.max(0, radius - insetX);
684
- const innerYRadius = Math.max(0, radius - insetY);
685
- const innerMaxRadius = Math.max(innerXRadius, innerYRadius);
686
- return {
687
- xRadius: innerXRadius,
688
- yRadius: innerYRadius,
689
- maxRadius: innerMaxRadius,
690
- };
691
- }
692
- /**
693
- * Generates a path that represents the rounded view area.
694
- *
695
- * @param bounds
696
- * @param cappedRadii
697
- * @param offset
698
- * @returns
699
- */
700
- function generateNonUniformBorderOuterClipPath(bounds, cappedRadii, offset = 0) {
701
- const { width, height } = bounds.size;
702
- const { x, y } = bounds.origin;
703
- const left = x - offset;
704
- const top = y - offset;
705
- const right = x + width + offset;
706
- const bottom = y + height + offset;
707
- const clipPath = CGPathCreateMutable();
708
- CGPathMoveToPoint(clipPath, null, left + cappedRadii.topLeft, top);
709
- CGPathAddArcToPoint(clipPath, null, right, top, right, top + cappedRadii.topRight, cappedRadii.topRight);
710
- CGPathAddArcToPoint(clipPath, null, right, bottom, right - cappedRadii.bottomRight, bottom, cappedRadii.bottomRight);
711
- CGPathAddArcToPoint(clipPath, null, left, bottom, left, bottom - cappedRadii.bottomLeft, cappedRadii.bottomLeft);
712
- CGPathAddArcToPoint(clipPath, null, left, top, left + cappedRadii.topLeft, top, cappedRadii.topLeft);
713
- CGPathCloseSubpath(clipPath);
714
- return clipPath;
715
- }
716
- /**
717
- * Generates a path that represents the area inside borders.
718
- *
719
- * @param bounds
720
- * @param background
721
- * @param cappedOuterRadii
722
- * @returns
723
- */
724
- function generateNonUniformBorderInnerClipPath(bounds, background, cappedOuterRadii) {
725
- const { width, height } = bounds.size;
726
- const { x, y } = bounds.origin;
727
- const position = {
728
- left: x,
729
- top: y,
730
- bottom: y + height,
731
- right: x + width,
732
- };
733
- const borderTopWidth = Math.max(0, layout.toDeviceIndependentPixels(background.borderTopWidth));
734
- const borderRightWidth = Math.max(0, layout.toDeviceIndependentPixels(background.borderRightWidth));
735
- const borderBottomWidth = Math.max(0, layout.toDeviceIndependentPixels(background.borderBottomWidth));
736
- const borderLeftWidth = Math.max(0, layout.toDeviceIndependentPixels(background.borderLeftWidth));
737
- const borderVWidth = borderTopWidth + borderBottomWidth;
738
- const borderHWidth = borderLeftWidth + borderRightWidth;
739
- const cappedBorderTopWidth = borderTopWidth && borderTopWidth * Math.min(1, height / borderVWidth);
740
- const cappedBorderRightWidth = borderRightWidth && borderRightWidth * Math.min(1, width / borderHWidth);
741
- const cappedBorderBottomWidth = borderBottomWidth && borderBottomWidth * Math.min(1, height / borderVWidth);
742
- const cappedBorderLeftWidth = borderLeftWidth && borderLeftWidth * Math.min(1, width / borderHWidth);
743
- const clipPath = CGPathCreateMutable();
744
- CGPathAddRect(clipPath, null, CGRectMake(x, y, width, height));
745
- // Inner clip paths
746
- if (cappedBorderTopWidth > 0 || cappedBorderLeftWidth > 0) {
747
- CGPathMoveToPoint(clipPath, null, position.left + cappedOuterRadii.topLeft, position.top + cappedBorderTopWidth);
748
- }
749
- else {
750
- CGPathMoveToPoint(clipPath, null, position.left, position.top);
751
- }
752
- if (cappedBorderTopWidth > 0 || cappedBorderRightWidth > 0) {
753
- const { xRadius, yRadius, maxRadius } = calculateInnerBorderClipRadius(cappedOuterRadii.topRight, cappedBorderRightWidth, cappedBorderTopWidth);
754
- const innerTopRightTransform = CGAffineTransformMake(maxRadius && xRadius / maxRadius, 0, 0, maxRadius && yRadius / maxRadius, position.right - cappedBorderRightWidth - xRadius, position.top + cappedBorderTopWidth + yRadius);
755
- CGPathAddArc(clipPath, innerTopRightTransform, 0, 0, maxRadius, (Math.PI * 3) / 2, 0, false);
756
- }
757
- else {
758
- CGPathAddLineToPoint(clipPath, null, position.right, position.top);
759
- }
760
- if (cappedBorderBottomWidth > 0 || cappedBorderRightWidth > 0) {
761
- const { xRadius, yRadius, maxRadius } = calculateInnerBorderClipRadius(cappedOuterRadii.bottomRight, cappedBorderRightWidth, cappedBorderBottomWidth);
762
- const innerBottomRightTransform = CGAffineTransformMake(maxRadius && xRadius / maxRadius, 0, 0, maxRadius && yRadius / maxRadius, position.right - cappedBorderRightWidth - xRadius, position.bottom - cappedBorderBottomWidth - yRadius);
763
- CGPathAddArc(clipPath, innerBottomRightTransform, 0, 0, maxRadius, 0, Math.PI / 2, false);
764
- }
765
- else {
766
- CGPathAddLineToPoint(clipPath, null, position.right, position.bottom);
767
- }
768
- if (cappedBorderBottomWidth > 0 || cappedBorderLeftWidth > 0) {
769
- const { xRadius, yRadius, maxRadius } = calculateInnerBorderClipRadius(cappedOuterRadii.bottomLeft, cappedBorderLeftWidth, cappedBorderBottomWidth);
770
- const innerBottomLeftTransform = CGAffineTransformMake(maxRadius && xRadius / maxRadius, 0, 0, maxRadius && yRadius / maxRadius, position.left + cappedBorderLeftWidth + xRadius, position.bottom - cappedBorderBottomWidth - yRadius);
771
- CGPathAddArc(clipPath, innerBottomLeftTransform, 0, 0, maxRadius, Math.PI / 2, Math.PI, false);
772
- }
773
- else {
774
- CGPathAddLineToPoint(clipPath, null, position.left, position.bottom);
775
- }
776
- if (cappedBorderTopWidth > 0 || cappedBorderLeftWidth > 0) {
777
- const { xRadius, yRadius, maxRadius } = calculateInnerBorderClipRadius(cappedOuterRadii.topLeft, cappedBorderLeftWidth, cappedBorderTopWidth);
778
- const innerTopLeftTransform = CGAffineTransformMake(maxRadius && xRadius / maxRadius, 0, 0, maxRadius && yRadius / maxRadius, position.left + cappedBorderLeftWidth + xRadius, position.top + cappedBorderTopWidth + yRadius);
779
- CGPathAddArc(clipPath, innerTopLeftTransform, 0, 0, maxRadius, Math.PI, (Math.PI * 3) / 2, false);
780
- }
781
- else {
782
- CGPathAddLineToPoint(clipPath, null, position.left, position.top);
783
- }
784
- CGPathCloseSubpath(clipPath);
785
- return clipPath;
786
- }
787
- /**
788
- * Calculates the needed widths for creating triangular shapes for each border.
789
- * To achieve this, all border widths are scaled according to view bounds.
790
- *
791
- * @param bounds
792
- * @param background
793
- * @returns
794
- */
795
- function getBorderTriangleWidths(bounds, background) {
796
- const width = bounds.origin.x + bounds.size.width;
797
- const height = bounds.origin.y + bounds.size.height;
798
- const borderTopWidth = Math.max(0, layout.toDeviceIndependentPixels(background.borderTopWidth));
799
- const borderRightWidth = Math.max(0, layout.toDeviceIndependentPixels(background.borderRightWidth));
800
- const borderBottomWidth = Math.max(0, layout.toDeviceIndependentPixels(background.borderBottomWidth));
801
- const borderLeftWidth = Math.max(0, layout.toDeviceIndependentPixels(background.borderLeftWidth));
802
- const verticalBorderWidth = borderTopWidth + borderBottomWidth;
803
- const horizontalBorderWidth = borderLeftWidth + borderRightWidth;
804
- let verticalBorderMultiplier = verticalBorderWidth > 0 ? height / verticalBorderWidth : 0;
805
- let horizontalBorderMultiplier = horizontalBorderWidth > 0 ? width / horizontalBorderWidth : 0;
806
- // Both directions should consider each other in order to scale widths properly, as a view might have different width and height
807
- if (verticalBorderMultiplier > 0 && verticalBorderMultiplier < horizontalBorderMultiplier) {
808
- horizontalBorderMultiplier -= horizontalBorderMultiplier - verticalBorderMultiplier;
809
- }
810
- if (horizontalBorderMultiplier > 0 && horizontalBorderMultiplier < verticalBorderMultiplier) {
811
- verticalBorderMultiplier -= verticalBorderMultiplier - horizontalBorderMultiplier;
812
- }
813
- return {
814
- top: borderTopWidth * verticalBorderMultiplier,
815
- right: borderRightWidth * horizontalBorderMultiplier,
816
- bottom: borderBottomWidth * verticalBorderMultiplier,
817
- left: borderLeftWidth * horizontalBorderMultiplier,
818
- };
819
- }
820
- /**
821
- * Generates paths for visualizing borders with different colors per side.
822
- * This is achieved by extending all borders enough to consume entire view size,
823
- * then using an even-odd inner mask to clip and eventually render borders according to their corresponding width.
824
- *
825
- * @param bounds
826
- * @param background
827
- * @returns
828
- */
829
- function generateNonUniformMultiColorBorderPaths(bounds, background) {
830
- const { width, height } = bounds.size;
831
- const { x, y } = bounds.origin;
832
- const position = {
833
- left: x,
834
- top: y,
835
- bottom: y + height,
836
- right: x + width,
837
- };
838
- const borderWidths = getBorderTriangleWidths(bounds, background);
839
- const paths = new Array(4);
840
- const lto = {
841
- x: position.left,
842
- y: position.top,
843
- }; // left-top-outside
844
- const lti = {
845
- x: position.left + borderWidths.left,
846
- y: position.top + borderWidths.top,
847
- }; // left-top-inside
848
- const rto = {
849
- x: position.right,
850
- y: position.top,
851
- }; // right-top-outside
852
- const rti = {
853
- x: position.right - borderWidths.right,
854
- y: position.top + borderWidths.top,
855
- }; // right-top-inside
856
- const rbo = {
857
- x: position.right,
858
- y: position.bottom,
859
- }; // right-bottom-outside
860
- const rbi = {
861
- x: position.right - borderWidths.right,
862
- y: position.bottom - borderWidths.bottom,
863
- }; // right-bottom-inside
864
- const lbo = {
865
- x: position.left,
866
- y: position.bottom,
867
- }; // left-bottom-outside
868
- const lbi = {
869
- x: position.left + borderWidths.left,
870
- y: position.bottom - borderWidths.bottom,
871
- }; // left-bottom-inside
872
- const borderTopColor = background.borderTopColor;
873
- const borderRightColor = background.borderRightColor;
874
- const borderBottomColor = background.borderBottomColor;
875
- const borderLeftColor = background.borderLeftColor;
876
- if (borderWidths.top > 0 && borderTopColor?.ios) {
877
- const topBorderPath = CGPathCreateMutable();
878
- CGPathMoveToPoint(topBorderPath, null, lto.x, lto.y);
879
- CGPathAddLineToPoint(topBorderPath, null, rto.x, rto.y);
880
- CGPathAddLineToPoint(topBorderPath, null, rti.x, rti.y);
881
- if (rti.x !== lti.x) {
882
- CGPathAddLineToPoint(topBorderPath, null, lti.x, lti.y);
883
- }
884
- CGPathAddLineToPoint(topBorderPath, null, lto.x, lto.y);
885
- paths[0] = topBorderPath;
886
- }
887
- if (borderWidths.right > 0 && borderRightColor?.ios) {
888
- const rightBorderPath = CGPathCreateMutable();
889
- CGPathMoveToPoint(rightBorderPath, null, rto.x, rto.y);
890
- CGPathAddLineToPoint(rightBorderPath, null, rbo.x, rbo.y);
891
- CGPathAddLineToPoint(rightBorderPath, null, rbi.x, rbi.y);
892
- if (rbi.y !== rti.y) {
893
- CGPathAddLineToPoint(rightBorderPath, null, rti.x, rti.y);
894
- }
895
- CGPathAddLineToPoint(rightBorderPath, null, rto.x, rto.y);
896
- paths[1] = rightBorderPath;
897
- }
898
- if (borderWidths.bottom > 0 && borderBottomColor?.ios) {
899
- const bottomBorderPath = CGPathCreateMutable();
900
- CGPathMoveToPoint(bottomBorderPath, null, rbo.x, rbo.y);
901
- CGPathAddLineToPoint(bottomBorderPath, null, lbo.x, lbo.y);
902
- CGPathAddLineToPoint(bottomBorderPath, null, lbi.x, lbi.y);
903
- if (lbi.x !== rbi.x) {
904
- CGPathAddLineToPoint(bottomBorderPath, null, rbi.x, rbi.y);
905
- }
906
- CGPathAddLineToPoint(bottomBorderPath, null, rbo.x, rbo.y);
907
- paths[2] = bottomBorderPath;
908
- }
909
- if (borderWidths.left > 0 && borderLeftColor?.ios) {
910
- const leftBorderPath = CGPathCreateMutable();
911
- CGPathMoveToPoint(leftBorderPath, null, lbo.x, lbo.y);
912
- CGPathAddLineToPoint(leftBorderPath, null, lto.x, lto.y);
913
- CGPathAddLineToPoint(leftBorderPath, null, lti.x, lti.y);
914
- if (lti.y !== lbi.y) {
915
- CGPathAddLineToPoint(leftBorderPath, null, lbi.x, lbi.y);
916
- }
917
- CGPathAddLineToPoint(leftBorderPath, null, lbo.x, lbo.y);
918
- paths[3] = leftBorderPath;
919
- }
920
- return paths;
921
- }
922
- function drawBoxShadow(view) {
923
- const background = view.style.backgroundInternal;
924
- const nativeView = view.nativeViewProtected;
925
- const layer = nativeView.layer;
926
- // There is no parent to add shadow to
927
- if (!layer.superlayer) {
928
- return;
929
- }
930
- const bounds = nativeView.bounds;
931
- const boxShadow = background.getBoxShadow();
932
- // Initialize outer shadows
933
- let outerShadowContainerLayer;
934
- if (nativeView.outerShadowContainerLayer) {
935
- outerShadowContainerLayer = nativeView.outerShadowContainerLayer;
936
- }
937
- else {
938
- outerShadowContainerLayer = CALayer.new();
939
- // TODO: Make this dynamic when views get support for multiple shadows
940
- const shadowLayer = CALayer.new();
941
- // This mask is necessary to maintain transparent background
942
- const maskLayer = CAShapeLayer.new();
943
- maskLayer.fillRule = kCAFillRuleEvenOdd;
944
- shadowLayer.mask = maskLayer;
945
- outerShadowContainerLayer.addSublayer(shadowLayer);
946
- // Instead of nesting it, add shadow container layer underneath view so that it's not affected by border masking
947
- layer.superlayer.insertSublayerBelow(outerShadowContainerLayer, layer);
948
- nativeView.outerShadowContainerLayer = outerShadowContainerLayer;
949
- }
950
- // Apply clip path to shadow
951
- if (nativeView.maskType === iosViewUtils.LayerMask.CLIP_PATH && layer.mask instanceof CAShapeLayer) {
952
- if (!outerShadowContainerLayer.mask) {
953
- outerShadowContainerLayer.mask = CAShapeLayer.new();
954
- }
955
- if (outerShadowContainerLayer.mask instanceof CAShapeLayer) {
956
- outerShadowContainerLayer.mask.path = layer.mask.path;
957
- }
958
- }
959
- outerShadowContainerLayer.bounds = bounds;
960
- outerShadowContainerLayer.transform = layer.transform;
961
- outerShadowContainerLayer.anchorPoint = layer.anchorPoint;
962
- outerShadowContainerLayer.position = nativeView.center;
963
- outerShadowContainerLayer.zPosition = layer.zPosition;
964
- // Inherit view visibility values
965
- outerShadowContainerLayer.opacity = layer.opacity;
966
- outerShadowContainerLayer.hidden = layer.hidden;
967
- const outerShadowLayers = outerShadowContainerLayer.sublayers;
968
- if (outerShadowLayers?.count) {
969
- for (let i = 0, count = outerShadowLayers.count; i < count; i++) {
970
- const shadowLayer = outerShadowLayers[i];
971
- const shadowRadius = layout.toDeviceIndependentPixels(boxShadow.blurRadius);
972
- const spreadRadius = layout.toDeviceIndependentPixels(boxShadow.spreadRadius);
973
- const offsetX = layout.toDeviceIndependentPixels(boxShadow.offsetX);
974
- const offsetY = layout.toDeviceIndependentPixels(boxShadow.offsetY);
975
- const { maskPath, shadowPath } = ios.generateShadowLayerPaths(view, bounds);
976
- shadowLayer.allowsEdgeAntialiasing = true;
977
- shadowLayer.contentsScale = Screen.mainScreen.scale;
978
- // Shadow opacity is handled on the shadow's color instance
979
- shadowLayer.shadowOpacity = boxShadow.color?.a ? boxShadow.color.a / 255 : 1;
980
- shadowLayer.shadowRadius = shadowRadius;
981
- shadowLayer.shadowColor = boxShadow.color?.ios?.CGColor;
982
- shadowLayer.shadowOffset = CGSizeMake(offsetX, offsetY);
983
- // Apply spread radius by expanding shadow layer bounds (this has a nice glow with radii set to 0)
984
- shadowLayer.shadowPath = shadowPath;
985
- // A mask that ensures that view maintains transparent background
986
- if (shadowLayer.mask instanceof CAShapeLayer) {
987
- shadowLayer.mask.path = maskPath;
988
- }
989
- }
990
- }
991
- }
992
- function clearBoxShadow(nativeView) {
993
- if (nativeView.outerShadowContainerLayer) {
994
- nativeView.outerShadowContainerLayer.removeFromSuperlayer();
995
- nativeView.outerShadowContainerLayer = null;
996
- }
997
- }
998
- /**
999
- * Creates a mask that ensures no shadow will be displayed underneath transparent backgrounds.
1000
- *
1001
- * @param bounds
1002
- * @param boxShadow
1003
- * @param bordersClipPath
1004
- * @returns
1005
- */
1006
- function generateShadowMaskPath(bounds, boxShadow, innerClipPath) {
1007
- const shadowRadius = layout.toDeviceIndependentPixels(boxShadow.blurRadius);
1008
- const spreadRadius = layout.toDeviceIndependentPixels(boxShadow.spreadRadius);
1009
- const offsetX = layout.toDeviceIndependentPixels(boxShadow.offsetX);
1010
- const offsetY = layout.toDeviceIndependentPixels(boxShadow.offsetY);
1011
- // This value has to be large enough to avoid clipping shadow halo effect
1012
- const outerRectRadius = shadowRadius * 3 + spreadRadius;
1013
- const maskPath = CGPathCreateMutable();
1014
- // Proper clip position and size
1015
- const outerRect = CGRectOffset(CGRectInset(bounds, -outerRectRadius, -outerRectRadius), offsetX, offsetY);
1016
- CGPathAddPath(maskPath, null, innerClipPath);
1017
- CGPathAddRect(maskPath, null, outerRect);
1018
- return maskPath;
1019
- }
1020
- function rectPath(value, position) {
1021
- const arr = value.split(/[\s]+/);
1022
- const top = cssValueToDeviceIndependentPixels(arr[0], position.top);
1023
- const right = cssValueToDeviceIndependentPixels(arr[1], position.right);
1024
- const bottom = cssValueToDeviceIndependentPixels(arr[2], position.bottom);
1025
- const left = cssValueToDeviceIndependentPixels(arr[3], position.left);
1026
- return UIBezierPath.bezierPathWithRect(CGRectMake(left, top, right - left, bottom - top)).CGPath;
1027
- }
1028
- function insetPath(value, position) {
1029
- const arr = value.split(/[\s]+/);
1030
- let topString;
1031
- let rightString;
1032
- let bottomString;
1033
- let leftString;
1034
- if (arr.length === 1) {
1035
- topString = rightString = bottomString = leftString = arr[0];
1036
- }
1037
- else if (arr.length === 2) {
1038
- topString = bottomString = arr[0];
1039
- rightString = leftString = arr[1];
1040
- }
1041
- else if (arr.length === 3) {
1042
- topString = arr[0];
1043
- rightString = leftString = arr[1];
1044
- bottomString = arr[2];
1045
- }
1046
- else if (arr.length === 4) {
1047
- topString = arr[0];
1048
- rightString = arr[1];
1049
- bottomString = arr[2];
1050
- leftString = arr[3];
1051
- }
1052
- const top = cssValueToDeviceIndependentPixels(topString, position.bottom);
1053
- const right = cssValueToDeviceIndependentPixels('100%', position.right) - cssValueToDeviceIndependentPixels(rightString, position.right);
1054
- const bottom = cssValueToDeviceIndependentPixels('100%', position.bottom) - cssValueToDeviceIndependentPixels(bottomString, position.bottom);
1055
- const left = cssValueToDeviceIndependentPixels(leftString, position.right);
1056
- return UIBezierPath.bezierPathWithRect(CGRectMake(left, top, right - left, bottom - top)).CGPath;
1057
- }
1058
- function circlePath(value, position) {
1059
- const arr = value.split(/[\s]+/);
1060
- const radius = cssValueToDeviceIndependentPixels(arr[0], (position.right > position.bottom ? position.bottom : position.right) / 2);
1061
- const y = cssValueToDeviceIndependentPixels(arr[2], position.bottom);
1062
- const x = cssValueToDeviceIndependentPixels(arr[3], position.right);
1063
- return UIBezierPath.bezierPathWithArcCenterRadiusStartAngleEndAngleClockwise(CGPointMake(x, y), radius, 0, 360, true).CGPath;
1064
- }
1065
- function ellipsePath(value, position) {
1066
- const arr = value.split(/[\s]+/);
1067
- const rX = cssValueToDeviceIndependentPixels(arr[0], position.right);
1068
- const rY = cssValueToDeviceIndependentPixels(arr[1], position.bottom);
1069
- const cX = cssValueToDeviceIndependentPixels(arr[3], position.right);
1070
- const cY = cssValueToDeviceIndependentPixels(arr[4], position.bottom);
1071
- const left = cX - rX;
1072
- const top = cY - rY;
1073
- const width = rX * 2;
1074
- const height = rY * 2;
1075
- return UIBezierPath.bezierPathWithOvalInRect(CGRectMake(left, top, width, height)).CGPath;
1076
- }
1077
- function polygonPath(value, position) {
1078
- const path = CGPathCreateMutable();
1079
- let firstPoint;
1080
- const arr = value.split(/[,]+/);
1081
- for (let i = 0; i < arr.length; i++) {
1082
- const xy = arr[i].trim().split(/[\s]+/);
1083
- const point = {
1084
- x: cssValueToDeviceIndependentPixels(xy[0], position.right),
1085
- y: cssValueToDeviceIndependentPixels(xy[1], position.bottom),
1086
- };
1087
- if (!firstPoint) {
1088
- firstPoint = point;
1089
- CGPathMoveToPoint(path, null, point.x, point.y);
1090
- }
1091
- CGPathAddLineToPoint(path, null, point.x, point.y);
1092
- }
1093
- CGPathAddLineToPoint(path, null, firstPoint.x, firstPoint.y);
1094
- return path;
1095
- }
1096
- //# sourceMappingURL=background.ios.js.map