etro 0.12.1 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (145) hide show
  1. package/.github/dependabot.yml +6 -0
  2. package/.github/scripts/update-changelog.js +72 -0
  3. package/.github/workflows/dependabot-changelog.yml +57 -0
  4. package/.github/workflows/nodejs.yml +6 -2
  5. package/.github/workflows/shipjs-trigger.yml +2 -1
  6. package/.husky/pre-commit +1 -1
  7. package/AGENTS.md +106 -0
  8. package/CHANGELOG.md +46 -0
  9. package/CONTRIBUTING.md +5 -5
  10. package/README.md +8 -7
  11. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/base.css +224 -0
  12. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/block-navigation.js +87 -0
  13. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/favicon.png +0 -0
  14. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/index.html +161 -0
  15. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/prettify.css +1 -0
  16. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/prettify.js +2 -0
  17. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/sort-arrow-sprite.png +0 -0
  18. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/sorter.js +196 -0
  19. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/custom-array.ts.html +214 -0
  20. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/effect/base.ts.html +481 -0
  21. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/effect/brightness.ts.html +214 -0
  22. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/effect/channels.ts.html +235 -0
  23. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/effect/chroma-key.ts.html +331 -0
  24. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/effect/contrast.ts.html +211 -0
  25. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/effect/elliptical-mask.ts.html +310 -0
  26. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/effect/gaussian-blur.ts.html +796 -0
  27. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/effect/grayscale.ts.html +187 -0
  28. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/effect/index.html +311 -0
  29. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/effect/index.ts.html +154 -0
  30. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/effect/pixelate.ts.html +259 -0
  31. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/effect/shader.ts.html +1774 -0
  32. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/effect/stack.ts.html +358 -0
  33. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/effect/transform.ts.html +685 -0
  34. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/effect/visual.ts.html +148 -0
  35. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/etro.ts.html +163 -0
  36. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/event.ts.html +691 -0
  37. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/index.html +176 -0
  38. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/index.ts.html +109 -0
  39. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/layer/audio-source.ts.html +835 -0
  40. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/layer/audio.ts.html +241 -0
  41. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/layer/base.ts.html +826 -0
  42. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/layer/image.ts.html +181 -0
  43. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/layer/index.html +236 -0
  44. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/layer/index.ts.html +124 -0
  45. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/layer/text.ts.html +658 -0
  46. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/layer/video.ts.html +211 -0
  47. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/layer/visual-source.ts.html +721 -0
  48. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/layer/visual.ts.html +760 -0
  49. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/movie/effects.ts.html +163 -0
  50. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/movie/index.html +161 -0
  51. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/movie/index.ts.html +88 -0
  52. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/movie/layers.ts.html +163 -0
  53. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/movie/movie.ts.html +3037 -0
  54. package/coverage/Chrome Headless 148.0.0.0 (Mac OS 10.15.7)/html/src/util.ts.html +1765 -0
  55. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/base.css +224 -0
  56. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/block-navigation.js +87 -0
  57. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/favicon.png +0 -0
  58. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/index.html +161 -0
  59. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/prettify.css +1 -0
  60. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/prettify.js +2 -0
  61. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/sort-arrow-sprite.png +0 -0
  62. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/sorter.js +196 -0
  63. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/custom-array.ts.html +214 -0
  64. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/effect/base.ts.html +481 -0
  65. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/effect/brightness.ts.html +214 -0
  66. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/effect/channels.ts.html +235 -0
  67. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/effect/chroma-key.ts.html +331 -0
  68. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/effect/contrast.ts.html +211 -0
  69. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/effect/elliptical-mask.ts.html +310 -0
  70. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/effect/gaussian-blur.ts.html +796 -0
  71. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/effect/grayscale.ts.html +187 -0
  72. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/effect/index.html +311 -0
  73. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/effect/index.ts.html +154 -0
  74. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/effect/pixelate.ts.html +259 -0
  75. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/effect/shader.ts.html +1774 -0
  76. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/effect/stack.ts.html +358 -0
  77. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/effect/transform.ts.html +685 -0
  78. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/effect/visual.ts.html +148 -0
  79. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/etro.ts.html +163 -0
  80. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/event.ts.html +691 -0
  81. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/index.html +176 -0
  82. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/index.ts.html +109 -0
  83. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/layer/audio-source.ts.html +835 -0
  84. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/layer/audio.ts.html +241 -0
  85. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/layer/base.ts.html +826 -0
  86. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/layer/image.ts.html +181 -0
  87. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/layer/index.html +236 -0
  88. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/layer/index.ts.html +124 -0
  89. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/layer/text.ts.html +658 -0
  90. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/layer/video.ts.html +211 -0
  91. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/layer/visual-source.ts.html +721 -0
  92. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/layer/visual.ts.html +760 -0
  93. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/movie/effects.ts.html +163 -0
  94. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/movie/index.html +161 -0
  95. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/movie/index.ts.html +88 -0
  96. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/movie/layers.ts.html +163 -0
  97. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/movie/movie.ts.html +3037 -0
  98. package/coverage/Firefox 151.0 (Mac OS 10.15)/html/src/util.ts.html +1765 -0
  99. package/dist/custom-array.d.ts +10 -10
  100. package/dist/effect/base.d.ts +61 -60
  101. package/dist/effect/brightness.d.ts +16 -16
  102. package/dist/effect/channels.d.ts +23 -23
  103. package/dist/effect/chroma-key.d.ts +23 -23
  104. package/dist/effect/contrast.d.ts +15 -15
  105. package/dist/effect/elliptical-mask.d.ts +31 -31
  106. package/dist/effect/gaussian-blur.d.ts +60 -60
  107. package/dist/effect/grayscale.d.ts +7 -7
  108. package/dist/effect/index.d.ts +16 -16
  109. package/dist/effect/pixelate.d.ts +18 -18
  110. package/dist/effect/shader.d.ts +109 -109
  111. package/dist/effect/stack.d.ts +27 -27
  112. package/dist/effect/transform.d.ts +73 -73
  113. package/dist/effect/visual.d.ts +17 -17
  114. package/dist/etro-cjs.js +3601 -3556
  115. package/dist/etro-iife.js +3602 -3557
  116. package/dist/etro.d.ts +7 -7
  117. package/dist/event.d.ts +40 -40
  118. package/dist/index.d.ts +6 -6
  119. package/dist/layer/audio-source.d.ts +28 -28
  120. package/dist/layer/audio.d.ts +27 -27
  121. package/dist/layer/base.d.ts +129 -128
  122. package/dist/layer/image.d.ts +20 -20
  123. package/dist/layer/index.d.ts +11 -11
  124. package/dist/layer/text.d.ts +78 -78
  125. package/dist/layer/video.d.ts +23 -23
  126. package/dist/layer/visual-source.d.ts +47 -47
  127. package/dist/layer/visual.d.ts +62 -62
  128. package/dist/movie/effects.d.ts +6 -6
  129. package/dist/movie/index.d.ts +1 -1
  130. package/dist/movie/layers.d.ts +6 -6
  131. package/dist/movie/movie.d.ts +280 -277
  132. package/dist/object.d.ts +19 -19
  133. package/dist/util.d.ts +128 -121
  134. package/karma.conf.js +70 -3
  135. package/package.json +14 -17
  136. package/ship.config.js +9 -11
  137. package/src/effect/base.ts +16 -0
  138. package/src/effect/shader.ts +1 -1
  139. package/src/layer/base.ts +19 -1
  140. package/src/movie/movie.ts +123 -8
  141. package/src/util.ts +116 -3
  142. package/tsconfig.json +3 -2
  143. package/.husky/commit-msg +0 -4
  144. package/.husky/prepare-commit-msg +0 -11
  145. package/commitlint.config.ts +0 -39
