@remotion/player 3.0.0-compression.3 → 3.0.0-eslint.6

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 (143) hide show
  1. package/LICENSE.md +2 -2
  2. package/README.md +81 -3
  3. package/dist/MediaVolumeSlider.d.ts +0 -0
  4. package/dist/MediaVolumeSlider.d.ts.map +0 -0
  5. package/dist/MediaVolumeSlider.js +1 -1
  6. package/dist/MediaVolumeSlider.js.map +1 -1
  7. package/dist/Player.d.ts +5 -2
  8. package/dist/Player.d.ts.map +1 -1
  9. package/dist/Player.js +26 -5
  10. package/dist/Player.js.map +1 -1
  11. package/dist/PlayerControls.d.ts +0 -0
  12. package/dist/PlayerControls.d.ts.map +0 -0
  13. package/dist/PlayerControls.js +2 -2
  14. package/dist/PlayerControls.js.map +1 -1
  15. package/dist/PlayerSeekBar.d.ts +0 -0
  16. package/dist/PlayerSeekBar.d.ts.map +1 -1
  17. package/dist/PlayerSeekBar.js +5 -2
  18. package/dist/PlayerSeekBar.js.map +1 -1
  19. package/dist/PlayerUI.d.ts +9 -3
  20. package/dist/PlayerUI.d.ts.map +1 -1
  21. package/dist/PlayerUI.js +14 -5
  22. package/dist/PlayerUI.js.map +1 -1
  23. package/dist/calculate-next-frame.d.ts +0 -0
  24. package/dist/calculate-next-frame.d.ts.map +0 -0
  25. package/dist/calculate-next-frame.js +0 -0
  26. package/dist/calculate-next-frame.js.map +0 -0
  27. package/dist/calculate-scale.d.ts +0 -0
  28. package/dist/calculate-scale.d.ts.map +0 -0
  29. package/dist/calculate-scale.js +0 -0
  30. package/dist/calculate-scale.js.map +0 -0
  31. package/dist/emitter-context.d.ts +0 -0
  32. package/dist/emitter-context.d.ts.map +0 -0
  33. package/dist/emitter-context.js +0 -0
  34. package/dist/emitter-context.js.map +0 -0
  35. package/dist/error-boundary.d.ts +0 -0
  36. package/dist/error-boundary.d.ts.map +0 -0
  37. package/dist/error-boundary.js +2 -2
  38. package/dist/error-boundary.js.map +1 -1
  39. package/dist/event-emitter.d.ts +0 -0
  40. package/dist/event-emitter.d.ts.map +0 -0
  41. package/dist/event-emitter.js +0 -0
  42. package/dist/event-emitter.js.map +0 -0
  43. package/dist/format-time.d.ts +0 -0
  44. package/dist/format-time.d.ts.map +0 -0
  45. package/dist/format-time.js +0 -0
  46. package/dist/format-time.js.map +0 -0
  47. package/dist/icons.d.ts +0 -0
  48. package/dist/icons.d.ts.map +0 -0
  49. package/dist/icons.js +6 -6
  50. package/dist/icons.js.map +1 -1
  51. package/dist/index.d.ts +5 -4
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +1 -0
  54. package/dist/index.js.map +1 -1
  55. package/dist/player-css-classname.d.ts +0 -0
  56. package/dist/player-css-classname.d.ts.map +0 -0
  57. package/dist/player-css-classname.js +0 -0
  58. package/dist/player-css-classname.js.map +0 -0
  59. package/dist/player-methods.d.ts +0 -0
  60. package/dist/player-methods.d.ts.map +0 -0
  61. package/dist/player-methods.js +0 -0
  62. package/dist/player-methods.js.map +0 -0
  63. package/dist/test/index.test.d.ts +0 -0
  64. package/dist/test/index.test.d.ts.map +0 -0
  65. package/dist/test/index.test.js +0 -0
  66. package/dist/test/index.test.js.map +0 -0
  67. package/dist/test/test-utils.d.ts +0 -0
  68. package/dist/test/test-utils.d.ts.map +0 -0
  69. package/dist/test/test-utils.js +0 -0
  70. package/dist/test/test-utils.js.map +0 -0
  71. package/dist/test/validate-prop.test.d.ts +0 -0
  72. package/dist/test/validate-prop.test.d.ts.map +0 -0
  73. package/dist/test/validate-prop.test.js +28 -1
  74. package/dist/test/validate-prop.test.js.map +1 -1
  75. package/dist/use-hover-state.d.ts +0 -0
  76. package/dist/use-hover-state.d.ts.map +0 -0
  77. package/dist/use-hover-state.js +0 -0
  78. package/dist/use-hover-state.js.map +0 -0
  79. package/dist/use-playback.d.ts +0 -0
  80. package/dist/use-playback.d.ts.map +0 -0
  81. package/dist/use-playback.js +0 -0
  82. package/dist/use-playback.js.map +0 -0
  83. package/dist/use-player.d.ts +0 -0
  84. package/dist/use-player.d.ts.map +1 -1
  85. package/dist/use-player.js +18 -1
  86. package/dist/use-player.js.map +1 -1
  87. package/dist/utils/browser-supports-fullscreen.d.ts +0 -0
  88. package/dist/utils/browser-supports-fullscreen.d.ts.map +0 -0
  89. package/dist/utils/browser-supports-fullscreen.js +0 -0
  90. package/dist/utils/browser-supports-fullscreen.js.map +0 -0
  91. package/dist/utils/calculate-player-size.d.ts +0 -0
  92. package/dist/utils/calculate-player-size.d.ts.map +0 -0
  93. package/dist/utils/calculate-player-size.js +0 -0
  94. package/dist/utils/calculate-player-size.js.map +0 -0
  95. package/dist/utils/cancellable-promise.d.ts +0 -0
  96. package/dist/utils/cancellable-promise.d.ts.map +0 -0
  97. package/dist/utils/cancellable-promise.js +0 -0
  98. package/dist/utils/cancellable-promise.js.map +0 -0
  99. package/dist/utils/delay.d.ts +0 -0
  100. package/dist/utils/delay.d.ts.map +0 -0
  101. package/dist/utils/delay.js +0 -0
  102. package/dist/utils/delay.js.map +0 -0
  103. package/dist/utils/is-node.d.ts +0 -0
  104. package/dist/utils/is-node.d.ts.map +0 -0
  105. package/dist/utils/is-node.js +0 -0
  106. package/dist/utils/is-node.js.map +0 -0
  107. package/dist/utils/preview-size.d.ts +0 -0
  108. package/dist/utils/preview-size.d.ts.map +0 -0
  109. package/dist/utils/preview-size.js +0 -0
  110. package/dist/utils/preview-size.js.map +0 -0
  111. package/dist/utils/use-cancellable-promises.d.ts +0 -0
  112. package/dist/utils/use-cancellable-promises.d.ts.map +0 -0
  113. package/dist/utils/use-cancellable-promises.js +0 -0
  114. package/dist/utils/use-cancellable-promises.js.map +0 -0
  115. package/dist/utils/use-click-prevention-on-double-click.d.ts +0 -0
  116. package/dist/utils/use-click-prevention-on-double-click.d.ts.map +0 -0
  117. package/dist/utils/use-click-prevention-on-double-click.js +0 -0
  118. package/dist/utils/use-click-prevention-on-double-click.js.map +0 -0
  119. package/dist/utils/use-element-size.d.ts +2 -0
  120. package/dist/utils/use-element-size.d.ts.map +1 -1
  121. package/dist/utils/use-element-size.js +27 -4
  122. package/dist/utils/use-element-size.js.map +1 -1
  123. package/dist/utils/validate-playbackrate.d.ts +0 -0
  124. package/dist/utils/validate-playbackrate.d.ts.map +0 -0
  125. package/dist/utils/validate-playbackrate.js +0 -0
  126. package/dist/utils/validate-playbackrate.js.map +0 -0
  127. package/dist/volume-persistance.d.ts +0 -0
  128. package/dist/volume-persistance.d.ts.map +0 -0
  129. package/dist/volume-persistance.js +0 -0
  130. package/dist/volume-persistance.js.map +0 -0
  131. package/package.json +24 -10
  132. package/dist/Freeze.d.ts +0 -7
  133. package/dist/Freeze.d.ts.map +0 -1
  134. package/dist/Freeze.js +0 -18
  135. package/dist/Freeze.js.map +0 -1
  136. package/dist/Loading.d.ts +0 -4
  137. package/dist/Loading.d.ts.map +0 -1
  138. package/dist/Loading.js +0 -25
  139. package/dist/Loading.js.map +0 -1
  140. package/dist/event-target-polyfill.d.ts +0 -3
  141. package/dist/event-target-polyfill.d.ts.map +0 -1
  142. package/dist/event-target-polyfill.js +0 -114
  143. package/dist/event-target-polyfill.js.map +0 -1
