lottie-ios 3.2.3 → 3.4.2

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 (434) hide show
  1. package/.github/actions/setup/action.yml +32 -0
  2. package/.github/issue_template.md +6 -23
  3. package/.github/workflows/main.yml +98 -0
  4. package/.github/workflows/stale_issues.yml +17 -0
  5. package/.spi.yml +6 -0
  6. package/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata +7 -0
  7. package/.swiftpm/xcode/package.xcworkspace/xcuserdata/cal.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  8. package/.swiftpm/xcode/package.xcworkspace/xcuserdata/calstephens.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  9. package/.swiftpm/xcode/xcuserdata/{brandonwithrow.xcuserdatad → cal.xcuserdatad}/xcschemes/xcschememanagement.plist +25 -15
  10. package/.swiftpm/xcode/xcuserdata/calstephens.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
  11. package/Gemfile +4 -0
  12. package/Gemfile.lock +102 -0
  13. package/Lottie.xcodeproj/project.pbxproj +2011 -1972
  14. package/Lottie.xcodeproj/project.xcworkspace/contents.xcworkspacedata +1 -1
  15. package/Lottie.xcodeproj/project.xcworkspace/xcuserdata/cal.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  16. package/Lottie.xcodeproj/xcshareddata/xcschemes/{Lottie_iOS.xcscheme → Lottie (iOS).xcscheme } +15 -18
  17. package/Lottie.xcodeproj/xcshareddata/xcschemes/{Lottie_tvOS.xcscheme → Lottie (macOS).xcscheme } +5 -18
  18. package/Lottie.xcodeproj/xcshareddata/xcschemes/{Lottie_macOS.xcscheme → Lottie (tvOS).xcscheme } +5 -18
  19. package/Lottie.xcodeproj/xcuserdata/cal.xcuserdatad/xcschemes/xcschememanagement.plist +37 -0
  20. package/Lottie.xcodeproj/xcuserdata/calstephens.xcuserdatad/xcschemes/xcschememanagement.plist +24 -0
  21. package/Lottie.xcworkspace/contents.xcworkspacedata +10 -0
  22. package/Lottie.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  23. package/Lottie.xcworkspace/xcshareddata/swiftpm/Package.resolved +34 -0
  24. package/Lottie.xcworkspace/xcuserdata/cal.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  25. package/{Lottie.xcodeproj/xcuserdata/brandonwithrow.xcuserdatad → Lottie.xcworkspace/xcuserdata/cal.xcuserdatad}/xcdebugger/Breakpoints_v2.xcbkptlist +2 -2
  26. package/Lottie.xcworkspace/xcuserdata/cal.xcuserdatad/xcdebugger/Expressions.xcexplist +153 -0
  27. package/Lottie.xcworkspace/xcuserdata/calstephens.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  28. package/Lottie.xcworkspace/xcuserdata/calstephens.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +22 -0
  29. package/Lottie.xcworkspace/xcuserdata/calstephens.xcuserdatad/xcdebugger/Expressions.xcexplist +138 -0
  30. package/Lottie.xcworkspace/xcuserdata/calstephens.xcuserdatad/xcschemes/xcschememanagement.plist +30 -0
  31. package/Package.swift +5 -15
  32. package/README.md +40 -60
  33. package/Rakefile +160 -0
  34. package/Sources/Private/CoreAnimation/Animations/CAAnimation+TimingConfiguration.swift +81 -0
  35. package/Sources/Private/CoreAnimation/Animations/CALayer+addAnimation.swift +447 -0
  36. package/Sources/Private/CoreAnimation/Animations/CombinedShapeAnimation.swift +81 -0
  37. package/Sources/Private/CoreAnimation/Animations/CustomPathAnimation.swift +41 -0
  38. package/Sources/Private/CoreAnimation/Animations/EllipseAnimation.swift +55 -0
  39. package/Sources/Private/CoreAnimation/Animations/GradientAnimations.swift +210 -0
  40. package/Sources/Private/CoreAnimation/Animations/LayerProperty.swift +229 -0
  41. package/Sources/Private/CoreAnimation/Animations/OpacityAnimation.swift +52 -0
  42. package/Sources/Private/CoreAnimation/Animations/RectangleAnimation.swift +58 -0
  43. package/Sources/Private/CoreAnimation/Animations/ShapeAnimation.swift +257 -0
  44. package/Sources/Private/CoreAnimation/Animations/StarAnimation.swift +124 -0
  45. package/Sources/Private/CoreAnimation/Animations/StrokeAnimation.swift +73 -0
  46. package/Sources/Private/CoreAnimation/Animations/TransformAnimations.swift +205 -0
  47. package/Sources/Private/CoreAnimation/Animations/VisibilityAnimation.swift +37 -0
  48. package/Sources/Private/CoreAnimation/CompatibilityTracker.swift +130 -0
  49. package/Sources/Private/CoreAnimation/CoreAnimationLayer.swift +497 -0
  50. package/Sources/Private/CoreAnimation/Extensions/CALayer+fillBounds.swift +35 -0
  51. package/Sources/Private/CoreAnimation/Extensions/KeyframeGroup+exactlyOneKeyframe.swift +37 -0
  52. package/Sources/Private/CoreAnimation/Extensions/Keyframes+combinedIfPossible.swift +154 -0
  53. package/Sources/Private/CoreAnimation/Layers/AnimationLayer.swift +83 -0
  54. package/Sources/Private/CoreAnimation/Layers/BaseAnimationLayer.swift +33 -0
  55. package/Sources/Private/CoreAnimation/Layers/BaseCompositionLayer.swift +88 -0
  56. package/Sources/Private/CoreAnimation/Layers/CALayer+setupLayerHierarchy.swift +167 -0
  57. package/Sources/Private/CoreAnimation/Layers/GradientRenderLayer.swift +94 -0
  58. package/Sources/Private/CoreAnimation/Layers/ImageLayer.swift +79 -0
  59. package/Sources/Private/CoreAnimation/Layers/LayerModel+makeAnimationLayer.swift +64 -0
  60. package/Sources/Private/CoreAnimation/Layers/MaskCompositionLayer.swift +138 -0
  61. package/Sources/Private/CoreAnimation/Layers/PreCompLayer.swift +140 -0
  62. package/Sources/Private/CoreAnimation/Layers/RepeaterLayer.swift +85 -0
  63. package/Sources/Private/CoreAnimation/Layers/ShapeItemLayer.swift +315 -0
  64. package/Sources/Private/CoreAnimation/Layers/ShapeLayer.swift +390 -0
  65. package/Sources/Private/CoreAnimation/Layers/SolidLayer.swift +47 -0
  66. package/Sources/Private/CoreAnimation/Layers/TextLayer.swift +91 -0
  67. package/Sources/Private/CoreAnimation/Layers/TransformLayer.swift +11 -0
  68. package/Sources/Private/CoreAnimation/ValueProviderStore.swift +139 -0
  69. package/{lottie-swift/src/Private → Sources/Private/MainThread}/LayerContainers/CompLayers/CompositionLayer.swift +94 -86
  70. package/{lottie-swift/src/Private → Sources/Private/MainThread}/LayerContainers/CompLayers/ImageCompositionLayer.swift +24 -21
  71. package/{lottie-swift/src/Private → Sources/Private/MainThread}/LayerContainers/CompLayers/MaskContainerLayer.swift +75 -54
  72. package/{lottie-swift/src/Private → Sources/Private/MainThread}/LayerContainers/CompLayers/NullCompositionLayer.swift +5 -5
  73. package/{lottie-swift/src/Private → Sources/Private/MainThread}/LayerContainers/CompLayers/PreCompositionLayer.swift +59 -43
  74. package/{lottie-swift/src/Private → Sources/Private/MainThread}/LayerContainers/CompLayers/ShapeCompositionLayer.swift +22 -20
  75. package/{lottie-swift/src/Private → Sources/Private/MainThread}/LayerContainers/CompLayers/SolidCompositionLayer.swift +26 -17
  76. package/{lottie-swift/src/Private → Sources/Private/MainThread}/LayerContainers/CompLayers/TextCompositionLayer.swift +42 -36
  77. package/{lottie-swift/src/Private/LayerContainers/AnimationContainer.swift → Sources/Private/MainThread/LayerContainers/MainThreadAnimationLayer.swift} +200 -140
  78. package/Sources/Private/MainThread/LayerContainers/Utility/CachedImageProvider.swift +47 -0
  79. package/{lottie-swift/src/Private → Sources/Private/MainThread}/LayerContainers/Utility/CompositionLayersInitializer.swift +33 -24
  80. package/{lottie-swift/src/Private/LayerContainers/Utility/TextLayer.swift → Sources/Private/MainThread/LayerContainers/Utility/CoreTextRenderLayer.swift} +149 -106
  81. package/{lottie-swift/src/Private → Sources/Private/MainThread}/LayerContainers/Utility/InvertedMatteLayer.swift +26 -24
  82. package/Sources/Private/MainThread/LayerContainers/Utility/LayerFontProvider.swift +41 -0
  83. package/{lottie-swift/src/Private → Sources/Private/MainThread}/LayerContainers/Utility/LayerImageProvider.swift +20 -16
  84. package/Sources/Private/MainThread/LayerContainers/Utility/LayerTextProvider.swift +40 -0
  85. package/{lottie-swift/src/Private → Sources/Private/MainThread}/LayerContainers/Utility/LayerTransformNode.swift +82 -67
  86. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Extensions/ItemsExtension.swift +9 -4
  87. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/NodeProperties/NodeProperty.swift +29 -21
  88. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/NodeProperties/Protocols/AnyNodeProperty.swift +16 -10
  89. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/NodeProperties/Protocols/AnyValueContainer.swift +6 -6
  90. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/NodeProperties/Protocols/KeypathSearchable.swift +5 -5
  91. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/NodeProperties/Protocols/NodePropertyMap.swift +10 -8
  92. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/NodeProperties/ValueContainer.swift +25 -21
  93. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/NodeProperties/ValueProviders/GroupInterpolator.swift +23 -17
  94. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/NodeProperties/ValueProviders/SingleValueProvider.swift +22 -17
  95. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Nodes/ModifierNodes/TrimPathNode.swift +110 -79
  96. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Nodes/OutputNodes/GroupOutputNode.swift +22 -16
  97. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Nodes/OutputNodes/PassThroughOutputNode.swift +19 -15
  98. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Nodes/OutputNodes/PathOutputNode.swift +22 -20
  99. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Nodes/OutputNodes/Renderables/FillRenderer.swift +22 -23
  100. package/Sources/Private/MainThread/NodeRenderSystem/Nodes/OutputNodes/Renderables/GradientFillRenderer.swift +247 -0
  101. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Nodes/OutputNodes/Renderables/GradientStrokeRenderer.swift +30 -24
  102. package/{lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/GradientFillRenderer.swift → Sources/Private/MainThread/NodeRenderSystem/Nodes/OutputNodes/Renderables/LegacyGradientFillRenderer.swift} +93 -66
  103. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Nodes/OutputNodes/Renderables/StrokeRenderer.swift +23 -19
  104. package/Sources/Private/MainThread/NodeRenderSystem/Nodes/PathNodes/EllipseNode.swift +139 -0
  105. package/Sources/Private/MainThread/NodeRenderSystem/Nodes/PathNodes/PolygonNode.swift +170 -0
  106. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Nodes/PathNodes/RectNode.swift +95 -58
  107. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Nodes/PathNodes/ShapeNode.swift +42 -29
  108. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Nodes/PathNodes/StarNode.swift +108 -69
  109. package/Sources/Private/MainThread/NodeRenderSystem/Nodes/RenderContainers/GroupNode.swift +155 -0
  110. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Nodes/RenderNodes/FillNode.swift +51 -37
  111. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Nodes/RenderNodes/GradientFillNode.swift +57 -42
  112. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Nodes/RenderNodes/GradientStrokeNode.swift +66 -58
  113. package/Sources/Private/MainThread/NodeRenderSystem/Nodes/RenderNodes/StrokeNode.swift +169 -0
  114. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Nodes/Text/TextAnimatorNode.swift +138 -119
  115. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Protocols/AnimatorNode.swift +80 -79
  116. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Protocols/PathNode.swift +5 -3
  117. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/Protocols/RenderNode.swift +22 -17
  118. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/RenderLayers/ShapeContainerLayer.swift +27 -24
  119. package/{lottie-swift/src/Private → Sources/Private/MainThread}/NodeRenderSystem/RenderLayers/ShapeRenderLayer.swift +34 -25
  120. package/Sources/Private/Model/Animation.swift +160 -0
  121. package/Sources/Private/Model/Assets/Asset.swift +43 -0
  122. package/{lottie-swift/src → Sources}/Private/Model/Assets/AssetLibrary.swift +40 -13
  123. package/Sources/Private/Model/Assets/ImageAsset.swift +112 -0
  124. package/{lottie-swift/src → Sources}/Private/Model/Assets/PrecompAsset.swift +20 -10
  125. package/Sources/Private/Model/DictionaryInitializable.swift +67 -0
  126. package/Sources/Private/Model/Extensions/Bundle.swift +34 -0
  127. package/{lottie-swift/src → Sources}/Private/Model/Extensions/KeyedDecodingContainerExtensions.swift +8 -4
  128. package/Sources/Private/Model/Keyframes/KeyframeData.swift +113 -0
  129. package/Sources/Private/Model/Keyframes/KeyframeGroup.swift +222 -0
  130. package/{lottie-swift/src → Sources}/Private/Model/Layers/ImageLayerModel.swift +21 -11
  131. package/Sources/Private/Model/Layers/LayerModel.swift +228 -0
  132. package/{lottie-swift/src → Sources}/Private/Model/Layers/PreCompLayerModel.swift +39 -22
  133. package/{lottie-swift/src → Sources}/Private/Model/Layers/ShapeLayerModel.swift +23 -12
  134. package/{lottie-swift/src → Sources}/Private/Model/Layers/SolidLayerModel.swift +31 -19
  135. package/{lottie-swift/src → Sources}/Private/Model/Layers/TextLayerModel.swift +33 -19
  136. package/Sources/Private/Model/Objects/DashPattern.swift +44 -0
  137. package/Sources/Private/Model/Objects/Marker.swift +33 -0
  138. package/Sources/Private/Model/Objects/Mask.swift +80 -0
  139. package/Sources/Private/Model/Objects/Transform.swift +179 -0
  140. package/Sources/Private/Model/ShapeItems/Ellipse.swift +74 -0
  141. package/Sources/Private/Model/ShapeItems/Fill.swift +74 -0
  142. package/Sources/Private/Model/ShapeItems/GradientFill.swift +137 -0
  143. package/Sources/Private/Model/ShapeItems/GradientStroke.swift +185 -0
  144. package/Sources/Private/Model/ShapeItems/Group.swift +48 -0
  145. package/{lottie-swift/src → Sources}/Private/Model/ShapeItems/Merge.swift +29 -12
  146. package/Sources/Private/Model/ShapeItems/Rectangle.swift +72 -0
  147. package/Sources/Private/Model/ShapeItems/Repeater.swift +135 -0
  148. package/Sources/Private/Model/ShapeItems/Shape.swift +56 -0
  149. package/Sources/Private/Model/ShapeItems/ShapeItem.swift +163 -0
  150. package/Sources/Private/Model/ShapeItems/ShapeTransform.swift +135 -0
  151. package/Sources/Private/Model/ShapeItems/Star.swift +131 -0
  152. package/Sources/Private/Model/ShapeItems/Stroke.swift +101 -0
  153. package/Sources/Private/Model/ShapeItems/Trim.swift +77 -0
  154. package/Sources/Private/Model/Text/Font.swift +61 -0
  155. package/{lottie-swift/src → Sources}/Private/Model/Text/Glyph.swift +63 -39
  156. package/Sources/Private/Model/Text/TextAnimator.swift +164 -0
  157. package/Sources/Private/Model/Text/TextDocument.swift +123 -0
  158. package/Sources/Private/RootAnimationLayer.swift +51 -0
  159. package/{lottie-swift/src → Sources}/Private/Utility/Debugging/AnimatorNodeDebugging.swift +7 -7
  160. package/{lottie-swift/src → Sources}/Private/Utility/Debugging/LayerDebugging.swift +72 -48
  161. package/Sources/Private/Utility/Debugging/TestHelpers.swift +10 -0
  162. package/{lottie-swift/src → Sources}/Private/Utility/Extensions/AnimationKeypathExtension.swift +69 -59
  163. package/Sources/Private/Utility/Extensions/BlendMode+Filter.swift +31 -0
  164. package/Sources/Private/Utility/Extensions/CGColor+RGB.swift +22 -0
  165. package/{lottie-swift/src → Sources}/Private/Utility/Extensions/CGFloatExtensions.swift +70 -67
  166. package/Sources/Private/Utility/Extensions/DataExtension.swift +27 -0
  167. package/Sources/Private/Utility/Extensions/MathKit.swift +450 -0
  168. package/Sources/Private/Utility/Extensions/StringExtensions.swift +38 -0
  169. package/{lottie-swift/src → Sources}/Private/Utility/Helpers/AnimationContext.swift +42 -16
  170. package/Sources/Private/Utility/Interpolatable/InterpolatableExtensions.swift +134 -0
  171. package/{lottie-swift/src → Sources}/Private/Utility/Interpolatable/KeyframeExtensions.swift +13 -10
  172. package/Sources/Private/Utility/Interpolatable/KeyframeGroup+Extensions.swift +59 -0
  173. package/{lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders → Sources/Private/Utility/Interpolatable}/KeyframeInterpolator.swift +125 -108
  174. package/{lottie-swift/src → Sources}/Private/Utility/Primitives/BezierPath.swift +229 -143
  175. package/Sources/Private/Utility/Primitives/CGPointExtension.swift +35 -0
  176. package/{lottie-swift/src → Sources}/Private/Utility/Primitives/ColorExtension.swift +46 -14
  177. package/{lottie-swift/src → Sources}/Private/Utility/Primitives/CompoundBezierPath.swift +58 -49
  178. package/Sources/Private/Utility/Primitives/CurveVertex.swift +184 -0
  179. package/Sources/Private/Utility/Primitives/PathElement.swift +75 -0
  180. package/Sources/Private/Utility/Primitives/UnitBezier.swift +115 -0
  181. package/Sources/Private/Utility/Primitives/VectorsExtensions.swift +341 -0
  182. package/Sources/Public/Animation/AnimationPublic.swift +266 -0
  183. package/Sources/Public/Animation/AnimationView.swift +1335 -0
  184. package/Sources/Public/Animation/AnimationViewInitializers.swift +109 -0
  185. package/Sources/Public/AnimationCache/AnimationCacheProvider.swift +22 -0
  186. package/{lottie-swift/src → Sources}/Public/AnimationCache/LRUAnimationCache.swift +22 -18
  187. package/Sources/Public/DynamicProperties/AnimationKeypath.swift +49 -0
  188. package/Sources/Public/DynamicProperties/AnyValueProvider.swift +132 -0
  189. package/{lottie-swift/src → Sources}/Public/DynamicProperties/ValueProviders/ColorValueProvider.swift +54 -36
  190. package/{lottie-swift/src → Sources}/Public/DynamicProperties/ValueProviders/FloatValueProvider.swift +40 -36
  191. package/Sources/Public/DynamicProperties/ValueProviders/GradientValueProvider.swift +123 -0
  192. package/{lottie-swift/src → Sources}/Public/DynamicProperties/ValueProviders/PointValueProvider.swift +40 -35
  193. package/{lottie-swift/src → Sources}/Public/DynamicProperties/ValueProviders/SizeValueProvider.swift +40 -35
  194. package/{lottie-swift/src → Sources}/Public/FontProvider/AnimationFontProvider.swift +15 -8
  195. package/Sources/Public/ImageProvider/AnimationImageProvider.swift +21 -0
  196. package/Sources/Public/Keyframes/Interpolatable.swift +253 -0
  197. package/Sources/Public/Keyframes/Keyframe.swift +92 -0
  198. package/Sources/Public/Logging/LottieLogger.swift +137 -0
  199. package/Sources/Public/LottieConfiguration.swift +143 -0
  200. package/{lottie-swift/src → Sources}/Public/Primitives/AnimationTime.swift +1 -1
  201. package/{lottie-swift/src → Sources}/Public/Primitives/Color.swift +10 -6
  202. package/{lottie-swift/src → Sources}/Public/Primitives/Vectors.swift +13 -12
  203. package/Sources/Public/TextProvider/AnimationTextProvider.swift +53 -0
  204. package/{lottie-swift/src → Sources}/Public/iOS/AnimatedButton.swift +42 -26
  205. package/{lottie-swift/src → Sources}/Public/iOS/AnimatedControl.swift +100 -91
  206. package/{lottie-swift/src → Sources}/Public/iOS/AnimatedSwitch.swift +128 -94
  207. package/{lottie-swift/src → Sources}/Public/iOS/AnimationSubview.swift +3 -3
  208. package/Sources/Public/iOS/AnimationViewBase.swift +78 -0
  209. package/{lottie-swift/src → Sources}/Public/iOS/BundleImageProvider.swift +36 -34
  210. package/{lottie-swift/src → Sources}/Public/iOS/Compatibility/CompatibleAnimationKeypath.swift +4 -0
  211. package/{lottie-swift/src → Sources}/Public/iOS/Compatibility/CompatibleAnimationView.swift +38 -29
  212. package/{lottie-swift/src → Sources}/Public/iOS/FilepathImageProvider.swift +24 -21
  213. package/{lottie-swift/src → Sources}/Public/iOS/UIColorExtension.swift +4 -4
  214. package/{lottie-swift/src/Public/MacOS/AnimationSubview.swift → Sources/Public/macOS/AnimationSubview.macOS.swift} +4 -5
  215. package/{lottie-swift/src/Public/MacOS/LottieView.swift → Sources/Public/macOS/AnimationViewBase.macOS.swift} +58 -50
  216. package/{lottie-swift/src/Public/MacOS/BundleImageProvider.swift → Sources/Public/macOS/BundleImageProvider.macOS.swift} +31 -32
  217. package/Sources/Public/macOS/FilepathImageProvider.macOS.swift +67 -0
  218. package/Tests/AnimationKeypathTests.swift +103 -0
  219. package/Tests/AutomaticEngineTests.swift +57 -0
  220. package/Tests/BundleTests.swift +25 -0
  221. package/Tests/DataURLTests.swift +64 -0
  222. package/Tests/ParsingTests.swift +43 -0
  223. package/Tests/PerformanceTests.swift +214 -0
  224. package/Tests/Samples/9squares_AlBoardman.json +1 -0
  225. package/Tests/Samples/Boat_Loader.json +1 -0
  226. package/Tests/Samples/HamburgerArrow.json +1 -0
  227. package/Tests/Samples/IconTransitions.json +1 -0
  228. package/Tests/Samples/Images/dog.png +0 -0
  229. package/Tests/Samples/Issues/issue_1125.json +1 -0
  230. package/Tests/Samples/Issues/issue_1260.json +1 -0
  231. package/Tests/Samples/Issues/issue_1403.json +1 -0
  232. package/Tests/Samples/Issues/issue_1407.json +1 -0
  233. package/Tests/Samples/Issues/issue_1460.json +1 -0
  234. package/Tests/Samples/Issues/issue_1488.json +1 -0
  235. package/Tests/Samples/Issues/issue_1505.json +1 -0
  236. package/Tests/Samples/Issues/issue_1541.json +1 -0
  237. package/Tests/Samples/Issues/issue_1557.json +1 -0
  238. package/Tests/Samples/Issues/issue_1603.json +1 -0
  239. package/Tests/Samples/Issues/issue_1628.json +1 -0
  240. package/Tests/Samples/Issues/issue_1636.json +1 -0
  241. package/Tests/Samples/Issues/issue_1643.json +1 -0
  242. package/Tests/Samples/Issues/issue_1655.json +1 -0
  243. package/Tests/Samples/Issues/issue_1664.json +1 -0
  244. package/Tests/Samples/Issues/issue_1683.json +1 -0
  245. package/Tests/Samples/Issues/issue_1687.json +1 -0
  246. package/Tests/Samples/Issues/issue_1711.json +1 -0
  247. package/Tests/Samples/Issues/issue_1717.json +1 -0
  248. package/Tests/Samples/Issues/issue_769.json +1 -0
  249. package/Tests/Samples/Issues/issue_885.json +1 -0
  250. package/Tests/Samples/Issues/issue_965.json +1 -0
  251. package/Tests/Samples/Issues/pr_1536.json +1 -0
  252. package/Tests/Samples/Issues/pr_1563.json +8439 -0
  253. package/Tests/Samples/Issues/pr_1592.json +5527 -0
  254. package/Tests/Samples/Issues/pr_1599.json +738 -0
  255. package/Tests/Samples/Issues/pr_1604_1.json +1 -0
  256. package/Tests/Samples/Issues/pr_1604_2.json +1 -0
  257. package/Tests/Samples/Issues/pr_1632_1.json +1 -0
  258. package/Tests/Samples/Issues/pr_1632_2.json +1 -0
  259. package/Tests/Samples/Issues/pr_1686.json +513 -0
  260. package/Tests/Samples/Issues/pr_1698.json +1 -0
  261. package/Tests/Samples/Issues/pr_1699.json +1 -0
  262. package/Tests/Samples/LottieFiles/LICENSE.md +14 -0
  263. package/Tests/Samples/LottieFiles/bounce_strokes.json +1 -0
  264. package/Tests/Samples/LottieFiles/cactus.json +1 -0
  265. package/Tests/Samples/LottieFiles/dog_car_ride.json +1 -0
  266. package/Tests/Samples/LottieFiles/draft_icon.json +1 -0
  267. package/Tests/Samples/LottieFiles/fireworks.json +1 -0
  268. package/Tests/Samples/LottieFiles/gradient_1.json +1 -0
  269. package/Tests/Samples/LottieFiles/gradient_2.json +1 -0
  270. package/Tests/Samples/LottieFiles/gradient_pill.json +1 -0
  271. package/Tests/Samples/LottieFiles/gradient_shapes.json +1 -0
  272. package/Tests/Samples/LottieFiles/gradient_square.json +1 -0
  273. package/Tests/Samples/LottieFiles/growth.json +1 -0
  274. package/Tests/Samples/LottieFiles/infinity_loader.json +1 -0
  275. package/Tests/Samples/LottieFiles/loading_dots_1.json +1 -0
  276. package/Tests/Samples/LottieFiles/loading_dots_2.json +1 -0
  277. package/Tests/Samples/LottieFiles/loading_dots_3.json +1 -0
  278. package/Tests/Samples/LottieFiles/loading_gradient_strokes.json +1 -0
  279. package/Tests/Samples/LottieFiles/settings_slider.json +1 -0
  280. package/Tests/Samples/LottieFiles/shop.json +1 -0
  281. package/Tests/Samples/LottieFiles/step_loader.json +1 -0
  282. package/Tests/Samples/LottieLogo1.json +1 -0
  283. package/Tests/Samples/LottieLogo1_masked.json +1 -0
  284. package/Tests/Samples/LottieLogo2.json +1 -0
  285. package/Tests/Samples/MotionCorpse_Jrcanest.json +1 -0
  286. package/Tests/Samples/Nonanimating/BasicLayers.json +1 -0
  287. package/Tests/Samples/Nonanimating/DisableNodesTest.json +1 -0
  288. package/Tests/Samples/Nonanimating/FirstText.json +1 -0
  289. package/Tests/Samples/Nonanimating/GeometryTransformTest.json +1 -0
  290. package/Tests/Samples/Nonanimating/Text_AnimatedProperties.json +1 -0
  291. package/Tests/Samples/Nonanimating/Text_Glyph.json +1 -0
  292. package/Tests/Samples/Nonanimating/Text_NoAnimation.json +1 -0
  293. package/Tests/Samples/Nonanimating/Text_NoGlyph.json +1 -0
  294. package/Tests/Samples/Nonanimating/Zoom.json +1 -0
  295. package/Tests/Samples/Nonanimating/_dog.json +1 -0
  296. package/Tests/Samples/Nonanimating/base64Test.json +1 -0
  297. package/Tests/Samples/Nonanimating/blend_mode_test.json +1 -0
  298. package/Tests/Samples/Nonanimating/keypathTest.json +1 -0
  299. package/Tests/Samples/Nonanimating/verifyLineHeight.json +1 -0
  300. package/Tests/Samples/PinJump.json +1 -0
  301. package/Tests/Samples/Switch.json +1 -0
  302. package/Tests/Samples/Switch_States.json +1 -0
  303. package/Tests/Samples/TwitterHeart.json +1 -0
  304. package/Tests/Samples/TwitterHeartButton.json +1 -0
  305. package/Tests/Samples/TypeFace/A.json +1 -0
  306. package/Tests/Samples/TypeFace/Apostrophe.json +1 -0
  307. package/Tests/Samples/TypeFace/B.json +1 -0
  308. package/Tests/Samples/TypeFace/BlinkingCursor.json +1 -0
  309. package/Tests/Samples/TypeFace/C.json +1 -0
  310. package/Tests/Samples/TypeFace/Colon.json +1 -0
  311. package/Tests/Samples/TypeFace/Comma.json +1 -0
  312. package/Tests/Samples/TypeFace/D.json +1 -0
  313. package/Tests/Samples/TypeFace/E.json +1 -0
  314. package/Tests/Samples/TypeFace/F.json +1 -0
  315. package/Tests/Samples/TypeFace/G.json +1 -0
  316. package/Tests/Samples/TypeFace/H.json +1 -0
  317. package/Tests/Samples/TypeFace/I.json +1 -0
  318. package/Tests/Samples/TypeFace/J.json +1 -0
  319. package/Tests/Samples/TypeFace/K.json +1 -0
  320. package/Tests/Samples/TypeFace/L.json +1 -0
  321. package/Tests/Samples/TypeFace/M.json +1 -0
  322. package/Tests/Samples/TypeFace/N.json +1 -0
  323. package/Tests/Samples/TypeFace/O.json +1 -0
  324. package/Tests/Samples/TypeFace/P.json +1 -0
  325. package/Tests/Samples/TypeFace/Q.json +1 -0
  326. package/Tests/Samples/TypeFace/R.json +1 -0
  327. package/Tests/Samples/TypeFace/S.json +1 -0
  328. package/Tests/Samples/TypeFace/T.json +1 -0
  329. package/Tests/Samples/TypeFace/U.json +1 -0
  330. package/Tests/Samples/TypeFace/V.json +1 -0
  331. package/Tests/Samples/TypeFace/W.json +1 -0
  332. package/Tests/Samples/TypeFace/X.json +1 -0
  333. package/Tests/Samples/TypeFace/Y.json +1 -0
  334. package/Tests/Samples/TypeFace/Z.json +1 -0
  335. package/Tests/Samples/Watermelon.json +1 -0
  336. package/Tests/Samples/setValueTest.json +1 -0
  337. package/Tests/Samples/timeremap.json +1 -0
  338. package/Tests/Samples/vcTransition1.json +1 -0
  339. package/Tests/Samples/vcTransition2.json +1 -0
  340. package/Tests/SnapshotConfiguration.swift +158 -0
  341. package/Tests/SnapshotTests.swift +265 -0
  342. package/Tests/Utils/Bundle+Module.swift +30 -0
  343. package/Tests/Utils/HardcodedFontProvider.swift +19 -0
  344. package/Tests/Utils/HardcodedImageProvider.swift +23 -0
  345. package/Tests/Utils/Snapshotting+presentationLayer.swift +47 -0
  346. package/Tests/ValueProvidersTests.swift +27 -0
  347. package/lottie-ios.podspec +12 -12
  348. package/package.json +1 -1
  349. package/script/test-carthage/Cartfile +1 -0
  350. package/script/test-carthage/Cartfile.resolved +1 -0
  351. package/script/test-carthage/CarthageTest/AppDelegate.swift +26 -0
  352. package/script/test-carthage/CarthageTest/Assets.xcassets/AccentColor.colorset/Contents.json +11 -0
  353. package/script/test-carthage/CarthageTest/Assets.xcassets/AppIcon.appiconset/Contents.json +98 -0
  354. package/script/test-carthage/CarthageTest/Assets.xcassets/Contents.json +6 -0
  355. package/script/test-carthage/CarthageTest/Base.lproj/LaunchScreen.storyboard +25 -0
  356. package/script/test-carthage/CarthageTest/Base.lproj/Main.storyboard +24 -0
  357. package/script/test-carthage/CarthageTest/Info.plist +66 -0
  358. package/script/test-carthage/CarthageTest/SceneDelegate.swift +10 -0
  359. package/script/test-carthage/CarthageTest/ViewController.swift +15 -0
  360. package/script/test-carthage/CarthageTest-macOS/AppDelegate.swift +7 -0
  361. package/script/test-carthage/CarthageTest-macOS/Assets.xcassets/AccentColor.colorset/Contents.json +11 -0
  362. package/script/test-carthage/CarthageTest-macOS/Assets.xcassets/AppIcon.appiconset/Contents.json +58 -0
  363. package/script/test-carthage/CarthageTest-macOS/Assets.xcassets/Contents.json +6 -0
  364. package/script/test-carthage/CarthageTest-macOS/Base.lproj/Main.storyboard +717 -0
  365. package/script/test-carthage/CarthageTest-macOS/CarthageTest_macOS.entitlements +10 -0
  366. package/script/test-carthage/CarthageTest-macOS/ViewController.swift +15 -0
  367. package/script/test-carthage/CarthageTest.xcodeproj/project.pbxproj +532 -0
  368. package/script/test-carthage/CarthageTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  369. package/script/test-carthage/CarthageTest.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  370. package/script/test-carthage/CarthageTest.xcodeproj/project.xcworkspace/xcuserdata/cal.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  371. package/script/test-carthage/CarthageTest.xcodeproj/project.xcworkspace/xcuserdata/calstephens.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  372. package/script/test-carthage/CarthageTest.xcodeproj/xcuserdata/cal.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
  373. package/script/test-carthage/CarthageTest.xcodeproj/xcuserdata/calstephens.xcuserdatad/xcschemes/xcschememanagement.plist +19 -0
  374. package/script/test-carthage/Mintfile +1 -0
  375. package/script/test-spm/LottieSPM.xcworkspace/contents.xcworkspacedata +7 -0
  376. package/script/test-spm/LottieSPM.xcworkspace/xcuserdata/cal.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  377. package/script/test-spm/Mintfile +1 -0
  378. package/.swiftpm/xcode/package.xcworkspace/xcuserdata/brandonwithrow.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  379. package/Lottie/Info.plist +0 -22
  380. package/Lottie.xcodeproj/project.xcworkspace/xcuserdata/brandonwithrow.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  381. package/Lottie.xcodeproj/xcuserdata/brandonwithrow.xcuserdatad/xcschemes/LottieLibraryMacOS.xcscheme +0 -80
  382. package/Lottie.xcodeproj/xcuserdata/brandonwithrow.xcuserdatad/xcschemes/xcschememanagement.plist +0 -57
  383. package/lottie-swift/Assets/.gitkeep +0 -0
  384. package/lottie-swift/src/Private/LayerContainers/Utility/LayerFontProvider.swift +0 -37
  385. package/lottie-swift/src/Private/LayerContainers/Utility/LayerTextProvider.swift +0 -36
  386. package/lottie-swift/src/Private/Model/Animation.swift +0 -107
  387. package/lottie-swift/src/Private/Model/Assets/Asset.swift +0 -27
  388. package/lottie-swift/src/Private/Model/Assets/ImageAsset.swift +0 -48
  389. package/lottie-swift/src/Private/Model/Keyframes/Keyframe.swift +0 -128
  390. package/lottie-swift/src/Private/Model/Keyframes/KeyframeGroup.swift +0 -108
  391. package/lottie-swift/src/Private/Model/Layers/LayerModel.swift +0 -150
  392. package/lottie-swift/src/Private/Model/Objects/DashPattern.swift +0 -24
  393. package/lottie-swift/src/Private/Model/Objects/Marker.swift +0 -23
  394. package/lottie-swift/src/Private/Model/Objects/Mask.swift +0 -48
  395. package/lottie-swift/src/Private/Model/Objects/Transform.swift +0 -105
  396. package/lottie-swift/src/Private/Model/ShapeItems/Ellipse.swift +0 -50
  397. package/lottie-swift/src/Private/Model/ShapeItems/FillI.swift +0 -49
  398. package/lottie-swift/src/Private/Model/ShapeItems/GradientFill.swift +0 -86
  399. package/lottie-swift/src/Private/Model/ShapeItems/GradientStroke.swift +0 -125
  400. package/lottie-swift/src/Private/Model/ShapeItems/Group.swift +0 -32
  401. package/lottie-swift/src/Private/Model/ShapeItems/Rectangle.swift +0 -50
  402. package/lottie-swift/src/Private/Model/ShapeItems/Repeater.swift +0 -80
  403. package/lottie-swift/src/Private/Model/ShapeItems/Shape.swift +0 -37
  404. package/lottie-swift/src/Private/Model/ShapeItems/ShapeItem.swift +0 -95
  405. package/lottie-swift/src/Private/Model/ShapeItems/ShapeTransform.swift +0 -68
  406. package/lottie-swift/src/Private/Model/ShapeItems/Star.swift +0 -86
  407. package/lottie-swift/src/Private/Model/ShapeItems/Stroke.swift +0 -67
  408. package/lottie-swift/src/Private/Model/ShapeItems/Trim.swift +0 -53
  409. package/lottie-swift/src/Private/Model/Text/Font.swift +0 -35
  410. package/lottie-swift/src/Private/Model/Text/TextAnimator.swift +0 -99
  411. package/lottie-swift/src/Private/Model/Text/TextDocument.swift +0 -70
  412. package/lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/EllipseNode.swift +0 -109
  413. package/lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/PolygonNode.swift +0 -132
  414. package/lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderContainers/GroupNode.swift +0 -141
  415. package/lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/StrokeNode.swift +0 -127
  416. package/lottie-swift/src/Private/Utility/Extensions/MathKit.swift +0 -539
  417. package/lottie-swift/src/Private/Utility/Extensions/StringExtensions.swift +0 -32
  418. package/lottie-swift/src/Private/Utility/Interpolatable/Interpolatable.swift +0 -18
  419. package/lottie-swift/src/Private/Utility/Interpolatable/InterpolatableExtensions.swift +0 -170
  420. package/lottie-swift/src/Private/Utility/Primitives/CurveVertex.swift +0 -177
  421. package/lottie-swift/src/Private/Utility/Primitives/PathElement.swift +0 -68
  422. package/lottie-swift/src/Private/Utility/Primitives/VectorsExtensions.swift +0 -218
  423. package/lottie-swift/src/Public/Animation/AnimationPublic.swift +0 -196
  424. package/lottie-swift/src/Public/Animation/AnimationView.swift +0 -1006
  425. package/lottie-swift/src/Public/Animation/AnimationViewInitializers.swift +0 -83
  426. package/lottie-swift/src/Public/AnimationCache/AnimationCacheProvider.swift +0 -24
  427. package/lottie-swift/src/Public/DynamicProperties/AnimationKeypath.swift +0 -46
  428. package/lottie-swift/src/Public/DynamicProperties/AnyValueProvider.swift +0 -29
  429. package/lottie-swift/src/Public/DynamicProperties/ValueProviders/GradientValueProvider.swift +0 -114
  430. package/lottie-swift/src/Public/ImageProvider/AnimationImageProvider.swift +0 -23
  431. package/lottie-swift/src/Public/MacOS/FilepathImageProvider.swift +0 -67
  432. package/lottie-swift/src/Public/TextProvider/AnimationTextProvider.swift +0 -39
  433. package/lottie-swift/src/Public/iOS/LottieView.swift +0 -62
  434. package/lottie-swift-testing.podspec +0 -32
