@litecanvas/plugin-migrate 0.0.3 → 0.1.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.
- package/README.md +4 -1
- package/dist/dist.js +1 -1
- package/package.json +3 -2
- package/src/index.js +20 -3
package/README.md
CHANGED
package/dist/dist.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(()=>{var
|
|
1
|
+
(()=>{var o=(r,a="Assertion failed")=>{if(!r)throw new Error(a)};var _=(r,a,c,n,s,p,f,b)=>(o(isFinite(r),"colrect: 1st param must be a number"),o(isFinite(a),"colrect: 2nd param must be a number"),o(isFinite(c),"colrect: 3rd param must be a number"),o(isFinite(n),"colrect: 4th param must be a number"),o(isFinite(s),"colrect: 5th param must be a number"),o(isFinite(p),"colrect: 6th param must be a number"),o(isFinite(f),"colrect: 7th param must be a number"),o(isFinite(b),"colrect: 8th param must be a number"),r<s+f&&r+c>s&&a<p+b&&a+n>p);var x=(r,a,c,n,s,p)=>(o(isFinite(r),"colcirc: 1st param must be a number"),o(isFinite(a),"colcirc: 2nd param must be a number"),o(isFinite(c),"colcirc: 3rd param must be a number"),o(isFinite(n),"colcirc: 4th param must be a number"),o(isFinite(s),"colcirc: 5th param must be a number"),o(isFinite(p),"colcirc: 6th param must be a number"),(n-r)*(n-r)+(s-a)*(s-a)<=(c+p)*(c+p));var dt=2*Math.PI;var N=advance=(r,a,c,n=1)=>{c&&(a.x+=c.x*n,a.y+=c.y*n),r.x+=a.x*n,r.y+=a.y*n};var ee=Math.PI/2;var D=4,ae=1<<D,z=8,ne=1<<z;var B={warnings:!0};function g(r,a={}){if(a=Object.assign({},B,a),r.stat(1))throw'Plugin Migrate should be loaded before the "init" event';let n=r.stat(0);function s(t,e,u=""){a.warnings&&console.warn(`[Migrate] warning: ${t} is removed. `+(e?`Use ${e} instead. `:"")+u)}function p(t){return s("seed()","rseed()"),t&&r.rseed(t),r.stat(9)}let f="";function b(t){s("textstyle()","the 5th param of text()"),f=t}let M=r.text;function y(t,e,u,h=3,m=f){M(t,e,u,h,m)}function E(t,e,u,h){s("print()","text()"),y(t,e,u,h)}function T(t,e){s("textmetrics()","ctx().measureText()");let u=r.ctx(),h=r.stat(10),m=r.stat(11);u.font=`${f||""} ${~~(e||h)}px ${m}`;let d=u.measureText(t);return d.height=d.actualBoundingBoxAscent+d.actualBoundingBoxDescent,d}function A(t,e,u,h){s("cliprect()","clip()");let m=r.ctx();m.beginPath(),m.rect(t,e,u,h),m.clip()}function C(t,e,u){s("clipcirc()","clip()");let h=r.ctx();h.beginPath(),h.arc(t,e,u,0,r.TWO_PI),h.clip()}function I(t){s("getcolor()","stat(5)");let e=stat(5);return e[~~t%e.length]}function k(t){s("blendmode()","ctx().globalCompositeOperation");let e=r.ctx();e.globalCompositeOperation=t}function P(t){s("clear()","cls()"),r.cls(t)}function S(t,e,u,h,m,d,X=!0){return s("transform()","ctx().setTransform() or ctx().transform()"),r.ctx()[X?"setTransform":"transform"](t,e,u,h,m,d)}function O(){return s("mousepos()","MX and MY"),[MX,MY]}function L(t){s("setfps()","framerate()"),r.framerate(t)}let i=r.def;function l(t,e){switch(t){case"W":case"WIDTH":i("W",e),i("WIDTH",e);break;case"H":case"HEIGHT":i("H",e),i("HEIGHT",e);break;case"T":case"ELAPSED":i("T",e),i("ELAPSED",e);break;case"CX":case"CENTERX":i("CX",e),i("CENTERX",e);break;case"CY":case"CENTERY":i("CY",e),i("CENTERY",e);break;case"MX":case"MOUSEX":i("MX",e),i("MOUSEX",e);break;case"MY":case"MOUSEY":i("MY",e),i("MOUSEY",e);break;default:i(t,e);break}}function Y(t,e){s("setvar()","def()"),l(t,e)}r.listen("resized",w);function w(){l("CX",r.W/2),l("CY",r.H/2)}w(),l("CANVAS",r.canvas());function R(t,e){if(n.autoscale)throw"resize() don't works with autoscale enabled";s("resize()",null,"Avoid changing the canvas dimensions at runtime."),r.CANVAS.width=t,l("W",t),l("CX",t/2),r.CANVAS.height=e,l("H",e),l("CY",e/2),r.emit("resized",1)}for(let t of["W","H","T","CX","CY","MX","MY"])r[t]!=null&&l(t,r[t]);if(s("FPS","some library to measure the FPS","Recommendation: https://github.com/mrdoob/stats.js/"),i("FPS",""),n.fps&&r.framerate(n.fps),n.background>=0){let t=stat(5);r.CANVAS.style.backgroundColor=t[~~n.background%t.length]}return{def:l,seed:p,print:E,clear:P,setfps:L,setvar:Y,textstyle:b,textmetrics:T,text:y,cliprect:A,clipcirc:C,blendmode:k,transform:S,getcolor:I,mousepos:O,resize:R,colrect:_,colcirc:x}}window.pluginMigrate=g;})();
|
|
2
2
|
/*! pluginMigrate for litecanvas v0.0.1 by Luiz Bills | MIT Licensed */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@litecanvas/plugin-migrate",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.1.0",
|
|
4
4
|
"description": "Sometimes upgrading litecanvas to a new version can be a lot of work. This plugin makes this easier, by restoring the Litecanvas APIs that were removed in newer versions, and additionally shows warnings in the browser console when removed and/or deprecated APIs are used.",
|
|
5
5
|
"author": "Luiz Bills <luizbills@pm.me>",
|
|
6
6
|
"license": "MIT",
|
|
@@ -25,7 +25,8 @@
|
|
|
25
25
|
"esbuild": "^0.25.5"
|
|
26
26
|
},
|
|
27
27
|
"peerDependencies": {
|
|
28
|
-
"litecanvas": "latest"
|
|
28
|
+
"litecanvas": "latest",
|
|
29
|
+
"@litecanvas/utils": "latest"
|
|
29
30
|
},
|
|
30
31
|
"files": [
|
|
31
32
|
"dist",
|
package/src/index.js
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import "litecanvas"
|
|
2
2
|
|
|
3
|
+
import { colrect, colcirc } from "@litecanvas/utils"
|
|
4
|
+
|
|
3
5
|
const defaults = {
|
|
4
|
-
|
|
6
|
+
warnings: true,
|
|
5
7
|
}
|
|
6
8
|
|
|
7
9
|
/**
|
|
@@ -21,7 +23,7 @@ export default function plugin(engine, config = {}) {
|
|
|
21
23
|
const settings = engine.stat(0)
|
|
22
24
|
|
|
23
25
|
function warn(old, current, extra = "") {
|
|
24
|
-
if (
|
|
26
|
+
if (config.warnings)
|
|
25
27
|
console.warn(
|
|
26
28
|
`[Migrate] warning: ${old} is removed. ` +
|
|
27
29
|
(current ? `Use ${current} instead. ` : "") +
|
|
@@ -95,7 +97,7 @@ export default function plugin(engine, config = {}) {
|
|
|
95
97
|
|
|
96
98
|
function clear(color) {
|
|
97
99
|
warn("clear()", "cls()")
|
|
98
|
-
engine.cls(
|
|
100
|
+
engine.cls(color)
|
|
99
101
|
}
|
|
100
102
|
|
|
101
103
|
function transform(a, b, c, d, e, f, resetFirst = true) {
|
|
@@ -163,6 +165,17 @@ export default function plugin(engine, config = {}) {
|
|
|
163
165
|
_def(key, value)
|
|
164
166
|
}
|
|
165
167
|
|
|
168
|
+
// restore CX and CY removed in v0.84
|
|
169
|
+
engine.listen("resized", onResize)
|
|
170
|
+
function onResize() {
|
|
171
|
+
_def("CX", engine.W / 2)
|
|
172
|
+
_def("CY", engine.H / 2)
|
|
173
|
+
}
|
|
174
|
+
onResize()
|
|
175
|
+
|
|
176
|
+
// restore CANVAS removed in v0.84
|
|
177
|
+
_def("CANVAS", engine.canvas())
|
|
178
|
+
|
|
166
179
|
function resize(width, height) {
|
|
167
180
|
if (settings.autoscale) {
|
|
168
181
|
throw "resize() don't works with autoscale enabled"
|
|
@@ -220,5 +233,9 @@ export default function plugin(engine, config = {}) {
|
|
|
220
233
|
getcolor,
|
|
221
234
|
mousepos,
|
|
222
235
|
resize,
|
|
236
|
+
|
|
237
|
+
// restore collision utils
|
|
238
|
+
colrect,
|
|
239
|
+
colcirc,
|
|
223
240
|
}
|
|
224
241
|
}
|