@lumen5/lottie-web 5.14.0

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 (300) hide show
  1. package/.babelrc.json +3 -0
  2. package/.eslintrc.json +46 -0
  3. package/.gitattributes +1 -0
  4. package/.github/FUNDING.yml +1 -0
  5. package/.github/ISSUE_TEMPLATE.md +22 -0
  6. package/.github/workflows/publish.yml +26 -0
  7. package/.github/workflows/testAnimations.yml +29 -0
  8. package/.github/workflows/updateScreenshots.yml +34 -0
  9. package/CHANGELOG.md +601 -0
  10. package/History.md +1230 -0
  11. package/LICENSE.md +21 -0
  12. package/README.md +351 -0
  13. package/bower.json +31 -0
  14. package/build/old_parser/bodymovin_parser.jsx +3023 -0
  15. package/build/old_parser/helperProject.aep +0 -0
  16. package/build/player/cjs/lottie.min.js +18229 -0
  17. package/build/player/cjs/lottie_canvas.min.js +16465 -0
  18. package/build/player/cjs/lottie_html.min.js +16312 -0
  19. package/build/player/cjs/lottie_light.min.js +11584 -0
  20. package/build/player/cjs/lottie_light_canvas.min.js +13518 -0
  21. package/build/player/cjs/lottie_light_html.min.js +12843 -0
  22. package/build/player/cjs/lottie_svg.min.js +15053 -0
  23. package/build/player/esm/lottie.min.js +18225 -0
  24. package/build/player/esm/lottie_canvas.min.js +16461 -0
  25. package/build/player/esm/lottie_html.min.js +16308 -0
  26. package/build/player/esm/lottie_light.min.js +11580 -0
  27. package/build/player/esm/lottie_light_canvas.min.js +13514 -0
  28. package/build/player/esm/lottie_light_html.min.js +12839 -0
  29. package/build/player/esm/lottie_svg.min.js +15049 -0
  30. package/build/player/lottie.d.ts +5 -0
  31. package/build/player/lottie.js +17151 -0
  32. package/build/player/lottie.min.js +1 -0
  33. package/build/player/lottie_canvas.js +15506 -0
  34. package/build/player/lottie_canvas.min.js +1 -0
  35. package/build/player/lottie_canvas_worker.js +18196 -0
  36. package/build/player/lottie_canvas_worker.min.js +15 -0
  37. package/build/player/lottie_html.d.ts +5 -0
  38. package/build/player/lottie_html.js +15354 -0
  39. package/build/player/lottie_html.min.js +1 -0
  40. package/build/player/lottie_light.d.ts +5 -0
  41. package/build/player/lottie_light.js +10854 -0
  42. package/build/player/lottie_light.min.js +1 -0
  43. package/build/player/lottie_light_canvas.d.ts +5 -0
  44. package/build/player/lottie_light_canvas.js +12666 -0
  45. package/build/player/lottie_light_canvas.min.js +1 -0
  46. package/build/player/lottie_light_html.d.ts +5 -0
  47. package/build/player/lottie_light_html.js +12029 -0
  48. package/build/player/lottie_light_html.min.js +1 -0
  49. package/build/player/lottie_svg.d.ts +5 -0
  50. package/build/player/lottie_svg.js +14179 -0
  51. package/build/player/lottie_svg.min.js +1 -0
  52. package/build/player/lottie_worker.js +18196 -0
  53. package/build/player/lottie_worker.min.js +15 -0
  54. package/docs/json/animation.json +101 -0
  55. package/docs/json/effects/angle.json +40 -0
  56. package/docs/json/effects/checkBox.json +40 -0
  57. package/docs/json/effects/color.json +40 -0
  58. package/docs/json/effects/customValue.json +4 -0
  59. package/docs/json/effects/dropDown.json +40 -0
  60. package/docs/json/effects/fill.json +55 -0
  61. package/docs/json/effects/group.json +41 -0
  62. package/docs/json/effects/index.json +51 -0
  63. package/docs/json/effects/layer.json +33 -0
  64. package/docs/json/effects/noValue.json +1 -0
  65. package/docs/json/effects/point.json +43 -0
  66. package/docs/json/effects/proLevels.json +130 -0
  67. package/docs/json/effects/slider.json +40 -0
  68. package/docs/json/effects/stroke.json +64 -0
  69. package/docs/json/effects/tint.json +43 -0
  70. package/docs/json/effects/tritone.json +46 -0
  71. package/docs/json/helpers/blendMode.json +71 -0
  72. package/docs/json/helpers/boolean.json +14 -0
  73. package/docs/json/helpers/composite.json +15 -0
  74. package/docs/json/helpers/lineCap.json +19 -0
  75. package/docs/json/helpers/lineJoin.json +19 -0
  76. package/docs/json/helpers/mask.json +80 -0
  77. package/docs/json/helpers/textBased.json +23 -0
  78. package/docs/json/helpers/textGrouping.json +23 -0
  79. package/docs/json/helpers/textShape.json +31 -0
  80. package/docs/json/helpers/transform.json +146 -0
  81. package/docs/json/layers/image.json +113 -0
  82. package/docs/json/layers/null.json +87 -0
  83. package/docs/json/layers/preComp.json +118 -0
  84. package/docs/json/layers/shape.json +157 -0
  85. package/docs/json/layers/solid.json +120 -0
  86. package/docs/json/layers/text.json +523 -0
  87. package/docs/json/properties/doubleKeyframe.json +50 -0
  88. package/docs/json/properties/multiDimensional.json +21 -0
  89. package/docs/json/properties/multiDimensionalKeyframed.json +35 -0
  90. package/docs/json/properties/offsetKeyframe.json +53 -0
  91. package/docs/json/properties/shape.json +27 -0
  92. package/docs/json/properties/shapeKeyframed.json +35 -0
  93. package/docs/json/properties/shapeProp.json +50 -0
  94. package/docs/json/properties/shapePropKeyframe.json +54 -0
  95. package/docs/json/properties/value.json +21 -0
  96. package/docs/json/properties/valueKeyframe.json +33 -0
  97. package/docs/json/properties/valueKeyframed.json +25 -0
  98. package/docs/json/shapes/ellipse.json +54 -0
  99. package/docs/json/shapes/fill.json +48 -0
  100. package/docs/json/shapes/gFill.json +107 -0
  101. package/docs/json/shapes/gStroke.json +137 -0
  102. package/docs/json/shapes/group.json +89 -0
  103. package/docs/json/shapes/merge.json +27 -0
  104. package/docs/json/shapes/rect.json +66 -0
  105. package/docs/json/shapes/repeater.json +63 -0
  106. package/docs/json/shapes/round.json +35 -0
  107. package/docs/json/shapes/shape.json +40 -0
  108. package/docs/json/shapes/star.json +133 -0
  109. package/docs/json/shapes/stroke.json +78 -0
  110. package/docs/json/shapes/transform.json +102 -0
  111. package/docs/json/shapes/trim.json +61 -0
  112. package/docs/json/sources/chars.json +61 -0
  113. package/docs/json/sources/image.json +31 -0
  114. package/docs/json/sources/precomp.json +39 -0
  115. package/index.d.ts +197 -0
  116. package/package.json +54 -0
  117. package/player/index.html +115 -0
  118. package/player/js/3rd_party/BezierEaser.js +158 -0
  119. package/player/js/3rd_party/howler.js +5 -0
  120. package/player/js/3rd_party/seedrandom.js +237 -0
  121. package/player/js/3rd_party/transformation-matrix.js +449 -0
  122. package/player/js/EffectsManager.js +83 -0
  123. package/player/js/animation/AnimationItem.js +809 -0
  124. package/player/js/animation/AnimationItemWorkerOverride.js +157 -0
  125. package/player/js/animation/AnimationManager.js +248 -0
  126. package/player/js/animation/AnimationManagerWorkerOverride.js +201 -0
  127. package/player/js/effects/EffectsManagerPlaceholder.js +5 -0
  128. package/player/js/effects/SliderEffect.js +37 -0
  129. package/player/js/effects/TransformEffect.js +44 -0
  130. package/player/js/elements/AudioElement.js +102 -0
  131. package/player/js/elements/BaseElement.js +78 -0
  132. package/player/js/elements/BaseTextElement.js +4 -0
  133. package/player/js/elements/CompElement.js +107 -0
  134. package/player/js/elements/FootageElement.js +47 -0
  135. package/player/js/elements/ImageElement.js +42 -0
  136. package/player/js/elements/NullElement.js +39 -0
  137. package/player/js/elements/ShapeElement.js +76 -0
  138. package/player/js/elements/SolidElement.js +23 -0
  139. package/player/js/elements/TextElement.js +94 -0
  140. package/player/js/elements/canvasElements/CVBaseElement.js +167 -0
  141. package/player/js/elements/canvasElements/CVCompBaseElement.js +11 -0
  142. package/player/js/elements/canvasElements/CVCompElement.js +57 -0
  143. package/player/js/elements/canvasElements/CVContextData.js +239 -0
  144. package/player/js/elements/canvasElements/CVEffects.js +57 -0
  145. package/player/js/elements/canvasElements/CVImageElement.js +58 -0
  146. package/player/js/elements/canvasElements/CVMaskElement.js +72 -0
  147. package/player/js/elements/canvasElements/CVShapeElement.js +521 -0
  148. package/player/js/elements/canvasElements/CVSolidElement.js +30 -0
  149. package/player/js/elements/canvasElements/CVTextElement.js +244 -0
  150. package/player/js/elements/canvasElements/effects/CVGaussianBlurEffect.js +29 -0
  151. package/player/js/elements/canvasElements/effects/CVTransformEffect.js +9 -0
  152. package/player/js/elements/helpers/FrameElement.js +54 -0
  153. package/player/js/elements/helpers/HierarchyElement.js +52 -0
  154. package/player/js/elements/helpers/RenderableDOMElement.js +72 -0
  155. package/player/js/elements/helpers/RenderableElement.js +87 -0
  156. package/player/js/elements/helpers/TransformElement.js +140 -0
  157. package/player/js/elements/helpers/shapes/CVShapeData.js +33 -0
  158. package/player/js/elements/helpers/shapes/ProcessedElement.js +6 -0
  159. package/player/js/elements/helpers/shapes/SVGElementsRenderer.js +239 -0
  160. package/player/js/elements/helpers/shapes/SVGFillStyleData.js +18 -0
  161. package/player/js/elements/helpers/shapes/SVGGradientFillStyleData.js +100 -0
  162. package/player/js/elements/helpers/shapes/SVGGradientStrokeStyleData.js +20 -0
  163. package/player/js/elements/helpers/shapes/SVGNoStyleData.js +15 -0
  164. package/player/js/elements/helpers/shapes/SVGShapeData.js +28 -0
  165. package/player/js/elements/helpers/shapes/SVGStrokeStyleData.js +21 -0
  166. package/player/js/elements/helpers/shapes/SVGStyleData.js +19 -0
  167. package/player/js/elements/helpers/shapes/SVGTransformData.js +11 -0
  168. package/player/js/elements/helpers/shapes/ShapeElement.js +5 -0
  169. package/player/js/elements/helpers/shapes/ShapeGroupData.js +9 -0
  170. package/player/js/elements/helpers/shapes/ShapeTransformManager.js +61 -0
  171. package/player/js/elements/htmlElements/HBaseElement.js +88 -0
  172. package/player/js/elements/htmlElements/HCameraElement.js +170 -0
  173. package/player/js/elements/htmlElements/HCompElement.js +61 -0
  174. package/player/js/elements/htmlElements/HEffects.js +3 -0
  175. package/player/js/elements/htmlElements/HImageElement.js +42 -0
  176. package/player/js/elements/htmlElements/HShapeElement.js +261 -0
  177. package/player/js/elements/htmlElements/HSolidElement.js +36 -0
  178. package/player/js/elements/htmlElements/HTextElement.js +290 -0
  179. package/player/js/elements/svgElements/SVGBaseElement.js +181 -0
  180. package/player/js/elements/svgElements/SVGCompElement.js +28 -0
  181. package/player/js/elements/svgElements/SVGEffects.js +70 -0
  182. package/player/js/elements/svgElements/SVGEffectsPlaceholder.js +3 -0
  183. package/player/js/elements/svgElements/SVGShapeElement.js +366 -0
  184. package/player/js/elements/svgElements/SVGTextElement.js +322 -0
  185. package/player/js/elements/svgElements/effects/SVGComposableEffect.js +22 -0
  186. package/player/js/elements/svgElements/effects/SVGDropShadowEffect.js +83 -0
  187. package/player/js/elements/svgElements/effects/SVGFillFilter.js +22 -0
  188. package/player/js/elements/svgElements/effects/SVGGaussianBlurEffect.js +44 -0
  189. package/player/js/elements/svgElements/effects/SVGMatte3Effect.js +101 -0
  190. package/player/js/elements/svgElements/effects/SVGProLevelsFilter.js +108 -0
  191. package/player/js/elements/svgElements/effects/SVGStrokeEffect.js +119 -0
  192. package/player/js/elements/svgElements/effects/SVGTintEffect.js +47 -0
  193. package/player/js/elements/svgElements/effects/SVGTransformEffect.js +10 -0
  194. package/player/js/elements/svgElements/effects/SVGTritoneFilter.js +43 -0
  195. package/player/js/main.js +21 -0
  196. package/player/js/mask.js +239 -0
  197. package/player/js/module.js +153 -0
  198. package/player/js/modules/canvas.js +22 -0
  199. package/player/js/modules/canvas_light.js +25 -0
  200. package/player/js/modules/full.js +70 -0
  201. package/player/js/modules/full_worker.js +0 -0
  202. package/player/js/modules/html.js +37 -0
  203. package/player/js/modules/html_light.js +25 -0
  204. package/player/js/modules/main.js +162 -0
  205. package/player/js/modules/svg.js +37 -0
  206. package/player/js/modules/svg_light.js +25 -0
  207. package/player/js/renderers/BaseRenderer.js +187 -0
  208. package/player/js/renderers/CanvasRenderer.js +67 -0
  209. package/player/js/renderers/CanvasRendererBase.js +318 -0
  210. package/player/js/renderers/CanvasRendererWorkerOverride.js +54 -0
  211. package/player/js/renderers/HybridRenderer.js +47 -0
  212. package/player/js/renderers/HybridRendererBase.js +344 -0
  213. package/player/js/renderers/SVGRenderer.js +82 -0
  214. package/player/js/renderers/SVGRendererBase.js +255 -0
  215. package/player/js/renderers/renderersManager.js +29 -0
  216. package/player/js/utils/BaseEvent.js +42 -0
  217. package/player/js/utils/DataManager.js +676 -0
  218. package/player/js/utils/DataManagerWorkerOverrides.js +13 -0
  219. package/player/js/utils/FontManager.js +443 -0
  220. package/player/js/utils/FontManagerWorkerOverride.js +16 -0
  221. package/player/js/utils/PolynomialBezier.js +253 -0
  222. package/player/js/utils/PropertyFactory.js +489 -0
  223. package/player/js/utils/SlotManager.js +17 -0
  224. package/player/js/utils/TransformProperty.js +251 -0
  225. package/player/js/utils/animationFramePolyFill.js +25 -0
  226. package/player/js/utils/asset_loader.js +53 -0
  227. package/player/js/utils/asset_loader_worker_override.js +3 -0
  228. package/player/js/utils/audio/AudioController.js +85 -0
  229. package/player/js/utils/audio/AudioElement.js +6 -0
  230. package/player/js/utils/bez.js +251 -0
  231. package/player/js/utils/common.js +280 -0
  232. package/player/js/utils/expressions/CompInterface.js +28 -0
  233. package/player/js/utils/expressions/EffectInterface.js +111 -0
  234. package/player/js/utils/expressions/ExpressionManager.js +752 -0
  235. package/player/js/utils/expressions/ExpressionPropertyDecorator.js +463 -0
  236. package/player/js/utils/expressions/ExpressionTextPropertyDecorator.js +40 -0
  237. package/player/js/utils/expressions/ExpressionValue.js +61 -0
  238. package/player/js/utils/expressions/ExpressionValueFactory.js +102 -0
  239. package/player/js/utils/expressions/Expressions.js +48 -0
  240. package/player/js/utils/expressions/FootageInterface.js +60 -0
  241. package/player/js/utils/expressions/InterfacesProvider.js +21 -0
  242. package/player/js/utils/expressions/LayerInterface.js +179 -0
  243. package/player/js/utils/expressions/MaskInterface.js +50 -0
  244. package/player/js/utils/expressions/ProjectInterface.js +31 -0
  245. package/player/js/utils/expressions/PropertyGroupFactory.js +13 -0
  246. package/player/js/utils/expressions/PropertyInterface.js +19 -0
  247. package/player/js/utils/expressions/ShapeInterface.js +543 -0
  248. package/player/js/utils/expressions/TextInterface.js +35 -0
  249. package/player/js/utils/expressions/TextSelectorPropertyDecorator.js +44 -0
  250. package/player/js/utils/expressions/TransformInterface.js +126 -0
  251. package/player/js/utils/expressions/expressionHelpers.js +86 -0
  252. package/player/js/utils/expressions/shapes/ShapePathInterface.js +47 -0
  253. package/player/js/utils/featureSupport.js +16 -0
  254. package/player/js/utils/filters.js +32 -0
  255. package/player/js/utils/functionExtensions.js +27 -0
  256. package/player/js/utils/getFontProperties.js +42 -0
  257. package/player/js/utils/helpers/arrays.js +43 -0
  258. package/player/js/utils/helpers/assetManager.js +96 -0
  259. package/player/js/utils/helpers/blendModes.js +26 -0
  260. package/player/js/utils/helpers/bufferManager.js +61 -0
  261. package/player/js/utils/helpers/dynamicProperties.js +29 -0
  262. package/player/js/utils/helpers/effectTypes.js +3 -0
  263. package/player/js/utils/helpers/html_elements.js +6 -0
  264. package/player/js/utils/helpers/propTypes.js +3 -0
  265. package/player/js/utils/helpers/shapeEnums.js +16 -0
  266. package/player/js/utils/helpers/svg_elements.js +8 -0
  267. package/player/js/utils/imagePreloader.js +213 -0
  268. package/player/js/utils/imagePreloaderWorkerOverride.js +3 -0
  269. package/player/js/utils/markers/markerParser.js +47 -0
  270. package/player/js/utils/pooling/bezier_length_pool.js +20 -0
  271. package/player/js/utils/pooling/point_pool.js +13 -0
  272. package/player/js/utils/pooling/pool_factory.js +44 -0
  273. package/player/js/utils/pooling/pooling.js +15 -0
  274. package/player/js/utils/pooling/segments_length_pool.js +24 -0
  275. package/player/js/utils/pooling/shapeCollection_pool.js +48 -0
  276. package/player/js/utils/pooling/shape_pool.js +44 -0
  277. package/player/js/utils/shapes/DashProperty.js +63 -0
  278. package/player/js/utils/shapes/GradientProperty.js +93 -0
  279. package/player/js/utils/shapes/MouseModifier.js +222 -0
  280. package/player/js/utils/shapes/OffsetPathModifier.js +306 -0
  281. package/player/js/utils/shapes/PuckerAndBloatModifier.js +80 -0
  282. package/player/js/utils/shapes/RepeaterModifier.js +232 -0
  283. package/player/js/utils/shapes/RoundCornersModifier.js +122 -0
  284. package/player/js/utils/shapes/ShapeCollection.js +29 -0
  285. package/player/js/utils/shapes/ShapeModifiers.js +71 -0
  286. package/player/js/utils/shapes/ShapePath.js +100 -0
  287. package/player/js/utils/shapes/ShapeProperty.js +546 -0
  288. package/player/js/utils/shapes/TrimModifier.js +359 -0
  289. package/player/js/utils/shapes/ZigZagModifier.js +174 -0
  290. package/player/js/utils/shapes/shapePathBuilder.js +20 -0
  291. package/player/js/utils/text/LetterProps.js +60 -0
  292. package/player/js/utils/text/TextAnimatorDataProperty.js +34 -0
  293. package/player/js/utils/text/TextAnimatorProperty.js +610 -0
  294. package/player/js/utils/text/TextProperty.js +461 -0
  295. package/player/js/utils/text/TextSelectorProperty.js +179 -0
  296. package/player/js/worker_wrapper.js +1029 -0
  297. package/rollup.config.js +215 -0
  298. package/tasks/build.js +773 -0
  299. package/tasks/build_worker.js +164 -0
  300. package/tasks/watch.js +34 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,601 @@
