{"version":3,"sources":["slx.core.min.js"],"names":["x","slx","scriptpath","version","fn","extend","slxUniqueId","this","prop","attr","slxGuid","segment","slxControl","control","target","length","data","p","startsWith","isSlxControl","stopBubble","e","stopPropagation","cancelBubble","jqFocus","oFocus","focus","jqVal","val","jqText","text","getSelectionRange","el","selectionStart","start","end","selectionEnd","setSelectionRange","createTextRange","r","moveStart","moveEnd","select","v1","v2","ctrl","value","apply","arguments","aria","arr","Array","a","attributes","i","substring","push","htmlEncode","replaceAll","html","jqCamelCase","camelCase","isArr","isArray","obj","substr","toLowerCase","base","that","find","_element","toString","constructor","name","_guids","Guid","_part","Math","random","_guid","split","findIndex","g","window","SlxControl","$"],"mappings":"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","file":"slx.core.min.js","sourcesContent":["/*!\r\n * slxControls v1.2.0 (http://selerix.com)\r\n * Copyright 2017 Selerix Systems, Inc. All Rights Reserved.\r\n * This is unpublished proprietary source code of Selerix, Inc. The\r\n * copyright notice above does not evidence any actual or intended\r\n * publication of such source code.\r\n *\r\n * Dependencies: jQuery v1.10+, Bootstrap v3.2+, SlxPolyfills\r\n */\r\n(function (x) {\r\n\t'use strict';\r\n\r\n\t/*\r\n\t * slx.core\r\n\t * Required for all slxControls.\r\n\t * Every control should implement a \"value\" and/or \"text\" function as needed.\r\n\t */\r\n\tif (x.slx) { return; }\r\n\tx.slx = x.slx || { scriptpath: '', version: '1.2.0' };\r\n\r\n\tx.fn.extend({\r\n\t\tslxUniqueId: function () {\r\n\t\t\treturn this.prop('id') || this.attr('id', 'slx' + x.slxGuid().segment(4)).prop('id');\r\n\t\t},\r\n\t\tslxControl: function (control) {\r\n\t\t\tvar slx = null, target = this;\r\n\t\t\tif (this.length > 0 && this.data('target')) { target = x(this.data('target')); }\r\n\t\t\tif (target.length > 0) {\r\n\t\t\t\tif (control !== void 0 && target[0][control] !== void 0) { slx = target[0][control]; }\r\n\t\t\t\telse if (control === void 0) {\r\n\t\t\t\t\tfor (var p in target[0]) {\r\n\t\t\t\t\t\tif (!p.startsWith('slx')) { continue; }\r\n\t\t\t\t\t\tslx = target[0][p];\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn slx;\r\n\t\t},\r\n\t\tisSlxControl: function () { return this.length ? this[0].isSlxControl !== void 0 : false; },\r\n\t\tstopBubble: function (e) {\r\n\t\t\tif (e.stopPropagation) { e.stopPropagation(); }\r\n\t\t\telse { e.cancelBubble = true; }\r\n\t\t},\r\n\t\tjqFocus: x.fn.oFocus || x.fn.focus,\r\n\t\tjqVal: x.fn.val,\r\n\t\tjqText: x.fn.text,\r\n\t\tgetSelectionRange: function() {\r\n\t\t\tif (this.length === 0) { return null; }\r\n\t\t\tvar el = this[0];\r\n\t\t\tif (el.selectionStart !== void 0) { return { start: el.selectionStart, end: el.selectionEnd }; } \r\n\t\t\treturn null;\r\n\t\t},\r\n\t\tsetSelectionRange: function (start, end) {\r\n\t\t\tif (this.length === 0) { return; }\r\n\t\t\tvar el = this[0];\r\n\t\t\tif (el.createTextRange !== void 0) {\r\n\t\t\t\tvar r = el.createTextRange();\r\n\t\t\t\tr.moveStart('character', start);\r\n\t\t\t\tr.moveEnd('character', end);\r\n\t\t\t\tr.select();\r\n\t\t\t} else if (el.selectionStart !== void 0) {\r\n\t\t\t\tel.focus();\r\n\t\t\t\tel.setSelectionRange(start, end);\r\n\t\t\t} else { el.focus(); }\r\n\t\t}\r\n\t});\r\n\tx.fn.val = function (v1, v2) {\r\n\t\tvar ctrl = this.isSlxControl() ? this.slxControl() : null;\r\n\t\tif (v1 !== void 0) {\r\n\t\t\tif (ctrl !== null) { ctrl.value.apply(ctrl, arguments); return this; }\r\n\t\t\telse { return this.jqVal(v1); }\r\n\t\t} else {\r\n\t\t\tif (ctrl !== null) { return ctrl.value(); }\r\n\t\t\telse { return this.jqVal(); }\r\n\t\t}\r\n\t};\r\n\tx.fn.text = function (v1, v2) {\r\n\t\tvar ctrl = this.isSlxControl() ? this.slxControl() : null;\r\n\t\tif (v1 !== void 0) {\r\n\t\t\tif (ctrl !== null) { ctrl.text.apply(ctrl, arguments); return this; }\r\n\t\t\telse { return this.jqText(v1); }\r\n\t\t} else {\r\n\t\t\tif (ctrl !== null) { return ctrl.text(); }\r\n\t\t\telse { return this.jqText(); }\r\n\t\t}\r\n\t};\r\n\tif (!x.fn.aria) {\r\n\t\tx.fn.extend({\r\n\t\t\taria: function () {\r\n\t\t\t\tif (arguments.length === 0) {\r\n\t\t\t\t\tvar arr = new Array();\r\n\t\t\t\t\tif (this.length === 0) { return arr; }\r\n\t\t\t\t\tfor (var a in this[0].attributes) {\r\n\t\t\t\t\t\tif (a.startsWith('aria')) { continue; }\r\n\t\t\t\t\t\tvar i = {};\r\n\t\t\t\t\t\ti[a.substring(5)] = this[0].arguments[a];\r\n\t\t\t\t\t\tarr.push(i);\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn arr;\r\n\t\t\t\t} else if (arguments.length === 1) {\r\n\t\t\t\t\treturn this.attr('aria-' + arguments[0]);\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn this.attr('aria-' + arguments[0], arguments[1]);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\tx.extend({\r\n\t\thtmlEncode: function (a) {\r\n\t\t\tif (a === void 0 || a === null) { return ''; }\r\n\t\t\treturn x('').jqText(a.replaceAll('<', '‹').replaceAll('>', '›')).html();\r\n\t\t},\r\n\t\tjqCamelCase: x.camelCase\r\n\t});\r\n\tx.camelCase = function (a) {\r\n\t\tif (a === null || a === void 0) { return null; }\r\n\t\tif (typeof a === 'string') { return x.jqCamelCase(a); }\r\n\t\t\r\n\t\tvar isArr = Array.isArray(a), isObj = typeof a === 'object';\r\n\t\tif (!isArr && !isObj) { return a; }\r\n\t\t\r\n\t\tif (isArr) {\r\n\t\t\tvar arr = new Array();\r\n\t\t\tfor (var i = 0; i < a.length; i++) { arr.push(x.camelCase(a[i])); }\r\n\t\t\treturn arr;\r\n\t\t}\r\n\r\n\t\tvar obj = {};\r\n\t\tfor (var p in a) {\r\n\t\t\tvar prop = x.jqCamelCase(p);\r\n\t\t\tprop = prop.substr(0, 1).toLowerCase() + prop.substr(1);\r\n\t\t\tobj[prop] = Array.isArray(a[p]) || typeof a[p] === 'object' ? x.camelCase(a[p]) : a[p];\r\n\t\t}\r\n\t\treturn obj;\r\n\t};\r\n\r\n\t/*\r\n\t * slx.base\r\n\t * This is the base level object for all slxControls.\r\n\t */\r\n\tx.slx.base = function base(el) {\r\n\t\tvar that = this;\r\n\r\n\t\tif (el === void 0) { return this; }\r\n\t\tif (el.data('target')) {\r\n\t\t\tel = el.find(el.data('target'));\r\n\t\t\tif (el.length === 0) { return el; }\r\n\t\t}\r\n\r\n\t\tthat._element = el;\r\n\t\tthat.toString = function () { return '[' + that.constructor.name + ']'; };\r\n\t\tx.extend(that, arguments.length === 2 && typeof arguments[1] !== 'string' ? arguments[1][0] || arguments[1] : {});\r\n\t};\r\n\r\n\tvar _guids = new Array();\r\n\tx.slxGuid = function () { return new Guid(); };\r\n\t\r\n\tvar Guid = function () {\r\n\t\tvar _part = function () { return ((1 + Math.random()) * 0x10000 | 0).toString(16).substring(1); };\r\n\t\tvar _guid = (_part() + _part() + '-' + _part() + '-4' + _part().substr(0, 3) + '-' + _part() + '-' + _part() + _part() + _part()).toLowerCase();\r\n\r\n\t\tvar that = this;\r\n\t\tthat.toString = function () { return _guid; };\r\n\t\tthat.segment = function (i) { return _guid.split('-')[i]; };\r\n\r\n\t\tif (_guids.findIndex(function (g) { return g.split('-')[4] === that.segment(4); }) > -1) { return new Guid(); }\r\n\r\n\t\t_guids.push(_guid);\r\n\t};\r\n\r\n\treturn window.SlxControl = x;\r\n})(window.$ || function() {});"]}