@nativescript/core 9.0.9 → 9.0.10

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 (1054) hide show
  1. package/LICENSE +19 -0
  2. package/abortcontroller/abortsignal.d.ts +23 -0
  3. package/abortcontroller/abortsignal.js +57 -0
  4. package/abortcontroller/abortsignal.js.map +1 -0
  5. package/abortcontroller/index.d.ts +20 -0
  6. package/abortcontroller/index.js +52 -0
  7. package/abortcontroller/index.js.map +1 -0
  8. package/accessibility/accessibility-common.d.ts +282 -0
  9. package/accessibility/accessibility-common.js +416 -0
  10. package/accessibility/accessibility-common.js.map +1 -0
  11. package/accessibility/accessibility-properties.d.ts +24 -0
  12. package/accessibility/accessibility-properties.js +118 -0
  13. package/accessibility/accessibility-properties.js.map +1 -0
  14. package/accessibility/index.d.ts +1 -0
  15. package/accessibility/index.js +2 -0
  16. package/accessibility/index.js.map +1 -0
  17. package/animation-frame/animation-native.android.d.ts +1 -0
  18. package/animation-frame/animation-native.android.js +4 -0
  19. package/animation-frame/animation-native.android.js.map +1 -0
  20. package/animation-frame/animation-native.ios.d.ts +1 -0
  21. package/animation-frame/animation-native.ios.js +3 -0
  22. package/animation-frame/animation-native.ios.js.map +1 -0
  23. package/animation-frame/index.js +81 -0
  24. package/animation-frame/index.js.map +1 -0
  25. package/application/application-common.d.ts +247 -0
  26. package/application/application-common.js +578 -0
  27. package/application/application-common.js.map +1 -0
  28. package/application/application-interfaces.d.ts +220 -0
  29. package/application/application-interfaces.js +2 -0
  30. package/application/application-interfaces.js.map +1 -0
  31. package/application/application-shims.d.ts +378 -0
  32. package/application/application-shims.js +380 -0
  33. package/application/application-shims.js.map +1 -0
  34. package/application/application.android.d.ts +81 -0
  35. package/application/application.android.js +1233 -0
  36. package/application/application.android.js.map +1 -0
  37. package/application/application.ios.d.ts +145 -0
  38. package/application/application.ios.js +1481 -0
  39. package/application/application.ios.js.map +1 -0
  40. package/application/helpers-common.d.ts +50 -0
  41. package/application/helpers-common.js +153 -0
  42. package/application/helpers-common.js.map +1 -0
  43. package/application/helpers.android.d.ts +8 -0
  44. package/application/helpers.android.js +119 -0
  45. package/application/helpers.android.js.map +1 -0
  46. package/application/helpers.ios.d.ts +8 -0
  47. package/application/helpers.ios.js +24 -0
  48. package/application/helpers.ios.js.map +1 -0
  49. package/application/index.android.d.ts +2 -0
  50. package/application/index.android.js +3 -0
  51. package/application/index.android.js.map +1 -0
  52. package/application/index.ios.d.ts +2 -0
  53. package/application/index.ios.js +3 -0
  54. package/application/index.ios.js.map +1 -0
  55. package/application-settings/application-settings-common.d.ts +2 -0
  56. package/application-settings/application-settings-common.js +15 -0
  57. package/application-settings/application-settings-common.js.map +1 -0
  58. package/application-settings/index.android.d.ts +11 -0
  59. package/application-settings/index.android.js +124 -0
  60. package/application-settings/index.android.js.map +1 -0
  61. package/application-settings/index.ios.d.ts +11 -0
  62. package/application-settings/index.ios.js +81 -0
  63. package/application-settings/index.ios.js.map +1 -0
  64. package/bundle-entry-points.d.ts +1 -0
  65. package/bundle-entry-points.js +47 -0
  66. package/bundle-entry-points.js.map +1 -0
  67. package/color/color-common.d.ts +136 -0
  68. package/color/color-common.js +341 -0
  69. package/color/color-common.js.map +1 -0
  70. package/color/color-types.d.ts +49 -0
  71. package/color/color-types.js +3 -0
  72. package/color/color-types.js.map +1 -0
  73. package/color/color-utils.d.ts +38 -0
  74. package/color/color-utils.js +213 -0
  75. package/color/color-utils.js.map +1 -0
  76. package/color/index.android.d.ts +4 -0
  77. package/color/index.android.js +7 -0
  78. package/color/index.android.js.map +1 -0
  79. package/color/index.ios.d.ts +7 -0
  80. package/color/index.ios.js +19 -0
  81. package/color/index.ios.js.map +1 -0
  82. package/color/known-colors.d.ts +144 -0
  83. package/color/known-colors.js +165 -0
  84. package/color/known-colors.js.map +1 -0
  85. package/config/config.interface.d.ts +275 -0
  86. package/config/config.interface.js +2 -0
  87. package/config/config.interface.js.map +1 -0
  88. package/config/index.d.ts +1 -0
  89. package/config/index.js +2 -0
  90. package/config/index.js.map +1 -0
  91. package/connectivity/index.android.d.ts +11 -0
  92. package/connectivity/index.android.js +157 -0
  93. package/connectivity/index.android.js.map +1 -0
  94. package/connectivity/index.ios.d.ts +11 -0
  95. package/connectivity/index.ios.js +132 -0
  96. package/connectivity/index.ios.js.map +1 -0
  97. package/console/index.d.ts +14 -0
  98. package/console/index.js +33 -0
  99. package/console/index.js.map +1 -0
  100. package/core-types/animation-types.d.ts +11 -0
  101. package/core-types/animation-types.js +13 -0
  102. package/core-types/animation-types.js.map +1 -0
  103. package/core-types/index.d.ts +345 -0
  104. package/core-types/index.js +290 -0
  105. package/core-types/index.js.map +1 -0
  106. package/core-types/validators.d.ts +2 -0
  107. package/core-types/validators.js +27 -0
  108. package/core-types/validators.js.map +1 -0
  109. package/css/CSS3Parser.d.ts +184 -0
  110. package/css/CSS3Parser.js +534 -0
  111. package/css/CSS3Parser.js.map +1 -0
  112. package/css/CSSNativeScript.d.ts +14 -0
  113. package/css/CSSNativeScript.js +113 -0
  114. package/css/CSSNativeScript.js.map +1 -0
  115. package/css/css-tree-parser.d.ts +1 -0
  116. package/css/css-tree-parser.js +133 -0
  117. package/css/css-tree-parser.js.map +1 -0
  118. package/css/lib/parse/index.d.ts +1 -0
  119. package/css/lib/parse/index.js +500 -0
  120. package/css/lib/parse/index.js.map +1 -0
  121. package/css/parser.d.ts +70 -0
  122. package/css/parser.js +517 -0
  123. package/css/parser.js.map +1 -0
  124. package/css/reworkcss.d.ts +44 -0
  125. package/css/reworkcss.js +5 -0
  126. package/css/reworkcss.js.map +1 -0
  127. package/css/system-classes.d.ts +12 -0
  128. package/css/system-classes.js +47 -0
  129. package/css/system-classes.js.map +1 -0
  130. package/css-mediaquery/index.d.ts +27 -0
  131. package/css-mediaquery/index.js +118 -0
  132. package/css-mediaquery/index.js.map +1 -0
  133. package/css-value/reworkcss-value.d.ts +31 -0
  134. package/css-value/reworkcss-value.js +91 -0
  135. package/css-value/reworkcss-value.js.map +1 -0
  136. package/data/observable/index.d.ts +213 -0
  137. package/data/observable/index.js +452 -0
  138. package/data/observable/index.js.map +1 -0
  139. package/data/observable-array/index.d.ts +215 -0
  140. package/data/observable-array/index.js +325 -0
  141. package/data/observable-array/index.js.map +1 -0
  142. package/data/virtual-array/index.d.ts +72 -0
  143. package/data/virtual-array/index.js +133 -0
  144. package/data/virtual-array/index.js.map +1 -0
  145. package/debugger/InspectorBackendCommands.d.ts +1056 -0
  146. package/debugger/InspectorBackendCommands.js +578 -0
  147. package/debugger/InspectorBackendCommands.js.map +1 -0
  148. package/debugger/devtools-elements-interfaces.d.ts +16 -0
  149. package/debugger/devtools-elements-interfaces.js +2 -0
  150. package/debugger/devtools-elements-interfaces.js.map +1 -0
  151. package/debugger/devtools-elements.common.d.ts +7 -0
  152. package/debugger/devtools-elements.common.js +93 -0
  153. package/debugger/devtools-elements.common.js.map +1 -0
  154. package/debugger/devtools-elements.js +20 -0
  155. package/debugger/devtools-elements.js.map +1 -0
  156. package/debugger/dom-types.d.ts +24 -0
  157. package/debugger/dom-types.js +152 -0
  158. package/debugger/dom-types.js.map +1 -0
  159. package/debugger/index.d.ts +87 -0
  160. package/debugger/index.js +118 -0
  161. package/debugger/index.js.map +1 -0
  162. package/debugger/webinspector-css.d.ts +34 -0
  163. package/debugger/webinspector-css.js +72 -0
  164. package/debugger/webinspector-css.js.map +1 -0
  165. package/debugger/webinspector-dom.d.ts +33 -0
  166. package/debugger/webinspector-dom.js +75 -0
  167. package/debugger/webinspector-dom.js.map +1 -0
  168. package/debugger/webinspector-network.android.d.ts +79 -0
  169. package/debugger/webinspector-network.android.js +208 -0
  170. package/debugger/webinspector-network.android.js.map +1 -0
  171. package/debugger/webinspector-network.ios.d.ts +79 -0
  172. package/debugger/webinspector-network.ios.js +204 -0
  173. package/debugger/webinspector-network.ios.js.map +1 -0
  174. package/fetch/index.d.ts +72 -0
  175. package/fetch/index.js +529 -0
  176. package/fetch/index.js.map +1 -0
  177. package/file-system/file-system-access.android.d.ts +151 -0
  178. package/file-system/file-system-access.android.js +1162 -0
  179. package/file-system/file-system-access.android.js.map +1 -0
  180. package/file-system/file-system-access.ios.d.ts +85 -0
  181. package/file-system/file-system-access.ios.js +622 -0
  182. package/file-system/file-system-access.ios.js.map +1 -0
  183. package/file-system/index.js +873 -0
  184. package/file-system/index.js.map +1 -0
  185. package/fps-meter/fps-native.android.d.ts +11 -0
  186. package/fps-meter/fps-native.android.js +62 -0
  187. package/fps-meter/fps-native.android.js.map +1 -0
  188. package/fps-meter/fps-native.ios.d.ts +10 -0
  189. package/fps-meter/fps-native.ios.js +56 -0
  190. package/fps-meter/fps-native.ios.js.map +1 -0
  191. package/fps-meter/index.js +77 -0
  192. package/fps-meter/index.js.map +1 -0
  193. package/globals/global-utils.d.ts +27 -0
  194. package/globals/global-utils.js +67 -0
  195. package/globals/global-utils.js.map +1 -0
  196. package/globals/index.d.ts +3 -0
  197. package/globals/index.js +313 -0
  198. package/globals/index.js.map +1 -0
  199. package/http/http-interfaces.d.ts +84 -0
  200. package/http/http-interfaces.js +6 -0
  201. package/http/http-interfaces.js.map +1 -0
  202. package/http/http-request/http-request-common.d.ts +1 -0
  203. package/http/http-request/http-request-common.js +15 -0
  204. package/http/http-request/http-request-common.js.map +1 -0
  205. package/http/http-request/index.android.d.ts +3 -0
  206. package/http/http-request/index.android.js +274 -0
  207. package/http/http-request/index.android.js.map +1 -0
  208. package/http/http-request/index.ios.d.ts +3 -0
  209. package/http/http-request/index.ios.js +221 -0
  210. package/http/http-request/index.ios.js.map +1 -0
  211. package/http/http-shared.d.ts +3 -0
  212. package/http/http-shared.js +2 -0
  213. package/http/http-shared.js.map +1 -0
  214. package/http/index.js +70 -0
  215. package/http/index.js.map +1 -0
  216. package/image-asset/image-asset-common.d.ts +25 -0
  217. package/image-asset/image-asset-common.js +74 -0
  218. package/image-asset/image-asset-common.js.map +1 -0
  219. package/image-asset/index.android.d.ts +9 -0
  220. package/image-asset/index.android.js +33 -0
  221. package/image-asset/index.android.js.map +1 -0
  222. package/image-asset/index.ios.d.ts +10 -0
  223. package/image-asset/index.ios.js +57 -0
  224. package/image-asset/index.ios.js.map +1 -0
  225. package/image-source/image-source-common.d.ts +4 -0
  226. package/image-source/image-source-common.js +21 -0
  227. package/image-source/image-source-common.js.map +1 -0
  228. package/image-source/index.android.d.ts +58 -0
  229. package/image-source/index.android.js +371 -0
  230. package/image-source/index.android.js.map +1 -0
  231. package/image-source/index.ios.d.ts +59 -0
  232. package/image-source/index.ios.js +454 -0
  233. package/image-source/index.ios.js.map +1 -0
  234. package/index.js +38 -0
  235. package/index.js.map +1 -0
  236. package/inspector_modules.d.ts +7 -0
  237. package/inspector_modules.js +233 -0
  238. package/inspector_modules.js.map +1 -0
  239. package/matrix/index.js +45 -0
  240. package/matrix/index.js.map +1 -0
  241. package/media-query-list/index.d.ts +21 -0
  242. package/media-query-list/index.js +159 -0
  243. package/media-query-list/index.js.map +1 -0
  244. package/module-name-resolver/helpers.d.ts +14 -0
  245. package/module-name-resolver/helpers.js +27 -0
  246. package/module-name-resolver/helpers.js.map +1 -0
  247. package/module-name-resolver/index.d.ts +14 -0
  248. package/module-name-resolver/index.js +67 -0
  249. package/module-name-resolver/index.js.map +1 -0
  250. package/module-name-resolver/non-bundle-workflow-compat.d.ts +6 -0
  251. package/module-name-resolver/non-bundle-workflow-compat.js +128 -0
  252. package/module-name-resolver/non-bundle-workflow-compat.js.map +1 -0
  253. package/module-name-resolver/qualifier-matcher/index.d.ts +11 -0
  254. package/module-name-resolver/qualifier-matcher/index.js +141 -0
  255. package/module-name-resolver/qualifier-matcher/index.js.map +1 -0
  256. package/package.json +86 -86
  257. package/platform/common.d.ts +10 -0
  258. package/platform/common.js +14 -0
  259. package/platform/common.js.map +1 -0
  260. package/platform/device/index.android.d.ts +20 -0
  261. package/platform/device/index.android.js +78 -0
  262. package/platform/device/index.android.js.map +1 -0
  263. package/platform/device/index.ios.d.ts +19 -0
  264. package/platform/device/index.ios.js +69 -0
  265. package/platform/device/index.ios.js.map +1 -0
  266. package/platform/index.js +4 -0
  267. package/platform/index.js.map +1 -0
  268. package/platform/screen/index.android.d.ts +16 -0
  269. package/platform/screen/index.android.js +41 -0
  270. package/platform/screen/index.android.js.map +1 -0
  271. package/platform/screen/index.ios.d.ts +15 -0
  272. package/platform/screen/index.ios.js +35 -0
  273. package/platform/screen/index.ios.js.map +1 -0
  274. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Headers/NSCCrypto.h +79 -0
  275. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Headers/NSCWinterTC.h +20 -0
  276. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Headers/NSString+WinterTC.h +21 -0
  277. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Modules/module.modulemap +6 -0
  278. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Resources/Info.plist +52 -0
  279. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Versions/Current/Headers/NSCCrypto.h +79 -0
  280. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Versions/Current/Headers/NSCWinterTC.h +20 -0
  281. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Versions/Current/Headers/NSString+WinterTC.h +21 -0
  282. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Versions/Current/Modules/module.modulemap +6 -0
  283. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Versions/Current/NSCWinterTC +0 -0
  284. package/platforms/ios/NSCWinterTC.xcframework/ios-arm64_x86_64-maccatalyst/NSCWinterTC.framework/Versions/Current/Resources/Info.plist +52 -0
  285. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/NSCCrypto.h +60 -0
  286. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/NSData+Async.h +24 -0
  287. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/NSFileHandle+Async.h +22 -0
  288. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/NSString+Async.h +25 -0
  289. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/TNSLabel.h +16 -0
  290. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/TNSProcess.h +29 -0
  291. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/TNSWidgets.h +25 -0
  292. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/UIImage+TNSBlocks.h +26 -0
  293. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Headers/UIView+PassThroughParent.h +17 -0
  294. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Modules/module.modulemap +6 -0
  295. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/PrivateHeaders/NSObject+Swizzling.h +17 -0
  296. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/PrivateHeaders/UIView+PropertyBag.h +18 -0
  297. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Resources/Info.plist +52 -0
  298. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/NSCCrypto.h +60 -0
  299. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/NSData+Async.h +24 -0
  300. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/NSFileHandle+Async.h +22 -0
  301. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/NSString+Async.h +25 -0
  302. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/TNSLabel.h +16 -0
  303. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/TNSProcess.h +29 -0
  304. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/TNSWidgets.h +25 -0
  305. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/UIImage+TNSBlocks.h +26 -0
  306. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Headers/UIView+PassThroughParent.h +17 -0
  307. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Modules/module.modulemap +6 -0
  308. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/PrivateHeaders/NSObject+Swizzling.h +17 -0
  309. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/PrivateHeaders/UIView+PropertyBag.h +18 -0
  310. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/Resources/Info.plist +52 -0
  311. package/platforms/ios/TNSWidgets.xcframework/ios-arm64_x86_64-maccatalyst/TNSWidgets.framework/Versions/Current/TNSWidgets +0 -0
  312. package/profiling/index.js +273 -0
  313. package/profiling/index.js.map +1 -0
  314. package/text/formatted-string.js +2 -0
  315. package/text/formatted-string.js.map +1 -0
  316. package/text/index.android.d.ts +9 -0
  317. package/text/index.android.js +11 -0
  318. package/text/index.android.js.map +1 -0
  319. package/text/index.ios.d.ts +9 -0
  320. package/text/index.ios.js +11 -0
  321. package/text/index.ios.js.map +1 -0
  322. package/text/span.js +2 -0
  323. package/text/span.js.map +1 -0
  324. package/text/text-common.d.ts +12 -0
  325. package/text/text-common.js +111 -0
  326. package/text/text-common.js.map +1 -0
  327. package/timer/index.android.d.ts +4 -0
  328. package/timer/index.android.js +83 -0
  329. package/timer/index.android.js.map +1 -0
  330. package/timer/index.ios.d.ts +4 -0
  331. package/timer/index.ios.js +68 -0
  332. package/timer/index.ios.js.map +1 -0
  333. package/trace/index.js +255 -0
  334. package/trace/index.js.map +1 -0
  335. package/ui/action-bar/action-bar-common.d.ts +85 -0
  336. package/ui/action-bar/action-bar-common.js +381 -0
  337. package/ui/action-bar/action-bar-common.js.map +1 -0
  338. package/ui/action-bar/index.android.d.ts +55 -0
  339. package/ui/action-bar/index.android.js +502 -0
  340. package/ui/action-bar/index.android.js.map +1 -0
  341. package/ui/action-bar/index.ios.d.ts +64 -0
  342. package/ui/action-bar/index.ios.js +614 -0
  343. package/ui/action-bar/index.ios.js.map +1 -0
  344. package/ui/activity-indicator/activity-indicator-common.d.ts +9 -0
  345. package/ui/activity-indicator/activity-indicator-common.js +22 -0
  346. package/ui/activity-indicator/activity-indicator-common.js.map +1 -0
  347. package/ui/activity-indicator/index.android.d.ts +15 -0
  348. package/ui/activity-indicator/index.android.js +54 -0
  349. package/ui/activity-indicator/index.android.js.map +1 -0
  350. package/ui/activity-indicator/index.ios.d.ts +16 -0
  351. package/ui/activity-indicator/index.ios.js +54 -0
  352. package/ui/activity-indicator/index.ios.js.map +1 -0
  353. package/ui/animation/animation-common.d.ts +30 -0
  354. package/ui/animation/animation-common.js +239 -0
  355. package/ui/animation/animation-common.js.map +1 -0
  356. package/ui/animation/animation-shared.d.ts +84 -0
  357. package/ui/animation/animation-shared.js +4 -0
  358. package/ui/animation/animation-shared.js.map +1 -0
  359. package/ui/animation/animation-types.d.ts +1 -0
  360. package/ui/animation/animation-types.js +3 -0
  361. package/ui/animation/animation-types.js.map +1 -0
  362. package/ui/animation/index.android.d.ts +23 -0
  363. package/ui/animation/index.android.js +432 -0
  364. package/ui/animation/index.android.js.map +1 -0
  365. package/ui/animation/index.ios.d.ts +28 -0
  366. package/ui/animation/index.ios.js +808 -0
  367. package/ui/animation/index.ios.js.map +1 -0
  368. package/ui/animation/keyframe-animation.d.ts +76 -0
  369. package/ui/animation/keyframe-animation.js +238 -0
  370. package/ui/animation/keyframe-animation.js.map +1 -0
  371. package/ui/builder/binding-builder.d.ts +13 -0
  372. package/ui/builder/binding-builder.js +171 -0
  373. package/ui/builder/binding-builder.js.map +1 -0
  374. package/ui/builder/component-builder/index.d.ts +7 -0
  375. package/ui/builder/component-builder/index.js +219 -0
  376. package/ui/builder/component-builder/index.js.map +1 -0
  377. package/ui/builder/index.d.ts +193 -0
  378. package/ui/builder/index.js +643 -0
  379. package/ui/builder/index.js.map +1 -0
  380. package/ui/button/button-common.d.ts +9 -0
  381. package/ui/button/button-common.js +26 -0
  382. package/ui/button/button-common.js.map +1 -0
  383. package/ui/button/index.android.d.ts +29 -0
  384. package/ui/button/index.android.js +166 -0
  385. package/ui/button/index.android.js.map +1 -0
  386. package/ui/button/index.ios.d.ts +37 -0
  387. package/ui/button/index.ios.js +316 -0
  388. package/ui/button/index.ios.js.map +1 -0
  389. package/ui/content-view/index.js +87 -0
  390. package/ui/content-view/index.js.map +1 -0
  391. package/ui/core/bindable/bindable-expressions.d.ts +7 -0
  392. package/ui/core/bindable/bindable-expressions.js +255 -0
  393. package/ui/core/bindable/bindable-expressions.js.map +1 -0
  394. package/ui/core/bindable/bindable-resources.d.ts +2 -0
  395. package/ui/core/bindable/bindable-resources.js +8 -0
  396. package/ui/core/bindable/bindable-resources.js.map +1 -0
  397. package/ui/core/bindable/bindable-types.d.ts +37 -0
  398. package/ui/core/bindable/bindable-types.js +3 -0
  399. package/ui/core/bindable/bindable-types.js.map +1 -0
  400. package/ui/core/bindable/index.d.ts +53 -0
  401. package/ui/core/bindable/index.js +555 -0
  402. package/ui/core/bindable/index.js.map +1 -0
  403. package/ui/core/control-state-change/index.android.d.ts +6 -0
  404. package/ui/core/control-state-change/index.android.js +8 -0
  405. package/ui/core/control-state-change/index.android.js.map +1 -0
  406. package/ui/core/control-state-change/index.ios.d.ts +10 -0
  407. package/ui/core/control-state-change/index.ios.js +43 -0
  408. package/ui/core/control-state-change/index.ios.js.map +1 -0
  409. package/ui/core/properties/index.d.ts +114 -0
  410. package/ui/core/properties/index.js +1290 -0
  411. package/ui/core/properties/index.js.map +1 -0
  412. package/ui/core/properties/property-shared.d.ts +35 -0
  413. package/ui/core/properties/property-shared.js +16 -0
  414. package/ui/core/properties/property-shared.js.map +1 -0
  415. package/ui/core/view/index.android.d.ts +144 -0
  416. package/ui/core/view/index.android.js +1576 -0
  417. package/ui/core/view/index.android.js.map +1 -0
  418. package/ui/core/view/index.ios.d.ts +151 -0
  419. package/ui/core/view/index.ios.js +1091 -0
  420. package/ui/core/view/index.ios.js.map +1 -0
  421. package/ui/core/view/view-common.d.ts +349 -0
  422. package/ui/core/view/view-common.js +1147 -0
  423. package/ui/core/view/view-common.js.map +1 -0
  424. package/ui/core/view/view-helper/index.android.d.ts +9 -0
  425. package/ui/core/view/view-helper/index.android.js +56 -0
  426. package/ui/core/view/view-helper/index.android.js.map +1 -0
  427. package/ui/core/view/view-helper/index.ios.d.ts +67 -0
  428. package/ui/core/view/view-helper/index.ios.js +414 -0
  429. package/ui/core/view/view-helper/index.ios.js.map +1 -0
  430. package/ui/core/view/view-helper/view-helper-common.d.ts +11 -0
  431. package/ui/core/view/view-helper/view-helper-common.js +166 -0
  432. package/ui/core/view/view-helper/view-helper-common.js.map +1 -0
  433. package/ui/core/view/view-helper/view-helper-shared.d.ts +5 -0
  434. package/ui/core/view/view-helper/view-helper-shared.js +6 -0
  435. package/ui/core/view/view-helper/view-helper-shared.js.map +1 -0
  436. package/ui/core/view/view-interfaces.d.ts +76 -0
  437. package/ui/core/view/view-interfaces.js +2 -0
  438. package/ui/core/view/view-interfaces.js.map +1 -0
  439. package/ui/core/view-base/index.d.ts +597 -0
  440. package/ui/core/view-base/index.js +1154 -0
  441. package/ui/core/view-base/index.js.map +1 -0
  442. package/ui/core/view-base/utils.d.ts +1 -0
  443. package/ui/core/view-base/utils.js +9 -0
  444. package/ui/core/view-base/utils.js.map +1 -0
  445. package/ui/core/weak-event-listener/index.js +123 -0
  446. package/ui/core/weak-event-listener/index.js.map +1 -0
  447. package/ui/date-picker/date-picker-common.d.ts +28 -0
  448. package/ui/date-picker/date-picker-common.js +82 -0
  449. package/ui/date-picker/date-picker-common.js.map +1 -0
  450. package/ui/date-picker/index.android.d.ts +19 -0
  451. package/ui/date-picker/index.android.js +131 -0
  452. package/ui/date-picker/index.android.js.map +1 -0
  453. package/ui/date-picker/index.ios.d.ts +27 -0
  454. package/ui/date-picker/index.ios.js +165 -0
  455. package/ui/date-picker/index.ios.js.map +1 -0
  456. package/ui/dialogs/dialogs-common.d.ts +211 -0
  457. package/ui/dialogs/dialogs-common.js +167 -0
  458. package/ui/dialogs/dialogs-common.js.map +1 -0
  459. package/ui/dialogs/index.android.d.ts +20 -0
  460. package/ui/dialogs/index.android.js +330 -0
  461. package/ui/dialogs/index.android.js.map +1 -0
  462. package/ui/dialogs/index.ios.d.ts +17 -0
  463. package/ui/dialogs/index.ios.js +293 -0
  464. package/ui/dialogs/index.ios.js.map +1 -0
  465. package/ui/editable-text-base/editable-text-base-common.d.ts +36 -0
  466. package/ui/editable-text-base/editable-text-base-common.js +91 -0
  467. package/ui/editable-text-base/editable-text-base-common.js.map +1 -0
  468. package/ui/editable-text-base/index.android.d.ts +48 -0
  469. package/ui/editable-text-base/index.android.js +497 -0
  470. package/ui/editable-text-base/index.android.js.map +1 -0
  471. package/ui/editable-text-base/index.ios.d.ts +20 -0
  472. package/ui/editable-text-base/index.ios.js +255 -0
  473. package/ui/editable-text-base/index.ios.js.map +1 -0
  474. package/ui/embedding/index.android.d.ts +4 -0
  475. package/ui/embedding/index.android.js +14 -0
  476. package/ui/embedding/index.android.js.map +1 -0
  477. package/ui/embedding/index.ios.d.ts +1 -0
  478. package/ui/embedding/index.ios.js +4 -0
  479. package/ui/embedding/index.ios.js.map +1 -0
  480. package/ui/enums/enums.js +6 -0
  481. package/ui/enums/enums.js.map +1 -0
  482. package/ui/enums/index.js +6 -0
  483. package/ui/enums/index.js.map +1 -0
  484. package/ui/frame/activity.android.d.ts +1 -0
  485. package/ui/frame/activity.android.js +110 -0
  486. package/ui/frame/activity.android.js.map +1 -0
  487. package/ui/frame/fragment.android.d.ts +3 -0
  488. package/ui/frame/fragment.android.js +90 -0
  489. package/ui/frame/fragment.android.js.map +1 -0
  490. package/ui/frame/fragment.ios.d.ts +3 -0
  491. package/ui/frame/fragment.ios.js +4 -0
  492. package/ui/frame/fragment.ios.js.map +1 -0
  493. package/ui/frame/fragment.transitions.android.d.ts +40 -0
  494. package/ui/frame/fragment.transitions.android.js +679 -0
  495. package/ui/frame/fragment.transitions.android.js.map +1 -0
  496. package/ui/frame/fragment.transitions.types.d.ts +6 -0
  497. package/ui/frame/fragment.transitions.types.js +2 -0
  498. package/ui/frame/fragment.transitions.types.js.map +1 -0
  499. package/ui/frame/frame-common.d.ts +101 -0
  500. package/ui/frame/frame-common.js +688 -0
  501. package/ui/frame/frame-common.js.map +1 -0
  502. package/ui/frame/frame-helper-for-android.d.ts +37 -0
  503. package/ui/frame/frame-helper-for-android.js +337 -0
  504. package/ui/frame/frame-helper-for-android.js.map +1 -0
  505. package/ui/frame/frame-helpers.d.ts +16 -0
  506. package/ui/frame/frame-helpers.js +19 -0
  507. package/ui/frame/frame-helpers.js.map +1 -0
  508. package/ui/frame/frame-interfaces.d.ts +130 -0
  509. package/ui/frame/frame-interfaces.js +7 -0
  510. package/ui/frame/frame-interfaces.js.map +1 -0
  511. package/ui/frame/frame-stack.d.ts +7 -0
  512. package/ui/frame/frame-stack.js +41 -0
  513. package/ui/frame/frame-stack.js.map +1 -0
  514. package/ui/frame/index.android.d.ts +93 -0
  515. package/ui/frame/index.android.js +977 -0
  516. package/ui/frame/index.android.js.map +1 -0
  517. package/ui/frame/index.ios.d.ts +61 -0
  518. package/ui/frame/index.ios.js +728 -0
  519. package/ui/frame/index.ios.js.map +1 -0
  520. package/ui/gestures/gestures-common.d.ts +32 -0
  521. package/ui/gestures/gestures-common.js +78 -0
  522. package/ui/gestures/gestures-common.js.map +1 -0
  523. package/ui/gestures/gestures-types.d.ts +108 -0
  524. package/ui/gestures/gestures-types.js +40 -0
  525. package/ui/gestures/gestures-types.js.map +1 -0
  526. package/ui/gestures/index.android.d.ts +49 -0
  527. package/ui/gestures/index.android.js +596 -0
  528. package/ui/gestures/index.android.js.map +1 -0
  529. package/ui/gestures/index.ios.d.ts +70 -0
  530. package/ui/gestures/index.ios.js +510 -0
  531. package/ui/gestures/index.ios.js.map +1 -0
  532. package/ui/gestures/touch-manager.d.ts +82 -0
  533. package/ui/gestures/touch-manager.js +268 -0
  534. package/ui/gestures/touch-manager.js.map +1 -0
  535. package/ui/html-view/html-view-common.d.ts +12 -0
  536. package/ui/html-view/html-view-common.js +31 -0
  537. package/ui/html-view/html-view-common.js.map +1 -0
  538. package/ui/html-view/index.android.d.ts +27 -0
  539. package/ui/html-view/index.android.js +90 -0
  540. package/ui/html-view/index.android.js.map +1 -0
  541. package/ui/html-view/index.ios.d.ts +22 -0
  542. package/ui/html-view/index.ios.js +101 -0
  543. package/ui/html-view/index.ios.js.map +1 -0
  544. package/ui/image/image-common.d.ts +45 -0
  545. package/ui/image/image-common.js +195 -0
  546. package/ui/image/image-common.js.map +1 -0
  547. package/ui/image/index.android.d.ts +23 -0
  548. package/ui/image/index.android.js +171 -0
  549. package/ui/image/index.android.js.map +1 -0
  550. package/ui/image/index.ios.d.ts +26 -0
  551. package/ui/image/index.ios.js +186 -0
  552. package/ui/image/index.ios.js.map +1 -0
  553. package/ui/image/symbol-effects-common.d.ts +36 -0
  554. package/ui/image/symbol-effects-common.js +35 -0
  555. package/ui/image/symbol-effects-common.js.map +1 -0
  556. package/ui/image/symbol-effects.android.d.ts +5 -0
  557. package/ui/image/symbol-effects.android.js +8 -0
  558. package/ui/image/symbol-effects.android.js.map +1 -0
  559. package/ui/image/symbol-effects.ios.d.ts +6 -0
  560. package/ui/image/symbol-effects.ios.js +79 -0
  561. package/ui/image/symbol-effects.ios.js.map +1 -0
  562. package/ui/image-cache/image-cache-common.d.ts +40 -0
  563. package/ui/image-cache/image-cache-common.js +176 -0
  564. package/ui/image-cache/image-cache-common.js.map +1 -0
  565. package/ui/image-cache/index.android.d.ts +11 -0
  566. package/ui/image-cache/index.android.js +74 -0
  567. package/ui/image-cache/index.android.js.map +1 -0
  568. package/ui/image-cache/index.ios.d.ts +11 -0
  569. package/ui/image-cache/index.ios.js +78 -0
  570. package/ui/image-cache/index.ios.js.map +1 -0
  571. package/ui/index.d.ts +92 -0
  572. package/ui/index.js +80 -0
  573. package/ui/index.js.map +1 -0
  574. package/ui/label/index.android.d.ts +13 -0
  575. package/ui/label/index.android.js +47 -0
  576. package/ui/label/index.android.js.map +1 -0
  577. package/ui/label/index.ios.d.ts +31 -0
  578. package/ui/label/index.ios.js +234 -0
  579. package/ui/label/index.ios.js.map +1 -0
  580. package/ui/layouts/absolute-layout/absolute-layout-common.d.ts +16 -0
  581. package/ui/layouts/absolute-layout/absolute-layout-common.js +72 -0
  582. package/ui/layouts/absolute-layout/absolute-layout-common.js.map +1 -0
  583. package/ui/layouts/absolute-layout/index.android.d.ts +6 -0
  584. package/ui/layouts/absolute-layout/index.android.js +26 -0
  585. package/ui/layouts/absolute-layout/index.android.js.map +1 -0
  586. package/ui/layouts/absolute-layout/index.ios.d.ts +10 -0
  587. package/ui/layouts/absolute-layout/index.ios.js +48 -0
  588. package/ui/layouts/absolute-layout/index.ios.js.map +1 -0
  589. package/ui/layouts/dock-layout/dock-layout-common.d.ts +14 -0
  590. package/ui/layouts/dock-layout/dock-layout-common.js +51 -0
  591. package/ui/layouts/dock-layout/dock-layout-common.js.map +1 -0
  592. package/ui/layouts/dock-layout/index.android.d.ts +8 -0
  593. package/ui/layouts/dock-layout/index.android.js +38 -0
  594. package/ui/layouts/dock-layout/index.android.js.map +1 -0
  595. package/ui/layouts/dock-layout/index.ios.d.ts +8 -0
  596. package/ui/layouts/dock-layout/index.ios.js +115 -0
  597. package/ui/layouts/dock-layout/index.ios.js.map +1 -0
  598. package/ui/layouts/flexbox-layout/flexbox-layout-common.d.ts +126 -0
  599. package/ui/layouts/flexbox-layout/flexbox-layout-common.js +403 -0
  600. package/ui/layouts/flexbox-layout/flexbox-layout-common.js.map +1 -0
  601. package/ui/layouts/flexbox-layout/index.android.d.ts +23 -0
  602. package/ui/layouts/flexbox-layout/index.android.js +152 -0
  603. package/ui/layouts/flexbox-layout/index.android.js.map +1 -0
  604. package/ui/layouts/flexbox-layout/index.ios.d.ts +44 -0
  605. package/ui/layouts/flexbox-layout/index.ios.js +1241 -0
  606. package/ui/layouts/flexbox-layout/index.ios.js.map +1 -0
  607. package/ui/layouts/grid-layout/grid-layout-common.d.ts +72 -0
  608. package/ui/layouts/grid-layout/grid-layout-common.js +358 -0
  609. package/ui/layouts/grid-layout/grid-layout-common.js.map +1 -0
  610. package/ui/layouts/grid-layout/index.android.d.ts +23 -0
  611. package/ui/layouts/grid-layout/index.android.js +122 -0
  612. package/ui/layouts/grid-layout/index.android.js.map +1 -0
  613. package/ui/layouts/grid-layout/index.ios.d.ts +28 -0
  614. package/ui/layouts/grid-layout/index.ios.js +778 -0
  615. package/ui/layouts/grid-layout/index.ios.js.map +1 -0
  616. package/ui/layouts/index.d.ts +12 -0
  617. package/ui/layouts/index.js +11 -0
  618. package/ui/layouts/index.js.map +1 -0
  619. package/ui/layouts/layout-base-common.d.ts +36 -0
  620. package/ui/layouts/layout-base-common.js +141 -0
  621. package/ui/layouts/layout-base-common.js.map +1 -0
  622. package/ui/layouts/layout-base.android.d.ts +17 -0
  623. package/ui/layouts/layout-base.android.js +50 -0
  624. package/ui/layouts/layout-base.android.js.map +1 -0
  625. package/ui/layouts/layout-base.ios.d.ts +13 -0
  626. package/ui/layouts/layout-base.ios.js +40 -0
  627. package/ui/layouts/layout-base.ios.js.map +1 -0
  628. package/ui/layouts/liquid-glass/index.android.d.ts +5 -0
  629. package/ui/layouts/liquid-glass/index.android.js +8 -0
  630. package/ui/layouts/liquid-glass/index.android.js.map +1 -0
  631. package/ui/layouts/liquid-glass/index.ios.d.ts +10 -0
  632. package/ui/layouts/liquid-glass/index.ios.js +59 -0
  633. package/ui/layouts/liquid-glass/index.ios.js.map +1 -0
  634. package/ui/layouts/liquid-glass/liquid-glass-common.d.ts +3 -0
  635. package/ui/layouts/liquid-glass/liquid-glass-common.js +4 -0
  636. package/ui/layouts/liquid-glass/liquid-glass-common.js.map +1 -0
  637. package/ui/layouts/liquid-glass-container/index.android.d.ts +3 -0
  638. package/ui/layouts/liquid-glass-container/index.android.js +4 -0
  639. package/ui/layouts/liquid-glass-container/index.android.js.map +1 -0
  640. package/ui/layouts/liquid-glass-container/index.ios.d.ts +14 -0
  641. package/ui/layouts/liquid-glass-container/index.ios.js +121 -0
  642. package/ui/layouts/liquid-glass-container/index.ios.js.map +1 -0
  643. package/ui/layouts/liquid-glass-container/liquid-glass-container-common.d.ts +4 -0
  644. package/ui/layouts/liquid-glass-container/liquid-glass-container-common.js +5 -0
  645. package/ui/layouts/liquid-glass-container/liquid-glass-container-common.js.map +1 -0
  646. package/ui/layouts/root-layout/index.android.d.ts +15 -0
  647. package/ui/layouts/root-layout/index.android.js +126 -0
  648. package/ui/layouts/root-layout/index.android.js.map +1 -0
  649. package/ui/layouts/root-layout/index.ios.d.ts +17 -0
  650. package/ui/layouts/root-layout/index.ios.js +101 -0
  651. package/ui/layouts/root-layout/index.ios.js.map +1 -0
  652. package/ui/layouts/root-layout/root-layout-common.d.ts +61 -0
  653. package/ui/layouts/root-layout/root-layout-common.js +425 -0
  654. package/ui/layouts/root-layout/root-layout-common.js.map +1 -0
  655. package/ui/layouts/root-layout/root-layout-stack.d.ts +5 -0
  656. package/ui/layouts/root-layout/root-layout-stack.js +19 -0
  657. package/ui/layouts/root-layout/root-layout-stack.js.map +1 -0
  658. package/ui/layouts/stack-layout/index.android.d.ts +7 -0
  659. package/ui/layouts/stack-layout/index.android.js +11 -0
  660. package/ui/layouts/stack-layout/index.android.js.map +1 -0
  661. package/ui/layouts/stack-layout/index.ios.d.ts +10 -0
  662. package/ui/layouts/stack-layout/index.ios.js +155 -0
  663. package/ui/layouts/stack-layout/index.ios.js.map +1 -0
  664. package/ui/layouts/stack-layout/stack-layout-common.d.ts +8 -0
  665. package/ui/layouts/stack-layout/stack-layout-common.js +19 -0
  666. package/ui/layouts/stack-layout/stack-layout-common.js.map +1 -0
  667. package/ui/layouts/wrap-layout/index.android.d.ts +10 -0
  668. package/ui/layouts/wrap-layout/index.android.js +18 -0
  669. package/ui/layouts/wrap-layout/index.android.js.map +1 -0
  670. package/ui/layouts/wrap-layout/index.ios.d.ts +8 -0
  671. package/ui/layouts/wrap-layout/index.ios.js +170 -0
  672. package/ui/layouts/wrap-layout/index.ios.js.map +1 -0
  673. package/ui/layouts/wrap-layout/wrap-layout-common.d.ts +15 -0
  674. package/ui/layouts/wrap-layout/wrap-layout-common.js +40 -0
  675. package/ui/layouts/wrap-layout/wrap-layout-common.js.map +1 -0
  676. package/ui/list-picker/index.android.d.ts +18 -0
  677. package/ui/list-picker/index.android.js +177 -0
  678. package/ui/list-picker/index.android.js.map +1 -0
  679. package/ui/list-picker/index.ios.d.ts +19 -0
  680. package/ui/list-picker/index.ios.js +99 -0
  681. package/ui/list-picker/index.ios.js.map +1 -0
  682. package/ui/list-picker/list-picker-common.d.ts +23 -0
  683. package/ui/list-picker/list-picker-common.js +78 -0
  684. package/ui/list-picker/list-picker-common.js.map +1 -0
  685. package/ui/list-view/index.android.d.ts +68 -0
  686. package/ui/list-view/index.android.js +1005 -0
  687. package/ui/list-view/index.android.js.map +1 -0
  688. package/ui/list-view/index.ios.d.ts +84 -0
  689. package/ui/list-view/index.ios.js +996 -0
  690. package/ui/list-view/index.ios.js.map +1 -0
  691. package/ui/list-view/list-view-common.d.ts +87 -0
  692. package/ui/list-view/list-view-common.js +296 -0
  693. package/ui/list-view/list-view-common.js.map +1 -0
  694. package/ui/page/events.d.ts +6 -0
  695. package/ui/page/events.js +7 -0
  696. package/ui/page/events.js.map +1 -0
  697. package/ui/page/index.android.d.ts +16 -0
  698. package/ui/page/index.android.js +106 -0
  699. package/ui/page/index.android.js.map +1 -0
  700. package/ui/page/index.ios.d.ts +52 -0
  701. package/ui/page/index.ios.js +515 -0
  702. package/ui/page/index.ios.js.map +1 -0
  703. package/ui/page/page-common.d.ts +73 -0
  704. package/ui/page/page-common.js +191 -0
  705. package/ui/page/page-common.js.map +1 -0
  706. package/ui/placeholder/index.android.d.ts +12 -0
  707. package/ui/placeholder/index.android.js +21 -0
  708. package/ui/placeholder/index.android.js.map +1 -0
  709. package/ui/placeholder/index.js +16 -0
  710. package/ui/placeholder/index.js.map +1 -0
  711. package/ui/placeholder/placeholder-common.d.ts +11 -0
  712. package/ui/placeholder/placeholder-common.js +2 -0
  713. package/ui/placeholder/placeholder-common.js.map +1 -0
  714. package/ui/progress/index.android.d.ts +18 -0
  715. package/ui/progress/index.android.js +65 -0
  716. package/ui/progress/index.android.js.map +1 -0
  717. package/ui/progress/index.ios.d.ts +19 -0
  718. package/ui/progress/index.ios.js +45 -0
  719. package/ui/progress/index.ios.js.map +1 -0
  720. package/ui/progress/progress-common.d.ts +15 -0
  721. package/ui/progress/progress-common.js +34 -0
  722. package/ui/progress/progress-common.js.map +1 -0
  723. package/ui/proxy-view-container/index.d.ts +33 -0
  724. package/ui/proxy-view-container/index.js +247 -0
  725. package/ui/proxy-view-container/index.js.map +1 -0
  726. package/ui/repeater/index.d.ts +67 -0
  727. package/ui/repeater/index.js +225 -0
  728. package/ui/repeater/index.js.map +1 -0
  729. package/ui/scroll-view/index.android.d.ts +27 -0
  730. package/ui/scroll-view/index.android.js +157 -0
  731. package/ui/scroll-view/index.android.js.map +1 -0
  732. package/ui/scroll-view/index.ios.d.ts +29 -0
  733. package/ui/scroll-view/index.ios.js +193 -0
  734. package/ui/scroll-view/index.ios.js.map +1 -0
  735. package/ui/scroll-view/scroll-view-common.d.ts +27 -0
  736. package/ui/scroll-view/scroll-view-common.js +93 -0
  737. package/ui/scroll-view/scroll-view-common.js.map +1 -0
  738. package/ui/search-bar/index.android.d.ts +44 -0
  739. package/ui/search-bar/index.android.js +260 -0
  740. package/ui/search-bar/index.android.js.map +1 -0
  741. package/ui/search-bar/index.ios.d.ts +36 -0
  742. package/ui/search-bar/index.ios.js +203 -0
  743. package/ui/search-bar/index.ios.js.map +1 -0
  744. package/ui/search-bar/search-bar-common.d.ts +19 -0
  745. package/ui/search-bar/search-bar-common.js +43 -0
  746. package/ui/search-bar/search-bar-common.js.map +1 -0
  747. package/ui/segmented-bar/index.android.d.ts +42 -0
  748. package/ui/segmented-bar/index.android.js +280 -0
  749. package/ui/segmented-bar/index.android.js.map +1 -0
  750. package/ui/segmented-bar/index.ios.d.ts +28 -0
  751. package/ui/segmented-bar/index.ios.js +140 -0
  752. package/ui/segmented-bar/index.ios.js.map +1 -0
  753. package/ui/segmented-bar/segmented-bar-common.d.ts +37 -0
  754. package/ui/segmented-bar/segmented-bar-common.js +146 -0
  755. package/ui/segmented-bar/segmented-bar-common.js.map +1 -0
  756. package/ui/slider/index.android.d.ts +32 -0
  757. package/ui/slider/index.android.js +123 -0
  758. package/ui/slider/index.android.js.map +1 -0
  759. package/ui/slider/index.ios.d.ts +34 -0
  760. package/ui/slider/index.ios.js +145 -0
  761. package/ui/slider/index.ios.js.map +1 -0
  762. package/ui/slider/slider-common.d.ts +27 -0
  763. package/ui/slider/slider-common.js +69 -0
  764. package/ui/slider/slider-common.js.map +1 -0
  765. package/ui/split-view/index.android.d.ts +3 -0
  766. package/ui/split-view/index.android.js +4 -0
  767. package/ui/split-view/index.android.js.map +1 -0
  768. package/ui/split-view/index.ios.d.ts +51 -0
  769. package/ui/split-view/index.ios.js +567 -0
  770. package/ui/split-view/index.ios.js.map +1 -0
  771. package/ui/split-view/split-view-common.d.ts +59 -0
  772. package/ui/split-view/split-view-common.js +127 -0
  773. package/ui/split-view/split-view-common.js.map +1 -0
  774. package/ui/styling/background-common.d.ts +78 -0
  775. package/ui/styling/background-common.js +241 -0
  776. package/ui/styling/background-common.js.map +1 -0
  777. package/ui/styling/background.android.d.ts +3 -0
  778. package/ui/styling/background.android.js +82 -0
  779. package/ui/styling/background.android.js.map +1 -0
  780. package/ui/styling/background.ios.d.ts +21 -0
  781. package/ui/styling/background.ios.js +1105 -0
  782. package/ui/styling/background.ios.js.map +1 -0
  783. package/ui/styling/box-shadow.d.ts +9 -0
  784. package/ui/styling/box-shadow.js +3 -0
  785. package/ui/styling/box-shadow.js.map +1 -0
  786. package/ui/styling/clip-path-function.d.ts +16 -0
  787. package/ui/styling/clip-path-function.js +25 -0
  788. package/ui/styling/clip-path-function.js.map +1 -0
  789. package/ui/styling/converters.d.ts +2 -0
  790. package/ui/styling/converters.js +41 -0
  791. package/ui/styling/converters.js.map +1 -0
  792. package/ui/styling/css-animation-parser.d.ts +14 -0
  793. package/ui/styling/css-animation-parser.js +187 -0
  794. package/ui/styling/css-animation-parser.js.map +1 -0
  795. package/ui/styling/css-selector.d.ts +270 -0
  796. package/ui/styling/css-selector.js +934 -0
  797. package/ui/styling/css-selector.js.map +1 -0
  798. package/ui/styling/css-shadow.d.ts +19 -0
  799. package/ui/styling/css-shadow.js +26 -0
  800. package/ui/styling/css-shadow.js.map +1 -0
  801. package/ui/styling/css-stroke.d.ts +12 -0
  802. package/ui/styling/css-stroke.js +19 -0
  803. package/ui/styling/css-stroke.js.map +1 -0
  804. package/ui/styling/css-transform.d.ts +2 -0
  805. package/ui/styling/css-transform.js +110 -0
  806. package/ui/styling/css-transform.js.map +1 -0
  807. package/ui/styling/css-utils.d.ts +8 -0
  808. package/ui/styling/css-utils.js +73 -0
  809. package/ui/styling/css-utils.js.map +1 -0
  810. package/ui/styling/font-common.d.ts +62 -0
  811. package/ui/styling/font-common.js +195 -0
  812. package/ui/styling/font-common.js.map +1 -0
  813. package/ui/styling/font-interfaces.d.ts +16 -0
  814. package/ui/styling/font-interfaces.js +2 -0
  815. package/ui/styling/font-interfaces.js.map +1 -0
  816. package/ui/styling/font.android.d.ts +15 -0
  817. package/ui/styling/font.android.js +226 -0
  818. package/ui/styling/font.android.js.map +1 -0
  819. package/ui/styling/font.ios.d.ts +18 -0
  820. package/ui/styling/font.ios.js +159 -0
  821. package/ui/styling/font.ios.js.map +1 -0
  822. package/ui/styling/length-shared.d.ts +52 -0
  823. package/ui/styling/length-shared.js +173 -0
  824. package/ui/styling/length-shared.js.map +1 -0
  825. package/ui/styling/linear-gradient.d.ts +13 -0
  826. package/ui/styling/linear-gradient.js +48 -0
  827. package/ui/styling/linear-gradient.js.map +1 -0
  828. package/ui/styling/style/index.d.ts +166 -0
  829. package/ui/styling/style/index.js +67 -0
  830. package/ui/styling/style/index.js.map +1 -0
  831. package/ui/styling/style-properties.d.ts +63 -0
  832. package/ui/styling/style-properties.js +1151 -0
  833. package/ui/styling/style-properties.js.map +1 -0
  834. package/ui/styling/style-scope.d.ts +87 -0
  835. package/ui/styling/style-scope.js +1020 -0
  836. package/ui/styling/style-scope.js.map +1 -0
  837. package/ui/styling/styling-profile.d.ts +1 -0
  838. package/ui/styling/styling-profile.js +4 -0
  839. package/ui/styling/styling-profile.js.map +1 -0
  840. package/ui/styling/styling-shared.d.ts +3 -0
  841. package/ui/styling/styling-shared.js +6 -0
  842. package/ui/styling/styling-shared.js.map +1 -0
  843. package/ui/switch/index.android.d.ts +23 -0
  844. package/ui/switch/index.android.js +111 -0
  845. package/ui/switch/index.android.js.map +1 -0
  846. package/ui/switch/index.ios.d.ts +26 -0
  847. package/ui/switch/index.ios.js +185 -0
  848. package/ui/switch/index.ios.js.map +1 -0
  849. package/ui/switch/switch-common.d.ts +12 -0
  850. package/ui/switch/switch-common.js +37 -0
  851. package/ui/switch/switch-common.js.map +1 -0
  852. package/ui/tab-view/index.android.d.ts +73 -0
  853. package/ui/tab-view/index.android.js +646 -0
  854. package/ui/tab-view/index.android.js.map +1 -0
  855. package/ui/tab-view/index.ios.d.ts +80 -0
  856. package/ui/tab-view/index.ios.js +877 -0
  857. package/ui/tab-view/index.ios.js.map +1 -0
  858. package/ui/tab-view/tab-view-common.d.ts +86 -0
  859. package/ui/tab-view/tab-view-common.js +277 -0
  860. package/ui/tab-view/tab-view-common.js.map +1 -0
  861. package/ui/text-base/formatted-string.js +163 -0
  862. package/ui/text-base/formatted-string.js.map +1 -0
  863. package/ui/text-base/index.android.d.ts +79 -0
  864. package/ui/text-base/index.android.js +589 -0
  865. package/ui/text-base/index.android.js.map +1 -0
  866. package/ui/text-base/index.ios.d.ts +53 -0
  867. package/ui/text-base/index.ios.js +452 -0
  868. package/ui/text-base/index.ios.js.map +1 -0
  869. package/ui/text-base/span.js +113 -0
  870. package/ui/text-base/span.js.map +1 -0
  871. package/ui/text-base/text-base-common.d.ts +99 -0
  872. package/ui/text-base/text-base-common.js +324 -0
  873. package/ui/text-base/text-base-common.js.map +1 -0
  874. package/ui/text-field/index.android.d.ts +10 -0
  875. package/ui/text-field/index.android.js +92 -0
  876. package/ui/text-field/index.android.js.map +1 -0
  877. package/ui/text-field/index.ios.d.ts +56 -0
  878. package/ui/text-field/index.ios.js +315 -0
  879. package/ui/text-field/index.ios.js.map +1 -0
  880. package/ui/text-field/text-field-common.d.ts +11 -0
  881. package/ui/text-field/text-field-common.js +25 -0
  882. package/ui/text-field/text-field-common.js.map +1 -0
  883. package/ui/text-view/index.android.d.ts +8 -0
  884. package/ui/text-view/index.android.js +24 -0
  885. package/ui/text-view/index.android.js.map +1 -0
  886. package/ui/text-view/index.ios.d.ts +59 -0
  887. package/ui/text-view/index.ios.js +432 -0
  888. package/ui/text-view/index.ios.js.map +1 -0
  889. package/ui/text-view/text-view-common.d.ts +32 -0
  890. package/ui/text-view/text-view-common.js +39 -0
  891. package/ui/text-view/text-view-common.js.map +1 -0
  892. package/ui/time-picker/index.android.d.ts +10 -0
  893. package/ui/time-picker/index.android.js +79 -0
  894. package/ui/time-picker/index.android.js.map +1 -0
  895. package/ui/time-picker/index.ios.d.ts +31 -0
  896. package/ui/time-picker/index.ios.js +138 -0
  897. package/ui/time-picker/index.ios.js.map +1 -0
  898. package/ui/time-picker/time-picker-common.d.ts +31 -0
  899. package/ui/time-picker/time-picker-common.js +176 -0
  900. package/ui/time-picker/time-picker-common.js.map +1 -0
  901. package/ui/transition/fade-transition.android.d.ts +4 -0
  902. package/ui/transition/fade-transition.android.js +28 -0
  903. package/ui/transition/fade-transition.android.js.map +1 -0
  904. package/ui/transition/fade-transition.ios.d.ts +17 -0
  905. package/ui/transition/fade-transition.ios.js +64 -0
  906. package/ui/transition/fade-transition.ios.js.map +1 -0
  907. package/ui/transition/flip-transition.android.d.ts +6 -0
  908. package/ui/transition/flip-transition.android.js +90 -0
  909. package/ui/transition/flip-transition.android.js.map +1 -0
  910. package/ui/transition/index.android.d.ts +19 -0
  911. package/ui/transition/index.android.js +37 -0
  912. package/ui/transition/index.android.js.map +1 -0
  913. package/ui/transition/index.ios.d.ts +14 -0
  914. package/ui/transition/index.ios.js +30 -0
  915. package/ui/transition/index.ios.js.map +1 -0
  916. package/ui/transition/modal-transition.android.d.ts +5 -0
  917. package/ui/transition/modal-transition.android.js +7 -0
  918. package/ui/transition/modal-transition.android.js.map +1 -0
  919. package/ui/transition/modal-transition.ios.d.ts +34 -0
  920. package/ui/transition/modal-transition.ios.js +175 -0
  921. package/ui/transition/modal-transition.ios.js.map +1 -0
  922. package/ui/transition/page-transition.android.d.ts +9 -0
  923. package/ui/transition/page-transition.android.js +284 -0
  924. package/ui/transition/page-transition.android.js.map +1 -0
  925. package/ui/transition/page-transition.ios.d.ts +35 -0
  926. package/ui/transition/page-transition.ios.js +193 -0
  927. package/ui/transition/page-transition.ios.js.map +1 -0
  928. package/ui/transition/shared-transition-helper.android.d.ts +9 -0
  929. package/ui/transition/shared-transition-helper.android.js +10 -0
  930. package/ui/transition/shared-transition-helper.android.js.map +1 -0
  931. package/ui/transition/shared-transition-helper.ios.d.ts +14 -0
  932. package/ui/transition/shared-transition-helper.ios.js +539 -0
  933. package/ui/transition/shared-transition-helper.ios.js.map +1 -0
  934. package/ui/transition/shared-transition.d.ts +271 -0
  935. package/ui/transition/shared-transition.js +215 -0
  936. package/ui/transition/shared-transition.js.map +1 -0
  937. package/ui/transition/slide-transition.android.d.ts +7 -0
  938. package/ui/transition/slide-transition.android.js +116 -0
  939. package/ui/transition/slide-transition.android.js.map +1 -0
  940. package/ui/transition/slide-transition.ios.d.ts +19 -0
  941. package/ui/transition/slide-transition.ios.js +94 -0
  942. package/ui/transition/slide-transition.ios.js.map +1 -0
  943. package/ui/utils.android.d.ts +5 -0
  944. package/ui/utils.android.js +16 -0
  945. package/ui/utils.android.js.map +1 -0
  946. package/ui/utils.ios.d.ts +11 -0
  947. package/ui/utils.ios.js +66 -0
  948. package/ui/utils.ios.js.map +1 -0
  949. package/ui/web-view/index.android.d.ts +18 -0
  950. package/ui/web-view/index.android.js +173 -0
  951. package/ui/web-view/index.android.js.map +1 -0
  952. package/ui/web-view/index.ios.d.ts +27 -0
  953. package/ui/web-view/index.ios.js +246 -0
  954. package/ui/web-view/index.ios.js.map +1 -0
  955. package/ui/web-view/web-view-common.d.ts +30 -0
  956. package/ui/web-view/web-view-common.js +74 -0
  957. package/ui/web-view/web-view-common.js.map +1 -0
  958. package/ui/web-view/web-view-interfaces.d.ts +11 -0
  959. package/ui/web-view/web-view-interfaces.js +2 -0
  960. package/ui/web-view/web-view-interfaces.js.map +1 -0
  961. package/utils/animation-helpers.d.ts +27 -0
  962. package/utils/animation-helpers.js +48 -0
  963. package/utils/animation-helpers.js.map +1 -0
  964. package/utils/common.d.ts +28 -0
  965. package/utils/common.js +158 -0
  966. package/utils/common.js.map +1 -0
  967. package/utils/constants.android.d.ts +2 -0
  968. package/utils/constants.android.js +5 -0
  969. package/utils/constants.android.js.map +1 -0
  970. package/utils/constants.ios.d.ts +2 -0
  971. package/utils/constants.ios.js +5 -0
  972. package/utils/constants.ios.js.map +1 -0
  973. package/utils/debug-source.d.ts +19 -0
  974. package/utils/debug-source.js +78 -0
  975. package/utils/debug-source.js.map +1 -0
  976. package/utils/debug.js +3 -0
  977. package/utils/debug.js.map +1 -0
  978. package/utils/index.android.d.ts +26 -0
  979. package/utils/index.android.js +205 -0
  980. package/utils/index.android.js.map +1 -0
  981. package/utils/index.ios.d.ts +22 -0
  982. package/utils/index.ios.js +113 -0
  983. package/utils/index.ios.js.map +1 -0
  984. package/utils/layout-helper/index.android.d.ts +25 -0
  985. package/utils/layout-helper/index.android.js +86 -0
  986. package/utils/layout-helper/index.android.js.map +1 -0
  987. package/utils/layout-helper/index.ios.d.ts +25 -0
  988. package/utils/layout-helper/index.ios.js +68 -0
  989. package/utils/layout-helper/index.ios.js.map +1 -0
  990. package/utils/layout-helper/layout-helper-common.d.ts +5 -0
  991. package/utils/layout-helper/layout-helper-common.js +49 -0
  992. package/utils/layout-helper/layout-helper-common.js.map +1 -0
  993. package/utils/layout-helper/layout-helper-shared.d.ts +9 -0
  994. package/utils/layout-helper/layout-helper-shared.js +13 -0
  995. package/utils/layout-helper/layout-helper-shared.js.map +1 -0
  996. package/utils/lazy.js +5 -0
  997. package/utils/lazy.js.map +1 -0
  998. package/utils/macrotask-scheduler.js +26 -0
  999. package/utils/macrotask-scheduler.js.map +1 -0
  1000. package/utils/mainthread-helper.android.d.ts +3 -0
  1001. package/utils/mainthread-helper.android.js +28 -0
  1002. package/utils/mainthread-helper.android.js.map +1 -0
  1003. package/utils/mainthread-helper.ios.d.ts +3 -0
  1004. package/utils/mainthread-helper.ios.js +17 -0
  1005. package/utils/mainthread-helper.ios.js.map +1 -0
  1006. package/utils/module-merge.d.ts +1 -0
  1007. package/utils/module-merge.js +8 -0
  1008. package/utils/module-merge.js.map +1 -0
  1009. package/utils/native-helper-for-android.d.ts +45 -0
  1010. package/utils/native-helper-for-android.js +376 -0
  1011. package/utils/native-helper-for-android.js.map +1 -0
  1012. package/utils/native-helper.android.d.ts +42 -0
  1013. package/utils/native-helper.android.js +30 -0
  1014. package/utils/native-helper.android.js.map +1 -0
  1015. package/utils/native-helper.ios.d.ts +79 -0
  1016. package/utils/native-helper.ios.js +339 -0
  1017. package/utils/native-helper.ios.js.map +1 -0
  1018. package/utils/number-utils.d.ts +19 -0
  1019. package/utils/number-utils.js +37 -0
  1020. package/utils/number-utils.js.map +1 -0
  1021. package/utils/platform-check.d.ts +4 -0
  1022. package/utils/platform-check.js +21 -0
  1023. package/utils/platform-check.js.map +1 -0
  1024. package/utils/shared.d.ts +17 -0
  1025. package/utils/shared.js +40 -0
  1026. package/utils/shared.js.map +1 -0
  1027. package/utils/types.js +104 -0
  1028. package/utils/types.js.map +1 -0
  1029. package/utils/utils-shared.d.ts +1 -0
  1030. package/utils/utils-shared.js +8 -0
  1031. package/utils/utils-shared.js.map +1 -0
  1032. package/wgc/atob.d.ts +1 -0
  1033. package/wgc/atob.js +9 -0
  1034. package/wgc/atob.js.map +1 -0
  1035. package/wgc/btoa.d.ts +1 -0
  1036. package/wgc/btoa.js +9 -0
  1037. package/wgc/btoa.js.map +1 -0
  1038. package/wgc/crypto/SubtleCrypto.d.ts +63 -0
  1039. package/wgc/crypto/SubtleCrypto.js +551 -0
  1040. package/wgc/crypto/SubtleCrypto.js.map +1 -0
  1041. package/wgc/crypto/index.d.ts +8 -0
  1042. package/wgc/crypto/index.js +32 -0
  1043. package/wgc/crypto/index.js.map +1 -0
  1044. package/wgc/index.d.ts +2 -0
  1045. package/wgc/index.js +3 -0
  1046. package/wgc/index.js.map +1 -0
  1047. package/xhr/index.d.ts +113 -0
  1048. package/xhr/index.js +486 -0
  1049. package/xhr/index.js.map +1 -0
  1050. package/xml/index.d.ts +108 -0
  1051. package/xml/index.js +574 -0
  1052. package/xml/index.js.map +1 -0
  1053. package/css/package.json +0 -36
  1054. package/css-value/package.json +0 -23
