@react-native-ohos/react-native-svg 15.0.2-rc.5 → 15.12.1-rc.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 (548) hide show
  1. package/README.OpenSource +11 -0
  2. package/README.md +13 -0
  3. package/harmony/svg/BuildProfile.ets +17 -0
  4. package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/.ts_checker_cache +3052 -0
  5. package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/.tsbuildinfo +1 -0
  6. package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/.tsbuildinfo.linter +1 -0
  7. package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/compileInfo.json +1 -0
  8. package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/compiler.cache/modules/RNSVGImageModule.ts-7c464e69f4a700eeeaae44cf66ca5fd3b3e84299010d5c3a5643612ba1a48d70.msgpack +0 -0
  9. package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/compiler.cache/modules/RNSVGRenderableModule.ts-c2df5206c2aa9e868b7f24f706a131fff1236faaff78688ffdeec3ce25bf5d91.msgpack +0 -0
  10. package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/compiler.cache/modules/RNSVGSvgViewModule.ts-b9a699770b693eeaa2eb98307323dc9087e44afc9c01b08d222555636b3fac0d.msgpack +0 -0
  11. package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/compiler.cache/modules/SvgPackage.ts-08ac57d81b1742792af8813eac27abe5eca1a5714b1a5b76f97436b13abe48e4.msgpack +0 -0
  12. package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/compiler.cache/modules/index.ets-0e520bf323178f6f973ec12f44622042dcdd19e5032efd9bd02ac5606fb58275.msgpack +0 -0
  13. package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/compiler.cache/modules/ts.ts-1d50b47087f159616212dd3c5ecd04a204a5be09940b7dbba77a59e3a66499c2.msgpack +0 -0
  14. package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/compiler.cache/other/pkgName2SourceRoots.msgpack +1 -0
  15. package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/compiler.cache/plugins/plugins.msgpack +0 -0
  16. package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/dep_info.json +1 -0
  17. package/harmony/svg/build/default/cache/default/default@PackageHar/BuildProfile.ets +17 -0
  18. package/harmony/svg/build/default/cache/default/default@PackageHar/ResourceTable.txt +1 -0
  19. package/harmony/svg/build/default/cache/default/default@PackageHar/build-profile.json5 +9 -0
  20. package/harmony/svg/build/default/cache/default/default@PackageHar/hvigorfile.ts +2 -0
  21. package/harmony/svg/build/default/cache/default/default@PackageHar/index.ets +7 -0
  22. package/harmony/svg/build/default/cache/default/default@PackageHar/oh-package-lock.json5 +19 -0
  23. package/harmony/svg/build/default/cache/default/default@PackageHar/oh-package.json5 +1 -0
  24. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/Attribute.h +52 -0
  25. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/CMakeLists.txt +32 -0
  26. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/FallbackProps.h +0 -0
  27. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/FontHolderBase.cpp +22 -0
  28. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/FontHolderBase.h +54 -0
  29. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SVGPackage.cpp +135 -0
  30. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SVGPackage.h +157 -0
  31. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgArkUINode.cpp +78 -0
  32. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgArkUINode.h +51 -0
  33. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgBaseAttribute.h +83 -0
  34. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgCircle.cpp +29 -0
  35. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgCircle.h +29 -0
  36. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgClipPath.h +22 -0
  37. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgContext.cpp +56 -0
  38. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgContext.h +71 -0
  39. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgDefs.h +46 -0
  40. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgEllipse.cpp +32 -0
  41. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgEllipse.h +34 -0
  42. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgFilter.cpp +505 -0
  43. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgFilter.h +112 -0
  44. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgForeignObjectNode.cpp +86 -0
  45. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgForeignObjectNode.h +81 -0
  46. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgForeignObjectNodeDelegate.h +30 -0
  47. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgForeignProps.h +39 -0
  48. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgGradient.cpp +117 -0
  49. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgGradient.h +49 -0
  50. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgGraphic.cpp +553 -0
  51. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgGraphic.h +77 -0
  52. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgGroup.cpp +93 -0
  53. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgGroup.h +41 -0
  54. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgHost.cpp +27 -0
  55. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgHost.h +38 -0
  56. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgImage.cpp +168 -0
  57. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgImage.h +52 -0
  58. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgLine.cpp +28 -0
  59. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgLine.h +32 -0
  60. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgMarker.cpp +61 -0
  61. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgMarker.h +86 -0
  62. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgMask.cpp +72 -0
  63. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgMask.h +68 -0
  64. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgNode.cpp +395 -0
  65. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgNode.h +377 -0
  66. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgPath.cpp +42 -0
  67. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgPath.h +29 -0
  68. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgPattern.cpp +77 -0
  69. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgPattern.h +64 -0
  70. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgQuote.h +87 -0
  71. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgRect.cpp +58 -0
  72. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgRect.h +33 -0
  73. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgSvg.cpp +83 -0
  74. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgSvg.h +52 -0
  75. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgSymbol.cpp +25 -0
  76. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgSymbol.h +37 -0
  77. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgTSpan.cpp +501 -0
  78. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgTSpan.h +101 -0
  79. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgText.cpp +48 -0
  80. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgText.h +29 -0
  81. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgTextPath.cpp +35 -0
  82. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgTextPath.h +51 -0
  83. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgUse.cpp +65 -0
  84. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgUse.h +46 -0
  85. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgViewManager.cpp +36 -0
  86. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgViewManager.h +37 -0
  87. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/TextBase.cpp +20 -0
  88. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/TextBase.h +114 -0
  89. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGBaseComponentInstance.h +212 -0
  90. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGCircleComponentInstance.cpp +31 -0
  91. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGCircleComponentInstance.h +27 -0
  92. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGClipPathComponentInstance.cpp +23 -0
  93. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGClipPathComponentInstance.h +27 -0
  94. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGDefsComponentInstance.cpp +23 -0
  95. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGDefsComponentInstance.h +28 -0
  96. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGEllipseComponentInstance.cpp +27 -0
  97. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGEllipseComponentInstance.h +27 -0
  98. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeBlendComponentInstance.cpp +40 -0
  99. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeBlendComponentInstance.h +48 -0
  100. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeColorMatrixComponentInstance.cpp +33 -0
  101. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeColorMatrixComponentInstance.h +48 -0
  102. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeCompositeComponentInstance.cpp +39 -0
  103. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeCompositeComponentInstance.h +55 -0
  104. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeFloodComponentInstance.cpp +33 -0
  105. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeFloodComponentInstance.h +49 -0
  106. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeGaussianBlurComponentInstance.cpp +34 -0
  107. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeGaussianBlurComponentInstance.h +48 -0
  108. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeOffsetComponentInstance.cpp +35 -0
  109. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeOffsetComponentInstance.h +46 -0
  110. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFilterComponentInstance.cpp +199 -0
  111. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFilterComponentInstance.h +48 -0
  112. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGForeignObjectComponentInstance.cpp +93 -0
  113. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGForeignObjectComponentInstance.h +55 -0
  114. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGGroupComponentInstance.cpp +32 -0
  115. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGGroupComponentInstance.h +31 -0
  116. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGImageComponentInstance.cpp +103 -0
  117. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGImageComponentInstance.h +43 -0
  118. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGLineComponentInstance.cpp +27 -0
  119. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGLineComponentInstance.h +27 -0
  120. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGLinearGradientComponentInstance.cpp +30 -0
  121. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGLinearGradientComponentInstance.h +28 -0
  122. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGMarkerComponentInstance.cpp +35 -0
  123. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGMarkerComponentInstance.h +27 -0
  124. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGMaskComponentInstance.cpp +30 -0
  125. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGMaskComponentInstance.h +27 -0
  126. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGPathComponentInstance.cpp +33 -0
  127. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGPathComponentInstance.h +29 -0
  128. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGPatternComponentInstance.cpp +40 -0
  129. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGPatternComponentInstance.h +27 -0
  130. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGRadialGradientComponentInstance.cpp +32 -0
  131. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGRadialGradientComponentInstance.h +28 -0
  132. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGRectComponentInstance.cpp +36 -0
  133. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGRectComponentInstance.h +27 -0
  134. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGSvgViewComponentInstance.cpp +124 -0
  135. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGSvgViewComponentInstance.h +56 -0
  136. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGSymbolComponentInstance.cpp +30 -0
  137. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGSymbolComponentInstance.h +27 -0
  138. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGTSpanComponentInstance.cpp +27 -0
  139. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGTSpanComponentInstance.h +27 -0
  140. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGTextComponentInstance.cpp +25 -0
  141. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGTextComponentInstance.h +27 -0
  142. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGTextPathComponentInstance.cpp +32 -0
  143. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGTextPathComponentInstance.h +27 -0
  144. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGUseComponentInstance.cpp +32 -0
  145. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGUseComponentInstance.h +32 -0
  146. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/downloadUtils/HttpTaskProcessor.cpp +266 -0
  147. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/downloadUtils/HttpTaskProcessor.h +88 -0
  148. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/downloadUtils/ImageSourceResolver.cpp +134 -0
  149. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/downloadUtils/ImageSourceResolver.h +93 -0
  150. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/downloadUtils/LRUCache.h +98 -0
  151. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Brush.cpp +50 -0
  152. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Brush.h +52 -0
  153. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/GlyPathBag.cpp +20 -0
  154. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/GlyPathBag.h +31 -0
  155. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Matrix.cpp +100 -0
  156. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Matrix.h +68 -0
  157. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Path.cpp +173 -0
  158. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Path.h +127 -0
  159. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Pen.cpp +57 -0
  160. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Pen.h +59 -0
  161. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Rect.cpp +47 -0
  162. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Rect.h +56 -0
  163. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/RoundRect.cpp +24 -0
  164. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/RoundRect.h +39 -0
  165. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/ShaderEffect.cpp +37 -0
  166. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/ShaderEffect.h +51 -0
  167. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/TextStyle.cpp +49 -0
  168. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/TextStyle.h +41 -0
  169. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Typography.cpp +9 -0
  170. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Typography.h +25 -0
  171. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/TypographyStyle.cpp +31 -0
  172. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/TypographyStyle.h +41 -0
  173. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGCircleJSIBinder.h +54 -0
  174. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGClipPathJSIBinder.h +54 -0
  175. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGDefsJSIBinder.h +38 -0
  176. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGEllipseJSIBinder.h +55 -0
  177. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGFeBlendJSIBinder.h +26 -0
  178. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGFeColorMatrixJSIBinder.h +26 -0
  179. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGFeCompositeJSIBinder.h +30 -0
  180. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGFeFloodJSIBinder.h +26 -0
  181. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGFeGaussianBlurJSIBinder.h +27 -0
  182. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGFeOffsetJSIBinder.h +26 -0
  183. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGFilterJSIBinder.h +44 -0
  184. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGForeignObjectJSIBinder.h +57 -0
  185. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGGroupJSIBinder.h +54 -0
  186. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGImageJSIBinder.h +58 -0
  187. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGLineJSIBinder.h +55 -0
  188. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGLinearGradientJSIBinder.h +45 -0
  189. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGMarkerJSIBinder.h +66 -0
  190. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGMaskJSIBinder.h +60 -0
  191. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGPathJSIBinder.h +52 -0
  192. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGPatternJSIBinder.h +67 -0
  193. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGRadialGradientJSIBinder.h +47 -0
  194. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGRectJSIBinder.h +57 -0
  195. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGSvgViewAndroidJSIBinder.h +67 -0
  196. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGSvgViewJSIBinder.h +36 -0
  197. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGSymbolJSIBinder.h +60 -0
  198. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGTSpanJSIBinder.h +66 -0
  199. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGTextJSIBinder.h +65 -0
  200. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGTextPathJSIBinder.h +71 -0
  201. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGUseJSIBinder.h +56 -0
  202. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/ComponentDescriptors.h +48 -0
  203. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/EventEmitters.cpp +20 -0
  204. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/EventEmitters.h +253 -0
  205. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/Props.cpp +977 -0
  206. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/Props.h +1280 -0
  207. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/ShadowNodes.cpp +45 -0
  208. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/ShadowNodes.h +331 -0
  209. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/States.cpp +18 -0
  210. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/States.h +441 -0
  211. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Color.cpp +458 -0
  212. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Color.h +144 -0
  213. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Decoration.cpp +41 -0
  214. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Decoration.h +483 -0
  215. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Dimension.cpp +64 -0
  216. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Dimension.h +257 -0
  217. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Font.cpp +166 -0
  218. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Font.h +163 -0
  219. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Offset.h +119 -0
  220. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/PaintState.h +240 -0
  221. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Rect.h +423 -0
  222. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Size.h +246 -0
  223. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/SvgPaintState.h +452 -0
  224. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/TextProperties.cpp +91 -0
  225. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/TextProperties.h +56 -0
  226. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/ViewBox.h +108 -0
  227. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/svgImage/RNSVGImageComponentDescriptor.h +41 -0
  228. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/svgImage/RNSVGImageShadowNode.cpp +62 -0
  229. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/svgImage/RNSVGImageShadowNode.h +63 -0
  230. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/svgImage/RNSVGImageState.cpp +17 -0
  231. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/svgImage/RNSVGImageState.h +58 -0
  232. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/turboModules/RNSVGImageModule.cpp +83 -0
  233. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/turboModules/RNSVGImageModule.h +32 -0
  234. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/turboModules/RNSVGRenderableModule.cpp +101 -0
  235. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/turboModules/RNSVGRenderableModule.h +32 -0
  236. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/turboModules/RNSVGSvgViewModule.cpp +71 -0
  237. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/turboModules/RNSVGSvgViewModule.h +32 -0
  238. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/DynamicUtils.h +55 -0
  239. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/FilterManager.h +190 -0
  240. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/GlyphContext.cpp +221 -0
  241. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/GlyphContext.h +106 -0
  242. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/LinearMap.h +69 -0
  243. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/PathParserUtils.cpp +591 -0
  244. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/PathParserUtils.h +93 -0
  245. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/StringUtils.cpp +134 -0
  246. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/StringUtils.h +644 -0
  247. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/SvgAttributesParser.cpp +239 -0
  248. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/SvgAttributesParser.h +277 -0
  249. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/SvgMarkerPositionUtils.h +200 -0
  250. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/SvgUtils.h +176 -0
  251. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/TextPathHelper.cpp +94 -0
  252. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/TextPathHelper.h +61 -0
  253. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/ets/RNSVGImageModule.ts +21 -0
  254. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/ets/RNSVGRenderableModule.ts +16 -0
  255. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/ets/RNSVGSvgViewModule.ts +18 -0
  256. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/ets/SvgPackage.ts +58 -0
  257. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/module.json +30 -0
  258. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/resources/base/element/string.json +8 -0
  259. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/resources/en_US/element/string.json +8 -0
  260. package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/resources/zh_CN/element/string.json +8 -0
  261. package/harmony/svg/build/default/cache/default/default@PackageHar/ts.ts +8 -0
  262. package/harmony/svg/build/default/generated/pm/default/oh-package.json5 +1 -0
  263. package/harmony/svg/build/default/generated/r/default/ResourceTable.h +24 -0
  264. package/harmony/svg/build/default/intermediates/loader/default/loader.json +26 -0
  265. package/harmony/svg/build/default/intermediates/merge_profile/default/module.json +27 -0
  266. package/harmony/svg/build/default/intermediates/patch/default/base_native_libs.json +1 -0
  267. package/harmony/svg/build/default/intermediates/process_profile/default/module.json +30 -0
  268. package/harmony/svg/build/default/intermediates/res/default/ResourceTable.txt +1 -0
  269. package/harmony/svg/build/default/intermediates/res/default/ark_module.json +1 -0
  270. package/harmony/svg/build/default/intermediates/res/default/ids_map/id_defined.json +7 -0
  271. package/harmony/svg/build/default/intermediates/res/default/module.json +28 -0
  272. package/harmony/svg/build/default/intermediates/res/default/opt-compression.json +1 -0
  273. package/harmony/svg/build/default/intermediates/res/default/resConfig.json +1 -0
  274. package/harmony/svg/build/default/intermediates/res/default/resources/rawfile/rnoh.profdata +0 -0
  275. package/harmony/svg/build/default/intermediates/res/default/resources.index +0 -0
  276. package/harmony/svg/build/default/outputs/default/svg.har +0 -0
  277. package/harmony/svg/build-profile.json5 +9 -0
  278. package/harmony/svg/hvigorfile.ts +2 -0
  279. package/harmony/svg/index.ets +7 -0
  280. package/harmony/svg/oh-package.json5 +13 -0
  281. package/harmony/svg/src/main/cpp/Attribute.h +52 -0
  282. package/harmony/svg/src/main/cpp/CMakeLists.txt +32 -0
  283. package/harmony/svg/src/main/cpp/FallbackProps.h +0 -0
  284. package/harmony/svg/src/main/cpp/FontHolderBase.cpp +22 -0
  285. package/harmony/svg/src/main/cpp/FontHolderBase.h +54 -0
  286. package/harmony/svg/src/main/cpp/SVGPackage.cpp +135 -0
  287. package/harmony/svg/src/main/cpp/SVGPackage.h +157 -0
  288. package/harmony/svg/src/main/cpp/SvgArkUINode.cpp +78 -0
  289. package/harmony/svg/src/main/cpp/SvgArkUINode.h +51 -0
  290. package/harmony/svg/src/main/cpp/SvgBaseAttribute.h +83 -0
  291. package/harmony/svg/src/main/cpp/SvgCircle.cpp +29 -0
  292. package/harmony/svg/src/main/cpp/SvgCircle.h +29 -0
  293. package/harmony/svg/src/main/cpp/SvgClipPath.h +22 -0
  294. package/harmony/svg/src/main/cpp/SvgContext.cpp +56 -0
  295. package/harmony/svg/src/main/cpp/SvgContext.h +71 -0
  296. package/harmony/svg/src/main/cpp/SvgDefs.h +46 -0
  297. package/harmony/svg/src/main/cpp/SvgEllipse.cpp +32 -0
  298. package/harmony/svg/src/main/cpp/SvgEllipse.h +34 -0
  299. package/harmony/svg/src/main/cpp/SvgFilter.cpp +505 -0
  300. package/harmony/svg/src/main/cpp/SvgFilter.h +112 -0
  301. package/harmony/svg/src/main/cpp/SvgForeignObjectNode.cpp +86 -0
  302. package/harmony/svg/src/main/cpp/SvgForeignObjectNode.h +81 -0
  303. package/harmony/svg/src/main/cpp/SvgForeignObjectNodeDelegate.h +30 -0
  304. package/harmony/svg/src/main/cpp/SvgForeignProps.h +39 -0
  305. package/harmony/svg/src/main/cpp/SvgGradient.cpp +117 -0
  306. package/harmony/svg/src/main/cpp/SvgGradient.h +49 -0
  307. package/harmony/svg/src/main/cpp/SvgGraphic.cpp +553 -0
  308. package/harmony/svg/src/main/cpp/SvgGraphic.h +77 -0
  309. package/harmony/svg/src/main/cpp/SvgGroup.cpp +93 -0
  310. package/harmony/svg/src/main/cpp/SvgGroup.h +41 -0
  311. package/harmony/svg/src/main/cpp/SvgHost.cpp +27 -0
  312. package/harmony/svg/src/main/cpp/SvgHost.h +38 -0
  313. package/harmony/svg/src/main/cpp/SvgImage.cpp +168 -0
  314. package/harmony/svg/src/main/cpp/SvgImage.h +52 -0
  315. package/harmony/svg/src/main/cpp/SvgLine.cpp +28 -0
  316. package/harmony/svg/src/main/cpp/SvgLine.h +32 -0
  317. package/harmony/svg/src/main/cpp/SvgMarker.cpp +61 -0
  318. package/harmony/svg/src/main/cpp/SvgMarker.h +86 -0
  319. package/harmony/svg/src/main/cpp/SvgMask.cpp +72 -0
  320. package/harmony/svg/src/main/cpp/SvgMask.h +68 -0
  321. package/harmony/svg/src/main/cpp/SvgNode.cpp +395 -0
  322. package/harmony/svg/src/main/cpp/SvgNode.h +377 -0
  323. package/harmony/svg/src/main/cpp/SvgPath.cpp +42 -0
  324. package/harmony/svg/src/main/cpp/SvgPath.h +29 -0
  325. package/harmony/svg/src/main/cpp/SvgPattern.cpp +77 -0
  326. package/harmony/svg/src/main/cpp/SvgPattern.h +64 -0
  327. package/harmony/svg/src/main/cpp/SvgQuote.h +87 -0
  328. package/harmony/svg/src/main/cpp/SvgRect.cpp +58 -0
  329. package/harmony/svg/src/main/cpp/SvgRect.h +33 -0
  330. package/harmony/svg/src/main/cpp/SvgSvg.cpp +83 -0
  331. package/harmony/svg/src/main/cpp/SvgSvg.h +52 -0
  332. package/harmony/svg/src/main/cpp/SvgSymbol.cpp +25 -0
  333. package/harmony/svg/src/main/cpp/SvgSymbol.h +37 -0
  334. package/harmony/svg/src/main/cpp/SvgTSpan.cpp +501 -0
  335. package/harmony/svg/src/main/cpp/SvgTSpan.h +101 -0
  336. package/harmony/svg/src/main/cpp/SvgText.cpp +48 -0
  337. package/harmony/svg/src/main/cpp/SvgText.h +29 -0
  338. package/harmony/svg/src/main/cpp/SvgTextPath.cpp +35 -0
  339. package/harmony/svg/src/main/cpp/SvgTextPath.h +51 -0
  340. package/harmony/svg/src/main/cpp/SvgUse.cpp +65 -0
  341. package/harmony/svg/src/main/cpp/SvgUse.h +46 -0
  342. package/harmony/svg/src/main/cpp/SvgViewManager.cpp +36 -0
  343. package/harmony/svg/src/main/cpp/SvgViewManager.h +37 -0
  344. package/harmony/svg/src/main/cpp/TextBase.cpp +20 -0
  345. package/harmony/svg/src/main/cpp/TextBase.h +114 -0
  346. package/harmony/svg/src/main/cpp/componentInstances/RNSVGBaseComponentInstance.h +212 -0
  347. package/harmony/svg/src/main/cpp/componentInstances/RNSVGCircleComponentInstance.cpp +31 -0
  348. package/harmony/svg/src/main/cpp/componentInstances/RNSVGCircleComponentInstance.h +27 -0
  349. package/harmony/svg/src/main/cpp/componentInstances/RNSVGClipPathComponentInstance.cpp +23 -0
  350. package/harmony/svg/src/main/cpp/componentInstances/RNSVGClipPathComponentInstance.h +27 -0
  351. package/harmony/svg/src/main/cpp/componentInstances/RNSVGDefsComponentInstance.cpp +23 -0
  352. package/harmony/svg/src/main/cpp/componentInstances/RNSVGDefsComponentInstance.h +28 -0
  353. package/harmony/svg/src/main/cpp/componentInstances/RNSVGEllipseComponentInstance.cpp +27 -0
  354. package/harmony/svg/src/main/cpp/componentInstances/RNSVGEllipseComponentInstance.h +27 -0
  355. package/harmony/svg/src/main/cpp/componentInstances/RNSVGFeBlendComponentInstance.cpp +40 -0
  356. package/harmony/svg/src/main/cpp/componentInstances/RNSVGFeBlendComponentInstance.h +48 -0
  357. package/harmony/svg/src/main/cpp/componentInstances/RNSVGFeColorMatrixComponentInstance.cpp +33 -0
  358. package/harmony/svg/src/main/cpp/componentInstances/RNSVGFeColorMatrixComponentInstance.h +48 -0
  359. package/harmony/svg/src/main/cpp/componentInstances/RNSVGFeCompositeComponentInstance.cpp +39 -0
  360. package/harmony/svg/src/main/cpp/componentInstances/RNSVGFeCompositeComponentInstance.h +55 -0
  361. package/harmony/svg/src/main/cpp/componentInstances/RNSVGFeFloodComponentInstance.cpp +33 -0
  362. package/harmony/svg/src/main/cpp/componentInstances/RNSVGFeFloodComponentInstance.h +49 -0
  363. package/harmony/svg/src/main/cpp/componentInstances/RNSVGFeGaussianBlurComponentInstance.cpp +34 -0
  364. package/harmony/svg/src/main/cpp/componentInstances/RNSVGFeGaussianBlurComponentInstance.h +48 -0
  365. package/harmony/svg/src/main/cpp/componentInstances/RNSVGFeOffsetComponentInstance.cpp +35 -0
  366. package/harmony/svg/src/main/cpp/componentInstances/RNSVGFeOffsetComponentInstance.h +46 -0
  367. package/harmony/svg/src/main/cpp/componentInstances/RNSVGFilterComponentInstance.cpp +199 -0
  368. package/harmony/svg/src/main/cpp/componentInstances/RNSVGFilterComponentInstance.h +48 -0
  369. package/harmony/svg/src/main/cpp/componentInstances/RNSVGForeignObjectComponentInstance.cpp +93 -0
  370. package/harmony/svg/src/main/cpp/componentInstances/RNSVGForeignObjectComponentInstance.h +55 -0
  371. package/harmony/svg/src/main/cpp/componentInstances/RNSVGGroupComponentInstance.cpp +32 -0
  372. package/harmony/svg/src/main/cpp/componentInstances/RNSVGGroupComponentInstance.h +31 -0
  373. package/harmony/svg/src/main/cpp/componentInstances/RNSVGImageComponentInstance.cpp +103 -0
  374. package/harmony/svg/src/main/cpp/componentInstances/RNSVGImageComponentInstance.h +43 -0
  375. package/harmony/svg/src/main/cpp/componentInstances/RNSVGLineComponentInstance.cpp +27 -0
  376. package/harmony/svg/src/main/cpp/componentInstances/RNSVGLineComponentInstance.h +27 -0
  377. package/harmony/svg/src/main/cpp/componentInstances/RNSVGLinearGradientComponentInstance.cpp +30 -0
  378. package/harmony/svg/src/main/cpp/componentInstances/RNSVGLinearGradientComponentInstance.h +28 -0
  379. package/harmony/svg/src/main/cpp/componentInstances/RNSVGMarkerComponentInstance.cpp +35 -0
  380. package/harmony/svg/src/main/cpp/componentInstances/RNSVGMarkerComponentInstance.h +27 -0
  381. package/harmony/svg/src/main/cpp/componentInstances/RNSVGMaskComponentInstance.cpp +30 -0
  382. package/harmony/svg/src/main/cpp/componentInstances/RNSVGMaskComponentInstance.h +27 -0
  383. package/harmony/svg/src/main/cpp/componentInstances/RNSVGPathComponentInstance.cpp +33 -0
  384. package/harmony/svg/src/main/cpp/componentInstances/RNSVGPathComponentInstance.h +29 -0
  385. package/harmony/svg/src/main/cpp/componentInstances/RNSVGPatternComponentInstance.cpp +40 -0
  386. package/harmony/svg/src/main/cpp/componentInstances/RNSVGPatternComponentInstance.h +27 -0
  387. package/harmony/svg/src/main/cpp/componentInstances/RNSVGRadialGradientComponentInstance.cpp +32 -0
  388. package/harmony/svg/src/main/cpp/componentInstances/RNSVGRadialGradientComponentInstance.h +28 -0
  389. package/harmony/svg/src/main/cpp/componentInstances/RNSVGRectComponentInstance.cpp +36 -0
  390. package/harmony/svg/src/main/cpp/componentInstances/RNSVGRectComponentInstance.h +27 -0
  391. package/harmony/svg/src/main/cpp/componentInstances/RNSVGSvgViewComponentInstance.cpp +124 -0
  392. package/harmony/svg/src/main/cpp/componentInstances/RNSVGSvgViewComponentInstance.h +56 -0
  393. package/harmony/svg/src/main/cpp/componentInstances/RNSVGSymbolComponentInstance.cpp +30 -0
  394. package/harmony/svg/src/main/cpp/componentInstances/RNSVGSymbolComponentInstance.h +27 -0
  395. package/harmony/svg/src/main/cpp/componentInstances/RNSVGTSpanComponentInstance.cpp +27 -0
  396. package/harmony/svg/src/main/cpp/componentInstances/RNSVGTSpanComponentInstance.h +27 -0
  397. package/harmony/svg/src/main/cpp/componentInstances/RNSVGTextComponentInstance.cpp +25 -0
  398. package/harmony/svg/src/main/cpp/componentInstances/RNSVGTextComponentInstance.h +27 -0
  399. package/harmony/svg/src/main/cpp/componentInstances/RNSVGTextPathComponentInstance.cpp +32 -0
  400. package/harmony/svg/src/main/cpp/componentInstances/RNSVGTextPathComponentInstance.h +27 -0
  401. package/harmony/svg/src/main/cpp/componentInstances/RNSVGUseComponentInstance.cpp +32 -0
  402. package/harmony/svg/src/main/cpp/componentInstances/RNSVGUseComponentInstance.h +32 -0
  403. package/harmony/svg/src/main/cpp/downloadUtils/HttpTaskProcessor.cpp +266 -0
  404. package/harmony/svg/src/main/cpp/downloadUtils/HttpTaskProcessor.h +88 -0
  405. package/harmony/svg/src/main/cpp/downloadUtils/ImageSourceResolver.cpp +134 -0
  406. package/harmony/svg/src/main/cpp/downloadUtils/ImageSourceResolver.h +93 -0
  407. package/harmony/svg/src/main/cpp/downloadUtils/LRUCache.h +98 -0
  408. package/harmony/svg/src/main/cpp/drawing/Brush.cpp +50 -0
  409. package/harmony/svg/src/main/cpp/drawing/Brush.h +52 -0
  410. package/harmony/svg/src/main/cpp/drawing/GlyPathBag.cpp +20 -0
  411. package/harmony/svg/src/main/cpp/drawing/GlyPathBag.h +31 -0
  412. package/harmony/svg/src/main/cpp/drawing/Matrix.cpp +100 -0
  413. package/harmony/svg/src/main/cpp/drawing/Matrix.h +68 -0
  414. package/harmony/svg/src/main/cpp/drawing/Path.cpp +173 -0
  415. package/harmony/svg/src/main/cpp/drawing/Path.h +127 -0
  416. package/harmony/svg/src/main/cpp/drawing/Pen.cpp +57 -0
  417. package/harmony/svg/src/main/cpp/drawing/Pen.h +59 -0
  418. package/harmony/svg/src/main/cpp/drawing/Rect.cpp +47 -0
  419. package/harmony/svg/src/main/cpp/drawing/Rect.h +56 -0
  420. package/harmony/svg/src/main/cpp/drawing/RoundRect.cpp +24 -0
  421. package/harmony/svg/src/main/cpp/drawing/RoundRect.h +39 -0
  422. package/harmony/svg/src/main/cpp/drawing/ShaderEffect.cpp +37 -0
  423. package/harmony/svg/src/main/cpp/drawing/ShaderEffect.h +51 -0
  424. package/harmony/svg/src/main/cpp/drawing/TextStyle.cpp +49 -0
  425. package/harmony/svg/src/main/cpp/drawing/TextStyle.h +41 -0
  426. package/harmony/svg/src/main/cpp/drawing/Typography.cpp +9 -0
  427. package/harmony/svg/src/main/cpp/drawing/Typography.h +25 -0
  428. package/harmony/svg/src/main/cpp/drawing/TypographyStyle.cpp +31 -0
  429. package/harmony/svg/src/main/cpp/drawing/TypographyStyle.h +41 -0
  430. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGCircleJSIBinder.h +54 -0
  431. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGClipPathJSIBinder.h +54 -0
  432. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGDefsJSIBinder.h +38 -0
  433. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGEllipseJSIBinder.h +55 -0
  434. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGFeBlendJSIBinder.h +26 -0
  435. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGFeColorMatrixJSIBinder.h +26 -0
  436. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGFeCompositeJSIBinder.h +30 -0
  437. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGFeFloodJSIBinder.h +26 -0
  438. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGFeGaussianBlurJSIBinder.h +27 -0
  439. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGFeOffsetJSIBinder.h +26 -0
  440. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGFilterJSIBinder.h +44 -0
  441. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGForeignObjectJSIBinder.h +57 -0
  442. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGGroupJSIBinder.h +54 -0
  443. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGImageJSIBinder.h +58 -0
  444. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGLineJSIBinder.h +55 -0
  445. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGLinearGradientJSIBinder.h +45 -0
  446. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGMarkerJSIBinder.h +66 -0
  447. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGMaskJSIBinder.h +60 -0
  448. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGPathJSIBinder.h +52 -0
  449. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGPatternJSIBinder.h +67 -0
  450. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGRadialGradientJSIBinder.h +47 -0
  451. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGRectJSIBinder.h +57 -0
  452. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGSvgViewAndroidJSIBinder.h +67 -0
  453. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGSvgViewJSIBinder.h +36 -0
  454. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGSymbolJSIBinder.h +60 -0
  455. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGTSpanJSIBinder.h +66 -0
  456. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGTextJSIBinder.h +65 -0
  457. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGTextPathJSIBinder.h +71 -0
  458. package/harmony/svg/src/main/cpp/generated/RNOH/generated/components/RNSVGUseJSIBinder.h +56 -0
  459. package/harmony/svg/src/main/cpp/generated/react/renderer/components/react_native_svg/ComponentDescriptors.h +48 -0
  460. package/harmony/svg/src/main/cpp/generated/react/renderer/components/react_native_svg/EventEmitters.cpp +20 -0
  461. package/harmony/svg/src/main/cpp/generated/react/renderer/components/react_native_svg/EventEmitters.h +253 -0
  462. package/harmony/svg/src/main/cpp/generated/react/renderer/components/react_native_svg/Props.cpp +977 -0
  463. package/harmony/svg/src/main/cpp/generated/react/renderer/components/react_native_svg/Props.h +1280 -0
  464. package/harmony/svg/src/main/cpp/generated/react/renderer/components/react_native_svg/ShadowNodes.cpp +45 -0
  465. package/harmony/svg/src/main/cpp/generated/react/renderer/components/react_native_svg/ShadowNodes.h +331 -0
  466. package/harmony/svg/src/main/cpp/generated/react/renderer/components/react_native_svg/States.cpp +18 -0
  467. package/harmony/svg/src/main/cpp/generated/react/renderer/components/react_native_svg/States.h +441 -0
  468. package/harmony/svg/src/main/cpp/properties/Color.cpp +458 -0
  469. package/harmony/svg/src/main/cpp/properties/Color.h +144 -0
  470. package/harmony/svg/src/main/cpp/properties/Decoration.cpp +41 -0
  471. package/harmony/svg/src/main/cpp/properties/Decoration.h +483 -0
  472. package/harmony/svg/src/main/cpp/properties/Dimension.cpp +64 -0
  473. package/harmony/svg/src/main/cpp/properties/Dimension.h +257 -0
  474. package/harmony/svg/src/main/cpp/properties/Font.cpp +166 -0
  475. package/harmony/svg/src/main/cpp/properties/Font.h +163 -0
  476. package/harmony/svg/src/main/cpp/properties/Offset.h +119 -0
  477. package/harmony/svg/src/main/cpp/properties/PaintState.h +240 -0
  478. package/harmony/svg/src/main/cpp/properties/Rect.h +423 -0
  479. package/harmony/svg/src/main/cpp/properties/Size.h +246 -0
  480. package/harmony/svg/src/main/cpp/properties/SvgPaintState.h +452 -0
  481. package/harmony/svg/src/main/cpp/properties/TextProperties.cpp +91 -0
  482. package/harmony/svg/src/main/cpp/properties/TextProperties.h +56 -0
  483. package/harmony/svg/src/main/cpp/properties/ViewBox.h +108 -0
  484. package/harmony/svg/src/main/cpp/svgImage/RNSVGImageComponentDescriptor.h +41 -0
  485. package/harmony/svg/src/main/cpp/svgImage/RNSVGImageShadowNode.cpp +62 -0
  486. package/harmony/svg/src/main/cpp/svgImage/RNSVGImageShadowNode.h +63 -0
  487. package/harmony/svg/src/main/cpp/svgImage/RNSVGImageState.cpp +17 -0
  488. package/harmony/svg/src/main/cpp/svgImage/RNSVGImageState.h +58 -0
  489. package/harmony/svg/src/main/cpp/turboModules/RNSVGImageModule.cpp +83 -0
  490. package/harmony/svg/src/main/cpp/turboModules/RNSVGImageModule.h +32 -0
  491. package/harmony/svg/src/main/cpp/turboModules/RNSVGRenderableModule.cpp +101 -0
  492. package/harmony/svg/src/main/cpp/turboModules/RNSVGRenderableModule.h +32 -0
  493. package/harmony/svg/src/main/cpp/turboModules/RNSVGSvgViewModule.cpp +71 -0
  494. package/harmony/svg/src/main/cpp/turboModules/RNSVGSvgViewModule.h +32 -0
  495. package/harmony/svg/src/main/cpp/utils/DynamicUtils.h +55 -0
  496. package/harmony/svg/src/main/cpp/utils/FilterManager.h +190 -0
  497. package/harmony/svg/src/main/cpp/utils/GlyphContext.cpp +221 -0
  498. package/harmony/svg/src/main/cpp/utils/GlyphContext.h +106 -0
  499. package/harmony/svg/src/main/cpp/utils/LinearMap.h +69 -0
  500. package/harmony/svg/src/main/cpp/utils/PathParserUtils.cpp +591 -0
  501. package/harmony/svg/src/main/cpp/utils/PathParserUtils.h +93 -0
  502. package/harmony/svg/src/main/cpp/utils/StringUtils.cpp +134 -0
  503. package/harmony/svg/src/main/cpp/utils/StringUtils.h +644 -0
  504. package/harmony/svg/src/main/cpp/utils/SvgAttributesParser.cpp +239 -0
  505. package/harmony/svg/src/main/cpp/utils/SvgAttributesParser.h +277 -0
  506. package/harmony/svg/src/main/cpp/utils/SvgMarkerPositionUtils.h +200 -0
  507. package/harmony/svg/src/main/cpp/utils/SvgUtils.h +176 -0
  508. package/harmony/svg/src/main/cpp/utils/TextPathHelper.cpp +94 -0
  509. package/harmony/svg/src/main/cpp/utils/TextPathHelper.h +61 -0
  510. package/harmony/svg/src/main/ets/RNSVGImageModule.ts +21 -0
  511. package/harmony/svg/src/main/ets/RNSVGRenderableModule.ts +16 -0
  512. package/harmony/svg/src/main/ets/RNSVGSvgViewModule.ts +18 -0
  513. package/harmony/svg/src/main/ets/SvgPackage.ts +58 -0
  514. package/harmony/svg/src/main/module.json5 +7 -0
  515. package/harmony/svg/src/main/resources/base/element/string.json +8 -0
  516. package/harmony/svg/src/main/resources/en_US/element/string.json +8 -0
  517. package/harmony/svg/src/main/resources/zh_CN/element/string.json +8 -0
  518. package/harmony/svg/ts.ts +8 -0
  519. package/harmony/svg.har +0 -0
  520. package/lib/typescript/babel.config.d.ts +8 -0
  521. package/lib/typescript/babel.config.d.ts.map +1 -0
  522. package/lib/typescript/example/babel.config.d.ts +3 -0
  523. package/lib/typescript/example/babel.config.d.ts.map +1 -0
  524. package/lib/typescript/example/contexts.d.ts +3 -0
  525. package/lib/typescript/example/contexts.d.ts.map +1 -0
  526. package/lib/typescript/example/harmony/entry/hvigorfile.d.ts +2 -0
  527. package/lib/typescript/example/harmony/entry/hvigorfile.d.ts.map +1 -0
  528. package/lib/typescript/example/harmony/hvigorfile.d.ts +2 -0
  529. package/lib/typescript/example/harmony/hvigorfile.d.ts.map +1 -0
  530. package/lib/typescript/example/index.d.ts +2 -0
  531. package/lib/typescript/example/index.d.ts.map +1 -0
  532. package/lib/typescript/example/jest.config.d.ts +3 -0
  533. package/lib/typescript/example/jest.config.d.ts.map +1 -0
  534. package/lib/typescript/example/metro.config.d.ts +3 -0
  535. package/lib/typescript/example/metro.config.d.ts.map +1 -0
  536. package/lib/typescript/example/react-native.config.d.ts +3 -0
  537. package/lib/typescript/example/react-native.config.d.ts.map +1 -0
  538. package/lib/typescript/example/scripts/create-build-profile.d.ts +2 -0
  539. package/lib/typescript/example/scripts/create-build-profile.d.ts.map +1 -0
  540. package/lib/typescript/example/src/index.d.ts +3 -0
  541. package/lib/typescript/example/src/index.d.ts.map +1 -0
  542. package/lib/typescript/src/css/index.d.ts.map +1 -0
  543. package/lib/typescript/src/index.d.ts.map +1 -0
  544. package/package.json +10 -15
  545. package/lib/typescript/css/index.d.ts.map +0 -1
  546. package/lib/typescript/index.d.ts.map +0 -1
  547. /package/lib/typescript/{css → src/css}/index.d.ts +0 -0
  548. /package/lib/typescript/{index.d.ts → src/index.d.ts} +0 -0
