UNPKG

surveyjs-widgets

Version:

Custom widgets for the SurveyJS library

3 lines 3.23 kB
/*! For license information please see icheck.min.js.LICENSE.txt */ !function(e,a){"object"==typeof exports&&"object"==typeof module?module.exports=a():"function"==typeof define&&define.amd?define("widgets/icheck",[],a):"object"==typeof exports?exports["widgets/icheck"]=a():e["widgets/icheck"]=a()}(self,(()=>(()=>{"use strict";var e={d:(a,t)=>{for(var i in t)e.o(t,i)&&!e.o(a,i)&&Object.defineProperty(a,i,{enumerable:!0,get:t[i]})},o:(e,a)=>Object.prototype.hasOwnProperty.call(e,a),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},a={};function t(e){return"string"==typeof e?(e||"").replace(/(['])/g,"\\$1"):e}function i(e,a){a=a||window.$;var i={className:"iradio_square-blue",checkboxClass:"iradio_square-blue",radioClass:"iradio_square-blue",name:"icheck",widgetIsLoaded:function(){return"function"==typeof a&&!!a.fn.iCheck},isFit:function(e){var a=e.getType();return"radiogroup"===a||"checkbox"===a||"matrix"===a},isDefaultRender:!0,afterRender:function(e,i){var r=this,o=a(i);function n(e,a){if(!Array.isArray(e))return-1;for(var t=0;t<e.length;t++){if(e[t]==a)return t;if(e[t]&&e[t].toString().toLowerCase()==a)return t}return-1}o.find(".sv-item__decorator").hide(),o.find("input").data({iCheck:void 0});var c=!1,l=function(){var a=o.find("input");a.iCheck({checkboxClass:e.checkboxClass||r.checkboxClass||r.className,radioClass:e.radioClass||r.radioClass||r.className}),a.on("ifChecked",(function(a){if(!c)if("matrix"===e.getType())e.generatedVisibleRows.forEach((function(e,t,i){e.fullName===a.target.name&&(e.value=a.target.value)}));else if("checkbox"===e.getType()){var t=e.value||[];-1===n(t,a.target.value)&&(e.value=t.concat([a.target.value]))}else e.value=a.target.value})),a.on("ifUnchecked",(function(a){if(!c&&"checkbox"===e.getType()){var t=(e.value||[]).slice(),i=n(t,a.target.value);i>=0&&(t.splice(i,1),e.value=t)}}))};function u(e){e.iCheck("uncheck"),e[0].parentElement.classList.remove("checked")}var s=function(){if(c=!0,"matrix"!==e.getType()){var r=e.value;if(Array.isArray(r)||(r=[r]),"checkbox"==e.getType()){var l=e.value;e.visibleChoices.forEach((function(e){var a=o.find("input[value='"+t(e.value)+"']");a&&(n(l,e.value)>-1?a.iCheck("check"):a[0].checked&&(a.removeAttr("checked"),a.parent().hasClass("checked")?u(a):setTimeout((function(){u(a)}))))}))}else r.forEach((function(e){o.find("input[value='"+t(e)+"']").iCheck("check")}))}else e.generatedVisibleRows.forEach((function(e,r,o){e.value&&a(i).find("input[name='"+e.fullName+"'][value='"+t(e.value)+"']").iCheck("check")}));c=!1};l(),e.visibleChoicesChangedCallback=function(){l(),o.find(".sv-item__decorator").hide()},e.valueChangedCallback=s,s()},willUnmount:function(e,t){a(t).find("input").iCheck("destroy"),e.visibleChoicesChangedCallback=null}};e.Serializer.addProperty("radiogroup",{name:"radioClass",category:"general"}),e.Serializer.addProperty("checkbox",{name:"checkboxClass",category:"general"}),e.CustomWidgetCollection.Instance.addCustomWidget(i,"type")}e.r(a),e.d(a,{default:()=>r}),"undefined"!=typeof Survey&&i(Survey,window.jQuery);const r=i;return a})())); //# sourceMappingURL=icheck.min.js.map