| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- /**
- * SSR Window 1.0.1
- * Better handling for window object in SSR environment
- * https://github.com/nolimits4web/ssr-window
- *
- * Copyright 2018, Vladimir Kharlampidi
- *
- * Licensed under MIT
- *
- * Released on: July 18, 2018
- */
- (function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
- typeof define === 'function' && define.amd ? define(['exports'], factory) :
- (factory((global.ssrWindow = {})));
- }(this, (function (exports) { 'use strict';
- var doc = (typeof document === 'undefined') ? {
- body: {},
- addEventListener: function addEventListener() {},
- removeEventListener: function removeEventListener() {},
- activeElement: {
- blur: function blur() {},
- nodeName: '',
- },
- querySelector: function querySelector() {
- return null;
- },
- querySelectorAll: function querySelectorAll() {
- return [];
- },
- getElementById: function getElementById() {
- return null;
- },
- createEvent: function createEvent() {
- return {
- initEvent: function initEvent() {},
- };
- },
- createElement: function createElement() {
- return {
- children: [],
- childNodes: [],
- style: {},
- setAttribute: function setAttribute() {},
- getElementsByTagName: function getElementsByTagName() {
- return [];
- },
- };
- },
- location: { hash: '' },
- } : document; // eslint-disable-line
- var win = (typeof window === 'undefined') ? {
- document: doc,
- navigator: {
- userAgent: '',
- },
- location: {},
- history: {},
- CustomEvent: function CustomEvent() {
- return this;
- },
- addEventListener: function addEventListener() {},
- removeEventListener: function removeEventListener() {},
- getComputedStyle: function getComputedStyle() {
- return {
- getPropertyValue: function getPropertyValue() {
- return '';
- },
- };
- },
- Image: function Image() {},
- Date: function Date() {},
- screen: {},
- setTimeout: function setTimeout() {},
- clearTimeout: function clearTimeout() {},
- } : window; // eslint-disable-line
- exports.window = win;
- exports.document = doc;
- Object.defineProperty(exports, '__esModule', { value: true });
- })));
|