diff --git a/ckanext/tour/assets/style.css b/ckanext/tour/assets/css/style.css similarity index 100% rename from ckanext/tour/assets/style.css rename to ckanext/tour/assets/css/style.css diff --git a/ckanext/tour/assets/css/vendor/introjs.min.css b/ckanext/tour/assets/css/vendor/introjs.min.css new file mode 100644 index 0000000..29666c1 --- /dev/null +++ b/ckanext/tour/assets/css/vendor/introjs.min.css @@ -0,0 +1,476 @@ +.introjs-overlay { + position: absolute; + box-sizing: content-box; + z-index: 999999; + opacity: 0; + transition: all .3s ease-out +} + +.introjs-showElement { + z-index: 9999999 !important +} + +tr.introjs-showElement>td { + z-index: 9999999 !important; + position: relative +} + +tr.introjs-showElement>th { + z-index: 9999999 !important; + position: relative +} + +.introjs-disableInteraction { + z-index: 99999999 !important; + position: absolute; + background-color: #fff; + opacity: 0 +} + +.introjs-relativePosition { + position: relative +} + +.introjs-helperLayer { + box-sizing: content-box; + position: absolute; + z-index: 9999998; + border-radius: 4px; + transition: all .3s ease-out +} + +.introjs-helperLayer * { + box-sizing: content-box +} + +.introjs-helperLayer :before { + box-sizing: content-box +} + +.introjs-helperLayer :after { + box-sizing: content-box +} + +.introjs-tooltipReferenceLayer { + font-family: "Helvetica Neue", Inter, ui-sans-serif, "Apple Color Emoji", Helvetica, Arial, sans-serif; + box-sizing: content-box; + position: absolute; + visibility: hidden; + z-index: 100000000; + background-color: transparent; + transition: all .3s ease-out +} + +.introjs-tooltipReferenceLayer * { + font-family: "Helvetica Neue", Inter, ui-sans-serif, "Apple Color Emoji", Helvetica, Arial, sans-serif +} + +.introjs-helperNumberLayer { + font-family: "Helvetica Neue", Inter, ui-sans-serif, "Apple Color Emoji", Helvetica, Arial, sans-serif; + color: #9e9e9e; + text-align: center; + padding-top: 10px; + padding-bottom: 10px +} + +.introjs-arrow { + border: 5px solid transparent; + content: ""; + position: absolute +} + +.introjs-arrow.top { + top: -10px; + left: 10px; + border-bottom-color: #fff +} + +.introjs-arrow.top-right { + top: -10px; + right: 10px; + border-bottom-color: #fff +} + +.introjs-arrow.top-middle { + top: -10px; + left: 50%; + margin-left: -5px; + border-bottom-color: #fff +} + +.introjs-arrow.right { + right: -10px; + top: 10px; + border-left-color: #fff +} + +.introjs-arrow.right-bottom { + bottom: 10px; + right: -10px; + border-left-color: #fff +} + +.introjs-arrow.bottom { + bottom: -10px; + left: 10px; + border-top-color: #fff +} + +.introjs-arrow.bottom-right { + bottom: -10px; + right: 10px; + border-top-color: #fff +} + +.introjs-arrow.bottom-middle { + bottom: -10px; + left: 50%; + margin-left: -5px; + border-top-color: #fff +} + +.introjs-arrow.left { + left: -10px; + top: 10px; + border-right-color: #fff +} + +.introjs-arrow.left-bottom { + left: -10px; + bottom: 10px; + border-right-color: #fff +} + +.introjs-tooltip { + box-sizing: content-box; + position: absolute; + visibility: visible; + background-color: #fff; + min-width: 250px; + max-width: 300px; + border-radius: 5px; + box-shadow: 0 3px 30px rgba(33, 33, 33, .3); + transition: opacity .1s ease-out +} + +.introjs-tooltiptext { + padding: 20px; +} + +.introjs-tooltiptext img { + width: 100%; +} + +.introjs-dontShowAgain { + padding-left: 20px; + padding-right: 20px +} + +.introjs-dontShowAgain input { + padding: 0; + margin: 0; + margin-bottom: 2px; + display: inline; + width: 10px; + height: 10px +} + +.introjs-dontShowAgain label { + font-size: 14px; + display: inline-block; + font-weight: 400; + margin: 0 0 0 5px; + padding: 0; + background-color: #fff; + color: #616161; + -webkit-user-select: none; + user-select: none +} + +.introjs-tooltip-title { + font-size: 18px; + width: 90%; + min-height: 1.5em; + margin: 0; + padding: 0; + font-weight: 700; + line-height: 1.5 +} + +.introjs-tooltip-header { + position: relative; + padding-left: 20px; + padding-right: 20px; + padding-top: 10px; + min-height: 1.5em +} + +.introjs-tooltipbuttons { + border-top: 1px solid #e0e0e0; + padding: 10px; + text-align: right; + white-space: nowrap +} + +.introjs-tooltipbuttons:after { + content: ""; + visibility: hidden; + display: block; + height: 0; + clear: both +} + +.introjs-button { + box-sizing: content-box; + position: relative; + overflow: visible; + padding: .5rem 1rem; + border: 1px solid #bdbdbd; + text-decoration: none; + text-shadow: 1px 1px 0 #fff; + font-size: 14px; + color: #424242; + white-space: nowrap; + cursor: pointer; + outline: 0; + background-color: #f4f4f4; + border-radius: .2em; + zoom: 1; + display: inline +} + +.introjs-button:hover { + outline: 0; + text-decoration: none; + border-color: #9e9e9e; + background-color: #e0e0e0; + color: #212121 +} + +.introjs-button:focus { + outline: 0; + text-decoration: none; + background-color: #eee; + box-shadow: 0 0 0 .2rem rgba(158, 158, 158, .5); + border: 1px solid #616161; + color: #212121 +} + +.introjs-button:active { + outline: 0; + text-decoration: none; + background-color: #e0e0e0; + border-color: #9e9e9e; + color: #212121 +} + +.introjs-button::-moz-focus-inner { + padding: 0; + border: 0 +} + +.introjs-skipbutton { + position: absolute; + top: 0; + right: 10px; + display: inline-block; + width: 45px; + height: 45px; + line-height: 45px; + color: #ef0000; + font-size: 18px; + cursor: pointer; + font-weight: 700; + text-align: center; + text-decoration: none +} + +.introjs-skipbutton:focus, +.introjs-skipbutton:hover { + color: #212121; + outline: 0; + text-decoration: none +} + +.introjs-prevbutton { + float: left +} + +.introjs-nextbutton { + float: right +} + +.introjs-disabled { + color: #9e9e9e; + border-color: #bdbdbd; + box-shadow: none; + cursor: default; + background-color: #f4f4f4; + background-image: none; + text-decoration: none +} + +.introjs-disabled:focus, +.introjs-disabled:hover { + color: #9e9e9e; + border-color: #bdbdbd; + box-shadow: none; + cursor: default; + background-color: #f4f4f4; + background-image: none; + text-decoration: none +} + +.introjs-hidden { + display: none +} + +.introjs-bullets { + text-align: center; + padding-top: 10px; + padding-bottom: 10px +} + +.introjs-bullets ul { + box-sizing: content-box; + clear: both; + margin: 0 auto 0; + padding: 0; + display: inline-block +} + +.introjs-bullets ul li { + box-sizing: content-box; + list-style: none; + float: left; + margin: 0 2px +} + +.introjs-bullets ul li a { + transition: width .1s ease-in; + box-sizing: content-box; + display: block; + width: 6px; + height: 6px; + background: #ccc; + border-radius: 10px; + text-decoration: none; + cursor: pointer +} + +.introjs-bullets ul li a:focus, +.introjs-bullets ul li a:hover { + width: 15px; + background: #999; + text-decoration: none; + outline: 0 +} + +.introjs-bullets ul li a.active { + width: 15px; + background: #999 +} + +.introjs-progress { + box-sizing: content-box; + overflow: hidden; + height: 10px; + margin: 10px; + border-radius: 4px; + background-color: #e0e0e0 +} + +.introjs-progressbar { + box-sizing: content-box; + float: left; + width: 0%; + height: 100%; + font-size: 10px; + line-height: 10px; + text-align: center; + background-color: #08c +} + +.introjsFloatingElement { + position: absolute; + height: 0; + width: 0; + left: 50%; + top: 50% +} + +.introjs-fixedTooltip { + position: fixed +} + +.introjs-hint { + box-sizing: content-box; + position: absolute; + background: 0 0; + width: 20px; + height: 15px; + cursor: pointer +} + +.introjs-hint:focus { + border: 0; + outline: 0 +} + +.introjs-hint:hover>.introjs-hint-pulse { + background-color: rgba(60, 60, 60, .57) +} + +.introjs-hidehint { + display: none +} + +.introjs-fixedhint { + position: fixed +} + +@keyframes introjspulse { + 0% { + transform: scale(.95); + box-shadow: 0 0 0 0 rgba(0, 0, 0, .7) + } + + 70% { + transform: scale(1); + box-shadow: 0 0 0 10px transparent + } + + 100% { + transform: scale(.95); + box-shadow: 0 0 0 0 transparent + } +} + +.introjs-hint-pulse { + box-sizing: content-box; + width: 15px; + height: 15px; + border-radius: 30px; + background-color: rgba(136, 136, 136, .24); + z-index: 10; + position: absolute; + transition: all .2s ease-out; + animation: introjspulse 2s infinite +} + +.introjs-hint-no-anim .introjs-hint-pulse { + animation: none +} + +.introjs-hint-dot { + box-sizing: content-box; + background: 0 0; + border-radius: 60px; + height: 50px; + width: 50px; + position: absolute; + top: -18px; + left: -18px; + z-index: 1; + opacity: 0 +} diff --git a/ckanext/tour/assets/js/init-tour.js b/ckanext/tour/assets/js/init-tour.js new file mode 100644 index 0000000..b2a4eef --- /dev/null +++ b/ckanext/tour/assets/js/init-tour.js @@ -0,0 +1,85 @@ +this.ckan.module('init-tour', function (jQuery) { + return { + /* An object of module options */ + options: { + template: [ + '', + '', + '', + '' + ].join('\n') + }, + + initialize: function () { + intro = introJs(); + var introStart = true; + var visited = localStorage.getItem('intro'); + introStart = visited ? false : true; + var md = new MobileDetect(window.navigator.userAgent); + var isMobile = md.mobile() ? true : false; + + intro.setOptions({ + overlayOpacity: 0.7, + nextLabel: ' → ', + prevLabel: '← ', + skipLabel: this._('Skip'), + doneLabel: this._('Got it!'), + showStepNumbers: false, + exitOnEsc: true, // default + exitOnOverlayClick: true, // default + keyboardNavigation: true, // default + showButtons: true, // default + showBullets: true, // default, + showProgress: false, // default + steps: [ + { + element: '.search-input-group', + intro: this._('Here you can search datasets by a keyword.') + }, + { + element: '.filters', + intro: this._('Here you can filter datasets.'), + position: 'right' + }, + { + element: '.dataset-list', + intro: this._('The matched datasets will list here.'), + position: 'right' + }, + { + element: '#intro-switch', + intro: this._('Click this question mark to show this help again.'), + position: 'right' + }, + { + title: 'Test!', + intro: ' test me up' + } + ] + }); + + if (isMobile) { + introStart = false; + } else { + this.createMark().appendTo('.breadcrumb .active'); + this.mark.on('click', this._onClick); + } + + if (introStart) { + localStorage.setItem('intro', 1); + intro.start(); + } + }, + + createMark: function () { + if (!this.mark) { + var element = this.mark = jQuery(this.options.template); + } + return this.mark; + }, + + _onClick: function (event) { + intro.start(); + } + } +}); diff --git a/ckanext/tour/assets/js/vendor/intro.min.js b/ckanext/tour/assets/js/vendor/intro.min.js new file mode 100644 index 0000000..1ce1060 --- /dev/null +++ b/ckanext/tour/assets/js/vendor/intro.min.js @@ -0,0 +1,17 @@ +/** + * Skipped minification because the original files appears to be already minified. + * Original file: /npm/intro.js@7.0.1/intro.js + * + * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files + */ +/*! + * Intro.js v7.0.1 + * https://introjs.com + * + * Copyright (C) 2012-2023 Afshin Mehrabani (@afshinmeh). + * https://introjs.com + * + * Date: Sat, 25 Mar 2023 14:24:34 GMT + */ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).introJs=e()}(this,(function(){"use strict";function t(){t=function(){return e};var e={},n=Object.prototype,r=n.hasOwnProperty,i=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},a=o.iterator||"@@iterator",s=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{c({},"")}catch(t){c=function(t,e,n){return t[e]=n}}function u(t,e,n,r){var o=e&&e.prototype instanceof f?e:f,a=Object.create(o.prototype),s=new j(r||[]);return i(a,"_invoke",{value:x(t,n,s)}),a}function h(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}e.wrap=u;var p={};function f(){}function d(){}function m(){}var b={};c(b,a,(function(){return this}));var v=Object.getPrototypeOf,y=v&&v(v(A([])));y&&y!==n&&r.call(y,a)&&(b=y);var g=m.prototype=f.prototype=Object.create(b);function w(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function _(t,e){function n(i,o,a,s){var l=h(t[i],t,o);if("throw"!==l.type){var c=l.arg,u=c.value;return u&&"object"==typeof u&&r.call(u,"__await")?e.resolve(u.__await).then((function(t){n("next",t,a,s)}),(function(t){n("throw",t,a,s)})):e.resolve(u).then((function(t){c.value=t,a(c)}),(function(t){return n("throw",t,a,s)}))}s(l.arg)}var o;i(this,"_invoke",{value:function(t,r){function i(){return new e((function(e,i){n(t,r,e,i)}))}return o=o?o.then(i,i):i()}})}function x(t,e,n){var r="suspendedStart";return function(i,o){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===i)throw o;return E()}for(n.method=i,n.arg=o;;){var a=n.delegate;if(a){var s=k(a,n);if(s){if(s===p)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=h(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===p)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function k(t,e){var n=t.iterator[e.method];if(void 0===n){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=void 0,k(t,e),"throw"===e.method))return p;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return p}var r=h(n,t.iterator,e.arg);if("throw"===r.type)return e.method="throw",e.arg=r.arg,e.delegate=null,p;var i=r.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,p):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,p)}function C(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function S(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function j(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(C,this),this.reset(!0)}function A(t){if(t){var e=t[a];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function e(){for(;++n=0;--i){var o=this.tryEntries[i],a=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var s=r.call(o,"catchLoc"),l=r.call(o,"finallyLoc");if(s&&l){if(this.prev=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),S(n),p}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var i=r.arg;S(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:A(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),p}},e}function e(t){return e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},e(t)}function n(t,e,n,r,i,o,a){try{var s=t[o](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,i)}function r(t){return function(){var e=this,r=arguments;return new Promise((function(i,o){var a=t.apply(e,r);function s(t){n(a,i,o,s,l,"next",t)}function l(t){n(a,i,o,s,l,"throw",t)}s(void 0)}))}}function i(t,e){for(var n=0;nt.length)&&(e=t.length);for(var n=0,r=new Array(e);n1&&void 0!==arguments[1]?arguments[1]:"introjs-stamp";return l[e]=l[e]||0,void 0===t[e]&&(t[e]=l[e]++),t[e]});function u(t,e,n){if(t)for(var r=0,i=t.length;r=0&&e.left>=0&&e.bottom+80<=window.innerHeight&&e.right<=window.innerWidth}(e)))){var i=b().height;r.bottom-(r.bottom-r.top)<0||e.clientHeight>i?window.scrollBy(0,r.top-(i/2-r.height/2)-this._options.scrollPadding):window.scrollBy(0,r.top-(i/2-r.height/2)+this._options.scrollPadding)}}function y(t){t.setAttribute("role","button"),t.tabIndex=0}function g(t){var e=t.parentElement;return!(!e||"HTML"===e.nodeName)&&("fixed"===f(t,"position")||g(e))}function w(t,e){var n=document.body,r=document.documentElement,i=window.pageYOffset||r.scrollTop||n.scrollTop,o=window.pageXOffset||r.scrollLeft||n.scrollLeft;e=e||n;var a=t.getBoundingClientRect(),s=e.getBoundingClientRect(),l=f(e,"position"),c={width:a.width,height:a.height};return"body"!==e.tagName.toLowerCase()&&"relative"===l||"sticky"===l?Object.assign(c,{top:a.top-s.top,left:a.left-s.left}):g(t)?Object.assign(c,{top:a.top,left:a.left}):Object.assign(c,{top:a.top+i,left:a.left+o})}function _(t,e){if(t instanceof SVGElement){var n=t.getAttribute("class")||"";t.setAttribute("class",n.replace(e,"").replace(/^\s+|\s+$/g,""))}else t.className=t.className.replace(e,"").replace(/^\s+|\s+$/g,"")}function x(t,e){var n="";if(t.style.cssText&&(n+=t.style.cssText),"string"==typeof e)n+=e;else for(var r in e)n+="".concat(r,":").concat(e[r],";");t.style.cssText=n}function k(t){if(t){if(!this._introItems[this._currentStep])return;var e=this._introItems[this._currentStep],n=w(e.element,this._targetElement),r=this._options.helperElementPadding;g(e.element)?p(t,"introjs-fixedTooltip"):_(t,"introjs-fixedTooltip"),"floating"===e.position&&(r=0),x(t,{width:"".concat(n.width+r,"px"),height:"".concat(n.height+r,"px"),top:"".concat(n.top-r/2,"px"),left:"".concat(n.left-r/2,"px")})}}function C(t,e,n,r,i){return t.left+e+n.width>r.width?(i.style.left="".concat(r.width-n.width-t.left,"px"),!1):(i.style.left="".concat(e,"px"),!0)}function S(t,e,n,r){return t.left+t.width-e-n.width<0?(r.style.left="".concat(-t.left,"px"),!1):(r.style.right="".concat(e,"px"),!0)}function j(t,e){t.includes(e)&&t.splice(t.indexOf(e),1)}function A(t,e,n){var r=this._options.positionPrecedence.slice(),i=b(),o=w(e).height+10,a=w(e).width+20,s=t.getBoundingClientRect(),l="floating";s.bottom+o>i.height&&j(r,"bottom"),s.top-o<0&&j(r,"top"),s.right+a>i.width&&j(r,"right"),s.left-a<0&&j(r,"left");var c,u,h=-1!==(u=(c=n||"").indexOf("-"))?c.substr(u):"";return n&&(n=n.split("-")[0]),r.length&&(l=r.includes(n)?n:r[0]),["top","bottom"].includes(l)&&(l+=function(t,e,n,r){var i=e/2,o=Math.min(n,window.screen.width),a=["-left-aligned","-middle-aligned","-right-aligned"];return o-ts.height?(n.className="introjs-arrow left-bottom",e.style.top="-".concat(o.height-a.height-20,"px")):n.className="introjs-arrow left";break;case"left":r||!0!==this._options.showStepNumbers||(e.style.top="15px"),a.top+o.height>s.height?(e.style.top="-".concat(o.height-a.height-20,"px"),n.className="introjs-arrow right-bottom"):n.className="introjs-arrow right",e.style.right="".concat(a.width+20,"px");break;case"floating":n.style.display="none",e.style.left="50%",e.style.top="50%",e.style.marginLeft="-".concat(o.width/2,"px"),e.style.marginTop="-".concat(o.height/2,"px");break;case"bottom-right-aligned":n.className="introjs-arrow top-right",S(a,h=0,o,e),e.style.top="".concat(a.height+20,"px");break;case"bottom-middle-aligned":n.className="introjs-arrow top-middle",r&&(u+=5),S(a,u,o,e)&&(e.style.right=null,C(a,u,o,s,e)),e.style.top="".concat(a.height+20,"px");break;default:n.className="introjs-arrow top",C(a,0,o,s,e),e.style.top="".concat(a.height+20,"px")}}}function N(){u(Array.from(document.querySelectorAll(".introjs-showElement")),(function(t){_(t,/introjs-[a-zA-Z]+/g)}))}function L(t,e){var n=document.createElement(t);e=e||{};var r=/^(?:role|data-|aria-)/;for(var i in e){var o=e[i];"style"===i?x(n,o):i.match(r)?n.setAttribute(i,o):n[i]=o}return n}function T(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(n){var r=e.style.opacity||"1";x(e,{opacity:"0"}),window.setTimeout((function(){x(e,{opacity:r})}),10)}t.appendChild(e)}function I(){return parseInt(this._currentStep+1,10)/this._introItems.length*100}function P(){var t=document.querySelector(".introjs-disableInteraction");null===t&&(t=L("div",{className:"introjs-disableInteraction"}),this._targetElement.appendChild(t)),k.call(this,t)}function q(t){var e=this,n=L("div",{className:"introjs-bullets"});!1===this._options.showBullets&&(n.style.display="none");var r=L("ul");r.setAttribute("role","tablist");var i=function(){e.goToStep(this.getAttribute("data-step-number"))};return u(this._introItems,(function(e,n){var o=e.step,a=L("li"),s=L("a");a.setAttribute("role","presentation"),s.setAttribute("role","tab"),s.onclick=i,n===t.step-1&&(s.className="active"),y(s),s.innerHTML=" ",s.setAttribute("data-step-number",o),a.appendChild(s),r.appendChild(a)})),n.appendChild(r),n}function O(t){if(this._options.showBullets){var e=document.querySelector(".introjs-bullets");e&&e.parentNode.replaceChild(q.call(this,t),e)}}function B(t,e){this._options.showBullets&&(t.querySelector(".introjs-bullets li > a.active").className="",t.querySelector('.introjs-bullets li > a[data-step-number="'.concat(e.step,'"]')).className="active")}function H(){var t=L("div");t.className="introjs-progress",!1===this._options.showProgress&&(t.style.display="none");var e=L("div",{className:"introjs-progressbar"});return this._options.progressBarAdditionalClass&&(e.className+=" "+this._options.progressBarAdditionalClass),e.setAttribute("role","progress"),e.setAttribute("aria-valuemin","0"),e.setAttribute("aria-valuemax","100"),e.setAttribute("aria-valuenow",I.call(this)),e.style.cssText="width:".concat(I.call(this),"%;"),t.appendChild(e),t}function R(t){t.querySelector(".introjs-progress .introjs-progressbar").style.cssText="width:".concat(I.call(this),"%;"),t.querySelector(".introjs-progress .introjs-progressbar").setAttribute("aria-valuenow",I.call(this))}function M(t){return F.apply(this,arguments)}function F(){return(F=r(t().mark((function e(n){var i,o,a,s,l,c,u,h,f,b,g,w,_,C,S,j,A,I,O,M,F,D,G,V,z,Y=this;return t().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0===this._introChangeCallback){e.next=3;break}return e.next=3,this._introChangeCallback.call(this,n.element);case 3:if(i=this,o=document.querySelector(".introjs-helperLayer"),a=document.querySelector(".introjs-tooltipReferenceLayer"),s="introjs-helperLayer","string"==typeof n.highlightClass&&(s+=" ".concat(n.highlightClass)),"string"==typeof this._options.highlightClass&&(s+=" ".concat(this._options.highlightClass)),null!==o&&null!==a?(h=a.querySelector(".introjs-helperNumberLayer"),f=a.querySelector(".introjs-tooltiptext"),b=a.querySelector(".introjs-tooltip-title"),g=a.querySelector(".introjs-arrow"),w=a.querySelector(".introjs-tooltip"),u=a.querySelector(".introjs-skipbutton"),c=a.querySelector(".introjs-prevbutton"),l=a.querySelector(".introjs-nextbutton"),o.className=s,w.style.opacity="0",w.style.display="none",m.call(i,n.element),k.call(i,o),k.call(i,a),N(),i._lastShowElementTimer&&window.clearTimeout(i._lastShowElementTimer),i._lastShowElementTimer=window.setTimeout((function(){null!==h&&(h.innerHTML="".concat(n.step," ").concat(Y._options.stepNumbersOfLabel," ").concat(Y._introItems.length)),f.innerHTML=n.intro,b.innerHTML=n.title,w.style.display="block",E.call(i,n.element,w,g),B.call(i,a,n),R.call(i,a),w.style.opacity="1",(null!=l&&/introjs-donebutton/gi.test(l.className)||null!=l)&&l.focus(),v.call(i,n.scrollTo,n.element,f)}),350)):(_=L("div",{className:s}),C=L("div",{className:"introjs-tooltipReferenceLayer"}),S=L("div",{className:"introjs-arrow"}),j=L("div",{className:"introjs-tooltip"}),A=L("div",{className:"introjs-tooltiptext"}),I=L("div",{className:"introjs-tooltip-header"}),O=L("h1",{className:"introjs-tooltip-title"}),M=L("div"),x(_,{"box-shadow":"0 0 1px 2px rgba(33, 33, 33, 0.8), rgba(33, 33, 33, ".concat(i._options.overlayOpacity.toString(),") 0 0 0 5000px")}),m.call(i,n.element),k.call(i,_),k.call(i,C),T(this._targetElement,_,!0),T(this._targetElement,C),A.innerHTML=n.intro,O.innerHTML=n.title,M.className="introjs-tooltipbuttons",!1===this._options.showButtons&&(M.style.display="none"),I.appendChild(O),j.appendChild(I),j.appendChild(A),this._options.dontShowAgain&&(F=L("div",{className:"introjs-dontShowAgain"}),(D=L("input",{type:"checkbox",id:"introjs-dontShowAgain",name:"introjs-dontShowAgain"})).onchange=function(t){Y.setDontShowAgain(t.target.checked)},(G=L("label",{htmlFor:"introjs-dontShowAgain"})).innerText=this._options.dontShowAgainLabel,F.appendChild(D),F.appendChild(G),j.appendChild(F)),j.appendChild(q.call(this,n)),j.appendChild(H.call(this)),V=L("div"),!0===this._options.showStepNumbers&&(V.className="introjs-helperNumberLayer",V.innerHTML="".concat(n.step," ").concat(this._options.stepNumbersOfLabel," ").concat(this._introItems.length),j.appendChild(V)),j.appendChild(S),C.appendChild(j),(l=L("a")).onclick=r(t().mark((function e(){return t().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(i._introItems.length-1===i._currentStep){t.next=5;break}return t.next=3,W.call(i);case 3:t.next=11;break;case 5:if(!/introjs-donebutton/gi.test(l.className)){t.next=11;break}if("function"!=typeof i._introCompleteCallback){t.next=9;break}return t.next=9,i._introCompleteCallback.call(i,i._currentStep,"done");case 9:return t.next=11,xt.call(i,i._targetElement);case 11:case"end":return t.stop()}}),e)}))),y(l),l.innerHTML=this._options.nextLabel,(c=L("a")).onclick=r(t().mark((function e(){return t().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(0===i._currentStep){t.next=3;break}return t.next=3,$.call(i);case 3:case"end":return t.stop()}}),e)}))),y(c),c.innerHTML=this._options.prevLabel,y(u=L("a",{className:"introjs-skipbutton"})),u.innerHTML=this._options.skipLabel,u.onclick=r(t().mark((function e(){return t().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(i._introItems.length-1!==i._currentStep||"function"!=typeof i._introCompleteCallback){t.next=3;break}return t.next=3,i._introCompleteCallback.call(i,i._currentStep,"skip");case 3:if("function"!=typeof i._introSkipCallback){t.next=6;break}return t.next=6,i._introSkipCallback.call(i);case 6:return t.next=8,xt.call(i,i._targetElement);case 8:case"end":return t.stop()}}),e)}))),I.appendChild(u),this._introItems.length>1&&M.appendChild(c),M.appendChild(l),j.appendChild(M),E.call(i,n.element,j,S),v.call(this,n.scrollTo,n.element,j)),(z=i._targetElement.querySelector(".introjs-disableInteraction"))&&z.parentNode.removeChild(z),n.disableInteraction&&P.call(i),0===this._currentStep&&this._introItems.length>1?(null!=l&&(l.className="".concat(this._options.buttonClass," introjs-nextbutton"),l.innerHTML=this._options.nextLabel),!0===this._options.hidePrev?(null!=c&&(c.className="".concat(this._options.buttonClass," introjs-prevbutton introjs-hidden")),null!=l&&p(l,"introjs-fullbutton")):null!=c&&(c.className="".concat(this._options.buttonClass," introjs-prevbutton introjs-disabled"))):this._introItems.length-1===this._currentStep||1===this._introItems.length?(null!=c&&(c.className="".concat(this._options.buttonClass," introjs-prevbutton")),!0===this._options.hideNext?(null!=l&&(l.className="".concat(this._options.buttonClass," introjs-nextbutton introjs-hidden")),null!=c&&p(c,"introjs-fullbutton")):null!=l&&(!0===this._options.nextToDone?(l.innerHTML=this._options.doneLabel,p(l,"".concat(this._options.buttonClass," introjs-nextbutton introjs-donebutton"))):l.className="".concat(this._options.buttonClass," introjs-nextbutton introjs-disabled"))):(null!=c&&(c.className="".concat(this._options.buttonClass," introjs-prevbutton")),null!=l&&(l.className="".concat(this._options.buttonClass," introjs-nextbutton"),l.innerHTML=this._options.nextLabel)),null!=c&&c.setAttribute("role","button"),null!=l&&l.setAttribute("role","button"),null!=u&&u.setAttribute("role","button"),null!=l&&l.focus(),d(n.element),void 0===this._introAfterChangeCallback){e.next=22;break}return e.next=22,this._introAfterChangeCallback.call(this,n.element);case 22:case"end":return e.stop()}}),e,this)})))).apply(this,arguments)}function D(t){return G.apply(this,arguments)}function G(){return(G=r(t().mark((function e(n){return t().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(this._currentStep=n-2,void 0===this._introItems){t.next=4;break}return t.next=4,W.call(this);case 4:case"end":return t.stop()}}),e,this)})))).apply(this,arguments)}function V(t){return z.apply(this,arguments)}function z(){return(z=r(t().mark((function e(n){return t().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(this._currentStepNumber=n,void 0===this._introItems){t.next=4;break}return t.next=4,W.call(this);case 4:case"end":return t.stop()}}),e,this)})))).apply(this,arguments)}function W(){return Y.apply(this,arguments)}function Y(){return Y=r(t().mark((function e(){var n,r,i=this;return t().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(this._direction="forward",void 0!==this._currentStepNumber&&u(this._introItems,(function(t,e){t.step===i._currentStepNumber&&(i._currentStep=e-1,i._currentStepNumber=void 0)})),void 0===this._currentStep?this._currentStep=0:++this._currentStep,n=this._introItems[this._currentStep],r=!0,void 0===this._introBeforeChangeCallback){t.next=9;break}return t.next=8,this._introBeforeChangeCallback.call(this,n&&n.element);case 8:r=t.sent;case 9:if(!1!==r){t.next=12;break}return--this._currentStep,t.abrupt("return",!1);case 12:if(!(this._introItems.length<=this._currentStep)){t.next=19;break}if("function"!=typeof this._introCompleteCallback){t.next=16;break}return t.next=16,this._introCompleteCallback.call(this,this._currentStep,"end");case 16:return t.next=18,xt.call(this,this._targetElement);case 18:return t.abrupt("return",!1);case 19:return t.next=21,M.call(this,n);case 21:return t.abrupt("return",!0);case 22:case"end":return t.stop()}}),e,this)}))),Y.apply(this,arguments)}function $(){return Q.apply(this,arguments)}function Q(){return Q=r(t().mark((function e(){var n,r;return t().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(this._direction="backward",0!==this._currentStep){t.next=3;break}return t.abrupt("return",!1);case 3:if(--this._currentStep,n=this._introItems[this._currentStep],r=!0,void 0===this._introBeforeChangeCallback){t.next=10;break}return t.next=9,this._introBeforeChangeCallback.call(this,n&&n.element);case 9:r=t.sent;case 10:if(!1!==r){t.next=13;break}return++this._currentStep,t.abrupt("return",!1);case 13:return t.next=15,M.call(this,n);case 15:return t.abrupt("return",!0);case 16:case"end":return t.stop()}}),e,this)}))),Q.apply(this,arguments)}function U(){return this._currentStep}function X(t){return J.apply(this,arguments)}function J(){return(J=r(t().mark((function e(n){var r,i;return t().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(null===(r=void 0===n.code?n.which:n.code)&&(r=null===n.charCode?n.keyCode:n.charCode),"Escape"!==r&&27!==r||!0!==this._options.exitOnEsc){t.next=7;break}return t.next=5,xt.call(this,this._targetElement);case 5:t.next=39;break;case 7:if("ArrowLeft"!==r&&37!==r){t.next=12;break}return t.next=10,$.call(this);case 10:t.next=39;break;case 12:if("ArrowRight"!==r&&39!==r){t.next=17;break}return t.next=15,W.call(this);case 15:t.next=39;break;case 17:if("Enter"!==r&&"NumpadEnter"!==r&&13!==r){t.next=39;break}if(!(i=n.target||n.srcElement)||!i.className.match("introjs-prevbutton")){t.next=24;break}return t.next=22,$.call(this);case 22:t.next=38;break;case 24:if(!i||!i.className.match("introjs-skipbutton")){t.next=32;break}if(this._introItems.length-1!==this._currentStep||"function"!=typeof this._introCompleteCallback){t.next=28;break}return t.next=28,this._introCompleteCallback.call(this,this._currentStep,"skip");case 28:return t.next=30,xt.call(this,this._targetElement);case 30:t.next=38;break;case 32:if(!i||!i.getAttribute("data-step-number")){t.next=36;break}i.click(),t.next=38;break;case 36:return t.next=38,W.call(this);case 38:n.preventDefault?n.preventDefault():n.returnValue=!1;case 39:case"end":return t.stop()}}),e,this)})))).apply(this,arguments)}function Z(t){if(null===t||"object"!==e(t)||"nodeType"in t)return t;var n={};for(var r in t)"jQuery"in window&&t[r]instanceof window.jQuery?n[r]=t[r]:n[r]=Z(t[r]);return n}function K(t,e){var n,r=this;return function(){for(var i=arguments.length,o=new Array(i),a=0;a=0&&(this._hintsAutoRefreshFunction=K((function(){return vt.call(o)}),this._options.hintAutoRefreshInterval),h.on(window,"scroll",this._hintsAutoRefreshFunction,this,!0));case 10:case"end":return t.stop()}}),e,this)})))).apply(this,arguments)}function ht(t,e,n){var r=w.call(this,n),i=20,o=20;switch(t){default:case"top-left":e.style.left="".concat(r.left,"px"),e.style.top="".concat(r.top,"px");break;case"top-right":e.style.left="".concat(r.left+r.width-i,"px"),e.style.top="".concat(r.top,"px");break;case"bottom-left":e.style.left="".concat(r.left,"px"),e.style.top="".concat(r.top+r.height-o,"px");break;case"bottom-right":e.style.left="".concat(r.left+r.width-i,"px"),e.style.top="".concat(r.top+r.height-o,"px");break;case"middle-left":e.style.left="".concat(r.left,"px"),e.style.top="".concat(r.top+(r.height-o)/2,"px");break;case"middle-right":e.style.left="".concat(r.left+r.width-i,"px"),e.style.top="".concat(r.top+(r.height-o)/2,"px");break;case"middle-middle":e.style.left="".concat(r.left+(r.width-i)/2,"px"),e.style.top="".concat(r.top+(r.height-o)/2,"px");break;case"bottom-middle":e.style.left="".concat(r.left+(r.width-i)/2,"px"),e.style.top="".concat(r.top+r.height-o,"px");break;case"top-middle":e.style.left="".concat(r.left+(r.width-i)/2,"px"),e.style.top="".concat(r.top,"px")}}function pt(t){return ft.apply(this,arguments)}function ft(){return(ft=r(t().mark((function e(n){var r,i,o,a,s,l,c,u,h;return t().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(r=document.querySelector('.introjs-hint[data-step="'.concat(n,'"]')),i=this._introItems[n],void 0===this._hintClickCallback){t.next=5;break}return t.next=5,this._hintClickCallback.call(this,r,i,n);case 5:if(o=dt.call(this),parseInt(o,10)!==n){t.next=8;break}return t.abrupt("return");case 8:a=L("div",{className:"introjs-tooltip"}),s=L("div"),l=L("div"),c=L("div"),a.onclick=function(t){t.stopPropagation?t.stopPropagation():t.cancelBubble=!0},s.className="introjs-tooltiptext",(u=L("p")).innerHTML=i.hint,s.appendChild(u),this._options.hintShowButton&&((h=L("a")).className=this._options.buttonClass,h.setAttribute("role","button"),h.innerHTML=this._options.hintButtonLabel,h.onclick=et.bind(this,n),s.appendChild(h)),l.className="introjs-arrow",a.appendChild(l),a.appendChild(s),this._currentStep=r.getAttribute("data-step"),c.className="introjs-tooltipReferenceLayer introjs-hintReference",c.setAttribute("data-step",r.getAttribute("data-step")),k.call(this,c),c.appendChild(a),document.body.appendChild(c),E.call(this,r,a,l,!0);case 28:case"end":return t.stop()}}),e,this)})))).apply(this,arguments)}function dt(){var t=document.querySelector(".introjs-hintReference");if(t){var e=t.getAttribute("data-step");return t.parentNode.removeChild(t),e}}function mt(t){return bt.apply(this,arguments)}function bt(){return(bt=r(t().mark((function e(n){var r,i=this;return t().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(this._introItems=[],!this._options.hints){t.next=5;break}u(this._options.hints,(function(t){var e=Z(t);"string"==typeof e.element&&(e.element=document.querySelector(e.element)),e.hintPosition=e.hintPosition||i._options.hintPosition,e.hintAnimation=e.hintAnimation||i._options.hintAnimation,null!==e.element&&i._introItems.push(e)})),t.next=9;break;case 5:if((r=Array.from(n.querySelectorAll("*[data-hint]")))&&r.length){t.next=8;break}return t.abrupt("return",!1);case 8:u(r,(function(t){var e=t.getAttribute("data-hint-animation");e=e?"true"===e:i._options.hintAnimation,i._introItems.push({element:t,hint:t.getAttribute("data-hint"),hintPosition:t.getAttribute("data-hint-position")||i._options.hintPosition,hintAnimation:e,tooltipClass:t.getAttribute("data-tooltip-class"),position:t.getAttribute("data-position")||i._options.tooltipPosition})}));case 9:return t.next=11,ct.call(this);case 11:return h.on(document,"click",dt,this,!1),h.on(window,"resize",vt,this,!0),t.abrupt("return",!0);case 14:case"end":return t.stop()}}),e,this)})))).apply(this,arguments)}function vt(){var t=this;u(this._introItems,(function(e){var n=e.targetElement,r=e.hintPosition,i=e.element;void 0!==n&&ht.call(t,r,i,n)}))}function yt(t){var e=this,n=Array.from(t.querySelectorAll("*[data-intro]")),r=[];if(this._options.steps)u(this._options.steps,(function(t){var n=Z(t);if(n.step=r.length+1,n.title=n.title||"","string"==typeof n.element&&(n.element=document.querySelector(n.element)),void 0===n.element||null===n.element){var i=document.querySelector(".introjsFloatingElement");null===i&&(i=L("div",{className:"introjsFloatingElement"}),document.body.appendChild(i)),n.element=i,n.position="floating"}n.position=n.position||e._options.tooltipPosition,n.scrollTo=n.scrollTo||e._options.scrollTo,void 0===n.disableInteraction&&(n.disableInteraction=e._options.disableInteraction),null!==n.element&&r.push(n)}));else{var i;if(n.length<1)return[];u(n,(function(t){if((!e._options.group||t.getAttribute("data-intro-group")===e._options.group)&&"none"!==t.style.display){var n=parseInt(t.getAttribute("data-step"),10);i=t.hasAttribute("data-disable-interaction")?!!t.getAttribute("data-disable-interaction"):e._options.disableInteraction,n>0&&(r[n-1]={element:t,title:t.getAttribute("data-title")||"",intro:t.getAttribute("data-intro"),step:parseInt(t.getAttribute("data-step"),10),tooltipClass:t.getAttribute("data-tooltip-class"),highlightClass:t.getAttribute("data-highlight-class"),position:t.getAttribute("data-position")||e._options.tooltipPosition,scrollTo:t.getAttribute("data-scroll-to")||e._options.scrollTo,disableInteraction:i})}}));var o=0;u(n,(function(t){if((!e._options.group||t.getAttribute("data-intro-group")===e._options.group)&&null===t.getAttribute("data-step")){for(;void 0!==r[o];)o++;i=t.hasAttribute("data-disable-interaction")?!!t.getAttribute("data-disable-interaction"):e._options.disableInteraction,r[o]={element:t,title:t.getAttribute("data-title")||"",intro:t.getAttribute("data-intro"),step:o+1,tooltipClass:t.getAttribute("data-tooltip-class"),highlightClass:t.getAttribute("data-highlight-class"),position:t.getAttribute("data-position")||e._options.tooltipPosition,scrollTo:t.getAttribute("data-scroll-to")||e._options.scrollTo,disableInteraction:i}}}))}for(var a=[],s=0;s1&&void 0!==arguments[1]&&arguments[1];if(t&&t.parentElement){var n=t.parentElement;e?(x(t,{opacity:"0"}),window.setTimeout((function(){try{n.removeChild(t)}catch(t){}}),500)):n.removeChild(t)}}function xt(t,e){return kt.apply(this,arguments)}function kt(){return(kt=r(t().mark((function e(n,r){var i,o;return t().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(i=!0,void 0===this._introBeforeExitCallback){t.next=5;break}return t.next=4,this._introBeforeExitCallback.call(this);case 4:i=t.sent;case 5:if(r||!1!==i){t.next=7;break}return t.abrupt("return");case 7:if((o=Array.from(n.querySelectorAll(".introjs-overlay")))&&o.length&&u(o,(function(t){return _t(t)})),_t(n.querySelector(".introjs-helperLayer"),!0),_t(n.querySelector(".introjs-tooltipReferenceLayer")),_t(n.querySelector(".introjs-disableInteraction")),_t(document.querySelector(".introjsFloatingElement")),N(),h.off(window,"keydown",X,this,!0),h.off(window,"resize",wt,this,!0),void 0===this._introExitCallback){t.next=23;break}return t.next=23,this._introExitCallback.call(this);case 23:this._currentStep=void 0;case 24:case"end":return t.stop()}}),e,this)})))).apply(this,arguments)}function Ct(e){var n=this,i=L("div",{className:"introjs-overlay"});return x(i,{top:0,bottom:0,left:0,right:0,position:"fixed"}),e.appendChild(i),!0===this._options.exitOnOverlayClick&&(x(i,{cursor:"pointer"}),i.onclick=r(t().mark((function r(){return t().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,xt.call(n,e);case 2:case"end":return t.stop()}}),r)})))),!0}function St(t){return jt.apply(this,arguments)}function jt(){return(jt=r(t().mark((function e(n){var r;return t().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(this.isActive()){t.next=2;break}return t.abrupt("return",!1);case 2:if(void 0===this._introStartCallback){t.next=5;break}return t.next=5,this._introStartCallback.call(this,n);case 5:if(0!==(r=yt.call(this,n)).length){t.next=8;break}return t.abrupt("return",!1);case 8:if(this._introItems=r,!Ct.call(this,n)){t.next=14;break}return t.next=12,W.call(this);case 12:this._options.keyboardNavigation&&h.on(window,"keydown",X,this,!0),h.on(window,"resize",wt,this,!0);case 14:return t.abrupt("return",!1);case 15:case"end":return t.stop()}}),e,this)})))).apply(this,arguments)}function At(t,e,n){var r,i=(o(r={},t,e),o(r,"path","/"),o(r,"expires",void 0),r);if(n){var a=new Date;a.setTime(a.getTime()+24*n*60*60*1e3),i.expires=a.toUTCString()}var s=[];for(var l in i)s.push("".concat(l,"=").concat(i[l]));return document.cookie=s.join("; "),Et(t)}function Et(t){return(e={},document.cookie.split(";").forEach((function(t){var n=a(t.split("="),2),r=n[0],i=n[1];e[r.trim()]=i})),e)[t];var e}var Nt="true";function Lt(t){t?At(this._options.dontShowAgainCookie,Nt,this._options.dontShowAgainCookieDays):At(this._options.dontShowAgainCookie,"",-1)}function Tt(){var t=Et(this._options.dontShowAgainCookie);return t&&t===Nt}var It=function(){function e(t){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),o(this,"_targetElement",void 0),o(this,"_introItems",[]),o(this,"_options",void 0),o(this,"_introBeforeChangeCallback",void 0),o(this,"_introChangeCallback",void 0),o(this,"_introAfterChangeCallback",void 0),o(this,"_introCompleteCallback",void 0),o(this,"_hintsAddedCallback",void 0),o(this,"_hintClickCallback",void 0),o(this,"_hintCloseCallback",void 0),o(this,"_introStartCallback",void 0),o(this,"_introExitCallback",void 0),o(this,"_introSkipCallback",void 0),o(this,"_introBeforeExitCallback",void 0),this._targetElement=t,this._options={isActive:!0,nextLabel:"Next",prevLabel:"Back",skipLabel:"×",doneLabel:"Done",hidePrev:!1,hideNext:!1,nextToDone:!0,tooltipPosition:"bottom",tooltipClass:"",group:"",highlightClass:"",exitOnEsc:!0,exitOnOverlayClick:!0,showStepNumbers:!1,stepNumbersOfLabel:"of",keyboardNavigation:!0,showButtons:!0,showBullets:!0,showProgress:!1,scrollToElement:!0,scrollTo:"element",scrollPadding:30,overlayOpacity:.5,autoPosition:!0,positionPrecedence:["bottom","top","right","left"],disableInteraction:!1,dontShowAgain:!1,dontShowAgainLabel:"Don't show this again",dontShowAgainCookie:"introjs-dontShowAgain",dontShowAgainCookieDays:365,helperElementPadding:10,hintPosition:"top-middle",hintButtonLabel:"Got it",hintShowButton:!0,hintAutoRefreshInterval:10,hintAnimation:!0,buttonClass:"introjs-button",progressBarAdditionalClass:!1}}var n,a,s,l,c,u,h,p,f,d,m,b,v;return n=e,a=[{key:"isActive",value:function(){return(!this._options.dontShowAgain||!Tt.call(this))&&this._options.isActive}},{key:"clone",value:function(){return new e(this._targetElement)}},{key:"setOption",value:function(t,e){return this._options[t]=e,this}},{key:"setOptions",value:function(t){return this._options=function(t,e){var n,r={};for(n in t)r[n]=t[n];for(n in e)r[n]=e[n];return r}(this._options,t),this}},{key:"start",value:(v=r(t().mark((function e(){return t().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,St.call(this,this._targetElement);case 2:return t.abrupt("return",this);case 3:case"end":return t.stop()}}),e,this)}))),function(){return v.apply(this,arguments)})},{key:"goToStep",value:(b=r(t().mark((function e(n){return t().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,D.call(this,n);case 2:return t.abrupt("return",this);case 3:case"end":return t.stop()}}),e,this)}))),function(t){return b.apply(this,arguments)})},{key:"addStep",value:function(t){return this._options.steps||(this._options.steps=[]),this._options.steps.push(t),this}},{key:"addSteps",value:function(t){if(!t.length)return this;for(var e=0;e=0&&(c=c.substring(0,j)+"([\\w._\\+]+)"+c.substring(j+5)),b[e]=new RegExp(c,"i");k.props[a]=b}d(k.oss),d(k.phones),d(k.tablets),d(k.uas),d(k.utils),k.oss0={WindowsPhoneOS:k.oss.WindowsPhoneOS,WindowsMobileOS:k.oss.WindowsMobileOS}}(),g.findMatch=function(a,b){for(var c in a)if(i.call(a,c)&&a[c].test(b))return c;return null},g.findMatches=function(a,b){var c=[];for(var d in a)i.call(a,d)&&a[d].test(b)&&c.push(d);return c},g.getVersionStr=function(a,b){var c,d,e,f,h=g.mobileDetectRules.props;if(i.call(h,a))for(c=h[a],e=c.length,d=0;d1&&(a=b[0]+".",b.shift(),a+=b.join("")),Number(a)},g.isMobileFallback=function(a){return g.detectMobileBrowsers.fullPattern.test(a)||g.detectMobileBrowsers.shortPattern.test(a.substr(0,4))},g.isTabletFallback=function(a){return g.detectMobileBrowsers.tabletPattern.test(a)},g.prepareDetectionCache=function(a,c,d){if(a.mobile===b){var e,h,i;return(h=g.findMatch(g.mobileDetectRules.tablets,c))?(a.mobile=a.tablet=h,void(a.phone=null)):(e=g.findMatch(g.mobileDetectRules.phones,c))?(a.mobile=a.phone=e,void(a.tablet=null)):void(g.isMobileFallback(c)?(i=f.isPhoneSized(d),i===b?(a.mobile=g.FALLBACK_MOBILE,a.tablet=a.phone=null):i?(a.mobile=a.phone=g.FALLBACK_PHONE,a.tablet=null):(a.mobile=a.tablet=g.FALLBACK_TABLET,a.phone=null)):g.isTabletFallback(c)?(a.mobile=a.tablet=g.FALLBACK_TABLET,a.phone=null):a.mobile=a.tablet=a.phone=null)}},g.mobileGrade=function(a){var b=null!==a.mobile();return a.os("iOS")&&a.version("iPad")>=4.3||a.os("iOS")&&a.version("iPhone")>=3.1||a.os("iOS")&&a.version("iPod")>=3.1||a.version("Android")>2.1&&a.is("Webkit")||a.version("Windows Phone OS")>=7||a.is("BlackBerry")&&a.version("BlackBerry")>=6||a.match("Playbook.*Tablet")||a.version("webOS")>=1.4&&a.match("Palm|Pre|Pixi")||a.match("hp.*TouchPad")||a.is("Firefox")&&a.version("Firefox")>=12||a.is("Chrome")&&a.is("AndroidOS")&&a.version("Android")>=4||a.is("Skyfire")&&a.version("Skyfire")>=4.1&&a.is("AndroidOS")&&a.version("Android")>=2.3||a.is("Opera")&&a.version("Opera Mobi")>11&&a.is("AndroidOS")||a.is("MeeGoOS")||a.is("Tizen")||a.is("Dolfin")&&a.version("Bada")>=2||(a.is("UC Browser")||a.is("Dolfin"))&&a.version("Android")>=2.3||a.match("Kindle Fire")||a.is("Kindle")&&a.version("Kindle")>=3||a.is("AndroidOS")&&a.is("NookTablet")||a.version("Chrome")>=11&&!b||a.version("Safari")>=5&&!b||a.version("Firefox")>=4&&!b||a.version("MSIE")>=7&&!b||a.version("Opera")>=10&&!b?"A":a.os("iOS")&&a.version("iPad")<4.3||a.os("iOS")&&a.version("iPhone")<3.1||a.os("iOS")&&a.version("iPod")<3.1||a.is("Blackberry")&&a.version("BlackBerry")>=5&&a.version("BlackBerry")<6||a.version("Opera Mini")>=5&&a.version("Opera Mini")<=6.5&&(a.version("Android")>=2.3||a.is("iOS"))||a.match("NokiaN8|NokiaC7|N97.*Series60|Symbian/3")||a.version("Opera Mobi")>=11&&a.is("SymbianOS")?"B":(a.version("BlackBerry")<5||a.match("MSIEMobile|Windows CE.*Mobile")||a.version("Windows Mobile")<=5.2,"C")},g.detectOS=function(a){return g.findMatch(g.mobileDetectRules.oss0,a)||g.findMatch(g.mobileDetectRules.oss,a)},g.getDeviceSmallerSide=function(){return window.screen.width