1
This commit is contained in:
64
bourse_app/node_modules/fancy-canvas/device-pixel-ratio.js
generated
vendored
Normal file
64
bourse_app/node_modules/fancy-canvas/device-pixel-ratio.js
generated
vendored
Normal file
@@ -0,0 +1,64 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.createObservable = void 0;
|
||||
var Observable = /** @class */ (function () {
|
||||
function Observable(win) {
|
||||
var _this = this;
|
||||
this._resolutionListener = function () { return _this._onResolutionChanged(); };
|
||||
this._resolutionMediaQueryList = null;
|
||||
this._observers = [];
|
||||
this._window = win;
|
||||
this._installResolutionListener();
|
||||
}
|
||||
Observable.prototype.dispose = function () {
|
||||
this._uninstallResolutionListener();
|
||||
this._window = null;
|
||||
};
|
||||
Object.defineProperty(Observable.prototype, "value", {
|
||||
get: function () {
|
||||
return this._window.devicePixelRatio;
|
||||
},
|
||||
enumerable: false,
|
||||
configurable: true
|
||||
});
|
||||
Observable.prototype.subscribe = function (next) {
|
||||
var _this = this;
|
||||
var observer = { next: next };
|
||||
this._observers.push(observer);
|
||||
return {
|
||||
unsubscribe: function () {
|
||||
_this._observers = _this._observers.filter(function (o) { return o !== observer; });
|
||||
},
|
||||
};
|
||||
};
|
||||
Observable.prototype._installResolutionListener = function () {
|
||||
if (this._resolutionMediaQueryList !== null) {
|
||||
throw new Error('Resolution listener is already installed');
|
||||
}
|
||||
var dppx = this._window.devicePixelRatio;
|
||||
this._resolutionMediaQueryList = this._window.matchMedia("all and (resolution: ".concat(dppx, "dppx)"));
|
||||
// IE and some versions of Edge do not support addEventListener/removeEventListener, and we are going to use the deprecated addListener/removeListener
|
||||
this._resolutionMediaQueryList.addListener(this._resolutionListener);
|
||||
};
|
||||
Observable.prototype._uninstallResolutionListener = function () {
|
||||
if (this._resolutionMediaQueryList !== null) {
|
||||
// IE and some versions of Edge do not support addEventListener/removeEventListener, and we are going to use the deprecated addListener/removeListener
|
||||
this._resolutionMediaQueryList.removeListener(this._resolutionListener);
|
||||
this._resolutionMediaQueryList = null;
|
||||
}
|
||||
};
|
||||
Observable.prototype._reinstallResolutionListener = function () {
|
||||
this._uninstallResolutionListener();
|
||||
this._installResolutionListener();
|
||||
};
|
||||
Observable.prototype._onResolutionChanged = function () {
|
||||
var _this = this;
|
||||
this._observers.forEach(function (observer) { return observer.next(_this._window.devicePixelRatio); });
|
||||
this._reinstallResolutionListener();
|
||||
};
|
||||
return Observable;
|
||||
}());
|
||||
function createObservable(win) {
|
||||
return new Observable(win);
|
||||
}
|
||||
exports.createObservable = createObservable;
|
||||
Reference in New Issue
Block a user