@@ -1,78 +1,78 @@
1
- import { Dynamic, Color } from '../util';
2
- import { Visual, VisualOptions } from './visual';
3
- declare enum TextStrokePosition {
4
- Inside = 0,
5
- Center = 1,
6
- Outside = 2
7
- }
8
- interface TextOptions extends VisualOptions {
9
- text: Dynamic<string>;
10
- font?: Dynamic<string>;
11
- color?: Dynamic<Color>;
12
- /** The text's horizontal offset from the layer */
13
- textX?: Dynamic<number>;
14
- /** The text's vertical offset from the layer */
15
- textY?: Dynamic<number>;
16
- maxWidth?: Dynamic<number>;
17
- /**
18
- * @desc The horizontal alignment
19
- * @see [`CanvasRenderingContext2D#textAlign<`](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textAlign)
20
- */
21
- textAlign?: Dynamic<string>;
22
- /**
23
- * @desc The vertical alignment
24
- * @see [`CanvasRenderingContext2D#textBaseline`](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textBaseline)
25
- */
26
- textBaseline?: Dynamic<string>;
27
- /**
28
- * @see [`CanvasRenderingContext2D#direction`](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textBaseline)
29
- */
30
- textDirection?: Dynamic<string>;
31
- textStroke?: Dynamic<{
32
- color: Color;
33
- position?: TextStrokePosition;
34
- thickness?: number;
35
- }>;
36
- }
37
- declare class Text extends Visual {
38
- text: Dynamic<string>;
39
- font: Dynamic<string>;
40
- color: Dynamic<Color>;
41
- /** The text's horizontal offset from the layer */
42
- textX: Dynamic<number>;
43
- /** The text's vertical offset from the layer */
44
- textY: Dynamic<number>;
45
- maxWidth: Dynamic<number>;
46
- /**
47
- * @desc The horizontal alignment
48
- * @see [`CanvasRenderingContext2D#textAlign<`](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textAlign)
49
- */
50
- textAlign: Dynamic<string>;
51
- /**
52
- * @desc The vertical alignment
53
- * @see [`CanvasRenderingContext2D#textBaseline`](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textBaseline)
54
- */
55
- textBaseline: Dynamic<string>;
56
- /**
57
- * @see [`CanvasRenderingContext2D#direction`](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textBaseline)
58
- */
59
- textDirection: Dynamic<string>;
60
- textStroke?: Dynamic<{
61
- color: Color;
62
- position?: TextStrokePosition;
63
- thickness?: number;
64
- }>;
65
- private _prevText;
66
- private _prevFont;
67
- private _prevMaxWidth;
68
- /**
69
- * Creates a new text layer
70
- */
71
- constructor(options: TextOptions);
72
- doRender(): void;
73
- /**
74
- * @deprecated See {@link https://github.com/etro-js/etro/issues/131}
75
- */
76
- getDefaultOptions(): TextOptions;
77
- }
78
- export { Text, TextOptions, TextStrokePosition };
1
+ import { Dynamic, Color } from '../util';
2
+ import { Visual, VisualOptions } from './visual';
3
+ declare enum TextStrokePosition {
4
+ Inside = 0,
5
+ Center = 1,
6
+ Outside = 2
7
+ }
8
+ interface TextOptions extends VisualOptions {
9
+ text: Dynamic<string>;
10
+ font?: Dynamic<string>;
11
+ color?: Dynamic<Color>;
12
+ /** The text's horizontal offset from the layer */
13
+ textX?: Dynamic<number>;
14
+ /** The text's vertical offset from the layer */
15
+ textY?: Dynamic<number>;
16
+ maxWidth?: Dynamic<number>;
17
+ /**
18
+ * @desc The horizontal alignment
19
+ * @see [`CanvasRenderingContext2D#textAlign<`](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textAlign)
20
+ */
21
+ textAlign?: Dynamic<string>;
22
+ /**
23
+ * @desc The vertical alignment
24
+ * @see [`CanvasRenderingContext2D#textBaseline`](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textBaseline)
25
+ */
26
+ textBaseline?: Dynamic<string>;
27
+ /**
28
+ * @see [`CanvasRenderingContext2D#direction`](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textBaseline)
29
+ */
30
+ textDirection?: Dynamic<string>;
31
+ textStroke?: Dynamic<{
32
+ color: Color;
33
+ position?: TextStrokePosition;
34
+ thickness?: number;
35
+ }>;
36
+ }
37
+ declare class Text extends Visual {
38
+ text: Dynamic<string>;
39
+ font: Dynamic<string>;
40
+ color: Dynamic<Color>;
41
+ /** The text's horizontal offset from the layer */
42
+ textX: Dynamic<number>;
43
+ /** The text's vertical offset from the layer */
44
+ textY: Dynamic<number>;
45
+ maxWidth: Dynamic<number>;
46
+ /**
47
+ * @desc The horizontal alignment
48
+ * @see [`CanvasRenderingContext2D#textAlign<`](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textAlign)
49
+ */
50
+ textAlign: Dynamic<string>;
51
+ /**
52
+ * @desc The vertical alignment
53
+ * @see [`CanvasRenderingContext2D#textBaseline`](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textBaseline)
54
+ */
55
+ textBaseline: Dynamic<string>;
56
+ /**
57
+ * @see [`CanvasRenderingContext2D#direction`](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textBaseline)
58
+ */
59
+ textDirection: Dynamic<string>;
60
+ textStroke?: Dynamic<{
61
+ color: Color;
62
+ position?: TextStrokePosition;
63
+ thickness?: number;
64
+ }>;
65
+ private _prevText;
66
+ private _prevFont;
67
+ private _prevMaxWidth;
68
+ /**
69
+ * Creates a new text layer
70
+ */
71
+ constructor(options: TextOptions);
72
+ doRender(): void;
73
+ /**
74
+ * @deprecated See {@link https://github.com/etro-js/etro/issues/131}
75
+ */
76
+ getDefaultOptions(): TextOptions;
77
+ }
78
+ export { Text, TextOptions, TextStrokePosition };
@@ -1,23 +1,23 @@
1
- import { VisualSourceOptions } from './visual-source';
2
- import { AudioSourceOptions } from './audio-source';
3
- interface VideoOptions extends Omit<AudioSourceOptions & VisualSourceOptions, 'duration' | 'source'> {
4
- duration?: number;
5
- /**
6
- * The raw html `<video>` element
7
- */
8
- source: string | HTMLVideoElement;
9
- }
10
- declare const Video_base: new (...args: unknown[]) => import("./audio-source").AudioSource;
11
- /**
12
- * Layer for an HTML video element
13
- * @extends AudioSource
14
- * @extends VisualSource
15
- */
16
- declare class Video extends Video_base {
17
- /**
18
- * The raw html `<video>` element
19
- */
20
- source: HTMLVideoElement;
21
- constructor(options: VideoOptions);
22
- }
23
- export { Video, VideoOptions };
1
+ import { VisualSourceOptions } from './visual-source';
2
+ import { AudioSourceOptions } from './audio-source';
3
+ interface VideoOptions extends Omit<AudioSourceOptions & VisualSourceOptions, 'duration' | 'source'> {
4
+ duration?: number;
5
+ /**
6
+ * The raw html `<video>` element
7
+ */
8
+ source: string | HTMLVideoElement;
9
+ }
10
+ declare const Video_base: new (...args: unknown[]) => import("./audio-source").AudioSource;
11
+ /**
12
+ * Layer for an HTML video element
13
+ * @extends AudioSource
14
+ * @extends VisualSource
15
+ */
16
+ declare class Video extends Video_base {
17
+ /**
18
+ * The raw html `<video>` element
19
+ */
20
+ source: HTMLVideoElement;
21
+ constructor(options: VideoOptions);
22
+ }
23
+ export { Video, VideoOptions };
@@ -1,47 +1,47 @@
1
- import { Dynamic } from '../util';
2
- import { Visual, VisualOptions } from './visual';
3
- declare type Constructor<T> = new (...args: unknown[]) => T;
4
- interface VisualSource extends Visual {
5
- readonly source: HTMLImageElement | HTMLVideoElement;
6
- /** What part of {@link source} to render */
7
- sourceX: Dynamic<number>;
8
- /** What part of {@link source} to render */
9
- sourceY: Dynamic<number>;
10
- /** What part of {@link source} to render, or undefined for the entire width */
11
- sourceWidth: Dynamic<number>;
12
- /** What part of {@link source} to render, or undefined for the entire height */
13
- sourceHeight: Dynamic<number>;
14
- /** Where to render {@link source} onto the layer */
15
- destX: Dynamic<number>;
16
- /** Where to render {@link source} onto the layer */
17
- destY: Dynamic<number>;
18
- /** Where to render {@link source} onto the layer, or undefined to fill the layer's width */
19
- destWidth: Dynamic<number>;
20
- /** Where to render {@link source} onto the layer, or undefined to fill the layer's height */
21
- destHeight: Dynamic<number>;
22
- }
23
- interface VisualSourceOptions extends VisualOptions {
24
- source: HTMLImageElement | HTMLVideoElement;
25
- /** What part of {@link source} to render */
26
- sourceX?: Dynamic<number>;
27
- /** What part of {@link source} to render */
28
- sourceY?: Dynamic<number>;
29
- /** What part of {@link source} to render, or undefined for the entire width */
30
- sourceWidth?: Dynamic<number>;
31
- /** What part of {@link source} to render, or undefined for the entire height */
32
- sourceHeight?: Dynamic<number>;
33
- /** Where to render {@link source} onto the layer */
34
- destX?: Dynamic<number>;
35
- /** Where to render {@link source} onto the layer */
36
- destY?: Dynamic<number>;
37
- /** Where to render {@link source} onto the layer, or undefined to fill the layer's width */
38
- destWidth?: Dynamic<number>;
39
- /** Where to render {@link source} onto the layer, or undefined to fill the layer's height */
40
- destHeight?: Dynamic<number>;
41
- }
42
- /**
43
- * A layer that gets its image data from an HTML image or video element
44
- * @mixin VisualSourceMixin
45
- */
46
- declare function VisualSourceMixin<OptionsSuperclass extends VisualOptions>(superclass: Constructor<Visual>): Constructor<VisualSource>;
47
- export { VisualSource, VisualSourceOptions, VisualSourceMixin };
1
+ import { Dynamic } from '../util';
2
+ import { Visual, VisualOptions } from './visual';
3
+ type Constructor<T> = new (...args: unknown[]) => T;
4
+ interface VisualSource extends Visual {
5
+ readonly source: HTMLImageElement | HTMLVideoElement;
6
+ /** What part of {@link source} to render */
7
+ sourceX: Dynamic<number>;
8
+ /** What part of {@link source} to render */
9
+ sourceY: Dynamic<number>;
10
+ /** What part of {@link source} to render, or undefined for the entire width */
11
+ sourceWidth: Dynamic<number>;
12
+ /** What part of {@link source} to render, or undefined for the entire height */
13
+ sourceHeight: Dynamic<number>;
14
+ /** Where to render {@link source} onto the layer */
15
+ destX: Dynamic<number>;
16
+ /** Where to render {@link source} onto the layer */
17
+ destY: Dynamic<number>;
18
+ /** Where to render {@link source} onto the layer, or undefined to fill the layer's width */
19
+ destWidth: Dynamic<number>;
20
+ /** Where to render {@link source} onto the layer, or undefined to fill the layer's height */
21
+ destHeight: Dynamic<number>;
22
+ }
23
+ interface VisualSourceOptions extends VisualOptions {
24
+ source: HTMLImageElement | HTMLVideoElement;
25
+ /** What part of {@link source} to render */
26
+ sourceX?: Dynamic<number>;
27
+ /** What part of {@link source} to render */
28
+ sourceY?: Dynamic<number>;
29
+ /** What part of {@link source} to render, or undefined for the entire width */
30
+ sourceWidth?: Dynamic<number>;
31
+ /** What part of {@link source} to render, or undefined for the entire height */
32
+ sourceHeight?: Dynamic<number>;
33
+ /** Where to render {@link source} onto the layer */
34
+ destX?: Dynamic<number>;
35
+ /** Where to render {@link source} onto the layer */
36
+ destY?: Dynamic<number>;
37
+ /** Where to render {@link source} onto the layer, or undefined to fill the layer's width */
38
+ destWidth?: Dynamic<number>;
39
+ /** Where to render {@link source} onto the layer, or undefined to fill the layer's height */
40
+ destHeight?: Dynamic<number>;
41
+ }
42
+ /**
43
+ * A layer that gets its image data from an HTML image or video element
44
+ * @mixin VisualSourceMixin
45
+ */
46
+ declare function VisualSourceMixin<OptionsSuperclass extends VisualOptions>(superclass: Constructor<Visual>): Constructor<VisualSource>;
47
+ export { VisualSource, VisualSourceOptions, VisualSourceMixin };
@@ -1,62 +1,62 @@
1
- import { Dynamic, Color } from '../util';
2
- import { Base, BaseOptions } from './base';
3
- import { Visual as VisualEffect } from '../effect/visual';
4
- interface VisualOptions extends BaseOptions {
5
- x?: Dynamic<number>;
6
- y?: Dynamic<number>;
7
- width?: Dynamic<number>;
8
- height?: Dynamic<number>;
9
- background?: Dynamic<Color>;
10
- border?: Dynamic<{
11
- color: Color;
12
- thickness?: number;
13
- }>;
14
- opacity?: Dynamic<number>;
15
- }
16
- /** Any layer that renders to a canvas */
17
- declare class Visual extends Base {
18
- x: Dynamic<number>;
19
- y: Dynamic<number>;
20
- width: Dynamic<number>;
21
- height: Dynamic<number>;
22
- background: Dynamic<Color>;
23
- border: Dynamic<{
24
- color: Color;
25
- thickness: number;
26
- }>;
27
- opacity: Dynamic<number>;
28
- /**
29
- * The layer's rendering canvas
30
- */
31
- readonly canvas: HTMLCanvasElement;
32
- /**
33
- * The context of {@link Visual#canvas}
34
- */
35
- readonly cctx: CanvasRenderingContext2D;
36
- readonly effects: VisualEffect[];
37
- /**
38
- * Creates a visual layer
39
- */
40
- constructor(options: VisualOptions);
41
- whenReady(): Promise<void>;
42
- /**
43
- * Render visual output
44
- */
45
- render(): void;
46
- beginRender(): void;
47
- doRender(): void;
48
- endRender(): void;
49
- _applyEffects(): void;
50
- /**
51
- * Convenience method for <code>effects.push()</code>
52
- * @param effect
53
- * @return the layer (for chaining)
54
- */
55
- addEffect(effect: VisualEffect): Visual;
56
- get ready(): boolean;
57
- /**
58
- * @deprecated See {@link https://github.com/etro-js/etro/issues/131}
59
- */
60
- getDefaultOptions(): VisualOptions;
61
- }
62
- export { Visual, VisualOptions };
1
+ import { Dynamic, Color } from '../util';
2
+ import { Base, BaseOptions } from './base';
3
+ import { Visual as VisualEffect } from '../effect/visual';
4
+ interface VisualOptions extends BaseOptions {
5
+ x?: Dynamic<number>;
6
+ y?: Dynamic<number>;
7
+ width?: Dynamic<number>;
8
+ height?: Dynamic<number>;
9
+ background?: Dynamic<Color>;
10
+ border?: Dynamic<{
11
+ color: Color;
12
+ thickness?: number;
13
+ }>;
14
+ opacity?: Dynamic<number>;
15
+ }
16
+ /** Any layer that renders to a canvas */
17
+ declare class Visual extends Base {
18
+ x: Dynamic<number>;
19
+ y: Dynamic<number>;
20
+ width: Dynamic<number>;
21
+ height: Dynamic<number>;
22
+ background: Dynamic<Color>;
23
+ border: Dynamic<{
24
+ color: Color;
25
+ thickness: number;
26
+ }>;
27
+ opacity: Dynamic<number>;
28
+ /**
29
+ * The layer's rendering canvas
30
+ */
31
+ readonly canvas: HTMLCanvasElement;
32
+ /**
33
+ * The context of {@link Visual#canvas}
34
+ */
35
+ readonly cctx: CanvasRenderingContext2D;
36
+ readonly effects: VisualEffect[];
37
+ /**
38
+ * Creates a visual layer
39
+ */
40
+ constructor(options: VisualOptions);
41
+ whenReady(): Promise<void>;
42
+ /**
43
+ * Render visual output
44
+ */
45
+ render(): void;
46
+ beginRender(): void;
47
+ doRender(): void;
48
+ endRender(): void;
49
+ _applyEffects(): void;
50
+ /**
51
+ * Convenience method for <code>effects.push()</code>
52
+ * @param effect
53
+ * @return the layer (for chaining)
54
+ */
55
+ addEffect(effect: VisualEffect): Visual;
56
+ get ready(): boolean;
57
+ /**
58
+ * @deprecated See {@link https://github.com/etro-js/etro/issues/131}
59
+ */
60
+ getDefaultOptions(): VisualOptions;
61
+ }
62
+ export { Visual, VisualOptions };
@@ -1,6 +1,6 @@
1
- import { CustomArray } from '../custom-array';
2
- import { Visual as VisualEffect } from '../effect/index';
3
- import { Movie } from './movie';
4
- export declare class MovieEffects extends CustomArray<VisualEffect> {
5
- constructor(target: VisualEffect[], movie: Movie);
6
- }
1
+ import { CustomArray } from '../custom-array';
2
+ import { Visual as VisualEffect } from '../effect/index';
3
+ import { Movie } from './movie';
4
+ export declare class MovieEffects extends CustomArray<VisualEffect> {
5
+ constructor(target: VisualEffect[], movie: Movie);
6
+ }
@@ -1 +1 @@
1
- export * from './movie';
1
+ export * from './movie';
@@ -1,6 +1,6 @@
1
- import { CustomArray } from '../custom-array';
2
- import { Base as BaseLayer } from '../layer/index';
3
- import { Movie } from './movie';
4
- export declare class MovieLayers extends CustomArray<BaseLayer> {
5
- constructor(target: BaseLayer[], movie: Movie);
6
- }
1
+ import { CustomArray } from '../custom-array';
2
+ import { Base as BaseLayer } from '../layer/index';
3
+ import { Movie } from './movie';
4
+ export declare class MovieLayers extends CustomArray<BaseLayer> {
5
+ constructor(target: BaseLayer[], movie: Movie);
6
+ }