@@ -2,6 +2,6 @@
2
2
  <Workspace
3
3
  version = "1.0">
4
4
  <FileRef
5
- location = "self:Lottie.xcodeproj">
5
+ location = "self:">
6
6
  </FileRef>
7
7
  </Workspace>
@@ -1,6 +1,6 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <Scheme
3
- LastUpgradeVersion = "1020"
3
+ LastUpgradeVersion = "1320"
4
4
  version = "1.3">
5
5
  <BuildAction
6
6
  parallelizeBuildables = "YES"
@@ -14,9 +14,9 @@
14
14
  buildForAnalyzing = "YES">
15
15
  <BuildableReference
16
16
  BuildableIdentifier = "primary"
17
- BlueprintIdentifier = "486E83B1220A317C007CD915"
17
+ BlueprintIdentifier = "2E80409927A0725D006E74CB"
18
18
  BuildableName = "Lottie.framework"
19
- BlueprintName = "Lottie_iOS"
19
+ BlueprintName = "Lottie-iOS"
20
20
  ReferencedContainer = "container:Lottie.xcodeproj">
21
21
  </BuildableReference>
22
22
  </BuildActionEntry>
@@ -28,9 +28,17 @@
28
28
  selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
29
29
  shouldUseLaunchSchemeArgsEnv = "YES">
