@eva/spine-base 2.0.1-beta.22 → 2.0.1-beta.24
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.
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
2
|
globalThis.EVA = globalThis.EVA || {};
|
|
3
3
|
globalThis.EVA.plugin = globalThis.EVA.plugin || {};
|
|
4
|
-
var _EVA_IIFE_spineBase = function (exports, eva_js, pluginRenderer
|
|
4
|
+
var _EVA_IIFE_spineBase = function (exports, eva_js, pluginRenderer) {
|
|
5
5
|
'use strict';
|
|
6
6
|
function __decorate(decorators, target, key, desc) {
|
|
7
7
|
var c = arguments.length,
|
|
@@ -217,14 +217,6 @@ var _EVA_IIFE_spineBase = function (exports, eva_js, pluginRenderer, pixi_js) {
|
|
|
217
217
|
data.ref--;
|
|
218
218
|
setTimeout(() => __awaiter(this, void 0, void 0, function* () {
|
|
219
219
|
if (data.ref <= 0) {
|
|
220
|
-
yield pixi_js.Assets.unload([res.src.image.url, res.src.atlas.url, res.src.ske.url]);
|
|
221
|
-
const resolver = pixi_js.Assets.resolver;
|
|
222
|
-
delete resolver._assetMap[res.src.image.url];
|
|
223
|
-
delete resolver._assetMap[res.src.atlas.url];
|
|
224
|
-
delete resolver._assetMap[res.src.ske.url];
|
|
225
|
-
delete resolver._resolverHash[res.src.image.url];
|
|
226
|
-
delete resolver._resolverHash[res.src.atlas.url];
|
|
227
|
-
delete resolver._resolverHash[res.src.ske.url];
|
|
228
220
|
eva_js.resource.destroy(resourceName);
|
|
229
221
|
delete dataMap[resourceName];
|
|
230
222
|
}
|
|
@@ -422,5 +414,5 @@ var _EVA_IIFE_spineBase = function (exports, eva_js, pluginRenderer, pixi_js) {
|
|
|
422
414
|
value: true
|
|
423
415
|
});
|
|
424
416
|
return exports;
|
|
425
|
-
}({}, EVA, EVA.plugin.renderer
|
|
417
|
+
}({}, EVA, EVA.plugin.renderer);
|
|
426
418
|
globalThis.EVA.plugin.spineBase = globalThis.EVA.plugin.spineBase || _EVA_IIFE_spineBase;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var
|
|
1
|
+
function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)({}).hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e},_extends.apply(null,arguments)}globalThis.EVA=globalThis.EVA||{},globalThis.EVA.plugin=globalThis.EVA.plugin||{};var _EVA_IIFE_spineBase=function(e,t,n){"use strict";function a(e,t,n,a){var i,r=arguments.length,o=r<3?t:null===a?a=Object.getOwnPropertyDescriptor(t,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,n,a);else for(var s=e.length-1;s>=0;s--)(i=e[s])&&(o=(r<3?i(o):r>3?i(t,n,o):i(t,n))||o);return r>3&&o&&Object.defineProperty(t,n,o),o}function i(e,t,n,a){return new(n||(n=Promise))((function(i,r){function o(e){try{c(a.next(e))}catch(e){r(e)}}function s(e){try{c(a.throw(e))}catch(e){r(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,s)}c((a=a.apply(e,t||[])).next())}))}function r(e){return function(t,n){var a=function(e,t){return e.constructor.IDEProps||(e.constructor.IDEProps={}),e.constructor.IDEProps[t]||(e.constructor.IDEProps[t]={}),e.constructor.IDEProps[t]}(t,n);a.key=n,a.type=e}}class o extends t.Component{constructor(){super(...arguments),this.resource="",this.scale=1,this.animationName="",this.autoPlay=!0,this.keepResource=!1,this.waitExecuteInfos=[]}set armature(e){if(this._armature=e,e){this.autoPlay&&this.play(this.animationName);for(const e of this.waitExecuteInfos)if(e.playType){const{name:t,loop:n,track:a}=e;this.play(t,n,a)}else this.stop(e.track);this.waitExecuteInfos=[]}}get armature(){return this._armature}init(e){e&&_extends(this,e)}onDestroy(){this.destroied=!0}play(e,t,n){try{const a=null!=t?t:this.autoPlay;e&&(this.animationName=e),this.armature?(void 0===n&&(n=0),this.armature.state.setAnimation(n,this.animationName,a)):this.waitExecuteInfos.push({playType:!0,name:e,loop:a,track:n})}catch(e){console.log(e)}}stop(e){this.armature?(void 0===e&&(e=0),this.armature.state.setEmptyAnimation(e,0)):this.waitExecuteInfos.push({playType:!1,track:e})}addAnimation(e,t,n,a){try{this.armature&&(void 0===a&&(a=0),this.armature.state.addAnimation(a,e,n,t))}catch(e){console.log(e)}}setMix(e,t,n){this.armature&&this.armature.state.data.setMix(e,t,n)}getAnim(e=0){try{if(this.armature)return this.armature.state.tracks[e].animation.name}catch(e){console.log(e)}}setDefaultMix(e){this.armature&&(this.armature.state.data.defaultMix=e)}setAttachment(e,t){this.armature&&this.armature.skeleton.setAttachment(e,t)}getBone(e){if(this.armature)return this.armature.skeleton.findBone(e)}}o.componentName="Spine",a([r("string")],o.prototype,"resource",void 0),a([r("number")],o.prototype,"scale",void 0),a([r("string")],o.prototype,"animationName",void 0),a([r("boolean")],o.prototype,"autoPlay",void 0),a([r("boolean")],o.prototype,"keepResource",void 0);let s={};function c(e,t,n){return i(this,void 0,void 0,(function*(){let a=s[e.name];if(!a)if(e.complete)a=function(e,t,n,a){const i=t.ske,r=t.atlas,o=new a.AtlasAttachmentLoader(r),c=i instanceof Uint8Array?new a.SkeletonBinary(o):new a.SkeletonJson(o);c.scale=n||1;const u={spineData:c.readSkeletonData(i),ref:0,imageSrc:t.image.label};return s[e]=u,u}(e.name,e.data,t,n);else if(!a)return;return a.ref++,a.spineData}))}let u=class extends n.Renderer{constructor(){super(...arguments),this.armatures={}}init({pixiSpine:e}){this.renderSystem=this.game.getSystem(n.RendererSystem),this.renderSystem.rendererManager.register(this),this.pixiSpine=e,this.game.canvas.addEventListener("webglcontextrestored",(()=>{const e=this.game.gameObjects;let n=[];for(let a in this.armatures){const i=+a;for(let a=0;a<e.length;++a){let r=e[a];if(r.id===i){let e=r.getComponent(o);e&&(this.remove({type:t.OBSERVER_TYPE.REMOVE,gameObject:r,component:e,componentName:o.componentName}),n.push({type:t.OBSERVER_TYPE.ADD,gameObject:r,component:e,componentName:o.componentName}));break}}}setTimeout((()=>{n.forEach((e=>{this.add(e)}))}),1e3)}),!1)}update(e){for(let t in this.armatures)this.armatures[t].update(.001*e.deltaTime);super.update()}componentChanged(e){return i(this,void 0,void 0,(function*(){if("Spine"===e.componentName)if(e.type===t.OBSERVER_TYPE.ADD)this.add(e);else if(e.type===t.OBSERVER_TYPE.CHANGE){if("resource"===e.prop.prop[0])this.change(e)}else e.type===t.OBSERVER_TYPE.REMOVE&&this.remove(e)}))}add(e,n){var a,r;return i(this,void 0,void 0,(function*(){const i=e.component;clearTimeout(i.addHandler);const o=e.gameObject.id,s=this.increaseAsyncId(o),u=yield t.resource.getResource(i.resource);if(!this.validateAsyncId(o,s))return;const m=yield c(u,i.scale,this.pixiSpine);if(!this.validateAsyncId(o,s))return;if(!m)return void(i.addHandler=setTimeout((()=>{i.destroied||(void 0===n&&(n=20),--n>0?this.add(e,n):console.log("retry exceed max times",i.resource))}),1e3));this.remove(e);const d=null===(r=null===(a=this.renderSystem)||void 0===a?void 0:a.containerManager)||void 0===r?void 0:r.getContainer(e.gameObject.id);if(!d)return;i.lastResource=i.resource;const l=new this.pixiSpine.Spine({skeletonData:m,autoUpdate:!1});if(this.armatures[e.gameObject.id]=l,e.gameObject&&e.gameObject.transform){const t=e.gameObject.transform;l.x=t.size.width*t.origin.x,l.y=t.size.height*t.origin.y}d.addChildAt(l,0),l.update(),i.armature=l,i.emit("loaded",{resource:i.resource}),l.state.addListener({start:(e,t)=>{i.emit("start",{track:e,name:e.animation.name})},complete:(e,t)=>{i.emit("complete",{track:e,name:e.animation.name})},interrupt:(e,t)=>{i.emit("interrupt",{track:e,name:e.animation.name})},end:(e,t)=>{i.emit("end",{track:e,name:e.animation.name})},event:(e,t)=>{i.emit("event",e,t)}})}))}change(e){this.remove(e),this.add(e)}remove(e){var n,a,r,o,c,u;return i(this,void 0,void 0,(function*(){this.increaseAsyncId(e.gameObject.id);const m=e.component;clearTimeout(m.addHandler);const d=this.armatures[e.gameObject.id],l=null===(a=null===(n=this.renderSystem)||void 0===n?void 0:n.containerManager)||void 0===a?void 0:a.getContainer(e.gameObject.id);if(l&&d&&l.removeChild(d),m.armature&&(m.armature.destroy({children:!0}),!m.keepResource)){const e=yield t.resource.getResource(m.lastResource);(null===(o=null===(r=e.data)||void 0===r?void 0:r.image)||void 0===o?void 0:o.src)||null===(u=null===(c=e.data)||void 0===c?void 0:c.image)||void 0===u||u.label,function(e){const n=e.name,a=s[n];a&&(a.ref--,setTimeout((()=>i(this,void 0,void 0,(function*(){a.ref<=0&&(t.resource.destroy(n),delete s[n])}))),100))}(e)}m.armature=null,delete this.armatures[e.gameObject.id],e.type,t.OBSERVER_TYPE.CHANGE}))}};u.systemName="SpineSystem",u=a([t.decorators.componentObserver({Spine:["resource"]})],u);var m=u;return t.resource.registerResourceType("SPINE"),e.Spine=o,e.SpineSystem=m,Object.defineProperty(e,"__esModule",{value:!0}),e}({},EVA,EVA.plugin.renderer);globalThis.EVA.plugin.spineBase=globalThis.EVA.plugin.spineBase||_EVA_IIFE_spineBase;
|
package/dist/spine-base.cjs.js
CHANGED
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
var eva_js = require('@eva/eva.js');
|
|
6
6
|
var pluginRenderer = require('@eva/plugin-renderer');
|
|
7
7
|
var inspectorDecorator = require('@eva/inspector-decorator');
|
|
8
|
-
var pixi_js = require('pixi.js');
|
|
9
8
|
|
|
10
9
|
/*! *****************************************************************************
|
|
11
10
|
Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -221,14 +220,6 @@ function releaseSpineData(res, _imageSrc) {
|
|
|
221
220
|
data.ref--;
|
|
222
221
|
setTimeout(() => __awaiter(this, void 0, void 0, function* () {
|
|
223
222
|
if (data.ref <= 0) {
|
|
224
|
-
yield pixi_js.Assets.unload([res.src.image.url, res.src.atlas.url, res.src.ske.url]);
|
|
225
|
-
const resolver = pixi_js.Assets.resolver;
|
|
226
|
-
delete resolver._assetMap[res.src.image.url];
|
|
227
|
-
delete resolver._assetMap[res.src.atlas.url];
|
|
228
|
-
delete resolver._assetMap[res.src.ske.url];
|
|
229
|
-
delete resolver._resolverHash[res.src.image.url];
|
|
230
|
-
delete resolver._resolverHash[res.src.atlas.url];
|
|
231
|
-
delete resolver._resolverHash[res.src.ske.url];
|
|
232
223
|
eva_js.resource.destroy(resourceName);
|
|
233
224
|
delete dataMap[resourceName];
|
|
234
225
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@eva/eva.js"),t=require("@eva/plugin-renderer"),a=require("@eva/inspector-decorator")
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@eva/eva.js"),t=require("@eva/plugin-renderer"),a=require("@eva/inspector-decorator");
|
|
2
2
|
/*! *****************************************************************************
|
|
3
3
|
Copyright (c) Microsoft Corporation. All rights reserved.
|
|
4
4
|
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
|
|
@@ -13,4 +13,4 @@ MERCHANTABLITY OR NON-INFRINGEMENT.
|
|
|
13
13
|
See the Apache Version 2.0 License for specific language governing permissions
|
|
14
14
|
and limitations under the License.
|
|
15
15
|
***************************************************************************** */
|
|
16
|
-
function i(e,t,a,
|
|
16
|
+
function i(e,t,a,i){var r,n=arguments.length,o=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,a):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,a,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(o=(n<3?r(o):n>3?r(t,a,o):r(t,a))||o);return n>3&&o&&Object.defineProperty(t,a,o),o}function r(e,t,a,i){return new(a||(a=Promise))((function(r,n){function o(e){try{c(i.next(e))}catch(e){n(e)}}function s(e){try{c(i.throw(e))}catch(e){n(e)}}function c(e){e.done?r(e.value):new a((function(t){t(e.value)})).then(o,s)}c((i=i.apply(e,t||[])).next())}))}class n extends e.Component{constructor(){super(...arguments),this.resource="",this.scale=1,this.animationName="",this.autoPlay=!0,this.keepResource=!1,this.waitExecuteInfos=[]}set armature(e){if(this._armature=e,e){this.autoPlay&&this.play(this.animationName);for(const e of this.waitExecuteInfos)if(e.playType){const{name:t,loop:a,track:i}=e;this.play(t,a,i)}else this.stop(e.track);this.waitExecuteInfos=[]}}get armature(){return this._armature}init(e){e&&Object.assign(this,e)}onDestroy(){this.destroied=!0}play(e,t,a){try{const i=null!=t?t:this.autoPlay;e&&(this.animationName=e),this.armature?(void 0===a&&(a=0),this.armature.state.setAnimation(a,this.animationName,i)):this.waitExecuteInfos.push({playType:!0,name:e,loop:i,track:a})}catch(e){console.log(e)}}stop(e){this.armature?(void 0===e&&(e=0),this.armature.state.setEmptyAnimation(e,0)):this.waitExecuteInfos.push({playType:!1,track:e})}addAnimation(e,t,a,i){try{this.armature&&(void 0===i&&(i=0),this.armature.state.addAnimation(i,e,a,t))}catch(e){console.log(e)}}setMix(e,t,a){this.armature&&this.armature.state.data.setMix(e,t,a)}getAnim(e=0){try{if(this.armature)return this.armature.state.tracks[e].animation.name}catch(e){console.log(e)}}setDefaultMix(e){this.armature&&(this.armature.state.data.defaultMix=e)}setAttachment(e,t){this.armature&&this.armature.skeleton.setAttachment(e,t)}getBone(e){if(this.armature)return this.armature.skeleton.findBone(e)}}n.componentName="Spine",i([a.type("string")],n.prototype,"resource",void 0),i([a.type("number")],n.prototype,"scale",void 0),i([a.type("string")],n.prototype,"animationName",void 0),i([a.type("boolean")],n.prototype,"autoPlay",void 0),i([a.type("boolean")],n.prototype,"keepResource",void 0);let o={};function s(e,t,a){return r(this,void 0,void 0,(function*(){let i=o[e.name];if(!i)if(e.complete)i=function(e,t,a,i){const r=t.ske,n=t.atlas,s=new i.AtlasAttachmentLoader(n),c=r instanceof Uint8Array?new i.SkeletonBinary(s):new i.SkeletonJson(s);c.scale=a||1;const m={spineData:c.readSkeletonData(r),ref:0,imageSrc:t.image.label};return o[e]=m,m}(e.name,e.data,t,a);else if(!i)return;return i.ref++,i.spineData}))}let c=class extends t.Renderer{constructor(){super(...arguments),this.armatures={}}init({pixiSpine:a}){this.renderSystem=this.game.getSystem(t.RendererSystem),this.renderSystem.rendererManager.register(this),this.pixiSpine=a,this.game.canvas.addEventListener("webglcontextrestored",(()=>{const t=this.game.gameObjects;let a=[];for(let i in this.armatures){const r=+i;for(let i=0;i<t.length;++i){let o=t[i];if(o.id===r){let t=o.getComponent(n);t&&(this.remove({type:e.OBSERVER_TYPE.REMOVE,gameObject:o,component:t,componentName:n.componentName}),a.push({type:e.OBSERVER_TYPE.ADD,gameObject:o,component:t,componentName:n.componentName}));break}}}setTimeout((()=>{a.forEach((e=>{this.add(e)}))}),1e3)}),!1)}update(e){for(let t in this.armatures)this.armatures[t].update(.001*e.deltaTime);super.update()}componentChanged(t){return r(this,void 0,void 0,(function*(){if("Spine"===t.componentName)if(t.type===e.OBSERVER_TYPE.ADD)this.add(t);else if(t.type===e.OBSERVER_TYPE.CHANGE){if("resource"===t.prop.prop[0])this.change(t)}else t.type===e.OBSERVER_TYPE.REMOVE&&this.remove(t)}))}add(t,a){var i,n;return r(this,void 0,void 0,(function*(){const r=t.component;clearTimeout(r.addHandler);const o=t.gameObject.id,c=this.increaseAsyncId(o),m=yield e.resource.getResource(r.resource);if(!this.validateAsyncId(o,c))return;const u=yield s(m,r.scale,this.pixiSpine);if(!this.validateAsyncId(o,c))return;if(!u)return void(r.addHandler=setTimeout((()=>{r.destroied||(void 0===a&&(a=20),--a>0?this.add(t,a):console.log("retry exceed max times",r.resource))}),1e3));this.remove(t);const d=null===(n=null===(i=this.renderSystem)||void 0===i?void 0:i.containerManager)||void 0===n?void 0:n.getContainer(t.gameObject.id);if(!d)return;r.lastResource=r.resource;const l=new this.pixiSpine.Spine({skeletonData:u,autoUpdate:!1});if(this.armatures[t.gameObject.id]=l,t.gameObject&&t.gameObject.transform){const e=t.gameObject.transform;l.x=e.size.width*e.origin.x,l.y=e.size.height*e.origin.y}d.addChildAt(l,0),l.update(),r.armature=l,r.emit("loaded",{resource:r.resource}),l.state.addListener({start:(e,t)=>{r.emit("start",{track:e,name:e.animation.name})},complete:(e,t)=>{r.emit("complete",{track:e,name:e.animation.name})},interrupt:(e,t)=>{r.emit("interrupt",{track:e,name:e.animation.name})},end:(e,t)=>{r.emit("end",{track:e,name:e.animation.name})},event:(e,t)=>{r.emit("event",e,t)}})}))}change(e){this.remove(e),this.add(e)}remove(t){var a,i,n,s,c,m;return r(this,void 0,void 0,(function*(){this.increaseAsyncId(t.gameObject.id);const u=t.component;clearTimeout(u.addHandler);const d=this.armatures[t.gameObject.id],l=null===(i=null===(a=this.renderSystem)||void 0===a?void 0:a.containerManager)||void 0===i?void 0:i.getContainer(t.gameObject.id);if(l&&d&&l.removeChild(d),u.armature&&(u.armature.destroy({children:!0}),!u.keepResource)){const t=yield e.resource.getResource(u.lastResource);(null===(s=null===(n=t.data)||void 0===n?void 0:n.image)||void 0===s?void 0:s.src)||null===(m=null===(c=t.data)||void 0===c?void 0:c.image)||void 0===m||m.label,function(t){const a=t.name,i=o[a];i&&(i.ref--,setTimeout((()=>r(this,void 0,void 0,(function*(){i.ref<=0&&(e.resource.destroy(a),delete o[a])}))),100))}(t)}u.armature=null,delete this.armatures[t.gameObject.id],t.type,e.OBSERVER_TYPE.CHANGE}))}};c.systemName="SpineSystem",c=i([e.decorators.componentObserver({Spine:["resource"]})],c);var m=c;e.resource.registerResourceType("SPINE"),exports.Spine=n,exports.SpineSystem=m;
|
package/dist/spine-base.esm.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { Component, resource, OBSERVER_TYPE, decorators } from '@eva/eva.js';
|
|
2
2
|
import { Renderer, RendererSystem } from '@eva/plugin-renderer';
|
|
3
3
|
import { type } from '@eva/inspector-decorator';
|
|
4
|
-
import { Assets } from 'pixi.js';
|
|
5
4
|
|
|
6
5
|
/*! *****************************************************************************
|
|
7
6
|
Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -217,14 +216,6 @@ function releaseSpineData(res, _imageSrc) {
|
|
|
217
216
|
data.ref--;
|
|
218
217
|
setTimeout(() => __awaiter(this, void 0, void 0, function* () {
|
|
219
218
|
if (data.ref <= 0) {
|
|
220
|
-
yield Assets.unload([res.src.image.url, res.src.atlas.url, res.src.ske.url]);
|
|
221
|
-
const resolver = Assets.resolver;
|
|
222
|
-
delete resolver._assetMap[res.src.image.url];
|
|
223
|
-
delete resolver._assetMap[res.src.atlas.url];
|
|
224
|
-
delete resolver._assetMap[res.src.ske.url];
|
|
225
|
-
delete resolver._resolverHash[res.src.image.url];
|
|
226
|
-
delete resolver._resolverHash[res.src.atlas.url];
|
|
227
|
-
delete resolver._resolverHash[res.src.ske.url];
|
|
228
219
|
resource.destroy(resourceName);
|
|
229
220
|
delete dataMap[resourceName];
|
|
230
221
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eva/spine-base",
|
|
3
|
-
"version": "2.0.1-beta.
|
|
3
|
+
"version": "2.0.1-beta.24",
|
|
4
4
|
"description": "@eva/spine-base",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"module": "dist/spine-base.esm.js",
|
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
"license": "MIT",
|
|
19
19
|
"homepage": "https://eva.js.org",
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@eva/eva.js": "2.0.1-beta.
|
|
22
|
-
"@eva/plugin-renderer": "2.0.1-beta.
|
|
21
|
+
"@eva/eva.js": "2.0.1-beta.24",
|
|
22
|
+
"@eva/plugin-renderer": "2.0.1-beta.24",
|
|
23
23
|
"@eva/inspector-decorator": "^0.0.5",
|
|
24
24
|
"pixi.js": "^8.8.1"
|
|
25
25
|
}
|