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) 5.96 kB
this.primereact=this.primereact||{},this.primereact.accordion=function(e,t,r,n,a,o){"use strict";function l(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var i=l(t);function c(){return c=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},c.apply(this,arguments)}function s(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function p(e){if(Array.isArray(e))return u(e)}function d(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function f(e,t){if(e){if("string"==typeof e)return u(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?u(e,t):void 0}}function b(){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){if(Array.isArray(e))return e}function y(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,o=[],l=!0,i=!1;try{for(r=r.call(e);!(l=(n=r.next()).done)&&(o.push(n.value),!t||o.length!==t);l=!0);}catch(e){i=!0,a=e}finally{try{l||null==r.return||r.return()}finally{if(i)throw a}}return o}}function h(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function v(e,t){return m(e)||y(e,t)||f(e,t)||h()}function g(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function O(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?g(Object(r),!0).forEach((function(t){s(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var j=function(){},N=function(e){return e&&"AccordionTab"===e.props.__TYPE},E=i.forwardRef((function(e,t){var l=v(i.useState(e.id),2),s=l[0],u=l[1],m=v(i.useState(e.activeIndex),2),y=m[0],h=m[1],g=i.useRef(null),T=e.onTabChange?e.activeIndex:y,P=function(t,r,n){if(!r.props.disabled){var a=S(n),o=null;if(e.multiple){var l=T||[];o=a?l.filter((function(e){return e!==n})):[].concat(p(c=l)||d(c)||f(c)||b(),[n])}else o=a?null:n;var i=a?e.onTabClose:e.onTabOpen;i&&i({originalEvent:t,index:n}),e.onTabChange?e.onTabChange({originalEvent:t,index:o}):h(o)}var c;t.preventDefault()},S=function(t){return e.multiple?T&&T.some((function(e){return e===t})):T===t};if(i.useImperativeHandle(t,(function(){return{props:e,getElement:function(){return g.current}}})),a.useMountEffect((function(){s||u(o.UniqueComponentId())})),!s)return null;var I=function(t,n,a){var l=O(O({},t.props.style||{}),t.props.headerStyle||{}),c=o.classNames("p-accordion-header",{"p-highlight":n,"p-disabled":t.props.disabled},t.props.headerClassName,t.props.className),u=s+"_header_"+a,p=s+"_content_"+a,d=t.props.disabled?-1:t.props.tabIndex,f=t.props.headerTemplate?o.ObjectUtils.getJSXElement(t.props.headerTemplate,t.props):i.createElement("span",{className:"p-accordion-header-text"},t.props.header),b=o.IconUtils.getJSXIcon(n?e.collapseIcon:e.expandIcon,{className:"p-accordion-toggle-icon"},{props:e,selected:n}),m=r.ariaLabel(n?"collapseLabel":"expandLabel");return i.createElement("div",{className:c,style:l},i.createElement("a",{href:"#"+p,id:u,className:"p-accordion-header-link","aria-controls":p,role:"tab","aria-expanded":n,onClick:function(e){return P(e,t,a)},tabIndex:d,"aria-label":m},b,f))},_=function(t,r,a){var l=O(O({},t.props.style||{}),t.props.contentStyle||{}),c=o.classNames("p-toggleable-content",t.props.contentClassName,t.props.className),u=s+"_content_"+a,p=s+"_header_"+a,d=i.createRef();return i.createElement(n.CSSTransition,{nodeRef:d,classNames:"p-toggleable-content",timeout:{enter:1e3,exit:450},in:r,unmountOnExit:!0,options:e.transitionOptions},i.createElement("div",{ref:d,id:u,className:c,style:l,role:"region","aria-labelledby":p},i.createElement("div",{className:"p-accordion-content"},t.props.children)))},w=function(e,t){if(N(e)){var r=s+"_"+t,n=S(t),a=o.ObjectUtils.findDiffKeys(e.props,j.defaultProps),l=I(e,n,t),u=_(e,n,t),p=o.classNames("p-accordion-tab",{"p-accordion-tab-active":n});return i.createElement("div",c({key:r,className:p},a),l,u)}return null},x=o.ObjectUtils.findDiffKeys(e,E.defaultProps),A=o.classNames("p-accordion p-component",e.className),C=i.Children.map(e.children,w);return i.createElement("div",c({id:s,ref:g,className:A,style:e.style},x),C)}));return j.displayName="AccordionTab",j.defaultProps={__TYPE:"AccordionTab",className:null,contentClassName:null,contentStyle:null,disabled:!1,header:null,headerClassName:null,headerStyle:null,headerTemplate:null,style:null,tabIndex:0},E.displayName="Accordion",E.defaultProps={__TYPE:"Accordion",id:null,activeIndex:null,className:null,style:null,multiple:!1,expandIcon:"pi pi-chevron-right",collapseIcon:"pi pi-chevron-down",transitionOptions:null,onTabOpen:null,onTabClose:null,onTabChange:null},e.Accordion=E,e.AccordionTab=j,Object.defineProperty(e,"__esModule",{value:!0}),e}({},React,primereact.api,primereact.csstransition,primereact.hooks,primereact.utils);