30
30
  <Testables>
31
+ <TestableReference
32
+ skipped = "NO">
33
+ <BuildableReference
34
+ BuildableIdentifier = "primary"
35
+ BlueprintIdentifier = "2E8040AB27A072B8006E74CB"
36
+ BuildableName = "LottieTests.xctest"
37
+ BlueprintName = "LottieTests"
38
+ ReferencedContainer = "container:Lottie.xcodeproj">
39
+ </BuildableReference>
40
+ </TestableReference>
31
41
  </Testables>
32
- <AdditionalOptions>
33
- </AdditionalOptions>
34
42
  </TestAction>
35
43
  <LaunchAction
36
44
  buildConfiguration = "Debug"
@@ -42,17 +50,6 @@
42
50
  debugDocumentVersioning = "YES"
43
51
  debugServiceExtension = "internal"
44
52
  allowLocationSimulation = "YES">
45
- <MacroExpansion>
46
- <BuildableReference
47
- BuildableIdentifier = "primary"
48
- BlueprintIdentifier = "486E83B1220A317C007CD915"
49
- BuildableName = "Lottie.framework"
50
- BlueprintName = "Lottie_iOS"
51
- ReferencedContainer = "container:Lottie.xcodeproj">
52
- </BuildableReference>
53
- </MacroExpansion>
54
- <AdditionalOptions>
55
- </AdditionalOptions>
56
53
  </LaunchAction>
