(function webpackUniversalModuleDefinition(root, factory) { if(typeof exports === 'object' && typeof module === 'object') module.exports = factory(); else if(typeof define === 'function' && define.amd) define([], factory); else if(typeof exports === 'object') exports["Glamor"] = factory(); else root["Glamor"] = factory(); })(this, function() { return /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) /******/ return installedModules[moduleId].exports; /******/ /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // identity function for calling harmory imports with the correct context /******/ __webpack_require__.i = function(value) { return value; }; /******/ /******/ // define getter function for harmory exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ Object.defineProperty(exports, name, { /******/ configurable: false, /******/ enumerable: true, /******/ get: getter /******/ }); /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = 15); /******/ }) /************************************************************************/ /******/ ([ /* 0 */ /***/ function(module, exports, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_fbjs_lib_camelizeStyleName__ = __webpack_require__(10); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_fbjs_lib_camelizeStyleName___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_fbjs_lib_camelizeStyleName__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__dangerousStyleValue__ = __webpack_require__(7); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_fbjs_lib_hyphenateStyleName__ = __webpack_require__(13); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_fbjs_lib_hyphenateStyleName___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_fbjs_lib_hyphenateStyleName__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_fbjs_lib_memoizeStringOnly__ = __webpack_require__(14); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_fbjs_lib_memoizeStringOnly___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_fbjs_lib_memoizeStringOnly__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_fbjs_lib_warning__ = __webpack_require__(1); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_fbjs_lib_warning___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_fbjs_lib_warning__); /* harmony export (binding) */ __webpack_require__.d(exports, "a", function() { return processStyleName; }); /* harmony export (immutable) */ exports["b"] = createMarkupForStyles; /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. * * @providesModule CSSPropertyOperations */ var processStyleName = __WEBPACK_IMPORTED_MODULE_3_fbjs_lib_memoizeStringOnly___default()(__WEBPACK_IMPORTED_MODULE_2_fbjs_lib_hyphenateStyleName___default.a); if (true) { var warnValidStyle; (function () { // 'msTransform' is correct, but the other prefixes should be capitalized var badVendoredStyleNamePattern = /^(?:webkit|moz|o)[A-Z]/; // style values shouldn't contain a semicolon var badStyleValueWithSemicolonPattern = /;\s*$/; var warnedStyleNames = {}; var warnedStyleValues = {}; var warnedForNaNValue = false; var warnHyphenatedStyleName = function warnHyphenatedStyleName(name, owner) { if (warnedStyleNames.hasOwnProperty(name) && warnedStyleNames[name]) { return; } warnedStyleNames[name] = true; true ? __WEBPACK_IMPORTED_MODULE_4_fbjs_lib_warning___default()(false, 'Unsupported style property %s. Did you mean %s?%s', name, __WEBPACK_IMPORTED_MODULE_0_fbjs_lib_camelizeStyleName___default()(name), checkRenderMessage(owner)) : void 0; }; var warnBadVendoredStyleName = function warnBadVendoredStyleName(name, owner) { if (warnedStyleNames.hasOwnProperty(name) && warnedStyleNames[name]) { return; } warnedStyleNames[name] = true; true ? __WEBPACK_IMPORTED_MODULE_4_fbjs_lib_warning___default()(false, 'Unsupported vendor-prefixed style property %s. Did you mean %s?%s', name, name.charAt(0).toUpperCase() + name.slice(1), checkRenderMessage(owner)) : void 0; }; var warnStyleValueWithSemicolon = function warnStyleValueWithSemicolon(name, value, owner) { if (warnedStyleValues.hasOwnProperty(value) && warnedStyleValues[value]) { return; } warnedStyleValues[value] = true; true ? __WEBPACK_IMPORTED_MODULE_4_fbjs_lib_warning___default()(false, 'Style property values shouldn\'t contain a semicolon.%s ' + 'Try "%s: %s" instead.', checkRenderMessage(owner), name, value.replace(badStyleValueWithSemicolonPattern, '')) : void 0; }; var warnStyleValueIsNaN = function warnStyleValueIsNaN(name, value, owner) { if (warnedForNaNValue) { return; } warnedForNaNValue = true; true ? __WEBPACK_IMPORTED_MODULE_4_fbjs_lib_warning___default()(false, '`NaN` is an invalid value for the `%s` css style property.%s', name, checkRenderMessage(owner)) : void 0; }; var checkRenderMessage = function checkRenderMessage(owner) { if (owner) { var name = owner.getName(); if (name) { return ' Check the render method of `' + name + '`.'; } } return ''; }; /** * @param {string} name * @param {*} value * @param {ReactDOMComponent} component */ warnValidStyle = function warnValidStyle(name, value, component) { //eslint-disable-line no-var var owner = void 0; if (component) { owner = component._currentElement._owner; } if (name.indexOf('-') > -1) { warnHyphenatedStyleName(name, owner); } else if (badVendoredStyleNamePattern.test(name)) { warnBadVendoredStyleName(name, owner); } else if (badStyleValueWithSemicolonPattern.test(value)) { warnStyleValueWithSemicolon(name, value, owner); } if (typeof value === 'number' && isNaN(value)) { warnStyleValueIsNaN(name, value, owner); } }; })(); } /** * Serializes a mapping of style properties for use as inline styles: * * > createMarkupForStyles({width: '200px', height: 0}) * "width:200px;height:0;" * * Undefined values are ignored so that declarative programming is easier. * The result should be HTML-escaped before insertion into the DOM. * * @param {object} styles * @param {ReactDOMComponent} component * @return {?string} */ function createMarkupForStyles(styles, component) { var serialized = ''; for (var styleName in styles) { var isCustomProp = styleName.indexOf('--') === 0; if (!styles.hasOwnProperty(styleName)) { continue; } var styleValue = styles[styleName]; if ("development" !== 'production' && !isCustomProp) { warnValidStyle(styleName, styleValue, component); } if (styleValue != null) { if (isCustomProp) { serialized += styleName + ':' + styleValue + ';'; } else { serialized += processStyleName(styleName) + ':'; serialized += __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__dangerousStyleValue__["a" /* default */])(styleName, styleValue, component) + ';'; } } } return serialized || null; } /***/ }, /* 1 */ /***/ function(module, exports, __webpack_require__) { "use strict"; /** * Copyright 2014-2015, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. * */ 'use strict'; var emptyFunction = __webpack_require__(11); /** * Similar to invariant but only logs a warning if the condition is not met. * This can be used to log issues in development environments in critical * paths. Removing the logging code for production environments will keep the * same logic and follow the same code paths. */ var warning = emptyFunction; if (true) { (function () { var printWarning = function printWarning(format) { for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { args[_key - 1] = arguments[_key]; } var argIndex = 0; var message = 'Warning: ' + format.replace(/%s/g, function () { return args[argIndex++]; }); if (typeof console !== 'undefined') { console.error(message); } try { // --- Welcome to debugging React --- // This error was thrown as a convenience so that you can use this stack // to find the callsite that caused this warning to fire. throw new Error(message); } catch (x) {} }; warning = function warning(condition, format) { if (format === undefined) { throw new Error('`warning(condition, format, ...args)` requires a warning ' + 'message argument'); } if (format.indexOf('Failed Composite propType: ') === 0) { return; // Ignore CompositeComponent proptype check. } if (!condition) { for (var _len2 = arguments.length, args = Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) { args[_key2 - 2] = arguments[_key2]; } printWarning.apply(undefined, [format].concat(args)); } }; })(); } module.exports = warning; /***/ }, /* 2 */ /***/ function(module, exports, __webpack_require__) { "use strict"; /* harmony export (immutable) */ exports["a"] = clean; var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; // Returns true for null, false, undefined and {} function isFalsy(value) { return value === null || value === undefined || value === false || (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && Object.keys(value).length === 0; } function cleanObject(object) { if (isFalsy(object)) return null; if ((typeof object === 'undefined' ? 'undefined' : _typeof(object)) !== 'object') return object; var acc = {}, keys = Object.keys(object), hasFalsy = false; for (var i = 0; i < keys.length; i++) { var value = object[keys[i]]; var filteredValue = clean(value); if (filteredValue === null || filteredValue !== value) { hasFalsy = true; } if (filteredValue !== null) { acc[keys[i]] = filteredValue; } } return Object.keys(acc).length === 0 ? null : hasFalsy ? acc : object; } function cleanArray(rules) { var hasFalsy = false; var filtered = []; rules.forEach(function (rule) { var filteredRule = clean(rule); if (filteredRule === null || filteredRule !== rule) { hasFalsy = true; } if (filteredRule !== null) { filtered.push(filteredRule); } }); return filtered.length == 0 ? null : hasFalsy ? filtered : rules; } // Takes style array or object provided by user and clears all the falsy data // If there is no styles left after filtration returns null function clean(input) { return Array.isArray(input) ? cleanArray(input) : cleanObject(input); } /***/ }, /* 3 */ /***/ function(module, exports, __webpack_require__) { "use strict"; /* harmony export (immutable) */ exports["a"] = doHash; // murmurhash2 via https://gist.github.com/raycmorgan/588423 function doHash(str, seed) { var m = 0x5bd1e995; var r = 24; var h = seed ^ str.length; var length = str.length; var currentIndex = 0; while (length >= 4) { var k = UInt32(str, currentIndex); k = Umul32(k, m); k ^= k >>> r; k = Umul32(k, m); h = Umul32(h, m); h ^= k; currentIndex += 4; length -= 4; } switch (length) { case 3: h ^= UInt16(str, currentIndex); h ^= str.charCodeAt(currentIndex + 2) << 16; h = Umul32(h, m); break; case 2: h ^= UInt16(str, currentIndex); h = Umul32(h, m); break; case 1: h ^= str.charCodeAt(currentIndex); h = Umul32(h, m); break; } h ^= h >>> 13; h = Umul32(h, m); h ^= h >>> 15; return h >>> 0; } function UInt32(str, pos) { return str.charCodeAt(pos++) + (str.charCodeAt(pos++) << 8) + (str.charCodeAt(pos++) << 16) + (str.charCodeAt(pos) << 24); } function UInt16(str, pos) { return str.charCodeAt(pos++) + (str.charCodeAt(pos++) << 8); } function Umul32(n, m) { n = n | 0; m = m | 0; var nlo = n & 0xffff; var nhi = n >>> 16; var res = nlo * m + ((nhi * m & 0xffff) << 16) | 0; return res; } /***/ }, /* 4 */ /***/ function(module, exports, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__CSSPropertyOperations__ = __webpack_require__(0); /* harmony export (immutable) */ exports["a"] = PluginSet; /* harmony export (immutable) */ exports["c"] = fallbacks; /* harmony export (immutable) */ exports["b"] = prefixes; var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; var isDev = function (x) { return x === 'development' || !x; }("development"); function PluginSet(initial) { this.fns = initial || []; } Object.assign(PluginSet.prototype, { add: function add() { var _this = this; for (var _len = arguments.length, fns = Array(_len), _key = 0; _key < _len; _key++) { fns[_key] = arguments[_key]; } fns.forEach(function (fn) { if (_this.fns.indexOf(fn) >= 0) { if (isDev) { console.warn('adding the same plugin again, ignoring'); //eslint-disable-line no-console } } else { _this.fns = [fn].concat(_this.fns); } }); }, remove: function remove(fn) { this.fns = this.fns.filter(function (x) { return x !== fn; }); }, clear: function clear() { this.fns = []; }, transform: function transform(o) { return this.fns.reduce(function (o, fn) { return fn(o); }, o); } }); function fallbacks(node) { var hasArray = Object.keys(node.style).map(function (x) { return Array.isArray(node.style[x]); }).indexOf(true) >= 0; if (hasArray) { var _ret = function () { var style = node.style; var flattened = Object.keys(style).reduce(function (o, key) { o[key] = Array.isArray(style[key]) ? style[key].join('; ' + __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__CSSPropertyOperations__["a" /* processStyleName */])(key) + ': ') : style[key]; return o; }, {}); // todo - // flatten arrays which haven't been flattened yet return { v: Object.assign({}, node, { style: flattened }) }; }(); if ((typeof _ret === 'undefined' ? 'undefined' : _typeof(_ret)) === "object") return _ret.v; } return node; } var prefixAll = __webpack_require__(8); function prefixes(node) { return Object.assign({}, node, { style: prefixAll(node.style) }); } /***/ }, /* 5 */ /***/ function(module, exports, __webpack_require__) { "use strict"; /* harmony export (immutable) */ exports["a"] = StyleSheet; function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } /* high performance StyleSheet for css-in-js systems - uses multiple style tags behind the scenes for millions of rules - uses `insertRule` for appending in production for *much* faster performance - 'polyfills' on server side // usage import StyleSheet from 'glamor/lib/sheet' let styleSheet = new StyleSheet() styleSheet.inject() - 'injects' the stylesheet into the page (or into memory if on server) styleSheet.insert('#box { border: 1px solid red; }') - appends a css rule into the stylesheet styleSheet.flush() - empties the stylesheet of all its contents */ function last(arr) { return arr[arr.length - 1]; } function sheetForTag(tag) { if (tag.sheet) { return tag.sheet; } // this weirdness brought to you by firefox for (var i = 0; i < document.styleSheets.length; i++) { if (document.styleSheets[i].ownerNode === tag) { return document.styleSheets[i]; } } } var isBrowser = typeof window !== 'undefined'; var isDev = "development" === 'development' || !"development"; //(x => (x === 'development') || !x)(process.env.NODE_ENV) var isTest = "development" === 'test'; var oldIE = function () { if (isBrowser) { var div = document.createElement('div'); div.innerHTML = ''; return div.getElementsByTagName('i').length === 1; } }(); function makeStyleTag() { var tag = document.createElement('style'); tag.type = 'text/css'; tag.appendChild(document.createTextNode('')); (document.head || document.getElementsByTagName('head')[0]).appendChild(tag); return tag; } function StyleSheet() { var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, _ref$speedy = _ref.speedy, speedy = _ref$speedy === undefined ? !isDev && !isTest : _ref$speedy, _ref$maxLength = _ref.maxLength, maxLength = _ref$maxLength === undefined ? isBrowser && oldIE ? 4000 : 65000 : _ref$maxLength; this.isSpeedy = speedy; // the big drawback here is that the css won't be editable in devtools this.sheet = undefined; this.tags = []; this.maxLength = maxLength; this.ctr = 0; } Object.assign(StyleSheet.prototype, { getSheet: function getSheet() { return sheetForTag(last(this.tags)); }, inject: function inject() { var _this = this; if (this.injected) { throw new Error('already injected stylesheet!'); } if (isBrowser) { this.tags[0] = makeStyleTag(); } else { // server side 'polyfill'. just enough behavior to be useful. this.sheet = { cssRules: [], insertRule: function insertRule(rule) { // enough 'spec compliance' to be able to extract the rules later // in other words, just the cssText field _this.sheet.cssRules.push({ cssText: rule }); } }; } this.injected = true; }, speedy: function speedy(bool) { if (this.ctr !== 0) { throw new Error('cannot change speedy mode after inserting any rule to sheet. Either call speedy(' + bool + ') earlier in your app, or call flush() before speedy(' + bool + ')'); } this.isSpeedy = !!bool; }, _insert: function _insert(rule) { // this weirdness for perf, and chrome's weird bug // https://stackoverflow.com/questions/20007992/chrome-suddenly-stopped-accepting-insertrule try { var sheet = this.getSheet(); sheet.insertRule(rule, sheet.cssRules.length); // todo - correct index here } catch (e) { if (isDev) { // might need beter dx for this console.warn('whoops, illegal rule inserted', rule); //eslint-disable-line no-console } } }, insert: function insert(rule) { if (isBrowser) { // this is the ultrafast version, works across browsers if (this.isSpeedy && this.getSheet().insertRule) { this._insert(rule); } // more browser weirdness. I don't even know // else if(this.tags.length > 0 && this.tags::last().styleSheet) { // this.tags::last().styleSheet.cssText+= rule // } else { last(this.tags).appendChild(document.createTextNode(rule)); } } else { // server side is pretty simple this.sheet.insertRule(rule); } this.ctr++; if (isBrowser && this.ctr % this.maxLength === 0) { this.tags.push(makeStyleTag()); } return this.ctr - 1; }, // commenting this out till we decide on v3's decision // _replace(index, rule) { // // this weirdness for perf, and chrome's weird bug // // https://stackoverflow.com/questions/20007992/chrome-suddenly-stopped-accepting-insertrule // try { // let sheet = this.getSheet() // sheet.deleteRule(index) // todo - correct index here // sheet.insertRule(rule, index) // } // catch(e) { // if(isDev) { // // might need beter dx for this // console.warn('whoops, problem replacing rule', rule) //eslint-disable-line no-console // } // } // } // replace(index, rule) { // if(isBrowser) { // if(this.isSpeedy && this.getSheet().insertRule) { // this._replace(index, rule) // } // else { // let _slot = Math.floor((index + this.maxLength) / this.maxLength) - 1 // let _index = (index % this.maxLength) + 1 // let tag = this.tags[_slot] // tag.replaceChild(document.createTextNode(rule), tag.childNodes[_index]) // } // } // else { // let rules = this.sheet.cssRules // this.sheet.cssRules = [ ...rules.slice(0, index), { cssText: rule }, ...rules.slice(index + 1) ] // } // } delete: function _delete(index) { // we insert a blank rule when 'deleting' so previously returned indexes remain stable return this.replace(index, ''); }, flush: function flush() { if (isBrowser) { this.tags.forEach(function (tag) { return tag.parentNode.removeChild(tag); }); this.tags = []; this.sheet = null; this.ctr = 0; // todo - look for remnants in document.styleSheets } else { // simpler on server this.sheet.cssRules = []; } this.injected = false; }, rules: function rules() { if (!isBrowser) { return this.sheet.cssRules; } var arr = []; this.tags.forEach(function (tag) { return arr.splice.apply(arr, [arr.length, 0].concat(_toConsumableArray(Array.from(sheetForTag(tag).cssRules)))); }); return arr; } }); /***/ }, /* 6 */ /***/ function(module, exports, __webpack_require__) { "use strict"; /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. * * @providesModule CSSProperty */ /** * CSS properties which accept numbers but are not in units of "px". */ var isUnitlessNumber = { animationIterationCount: true, borderImageOutset: true, borderImageSlice: true, borderImageWidth: true, boxFlex: true, boxFlexGroup: true, boxOrdinalGroup: true, columnCount: true, flex: true, flexGrow: true, flexPositive: true, flexShrink: true, flexNegative: true, flexOrder: true, gridRow: true, gridColumn: true, fontWeight: true, lineClamp: true, lineHeight: true, opacity: true, order: true, orphans: true, tabSize: true, widows: true, zIndex: true, zoom: true, // SVG-related properties fillOpacity: true, floodOpacity: true, stopOpacity: true, strokeDasharray: true, strokeDashoffset: true, strokeMiterlimit: true, strokeOpacity: true, strokeWidth: true }; /** * @param {string} prefix vendor-specific prefix, eg: Webkit * @param {string} key style name, eg: transitionDuration * @return {string} style name prefixed with `prefix`, properly camelCased, eg: * WebkitTransitionDuration */ function prefixKey(prefix, key) { return prefix + key.charAt(0).toUpperCase() + key.substring(1); } /** * Support style names that may come passed in prefixed by adding permutations * of vendor prefixes. */ var prefixes = ['Webkit', 'ms', 'Moz', 'O']; // Using Object.keys here, or else the vanilla for-in loop makes IE8 go into an // infinite loop, because it iterates over the newly added props too. Object.keys(isUnitlessNumber).forEach(function (prop) { prefixes.forEach(function (prefix) { isUnitlessNumber[prefixKey(prefix, prop)] = isUnitlessNumber[prop]; }); }); /** * Most style properties can be unset by doing .style[prop] = '' but IE8 * doesn't like doing that with shorthand properties so for the properties that * IE8 breaks on, which are listed here, we instead unset each of the * individual properties. See http://bugs.jquery.com/ticket/12385. * The 4-value 'clock' properties like margin, padding, border-width seem to * behave without any problems. Curiously, list-style works too without any * special prodding. */ var shorthandPropertyExpansions = { background: { backgroundAttachment: true, backgroundColor: true, backgroundImage: true, backgroundPositionX: true, backgroundPositionY: true, backgroundRepeat: true }, backgroundPosition: { backgroundPositionX: true, backgroundPositionY: true }, border: { borderWidth: true, borderStyle: true, borderColor: true }, borderBottom: { borderBottomWidth: true, borderBottomStyle: true, borderBottomColor: true }, borderLeft: { borderLeftWidth: true, borderLeftStyle: true, borderLeftColor: true }, borderRight: { borderRightWidth: true, borderRightStyle: true, borderRightColor: true }, borderTop: { borderTopWidth: true, borderTopStyle: true, borderTopColor: true }, font: { fontStyle: true, fontVariant: true, fontWeight: true, fontSize: true, lineHeight: true, fontFamily: true }, outline: { outlineWidth: true, outlineStyle: true, outlineColor: true } }; var CSSProperty = { isUnitlessNumber: isUnitlessNumber, shorthandPropertyExpansions: shorthandPropertyExpansions }; /* harmony default export */ exports["a"] = CSSProperty; /***/ }, /* 7 */ /***/ function(module, exports, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__CSSProperty__ = __webpack_require__(6); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_fbjs_lib_warning__ = __webpack_require__(1); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_fbjs_lib_warning___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_fbjs_lib_warning__); /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. * * @providesModule dangerousStyleValue */ var isUnitlessNumber = __WEBPACK_IMPORTED_MODULE_0__CSSProperty__["a" /* default */].isUnitlessNumber; var styleWarnings = {}; /** * Convert a value into the proper css writable value. The style name `name` * should be logical (no hyphens), as specified * in `CSSProperty.isUnitlessNumber`. * * @param {string} name CSS property name such as `topMargin`. * @param {*} value CSS property value such as `10px`. * @param {ReactDOMComponent} component * @return {string} Normalized style value with dimensions applied. */ function dangerousStyleValue(name, value, component) { // Note that we've removed escapeTextForBrowser() calls here since the // whole string will be escaped when the attribute is injected into // the markup. If you provide unsafe user data here they can inject // arbitrary CSS which may be problematic (I couldn't repro this): // https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet // http://www.thespanner.co.uk/2007/11/26/ultimate-xss-css-injection/ // This is not an XSS hole but instead a potential CSS injection issue // which has lead to a greater discussion about how we're going to // trust URLs moving forward. See #2115901 var isEmpty = value == null || typeof value === 'boolean' || value === ''; if (isEmpty) { return ''; } var isNonNumeric = isNaN(value); if (isNonNumeric || value === 0 || isUnitlessNumber.hasOwnProperty(name) && isUnitlessNumber[name]) { return '' + value; // cast to string } if (typeof value === 'string') { if (true) { // Allow '0' to pass through without warning. 0 is already special and // doesn't require units, so we don't need to warn about it. if (component && value !== '0') { var owner = component._currentElement._owner; var ownerName = owner ? owner.getName() : null; if (ownerName && !styleWarnings[ownerName]) { styleWarnings[ownerName] = {}; } var warned = false; if (ownerName) { var warnings = styleWarnings[ownerName]; warned = warnings[name]; if (!warned) { warnings[name] = true; } } if (!warned) { true ? __WEBPACK_IMPORTED_MODULE_1_fbjs_lib_warning___default()(false, 'a `%s` tag (owner: `%s`) was passed a numeric string value ' + 'for CSS property `%s` (value: `%s`) which will be treated ' + 'as a unitless number in a future version of React.', component._currentElement.type, ownerName || 'unknown', name, value) : void 0; } } } value = value.trim(); } return value + 'px'; } /* harmony default export */ exports["a"] = dangerousStyleValue; /***/ }, /* 8 */ /***/ function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; (function (global, factory) { ( false ? 'undefined' : _typeof(exports)) === 'object' && typeof module !== 'undefined' ? module.exports = factory() : true ? !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)) : global.InlineStylePrefixAll = factory(); })(this, function () { 'use strict'; var babelHelpers = {}; babelHelpers.classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; babelHelpers.createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); babelHelpers.defineProperty = function (obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }; babelHelpers; function __commonjs(fn, module) { return module = { exports: {} }, fn(module, module.exports), module.exports; } var prefixProps = { "Webkit": { "transform": true, "transformOrigin": true, "transformOriginX": true, "transformOriginY": true, "backfaceVisibility": true, "perspective": true, "perspectiveOrigin": true, "transformStyle": true, "transformOriginZ": true, "animation": true, "animationDelay": true, "animationDirection": true, "animationFillMode": true, "animationDuration": true, "animationIterationCount": true, "animationName": true, "animationPlayState": true, "animationTimingFunction": true, "appearance": true, "userSelect": true, "fontKerning": true, "textEmphasisPosition": true, "textEmphasis": true, "textEmphasisStyle": true, "textEmphasisColor": true, "boxDecorationBreak": true, "clipPath": true, "maskImage": true, "maskMode": true, "maskRepeat": true, "maskPosition": true, "maskClip": true, "maskOrigin": true, "maskSize": true, "maskComposite": true, "mask": true, "maskBorderSource": true, "maskBorderMode": true, "maskBorderSlice": true, "maskBorderWidth": true, "maskBorderOutset": true, "maskBorderRepeat": true, "maskBorder": true, "maskType": true, "textDecorationStyle": true, "textDecorationSkip": true, "textDecorationLine": true, "textDecorationColor": true, "filter": true, "fontFeatureSettings": true, "breakAfter": true, "breakBefore": true, "breakInside": true, "columnCount": true, "columnFill": true, "columnGap": true, "columnRule": true, "columnRuleColor": true, "columnRuleStyle": true, "columnRuleWidth": true, "columns": true, "columnSpan": true, "columnWidth": true, "flex": true, "flexBasis": true, "flexDirection": true, "flexGrow": true, "flexFlow": true, "flexShrink": true, "flexWrap": true, "alignContent": true, "alignItems": true, "alignSelf": true, "justifyContent": true, "order": true, "backdropFilter": true, "scrollSnapType": true, "scrollSnapPointsX": true, "scrollSnapPointsY": true, "scrollSnapDestination": true, "scrollSnapCoordinate": true, "shapeImageThreshold": true, "shapeImageMargin": true, "shapeImageOutside": true, "hyphens": true, "flowInto": true, "flowFrom": true, "regionFragment": true, "textSizeAdjust": true, "transition": true, "transitionDelay": true, "transitionDuration": true, "transitionProperty": true, "transitionTimingFunction": true }, "Moz": { "appearance": true, "userSelect": true, "boxSizing": true, "textAlignLast": true, "textDecorationStyle": true, "textDecorationSkip": true, "textDecorationLine": true, "textDecorationColor": true, "tabSize": true, "hyphens": true, "fontFeatureSettings": true, "breakAfter": true, "breakBefore": true, "breakInside": true, "columnCount": true, "columnFill": true, "columnGap": true, "columnRule": true, "columnRuleColor": true, "columnRuleStyle": true, "columnRuleWidth": true, "columns": true, "columnSpan": true, "columnWidth": true }, "ms": { "flex": true, "flexBasis": false, "flexDirection": true, "flexGrow": false, "flexFlow": true, "flexShrink": false, "flexWrap": true, "alignContent": false, "alignItems": false, "alignSelf": false, "justifyContent": false, "order": false, "userSelect": true, "wrapFlow": true, "wrapThrough": true, "wrapMargin": true, "scrollSnapType": true, "scrollSnapPointsX": true, "scrollSnapPointsY": true, "scrollSnapDestination": true, "scrollSnapCoordinate": true, "touchAction": true, "hyphens": true, "flowInto": true, "flowFrom": true, "breakBefore": true, "breakAfter": true, "breakInside": true, "regionFragment": true, "gridTemplateColumns": true, "gridTemplateRows": true, "gridTemplateAreas": true, "gridTemplate": true, "gridAutoColumns": true, "gridAutoRows": true, "gridAutoFlow": true, "grid": true, "gridRowStart": true, "gridColumnStart": true, "gridRowEnd": true, "gridRow": true, "gridColumn": true, "gridColumnEnd": true, "gridColumnGap": true, "gridRowGap": true, "gridArea": true, "gridGap": true, "textSizeAdjust": true } }; // helper to capitalize strings var capitalizeString = function capitalizeString(str) { return str.charAt(0).toUpperCase() + str.slice(1); }; var isPrefixedProperty = function isPrefixedProperty(property) { return property.match(/^(Webkit|Moz|O|ms)/) !== null; }; function sortPrefixedStyle(style) { return Object.keys(style).sort(function (left, right) { if (isPrefixedProperty(left) && !isPrefixedProperty(right)) { return -1; } else if (!isPrefixedProperty(left) && isPrefixedProperty(right)) { return 1; } return 0; }).reduce(function (sortedStyle, prop) { sortedStyle[prop] = style[prop]; return sortedStyle; }, {}); } function position(property, value) { if (property === 'position' && value === 'sticky') { return { position: ['-webkit-sticky', 'sticky'] }; } } // returns a style object with a single concated prefixed value string var joinPrefixedValue = function joinPrefixedValue(property, value) { var replacer = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function (prefix, value) { return prefix + value; }; return babelHelpers.defineProperty({}, property, ['-webkit-', '-moz-', ''].map(function (prefix) { return replacer(prefix, value); })); }; var isPrefixedValue = function isPrefixedValue(value) { if (Array.isArray(value)) value = value.join(','); return value.match(/-webkit-|-moz-|-ms-/) !== null; }; function calc(property, value) { if (typeof value === 'string' && !isPrefixedValue(value) && value.indexOf('calc(') > -1) { return joinPrefixedValue(property, value, function (prefix, value) { return value.replace(/calc\(/g, prefix + 'calc('); }); } } var values = { 'zoom-in': true, 'zoom-out': true, grab: true, grabbing: true }; function cursor(property, value) { if (property === 'cursor' && values[value]) { return joinPrefixedValue(property, value); } } var values$1 = { flex: true, 'inline-flex': true }; function flex(property, value) { if (property === 'display' && values$1[value]) { return { display: ['-webkit-box', '-moz-box', '-ms-' + value + 'box', '-webkit-' + value, value] }; } } var properties = { maxHeight: true, maxWidth: true, width: true, height: true, columnWidth: true, minWidth: true, minHeight: true }; var values$2 = { 'min-content': true, 'max-content': true, 'fill-available': true, 'fit-content': true, 'contain-floats': true }; function sizing(property, value) { if (properties[property] && values$2[value]) { return joinPrefixedValue(property, value); } } var values$3 = /linear-gradient|radial-gradient|repeating-linear-gradient|repeating-radial-gradient/; function gradient(property, value) { if (typeof value === 'string' && !isPrefixedValue(value) && value.match(values$3) !== null) { return joinPrefixedValue(property, value); } } var index = __commonjs(function (module) { 'use strict'; var uppercasePattern = /[A-Z]/g; var msPattern = /^ms-/; var cache = {}; function hyphenateStyleName(string) { return string in cache ? cache[string] : cache[string] = string.replace(uppercasePattern, '-$&').toLowerCase().replace(msPattern, '-ms-'); } module.exports = hyphenateStyleName; }); var hyphenateStyleName = index && (typeof index === 'undefined' ? 'undefined' : _typeof(index)) === 'object' && 'default' in index ? index['default'] : index; var properties$1 = { transition: true, transitionProperty: true, WebkitTransition: true, WebkitTransitionProperty: true }; function transition(property, value) { // also check for already prefixed transitions if (typeof value === 'string' && properties$1[property]) { var _ref2; var outputValue = prefixValue(value); var webkitOutput = outputValue.split(/,(?![^()]*(?:\([^()]*\))?\))/g).filter(function (value) { return value.match(/-moz-|-ms-/) === null; }).join(','); // if the property is already prefixed if (property.indexOf('Webkit') > -1) { return babelHelpers.defineProperty({}, property, webkitOutput); } return _ref2 = {}, babelHelpers.defineProperty(_ref2, 'Webkit' + capitalizeString(property), webkitOutput), babelHelpers.defineProperty(_ref2, property, outputValue), _ref2; } } function prefixValue(value) { if (isPrefixedValue(value)) { return value; } // only split multi values, not cubic beziers var multipleValues = value.split(/,(?![^()]*(?:\([^()]*\))?\))/g); // iterate each single value and check for transitioned properties // that need to be prefixed as well multipleValues.forEach(function (val, index) { multipleValues[index] = Object.keys(prefixProps).reduce(function (out, prefix) { var dashCasePrefix = '-' + prefix.toLowerCase() + '-'; Object.keys(prefixProps[prefix]).forEach(function (prop) { var dashCaseProperty = hyphenateStyleName(prop); if (val.indexOf(dashCaseProperty) > -1 && dashCaseProperty !== 'order') { // join all prefixes and create a new value out = val.replace(dashCaseProperty, dashCasePrefix + dashCaseProperty) + ',' + out; } }); return out; }, val); }); return multipleValues.join(','); } var alternativeValues = { 'space-around': 'distribute', 'space-between': 'justify', 'flex-start': 'start', 'flex-end': 'end' }; var alternativeProps = { alignContent: 'msFlexLinePack', alignSelf: 'msFlexItemAlign', alignItems: 'msFlexAlign', justifyContent: 'msFlexPack', order: 'msFlexOrder', flexGrow: 'msFlexPositive', flexShrink: 'msFlexNegative', flexBasis: 'msPreferredSize' }; function flexboxIE(property, value) { if (alternativeProps[property]) { return babelHelpers.defineProperty({}, alternativeProps[property], alternativeValues[value] || value); } } var alternativeValues$1 = { 'space-around': 'justify', 'space-between': 'justify', 'flex-start': 'start', 'flex-end': 'end', 'wrap-reverse': 'multiple', wrap: 'multiple' }; var alternativeProps$1 = { alignItems: 'WebkitBoxAlign', justifyContent: 'WebkitBoxPack', flexWrap: 'WebkitBoxLines' }; function flexboxOld(property, value) { if (property === 'flexDirection' && typeof value === 'string') { return { WebkitBoxOrient: value.indexOf('column') > -1 ? 'vertical' : 'horizontal', WebkitBoxDirection: value.indexOf('reverse') > -1 ? 'reverse' : 'normal' }; } if (alternativeProps$1[property]) { return babelHelpers.defineProperty({}, alternativeProps$1[property], alternativeValues$1[value] || value); } } var plugins = [position, calc, cursor, sizing, gradient, transition, flexboxIE, flexboxOld, flex]; /** * Returns a prefixed version of the style object using all vendor prefixes * @param {Object} styles - Style object that gets prefixed properties added * @returns {Object} - Style object with prefixed properties and values */ function prefixAll(styles) { Object.keys(styles).forEach(function (property) { var value = styles[property]; if (value instanceof Object && !Array.isArray(value)) { // recurse through nested style objects styles[property] = prefixAll(value); } else { Object.keys(prefixProps).forEach(function (prefix) { var properties = prefixProps[prefix]; // add prefixes if needed if (properties[property]) { styles[prefix + capitalizeString(property)] = value; } }); } }); Object.keys(styles).forEach(function (property) { [].concat(styles[property]).forEach(function (value, index) { // resolve every special plugins plugins.forEach(function (plugin) { return assignStyles(styles, plugin(property, value)); }); }); }); return sortPrefixedStyle(styles); } function assignStyles(base) { var extend = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; Object.keys(extend).forEach(function (property) { var baseValue = base[property]; if (Array.isArray(baseValue)) { [].concat(extend[property]).forEach(function (value) { var valueIndex = baseValue.indexOf(value); if (valueIndex > -1) { base[property].splice(valueIndex, 1); } base[property].push(value); }); } else { base[property] = extend[property]; } }); } return prefixAll; }); /***/ }, /* 9 */ /***/ function(module, exports) { "use strict"; "use strict"; /** * Copyright (c) 2013-present, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. * * @typechecks */ var _hyphenPattern = /-(.)/g; /** * Camelcases a hyphenated string, for example: * * > camelize('background-color') * < "backgroundColor" * * @param {string} string * @return {string} */ function camelize(string) { return string.replace(_hyphenPattern, function (_, character) { return character.toUpperCase(); }); } module.exports = camelize; /***/ }, /* 10 */ /***/ function(module, exports, __webpack_require__) { "use strict"; /** * Copyright (c) 2013-present, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. * * @typechecks */ 'use strict'; var camelize = __webpack_require__(9); var msPattern = /^-ms-/; /** * Camelcases a hyphenated CSS property name, for example: * * > camelizeStyleName('background-color') * < "backgroundColor" * > camelizeStyleName('-moz-transition') * < "MozTransition" * > camelizeStyleName('-ms-transition') * < "msTransition" * * As Andi Smith suggests * (http://www.andismith.com/blog/2012/02/modernizr-prefixed/), an `-ms` prefix * is converted to lowercase `ms`. * * @param {string} string * @return {string} */ function camelizeStyleName(string) { return camelize(string.replace(msPattern, 'ms-')); } module.exports = camelizeStyleName; /***/ }, /* 11 */ /***/ function(module, exports) { "use strict"; "use strict"; /** * Copyright (c) 2013-present, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. * * */ function makeEmptyFunction(arg) { return function () { return arg; }; } /** * This function accepts and discards inputs; it has no side effects. This is * primarily useful idiomatically for overridable function endpoints which * always need to be callable, since JS lacks a null-call idiom ala Cocoa. */ var emptyFunction = function emptyFunction() {}; emptyFunction.thatReturns = makeEmptyFunction; emptyFunction.thatReturnsFalse = makeEmptyFunction(false); emptyFunction.thatReturnsTrue = makeEmptyFunction(true); emptyFunction.thatReturnsNull = makeEmptyFunction(null); emptyFunction.thatReturnsThis = function () { return this; }; emptyFunction.thatReturnsArgument = function (arg) { return arg; }; module.exports = emptyFunction; /***/ }, /* 12 */ /***/ function(module, exports) { "use strict"; 'use strict'; /** * Copyright (c) 2013-present, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. * * @typechecks */ var _uppercasePattern = /([A-Z])/g; /** * Hyphenates a camelcased string, for example: * * > hyphenate('backgroundColor') * < "background-color" * * For CSS style names, use `hyphenateStyleName` instead which works properly * with all vendor prefixes, including `ms`. * * @param {string} string * @return {string} */ function hyphenate(string) { return string.replace(_uppercasePattern, '-$1').toLowerCase(); } module.exports = hyphenate; /***/ }, /* 13 */ /***/ function(module, exports, __webpack_require__) { "use strict"; /** * Copyright (c) 2013-present, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. * * @typechecks */ 'use strict'; var hyphenate = __webpack_require__(12); var msPattern = /^ms-/; /** * Hyphenates a camelcased CSS property name, for example: * * > hyphenateStyleName('backgroundColor') * < "background-color" * > hyphenateStyleName('MozTransition') * < "-moz-transition" * > hyphenateStyleName('msTransition') * < "-ms-transition" * * As Modernizr suggests (http://modernizr.com/docs/#prefixed), an `ms` prefix * is converted to `-ms-`. * * @param {string} string * @return {string} */ function hyphenateStyleName(string) { return hyphenate(string).replace(msPattern, '-ms-'); } module.exports = hyphenateStyleName; /***/ }, /* 14 */ /***/ function(module, exports) { "use strict"; /** * Copyright (c) 2013-present, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. * * * @typechecks static-only */ 'use strict'; /** * Memoizes the return value of a function that accepts one string argument. */ function memoizeStringOnly(callback) { var cache = {}; return function (string) { if (!cache.hasOwnProperty(string)) { cache[string] = callback.call(this, string); } return cache[string]; }; } module.exports = memoizeStringOnly; /***/ }, /* 15 */ /***/ function(module, exports, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__sheet_js__ = __webpack_require__(5); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__CSSPropertyOperations__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__clean_js__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__plugins__ = __webpack_require__(4); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__hash__ = __webpack_require__(3); /* harmony export (binding) */ __webpack_require__.d(exports, "styleSheet", function() { return styleSheet; }); /* harmony export (immutable) */ exports["speedy"] = speedy; /* harmony export (binding) */ __webpack_require__.d(exports, "plugins", function() { return plugins; }); /* harmony export (immutable) */ exports["simulations"] = simulations; /* harmony export (immutable) */ exports["simulate"] = simulate; /* harmony export (immutable) */ exports["cssLabels"] = cssLabels; /* harmony export (immutable) */ exports["isLikeRule"] = isLikeRule; /* harmony export (immutable) */ exports["idFor"] = idFor; /* harmony export (immutable) */ exports["css"] = css; /* harmony export (binding) */ __webpack_require__.d(exports, "insertRule", function() { return insertRule; }); /* harmony export (binding) */ __webpack_require__.d(exports, "insertGlobal", function() { return insertGlobal; }); /* harmony export (binding) */ __webpack_require__.d(exports, "fontFace", function() { return fontFace; }); /* harmony export (binding) */ __webpack_require__.d(exports, "keyframes", function() { return keyframes; }); /* harmony export (immutable) */ exports["rehydrate"] = rehydrate; /* harmony export (immutable) */ exports["flush"] = flush; /* harmony export (binding) */ __webpack_require__.d(exports, "presets", function() { return presets; }); /* harmony export (binding) */ __webpack_require__.d(exports, "style", function() { return style; }); /* harmony export (immutable) */ exports["select"] = select; /* harmony export (binding) */ __webpack_require__.d(exports, "$", function() { return $; }); /* harmony export (immutable) */ exports["parent"] = parent; /* harmony export (binding) */ __webpack_require__.d(exports, "merge", function() { return merge; }); /* harmony export (binding) */ __webpack_require__.d(exports, "compose", function() { return compose; }); /* harmony export (immutable) */ exports["media"] = media; /* harmony export (immutable) */ exports["pseudo"] = pseudo; /* harmony export (immutable) */ exports["active"] = active; /* harmony export (immutable) */ exports["any"] = any; /* harmony export (immutable) */ exports["checked"] = checked; /* harmony export (immutable) */ exports["disabled"] = disabled; /* harmony export (immutable) */ exports["empty"] = empty; /* harmony export (immutable) */ exports["enabled"] = enabled; /* harmony export (immutable) */ exports["_default"] = _default; /* harmony export (immutable) */ exports["first"] = first; /* harmony export (immutable) */ exports["firstChild"] = firstChild; /* harmony export (immutable) */ exports["firstOfType"] = firstOfType; /* harmony export (immutable) */ exports["fullscreen"] = fullscreen; /* harmony export (immutable) */ exports["focus"] = focus; /* harmony export (immutable) */ exports["hover"] = hover; /* harmony export (immutable) */ exports["indeterminate"] = indeterminate; /* harmony export (immutable) */ exports["inRange"] = inRange; /* harmony export (immutable) */ exports["invalid"] = invalid; /* harmony export (immutable) */ exports["lastChild"] = lastChild; /* harmony export (immutable) */ exports["lastOfType"] = lastOfType; /* harmony export (immutable) */ exports["left"] = left; /* harmony export (immutable) */ exports["link"] = link; /* harmony export (immutable) */ exports["onlyChild"] = onlyChild; /* harmony export (immutable) */ exports["onlyOfType"] = onlyOfType; /* harmony export (immutable) */ exports["optional"] = optional; /* harmony export (immutable) */ exports["outOfRange"] = outOfRange; /* harmony export (immutable) */ exports["readOnly"] = readOnly; /* harmony export (immutable) */ exports["readWrite"] = readWrite; /* harmony export (immutable) */ exports["required"] = required; /* harmony export (immutable) */ exports["right"] = right; /* harmony export (immutable) */ exports["root"] = root; /* harmony export (immutable) */ exports["scope"] = scope; /* harmony export (immutable) */ exports["target"] = target; /* harmony export (immutable) */ exports["valid"] = valid; /* harmony export (immutable) */ exports["visited"] = visited; /* harmony export (immutable) */ exports["dir"] = dir; /* harmony export (immutable) */ exports["lang"] = lang; /* harmony export (immutable) */ exports["not"] = not; /* harmony export (immutable) */ exports["nthChild"] = nthChild; /* harmony export (immutable) */ exports["nthLastChild"] = nthLastChild; /* harmony export (immutable) */ exports["nthLastOfType"] = nthLastOfType; /* harmony export (immutable) */ exports["nthOfType"] = nthOfType; /* harmony export (immutable) */ exports["after"] = after; /* harmony export (immutable) */ exports["before"] = before; /* harmony export (immutable) */ exports["firstLetter"] = firstLetter; /* harmony export (immutable) */ exports["firstLine"] = firstLine; /* harmony export (immutable) */ exports["selection"] = selection; /* harmony export (immutable) */ exports["backdrop"] = backdrop; /* harmony export (immutable) */ exports["placeholder"] = placeholder; /* harmony export (immutable) */ exports["cssFor"] = cssFor; /* harmony export (immutable) */ exports["attribsFor"] = attribsFor; function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } /* stylesheet */ var styleSheet = new __WEBPACK_IMPORTED_MODULE_0__sheet_js__["a" /* StyleSheet */](); // an isomorphic StyleSheet shim. hides all the nitty gritty. // /**************** LIFTOFF IN 3... 2... 1... ****************/ styleSheet.inject(); //eslint-disable-line indent // /**************** TO THE MOOOOOOON ****************/ // convenience function to toggle speedy function speedy(bool) { return styleSheet.speedy(bool); } // plugins // we include these by default var plugins = styleSheet.plugins = new __WEBPACK_IMPORTED_MODULE_3__plugins__["a" /* PluginSet */]([__WEBPACK_IMPORTED_MODULE_3__plugins__["b" /* prefixes */], __WEBPACK_IMPORTED_MODULE_3__plugins__["c" /* fallbacks */]]); plugins.media = new __WEBPACK_IMPORTED_MODULE_3__plugins__["a" /* PluginSet */](); // neat! media, font-face, keyframes plugins.fontFace = new __WEBPACK_IMPORTED_MODULE_3__plugins__["a" /* PluginSet */](); plugins.keyframes = new __WEBPACK_IMPORTED_MODULE_3__plugins__["a" /* PluginSet */]([__WEBPACK_IMPORTED_MODULE_3__plugins__["b" /* prefixes */]]); // define some constants var isDev = "development" === 'development' || !"development"; var isTest = "development" === 'test'; /**** simulations ****/ // a flag to enable simulation meta tags on dom nodes // defaults to true in dev mode. recommend *not* to // toggle often. var canSimulate = isDev; // we use these flags for issuing warnings when simulate is called // in prod / in incorrect order var warned1 = false, warned2 = false; // toggles simulation activity. shouldn't be needed in most cases function simulations() { var bool = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true; canSimulate = !!bool; } // use this on dom nodes to 'simulate' pseudoclasses //