@progress/kendo-ui
Version:
This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.
3 lines • 9.75 kB
JavaScript
/* @license */
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require(`kendo.checkbox.min.js`),require(`kendo.dropdownlist.min.js`),require(`kendo.datepicker.min.js`),require(`kendo.numerictextbox.min.js`),require(`kendo.textbox.min.js`),require(`kendo.combobox.min.js`),require(`kendo.multiselect.min.js`),require(`kendo.validator.min.js`),require(`kendo.binder.min.js`),require(`kendo.icons.min.js`),require(`kendo.otpinput.min.js`),require(`kendo.upload.min.js`)):typeof define==`function`&&define.amd?define([`exports`,`kendo.checkbox.min`,`kendo.dropdownlist.min`,`kendo.datepicker.min`,`kendo.numerictextbox.min`,`kendo.textbox.min`,`kendo.combobox.min`,`kendo.multiselect.min`,`kendo.validator.min`,`kendo.binder.min`,`kendo.icons.min`,`kendo.otpinput.min`,`kendo.upload.min`],t):(e=typeof globalThis<`u`?globalThis:e||self,t((e.kendo=e.kendo||{},e.kendo._globals=e.kendo._globals||{},e.kendo._globals.Editable={}),e.kendo._globals.Checkbox,e.kendo._globals.Dropdownlist,e.kendo._globals.Datepicker,e.kendo._globals.Numerictextbox,e.kendo._globals.Textbox,e.kendo._globals.Combobox,e.kendo._globals.Multiselect,e.kendo._globals.Validator,e.kendo._globals.Binder,e.kendo._globals.Icons,e.kendo._globals.Otpinput,e.kendo._globals.Upload))})(this,function(e,t,n,r,i,a,o,s,c,l,u,d,f){Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});let p={id:`editable`,name:`Editable`,category:`framework`,depends:[`checkbox`,`dropdownlist`,`datepicker`,`numerictextbox`,`validator`,`binder`,`icons`,`combobox`,`multiselect`],hidden:!0};(function(e,t){var n=window.kendo,r=n.ui,i=r.Widget,a=e.extend,o=n.isFunction,s=e.isPlainObject,c=e.inArray,l=`.`,u=`off`,d=/("|\%|'|\[|\]|\$|\.|\,|\:|\;|\+|\*|\&|\!|\#|\(|\)|<|>|\=|\?|\@|\^|\{|\}|\~|\/|\||`)/g,f=({message:e})=>`<div class="k-tooltip k-tooltip-error k-validator-tooltip">`+n.ui.icon({icon:`exclamation-circle`,iconClass:`k-tooltip-icon`})+`<span class="k-tooltip-content">${e}</span><span class="k-callout k-callout-n"></span></div>`,p=`change`,m=`equalSet`,h=[`url`,`email`,`number`,`date`,`boolean`];function g(e){return e??=``,e.type||n.type(e)||`string`}function _(t){t.find(`:input:not(:button, .k-checkbox-list .k-checkbox, .k-radio-list .k-radio, [`+n.attr(`role`)+`=listbox], [`+n.attr(`role`)+`=upload], [`+n.attr(`skip`)+`], [type=file]), [`+n.attr(`role`)+`=radiogroup]`).each(function(){var t=n.attr(`bind`),r=this.getAttribute(t)||``,i=this.type===`checkbox`||this.type===`radio`?`checked:`:`value:`,a=this.getAttribute(`name`)===D.antiForgeryTokenName,o=this.attributes.name&&this.attributes.name.value;r.indexOf(i)===-1&&o&&!a&&(r+=(r.length?`,`:``)+i+o,e(this).attr(t,r))})}function v(e){var t=(e.model.fields||e.model)[e.field],r=g(t),i=t?t.validation:{},a=t?t.attributes:{},d,f=n.attr(`type`),p=n.attr(`bind`),m,_={id:e.id||e.field,name:e.field,title:e.title?e.title:e.field};for(d in i){if(m=i[d],c(d,h)>=0)_[f]=d;else if(!o(m)){var v=n.getCulture();if(typeof m==`number`&&v.name.length){var y=v.numberFormat;_[d]=m.toString().replace(l,y[l])}else _[d]=s(m)?m.value||d:m}_[n.attr(d+`-msg`)]=m.message,_.autocomplete=u}for(var b in a)_[b]=a[b];return c(r,h)>=0&&(_[f]=r),_[p]=(r===`boolean`?`checked:`:`value:`)+e.field,_}function y(e,t){var n=e.attr(`id`);return n&&(t.id=n,e.removeAttr(`id`)),t}function b(e){var t,n,r,i,a,o;if(e&&e.length)for(o=[],t=0,n=e.length;t<n;t++)r=e[t],a=r.text||r.value||r,i=r.value==null?r.text||r:r.value,o[t]={text:a,value:i};return o}function x(e,t){var n;if(e.length)return n=e===`DropDownTree`&&t&&t.checkboxes||e===`MultiSelect`?`<select />`:e===`RadioGroup`||e===`CheckBoxGroup`?`<ul />`:e===`Signature`?`<div></div>`:e===`Editor`||e===`TextArea`?`<textarea />`:`<input />`,n}var S=`AutoComplete.CheckBox.CheckBoxGroup.ColorGradient.ColorPicker.ColorPalette.ComboBox.DateInput.DatePicker.DateTimePicker.DropDownTree.Editor.FlatColorPicker.MaskedTextBox.MultiColumnComboBox.MultiSelect.NumericTextBox.RadioGroup.Rating.Slider.Switch.TimePicker.DropDownList.TextBox.TextArea.Captcha.Signature.TimeDurationPicker.OTPInput.Upload`.split(`.`),C={hidden:function(t,n){let r=v(n);e(`<input type="hidden"/>`).attr(r).appendTo(t)},number:function(t,r){let i=v(r);e(`<input type="text"/>`).attr(i).appendTo(t).kendoNumericTextBox(a({},r.editorOptions,{format:r.format})),e(`<span `+n.attr(`for`)+`="`+r.field+`" class="k-invalid-msg k-hidden"/>`).appendTo(t)},file:function(t,r){let i=v(r);e(`<input type="file"/>`).attr(i).appendTo(t).kendoUpload(a({},r.editorOptions)),e(`<span `+n.attr(`for`)+`="`+r.field+`" class="k-invalid-msg k-hidden"/>`).appendTo(t)},date:function(t,r){let i=v(r),o=r.format,s=i.min,c=i.max;o&&=n._extractFormat(o),i[n.attr(`format`)]=o,e(`<input type="text"/>`).attr(i).appendTo(t).kendoDatePicker(a({},r.editorOptions,{format:r.format,min:s,max:c})),e(`<span `+n.attr(`for`)+`="`+r.field+`" class="k-invalid-msg k-hidden"/>`).appendTo(t)},string:function(t,n){var r=v(n);e(`<input type="text"/>`).attr(r).appendTo(t).kendoTextBox(n.editorOptions)},boolean:function(t,r){var i=v(r),a=e(`<input type="checkbox" />`).attr(i).appendTo(t).kendoCheckBox(r.editorOptions);e(`<span `+n.attr(`for`)+`="`+r.field+`" class="k-invalid-msg k-hidden"/>`).appendTo(t),E(a,t,r)},values:function(t,r){var i=v(r),a=n.stringify(b(r.values));e(`<select `+n.attr(`text-field`)+`="text"`+n.attr(`value-field`)+`="value"`+n.attr(`source`)+`='`+(a&&a.replace(/\'/g,`'`))+`'`+n.attr(`size`)+`="`+r.editorOptions.size+`"`+n.attr(`role`)+`="dropdownlist"/>`).attr(i).appendTo(t),e(`<span `+n.attr(`for`)+`="`+r.field+`" class="k-invalid-msg k-hidden"/>`).appendTo(t)},kendoEditor:function(t,n){var r=v(n),i=n.editor,a=`kendo`+i,o=n.editorOptions;E(e(x(i,o)).attr(r).appendTo(t)[a](o),t,n)}},w={number:function(t,n){let r=v(n);r=y(t,r),e(`<input type="number"/>`).attr(r).appendTo(t)},file:function(t,r){let i=v(r);i=y(t,i),e(`<input type="file"/>`).attr(i).appendTo(t).kendoUpload(a({},r.editorOptions)),e(`<span `+n.attr(`for`)+`="`+r.field+`" class="k-invalid-msg k-hidden"/>`).appendTo(t)},date:function(t,n){let r=v(n);r=y(t,r),e(`<input type="date"/>`).attr(r).appendTo(t)},string:function(t,n){let r=v(n);r=y(t,r),e(`<input type="text" />`).attr(r).appendTo(t)},boolean:function(t,n){var r=v(n);r=y(t,r),e(`<input type="checkbox" />`).attr(r).appendTo(t)},values:function(t,n){let r=v(n),i=n.values,a=e(`<select />`);for(var o in r=y(t,r),i)e(`<option value="`+i[o].value+`">`+i[o].text+`</option>`).appendTo(a);a.attr(r).appendTo(t)}};function T(e,t){var n=e&&e.validation||{},r,i;for(r in n)i=n[r],s(i)&&i.value&&(i=i.value),o(i)&&(t[r]=i)}function E(t,n,r){r&&r.shouldRenderHidden&&(t.val(!0),n.append(e(`<input type='hidden' name='`+r.field+`' value='false' data-skip='true' data-validate='false'/>`)))}var D=i.extend({init:function(e,t){var n=this;t.target&&t.target.pane&&(n._isMobile=!0),i.fn.init.call(n,e,t),n._validateProxy=n._validate.bind(n),n.refresh()},events:[p],options:{name:`Editable`,editors:C,mobileEditors:w,clearContainer:!0,validateOnBlur:!0,validationSummary:!1,errorTemplate:f,skipFocus:!1,size:t},editor:function(t,r){var i=this,o=i._isMobile?w:i.options.editors,c=s(t),l=c?t.field:t,u=i.options.model||{},f=c&&t.values?`values`:g(r),p=c&&typeof t.editor==`string`&&t.editor===`hidden`,m=c&&!p&&t.editor,h=c&&e.inArray(t.editor,S)!==-1,_=m?t.editor:o[p?`hidden`:f],v=i.element.find(`[`+n.attr(`container-for`)+`=`+l.replace(d,`\\$1`)+`]`),y;_||=o.string,h?_=o.kendoEditor:m&&typeof t.editor==`string`&&(_=function(e){e.append(t.editor)}),c?(t.editorOptions||={},t.editorOptions=a({},{size:i.options.size},t.editorOptions),y=t):y={field:l,editorOptions:{size:i.options.size}},v=v.length?v:i.element,_(v,a(!0,{},y,{model:u}))},_validate:function(t){var r=this,i,a=t.value,o=r._validationEventInProgress,s={},c=n.attr(`bind`),l=t.field.replace(d,`\\$1`),u=RegExp(`(value|checked)\\s*:\\s*`+l+`\\s*(,|$)`);s[t.field]=t.value,i=e(`:input[`+c+`*="`+l+`"]`,r.element).filter(`[`+n.attr(`validate`)+`!='false']`).filter(function(){return u.test(e(this).attr(c))}),i.length>1&&(i=i.filter(function(){var t=e(this);return!t.is(`:radio`)||t.val()==a}));try{r._validationEventInProgress=!0,(!r.validatable.validateInput(i)||!o&&r.trigger(p,{values:s}))&&t.preventDefault()}finally{r._validationEventInProgress=!1}},end:function(){return this.validatable.validate()},destroy:function(){var e=this;i.fn.destroy.call(e),e.options.model.unbind(`set`,e._validateProxy),e.options.model.unbind(m,e._validateProxy),n.unbind(e.element),e.validatable&&e.validatable.destroy(),n.destroy(e.element),e.element.removeData(`kendoValidator`),e.element.is(`[`+n.attr(`role`)+`=editable]`)&&e.element.removeAttr(n.attr(`role`))},refresh:function(){var e=this,r,i,a=e.options.fields||[],o=e._container=e.options.clearContainer?e.element.empty():e.element,c=e.options.model||{},l={},u,d,f,p,h;for(Array.isArray(a)||(a=[a]),r=0,i=a.length;r<i;r++)u=a[r],d=s(u),f=d?u.field:u,p=(c.fields||c)[f],T(p,l),e.editor(u,p);if(!i)for(f in h=c.fields||c,h)T(h[f],l);_(o),e.validatable&&e.validatable.destroy(),n.bind(o,e.options.model),e.options.validateOnBlur&&(e.options.model.unbind(`set`,e._validateProxy).bind(`set`,e._validateProxy),e.options.model.unbind(m,e._validateProxy).bind(m,e._validateProxy)),e.validatable=new n.ui.Validator(o,{validateOnBlur:e.options.validateOnBlur,validationSummary:e.options.validationSummary,errorTemplate:e.options.errorTemplate||t,rules:l}),e.options.skipFocus||queueMicrotask(()=>{e._focusEditor()})},_focusEditor:function(){this._container.find(`:kendoFocusable`).eq(0).trigger(`focus`)}});D.antiForgeryTokenName=`__RequestVerificationToken`,r.plugin(D)})(window.kendo.jQuery);var m=kendo;e.__meta__=p,e.default=m});
//# sourceMappingURL=kendo.editable.min.js.map