@@ -0,0 +1,93 @@
1
+ /*
2
+ * Copyright (c) 2024 Huawei Device Co., Ltd. All rights reserved
3
+ * Use of this source code is governed by a MIT license that can be
4
+ * found in the LICENSE file.
5
+ */
6
+
7
+ #include "SvgGroup.h"
8
+ #include "SvgFilter.h"
9
+ #include "drawing/Brush.h"
10
+
11
+ namespace rnoh {
12
+ namespace svg {
13
+
14
+ void SvgGroup::InitGroupFlag() {
15
+ hrefFill_ = true;
16
+ hrefRender_ = true;
17
+ passStyle_ = true;
18
+ inheritStyle_ = true;
19
+ drawTraversed_ = true;
20
+ }
21
+
22
+ void SvgGroup::OnInitStyle() {
23
+ if (!font_) {
24
+ InitFont(GetScale());
25
+ }
26
+ for (auto &child : children_) {
27
+ if (auto childG = std::dynamic_pointer_cast<FontHolderBase>(child)) {
28
+ childG->InheritFont(font_, child->GetScale());
29
+ }
30
+ }
31
+ }
32
+
33
+ void SvgGroup::OnDraw(OH_Drawing_Canvas *canvas) {
34
+ if (attributes_.selfOpacity < 1.0) {
35
+ drawing::Brush layerBrush;
36
+ uint8_t alpha= static_cast<uint8_t>(attributes_.selfOpacity* 255);
37
+ layerBrush.SetAlpha(alpha);
38
+ OH_Drawing_CanvasSaveLayer(canvas, nullptr, layerBrush.get());
39
+ }
40
+ SvgNode::OnDraw(canvas);
41
+ }
42
+
43
+ void SvgGroup::ApplyFilterToChildren(std::shared_ptr<SvgFilter> filter) {
44
+ if (!filter) {
45
+ return;
46
+ }
47
+ originalFilters_.clear();
48
+
49
+ for (auto& child : children_) {
50
+ if (child) {
51
+ originalFilters_.push_back(child->GetBaseAttributes().filterId);
52
+ auto childAttrs = child->GetBaseAttributes();
53
+ childAttrs.filterId = attributes_.filterId;
54
+ childAttrs.hasInheritedFilter = true;
55
+ child->SetBaseAttributes(childAttrs);
56
+ }
57
+ }
58
+ }
59
+
60
+ void SvgGroup::RestoreChildrenFilter() {
61
+ for (size_t i = 0; i < children_.size() && i < originalFilters_.size(); ++i) {
62
+ if (children_[i]) {
63
+ auto childAttrs = children_[i]->GetBaseAttributes();
64
+ childAttrs.filterId = originalFilters_[i];
65
+ childAttrs.hasInheritedFilter = false;
66
+ children_[i]->SetBaseAttributes(childAttrs);
67
+ }
68
+ }
69
+
70
+ originalFilters_.clear();
71
+ }
72
+
73
+ Rect SvgGroup::AsBounds() {
74
+ if (children_.empty()) {
75
+ return Rect(0, 0, 0, 0);
76
+ }
77
+
78
+ auto bounds = children_[0]->AsBounds();
79
+ for (size_t i = 1; i < children_.size(); ++i) {
80
+ auto childBounds = children_[i]->AsBounds();
81
+ // 合并边界
82
+ float left = std::min(bounds.Left(), childBounds.Left());
83
+ float top = std::min(bounds.Top(), childBounds.Top());
84
+ float right = std::max(bounds.Right(), childBounds.Right());
85
+ float bottom = std::max(bounds.Bottom(), childBounds.Bottom());
86
+ bounds = Rect(left, top, right - left, bottom - top);
87
+ }
88
+
89
+ return bounds;
90
+ }
91
+
92
+ } // namespace svg
93
+ } // namespace rnoh
@@ -0,0 +1,41 @@
1
+ /*
2
+ * Copyright (c) 2024 Huawei Device Co., Ltd. All rights reserved
3
+ * Use of this source code is governed by a MIT license that can be
4
+ * found in the LICENSE file.
5
+ */
6
+
7
+ #pragma once
8
+
9
+ #include "SvgNode.h"
10
+ #include "properties/Font.h"
11
+ #include "FontHolderBase.h"
12
+ #include <native_drawing/drawing_canvas.h>
13
+
14
+ namespace rnoh {
15
+ namespace svg {
16
+
17
+ class SvgFilter; // 前置声明
18
+
19
+ class SvgGroup : public SvgNode, public FontHolderBase {
20
+
21
+ public:
22
+ SvgGroup() : SvgNode() { InitGroupFlag(); }
23
+ ~SvgGroup() override = default;
24
+
25
+ Rect AsBounds() override;
26
+
27
+ protected:
28
+ void OnDraw(OH_Drawing_Canvas *canvas) override;
29
+
30
+ private:
31
+ // svg g, use
32
+ void InitGroupFlag();
33
+ void OnInitStyle() override;
34
+ void ApplyFilterToChildren(std::shared_ptr<SvgFilter> filter);
35
+ void RestoreChildrenFilter();
36
+ // 用于保存子节点的原始filter设置
37
+ std::vector<std::string> originalFilters_;
38
+ };
39
+
40
+ } // namespace svg
41
+ } // namespace rnoh
@@ -0,0 +1,27 @@
1
+ /*
2
+ * Copyright (c) 2024 Huawei Device Co., Ltd. All rights reserved
3
+ * Use of this source code is governed by a MIT license that can be
4
+ * found in the LICENSE file.
5
+ */
6
+
7
+ #include "SvgHost.h"
8
+
9
+ namespace rnoh {
10
+ namespace svg {
11
+
12
+ void SvgHost::OnChildInsertCommon(const std::shared_ptr<SvgHost> &childSvgHost) {
13
+ if (!childSvgHost) {
14
+ return;
15
+ }
16
+ GetSvgNode()->AppendChild(childSvgHost->GetSvgNode());
17
+ }
18
+
19
+ void SvgHost::OnChildRemoveCommon(const std::shared_ptr<SvgHost> &childSvgHost) {
20
+ if (!childSvgHost) {
21
+ return;
22
+ }
23
+ GetSvgNode()->removeChild(childSvgHost->GetSvgNode());
24
+ }
25
+
26
+ } // namespace svg
27
+ } // namespace rnoh
@@ -0,0 +1,38 @@
1
+ /*
2
+ * Copyright (c) 2024 Huawei Device Co., Ltd. All rights reserved
3
+ * Use of this source code is governed by a MIT license that can be
4
+ * found in the LICENSE file.
5
+ */
6
+
7
+ #pragma once
8
+
9
+ #include <memory>
10
+ #include "SvgNode.h"
11
+
12
+ namespace rnoh {
13
+ namespace svg {
14
+
15
+ class SvgHost {
16
+ public:
17
+ SvgHost() = default;
18
+ virtual ~SvgHost() = default;
19
+ void SetSvgNode(const std::shared_ptr<SvgNode> &svgNode) {
20
+ std::lock_guard<std::mutex> lock(mtx);
21
+ m_svgNode = svgNode;
22
+ };
23
+ const std::shared_ptr<SvgNode> &GetSvgNode() const {
24
+ std::lock_guard<std::mutex> lock(mtx);
25
+ return m_svgNode;
26
+ };
27
+
28
+ void OnChildInsertCommon(const std::shared_ptr<SvgHost> &childSvgHost);
29
+
30
+ void OnChildRemoveCommon(const std::shared_ptr<SvgHost> &childSvgHost);
31
+
32
+ private:
33
+ std::shared_ptr<SvgNode> m_svgNode{nullptr};
34
+ mutable std::mutex mtx;
35
+ };
36
+
37
+ } // namespace svg
38
+ } // namespace rnoh
@@ -0,0 +1,168 @@
1
+ /*
2
+ * Copyright (c) 2024 Huawei Device Co., Ltd. All rights reserved
3
+ * Use of this source code is governed by a MIT license that can be
4
+ * found in the LICENSE file.
5
+ */
6
+
7
+ #include "SvgImage.h"
8
+ #include "SvgFilter.h"
9
+ #include "utils/StringUtils.h"
10
+ #include "properties/ViewBox.h"
11
+ #include <multimedia/image_framework/image_mdk_common.h>
12
+ #include <multimedia/image_framework/image/image_source_native.h>
13
+ #include <multimedia/image_framework/image_pixel_map_mdk.h>
14
+ #include <glog/logging.h>
15
+ #include <native_drawing/drawing_image.h>
16
+ #include <native_drawing/drawing_rect.h>
17
+ #include <native_drawing/drawing_pixel_map.h>
18
+ #include <native_drawing/drawing_sampling_options.h>
19
+ #include <native_drawing/drawing_filter.h>
20
+ #include <rawfile/raw_file.h>
21
+
22
+ const char *ASSET_PREFIX = "asset://";
23
+ const char *RAWFILE_PREFIX = "assets/";
24
+
25
+ namespace rnoh {
26
+ namespace svg {
27
+
28
+ void SvgImage::OnDraw(OH_Drawing_Canvas *canvas) {
29
+ auto uriString = imageAttribute_.src.uri;
30
+
31
+ if (uriString.empty()) {
32
+ DLOG(WARNING) << "[SvgImage] imageAttribute_.src.uri is empty!";
33
+ return;
34
+ }
35
+
36
+ double width =
37
+ imageAttribute_.width.Value() == 0 ? imageAttribute_.src.size.width : relativeOnWidth(imageAttribute_.width);
38
+ double height = imageAttribute_.height.Value() == 0 ? imageAttribute_.src.size.height
39
+ : relativeOnHeight(imageAttribute_.height);
40
+ double x = relativeOnWidth(imageAttribute_.x);
41
+ double y = relativeOnHeight(imageAttribute_.y);
42
+
43
+ if (!uriString.empty() && uriString.find("http", 0) != 0) {
44
+ OH_ImageSourceNative *res;
45
+ OH_PixelmapNative *pixelMap;
46
+ OH_DecodingOptions *options;
47
+
48
+ char *srcUri = const_cast<char *>(uriString.c_str());
49
+
50
+ OH_DecodingOptions_Create(&options);
51
+
52
+ Image_ErrorCode createFromUriStatus;
53
+ if (uriString.find(ASSET_PREFIX, 0) == 0) {
54
+ auto file = uriString.replace(0, 8, RAWFILE_PREFIX);
55
+ DLOG(INFO) << "[SvgImage] file: " << file;
56
+ auto rawFile = OH_ResourceManager_OpenRawFile(mgr_, file.c_str());
57
+ if (rawFile == nullptr) {
58
+ LOG(ERROR) << "[SvgImage] get rawfile fail";
59
+ return;
60
+ }
61
+ RawFileDescriptor descriptor;
62
+ auto getRawFileStatus = OH_ResourceManager_GetRawFileDescriptor(rawFile, descriptor);
63
+ if (!getRawFileStatus) {
64
+ LOG(ERROR) << "[SvgImage] get rawfile descriptor fail";
65
+ return;
66
+ }
67
+ createFromUriStatus = OH_ImageSourceNative_CreateFromRawFile(&descriptor, &res);
68
+ } else {
69
+ createFromUriStatus = OH_ImageSourceNative_CreateFromUri(srcUri, uriString.size(), &res);
70
+ }
71
+ auto createPixelmapStatus = OH_ImageSourceNative_CreatePixelmap(res, options, &pixelMap);
72
+ DLOG(INFO) << "[SvgImage] code: " << createPixelmapStatus;
73
+
74
+ if (createPixelmapStatus == IMAGE_SUCCESS) {
75
+ /* Temporarily disable the feature to set opacity.
76
+ * Currently, there is an issue where setting opacity on
77
+ * transparent pixels results in them turning black.
78
+ */
79
+ if (LessNotEqual(attributes_.opacity, 1.0f)) {
80
+ OH_PixelmapNative_Opacity(pixelMap, attributes_.opacity);
81
+ }
82
+
83
+ // get the real width and height from pixelmap(OH_PixelmapNative *).
84
+ OH_Pixelmap_ImageInfo *info;
85
+ OH_PixelmapImageInfo_Create(&info);
86
+ OH_PixelmapNative_GetImageInfo(pixelMap, info);
87
+
88
+ // get the resource properties: width and height
89
+ uint32_t *imageWidth_ = new uint32_t;
90
+ uint32_t *imageHeight_ = new uint32_t;
91
+ OH_PixelmapImageInfo_GetWidth(info, imageWidth_);
92
+ OH_PixelmapImageInfo_GetHeight(info, imageHeight_);
93
+
94
+ auto imageWidth = static_cast<double>(*imageWidth_);
95
+ auto imageHeight = static_cast<double>(*imageHeight_);
96
+ delete imageWidth_;
97
+ delete imageHeight_;
98
+
99
+ const auto vbRect = Rect(0, 0, imageWidth, imageHeight);
100
+ const auto renderRect = Rect(x, y, width, height);
101
+
102
+ drawing::Matrix transformMatrix;
103
+ if (vbRect.IsValid()) {
104
+ transformMatrix =
105
+ ViewBox::getTransform(vbRect, renderRect, imageAttribute_.align, imageAttribute_.meetOrSlice);
106
+ }
107
+
108
+ // set source Rect and destination Rect
109
+ OH_Drawing_PixelMap *ohPixelMap = OH_Drawing_PixelMapGetFromOhPixelMapNative(pixelMap);
110
+ drawing::Rect srcPixelMap(0, 0, imageWidth, imageHeight);
111
+ auto dstPixelMap = transformMatrix.MapRect(srcPixelMap);
112
+
113
+ // set SamplingOptions
114
+ OH_Drawing_FilterMode filterMode = FILTER_MODE_NEAREST;
115
+ OH_Drawing_MipmapMode mipMapMode = MIPMAP_MODE_NONE;
116
+ OH_Drawing_SamplingOptions *samplingOptions = OH_Drawing_SamplingOptionsCreate(filterMode, mipMapMode);
117
+
118
+ // Draw picture by type OH_Drawing_PixelMap
119
+ OH_Drawing_CanvasSave(canvas);
120
+
121
+ drawing::Rect clipRect(x, y, x + width, y + height);
122
+ OH_Drawing_CanvasClipRect(canvas, clipRect.get(), OH_Drawing_CanvasClipOp::INTERSECT, true);
123
+
124
+ // Apply SVG filter if specified
125
+ if (!attributes_.filterId.empty()) {
126
+ DLOG(INFO) << "[SvgImage] Applying filter: " << attributes_.filterId;
127
+ auto svgContext = GetContext();
128
+ if (svgContext) {
129
+ auto filterNode = svgContext->GetSvgNodeById(attributes_.filterId);
130
+ auto svgFilter = std::dynamic_pointer_cast<SvgFilter>(filterNode);
131
+ if (svgFilter) {
132
+ // Create a temporary brush and apply filter to it
133
+ drawing::Brush tmpBrush;
134
+ svgFilter->ApplyToBrush(tmpBrush, "image");
135
+
136
+ // Attach the filtered brush to canvas
137
+ OH_Drawing_CanvasAttachBrush(canvas, tmpBrush.get());
138
+ DLOG(INFO) << "[SvgImage] Filter applied to brush successfully";
139
+ }
140
+ }
141
+ }
142
+
143
+ // Draw the pixelmap
144
+ OH_Drawing_CanvasDrawPixelMapRect(canvas, ohPixelMap, srcPixelMap.get(), dstPixelMap.get(),
145
+ samplingOptions);
146
+
147
+ // Detach brush if filter was applied
148
+ if (!attributes_.filterId.empty()) {
149
+ OH_Drawing_CanvasDetachBrush(canvas);
150
+ }
151
+
152
+ OH_Drawing_CanvasRestore(canvas);
153
+
154
+ // clear data
155
+ OH_PixelmapImageInfo_Release(info);
156
+ OH_Drawing_SamplingOptionsDestroy(samplingOptions);
157
+ OH_Drawing_PixelMapDissolve(ohPixelMap);
158
+ OH_PixelmapNative_Release(pixelMap);
159
+ }
160
+ if (createFromUriStatus == IMAGE_SUCCESS) {
161
+ OH_ImageSourceNative_Release(res);
162
+ }
163
+ OH_DecodingOptions_Release(options);
164
+ }
165
+ }
166
+
167
+ } // namespace svg
168
+ } // namespace rnoh
@@ -0,0 +1,52 @@
1
+ /*
2
+ * Copyright (c) 2024 Huawei Device Co., Ltd. All rights reserved
3
+ * Use of this source code is governed by a MIT license that can be
4
+ * found in the LICENSE file.
5
+ */
6
+
7
+ #pragma once
8
+
9
+ #include <string>
10
+ #include "SvgGraphic.h"
11
+ #include <rawfile/raw_file_manager.h>
12
+
13
+ namespace rnoh {
14
+ namespace svg {
15
+
16
+ class SvgImage : public svg::SvgGraphic {
17
+ public:
18
+ SvgImage() = default;
19
+ ~SvgImage() override = default;
20
+
21
+ using SvgNode::relativeOnWidth;
22
+ using SvgNode::relativeOnHeight;
23
+
24
+ void SetX(const std::string &x) { imageAttribute_.x = SvgAttributesParser::ParseDimension(x, true); }
25
+
26
+ void SetY(const std::string &y) { imageAttribute_.y = SvgAttributesParser::ParseDimension(y, true); }
27
+
28
+ void SetHeight(const std::string &height) {
29
+ imageAttribute_.height = SvgAttributesParser::ParseDimension(height, true);
30
+ }
31
+
32
+ void SetWidth(const std::string &width) {
33
+ imageAttribute_.width = SvgAttributesParser::ParseDimension(width, true);
34
+ }
35
+
36
+ void SetAlign(const std::string &align) { imageAttribute_.align = align; }
37
+
38
+ void SetMeetOrSlice(const int &meetOrSlice) { imageAttribute_.meetOrSlice = meetOrSlice; }
39
+
40
+ void SetImageSource(const facebook::react::ImageSource &src) { imageAttribute_.src = src; }
41
+
42
+ void setNativeResourceManager(const NativeResourceManager *mgr) { mgr_ = mgr; }
43
+
44
+ void OnDraw(OH_Drawing_Canvas *canvas) override;
45
+
46
+ private:
47
+ SvgImageAttribute imageAttribute_;
48
+ const NativeResourceManager *mgr_;
49
+ };
50
+
51
+ } // namespace svg
52
+ } // namespace rnoh
@@ -0,0 +1,28 @@
1
+ /*
2
+ * Copyright (c) 2024 Huawei Device Co., Ltd. All rights reserved
3
+ * Use of this source code is governed by a MIT license that can be
4
+ * found in the LICENSE file.
5
+ */
6
+
7
+ #include "SvgLine.h"
8
+
9
+ namespace rnoh {
10
+ namespace svg {
11
+
12
+ drawing::Path SvgLine::AsPath() {
13
+ drawing::Path path;
14
+ double x1 = relativeOnWidth(lineAttribute_.x1);
15
+ double y1 = relativeOnHeight(lineAttribute_.y1);
16
+ double x2 = relativeOnWidth(lineAttribute_.x2);
17
+ double y2 = relativeOnHeight(lineAttribute_.y2);
18
+
19
+ path.MoveTo(x1, y1);
20
+ path.LineTo(x2, y2);
21
+
22
+ elements_ = {PathElement(ElementType::kCGPathElementMoveToPoint, {Point(x1, y1)}),
23
+ PathElement(ElementType::kCGPathElementAddLineToPoint, {Point(x2, y2)})};
24
+ return path;
25
+ };
26
+
27
+ } // namespace svg
28
+ } // namespace rnoh
@@ -0,0 +1,32 @@
1
+ /*
2
+ * Copyright (c) 2024 Huawei Device Co., Ltd. All rights reserved
3
+ * Use of this source code is governed by a MIT license that can be
4
+ * found in the LICENSE file.
5
+ */
6
+
7
+ #pragma once
8
+
9
+ #include "SvgGraphic.h"
10
+ #include "utils/SvgAttributesParser.h"
11
+
12
+ namespace rnoh {
13
+ namespace svg {
14
+
15
+ class SvgLine : public SvgGraphic {
16
+ public:
17
+ using Float = facebook::react::Float;
18
+ SvgLine() = default;
19
+ ~SvgLine() override = default;
20
+
21
+ drawing::Path AsPath() override;
22
+ void SetX1(const std::string &x1) { lineAttribute_.x1 = SvgAttributesParser::ParseDimension(x1, true); }
23
+ void SetY1(const std::string &y1) { lineAttribute_.y1 = SvgAttributesParser::ParseDimension(y1, true); }
24
+ void SetX2(const std::string &x2) { lineAttribute_.x2 = SvgAttributesParser::ParseDimension(x2, true); }
25
+ void SetY2(const std::string &y2) { lineAttribute_.y2 = SvgAttributesParser::ParseDimension(y2, true); }
26
+
27
+ private:
28
+ SvgLineAttribute lineAttribute_;
29
+ };
30
+
31
+ } // namespace svg
32
+ } // namespace rnoh
@@ -0,0 +1,61 @@
1
+ /*
2
+ * Copyright (c) 2024 Huawei Device Co., Ltd. All rights reserved
3
+ * Use of this source code is governed by a MIT license that can be
4
+ * found in the LICENSE file.
5
+ */
6
+
7
+ #include "SvgMarker.h"
8
+ #include "properties/Rect.h"
9
+ #include "properties/ViewBox.h"
10
+ #include <string>
11
+ #include <cstdlib>
12
+ #include <vector>
13
+
14
+ namespace rnoh {
15
+ namespace svg {
16
+
17
+ void SvgMarker::renderMarker(OH_Drawing_Canvas *canvas, const SvgMarkerPosition &position, float strokeWidth) {
18
+ const auto count = OH_Drawing_CanvasGetSaveCount(canvas);
19
+ saveAndSetupCanvas(canvas, cTM_);
20
+
21
+ if (markerTransform.get() != nullptr) {
22
+ markerTransform.Reset();
23
+ }
24
+ Point origin = position.origin;
25
+ markerTransform.Translate(origin.x, origin.y);
26
+ double markerAngle = (markerAttribute_.orient == "auto") ? -1 : std::atof(markerAttribute_.orient.c_str());
27
+ float degrees = 180 + (markerAngle == -1 ? position.angle : static_cast<float>(markerAngle));
28
+ // fix me? float rad = deg2rad(angle); this code only in ios
29
+ markerTransform.PreRotate(degrees, 0, 0);
30
+
31
+ if (markerAttribute_.markerUnits == "strokeWidth") {
32
+ markerTransform.PreScale(strokeWidth / scale_, strokeWidth / scale_, 0, 0);
33
+ }
34
+ if (!markerAttribute_.align.empty()) {
35
+ double width = relativeOnWidth(markerAttribute_.markerWidth) / scale_;
36
+ double height = relativeOnHeight(markerAttribute_.markerHeight) / scale_;
37
+ Rect eRect(0, 0, width, height);
38
+ Rect vbRect(markerAttribute_.minX.ConvertToPx(scale_), markerAttribute_.minY.ConvertToPx(scale_),
39
+ markerAttribute_.minX.ConvertToPx(scale_) + markerAttribute_.vbWidth.ConvertToPx(scale_),
40
+ markerAttribute_.minY.ConvertToPx(scale_) + markerAttribute_.vbHeight.ConvertToPx(scale_));
41
+ if (vbRect.IsValid()) {
42
+ drawing::Matrix viewBoxMatrix =
43
+ ViewBox::getTransform(vbRect, eRect, markerAttribute_.align, markerAttribute_.meetOrSlice);
44
+ float sx = viewBoxMatrix.GetValue(0);
45
+ float sy = viewBoxMatrix.GetValue(4);
46
+ markerTransform.PreScale(sx, sy, 0, 0);
47
+ }
48
+ }
49
+
50
+ double x = relativeOnWidth(markerAttribute_.refX);
51
+ double y = relativeOnHeight(markerAttribute_.refY);
52
+ markerTransform.PreTranslate(-x, -y);
53
+ OH_Drawing_CanvasConcatMatrix(canvas, markerTransform.get());
54
+
55
+ OnDrawTraversed(canvas);
56
+
57
+ OH_Drawing_CanvasRestoreToCount(canvas, count);
58
+ }
59
+
60
+ } // namespace svg
61
+ } // namespace rnoh
@@ -0,0 +1,86 @@
1
+ /*
2
+ * Copyright (c) 2024 Huawei Device Co., Ltd. All rights reserved
3
+ * Use of this source code is governed by a MIT license that can be
4
+ * found in the LICENSE file.
5
+ */
6
+
7
+ #pragma once
8
+
9
+ #include "SvgQuote.h"
10
+ #include "properties/Dimension.h"
11
+ #include "utils/SvgAttributesParser.h"
12
+ #include "utils/SvgMarkerPositionUtils.h"
13
+ #include <sstream>
14
+ #include <string>
15
+ #include <native_drawing/drawing_register_font.h>
16
+ #include <native_drawing/drawing_text_typography.h>
17
+ #include <native_drawing/drawing_matrix.h>
18
+
19
+ namespace rnoh {
20
+ namespace svg {
21
+
22
+ class SvgMarker : public SvgQuote {
23
+ public:
24
+ SvgMarker() = default;
25
+ ~SvgMarker() override = default;
26
+
27
+ void setRefX(const std::string &refX) { markerAttribute_.refX = SvgAttributesParser::ParseDimension(refX, true); }
28
+
29
+ void setRefY(const std::string &refY) { markerAttribute_.refY = SvgAttributesParser::ParseDimension(refY, true); }
30
+
31
+ void setMarkerWidth(const std::string &markerWidth) {
32
+ markerAttribute_.markerWidth = SvgAttributesParser::ParseDimension(markerWidth, true);
33
+ }
34
+
35
+ void setMarkerHeight(const std::string &markerHeight) {
36
+ markerAttribute_.markerHeight = SvgAttributesParser::ParseDimension(markerHeight, true);
37
+ }
38
+
39
+ void setMarkerUnits(const std::string &markerUnits) { markerAttribute_.markerUnits = markerUnits; }
40
+
41
+ void setOrient(const std::string &orient) { markerAttribute_.orient = orient; }
42
+
43
+ void setMinX(double minX) { markerAttribute_.minX = Dimension(minX, DimensionUnit::VP); }
44
+
45
+ void setMinY(double minY) { markerAttribute_.minY = Dimension(minY, DimensionUnit::VP); }
46
+
47
+ void setVbWidth(double vbWidth) { markerAttribute_.vbWidth = Dimension(vbWidth, DimensionUnit::VP); }
48
+
49
+ void setVbHeight(double vbHeight) { markerAttribute_.vbHeight = Dimension(vbHeight, DimensionUnit::VP); }
50
+
51
+ void setAlign(std::string align) { markerAttribute_.align = align; }
52
+
53
+ void setMeetOrSlice(int meetOrSlice) { markerAttribute_.meetOrSlice = meetOrSlice; }
54
+
55
+ void renderMarker(OH_Drawing_Canvas *canvas, const SvgMarkerPosition &position, float strokeWidth);
56
+
57
+ /**
58
+ * from VirtualView.saveAndSetupCanvas
59
+ *
60
+ * Sets up the transform matrix on the canvas before an element is drawn.
61
+ *
62
+ * <p>NB: for perf reasons this does not apply opacity, as that would mean creating a new canvas
63
+ * layer (which allocates an offscreen bitmap) and having it composited afterwards. Instead, the
64
+ * drawing code should apply opacity recursively.
65
+ *
66
+ * @param canvas the canvas to set up
67
+ * @param ctm current transformation matrix
68
+ */
69
+ void saveAndSetupCanvas(OH_Drawing_Canvas *canvas, drawing::Matrix ctm) {
70
+ OH_Drawing_CanvasSave(canvas);
71
+ cTM_ = mMatrix.Concat(mTransform);
72
+ OH_Drawing_CanvasConcatMatrix(canvas, cTM_.get());
73
+ cTM_ = cTM_.Concat(ctm);
74
+ mInvCTM = cTM_.Invert();
75
+ }
76
+
77
+ private:
78
+ SvgMarkerAttribute markerAttribute_;
79
+ drawing::Matrix markerTransform;
80
+ drawing::Matrix mMatrix;
81
+ drawing::Matrix mTransform;
82
+ std::optional<drawing::Matrix> mInvCTM;
83
+ };
84
+
85
+ } // namespace svg
86
+ } // namespace rnoh