{"version":3,"sources":["webpack:///./node_modules/sharer.js/sharer.js","webpack:///./node_modules/typed.js/lib/typed.js"],"names":["window","document","Sharer","elem","this","init","i","elems","querySelectorAll","l","length","addEventListener","add","target","currentTarget","srcElement","share","prototype","constructor","getValue","attr","val","getAttribute","startsWith","sharer","toLowerCase","s","facebook","shareUrl","params","u","hashtag","quote","linkedin","url","mini","twitter","text","hashtags","via","email","subject","body","isLink","whatsapp","telegram","viber","line","encodeURIComponent","pinterest","media","description","tumblr","canonicalUrl","content","posttype","title","caption","tags","hackernews","t","reddit","vk","image","xing","buffer","picture","instapaper","pocket","stumbleupon","mashable","mix","flipboard","v","Date","now","weibo","pic","appkey","ralateUid","language","renren","link","myspace","c","blogger","n","baidu","it","iu","douban","name","href","comment","okru","mailru","share_url","linkname","linknote","type","evernote","skype","delicious","sms","trello","desc","mode","messenger","odnoklassniki","st","cmd","deprecated","meneame","diaspora","googlebookmarks","op","bkmk","qzone","refind","surfingbird","yahoomail","to","wordpress","amazon","pinboard","threema","id","kakaostory","yummly","yumtype","width","height","undefined","urlSharer","p","keys","Object","str","location","popWidth","popHeight","left","innerWidth","screenX","popParams","innerHeight","screenY","newWindow","open","focus","readyState","factory","modules","installedModules","moduleId","exports","module","loaded","call","m","defineProperty","value","_createClass","defineProperties","props","descriptor","enumerable","configurable","writable","key","Constructor","protoProps","staticProps","_initializerJs","_htmlParserJs","Typed","elementId","options","instance","TypeError","_classCallCheck","initializer","load","begin","pause","status","start","stop","typingComplete","toggleBlinking","onStop","arrayPos","typewrite","curString","curStrPos","backspace","onStart","reset","onDestroy","restart","arguments","clearInterval","timeout","replaceText","cursor","parentNode","removeChild","strPos","curLoop","insertCursor","onReset","_this","onBegin","shuffleStringsIfNeeded","bindInputFocusEvents","bindFocusEvents","setTimeout","currentElContent","strings","sequence","startDelay","_this2","fadeOut","el","classList","contains","fadeOutClass","remove","humanize","humanizer","typeSpeed","numChars","htmlParser","typeHtmlChars","pauseTime","substr","charAt","test","skip","exec","parseInt","temporaryPause","onTypingPaused","substring","stringBeforeSkip","stringSkipped","stringAfterSkip","doneTyping","keepTyping","onTypingResumed","setPauseStatus","preStringTyped","nextString","_this3","onStringTyped","complete","loop","loopCount","backDelay","_this4","initFadeOut","backSpeed","backSpaceHtmlChars","curStringAtPosition","smartBackspace","stopNum","onLastStringBackspaced","onComplete","isTyping","isBlinking","cursorBlinking","speed","Math","round","random","shuffle","sort","_this5","className","fadeOutDelay","setAttribute","isInput","contentType","innerHTML","textContent","_this6","e","showCursor","createElement","cursorChar","insertBefore","nextSibling","obj","_extends","assign","source","hasOwnProperty","_defaultsJs","_defaultsJs2","__esModule","Initializer","self","querySelector","tagName","elContent","isPaused","map","trim","stringsElement","style","display","Array","slice","apply","children","stringsLength","stringEl","push","getCurrentElContent","autoInsertCss","appendAnimationCss","cssDataName","css","innerCss","appendChild","defaults","Infinity","HTMLParser","curChar","endTag"],"mappings":"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","file":"js/771-5227334191ca2c935fa6.js","sourcesContent":["/**\n * @preserve\n * Sharer.js\n *\n * @description Create your own social share buttons\n * @version 0.4.2\n * @author Ellison Leao \n * @license GPLv3\n *\n */\n\n(function (window, document) {\n 'use strict';\n /**\n * @constructor\n */\n var Sharer = function (elem) {\n this.elem = elem;\n };\n\n /**\n * @function init\n * @description bind the events for multiple sharer elements\n * @returns {Empty}\n */\n Sharer.init = function () {\n var elems = document.querySelectorAll('[data-sharer]'),\n i,\n l = elems.length;\n\n for (i = 0; i < l; i++) {\n elems[i].addEventListener('click', Sharer.add);\n }\n };\n\n /**\n * @function add\n * @description bind the share event for a single dom element\n * @returns {Empty}\n */\n Sharer.add = function (elem) {\n var target = elem.currentTarget || elem.srcElement;\n var sharer = new Sharer(target);\n sharer.share();\n };\n\n // instance methods\n Sharer.prototype = {\n constructor: Sharer,\n /**\n * @function getValue\n * @description Helper to get the attribute of a DOM element\n * @param {String} attr DOM element attribute\n * @returns {String|Empty} returns the attr value or empty string\n */\n getValue: function (attr) {\n var val = this.elem.getAttribute('data-' + attr);\n // handing facebook hashtag attribute\n if (val && attr === 'hashtag') {\n if (!val.startsWith('#')) {\n val = '#' + val;\n }\n }\n return val;\n },\n\n /**\n * @event share\n * @description Main share event. Will pop a window or redirect to a link\n * based on the data-sharer attribute.\n */\n share: function () {\n var sharer = this.getValue('sharer').toLowerCase(),\n sharers = {\n facebook: {\n shareUrl: 'https://www.facebook.com/sharer/sharer.php',\n params: {\n u: this.getValue('url'),\n hashtag: this.getValue('hashtag'),\n quote: this.getValue('quote'),\n },\n },\n linkedin: {\n shareUrl: 'https://www.linkedin.com/shareArticle',\n params: {\n url: this.getValue('url'),\n mini: true,\n },\n },\n twitter: {\n shareUrl: 'https://twitter.com/intent/tweet/',\n params: {\n text: this.getValue('title'),\n url: this.getValue('url'),\n hashtags: this.getValue('hashtags'),\n via: this.getValue('via'),\n },\n },\n email: {\n shareUrl: 'mailto:' + this.getValue('to') || '',\n params: {\n subject: this.getValue('subject'),\n body: this.getValue('title') + '\\n' + this.getValue('url'),\n },\n isLink: true,\n },\n whatsapp: {\n shareUrl: this.getValue('web') !== null ? 'https://api.whatsapp.com/send' : 'https://wa.me/',\n params: {\n text: this.getValue('title') + ' ' + this.getValue('url'),\n },\n isLink: true,\n },\n telegram: {\n shareUrl: this.getValue('web') !== null ? 'https://telegram.me/share' : 'tg://msg_url',\n params: {\n text: this.getValue('title'),\n url: this.getValue('url'),\n },\n isLink: true,\n },\n viber: {\n shareUrl: 'viber://forward',\n params: {\n text: this.getValue('title') + ' ' + this.getValue('url'),\n },\n isLink: true,\n },\n line: {\n shareUrl:\n 'http://line.me/R/msg/text/?' + encodeURIComponent(this.getValue('title') + ' ' + this.getValue('url')),\n isLink: true,\n },\n pinterest: {\n shareUrl: 'https://www.pinterest.com/pin/create/button/',\n params: {\n url: this.getValue('url'),\n media: this.getValue('image'),\n description: this.getValue('description'),\n },\n },\n tumblr: {\n shareUrl: 'http://tumblr.com/widgets/share/tool',\n params: {\n canonicalUrl: this.getValue('url'),\n content: this.getValue('url'),\n posttype: 'link',\n title: this.getValue('title'),\n caption: this.getValue('caption'),\n tags: this.getValue('tags'),\n },\n },\n hackernews: {\n shareUrl: 'https://news.ycombinator.com/submitlink',\n params: {\n u: this.getValue('url'),\n t: this.getValue('title'),\n },\n },\n reddit: {\n shareUrl: 'https://www.reddit.com/submit',\n params: { url: this.getValue('url') },\n },\n vk: {\n shareUrl: 'http://vk.com/share.php',\n params: {\n url: this.getValue('url'),\n title: this.getValue('title'),\n description: this.getValue('caption'),\n image: this.getValue('image'),\n },\n },\n xing: {\n shareUrl: 'https://www.xing.com/social/share/spi',\n params: {\n url: this.getValue('url'),\n },\n },\n buffer: {\n shareUrl: 'https://buffer.com/add',\n params: {\n url: this.getValue('url'),\n title: this.getValue('title'),\n via: this.getValue('via'),\n picture: this.getValue('picture'),\n },\n },\n instapaper: {\n shareUrl: 'http://www.instapaper.com/edit',\n params: {\n url: this.getValue('url'),\n title: this.getValue('title'),\n description: this.getValue('description'),\n },\n },\n pocket: {\n shareUrl: 'https://getpocket.com/save',\n params: {\n url: this.getValue('url'),\n },\n },\n stumbleupon: {\n // Usage deprecated, leaving for backwards compatibility.\n shareUrl: 'http://www.stumbleupon.com/submit',\n params: {\n url: this.getValue('url'),\n title: this.getValue('title'),\n },\n },\n mashable: {\n shareUrl: 'https://mashable.com/submit',\n params: {\n url: this.getValue('url'),\n title: this.getValue('title'),\n },\n },\n mix: {\n shareUrl: 'https://mix.com/add',\n params: {\n url: this.getValue('url'),\n },\n },\n flipboard: {\n shareUrl: 'https://share.flipboard.com/bookmarklet/popout',\n params: {\n v: 2,\n title: this.getValue('title'),\n url: this.getValue('url'),\n t: Date.now(),\n },\n },\n weibo: {\n shareUrl: 'http://service.weibo.com/share/share.php',\n params: {\n url: this.getValue('url'),\n title: this.getValue('title'),\n pic: this.getValue('image'),\n appkey: this.getValue('appkey'),\n ralateUid: this.getValue('ralateuid'),\n language: 'zh_cn',\n },\n },\n renren: {\n shareUrl: 'http://share.renren.com/share/buttonshare',\n params: {\n link: this.getValue('url'),\n },\n },\n myspace: {\n shareUrl: 'https://myspace.com/post',\n params: {\n u: this.getValue('url'),\n t: this.getValue('title'),\n c: this.getValue('description'),\n },\n },\n blogger: {\n shareUrl: 'https://www.blogger.com/blog-this.g',\n params: {\n u: this.getValue('url'),\n n: this.getValue('title'),\n t: this.getValue('description'),\n },\n },\n baidu: {\n shareUrl: 'http://cang.baidu.com/do/add',\n params: {\n it: this.getValue('title'),\n iu: this.getValue('url'),\n },\n },\n douban: {\n shareUrl: 'https://www.douban.com/share/service',\n params: {\n name: this.getValue('name'),\n href: this.getValue('url'),\n image: this.getValue('image'),\n comment: this.getValue('description'),\n },\n },\n okru: {\n shareUrl: 'https://connect.ok.ru/dk',\n params: {\n 'st.cmd': 'WidgetSharePreview',\n 'st.shareUrl': this.getValue('url'),\n title: this.getValue('title'),\n },\n },\n mailru: {\n shareUrl: 'http://connect.mail.ru/share',\n params: {\n share_url: this.getValue('url'),\n linkname: this.getValue('title'),\n linknote: this.getValue('description'),\n type: 'page',\n },\n },\n evernote: {\n shareUrl: 'https://www.evernote.com/clip.action',\n params: {\n url: this.getValue('url'),\n title: this.getValue('title'),\n },\n },\n skype: {\n shareUrl: 'https://web.skype.com/share',\n params: {\n url: this.getValue('url'),\n title: this.getValue('title'),\n },\n },\n delicious: {\n shareUrl: 'https://del.icio.us/post',\n params: {\n url: this.getValue('url'),\n title: this.getValue('title'),\n },\n },\n sms: {\n shareUrl: 'sms://',\n params: {\n body: this.getValue('body'),\n },\n },\n trello: {\n shareUrl: 'https://trello.com/add-card',\n params: {\n url: this.getValue('url'),\n name: this.getValue('title'),\n desc: this.getValue('description'),\n mode: 'popup',\n },\n },\n messenger: {\n shareUrl: 'fb-messenger://share',\n params: {\n link: this.getValue('url'),\n },\n },\n odnoklassniki: {\n shareUrl: 'https://connect.ok.ru/dk',\n params: {\n st: {\n cmd: 'WidgetSharePreview',\n deprecated: 1,\n shareUrl: this.getValue('url'),\n },\n },\n },\n meneame: {\n shareUrl: 'https://www.meneame.net/submit',\n params: {\n url: this.getValue('url'),\n },\n },\n diaspora: {\n shareUrl: 'https://share.diasporafoundation.org',\n params: {\n title: this.getValue('title'),\n url: this.getValue('url'),\n },\n },\n googlebookmarks: {\n shareUrl: 'https://www.google.com/bookmarks/mark',\n params: {\n op: 'edit',\n bkmk: this.getValue('url'),\n title: this.getValue('title'),\n },\n },\n qzone: {\n shareUrl: 'https://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey',\n params: {\n url: this.getValue('url'),\n },\n },\n refind: {\n shareUrl: 'https://refind.com',\n params: {\n url: this.getValue('url'),\n },\n },\n surfingbird: {\n shareUrl: 'https://surfingbird.ru/share',\n params: {\n url: this.getValue('url'),\n title: this.getValue('title'),\n description: this.getValue('description'),\n },\n },\n yahoomail: {\n shareUrl: 'http://compose.mail.yahoo.com',\n params: {\n to: this.getValue('to'),\n subject: this.getValue('subject'),\n body: this.getValue('body'),\n },\n },\n wordpress: {\n shareUrl: 'https://wordpress.com/wp-admin/press-this.php',\n params: {\n u: this.getValue('url'),\n t: this.getValue('title'),\n s: this.getValue('title'),\n },\n },\n amazon: {\n shareUrl: 'https://www.amazon.com/gp/wishlist/static-add',\n params: {\n u: this.getValue('url'),\n t: this.getValue('title'),\n },\n },\n pinboard: {\n shareUrl: 'https://pinboard.in/add',\n params: {\n url: this.getValue('url'),\n title: this.getValue('title'),\n description: this.getValue('description'),\n },\n },\n threema: {\n shareUrl: 'threema://compose',\n params: {\n text: this.getValue('text'),\n id: this.getValue('id'),\n },\n },\n kakaostory: {\n shareUrl: 'https://story.kakao.com/share',\n params: {\n url: this.getValue('url'),\n },\n },\n yummly: {\n shareUrl: 'http://www.yummly.com/urb/verify',\n params: {\n url: this.getValue('url'),\n title: this.getValue('title'),\n yumtype: 'button',\n },\n },\n },\n s = sharers[sharer];\n\n // custom popups sizes\n if (s) {\n s.width = this.getValue('width');\n s.height = this.getValue('height');\n }\n return s !== undefined ? this.urlSharer(s) : false;\n },\n /**\n * @event urlSharer\n * @param {Object} sharer\n */\n urlSharer: function (sharer) {\n var p = sharer.params || {},\n keys = Object.keys(p),\n i,\n str = keys.length > 0 ? '?' : '';\n for (i = 0; i < keys.length; i++) {\n if (str !== '?') {\n str += '&';\n }\n if (p[keys[i]]) {\n str += keys[i] + '=' + encodeURIComponent(p[keys[i]]);\n }\n }\n sharer.shareUrl += str;\n\n if (!sharer.isLink) {\n var popWidth = sharer.width || 600,\n popHeight = sharer.height || 480,\n left = window.innerWidth / 2 - popWidth / 2 + window.screenX,\n top = window.innerHeight / 2 - popHeight / 2 + window.screenY,\n popParams = 'scrollbars=no, width=' + popWidth + ', height=' + popHeight + ', top=' + top + ', left=' + left,\n newWindow = window.open(sharer.shareUrl, '', popParams);\n\n if (window.focus) {\n newWindow.focus();\n }\n } else {\n window.location.href = sharer.shareUrl;\n }\n },\n };\n\n // adding sharer events on domcontentload\n if (document.readyState === 'complete' || document.readyState !== 'loading') {\n Sharer.init();\n } else {\n document.addEventListener('DOMContentLoaded', Sharer.init);\n }\n\n // exporting sharer for external usage\n window.Sharer = Sharer;\n})(window, document);\n","/*!\n * \n * typed.js - A JavaScript Typing Animation Library\n * Author: Matt Boldt \n * Version: v2.0.12\n * Url: https://github.com/mattboldt/typed.js\n * License(s): MIT\n * \n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Typed\"] = factory();\n\telse\n\t\troot[\"Typed\"] = factory();\n})(this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _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; }; })();\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tvar _initializerJs = __webpack_require__(1);\n\t\n\tvar _htmlParserJs = __webpack_require__(3);\n\t\n\t/**\n\t * Welcome to Typed.js!\n\t * @param {string} elementId HTML element ID _OR_ HTML element\n\t * @param {object} options options object\n\t * @returns {object} a new Typed object\n\t */\n\t\n\tvar Typed = (function () {\n\t function Typed(elementId, options) {\n\t _classCallCheck(this, Typed);\n\t\n\t // Initialize it up\n\t _initializerJs.initializer.load(this, options, elementId);\n\t // All systems go!\n\t this.begin();\n\t }\n\t\n\t /**\n\t * Toggle start() and stop() of the Typed instance\n\t * @public\n\t */\n\t\n\t _createClass(Typed, [{\n\t key: 'toggle',\n\t value: function toggle() {\n\t this.pause.status ? this.start() : this.stop();\n\t }\n\t\n\t /**\n\t * Stop typing / backspacing and enable cursor blinking\n\t * @public\n\t */\n\t }, {\n\t key: 'stop',\n\t value: function stop() {\n\t if (this.typingComplete) return;\n\t if (this.pause.status) return;\n\t this.toggleBlinking(true);\n\t this.pause.status = true;\n\t this.options.onStop(this.arrayPos, this);\n\t }\n\t\n\t /**\n\t * Start typing / backspacing after being stopped\n\t * @public\n\t */\n\t }, {\n\t key: 'start',\n\t value: function start() {\n\t if (this.typingComplete) return;\n\t if (!this.pause.status) return;\n\t this.pause.status = false;\n\t if (this.pause.typewrite) {\n\t this.typewrite(this.pause.curString, this.pause.curStrPos);\n\t } else {\n\t this.backspace(this.pause.curString, this.pause.curStrPos);\n\t }\n\t this.options.onStart(this.arrayPos, this);\n\t }\n\t\n\t /**\n\t * Destroy this instance of Typed\n\t * @public\n\t */\n\t }, {\n\t key: 'destroy',\n\t value: function destroy() {\n\t this.reset(false);\n\t this.options.onDestroy(this);\n\t }\n\t\n\t /**\n\t * Reset Typed and optionally restarts\n\t * @param {boolean} restart\n\t * @public\n\t */\n\t }, {\n\t key: 'reset',\n\t value: function reset() {\n\t var restart = arguments.length <= 0 || arguments[0] === undefined ? true : arguments[0];\n\t\n\t clearInterval(this.timeout);\n\t this.replaceText('');\n\t if (this.cursor && this.cursor.parentNode) {\n\t this.cursor.parentNode.removeChild(this.cursor);\n\t this.cursor = null;\n\t }\n\t this.strPos = 0;\n\t this.arrayPos = 0;\n\t this.curLoop = 0;\n\t if (restart) {\n\t this.insertCursor();\n\t this.options.onReset(this);\n\t this.begin();\n\t }\n\t }\n\t\n\t /**\n\t * Begins the typing animation\n\t * @private\n\t */\n\t }, {\n\t key: 'begin',\n\t value: function begin() {\n\t var _this = this;\n\t\n\t this.options.onBegin(this);\n\t this.typingComplete = false;\n\t this.shuffleStringsIfNeeded(this);\n\t this.insertCursor();\n\t if (this.bindInputFocusEvents) this.bindFocusEvents();\n\t this.timeout = setTimeout(function () {\n\t // Check if there is some text in the element, if yes start by backspacing the default message\n\t if (!_this.currentElContent || _this.currentElContent.length === 0) {\n\t _this.typewrite(_this.strings[_this.sequence[_this.arrayPos]], _this.strPos);\n\t } else {\n\t // Start typing\n\t _this.backspace(_this.currentElContent, _this.currentElContent.length);\n\t }\n\t }, this.startDelay);\n\t }\n\t\n\t /**\n\t * Called for each character typed\n\t * @param {string} curString the current string in the strings array\n\t * @param {number} curStrPos the current position in the curString\n\t * @private\n\t */\n\t }, {\n\t key: 'typewrite',\n\t value: function typewrite(curString, curStrPos) {\n\t var _this2 = this;\n\t\n\t if (this.fadeOut && this.el.classList.contains(this.fadeOutClass)) {\n\t this.el.classList.remove(this.fadeOutClass);\n\t if (this.cursor) this.cursor.classList.remove(this.fadeOutClass);\n\t }\n\t\n\t var humanize = this.humanizer(this.typeSpeed);\n\t var numChars = 1;\n\t\n\t if (this.pause.status === true) {\n\t this.setPauseStatus(curString, curStrPos, true);\n\t return;\n\t }\n\t\n\t // contain typing function in a timeout humanize'd delay\n\t this.timeout = setTimeout(function () {\n\t // skip over any HTML chars\n\t curStrPos = _htmlParserJs.htmlParser.typeHtmlChars(curString, curStrPos, _this2);\n\t\n\t var pauseTime = 0;\n\t var substr = curString.substr(curStrPos);\n\t // check for an escape character before a pause value\n\t // format: \\^\\d+ .. eg: ^1000 .. should be able to print the ^ too using ^^\n\t // single ^ are removed from string\n\t if (substr.charAt(0) === '^') {\n\t if (/^\\^\\d+/.test(substr)) {\n\t var skip = 1; // skip at least 1\n\t substr = /\\d+/.exec(substr)[0];\n\t skip += substr.length;\n\t pauseTime = parseInt(substr);\n\t _this2.temporaryPause = true;\n\t _this2.options.onTypingPaused(_this2.arrayPos, _this2);\n\t // strip out the escape character and pause value so they're not printed\n\t curString = curString.substring(0, curStrPos) + curString.substring(curStrPos + skip);\n\t _this2.toggleBlinking(true);\n\t }\n\t }\n\t\n\t // check for skip characters formatted as\n\t // \"this is a `string to print NOW` ...\"\n\t if (substr.charAt(0) === '`') {\n\t while (curString.substr(curStrPos + numChars).charAt(0) !== '`') {\n\t numChars++;\n\t if (curStrPos + numChars > curString.length) break;\n\t }\n\t // strip out the escape characters and append all the string in between\n\t var stringBeforeSkip = curString.substring(0, curStrPos);\n\t var stringSkipped = curString.substring(stringBeforeSkip.length + 1, curStrPos + numChars);\n\t var stringAfterSkip = curString.substring(curStrPos + numChars + 1);\n\t curString = stringBeforeSkip + stringSkipped + stringAfterSkip;\n\t numChars--;\n\t }\n\t\n\t // timeout for any pause after a character\n\t _this2.timeout = setTimeout(function () {\n\t // Accounts for blinking while paused\n\t _this2.toggleBlinking(false);\n\t\n\t // We're done with this sentence!\n\t if (curStrPos >= curString.length) {\n\t _this2.doneTyping(curString, curStrPos);\n\t } else {\n\t _this2.keepTyping(curString, curStrPos, numChars);\n\t }\n\t // end of character pause\n\t if (_this2.temporaryPause) {\n\t _this2.temporaryPause = false;\n\t _this2.options.onTypingResumed(_this2.arrayPos, _this2);\n\t }\n\t }, pauseTime);\n\t\n\t // humanized value for typing\n\t }, humanize);\n\t }\n\t\n\t /**\n\t * Continue to the next string & begin typing\n\t * @param {string} curString the current string in the strings array\n\t * @param {number} curStrPos the current position in the curString\n\t * @private\n\t */\n\t }, {\n\t key: 'keepTyping',\n\t value: function keepTyping(curString, curStrPos, numChars) {\n\t // call before functions if applicable\n\t if (curStrPos === 0) {\n\t this.toggleBlinking(false);\n\t this.options.preStringTyped(this.arrayPos, this);\n\t }\n\t // start typing each new char into existing string\n\t // curString: arg, this.el.html: original text inside element\n\t curStrPos += numChars;\n\t var nextString = curString.substr(0, curStrPos);\n\t this.replaceText(nextString);\n\t // loop the function\n\t this.typewrite(curString, curStrPos);\n\t }\n\t\n\t /**\n\t * We're done typing the current string\n\t * @param {string} curString the current string in the strings array\n\t * @param {number} curStrPos the current position in the curString\n\t * @private\n\t */\n\t }, {\n\t key: 'doneTyping',\n\t value: function doneTyping(curString, curStrPos) {\n\t var _this3 = this;\n\t\n\t // fires callback function\n\t this.options.onStringTyped(this.arrayPos, this);\n\t this.toggleBlinking(true);\n\t // is this the final string\n\t if (this.arrayPos === this.strings.length - 1) {\n\t // callback that occurs on the last typed string\n\t this.complete();\n\t // quit if we wont loop back\n\t if (this.loop === false || this.curLoop === this.loopCount) {\n\t return;\n\t }\n\t }\n\t this.timeout = setTimeout(function () {\n\t _this3.backspace(curString, curStrPos);\n\t }, this.backDelay);\n\t }\n\t\n\t /**\n\t * Backspaces 1 character at a time\n\t * @param {string} curString the current string in the strings array\n\t * @param {number} curStrPos the current position in the curString\n\t * @private\n\t */\n\t }, {\n\t key: 'backspace',\n\t value: function backspace(curString, curStrPos) {\n\t var _this4 = this;\n\t\n\t if (this.pause.status === true) {\n\t this.setPauseStatus(curString, curStrPos, false);\n\t return;\n\t }\n\t if (this.fadeOut) return this.initFadeOut();\n\t\n\t this.toggleBlinking(false);\n\t var humanize = this.humanizer(this.backSpeed);\n\t\n\t this.timeout = setTimeout(function () {\n\t curStrPos = _htmlParserJs.htmlParser.backSpaceHtmlChars(curString, curStrPos, _this4);\n\t // replace text with base text + typed characters\n\t var curStringAtPosition = curString.substr(0, curStrPos);\n\t _this4.replaceText(curStringAtPosition);\n\t\n\t // if smartBack is enabled\n\t if (_this4.smartBackspace) {\n\t // the remaining part of the current string is equal of the same part of the new string\n\t var nextString = _this4.strings[_this4.arrayPos + 1];\n\t if (nextString && curStringAtPosition === nextString.substr(0, curStrPos)) {\n\t _this4.stopNum = curStrPos;\n\t } else {\n\t _this4.stopNum = 0;\n\t }\n\t }\n\t\n\t // if the number (id of character in current string) is\n\t // less than the stop number, keep going\n\t if (curStrPos > _this4.stopNum) {\n\t // subtract characters one by one\n\t curStrPos--;\n\t // loop the function\n\t _this4.backspace(curString, curStrPos);\n\t } else if (curStrPos <= _this4.stopNum) {\n\t // if the stop number has been reached, increase\n\t // array position to next string\n\t _this4.arrayPos++;\n\t // When looping, begin at the beginning after backspace complete\n\t if (_this4.arrayPos === _this4.strings.length) {\n\t _this4.arrayPos = 0;\n\t _this4.options.onLastStringBackspaced();\n\t _this4.shuffleStringsIfNeeded();\n\t _this4.begin();\n\t } else {\n\t _this4.typewrite(_this4.strings[_this4.sequence[_this4.arrayPos]], curStrPos);\n\t }\n\t }\n\t // humanized value for typing\n\t }, humanize);\n\t }\n\t\n\t /**\n\t * Full animation is complete\n\t * @private\n\t */\n\t }, {\n\t key: 'complete',\n\t value: function complete() {\n\t this.options.onComplete(this);\n\t if (this.loop) {\n\t this.curLoop++;\n\t } else {\n\t this.typingComplete = true;\n\t }\n\t }\n\t\n\t /**\n\t * Has the typing been stopped\n\t * @param {string} curString the current string in the strings array\n\t * @param {number} curStrPos the current position in the curString\n\t * @param {boolean} isTyping\n\t * @private\n\t */\n\t }, {\n\t key: 'setPauseStatus',\n\t value: function setPauseStatus(curString, curStrPos, isTyping) {\n\t this.pause.typewrite = isTyping;\n\t this.pause.curString = curString;\n\t this.pause.curStrPos = curStrPos;\n\t }\n\t\n\t /**\n\t * Toggle the blinking cursor\n\t * @param {boolean} isBlinking\n\t * @private\n\t */\n\t }, {\n\t key: 'toggleBlinking',\n\t value: function toggleBlinking(isBlinking) {\n\t if (!this.cursor) return;\n\t // if in paused state, don't toggle blinking a 2nd time\n\t if (this.pause.status) return;\n\t if (this.cursorBlinking === isBlinking) return;\n\t this.cursorBlinking = isBlinking;\n\t if (isBlinking) {\n\t this.cursor.classList.add('typed-cursor--blink');\n\t } else {\n\t this.cursor.classList.remove('typed-cursor--blink');\n\t }\n\t }\n\t\n\t /**\n\t * Speed in MS to type\n\t * @param {number} speed\n\t * @private\n\t */\n\t }, {\n\t key: 'humanizer',\n\t value: function humanizer(speed) {\n\t return Math.round(Math.random() * speed / 2) + speed;\n\t }\n\t\n\t /**\n\t * Shuffle the sequence of the strings array\n\t * @private\n\t */\n\t }, {\n\t key: 'shuffleStringsIfNeeded',\n\t value: function shuffleStringsIfNeeded() {\n\t if (!this.shuffle) return;\n\t this.sequence = this.sequence.sort(function () {\n\t return Math.random() - 0.5;\n\t });\n\t }\n\t\n\t /**\n\t * Adds a CSS class to fade out current string\n\t * @private\n\t */\n\t }, {\n\t key: 'initFadeOut',\n\t value: function initFadeOut() {\n\t var _this5 = this;\n\t\n\t this.el.className += ' ' + this.fadeOutClass;\n\t if (this.cursor) this.cursor.className += ' ' + this.fadeOutClass;\n\t return setTimeout(function () {\n\t _this5.arrayPos++;\n\t _this5.replaceText('');\n\t\n\t // Resets current string if end of loop reached\n\t if (_this5.strings.length > _this5.arrayPos) {\n\t _this5.typewrite(_this5.strings[_this5.sequence[_this5.arrayPos]], 0);\n\t } else {\n\t _this5.typewrite(_this5.strings[0], 0);\n\t _this5.arrayPos = 0;\n\t }\n\t }, this.fadeOutDelay);\n\t }\n\t\n\t /**\n\t * Replaces current text in the HTML element\n\t * depending on element type\n\t * @param {string} str\n\t * @private\n\t */\n\t }, {\n\t key: 'replaceText',\n\t value: function replaceText(str) {\n\t if (this.attr) {\n\t this.el.setAttribute(this.attr, str);\n\t } else {\n\t if (this.isInput) {\n\t this.el.value = str;\n\t } else if (this.contentType === 'html') {\n\t this.el.innerHTML = str;\n\t } else {\n\t this.el.textContent = str;\n\t }\n\t }\n\t }\n\t\n\t /**\n\t * If using input elements, bind focus in order to\n\t * start and stop the animation\n\t * @private\n\t */\n\t }, {\n\t key: 'bindFocusEvents',\n\t value: function bindFocusEvents() {\n\t var _this6 = this;\n\t\n\t if (!this.isInput) return;\n\t this.el.addEventListener('focus', function (e) {\n\t _this6.stop();\n\t });\n\t this.el.addEventListener('blur', function (e) {\n\t if (_this6.el.value && _this6.el.value.length !== 0) {\n\t return;\n\t }\n\t _this6.start();\n\t });\n\t }\n\t\n\t /**\n\t * On init, insert the cursor element\n\t * @private\n\t */\n\t }, {\n\t key: 'insertCursor',\n\t value: function insertCursor() {\n\t if (!this.showCursor) return;\n\t if (this.cursor) return;\n\t this.cursor = document.createElement('span');\n\t this.cursor.className = 'typed-cursor';\n\t this.cursor.setAttribute('aria-hidden', true);\n\t this.cursor.innerHTML = this.cursorChar;\n\t this.el.parentNode && this.el.parentNode.insertBefore(this.cursor, this.el.nextSibling);\n\t }\n\t }]);\n\t\n\t return Typed;\n\t})();\n\t\n\texports['default'] = Typed;\n\tmodule.exports = exports['default'];\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\t\n\tvar _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; }; })();\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tvar _defaultsJs = __webpack_require__(2);\n\t\n\tvar _defaultsJs2 = _interopRequireDefault(_defaultsJs);\n\t\n\t/**\n\t * Initialize the Typed object\n\t */\n\t\n\tvar Initializer = (function () {\n\t function Initializer() {\n\t _classCallCheck(this, Initializer);\n\t }\n\t\n\t _createClass(Initializer, [{\n\t key: 'load',\n\t\n\t /**\n\t * Load up defaults & options on the Typed instance\n\t * @param {Typed} self instance of Typed\n\t * @param {object} options options object\n\t * @param {string} elementId HTML element ID _OR_ instance of HTML element\n\t * @private\n\t */\n\t\n\t value: function load(self, options, elementId) {\n\t // chosen element to manipulate text\n\t if (typeof elementId === 'string') {\n\t self.el = document.querySelector(elementId);\n\t } else {\n\t self.el = elementId;\n\t }\n\t\n\t self.options = _extends({}, _defaultsJs2['default'], options);\n\t\n\t // attribute to type into\n\t self.isInput = self.el.tagName.toLowerCase() === 'input';\n\t self.attr = self.options.attr;\n\t self.bindInputFocusEvents = self.options.bindInputFocusEvents;\n\t\n\t // show cursor\n\t self.showCursor = self.isInput ? false : self.options.showCursor;\n\t\n\t // custom cursor\n\t self.cursorChar = self.options.cursorChar;\n\t\n\t // Is the cursor blinking\n\t self.cursorBlinking = true;\n\t\n\t // text content of element\n\t self.elContent = self.attr ? self.el.getAttribute(self.attr) : self.el.textContent;\n\t\n\t // html or plain text\n\t self.contentType = self.options.contentType;\n\t\n\t // typing speed\n\t self.typeSpeed = self.options.typeSpeed;\n\t\n\t // add a delay before typing starts\n\t self.startDelay = self.options.startDelay;\n\t\n\t // backspacing speed\n\t self.backSpeed = self.options.backSpeed;\n\t\n\t // only backspace what doesn't match the previous string\n\t self.smartBackspace = self.options.smartBackspace;\n\t\n\t // amount of time to wait before backspacing\n\t self.backDelay = self.options.backDelay;\n\t\n\t // Fade out instead of backspace\n\t self.fadeOut = self.options.fadeOut;\n\t self.fadeOutClass = self.options.fadeOutClass;\n\t self.fadeOutDelay = self.options.fadeOutDelay;\n\t\n\t // variable to check whether typing is currently paused\n\t self.isPaused = false;\n\t\n\t // input strings of text\n\t self.strings = self.options.strings.map(function (s) {\n\t return s.trim();\n\t });\n\t\n\t // div containing strings\n\t if (typeof self.options.stringsElement === 'string') {\n\t self.stringsElement = document.querySelector(self.options.stringsElement);\n\t } else {\n\t self.stringsElement = self.options.stringsElement;\n\t }\n\t\n\t if (self.stringsElement) {\n\t self.strings = [];\n\t self.stringsElement.style.display = 'none';\n\t var strings = Array.prototype.slice.apply(self.stringsElement.children);\n\t var stringsLength = strings.length;\n\t\n\t if (stringsLength) {\n\t for (var i = 0; i < stringsLength; i += 1) {\n\t var stringEl = strings[i];\n\t self.strings.push(stringEl.innerHTML.trim());\n\t }\n\t }\n\t }\n\t\n\t // character number position of current string\n\t self.strPos = 0;\n\t\n\t // current array position\n\t self.arrayPos = 0;\n\t\n\t // index of string to stop backspacing on\n\t self.stopNum = 0;\n\t\n\t // Looping logic\n\t self.loop = self.options.loop;\n\t self.loopCount = self.options.loopCount;\n\t self.curLoop = 0;\n\t\n\t // shuffle the strings\n\t self.shuffle = self.options.shuffle;\n\t // the order of strings\n\t self.sequence = [];\n\t\n\t self.pause = {\n\t status: false,\n\t typewrite: true,\n\t curString: '',\n\t curStrPos: 0\n\t };\n\t\n\t // When the typing is complete (when not looped)\n\t self.typingComplete = false;\n\t\n\t // Set the order in which the strings are typed\n\t for (var i in self.strings) {\n\t self.sequence[i] = i;\n\t }\n\t\n\t // If there is some text in the element\n\t self.currentElContent = this.getCurrentElContent(self);\n\t\n\t self.autoInsertCss = self.options.autoInsertCss;\n\t\n\t this.appendAnimationCss(self);\n\t }\n\t }, {\n\t key: 'getCurrentElContent',\n\t value: function getCurrentElContent(self) {\n\t var elContent = '';\n\t if (self.attr) {\n\t elContent = self.el.getAttribute(self.attr);\n\t } else if (self.isInput) {\n\t elContent = self.el.value;\n\t } else if (self.contentType === 'html') {\n\t elContent = self.el.innerHTML;\n\t } else {\n\t elContent = self.el.textContent;\n\t }\n\t return elContent;\n\t }\n\t }, {\n\t key: 'appendAnimationCss',\n\t value: function appendAnimationCss(self) {\n\t var cssDataName = 'data-typed-js-css';\n\t if (!self.autoInsertCss) {\n\t return;\n\t }\n\t if (!self.showCursor && !self.fadeOut) {\n\t return;\n\t }\n\t if (document.querySelector('[' + cssDataName + ']')) {\n\t return;\n\t }\n\t\n\t var css = document.createElement('style');\n\t css.type = 'text/css';\n\t css.setAttribute(cssDataName, true);\n\t\n\t var innerCss = '';\n\t if (self.showCursor) {\n\t innerCss += '\\n .typed-cursor{\\n opacity: 1;\\n }\\n .typed-cursor.typed-cursor--blink{\\n animation: typedjsBlink 0.7s infinite;\\n -webkit-animation: typedjsBlink 0.7s infinite;\\n animation: typedjsBlink 0.7s infinite;\\n }\\n @keyframes typedjsBlink{\\n 50% { opacity: 0.0; }\\n }\\n @-webkit-keyframes typedjsBlink{\\n 0% { opacity: 1; }\\n 50% { opacity: 0.0; }\\n 100% { opacity: 1; }\\n }\\n ';\n\t }\n\t if (self.fadeOut) {\n\t innerCss += '\\n .typed-fade-out{\\n opacity: 0;\\n transition: opacity .25s;\\n }\\n .typed-cursor.typed-cursor--blink.typed-fade-out{\\n -webkit-animation: 0;\\n animation: 0;\\n }\\n ';\n\t }\n\t if (css.length === 0) {\n\t return;\n\t }\n\t css.innerHTML = innerCss;\n\t document.body.appendChild(css);\n\t }\n\t }]);\n\t\n\t return Initializer;\n\t})();\n\t\n\texports['default'] = Initializer;\n\tvar initializer = new Initializer();\n\texports.initializer = initializer;\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports) {\n\n\t/**\n\t * Defaults & options\n\t * @returns {object} Typed defaults & options\n\t * @public\n\t */\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\tvar defaults = {\n\t /**\n\t * @property {array} strings strings to be typed\n\t * @property {string} stringsElement ID of element containing string children\n\t */\n\t strings: ['These are the default values...', 'You know what you should do?', 'Use your own!', 'Have a great day!'],\n\t stringsElement: null,\n\t\n\t /**\n\t * @property {number} typeSpeed type speed in milliseconds\n\t */\n\t typeSpeed: 0,\n\t\n\t /**\n\t * @property {number} startDelay time before typing starts in milliseconds\n\t */\n\t startDelay: 0,\n\t\n\t /**\n\t * @property {number} backSpeed backspacing speed in milliseconds\n\t */\n\t backSpeed: 0,\n\t\n\t /**\n\t * @property {boolean} smartBackspace only backspace what doesn't match the previous string\n\t */\n\t smartBackspace: true,\n\t\n\t /**\n\t * @property {boolean} shuffle shuffle the strings\n\t */\n\t shuffle: false,\n\t\n\t /**\n\t * @property {number} backDelay time before backspacing in milliseconds\n\t */\n\t backDelay: 700,\n\t\n\t /**\n\t * @property {boolean} fadeOut Fade out instead of backspace\n\t * @property {string} fadeOutClass css class for fade animation\n\t * @property {boolean} fadeOutDelay Fade out delay in milliseconds\n\t */\n\t fadeOut: false,\n\t fadeOutClass: 'typed-fade-out',\n\t fadeOutDelay: 500,\n\t\n\t /**\n\t * @property {boolean} loop loop strings\n\t * @property {number} loopCount amount of loops\n\t */\n\t loop: false,\n\t loopCount: Infinity,\n\t\n\t /**\n\t * @property {boolean} showCursor show cursor\n\t * @property {string} cursorChar character for cursor\n\t * @property {boolean} autoInsertCss insert CSS for cursor and fadeOut into HTML \n\t */\n\t showCursor: true,\n\t cursorChar: '|',\n\t autoInsertCss: true,\n\t\n\t /**\n\t * @property {string} attr attribute for typing\n\t * Ex: input placeholder, value, or just HTML text\n\t */\n\t attr: null,\n\t\n\t /**\n\t * @property {boolean} bindInputFocusEvents bind to focus and blur if el is text input\n\t */\n\t bindInputFocusEvents: false,\n\t\n\t /**\n\t * @property {string} contentType 'html' or 'null' for plaintext\n\t */\n\t contentType: 'html',\n\t\n\t /**\n\t * Before it begins typing\n\t * @param {Typed} self\n\t */\n\t onBegin: function onBegin(self) {},\n\t\n\t /**\n\t * All typing is complete\n\t * @param {Typed} self\n\t */\n\t onComplete: function onComplete(self) {},\n\t\n\t /**\n\t * Before each string is typed\n\t * @param {number} arrayPos\n\t * @param {Typed} self\n\t */\n\t preStringTyped: function preStringTyped(arrayPos, self) {},\n\t\n\t /**\n\t * After each string is typed\n\t * @param {number} arrayPos\n\t * @param {Typed} self\n\t */\n\t onStringTyped: function onStringTyped(arrayPos, self) {},\n\t\n\t /**\n\t * During looping, after last string is typed\n\t * @param {Typed} self\n\t */\n\t onLastStringBackspaced: function onLastStringBackspaced(self) {},\n\t\n\t /**\n\t * Typing has been stopped\n\t * @param {number} arrayPos\n\t * @param {Typed} self\n\t */\n\t onTypingPaused: function onTypingPaused(arrayPos, self) {},\n\t\n\t /**\n\t * Typing has been started after being stopped\n\t * @param {number} arrayPos\n\t * @param {Typed} self\n\t */\n\t onTypingResumed: function onTypingResumed(arrayPos, self) {},\n\t\n\t /**\n\t * After reset\n\t * @param {Typed} self\n\t */\n\t onReset: function onReset(self) {},\n\t\n\t /**\n\t * After stop\n\t * @param {number} arrayPos\n\t * @param {Typed} self\n\t */\n\t onStop: function onStop(arrayPos, self) {},\n\t\n\t /**\n\t * After start\n\t * @param {number} arrayPos\n\t * @param {Typed} self\n\t */\n\t onStart: function onStart(arrayPos, self) {},\n\t\n\t /**\n\t * After destroy\n\t * @param {Typed} self\n\t */\n\t onDestroy: function onDestroy(self) {}\n\t};\n\t\n\texports['default'] = defaults;\n\tmodule.exports = exports['default'];\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports) {\n\n\t/**\n\t * TODO: These methods can probably be combined somehow\n\t * Parse HTML tags & HTML Characters\n\t */\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _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; }; })();\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tvar HTMLParser = (function () {\n\t function HTMLParser() {\n\t _classCallCheck(this, HTMLParser);\n\t }\n\t\n\t _createClass(HTMLParser, [{\n\t key: 'typeHtmlChars',\n\t\n\t /**\n\t * Type HTML tags & HTML Characters\n\t * @param {string} curString Current string\n\t * @param {number} curStrPos Position in current string\n\t * @param {Typed} self instance of Typed\n\t * @returns {number} a new string position\n\t * @private\n\t */\n\t\n\t value: function typeHtmlChars(curString, curStrPos, self) {\n\t if (self.contentType !== 'html') return curStrPos;\n\t var curChar = curString.substr(curStrPos).charAt(0);\n\t if (curChar === '<' || curChar === '&') {\n\t var endTag = '';\n\t if (curChar === '<') {\n\t endTag = '>';\n\t } else {\n\t endTag = ';';\n\t }\n\t while (curString.substr(curStrPos + 1).charAt(0) !== endTag) {\n\t curStrPos++;\n\t if (curStrPos + 1 > curString.length) {\n\t break;\n\t }\n\t }\n\t curStrPos++;\n\t }\n\t return curStrPos;\n\t }\n\t\n\t /**\n\t * Backspace HTML tags and HTML Characters\n\t * @param {string} curString Current string\n\t * @param {number} curStrPos Position in current string\n\t * @param {Typed} self instance of Typed\n\t * @returns {number} a new string position\n\t * @private\n\t */\n\t }, {\n\t key: 'backSpaceHtmlChars',\n\t value: function backSpaceHtmlChars(curString, curStrPos, self) {\n\t if (self.contentType !== 'html') return curStrPos;\n\t var curChar = curString.substr(curStrPos).charAt(0);\n\t if (curChar === '>' || curChar === ';') {\n\t var endTag = '';\n\t if (curChar === '>') {\n\t endTag = '<';\n\t } else {\n\t endTag = '&';\n\t }\n\t while (curString.substr(curStrPos - 1).charAt(0) !== endTag) {\n\t curStrPos--;\n\t if (curStrPos < 0) {\n\t break;\n\t }\n\t }\n\t curStrPos--;\n\t }\n\t return curStrPos;\n\t }\n\t }]);\n\t\n\t return HTMLParser;\n\t})();\n\t\n\texports['default'] = HTMLParser;\n\tvar htmlParser = new HTMLParser();\n\texports.htmlParser = htmlParser;\n\n/***/ })\n/******/ ])\n});\n;"],"sourceRoot":""}