@@ -0,0 +1,1020 @@
1
+ import { getNativeScriptGlobals } from '../../globals/global-utils';
2
+ import { _evaluateCssVariableExpression, _evaluateCssCalcExpression, isCssVariable, isCssVariableExpression, isCssCalcExpression } from '../core/properties';
3
+ import { unsetValue } from '../core/properties/property-shared';
4
+ import { StyleSheetSelectorScope, SelectorsMatch, fromAstNode, MEDIA_QUERY_SEPARATOR, matchMediaQueryString } from './css-selector';
5
+ import { Trace } from './styling-shared';
6
+ import { File, knownFolders, path } from '../../file-system';
7
+ import { Application } from '../../application';
8
+ import { profile } from './styling-profile';
9
+ import { KeyframeAnimationInfo, KeyframeAnimation } from '../animation/keyframe-animation';
10
+ import { CssAnimationParser } from './css-animation-parser';
11
+ import { sanitizeModuleName } from '../../utils/common';
12
+ import { resolveModuleName } from '../../module-name-resolver';
13
+ import { cleanupImportantFlags } from './css-utils';
14
+ import { cssTreeParse } from '../../css/css-tree-parser';
15
+ import { CSS3Parser } from '../../css/CSS3Parser';
16
+ import { CSSNativeScript } from '../../css/CSSNativeScript';
17
+ import { parse as parseCss } from '../../css/lib/parse';
18
+ // @ts-ignore apps resolve this at runtime with path alias in project bundlers
19
+ import appConfig from '~/package.json';
20
+ let parser = 'css-tree';
21
+ try {
22
+ if (appConfig) {
23
+ if (appConfig.cssParser === 'rework') {
24
+ parser = 'rework';
25
+ }
26
+ else if (appConfig.cssParser === 'nativescript') {
27
+ parser = 'nativescript';
28
+ }
29
+ }
30
+ }
31
+ catch (e) {
32
+ //
33
+ }
34
+ let mergedApplicationCssSelectors = [];
35
+ let applicationCssSelectors = [];
36
+ const applicationAdditionalSelectors = [];
37
+ let mergedApplicationCssKeyframes = [];
38
+ let applicationCssKeyframes = [];
39
+ const applicationAdditionalKeyframes = [];
40
+ let applicationCssSelectorVersion = 0;
41
+ const tagToScopeTag = new Map();
42
+ let currentScopeTag = null;
43
+ const animationsSymbol = Symbol('animations');
44
+ const kebabCasePattern = /-([a-z])/g;
45
+ const pattern = /('|")(.*?)\1/;
46
+ /**
47
+ * Evaluate css-variable and css-calc expressions
48
+ */
49
+ function evaluateCssExpressions(view, property, value) {
50
+ const newValue = _evaluateCssVariableExpression(view, property, value);
51
+ if (newValue === 'unset') {
52
+ return unsetValue;
53
+ }
54
+ value = newValue;
55
+ try {
56
+ value = _evaluateCssCalcExpression(value);
57
+ }
58
+ catch (e) {
59
+ Trace.write(`Failed to evaluate css-calc for property [${property}] for expression [${value}] to ${view}. ${e.stack}`, Trace.categories.Error, Trace.messageType.error);
60
+ return unsetValue;
61
+ }
62
+ return value;
63
+ }
64
+ export function mergeCssSelectors() {
65
+ mergedApplicationCssSelectors = applicationCssSelectors.slice();
66
+ mergedApplicationCssSelectors.push(...applicationAdditionalSelectors);
67
+ }
68
+ export function mergeCssKeyframes() {
69
+ mergedApplicationCssKeyframes = applicationCssKeyframes.slice();
70
+ mergedApplicationCssKeyframes.push(...applicationAdditionalKeyframes);
71
+ }
72
+ class CSSSource {
73
+ constructor(_ast, _url, _file, _source) {
74
+ this._ast = _ast;
75
+ this._url = _url;
76
+ this._file = _file;
77
+ this._source = _source;
78
+ this._selectors = [];
79
+ this._keyframes = [];
80
+ this.parse();
81
+ }
82
+ static fromDetect(cssOrAst, fileName) {
83
+ if (typeof cssOrAst === 'string') {
84
+ // raw-loader
85
+ return CSSSource.fromSource(cssOrAst, fileName);
86
+ }
87
+ else if (typeof cssOrAst === 'object') {
88
+ if (cssOrAst.default) {
89
+ cssOrAst = cssOrAst.default;
90
+ }
91
+ if (cssOrAst.type === 'stylesheet' && cssOrAst.stylesheet && cssOrAst.stylesheet.rules) {
92
+ // css-loader
93
+ return CSSSource.fromAST(cssOrAst, fileName);
94
+ }
95
+ }
96
+ // css2json-loader
97
+ return CSSSource.fromSource(cssOrAst.toString(), fileName);
98
+ }
99
+ static fromURI(uri) {
100
+ // webpack modules require all file paths to be relative to /app folder
101
+ const appRelativeUri = CSSSource.pathRelativeToApp(uri);
102
+ const sanitizedModuleName = sanitizeModuleName(appRelativeUri);
103
+ const resolvedModuleName = resolveModuleName(sanitizedModuleName, 'css');
104
+ try {
105
+ const cssOrAst = global.loadModule(resolvedModuleName, true);
106
+ if (cssOrAst) {
107
+ return CSSSource.fromDetect(cssOrAst, resolvedModuleName);
108
+ }
109
+ }
110
+ catch (e) {
111
+ if (Trace.isEnabled()) {
112
+ Trace.write(`Could not load CSS from ${uri}: ${e}`, Trace.categories.Error, Trace.messageType.warn);
113
+ }
114
+ }
115
+ return CSSSource.fromFile(appRelativeUri);
116
+ }
117
+ static pathRelativeToApp(uri) {
118
+ if (!uri.startsWith('/')) {
119
+ return uri;
120
+ }
121
+ const appPath = knownFolders.currentApp().path;
122
+ if (!uri.startsWith(appPath)) {
123
+ Trace.write(`${uri} does not start with ${appPath}`, Trace.categories.Error, Trace.messageType.error);
124
+ return uri;
125
+ }
126
+ const relativeUri = `.${uri.substring(appPath.length)}`;
127
+ return relativeUri;
128
+ }
129
+ static fromFile(url) {
130
+ // .scss, .sass, etc. css files in vanilla app are usually compiled to .css so we will try to load a compiled file first.
131
+ const cssFileUrl = url.replace(/\..\w+$/, '.css');
132
+ if (cssFileUrl !== url) {
133
+ const cssFile = CSSSource.resolveCSSPathFromURL(cssFileUrl);
134
+ if (cssFile) {
135
+ return new CSSSource(undefined, url, cssFile, undefined);
136
+ }
137
+ }
138
+ const file = CSSSource.resolveCSSPathFromURL(url);
139
+ return new CSSSource(undefined, url, file, undefined);
140
+ }
141
+ static fromFileImport(url, importSource) {
142
+ const file = CSSSource.resolveCSSPathFromURL(url, importSource);
143
+ return new CSSSource(undefined, url, file, undefined);
144
+ }
145
+ static resolveCSSPathFromURL(url, importSource) {
146
+ const app = knownFolders.currentApp().path;
147
+ const file = resolveFileNameFromUrl(url, app, File.exists, importSource);
148
+ return file;
149
+ }
150
+ static fromSource(source, url) {
151
+ return new CSSSource(undefined, url, undefined, source);
152
+ }
153
+ static fromAST(ast, url) {
154
+ return new CSSSource(ast, url, undefined, undefined);
155
+ }
156
+ get selectors() {
157
+ return this._selectors;
158
+ }
159
+ get keyframes() {
160
+ return this._keyframes;
161
+ }
162
+ get source() {
163
+ return this._source;
164
+ }
165
+ load() {
166
+ const file = File.fromPath(this._file);
167
+ this._source = file.readTextSync();
168
+ }
169
+ parse() {
170
+ try {
171
+ if (!this._ast) {
172
+ if (!this._source && this._file) {
173
+ this.load();
174
+ }
175
+ // [object Object] check guards against empty app.css file
176
+ if (this._source && this.source !== '[object Object]') {
177
+ this.parseCSSAst();
178
+ }
179
+ }
180
+ if (this._ast) {
181
+ this.createSelectorsAndKeyframes();
182
+ }
183
+ else {
184
+ this._selectors = [];
185
+ }
186
+ }
187
+ catch (e) {
188
+ if (Trace.isEnabled()) {
189
+ Trace.write('Css styling failed: ' + e, Trace.categories.Style, Trace.messageType.error);
190
+ }
191
+ this._selectors = [];
192
+ }
193
+ }
194
+ async parseCSSAst() {
195
+ if (this._source) {
196
+ if (__CSS_PARSER__ === 'css-tree') {
197
+ this._ast = cssTreeParse(this._source, this._file);
198
+ }
199
+ else if (__CSS_PARSER__ === 'nativescript') {
200
+ const cssparser = new CSS3Parser(this._source);
201
+ const stylesheet = cssparser.parseAStylesheet();
202
+ const cssNS = new CSSNativeScript();
203
+ this._ast = cssNS.parseStylesheet(stylesheet);
204
+ }
205
+ else if (__CSS_PARSER__ === 'rework') {
206
+ this._ast = parseCss(this._source, { source: this._file });
207
+ }
208
+ }
209
+ }
210
+ createSelectorsAndKeyframes() {
211
+ if (this._ast) {
212
+ const nodes = this._ast.stylesheet.rules;
213
+ const rulesets = [];
214
+ const keyframes = [];
215
+ // When css2json-loader is enabled, imports are handled there and removed from AST rules
216
+ populateRulesFromImports(nodes, rulesets, keyframes);
217
+ _populateRules(nodes, rulesets, keyframes);
218
+ if (rulesets && rulesets.length) {
219
+ rulesets.forEach((rule) => {
220
+ rule[animationsSymbol] = CssAnimationParser.keyframeAnimationsFromCSSDeclarations(rule.declarations);
221
+ });
222
+ }
223
+ this._selectors = rulesets;
224
+ this._keyframes = keyframes;
225
+ }
226
+ }
227
+ toString() {
228
+ return this._file || this._url || '(in-memory)';
229
+ }
230
+ }
231
+ __decorate([
232
+ profile,
233
+ __metadata("design:type", Function),
234
+ __metadata("design:paramtypes", []),
235
+ __metadata("design:returntype", void 0)
236
+ ], CSSSource.prototype, "load", null);
237
+ __decorate([
238
+ profile,
239
+ __metadata("design:type", Function),
240
+ __metadata("design:paramtypes", []),
241
+ __metadata("design:returntype", void 0)
242
+ ], CSSSource.prototype, "parse", null);
243
+ __decorate([
244
+ profile,
245
+ __metadata("design:type", Function),
246
+ __metadata("design:paramtypes", []),
247
+ __metadata("design:returntype", Promise)
248
+ ], CSSSource.prototype, "parseCSSAst", null);
249
+ __decorate([
250
+ profile,
251
+ __metadata("design:type", Function),
252
+ __metadata("design:paramtypes", []),
253
+ __metadata("design:returntype", void 0)
254
+ ], CSSSource.prototype, "createSelectorsAndKeyframes", null);
255
+ __decorate([
256
+ profile,
257
+ __metadata("design:type", Function),
258
+ __metadata("design:paramtypes", [String, String]),
259
+ __metadata("design:returntype", String)
260
+ ], CSSSource, "resolveCSSPathFromURL", null);
261
+ function populateRulesFromImports(nodes, rulesets, keyframes) {
262
+ const imports = nodes.filter((r) => r.type === 'import');
263
+ if (!imports.length) {
264
+ return;
265
+ }
266
+ const urlFromImportObject = (importObject) => {
267
+ const importItem = importObject['import'];
268
+ const urlMatch = importItem && importItem.match(pattern);
269
+ return urlMatch && urlMatch[2];
270
+ };
271
+ const sourceFromImportObject = (importObject) => importObject['position'] && importObject['position']['source'];
272
+ const toUrlSourcePair = (importObject) => ({
273
+ url: urlFromImportObject(importObject),
274
+ source: sourceFromImportObject(importObject),
275
+ });
276
+ const getCssFile = ({ url, source }) => (source ? CSSSource.fromFileImport(url, source) : CSSSource.fromURI(url));
277
+ const cssFiles = imports
278
+ .map(toUrlSourcePair)
279
+ .filter(({ url }) => !!url)
280
+ .map(getCssFile);
281
+ for (const cssFile of cssFiles) {
282
+ if (cssFile) {
283
+ rulesets.push(...cssFile.selectors);
284
+ keyframes.push(...cssFile.keyframes);
285
+ }
286
+ }
287
+ }
288
+ export function _populateRules(nodes, rulesets, keyframes, mediaQueryString) {
289
+ for (const node of nodes) {
290
+ if (isKeyframe(node)) {
291
+ const keyframeRule = {
292
+ name: node.name,
293
+ keyframes: node.keyframes,
294
+ mediaQueryString: mediaQueryString,
295
+ };
296
+ keyframes.push(keyframeRule);
297
+ }
298
+ else if (isMedia(node)) {
299
+ // Media query is composite in the case of nested media queries
300
+ const compositeMediaQuery = mediaQueryString ? mediaQueryString + MEDIA_QUERY_SEPARATOR + node.media : node.media;
301
+ _populateRules(node.rules, rulesets, keyframes, compositeMediaQuery);
302
+ }
303
+ else if (isRule(node)) {
304
+ const ruleset = fromAstNode(node);
305
+ ruleset.mediaQueryString = mediaQueryString;
306
+ rulesets.push(ruleset);
307
+ }
308
+ }
309
+ }
310
+ export function removeTaggedAdditionalCSS(tag) {
311
+ let selectorsChanged = false;
312
+ let keyframesChanged = false;
313
+ let updated = false;
314
+ for (let i = 0; i < applicationAdditionalSelectors.length; i++) {
315
+ if (applicationAdditionalSelectors[i].tag === tag) {
316
+ applicationAdditionalSelectors.splice(i, 1);
317
+ i--;
318
+ selectorsChanged = true;
319
+ }
320
+ }
321
+ for (let i = 0; i < applicationAdditionalKeyframes.length; i++) {
322
+ if (applicationAdditionalKeyframes[i].tag === tag) {
323
+ applicationAdditionalKeyframes.splice(i, 1);
324
+ i--;
325
+ keyframesChanged = true;
326
+ }
327
+ }
328
+ if (selectorsChanged) {
329
+ mergeCssSelectors();
330
+ updated = true;
331
+ }
332
+ if (keyframesChanged) {
333
+ mergeCssKeyframes();
334
+ updated = true;
335
+ }
336
+ if (updated) {
337
+ applicationCssSelectorVersion++;
338
+ }
339
+ return updated;
340
+ }
341
+ export function addTaggedAdditionalCSS(cssText, tag) {
342
+ const { selectors, keyframes } = CSSSource.fromDetect(cssText, undefined);
343
+ const tagScope = currentScopeTag || (tag && tagToScopeTag.has(tag) && tagToScopeTag.get(tag)) || null;
344
+ if (tagScope && tag) {
345
+ tagToScopeTag.set(tag, tagScope);
346
+ }
347
+ let selectorsChanged = false;
348
+ let keyframesChanged = false;
349
+ let updated = false;
350
+ if (selectors && selectors.length) {
351
+ selectorsChanged = true;
352
+ if (tag != null || tagScope != null) {
353
+ for (let i = 0, length = selectors.length; i < length; i++) {
354
+ selectors[i].tag = tag;
355
+ selectors[i].scopedTag = tagScope;
356
+ }
357
+ }
358
+ applicationAdditionalSelectors.push(...selectors);
359
+ mergeCssSelectors();
360
+ updated = true;
361
+ }
362
+ if (keyframes && keyframes.length) {
363
+ keyframesChanged = true;
364
+ if (tag != null || tagScope != null) {
365
+ for (let i = 0, length = keyframes.length; i < length; i++) {
366
+ keyframes[i].tag = tag;
367
+ keyframes[i].scopedTag = tagScope;
368
+ }
369
+ }
370
+ applicationAdditionalKeyframes.push(...keyframes);
371
+ mergeCssKeyframes();
372
+ updated = true;
373
+ }
374
+ if (updated) {
375
+ applicationCssSelectorVersion++;
376
+ }
377
+ return updated;
378
+ }
379
+ const onCssChanged = profile('"style-scope".onCssChanged', (args) => {
380
+ if (args.cssText) {
381
+ const { selectors, keyframes } = CSSSource.fromSource(args.cssText, args.cssFile);
382
+ let updated = false;
383
+ if (selectors) {
384
+ applicationAdditionalSelectors.push(...selectors);
385
+ mergeCssSelectors();
386
+ updated = true;
387
+ }
388
+ if (keyframes) {
389
+ applicationAdditionalKeyframes.push(...keyframes);
390
+ mergeCssKeyframes();
391
+ updated = true;
392
+ }
393
+ if (updated) {
394
+ applicationCssSelectorVersion++;
395
+ }
396
+ }
397
+ else if (args.cssFile) {
398
+ loadCss(args.cssFile, null, null);
399
+ }
400
+ });
401
+ function onLiveSync(args) {
402
+ loadCss(Application.getCssFileName(), null, null);
403
+ }
404
+ const loadCss = profile(`"style-scope".loadCss`, (cssModule) => {
405
+ if (!cssModule) {
406
+ return;
407
+ }
408
+ // safely remove "./" as global CSS should be resolved relative to app folder
409
+ if (cssModule.startsWith('./')) {
410
+ cssModule = cssModule.substring(2);
411
+ }
412
+ const { selectors, keyframes } = CSSSource.fromURI(cssModule);
413
+ let updated = false;
414
+ // Check for existing application css selectors too in case the app is undergoing a live-sync
415
+ if (selectors.length > 0 || applicationCssSelectors.length > 0) {
416
+ applicationCssSelectors = selectors;
417
+ mergeCssSelectors();
418
+ updated = true;
419
+ }
420
+ // Check for existing application css keyframes too in case the app is undergoing a live-sync
421
+ if (keyframes.length > 0 || applicationCssKeyframes.length > 0) {
422
+ applicationCssKeyframes = keyframes;
423
+ mergeCssKeyframes();
424
+ updated = true;
425
+ }
426
+ if (updated) {
427
+ applicationCssSelectorVersion++;
428
+ }
429
+ });
430
+ getNativeScriptGlobals().events.on('cssChanged', onCssChanged);
431
+ getNativeScriptGlobals().events.on('livesync', onLiveSync);
432
+ // Call to this method is injected in the application in:
433
+ // - no-snapshot - code injected in app.ts by [bundle-config-loader](https://github.com/NativeScript/nativescript-dev-webpack/blob/9b1e34d8ef838006c9b575285c42d2304f5f02b5/bundle-config-loader.ts#L85-L92)
434
+ // - with-snapshot - code injected in snapshot bundle by [NativeScriptSnapshotPlugin](https://github.com/NativeScript/nativescript-dev-webpack/blob/48b26f412fd70c19dc0b9c7763e08e9505a0ae11/plugins/NativeScriptSnapshotPlugin/index.js#L48-L56)
435
+ // Having the app.css loaded in snapshot provides significant boost in startup (when using the ns-theme ~150 ms). However, because app.css is resolved at build-time,
436
+ // when the snapshot is created - there is no way to use file qualifiers or change the name of on app.css
437
+ export const loadAppCSS = profile('"style-scope".loadAppCSS', (args) => {
438
+ loadCss(args.cssFile, null, null);
439
+ getNativeScriptGlobals().events.off('loadAppCss', loadAppCSS);
440
+ });
441
+ if (Application.hasLaunched()) {
442
+ loadAppCSS({
443
+ eventName: 'loadAppCss',
444
+ object: Application,
445
+ cssFile: Application.getCssFileName(),
446
+ }, null, null);
447
+ }
448
+ else {
449
+ getNativeScriptGlobals().events.on('loadAppCss', loadAppCSS);
450
+ }
451
+ export class CssState {
452
+ constructor(viewRef) {
453
+ this.viewRef = viewRef;
454
+ this._appliedPropertyValues = CssState.emptyPropertyBag;
455
+ this._onDynamicStateChangeHandler = () => this.updateDynamicState();
456
+ }
457
+ /**
458
+ * Called when a change had occurred that may invalidate the statically matching selectors (class, id, ancestor selectors).
459
+ * As a result, at some point in time, the selectors matched have to be requerried from the style scope and applied to the view.
460
+ */
461
+ onChange() {
462
+ const view = this.viewRef.get();
463
+ if (view && view.isLoaded) {
464
+ this.unsubscribeFromDynamicUpdates();
465
+ this.updateMatch();
466
+ this.subscribeForDynamicUpdates();
467
+ this.updateDynamicState();
468
+ }
469
+ else {
470
+ this._matchInvalid = true;
471
+ }
472
+ }
473
+ /**
474
+ * Checks whether style scope and CSS state selectors are in sync.
475
+ */
476
+ isSelectorsLatestVersionApplied() {
477
+ const view = this.viewRef.get();
478
+ if (!view) {
479
+ Trace.write(`isSelectorsLatestVersionApplied returns default value "false" because "this.viewRef" cleared.`, Trace.categories.Style, Trace.messageType.warn);
480
+ return false;
481
+ }
482
+ return this.viewRef.get()._styleScope.getSelectorsVersion() === this._appliedSelectorsVersion;
483
+ }
484
+ onLoaded() {
485
+ if (this._matchInvalid) {
486
+ this.updateMatch();
487
+ }
488
+ this.subscribeForDynamicUpdates();
489
+ this.updateDynamicState();
490
+ }
491
+ onUnloaded() {
492
+ this.unsubscribeFromDynamicUpdates();
493
+ this.stopKeyframeAnimations();
494
+ }
495
+ updateMatch() {
496
+ const view = this.viewRef.get();
497
+ if (view && view._styleScope) {
498
+ this._match = view._styleScope.matchSelectors(view) ?? CssState.emptyMatch;
499
+ this._appliedSelectorsVersion = view._styleScope.getSelectorsVersion();
500
+ }
501
+ else {
502
+ this._match = CssState.emptyMatch;
503
+ }
504
+ this._matchInvalid = false;
505
+ }
506
+ updateDynamicState() {
507
+ const view = this.viewRef.get();
508
+ if (!view) {
509
+ Trace.write(`updateDynamicState not executed to view because ".viewRef" is cleared`, Trace.categories.Style, Trace.messageType.warn);
510
+ return;
511
+ }
512
+ const matchingSelectors = this._match.selectors.filter((sel) => (sel.dynamic ? sel.match(view) : true));
513
+ // Ideally we should return here if there are no matching selectors, however
514
+ // if there are property removals, returning here would not remove them
515
+ // this is seen in STYLE test in automated.
516
+ // if (!matchingSelectors || matchingSelectors.length === 0) {
517
+ // return;
518
+ // }
519
+ view._batchUpdate(() => {
520
+ this.stopKeyframeAnimations();
521
+ this.setPropertyValues(matchingSelectors);
522
+ this.playKeyframeAnimations(matchingSelectors);
523
+ });
524
+ }
525
+ playKeyframeAnimations(matchingSelectors) {
526
+ const animations = [];
527
+ matchingSelectors.forEach((selector) => {
528
+ const ruleAnimations = selector.ruleset?.[animationsSymbol];
529
+ if (ruleAnimations) {
530
+ for (const animationInfo of ruleAnimations) {
531
+ const animation = KeyframeAnimation.keyframeAnimationFromInfo(animationInfo);
532
+ if (animation) {
533
+ animations.push(animation);
534
+ }
535
+ }
536
+ }
537
+ });
538
+ if ((this._playsKeyframeAnimations = animations.length > 0)) {
539
+ const view = this.viewRef.get();
540
+ if (!view) {
541
+ Trace.write(`KeyframeAnimations cannot play because ".viewRef" is cleared`, Trace.categories.Animation, Trace.messageType.warn);
542
+ return;
543
+ }
544
+ animations.map((animation) => animation.play(view));
545
+ Object.freeze(animations);
546
+ this._appliedAnimations = animations;
547
+ }
548
+ }
549
+ stopKeyframeAnimations() {
550
+ if (!this._playsKeyframeAnimations) {
551
+ return;
552
+ }
553
+ this._appliedAnimations.filter((animation) => animation.isPlaying).forEach((animation) => animation.cancel());
554
+ this._appliedAnimations = CssState.emptyAnimationArray;
555
+ const view = this.viewRef.get();
556
+ if (view) {
557
+ view.style['keyframe:rotate'] = unsetValue;
558
+ view.style['keyframe:rotateX'] = unsetValue;
559
+ view.style['keyframe:rotateY'] = unsetValue;
560
+ view.style['keyframe:scaleX'] = unsetValue;
561
+ view.style['keyframe:scaleY'] = unsetValue;
562
+ view.style['keyframe:translateX'] = unsetValue;
563
+ view.style['keyframe:translateY'] = unsetValue;
564
+ view.style['keyframe:backgroundColor'] = unsetValue;
565
+ view.style['keyframe:opacity'] = unsetValue;
566
+ }
567
+ else {
568
+ Trace.write(`KeyframeAnimations cannot be stopped because ".viewRef" is cleared`, Trace.categories.Animation, Trace.messageType.warn);
569
+ }
570
+ this._playsKeyframeAnimations = false;
571
+ }
572
+ /**
573
+ * Calculate the difference between the previously applied property values,
574
+ * and the new set of property values that have to be applied for the provided selectors.
575
+ * Apply the values and ensure each property setter is called at most once to avoid excessive change notifications.
576
+ * @param matchingSelectors
577
+ */
578
+ setPropertyValues(matchingSelectors) {
579
+ const view = this.viewRef.get();
580
+ if (!view) {
581
+ Trace.write(`${matchingSelectors} not set to view's property because ".viewRef" is cleared`, Trace.categories.Style, Trace.messageType.warn);
582
+ return;
583
+ }
584
+ const newPropertyValues = new view.style.PropertyBag();
585
+ matchingSelectors.forEach((selector) => selector.ruleset.declarations.forEach((declaration) => (newPropertyValues[declaration.property] = declaration.value)));
586
+ const oldProperties = this._appliedPropertyValues;
587
+ // Update values for the scope's css-variables
588
+ view.style.resetScopedCssVariables();
589
+ const valuesToApply = {};
590
+ const cssExpsProperties = {};
591
+ const replacementFunc = (g) => g[1].toUpperCase();
592
+ for (const property in newPropertyValues) {
593
+ const value = cleanupImportantFlags(newPropertyValues[property], property);
594
+ const isCssExp = isCssVariableExpression(value) || isCssCalcExpression(value);
595
+ if (isCssExp) {
596
+ // we handle css exp separately because css vars must be evaluated first
597
+ cssExpsProperties[property] = value;
598
+ continue;
599
+ }
600
+ delete oldProperties[property];
601
+ if (property in oldProperties && oldProperties[property] === value) {
602
+ // Skip unchanged values
603
+ continue;
604
+ }
605
+ if (isCssVariable(property)) {
606
+ view.style.setScopedCssVariable(property, value);
607
+ delete newPropertyValues[property];
608
+ continue;
609
+ }
610
+ valuesToApply[property] = value;
611
+ }
612
+ //we need to parse CSS vars first before evaluating css expressions
613
+ for (const property in cssExpsProperties) {
614
+ delete oldProperties[property];
615
+ const value = evaluateCssExpressions(view, property, cssExpsProperties[property]);
616
+ if (property in oldProperties && oldProperties[property] === value) {
617
+ // Skip unchanged values
618
+ continue;
619
+ }
620
+ if (value === unsetValue) {
621
+ delete newPropertyValues[property];
622
+ }
623
+ if (isCssVariable(property)) {
624
+ view.style.setScopedCssVariable(property, value);
625
+ delete newPropertyValues[property];
626
+ }
627
+ valuesToApply[property] = value;
628
+ }
629
+ // Unset removed values
630
+ for (const property in oldProperties) {
631
+ if (property in view.style) {
632
+ view.style[`css:${property}`] = unsetValue;
633
+ }
634
+ else {
635
+ const camelCasedProperty = property.replace(kebabCasePattern, replacementFunc);
636
+ view[camelCasedProperty] = unsetValue;
637
+ }
638
+ }
639
+ // Set new values to the style
640
+ for (const property in valuesToApply) {
641
+ const value = valuesToApply[property];
642
+ try {
643
+ if (property in view.style) {
644
+ view.style[`css:${property}`] = value;
645
+ }
646
+ else {
647
+ const camelCasedProperty = property.replace(kebabCasePattern, replacementFunc);
648
+ view[camelCasedProperty] = value;
649
+ }
650
+ }
651
+ catch (e) {
652
+ Trace.write(`Failed to apply property [${property}] with value [${value}] to ${view}. ${e.stack}`, Trace.categories.Error, Trace.messageType.error);
653
+ }
654
+ }
655
+ this._appliedPropertyValues = newPropertyValues;
656
+ }
657
+ subscribeForDynamicUpdates() {
658
+ const changeMap = this._match.changeMap;
659
+ changeMap.forEach((changes, view) => {
660
+ if (changes.attributes) {
661
+ changes.attributes.forEach((attribute) => {
662
+ view.addEventListener(attribute + 'Change', this._onDynamicStateChangeHandler);
663
+ });
664
+ }
665
+ if (changes.pseudoClasses) {
666
+ changes.pseudoClasses.forEach((pseudoClass) => {
667
+ const eventName = ':' + pseudoClass;
668
+ view.addEventListener(':' + pseudoClass, this._onDynamicStateChangeHandler);
669
+ if (view[eventName]) {
670
+ view[eventName](true);
671
+ }
672
+ });
673
+ }
674
+ });
675
+ this._appliedChangeMap = changeMap;
676
+ }
677
+ unsubscribeFromDynamicUpdates() {
678
+ this._appliedChangeMap.forEach((changes, view) => {
679
+ if (changes.attributes) {
680
+ changes.attributes.forEach((attribute) => {
681
+ view.removeEventListener(attribute + 'Change', this._onDynamicStateChangeHandler);
682
+ });
683
+ }
684
+ if (changes.pseudoClasses) {
685
+ changes.pseudoClasses.forEach((pseudoClass) => {
686
+ const eventName = ':' + pseudoClass;
687
+ view.removeEventListener(eventName, this._onDynamicStateChangeHandler);
688
+ if (view[eventName]) {
689
+ view[eventName](false);
690
+ }
691
+ });
692
+ }
693
+ });
694
+ this._appliedChangeMap = CssState.emptyChangeMap;
695
+ }
696
+ toString() {
697
+ const view = this.viewRef.get();
698
+ if (!view) {
699
+ Trace.write(`toString() of CssState cannot execute correctly because ".viewRef" is cleared`, Trace.categories.Animation, Trace.messageType.warn);
700
+ return '';
701
+ }
702
+ return `${view}._cssState`;
703
+ }
704
+ }
705
+ CssState.emptyChangeMap = Object.freeze(new Map());
706
+ CssState.emptyPropertyBag = {};
707
+ CssState.emptyAnimationArray = Object.freeze([]);
708
+ CssState.emptyMatch = {
709
+ selectors: [],
710
+ changeMap: new Map(),
711
+ addAttribute: () => { },
712
+ addPseudoClass: () => { },
713
+ properties: null,
714
+ };
715
+ __decorate([
716
+ profile,
717
+ __metadata("design:type", Function),
718
+ __metadata("design:paramtypes", []),
719
+ __metadata("design:returntype", void 0)
720
+ ], CssState.prototype, "updateMatch", null);
721
+ __decorate([
722
+ profile,
723
+ __metadata("design:type", Function),
724
+ __metadata("design:paramtypes", []),
725
+ __metadata("design:returntype", void 0)
726
+ ], CssState.prototype, "updateDynamicState", null);
727
+ CssState.prototype._appliedChangeMap = CssState.emptyChangeMap;
728
+ CssState.prototype._appliedAnimations = CssState.emptyAnimationArray;
729
+ CssState.prototype._matchInvalid = true;
730
+ export class StyleScope {
731
+ constructor() {
732
+ this._css = '';
733
+ this._localCssSelectors = [];
734
+ this._localCssKeyframes = [];
735
+ this._localCssSelectorVersion = 0;
736
+ this._localCssSelectorsAppliedVersion = 0;
737
+ this._applicationCssSelectorsAppliedVersion = 0;
738
+ this._cssFiles = [];
739
+ }
740
+ get css() {
741
+ return this._css;
742
+ }
743
+ set css(value) {
744
+ this.setCss(value);
745
+ }
746
+ addCss(cssString, cssFileName) {
747
+ this.appendCss(cssString, cssFileName);
748
+ }
749
+ addCssFile(cssFileName) {
750
+ this.appendCss(null, cssFileName);
751
+ }
752
+ changeCssFile(cssFileName) {
753
+ if (!cssFileName) {
754
+ return;
755
+ }
756
+ this._cssFiles.push(cssFileName);
757
+ currentScopeTag = cssFileName;
758
+ const cssFile = CSSSource.fromURI(cssFileName);
759
+ currentScopeTag = null;
760
+ this._css = cssFile.source;
761
+ this._localCssSelectors = cssFile.selectors;
762
+ this._localCssKeyframes = cssFile.keyframes;
763
+ this._localCssSelectorVersion++;
764
+ this.ensureSelectors();
765
+ }
766
+ setCss(cssString, cssFileName) {
767
+ this._css = cssString;
768
+ const cssFile = CSSSource.fromSource(cssString, cssFileName);
769
+ this._localCssSelectors = cssFile.selectors;
770
+ this._localCssKeyframes = cssFile.keyframes;
771
+ this._localCssSelectorVersion++;
772
+ this.ensureSelectors();
773
+ }
774
+ appendCss(cssString, cssFileName) {
775
+ if (!cssString && !cssFileName) {
776
+ return;
777
+ }
778
+ if (cssFileName) {
779
+ this._cssFiles.push(cssFileName);
780
+ currentScopeTag = cssFileName;
781
+ }
782
+ const cssFile = cssString ? CSSSource.fromSource(cssString, cssFileName) : CSSSource.fromURI(cssFileName);
783
+ currentScopeTag = null;
784
+ this._css = this._css + cssFile.source;
785
+ this._localCssSelectors.push(...cssFile.selectors);
786
+ this._localCssKeyframes.push(...cssFile.keyframes);
787
+ this._localCssSelectorVersion++;
788
+ this.ensureSelectors();
789
+ }
790
+ getKeyframeAnimationWithName(animationName) {
791
+ if (!this._mergedCssKeyframes) {
792
+ return null;
793
+ }
794
+ const keyframeRule = this.findKeyframeRule(animationName);
795
+ const animation = new KeyframeAnimationInfo();
796
+ animation.keyframes = keyframeRule ? CssAnimationParser.keyframesArrayFromCSS(keyframeRule.keyframes) : null;
797
+ return animation;
798
+ }
799
+ ensureSelectors() {
800
+ if (!this.isApplicationCssSelectorsLatestVersionApplied() || !this.isLocalCssSelectorsLatestVersionApplied() || !this._mergedCssSelectors) {
801
+ this._createSelectors();
802
+ }
803
+ return this.getSelectorsVersion();
804
+ }
805
+ /**
806
+ * Increase the application CSS selector version.
807
+ */
808
+ _increaseApplicationCssSelectorVersion() {
809
+ applicationCssSelectorVersion++;
810
+ }
811
+ isApplicationCssSelectorsLatestVersionApplied() {
812
+ return this._applicationCssSelectorsAppliedVersion === applicationCssSelectorVersion;
813
+ }
814
+ isLocalCssSelectorsLatestVersionApplied() {
815
+ return this._localCssSelectorsAppliedVersion === this._localCssSelectorVersion;
816
+ }
817
+ _createSelectors() {
818
+ const toMerge = [];
819
+ const toMergeKeyframes = [];
820
+ toMerge.push(...mergedApplicationCssSelectors.filter((v) => !v.scopedTag || this._cssFiles.indexOf(v.scopedTag) >= 0));
821
+ toMergeKeyframes.push(...mergedApplicationCssKeyframes.filter((v) => !v.scopedTag || this._cssFiles.indexOf(v.scopedTag) >= 0));
822
+ this._applicationCssSelectorsAppliedVersion = applicationCssSelectorVersion;
823
+ toMerge.push(...this._localCssSelectors);
824
+ toMergeKeyframes.push(...this._localCssKeyframes);
825
+ this._localCssSelectorsAppliedVersion = this._localCssSelectorVersion;
826
+ if (toMerge.length > 0) {
827
+ this._mergedCssSelectors = toMerge;
828
+ this._selectorScope = new StyleSheetSelectorScope(this._mergedCssSelectors);
829
+ }
830
+ else {
831
+ this._mergedCssSelectors = null;
832
+ this._selectorScope = null;
833
+ }
834
+ this._mergedCssKeyframes = toMergeKeyframes.length > 0 ? toMergeKeyframes : null;
835
+ }
836
+ // HACK: This @profile decorator creates a circular dependency
837
+ // HACK: because the function parameter type is evaluated with 'typeof'
838
+ matchSelectors(view) {
839
+ let match;
840
+ // should be (view: ViewBase): SelectorsMatch<ViewBase>
841
+ this.ensureSelectors();
842
+ if (this._selectorScope) {
843
+ match = this._selectorScope.query(view);
844
+ // Make sure to re-apply keyframes to matching selectors as a media query keyframe might be applicable at this point
845
+ this._applyKeyframesToSelectors(match.selectors);
846
+ }
847
+ else {
848
+ match = null;
849
+ }
850
+ return match;
851
+ }
852
+ query(node) {
853
+ this.ensureSelectors();
854
+ const match = this.matchSelectors(node);
855
+ return match ? match.selectors : [];
856
+ }
857
+ getSelectorsVersion() {
858
+ // The counters can only go up. So we can return just appVersion + localVersion
859
+ // The 100000 * appVersion is just for easier debugging
860
+ return 100000 * this._applicationCssSelectorsAppliedVersion + this._localCssSelectorsAppliedVersion;
861
+ }
862
+ _applyKeyframesToSelectors(selectors) {
863
+ if (!selectors?.length) {
864
+ return;
865
+ }
866
+ for (let i = selectors.length - 1; i >= 0; i--) {
867
+ const ruleset = selectors[i].ruleset;
868
+ const animations = ruleset[animationsSymbol];
869
+ if (animations != null && animations.length) {
870
+ for (const animation of animations) {
871
+ const keyframeRule = this.findKeyframeRule(animation.name);
872
+ animation.keyframes = keyframeRule ? CssAnimationParser.keyframesArrayFromCSS(keyframeRule.keyframes) : null;
873
+ }
874
+ }
875
+ }
876
+ }
877
+ getAnimations(ruleset) {
878
+ return ruleset[animationsSymbol];
879
+ }
880
+ findKeyframeRule(animationName) {
881
+ if (!this._mergedCssKeyframes) {
882
+ return null;
883
+ }
884
+ // Cache media query results to avoid validations of other identical queries
885
+ let validatedMediaQueries;
886
+ // Iterate in reverse order as the last usable keyframe rule matters the most
887
+ for (let i = this._mergedCssKeyframes.length - 1; i >= 0; i--) {
888
+ const rule = this._mergedCssKeyframes[i];
889
+ if (rule.name !== animationName) {
890
+ continue;
891
+ }
892
+ if (!rule.mediaQueryString) {
893
+ return rule;
894
+ }
895
+ if (!validatedMediaQueries) {
896
+ validatedMediaQueries = [];
897
+ }
898
+ const isMatchingAllQueries = matchMediaQueryString(rule.mediaQueryString, validatedMediaQueries);
899
+ if (isMatchingAllQueries) {
900
+ return rule;
901
+ }
902
+ }
903
+ return null;
904
+ }
905
+ }
906
+ __decorate([
907
+ profile,
908
+ __metadata("design:type", Function),
909
+ __metadata("design:paramtypes", [String, Object]),
910
+ __metadata("design:returntype", void 0)
911
+ ], StyleScope.prototype, "setCss", null);
912
+ __decorate([
913
+ profile,
914
+ __metadata("design:type", Function),
915
+ __metadata("design:paramtypes", [String, Object]),
916
+ __metadata("design:returntype", void 0)
917
+ ], StyleScope.prototype, "appendCss", null);
918
+ __decorate([
919
+ profile,
920
+ __metadata("design:type", Function),
921
+ __metadata("design:paramtypes", []),
922
+ __metadata("design:returntype", void 0)
923
+ ], StyleScope.prototype, "_createSelectors", null);
924
+ __decorate([
925
+ profile,
926
+ __metadata("design:type", Function),
927
+ __metadata("design:paramtypes", [Object]),
928
+ __metadata("design:returntype", SelectorsMatch)
929
+ ], StyleScope.prototype, "matchSelectors", null);
930
+ export function resolveFileNameFromUrl(url, appDirectory, fileExists, importSource) {
931
+ let fileName = typeof url === 'string' ? url.trim() : '';
932
+ if (fileName.indexOf('~/') === 0) {
933
+ fileName = fileName.replace('~/', '');
934
+ }
935
+ const isAbsolutePath = fileName.indexOf('/') === 0;
936
+ const absolutePath = isAbsolutePath ? fileName : path.join(appDirectory, fileName);
937
+ if (fileExists(absolutePath)) {
938
+ return absolutePath;
939
+ }
940
+ if (!isAbsolutePath) {
941
+ if (fileName[0] === '~' && fileName[1] !== '/' && fileName[1] !== '"') {
942
+ fileName = fileName.substring(1);
943
+ }
944
+ if (importSource) {
945
+ const importFile = resolveFilePathFromImport(importSource, fileName);
946
+ if (fileExists(importFile)) {
947
+ return importFile;
948
+ }
949
+ }
950
+ const external = path.join(appDirectory, 'tns_modules', fileName);
951
+ if (fileExists(external)) {
952
+ return external;
953
+ }
954
+ }
955
+ return null;
956
+ }
957
+ function resolveFilePathFromImport(importSource, fileName) {
958
+ const importSourceParts = importSource.split(path.separator);
959
+ const fileNameParts = fileName
960
+ .split(path.separator)
961
+ // exclude the dot-segment for current directory
962
+ .filter((p) => !isCurrentDirectory(p));
963
+ // remove current file name
964
+ importSourceParts.pop();
965
+ // remove element in case of dot-segment for parent directory or add file name
966
+ fileNameParts.forEach((p) => (isParentDirectory(p) ? importSourceParts.pop() : importSourceParts.push(p)));
967
+ return importSourceParts.join(path.separator);
968
+ }
969
+ export const applyInlineStyle = profile(function applyInlineStyle(view, styleStr) {
970
+ const localStyle = `local { ${styleStr} }`;
971
+ const inlineRuleSet = CSSSource.fromSource(localStyle).selectors;
972
+ // Reset unscoped css-variables
973
+ view.style.resetUnscopedCssVariables();
974
+ // Set all the css-variables first, so we can be sure they are up-to-date
975
+ inlineRuleSet[0].declarations.forEach((d) => {
976
+ // Use the actual property name so that a local value is set.
977
+ const property = d.property;
978
+ if (isCssVariable(property)) {
979
+ view.style.setUnscopedCssVariable(property, d.value);
980
+ }
981
+ });
982
+ inlineRuleSet[0].declarations.forEach((d) => {
983
+ // Use the actual property name so that a local value is set.
984
+ const property = d.property;
985
+ try {
986
+ if (isCssVariable(property)) {
987
+ // Skip css-variables, they have been handled
988
+ return;
989
+ }
990
+ const value = evaluateCssExpressions(view, property, d.value);
991
+ if (property in view.style) {
992
+ view.style[property] = value;
993
+ }
994
+ else {
995
+ view[property] = value;
996
+ }
997
+ }
998
+ catch (e) {
999
+ Trace.write(`Failed to apply property [${d.property}] with value [${d.value}] to ${view}. ${e}`, Trace.categories.Error, Trace.messageType.error);
1000
+ }
1001
+ });
1002
+ // This is needed in case of changes to css-variable or css-calc expressions.
1003
+ view._onCssStateChange();
1004
+ });
1005
+ function isCurrentDirectory(uriPart) {
1006
+ return uriPart === '.';
1007
+ }
1008
+ function isParentDirectory(uriPart) {
1009
+ return uriPart === '..';
1010
+ }
1011
+ function isMedia(node) {
1012
+ return node.type === 'media';
1013
+ }
1014
+ function isKeyframe(node) {
1015
+ return node.type === 'keyframes';
1016
+ }
1017
+ function isRule(node) {
1018
+ return node.type === 'rule';
1019
+ }
1020
+ //# sourceMappingURL=style-scope.js.map