57 lines
1.7 KiB
JavaScript
57 lines
1.7 KiB
JavaScript
var PI_OVER_180 = Math.PI / 180;
|
|
function detectBrowser() {
|
|
return (typeof window !== 'undefined' &&
|
|
({}.toString.call(window) === '[object Window]' ||
|
|
{}.toString.call(window) === '[object global]'));
|
|
}
|
|
export const glob = typeof global !== 'undefined'
|
|
? global
|
|
: typeof window !== 'undefined'
|
|
? window
|
|
: typeof WorkerGlobalScope !== 'undefined'
|
|
? self
|
|
: {};
|
|
export const Konva = {
|
|
_global: glob,
|
|
version: '8.2.2',
|
|
isBrowser: detectBrowser(),
|
|
isUnminified: /param/.test(function (param) { }.toString()),
|
|
dblClickWindow: 400,
|
|
getAngle(angle) {
|
|
return Konva.angleDeg ? angle * PI_OVER_180 : angle;
|
|
},
|
|
enableTrace: false,
|
|
pointerEventsEnabled: true,
|
|
autoDrawEnabled: true,
|
|
hitOnDragEnabled: false,
|
|
capturePointerEventsEnabled: false,
|
|
_mouseListenClick: false,
|
|
_touchListenClick: false,
|
|
_pointerListenClick: false,
|
|
_mouseInDblClickWindow: false,
|
|
_touchInDblClickWindow: false,
|
|
_pointerInDblClickWindow: false,
|
|
_mouseDblClickPointerId: null,
|
|
_touchDblClickPointerId: null,
|
|
_pointerDblClickPointerId: null,
|
|
pixelRatio: (typeof window !== 'undefined' && window.devicePixelRatio) || 1,
|
|
dragDistance: 3,
|
|
angleDeg: true,
|
|
showWarnings: true,
|
|
dragButtons: [0, 1],
|
|
isDragging() {
|
|
return Konva['DD'].isDragging;
|
|
},
|
|
isDragReady() {
|
|
return !!Konva['DD'].node;
|
|
},
|
|
document: glob.document,
|
|
_injectGlobal(Konva) {
|
|
glob.Konva = Konva;
|
|
},
|
|
};
|
|
export const _registerNode = (NodeClass) => {
|
|
Konva[NodeClass.prototype.getClassName()] = NodeClass;
|
|
};
|
|
Konva._injectGlobal(Konva);
|