UNPKG

hy-push-state

Version:

Turn static web sites into dynamic web apps

1,123 lines (894 loc) 777 kB
(function webpackUniversalModuleDefinition(root, factory) { if(typeof exports === 'object' && typeof module === 'object') module.exports = factory(); else if(typeof define === 'function' && define.amd) define("hyPushState", [], factory); else if(typeof exports === 'object') exports["hyPushState"] = factory(); else root["hyPushState"] = factory(); })(window, 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; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // create a fake namespace object /******/ // mode & 1: value is a module id, require it /******/ // mode & 2: merge all properties of value into the ns /******/ // mode & 4: return value when already ns object /******/ // mode & 8|1: behave like require /******/ __webpack_require__.t = function(value, mode) { /******/ if(mode & 1) value = __webpack_require__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __webpack_require__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // 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 = "./src/webcomponent/module.js"); /******/ }) /************************************************************************/ /******/ ({ /***/ "./node_modules/attr-types/array-of.js": /*!*********************************************!*\ !*** ./node_modules/attr-types/array-of.js ***! \*********************************************/ /*! exports provided: arrayOf, default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "arrayOf", function() { return arrayOf; }); /* harmony import */ var _array__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./array */ "./node_modules/attr-types/array.js"); var arrayOf = function arrayOf(type) { var f = function f(attr) { if (attr == null) return null; var a = Object(_array__WEBPACK_IMPORTED_MODULE_0__["array"])(attr).map(type); if (a.reduce(function (r, x) { return r && x !== null; }, true)) { return a; } return null; }; f.stringify = function (a) { var a2 = a && a.map && a.map(type.stringify); if (a2 && a2.reduce(function (r, x) { return r && x !== null; }, true)) { return _array__WEBPACK_IMPORTED_MODULE_0__["array"].stringify(a2); } return null; }; return f; }; /* harmony default export */ __webpack_exports__["default"] = (arrayOf); /***/ }), /***/ "./node_modules/attr-types/array.js": /*!******************************************!*\ !*** ./node_modules/attr-types/array.js ***! \******************************************/ /*! exports provided: array, default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "array", function() { return array; }); var array = function array(attr) { if (attr == null) return null; var str = attr.trim().replace(/^\[?(.*?)\]?$/, "$1").split(",").map(function (x) { return x.trim(); }); return str || null; }; array.stringify = function (a) { return a && a.length > 0 ? a.join(",") : null; }; /* harmony default export */ __webpack_exports__["default"] = (array); /***/ }), /***/ "./node_modules/attr-types/bool.js": /*!*****************************************!*\ !*** ./node_modules/attr-types/bool.js ***! \*****************************************/ /*! exports provided: bool, default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "bool", function() { return bool; }); var bool = function bool(attr) { if (attr == null) return false; var attr2 = attr.trim && attr.trim() || attr; return !(attr2 === "false" || attr2 === "null" || attr2 === "undefined" || attr2 === "0" || attr2 === false); }; bool.stringify = function (b) { return b ? "" : null; }; /* harmony default export */ __webpack_exports__["default"] = (bool); /***/ }), /***/ "./node_modules/attr-types/index.js": /*!******************************************!*\ !*** ./node_modules/attr-types/index.js ***! \******************************************/ /*! exports provided: array, arrayOf, bool, number, oneOf, regex, string, default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony import */ var _array__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./array */ "./node_modules/attr-types/array.js"); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "array", function() { return _array__WEBPACK_IMPORTED_MODULE_0__["array"]; }); /* harmony import */ var _array_of__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./array-of */ "./node_modules/attr-types/array-of.js"); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "arrayOf", function() { return _array_of__WEBPACK_IMPORTED_MODULE_1__["arrayOf"]; }); /* harmony import */ var _bool__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./bool */ "./node_modules/attr-types/bool.js"); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "bool", function() { return _bool__WEBPACK_IMPORTED_MODULE_2__["bool"]; }); /* harmony import */ var _number__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./number */ "./node_modules/attr-types/number.js"); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "number", function() { return _number__WEBPACK_IMPORTED_MODULE_3__["number"]; }); /* harmony import */ var _one_of__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./one-of */ "./node_modules/attr-types/one-of.js"); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "oneOf", function() { return _one_of__WEBPACK_IMPORTED_MODULE_4__["oneOf"]; }); /* harmony import */ var _regex__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./regex */ "./node_modules/attr-types/regex.js"); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "regex", function() { return _regex__WEBPACK_IMPORTED_MODULE_5__["regex"]; }); /* harmony import */ var _string__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./string */ "./node_modules/attr-types/string.js"); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "string", function() { return _string__WEBPACK_IMPORTED_MODULE_6__["string"]; }); /* harmony default export */ __webpack_exports__["default"] = ({ array: _array__WEBPACK_IMPORTED_MODULE_0__["array"], arrayOf: _array_of__WEBPACK_IMPORTED_MODULE_1__["arrayOf"], bool: _bool__WEBPACK_IMPORTED_MODULE_2__["bool"], number: _number__WEBPACK_IMPORTED_MODULE_3__["number"], oneOf: _one_of__WEBPACK_IMPORTED_MODULE_4__["oneOf"], regex: _regex__WEBPACK_IMPORTED_MODULE_5__["regex"], string: _string__WEBPACK_IMPORTED_MODULE_6__["string"] }); /***/ }), /***/ "./node_modules/attr-types/number.js": /*!*******************************************!*\ !*** ./node_modules/attr-types/number.js ***! \*******************************************/ /*! exports provided: number, default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "number", function() { return number; }); var number = function number(attr) { if (attr == null) return null; return Number(attr); }; number.stringify = function (n) { if (n == null) return null; return "".concat(n); }; /* harmony default export */ __webpack_exports__["default"] = (number); /***/ }), /***/ "./node_modules/attr-types/one-of.js": /*!*******************************************!*\ !*** ./node_modules/attr-types/one-of.js ***! \*******************************************/ /*! exports provided: oneOf, default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "oneOf", function() { return oneOf; }); var oneOf = function oneOf(alts) { var f = function f(attr) { if (attr == null) return null; var i = alts.indexOf(attr); if ( true && i === -1) { console.warn("'".concat(attr, "' is not 'oneOf': ").concat(alts.join(", "))); } return i > -1 ? alts[i] : null; }; f.stringify = function (o) { return alts.indexOf(o) !== -1 ? o : null; }; return f; }; /* harmony default export */ __webpack_exports__["default"] = (oneOf); /***/ }), /***/ "./node_modules/attr-types/regex.js": /*!******************************************!*\ !*** ./node_modules/attr-types/regex.js ***! \******************************************/ /*! exports provided: regex, default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "regex", function() { return regex; }); var regex = function regex(attr) { if (attr == null) return null; var attr2 = attr.trim && attr.trim() || attr; var match = attr2.match(/^\/?(.*?)(\/([gimy]*))?$/); return new RegExp(match[1], match[3]); }; regex.stringify = function (r) { return r && r.toString() || null; }; /* harmony default export */ __webpack_exports__["default"] = (regex); /***/ }), /***/ "./node_modules/attr-types/string.js": /*!*******************************************!*\ !*** ./node_modules/attr-types/string.js ***! \*******************************************/ /*! exports provided: string, default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "string", function() { return string; }); var string = function string(attr) { return attr; }; string.stringify = function (s) { return s; }; /* harmony default export */ __webpack_exports__["default"] = (string); /***/ }), /***/ "./node_modules/hy-component/src/common.js": /*!*************************************************!*\ !*** ./node_modules/hy-component/src/common.js ***! \*************************************************/ /*! exports provided: parseType, decamelize, camelCase */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "parseType", function() { return parseType; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "decamelize", function() { return decamelize; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "camelCase", function() { return camelCase; }); // # src / common.js // Copyright (c) 2018 Florian Klampfer <https://qwtel.com/> // Licensed under MIT /* eslint-disable no-plusplus */ function parseType(type, attr) { if ( true && !type) { return console.warn("No type provided for attribute ".concat(attr, ".")); } return type ? type(attr) : attr; } function decamelize(str) { var sep = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "-"; return str.replace(/([a-z\d])([A-Z])/g, "$1".concat(sep, "$2")).replace(/([A-Z]+)([A-Z][a-z\d]+)/g, "$1".concat(sep, "$2")).toLowerCase(); } function preserveCamelCase(strarg) { var str = strarg; var isLastCharLower = false; var isLastCharUpper = false; var isLastLastCharUpper = false; for (var i = 0; i < str.length; i++) { var c = str.charAt(i); if (isLastCharLower && /[a-zA-Z]/.test(c) && c.toUpperCase() === c) { str = "".concat(str.substr(0, i), "-").concat(str.substr(i)); isLastCharLower = false; isLastLastCharUpper = isLastCharUpper; isLastCharUpper = true; i++; } else if (isLastCharUpper && isLastLastCharUpper && /[a-zA-Z]/.test(c) && c.toLowerCase() === c) { str = "".concat(str.substr(0, i - 1), "-").concat(str.substr(i - 1)); isLastLastCharUpper = isLastCharUpper; isLastCharUpper = false; isLastCharLower = true; } else { isLastCharLower = c.toLowerCase() === c; isLastLastCharUpper = isLastCharUpper; isLastCharUpper = c.toUpperCase() === c; } } return str; } function camelCase() { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } var str = [].map.call(args, function (x) { return x.trim(); }).filter(function (x) { return x.length; }).join("-"); if (str.length === 0) { return ""; } if (str.length === 1) { return str.toLowerCase(); } str = preserveCamelCase(str); return str.replace(/^[_.\- ]+/, "").toLowerCase().replace(/[_.\- ]+(\w|$)/g, function (m, p1) { return p1.toUpperCase(); }); } /***/ }), /***/ "./node_modules/hy-component/src/component.js": /*!****************************************************!*\ !*** ./node_modules/hy-component/src/component.js ***! \****************************************************/ /*! exports provided: Set, COMPONENT_FEATURE_TESTS, componentMixin */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "COMPONENT_FEATURE_TESTS", function() { return COMPONENT_FEATURE_TESTS; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "componentMixin", function() { return componentMixin; }); /* harmony import */ var qd_set__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! qd-set */ "./node_modules/qd-set/esm/index.js"); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Set", function() { return qd_set__WEBPACK_IMPORTED_MODULE_0__["Set"]; }); function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } 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); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function () { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; } function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } // # src / component.js // Copyright (c) 2018 Florian Klampfer <https://qwtel.com/> // Licensed under MIT // import 'core-js/fn/array/for-each'; // import 'core-js/fn/object/assign'; // import 'core-js/fn/object/define-property'; // import 'core-js/fn/object/keys'; var COMPONENT_FEATURE_TESTS = new qd_set__WEBPACK_IMPORTED_MODULE_0__["Set"](["customevent"]); var sSymbol = Symbol || function (x) { return "_".concat(x); }; var sRoot = sSymbol("sroot"); var sState = sSymbol("state"); window.process = window.process || {}; window.process.env = window.process.env || {}; window.requestIdleCallback = window.requestIdleCallback || function (f) { return window.setTimeout(f, 0); }; window.cancelIdleCallback = window.cancelIdleCallback || window.clearTimeout; var Component = function Component() { _classCallCheck(this, Component); }; var componentMixin = function componentMixin() { var C = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : Component; return /*#__PURE__*/function (_C) { _inherits(_class, _C); var _super = _createSuper(_class); function _class() { _classCallCheck(this, _class); return _super.apply(this, arguments); } _createClass(_class, [{ key: "setupComponent", value: function setupComponent(el, state) { var defaults = this.constructor.defaults; if (true) { var _this$constructor = this.constructor, componentName = _this$constructor.componentName, sideEffects = _this$constructor.sideEffects; if (!componentName) { console.warn("Component needs to have a name, e.g. `my-tag`. To set a name, provide a static getter called `componentName`."); } if (!defaults) { console.warn("No default properties provided. Implement a static getter called `defaults`."); } if (!sideEffects) { console.warn("No side effects provided. Implement a static getter called `sideEffects`."); } } this[sState] = Object.assign({}, defaults, state); this.setupProperties(this); this[sRoot] = this.setupShadowDOM(el); } }, { key: "setupShadowDOM", value: function setupShadowDOM(el) { return el; } }, { key: "connectComponent", value: function connectComponent() {} }, { key: "disconnectComponent", value: function disconnectComponent() {} }, { key: "adoptComponent", value: function adoptComponent() {} }, { key: "getRoot", value: function getRoot() { return this[sRoot]; } }, { key: "getEl", value: function getEl() { return this[sRoot]; } }, { key: "fireEvent", value: function fireEvent(eventName, data) { var componentName = this.constructor.componentName; var event = new CustomEvent("".concat(componentName, "-").concat(eventName), data); this.el.dispatchEvent(event); } }, { key: "setInternalState", value: function setInternalState(key, value) { this[sState][key] = value; } }, { key: "setupProperties", value: function setupProperties() { var _this = this; var sideEffects = this.constructor.sideEffects; Object.keys(this[sState]).forEach(function (key) { var sideEffect = sideEffects[key]; _this.setupProperty(key, sideEffect); }); } }, { key: "setupProperty", value: function setupProperty(key, sideEffect) { var _this2 = this; Object.defineProperty(this, key, { get: function get() { return _this2[sState][key]; }, set: function set(value) { var oldValue = _this2[sState][key]; _this2.setInternalState(key, value); if (sideEffect) sideEffect.call(_this2, value, oldValue); }, enumerable: true, configurable: true }); } }, { key: "sroot", get: function get() { return this.getRoot(); } }, { key: "el", get: function get() { return this.getEl(); } }]); return _class; }(C); }; /***/ }), /***/ "./node_modules/hy-component/src/custom-element.js": /*!*********************************************************!*\ !*** ./node_modules/hy-component/src/custom-element.js ***! \*********************************************************/ /*! exports provided: Set, CUSTOM_ELEMENT_FEATURE_TESTS, customElementMixin, CustomElement, fragmentFromString */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CUSTOM_ELEMENT_FEATURE_TESTS", function() { return CUSTOM_ELEMENT_FEATURE_TESTS; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "customElementMixin", function() { return customElementMixin; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CustomElement", function() { return CustomElement; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fragmentFromString", function() { return fragmentFromString; }); /* harmony import */ var qd_set__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! qd-set */ "./node_modules/qd-set/esm/index.js"); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Set", function() { return qd_set__WEBPACK_IMPORTED_MODULE_0__["Set"]; }); /* harmony import */ var _common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./common */ "./node_modules/hy-component/src/common.js"); /* harmony import */ var _component__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./component */ "./node_modules/hy-component/src/component.js"); function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _get(target, property, receiver) { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); } function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; } 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); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function () { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; } function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); } function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } // # src / custom-element.js // Copyright (c) 2018 Florian Klampfer <https://qwtel.com/> // Licensed under MIT // import 'core-js/fn/array/for-each'; // import 'core-js/fn/array/from'; // import 'core-js/fn/array/map'; // import 'core-js/fn/number/constructor'; // import 'core-js/fn/object/keys'; // import 'core-js/fn/object/set-prototype-of'; // import 'core-js/fn/reflect/construct'; // import 'core-js/fn/string/trim'; // used by camelcase var CUSTOM_ELEMENT_FEATURE_TESTS = new qd_set__WEBPACK_IMPORTED_MODULE_0__["Set"]([].concat(_toConsumableArray(_component__WEBPACK_IMPORTED_MODULE_2__["COMPONENT_FEATURE_TESTS"]), ["template", "customelements"])); var circutBreaker = null; var customElementMixin = function customElementMixin(C) { return /*#__PURE__*/function (_C) { _inherits(_class, _C); var _super = _createSuper(_class); _createClass(_class, null, [{ key: "getObservedAttributes", value: function getObservedAttributes() { var types = this.types; return Object.keys(types).map(function (x) { return Object(_common__WEBPACK_IMPORTED_MODULE_1__["decamelize"])(x); }); } }]); function _class() { var _this; _classCallCheck(this, _class); for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } _this = _super.call.apply(_super, [this].concat(args)); _this.setupComponent(_assertThisInitialized(_this), _this.getStateFromAttributes()); return _this; } _createClass(_class, [{ key: "reflectAttribute", value: function reflectAttribute(key, val) { var silent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var attrName = Object(_common__WEBPACK_IMPORTED_MODULE_1__["decamelize"])(key); if (silent) circutBreaker = attrName; var types = this.constructor.types; var type = types[key]; if ( true && (!type || !type.stringify)) { console.warn("No type provided for key '".concat(key, "'")); } var attr = type.stringify(val); if (attr == null) { this.removeAttribute(attrName); } else { this.setAttribute(attrName, attr); } } /* reflectAttributes() { const { types } = this.constructor; Object.keys(types).forEach(key => this.reflectAttribute(key, this[key], true)); } */ }, { key: "getStateFromAttributes", value: function getStateFromAttributes() { var _this2 = this; var types = this.constructor.types; var state = {}; Object.keys(types).forEach(function (key) { var attrName = Object(_common__WEBPACK_IMPORTED_MODULE_1__["decamelize"])(key); var attr = _this2.hasAttribute(attrName) ? _this2.getAttribute(attrName) : null; var value = Object(_common__WEBPACK_IMPORTED_MODULE_1__["parseType"])(types[key], attr); if (value != null) state[key] = value; }); return state; } }, { key: "connectedCallback", value: function connectedCallback() { /* this.reflectAttributes(); */ this.connectComponent(); } }, { key: "disconnectedCallback", value: function disconnectedCallback() { this.disconnectComponent(); } }, { key: "adoptedCallback", value: function adoptedCallback() { this.adoptComponent(); } }, { key: "attributeChangedCallback", value: function attributeChangedCallback(attrName, oldAttr, attr) { if (circutBreaker === attrName) circutBreaker = null;else if (oldAttr !== attr) { var types = this.constructor.types; var key = Object(_common__WEBPACK_IMPORTED_MODULE_1__["camelCase"])(attrName); var value = Object(_common__WEBPACK_IMPORTED_MODULE_1__["parseType"])(types[key], attr); this[key] = value != null ? value : this.constructor.defaults[key]; } } }, { key: "setInternalState", value: function setInternalState(key, value) { _get(_getPrototypeOf(_class.prototype), "setInternalState", this).call(this, key, value); this.reflectAttribute(key, value, true); } }, { key: "setupShadowDOM", value: function setupShadowDOM(el) { var instance = this.getTemplate(); if (instance) { if ("attachShadow" in Element.prototype) { el.attachShadow({ mode: "open" }); el.shadowRoot.appendChild(instance); return el.shadowRoot; } if (true) console.warn("Component doesnt define a template. Intentional?"); throw Error("ShadowDOM API not supported"); } return el; } }, { key: "getEl", value: function getEl() { return this; } }, { key: "getTemplate", value: function getTemplate() { var componentName = this.constructor.componentName; return document.querySelector("link[href*=\"".concat(componentName, "\"]"))["import"].querySelector("#".concat(componentName, "-template")).content.cloneNode(true); } }, { key: "template", get: function get() { return this.getTemplate(); } }]); return _class; }(C); }; // This is a drop-in replacement for `HTMLElement` which is compatible with babel. function CustomElement() { var HTMLElement = typeof window.HTMLElement === "function" ? window.HTMLElement : function () {}; return Reflect.construct(HTMLElement, [], this.__proto__.constructor); // eslint-disable-line } if (Object.setPrototypeOf) { Object.setPrototypeOf(CustomElement.prototype, HTMLElement.prototype); Object.setPrototypeOf(CustomElement, HTMLElement); } // TODO function fragmentFromString(strHTML) { return document.createRange().createContextualFragment(strHTML); } /***/ }), /***/ "./node_modules/hy-component/src/rxjs.js": /*!***********************************************!*\ !*** ./node_modules/hy-component/src/rxjs.js ***! \***********************************************/ /*! exports provided: rxjsMixin, createXObservable */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "rxjsMixin", function() { return rxjsMixin; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createXObservable", function() { return createXObservable; }); /* harmony import */ var rxjs_esm5__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! rxjs/_esm5 */ "./node_modules/rxjs/_esm5/index.js"); function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a 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); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } function _get(target, property, receiver) { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); } function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; } function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function () { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; } function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } // # src / rxjs.js // Copyright (c) 2018 Florian Klampfer <https://qwtel.com/> // Licensed under MIT var rxjsMixin = function rxjsMixin(C) { return /*#__PURE__*/function (_C) { _inherits(_class, _C); var _super = _createSuper(_class); function _class() { _classCallCheck(this, _class); return _super.apply(this, arguments); } _createClass(_class, [{ key: "setupComponent", value: function setupComponent(el, opts) { var _this = this; var sideEffects = {}; this.subjects = {}; this.subjects.disconnect = new rxjs_esm5__WEBPACK_IMPORTED_MODULE_0__["Subject"](); this.subjects.document = new rxjs_esm5__WEBPACK_IMPORTED_MODULE_0__["ReplaySubject"](); Object.keys(this.constructor.types).map(function (key) { _this.subjects[key] = new rxjs_esm5__WEBPACK_IMPORTED_MODULE_0__["ReplaySubject"](1); sideEffects[key] = function (x) { return _this.subjects[key].next(x); }; }); Object.defineProperty(this.constructor, "sideEffects", { get: function get() { return sideEffects; }, set: function set() {}, enumerable: true, configurable: true }); _get(_getPrototypeOf(_class.prototype), "setupComponent", this).call(this, el, opts); } }, { key: "connectComponent", value: function connectComponent() { var _this2 = this; _get(_getPrototypeOf(_class.prototype), "connectComponent", this).call(this); this.subjects.document.next(document); Object.keys(this.constructor.types).map(function (key) { return _this2.subjects[key].next(_this2[key]); }); } }, { key: "disconnectComponent", value: function disconnectComponent() { _get(_getPrototypeOf(_class.prototype), "disconnectComponent", this).call(this); this.subjects.disconnect.next({}); } }, { key: "adaptComponent", value: function adaptComponent() { _get(_getPrototypeOf(_class.prototype), "adaptComponent", this).call(this); this.subjects.document.next(document); } }]); return _class; }(C); }; var createXObservable = function createXObservable(X) { return function (el, cOpts, oOpts) { return rxjs_esm5__WEBPACK_IMPORTED_MODULE_0__["Observable"].create(function (obs) { var next = obs.next.bind(obs); var observer = new X(function (xs) { return Array.from(xs).forEach(next); }, cOpts); /* if (process.env.DEBUG) console.log("observe", X.name); */ observer.observe(el, oOpts); return function () { /* if (process.env.DEBUG) console.log("unobserve", X.name); */ observer.unobserve(el); }; }); }; }; /***/ }), /***/ "./node_modules/hy-component/src/types.js": /*!************************************************!*\ !*** ./node_modules/hy-component/src/types.js ***! \************************************************/ /*! exports provided: array, arrayOf, bool, number, oneOf, regex, string, default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony import */ var attr_types__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! attr-types */ "./node_modules/attr-types/index.js"); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "array", function() { return attr_types__WEBPACK_IMPORTED_MODULE_0__["array"]; }); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "arrayOf", function() { return attr_types__WEBPACK_IMPORTED_MODULE_0__["arrayOf"]; }); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "bool", function() { return attr_types__WEBPACK_IMPORTED_MODULE_0__["bool"]; }); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "number", function() { return attr_types__WEBPACK_IMPORTED_MODULE_0__["number"]; }); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "oneOf", function() { return attr_types__WEBPACK_IMPORTED_MODULE_0__["oneOf"]; }); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "regex", function() { return attr_types__WEBPACK_IMPORTED_MODULE_0__["regex"]; }); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "string", function() { return attr_types__WEBPACK_IMPORTED_MODULE_0__["string"]; }); /* harmony default export */ __webpack_exports__["default"] = ({ array: attr_types__WEBPACK_IMPORTED_MODULE_0__["array"], arrayOf: attr_types__WEBPACK_IMPORTED_MODULE_0__["arrayOf"], bool: attr_types__WEBPACK_IMPORTED_MODULE_0__["bool"], number: attr_types__WEBPACK_IMPORTED_MODULE_0__["number"], oneOf: attr_types__WEBPACK_IMPORTED_MODULE_0__["oneOf"], regex: attr_types__WEBPACK_IMPORTED_MODULE_0__["regex"], string: attr_types__WEBPACK_IMPORTED_MODULE_0__["string"] }); /***/ }), /***/ "./node_modules/qd-set/esm/index.js": /*!******************************************!*\ !*** ./node_modules/qd-set/esm/index.js ***! \******************************************/ /*! exports provided: Set */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Set", function() { return _Set; }); var _Set = typeof Set !== 'undefined' && new Set([1]).size === 1 ? Set : function () { var a = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; a = a.filter(function (x, i) { return i === a.indexOf(x); }); a.size = a.length; a.has = function (x) { return a.indexOf(x) > -1; }; a.add = function (x) { if (!a.has(x)) { a.size++; a.push(x); } return a; }; a["delete"] = function (x) { var t; if (t = a.has(x)) { a.size--; a.splice(a.indexOf(x), 1); } return t; }; a.clear = function () { while (a.pop()) {} a.size = 0; }; return a; }; /***/ }), /***/ "./node_modules/rxjs/_esm5/ajax/index.js": /*!***********************************************!*\ !*** ./node_modules/rxjs/_esm5/ajax/index.js ***! \***********************************************/ /*! exports provided: ajax, AjaxResponse, AjaxError, AjaxTimeoutError */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony import */ var _internal_observable_dom_ajax__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../internal/observable/dom/ajax */ "./node_modules/rxjs/_esm5/internal/observable/dom/ajax.js"); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ajax", function() { return _internal_observable_dom_ajax__WEBPACK_IMPORTED_MODULE_0__["ajax"]; }); /* harmony import */ var _internal_observable_dom_AjaxObservable__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../internal/observable/dom/AjaxObservable */ "./node_modules/rxjs/_esm5/internal/observable/dom/AjaxObservable.js"); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "AjaxResponse", function() { return _internal_observable_dom_AjaxObservable__WEBPACK_IMPORTED_MODULE_1__["AjaxResponse"]; }); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "AjaxError", function() { return _internal_observable_dom_AjaxObservable__WEBPACK_IMPORTED_MODULE_1__["AjaxError"]; }); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "AjaxTimeoutError", function() { return _internal_observable_dom_AjaxObservable__WEBPACK_IMPORTED_MODULE_1__["AjaxTimeoutError"]; }); /** PURE_IMPORTS_START PURE_IMPORTS_END */ /***/ }), /***/ "./node_modules/rxjs/_esm5/index.js": /*!******************************************!*\ !*** ./node_modules/rxjs/_esm5/index.js ***! \******************************************/ /*! exports provided: Observable, ConnectableObservable, GroupedObservable, observable, Subject, BehaviorSubject, ReplaySubject, AsyncSubject, asapScheduler, asyncScheduler, queueScheduler, animationFrameScheduler, VirtualTimeScheduler, VirtualAction, Scheduler, Subscription, Subscriber, Notification, NotificationKind, pipe, noop, identity, isObservable, ArgumentOutOfRangeError, EmptyError, ObjectUnsubscribedError, UnsubscriptionError, TimeoutError, bindCallback, bindNodeCallback, combineLatest, concat, defer, empty, forkJoin, from, fromEvent, fromEventPattern, generate, iif, interval, merge, never, of, onErrorResumeNext, pairs, partition, race, range, throwError, timer, using, zip, scheduled, EMPTY, NEVER, config */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony import */ var _internal_Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./internal/Observable */ "./node_modules/rxjs/_esm5/internal/Observable.js"); /* harmony reexport (safe) */ __webpack_require__.d(__