@revideo/2d 0.1.0 → 0.1.4-alpha.878

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 (202) hide show
  1. package/lib/code/CodeCursor.d.ts +74 -74
  2. package/lib/code/CodeCursor.js +352 -286
  3. package/lib/code/CodeDiffer.d.ts +21 -16
  4. package/lib/code/CodeDiffer.js +39 -41
  5. package/lib/code/CodeFragment.d.ts +16 -8
  6. package/lib/code/CodeFragment.js +36 -36
  7. package/lib/code/CodeHighlighter.d.ts +59 -59
  8. package/lib/code/CodeHighlighter.js +1 -1
  9. package/lib/code/CodeMetrics.d.ts +12 -8
  10. package/lib/code/CodeMetrics.js +26 -24
  11. package/lib/code/CodeRange.d.ts +21 -5
  12. package/lib/code/CodeRange.js +131 -124
  13. package/lib/code/CodeScope.d.ts +18 -8
  14. package/lib/code/CodeScope.js +59 -61
  15. package/lib/code/CodeSelection.d.ts +9 -4
  16. package/lib/code/CodeSelection.js +8 -8
  17. package/lib/code/CodeSignal.d.ts +74 -47
  18. package/lib/code/CodeSignal.js +206 -189
  19. package/lib/code/CodeTokenizer.d.ts +1 -1
  20. package/lib/code/CodeTokenizer.js +41 -41
  21. package/lib/code/DefaultHighlightStyle.d.ts +2 -2
  22. package/lib/code/DefaultHighlightStyle.js +96 -96
  23. package/lib/code/LezerHighlighter.d.ts +21 -19
  24. package/lib/code/LezerHighlighter.js +101 -101
  25. package/lib/code/diff.d.ts +12 -9
  26. package/lib/code/diff.js +218 -205
  27. package/lib/code/extractRange.d.ts +7 -4
  28. package/lib/code/extractRange.js +79 -71
  29. package/lib/code/index.d.ts +1 -1
  30. package/lib/code/index.js +1 -1
  31. package/lib/components/Audio.d.ts +11 -11
  32. package/lib/components/Audio.js +115 -109
  33. package/lib/components/AudioTest.d.ts +95 -95
  34. package/lib/components/AudioTest.js +259 -261
  35. package/lib/components/Bezier.d.ts +18 -18
  36. package/lib/components/Bezier.js +86 -75
  37. package/lib/components/Circle.d.ts +95 -90
  38. package/lib/components/Circle.js +85 -74
  39. package/lib/components/Code.d.ts +244 -211
  40. package/lib/components/Code.js +317 -269
  41. package/lib/components/CodeBlock.d.ts +109 -67
  42. package/lib/components/CodeBlock.js +414 -373
  43. package/lib/components/CubicBezier.d.ts +36 -36
  44. package/lib/components/CubicBezier.js +52 -49
  45. package/lib/components/Curve.d.ts +208 -198
  46. package/lib/components/Curve.js +270 -269
  47. package/lib/components/Grid.d.ts +47 -42
  48. package/lib/components/Grid.js +63 -56
  49. package/lib/components/Icon.d.ts +55 -50
  50. package/lib/components/Icon.js +58 -50
  51. package/lib/components/Img.d.ts +86 -79
  52. package/lib/components/Img.js +193 -181
  53. package/lib/components/Knot.d.ts +97 -78
  54. package/lib/components/Knot.js +81 -60
  55. package/lib/components/Latex.d.ts +12 -12
  56. package/lib/components/Latex.js +77 -65
  57. package/lib/components/Layout.d.ts +455 -413
  58. package/lib/components/Layout.js +666 -681
  59. package/lib/components/Line.d.ts +61 -49
  60. package/lib/components/Line.js +216 -193
  61. package/lib/components/Media.d.ts +35 -31
  62. package/lib/components/Media.d.ts.map +1 -1
  63. package/lib/components/Media.js +135 -121
  64. package/lib/components/Node.d.ts +875 -830
  65. package/lib/components/Node.js +1383 -1314
  66. package/lib/components/Path.d.ts +35 -14
  67. package/lib/components/Path.js +100 -89
  68. package/lib/components/Polygon.d.ts +60 -55
  69. package/lib/components/Polygon.js +71 -66
  70. package/lib/components/QuadBezier.d.ts +29 -29
  71. package/lib/components/QuadBezier.js +50 -45
  72. package/lib/components/Ray.d.ts +28 -28
  73. package/lib/components/Ray.js +71 -64
  74. package/lib/components/Rect.d.ts +115 -108
  75. package/lib/components/Rect.js +78 -72
  76. package/lib/components/SVG.d.ts +165 -139
  77. package/lib/components/SVG.js +609 -541
  78. package/lib/components/Shape.d.ts +44 -35
  79. package/lib/components/Shape.js +112 -127
  80. package/lib/components/Spline.d.ts +46 -40
  81. package/lib/components/Spline.js +190 -175
  82. package/lib/components/Txt.d.ts +55 -44
  83. package/lib/components/Txt.js +156 -155
  84. package/lib/components/TxtLeaf.d.ts +20 -16
  85. package/lib/components/TxtLeaf.js +177 -158
  86. package/lib/components/Video.d.ts +41 -41
  87. package/lib/components/Video.js +138 -135
  88. package/lib/components/View2D.d.ts +21 -21
  89. package/lib/components/View2D.js +98 -85
  90. package/lib/components/index.d.ts +1 -1
  91. package/lib/components/index.js +1 -1
  92. package/lib/components/types.d.ts +22 -9
  93. package/lib/components/types.js +1 -1
  94. package/lib/curves/ArcSegment.d.ts +36 -24
  95. package/lib/curves/ArcSegment.js +145 -94
  96. package/lib/curves/CircleSegment.d.ts +26 -16
  97. package/lib/curves/CircleSegment.js +56 -49
  98. package/lib/curves/CubicBezierSegment.d.ts +18 -13
  99. package/lib/curves/CubicBezierSegment.js +79 -46
  100. package/lib/curves/CurveDrawingInfo.d.ts +9 -9
  101. package/lib/curves/CurveDrawingInfo.js +1 -1
  102. package/lib/curves/CurvePoint.d.ts +13 -13
  103. package/lib/curves/CurvePoint.js +1 -1
  104. package/lib/curves/CurveProfile.d.ts +5 -5
  105. package/lib/curves/CurveProfile.js +1 -1
  106. package/lib/curves/KnotInfo.d.ts +8 -8
  107. package/lib/curves/KnotInfo.js +1 -1
  108. package/lib/curves/LineSegment.d.ts +19 -14
  109. package/lib/curves/LineSegment.js +42 -42
  110. package/lib/curves/Polynomial.d.ts +110 -110
  111. package/lib/curves/Polynomial.js +249 -239
  112. package/lib/curves/Polynomial2D.d.ts +20 -20
  113. package/lib/curves/Polynomial2D.js +46 -42
  114. package/lib/curves/PolynomialSegment.d.ts +42 -37
  115. package/lib/curves/PolynomialSegment.js +83 -81
  116. package/lib/curves/QuadBezierSegment.d.ts +12 -12
  117. package/lib/curves/QuadBezierSegment.js +71 -41
  118. package/lib/curves/Segment.d.ts +12 -7
  119. package/lib/curves/Segment.js +2 -3
  120. package/lib/curves/UniformPolynomialCurveSampler.d.ts +34 -34
  121. package/lib/curves/UniformPolynomialCurveSampler.js +68 -62
  122. package/lib/curves/createCurveProfileLerp.d.ts +17 -6
  123. package/lib/curves/createCurveProfileLerp.js +211 -208
  124. package/lib/curves/getBezierSplineProfile.d.ts +8 -4
  125. package/lib/curves/getBezierSplineProfile.js +145 -101
  126. package/lib/curves/getCircleProfile.d.ts +10 -4
  127. package/lib/curves/getCircleProfile.js +72 -40
  128. package/lib/curves/getPathProfile.d.ts +2 -2
  129. package/lib/curves/getPathProfile.js +135 -112
  130. package/lib/curves/getPointAtDistance.d.ts +7 -4
  131. package/lib/curves/getPointAtDistance.js +12 -12
  132. package/lib/curves/getPolylineProfile.d.ts +8 -4
  133. package/lib/curves/getPolylineProfile.js +67 -54
  134. package/lib/curves/getRectProfile.d.ts +9 -4
  135. package/lib/curves/getRectProfile.js +117 -52
  136. package/lib/curves/index.d.ts +1 -1
  137. package/lib/curves/index.js +1 -1
  138. package/lib/decorators/canvasStyleSignal.d.ts +3 -3
  139. package/lib/decorators/canvasStyleSignal.js +10 -10
  140. package/lib/decorators/colorSignal.d.ts +1 -1
  141. package/lib/decorators/colorSignal.js +7 -7
  142. package/lib/decorators/compound.d.ts +4 -2
  143. package/lib/decorators/compound.js +43 -23
  144. package/lib/decorators/computed.d.ts +1 -1
  145. package/lib/decorators/computed.js +9 -9
  146. package/lib/decorators/defaultStyle.d.ts +5 -2
  147. package/lib/decorators/defaultStyle.js +11 -11
  148. package/lib/decorators/filtersSignal.d.ts +28 -8
  149. package/lib/decorators/filtersSignal.js +87 -64
  150. package/lib/decorators/index.d.ts +1 -1
  151. package/lib/decorators/index.js +1 -1
  152. package/lib/decorators/initializers.d.ts +5 -2
  153. package/lib/decorators/initializers.js +18 -19
  154. package/lib/decorators/nodeName.d.ts +1 -1
  155. package/lib/decorators/nodeName.js +4 -4
  156. package/lib/decorators/signal.d.ts +40 -20
  157. package/lib/decorators/signal.js +113 -104
  158. package/lib/decorators/spacingSignal.d.ts +1 -1
  159. package/lib/decorators/spacingSignal.js +13 -13
  160. package/lib/decorators/vector2Signal.d.ts +13 -7
  161. package/lib/decorators/vector2Signal.js +15 -13
  162. package/lib/index.d.ts +1 -1
  163. package/lib/index.js +1 -1
  164. package/lib/jsx-dev-runtime.d.ts +3 -3
  165. package/lib/jsx-dev-runtime.js +3 -3
  166. package/lib/jsx-runtime.d.ts +19 -9
  167. package/lib/jsx-runtime.js +18 -18
  168. package/lib/partials/Filter.d.ts +24 -16
  169. package/lib/partials/Filter.js +69 -69
  170. package/lib/partials/Gradient.d.ts +30 -24
  171. package/lib/partials/Gradient.js +69 -58
  172. package/lib/partials/Pattern.d.ts +14 -9
  173. package/lib/partials/Pattern.js +30 -24
  174. package/lib/partials/ShaderConfig.d.ts +81 -74
  175. package/lib/partials/ShaderConfig.js +22 -23
  176. package/lib/partials/index.d.ts +1 -1
  177. package/lib/partials/index.js +1 -1
  178. package/lib/partials/types.d.ts +19 -6
  179. package/lib/partials/types.js +1 -1
  180. package/lib/scenes/Scene2D.d.ts +42 -23
  181. package/lib/scenes/Scene2D.d.ts.map +1 -1
  182. package/lib/scenes/Scene2D.js +161 -149
  183. package/lib/scenes/index.d.ts +1 -1
  184. package/lib/scenes/index.js +1 -1
  185. package/lib/scenes/makeScene2D.d.ts +7 -5
  186. package/lib/scenes/makeScene2D.js +10 -10
  187. package/lib/scenes/useScene2D.d.ts +2 -2
  188. package/lib/scenes/useScene2D.js +3 -3
  189. package/lib/tsconfig.build.tsbuildinfo +1 -1
  190. package/lib/utils/CanvasUtils.d.ts +93 -21
  191. package/lib/utils/CanvasUtils.js +186 -105
  192. package/lib/utils/diff.d.ts +25 -18
  193. package/lib/utils/diff.js +84 -87
  194. package/lib/utils/index.d.ts +1 -1
  195. package/lib/utils/index.js +1 -1
  196. package/lib/utils/is.d.ts +4 -2
  197. package/lib/utils/is.js +2 -2
  198. package/lib/utils/makeSignalExtensions.d.ts +11 -4
  199. package/lib/utils/makeSignalExtensions.js +17 -17
  200. package/package.json +5 -5
  201. package/src/lib/components/Media.ts +18 -0
  202. package/src/lib/scenes/Scene2D.ts +2 -0
