UNPKG

@progress/kendo-ui

Version:

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

650 lines (523 loc) 20.1 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__(982); /***/ }), /***/ 3: /***/ (function(module, exports) { module.exports = function() { throw new Error("define cannot be used indirect"); }; /***/ }), /***/ 869: /***/ (function(module, exports) { module.exports = require("../../kendo.draganddrop"); /***/ }), /***/ 948: /***/ (function(module, exports) { module.exports = require("../main"); /***/ }), /***/ 976: /***/ (function(module, exports) { module.exports = require("./resizing-utils"); /***/ }), /***/ 982: /***/ (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__(948), __webpack_require__(869), __webpack_require__(976)], __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() { (function(kendo, undefined) { var $ = kendo.jQuery; var extend = $.extend; var noop = $.noop; var proxy = $.proxy; var Editor = kendo.ui.editor; var Class = kendo.Class; var Draggable = kendo.ui.Draggable; var Observable = kendo.Observable; var getScrollBarWidth = Editor.ResizingUtils.getScrollBarWidth; var outerWidth = kendo._outerWidth; var outerHeight = kendo._outerHeight; var NS = ".kendoEditorTableResizeHandle"; var RESIZE_HANDLE_CLASS = "k-table-resize-handle"; var DRAG_START = "dragStart"; var DRAG = "drag"; var DRAG_END = "dragEnd"; var HALF_INSIDE = "halfInside"; var MOUSE_OVER = "mouseover"; var MOUSE_OUT = "mouseout"; var BODY = "body"; var TABLE = "table"; var EAST = "east"; var NORTH = "north"; var NORTHEAST = "northeast"; var NORTHWEST = "northwest"; var SOUTH = "south"; var SOUTHEAST = "southeast"; var SOUTHWEST = "southwest"; var WEST = "west"; var DOT = "."; var TableResizeHandle = Observable.extend({ init: function(options) { var that = this; Observable.fn.init.call(that); that.options = extend({}, that.options, options); that.element = $(that.options.template).appendTo(that.options.appendTo)[0]; that._attachEventHandlers(); that._addStyles(); that._initDraggable(); that._initPositioningStrategy(); that._initDraggingStrategy(); $(that.element).data(TABLE, that.options.resizableElement); }, destroy: function() { var that = this; $(that.element).off(NS).remove(); that.element = null; that._destroyDraggable(); that.unbind(); }, options: { appendTo: null, direction: SOUTHEAST, resizableElement: null, rtl: false, template: "<div class='k-table-resize-handle-wrapper' unselectable='on' contenteditable='false'>"+ "<div class='" + RESIZE_HANDLE_CLASS + "'></div>" + "</div>" }, events: [ DRAG_START, DRAG, DRAG_END, MOUSE_OVER, MOUSE_OUT ], show: function() { this._setPosition(); }, _setPosition: function() { var that = this; var position = that._positioningStrategy.getPosition(); $(that.element).css({ top: position.top, left: position.left, position: "absolute" }); }, _attachEventHandlers: function() { var that = this; $(that.element) .on(MOUSE_OVER + NS, proxy(that._onMouseOver, that)) .on(MOUSE_OUT + NS, proxy(that._onMouseOut, that)); }, _onMouseOver: function() { this.trigger(MOUSE_OVER); }, _onMouseOut: function() { this.trigger(MOUSE_OUT); }, _addStyles: function() { var that = this; $(that.element).children(DOT + RESIZE_HANDLE_CLASS).addClass("k-resize-" + that.options.direction); }, _initPositioningStrategy: function() { var that = this; var options = that.options; that._positioningStrategy = HandlePositioningStrategy.create({ name: options.direction, handle: that.element, resizableElement: options.resizableElement, rootElement: options.rootElement, rtl: options.rtl }); }, _initDraggable: function() { var that = this; var element = that.element; if (that._draggable || !element) { return; } that._draggable = new Draggable(element, { dragstart: proxy(that._onDragStart, that), drag: proxy(that._onDrag, that), dragend: proxy(that._onDragEnd, that) }); }, _onDragStart: function() { this.trigger(DRAG_START); }, _onDrag: function(e) { var that = this; that.trigger(DRAG, that._draggingStrategy.adjustDragDelta({ deltaX: e.x.delta, deltaY: e.y.delta, initialDeltaX: e.x.initialDelta, initialDeltaY: e.y.initialDelta })); }, _onDragEnd: function() { this.trigger(DRAG_END); }, _destroyDraggable : function() { var that = this; if (that._draggable) { that._draggable.destroy(); that._draggable = null; } }, _initDraggingStrategy: function() { var that = this; that._draggingStrategy = HandleDraggingStrategy.create({ name: that.options.direction }); } }); var StrategyFactory = Class.extend({ init: function() { this._items = []; }, register: function(name, type) { this._items.push({ name: name, type: type }); }, create: function(options) { var items = this._items; var itemsLength = items.length; var name = options.name ? options.name.toLowerCase() : ""; var match; var item; var i; for (i = 0; i < itemsLength; i++) { item = items[i]; if (item.name.toLowerCase() === name) { match = item; break; } } if (match) { return new match.type(options); } } }); var PositioningStrategyFactory = StrategyFactory.extend({}); PositioningStrategyFactory.current = new PositioningStrategyFactory(); var HandlePositioningStrategy = Class.extend({ init: function(options) { var that = this; that.options = extend({}, that.options, options); }, options: { handle: null, offset: HALF_INSIDE, resizableElement: null, rootElement: null, rtl: false }, getPosition: function() { var that = this; var position = that.calculatePosition(); var handleOffsetPosition = that.applyHandleOffset(position); var scrollOffsetPosition = that.applyScrollOffset(handleOffsetPosition); return scrollOffsetPosition; }, calculatePosition: noop, applyHandleOffset: function(position) { var options = this.options; var handle = $(options.handle); if (options.offset === HALF_INSIDE) { return { top: position.top - (outerHeight(handle) / 2), left: position.left - (outerWidth(handle) / 2) }; } return position; }, applyScrollOffset: function(position) { var options = this.options; var rootElement = $(options.rootElement); var scrollBarWidth = options.rtl ? getScrollBarWidth(rootElement[0]) : 0; if (!rootElement.is(BODY)) { return { top: position.top + (rootElement.scrollTop() || 0), left: position.left + (rootElement.scrollLeft() || 0) - scrollBarWidth }; } return position; } }); HandlePositioningStrategy.create = function(options) { return PositioningStrategyFactory.current.create(options); }; var EastPositioningStrategy = HandlePositioningStrategy.extend({ calculatePosition: function() { var resizableElement = $(this.options.resizableElement); var offset = resizableElement.position(); return { top: offset.top + (outerHeight(resizableElement) / 2), left: offset.left + outerWidth(resizableElement) }; } }); PositioningStrategyFactory.current.register(EAST, EastPositioningStrategy); var NorthPositioningStrategy = HandlePositioningStrategy.extend({ calculatePosition: function() { var resizableElement = $(this.options.resizableElement); var offset = resizableElement.position(); return { top: offset.top, left: offset.left + (outerWidth(resizableElement) / 2) }; } }); PositioningStrategyFactory.current.register(NORTH, NorthPositioningStrategy); var NortheastPositioningStrategy = HandlePositioningStrategy.extend({ calculatePosition: function() { var resizableElement = $(this.options.resizableElement); var offset = resizableElement.position(); return { top: offset.top, left: offset.left + outerWidth(resizableElement) }; } }); PositioningStrategyFactory.current.register(NORTHEAST, NortheastPositioningStrategy); var NorthwestPositioningStrategy = HandlePositioningStrategy.extend({ calculatePosition: function() { var resizableElement = $(this.options.resizableElement); var offset = resizableElement.position(); return { top: offset.top, left: offset.left }; } }); PositioningStrategyFactory.current.register(NORTHWEST, NorthwestPositioningStrategy); var SouthPositioningStrategy = HandlePositioningStrategy.extend({ calculatePosition: function() { var resizableElement = $(this.options.resizableElement); var offset = resizableElement.position(); return { top: offset.top + outerHeight(resizableElement), left: offset.left + (outerWidth(resizableElement) / 2) }; } }); PositioningStrategyFactory.current.register(SOUTH, SouthPositioningStrategy); var SoutheastPositioningStrategy = HandlePositioningStrategy.extend({ calculatePosition: function() { var resizableElement = $(this.options.resizableElement); var offset = resizableElement.position(); return { top: offset.top + outerHeight(resizableElement), left: offset.left + outerWidth(resizableElement) }; } }); PositioningStrategyFactory.current.register(SOUTHEAST, SoutheastPositioningStrategy); var SouthwestPositioningStrategy = HandlePositioningStrategy.extend({ calculatePosition: function() { var resizableElement = $(this.options.resizableElement); var offset = resizableElement.position(); return { top: offset.top + outerHeight(resizableElement), left: offset.left }; } }); PositioningStrategyFactory.current.register(SOUTHWEST, SouthwestPositioningStrategy); var WestPositioningStrategy = HandlePositioningStrategy.extend({ calculatePosition: function() { var resizableElement = $(this.options.resizableElement); var offset = resizableElement.position(); return { top: offset.top + (outerHeight(resizableElement) / 2), left: offset.left }; } }); PositioningStrategyFactory.current.register(WEST, WestPositioningStrategy); var DraggingStrategyFactory = StrategyFactory.extend({}); DraggingStrategyFactory.current = new DraggingStrategyFactory(); var HandleDraggingStrategy = Class.extend({ init: function(options) { var that = this; that.options = extend({}, that.options, options); }, options: { deltaX: { adjustment: null, modifier: null }, deltaY: { adjustment: null, modifier: null } }, adjustDragDelta: function(deltas) { var options = this.options; var xAxisAdjustment = options.deltaX.adjustment * options.deltaX.modifier; var yAxisAdjustment = options.deltaY.adjustment * options.deltaY.modifier; return { deltaX: deltas.deltaX * xAxisAdjustment, deltaY: deltas.deltaY * yAxisAdjustment, initialDeltaX: deltas.initialDeltaX * xAxisAdjustment, initialDeltaY: deltas.initialDeltaY * yAxisAdjustment }; } }); HandleDraggingStrategy.create = function(options) { return DraggingStrategyFactory.current.create(options); }; var HorizontalDraggingStrategy = HandleDraggingStrategy.extend({ options: { deltaX: { adjustment: 1, modifier: 1 }, deltaY: { adjustment: 0, modifier: 0 } } }); var EastDraggingStrategy = HorizontalDraggingStrategy.extend({ options: { deltaX: { modifier: 1 } } }); DraggingStrategyFactory.current.register(EAST, EastDraggingStrategy); var WestDraggingStrategy = HorizontalDraggingStrategy.extend({ options: { deltaX: { modifier: (-1) } } }); DraggingStrategyFactory.current.register(WEST, WestDraggingStrategy); var VerticalDraggingStrategy = HandleDraggingStrategy.extend({ options: { deltaX: { adjustment: 0, modifier: 0 }, deltaY: { adjustment: 1, modifier: 1 } } }); var NorthDraggingStrategy = VerticalDraggingStrategy.extend({ options: { deltaY: { modifier: (-1) } } }); DraggingStrategyFactory.current.register(NORTH, NorthDraggingStrategy); var SouthDraggingStrategy = VerticalDraggingStrategy.extend({ options: { deltaY: { modifier: 1 } } }); DraggingStrategyFactory.current.register(SOUTH, SouthDraggingStrategy); var HorizontalAndVerticalDraggingStrategy = HandleDraggingStrategy.extend({ options: { deltaX: { adjustment: 1, modifier: 1 }, deltaY: { adjustment: 1, modifier: 1 } } }); var NorthEastDraggingStrategy = HorizontalAndVerticalDraggingStrategy.extend({ options: { deltaX: { modifier: 1 }, deltaY: { modifier: (-1) } } }); DraggingStrategyFactory.current.register(NORTHEAST, NorthEastDraggingStrategy); var NorthWestDraggingStrategy = HorizontalAndVerticalDraggingStrategy.extend({ options: { deltaX: { modifier: (-1) }, deltaY: { modifier: (-1) } } }); DraggingStrategyFactory.current.register(NORTHWEST, NorthWestDraggingStrategy); var SouthEastDraggingStrategy = HorizontalAndVerticalDraggingStrategy.extend({ options: { deltaX: { modifier: 1 }, deltaY: { modifier: 1 } } }); DraggingStrategyFactory.current.register(SOUTHEAST, SouthEastDraggingStrategy); var SouthWestDraggingStrategy = HorizontalAndVerticalDraggingStrategy.extend({ options: { deltaX: { modifier: (-1) }, deltaY: { modifier: 1 } } }); DraggingStrategyFactory.current.register(SOUTHWEST, SouthWestDraggingStrategy); extend(Editor, { TableResizeHandle: TableResizeHandle }); })(window.kendo); }, __webpack_require__(3)); /***/ }) /******/ });