UNPKG

surveyjs-widgets

Version:

Custom widgets for the SurveyJS library

3 lines 3.57 kB
/*! For license information please see pretty-checkbox.min.js.LICENSE.txt */ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("widgets/pretty-checkbox",[],t):"object"==typeof exports?exports["widgets/pretty-checkbox"]=t():e["widgets/pretty-checkbox"]=t()}(self,(()=>(()=>{"use strict";var e={d:(t,a)=>{for(var n in a)e.o(a,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:a[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};function a(e){var t={settings:{supportedTypes:["radiogroup","checkbox","boolean"],radiogroup:{rootClass:"pretty p-default p-round",inputType:"radio",states:[{stateClass:"state p-success",addOn:""}]},checkbox:{rootClass:"pretty p-default",inputType:"checkbox",states:[{stateClass:"state p-success",addOn:""}]},boolean:{rootClass:"pretty p-icon p-default p-has-indeterminate",inputType:"checkbox",states:[{stateClass:"state p-success",addOn:""},{stateClass:"state p-success p-is-indeterminate",iconClass:"icon mdi mdi-minus",addOn:""}]}},name:"pretty-checkbox",activatedBy:"property",widgetIsLoaded:function(){return!0},htmlTemplate:"<fieldset></fieldset>",isFit:function(e){var a=-1!==t.settings.supportedTypes.indexOf(e.getType());return"property"===t.activatedBy?"prettycheckbox"===e.renderAs&&a:"type"===t.activatedBy&&a},activatedByChanged:function(e){this.widgetIsLoaded()&&(t.activatedBy=e)},isDefaultRender:!1,afterRender:function(e,t){var a={},n=e.getType(),o=this.settings[n],d="checkbox"===n,i="radiogroup"===n,s="boolean"===n,c=!1,l=function(t){c=!0;try{var a=arguments[0].target,n=a.value,o=a.checked;if(d){var s=e.createValueCopy()||[],l=s.indexOf(n);o?-1===l&&s.push(n):-1!==l&&s.splice(l,1),e.value=s}else e.value=i?n:o}finally{c=!1}},r=e.colCount>0?100/e.colCount+"%":"";(s?[{locText:e.locTitle,value:!!e.value}]:e.visibleChoices).forEach((function(i,c){var u=document.createElement("input");u.type=o.inputType,u.name=e.name+(d?""+c:""),u.onchange=l,u.value=i.value,s&&null===e.value&&(u.indeterminate="indeterminate"===e.defaultValue);var p=document.createElement("div");p.className=o.rootClass,p.appendChild(u),o.states.forEach((function(e){var t=document.createElement("div");if(t.className=e.stateClass,e.iconClass){var a=document.createElement("i");a.className=e.iconClass,t.appendChild(a)}var n=document.createElement("label");i.locText.hasHtml?n.innerHTML=i.locText.html:n.textContent=i.locText.renderedText,t.appendChild(n),p.appendChild(t),e.addOn&&t.insertAdjacentHTML("afterbegin",e.addOn)}));var f=document.createElement("div");f.className="sv_cw_pretty_checkbox_"+n,f.style.display="inline-block",f.style.width=r,f.appendChild(p),t.appendChild(f),a[i.value]=u}));var u=function(e){if(!c){var t=e||[];(i||s)&&(t=[e&&e.toString()]),Object.values(a).forEach((function(e){-1!==t.indexOf(e.value)?e.setAttribute("checked",void 0):e.removeAttribute("checked")}))}},p=function(){Object.values(a).forEach((function(t){e.isReadOnly?t.setAttribute("disabled",!0):t.removeAttribute("disabled")}))};e.valueChangedCallback=u,e.readOnlyChangedCallback=p,u(e.value),p()},willUnmount:function(e,t){e.valueChangedCallback=void 0,e.readOnlyChangedCallback=void 0}};e.CustomWidgetCollection.Instance.addCustomWidget(t,"property")}e.r(t),e.d(t,{default:()=>n}),"undefined"!=typeof Survey&&a(Survey);const n=a;return t})())); //# sourceMappingURL=pretty-checkbox.min.js.map