UNPKG

@progress/kendo-ui

Version:

This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.

235 lines (187 loc) 8.19 kB
module.exports = /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) /******/ return installedModules[moduleId].exports; /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ exports: {}, /******/ id: moduleId, /******/ loaded: false /******/ }; /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ // Flag the module as loaded /******/ module.loaded = true; /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ // Load entry module and return exports /******/ return __webpack_require__(0); /******/ }) /************************************************************************/ /******/ ({ /***/ 0: /***/ (function(module, exports, __webpack_require__) { module.exports = __webpack_require__(1287); /***/ }), /***/ 3: /***/ (function(module, exports) { module.exports = function() { throw new Error("define cannot be used indirect"); }; /***/ }), /***/ 1006: /***/ (function(module, exports) { module.exports = require("./kendo.core"); /***/ }), /***/ 1287: /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;(function(f, define){ !(__WEBPACK_AMD_DEFINE_ARRAY__ = [ __webpack_require__(1006) ], __WEBPACK_AMD_DEFINE_FACTORY__ = (f), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); })(function(){ var __meta__ = { // jshint ignore:line id: "responsive-panel", name: "Responsive Panel", category: "web", description: "The Responsive Panel widget allows a panel of content to be hidden on mobile devices, available through a toggle button.", depends: [ "core" ] }; (function ($, undefined) { var proxy = $.proxy; var NS = ".kendoResponsivePanel"; var OPEN = "open"; var CLOSE = "close"; var ACTIVATE_EVENTS = "click" + NS +" touchstart" + NS + " touchend" + NS; var Widget = kendo.ui.Widget; var ResponsivePanel = Widget.extend({ init: function(element, options) { Widget.fn.init.call(this, element, options); this._guid = "_" + kendo.guid(); this._toggleHandler = proxy(this._toggleButtonClick, this); this._closeHandler = proxy(this._close, this); $(document.documentElement).on(ACTIVATE_EVENTS, this.options.toggleButton, this._toggleHandler); this._registerBreakpoint(); this.element .addClass("k-rpanel k-rpanel-" + this.options.orientation + " " + this._guid); this._resizeHandler = proxy(this.resize, this, true); $(window).on("resize" + NS, this._resizeHandler); }, _mediaQuery: "@media (max-width: #= breakpoint-1 #px) {" + ".#= guid #.k-rpanel-animate.k-rpanel-left," + ".#= guid #.k-rpanel-animate.k-rpanel-right {" + "-webkit-transition: -webkit-transform .2s ease-out;" + "-ms-transition: -ms-transform .2s ease-out;" + "transition: transform .2s ease-out;" + "} " + ".#= guid #.k-rpanel-top {" + "overflow: hidden;" + "}" + ".#= guid #.k-rpanel-animate.k-rpanel-top {" + "-webkit-transition: max-height .2s linear;" + "-ms-transition: max-height .2s linear;" + "transition: max-height .2s linear;" + "}" + "} " + "@media (min-width: #= breakpoint #px) {" + "#= toggleButton # { display: none; } " + ".#= guid #.k-rpanel-left { float: left; } " + ".#= guid #.k-rpanel-right { float: right; } " + ".#= guid #.k-rpanel-left, .#= guid #.k-rpanel-right {" + "position: relative;" + "-webkit-transform: translateX(0);" + "-ms-transform: translateX(0);" + "transform: translateX(0);" + "-webkit-transform: translateX(0) translateZ(0);" + "-ms-transform: translateX(0) translateZ(0);" + "transform: translateX(0) translateZ(0);" + "} " + ".k-ie9 .#= guid #.k-rpanel-left { left: 0; } " + ".#= guid #.k-rpanel-top { max-height: none; }" + "}", _registerBreakpoint: function() { var options = this.options; this._registerStyle(kendo.template(this._mediaQuery)({ breakpoint: options.breakpoint, toggleButton: options.toggleButton, guid: this._guid })); }, _registerStyle: function(cssText) { var head = $("head,body")[0]; var style = document.createElement('style'); head.appendChild(style); if (style.styleSheet){ style.styleSheet.cssText = cssText; } else { style.appendChild(document.createTextNode(cssText)); } }, options: { name: "ResponsivePanel", orientation: "left", toggleButton: ".k-rpanel-toggle", breakpoint: 640, autoClose: true }, events: [ OPEN, CLOSE ], _resize: function() { this.element.removeClass("k-rpanel-animate k-rpanel-expanded"); $(document.documentElement).off(ACTIVATE_EVENTS, this._closeHandler); }, _toggleButtonClick: function(e) { e.preventDefault(); if(e.type == "touchend") { return; } if (this.element.hasClass("k-rpanel-expanded")) { this.close(); } else { this.open(); } }, open: function() { if (!this.trigger(OPEN)) { this.element.addClass("k-rpanel-animate k-rpanel-expanded"); if (this.options.autoClose) { $(document.documentElement).on(ACTIVATE_EVENTS, this._closeHandler); } } }, close: function() { if (!this.trigger(CLOSE)) { this.element.addClass("k-rpanel-animate").removeClass("k-rpanel-expanded"); $(document.documentElement).off(ACTIVATE_EVENTS, this._closeHandler); } }, _close: function(e) { var prevented = e.isDefaultPrevented(); var container = $(e.target).closest(this.options.toggleButton + ",.k-rpanel"); if (!container.length && !prevented) { this.close(); } }, destroy: function() { Widget.fn.destroy.call(this); $(window).off("resize" + NS, this._resizeHandler); $(document.documentElement).off(ACTIVATE_EVENTS, this._closeHandler); } }); kendo.ui.plugin(ResponsivePanel); })(window.kendo.jQuery); return window.kendo; }, __webpack_require__(3)); /***/ }) /******/ });