1
+ ## V 5.13.0
2
+ - FIX: rollup config updated to prevent lottie-web from running in Server-Side Rendering contexts
3
+ - FIX: fixed renderGradient() cache invalidation issue so that both start and end points are checked for changes
4
+ - IMPROVEMENT: avoid recalculating static transform matrices, results in a significant performance improvement
5
+ - FIX: reloadShapes() no longer has the side effect of creating duplicate styles
6
+ - FEATURE: Web Worker supports resetSegments
7
+ - FIX: hidden styles were forcibly set as visible when using searchShapes()
8
+ - IMPROVEMENT: expressions can access unidimensional values by index
9
+ - IMPROVEMENT: expression support for thisProperty.name
10
+
11
+ ## V 5.12.1
12
+ - FIX: Transform Effect opacity reset
13
+ - FEATURE: esm support
14
+ - FIX: Fix transform matrix precalc when adding effects
15
+ - IMPROVEMENT: canvas renderer signifcantly improved in performance
16
+ - IMPROVEMENT: improved text support for emojis
17
+ - IMPROVEMENT: text renderer performance improvement when rendering out of the work area
18
+ - FIX: canvas expressions render order
19
+
20
+ ## V 5.12.0
21
+ - FEATURE: Transform Effect support
22
+ - FIX: play / pause behavior on worker
23
+ - IMPROVEMENT: move text rendering to render phase
24
+ - FEATURE: expose global object _lottieGlobal for expressions
25
+
26
+ ## V 5.11.0
27
+ - FEATURE: Essential Graphics support
28
+ - FEATURE: slots support
29
+ - FIX: update data when updateDocumentData is called
30
+ - FIX: using unregistered renderer or missing path
31
+ - FIX: added destroy null check
32
+ - FEATURE: Implement setLoop in Web Worker
33
+
34
+ ## V 5.10.2
35
+ - FEATURE: add setLoop method
36
+ - FEATURE: support for all matte masks in canvas
37
+ - FEATURE: support for alpha matte in canvas worker
38
+ - FEATURE: support for canvas renderer in Safari
39
+ - FEATURE: add DOM loaded event for canvas worker
40
+ - FIX: tint effect opacity
41
+
42
+ ## V 5.10.1
43
+ - FIX: track matte masks transform fix
44
+
45
+ ## V 5.10.0
46
+ - FIX: light versions referencing expressions interfaces
47
+ - FEATURE: Add support for new track masks by layer index
48
+ - FEATURE: Add support for zigzag (thanks @mbasaglia)
49
+ - FEATURE: Add support for offset path (thanks @mbasaglia)
50
+ - FEATURE: Customizable canvas renderer width and height
51
+ - FIX: Workaround for banner validation
52
+
53
+ ## V 5.9.6
54
+ - FIX: Bodymovin export missing comps
55
+ - FIX: Disambiguate bevelEmboss properties (thanks @mbasaglia)
56
+ - FEATURE: Add support for image export individual settings via annotations
57
+
58
+ ## V 5.9.5
59
+ - FIX: Expand the hybrid shape bounding box on stroke (thanks @mbasaglia)
60
+ - FEATURE: support filter size on drop shadow property
61
+ - FIX: canvas worker - handle destroying animation instance before data is loaded
62
+ - FIX: canvas worker = pass own canvas fix (thanks @knenkne)
63
+ - FIX: bodymovin extension out of storage
64
+ - FEATURE: integration with canilottie
65
+
66
+ ## V 5.9.4
67
+ - FIX: support for all marker definitions
68
+ - FIX: improve composable filters
69
+ - FIX: strokes with correct width on fonts
70
+
71
+ ## V 5.9.3
72
+ - FEATURE: Add support for isPaused property on lottie worker
73
+ - FEATURE: Adds support for changing volume based on the audio layer data
74
+ - FEATURE: add support for removeEventListener on worker
75
+ - FEATURE: add support for updateDocumentData on worker
76
+ - FEATURE: add text as font support on worker
77
+ - FIX: avoid crash when script does not have src
78
+
79
+ ## V 5.9.2
80
+ - FEATURE: add support for playsegments and blend mode on lottie worker
81
+ - FIX: Fix ts typing for loadAnimation parameter
82
+ - FEATURE: allows to set width and height of svg from config
83
+ - FIX: Fix getMarkerData bug
84
+ - FEATURE: Add type for goToAndPlay & goToAndStop
85
+ - FIX: add time to list of code for preventing removal
86
+ - FIX: glyphs removed from DOM before reloading
87
+
88
+ ## V 5.9.1
89
+ - FIX: navigator validation for SSR
90
+
91
+ ## V 5.9.0
92
+ - FEATURE: Added support for using shapes as animated characters
93
+ - FIX: added methods used by expressions to an array to prevent treeshaking
94
+ - DEV: Migrated code to imports
95
+ - DEV: Use Rollup for build process
96
+
97
+ ## V 5.8.1
98
+ - FEATURE: added more methods available for the lottie worker player
99
+
100
+ ## V 5.8.0
101
+ - FEATURE: lottie player as a worker support
102
+ - FEATURE: added content-visibility prop support
103
+ - FEATURE: added header check for json type (improves initial parsing specially on large files)
104
+ - FEATURE: added lottie.useWebWorker method to support loading file on a separate web worker (different than the first feature)
105
+ - FEATURE: added frame rate to comp on export (not supported by payers yet)
106
+ - FIX: random seed expression fix
107
+
108
+ ## V 5.7.14
109
+ - FEATURE: added support for Smoothness property on animated texts
110
+ - FEATURE: added support for animated text path properties
111
+ - FEATURE: added support for exporting source names as ids
112
+ - FEATURE: added clear cache button
113
+ - FIX: fixed importer with last keyframe
114
+
115
+ ## V 5.7.13
116
+ - FEATURE: added support for emoji modifiers and sequences
117
+ - FEATURE: added support for metadata export on json files
118
+
119
+ ## V 5.7.12
120
+ - FEATURE: added support for masked strokes line cap and line join
121
+ - FIX: callbacks list executing beyond index list
122
+ - FIX: missing TextExpressionSelectorPropFactor
123
+ - FEATURE: exporter improvements
124
+
125
+ ## V 5.7.11
126
+ - FIX: another exporter fix
127
+
128
+ ## V 5.7.10
129
+ - FIX: exporter fix
130
+
131
+ ## V 5.7.9
132
+ - FEATURE: added support for prefixig ids
133
+ - FEATURE: security updates
134
+ - FIX: fix image sequencing preloading
135
+ - FEATURE: added support for gradient fill expressions
136
+
137
+ ## V 5.7.8
138
+ - FIX: disable screen reader visibility of created font-nodes (thanks @)
139
+ - FEATURE: added FootageElement that supports json data layer types with expressions
140
+
141
+ ## V 5.7.7
142
+ - FIX: xhr open order
143
+ - FEATURE: added markers support
144
+ - FIX: repeaters with reduced copies
145
+ - FIX: unintentional stroke clipping on shapes with large stroke-width (thanks Manan Jadhav)
146
+ - FIX: ie11 append missing
147
+ - FIX: repeater calling trim twice
148
+
149
+ ## V 5.7.6
150
+ - FIX: es6 support on export
151
+ - IMPROVEMENT: added linting rules
152
+ - FIX: seedrandom and main fix
153
+ - FIX: image export fix
154
+
155
+ ## V 5.7.5
156
+ - FIX: Enable HImageElement to use preloaded images thanks @dbettini
157
+ - FIX: lottie-light effects breaking on destroy
158
+ - FIX: loaded_images event fired in safari
159
+
160
+ ## V 5.7.4
161
+ - FIX: `addEventListener` method returns function except `void`
162
+ - EXPRESSIONS: added support for toWorldVec, fromWorldVec and getValueAtTime for transforms
163
+ - EXPRESSIONS: fixed propertyGroup expression
164
+ - FIX: added svg effects placeholder
165
+ - FIX: added check for wrapper on destroy canvas
166
+ - EXPORTER: missing layer styles
167
+ - EXPORTER: export only work area
168
+
169
+ ## V 5.7.3
170
+ - EXPRESSIONS: Added more expressions support
171
+
172
+ ## V 5.7.2
173
+ - FIX: Trusted Types compliance by removing calls to .innerHTML
174
+ - FIX: make callback parameter of removeEventListener optional
175
+ - FEATURE: Audio Support
176
+
177
+ ## V 5.7.1
178
+ - REPORT: Improved animation report
179
+ - FIX: Expressions separate dimensions
180
+ - FIX: propertyGroup for expressions (Duik bones are supported)
181
+ - FEATURE: supported Pucked and Bloat
182
+
183
+ ## V 5.7.0
184
+ - FEATURE: Extension: reports for not supported features
185
+ - FEATURE: Extension: baking keyframes for unsupported expressions
186
+ - FEATURE: Extension: improved preview and added Skottie preview
187
+
188
+ ## V 5.6.10
189
+ - FIX: default loop to true
190
+ - FIX: removing sans-serif and monospace from font preloader to calculate correctly when font is loaded
191
+ - FIX: improved image caching when preloading svg image tags
192
+ - updated definitions
193
+
194
+ ## V 5.6.9
195
+ - fix compression options
196
+ - initialization improvement
197
+
198
+ ## V 5.6.8
199
+ - not using non breaking spaces for text spaces
200
+ - added support for exporting video layers (only export, players don't support them)
201
+ - fix for path properties open without nodes
202
+
203
+ ## V 5.6.7
204
+ - use original comp name as export name
205
+ - added default filter values for banner template
206
+ - added option to load local file as lottie player
207
+ - initialSegment set before animation configuration
208
+
209
+ ## V 5.6.6
210
+ - reading file extension correctly when copying original assets
211
+ - fixed inlined json objects with carriage returns
212
+ - added loop support for banners
213
+ - exporting adjustment layers as null layers
214
+ - added checkbox to select comp names as default
215
+ - added filter size configuration and defaulting to 100%
216
+ - Add missing animation event name definitions
217
+
218
+ ## V 5.6.5
219
+ - added initialSegment property
220
+ - fix for zip file without root folder
221
+ - support for including json in banner html template
222
+ - Export 'blur' text animator property
223
+
224
+ ## V 5.6.4
225
+ - added support for using original images as assets
226
+ - Improved log error fix
227
+ - Fixed missing assets during export
228
+
229
+ ## V 5.6.3
230
+ - Fix saving json files with special characters
231
+ - Improved lottie import
232
+
233
+ ## V 5.6.2
234
+ - Fix lottie importer gradient data without keyframes
235
+ - Added hidden layers and hidden properties support for importer
236
+ - Improved error messaging
237
+ - Added assetsPath configuration for typescript
238
+ - fixed mangled lottie declaration
239
+
240
+ ## V 5.6.1
241
+ - Fix on the exporter for older AE versions when a new project didn't have a saved destination yet
242
+
243
+ ## V 5.6.0
244
+ - Support new export mode: Rive
245
+ - Support new export mode: Banner
246
+ - Improved existing export modes
247
+ - Improved image compression solution (now PNGs get well compressed as jpegs)
248
+ - Support for importing Lottie Animations!
249
+ - fixed build to prevent polluting global scope
250
+ - text animator multiplier fix
251
+ - fixes #1883 text offset
252
+ - fixes #1878 supports id attribute for container
253
+
254
+ ## V 5.5.10
255
+ - Improvement: validating if transform is linear to remove spatial interpolation
256
+ - Fix: subtract mask transformed fix
257
+ - Expressions: added posterize time support
258
+ - Fix: incorrect easing function calculation in TextSelectorProperty
259
+ - Fix: auto oriented properties with not keyframes
260
+ - New: Implement a new Canvas renderer that can run on worker threads
261
+
262
+ ## V 5.5.9
263
+ - Typing: added resize to type definitions
264
+ - Feature: added image sequence support
265
+ - FIX: clipping compositions in canvas renderer
266
+ - FIX: added precision to auto orient
267
+
268
+ ## V 5.5.8
269
+ - FIX: Setting assets data before loading extra compositions
270
+ - FIX: Removed appending json at end of url
271
+ - FIX: Camera separate position properties
272
+ - Typing: Added animation event name to Lottie definitions
273
+ - Feature: Add focusable renderer setting for SVGs
274
+ - Feature: Added error handling for config and frame rendering
275
+
276
+ ## V 5.5.7
277
+ - EXPRESSIONS: added support for propertyIndex on shapes
278
+ - PERFORMANCE: big performance improvement on trim paths (and other modifiers) for paths that don't change over time
279
+ - NEW: improved support for astral plane characters (like emojis)
280
+
281
+ ## V 5.5.6
282
+ - FIX: surrogate pairs character support in animated text
283
+ - FIX: new expressions supported
284
+
285
+ ## V 5.5.5
286
+ - changed failed image bg to transparent
287
+ - FIX: fix for old json expressions in key function
288
+
289
+ ## V 5.5.4
290
+ - FIX: Updates to TypeScript definitions
291
+ - FEATURE: support for new expressions
292
+
293
+ ## V 5.5.3
294
+ - FEATURE: Add SVG support for Gaussian Blur effects (thanks fmalita)
295
+ - FEATURE: Add TypeScript type definitions (thanks D34THWINGS)
296
+ - FIX: removed warning of text when created by text formatted
297
+ - FIX: fixed merged characters in fonts
298
+ - FEATURE: added mutiple settings functionality to extension
299
+ - FEATURE: added support for mask opacity in expressions
300
+ - FIX: fixes #1552 html renderer wrong font measurement
301
+ - FIX: Fix masksProperties key name in JSON docs (thanks john-preston)
302
+
303
+ ## V 5.5.2
304
+ - FIX: Fix loader issue on pre-kitkat Android webview
305
+ - FIX: eroded masks in svg renderer
306
+ - FIX: text alignment in text boxes
307
+
308
+ ## V 5.5.1
309
+ - FIX: key expression for new json format
310
+ - IMPROVEMENT: forcing a rerender when resize is called in canvas
311
+ - ACCESSIBILITY: added title, description and aria label for text layers for svg renderer
312
+
313
+ ## V 5.5.0
314
+ - IMPROVEMENT: JSON filesize reduction. Around 25 to 33% filesize reduction with this new version.
315
+ - FEATURE: Bodymovin panel with new advanced settings to reduce filesize.
316
+ - FIX: honor `forceFlag` when calling `playSegments` (thanks @mrmos)
317
+ - FIX: added source-over as default blending mode for canvas renderer resetting
318
+ - FIX: fixed bezier easing property validation
319
+ - FIX: fixed property caching by index instead of bezier data
320
+ - FIX: added thisProperty expression value
321
+
322
+ ## V 5.4.4
323
+ - FIX: viewport meta tag on android with mask fix
324
+ - FIX: fixed enterFrame direction property
325
+ - FIX: explicitly iterating math methods
326
+ - FIX: added missing expression properties
327
+ - FIX: setting class attribute via setAttribute
328
+ - FIX: added value property in key method expression
329
+ - FIX: text animator expression fix
330
+ - FIX: added smooth expression support
331
+ - FIX: hcamera expression fix
332
+ - FIX: fix animated dash property canvas
333
+ - NEW: sourceRectAtTime for images fix
334
+ - NEW: Advanced option in Bodymovin extension to skip expression properties
335
+ - NEW: removed some unused json properties
336
+
337
+ ## V 5.4.3
338
+ - NEW: added blend mode support for shapes in svg renderer
339
+ - NEW: removed random ids in favour of incremental ids
340
+ - NEW: added new players
341
+ - NEW: updated build process. Removed vulnerable dependencies.
342
+ - FIX: canvas repeater fix
343
+ - FIX: Replaced typekit with Adobe Fonts support
344
+ - FIX: subtracting offsetTime for valueAtTime calculation on shapes
345
+ - FIX: expressions targeting keys fix
346
+ - FIX: multidimensional easing using first dimension value when set to 0
347
+
348
+ ## V 5.4.2
349
+ - FIX: added enabled property on effect interfaces for expression
350
+ - FIX: font measuring fix for white spaces
351
+ - FIX: supporting Effects property on layers in expressions
352
+ - FIX: canvas sibling shapes with same style fix
353
+ - FIX: caching valueAtTime correctly
354
+ - FIX: AVD exporter fix on clip paths
355
+ - FIX: AVD exporter fix on initial and end values
356
+ - FIX: formatResponse if responseText - thanks @ansmonjol
357
+ - NEW: renders class name for nested group elements - thanks @russellgoldenberg
358
+
359
+ ## V 5.4.1
360
+ - FIX: missing variable declaration
361
+
362
+ ## V 5.4.0
363
+ - EXPRESSIONS: easing functions refactored
364
+ - FIX: stroke effect fix with multiple children elements
365
+ - FIX: adding max and min values to trim path start and end
366
+ - EXPRESSIONS: added velocity property
367
+ - FIX(text): Fix charCode assignment and optimize FontManager (thanks @kwilliams-curago)
368
+ - FIX: fix for small trim paths
369
+ - EXPRESSIONS: added valueAtTime property to expression thisProperty variable
370
+ - FIX: added locationHref to gradient data
371
+ - EXPRESSIONS: big performance improvement for all expressions that use Expression Values heavily
372
+
373
+ ## V 5.3.4
374
+ - FIX: font load fix
375
+ - TEXT: End of Text character support
376
+
377
+ ## V 5.3.3
378
+ - FIX: light version fix
379
+
380
+ ## V 5.3.2
381
+ - FIX: .playSegments when forcing a new segment correctly removes the previous list
382
+ - FIX: loading external assets before rendering the first frame of the animation on canvas renderer
383
+ - FIX: clearing caching spatial bezier data when previous frame is reached
384
+ - FIX: promoting text property to dynamic properties when using text update methods
385
+ - FIX: extra comps width and height properties supported
386
+ - FIX: multiple trims fixed
387
+
388
+ ## V 5.3.1
389
+ - FIX: expressions with non computed memberExpressions
390
+ - FIX: animated gradient in svgs
391
+
392
+ ## V 5.3.0
393
+ - REFACTOR: canvas shape renderer had an important refactor. Should support new render cases and have a performance improvement.
394
+ - EXPRESSIONS: preprocessing expressions allows to prevent getting values if not needed on expressions
395
+ - EXPRESSIONS: support for position, scale and anchorPoint variables
396
+ - EXPRESSIONS: added numLayer property support to comp interfaces
397
+ - REPEATERS: support for start and end opacity
398
+ - FIX: Rendering effects before masks fixes some small render cases
399
+ - FIX: added orientation support for 3d cameras
400
+ - FIX: dashed lines were not resetted in some scenarios
401
+
402
+ ## V 5.2.1
403
+ - FIX: text animators based on words and percentages
404
+ - EXPRESSIONS: Latest Duik version support
405
+
406
+ ## V 5.2.0
407
+ - FEATURE: gradient support in canvas renderer (some cases are not supported)
408
+ - EXPRESSIONS: layer name support for expressions
409
+ - FIX: reverse play on non loops
410
+ - SUPPORT: Orient along path with separate dimensions
411
+ - FIX: trim cache issue fixed
412
+
413
+ ## V 5.1.20
414
+ - FIX: instaceof Array on expressions fixed
415
+ - FIX: text value on expressions fix
416
+ - FEATURE: new expressions supported
417
+
418
+ ## V 5.1.19
419
+ - FIX: Trim Paths with empty paths fix
420
+ - FIX: linear method fix for inverted values
421
+ - FEATURE: Ignoring merge path's last path if square
422
+ - FIX: Camera zoom
423
+ - FIX: Validating if text data is complete on first render
424
+ - FIX: Loop counting when playing backwards
425
+ - FEATURE: Added inPoint and outPoint to layer's expressions
426
+
427
+ ## V 5.1.18
428
+ - FIX: Moved defs to top to avoid Safari issues
429
+ - FEATURE: Added crossOrigin attribute to images to avoid tainted canvases
430
+ - FEATURE: Added imagePreserveAspectRatio to rendererSettings for image layers
431
+ - FIX: splitting animations in multiple files
432
+
433
+ ## V 5.1.17
434
+ - FIX: asset error handling
435
+ - FEATURE: Rove across time support
436
+ - FIX: bevel line support
437
+
438
+ ## V 5.1.16
439
+ - FIX: exporting images for older version of AE.
440
+ - FEATURE: if needed can skip images export once exported a first time.
441
+
442
+ ## V 5.1.15
443
+ - FEATURE: Added freeze/unfreeze methods to stop prevent any animation from playing
444
+ - FEATURE: Added getRegisterdAnimations method to get all current animations handled by lottie
445
+ - FEATURE: Exporting PNGs with render queue in order to fix black pixels around images
446
+ - FEATURE: Support for compressed jpgs when image is not transparent
447
+ - FEATURE: Support for exporting base 64 encoded images inlined in the json file
448
+ - FIX: Some small expression fixes
449
+
450
+ ## V 5.1.14
451
+ - FIX: Dash property animated
452
+ - FIX: Canvas renderer skips hidden layers
453
+ - FIX: When clearCanvas is set to true on the canvas renderer, every frame is rendered
454
+ - FIX: calculation error on masks
455
+
456
+ ## V 5.1.13
457
+ - EXPRESSIONS: fix for global variables used in functions
458
+ - EXPRESSIONS: operations supported for arrays
459
+
460
+ ## V 5.1.12
461
+ - EXPRESSIONS: improved memory management for declared functions
462
+ - EXPRESSIONS: speedAtTime support
463
+ - FIX: trimmed paths fix
464
+ - FIX: destroy method fix
465
+ - SSR: checking for navigator to create library
466
+
467
+ ## V 5.1.11
468
+ - PERFORMANCE: significant improvement on the svg and canvas renderers
469
+ - FIX: floating points fix
470
+
471
+ ## V 5.1.10
472
+ - TEXT LAYERS: font measuring and some text fixes
473
+ - FIX: 2d and 3d layers stack fix
474
+ - FEATURE: added support for assetsPath when using animationData (@kwilliams-curago)
475
+ - FEATURE: added getDuration method. In frames and in seconds.
476
+ - FIX: fixed breaking change from AE 15.1 with text layers
477
+
478
+ ## V 5.1.9
479
+ - EXPRESSIONS: adding name property to shape property group
480
+ - FIX: adding timeout before checking loaded fonts
481
+ - IMPROVEMENT: html elements now hide their base container when off render time bounds
482
+ - FIX: undeclared variable in reverse method
483
+ - FIX: text font issues
484
+
485
+ ## V 5.1.8
486
+ - FIX: centered tracking
487
+ - FIX: augmenting linearity threshold
488
+ - FIX: using quaternions to calculate 3d orientation
489
+ - FIX: undeclared variables
490
+ - FIX: CW CCW ellipse fix
491
+ - EXPRESSIONS: added xRotation and yRotation support
492
+ - FEATURE: added skew to transform calculations
493
+ - FIX: Time remap on html renderer
494
+ - FEATURE: calculating shape bounds for html shape elements without depending on getBBox
495
+ - FEATURE: Supporting custom tags on html renderer
496
+ - FIX: dash array fix
497
+
498
+
499
+ ## V 5.1.7
500
+ - FIX: looping and non looping animations end frame fix
501
+
502
+ ## V 5.1.6
503
+ - FIX: HTMLRenderer image fix
504
+ - FIX: HTMLRenderer masked comp fix
505
+ - FIX: Text fWeight precedence over fStyle (thanks @nick-vincent)
506
+
507
+ ## V 5.1.5
508
+ - FIX: text selector fix
509
+ - FIX: text expression fix
510
+ - FEATURE: more expressions supported
511
+
512
+ ## V 5.1.4
513
+ - FIX: hidden parented layer with mask
514
+ - FIX: gradient property animated
515
+ - FIX: hindi combined characters support with text as font
516
+
517
+ ## V 5.1.3
518
+ - FIX: Color interpolation fix
519
+ - FIX: id and classes fix for images and solids
520
+ - FIX: canvas nested groups transform fix
521
+ - FIX: lottie_light.js fix
522
+
523
+ ## V 5.1.2
524
+ - FIX: Expressions switch statements adding variable declaration when missing
525
+
526
+ ## V 5.1.1
527
+ - Text Layer keyframed fix
528
+
529
+ ## V 5.1.0
530
+ - FEATURE: support for all text document property updates usign TextLayer.updateDocumentData (check Wiki for more information)
531
+ - FEATURE: text layers with text boxes have two new methods: TextLayer.canResizeFont and TextLayer.setMinimumFontSize (check Wiki for more information)
532
+ - PERFORMANCE: Significant performance improvement on all renderers
533
+ - PERFORMANCE: repeaters significant performance improvement
534
+ - PERFORMANCE: gradients with opacity significant performance improvement
535
+ - REFACTOR: reduced and organized main element classes
536
+ - TEXT: text align fix for font based text layers
537
+
538
+ ## V 5.0.6
539
+ - FIX: totalFrames and resetFrames
540
+ - FIX: canvas destroy method
541
+ - FIX: expressions rect size support
542
+ - FIX: multiple requestAnimationFrame fix
543
+ - FIX: variable not being declared
544
+ - FEATURE: support for custom viewBox
545
+
546
+ ## V 5.0.5
547
+ - FIX: totalFrames now ends at previous frame to respect AE's last frame
548
+ - FIX: duplicate requestAnimationFrame call
549
+ - CHANGE: removed M0,0 added to every path. Should fix chrome issues.
550
+ - REFACTOR: small changes on AnimationItem
551
+
552
+ ## V 5.0.4
553
+ - FIX: if initial value for multidimensional properties was 0 and not in start point, it wasn't getting rendered
554
+ - EXPRESSIONS: support for "anchor_point"
555
+ - PERFORMANCE: separated opacity from transform properties
556
+ - FIX: effects properties offset
557
+ - FIX: 3d orientation for negative values
558
+
559
+ ## V 5.0.3
560
+ - FIX: IE Arrays support
561
+ - FIX: destroy method wasn't releasing all memory if a single animation was loaded.
562
+ - FIX: IE masks fix when used as Alpha Masks with gradients.
563
+
564
+ ## V 5.0.2
565
+ - IE 10 fix
566
+ - loopIn and loopOut fix
567
+
568
+ ## V 5.0.1
569
+ - expression fixes
570
+ - text box fix
571
+ - performance improvements
572
+
573
+ ## V 5.0.0
574
+ - bodymovin renamed to lottie!
575
+ - gradients performance improved
576
+ - cleaned up code
577
+
578
+ ## V 4.13.0
579
+ - text expression support
580
+ - text update support with updateDocumentData (check wiki)
581
+ - tangentOnPath, normalOnPath and more expressions
582
+ - loaded_images event
583
+ - fixed global calls
584
+ - fixed ie9 error
585
+
586
+ ## V 4.12.3
587
+ - valueAtTime fix
588
+
589
+ ## V 4.12.2
590
+ - caching fix
591
+
592
+ ## V 4.12.1
593
+ - velocityAtTime fix
594
+
595
+ ## V 4.12.0
596
+ - pointOnLine support
597
+ - createPath support
598
+ - points, inTangents, outTangents support
599
+ - expressions fixes
600
+ - className for container via loading config
601
+ - 3d orientation fix