57
54
  <ProfileAction
58
55
  buildConfiguration = "Release"
@@ -63,9 +60,9 @@
63
60
  <MacroExpansion>
64
61
  <BuildableReference
65
62
  BuildableIdentifier = "primary"
66
- BlueprintIdentifier = "486E83B1220A317C007CD915"
63
+ BlueprintIdentifier = "2E80409927A0725D006E74CB"
67
64
  BuildableName = "Lottie.framework"
68
- BlueprintName = "Lottie_iOS"
65
+ BlueprintName = "Lottie-iOS"
69
66
  ReferencedContainer = "container:Lottie.xcodeproj">
70
67
  </BuildableReference>
71
68
  </MacroExpansion>
@@ -1,6 +1,6 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <Scheme
3
- LastUpgradeVersion = "1020"
3
+ LastUpgradeVersion = "1320"
4
4
  version = "1.3">
5
5
  <BuildAction
6
6
  parallelizeBuildables = "YES"
@@ -14,9 +14,9 @@
14
14
  buildForAnalyzing = "YES">
15
15
  <BuildableReference
16
16
  BuildableIdentifier = "primary"
17
- BlueprintIdentifier = "486E84E1220A357D007CD915"
17
+ BlueprintIdentifier = "2EAF59AC27A0787B00E00531"
18
18
  BuildableName = "Lottie.framework"
