UNPKG

graphdb-workbench

Version:
3 lines 38.7 kB
/*! For license information please see 35596.5fb256b83d63c8b374e1.bundle.js.LICENSE.txt */ export const __webpack_id__=35596;export const __webpack_ids__=[35596];export const __webpack_modules__={35596:()=>{var e;angular.module("xeditable",[]).value("editableOptions",{theme:"default",icon_set:"default",buttons:"right",blurElem:"cancel",blurForm:"ignore",activate:"focus",isDisabled:!1,activationEvent:"click",submitButtonTitle:"Submit",submitButtonAriaLabel:"Submit",cancelButtonTitle:"Cancel",cancelButtonAriaLabel:"Cancel",clearButtonTitle:"Clear",clearButtonAriaLabel:"Clear",displayClearButton:!1}),angular.module("xeditable").directive("editableBsdate",["editableDirectiveFactory","$injector","$parse",function(e,t,a){var i=t.get("uibDatepickerConfig"),n=t.get("uibDatepickerPopupConfig"),r=[["eIsOpen","is-open"],["eDateDisabled","date-disabled"],["eDatepickerPopup","uib-datepicker-popup"],["eShowButtonBar","show-button-bar"],["eCurrentText","current-text"],["eClearText","clear-text"],["eCloseText","close-text"],["eCloseOnDateSelection","close-on-date-selection"],["eDatepickerAppendToBody","datepicker-append-to-body"],["eOnOpenFocus","on-open-focus"],["eName","name"],["eDateDisabled","date-disabled"],["eAltInputFormats","alt-input-formats"],["eDatepickerTemplateUrl","datepicker-template-url"]],l=[["eFormatDay","formatDay"],["eFormatMonth","formatMonth"],["eFormatYear","formatYear"],["eFormatDayHeader","formatDayHeader"],["eFormatDayTitle","formatDayTitle"],["eFormatMonthTitle","formatMonthTitle"],["eMaxMode","maxMode"],["eMinMode","minMode"],["eDatepickerMode","datepickerMode"]];return e({directiveName:"editableBsdate",inputTpl:"<div></div>",render:function(){this.parent.render.call(this);var e=this.attrs,t=this.scope,o=angular.element('<input type="text" class="form-control" ng-model="$parent.$data"/>');o.attr("uib-datepicker-popup",e.eDatepickerPopupXEditable||n.datepickerPopup),o.attr("year-range",e.eYearRange||20),o.attr("ng-readonly",e.eReadonly||!1);for(var s=r.length-1;s>=0;s--){var u=e[r[s][0]];void 0!==u&&o.attr(r[s][1],u)}e.eNgChange&&(o.attr("ng-change",e.eNgChange),this.inputEl.removeAttr("ng-change")),e.eStyle&&(o.attr("style",e.eStyle),this.inputEl.removeAttr("style"));var c={maxDate:t.$eval(e.eMaxDate)||i.maxDate,minDate:t.$eval(e.eMinDate)||i.minDate,showWeeks:e.eShowWeeks?"true"===e.eShowWeeks.toLowerCase():i.showWeeks,startingDay:e.eStartingDay||0,initDate:t.$eval(e.eInitDate)||new Date};if(e.eDatepickerOptions){var d=a(e.eDatepickerOptions)(t);angular.extend(c,d)}for(var p=l.length-1;p>=0;p--){var h=e[l[p][0]];void 0!==h&&(c[l[p][1]]=h)}if(t.dateOptions=c,"true"===(angular.isDefined(e.eShowCalendarButton)?e.eShowCalendarButton:"true")){var m=angular.element('<button type="button" class="'+this.theme.calendarButtonClass+'"><i class="'+this.icon_set.calendar+'"></i></button>'),b=angular.element('<span class="'+this.theme.buttonGroupAppendClass+'"></span>');m.attr("ng-click",e.eNgClick),b.append(m),this.inputEl.append(b)}else o.attr("ng-click",e.eNgClick);o.attr("datepicker-options","dateOptions"),this.inputEl.prepend(o),this.inputEl.removeAttr("class"),this.inputEl.removeAttr("ng-click"),this.inputEl.removeAttr("is-open"),this.inputEl.removeAttr("init-date"),this.inputEl.removeAttr("datepicker-popup"),this.inputEl.removeAttr("required"),this.inputEl.removeAttr("ng-model"),this.inputEl.removeAttr("date-picker-append-to-body"),this.inputEl.removeAttr("name"),this.inputEl.attr("class","input-group")},autosubmit:function(){var e=this;e.inputEl.bind("change",function(){setTimeout(function(){e.scope.$apply(function(){e.scope.$form.$submit()})},500)}),e.inputEl.bind("keydown",function(t){9===t.keyCode&&"submit"===e.editorEl.attr("blur")&&e.scope.$apply(function(){e.scope.$form.$submit()})})}})}]),angular.module("xeditable").directive("editableBstime",["editableDirectiveFactory",function(e){return e({directiveName:"editableBstime",inputTpl:"<div uib-timepicker></div>",render:function(){this.parent.render.call(this);var e=angular.element('<div class="well well-small" style="display:inline-block;"></div>');e.attr("ng-model",this.inputEl.attr("ng-model")),this.inputEl.removeAttr("ng-model"),this.attrs.eNgChange&&(e.attr("ng-change",this.inputEl.attr("ng-change")),this.inputEl.removeAttr("ng-change")),this.inputEl.wrap(e)}})}]),angular.module("xeditable").directive("editableCheckbox",["editableDirectiveFactory",function(e){return e({directiveName:"editableCheckbox",inputTpl:'<input type="checkbox">',render:function(){this.parent.render.call(this),this.inputEl.wrap("<label></label>"),this.attrs.eTitle&&this.inputEl.parent().append("<span>"+this.attrs.eTitle+"</span>")},autosubmit:function(){var e=this;e.inputEl.bind("change",function(){setTimeout(function(){e.scope.$apply(function(){e.scope.$form.$submit()})},500)})}})}]),angular.module("xeditable").directive("editableChecklist",["editableDirectiveFactory","editableNgOptionsParser",function(e,t){return e({directiveName:"editableChecklist",inputTpl:"<span></span>",useCopy:!0,render:function(){this.parent.render.call(this);var e=t(this.attrs.eNgOptions),a="",i="",n="";this.attrs.eNgChange&&(a=' ng-change="'+this.attrs.eNgChange+'"'),this.attrs.eChecklistComparator&&(i=' checklist-comparator="'+this.attrs.eChecklistComparator+'"'),this.attrs.eNgDisabled&&(n=' ng-disabled="'+this.attrs.eNgDisabled+'"');var r='<label ng-repeat="'+e.ngRepeat+'"><input type="checkbox" checklist-model="$parent.$parent.$data" checklist-value="'+e.locals.valueFn+'"'+a+i+n+'><span ng-bind="'+e.locals.displayFn+'"></span></label>';this.inputEl.removeAttr("ng-model"),this.inputEl.removeAttr("ng-options"),this.inputEl.removeAttr("ng-change"),this.inputEl.removeAttr("checklist-comparator"),this.inputEl.html(r)}})}]),angular.module("xeditable").directive("editableCombodate",["editableDirectiveFactory","editableCombodate",function(e,t){return e({directiveName:"editableCombodate",inputTpl:'<input type="text">',render:function(){this.parent.render.call(this);var e={value:new Date(this.scope.$data)},a=this;angular.forEach(["format","template","minYear","maxYear","yearDescending","minuteStep","secondStep","firstItem","errorClass","customClass","roundTime","smartDays"],function(t){var i="e"+t.charAt(0).toUpperCase()+t.slice(1);i in a.attrs&&(e[t]="minYear"==t||"maxYear"==t||"minuteStep"==t||"secondStep"==t?parseInt(a.attrs[i],10):a.attrs[i])});var i=t.getInstance(this.inputEl,e);i.$widget.find("select").bind("change",function(e){a.scope.$data=i.getValue()?moment(i.getValue(),i.options.format).toDate().toISOString():null}).change()}})}]),e="text|password|email|tel|number|url|search|color|date|datetime|datetime-local|time|month|week|file".split("|"),angular.forEach(e,function(e){var t=("editable-"+e).toLowerCase().replace(/-(.)/g,function(e,t){return t.toUpperCase()});angular.module("xeditable").directive(t,["editableDirectiveFactory",function(a){return a({directiveName:t,inputTpl:'<input type="'+e+'">',render:function(){this.parent.render.call(this);var e=this.attrs;if(this.scope,e.eInputgroupleft||e.eInputgroupright){if(this.inputEl.wrap('<div class="input-group"></div>'),e.eInputgroupleft){var t=angular.element('<span class="input-group-addon" data-ng-bind="'+e.eInputgroupleft+'"></span>');this.inputEl.parent().prepend(t)}if(e.eInputgroupright){var a=angular.element('<span class="input-group-addon" data-ng-bind="'+e.eInputgroupright+'"></span>');this.inputEl.parent().append(a)}}if(e.eLabel){var i=angular.element("<label>"+e.eLabel+"</label>");e.eInputgroupleft||e.eInputgroupright?this.inputEl.parent().parent().prepend(i):this.inputEl.parent().prepend(i)}e.eFormclass&&(this.editorEl.addClass(e.eFormclass),this.inputEl.removeAttr("formclass"))},autosubmit:function(){var e=this;e.inputEl.bind("keydown",function(t){9===t.keyCode&&"submit"===e.editorEl.attr("blur")&&e.scope.$apply(function(){e.scope.$form.$submit()})})}})}])}),angular.module("xeditable").directive("editableRange",["editableDirectiveFactory","$interpolate",function(e,t){return e({directiveName:"editableRange",inputTpl:'<input type="range" id="range" name="range">',render:function(){this.parent.render.call(this),this.inputEl.after("<output>"+t.startSymbol()+"$data"+t.endSymbol()+"</output>")}})}]),angular.module("xeditable").directive("editableTagsInput",["editableDirectiveFactory","editableUtils",function(e,t){var a=e({directiveName:"editableTagsInput",inputTpl:"<tags-input></tags-input>",useCopy:!0,render:function(){this.parent.render.call(this),this.inputEl.append(t.rename("auto-complete",this.attrs.$autoCompleteElement)),this.inputEl.removeAttr("ng-model"),this.inputEl.attr("ng-model","$parent.$data")}}),i=a.link;return a.link=function(e,t,a,n){var r=t.find("editable-tags-input-auto-complete");return a.$autoCompleteElement=r.clone(),r.remove(),i(e,t,a,n)},a}]),angular.module("xeditable").directive("editableRadiolist",["editableDirectiveFactory","editableNgOptionsParser","$interpolate",function(e,t,a){return e({directiveName:"editableRadiolist",inputTpl:"<span></span>",render:function(){this.parent.render.call(this);var e=t(this.attrs.eNgOptions),i="",n="",r=isNaN(e.locals.valueFn)?"'"+e.locals.valueFn+"'":e.locals.valueFn,l=!!this.attrs.eNgDisabled&&this.attrs.eNgDisabled;this.attrs.eNgChange&&(i=' ng-change="'+this.attrs.eNgChange+'"'),this.attrs.eName&&(n=' name="'+this.attrs.eName+'"');var o='<label data-ng-repeat="'+e.ngRepeat+'"><input type="radio" data-ng-disabled="::'+l+'" data-ng-model="$parent.$parent.$data" data-ng-value="'+a.startSymbol()+"::"+r+a.endSymbol()+'"'+i+n+'><span data-ng-bind="::'+e.locals.displayFn+'"></span></label>';this.inputEl.removeAttr("ng-model"),this.inputEl.removeAttr("ng-options"),this.inputEl.removeAttr("ng-change"),this.inputEl.html(o)},autosubmit:function(){var e=this;e.inputEl.bind("change",function(){setTimeout(function(){e.scope.$apply(function(){e.scope.$form.$submit()})},500)})}})}]),angular.module("xeditable").directive("editableSelect",["editableDirectiveFactory",function(e){return e({directiveName:"editableSelect",inputTpl:"<select></select>",render:function(){if(this.parent.render.call(this),this.attrs.ePlaceholder){var e=angular.element('<option value="">'+this.attrs.ePlaceholder+"</option>");this.inputEl.append(e)}},autosubmit:function(){var e=this;e.attrs.hasOwnProperty("eMultiple")||e.inputEl.bind("change",function(){e.scope.$apply(function(){e.scope.$form.$submit()})})}})}]),angular.module("xeditable").directive("editableTextarea",["editableDirectiveFactory",function(e){return e({directiveName:"editableTextarea",inputTpl:"<textarea></textarea>",render:function(){this.parent.render.call(this),this.attrs.eFormclass&&(this.editorEl.addClass(this.attrs.eFormclass),this.inputEl.removeAttr("formclass"))},addListeners:function(){var e=this;e.parent.addListeners.call(e),e.single&&"no"!==e.buttons&&e.autosubmit()},autosubmit:function(){var e=this;e.inputEl.bind("keydown",function(t){e.attrs.submitOnEnter?13!==t.keyCode||t.shiftKey||e.scope.$apply(function(){e.scope.$form.$submit()}):((t.ctrlKey||t.metaKey)&&13===t.keyCode||9===t.keyCode&&"submit"===e.editorEl.attr("blur"))&&e.scope.$apply(function(){e.scope.$form.$submit()})})}})}]),angular.module("xeditable").directive("editableUidate",["editableDirectiveFactory",function(e){return e({directiveName:"editableUidate",inputTpl:'<input class="form-control" />',render:function(){this.parent.render.call(this),this.inputEl.attr("ui-date",this.attrs.eUiDate),this.inputEl.attr("placeholder",this.attrs.ePlaceholder)}})}]),angular.module("xeditable").directive("editableUiSelect",["editableDirectiveFactory","editableUtils",function(e,t){var a=e({directiveName:"editableUiSelect",inputTpl:"<ui-select></ui-select>",render:function(){this.parent.render.call(this),this.inputEl.append(t.rename("ui-select-match",this.attrs.$matchElement)),this.inputEl.append(t.rename("ui-select-choices",this.attrs.$choicesElement)),this.inputEl.removeAttr("ng-model"),this.inputEl.attr("ng-model","$parent.$parent.$data")},autosubmit:function(){var e=this;e.inputEl.bind("change",function(){setTimeout(function(){e.scope.$apply(function(){e.scope.$form.$submit()})},500)}),e.inputEl.bind("keydown",function(t){9===t.keyCode&&"submit"===e.editorEl.attr("blur")&&e.scope.$apply(function(){e.scope.$form.$submit()})})}}),i=a.link;return a.link=function(e,t,a,n){var r=t.find("editable-ui-select-match"),l=t.find("editable-ui-select-choices");return a.$matchElement=r.clone(),a.$choicesElement=l.clone(),r.remove(),l.remove(),i(e,t,a,n)},a}]),angular.module("xeditable").factory("editableController",["$q","editableUtils",function(e,t){function a(e,a,i,n,r,l,o,s,u,c,d,p){var h,m,b=this;b.scope=e,b.elem=i,b.attrs=a,b.inputEl=null,b.editorEl=null,b.single=!0,b.error="",b.theme=r[a.editableTheme]||r[o.theme]||r.default,b.parent={};var f=a.editableTheme||o.theme||"default",g=a.editableIconSet||o.icon_set;b.icon_set="default"===g?l.default[f]:l.external[g],b.inputTpl="",b.directiveName="",b.useCopy=!1,b.single=null,b.buttons="right",b.popover=!1,b.init=function(t){if(b.single=t,b.name=a.eName||a[b.directiveName],!a[b.directiveName])throw"You should provide value for `"+b.directiveName+"` in editable element!";h=n(a[b.directiveName]),b.single?b.buttons=b.attrs.buttons||o.buttons:b.buttons="no",a.eName&&b.scope.$watch("$data",function(e){b.scope.$form.$data[a.eName]=e}),a.onshow&&(b.onshow=function(){return b.catchError(n(a.onshow)(e))}),a.onhide&&(b.onhide=function(){return n(a.onhide)(e)}),a.oncancel&&(b.oncancel=function(){return n(a.oncancel)(e)}),a.onbeforesave&&(b.onbeforesave=function(){return b.catchError(n(a.onbeforesave)(e))}),a.onaftersave&&(b.onaftersave=function(){return b.catchError(n(a.onaftersave)(e))}),a.popover&&(b.popover=b.attrs.popover),e.$parent.$watch(a[b.directiveName],function(e,t){b.setLocalValue(),b.handleEmpty()})},b.render=function(){var e=b.theme;for(var i in b.inputEl=angular.element(b.inputTpl),b.controlsEl=angular.element(e.controlsTpl),b.controlsEl.append(b.inputEl),"no"!==b.buttons&&(b.buttonsEl=angular.element(e.buttonsTpl),b.submitEl=angular.element(e.submitTpl),b.resetEl=angular.element(e.resetTpl),b.cancelEl=angular.element(e.cancelTpl),b.submitEl.attr("title",o.submitButtonTitle),b.submitEl.attr("aria-label",o.submitButtonAriaLabel),b.cancelEl.attr("title",o.cancelButtonTitle),b.cancelEl.attr("aria-label",o.cancelButtonAriaLabel),b.resetEl.attr("title",o.clearButtonTitle),b.resetEl.attr("aria-label",o.clearButtonAriaLabel),b.icon_set&&(b.submitEl.find("span").addClass(b.icon_set.ok),b.cancelEl.find("span").addClass(b.icon_set.cancel),b.resetEl.find("span").addClass(b.icon_set.clear)),b.buttonsEl.append(b.submitEl).append(b.cancelEl),o.displayClearButton&&b.buttonsEl.append(b.resetEl),b.controlsEl.append(b.buttonsEl),b.inputEl.addClass("editable-has-buttons")),b.errorEl=angular.element(e.errorTpl),b.controlsEl.append(b.errorEl),b.editorEl=angular.element(b.single?e.formTpl:e.noformTpl),b.editorEl.append(b.controlsEl),a.$attr)if(!(i.length<=1)){var n=!1,r=i.substring(1,2);if("e"===i.substring(0,1)&&r===r.toUpperCase()&&"Form"!==(n=i.substring(1))&&"NgSubmit"!==n){var l=n.substring(0,1),s=n.substring(1,2),u="value"!==(n=s===s.toUpperCase()&&l===l.toUpperCase()?l.toLowerCase()+"-"+t.camelToDash(n.substring(1)):l.toLowerCase()+t.camelToDash(n.substring(1)))&&""===a[i]?n:a[i];b.inputEl.attr(n,u)}}b.inputEl.addClass("editable-input"),b.inputEl.attr("ng-model","$parent.$data"),b.editorEl.addClass(t.camelToDash(b.directiveName)),b.single&&(b.editorEl.attr("editable-form","$form"),b.editorEl.attr("blur",b.attrs.blur||o.blurElem)),angular.isFunction(e.postrender)&&e.postrender.call(b)},b.setLocalValue=function(){b.scope.$data=b.useCopy?angular.copy(h(e.$parent)):h(e.$parent)};var v=null;b.show=function(){if(b.setLocalValue(),b.render(),i.after(b.editorEl),v=e.$new(),u(b.editorEl)(v),b.addListeners(),i.addClass("editable-hide"),b.popover){var t=angular.element("<div></div>");t.append(b.editorEl),b.editorEl=t,p.put("popover.html",b.editorEl[0].outerHTML)}return b.onshow()},b.hide=function(){return v.$destroy(),b.controlsEl.remove(),b.editorEl.remove(),i.removeClass("editable-hide"),b.popover&&p.remove("popover.html"),b.onhide()},b.cancel=function(){b.oncancel()},b.addListeners=function(){b.inputEl.bind("keyup",function(e){b.single&&27===e.keyCode&&b.scope.$apply(function(){b.scope.$form.$cancel()})}),b.single&&"no"===b.buttons&&b.autosubmit(),b.editorEl.bind("click",function(e){e.which&&1!==e.which||b.scope.$form.$visible&&(b.scope.$form._clicked=!0)})},b.setWaiting=function(e){e?(m=!b.inputEl.attr("disabled")&&!b.inputEl.attr("ng-disabled")&&!b.inputEl.attr("ng-enabled"))&&(b.inputEl.attr("disabled","disabled"),b.buttonsEl&&b.buttonsEl.find("button").attr("disabled","disabled")):m&&(b.inputEl.removeAttr("disabled"),b.buttonsEl&&b.buttonsEl.find("button").removeAttr("disabled"))},b.activate=function(e,t){setTimeout(function(){var a=b.inputEl[0];"focus"===o.activate&&a.focus?(void 0!==e&&""!==e&&a.setSelectionRange&&(t=t||e,a.onfocus=function(){setTimeout(function(){try{this.setSelectionRange(e,t)}catch(e){}}.bind(this))}),"editableRadiolist"==b.directiveName||"editableChecklist"==b.directiveName||"editableBsdate"==b.directiveName||"editableTagsInput"==b.directiveName?a.querySelector(".ng-pristine").focus():a.focus()):"select"===o.activate&&(a.select?a.select():a.focus&&a.focus())},0)},b.setError=function(t){angular.isObject(t)||(e.$error=d.trustAsHtml(t),b.error=t)},b.catchError=function(e,t){return angular.isObject(e)&&!0!==t?c.when(e).then(angular.bind(this,function(e){this.catchError(e,!0)}),angular.bind(this,function(e){this.catchError(e,!0)})):t&&angular.isObject(e)&&e.status&&200!==e.status&&e.data&&angular.isString(e.data)?(this.setError(e.data),e=e.data):angular.isString(e)&&this.setError(e),e},b.save=function(){h.assign(e.$parent,b.useCopy?angular.copy(b.scope.$data):b.scope.$data)},b.handleEmpty=function(){var t=h(e.$parent),a=null==t||""===t||angular.isArray(t)&&0===t.length;i.toggleClass("editable-empty",a)},b.autosubmit=angular.noop,b.onshow=angular.noop,b.onhide=angular.noop,b.oncancel=angular.noop,b.onbeforesave=angular.noop,b.onaftersave=angular.noop}return a.$inject=["$scope","$attrs","$element","$parse","editableThemes","editableIcons","editableOptions","$rootScope","$compile","$q","$sce","$templateCache"],a}]),angular.module("xeditable").factory("editableDirectiveFactory",["$parse","$compile","editableThemes","$rootScope","$document","editableController","editableFormController","editableOptions",function(e,t,a,i,n,r,l,o){return function(t){return{restrict:"A",scope:!0,require:[t.directiveName,"?^form"],controller:r,link:function(a,r,s,u){var c,d=u[0],p=!1;if(u[1])c=u[1],p=void 0===s.eSingle;else if(s.eForm){var h=e(s.eForm)(a);if(h)c=h,p=!0;else if(r&&"function"==typeof r.parents&&r.parents().last().find('form[name="'+s.eForm+'"]').length)c=null,p=!0;else for(var m=0;m<n[0].forms.length;m++)if(n[0].forms[m].name===s.eForm){c=null,p=!0;break}}if(angular.forEach(t,function(e,t){void 0!==d[t]&&(d.parent[t]=d[t])}),angular.extend(d,t),d.init(!p),a.$editable=d,r.addClass("editable"),p)if(c){if(a.$form=c,!a.$form.$addEditable)throw"Form with editable elements should have `editable-form` attribute.";a.$form.$addEditable(d)}else i.$$editableBuffer=i.$$editableBuffer||{},i.$$editableBuffer[s.eForm]=i.$$editableBuffer[s.eForm]||[],i.$$editableBuffer[s.eForm].push(d),a.$form=null;else a.$form=l(),a.$form.$addEditable(d),s.eForm&&(e(s.eForm).assign||angular.noop)(a.$parent,a.$form),(!s.eForm||s.eClickable)&&(r.addClass("editable-click"),r.bind(o.activationEvent,function(e){e.preventDefault(),e.editable=d,(angular.isDefined(s.editDisabled)?a.$eval(s.editDisabled):o.isDisabled)||a.$apply(function(){a.$form.$show()})}))}}}}]),angular.module("xeditable").factory("editableFormController",["$parse","$document","$rootScope","editablePromiseCollection","editableUtils","editableOptions",function(e,t,a,i,n,r){var l=[],o=function(e,t){var a=!0,i=e.$editables;return angular.forEach(i,function(e){(function(e,t){if(t===e||"focus"===r.activationEvent&&t===e.parentNode)return!0;for(var a=t.parentNode;null!==a;){if(a===e)return!0;a=a.parentNode}return!1})(e.editorEl[0],t.target)&&(a=!1)}),a},s=function(e){if(!e.which||1===e.which){for(var t=[],i=[],n=0;n<l.length;n++)l[n]._clicked?l[n]._clicked=!1:l[n].$waiting||("cancel"===l[n]._blur&&o(l[n],e)&&t.push(l[n]),"submit"===l[n]._blur&&o(l[n],e)&&i.push(l[n]));(t.length||i.length)&&a.$apply(function(){angular.forEach(t,function(e){e.$cancel()}),angular.forEach(i,function(e){e.$submit()})})}};a.$on("closeEdit",function(){for(var e=0;e<l.length;e++)l[e].$hide()});var u={$addEditable:function(e){this.$editables.push(e),e.elem.bind("$destroy",angular.bind(this,this.$removeEditable,e)),e.scope.$form||(e.scope.$form=this),this.$visible&&e.catchError(e.show()),e.catchError(e.setWaiting(this.$waiting))},$removeEditable:function(e){for(var t=0;t<this.$editables.length;t++)if(this.$editables[t]===e)return void this.$editables.splice(t,1)},$show:function(){if(!this.$visible){this.$visible=!0;var e=i();e.when(this.$onshow()),this.$setError(null,""),angular.forEach(this.$editables,function(t){e.when(t.show())}),e.then({onWait:angular.bind(this,this.$setWaiting),onTrue:angular.bind(this,this.$activate),onFalse:angular.bind(this,this.$activate),onString:angular.bind(this,this.$activate)}),setTimeout(angular.bind(this,function(){this._clicked=!1,-1===n.indexOf(l,this)&&l.push(this)}),0)}},$activate:function(e){var a,i,n;if(this.$editables.length){if(angular.isString(e))for(a=0;a<this.$editables.length;a++)if(this.$editables[a].name===e)return void this.$editables[a].activate();for(a=0;a<this.$editables.length;a++)if(this.$editables[a].error)return void this.$editables[a].activate();"true"===this.$editables[0].attrs.usemousedown?t.bind("mousedown",s):t.bind("click",s),i=this.$editables[0].elem[0].selectionStart?this.$editables[0].elem[0].selectionStart:this.$editables[0].elem[0].text?this.$editables[0].elem[0].text.length:this.$editables[0].elem[0].innerHTML?this.$editables[0].elem[0].innerHTML.length:0,n=this.$editables[0].elem[0].selectionEnd?this.$editables[0].elem[0].selectionEnd:this.$editables[0].elem[0].text?this.$editables[0].elem[0].text.length:this.$editables[0].elem[0].innerHTML?this.$editables[0].elem[0].innerHTML.length:0,this.$editables[0].activate(i,n)}},$hide:function(){this.$visible&&(this.$visible=!1,this.$onhide(),angular.forEach(this.$editables,function(e){e.hide()}),n.arrayRemove(l,this))},$cancel:function(){this.$visible&&(this.$oncancel(),angular.forEach(this.$editables,function(e){e.cancel()}),this.$hide())},$setWaiting:function(e){this.$waiting=!!e,angular.forEach(this.$editables,function(t){t.setWaiting(!!e)})},$setError:function(e,t){angular.forEach(this.$editables,function(a){e&&a.name!==e||a.setError(t)})},$submit:function(){function e(e){var t=i();t.when(this.$onbeforesave()),t.then({onWait:angular.bind(this,this.$setWaiting),onTrue:e?angular.bind(this,this.$save):angular.bind(this,this.$hide),onFalse:angular.bind(this,this.$hide),onString:angular.bind(this,this.$activate)})}if(!this.$waiting){this.$setError(null,"");var t=i();angular.forEach(this.$editables,function(e){t.when(e.onbeforesave())}),t.then({onWait:angular.bind(this,this.$setWaiting),onTrue:angular.bind(this,e,!0),onFalse:angular.bind(this,e,!1),onString:angular.bind(this,this.$activate)})}},$save:function(){angular.forEach(this.$editables,function(e){e.save()});var e=i();e.when(this.$onaftersave()),angular.forEach(this.$editables,function(t){e.when(t.onaftersave())}),e.then({onWait:angular.bind(this,this.$setWaiting),onTrue:angular.bind(this,this.$hide),onFalse:angular.bind(this,this.$hide),onString:angular.bind(this,this.$activate)})},$onshow:angular.noop,$oncancel:angular.noop,$onhide:angular.noop,$onbeforesave:angular.noop,$onaftersave:angular.noop};return function(){return angular.extend({$editables:[],$visible:!1,$waiting:!1,$data:{},_clicked:!1,_blur:null},u)}}]),angular.module("xeditable").directive("editableForm",["$rootScope","$parse","editableFormController","editableOptions",function(e,t,a,i){return{restrict:"A",require:["form"],compile:function(){return{pre:function(t,i,n,r){var l,o=r[0];n.editableForm?t[n.editableForm]&&t[n.editableForm].$show?(l=t[n.editableForm],angular.extend(o,l)):(l=a(),t[n.editableForm]=l,angular.extend(l,o)):(l=a(),angular.extend(o,l));var s=e.$$editableBuffer,u=o.$name;u&&s&&s[u]&&(angular.forEach(s[u],function(e){l.$addEditable(e)}),delete s[u])},post:function(e,a,n,r){var l;l=n.editableForm&&e[n.editableForm]&&e[n.editableForm].$show?e[n.editableForm]:r[0],n.onshow&&(l.$onshow=angular.bind(l,t(n.onshow),e)),n.onhide&&(l.$onhide=angular.bind(l,t(n.onhide),e)),n.oncancel&&(l.$oncancel=angular.bind(l,t(n.oncancel),e)),n.shown&&t(n.shown)(e)&&l.$show(),l._blur=n.blur||i.blurForm,n.ngSubmit||n.submit||(n.onbeforesave&&(l.$onbeforesave=function(){return t(n.onbeforesave)(e,{$data:l.$data})}),n.onaftersave&&(l.$onaftersave=function(){return t(n.onaftersave)(e,{$data:l.$data})}),a.bind("submit",function(t){t.preventDefault(),e.$apply(function(){l.$submit()})})),a.bind("click",function(e){e.which&&1!==e.which||l.$visible&&(l._clicked=!0)})}}}}}]),angular.module("xeditable").factory("editablePromiseCollection",["$q",function(e){return function(){return{promises:[],hasFalse:!1,hasString:!1,when:function(t,a){if(!1===t)this.hasFalse=!0;else if(!a&&angular.isObject(t))this.promises.push(e.when(t));else{if(!angular.isString(t))return;this.hasString=!0}},then:function(t){function a(){o.hasString||o.hasFalse?!o.hasString&&o.hasFalse?n():r():i()}var i=(t=t||{}).onTrue||angular.noop,n=t.onFalse||angular.noop,r=t.onString||angular.noop,l=t.onWait||angular.noop,o=this;this.promises.length?(l(!0),e.all(this.promises).then(function(e){l(!1),angular.forEach(e,function(e){o.when(e,!0)}),a()},function(e){l(!1),r()})):a()}}}}]),angular.module("xeditable").factory("editableUtils",[function(){return{indexOf:function(e,t){if(e.indexOf)return e.indexOf(t);for(var a=0;a<e.length;a++)if(t===e[a])return a;return-1},arrayRemove:function(e,t){var a=this.indexOf(e,t);return a>=0&&e.splice(a,1),t},camelToDash:function(e){return e.replace(/[A-Z]/g,function(e,t){return(t?"-":"")+e.toLowerCase()})},dashToCamel:function(e){return e.replace(/([\:\-\_]+(.))/g,function(e,t,a,i){return i?a.toUpperCase():a}).replace(/^moz([A-Z])/,"Moz$1")},rename:function(e,t){if(t[0]&&t[0].attributes){var a=angular.element("<"+e+"/>");a.html(t.html());for(var i=t[0].attributes,n=0;n<i.length;++n)a.attr(i.item(n).nodeName,i.item(n).value);return a}}}}]),angular.module("xeditable").factory("editableNgOptionsParser",[function(){var e=/^\s*(.*?)(?:\s+as\s+(.*?))?(?:\s+group\s+by\s+(.*))?\s+for\s+(?:([\$\w][\$\w]*)|(?:\(\s*([\$\w][\$\w]*)\s*,\s*([\$\w][\$\w]*)\s*\)))\s+in\s+(.*?)(?:\s+track\s+by\s+(.*?))?$/;return function(t){var a;if(!(a=t.match(e)))throw"ng-options parse error";var i,n=a[2]||a[1],r=a[4]||a[6],l=a[5],o=(a[3],a[2]?a[1]:r),s=a[7],u=a[8],c=u?a[8]:null;return void 0===l?(i=r+" in "+s,void 0!==u&&(i+=" track by "+c)):i="("+l+", "+r+") in "+s,{ngRepeat:i,locals:{valueName:r,keyName:l,valueFn:o,displayFn:n}}}}]),angular.module("xeditable").factory("editableCombodate",[function(){function e(e,t){if(this.$element=angular.element(e),"INPUT"!=this.$element[0].nodeName)throw"Combodate should be applied to INPUT element";var a=(new Date).getFullYear();this.defaults={format:"YYYY-MM-DD HH:mm",template:"D / MMM / YYYY H : mm",value:null,minYear:1970,maxYear:a,yearDescending:!0,minuteStep:5,secondStep:1,firstItem:"empty",errorClass:null,customClass:"",roundTime:!0,smartDays:!0},this.options=angular.extend({},this.defaults,t),this.init()}return e.prototype={constructor:e,init:function(){if(this.map={day:["D","date"],month:["M","month"],year:["Y","year"],hour:["[Hh]","hours"],minute:["m","minutes"],second:["s","seconds"],ampm:["[Aa]",""]},this.$widget=angular.element('<span class="combodate"></span>').html(this.getTemplate()),this.initCombos(),this.options.smartDays){var e=this;this.$widget.find("select").bind("change",function(t){(angular.element(t.target).hasClass("month")||angular.element(t.target).hasClass("year"))&&e.fillCombo("day")})}this.$widget.find("select").css("width","auto"),this.$element.css("display","none").after(this.$widget),this.setValue(this.$element.val()||this.options.value)},getTemplate:function(){var e=this.options.template,t=this.options.customClass;return angular.forEach(this.map,function(t,a){t=t[0];var i=new RegExp(t+"+"),n=t.length>1?t.substring(1,2):t;e=e.replace(i,"{"+n+"}")}),e=e.replace(/ /g,"&nbsp;"),angular.forEach(this.map,function(a,i){var n=(a=a[0]).length>1?a.substring(1,2):a;e=e.replace("{"+n+"}",'<select class="'+i+" "+t+'"></select>')}),e},initCombos:function(){for(var e in this.map){var t=this.$widget[0].querySelectorAll("."+e);this["$"+e]=t.length?angular.element(t):null,this.fillCombo(e)}},fillCombo:function(e){var t=this["$"+e];if(t){var a=this["fill"+e.charAt(0).toUpperCase()+e.slice(1)](),i=t.val();t.html("");for(var n=0;n<a.length;n++)t.append('<option value="'+a[n][0]+'">'+a[n][1]+"</option>");t.val(i)}},fillCommon:function(e){var t,a=[];if("name"===this.options.firstItem){var i="function"==typeof(t=moment.relativeTime||moment.langData()._relativeTime)[e]?t[e](1,!0,e,!1):t[e];i=i.split(" ").reverse()[0],a.push(["",i])}else"empty"===this.options.firstItem&&a.push(["",""]);return a},fillDay:function(){var e,t,a=this.fillCommon("d"),i=-1!==this.options.template.indexOf("DD"),n=31;if(this.options.smartDays&&this.$month&&this.$year){var r=parseInt(this.$month.val(),10),l=parseInt(this.$year.val(),10);isNaN(r)||isNaN(l)||(n=moment([l,r]).daysInMonth())}for(t=1;n>=t;t++)e=i?this.leadZero(t):t,a.push([t,e]);return a},fillMonth:function(){var e,t,a=this.fillCommon("M"),i=-1!==this.options.template.indexOf("MMMM"),n=-1!==this.options.template.indexOf("MMM"),r=-1!==this.options.template.indexOf("MM");for(t=0;11>=t;t++)e=i?moment().date(1).month(t).format("MMMM"):n?moment().date(1).month(t).format("MMM"):r?this.leadZero(t+1):t+1,a.push([t,e]);return a},fillYear:function(){var e,t,a=[],i=-1!==this.options.template.indexOf("YYYY");for(t=this.options.maxYear;t>=this.options.minYear;t--)e=i?t:(t+"").substring(2),a[this.options.yearDescending?"push":"unshift"]([t,e]);return this.fillCommon("y").concat(a)},fillHour:function(){var e,t,a=this.fillCommon("h"),i=-1!==this.options.template.indexOf("h"),n=(this.options.template.indexOf("H"),-1!==this.options.template.toLowerCase().indexOf("hh")),r=i?12:23;for(t=i?1:0;r>=t;t++)e=n?this.leadZero(t):t,a.push([t,e]);return a},fillMinute:function(){var e,t,a=this.fillCommon("m"),i=-1!==this.options.template.indexOf("mm");for(t=0;59>=t;t+=this.options.minuteStep)e=i?this.leadZero(t):t,a.push([t,e]);return a},fillSecond:function(){var e,t,a=this.fillCommon("s"),i=-1!==this.options.template.indexOf("ss");for(t=0;59>=t;t+=this.options.secondStep)e=i?this.leadZero(t):t,a.push([t,e]);return a},fillAmpm:function(){var e=-1!==this.options.template.indexOf("a");return this.options.template.indexOf("A"),[["am",e?"am":"AM"],["pm",e?"pm":"PM"]]},getValue:function(e){var t,a={},i=this,n=!1;return angular.forEach(this.map,function(e,t){if("ampm"!==t){var r="day"===t?1:0;return a[t]=i["$"+t]?parseInt(i["$"+t].val(),10):r,isNaN(a[t])?(n=!0,!1):void 0}}),n?"":(this.$ampm&&(12===a.hour?a.hour="am"===this.$ampm.val()?0:12:a.hour="am"===this.$ampm.val()?a.hour:a.hour+12),t=moment([a.year,a.month,a.day,a.hour,a.minute,a.second]),this.highlight(t),null===(e=void 0===e?this.options.format:e)?t.isValid()?t:null:t.isValid()?t.format(e):"")},setValue:function(e){function t(e,t){var a={};return angular.forEach(e.children("option"),function(e,i){var n=angular.element(e).attr("value");if(""!==n){var r=Math.abs(n-t);(void 0===a.distance||r<a.distance)&&(a={value:n,distance:r})}}),a.value}if(e){var a="string"==typeof e?moment(e,this.options.format,!0):moment(e),i=this,n={};a.isValid()&&(angular.forEach(this.map,function(e,t){"ampm"!==t&&(n[t]=a[e[1]]())}),this.$ampm&&(n.hour>=12?(n.ampm="pm",n.hour>12&&(n.hour-=12)):(n.ampm="am",0===n.hour&&(n.hour=12))),angular.forEach(n,function(e,a){i["$"+a]&&("minute"===a&&i.options.minuteStep>1&&i.options.roundTime&&(e=t(i["$"+a],e)),"second"===a&&i.options.secondStep>1&&i.options.roundTime&&(e=t(i["$"+a],e)),i["$"+a].val(e))}),this.options.smartDays&&this.fillCombo("day"),this.$element.val(a.format(this.options.format)).triggerHandler("change"))}},highlight:function(e){e.isValid()?this.options.errorClass?this.$widget.removeClass(this.options.errorClass):this.$widget.find("select").css("border-color",this.borderColor):this.options.errorClass?this.$widget.addClass(this.options.errorClass):(this.borderColor||(this.borderColor=this.$widget.find("select").css("border-color")),this.$widget.find("select").css("border-color","red"))},leadZero:function(e){return 9>=e?"0"+e:e},destroy:function(){this.$widget.remove(),this.$element.removeData("combodate").show()}},{getInstance:function(t,a){return new e(t,a)}}}]),angular.module("xeditable").factory("editableIcons",function(){return{default:{bs2:{ok:"icon-ok icon-white",cancel:"icon-remove",clear:"icon-trash",calendar:"icon-calendar"},bs3:{ok:"glyphicon glyphicon-ok",cancel:"glyphicon glyphicon-remove",clear:"glyphicon glyphicon-trash",calendar:"glyphicon glyphicon-calendar"},bs4:{ok:"fa fa-check",cancel:"fa fa-times",clear:"fa fa-trash",calendar:"fa fa-calendar"}},external:{"font-awesome":{ok:"fa fa-check",cancel:"fa fa-times",clear:"fa fa-trash",calendar:"fa fa-calendar"}}}}),angular.module("xeditable").factory("editableThemes",function(){return{default:{formTpl:'<form class="editable-wrap"></form>',noformTpl:'<span class="editable-wrap"></span>',controlsTpl:'<span class="editable-controls"></span>',inputTpl:"",errorTpl:'<div class="editable-error" data-ng-if="$error" data-ng-bind-html="$error"></div>',buttonsTpl:'<span class="editable-buttons"></span>',submitTpl:'<button type="submit">save</button>',cancelTpl:'<button type="button" ng-click="$form.$cancel()">cancel</button>',resetTpl:'<button type="reset">clear</button>'},bs2:{formTpl:'<form class="form-inline editable-wrap" role="form"></form>',noformTpl:'<span class="editable-wrap"></span>',controlsTpl:'<div class="editable-controls controls control-group" ng-class="{\'error\': $error}"></div>',inputTpl:"",errorTpl:'<div class="editable-error help-block" data-ng-if="$error" data-ng-bind-html="$error"></div>',buttonsTpl:'<span class="editable-buttons"></span>',submitTpl:'<button type="submit" class="btn btn-primary"><span></span></button>',cancelTpl:'<button type="button" class="btn" ng-click="$form.$cancel()"><span></span></button>',resetTpl:'<button type="reset" class="btn btn-danger">clear</button>',calendarButtonClass:"btn",buttonGroupAppendClass:"input-append"},bs3:{formTpl:'<form class="form-inline editable-wrap" role="form"></form>',noformTpl:'<span class="editable-wrap"></span>',controlsTpl:'<div class="editable-controls form-group" ng-class="{\'has-error\': $error}"></div>',inputTpl:"",errorTpl:'<div class="editable-error help-block" data-ng-if="$error" data-ng-bind-html="$error"></div>',buttonsTpl:'<span class="editable-buttons"></span>',submitTpl:'<button type="submit" class="btn btn-primary"><span></span></button>',cancelTpl:'<button type="button" class="btn btn-default" ng-click="$form.$cancel()"><span></span></button>',resetTpl:'<button type="reset" class="btn btn-danger">clear</button>',buttonsClass:"",inputClass:"",calendarButtonClass:"btn btn-default",buttonGroupAppendClass:"input-group-btn",postrender:function(){switch(this.directiveName){case"editableText":case"editableSelect":case"editableTextarea":case"editableEmail":case"editableTel":case"editableNumber":case"editableUrl":case"editableSearch":case"editableDate":case"editableDatetime":case"editableBsdate":case"editableTime":case"editableMonth":case"editableWeek":case"editablePassword":case"editableDatetimeLocal":if(this.inputEl.addClass("form-control"),this.theme.inputClass){if(this.inputEl.attr("multiple")&&("input-sm"===this.theme.inputClass||"input-lg"===this.theme.inputClass))break;this.inputEl.addClass(this.theme.inputClass)}break;case"editableCheckbox":this.editorEl.addClass("checkbox")}this.buttonsEl&&this.theme.buttonsClass&&this.buttonsEl.find("button").addClass(this.theme.buttonsClass)}},bs4:{formTpl:'<form class="form-inline editable-wrap" role="form"></form>',noformTpl:'<span class="editable-wrap"></span>',controlsTpl:'<div class="editable-controls form-group"></div>',inputTpl:"",errorTpl:'<div class="editable-error form-text invalid-feedback" data-ng-if="$error" data-ng-bind-html="$error"></div>',buttonsTpl:'<span class="editable-buttons"></span>',submitTpl:'<button type="submit" class="btn btn-primary"><span></span></button>',cancelTpl:'<button type="button" class="btn btn-secondary" ng-click="$form.$cancel()"><span></span></button>',resetTpl:'<button type="reset" class="btn btn-danger">clear</button>',buttonsClass:"",inputClass:"",calendarButtonClass:"btn btn-secondary",buttonGroupAppendClass:"input-group-append",postrender:function(){switch(this.directiveName){case"editableText":case"editableSelect":case"editableTextarea":case"editableEmail":case"editableTel":case"editableNumber":case"editableUrl":case"editableSearch":case"editableDate":case"editableDatetime":case"editableBsdate":case"editableTime":case"editableMonth":case"editableWeek":case"editablePassword":case"editableDatetimeLocal":if(this.inputEl.addClass("form-control"),this.inputEl.attr("ng-class","{'is-invalid': $error}"),this.theme.inputClass){if(this.inputEl.attr("multiple")&&("form-control-sm"===this.theme.inputClass||"form-control-lg"===this.theme.inputClass))break;this.inputEl.addClass(this.theme.inputClass)}break;case"editableCheckbox":this.editorEl.addClass("form-check")}this.buttonsEl&&this.theme.buttonsClass&&this.buttonsEl.find("button").addClass(this.theme.buttonsClass)}},semantic:{formTpl:'<form class="editable-wrap ui form" ng-class="{\'error\': $error}" role="form"></form>',noformTpl:'<span class="editable-wrap"></span>',controlsTpl:'<div class="editable-controls ui fluid input" ng-class="{\'error\': $error}"></div>',inputTpl:"",errorTpl:'<div class="editable-error ui error message" data-ng-if="$error" data-ng-bind-html="$error"></div>',buttonsTpl:'<span class="mini ui buttons"></span>',submitTpl:'<button type="submit" class="ui primary button"><i class="ui check icon"></i></button>',cancelTpl:'<button type="button" class="ui button" ng-click="$form.$cancel()"><i class="ui cancel icon"></i></button>',resetTpl:'<button type="reset" class="ui button">clear</button>'}}})}}; //# sourceMappingURL=35596.5fb256b83d63c8b374e1.bundle.js.map