framework7
Version:
Full featured mobile HTML framework for building iOS & Android apps
2 lines (1 loc) • 2.32 kB
JavaScript
(function framework7ComponentLoader(e,r){void 0===r&&(r=!0);var o=e.$,n=e.utils,a=(e.getDevice,e.getSupport,e.Class,e.Modal,e.ConstructorMethods,e.ModalMethods,n.bindMethods),t=n.iosPreloaderContent,d=n.mdPreloaderContent,i=n.auroraPreloaderContent,l={init:function(e){var r={iosPreloaderContent:t,mdPreloaderContent:d,auroraPreloaderContent:i},n=o(e);0===n.length||n.children(".preloader-inner").length>0||n.children(".preloader-inner-line").length>0||n.append(r[this.theme+"PreloaderContent"])},visible:!1,show:function(e){void 0===e&&(e="white");if(!l.visible){var r={iosPreloaderContent:t,mdPreloaderContent:d,auroraPreloaderContent:i}[this.theme+"PreloaderContent"]||"";o("html").addClass("with-modal-preloader"),this.$el.append('\n <div class="preloader-backdrop"></div>\n <div class="preloader-modal">\n <div class="preloader color-'+e+'">'+r+"</div>\n </div>\n "),l.visible=!0}},showIn:function(e,r){void 0===r&&(r="white");var n={iosPreloaderContent:t,mdPreloaderContent:d,auroraPreloaderContent:i}[this.theme+"PreloaderContent"]||"";o(e||"html").addClass("with-modal-preloader"),o(e||this.$el).append('\n <div class="preloader-backdrop"></div>\n <div class="preloader-modal">\n <div class="preloader color-'+r+'">'+n+"</div>\n </div>\n ")},hide:function(){l.visible&&(o("html").removeClass("with-modal-preloader"),this.$el.find(".preloader-backdrop, .preloader-modal").remove(),l.visible=!1)},hideIn:function(e){o(e||"html").removeClass("with-modal-preloader"),o(e||this.$el).find(".preloader-backdrop, .preloader-modal").remove()}},s={name:"preloader",create:function(){a(this,{preloader:l})},on:{photoBrowserOpen:function(e){var r=this;e.$el.find(".preloader").each((function(e){r.preloader.init(e)}))},tabMounted:function(e){var r=this;o(e).find(".preloader").each((function(e){r.preloader.init(e)}))},pageInit:function(e){var r=this;e.$el.find(".preloader").each((function(e){r.preloader.init(e)}))}},vnode:{preloader:{insert:function(e){var r=e.elm;this.preloader.init(r)}}}};if(r){if(e.prototype.modules&&e.prototype.modules[s.name])return;e.use(s),e.instance&&(e.instance.useModuleParams(s,e.instance.params),e.instance.useModule(s))}return s}(Framework7, typeof Framework7AutoInstallComponent === 'undefined' ? undefined : Framework7AutoInstallComponent))