UNPKG

@aurelia/platform-browser

Version:

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![TypeScript](https://img.shields.io/badge/%3C%2F%3E-TypeScript-%230074c1.svg)](http://www.typescriptlang.org/) [![CircleCI](https://circleci.com/

39 lines (34 loc) 1.5 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var platform = require('@aurelia/platform'); class BrowserPlatform extends platform.Platform { static getOrCreate(g, overrides = {}) { let platform = BrowserPlatform._lookup.get(g); if (platform === void 0) { BrowserPlatform._lookup.set(g, platform = new BrowserPlatform(g, overrides)); } return platform; } static set(g, platform) { BrowserPlatform._lookup.set(g, platform); } constructor(g, overrides = {}) { super(g, overrides); const notImplemented = (name) => () => { // TODO: link to docs describing how to fix this issue throw new Error(`The PLATFORM did not receive a valid reference to the global function '${name}'.`); }; ('Node Element HTMLElement CustomEvent CSSStyleSheet ShadowRoot MutationObserver ' + 'window document customElements') .split(' ') // eslint-disable-next-line .forEach(prop => this[prop] = prop in overrides ? overrides[prop] : g[prop]); 'fetch requestAnimationFrame cancelAnimationFrame'.split(' ').forEach(prop => // eslint-disable-next-line this[prop] = prop in overrides ? overrides[prop] : (g[prop]?.bind(g) ?? notImplemented(prop))); } } /** @internal */ BrowserPlatform._lookup = new WeakMap(); exports.BrowserPlatform = BrowserPlatform; //# sourceMappingURL=index.dev.cjs.map