{"version":3,"file":"vendor-node_modules_tocca_Tocca_js-vendors_footable_footable_ws-fork_js.min.js?v=3e84753ae04ab2de9bd3","mappings":"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","sources":["webpack://ui-toolkit/./node_modules/tocca/Tocca.js","webpack://ui-toolkit/./vendors/footable/footable.ws-fork.js"],"sourcesContent":["/**\n *\n * Version: 2.0.1\n * Author: Gianluca Guarini\n * Contact: gianluca.guarini@gmail.com\n * Website: http://www.gianlucaguarini.com/\n * Twitter: @gianlucaguarini\n *\n * Copyright (c) Gianluca Guarini\n *\n * Permission is hereby granted, free of charge, to any person\n * obtaining a copy of this software and associated documentation\n * files (the \"Software\"), to deal in the Software without\n * restriction, including without limitation the rights to use,\n * copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the\n * Software is furnished to do so, subject to the following\n * conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n * OTHER DEALINGS IN THE SOFTWARE.\n **/\n/* global jQuery */\n(function(doc, win) {\n if (typeof doc.createEvent !== 'function') return false // no tap events here\n // helpers\n var pointerEvent = function(type) {\n var lo = type.toLowerCase(),\n ms = 'MS' + type\n return navigator.msPointerEnabled ? ms : window.PointerEvent ? lo : false\n },\n touchEvent = function(name) {\n return 'on' + name in window ? name : false\n },\n defaults = {\n useJquery: !win.IGNORE_JQUERY && typeof jQuery !== 'undefined',\n swipeThreshold: win.SWIPE_THRESHOLD || 100,\n tapThreshold: win.TAP_THRESHOLD || 150, // range of time where a tap event could be detected\n dbltapThreshold: win.DBL_TAP_THRESHOLD || 200, // delay needed to detect a double tap\n longtapThreshold: win.LONG_TAP_THRESHOLD || 1000, // delay needed to detect a long tap\n tapPrecision: win.TAP_PRECISION / 2 || 60 / 2, // touch events boundaries ( 60px by default )\n justTouchEvents: win.JUST_ON_TOUCH_DEVICES\n },\n // was initially triggered a \"touchstart\" event?\n wasTouch = false,\n touchevents = {\n touchstart: touchEvent('touchstart') || pointerEvent('PointerDown'),\n touchend: touchEvent('touchend') || pointerEvent('PointerUp'),\n touchmove: touchEvent('touchmove') || pointerEvent('PointerMove')\n },\n isTheSameFingerId = function(e) {\n return !e.pointerId || typeof pointerId === 'undefined' || e.pointerId === pointerId\n },\n setListener = function(elm, events, callback) {\n var eventsArray = events.split(' '),\n i = eventsArray.length\n\n while (i--) {\n elm.addEventListener(eventsArray[i], callback, false)\n }\n },\n getPointerEvent = function(event) {\n return event.targetTouches ? event.targetTouches[0] : event\n },\n isMultipleTouches = function(event) {\n return event.targetTouches && event.targetTouches.length > 1\n },\n getTimestamp = function () {\n return new Date().getTime()\n },\n sendEvent = function(elm, eventName, originalEvent, data) {\n var customEvent = doc.createEvent('Event')\n customEvent.originalEvent = originalEvent\n data = data || {}\n data.x = currX\n data.y = currY\n data.distance = data.distance\n\n // jquery\n if (defaults.useJquery) {\n customEvent = jQuery.Event(eventName, {originalEvent: originalEvent})\n jQuery(elm).trigger(customEvent, data)\n }\n\n // addEventListener\n if (customEvent.initEvent) {\n for (var key in data) {\n customEvent[key] = data[key]\n }\n\n customEvent.initEvent(eventName, true, true)\n elm.dispatchEvent(customEvent)\n }\n\n // detect all the inline events\n // also on the parent nodes\n while (elm) {\n // inline\n if (elm['on' + eventName])\n elm['on' + eventName](customEvent)\n elm = elm.parentNode\n }\n\n },\n\n onTouchStart = function(e) {\n /**\n * Skip all the mouse events\n * events order:\n * Chrome:\n * touchstart\n * touchmove\n * touchend\n * mousedown\n * mousemove\n * mouseup <- this must come always after a \"touchstart\"\n *\n * Safari\n * touchstart\n * mousedown\n * touchmove\n * mousemove\n * touchend\n * mouseup <- this must come always after a \"touchstart\"\n */\n\n if (!isTheSameFingerId(e) || isMultipleTouches(e)) return\n\n pointerId = e.pointerId\n\n // it looks like it was a touch event!\n if (e.type !== 'mousedown')\n wasTouch = true\n\n // skip this event we don't need to track it now\n if (e.type === 'mousedown' && wasTouch) return\n\n var pointer = getPointerEvent(e)\n\n // caching the current x\n cachedX = currX = pointer.pageX\n // caching the current y\n cachedY = currY = pointer.pageY\n\n longtapTimer = setTimeout(function() {\n sendEvent(e.target, 'longtap', e)\n target = e.target\n }, defaults.longtapThreshold)\n\n // we will use these variables on the touchend events\n timestamp = getTimestamp()\n\n tapNum++\n\n },\n onTouchEnd = function(e) {\n if (!isTheSameFingerId(e) || isMultipleTouches(e)) return\n\n pointerId = undefined\n\n // skip the mouse events if previously a touch event was dispatched\n // and reset the touch flag\n if (e.type === 'mouseup' && wasTouch) {\n wasTouch = false\n return\n }\n\n var eventsArr = [],\n now = getTimestamp(),\n deltaY = cachedY - currY,\n deltaX = cachedX - currX\n\n // clear the previous timer if it was set\n clearTimeout(dblTapTimer)\n // kill the long tap timer\n clearTimeout(longtapTimer)\n\n if (deltaX <= -defaults.swipeThreshold)\n eventsArr.push('swiperight')\n\n if (deltaX >= defaults.swipeThreshold)\n eventsArr.push('swipeleft')\n\n if (deltaY <= -defaults.swipeThreshold)\n eventsArr.push('swipedown')\n\n if (deltaY >= defaults.swipeThreshold)\n eventsArr.push('swipeup')\n\n if (eventsArr.length) {\n for (var i = 0; i < eventsArr.length; i++) {\n var eventName = eventsArr[i]\n sendEvent(e.target, eventName, e, {\n distance: {\n x: Math.abs(deltaX),\n y: Math.abs(deltaY)\n }\n })\n }\n // reset the tap counter\n tapNum = 0\n } else {\n\n if (\n cachedX >= currX - defaults.tapPrecision &&\n cachedX <= currX + defaults.tapPrecision &&\n cachedY >= currY - defaults.tapPrecision &&\n cachedY <= currY + defaults.tapPrecision\n ) {\n if (timestamp + defaults.tapThreshold - now >= 0)\n {\n // Here you get the Tap event\n sendEvent(e.target, tapNum >= 2 && target === e.target ? 'dbltap' : 'tap', e)\n target= e.target\n }\n }\n\n // reset the tap counter\n dblTapTimer = setTimeout(function() {\n tapNum = 0\n }, defaults.dbltapThreshold)\n\n }\n },\n onTouchMove = function(e) {\n if (!isTheSameFingerId(e)) return\n // skip the mouse move events if the touch events were previously detected\n if (e.type === 'mousemove' && wasTouch) return\n\n var pointer = getPointerEvent(e)\n currX = pointer.pageX\n currY = pointer.pageY\n },\n tapNum = 0,\n pointerId, currX, currY, cachedX, cachedY, timestamp, target, dblTapTimer, longtapTimer\n\n //setting the events listeners\n // we need to debounce the callbacks because some devices multiple events are triggered at same time\n setListener(doc, touchevents.touchstart + (defaults.justTouchEvents ? '' : ' mousedown'), onTouchStart)\n setListener(doc, touchevents.touchend + (defaults.justTouchEvents ? '' : ' mouseup'), onTouchEnd)\n setListener(doc, touchevents.touchmove + (defaults.justTouchEvents ? '' : ' mousemove'), onTouchMove)\n\n // Configure the tocca default options at any time\n win.tocca = function(options) {\n for (var opt in options) {\n defaults[opt] = options[opt]\n }\n\n return defaults\n }\n})(document, window)\n","/* This is a fork of FooTable for Western & Southern public sites (westernsouthern.com). */\r\n/*\r\n* FooTable v3 - FooTable is a jQuery plugin that aims to make HTML tables on smaller devices look awesome.\r\n* @version 3.1.6\r\n* @link http://fooplugins.com\r\n* @copyright Steven Usher & Brad Vincent 2015\r\n* @license Released under the GPLv3 license.\r\n*/\r\n(function($, F){\r\n\t// add in console we use in case it's missing\r\n\twindow.console = window.console || { log:function(){}, error:function(){} };\r\n\r\n\t/**\r\n\t * The jQuery plugin initializer.\r\n\t * @function jQuery.fn.footable\r\n\t * @param {(object|FooTable.Defaults)} [options] - The options to initialize the plugin with.\r\n\t * @param {function} [ready] - A callback function to execute for each initialized plugin.\r\n\t * @returns {jQuery}\r\n\t */\r\n\t$.fn.footable = function (options, ready) {\r\n\t\toptions = options || {};\r\n\t\t// make sure we only work with tables\r\n\t\treturn this.filter('table').each(function (i, tbl) {\r\n\t\t\tF.init(tbl, options, ready);\r\n\t\t});\r\n\t};\r\n\r\n\tvar debug_defaults = {\r\n\t\tevents: []\r\n\t};\r\n\tF.__debug__ = JSON.parse(localStorage.getItem('footable_debug')) || false;\r\n\tF.__debug_options__ = JSON.parse(localStorage.getItem('footable_debug_options')) || debug_defaults;\r\n\r\n\t/**\r\n\t * Gets or sets the internal debug variable which enables some additional logging to the console.\r\n\t * When enabled this value is stored in the localStorage so it can persist across page reloads.\r\n\t * @param {boolean} value - Whether or not to enable additional logging.\r\n\t * @param {object} [options] - Any debug specific options.\r\n\t * @returns {(boolean|undefined)}\r\n\t */\r\n\tF.debug = function(value, options){\r\n\t\tif (!F.is.boolean(value)) return F.__debug__;\r\n\t\tF.__debug__ = value;\r\n\t\tif (F.__debug__){\r\n\t\t\tlocalStorage.setItem('footable_debug', JSON.stringify(F.__debug__));\r\n\t\t\tF.__debug_options__ = $.extend(true, {}, debug_defaults, options || {});\r\n\t\t\tif (F.is.hash(options)){\r\n\t\t\t\tlocalStorage.setItem('footable_debug_options', JSON.stringify(F.__debug_options__));\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tlocalStorage.removeItem('footable_debug');\r\n\t\t\tlocalStorage.removeItem('footable_debug_options');\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n\t * Gets the FooTable instance of the supplied table if one exists.\r\n\t * @param {(jQuery|jQuery.selector|HTMLTableElement)} table - The jQuery table object, selector or the HTMLTableElement to retrieve FooTable from.\r\n\t * @returns {(FooTable.Table|undefined)}\r\n\t */\r\n\tF.get = function(table){\r\n\t\treturn $(table).first().data('__FooTable__');\r\n\t};\r\n\r\n\t/**\r\n\t * Initializes a new instance of FooTable on the supplied table.\r\n\t * @param {(jQuery|jQuery.selector|HTMLTableElement)} table - The jQuery table object, selector or the HTMLTableElement to initialize FooTable on.\r\n\t * @param {object} options - The options to initialize FooTable with.\r\n\t * @param {function} [ready] - A callback function to execute once the plugin is initialized.\r\n\t * @returns {FooTable.Table}\r\n\t */\r\n\tF.init = function(table, options, ready){\r\n\t\tvar ft = F.get(table);\r\n\t\tif (ft instanceof F.Table) ft.destroy();\r\n\t\treturn new F.Table(table, options, ready);\r\n\t};\r\n\r\n\t/**\r\n\t * Gets the FooTable.Row instance for the supplied element.\r\n\t * @param {(jQuery|jQuery.selector|HTMLTableElement)} element - A jQuery object, selector or the HTMLElement of an element to retrieve the FooTable.Row for.\r\n\t * @returns {FooTable.Row}\r\n\t */\r\n\tF.getRow = function(element){\r\n\t\t// to get the FooTable.Row object simply walk up the DOM, find the TR and grab the __FooTableRow__ data value\r\n\t\tvar $row = $(element).closest('tr');\r\n\t\t// if this is a detail row get the previous row in the table to get the main TR element\r\n\t\tif ($row.hasClass('footable-detail-row')){\r\n\t\t\t$row = $row.prev();\r\n\t\t}\r\n\t\t// grab the row object\r\n\t\treturn $row.data('__FooTableRow__');\r\n\t};\r\n\r\n\t// The below are external type definitions mainly used as pointers to jQuery docs for important information\r\n\t/**\r\n\t * jQuery is a fast, small, and feature-rich JavaScript library. It makes things like HTML document traversal and manipulation, event handling, animation, and Ajax much simpler with an easy-to-use API\r\n\t * that works across a multitude of browsers. With a combination of versatility and extensibility, jQuery has changed the way that millions of people write JavaScript.\r\n\t * @name jQuery\r\n\t * @constructor\r\n\t * @returns {jQuery}\r\n\t * @see {@link http://api.jquery.com/}\r\n\t */\r\n\r\n\t/**\r\n\t * This object provides a subset of the methods of the Deferred object (then, done, fail, always, pipe, and state) to prevent users from changing the state of the Deferred.\r\n\t * @typedef {object} jQuery.Promise\r\n\t * @see {@link http://api.jquery.com/Types/#Promise}\r\n\t */\r\n\r\n\t/**\r\n\t * As of jQuery 1.5, the Deferred object provides a way to register multiple callbacks into self-managed callback queues, invoke callback queues as appropriate,\r\n\t * and relay the success or failure state of any synchronous or asynchronous function.\r\n\t * @typedef {object} jQuery.Deferred\r\n\t * @see {@link http://api.jquery.com/Types/#Deferred}\r\n\t */\r\n\r\n\t/**\r\n\t * jQuery's event system normalizes the event object according to W3C standards. The event object is guaranteed to be passed to the event handler. Most properties from\r\n\t * the original event are copied over and normalized to the new event object.\r\n\t * @typedef {object} jQuery.Event\r\n\t * @see {@link http://api.jquery.com/category/events/event-object/}\r\n\t */\r\n\r\n\t/**\r\n\t * Provides a way to execute callback functions based on one or more objects, usually Deferred objects that represent asynchronous events.\r\n\t * @memberof jQuery\r\n\t * @function when\r\n\t * @param {...jQuery.Deferred} deferreds - Any number of deferred objects to wait for.\r\n\t * @returns {jQuery.Promise}\r\n\t * @see {@link http://api.jquery.com/jQuery.when/}\r\n\t */\r\n\r\n\t/**\r\n\t * The jQuery.fn namespace used to register plugins with jQuery.\r\n\t * @memberof jQuery\r\n\t * @namespace fn\r\n\t * @see {@link http://learn.jquery.com/plugins/basic-plugin-creation/}\r\n\t */\r\n})(\r\n\tjQuery,\r\n\t/**\r\n\t * The core FooTable namespace containing all the plugin code.\r\n\t * @namespace\r\n\t */\r\n\tFooTable = window.FooTable || {}\r\n);\r\n(function(F){\r\n\tvar returnTrue = function(){ return true; };\r\n\r\n\t/**\r\n\t * This namespace contains commonly used array utility methods.\r\n\t * @namespace {object} FooTable.arr\r\n\t */\r\n\tF.arr = {};\r\n\r\n\t/**\r\n\t * Iterates over each item in the supplied array and performs the supplied function passing in the current item as the first argument.\r\n\t * @memberof FooTable.arr\r\n\t * @function each\r\n\t * @param {Array} array - The array to iterate\r\n\t * @param {function} func - The function to execute for each item. The first argument supplied to this function is the current item and the second is the current index.\r\n\t */\r\n\tF.arr.each = function (array, func) {\r\n\t\tif (!F.is.array(array) || !F.is.fn(func)) return;\r\n\t\tfor (var i = 0, len = array.length; i < len; i++) {\r\n\t\t\tif (func(array[i], i) === false) break;\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n\t * Get all items in the supplied array that optionally matches the supplied where function. If no items are found an empty array is returned.\r\n\t * @memberof FooTable.arr\r\n\t * @function get\r\n\t * @param {Array} array - The array to get items from.\r\n\t * @param {function} where - This function must return a boolean value, true includes the item in the result array.\r\n\t * @returns {Array}\r\n\t */\r\n\tF.arr.get = function (array, where) {\r\n\t\tvar result = [];\r\n\t\tif (!F.is.array(array)) return result;\r\n\t\tif (!F.is.fn(where)) return array;\r\n\t\tfor (var i = 0, len = array.length; i < len; i++) {\r\n\t\t\tif (where(array[i], i)) result.push(array[i]);\r\n\t\t}\r\n\t\treturn result;\r\n\t};\r\n\r\n\t/**\r\n\t * Get a boolean value indicating if any item exists in the supplied array that optionally matches the supplied where function.\r\n\t * @memberof FooTable.arr\r\n\t * @function any\r\n\t * @param {Array} array - The array to check.\r\n\t * @param {function} [where] - [Optional] This function must return a boolean value, true indicates that the current item is a valid match.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.arr.any = function (array, where) {\r\n\t\tif (!F.is.array(array)) return false;\r\n\t\twhere = F.is.fn(where) ? where : returnTrue;\r\n\t\tfor (var i = 0, len = array.length; i < len; i++) {\r\n\t\t\tif (where(array[i], i)) return true;\r\n\t\t}\r\n\t\treturn false;\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the supplied value exists in the array.\r\n\t * @memberof FooTable.arr\r\n\t * @function contains\r\n\t * @param {Array} array - The array to check.\r\n\t * @param {*} value - The value to check for.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.arr.contains = function(array, value){\r\n\t\tif (!F.is.array(array) || F.is.undef(value)) return false;\r\n\t\tfor (var i = 0, len = array.length; i < len; i++) {\r\n\t\t\tif (array[i] == value) return true;\r\n\t\t}\r\n\t\treturn false;\r\n\t};\r\n\r\n\t/**\r\n\t * Get the first item in the supplied array that optionally matches the supplied where function. If no item is found null is returned.\r\n\t * @memberof FooTable.arr\r\n\t * @function first\r\n\t * @param {Array} array - The array to get the item from.\r\n\t * @param {function} [where] - [Optional] This function must return a boolean value, true indicates that the current item can be returned.\r\n\t * @returns {(*|null)}\r\n\t */\r\n\tF.arr.first = function (array, where) {\r\n\t\tif (!F.is.array(array)) return null;\r\n\t\twhere = F.is.fn(where) ? where : returnTrue;\r\n\t\tfor (var i = 0, len = array.length; i < len; i++) {\r\n\t\t\tif (where(array[i], i)) return array[i];\r\n\t\t}\r\n\t\treturn null;\r\n\t};\r\n\r\n\t/**\r\n\t * Creates a new array from the results of the supplied getter function. If no items are found an empty array is returned, to exclude an item from the results return null.\r\n\t * @memberof FooTable.arr\r\n\t * @function map\r\n\t * @param {Array} array - The array to iterate.\r\n\t * @param {function} getter - This function must return either a new value or null.\r\n\t * The first argument is the result being returned at this point in the iteration. The second argument is the current item being iterated.\r\n\t * @returns {(*|null)}\r\n\t */\r\n\tF.arr.map = function (array, getter) {\r\n\t\tvar result = [], returned = null;\r\n\t\tif (!F.is.array(array) || !F.is.fn(getter)) return result;\r\n\t\tfor (var i = 0, len = array.length; i < len; i++) {\r\n\t\t\tif ((returned = getter(array[i], i)) != null) result.push(returned);\r\n\t\t}\r\n\t\treturn result;\r\n\t};\r\n\r\n\t/**\r\n\t * Removes items from the array matching the supplied where function. All removed items are returned in a new array.\r\n\t * @memberof FooTable.arr\r\n\t * @function remove\r\n\t * @param {Array} array - The array to iterate and remove items from.\r\n\t * @param {function} where - This function must return a boolean value, true includes the item in the result array.\r\n\t * @returns {*}\r\n\t */\r\n\tF.arr.remove = function (array, where) {\r\n\t\tvar remove = [], removed = [];\r\n\t\tif (!F.is.array(array) || !F.is.fn(where)) return removed;\r\n\t\tvar i = 0, len = array.length;\r\n\t\tfor (; i < len; i++) {\r\n\t\t\tif (where(array[i], i, removed)){\r\n\t\t\t\tremove.push(i);\r\n\t\t\t\tremoved.push(array[i]);\r\n\t\t\t}\r\n\t\t}\r\n\t\t// sort the indexes to be removed from largest to smallest\r\n\t\tremove.sort(function(a, b){ return b - a; });\r\n\t\ti = 0; len = remove.length;\r\n\t\tfor(; i < len; i++){\r\n\t\t\tvar index = remove[i] - i;\r\n\t\t\tarray.splice(index, 1);\r\n\t\t}\r\n\t\treturn removed;\r\n\t};\r\n\r\n\t/**\r\n\t * Deletes a single item from the array. The item if removed is returned.\r\n\t * @memberof FooTable.arr\r\n\t * @function delete\r\n\t * @param {Array} array - The array to iterate and delete the item from.\r\n\t * @param {*} item - The item to find and delete.\r\n\t * @returns {(*|null)}\r\n\t */\r\n\tF.arr.delete = function(array, item){\r\n\t\tvar remove = -1, removed = null;\r\n\t\tif (!F.is.array(array) || F.is.undef(item)) return removed;\r\n\t\tvar i = 0, len = array.length;\r\n\t\tfor (; i < len; i++) {\r\n\t\t\tif (array[i] == item){\r\n\t\t\t\tremove = i;\r\n\t\t\t\tremoved = array[i];\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\t\tif (remove != -1) array.splice(remove, 1);\r\n\t\treturn removed;\r\n\t};\r\n\r\n\t/**\r\n\t * Replaces a single item in the array with a new one.\r\n\t * @memberof FooTable.arr\r\n\t * @function replace\r\n\t * @param {Array} array - The array to iterate and replace the item in.\r\n\t * @param {*} oldItem - The item to be replaced.\r\n\t * @param {*} newItem - The item to be inserted.\r\n\t */\r\n\tF.arr.replace = function(array, oldItem, newItem){\r\n\t\tvar index = array.indexOf(oldItem);\r\n\t\tif (index !== -1) array[index] = newItem;\r\n\t};\r\n\r\n})(FooTable);\r\n(function (F) {\r\n\r\n\t/**\r\n\t * This namespace contains commonly used 'is' type methods that return boolean values.\r\n\t * @namespace FooTable.is\r\n\t */\r\n\tF.is = {};\r\n\r\n\t/**\r\n\t * Checks if the type of the value is the same as that supplied.\r\n\t * @memberof FooTable.is\r\n\t * @function type\r\n\t * @param {*} value - The value to check the type of.\r\n\t * @param {string} type - The type to check for.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.type = function (value, type) {\r\n\t\treturn typeof value === type;\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the value is defined.\r\n\t * @memberof FooTable.is\r\n\t * @function defined\r\n\t * @param {*} value - The value to check is defined.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.defined = function (value) {\r\n\t\treturn typeof value !== 'undefined';\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the value is undefined.\r\n\t * @memberof FooTable.is\r\n\t * @function undef\r\n\t * @param {*} value - The value to check is undefined.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.undef = function (value) {\r\n\t\treturn typeof value === 'undefined';\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the value is an array.\r\n\t * @memberof FooTable.is\r\n\t * @function array\r\n\t * @param {*} value - The value to check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.array = function (value) {\r\n\t\treturn '[object Array]' === Object.prototype.toString.call(value);\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the value is a date.\r\n\t * @memberof FooTable.is\r\n\t * @function date\r\n\t * @param {*} value - The value to check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.date = function (value) {\r\n\t\treturn '[object Date]' === Object.prototype.toString.call(value) && !isNaN(value.getTime());\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the value is a boolean.\r\n\t * @memberof FooTable.is\r\n\t * @function boolean\r\n\t * @param {*} value - The value to check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.boolean = function (value) {\r\n\t\treturn '[object Boolean]' === Object.prototype.toString.call(value);\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the value is a string.\r\n\t * @memberof FooTable.is\r\n\t * @function string\r\n\t * @param {*} value - The value to check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.string = function (value) {\r\n\t\treturn '[object String]' === Object.prototype.toString.call(value);\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the value is a number.\r\n\t * @memberof FooTable.is\r\n\t * @function number\r\n\t * @param {*} value - The value to check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.number = function (value) {\r\n\t\treturn '[object Number]' === Object.prototype.toString.call(value) && !isNaN(value);\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the value is a function.\r\n\t * @memberof FooTable.is\r\n\t * @function fn\r\n\t * @param {*} value - The value to check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.fn = function (value) {\r\n\t\treturn (F.is.defined(window) && value === window.alert) || '[object Function]' === Object.prototype.toString.call(value);\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the value is an error.\r\n\t * @memberof FooTable.is\r\n\t * @function error\r\n\t * @param {*} value - The value to check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.error = function (value) {\r\n\t\treturn '[object Error]' === Object.prototype.toString.call(value);\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the value is an object.\r\n\t * @memberof FooTable.is\r\n\t * @function object\r\n\t * @param {*} value - The value to check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.object = function (value) {\r\n\t\treturn '[object Object]' === Object.prototype.toString.call(value);\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the value is a hash.\r\n\t * @memberof FooTable.is\r\n\t * @function hash\r\n\t * @param {*} value - The value to check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.hash = function (value) {\r\n\t\treturn F.is.object(value) && value.constructor === Object && !value.nodeType && !value.setInterval;\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the supplied object is an HTMLElement\r\n\t * @memberof FooTable.is\r\n\t * @function element\r\n\t * @param {object} obj - The object to check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.element = function (obj) {\r\n\t\treturn typeof HTMLElement === 'object'\r\n\t\t\t? obj instanceof HTMLElement\r\n\t\t\t: obj && typeof obj === 'object' && obj !== null && obj.nodeType === 1 && typeof obj.nodeName === 'string';\r\n\t};\r\n\r\n\t/**\r\n\t * This is a simple check to determine if an object is a jQuery promise object. It simply checks the object has a \"then\" and \"promise\" function defined.\r\n\t * The promise object is created as an object literal inside of jQuery.Deferred.\r\n\t * It has no prototype, nor any other truly unique properties that could be used to distinguish it.\r\n\t * This method should be a little more accurate than the internal jQuery one that simply checks for a \"promise\" method.\r\n\t * @memberof FooTable.is\r\n\t * @function promise\r\n\t * @param {object} obj - The object to check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.promise = function(obj){\r\n\t\treturn F.is.object(obj) && F.is.fn(obj.then) && F.is.fn(obj.promise);\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the supplied object is an instance of a jQuery object.\r\n\t * @memberof FooTable.is\r\n\t * @function jq\r\n\t * @param {object} obj - The object to check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.jq = function(obj){\r\n\t\treturn F.is.defined(window.jQuery) && obj instanceof jQuery && obj.length > 0;\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the supplied object is a moment.js date object.\r\n\t * @memberof FooTable.is\r\n\t * @function moment\r\n\t * @param {object} obj - The object to check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.moment = function(obj){\r\n\t\treturn F.is.defined(window.moment) && F.is.object(obj) && F.is.boolean(obj._isAMomentObject)\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the supplied value is an object and if it is empty.\r\n\t * @memberof FooTable.is\r\n\t * @function emptyObject\r\n\t * @param {*} value - The value to check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.emptyObject = function(value){\r\n\t\tif (!F.is.hash(value)) return false;\r\n\t\tfor(var prop in value) {\r\n\t\t\tif(value.hasOwnProperty(prop))\r\n\t\t\t\treturn false;\r\n\t\t}\r\n\t\treturn true;\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the supplied value is an array and if it is empty.\r\n\t * @memberof FooTable.is\r\n\t * @function emptyArray\r\n\t * @param {*} value - The value to check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.emptyArray = function(value){\r\n\t\treturn F.is.array(value) ? value.length === 0 : true;\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the supplied value is a string and if it is empty.\r\n\t * @memberof FooTable.is\r\n\t * @function emptyString\r\n\t * @param {*} value - The value to check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.is.emptyString = function(value){\r\n\t\treturn F.is.string(value) ? value.length === 0 : true;\r\n\t};\r\n\r\n})(FooTable);\r\n(function (F) {\r\n\t/**\r\n\t * This namespace contains commonly used string utility methods.\r\n\t * @namespace FooTable.str\r\n\t */\r\n\tF.str = {};\r\n\r\n\t/**\r\n\t * Checks if the supplied string contains the given substring.\r\n\t * @memberof FooTable.str\r\n\t * @function contains\r\n\t * @param {string} str - The string to check.\r\n\t * @param {string} contains - The string to check for.\r\n\t * @param {boolean} [ignoreCase=false] - Whether or not to ignore casing when performing the check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.str.contains = function (str, contains, ignoreCase) {\r\n\t\tif (F.is.emptyString(str) || F.is.emptyString(contains)) return false;\r\n\t\treturn contains.length <= str.length\r\n\t\t\t&& (ignoreCase ? str.toUpperCase().indexOf(contains.toUpperCase()) : str.indexOf(contains)) !== -1;\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the supplied string contains the exact given substring.\r\n\t * @memberof FooTable.str\r\n\t * @function contains\r\n\t * @param {string} str - The string to check.\r\n\t * @param {string} contains - The string to check for.\r\n\t * @param {boolean} [ignoreCase=false] - Whether or not to ignore casing when performing the check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.str.containsExact = function (str, contains, ignoreCase) {\r\n\t\tif (F.is.emptyString(str) || F.is.emptyString(contains) || contains.length > str.length) return false;\r\n\t\treturn new RegExp('\\\\b'+ F.str.escapeRegExp(contains)+'\\\\b', ignoreCase ? 'i' : '').test(str);\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if the supplied string contains the given word.\r\n\t * @memberof FooTable.str\r\n\t * @function containsWord\r\n\t * @param {string} str - The string to check.\r\n\t * @param {string} word - The word to check for.\r\n\t * @param {boolean} [ignoreCase=false] - Whether or not to ignore casing when performing the check.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.str.containsWord = function(str, word, ignoreCase){\r\n\t\tif (F.is.emptyString(str) || F.is.emptyString(word) || str.length < word.length)\r\n\t\t\treturn false;\r\n\t\tvar parts = str.split(/\\W/);\r\n\t\tfor (var i = 0, len = parts.length; i < len; i++){\r\n\t\t\tif (ignoreCase ? parts[i].toUpperCase() == word.toUpperCase() : parts[i] == word) return true;\r\n\t\t}\r\n\t\treturn false;\r\n\t};\r\n\r\n\t/**\r\n\t * Returns the remainder of a string split on the first index of the given substring.\r\n\t * @memberof FooTable.str\r\n\t * @function from\r\n\t * @param {string} str - The string to split.\r\n\t * @param {string} from - The substring to split on.\r\n\t * @returns {string}\r\n\t */\r\n\tF.str.from = function (str, from) {\r\n\t\tif (F.is.emptyString(str)) return str;\r\n\t\treturn F.str.contains(str, from) ? str.substring(str.indexOf(from) + 1) : str;\r\n\t};\r\n\r\n\t/**\r\n\t * Checks if a string starts with the supplied prefix.\r\n\t * @memberof FooTable.str\r\n\t * @function startsWith\r\n\t * @param {string} str - The string to check.\r\n\t * @param {string} prefix - The prefix to check for.\r\n\t * @returns {boolean}\r\n\t */\r\n\tF.str.startsWith = function (str, prefix) {\r\n\t\tif (F.is.emptyString(str)) return str == prefix;\r\n\t\treturn str.slice(0, prefix.length) == prefix;\r\n\t};\r\n\r\n\t/**\r\n\t * Takes the supplied string and converts it to camel case.\r\n\t * @memberof FooTable.str\r\n\t * @function toCamelCase\r\n\t * @param {string} str - The string to camel case.\r\n\t * @returns {string}\r\n\t */\r\n\tF.str.toCamelCase = function (str) {\r\n\t\tif (F.is.emptyString(str)) return str;\r\n\t\tif (str.toUpperCase() === str) return str.toLowerCase();\r\n\t\treturn str.replace(/^([A-Z])|[-\\s_](\\w)/g, function (match, p1, p2) {\r\n\t\t\tif (F.is.string(p2)) return p2.toUpperCase();\r\n\t\t\treturn p1.toLowerCase();\r\n\t\t});\r\n\t};\r\n\r\n\t/**\r\n\t * Generates a random string 9 characters long using the optional prefix if supplied.\r\n\t * @memberof FooTable.str\r\n\t * @function random\r\n\t * @param {string} [prefix] - The prefix to append to the 9 random characters.\r\n\t * @returns {string}\r\n\t */\r\n\tF.str.random = function(prefix){\r\n\t\tprefix = F.is.emptyString(prefix) ? '' : prefix;\r\n\t\treturn prefix + Math.random().toString(36).substr(2, 9);\r\n\t};\r\n\r\n\t/**\r\n\t * Escapes a string for use in a regular expression.\r\n\t * @memberof FooTable.str\r\n\t * @function escapeRegExp\r\n\t * @param {string} str - The string to escape.\r\n\t * @returns {string}\r\n\t */\r\n\tF.str.escapeRegExp = function(str){\r\n\t\tif (F.is.emptyString(str)) return str;\r\n\t\treturn str.replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\r\n\t};\r\n\r\n})(FooTable);\r\n(function (F) {\r\n\t\"use strict\";\r\n\r\n\tif (!Object.create) {\r\n\t\tObject.create = (function () {\r\n\t\t\tvar Object = function () {};\r\n\t\t\treturn function (prototype) {\r\n\t\t\t\tif (arguments.length > 1)\r\n\t\t\t\t\tthrow Error('Second argument not supported');\r\n\r\n\t\t\t\tif (!F.is.object(prototype))\r\n\t\t\t\t\tthrow TypeError('Argument must be an object');\r\n\r\n\t\t\t\tObject.prototype = prototype;\r\n\t\t\t\tvar result = new Object();\r\n\t\t\t\tObject.prototype = null;\r\n\t\t\t\treturn result;\r\n\t\t\t};\r\n\t\t})();\r\n\t}\r\n\r\n\t/**\r\n\t * This base implementation does nothing except provide access to the {@link FooTable.Class#extend} method.\r\n\t * @constructs FooTable.Class\r\n\t * @classdesc This class is based off of John Resig's [Simple JavaScript Inheritance]{@link http://ejohn.org/blog/simple-javascript-inheritance} but it has been updated to be ES 5.1\r\n\t * compatible by implementing an [Object.create polyfill]{@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/create#Polyfill}\r\n\t * for older browsers.\r\n\t * @see {@link http://ejohn.org/blog/simple-javascript-inheritance}\r\n\t * @see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/create#Polyfill}\r\n\t * @returns {FooTable.Class}\r\n\t */\r\n\tfunction Class() {}\r\n\r\n\tvar __extendable__ = /xyz/.test(function () {xyz;}) ? /\\b_super\\b/ : /.*/;\r\n\r\n\t// this._super() within the context of the new function is a pointer to the original function\r\n\t// except if the hook param is specified then the this._super variable is the result of the original function\r\n\tClass.__extend__ = function(proto, name, func, original){\r\n\t\t// to all who venture here, here be dragons!\r\n\t\tproto[name] = F.is.fn(original) && __extendable__.test(func) ?\r\n\t\t\t(function (name, fn) {\r\n\t\t\t\treturn function () {\r\n\t\t\t\t\tvar tmp, ret;\r\n\t\t\t\t\ttmp = this._super;\r\n\t\t\t\t\tthis._super = original;\r\n\t\t\t\t\tret = fn.apply(this, arguments);\r\n\t\t\t\t\tthis._super = tmp;\r\n\t\t\t\t\treturn ret;\r\n\t\t\t\t};\r\n\t\t\t})(name, func) : func;\r\n\t};\r\n\r\n\t/**\r\n\t * Creates a new class that inherits from this class which in turn allows itself to be extended or if a name and function is supplied extends only that specific function on the class.\r\n\t * @param {(object|string)} arg1 - An object containing any new methods/members to implement or the name of the method to extend.\r\n\t * @param {function} arg2 - If the first argument is a method name then this is the new function to replace it with.\r\n\t * @returns {FooTable.Class} A new class that inherits from the base class.\r\n\t * @example