19
- BlueprintName = "Lottie_tvOS"
19
+ BlueprintName = "Lottie-macOS"
20
20
  ReferencedContainer = "container:Lottie.xcodeproj">
21
21
  </BuildableReference>
22
22
  </BuildActionEntry>
@@ -29,8 +29,6 @@
29
29
  shouldUseLaunchSchemeArgsEnv = "YES">
30
30
  <Testables>
31
31
  </Testables>
32
- <AdditionalOptions>
33
- </AdditionalOptions>
34
32
  </TestAction>
35
33
  <LaunchAction
36
34
  buildConfiguration = "Debug"
@@ -42,17 +40,6 @@
42
40
  debugDocumentVersioning = "YES"
43
41
  debugServiceExtension = "internal"
44
42
  allowLocationSimulation = "YES">
45
- <MacroExpansion>
46
- <BuildableReference
47
- BuildableIdentifier = "primary"
48
- BlueprintIdentifier = "486E84E1220A357D007CD915"
49
- BuildableName = "Lottie.framework"
50
- BlueprintName = "Lottie_tvOS"
51
- ReferencedContainer = "container:Lottie.xcodeproj">
52
- </BuildableReference>
53
- </MacroExpansion>
54
- <AdditionalOptions>
55
- </AdditionalOptions>
56
43
  </LaunchAction>
