samcan 0.0.2 → 0.1.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 (327) hide show
  1. package/{license → LICENSE} +3 -1
  2. package/README.md +3 -0
  3. package/dist/camera/index.cjs +370 -0
  4. package/dist/camera/index.d.cts +54 -0
  5. package/dist/camera/index.d.ts +54 -0
  6. package/dist/camera/index.js +70 -0
  7. package/dist/document/index.cjs +735 -0
  8. package/dist/document/index.d.cts +174 -0
  9. package/dist/document/index.d.ts +174 -0
  10. package/dist/document/index.js +161 -0
  11. package/dist/editor/index.cjs +5007 -0
  12. package/dist/editor/index.d.cts +374 -0
  13. package/dist/editor/index.d.ts +374 -0
  14. package/dist/editor/index.js +2401 -0
  15. package/dist/engine/index.cjs +3752 -0
  16. package/dist/engine/index.d.cts +183 -0
  17. package/dist/engine/index.d.ts +183 -0
  18. package/dist/engine/index.js +111 -0
  19. package/dist/index.cjs +8899 -0
  20. package/dist/index.d.cts +962 -0
  21. package/dist/index.d.ts +962 -46
  22. package/dist/index.js +1008 -49
  23. package/dist/math/index.cjs +2230 -0
  24. package/dist/math/index.d.cts +302 -0
  25. package/dist/math/index.d.ts +302 -0
  26. package/dist/math/index.js +1109 -0
  27. package/dist/renderer/index.cjs +1865 -0
  28. package/dist/renderer/index.d.cts +91 -0
  29. package/dist/renderer/index.d.ts +91 -0
  30. package/dist/renderer/index.js +89 -0
  31. package/dist/shared/chunk-35pkr0zs.js +110 -0
  32. package/dist/shared/chunk-7sr7q84y.js +80 -0
  33. package/dist/shared/chunk-87399bz7.js +89 -0
  34. package/dist/shared/chunk-8ynnz57m.js +129 -0
  35. package/dist/shared/chunk-d6gxvapt.js +500 -0
  36. package/dist/shared/chunk-hewznwbd.js +305 -0
  37. package/dist/shared/chunk-jdvrd5tv.js +623 -0
  38. package/dist/shared/chunk-rvag1j46.js +461 -0
  39. package/dist/shared/chunk-rzxyjwk8.js +397 -0
  40. package/dist/shared/chunk-s3qdcmcq.js +1392 -0
  41. package/dist/shared/chunk-v53jprrn.js +68 -0
  42. package/dist/shared/chunk-wa3772hp.js +117 -0
  43. package/dist/spatial/index.cjs +954 -0
  44. package/dist/spatial/index.d.cts +136 -0
  45. package/dist/spatial/index.d.ts +136 -0
  46. package/dist/spatial/index.js +301 -0
  47. package/dist/stroke/index.cjs +1010 -0
  48. package/dist/stroke/index.d.cts +143 -0
  49. package/dist/stroke/index.d.ts +143 -0
  50. package/dist/stroke/index.js +343 -0
  51. package/package.json +122 -58
  52. package/dist/bundle.js +0 -5888
  53. package/dist/core/animation/animationruntime.d.ts +0 -238
  54. package/dist/core/animation/animationruntime.d.ts.map +0 -1
  55. package/dist/core/animation/animationruntime.js +0 -530
  56. package/dist/core/animation/animationruntime.js.map +0 -1
  57. package/dist/core/animation/animationstate.d.ts +0 -85
  58. package/dist/core/animation/animationstate.d.ts.map +0 -1
  59. package/dist/core/animation/animationstate.js +0 -119
  60. package/dist/core/animation/animationstate.js.map +0 -1
  61. package/dist/core/animation/animationtrack.d.ts +0 -55
  62. package/dist/core/animation/animationtrack.d.ts.map +0 -1
  63. package/dist/core/animation/animationtrack.js +0 -185
  64. package/dist/core/animation/animationtrack.js.map +0 -1
  65. package/dist/core/animation/easing.d.ts +0 -80
  66. package/dist/core/animation/easing.d.ts.map +0 -1
  67. package/dist/core/animation/easing.js +0 -126
  68. package/dist/core/animation/easing.js.map +0 -1
  69. package/dist/core/animation/index.d.ts +0 -11
  70. package/dist/core/animation/index.d.ts.map +0 -1
  71. package/dist/core/animation/index.js +0 -10
  72. package/dist/core/animation/index.js.map +0 -1
  73. package/dist/core/animation/interpolator.d.ts +0 -82
  74. package/dist/core/animation/interpolator.d.ts.map +0 -1
  75. package/dist/core/animation/interpolator.js +0 -108
  76. package/dist/core/animation/interpolator.js.map +0 -1
  77. package/dist/core/animation/keyframe.d.ts +0 -52
  78. package/dist/core/animation/keyframe.d.ts.map +0 -1
  79. package/dist/core/animation/keyframe.js +0 -65
  80. package/dist/core/animation/keyframe.js.map +0 -1
  81. package/dist/core/animation/logger.d.ts +0 -8
  82. package/dist/core/animation/logger.d.ts.map +0 -1
  83. package/dist/core/animation/logger.js +0 -20
  84. package/dist/core/animation/logger.js.map +0 -1
  85. package/dist/core/animation/statemachine.d.ts +0 -178
  86. package/dist/core/animation/statemachine.d.ts.map +0 -1
  87. package/dist/core/animation/statemachine.js +0 -378
  88. package/dist/core/animation/statemachine.js.map +0 -1
  89. package/dist/core/animation/statetransition.d.ts +0 -142
  90. package/dist/core/animation/statetransition.d.ts.map +0 -1
  91. package/dist/core/animation/statetransition.js +0 -189
  92. package/dist/core/animation/statetransition.js.map +0 -1
  93. package/dist/core/animation/timeline.d.ts +0 -62
  94. package/dist/core/animation/timeline.d.ts.map +0 -1
  95. package/dist/core/animation/timeline.js +0 -102
  96. package/dist/core/animation/timeline.js.map +0 -1
  97. package/dist/core/api.d.ts +0 -245
  98. package/dist/core/api.d.ts.map +0 -1
  99. package/dist/core/api.js +0 -369
  100. package/dist/core/api.js.map +0 -1
  101. package/dist/core/asset/assetmanager.d.ts +0 -196
  102. package/dist/core/asset/assetmanager.d.ts.map +0 -1
  103. package/dist/core/asset/assetmanager.js +0 -502
  104. package/dist/core/asset/assetmanager.js.map +0 -1
  105. package/dist/core/asset/index.d.ts +0 -3
  106. package/dist/core/asset/index.d.ts.map +0 -1
  107. package/dist/core/asset/index.js +0 -3
  108. package/dist/core/asset/index.js.map +0 -1
  109. package/dist/core/asset/types.d.ts +0 -36
  110. package/dist/core/asset/types.d.ts.map +0 -1
  111. package/dist/core/asset/types.js +0 -1
  112. package/dist/core/asset/types.js.map +0 -1
  113. package/dist/core/command/basecommand.d.ts +0 -29
  114. package/dist/core/command/basecommand.d.ts.map +0 -1
  115. package/dist/core/command/basecommand.js +0 -36
  116. package/dist/core/command/basecommand.js.map +0 -1
  117. package/dist/core/command/command.d.ts +0 -55
  118. package/dist/core/command/command.d.ts.map +0 -1
  119. package/dist/core/command/command.js +0 -1
  120. package/dist/core/command/command.js.map +0 -1
  121. package/dist/core/command/commandhistory.d.ts +0 -76
  122. package/dist/core/command/commandhistory.d.ts.map +0 -1
  123. package/dist/core/command/commandhistory.js +0 -122
  124. package/dist/core/command/commandhistory.js.map +0 -1
  125. package/dist/core/command/editorcommands.d.ts +0 -108
  126. package/dist/core/command/editorcommands.d.ts.map +0 -1
  127. package/dist/core/command/editorcommands.js +0 -274
  128. package/dist/core/command/editorcommands.js.map +0 -1
  129. package/dist/core/command/index.d.ts +0 -5
  130. package/dist/core/command/index.d.ts.map +0 -1
  131. package/dist/core/command/index.js +0 -5
  132. package/dist/core/command/index.js.map +0 -1
  133. package/dist/core/editor/events/emitter.d.ts +0 -45
  134. package/dist/core/editor/events/emitter.d.ts.map +0 -1
  135. package/dist/core/editor/events/emitter.js +0 -88
  136. package/dist/core/editor/events/emitter.js.map +0 -1
  137. package/dist/core/error/animationerror.d.ts +0 -27
  138. package/dist/core/error/animationerror.d.ts.map +0 -1
  139. package/dist/core/error/animationerror.js +0 -41
  140. package/dist/core/error/animationerror.js.map +0 -1
  141. package/dist/core/error/asseterror.d.ts +0 -32
  142. package/dist/core/error/asseterror.d.ts.map +0 -1
  143. package/dist/core/error/asseterror.js +0 -48
  144. package/dist/core/error/asseterror.js.map +0 -1
  145. package/dist/core/error/index.d.ts +0 -7
  146. package/dist/core/error/index.d.ts.map +0 -1
  147. package/dist/core/error/index.js +0 -7
  148. package/dist/core/error/index.js.map +0 -1
  149. package/dist/core/error/pluginerror.d.ts +0 -22
  150. package/dist/core/error/pluginerror.d.ts.map +0 -1
  151. package/dist/core/error/pluginerror.js +0 -33
  152. package/dist/core/error/pluginerror.js.map +0 -1
  153. package/dist/core/error/renderererror.d.ts +0 -26
  154. package/dist/core/error/renderererror.d.ts.map +0 -1
  155. package/dist/core/error/renderererror.js +0 -40
  156. package/dist/core/error/renderererror.js.map +0 -1
  157. package/dist/core/error/samcanerror.d.ts +0 -72
  158. package/dist/core/error/samcanerror.d.ts.map +0 -1
  159. package/dist/core/error/samcanerror.js +0 -108
  160. package/dist/core/error/samcanerror.js.map +0 -1
  161. package/dist/core/error/serializationerror.d.ts +0 -31
  162. package/dist/core/error/serializationerror.d.ts.map +0 -1
  163. package/dist/core/error/serializationerror.js +0 -46
  164. package/dist/core/error/serializationerror.js.map +0 -1
  165. package/dist/core/index.d.ts +0 -12
  166. package/dist/core/index.d.ts.map +0 -1
  167. package/dist/core/index.js +0 -12
  168. package/dist/core/index.js.map +0 -1
  169. package/dist/core/math/color.d.ts +0 -56
  170. package/dist/core/math/color.d.ts.map +0 -1
  171. package/dist/core/math/color.js +0 -125
  172. package/dist/core/math/color.js.map +0 -1
  173. package/dist/core/math/index.d.ts +0 -14
  174. package/dist/core/math/index.d.ts.map +0 -1
  175. package/dist/core/math/index.js +0 -14
  176. package/dist/core/math/index.js.map +0 -1
  177. package/dist/core/math/matrix.d.ts +0 -101
  178. package/dist/core/math/matrix.d.ts.map +0 -1
  179. package/dist/core/math/matrix.js +0 -177
  180. package/dist/core/math/matrix.js.map +0 -1
  181. package/dist/core/math/paint.d.ts +0 -104
  182. package/dist/core/math/paint.d.ts.map +0 -1
  183. package/dist/core/math/paint.js +0 -204
  184. package/dist/core/math/paint.js.map +0 -1
  185. package/dist/core/math/path/index.d.ts +0 -94
  186. package/dist/core/math/path/index.d.ts.map +0 -1
  187. package/dist/core/math/path/index.js +0 -180
  188. package/dist/core/math/path/index.js.map +0 -1
  189. package/dist/core/math/path/operations.d.ts +0 -38
  190. package/dist/core/math/path/operations.d.ts.map +0 -1
  191. package/dist/core/math/path/operations.js +0 -149
  192. package/dist/core/math/path/operations.js.map +0 -1
  193. package/dist/core/math/pool.d.ts +0 -54
  194. package/dist/core/math/pool.d.ts.map +0 -1
  195. package/dist/core/math/pool.js +0 -97
  196. package/dist/core/math/pool.js.map +0 -1
  197. package/dist/core/math/pools.d.ts +0 -29
  198. package/dist/core/math/pools.d.ts.map +0 -1
  199. package/dist/core/math/pools.js +0 -50
  200. package/dist/core/math/pools.js.map +0 -1
  201. package/dist/core/math/rectangle.d.ts +0 -68
  202. package/dist/core/math/rectangle.d.ts.map +0 -1
  203. package/dist/core/math/rectangle.js +0 -124
  204. package/dist/core/math/rectangle.js.map +0 -1
  205. package/dist/core/math/utils.d.ts +0 -68
  206. package/dist/core/math/utils.d.ts.map +0 -1
  207. package/dist/core/math/utils.js +0 -110
  208. package/dist/core/math/utils.js.map +0 -1
  209. package/dist/core/math/vector2.d.ts +0 -85
  210. package/dist/core/math/vector2.d.ts.map +0 -1
  211. package/dist/core/math/vector2.js +0 -134
  212. package/dist/core/math/vector2.js.map +0 -1
  213. package/dist/core/plugin/animationcontroller.d.ts +0 -43
  214. package/dist/core/plugin/animationcontroller.d.ts.map +0 -1
  215. package/dist/core/plugin/animationcontroller.js +0 -11
  216. package/dist/core/plugin/animationcontroller.js.map +0 -1
  217. package/dist/core/plugin/index.d.ts +0 -6
  218. package/dist/core/plugin/index.d.ts.map +0 -1
  219. package/dist/core/plugin/index.js +0 -4
  220. package/dist/core/plugin/index.js.map +0 -1
  221. package/dist/core/plugin/plugin.d.ts +0 -53
  222. package/dist/core/plugin/plugin.d.ts.map +0 -1
  223. package/dist/core/plugin/plugin.js +0 -29
  224. package/dist/core/plugin/plugin.js.map +0 -1
  225. package/dist/core/plugin/pluginregistry.d.ts +0 -71
  226. package/dist/core/plugin/pluginregistry.d.ts.map +0 -1
  227. package/dist/core/plugin/pluginregistry.js +0 -143
  228. package/dist/core/plugin/pluginregistry.js.map +0 -1
  229. package/dist/core/renderer/batchmanager.d.ts +0 -68
  230. package/dist/core/renderer/batchmanager.d.ts.map +0 -1
  231. package/dist/core/renderer/batchmanager.js +0 -82
  232. package/dist/core/renderer/batchmanager.js.map +0 -1
  233. package/dist/core/renderer/canvas2drenderer.d.ts +0 -139
  234. package/dist/core/renderer/canvas2drenderer.d.ts.map +0 -1
  235. package/dist/core/renderer/canvas2drenderer.js +0 -499
  236. package/dist/core/renderer/canvas2drenderer.js.map +0 -1
  237. package/dist/core/renderer/dirtyregionmanager.d.ts +0 -54
  238. package/dist/core/renderer/dirtyregionmanager.d.ts.map +0 -1
  239. package/dist/core/renderer/dirtyregionmanager.js +0 -129
  240. package/dist/core/renderer/dirtyregionmanager.js.map +0 -1
  241. package/dist/core/renderer/index.d.ts +0 -8
  242. package/dist/core/renderer/index.d.ts.map +0 -1
  243. package/dist/core/renderer/index.js +0 -6
  244. package/dist/core/renderer/index.js.map +0 -1
  245. package/dist/core/renderer/renderer.d.ts +0 -154
  246. package/dist/core/renderer/renderer.d.ts.map +0 -1
  247. package/dist/core/renderer/renderer.js +0 -1
  248. package/dist/core/renderer/renderer.js.map +0 -1
  249. package/dist/core/renderer/rendererfactory.d.ts +0 -66
  250. package/dist/core/renderer/rendererfactory.d.ts.map +0 -1
  251. package/dist/core/renderer/rendererfactory.js +0 -219
  252. package/dist/core/renderer/rendererfactory.js.map +0 -1
  253. package/dist/core/renderer/webglrenderer.d.ts +0 -185
  254. package/dist/core/renderer/webglrenderer.d.ts.map +0 -1
  255. package/dist/core/renderer/webglrenderer.js +0 -1007
  256. package/dist/core/renderer/webglrenderer.js.map +0 -1
  257. package/dist/core/scene/index.d.ts +0 -4
  258. package/dist/core/scene/index.d.ts.map +0 -1
  259. package/dist/core/scene/index.js +0 -4
  260. package/dist/core/scene/index.js.map +0 -1
  261. package/dist/core/scene/node.d.ts +0 -162
  262. package/dist/core/scene/node.d.ts.map +0 -1
  263. package/dist/core/scene/node.js +0 -402
  264. package/dist/core/scene/node.js.map +0 -1
  265. package/dist/core/scene/nodes/artboard.d.ts +0 -42
  266. package/dist/core/scene/nodes/artboard.d.ts.map +0 -1
  267. package/dist/core/scene/nodes/artboard.js +0 -64
  268. package/dist/core/scene/nodes/artboard.js.map +0 -1
  269. package/dist/core/scene/nodes/groupnode.d.ts +0 -10
  270. package/dist/core/scene/nodes/groupnode.d.ts.map +0 -1
  271. package/dist/core/scene/nodes/groupnode.js +0 -12
  272. package/dist/core/scene/nodes/groupnode.js.map +0 -1
  273. package/dist/core/scene/nodes/imagenode.d.ts +0 -38
  274. package/dist/core/scene/nodes/imagenode.d.ts.map +0 -1
  275. package/dist/core/scene/nodes/imagenode.js +0 -77
  276. package/dist/core/scene/nodes/imagenode.js.map +0 -1
  277. package/dist/core/scene/nodes/index.d.ts +0 -5
  278. package/dist/core/scene/nodes/index.d.ts.map +0 -1
  279. package/dist/core/scene/nodes/index.js +0 -5
  280. package/dist/core/scene/nodes/index.js.map +0 -1
  281. package/dist/core/scene/nodes/shapenode.d.ts +0 -76
  282. package/dist/core/scene/nodes/shapenode.d.ts.map +0 -1
  283. package/dist/core/scene/nodes/shapenode.js +0 -212
  284. package/dist/core/scene/nodes/shapenode.js.map +0 -1
  285. package/dist/core/scene/transform.d.ts +0 -27
  286. package/dist/core/scene/transform.d.ts.map +0 -1
  287. package/dist/core/scene/transform.js +0 -52
  288. package/dist/core/scene/transform.js.map +0 -1
  289. package/dist/core/serialization/index.d.ts +0 -3
  290. package/dist/core/serialization/index.d.ts.map +0 -1
  291. package/dist/core/serialization/index.js +0 -2
  292. package/dist/core/serialization/index.js.map +0 -1
  293. package/dist/core/serialization/serializer.d.ts +0 -323
  294. package/dist/core/serialization/serializer.d.ts.map +0 -1
  295. package/dist/core/serialization/serializer.js +0 -1173
  296. package/dist/core/serialization/serializer.js.map +0 -1
  297. package/dist/core/serialization/types.d.ts +0 -242
  298. package/dist/core/serialization/types.d.ts.map +0 -1
  299. package/dist/core/serialization/types.js +0 -1
  300. package/dist/core/serialization/types.js.map +0 -1
  301. package/dist/core/timing/clock.d.ts +0 -43
  302. package/dist/core/timing/clock.d.ts.map +0 -1
  303. package/dist/core/timing/clock.js +0 -78
  304. package/dist/core/timing/clock.js.map +0 -1
  305. package/dist/core/timing/index.d.ts +0 -3
  306. package/dist/core/timing/index.d.ts.map +0 -1
  307. package/dist/core/timing/index.js +0 -3
  308. package/dist/core/timing/index.js.map +0 -1
  309. package/dist/core/timing/scheduler.d.ts +0 -72
  310. package/dist/core/timing/scheduler.d.ts.map +0 -1
  311. package/dist/core/timing/scheduler.js +0 -163
  312. package/dist/core/timing/scheduler.js.map +0 -1
  313. package/dist/index.d.ts.map +0 -1
  314. package/dist/index.js.map +0 -1
  315. package/dist/wrapper/react/index.d.ts +0 -5
  316. package/dist/wrapper/react/index.d.ts.map +0 -1
  317. package/dist/wrapper/react/index.js +0 -3
  318. package/dist/wrapper/react/index.js.map +0 -1
  319. package/dist/wrapper/react/samcan-player.d.ts +0 -26
  320. package/dist/wrapper/react/samcan-player.d.ts.map +0 -1
  321. package/dist/wrapper/react/samcan-player.js +0 -19
  322. package/dist/wrapper/react/samcan-player.js.map +0 -1
  323. package/dist/wrapper/react/use-samcan-player.d.ts +0 -33
  324. package/dist/wrapper/react/use-samcan-player.d.ts.map +0 -1
  325. package/dist/wrapper/react/use-samcan-player.js +0 -65
  326. package/dist/wrapper/react/use-samcan-player.js.map +0 -1
  327. package/readme.md +0 -96
