Files
2022-11-04 13:24:24 +02:00

27 lines
13 KiB
JavaScript
Executable File

/**
* Kendo UI v2021.1.224 (http://www.telerik.com/kendo-ui)
* Copyright 2021 Progress Software Corporation and/or one of its subsidiaries or affiliates. All rights reserved.
*
* Kendo UI commercial licenses may be obtained at
* http://www.telerik.com/purchase/license-agreement/kendo-ui-complete
* If you do not own a commercial license, this file shall be governed by the trial license terms.
*/
!function(e,define){define("kendo.form.min",["kendo.editable.min"],e)}(function(){return function(e,t){var i=window.kendo,a=i.ui,l=".kendoForm",r=a.Widget,n=e.extend,o=e.proxy,d="validate",s="validateField",f="validateInput",p="change",u="click"+l,m="submit",c="clear",v="max-width",b="set",g="equalSet",_="group",h="aria-describedby",y="data-stop",k="data-role",w="editable",C="form",F=".",T={form:"k-widget k-form",horizontal:"k-form-horizontal",vertical:"",field:"k-form-field",fieldsContainer:"k-form-fields-container",fieldWrap:"k-form-field-wrap",fieldError:"k-form-field-error",fieldHint:"k-form-hint",fieldset:"k-form-fieldset",layout:"k-form-layout",legend:"k-form-legend",label:"k-label k-form-label",optional:"k-label-optional",buttonsContainer:"k-form-buttons",buttonsEnd:"k-buttons-end",submit:"k-form-submit",clear:"k-form-clear",invalid:"k-invalid",hidden:"k-hidden"},E={horizontal:"horizontal",vertical:"vertical"},S=r.extend({init:function(e,t){var a=this;r.fn.init.call(a,e,t),a.options=i.deepExtend({},a.options,t),a._wrapper(),a._setFields(),a._setModel(),a._renderContainers(),a._renderButtons(),a._editable(),a._renderFieldsHints(),a._setEvents()},events:[s,d,p,m,c],options:{name:"Form",orientation:E.vertical,validatable:{validateOnBlur:!0,validationSummary:!1,errorTemplate:null},buttonsTemplate:null,messages:{submit:"Submit",clear:"Clear",optional:"(Optional)"},layout:"",grid:{},formData:{},items:[],formatLabel:null,focusFirst:!1},_fieldTemplate:"<div class='#:styles.field# #if (colSpan) { # k-colspan-#:colSpan# # } #'># if (label) { # <label class='#:styles.label#' for='#:id#' id='#:id#-form-label'># if (typeof label.encoded != 'undefined' && label.encoded === false) {##= label.text || label ## } else { ##: label.text || label ## } ## if (label.optional) { # <span class='#:styles.optional#'>#:optional#</span> #}#</label># } #<div class='k-form-field-wrap' data-container-for='#:field#'></div></div>",_groupTemplate:"<fieldset class='#:styles.fieldset# #if (colSpan) { # k-colspan-#:colSpan# # }#'><legend class='#:styles.legend#'>#:label.text || label #</legend></fieldset>",_buttonsTemplate:"<button class='k-button k-primary #:styles.submit#' type='submit'>#:messages.submit#</button><button class='k-button #:styles.clear#'>#:messages.clear#</button>",_errorTemplate:"<span class='k-form-error' id='#=field#-form-error'><div>#=message#</div></span>",_hintTemplate:"<div class='k-form-hint' id='#=id#-form-hint'><span>#=message#</span></div>",_wrapper:function(){var e=this,t=e.options,i=S.styles,a=t.width,l=t.height;e.wrapper=e.element.addClass(i.form).addClass(i[t.orientation]),l&&e.wrapper.height(l),a&&e.wrapper.css(v,a),e.layoutWrapper=e._setupLayoutContainer(e.wrapper,{grid:t.grid,layout:t.layout})},_flattenFields:function(e){for(var t=[].concat(e),i=t.shift(),a=[],l=[].push;i;)i.items?l.apply(t,i.items):l.call(a,i),i=t.shift();return a},_defaultLabel:function(e){var t=this,a=t.options.formatLabel;if(e.length)return i.isFunction(a)?a(e):e.split(/(.*[a-z])(?=[A-Z])/).join(" ").trim()+":"},_formatLabel:function(i,a){var l=this,r=e.isPlainObject(a)?a.text:a;return r!==t?a:l._defaultLabel(i)},_defaultFields:function(){var e,t,i=this,a=i.options,l=Object.keys(a.formData||{}),r=a.items||{},n=[];if(r.length)return r;for(t=0;t<l.length;t+=1)e=l[t],n.push({field:e,id:e});return n},_setFields:function(){var t,l,r,o,d,s,f=this,p=f._flattenFields(f._defaultFields()),u=f.options.formData||{};f._fields=[];for(s in p)t=p[s],l=u[t.field],r="string"==typeof t.editor?t.editor:e.type(l?i.parseDate(""+l)||l:l),o=i.isFunction(t.editor)?t.editor:a.Editable.fn.options.editors[r]?"":t.editor,d={"aria-labelledby":t.id||t.field+"-form-label"},t=n(!0,{},t,{id:t.id||t.field,name:t.name||t.field,type:r,editor:o,attributes:d}),f._fields[s]=t},_setModel:function(){var e=this,t=e.options,a=t.formData||{},l=i.data.Model.define({fields:e._fields});e._model=new l(a)},_editable:function(){var e=this,t=e.options,i=e.options.validatable;e._addEditableMvvmAttributes(),e.editable=e.wrapper.kendoEditable({model:e._model,fields:e._fields||[],validateOnBlur:i.validateOnBlur,validationSummary:i.validationSummary,errorTemplate:i.errorTemplate||e._errorTemplate,clearContainer:!1,skipFocus:!t.focusFirst,target:e}).getKendoEditable(),e.validator=e.editable.validatable,e._removeEditableMvvmAttributes()},_addEditableMvvmAttributes:function(){this.wrapper.attr(k,w)},_removeEditableMvvmAttributes:function(){this.wrapper.attr(y,!0).attr(k,C)},_getItemTemplate:function(e){var t,i=this;return t=e===_?i._groupTemplate:i._fieldTemplate},_renderField:function(e){var t,a=this,l=S.styles;return t=i.template(a._fieldTemplate)({styles:l,id:e.id||e.field||"",field:e.field||"",label:a._formatLabel(e.field,e.label),colSpan:e.colSpan||"",optional:a.options.messages.optional})},_toggleFieldErrorState:function(e,t){var i=e.closest(F+T.field);i.length&&i.toggleClass(T.fieldError,t)},_renderFieldsHints:function(){var t,a,l,r,n,o=this,d=o._fields;for(n=0;n<d.length;n+=1)t=d[n],l=o.wrapper.find("[name='"+t.name+"']"),l&&t.hint&&(r=e(i.template(o._hintTemplate)({message:t.hint||"",id:t.id})),o._associateHintContainer(l,r.attr("id")),a=i.widgetInstance(l),a&&(l=a.wrapper),o.validator._errorsByName(t.name).length&&(r.toggleClass(T.hidden),i.removeAttribute(l,h,r.attr("id"))),r.insertAfter(l))},_associateHintContainer:function(e,t){var a=i.getWidgetFocusableElement(e);a&&t&&i.toggleAttribute(a,h,t)},_toggleHint:function(e,t){var i,a=this,l=e.closest(F+T.field);l.length&&(i=l.find(F+T.fieldHint),i.length&&(i.toggleClass(T.hidden,t),a._associateHintContainer(e,i.attr("id"))))},_renderGroup:function(t){var a,l,r,n=this,o=t.type,d=l=e(i.template(n._getItemTemplate(o))({styles:T,label:t.label||"",colSpan:t.colSpan}));for(d=n._setupLayoutContainer(l,{grid:t.grid,layout:t.layout})||l,r=0;r<t.items.length;r+=1)a=t.items[r],d.append(n._renderField(a));return l},_renderContainers:function(){var e,t,i,a,l=this,r=l._defaultFields(),n="grid"===l.options.layout,o=n?l.layoutWrapper:l.wrapper;for(a=0;a<r.length;a+=1)e=r[a],t=e.type,i=t===_?l._renderGroup(e):l._renderField(e),o.append(i)},_renderButtons:function(){var t,a=this,l=a.wrapper,r=a.options,n=r.messages,o=S.styles,d=r.orientation===E.horizontal,s=l.find(F+o.buttonsContainer);s.length||(s=e("<div />").addClass(o.buttonsContainer).addClass(d?o.buttonsEnd:"")),t=null!==r.buttonsTemplate?r.buttonsTemplate:a._buttonsTemplate,s.append(i.template(t)({styles:o,messages:n})),a.element.append(s)},_setupLayoutContainer:function(t,i){var a,l=i.layout,r=i.grid,n=[];return"string"==typeof l&&""!==l&&(a=e("<div></div>").appendTo(t).addClass(T.layout),n.push("k-d-"+l)),"grid"===l&&"object"==typeof r&&("number"==typeof r.cols?n.push("k-grid-cols-"+r.cols):"string"==typeof r.cols&&a.css("grid-template-columns",r.cols),"number"!=typeof r.gutter&&"string"!=typeof r.gutter||a.css("grid-gap",r.gutter)),a&&a.addClass(n.join(" ")),a},_setEvents:function(){var e=this,t=e.validator;t.bind(f,o(e._validateField,e)).bind(d,o(e._validate,e)),e.wrapper.on(m+l,o(e._submit,e)).on(c+l,o(e._clear,e)).on(u+l,F+T.clear,o(e._clear,e)),e._model.bind(p,o(e._change,e))},_validateField:function(e){var t=this,i={model:t._model.toJSON(),valid:e.valid,field:e.field,error:e.error,input:e.input};t._toggleFieldErrorState(i.input,!i.valid),t._toggleHint(i.input,!i.valid),t.trigger(s,i)&&e.preventDefault()},_validate:function(e){var t=this,i={model:t._model.toJSON(),valid:e.valid,errors:e.errors};t.trigger(d,i)},_change:function(e){var t=this,i=e.field,a={field:i,value:t._model[i]};t.trigger(p,a)},_submit:function(e){var t=this,i=t._model.toJSON();t.trigger(m,{model:i})&&e.preventDefault()},_clear:function(e){var t=this;e.preventDefault(),t.clear(),t.trigger(c)},validate:function(){var e=this,t=e.validator;if(t)return t.validate()},clear:function(){var e,t,a,l,r=this,n=r._fields,o=r._model,d=r.editable,s=r.validator.options.validateOnBlur;for(r.validator.reset(),s&&o.unbind(b).unbind(g),e=0;e<n.length;e+=1)t=n[e].field,a=r.wrapper.find("[name='"+t+"']"),l=i.widgetInstance(a),a.val(""),l&&l.value(null),r._toggleHint(a,!1),"boolean"==typeof o[t]?(a.val("false"),o.set(t,!1)):o.set(t,null);r.wrapper.find(F+T.fieldError).removeClass(T.fieldError),s&&o.bind(b,d._validateProxy).bind(g,d._validateProxy)},setOptions:function(e){var t=this;t.destroy(),t.wrapper.removeClass(T.horizontal).removeAttr(y).empty(),t.init(t.element,e)},destroy:function(){var e=this;e.wrapper.off(l),r.fn.destroy.call(e.editable),r.fn.destroy.call(e),e.editable&&(e.editable.destroy(),e.editable=null)}});a.plugin(S),n(!0,S,{styles:T})}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(e,t,i){(i||t)()});
//# sourceMappingURL=kendo.form.min.js.map