57
44
  <ProfileAction
58
45
  buildConfiguration = "Release"
@@ -63,9 +50,9 @@
63
50
  <MacroExpansion>
64
51
  <BuildableReference
65
52
  BuildableIdentifier = "primary"
66
- BlueprintIdentifier = "486E84E1220A357D007CD915"
53
+ BlueprintIdentifier = "2EAF59AC27A0787B00E00531"
67
54
  BuildableName = "Lottie.framework"
68
- BlueprintName = "Lottie_tvOS"
55
+ BlueprintName = "Lottie-macOS"
69
56
  ReferencedContainer = "container:Lottie.xcodeproj">
70
57
  </BuildableReference>
71
58
  </MacroExpansion>
@@ -1,6 +1,6 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <Scheme
3
- LastUpgradeVersion = "1020"
3
+ LastUpgradeVersion = "1320"
4
4
  version = "1.3">
5
5
  <BuildAction
6
6
  parallelizeBuildables = "YES"
@@ -14,9 +14,9 @@
14
14
  buildForAnalyzing = "YES">
15
15
  <BuildableReference
16
16
  BuildableIdentifier = "primary"
17
- BlueprintIdentifier = "486E8566220A3605007CD915"
17
+ BlueprintIdentifier = "2EAF59B827A078E400E00531"
18
18
  BuildableName = "Lottie.framework"
19
- BlueprintName = "Lottie_macOS"
19
+ BlueprintName = "Lottie-tvOS"
20
20
  ReferencedContainer = "container:Lottie.xcodeproj">
21
21
  </BuildableReference>
22
22
  </BuildActionEntry>
@@ -29,8 +29,6 @@
29
29
  shouldUseLaunchSchemeArgsEnv = "YES">
30
30
  <Testables>
31
31
  </Testables>
32
- <AdditionalOptions>
33
- </AdditionalOptions>
34
32
  </TestAction>
35
33
  <LaunchAction
36
34
  buildConfiguration = "Debug"
@@ -42,17 +40,6 @@
42
40
  debugDocumentVersioning = "YES"
43
41
  debugServiceExtension = "internal"
44
42
  allowLocationSimulation = "YES">
45
- <MacroExpansion>
46
- <BuildableReference
47
- BuildableIdentifier = "primary"
48
- BlueprintIdentifier = "486E8566220A3605007CD915"
49
- BuildableName = "Lottie.framework"
50
- BlueprintName = "Lottie_macOS"
51
- ReferencedContainer = "container:Lottie.xcodeproj">
52
- </BuildableReference>
53
- </MacroExpansion>
54
- <AdditionalOptions>
55
- </AdditionalOptions>
56
43
  </LaunchAction>
57
44
  <ProfileAction
58
45
  buildConfiguration = "Release"
@@ -63,9 +50,9 @@
63
50
  <MacroExpansion>
64
51
  <BuildableReference
65
52
  BuildableIdentifier = "primary"
66
- BlueprintIdentifier = "486E8566220A3605007CD915"
53
+ BlueprintIdentifier = "2EAF59B827A078E400E00531"
67
54
  BuildableName = "Lottie.framework"
68
- BlueprintName = "Lottie_macOS"
55
+ BlueprintName = "Lottie-tvOS"
69
56
  ReferencedContainer = "container:Lottie.xcodeproj">
70
57
  </BuildableReference>
71
58
  </MacroExpansion>
@@ -0,0 +1,37 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>SchemeUserState</key>
6
+ <dict>
7
+ <key>Lottie (iOS).xcscheme_^#shared#^_</key>
8
+ <dict>
9
+ <key>orderHint</key>
10
+ <integer>0</integer>
11
+ </dict>
12
+ <key>Lottie (macOS).xcscheme_^#shared#^_</key>
13
+ <dict>
14
+ <key>orderHint</key>
15
+ <integer>1</integer>
16
+ </dict>
17
+ <key>Lottie (tvOS).xcscheme_^#shared#^_</key>
18
+ <dict>
19
+ <key>orderHint</key>
20
+ <integer>2</integer>
21
+ </dict>
22
+ </dict>
23
+ <key>SuppressBuildableAutocreation</key>
24
+ <dict>
25
+ <key>2E8040AB27A072B8006E74CB</key>
26
+ <dict>
27
+ <key>primary</key>
28
+ <true/>
29
+ </dict>
30
+ <key>2EAF59AC27A0787B00E00531</key>
31
+ <dict>
32
+ <key>primary</key>
33
+ <true/>
34
+ </dict>
35
+ </dict>
36
+ </dict>
37
+ </plist>
@@ -0,0 +1,24 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>SchemeUserState</key>
6
+ <dict>
7
+ <key>Lottie (iOS).xcscheme_^#shared#^_</key>
8
+ <dict>
9
+ <key>orderHint</key>
10
+ <integer>1</integer>
11
+ </dict>
12
+ <key>Lottie (macOS).xcscheme_^#shared#^_</key>
13
+ <dict>
14
+ <key>orderHint</key>
15
+ <integer>2</integer>
16
+ </dict>
17
+ <key>Lottie (tvOS).xcscheme_^#shared#^_</key>
18
+ <dict>
19
+ <key>orderHint</key>
20
+ <integer>3</integer>
21
+ </dict>
22
+ </dict>
23
+ </dict>
24
+ </plist>
@@ -0,0 +1,10 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Workspace
3
+ version = "1.0">
4
+ <FileRef
5
+ location = "container:Lottie.xcodeproj">
6
+ </FileRef>
7
+ <FileRef
8
+ location = "group:Example/Example.xcodeproj">
9
+ </FileRef>
10
+ </Workspace>
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>IDEDidComputeMac32BitWarning</key>
6
+ <true/>
7
+ </dict>
8
+ </plist>
@@ -0,0 +1,34 @@
1
+ {
2
+ "object": {
3
+ "pins": [
4
+ {
5
+ "package": "Difference",
6
+ "repositoryURL": "https://github.com/krzysztofzablocki/Difference",
7
+ "state": {
8
+ "branch": null,
9
+ "revision": "02fe1111edc8318c4f8a0da96336fcbcc201f38b",
10
+ "version": "1.0.1"
11
+ }
12
+ },
13
+ {
14
+ "package": "Epoxy",
15
+ "repositoryURL": "https://github.com/airbnb/epoxy-ios.git",
16
+ "state": {
17
+ "branch": null,
18
+ "revision": "bc53da4def05eff869f96bedefda7e1a8fdcb199",
19
+ "version": "0.7.0"
20
+ }
21
+ },
22
+ {
23
+ "package": "swift-snapshot-testing",
24
+ "repositoryURL": "https://github.com/pointfreeco/swift-snapshot-testing.git",
25
+ "state": {
26
+ "branch": "main",
27
+ "revision": "88f6e2c0afe04221fcfb1601a2ecaad83115a05f",
28
+ "version": null
29
+ }
30
+ }
31
+ ]
32
+ },
33
+ "version": 1
34
+ }
@@ -1,6 +1,6 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <Bucket
3
- uuid = "E54B3DD1-AB6F-4672-AAFD-F9F4731FF2C2"
4
- type = "1"
3
+ uuid = "6274815E-BB07-453F-B566-278BE82333ED"
4
+ type = "0"
5
5
  version = "2.0">