package/dist/Freeze.js DELETED
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Freeze = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const react_1 = require("react");
6
- const remotion_1 = require("remotion");
7
- const Freeze = (props) => {
8
- const context = react_1.useContext(remotion_1.Internals.Timeline.TimelineContext);
9
- const value = react_1.useMemo(() => {
10
- return {
11
- ...context,
12
- frame: props.frame,
13
- };
14
- }, [context, props.frame]);
15
- return (jsx_runtime_1.jsx(remotion_1.Internals.Timeline.TimelineContext.Provider, Object.assign({ value: value }, { children: props.children }), void 0));
16
- };
17
- exports.Freeze = Freeze;
18
- //# sourceMappingURL=Freeze.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Freeze.js","sourceRoot":"","sources":["../src/Freeze.tsx"],"names":[],"mappings":";;;;AAAA,iCAAiD;AACjD,uCAAyD;AAMlD,MAAM,MAAM,GAA0B,CAAC,KAAK,EAAE,EAAE;IACtD,MAAM,OAAO,GAAG,kBAAU,CAAC,oBAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC/D,MAAM,KAAK,GAAyB,eAAO,CAAC,GAAG,EAAE;QAChD,OAAO;YACN,GAAG,OAAO;YACV,KAAK,EAAE,KAAK,CAAC,KAAK;SAClB,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAE3B,OAAO,CACN,kBAAC,oBAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,kBAAC,KAAK,EAAE,KAAK,gBACvD,KAAK,CAAC,QAAQ,YAC8B,CAC9C,CAAC;AACH,CAAC,CAAC;AAdW,QAAA,MAAM,UAcjB"}
package/dist/Loading.d.ts DELETED
@@ -1,4 +0,0 @@
1
- export declare const Loading: React.FC<{
2
- size: number;
3
- }>;
4
- //# sourceMappingURL=Loading.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Loading.d.ts","sourceRoot":"","sources":["../src/Loading.tsx"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;CACb,CA+CA,CAAC"}
package/dist/Loading.js DELETED
@@ -1,25 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Loading = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const Loading = ({ size }) => {
6
- const triangle = (opacity, triangleSize) => (jsx_runtime_1.jsxs("svg", Object.assign({ xmlnsXlink: "http://www.w3.org/1999/xlink", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 400 400", style: {
7
- opacity,
8
- width: triangleSize,
9
- height: triangleSize,
10
- position: 'absolute',
11
- transform: 'rotate(90deg)',
12
- } }, { children: [jsx_runtime_1.jsx("defs", { children: jsx_runtime_1.jsxs("linearGradient", Object.assign({ id: "gradient" }, { children: [jsx_runtime_1.jsx("stop", { stopColor: "#42e9f5", stopOpacity: "1", offset: "0" }, void 0),
13
- jsx_runtime_1.jsx("stop", { stopColor: "#4290f5", stopOpacity: "1", offset: "100%" }, void 0)] }), void 0) }, void 0),
14
- jsx_runtime_1.jsx("g", Object.assign({ stroke: 'url("#gradient")', strokeWidth: "100px", strokeLinejoin: "round" }, { children: jsx_runtime_1.jsx("path", { fill: 'url("#gradient")', d: "M 102 272 a 196 100 0 0 0 195 5 A 196 240 0 0 0 200 102.259 A 196 240 0 0 0 102 272 z", stroke: 'url("#gradient")', strokeWidth: "100px" }, void 0) }), void 0)] }), void 0));
15
- return (jsx_runtime_1.jsxs("div", Object.assign({ style: {
16
- display: 'flex',
17
- justifyContent: 'center',
18
- alignItems: 'center',
19
- flex: 1,
20
- height: '100%',
21
- width: '100%',
22
- } }, { children: [triangle(0.2, size), triangle(0.4, (size * 9) / 11), triangle(1, (size * 7) / 11)] }), void 0));
23
- };
24
- exports.Loading = Loading;
25
- //# sourceMappingURL=Loading.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Loading.js","sourceRoot":"","sources":["../src/Loading.tsx"],"names":[],"mappings":";;;;AAAO,MAAM,OAAO,GAEf,CAAC,EAAC,IAAI,EAAC,EAAE,EAAE;IACf,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,YAAoB,EAAE,EAAE,CAAC,CAC3D,0CACC,UAAU,EAAC,8BAA8B,EACzC,KAAK,EAAC,4BAA4B,EAClC,OAAO,EAAC,aAAa,EACrB,KAAK,EAAE;YACN,OAAO;YACP,KAAK,EAAE,YAAY;YACnB,MAAM,EAAE,YAAY;YACpB,QAAQ,EAAE,UAAU;YACpB,SAAS,EAAE,eAAe;SAC1B,iBAED,sCACC,qDAAgB,EAAE,EAAC,UAAU,iBAC5B,4BAAM,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,GAAG,EAAC,MAAM,EAAC,GAAG,WAAG;wBACvD,4BAAM,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,GAAG,EAAC,MAAM,EAAC,MAAM,WAAG,aAC1C,WACX;YACP,uCAAG,MAAM,EAAC,kBAAkB,EAAC,WAAW,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,gBACtE,4BACC,IAAI,EAAC,kBAAkB,EACvB,CAAC,EAAC,uFAAuF,EACzF,MAAM,EAAC,kBAAkB,EACzB,WAAW,EAAC,OAAO,WAClB,YACC,aACC,CACN,CAAC;IAEF,OAAO,CACN,0CACC,KAAK,EAAE;YACN,OAAO,EAAE,MAAM;YACf,cAAc,EAAE,QAAQ;YACxB,UAAU,EAAE,QAAQ;YACpB,IAAI,EAAE,CAAC;YACP,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,MAAM;SACb,iBAEA,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,EACnB,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAC9B,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,aACxB,CACN,CAAC;AACH,CAAC,CAAC;AAjDW,QAAA,OAAO,WAiDlB"}
@@ -1,3 +0,0 @@
1
- declare const root: false | typeof globalThis;
2
- declare function isConstructor(fn: any): boolean;
3
- //# sourceMappingURL=event-target-polyfill.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"event-target-polyfill.d.ts","sourceRoot":"","sources":["../src/event-target-polyfill.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,IAAI,2BAGgC,CAAC;AAE3C,iBAAS,aAAa,CAAC,EAAE,KAAA,WASxB"}
@@ -1,114 +0,0 @@
1
- "use strict";
2
- // https://raw.githubusercontent.com/benlesh/event-target-polyfill/master/index.js
3
- // @ts-nocheck
4
- const root = (typeof globalThis !== 'undefined' && globalThis) ||
5
- (typeof self !== 'undefined' && self) ||
6
- (typeof global !== 'undefined' && global);
7
- function isConstructor(fn) {
8
- try {
9
- // eslint-disable-next-line
10
- new fn();
11
- }
12
- catch (error) {
13
- return false;
14
- }
15
- return true;
16
- }
17
- if (typeof root.Event !== 'function' || !isConstructor(root.Event)) {
18
- root.Event = (function () {
19
- function Event(type, options) {
20
- this.bubbles = Boolean(options) && Boolean(options.bubbles);
21
- this.cancelable = Boolean(options) && Boolean(options.cancelable);
22
- this.composed = Boolean(options) && Boolean(options.composed);
23
- this.type = type;
24
- }
25
- return Event;
26
- })();
27
- }
28
- if (typeof root.EventTarget === 'undefined' || !isConstructor(root.Event)) {
29
- root.EventTarget = (function () {
30
- function EventTarget() {
31
- this.__listeners = new Map();
32
- }
33
- EventTarget.prototype = Object.create(Object.prototype);
34
- EventTarget.prototype.addEventListener = function (type, listener, options) {
35
- if (arguments.length < 2) {
36
- throw new TypeError(`TypeError: Failed to execute 'addEventListener'
37
- on 'EventTarget': 2 arguments required, but only $ {
38
- arguments.length
39
- }
40
- present.`);
41
- }
42
- const { __listeners } = this;
43
- const actualType = type.toString();
44
- if (!__listeners.has(actualType)) {
45
- __listeners.set(actualType, new Map());
46
- }
47
- const listenersForType = __listeners.get(actualType);
48
- if (!listenersForType.has(listener)) {
49
- // Any given listener is only registered once
50
- listenersForType.set(listener, options);
51
- }
52
- };
53
- EventTarget.prototype.removeEventListener = function (type, listener) {
54
- if (arguments.length < 2) {
55
- throw new TypeError(`TypeError: Failed to execute 'addEventListener'
56
- on 'EventTarget': 2 arguments required, but only $ {
57
- arguments.length
58
- }
59
- present.`);
60
- }
61
- const { __listeners } = this;
62
- const actualType = type.toString();
63
- if (__listeners.has(actualType)) {
64
- const listenersForType = __listeners.get(actualType);
65
- if (listenersForType.has(listener)) {
66
- listenersForType.delete(listener);
67
- }
68
- }
69
- };
70
- EventTarget.prototype.dispatchEvent = function (event) {
71
- if (!(event instanceof Event)) {
72
- throw new TypeError(`Failed to execute 'dispatchEvent'
73
- on 'EventTarget': parameter 1 is not of type 'Event'.`);
74
- }
75
- const { type } = event;
76
- const { __listeners } = this;
77
- const listenersForType = __listeners.get(type);
78
- if (listenersForType) {
79
- for (const [listener, options] of listenersForType.entries()) {
80
- try {
81
- if (typeof listener === 'function') {
82
- // Listener functions must be executed with the EventTarget as the `this` context.
83
- listener.call(this, event);
84
- }
85
- else if (listener && typeof listener.handleEvent === 'function') {
86
- // Listener objects have their handleEvent method called, if they have one
87
- listener.handleEvent(event);
88
- }
89
- }
90
- catch (err) {
91
- // We need to report the error to the global error handling event,
92
- // but we do not want to break the loop that is executing the events.
93
- // Unfortunately, this is the best we can do, which isn't great, because the
94
- // native EventTarget will actually do this synchronously before moving to the next
95
- // event in the loop.
96
- setTimeout(() => {
97
- throw err;
98
- });
99
- }
100
- if (options === null || options === void 0 ? void 0 : options.once) {
101
- // If this was registered with { once: true }, we need
102
- // to remove it now.
103
- listenersForType.delete(listener);
104
- }
105
- }
106
- }
107
- // Since there are no cancellable events on a base EventTarget,
108
- // this should always return true.
109
- return true;
110
- };
111
- return EventTarget;
112
- })();
113
- }
114
- //# sourceMappingURL=event-target-polyfill.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"event-target-polyfill.js","sourceRoot":"","sources":["../src/event-target-polyfill.ts"],"names":[],"mappings":"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"}