UNPKG

primereact

Version:

PrimeReact is an open source UI library for React featuring a rich set of 80+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with Prime

2 lines (1 loc) 6.04 kB
this.primereact=this.primereact||{},this.primereact.chips=function(e,t,n,r,l){"use strict";function a(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var i=a(t);function o(){return o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},o.apply(this,arguments)}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function c(e){if(Array.isArray(e))return u(e)}function s(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function p(e,t){if(e){if("string"==typeof e)return u(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?u(e,t):void 0}}function f(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function m(e){return c(e)||s(e)||p(e)||f()}function d(e){if(Array.isArray(e))return e}function v(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,l,a=[],i=!0,o=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){o=!0,l=e}finally{try{i||null==n.return||n.return()}finally{if(o)throw l}}return a}}function y(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var h=i.memo(i.forwardRef((function(e,t){var a,u,c=i.useState(!1),s=(u=2,d(a=c)||v(a,u)||p(a,u)||y()),f=s[0],b=s[1],g=i.useRef(null),O=i.useRef(null),w=i.useRef(e.inputRef),E=function(t,n){if(!e.disabled||!e.readOnly){var r=m(e.value),l=r.splice(n,1);S(l,n)&&(e.onRemove&&e.onRemove({originalEvent:t,value:l}),e.onChange&&e.onChange({originalEvent:t,value:r,stopPropagation:function(){},preventDefault:function(){},target:{name:e.name,id:e.id,value:r}}))}},j=function(t,n,r){if(n&&n.trim().length){var l=e.value?m(e.value):[];if(e.allowDuplicate||-1===l.indexOf(n)){var a=!0;e.onAdd&&(a=e.onAdd({originalEvent:t,value:n})),!1!==a&&l.push(n)}P(t,l,r)}},D=function(){l.DomHandler.focus(w.current)},k=function(t){var r=t.target.value,l=e.value||[];if(e.onKeyDown&&e.onKeyDown(t),!t.defaultPrevented)switch(t.which){case 8:0===w.current.value.length&&l.length>0&&E(t,l.length-1);break;case 13:r&&r.trim().length&&(!e.max||e.max>l.length)&&j(t,r,!0);break;default:e.keyfilter&&n.KeyFilter.onKeyPress(t,e.keyfilter),N()?t.preventDefault():","===e.separator&&188===t.which&&j(t,r,!0)}},P=function(t,n,r){e.onChange&&e.onChange({originalEvent:t,value:n,stopPropagation:function(){},preventDefault:function(){},target:{name:e.name,id:e.id,value:n}}),w.current.value="",r&&t.preventDefault()},R=function(t){if(e.separator){var r=(t.clipboardData||window.clipboardData).getData("Text");if(e.keyfilter&&n.KeyFilter.onPaste(t,e.keyfilter),r){var l=e.value||[],a=r.split(e.separator);a=a.filter((function(t){return(e.allowDuplicate||-1===l.indexOf(t))&&t.trim().length})),l=[].concat(m(l),m(a)),P(t,l,!0)}}},x=function(t){b(!0),e.onFocus&&e.onFocus(t)},A=function(t){if(e.addOnBlur){var n=t.target.value,r=e.value||[];n&&n.trim().length&&(!e.max||e.max>r.length)&&j(t,n,!0)}b(!1),e.onBlur&&e.onBlur(t)},N=function(){return e.max&&e.value&&e.max===e.value.length},C=w.current&&w.current.value,I=i.useMemo((function(){return l.ObjectUtils.isNotEmpty(e.value)||l.ObjectUtils.isNotEmpty(C)}),[e.value,C]),S=function(t,n){return l.ObjectUtils.getPropValue(e.removable,{value:t,index:n,props:e})};i.useImperativeHandle(t,(function(){return{props:e,getElement:function(){return g.current},getInput:function(){return w.current}}})),i.useEffect((function(){l.ObjectUtils.combinedRefs(w,e.inputRef)}),[w,e.inputRef]);var K=function(t,n){return e.disabled||e.readOnly||!S(t,n)?null:i.createElement("span",{className:"p-chips-token-icon pi pi-times-circle",onClick:function(e){return E(e,n)}})},T=function(t,n){var r=e.itemTemplate?e.itemTemplate(t):t,l=i.createElement("span",{className:"p-chips-token-label"},r),a=K(t,n);return i.createElement("li",{key:n,className:"p-chips-token p-highlight"},l,a)},U=l.ObjectUtils.isNotEmpty(e.tooltip),B=l.ObjectUtils.findDiffKeys(e,h.defaultProps),F=l.ObjectUtils.reduceKeys(B,l.DomHandler.ARIA_PROPS),_=l.classNames("p-chips p-component p-inputwrapper",{"p-inputwrapper-filled":I,"p-inputwrapper-focus":f},e.className),M=function(){var t=l.classNames("p-inputtext p-chips-multiple-container",{"p-disabled":e.disabled,"p-focus":f}),n=e.value?e.value.map(T):null,r=i.createElement("li",{className:"p-chips-input-token"},i.createElement("input",o({ref:w,id:e.inputId,placeholder:e.placeholder,type:"text",name:e.name,disabled:e.disabled||N(),onKeyDown:k,onPaste:R,onFocus:x,onBlur:A,readOnly:e.readOnly},F)));return i.createElement("ul",{ref:O,className:t,onClick:D},n,r)}();return i.createElement(i.Fragment,null,i.createElement("div",o({ref:g,id:e.id,className:_,style:e.style},B),M),U&&i.createElement(r.Tooltip,o({target:w,content:e.tooltip},e.tooltipOptions)))})));return h.displayName="Chips",h.defaultProps={__TYPE:"Chips",id:null,inputRef:null,inputId:null,name:null,placeholder:null,value:null,max:null,disabled:null,readOnly:!1,removable:!0,style:null,className:null,tooltip:null,tooltipOptions:null,ariaLabelledBy:null,separator:null,allowDuplicate:!0,itemTemplate:null,keyfilter:null,addOnBlur:null,onAdd:null,onRemove:null,onChange:null,onFocus:null,onBlur:null,onKeyDown:null},e.Chips=h,Object.defineProperty(e,"__esModule",{value:!0}),e}({},React,primereact.keyfilter,primereact.tooltip,primereact.utils);