UNPKG

igniteui-angularjs

Version:

A packaged version of IgniteUI directives for AngularJS

3 lines (2 loc) 12.4 kB
/*! igniteui-angularjs 10-11-2017 */ !function(t,e){"use strict";function i(t,e,i){t.$$watchers[0][e]=i.id||e+t.$$watchers.length}function a(t){return"[object Date]"===Object.prototype.toString.call(t)}function n(t){return"[object RegExp]"===Object.prototype.toString.call(t)}function r(t){return t&&t.$evalAsync&&t.$watch}function o(t){return t&&t.document&&t.location&&t.alert&&t.setInterval}function g(t){return"function"==typeof t}function l(t){return"[object Array]"===Object.prototype.toString.call(t)}function u(t,e,i){if(t===e)return!0;if(null===t||null===e)return!1;if(t!==t&&e!==e)return!0;var d,c,s,f,h=typeof t,p=!1,m=[];if(h===typeof e&&"object"===h){if(!l(t)){if(a(t))return a(e)&&t.getTime()===e.getTime();if(n(t)&&n(e))return t.toString()===e.toString();if(r(t)||r(e)||o(t)||o(e)||l(e))return!1;s={},l(i)||(p=!0);for(c in t)"$"===c.charAt(0)||g(t[c])||(u(t[c],e[c])||(f=!0,p||i.push({key:c,oldVal:e[c],newVal:t[c]})),s[c]=!0);for(c in e)if(!s.hasOwnProperty(c)&&"$"!==c.charAt(0)&&void 0!==e[c]&&!g(e[c]))return!1;return!f}if(!l(e))return!1;if((d=t.length)===e.length){for(l(i)||(p=!0),c=0;c<d;c++)u(t[c],e[c],m)||(f=!0,p||i.push({index:c,txlog:m})),m=[];return!f}}return!1}function d(t,e){var i=t.data("igGridRowSelectors"),a=t.data("igGridPaging"),n=t.data("igGridSummaries");i&&"function"==typeof i._rowAdded&&i._rowAdded(e),a&&"function"==typeof a._rowAdded&&a._rowAdded(e),n&&"function"==typeof n._rowAdded&&n._rowAdded(e),t.data("igGrid")._fireInternalEvent("_internalRowAdded",{row:e})}function c(t,e,i){var a=t.data("igGridSelection"),n=t.data("igGridPaging"),r=t.data("igGridSummaries");a&&"function"==typeof a._rowDeleted&&a._rowDeleted(e,i),r&&"function"==typeof r._rowDeleted&&r._rowDeleted(e,i),n&&"function"==typeof n._rowDeleted&&n._rowDeleted(e,i),t.data("igGrid")._fireInternalEvent("_internalRowDeleted",{rowID:e,row:i})}function s(t){return t.replace(/-([a-z])/g,function(t){return t[1].toUpperCase()})}function f(t,i){var a;for(a in t)if(t.hasOwnProperty(a)){if(a===i)return e.type(t[a]);"object"!==e.type(t[a])&&"array"!==e.type(t[a])||f(t[a],i)}return null}function h(t,i,a,n,r){var o,g,l,u,d=i.children,c=i.attributes;for(o=0;o<c.length;o++)g=c[o].name,l=c[o].value,g.startsWith("event-")&&(g=g.substr("event-".length),l=r.$eval(l)||l),g=s(g),("true"===l||"false"===l||/^-?\d+\.?\d*$/.test(l)||/^{{[^}]+}}$/.test(l))&&(l=r.$eval(l.replace(/([{}:])\1/g,""))),a[g]=l;for(o=0;o<d.length;o++)if(i.optionsPath||(i.optionsPath=[]),"content"!==(u=d[o].nodeName.toLowerCase())){u=s(u);var p=e.ui[t].prototype.options;"features"===i.optionsPath[0]&&a.name&&(p=e.ui[t.replace("Hierarchical","")+a.name].prototype.options,i.optionsPath=[]);for(var m=0;m<i.optionsPath.length;m++)p[i.optionsPath[m]]&&"columnLayouts"!==i.optionsPath[m]&&(p=p[i.optionsPath[m]]);if(d[o].childElementCount>0){var v;v=d[o].hasAttributes()||"object"===f(p,u)?{}:[],"array"===e.type(a)?(a.push(v),d[o].optionsPath=i.optionsPath,h(t,d[o],a[a.length-1],n,r)):(a[u]=v,d[o].optionsPath=i.optionsPath.concat(u),h(t,d[o],a[u],n,r))}else i.hasAttributes()||"array"!==e.type(a)?d[o].nextSibling&&""!==d[o].nextSibling.textContent.trim()?a[u]=d[o].nextSibling.textContent.trim():(a[u]={},h(t,d[o],a[u],n,r)):d[o].nextSibling&&""!==d[o].nextSibling.textContent.trim()?a.push(d[o].nextSibling.textContent.trim()):(a.push({}),h(t,d[o],a[a.length-1],n,r))}return a}function p(t){return e(t).html()}e.ig=e.ig||{},e.ig.angular=e.ig.angular||{},e.ig.angular.igCombo=e.ig.angular.igCombo||{},e.ig.angular.igCombo.element=e.ig.angular.igCombo.element||"<div></div>",e.ig.angular.igCombo.events=["igcombofiltered","igcomboselectionchanged","igcombotextchanged"],e.ig.angular.igCombo.bindEvents=e.ig.angular.igCombo.bindEvents||function(a,n,r,o){function g(t,e){return t.values?t.values(e):t.value(e)}function l(t){var e=n.data(c),i=e.options.multiSelection;return d=t,"string"==typeof t&&i&&i.enabled&&(t=t.split(i.itemSeparator)),g(e,t),e.text()}if(o){var u,d,c=r["data-ig-control-name"];n.on(e.ig.angular.igCombo.events.join(" "),function(t,e){a.$apply(function(){o.$setViewValue(g(e.owner))})}).on("click","div.ui-igcombo-clear",function(){a.$apply(function(){o.$setViewValue([])})}).one("$destroy",function(){u();var t=e.inArray(l,o.$formatters);t>=0&&o.$formatters.splice(t,1)}),o.$formatters.push(l),o.$parsers.push(function(){var t=n.data(c);return t.options.allowCustomValue&&void 0!==t.refreshValue&&t.refreshValue(),g(t)}),u=a.$watch(r.source,function(e){var i=[],a=[],r=n.data(c);i=g(r),t.copy(e,a),r._setOption("dataSource",a),i=0!==i.length?i:d,r.value(i)},!0),i(a,c,r)}},e.ig.angular.igEditor=e.ig.angular.igEditor||{},e.ig.angular.igEditor.element=e.ig.angular.igEditor.element||"<input></input>",e.ig.angular.igEditor.events=[],e.ig.angular.igEditor.bindEvents=e.ig.angular.igEditor.bindEvents||function(t,i,a,n){function r(t){var e=i.data(o),a=e.displayValue||e.text||e.value;return e.value(t),a.call(e)}if(n){var o=a["data-ig-control-name"];o&&(e.ig.angular[o].events=[o.toLowerCase()+"valuechanged"],i.on(e.ig.angular[o].events.join(" "),function(e,i){t.$apply(function(){n.$$lastCommittedViewValue=null,n.$setViewValue(i.owner.value())})}).one("$destroy",function(){var t=e.inArray(r,n.$formatters);t>=0&&n.$formatters.splice(t,1)}),n.$formatters.push(r),n.$parsers.push(function(){return i.data(o).value()}))}},e.ig.angular.igCurrencyEditor=t.extend(e.ig.angular.igCurrencyEditor||{},e.ig.angular.igEditor),e.ig.angular.igDateEditor=t.extend(e.ig.angular.igDateEditor||{},e.ig.angular.igEditor),e.ig.angular.igMaskEditor=t.extend(e.ig.angular.igMaskEditor||{},e.ig.angular.igEditor),e.ig.angular.igNumericEditor=t.extend(e.ig.angular.igNumericEditor||{},e.ig.angular.igEditor),e.ig.angular.igTextEditor=t.extend(e.ig.angular.igTextEditor||{},e.ig.angular.igEditor),e.ig.angular.igDatePicker=t.extend(e.ig.angular.igDatePicker||{},e.ig.angular.igEditor),e.ig.angular.igPercentEditor=t.extend(e.ig.angular.igPercentEditor||{},e.ig.angular.igEditor),e.ig.angular.igCheckboxEditor=t.extend(e.ig.angular.igCheckboxEditor||{},e.ig.angular.igEditor),e.ig.angular.igGrid=e.ig.angular.igGrid||{},e.ig.angular.igGrid.element=e.ig.angular.igGrid.element||"<table></table>",e.ig.angular.igGrid.events=["iggridupdatingeditcellended","iggridupdatingeditrowended","iggridupdatingrowdeleted","iggridupdatingrowadded"],e.ig.angular.igGrid.bindEvents=e.ig.angular.igGrid.bindEvents||function(t,a,n){function r(i,r){var o,g,l,s,f,h,p,m,v,y=a.data("igGrid"),E=y.options.primaryKey,b=a.data("igGridGroupBy"),w=a.data("igGridUpdating"),C=t.$eval(n.source),$=[],x=y.options.autoCommit;if(C===y.options.dataSource){if(u(i,r,$),Array.isArray(i)&&Array.isArray(r)){if(i.length>r.length)for(r.length>0&&r[r.length-1][E]!==i[r.length-1][E]&&y.dataBind(),m=b&&b.options.groupedColumns.length>0,o=r.length;o<i.length;o++)0===a.find("tr[data-id='"+i[o][E]+"']").length&&(m?b._renderNewRow(i[o],i[o][E]):y.renderNewRow(i[o],i[o][E])),y.dataSource.findRecordByKey(i[o][E])||y.dataSource._addRow(i[o],-1),p=y.rowById(i[o][E]),y.options.autoCommit=!0,d(a,p),y.options.autoCommit=x;if(i.length<r.length)for(o=0,g=0;g<r.length;o++,g++)void 0!==i[o]&&i[o][E]===r[g][E]||(y.dataSource.deleteRow(r[g][E],!0),o--,v=(p=a.find("tr[data-id='"+r[g][E]+"']")).index(),p.remove(),y._reapplyZebraStyle(v),y.options.autoCommit=!0,c(a,r[g][E],p),y.options.autoCommit=x)}if(Array.isArray($))for(o=0;o<$.length;o++)if($[o].txlog)for(g=0;g<$[o].txlog.length;g++)w&&w.isEditing()&&w.endEdit(!1),l=y.columnByKey($[o].txlog[g].key),s=C[$[o].index],p=y.rowById(s[E]),f=y.cellById(s[E],$[o].txlog[g].key),h=l.template||y.options.rowTemplate?y._renderTemplatedCell($[o].txlog[g].newVal,l):y._renderCell($[o].txlog[g].newVal,l,s),e(f).html(h),y._fireInternalEvent("_internalCellUpdated",{rowID:s[E],cell:f}),y.dataSource.findRecordByKey(s[E])[l.key]=$[o].txlog[g].newVal}else setTimeout(function(){y.options.dataSource=C,y.dataBind()},0)}var o,g=n&&n.collectionWatch&&"true"===n.collectionWatch;a.on(e.ig.angular.igGrid.events.join(" "),function(){o(),o=g?t.$watchCollection(n.source,r):t.$watch(n.source,r,!0),t.$apply(),i(t,"igGrid",n)}).one("$destroy",function(){o()}),o=g?t.$watchCollection(n.source,r):t.$watch(n.source,r,!0),i(t,"igGrid",n)},e.ig.angular.igHierarchicalGrid=e.ig.angular.igHierarchicalGrid||{},e.ig.angular.igHierarchicalGrid.element=e.ig.angular.igHierarchicalGrid.element||"<table></table>",e.ig.angular.igHierarchicalGrid.bindEvents=e.ig.angular.igHierarchicalGrid.bindEvents||function(t,a,n){var r;r=t.$watch(n.source,function(i){t.$eval(n.source)===a.data("igHierarchicalGrid").options.dataSource||setTimeout(function(){e(a).igHierarchicalGrid("option","dataSource",i)},0)},!0),i(t,"igHierarchicalGrid",n),a.one("$destroy",function(){r()})},e.ig.angular.igTree=e.ig.angular.igTree||{},e.ig.angular.igTree.bindEvents=e.ig.angular.igTree.bindEvents||function(t,a,n){var r;r=t.$watch(n.source,function(t){e(a).igTree("option","dataSource",t)},!0),i(t,"igTree",n),a.one("$destroy",function(){r()})},e.ig.angular.igDataChart=e.ig.angular.igDataChart||{},e.ig.angular.igDataChart.bindEvents=e.ig.angular.igDataChart.bindEvents||function(t,a,n){var r,o=[],g=function(t,i){var n=e(a),r=n.data("igDataChart");if(!t||void 0!==i&&null!==i)if(r.dataSources[r._containerSourceID]&&r.dataSources[r._containerSourceID].data()!==t)n.igDataChart("option","dataSource",t);else{if(t&&i&&t.length===i.length){var g=u(t,i,o);if(o.length>0&&!g){for(var l=0;l<o.length;l++)n.igDataChart("notifySetItem",t,o[l].index,t[o[l].index],i[o[l].index]);return}}t&&n.igDataChart("notifyClearItems",t)}else n.igDataChart("option","dataSource",t)};t.$eval(n.source).push=function(){r();var o=Array.prototype.push.apply(this,arguments);return e(a).igDataChart("notifyInsertItem",this,this.length-1,arguments[0]),r=t.$watch(n.source,g,!0),i(t,"igDataChart",n),o},r=t.$watch(n.source,g,!0),i(t,"igDataChart",n),a.one("$destroy",function(){r()})},e.ig.angular.igBaseChart=e.ig.angular.igBaseChart||{},e.ig.angular.igBaseChart.element=e.ig.angular.igBaseChart.element||"<div></div>",e.ig.angular.igBaseChart.bindEvents=e.ig.angular.igBaseChart.bindEvents||function(t,a,n){var r,o=n["data-ig-control-name"];r=t.$watch(n.source,function(t){e(a)[o]("notifyClearItems",t)},!0),i(t,o,n),a.one("$destroy",function(){r()})},e.ig.angular.igSparkline=t.extend(e.ig.angular.igSparkline||{},e.ig.angular.igBaseChart),e.ig.angular.igFunnelChart=t.extend(e.ig.angular.igFunnelChart||{},e.ig.angular.igBaseChart),e.ig.angular.igHtmlEditor=e.ig.angular.igHtmlEditor||{},e.ig.angular.igHtmlEditor.element=e.ig.angular.igHtmlEditor.element||"<div></div>",e.ig.angular.igHtmlEditor.bindEvents=e.ig.angular.igHtmlEditor.bindEvents||function(t,a,n){var r,o=n["data-ig-control-name"];r=t.$watch(n.value,function(t){e(a)[o]("setContent",t,"html")},!0),i(t,o,n),a.one("$destroy",function(){r()})},e.ig.angular.igTreeGrid=e.ig.angular.igTreeGrid||{},e.ig.angular.igTreeGrid.element=e.ig.angular.igTreeGrid.element||"<table></table>",e.ig.angular.igPivotGrid=e.ig.angular.igPivotGrid||{},e.ig.angular.igPivotGrid.element=e.ig.angular.igPivotGrid.element||"<table></table>";var m=t.module("igniteui-directives",[]);for(var v in e.ui)"ig"===v.substring(0,2)&&m.directive(v,function(){return{restrict:"EAC",require:"?ngModel",template:function(t,i){this.origElementCopy=t.clone();var a,n,r;return i.$set("data-ig-control-name",this.name),a=t.find("content").html(),n=i.textMode&&"multiline"===i.textMode&&"igTextEditor"===i["data-ig-control-name"]?"<textarea></textarea>":i.element&&"<_el_></_el_>".replace(/_el_/g,i.element)||e.ig.angular[this.name]&&e.ig.angular[this.name].element||"<div></div>",a&&3===(r=n.match("(<[^/][\\w]+>)(</[\\w]+>)")).length&&(n=r[1]+a+r[2]),n},replace:!0,compile:function(t,i,a){var n=this.origElementCopy[0];return function(t,i,a,r){var o=a["data-ig-control-name"];if(t.getHtml=t.getHtml||p,o&&n){var g=t.$eval(a[o])||h(o,n,{},i,t);a.source?g.dataSource=t.$eval(a.source):(a.source=a[o]+".dataSource",a.primaryKey=g.primaryKey),e.ig.angular[o]&&e.ig.angular[o].bindEvents&&e.ig.angular[o].bindEvents(t,i,a,r),t.$on("$destroy",function(){"object"==typeof i.data(o)&&i[o]("destroy"),e.ig.angular[o]&&e.ig.angular[o].events&&e.ig.angular[o].events.length&&i.off(e.ig.angular[o].events.join(" "))});for(var l in a)"id"===l||l.startsWith("$")||l.startsWith("data-")||l.startsWith("ng-")||!i.removeAttr||i.removeAttr(l.replace(/([A-Z])/g,"-$1").toLowerCase());i[o](g)}}}}})}(angular,jQuery);