@idraw/board
Advanced tools
Comparing version 0.2.0-alpha.13 to 0.2.0-alpha.15
@@ -344,2 +344,8 @@ 'use strict'; | ||
isDragCanvas: false, | ||
statusMap: { | ||
canScrollYPrev: true, | ||
canScrollYNext: true, | ||
canScrollXPrev: true, | ||
canScrollXNext: true, | ||
} | ||
}; | ||
@@ -364,3 +370,3 @@ } | ||
var ScreenWatcher = (function () { | ||
function ScreenWatcher(canvas) { | ||
function ScreenWatcher(canvas, ctx) { | ||
this._isMoving = false; | ||
@@ -374,2 +380,5 @@ this._temp = new TempData; | ||
} | ||
ScreenWatcher.prototype.setStatusMap = function (statusMap) { | ||
this._temp.set('statusMap', statusMap); | ||
}; | ||
ScreenWatcher.prototype.on = function (name, callback) { | ||
@@ -516,3 +525,2 @@ this._event.on(name, callback); | ||
ScreenWatcher.prototype._listenCanvasWheel = function (e) { | ||
e.preventDefault(); | ||
if (this._event.has('wheelX') && (e.deltaX > 0 || e.deltaX < 0)) { | ||
@@ -524,2 +532,12 @@ this._event.trigger('wheelX', e.deltaX); | ||
} | ||
var _a = this._temp.get('statusMap'), canScrollYNext = _a.canScrollYNext, canScrollYPrev = _a.canScrollYPrev; | ||
if (e.deltaX > 0 && e.deltaX < 0) { | ||
e.preventDefault(); | ||
} | ||
else if (e.deltaY > 0 && canScrollYNext === true) { | ||
e.preventDefault(); | ||
} | ||
else if (e.deltaY < 0 && canScrollYPrev === true) { | ||
e.preventDefault(); | ||
} | ||
}; | ||
@@ -777,2 +795,5 @@ ScreenWatcher.prototype._listenCanvasClick = function (e) { | ||
}; | ||
Context.prototype.ellipse = function (x, y, radiusX, radiusY, rotation, startAngle, endAngle, counterclockwise) { | ||
this._ctx.ellipse(this._doSize(x), this._doSize(y), this._doSize(radiusX), this._doSize(radiusY), rotation, startAngle, endAngle, counterclockwise); | ||
}; | ||
Context.prototype._doSize = function (num) { | ||
@@ -952,2 +973,6 @@ return this._opts.devicePixelRatio * num; | ||
var _a = this[_opts$1], width = _a.width, height = _a.height, contextWidth = _a.contextWidth, contextHeight = _a.contextHeight, pxRatio = _a.devicePixelRatio; | ||
var canScrollXPrev = true; | ||
var canScrollXNext = true; | ||
var canScrollYPrev = true; | ||
var canScrollYNext = true; | ||
if (contextWidth * scaleRatio <= width) { | ||
@@ -957,2 +982,4 @@ this[_ctx$1].setTransform({ | ||
}); | ||
canScrollXPrev = false; | ||
canScrollXNext = false; | ||
} | ||
@@ -963,2 +990,4 @@ if (contextHeight * scaleRatio <= height) { | ||
}); | ||
canScrollYPrev = false; | ||
canScrollYNext = false; | ||
} | ||
@@ -969,2 +998,3 @@ if (contextWidth * scaleRatio >= width && this[_ctx$1].getTransform().scrollX > 0) { | ||
}); | ||
canScrollXPrev = false; | ||
} | ||
@@ -975,2 +1005,3 @@ if (contextHeight * scaleRatio >= height && this[_ctx$1].getTransform().scrollY > 0) { | ||
}); | ||
canScrollYPrev = false; | ||
} | ||
@@ -982,2 +1013,3 @@ var _b = this[_ctx$1].getTransform(), _scrollX = _b.scrollX, _scrollY = _b.scrollY; | ||
}); | ||
canScrollXNext = false; | ||
} | ||
@@ -988,2 +1020,3 @@ if (_scrollY < 0 && Math.abs(_scrollY) > Math.abs(contextHeight * scaleRatio - height)) { | ||
}); | ||
canScrollYNext = false; | ||
} | ||
@@ -1016,2 +1049,6 @@ var _c = this[_ctx$1].getTransform(), scrollX = _c.scrollX, scrollY = _c.scrollY; | ||
devicePixelRatio: this[_opts$1].devicePixelRatio, | ||
canScrollYPrev: canScrollYPrev, | ||
canScrollYNext: canScrollYNext, | ||
canScrollXPrev: canScrollXPrev, | ||
canScrollXNext: canScrollXNext, | ||
}; | ||
@@ -1068,3 +1105,3 @@ }; | ||
this[_screen] = new Screen(this[_ctx], this[_opts]); | ||
this[_watcher] = new ScreenWatcher(this[_displayCanvas]); | ||
this[_watcher] = new ScreenWatcher(this[_displayCanvas], this[_ctx]); | ||
this[_scroller] = new Scroller(this[_displayCtx], { | ||
@@ -1095,13 +1132,37 @@ width: opts.width, | ||
Board.prototype.scrollX = function (x) { | ||
this[_watcher].setStatusMap({ | ||
canScrollYPrev: true, | ||
canScrollYNext: true, | ||
canScrollXPrev: true, | ||
canScrollXNext: true, | ||
}); | ||
if (x >= 0 || x < 0) { | ||
this[_ctx].setTransform({ scrollX: x }); | ||
} | ||
var _b = this[_screen].calcScreen(), position = _b.position, size = _b.size; | ||
var _b = this[_screen].calcScreen(), position = _b.position, size = _b.size, canScrollXNext = _b.canScrollXNext, canScrollYNext = _b.canScrollYNext, canScrollXPrev = _b.canScrollXPrev, canScrollYPrev = _b.canScrollYPrev; | ||
this[_watcher].setStatusMap({ | ||
canScrollYPrev: canScrollYPrev, | ||
canScrollYNext: canScrollYNext, | ||
canScrollXPrev: canScrollXPrev, | ||
canScrollXNext: canScrollXNext, | ||
}); | ||
return { position: position, size: size }; | ||
}; | ||
Board.prototype.scrollY = function (y) { | ||
this[_watcher].setStatusMap({ | ||
canScrollYPrev: true, | ||
canScrollYNext: true, | ||
canScrollXPrev: true, | ||
canScrollXNext: true, | ||
}); | ||
if (y >= 0 || y < 0) { | ||
this[_ctx].setTransform({ scrollY: y }); | ||
} | ||
var _b = this[_screen].calcScreen(), position = _b.position, size = _b.size; | ||
var _b = this[_screen].calcScreen(), position = _b.position, size = _b.size, canScrollXNext = _b.canScrollXNext, canScrollYNext = _b.canScrollYNext, canScrollXPrev = _b.canScrollXPrev, canScrollYPrev = _b.canScrollYPrev; | ||
this[_watcher].setStatusMap({ | ||
canScrollYPrev: canScrollYPrev, | ||
canScrollYNext: canScrollYNext, | ||
canScrollXPrev: canScrollXPrev, | ||
canScrollXNext: canScrollXNext, | ||
}); | ||
return { position: position, size: size }; | ||
@@ -1108,0 +1169,0 @@ }; |
@@ -127,2 +127,3 @@ import { TypeBoardOptions } from '@idraw/types'; | ||
setShadowBlur(blur: number): void; | ||
ellipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, counterclockwise?: boolean | undefined): void; | ||
private _doSize; | ||
@@ -129,0 +130,0 @@ private _doX; |
@@ -342,2 +342,8 @@ var __assign = function() { | ||
isDragCanvas: false, | ||
statusMap: { | ||
canScrollYPrev: true, | ||
canScrollYNext: true, | ||
canScrollXPrev: true, | ||
canScrollXNext: true, | ||
} | ||
}; | ||
@@ -362,3 +368,3 @@ } | ||
var ScreenWatcher = (function () { | ||
function ScreenWatcher(canvas) { | ||
function ScreenWatcher(canvas, ctx) { | ||
this._isMoving = false; | ||
@@ -372,2 +378,5 @@ this._temp = new TempData; | ||
} | ||
ScreenWatcher.prototype.setStatusMap = function (statusMap) { | ||
this._temp.set('statusMap', statusMap); | ||
}; | ||
ScreenWatcher.prototype.on = function (name, callback) { | ||
@@ -514,3 +523,2 @@ this._event.on(name, callback); | ||
ScreenWatcher.prototype._listenCanvasWheel = function (e) { | ||
e.preventDefault(); | ||
if (this._event.has('wheelX') && (e.deltaX > 0 || e.deltaX < 0)) { | ||
@@ -522,2 +530,12 @@ this._event.trigger('wheelX', e.deltaX); | ||
} | ||
var _a = this._temp.get('statusMap'), canScrollYNext = _a.canScrollYNext, canScrollYPrev = _a.canScrollYPrev; | ||
if (e.deltaX > 0 && e.deltaX < 0) { | ||
e.preventDefault(); | ||
} | ||
else if (e.deltaY > 0 && canScrollYNext === true) { | ||
e.preventDefault(); | ||
} | ||
else if (e.deltaY < 0 && canScrollYPrev === true) { | ||
e.preventDefault(); | ||
} | ||
}; | ||
@@ -775,2 +793,5 @@ ScreenWatcher.prototype._listenCanvasClick = function (e) { | ||
}; | ||
Context.prototype.ellipse = function (x, y, radiusX, radiusY, rotation, startAngle, endAngle, counterclockwise) { | ||
this._ctx.ellipse(this._doSize(x), this._doSize(y), this._doSize(radiusX), this._doSize(radiusY), rotation, startAngle, endAngle, counterclockwise); | ||
}; | ||
Context.prototype._doSize = function (num) { | ||
@@ -950,2 +971,6 @@ return this._opts.devicePixelRatio * num; | ||
var _a = this[_opts$1], width = _a.width, height = _a.height, contextWidth = _a.contextWidth, contextHeight = _a.contextHeight, pxRatio = _a.devicePixelRatio; | ||
var canScrollXPrev = true; | ||
var canScrollXNext = true; | ||
var canScrollYPrev = true; | ||
var canScrollYNext = true; | ||
if (contextWidth * scaleRatio <= width) { | ||
@@ -955,2 +980,4 @@ this[_ctx$1].setTransform({ | ||
}); | ||
canScrollXPrev = false; | ||
canScrollXNext = false; | ||
} | ||
@@ -961,2 +988,4 @@ if (contextHeight * scaleRatio <= height) { | ||
}); | ||
canScrollYPrev = false; | ||
canScrollYNext = false; | ||
} | ||
@@ -967,2 +996,3 @@ if (contextWidth * scaleRatio >= width && this[_ctx$1].getTransform().scrollX > 0) { | ||
}); | ||
canScrollXPrev = false; | ||
} | ||
@@ -973,2 +1003,3 @@ if (contextHeight * scaleRatio >= height && this[_ctx$1].getTransform().scrollY > 0) { | ||
}); | ||
canScrollYPrev = false; | ||
} | ||
@@ -980,2 +1011,3 @@ var _b = this[_ctx$1].getTransform(), _scrollX = _b.scrollX, _scrollY = _b.scrollY; | ||
}); | ||
canScrollXNext = false; | ||
} | ||
@@ -986,2 +1018,3 @@ if (_scrollY < 0 && Math.abs(_scrollY) > Math.abs(contextHeight * scaleRatio - height)) { | ||
}); | ||
canScrollYNext = false; | ||
} | ||
@@ -1014,2 +1047,6 @@ var _c = this[_ctx$1].getTransform(), scrollX = _c.scrollX, scrollY = _c.scrollY; | ||
devicePixelRatio: this[_opts$1].devicePixelRatio, | ||
canScrollYPrev: canScrollYPrev, | ||
canScrollYNext: canScrollYNext, | ||
canScrollXPrev: canScrollXPrev, | ||
canScrollXNext: canScrollXNext, | ||
}; | ||
@@ -1066,3 +1103,3 @@ }; | ||
this[_screen] = new Screen(this[_ctx], this[_opts]); | ||
this[_watcher] = new ScreenWatcher(this[_displayCanvas]); | ||
this[_watcher] = new ScreenWatcher(this[_displayCanvas], this[_ctx]); | ||
this[_scroller] = new Scroller(this[_displayCtx], { | ||
@@ -1093,13 +1130,37 @@ width: opts.width, | ||
Board.prototype.scrollX = function (x) { | ||
this[_watcher].setStatusMap({ | ||
canScrollYPrev: true, | ||
canScrollYNext: true, | ||
canScrollXPrev: true, | ||
canScrollXNext: true, | ||
}); | ||
if (x >= 0 || x < 0) { | ||
this[_ctx].setTransform({ scrollX: x }); | ||
} | ||
var _b = this[_screen].calcScreen(), position = _b.position, size = _b.size; | ||
var _b = this[_screen].calcScreen(), position = _b.position, size = _b.size, canScrollXNext = _b.canScrollXNext, canScrollYNext = _b.canScrollYNext, canScrollXPrev = _b.canScrollXPrev, canScrollYPrev = _b.canScrollYPrev; | ||
this[_watcher].setStatusMap({ | ||
canScrollYPrev: canScrollYPrev, | ||
canScrollYNext: canScrollYNext, | ||
canScrollXPrev: canScrollXPrev, | ||
canScrollXNext: canScrollXNext, | ||
}); | ||
return { position: position, size: size }; | ||
}; | ||
Board.prototype.scrollY = function (y) { | ||
this[_watcher].setStatusMap({ | ||
canScrollYPrev: true, | ||
canScrollYNext: true, | ||
canScrollXPrev: true, | ||
canScrollXNext: true, | ||
}); | ||
if (y >= 0 || y < 0) { | ||
this[_ctx].setTransform({ scrollY: y }); | ||
} | ||
var _b = this[_screen].calcScreen(), position = _b.position, size = _b.size; | ||
var _b = this[_screen].calcScreen(), position = _b.position, size = _b.size, canScrollXNext = _b.canScrollXNext, canScrollYNext = _b.canScrollYNext, canScrollXPrev = _b.canScrollXPrev, canScrollYPrev = _b.canScrollYPrev; | ||
this[_watcher].setStatusMap({ | ||
canScrollYPrev: canScrollYPrev, | ||
canScrollYNext: canScrollYNext, | ||
canScrollXPrev: canScrollXPrev, | ||
canScrollXNext: canScrollXNext, | ||
}); | ||
return { position: position, size: size }; | ||
@@ -1106,0 +1167,0 @@ }; |
@@ -345,2 +345,8 @@ var iDrawBoard = (function () { | ||
isDragCanvas: false, | ||
statusMap: { | ||
canScrollYPrev: true, | ||
canScrollYNext: true, | ||
canScrollXPrev: true, | ||
canScrollXNext: true, | ||
} | ||
}; | ||
@@ -365,3 +371,3 @@ } | ||
var ScreenWatcher = (function () { | ||
function ScreenWatcher(canvas) { | ||
function ScreenWatcher(canvas, ctx) { | ||
this._isMoving = false; | ||
@@ -375,2 +381,5 @@ this._temp = new TempData; | ||
} | ||
ScreenWatcher.prototype.setStatusMap = function (statusMap) { | ||
this._temp.set('statusMap', statusMap); | ||
}; | ||
ScreenWatcher.prototype.on = function (name, callback) { | ||
@@ -517,3 +526,2 @@ this._event.on(name, callback); | ||
ScreenWatcher.prototype._listenCanvasWheel = function (e) { | ||
e.preventDefault(); | ||
if (this._event.has('wheelX') && (e.deltaX > 0 || e.deltaX < 0)) { | ||
@@ -525,2 +533,12 @@ this._event.trigger('wheelX', e.deltaX); | ||
} | ||
var _a = this._temp.get('statusMap'), canScrollYNext = _a.canScrollYNext, canScrollYPrev = _a.canScrollYPrev; | ||
if (e.deltaX > 0 && e.deltaX < 0) { | ||
e.preventDefault(); | ||
} | ||
else if (e.deltaY > 0 && canScrollYNext === true) { | ||
e.preventDefault(); | ||
} | ||
else if (e.deltaY < 0 && canScrollYPrev === true) { | ||
e.preventDefault(); | ||
} | ||
}; | ||
@@ -778,2 +796,5 @@ ScreenWatcher.prototype._listenCanvasClick = function (e) { | ||
}; | ||
Context.prototype.ellipse = function (x, y, radiusX, radiusY, rotation, startAngle, endAngle, counterclockwise) { | ||
this._ctx.ellipse(this._doSize(x), this._doSize(y), this._doSize(radiusX), this._doSize(radiusY), rotation, startAngle, endAngle, counterclockwise); | ||
}; | ||
Context.prototype._doSize = function (num) { | ||
@@ -953,2 +974,6 @@ return this._opts.devicePixelRatio * num; | ||
var _a = this[_opts$1], width = _a.width, height = _a.height, contextWidth = _a.contextWidth, contextHeight = _a.contextHeight, pxRatio = _a.devicePixelRatio; | ||
var canScrollXPrev = true; | ||
var canScrollXNext = true; | ||
var canScrollYPrev = true; | ||
var canScrollYNext = true; | ||
if (contextWidth * scaleRatio <= width) { | ||
@@ -958,2 +983,4 @@ this[_ctx$1].setTransform({ | ||
}); | ||
canScrollXPrev = false; | ||
canScrollXNext = false; | ||
} | ||
@@ -964,2 +991,4 @@ if (contextHeight * scaleRatio <= height) { | ||
}); | ||
canScrollYPrev = false; | ||
canScrollYNext = false; | ||
} | ||
@@ -970,2 +999,3 @@ if (contextWidth * scaleRatio >= width && this[_ctx$1].getTransform().scrollX > 0) { | ||
}); | ||
canScrollXPrev = false; | ||
} | ||
@@ -976,2 +1006,3 @@ if (contextHeight * scaleRatio >= height && this[_ctx$1].getTransform().scrollY > 0) { | ||
}); | ||
canScrollYPrev = false; | ||
} | ||
@@ -983,2 +1014,3 @@ var _b = this[_ctx$1].getTransform(), _scrollX = _b.scrollX, _scrollY = _b.scrollY; | ||
}); | ||
canScrollXNext = false; | ||
} | ||
@@ -989,2 +1021,3 @@ if (_scrollY < 0 && Math.abs(_scrollY) > Math.abs(contextHeight * scaleRatio - height)) { | ||
}); | ||
canScrollYNext = false; | ||
} | ||
@@ -1017,2 +1050,6 @@ var _c = this[_ctx$1].getTransform(), scrollX = _c.scrollX, scrollY = _c.scrollY; | ||
devicePixelRatio: this[_opts$1].devicePixelRatio, | ||
canScrollYPrev: canScrollYPrev, | ||
canScrollYNext: canScrollYNext, | ||
canScrollXPrev: canScrollXPrev, | ||
canScrollXNext: canScrollXNext, | ||
}; | ||
@@ -1069,3 +1106,3 @@ }; | ||
this[_screen] = new Screen(this[_ctx], this[_opts]); | ||
this[_watcher] = new ScreenWatcher(this[_displayCanvas]); | ||
this[_watcher] = new ScreenWatcher(this[_displayCanvas], this[_ctx]); | ||
this[_scroller] = new Scroller(this[_displayCtx], { | ||
@@ -1096,13 +1133,37 @@ width: opts.width, | ||
Board.prototype.scrollX = function (x) { | ||
this[_watcher].setStatusMap({ | ||
canScrollYPrev: true, | ||
canScrollYNext: true, | ||
canScrollXPrev: true, | ||
canScrollXNext: true, | ||
}); | ||
if (x >= 0 || x < 0) { | ||
this[_ctx].setTransform({ scrollX: x }); | ||
} | ||
var _b = this[_screen].calcScreen(), position = _b.position, size = _b.size; | ||
var _b = this[_screen].calcScreen(), position = _b.position, size = _b.size, canScrollXNext = _b.canScrollXNext, canScrollYNext = _b.canScrollYNext, canScrollXPrev = _b.canScrollXPrev, canScrollYPrev = _b.canScrollYPrev; | ||
this[_watcher].setStatusMap({ | ||
canScrollYPrev: canScrollYPrev, | ||
canScrollYNext: canScrollYNext, | ||
canScrollXPrev: canScrollXPrev, | ||
canScrollXNext: canScrollXNext, | ||
}); | ||
return { position: position, size: size }; | ||
}; | ||
Board.prototype.scrollY = function (y) { | ||
this[_watcher].setStatusMap({ | ||
canScrollYPrev: true, | ||
canScrollYNext: true, | ||
canScrollXPrev: true, | ||
canScrollXNext: true, | ||
}); | ||
if (y >= 0 || y < 0) { | ||
this[_ctx].setTransform({ scrollY: y }); | ||
} | ||
var _b = this[_screen].calcScreen(), position = _b.position, size = _b.size; | ||
var _b = this[_screen].calcScreen(), position = _b.position, size = _b.size, canScrollXNext = _b.canScrollXNext, canScrollYNext = _b.canScrollYNext, canScrollXPrev = _b.canScrollXPrev, canScrollYPrev = _b.canScrollYPrev; | ||
this[_watcher].setStatusMap({ | ||
canScrollYPrev: canScrollYPrev, | ||
canScrollYNext: canScrollYNext, | ||
canScrollXPrev: canScrollXPrev, | ||
canScrollXNext: canScrollXNext, | ||
}); | ||
return { position: position, size: size }; | ||
@@ -1109,0 +1170,0 @@ }; |
{ | ||
"name": "@idraw/board", | ||
"version": "0.2.0-alpha.13", | ||
"version": "0.2.0-alpha.15", | ||
"description": "", | ||
@@ -26,6 +26,6 @@ "main": "dist/index.cjs.js", | ||
"devDependencies": { | ||
"@idraw/types": "^0.2.0-alpha.13" | ||
"@idraw/types": "^0.2.0-alpha.15" | ||
}, | ||
"dependencies": { | ||
"@idraw/util": "^0.2.0-alpha.13" | ||
"@idraw/util": "^0.2.0-alpha.15" | ||
}, | ||
@@ -35,3 +35,3 @@ "publishConfig": { | ||
}, | ||
"gitHead": "9a355881c45754bc8d93c8ac27e39d9a89a22fde" | ||
"gitHead": "a8afbdd95d795455336d4ea72a941419aa39394e" | ||
} |
191158
8
4185
Updated@idraw/util@^0.2.0-alpha.15