6
6
  </Bucket>
@@ -0,0 +1,153 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <VariablesViewState
3
+ version = "1.0">
4
+ <ContextStates>
5
+ <ContextState
6
+ contextName = "CAShapeLayer.addStrokeAnimations(for:context:):StrokeAnimation.swift">
7
+ </ContextState>
8
+ <ContextState
9
+ contextName = "PathOutputNode.setPath(_:updateFrame:):PathOutputNode.swift">
10
+ <PersistentStrings>
11
+ <PersistentString
12
+ value = "UIBezierPath(cgPath: path.cgPath())">
13
+ </PersistentString>
14
+ </PersistentStrings>
15
+ </ContextState>
16
+ <ContextState
17
+ contextName = "ShapeItemLayer.setupSolidFillAnimations(shapeLayer:context:):ShapeItemLayer.swift">
18
+ <PersistentStrings>
19
+ <PersistentString
20
+ value = "UIBezierPath(cgPath: BezierPath.ellipse(size: (shape.item as! Ellipse).size.keyframes[0].value.sizeValue, center: (shape.item as! Ellipse).position.keyframes[0].value.pointValue, direction: (shape.item as! Ellipse).direction).cgPath())">
21
+ </PersistentString>
22
+ </PersistentStrings>
23
+ </ContextState>
24
+ <ContextState
25
+ contextName = "closure #1 in CALayer.addScaleAnimations(from:context:):TransformAnimations.swift">
26
+ </ContextState>
27
+ <ContextState
28
+ contextName = "ShapeLayer.init(shapeLayer:context:):ShapeLayer.swift">
29
+ </ContextState>
30
+ <ContextState
31
+ contextName = "CALayer.defaultAnimation&lt;&#x3c4;_0_0, &#x3c4;_0_1&gt;(for:keyframes:value:context:):CALayer+addAnimation.swift">
32
+ </ContextState>
33
+ <ContextState
34
+ contextName = "PreCompLayer.setupAnimations(context:):PreCompLayer.swift">
35
+ </ContextState>
36
+ <ContextState
37
+ contextName = "TextLayer.setupSublayers(context:):TextLayer.swift">
38
+ <PersistentStrings>
39
+ <PersistentString
40
+ value = "text.fillColorData!.cgColorValue">
41
+ </PersistentString>
42
+ </PersistentStrings>
43
+ </ContextState>
44
+ <ContextState
45
+ contextName = "Array&lt;&#x3c4;_0_0&gt;.initializeNodeTree():ItemsExtension.swift">
46
+ </ContextState>
47
+ <ContextState
48
+ contextName = "ExperimentalAnimationLayer.init(animation:imageProvider:):ExperimentalAnimationLayer.swift">
49
+ </ContextState>
50
+ <ContextState
51
+ contextName = "CAShapeLayer.addAnimations(for:context:):ShapeAnimation.swift">
52
+ </ContextState>
53
+ <ContextState
54
+ contextName = "CALayer.addPositionAnimations(from:context:):TransformAnimations.swift">
55
+ </ContextState>
56
+ <ContextState
57
+ contextName = "CALayer.setupGroups(from:parentGroup:context:):ShapeLayer.swift">
58
+ </ContextState>
59
+ <ContextState
60
+ contextName = "ShapeRenderLayer.rebuildContents(forFrame:):ShapeRenderLayer.swift">
61
+ <PersistentStrings>
62
+ <PersistentString
63
+ value = "UIBezierPath(cgPath: renderer.outputPath!)">
64
+ </PersistentString>
65
+ <PersistentString
66
+ value = "UIBezierPath(cgPath: shapeLayer.path!)">
67
+ </PersistentString>
68
+ </PersistentStrings>
69
+ </ContextState>
70
+ <ContextState
71
+ contextName = "BaseCompositionLayer.setupChildAnimations(context:):BaseCompositionLayer.swift">
72
+ </ContextState>
73
+ <ContextState
74
+ contextName = "CALayer.addVisibilityAnimation(inFrame:outFrame:context:):VisibilityAnimation.swift">
75
+ <PersistentStrings>
76
+ <PersistentString
77
+ value = "context.timingConfiguration._layerOffset / context.animation.duration">
78
+ </PersistentString>
79
+ </PersistentStrings>
80
+ </ContextState>
81
+ <ContextState
82
+ contextName = "CALayer.setupLayerHierarchy(for:context:):CALayer+setupLayerHierarchy.swift">
83
+ </ContextState>
84
+ <ContextState
85
+ contextName = "LayerAnimationContext.progressTime(for:):AnimationLayer.swift">
86
+ <PersistentStrings>
87
+ <PersistentString
88
+ value = "layerTimeOffset(frame)">
89
+ </PersistentString>
90
+ </PersistentStrings>
91
+ </ContextState>
92
+ <ContextState
93
+ contextName = "GroupNode.performAdditionalOutputUpdates(_:forceOutputUpdate:):GroupNode.swift">
94
+ </ContextState>
95
+ <ContextState
96
+ contextName = "PathOutputNode.hasOutputUpdates(_:):PathOutputNode.swift">
97
+ <PersistentStrings>
98
+ <PersistentString
99
+ value = "UIBezierPath(cgPath: newPath)">
100
+ </PersistentString>
101
+ </PersistentStrings>
102
+ </ContextState>
103
+ <ContextState
104
+ contextName = "PassThroughOutputNode.outputPath.getter:PassThroughOutputNode.swift">
105
+ </ContextState>
106
+ <ContextState
107
+ contextName = "LinkView.setContent(_:animated:):LinkView.swift">
108
+ </ContextState>
109
+ <ContextState
110
+ contextName = "ShapeItemLayer.setupSolidFillLayerHierarchy():ShapeItemLayer.swift">
111
+ <PersistentStrings>
112
+ <PersistentString
113
+ value = "UIBezierPath(cgPath: (shape.item as! Shape).path.keyframes[0].value.cgPath())">
114
+ </PersistentString>
115
+ </PersistentStrings>
116
+ </ContextState>
117
+ <ContextState
118
+ contextName = "closure #2 in CALayer.keyframeAnimation&lt;&#x3c4;_0_0, &#x3c4;_0_1&gt;(for:keyframes:value:context:):CALayer+addAnimation.swift">
119
+ </ContextState>
120
+ <ContextState
121
+ contextName = "ExperimentalAnimationLayer.playAnimation(context:timingConfiguration:playbackState:):ExperimentalAnimationLayer.swift">
122
+ </ContextState>
123
+ <ContextState
124
+ contextName = "CALayer.timingFunctions&lt;&#x3c4;_0_0, &#x3c4;_0_1&gt;(for:property:context:):CALayer+addAnimation.swift">
125
+ </ContextState>
126
+ <ContextState
127
+ contextName = "ShapeRenderLayer.hasRenderUpdate(forFrame:):ShapeRenderLayer.swift">
128
+ </ContextState>
129
+ <ContextState
130
+ contextName = "AnimatorNode.updateTree(_:forceUpdates:):AnimatorNode.swift">
131
+ </ContextState>
132
+ <ContextState
133
+ contextName = "ShapeCompositionLayer.init(shapeLayer:):ShapeCompositionLayer.swift">
134
+ </ContextState>
135
+ <ContextState
136
+ contextName = "BaseCompositionLayer.setupAnimations(context:):BaseCompositionLayer.swift">
137
+ </ContextState>
138
+ <ContextState
139
+ contextName = "CALayer.path(for:):CALayer+addAnimation.swift">
140
+ <PersistentStrings>
141
+ <PersistentString
142
+ value = "UIBezierPath(cgPath: path)">
143
+ </PersistentString>
144
+ </PersistentStrings>
145
+ </ContextState>
146
+ <ContextState
147
+ contextName = "BaseAnimationLayer.setupAnimations(context:):BaseAnimationLayer.swift">
148
+ </ContextState>
149
+ <ContextState
150
+ contextName = "ShapeItemLayer.setupAnimations(context:):ShapeItemLayer.swift">
151
+ </ContextState>
152
+ </ContextStates>
153
+ </VariablesViewState>
@@ -0,0 +1,22 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Bucket
3
+ uuid = "01C80884-20C6-43CD-959A-834F11C6CFBC"
4
+ type = "0"
5
+ version = "2.0">
6
+ <Breakpoints>
7
+ <BreakpointProxy
8
+ BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
9
+ <BreakpointContent
10
+ uuid = "8C528A5F-B345-4B34-BD67-A167DC41704A"
11
+ shouldBeEnabled = "Yes"
12
+ ignoreCount = "0"
13
+ continueAfterRunningActions = "No"
14
+ filePath = "Sources/Private/CoreAnimation/Animations/VisibilityAnimation.swift"
15
+ startingColumnNumber = "9223372036854775807"
16
+ endingColumnNumber = "9223372036854775807"
17
+ startingLineNumber = "44"
18
+ endingLineNumber = "44">
19
+ </BreakpointContent>
20
+ </BreakpointProxy>
21
+ </Breakpoints>
22
+ </Bucket>
@@ -0,0 +1,138 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <VariablesViewState
3
+ version = "1.0">
4
+ <ContextStates>
5
+ <ContextState
6
+ contextName = "closure #1 in CAShapeLayer.addAnimations(for:context:pathMultiplier:transformPath:):CustomPathAnimation.swift">
7
+ <PersistentStrings>
8
+ <PersistentString
9
+ value = "UIBezierPath(cgPath: pathKeyframe.cgPath())">
10
+ </PersistentString>
11
+ <PersistentString
12
+ value = "path.boundingBox">
13
+ </PersistentString>
14
+ </PersistentStrings>
15
+ </ContextState>
16
+ <ContextState
17
+ contextName = "closure #1 in CAShapeLayer.addAnimations(for:context:pathMultiplier:):CombinedShapeAnimation.swift">
18
+ <PersistentStrings>
19
+ <PersistentString
20
+ value = "UIBezierPath(cgPath: combinedPath)">
21
+ </PersistentString>
22
+ </PersistentStrings>
23
+ </ContextState>
24
+ <ContextState
25
+ contextName = "closure #2 in GradientRenderLayer.addGradientAnimations(for:type:context:):GradientAnimations.swift">
26
+ <PersistentStrings>
27
+ <PersistentString
28
+ value = "gradient.colorConfiguration(from: colorComponents, type: type)">
29
+ </PersistentString>
30
+ </PersistentStrings>
31
+ </ContextState>
32
+ <ContextState
33
+ contextName = "closure #1 in MaskCompositionLayer.MaskLayer.setupAnimations(context:):MaskCompositionLayer.swift">
34
+ <PersistentStrings>
35
+ <PersistentString
36
+ value = "UIBezierPath(cgPath: maskPath)">
37
+ </PersistentString>
38
+ </PersistentStrings>
39
+ </ContextState>
40
+ <ContextState
41
+ contextName = "GradientRenderLayer.addGradientAnimations(for:type:context:):GradientAnimations.swift">
42
+ </ContextState>
43
+ <ContextState
44
+ contextName = "ShapeNodeProperties.init(shape:):ShapeNode.swift">
45
+ <PersistentStrings>
46
+ <PersistentString
47
+ value = "UIBezierPath(cgPath: shape.path.keyframes[0].value.cgPath())">
48
+ </PersistentString>
49
+ </PersistentStrings>
50
+ </ContextState>
51
+ <ContextState
52
+ contextName = "ShapeNode.rebuildOutputs(frame:):ShapeNode.swift">
53
+ <PersistentStrings>
54
+ <PersistentString
55
+ value = "properties.path">
56
+ </PersistentString>
57
+ </PersistentStrings>
58
+ </ContextState>
59
+ <ContextState
60
+ contextName = "MaskLayer.updateWithFrame(frame:forceUpdates:):MaskContainerLayer.swift">
61
+ <PersistentStrings>
62
+ <PersistentString
63
+ value = "UIBezierPath(cgPath: shapePath)">
64
+ </PersistentString>
65
+ </PersistentStrings>
66
+ </ContextState>
67
+ <ContextState
68
+ contextName = "MaskCompositionLayer.init(masks:):MaskCompositionLayer.swift">
69
+ </ContextState>
70
+ <ContextState
71
+ contextName = "CoreAnimationLayer.init(animation:imageProvider:fontProvider:compatibilityTrackerMode:logger:):CoreAnimationLayer.swift">
72
+ </ContextState>
73
+ <ContextState
74
+ contextName = "closure #1 in CAShapeLayer.addAnimations(for:context:pathMultiplier:):RectangleAnimation.swift">
75
+ <PersistentStrings>
76
+ <PersistentString
77
+ value = "UIBezierPath(cgPath: BezierPath.rectangle(position: keyframe.position.pointValue, size: keyframe.size.sizeValue, cornerRadius: keyframe.cornerRadius.cgFloatValue, direction: rectangle.direction).cgPath())">
78
+ </PersistentString>
79
+ </PersistentStrings>
80
+ </ContextState>
81
+ <ContextState
82
+ contextName = "Array&lt;&#x3c4;_0_0&gt;.shapeRenderGroups.getter:ShapeLayer.swift">
83
+ </ContextState>
84
+ <ContextState
85
+ contextName = "CALayer.path&lt;&#x3c4;_0_0&gt;(keyframes:value:):CALayer+addAnimation.swift">
86
+ <PersistentStrings>
87
+ <PersistentString
88
+ value = "UIBezierPath(cgPath: path)">
89
+ </PersistentString>
90
+ </PersistentStrings>
91
+ </ContextState>
92
+ <ContextState
93
+ contextName = "CAShapeLayer.addStrokeAnimations(for:context:):StrokeAnimation.swift">
94
+ <PersistentStrings>
95
+ <PersistentString
96
+ value = "UIColor(cgColor: strokeColor.keyframes[0].value.cgColorValue)">
97
+ </PersistentString>
98
+ </PersistentStrings>
99
+ </ContextState>
100
+ <ContextState
101
+ contextName = "Collection&lt;&gt;.pairedLayersAndMasks(context:):CALayer+setupLayerHierarchy.swift">
102
+ </ContextState>
103
+ <ContextState
104
+ contextName = "ShapeItemLayer.setupSolidFillAnimations(shapeLayer:context:):ShapeItemLayer.swift">
105
+ <PersistentStrings>
106
+ <PersistentString
107
+ value = "fill.color.keyframes.last!.value.cgColorValue">
108
+ </PersistentString>
109
+ </PersistentStrings>
110
+ </ContextState>
111
+ <ContextState
112
+ contextName = "ShapeItemLayer.init(shape:otherItems:context:):ShapeItemLayer.swift">
113
+ </ContextState>
114
+ <ContextState
115
+ contextName = "FillNode.rebuildOutputs(frame:):FillNode.swift">
116
+ <PersistentStrings>
117
+ <PersistentString
118
+ value = "fillProperties.color.value.cgColorValue">
119
+ </PersistentString>
120
+ </PersistentStrings>
121
+ </ContextState>
122
+ <ContextState
123
+ contextName = "CALayer.keyframeAnimation&lt;&#x3c4;_0_0, &#x3c4;_0_1&gt;(for:keyframes:value:context:):CALayer+addAnimation.swift">
124
+ </ContextState>
125
+ <ContextState
126
+ contextName = "CALayer.makeGroupLayers(from:parentGroup:context:):ShapeLayer.swift">
127
+ </ContextState>
128
+ <ContextState
129
+ contextName = "CALayer.addPositionAnimations(from:context:):TransformAnimations.swift">
130
+ </ContextState>
131
+ <ContextState
132
+ contextName = "closure #1 in Array&lt;&#x3c4;_0_0&gt;.shapeRenderGroups.getter:ShapeLayer.swift">
133
+ </ContextState>
134
+ <ContextState
135
+ contextName = "GroupLayer.init(group:inheritedItems:context:):ShapeLayer.swift">
136
+ </ContextState>
137
+ </ContextStates>
138
+ </VariablesViewState>