1 | import { ResizeObserverController } from './ResizeObserverController';
|
2 | import { isElement } from './utils/element';
|
3 | var ResizeObserver = (function () {
|
4 | function ResizeObserver(callback) {
|
5 | if (arguments.length === 0) {
|
6 | throw new TypeError("Failed to construct 'ResizeObserver': 1 argument required, but only 0 present.");
|
7 | }
|
8 | if (typeof callback !== 'function') {
|
9 | throw new TypeError("Failed to construct 'ResizeObserver': The callback provided as parameter 1 is not a function.");
|
10 | }
|
11 | ResizeObserverController.connect(this, callback);
|
12 | }
|
13 | ResizeObserver.prototype.observe = function (target, options) {
|
14 | if (arguments.length === 0) {
|
15 | throw new TypeError("Failed to execute 'observe' on 'ResizeObserver': 1 argument required, but only 0 present.");
|
16 | }
|
17 | if (!isElement(target)) {
|
18 | throw new TypeError("Failed to execute 'observe' on 'ResizeObserver': parameter 1 is not of type 'Element");
|
19 | }
|
20 | ResizeObserverController.observe(this, target, options);
|
21 | };
|
22 | ResizeObserver.prototype.unobserve = function (target) {
|
23 | if (arguments.length === 0) {
|
24 | throw new TypeError("Failed to execute 'unobserve' on 'ResizeObserver': 1 argument required, but only 0 present.");
|
25 | }
|
26 | if (!isElement(target)) {
|
27 | throw new TypeError("Failed to execute 'unobserve' on 'ResizeObserver': parameter 1 is not of type 'Element");
|
28 | }
|
29 | ResizeObserverController.unobserve(this, target);
|
30 | };
|
31 | ResizeObserver.prototype.disconnect = function () {
|
32 | ResizeObserverController.disconnect(this);
|
33 | };
|
34 | ResizeObserver.toString = function () {
|
35 | return 'function ResizeObserver () { [polyfill code] }';
|
36 | };
|
37 | return ResizeObserver;
|
38 | }());
|
39 | export { ResizeObserver };
|