@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,377 @@
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
+ * This file incorporates from the OpenHarmony project, licensed under
7
+ * the Apache License, Version 2.0. Specifically:
8
+ * - [OpenHarmony/arkui_ace_engine] (https://gitee.com/openharmony/arkui_ace_engine)
9
+ *
10
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
11
+ * use this file except in compliance with the License. You may obtain a copy
12
+ * of the License at:
13
+ * http://www.apache.org/licenses/LICENSE-2.0
14
+ *
15
+ * Unless required by applicable law or agreed to in writing, software
16
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
17
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
18
+ * License for the specific language governing permissions and limitations
19
+ * under the License.
20
+ */
21
+
22
+ // from ArkUI "frameworks/core/components_ng/svg/parse/svg_node.h"
23
+ #pragma once
24
+
25
+ #include <memory>
26
+ #include <vector>
27
+ #include <unordered_set>
28
+ #include <type_traits>
29
+ #include "SvgBaseAttribute.h"
30
+ #include "SvgContext.h"
31
+ #include "SvgForeignProps.h"
32
+ #include "properties/Decoration.h"
33
+ #include "properties/Dimension.h"
34
+ #include "properties/Size.h"
35
+ #include <react/renderer/components/react_native_svg/Props.h>
36
+ #include "drawing/Path.h"
37
+ #include "utils/StringUtils.h"
38
+ #include "utils/SvgAttributesParser.h"
39
+ #include <glog/logging.h>
40
+ #include <multimedia/image_framework/image/pixelmap_native.h>
41
+ #include <native_drawing/drawing_canvas.h>
42
+ #include <native_drawing/drawing_rect.h>
43
+ #include "utils/DynamicUtils.h"
44
+
45
+ namespace rnoh {
46
+ namespace svg {
47
+
48
+ constexpr int INHERIT_TYPE = 2;
49
+
50
+ class SvgNode : public std::enable_shared_from_this<SvgNode> {
51
+ public:
52
+ SvgNode() = default;
53
+ virtual ~SvgNode() = default;
54
+
55
+ std::shared_ptr<SvgContext> GetContext() { return context_; }
56
+ void SetContext(std::shared_ptr<SvgContext> context) { context_ = context; }
57
+
58
+ void ContextTraversal();
59
+ void InitStyle(const SvgBaseAttribute &attr);
60
+
61
+ virtual void Draw(OH_Drawing_Canvas *canvas);
62
+
63
+ virtual drawing::Path AsPath() {
64
+ DLOG(INFO) << "[SVGNode] AsPath";
65
+ return drawing::Path();
66
+ };
67
+
68
+ SvgBaseAttribute GetBaseAttributes() const { return attributes_; }
69
+
70
+ void SetBaseAttributes(const SvgBaseAttribute &attr) { attributes_ = attr; }
71
+
72
+ virtual void AppendChild(const std::shared_ptr<SvgNode> &child) { children_.emplace_back(child); }
73
+
74
+ virtual void removeChild(const std::shared_ptr<SvgNode> &child) {
75
+ auto it = std::find(children_.begin(), children_.end(), child);
76
+ if (it != children_.end()) {
77
+ children_.erase(it);
78
+ }
79
+ }
80
+
81
+ template <typename ConcreteProps> void UpdateHrefRenderProps(const std::shared_ptr<ConcreteProps> &props, bool inherit = false) {
82
+ if (!props) {
83
+ return;
84
+ }
85
+
86
+ if (inherit) {
87
+ attributes_.hasInheritedFilter = true;
88
+ }
89
+ // Check which properties are available and update them
90
+ std::unordered_set<std::string> propSet;
91
+ if constexpr (requires { props->propList; }) {
92
+ propSet.insert(props->propList.begin(), props->propList.end());
93
+ }
94
+
95
+ // Always set name and display if available
96
+ if constexpr (requires { props->name; }) {
97
+ attributes_.id = props->name;
98
+ }
99
+ if constexpr (requires { props->display; }) {
100
+ display_ = props->display != "none";
101
+ }
102
+
103
+ if (hrefRender_) {
104
+ // Only access properties that exist in this Props type
105
+ if constexpr (requires { props->matrix; }) {
106
+ attributes_.transform = props->matrix;
107
+ }
108
+ if constexpr (requires { props->mask; }) {
109
+ attributes_.maskId = props->mask;
110
+ }
111
+ if constexpr (requires { props->filter; } &&
112
+ std::is_same_v<std::decay_t<decltype(props->filter)>, std::string>) {
113
+ attributes_.filterId = props->filter;
114
+ attributes_.hasInheritedFilter = inherit;
115
+ }
116
+ if constexpr (requires { props->opacity; }) {
117
+ attributes_.selfOpacity = props->opacity;
118
+ }
119
+ if constexpr (requires { props->markerStart; }) {
120
+ attributes_.markerStart = props->markerStart;
121
+ }
122
+ if constexpr (requires { props->markerMid; }) {
123
+ attributes_.markerMid = props->markerMid;
124
+ }
125
+ if constexpr (requires { props->markerEnd; }) {
126
+ attributes_.markerEnd = props->markerEnd;
127
+ }
128
+ if constexpr (requires { props->clipPath; }) {
129
+ if (!props->clipPath.empty()) {
130
+ attributes_.clipPath = props->clipPath;
131
+ hrefClipPath_ = props->clipPath;
132
+ }
133
+ }
134
+ }
135
+ }
136
+
137
+ template <typename ConcreteProps> void UpdateCommonProps(const std::shared_ptr<ConcreteProps> &props, bool inherit = false) {
138
+ UpdateHrefRenderProps(props, inherit);
139
+ std::unordered_set<std::string> set;
140
+ if constexpr (requires { props->propList; }) {
141
+ for (const auto &prop : props->propList) {
142
+ set.insert(prop);
143
+ }
144
+ }
145
+
146
+ // Handle fill properties - support both generic and text-specific structures
147
+ if constexpr (requires { props->fill; }) {
148
+ if (!props->fill.isNull() && props->fill.count("type") > 0 && props->fill.count("payload") > 0) {
149
+ int fillType = props->fill["type"].asInt();
150
+ if (fillType == INHERIT_TYPE) {
151
+ Color color = Color(static_cast<uint32_t>(props->fill["payload"].asInt()));
152
+ color.SetUseCurrentColor(true);
153
+ attributes_.fillState.SetColor(color, true);
154
+ } else {
155
+ uint32_t colorValue = static_cast<uint32_t>(props->fill["payload"].asInt());
156
+ if (facebook::react::isColorMeaningful(facebook::react::SharedColor(colorValue))) {
157
+ attributes_.fillState.SetColor(Color(colorValue), set.count("fill"));
158
+ } else {
159
+ attributes_.fillState.SetColor(Color::TRANSPARENT, set.count("fill"));
160
+ }
161
+ }
162
+ } else if (!props->fill.isNull() && props->fill.count("payload") > 0) {
163
+ uint32_t colorValue = static_cast<uint32_t>(props->fill["payload"].asInt());
164
+ if (facebook::react::isColorMeaningful(facebook::react::SharedColor(colorValue))) {
165
+ attributes_.fillState.SetColor(Color(colorValue), set.count("fill"));
166
+ } else {
167
+ attributes_.fillState.SetColor(Color::TRANSPARENT, set.count("fill"));
168
+ }
169
+ } else {
170
+ attributes_.fillState.SetColor(Color::TRANSPARENT, set.count("fill"));
171
+ }
172
+ if (!props->fill.isNull() && props->fill.count("brushRef") > 0) {
173
+ attributes_.fillState.SetHref(props->fill["brushRef"].asString());
174
+ }
175
+ }
176
+
177
+ // Handle stroke properties - support both generic and text-specific structures
178
+ if constexpr (requires { props->stroke; }) {
179
+ if (!props->stroke.isNull() && props->stroke.count("type") > 0) {
180
+ int strokeType = props->stroke["type"].asInt();
181
+ if (strokeType == INHERIT_TYPE) {
182
+ if (props->stroke.count("payload") > 0) {
183
+ Color color = Color(static_cast<uint32_t>(props->stroke["payload"].asInt()));
184
+ color.SetUseCurrentColor(true);
185
+ attributes_.strokeState.SetColor(color, true);
186
+ } else {
187
+ if (props->color) {
188
+ Color color = Color(*props->color);
189
+ color.SetUseCurrentColor(true);
190
+ attributes_.strokeState.SetColor(color, true);
191
+ } else {
192
+ Color color = Color::TRANSPARENT;
193
+ color.SetUseCurrentColor(true);
194
+ attributes_.strokeState.SetColor(color, true);
195
+ }
196
+ }
197
+ } else {
198
+ if (props->stroke.count("payload") > 0) {
199
+ uint32_t colorValue = static_cast<uint32_t>(props->stroke["payload"].asInt());
200
+ if (facebook::react::isColorMeaningful(facebook::react::SharedColor(colorValue))) {
201
+ attributes_.strokeState.SetColor(Color(colorValue), set.count("stroke"));
202
+ } else {
203
+ attributes_.strokeState.SetColor(Color::TRANSPARENT, set.count("stroke"));
204
+ }
205
+ }
206
+ }
207
+ } else if (!props->stroke.isNull() && props->stroke.count("payload") > 0) {
208
+ uint32_t colorValue = static_cast<uint32_t>(props->stroke["payload"].asInt());
209
+ if (facebook::react::isColorMeaningful(facebook::react::SharedColor(colorValue))) {
210
+ attributes_.strokeState.SetColor(Color(colorValue), set.count("stroke"));
211
+ } else {
212
+ attributes_.strokeState.SetColor(Color::TRANSPARENT, set.count("stroke"));
213
+ }
214
+ } else {
215
+ attributes_.strokeState.SetColor(Color::TRANSPARENT, set.count("stroke"));
216
+ }
217
+ if (!props->stroke.isNull() && props->stroke.count("brushRef") > 0) {
218
+ attributes_.strokeState.SetHref(props->stroke["brushRef"].asString());
219
+ }
220
+ }
221
+
222
+ if constexpr (requires { props->fillOpacity; }) {
223
+ attributes_.fillState.SetOpacity(std::clamp(props->fillOpacity, 0.0, 1.0), true);
224
+ }
225
+ if constexpr (requires { props->fillRule; }) {
226
+ attributes_.fillState.SetFillRule(static_cast<FillState::FillRule>(props->fillRule), true);
227
+ }
228
+ if constexpr (requires { props->strokeWidth; }) {
229
+ bool hasStrokeWidthInPropList = set.count("strokeWidth") > 0;
230
+ if (hasStrokeWidthInPropList) {
231
+ attributes_.strokeState.SetLineWidth(StringUtils::StringToDouble(DynamicUtils::DynamicToString(props->strokeWidth)) * scale_, true);
232
+ }
233
+ }
234
+ if constexpr (requires { props->strokeDasharray; }) {
235
+ attributes_.strokeState.SetStrokeDashArray(
236
+ StringUtils::stringVectorToDoubleVector(DynamicUtils::DynamicToStringVector(props->strokeDasharray), scale_), set.count("strokeDasharray"));
237
+ }
238
+ if constexpr (requires { props->strokeDashoffset; }) {
239
+ attributes_.strokeState.SetStrokeDashOffset(props->strokeDashoffset * scale_, set.count("strokeDashoffset"));
240
+ }
241
+ if constexpr (requires { props->strokeLinecap; }) {
242
+ attributes_.strokeState.SetLineCap(SvgAttributesParser::GetLineCapStyle(std::to_string(props->strokeLinecap)), set.count("strokeLinecap"));
243
+ }
244
+ if constexpr (requires { props->strokeLinejoin; }) {
245
+ attributes_.strokeState.SetLineJoin(
246
+ SvgAttributesParser::GetLineJoinStyle(std::to_string(props->strokeLinejoin)), set.count("strokeLinejoin"));
247
+ }
248
+ if constexpr (requires { props->vectorEffect; }) {
249
+ attributes_.strokeState.SetVectorEffect(props->vectorEffect);
250
+ }
251
+ if constexpr (requires { props->strokeMiterlimit; }) {
252
+ auto limit = props->strokeMiterlimit * scale_;
253
+ if (GreatOrEqual(limit, 1.0)) {
254
+ attributes_.strokeState.SetMiterLimit(limit, set.count("strokeMiterlimit"));
255
+ }
256
+ }
257
+ if constexpr (requires { props->strokeOpacity; }) {
258
+ attributes_.strokeState.SetOpacity(std::clamp(props->strokeOpacity, 0.0, 1.0), set.count("strokeOpacity"));
259
+ }
260
+ if constexpr (requires { props->clipRule; }) {
261
+ attributes_.clipState.SetClipRule(static_cast<ClipState::ClipRule>(props->clipRule), true);
262
+ }
263
+ }
264
+
265
+ virtual Rect AsBounds();
266
+
267
+ void SetScale(const double &scale) { scale_ = scale; }
268
+
269
+ double GetScale() const { return scale_; }
270
+
271
+ void InheritAttr(const SvgBaseAttribute &parent) {
272
+ attributes_.Inherit(parent);
273
+ // svg color -> current color
274
+ if (attributes_.strokeState.GetColor().IsUseCurrentColor()) {
275
+ if(context_) {
276
+ attributes_.strokeState.SetColor(context_->GetSvgColor(), true);
277
+ }
278
+ }
279
+ if (attributes_.fillState.GetColor().IsUseCurrentColor()) {
280
+ if(context_) {
281
+ attributes_.fillState.SetColor(context_->GetSvgColor(), true);
282
+ }
283
+ }
284
+ }
285
+
286
+ void InheritUseAttr(const SvgBaseAttribute &parent) { attributes_.InheritFromUse(parent); }
287
+
288
+ drawing::Matrix lastCanvasMatrix_;
289
+
290
+ double relativeOnWidth(Dimension length);
291
+ double relativeOnHeight(Dimension length);
292
+ double relativeOnOther(Dimension length);
293
+
294
+ double getCanvasWidth();
295
+ double getCanvasHeight();
296
+ double getCanvasDiagonal();
297
+
298
+ void SetForeignObject(ForeignProps foreignProps) {
299
+ _foreignPropsArray.emplace_back(foreignProps);
300
+ }
301
+
302
+
303
+ protected:
304
+ // override as need by derived class
305
+ // called by function AppendChild
306
+ virtual void OnAppendChild(const std::shared_ptr<SvgNode> &child) {}
307
+ // called by function InitStyle
308
+ virtual void OnInitStyle() {}
309
+
310
+ virtual void OnDraw(OH_Drawing_Canvas *canvas) {}
311
+ virtual void OnDrawTraversed(OH_Drawing_Canvas *canvas);
312
+ void OnClipPath(OH_Drawing_Canvas *canvas);
313
+ void OnMask(OH_Drawing_Canvas *canvas);
314
+ void OnTransform(OH_Drawing_Canvas *canvas, std::vector<double> transform);
315
+
316
+ const Rect &GetRootViewBox() const;
317
+
318
+ void SetSmoothEdge(float edge) { attributes_.smoothEdge = edge; }
319
+ float GetSmoothEdge() const { return attributes_.smoothEdge; }
320
+
321
+ std::optional<Gradient> GetGradient(const std::string &href);
322
+
323
+ std::shared_ptr<PatternAttr> GetPatternAttr(const std::string &href);
324
+ void DrawForeignPixelMap(OH_Drawing_Canvas *canvas,ForeignProps _foreignProps);
325
+ void DrawForeignMask(OH_Drawing_Canvas *canvas, const std::string &id);
326
+ void DrawForeignClip(OH_Drawing_Canvas *canvas, const std::string &id, int clipRule);
327
+
328
+ void InitNoneFlag() {
329
+ hrefFill_ = false;
330
+ hrefRender_ = false;
331
+ passStyle_ = false;
332
+ inheritStyle_ = false;
333
+ drawTraversed_ = false;
334
+ }
335
+
336
+ SvgBaseAttribute attributes_;
337
+
338
+ std::shared_ptr<SvgContext> context_;
339
+
340
+ std::vector<std::shared_ptr<SvgNode>> children_;
341
+
342
+ std::string hrefClipPath_;
343
+ std::string imagePath_;
344
+
345
+ double scale_ = 3.25;
346
+
347
+ drawing::Matrix cTM_;
348
+
349
+ bool display_ = true;
350
+
351
+ bool hrefFill_ = true; // get fill attributes from reference
352
+ bool hrefRender_ = true; // get render attr (mask, filter, transform, opacity,
353
+ // clip path) from reference
354
+ bool passStyle_ = false; // pass style attributes to child node, TAGS
355
+ // circle/path/line/... = false
356
+ bool inheritStyle_ = true; // inherit style attributes from parent node, TAGS
357
+ // mask/defs/pattern/filter = false
358
+ bool drawTraversed_ = true; // enable OnDraw, TAGS mask/defs/pattern/filter = false
359
+
360
+ double canvasHeight_ = -1;
361
+
362
+ double canvasWidth_ = -1;
363
+
364
+ double canvasDiagonal_ = -1;
365
+
366
+ /*
367
+ N[1/Sqrt[2], 36]
368
+ The inverse of the square root of 2.
369
+ Provide enough digits for the 128-bit IEEE quad (36 significant digits).
370
+ */
371
+ const double M_SQRT1_2l = 0.707106781186547524400844362104849039;
372
+
373
+ std::vector<ForeignProps> _foreignPropsArray;
374
+ };
375
+
376
+ } // namespace svg
377
+ } // namespace rnoh
@@ -0,0 +1,42 @@
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 "SvgPath.h"
8
+ #include "utils/PathParserUtils.h"
9
+ #include <native_drawing/drawing_matrix.h>
10
+ #include "utils/PathParserUtils.h"
11
+
12
+ namespace rnoh {
13
+ namespace svg {
14
+
15
+ void SvgPath::setD(const std::string &d) {
16
+ d_ = d;
17
+ PathParserUtils parser;
18
+ parser.mScale = scale_;
19
+ try {
20
+ path_ = std::move(parser.parse(d.c_str()));
21
+ } catch (const std::runtime_error &e) {
22
+ LOG(ERROR) << "[svgPath] Svg path d invalid, error message: " << e.what();
23
+ return;
24
+ }
25
+ elements_ = std::move(parser.elements);
26
+ for (PathElement &elem : elements_) {
27
+ for (Point &point : elem.points) {
28
+ point.x *= scale_;
29
+ point.y *= scale_;
30
+ }
31
+ }
32
+ }
33
+
34
+ drawing::Path SvgPath::AsPath() {
35
+ if (path_.get()) {
36
+ return path_;
37
+ }
38
+ return drawing::Path();
39
+ }
40
+
41
+ } // namespace svg
42
+ } // namespace rnoh
@@ -0,0 +1,29 @@
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
+
11
+ namespace rnoh {
12
+ namespace svg {
13
+
14
+ class SvgPath : public SvgGraphic {
15
+ private:
16
+ std::string d_;
17
+ drawing::Path path_{};
18
+
19
+ public:
20
+ SvgPath() = default;
21
+ ~SvgPath() override = default;
22
+
23
+ void setD(const std::string &d);
24
+
25
+ drawing::Path AsPath() override;
26
+ };
27
+
28
+ } // namespace svg
29
+ } // namespace rnoh
@@ -0,0 +1,77 @@
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 "SvgPattern.h"
8
+
9
+ namespace rnoh {
10
+ namespace svg {
11
+
12
+ constexpr size_t PATTERN_TRANSFORM_MATRIX_SIZE = 6;
13
+ constexpr int TRANSFORM_SCALE_X_INDEX = 0;
14
+ constexpr int TRANSFORM_SKEW_Y_INDEX = 1;
15
+ constexpr int TRANSFORM_SKEW_X_INDEX = 2;
16
+ constexpr int TRANSFORM_SCALE_Y_INDEX = 3;
17
+ constexpr int TRANSFORM_TRANSLATE_X_INDEX = 4;
18
+ constexpr int TRANSFORM_TRANSLATE_Y_INDEX = 5;
19
+
20
+ SvgPattern::SvgPattern() { DLOG(INFO) << "[SvgPattern] init"; }
21
+
22
+ void SvgPattern::OnDrawTraversedBefore(OH_Drawing_Canvas *canvas) {
23
+ DLOG(INFO) << "[pattern] OnDrawTraversedBefore";
24
+ }
25
+
26
+ void SvgPattern::OnDrawTraversedAfter(OH_Drawing_Canvas *canvas) { DLOG(INFO) << "[pattern] OnDrawTraversedAfter"; }
27
+
28
+ std::shared_ptr<PatternAttr> SvgPattern::GetPatternAttr() { return patternAttr; }
29
+
30
+ void SvgPattern::setPatternX(Dimension x) { patternAttr->setPatternX(x); }
31
+
32
+ void SvgPattern::setPatternY(Dimension y) { patternAttr->setPatternY(y); }
33
+
34
+ void SvgPattern::setHeight(Dimension height) { patternAttr->setHeight(height); }
35
+
36
+ void SvgPattern::setWidth(Dimension width) { patternAttr->setWidth(width); }
37
+
38
+ void SvgPattern::setPatternContentUnits(int patternContentUnits) {
39
+ patternAttr->setPatternContentUnits(patternContentUnits);
40
+ }
41
+
42
+ void SvgPattern::setPatternUnits(int patternUnits) { patternAttr->setPatternUnits(patternUnits); }
43
+
44
+
45
+ void SvgPattern::setViewBox(Rect viewBox) { patternAttr->setViewBox(viewBox); }
46
+
47
+ void SvgPattern::setmMinX(float mMinX) { patternAttr->setmMinX(mMinX); }
48
+
49
+ void SvgPattern::setmMinY(float mMinY) { patternAttr->setmMinY(mMinY); }
50
+
51
+ void SvgPattern::setmVbWidth(float mVbWidth) { patternAttr->setmVbWidth(mVbWidth); }
52
+
53
+ void SvgPattern::setmVbHeight(float mVbHeight) { patternAttr->setmVbHeight(mVbHeight); }
54
+
55
+ void SvgPattern::setmAlign(std::string mAlign) { patternAttr->setmAlign(mAlign); }
56
+
57
+ void SvgPattern::setmMeetOrSlice(int mMeetOrSlice) { patternAttr->setmMeetOrSlice(mMeetOrSlice); }
58
+
59
+ void SvgPattern::setPatternTransforms(std::vector<Float> patternTransforms) {
60
+ std::vector<Float> newMatrix{
61
+ 1, 0, 0, 0, 1, 0, 0, 0, 1,
62
+ };
63
+ if (patternTransforms.size() == PATTERN_TRANSFORM_MATRIX_SIZE) {
64
+ newMatrix[0] = (Float)patternTransforms[TRANSFORM_SCALE_X_INDEX];
65
+ newMatrix[1] = (Float)patternTransforms[TRANSFORM_SKEW_X_INDEX];
66
+ newMatrix[2] = (Float)patternTransforms[TRANSFORM_TRANSLATE_X_INDEX] * scale_;
67
+ newMatrix[3] = (Float)patternTransforms[TRANSFORM_SKEW_Y_INDEX];
68
+ newMatrix[4] = (Float)patternTransforms[TRANSFORM_SCALE_Y_INDEX];
69
+ newMatrix[5] = (Float)patternTransforms[TRANSFORM_TRANSLATE_Y_INDEX] * scale_;
70
+ patternAttr->setPatternTransform(std::move(newMatrix));
71
+ }
72
+ }
73
+
74
+ void SvgPattern::setImage(OH_Drawing_Image *image) { patternAttr->setImage(image); }
75
+
76
+ } // namespace svg
77
+ } // namespace rnoh
@@ -0,0 +1,64 @@
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 "SvgQuote.h"
11
+ #include "utils/SvgAttributesParser.h"
12
+
13
+ namespace rnoh {
14
+ namespace svg {
15
+
16
+ class SvgPattern : public SvgQuote {
17
+
18
+ public:
19
+ using Float = facebook::react::Float;
20
+ SvgPattern();
21
+ ~SvgPattern() override = default;
22
+
23
+ void OnDrawTraversedBefore(OH_Drawing_Canvas *canvas) override;
24
+ void OnDrawTraversedAfter(OH_Drawing_Canvas *canvas) override;
25
+ void SaveDefinition(OH_Drawing_Canvas *canvas);
26
+ void ConcatMatrix(OH_Drawing_Canvas *canvas);
27
+ std::shared_ptr<PatternAttr> GetPatternAttr();
28
+
29
+ void setPatternX(Dimension x);
30
+
31
+ void setPatternY(Dimension y);
32
+
33
+ void setHeight(Dimension height);
34
+
35
+ void setWidth(Dimension width);
36
+
37
+ void setPatternUnits(int patternUnits);
38
+
39
+ void setPatternContentUnits(int patternContentUnits);
40
+
41
+ void setViewBox(Rect viewBox);
42
+
43
+ void setImage(OH_Drawing_Image *image);
44
+
45
+ void setmMinX(float mMinX);
46
+
47
+ void setmMinY(float mMinUY);
48
+
49
+ void setmVbWidth(float mVbWidth);
50
+
51
+ void setmVbHeight(float mVbHeight);
52
+
53
+ void setmAlign(std::string mAlign);
54
+
55
+ void setmMeetOrSlice(int mMeetOrSlice);
56
+
57
+ void setPatternTransforms(std::vector<Float> gradientTransforms);
58
+ private:
59
+ std::shared_ptr<PatternAttr> patternAttr = std::make_shared<PatternAttr>();
60
+ double scale_ = 3.25010318;
61
+ };
62
+
63
+ } // namespace svg
64
+ } // namespace rnoh
@@ -0,0 +1,87 @@
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
+ * This file incorporates from the OpenHarmony project, licensed under
7
+ * the Apache License, Version 2.0. Specifically:
8
+ * - [OpenHarmony/arkui_ace_engine] (https://gitee.com/openharmony/arkui_ace_engine)
9
+ *
10
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
11
+ * use this file except in compliance with the License. You may obtain a copy
12
+ * of the License at:
13
+ * http://www.apache.org/licenses/LICENSE-2.0
14
+ *
15
+ * Unless required by applicable law or agreed to in writing, software
16
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
17
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
18
+ * License for the specific language governing permissions and limitations
19
+ * under the License.
20
+ */
21
+
22
+ #pragma once
23
+
24
+ #include "SvgNode.h"
25
+ #include <native_drawing/drawing_path.h>
26
+
27
+ namespace rnoh {
28
+ namespace svg {
29
+
30
+ class SvgQuote : public SvgNode {
31
+ public:
32
+ SvgQuote() : SvgNode() { InitHrefFlag(); }
33
+ ~SvgQuote() override = default;
34
+
35
+ drawing::Path getClipPath(drawing::Path path) {
36
+ DLOG(INFO) << "[SvgQuote] getClipPath";
37
+ for (const auto &child : children_) {
38
+ auto childPath = child->AsPath();
39
+ path.AddPath(childPath);
40
+ }
41
+ return path;
42
+ }
43
+
44
+ drawing::Path getClipPath(drawing::Path path, drawing::Path::OpMode op) {
45
+ DLOG(INFO) << "[SvgQuote] getClipPath with op, op = " << op;
46
+ for (const auto &child : children_) {
47
+ auto childPath = child->AsPath();
48
+ path.Op(childPath, op);
49
+ }
50
+ return path;
51
+ }
52
+
53
+ drawing::Path AsPath() override {
54
+ DLOG(INFO) << "[SvgQuote] AsPath";
55
+ drawing::Path path;
56
+
57
+ if (attributes_.clipState.IsEvenodd()) {
58
+ return getClipPath(path);
59
+ } else {
60
+ return getClipPath(path, drawing::Path::OpMode::PATH_OP_MODE_UNION);
61
+ }
62
+ }
63
+
64
+ void Draw(OH_Drawing_Canvas *canvas) override {
65
+ // render composition on other svg tags
66
+ DLOG(INFO) << "[SvgQuote] Draw";
67
+ OnDrawTraversedBefore(canvas);
68
+ OnDrawTraversed(canvas);
69
+ OnDrawTraversedAfter(canvas);
70
+ }
71
+
72
+ protected:
73
+ virtual void OnDrawTraversedBefore(OH_Drawing_Canvas *canvas) {}
74
+ virtual void OnDrawTraversedAfter(OH_Drawing_Canvas *canvas) {}
75
+
76
+ // mask/pattern/filter/clipPath
77
+ void InitHrefFlag() {
78
+ hrefFill_ = true;
79
+ hrefRender_ = false;
80
+ passStyle_ = true;
81
+ inheritStyle_ = false;
82
+ drawTraversed_ = false;
83
+ }
84
+ };
85
+
86
+ } // namespace svg
87
+ } // namespace rnoh