package/lib/utils/diff.js CHANGED
@@ -1,97 +1,94 @@
1
1
  function getIdMap(list) {
2
- const map = new Map();
3
- let before = undefined;
4
- for (const [index, current] of list.entries()) {
5
- const currentArray = map.get(current.id) ?? [];
6
- if (!map.has(current.id)) {
7
- map.set(current.id, currentArray);
8
- }
9
- currentArray.push({
10
- before,
11
- current,
12
- beforeIdIndex: before ? map.get(before.id).length - 1 : -1,
13
- currentIndex: index,
14
- });
15
- before = current;
2
+ const map = new Map();
3
+ let before = undefined;
4
+ for (const [index, current] of list.entries()) {
5
+ const currentArray = map.get(current.id) ?? [];
6
+ if (!map.has(current.id)) {
7
+ map.set(current.id, currentArray);
16
8
  }
17
- return map;
9
+ currentArray.push({
10
+ before,
11
+ current,
12
+ beforeIdIndex: before ? map.get(before.id).length - 1 : -1,
13
+ currentIndex: index,
14
+ });
15
+ before = current;
16
+ }
17
+ return map;
18
18
  }
19
19
  export function getTransformDiff(from, to) {
20
- const diff = {
21
- inserted: [],
22
- deleted: [],
23
- transformed: [],
24
- };
25
- const fromMap = getIdMap(from);
26
- const toMap = getIdMap(to);
27
- for (const [key, fromItem] of fromMap.entries()) {
28
- const toItem = toMap.get(key);
29
- if (toItem) {
30
- toMap.delete(key);
31
- for (let i = 0; i < Math.max(fromItem.length, toItem.length); i++) {
32
- const insert = i >= fromItem.length;
33
- const remove = i >= toItem.length;
34
- const fromNode = !insert ? fromItem[i] : fromItem[fromItem.length - 1];
35
- const toNode = !remove ? toItem[i] : toItem[toItem.length - 1];
36
- diff.transformed.push({
37
- insert,
38
- remove,
39
- from: fromNode,
40
- to: toNode,
41
- });
42
- }
43
- }
44
- else {
45
- for (const node of fromItem) {
46
- diff.deleted.push(node);
47
- }
48
- }
20
+ const diff = {
21
+ inserted: [],
22
+ deleted: [],
23
+ transformed: [],
24
+ };
25
+ const fromMap = getIdMap(from);
26
+ const toMap = getIdMap(to);
27
+ for (const [key, fromItem] of fromMap.entries()) {
28
+ const toItem = toMap.get(key);
29
+ if (toItem) {
30
+ toMap.delete(key);
31
+ for (let i = 0; i < Math.max(fromItem.length, toItem.length); i++) {
32
+ const insert = i >= fromItem.length;
33
+ const remove = i >= toItem.length;
34
+ const fromNode = !insert ? fromItem[i] : fromItem[fromItem.length - 1];
35
+ const toNode = !remove ? toItem[i] : toItem[toItem.length - 1];
36
+ diff.transformed.push({
37
+ insert,
38
+ remove,
39
+ from: fromNode,
40
+ to: toNode,
41
+ });
42
+ }
43
+ } else {
44
+ for (const node of fromItem) {
45
+ diff.deleted.push(node);
46
+ }
49
47
  }
50
- for (const toItem of toMap.values()) {
51
- for (const node of toItem) {
52
- diff.inserted.push(node);
53
- }
48
+ }
49
+ for (const toItem of toMap.values()) {
50
+ for (const node of toItem) {
51
+ diff.inserted.push(node);
54
52
  }
55
- return diff;
53
+ }
54
+ return diff;
56
55
  }
57
56
  export function applyTransformDiff(current, diff, cloner) {
58
- function insert(item) {
59
- let idIndex = -1;
60
- const index = item.before
61
- ? current.findIndex(({ id }) => {
62
- if (id === item.before?.id) {
63
- idIndex++;
64
- if (idIndex === item.beforeIdIndex)
65
- return true;
66
- }
67
- return false;
68
- })
69
- : 0;
70
- current.splice(index + 1, 0, item.current);
71
- }
72
- const result = {
73
- inserted: diff.inserted.map(item => ({
74
- item,
75
- order: item.currentIndex,
76
- })),
57
+ function insert(item) {
58
+ let idIndex = -1;
59
+ const index = item.before
60
+ ? current.findIndex(({id}) => {
61
+ if (id === item.before?.id) {
62
+ idIndex++;
63
+ if (idIndex === item.beforeIdIndex) return true;
64
+ }
65
+ return false;
66
+ })
67
+ : 0;
68
+ current.splice(index + 1, 0, item.current);
69
+ }
70
+ const result = {
71
+ inserted: diff.inserted.map(item => ({
72
+ item,
73
+ order: item.currentIndex,
74
+ })),
75
+ };
76
+ for (const item of diff.transformed) {
77
+ if (!item.insert) continue;
78
+ const from = item.from;
79
+ item.from = {
80
+ ...item.to,
81
+ current: cloner(from.current),
77
82
  };
78
- for (const item of diff.transformed) {
79
- if (!item.insert)
80
- continue;
81
- const from = item.from;
82
- item.from = {
83
- ...item.to,
84
- current: cloner(from.current),
85
- };
86
- result.inserted.push({
87
- item: item.from,
88
- order: item.to.currentIndex,
89
- });
90
- }
91
- result.inserted.sort((a, b) => a.order - b.order);
92
- for (const item of result.inserted) {
93
- insert(item.item);
94
- }
95
- return result;
83
+ result.inserted.push({
84
+ item: item.from,
85
+ order: item.to.currentIndex,
86
+ });
87
+ }
88
+ result.inserted.sort((a, b) => a.order - b.order);
89
+ for (const item of result.inserted) {
90
+ insert(item.item);
91
+ }
92
+ return result;
96
93
  }
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlmZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvdXRpbHMvZGlmZi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQ0EsU0FBUyxRQUFRLENBQW1CLElBQVM7SUFDM0MsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLEVBQWtDLENBQUM7SUFDdEQsSUFBSSxNQUFNLEdBQWtCLFNBQVMsQ0FBQztJQUN0QyxLQUFLLE1BQU0sQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7UUFDOUMsTUFBTSxZQUFZLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQy9DLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ3pCLEdBQUcsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNwQyxDQUFDO1FBRUQsWUFBWSxDQUFDLElBQUksQ0FBQztZQUNoQixNQUFNO1lBQ04sT0FBTztZQUNQLGFBQWEsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBRSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMzRCxZQUFZLEVBQUUsS0FBSztTQUNwQixDQUFDLENBQUM7UUFDSCxNQUFNLEdBQUcsT0FBTyxDQUFDO0lBQ25CLENBQUM7SUFDRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUM7QUFFRCxNQUFNLFVBQVUsZ0JBQWdCLENBQzlCLElBQVMsRUFDVCxFQUFPO0lBRVAsTUFBTSxJQUFJLEdBQXFCO1FBQzdCLFFBQVEsRUFBRSxFQUFFO1FBQ1osT0FBTyxFQUFFLEVBQUU7UUFDWCxXQUFXLEVBQUUsRUFBRTtLQUNo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
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlmZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvdXRpbHMvZGlmZi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQ0EsU0FBUyxRQUFRLENBQW1CLElBQVM7SUFDM0MsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLEVBQWtDLENBQUM7SUFDdEQsSUFBSSxNQUFNLEdBQWtCLFNBQVMsQ0FBQztJQUN0QyxLQUFLLE1BQU0sQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7UUFDOUMsTUFBTSxZQUFZLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQy9DLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ3pCLEdBQUcsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNwQyxDQUFDO1FBRUQsWUFBWSxDQUFDLElBQUksQ0FBQztZQUNoQixNQUFNO1lBQ04sT0FBTztZQUNQLGFBQWEsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBRSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMzRCxZQUFZLEVBQUUsS0FBSztTQUNwQixDQUFDLENBQUM7UUFDSCxNQUFNLEdBQUcsT0FBTyxDQUFDO0lBQ25CLENBQUM7SUFDRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUM7QUFFRCxNQUFNLFVBQVUsZ0JBQWdCLENBQzlCLElBQVMsRUFDVCxFQUFPO0lBRVAsTUFBTSxJQUFJLEdBQXFCO1FBQzdCLFFBQVEsRUFBRSxFQUFFO1FBQ1osT0FBTyxFQUFFLEVBQUU7UUFDWCxXQUFXLEVBQUUsRUFBRTtLQUNo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
@@ -1,3 +1,3 @@
1
1
  export * from './CanvasUtils';
2
2
  export * from './is';
3
- //# sourceMappingURL=index.d.ts.map
3
+ //# sourceMappingURL=index.d.ts.map
@@ -1,3 +1,3 @@
1
1
  export * from './CanvasUtils';
2
2
  export * from './is';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsTUFBTSxDQUFDIn0=
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsTUFBTSxDQUFDIn0=
package/lib/utils/is.d.ts CHANGED
@@ -4,5 +4,7 @@
4
4
  *
5
5
  * @param klass - The class to check against.
6
6
  */
7
- export declare function is<T>(klass: new (...args: any[]) => T): (object: any) => object is T;
8
- //# sourceMappingURL=is.d.ts.map
7
+ export declare function is<T>(
8
+ klass: new (...args: any[]) => T,
9
+ ): (object: any) => object is T;
10
+ //# sourceMappingURL=is.d.ts.map
package/lib/utils/is.js CHANGED
@@ -5,6 +5,6 @@
5
5
  * @param klass - The class to check against.
6
6
  */
7
7
  export function is(klass) {
8
- return (object) => object instanceof klass;
8
+ return object => object instanceof klass;
9
9
  }
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL3V0aWxzL2lzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLEVBQUUsQ0FDaEIsS0FBZ0M7SUFFaEMsT0FBTyxDQUFDLE1BQU0sRUFBZSxFQUFFLENBQUMsTUFBTSxZQUFZLEtBQUssQ0FBQztBQUMxRCxDQUFDIn0=
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL3V0aWxzL2lzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLEVBQUUsQ0FDaEIsS0FBZ0M7SUFFaEMsT0FBTyxDQUFDLE1BQU0sRUFBZSxFQUFFLENBQUMsTUFBTSxZQUFZLEtBQUssQ0FBQztBQUMxRCxDQUFDIn0=
@@ -1,4 +1,11 @@
1
- import { SignalExtensions } from '@revideo/core';
2
- import { PropertyMetadata } from '../decorators';
3
- export declare function makeSignalExtensions<TSetterValue, TValue extends TSetterValue>(meta?: Partial<PropertyMetadata<TValue>>, owner?: any, name?: string): Partial<SignalExtensions<TSetterValue, TValue>>;
4
- //# sourceMappingURL=makeSignalExtensions.d.ts.map
1
+ import {SignalExtensions} from '@revideo/core';
2
+ import {PropertyMetadata} from '../decorators';
3
+ export declare function makeSignalExtensions<
4
+ TSetterValue,
5
+ TValue extends TSetterValue,
6
+ >(
7
+ meta?: Partial<PropertyMetadata<TValue>>,
8
+ owner?: any,
9
+ name?: string,
10
+ ): Partial<SignalExtensions<TSetterValue, TValue>>;
11
+ //# sourceMappingURL=makeSignalExtensions.d.ts.map
@@ -1,20 +1,20 @@
1
- import { capitalize } from '@revideo/core';
1
+ import {capitalize} from '@revideo/core';
2
2
  export function makeSignalExtensions(meta = {}, owner, name) {
3
- const extensions = {};
4
- if (name && owner) {
5
- const setter = meta.setter ?? owner?.[`set${capitalize(name)}`];
6
- if (setter) {
7
- extensions.setter = setter.bind(owner);
8
- }
9
- const getter = meta.getter ?? owner?.[`get${capitalize(name)}`];
10
- if (getter) {
11
- extensions.getter = getter.bind(owner);
12
- }
13
- const tweener = meta.tweener ?? owner?.[`tween${capitalize(name)}`];
14
- if (tweener) {
15
- extensions.tweener = tweener.bind(owner);
16
- }
3
+ const extensions = {};
4
+ if (name && owner) {
5
+ const setter = meta.setter ?? owner?.[`set${capitalize(name)}`];
6
+ if (setter) {
7
+ extensions.setter = setter.bind(owner);
17
8
  }
18
- return extensions;
9
+ const getter = meta.getter ?? owner?.[`get${capitalize(name)}`];
10
+ if (getter) {
11
+ extensions.getter = getter.bind(owner);
12
+ }
13
+ const tweener = meta.tweener ?? owner?.[`tween${capitalize(name)}`];
14
+ if (tweener) {
15
+ extensions.tweener = tweener.bind(owner);
16
+ }
17
+ }
18
+ return extensions;
19
19
  }
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZVNpZ25hbEV4dGVuc2lvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL3V0aWxzL21ha2VTaWduYWxFeHRlbnNpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBbUIsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRzNELE1BQU0sVUFBVSxvQkFBb0IsQ0FDbEMsT0FBMEMsRUFBRSxFQUM1QyxLQUFXLEVBQ1gsSUFBYTtJQUViLE1BQU0sVUFBVSxHQUFvRCxFQUFFLENBQUM7SUFFdkUsSUFBSSxJQUFJLElBQUksS0FBSyxFQUFFLENBQUM7UUFDbEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxLQUFLLEVBQUUsQ0FBQyxNQUFNLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDaEUsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNYLFVBQVUsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QyxDQUFDO1FBRUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxLQUFLLEVBQUUsQ0FBQyxNQUFNLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDaEUsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNYLFVBQVUsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QyxDQUFDO1FBRUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxLQUFLLEVBQUUsQ0FBQyxRQUFRLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDcEUsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNaLFVBQVUsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQyxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sVUFBVSxDQUFDO0FBQ3BCLENBQUMifQ==
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZVNpZ25hbEV4dGVuc2lvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL3V0aWxzL21ha2VTaWduYWxFeHRlbnNpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBbUIsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRzNELE1BQU0sVUFBVSxvQkFBb0IsQ0FDbEMsT0FBMEMsRUFBRSxFQUM1QyxLQUFXLEVBQ1gsSUFBYTtJQUViLE1BQU0sVUFBVSxHQUFvRCxFQUFFLENBQUM7SUFFdkUsSUFBSSxJQUFJLElBQUksS0FBSyxFQUFFLENBQUM7UUFDbEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxLQUFLLEVBQUUsQ0FBQyxNQUFNLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDaEUsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNYLFVBQVUsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QyxDQUFDO1FBRUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxLQUFLLEVBQUUsQ0FBQyxNQUFNLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDaEUsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNYLFVBQVUsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QyxDQUFDO1FBRUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxLQUFLLEVBQUUsQ0FBQyxRQUFRLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDcEUsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNaLFVBQVUsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQyxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sVUFBVSxDQUFDO0FBQ3BCLENBQUMifQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@revideo/2d",
3
- "version": "0.1.0",
3
+ "version": "0.1.4-alpha.878+9cd8b9f",
4
4
  "description": "A 2D renderer for revideo",
5
5
  "author": "revideo",
6
6
  "homepage": "https://re.video/",
@@ -29,8 +29,8 @@
29
29
  ],
30
30
  "devDependencies": {
31
31
  "@preact/signals": "^1.2.1",
32
- "@revideo/internal": "0.0.0",
33
- "@revideo/ui": "^0.1.0",
32
+ "@revideo/internal": "^0.0.0",
33
+ "@revideo/ui": "^0.1.4-alpha.878+9cd8b9f",
34
34
  "clsx": "^2.0.0",
35
35
  "jsdom": "^22.1.0",
36
36
  "preact": "^10.19.2",
@@ -40,10 +40,10 @@
40
40
  "@codemirror/language": "^6.10.1",
41
41
  "@lezer/common": "^1.2.1",
42
42
  "@lezer/highlight": "^1.2.0",
43
- "@revideo/core": "^0.1.0",
43
+ "@revideo/core": "^0.1.4-alpha.878+9cd8b9f",
44
44
  "code-fns": "^0.8.2",
45
45
  "mathjax-full": "^3.2.2",
46
46
  "parse-svg-path": "^0.1.2"
47
47
  },
48
- "gitHead": "48bf2971cfa1dec7ea92ee0d418c35772f7ea84d"
48
+ "gitHead": "9cd8b9fbdf8d9a8c2b985e08a888a2b0101b9f61"
49
49
  }
@@ -15,6 +15,7 @@ export interface MediaProps extends RectProps {
15
15
  src?: SignalValue<string>;
16
16
  loop?: SignalValue<boolean>;
17
17
  playbackRate?: number;
18
+ volume?: number;
18
19
  time?: SignalValue<number>;
19
20
  play?: boolean;
20
21
  }
@@ -39,6 +40,10 @@ export abstract class Media extends Rect {
39
40
  @signal()
40
41
  protected declare readonly playing: SimpleSignal<boolean, this>;
41
42
 
43
+ @initial(1)
44
+ @signal()
45
+ protected declare readonly volume: SimpleSignal<number, this>;
46
+
42
47
  protected lastTime = -1;
43
48
 
44
49
  public constructor(props: MediaProps) {
@@ -60,6 +65,10 @@ export abstract class Media extends Rect {
60
65
  return this.mediaElement().duration;
61
66
  }
62
67
 
68
+ public getVolume(): number {
69
+ return this.mediaElement().volume;
70
+ }
71
+
63
72
  public override dispose() {
64
73
  this.pause();
65
74
  this.remove();
@@ -98,6 +107,15 @@ export abstract class Media extends Rect {
98
107
  }
99
108
  }
100
109
 
110
+ protected setVolume(volume: number) {
111
+ if (volume < 0 || volume > 1) {
112
+ console.warn(
113
+ `${volume} is an incorrect value for volume, has to be in range [0,1]. We're clamping to the nearest value`,
114
+ );
115
+ }
116
+ this.mediaElement().volume = Math.min(Math.max(volume, 0), 1);
117
+ }
118
+
101
119
  protected setPlaybackRate(playbackRate: number) {
102
120
  let value: number;
103
121
  if (isReactive(playbackRate)) {
@@ -174,6 +174,7 @@ export class Scene2D extends GeneratorScene<View2D> implements Inspectable {
174
174
  typeof vid.playbackRate === 'function'
175
175
  ? vid.playbackRate()
176
176
  : vid.playbackRate,
177
+ volume: vid.getVolume(),
177
178
  currentTime: vid.getCurrentTime(),
178
179
  duration: vid.getDuration(),
179
180
  })),
@@ -188,6 +189,7 @@ export class Scene2D extends GeneratorScene<View2D> implements Inspectable {
188
189
  typeof audio.playbackRate === 'function'
189
190
  ? audio.playbackRate()
190
191
  : audio.playbackRate,
192
+ volume: audio.getVolume(),
191
193
  currentTime: audio.getCurrentTime(),
192
194
  duration: audio.getDuration(),
193
195
  })),