@tsparticles/plugin-export-video 4.0.0-alpha.2 → 4.0.0-alpha.21
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.
- package/500.min.js +1 -0
- package/867.min.js +1 -0
- package/browser/ExportVideoPlugin.js +4 -6
- package/{esm/ExportVideoInstance.js → browser/ExportVideoPluginInstance.js} +24 -23
- package/browser/index.js +3 -3
- package/cjs/ExportVideoPlugin.js +4 -6
- package/{browser/ExportVideoInstance.js → cjs/ExportVideoPluginInstance.js} +24 -23
- package/cjs/index.js +3 -3
- package/dist_browser_ExportVideoPluginInstance_js.js +30 -0
- package/dist_browser_ExportVideoPlugin_js.js +2 -12
- package/esm/ExportVideoPlugin.js +4 -6
- package/{cjs/ExportVideoInstance.js → esm/ExportVideoPluginInstance.js} +24 -23
- package/esm/index.js +3 -3
- package/package.json +2 -2
- package/report.html +3 -3
- package/tsparticles.plugin.export.video.js +11 -11
- package/tsparticles.plugin.export.video.min.js +2 -2
- package/types/ExportVideoPlugin.d.ts +3 -5
- package/types/{ExportVideoInstance.d.ts → ExportVideoPluginInstance.d.ts} +1 -1
- package/types/index.d.ts +1 -1
- package/umd/ExportVideoPlugin.js +39 -7
- package/umd/{ExportVideoInstance.js → ExportVideoPluginInstance.js} +26 -25
- package/umd/index.js +3 -3
- package/973.min.js +0 -2
- package/973.min.js.LICENSE.txt +0 -1
- package/tsparticles.plugin.export.video.min.js.LICENSE.txt +0 -1
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-alpha.
|
|
7
|
+
* v4.0.0-alpha.21
|
|
8
8
|
*/
|
|
9
9
|
/*
|
|
10
10
|
* ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
|
|
@@ -28,16 +28,6 @@ return /******/ (() => { // webpackBootstrap
|
|
|
28
28
|
/******/ "use strict";
|
|
29
29
|
/******/ var __webpack_modules__ = ({
|
|
30
30
|
|
|
31
|
-
/***/ "./dist/browser/index.js"
|
|
32
|
-
/*!*******************************!*\
|
|
33
|
-
!*** ./dist/browser/index.js ***!
|
|
34
|
-
\*******************************/
|
|
35
|
-
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
36
|
-
|
|
37
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadExportVideoPlugin: () => (/* binding */ loadExportVideoPlugin)\n/* harmony export */ });\nfunction loadExportVideoPlugin(engine) {\n engine.checkVersion(\"4.0.0-alpha.2\");\n engine.register(async e => {\n const {\n ExportVideoPlugin\n } = await __webpack_require__.e(/*! import() */ \"dist_browser_ExportVideoPlugin_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./ExportVideoPlugin.js */ \"./dist/browser/ExportVideoPlugin.js\"));\n e.addPlugin(new ExportVideoPlugin());\n });\n}\n\n//# sourceURL=webpack://@tsparticles/plugin-export-video/./dist/browser/index.js?\n}");
|
|
38
|
-
|
|
39
|
-
/***/ },
|
|
40
|
-
|
|
41
31
|
/***/ "@tsparticles/engine"
|
|
42
32
|
/*!*********************************************************************************************************************************!*\
|
|
43
33
|
!*** external {"commonjs":"@tsparticles/engine","commonjs2":"@tsparticles/engine","amd":"@tsparticles/engine","root":"window"} ***!
|
|
@@ -46,6 +36,16 @@ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpa
|
|
|
46
36
|
|
|
47
37
|
module.exports = __WEBPACK_EXTERNAL_MODULE__tsparticles_engine__;
|
|
48
38
|
|
|
39
|
+
/***/ },
|
|
40
|
+
|
|
41
|
+
/***/ "./dist/browser/index.js"
|
|
42
|
+
/*!*******************************!*\
|
|
43
|
+
!*** ./dist/browser/index.js ***!
|
|
44
|
+
\*******************************/
|
|
45
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
46
|
+
|
|
47
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadExportVideoPlugin: () => (/* binding */ loadExportVideoPlugin)\n/* harmony export */ });\nasync function loadExportVideoPlugin(engine) {\n engine.checkVersion(\"4.0.0-alpha.21\");\n await engine.register(async (e)=>{\n const { ExportVideoPlugin } = await __webpack_require__.e(/*! import() */ \"dist_browser_ExportVideoPlugin_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./ExportVideoPlugin.js */ \"./dist/browser/ExportVideoPlugin.js\"));\n e.addPlugin(new ExportVideoPlugin());\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/plugin-export-video/./dist/browser/index.js?\n}");
|
|
48
|
+
|
|
49
49
|
/***/ }
|
|
50
50
|
|
|
51
51
|
/******/ });
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t(require("@tsparticles/engine"));else if("function"==typeof define&&define.amd)define(["@tsparticles/engine"],t);else{var r="object"==typeof exports?t(require("@tsparticles/engine")):t(e.window);for(var o in r)("object"==typeof exports?exports:e)[o]=r[o]}}(this,e=>(()=>{"use strict";var t,r,o,i={303(t){t.exports=e}},n={};function a(e){var t=n[e];if(void 0!==t)return t.exports;var r=n[e]={exports:{}};return i[e](r,r.exports,a),r.exports}a.m=i,a.d=(e,t)=>{for(var r in t)a.o(t,r)&&!a.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},a.f={},a.e=e=>Promise.all(Object.keys(a.f).reduce((t,r)=>(a.f[r](e,t),t),[])),a.u=e=>""+e+".min.js",a.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s={},a.l=(e,t,r,o)=>{if(s[e])return void s[e].push(t);if(void 0!==r)for(var i,n,p=document.getElementsByTagName("script"),l=0;l<p.length;l++){var c=p[l];if(c.getAttribute("src")==e||c.getAttribute("data-webpack")=="@tsparticles/plugin-export-video:"+r){i=c;break}}i||(n=!0,(i=document.createElement("script")).charset="utf-8",a.nc&&i.setAttribute("nonce",a.nc),i.setAttribute("data-webpack","@tsparticles/plugin-export-video:"+r),i.src=e),s[e]=[t];var u=(t,r)=>{i.onerror=i.onload=null,clearTimeout(d);var o=s[e];if(delete s[e],i.parentNode&&i.parentNode.removeChild(i),o&&o.forEach(e=>e(r)),t)return t(r)},d=setTimeout(u.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=u.bind(null,i.onerror),i.onload=u.bind(null,i.onload),n&&document.head.appendChild(i)},a.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.g.importScripts&&(p=a.g.location+"");var s,p,l=a.g.document;if(!p&&l&&(l.currentScript&&"SCRIPT"===l.currentScript.tagName.toUpperCase()&&(p=l.currentScript.src),!p)){var c=l.getElementsByTagName("script");if(c.length)for(var u=c.length-1;u>-1&&(!p||!/^http(s?):/.test(p));)p=c[u--].src}if(!p)throw Error("Automatic publicPath is not supported in this browser");a.p=p=p.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),t={297:0},a.f.j=(e,r)=>{var o=a.o(t,e)?t[e]:void 0;if(0!==o)if(o)r.push(o[2]);else{var i=new Promise((r,i)=>o=t[e]=[r,i]);r.push(o[2]=i);var n=a.p+a.u(e),s=Error();a.l(n,r=>{if(a.o(t,e)&&(0!==(o=t[e])&&(t[e]=void 0),o)){var i=r&&("load"===r.type?"missing":r.type),n=r&&r.target&&r.target.src;s.message="Loading chunk "+e+` failed.
|
|
2
|
+
(`+i+": "+n+")",s.name="ChunkLoadError",s.type=i,s.request=n,o[1](s)}},"chunk-"+e,e)}},r=(e,r)=>{var o,i,[n,s,p]=r,l=0;if(n.some(e=>0!==t[e])){for(o in s)a.o(s,o)&&(a.m[o]=s[o]);p&&p(a)}for(e&&e(r);l<n.length;l++)i=n[l],a.o(t,i)&&t[i]&&t[i][0](),t[i]=0},(o=this.webpackChunk_tsparticles_plugin_export_video=this.webpackChunk_tsparticles_plugin_export_video||[]).forEach(r.bind(null,0)),o.push=r.bind(null,o.push.bind(o));var d={};async function f(e){e.checkVersion("4.0.0-alpha.21"),await e.register(async e=>{let{ExportVideoPlugin:t}=await a.e(500).then(a.bind(a,500));e.addPlugin(new t)})}return a.r(d),a.d(d,{loadExportVideoPlugin:()=>f}),d})());
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import type { Container, IPlugin } from "@tsparticles/engine";
|
|
2
|
-
import { ExportVideoInstance } from "./ExportVideoInstance.js";
|
|
1
|
+
import type { Container, IContainerPlugin, IPlugin } from "@tsparticles/engine";
|
|
3
2
|
export declare class ExportVideoPlugin implements IPlugin {
|
|
4
|
-
readonly id
|
|
5
|
-
|
|
6
|
-
getPlugin(container: Container): Promise<ExportVideoInstance>;
|
|
3
|
+
readonly id = "export-video";
|
|
4
|
+
getPlugin(container: Container): Promise<IContainerPlugin>;
|
|
7
5
|
loadOptions(): void;
|
|
8
6
|
needsPlugin(): boolean;
|
|
9
7
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type Container, type ExportResult, type IContainerPlugin } from "@tsparticles/engine";
|
|
2
|
-
export declare class
|
|
2
|
+
export declare class ExportVideoPluginInstance implements IContainerPlugin {
|
|
3
3
|
private readonly _container;
|
|
4
4
|
private readonly _supportedTypes;
|
|
5
5
|
constructor(container: Container);
|
package/types/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { type Engine } from "@tsparticles/engine";
|
|
2
|
-
export declare function loadExportVideoPlugin(engine: Engine): void
|
|
2
|
+
export declare function loadExportVideoPlugin(engine: Engine): Promise<void>;
|
package/umd/ExportVideoPlugin.js
CHANGED
|
@@ -1,22 +1,54 @@
|
|
|
1
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
2
|
+
if (k2 === undefined) k2 = k;
|
|
3
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
4
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
5
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
6
|
+
}
|
|
7
|
+
Object.defineProperty(o, k2, desc);
|
|
8
|
+
}) : (function(o, m, k, k2) {
|
|
9
|
+
if (k2 === undefined) k2 = k;
|
|
10
|
+
o[k2] = m[k];
|
|
11
|
+
}));
|
|
12
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
13
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
14
|
+
}) : function(o, v) {
|
|
15
|
+
o["default"] = v;
|
|
16
|
+
});
|
|
17
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
18
|
+
var ownKeys = function(o) {
|
|
19
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
20
|
+
var ar = [];
|
|
21
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
22
|
+
return ar;
|
|
23
|
+
};
|
|
24
|
+
return ownKeys(o);
|
|
25
|
+
};
|
|
26
|
+
return function (mod) {
|
|
27
|
+
if (mod && mod.__esModule) return mod;
|
|
28
|
+
var result = {};
|
|
29
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
30
|
+
__setModuleDefault(result, mod);
|
|
31
|
+
return result;
|
|
32
|
+
};
|
|
33
|
+
})();
|
|
1
34
|
(function (factory) {
|
|
2
35
|
if (typeof module === "object" && typeof module.exports === "object") {
|
|
3
36
|
var v = factory(require, exports);
|
|
4
37
|
if (v !== undefined) module.exports = v;
|
|
5
38
|
}
|
|
6
39
|
else if (typeof define === "function" && define.amd) {
|
|
7
|
-
define(["require", "exports"
|
|
40
|
+
define(["require", "exports"], factory);
|
|
8
41
|
}
|
|
9
42
|
})(function (require, exports) {
|
|
10
43
|
"use strict";
|
|
44
|
+
var __syncRequire = typeof module === "object" && typeof module.exports === "object";
|
|
11
45
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
46
|
exports.ExportVideoPlugin = void 0;
|
|
13
|
-
const ExportVideoInstance_js_1 = require("./ExportVideoInstance.js");
|
|
14
47
|
class ExportVideoPlugin {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
return Promise.resolve(new ExportVideoInstance_js_1.ExportVideoInstance(container));
|
|
48
|
+
id = "export-video";
|
|
49
|
+
async getPlugin(container) {
|
|
50
|
+
const { ExportVideoPluginInstance } = await (__syncRequire ? Promise.resolve().then(() => __importStar(require("./ExportVideoPluginInstance.js"))) : new Promise((resolve_1, reject_1) => { require(["./ExportVideoPluginInstance.js"], resolve_1, reject_1); }).then(__importStar));
|
|
51
|
+
return new ExportVideoPluginInstance(container);
|
|
20
52
|
}
|
|
21
53
|
loadOptions() {
|
|
22
54
|
}
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
})(function (require, exports) {
|
|
10
10
|
"use strict";
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.
|
|
12
|
+
exports.ExportVideoPluginInstance = void 0;
|
|
13
13
|
const engine_1 = require("@tsparticles/engine");
|
|
14
14
|
const videoTypes = ["webm", "ogg", "mp4", "x-matroska"], codecs = [
|
|
15
15
|
"vp9",
|
|
@@ -48,30 +48,10 @@
|
|
|
48
48
|
});
|
|
49
49
|
return supported;
|
|
50
50
|
}
|
|
51
|
-
class
|
|
51
|
+
class ExportVideoPluginInstance {
|
|
52
|
+
_container;
|
|
53
|
+
_supportedTypes = [];
|
|
52
54
|
constructor(container) {
|
|
53
|
-
this._supportedTypes = [];
|
|
54
|
-
this._exportVideo = async (data) => {
|
|
55
|
-
const element = this._container.canvas.element;
|
|
56
|
-
if (!element) {
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
return new Promise(resolve => {
|
|
60
|
-
const stream = element.captureStream(data.fps ?? this._container.actualOptions.fpsLimit), firstIndex = 0, mimeType = data.mimeType ?? this._supportedTypes[firstIndex], recorder = new MediaRecorder(stream, {
|
|
61
|
-
mimeType,
|
|
62
|
-
}), chunks = [], defaultDuration = 5;
|
|
63
|
-
recorder.addEventListener("dataavailable", (event) => {
|
|
64
|
-
chunks.push(event.data);
|
|
65
|
-
});
|
|
66
|
-
recorder.addEventListener("stop", () => {
|
|
67
|
-
resolve(new Blob(chunks, { type: mimeType }));
|
|
68
|
-
});
|
|
69
|
-
recorder.start();
|
|
70
|
-
setTimeout(() => {
|
|
71
|
-
recorder.stop();
|
|
72
|
-
}, data.duration ?? defaultDuration * engine_1.millisecondsToSeconds);
|
|
73
|
-
});
|
|
74
|
-
};
|
|
75
55
|
this._container = container;
|
|
76
56
|
this._supportedTypes = getVideoSupportedMimeTypes();
|
|
77
57
|
}
|
|
@@ -87,6 +67,27 @@
|
|
|
87
67
|
}
|
|
88
68
|
return res;
|
|
89
69
|
}
|
|
70
|
+
_exportVideo = async (data) => {
|
|
71
|
+
const element = this._container.canvas.element;
|
|
72
|
+
if (!element) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
return new Promise(resolve => {
|
|
76
|
+
const stream = element.captureStream(data.fps ?? this._container.actualOptions.fpsLimit), firstIndex = 0, mimeType = data.mimeType ?? this._supportedTypes[firstIndex], recorder = new MediaRecorder(stream, {
|
|
77
|
+
mimeType,
|
|
78
|
+
}), chunks = [], defaultDuration = 5;
|
|
79
|
+
recorder.addEventListener("dataavailable", (event) => {
|
|
80
|
+
chunks.push(event.data);
|
|
81
|
+
});
|
|
82
|
+
recorder.addEventListener("stop", () => {
|
|
83
|
+
resolve(new Blob(chunks, { type: mimeType }));
|
|
84
|
+
});
|
|
85
|
+
recorder.start();
|
|
86
|
+
setTimeout(() => {
|
|
87
|
+
recorder.stop();
|
|
88
|
+
}, data.duration ?? defaultDuration * engine_1.millisecondsToSeconds);
|
|
89
|
+
});
|
|
90
|
+
};
|
|
90
91
|
}
|
|
91
|
-
exports.
|
|
92
|
+
exports.ExportVideoPluginInstance = ExportVideoPluginInstance;
|
|
92
93
|
});
|
package/umd/index.js
CHANGED
|
@@ -44,9 +44,9 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
44
44
|
var __syncRequire = typeof module === "object" && typeof module.exports === "object";
|
|
45
45
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
46
46
|
exports.loadExportVideoPlugin = loadExportVideoPlugin;
|
|
47
|
-
function loadExportVideoPlugin(engine) {
|
|
48
|
-
engine.checkVersion("4.0.0-alpha.
|
|
49
|
-
engine.register(async (e) => {
|
|
47
|
+
async function loadExportVideoPlugin(engine) {
|
|
48
|
+
engine.checkVersion("4.0.0-alpha.21");
|
|
49
|
+
await engine.register(async (e) => {
|
|
50
50
|
const { ExportVideoPlugin } = await (__syncRequire ? Promise.resolve().then(() => __importStar(require("./ExportVideoPlugin.js"))) : new Promise((resolve_1, reject_1) => { require(["./ExportVideoPlugin.js"], resolve_1, reject_1); }).then(__importStar));
|
|
51
51
|
e.addPlugin(new ExportVideoPlugin());
|
|
52
52
|
});
|
package/973.min.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! For license information please see 973.min.js.LICENSE.txt */
|
|
2
|
-
(this.webpackChunk_tsparticles_plugin_export_video=this.webpackChunk_tsparticles_plugin_export_video||[]).push([[973],{973(e,t,s){s.d(t,{ExportVideoPlugin:()=>n});var o=s(303);const p=["webm","ogg","mp4","x-matroska"],i=["vp9","vp9.0","vp8","vp8.0","avc1","av1","h265","h.265","h264","h.264","opus","pcm","aac","mpeg","mp4a"];class r{constructor(e){this._supportedTypes=[],this._exportVideo=async e=>{const t=this._container.canvas.element;if(t)return new Promise((s=>{const p=t.captureStream(e.fps??this._container.actualOptions.fpsLimit),i=e.mimeType??this._supportedTypes[0],r=new MediaRecorder(p,{mimeType:i}),n=[];r.addEventListener("dataavailable",(e=>{n.push(e.data)})),r.addEventListener("stop",(()=>{s(new Blob(n,{type:i}))})),r.start(),setTimeout((()=>{r.stop()}),e.duration??5*o.millisecondsToSeconds)}))},this._container=e,this._supportedTypes=function(){const e=e=>MediaRecorder.isTypeSupported(e),t=[];return p.forEach((s=>{const o=`video/${s}`;i.forEach((s=>{[`${o};codecs=${s}`,`${o};codecs=${s.toUpperCase()}`].forEach((s=>{e(s)&&t.push(s)}))})),e(o)&&t.push(o)})),t}()}async export(e,t){const s={supported:!1};if("video"===e)s.supported=!0,s.blob=await this._exportVideo(t);return s}}class n{constructor(){this.id="export-video"}getPlugin(e){return Promise.resolve(new r(e))}loadOptions(){}needsPlugin(){return!0}}}}]);
|
package/973.min.js.LICENSE.txt
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
/*! tsParticles Export Video Plugin v4.0.0-alpha.2 by Matteo Bruni */
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
/*! tsParticles Export Video Plugin v4.0.0-alpha.2 by Matteo Bruni */
|