@@ -1,52 +0,0 @@
1
- import { Matrix } from "../math/matrix";
2
- import { Vector2 } from "../math/vector2";
3
- /**
4
- * Transform represents the local transformation of a scene node
5
- * including position, rotation, scale, and pivot point
6
- */
7
- export class Transform {
8
- position;
9
- rotation; // radians
10
- scale;
11
- pivot;
12
- constructor(position = Vector2.zero(), rotation = 0, scale = Vector2.one(), pivot = Vector2.zero()) {
13
- this.position = position;
14
- this.rotation = rotation;
15
- this.scale = scale;
16
- this.pivot = pivot;
17
- }
18
- /**
19
- * Convert this transform to a transformation matrix
20
- * Order: translate to pivot -> scale -> rotate -> translate to position
21
- */
22
- toMatrix() {
23
- // Start with translation to position
24
- let matrix = Matrix.translate(this.position.x, this.position.y);
25
- // Apply rotation
26
- if (this.rotation !== 0) {
27
- matrix = matrix.appendRotation(this.rotation);
28
- }
29
- // Apply scale
30
- if (this.scale.x !== 1 || this.scale.y !== 1) {
31
- matrix = matrix.appendScale(this.scale.x, this.scale.y);
32
- }
33
- // Apply pivot offset (translate by negative pivot)
34
- if (this.pivot.x !== 0 || this.pivot.y !== 0) {
35
- matrix = matrix.appendTranslation(-this.pivot.x, -this.pivot.y);
36
- }
37
- return matrix;
38
- }
39
- /**
40
- * Create a copy of this transform
41
- */
42
- clone() {
43
- return new Transform(this.position.clone(), this.rotation, this.scale.clone(), this.pivot.clone());
44
- }
45
- /**
46
- * Create an identity transform
47
- */
48
- static identity() {
49
- return new Transform();
50
- }
51
- }
52
- //# sourceMappingURL=transform.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transform.js","sourceRoot":"","sources":["../../../core/scene/transform.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAEzC;;;GAGG;AACH,MAAM,OAAO,SAAS;IACX,QAAQ,CAAS;IACjB,QAAQ,CAAQ,CAAC,UAAU;IAC3B,KAAK,CAAS;IACd,KAAK,CAAS;IAErB,YACI,WAAoB,OAAO,CAAC,IAAI,EAAE,EAClC,WAAmB,CAAC,EACpB,QAAiB,OAAO,CAAC,GAAG,EAAE,EAC9B,QAAiB,OAAO,CAAC,IAAI,EAAE;QAE/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;IAED;;;OAGG;IACH,QAAQ;QACJ,qCAAqC;QACrC,IAAI,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QAE/D,iBAAiB;QACjB,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACjD,CAAC;QAED,cAAc;QACd,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3C,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC3D,CAAC;QAED,mDAAmD;QACnD,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3C,MAAM,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QACnE,CAAC;QAED,OAAO,MAAM,CAAA;IACjB,CAAC;IAED;;OAEG;IACH,KAAK;QACD,OAAO,IAAI,SAAS,CAChB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,EACrB,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,EAClB,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CACrB,CAAA;IACL,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ;QACX,OAAO,IAAI,SAAS,EAAE,CAAA;IAC1B,CAAC;CACJ"}
@@ -1,3 +0,0 @@
1
- export type { ColorData, Vector2Data, MatrixData, TransformData, GradientStopData, LinearGradientData, RadialGradientData, GradientData, PaintData, ShapeData, ImageData, TextData, NodeType, NodeData, KeyframeData, AnimationTrackData, TimelineData, TransitionConditionData, StateTransitionData, AnimationStateData, StateMachineData, ArtboardData, AssetType, AssetData, FileMetadata, SamcanFile, } from "./types";
2
- export { Serializer } from "./serializer";
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../core/serialization/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACR,SAAS,EACT,WAAW,EACX,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,SAAS,EACT,SAAS,EACT,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,kBAAkB,EAClB,YAAY,EACZ,uBAAuB,EACvB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,SAAS,EACT,SAAS,EACT,YAAY,EACZ,UAAU,GACb,MAAM,SAAS,CAAA;AAEhB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA"}
@@ -1,2 +0,0 @@
1
- export { Serializer } from "./serializer";
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../core/serialization/index.ts"],"names":[],"mappings":"AA6BA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA"}
@@ -1,323 +0,0 @@
1
- import { Color } from "../math/color";
2
- import { Vector2 } from "../math/vector2";
3
- import { Matrix } from "../math/matrix";
4
- import { Transform } from "../scene/transform";
5
- import { Paint } from "../math/paint";
6
- import { SceneNode } from "../scene/node";
7
- import { Artboard } from "../scene/nodes/artboard";
8
- import { ShapeNode } from "../scene/nodes/shapenode";
9
- import { ImageNode } from "../scene/nodes/imagenode";
10
- import { Timeline } from "../animation/timeline";
11
- import { AnimationTrack } from "../animation/animationtrack";
12
- import { Keyframe } from "../animation/keyframe";
13
- import { AnimationState } from "../animation/animationstate";
14
- import { StateMachine } from "../animation/statemachine";
15
- import { StateTransition, type TransitionCondition } from "../animation/statetransition";
16
- import type { ColorData, Vector2Data, MatrixData, TransformData, PaintData, ShapeData, ImageData, NodeData, KeyframeData, AnimationTrackData, TimelineData, AnimationStateData, StateMachineData, StateTransitionData, TransitionConditionData, ArtboardData, SamcanFile, FileMetadata } from "./types";
17
- /**
18
- * Serializer converts runtime objects to serializable data structures
19
- * Handles conversion of Artboards, scene graphs, timelines, and state machines to JSON-compatible format
20
- */
21
- export declare class Serializer {
22
- private _nodeIdMap;
23
- private _nextNodeId;
24
- /**
25
- * Serialize an Artboard to ArtboardData
26
- */
27
- serializeArtboard(artboard: Artboard): ArtboardData;
28
- /**
29
- * Serialize a Timeline to TimelineData
30
- */
31
- serializeTimeline(timeline: Timeline): TimelineData;
32
- /**
33
- * Serialize an AnimationTrack to AnimationTrackData
34
- */
35
- serializeAnimationTrack(track: AnimationTrack): AnimationTrackData;
36
- /**
37
- * Serialize a Keyframe to KeyframeData
38
- */
39
- serializeKeyframe(keyframe: Keyframe): KeyframeData;
40
- /**
41
- * Serialize an AnimationState to AnimationStateData
42
- */
43
- serializeAnimationState(state: AnimationState): AnimationStateData;
44
- /**
45
- * Serialize a StateMachine to StateMachineData
46
- */
47
- serializeStateMachine(stateMachine: StateMachine, id: string, name: string): StateMachineData;
48
- /**
49
- * Serialize a StateTransition to StateTransitionData
50
- */
51
- serializeStateTransition(transition: StateTransition): StateTransitionData;
52
- /**
53
- * Serialize a TransitionCondition to TransitionConditionData
54
- */
55
- serializeTransitionCondition(condition: {
56
- type: string;
57
- eventName?: string;
58
- inputName?: string;
59
- expectedValue?: boolean;
60
- operator?: string;
61
- threshold?: number;
62
- duration?: number;
63
- }): TransitionConditionData;
64
- /**
65
- * Serialize a Color to ColorData
66
- */
67
- serializeColor(color: Color): ColorData;
68
- /**
69
- * Serialize a Vector2 to Vector2Data
70
- */
71
- serializeVector2(vector: Vector2): Vector2Data;
72
- /**
73
- * Serialize a Matrix to MatrixData
74
- */
75
- serializeMatrix(matrix: Matrix): MatrixData;
76
- /**
77
- * Serialize a Transform to TransformData
78
- */
79
- serializeTransform(transform: Transform): TransformData;
80
- /**
81
- * Serialize a Paint to PaintData
82
- */
83
- serializePaint(paint: Paint): PaintData;
84
- /**
85
- * Serialize a complete SamcanFile
86
- */
87
- serializeSamcanFile(artboards: Artboard[], metadata?: Partial<FileMetadata>, options?: {
88
- includeAssets?: boolean;
89
- assetManager?: {
90
- loadedAssets: ReadonlyMap<string, {
91
- id: string;
92
- type: string;
93
- url: string;
94
- }>;
95
- collectSceneAssets: (node: SceneNode) => string[];
96
- };
97
- }): SamcanFile;
98
- /**
99
- * Collect asset data from artboards
100
- */
101
- private _collectAssets;
102
- /**
103
- * Extract a name from an asset URL
104
- */
105
- private _getAssetNameFromUrl;
106
- /**
107
- * Create an asset bundle for export
108
- * Returns a map of asset IDs to their data (for embedding or separate export)
109
- */
110
- createAssetBundle(assetIds: string[], assetManager: {
111
- loadedAssets: ReadonlyMap<string, {
112
- id: string;
113
- type: string;
114
- url: string;
115
- data?: HTMLImageElement | ImageBitmap | FontFace;
116
- }>;
117
- }): Promise<Map<string, {
118
- type: string;
119
- data: Blob | string;
120
- }>>;
121
- /**
122
- * Convert HTMLImageElement to Blob
123
- */
124
- private _imageToBlob;
125
- /**
126
- * Convert ImageBitmap to Blob
127
- */
128
- private _imageBitmapToBlob;
129
- /**
130
- * Generate JSON string from SamcanFile
131
- */
132
- toJSON(file: SamcanFile, pretty?: boolean): string;
133
- /**
134
- * Compress a string using gzip compression
135
- * Returns a Uint8Array of compressed data
136
- */
137
- compress(data: string): Promise<Uint8Array>;
138
- /**
139
- * Decompress gzip-compressed data
140
- * Returns the decompressed string
141
- */
142
- decompress(compressedData: Uint8Array): Promise<string>;
143
- /**
144
- * Serialize and compress a SamcanFile
145
- * Returns compressed data as Uint8Array
146
- */
147
- toCompressedJSON(file: SamcanFile, pretty?: boolean): Promise<Uint8Array>;
148
- /**
149
- * Decompress and deserialize a SamcanFile
150
- * Accepts compressed data as Uint8Array
151
- */
152
- fromCompressedJSON(compressedData: Uint8Array): Promise<SamcanFile>;
153
- /**
154
- * Load a SamcanFile incrementally from a large JSON string
155
- * This is useful for large files to avoid blocking the main thread
156
- * Parses JSON in chunks and yields control periodically
157
- * Returns a promise that resolves with the parsed SamcanFile
158
- */
159
- fromJSONIncremental(json: string): Promise<SamcanFile>;
160
- /**
161
- * Load a SamcanFile incrementally from a ReadableStream
162
- * This is useful for loading files from network or disk without loading entire file into memory
163
- */
164
- fromJSONStream(stream: ReadableStream<Uint8Array>): Promise<SamcanFile>;
165
- /**
166
- * Load and decompress a SamcanFile from a compressed stream
167
- * Useful for loading compressed files from network or disk
168
- */
169
- fromCompressedStream(stream: ReadableStream<Uint8Array>): Promise<SamcanFile>;
170
- /**
171
- * Load and decompress a SamcanFile incrementally
172
- * Useful for large compressed files
173
- */
174
- fromCompressedJSONIncremental(compressedData: Uint8Array): Promise<SamcanFile>;
175
- /**
176
- * Assign unique IDs to all nodes in the scene graph
177
- */
178
- private _assignNodeIds;
179
- /**
180
- * Get the ID for a node
181
- */
182
- private _getNodeId;
183
- /**
184
- * Serialize children nodes
185
- */
186
- private _serializeChildren;
187
- /**
188
- * Serialize a SceneNode to NodeData
189
- */
190
- private _serializeNode;
191
- /**
192
- * Get the node type
193
- */
194
- private _getNodeType;
195
- /**
196
- * Get a name for the node
197
- */
198
- private _getNodeName;
199
- /**
200
- * Serialize ShapeNode data
201
- */
202
- private _serializeShapeData;
203
- /**
204
- * Serialize ImageNode data
205
- */
206
- private _serializeImageData;
207
- /**
208
- * Serialize a gradient
209
- */
210
- private _serializeGradient;
211
- /**
212
- * Try to find the name of an easing function
213
- */
214
- private _getEasingName;
215
- /**
216
- * Deserialize a SamcanFile from JSON string
217
- */
218
- fromJSON(json: string): SamcanFile;
219
- /**
220
- * Validate a SamcanFile structure
221
- */
222
- validateSamcanFile(data: unknown): SamcanFile;
223
- /**
224
- * Check if version string is valid (semver format)
225
- */
226
- private _isValidVersion;
227
- /**
228
- * Validate artboard data structure
229
- */
230
- private _validateArtboardData;
231
- /**
232
- * Migrate a SamcanFile to the current version
233
- */
234
- migrateSamcanFile(data: SamcanFile): SamcanFile;
235
- /**
236
- * Check version compatibility
237
- */
238
- private _checkVersionCompatibility;
239
- /**
240
- * Parse version string into [major, minor, patch]
241
- */
242
- private _parseVersion;
243
- /**
244
- * Deserialize a SamcanFile to runtime objects
245
- */
246
- deserializeSamcanFile(data: SamcanFile): {
247
- artboards: Artboard[];
248
- stateMachines: Map<string, StateMachine>;
249
- };
250
- /**
251
- * Deserialize an Artboard from ArtboardData
252
- */
253
- deserializeArtboard(data: ArtboardData): Artboard;
254
- /**
255
- * Deserialize a SceneNode from NodeData
256
- */
257
- deserializeNode(data: NodeData, nodeMap: Map<string, SceneNode>): SceneNode;
258
- /**
259
- * Deserialize a ShapeNode from ShapeData
260
- */
261
- deserializeShapeNode(data: ShapeData, transform: Transform): ShapeNode;
262
- /**
263
- * Deserialize an ImageNode from ImageData
264
- */
265
- deserializeImageNode(data: ImageData, transform: Transform): ImageNode;
266
- /**
267
- * Deserialize a Timeline from TimelineData
268
- */
269
- deserializeTimeline(data: TimelineData, nodeMap: Map<string, SceneNode>): Timeline;
270
- /**
271
- * Deserialize an AnimationTrack from AnimationTrackData
272
- */
273
- deserializeAnimationTrack(data: AnimationTrackData, nodeMap: Map<string, SceneNode>): AnimationTrack;
274
- /**
275
- * Deserialize a Keyframe from KeyframeData
276
- */
277
- deserializeKeyframe(data: KeyframeData): Keyframe;
278
- /**
279
- * Deserialize a StateMachine from StateMachineData
280
- */
281
- deserializeStateMachine(data: StateMachineData, artboards: Artboard[]): StateMachine;
282
- /**
283
- * Deserialize an AnimationState from AnimationStateData
284
- */
285
- deserializeAnimationState(data: AnimationStateData, nodeMap: Map<string, SceneNode>): AnimationState;
286
- /**
287
- * Deserialize a StateTransition from StateTransitionData
288
- */
289
- deserializeStateTransition(data: StateTransitionData): StateTransition;
290
- /**
291
- * Deserialize a TransitionCondition from TransitionConditionData
292
- */
293
- deserializeTransitionCondition(data: TransitionConditionData): TransitionCondition;
294
- /**
295
- * Deserialize a Color from ColorData
296
- */
297
- deserializeColor(data: ColorData): Color;
298
- /**
299
- * Deserialize a Vector2 from Vector2Data
300
- */
301
- deserializeVector2(data: Vector2Data): Vector2;
302
- /**
303
- * Deserialize a Matrix from MatrixData
304
- */
305
- deserializeMatrix(data: MatrixData): Matrix;
306
- /**
307
- * Deserialize a Transform from TransformData
308
- */
309
- deserializeTransform(data: TransformData): Transform;
310
- /**
311
- * Deserialize a Paint from PaintData
312
- */
313
- deserializePaint(data: PaintData): Paint;
314
- /**
315
- * Deserialize a gradient paint
316
- */
317
- private _deserializeGradientPaint;
318
- /**
319
- * Build a node map from a scene graph
320
- */
321
- private _buildNodeMap;
322
- }
323
- //# sourceMappingURL=serializer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../../core/serialization/serializer.ts"],"names":[],"mappings":"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"}