@galacean/effects-plugin-alipay-downgrade 2.0.0-alpha.2 → 2.0.0-alpha.4
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/dist/index.js +2 -2
- package/dist/index.min.js +2 -2
- package/dist/index.mjs +2 -2
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Description: Galacean Effects player downgrade plugin for Alipay
|
|
4
4
|
* Author: Ant Group CO., Ltd.
|
|
5
5
|
* Contributors: 燃然,意绮
|
|
6
|
-
* Version: v2.0.0-alpha.
|
|
6
|
+
* Version: v2.0.0-alpha.4
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
'use strict';
|
|
@@ -514,7 +514,7 @@ function formatMessage(level, msg) {
|
|
|
514
514
|
return result.join(' ');
|
|
515
515
|
}
|
|
516
516
|
|
|
517
|
-
var version = "2.0.0-alpha.
|
|
517
|
+
var version = "2.0.0-alpha.4";
|
|
518
518
|
effects.registerPlugin('alipay-downgrade', AlipayDowngradePlugin, DowngradeVFXItem, true);
|
|
519
519
|
effects.logger.info('plugin alipay downgrade version: ' + version);
|
|
520
520
|
|
package/dist/index.min.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Description: Galacean Effects player downgrade plugin for Alipay
|
|
4
4
|
* Author: Ant Group CO., Ltd.
|
|
5
5
|
* Contributors: 燃然,意绮
|
|
6
|
-
* Version: v2.0.0-alpha.
|
|
6
|
+
* Version: v2.0.0-alpha.4
|
|
7
7
|
*/
|
|
8
|
-
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@galacean/effects")):"function"==typeof define&&define.amd?define(["exports","@galacean/effects"],n):n(((e="undefined"!=typeof globalThis?globalThis:e||self).ge=e.ge||{},e.ge.alipayDowngradePlugin={}),e.ge)}(this,(function(e,n){"use strict";var r=function(e,n){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,n){e.__proto__=n}||function(e,n){for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])},r(e,n)};function o(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function o(){this.constructor=e}r(e,n),e.prototype=null===n?Object.create(n):(o.prototype=n.prototype,new o)}function t(e,n,r,o){return new(r||(r=Promise))((function(t,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function c(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var n;e.done?t(e.value):(n=e.value,n instanceof r?n:new r((function(e){e(n)}))).then(a,c)}l((o=o.apply(e,n||[])).next())}))}function i(e,n){var r,o,t,i,a={label:0,sent:function(){if(1&t[0])throw t[1];return t[1]},trys:[],ops:[]};return i={next:c(0),throw:c(1),return:c(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function c(c){return function(l){return function(c){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,c[0]&&(a=0)),a;)try{if(r=1,o&&(t=2&c[0]?o.return:c[0]?o.throw||((t=o.return)&&t.call(o),0):o.next)&&!(t=t.call(o,c[1])).done)return t;switch(o=0,t&&(c=[2&c[0],t.value]),c[0]){case 0:case 1:t=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,o=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(t=a.trys,(t=t.length>0&&t[t.length-1])||6!==c[0]&&2!==c[0])){a=0;continue}if(3===c[0]&&(!t||c[1]>t[0]&&c[1]<t[3])){a.label=c[1];break}if(6===c[0]&&a.label<t[1]){a.label=t[1],t=c;break}if(t&&a.label<t[2]){a.label=t[2],a.ops.push(c);break}t[2]&&a.ops.pop(),a.trys.pop();continue}c=n.call(e,a)}catch(e){c=[6,e],o=0}finally{r=t=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}([c,l])}}}function a(e,n){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var o,t,i=r.call(e),a=[];try{for(;(void 0===n||n-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){t={error:e}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(t)throw t.error}}return a}function c(e,n,r){if(r||2===arguments.length)for(var o,t=0,i=n.length;t<i;t++)!o&&t in n||(o||(o=Array.prototype.slice.call(n,0,t)),o[t]=n[t]);return e.concat(o||Array.prototype.slice.call(n))}"function"==typeof SuppressedError&&SuppressedError;var l=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return o(n,e),n}(n.VFXItem),s="mock-fail",u="high",d="medium",f="low",v=!1;function p(){return t(this,void 0,void 0,(function(){return i(this,(function(e){return[2,new Promise((function(e,n){var r=window.AlipayJSBridge;r?r.call("getSystemInfo",(function(r){r.error?n(r):e(r)})):n("no ap")}))]}))}))}var g=new(function(){function e(){this.isIOS=!1,this.model="DESKTOP_DEBUG",this.deviceLevel="none",this.isDowngrade=!1}return e.prototype.getRenderLevel=function(){return this.deviceLevel===u?n.spec.RenderLevel.S:this.deviceLevel===d?n.spec.RenderLevel.A:this.deviceLevel===f?n.spec.RenderLevel.B:this.isIOS?n.spec.RenderLevel.S:n.spec.RenderLevel.B},e.prototype.hasDeviceLevel=function(){return m(this.deviceLevel)},e.prototype.setBySystemInfo=function(e){var n=e.performance,r=e.platform,o=e.model,t=void 0===o?"UNKNOWN_DEVICE":o;this.isIOS="iOS"===r,this.model=t,n&&!this.hasDeviceLevel()&&(this.deviceLevel=n)},e.prototype.updateDeviceLevel=function(){if(!this.hasDeviceLevel()&&/iPhone(\d+),/.test(this.model)){var e=+RegExp.$1;this.deviceLevel=e<=9?f:e<10?d:u}},e.prototype.getDeviceInfo=function(){return{isIOS:this.isIOS,model:this.model,deviceLevel:this.deviceLevel}},e}());function y(e){if(e.mock){var r=e.mock,o=r.downgrade,t=r.deviceLevel,i=void 0===t?u:t;return g.deviceLevel=i,{downgrade:o,reason:"mock"}}return e.noAlipayEnv?{downgrade:!1,reason:"no AP env"}:e.systemInfo?e.downgradeResult?(g.setBySystemInfo(e.systemInfo),function(e){var r=void 0,o=void 0;if(e.error)return{downgrade:4!==e.error,reason:"api error: "+e.error};try{var t=n.isString(e)?JSON.parse(e):e;if("downgradeResultType"in t?r=t.downgradeResultType:"resultType"in t&&(r=t.resultType,o=t.resultReason),e.context){var i=e.context.deviceInfo;if(i){var a=i.deviceLevel;m(a)&&(g.deviceLevel=a)}}g.updateDeviceLevel()}catch(e){console.error(e)}return void 0===r?{downgrade:!0,reason:"call downgrade fail"}:1===r?{downgrade:!0,reason:h(o)}:{downgrade:!1,reason:r}}(e.downgradeResult)):{downgrade:!1,reason:"downgradeResult is required"}:{downgrade:!1,reason:"systemInfo is required"}}function h(e){return-1===e?"".concat(e,"-no config"):0===e?"".concat(e,"-none"):1===e?"".concat(e,"-downgrade by memory"):2===e?"".concat(e,"-downgrade by crash"):3===e?"".concat(e,"-downgrade by device"):4===e?"".concat(e,"-downgrade by force"):"".concat(e)}function w(e){return e?/[ABS]/.test(e)?e:n.spec.RenderLevel.S:g.getRenderLevel()}function m(e){return e===u||e===d||e===f}var L=Symbol("@@_inter_pause");function b(e){e.target===document&&(n.logger.info("Auto pause all players with data offloaded"),n.getActivePlayers().forEach((function(e){e.paused||(e.pause({offloadTexture:!0}),e[L]=!0)})))}function S(e){e.target===document&&(n.logger.info("auto resume all players"),n.getActivePlayers().forEach((function(e){e[L]&&(e.resume(),e[L]=!1)})))}var P=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return o(n,e),n.onPlayerCreated=function(e){return t(this,void 0,void 0,(function(){return i(this,(function(r){return n.glLostOccurred?(console.warn("gl lost happened, new player will be destroyed."),[2,e.dispose()]):[2]}))}))},n.processRawJSON=function(e,r){var o;return void 0===r&&(r={}),t(this,void 0,void 0,(function(){var e,t;return i(this,(function(i){if(n.glLostOccurred)return[2,Promise.reject("gl lost happened")];if(e=null===(o=r.pluginData)||void 0===o?void 0:o.downgrade){if((t=y(e)).downgrade)throw new Error("downgraded, reason: ".concat(t.reason))}else console.warn("No downgrade result in pluginData of SceneLoadOptions");return r.renderLevel||(r.renderLevel=w(r.renderLevel)),[2]}))}))},n.glLostOccurred=!1,n}(n.AbstractPlugin);function A(e,n){for(var r=[],o=2;o<arguments.length;o++)r[o-2]=arguments[o];try{var t=window.AlipayJSBridge,i=R.apply(void 0,c([e,n],a(r),!1));null==t||t.call("H5APLog",{content:i})}catch(e){console.error(e)}}function E(e,n){for(var r=[],o=2;o<arguments.length;o++)r[o-2]=arguments[o];try{var t=window.AlipayJSBridge;null==t||t.call("localLog",{anr_info:"mars",message:n+r.join(""),level:e})}catch(e){console.error(e)}}function R(e,n){for(var r=[],o=2;o<arguments.length;o++)r[o-2]=arguments[o];var t=["<MARS_PLAYER>","(".concat(e,"):"),n];return r.forEach((function(e){t.push(e+"")})),t.join(" ")}n.logger.register((function(e,r){for(var o=[],t=2;t<arguments.length;t++)o[t-2]=arguments[t];n.isAndroid()?E.apply(void 0,c([e,"".concat("[Galacean Effects]"," ").concat(r)],a(o),!1)):n.isIOS()&&A.apply(void 0,c([e,r],a(o),!1))}));var O="2.0.0-alpha.
|
|
8
|
+
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@galacean/effects")):"function"==typeof define&&define.amd?define(["exports","@galacean/effects"],n):n(((e="undefined"!=typeof globalThis?globalThis:e||self).ge=e.ge||{},e.ge.alipayDowngradePlugin={}),e.ge)}(this,(function(e,n){"use strict";var r=function(e,n){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,n){e.__proto__=n}||function(e,n){for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])},r(e,n)};function o(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function o(){this.constructor=e}r(e,n),e.prototype=null===n?Object.create(n):(o.prototype=n.prototype,new o)}function t(e,n,r,o){return new(r||(r=Promise))((function(t,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function c(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var n;e.done?t(e.value):(n=e.value,n instanceof r?n:new r((function(e){e(n)}))).then(a,c)}l((o=o.apply(e,n||[])).next())}))}function i(e,n){var r,o,t,i,a={label:0,sent:function(){if(1&t[0])throw t[1];return t[1]},trys:[],ops:[]};return i={next:c(0),throw:c(1),return:c(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function c(c){return function(l){return function(c){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,c[0]&&(a=0)),a;)try{if(r=1,o&&(t=2&c[0]?o.return:c[0]?o.throw||((t=o.return)&&t.call(o),0):o.next)&&!(t=t.call(o,c[1])).done)return t;switch(o=0,t&&(c=[2&c[0],t.value]),c[0]){case 0:case 1:t=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,o=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(t=a.trys,(t=t.length>0&&t[t.length-1])||6!==c[0]&&2!==c[0])){a=0;continue}if(3===c[0]&&(!t||c[1]>t[0]&&c[1]<t[3])){a.label=c[1];break}if(6===c[0]&&a.label<t[1]){a.label=t[1],t=c;break}if(t&&a.label<t[2]){a.label=t[2],a.ops.push(c);break}t[2]&&a.ops.pop(),a.trys.pop();continue}c=n.call(e,a)}catch(e){c=[6,e],o=0}finally{r=t=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}([c,l])}}}function a(e,n){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var o,t,i=r.call(e),a=[];try{for(;(void 0===n||n-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){t={error:e}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(t)throw t.error}}return a}function c(e,n,r){if(r||2===arguments.length)for(var o,t=0,i=n.length;t<i;t++)!o&&t in n||(o||(o=Array.prototype.slice.call(n,0,t)),o[t]=n[t]);return e.concat(o||Array.prototype.slice.call(n))}"function"==typeof SuppressedError&&SuppressedError;var l=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return o(n,e),n}(n.VFXItem),s="mock-fail",u="high",d="medium",f="low",v=!1;function p(){return t(this,void 0,void 0,(function(){return i(this,(function(e){return[2,new Promise((function(e,n){var r=window.AlipayJSBridge;r?r.call("getSystemInfo",(function(r){r.error?n(r):e(r)})):n("no ap")}))]}))}))}var g=new(function(){function e(){this.isIOS=!1,this.model="DESKTOP_DEBUG",this.deviceLevel="none",this.isDowngrade=!1}return e.prototype.getRenderLevel=function(){return this.deviceLevel===u?n.spec.RenderLevel.S:this.deviceLevel===d?n.spec.RenderLevel.A:this.deviceLevel===f?n.spec.RenderLevel.B:this.isIOS?n.spec.RenderLevel.S:n.spec.RenderLevel.B},e.prototype.hasDeviceLevel=function(){return m(this.deviceLevel)},e.prototype.setBySystemInfo=function(e){var n=e.performance,r=e.platform,o=e.model,t=void 0===o?"UNKNOWN_DEVICE":o;this.isIOS="iOS"===r,this.model=t,n&&!this.hasDeviceLevel()&&(this.deviceLevel=n)},e.prototype.updateDeviceLevel=function(){if(!this.hasDeviceLevel()&&/iPhone(\d+),/.test(this.model)){var e=+RegExp.$1;this.deviceLevel=e<=9?f:e<10?d:u}},e.prototype.getDeviceInfo=function(){return{isIOS:this.isIOS,model:this.model,deviceLevel:this.deviceLevel}},e}());function y(e){if(e.mock){var r=e.mock,o=r.downgrade,t=r.deviceLevel,i=void 0===t?u:t;return g.deviceLevel=i,{downgrade:o,reason:"mock"}}return e.noAlipayEnv?{downgrade:!1,reason:"no AP env"}:e.systemInfo?e.downgradeResult?(g.setBySystemInfo(e.systemInfo),function(e){var r=void 0,o=void 0;if(e.error)return{downgrade:4!==e.error,reason:"api error: "+e.error};try{var t=n.isString(e)?JSON.parse(e):e;if("downgradeResultType"in t?r=t.downgradeResultType:"resultType"in t&&(r=t.resultType,o=t.resultReason),e.context){var i=e.context.deviceInfo;if(i){var a=i.deviceLevel;m(a)&&(g.deviceLevel=a)}}g.updateDeviceLevel()}catch(e){console.error(e)}return void 0===r?{downgrade:!0,reason:"call downgrade fail"}:1===r?{downgrade:!0,reason:h(o)}:{downgrade:!1,reason:r}}(e.downgradeResult)):{downgrade:!1,reason:"downgradeResult is required"}:{downgrade:!1,reason:"systemInfo is required"}}function h(e){return-1===e?"".concat(e,"-no config"):0===e?"".concat(e,"-none"):1===e?"".concat(e,"-downgrade by memory"):2===e?"".concat(e,"-downgrade by crash"):3===e?"".concat(e,"-downgrade by device"):4===e?"".concat(e,"-downgrade by force"):"".concat(e)}function w(e){return e?/[ABS]/.test(e)?e:n.spec.RenderLevel.S:g.getRenderLevel()}function m(e){return e===u||e===d||e===f}var L=Symbol("@@_inter_pause");function b(e){e.target===document&&(n.logger.info("Auto pause all players with data offloaded"),n.getActivePlayers().forEach((function(e){e.paused||(e.pause({offloadTexture:!0}),e[L]=!0)})))}function S(e){e.target===document&&(n.logger.info("auto resume all players"),n.getActivePlayers().forEach((function(e){e[L]&&(e.resume(),e[L]=!1)})))}var P=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return o(n,e),n.onPlayerCreated=function(e){return t(this,void 0,void 0,(function(){return i(this,(function(r){return n.glLostOccurred?(console.warn("gl lost happened, new player will be destroyed."),[2,e.dispose()]):[2]}))}))},n.processRawJSON=function(e,r){var o;return void 0===r&&(r={}),t(this,void 0,void 0,(function(){var e,t;return i(this,(function(i){if(n.glLostOccurred)return[2,Promise.reject("gl lost happened")];if(e=null===(o=r.pluginData)||void 0===o?void 0:o.downgrade){if((t=y(e)).downgrade)throw new Error("downgraded, reason: ".concat(t.reason))}else console.warn("No downgrade result in pluginData of SceneLoadOptions");return r.renderLevel||(r.renderLevel=w(r.renderLevel)),[2]}))}))},n.glLostOccurred=!1,n}(n.AbstractPlugin);function A(e,n){for(var r=[],o=2;o<arguments.length;o++)r[o-2]=arguments[o];try{var t=window.AlipayJSBridge,i=R.apply(void 0,c([e,n],a(r),!1));null==t||t.call("H5APLog",{content:i})}catch(e){console.error(e)}}function E(e,n){for(var r=[],o=2;o<arguments.length;o++)r[o-2]=arguments[o];try{var t=window.AlipayJSBridge;null==t||t.call("localLog",{anr_info:"mars",message:n+r.join(""),level:e})}catch(e){console.error(e)}}function R(e,n){for(var r=[],o=2;o<arguments.length;o++)r[o-2]=arguments[o];var t=["<MARS_PLAYER>","(".concat(e,"):"),n];return r.forEach((function(e){t.push(e+"")})),t.join(" ")}n.logger.register((function(e,r){for(var o=[],t=2;t<arguments.length;t++)o[t-2]=arguments[t];n.isAndroid()?E.apply(void 0,c([e,"".concat("[Galacean Effects]"," ").concat(r)],a(o),!1)):n.isIOS()&&A.apply(void 0,c([e,r],a(o),!1))}));var O="2.0.0-alpha.4";n.registerPlugin("alipay-downgrade",P,l,!0),n.logger.info("plugin alipay downgrade version: "+O),e.checkDowngradeResult=y,e.getDowngradeResult=function(e,r){return void 0===r&&(r={}),t(this,void 0,void 0,(function(){var o,t;return i(this,(function(i){return v||(!function(e){var r=e.ignoreGLLost,o=e.autoPause,t=!0!==r;window.addEventListener("unload",(function(){n.getActivePlayers().forEach((function(e){return e.dispose()}))})),window.addEventListener("webglcontextlost",(function(e){n.isCanvasUsedByPlayer(e.target)&&(P.glLostOccurred=!0,console.error("webgl lost occur"),t&&(console.warn("webgl lost occur, all players will be downgraded from now on"),n.disableAllPlayer(!0),n.getActivePlayers().forEach((function(e){return e.dispose()}))))}),!0),o&&(document.addEventListener("pause",b),document.addEventListener("resume",S))}(r),v=!0),e===s||"mock-pass"===e?[2,Promise.resolve({mock:{downgrade:e===s}})]:(o=window.AlipayJSBridge)?(t=performance.now(),[2,p().then((function(n){return new Promise((function(i){var l,s=["mars"],u=r.techPoint;u&&s.push.apply(s,c([],a(u),!1));var d={bizId:e,scene:0,ext:{techPoint:s}};(null!==(l=r.callBridge)&&void 0!==l?l:o.call)("getDowngradeResult",d,(function(r){var o=performance.now()-t;console.info("downgrade time: ".concat(o,"ms")),i({bizId:e,systemInfo:n,downgradeResult:r,totalTime:o})}))}))}))]):[2,Promise.resolve({noAlipayEnv:!0})]}))}))},e.getRenderLevelByDevice=w,e.version=O,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
9
9
|
//# sourceMappingURL=index.min.js.map
|
package/dist/index.mjs
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Description: Galacean Effects player downgrade plugin for Alipay
|
|
4
4
|
* Author: Ant Group CO., Ltd.
|
|
5
5
|
* Contributors: 燃然,意绮
|
|
6
|
-
* Version: v2.0.0-alpha.
|
|
6
|
+
* Version: v2.0.0-alpha.4
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
import { VFXItem, isString, spec, getActivePlayers, isCanvasUsedByPlayer, disableAllPlayer, logger, AbstractPlugin, isAndroid, isIOS, registerPlugin } from '@galacean/effects';
|
|
@@ -510,7 +510,7 @@ function formatMessage(level, msg) {
|
|
|
510
510
|
return result.join(' ');
|
|
511
511
|
}
|
|
512
512
|
|
|
513
|
-
var version = "2.0.0-alpha.
|
|
513
|
+
var version = "2.0.0-alpha.4";
|
|
514
514
|
registerPlugin('alipay-downgrade', AlipayDowngradePlugin, DowngradeVFXItem, true);
|
|
515
515
|
logger.info('plugin alipay downgrade version: ' + version);
|
|
516
516
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@galacean/effects-plugin-alipay-downgrade",
|
|
3
|
-
"version": "2.0.0-alpha.
|
|
3
|
+
"version": "2.0.0-alpha.4",
|
|
4
4
|
"description": "Galacean Effects player downgrade plugin for Alipay",
|
|
5
5
|
"module": "./dist/index.mjs",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"registry": "https://registry.npmjs.org"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
|
-
"@galacean/effects": "2.0.0-alpha.
|
|
34
|
+
"@galacean/effects": "2.0.0-alpha.4"
|
|
35
35
|
},
|
|
36
36
|
"scripts": {
|
|
37
37
|
"dev": "vite",
|