@bigbinary/neeto-image-uploader-frontend 2.3.0 → 2.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/javascript/src/translations/en.json +2 -2
- package/dist/AssetLibrary.js +53 -32
- package/dist/AssetLibrary.js.map +1 -1
- package/dist/BasicImageUploader.js +3 -3
- package/dist/ImageUploader.js +34 -16
- package/dist/ImageUploader.js.map +1 -1
- package/dist/{ImageWithFallback-a45f3f4a.js → ImageWithFallback-1d3c6c16.js} +3 -3
- package/dist/{ImageWithFallback-a45f3f4a.js.map → ImageWithFallback-1d3c6c16.js.map} +1 -1
- package/dist/{ImageWithFallback-aacc383b.js → ImageWithFallback-da061171.js} +3 -3
- package/dist/{ImageWithFallback-aacc383b.js.map → ImageWithFallback-da061171.js.map} +1 -1
- package/dist/cjs/AssetLibrary.js +60 -39
- package/dist/cjs/AssetLibrary.js.map +1 -1
- package/dist/cjs/BasicImageUploader.js +3 -3
- package/dist/cjs/ImageUploader.js +34 -16
- package/dist/cjs/ImageUploader.js.map +1 -1
- package/dist/cjs/hooks.js +4 -3
- package/dist/cjs/hooks.js.map +1 -1
- package/dist/cjs/index.js +8 -5
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/utils.js +14 -0
- package/dist/cjs/utils.js.map +1 -0
- package/dist/hooks.js +4 -3
- package/dist/hooks.js.map +1 -1
- package/dist/{index-7f064861.js → index-69559a7a.js} +3 -1
- package/dist/index-69559a7a.js.map +1 -0
- package/dist/{index-b9963255.js → index-c128d963.js} +3 -2
- package/dist/index-c128d963.js.map +1 -0
- package/dist/index.js +7 -5
- package/dist/index.js.map +1 -1
- package/dist/query-3c31bf92.js +14 -0
- package/dist/query-3c31bf92.js.map +1 -0
- package/dist/query-dcc7b81b.js +10 -0
- package/dist/query-dcc7b81b.js.map +1 -0
- package/dist/{useImageUploader-550a5fdc.js → useImageUploader-b78deb18.js} +74 -58
- package/dist/useImageUploader-b78deb18.js.map +1 -0
- package/dist/{useImageUploader-36a03350.js → useImageUploader-b93adc31.js} +74 -55
- package/dist/useImageUploader-b93adc31.js.map +1 -0
- package/dist/{useProfileImageUpload-837e76b8.js → useProfileImageUpload-085576e5.js} +4 -4
- package/dist/useProfileImageUpload-085576e5.js.map +1 -0
- package/dist/{useProfileImageUpload-f0088c2a.js → useProfileImageUpload-51ab47be.js} +4 -4
- package/dist/useProfileImageUpload-51ab47be.js.map +1 -0
- package/dist/{utils-88cce499.js → utils-2fc0a9dc.js} +5 -4
- package/dist/utils-2fc0a9dc.js.map +1 -0
- package/dist/{utils-96eacd77.js → utils-46caa3d3.js} +5 -4
- package/dist/utils-46caa3d3.js.map +1 -0
- package/dist/utils.js +10 -0
- package/dist/utils.js.map +1 -0
- package/package.json +29 -29
- package/types.d.ts +3 -0
- package/dist/index-7f064861.js.map +0 -1
- package/dist/index-b9963255.js.map +0 -1
- package/dist/useImageUploader-36a03350.js.map +0 -1
- package/dist/useImageUploader-550a5fdc.js.map +0 -1
- package/dist/useProfileImageUpload-837e76b8.js.map +0 -1
- package/dist/useProfileImageUpload-f0088c2a.js.map +0 -1
- package/dist/utils-88cce499.js.map +0 -1
- package/dist/utils-96eacd77.js.map +0 -1
package/dist/AssetLibrary.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssetLibrary.js","sources":["../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js","../app/javascript/stylesheets/components/_modal.scss","../app/javascript/src/components/Modal/utils.js","../node_modules/react-image-crop/dist/ReactCrop.min.js","../app/javascript/src/apis/development.js","../app/javascript/src/hooks/useDevelopmentApi.js","../app/javascript/src/components/ImageEditor/hooks/useImageControls.js","../app/javascript/src/components/ImageEditor/Controls.jsx","../app/javascript/src/components/ImageEditor/index.jsx","../app/javascript/src/apis/images.js","../app/javascript/src/hooks/useAssetsApi.js","../node_modules/@bigbinary/neeto-team-members-frontend/dist/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../node_modules/bricks.js/dist/bricks.module.js","../node_modules/react-infinite-scroller/dist/InfiniteScroll.js","../node_modules/react-infinite-scroller/index.js","../node_modules/react-masonry-infinite/lib/index.js","../app/javascript/stylesheets/components/_image-library.scss","../app/javascript/src/components/ImageLibrary/InfiniteScroller.jsx","../app/javascript/src/components/ImageLibrary/Images.jsx","../app/javascript/src/apis/unsplash.js","../app/javascript/src/hooks/useUnsplashApi.js","../app/javascript/src/components/ImageLibrary/utils.js","../app/javascript/src/components/ImageLibrary/Unsplash.jsx","../app/javascript/src/components/ImageLibrary/index.jsx","../app/javascript/src/components/Modal/index.jsx"],"sourcesContent":["var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n","//Abstracts\n@import \"../abstracts/variables\";\n\n.niu-modal {\n width: $niu-modal-width !important;\n height: $niu-modal-height !important;\n max-width: $niu-modal-max-width !important;\n max-height: $niu-modal-max-height !important;\n position: relative !important;\n}\n","import { findBy } from \"neetocist\";\nimport { mergeLeft } from \"ramda\";\n\nimport { OPTIONS } from \"../constants\";\n\nexport const createOptions = (options = []) =>\n OPTIONS.map(option =>\n mergeLeft(findBy({ key: option.key }, options), option)\n );\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t(require(\"react\")):\"function\"==typeof define&&define.amd?define([\"react\"],t):\"object\"==typeof exports?exports.ReactCrop=t(require(\"react\")):e.ReactCrop=t(e.React)}(this,(e=>(()=>{\"use strict\";var t={899:t=>{t.exports=e}},n={};function o(e){var r=n[e];if(void 0!==r)return r.exports;var i=n[e]={exports:{}};return t[e](i,i.exports,o),i.exports}o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})};var r={};return(()=>{o.r(r),o.d(r,{Component:()=>u,areCropsEqual:()=>h,centerCrop:()=>d,clamp:()=>a,containCrop:()=>p,convertToPercentCrop:()=>c,convertToPixelCrop:()=>l,default:()=>u,defaultCrop:()=>i,makeAspectCrop:()=>s,nudgeCrop:()=>g});var e=o(899),t=o.n(e);function n(e){var t,o,r=\"\";if(\"string\"==typeof e||\"number\"==typeof e)r+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(o=n(e[t]))&&(r&&(r+=\" \"),r+=o);else for(t in e)e[t]&&(r&&(r+=\" \"),r+=t);return r}const i={x:0,y:0,width:0,height:0,unit:\"px\"};function a(e,t,n){return Math.min(Math.max(e,t),n)}function h(e,t){return e.width===t.width&&e.height===t.height&&e.x===t.x&&e.y===t.y&&e.unit===t.unit}function s(e,t,n,o){const r=l(e,n,o);return e.width&&(r.height=r.width/t),e.height&&(r.width=r.height*t),r.y+r.height>o&&(r.height=o-r.y,r.width=r.height*t),r.x+r.width>n&&(r.width=n-r.x,r.height=r.width/t),\"%\"===e.unit?c(r,n,o):r}function d(e,t,n){const o=l(e,t,n);return o.x=(t-o.width)/2,o.y=(n-o.height)/2,\"%\"===e.unit?c(o,t,n):o}function c(e,t,n){return\"%\"===e.unit?{...i,...e,unit:\"%\"}:{unit:\"%\",x:e.x?e.x/t*100:0,y:e.y?e.y/n*100:0,width:e.width?e.width/t*100:0,height:e.height?e.height/n*100:0}}function l(e,t,n){return e.unit?\"px\"===e.unit?{...i,...e,unit:\"px\"}:{unit:\"px\",x:e.x?e.x*t/100:0,y:e.y?e.y*n/100:0,width:e.width?e.width*t/100:0,height:e.height?e.height*n/100:0}:{...i,...e,unit:\"px\"}}function p(e,t,n,o,r,i=0,a=0,h=o,s=r){const d={...e};let c=Math.min(i,o),l=Math.min(a,r),p=Math.min(h,o),g=Math.min(s,r);t&&(t>1?(c=a?a*t:c,l=c/t,p=h*t):(l=i?i/t:l,c=l*t,g=s/t)),d.y<0&&(d.height=Math.max(d.height+d.y,l),d.y=0),d.x<0&&(d.width=Math.max(d.width+d.x,c),d.x=0);const w=o-(d.x+d.width);w<0&&(d.x=Math.min(d.x,o-c),d.width+=w);const u=r-(d.y+d.height);if(u<0&&(d.y=Math.min(d.y,r-l),d.height+=u),d.width<c&&(\"sw\"!==n&&\"nw\"!=n||(d.x-=c-d.width),d.width=c),d.height<l&&(\"nw\"!==n&&\"ne\"!=n||(d.y-=l-d.height),d.height=l),d.width>p&&(\"sw\"!==n&&\"nw\"!=n||(d.x-=p-d.width),d.width=p),d.height>g&&(\"nw\"!==n&&\"ne\"!=n||(d.y-=g-d.height),d.height=g),t){const e=d.width/d.height;if(e<t){const e=Math.max(d.width/t,l);\"nw\"!==n&&\"ne\"!=n||(d.y-=e-d.height),d.height=e}else if(e>t){const e=Math.max(d.height*t,c);\"sw\"!==n&&\"nw\"!=n||(d.x-=e-d.width),d.width=e}}return d}function g(e,t,n,o){const r={...e};return\"ArrowLeft\"===t?\"nw\"===o?(r.x-=n,r.y-=n,r.width+=n,r.height+=n):\"w\"===o?(r.x-=n,r.width+=n):\"sw\"===o?(r.x-=n,r.width+=n,r.height+=n):\"ne\"===o?(r.y+=n,r.width-=n,r.height-=n):\"e\"===o?r.width-=n:\"se\"===o&&(r.width-=n,r.height-=n):\"ArrowRight\"===t&&(\"nw\"===o?(r.x+=n,r.y+=n,r.width-=n,r.height-=n):\"w\"===o?(r.x+=n,r.width-=n):\"sw\"===o?(r.x+=n,r.width-=n,r.height-=n):\"ne\"===o?(r.y-=n,r.width+=n,r.height+=n):\"e\"===o?r.width+=n:\"se\"===o&&(r.width+=n,r.height+=n)),\"ArrowUp\"===t?\"nw\"===o?(r.x-=n,r.y-=n,r.width+=n,r.height+=n):\"n\"===o?(r.y-=n,r.height+=n):\"ne\"===o?(r.y-=n,r.width+=n,r.height+=n):\"sw\"===o?(r.x+=n,r.width-=n,r.height-=n):\"s\"===o?r.height-=n:\"se\"===o&&(r.width-=n,r.height-=n):\"ArrowDown\"===t&&(\"nw\"===o?(r.x+=n,r.y+=n,r.width-=n,r.height-=n):\"n\"===o?(r.y+=n,r.height-=n):\"ne\"===o?(r.y+=n,r.width-=n,r.height-=n):\"sw\"===o?(r.x-=n,r.width+=n,r.height+=n):\"s\"===o?r.height+=n:\"se\"===o&&(r.width+=n,r.height+=n)),r}const w={capture:!0,passive:!1};class u extends e.PureComponent{constructor(){super(...arguments),this.docMoveBound=!1,this.mouseDownOnCrop=!1,this.dragStarted=!1,this.evData={startClientX:0,startClientY:0,startCropX:0,startCropY:0,clientX:0,clientY:0,isResize:!0},this.componentRef=(0,e.createRef)(),this.mediaRef=(0,e.createRef)(),this.initChangeCalled=!1,this.state={cropIsActive:!1,newCropIsBeingDrawn:!1},this.onCropPointerDown=e=>{const{crop:t,disabled:n}=this.props,o=this.getBox();if(!t)return;const r=l(t,o.width,o.height);if(n)return;e.cancelable&&e.preventDefault(),this.bindDocMove(),this.componentRef.current.focus({preventScroll:!0});const i=e.target.dataset.ord,a=Boolean(i);let h=e.clientX,s=e.clientY,d=r.x,c=r.y;if(i){const t=e.clientX-o.x,n=e.clientY-o.y;let a=0,l=0;\"ne\"===i||\"e\"==i?(a=t-(r.x+r.width),l=n-r.y,d=r.x,c=r.y+r.height):\"se\"===i||\"s\"===i?(a=t-(r.x+r.width),l=n-(r.y+r.height),d=r.x,c=r.y):\"sw\"===i||\"w\"==i?(a=t-r.x,l=n-(r.y+r.height),d=r.x+r.width,c=r.y):\"nw\"!==i&&\"n\"!=i||(a=t-r.x,l=n-r.y,d=r.x+r.width,c=r.y+r.height),h=d+o.x+a,s=c+o.y+l}this.evData={startClientX:h,startClientY:s,startCropX:d,startCropY:c,clientX:e.clientX,clientY:e.clientY,isResize:a,ord:i},this.mouseDownOnCrop=!0,this.setState({cropIsActive:!0})},this.onComponentPointerDown=e=>{const{crop:t,disabled:n,locked:o,keepSelection:r,onChange:i}=this.props,a=this.getBox();if(n||o||r&&t)return;e.cancelable&&e.preventDefault(),this.bindDocMove(),this.componentRef.current.focus({preventScroll:!0});const h=e.clientX-a.x,s=e.clientY-a.y,d={unit:\"px\",x:h,y:s,width:0,height:0};this.evData={startClientX:e.clientX,startClientY:e.clientY,startCropX:h,startCropY:s,clientX:e.clientX,clientY:e.clientY,isResize:!0},this.mouseDownOnCrop=!0,i(l(d,a.width,a.height),c(d,a.width,a.height)),this.setState({cropIsActive:!0,newCropIsBeingDrawn:!0})},this.onDocPointerMove=e=>{const{crop:t,disabled:n,onChange:o,onDragStart:r}=this.props,i=this.getBox();if(n||!t||!this.mouseDownOnCrop)return;e.cancelable&&e.preventDefault(),this.dragStarted||(this.dragStarted=!0,r&&r(e));const{evData:a}=this;let s;a.clientX=e.clientX,a.clientY=e.clientY,s=a.isResize?this.resizeCrop():this.dragCrop(),h(t,s)||o(l(s,i.width,i.height),c(s,i.width,i.height))},this.onComponentKeyDown=e=>{const{crop:t,disabled:n,onChange:o,onComplete:r}=this.props,i=this.getBox();if(n)return;const h=e.key;let s=!1;if(!t)return;const d=this.makePixelCrop(),p=(navigator.platform.match(\"Mac\")?e.metaKey:e.ctrlKey)?u.nudgeStepLarge:e.shiftKey?u.nudgeStepMedium:u.nudgeStep;if(\"ArrowLeft\"===h?(d.x-=p,s=!0):\"ArrowRight\"===h?(d.x+=p,s=!0):\"ArrowUp\"===h?(d.y-=p,s=!0):\"ArrowDown\"===h&&(d.y+=p,s=!0),s){e.cancelable&&e.preventDefault(),d.x=a(d.x,0,i.width-d.width),d.y=a(d.y,0,i.height-d.height);const t=l(d,i.width,i.height),n=c(d,i.width,i.height);o(t,n),r&&r(t,n)}},this.onHandlerKeyDown=(e,t)=>{const{aspect:n=0,crop:o,disabled:r,minWidth:i=0,minHeight:a=0,maxWidth:s,maxHeight:d,onChange:w,onComplete:m}=this.props,y=this.getBox();if(r||!o)return;if(\"ArrowUp\"!==e.key&&\"ArrowDown\"!==e.key&&\"ArrowLeft\"!==e.key&&\"ArrowRight\"!==e.key)return;e.stopPropagation(),e.preventDefault();const x=(navigator.platform.match(\"Mac\")?e.metaKey:e.ctrlKey)?u.nudgeStepLarge:e.shiftKey?u.nudgeStepMedium:u.nudgeStep,C=p(g(l(o,y.width,y.height),e.key,x,t),n,t,y.width,y.height,i,a,s,d);if(!h(o,C)){const e=c(C,y.width,y.height);w(C,e),m&&m(C,e)}},this.onDocPointerDone=e=>{const{crop:t,disabled:n,onComplete:o,onDragEnd:r}=this.props,i=this.getBox();this.unbindDocMove(),!n&&t&&this.mouseDownOnCrop&&(this.mouseDownOnCrop=!1,this.dragStarted=!1,r&&r(e),o&&o(l(t,i.width,i.height),c(t,i.width,i.height)),this.setState({cropIsActive:!1,newCropIsBeingDrawn:!1}))},this.onDragFocus=e=>{var t;null===(t=this.componentRef.current)||void 0===t||t.scrollTo(0,0)}}get document(){return document}getBox(){const e=this.mediaRef.current;if(!e)return{x:0,y:0,width:0,height:0};const{x:t,y:n,width:o,height:r}=e.getBoundingClientRect();return{x:t,y:n,width:o,height:r}}componentDidUpdate(e){const{crop:t,onComplete:n}=this.props;if(n&&!e.crop&&t){const{width:e,height:o}=this.getBox();e&&o&&n(l(t,e,o),c(t,e,o))}}componentWillUnmount(){this.resizeObserver&&this.resizeObserver.disconnect()}bindDocMove(){this.docMoveBound||(this.document.addEventListener(\"pointermove\",this.onDocPointerMove,w),this.document.addEventListener(\"pointerup\",this.onDocPointerDone,w),this.document.addEventListener(\"pointercancel\",this.onDocPointerDone,w),this.docMoveBound=!0)}unbindDocMove(){this.docMoveBound&&(this.document.removeEventListener(\"pointermove\",this.onDocPointerMove,w),this.document.removeEventListener(\"pointerup\",this.onDocPointerDone,w),this.document.removeEventListener(\"pointercancel\",this.onDocPointerDone,w),this.docMoveBound=!1)}getCropStyle(){const{crop:e}=this.props;if(e)return{top:`${e.y}${e.unit}`,left:`${e.x}${e.unit}`,width:`${e.width}${e.unit}`,height:`${e.height}${e.unit}`}}dragCrop(){const{evData:e}=this,t=this.getBox(),n=this.makePixelCrop(),o=e.clientX-e.startClientX,r=e.clientY-e.startClientY;return n.x=a(e.startCropX+o,0,t.width-n.width),n.y=a(e.startCropY+r,0,t.height-n.height),n}getPointRegion(e){const{evData:t}=this,n=t.clientX-e.x,o=t.clientY-e.y<t.startCropY;return n<t.startCropX?o?\"nw\":\"sw\":o?\"ne\":\"se\"}resizeCrop(){const{evData:e}=this,t=this.getBox(),{aspect:n=0,minWidth:o=0,minHeight:r=0,maxWidth:i,maxHeight:a}=this.props,h=this.getPointRegion(t),s=this.makePixelCrop(),d=e.ord?e.ord:h,c=e.clientX-e.startClientX,l=e.clientY-e.startClientY,g={unit:\"px\",x:0,y:0,width:0,height:0};\"ne\"===h?(g.x=e.startCropX,g.width=c,n?(g.height=g.width/n,g.y=e.startCropY-g.height):(g.height=Math.abs(l),g.y=e.startCropY-g.height)):\"se\"===h?(g.x=e.startCropX,g.y=e.startCropY,g.width=c,g.height=n?g.width/n:l):\"sw\"===h?(g.x=e.startCropX+c,g.y=e.startCropY,g.width=Math.abs(c),g.height=n?g.width/n:l):\"nw\"===h&&(g.x=e.startCropX+c,g.width=Math.abs(c),n?(g.height=g.width/n,g.y=e.startCropY-g.height):(g.height=Math.abs(l),g.y=e.startCropY+l));const w=p(g,n,h,t.width,t.height,o,r,i,a);return n||u.xyOrds.indexOf(d)>-1?(s.x=w.x,s.y=w.y,s.width=w.width,s.height=w.height):u.xOrds.indexOf(d)>-1?(s.x=w.x,s.width=w.width):u.yOrds.indexOf(d)>-1&&(s.y=w.y,s.height=w.height),s}createCropSelection(){const{ariaLabels:e=u.defaultProps.ariaLabels,disabled:n,locked:o,renderSelectionAddon:r,ruleOfThirds:i,crop:a}=this.props,h=this.getCropStyle();if(a)return t().createElement(\"div\",{style:h,className:\"ReactCrop__crop-selection\",onPointerDown:this.onCropPointerDown,\"aria-label\":e.cropArea,tabIndex:0,onKeyDown:this.onComponentKeyDown,role:\"group\"},!n&&!o&&t().createElement(\"div\",{className:\"ReactCrop__drag-elements\",onFocus:this.onDragFocus},t().createElement(\"div\",{className:\"ReactCrop__drag-bar ord-n\",\"data-ord\":\"n\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-bar ord-e\",\"data-ord\":\"e\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-bar ord-s\",\"data-ord\":\"s\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-bar ord-w\",\"data-ord\":\"w\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-handle ord-nw\",\"data-ord\":\"nw\",tabIndex:0,\"aria-label\":e.nwDragHandle,onKeyDown:e=>this.onHandlerKeyDown(e,\"nw\"),role:\"button\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-handle ord-n\",\"data-ord\":\"n\",tabIndex:0,\"aria-label\":e.nDragHandle,onKeyDown:e=>this.onHandlerKeyDown(e,\"n\"),role:\"button\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-handle ord-ne\",\"data-ord\":\"ne\",tabIndex:0,\"aria-label\":e.neDragHandle,onKeyDown:e=>this.onHandlerKeyDown(e,\"ne\"),role:\"button\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-handle ord-e\",\"data-ord\":\"e\",tabIndex:0,\"aria-label\":e.eDragHandle,onKeyDown:e=>this.onHandlerKeyDown(e,\"e\"),role:\"button\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-handle ord-se\",\"data-ord\":\"se\",tabIndex:0,\"aria-label\":e.seDragHandle,onKeyDown:e=>this.onHandlerKeyDown(e,\"se\"),role:\"button\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-handle ord-s\",\"data-ord\":\"s\",tabIndex:0,\"aria-label\":e.sDragHandle,onKeyDown:e=>this.onHandlerKeyDown(e,\"s\"),role:\"button\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-handle ord-sw\",\"data-ord\":\"sw\",tabIndex:0,\"aria-label\":e.swDragHandle,onKeyDown:e=>this.onHandlerKeyDown(e,\"sw\"),role:\"button\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-handle ord-w\",\"data-ord\":\"w\",tabIndex:0,\"aria-label\":e.wDragHandle,onKeyDown:e=>this.onHandlerKeyDown(e,\"w\"),role:\"button\"})),r&&t().createElement(\"div\",{className:\"ReactCrop__selection-addon\",onMouseDown:e=>e.stopPropagation()},r(this.state)),i&&t().createElement(t().Fragment,null,t().createElement(\"div\",{className:\"ReactCrop__rule-of-thirds-hz\"}),t().createElement(\"div\",{className:\"ReactCrop__rule-of-thirds-vt\"})))}makePixelCrop(){const e={...i,...this.props.crop||{}},t=this.getBox();return l(e,t.width,t.height)}render(){const{aspect:e,children:o,circularCrop:r,className:i,crop:a,disabled:h,locked:s,style:d,ruleOfThirds:c}=this.props,{cropIsActive:l,newCropIsBeingDrawn:p}=this.state,g=a?this.createCropSelection():null,w=function(){for(var e,t,o=0,r=\"\";o<arguments.length;)(e=arguments[o++])&&(t=n(e))&&(r&&(r+=\" \"),r+=t);return r}(\"ReactCrop\",i,{\"ReactCrop--active\":l,\"ReactCrop--disabled\":h,\"ReactCrop--locked\":s,\"ReactCrop--new-crop\":p,\"ReactCrop--fixed-aspect\":a&&e,\"ReactCrop--circular-crop\":a&&r,\"ReactCrop--rule-of-thirds\":a&&c,\"ReactCrop--invisible-crop\":!this.dragStarted&&a&&!a.width&&!a.height});return t().createElement(\"div\",{ref:this.componentRef,className:w,style:d},t().createElement(\"div\",{ref:this.mediaRef,className:\"ReactCrop__child-wrapper\",onPointerDown:this.onComponentPointerDown},o),g)}}u.xOrds=[\"e\",\"w\"],u.yOrds=[\"n\",\"s\"],u.xyOrds=[\"nw\",\"ne\",\"se\",\"sw\"],u.nudgeStep=1,u.nudgeStepMedium=10,u.nudgeStepLarge=100,u.defaultProps={ariaLabels:{cropArea:\"Use the arrow keys to move the crop selection area\",nwDragHandle:\"Use the arrow keys to move the north west drag handle to change the crop selection area\",nDragHandle:\"Use the up and down arrow keys to move the north drag handle to change the crop selection area\",neDragHandle:\"Use the arrow keys to move the north east drag handle to change the crop selection area\",eDragHandle:\"Use the up and down arrow keys to move the east drag handle to change the crop selection area\",seDragHandle:\"Use the arrow keys to move the south east drag handle to change the crop selection area\",sDragHandle:\"Use the up and down arrow keys to move the south drag handle to change the crop selection area\",swDragHandle:\"Use the arrow keys to move the south west drag handle to change the crop selection area\",wDragHandle:\"Use the up and down arrow keys to move the west drag handle to change the crop selection area\"}}})(),r})()));","import axios from \"axios\";\n\nconst cropImage = payload =>\n axios.post(\"neeto_image_uploader_engine/development/crop_image\", payload);\n\nconst developmentApi = { cropImage };\n\nexport default developmentApi;\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport developmentApi from \"apis/development\";\n\nconst useCropImage = options =>\n useMutation({ mutationFn: developmentApi.cropImage, ...options });\n\nexport { useCropImage };\n","import { mergeRight } from \"ramda\";\n\nconst useImageControls = ({\n isAspectRatioLocked,\n setAspectRatioLocked,\n setCrop,\n crop = {},\n aspectRatio,\n imageRef,\n setAspectRatio,\n setHeight,\n setWidth,\n}) => {\n const onToggleAspectRatioLock = () => {\n setAspectRatioLocked(isAspectRatioLocked => !isAspectRatioLocked);\n if (!isAspectRatioLocked) {\n const newHeight = crop.width / (aspectRatio.width / aspectRatio.height);\n const newWidth = crop.height * (aspectRatio.width / aspectRatio.height);\n newWidth + Math.trunc(crop.x) <= imageRef.current.width\n ? setCrop(mergeRight(crop, { width: newWidth }))\n : setCrop(mergeRight(crop, { height: newHeight }));\n }\n };\n\n const handleWidthChange = width => {\n const cropWidth = Number(width);\n\n const displayWidth =\n (cropWidth * imageRef.current.width) / imageRef.current.naturalWidth;\n\n if (\n displayWidth > 0 &&\n Math.trunc(crop.x) + displayWidth <= imageRef.current.width\n ) {\n if (isAspectRatioLocked) {\n const displayHeight =\n displayWidth / (aspectRatio.width / aspectRatio.height);\n\n displayHeight + Math.trunc(crop.y) <= imageRef.current.height &&\n setCrop(\n mergeRight(crop, { width: displayWidth, height: displayHeight })\n );\n } else {\n setCrop(mergeRight(crop, { width: displayWidth }));\n }\n } else {\n setWidth(crop.width.toFixed(2));\n }\n };\n\n const handleHeightChange = height => {\n const cropHeight = Number(height);\n\n const displayHeight =\n (cropHeight * imageRef.current.height) / imageRef.current.naturalHeight;\n\n if (\n displayHeight > 0 &&\n Math.trunc(crop.y) + displayHeight <= imageRef.current.height\n ) {\n if (isAspectRatioLocked) {\n const displayWidth =\n (displayHeight * aspectRatio.width) / aspectRatio.height;\n\n displayWidth + Math.trunc(crop.x) <= imageRef.current.width &&\n setCrop(\n mergeRight(crop, { height: displayHeight, width: displayWidth })\n );\n } else {\n setCrop(mergeRight(crop, { height: displayHeight }));\n }\n } else {\n setHeight(crop.height.toFixed(2));\n }\n };\n\n const handleAspectWidthChange = aspectWidth => {\n if (aspectWidth <= 0) {\n return;\n }\n\n if (!isAspectRatioLocked) {\n setAspectRatio(mergeRight(aspectRatio, { width: aspectWidth }));\n\n return;\n }\n\n const newWidth = crop.height * (aspectWidth / aspectRatio.height);\n if (newWidth + Math.trunc(crop.x) <= imageRef.current.width) {\n setCrop(mergeRight(crop, { width: newWidth }));\n setAspectRatio(mergeRight(aspectRatio, { width: aspectWidth }));\n }\n };\n\n const handleAspectHeightChange = aspectHeight => {\n if (aspectHeight <= 0) {\n return;\n }\n\n if (!isAspectRatioLocked) {\n setAspectRatio(mergeRight(aspectRatio, { height: aspectHeight }));\n\n return;\n }\n\n const newHeight = crop.width / (aspectRatio.width / aspectHeight);\n if (newHeight + Math.trunc(crop.y) <= imageRef.current.height) {\n setCrop(mergeRight(crop, { height: newHeight }));\n setAspectRatio(mergeRight(aspectRatio, { height: aspectHeight }));\n }\n };\n\n return {\n onToggleAspectRatioLock,\n handleWidthChange,\n handleHeightChange,\n handleAspectWidthChange,\n handleAspectHeightChange,\n };\n};\n\nexport default useImageControls;\n","import { useEffect, useState } from \"react\";\n\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport { withEventTargetValue } from \"neetocommons/utils\";\nimport { Button, Input, Switch, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useImageControls from \"./hooks/useImageControls\";\nimport { isNilOrEmpty } from \"./utils\";\n\nconst Controls = ({\n aspectRatio,\n isAspectRatioLocked,\n crop,\n handleSubmit,\n setAspectRatio,\n setAspectRatioLocked,\n setCrop,\n imageRef,\n isFullImage,\n setIsFullImage,\n hideControls = false,\n}) => {\n const { t } = useTranslation();\n\n const getActualCropHeight = cropHeight =>\n cropHeight * (imageRef.current?.naturalHeight / imageRef.current?.height);\n\n const getActualCropWidth = cropHeight =>\n cropHeight * (imageRef.current?.naturalWidth / imageRef.current?.width);\n\n const [height, setHeight] = useState(getActualCropHeight(crop.height));\n const [width, setWidth] = useState(getActualCropWidth(crop.width));\n\n const {\n onToggleAspectRatioLock,\n handleWidthChange,\n handleHeightChange,\n handleAspectWidthChange,\n handleAspectHeightChange,\n } = useImageControls({\n isAspectRatioLocked,\n setAspectRatioLocked,\n setCrop,\n crop,\n aspectRatio,\n imageRef,\n setAspectRatio,\n setHeight,\n setWidth,\n });\n\n const debouncedHeight = useDebounce(height, 800);\n const debouncedWidth = useDebounce(width, 800);\n\n useEffect(() => {\n handleHeightChange(debouncedHeight);\n }, [debouncedHeight]);\n\n useEffect(() => {\n handleWidthChange(debouncedWidth);\n }, [debouncedWidth]);\n\n useEffect(() => {\n setHeight(getActualCropHeight(crop.height));\n setWidth(getActualCropWidth(crop.width));\n }, [crop]);\n\n return (\n <div className=\"flex flex-col p-4 md:w-2/6 \">\n {!hideControls && (\n <>\n <Switch\n checked={isFullImage}\n className=\"flex-grow-0\"\n label={t(\"neetoImageUploader.labels.selectOriginalImage\")}\n onChange={() => setIsFullImage(isFullImage => !isFullImage)}\n />\n <Switch\n checked={isAspectRatioLocked}\n className=\"mt-4 flex-grow-0\"\n disabled={isFullImage}\n label={t(\"neetoImageUploader.labels.lockAspectRatio\")}\n onChange={onToggleAspectRatioLock}\n />\n <Typography className=\"mb-2 mt-6\" style=\"body2\">\n {t(\"neetoImageUploader.imageEditor.aspectRatio\")}\n </Typography>\n <div className=\"flex gap-4 self-start\">\n <Input\n data-cy=\"aspect-ratio-width-input\"\n disabled={isFullImage}\n size=\"small\"\n type=\"number\"\n value={aspectRatio.width}\n onChange={withEventTargetValue(handleAspectWidthChange)}\n />\n <Typography> : </Typography>\n <Input\n data-cy=\"aspect-ratio-height-input\"\n disabled={isFullImage}\n size=\"small\"\n type=\"number\"\n value={aspectRatio.height}\n onChange={withEventTargetValue(handleAspectHeightChange)}\n />\n </div>\n </>\n )}\n <Input\n className=\"mt-4 flex-grow-0\"\n disabled={isFullImage}\n label={t(\"neetoImageUploader.labels.width\")}\n type=\"number\"\n value={Math.round(width)}\n onChange={withEventTargetValue(setWidth)}\n />\n <Input\n className=\"mt-4 flex-grow-0\"\n disabled={isFullImage}\n label={t(\"neetoImageUploader.labels.height\")}\n type=\"number\"\n value={Math.round(height)}\n onChange={withEventTargetValue(setHeight)}\n />\n <Button\n className=\"mt-6 self-start\"\n data-cy=\"neeto-image-uploader-crop-submit-button\"\n label={t(\"neetoImageUploader.labels.done\")}\n disabled={\n isNilOrEmpty(imageRef.current) &&\n (crop.width <= 0 || crop.height <= 0)\n }\n onClick={handleSubmit}\n />\n </div>\n );\n};\nexport default Controls;\n","import { useState, useRef } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent, noop } from \"neetocist\";\nimport { LeftArrow } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport { mergeRight } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport ReactCrop from \"react-image-crop\";\n\nimport { useCropImage } from \"hooks/useDevelopmentApi\";\nimport { IS_DEVELOPMENT_OR_HEROKU_ENV } from \"src/constants\";\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/components/_react-crop.scss\";\n\nimport Controls from \"./Controls\";\nimport {\n isItemsCenter,\n getCropValues,\n getCroppedImageURL,\n onImageLoaded,\n} from \"./utils\";\n\nimport { DEFAULT_CROP_CONFIG } from \"../constants\";\n\nconst ImageEditor = ({\n image,\n handleReset,\n handleImageEditComplete = noop,\n signedId = \"\",\n fixedAspectRatio = {},\n}) => {\n const [isAspectRatioLocked, setIsAspectRatioLocked] = useState(true);\n const [isFullImage, setIsFullImage] = useState(false);\n const [aspectRatio, setAspectRatio] = useState({\n width: fixedAspectRatio?.width || 16,\n height: fixedAspectRatio?.height || 9,\n });\n\n const [crop, setCrop] = useState(DEFAULT_CROP_CONFIG);\n\n const { t } = useTranslation();\n\n const { mutate: cropImage } = useCropImage();\n\n const imageRef = useRef(null);\n const wrapperRef = useRef(null);\n\n const cropAspectRatio =\n isPresent(fixedAspectRatio?.width) && isPresent(fixedAspectRatio.height)\n ? fixedAspectRatio?.width / fixedAspectRatio?.height\n : 16 / 9;\n\n const processCrop = () => {\n if (isFullImage) {\n handleImageEditComplete(image);\n\n return;\n }\n\n cropImage(\n { crop: getCropValues({ crop, imageRef }), signedId },\n { onSuccess: handleImageEditComplete }\n );\n };\n\n const handleSubmit = () => {\n if (IS_DEVELOPMENT_OR_HEROKU_ENV) {\n processCrop();\n\n return;\n }\n\n if (isFullImage) {\n handleImageEditComplete(image);\n\n return;\n }\n const newURL = getCroppedImageURL({ crop, imageURL: image.url, imageRef });\n handleImageEditComplete(mergeRight(image, { url: newURL }));\n };\n\n return (\n <div className=\"flex h-full flex-col gap-4 px-8 py-12\">\n <Button\n className=\"self-start\"\n data-cy=\"image-editor-back-button\"\n icon={LeftArrow}\n iconPosition=\"left\"\n style=\"text\"\n onClick={handleReset}\n />\n <div className=\"flex h-full w-full flex-col gap-2 overflow-y-scroll md:flex-row md:overflow-y-auto\">\n <div\n id=\"imageEditor\"\n ref={wrapperRef}\n className={classNames(\n \"flex\",\n \"h-full w-full md:w-4/6\",\n \"justify-around\",\n \"neeto-ui-bg-gray-200\",\n {\n \"items-center\": isItemsCenter({ wrapperRef, imageRef }),\n }\n )}\n >\n <ReactCrop\n crop={isFullImage ? null : crop}\n src={image?.url}\n aspect={\n isAspectRatioLocked ? aspectRatio.width / aspectRatio.height : 0\n }\n onChange={setCrop}\n onComplete={setCrop}\n >\n <img\n alt={t(\"neetoImageUploader.common.image\")}\n data-cy=\"image-editor-uploaded-image\"\n ref={imageRef}\n src={image?.url}\n onLoad={e =>\n onImageLoaded({\n image: e.target,\n setCrop,\n cropAspectRatio,\n })\n }\n />\n </ReactCrop>\n </div>\n <Controls\n {...{\n aspectRatio,\n crop,\n handleSubmit,\n imageRef,\n isAspectRatioLocked,\n isFullImage,\n setAspectRatio,\n setCrop,\n setIsFullImage,\n }}\n hideControls={isPresent(fixedAspectRatio)}\n setAspectRatioLocked={setIsAspectRatioLocked}\n />\n </div>\n </div>\n );\n};\n\nexport default ImageEditor;\n","import axios from \"axios\";\n\nconst fetch = ({ searchTerm, url, page, per }) =>\n axios.get(url, { params: { searchTerm, page, per } });\n\nconst bulkDestroy = (imageIds, url) =>\n axios.delete(url, { params: { imageIds } });\n\nconst imagesApi = { fetch, bulkDestroy };\n\nexport default imagesApi;\n","import {\n useInfiniteQuery,\n useMutation,\n useQueryClient,\n} from \"@tanstack/react-query\";\nimport { identity } from \"ramda\";\n\nimport imagesApi from \"apis/images\";\nimport { IMAGES_PER_PAGE } from \"components/constants\";\nimport { ASSETS_STALE_TIME, QUERY_KEYS } from \"src/constants/query\";\n\nconst useFetchAssets = ({ searchTerm, url, per }, options = {}) =>\n useInfiniteQuery({\n queryKey: [QUERY_KEYS.ASSETS_LIST, searchTerm],\n queryFn: ({ pageParam = 1 }) =>\n imagesApi.fetch({ searchTerm, url, page: pageParam, per }),\n getNextPageParam: (lastPage, _, lastPageParam) =>\n lastPage.length === IMAGES_PER_PAGE ? lastPageParam + 1 : null,\n select: data => {\n const results = data.pages.flatMap(identity);\n\n return { results };\n },\n initialPageParam: 1,\n staleTime: ASSETS_STALE_TIME,\n ...options,\n });\n\nconst useBulkDestroyAssets = url => {\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationFn: imageIds => imagesApi.bulkDestroy(imageIds, url),\n onSuccess: (_, variables) => {\n queryClient.setQueriesData(\n { queryKey: [QUERY_KEYS.ASSETS_LIST] },\n old => ({\n pages: old.pages.map(page =>\n page.filter(item => !variables.includes(item.fileId || item.id))\n ),\n pageParams: old.pageParams,\n })\n );\n },\n });\n};\n\nexport { useFetchAssets, useBulkDestroyAssets };\n","import { globalProps, taxonomies } from '@bigbinary/neeto-commons-frontend/initializers';\nimport require$$0, { useState, createElement, useEffect, useMemo, useRef, Fragment as Fragment$1, memo, useCallback } from 'react';\nimport { removeBy, nullSafe, noop, isPresent, findById, isNotEmpty, findBy, _findBy, replaceById, keysToSnakeCase, toLabelAndValue, notEquals, filterBy, slugify } from '@bigbinary/neeto-cist';\nimport { useMutationWithInvalidation, withT, useQueryParams, withTitle, useFuncDebounce, useDebounce, useBreakpoints } from '@bigbinary/neeto-commons-frontend/react-utils';\nimport Container from '@bigbinary/neeto-molecules/Container';\nimport NeetoHeader from '@bigbinary/neeto-molecules/Header';\nimport Button from '@bigbinary/neetoui/Button';\nimport { useTranslation, Trans } from 'react-i18next';\nimport { useQuery, QueryClient, QueryCache, QueryClientProvider, keepPreviousData, useMutation } from '@tanstack/react-query';\nimport { prop, pluck, mergeLeft, includes, keys, isEmpty, replace as replace$1, is, append, concat, equals, groupBy, not, map, identical, modify, __, filter, identity, clamp, curry, assoc, isNil, trim, toLower, isNotNil, pick, move, head, reverse } from 'ramda';\nimport axios from 'axios';\nimport i18next, { t as t$1 } from 'i18next';\nimport { DEFAULT_PAGE_INDEX, DEFAULT_STALE_TIME, PLURAL, SINGULAR, DEFAULT_PAGE_SIZE as DEFAULT_PAGE_SIZE$1 } from '@bigbinary/neeto-commons-frontend/constants';\nimport Pane from '@bigbinary/neetoui/Pane';\nimport Typography from '@bigbinary/neetoui/Typography';\nimport ActionBlock from '@bigbinary/neetoui/formik/ActionBlock';\nimport Form$1 from '@bigbinary/neetoui/formik/Form';\nimport Input from '@bigbinary/neetoui/formik/Input';\nimport Select from '@bigbinary/neetoui/formik/Select';\nimport Textarea from '@bigbinary/neetoui/formik/Textarea';\nimport Spinner from '@bigbinary/neetoui/Spinner';\nimport { jsx, jsxs, Fragment } from 'react/jsx-runtime';\nimport * as yup from 'yup';\nimport { object, string } from 'yup';\nimport { useFormikContext, useField } from 'formik';\nimport MoreDropdown from '@bigbinary/neeto-molecules/MoreDropdown';\nimport Avatar from '@bigbinary/neetoui/Avatar';\nimport Alert from '@bigbinary/neetoui/Alert';\nimport PageLoader from '@bigbinary/neeto-molecules/PageLoader';\nimport SubHeader$1 from '@bigbinary/neeto-molecules/SubHeader';\nimport TableWrapper from '@bigbinary/neeto-molecules/TableWrapper';\nimport Table$1 from '@bigbinary/neetoui/Table';\nimport NoData from '@bigbinary/neetoui/NoData';\nimport Tooltip from '@bigbinary/neetoui/Tooltip';\nimport { useProfileImageUpload } from '@bigbinary/neeto-image-uploader-frontend';\nimport ExternalLink from '@bigbinary/neeto-icons/ExternalLink';\nimport Callout from '@bigbinary/neetoui/Callout';\nimport Label from '@bigbinary/neetoui/Label';\nimport Radio from '@bigbinary/neetoui/Radio';\nimport Toastr from '@bigbinary/neetoui/Toastr';\nimport Delete$1 from '@bigbinary/neeto-icons/Delete';\nimport withImmutableActions from '@bigbinary/neeto-commons-frontend/react-utils/withImmutableActions';\nimport { create as create$3 } from 'zustand';\nimport { shallow } from 'zustand/shallow';\nimport Checkbox from '@bigbinary/neetoui/Checkbox';\nimport classnames from 'classnames';\nimport Search from '@bigbinary/neeto-icons/Search';\nimport Input$1 from '@bigbinary/neetoui/Input';\nimport Down from '@bigbinary/neeto-icons/Down';\nimport Up from '@bigbinary/neeto-icons/Up';\nimport { getQueryParams, buildUrl, hyphenize, currencyFormat, showThumbsUpToastr } from '@bigbinary/neeto-commons-frontend/utils';\nimport { buildFiltersFromURL, Bar } from '@bigbinary/neeto-filters-frontend';\nimport { useHiddenColumns } from '@bigbinary/neeto-molecules/Columns';\nimport { useHistory } from 'react-router-dom';\nimport require$$0$1 from 'util';\nimport Dropdown from '@bigbinary/neetoui/Dropdown';\nimport Tag from '@bigbinary/neetoui/Tag';\nimport Right$1 from '@bigbinary/neeto-icons/Right';\nimport Info from '@bigbinary/neeto-icons/Info';\nimport LeftArrow from '@bigbinary/neeto-icons/LeftArrow';\nimport useFetchNeetoApps from '@bigbinary/neeto-commons-frontend/react-utils/useFetchNeetoApps';\nimport Switch from '@bigbinary/neetoui/formik/Switch';\nimport Modal from '@bigbinary/neetoui/Modal';\nimport MultiEmailInput from '@bigbinary/neetoui/formik/MultiEmailInput';\nimport Radio$1 from '@bigbinary/neetoui/formik/Radio';\nimport Warning from '@bigbinary/neeto-icons/Warning';\nimport Checkbox$1 from '@bigbinary/neetoui/formik/Checkbox';\nimport UserCircle from '@bigbinary/neeto-icons/UserCircle';\n\nfunction _typeof$1(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof$1 = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof$1(o);\n}\n\nvar hasPermission = function hasPermission() {\n var _globalProps$permissi;\n var permissions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"\";\n var type = _typeof$1(permissions);\n var userPermissions = (_globalProps$permissi = globalProps.permissions) !== null && _globalProps$permissi !== void 0 ? _globalProps$permissi : [];\n if (Object.is(type, \"string\")) {\n return userPermissions.includes(permissions);\n } else if (Array.isArray(permissions)) {\n return permissions.some(function (permission) {\n return userPermissions.includes(permission);\n });\n }\n return false;\n};\nvar isOverflown = function isOverflown(_ref) {\n var clientWidth = _ref.clientWidth,\n clientHeight = _ref.clientHeight,\n scrollWidth = _ref.scrollWidth,\n scrollHeight = _ref.scrollHeight;\n return scrollHeight > clientHeight || scrollWidth > clientWidth;\n};\nvar getScrollBarWidth = function getScrollBarWidth() {\n var innerElement = document.createElement(\"p\");\n innerElement.classList.add(\"ntm-scrollbar__inner\");\n var outerElement = document.createElement(\"div\");\n outerElement.classList.add(\"ntm-scrollbar__outer\");\n outerElement.appendChild(innerElement);\n document.body.appendChild(outerElement);\n var w1 = innerElement.offsetWidth;\n outerElement.style.overflow = \"scroll\";\n var w2 = innerElement.offsetWidth;\n if (w1 === w2) w2 = outerElement.clientWidth;\n document.body.removeChild(outerElement);\n return w1 - w2;\n};\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}\n\nfunction _arrayLikeToArray$1(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}\n\nfunction _unsupportedIterableToArray$1(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray$1(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$1(o, minLen);\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray$1(arr, i) || _nonIterableRest();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray$1(arr);\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray$1(arr) || _nonIterableSpread();\n}\n\nvar DEFAULT_PAGE_SIZE = 30;\nvar ADMIN_ROLE_NAME = \"Admin\";\nvar OWNER_ROLE_NAME = \"Owner\";\nvar ADMIN_ROLES = [ADMIN_ROLE_NAME, OWNER_ROLE_NAME];\nvar MANAGE_MEMBERS_PERMISSION = \"members.manage_members\";\nvar MANAGE_ROLES_PERMISSION = \"settings.manage_roles\";\nvar VIEW_MEMBERS_PERMISSION = \"members.view_members\";\nvar VIEW_ROLES_PERMISSION = \"settings.view_roles\";\nvar QUERY_KEYS = {\n PERMISSIONS: \"neeto-team-members-permissions\",\n ROLES: \"neeto-team-members-roles\",\n GLOBAL_ROLES: \"neeto-team-members-global-roles\",\n TEAMS: \"neeto-team-members-teams\",\n TEAMS_DEPENDENCIES: \"neeto-team-members-teams-dependencies\",\n COUNTRIES_LIST: \"countries-list\",\n USER_PROFILE: \"user-profile\",\n CREATION_STATUS: \"creation-status\",\n GROUPS: \"groups\",\n GROUP_MEMBERS: \"group-members\"\n};\nvar BASE_URL = \"team_members\";\nvar DATE_FORMAT_OPTIONS = [{\n label: t$1(\"neetoTeamMembers.profile.common.mmddyy\"),\n value: \"%m/%d/%Y\"\n}, {\n label: t$1(\"neetoTeamMembers.profile.common.ddmmyy\"),\n value: \"%d/%m/%Y\"\n}, {\n label: t$1(\"neetoTeamMembers.profile.common.yymmdd\"),\n value: \"%Y/%m/%d\"\n}];\nvar SUBSCRIPTION_PLANS = Object.freeze({\n PRO: \"pro\",\n FREE: \"free\"\n});\nvar DEFAULT_PAGE_PROPERTIES = {\n size: DEFAULT_PAGE_SIZE,\n index: DEFAULT_PAGE_INDEX\n};\n\nvar list$1 = function list(params) {\n return axios.get(\"\".concat(BASE_URL, \"/api/v1/groups\"), {\n params: params\n });\n};\nvar show = function show(id) {\n return axios.get(\"\".concat(BASE_URL, \"/api/v1/groups/\").concat(id));\n};\nvar create$2 = function create(payload) {\n return axios.post(\"\".concat(BASE_URL, \"/api/v1/groups\"), payload);\n};\nvar update$2 = function update(id, payload) {\n return axios.patch(\"\".concat(BASE_URL, \"/api/v1/groups/\").concat(id), payload);\n};\nvar destroy$1 = function destroy(id) {\n return axios[\"delete\"](\"\".concat(BASE_URL, \"/api/v1/groups/\").concat(id));\n};\nvar groupsApi = {\n create: create$2,\n list: list$1,\n update: update$2,\n show: show,\n destroy: destroy$1\n};\n\nvar useFetchGroups = function useFetchGroups(_ref) {\n var page = _ref.page,\n pageSize = _ref.pageSize,\n _ref$searchTerm = _ref.searchTerm,\n searchTerm = _ref$searchTerm === void 0 ? \"\" : _ref$searchTerm;\n return useQuery({\n queryKey: [QUERY_KEYS.GROUPS, searchTerm, page, pageSize],\n queryFn: function queryFn() {\n return groupsApi.list({\n searchTerm: searchTerm,\n page: page,\n pageSize: pageSize,\n loadDetails: true\n });\n }\n });\n};\nvar useCreateGroup = function useCreateGroup() {\n var _config$form$otherKey, _config$form;\n var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return useMutationWithInvalidation(function (payload) {\n return groupsApi.create(payload);\n }, {\n keysToInvalidate: [[QUERY_KEYS.GROUPS]].concat(_toConsumableArray((_config$form$otherKey = config === null || config === void 0 || (_config$form = config.form) === null || _config$form === void 0 ? void 0 : _config$form.otherKeysToInvalidate) !== null && _config$form$otherKey !== void 0 ? _config$form$otherKey : []))\n });\n};\nvar useDeleteGroup = function useDeleteGroup() {\n var _config$form$otherKey2, _config$form2;\n var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return useMutationWithInvalidation(function (id) {\n return groupsApi.destroy(id);\n }, {\n keysToInvalidate: [[QUERY_KEYS.GROUPS]].concat(_toConsumableArray((_config$form$otherKey2 = config === null || config === void 0 || (_config$form2 = config.form) === null || _config$form2 === void 0 ? void 0 : _config$form2.otherKeysToInvalidate) !== null && _config$form$otherKey2 !== void 0 ? _config$form$otherKey2 : []))\n });\n};\nvar useFetchGroup = function useFetchGroup(id) {\n return useQuery({\n queryKey: [QUERY_KEYS.GROUPS, id],\n queryFn: function queryFn() {\n return groupsApi.show(id);\n },\n select: prop(\"group\"),\n enabled: !!id\n });\n};\nvar useUpdateGroup = function useUpdateGroup() {\n var _config$form$otherKey3, _config$form3;\n var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return useMutationWithInvalidation(function (_ref2) {\n var id = _ref2.id,\n payload = _ref2.payload;\n return groupsApi.update(id, payload);\n }, {\n keysToInvalidate: [[QUERY_KEYS.GROUPS]].concat(_toConsumableArray((_config$form$otherKey3 = config === null || config === void 0 || (_config$form3 = config.form) === null || _config$form3 === void 0 ? void 0 : _config$form3.otherKeysToInvalidate) !== null && _config$form$otherKey3 !== void 0 ? _config$form$otherKey3 : []))\n });\n};\n\nvar PaneSpinner = function PaneSpinner() {\n return /*#__PURE__*/jsx(\"div\", {\n className: \"flex h-full w-full items-center justify-center\",\n children: /*#__PURE__*/jsx(Spinner, {})\n });\n};\n\nvar list = function list() {\n return axios.get(\"\".concat(BASE_URL, \"/api/v1/users\"));\n};\nvar usersApi = {\n list: list\n};\n\nvar useFetchUsers = function useFetchUsers() {\n return useQuery({\n queryKey: [QUERY_KEYS.USERS],\n queryFn: usersApi.list\n });\n};\n\nvar MAXIMUM_NAME_LENGTH = 25;\nvar GROUP_FORM_VALIDATION_SCHEMA = yup.object({\n name: yup.string().required(t$1(\"neetoTeamMembers.validations.required\", {\n what: t$1(\"neetoTeamMembers.common.name\")\n })).trim(t$1(\"neetoTeamMembers.validations.noWhiteSpaces\", {\n what: t$1(\"neetoTeamMembers.common.name\")\n })).max(MAXIMUM_NAME_LENGTH, t$1(\"neetoTeamMembers.validations.max\", {\n size: MAXIMUM_NAME_LENGTH\n }))\n});\nvar GROUP_FORM_INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n members: []\n};\nvar DEFAULT_DELETE_GROUP_DATA = {\n isDeleting: false,\n group: {}\n};\nvar DEFAULT_EDIT_GROUP = {\n isVisible: false,\n groupId: \"\"\n};\n\nvar Member = function Member(_ref) {\n var member = _ref.member;\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isDeleteAlertOpen = _useState2[0],\n setIsDeleteAlertOpen = _useState2[1];\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useFormikContext = useFormikContext(),\n setFieldValue = _useFormikContext.setFieldValue,\n values = _useFormikContext.values;\n return /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsxs(\"div\", {\n className: \"neeto-ui-neeto-ui-rounded-lg neeto-desk-team-settings__member-list flex items-center justify-between p-2\",\n children: [/*#__PURE__*/jsxs(\"div\", {\n className: \"flex items-center space-x-2\",\n children: [/*#__PURE__*/jsx(Avatar, {\n className: \"flex-shrink-0\",\n size: \"medium\",\n user: {\n name: member === null || member === void 0 ? void 0 : member.name\n }\n }), /*#__PURE__*/jsxs(\"div\", {\n className: \"ml-2 w-auto\",\n children: [/*#__PURE__*/jsx(Typography, {\n className: \"mb-1 capitalize\",\n style: \"h5\",\n weight: \"medium\",\n children: member === null || member === void 0 ? void 0 : member.name\n }), /*#__PURE__*/jsx(Typography, {\n style: \"body3\",\n weight: \"normal\",\n children: taxonomies.groupMember.singular\n })]\n })]\n }), /*#__PURE__*/jsx(MoreDropdown, {\n dropdownProps: {\n strategy: \"fixed\",\n position: \"bottom-end\"\n },\n menuItems: [{\n key: \"delete-menu\",\n \"data-cy\": \"member-remove-button\",\n \"data-test-id\": \"member-remove-button\",\n label: t(\"neetoTeamMembers.common.remove\"),\n onClick: function onClick() {\n return setIsDeleteAlertOpen(true);\n }\n }]\n })]\n }), /*#__PURE__*/jsx(Alert, {\n isOpen: isDeleteAlertOpen,\n submitButtonLabel: t(\"neetoTeamMembers.common.remove\"),\n message: /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.alerts.messages.removeMember\",\n values: {\n member: member === null || member === void 0 ? void 0 : member.name\n }\n }),\n title: t(\"neetoTeamMembers.labels.removeMember\", {\n member: member === null || member === void 0 ? void 0 : member.name\n }),\n onClose: function onClose() {\n return setIsDeleteAlertOpen(false);\n },\n onSubmit: function onSubmit() {\n setFieldValue(\"members\", removeBy({\n id: member.id\n }, values.members));\n setIsDeleteAlertOpen(false);\n }\n })]\n });\n};\n\nvar Members = function Members(_ref) {\n var members = _ref.members,\n membersSelectbox = _ref.membersSelectbox;\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isAddNewMemberDropdownVisible = _useState2[0],\n setIsAddNewMemberDropdownVisible = _useState2[1];\n var _useFormikContext = useFormikContext(),\n values = _useFormikContext.values;\n var selectedMembers = members === null || members === void 0 ? void 0 : members.filter(function (member) {\n var _nullSafe;\n return (_nullSafe = nullSafe(pluck)(\"value\", values === null || values === void 0 ? void 0 : values.members)) === null || _nullSafe === void 0 ? void 0 : _nullSafe.includes(member.value);\n });\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"w-full space-y-4\",\n children: [/*#__PURE__*/jsxs(Typography, {\n style: \"h4\",\n weight: \"semibold\",\n children: [taxonomies.groupMember.plural, \" (\", members ? members.length : 0, \")\"]\n }), isAddNewMemberDropdownVisible ? membersSelectbox : /*#__PURE__*/jsx(Button, {\n \"data-cy\": \"new-member-button\",\n \"data-test-id\": \"new-member-button\",\n iconPosition: \"left\",\n style: \"secondary\",\n label: t(\"neetoTeamMembers.common.addNew_\", {\n what: taxonomies.groupMember.singular\n }),\n onClick: function onClick() {\n return setIsAddNewMemberDropdownVisible(true);\n }\n }), /*#__PURE__*/jsx(\"div\", {\n className: \"w-full space-y-1\",\n children: selectedMembers === null || selectedMembers === void 0 ? void 0 : selectedMembers.map(function (member) {\n return /*#__PURE__*/createElement(Member, {\n member: member,\n key: member.id\n });\n })\n })]\n });\n};\n\nvar Form = function Form(_ref) {\n var _config$form$initialV, _config$form, _config$form2, _config$pane;\n var _ref$group = _ref.group,\n group = _ref$group === void 0 ? {} : _ref$group,\n _ref$config = _ref.config,\n config = _ref$config === void 0 ? {} : _ref$config,\n _ref$isEdit = _ref.isEdit,\n isEdit = _ref$isEdit === void 0 ? false : _ref$isEdit,\n _ref$onClose = _ref.onClose,\n onClose = _ref$onClose === void 0 ? noop : _ref$onClose;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useFetchUsers = useFetchUsers(),\n _useFetchUsers$data = _useFetchUsers.data,\n _useFetchUsers$data2 = _useFetchUsers$data === void 0 ? {} : _useFetchUsers$data,\n users = _useFetchUsers$data2.users,\n isLoading = _useFetchUsers.isLoading;\n var _useCreateGroup = useCreateGroup(config),\n create = _useCreateGroup.mutate,\n isCreating = _useCreateGroup.isPending;\n var _useUpdateGroup = useUpdateGroup(config),\n update = _useUpdateGroup.mutate,\n isUpdating = _useUpdateGroup.isPending;\n var initialValues = isEdit ? group : mergeLeft(GROUP_FORM_INITIAL_VALUES, (_config$form$initialV = config === null || config === void 0 || (_config$form = config.form) === null || _config$form === void 0 ? void 0 : _config$form.initialValues) !== null && _config$form$initialV !== void 0 ? _config$form$initialV : {});\n var validationSchema = GROUP_FORM_VALIDATION_SCHEMA.concat(config === null || config === void 0 || (_config$form2 = config.form) === null || _config$form2 === void 0 ? void 0 : _config$form2.validationSchema);\n var getUserIds = function getUserIds(members) {\n return members ? pluck(\"id\", members) : [];\n };\n var handleSubmit = function handleSubmit(values) {\n var _config$form3, _config$form3$otherPa;\n var payload = {\n group: mergeLeft({\n name: values.name,\n description: values.description,\n userIds: getUserIds(values.members)\n }, config === null || config === void 0 || (_config$form3 = config.form) === null || _config$form3 === void 0 || (_config$form3$otherPa = _config$form3.otherPayloadData) === null || _config$form3$otherPa === void 0 ? void 0 : _config$form3$otherPa.call(_config$form3, values))\n };\n if (isEdit) {\n update({\n id: group.id,\n payload: payload\n }, {\n onSuccess: function onSuccess() {\n return onClose();\n }\n });\n } else {\n create(payload, {\n onSuccess: function onSuccess() {\n return onClose();\n }\n });\n }\n };\n if (isLoading || config !== null && config !== void 0 && (_config$pane = config.pane) !== null && _config$pane !== void 0 && _config$pane.isLoading) return /*#__PURE__*/jsx(PaneSpinner, {});\n return /*#__PURE__*/jsx(Form$1, {\n formProps: {\n noValidate: true,\n className: \"flex w-full flex-col gap-y-4 pb-6\"\n },\n formikProps: {\n enableReinitialize: true,\n initialValues: initialValues,\n validationSchema: validationSchema,\n onSubmit: handleSubmit\n },\n children: function children(_ref2) {\n var _config$form4, _config$form4$otherEl, _config$form5, _config$form5$otherEl;\n var values = _ref2.values;\n return /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(Input, {\n required: true,\n \"data-cy\": \"group-name-text-field\",\n label: t(\"neetoTeamMembers.common.name\"),\n name: \"name\"\n }), /*#__PURE__*/jsx(Textarea, {\n \"data-cy\": \"group-description-text-area\",\n label: t(\"neetoTeamMembers.common.description\"),\n name: \"description\",\n rows: 4,\n size: \"medium\"\n }), config === null || config === void 0 || (_config$form4 = config.form) === null || _config$form4 === void 0 || (_config$form4$otherEl = _config$form4.otherElements) === null || _config$form4$otherEl === void 0 ? void 0 : _config$form4$otherEl.call(_config$form4, values), isEdit ? /*#__PURE__*/jsx(Members, {\n members: values.members,\n membersSelectbox: /*#__PURE__*/jsx(Select, {\n isMulti: true,\n closeMenuOnSelect: false,\n getOptionLabel: prop(\"name\"),\n getOptionValue: prop(\"id\"),\n id: \"members-autocomplete\",\n label: taxonomies.groupMember.plural,\n name: \"members\",\n options: users,\n placeholder: taxonomies.groupMember.plural\n })\n }) : /*#__PURE__*/jsx(Select, {\n isMulti: true,\n closeMenuOnSelect: false,\n getOptionLabel: prop(\"name\"),\n getOptionValue: prop(\"id\"),\n id: \"members-autocomplete\",\n label: taxonomies.groupMember.plural,\n name: \"members\",\n options: users,\n placeholder: taxonomies.groupMember.plural\n }), config === null || config === void 0 || (_config$form5 = config.form) === null || _config$form5 === void 0 || (_config$form5$otherEl = _config$form5.otherElementsAtLast) === null || _config$form5$otherEl === void 0 ? void 0 : _config$form5$otherEl.call(_config$form5, values), /*#__PURE__*/jsx(Pane.Footer, {\n className: \"absolute bottom-0 left-0\",\n children: /*#__PURE__*/jsx(ActionBlock, {\n cancelButtonProps: {\n onClick: onClose\n },\n isSubmitting: isCreating || isUpdating\n })\n })]\n });\n }\n });\n};\n\nvar Create = withT(function (_ref) {\n var t = _ref.t,\n config = _ref.config,\n isOpen = _ref.isOpen,\n onClose = _ref.onClose;\n return /*#__PURE__*/jsxs(Pane, {\n isOpen: isOpen,\n onClose: onClose,\n children: [/*#__PURE__*/jsx(Pane.Header, {\n children: /*#__PURE__*/jsx(Typography, {\n style: \"h2\",\n weight: \"semibold\",\n children: t(\"neetoTeamMembers.common.addNew_\", {\n what: taxonomies.group.singular\n })\n })\n }), /*#__PURE__*/jsx(Pane.Body, {\n children: /*#__PURE__*/jsx(Form, {\n config: config,\n onClose: onClose\n })\n })]\n });\n});\n\nfunction _toPrimitive(input, hint) {\n if (_typeof$1(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof$1(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\n\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return _typeof$1(key) === \"symbol\" ? key : String(key);\n}\n\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\n\nvar renderName = function renderName(_ref) {\n var name = _ref.name,\n group = _ref.group,\n config = _ref.config,\n setEditGroupDetail = _ref.setEditGroupDetail,\n setDeleteGroup = _ref.setDeleteGroup,\n getGroupDetail = _ref.getGroupDetail;\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"flex items-center justify-between gap-x-3\",\n children: [/*#__PURE__*/jsx(Tooltip, {\n content: name,\n position: \"bottom\",\n children: /*#__PURE__*/jsx(Typography, {\n className: \"truncate\",\n style: \"body2\",\n children: name\n })\n }), /*#__PURE__*/jsx(MoreDropdown, {\n dropdownProps: {\n strategy: \"fixed\",\n position: \"bottom-end\"\n },\n menuItems: [{\n key: \"edit-menu\",\n label: t$1(\"neetoTeamMembers.common.edit\"),\n onClick: function onClick() {\n return setEditGroupDetail({\n isVisible: true,\n groupId: group.id\n });\n }\n }, {\n key: \"delete-menu\",\n label: t$1(\"neetoTeamMembers.common.delete\"),\n onClick: function onClick() {\n var _config$groupDependen, _config$table, _config$table$onBefor;\n config !== null && config !== void 0 && (_config$groupDependen = config.groupDependency) !== null && _config$groupDependen !== void 0 && _config$groupDependen.isCheckEnabled ? config === null || config === void 0 || (_config$table = config.table) === null || _config$table === void 0 || (_config$table$onBefor = _config$table.onBeforeDelete) === null || _config$table$onBefor === void 0 ? void 0 : _config$table$onBefor.call(_config$table, group) : setDeleteGroup({\n isDeleting: true,\n group: getGroupDetail(group.id)\n });\n }\n }]\n })]\n });\n};\nvar getColumnData$1 = function getColumnData(_ref2) {\n var _config$table$columns, _config$table2, _config$table2$column;\n var _ref2$config = _ref2.config,\n config = _ref2$config === void 0 ? {} : _ref2$config,\n setEditGroupDetail = _ref2.setEditGroupDetail,\n setDeleteGroup = _ref2.setDeleteGroup,\n getGroupDetail = _ref2.getGroupDetail;\n return [{\n dataIndex: \"name\",\n key: \"name\",\n title: t$1(\"neetoTeamMembers.common.name\"),\n ellipsis: true,\n width: 150,\n render: function render(name, group) {\n return renderName({\n name: name,\n group: group,\n config: config,\n setEditGroupDetail: setEditGroupDetail,\n setDeleteGroup: setDeleteGroup,\n getGroupDetail: getGroupDetail\n });\n }\n }, {\n dataIndex: \"description\",\n key: \"description\",\n title: t$1(\"neetoTeamMembers.common.description\"),\n render: function render(description) {\n return description || \"-\";\n },\n width: 200\n }].concat(_toConsumableArray((_config$table$columns = config === null || config === void 0 || (_config$table2 = config.table) === null || _config$table2 === void 0 || (_config$table2$column = _config$table2.columnsData) === null || _config$table2$column === void 0 ? void 0 : _config$table2$column.call(_config$table2)) !== null && _config$table$columns !== void 0 ? _config$table$columns : []));\n};\n\nvar commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nfunction getDefaultExportFromCjs (x) {\n\treturn x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;\n}\n\nfunction commonjsRequire(path) {\n\tthrow new Error('Could not dynamically require \"' + path + '\". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.');\n}\n\nvar pluralize$1 = {exports: {}};\n\n/* global define */\npluralize$1.exports;\n\n(function (module, exports) {\n\t(function (root, pluralize) {\n\t /* istanbul ignore else */\n\t if (typeof commonjsRequire === 'function' && 'object' === 'object' && 'object' === 'object') {\n\t // Node.\n\t module.exports = pluralize();\n\t } else {\n\t // Browser global.\n\t root.pluralize = pluralize();\n\t }\n\t})(commonjsGlobal, function () {\n\t // Rule storage - pluralize and singularize need to be run sequentially,\n\t // while other rules can be optimized using an object for instant lookups.\n\t var pluralRules = [];\n\t var singularRules = [];\n\t var uncountables = {};\n\t var irregularPlurals = {};\n\t var irregularSingles = {};\n\n\t /**\n\t * Sanitize a pluralization rule to a usable regular expression.\n\t *\n\t * @param {(RegExp|string)} rule\n\t * @return {RegExp}\n\t */\n\t function sanitizeRule (rule) {\n\t if (typeof rule === 'string') {\n\t return new RegExp('^' + rule + '$', 'i');\n\t }\n\n\t return rule;\n\t }\n\n\t /**\n\t * Pass in a word token to produce a function that can replicate the case on\n\t * another word.\n\t *\n\t * @param {string} word\n\t * @param {string} token\n\t * @return {Function}\n\t */\n\t function restoreCase (word, token) {\n\t // Tokens are an exact match.\n\t if (word === token) return token;\n\n\t // Lower cased words. E.g. \"hello\".\n\t if (word === word.toLowerCase()) return token.toLowerCase();\n\n\t // Upper cased words. E.g. \"WHISKY\".\n\t if (word === word.toUpperCase()) return token.toUpperCase();\n\n\t // Title cased words. E.g. \"Title\".\n\t if (word[0] === word[0].toUpperCase()) {\n\t return token.charAt(0).toUpperCase() + token.substr(1).toLowerCase();\n\t }\n\n\t // Lower cased words. E.g. \"test\".\n\t return token.toLowerCase();\n\t }\n\n\t /**\n\t * Interpolate a regexp string.\n\t *\n\t * @param {string} str\n\t * @param {Array} args\n\t * @return {string}\n\t */\n\t function interpolate (str, args) {\n\t return str.replace(/\\$(\\d{1,2})/g, function (match, index) {\n\t return args[index] || '';\n\t });\n\t }\n\n\t /**\n\t * Replace a word using a rule.\n\t *\n\t * @param {string} word\n\t * @param {Array} rule\n\t * @return {string}\n\t */\n\t function replace (word, rule) {\n\t return word.replace(rule[0], function (match, index) {\n\t var result = interpolate(rule[1], arguments);\n\n\t if (match === '') {\n\t return restoreCase(word[index - 1], result);\n\t }\n\n\t return restoreCase(match, result);\n\t });\n\t }\n\n\t /**\n\t * Sanitize a word by passing in the word and sanitization rules.\n\t *\n\t * @param {string} token\n\t * @param {string} word\n\t * @param {Array} rules\n\t * @return {string}\n\t */\n\t function sanitizeWord (token, word, rules) {\n\t // Empty string or doesn't need fixing.\n\t if (!token.length || uncountables.hasOwnProperty(token)) {\n\t return word;\n\t }\n\n\t var len = rules.length;\n\n\t // Iterate over the sanitization rules and use the first one to match.\n\t while (len--) {\n\t var rule = rules[len];\n\n\t if (rule[0].test(word)) return replace(word, rule);\n\t }\n\n\t return word;\n\t }\n\n\t /**\n\t * Replace a word with the updated word.\n\t *\n\t * @param {Object} replaceMap\n\t * @param {Object} keepMap\n\t * @param {Array} rules\n\t * @return {Function}\n\t */\n\t function replaceWord (replaceMap, keepMap, rules) {\n\t return function (word) {\n\t // Get the correct token and case restoration functions.\n\t var token = word.toLowerCase();\n\n\t // Check against the keep object map.\n\t if (keepMap.hasOwnProperty(token)) {\n\t return restoreCase(word, token);\n\t }\n\n\t // Check against the replacement map for a direct word replacement.\n\t if (replaceMap.hasOwnProperty(token)) {\n\t return restoreCase(word, replaceMap[token]);\n\t }\n\n\t // Run all the rules against the word.\n\t return sanitizeWord(token, word, rules);\n\t };\n\t }\n\n\t /**\n\t * Check if a word is part of the map.\n\t */\n\t function checkWord (replaceMap, keepMap, rules, bool) {\n\t return function (word) {\n\t var token = word.toLowerCase();\n\n\t if (keepMap.hasOwnProperty(token)) return true;\n\t if (replaceMap.hasOwnProperty(token)) return false;\n\n\t return sanitizeWord(token, token, rules) === token;\n\t };\n\t }\n\n\t /**\n\t * Pluralize or singularize a word based on the passed in count.\n\t *\n\t * @param {string} word The word to pluralize\n\t * @param {number} count How many of the word exist\n\t * @param {boolean} inclusive Whether to prefix with the number (e.g. 3 ducks)\n\t * @return {string}\n\t */\n\t function pluralize (word, count, inclusive) {\n\t var pluralized = count === 1\n\t ? pluralize.singular(word) : pluralize.plural(word);\n\n\t return (inclusive ? count + ' ' : '') + pluralized;\n\t }\n\n\t /**\n\t * Pluralize a word.\n\t *\n\t * @type {Function}\n\t */\n\t pluralize.plural = replaceWord(\n\t irregularSingles, irregularPlurals, pluralRules\n\t );\n\n\t /**\n\t * Check if a word is plural.\n\t *\n\t * @type {Function}\n\t */\n\t pluralize.isPlural = checkWord(\n\t irregularSingles, irregularPlurals, pluralRules\n\t );\n\n\t /**\n\t * Singularize a word.\n\t *\n\t * @type {Function}\n\t */\n\t pluralize.singular = replaceWord(\n\t irregularPlurals, irregularSingles, singularRules\n\t );\n\n\t /**\n\t * Check if a word is singular.\n\t *\n\t * @type {Function}\n\t */\n\t pluralize.isSingular = checkWord(\n\t irregularPlurals, irregularSingles, singularRules\n\t );\n\n\t /**\n\t * Add a pluralization rule to the collection.\n\t *\n\t * @param {(string|RegExp)} rule\n\t * @param {string} replacement\n\t */\n\t pluralize.addPluralRule = function (rule, replacement) {\n\t pluralRules.push([sanitizeRule(rule), replacement]);\n\t };\n\n\t /**\n\t * Add a singularization rule to the collection.\n\t *\n\t * @param {(string|RegExp)} rule\n\t * @param {string} replacement\n\t */\n\t pluralize.addSingularRule = function (rule, replacement) {\n\t singularRules.push([sanitizeRule(rule), replacement]);\n\t };\n\n\t /**\n\t * Add an uncountable word rule.\n\t *\n\t * @param {(string|RegExp)} word\n\t */\n\t pluralize.addUncountableRule = function (word) {\n\t if (typeof word === 'string') {\n\t uncountables[word.toLowerCase()] = true;\n\t return;\n\t }\n\n\t // Set singular and plural references for the word.\n\t pluralize.addPluralRule(word, '$0');\n\t pluralize.addSingularRule(word, '$0');\n\t };\n\n\t /**\n\t * Add an irregular word definition.\n\t *\n\t * @param {string} single\n\t * @param {string} plural\n\t */\n\t pluralize.addIrregularRule = function (single, plural) {\n\t plural = plural.toLowerCase();\n\t single = single.toLowerCase();\n\n\t irregularSingles[single] = plural;\n\t irregularPlurals[plural] = single;\n\t };\n\n\t /**\n\t * Irregular rules.\n\t */\n\t [\n\t // Pronouns.\n\t ['I', 'we'],\n\t ['me', 'us'],\n\t ['he', 'they'],\n\t ['she', 'they'],\n\t ['them', 'them'],\n\t ['myself', 'ourselves'],\n\t ['yourself', 'yourselves'],\n\t ['itself', 'themselves'],\n\t ['herself', 'themselves'],\n\t ['himself', 'themselves'],\n\t ['themself', 'themselves'],\n\t ['is', 'are'],\n\t ['was', 'were'],\n\t ['has', 'have'],\n\t ['this', 'these'],\n\t ['that', 'those'],\n\t // Words ending in with a consonant and `o`.\n\t ['echo', 'echoes'],\n\t ['dingo', 'dingoes'],\n\t ['volcano', 'volcanoes'],\n\t ['tornado', 'tornadoes'],\n\t ['torpedo', 'torpedoes'],\n\t // Ends with `us`.\n\t ['genus', 'genera'],\n\t ['viscus', 'viscera'],\n\t // Ends with `ma`.\n\t ['stigma', 'stigmata'],\n\t ['stoma', 'stomata'],\n\t ['dogma', 'dogmata'],\n\t ['lemma', 'lemmata'],\n\t ['schema', 'schemata'],\n\t ['anathema', 'anathemata'],\n\t // Other irregular rules.\n\t ['ox', 'oxen'],\n\t ['axe', 'axes'],\n\t ['die', 'dice'],\n\t ['yes', 'yeses'],\n\t ['foot', 'feet'],\n\t ['eave', 'eaves'],\n\t ['goose', 'geese'],\n\t ['tooth', 'teeth'],\n\t ['quiz', 'quizzes'],\n\t ['human', 'humans'],\n\t ['proof', 'proofs'],\n\t ['carve', 'carves'],\n\t ['valve', 'valves'],\n\t ['looey', 'looies'],\n\t ['thief', 'thieves'],\n\t ['groove', 'grooves'],\n\t ['pickaxe', 'pickaxes'],\n\t ['passerby', 'passersby']\n\t ].forEach(function (rule) {\n\t return pluralize.addIrregularRule(rule[0], rule[1]);\n\t });\n\n\t /**\n\t * Pluralization rules.\n\t */\n\t [\n\t [/s?$/i, 's'],\n\t [/[^\\u0000-\\u007F]$/i, '$0'],\n\t [/([^aeiou]ese)$/i, '$1'],\n\t [/(ax|test)is$/i, '$1es'],\n\t [/(alias|[^aou]us|t[lm]as|gas|ris)$/i, '$1es'],\n\t [/(e[mn]u)s?$/i, '$1s'],\n\t [/([^l]ias|[aeiou]las|[ejzr]as|[iu]am)$/i, '$1'],\n\t [/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i, '$1i'],\n\t [/(alumn|alg|vertebr)(?:a|ae)$/i, '$1ae'],\n\t [/(seraph|cherub)(?:im)?$/i, '$1im'],\n\t [/(her|at|gr)o$/i, '$1oes'],\n\t [/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|automat|quor)(?:a|um)$/i, '$1a'],\n\t [/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)(?:a|on)$/i, '$1a'],\n\t [/sis$/i, 'ses'],\n\t [/(?:(kni|wi|li)fe|(ar|l|ea|eo|oa|hoo)f)$/i, '$1$2ves'],\n\t [/([^aeiouy]|qu)y$/i, '$1ies'],\n\t [/([^ch][ieo][ln])ey$/i, '$1ies'],\n\t [/(x|ch|ss|sh|zz)$/i, '$1es'],\n\t [/(matr|cod|mur|sil|vert|ind|append)(?:ix|ex)$/i, '$1ices'],\n\t [/\\b((?:tit)?m|l)(?:ice|ouse)$/i, '$1ice'],\n\t [/(pe)(?:rson|ople)$/i, '$1ople'],\n\t [/(child)(?:ren)?$/i, '$1ren'],\n\t [/eaux$/i, '$0'],\n\t [/m[ae]n$/i, 'men'],\n\t ['thou', 'you']\n\t ].forEach(function (rule) {\n\t return pluralize.addPluralRule(rule[0], rule[1]);\n\t });\n\n\t /**\n\t * Singularization rules.\n\t */\n\t [\n\t [/s$/i, ''],\n\t [/(ss)$/i, '$1'],\n\t [/(wi|kni|(?:after|half|high|low|mid|non|night|[^\\w]|^)li)ves$/i, '$1fe'],\n\t [/(ar|(?:wo|[ae])l|[eo][ao])ves$/i, '$1f'],\n\t [/ies$/i, 'y'],\n\t [/\\b([pl]|zomb|(?:neck|cross)?t|coll|faer|food|gen|goon|group|lass|talk|goal|cut)ies$/i, '$1ie'],\n\t [/\\b(mon|smil)ies$/i, '$1ey'],\n\t [/\\b((?:tit)?m|l)ice$/i, '$1ouse'],\n\t [/(seraph|cherub)im$/i, '$1'],\n\t [/(x|ch|ss|sh|zz|tto|go|cho|alias|[^aou]us|t[lm]as|gas|(?:her|at|gr)o|[aeiou]ris)(?:es)?$/i, '$1'],\n\t [/(analy|diagno|parenthe|progno|synop|the|empha|cri|ne)(?:sis|ses)$/i, '$1sis'],\n\t [/(movie|twelve|abuse|e[mn]u)s$/i, '$1'],\n\t [/(test)(?:is|es)$/i, '$1is'],\n\t [/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i, '$1us'],\n\t [/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|quor)a$/i, '$1um'],\n\t [/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)a$/i, '$1on'],\n\t [/(alumn|alg|vertebr)ae$/i, '$1a'],\n\t [/(cod|mur|sil|vert|ind)ices$/i, '$1ex'],\n\t [/(matr|append)ices$/i, '$1ix'],\n\t [/(pe)(rson|ople)$/i, '$1rson'],\n\t [/(child)ren$/i, '$1'],\n\t [/(eau)x?$/i, '$1'],\n\t [/men$/i, 'man']\n\t ].forEach(function (rule) {\n\t return pluralize.addSingularRule(rule[0], rule[1]);\n\t });\n\n\t /**\n\t * Uncountable rules.\n\t */\n\t [\n\t // Singular words with no plurals.\n\t 'adulthood',\n\t 'advice',\n\t 'agenda',\n\t 'aid',\n\t 'aircraft',\n\t 'alcohol',\n\t 'ammo',\n\t 'analytics',\n\t 'anime',\n\t 'athletics',\n\t 'audio',\n\t 'bison',\n\t 'blood',\n\t 'bream',\n\t 'buffalo',\n\t 'butter',\n\t 'carp',\n\t 'cash',\n\t 'chassis',\n\t 'chess',\n\t 'clothing',\n\t 'cod',\n\t 'commerce',\n\t 'cooperation',\n\t 'corps',\n\t 'debris',\n\t 'diabetes',\n\t 'digestion',\n\t 'elk',\n\t 'energy',\n\t 'equipment',\n\t 'excretion',\n\t 'expertise',\n\t 'firmware',\n\t 'flounder',\n\t 'fun',\n\t 'gallows',\n\t 'garbage',\n\t 'graffiti',\n\t 'hardware',\n\t 'headquarters',\n\t 'health',\n\t 'herpes',\n\t 'highjinks',\n\t 'homework',\n\t 'housework',\n\t 'information',\n\t 'jeans',\n\t 'justice',\n\t 'kudos',\n\t 'labour',\n\t 'literature',\n\t 'machinery',\n\t 'mackerel',\n\t 'mail',\n\t 'media',\n\t 'mews',\n\t 'moose',\n\t 'music',\n\t 'mud',\n\t 'manga',\n\t 'news',\n\t 'only',\n\t 'personnel',\n\t 'pike',\n\t 'plankton',\n\t 'pliers',\n\t 'police',\n\t 'pollution',\n\t 'premises',\n\t 'rain',\n\t 'research',\n\t 'rice',\n\t 'salmon',\n\t 'scissors',\n\t 'series',\n\t 'sewage',\n\t 'shambles',\n\t 'shrimp',\n\t 'software',\n\t 'species',\n\t 'staff',\n\t 'swine',\n\t 'tennis',\n\t 'traffic',\n\t 'transportation',\n\t 'trout',\n\t 'tuna',\n\t 'wealth',\n\t 'welfare',\n\t 'whiting',\n\t 'wildebeest',\n\t 'wildlife',\n\t 'you',\n\t /pok[eé]mon$/i,\n\t // Regexes.\n\t /[^aeiou]ese$/i, // \"chinese\", \"japanese\"\n\t /deer$/i, // \"deer\", \"reindeer\"\n\t /fish$/i, // \"fish\", \"blowfish\", \"angelfish\"\n\t /measles$/i,\n\t /o[iu]s$/i, // \"carnivorous\"\n\t /pox$/i, // \"chickpox\", \"smallpox\"\n\t /sheep$/i\n\t ].forEach(pluralize.addUncountableRule);\n\n\t return pluralize;\n\t}); \n} (pluralize$1, pluralize$1.exports));\n\nvar pluralizeExports = pluralize$1.exports;\nvar pluralize = /*@__PURE__*/getDefaultExportFromCjs(pluralizeExports);\n\nvar pluralizeLabelUsingTaxonomy = function pluralizeLabelUsingTaxonomy(label, count) {\n if (includes(label, keys(taxonomies))) {\n var taxonomyLabel = count > 1 ? taxonomies[label].plural : taxonomies[label].singular;\n return \"\".concat(count, \" \").concat(taxonomyLabel.toLocaleLowerCase());\n }\n return pluralize(label, count, true).toLocaleLowerCase();\n};\n\nvar Edit = function Edit(_ref) {\n var config = _ref.config,\n groupId = _ref.groupId,\n isOpen = _ref.isOpen,\n onClose = _ref.onClose;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useFetchGroup = useFetchGroup(groupId),\n group = _useFetchGroup.data,\n isLoading = _useFetchGroup.isLoading;\n if (isLoading) {\n return /*#__PURE__*/jsx(\"div\", {\n className: \"h-screen w-full\",\n children: /*#__PURE__*/jsx(PageLoader, {})\n });\n }\n return /*#__PURE__*/jsxs(Pane, {\n isOpen: isOpen,\n onClose: onClose,\n children: [/*#__PURE__*/jsx(Pane.Header, {\n children: /*#__PURE__*/jsx(Typography, {\n style: \"h2\",\n weight: \"semibold\",\n children: t(\"neetoTeamMembers.common.edit_\", {\n what: taxonomies.group.singular\n })\n })\n }), /*#__PURE__*/jsx(Pane.Body, {\n children: /*#__PURE__*/jsx(Form, {\n config: config,\n group: group,\n onClose: onClose,\n isEdit: true\n })\n })]\n });\n};\n\nfunction ownKeys$k(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$k(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$k(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$k(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar List = function List(_ref) {\n var _config$table$deleteA, _config$table, _config$table$deleteA2;\n var config = _ref.config,\n groups = _ref.groups,\n isLoading = _ref.isLoading,\n searchTerm = _ref.searchTerm,\n pageProperties = _ref.pageProperties,\n setPageProperties = _ref.setPageProperties,\n emptyStateAction = _ref.emptyStateAction;\n var _useState = useState(DEFAULT_EDIT_GROUP),\n _useState2 = _slicedToArray(_useState, 2),\n editGroupDetail = _useState2[0],\n setEditGroupDetail = _useState2[1];\n var _useState3 = useState(DEFAULT_DELETE_GROUP_DATA),\n _useState4 = _slicedToArray(_useState3, 2),\n deleteGroup = _useState4[0],\n setDeleteGroup = _useState4[1];\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var totalCount = groups === null || groups === void 0 ? void 0 : groups.length;\n var _useDeleteGroup = useDeleteGroup(config),\n groupDelete = _useDeleteGroup.mutate,\n isDeleting = _useDeleteGroup.isPending;\n var getGroupDetail = function getGroupDetail(id) {\n return findById(id, groups);\n };\n var handleGroupDelete = function handleGroupDelete(group) {\n groupDelete(group.id, {\n onSuccess: function onSuccess() {\n setDeleteGroup(DEFAULT_DELETE_GROUP_DATA);\n }\n });\n };\n var columnData = getColumnData$1({\n config: config,\n setEditGroupDetail: setEditGroupDetail,\n setDeleteGroup: setDeleteGroup,\n getGroupDetail: getGroupDetail\n });\n useEffect(function () {\n var _config$groupDependen, _config$groupDependen2, _config$groupDependen3, _config$groupDependen4;\n if (config !== null && config !== void 0 && (_config$groupDependen = config.groupDependency) !== null && _config$groupDependen !== void 0 && _config$groupDependen.isCheckEnabled && ((_config$groupDependen2 = config.groupDependency) === null || _config$groupDependen2 === void 0 ? void 0 : _config$groupDependen2.verificationStatus) === \"successful\" && !(config !== null && config !== void 0 && (_config$groupDependen3 = config.groupDependency) !== null && _config$groupDependen3 !== void 0 && _config$groupDependen3.isDependent) && isPresent(config === null || config === void 0 || (_config$groupDependen4 = config.groupDependency) === null || _config$groupDependen4 === void 0 ? void 0 : _config$groupDependen4.selectedGroup)) {\n var _config$groupDependen5;\n setDeleteGroup({\n isDeleting: true,\n group: config === null || config === void 0 || (_config$groupDependen5 = config.groupDependency) === null || _config$groupDependen5 === void 0 ? void 0 : _config$groupDependen5.selectedGroup\n });\n }\n }, [config === null || config === void 0 ? void 0 : config.groupDependency]);\n if (isLoading || isDeleting) {\n return /*#__PURE__*/jsx(\"div\", {\n className: \"h-screen w-full\",\n children: /*#__PURE__*/jsx(PageLoader, {})\n });\n }\n return /*#__PURE__*/jsxs(Fragment, {\n children: [!isEmpty(groups) ? /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(SubHeader$1, {\n leftActionBlock: totalCount > 0 && /*#__PURE__*/jsx(Typography, {\n className: \"mr-4 font-semibold\",\n component: \"h4\",\n \"data-cy\": \"item-count\",\n children: pluralizeLabelUsingTaxonomy(taxonomies.group.singular, totalCount)\n })\n }), /*#__PURE__*/jsx(TableWrapper, {\n hasPagination: totalCount > pageProperties.size,\n children: /*#__PURE__*/jsx(Table$1, {\n columnData: columnData,\n totalCount: totalCount,\n fixedHeight: true,\n allowRowClick: false,\n currentPageNumber: pageProperties.index,\n defaultPageSize: pageProperties.size,\n loading: isLoading,\n rowData: groups,\n rowSelection: false,\n scroll: {\n x: \"100%\"\n },\n handlePageChange: function handlePageChange(index, size) {\n return setPageProperties({\n index: index,\n size: size\n });\n }\n })\n })]\n }) : /*#__PURE__*/jsx(\"div\", {\n className: \"flex h-full w-full flex-grow items-center justify-center\",\n children: /*#__PURE__*/jsx(NoData, _objectSpread$k({\n title: t(\"neetoTeamMembers.helpers.emptyTable\", {\n entity: taxonomies.group.plural\n })\n }, !searchTerm && {\n primaryButtonProps: {\n label: t(\"neetoTeamMembers.common.addNew_\", {\n what: taxonomies.group.singular\n }),\n onClick: emptyStateAction\n }\n }))\n }), /*#__PURE__*/jsx(Edit, {\n config: config,\n groupId: editGroupDetail.groupId,\n isOpen: editGroupDetail.isVisible,\n onClose: function onClose() {\n return setEditGroupDetail(DEFAULT_EDIT_GROUP);\n }\n }), /*#__PURE__*/jsx(Alert, {\n isOpen: deleteGroup.isDeleting,\n submitButtonLabel: t(\"neetoTeamMembers.common.delete\"),\n message: (_config$table$deleteA = config === null || config === void 0 || (_config$table = config.table) === null || _config$table === void 0 || (_config$table$deleteA2 = _config$table.deleteAlertMessage) === null || _config$table$deleteA2 === void 0 ? void 0 : _config$table$deleteA2.call(_config$table, deleteGroup.group)) !== null && _config$table$deleteA !== void 0 ? _config$table$deleteA : /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.alerts.messages.delete\",\n values: {\n resource: taxonomies.group.singular,\n name: deleteGroup.group.name\n }\n }),\n title: t(\"neetoTeamMembers.labels.deleteTitle\", {\n resource: taxonomies.group.singular\n }),\n onClose: function onClose() {\n return setDeleteGroup(DEFAULT_DELETE_GROUP_DATA);\n },\n onSubmit: function onSubmit() {\n return handleGroupDelete(deleteGroup.group);\n }\n })]\n });\n};\n\nvar Groups = function Groups(_ref) {\n var _config$header$breadc, _config$header;\n var _ref$config = _ref.config,\n config = _ref$config === void 0 ? {} : _ref$config;\n var _useQueryParams = useQueryParams(),\n _useQueryParams$searc = _useQueryParams.searchTerm,\n searchTerm = _useQueryParams$searc === void 0 ? \"\" : _useQueryParams$searc;\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isPaneOpen = _useState2[0],\n setIsPaneOpen = _useState2[1];\n var _useState3 = useState(DEFAULT_PAGE_PROPERTIES),\n _useState4 = _slicedToArray(_useState3, 2),\n pageProperties = _useState4[0],\n setPageProperties = _useState4[1];\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useFetchGroups = useFetchGroups({\n page: pageProperties.index,\n pageSize: pageProperties.size,\n searchTerm: searchTerm\n }),\n _useFetchGroups$data = _useFetchGroups.data,\n _useFetchGroups$data2 = _useFetchGroups$data === void 0 ? {} : _useFetchGroups$data,\n groups = _useFetchGroups$data2.groups,\n isLoading = _useFetchGroups.isLoading;\n var isFiltersVisible = isNotEmpty(groups) || isPresent(searchTerm);\n useEffect(function () {\n setPageProperties(DEFAULT_PAGE_PROPERTIES);\n }, [searchTerm]);\n return /*#__PURE__*/jsxs(Container, {\n children: [/*#__PURE__*/jsx(NeetoHeader, {\n breadcrumbs: (_config$header$breadc = config === null || config === void 0 || (_config$header = config.header) === null || _config$header === void 0 ? void 0 : _config$header.breadcrumbs) !== null && _config$header$breadc !== void 0 ? _config$header$breadc : [],\n title: taxonomies.group.plural,\n actionBlock: /*#__PURE__*/jsx(\"div\", {\n className: \"flex flex-row items-center justify-end\",\n children: /*#__PURE__*/jsx(Button, {\n \"data-cy\": \"add-new-group-button\",\n style: \"primary\",\n label: t(\"neetoTeamMembers.common.addNew_\", {\n what: taxonomies.group.singular\n }),\n onClick: function onClick() {\n return setIsPaneOpen(true);\n }\n })\n }),\n searchProps: isFiltersVisible && {\n placeholder: t(\"neetoTeamMembers.placeholders.searchEntity\", {\n entity: taxonomies.group.plural\n })\n }\n }), /*#__PURE__*/jsx(List, {\n config: config,\n groups: groups,\n isLoading: isLoading,\n pageProperties: pageProperties,\n searchTerm: searchTerm,\n setPageProperties: setPageProperties,\n emptyStateAction: function emptyStateAction() {\n return setIsPaneOpen(true);\n },\n onClose: function onClose() {\n return setIsPaneOpen(false);\n }\n }), /*#__PURE__*/jsx(Create, {\n config: config,\n isOpen: isPaneOpen,\n onClose: function onClose() {\n return setIsPaneOpen(false);\n }\n })]\n });\n};\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\n\nvar regeneratorRuntime$1 = {exports: {}};\n\nvar _typeof = {exports: {}};\n\n_typeof.exports;\n\n(function (module) {\n\tfunction _typeof(o) {\n\t \"@babel/helpers - typeof\";\n\n\t return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n\t return typeof o;\n\t } : function (o) {\n\t return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n\t }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(o);\n\t}\n\tmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports; \n} (_typeof));\n\nvar _typeofExports = _typeof.exports;\n\nregeneratorRuntime$1.exports;\n\n(function (module) {\n\tvar _typeof = _typeofExports[\"default\"];\n\tfunction _regeneratorRuntime() {\n\t module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n\t return e;\n\t }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n\t var t,\n\t e = {},\n\t r = Object.prototype,\n\t n = r.hasOwnProperty,\n\t o = Object.defineProperty || function (t, e, r) {\n\t t[e] = r.value;\n\t },\n\t i = \"function\" == typeof Symbol ? Symbol : {},\n\t a = i.iterator || \"@@iterator\",\n\t c = i.asyncIterator || \"@@asyncIterator\",\n\t u = i.toStringTag || \"@@toStringTag\";\n\t function define(t, e, r) {\n\t return Object.defineProperty(t, e, {\n\t value: r,\n\t enumerable: !0,\n\t configurable: !0,\n\t writable: !0\n\t }), t[e];\n\t }\n\t try {\n\t define({}, \"\");\n\t } catch (t) {\n\t define = function define(t, e, r) {\n\t return t[e] = r;\n\t };\n\t }\n\t function wrap(t, e, r, n) {\n\t var i = e && e.prototype instanceof Generator ? e : Generator,\n\t a = Object.create(i.prototype),\n\t c = new Context(n || []);\n\t return o(a, \"_invoke\", {\n\t value: makeInvokeMethod(t, r, c)\n\t }), a;\n\t }\n\t function tryCatch(t, e, r) {\n\t try {\n\t return {\n\t type: \"normal\",\n\t arg: t.call(e, r)\n\t };\n\t } catch (t) {\n\t return {\n\t type: \"throw\",\n\t arg: t\n\t };\n\t }\n\t }\n\t e.wrap = wrap;\n\t var h = \"suspendedStart\",\n\t l = \"suspendedYield\",\n\t f = \"executing\",\n\t s = \"completed\",\n\t y = {};\n\t function Generator() {}\n\t function GeneratorFunction() {}\n\t function GeneratorFunctionPrototype() {}\n\t var p = {};\n\t define(p, a, function () {\n\t return this;\n\t });\n\t var d = Object.getPrototypeOf,\n\t v = d && d(d(values([])));\n\t v && v !== r && n.call(v, a) && (p = v);\n\t var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n\t function defineIteratorMethods(t) {\n\t [\"next\", \"throw\", \"return\"].forEach(function (e) {\n\t define(t, e, function (t) {\n\t return this._invoke(e, t);\n\t });\n\t });\n\t }\n\t function AsyncIterator(t, e) {\n\t function invoke(r, o, i, a) {\n\t var c = tryCatch(t[r], t, o);\n\t if (\"throw\" !== c.type) {\n\t var u = c.arg,\n\t h = u.value;\n\t return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n\t invoke(\"next\", t, i, a);\n\t }, function (t) {\n\t invoke(\"throw\", t, i, a);\n\t }) : e.resolve(h).then(function (t) {\n\t u.value = t, i(u);\n\t }, function (t) {\n\t return invoke(\"throw\", t, i, a);\n\t });\n\t }\n\t a(c.arg);\n\t }\n\t var r;\n\t o(this, \"_invoke\", {\n\t value: function value(t, n) {\n\t function callInvokeWithMethodAndArg() {\n\t return new e(function (e, r) {\n\t invoke(t, n, e, r);\n\t });\n\t }\n\t return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n\t }\n\t });\n\t }\n\t function makeInvokeMethod(e, r, n) {\n\t var o = h;\n\t return function (i, a) {\n\t if (o === f) throw new Error(\"Generator is already running\");\n\t if (o === s) {\n\t if (\"throw\" === i) throw a;\n\t return {\n\t value: t,\n\t done: !0\n\t };\n\t }\n\t for (n.method = i, n.arg = a;;) {\n\t var c = n.delegate;\n\t if (c) {\n\t var u = maybeInvokeDelegate(c, n);\n\t if (u) {\n\t if (u === y) continue;\n\t return u;\n\t }\n\t }\n\t if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n\t if (o === h) throw o = s, n.arg;\n\t n.dispatchException(n.arg);\n\t } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n\t o = f;\n\t var p = tryCatch(e, r, n);\n\t if (\"normal\" === p.type) {\n\t if (o = n.done ? s : l, p.arg === y) continue;\n\t return {\n\t value: p.arg,\n\t done: n.done\n\t };\n\t }\n\t \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n\t }\n\t };\n\t }\n\t function maybeInvokeDelegate(e, r) {\n\t var n = r.method,\n\t o = e.iterator[n];\n\t if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n\t var i = tryCatch(o, e.iterator, r.arg);\n\t if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n\t var a = i.arg;\n\t return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n\t }\n\t function pushTryEntry(t) {\n\t var e = {\n\t tryLoc: t[0]\n\t };\n\t 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n\t }\n\t function resetTryEntry(t) {\n\t var e = t.completion || {};\n\t e.type = \"normal\", delete e.arg, t.completion = e;\n\t }\n\t function Context(t) {\n\t this.tryEntries = [{\n\t tryLoc: \"root\"\n\t }], t.forEach(pushTryEntry, this), this.reset(!0);\n\t }\n\t function values(e) {\n\t if (e || \"\" === e) {\n\t var r = e[a];\n\t if (r) return r.call(e);\n\t if (\"function\" == typeof e.next) return e;\n\t if (!isNaN(e.length)) {\n\t var o = -1,\n\t i = function next() {\n\t for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n\t return next.value = t, next.done = !0, next;\n\t };\n\t return i.next = i;\n\t }\n\t }\n\t throw new TypeError(_typeof(e) + \" is not iterable\");\n\t }\n\t return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n\t value: GeneratorFunctionPrototype,\n\t configurable: !0\n\t }), o(GeneratorFunctionPrototype, \"constructor\", {\n\t value: GeneratorFunction,\n\t configurable: !0\n\t }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n\t var e = \"function\" == typeof t && t.constructor;\n\t return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n\t }, e.mark = function (t) {\n\t return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n\t }, e.awrap = function (t) {\n\t return {\n\t __await: t\n\t };\n\t }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n\t return this;\n\t }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n\t void 0 === i && (i = Promise);\n\t var a = new AsyncIterator(wrap(t, r, n, o), i);\n\t return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n\t return t.done ? t.value : a.next();\n\t });\n\t }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n\t return this;\n\t }), define(g, \"toString\", function () {\n\t return \"[object Generator]\";\n\t }), e.keys = function (t) {\n\t var e = Object(t),\n\t r = [];\n\t for (var n in e) r.push(n);\n\t return r.reverse(), function next() {\n\t for (; r.length;) {\n\t var t = r.pop();\n\t if (t in e) return next.value = t, next.done = !1, next;\n\t }\n\t return next.done = !0, next;\n\t };\n\t }, e.values = values, Context.prototype = {\n\t constructor: Context,\n\t reset: function reset(e) {\n\t if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n\t },\n\t stop: function stop() {\n\t this.done = !0;\n\t var t = this.tryEntries[0].completion;\n\t if (\"throw\" === t.type) throw t.arg;\n\t return this.rval;\n\t },\n\t dispatchException: function dispatchException(e) {\n\t if (this.done) throw e;\n\t var r = this;\n\t function handle(n, o) {\n\t return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n\t }\n\t for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n\t var i = this.tryEntries[o],\n\t a = i.completion;\n\t if (\"root\" === i.tryLoc) return handle(\"end\");\n\t if (i.tryLoc <= this.prev) {\n\t var c = n.call(i, \"catchLoc\"),\n\t u = n.call(i, \"finallyLoc\");\n\t if (c && u) {\n\t if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n\t if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n\t } else if (c) {\n\t if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n\t } else {\n\t if (!u) throw new Error(\"try statement without catch or finally\");\n\t if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n\t }\n\t }\n\t }\n\t },\n\t abrupt: function abrupt(t, e) {\n\t for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n\t var o = this.tryEntries[r];\n\t if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n\t var i = o;\n\t break;\n\t }\n\t }\n\t i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n\t var a = i ? i.completion : {};\n\t return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n\t },\n\t complete: function complete(t, e) {\n\t if (\"throw\" === t.type) throw t.arg;\n\t return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n\t },\n\t finish: function finish(t) {\n\t for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n\t var r = this.tryEntries[e];\n\t if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n\t }\n\t },\n\t \"catch\": function _catch(t) {\n\t for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n\t var r = this.tryEntries[e];\n\t if (r.tryLoc === t) {\n\t var n = r.completion;\n\t if (\"throw\" === n.type) {\n\t var o = n.arg;\n\t resetTryEntry(r);\n\t }\n\t return o;\n\t }\n\t }\n\t throw new Error(\"illegal catch attempt\");\n\t },\n\t delegateYield: function delegateYield(e, r, n) {\n\t return this.delegate = {\n\t iterator: values(e),\n\t resultName: r,\n\t nextLoc: n\n\t }, \"next\" === this.method && (this.arg = t), y;\n\t }\n\t }, e;\n\t}\n\tmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports; \n} (regeneratorRuntime$1));\n\nvar regeneratorRuntimeExports = regeneratorRuntime$1.exports;\n\n// TODO(Babel 8): Remove this file.\n\nvar runtime = regeneratorRuntimeExports();\nvar regenerator = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n\nvar _regeneratorRuntime = /*@__PURE__*/getDefaultExportFromCjs(regenerator);\n\nvar fetchCountries = function fetchCountries() {\n return axios.get(\"\".concat(BASE_URL, \"/profile/countries\"));\n};\nvar fetchUserDetails = function fetchUserDetails() {\n return axios.get(\"\".concat(BASE_URL, \"/profile/user\"));\n};\nvar updateUser = function updateUser(_ref) {\n var id = _ref.id,\n payload = _ref.payload;\n return axios.put(\"\".concat(BASE_URL, \"/profile/user/\").concat(id), payload);\n};\nvar profileApi = {\n fetchCountries: fetchCountries,\n fetchUserDetails: fetchUserDetails,\n updateUser: updateUser\n};\n\nfunction ownKeys$j(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$j(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$j(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$j(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar useFetchProfile = function useFetchProfile(options) {\n return useQuery(_objectSpread$j({\n queryKey: [QUERY_KEYS.USER_PROFILE],\n queryFn: profileApi.fetchUserDetails,\n staleTime: DEFAULT_STALE_TIME\n }, options));\n};\nvar useUpdateProfileMutation = function useUpdateProfileMutation(options) {\n return useMutationWithInvalidation(profileApi.updateUser, _objectSpread$j(_objectSpread$j({\n keysToInvalidate: [[QUERY_KEYS.USER_PROFILE]]\n }, options), {}, {\n onSuccess: function onSuccess() {\n return window.location.reload();\n }\n }));\n};\n\nvar PROFILE_VALIDATION_SCHEMA = yup.object().shape({\n firstName: yup.string().trim().required(t$1(\"neetoTeamMembers.profile.form.isRequired.firstName\")).matches(/^[a-zA-Z0-9 ,'-áéíóúÁÉÍÓÚ]+$/i, t$1(\"neetoTeamMembers.profile.form.invalidName\")).matches(/^[^.]+$/i, t$1(\"neetoTeamMembers.profile.form.dotsNotAllowed\")),\n lastName: yup.string().trim().required(t$1(\"neetoTeamMembers.profile.form.isRequired.lastName\")).matches(/^[a-zA-Z0-9 ,'-áéíóúÁÉÍÓÚ]+$/i, t$1(\"neetoTeamMembers.profile.form.invalidName\")).matches(/^[^.]+$/i, t$1(\"neetoTeamMembers.profile.form.dotsNotAllowed\")),\n dateFormat: yup.string().required(t$1(\"neetoTeamMembers.profile.form.isRequired.dateFormat\"))\n});\nvar MY_PROFILE_PATH = \"/auth/profile/edit\";\nvar ALLOWED_PROFILE_IMAGE_MIME_TYPES = [\"image/jpeg\", \"image/png\"];\nvar IMAGE_DELETE_BUTTON_SIZE = 16;\nvar STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES = globalProps.endUserUploadedFileSizeLimitInMb * 1024 * 1024;\nvar VALIDATION_ERRORS = {\n invalid_type: t$1(\"neetoTeamMembers.profile.file.invalidType.image\"),\n corrupted_file: t$1(\"neetoTeamMembers.profile.file.corrupted\"),\n file_limit_exceeded: t$1(\"neetoTeamMembers.profile.file.limitExceeded\", {\n maxSize: globalProps.endUserUploadedFileSizeLimitInMb\n })\n};\n\nfunction ownKeys$i(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$i(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$i(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$i(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar useFetchCountries = function useFetchCountries(options) {\n return useQuery(_objectSpread$i({\n queryKey: [QUERY_KEYS.COUNTRIES_LIST],\n queryFn: profileApi.fetchCountries,\n staleTime: DEFAULT_STALE_TIME\n }, options));\n};\n\nvar findTimeZoneAndCountry = function findTimeZoneAndCountry(timeZoneName, countries) {\n return countries.reduce(function (acc, country) {\n var timeZone = findBy({\n name: timeZoneName\n }, country.timeZones);\n return timeZone ? {\n country: country,\n timeZone: timeZone\n } : acc;\n }, {\n country: null,\n timeZone: null\n });\n};\n\nvar useCountries = function useCountries(user) {\n var _useState = useState([]),\n _useState2 = _slicedToArray(_useState, 2),\n timeZoneDropdownOptions = _useState2[0],\n setTimeZoneDropdownOptions = _useState2[1];\n var _useState3 = useState(null),\n _useState4 = _slicedToArray(_useState3, 2),\n selectedCountryOption = _useState4[0],\n setSelectedCountryOption = _useState4[1];\n var _useState5 = useState(null),\n _useState6 = _slicedToArray(_useState5, 2),\n selectedTimeZoneOption = _useState6[0],\n setSelectedTimeZoneOption = _useState6[1];\n var _useFetchCountries = useFetchCountries(),\n _useFetchCountries$da = _useFetchCountries.data,\n _useFetchCountries$da2 = _useFetchCountries$da === void 0 ? {} : _useFetchCountries$da,\n _useFetchCountries$da3 = _useFetchCountries$da2.countries,\n countries = _useFetchCountries$da3 === void 0 ? [] : _useFetchCountries$da3,\n isLoading = _useFetchCountries.isLoading;\n var formatTimeZoneOptions = function formatTimeZoneOptions(timeZones) {\n return (timeZones === null || timeZones === void 0 ? void 0 : timeZones.map(formatTimeZoneOption)) || [];\n };\n var formatTimeZoneOption = function formatTimeZoneOption(timeZone) {\n var currentTimeInUTC = new Date();\n var options = {\n timeZone: timeZone === null || timeZone === void 0 ? void 0 : timeZone.name,\n hour12: true,\n hour: \"numeric\",\n minute: \"numeric\"\n };\n var currentTime = currentTimeInUTC.toLocaleString(\"en-US\", options);\n return {\n label: t$1(\"neetoTeamMembers.profile.common.timeZoneOption\", {\n timeZone: replace$1(\"_\", \" \", timeZone === null || timeZone === void 0 ? void 0 : timeZone.name),\n currentTime: currentTime\n }),\n value: timeZone === null || timeZone === void 0 ? void 0 : timeZone.id,\n name: timeZone === null || timeZone === void 0 ? void 0 : timeZone.name\n };\n };\n var formatCountryOption = function formatCountryOption(country) {\n return {\n label: country === null || country === void 0 ? void 0 : country.name,\n value: country === null || country === void 0 ? void 0 : country.id\n };\n };\n var countryDropdownOptions = useMemo(function () {\n return countries.map(formatCountryOption);\n }, [countries]);\n var handleCountryChange = function handleCountryChange(countryOption) {\n setSelectedCountryOption(countryOption);\n var dependentFields = {};\n var selectedCountry = findById(countryOption.value, countries);\n var timeZoneOptions = formatTimeZoneOptions(selectedCountry.timeZones);\n setTimeZoneDropdownOptions(timeZoneOptions);\n if (isNotEmpty(timeZoneOptions)) {\n setSelectedTimeZoneOption(timeZoneOptions[0]);\n dependentFields.timeZone = timeZoneOptions[0].name;\n }\n dependentFields.dateFormat = selectedCountry.dateFormat;\n return dependentFields;\n };\n useEffect(function () {\n if (!isPresent(countries)) return;\n if (user !== null && user !== void 0 && user.timeZone) {\n var _findTimeZoneAndCount = findTimeZoneAndCountry(user.timeZone, countries),\n country = _findTimeZoneAndCount.country,\n timeZone = _findTimeZoneAndCount.timeZone;\n setSelectedCountryOption(formatCountryOption(country));\n setTimeZoneDropdownOptions(formatTimeZoneOptions(country === null || country === void 0 ? void 0 : country.timeZones));\n setSelectedTimeZoneOption(formatTimeZoneOption(timeZone));\n }\n }, [user, countries]);\n return {\n countryDropdownOptions: countryDropdownOptions,\n timeZoneDropdownOptions: timeZoneDropdownOptions,\n selectedCountryOption: selectedCountryOption,\n selectedTimeZoneOption: selectedTimeZoneOption,\n isFetchingCountriesList: isLoading,\n handleCountryChange: handleCountryChange,\n handleTimeZoneChange: setSelectedTimeZoneOption\n };\n};\n\nvar ProfileImage = function ProfileImage() {\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useField = useField(\"avatar\"),\n _useField2 = _slicedToArray(_useField, 3),\n field = _useField2[0];\n _useField2[1];\n var helpers = _useField2[2];\n var setValue = helpers.setValue;\n var avatarDetails = {\n imageUrl: field.value.imageUrl\n };\n var onProfileImageChange = function onProfileImageChange(event) {\n var imageFile = event.target.files[0];\n var validationError = validateProfileImage(imageFile);\n if (validationError) {\n Toastr.error(validationError);\n return validationError;\n }\n return setValue({\n imageUrl: URL.createObjectURL(imageFile),\n file: imageFile\n });\n };\n var handleRemoveImage = function handleRemoveImage() {\n return setValue({\n imageUrl: \"\",\n file: \"_destroy\"\n });\n };\n var validateProfileImage = function validateProfileImage(imageFile) {\n var type = imageFile.type,\n size = imageFile.size;\n if (!ALLOWED_PROFILE_IMAGE_MIME_TYPES.includes(type)) {\n return VALIDATION_ERRORS.invalid_type;\n }\n if (size === 0) return VALIDATION_ERRORS.corrupted_file;\n if (size > STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES) {\n return VALIDATION_ERRORS.file_limit_exceeded;\n }\n return null;\n };\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"mb-8 flex flex-row justify-start\",\n children: [/*#__PURE__*/jsxs(\"div\", {\n className: \"flex-shrink-0\",\n children: [isPresent(avatarDetails === null || avatarDetails === void 0 ? void 0 : avatarDetails.imageUrl) && /*#__PURE__*/jsx(\"div\", {\n className: \"relative z-10\",\n children: /*#__PURE__*/jsx(\"div\", {\n className: \"neeto-ui-bg-gray-300 neeto-ui-rounded-full absolute right-0 top-0 cursor-pointer p-0.5\",\n \"data-cy\": \"profile-image-remove-button\",\n onClick: handleRemoveImage,\n children: /*#__PURE__*/jsx(Delete$1, {\n size: IMAGE_DELETE_BUTTON_SIZE\n })\n })\n }), /*#__PURE__*/jsx(Avatar, {\n size: \"extraLarge\",\n user: avatarDetails\n })]\n }), /*#__PURE__*/jsxs(\"div\", {\n className: \"ml-4 flex flex-col\",\n children: [/*#__PURE__*/jsx(Label, {\n className: \"neeto-ui-text-black mb-1 font-medium\",\n children: t(\"neetoTeamMembers.profile.avatar.profilePicture\")\n }), /*#__PURE__*/jsx(Typography, {\n className: \"neeto-ui-text-gray-700 mb-2\",\n style: \"body3\",\n children: /*#__PURE__*/jsx(Trans, {\n components: {\n code: /*#__PURE__*/jsx(\"code\", {})\n },\n i18nKey: \"neetoTeamMembers.profile.avatar.profilePictureUploadMessage\",\n values: {\n limit: globalProps.endUserUploadedFileSizeLimitInMb\n }\n })\n }), /*#__PURE__*/jsxs(\"div\", {\n className: \"neeto-ui-file-upload flex flex-row \",\n \"data-cy\": \"profile-image-upload-container\",\n children: [/*#__PURE__*/jsx(\"label\", {\n className: \"neeto-ui-btn--style-secondary neeto-ui-btn m-0 mr-3 \",\n \"data-cy\": \"profile-image-upload-label\",\n htmlFor: \"uploadProfileImage\",\n children: avatarDetails !== null && avatarDetails !== void 0 && avatarDetails.imageUrl ? t(\"neetoTeamMembers.profile.avatar.changeProfilePicture\") : t(\"neetoTeamMembers.profile.avatar.uploadProfilePicture\")\n }), /*#__PURE__*/jsx(\"input\", {\n hidden: true,\n accept: \"image/*\",\n \"data-cy\": \"profile-image-upload-file-field\",\n id: \"uploadProfileImage\",\n name: \"profile_image_path\",\n type: \"file\",\n onChange: onProfileImageChange\n }, avatarDetails === null || avatarDetails === void 0 ? void 0 : avatarDetails.imageUrl)]\n })]\n })]\n });\n};\n\nfunction ownKeys$h(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$h(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$h(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$h(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar ChangeProfile = function ChangeProfile(_ref) {\n var onClose = _ref.onClose;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useProfileImageUploa = useProfileImageUpload({\n uploadConfig: {\n folder: \"Auth\",\n customMetadata: {\n appName: \"neetoAuth\"\n }\n }\n }),\n uploadImage = _useProfileImageUploa.uploadImage,\n isUploading = _useProfileImageUploa.isUploading;\n var handleUploadImage = function handleUploadImage(image) {\n return new Promise(function (resolve) {\n uploadImage(image, function (uploadedImageData) {\n resolve(uploadedImageData);\n });\n });\n };\n var _useFetchProfile = useFetchProfile(),\n _useFetchProfile$data = _useFetchProfile.data,\n _useFetchProfile$data2 = _useFetchProfile$data === void 0 ? {} : _useFetchProfile$data,\n _useFetchProfile$data3 = _useFetchProfile$data2.user,\n user = _useFetchProfile$data3 === void 0 ? {} : _useFetchProfile$data3,\n isFetchingUserDetails = _useFetchProfile.isFetching;\n var _user$firstName = user.firstName,\n firstName = _user$firstName === void 0 ? \"\" : _user$firstName,\n _user$lastName = user.lastName,\n lastName = _user$lastName === void 0 ? \"\" : _user$lastName,\n _user$dateFormat = user.dateFormat,\n dateFormat = _user$dateFormat === void 0 ? DATE_FORMAT_OPTIONS[0].value : _user$dateFormat,\n _user$timeZone = user.timeZone,\n timeZone = _user$timeZone === void 0 ? \"\" : _user$timeZone,\n _user$profileImageUrl = user.profileImageUrl,\n profileImageUrl = _user$profileImageUrl === void 0 ? \"\" : _user$profileImageUrl;\n var _useCountries = useCountries(user),\n countryDropdownOptions = _useCountries.countryDropdownOptions,\n timeZoneDropdownOptions = _useCountries.timeZoneDropdownOptions,\n selectedCountryOption = _useCountries.selectedCountryOption,\n selectedTimeZoneOption = _useCountries.selectedTimeZoneOption,\n isFetchingCountriesList = _useCountries.isFetchingCountriesList,\n _useCountries$handleC = _useCountries.handleCountryChange,\n handleCountryChange = _useCountries$handleC === void 0 ? noop : _useCountries$handleC,\n _useCountries$handleT = _useCountries.handleTimeZoneChange,\n handleTimeZoneChange = _useCountries$handleT === void 0 ? noop : _useCountries$handleT;\n var _useUpdateProfileMuta = useUpdateProfileMutation(),\n updateProfile = _useUpdateProfileMuta.mutate,\n isUpdatingProfile = _useUpdateProfileMuta.isPending;\n var initialFormValues = {\n firstName: firstName,\n lastName: lastName,\n timeZone: timeZone,\n dateFormat: dateFormat,\n avatar: {\n imageUrl: profileImageUrl,\n file: null\n }\n };\n var handleSubmit = /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(values) {\n var avatar, _yield$handleUploadIm, fileId, filePath, url, payload;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n _context.prev = 0;\n avatar = {};\n if (!(values.avatar.file === \"_destroy\")) {\n _context.next = 6;\n break;\n }\n avatar = {\n fileId: \"_destroy\",\n filePath: \"\",\n url: \"\"\n };\n _context.next = 14;\n break;\n case 6:\n if (!values.avatar.file) {\n _context.next = 14;\n break;\n }\n _context.next = 9;\n return handleUploadImage(values.avatar.file);\n case 9:\n _yield$handleUploadIm = _context.sent;\n fileId = _yield$handleUploadIm.fileId;\n filePath = _yield$handleUploadIm.filePath;\n url = _yield$handleUploadIm.url;\n avatar = {\n fileId: fileId,\n filePath: filePath,\n url: url\n };\n case 14:\n payload = _objectSpread$h(_objectSpread$h({}, values), {}, {\n timeZone: selectedTimeZoneOption === null || selectedTimeZoneOption === void 0 ? void 0 : selectedTimeZoneOption.name,\n avatar: avatar\n });\n updateProfile({\n id: user.id,\n payload: payload\n });\n _context.next = 21;\n break;\n case 18:\n _context.prev = 18;\n _context.t0 = _context[\"catch\"](0);\n Toastr.error(_context.t0);\n case 21:\n case \"end\":\n return _context.stop();\n }\n }, _callee, null, [[0, 18]]);\n }));\n return function handleSubmit(_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n if (isUpdatingProfile || isFetchingCountriesList || isFetchingUserDetails) {\n return /*#__PURE__*/jsx(Container, {\n children: /*#__PURE__*/jsx(PageLoader, {})\n });\n }\n return /*#__PURE__*/jsx(Form$1, {\n formProps: {\n \"data-cy\": \"ntm-profile-form\"\n },\n formikProps: {\n initialValues: initialFormValues,\n validationSchema: PROFILE_VALIDATION_SCHEMA,\n onSubmit: handleSubmit\n },\n children: function children(_ref3) {\n var setFieldValue = _ref3.setFieldValue,\n values = _ref3.values;\n return /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsxs(Pane.Body, {\n className: \"w-full\",\n children: [/*#__PURE__*/jsxs(\"div\", {\n className: \"w-full space-y-6 pb-6\",\n children: [/*#__PURE__*/jsx(ProfileImage, {}), /*#__PURE__*/jsxs(\"div\", {\n className: \"grid grid-cols-2 gap-4\",\n children: [/*#__PURE__*/jsx(Input, {\n autoFocus: true,\n required: true,\n \"data-cy\": \"profile-first-name-text-field\",\n \"data-test-id\": \"ntm-profile-first-name\",\n label: t(\"neetoTeamMembers.profile.inputs.label.firstName\"),\n name: \"firstName\",\n type: \"text\",\n placeholder: t(\"neetoTeamMembers.profile.inputs.placeholder.firstName\")\n }), /*#__PURE__*/jsx(Input, {\n required: true,\n \"data-cy\": \"profile-last-name-text-field\",\n \"data-test-id\": \"ntm-profile-last-name\",\n label: t(\"neetoTeamMembers.profile.inputs.label.lastName\"),\n name: \"lastName\",\n type: \"text\",\n placeholder: t(\"neetoTeamMembers.profile.inputs.placeholder.lastName\")\n })]\n }), /*#__PURE__*/jsx(Select, {\n required: true,\n \"data-cy\": \"ntm-profile-country-select\",\n label: t(\"neetoTeamMembers.profile.inputs.label.selectCountry\"),\n name: \"countryId\",\n options: countryDropdownOptions,\n value: selectedCountryOption,\n onChange: function onChange(option) {\n var dependentFields = handleCountryChange(option);\n setFieldValue(\"dateFormat\", dependentFields === null || dependentFields === void 0 ? void 0 : dependentFields.dateFormat);\n setFieldValue(\"timeZone\", dependentFields === null || dependentFields === void 0 ? void 0 : dependentFields.timeZone);\n }\n }), /*#__PURE__*/jsx(\"div\", {\n className: \"space-y-2\",\n children: /*#__PURE__*/jsx(Select, {\n required: true,\n \"data-cy\": \"ntm-profile-time-zone-select\",\n name: \"timeZoneId\",\n options: timeZoneDropdownOptions,\n value: selectedTimeZoneOption,\n label: t(\"neetoTeamMembers.profile.inputs.label.selectTimeZone\"),\n onChange: function onChange(option) {\n setFieldValue(\"timeZone\", option === null || option === void 0 ? void 0 : option.name);\n handleTimeZoneChange(option);\n }\n })\n }), /*#__PURE__*/jsxs(\"div\", {\n children: [/*#__PURE__*/jsx(Label, {\n required: true,\n children: t(\"neetoTeamMembers.profile.inputs.label.dateFormat\")\n }), /*#__PURE__*/jsx(Radio, {\n className: \"mt-2 space-x-4\",\n children: DATE_FORMAT_OPTIONS.map(function (_ref4) {\n var label = _ref4.label,\n value = _ref4.value;\n return /*#__PURE__*/createElement(Radio.Item, {\n label: label,\n value: value,\n checked: values.dateFormat === value,\n \"data-cy\": \"ntm-profile-date-format-radio\",\n key: value,\n name: \"dateFormat\",\n onChange: function onChange(event) {\n return setFieldValue(\"dateFormat\", event.target.value);\n }\n });\n })\n })]\n })]\n }), /*#__PURE__*/jsxs(Callout, {\n className: \"neeto-ui-bg-gray-100 neeto-ui-border-gray-300 mt-8 flex w-full items-center\",\n children: [/*#__PURE__*/jsx(Typography, {\n style: \"body2\",\n children: t(\"neetoTeamMembers.profile.common.toUpdateProfile\")\n }), /*#__PURE__*/jsx(Button, {\n \"data-cy\": \"ntm-visit-auth-button\",\n \"data-test-id\": \"ntm-visit-auth-button\",\n href: MY_PROFILE_PATH,\n icon: ExternalLink,\n label: t(\"neetoTeamMembers.profile.common.neetoAuth\"),\n style: \"link\",\n target: \"_blank\"\n })]\n })]\n }), /*#__PURE__*/jsx(Pane.Footer, {\n children: /*#__PURE__*/jsx(ActionBlock, {\n isSubmitting: isUpdatingProfile || isUploading,\n cancelButtonProps: {\n \"data-test-id\": \"ntm-profile-cancel-button\",\n \"data-cy\": \"ntm-profile-cancel-button\",\n onClick: onClose\n },\n submitButtonProps: {\n \"data-cy\": \"ntm-profile-submit-button\",\n \"data-test-id\": \"ntm-profile-save-changes-button\"\n }\n })\n })]\n });\n }\n });\n};\n\n/* eslint-disable @bigbinary/neeto/ensure-zustand-stores-are-type-annotated */\nvar useProfileUpdateStore = create$3(withImmutableActions(function (set) {\n return {\n isOpen: false,\n setIsOpen: function setIsOpen(arg) {\n if (typeof arg === \"function\") {\n set(function (state) {\n return {\n isOpen: arg(state.isOpen)\n };\n });\n } else {\n set({\n isOpen: arg\n });\n }\n }\n };\n}));\nvar useProfileUpdatePaneState = function useProfileUpdatePaneState() {\n return useProfileUpdateStore(function (_ref) {\n var isOpen = _ref.isOpen,\n setIsOpen = _ref.setIsOpen;\n return [isOpen, setIsOpen];\n }, shallow);\n};\n\nvar Profile$1 = function Profile() {\n var _useProfileUpdatePane = useProfileUpdatePaneState(),\n _useProfileUpdatePane2 = _slicedToArray(_useProfileUpdatePane, 2),\n isOpen = _useProfileUpdatePane2[0],\n setIsOpen = _useProfileUpdatePane2[1];\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var onClose = function onClose() {\n return setIsOpen(false);\n };\n return /*#__PURE__*/jsx(\"div\", {\n className: \"w-full\",\n children: /*#__PURE__*/jsxs(Pane, {\n isOpen: isOpen,\n onClose: onClose,\n children: [/*#__PURE__*/jsx(Pane.Header, {\n children: /*#__PURE__*/jsx(Typography, {\n style: \"h2\",\n weight: \"semibold\",\n children: t(\"neetoTeamMembers.profile.common.myProfile\")\n })\n }), /*#__PURE__*/jsx(ChangeProfile, {\n onClose: onClose\n })]\n })\n });\n};\n\nvar dist = {exports: {}};\n\ndist.exports;\n\n(function (module, exports) {\n\t(function webpackUniversalModuleDefinition(root, factory) {\n\t\tmodule.exports = factory(require$$0);\n\t})(commonjsGlobal, function(__WEBPACK_EXTERNAL_MODULE_4__) {\n\treturn /******/ (function(modules) { // webpackBootstrap\n\t/******/ \t// The module cache\n\t/******/ \tvar installedModules = {};\n\t/******/\n\t/******/ \t// The require function\n\t/******/ \tfunction __webpack_require__(moduleId) {\n\t/******/\n\t/******/ \t\t// Check if module is in cache\n\t/******/ \t\tif(installedModules[moduleId]) {\n\t/******/ \t\t\treturn installedModules[moduleId].exports;\n\t/******/ \t\t}\n\t/******/ \t\t// Create a new module (and put it into the cache)\n\t/******/ \t\tvar module = installedModules[moduleId] = {\n\t/******/ \t\t\ti: moduleId,\n\t/******/ \t\t\tl: false,\n\t/******/ \t\t\texports: {}\n\t/******/ \t\t};\n\t/******/\n\t/******/ \t\t// Execute the module function\n\t/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\t/******/\n\t/******/ \t\t// Flag the module as loaded\n\t/******/ \t\tmodule.l = true;\n\t/******/\n\t/******/ \t\t// Return the exports of the module\n\t/******/ \t\treturn module.exports;\n\t/******/ \t}\n\t/******/\n\t/******/\n\t/******/ \t// expose the modules object (__webpack_modules__)\n\t/******/ \t__webpack_require__.m = modules;\n\t/******/\n\t/******/ \t// expose the module cache\n\t/******/ \t__webpack_require__.c = installedModules;\n\t/******/\n\t/******/ \t// identity function for calling harmony imports with the correct context\n\t/******/ \t__webpack_require__.i = function(value) { return value; };\n\t/******/\n\t/******/ \t// define getter function for harmony exports\n\t/******/ \t__webpack_require__.d = function(exports, name, getter) {\n\t/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n\t/******/ \t\t\tObject.defineProperty(exports, name, {\n\t/******/ \t\t\t\tconfigurable: false,\n\t/******/ \t\t\t\tenumerable: true,\n\t/******/ \t\t\t\tget: getter\n\t/******/ \t\t\t});\n\t/******/ \t\t}\n\t/******/ \t};\n\t/******/\n\t/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n\t/******/ \t__webpack_require__.n = function(module) {\n\t/******/ \t\tvar getter = module && module.__esModule ?\n\t/******/ \t\t\tfunction getDefault() { return module['default']; } :\n\t/******/ \t\t\tfunction getModuleExports() { return module; };\n\t/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n\t/******/ \t\treturn getter;\n\t/******/ \t};\n\t/******/\n\t/******/ \t// Object.prototype.hasOwnProperty.call\n\t/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\t/******/\n\t/******/ \t// __webpack_public_path__\n\t/******/ \t__webpack_require__.p = \"\";\n\t/******/\n\t/******/ \t// Load entry module and return exports\n\t/******/ \treturn __webpack_require__(__webpack_require__.s = 10);\n\t/******/ })\n\t/************************************************************************/\n\t/******/ ([\n\t/* 0 */\n\t/***/ (function(module, exports) {\n\n\t// shim for using process in browser\n\tvar process = module.exports = {};\n\n\t// cached from whatever global is present so that test runners that stub it\n\t// don't break things. But we need to wrap it in a try catch in case it is\n\t// wrapped in strict mode code which doesn't define any globals. It's inside a\n\t// function because try/catches deoptimize in certain engines.\n\n\tvar cachedSetTimeout;\n\tvar cachedClearTimeout;\n\n\tfunction defaultSetTimout() {\n\t throw new Error('setTimeout has not been defined');\n\t}\n\tfunction defaultClearTimeout () {\n\t throw new Error('clearTimeout has not been defined');\n\t}\n\t(function () {\n\t try {\n\t if (typeof setTimeout === 'function') {\n\t cachedSetTimeout = setTimeout;\n\t } else {\n\t cachedSetTimeout = defaultSetTimout;\n\t }\n\t } catch (e) {\n\t cachedSetTimeout = defaultSetTimout;\n\t }\n\t try {\n\t if (typeof clearTimeout === 'function') {\n\t cachedClearTimeout = clearTimeout;\n\t } else {\n\t cachedClearTimeout = defaultClearTimeout;\n\t }\n\t } catch (e) {\n\t cachedClearTimeout = defaultClearTimeout;\n\t }\n\t} ());\n\tfunction runTimeout(fun) {\n\t if (cachedSetTimeout === setTimeout) {\n\t //normal enviroments in sane situations\n\t return setTimeout(fun, 0);\n\t }\n\t // if setTimeout wasn't available but was latter defined\n\t if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n\t cachedSetTimeout = setTimeout;\n\t return setTimeout(fun, 0);\n\t }\n\t try {\n\t // when when somebody has screwed with setTimeout but no I.E. maddness\n\t return cachedSetTimeout(fun, 0);\n\t } catch(e){\n\t try {\n\t // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n\t return cachedSetTimeout.call(null, fun, 0);\n\t } catch(e){\n\t // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n\t return cachedSetTimeout.call(this, fun, 0);\n\t }\n\t }\n\n\n\t}\n\tfunction runClearTimeout(marker) {\n\t if (cachedClearTimeout === clearTimeout) {\n\t //normal enviroments in sane situations\n\t return clearTimeout(marker);\n\t }\n\t // if clearTimeout wasn't available but was latter defined\n\t if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n\t cachedClearTimeout = clearTimeout;\n\t return clearTimeout(marker);\n\t }\n\t try {\n\t // when when somebody has screwed with setTimeout but no I.E. maddness\n\t return cachedClearTimeout(marker);\n\t } catch (e){\n\t try {\n\t // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n\t return cachedClearTimeout.call(null, marker);\n\t } catch (e){\n\t // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n\t // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n\t return cachedClearTimeout.call(this, marker);\n\t }\n\t }\n\n\n\n\t}\n\tvar queue = [];\n\tvar draining = false;\n\tvar currentQueue;\n\tvar queueIndex = -1;\n\n\tfunction cleanUpNextTick() {\n\t if (!draining || !currentQueue) {\n\t return;\n\t }\n\t draining = false;\n\t if (currentQueue.length) {\n\t queue = currentQueue.concat(queue);\n\t } else {\n\t queueIndex = -1;\n\t }\n\t if (queue.length) {\n\t drainQueue();\n\t }\n\t}\n\n\tfunction drainQueue() {\n\t if (draining) {\n\t return;\n\t }\n\t var timeout = runTimeout(cleanUpNextTick);\n\t draining = true;\n\n\t var len = queue.length;\n\t while(len) {\n\t currentQueue = queue;\n\t queue = [];\n\t while (++queueIndex < len) {\n\t if (currentQueue) {\n\t currentQueue[queueIndex].run();\n\t }\n\t }\n\t queueIndex = -1;\n\t len = queue.length;\n\t }\n\t currentQueue = null;\n\t draining = false;\n\t runClearTimeout(timeout);\n\t}\n\n\tprocess.nextTick = function (fun) {\n\t var args = new Array(arguments.length - 1);\n\t if (arguments.length > 1) {\n\t for (var i = 1; i < arguments.length; i++) {\n\t args[i - 1] = arguments[i];\n\t }\n\t }\n\t queue.push(new Item(fun, args));\n\t if (queue.length === 1 && !draining) {\n\t runTimeout(drainQueue);\n\t }\n\t};\n\n\t// v8 likes predictible objects\n\tfunction Item(fun, array) {\n\t this.fun = fun;\n\t this.array = array;\n\t}\n\tItem.prototype.run = function () {\n\t this.fun.apply(null, this.array);\n\t};\n\tprocess.title = 'browser';\n\tprocess.browser = true;\n\tprocess.env = {};\n\tprocess.argv = [];\n\tprocess.version = ''; // empty string to avoid regexp issues\n\tprocess.versions = {};\n\n\tfunction noop() {}\n\n\tprocess.on = noop;\n\tprocess.addListener = noop;\n\tprocess.once = noop;\n\tprocess.off = noop;\n\tprocess.removeListener = noop;\n\tprocess.removeAllListeners = noop;\n\tprocess.emit = noop;\n\tprocess.prependListener = noop;\n\tprocess.prependOnceListener = noop;\n\n\tprocess.listeners = function (name) { return [] };\n\n\tprocess.binding = function (name) {\n\t throw new Error('process.binding is not supported');\n\t};\n\n\tprocess.cwd = function () { return '/' };\n\tprocess.chdir = function (dir) {\n\t throw new Error('process.chdir is not supported');\n\t};\n\tprocess.umask = function() { return 0; };\n\n\n\t/***/ }),\n\t/* 1 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\n\n\t/**\n\t * Copyright (c) 2013-present, Facebook, Inc.\n\t * All rights reserved.\n\t *\n\t * This source code is licensed under the BSD-style license found in the\n\t * LICENSE file in the root directory of this source tree. An additional grant\n\t * of patent rights can be found in the PATENTS file in the same directory.\n\t *\n\t * \n\t */\n\n\tfunction makeEmptyFunction(arg) {\n\t return function () {\n\t return arg;\n\t };\n\t}\n\n\t/**\n\t * This function accepts and discards inputs; it has no side effects. This is\n\t * primarily useful idiomatically for overridable function endpoints which\n\t * always need to be callable, since JS lacks a null-call idiom ala Cocoa.\n\t */\n\tvar emptyFunction = function emptyFunction() {};\n\n\temptyFunction.thatReturns = makeEmptyFunction;\n\temptyFunction.thatReturnsFalse = makeEmptyFunction(false);\n\temptyFunction.thatReturnsTrue = makeEmptyFunction(true);\n\temptyFunction.thatReturnsNull = makeEmptyFunction(null);\n\temptyFunction.thatReturnsThis = function () {\n\t return this;\n\t};\n\temptyFunction.thatReturnsArgument = function (arg) {\n\t return arg;\n\t};\n\n\tmodule.exports = emptyFunction;\n\n\t/***/ }),\n\t/* 2 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\t/* WEBPACK VAR INJECTION */(function(process) {/**\n\t * Copyright (c) 2013-present, Facebook, Inc.\n\t * All rights reserved.\n\t *\n\t * This source code is licensed under the BSD-style license found in the\n\t * LICENSE file in the root directory of this source tree. An additional grant\n\t * of patent rights can be found in the PATENTS file in the same directory.\n\t *\n\t */\n\n\tfunction invariant(condition, format, a, b, c, d, e, f) {\n\n\t if (!condition) {\n\t var error;\n\t if (format === undefined) {\n\t error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');\n\t } else {\n\t var args = [a, b, c, d, e, f];\n\t var argIndex = 0;\n\t error = new Error(format.replace(/%s/g, function () {\n\t return args[argIndex++];\n\t }));\n\t error.name = 'Invariant Violation';\n\t }\n\n\t error.framesToPop = 1; // we don't care about invariant's own frame\n\t throw error;\n\t }\n\t}\n\n\tmodule.exports = invariant;\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)));\n\n\t/***/ }),\n\t/* 3 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\t/**\n\t * Copyright 2013-present, Facebook, Inc.\n\t * All rights reserved.\n\t *\n\t * This source code is licensed under the BSD-style license found in the\n\t * LICENSE file in the root directory of this source tree. An additional grant\n\t * of patent rights can be found in the PATENTS file in the same directory.\n\t */\n\n\n\n\tvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\n\tmodule.exports = ReactPropTypesSecret;\n\n\n\t/***/ }),\n\t/* 4 */\n\t/***/ (function(module, exports) {\n\n\tmodule.exports = __WEBPACK_EXTERNAL_MODULE_4__;\n\n\t/***/ }),\n\t/* 5 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\n\n\tObject.defineProperty(exports, \"__esModule\", {\n\t value: true\n\t});\n\n\tvar _react = __webpack_require__(4);\n\n\tvar _react2 = _interopRequireDefault(_react);\n\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n\tvar ScrollSyncContext = _react2.default.createContext({\n\t registerPane: function registerPane() {},\n\t unregisterPane: function unregisterPane() {}\n\t});\n\n\texports.default = ScrollSyncContext;\n\tmodule.exports = exports['default'];\n\n\t/***/ }),\n\t/* 6 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\t/* WEBPACK VAR INJECTION */(function(process) {/**\n\t * Copyright 2014-2015, Facebook, Inc.\n\t * All rights reserved.\n\t *\n\t * This source code is licensed under the BSD-style license found in the\n\t * LICENSE file in the root directory of this source tree. An additional grant\n\t * of patent rights can be found in the PATENTS file in the same directory.\n\t *\n\t */\n\n\n\n\tvar emptyFunction = __webpack_require__(1);\n\n\t/**\n\t * Similar to invariant but only logs a warning if the condition is not met.\n\t * This can be used to log issues in development environments in critical\n\t * paths. Removing the logging code for production environments will keep the\n\t * same logic and follow the same code paths.\n\t */\n\n\tvar warning = emptyFunction;\n\n\tmodule.exports = warning;\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)));\n\n\t/***/ }),\n\t/* 7 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(process) {/**\n\t * Copyright 2013-present, Facebook, Inc.\n\t * All rights reserved.\n\t *\n\t * This source code is licensed under the BSD-style license found in the\n\t * LICENSE file in the root directory of this source tree. An additional grant\n\t * of patent rights can be found in the PATENTS file in the same directory.\n\t */\n\n\t{\n\t // By explicitly using `prop-types` you are opting into new production behavior.\n\t // http://fb.me/prop-types-in-prod\n\t module.exports = __webpack_require__(12)();\n\t}\n\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)));\n\n\t/***/ }),\n\t/* 8 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\n\n\tObject.defineProperty(exports, \"__esModule\", {\n\t value: true\n\t});\n\n\tvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\n\tvar _react = __webpack_require__(4);\n\n\tvar _react2 = _interopRequireDefault(_react);\n\n\tvar _propTypes = __webpack_require__(7);\n\n\tvar _propTypes2 = _interopRequireDefault(_propTypes);\n\n\tvar _ScrollSyncContext = __webpack_require__(5);\n\n\tvar _ScrollSyncContext2 = _interopRequireDefault(_ScrollSyncContext);\n\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n\tfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n\t/**\n\t * ScrollSync provider component\n\t *\n\t */\n\n\tvar ScrollSync = function (_Component) {\n\t _inherits(ScrollSync, _Component);\n\n\t function ScrollSync() {\n\t var _ref;\n\n\t var _temp, _this, _ret;\n\n\t _classCallCheck(this, ScrollSync);\n\n\t for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n\t args[_key] = arguments[_key];\n\t }\n\n\t return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = ScrollSync.__proto__ || Object.getPrototypeOf(ScrollSync)).call.apply(_ref, [this].concat(args))), _this), _this.panes = {}, _this.registerPane = function (node, groups) {\n\t groups.forEach(function (group) {\n\t if (!_this.panes[group]) {\n\t _this.panes[group] = [];\n\t }\n\n\t if (!_this.findPane(node, group)) {\n\t if (_this.panes[group].length > 0) {\n\t _this.syncScrollPosition(_this.panes[group][0], node);\n\t }\n\t _this.panes[group].push(node);\n\t }\n\t });\n\t _this.addEvents(node, groups);\n\t }, _this.unregisterPane = function (node, groups) {\n\t groups.forEach(function (group) {\n\t if (_this.findPane(node, group)) {\n\t _this.removeEvents(node);\n\t _this.panes[group].splice(_this.panes[group].indexOf(node), 1);\n\t }\n\t });\n\t }, _this.addEvents = function (node, groups) {\n\t /* For some reason element.addEventListener doesnt work with document.body */\n\t node.onscroll = _this.handlePaneScroll.bind(_this, node, groups); // eslint-disable-line\n\t }, _this.removeEvents = function (node) {\n\t /* For some reason element.removeEventListener doesnt work with document.body */\n\t node.onscroll = null; // eslint-disable-line\n\t }, _this.findPane = function (node, group) {\n\t if (!_this.panes[group]) {\n\t return false;\n\t }\n\n\t return _this.panes[group].find(function (pane) {\n\t return pane === node;\n\t });\n\t }, _this.handlePaneScroll = function (node, groups) {\n\t if (!_this.props.enabled) {\n\t return;\n\t }\n\n\t window.requestAnimationFrame(function () {\n\t _this.syncScrollPositions(node, groups);\n\t });\n\t }, _this.syncScrollPositions = function (scrolledPane, groups) {\n\t groups.forEach(function (group) {\n\t _this.panes[group].forEach(function (pane) {\n\t /* For all panes beside the currently scrolling one */\n\t if (scrolledPane !== pane) {\n\t /* Remove event listeners from the node that we'll manipulate */\n\t _this.removeEvents(pane, group);\n\t _this.syncScrollPosition(scrolledPane, pane);\n\t /* Re-attach event listeners after we're done scrolling */\n\t window.requestAnimationFrame(function () {\n\t _this.addEvents(pane, groups);\n\t });\n\t }\n\t });\n\t });\n\t if (_this.props.onSync) _this.props.onSync(scrolledPane);\n\t }, _temp), _possibleConstructorReturn(_this, _ret);\n\t }\n\n\t _createClass(ScrollSync, [{\n\t key: 'getContextValue',\n\t value: function getContextValue() {\n\t return {\n\t registerPane: this.registerPane,\n\t unregisterPane: this.unregisterPane\n\t };\n\t }\n\t }, {\n\t key: 'syncScrollPosition',\n\t value: function syncScrollPosition(scrolledPane, pane) {\n\t var scrollTop = scrolledPane.scrollTop,\n\t scrollHeight = scrolledPane.scrollHeight,\n\t clientHeight = scrolledPane.clientHeight,\n\t scrollLeft = scrolledPane.scrollLeft,\n\t scrollWidth = scrolledPane.scrollWidth,\n\t clientWidth = scrolledPane.clientWidth;\n\n\n\t var scrollTopOffset = scrollHeight - clientHeight;\n\t var scrollLeftOffset = scrollWidth - clientWidth;\n\n\t var _props = this.props,\n\t proportional = _props.proportional,\n\t vertical = _props.vertical,\n\t horizontal = _props.horizontal;\n\n\t /* Calculate the actual pane height */\n\n\t var paneHeight = pane.scrollHeight - clientHeight;\n\t var paneWidth = pane.scrollWidth - clientWidth;\n\t /* Adjust the scrollTop position of it accordingly */\n\t if (vertical && scrollTopOffset > 0) {\n\t pane.scrollTop = proportional ? paneHeight * scrollTop / scrollTopOffset : scrollTop; // eslint-disable-line\n\t }\n\t if (horizontal && scrollLeftOffset > 0) {\n\t pane.scrollLeft = proportional ? paneWidth * scrollLeft / scrollLeftOffset : scrollLeft; // eslint-disable-line\n\t }\n\t }\n\t }, {\n\t key: 'render',\n\t value: function render() {\n\t return _react2.default.createElement(\n\t _ScrollSyncContext2.default.Provider,\n\t { value: this.getContextValue() },\n\t _react2.default.Children.only(this.props.children)\n\t );\n\t }\n\t }]);\n\n\t return ScrollSync;\n\t}(_react.Component);\n\n\tScrollSync.propTypes = {\n\t /**\n\t * Callback to be invoked any time synchronization happens\n\t *\n\t * @param {Element} el The element that has received the scroll event\n\t */\n\t onSync: _propTypes2.default.func,\n\t children: _propTypes2.default.element.isRequired,\n\t proportional: _propTypes2.default.bool,\n\t vertical: _propTypes2.default.bool,\n\t horizontal: _propTypes2.default.bool,\n\t enabled: _propTypes2.default.bool\n\t};\n\tScrollSync.defaultProps = {\n\t proportional: true,\n\t vertical: true,\n\t horizontal: true,\n\t enabled: true\n\t};\n\texports.default = ScrollSync;\n\tmodule.exports = exports['default'];\n\n\t/***/ }),\n\t/* 9 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\n\n\tObject.defineProperty(exports, \"__esModule\", {\n\t value: true\n\t});\n\n\tvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\n\tvar _react = __webpack_require__(4);\n\n\tvar _propTypes = __webpack_require__(7);\n\n\tvar _propTypes2 = _interopRequireDefault(_propTypes);\n\n\tvar _ScrollSyncContext = __webpack_require__(5);\n\n\tvar _ScrollSyncContext2 = _interopRequireDefault(_ScrollSyncContext);\n\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n\tfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /* eslint react/no-find-dom-node: 0 */\n\n\t/**\n\t * ScrollSyncPane Component\n\t *\n\t * Wrap your content in it to keep its scroll position in sync with other panes\n\t *\n\t * @example ./example.md\n\t */\n\n\tvar ScrollSyncPane = function (_Component) {\n\t _inherits(ScrollSyncPane, _Component);\n\n\t function ScrollSyncPane(props) {\n\t _classCallCheck(this, ScrollSyncPane);\n\n\t var _this = _possibleConstructorReturn(this, (ScrollSyncPane.__proto__ || Object.getPrototypeOf(ScrollSyncPane)).call(this, props));\n\n\t _this.toArray = function (groups) {\n\t return [].concat(groups);\n\t };\n\n\t _this.updateNode = function () {\n\t if (_this.props.attachTo) {\n\t _this.node = _this.props.attachTo.current;\n\t } else {\n\t _this.node = _this.childRef.current;\n\t }\n\t };\n\n\t _this.childRef = (0, _react.createRef)();\n\t return _this;\n\t }\n\n\t _createClass(ScrollSyncPane, [{\n\t key: 'componentDidMount',\n\t value: function componentDidMount() {\n\t if (this.props.enabled) {\n\t this.updateNode();\n\t if (this.node) {\n\t this.context.registerPane(this.node, this.toArray(this.props.group));\n\t }\n\t }\n\t }\n\t }, {\n\t key: 'componentDidUpdate',\n\t value: function componentDidUpdate(prevProps) {\n\t if (this.props.attachTo !== prevProps.attachTo) {\n\t if (this.node) {\n\t this.context.unregisterPane(this.node, this.toArray(prevProps.group));\n\t }\n\t this.updateNode();\n\t if (this.node) {\n\t this.context.registerPane(this.node, this.toArray(prevProps.group));\n\t }\n\t }\n\t if (this.node && this.props.enabled !== prevProps.enabled) {\n\t if (this.props.enabled) {\n\t this.context.registerPane(this.node, this.toArray(prevProps.group));\n\t } else {\n\t this.context.unregisterPane(this.node, this.toArray(prevProps.group));\n\t }\n\t }\n\t if (this.node && this.props.enabled && this.props.group !== prevProps.group) {\n\t this.context.unregisterPane(this.node, this.toArray(prevProps.group));\n\t this.context.registerPane(this.node, this.toArray(this.props.group));\n\t }\n\t }\n\t }, {\n\t key: 'componentWillUnmount',\n\t value: function componentWillUnmount() {\n\t if (this.node && this.props.enabled) {\n\t this.context.unregisterPane(this.node, this.toArray(this.props.group));\n\t }\n\t }\n\t }, {\n\t key: 'render',\n\t value: function render() {\n\t if (this.props.attachTo) {\n\t return this.props.children;\n\t }\n\t return (0, _react.cloneElement)(_react.Children.only(this.props.children), { ref: this.childRef });\n\t }\n\t }]);\n\n\t return ScrollSyncPane;\n\t}(_react.Component);\n\n\tScrollSyncPane.contextType = _ScrollSyncContext2.default;\n\tScrollSyncPane.propTypes = {\n\t children: _propTypes2.default.node.isRequired,\n\t attachTo: _propTypes2.default.oneOfType([_propTypes2.default.func, _propTypes2.default.shape({ current: _propTypes2.default.any })]),\n\t group: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.arrayOf(_propTypes2.default.string)]),\n\t enabled: _propTypes2.default.bool\n\t};\n\tScrollSyncPane.defaultProps = {\n\t group: 'default',\n\t enabled: true\n\t};\n\texports.default = ScrollSyncPane;\n\tmodule.exports = exports['default'];\n\n\t/***/ }),\n\t/* 10 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\n\n\tObject.defineProperty(exports, \"__esModule\", {\n\t value: true\n\t});\n\n\tvar _ScrollSync = __webpack_require__(8);\n\n\tObject.defineProperty(exports, 'ScrollSync', {\n\t enumerable: true,\n\t get: function get() {\n\t return _interopRequireDefault(_ScrollSync).default;\n\t }\n\t});\n\n\tvar _ScrollSyncPane = __webpack_require__(9);\n\n\tObject.defineProperty(exports, 'ScrollSyncPane', {\n\t enumerable: true,\n\t get: function get() {\n\t return _interopRequireDefault(_ScrollSyncPane).default;\n\t }\n\t});\n\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n\t/***/ }),\n\t/* 11 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\t/* WEBPACK VAR INJECTION */(function(process) {/**\n\t * Copyright 2013-present, Facebook, Inc.\n\t * All rights reserved.\n\t *\n\t * This source code is licensed under the BSD-style license found in the\n\t * LICENSE file in the root directory of this source tree. An additional grant\n\t * of patent rights can be found in the PATENTS file in the same directory.\n\t */\n\n\t/**\n\t * Assert that the values match with the type specs.\n\t * Error messages are memorized and will only be shown once.\n\t *\n\t * @param {object} typeSpecs Map of name to a ReactPropType\n\t * @param {object} values Runtime values that need to be type-checked\n\t * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n\t * @param {string} componentName Name of the component for error messages.\n\t * @param {?Function} getStack Returns the component stack.\n\t * @private\n\t */\n\tfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n\t}\n\n\tmodule.exports = checkPropTypes;\n\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)));\n\n\t/***/ }),\n\t/* 12 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\t/**\n\t * Copyright 2013-present, Facebook, Inc.\n\t * All rights reserved.\n\t *\n\t * This source code is licensed under the BSD-style license found in the\n\t * LICENSE file in the root directory of this source tree. An additional grant\n\t * of patent rights can be found in the PATENTS file in the same directory.\n\t */\n\n\n\n\tvar emptyFunction = __webpack_require__(1);\n\tvar invariant = __webpack_require__(2);\n\tvar ReactPropTypesSecret = __webpack_require__(3);\n\n\tmodule.exports = function() {\n\t function shim(props, propName, componentName, location, propFullName, secret) {\n\t if (secret === ReactPropTypesSecret) {\n\t // It is still safe when called from React.\n\t return;\n\t }\n\t invariant(\n\t false,\n\t 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n\t 'Use PropTypes.checkPropTypes() to call them. ' +\n\t 'Read more at http://fb.me/use-check-prop-types'\n\t );\n\t }\t shim.isRequired = shim;\n\t function getShim() {\n\t return shim;\n\t }\t // Important!\n\t // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n\t var ReactPropTypes = {\n\t array: shim,\n\t bool: shim,\n\t func: shim,\n\t number: shim,\n\t object: shim,\n\t string: shim,\n\t symbol: shim,\n\n\t any: shim,\n\t arrayOf: getShim,\n\t element: shim,\n\t instanceOf: getShim,\n\t node: shim,\n\t objectOf: getShim,\n\t oneOf: getShim,\n\t oneOfType: getShim,\n\t shape: getShim\n\t };\n\n\t ReactPropTypes.checkPropTypes = emptyFunction;\n\t ReactPropTypes.PropTypes = ReactPropTypes;\n\n\t return ReactPropTypes;\n\t};\n\n\n\t/***/ }),\n\t/* 13 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\t/* WEBPACK VAR INJECTION */(function(process) {/**\n\t * Copyright 2013-present, Facebook, Inc.\n\t * All rights reserved.\n\t *\n\t * This source code is licensed under the BSD-style license found in the\n\t * LICENSE file in the root directory of this source tree. An additional grant\n\t * of patent rights can be found in the PATENTS file in the same directory.\n\t */\n\n\n\n\tvar emptyFunction = __webpack_require__(1);\n\tvar invariant = __webpack_require__(2);\n\tvar warning = __webpack_require__(6);\n\n\tvar ReactPropTypesSecret = __webpack_require__(3);\n\tvar checkPropTypes = __webpack_require__(11);\n\n\tmodule.exports = function(isValidElement, throwOnDirectAccess) {\n\t /* global Symbol */\n\t var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n\t var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n\t /**\n\t * Returns the iterator method function contained on the iterable object.\n\t *\n\t * Be sure to invoke the function with the iterable as context:\n\t *\n\t * var iteratorFn = getIteratorFn(myIterable);\n\t * if (iteratorFn) {\n\t * var iterator = iteratorFn.call(myIterable);\n\t * ...\n\t * }\n\t *\n\t * @param {?object} maybeIterable\n\t * @return {?function}\n\t */\n\t function getIteratorFn(maybeIterable) {\n\t var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n\t if (typeof iteratorFn === 'function') {\n\t return iteratorFn;\n\t }\n\t }\n\n\t /**\n\t * Collection of methods that allow declaration and validation of props that are\n\t * supplied to React components. Example usage:\n\t *\n\t * var Props = require('ReactPropTypes');\n\t * var MyArticle = React.createClass({\n\t * propTypes: {\n\t * // An optional string prop named \"description\".\n\t * description: Props.string,\n\t *\n\t * // A required enum prop named \"category\".\n\t * category: Props.oneOf(['News','Photos']).isRequired,\n\t *\n\t * // A prop named \"dialog\" that requires an instance of Dialog.\n\t * dialog: Props.instanceOf(Dialog).isRequired\n\t * },\n\t * render: function() { ... }\n\t * });\n\t *\n\t * A more formal specification of how these methods are used:\n\t *\n\t * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n\t * decl := ReactPropTypes.{type}(.isRequired)?\n\t *\n\t * Each and every declaration produces a function with the same signature. This\n\t * allows the creation of custom validation functions. For example:\n\t *\n\t * var MyLink = React.createClass({\n\t * propTypes: {\n\t * // An optional string or URI prop named \"href\".\n\t * href: function(props, propName, componentName) {\n\t * var propValue = props[propName];\n\t * if (propValue != null && typeof propValue !== 'string' &&\n\t * !(propValue instanceof URI)) {\n\t * return new Error(\n\t * 'Expected a string or an URI for ' + propName + ' in ' +\n\t * componentName\n\t * );\n\t * }\n\t * }\n\t * },\n\t * render: function() {...}\n\t * });\n\t *\n\t * @internal\n\t */\n\n\t var ANONYMOUS = '<<anonymous>>';\n\n\t // Important!\n\t // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n\t var ReactPropTypes = {\n\t array: createPrimitiveTypeChecker('array'),\n\t bool: createPrimitiveTypeChecker('boolean'),\n\t func: createPrimitiveTypeChecker('function'),\n\t number: createPrimitiveTypeChecker('number'),\n\t object: createPrimitiveTypeChecker('object'),\n\t string: createPrimitiveTypeChecker('string'),\n\t symbol: createPrimitiveTypeChecker('symbol'),\n\n\t any: createAnyTypeChecker(),\n\t arrayOf: createArrayOfTypeChecker,\n\t element: createElementTypeChecker(),\n\t instanceOf: createInstanceTypeChecker,\n\t node: createNodeChecker(),\n\t objectOf: createObjectOfTypeChecker,\n\t oneOf: createEnumTypeChecker,\n\t oneOfType: createUnionTypeChecker,\n\t shape: createShapeTypeChecker\n\t };\n\n\t /**\n\t * inlined Object.is polyfill to avoid requiring consumers ship their own\n\t * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n\t */\n\t /*eslint-disable no-self-compare*/\n\t function is(x, y) {\n\t // SameValue algorithm\n\t if (x === y) {\n\t // Steps 1-5, 7-10\n\t // Steps 6.b-6.e: +0 != -0\n\t return x !== 0 || 1 / x === 1 / y;\n\t } else {\n\t // Step 6.a: NaN == NaN\n\t return x !== x && y !== y;\n\t }\n\t }\n\t /*eslint-enable no-self-compare*/\n\n\t /**\n\t * We use an Error-like object for backward compatibility as people may call\n\t * PropTypes directly and inspect their output. However, we don't use real\n\t * Errors anymore. We don't inspect their stack anyway, and creating them\n\t * is prohibitively expensive if they are created too often, such as what\n\t * happens in oneOfType() for any type before the one that matched.\n\t */\n\t function PropTypeError(message) {\n\t this.message = message;\n\t this.stack = '';\n\t }\n\t // Make `instanceof Error` still work for returned errors.\n\t PropTypeError.prototype = Error.prototype;\n\n\t function createChainableTypeChecker(validate) {\n\t function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n\t componentName = componentName || ANONYMOUS;\n\t propFullName = propFullName || propName;\n\n\t if (secret !== ReactPropTypesSecret) {\n\t if (throwOnDirectAccess) {\n\t // New behavior only for users of `prop-types` package\n\t invariant(\n\t false,\n\t 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n\t 'Use `PropTypes.checkPropTypes()` to call them. ' +\n\t 'Read more at http://fb.me/use-check-prop-types'\n\t );\n\t }\n\t }\n\t if (props[propName] == null) {\n\t if (isRequired) {\n\t if (props[propName] === null) {\n\t return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n\t }\n\t return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n\t }\n\t return null;\n\t } else {\n\t return validate(props, propName, componentName, location, propFullName);\n\t }\n\t }\n\n\t var chainedCheckType = checkType.bind(null, false);\n\t chainedCheckType.isRequired = checkType.bind(null, true);\n\n\t return chainedCheckType;\n\t }\n\n\t function createPrimitiveTypeChecker(expectedType) {\n\t function validate(props, propName, componentName, location, propFullName, secret) {\n\t var propValue = props[propName];\n\t var propType = getPropType(propValue);\n\t if (propType !== expectedType) {\n\t // `propValue` being instance of, say, date/regexp, pass the 'object'\n\t // check, but we can offer a more precise error message here rather than\n\t // 'of type `object`'.\n\t var preciseType = getPreciseType(propValue);\n\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createAnyTypeChecker() {\n\t return createChainableTypeChecker(emptyFunction.thatReturnsNull);\n\t }\n\n\t function createArrayOfTypeChecker(typeChecker) {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t if (typeof typeChecker !== 'function') {\n\t return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n\t }\n\t var propValue = props[propName];\n\t if (!Array.isArray(propValue)) {\n\t var propType = getPropType(propValue);\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n\t }\n\t for (var i = 0; i < propValue.length; i++) {\n\t var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n\t if (error instanceof Error) {\n\t return error;\n\t }\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createElementTypeChecker() {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t var propValue = props[propName];\n\t if (!isValidElement(propValue)) {\n\t var propType = getPropType(propValue);\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createInstanceTypeChecker(expectedClass) {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t if (!(props[propName] instanceof expectedClass)) {\n\t var expectedClassName = expectedClass.name || ANONYMOUS;\n\t var actualClassName = getClassName(props[propName]);\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createEnumTypeChecker(expectedValues) {\n\t if (!Array.isArray(expectedValues)) {\n\t return emptyFunction.thatReturnsNull;\n\t }\n\n\t function validate(props, propName, componentName, location, propFullName) {\n\t var propValue = props[propName];\n\t for (var i = 0; i < expectedValues.length; i++) {\n\t if (is(propValue, expectedValues[i])) {\n\t return null;\n\t }\n\t }\n\n\t var valuesString = JSON.stringify(expectedValues);\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createObjectOfTypeChecker(typeChecker) {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t if (typeof typeChecker !== 'function') {\n\t return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n\t }\n\t var propValue = props[propName];\n\t var propType = getPropType(propValue);\n\t if (propType !== 'object') {\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n\t }\n\t for (var key in propValue) {\n\t if (propValue.hasOwnProperty(key)) {\n\t var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n\t if (error instanceof Error) {\n\t return error;\n\t }\n\t }\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createUnionTypeChecker(arrayOfTypeCheckers) {\n\t if (!Array.isArray(arrayOfTypeCheckers)) {\n\t return emptyFunction.thatReturnsNull;\n\t }\n\n\t for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n\t var checker = arrayOfTypeCheckers[i];\n\t if (typeof checker !== 'function') {\n\t warning(\n\t false,\n\t 'Invalid argument supplid to oneOfType. Expected an array of check functions, but ' +\n\t 'received %s at index %s.',\n\t getPostfixForTypeWarning(checker),\n\t i\n\t );\n\t return emptyFunction.thatReturnsNull;\n\t }\n\t }\n\n\t function validate(props, propName, componentName, location, propFullName) {\n\t for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n\t var checker = arrayOfTypeCheckers[i];\n\t if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {\n\t return null;\n\t }\n\t }\n\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createNodeChecker() {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t if (!isNode(props[propName])) {\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createShapeTypeChecker(shapeTypes) {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t var propValue = props[propName];\n\t var propType = getPropType(propValue);\n\t if (propType !== 'object') {\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n\t }\n\t for (var key in shapeTypes) {\n\t var checker = shapeTypes[key];\n\t if (!checker) {\n\t continue;\n\t }\n\t var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n\t if (error) {\n\t return error;\n\t }\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function isNode(propValue) {\n\t switch (typeof propValue) {\n\t case 'number':\n\t case 'string':\n\t case 'undefined':\n\t return true;\n\t case 'boolean':\n\t return !propValue;\n\t case 'object':\n\t if (Array.isArray(propValue)) {\n\t return propValue.every(isNode);\n\t }\n\t if (propValue === null || isValidElement(propValue)) {\n\t return true;\n\t }\n\n\t var iteratorFn = getIteratorFn(propValue);\n\t if (iteratorFn) {\n\t var iterator = iteratorFn.call(propValue);\n\t var step;\n\t if (iteratorFn !== propValue.entries) {\n\t while (!(step = iterator.next()).done) {\n\t if (!isNode(step.value)) {\n\t return false;\n\t }\n\t }\n\t } else {\n\t // Iterator will provide entry [k,v] tuples rather than values.\n\t while (!(step = iterator.next()).done) {\n\t var entry = step.value;\n\t if (entry) {\n\t if (!isNode(entry[1])) {\n\t return false;\n\t }\n\t }\n\t }\n\t }\n\t } else {\n\t return false;\n\t }\n\n\t return true;\n\t default:\n\t return false;\n\t }\n\t }\n\n\t function isSymbol(propType, propValue) {\n\t // Native Symbol.\n\t if (propType === 'symbol') {\n\t return true;\n\t }\n\n\t // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n\t if (propValue['@@toStringTag'] === 'Symbol') {\n\t return true;\n\t }\n\n\t // Fallback for non-spec compliant Symbols which are polyfilled.\n\t if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n\t return true;\n\t }\n\n\t return false;\n\t }\n\n\t // Equivalent of `typeof` but with special handling for array and regexp.\n\t function getPropType(propValue) {\n\t var propType = typeof propValue;\n\t if (Array.isArray(propValue)) {\n\t return 'array';\n\t }\n\t if (propValue instanceof RegExp) {\n\t // Old webkits (at least until Android 4.0) return 'function' rather than\n\t // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n\t // passes PropTypes.object.\n\t return 'object';\n\t }\n\t if (isSymbol(propType, propValue)) {\n\t return 'symbol';\n\t }\n\t return propType;\n\t }\n\n\t // This handles more types than `getPropType`. Only used for error messages.\n\t // See `createPrimitiveTypeChecker`.\n\t function getPreciseType(propValue) {\n\t if (typeof propValue === 'undefined' || propValue === null) {\n\t return '' + propValue;\n\t }\n\t var propType = getPropType(propValue);\n\t if (propType === 'object') {\n\t if (propValue instanceof Date) {\n\t return 'date';\n\t } else if (propValue instanceof RegExp) {\n\t return 'regexp';\n\t }\n\t }\n\t return propType;\n\t }\n\n\t // Returns a string that is postfixed to a warning about an invalid type.\n\t // For example, \"undefined\" or \"of type array\"\n\t function getPostfixForTypeWarning(value) {\n\t var type = getPreciseType(value);\n\t switch (type) {\n\t case 'array':\n\t case 'object':\n\t return 'an ' + type;\n\t case 'boolean':\n\t case 'date':\n\t case 'regexp':\n\t return 'a ' + type;\n\t default:\n\t return type;\n\t }\n\t }\n\n\t // Returns class name of the object, if any.\n\t function getClassName(propValue) {\n\t if (!propValue.constructor || !propValue.constructor.name) {\n\t return ANONYMOUS;\n\t }\n\t return propValue.constructor.name;\n\t }\n\n\t ReactPropTypes.checkPropTypes = checkPropTypes;\n\t ReactPropTypes.PropTypes = ReactPropTypes;\n\n\t return ReactPropTypes;\n\t};\n\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)));\n\n\t/***/ })\n\t/******/ ]);\n\t});\n\t\n} (dist, dist.exports));\n\nvar distExports = dist.exports;\n\nvar queryClient = new QueryClient({\n queryCache: new QueryCache(),\n defaultOptions: {\n queries: {\n staleTime: DEFAULT_STALE_TIME\n }\n }\n});\n\nfunction ownKeys$g(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$g(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$g(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$g(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar withReactQuery = function withReactQuery(Component) {\n var QueryWrapper = function QueryWrapper(props) {\n return /*#__PURE__*/jsx(QueryClientProvider, {\n client: queryClient,\n children: /*#__PURE__*/jsx(Component, _objectSpread$g({}, props))\n });\n };\n return QueryWrapper;\n};\n\nvar fetch$3 = function fetch() {\n return axios.get(\"\".concat(BASE_URL, \"/permissions\"));\n};\nvar permissionsApi = {\n fetch: fetch$3\n};\n\nfunction ownKeys$f(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$f(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$f(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$f(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar useFetchPermissions = function useFetchPermissions() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return useQuery(_objectSpread$f({\n queryKey: [QUERY_KEYS.PERMISSIONS],\n queryFn: permissionsApi.fetch,\n select: function select(response) {\n return response === null || response === void 0 ? void 0 : response.permissions;\n }\n }, options));\n};\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = _objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\n\nvar fetch$2 = function fetch() {\n return axios.get(\"\".concat(BASE_URL, \"/global_roles\"));\n};\nvar globalRolesApi = {\n fetch: fetch$2\n};\n\nvar fetch$1 = function fetch() {\n return axios.get(\"\".concat(BASE_URL, \"/organization_roles\"));\n};\nvar create$1 = function create(payload) {\n return axios.post(\"\".concat(BASE_URL, \"/organization_roles\"), payload);\n};\nvar update$1 = function update(id, payload) {\n return axios.patch(\"\".concat(BASE_URL, \"/organization_roles/\").concat(id), payload);\n};\nvar destroy = function destroy(id, payload) {\n return axios[\"delete\"](\"\".concat(BASE_URL, \"/organization_roles/\").concat(id), {\n data: payload\n });\n};\nvar bulkUpdate$1 = function bulkUpdate(payload) {\n return axios.patch(\"\".concat(BASE_URL, \"/organization_roles/bulk_update\"), payload);\n};\nvar organizationRolesApi = {\n bulkUpdate: bulkUpdate$1,\n create: create$1,\n destroy: destroy,\n fetch: fetch$1,\n update: update$1\n};\n\nvar _excluded$3 = [\"onSuccess\"],\n _excluded2$2 = [\"onSuccess\"],\n _excluded3 = [\"onSuccess\"],\n _excluded4 = [\"onSuccess\"];\nfunction ownKeys$e(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$e(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$e(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$e(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar useFetchRoles = function useFetchRoles() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return useQuery(_objectSpread$e({\n queryKey: [QUERY_KEYS.ROLES],\n queryFn: organizationRolesApi.fetch,\n select: function select(response) {\n return response === null || response === void 0 ? void 0 : response.organizationRoles;\n }\n }, options));\n};\nvar useFetchGlobalRoles = function useFetchGlobalRoles() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return useQuery(_objectSpread$e({\n queryKey: [QUERY_KEYS.GLOBAL_ROLES],\n queryFn: globalRolesApi.fetch\n }, options));\n};\nvar useCreateRole = function useCreateRole(_ref) {\n var _onSuccess = _ref.onSuccess,\n options = _objectWithoutProperties(_ref, _excluded$3);\n return useMutationWithInvalidation(organizationRolesApi.create, _objectSpread$e({\n keysToInvalidate: [[QUERY_KEYS.TEAMS_DEPENDENCIES], [QUERY_KEYS.ROLES]],\n onSuccess: function onSuccess() {\n _onSuccess === null || _onSuccess === void 0 || _onSuccess();\n }\n }, options));\n};\nvar useUpdateRole = function useUpdateRole(_ref2) {\n var _onSuccess2 = _ref2.onSuccess,\n options = _objectWithoutProperties(_ref2, _excluded2$2);\n return useMutationWithInvalidation(function (_ref3) {\n var id = _ref3.id,\n payload = _ref3.payload;\n return organizationRolesApi.update(id, payload);\n }, _objectSpread$e({\n keysToInvalidate: [[QUERY_KEYS.TEAMS], [QUERY_KEYS.TEAMS_DEPENDENCIES], [QUERY_KEYS.ROLES]],\n onSuccess: function onSuccess() {\n _onSuccess2 === null || _onSuccess2 === void 0 || _onSuccess2();\n }\n }, options));\n};\nvar useDestroyRole = function useDestroyRole(_ref4) {\n var _ref4$onSuccess = _ref4.onSuccess,\n _onSuccess3 = _ref4$onSuccess === void 0 ? noop : _ref4$onSuccess,\n options = _objectWithoutProperties(_ref4, _excluded3);\n return useMutationWithInvalidation(function (_ref5) {\n var id = _ref5.id,\n payload = _ref5.payload;\n return organizationRolesApi.destroy(id, payload);\n }, _objectSpread$e({\n keysToInvalidate: [[QUERY_KEYS.TEAMS], [QUERY_KEYS.TEAMS_DEPENDENCIES], [QUERY_KEYS.ROLES]],\n onSuccess: function onSuccess() {\n _onSuccess3 === null || _onSuccess3 === void 0 || _onSuccess3();\n }\n }, options));\n};\nvar useBulkUpdateRoles = function useBulkUpdateRoles(_ref6) {\n var _onSuccess4 = _ref6.onSuccess,\n options = _objectWithoutProperties(_ref6, _excluded4);\n return useMutationWithInvalidation(organizationRolesApi.bulkUpdate, _objectSpread$e({\n keysToInvalidate: [[QUERY_KEYS.TEAMS], [QUERY_KEYS.TEAMS_DEPENDENCIES], [QUERY_KEYS.ROLES]],\n onSuccess: function onSuccess() {\n _onSuccess4 === null || _onSuccess4 === void 0 || _onSuccess4();\n }\n }, options));\n};\n\nvar renderSearchProps = function renderSearchProps() {\n return {\n \"data-cy\": \"ntm-search-roles-input\",\n placeholder: t$1(\"neetoTeamMembers.placeholders.searchRole\", PLURAL)\n };\n};\nvar renderBreadcrumbs = function renderBreadcrumbs(breadcrumbs) {\n return breadcrumbs !== null && breadcrumbs !== void 0 ? breadcrumbs : [{\n text: taxonomies.member.plural,\n link: \"/members\"\n }];\n};\n\nvar AddRoleButton = function AddRoleButton(_ref) {\n var config = _ref.config,\n onClick = _ref.onClick;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var isCreatePermissionGranted = config.permissions.create;\n return /*#__PURE__*/jsx(Tooltip, {\n content: t(\"neetoTeamMembers.tooltips.noPermissionToAddRole\"),\n disabled: isCreatePermissionGranted,\n position: \"bottom\",\n children: /*#__PURE__*/jsx(\"span\", {\n children: /*#__PURE__*/jsx(Button, {\n \"data-cy\": \"ntm-add-role-button\",\n disabled: !isCreatePermissionGranted,\n label: t(\"neetoTeamMembers.labels.addNewRole\"),\n onClick: onClick\n })\n })\n });\n};\n\nvar Header$3 = function Header(_ref) {\n var _config$header;\n var config = _ref.config,\n handleReset = _ref.handleReset,\n handleSubmit = _ref.handleSubmit,\n _ref$isDirty = _ref.isDirty,\n isDirty = _ref$isDirty === void 0 ? false : _ref$isDirty,\n setIsNewRolePaneOpen = _ref.setIsNewRolePaneOpen,\n roles = _ref.roles;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var isUpdatePermissionGranted = config.permissions.update;\n return /*#__PURE__*/jsx(NeetoHeader, {\n breadcrumbs: renderBreadcrumbs(config === null || config === void 0 || (_config$header = config.header) === null || _config$header === void 0 ? void 0 : _config$header.breadcrumbs),\n className: \"ntm-roles-header\",\n searchProps: isNotEmpty(roles) ? renderSearchProps() : null,\n actionBlock: isDirty ? /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(Tooltip, {\n content: t(\"neetoTeamMembers.tooltips.noPermissionToEditRoles\"),\n disabled: isUpdatePermissionGranted,\n position: \"bottom\",\n children: /*#__PURE__*/jsx(\"span\", {\n children: /*#__PURE__*/jsx(Button, {\n \"data-cy\": \"ntm-role-submission-button\",\n disabled: !isUpdatePermissionGranted,\n label: t(\"neetoTeamMembers.buttons.saveChanges\"),\n type: \"submit\",\n onClick: handleSubmit\n })\n })\n }), /*#__PURE__*/jsx(Button, {\n \"data-cy\": \"ntm-role-reset-button\",\n label: t(\"neetoTeamMembers.buttons.reset\"),\n style: \"text\",\n type: \"reset\",\n onClick: handleReset\n })]\n }) : /*#__PURE__*/jsx(AddRoleButton, {\n config: config,\n onClick: function onClick() {\n return setIsNewRolePaneOpen(true);\n }\n }),\n title: /*#__PURE__*/jsxs(\"span\", {\n className: \"neeto-ui-flex neeto-ui-items-center neeto-ui-gap-6\",\n children: [t(\"neetoTeamMembers.common.role\", PLURAL), (config === null || config === void 0 ? void 0 : config.helpUrl) && /*#__PURE__*/jsx(Button, {\n className: \"neeto-ui-mt-1\",\n \"data-cy\": \"ntm-roles-permission-more-info-button\",\n href: config === null || config === void 0 ? void 0 : config.helpUrl,\n icon: ExternalLink,\n label: t(\"neetoTeamMembers.helpers.moreInfoAboutPermissions\"),\n style: \"link\",\n target: \"_blank\"\n })]\n })\n });\n};\n\nvar transformObjectToDotNotation = function transformObjectToDotNotation(object) {\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \"\";\n var result = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];\n var errorKey = Object.keys(object).find(function (key) {\n return !!object[key];\n });\n if (!errorKey) return;\n var value = object[errorKey];\n if (!value) return;\n var nextKey = prefix ? \"\".concat(prefix, \".\").concat(errorKey) : errorKey;\n is(Object, value) ? transformObjectToDotNotation(value, nextKey, result) : result.push(nextKey);\n\n // eslint-disable-next-line consistent-return\n return result;\n};\nvar getErrorFieldName = function getErrorFieldName(formikErrors) {\n var _transformObjectToDot;\n return (_transformObjectToDot = transformObjectToDotNotation(formikErrors)) === null || _transformObjectToDot === void 0 ? void 0 : _transformObjectToDot[0];\n};\n\nvar ScrollToErrorField = function ScrollToErrorField(_ref) {\n var formRef = _ref.formRef;\n var _useFormikContext = useFormikContext(),\n submitCount = _useFormikContext.submitCount,\n isValid = _useFormikContext.isValid,\n errors = _useFormikContext.errors;\n var isValidatedReference = useRef(false);\n useEffect(function () {\n isValidatedReference.current = false;\n }, [submitCount]);\n useEffect(function () {\n if (!formRef.current) return;\n if (isValidatedReference.current || isValid) return;\n isValidatedReference.current = true;\n var fieldErrorNames = getErrorFieldName(errors);\n if (fieldErrorNames.length <= 0) return;\n var errorFormElement = _toConsumableArray(formRef.current.elements).find(function (element) {\n return element.name === fieldErrorNames;\n });\n errorFormElement === null || errorFormElement === void 0 || errorFormElement.scrollIntoView({\n behavior: \"smooth\",\n block: \"center\"\n });\n }, [submitCount, errors]); // eslint-disable-line react-hooks/exhaustive-deps\n\n return null;\n};\n\nvar ROLE_NAME_MAX_LENGTH = 40;\nvar ROLE_DESCRIPTION_MAX_LENGTH = 255;\nvar ADD_ROLE_FORM_VALIDATION_SCHEMA = object({\n name: string().trim().max(ROLE_NAME_MAX_LENGTH,\n // @ts-ignore\n t$1(\"neetoTeamMembers.validations.nameLimitExceeded\", {\n limit: ROLE_NAME_MAX_LENGTH\n }))\n // @ts-ignore\n .required(t$1(\"neetoTeamMembers.validations.enterRoleName\")),\n description: string().trim().max(ROLE_DESCRIPTION_MAX_LENGTH,\n // @ts-ignore\n t$1(\"neetoTeamMembers.validations.descriptionLimitExceeded\", {\n limit: ROLE_DESCRIPTION_MAX_LENGTH\n }))\n});\nvar ADD_ROLE_FORM_INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n permissionIds: []\n};\nvar ROLE_FORMIK_PROPS = {\n validationSchema: ADD_ROLE_FORM_VALIDATION_SCHEMA\n};\n\nfunction ownKeys$d(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$d(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$d(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$d(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar sortPermissionsBySequence = function sortPermissionsBySequence() {\n var _permissions$;\n var permissions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n return permissions !== null && permissions !== void 0 && (_permissions$ = permissions[0]) !== null && _permissions$ !== void 0 && _permissions$.sequence ? permissions.sort(function (first, second) {\n return first.sequence - second.sequence;\n }) : permissions;\n};\nvar getPermissionGroups = function getPermissionGroups() {\n var permissions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var sortBySequence = sortPermissionsBySequence(permissions);\n var groupedPermissions = new Map();\n sortBySequence.forEach(function (permission) {\n if (groupedPermissions.has(permission === null || permission === void 0 ? void 0 : permission.category)) {\n var category = groupedPermissions.get(permission.category);\n var currentPermissions = category.get(\"permissions\");\n var _permissions = append(permission, currentPermissions);\n category.set(\"permissions\", _permissions);\n } else {\n var value = new Map();\n value.set(\"permissions\", append(permission, []));\n value.set(\"isPermissionVisible\", true);\n groupedPermissions.set(permission === null || permission === void 0 ? void 0 : permission.category, value);\n }\n });\n return groupedPermissions;\n};\nvar getModifiedPermissions = function getModifiedPermissions() {\n var roles = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var modifiedRoles = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n return modifiedRoles.map(function (role) {\n var oldPermissions = findById(role.id, roles).permissionIds;\n if (equals(oldPermissions, role.permissionIds)) return false;\n return {\n id: role.id,\n permissionIds: role.permissionIds\n };\n }).filter(Boolean);\n};\nvar attachChildrenRecursively = function attachChildrenRecursively(permission, permissionsNameMap, permissionRelationConfig) {\n var _ref = permissionRelationConfig[permission.name] || {},\n children = _ref.children;\n return children ? _objectSpread$d(_objectSpread$d({}, permission), {}, {\n children: children.flatMap(function (childName) {\n return attachChildrenRecursively(permissionsNameMap[childName][0], permissionsNameMap, permissionRelationConfig);\n })\n }) : permission;\n};\nvar findChildIdsRecursively = function findChildIdsRecursively(permission, permissionsNameMap, permissionRelationConfig) {\n var _ref2 = permissionRelationConfig[permission.name] || {},\n children = _ref2.children;\n return children ? concat(children.flatMap(function (childName) {\n return findChildIdsRecursively(permissionsNameMap[childName][0], permissionsNameMap, permissionRelationConfig);\n }), [permission.id]) : [permission.id];\n};\nvar getChildrenRemovedFromRoot = function getChildrenRemovedFromRoot(_ref3) {\n var permissions = _ref3.permissions,\n permissionsNameMap = _ref3.permissionsNameMap,\n permissionRelationConfig = _ref3.permissionRelationConfig;\n var permissionsWithChildren = permissions.map(function (permission) {\n return attachChildrenRecursively(permission, permissionsNameMap, permissionRelationConfig);\n });\n var childPermissions = Object.values(permissionRelationConfig).flatMap(prop(\"children\"));\n return permissionsWithChildren.filter(function (permission) {\n return !childPermissions.includes(permission.name);\n });\n};\n\nfunction ownKeys$c(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$c(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$c(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$c(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar Permissions = function Permissions(_ref) {\n var _ref$permissions = _ref.permissions,\n permissions = _ref$permissions === void 0 ? [] : _ref$permissions,\n _ref$isDisabled = _ref.isDisabled,\n isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,\n _ref$permissionRelati = _ref.permissionRelationConfig,\n permissionRelationConfig = _ref$permissionRelati === void 0 ? {} : _ref$permissionRelati;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useFormikContext = useFormikContext(),\n setFieldValue = _useFormikContext.setFieldValue,\n values = _useFormikContext.values;\n var _values$permissionIds = values.permissionIds,\n permissionIds = _values$permissionIds === void 0 ? [] : _values$permissionIds;\n var permissionsNameMap = groupBy(prop(\"name\"))(permissions);\n var handleTogglePermission = function handleTogglePermission(permissionId) {\n var permission = findById(permissionId, permissions);\n var nextPermissionIds = [];\n if (permissionIds.includes(permissionId)) {\n var childIds = [];\n if (permissionRelationConfig[permission.name]) {\n childIds = findChildIdsRecursively(permission, permissionsNameMap, permissionRelationConfig);\n }\n var permissionIdsToBeUnchecked = [permissionId].concat(_toConsumableArray(childIds));\n nextPermissionIds = permissionIds.filter(function (id) {\n return !permissionIdsToBeUnchecked.includes(id);\n });\n } else {\n var _uncheckOnSelect$flat;\n var _ref2 = permissionRelationConfig[permission.name] || {},\n uncheckOnSelect = _ref2.uncheckOnSelect;\n var uncheckOnSelectPermissions = (_uncheckOnSelect$flat = uncheckOnSelect === null || uncheckOnSelect === void 0 ? void 0 : uncheckOnSelect.flatMap(function (name) {\n return permissionsNameMap[name];\n })) !== null && _uncheckOnSelect$flat !== void 0 ? _uncheckOnSelect$flat : [];\n var _childIds = uncheckOnSelectPermissions.flatMap(function (permission) {\n return findChildIdsRecursively(permission, permissionsNameMap, permissionRelationConfig);\n });\n var uncheckedPermissionIds = pluck(\"id\", uncheckOnSelectPermissions);\n var _permissionIdsToBeUnchecked = [].concat(_toConsumableArray(uncheckedPermissionIds), _toConsumableArray(_childIds));\n nextPermissionIds = uncheckOnSelect ? [].concat(_toConsumableArray(permissionIds.filter(function (id) {\n return !_permissionIdsToBeUnchecked.includes(id);\n })), [permissionId]) : [].concat(_toConsumableArray(permissionIds), [permissionId]);\n }\n setFieldValue(\"permissionIds\", nextPermissionIds);\n };\n var groupedPermissions = useMemo(function () {\n var childrenRemovedFromRoot = getChildrenRemovedFromRoot({\n permissions: permissions,\n permissionsNameMap: permissionsNameMap,\n permissionRelationConfig: permissionRelationConfig\n });\n return groupBy(prop(\"category\"))(childrenRemovedFromRoot);\n }, [permissions]); // eslint-disable-line react-hooks/exhaustive-deps\n\n var renderPermission = function renderPermission(_ref3) {\n var _permissionRelationCo;\n var id = _ref3.id,\n name = _ref3.name,\n description = _ref3.description,\n children = _ref3.children,\n _ref3$isParentChecked = _ref3.isParentChecked,\n isParentChecked = _ref3$isParentChecked === void 0 ? true : _ref3$isParentChecked;\n var sortedChildren = children && sortPermissionsBySequence(children);\n var isCheckingDisabled = !isParentChecked || isDisabled;\n var isChecked = permissionIds.includes(id);\n var permissionsToBeUnchecked = (_permissionRelationCo = permissionRelationConfig[name]) === null || _permissionRelationCo === void 0 ? void 0 : _permissionRelationCo.uncheckOnSelect;\n var hasUnCheckOnSelect = permissionsToBeUnchecked && isNotEmpty(permissionsToBeUnchecked);\n var tooltipMessage = hasUnCheckOnSelect && t(\"neetoTeamMembers.tooltips.uncheckOnSelectPermissions\", {\n permissions: permissionsToBeUnchecked.flatMap(function (name) {\n return pluck(\"description\", permissionsNameMap[name]);\n }).join(\", \")\n });\n return /*#__PURE__*/jsx(Fragment$1, {\n children: /*#__PURE__*/jsx(Tooltip, {\n content: tooltipMessage,\n disabled: !tooltipMessage || isChecked,\n position: \"left-start\",\n children: /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-permission__card\",\n children: [/*#__PURE__*/jsx(Checkbox, {\n checked: isChecked,\n className: \"flex-grow-0\",\n \"data-cy\": \"ntm-roles-permission-checkbox\",\n disabled: isCheckingDisabled,\n label: description,\n onChange: function onChange() {\n return handleTogglePermission(id);\n }\n }), /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-permission__sub-blocks neeto-ui-relative neeto-ui-pl-6\",\n children: sortedChildren === null || sortedChildren === void 0 ? void 0 : sortedChildren.map(function (childPermission) {\n return renderPermission(_objectSpread$c(_objectSpread$c({}, childPermission), {}, {\n isParentChecked: isChecked\n }));\n })\n })]\n })\n })\n }, id);\n };\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-pane__body-wrapper\",\n children: [/*#__PURE__*/jsxs(\"div\", {\n children: [/*#__PURE__*/jsx(Typography, {\n lineHeight: \"normal\",\n style: \"h4\",\n weight: \"semibold\",\n children: t(\"neetoTeamMembers.common.permission\", SINGULAR)\n }), /*#__PURE__*/jsx(Typography, {\n lineHeight: \"normal\",\n style: \"body2\",\n children: t(\"neetoTeamMembers.helpers.configPermissions\")\n })]\n }), Object.keys(groupedPermissions).map(function (category) {\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-permission\",\n \"data-cy\": \"ntm-roles-permission-card\",\n children: [/*#__PURE__*/jsx(Typography, {\n className: \"ntm-roles-permission__heading neeto-ui-mb-2\",\n \"data-cy\": \"ntm-roles-permission-category-title\",\n lineHeight: \"normal\",\n style: \"h5\",\n weight: \"bold\",\n children: category\n }), /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-permission-category-card\",\n children: groupedPermissions[category].map(renderPermission)\n })]\n }, category);\n })]\n });\n};\n\nfunction ownKeys$b(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$b(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$b(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$b(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar ManageRoles = function ManageRoles(_ref) {\n var config = _ref.config,\n _ref$isOpen = _ref.isOpen,\n isOpen = _ref$isOpen === void 0 ? false : _ref$isOpen,\n onClose = _ref.onClose,\n _ref$permissions = _ref.permissions,\n permissions = _ref$permissions === void 0 ? [] : _ref$permissions,\n _ref$selectedRole = _ref.selectedRole,\n selectedRole = _ref$selectedRole === void 0 ? {} : _ref$selectedRole;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var formReference = useRef(null);\n var inputReference = useRef(null);\n var _useCreateRole = useCreateRole({\n onSuccess: onClose\n }),\n createRole = _useCreateRole.mutate,\n isCreatingRole = _useCreateRole.isPending;\n var _useUpdateRole = useUpdateRole({\n onSuccess: onClose\n }),\n updateRole = _useUpdateRole.mutate,\n isUpdatingRole = _useUpdateRole.isPending;\n var isEdit = isPresent(selectedRole);\n var isSubmitting = isCreatingRole || isUpdatingRole;\n var handleSubmit = function handleSubmit(formValues) {\n var payload = {\n organizationRole: _objectSpread$b(_objectSpread$b({}, formValues), {}, {\n name: formValues.name.trim(),\n description: formValues.description.trim()\n })\n };\n isEdit ? updateRole({\n payload: payload,\n id: selectedRole.id\n }) : createRole(payload);\n };\n var initialValues = isEdit ? selectedRole : ADD_ROLE_FORM_INITIAL_VALUES;\n var formikProps = _objectSpread$b(_objectSpread$b({}, ROLE_FORMIK_PROPS), {}, {\n initialValues: initialValues,\n onSubmit: handleSubmit\n });\n var isReadOnly = selectedRole.kind === \"system\";\n var isDisabled = ADMIN_ROLES.includes(selectedRole.name) && isReadOnly;\n return /*#__PURE__*/jsxs(Pane, {\n isOpen: isOpen,\n onClose: onClose,\n initialFocusRef: inputReference,\n children: [/*#__PURE__*/jsx(Pane.Header, {\n children: /*#__PURE__*/jsx(Typography, {\n \"data-cy\": \"ntm-add-role-title\",\n style: \"h2\",\n children: isEdit ? t(\"neetoTeamMembers.labels.editRole\") : t(\"neetoTeamMembers.labels.addNewRole\")\n })\n }), /*#__PURE__*/jsx(Form$1, {\n formikProps: formikProps,\n ref: formReference,\n children: function children(_ref2) {\n var _config$permissionRel;\n var dirty = _ref2.dirty;\n return /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(ScrollToErrorField, {\n formRef: formReference\n }), /*#__PURE__*/jsx(Pane.Body, {\n children: /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-pane__body\",\n children: [/*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-pane__body-wrapper\",\n children: [/*#__PURE__*/jsx(Input, {\n required: true,\n unlimitedChars: true,\n \"data-cy\": \"ntm-add-role-name-text-field\",\n label: t(\"neetoTeamMembers.common.name\"),\n maxLength: ROLE_NAME_MAX_LENGTH,\n name: \"name\",\n placeholder: t(\"neetoTeamMembers.placeholders.enterName\"),\n readOnly: isReadOnly,\n ref: inputReference\n }), /*#__PURE__*/jsx(Textarea, {\n unlimitedChars: true,\n \"data-cy\": \"ntm-add-role-description-text-field\",\n label: t(\"neetoTeamMembers.common.description\"),\n maxLength: ROLE_DESCRIPTION_MAX_LENGTH,\n name: \"description\",\n readOnly: isDisabled,\n placeholder: t(\"neetoTeamMembers.placeholders.enterDescription\")\n })]\n }), /*#__PURE__*/jsx(Permissions, {\n isDisabled: isDisabled,\n permissions: permissions,\n permissionRelationConfig: (_config$permissionRel = config === null || config === void 0 ? void 0 : config.permissionRelation) !== null && _config$permissionRel !== void 0 ? _config$permissionRel : {}\n })]\n })\n }), /*#__PURE__*/jsx(Pane.Footer, {\n children: /*#__PURE__*/jsx(ActionBlock, {\n isSubmitting: isSubmitting,\n className: \"ntm-roles-pane__footer\",\n cancelButtonProps: {\n \"data-cy\": \"ntm-add-role-cancel-button\",\n onClick: onClose\n },\n submitButtonProps: {\n \"data-cy\": \"ntm-add-role-submit-button\",\n disabled: isSubmitting || isDisabled || !dirty\n }\n })\n })]\n });\n }\n })]\n });\n};\n\nvar DEFAULT_MANAGE_ROLE_VALUES = {\n isDelete: false,\n isEdit: false,\n selectedRole: {}\n};\nvar MENU_ITEMS = {\n EDIT: \"edit\",\n DELETE: \"delete\"\n};\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nvar deepClone = function deepClone(object) {\n if (!object || true === object) {\n //this also handles boolean as true and false\n return object;\n }\n var objectType = _typeof$1(object);\n if (\"number\" === objectType || \"string\" === objectType) {\n // add your immutables here\n return object;\n }\n var result = null;\n if (Array.isArray(object)) {\n result = [];\n } else if (!object.constructor) {\n result = {};\n } else {\n result = new object.constructor();\n }\n if (object instanceof Map) {\n var _iterator = _createForOfIteratorHelper(object.keys()),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var key = _step.value;\n result.set(key, deepClone(object.get(key)));\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n Object.keys(object).forEach(function (key) {\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n result[key] = deepClone(object[key]);\n }\n });\n return result;\n};\nvar renderRolesTooltipContent = function renderRolesTooltipContent(roleName) {\n return Object.is(roleName, \"Admin\") ? t$1(\"neetoTeamMembers.tooltips.adminMustHaveAccess\") : t$1(\"neetoTeamMembers.tooltips.noPermissionToEditRoles\");\n};\nvar removeDuplicates = function removeDuplicates(array) {\n return _toConsumableArray(new Set(array));\n};\nvar updatePermissionVisibility = function updatePermissionVisibility(categoryName, permissions) {\n var category = permissions.get(categoryName);\n var isPermissionVisible = category.get(\"isPermissionVisible\");\n category.set(\"isPermissionVisible\", !isPermissionVisible);\n return new Map(permissions.set(categoryName, category));\n};\nvar filterPermissionsBySearch = function filterPermissionsBySearch(searchTerm, permissionGroups) {\n var newValue = deepClone(permissionGroups);\n newValue.forEach(function (value) {\n var permissions = value.get(\"permissions\");\n var filteredPermissions = permissions.filter(function (permission) {\n var _permission$descripti;\n return permission === null || permission === void 0 || (_permission$descripti = permission.description) === null || _permission$descripti === void 0 || (_permission$descripti = _permission$descripti.toLowerCase()) === null || _permission$descripti === void 0 || (_permission$descripti = _permission$descripti.trim()) === null || _permission$descripti === void 0 ? void 0 : _permission$descripti.includes(searchTerm.toLowerCase().trim());\n });\n value.set(\"permissions\", filteredPermissions);\n });\n return newValue;\n};\nvar getMenuItems = function getMenuItems(_ref) {\n var isDeletePermissionGranted = _ref.isDeletePermissionGranted,\n isUpdatePermissionGranted = _ref.isUpdatePermissionGranted,\n role = _ref.role,\n setManageRole = _ref.setManageRole,\n isSystemRole = _ref.isSystemRole;\n return [{\n key: MENU_ITEMS.EDIT,\n className: \"ntm-dropdown__button\",\n \"data-cy\": \"ntm-roles-table-edit-role-button\",\n isDisabled: not(isUpdatePermissionGranted),\n size: \"small\",\n tooltipProps: {\n content: t$1(\"neetoTeamMembers.tooltips.noPermissionToEditRoles\"),\n disabled: isUpdatePermissionGranted,\n position: \"left\"\n },\n label: t$1(\"neetoTeamMembers.common.edit\"),\n onClick: function onClick() {\n return setManageRole({\n isEdit: true,\n selectedRole: role\n });\n }\n }, {\n key: MENU_ITEMS.DELETE,\n className: \"ntm-dropdown__button\",\n \"data-cy\": \"ntm-roles-table-delete-role-button\",\n isDisabled: not(isDeletePermissionGranted),\n size: \"small\",\n isVisible: not(isSystemRole),\n tooltipProps: {\n content: t$1(\"neetoTeamMembers.tooltips.noPermissionToRemoveRoles\"),\n disabled: isDeletePermissionGranted,\n position: \"left\"\n },\n label: t$1(\"neetoTeamMembers.common.delete\"),\n onClick: function onClick() {\n return setManageRole({\n isDelete: true,\n selectedRole: role\n });\n }\n }];\n};\nvar getRowClientHeight = function getRowClientHeight(permission) {\n var sidebarItems = Array.from(document.querySelectorAll(\".ntm-roles-table-sidebar__list-item:not(.ntm-roles-table-sidebar__list-item--highlighted)\"));\n var sidebarItem = _findBy({\n dataset: {\n name: permission === null || permission === void 0 ? void 0 : permission.description\n }\n }, sidebarItems);\n return sidebarItem === null || sidebarItem === void 0 ? void 0 : sidebarItem.clientHeight;\n};\n\nvar Row = function Row(_ref) {\n var _ref$allPermissionsOf = _ref.allPermissionsOfCategory,\n allPermissionsOfCategory = _ref$allPermissionsOf === void 0 ? null : _ref$allPermissionsOf,\n config = _ref.config,\n _ref$permission = _ref.permission,\n permission = _ref$permission === void 0 ? null : _ref$permission,\n roles = _ref.roles,\n setModifiedRoles = _ref.setModifiedRoles;\n var isUpdatePermissionGranted = config.permissions.update;\n var permissions = (allPermissionsOfCategory === null || allPermissionsOfCategory === void 0 ? void 0 : allPermissionsOfCategory.get(\"permissions\")) || [];\n var allPermissionIdsOfCategory = map(prop(\"id\"), permissions);\n var handleSubmit = function handleSubmit(role, checked) {\n var permissionIds = isNotEmpty(allPermissionIdsOfCategory) ? allPermissionIdsOfCategory : [permission === null || permission === void 0 ? void 0 : permission.id];\n var modifiedRole = modify(\"permissionIds\", function () {\n return checked ? removeDuplicates([].concat(_toConsumableArray(role.permissionIds), _toConsumableArray(permissionIds))) : role.permissionIds.filter(function (id) {\n return !permissionIds.includes(id);\n });\n }, role);\n setModifiedRoles(replaceById(role.id, modifiedRole));\n };\n var isCheckboxChecked = function isCheckboxChecked(role) {\n return !allPermissionsOfCategory ? includes(permission === null || permission === void 0 ? void 0 : permission.id, role.permissionIds) : allPermissionIdsOfCategory.every(includes(__, role.permissionIds));\n };\n return /*#__PURE__*/jsx(\"div\", {\n className: classnames(\"ntm-roles-table__row\", {\n \"ntm-roles-table__row--highlighted\": !!allPermissionsOfCategory\n }),\n children: roles.map(function (role) {\n return /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table__cell\",\n style: {\n height: getRowClientHeight(permission)\n },\n children: /*#__PURE__*/jsx(Tooltip, {\n content: renderRolesTooltipContent(role.name),\n position: \"top\",\n disabled: isUpdatePermissionGranted && !identical(role.name, \"Admin\"),\n children: /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table-cell__checkbox-wrapper\",\n children: /*#__PURE__*/jsx(Checkbox, {\n disabled: true,\n checked: isCheckboxChecked(role),\n className: \"ntm-roles-table-cell__checkbox\",\n \"data-cy\": \"ntm-roles-table-permission-checkbox\",\n onChange: function onChange(_ref2) {\n var checked = _ref2.target.checked;\n return handleSubmit(role, checked);\n }\n })\n })\n })\n }, role.id);\n })\n });\n};\n\nvar TableHeader = function TableHeader(_ref) {\n var config = _ref.config,\n roles = _ref.roles,\n setManageRole = _ref.setManageRole,\n setIsScrollPresent = _ref.setIsScrollPresent;\n var isUpdatePermissionGranted = config.permissions.update;\n var isDeletePermissionGranted = config.permissions[\"delete\"];\n var scrollSyncElement = useRef(null);\n var getOverflowStatus = useCallback(function () {\n if (!scrollSyncElement.current) return;\n var headerElement = scrollSyncElement.current.node;\n var isScrollBarPresent = isOverflown(headerElement);\n setIsScrollPresent(isScrollBarPresent);\n }, [setIsScrollPresent]);\n useEffect(function () {\n addEventListener(\"resize\", getOverflowStatus);\n return function () {\n return removeEventListener(\"resize\", getOverflowStatus);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n useEffect(getOverflowStatus, [getOverflowStatus, scrollSyncElement, roles]);\n return /*#__PURE__*/jsx(distExports.ScrollSyncPane, {\n group: \"horizontal\",\n ref: scrollSyncElement,\n children: /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table__header\",\n \"data-cy\": \"ntm-roles-table-header\",\n children: roles === null || roles === void 0 ? void 0 : roles.map(function (role, index) {\n var isSystemRole = identical(\"system\", role.kind);\n var isAdminRole = ADMIN_ROLES.includes(role.name) && isSystemRole;\n return /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table__cell\",\n children: /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-table-header-cell__container\",\n \"data-cy\": \"ntm-roles-table-role-header\",\n children: [/*#__PURE__*/jsx(Typography, {\n className: \"ntm-roles-table-header__role-name\",\n \"data-cy\": \"ntm-roles-table-header-role-title\",\n lineHeight: \"normal\",\n style: \"h4\",\n weight: \"semibold\",\n children: role.name\n }), !isAdminRole && /*#__PURE__*/jsx(MoreDropdown, {\n dropdownProps: {\n autoWidth: true\n },\n dropdownButtonProps: {\n className: \"ntm-roles-table-header__dropdown\",\n \"data-cy\": \"ntm-roles-table-header-role-dropdown-button\"\n },\n menuItems: getMenuItems({\n isDeletePermissionGranted: isDeletePermissionGranted,\n isUpdatePermissionGranted: isUpdatePermissionGranted,\n role: role,\n setManageRole: setManageRole,\n isSystemRole: isSystemRole\n })\n })]\n })\n }, \"ntm-roles-\".concat(index));\n })\n })\n });\n};\nvar TableHeader$1 = /*#__PURE__*/memo(TableHeader);\n\nvar Delete = function Delete(_ref) {\n var isOpen = _ref.isOpen,\n onClose = _ref.onClose,\n selectedRole = _ref.selectedRole,\n roles = _ref.roles;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useDestroyRole = useDestroyRole({\n onSuccess: onClose\n }),\n deleteRole = _useDestroyRole.mutate,\n isDeleting = _useDestroyRole.isPending;\n var handleDelete = function handleDelete() {\n var _roles$find;\n var id = selectedRole.id;\n var payload = {\n newRoleId: (_roles$find = roles.find(function (role) {\n return role.id !== id;\n })) === null || _roles$find === void 0 ? void 0 : _roles$find.id\n };\n deleteRole({\n id: id,\n payload: payload\n });\n };\n return /*#__PURE__*/jsx(Alert, {\n isOpen: isOpen,\n onClose: onClose,\n cancelButtonLabel: t(\"neetoTeamMembers.buttons.cancel\"),\n isSubmitting: isDeleting,\n submitButtonLabel: t(\"neetoTeamMembers.buttons.delete\"),\n title: t(\"neetoTeamMembers.labels.deleteRole\"),\n message: /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.alerts.messages.deletingRole\",\n values: {\n name: selectedRole === null || selectedRole === void 0 ? void 0 : selectedRole.name\n }\n }),\n onSubmit: handleDelete\n });\n};\n\nvar Columns = function Columns(_ref) {\n var config = _ref.config,\n filteredGroupPermissions = _ref.filteredGroupPermissions,\n filteredRoles = _ref.filteredRoles,\n permissions = _ref.permissions,\n roles = _ref.roles,\n setModifiedRoles = _ref.setModifiedRoles,\n setIsScrollPresent = _ref.setIsScrollPresent;\n var _useState = useState(DEFAULT_MANAGE_ROLE_VALUES),\n _useState2 = _slicedToArray(_useState, 2),\n manageRole = _useState2[0],\n setManageRole = _useState2[1];\n var categories = Array.from(filteredGroupPermissions === null || filteredGroupPermissions === void 0 ? void 0 : filteredGroupPermissions.keys());\n var onClose = function onClose() {\n return setManageRole(DEFAULT_MANAGE_ROLE_VALUES);\n };\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-table__columns\",\n children: [/*#__PURE__*/jsx(TableHeader$1, {\n config: config,\n roles: filteredRoles,\n setIsScrollPresent: setIsScrollPresent,\n setManageRole: setManageRole\n }), /*#__PURE__*/jsx(distExports.ScrollSyncPane, {\n group: [\"horizontal\", \"vertical\"],\n children: /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table__rows\",\n children: categories.map(function (category, index) {\n var groupedPermissions = filteredGroupPermissions.get(category);\n var isPermissionVisible = groupedPermissions.get(\"isPermissionVisible\");\n var permissions = groupedPermissions.get(\"permissions\");\n return /*#__PURE__*/jsxs(\"div\", {\n children: [/*#__PURE__*/jsx(Row, {\n allPermissionsOfCategory: groupedPermissions,\n config: config,\n roles: filteredRoles,\n setModifiedRoles: setModifiedRoles\n }), isPermissionVisible && permissions.map(function (permission) {\n return /*#__PURE__*/jsx(Row, {\n config: config,\n permission: permission,\n roles: filteredRoles,\n setModifiedRoles: setModifiedRoles\n }, permission.id);\n })]\n }, index);\n })\n })\n }), /*#__PURE__*/jsx(ManageRoles, {\n config: config,\n isOpen: manageRole.isEdit,\n permissions: permissions,\n selectedRole: manageRole.selectedRole,\n onClose: onClose\n }), /*#__PURE__*/jsx(Delete, {\n isOpen: manageRole.isDelete,\n roles: roles,\n selectedRole: manageRole.selectedRole,\n onClose: onClose\n })]\n });\n};\n\nvar ToggleDropdown = function ToggleDropdown(_ref) {\n var isVisible = _ref.isVisible;\n return isVisible ? /*#__PURE__*/jsx(Up, {\n className: \"ntm-roles-table-sidebar__drop-down-button\",\n \"data-cy\": \"ntm-permission-category-hide-button\",\n size: 16,\n strokeWidth: 2\n }) : /*#__PURE__*/jsx(Down, {\n className: \"ntm-roles-table-sidebar__drop-down-button\",\n \"data-cy\": \"ntm-permission-category-show-button\",\n size: 16,\n strokeWidth: 2\n });\n};\n\nvar renderDescription = function renderDescription(permissions, filteredPermissions) {\n return permissions === null || permissions === void 0 ? void 0 : permissions.map(function (_ref) {\n var id = _ref.id,\n description = _ref.description,\n children = _ref.children;\n return /*#__PURE__*/jsxs(Fragment$1, {\n children: [filteredPermissions.includes(id) && /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table-sidebar__list-item\",\n \"data-name\": description,\n children: /*#__PURE__*/jsx(Typography, {\n \"data-cy\": \"ntm-permission-category-description\",\n lineHeight: \"normal\",\n style: \"body2\",\n children: description\n })\n }, id), /*#__PURE__*/jsx(\"div\", {\n className: \"neeto-ui-relative neeto-ui-pl-6 ntm-roles-table-sidebar__sub-blocks\",\n children: renderDescription(children, filteredPermissions)\n })]\n }, id);\n });\n};\nvar getSearchWrapperStyle = function getSearchWrapperStyle() {\n var scrollBarWidth = getScrollBarWidth();\n document.documentElement.style.setProperty(\"--ntm-roles-table-default-scroll\", \"\".concat(scrollBarWidth, \"px\"));\n return {\n marginBottom: \"\".concat(scrollBarWidth, \"px\")\n };\n};\n\nvar Sidebar = function Sidebar(_ref) {\n var searchTerm = _ref.searchTerm,\n setSearchTerm = _ref.setSearchTerm,\n filteredGroupPermissions = _ref.filteredGroupPermissions,\n toggleDropdown = _ref.toggleDropdown,\n isScrollPresent = _ref.isScrollPresent,\n _ref$permissions = _ref.permissions,\n permissions = _ref$permissions === void 0 ? [] : _ref$permissions,\n _ref$permissionRelati = _ref.permissionRelationConfig,\n permissionRelationConfig = _ref$permissionRelati === void 0 ? {} : _ref$permissionRelati;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var categories = Array.from(filteredGroupPermissions.keys());\n var searchWrapperStyle = isScrollPresent ? getSearchWrapperStyle() : {};\n var permissionsNameMap = groupBy(prop(\"name\"))(permissions);\n var groupedPermissionsWithChildren = useMemo(function () {\n var childrenRemovedFromRoot = getChildrenRemovedFromRoot({\n permissions: permissions,\n permissionsNameMap: permissionsNameMap,\n permissionRelationConfig: permissionRelationConfig\n });\n return groupBy(prop(\"category\"))(childrenRemovedFromRoot);\n }, [permissions]);\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-table__sidebar\",\n children: [/*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table-sidebar__search\",\n style: searchWrapperStyle,\n children: /*#__PURE__*/jsx(Input$1, {\n \"data-cy\": \"ntm-search-permissions-input\",\n prefix: /*#__PURE__*/jsx(Search, {}),\n type: \"search\",\n value: searchTerm,\n placeholder: t(\"neetoTeamMembers.placeholders.searchPermission\", PLURAL),\n onChange: function onChange(_ref2) {\n var value = _ref2.target.value;\n return setSearchTerm(value);\n }\n })\n }), /*#__PURE__*/jsx(distExports.ScrollSyncPane, {\n group: \"vertical\",\n children: /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table-sidebar__list\",\n children: categories.map(function (category, index) {\n var groupedPermissions = filteredGroupPermissions.get(category);\n var isPermissionVisible = groupedPermissions.get(\"isPermissionVisible\");\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-table-sidebar__list-item-cell\",\n children: [/*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-table-sidebar__list-item ntm-roles-table-sidebar__list-item--highlighted cursor-pointer\",\n onClick: function onClick() {\n return toggleDropdown(category);\n },\n children: [/*#__PURE__*/jsx(Typography, {\n \"data-cy\": \"ntm-permission-category-title\",\n lineHeight: \"normal\",\n style: \"h4\",\n weight: \"semibold\",\n children: category\n }), /*#__PURE__*/jsx(ToggleDropdown, {\n isVisible: isPermissionVisible\n })]\n }), isPermissionVisible && /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table-sidebar__list-item-spacing-handler ml-[12px] px-[24px]\",\n children: renderDescription(groupedPermissionsWithChildren[category], pluck(\"id\", filteredGroupPermissions.get(category).get(\"permissions\") || []))\n })]\n }, index);\n })\n })\n })]\n });\n};\n\nvar Table = function Table(_ref) {\n var _config$permissionRel;\n var config = _ref.config,\n filteredRoles = _ref.filteredRoles,\n roles = _ref.roles,\n permissionGroups = _ref.permissionGroups,\n permissions = _ref.permissions,\n setModifiedRoles = _ref.setModifiedRoles,\n setIsNewRolePaneOpen = _ref.setIsNewRolePaneOpen;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var isCreatePermissionGranted = config.permissions.create;\n var _useState = useState(\"\"),\n _useState2 = _slicedToArray(_useState, 2),\n searchTerm = _useState2[0],\n setSearchTerm = _useState2[1];\n var _useState3 = useState(permissionGroups),\n _useState4 = _slicedToArray(_useState3, 2),\n filteredGroupPermissions = _useState4[0],\n setFilteredGroupPermissions = _useState4[1];\n var _useState5 = useState(false),\n _useState6 = _slicedToArray(_useState5, 2),\n isScrollPresent = _useState6[0],\n setIsScrollPresent = _useState6[1];\n var _useState7 = useState(undefined),\n _useState8 = _slicedToArray(_useState7, 2),\n selectedRole = _useState8[0],\n setSelectedRole = _useState8[1];\n var _useState9 = useState(false),\n _useState10 = _slicedToArray(_useState9, 2),\n isDeleteAlertOpen = _useState10[0],\n setIsDeleteAlertOpen = _useState10[1];\n var _useState11 = useState(false),\n _useState12 = _slicedToArray(_useState11, 2),\n isEditPaneOpen = _useState12[0],\n setIsEditPaneOpen = _useState12[1];\n var toggleDropdown = function toggleDropdown(category) {\n var permissions = updatePermissionVisibility(category, filteredGroupPermissions);\n setFilteredGroupPermissions(permissions);\n };\n useEffect(function () {\n var newValue = filterPermissionsBySearch(searchTerm, permissionGroups);\n setFilteredGroupPermissions(newValue);\n }, [permissionGroups, searchTerm]);\n return /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table__wrapper\",\n children: /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table__container\",\n children: isEmpty(filteredRoles) ? /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-empty-state\",\n children: /*#__PURE__*/jsx(NoData, {\n title: t(\"neetoTeamMembers.labels.roleNotFound\", PLURAL),\n primaryButtonProps: {\n \"data-cy\": \"ntm-add-role-button\",\n disabled: !isCreatePermissionGranted,\n label: t(\"neetoTeamMembers.labels.addNewRole\"),\n onClick: function onClick() {\n return setIsNewRolePaneOpen(true);\n }\n }\n })\n }) : /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(Sidebar, {\n filteredGroupPermissions: filteredGroupPermissions,\n isScrollPresent: isScrollPresent,\n permissions: permissions,\n searchTerm: searchTerm,\n setSearchTerm: setSearchTerm,\n toggleDropdown: toggleDropdown,\n permissionRelationConfig: (_config$permissionRel = config === null || config === void 0 ? void 0 : config.permissionRelation) !== null && _config$permissionRel !== void 0 ? _config$permissionRel : {}\n }), /*#__PURE__*/jsx(Columns, {\n config: config,\n filteredGroupPermissions: filteredGroupPermissions,\n filteredRoles: filteredRoles,\n permissions: permissions,\n roles: roles,\n setIsScrollPresent: setIsScrollPresent,\n setModifiedRoles: setModifiedRoles\n })]\n })\n })\n }), /*#__PURE__*/jsx(ManageRoles, {\n config: config,\n permissions: permissions,\n selectedRole: selectedRole,\n isOpen: isEditPaneOpen,\n onClose: function onClose() {\n setSelectedRole(undefined);\n setIsEditPaneOpen(false);\n }\n }), /*#__PURE__*/jsx(Delete, {\n roles: roles,\n selectedRole: selectedRole,\n isOpen: isDeleteAlertOpen,\n onClose: function onClose() {\n setSelectedRole(undefined);\n setIsDeleteAlertOpen(false);\n }\n })]\n });\n};\n\nvar Roles = function Roles(_ref) {\n var config = _ref.config;\n var isViewPermissionGranted = config.permissions.view;\n var isUpdatePermissionGranted = config.permissions.update;\n var _useState = useState([]),\n _useState2 = _slicedToArray(_useState, 2),\n modifiedRoles = _useState2[0],\n setModifiedRoles = _useState2[1];\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n isNewRolePaneOpen = _useState4[0],\n setIsNewRolePaneOpen = _useState4[1];\n var _useFetchRoles = useFetchRoles({\n enabled: isViewPermissionGranted\n }),\n _useFetchRoles$data = _useFetchRoles.data,\n roles = _useFetchRoles$data === void 0 ? [] : _useFetchRoles$data,\n isRolesLoading = _useFetchRoles.isLoading,\n status = _useFetchRoles.status;\n var _useQueryParams = useQueryParams(),\n _useQueryParams$searc = _useQueryParams.searchTerm,\n searchTerm = _useQueryParams$searc === void 0 ? \"\" : _useQueryParams$searc;\n var _useFetchPermissions = useFetchPermissions({\n enabled: isViewPermissionGranted\n }),\n permissionData = _useFetchPermissions.data,\n isPermissionsLoading = _useFetchPermissions.isLoading;\n var _useBulkUpdateRoles = useBulkUpdateRoles({\n enabled: isUpdatePermissionGranted\n }),\n bulkUpdate = _useBulkUpdateRoles.mutate;\n var permissions = sortPermissionsBySequence(permissionData);\n var permissionGroups = getPermissionGroups(permissions);\n var filteredRoles = filter(function (_ref2) {\n var name = _ref2.name;\n return includes(searchTerm.toLowerCase().trim(), name.toLowerCase().trim());\n }, isNotEmpty(modifiedRoles) ? modifiedRoles : roles);\n var handleSubmit = function handleSubmit() {\n var updatedRoles = getModifiedPermissions(roles, modifiedRoles);\n bulkUpdate({\n organizationRoles: {\n updatedRoles: updatedRoles\n }\n });\n };\n var handleReset = function handleReset() {\n return setModifiedRoles(roles);\n };\n useEffect(function () {\n if (status !== \"success\") return;\n setModifiedRoles(roles);\n }, [roles, status]);\n if (isRolesLoading || isPermissionsLoading) {\n return /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-members-page-loader\",\n children: /*#__PURE__*/jsx(PageLoader, {})\n });\n }\n return /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(distExports.ScrollSync, {\n children: /*#__PURE__*/jsxs(Container, {\n isHeaderFixed: true,\n children: [/*#__PURE__*/jsx(Header$3, {\n config: config,\n handleReset: handleReset,\n handleSubmit: handleSubmit,\n roles: roles,\n setIsNewRolePaneOpen: setIsNewRolePaneOpen\n }), /*#__PURE__*/jsx(Table, {\n config: config,\n filteredRoles: filteredRoles,\n permissionGroups: permissionGroups,\n permissions: permissions,\n roles: roles,\n setIsNewRolePaneOpen: setIsNewRolePaneOpen,\n setModifiedRoles: setModifiedRoles\n })]\n })\n }), /*#__PURE__*/jsx(ManageRoles, {\n config: config,\n permissions: permissions,\n isOpen: isNewRolePaneOpen,\n onClose: function onClose() {\n return setIsNewRolePaneOpen(false);\n }\n })]\n });\n};\nvar index$1 = withTitle(withReactQuery(Roles), i18next.t(\"neetoTeamMembers.common.role\", PLURAL));\n\n/* eslint complexity: [2, 18], max-statements: [2, 33] */\nvar shams = function hasSymbols() {\n\tif (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }\n\tif (typeof Symbol.iterator === 'symbol') { return true; }\n\n\tvar obj = {};\n\tvar sym = Symbol('test');\n\tvar symObj = Object(sym);\n\tif (typeof sym === 'string') { return false; }\n\n\tif (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }\n\tif (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }\n\n\t// temp disabled per https://github.com/ljharb/object.assign/issues/17\n\t// if (sym instanceof Symbol) { return false; }\n\t// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4\n\t// if (!(symObj instanceof Symbol)) { return false; }\n\n\t// if (typeof Symbol.prototype.toString !== 'function') { return false; }\n\t// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }\n\n\tvar symVal = 42;\n\tobj[sym] = symVal;\n\tfor (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop\n\tif (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }\n\n\tif (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }\n\n\tvar syms = Object.getOwnPropertySymbols(obj);\n\tif (syms.length !== 1 || syms[0] !== sym) { return false; }\n\n\tif (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }\n\n\tif (typeof Object.getOwnPropertyDescriptor === 'function') {\n\t\tvar descriptor = Object.getOwnPropertyDescriptor(obj, sym);\n\t\tif (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }\n\t}\n\n\treturn true;\n};\n\nvar origSymbol = typeof Symbol !== 'undefined' && Symbol;\nvar hasSymbolSham = shams;\n\nvar hasSymbols$1 = function hasNativeSymbols() {\n\tif (typeof origSymbol !== 'function') { return false; }\n\tif (typeof Symbol !== 'function') { return false; }\n\tif (typeof origSymbol('foo') !== 'symbol') { return false; }\n\tif (typeof Symbol('bar') !== 'symbol') { return false; }\n\n\treturn hasSymbolSham();\n};\n\nvar test = {\n\tfoo: {}\n};\n\nvar $Object = Object;\n\nvar hasProto$1 = function hasProto() {\n\treturn { __proto__: test }.foo === test.foo && !({ __proto__: null } instanceof $Object);\n};\n\n/* eslint no-invalid-this: 1 */\n\nvar ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';\nvar slice = Array.prototype.slice;\nvar toStr$1 = Object.prototype.toString;\nvar funcType = '[object Function]';\n\nvar implementation$1 = function bind(that) {\n var target = this;\n if (typeof target !== 'function' || toStr$1.call(target) !== funcType) {\n throw new TypeError(ERROR_MESSAGE + target);\n }\n var args = slice.call(arguments, 1);\n\n var bound;\n var binder = function () {\n if (this instanceof bound) {\n var result = target.apply(\n this,\n args.concat(slice.call(arguments))\n );\n if (Object(result) === result) {\n return result;\n }\n return this;\n } else {\n return target.apply(\n that,\n args.concat(slice.call(arguments))\n );\n }\n };\n\n var boundLength = Math.max(0, target.length - args.length);\n var boundArgs = [];\n for (var i = 0; i < boundLength; i++) {\n boundArgs.push('$' + i);\n }\n\n bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder);\n\n if (target.prototype) {\n var Empty = function Empty() {};\n Empty.prototype = target.prototype;\n bound.prototype = new Empty();\n Empty.prototype = null;\n }\n\n return bound;\n};\n\nvar implementation = implementation$1;\n\nvar functionBind = Function.prototype.bind || implementation;\n\nvar bind$1 = functionBind;\n\nvar src = bind$1.call(Function.call, Object.prototype.hasOwnProperty);\n\nvar undefined$1;\n\nvar $SyntaxError = SyntaxError;\nvar $Function = Function;\nvar $TypeError$1 = TypeError;\n\n// eslint-disable-next-line consistent-return\nvar getEvalledConstructor = function (expressionSyntax) {\n\ttry {\n\t\treturn $Function('\"use strict\"; return (' + expressionSyntax + ').constructor;')();\n\t} catch (e) {}\n};\n\nvar $gOPD = Object.getOwnPropertyDescriptor;\nif ($gOPD) {\n\ttry {\n\t\t$gOPD({}, '');\n\t} catch (e) {\n\t\t$gOPD = null; // this is IE 8, which has a broken gOPD\n\t}\n}\n\nvar throwTypeError = function () {\n\tthrow new $TypeError$1();\n};\nvar ThrowTypeError = $gOPD\n\t? (function () {\n\t\ttry {\n\t\t\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\n\t\t\targuments.callee; // IE 8 does not throw here\n\t\t\treturn throwTypeError;\n\t\t} catch (calleeThrows) {\n\t\t\ttry {\n\t\t\t\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\n\t\t\t\treturn $gOPD(arguments, 'callee').get;\n\t\t\t} catch (gOPDthrows) {\n\t\t\t\treturn throwTypeError;\n\t\t\t}\n\t\t}\n\t}())\n\t: throwTypeError;\n\nvar hasSymbols = hasSymbols$1();\nvar hasProto = hasProto$1();\n\nvar getProto = Object.getPrototypeOf || (\n\thasProto\n\t\t? function (x) { return x.__proto__; } // eslint-disable-line no-proto\n\t\t: null\n);\n\nvar needsEval = {};\n\nvar TypedArray = typeof Uint8Array === 'undefined' || !getProto ? undefined$1 : getProto(Uint8Array);\n\nvar INTRINSICS = {\n\t'%AggregateError%': typeof AggregateError === 'undefined' ? undefined$1 : AggregateError,\n\t'%Array%': Array,\n\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined$1 : ArrayBuffer,\n\t'%ArrayIteratorPrototype%': hasSymbols && getProto ? getProto([][Symbol.iterator]()) : undefined$1,\n\t'%AsyncFromSyncIteratorPrototype%': undefined$1,\n\t'%AsyncFunction%': needsEval,\n\t'%AsyncGenerator%': needsEval,\n\t'%AsyncGeneratorFunction%': needsEval,\n\t'%AsyncIteratorPrototype%': needsEval,\n\t'%Atomics%': typeof Atomics === 'undefined' ? undefined$1 : Atomics,\n\t'%BigInt%': typeof BigInt === 'undefined' ? undefined$1 : BigInt,\n\t'%BigInt64Array%': typeof BigInt64Array === 'undefined' ? undefined$1 : BigInt64Array,\n\t'%BigUint64Array%': typeof BigUint64Array === 'undefined' ? undefined$1 : BigUint64Array,\n\t'%Boolean%': Boolean,\n\t'%DataView%': typeof DataView === 'undefined' ? undefined$1 : DataView,\n\t'%Date%': Date,\n\t'%decodeURI%': decodeURI,\n\t'%decodeURIComponent%': decodeURIComponent,\n\t'%encodeURI%': encodeURI,\n\t'%encodeURIComponent%': encodeURIComponent,\n\t'%Error%': Error,\n\t'%eval%': eval, // eslint-disable-line no-eval\n\t'%EvalError%': EvalError,\n\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined$1 : Float32Array,\n\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined$1 : Float64Array,\n\t'%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined$1 : FinalizationRegistry,\n\t'%Function%': $Function,\n\t'%GeneratorFunction%': needsEval,\n\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined$1 : Int8Array,\n\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined$1 : Int16Array,\n\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined$1 : Int32Array,\n\t'%isFinite%': isFinite,\n\t'%isNaN%': isNaN,\n\t'%IteratorPrototype%': hasSymbols && getProto ? getProto(getProto([][Symbol.iterator]())) : undefined$1,\n\t'%JSON%': typeof JSON === 'object' ? JSON : undefined$1,\n\t'%Map%': typeof Map === 'undefined' ? undefined$1 : Map,\n\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols || !getProto ? undefined$1 : getProto(new Map()[Symbol.iterator]()),\n\t'%Math%': Math,\n\t'%Number%': Number,\n\t'%Object%': Object,\n\t'%parseFloat%': parseFloat,\n\t'%parseInt%': parseInt,\n\t'%Promise%': typeof Promise === 'undefined' ? undefined$1 : Promise,\n\t'%Proxy%': typeof Proxy === 'undefined' ? undefined$1 : Proxy,\n\t'%RangeError%': RangeError,\n\t'%ReferenceError%': ReferenceError,\n\t'%Reflect%': typeof Reflect === 'undefined' ? undefined$1 : Reflect,\n\t'%RegExp%': RegExp,\n\t'%Set%': typeof Set === 'undefined' ? undefined$1 : Set,\n\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols || !getProto ? undefined$1 : getProto(new Set()[Symbol.iterator]()),\n\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined$1 : SharedArrayBuffer,\n\t'%String%': String,\n\t'%StringIteratorPrototype%': hasSymbols && getProto ? getProto(''[Symbol.iterator]()) : undefined$1,\n\t'%Symbol%': hasSymbols ? Symbol : undefined$1,\n\t'%SyntaxError%': $SyntaxError,\n\t'%ThrowTypeError%': ThrowTypeError,\n\t'%TypedArray%': TypedArray,\n\t'%TypeError%': $TypeError$1,\n\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined$1 : Uint8Array,\n\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined$1 : Uint8ClampedArray,\n\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined$1 : Uint16Array,\n\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined$1 : Uint32Array,\n\t'%URIError%': URIError,\n\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined$1 : WeakMap,\n\t'%WeakRef%': typeof WeakRef === 'undefined' ? undefined$1 : WeakRef,\n\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined$1 : WeakSet\n};\n\nif (getProto) {\n\ttry {\n\t\tnull.error; // eslint-disable-line no-unused-expressions\n\t} catch (e) {\n\t\t// https://github.com/tc39/proposal-shadowrealm/pull/384#issuecomment-1364264229\n\t\tvar errorProto = getProto(getProto(e));\n\t\tINTRINSICS['%Error.prototype%'] = errorProto;\n\t}\n}\n\nvar doEval = function doEval(name) {\n\tvar value;\n\tif (name === '%AsyncFunction%') {\n\t\tvalue = getEvalledConstructor('async function () {}');\n\t} else if (name === '%GeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('function* () {}');\n\t} else if (name === '%AsyncGeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('async function* () {}');\n\t} else if (name === '%AsyncGenerator%') {\n\t\tvar fn = doEval('%AsyncGeneratorFunction%');\n\t\tif (fn) {\n\t\t\tvalue = fn.prototype;\n\t\t}\n\t} else if (name === '%AsyncIteratorPrototype%') {\n\t\tvar gen = doEval('%AsyncGenerator%');\n\t\tif (gen && getProto) {\n\t\t\tvalue = getProto(gen.prototype);\n\t\t}\n\t}\n\n\tINTRINSICS[name] = value;\n\n\treturn value;\n};\n\nvar LEGACY_ALIASES = {\n\t'%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],\n\t'%ArrayPrototype%': ['Array', 'prototype'],\n\t'%ArrayProto_entries%': ['Array', 'prototype', 'entries'],\n\t'%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'],\n\t'%ArrayProto_keys%': ['Array', 'prototype', 'keys'],\n\t'%ArrayProto_values%': ['Array', 'prototype', 'values'],\n\t'%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'],\n\t'%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'],\n\t'%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'],\n\t'%BooleanPrototype%': ['Boolean', 'prototype'],\n\t'%DataViewPrototype%': ['DataView', 'prototype'],\n\t'%DatePrototype%': ['Date', 'prototype'],\n\t'%ErrorPrototype%': ['Error', 'prototype'],\n\t'%EvalErrorPrototype%': ['EvalError', 'prototype'],\n\t'%Float32ArrayPrototype%': ['Float32Array', 'prototype'],\n\t'%Float64ArrayPrototype%': ['Float64Array', 'prototype'],\n\t'%FunctionPrototype%': ['Function', 'prototype'],\n\t'%Generator%': ['GeneratorFunction', 'prototype'],\n\t'%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'],\n\t'%Int8ArrayPrototype%': ['Int8Array', 'prototype'],\n\t'%Int16ArrayPrototype%': ['Int16Array', 'prototype'],\n\t'%Int32ArrayPrototype%': ['Int32Array', 'prototype'],\n\t'%JSONParse%': ['JSON', 'parse'],\n\t'%JSONStringify%': ['JSON', 'stringify'],\n\t'%MapPrototype%': ['Map', 'prototype'],\n\t'%NumberPrototype%': ['Number', 'prototype'],\n\t'%ObjectPrototype%': ['Object', 'prototype'],\n\t'%ObjProto_toString%': ['Object', 'prototype', 'toString'],\n\t'%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'],\n\t'%PromisePrototype%': ['Promise', 'prototype'],\n\t'%PromiseProto_then%': ['Promise', 'prototype', 'then'],\n\t'%Promise_all%': ['Promise', 'all'],\n\t'%Promise_reject%': ['Promise', 'reject'],\n\t'%Promise_resolve%': ['Promise', 'resolve'],\n\t'%RangeErrorPrototype%': ['RangeError', 'prototype'],\n\t'%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'],\n\t'%RegExpPrototype%': ['RegExp', 'prototype'],\n\t'%SetPrototype%': ['Set', 'prototype'],\n\t'%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'],\n\t'%StringPrototype%': ['String', 'prototype'],\n\t'%SymbolPrototype%': ['Symbol', 'prototype'],\n\t'%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'],\n\t'%TypedArrayPrototype%': ['TypedArray', 'prototype'],\n\t'%TypeErrorPrototype%': ['TypeError', 'prototype'],\n\t'%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'],\n\t'%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'],\n\t'%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'],\n\t'%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'],\n\t'%URIErrorPrototype%': ['URIError', 'prototype'],\n\t'%WeakMapPrototype%': ['WeakMap', 'prototype'],\n\t'%WeakSetPrototype%': ['WeakSet', 'prototype']\n};\n\nvar bind = functionBind;\nvar hasOwn$1 = src;\nvar $concat$1 = bind.call(Function.call, Array.prototype.concat);\nvar $spliceApply = bind.call(Function.apply, Array.prototype.splice);\nvar $replace$1 = bind.call(Function.call, String.prototype.replace);\nvar $strSlice = bind.call(Function.call, String.prototype.slice);\nvar $exec = bind.call(Function.call, RegExp.prototype.exec);\n\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\nvar rePropName = /[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g;\nvar reEscapeChar = /\\\\(\\\\)?/g; /** Used to match backslashes in property paths. */\nvar stringToPath = function stringToPath(string) {\n\tvar first = $strSlice(string, 0, 1);\n\tvar last = $strSlice(string, -1);\n\tif (first === '%' && last !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected closing `%`');\n\t} else if (last === '%' && first !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected opening `%`');\n\t}\n\tvar result = [];\n\t$replace$1(string, rePropName, function (match, number, quote, subString) {\n\t\tresult[result.length] = quote ? $replace$1(subString, reEscapeChar, '$1') : number || match;\n\t});\n\treturn result;\n};\n/* end adaptation */\n\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\n\tvar intrinsicName = name;\n\tvar alias;\n\tif (hasOwn$1(LEGACY_ALIASES, intrinsicName)) {\n\t\talias = LEGACY_ALIASES[intrinsicName];\n\t\tintrinsicName = '%' + alias[0] + '%';\n\t}\n\n\tif (hasOwn$1(INTRINSICS, intrinsicName)) {\n\t\tvar value = INTRINSICS[intrinsicName];\n\t\tif (value === needsEval) {\n\t\t\tvalue = doEval(intrinsicName);\n\t\t}\n\t\tif (typeof value === 'undefined' && !allowMissing) {\n\t\t\tthrow new $TypeError$1('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\n\t\t}\n\n\t\treturn {\n\t\t\talias: alias,\n\t\t\tname: intrinsicName,\n\t\t\tvalue: value\n\t\t};\n\t}\n\n\tthrow new $SyntaxError('intrinsic ' + name + ' does not exist!');\n};\n\nvar getIntrinsic = function GetIntrinsic(name, allowMissing) {\n\tif (typeof name !== 'string' || name.length === 0) {\n\t\tthrow new $TypeError$1('intrinsic name must be a non-empty string');\n\t}\n\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\n\t\tthrow new $TypeError$1('\"allowMissing\" argument must be a boolean');\n\t}\n\n\tif ($exec(/^%?[^%]*%?$/, name) === null) {\n\t\tthrow new $SyntaxError('`%` may not be present anywhere but at the beginning and end of the intrinsic name');\n\t}\n\tvar parts = stringToPath(name);\n\tvar intrinsicBaseName = parts.length > 0 ? parts[0] : '';\n\n\tvar intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);\n\tvar intrinsicRealName = intrinsic.name;\n\tvar value = intrinsic.value;\n\tvar skipFurtherCaching = false;\n\n\tvar alias = intrinsic.alias;\n\tif (alias) {\n\t\tintrinsicBaseName = alias[0];\n\t\t$spliceApply(parts, $concat$1([0, 1], alias));\n\t}\n\n\tfor (var i = 1, isOwn = true; i < parts.length; i += 1) {\n\t\tvar part = parts[i];\n\t\tvar first = $strSlice(part, 0, 1);\n\t\tvar last = $strSlice(part, -1);\n\t\tif (\n\t\t\t(\n\t\t\t\t(first === '\"' || first === \"'\" || first === '`')\n\t\t\t\t|| (last === '\"' || last === \"'\" || last === '`')\n\t\t\t)\n\t\t\t&& first !== last\n\t\t) {\n\t\t\tthrow new $SyntaxError('property names with quotes must have matching quotes');\n\t\t}\n\t\tif (part === 'constructor' || !isOwn) {\n\t\t\tskipFurtherCaching = true;\n\t\t}\n\n\t\tintrinsicBaseName += '.' + part;\n\t\tintrinsicRealName = '%' + intrinsicBaseName + '%';\n\n\t\tif (hasOwn$1(INTRINSICS, intrinsicRealName)) {\n\t\t\tvalue = INTRINSICS[intrinsicRealName];\n\t\t} else if (value != null) {\n\t\t\tif (!(part in value)) {\n\t\t\t\tif (!allowMissing) {\n\t\t\t\t\tthrow new $TypeError$1('base intrinsic for ' + name + ' exists, but the property is not available.');\n\t\t\t\t}\n\t\t\t\treturn void undefined$1;\n\t\t\t}\n\t\t\tif ($gOPD && (i + 1) >= parts.length) {\n\t\t\t\tvar desc = $gOPD(value, part);\n\t\t\t\tisOwn = !!desc;\n\n\t\t\t\t// By convention, when a data property is converted to an accessor\n\t\t\t\t// property to emulate a data property that does not suffer from\n\t\t\t\t// the override mistake, that accessor's getter is marked with\n\t\t\t\t// an `originalValue` property. Here, when we detect this, we\n\t\t\t\t// uphold the illusion by pretending to see that original data\n\t\t\t\t// property, i.e., returning the value rather than the getter\n\t\t\t\t// itself.\n\t\t\t\tif (isOwn && 'get' in desc && !('originalValue' in desc.get)) {\n\t\t\t\t\tvalue = desc.get;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = value[part];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tisOwn = hasOwn$1(value, part);\n\t\t\t\tvalue = value[part];\n\t\t\t}\n\n\t\t\tif (isOwn && !skipFurtherCaching) {\n\t\t\t\tINTRINSICS[intrinsicRealName] = value;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n\nvar callBind$1 = {exports: {}};\n\ncallBind$1.exports;\n\n(function (module) {\n\n\tvar bind = functionBind;\n\tvar GetIntrinsic = getIntrinsic;\n\n\tvar $apply = GetIntrinsic('%Function.prototype.apply%');\n\tvar $call = GetIntrinsic('%Function.prototype.call%');\n\tvar $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);\n\n\tvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);\n\tvar $defineProperty = GetIntrinsic('%Object.defineProperty%', true);\n\tvar $max = GetIntrinsic('%Math.max%');\n\n\tif ($defineProperty) {\n\t\ttry {\n\t\t\t$defineProperty({}, 'a', { value: 1 });\n\t\t} catch (e) {\n\t\t\t// IE 8 has a broken defineProperty\n\t\t\t$defineProperty = null;\n\t\t}\n\t}\n\n\tmodule.exports = function callBind(originalFunction) {\n\t\tvar func = $reflectApply(bind, $call, arguments);\n\t\tif ($gOPD && $defineProperty) {\n\t\t\tvar desc = $gOPD(func, 'length');\n\t\t\tif (desc.configurable) {\n\t\t\t\t// original length, plus the receiver, minus any additional arguments (after the receiver)\n\t\t\t\t$defineProperty(\n\t\t\t\t\tfunc,\n\t\t\t\t\t'length',\n\t\t\t\t\t{ value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) }\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\treturn func;\n\t};\n\n\tvar applyBind = function applyBind() {\n\t\treturn $reflectApply(bind, $apply, arguments);\n\t};\n\n\tif ($defineProperty) {\n\t\t$defineProperty(module.exports, 'apply', { value: applyBind });\n\t} else {\n\t\tmodule.exports.apply = applyBind;\n\t} \n} (callBind$1));\n\nvar callBindExports = callBind$1.exports;\n\nvar GetIntrinsic$1 = getIntrinsic;\n\nvar callBind = callBindExports;\n\nvar $indexOf = callBind(GetIntrinsic$1('String.prototype.indexOf'));\n\nvar callBound$1 = function callBoundIntrinsic(name, allowMissing) {\n\tvar intrinsic = GetIntrinsic$1(name, !!allowMissing);\n\tif (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) {\n\t\treturn callBind(intrinsic);\n\t}\n\treturn intrinsic;\n};\n\nvar util_inspect = require$$0$1.inspect;\n\nvar hasMap = typeof Map === 'function' && Map.prototype;\nvar mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, 'size') : null;\nvar mapSize = hasMap && mapSizeDescriptor && typeof mapSizeDescriptor.get === 'function' ? mapSizeDescriptor.get : null;\nvar mapForEach = hasMap && Map.prototype.forEach;\nvar hasSet = typeof Set === 'function' && Set.prototype;\nvar setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, 'size') : null;\nvar setSize = hasSet && setSizeDescriptor && typeof setSizeDescriptor.get === 'function' ? setSizeDescriptor.get : null;\nvar setForEach = hasSet && Set.prototype.forEach;\nvar hasWeakMap = typeof WeakMap === 'function' && WeakMap.prototype;\nvar weakMapHas = hasWeakMap ? WeakMap.prototype.has : null;\nvar hasWeakSet = typeof WeakSet === 'function' && WeakSet.prototype;\nvar weakSetHas = hasWeakSet ? WeakSet.prototype.has : null;\nvar hasWeakRef = typeof WeakRef === 'function' && WeakRef.prototype;\nvar weakRefDeref = hasWeakRef ? WeakRef.prototype.deref : null;\nvar booleanValueOf = Boolean.prototype.valueOf;\nvar objectToString = Object.prototype.toString;\nvar functionToString = Function.prototype.toString;\nvar $match = String.prototype.match;\nvar $slice = String.prototype.slice;\nvar $replace = String.prototype.replace;\nvar $toUpperCase = String.prototype.toUpperCase;\nvar $toLowerCase = String.prototype.toLowerCase;\nvar $test = RegExp.prototype.test;\nvar $concat = Array.prototype.concat;\nvar $join = Array.prototype.join;\nvar $arrSlice = Array.prototype.slice;\nvar $floor = Math.floor;\nvar bigIntValueOf = typeof BigInt === 'function' ? BigInt.prototype.valueOf : null;\nvar gOPS = Object.getOwnPropertySymbols;\nvar symToString = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? Symbol.prototype.toString : null;\nvar hasShammedSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'object';\n// ie, `has-tostringtag/shams\nvar toStringTag = typeof Symbol === 'function' && Symbol.toStringTag && (typeof Symbol.toStringTag === hasShammedSymbols ? 'object' : 'symbol')\n ? Symbol.toStringTag\n : null;\nvar isEnumerable = Object.prototype.propertyIsEnumerable;\n\nvar gPO = (typeof Reflect === 'function' ? Reflect.getPrototypeOf : Object.getPrototypeOf) || (\n [].__proto__ === Array.prototype // eslint-disable-line no-proto\n ? function (O) {\n return O.__proto__; // eslint-disable-line no-proto\n }\n : null\n);\n\nfunction addNumericSeparator(num, str) {\n if (\n num === Infinity\n || num === -Infinity\n || num !== num\n || (num && num > -1000 && num < 1000)\n || $test.call(/e/, str)\n ) {\n return str;\n }\n var sepRegex = /[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;\n if (typeof num === 'number') {\n var int = num < 0 ? -$floor(-num) : $floor(num); // trunc(num)\n if (int !== num) {\n var intStr = String(int);\n var dec = $slice.call(str, intStr.length + 1);\n return $replace.call(intStr, sepRegex, '$&_') + '.' + $replace.call($replace.call(dec, /([0-9]{3})/g, '$&_'), /_$/, '');\n }\n }\n return $replace.call(str, sepRegex, '$&_');\n}\n\nvar utilInspect = util_inspect;\nvar inspectCustom = utilInspect.custom;\nvar inspectSymbol = isSymbol(inspectCustom) ? inspectCustom : null;\n\nvar objectInspect = function inspect_(obj, options, depth, seen) {\n var opts = options || {};\n\n if (has$3(opts, 'quoteStyle') && (opts.quoteStyle !== 'single' && opts.quoteStyle !== 'double')) {\n throw new TypeError('option \"quoteStyle\" must be \"single\" or \"double\"');\n }\n if (\n has$3(opts, 'maxStringLength') && (typeof opts.maxStringLength === 'number'\n ? opts.maxStringLength < 0 && opts.maxStringLength !== Infinity\n : opts.maxStringLength !== null\n )\n ) {\n throw new TypeError('option \"maxStringLength\", if provided, must be a positive integer, Infinity, or `null`');\n }\n var customInspect = has$3(opts, 'customInspect') ? opts.customInspect : true;\n if (typeof customInspect !== 'boolean' && customInspect !== 'symbol') {\n throw new TypeError('option \"customInspect\", if provided, must be `true`, `false`, or `\\'symbol\\'`');\n }\n\n if (\n has$3(opts, 'indent')\n && opts.indent !== null\n && opts.indent !== '\\t'\n && !(parseInt(opts.indent, 10) === opts.indent && opts.indent > 0)\n ) {\n throw new TypeError('option \"indent\" must be \"\\\\t\", an integer > 0, or `null`');\n }\n if (has$3(opts, 'numericSeparator') && typeof opts.numericSeparator !== 'boolean') {\n throw new TypeError('option \"numericSeparator\", if provided, must be `true` or `false`');\n }\n var numericSeparator = opts.numericSeparator;\n\n if (typeof obj === 'undefined') {\n return 'undefined';\n }\n if (obj === null) {\n return 'null';\n }\n if (typeof obj === 'boolean') {\n return obj ? 'true' : 'false';\n }\n\n if (typeof obj === 'string') {\n return inspectString(obj, opts);\n }\n if (typeof obj === 'number') {\n if (obj === 0) {\n return Infinity / obj > 0 ? '0' : '-0';\n }\n var str = String(obj);\n return numericSeparator ? addNumericSeparator(obj, str) : str;\n }\n if (typeof obj === 'bigint') {\n var bigIntStr = String(obj) + 'n';\n return numericSeparator ? addNumericSeparator(obj, bigIntStr) : bigIntStr;\n }\n\n var maxDepth = typeof opts.depth === 'undefined' ? 5 : opts.depth;\n if (typeof depth === 'undefined') { depth = 0; }\n if (depth >= maxDepth && maxDepth > 0 && typeof obj === 'object') {\n return isArray$3(obj) ? '[Array]' : '[Object]';\n }\n\n var indent = getIndent(opts, depth);\n\n if (typeof seen === 'undefined') {\n seen = [];\n } else if (indexOf(seen, obj) >= 0) {\n return '[Circular]';\n }\n\n function inspect(value, from, noIndent) {\n if (from) {\n seen = $arrSlice.call(seen);\n seen.push(from);\n }\n if (noIndent) {\n var newOpts = {\n depth: opts.depth\n };\n if (has$3(opts, 'quoteStyle')) {\n newOpts.quoteStyle = opts.quoteStyle;\n }\n return inspect_(value, newOpts, depth + 1, seen);\n }\n return inspect_(value, opts, depth + 1, seen);\n }\n\n if (typeof obj === 'function' && !isRegExp$1(obj)) { // in older engines, regexes are callable\n var name = nameOf(obj);\n var keys = arrObjKeys(obj, inspect);\n return '[Function' + (name ? ': ' + name : ' (anonymous)') + ']' + (keys.length > 0 ? ' { ' + $join.call(keys, ', ') + ' }' : '');\n }\n if (isSymbol(obj)) {\n var symString = hasShammedSymbols ? $replace.call(String(obj), /^(Symbol\\(.*\\))_[^)]*$/, '$1') : symToString.call(obj);\n return typeof obj === 'object' && !hasShammedSymbols ? markBoxed(symString) : symString;\n }\n if (isElement(obj)) {\n var s = '<' + $toLowerCase.call(String(obj.nodeName));\n var attrs = obj.attributes || [];\n for (var i = 0; i < attrs.length; i++) {\n s += ' ' + attrs[i].name + '=' + wrapQuotes(quote(attrs[i].value), 'double', opts);\n }\n s += '>';\n if (obj.childNodes && obj.childNodes.length) { s += '...'; }\n s += '</' + $toLowerCase.call(String(obj.nodeName)) + '>';\n return s;\n }\n if (isArray$3(obj)) {\n if (obj.length === 0) { return '[]'; }\n var xs = arrObjKeys(obj, inspect);\n if (indent && !singleLineValues(xs)) {\n return '[' + indentedJoin(xs, indent) + ']';\n }\n return '[ ' + $join.call(xs, ', ') + ' ]';\n }\n if (isError(obj)) {\n var parts = arrObjKeys(obj, inspect);\n if (!('cause' in Error.prototype) && 'cause' in obj && !isEnumerable.call(obj, 'cause')) {\n return '{ [' + String(obj) + '] ' + $join.call($concat.call('[cause]: ' + inspect(obj.cause), parts), ', ') + ' }';\n }\n if (parts.length === 0) { return '[' + String(obj) + ']'; }\n return '{ [' + String(obj) + '] ' + $join.call(parts, ', ') + ' }';\n }\n if (typeof obj === 'object' && customInspect) {\n if (inspectSymbol && typeof obj[inspectSymbol] === 'function' && utilInspect) {\n return utilInspect(obj, { depth: maxDepth - depth });\n } else if (customInspect !== 'symbol' && typeof obj.inspect === 'function') {\n return obj.inspect();\n }\n }\n if (isMap(obj)) {\n var mapParts = [];\n if (mapForEach) {\n mapForEach.call(obj, function (value, key) {\n mapParts.push(inspect(key, obj, true) + ' => ' + inspect(value, obj));\n });\n }\n return collectionOf('Map', mapSize.call(obj), mapParts, indent);\n }\n if (isSet(obj)) {\n var setParts = [];\n if (setForEach) {\n setForEach.call(obj, function (value) {\n setParts.push(inspect(value, obj));\n });\n }\n return collectionOf('Set', setSize.call(obj), setParts, indent);\n }\n if (isWeakMap(obj)) {\n return weakCollectionOf('WeakMap');\n }\n if (isWeakSet(obj)) {\n return weakCollectionOf('WeakSet');\n }\n if (isWeakRef(obj)) {\n return weakCollectionOf('WeakRef');\n }\n if (isNumber(obj)) {\n return markBoxed(inspect(Number(obj)));\n }\n if (isBigInt(obj)) {\n return markBoxed(inspect(bigIntValueOf.call(obj)));\n }\n if (isBoolean(obj)) {\n return markBoxed(booleanValueOf.call(obj));\n }\n if (isString(obj)) {\n return markBoxed(inspect(String(obj)));\n }\n if (!isDate(obj) && !isRegExp$1(obj)) {\n var ys = arrObjKeys(obj, inspect);\n var isPlainObject = gPO ? gPO(obj) === Object.prototype : obj instanceof Object || obj.constructor === Object;\n var protoTag = obj instanceof Object ? '' : 'null prototype';\n var stringTag = !isPlainObject && toStringTag && Object(obj) === obj && toStringTag in obj ? $slice.call(toStr(obj), 8, -1) : protoTag ? 'Object' : '';\n var constructorTag = isPlainObject || typeof obj.constructor !== 'function' ? '' : obj.constructor.name ? obj.constructor.name + ' ' : '';\n var tag = constructorTag + (stringTag || protoTag ? '[' + $join.call($concat.call([], stringTag || [], protoTag || []), ': ') + '] ' : '');\n if (ys.length === 0) { return tag + '{}'; }\n if (indent) {\n return tag + '{' + indentedJoin(ys, indent) + '}';\n }\n return tag + '{ ' + $join.call(ys, ', ') + ' }';\n }\n return String(obj);\n};\n\nfunction wrapQuotes(s, defaultStyle, opts) {\n var quoteChar = (opts.quoteStyle || defaultStyle) === 'double' ? '\"' : \"'\";\n return quoteChar + s + quoteChar;\n}\n\nfunction quote(s) {\n return $replace.call(String(s), /\"/g, '"');\n}\n\nfunction isArray$3(obj) { return toStr(obj) === '[object Array]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isDate(obj) { return toStr(obj) === '[object Date]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isRegExp$1(obj) { return toStr(obj) === '[object RegExp]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isError(obj) { return toStr(obj) === '[object Error]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isString(obj) { return toStr(obj) === '[object String]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isNumber(obj) { return toStr(obj) === '[object Number]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isBoolean(obj) { return toStr(obj) === '[object Boolean]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\n\n// Symbol and BigInt do have Symbol.toStringTag by spec, so that can't be used to eliminate false positives\nfunction isSymbol(obj) {\n if (hasShammedSymbols) {\n return obj && typeof obj === 'object' && obj instanceof Symbol;\n }\n if (typeof obj === 'symbol') {\n return true;\n }\n if (!obj || typeof obj !== 'object' || !symToString) {\n return false;\n }\n try {\n symToString.call(obj);\n return true;\n } catch (e) {}\n return false;\n}\n\nfunction isBigInt(obj) {\n if (!obj || typeof obj !== 'object' || !bigIntValueOf) {\n return false;\n }\n try {\n bigIntValueOf.call(obj);\n return true;\n } catch (e) {}\n return false;\n}\n\nvar hasOwn = Object.prototype.hasOwnProperty || function (key) { return key in this; };\nfunction has$3(obj, key) {\n return hasOwn.call(obj, key);\n}\n\nfunction toStr(obj) {\n return objectToString.call(obj);\n}\n\nfunction nameOf(f) {\n if (f.name) { return f.name; }\n var m = $match.call(functionToString.call(f), /^function\\s*([\\w$]+)/);\n if (m) { return m[1]; }\n return null;\n}\n\nfunction indexOf(xs, x) {\n if (xs.indexOf) { return xs.indexOf(x); }\n for (var i = 0, l = xs.length; i < l; i++) {\n if (xs[i] === x) { return i; }\n }\n return -1;\n}\n\nfunction isMap(x) {\n if (!mapSize || !x || typeof x !== 'object') {\n return false;\n }\n try {\n mapSize.call(x);\n try {\n setSize.call(x);\n } catch (s) {\n return true;\n }\n return x instanceof Map; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakMap(x) {\n if (!weakMapHas || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakMapHas.call(x, weakMapHas);\n try {\n weakSetHas.call(x, weakSetHas);\n } catch (s) {\n return true;\n }\n return x instanceof WeakMap; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakRef(x) {\n if (!weakRefDeref || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakRefDeref.call(x);\n return true;\n } catch (e) {}\n return false;\n}\n\nfunction isSet(x) {\n if (!setSize || !x || typeof x !== 'object') {\n return false;\n }\n try {\n setSize.call(x);\n try {\n mapSize.call(x);\n } catch (m) {\n return true;\n }\n return x instanceof Set; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakSet(x) {\n if (!weakSetHas || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakSetHas.call(x, weakSetHas);\n try {\n weakMapHas.call(x, weakMapHas);\n } catch (s) {\n return true;\n }\n return x instanceof WeakSet; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isElement(x) {\n if (!x || typeof x !== 'object') { return false; }\n if (typeof HTMLElement !== 'undefined' && x instanceof HTMLElement) {\n return true;\n }\n return typeof x.nodeName === 'string' && typeof x.getAttribute === 'function';\n}\n\nfunction inspectString(str, opts) {\n if (str.length > opts.maxStringLength) {\n var remaining = str.length - opts.maxStringLength;\n var trailer = '... ' + remaining + ' more character' + (remaining > 1 ? 's' : '');\n return inspectString($slice.call(str, 0, opts.maxStringLength), opts) + trailer;\n }\n // eslint-disable-next-line no-control-regex\n var s = $replace.call($replace.call(str, /(['\\\\])/g, '\\\\$1'), /[\\x00-\\x1f]/g, lowbyte);\n return wrapQuotes(s, 'single', opts);\n}\n\nfunction lowbyte(c) {\n var n = c.charCodeAt(0);\n var x = {\n 8: 'b',\n 9: 't',\n 10: 'n',\n 12: 'f',\n 13: 'r'\n }[n];\n if (x) { return '\\\\' + x; }\n return '\\\\x' + (n < 0x10 ? '0' : '') + $toUpperCase.call(n.toString(16));\n}\n\nfunction markBoxed(str) {\n return 'Object(' + str + ')';\n}\n\nfunction weakCollectionOf(type) {\n return type + ' { ? }';\n}\n\nfunction collectionOf(type, size, entries, indent) {\n var joinedEntries = indent ? indentedJoin(entries, indent) : $join.call(entries, ', ');\n return type + ' (' + size + ') {' + joinedEntries + '}';\n}\n\nfunction singleLineValues(xs) {\n for (var i = 0; i < xs.length; i++) {\n if (indexOf(xs[i], '\\n') >= 0) {\n return false;\n }\n }\n return true;\n}\n\nfunction getIndent(opts, depth) {\n var baseIndent;\n if (opts.indent === '\\t') {\n baseIndent = '\\t';\n } else if (typeof opts.indent === 'number' && opts.indent > 0) {\n baseIndent = $join.call(Array(opts.indent + 1), ' ');\n } else {\n return null;\n }\n return {\n base: baseIndent,\n prev: $join.call(Array(depth + 1), baseIndent)\n };\n}\n\nfunction indentedJoin(xs, indent) {\n if (xs.length === 0) { return ''; }\n var lineJoiner = '\\n' + indent.prev + indent.base;\n return lineJoiner + $join.call(xs, ',' + lineJoiner) + '\\n' + indent.prev;\n}\n\nfunction arrObjKeys(obj, inspect) {\n var isArr = isArray$3(obj);\n var xs = [];\n if (isArr) {\n xs.length = obj.length;\n for (var i = 0; i < obj.length; i++) {\n xs[i] = has$3(obj, i) ? inspect(obj[i], obj) : '';\n }\n }\n var syms = typeof gOPS === 'function' ? gOPS(obj) : [];\n var symMap;\n if (hasShammedSymbols) {\n symMap = {};\n for (var k = 0; k < syms.length; k++) {\n symMap['$' + syms[k]] = syms[k];\n }\n }\n\n for (var key in obj) { // eslint-disable-line no-restricted-syntax\n if (!has$3(obj, key)) { continue; } // eslint-disable-line no-restricted-syntax, no-continue\n if (isArr && String(Number(key)) === key && key < obj.length) { continue; } // eslint-disable-line no-restricted-syntax, no-continue\n if (hasShammedSymbols && symMap['$' + key] instanceof Symbol) {\n // this is to prevent shammed Symbols, which are stored as strings, from being included in the string key section\n continue; // eslint-disable-line no-restricted-syntax, no-continue\n } else if ($test.call(/[^\\w$]/, key)) {\n xs.push(inspect(key, obj) + ': ' + inspect(obj[key], obj));\n } else {\n xs.push(key + ': ' + inspect(obj[key], obj));\n }\n }\n if (typeof gOPS === 'function') {\n for (var j = 0; j < syms.length; j++) {\n if (isEnumerable.call(obj, syms[j])) {\n xs.push('[' + inspect(syms[j]) + ']: ' + inspect(obj[syms[j]], obj));\n }\n }\n }\n return xs;\n}\n\nvar GetIntrinsic = getIntrinsic;\nvar callBound = callBound$1;\nvar inspect = objectInspect;\n\nvar $TypeError = GetIntrinsic('%TypeError%');\nvar $WeakMap = GetIntrinsic('%WeakMap%', true);\nvar $Map = GetIntrinsic('%Map%', true);\n\nvar $weakMapGet = callBound('WeakMap.prototype.get', true);\nvar $weakMapSet = callBound('WeakMap.prototype.set', true);\nvar $weakMapHas = callBound('WeakMap.prototype.has', true);\nvar $mapGet = callBound('Map.prototype.get', true);\nvar $mapSet = callBound('Map.prototype.set', true);\nvar $mapHas = callBound('Map.prototype.has', true);\n\n/*\n * This function traverses the list returning the node corresponding to the\n * given key.\n *\n * That node is also moved to the head of the list, so that if it's accessed\n * again we don't need to traverse the whole list. By doing so, all the recently\n * used nodes can be accessed relatively quickly.\n */\nvar listGetNode = function (list, key) { // eslint-disable-line consistent-return\n\tfor (var prev = list, curr; (curr = prev.next) !== null; prev = curr) {\n\t\tif (curr.key === key) {\n\t\t\tprev.next = curr.next;\n\t\t\tcurr.next = list.next;\n\t\t\tlist.next = curr; // eslint-disable-line no-param-reassign\n\t\t\treturn curr;\n\t\t}\n\t}\n};\n\nvar listGet = function (objects, key) {\n\tvar node = listGetNode(objects, key);\n\treturn node && node.value;\n};\nvar listSet = function (objects, key, value) {\n\tvar node = listGetNode(objects, key);\n\tif (node) {\n\t\tnode.value = value;\n\t} else {\n\t\t// Prepend the new node to the beginning of the list\n\t\tobjects.next = { // eslint-disable-line no-param-reassign\n\t\t\tkey: key,\n\t\t\tnext: objects.next,\n\t\t\tvalue: value\n\t\t};\n\t}\n};\nvar listHas = function (objects, key) {\n\treturn !!listGetNode(objects, key);\n};\n\nvar sideChannel = function getSideChannel() {\n\tvar $wm;\n\tvar $m;\n\tvar $o;\n\tvar channel = {\n\t\tassert: function (key) {\n\t\t\tif (!channel.has(key)) {\n\t\t\t\tthrow new $TypeError('Side channel does not contain ' + inspect(key));\n\t\t\t}\n\t\t},\n\t\tget: function (key) { // eslint-disable-line consistent-return\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif ($wm) {\n\t\t\t\t\treturn $weakMapGet($wm, key);\n\t\t\t\t}\n\t\t\t} else if ($Map) {\n\t\t\t\tif ($m) {\n\t\t\t\t\treturn $mapGet($m, key);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif ($o) { // eslint-disable-line no-lonely-if\n\t\t\t\t\treturn listGet($o, key);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\thas: function (key) {\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif ($wm) {\n\t\t\t\t\treturn $weakMapHas($wm, key);\n\t\t\t\t}\n\t\t\t} else if ($Map) {\n\t\t\t\tif ($m) {\n\t\t\t\t\treturn $mapHas($m, key);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif ($o) { // eslint-disable-line no-lonely-if\n\t\t\t\t\treturn listHas($o, key);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t},\n\t\tset: function (key, value) {\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif (!$wm) {\n\t\t\t\t\t$wm = new $WeakMap();\n\t\t\t\t}\n\t\t\t\t$weakMapSet($wm, key, value);\n\t\t\t} else if ($Map) {\n\t\t\t\tif (!$m) {\n\t\t\t\t\t$m = new $Map();\n\t\t\t\t}\n\t\t\t\t$mapSet($m, key, value);\n\t\t\t} else {\n\t\t\t\tif (!$o) {\n\t\t\t\t\t/*\n\t\t\t\t\t * Initialize the linked list as an empty node, so that we don't have\n\t\t\t\t\t * to special-case handling of the first node: we can always refer to\n\t\t\t\t\t * it as (previous node).next, instead of something like (list).head\n\t\t\t\t\t */\n\t\t\t\t\t$o = { key: {}, next: null };\n\t\t\t\t}\n\t\t\t\tlistSet($o, key, value);\n\t\t\t}\n\t\t}\n\t};\n\treturn channel;\n};\n\nvar replace = String.prototype.replace;\nvar percentTwenties = /%20/g;\n\nvar Format = {\n RFC1738: 'RFC1738',\n RFC3986: 'RFC3986'\n};\n\nvar formats$3 = {\n 'default': Format.RFC3986,\n formatters: {\n RFC1738: function (value) {\n return replace.call(value, percentTwenties, '+');\n },\n RFC3986: function (value) {\n return String(value);\n }\n },\n RFC1738: Format.RFC1738,\n RFC3986: Format.RFC3986\n};\n\nvar formats$2 = formats$3;\n\nvar has$2 = Object.prototype.hasOwnProperty;\nvar isArray$2 = Array.isArray;\n\nvar hexTable = (function () {\n var array = [];\n for (var i = 0; i < 256; ++i) {\n array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase());\n }\n\n return array;\n}());\n\nvar compactQueue = function compactQueue(queue) {\n while (queue.length > 1) {\n var item = queue.pop();\n var obj = item.obj[item.prop];\n\n if (isArray$2(obj)) {\n var compacted = [];\n\n for (var j = 0; j < obj.length; ++j) {\n if (typeof obj[j] !== 'undefined') {\n compacted.push(obj[j]);\n }\n }\n\n item.obj[item.prop] = compacted;\n }\n }\n};\n\nvar arrayToObject = function arrayToObject(source, options) {\n var obj = options && options.plainObjects ? Object.create(null) : {};\n for (var i = 0; i < source.length; ++i) {\n if (typeof source[i] !== 'undefined') {\n obj[i] = source[i];\n }\n }\n\n return obj;\n};\n\nvar merge = function merge(target, source, options) {\n /* eslint no-param-reassign: 0 */\n if (!source) {\n return target;\n }\n\n if (typeof source !== 'object') {\n if (isArray$2(target)) {\n target.push(source);\n } else if (target && typeof target === 'object') {\n if ((options && (options.plainObjects || options.allowPrototypes)) || !has$2.call(Object.prototype, source)) {\n target[source] = true;\n }\n } else {\n return [target, source];\n }\n\n return target;\n }\n\n if (!target || typeof target !== 'object') {\n return [target].concat(source);\n }\n\n var mergeTarget = target;\n if (isArray$2(target) && !isArray$2(source)) {\n mergeTarget = arrayToObject(target, options);\n }\n\n if (isArray$2(target) && isArray$2(source)) {\n source.forEach(function (item, i) {\n if (has$2.call(target, i)) {\n var targetItem = target[i];\n if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') {\n target[i] = merge(targetItem, item, options);\n } else {\n target.push(item);\n }\n } else {\n target[i] = item;\n }\n });\n return target;\n }\n\n return Object.keys(source).reduce(function (acc, key) {\n var value = source[key];\n\n if (has$2.call(acc, key)) {\n acc[key] = merge(acc[key], value, options);\n } else {\n acc[key] = value;\n }\n return acc;\n }, mergeTarget);\n};\n\nvar assign = function assignSingleSource(target, source) {\n return Object.keys(source).reduce(function (acc, key) {\n acc[key] = source[key];\n return acc;\n }, target);\n};\n\nvar decode = function (str, decoder, charset) {\n var strWithoutPlus = str.replace(/\\+/g, ' ');\n if (charset === 'iso-8859-1') {\n // unescape never throws, no try...catch needed:\n return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape);\n }\n // utf-8\n try {\n return decodeURIComponent(strWithoutPlus);\n } catch (e) {\n return strWithoutPlus;\n }\n};\n\nvar encode = function encode(str, defaultEncoder, charset, kind, format) {\n // This code was originally written by Brian White (mscdex) for the io.js core querystring library.\n // It has been adapted here for stricter adherence to RFC 3986\n if (str.length === 0) {\n return str;\n }\n\n var string = str;\n if (typeof str === 'symbol') {\n string = Symbol.prototype.toString.call(str);\n } else if (typeof str !== 'string') {\n string = String(str);\n }\n\n if (charset === 'iso-8859-1') {\n return escape(string).replace(/%u[0-9a-f]{4}/gi, function ($0) {\n return '%26%23' + parseInt($0.slice(2), 16) + '%3B';\n });\n }\n\n var out = '';\n for (var i = 0; i < string.length; ++i) {\n var c = string.charCodeAt(i);\n\n if (\n c === 0x2D // -\n || c === 0x2E // .\n || c === 0x5F // _\n || c === 0x7E // ~\n || (c >= 0x30 && c <= 0x39) // 0-9\n || (c >= 0x41 && c <= 0x5A) // a-z\n || (c >= 0x61 && c <= 0x7A) // A-Z\n || (format === formats$2.RFC1738 && (c === 0x28 || c === 0x29)) // ( )\n ) {\n out += string.charAt(i);\n continue;\n }\n\n if (c < 0x80) {\n out = out + hexTable[c];\n continue;\n }\n\n if (c < 0x800) {\n out = out + (hexTable[0xC0 | (c >> 6)] + hexTable[0x80 | (c & 0x3F)]);\n continue;\n }\n\n if (c < 0xD800 || c >= 0xE000) {\n out = out + (hexTable[0xE0 | (c >> 12)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]);\n continue;\n }\n\n i += 1;\n c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF));\n /* eslint operator-linebreak: [2, \"before\"] */\n out += hexTable[0xF0 | (c >> 18)]\n + hexTable[0x80 | ((c >> 12) & 0x3F)]\n + hexTable[0x80 | ((c >> 6) & 0x3F)]\n + hexTable[0x80 | (c & 0x3F)];\n }\n\n return out;\n};\n\nvar compact = function compact(value) {\n var queue = [{ obj: { o: value }, prop: 'o' }];\n var refs = [];\n\n for (var i = 0; i < queue.length; ++i) {\n var item = queue[i];\n var obj = item.obj[item.prop];\n\n var keys = Object.keys(obj);\n for (var j = 0; j < keys.length; ++j) {\n var key = keys[j];\n var val = obj[key];\n if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {\n queue.push({ obj: obj, prop: key });\n refs.push(val);\n }\n }\n }\n\n compactQueue(queue);\n\n return value;\n};\n\nvar isRegExp = function isRegExp(obj) {\n return Object.prototype.toString.call(obj) === '[object RegExp]';\n};\n\nvar isBuffer = function isBuffer(obj) {\n if (!obj || typeof obj !== 'object') {\n return false;\n }\n\n return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));\n};\n\nvar combine = function combine(a, b) {\n return [].concat(a, b);\n};\n\nvar maybeMap = function maybeMap(val, fn) {\n if (isArray$2(val)) {\n var mapped = [];\n for (var i = 0; i < val.length; i += 1) {\n mapped.push(fn(val[i]));\n }\n return mapped;\n }\n return fn(val);\n};\n\nvar utils$2 = {\n arrayToObject: arrayToObject,\n assign: assign,\n combine: combine,\n compact: compact,\n decode: decode,\n encode: encode,\n isBuffer: isBuffer,\n isRegExp: isRegExp,\n maybeMap: maybeMap,\n merge: merge\n};\n\nvar getSideChannel = sideChannel;\nvar utils$1 = utils$2;\nvar formats$1 = formats$3;\nvar has$1 = Object.prototype.hasOwnProperty;\n\nvar arrayPrefixGenerators = {\n brackets: function brackets(prefix) {\n return prefix + '[]';\n },\n comma: 'comma',\n indices: function indices(prefix, key) {\n return prefix + '[' + key + ']';\n },\n repeat: function repeat(prefix) {\n return prefix;\n }\n};\n\nvar isArray$1 = Array.isArray;\nvar push = Array.prototype.push;\nvar pushToArray = function (arr, valueOrArray) {\n push.apply(arr, isArray$1(valueOrArray) ? valueOrArray : [valueOrArray]);\n};\n\nvar toISO = Date.prototype.toISOString;\n\nvar defaultFormat = formats$1['default'];\nvar defaults$1 = {\n addQueryPrefix: false,\n allowDots: false,\n charset: 'utf-8',\n charsetSentinel: false,\n delimiter: '&',\n encode: true,\n encoder: utils$1.encode,\n encodeValuesOnly: false,\n format: defaultFormat,\n formatter: formats$1.formatters[defaultFormat],\n // deprecated\n indices: false,\n serializeDate: function serializeDate(date) {\n return toISO.call(date);\n },\n skipNulls: false,\n strictNullHandling: false\n};\n\nvar isNonNullishPrimitive = function isNonNullishPrimitive(v) {\n return typeof v === 'string'\n || typeof v === 'number'\n || typeof v === 'boolean'\n || typeof v === 'symbol'\n || typeof v === 'bigint';\n};\n\nvar sentinel = {};\n\nvar stringify$1 = function stringify(\n object,\n prefix,\n generateArrayPrefix,\n commaRoundTrip,\n strictNullHandling,\n skipNulls,\n encoder,\n filter,\n sort,\n allowDots,\n serializeDate,\n format,\n formatter,\n encodeValuesOnly,\n charset,\n sideChannel\n) {\n var obj = object;\n\n var tmpSc = sideChannel;\n var step = 0;\n var findFlag = false;\n while ((tmpSc = tmpSc.get(sentinel)) !== void undefined && !findFlag) {\n // Where object last appeared in the ref tree\n var pos = tmpSc.get(object);\n step += 1;\n if (typeof pos !== 'undefined') {\n if (pos === step) {\n throw new RangeError('Cyclic object value');\n } else {\n findFlag = true; // Break while\n }\n }\n if (typeof tmpSc.get(sentinel) === 'undefined') {\n step = 0;\n }\n }\n\n if (typeof filter === 'function') {\n obj = filter(prefix, obj);\n } else if (obj instanceof Date) {\n obj = serializeDate(obj);\n } else if (generateArrayPrefix === 'comma' && isArray$1(obj)) {\n obj = utils$1.maybeMap(obj, function (value) {\n if (value instanceof Date) {\n return serializeDate(value);\n }\n return value;\n });\n }\n\n if (obj === null) {\n if (strictNullHandling) {\n return encoder && !encodeValuesOnly ? encoder(prefix, defaults$1.encoder, charset, 'key', format) : prefix;\n }\n\n obj = '';\n }\n\n if (isNonNullishPrimitive(obj) || utils$1.isBuffer(obj)) {\n if (encoder) {\n var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults$1.encoder, charset, 'key', format);\n return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults$1.encoder, charset, 'value', format))];\n }\n return [formatter(prefix) + '=' + formatter(String(obj))];\n }\n\n var values = [];\n\n if (typeof obj === 'undefined') {\n return values;\n }\n\n var objKeys;\n if (generateArrayPrefix === 'comma' && isArray$1(obj)) {\n // we need to join elements in\n if (encodeValuesOnly && encoder) {\n obj = utils$1.maybeMap(obj, encoder);\n }\n objKeys = [{ value: obj.length > 0 ? obj.join(',') || null : void undefined }];\n } else if (isArray$1(filter)) {\n objKeys = filter;\n } else {\n var keys = Object.keys(obj);\n objKeys = sort ? keys.sort(sort) : keys;\n }\n\n var adjustedPrefix = commaRoundTrip && isArray$1(obj) && obj.length === 1 ? prefix + '[]' : prefix;\n\n for (var j = 0; j < objKeys.length; ++j) {\n var key = objKeys[j];\n var value = typeof key === 'object' && typeof key.value !== 'undefined' ? key.value : obj[key];\n\n if (skipNulls && value === null) {\n continue;\n }\n\n var keyPrefix = isArray$1(obj)\n ? typeof generateArrayPrefix === 'function' ? generateArrayPrefix(adjustedPrefix, key) : adjustedPrefix\n : adjustedPrefix + (allowDots ? '.' + key : '[' + key + ']');\n\n sideChannel.set(object, step);\n var valueSideChannel = getSideChannel();\n valueSideChannel.set(sentinel, sideChannel);\n pushToArray(values, stringify(\n value,\n keyPrefix,\n generateArrayPrefix,\n commaRoundTrip,\n strictNullHandling,\n skipNulls,\n generateArrayPrefix === 'comma' && encodeValuesOnly && isArray$1(obj) ? null : encoder,\n filter,\n sort,\n allowDots,\n serializeDate,\n format,\n formatter,\n encodeValuesOnly,\n charset,\n valueSideChannel\n ));\n }\n\n return values;\n};\n\nvar normalizeStringifyOptions = function normalizeStringifyOptions(opts) {\n if (!opts) {\n return defaults$1;\n }\n\n if (opts.encoder !== null && typeof opts.encoder !== 'undefined' && typeof opts.encoder !== 'function') {\n throw new TypeError('Encoder has to be a function.');\n }\n\n var charset = opts.charset || defaults$1.charset;\n if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {\n throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');\n }\n\n var format = formats$1['default'];\n if (typeof opts.format !== 'undefined') {\n if (!has$1.call(formats$1.formatters, opts.format)) {\n throw new TypeError('Unknown format option provided.');\n }\n format = opts.format;\n }\n var formatter = formats$1.formatters[format];\n\n var filter = defaults$1.filter;\n if (typeof opts.filter === 'function' || isArray$1(opts.filter)) {\n filter = opts.filter;\n }\n\n return {\n addQueryPrefix: typeof opts.addQueryPrefix === 'boolean' ? opts.addQueryPrefix : defaults$1.addQueryPrefix,\n allowDots: typeof opts.allowDots === 'undefined' ? defaults$1.allowDots : !!opts.allowDots,\n charset: charset,\n charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults$1.charsetSentinel,\n delimiter: typeof opts.delimiter === 'undefined' ? defaults$1.delimiter : opts.delimiter,\n encode: typeof opts.encode === 'boolean' ? opts.encode : defaults$1.encode,\n encoder: typeof opts.encoder === 'function' ? opts.encoder : defaults$1.encoder,\n encodeValuesOnly: typeof opts.encodeValuesOnly === 'boolean' ? opts.encodeValuesOnly : defaults$1.encodeValuesOnly,\n filter: filter,\n format: format,\n formatter: formatter,\n serializeDate: typeof opts.serializeDate === 'function' ? opts.serializeDate : defaults$1.serializeDate,\n skipNulls: typeof opts.skipNulls === 'boolean' ? opts.skipNulls : defaults$1.skipNulls,\n sort: typeof opts.sort === 'function' ? opts.sort : null,\n strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults$1.strictNullHandling\n };\n};\n\nvar stringify_1 = function (object, opts) {\n var obj = object;\n var options = normalizeStringifyOptions(opts);\n\n var objKeys;\n var filter;\n\n if (typeof options.filter === 'function') {\n filter = options.filter;\n obj = filter('', obj);\n } else if (isArray$1(options.filter)) {\n filter = options.filter;\n objKeys = filter;\n }\n\n var keys = [];\n\n if (typeof obj !== 'object' || obj === null) {\n return '';\n }\n\n var arrayFormat;\n if (opts && opts.arrayFormat in arrayPrefixGenerators) {\n arrayFormat = opts.arrayFormat;\n } else if (opts && 'indices' in opts) {\n arrayFormat = opts.indices ? 'indices' : 'repeat';\n } else {\n arrayFormat = 'indices';\n }\n\n var generateArrayPrefix = arrayPrefixGenerators[arrayFormat];\n if (opts && 'commaRoundTrip' in opts && typeof opts.commaRoundTrip !== 'boolean') {\n throw new TypeError('`commaRoundTrip` must be a boolean, or absent');\n }\n var commaRoundTrip = generateArrayPrefix === 'comma' && opts && opts.commaRoundTrip;\n\n if (!objKeys) {\n objKeys = Object.keys(obj);\n }\n\n if (options.sort) {\n objKeys.sort(options.sort);\n }\n\n var sideChannel = getSideChannel();\n for (var i = 0; i < objKeys.length; ++i) {\n var key = objKeys[i];\n\n if (options.skipNulls && obj[key] === null) {\n continue;\n }\n pushToArray(keys, stringify$1(\n obj[key],\n key,\n generateArrayPrefix,\n commaRoundTrip,\n options.strictNullHandling,\n options.skipNulls,\n options.encode ? options.encoder : null,\n options.filter,\n options.sort,\n options.allowDots,\n options.serializeDate,\n options.format,\n options.formatter,\n options.encodeValuesOnly,\n options.charset,\n sideChannel\n ));\n }\n\n var joined = keys.join(options.delimiter);\n var prefix = options.addQueryPrefix === true ? '?' : '';\n\n if (options.charsetSentinel) {\n if (options.charset === 'iso-8859-1') {\n // encodeURIComponent('✓'), the \"numeric entity\" representation of a checkmark\n prefix += 'utf8=%26%2310003%3B&';\n } else {\n // encodeURIComponent('✓')\n prefix += 'utf8=%E2%9C%93&';\n }\n }\n\n return joined.length > 0 ? prefix + joined : '';\n};\n\nvar utils = utils$2;\n\nvar has = Object.prototype.hasOwnProperty;\nvar isArray = Array.isArray;\n\nvar defaults = {\n allowDots: false,\n allowPrototypes: false,\n allowSparse: false,\n arrayLimit: 20,\n charset: 'utf-8',\n charsetSentinel: false,\n comma: false,\n decoder: utils.decode,\n delimiter: '&',\n depth: 5,\n ignoreQueryPrefix: false,\n interpretNumericEntities: false,\n parameterLimit: 1000,\n parseArrays: true,\n plainObjects: false,\n strictNullHandling: false\n};\n\nvar interpretNumericEntities = function (str) {\n return str.replace(/&#(\\d+);/g, function ($0, numberStr) {\n return String.fromCharCode(parseInt(numberStr, 10));\n });\n};\n\nvar parseArrayValue = function (val, options) {\n if (val && typeof val === 'string' && options.comma && val.indexOf(',') > -1) {\n return val.split(',');\n }\n\n return val;\n};\n\n// This is what browsers will submit when the ✓ character occurs in an\n// application/x-www-form-urlencoded body and the encoding of the page containing\n// the form is iso-8859-1, or when the submitted form has an accept-charset\n// attribute of iso-8859-1. Presumably also with other charsets that do not contain\n// the ✓ character, such as us-ascii.\nvar isoSentinel = 'utf8=%26%2310003%3B'; // encodeURIComponent('✓')\n\n// These are the percent-encoded utf-8 octets representing a checkmark, indicating that the request actually is utf-8 encoded.\nvar charsetSentinel = 'utf8=%E2%9C%93'; // encodeURIComponent('✓')\n\nvar parseValues = function parseQueryStringValues(str, options) {\n var obj = { __proto__: null };\n\n var cleanStr = options.ignoreQueryPrefix ? str.replace(/^\\?/, '') : str;\n var limit = options.parameterLimit === Infinity ? undefined : options.parameterLimit;\n var parts = cleanStr.split(options.delimiter, limit);\n var skipIndex = -1; // Keep track of where the utf8 sentinel was found\n var i;\n\n var charset = options.charset;\n if (options.charsetSentinel) {\n for (i = 0; i < parts.length; ++i) {\n if (parts[i].indexOf('utf8=') === 0) {\n if (parts[i] === charsetSentinel) {\n charset = 'utf-8';\n } else if (parts[i] === isoSentinel) {\n charset = 'iso-8859-1';\n }\n skipIndex = i;\n i = parts.length; // The eslint settings do not allow break;\n }\n }\n }\n\n for (i = 0; i < parts.length; ++i) {\n if (i === skipIndex) {\n continue;\n }\n var part = parts[i];\n\n var bracketEqualsPos = part.indexOf(']=');\n var pos = bracketEqualsPos === -1 ? part.indexOf('=') : bracketEqualsPos + 1;\n\n var key, val;\n if (pos === -1) {\n key = options.decoder(part, defaults.decoder, charset, 'key');\n val = options.strictNullHandling ? null : '';\n } else {\n key = options.decoder(part.slice(0, pos), defaults.decoder, charset, 'key');\n val = utils.maybeMap(\n parseArrayValue(part.slice(pos + 1), options),\n function (encodedVal) {\n return options.decoder(encodedVal, defaults.decoder, charset, 'value');\n }\n );\n }\n\n if (val && options.interpretNumericEntities && charset === 'iso-8859-1') {\n val = interpretNumericEntities(val);\n }\n\n if (part.indexOf('[]=') > -1) {\n val = isArray(val) ? [val] : val;\n }\n\n if (has.call(obj, key)) {\n obj[key] = utils.combine(obj[key], val);\n } else {\n obj[key] = val;\n }\n }\n\n return obj;\n};\n\nvar parseObject = function (chain, val, options, valuesParsed) {\n var leaf = valuesParsed ? val : parseArrayValue(val, options);\n\n for (var i = chain.length - 1; i >= 0; --i) {\n var obj;\n var root = chain[i];\n\n if (root === '[]' && options.parseArrays) {\n obj = [].concat(leaf);\n } else {\n obj = options.plainObjects ? Object.create(null) : {};\n var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root;\n var index = parseInt(cleanRoot, 10);\n if (!options.parseArrays && cleanRoot === '') {\n obj = { 0: leaf };\n } else if (\n !isNaN(index)\n && root !== cleanRoot\n && String(index) === cleanRoot\n && index >= 0\n && (options.parseArrays && index <= options.arrayLimit)\n ) {\n obj = [];\n obj[index] = leaf;\n } else if (cleanRoot !== '__proto__') {\n obj[cleanRoot] = leaf;\n }\n }\n\n leaf = obj;\n }\n\n return leaf;\n};\n\nvar parseKeys = function parseQueryStringKeys(givenKey, val, options, valuesParsed) {\n if (!givenKey) {\n return;\n }\n\n // Transform dot notation to bracket notation\n var key = options.allowDots ? givenKey.replace(/\\.([^.[]+)/g, '[$1]') : givenKey;\n\n // The regex chunks\n\n var brackets = /(\\[[^[\\]]*])/;\n var child = /(\\[[^[\\]]*])/g;\n\n // Get the parent\n\n var segment = options.depth > 0 && brackets.exec(key);\n var parent = segment ? key.slice(0, segment.index) : key;\n\n // Stash the parent if it exists\n\n var keys = [];\n if (parent) {\n // If we aren't using plain objects, optionally prefix keys that would overwrite object prototype properties\n if (!options.plainObjects && has.call(Object.prototype, parent)) {\n if (!options.allowPrototypes) {\n return;\n }\n }\n\n keys.push(parent);\n }\n\n // Loop through children appending to the array until we hit depth\n\n var i = 0;\n while (options.depth > 0 && (segment = child.exec(key)) !== null && i < options.depth) {\n i += 1;\n if (!options.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) {\n if (!options.allowPrototypes) {\n return;\n }\n }\n keys.push(segment[1]);\n }\n\n // If there's a remainder, just add whatever is left\n\n if (segment) {\n keys.push('[' + key.slice(segment.index) + ']');\n }\n\n return parseObject(keys, val, options, valuesParsed);\n};\n\nvar normalizeParseOptions = function normalizeParseOptions(opts) {\n if (!opts) {\n return defaults;\n }\n\n if (opts.decoder !== null && opts.decoder !== undefined && typeof opts.decoder !== 'function') {\n throw new TypeError('Decoder has to be a function.');\n }\n\n if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {\n throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');\n }\n var charset = typeof opts.charset === 'undefined' ? defaults.charset : opts.charset;\n\n return {\n allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,\n allowPrototypes: typeof opts.allowPrototypes === 'boolean' ? opts.allowPrototypes : defaults.allowPrototypes,\n allowSparse: typeof opts.allowSparse === 'boolean' ? opts.allowSparse : defaults.allowSparse,\n arrayLimit: typeof opts.arrayLimit === 'number' ? opts.arrayLimit : defaults.arrayLimit,\n charset: charset,\n charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,\n comma: typeof opts.comma === 'boolean' ? opts.comma : defaults.comma,\n decoder: typeof opts.decoder === 'function' ? opts.decoder : defaults.decoder,\n delimiter: typeof opts.delimiter === 'string' || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults.delimiter,\n // eslint-disable-next-line no-implicit-coercion, no-extra-parens\n depth: (typeof opts.depth === 'number' || opts.depth === false) ? +opts.depth : defaults.depth,\n ignoreQueryPrefix: opts.ignoreQueryPrefix === true,\n interpretNumericEntities: typeof opts.interpretNumericEntities === 'boolean' ? opts.interpretNumericEntities : defaults.interpretNumericEntities,\n parameterLimit: typeof opts.parameterLimit === 'number' ? opts.parameterLimit : defaults.parameterLimit,\n parseArrays: opts.parseArrays !== false,\n plainObjects: typeof opts.plainObjects === 'boolean' ? opts.plainObjects : defaults.plainObjects,\n strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling\n };\n};\n\nvar parse$1 = function (str, opts) {\n var options = normalizeParseOptions(opts);\n\n if (str === '' || str === null || typeof str === 'undefined') {\n return options.plainObjects ? Object.create(null) : {};\n }\n\n var tempObj = typeof str === 'string' ? parseValues(str, options) : str;\n var obj = options.plainObjects ? Object.create(null) : {};\n\n // Iterate over the keys and setup the new object\n\n var keys = Object.keys(tempObj);\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n var newObj = parseKeys(key, tempObj[key], options, typeof str === 'string');\n obj = utils.merge(obj, newObj, options);\n }\n\n if (options.allowSparse === true) {\n return obj;\n }\n\n return utils.compact(obj);\n};\n\nvar stringify = stringify_1;\nvar parse = parse$1;\nvar formats = formats$3;\n\nvar lib = {\n formats: formats,\n parse: parse,\n stringify: stringify\n};\n\nvar qs = /*@__PURE__*/getDefaultExportFromCjs(lib);\n\nvar fetch = function fetch(params) {\n var serializedParams = qs.stringify(keysToSnakeCase(params), {\n arrayFormat: \"brackets\",\n encode: false\n });\n return axios.get(\"\".concat(BASE_URL, \"/teams?\").concat(serializedParams));\n};\nvar fetchCountsPerCategory = function fetchCountsPerCategory() {\n return axios.get(\"\".concat(BASE_URL, \"/teams/counts_per_category\"));\n};\nvar create = function create(payload) {\n return axios.post(\"\".concat(BASE_URL, \"/teams\"), payload);\n};\nvar update = function update(id, payload) {\n return axios.put(\"\".concat(BASE_URL, \"/teams/\").concat(id), {\n team: payload\n });\n};\nvar bulkUpdate = function bulkUpdate(payload) {\n return axios.patch(\"\".concat(BASE_URL, \"/teams/bulk_update\"), payload);\n};\nvar fetchFilterOptions = function fetchFilterOptions(params) {\n return axios.get(\"\".concat(BASE_URL, \"/teams/filter_options\"), {\n params: keysToSnakeCase(params)\n });\n};\nvar creationStatus = function creationStatus(jobId) {\n return axios.get(\"\".concat(BASE_URL, \"/teams/creation_status/\").concat(jobId));\n};\nvar teamsApi = {\n bulkUpdate: bulkUpdate,\n create: create,\n fetch: fetch,\n update: update,\n fetchFilterOptions: fetchFilterOptions,\n fetchCountsPerCategory: fetchCountsPerCategory,\n creationStatus: creationStatus\n};\n\nvar _excluded$2 = [\"onSuccess\"],\n _excluded2$1 = [\"onSuccess\"];\nfunction ownKeys$a(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$a(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$a(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$a(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar useFetchMembers = function useFetchMembers() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return useQuery(_objectSpread$a(_objectSpread$a({\n queryKey: [QUERY_KEYS.TEAMS, params],\n queryFn: function queryFn() {\n return teamsApi.fetch(params);\n },\n select: identity,\n placeholderData: keepPreviousData\n }, options), {}, {\n refetchOnWindowFocus: false\n }));\n};\nvar useFetchMembersCountsPerCategory = function useFetchMembersCountsPerCategory() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return useQuery(_objectSpread$a(_objectSpread$a({\n queryKey: [QUERY_KEYS.TEAMS],\n queryFn: teamsApi.fetchCountsPerCategory,\n select: identity,\n placeholderData: keepPreviousData\n }, options), {}, {\n refetchOnWindowFocus: false\n }));\n};\nvar useCreateMember = function useCreateMember() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return useMutation(_objectSpread$a({\n mutationFn: teamsApi.create\n }, options));\n};\nvar useUpdateMember = function useUpdateMember(_ref) {\n var _onSuccess = _ref.onSuccess,\n options = _objectWithoutProperties(_ref, _excluded$2);\n return useMutationWithInvalidation(function (_ref2) {\n var id = _ref2.id,\n payload = _ref2.payload;\n return teamsApi.update(id, payload);\n }, _objectSpread$a({\n keysToInvalidate: [[QUERY_KEYS.TEAMS], [QUERY_KEYS.TEAMS_DEPENDENCIES]],\n onSuccess: function onSuccess() {\n _onSuccess === null || _onSuccess === void 0 || _onSuccess();\n }\n }, options));\n};\nvar useBulkUpdateMembers = function useBulkUpdateMembers(_ref3) {\n var _onSuccess2 = _ref3.onSuccess,\n options = _objectWithoutProperties(_ref3, _excluded2$1);\n return useMutationWithInvalidation(teamsApi.bulkUpdate, _objectSpread$a({\n keysToInvalidate: [[QUERY_KEYS.TEAMS], [QUERY_KEYS.TEAMS_DEPENDENCIES]],\n onSuccess: function onSuccess() {\n _onSuccess2 === null || _onSuccess2 === void 0 || _onSuccess2();\n }\n }, options));\n};\nvar refetchMembers = function refetchMembers() {\n queryClient.invalidateQueries({\n queryKey: [QUERY_KEYS.TEAMS]\n });\n queryClient.invalidateQueries({\n queryKey: [QUERY_KEYS.TEAMS_DEPENDENCIES]\n });\n};\nvar useFetchFilterOptions = function useFetchFilterOptions(_ref4) {\n var _ref4$params = _ref4.params,\n params = _ref4$params === void 0 ? {} : _ref4$params,\n _ref4$options = _ref4.options,\n options = _ref4$options === void 0 ? {} : _ref4$options;\n return useQuery(_objectSpread$a(_objectSpread$a({\n queryKey: [QUERY_KEYS.TEAMS_DEPENDENCIES, params],\n queryFn: function queryFn() {\n return teamsApi.fetchFilterOptions(params);\n },\n select: identity\n }, options), {}, {\n refetchOnWindowFocus: false\n }));\n};\nvar useMembersCreationStatus = function useMembersCreationStatus(jobId, options) {\n return useQuery(_objectSpread$a({\n queryKey: [QUERY_KEYS.CREATION_STATUS, jobId],\n queryFn: function queryFn() {\n return teamsApi.creationStatus(jobId);\n }\n }, options));\n};\n\nvar _getQueryParams = getQueryParams(),\n page = _getQueryParams.page,\n pageSize = _getQueryParams.pageSize;\nvar DEFAULT_RADIX = 10;\nvar DEFAULT_IS_OPEN_VALUES = {\n menuBar: false,\n manageMember: false,\n alert: false\n};\nvar DEFAULT_FILTER_VALUES = {\n page: clamp(1, Infinity, parseInt(page)) || DEFAULT_PAGE_INDEX,\n pageSize: clamp(10, 100, parseInt(pageSize)) || DEFAULT_PAGE_SIZE$1,\n sortBy: \"\",\n orderBy: \"\",\n neetoFilters: []\n};\nvar DEFAULT_SELECTED_ROWS = {\n active: [],\n emails: [],\n keys: [],\n displayNames: []\n};\nvar TEAM_MEMBERS_HIDDEN_COLUMNS = \"TEAM_MEMBERS_TABLE_HIDDEN_COLUMNS\";\n\nfunction ownKeys$9(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$9(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$9(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$9(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar MenuItem$2 = Dropdown.MenuItem;\nvar renderNameColumn = function renderNameColumn(_ref) {\n var config = _ref.config,\n handleUpdateRole = _ref.handleUpdateRole,\n handleUpdateStatus = _ref.handleUpdateStatus,\n tableData = _ref.tableData;\n var name = tableData.displayName,\n imageUrl = tableData.profileImageUrl,\n subscriptionPlan = tableData.subscriptionPlan;\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-members-table__wrapper\",\n children: [/*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-members-table__column\",\n children: [/*#__PURE__*/jsx(Avatar, {\n size: \"medium\",\n user: {\n name: name,\n imageUrl: imageUrl\n }\n }), /*#__PURE__*/jsx(Typography, {\n \"data-cy\": \"ntm-member-name-\".concat(hyphenize(name)),\n style: \"body2\",\n children: name\n }), subscriptionPlan === SUBSCRIPTION_PLANS.PRO && /*#__PURE__*/jsx(Tag, {\n className: \"neeto-ui-text-transform-uppercase\",\n \"data-cy\": \"ntm-member-subscription-plan-tag\",\n label: i18next.t(\"neetoTeamMembers.common.pro\"),\n style: \"info\",\n type: \"outline\"\n })]\n }), renderDropdownButton({\n config: config,\n handleUpdateRole: handleUpdateRole,\n handleUpdateStatus: handleUpdateStatus,\n tableData: tableData\n })]\n });\n};\nvar renderDropdownButton = function renderDropdownButton(_ref2) {\n var _config$table, _config$table$dropdow;\n var config = _ref2.config,\n handleUpdateRole = _ref2.handleUpdateRole,\n handleUpdateStatus = _ref2.handleUpdateStatus,\n tableData = _ref2.tableData;\n return /*#__PURE__*/jsx(MoreDropdown, {\n dropdownProps: {\n appendTo: function appendTo() {\n return document.body;\n },\n strategy: \"fixed\"\n },\n isDisabled: not(config.permissions.update),\n dropdownButtonProps: {\n className: \"flex-shrink-0\",\n \"data-cy\": \"ntm-members-table-row-dropdown-button\",\n tooltipProps: {\n content: i18next.t(\"neetoTeamMembers.tooltips.noPermissionToEditMembers\"),\n disabled: config.permissions.update,\n position: \"top\"\n }\n },\n menuTopChildren: /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(MenuItem$2.Button, {\n className: \"ntm-dropdown__button\",\n \"data-cy\": \"ntm-edit-member-button\",\n size: \"small\",\n onClick: function onClick() {\n return handleUpdateRole(tableData);\n },\n children: i18next.t(\"neetoTeamMembers.common.edit\")\n }), config === null || config === void 0 || (_config$table = config.table) === null || _config$table === void 0 || (_config$table$dropdow = _config$table.dropdownProps) === null || _config$table$dropdow === void 0 ? void 0 : _config$table$dropdow.call(_config$table, tableData), /*#__PURE__*/jsx(MenuItem$2.Button, {\n className: \"ntm-dropdown__button\",\n \"data-cy\": \"ntm-deactivate-member-button\",\n size: \"small\",\n onClick: function onClick() {\n return handleUpdateStatus(tableData);\n },\n children: i18next.t(\"neetoTeamMembers.common.remove\")\n })]\n })\n });\n};\nvar getDefaultAlertTitle = function getDefaultAlertTitle(_ref3) {\n var member = _ref3.member;\n return member !== null && member !== void 0 && member.active ? i18next.t(\"neetoTeamMembers.common.remove_\", {\n what: taxonomies.member.singular\n }) : i18next.t(\"neetoTeamMembers.common.activate_\", {\n what: taxonomies.member.singular\n });\n};\nvar getDefaultAlertMessage = function getDefaultAlertMessage(_ref4) {\n var member = _ref4.member;\n return /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.alerts.messages.removeMember\",\n values: _objectSpread$9(_objectSpread$9({}, SINGULAR), {}, {\n person: member === null || member === void 0 ? void 0 : member.displayName\n })\n });\n};\nvar getDefaultColumns = function getDefaultColumns(_ref5) {\n var config = _ref5.config,\n handleUpdateRole = _ref5.handleUpdateRole,\n handleUpdateStatus = _ref5.handleUpdateStatus,\n otherColumns = _ref5.otherColumns,\n isSize = _ref5.isSize;\n return [{\n dataIndex: \"name\",\n key: \"name\",\n width: 300,\n fixed: isNotEmpty(otherColumns) && !isSize(\"mobile\"),\n render: function render(_, tableData) {\n return renderNameColumn({\n config: config,\n handleUpdateRole: handleUpdateRole,\n handleUpdateStatus: handleUpdateStatus,\n tableData: tableData\n });\n },\n sorter: true,\n title: i18next.t(\"neetoTeamMembers.common.name\"),\n isHidable: false\n }, {\n dataIndex: \"email\",\n key: \"email\",\n sorter: true,\n width: 350,\n title: i18next.t(\"neetoTeamMembers.common.email\", SINGULAR)\n }, {\n dataIndex: \"role\",\n key: \"organization_role\",\n sorter: true,\n width: 200,\n title: i18next.t(\"neetoTeamMembers.common.role\", SINGULAR)\n }, {\n dataIndex: \"subscriptionPlan\",\n key: \"subscription_plan\",\n hidden: true,\n isHidable: false,\n title: \"\"\n }];\n};\nvar removeExcludedRole = curry(function (excludedRoles, role) {\n return !(excludedRoles !== null && excludedRoles !== void 0 && excludedRoles.includes(role === null || role === void 0 ? void 0 : role.name));\n});\nvar getSubscriptionLabelAndValue = function getSubscriptionLabelAndValue() {\n return Object.entries(SUBSCRIPTION_PLANS).map(function (_ref6) {\n var _ref7 = _slicedToArray(_ref6, 2),\n key = _ref7[0],\n value = _ref7[1];\n return {\n label: key,\n value: value\n };\n });\n};\nvar getColumnData = function getColumnData(_ref8) {\n var _config$otherColumns;\n var config = _ref8.config,\n handleUpdateRole = _ref8.handleUpdateRole,\n handleUpdateStatus = _ref8.handleUpdateStatus,\n isSize = _ref8.isSize;\n var otherColumns = (_config$otherColumns = config === null || config === void 0 ? void 0 : config.otherColumns) !== null && _config$otherColumns !== void 0 ? _config$otherColumns : [];\n var defaultColumns = getDefaultColumns({\n config: config,\n handleUpdateRole: handleUpdateRole,\n handleUpdateStatus: handleUpdateStatus,\n otherColumns: otherColumns,\n isSize: isSize\n });\n var columns = defaultColumns.map(function (column) {\n var otherColumn = otherColumns.find(function (_ref9) {\n var dataIndex = _ref9.dataIndex;\n return identical(dataIndex, column.dataIndex);\n });\n return otherColumn || column;\n });\n otherColumns.forEach(function (otherColumn) {\n var column = columns.find(function (_ref10) {\n var dataIndex = _ref10.dataIndex;\n return identical(dataIndex, otherColumn.dataIndex);\n });\n if (!column) columns.push(otherColumn);\n });\n return columns;\n};\nvar renderUpdateAlert = function renderUpdateAlert(field, props) {\n var _config$alert;\n var config = props.config,\n member = props.member;\n if (config !== null && config !== void 0 && (_config$alert = config.alert) !== null && _config$alert !== void 0 && _config$alert[field]) {\n var _config$alert2;\n return (_config$alert2 = config.alert) === null || _config$alert2 === void 0 ? void 0 : _config$alert2[field]({\n active: member === null || member === void 0 ? void 0 : member.active,\n id: member === null || member === void 0 ? void 0 : member.id,\n name: member === null || member === void 0 ? void 0 : member.displayName\n });\n }\n return field === \"title\" ? getDefaultAlertTitle(props) : getDefaultAlertMessage(props);\n};\nvar handlePageChange = function handlePageChange(setFilters, history) {\n return function (page, pageSize) {\n var searchParams = getQueryParams({\n toCamelCase: false\n });\n history.replace(buildUrl(window.location.pathname, mergeLeft({\n page: page,\n page_size: pageSize\n }, searchParams)));\n setFilters(mergeLeft({\n page: page,\n pageSize: pageSize\n }));\n };\n};\nvar renderPaginationProps = function renderPaginationProps(size) {\n return {\n pageSize: parseInt(size, DEFAULT_RADIX)\n };\n};\nvar defaultNeetoFiltersColumns = function defaultNeetoFiltersColumns() {\n return [{\n key: \"email\",\n label: i18next.t(\"neetoTeamMembers.common.email\", SINGULAR),\n model: \"User\",\n node: \"email\",\n showRuleSelector: true,\n type: \"text\"\n }, {\n key: \"name\",\n label: i18next.t(\"neetoTeamMembers.common.name\"),\n model: \"User\",\n node: \"first_name,last_name\",\n type: \"text\",\n values: \"\"\n }, {\n key: \"role\",\n label: i18next.t(\"neetoTeamMembers.common.role\", SINGULAR),\n model: \"OrganizationRole\",\n node: \"organization_role.name\",\n type: \"multi_option\",\n values: []\n }, {\n key: \"subscription_plan\",\n label: i18next.t(\"neetoTeamMembers.common.subscriptionPlan\", SINGULAR),\n model: \"User\",\n node: \"subscription_plan\",\n type: \"single_option\",\n values: []\n }];\n};\nvar buildFilterColumns = function buildFilterColumns(_ref11) {\n var _ref11$options = _ref11.options,\n _ref11$options$emails = _ref11$options.emails,\n emails = _ref11$options$emails === void 0 ? [] : _ref11$options$emails,\n _ref11$options$organi = _ref11$options.organizationRoles,\n organizationRoles = _ref11$options$organi === void 0 ? [] : _ref11$options$organi,\n _ref11$emailConfig = _ref11.emailConfig,\n setSearchTerm = _ref11$emailConfig.setSearchTerm,\n isLoading = _ref11$emailConfig.isLoading;\n var columnValues = {\n email: emails.map(toLabelAndValue),\n role: organizationRoles.map(toLabelAndValue),\n subscription_plan: getSubscriptionLabelAndValue()\n };\n return defaultNeetoFiltersColumns().map(function (column) {\n var values = columnValues[column.key];\n if (column.key === \"role\") return assoc(\"values\", values, column);\n var emailConfig = {\n values: values,\n isLoading: isLoading,\n onInputChange: setSearchTerm\n };\n return mergeLeft(emailConfig, column);\n });\n};\nvar getFilteredRoles = function getFilteredRoles() {\n var roles = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return filter(removeExcludedRole(config === null || config === void 0 ? void 0 : config.excludedRoles), roles);\n};\nvar generateNoDataContent = function generateNoDataContent(_ref12) {\n var buttonProps = _ref12.buttonProps;\n var disabled = buttonProps.disabled,\n onClick = buttonProps.onClick;\n var noDataTitleTranslationKey = \"notFound_\";\n var noDataTitle = i18next.t(\"neetoTeamMembers.common.\".concat(noDataTitleTranslationKey), {\n what: taxonomies.member.plural\n });\n var noDataButtonProps = {\n \"data-cy\": \"ntm-add-member-button\",\n disabled: disabled,\n label: i18next.t(\"neetoTeamMembers.common.addNew_\", {\n what: taxonomies.member.singular\n }),\n onClick: onClick\n };\n return {\n noDataTitle: noDataTitle,\n noDataButtonProps: noDataButtonProps\n };\n};\n\nfunction ownKeys$8(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$8(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$8(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$8(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar useFilters = function useFilters(_ref) {\n var _config$filterColumns;\n var config = _ref.config;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useQueryParams = useQueryParams(),\n _useQueryParams$searc = _useQueryParams.searchTerm,\n searchTerm = _useQueryParams$searc === void 0 ? \"\" : _useQueryParams$searc;\n var searchKeywordProps = {\n node: \"first_name,last_name,email\",\n value: searchTerm,\n key: \"search_term\"\n };\n var _useState = useState(\"\"),\n _useState2 = _slicedToArray(_useState, 2),\n emailSearchTerm = _useState2[0],\n setEmailSearchTerm = _useState2[1];\n var defaultNeetoFilters = buildFiltersFromURL([].concat(_toConsumableArray((_config$filterColumns = config === null || config === void 0 ? void 0 : config.filterColumns) !== null && _config$filterColumns !== void 0 ? _config$filterColumns : defaultNeetoFiltersColumns()), [searchKeywordProps]));\n var _useState3 = useState(_objectSpread$8(_objectSpread$8(_objectSpread$8({}, DEFAULT_FILTER_VALUES), config === null || config === void 0 ? void 0 : config.defaultFilterValues), {}, {\n neetoFilters: defaultNeetoFilters\n })),\n _useState4 = _slicedToArray(_useState3, 2),\n filters = _useState4[0],\n setFilters = _useState4[1];\n var resetPage = useFuncDebounce(function () {\n return setFilters(mergeLeft({\n page: DEFAULT_PAGE_INDEX\n }));\n });\n var debouncedEmailSearchTerm = useDebounce(emailSearchTerm, 750);\n var shouldFetchFilterOptions = isNil(config === null || config === void 0 ? void 0 : config.filterColumns);\n var _useFetchFilterOption = useFetchFilterOptions({\n params: {\n emailSearchTerm: debouncedEmailSearchTerm\n },\n options: {\n enabled: shouldFetchFilterOptions\n }\n }),\n _useFetchFilterOption2 = _useFetchFilterOption.data,\n filterOptions = _useFetchFilterOption2 === void 0 ? {} : _useFetchFilterOption2,\n isFilterOptionsLoading = _useFetchFilterOption.isLoading;\n var filterColumns = shouldFetchFilterOptions ? buildFilterColumns({\n options: filterOptions,\n emailConfig: {\n setSearchTerm: setEmailSearchTerm,\n isLoading: isFilterOptionsLoading\n }\n }) : config === null || config === void 0 ? void 0 : config.filterColumns;\n var searchProps = useMemo(function () {\n return {\n \"data-cy\": \"ntm-search-members-input\",\n placeholder: t(\"neetoTeamMembers.common.search_\", {\n what: taxonomies.member.plural\n }),\n onChange: resetPage\n };\n }, []);\n return {\n filters: filters,\n setFilters: setFilters,\n filterColumns: filterColumns,\n searchProps: searchProps,\n searchKeywordProps: searchKeywordProps\n };\n};\n\nfunction ownKeys$7(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$7(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$7(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$7(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar useTeams = function useTeams(_ref) {\n var config = _ref.config,\n filters = _ref.filters,\n setFilters = _ref.setFilters,\n updateMember = _ref.updateMember;\n var history = useHistory();\n var _useState = useState(null),\n _useState2 = _slicedToArray(_useState, 2),\n selectedMember = _useState2[0],\n setSelectedMember = _useState2[1];\n var _useState3 = useState(DEFAULT_IS_OPEN_VALUES),\n _useState4 = _slicedToArray(_useState3, 2),\n isOpen = _useState4[0],\n setIsOpen = _useState4[1];\n var _useState5 = useState(DEFAULT_SELECTED_ROWS),\n _useState6 = _slicedToArray(_useState5, 2),\n selectedRows = _useState6[0],\n setSelectedRows = _useState6[1];\n var handleRemoveMember = function handleRemoveMember() {\n var _globalProps$user;\n var id = selectedMember.id,\n email = selectedMember.email;\n var payload = {\n active: false\n };\n updateMember({\n id: id,\n payload: payload\n });\n if (((_globalProps$user = globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.email) === email) {\n window.location.pathname = \"/\";\n }\n };\n var handleUpdateStatus = function handleUpdateStatus(user) {\n setSelectedMember(user);\n setIsOpen(assoc(\"alert\", true));\n };\n var handleUpdateRole = function handleUpdateRole(user) {\n setSelectedMember(user);\n setIsOpen(assoc(\"manageMember\", true));\n };\n var handleAlertClose = function handleAlertClose() {\n setIsOpen(assoc(\"alert\", false));\n setSelectedMember(null);\n };\n var handlePaneClose = function handlePaneClose(_ref2) {\n var _globalProps$user2;\n var submitted = _ref2.submitted;\n setIsOpen(assoc(\"manageMember\", false));\n if (submitted && ((_globalProps$user2 = globalProps.user) === null || _globalProps$user2 === void 0 ? void 0 : _globalProps$user2.email) === (selectedMember === null || selectedMember === void 0 ? void 0 : selectedMember.email)) {\n window.location.pathname = \"/\";\n }\n setSelectedMember(null);\n };\n var resetSelectedRows = function resetSelectedRows() {\n return setSelectedRows(DEFAULT_SELECTED_ROWS);\n };\n var handleMemberFilterChange = function handleMemberFilterChange() {\n setSelectedRows(DEFAULT_SELECTED_ROWS);\n handlePageChange(setFilters, history)(DEFAULT_PAGE_INDEX, filters.pageSize);\n };\n var handleTableChange = function handleTableChange(_, __, sorter) {\n setFilters(mergeLeft({\n sortBy: sorter.field,\n orderBy: sorter.order\n }));\n };\n var handleRowSelect = function handleRowSelect(keys, rowData) {\n var _config$table, _config$table$onRowSe;\n var rows = {\n active: pluck(\"active\", rowData),\n displayNames: pluck(\"displayName\", rowData),\n emails: pluck(\"email\", rowData),\n subscriptionPlans: pluck(\"subscriptionPlan\", rowData),\n keys: keys\n };\n setSelectedRows(_objectSpread$7({}, rows));\n config === null || config === void 0 || (_config$table = config.table) === null || _config$table === void 0 || (_config$table$onRowSe = _config$table.onRowSelect) === null || _config$table$onRowSe === void 0 || _config$table$onRowSe.call(_config$table, {\n rows: rows,\n resetSelectedRows: resetSelectedRows,\n rowData: rowData\n });\n };\n return {\n handleAlertClose: handleAlertClose,\n handleMemberFilterChange: handleMemberFilterChange,\n handlePaneClose: handlePaneClose,\n handleRowSelect: handleRowSelect,\n handleTableChange: handleTableChange,\n handleRemoveMember: handleRemoveMember,\n handleUpdateRole: handleUpdateRole,\n handleUpdateStatus: handleUpdateStatus,\n isOpen: isOpen,\n selectedMember: selectedMember,\n selectedRows: selectedRows,\n setIsOpen: setIsOpen,\n setSelectedRows: setSelectedRows\n };\n};\n\nvar FIXED_COLUMNS = [\"name\", \"actions\"];\nvar MANAGE_ROLES_BUTTON_LABEL = t$1(\"neetoTeamMembers.labels.manageRole\", PLURAL);\n\nfunction ownKeys$6(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$6(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$6(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$6(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar Header$2 = function Header(_ref) {\n var isCreatePermissionGranted = _ref.isCreatePermissionGranted,\n otherActionBlock = _ref.otherActionBlock,\n _ref$onClick = _ref.onClick,\n onClick = _ref$onClick === void 0 ? noop : _ref$onClick,\n rolesButtonProps = _ref.rolesButtonProps;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var isRolesButtonVisible = !!rolesButtonProps;\n var isOtherActionBlockVisible = !!otherActionBlock;\n return /*#__PURE__*/jsxs(Fragment, {\n children: [isOtherActionBlockVisible && otherActionBlock(), isRolesButtonVisible ? /*#__PURE__*/jsx(Button, _objectSpread$6({\n \"data-cy\": \"ntm-manage-roles-button\",\n label: MANAGE_ROLES_BUTTON_LABEL,\n style: \"secondary\"\n }, rolesButtonProps)) : null, /*#__PURE__*/jsx(Tooltip, {\n content: t(\"neetoTeamMembers.tooltips.noPermissionToAddMember\"),\n disabled: isCreatePermissionGranted,\n position: \"bottom\",\n children: /*#__PURE__*/jsx(\"span\", {\n children: /*#__PURE__*/jsx(Button, {\n onClick: onClick,\n \"data-cy\": \"ntm-add-member-button\",\n disabled: !isCreatePermissionGranted,\n label: t(\"neetoTeamMembers.common.addNew_\", {\n what: taxonomies.member.singular\n })\n })\n })\n })]\n });\n};\nvar HeaderActionBlock = /*#__PURE__*/memo(Header$2);\n\nvar filterBySearchTerm = function filterBySearchTerm(searchTerm, roles) {\n return filter(function (_ref) {\n var name = _ref.name;\n return includes(trim(toLower(searchTerm)), trim(toLower(name)));\n }, roles);\n};\nvar getDeactivatedButtonVisible = function getDeactivatedButtonVisible(selectedRows, config) {\n var _config$hiddenBulkAct;\n return selectedRows.active.some(function (active) {\n return active === true;\n }) && !(config !== null && config !== void 0 && (_config$hiddenBulkAct = config.hiddenBulkActions) !== null && _config$hiddenBulkAct !== void 0 && _config$hiddenBulkAct.includes(\"remove\"));\n};\n\nvar Menu$1 = Dropdown.Menu,\n MenuItem$1 = Dropdown.MenuItem;\nvar RolesDropdown = function RolesDropdown(_ref) {\n var _ref$disabled = _ref.disabled,\n disabled = _ref$disabled === void 0 ? false : _ref$disabled,\n hasUpdatePermission = _ref.hasUpdatePermission,\n _ref$isSearchable = _ref.isSearchable,\n isSearchable = _ref$isSearchable === void 0 ? false : _ref$isSearchable,\n _ref$roles = _ref.roles,\n roles = _ref$roles === void 0 ? [] : _ref$roles,\n _ref$selectedMembersC = _ref.selectedMembersCount,\n selectedMembersCount = _ref$selectedMembersC === void 0 ? 0 : _ref$selectedMembersC,\n setAlertType = _ref.setAlertType,\n setBulkUpdateRole = _ref.setBulkUpdateRole;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isDropdownOpen = _useState2[0],\n setIsDropdownOpen = _useState2[1];\n var _useState3 = useState(\"\"),\n _useState4 = _slicedToArray(_useState3, 2),\n searchTerm = _useState4[0],\n setSearchTerm = _useState4[1];\n var filteredRoles = filterBySearchTerm(searchTerm, roles);\n var isUpdatingAllowed = hasUpdatePermission && !disabled;\n var handleSearch = function handleSearch(_ref2) {\n var value = _ref2.target.value;\n return setSearchTerm(value);\n };\n var handleSelectRole = function handleSelectRole(role) {\n setBulkUpdateRole(role);\n setAlertType(\"role\");\n setIsDropdownOpen(false);\n };\n var handleOnClose = function handleOnClose() {\n setSearchTerm(\"\");\n setIsDropdownOpen(false);\n };\n var handleClick = function handleClick(event) {\n event.stopPropagation();\n setIsDropdownOpen(!isDropdownOpen);\n };\n return /*#__PURE__*/jsx(Tooltip, {\n disabled: isUpdatingAllowed,\n position: \"top\",\n content: t(\"neetoTeamMembers.tooltips.activateUserToEdit\", {\n count: selectedMembersCount\n }),\n children: /*#__PURE__*/jsx(\"span\", {\n children: /*#__PURE__*/jsx(Dropdown, {\n buttonStyle: \"secondary\",\n closeOnSelect: false,\n \"data-cy\": \"ntm-members-roles-update-dropdown-button\",\n disabled: !isUpdatingAllowed,\n isOpen: isUpdatingAllowed && isDropdownOpen,\n position: \"auto-end\",\n customTarget: /*#__PURE__*/jsx(MenuItem$1.Button, {\n disabled: !isUpdatingAllowed,\n suffix: /*#__PURE__*/jsx(Right$1, {\n size: 16\n }),\n children: t(\"neetoTeamMembers.buttons.changeRole\")\n }),\n onClick: handleClick,\n onClose: handleOnClose,\n children: /*#__PURE__*/jsxs(Menu$1, {\n children: [isSearchable && /*#__PURE__*/jsx(\"div\", {\n className: \"neeto-ui-px-3 neeto-ui-py-2\",\n onClick: function onClick(event) {\n event.stopPropagation();\n },\n children: /*#__PURE__*/jsx(Input$1, {\n \"data-cy\": \"ntm-members-roles-search-input\",\n prefix: /*#__PURE__*/jsx(Search, {}),\n type: \"search\",\n value: searchTerm,\n placeholder: t(\"neetoTeamMembers.placeholders.searchRole\", PLURAL),\n onChange: handleSearch\n })\n }), isNotEmpty(filteredRoles) ? filteredRoles.map(function (_ref3) {\n var id = _ref3.id,\n name = _ref3.name;\n return /*#__PURE__*/jsx(MenuItem$1.Button, {\n onClick: function onClick() {\n return handleSelectRole(name);\n },\n children: name\n }, id);\n }) : /*#__PURE__*/jsx(\"div\", {\n className: \"neeto-ui-flex neeto-ui-justify-center neeto-ui-p-1\",\n children: /*#__PURE__*/jsx(Typography, {\n className: \"neeto-ui-text-gray-700\",\n style: \"body2\",\n children: t(\"neetoTeamMembers.helpers.noRolesFound\")\n })\n })]\n })\n })\n })\n });\n};\n\nfunction ownKeys$5(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$5(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$5(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$5(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar Menu = Dropdown.Menu,\n MenuItem = Dropdown.MenuItem;\nvar Left = function Left(_ref) {\n var _ref2, _selectedRows$keys, _selectedRows$active, _config$hiddenBulkAct, _config$otherBulkActi;\n var config = _ref.config,\n filteredCount = _ref.filteredCount,\n roles = _ref.roles,\n selectedRows = _ref.selectedRows,\n setSelectedRows = _ref.setSelectedRows;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var isUpdatePermissionGranted = config.permissions.update;\n var _useState = useState(\"\"),\n _useState2 = _slicedToArray(_useState, 2),\n alertType = _useState2[0],\n setAlertType = _useState2[1];\n var _useState3 = useState(\"\"),\n _useState4 = _slicedToArray(_useState3, 2),\n bulkUpdateRole = _useState4[0],\n setBulkUpdateRole = _useState4[1];\n var hasSelectedRows = isNotEmpty(selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.keys);\n var selectedMembersCountValues = {\n count: (_ref2 = (selectedRows === null || selectedRows === void 0 || (_selectedRows$keys = selectedRows.keys) === null || _selectedRows$keys === void 0 ? void 0 : _selectedRows$keys.length) || filteredCount) !== null && _ref2 !== void 0 ? _ref2 : 0,\n metaName: hasSelectedRows && (selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.keys.length) > 1 ? taxonomies.member.plural : taxonomies.member.singular,\n totalCount: filteredCount !== null && filteredCount !== void 0 ? filteredCount : 0\n };\n var hasDeactivateMembers = selectedRows === null || selectedRows === void 0 || (_selectedRows$active = selectedRows.active) === null || _selectedRows$active === void 0 ? void 0 : _selectedRows$active.some(function (active) {\n return !active;\n });\n var _useBulkUpdateMembers = useBulkUpdateMembers({\n onSuccess: function onSuccess() {\n var _config$bulkUpdateMem;\n setSelectedRows(DEFAULT_SELECTED_ROWS);\n config === null || config === void 0 || (_config$bulkUpdateMem = config.bulkUpdateMembers) === null || _config$bulkUpdateMem === void 0 || (_config$bulkUpdateMem = _config$bulkUpdateMem.onSuccess) === null || _config$bulkUpdateMem === void 0 || _config$bulkUpdateMem.callback();\n }\n }),\n bulkUpdateMember = _useBulkUpdateMembers.mutate;\n var handleDeactivateMembers = function handleDeactivateMembers() {\n var _selectedRows$emails, _globalProps$user;\n bulkUpdateMember({\n users: {\n active: false,\n emails: selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.emails\n }\n });\n if (selectedRows !== null && selectedRows !== void 0 && (_selectedRows$emails = selectedRows.emails) !== null && _selectedRows$emails !== void 0 && _selectedRows$emails.includes((_globalProps$user = globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.email)) {\n window.location.pathname = \"/\";\n }\n };\n var resetSelectedRows = function resetSelectedRows() {\n return setSelectedRows(DEFAULT_SELECTED_ROWS);\n };\n var handleRoleChange = function handleRoleChange(role) {\n var _selectedRows$emails2, _globalProps$user2;\n bulkUpdateMember({\n users: {\n active: true,\n emails: selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.emails,\n organization_role: role\n }\n });\n if (selectedRows !== null && selectedRows !== void 0 && (_selectedRows$emails2 = selectedRows.emails) !== null && _selectedRows$emails2 !== void 0 && _selectedRows$emails2.includes((_globalProps$user2 = globalProps.user) === null || _globalProps$user2 === void 0 ? void 0 : _globalProps$user2.email)) {\n window.location.pathname = \"/\";\n }\n };\n var alertTypes = [{\n message: \"neetoTeamMembers.alerts.messages.removeMember\",\n onSubmit: handleDeactivateMembers,\n title: t(\"neetoTeamMembers.common.remove_\", {\n what: selectedMembersCountValues === null || selectedMembersCountValues === void 0 ? void 0 : selectedMembersCountValues.metaName\n }),\n type: \"remove\"\n }, {\n message: \"neetoTeamMembers.alerts.messages.changeRole\",\n onSubmit: handleRoleChange,\n title: t(\"neetoTeamMembers.common.changeRole\"),\n type: \"role\"\n }];\n var selectedAlert = findBy({\n type: alertType\n }, alertTypes);\n var handleAlertClose = function handleAlertClose() {\n selectedAlert.onSubmit(bulkUpdateRole);\n setAlertType(\"\");\n };\n var getButtonLabel = function getButtonLabel(type) {\n if (type === \"role\") {\n return t(\"neetoTeamMembers.buttons.changeRole\");\n }\n return t(\"neetoTeamMembers.buttons.remove\");\n };\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"neeto-ui-flex neeto-ui-items-center neeto-ui-gap-4\",\n children: [/*#__PURE__*/jsx(Typography, {\n component: \"h4\",\n \"data-cy\": \"ntm-filtered-members-count\",\n style: \"h4\",\n children: /*#__PURE__*/jsx(Trans, {\n components: {\n span: /*#__PURE__*/jsx(\"span\", {\n className: \"neeto-ui-text-gray-600\"\n })\n },\n values: selectedMembersCountValues,\n i18nKey: hasSelectedRows ? \"neetoTeamMembers.helpers.selectedMembersCount\" : \"neetoTeamMembers.helpers.metaNameWithCount\"\n })\n }), hasSelectedRows && /*#__PURE__*/jsx(Tooltip, {\n content: t(\"neetoTeamMembers.tooltips.noPermissionToEditMembers\"),\n disabled: isUpdatePermissionGranted,\n position: \"top\",\n children: /*#__PURE__*/jsx(\"span\", {\n children: /*#__PURE__*/jsx(Dropdown, {\n buttonStyle: \"secondary\",\n \"data-cy\": \"ntm-members-take-action-dropdown-button\",\n disabled: !isUpdatePermissionGranted,\n label: t(\"neetoTeamMembers.common.takeAction\"),\n children: /*#__PURE__*/jsxs(Menu, {\n children: [getDeactivatedButtonVisible(selectedRows, config) && /*#__PURE__*/jsx(MenuItem.Button, {\n \"data-cy\": \"ntm-deactivate-members-button\",\n disabled: !isUpdatePermissionGranted,\n onClick: function onClick() {\n return setAlertType(\"remove\");\n },\n children: t(\"neetoTeamMembers.common.remove\")\n }), !(config !== null && config !== void 0 && (_config$hiddenBulkAct = config.hiddenBulkActions) !== null && _config$hiddenBulkAct !== void 0 && _config$hiddenBulkAct.includes(\"role\")) && /*#__PURE__*/jsx(RolesDropdown, {\n roles: roles,\n setAlertType: setAlertType,\n setBulkUpdateRole: setBulkUpdateRole,\n disabled: hasDeactivateMembers,\n hasUpdatePermission: isUpdatePermissionGranted,\n selectedMembersCount: selectedMembersCountValues === null || selectedMembersCountValues === void 0 ? void 0 : selectedMembersCountValues.count\n }), config === null || config === void 0 || (_config$otherBulkActi = config.otherBulkActions) === null || _config$otherBulkActi === void 0 ? void 0 : _config$otherBulkActi.call(config, resetSelectedRows, selectedRows)]\n })\n })\n })\n }), /*#__PURE__*/jsx(Alert, {\n isOpen: selectedAlert,\n submitButtonLabel: getButtonLabel(selectedAlert === null || selectedAlert === void 0 ? void 0 : selectedAlert.type),\n title: selectedAlert === null || selectedAlert === void 0 ? void 0 : selectedAlert.title,\n message: /*#__PURE__*/jsx(Trans, {\n i18nKey: selectedAlert === null || selectedAlert === void 0 ? void 0 : selectedAlert.message,\n values: _objectSpread$5(_objectSpread$5({}, selectedMembersCountValues), {}, {\n person: selectedRows.displayNames[0],\n role: bulkUpdateRole\n })\n }),\n onClose: function onClose() {\n return setAlertType(\"\");\n },\n onSubmit: handleAlertClose\n })]\n });\n};\nvar Right = withT(function (_ref3) {\n var t = _ref3.t,\n columns = _ref3.columns,\n filterColumns = _ref3.filterColumns,\n handleNeetoFilterChange = _ref3.handleNeetoFilterChange,\n setIsFiltersPaneOpen = _ref3.setIsFiltersPaneOpen,\n isFiltersPaneOpen = _ref3.isFiltersPaneOpen,\n searchKeywordProps = _ref3.searchKeywordProps;\n return /*#__PURE__*/jsx(SubHeader$1.RightBlock, {\n columnsButtonProps: {\n columnData: columns,\n fixedColumns: FIXED_COLUMNS,\n localStorageKey: TEAM_MEMBERS_HIDDEN_COLUMNS,\n noColumnMessage: t(\"neetoTeamMembers.columns.noColumnsFound\"),\n searchProps: {\n placeholder: t(\"neetoTeamMembers.columns.search\")\n }\n },\n filterProps: {\n columns: filterColumns,\n isOpen: isFiltersPaneOpen,\n setIsOpen: setIsFiltersPaneOpen,\n onChange: handleNeetoFilterChange,\n keyword: searchKeywordProps\n }\n });\n});\nvar SubHeader = {\n Left: Left,\n Right: Right\n};\n\nfunction ownKeys$4(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar Header = function Header(_ref) {\n var _config$header, _config$header2;\n var config = _ref.config,\n setIsOpen = _ref.setIsOpen,\n searchProps = _ref.searchProps;\n return /*#__PURE__*/jsx(NeetoHeader, _objectSpread$4({\n searchProps: searchProps,\n title: taxonomies.member.plural,\n actionBlock: /*#__PURE__*/jsx(HeaderActionBlock, {\n isCreatePermissionGranted: config.permissions.create,\n otherActionBlock: (_config$header = config.header) === null || _config$header === void 0 ? void 0 : _config$header.otherActionBlock,\n rolesButtonProps: config.rolesButtonProps,\n onClick: function onClick() {\n return setIsOpen(assoc(\"manageMember\", true));\n }\n })\n }, config === null || config === void 0 || (_config$header2 = config.header) === null || _config$header2 === void 0 ? void 0 : _config$header2.otherProps));\n};\nvar Header$1 = /*#__PURE__*/memo(Header);\n\nvar _excluded$1 = [\"className\", \"children\"],\n _excluded2 = [\"className\", \"children\"];\nfunction ownKeys$3(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar PageWrapper = function PageWrapper(_ref) {\n var className = _ref.className,\n children = _ref.children,\n otherProps = _objectWithoutProperties(_ref, _excluded$1);\n return /*#__PURE__*/jsx(\"div\", _objectSpread$3(_objectSpread$3({\n className: className\n }, otherProps), {}, {\n children: children\n }));\n};\nvar Page = function Page(_ref2) {\n var className = _ref2.className,\n children = _ref2.children,\n otherProps = _objectWithoutProperties(_ref2, _excluded2);\n return /*#__PURE__*/jsx(\"div\", _objectSpread$3(_objectSpread$3({\n className: className\n }, otherProps), {}, {\n children: children\n }));\n};\nPage.Header = PageWrapper;\nPage.Body = PageWrapper;\nPage.Footer = PageWrapper;\n\nvar NAME_INPUT_VALIDATION_SCHEMA = {\n firstName: yup.string().trim(t$1(\"neetoTeamMembers.validations.removeSpaces\")).strict(true),\n lastName: yup.string().trim(t$1(\"neetoTeamMembers.validations.removeSpaces\")).strict(true)\n};\nvar ROLES_RADIO_GROUP_VALIDATION_SCHEMA = {\n role: yup.string().required(t$1(\"neetoTeamMembers.validations.roleRequired\"))\n};\nvar APP_ROLES_SCHEMA = {\n appsRoles: yup.array().of(yup.object().shape({\n appName: yup.string(),\n isEnabled: yup[\"boolean\"](),\n role: yup.string().required(t$1(\"neetoTeamMembers.validations.roleRequired\"))\n }))\n};\nvar FILTER_INVALID_EMAILS = {\n label: t$1(\"neetoTeamMembers.validations.filterInvalidEmails\")\n};\nvar COUNTER_PROPS = {\n label: t$1(\"neetoTeamMembers.common.email\", PLURAL),\n startsFrom: 4\n};\nvar DEFAULT_COMPONENT_CONFIG = {\n type: \"pane\",\n isOpen: false,\n className: \"\",\n headerProps: {},\n bodyProps: {},\n footerProps: {}\n};\nvar MEMBERS_FORM_COMPONENT_MAPPER = {\n pane: Pane,\n modal: Modal,\n page: Page\n};\nvar FORM_PAGES = {\n MAIN: \"main\",\n APP_LIST: \"appList\",\n CONFIRMATION: \"confirmation\"\n};\nvar EMAIL_REGEX = new RegExp(\"^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\\\.[A-Z]{2,}$\", \"i\");\n\nvar _globalProps$organiza;\nvar _excluded = [\"appRoles\", \"emails\", \"firstName\", \"lastName\", \"role\"];\nfunction ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar getProductName = function getProductName(activeAppRoles) {\n var _activeAppRoles$;\n return activeAppRoles !== null && activeAppRoles !== void 0 && (_activeAppRoles$ = activeAppRoles[0]) !== null && _activeAppRoles$ !== void 0 && _activeAppRoles$.appName ? t$1(\"neetoTeamMembers.labels.neeto_\", {\n product: activeAppRoles[0].appName\n }) : globalProps.appName;\n};\nvar getActiveRole = function getActiveRole(activeAppRoles, role) {\n var _activeAppRoles$2;\n return (activeAppRoles === null || activeAppRoles === void 0 || (_activeAppRoles$2 = activeAppRoles[0]) === null || _activeAppRoles$2 === void 0 ? void 0 : _activeAppRoles$2.activeRole) || role;\n};\nvar getDefaultRole = function getDefaultRole(roles, currentAppRole, appName) {\n var _globalProps$appName;\n if (appName === ((_globalProps$appName = globalProps.appName) === null || _globalProps$appName === void 0 ? void 0 : _globalProps$appName.substring(5))) {\n return currentAppRole;\n }\n var condition = isAdminRole(currentAppRole);\n var role = _findBy({\n name: condition\n }, roles);\n return role ? role.name : roles[0].name;\n};\nvar generateAppsRolesInitialValue = function generateAppsRolesInitialValue(globalRoles, currentAppRole) {\n var _globalProps$appName2;\n if (!globalRoles) return [];\n var appNames = Object.keys(globalRoles);\n var currentApp = (_globalProps$appName2 = globalProps.appName) === null || _globalProps$appName2 === void 0 ? void 0 : _globalProps$appName2.substring(5);\n var currentAppNameIndex = appNames.indexOf(currentApp);\n var appNamesSorted = move(currentAppNameIndex, 0, appNames);\n return appNamesSorted.map(function (appName) {\n return {\n appName: appName,\n activeRole: getDefaultRole(globalRoles[appName], currentAppRole, appName),\n isEnabled: true,\n isPrimary: currentApp === appName\n };\n });\n};\nvar isAdminRole = function isAdminRole(role) {\n return includes(role, ADMIN_ROLES) ? equals(ADMIN_ROLE_NAME) : notEquals(ADMIN_ROLE_NAME);\n};\nvar renderInitialValues = function renderInitialValues(_ref) {\n var _roles$1$name, _roles$, _roles$2;\n var _ref$additionalFields = _ref.additionalFieldsInitialValues,\n additionalFieldsInitialValues = _ref$additionalFields === void 0 ? {} : _ref$additionalFields,\n globalRoles = _ref.globalRoles,\n roles = _ref.roles,\n selectedMember = _ref.selectedMember;\n if (isNotNil(selectedMember)) {\n var keysToPick = [\"firstName\", \"lastName\", \"role\"].concat(_toConsumableArray(keys(additionalFieldsInitialValues)));\n return _objectSpread$2(_objectSpread$2(_objectSpread$2({}, additionalFieldsInitialValues), pick(keysToPick, selectedMember)), {}, {\n emails: [_objectSpread$2(_objectSpread$2({}, toLabelAndValue(selectedMember.email)), {}, {\n valid: true\n })]\n });\n }\n return _objectSpread$2({\n firstName: \"\",\n lastName: \"\",\n emails: [],\n role: (_roles$1$name = (_roles$ = roles[1]) === null || _roles$ === void 0 ? void 0 : _roles$.name) !== null && _roles$1$name !== void 0 ? _roles$1$name : \"\",\n subscriptionPlan: SUBSCRIPTION_PLANS.FREE,\n appRoles: generateAppsRolesInitialValue(globalRoles, (_roles$2 = roles[1]) === null || _roles$2 === void 0 ? void 0 : _roles$2.name)\n }, additionalFieldsInitialValues);\n};\nvar renderPayload = function renderPayload(_ref2) {\n var appRoles = _ref2.appRoles,\n emails = _ref2.emails,\n firstName = _ref2.firstName,\n lastName = _ref2.lastName,\n role = _ref2.role,\n otherValues = _objectWithoutProperties(_ref2, _excluded);\n var selectedMember = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n return selectedMember ? _objectSpread$2({\n active: true,\n firstName: firstName.trim(),\n lastName: lastName.trim(),\n organizationRole: role,\n email: emails[0].value\n }, otherValues) : {\n user: _objectSpread$2({\n emails: pluck(\"value\", emails),\n organizationRole: role,\n appRoles: appRoles\n }, otherValues)\n };\n};\nvar getSingleInvitationTranslationProps = function getSingleInvitationTranslationProps(_ref3) {\n var activeAppRoles = _ref3.activeAppRoles,\n role = _ref3.role,\n selectedEmail = _ref3.selectedEmail;\n return {\n count: selectedEmail.length,\n emails: selectedEmail,\n product: getProductName(activeAppRoles),\n role: getActiveRole(activeAppRoles, role)\n };\n};\nvar buildValidationSchema = function buildValidationSchema(_ref4) {\n var selectedMember = _ref4.selectedMember,\n memberLimit = _ref4.memberLimit,\n organizationUsersCount = _ref4.organizationUsersCount;\n return yup.object().shape(_objectSpread$2(_objectSpread$2(_objectSpread$2(_objectSpread$2({}, NAME_INPUT_VALIDATION_SCHEMA), ROLES_RADIO_GROUP_VALIDATION_SCHEMA), APP_ROLES_SCHEMA), {}, {\n emails: yup.array().min(1, t$1(\"neetoTeamMembers.validations.minOneEmail\")).test(\"are-all-emails-valid\", t$1(\"neetoTeamMembers.validations.validEmail\"), function (emails) {\n return emails.every(prop(\"valid\"));\n }).test(\"is-emails-length-within-available-members-capacity\", /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.validations.memberLimitExceeded\",\n values: {\n limit: memberLimit\n },\n components: {\n emailTo: /*#__PURE__*/jsx(Button, {\n href: \"mailto:support@neeto.com\",\n style: \"link\"\n })\n }\n }), function (emails) {\n return isNotNil(selectedMember) || isNil(memberLimit) || emails.length <= memberLimit - organizationUsersCount;\n }).nullable()\n }));\n};\nvar neetoAuthManageProductUrl = \"\".concat((_globalProps$organiza = globalProps.organization) === null || _globalProps$organiza === void 0 ? void 0 : _globalProps$organiza.authAppUrl, \"/settings/general/products\");\n\nvar AppList = function AppList(_ref) {\n var globalRoles = _ref.globalRoles,\n savedStateRef = _ref.savedStateRef;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useState = useState(savedStateRef.current.isAppListEnabled),\n _useState2 = _slicedToArray(_useState, 2),\n isAppListEnabled = _useState2[0],\n setIsAppListEnabled = _useState2[1];\n var _useFetchNeetoApps = useFetchNeetoApps(),\n _useFetchNeetoApps$da = _useFetchNeetoApps.data,\n _useFetchNeetoApps$da2 = _useFetchNeetoApps$da === void 0 ? {} : _useFetchNeetoApps$da,\n isOwner = _useFetchNeetoApps$da2.isOwner,\n neetoApps = _useFetchNeetoApps$da2.neetoApps;\n var _useFormikContext = useFormikContext(),\n _useFormikContext$val = _useFormikContext.values,\n _useFormikContext$val2 = _useFormikContext$val.emails,\n emails = _useFormikContext$val2 === void 0 ? [] : _useFormikContext$val2,\n _useFormikContext$val3 = _useFormikContext$val.appRoles,\n appRoles = _useFormikContext$val3 === void 0 ? [] : _useFormikContext$val3,\n setFieldValue = _useFormikContext.setFieldValue;\n var selectedEmail = pluck(\"value\", emails);\n var isManageProductsLinkEnabled = isOwner && (neetoApps === null || neetoApps === void 0 ? void 0 : neetoApps.length) >= 3;\n useEffect(function () {\n if (savedStateRef.current.isAppListEnabled !== isAppListEnabled) {\n appRoles === null || appRoles === void 0 || appRoles.forEach(function (appRole, index) {\n var _globalProps$appName;\n if ((appRole === null || appRole === void 0 ? void 0 : appRole.appName) === ((_globalProps$appName = globalProps.appName) === null || _globalProps$appName === void 0 ? void 0 : _globalProps$appName.substring(5))) {\n setFieldValue(\"appRoles[\".concat(index, \"].isEnabled\"), true);\n return;\n }\n setFieldValue(\"appRoles[\".concat(index, \"].isEnabled\"), isAppListEnabled);\n });\n }\n savedStateRef.current.isAppListEnabled = isAppListEnabled;\n }, [isAppListEnabled]); // eslint-disable-line react-hooks/exhaustive-deps\n\n var buildRoleOptions = function buildRoleOptions(roles) {\n return roles.map(function (role) {\n return toLabelAndValue(role.name);\n });\n };\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"neeto-ui-flex neeto-ui-flex-col neeto-ui-gap-6\",\n children: [/*#__PURE__*/jsxs(\"div\", {\n className: \"neeto-ui-w-full space-y-3\",\n children: [/*#__PURE__*/jsx(Checkbox, {\n checked: isAppListEnabled,\n className: \"ntm-manage-members__checkbox-align-start\",\n \"data-cy\": \"ntm-manage-members-app-list-checkbox\",\n label: /*#__PURE__*/jsx(Typography, {\n component: \"span\",\n lineHeight: \"relaxed\",\n style: \"body2\",\n children: /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.helpers.addMembersToNeetoProducts\",\n values: {\n emails: selectedEmail\n }\n })\n }),\n onChange: function onChange() {\n return setIsAppListEnabled(not);\n }\n }), isManageProductsLinkEnabled && /*#__PURE__*/jsx(Typography, {\n style: \"body2\",\n children: /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.helpers.manageProducts\",\n components: {\n button: /*#__PURE__*/jsx(Button, {\n href: neetoAuthManageProductUrl,\n style: \"link\"\n })\n }\n })\n })]\n }), /*#__PURE__*/jsx(\"div\", {\n className: \"neeto-ui-w-full\",\n children: appRoles.map(function (_ref2, index) {\n var _globalProps$appName2;\n var appName = _ref2.appName,\n isEnabled = _ref2.isEnabled;\n var isCurrentApp = appName === ((_globalProps$appName2 = globalProps.appName) === null || _globalProps$appName2 === void 0 ? void 0 : _globalProps$appName2.substring(5));\n var isAppRoleSelectionChecked = isCurrentApp || isEnabled;\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-manage-members__app-roles\",\n children: [/*#__PURE__*/jsx(Tooltip, {\n content: t(\"neetoTeamMembers.tooltips.hostAppIsRequired\"),\n disabled: !isCurrentApp,\n position: \"left\",\n children: /*#__PURE__*/jsx(\"span\", {\n children: /*#__PURE__*/jsx(Switch, {\n checked: isAppRoleSelectionChecked,\n disabled: isCurrentApp,\n name: \"appsRoles[\".concat(index, \"].isEnabled\"),\n label: t(\"neetoTeamMembers.labels.neeto_\", {\n product: appName\n }),\n onChange: function onChange(_ref3) {\n var target = _ref3.target;\n setFieldValue(\"appRoles[\".concat(index, \"].isEnabled\"), target.checked);\n }\n })\n })\n }), /*#__PURE__*/jsx(Tooltip, {\n content: t(\"neetoTeamMembers.tooltips.goBackToChangeRole\"),\n disabled: !isCurrentApp,\n position: \"top\",\n children: /*#__PURE__*/jsx(\"span\", {\n className: \"ntm-manage-members-app-roles__select-wrapper\",\n children: /*#__PURE__*/jsx(Select, {\n isDisabled: isCurrentApp || !isEnabled,\n name: \"appRoles[\".concat(index, \"].activeRole\"),\n options: buildRoleOptions(globalRoles[appName]),\n size: \"small\",\n strategy: \"fixed\",\n onChange: function onChange(_ref4) {\n var value = _ref4.value;\n setFieldValue(\"appRoles[\".concat(index, \"].activeRole\"), value);\n }\n })\n })\n })]\n }, appName);\n })\n })]\n });\n};\n\nvar Confirmation = function Confirmation() {\n var _globalProps$organiza;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useFormikContext = useFormikContext(),\n _useFormikContext$val = _useFormikContext.values,\n emails = _useFormikContext$val.emails,\n role = _useFormikContext$val.role,\n appRoles = _useFormikContext$val.appRoles;\n var selectedEmail = pluck(\"value\", emails);\n var activeAppRoles = filterBy({\n isEnabled: true\n }, appRoles);\n return activeAppRoles.length > 1 ? /*#__PURE__*/jsxs(\"div\", {\n className: \"neeto-ui-flex neeto-ui-flex-col neeto-ui-gap-6\",\n children: [/*#__PURE__*/jsx(\"div\", {\n className: \"neeto-ui-w-full\",\n children: /*#__PURE__*/jsx(Typography, {\n component: \"span\",\n lineHeight: \"relaxed\",\n style: \"body2\",\n children: /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.helpers.multipleProductInvitation\",\n values: {\n count: selectedEmail.length,\n emails: selectedEmail,\n orgName: (_globalProps$organiza = globalProps.organization) === null || _globalProps$organiza === void 0 ? void 0 : _globalProps$organiza.name\n }\n })\n })\n }), /*#__PURE__*/jsxs(\"table\", {\n className: \"neeto-ui-w-full ntm-product-roles-table\",\n children: [/*#__PURE__*/jsx(\"thead\", {\n children: /*#__PURE__*/jsxs(\"tr\", {\n children: [/*#__PURE__*/jsx(\"th\", {\n children: t(\"neetoTeamMembers.common.productName\")\n }), /*#__PURE__*/jsx(\"th\", {\n children: t(\"neetoTeamMembers.common.role\", SINGULAR)\n })]\n })\n }), /*#__PURE__*/jsx(\"tbody\", {\n children: activeAppRoles.map(function (_ref) {\n var appName = _ref.appName,\n activeRole = _ref.activeRole;\n return /*#__PURE__*/jsxs(\"tr\", {\n children: [/*#__PURE__*/jsx(\"td\", {\n children: /*#__PURE__*/jsx(Typography, {\n component: \"span\",\n lineHeight: \"relaxed\",\n style: \"body2\",\n children: t(\"neetoTeamMembers.labels.neeto_\", {\n product: appName\n })\n })\n }), /*#__PURE__*/jsx(\"td\", {\n children: /*#__PURE__*/jsx(Typography, {\n component: \"span\",\n lineHeight: \"relaxed\",\n style: \"body2\",\n children: activeRole\n })\n })]\n }, appName);\n })\n })]\n })]\n }) : /*#__PURE__*/jsx(Typography, {\n component: \"span\",\n lineHeight: \"relaxed\",\n style: \"body2\",\n children: /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.helpers.singleProductInvitation\",\n values: getSingleInvitationTranslationProps({\n activeAppRoles: activeAppRoles,\n role: role,\n selectedEmail: selectedEmail\n })\n })\n });\n};\n\nvar MultipleEmailInput = function MultipleEmailInput(_ref) {\n var _head;\n var _ref$emails = _ref.emails,\n emails = _ref$emails === void 0 ? [] : _ref$emails,\n innerRef = _ref.innerRef,\n _ref$selectedMember = _ref.selectedMember,\n selectedMember = _ref$selectedMember === void 0 ? null : _ref$selectedMember;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useFormikContext = useFormikContext(),\n setFieldValue = _useFormikContext.setFieldValue;\n var handleInputChange = function handleInputChange(event) {\n var email = event.target.value;\n var emailList = [{\n label: email,\n value: email,\n valid: EMAIL_REGEX.test(email)\n }];\n setFieldValue(\"emails\", emailList);\n };\n return /*#__PURE__*/jsx(\"div\", {\n className: \"neeto-ui-w-full\",\n children: selectedMember ? /*#__PURE__*/jsx(Input, {\n \"data-cy\": \"ntm-manage-member-email-input\",\n name: \"emails\",\n size: \"medium\",\n type: \"email\",\n value: (_head = head(emails)) === null || _head === void 0 ? void 0 : _head.value,\n label: /*#__PURE__*/jsx(\"span\", {\n className: \"neeto-ui-w-full neeto-ui-flex neeto-ui-justify-between\",\n children: /*#__PURE__*/jsx(Typography, {\n component: \"span\",\n style: \"body2\",\n children: t(\"neetoTeamMembers.common.email\", SINGULAR)\n })\n }),\n onChange: handleInputChange\n }) : /*#__PURE__*/jsx(MultiEmailInput, {\n required: true,\n counter: COUNTER_PROPS,\n \"data-cy\": \"ntm-manage-member-email-input\",\n filterInvalidEmails: FILTER_INVALID_EMAILS,\n helpText: t(\"neetoTeamMembers.helpers.enterMultipleEmails\"),\n label: t(\"neetoTeamMembers.common.email\", PLURAL),\n name: \"emails\",\n placeholder: t(\"neetoTeamMembers.placeholders.email\"),\n ref: innerRef\n })\n });\n};\n\nvar NameInputs = function NameInputs(_ref) {\n var innerRef = _ref.innerRef;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"neeto-ui-flex neeto-ui-w-full neeto-ui-gap-4\",\n children: [/*#__PURE__*/jsx(Input, {\n \"data-cy\": \"ntm-edit-member-first-name-text-field\",\n label: t(\"neetoTeamMembers.labels.firstName\"),\n name: \"firstName\",\n ref: innerRef\n }), /*#__PURE__*/jsx(Input, {\n \"data-cy\": \"ntm-edit-member-last-name-text-field\",\n label: t(\"neetoTeamMembers.labels.lastName\"),\n name: \"lastName\"\n })]\n });\n};\n\nvar RolesRadioGroup = function RolesRadioGroup(_ref) {\n var config = _ref.config,\n globalRoles = _ref.globalRoles,\n isEdit = _ref.isEdit,\n _ref$role = _ref.role,\n role = _ref$role === void 0 ? \"\" : _ref$role,\n _ref$roles = _ref.roles,\n roles = _ref$roles === void 0 ? [] : _ref$roles;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useFormikContext = useFormikContext(),\n values = _useFormikContext.values,\n setFieldValue = _useFormikContext.setFieldValue;\n var setDefaultSelection = function setDefaultSelection(currentRole) {\n var _values$appRoles;\n var condition = isAdminRole(currentRole);\n (_values$appRoles = values.appRoles) === null || _values$appRoles === void 0 || _values$appRoles.forEach(function (_ref2, index) {\n var _globalProps$appName;\n var appName = _ref2.appName,\n activeRole = _ref2.activeRole;\n if (appName === ((_globalProps$appName = globalProps.appName) === null || _globalProps$appName === void 0 ? void 0 : _globalProps$appName.substring(5))) {\n setFieldValue(\"appRoles[\".concat(index, \"].activeRole\"), currentRole);\n return;\n }\n if (condition(activeRole)) return;\n var matchingRole = _findBy({\n name: condition\n }, globalRoles[appName]);\n if (matchingRole) {\n setFieldValue(\"appRoles[\".concat(index, \"].activeRole\"), matchingRole.name);\n }\n });\n };\n return /*#__PURE__*/jsx(Radio$1, {\n stacked: true,\n className: \"ntm-members-radio-group flex-grow-0\",\n \"data-cy\": \"ntm-manage-member-roles-group\",\n labelProps: {\n className: \"neeto-ui-radio__label w-full\"\n },\n name: \"role\",\n label: /*#__PURE__*/jsxs(\"span\", {\n className: \"flex w-full items-center justify-between\",\n children: [/*#__PURE__*/jsxs(Label, {\n required: true,\n children: [\" \", t(\"neetoTeamMembers.common.role\", SINGULAR)]\n }), /*#__PURE__*/jsx(Button, {\n label: t(\"neetoTeamMembers.labels.manageRole\", PLURAL),\n style: \"link\",\n to: config.pathToRolesPage\n })]\n }),\n onChange: function onChange(_ref3) {\n var value = _ref3.target.value;\n setFieldValue(\"role\", value);\n !isEdit && setDefaultSelection(value);\n },\n children: roles.map(function (_ref4) {\n var id = _ref4.id,\n name = _ref4.name;\n return /*#__PURE__*/jsx(\"label\", {\n className: \"ntm-members-form-radio-item__wrapper\",\n htmlFor: slugify(name),\n children: /*#__PURE__*/jsx(Radio$1.Item, {\n className: \"ntm-members-form-radio-item__label\",\n \"data-cy\": \"ntm-manage-member-roles-button\",\n defaultChecked: identical(name, role),\n id: slugify(name),\n label: name,\n name: \"role\",\n value: name\n })\n }, id);\n })\n });\n};\n\nvar SubscriptionPlan = function SubscriptionPlan(_ref) {\n var _subscription$plan, _subscription$plan2;\n var subscription = _ref.subscription;\n var _useFormikContext = useFormikContext(),\n values = _useFormikContext.values,\n setFieldValue = _useFormikContext.setFieldValue;\n var isProPlan = (values === null || values === void 0 ? void 0 : values.subscriptionPlan) === SUBSCRIPTION_PLANS.PRO;\n var handleChange = function handleChange(event) {\n return setFieldValue(\"subscriptionPlan\", event.target.checked ? SUBSCRIPTION_PLANS.PRO : SUBSCRIPTION_PLANS.FREE);\n };\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"flex flex-col space-y-4\",\n children: [/*#__PURE__*/jsx(Checkbox$1, {\n label: /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.labels.upgradeToProPlan\"\n }),\n name: \"isSubscriptionProPlan\",\n onChange: handleChange\n }), isProPlan && /*#__PURE__*/jsx(Callout, {\n icon: Warning,\n style: \"warning\",\n children: /*#__PURE__*/jsx(Typography, {\n style: \"body2\",\n weight: \"normal\",\n children: /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.helpers.subscriptionWarning\",\n values: {\n amount: currencyFormat.withSymbol(subscription === null || subscription === void 0 || (_subscription$plan = subscription.plan) === null || _subscription$plan === void 0 ? void 0 : _subscription$plan.amount, subscription === null || subscription === void 0 || (_subscription$plan2 = subscription.plan) === null || _subscription$plan2 === void 0 || (_subscription$plan2 = _subscription$plan2.currency) === null || _subscription$plan2 === void 0 ? void 0 : _subscription$plan2.toUpperCase(), {\n maximumFractionDigits: 2,\n minimumFractionDigits: 0\n })\n }\n })\n })\n })]\n });\n};\n\nfunction ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar ManageMember = function ManageMember(_ref) {\n var _config$subscription, _manageMemberComponen, _config$additionalFie2;\n var config = _ref.config,\n onComplete = _ref.onComplete,\n _ref$roles = _ref.roles,\n roles = _ref$roles === void 0 ? [] : _ref$roles,\n _ref$selectedMember = _ref.selectedMember,\n selectedMember = _ref$selectedMember === void 0 ? null : _ref$selectedMember,\n _ref$componentConfig = _ref.componentConfig,\n componentConfig = _ref$componentConfig === void 0 ? {} : _ref$componentConfig;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isCreationStatusPollingEnabled = _useState2[0],\n setIsCreationStatusPollingEnabled = _useState2[1];\n var isViewPermissionGranted = config.permissions.view;\n var isNotDevelopment = globalProps.railsEnv !== \"development\";\n var _useFetchMembers = useFetchMembers({\n enabled: isViewPermissionGranted\n }),\n team = _useFetchMembers.data;\n var _useState3 = useState(FORM_PAGES.MAIN),\n _useState4 = _slicedToArray(_useState3, 2),\n currentPage = _useState4[0],\n setCurrentPage = _useState4[1];\n var formReference = useRef(null);\n var inputReference = useRef(null);\n var appListSavedStateReference = useRef({\n isAppListEnabled: true\n });\n var shouldSkipAppListPage = useRef(false);\n var formikValues = useRef(null);\n var manageMemberComponentConfig = _objectSpread$1(_objectSpread$1({}, DEFAULT_COMPONENT_CONFIG), {}, {\n initialFocusRef: inputReference\n }, componentConfig);\n var Component = MEMBERS_FORM_COMPONENT_MAPPER[manageMemberComponentConfig.type || \"pane\"];\n var haveToFetchRoles = isEmpty(roles) && isViewPermissionGranted;\n var isEditForm = !!selectedMember;\n var isLastPage = currentPage === FORM_PAGES.CONFIRMATION || isEditForm;\n var isSubscriptionVisible = !isEditForm && ((_config$subscription = config.subscription) === null || _config$subscription === void 0 ? void 0 : _config$subscription.isActive);\n var _useFetchRoles = useFetchRoles({\n select: function select(response) {\n var _response$organizatio;\n return reverse((_response$organizatio = response.organizationRoles) !== null && _response$organizatio !== void 0 ? _response$organizatio : []);\n },\n enabled: haveToFetchRoles\n }),\n _useFetchRoles$data = _useFetchRoles.data,\n rolesList = _useFetchRoles$data === void 0 ? roles : _useFetchRoles$data,\n isRolesLoading = _useFetchRoles.isLoading;\n var _useFetchGlobalRoles = useFetchGlobalRoles({\n select: function select(response) {\n return groupBy(prop(\"appName\"), response !== null && response !== void 0 ? response : []);\n },\n enabled: isNotDevelopment && !selectedMember && isViewPermissionGranted\n }),\n _useFetchGlobalRoles$ = _useFetchGlobalRoles.data,\n globalRoles = _useFetchGlobalRoles$ === void 0 ? {} : _useFetchGlobalRoles$,\n isGlobalRolesLoading = _useFetchGlobalRoles.isLoading;\n var filteredRoles = getFilteredRoles(rolesList, config);\n var _useCreateMember = useCreateMember({\n onSuccess: function onSuccess() {\n return setIsCreationStatusPollingEnabled(true);\n }\n }),\n _useCreateMember$data = _useCreateMember.data,\n _useCreateMember$data2 = _useCreateMember$data === void 0 ? {} : _useCreateMember$data,\n jobId = _useCreateMember$data2.jobId,\n totalCount = _useCreateMember$data2.totalCount,\n createMember = _useCreateMember.mutate,\n isCreatingMember = _useCreateMember.isLoading;\n var refetchInterval = function refetchInterval(query) {\n var _ref2 = query.state.data || {},\n isCompleted = _ref2.isCompleted;\n if (isCompleted) {\n setIsCreationStatusPollingEnabled(false);\n return false;\n }\n return 2000;\n };\n var _useMembersCreationSt = useMembersCreationStatus(jobId, {\n refetchInterval: refetchInterval,\n enabled: isCreationStatusPollingEnabled\n }),\n creationStatus = _useMembersCreationSt.data;\n useEffect(function () {\n var _config$createMember;\n var _ref3 = creationStatus || {},\n isCompleted = _ref3.isCompleted,\n isSuccessful = _ref3.isSuccessful,\n users = _ref3.users,\n error = _ref3.error;\n if (!isCompleted) return;\n handleClose();\n config === null || config === void 0 || (_config$createMember = config.createMember) === null || _config$createMember === void 0 || (_config$createMember = _config$createMember.onSuccess) === null || _config$createMember === void 0 || _config$createMember.callback({\n users: users\n });\n if (isSuccessful) {\n showThumbsUpToastr();\n } else {\n Toastr.error(error);\n }\n refetchMembers();\n }, [creationStatus]);\n var _useUpdateMember = useUpdateMember({\n onSuccess: function onSuccess() {\n var _config$updateMember;\n handleClose(true);\n config === null || config === void 0 || (_config$updateMember = config.updateMember) === null || _config$updateMember === void 0 || (_config$updateMember = _config$updateMember.onSuccess) === null || _config$updateMember === void 0 || _config$updateMember.callback();\n }\n }),\n updateMember = _useUpdateMember.mutate,\n isUpdatingMember = _useUpdateMember.isPending;\n var hasRoleChanged = function hasRoleChanged(_ref4) {\n var submitted = _ref4.submitted,\n values = _ref4.values;\n return submitted && (values === null || values === void 0 ? void 0 : values.role) !== (selectedMember === null || selectedMember === void 0 ? void 0 : selectedMember.role);\n };\n var handleClose = function handleClose() {\n var submitted = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n onComplete({\n submitted: hasRoleChanged({\n submitted: submitted,\n values: formikValues.current\n })\n });\n setCurrentPage(FORM_PAGES.MAIN);\n appListSavedStateReference.current = {\n isAppListEnabled: true\n };\n setIsCreationStatusPollingEnabled(false);\n };\n var isSubmitting = isCreatingMember || isUpdatingMember || isRolesLoading || isGlobalRolesLoading;\n var handleAddMember = function handleAddMember(values) {\n selectedMember ?\n // @ts-ignore\n updateMember({\n id: selectedMember.id,\n payload: renderPayload(values, selectedMember)\n }) : createMember(renderPayload(values));\n };\n var handleOnSubmit = function handleOnSubmit(values) {\n shouldSkipAppListPage.current = isEmpty(values.appRoles);\n if (isLastPage) {\n handleAddMember(values);\n } else if (currentPage === FORM_PAGES.APP_LIST || shouldSkipAppListPage.current) {\n setCurrentPage(FORM_PAGES.CONFIRMATION);\n } else if (currentPage === FORM_PAGES.MAIN) {\n setCurrentPage(FORM_PAGES.APP_LIST);\n }\n };\n var handleBackButton = function handleBackButton() {\n if (currentPage === FORM_PAGES.APP_LIST || shouldSkipAppListPage.current) {\n setCurrentPage(FORM_PAGES.MAIN);\n } else if (currentPage === FORM_PAGES.CONFIRMATION) {\n setCurrentPage(FORM_PAGES.APP_LIST);\n }\n };\n var getTitle = function getTitle() {\n return selectedMember ? t(\"neetoTeamMembers.common.edit_\", {\n what: taxonomies.member.singular\n }) : t(\"neetoTeamMembers.common.addNew_\", {\n what: taxonomies.member.singular\n });\n };\n var renderFormPage = function renderFormPage(page, emails, role) {\n var _config$additionalFie;\n switch (page) {\n case FORM_PAGES.MAIN:\n return /*#__PURE__*/jsxs(Fragment, {\n children: [selectedMember && /*#__PURE__*/jsx(NameInputs, {\n innerRef: inputReference\n }), /*#__PURE__*/jsx(MultipleEmailInput, {\n emails: emails,\n selectedMember: selectedMember,\n innerRef: inputReference\n }), isSubscriptionVisible && /*#__PURE__*/jsx(SubscriptionPlan, {\n handleClose: handleClose,\n subscription: config.subscription\n }), /*#__PURE__*/jsx(RolesRadioGroup, {\n config: config,\n globalRoles: globalRoles,\n role: role,\n isEdit: !!selectedMember,\n roles: filteredRoles\n }), (_config$additionalFie = config.additionalFields) === null || _config$additionalFie === void 0 ? void 0 : _config$additionalFie.component]\n });\n case FORM_PAGES.APP_LIST:\n return /*#__PURE__*/jsx(AppList, {\n globalRoles: globalRoles,\n savedStateRef: appListSavedStateReference\n });\n case FORM_PAGES.CONFIRMATION:\n return /*#__PURE__*/jsx(Confirmation, {});\n default:\n return null;\n }\n };\n return /*#__PURE__*/jsxs(Component, {\n className: manageMemberComponentConfig.className,\n \"data-cy\": \"ntm-manage-members-pane-wrapper\",\n initialFocusRef: manageMemberComponentConfig.initialFocusRef,\n isOpen: manageMemberComponentConfig.isOpen,\n onClose: function onClose() {\n return handleClose(false);\n },\n children: [/*#__PURE__*/jsxs(Component.Header, _objectSpread$1(_objectSpread$1({}, manageMemberComponentConfig.headerProps), {}, {\n className: classnames([{\n \"ntm-manage-members__header\": currentPage !== FORM_PAGES.MAIN\n }, (_manageMemberComponen = manageMemberComponentConfig.headerProps) === null || _manageMemberComponen === void 0 ? void 0 : _manageMemberComponen.className]),\n children: [currentPage !== FORM_PAGES.MAIN && /*#__PURE__*/jsx(Button, {\n \"aria-label\": \"Back\",\n icon: LeftArrow,\n size: \"medium\",\n style: \"text\",\n tooltipProps: {\n content: t(\"neetoTeamMembers.buttons.back\"),\n position: \"bottom\"\n },\n onClick: handleBackButton\n }), /*#__PURE__*/jsx(Typography, {\n className: \"ntm-members-form__header\",\n \"data-cy\": \"ntm-manage-members-pane-header\",\n style: \"h2\",\n weight: \"semibold\",\n children: getTitle()\n })]\n })), /*#__PURE__*/jsx(Form$1, {\n ref: formReference,\n formikProps: {\n enableReinitialize: true,\n initialValues: renderInitialValues({\n additionalFieldsInitialValues: (_config$additionalFie2 = config.additionalFields) === null || _config$additionalFie2 === void 0 ? void 0 : _config$additionalFie2.initialValues,\n globalRoles: globalRoles,\n roles: filteredRoles,\n selectedMember: selectedMember\n }),\n onSubmit: handleOnSubmit,\n validationSchema: buildValidationSchema(_objectSpread$1({\n selectedMember: selectedMember\n }, team))\n },\n children: function children(_ref5) {\n var _manageMemberComponen2, _creationStatus$progr, _manageMemberComponen3;\n var values = _ref5.values;\n var emails = values.emails,\n role = values.role;\n formikValues.current = values;\n return /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(ScrollToErrorField, {\n formRef: formReference\n }), /*#__PURE__*/jsxs(Component.Body, _objectSpread$1(_objectSpread$1({}, manageMemberComponentConfig.bodyProps), {}, {\n className: classnames([\"ntm-members-form__body\", (_manageMemberComponen2 = manageMemberComponentConfig.bodyProps) === null || _manageMemberComponen2 === void 0 ? void 0 : _manageMemberComponen2.className]),\n children: [isCreationStatusPollingEnabled && /*#__PURE__*/jsx(Callout, {\n className: \"w-full\",\n icon: Info,\n style: \"info\",\n children: t(\"neetoTeamMembers.helpers.memberCreationStatus\", {\n count: emails.length,\n completedCount: creationStatus === null || creationStatus === void 0 || (_creationStatus$progr = creationStatus.progress) === null || _creationStatus$progr === void 0 ? void 0 : _creationStatus$progr.completedCount,\n totalCount: totalCount\n })\n }), renderFormPage(currentPage, emails, role)]\n })), /*#__PURE__*/jsx(Component.Footer, _objectSpread$1(_objectSpread$1({}, manageMemberComponentConfig.footerProps), {}, {\n className: classnames([\"ntm-members-form__footer\", (_manageMemberComponen3 = manageMemberComponentConfig.footerProps) === null || _manageMemberComponen3 === void 0 ? void 0 : _manageMemberComponen3.className]),\n children: /*#__PURE__*/jsx(ActionBlock, {\n isSubmitting: isSubmitting || isCreationStatusPollingEnabled,\n cancelButtonProps: {\n \"data-cy\": \"ntm-manage-member-cancel-button\",\n onClick: function onClick() {\n return handleClose(false);\n }\n },\n submitButtonProps: {\n \"data-cy\": isLastPage ? \"ntm-manage-member-submit-button\" : \"ntm-manage-member-continue-button\",\n label: isLastPage ? t(\"neetoTeamMembers.buttons.saveChanges\") : t(\"neetoTeamMembers.buttons.continue\")\n }\n })\n }))]\n });\n }\n })]\n });\n};\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar TeamMembers = function TeamMembers(_ref) {\n var _config$fetchApiRespo, _config$table, _config$table$onDropd, _config$table2;\n var config = _ref.config;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var history = useHistory();\n var _useBreakpoints = useBreakpoints(),\n isSize = _useBreakpoints.isSize;\n var queryParams = useQueryParams();\n var isViewPermissionGranted = config.permissions.view;\n var isCreatePermissionGranted = config.permissions.create;\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isFiltersPaneOpen = _useState2[0],\n setIsFiltersPaneOpen = _useState2[1];\n useEffect(function () {\n handleMemberFilterChange();\n }, []);\n var _useFilters = useFilters({\n config: config\n }),\n filters = _useFilters.filters,\n setFilters = _useFilters.setFilters,\n filterColumns = _useFilters.filterColumns,\n searchProps = _useFilters.searchProps,\n searchKeywordProps = _useFilters.searchKeywordProps;\n var _useFetchMembers = useFetchMembers(_objectSpread({}, filters), {\n enabled: isViewPermissionGranted\n }),\n team = _useFetchMembers.data,\n isMembersLoading = _useFetchMembers.isLoading,\n isMembersFetching = _useFetchMembers.isFetching;\n var _useFetchRoles = useFetchRoles({\n select: function select(response) {\n var _response$organizatio;\n return reverse((_response$organizatio = response === null || response === void 0 ? void 0 : response.organizationRoles) !== null && _response$organizatio !== void 0 ? _response$organizatio : []);\n },\n enabled: isViewPermissionGranted\n }),\n roles = _useFetchRoles.data,\n isRolesLoading = _useFetchRoles.isLoading;\n var _useUpdateMember = useUpdateMember({\n onSuccess: function onSuccess() {\n var _config$updateMember;\n handleAlertClose();\n config === null || config === void 0 || (_config$updateMember = config.updateMember) === null || _config$updateMember === void 0 || (_config$updateMember = _config$updateMember.onSuccess) === null || _config$updateMember === void 0 || _config$updateMember.callback();\n }\n }),\n updateMember = _useUpdateMember.mutate,\n isUpdatingMember = _useUpdateMember.isPending;\n var filteredRoles = getFilteredRoles(roles, config);\n var _useTeams = useTeams({\n config: config,\n filters: filters,\n setFilters: setFilters,\n updateMember: updateMember\n }),\n handleAlertClose = _useTeams.handleAlertClose,\n handleMemberFilterChange = _useTeams.handleMemberFilterChange,\n handlePaneClose = _useTeams.handlePaneClose,\n handleRowSelect = _useTeams.handleRowSelect,\n handleTableChange = _useTeams.handleTableChange,\n handleRemoveMember = _useTeams.handleRemoveMember,\n handleUpdateRole = _useTeams.handleUpdateRole,\n handleUpdateStatus = _useTeams.handleUpdateStatus,\n isOpen = _useTeams.isOpen,\n selectedMember = _useTeams.selectedMember,\n selectedRows = _useTeams.selectedRows,\n setIsOpen = _useTeams.setIsOpen,\n setSelectedRows = _useTeams.setSelectedRows;\n config === null || config === void 0 || (_config$fetchApiRespo = config.fetchApiResponse) === null || _config$fetchApiRespo === void 0 || _config$fetchApiRespo.call(config, {\n team: team\n });\n var hasMembers = (team === null || team === void 0 ? void 0 : team.activeUsersCount) > 0;\n var updateMemberAlertProps = {\n member: selectedMember,\n config: config\n };\n config === null || config === void 0 || (_config$table = config.table) === null || _config$table === void 0 || (_config$table$onDropd = _config$table.onDropdownClick) === null || _config$table$onDropd === void 0 || _config$table$onDropd.call(_config$table, {\n handleUpdateRole: handleUpdateRole,\n handleUpdateStatus: handleUpdateStatus\n });\n var columns = useMemo(function () {\n return getColumnData({\n config: config,\n handleUpdateRole: handleUpdateRole,\n handleUpdateStatus: handleUpdateStatus,\n isSize: isSize\n });\n }, [(_config$table2 = config.table) === null || _config$table2 === void 0 ? void 0 : _config$table2.dropdownProps] // eslint-disable-line react-hooks/exhaustive-deps\n );\n\n var _useHiddenColumns = useHiddenColumns(TEAM_MEMBERS_HIDDEN_COLUMNS),\n hideColumn = _useHiddenColumns.hideColumn,\n getVisibleColumnData = _useHiddenColumns.getVisibleColumnData;\n var handleNeetoFilterChange = function handleNeetoFilterChange(filters) {\n setFilters(mergeLeft({\n neetoFilters: filters,\n page: DEFAULT_PAGE_INDEX\n }));\n setSelectedRows(DEFAULT_SELECTED_ROWS);\n history.push(buildUrl(window.location.pathname, mergeLeft({\n page: DEFAULT_PAGE_INDEX\n }, queryParams)));\n };\n var _generateNoDataConten = generateNoDataContent({\n buttonProps: {\n onClick: function onClick() {\n return setIsOpen(assoc(\"manageMember\", true));\n },\n disabled: !isCreatePermissionGranted\n }\n }),\n noDataTitle = _generateNoDataConten.noDataTitle,\n noDataButtonProps = _generateNoDataConten.noDataButtonProps;\n if (isRolesLoading || isMembersLoading) {\n return /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-members-page-loader\",\n children: /*#__PURE__*/jsx(PageLoader, {})\n });\n }\n return /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-members\",\n children: /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-members-wrapper\",\n children: [/*#__PURE__*/jsxs(Container, {\n children: [/*#__PURE__*/jsx(Header$1, {\n config: config,\n setIsOpen: setIsOpen,\n searchProps: hasMembers ? searchProps : null\n }), /*#__PURE__*/jsx(SubHeader$1, {\n leftActionBlock: /*#__PURE__*/jsx(SubHeader.Left, {\n config: config,\n selectedRows: selectedRows,\n setSelectedRows: setSelectedRows,\n filteredCount: team === null || team === void 0 ? void 0 : team.membersCount,\n roles: filteredRoles\n }),\n rightActionBlock: hasMembers && /*#__PURE__*/jsx(SubHeader.Right, {\n columns: columns,\n filterColumns: filterColumns,\n handleNeetoFilterChange: handleNeetoFilterChange,\n isFiltersPaneOpen: isFiltersPaneOpen,\n searchKeywordProps: searchKeywordProps,\n setIsFiltersPaneOpen: setIsFiltersPaneOpen\n })\n }), /*#__PURE__*/jsx(Bar, {\n columns: filterColumns,\n keyword: searchKeywordProps,\n setIsPaneOpen: setIsFiltersPaneOpen,\n onChange: handleNeetoFilterChange\n }), /*#__PURE__*/jsx(TableWrapper, {\n hasPagination: (team === null || team === void 0 ? void 0 : team.membersCount) > filters.pageSize,\n children: (team === null || team === void 0 ? void 0 : team.membersCount) !== 0 ? /*#__PURE__*/jsx(Table$1, {\n fixedHeight: true,\n allowRowClick: false,\n columnData: getVisibleColumnData(columns),\n currentPageNumber: parseInt(filters.page, DEFAULT_RADIX),\n \"data-cy\": \"ntm-members-table\",\n handlePageChange: handlePageChange(setFilters, history),\n loading: isMembersFetching,\n paginationProps: renderPaginationProps(filters.pageSize),\n rowData: team === null || team === void 0 ? void 0 : team.members,\n rowSelection: {\n columnWidth: \"2%\"\n },\n selectedRowKeys: selectedRows.keys,\n totalCount: team === null || team === void 0 ? void 0 : team.membersCount,\n onChange: handleTableChange,\n onColumnHide: function onColumnHide(_ref2) {\n var dataIndex = _ref2.dataIndex;\n return hideColumn(dataIndex);\n },\n onRowSelect: handleRowSelect\n }) : /*#__PURE__*/jsx(\"div\", {\n className: \"flex h-full w-full items-center justify-center\",\n children: /*#__PURE__*/jsx(NoData, {\n primaryButtonProps: noDataButtonProps,\n title: noDataTitle\n })\n })\n })]\n }), /*#__PURE__*/jsx(ManageMember, {\n config: config,\n selectedMember: selectedMember,\n componentConfig: {\n isOpen: isOpen.manageMember\n },\n roles: filteredRoles,\n onComplete: handlePaneClose\n }), /*#__PURE__*/jsx(Alert, {\n cancelButtonLabel: t(\"neetoTeamMembers.buttons.cancel\"),\n isOpen: isOpen.alert,\n isSubmitting: isUpdatingMember,\n message: renderUpdateAlert(\"message\", updateMemberAlertProps),\n submitButtonLabel: t(\"neetoTeamMembers.buttons.remove\"),\n title: renderUpdateAlert(\"title\", updateMemberAlertProps),\n onClose: handleAlertClose,\n onSubmit: handleRemoveMember\n })]\n })\n });\n};\nvar index = withTitle(withReactQuery(TeamMembers), taxonomies.member.plural);\n\nvar useMembersSidenav = function useMembersSidenav(_ref) {\n var route = _ref.route;\n return {\n icon: UserCircle,\n label: taxonomies.member.plural,\n to: route,\n \"data-cy\": \"members-nav-tab\",\n permission: hasPermission(VIEW_MEMBERS_PERMISSION)\n };\n};\n\nvar e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c();}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n));}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}\n\nvar css = \":root{--ntm-roles-table-default-scroll:15px;--ntm-roles-table-cell-height:48px;--ntm-roles-sidebar-width:480px;--ntm-roles-table-header-height:72px}.ntm-scrollbar__inner{height:200px;width:100%}.ntm-scrollbar__outer{height:150px;left:0;overflow:hidden;position:absolute;top:0;visibility:hidden;width:200px}.ntm-empty-state{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.ntm-members{overflow:auto;width:100%}.ntm-members-wrapper{display:flex}.ntm-members-page-loader{height:100vh;width:100%}.ntm-members-table__wrapper{display:flex;gap:.75rem;justify-content:space-between;width:100%}.ntm-members-table__column{align-items:center;display:flex;gap:.5rem}.ntm-members-form__header{margin-bottom:.5rem}.ntm-members-form__body{padding-bottom:1rem;width:100%}.ntm-members-form__body>*+*{margin-top:1.5rem}.ntm-members-form__footer{display:flex;gap:.5rem}.ntm-manage-members__header{align-items:flex-start;display:flex}.ntm-manage-members__header>*+*{margin-left:.5rem}.ntm-manage-members__app-roles{align-items:center;display:flex;justify-content:space-between;padding:.5rem 0;width:100%}.ntm-manage-members-app-roles__select-wrapper{max-width:250px;width:50%}.ntm-manage-members-effective-app-roles{align-items:center;display:flex;justify-content:space-between;padding:.25rem 0}.ntm-manage-members-effective-app-roles__role-name{max-width:300px;width:67%}.ntm-members-radio-group,.ntm-members-radio-group .neeto-ui-radio__container--stacked{width:100%}.ntm-members-radio-group__label{padding-right:4px}.ntm-members-radio-group__icon{cursor:pointer}.ntm-members-form-radio-item__wrapper{cursor:pointer;padding:8px 0!important;width:100%}.ntm-members-form-radio-item__wrapper:first-child{padding-top:0!important}.ntm-members-form-radio-item__label{margin-bottom:0!important}.ntm-members-form-radio-item__description,.ntm-product-roles-table th{color:rgb(var(--neeto-ui-gray-700))}.ntm-product-roles-table th{font-size:var(--neeto-ui-text-xs);font-weight:var(--neeto-ui-font-bold);text-transform:uppercase;vertical-align:middle}.ntm-product-roles-table td,.ntm-product-roles-table th{border:1px solid rgb(var(--neeto-ui-gray-200));padding:8px;text-align:left}.ntm-manage-members__checkbox-align-start.neeto-ui-checkbox__wrapper .neeto-ui-checkbox__container{align-items:flex-start}.ntm-manage-members__checkbox-align-start.neeto-ui-checkbox__wrapper .neeto-ui-checkbox[type=checkbox]{margin-top:4px}.ntm-roles-table__wrapper{height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - 24px);padding:0 40px;width:100%}@media screen and (max-width:1024px){.ntm-roles-table__wrapper{--neeto-molecules-main-header-with-breadcrumbs-height:216px}}@media screen and (max-width:768px){.ntm-roles-table__wrapper{--neeto-molecules-main-header-with-breadcrumbs-height:186px;overflow:hidden;padding:0 20px}}.ntm-roles-table__container{display:flex;height:100%}@media screen and (max-width:768px){.ntm-roles-table__container{height:auto;overflow-y:auto}}.ntm-roles-table__sidebar{border-top:thin solid rgb(var(--neeto-ui-gray-200));height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - 28px);min-width:480px;min-width:var(--ntm-roles-sidebar-width);width:480px;width:var(--ntm-roles-sidebar-width)}@media screen and (max-width:768px){.ntm-roles-table__sidebar{height:100%}}.ntm-roles-table-sidebar__search{height:72px;height:var(--ntm-roles-table-header-height);padding:20px 24px}.ntm-roles-table-sidebar__list,.ntm-roles-table-sidebar__search{border-bottom:thin solid rgb(var(--neeto-ui-gray-200));border-left:thin solid rgb(var(--neeto-ui-gray-200));border-right:thin solid rgb(var(--neeto-ui-gray-200))}.ntm-roles-table-sidebar__list{max-height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - 115px);max-height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - var(--ntm-roles-table-header-height) - var(--ntm-roles-table-default-scroll) - 28px);overflow:auto;white-space:nowrap}.ntm-roles-table-sidebar__list-item{display:flex;flex-direction:column;justify-content:center;min-height:48px;min-height:var(--ntm-roles-table-cell-height);overflow-wrap:break-word;position:relative;white-space:normal}.ntm-roles-table-sidebar__list-item:after{background-color:rgb(var(--neeto-ui-gray-300));content:\\\"\\\";height:1px;left:-18px;position:absolute;top:23px;width:14px}.ntm-roles-table-sidebar__list-item.ntm-roles-table-sidebar__list-item--highlighted{background-color:rgb(var(--neeto-ui-gray-100));border-top:thin solid rgb(var(--neeto-ui-gray-200));flex-direction:row;justify-content:space-between;padding:11px 24px}.ntm-roles-table__columns{border-top:thin solid rgb(var(--neeto-ui-gray-200));flex-grow:1;overflow:hidden}@media screen and (max-width:768px){.ntm-roles-table__columns{overflow:visible;overflow:initial}}.ntm-roles-table__cell{align-items:center;border-right:thin solid rgb(var(--neeto-ui-gray-200));display:flex;height:48px;height:var(--ntm-roles-table-cell-height);justify-content:center;min-height:48px;min-height:var(--ntm-roles-table-cell-height);min-width:200px;padding:12px 8px;width:100%}.ntm-roles-table-cell__checkbox-wrapper{height:1rem;margin:auto;position:absolute;width:1rem;z-index:10}.ntm-roles-table-cell__checkbox{z-index:10}.ntm-roles-table__header{align-items:center;display:flex;overflow-x:auto}.ntm-roles-table__header .ntm-roles-table__cell{border-bottom:thin solid rgb(var(--neeto-ui-gray-200));height:72px;height:var(--ntm-roles-table-header-height)}@media screen and (max-width:768px){.ntm-roles-table__header{overflow:visible;overflow:initial}}.ntm-roles-table-header-cell__container{align-items:center;display:flex;justify-content:space-between;overflow:hidden;width:100%}.ntm-roles-table-header__dropdown{flex-shrink:0;margin:3px}.ntm-roles-table-header__role-name{overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%}.ntm-roles-table__rows{max-height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - 115px);max-height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - var(--ntm-roles-table-header-height) - var(--ntm-roles-table-default-scroll) - 28px);overflow-y:auto;scrollbar-width:none;width:100%}.ntm-roles-table__rows::-webkit-scrollbar{height:0;width:0}.ntm-roles-table__rows::-webkit-scrollbar-thumb{background:rgb(var(--neeto-ui-gray-300));border-radius:50px}.ntm-roles-table__rows::-webkit-scrollbar-thumb:hover{border-radius:50px}.ntm-roles-table__rows::-webkit-scrollbar-track{background:rgb(var(--neeto-ui-gray-300))}.ntm-roles-table__rows div:last-child .ntm-roles-table__row:last-child .ntm-roles-table__cell{border-bottom:thin solid rgb(var(--neeto-ui-gray-200))}.ntm-roles-table__row{align-items:center;display:flex}.ntm-roles-table__row .ntm-roles-table__cell{overflow:hidden;position:relative}.ntm-roles-table__row .ntm-roles-table__cell p{min-width:340px;opacity:0;width:340px}.ntm-roles-table__row.ntm-roles-table__row--highlighted .ntm-roles-table__cell{background-color:rgb(var(--neeto-ui-gray-100))}.ntm-roles-table__row .ntm-roles-table__cell{border-top:thin solid rgb(var(--neeto-ui-gray-200))}.ntm-roles-table-sidebar__drop-down-button{color:rgb(var(--neeto-ui-gray-600));cursor:pointer}.ntm-roles-modal__body>*+*{margin-top:1rem}.ntm-roles-modal__footer{display:flex;gap:.5rem}.ntm-roles-pane__body{margin-bottom:1.5rem;width:100%}.ntm-roles-pane__body-wrapper>*+*{margin-top:1rem}.ntm-roles-pane__body>*+*{margin-top:1.5rem}.ntm-roles-pane__footer{display:flex;gap:.5rem}.ntm-roles-permission__heading{color:rgb(var(--neeto-ui-gray-500));text-transform:uppercase}.ntm-roles-permission__card{background-color:rgb(var(--neeto-ui-white));display:flex;flex-direction:column;gap:.75rem;padding:.4rem 0;position:relative}.ntm-roles-permission__card:after{background-color:rgb(var(--neeto-ui-gray-300));content:\\\"\\\";height:1px;left:-15px;position:absolute;top:14px;width:10px}.ntm-roles-permission__card--description{flex-grow:1}.ntm-roles-permission__card--checkbox{padding:0 .5rem}.ntm-roles-permission__card .neeto-ui-checkbox__wrapper .neeto-ui-checkbox__container{align-items:flex-start}.ntm-roles-permission__card .neeto-ui-checkbox__wrapper .neeto-ui-checkbox__container .neeto-ui-checkbox[type=checkbox]:disabled+.neeto-ui-label{cursor:not-allowed;opacity:.5}.ntm-roles-permission__sub-blocks{position:relative}.ntm-roles-permission__sub-blocks:before{background-color:rgb(var(--neeto-ui-gray-300));content:\\\"\\\";height:calc(100% - 14px);left:8px;position:absolute;top:0;width:1px}.ntm-roles-permission__sub-blocks:empty{display:none}.ntm-roles-permission-category-card{border:1px solid rgb(var(--neeto-ui-gray-400));border-radius:var(--neeto-ui-rounded);padding:10px 20px}.ntm-roles-permission-category-card>.ntm-roles-permission__card:after{display:none}.ntm-roles-help-url-wrapper{align-items:center;display:flex;justify-content:center;padding:1rem 0;width:100%}.ntm-roles-table-sidebar__list-item-spacing-handler>.ntm-roles-table-sidebar__list-item:after,.ntm-roles-table-sidebar__list-item-spacing-handler>.ntm-roles-table-sidebar__list-item:before{display:none}.ntm-roles-table-sidebar__sub-blocks{position:relative}.ntm-roles-table-sidebar__sub-blocks:before{background-color:rgb(var(--neeto-ui-gray-300));content:\\\"\\\";height:calc(100% - 24px);left:6px;position:absolute;top:0;width:1px}.ntm-roles-table-sidebar__sub-blocks:empty{display:none}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9hYnN0cmFjdHMvX3Jvb3Quc2NzcyIsImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9hcHBsaWNhdGlvbi5zY3NzIiwiYXBwL2phdmFzY3JpcHQvc3JjL3N0eWxlc2hlZXRzL2Jhc2UvX2Jhc2Uuc2NzcyIsImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9jb21wb25lbnRzL19lbXB0eS1zdGF0ZS5zY3NzIiwiYXBwL2phdmFzY3JpcHQvc3JjL3N0eWxlc2hlZXRzL3BhZ2VzL19tZW1iZXJzLnNjc3MiLCJhcHAvamF2YXNjcmlwdC9zcmMvc3R5bGVzaGVldHMvcGFnZXMvX3JvbGVzLnNjc3MiLCJhcHAvamF2YXNjcmlwdC9zcmMvc3R5bGVzaGVldHMvYWJzdHJhY3RzL19taXhpbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUNFLHFDQUFBLENBQ0Esa0NBQUEsQ0FDQSwrQkFBQSxDQUNBLG9DQ0NGLENDSkUsc0JBRUUsWUFBQSxDQURBLFVEUUosQ0NKRSxzQkFLRSxZQUFBLENBRkEsTUFBQSxDQUdBLGVBQUEsQ0FMQSxpQkFBQSxDQUNBLEtBQUEsQ0FLQSxpQkFBQSxDQUhBLFdEU0osQ0VuQkEsaUJBSUUsa0JBQUEsQ0FEQSxZQUFBLENBREEsV0FBQSxDQUdBLHNCQUFBLENBSkEsVUYwQkYsQ0czQkEsYUFDRSxhQUFBLENBQ0EsVUg4QkYsQ0c1QkUscUJBQ0UsWUg4QkosQ0czQkUseUJBRUUsWUFBQSxDQURBLFVIOEJKLENHekJJLDRCQUVFLFlBQUEsQ0FFQSxVQUFBLENBREEsNkJBQUEsQ0FGQSxVSDhCTixDR3pCSSwyQkFFRSxrQkFBQSxDQURBLFlBQUEsQ0FFQSxTSDJCTixDR3RCSSwwQkFDRSxtQkh3Qk4sQ0dyQkksd0JBRUUsbUJBQUEsQ0FEQSxVSHdCTixDR3RCTSw0QkFDRSxpQkh3QlIsQ0dwQkksMEJBQ0UsWUFBQSxDQUNBLFNIc0JOLENHakJBLDRC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R0YsQ0l4R0UsNENBQ0UsOENBQUEsQ0FFQSxVQUFBLENBQ0Esd0JBQUEsQ0FDQSxRQUFBLENBQ0EsaUJBQUEsQ0FKQSxLQUFBLENBS0EsU0owR0osQ0l2R0UsMkNBQ0UsWUp5R0oiLCJzb3VyY2VzQ29udGVudCI6WyI6cm9vdCB7XG4gIC0tbnRtLXJvbGVzLXRhYmxlLWRlZmF1bHQtc2Nyb2xsOiAxNXB4O1xuICAtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodDogNDhweDtcbiAgLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aDogNDgwcHg7XG4gIC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQ6IDcycHg7XG59XG4iLCI6cm9vdCB7XG4gIC0tbnRtLXJvbGVzLXRhYmxlLWRlZmF1bHQtc2Nyb2xsOiAxNXB4O1xuICAtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodDogNDhweDtcbiAgLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aDogNDgwcHg7XG4gIC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQ6IDcycHg7XG59XG5cbi5udG0tc2Nyb2xsYmFyX19pbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIwMHB4O1xufVxuLm50bS1zY3JvbGxiYXJfX291dGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICB3aWR0aDogMjAwcHg7XG4gIGhlaWdodDogMTUwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLm50bS1lbXB0eS1zdGF0ZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ubnRtLW1lbWJlcnMge1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG59XG4ubnRtLW1lbWJlcnMtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4ubnRtLW1lbWJlcnMtcGFnZS1sb2FkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbn1cbi5udG0tbWVtYmVycy10YWJsZV9fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogMC43NXJlbTtcbn1cbi5udG0tbWVtYmVycy10YWJsZV9fY29sdW1uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjVyZW07XG59XG4ubnRtLW1lbWJlcnMtZm9ybV9faGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuLm50bS1tZW1iZXJzLWZvcm1fX2JvZHkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG59XG4ubnRtLW1lbWJlcnMtZm9ybV9fYm9keSA+ICogKyAqIHtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xufVxuLm50bS1tZW1iZXJzLWZvcm1fX2Zvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMC41cmVtO1xufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzX19oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi5udG0tbWFuYWdlLW1lbWJlcnNfX2hlYWRlciA+ICogKyAqIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVyc19fYXBwLXJvbGVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC41cmVtIDA7XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnMtYXBwLXJvbGVzX19zZWxlY3Qtd3JhcHBlciB7XG4gIHdpZHRoOiA1MCU7XG4gIG1heC13aWR0aDogMjUwcHg7XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnMtZWZmZWN0aXZlLWFwcC1yb2xlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMC4yNXJlbSAwO1xufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzLWVmZmVjdGl2ZS1hcHAtcm9sZXNfX3JvbGUtbmFtZSB7XG4gIHdpZHRoOiA2NyU7XG4gIG1heC13aWR0aDogMzAwcHg7XG59XG5cbi5udG0tbWVtYmVycy1yYWRpby1ncm91cCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm50bS1tZW1iZXJzLXJhZGlvLWdyb3VwIC5uZWV0by11aS1yYWRpb19fY29udGFpbmVyLS1zdGFja2VkIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubnRtLW1lbWJlcnMtcmFkaW8tZ3JvdXBfX2xhYmVsIHtcbiAgcGFkZGluZy1yaWdodDogNHB4O1xufVxuLm50bS1tZW1iZXJzLXJhZGlvLWdyb3VwX19pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubnRtLW1lbWJlcnMtZm9ybS1yYWRpby1pdGVtX193cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogOHB4IDBweCAhaW1wb3J0YW50O1xufVxuLm50bS1tZW1iZXJzLWZvcm0tcmFkaW8taXRlbV9fd3JhcHBlcjpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctdG9wOiAwcHggIWltcG9ydGFudDtcbn1cbi5udG0tbWVtYmVycy1mb3JtLXJhZGlvLWl0ZW1fX2xhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuLm50bS1tZW1iZXJzLWZvcm0tcmFkaW8taXRlbV9fZGVzY3JpcHRpb24ge1xuICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNzAwKSk7XG59XG5cbi5udG0tcHJvZHVjdC1yb2xlcy10YWJsZSB0aCB7XG4gIGNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS03MDApKTtcbiAgZm9udC1zaXplOiB2YXIoLS1uZWV0by11aS10ZXh0LXhzKTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLW5lZXRvLXVpLWZvbnQtYm9sZCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ubnRtLXByb2R1Y3Qtcm9sZXMtdGFibGUgdGQsXG4ubnRtLXByb2R1Y3Qtcm9sZXMtdGFibGUgdGgge1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogOHB4O1xufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzX19jaGVja2JveC1hbGlnbi1zdGFydC5uZWV0by11aS1jaGVja2JveF9fd3JhcHBlciAubmVldG8tdWktY2hlY2tib3hfX2NvbnRhaW5lciB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuLm50bS1tYW5hZ2UtbWVtYmVyc19fY2hlY2tib3gtYWxpZ24tc3RhcnQubmVldG8tdWktY2hlY2tib3hfX3dyYXBwZXIgLm5lZXRvLXVpLWNoZWNrYm94W3R5cGU9Y2hlY2tib3hdIHtcbiAgbWFyZ2luLXRvcDogNHB4O1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlX193cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLSAyNHB4KTtcbiAgcGFkZGluZzogMCA0MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5udG0tcm9sZXMtdGFibGVfX3dyYXBwZXIge1xuICAgIC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLXdpdGgtYnJlYWRjcnVtYnMtaGVpZ2h0OiAyMTZweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm50bS1yb2xlcy10YWJsZV9fd3JhcHBlciB7XG4gICAgLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQ6IDE4NnB4O1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2NvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5udG0tcm9sZXMtdGFibGVfX2NvbnRhaW5lciB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZV9fc2lkZWJhciB7XG4gIHdpZHRoOiB2YXIoLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aCk7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLSAyOHB4KTtcbiAgbWluLXdpZHRoOiB2YXIoLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aCk7XG4gIGJvcmRlci10b3A6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAubnRtLXJvbGVzLXRhYmxlX19zaWRlYmFyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19zZWFyY2gge1xuICBwYWRkaW5nOiAyMHB4IDI0cHg7XG4gIGhlaWdodDogdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQpO1xuICBib3JkZXItbGVmdDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbiAgYm9yZGVyLXJpZ2h0OiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xuICBib3JkZXItYm90dG9tOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3Qge1xuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLXdpdGgtYnJlYWRjcnVtYnMtaGVpZ2h0KSAtIHZhcigtLW50bS1yb2xlcy10YWJsZS1oZWFkZXItaGVpZ2h0KSAtIHZhcigtLW50bS1yb2xlcy10YWJsZS1kZWZhdWx0LXNjcm9sbCkgLSAyOHB4KTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGJvcmRlci1sZWZ0OiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xuICBib3JkZXItcmlnaHQ6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG4gIGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbn1cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDFweDtcbiAgbGVmdDogLTE4cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAyM3B4O1xuICB3aWR0aDogMTRweDtcbn1cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0tLWhpZ2hsaWdodGVkIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0xMDApKTtcbiAgcGFkZGluZzogMTFweCAyNHB4O1xuICBib3JkZXItdG9wOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19jb2x1bW5zIHtcbiAgZmxleC1ncm93OiAxO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm50bS1yb2xlcy10YWJsZV9fY29sdW1ucyB7XG4gICAgb3ZlcmZsb3c6IHVuc2V0O1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2NlbGwge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtY2VsbC1oZWlnaHQpO1xuICBtaW4taGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtY2VsbC1oZWlnaHQpO1xuICBwYWRkaW5nOiAxMnB4IDhweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1jZWxsX19jaGVja2JveC13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDFyZW07XG4gIHdpZHRoOiAxcmVtO1xuICBtYXJnaW46IGF1dG87XG4gIHotaW5kZXg6IDEwO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWNlbGxfX2NoZWNrYm94IHtcbiAgei1pbmRleDogMTA7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG4ubnRtLXJvbGVzLXRhYmxlX19oZWFkZXIgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIGhlaWdodDogdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQpO1xuICBib3JkZXItYm90dG9tOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm50bS1yb2xlcy10YWJsZV9faGVhZGVyIHtcbiAgICBvdmVyZmxvdzogdW5zZXQ7XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZS1oZWFkZXItY2VsbF9fY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1oZWFkZXJfX2Ryb3Bkb3duIHtcbiAgbWFyZ2luOiAzcHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWhlYWRlcl9fcm9sZS1uYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX3Jvd3Mge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLSB2YXIoLS1udG0tcm9sZXMtdGFibGUtaGVhZGVyLWhlaWdodCkgLSB2YXIoLS1udG0tcm9sZXMtdGFibGUtZGVmYXVsdC1zY3JvbGwpIC0gMjhweCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3Jvd3M6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgd2lkdGg6IDBweDtcbiAgaGVpZ2h0OiAwcHg7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3dzOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIGJhY2tncm91bmQ6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xufVxuLm50bS1yb2xlcy10YWJsZV9fcm93czo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xufVxuLm50bS1yb2xlcy10YWJsZV9fcm93czo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICBiYWNrZ3JvdW5kOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3Jvd3MgZGl2Omxhc3QtY2hpbGQgLm50bS1yb2xlcy10YWJsZV9fcm93Omxhc3QtY2hpbGQgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX3JvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3cgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3JvdyAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHAge1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogMzQwcHg7XG4gIG1pbi13aWR0aDogMzQwcHg7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3cubnRtLXJvbGVzLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVkIC5udG0tcm9sZXMtdGFibGVfX2NlbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0xMDApKTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3JvdyAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgYm9yZGVyLXRvcDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19kcm9wLWRvd24tYnV0dG9uIHtcbiAgY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTYwMCkpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5udG0tcm9sZXMtbW9kYWxfX2JvZHkgPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG4ubnRtLXJvbGVzLW1vZGFsX19mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDAuNXJlbTtcbn1cblxuLm50bS1yb2xlcy1wYW5lX19ib2R5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cbi5udG0tcm9sZXMtcGFuZV9fYm9keS13cmFwcGVyID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuLm50bS1yb2xlcy1wYW5lX19ib2R5ID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG59XG4ubnRtLXJvbGVzLXBhbmVfX2Zvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMC41cmVtO1xufVxuXG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2hlYWRpbmcge1xuICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNTAwKSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktd2hpdGUpKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDAuNzVyZW07XG4gIHBhZGRpbmc6IDAuNHJlbSAwO1xufVxuLm50bS1yb2xlcy1wZXJtaXNzaW9uX19jYXJkOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDFweDtcbiAgbGVmdDogLTE1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxNHB4O1xuICB3aWR0aDogMTBweDtcbn1cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fY2FyZC0tZGVzY3JpcHRpb24ge1xuICBmbGV4LWdyb3c6IDE7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQtLWNoZWNrYm94IHtcbiAgcGFkZGluZzogMCAwLjVyZW07XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQgLm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIC5uZWV0by11aS1jaGVja2JveF9fY29udGFpbmVyIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQgLm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIC5uZWV0by11aS1jaGVja2JveF9fY29udGFpbmVyIC5uZWV0by11aS1jaGVja2JveFt0eXBlPWNoZWNrYm94XTpkaXNhYmxlZCArIC5uZWV0by11aS1sYWJlbCB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fc3ViLWJsb2NrcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fc3ViLWJsb2Nrczo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gIHRvcDogMDtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNHB4KTtcbiAgbGVmdDogOHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX3N1Yi1ibG9ja3M6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubnRtLXJvbGVzLXBlcm1pc3Npb24tY2F0ZWdvcnktY2FyZCB7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tbmVldG8tdWktcm91bmRlZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTQwMCkpO1xufVxuLm50bS1yb2xlcy1wZXJtaXNzaW9uLWNhdGVnb3J5LWNhcmQgPiAubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQ6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm50bS1yb2xlcy1oZWxwLXVybC13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtIDA7XG59XG5cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtLXNwYWNpbmctaGFuZGxlciA+IC5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0tc3BhY2luZy1oYW5kbGVyID4gLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW06OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19zdWItYmxvY2tzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19zdWItYmxvY2tzOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgdG9wOiAwO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDI0cHgpO1xuICBsZWZ0OiA2cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbn1cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fc3ViLWJsb2NrczplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59IiwiLm50bS1zY3JvbGxiYXIge1xuICAmX19pbm5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgfVxuXG4gICZfX291dGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG4iLCIubnRtLWVtcHR5LXN0YXRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4iLCIubnRtLW1lbWJlcnMge1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJi13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgJi1wYWdlLWxvYWRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgfVxuXG4gICYtdGFibGUge1xuICAgICZfX3dyYXBwZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgIH1cbiAgICAmX19jb2x1bW4ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDAuNXJlbTtcbiAgICB9XG4gIH1cblxuICAmLWZvcm0ge1xuICAgICZfX2hlYWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgfVxuXG4gICAgJl9fYm9keSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgJiA+ICogKyAqIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2Zvb3RlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiAwLjVyZW07XG4gICAgfVxuICB9XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnNfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICYgPiAqICsgKiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgfVxufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzX19hcHAtcm9sZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVycy1hcHAtcm9sZXNfX3NlbGVjdC13cmFwcGVyIHtcbiAgd2lkdGg6IDUwJTtcbiAgbWF4LXdpZHRoOiAyNTBweDtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVycy1lZmZlY3RpdmUtYXBwLXJvbGVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwLjI1cmVtIDA7XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnMtZWZmZWN0aXZlLWFwcC1yb2xlc19fcm9sZS1uYW1lIHtcbiAgd2lkdGg6IDY3JTtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbn1cblxuLm50bS1tZW1iZXJzLXJhZGlvLWdyb3VwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIC5uZWV0by11aS1yYWRpb19fY29udGFpbmVyLS1zdGFja2VkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICZfX2xhYmVsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4gIH1cblxuICAmX19pY29uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLm50bS1tZW1iZXJzLWZvcm0tcmFkaW8taXRlbSB7XG4gICZfX3dyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nOiA4cHggMHB4ICFpbXBvcnRhbnQ7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJl9fbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gICZfX2Rlc2NyaXB0aW9uIHtcbiAgICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNzAwKSk7XG4gIH1cbn1cblxuLm50bS1wcm9kdWN0LXJvbGVzLXRhYmxlIHtcbiAgdGgge1xuICAgIGNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS03MDApKTtcbiAgICBmb250LXNpemU6IHZhcigtLW5lZXRvLXVpLXRleHQteHMpO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLW5lZXRvLXVpLWZvbnQtYm9sZCk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICB0ZCxcbiAgdGgge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZzogOHB4O1xuICB9XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnNfX2NoZWNrYm94LWFsaWduLXN0YXJ0Lm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIHtcbiAgLm5lZXRvLXVpLWNoZWNrYm94X19jb250YWluZXIge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uZWV0by11aS1jaGVja2JveFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgfVxufVxuIiwiLm50bS1yb2xlcy10YWJsZV9fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoXG4gICAgMTAwdmggLSB2YXIoLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQpIC0gMjRweFxuICApO1xuICBwYWRkaW5nOiAwIDQwcHg7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQ6IDIxNnB4O1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodDogMTg2cHg7XG5cbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19zaWRlYmFyIHtcbiAgd2lkdGg6IHZhcigtLW50bS1yb2xlcy1zaWRlYmFyLXdpZHRoKTtcbiAgaGVpZ2h0OiBjYWxjKFxuICAgIDEwMHZoIC0gdmFyKC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLXdpdGgtYnJlYWRjcnVtYnMtaGVpZ2h0KSAtIDI4cHhcbiAgKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aCk7XG4gIGJvcmRlci10b3A6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fc2VhcmNoIHtcbiAgcGFkZGluZzogMjBweCAyNHB4O1xuICBoZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1oZWFkZXItaGVpZ2h0KTtcbiAgYm9yZGVyLWxlZnQ6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbiAgYm9yZGVyLWJvdHRvbTogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0IHtcbiAgbWF4LWhlaWdodDogY2FsYyhcbiAgICAxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLVxuICAgICAgdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQpIC1cbiAgICAgIHZhcigtLW50bS1yb2xlcy10YWJsZS1kZWZhdWx0LXNjcm9sbCkgLSAyOHB4XG4gICk7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBib3JkZXItbGVmdDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbiAgYm9yZGVyLXJpZ2h0OiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xuICBib3JkZXItYm90dG9tOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3QtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtaW4taGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtY2VsbC1oZWlnaHQpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbGVmdDogLTE4cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMjNweDtcbiAgICB3aWR0aDogMTRweDtcbiAgfVxuXG4gICYubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3QtaXRlbS0taGlnaGxpZ2h0ZWQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTEwMCkpO1xuICAgIHBhZGRpbmc6IDExcHggMjRweDtcbiAgICBib3JkZXItdG9wOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2NvbHVtbnMge1xuICBmbGV4LWdyb3c6IDE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBvdmVyZmxvdzogdW5zZXQ7XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICBoZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodCk7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodCk7XG4gIHBhZGRpbmc6IDEycHggOHB4O1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1jZWxsX19jaGVja2JveC13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDFyZW07XG4gIHdpZHRoOiAxcmVtO1xuICBtYXJnaW46IGF1dG87XG4gIHotaW5kZXg6IDEwO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWNlbGxfX2NoZWNrYm94IHtcbiAgei1pbmRleDogMTA7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gICAgaGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtaGVhZGVyLWhlaWdodCk7XG4gICAgYm9yZGVyLWJvdHRvbTogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgb3ZlcmZsb3c6IHVuc2V0O1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGUtaGVhZGVyLWNlbGxfX2NvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5udG0tcm9sZXMtdGFibGUtaGVhZGVyX19kcm9wZG93biB7XG4gIG1hcmdpbjogM3B4O1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1oZWFkZXJfX3JvbGUtbmFtZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19yb3dzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IGNhbGMoXG4gICAgMTAwdmggLSAje3ZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCl9IC0gdmFyKFxuICAgICAgICAtLW50bS1yb2xlcy10YWJsZS1oZWFkZXItaGVpZ2h0XG4gICAgICApIC0gdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWRlZmF1bHQtc2Nyb2xsKSAtIDI4cHhcbiAgKTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgQGluY2x1ZGUgc2Nyb2xsYmFycyhcbiAgICAwcHgsXG4gICAgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSksXG4gICAgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSlcbiAgKTtcblxuICBkaXYge1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAubnRtLXJvbGVzLXRhYmxlX19yb3cge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIC5udG0tcm9sZXMtdGFibGVfX2NlbGwge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZV9fcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC8vIEhpZGRlbiAtIEp1c3QgZm9yIGhlaWdodCByZWZlcmVuY2VcbiAgICBwIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB3aWR0aDogMzQwcHg7XG4gICAgICBtaW4td2lkdGg6IDM0MHB4O1xuICAgIH1cbiAgfVxuXG4gICYubnRtLXJvbGVzLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVkIHtcbiAgICAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTEwMCkpO1xuICAgIH1cbiAgfVxuXG4gIC5udG0tcm9sZXMtdGFibGVfX2NlbGwge1xuICAgIGJvcmRlci10b3A6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19kcm9wLWRvd24tYnV0dG9uIHtcbiAgY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTYwMCkpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5udG0tcm9sZXMtbW9kYWwge1xuICAmX19ib2R5ID4gKiArICoge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gIH1cblxuICAmX19mb290ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAwLjVyZW07XG4gIH1cbn1cblxuLm50bS1yb2xlcy1wYW5lIHtcbiAgJl9fYm9keSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXG4gICAgJi13cmFwcGVyID4gKiArICoge1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG5cbiAgICAmID4gKiArICoge1xuICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIH1cbiAgfVxuXG4gICZfX2Zvb3RlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDAuNXJlbTtcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXBlcm1pc3Npb24ge1xuICAmX19oZWFkaW5nIHtcbiAgICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNTAwKSk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuXG4gICZfX2NhcmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS13aGl0ZSkpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDAuNzVyZW07XG4gICAgcGFkZGluZzogMC40cmVtIDA7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGxlZnQ6IC0xNXB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxNHB4O1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgfVxuXG4gICAgJi0tZGVzY3JpcHRpb24ge1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cblxuICAgICYtLWNoZWNrYm94IHtcbiAgICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICAgIH1cblxuICAgIC5uZWV0by11aS1jaGVja2JveF9fd3JhcHBlciAubmVldG8tdWktY2hlY2tib3hfX2NvbnRhaW5lciB7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgICAgLm5lZXRvLXVpLWNoZWNrYm94W3R5cGU9XCJjaGVja2JveFwiXTpkaXNhYmxlZCArIC5uZWV0by11aS1sYWJlbCB7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19zdWItYmxvY2tzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gICAgICB0b3A6IDA7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNHB4KTtcbiAgICAgIGxlZnQ6IDhweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxcHg7XG4gICAgfVxuXG4gICAgJjplbXB0eSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ubnRtLXJvbGVzLXBlcm1pc3Npb24tY2F0ZWdvcnktY2FyZCB7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tbmVldG8tdWktcm91bmRlZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTQwMCkpO1xuICAmID4gLm50bS1yb2xlcy1wZXJtaXNzaW9uX19jYXJkIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ubnRtLXJvbGVzLWhlbHAtdXJsLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDFyZW0gMDtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0tc3BhY2luZy1oYW5kbGVyIHtcbiAgJiA+IC5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19zdWItYmxvY2tzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gICAgdG9wOiAwO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyNHB4KTtcbiAgICBsZWZ0OiA2cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gIH1cblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCJAbWl4aW4gc2Nyb2xsYmFycyhcbiAgJHNpemUsXG4gICRmb3JlZ3JvdW5kLWNvbG9yOiAkbmVldG8tdWktZ3JheS0zMDAsXG4gICRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudFxuKSB7XG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTtcblxuICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6ICRzaXplO1xuICAgIGhlaWdodDogJHNpemU7XG4gIH1cblxuICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogJGZvcmVncm91bmQtY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICB9XG59XG4iXX0= */\";\nn(css,{});\n\nvar Profile = {\n Pane: Profile$1,\n usePaneState: useProfileUpdatePaneState\n};\n\nexport { Groups, MANAGE_MEMBERS_PERMISSION, MANAGE_ROLES_PERMISSION, ManageMember, Permissions, Profile, index$1 as Roles, RolesRadioGroup, index as TeamMembers, VIEW_MEMBERS_PERMISSION, VIEW_ROLES_PERMISSION, hasPermission, refetchMembers, useFetchMembers, useFetchMembersCountsPerCategory, useMembersSidenav };\n//# sourceMappingURL=index.js.map\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","var _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\nvar knot = function knot() {\n var extended = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var events = Object.create(null);\n\n function on(name, handler) {\n events[name] = events[name] || [];\n events[name].push(handler);\n return this;\n }\n\n function once(name, handler) {\n handler._once = true;\n on(name, handler);\n return this;\n }\n\n function off(name) {\n var handler = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n handler ? events[name].splice(events[name].indexOf(handler), 1) : delete events[name];\n\n return this;\n }\n\n function emit(name) {\n var _this = this;\n\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n // cache the events, to avoid consequences of mutation\n var cache = events[name] && events[name].slice();\n\n // only fire handlers if they exist\n cache && cache.forEach(function (handler) {\n // remove handlers added with 'once'\n handler._once && off(name, handler);\n\n // set 'this' context, pass args to handlers\n handler.apply(_this, args);\n });\n\n return this;\n }\n\n return _extends({}, extended, {\n\n on: on,\n once: once,\n off: off,\n emit: emit\n });\n};\n\nvar bricks = function bricks() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n // privates\n\n var persist = void 0; // packing new elements, or all elements?\n var ticking = void 0; // for debounced resize\n\n var sizeIndex = void 0;\n var sizeDetail = void 0;\n\n var columnTarget = void 0;\n var columnHeights = void 0;\n\n var nodeTop = void 0;\n var nodeLeft = void 0;\n var nodeWidth = void 0;\n var nodeHeight = void 0;\n\n var nodes = void 0;\n var nodesWidths = void 0;\n var nodesHeights = void 0;\n\n // resolve options\n\n var packed = options.packed.indexOf('data-') === 0 ? options.packed : 'data-' + options.packed;\n var sizes = options.sizes.slice().reverse();\n var position = options.position !== false;\n\n var container = options.container.nodeType ? options.container : document.querySelector(options.container);\n\n var selectors = {\n all: function all() {\n return toArray(container.children);\n },\n new: function _new() {\n return toArray(container.children).filter(function (node) {\n return !node.hasAttribute('' + packed);\n });\n }\n };\n\n // series\n\n var setup = [setSizeIndex, setSizeDetail, setColumns];\n\n var run = [setNodes, setNodesDimensions, setNodesStyles, setContainerStyles];\n\n // instance\n\n var instance = knot({\n pack: pack,\n update: update,\n resize: resize\n });\n\n return instance;\n\n // general helpers\n\n function runSeries(functions) {\n functions.forEach(function (func) {\n return func();\n });\n }\n\n // array helpers\n\n function toArray(input) {\n var scope = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : document;\n\n return Array.prototype.slice.call(input);\n }\n\n function fillArray(length) {\n return Array.apply(null, Array(length)).map(function () {\n return 0;\n });\n }\n\n // size helpers\n\n function getSizeIndex() {\n // find index of widest matching media query\n return sizes.map(function (size) {\n return size.mq && window.matchMedia('(min-width: ' + size.mq + ')').matches;\n }).indexOf(true);\n }\n\n function setSizeIndex() {\n sizeIndex = getSizeIndex();\n }\n\n function setSizeDetail() {\n // if no media queries matched, use the base case\n sizeDetail = sizeIndex === -1 ? sizes[sizes.length - 1] : sizes[sizeIndex];\n }\n\n // column helpers\n\n function setColumns() {\n columnHeights = fillArray(sizeDetail.columns);\n }\n\n // node helpers\n\n function setNodes() {\n nodes = selectors[persist ? 'new' : 'all']();\n }\n\n function setNodesDimensions() {\n // exit if empty container\n if (nodes.length === 0) {\n return;\n }\n\n nodesWidths = nodes.map(function (element) {\n return element.clientWidth;\n });\n nodesHeights = nodes.map(function (element) {\n return element.clientHeight;\n });\n }\n\n function setNodesStyles() {\n nodes.forEach(function (element, index) {\n columnTarget = columnHeights.indexOf(Math.min.apply(Math, columnHeights));\n\n element.style.position = 'absolute';\n\n nodeTop = columnHeights[columnTarget] + 'px';\n nodeLeft = columnTarget * nodesWidths[index] + columnTarget * sizeDetail.gutter + 'px';\n\n // support positioned elements (default) or transformed elements\n if (position) {\n element.style.top = nodeTop;\n element.style.left = nodeLeft;\n } else {\n element.style.transform = 'translate3d(' + nodeLeft + ', ' + nodeTop + ', 0)';\n }\n\n element.setAttribute(packed, '');\n\n // ignore nodes with no width and/or height\n nodeWidth = nodesWidths[index];\n nodeHeight = nodesHeights[index];\n\n if (nodeWidth && nodeHeight) {\n columnHeights[columnTarget] += nodeHeight + sizeDetail.gutter;\n }\n });\n }\n\n // container helpers\n\n function setContainerStyles() {\n container.style.position = 'relative';\n container.style.width = sizeDetail.columns * nodeWidth + (sizeDetail.columns - 1) * sizeDetail.gutter + 'px';\n container.style.height = Math.max.apply(Math, columnHeights) - sizeDetail.gutter + 'px';\n }\n\n // resize helpers\n\n function resizeFrame() {\n if (!ticking) {\n window.requestAnimationFrame(resizeHandler);\n ticking = true;\n }\n }\n\n function resizeHandler() {\n if (sizeIndex !== getSizeIndex()) {\n pack();\n instance.emit('resize', sizeDetail);\n }\n\n ticking = false;\n }\n\n // API\n\n function pack() {\n persist = false;\n runSeries(setup.concat(run));\n\n return instance.emit('pack');\n }\n\n function update() {\n persist = true;\n runSeries(run);\n\n return instance.emit('update');\n }\n\n function resize() {\n var flag = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n\n var action = flag ? 'addEventListener' : 'removeEventListener';\n\n window[action]('resize', resizeFrame);\n\n return instance;\n }\n};\n\nexport default bricks;\n","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar InfiniteScroll = function (_Component) {\n _inherits(InfiniteScroll, _Component);\n\n function InfiniteScroll(props) {\n _classCallCheck(this, InfiniteScroll);\n\n var _this = _possibleConstructorReturn(this, (InfiniteScroll.__proto__ || Object.getPrototypeOf(InfiniteScroll)).call(this, props));\n\n _this.scrollListener = _this.scrollListener.bind(_this);\n _this.eventListenerOptions = _this.eventListenerOptions.bind(_this);\n _this.mousewheelListener = _this.mousewheelListener.bind(_this);\n return _this;\n }\n\n _createClass(InfiniteScroll, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n this.pageLoaded = this.props.pageStart;\n this.options = this.eventListenerOptions();\n this.attachScrollListener();\n }\n }, {\n key: 'componentDidUpdate',\n value: function componentDidUpdate() {\n if (this.props.isReverse && this.loadMore) {\n var parentElement = this.getParentElement(this.scrollComponent);\n parentElement.scrollTop = parentElement.scrollHeight - this.beforeScrollHeight + this.beforeScrollTop;\n this.loadMore = false;\n }\n this.attachScrollListener();\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n this.detachScrollListener();\n this.detachMousewheelListener();\n }\n }, {\n key: 'isPassiveSupported',\n value: function isPassiveSupported() {\n var passive = false;\n\n var testOptions = {\n get passive() {\n passive = true;\n }\n };\n\n try {\n document.addEventListener('test', null, testOptions);\n document.removeEventListener('test', null, testOptions);\n } catch (e) {\n // ignore\n }\n return passive;\n }\n }, {\n key: 'eventListenerOptions',\n value: function eventListenerOptions() {\n var options = this.props.useCapture;\n\n if (this.isPassiveSupported()) {\n options = {\n useCapture: this.props.useCapture,\n passive: true\n };\n } else {\n options = {\n passive: false\n };\n }\n return options;\n }\n\n // Set a defaut loader for all your `InfiniteScroll` components\n\n }, {\n key: 'setDefaultLoader',\n value: function setDefaultLoader(loader) {\n this.defaultLoader = loader;\n }\n }, {\n key: 'detachMousewheelListener',\n value: function detachMousewheelListener() {\n var scrollEl = window;\n if (this.props.useWindow === false) {\n scrollEl = this.scrollComponent.parentNode;\n }\n\n scrollEl.removeEventListener('mousewheel', this.mousewheelListener, this.options ? this.options : this.props.useCapture);\n }\n }, {\n key: 'detachScrollListener',\n value: function detachScrollListener() {\n var scrollEl = window;\n if (this.props.useWindow === false) {\n scrollEl = this.getParentElement(this.scrollComponent);\n }\n\n scrollEl.removeEventListener('scroll', this.scrollListener, this.options ? this.options : this.props.useCapture);\n scrollEl.removeEventListener('resize', this.scrollListener, this.options ? this.options : this.props.useCapture);\n }\n }, {\n key: 'getParentElement',\n value: function getParentElement(el) {\n var scrollParent = this.props.getScrollParent && this.props.getScrollParent();\n if (scrollParent != null) {\n return scrollParent;\n }\n return el && el.parentNode;\n }\n }, {\n key: 'filterProps',\n value: function filterProps(props) {\n return props;\n }\n }, {\n key: 'attachScrollListener',\n value: function attachScrollListener() {\n var parentElement = this.getParentElement(this.scrollComponent);\n\n if (!this.props.hasMore || !parentElement) {\n return;\n }\n\n var scrollEl = window;\n if (this.props.useWindow === false) {\n scrollEl = parentElement;\n }\n\n scrollEl.addEventListener('mousewheel', this.mousewheelListener, this.options ? this.options : this.props.useCapture);\n scrollEl.addEventListener('scroll', this.scrollListener, this.options ? this.options : this.props.useCapture);\n scrollEl.addEventListener('resize', this.scrollListener, this.options ? this.options : this.props.useCapture);\n\n if (this.props.initialLoad) {\n this.scrollListener();\n }\n }\n }, {\n key: 'mousewheelListener',\n value: function mousewheelListener(e) {\n // Prevents Chrome hangups\n // See: https://stackoverflow.com/questions/47524205/random-high-content-download-time-in-chrome/47684257#47684257\n if (e.deltaY === 1 && !this.isPassiveSupported()) {\n e.preventDefault();\n }\n }\n }, {\n key: 'scrollListener',\n value: function scrollListener() {\n var el = this.scrollComponent;\n var scrollEl = window;\n var parentNode = this.getParentElement(el);\n\n var offset = void 0;\n if (this.props.useWindow) {\n var doc = document.documentElement || document.body.parentNode || document.body;\n var scrollTop = scrollEl.pageYOffset !== undefined ? scrollEl.pageYOffset : doc.scrollTop;\n if (this.props.isReverse) {\n offset = scrollTop;\n } else {\n offset = this.calculateOffset(el, scrollTop);\n }\n } else if (this.props.isReverse) {\n offset = parentNode.scrollTop;\n } else {\n offset = el.scrollHeight - parentNode.scrollTop - parentNode.clientHeight;\n }\n\n // Here we make sure the element is visible as well as checking the offset\n if (offset < Number(this.props.threshold) && el && el.offsetParent !== null) {\n this.detachScrollListener();\n this.beforeScrollHeight = parentNode.scrollHeight;\n this.beforeScrollTop = parentNode.scrollTop;\n // Call loadMore after detachScrollListener to allow for non-async loadMore functions\n if (typeof this.props.loadMore === 'function') {\n this.props.loadMore(this.pageLoaded += 1);\n this.loadMore = true;\n }\n }\n }\n }, {\n key: 'calculateOffset',\n value: function calculateOffset(el, scrollTop) {\n if (!el) {\n return 0;\n }\n\n return this.calculateTopPosition(el) + (el.offsetHeight - scrollTop - window.innerHeight);\n }\n }, {\n key: 'calculateTopPosition',\n value: function calculateTopPosition(el) {\n if (!el) {\n return 0;\n }\n return el.offsetTop + this.calculateTopPosition(el.offsetParent);\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n var renderProps = this.filterProps(this.props);\n\n var children = renderProps.children,\n element = renderProps.element,\n hasMore = renderProps.hasMore,\n initialLoad = renderProps.initialLoad,\n isReverse = renderProps.isReverse,\n loader = renderProps.loader,\n loadMore = renderProps.loadMore,\n pageStart = renderProps.pageStart,\n ref = renderProps.ref,\n threshold = renderProps.threshold,\n useCapture = renderProps.useCapture,\n useWindow = renderProps.useWindow,\n getScrollParent = renderProps.getScrollParent,\n props = _objectWithoutProperties(renderProps, ['children', 'element', 'hasMore', 'initialLoad', 'isReverse', 'loader', 'loadMore', 'pageStart', 'ref', 'threshold', 'useCapture', 'useWindow', 'getScrollParent']);\n\n props.ref = function (node) {\n _this2.scrollComponent = node;\n if (ref) {\n ref(node);\n }\n };\n\n var childrenArray = [children];\n if (hasMore) {\n if (loader) {\n isReverse ? childrenArray.unshift(loader) : childrenArray.push(loader);\n } else if (this.defaultLoader) {\n isReverse ? childrenArray.unshift(this.defaultLoader) : childrenArray.push(this.defaultLoader);\n }\n }\n return _react2.default.createElement(element, props, childrenArray);\n }\n }]);\n\n return InfiniteScroll;\n}(_react.Component);\n\nInfiniteScroll.propTypes = {\n children: _propTypes2.default.node.isRequired,\n element: _propTypes2.default.node,\n hasMore: _propTypes2.default.bool,\n initialLoad: _propTypes2.default.bool,\n isReverse: _propTypes2.default.bool,\n loader: _propTypes2.default.node,\n loadMore: _propTypes2.default.func.isRequired,\n pageStart: _propTypes2.default.number,\n ref: _propTypes2.default.func,\n getScrollParent: _propTypes2.default.func,\n threshold: _propTypes2.default.number,\n useCapture: _propTypes2.default.bool,\n useWindow: _propTypes2.default.bool\n};\nInfiniteScroll.defaultProps = {\n element: 'div',\n hasMore: false,\n initialLoad: true,\n pageStart: 0,\n ref: null,\n threshold: 250,\n useWindow: true,\n isReverse: false,\n useCapture: false,\n loader: null,\n getScrollParent: null\n};\nexports.default = InfiniteScroll;\nmodule.exports = exports['default'];\n","module.exports = require('./dist/InfiniteScroll')\n","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _class, _temp2;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _bricks = require('bricks.js');\n\nvar _bricks2 = _interopRequireDefault(_bricks);\n\nvar _reactInfiniteScroller = require('react-infinite-scroller');\n\nvar _reactInfiniteScroller2 = _interopRequireDefault(_reactInfiniteScroller);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar MasonryInfiniteScroller = (_temp2 = _class = function (_Component) {\n _inherits(MasonryInfiniteScroller, _Component);\n\n function MasonryInfiniteScroller() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, MasonryInfiniteScroller);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = MasonryInfiniteScroller.__proto__ || Object.getPrototypeOf(MasonryInfiniteScroller)).call.apply(_ref, [this].concat(args))), _this), _this.setContainerRef = function (component) {\n _this.masonryContainer = component;\n }, _this.forcePack = function () {\n if (_this.masonryContainer) {\n _this.state.instance.pack();\n }\n }, _this.forceUpdate = function () {\n if (_this.masonryContainer) {\n _this.state.instance.update();\n }\n }, _this.createNewInstance = function () {\n var _this$props = _this.props,\n packed = _this$props.packed,\n sizes = _this$props.sizes,\n children = _this$props.children,\n position = _this$props.position;\n\n var instance = (0, _bricks2.default)({\n container: _this.masonryContainer,\n packed: packed,\n sizes: sizes,\n position: position\n });\n\n instance.resize(true);\n\n if (children.length > 0) {\n instance.pack();\n }\n\n _this.setState(function () {\n return { instance: instance };\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(MasonryInfiniteScroller, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n this.createNewInstance();\n }\n }, {\n key: 'componentDidUpdate',\n value: function componentDidUpdate(prevProps) {\n var children = this.props.children;\n var instance = this.state.instance;\n\n\n if (prevProps.children.length === 0 && children.length === 0) {\n return;\n }\n\n if (prevProps.children.length === 0 && children.length > 0) {\n return instance.pack();\n }\n\n if (prevProps.children.length !== children.length) {\n if (this.props.pack) {\n return instance.pack();\n } else {\n return instance.update();\n }\n }\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n if (this.state) {\n this.state.instance.resize(false);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n var _props = this.props,\n children = _props.children,\n className = _props.className,\n style = _props.style,\n pack = _props.pack,\n packed = _props.packed,\n position = _props.position,\n sizes = _props.sizes,\n props = _objectWithoutProperties(_props, ['children', 'className', 'style', 'pack', 'packed', 'position', 'sizes']);\n\n return _react2.default.createElement(\n _reactInfiniteScroller2.default,\n props,\n _react2.default.createElement(\n 'div',\n { ref: this.setContainerRef, className: className, style: style },\n children\n )\n );\n }\n }]);\n\n return MasonryInfiniteScroller;\n}(_react.Component), _class.propTypes = {\n children: _propTypes2.default.arrayOf(_propTypes2.default.element).isRequired,\n className: _propTypes2.default.string,\n initialLoad: _propTypes2.default.bool,\n pack: _propTypes2.default.bool,\n packed: _propTypes2.default.string,\n position: _propTypes2.default.bool,\n sizes: _propTypes2.default.array,\n style: _propTypes2.default.object\n}, _class.defaultProps = {\n className: '',\n initialLoad: true,\n pack: false,\n packed: 'data-packed',\n position: true,\n sizes: [{ columns: 1, gutter: 20 }, { mq: '768px', columns: 2, gutter: 20 }, { mq: '1024px', columns: 3, gutter: 20 }],\n style: {}\n}, _temp2);\nexports.default = MasonryInfiniteScroller;","//Abstracts\n@import \"../abstracts/variables\";\n\n.niu-unsplash-container {\n height: calc(#{$niu-modal-height} - #{$niu-modal-header-height}) !important;\n max-height: $niu-unsplash-container-max-height;\n\n img {\n height: 100%;\n width: 100%;\n object-fit: cover;\n animation: fade-in 1.2s 1s cubic-bezier(0.39, 0.575, 0.565, 1) both;\n border-radius: var(--neeto-ui-rounded);\n position: relative;\n cursor: pointer;\n }\n}\n","import { useCallback, useState } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { MenuHorizontal } from \"neetoicons\";\nimport { hasPermission, VIEW_ROLES_PERMISSION } from \"neetoteam\";\nimport { Alert, Dropdown, Spinner } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\nimport MasonryInfiniteScroller from \"react-masonry-infinite\";\n\nimport { useBulkDestroyAssets } from \"hooks/useAssetsApi\";\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/components/_image-library.scss\";\n\nimport {\n ASSETS_DESTROY_URL,\n INFINITE_SCROLLER_SIZES,\n INFINITE_SCROLLER_STYLE,\n TABS,\n} from \"../constants\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst InfiniteScroller = ({\n hasMore = false,\n loadMore = noop,\n tab,\n images,\n setSelectedImage = noop,\n handleUnsplashImageSelect = noop,\n}) => {\n const { t } = useTranslation();\n const [deleteConfirmation, setDeleteConfirmation] = useState({\n isOpen: false,\n imageIds: [],\n });\n\n const { isPending, mutate: bulkDelete } =\n useBulkDestroyAssets(ASSETS_DESTROY_URL);\n\n const hasPermissioToDeleteImage = hasPermission(VIEW_ROLES_PERMISSION);\n\n const handleDelete = useCallback(() => {\n bulkDelete(deleteConfirmation.imageIds, {\n onSuccess: () => setDeleteConfirmation({ isOpen: false, imageIds: [] }),\n });\n }, [deleteConfirmation.imageIds]);\n\n const Loader = (\n <div className=\"flex justify-center\">\n <Spinner />\n </div>\n );\n\n return (\n <div className=\"niu-unsplash-container mr-2 max-w-full overflow-x-hidden overflow-y-scroll\">\n <MasonryInfiniteScroller\n {...{ hasMore, loadMore }}\n pack\n position\n className=\"w-full\"\n loader={Loader}\n sizes={INFINITE_SCROLLER_SIZES}\n style={INFINITE_SCROLLER_STYLE}\n useWindow={false}\n >\n {images.map((image, index) => (\n <div className=\"float-left w-1/2 pb-4 pr-4 md:w-1/4\" key={image.id}>\n <div\n className=\"relative w-full\"\n style={{\n paddingBottom: `${(image.height / image.width) * 100}%`,\n }}\n >\n <div\n className=\"neeto-ui-rounded-sm neeto-ui-bg-gray-100 group absolute h-full w-full\"\n id={`unsplashImage${image.id}`}\n >\n {tab === TABS[1].key && (\n <>\n <img\n data-cy={`niu-unsplash-image-${index}`}\n src={image?.urls?.regular}\n onClick={() => handleUnsplashImageSelect(image)}\n />\n <a\n className=\"neeto-ui-text-gray-100 absolute bottom-2 left-2 m-auto text-xs underline opacity-0 group-hover:opacity-100\"\n href={`https://unsplash.com/@${image?.user?.username}`}\n rel=\"noreferrer\"\n target=\"_blank\"\n >\n {image?.user?.name}\n {\" | \"} {t(\"neetoImageUploader.labels.unsplash\")}\n </a>\n </>\n )}\n {tab === TABS[0].key && (\n <>\n {hasPermissioToDeleteImage && (\n <Dropdown\n buttonSize=\"small\"\n buttonStyle=\"tertiary\"\n data-cy={`image-library-image-options-${index}`}\n icon={MenuHorizontal}\n buttonProps={{\n className:\n // eslint-disable-next-line @bigbinary/neeto/use-neetoui-classes\n \"absolute right-2 top-2 z-[1] rounded-full\",\n }}\n >\n <Menu>\n <MenuItem.Button\n data-cy=\"image-library-image-delete\"\n onClick={() =>\n setDeleteConfirmation({\n isOpen: true,\n imageIds: [image?.fileId || image.id],\n })\n }\n >\n {t(\"neetoImageUploader.deleteConfirmation.delete\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n )}\n <img\n data-cy={`niu-library-image-${index}`}\n src={image?.url}\n onClick={() => setSelectedImage(image)}\n />\n </>\n )}\n </div>\n </div>\n </div>\n ))}\n </MasonryInfiniteScroller>\n <Alert\n isOpen={deleteConfirmation.isOpen}\n isSubmitting={isPending}\n message={t(\"neetoImageUploader.deleteConfirmation.message\")}\n submitButtonLabel={t(\"neetoImageUploader.deleteConfirmation.delete\")}\n title={t(\"neetoImageUploader.deleteConfirmation.title\")}\n onClose={() => setDeleteConfirmation({ isOpen: false, imageIds: [] })}\n onSubmit={handleDelete}\n />\n </div>\n );\n};\n\nexport default InfiniteScroller;\n","import { Spinner, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchAssets } from \"hooks/useAssetsApi\";\n\nimport InfiniteScroller from \"./InfiniteScroller\";\n\nimport { ASSETS_FETCH_URL, IMAGES_PER_PAGE, TABS } from \"../constants\";\n\nconst Images = ({ debouncedQuery, setSelectedImage }) => {\n const { t } = useTranslation();\n\n const {\n fetchNextPage,\n hasNextPage,\n data: { results = [] } = {},\n isLoading,\n isError,\n } = useFetchAssets({\n searchTerm: debouncedQuery,\n per: IMAGES_PER_PAGE,\n url: ASSETS_FETCH_URL,\n });\n\n if (isError) {\n return (\n <Typography className=\"mt-9 flex justify-center\" style=\"body2\">\n {t(\"neetoImageUploader.unsplash.errorMessage\")}\n </Typography>\n );\n }\n\n if (isLoading) {\n return (\n <div className=\"flex justify-around\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <InfiniteScroller\n {...{ setSelectedImage }}\n hasMore={hasNextPage}\n images={results}\n key={debouncedQuery}\n loadMore={fetchNextPage}\n tab={TABS[0].key}\n />\n );\n};\n\nexport default Images;\n","import axios from \"axios\";\n\nconst newAxiosInstance = axios.create();\n\nconst searchUnsplashImages = ({ pageNo, query }) =>\n axios.get(\"neeto_image_uploader_engine/unsplash/fetch\", {\n params: { page: pageNo, per_page: 30, query: query || \"latest\" },\n });\n\nconst getUnsplashImage = (url, config = {}) =>\n newAxiosInstance.get(url, config);\n\nconst unsplashApi = { searchUnsplashImages, getUnsplashImage };\n\nexport default unsplashApi;\n","import { keepPreviousData, useInfiniteQuery } from \"@tanstack/react-query\";\nimport { prop } from \"ramda\";\n\nimport unsplashApi from \"apis/unsplash\";\nimport { UNSPLASH_STALE_TIME, QUERY_KEYS } from \"src/constants/query\";\n\nconst { UNSPLASH_LIST } = QUERY_KEYS;\n\nconst useFetchUnsplashImages = ({ query }, options = {}) =>\n useInfiniteQuery({\n queryKey: [UNSPLASH_LIST, { query }],\n queryFn: ({ pageParam = 1 }) =>\n unsplashApi.searchUnsplashImages({ pageNo: pageParam, query }),\n initialPageParam: 1,\n getNextPageParam: (lastPage, _, lastPageParam) =>\n lastPageParam < lastPage.totalPages ? lastPageParam + 1 : null,\n select: data => {\n const results = data.pages.flatMap(prop(\"results\"));\n\n return { results };\n },\n staleTime: UNSPLASH_STALE_TIME,\n placeholderData: keepPreviousData,\n ...options,\n });\n\nexport { useFetchUnsplashImages };\n","import { DirectUpload } from \"@rails/activestorage\";\nimport ImageKit from \"imagekit-javascript\";\nimport { keysToCamelCase } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { mergeRight } from \"ramda\";\n\nimport directUploadsApi from \"apis/direct_uploads\";\nimport { UNSPLASH_DEFAULT_NAME } from \"components/constants\";\n\nexport const uploadWithDirectUpload = file =>\n new Promise((resolve, reject) => {\n const upload = new DirectUpload(file, \"/api/direct_uploads\");\n upload.create((error, blob) => {\n if (error) {\n reject(error);\n\n return;\n }\n\n const payload = {\n id: blob.signed_id,\n payload: {\n metadata: {\n organizationKey: globalProps.organization.publicApiKey,\n url: blob.blob_url,\n height: 200,\n width: 200,\n },\n },\n };\n directUploadsApi.update(payload);\n\n resolve(mergeRight(keysToCamelCase(blob), { url: blob.blob_url }));\n });\n });\n\nexport const uploadWithImageKit = file => {\n const authenticationEndpoint = `${window.location.origin}/neeto_image_uploader_engine/imagekit/auth`;\n const imagekit = new ImageKit(\n mergeRight(globalProps.imagekit, { authenticationEndpoint })\n );\n\n return imagekit.upload({\n file,\n fileName: UNSPLASH_DEFAULT_NAME,\n folder: globalProps.imagekit.folder,\n customMetadata: {\n organizationKey: globalProps.organization.publicApiKey,\n appName: globalProps.appName,\n },\n });\n};\n","import { Spinner, Toastr, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport unsplashApi from \"apis/unsplash\";\nimport { useFetchUnsplashImages } from \"hooks/useUnsplashApi\";\nimport { IS_DEVELOPMENT_OR_HEROKU_ENV } from \"src/constants\";\n\nimport InfiniteScroller from \"./InfiniteScroller\";\nimport { uploadWithDirectUpload, uploadWithImageKit } from \"./utils\";\n\nimport {\n TABS,\n UNSPLASH_DEFAULT_NAME,\n UNSPLASH_DEFAULT_REQUEST_CONFIG,\n} from \"../constants\";\n\nconst UnsplashLibrary = ({\n debouncedQuery,\n setSelectedImage,\n setIsUploading,\n setActiveTab,\n}) => {\n const handleUnsplashImageSelect = async image => {\n try {\n setIsUploading(true);\n const response = await unsplashApi.getUnsplashImage(\n image.urls?.regular,\n UNSPLASH_DEFAULT_REQUEST_CONFIG\n );\n\n const file = new File([response.data], UNSPLASH_DEFAULT_NAME, {\n type: response.data.type,\n });\n\n const result = IS_DEVELOPMENT_OR_HEROKU_ENV\n ? await uploadWithDirectUpload(file)\n : await uploadWithImageKit(file);\n\n setSelectedImage(result);\n } catch (error) {\n Toastr.error(error);\n setActiveTab(TABS[0].key);\n } finally {\n setIsUploading(false);\n }\n };\n\n const { t } = useTranslation();\n\n const {\n fetchNextPage,\n hasNextPage,\n data: { results = [] } = {},\n isError,\n isLoading,\n } = useFetchUnsplashImages({ query: debouncedQuery });\n\n if (isError) {\n return (\n <Typography className=\"mt-9 flex justify-center\" style=\"body2\">\n {t(\"neetoImageUploader.unsplash.errorMessage\")}\n </Typography>\n );\n }\n\n if (isLoading) {\n return (\n <div className=\"flex justify-around\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <InfiniteScroller\n {...{ debouncedQuery, handleUnsplashImageSelect }}\n hasMore={hasNextPage}\n images={results}\n key={debouncedQuery}\n loadMore={fetchNextPage}\n tab={TABS[1].key}\n />\n );\n};\n\nexport default UnsplashLibrary;\n","import { useEffect, useState } from \"react\";\n\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport { Input } from \"neetoui\";\nimport { equals } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Images from \"./Images\";\nimport Unsplash from \"./Unsplash\";\n\nimport { TABS } from \"../constants\";\n\nconst ImageLibrary = ({\n setSelectedImage,\n tab,\n setIsUploading,\n setActiveTab,\n}) => {\n const [query, setQuery] = useState(\"\");\n\n const { t } = useTranslation();\n\n const debouncedQuery = useDebounce(query, 400);\n\n const inputPlaceHolder = equals(tab, TABS[1].key)\n ? t(\"neetoImageUploader.placeholders.searchImageFromWeb\")\n : t(\"neetoImageUploader.placeholders.searchImage\");\n\n useEffect(() => {\n setQuery(\"\");\n }, [tab]);\n\n return (\n <div className=\"w-full pb-2 pl-6 pt-1\">\n <Input\n autoFocus\n className=\"mb-4 mr-6\"\n data-cy=\"niu-unsplash-image-picker-search-input\"\n name=\"text\"\n placeholder={inputPlaceHolder}\n value={query}\n onChange={({ target: { value } }) => setQuery(value)}\n />\n {tab === TABS[0].key ? (\n <Images {...{ debouncedQuery, query, setSelectedImage }} />\n ) : (\n <Unsplash\n {...{\n debouncedQuery,\n query,\n setActiveTab,\n setIsUploading,\n setSelectedImage,\n }}\n />\n )}\n </div>\n );\n};\n\nexport default ImageLibrary;\n","import { useEffect, useState } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport {\n Modal as NeetoUIModal,\n Button,\n Tab,\n Spinner,\n Toastr,\n Typography,\n} from \"neetoui\";\nimport { equals, mergeRight } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { DEFAULT_UPLOAD_CONFIG } from \"components/ImageUploader/constants\";\nimport { useCreateBlob } from \"hooks/useDirectUploads\";\nimport useImageUploader from \"hooks/useImageUploader\";\nimport useUploadDropzone from \"hooks/useUploadDropzone\";\nimport { IS_DEVELOPMENT_OR_HEROKU_ENV } from \"src/constants\";\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/components/_modal.scss\";\n\nimport { createOptions } from \"./utils\";\n\nimport { TABS, UNSPLASH_URL } from \"../constants\";\nimport ImageEditor from \"../ImageEditor\";\nimport { isNilOrEmpty } from \"../ImageEditor/utils\";\nimport ImageLibrary from \"../ImageLibrary\";\n\nconst Modal = ({\n isOpen,\n onClose = noop,\n onUploadComplete = noop,\n uploadConfig = {},\n fixedAspectRatio = {},\n}) => {\n const [activeTab, setActiveTab] = useState(TABS[0].key);\n const [selectedImage, setSelectedImage] = useState({});\n const [isUploading, setIsUploading] = useState(false);\n\n const { t } = useTranslation();\n\n const { mutate: createBlob } = useCreateBlob();\n\n const uploadConfigWithDefaults = mergeRight(\n DEFAULT_UPLOAD_CONFIG,\n uploadConfig\n );\n\n const handleCloseModal = () => {\n onClose();\n setSelectedImage({});\n };\n\n const handleImageEditComplete = editedImage => {\n if (IS_DEVELOPMENT_OR_HEROKU_ENV) {\n onUploadComplete({\n url: editedImage.url,\n signedId: editedImage.signedId,\n });\n } else {\n const payload = {\n filename: editedImage.name,\n byte_size: editedImage.size,\n content_type: editedImage.fileType,\n checksum: editedImage.fileId,\n metadata: editedImage,\n service_name: \"imagekitio\",\n };\n\n createBlob(payload, {\n onSuccess: image => {\n onUploadComplete({\n url: image.blobUrl,\n signedId: image.signedId,\n });\n },\n onError: Toastr.error,\n });\n }\n handleCloseModal();\n };\n\n const { uploadFile } = useImageUploader({\n onUploadComplete: setSelectedImage,\n setIsUploading,\n });\n\n const { getRootProps, getInputProps, isDragActive, inputRef } =\n useUploadDropzone({\n uploadConfig: uploadConfigWithDefaults,\n onDrop: uploadFile,\n });\n\n const openFileUploadDialog = () => inputRef.current?.click();\n const options = createOptions([\n { key: \"local\", onClick: openFileUploadDialog },\n ]);\n\n useEffect(() => {\n setActiveTab(TABS[0].key);\n }, [isOpen]);\n\n return (\n <NeetoUIModal\n {...{ isOpen }}\n className=\"niu-modal\"\n size=\"large\"\n onClose={handleCloseModal}\n >\n {isUploading && (\n <div className=\"neeto-ui-bg-gray-400 absolute inset-0 z-50 flex h-full items-center justify-center opacity-50\">\n <Spinner />\n </div>\n )}\n {isNilOrEmpty(selectedImage) && isDragActive && (\n <div\n className=\"neeto-ui-rounded-xl neeto-ui-bg-gray-400 absolute flex h-full w-full flex-col items-center justify-around border-4 border-dashed border-gray-900 opacity-40\"\n {...getRootProps()}\n >\n <Typography>{t(\"neetoImageUploader.common.dropHere\")}</Typography>\n </div>\n )}\n {!isNilOrEmpty(selectedImage) ? (\n <ImageEditor\n {...{ fixedAspectRatio, handleImageEditComplete }}\n handleReset={() => setSelectedImage({})}\n image={selectedImage}\n signedId={selectedImage?.signedId}\n />\n ) : (\n <div\n className=\"h-full flex-col\"\n {...getRootProps({\n onClick: event => event.stopPropagation(),\n })}\n >\n <NeetoUIModal.Header>\n <Typography style=\"h2\">\n {t(\"neetoImageUploader.common.imageLibrary\")}\n </Typography>\n </NeetoUIModal.Header>\n <div className=\"px-6 py-2\">\n <div className=\"flex flex-col items-center justify-between gap-2 sm:flex-row\">\n <div className=\"flex gap-2\">\n <Tab size=\"small\">\n {TABS.map(tab => (\n <Tab.Item\n active={activeTab === tab.key}\n data-cy={tab.dataCy}\n key={tab.key}\n onClick={() => setActiveTab(tab.key)}\n >\n {tab.label}\n </Tab.Item>\n ))}\n </Tab>\n </div>\n <div className=\"flex gap-2\">\n {options.map(({ key, ...otherProps }) => (\n <Button {...otherProps} key={key} size=\"small\" />\n ))}\n </div>\n </div>\n </div>\n <ImageLibrary\n {...{ setActiveTab, setIsUploading, setSelectedImage }}\n tab={activeTab}\n />\n {equals(activeTab, TABS[1].key) && (\n <NeetoUIModal.Footer className=\"flex items-center justify-center gap-2\">\n <Typography style=\"body2\">\n <Trans\n i18nKey=\"neetoImageUploader.unsplash.poweredByUnsplash\"\n components={{\n a: (\n <a href={UNSPLASH_URL} rel=\"noreferrer\" target=\"_blank\" />\n ),\n }}\n />\n </Typography>\n </NeetoUIModal.Footer>\n )}\n </div>\n )}\n <input {...getInputProps()} />\n </NeetoUIModal>\n );\n};\n\nexport default Modal;\n"],"names":["e","t","n","css","createOptions","options","arguments","length","undefined","OPTIONS","map","option","mergeLeft","findBy","key","this","cropImage","payload","axios","post","developmentApi","useCropImage","useMutation","_objectSpread","mutationFn","useImageControls","_ref","isAspectRatioLocked","setAspectRatioLocked","setCrop","_ref$crop","crop","aspectRatio","imageRef","setAspectRatio","setHeight","setWidth","onToggleAspectRatioLock","newHeight","width","height","newWidth","Math","trunc","x","current","mergeRight","handleWidthChange","cropWidth","Number","displayWidth","naturalWidth","displayHeight","y","toFixed","handleHeightChange","cropHeight","naturalHeight","handleAspectWidthChange","aspectWidth","handleAspectHeightChange","aspectHeight","Controls","handleSubmit","isFullImage","setIsFullImage","_ref$hideControls","hideControls","_useTranslation","useTranslation","getActualCropHeight","_imageRef$current","_imageRef$current2","getActualCropWidth","_imageRef$current3","_imageRef$current4","_useState","useState","_useState2","_slicedToArray","_useState3","_useState4","_useImageControls","debouncedHeight","useDebounce","debouncedWidth","useEffect","_jsxs","className","children","_Fragment","_jsx","Switch","checked","label","onChange","disabled","Typography","style","Input","size","type","value","withEventTargetValue","round","Button","isNilOrEmpty","onClick","ImageEditor","image","handleReset","_ref$handleImageEditC","handleImageEditComplete","noop","_ref$signedId","signedId","_ref$fixedAspectRatio","fixedAspectRatio","setIsAspectRatioLocked","_useState5","_useState6","_useState7","DEFAULT_CROP_CONFIG","_useState8","_useCropImage","mutate","useRef","wrapperRef","cropAspectRatio","isPresent","processCrop","getCropValues","onSuccess","IS_DEVELOPMENT_OR_HEROKU_ENV","newURL","getCroppedImageURL","imageURL","url","icon","LeftArrow","iconPosition","id","ref","classNames","isItemsCenter","ReactCrop","src","aspect","onComplete","alt","onLoad","onImageLoaded","target","fetch","searchTerm","page","per","get","params","bulkDestroy","imageIds","imagesApi","useFetchAssets","useInfiniteQuery","queryKey","QUERY_KEYS","ASSETS_LIST","queryFn","_ref2","_ref2$pageParam","pageParam","getNextPageParam","lastPage","_","lastPageParam","IMAGES_PER_PAGE","select","data","results","pages","flatMap","identity","initialPageParam","staleTime","ASSETS_STALE_TIME","useBulkDestroyAssets","queryClient","useQueryClient","variables","setQueriesData","old","filter","item","includes","fileId","pageParams","t$1","_objectWithoutProperties","Input$1","lib","DEFAULT_PAGE_SIZE$1","Menu","MenuItem","Modal","_excluded","ownKeys$1","_objectSpread$1","ownKeys","ReactPropTypesSecret","require$$0","propTypesModule","require$$1","require$$3","injector_5175b9d6","Dropdown","InfiniteScroller","_ref$hasMore","hasMore","_ref$loadMore","loadMore","tab","images","_ref$setSelectedImage","setSelectedImage","_ref$handleUnsplashIm","handleUnsplashImageSelect","isOpen","deleteConfirmation","setDeleteConfirmation","_useBulkDestroyAssets","ASSETS_DESTROY_URL","isPending","bulkDelete","hasPermissioToDeleteImage","hasPermission","VIEW_ROLES_PERMISSION","handleDelete","useCallback","Loader","Spinner","MasonryInfiniteScroller","pack","position","loader","sizes","INFINITE_SCROLLER_SIZES","INFINITE_SCROLLER_STYLE","useWindow","index","_image$urls","_image$user","_image$user2","paddingBottom","concat","TABS","urls","regular","href","user","username","rel","name","buttonSize","buttonStyle","MenuHorizontal","buttonProps","Alert","isSubmitting","message","submitButtonLabel","title","onClose","onSubmit","Images","debouncedQuery","_useFetchAssets","ASSETS_FETCH_URL","fetchNextPage","hasNextPage","_useFetchAssets$data","_useFetchAssets$data2","_useFetchAssets$data3","isLoading","isError","_createElement","newAxiosInstance","create","searchUnsplashImages","pageNo","query","per_page","getUnsplashImage","config","unsplashApi","UNSPLASH_LIST","useFetchUnsplashImages","totalPages","prop","UNSPLASH_STALE_TIME","placeholderData","keepPreviousData","uploadWithDirectUpload","file","Promise","resolve","reject","upload","DirectUpload","error","blob","signed_id","metadata","organizationKey","globalProps","organization","publicApiKey","blob_url","directUploadsApi","update","keysToCamelCase","uploadWithImageKit","authenticationEndpoint","window","location","origin","imagekit","ImageKit","fileName","UNSPLASH_DEFAULT_NAME","folder","customMetadata","appName","UnsplashLibrary","setIsUploading","setActiveTab","_asyncToGenerator","_regeneratorRuntime","mark","_callee","response","result","wrap","_callee$","_context","prev","next","UNSPLASH_DEFAULT_REQUEST_CONFIG","sent","File","t0","t1","Toastr","finish","stop","_x","apply","_useFetchUnsplashImag","_useFetchUnsplashImag2","_useFetchUnsplashImag3","_useFetchUnsplashImag4","ImageLibrary","setQuery","inputPlaceHolder","equals","autoFocus","placeholder","Unsplash","_ref$onClose","_ref$onUploadComplete","onUploadComplete","_ref$uploadConfig","uploadConfig","activeTab","selectedImage","isUploading","_useCreateBlob","useCreateBlob","createBlob","uploadConfigWithDefaults","DEFAULT_UPLOAD_CONFIG","handleCloseModal","editedImage","filename","byte_size","content_type","fileType","checksum","service_name","blobUrl","onError","_useImageUploader","useImageUploader","uploadFile","_useUploadDropzone","useUploadDropzone","onDrop","getRootProps","getInputProps","isDragActive","inputRef","openFileUploadDialog","_inputRef$current","click","NeetoUIModal","event","stopPropagation","Header","Tab","Item","active","dataCy","otherProps","Footer","Trans","i18nKey","components","a","UNSPLASH_URL"],"mappings":"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AC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAM,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAM,WAAW,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,WAAW,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,IAAG,CAAC,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAG,CAAC,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,C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AC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CA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"}
|
|
1
|
+
{"version":3,"file":"AssetLibrary.js","sources":["../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js","../app/javascript/stylesheets/components/_modal.scss","../app/javascript/src/components/Modal/utils.js","../node_modules/react-image-crop/dist/ReactCrop.min.js","../app/javascript/src/apis/development.js","../app/javascript/src/hooks/useDevelopmentApi.js","../app/javascript/src/components/ImageEditor/hooks/useImageControls.js","../app/javascript/src/components/ImageEditor/Controls.jsx","../app/javascript/src/components/ImageEditor/index.jsx","../app/javascript/src/apis/images.js","../app/javascript/src/hooks/useAssetsApi.js","../node_modules/@bigbinary/neeto-team-members-frontend/dist/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../node_modules/bricks.js/dist/bricks.module.js","../node_modules/react-infinite-scroller/dist/InfiniteScroll.js","../node_modules/react-infinite-scroller/index.js","../node_modules/react-masonry-infinite/lib/index.js","../app/javascript/stylesheets/components/_image-library.scss","../app/javascript/src/components/ImageLibrary/InfiniteScroller.jsx","../app/javascript/src/components/ImageLibrary/Images.jsx","../app/javascript/src/apis/unsplash.js","../app/javascript/src/hooks/useUnsplashApi.js","../app/javascript/src/components/ImageLibrary/utils.js","../app/javascript/src/components/ImageLibrary/Unsplash.jsx","../app/javascript/src/components/ImageLibrary/index.jsx","../app/javascript/src/components/Modal/index.jsx"],"sourcesContent":["var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n","//Abstracts\n@import \"../abstracts/variables\";\n\n.niu-modal {\n width: $niu-modal-width !important;\n height: $niu-modal-height !important;\n max-width: $niu-modal-max-width !important;\n max-height: $niu-modal-max-height !important;\n position: relative !important;\n}\n","import { findBy } from \"neetocist\";\nimport { mergeLeft } from \"ramda\";\n\nimport { OPTIONS } from \"../constants\";\n\nexport const createOptions = (options = []) =>\n OPTIONS.map(option =>\n mergeLeft(findBy({ key: option.key }, options), option)\n );\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t(require(\"react\")):\"function\"==typeof define&&define.amd?define([\"react\"],t):\"object\"==typeof exports?exports.ReactCrop=t(require(\"react\")):e.ReactCrop=t(e.React)}(this,(e=>(()=>{\"use strict\";var t={899:t=>{t.exports=e}},n={};function o(e){var r=n[e];if(void 0!==r)return r.exports;var i=n[e]={exports:{}};return t[e](i,i.exports,o),i.exports}o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})};var r={};return(()=>{o.r(r),o.d(r,{Component:()=>u,areCropsEqual:()=>h,centerCrop:()=>d,clamp:()=>a,containCrop:()=>p,convertToPercentCrop:()=>c,convertToPixelCrop:()=>l,default:()=>u,defaultCrop:()=>i,makeAspectCrop:()=>s,nudgeCrop:()=>g});var e=o(899),t=o.n(e);function n(e){var t,o,r=\"\";if(\"string\"==typeof e||\"number\"==typeof e)r+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(o=n(e[t]))&&(r&&(r+=\" \"),r+=o);else for(t in e)e[t]&&(r&&(r+=\" \"),r+=t);return r}const i={x:0,y:0,width:0,height:0,unit:\"px\"};function a(e,t,n){return Math.min(Math.max(e,t),n)}function h(e,t){return e.width===t.width&&e.height===t.height&&e.x===t.x&&e.y===t.y&&e.unit===t.unit}function s(e,t,n,o){const r=l(e,n,o);return e.width&&(r.height=r.width/t),e.height&&(r.width=r.height*t),r.y+r.height>o&&(r.height=o-r.y,r.width=r.height*t),r.x+r.width>n&&(r.width=n-r.x,r.height=r.width/t),\"%\"===e.unit?c(r,n,o):r}function d(e,t,n){const o=l(e,t,n);return o.x=(t-o.width)/2,o.y=(n-o.height)/2,\"%\"===e.unit?c(o,t,n):o}function c(e,t,n){return\"%\"===e.unit?{...i,...e,unit:\"%\"}:{unit:\"%\",x:e.x?e.x/t*100:0,y:e.y?e.y/n*100:0,width:e.width?e.width/t*100:0,height:e.height?e.height/n*100:0}}function l(e,t,n){return e.unit?\"px\"===e.unit?{...i,...e,unit:\"px\"}:{unit:\"px\",x:e.x?e.x*t/100:0,y:e.y?e.y*n/100:0,width:e.width?e.width*t/100:0,height:e.height?e.height*n/100:0}:{...i,...e,unit:\"px\"}}function p(e,t,n,o,r,i=0,a=0,h=o,s=r){const d={...e};let c=Math.min(i,o),l=Math.min(a,r),p=Math.min(h,o),g=Math.min(s,r);t&&(t>1?(c=a?a*t:c,l=c/t,p=h*t):(l=i?i/t:l,c=l*t,g=s/t)),d.y<0&&(d.height=Math.max(d.height+d.y,l),d.y=0),d.x<0&&(d.width=Math.max(d.width+d.x,c),d.x=0);const w=o-(d.x+d.width);w<0&&(d.x=Math.min(d.x,o-c),d.width+=w);const u=r-(d.y+d.height);if(u<0&&(d.y=Math.min(d.y,r-l),d.height+=u),d.width<c&&(\"sw\"!==n&&\"nw\"!=n||(d.x-=c-d.width),d.width=c),d.height<l&&(\"nw\"!==n&&\"ne\"!=n||(d.y-=l-d.height),d.height=l),d.width>p&&(\"sw\"!==n&&\"nw\"!=n||(d.x-=p-d.width),d.width=p),d.height>g&&(\"nw\"!==n&&\"ne\"!=n||(d.y-=g-d.height),d.height=g),t){const e=d.width/d.height;if(e<t){const e=Math.max(d.width/t,l);\"nw\"!==n&&\"ne\"!=n||(d.y-=e-d.height),d.height=e}else if(e>t){const e=Math.max(d.height*t,c);\"sw\"!==n&&\"nw\"!=n||(d.x-=e-d.width),d.width=e}}return d}function g(e,t,n,o){const r={...e};return\"ArrowLeft\"===t?\"nw\"===o?(r.x-=n,r.y-=n,r.width+=n,r.height+=n):\"w\"===o?(r.x-=n,r.width+=n):\"sw\"===o?(r.x-=n,r.width+=n,r.height+=n):\"ne\"===o?(r.y+=n,r.width-=n,r.height-=n):\"e\"===o?r.width-=n:\"se\"===o&&(r.width-=n,r.height-=n):\"ArrowRight\"===t&&(\"nw\"===o?(r.x+=n,r.y+=n,r.width-=n,r.height-=n):\"w\"===o?(r.x+=n,r.width-=n):\"sw\"===o?(r.x+=n,r.width-=n,r.height-=n):\"ne\"===o?(r.y-=n,r.width+=n,r.height+=n):\"e\"===o?r.width+=n:\"se\"===o&&(r.width+=n,r.height+=n)),\"ArrowUp\"===t?\"nw\"===o?(r.x-=n,r.y-=n,r.width+=n,r.height+=n):\"n\"===o?(r.y-=n,r.height+=n):\"ne\"===o?(r.y-=n,r.width+=n,r.height+=n):\"sw\"===o?(r.x+=n,r.width-=n,r.height-=n):\"s\"===o?r.height-=n:\"se\"===o&&(r.width-=n,r.height-=n):\"ArrowDown\"===t&&(\"nw\"===o?(r.x+=n,r.y+=n,r.width-=n,r.height-=n):\"n\"===o?(r.y+=n,r.height-=n):\"ne\"===o?(r.y+=n,r.width-=n,r.height-=n):\"sw\"===o?(r.x-=n,r.width+=n,r.height+=n):\"s\"===o?r.height+=n:\"se\"===o&&(r.width+=n,r.height+=n)),r}const w={capture:!0,passive:!1};class u extends e.PureComponent{constructor(){super(...arguments),this.docMoveBound=!1,this.mouseDownOnCrop=!1,this.dragStarted=!1,this.evData={startClientX:0,startClientY:0,startCropX:0,startCropY:0,clientX:0,clientY:0,isResize:!0},this.componentRef=(0,e.createRef)(),this.mediaRef=(0,e.createRef)(),this.initChangeCalled=!1,this.state={cropIsActive:!1,newCropIsBeingDrawn:!1},this.onCropPointerDown=e=>{const{crop:t,disabled:n}=this.props,o=this.getBox();if(!t)return;const r=l(t,o.width,o.height);if(n)return;e.cancelable&&e.preventDefault(),this.bindDocMove(),this.componentRef.current.focus({preventScroll:!0});const i=e.target.dataset.ord,a=Boolean(i);let h=e.clientX,s=e.clientY,d=r.x,c=r.y;if(i){const t=e.clientX-o.x,n=e.clientY-o.y;let a=0,l=0;\"ne\"===i||\"e\"==i?(a=t-(r.x+r.width),l=n-r.y,d=r.x,c=r.y+r.height):\"se\"===i||\"s\"===i?(a=t-(r.x+r.width),l=n-(r.y+r.height),d=r.x,c=r.y):\"sw\"===i||\"w\"==i?(a=t-r.x,l=n-(r.y+r.height),d=r.x+r.width,c=r.y):\"nw\"!==i&&\"n\"!=i||(a=t-r.x,l=n-r.y,d=r.x+r.width,c=r.y+r.height),h=d+o.x+a,s=c+o.y+l}this.evData={startClientX:h,startClientY:s,startCropX:d,startCropY:c,clientX:e.clientX,clientY:e.clientY,isResize:a,ord:i},this.mouseDownOnCrop=!0,this.setState({cropIsActive:!0})},this.onComponentPointerDown=e=>{const{crop:t,disabled:n,locked:o,keepSelection:r,onChange:i}=this.props,a=this.getBox();if(n||o||r&&t)return;e.cancelable&&e.preventDefault(),this.bindDocMove(),this.componentRef.current.focus({preventScroll:!0});const h=e.clientX-a.x,s=e.clientY-a.y,d={unit:\"px\",x:h,y:s,width:0,height:0};this.evData={startClientX:e.clientX,startClientY:e.clientY,startCropX:h,startCropY:s,clientX:e.clientX,clientY:e.clientY,isResize:!0},this.mouseDownOnCrop=!0,i(l(d,a.width,a.height),c(d,a.width,a.height)),this.setState({cropIsActive:!0,newCropIsBeingDrawn:!0})},this.onDocPointerMove=e=>{const{crop:t,disabled:n,onChange:o,onDragStart:r}=this.props,i=this.getBox();if(n||!t||!this.mouseDownOnCrop)return;e.cancelable&&e.preventDefault(),this.dragStarted||(this.dragStarted=!0,r&&r(e));const{evData:a}=this;let s;a.clientX=e.clientX,a.clientY=e.clientY,s=a.isResize?this.resizeCrop():this.dragCrop(),h(t,s)||o(l(s,i.width,i.height),c(s,i.width,i.height))},this.onComponentKeyDown=e=>{const{crop:t,disabled:n,onChange:o,onComplete:r}=this.props,i=this.getBox();if(n)return;const h=e.key;let s=!1;if(!t)return;const d=this.makePixelCrop(),p=(navigator.platform.match(\"Mac\")?e.metaKey:e.ctrlKey)?u.nudgeStepLarge:e.shiftKey?u.nudgeStepMedium:u.nudgeStep;if(\"ArrowLeft\"===h?(d.x-=p,s=!0):\"ArrowRight\"===h?(d.x+=p,s=!0):\"ArrowUp\"===h?(d.y-=p,s=!0):\"ArrowDown\"===h&&(d.y+=p,s=!0),s){e.cancelable&&e.preventDefault(),d.x=a(d.x,0,i.width-d.width),d.y=a(d.y,0,i.height-d.height);const t=l(d,i.width,i.height),n=c(d,i.width,i.height);o(t,n),r&&r(t,n)}},this.onHandlerKeyDown=(e,t)=>{const{aspect:n=0,crop:o,disabled:r,minWidth:i=0,minHeight:a=0,maxWidth:s,maxHeight:d,onChange:w,onComplete:m}=this.props,y=this.getBox();if(r||!o)return;if(\"ArrowUp\"!==e.key&&\"ArrowDown\"!==e.key&&\"ArrowLeft\"!==e.key&&\"ArrowRight\"!==e.key)return;e.stopPropagation(),e.preventDefault();const x=(navigator.platform.match(\"Mac\")?e.metaKey:e.ctrlKey)?u.nudgeStepLarge:e.shiftKey?u.nudgeStepMedium:u.nudgeStep,C=p(g(l(o,y.width,y.height),e.key,x,t),n,t,y.width,y.height,i,a,s,d);if(!h(o,C)){const e=c(C,y.width,y.height);w(C,e),m&&m(C,e)}},this.onDocPointerDone=e=>{const{crop:t,disabled:n,onComplete:o,onDragEnd:r}=this.props,i=this.getBox();this.unbindDocMove(),!n&&t&&this.mouseDownOnCrop&&(this.mouseDownOnCrop=!1,this.dragStarted=!1,r&&r(e),o&&o(l(t,i.width,i.height),c(t,i.width,i.height)),this.setState({cropIsActive:!1,newCropIsBeingDrawn:!1}))},this.onDragFocus=e=>{var t;null===(t=this.componentRef.current)||void 0===t||t.scrollTo(0,0)}}get document(){return document}getBox(){const e=this.mediaRef.current;if(!e)return{x:0,y:0,width:0,height:0};const{x:t,y:n,width:o,height:r}=e.getBoundingClientRect();return{x:t,y:n,width:o,height:r}}componentDidUpdate(e){const{crop:t,onComplete:n}=this.props;if(n&&!e.crop&&t){const{width:e,height:o}=this.getBox();e&&o&&n(l(t,e,o),c(t,e,o))}}componentWillUnmount(){this.resizeObserver&&this.resizeObserver.disconnect()}bindDocMove(){this.docMoveBound||(this.document.addEventListener(\"pointermove\",this.onDocPointerMove,w),this.document.addEventListener(\"pointerup\",this.onDocPointerDone,w),this.document.addEventListener(\"pointercancel\",this.onDocPointerDone,w),this.docMoveBound=!0)}unbindDocMove(){this.docMoveBound&&(this.document.removeEventListener(\"pointermove\",this.onDocPointerMove,w),this.document.removeEventListener(\"pointerup\",this.onDocPointerDone,w),this.document.removeEventListener(\"pointercancel\",this.onDocPointerDone,w),this.docMoveBound=!1)}getCropStyle(){const{crop:e}=this.props;if(e)return{top:`${e.y}${e.unit}`,left:`${e.x}${e.unit}`,width:`${e.width}${e.unit}`,height:`${e.height}${e.unit}`}}dragCrop(){const{evData:e}=this,t=this.getBox(),n=this.makePixelCrop(),o=e.clientX-e.startClientX,r=e.clientY-e.startClientY;return n.x=a(e.startCropX+o,0,t.width-n.width),n.y=a(e.startCropY+r,0,t.height-n.height),n}getPointRegion(e){const{evData:t}=this,n=t.clientX-e.x,o=t.clientY-e.y<t.startCropY;return n<t.startCropX?o?\"nw\":\"sw\":o?\"ne\":\"se\"}resizeCrop(){const{evData:e}=this,t=this.getBox(),{aspect:n=0,minWidth:o=0,minHeight:r=0,maxWidth:i,maxHeight:a}=this.props,h=this.getPointRegion(t),s=this.makePixelCrop(),d=e.ord?e.ord:h,c=e.clientX-e.startClientX,l=e.clientY-e.startClientY,g={unit:\"px\",x:0,y:0,width:0,height:0};\"ne\"===h?(g.x=e.startCropX,g.width=c,n?(g.height=g.width/n,g.y=e.startCropY-g.height):(g.height=Math.abs(l),g.y=e.startCropY-g.height)):\"se\"===h?(g.x=e.startCropX,g.y=e.startCropY,g.width=c,g.height=n?g.width/n:l):\"sw\"===h?(g.x=e.startCropX+c,g.y=e.startCropY,g.width=Math.abs(c),g.height=n?g.width/n:l):\"nw\"===h&&(g.x=e.startCropX+c,g.width=Math.abs(c),n?(g.height=g.width/n,g.y=e.startCropY-g.height):(g.height=Math.abs(l),g.y=e.startCropY+l));const w=p(g,n,h,t.width,t.height,o,r,i,a);return n||u.xyOrds.indexOf(d)>-1?(s.x=w.x,s.y=w.y,s.width=w.width,s.height=w.height):u.xOrds.indexOf(d)>-1?(s.x=w.x,s.width=w.width):u.yOrds.indexOf(d)>-1&&(s.y=w.y,s.height=w.height),s}createCropSelection(){const{ariaLabels:e=u.defaultProps.ariaLabels,disabled:n,locked:o,renderSelectionAddon:r,ruleOfThirds:i,crop:a}=this.props,h=this.getCropStyle();if(a)return t().createElement(\"div\",{style:h,className:\"ReactCrop__crop-selection\",onPointerDown:this.onCropPointerDown,\"aria-label\":e.cropArea,tabIndex:0,onKeyDown:this.onComponentKeyDown,role:\"group\"},!n&&!o&&t().createElement(\"div\",{className:\"ReactCrop__drag-elements\",onFocus:this.onDragFocus},t().createElement(\"div\",{className:\"ReactCrop__drag-bar ord-n\",\"data-ord\":\"n\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-bar ord-e\",\"data-ord\":\"e\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-bar ord-s\",\"data-ord\":\"s\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-bar ord-w\",\"data-ord\":\"w\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-handle ord-nw\",\"data-ord\":\"nw\",tabIndex:0,\"aria-label\":e.nwDragHandle,onKeyDown:e=>this.onHandlerKeyDown(e,\"nw\"),role:\"button\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-handle ord-n\",\"data-ord\":\"n\",tabIndex:0,\"aria-label\":e.nDragHandle,onKeyDown:e=>this.onHandlerKeyDown(e,\"n\"),role:\"button\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-handle ord-ne\",\"data-ord\":\"ne\",tabIndex:0,\"aria-label\":e.neDragHandle,onKeyDown:e=>this.onHandlerKeyDown(e,\"ne\"),role:\"button\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-handle ord-e\",\"data-ord\":\"e\",tabIndex:0,\"aria-label\":e.eDragHandle,onKeyDown:e=>this.onHandlerKeyDown(e,\"e\"),role:\"button\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-handle ord-se\",\"data-ord\":\"se\",tabIndex:0,\"aria-label\":e.seDragHandle,onKeyDown:e=>this.onHandlerKeyDown(e,\"se\"),role:\"button\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-handle ord-s\",\"data-ord\":\"s\",tabIndex:0,\"aria-label\":e.sDragHandle,onKeyDown:e=>this.onHandlerKeyDown(e,\"s\"),role:\"button\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-handle ord-sw\",\"data-ord\":\"sw\",tabIndex:0,\"aria-label\":e.swDragHandle,onKeyDown:e=>this.onHandlerKeyDown(e,\"sw\"),role:\"button\"}),t().createElement(\"div\",{className:\"ReactCrop__drag-handle ord-w\",\"data-ord\":\"w\",tabIndex:0,\"aria-label\":e.wDragHandle,onKeyDown:e=>this.onHandlerKeyDown(e,\"w\"),role:\"button\"})),r&&t().createElement(\"div\",{className:\"ReactCrop__selection-addon\",onMouseDown:e=>e.stopPropagation()},r(this.state)),i&&t().createElement(t().Fragment,null,t().createElement(\"div\",{className:\"ReactCrop__rule-of-thirds-hz\"}),t().createElement(\"div\",{className:\"ReactCrop__rule-of-thirds-vt\"})))}makePixelCrop(){const e={...i,...this.props.crop||{}},t=this.getBox();return l(e,t.width,t.height)}render(){const{aspect:e,children:o,circularCrop:r,className:i,crop:a,disabled:h,locked:s,style:d,ruleOfThirds:c}=this.props,{cropIsActive:l,newCropIsBeingDrawn:p}=this.state,g=a?this.createCropSelection():null,w=function(){for(var e,t,o=0,r=\"\";o<arguments.length;)(e=arguments[o++])&&(t=n(e))&&(r&&(r+=\" \"),r+=t);return r}(\"ReactCrop\",i,{\"ReactCrop--active\":l,\"ReactCrop--disabled\":h,\"ReactCrop--locked\":s,\"ReactCrop--new-crop\":p,\"ReactCrop--fixed-aspect\":a&&e,\"ReactCrop--circular-crop\":a&&r,\"ReactCrop--rule-of-thirds\":a&&c,\"ReactCrop--invisible-crop\":!this.dragStarted&&a&&!a.width&&!a.height});return t().createElement(\"div\",{ref:this.componentRef,className:w,style:d},t().createElement(\"div\",{ref:this.mediaRef,className:\"ReactCrop__child-wrapper\",onPointerDown:this.onComponentPointerDown},o),g)}}u.xOrds=[\"e\",\"w\"],u.yOrds=[\"n\",\"s\"],u.xyOrds=[\"nw\",\"ne\",\"se\",\"sw\"],u.nudgeStep=1,u.nudgeStepMedium=10,u.nudgeStepLarge=100,u.defaultProps={ariaLabels:{cropArea:\"Use the arrow keys to move the crop selection area\",nwDragHandle:\"Use the arrow keys to move the north west drag handle to change the crop selection area\",nDragHandle:\"Use the up and down arrow keys to move the north drag handle to change the crop selection area\",neDragHandle:\"Use the arrow keys to move the north east drag handle to change the crop selection area\",eDragHandle:\"Use the up and down arrow keys to move the east drag handle to change the crop selection area\",seDragHandle:\"Use the arrow keys to move the south east drag handle to change the crop selection area\",sDragHandle:\"Use the up and down arrow keys to move the south drag handle to change the crop selection area\",swDragHandle:\"Use the arrow keys to move the south west drag handle to change the crop selection area\",wDragHandle:\"Use the up and down arrow keys to move the west drag handle to change the crop selection area\"}}})(),r})()));","import axios from \"axios\";\n\nconst cropImage = payload =>\n axios.post(\"neeto_image_uploader_engine/development/crop_image\", payload);\n\nconst developmentApi = { cropImage };\n\nexport default developmentApi;\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport developmentApi from \"apis/development\";\n\nconst useCropImage = options =>\n useMutation({ mutationFn: developmentApi.cropImage, ...options });\n\nexport { useCropImage };\n","import { mergeRight } from \"ramda\";\n\nconst useImageControls = ({\n isAspectRatioLocked,\n setAspectRatioLocked,\n setCrop,\n crop = {},\n aspectRatio,\n imageRef,\n setAspectRatio,\n setHeight,\n setWidth,\n}) => {\n const onToggleAspectRatioLock = () => {\n setAspectRatioLocked(isAspectRatioLocked => !isAspectRatioLocked);\n if (!isAspectRatioLocked) {\n const newHeight = crop.width / (aspectRatio.width / aspectRatio.height);\n const newWidth = crop.height * (aspectRatio.width / aspectRatio.height);\n newWidth + Math.trunc(crop.x) <= imageRef.current.width\n ? setCrop(mergeRight(crop, { width: newWidth }))\n : setCrop(mergeRight(crop, { height: newHeight }));\n }\n };\n\n const handleWidthChange = width => {\n const cropWidth = Number(width);\n\n const displayWidth =\n (cropWidth * imageRef.current.width) / imageRef.current.naturalWidth;\n\n if (\n displayWidth > 0 &&\n Math.trunc(crop.x) + displayWidth <= imageRef.current.width\n ) {\n if (isAspectRatioLocked) {\n const displayHeight =\n displayWidth / (aspectRatio.width / aspectRatio.height);\n\n displayHeight + Math.trunc(crop.y) <= imageRef.current.height &&\n setCrop(\n mergeRight(crop, { width: displayWidth, height: displayHeight })\n );\n } else {\n setCrop(mergeRight(crop, { width: displayWidth }));\n }\n } else {\n setWidth(crop.width.toFixed(2));\n }\n };\n\n const handleHeightChange = height => {\n const cropHeight = Number(height);\n\n const displayHeight =\n (cropHeight * imageRef.current.height) / imageRef.current.naturalHeight;\n\n if (\n displayHeight > 0 &&\n Math.trunc(crop.y) + displayHeight <= imageRef.current.height\n ) {\n if (isAspectRatioLocked) {\n const displayWidth =\n (displayHeight * aspectRatio.width) / aspectRatio.height;\n\n displayWidth + Math.trunc(crop.x) <= imageRef.current.width &&\n setCrop(\n mergeRight(crop, { height: displayHeight, width: displayWidth })\n );\n } else {\n setCrop(mergeRight(crop, { height: displayHeight }));\n }\n } else {\n setHeight(crop.height.toFixed(2));\n }\n };\n\n const handleAspectWidthChange = aspectWidth => {\n if (aspectWidth <= 0) {\n return;\n }\n\n if (!isAspectRatioLocked) {\n setAspectRatio(mergeRight(aspectRatio, { width: aspectWidth }));\n\n return;\n }\n\n const newWidth = crop.height * (aspectWidth / aspectRatio.height);\n if (newWidth + Math.trunc(crop.x) <= imageRef.current.width) {\n setCrop(mergeRight(crop, { width: newWidth }));\n setAspectRatio(mergeRight(aspectRatio, { width: aspectWidth }));\n }\n };\n\n const handleAspectHeightChange = aspectHeight => {\n if (aspectHeight <= 0) {\n return;\n }\n\n if (!isAspectRatioLocked) {\n setAspectRatio(mergeRight(aspectRatio, { height: aspectHeight }));\n\n return;\n }\n\n const newHeight = crop.width / (aspectRatio.width / aspectHeight);\n if (newHeight + Math.trunc(crop.y) <= imageRef.current.height) {\n setCrop(mergeRight(crop, { height: newHeight }));\n setAspectRatio(mergeRight(aspectRatio, { height: aspectHeight }));\n }\n };\n\n return {\n onToggleAspectRatioLock,\n handleWidthChange,\n handleHeightChange,\n handleAspectWidthChange,\n handleAspectHeightChange,\n };\n};\n\nexport default useImageControls;\n","import { useEffect, useState } from \"react\";\n\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport { withEventTargetValue } from \"neetocommons/utils\";\nimport { Button, Input, Switch, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useImageControls from \"./hooks/useImageControls\";\nimport { isNilOrEmpty } from \"./utils\";\n\nconst Controls = ({\n aspectRatio,\n isAspectRatioLocked,\n crop,\n handleSubmit,\n setAspectRatio,\n setAspectRatioLocked,\n setCrop,\n imageRef,\n isFullImage,\n setIsFullImage,\n hideControls = false,\n}) => {\n const { t } = useTranslation();\n\n const getActualCropHeight = cropHeight =>\n cropHeight * (imageRef.current?.naturalHeight / imageRef.current?.height);\n\n const getActualCropWidth = cropHeight =>\n cropHeight * (imageRef.current?.naturalWidth / imageRef.current?.width);\n\n const [height, setHeight] = useState(getActualCropHeight(crop.height));\n const [width, setWidth] = useState(getActualCropWidth(crop.width));\n\n const {\n onToggleAspectRatioLock,\n handleWidthChange,\n handleHeightChange,\n handleAspectWidthChange,\n handleAspectHeightChange,\n } = useImageControls({\n isAspectRatioLocked,\n setAspectRatioLocked,\n setCrop,\n crop,\n aspectRatio,\n imageRef,\n setAspectRatio,\n setHeight,\n setWidth,\n });\n\n const debouncedHeight = useDebounce(height, 800);\n const debouncedWidth = useDebounce(width, 800);\n\n useEffect(() => {\n handleHeightChange(debouncedHeight);\n }, [debouncedHeight]);\n\n useEffect(() => {\n handleWidthChange(debouncedWidth);\n }, [debouncedWidth]);\n\n useEffect(() => {\n setHeight(getActualCropHeight(crop.height));\n setWidth(getActualCropWidth(crop.width));\n }, [crop]);\n\n return (\n <div className=\"flex flex-col p-4 md:w-2/6 \">\n {!hideControls && (\n <>\n <Switch\n checked={isFullImage}\n className=\"flex-grow-0\"\n label={t(\"neetoImageUploader.labels.selectOriginalImage\")}\n onChange={() => setIsFullImage(isFullImage => !isFullImage)}\n />\n <Switch\n checked={isAspectRatioLocked}\n className=\"mt-4 flex-grow-0\"\n disabled={isFullImage}\n label={t(\"neetoImageUploader.labels.lockAspectRatio\")}\n onChange={onToggleAspectRatioLock}\n />\n <Typography className=\"mb-2 mt-6\" style=\"body2\">\n {t(\"neetoImageUploader.imageEditor.aspectRatio\")}\n </Typography>\n <div className=\"flex gap-4 self-start\">\n <Input\n data-cy=\"aspect-ratio-width-input\"\n disabled={isFullImage}\n size=\"small\"\n type=\"number\"\n value={aspectRatio.width}\n onChange={withEventTargetValue(handleAspectWidthChange)}\n />\n <Typography> : </Typography>\n <Input\n data-cy=\"aspect-ratio-height-input\"\n disabled={isFullImage}\n size=\"small\"\n type=\"number\"\n value={aspectRatio.height}\n onChange={withEventTargetValue(handleAspectHeightChange)}\n />\n </div>\n </>\n )}\n <Input\n className=\"mt-4 flex-grow-0\"\n disabled={isFullImage}\n label={t(\"neetoImageUploader.labels.width\")}\n type=\"number\"\n value={Math.round(width)}\n onChange={withEventTargetValue(setWidth)}\n />\n <Input\n className=\"mt-4 flex-grow-0\"\n disabled={isFullImage}\n label={t(\"neetoImageUploader.labels.height\")}\n type=\"number\"\n value={Math.round(height)}\n onChange={withEventTargetValue(setHeight)}\n />\n <Button\n className=\"mt-6 self-start\"\n data-cy=\"neeto-image-uploader-crop-submit-button\"\n label={t(\"neetoImageUploader.labels.done\")}\n disabled={\n isNilOrEmpty(imageRef.current) &&\n (crop.width <= 0 || crop.height <= 0)\n }\n onClick={handleSubmit}\n />\n </div>\n );\n};\nexport default Controls;\n","import { useState, useRef } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent, noop } from \"neetocist\";\nimport { LeftArrow } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport { mergeRight } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport ReactCrop from \"react-image-crop\";\n\nimport { useCropImage } from \"hooks/useDevelopmentApi\";\nimport { IS_DEVELOPMENT_OR_HEROKU_ENV } from \"src/constants\";\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/components/_react-crop.scss\";\n\nimport Controls from \"./Controls\";\nimport {\n isItemsCenter,\n getCropValues,\n getCroppedImageURL,\n onImageLoaded,\n} from \"./utils\";\n\nimport { DEFAULT_CROP_CONFIG } from \"../constants\";\n\nconst ImageEditor = ({\n image,\n handleReset,\n handleImageEditComplete = noop,\n signedId = \"\",\n fixedAspectRatio = {},\n}) => {\n const [isAspectRatioLocked, setIsAspectRatioLocked] = useState(true);\n const [isFullImage, setIsFullImage] = useState(false);\n const [aspectRatio, setAspectRatio] = useState({\n width: fixedAspectRatio?.width || 16,\n height: fixedAspectRatio?.height || 9,\n });\n\n const [crop, setCrop] = useState(DEFAULT_CROP_CONFIG);\n\n const { t } = useTranslation();\n\n const { mutate: cropImage } = useCropImage();\n\n const imageRef = useRef(null);\n const wrapperRef = useRef(null);\n\n const cropAspectRatio =\n isPresent(fixedAspectRatio?.width) && isPresent(fixedAspectRatio.height)\n ? fixedAspectRatio?.width / fixedAspectRatio?.height\n : 16 / 9;\n\n const processCrop = () => {\n if (isFullImage) {\n handleImageEditComplete(image);\n\n return;\n }\n\n cropImage(\n { crop: getCropValues({ crop, imageRef }), signedId },\n { onSuccess: handleImageEditComplete }\n );\n };\n\n const handleSubmit = () => {\n if (IS_DEVELOPMENT_OR_HEROKU_ENV) {\n processCrop();\n\n return;\n }\n\n if (isFullImage) {\n handleImageEditComplete(image);\n\n return;\n }\n const newURL = getCroppedImageURL({ crop, imageURL: image.url, imageRef });\n handleImageEditComplete(mergeRight(image, { url: newURL }));\n };\n\n return (\n <div className=\"flex h-full flex-col gap-4 px-8 py-12\">\n <Button\n className=\"self-start\"\n data-cy=\"image-editor-back-button\"\n icon={LeftArrow}\n iconPosition=\"left\"\n style=\"text\"\n onClick={handleReset}\n />\n <div className=\"flex h-full w-full flex-col gap-2 overflow-y-scroll md:flex-row md:overflow-y-auto\">\n <div\n id=\"imageEditor\"\n ref={wrapperRef}\n className={classNames(\n \"flex\",\n \"h-full w-full md:w-4/6\",\n \"justify-around\",\n \"neeto-ui-bg-gray-200\",\n {\n \"items-center\": isItemsCenter({ wrapperRef, imageRef }),\n }\n )}\n >\n <ReactCrop\n crop={isFullImage ? null : crop}\n src={image?.url}\n aspect={\n isAspectRatioLocked ? aspectRatio.width / aspectRatio.height : 0\n }\n onChange={setCrop}\n onComplete={setCrop}\n >\n <img\n alt={t(\"neetoImageUploader.common.image\")}\n data-cy=\"image-editor-uploaded-image\"\n ref={imageRef}\n src={image?.url}\n onLoad={e =>\n onImageLoaded({\n image: e.target,\n setCrop,\n cropAspectRatio,\n })\n }\n />\n </ReactCrop>\n </div>\n <Controls\n {...{\n aspectRatio,\n crop,\n handleSubmit,\n imageRef,\n isAspectRatioLocked,\n isFullImage,\n setAspectRatio,\n setCrop,\n setIsFullImage,\n }}\n hideControls={isPresent(fixedAspectRatio)}\n setAspectRatioLocked={setIsAspectRatioLocked}\n />\n </div>\n </div>\n );\n};\n\nexport default ImageEditor;\n","import axios from \"axios\";\n\nconst fetch = ({ searchTerm, url, page, per }) =>\n axios.get(url, { params: { searchTerm, page, per } });\n\nconst bulkDestroy = (imageIds, url) =>\n axios.delete(url, { params: { imageIds } });\n\nconst imagesApi = { fetch, bulkDestroy };\n\nexport default imagesApi;\n","import {\n useInfiniteQuery,\n useMutation,\n useQueryClient,\n} from \"@tanstack/react-query\";\nimport { identity } from \"ramda\";\n\nimport imagesApi from \"apis/images\";\nimport { IMAGES_PER_PAGE } from \"components/constants\";\nimport { ASSETS_STALE_TIME, QUERY_KEYS } from \"src/constants/query\";\n\nconst useFetchAssets = ({ searchTerm, url, per }, options = {}) =>\n useInfiniteQuery({\n queryKey: [QUERY_KEYS.ASSETS_LIST, searchTerm],\n queryFn: ({ pageParam = 1 }) =>\n imagesApi.fetch({ searchTerm, url, page: pageParam, per }),\n getNextPageParam: (lastPage, _, lastPageParam) =>\n lastPage.length === IMAGES_PER_PAGE ? lastPageParam + 1 : null,\n select: data => {\n const results = data.pages.flatMap(identity);\n\n return { results };\n },\n initialPageParam: 1,\n staleTime: ASSETS_STALE_TIME,\n ...options,\n });\n\nconst useBulkDestroyAssets = url => {\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationFn: imageIds => imagesApi.bulkDestroy(imageIds, url),\n onSuccess: (_, variables) => {\n queryClient.setQueriesData(\n { queryKey: [QUERY_KEYS.ASSETS_LIST] },\n old => ({\n pages: old.pages.map(page =>\n page.filter(item => !variables.includes(item.fileId || item.id))\n ),\n pageParams: old.pageParams,\n })\n );\n },\n });\n};\n\nexport { useFetchAssets, useBulkDestroyAssets };\n","import { globalProps, taxonomies } from '@bigbinary/neeto-commons-frontend/initializers';\nimport require$$0, { useState, createElement, useEffect, useMemo, useRef, Fragment as Fragment$1, memo, useCallback } from 'react';\nimport { removeBy, nullSafe, noop, isPresent, findById, isNotEmpty, findBy, _findBy, replaceById, keysToSnakeCase, toLabelAndValue, notEquals, filterBy, slugify } from '@bigbinary/neeto-cist';\nimport { useMutationWithInvalidation, withT, useQueryParams, withTitle, useFuncDebounce, useDebounce, useBreakpoints } from '@bigbinary/neeto-commons-frontend/react-utils';\nimport Container from '@bigbinary/neeto-molecules/Container';\nimport NeetoHeader from '@bigbinary/neeto-molecules/Header';\nimport Button from '@bigbinary/neetoui/Button';\nimport { useTranslation, Trans } from 'react-i18next';\nimport { useQuery, QueryClient, QueryCache, QueryClientProvider, keepPreviousData, useMutation } from '@tanstack/react-query';\nimport { prop, pluck, mergeLeft, includes, keys, isEmpty, replace as replace$1, is, append, concat, equals, groupBy, not, map, identical, modify, __, filter, identity, clamp, curry, assoc, isNil, trim, toLower, isNotNil, pick, move, head, reverse } from 'ramda';\nimport axios from 'axios';\nimport i18next, { t as t$1 } from 'i18next';\nimport { DEFAULT_PAGE_INDEX, DEFAULT_STALE_TIME, PLURAL, SINGULAR, DEFAULT_PAGE_SIZE as DEFAULT_PAGE_SIZE$1 } from '@bigbinary/neeto-commons-frontend/constants';\nimport Pane from '@bigbinary/neetoui/Pane';\nimport Typography from '@bigbinary/neetoui/Typography';\nimport ActionBlock from '@bigbinary/neetoui/formik/ActionBlock';\nimport Form$1 from '@bigbinary/neetoui/formik/Form';\nimport Input from '@bigbinary/neetoui/formik/Input';\nimport Select from '@bigbinary/neetoui/formik/Select';\nimport Textarea from '@bigbinary/neetoui/formik/Textarea';\nimport Spinner from '@bigbinary/neetoui/Spinner';\nimport { jsx, jsxs, Fragment } from 'react/jsx-runtime';\nimport * as yup from 'yup';\nimport { object, string } from 'yup';\nimport { useFormikContext, useField } from 'formik';\nimport MoreDropdown from '@bigbinary/neeto-molecules/MoreDropdown';\nimport Avatar from '@bigbinary/neetoui/Avatar';\nimport Alert from '@bigbinary/neetoui/Alert';\nimport PageLoader from '@bigbinary/neeto-molecules/PageLoader';\nimport SubHeader$1 from '@bigbinary/neeto-molecules/SubHeader';\nimport TableWrapper from '@bigbinary/neeto-molecules/TableWrapper';\nimport Table$1 from '@bigbinary/neetoui/Table';\nimport NoData from '@bigbinary/neetoui/NoData';\nimport Tooltip from '@bigbinary/neetoui/Tooltip';\nimport { useProfileImageUpload } from '@bigbinary/neeto-image-uploader-frontend';\nimport ExternalLink from '@bigbinary/neeto-icons/ExternalLink';\nimport Callout from '@bigbinary/neetoui/Callout';\nimport Label from '@bigbinary/neetoui/Label';\nimport Radio from '@bigbinary/neetoui/Radio';\nimport Toastr from '@bigbinary/neetoui/Toastr';\nimport Delete$1 from '@bigbinary/neeto-icons/Delete';\nimport withImmutableActions from '@bigbinary/neeto-commons-frontend/react-utils/withImmutableActions';\nimport { create as create$3 } from 'zustand';\nimport { shallow } from 'zustand/shallow';\nimport Checkbox from '@bigbinary/neetoui/Checkbox';\nimport classnames from 'classnames';\nimport Search from '@bigbinary/neeto-icons/Search';\nimport Input$1 from '@bigbinary/neetoui/Input';\nimport Down from '@bigbinary/neeto-icons/Down';\nimport Up from '@bigbinary/neeto-icons/Up';\nimport { getQueryParams, buildUrl, hyphenize, currencyFormat, showThumbsUpToastr } from '@bigbinary/neeto-commons-frontend/utils';\nimport { buildFiltersFromURL, Bar } from '@bigbinary/neeto-filters-frontend';\nimport { useHiddenColumns } from '@bigbinary/neeto-molecules/Columns';\nimport { useHistory } from 'react-router-dom';\nimport require$$0$1 from 'util';\nimport Dropdown from '@bigbinary/neetoui/Dropdown';\nimport Tag from '@bigbinary/neetoui/Tag';\nimport Right$1 from '@bigbinary/neeto-icons/Right';\nimport Info from '@bigbinary/neeto-icons/Info';\nimport LeftArrow from '@bigbinary/neeto-icons/LeftArrow';\nimport useFetchNeetoApps from '@bigbinary/neeto-commons-frontend/react-utils/useFetchNeetoApps';\nimport Switch from '@bigbinary/neetoui/formik/Switch';\nimport Modal from '@bigbinary/neetoui/Modal';\nimport MultiEmailInput from '@bigbinary/neetoui/formik/MultiEmailInput';\nimport Radio$1 from '@bigbinary/neetoui/formik/Radio';\nimport Warning from '@bigbinary/neeto-icons/Warning';\nimport Checkbox$1 from '@bigbinary/neetoui/formik/Checkbox';\nimport UserCircle from '@bigbinary/neeto-icons/UserCircle';\n\nfunction _typeof$1(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof$1 = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof$1(o);\n}\n\nvar hasPermission = function hasPermission() {\n var _globalProps$permissi;\n var permissions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"\";\n var type = _typeof$1(permissions);\n var userPermissions = (_globalProps$permissi = globalProps.permissions) !== null && _globalProps$permissi !== void 0 ? _globalProps$permissi : [];\n if (Object.is(type, \"string\")) {\n return userPermissions.includes(permissions);\n } else if (Array.isArray(permissions)) {\n return permissions.some(function (permission) {\n return userPermissions.includes(permission);\n });\n }\n return false;\n};\nvar isOverflown = function isOverflown(_ref) {\n var clientWidth = _ref.clientWidth,\n clientHeight = _ref.clientHeight,\n scrollWidth = _ref.scrollWidth,\n scrollHeight = _ref.scrollHeight;\n return scrollHeight > clientHeight || scrollWidth > clientWidth;\n};\nvar getScrollBarWidth = function getScrollBarWidth() {\n var innerElement = document.createElement(\"p\");\n innerElement.classList.add(\"ntm-scrollbar__inner\");\n var outerElement = document.createElement(\"div\");\n outerElement.classList.add(\"ntm-scrollbar__outer\");\n outerElement.appendChild(innerElement);\n document.body.appendChild(outerElement);\n var w1 = innerElement.offsetWidth;\n outerElement.style.overflow = \"scroll\";\n var w2 = innerElement.offsetWidth;\n if (w1 === w2) w2 = outerElement.clientWidth;\n document.body.removeChild(outerElement);\n return w1 - w2;\n};\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}\n\nfunction _arrayLikeToArray$1(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}\n\nfunction _unsupportedIterableToArray$1(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray$1(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$1(o, minLen);\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray$1(arr, i) || _nonIterableRest();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray$1(arr);\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray$1(arr) || _nonIterableSpread();\n}\n\nvar DEFAULT_PAGE_SIZE = 30;\nvar ADMIN_ROLE_NAME = \"Admin\";\nvar OWNER_ROLE_NAME = \"Owner\";\nvar ADMIN_ROLES = [ADMIN_ROLE_NAME, OWNER_ROLE_NAME];\nvar MANAGE_MEMBERS_PERMISSION = \"members.manage_members\";\nvar MANAGE_ROLES_PERMISSION = \"settings.manage_roles\";\nvar VIEW_MEMBERS_PERMISSION = \"members.view_members\";\nvar VIEW_ROLES_PERMISSION = \"settings.view_roles\";\nvar QUERY_KEYS = {\n PERMISSIONS: \"neeto-team-members-permissions\",\n ROLES: \"neeto-team-members-roles\",\n GLOBAL_ROLES: \"neeto-team-members-global-roles\",\n TEAMS: \"neeto-team-members-teams\",\n TEAMS_DEPENDENCIES: \"neeto-team-members-teams-dependencies\",\n COUNTRIES_LIST: \"countries-list\",\n USER_PROFILE: \"user-profile\",\n CREATION_STATUS: \"creation-status\",\n GROUPS: \"groups\",\n GROUP_MEMBERS: \"group-members\"\n};\nvar BASE_URL = \"team_members\";\nvar DATE_FORMAT_OPTIONS = [{\n label: t$1(\"neetoTeamMembers.profile.common.mmddyy\"),\n value: \"%m/%d/%Y\"\n}, {\n label: t$1(\"neetoTeamMembers.profile.common.ddmmyy\"),\n value: \"%d/%m/%Y\"\n}, {\n label: t$1(\"neetoTeamMembers.profile.common.yymmdd\"),\n value: \"%Y/%m/%d\"\n}];\nvar SUBSCRIPTION_PLANS = Object.freeze({\n PRO: \"pro\",\n FREE: \"free\"\n});\nvar DEFAULT_PAGE_PROPERTIES = {\n size: DEFAULT_PAGE_SIZE,\n index: DEFAULT_PAGE_INDEX\n};\n\nvar list$1 = function list(params) {\n return axios.get(\"\".concat(BASE_URL, \"/api/v1/groups\"), {\n params: params\n });\n};\nvar show = function show(id) {\n return axios.get(\"\".concat(BASE_URL, \"/api/v1/groups/\").concat(id));\n};\nvar create$2 = function create(payload) {\n return axios.post(\"\".concat(BASE_URL, \"/api/v1/groups\"), payload);\n};\nvar update$2 = function update(id, payload) {\n return axios.patch(\"\".concat(BASE_URL, \"/api/v1/groups/\").concat(id), payload);\n};\nvar destroy$1 = function destroy(id) {\n return axios[\"delete\"](\"\".concat(BASE_URL, \"/api/v1/groups/\").concat(id));\n};\nvar groupsApi = {\n create: create$2,\n list: list$1,\n update: update$2,\n show: show,\n destroy: destroy$1\n};\n\nvar useFetchGroups = function useFetchGroups(_ref) {\n var page = _ref.page,\n pageSize = _ref.pageSize,\n _ref$searchTerm = _ref.searchTerm,\n searchTerm = _ref$searchTerm === void 0 ? \"\" : _ref$searchTerm;\n return useQuery({\n queryKey: [QUERY_KEYS.GROUPS, searchTerm, page, pageSize],\n queryFn: function queryFn() {\n return groupsApi.list({\n searchTerm: searchTerm,\n page: page,\n pageSize: pageSize,\n loadDetails: true\n });\n }\n });\n};\nvar useCreateGroup = function useCreateGroup() {\n var _config$form$otherKey, _config$form;\n var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return useMutationWithInvalidation(function (payload) {\n return groupsApi.create(payload);\n }, {\n keysToInvalidate: [[QUERY_KEYS.GROUPS]].concat(_toConsumableArray((_config$form$otherKey = config === null || config === void 0 || (_config$form = config.form) === null || _config$form === void 0 ? void 0 : _config$form.otherKeysToInvalidate) !== null && _config$form$otherKey !== void 0 ? _config$form$otherKey : []))\n });\n};\nvar useDeleteGroup = function useDeleteGroup() {\n var _config$form$otherKey2, _config$form2;\n var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return useMutationWithInvalidation(function (id) {\n return groupsApi.destroy(id);\n }, {\n keysToInvalidate: [[QUERY_KEYS.GROUPS]].concat(_toConsumableArray((_config$form$otherKey2 = config === null || config === void 0 || (_config$form2 = config.form) === null || _config$form2 === void 0 ? void 0 : _config$form2.otherKeysToInvalidate) !== null && _config$form$otherKey2 !== void 0 ? _config$form$otherKey2 : []))\n });\n};\nvar useFetchGroup = function useFetchGroup(id) {\n return useQuery({\n queryKey: [QUERY_KEYS.GROUPS, id],\n queryFn: function queryFn() {\n return groupsApi.show(id);\n },\n select: prop(\"group\"),\n enabled: !!id\n });\n};\nvar useUpdateGroup = function useUpdateGroup() {\n var _config$form$otherKey3, _config$form3;\n var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return useMutationWithInvalidation(function (_ref2) {\n var id = _ref2.id,\n payload = _ref2.payload;\n return groupsApi.update(id, payload);\n }, {\n keysToInvalidate: [[QUERY_KEYS.GROUPS]].concat(_toConsumableArray((_config$form$otherKey3 = config === null || config === void 0 || (_config$form3 = config.form) === null || _config$form3 === void 0 ? void 0 : _config$form3.otherKeysToInvalidate) !== null && _config$form$otherKey3 !== void 0 ? _config$form$otherKey3 : []))\n });\n};\n\nvar PaneSpinner = function PaneSpinner() {\n return /*#__PURE__*/jsx(\"div\", {\n className: \"flex h-full w-full items-center justify-center\",\n children: /*#__PURE__*/jsx(Spinner, {})\n });\n};\n\nvar list = function list() {\n return axios.get(\"\".concat(BASE_URL, \"/api/v1/users\"));\n};\nvar usersApi = {\n list: list\n};\n\nvar useFetchUsers = function useFetchUsers() {\n return useQuery({\n queryKey: [QUERY_KEYS.USERS],\n queryFn: usersApi.list\n });\n};\n\nvar MAXIMUM_NAME_LENGTH = 25;\nvar GROUP_FORM_VALIDATION_SCHEMA = yup.object({\n name: yup.string().required(t$1(\"neetoTeamMembers.validations.required\", {\n what: t$1(\"neetoTeamMembers.common.name\")\n })).trim(t$1(\"neetoTeamMembers.validations.noWhiteSpaces\", {\n what: t$1(\"neetoTeamMembers.common.name\")\n })).max(MAXIMUM_NAME_LENGTH, t$1(\"neetoTeamMembers.validations.max\", {\n size: MAXIMUM_NAME_LENGTH\n }))\n});\nvar GROUP_FORM_INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n members: []\n};\nvar DEFAULT_DELETE_GROUP_DATA = {\n isDeleting: false,\n group: {}\n};\nvar DEFAULT_EDIT_GROUP = {\n isVisible: false,\n groupId: \"\"\n};\n\nvar Member = function Member(_ref) {\n var member = _ref.member;\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isDeleteAlertOpen = _useState2[0],\n setIsDeleteAlertOpen = _useState2[1];\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useFormikContext = useFormikContext(),\n setFieldValue = _useFormikContext.setFieldValue,\n values = _useFormikContext.values;\n return /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsxs(\"div\", {\n className: \"neeto-ui-neeto-ui-rounded-lg neeto-desk-team-settings__member-list flex items-center justify-between p-2\",\n children: [/*#__PURE__*/jsxs(\"div\", {\n className: \"flex items-center space-x-2\",\n children: [/*#__PURE__*/jsx(Avatar, {\n className: \"flex-shrink-0\",\n size: \"medium\",\n user: {\n name: member === null || member === void 0 ? void 0 : member.name\n }\n }), /*#__PURE__*/jsxs(\"div\", {\n className: \"ml-2 w-auto\",\n children: [/*#__PURE__*/jsx(Typography, {\n className: \"mb-1 capitalize\",\n style: \"h5\",\n weight: \"medium\",\n children: member === null || member === void 0 ? void 0 : member.name\n }), /*#__PURE__*/jsx(Typography, {\n style: \"body3\",\n weight: \"normal\",\n children: taxonomies.groupMember.singular\n })]\n })]\n }), /*#__PURE__*/jsx(MoreDropdown, {\n dropdownProps: {\n strategy: \"fixed\",\n position: \"bottom-end\"\n },\n menuItems: [{\n key: \"delete-menu\",\n \"data-cy\": \"member-remove-button\",\n \"data-test-id\": \"member-remove-button\",\n label: t(\"neetoTeamMembers.common.remove\"),\n onClick: function onClick() {\n return setIsDeleteAlertOpen(true);\n }\n }]\n })]\n }), /*#__PURE__*/jsx(Alert, {\n isOpen: isDeleteAlertOpen,\n submitButtonLabel: t(\"neetoTeamMembers.common.remove\"),\n message: /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.alerts.messages.removeMember\",\n values: {\n member: member === null || member === void 0 ? void 0 : member.name\n }\n }),\n title: t(\"neetoTeamMembers.labels.removeMember\", {\n member: member === null || member === void 0 ? void 0 : member.name\n }),\n onClose: function onClose() {\n return setIsDeleteAlertOpen(false);\n },\n onSubmit: function onSubmit() {\n setFieldValue(\"members\", removeBy({\n id: member.id\n }, values.members));\n setIsDeleteAlertOpen(false);\n }\n })]\n });\n};\n\nvar Members = function Members(_ref) {\n var members = _ref.members,\n membersSelectbox = _ref.membersSelectbox;\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isAddNewMemberDropdownVisible = _useState2[0],\n setIsAddNewMemberDropdownVisible = _useState2[1];\n var _useFormikContext = useFormikContext(),\n values = _useFormikContext.values;\n var selectedMembers = members === null || members === void 0 ? void 0 : members.filter(function (member) {\n var _nullSafe;\n return (_nullSafe = nullSafe(pluck)(\"value\", values === null || values === void 0 ? void 0 : values.members)) === null || _nullSafe === void 0 ? void 0 : _nullSafe.includes(member.value);\n });\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"w-full space-y-4\",\n children: [/*#__PURE__*/jsxs(Typography, {\n style: \"h4\",\n weight: \"semibold\",\n children: [taxonomies.groupMember.plural, \" (\", members ? members.length : 0, \")\"]\n }), isAddNewMemberDropdownVisible ? membersSelectbox : /*#__PURE__*/jsx(Button, {\n \"data-cy\": \"new-member-button\",\n \"data-test-id\": \"new-member-button\",\n iconPosition: \"left\",\n style: \"secondary\",\n label: t(\"neetoTeamMembers.common.addNew_\", {\n what: taxonomies.groupMember.singular\n }),\n onClick: function onClick() {\n return setIsAddNewMemberDropdownVisible(true);\n }\n }), /*#__PURE__*/jsx(\"div\", {\n className: \"w-full space-y-1\",\n children: selectedMembers === null || selectedMembers === void 0 ? void 0 : selectedMembers.map(function (member) {\n return /*#__PURE__*/createElement(Member, {\n member: member,\n key: member.id\n });\n })\n })]\n });\n};\n\nvar Form = function Form(_ref) {\n var _config$form$initialV, _config$form, _config$form2, _config$pane;\n var _ref$group = _ref.group,\n group = _ref$group === void 0 ? {} : _ref$group,\n _ref$config = _ref.config,\n config = _ref$config === void 0 ? {} : _ref$config,\n _ref$isEdit = _ref.isEdit,\n isEdit = _ref$isEdit === void 0 ? false : _ref$isEdit,\n _ref$onClose = _ref.onClose,\n onClose = _ref$onClose === void 0 ? noop : _ref$onClose;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useFetchUsers = useFetchUsers(),\n _useFetchUsers$data = _useFetchUsers.data,\n _useFetchUsers$data2 = _useFetchUsers$data === void 0 ? {} : _useFetchUsers$data,\n users = _useFetchUsers$data2.users,\n isLoading = _useFetchUsers.isLoading;\n var _useCreateGroup = useCreateGroup(config),\n create = _useCreateGroup.mutate,\n isCreating = _useCreateGroup.isPending;\n var _useUpdateGroup = useUpdateGroup(config),\n update = _useUpdateGroup.mutate,\n isUpdating = _useUpdateGroup.isPending;\n var initialValues = isEdit ? group : mergeLeft(GROUP_FORM_INITIAL_VALUES, (_config$form$initialV = config === null || config === void 0 || (_config$form = config.form) === null || _config$form === void 0 ? void 0 : _config$form.initialValues) !== null && _config$form$initialV !== void 0 ? _config$form$initialV : {});\n var validationSchema = GROUP_FORM_VALIDATION_SCHEMA.concat(config === null || config === void 0 || (_config$form2 = config.form) === null || _config$form2 === void 0 ? void 0 : _config$form2.validationSchema);\n var getUserIds = function getUserIds(members) {\n return members ? pluck(\"id\", members) : [];\n };\n var handleSubmit = function handleSubmit(values) {\n var _config$form3, _config$form3$otherPa;\n var payload = {\n group: mergeLeft({\n name: values.name,\n description: values.description,\n userIds: getUserIds(values.members)\n }, config === null || config === void 0 || (_config$form3 = config.form) === null || _config$form3 === void 0 || (_config$form3$otherPa = _config$form3.otherPayloadData) === null || _config$form3$otherPa === void 0 ? void 0 : _config$form3$otherPa.call(_config$form3, values))\n };\n if (isEdit) {\n update({\n id: group.id,\n payload: payload\n }, {\n onSuccess: function onSuccess() {\n return onClose();\n }\n });\n } else {\n create(payload, {\n onSuccess: function onSuccess() {\n return onClose();\n }\n });\n }\n };\n if (isLoading || config !== null && config !== void 0 && (_config$pane = config.pane) !== null && _config$pane !== void 0 && _config$pane.isLoading) return /*#__PURE__*/jsx(PaneSpinner, {});\n return /*#__PURE__*/jsx(Form$1, {\n formProps: {\n noValidate: true,\n className: \"flex w-full flex-col gap-y-4 pb-6\"\n },\n formikProps: {\n enableReinitialize: true,\n initialValues: initialValues,\n validationSchema: validationSchema,\n onSubmit: handleSubmit\n },\n children: function children(_ref2) {\n var _config$form4, _config$form4$otherEl, _config$form5, _config$form5$otherEl;\n var values = _ref2.values;\n return /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(Input, {\n required: true,\n \"data-cy\": \"group-name-text-field\",\n label: t(\"neetoTeamMembers.common.name\"),\n name: \"name\"\n }), /*#__PURE__*/jsx(Textarea, {\n \"data-cy\": \"group-description-text-area\",\n label: t(\"neetoTeamMembers.common.description\"),\n name: \"description\",\n rows: 4,\n size: \"medium\"\n }), config === null || config === void 0 || (_config$form4 = config.form) === null || _config$form4 === void 0 || (_config$form4$otherEl = _config$form4.otherElements) === null || _config$form4$otherEl === void 0 ? void 0 : _config$form4$otherEl.call(_config$form4, values), isEdit ? /*#__PURE__*/jsx(Members, {\n members: values.members,\n membersSelectbox: /*#__PURE__*/jsx(Select, {\n isMulti: true,\n closeMenuOnSelect: false,\n getOptionLabel: prop(\"name\"),\n getOptionValue: prop(\"id\"),\n id: \"members-autocomplete\",\n label: taxonomies.groupMember.plural,\n name: \"members\",\n options: users,\n placeholder: taxonomies.groupMember.plural\n })\n }) : /*#__PURE__*/jsx(Select, {\n isMulti: true,\n closeMenuOnSelect: false,\n getOptionLabel: prop(\"name\"),\n getOptionValue: prop(\"id\"),\n id: \"members-autocomplete\",\n label: taxonomies.groupMember.plural,\n name: \"members\",\n options: users,\n placeholder: taxonomies.groupMember.plural\n }), config === null || config === void 0 || (_config$form5 = config.form) === null || _config$form5 === void 0 || (_config$form5$otherEl = _config$form5.otherElementsAtLast) === null || _config$form5$otherEl === void 0 ? void 0 : _config$form5$otherEl.call(_config$form5, values), /*#__PURE__*/jsx(Pane.Footer, {\n className: \"absolute bottom-0 left-0\",\n children: /*#__PURE__*/jsx(ActionBlock, {\n cancelButtonProps: {\n onClick: onClose\n },\n isSubmitting: isCreating || isUpdating\n })\n })]\n });\n }\n });\n};\n\nvar Create = withT(function (_ref) {\n var t = _ref.t,\n config = _ref.config,\n isOpen = _ref.isOpen,\n onClose = _ref.onClose;\n return /*#__PURE__*/jsxs(Pane, {\n isOpen: isOpen,\n onClose: onClose,\n children: [/*#__PURE__*/jsx(Pane.Header, {\n children: /*#__PURE__*/jsx(Typography, {\n style: \"h2\",\n weight: \"semibold\",\n children: t(\"neetoTeamMembers.common.addNew_\", {\n what: taxonomies.group.singular\n })\n })\n }), /*#__PURE__*/jsx(Pane.Body, {\n children: /*#__PURE__*/jsx(Form, {\n config: config,\n onClose: onClose\n })\n })]\n });\n});\n\nfunction _toPrimitive(input, hint) {\n if (_typeof$1(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof$1(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\n\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return _typeof$1(key) === \"symbol\" ? key : String(key);\n}\n\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\n\nvar renderName = function renderName(_ref) {\n var name = _ref.name,\n group = _ref.group,\n config = _ref.config,\n setEditGroupDetail = _ref.setEditGroupDetail,\n setDeleteGroup = _ref.setDeleteGroup,\n getGroupDetail = _ref.getGroupDetail;\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"flex items-center justify-between gap-x-3\",\n children: [/*#__PURE__*/jsx(Tooltip, {\n content: name,\n position: \"bottom\",\n children: /*#__PURE__*/jsx(Typography, {\n className: \"truncate\",\n style: \"body2\",\n children: name\n })\n }), /*#__PURE__*/jsx(MoreDropdown, {\n dropdownProps: {\n strategy: \"fixed\",\n position: \"bottom-end\"\n },\n menuItems: [{\n key: \"edit-menu\",\n label: t$1(\"neetoTeamMembers.common.edit\"),\n onClick: function onClick() {\n return setEditGroupDetail({\n isVisible: true,\n groupId: group.id\n });\n }\n }, {\n key: \"delete-menu\",\n label: t$1(\"neetoTeamMembers.common.delete\"),\n onClick: function onClick() {\n var _config$groupDependen, _config$table, _config$table$onBefor;\n config !== null && config !== void 0 && (_config$groupDependen = config.groupDependency) !== null && _config$groupDependen !== void 0 && _config$groupDependen.isCheckEnabled ? config === null || config === void 0 || (_config$table = config.table) === null || _config$table === void 0 || (_config$table$onBefor = _config$table.onBeforeDelete) === null || _config$table$onBefor === void 0 ? void 0 : _config$table$onBefor.call(_config$table, group) : setDeleteGroup({\n isDeleting: true,\n group: getGroupDetail(group.id)\n });\n }\n }]\n })]\n });\n};\nvar getColumnData$1 = function getColumnData(_ref2) {\n var _config$table$columns, _config$table2, _config$table2$column;\n var _ref2$config = _ref2.config,\n config = _ref2$config === void 0 ? {} : _ref2$config,\n setEditGroupDetail = _ref2.setEditGroupDetail,\n setDeleteGroup = _ref2.setDeleteGroup,\n getGroupDetail = _ref2.getGroupDetail;\n return [{\n dataIndex: \"name\",\n key: \"name\",\n title: t$1(\"neetoTeamMembers.common.name\"),\n ellipsis: true,\n width: 150,\n render: function render(name, group) {\n return renderName({\n name: name,\n group: group,\n config: config,\n setEditGroupDetail: setEditGroupDetail,\n setDeleteGroup: setDeleteGroup,\n getGroupDetail: getGroupDetail\n });\n }\n }, {\n dataIndex: \"description\",\n key: \"description\",\n title: t$1(\"neetoTeamMembers.common.description\"),\n render: function render(description) {\n return description || \"-\";\n },\n width: 200\n }].concat(_toConsumableArray((_config$table$columns = config === null || config === void 0 || (_config$table2 = config.table) === null || _config$table2 === void 0 || (_config$table2$column = _config$table2.columnsData) === null || _config$table2$column === void 0 ? void 0 : _config$table2$column.call(_config$table2)) !== null && _config$table$columns !== void 0 ? _config$table$columns : []));\n};\n\nvar commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nfunction getDefaultExportFromCjs (x) {\n\treturn x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;\n}\n\nfunction commonjsRequire(path) {\n\tthrow new Error('Could not dynamically require \"' + path + '\". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.');\n}\n\nvar pluralize$1 = {exports: {}};\n\n/* global define */\npluralize$1.exports;\n\n(function (module, exports) {\n\t(function (root, pluralize) {\n\t /* istanbul ignore else */\n\t if (typeof commonjsRequire === 'function' && 'object' === 'object' && 'object' === 'object') {\n\t // Node.\n\t module.exports = pluralize();\n\t } else {\n\t // Browser global.\n\t root.pluralize = pluralize();\n\t }\n\t})(commonjsGlobal, function () {\n\t // Rule storage - pluralize and singularize need to be run sequentially,\n\t // while other rules can be optimized using an object for instant lookups.\n\t var pluralRules = [];\n\t var singularRules = [];\n\t var uncountables = {};\n\t var irregularPlurals = {};\n\t var irregularSingles = {};\n\n\t /**\n\t * Sanitize a pluralization rule to a usable regular expression.\n\t *\n\t * @param {(RegExp|string)} rule\n\t * @return {RegExp}\n\t */\n\t function sanitizeRule (rule) {\n\t if (typeof rule === 'string') {\n\t return new RegExp('^' + rule + '$', 'i');\n\t }\n\n\t return rule;\n\t }\n\n\t /**\n\t * Pass in a word token to produce a function that can replicate the case on\n\t * another word.\n\t *\n\t * @param {string} word\n\t * @param {string} token\n\t * @return {Function}\n\t */\n\t function restoreCase (word, token) {\n\t // Tokens are an exact match.\n\t if (word === token) return token;\n\n\t // Lower cased words. E.g. \"hello\".\n\t if (word === word.toLowerCase()) return token.toLowerCase();\n\n\t // Upper cased words. E.g. \"WHISKY\".\n\t if (word === word.toUpperCase()) return token.toUpperCase();\n\n\t // Title cased words. E.g. \"Title\".\n\t if (word[0] === word[0].toUpperCase()) {\n\t return token.charAt(0).toUpperCase() + token.substr(1).toLowerCase();\n\t }\n\n\t // Lower cased words. E.g. \"test\".\n\t return token.toLowerCase();\n\t }\n\n\t /**\n\t * Interpolate a regexp string.\n\t *\n\t * @param {string} str\n\t * @param {Array} args\n\t * @return {string}\n\t */\n\t function interpolate (str, args) {\n\t return str.replace(/\\$(\\d{1,2})/g, function (match, index) {\n\t return args[index] || '';\n\t });\n\t }\n\n\t /**\n\t * Replace a word using a rule.\n\t *\n\t * @param {string} word\n\t * @param {Array} rule\n\t * @return {string}\n\t */\n\t function replace (word, rule) {\n\t return word.replace(rule[0], function (match, index) {\n\t var result = interpolate(rule[1], arguments);\n\n\t if (match === '') {\n\t return restoreCase(word[index - 1], result);\n\t }\n\n\t return restoreCase(match, result);\n\t });\n\t }\n\n\t /**\n\t * Sanitize a word by passing in the word and sanitization rules.\n\t *\n\t * @param {string} token\n\t * @param {string} word\n\t * @param {Array} rules\n\t * @return {string}\n\t */\n\t function sanitizeWord (token, word, rules) {\n\t // Empty string or doesn't need fixing.\n\t if (!token.length || uncountables.hasOwnProperty(token)) {\n\t return word;\n\t }\n\n\t var len = rules.length;\n\n\t // Iterate over the sanitization rules and use the first one to match.\n\t while (len--) {\n\t var rule = rules[len];\n\n\t if (rule[0].test(word)) return replace(word, rule);\n\t }\n\n\t return word;\n\t }\n\n\t /**\n\t * Replace a word with the updated word.\n\t *\n\t * @param {Object} replaceMap\n\t * @param {Object} keepMap\n\t * @param {Array} rules\n\t * @return {Function}\n\t */\n\t function replaceWord (replaceMap, keepMap, rules) {\n\t return function (word) {\n\t // Get the correct token and case restoration functions.\n\t var token = word.toLowerCase();\n\n\t // Check against the keep object map.\n\t if (keepMap.hasOwnProperty(token)) {\n\t return restoreCase(word, token);\n\t }\n\n\t // Check against the replacement map for a direct word replacement.\n\t if (replaceMap.hasOwnProperty(token)) {\n\t return restoreCase(word, replaceMap[token]);\n\t }\n\n\t // Run all the rules against the word.\n\t return sanitizeWord(token, word, rules);\n\t };\n\t }\n\n\t /**\n\t * Check if a word is part of the map.\n\t */\n\t function checkWord (replaceMap, keepMap, rules, bool) {\n\t return function (word) {\n\t var token = word.toLowerCase();\n\n\t if (keepMap.hasOwnProperty(token)) return true;\n\t if (replaceMap.hasOwnProperty(token)) return false;\n\n\t return sanitizeWord(token, token, rules) === token;\n\t };\n\t }\n\n\t /**\n\t * Pluralize or singularize a word based on the passed in count.\n\t *\n\t * @param {string} word The word to pluralize\n\t * @param {number} count How many of the word exist\n\t * @param {boolean} inclusive Whether to prefix with the number (e.g. 3 ducks)\n\t * @return {string}\n\t */\n\t function pluralize (word, count, inclusive) {\n\t var pluralized = count === 1\n\t ? pluralize.singular(word) : pluralize.plural(word);\n\n\t return (inclusive ? count + ' ' : '') + pluralized;\n\t }\n\n\t /**\n\t * Pluralize a word.\n\t *\n\t * @type {Function}\n\t */\n\t pluralize.plural = replaceWord(\n\t irregularSingles, irregularPlurals, pluralRules\n\t );\n\n\t /**\n\t * Check if a word is plural.\n\t *\n\t * @type {Function}\n\t */\n\t pluralize.isPlural = checkWord(\n\t irregularSingles, irregularPlurals, pluralRules\n\t );\n\n\t /**\n\t * Singularize a word.\n\t *\n\t * @type {Function}\n\t */\n\t pluralize.singular = replaceWord(\n\t irregularPlurals, irregularSingles, singularRules\n\t );\n\n\t /**\n\t * Check if a word is singular.\n\t *\n\t * @type {Function}\n\t */\n\t pluralize.isSingular = checkWord(\n\t irregularPlurals, irregularSingles, singularRules\n\t );\n\n\t /**\n\t * Add a pluralization rule to the collection.\n\t *\n\t * @param {(string|RegExp)} rule\n\t * @param {string} replacement\n\t */\n\t pluralize.addPluralRule = function (rule, replacement) {\n\t pluralRules.push([sanitizeRule(rule), replacement]);\n\t };\n\n\t /**\n\t * Add a singularization rule to the collection.\n\t *\n\t * @param {(string|RegExp)} rule\n\t * @param {string} replacement\n\t */\n\t pluralize.addSingularRule = function (rule, replacement) {\n\t singularRules.push([sanitizeRule(rule), replacement]);\n\t };\n\n\t /**\n\t * Add an uncountable word rule.\n\t *\n\t * @param {(string|RegExp)} word\n\t */\n\t pluralize.addUncountableRule = function (word) {\n\t if (typeof word === 'string') {\n\t uncountables[word.toLowerCase()] = true;\n\t return;\n\t }\n\n\t // Set singular and plural references for the word.\n\t pluralize.addPluralRule(word, '$0');\n\t pluralize.addSingularRule(word, '$0');\n\t };\n\n\t /**\n\t * Add an irregular word definition.\n\t *\n\t * @param {string} single\n\t * @param {string} plural\n\t */\n\t pluralize.addIrregularRule = function (single, plural) {\n\t plural = plural.toLowerCase();\n\t single = single.toLowerCase();\n\n\t irregularSingles[single] = plural;\n\t irregularPlurals[plural] = single;\n\t };\n\n\t /**\n\t * Irregular rules.\n\t */\n\t [\n\t // Pronouns.\n\t ['I', 'we'],\n\t ['me', 'us'],\n\t ['he', 'they'],\n\t ['she', 'they'],\n\t ['them', 'them'],\n\t ['myself', 'ourselves'],\n\t ['yourself', 'yourselves'],\n\t ['itself', 'themselves'],\n\t ['herself', 'themselves'],\n\t ['himself', 'themselves'],\n\t ['themself', 'themselves'],\n\t ['is', 'are'],\n\t ['was', 'were'],\n\t ['has', 'have'],\n\t ['this', 'these'],\n\t ['that', 'those'],\n\t // Words ending in with a consonant and `o`.\n\t ['echo', 'echoes'],\n\t ['dingo', 'dingoes'],\n\t ['volcano', 'volcanoes'],\n\t ['tornado', 'tornadoes'],\n\t ['torpedo', 'torpedoes'],\n\t // Ends with `us`.\n\t ['genus', 'genera'],\n\t ['viscus', 'viscera'],\n\t // Ends with `ma`.\n\t ['stigma', 'stigmata'],\n\t ['stoma', 'stomata'],\n\t ['dogma', 'dogmata'],\n\t ['lemma', 'lemmata'],\n\t ['schema', 'schemata'],\n\t ['anathema', 'anathemata'],\n\t // Other irregular rules.\n\t ['ox', 'oxen'],\n\t ['axe', 'axes'],\n\t ['die', 'dice'],\n\t ['yes', 'yeses'],\n\t ['foot', 'feet'],\n\t ['eave', 'eaves'],\n\t ['goose', 'geese'],\n\t ['tooth', 'teeth'],\n\t ['quiz', 'quizzes'],\n\t ['human', 'humans'],\n\t ['proof', 'proofs'],\n\t ['carve', 'carves'],\n\t ['valve', 'valves'],\n\t ['looey', 'looies'],\n\t ['thief', 'thieves'],\n\t ['groove', 'grooves'],\n\t ['pickaxe', 'pickaxes'],\n\t ['passerby', 'passersby']\n\t ].forEach(function (rule) {\n\t return pluralize.addIrregularRule(rule[0], rule[1]);\n\t });\n\n\t /**\n\t * Pluralization rules.\n\t */\n\t [\n\t [/s?$/i, 's'],\n\t [/[^\\u0000-\\u007F]$/i, '$0'],\n\t [/([^aeiou]ese)$/i, '$1'],\n\t [/(ax|test)is$/i, '$1es'],\n\t [/(alias|[^aou]us|t[lm]as|gas|ris)$/i, '$1es'],\n\t [/(e[mn]u)s?$/i, '$1s'],\n\t [/([^l]ias|[aeiou]las|[ejzr]as|[iu]am)$/i, '$1'],\n\t [/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i, '$1i'],\n\t [/(alumn|alg|vertebr)(?:a|ae)$/i, '$1ae'],\n\t [/(seraph|cherub)(?:im)?$/i, '$1im'],\n\t [/(her|at|gr)o$/i, '$1oes'],\n\t [/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|automat|quor)(?:a|um)$/i, '$1a'],\n\t [/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)(?:a|on)$/i, '$1a'],\n\t [/sis$/i, 'ses'],\n\t [/(?:(kni|wi|li)fe|(ar|l|ea|eo|oa|hoo)f)$/i, '$1$2ves'],\n\t [/([^aeiouy]|qu)y$/i, '$1ies'],\n\t [/([^ch][ieo][ln])ey$/i, '$1ies'],\n\t [/(x|ch|ss|sh|zz)$/i, '$1es'],\n\t [/(matr|cod|mur|sil|vert|ind|append)(?:ix|ex)$/i, '$1ices'],\n\t [/\\b((?:tit)?m|l)(?:ice|ouse)$/i, '$1ice'],\n\t [/(pe)(?:rson|ople)$/i, '$1ople'],\n\t [/(child)(?:ren)?$/i, '$1ren'],\n\t [/eaux$/i, '$0'],\n\t [/m[ae]n$/i, 'men'],\n\t ['thou', 'you']\n\t ].forEach(function (rule) {\n\t return pluralize.addPluralRule(rule[0], rule[1]);\n\t });\n\n\t /**\n\t * Singularization rules.\n\t */\n\t [\n\t [/s$/i, ''],\n\t [/(ss)$/i, '$1'],\n\t [/(wi|kni|(?:after|half|high|low|mid|non|night|[^\\w]|^)li)ves$/i, '$1fe'],\n\t [/(ar|(?:wo|[ae])l|[eo][ao])ves$/i, '$1f'],\n\t [/ies$/i, 'y'],\n\t [/\\b([pl]|zomb|(?:neck|cross)?t|coll|faer|food|gen|goon|group|lass|talk|goal|cut)ies$/i, '$1ie'],\n\t [/\\b(mon|smil)ies$/i, '$1ey'],\n\t [/\\b((?:tit)?m|l)ice$/i, '$1ouse'],\n\t [/(seraph|cherub)im$/i, '$1'],\n\t [/(x|ch|ss|sh|zz|tto|go|cho|alias|[^aou]us|t[lm]as|gas|(?:her|at|gr)o|[aeiou]ris)(?:es)?$/i, '$1'],\n\t [/(analy|diagno|parenthe|progno|synop|the|empha|cri|ne)(?:sis|ses)$/i, '$1sis'],\n\t [/(movie|twelve|abuse|e[mn]u)s$/i, '$1'],\n\t [/(test)(?:is|es)$/i, '$1is'],\n\t [/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i, '$1us'],\n\t [/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|quor)a$/i, '$1um'],\n\t [/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)a$/i, '$1on'],\n\t [/(alumn|alg|vertebr)ae$/i, '$1a'],\n\t [/(cod|mur|sil|vert|ind)ices$/i, '$1ex'],\n\t [/(matr|append)ices$/i, '$1ix'],\n\t [/(pe)(rson|ople)$/i, '$1rson'],\n\t [/(child)ren$/i, '$1'],\n\t [/(eau)x?$/i, '$1'],\n\t [/men$/i, 'man']\n\t ].forEach(function (rule) {\n\t return pluralize.addSingularRule(rule[0], rule[1]);\n\t });\n\n\t /**\n\t * Uncountable rules.\n\t */\n\t [\n\t // Singular words with no plurals.\n\t 'adulthood',\n\t 'advice',\n\t 'agenda',\n\t 'aid',\n\t 'aircraft',\n\t 'alcohol',\n\t 'ammo',\n\t 'analytics',\n\t 'anime',\n\t 'athletics',\n\t 'audio',\n\t 'bison',\n\t 'blood',\n\t 'bream',\n\t 'buffalo',\n\t 'butter',\n\t 'carp',\n\t 'cash',\n\t 'chassis',\n\t 'chess',\n\t 'clothing',\n\t 'cod',\n\t 'commerce',\n\t 'cooperation',\n\t 'corps',\n\t 'debris',\n\t 'diabetes',\n\t 'digestion',\n\t 'elk',\n\t 'energy',\n\t 'equipment',\n\t 'excretion',\n\t 'expertise',\n\t 'firmware',\n\t 'flounder',\n\t 'fun',\n\t 'gallows',\n\t 'garbage',\n\t 'graffiti',\n\t 'hardware',\n\t 'headquarters',\n\t 'health',\n\t 'herpes',\n\t 'highjinks',\n\t 'homework',\n\t 'housework',\n\t 'information',\n\t 'jeans',\n\t 'justice',\n\t 'kudos',\n\t 'labour',\n\t 'literature',\n\t 'machinery',\n\t 'mackerel',\n\t 'mail',\n\t 'media',\n\t 'mews',\n\t 'moose',\n\t 'music',\n\t 'mud',\n\t 'manga',\n\t 'news',\n\t 'only',\n\t 'personnel',\n\t 'pike',\n\t 'plankton',\n\t 'pliers',\n\t 'police',\n\t 'pollution',\n\t 'premises',\n\t 'rain',\n\t 'research',\n\t 'rice',\n\t 'salmon',\n\t 'scissors',\n\t 'series',\n\t 'sewage',\n\t 'shambles',\n\t 'shrimp',\n\t 'software',\n\t 'species',\n\t 'staff',\n\t 'swine',\n\t 'tennis',\n\t 'traffic',\n\t 'transportation',\n\t 'trout',\n\t 'tuna',\n\t 'wealth',\n\t 'welfare',\n\t 'whiting',\n\t 'wildebeest',\n\t 'wildlife',\n\t 'you',\n\t /pok[eé]mon$/i,\n\t // Regexes.\n\t /[^aeiou]ese$/i, // \"chinese\", \"japanese\"\n\t /deer$/i, // \"deer\", \"reindeer\"\n\t /fish$/i, // \"fish\", \"blowfish\", \"angelfish\"\n\t /measles$/i,\n\t /o[iu]s$/i, // \"carnivorous\"\n\t /pox$/i, // \"chickpox\", \"smallpox\"\n\t /sheep$/i\n\t ].forEach(pluralize.addUncountableRule);\n\n\t return pluralize;\n\t}); \n} (pluralize$1, pluralize$1.exports));\n\nvar pluralizeExports = pluralize$1.exports;\nvar pluralize = /*@__PURE__*/getDefaultExportFromCjs(pluralizeExports);\n\nvar pluralizeLabelUsingTaxonomy = function pluralizeLabelUsingTaxonomy(label, count) {\n if (includes(label, keys(taxonomies))) {\n var taxonomyLabel = count > 1 ? taxonomies[label].plural : taxonomies[label].singular;\n return \"\".concat(count, \" \").concat(taxonomyLabel.toLocaleLowerCase());\n }\n return pluralize(label, count, true).toLocaleLowerCase();\n};\n\nvar Edit = function Edit(_ref) {\n var config = _ref.config,\n groupId = _ref.groupId,\n isOpen = _ref.isOpen,\n onClose = _ref.onClose;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useFetchGroup = useFetchGroup(groupId),\n group = _useFetchGroup.data,\n isLoading = _useFetchGroup.isLoading;\n if (isLoading) {\n return /*#__PURE__*/jsx(\"div\", {\n className: \"h-screen w-full\",\n children: /*#__PURE__*/jsx(PageLoader, {})\n });\n }\n return /*#__PURE__*/jsxs(Pane, {\n isOpen: isOpen,\n onClose: onClose,\n children: [/*#__PURE__*/jsx(Pane.Header, {\n children: /*#__PURE__*/jsx(Typography, {\n style: \"h2\",\n weight: \"semibold\",\n children: t(\"neetoTeamMembers.common.edit_\", {\n what: taxonomies.group.singular\n })\n })\n }), /*#__PURE__*/jsx(Pane.Body, {\n children: /*#__PURE__*/jsx(Form, {\n config: config,\n group: group,\n onClose: onClose,\n isEdit: true\n })\n })]\n });\n};\n\nfunction ownKeys$k(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$k(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$k(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$k(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar List = function List(_ref) {\n var _config$table$deleteA, _config$table, _config$table$deleteA2;\n var config = _ref.config,\n groups = _ref.groups,\n isLoading = _ref.isLoading,\n searchTerm = _ref.searchTerm,\n pageProperties = _ref.pageProperties,\n setPageProperties = _ref.setPageProperties,\n emptyStateAction = _ref.emptyStateAction;\n var _useState = useState(DEFAULT_EDIT_GROUP),\n _useState2 = _slicedToArray(_useState, 2),\n editGroupDetail = _useState2[0],\n setEditGroupDetail = _useState2[1];\n var _useState3 = useState(DEFAULT_DELETE_GROUP_DATA),\n _useState4 = _slicedToArray(_useState3, 2),\n deleteGroup = _useState4[0],\n setDeleteGroup = _useState4[1];\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var totalCount = groups === null || groups === void 0 ? void 0 : groups.length;\n var _useDeleteGroup = useDeleteGroup(config),\n groupDelete = _useDeleteGroup.mutate,\n isDeleting = _useDeleteGroup.isPending;\n var getGroupDetail = function getGroupDetail(id) {\n return findById(id, groups);\n };\n var handleGroupDelete = function handleGroupDelete(group) {\n groupDelete(group.id, {\n onSuccess: function onSuccess() {\n setDeleteGroup(DEFAULT_DELETE_GROUP_DATA);\n }\n });\n };\n var columnData = getColumnData$1({\n config: config,\n setEditGroupDetail: setEditGroupDetail,\n setDeleteGroup: setDeleteGroup,\n getGroupDetail: getGroupDetail\n });\n useEffect(function () {\n var _config$groupDependen, _config$groupDependen2, _config$groupDependen3, _config$groupDependen4;\n if (config !== null && config !== void 0 && (_config$groupDependen = config.groupDependency) !== null && _config$groupDependen !== void 0 && _config$groupDependen.isCheckEnabled && ((_config$groupDependen2 = config.groupDependency) === null || _config$groupDependen2 === void 0 ? void 0 : _config$groupDependen2.verificationStatus) === \"successful\" && !(config !== null && config !== void 0 && (_config$groupDependen3 = config.groupDependency) !== null && _config$groupDependen3 !== void 0 && _config$groupDependen3.isDependent) && isPresent(config === null || config === void 0 || (_config$groupDependen4 = config.groupDependency) === null || _config$groupDependen4 === void 0 ? void 0 : _config$groupDependen4.selectedGroup)) {\n var _config$groupDependen5;\n setDeleteGroup({\n isDeleting: true,\n group: config === null || config === void 0 || (_config$groupDependen5 = config.groupDependency) === null || _config$groupDependen5 === void 0 ? void 0 : _config$groupDependen5.selectedGroup\n });\n }\n }, [config === null || config === void 0 ? void 0 : config.groupDependency]);\n if (isLoading || isDeleting) {\n return /*#__PURE__*/jsx(\"div\", {\n className: \"h-screen w-full\",\n children: /*#__PURE__*/jsx(PageLoader, {})\n });\n }\n return /*#__PURE__*/jsxs(Fragment, {\n children: [!isEmpty(groups) ? /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(SubHeader$1, {\n leftActionBlock: totalCount > 0 && /*#__PURE__*/jsx(Typography, {\n className: \"mr-4 font-semibold\",\n component: \"h4\",\n \"data-cy\": \"item-count\",\n children: pluralizeLabelUsingTaxonomy(taxonomies.group.singular, totalCount)\n })\n }), /*#__PURE__*/jsx(TableWrapper, {\n hasPagination: totalCount > pageProperties.size,\n children: /*#__PURE__*/jsx(Table$1, {\n columnData: columnData,\n totalCount: totalCount,\n fixedHeight: true,\n allowRowClick: false,\n currentPageNumber: pageProperties.index,\n defaultPageSize: pageProperties.size,\n loading: isLoading,\n rowData: groups,\n rowSelection: false,\n scroll: {\n x: \"100%\"\n },\n handlePageChange: function handlePageChange(index, size) {\n return setPageProperties({\n index: index,\n size: size\n });\n }\n })\n })]\n }) : /*#__PURE__*/jsx(\"div\", {\n className: \"flex h-full w-full flex-grow items-center justify-center\",\n children: /*#__PURE__*/jsx(NoData, _objectSpread$k({\n title: t(\"neetoTeamMembers.helpers.emptyTable\", {\n entity: taxonomies.group.plural\n })\n }, !searchTerm && {\n primaryButtonProps: {\n label: t(\"neetoTeamMembers.common.addNew_\", {\n what: taxonomies.group.singular\n }),\n onClick: emptyStateAction\n }\n }))\n }), /*#__PURE__*/jsx(Edit, {\n config: config,\n groupId: editGroupDetail.groupId,\n isOpen: editGroupDetail.isVisible,\n onClose: function onClose() {\n return setEditGroupDetail(DEFAULT_EDIT_GROUP);\n }\n }), /*#__PURE__*/jsx(Alert, {\n isOpen: deleteGroup.isDeleting,\n submitButtonLabel: t(\"neetoTeamMembers.common.delete\"),\n message: (_config$table$deleteA = config === null || config === void 0 || (_config$table = config.table) === null || _config$table === void 0 || (_config$table$deleteA2 = _config$table.deleteAlertMessage) === null || _config$table$deleteA2 === void 0 ? void 0 : _config$table$deleteA2.call(_config$table, deleteGroup.group)) !== null && _config$table$deleteA !== void 0 ? _config$table$deleteA : /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.alerts.messages.delete\",\n values: {\n resource: taxonomies.group.singular,\n name: deleteGroup.group.name\n }\n }),\n title: t(\"neetoTeamMembers.labels.deleteTitle\", {\n resource: taxonomies.group.singular\n }),\n onClose: function onClose() {\n return setDeleteGroup(DEFAULT_DELETE_GROUP_DATA);\n },\n onSubmit: function onSubmit() {\n return handleGroupDelete(deleteGroup.group);\n }\n })]\n });\n};\n\nvar Groups = function Groups(_ref) {\n var _config$header$breadc, _config$header;\n var _ref$config = _ref.config,\n config = _ref$config === void 0 ? {} : _ref$config;\n var _useQueryParams = useQueryParams(),\n _useQueryParams$searc = _useQueryParams.searchTerm,\n searchTerm = _useQueryParams$searc === void 0 ? \"\" : _useQueryParams$searc;\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isPaneOpen = _useState2[0],\n setIsPaneOpen = _useState2[1];\n var _useState3 = useState(DEFAULT_PAGE_PROPERTIES),\n _useState4 = _slicedToArray(_useState3, 2),\n pageProperties = _useState4[0],\n setPageProperties = _useState4[1];\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useFetchGroups = useFetchGroups({\n page: pageProperties.index,\n pageSize: pageProperties.size,\n searchTerm: searchTerm\n }),\n _useFetchGroups$data = _useFetchGroups.data,\n _useFetchGroups$data2 = _useFetchGroups$data === void 0 ? {} : _useFetchGroups$data,\n groups = _useFetchGroups$data2.groups,\n isLoading = _useFetchGroups.isLoading;\n var isFiltersVisible = isNotEmpty(groups) || isPresent(searchTerm);\n useEffect(function () {\n setPageProperties(DEFAULT_PAGE_PROPERTIES);\n }, [searchTerm]);\n return /*#__PURE__*/jsxs(Container, {\n children: [/*#__PURE__*/jsx(NeetoHeader, {\n breadcrumbs: (_config$header$breadc = config === null || config === void 0 || (_config$header = config.header) === null || _config$header === void 0 ? void 0 : _config$header.breadcrumbs) !== null && _config$header$breadc !== void 0 ? _config$header$breadc : [],\n title: taxonomies.group.plural,\n actionBlock: /*#__PURE__*/jsx(\"div\", {\n className: \"flex flex-row items-center justify-end\",\n children: /*#__PURE__*/jsx(Button, {\n \"data-cy\": \"add-new-group-button\",\n style: \"primary\",\n label: t(\"neetoTeamMembers.common.addNew_\", {\n what: taxonomies.group.singular\n }),\n onClick: function onClick() {\n return setIsPaneOpen(true);\n }\n })\n }),\n searchProps: isFiltersVisible && {\n placeholder: t(\"neetoTeamMembers.placeholders.searchEntity\", {\n entity: taxonomies.group.plural\n })\n }\n }), /*#__PURE__*/jsx(List, {\n config: config,\n groups: groups,\n isLoading: isLoading,\n pageProperties: pageProperties,\n searchTerm: searchTerm,\n setPageProperties: setPageProperties,\n emptyStateAction: function emptyStateAction() {\n return setIsPaneOpen(true);\n },\n onClose: function onClose() {\n return setIsPaneOpen(false);\n }\n }), /*#__PURE__*/jsx(Create, {\n config: config,\n isOpen: isPaneOpen,\n onClose: function onClose() {\n return setIsPaneOpen(false);\n }\n })]\n });\n};\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\n\nvar regeneratorRuntime$1 = {exports: {}};\n\nvar _typeof = {exports: {}};\n\n_typeof.exports;\n\n(function (module) {\n\tfunction _typeof(o) {\n\t \"@babel/helpers - typeof\";\n\n\t return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n\t return typeof o;\n\t } : function (o) {\n\t return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n\t }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(o);\n\t}\n\tmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports; \n} (_typeof));\n\nvar _typeofExports = _typeof.exports;\n\nregeneratorRuntime$1.exports;\n\n(function (module) {\n\tvar _typeof = _typeofExports[\"default\"];\n\tfunction _regeneratorRuntime() {\n\t module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n\t return e;\n\t }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n\t var t,\n\t e = {},\n\t r = Object.prototype,\n\t n = r.hasOwnProperty,\n\t o = Object.defineProperty || function (t, e, r) {\n\t t[e] = r.value;\n\t },\n\t i = \"function\" == typeof Symbol ? Symbol : {},\n\t a = i.iterator || \"@@iterator\",\n\t c = i.asyncIterator || \"@@asyncIterator\",\n\t u = i.toStringTag || \"@@toStringTag\";\n\t function define(t, e, r) {\n\t return Object.defineProperty(t, e, {\n\t value: r,\n\t enumerable: !0,\n\t configurable: !0,\n\t writable: !0\n\t }), t[e];\n\t }\n\t try {\n\t define({}, \"\");\n\t } catch (t) {\n\t define = function define(t, e, r) {\n\t return t[e] = r;\n\t };\n\t }\n\t function wrap(t, e, r, n) {\n\t var i = e && e.prototype instanceof Generator ? e : Generator,\n\t a = Object.create(i.prototype),\n\t c = new Context(n || []);\n\t return o(a, \"_invoke\", {\n\t value: makeInvokeMethod(t, r, c)\n\t }), a;\n\t }\n\t function tryCatch(t, e, r) {\n\t try {\n\t return {\n\t type: \"normal\",\n\t arg: t.call(e, r)\n\t };\n\t } catch (t) {\n\t return {\n\t type: \"throw\",\n\t arg: t\n\t };\n\t }\n\t }\n\t e.wrap = wrap;\n\t var h = \"suspendedStart\",\n\t l = \"suspendedYield\",\n\t f = \"executing\",\n\t s = \"completed\",\n\t y = {};\n\t function Generator() {}\n\t function GeneratorFunction() {}\n\t function GeneratorFunctionPrototype() {}\n\t var p = {};\n\t define(p, a, function () {\n\t return this;\n\t });\n\t var d = Object.getPrototypeOf,\n\t v = d && d(d(values([])));\n\t v && v !== r && n.call(v, a) && (p = v);\n\t var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n\t function defineIteratorMethods(t) {\n\t [\"next\", \"throw\", \"return\"].forEach(function (e) {\n\t define(t, e, function (t) {\n\t return this._invoke(e, t);\n\t });\n\t });\n\t }\n\t function AsyncIterator(t, e) {\n\t function invoke(r, o, i, a) {\n\t var c = tryCatch(t[r], t, o);\n\t if (\"throw\" !== c.type) {\n\t var u = c.arg,\n\t h = u.value;\n\t return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n\t invoke(\"next\", t, i, a);\n\t }, function (t) {\n\t invoke(\"throw\", t, i, a);\n\t }) : e.resolve(h).then(function (t) {\n\t u.value = t, i(u);\n\t }, function (t) {\n\t return invoke(\"throw\", t, i, a);\n\t });\n\t }\n\t a(c.arg);\n\t }\n\t var r;\n\t o(this, \"_invoke\", {\n\t value: function value(t, n) {\n\t function callInvokeWithMethodAndArg() {\n\t return new e(function (e, r) {\n\t invoke(t, n, e, r);\n\t });\n\t }\n\t return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n\t }\n\t });\n\t }\n\t function makeInvokeMethod(e, r, n) {\n\t var o = h;\n\t return function (i, a) {\n\t if (o === f) throw new Error(\"Generator is already running\");\n\t if (o === s) {\n\t if (\"throw\" === i) throw a;\n\t return {\n\t value: t,\n\t done: !0\n\t };\n\t }\n\t for (n.method = i, n.arg = a;;) {\n\t var c = n.delegate;\n\t if (c) {\n\t var u = maybeInvokeDelegate(c, n);\n\t if (u) {\n\t if (u === y) continue;\n\t return u;\n\t }\n\t }\n\t if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n\t if (o === h) throw o = s, n.arg;\n\t n.dispatchException(n.arg);\n\t } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n\t o = f;\n\t var p = tryCatch(e, r, n);\n\t if (\"normal\" === p.type) {\n\t if (o = n.done ? s : l, p.arg === y) continue;\n\t return {\n\t value: p.arg,\n\t done: n.done\n\t };\n\t }\n\t \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n\t }\n\t };\n\t }\n\t function maybeInvokeDelegate(e, r) {\n\t var n = r.method,\n\t o = e.iterator[n];\n\t if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n\t var i = tryCatch(o, e.iterator, r.arg);\n\t if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n\t var a = i.arg;\n\t return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n\t }\n\t function pushTryEntry(t) {\n\t var e = {\n\t tryLoc: t[0]\n\t };\n\t 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n\t }\n\t function resetTryEntry(t) {\n\t var e = t.completion || {};\n\t e.type = \"normal\", delete e.arg, t.completion = e;\n\t }\n\t function Context(t) {\n\t this.tryEntries = [{\n\t tryLoc: \"root\"\n\t }], t.forEach(pushTryEntry, this), this.reset(!0);\n\t }\n\t function values(e) {\n\t if (e || \"\" === e) {\n\t var r = e[a];\n\t if (r) return r.call(e);\n\t if (\"function\" == typeof e.next) return e;\n\t if (!isNaN(e.length)) {\n\t var o = -1,\n\t i = function next() {\n\t for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n\t return next.value = t, next.done = !0, next;\n\t };\n\t return i.next = i;\n\t }\n\t }\n\t throw new TypeError(_typeof(e) + \" is not iterable\");\n\t }\n\t return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n\t value: GeneratorFunctionPrototype,\n\t configurable: !0\n\t }), o(GeneratorFunctionPrototype, \"constructor\", {\n\t value: GeneratorFunction,\n\t configurable: !0\n\t }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n\t var e = \"function\" == typeof t && t.constructor;\n\t return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n\t }, e.mark = function (t) {\n\t return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n\t }, e.awrap = function (t) {\n\t return {\n\t __await: t\n\t };\n\t }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n\t return this;\n\t }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n\t void 0 === i && (i = Promise);\n\t var a = new AsyncIterator(wrap(t, r, n, o), i);\n\t return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n\t return t.done ? t.value : a.next();\n\t });\n\t }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n\t return this;\n\t }), define(g, \"toString\", function () {\n\t return \"[object Generator]\";\n\t }), e.keys = function (t) {\n\t var e = Object(t),\n\t r = [];\n\t for (var n in e) r.push(n);\n\t return r.reverse(), function next() {\n\t for (; r.length;) {\n\t var t = r.pop();\n\t if (t in e) return next.value = t, next.done = !1, next;\n\t }\n\t return next.done = !0, next;\n\t };\n\t }, e.values = values, Context.prototype = {\n\t constructor: Context,\n\t reset: function reset(e) {\n\t if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n\t },\n\t stop: function stop() {\n\t this.done = !0;\n\t var t = this.tryEntries[0].completion;\n\t if (\"throw\" === t.type) throw t.arg;\n\t return this.rval;\n\t },\n\t dispatchException: function dispatchException(e) {\n\t if (this.done) throw e;\n\t var r = this;\n\t function handle(n, o) {\n\t return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n\t }\n\t for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n\t var i = this.tryEntries[o],\n\t a = i.completion;\n\t if (\"root\" === i.tryLoc) return handle(\"end\");\n\t if (i.tryLoc <= this.prev) {\n\t var c = n.call(i, \"catchLoc\"),\n\t u = n.call(i, \"finallyLoc\");\n\t if (c && u) {\n\t if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n\t if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n\t } else if (c) {\n\t if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n\t } else {\n\t if (!u) throw new Error(\"try statement without catch or finally\");\n\t if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n\t }\n\t }\n\t }\n\t },\n\t abrupt: function abrupt(t, e) {\n\t for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n\t var o = this.tryEntries[r];\n\t if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n\t var i = o;\n\t break;\n\t }\n\t }\n\t i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n\t var a = i ? i.completion : {};\n\t return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n\t },\n\t complete: function complete(t, e) {\n\t if (\"throw\" === t.type) throw t.arg;\n\t return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n\t },\n\t finish: function finish(t) {\n\t for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n\t var r = this.tryEntries[e];\n\t if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n\t }\n\t },\n\t \"catch\": function _catch(t) {\n\t for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n\t var r = this.tryEntries[e];\n\t if (r.tryLoc === t) {\n\t var n = r.completion;\n\t if (\"throw\" === n.type) {\n\t var o = n.arg;\n\t resetTryEntry(r);\n\t }\n\t return o;\n\t }\n\t }\n\t throw new Error(\"illegal catch attempt\");\n\t },\n\t delegateYield: function delegateYield(e, r, n) {\n\t return this.delegate = {\n\t iterator: values(e),\n\t resultName: r,\n\t nextLoc: n\n\t }, \"next\" === this.method && (this.arg = t), y;\n\t }\n\t }, e;\n\t}\n\tmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports; \n} (regeneratorRuntime$1));\n\nvar regeneratorRuntimeExports = regeneratorRuntime$1.exports;\n\n// TODO(Babel 8): Remove this file.\n\nvar runtime = regeneratorRuntimeExports();\nvar regenerator = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n\nvar _regeneratorRuntime = /*@__PURE__*/getDefaultExportFromCjs(regenerator);\n\nvar fetchCountries = function fetchCountries() {\n return axios.get(\"\".concat(BASE_URL, \"/profile/countries\"));\n};\nvar fetchUserDetails = function fetchUserDetails() {\n return axios.get(\"\".concat(BASE_URL, \"/profile/user\"));\n};\nvar updateUser = function updateUser(_ref) {\n var id = _ref.id,\n payload = _ref.payload;\n return axios.put(\"\".concat(BASE_URL, \"/profile/user/\").concat(id), payload);\n};\nvar profileApi = {\n fetchCountries: fetchCountries,\n fetchUserDetails: fetchUserDetails,\n updateUser: updateUser\n};\n\nfunction ownKeys$j(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$j(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$j(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$j(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar useFetchProfile = function useFetchProfile(options) {\n return useQuery(_objectSpread$j({\n queryKey: [QUERY_KEYS.USER_PROFILE],\n queryFn: profileApi.fetchUserDetails,\n staleTime: DEFAULT_STALE_TIME\n }, options));\n};\nvar useUpdateProfileMutation = function useUpdateProfileMutation(options) {\n return useMutationWithInvalidation(profileApi.updateUser, _objectSpread$j(_objectSpread$j({\n keysToInvalidate: [[QUERY_KEYS.USER_PROFILE]]\n }, options), {}, {\n onSuccess: function onSuccess() {\n return window.location.reload();\n }\n }));\n};\n\nvar PROFILE_VALIDATION_SCHEMA = yup.object().shape({\n firstName: yup.string().trim().required(t$1(\"neetoTeamMembers.profile.form.isRequired.firstName\")).matches(/^[a-zA-Z0-9 ,'-áéíóúÁÉÍÓÚ]+$/i, t$1(\"neetoTeamMembers.profile.form.invalidName\")).matches(/^[^.]+$/i, t$1(\"neetoTeamMembers.profile.form.dotsNotAllowed\")),\n lastName: yup.string().trim().required(t$1(\"neetoTeamMembers.profile.form.isRequired.lastName\")).matches(/^[a-zA-Z0-9 ,'-áéíóúÁÉÍÓÚ]+$/i, t$1(\"neetoTeamMembers.profile.form.invalidName\")).matches(/^[^.]+$/i, t$1(\"neetoTeamMembers.profile.form.dotsNotAllowed\")),\n dateFormat: yup.string().required(t$1(\"neetoTeamMembers.profile.form.isRequired.dateFormat\"))\n});\nvar MY_PROFILE_PATH = \"/auth/profile/edit\";\nvar ALLOWED_PROFILE_IMAGE_MIME_TYPES = [\"image/jpeg\", \"image/png\"];\nvar IMAGE_DELETE_BUTTON_SIZE = 16;\nvar STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES = globalProps.endUserUploadedFileSizeLimitInMb * 1024 * 1024;\nvar VALIDATION_ERRORS = {\n invalid_type: t$1(\"neetoTeamMembers.profile.file.invalidType.image\"),\n corrupted_file: t$1(\"neetoTeamMembers.profile.file.corrupted\"),\n file_limit_exceeded: t$1(\"neetoTeamMembers.profile.file.limitExceeded\", {\n maxSize: globalProps.endUserUploadedFileSizeLimitInMb\n })\n};\n\nfunction ownKeys$i(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$i(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$i(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$i(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar useFetchCountries = function useFetchCountries(options) {\n return useQuery(_objectSpread$i({\n queryKey: [QUERY_KEYS.COUNTRIES_LIST],\n queryFn: profileApi.fetchCountries,\n staleTime: DEFAULT_STALE_TIME\n }, options));\n};\n\nvar findTimeZoneAndCountry = function findTimeZoneAndCountry(timeZoneName, countries) {\n return countries.reduce(function (acc, country) {\n var timeZone = findBy({\n name: timeZoneName\n }, country.timeZones);\n return timeZone ? {\n country: country,\n timeZone: timeZone\n } : acc;\n }, {\n country: null,\n timeZone: null\n });\n};\n\nvar useCountries = function useCountries(user) {\n var _useState = useState([]),\n _useState2 = _slicedToArray(_useState, 2),\n timeZoneDropdownOptions = _useState2[0],\n setTimeZoneDropdownOptions = _useState2[1];\n var _useState3 = useState(null),\n _useState4 = _slicedToArray(_useState3, 2),\n selectedCountryOption = _useState4[0],\n setSelectedCountryOption = _useState4[1];\n var _useState5 = useState(null),\n _useState6 = _slicedToArray(_useState5, 2),\n selectedTimeZoneOption = _useState6[0],\n setSelectedTimeZoneOption = _useState6[1];\n var _useFetchCountries = useFetchCountries(),\n _useFetchCountries$da = _useFetchCountries.data,\n _useFetchCountries$da2 = _useFetchCountries$da === void 0 ? {} : _useFetchCountries$da,\n _useFetchCountries$da3 = _useFetchCountries$da2.countries,\n countries = _useFetchCountries$da3 === void 0 ? [] : _useFetchCountries$da3,\n isLoading = _useFetchCountries.isLoading;\n var formatTimeZoneOptions = function formatTimeZoneOptions(timeZones) {\n return (timeZones === null || timeZones === void 0 ? void 0 : timeZones.map(formatTimeZoneOption)) || [];\n };\n var formatTimeZoneOption = function formatTimeZoneOption(timeZone) {\n var currentTimeInUTC = new Date();\n var options = {\n timeZone: timeZone === null || timeZone === void 0 ? void 0 : timeZone.name,\n hour12: true,\n hour: \"numeric\",\n minute: \"numeric\"\n };\n var currentTime = currentTimeInUTC.toLocaleString(\"en-US\", options);\n return {\n label: t$1(\"neetoTeamMembers.profile.common.timeZoneOption\", {\n timeZone: replace$1(\"_\", \" \", timeZone === null || timeZone === void 0 ? void 0 : timeZone.name),\n currentTime: currentTime\n }),\n value: timeZone === null || timeZone === void 0 ? void 0 : timeZone.id,\n name: timeZone === null || timeZone === void 0 ? void 0 : timeZone.name\n };\n };\n var formatCountryOption = function formatCountryOption(country) {\n return {\n label: country === null || country === void 0 ? void 0 : country.name,\n value: country === null || country === void 0 ? void 0 : country.id\n };\n };\n var countryDropdownOptions = useMemo(function () {\n return countries.map(formatCountryOption);\n }, [countries]);\n var handleCountryChange = function handleCountryChange(countryOption) {\n setSelectedCountryOption(countryOption);\n var dependentFields = {};\n var selectedCountry = findById(countryOption.value, countries);\n var timeZoneOptions = formatTimeZoneOptions(selectedCountry.timeZones);\n setTimeZoneDropdownOptions(timeZoneOptions);\n if (isNotEmpty(timeZoneOptions)) {\n setSelectedTimeZoneOption(timeZoneOptions[0]);\n dependentFields.timeZone = timeZoneOptions[0].name;\n }\n dependentFields.dateFormat = selectedCountry.dateFormat;\n return dependentFields;\n };\n useEffect(function () {\n if (!isPresent(countries)) return;\n if (user !== null && user !== void 0 && user.timeZone) {\n var _findTimeZoneAndCount = findTimeZoneAndCountry(user.timeZone, countries),\n country = _findTimeZoneAndCount.country,\n timeZone = _findTimeZoneAndCount.timeZone;\n setSelectedCountryOption(formatCountryOption(country));\n setTimeZoneDropdownOptions(formatTimeZoneOptions(country === null || country === void 0 ? void 0 : country.timeZones));\n setSelectedTimeZoneOption(formatTimeZoneOption(timeZone));\n }\n }, [user, countries]);\n return {\n countryDropdownOptions: countryDropdownOptions,\n timeZoneDropdownOptions: timeZoneDropdownOptions,\n selectedCountryOption: selectedCountryOption,\n selectedTimeZoneOption: selectedTimeZoneOption,\n isFetchingCountriesList: isLoading,\n handleCountryChange: handleCountryChange,\n handleTimeZoneChange: setSelectedTimeZoneOption\n };\n};\n\nvar ProfileImage = function ProfileImage() {\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useField = useField(\"avatar\"),\n _useField2 = _slicedToArray(_useField, 3),\n field = _useField2[0];\n _useField2[1];\n var helpers = _useField2[2];\n var setValue = helpers.setValue;\n var avatarDetails = {\n imageUrl: field.value.imageUrl\n };\n var onProfileImageChange = function onProfileImageChange(event) {\n var imageFile = event.target.files[0];\n var validationError = validateProfileImage(imageFile);\n if (validationError) {\n Toastr.error(validationError);\n return validationError;\n }\n return setValue({\n imageUrl: URL.createObjectURL(imageFile),\n file: imageFile\n });\n };\n var handleRemoveImage = function handleRemoveImage() {\n return setValue({\n imageUrl: \"\",\n file: \"_destroy\"\n });\n };\n var validateProfileImage = function validateProfileImage(imageFile) {\n var type = imageFile.type,\n size = imageFile.size;\n if (!ALLOWED_PROFILE_IMAGE_MIME_TYPES.includes(type)) {\n return VALIDATION_ERRORS.invalid_type;\n }\n if (size === 0) return VALIDATION_ERRORS.corrupted_file;\n if (size > STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES) {\n return VALIDATION_ERRORS.file_limit_exceeded;\n }\n return null;\n };\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"mb-8 flex flex-row justify-start\",\n children: [/*#__PURE__*/jsxs(\"div\", {\n className: \"flex-shrink-0\",\n children: [isPresent(avatarDetails === null || avatarDetails === void 0 ? void 0 : avatarDetails.imageUrl) && /*#__PURE__*/jsx(\"div\", {\n className: \"relative z-10\",\n children: /*#__PURE__*/jsx(\"div\", {\n className: \"neeto-ui-bg-gray-300 neeto-ui-rounded-full absolute right-0 top-0 cursor-pointer p-0.5\",\n \"data-cy\": \"profile-image-remove-button\",\n onClick: handleRemoveImage,\n children: /*#__PURE__*/jsx(Delete$1, {\n size: IMAGE_DELETE_BUTTON_SIZE\n })\n })\n }), /*#__PURE__*/jsx(Avatar, {\n size: \"extraLarge\",\n user: avatarDetails\n })]\n }), /*#__PURE__*/jsxs(\"div\", {\n className: \"ml-4 flex flex-col\",\n children: [/*#__PURE__*/jsx(Label, {\n className: \"neeto-ui-text-black mb-1 font-medium\",\n children: t(\"neetoTeamMembers.profile.avatar.profilePicture\")\n }), /*#__PURE__*/jsx(Typography, {\n className: \"neeto-ui-text-gray-700 mb-2\",\n style: \"body3\",\n children: /*#__PURE__*/jsx(Trans, {\n components: {\n code: /*#__PURE__*/jsx(\"code\", {})\n },\n i18nKey: \"neetoTeamMembers.profile.avatar.profilePictureUploadMessage\",\n values: {\n limit: globalProps.endUserUploadedFileSizeLimitInMb\n }\n })\n }), /*#__PURE__*/jsxs(\"div\", {\n className: \"neeto-ui-file-upload flex flex-row \",\n \"data-cy\": \"profile-image-upload-container\",\n children: [/*#__PURE__*/jsx(\"label\", {\n className: \"neeto-ui-btn--style-secondary neeto-ui-btn m-0 mr-3 \",\n \"data-cy\": \"profile-image-upload-label\",\n htmlFor: \"uploadProfileImage\",\n children: avatarDetails !== null && avatarDetails !== void 0 && avatarDetails.imageUrl ? t(\"neetoTeamMembers.profile.avatar.changeProfilePicture\") : t(\"neetoTeamMembers.profile.avatar.uploadProfilePicture\")\n }), /*#__PURE__*/jsx(\"input\", {\n hidden: true,\n accept: \"image/*\",\n \"data-cy\": \"profile-image-upload-file-field\",\n id: \"uploadProfileImage\",\n name: \"profile_image_path\",\n type: \"file\",\n onChange: onProfileImageChange\n }, avatarDetails === null || avatarDetails === void 0 ? void 0 : avatarDetails.imageUrl)]\n })]\n })]\n });\n};\n\nfunction ownKeys$h(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$h(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$h(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$h(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar ChangeProfile = function ChangeProfile(_ref) {\n var onClose = _ref.onClose;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useProfileImageUploa = useProfileImageUpload({\n uploadConfig: {\n folder: \"Auth\",\n customMetadata: {\n appName: \"neetoAuth\"\n }\n }\n }),\n uploadImage = _useProfileImageUploa.uploadImage,\n isUploading = _useProfileImageUploa.isUploading;\n var handleUploadImage = function handleUploadImage(image) {\n return new Promise(function (resolve) {\n uploadImage(image, function (uploadedImageData) {\n resolve(uploadedImageData);\n });\n });\n };\n var _useFetchProfile = useFetchProfile(),\n _useFetchProfile$data = _useFetchProfile.data,\n _useFetchProfile$data2 = _useFetchProfile$data === void 0 ? {} : _useFetchProfile$data,\n _useFetchProfile$data3 = _useFetchProfile$data2.user,\n user = _useFetchProfile$data3 === void 0 ? {} : _useFetchProfile$data3,\n isFetchingUserDetails = _useFetchProfile.isFetching;\n var _user$firstName = user.firstName,\n firstName = _user$firstName === void 0 ? \"\" : _user$firstName,\n _user$lastName = user.lastName,\n lastName = _user$lastName === void 0 ? \"\" : _user$lastName,\n _user$dateFormat = user.dateFormat,\n dateFormat = _user$dateFormat === void 0 ? DATE_FORMAT_OPTIONS[0].value : _user$dateFormat,\n _user$timeZone = user.timeZone,\n timeZone = _user$timeZone === void 0 ? \"\" : _user$timeZone,\n _user$profileImageUrl = user.profileImageUrl,\n profileImageUrl = _user$profileImageUrl === void 0 ? \"\" : _user$profileImageUrl;\n var _useCountries = useCountries(user),\n countryDropdownOptions = _useCountries.countryDropdownOptions,\n timeZoneDropdownOptions = _useCountries.timeZoneDropdownOptions,\n selectedCountryOption = _useCountries.selectedCountryOption,\n selectedTimeZoneOption = _useCountries.selectedTimeZoneOption,\n isFetchingCountriesList = _useCountries.isFetchingCountriesList,\n _useCountries$handleC = _useCountries.handleCountryChange,\n handleCountryChange = _useCountries$handleC === void 0 ? noop : _useCountries$handleC,\n _useCountries$handleT = _useCountries.handleTimeZoneChange,\n handleTimeZoneChange = _useCountries$handleT === void 0 ? noop : _useCountries$handleT;\n var _useUpdateProfileMuta = useUpdateProfileMutation(),\n updateProfile = _useUpdateProfileMuta.mutate,\n isUpdatingProfile = _useUpdateProfileMuta.isPending;\n var initialFormValues = {\n firstName: firstName,\n lastName: lastName,\n timeZone: timeZone,\n dateFormat: dateFormat,\n avatar: {\n imageUrl: profileImageUrl,\n file: null\n }\n };\n var handleSubmit = /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(values) {\n var avatar, _yield$handleUploadIm, fileId, filePath, url, payload;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n _context.prev = 0;\n avatar = {};\n if (!(values.avatar.file === \"_destroy\")) {\n _context.next = 6;\n break;\n }\n avatar = {\n fileId: \"_destroy\",\n filePath: \"\",\n url: \"\"\n };\n _context.next = 14;\n break;\n case 6:\n if (!values.avatar.file) {\n _context.next = 14;\n break;\n }\n _context.next = 9;\n return handleUploadImage(values.avatar.file);\n case 9:\n _yield$handleUploadIm = _context.sent;\n fileId = _yield$handleUploadIm.fileId;\n filePath = _yield$handleUploadIm.filePath;\n url = _yield$handleUploadIm.url;\n avatar = {\n fileId: fileId,\n filePath: filePath,\n url: url\n };\n case 14:\n payload = _objectSpread$h(_objectSpread$h({}, values), {}, {\n timeZone: selectedTimeZoneOption === null || selectedTimeZoneOption === void 0 ? void 0 : selectedTimeZoneOption.name,\n avatar: avatar\n });\n updateProfile({\n id: user.id,\n payload: payload\n });\n _context.next = 21;\n break;\n case 18:\n _context.prev = 18;\n _context.t0 = _context[\"catch\"](0);\n Toastr.error(_context.t0);\n case 21:\n case \"end\":\n return _context.stop();\n }\n }, _callee, null, [[0, 18]]);\n }));\n return function handleSubmit(_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n if (isUpdatingProfile || isFetchingCountriesList || isFetchingUserDetails) {\n return /*#__PURE__*/jsx(Container, {\n children: /*#__PURE__*/jsx(PageLoader, {})\n });\n }\n return /*#__PURE__*/jsx(Form$1, {\n formProps: {\n \"data-cy\": \"ntm-profile-form\"\n },\n formikProps: {\n initialValues: initialFormValues,\n validationSchema: PROFILE_VALIDATION_SCHEMA,\n onSubmit: handleSubmit\n },\n children: function children(_ref3) {\n var setFieldValue = _ref3.setFieldValue,\n values = _ref3.values;\n return /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsxs(Pane.Body, {\n className: \"w-full\",\n children: [/*#__PURE__*/jsxs(\"div\", {\n className: \"w-full space-y-6 pb-6\",\n children: [/*#__PURE__*/jsx(ProfileImage, {}), /*#__PURE__*/jsxs(\"div\", {\n className: \"grid grid-cols-2 gap-4\",\n children: [/*#__PURE__*/jsx(Input, {\n autoFocus: true,\n required: true,\n \"data-cy\": \"profile-first-name-text-field\",\n \"data-test-id\": \"ntm-profile-first-name\",\n label: t(\"neetoTeamMembers.profile.inputs.label.firstName\"),\n name: \"firstName\",\n type: \"text\",\n placeholder: t(\"neetoTeamMembers.profile.inputs.placeholder.firstName\")\n }), /*#__PURE__*/jsx(Input, {\n required: true,\n \"data-cy\": \"profile-last-name-text-field\",\n \"data-test-id\": \"ntm-profile-last-name\",\n label: t(\"neetoTeamMembers.profile.inputs.label.lastName\"),\n name: \"lastName\",\n type: \"text\",\n placeholder: t(\"neetoTeamMembers.profile.inputs.placeholder.lastName\")\n })]\n }), /*#__PURE__*/jsx(Select, {\n required: true,\n \"data-cy\": \"ntm-profile-country-select\",\n label: t(\"neetoTeamMembers.profile.inputs.label.selectCountry\"),\n name: \"countryId\",\n options: countryDropdownOptions,\n value: selectedCountryOption,\n onChange: function onChange(option) {\n var dependentFields = handleCountryChange(option);\n setFieldValue(\"dateFormat\", dependentFields === null || dependentFields === void 0 ? void 0 : dependentFields.dateFormat);\n setFieldValue(\"timeZone\", dependentFields === null || dependentFields === void 0 ? void 0 : dependentFields.timeZone);\n }\n }), /*#__PURE__*/jsx(\"div\", {\n className: \"space-y-2\",\n children: /*#__PURE__*/jsx(Select, {\n required: true,\n \"data-cy\": \"ntm-profile-time-zone-select\",\n name: \"timeZoneId\",\n options: timeZoneDropdownOptions,\n value: selectedTimeZoneOption,\n label: t(\"neetoTeamMembers.profile.inputs.label.selectTimeZone\"),\n onChange: function onChange(option) {\n setFieldValue(\"timeZone\", option === null || option === void 0 ? void 0 : option.name);\n handleTimeZoneChange(option);\n }\n })\n }), /*#__PURE__*/jsxs(\"div\", {\n children: [/*#__PURE__*/jsx(Label, {\n required: true,\n children: t(\"neetoTeamMembers.profile.inputs.label.dateFormat\")\n }), /*#__PURE__*/jsx(Radio, {\n className: \"mt-2 space-x-4\",\n children: DATE_FORMAT_OPTIONS.map(function (_ref4) {\n var label = _ref4.label,\n value = _ref4.value;\n return /*#__PURE__*/createElement(Radio.Item, {\n label: label,\n value: value,\n checked: values.dateFormat === value,\n \"data-cy\": \"ntm-profile-date-format-radio\",\n key: value,\n name: \"dateFormat\",\n onChange: function onChange(event) {\n return setFieldValue(\"dateFormat\", event.target.value);\n }\n });\n })\n })]\n })]\n }), /*#__PURE__*/jsxs(Callout, {\n className: \"neeto-ui-bg-gray-100 neeto-ui-border-gray-300 mt-8 flex w-full items-center\",\n children: [/*#__PURE__*/jsx(Typography, {\n style: \"body2\",\n children: t(\"neetoTeamMembers.profile.common.toUpdateProfile\")\n }), /*#__PURE__*/jsx(Button, {\n \"data-cy\": \"ntm-visit-auth-button\",\n \"data-test-id\": \"ntm-visit-auth-button\",\n href: MY_PROFILE_PATH,\n icon: ExternalLink,\n label: t(\"neetoTeamMembers.profile.common.neetoAuth\"),\n style: \"link\",\n target: \"_blank\"\n })]\n })]\n }), /*#__PURE__*/jsx(Pane.Footer, {\n children: /*#__PURE__*/jsx(ActionBlock, {\n isSubmitting: isUpdatingProfile || isUploading,\n cancelButtonProps: {\n \"data-test-id\": \"ntm-profile-cancel-button\",\n \"data-cy\": \"ntm-profile-cancel-button\",\n onClick: onClose\n },\n submitButtonProps: {\n \"data-cy\": \"ntm-profile-submit-button\",\n \"data-test-id\": \"ntm-profile-save-changes-button\"\n }\n })\n })]\n });\n }\n });\n};\n\n/* eslint-disable @bigbinary/neeto/ensure-zustand-stores-are-type-annotated */\nvar useProfileUpdateStore = create$3(withImmutableActions(function (set) {\n return {\n isOpen: false,\n setIsOpen: function setIsOpen(arg) {\n if (typeof arg === \"function\") {\n set(function (state) {\n return {\n isOpen: arg(state.isOpen)\n };\n });\n } else {\n set({\n isOpen: arg\n });\n }\n }\n };\n}));\nvar useProfileUpdatePaneState = function useProfileUpdatePaneState() {\n return useProfileUpdateStore(function (_ref) {\n var isOpen = _ref.isOpen,\n setIsOpen = _ref.setIsOpen;\n return [isOpen, setIsOpen];\n }, shallow);\n};\n\nvar Profile$1 = function Profile() {\n var _useProfileUpdatePane = useProfileUpdatePaneState(),\n _useProfileUpdatePane2 = _slicedToArray(_useProfileUpdatePane, 2),\n isOpen = _useProfileUpdatePane2[0],\n setIsOpen = _useProfileUpdatePane2[1];\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var onClose = function onClose() {\n return setIsOpen(false);\n };\n return /*#__PURE__*/jsx(\"div\", {\n className: \"w-full\",\n children: /*#__PURE__*/jsxs(Pane, {\n isOpen: isOpen,\n onClose: onClose,\n children: [/*#__PURE__*/jsx(Pane.Header, {\n children: /*#__PURE__*/jsx(Typography, {\n style: \"h2\",\n weight: \"semibold\",\n children: t(\"neetoTeamMembers.profile.common.myProfile\")\n })\n }), /*#__PURE__*/jsx(ChangeProfile, {\n onClose: onClose\n })]\n })\n });\n};\n\nvar dist = {exports: {}};\n\ndist.exports;\n\n(function (module, exports) {\n\t(function webpackUniversalModuleDefinition(root, factory) {\n\t\tmodule.exports = factory(require$$0);\n\t})(commonjsGlobal, function(__WEBPACK_EXTERNAL_MODULE_4__) {\n\treturn /******/ (function(modules) { // webpackBootstrap\n\t/******/ \t// The module cache\n\t/******/ \tvar installedModules = {};\n\t/******/\n\t/******/ \t// The require function\n\t/******/ \tfunction __webpack_require__(moduleId) {\n\t/******/\n\t/******/ \t\t// Check if module is in cache\n\t/******/ \t\tif(installedModules[moduleId]) {\n\t/******/ \t\t\treturn installedModules[moduleId].exports;\n\t/******/ \t\t}\n\t/******/ \t\t// Create a new module (and put it into the cache)\n\t/******/ \t\tvar module = installedModules[moduleId] = {\n\t/******/ \t\t\ti: moduleId,\n\t/******/ \t\t\tl: false,\n\t/******/ \t\t\texports: {}\n\t/******/ \t\t};\n\t/******/\n\t/******/ \t\t// Execute the module function\n\t/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\t/******/\n\t/******/ \t\t// Flag the module as loaded\n\t/******/ \t\tmodule.l = true;\n\t/******/\n\t/******/ \t\t// Return the exports of the module\n\t/******/ \t\treturn module.exports;\n\t/******/ \t}\n\t/******/\n\t/******/\n\t/******/ \t// expose the modules object (__webpack_modules__)\n\t/******/ \t__webpack_require__.m = modules;\n\t/******/\n\t/******/ \t// expose the module cache\n\t/******/ \t__webpack_require__.c = installedModules;\n\t/******/\n\t/******/ \t// identity function for calling harmony imports with the correct context\n\t/******/ \t__webpack_require__.i = function(value) { return value; };\n\t/******/\n\t/******/ \t// define getter function for harmony exports\n\t/******/ \t__webpack_require__.d = function(exports, name, getter) {\n\t/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n\t/******/ \t\t\tObject.defineProperty(exports, name, {\n\t/******/ \t\t\t\tconfigurable: false,\n\t/******/ \t\t\t\tenumerable: true,\n\t/******/ \t\t\t\tget: getter\n\t/******/ \t\t\t});\n\t/******/ \t\t}\n\t/******/ \t};\n\t/******/\n\t/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n\t/******/ \t__webpack_require__.n = function(module) {\n\t/******/ \t\tvar getter = module && module.__esModule ?\n\t/******/ \t\t\tfunction getDefault() { return module['default']; } :\n\t/******/ \t\t\tfunction getModuleExports() { return module; };\n\t/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n\t/******/ \t\treturn getter;\n\t/******/ \t};\n\t/******/\n\t/******/ \t// Object.prototype.hasOwnProperty.call\n\t/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\t/******/\n\t/******/ \t// __webpack_public_path__\n\t/******/ \t__webpack_require__.p = \"\";\n\t/******/\n\t/******/ \t// Load entry module and return exports\n\t/******/ \treturn __webpack_require__(__webpack_require__.s = 10);\n\t/******/ })\n\t/************************************************************************/\n\t/******/ ([\n\t/* 0 */\n\t/***/ (function(module, exports) {\n\n\t// shim for using process in browser\n\tvar process = module.exports = {};\n\n\t// cached from whatever global is present so that test runners that stub it\n\t// don't break things. But we need to wrap it in a try catch in case it is\n\t// wrapped in strict mode code which doesn't define any globals. It's inside a\n\t// function because try/catches deoptimize in certain engines.\n\n\tvar cachedSetTimeout;\n\tvar cachedClearTimeout;\n\n\tfunction defaultSetTimout() {\n\t throw new Error('setTimeout has not been defined');\n\t}\n\tfunction defaultClearTimeout () {\n\t throw new Error('clearTimeout has not been defined');\n\t}\n\t(function () {\n\t try {\n\t if (typeof setTimeout === 'function') {\n\t cachedSetTimeout = setTimeout;\n\t } else {\n\t cachedSetTimeout = defaultSetTimout;\n\t }\n\t } catch (e) {\n\t cachedSetTimeout = defaultSetTimout;\n\t }\n\t try {\n\t if (typeof clearTimeout === 'function') {\n\t cachedClearTimeout = clearTimeout;\n\t } else {\n\t cachedClearTimeout = defaultClearTimeout;\n\t }\n\t } catch (e) {\n\t cachedClearTimeout = defaultClearTimeout;\n\t }\n\t} ());\n\tfunction runTimeout(fun) {\n\t if (cachedSetTimeout === setTimeout) {\n\t //normal enviroments in sane situations\n\t return setTimeout(fun, 0);\n\t }\n\t // if setTimeout wasn't available but was latter defined\n\t if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n\t cachedSetTimeout = setTimeout;\n\t return setTimeout(fun, 0);\n\t }\n\t try {\n\t // when when somebody has screwed with setTimeout but no I.E. maddness\n\t return cachedSetTimeout(fun, 0);\n\t } catch(e){\n\t try {\n\t // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n\t return cachedSetTimeout.call(null, fun, 0);\n\t } catch(e){\n\t // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n\t return cachedSetTimeout.call(this, fun, 0);\n\t }\n\t }\n\n\n\t}\n\tfunction runClearTimeout(marker) {\n\t if (cachedClearTimeout === clearTimeout) {\n\t //normal enviroments in sane situations\n\t return clearTimeout(marker);\n\t }\n\t // if clearTimeout wasn't available but was latter defined\n\t if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n\t cachedClearTimeout = clearTimeout;\n\t return clearTimeout(marker);\n\t }\n\t try {\n\t // when when somebody has screwed with setTimeout but no I.E. maddness\n\t return cachedClearTimeout(marker);\n\t } catch (e){\n\t try {\n\t // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n\t return cachedClearTimeout.call(null, marker);\n\t } catch (e){\n\t // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n\t // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n\t return cachedClearTimeout.call(this, marker);\n\t }\n\t }\n\n\n\n\t}\n\tvar queue = [];\n\tvar draining = false;\n\tvar currentQueue;\n\tvar queueIndex = -1;\n\n\tfunction cleanUpNextTick() {\n\t if (!draining || !currentQueue) {\n\t return;\n\t }\n\t draining = false;\n\t if (currentQueue.length) {\n\t queue = currentQueue.concat(queue);\n\t } else {\n\t queueIndex = -1;\n\t }\n\t if (queue.length) {\n\t drainQueue();\n\t }\n\t}\n\n\tfunction drainQueue() {\n\t if (draining) {\n\t return;\n\t }\n\t var timeout = runTimeout(cleanUpNextTick);\n\t draining = true;\n\n\t var len = queue.length;\n\t while(len) {\n\t currentQueue = queue;\n\t queue = [];\n\t while (++queueIndex < len) {\n\t if (currentQueue) {\n\t currentQueue[queueIndex].run();\n\t }\n\t }\n\t queueIndex = -1;\n\t len = queue.length;\n\t }\n\t currentQueue = null;\n\t draining = false;\n\t runClearTimeout(timeout);\n\t}\n\n\tprocess.nextTick = function (fun) {\n\t var args = new Array(arguments.length - 1);\n\t if (arguments.length > 1) {\n\t for (var i = 1; i < arguments.length; i++) {\n\t args[i - 1] = arguments[i];\n\t }\n\t }\n\t queue.push(new Item(fun, args));\n\t if (queue.length === 1 && !draining) {\n\t runTimeout(drainQueue);\n\t }\n\t};\n\n\t// v8 likes predictible objects\n\tfunction Item(fun, array) {\n\t this.fun = fun;\n\t this.array = array;\n\t}\n\tItem.prototype.run = function () {\n\t this.fun.apply(null, this.array);\n\t};\n\tprocess.title = 'browser';\n\tprocess.browser = true;\n\tprocess.env = {};\n\tprocess.argv = [];\n\tprocess.version = ''; // empty string to avoid regexp issues\n\tprocess.versions = {};\n\n\tfunction noop() {}\n\n\tprocess.on = noop;\n\tprocess.addListener = noop;\n\tprocess.once = noop;\n\tprocess.off = noop;\n\tprocess.removeListener = noop;\n\tprocess.removeAllListeners = noop;\n\tprocess.emit = noop;\n\tprocess.prependListener = noop;\n\tprocess.prependOnceListener = noop;\n\n\tprocess.listeners = function (name) { return [] };\n\n\tprocess.binding = function (name) {\n\t throw new Error('process.binding is not supported');\n\t};\n\n\tprocess.cwd = function () { return '/' };\n\tprocess.chdir = function (dir) {\n\t throw new Error('process.chdir is not supported');\n\t};\n\tprocess.umask = function() { return 0; };\n\n\n\t/***/ }),\n\t/* 1 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\n\n\t/**\n\t * Copyright (c) 2013-present, Facebook, Inc.\n\t * All rights reserved.\n\t *\n\t * This source code is licensed under the BSD-style license found in the\n\t * LICENSE file in the root directory of this source tree. An additional grant\n\t * of patent rights can be found in the PATENTS file in the same directory.\n\t *\n\t * \n\t */\n\n\tfunction makeEmptyFunction(arg) {\n\t return function () {\n\t return arg;\n\t };\n\t}\n\n\t/**\n\t * This function accepts and discards inputs; it has no side effects. This is\n\t * primarily useful idiomatically for overridable function endpoints which\n\t * always need to be callable, since JS lacks a null-call idiom ala Cocoa.\n\t */\n\tvar emptyFunction = function emptyFunction() {};\n\n\temptyFunction.thatReturns = makeEmptyFunction;\n\temptyFunction.thatReturnsFalse = makeEmptyFunction(false);\n\temptyFunction.thatReturnsTrue = makeEmptyFunction(true);\n\temptyFunction.thatReturnsNull = makeEmptyFunction(null);\n\temptyFunction.thatReturnsThis = function () {\n\t return this;\n\t};\n\temptyFunction.thatReturnsArgument = function (arg) {\n\t return arg;\n\t};\n\n\tmodule.exports = emptyFunction;\n\n\t/***/ }),\n\t/* 2 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\t/* WEBPACK VAR INJECTION */(function(process) {/**\n\t * Copyright (c) 2013-present, Facebook, Inc.\n\t * All rights reserved.\n\t *\n\t * This source code is licensed under the BSD-style license found in the\n\t * LICENSE file in the root directory of this source tree. An additional grant\n\t * of patent rights can be found in the PATENTS file in the same directory.\n\t *\n\t */\n\n\tfunction invariant(condition, format, a, b, c, d, e, f) {\n\n\t if (!condition) {\n\t var error;\n\t if (format === undefined) {\n\t error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');\n\t } else {\n\t var args = [a, b, c, d, e, f];\n\t var argIndex = 0;\n\t error = new Error(format.replace(/%s/g, function () {\n\t return args[argIndex++];\n\t }));\n\t error.name = 'Invariant Violation';\n\t }\n\n\t error.framesToPop = 1; // we don't care about invariant's own frame\n\t throw error;\n\t }\n\t}\n\n\tmodule.exports = invariant;\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)));\n\n\t/***/ }),\n\t/* 3 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\t/**\n\t * Copyright 2013-present, Facebook, Inc.\n\t * All rights reserved.\n\t *\n\t * This source code is licensed under the BSD-style license found in the\n\t * LICENSE file in the root directory of this source tree. An additional grant\n\t * of patent rights can be found in the PATENTS file in the same directory.\n\t */\n\n\n\n\tvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\n\tmodule.exports = ReactPropTypesSecret;\n\n\n\t/***/ }),\n\t/* 4 */\n\t/***/ (function(module, exports) {\n\n\tmodule.exports = __WEBPACK_EXTERNAL_MODULE_4__;\n\n\t/***/ }),\n\t/* 5 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\n\n\tObject.defineProperty(exports, \"__esModule\", {\n\t value: true\n\t});\n\n\tvar _react = __webpack_require__(4);\n\n\tvar _react2 = _interopRequireDefault(_react);\n\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n\tvar ScrollSyncContext = _react2.default.createContext({\n\t registerPane: function registerPane() {},\n\t unregisterPane: function unregisterPane() {}\n\t});\n\n\texports.default = ScrollSyncContext;\n\tmodule.exports = exports['default'];\n\n\t/***/ }),\n\t/* 6 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\t/* WEBPACK VAR INJECTION */(function(process) {/**\n\t * Copyright 2014-2015, Facebook, Inc.\n\t * All rights reserved.\n\t *\n\t * This source code is licensed under the BSD-style license found in the\n\t * LICENSE file in the root directory of this source tree. An additional grant\n\t * of patent rights can be found in the PATENTS file in the same directory.\n\t *\n\t */\n\n\n\n\tvar emptyFunction = __webpack_require__(1);\n\n\t/**\n\t * Similar to invariant but only logs a warning if the condition is not met.\n\t * This can be used to log issues in development environments in critical\n\t * paths. Removing the logging code for production environments will keep the\n\t * same logic and follow the same code paths.\n\t */\n\n\tvar warning = emptyFunction;\n\n\tmodule.exports = warning;\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)));\n\n\t/***/ }),\n\t/* 7 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(process) {/**\n\t * Copyright 2013-present, Facebook, Inc.\n\t * All rights reserved.\n\t *\n\t * This source code is licensed under the BSD-style license found in the\n\t * LICENSE file in the root directory of this source tree. An additional grant\n\t * of patent rights can be found in the PATENTS file in the same directory.\n\t */\n\n\t{\n\t // By explicitly using `prop-types` you are opting into new production behavior.\n\t // http://fb.me/prop-types-in-prod\n\t module.exports = __webpack_require__(12)();\n\t}\n\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)));\n\n\t/***/ }),\n\t/* 8 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\n\n\tObject.defineProperty(exports, \"__esModule\", {\n\t value: true\n\t});\n\n\tvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\n\tvar _react = __webpack_require__(4);\n\n\tvar _react2 = _interopRequireDefault(_react);\n\n\tvar _propTypes = __webpack_require__(7);\n\n\tvar _propTypes2 = _interopRequireDefault(_propTypes);\n\n\tvar _ScrollSyncContext = __webpack_require__(5);\n\n\tvar _ScrollSyncContext2 = _interopRequireDefault(_ScrollSyncContext);\n\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n\tfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n\t/**\n\t * ScrollSync provider component\n\t *\n\t */\n\n\tvar ScrollSync = function (_Component) {\n\t _inherits(ScrollSync, _Component);\n\n\t function ScrollSync() {\n\t var _ref;\n\n\t var _temp, _this, _ret;\n\n\t _classCallCheck(this, ScrollSync);\n\n\t for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n\t args[_key] = arguments[_key];\n\t }\n\n\t return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = ScrollSync.__proto__ || Object.getPrototypeOf(ScrollSync)).call.apply(_ref, [this].concat(args))), _this), _this.panes = {}, _this.registerPane = function (node, groups) {\n\t groups.forEach(function (group) {\n\t if (!_this.panes[group]) {\n\t _this.panes[group] = [];\n\t }\n\n\t if (!_this.findPane(node, group)) {\n\t if (_this.panes[group].length > 0) {\n\t _this.syncScrollPosition(_this.panes[group][0], node);\n\t }\n\t _this.panes[group].push(node);\n\t }\n\t });\n\t _this.addEvents(node, groups);\n\t }, _this.unregisterPane = function (node, groups) {\n\t groups.forEach(function (group) {\n\t if (_this.findPane(node, group)) {\n\t _this.removeEvents(node);\n\t _this.panes[group].splice(_this.panes[group].indexOf(node), 1);\n\t }\n\t });\n\t }, _this.addEvents = function (node, groups) {\n\t /* For some reason element.addEventListener doesnt work with document.body */\n\t node.onscroll = _this.handlePaneScroll.bind(_this, node, groups); // eslint-disable-line\n\t }, _this.removeEvents = function (node) {\n\t /* For some reason element.removeEventListener doesnt work with document.body */\n\t node.onscroll = null; // eslint-disable-line\n\t }, _this.findPane = function (node, group) {\n\t if (!_this.panes[group]) {\n\t return false;\n\t }\n\n\t return _this.panes[group].find(function (pane) {\n\t return pane === node;\n\t });\n\t }, _this.handlePaneScroll = function (node, groups) {\n\t if (!_this.props.enabled) {\n\t return;\n\t }\n\n\t window.requestAnimationFrame(function () {\n\t _this.syncScrollPositions(node, groups);\n\t });\n\t }, _this.syncScrollPositions = function (scrolledPane, groups) {\n\t groups.forEach(function (group) {\n\t _this.panes[group].forEach(function (pane) {\n\t /* For all panes beside the currently scrolling one */\n\t if (scrolledPane !== pane) {\n\t /* Remove event listeners from the node that we'll manipulate */\n\t _this.removeEvents(pane, group);\n\t _this.syncScrollPosition(scrolledPane, pane);\n\t /* Re-attach event listeners after we're done scrolling */\n\t window.requestAnimationFrame(function () {\n\t _this.addEvents(pane, groups);\n\t });\n\t }\n\t });\n\t });\n\t if (_this.props.onSync) _this.props.onSync(scrolledPane);\n\t }, _temp), _possibleConstructorReturn(_this, _ret);\n\t }\n\n\t _createClass(ScrollSync, [{\n\t key: 'getContextValue',\n\t value: function getContextValue() {\n\t return {\n\t registerPane: this.registerPane,\n\t unregisterPane: this.unregisterPane\n\t };\n\t }\n\t }, {\n\t key: 'syncScrollPosition',\n\t value: function syncScrollPosition(scrolledPane, pane) {\n\t var scrollTop = scrolledPane.scrollTop,\n\t scrollHeight = scrolledPane.scrollHeight,\n\t clientHeight = scrolledPane.clientHeight,\n\t scrollLeft = scrolledPane.scrollLeft,\n\t scrollWidth = scrolledPane.scrollWidth,\n\t clientWidth = scrolledPane.clientWidth;\n\n\n\t var scrollTopOffset = scrollHeight - clientHeight;\n\t var scrollLeftOffset = scrollWidth - clientWidth;\n\n\t var _props = this.props,\n\t proportional = _props.proportional,\n\t vertical = _props.vertical,\n\t horizontal = _props.horizontal;\n\n\t /* Calculate the actual pane height */\n\n\t var paneHeight = pane.scrollHeight - clientHeight;\n\t var paneWidth = pane.scrollWidth - clientWidth;\n\t /* Adjust the scrollTop position of it accordingly */\n\t if (vertical && scrollTopOffset > 0) {\n\t pane.scrollTop = proportional ? paneHeight * scrollTop / scrollTopOffset : scrollTop; // eslint-disable-line\n\t }\n\t if (horizontal && scrollLeftOffset > 0) {\n\t pane.scrollLeft = proportional ? paneWidth * scrollLeft / scrollLeftOffset : scrollLeft; // eslint-disable-line\n\t }\n\t }\n\t }, {\n\t key: 'render',\n\t value: function render() {\n\t return _react2.default.createElement(\n\t _ScrollSyncContext2.default.Provider,\n\t { value: this.getContextValue() },\n\t _react2.default.Children.only(this.props.children)\n\t );\n\t }\n\t }]);\n\n\t return ScrollSync;\n\t}(_react.Component);\n\n\tScrollSync.propTypes = {\n\t /**\n\t * Callback to be invoked any time synchronization happens\n\t *\n\t * @param {Element} el The element that has received the scroll event\n\t */\n\t onSync: _propTypes2.default.func,\n\t children: _propTypes2.default.element.isRequired,\n\t proportional: _propTypes2.default.bool,\n\t vertical: _propTypes2.default.bool,\n\t horizontal: _propTypes2.default.bool,\n\t enabled: _propTypes2.default.bool\n\t};\n\tScrollSync.defaultProps = {\n\t proportional: true,\n\t vertical: true,\n\t horizontal: true,\n\t enabled: true\n\t};\n\texports.default = ScrollSync;\n\tmodule.exports = exports['default'];\n\n\t/***/ }),\n\t/* 9 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\n\n\tObject.defineProperty(exports, \"__esModule\", {\n\t value: true\n\t});\n\n\tvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\n\tvar _react = __webpack_require__(4);\n\n\tvar _propTypes = __webpack_require__(7);\n\n\tvar _propTypes2 = _interopRequireDefault(_propTypes);\n\n\tvar _ScrollSyncContext = __webpack_require__(5);\n\n\tvar _ScrollSyncContext2 = _interopRequireDefault(_ScrollSyncContext);\n\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n\tfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /* eslint react/no-find-dom-node: 0 */\n\n\t/**\n\t * ScrollSyncPane Component\n\t *\n\t * Wrap your content in it to keep its scroll position in sync with other panes\n\t *\n\t * @example ./example.md\n\t */\n\n\tvar ScrollSyncPane = function (_Component) {\n\t _inherits(ScrollSyncPane, _Component);\n\n\t function ScrollSyncPane(props) {\n\t _classCallCheck(this, ScrollSyncPane);\n\n\t var _this = _possibleConstructorReturn(this, (ScrollSyncPane.__proto__ || Object.getPrototypeOf(ScrollSyncPane)).call(this, props));\n\n\t _this.toArray = function (groups) {\n\t return [].concat(groups);\n\t };\n\n\t _this.updateNode = function () {\n\t if (_this.props.attachTo) {\n\t _this.node = _this.props.attachTo.current;\n\t } else {\n\t _this.node = _this.childRef.current;\n\t }\n\t };\n\n\t _this.childRef = (0, _react.createRef)();\n\t return _this;\n\t }\n\n\t _createClass(ScrollSyncPane, [{\n\t key: 'componentDidMount',\n\t value: function componentDidMount() {\n\t if (this.props.enabled) {\n\t this.updateNode();\n\t if (this.node) {\n\t this.context.registerPane(this.node, this.toArray(this.props.group));\n\t }\n\t }\n\t }\n\t }, {\n\t key: 'componentDidUpdate',\n\t value: function componentDidUpdate(prevProps) {\n\t if (this.props.attachTo !== prevProps.attachTo) {\n\t if (this.node) {\n\t this.context.unregisterPane(this.node, this.toArray(prevProps.group));\n\t }\n\t this.updateNode();\n\t if (this.node) {\n\t this.context.registerPane(this.node, this.toArray(prevProps.group));\n\t }\n\t }\n\t if (this.node && this.props.enabled !== prevProps.enabled) {\n\t if (this.props.enabled) {\n\t this.context.registerPane(this.node, this.toArray(prevProps.group));\n\t } else {\n\t this.context.unregisterPane(this.node, this.toArray(prevProps.group));\n\t }\n\t }\n\t if (this.node && this.props.enabled && this.props.group !== prevProps.group) {\n\t this.context.unregisterPane(this.node, this.toArray(prevProps.group));\n\t this.context.registerPane(this.node, this.toArray(this.props.group));\n\t }\n\t }\n\t }, {\n\t key: 'componentWillUnmount',\n\t value: function componentWillUnmount() {\n\t if (this.node && this.props.enabled) {\n\t this.context.unregisterPane(this.node, this.toArray(this.props.group));\n\t }\n\t }\n\t }, {\n\t key: 'render',\n\t value: function render() {\n\t if (this.props.attachTo) {\n\t return this.props.children;\n\t }\n\t return (0, _react.cloneElement)(_react.Children.only(this.props.children), { ref: this.childRef });\n\t }\n\t }]);\n\n\t return ScrollSyncPane;\n\t}(_react.Component);\n\n\tScrollSyncPane.contextType = _ScrollSyncContext2.default;\n\tScrollSyncPane.propTypes = {\n\t children: _propTypes2.default.node.isRequired,\n\t attachTo: _propTypes2.default.oneOfType([_propTypes2.default.func, _propTypes2.default.shape({ current: _propTypes2.default.any })]),\n\t group: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.arrayOf(_propTypes2.default.string)]),\n\t enabled: _propTypes2.default.bool\n\t};\n\tScrollSyncPane.defaultProps = {\n\t group: 'default',\n\t enabled: true\n\t};\n\texports.default = ScrollSyncPane;\n\tmodule.exports = exports['default'];\n\n\t/***/ }),\n\t/* 10 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\n\n\tObject.defineProperty(exports, \"__esModule\", {\n\t value: true\n\t});\n\n\tvar _ScrollSync = __webpack_require__(8);\n\n\tObject.defineProperty(exports, 'ScrollSync', {\n\t enumerable: true,\n\t get: function get() {\n\t return _interopRequireDefault(_ScrollSync).default;\n\t }\n\t});\n\n\tvar _ScrollSyncPane = __webpack_require__(9);\n\n\tObject.defineProperty(exports, 'ScrollSyncPane', {\n\t enumerable: true,\n\t get: function get() {\n\t return _interopRequireDefault(_ScrollSyncPane).default;\n\t }\n\t});\n\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n\t/***/ }),\n\t/* 11 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\t/* WEBPACK VAR INJECTION */(function(process) {/**\n\t * Copyright 2013-present, Facebook, Inc.\n\t * All rights reserved.\n\t *\n\t * This source code is licensed under the BSD-style license found in the\n\t * LICENSE file in the root directory of this source tree. An additional grant\n\t * of patent rights can be found in the PATENTS file in the same directory.\n\t */\n\n\t/**\n\t * Assert that the values match with the type specs.\n\t * Error messages are memorized and will only be shown once.\n\t *\n\t * @param {object} typeSpecs Map of name to a ReactPropType\n\t * @param {object} values Runtime values that need to be type-checked\n\t * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n\t * @param {string} componentName Name of the component for error messages.\n\t * @param {?Function} getStack Returns the component stack.\n\t * @private\n\t */\n\tfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n\t}\n\n\tmodule.exports = checkPropTypes;\n\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)));\n\n\t/***/ }),\n\t/* 12 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\t/**\n\t * Copyright 2013-present, Facebook, Inc.\n\t * All rights reserved.\n\t *\n\t * This source code is licensed under the BSD-style license found in the\n\t * LICENSE file in the root directory of this source tree. An additional grant\n\t * of patent rights can be found in the PATENTS file in the same directory.\n\t */\n\n\n\n\tvar emptyFunction = __webpack_require__(1);\n\tvar invariant = __webpack_require__(2);\n\tvar ReactPropTypesSecret = __webpack_require__(3);\n\n\tmodule.exports = function() {\n\t function shim(props, propName, componentName, location, propFullName, secret) {\n\t if (secret === ReactPropTypesSecret) {\n\t // It is still safe when called from React.\n\t return;\n\t }\n\t invariant(\n\t false,\n\t 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n\t 'Use PropTypes.checkPropTypes() to call them. ' +\n\t 'Read more at http://fb.me/use-check-prop-types'\n\t );\n\t }\t shim.isRequired = shim;\n\t function getShim() {\n\t return shim;\n\t }\t // Important!\n\t // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n\t var ReactPropTypes = {\n\t array: shim,\n\t bool: shim,\n\t func: shim,\n\t number: shim,\n\t object: shim,\n\t string: shim,\n\t symbol: shim,\n\n\t any: shim,\n\t arrayOf: getShim,\n\t element: shim,\n\t instanceOf: getShim,\n\t node: shim,\n\t objectOf: getShim,\n\t oneOf: getShim,\n\t oneOfType: getShim,\n\t shape: getShim\n\t };\n\n\t ReactPropTypes.checkPropTypes = emptyFunction;\n\t ReactPropTypes.PropTypes = ReactPropTypes;\n\n\t return ReactPropTypes;\n\t};\n\n\n\t/***/ }),\n\t/* 13 */\n\t/***/ (function(module, exports, __webpack_require__) {\n\t/* WEBPACK VAR INJECTION */(function(process) {/**\n\t * Copyright 2013-present, Facebook, Inc.\n\t * All rights reserved.\n\t *\n\t * This source code is licensed under the BSD-style license found in the\n\t * LICENSE file in the root directory of this source tree. An additional grant\n\t * of patent rights can be found in the PATENTS file in the same directory.\n\t */\n\n\n\n\tvar emptyFunction = __webpack_require__(1);\n\tvar invariant = __webpack_require__(2);\n\tvar warning = __webpack_require__(6);\n\n\tvar ReactPropTypesSecret = __webpack_require__(3);\n\tvar checkPropTypes = __webpack_require__(11);\n\n\tmodule.exports = function(isValidElement, throwOnDirectAccess) {\n\t /* global Symbol */\n\t var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n\t var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n\t /**\n\t * Returns the iterator method function contained on the iterable object.\n\t *\n\t * Be sure to invoke the function with the iterable as context:\n\t *\n\t * var iteratorFn = getIteratorFn(myIterable);\n\t * if (iteratorFn) {\n\t * var iterator = iteratorFn.call(myIterable);\n\t * ...\n\t * }\n\t *\n\t * @param {?object} maybeIterable\n\t * @return {?function}\n\t */\n\t function getIteratorFn(maybeIterable) {\n\t var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n\t if (typeof iteratorFn === 'function') {\n\t return iteratorFn;\n\t }\n\t }\n\n\t /**\n\t * Collection of methods that allow declaration and validation of props that are\n\t * supplied to React components. Example usage:\n\t *\n\t * var Props = require('ReactPropTypes');\n\t * var MyArticle = React.createClass({\n\t * propTypes: {\n\t * // An optional string prop named \"description\".\n\t * description: Props.string,\n\t *\n\t * // A required enum prop named \"category\".\n\t * category: Props.oneOf(['News','Photos']).isRequired,\n\t *\n\t * // A prop named \"dialog\" that requires an instance of Dialog.\n\t * dialog: Props.instanceOf(Dialog).isRequired\n\t * },\n\t * render: function() { ... }\n\t * });\n\t *\n\t * A more formal specification of how these methods are used:\n\t *\n\t * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n\t * decl := ReactPropTypes.{type}(.isRequired)?\n\t *\n\t * Each and every declaration produces a function with the same signature. This\n\t * allows the creation of custom validation functions. For example:\n\t *\n\t * var MyLink = React.createClass({\n\t * propTypes: {\n\t * // An optional string or URI prop named \"href\".\n\t * href: function(props, propName, componentName) {\n\t * var propValue = props[propName];\n\t * if (propValue != null && typeof propValue !== 'string' &&\n\t * !(propValue instanceof URI)) {\n\t * return new Error(\n\t * 'Expected a string or an URI for ' + propName + ' in ' +\n\t * componentName\n\t * );\n\t * }\n\t * }\n\t * },\n\t * render: function() {...}\n\t * });\n\t *\n\t * @internal\n\t */\n\n\t var ANONYMOUS = '<<anonymous>>';\n\n\t // Important!\n\t // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n\t var ReactPropTypes = {\n\t array: createPrimitiveTypeChecker('array'),\n\t bool: createPrimitiveTypeChecker('boolean'),\n\t func: createPrimitiveTypeChecker('function'),\n\t number: createPrimitiveTypeChecker('number'),\n\t object: createPrimitiveTypeChecker('object'),\n\t string: createPrimitiveTypeChecker('string'),\n\t symbol: createPrimitiveTypeChecker('symbol'),\n\n\t any: createAnyTypeChecker(),\n\t arrayOf: createArrayOfTypeChecker,\n\t element: createElementTypeChecker(),\n\t instanceOf: createInstanceTypeChecker,\n\t node: createNodeChecker(),\n\t objectOf: createObjectOfTypeChecker,\n\t oneOf: createEnumTypeChecker,\n\t oneOfType: createUnionTypeChecker,\n\t shape: createShapeTypeChecker\n\t };\n\n\t /**\n\t * inlined Object.is polyfill to avoid requiring consumers ship their own\n\t * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n\t */\n\t /*eslint-disable no-self-compare*/\n\t function is(x, y) {\n\t // SameValue algorithm\n\t if (x === y) {\n\t // Steps 1-5, 7-10\n\t // Steps 6.b-6.e: +0 != -0\n\t return x !== 0 || 1 / x === 1 / y;\n\t } else {\n\t // Step 6.a: NaN == NaN\n\t return x !== x && y !== y;\n\t }\n\t }\n\t /*eslint-enable no-self-compare*/\n\n\t /**\n\t * We use an Error-like object for backward compatibility as people may call\n\t * PropTypes directly and inspect their output. However, we don't use real\n\t * Errors anymore. We don't inspect their stack anyway, and creating them\n\t * is prohibitively expensive if they are created too often, such as what\n\t * happens in oneOfType() for any type before the one that matched.\n\t */\n\t function PropTypeError(message) {\n\t this.message = message;\n\t this.stack = '';\n\t }\n\t // Make `instanceof Error` still work for returned errors.\n\t PropTypeError.prototype = Error.prototype;\n\n\t function createChainableTypeChecker(validate) {\n\t function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n\t componentName = componentName || ANONYMOUS;\n\t propFullName = propFullName || propName;\n\n\t if (secret !== ReactPropTypesSecret) {\n\t if (throwOnDirectAccess) {\n\t // New behavior only for users of `prop-types` package\n\t invariant(\n\t false,\n\t 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n\t 'Use `PropTypes.checkPropTypes()` to call them. ' +\n\t 'Read more at http://fb.me/use-check-prop-types'\n\t );\n\t }\n\t }\n\t if (props[propName] == null) {\n\t if (isRequired) {\n\t if (props[propName] === null) {\n\t return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n\t }\n\t return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n\t }\n\t return null;\n\t } else {\n\t return validate(props, propName, componentName, location, propFullName);\n\t }\n\t }\n\n\t var chainedCheckType = checkType.bind(null, false);\n\t chainedCheckType.isRequired = checkType.bind(null, true);\n\n\t return chainedCheckType;\n\t }\n\n\t function createPrimitiveTypeChecker(expectedType) {\n\t function validate(props, propName, componentName, location, propFullName, secret) {\n\t var propValue = props[propName];\n\t var propType = getPropType(propValue);\n\t if (propType !== expectedType) {\n\t // `propValue` being instance of, say, date/regexp, pass the 'object'\n\t // check, but we can offer a more precise error message here rather than\n\t // 'of type `object`'.\n\t var preciseType = getPreciseType(propValue);\n\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createAnyTypeChecker() {\n\t return createChainableTypeChecker(emptyFunction.thatReturnsNull);\n\t }\n\n\t function createArrayOfTypeChecker(typeChecker) {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t if (typeof typeChecker !== 'function') {\n\t return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n\t }\n\t var propValue = props[propName];\n\t if (!Array.isArray(propValue)) {\n\t var propType = getPropType(propValue);\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n\t }\n\t for (var i = 0; i < propValue.length; i++) {\n\t var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n\t if (error instanceof Error) {\n\t return error;\n\t }\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createElementTypeChecker() {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t var propValue = props[propName];\n\t if (!isValidElement(propValue)) {\n\t var propType = getPropType(propValue);\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createInstanceTypeChecker(expectedClass) {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t if (!(props[propName] instanceof expectedClass)) {\n\t var expectedClassName = expectedClass.name || ANONYMOUS;\n\t var actualClassName = getClassName(props[propName]);\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createEnumTypeChecker(expectedValues) {\n\t if (!Array.isArray(expectedValues)) {\n\t return emptyFunction.thatReturnsNull;\n\t }\n\n\t function validate(props, propName, componentName, location, propFullName) {\n\t var propValue = props[propName];\n\t for (var i = 0; i < expectedValues.length; i++) {\n\t if (is(propValue, expectedValues[i])) {\n\t return null;\n\t }\n\t }\n\n\t var valuesString = JSON.stringify(expectedValues);\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createObjectOfTypeChecker(typeChecker) {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t if (typeof typeChecker !== 'function') {\n\t return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n\t }\n\t var propValue = props[propName];\n\t var propType = getPropType(propValue);\n\t if (propType !== 'object') {\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n\t }\n\t for (var key in propValue) {\n\t if (propValue.hasOwnProperty(key)) {\n\t var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n\t if (error instanceof Error) {\n\t return error;\n\t }\n\t }\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createUnionTypeChecker(arrayOfTypeCheckers) {\n\t if (!Array.isArray(arrayOfTypeCheckers)) {\n\t return emptyFunction.thatReturnsNull;\n\t }\n\n\t for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n\t var checker = arrayOfTypeCheckers[i];\n\t if (typeof checker !== 'function') {\n\t warning(\n\t false,\n\t 'Invalid argument supplid to oneOfType. Expected an array of check functions, but ' +\n\t 'received %s at index %s.',\n\t getPostfixForTypeWarning(checker),\n\t i\n\t );\n\t return emptyFunction.thatReturnsNull;\n\t }\n\t }\n\n\t function validate(props, propName, componentName, location, propFullName) {\n\t for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n\t var checker = arrayOfTypeCheckers[i];\n\t if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {\n\t return null;\n\t }\n\t }\n\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createNodeChecker() {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t if (!isNode(props[propName])) {\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createShapeTypeChecker(shapeTypes) {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t var propValue = props[propName];\n\t var propType = getPropType(propValue);\n\t if (propType !== 'object') {\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n\t }\n\t for (var key in shapeTypes) {\n\t var checker = shapeTypes[key];\n\t if (!checker) {\n\t continue;\n\t }\n\t var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n\t if (error) {\n\t return error;\n\t }\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function isNode(propValue) {\n\t switch (typeof propValue) {\n\t case 'number':\n\t case 'string':\n\t case 'undefined':\n\t return true;\n\t case 'boolean':\n\t return !propValue;\n\t case 'object':\n\t if (Array.isArray(propValue)) {\n\t return propValue.every(isNode);\n\t }\n\t if (propValue === null || isValidElement(propValue)) {\n\t return true;\n\t }\n\n\t var iteratorFn = getIteratorFn(propValue);\n\t if (iteratorFn) {\n\t var iterator = iteratorFn.call(propValue);\n\t var step;\n\t if (iteratorFn !== propValue.entries) {\n\t while (!(step = iterator.next()).done) {\n\t if (!isNode(step.value)) {\n\t return false;\n\t }\n\t }\n\t } else {\n\t // Iterator will provide entry [k,v] tuples rather than values.\n\t while (!(step = iterator.next()).done) {\n\t var entry = step.value;\n\t if (entry) {\n\t if (!isNode(entry[1])) {\n\t return false;\n\t }\n\t }\n\t }\n\t }\n\t } else {\n\t return false;\n\t }\n\n\t return true;\n\t default:\n\t return false;\n\t }\n\t }\n\n\t function isSymbol(propType, propValue) {\n\t // Native Symbol.\n\t if (propType === 'symbol') {\n\t return true;\n\t }\n\n\t // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n\t if (propValue['@@toStringTag'] === 'Symbol') {\n\t return true;\n\t }\n\n\t // Fallback for non-spec compliant Symbols which are polyfilled.\n\t if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n\t return true;\n\t }\n\n\t return false;\n\t }\n\n\t // Equivalent of `typeof` but with special handling for array and regexp.\n\t function getPropType(propValue) {\n\t var propType = typeof propValue;\n\t if (Array.isArray(propValue)) {\n\t return 'array';\n\t }\n\t if (propValue instanceof RegExp) {\n\t // Old webkits (at least until Android 4.0) return 'function' rather than\n\t // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n\t // passes PropTypes.object.\n\t return 'object';\n\t }\n\t if (isSymbol(propType, propValue)) {\n\t return 'symbol';\n\t }\n\t return propType;\n\t }\n\n\t // This handles more types than `getPropType`. Only used for error messages.\n\t // See `createPrimitiveTypeChecker`.\n\t function getPreciseType(propValue) {\n\t if (typeof propValue === 'undefined' || propValue === null) {\n\t return '' + propValue;\n\t }\n\t var propType = getPropType(propValue);\n\t if (propType === 'object') {\n\t if (propValue instanceof Date) {\n\t return 'date';\n\t } else if (propValue instanceof RegExp) {\n\t return 'regexp';\n\t }\n\t }\n\t return propType;\n\t }\n\n\t // Returns a string that is postfixed to a warning about an invalid type.\n\t // For example, \"undefined\" or \"of type array\"\n\t function getPostfixForTypeWarning(value) {\n\t var type = getPreciseType(value);\n\t switch (type) {\n\t case 'array':\n\t case 'object':\n\t return 'an ' + type;\n\t case 'boolean':\n\t case 'date':\n\t case 'regexp':\n\t return 'a ' + type;\n\t default:\n\t return type;\n\t }\n\t }\n\n\t // Returns class name of the object, if any.\n\t function getClassName(propValue) {\n\t if (!propValue.constructor || !propValue.constructor.name) {\n\t return ANONYMOUS;\n\t }\n\t return propValue.constructor.name;\n\t }\n\n\t ReactPropTypes.checkPropTypes = checkPropTypes;\n\t ReactPropTypes.PropTypes = ReactPropTypes;\n\n\t return ReactPropTypes;\n\t};\n\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)));\n\n\t/***/ })\n\t/******/ ]);\n\t});\n\t\n} (dist, dist.exports));\n\nvar distExports = dist.exports;\n\nvar queryClient = new QueryClient({\n queryCache: new QueryCache(),\n defaultOptions: {\n queries: {\n staleTime: DEFAULT_STALE_TIME\n }\n }\n});\n\nfunction ownKeys$g(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$g(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$g(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$g(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar withReactQuery = function withReactQuery(Component) {\n var QueryWrapper = function QueryWrapper(props) {\n return /*#__PURE__*/jsx(QueryClientProvider, {\n client: queryClient,\n children: /*#__PURE__*/jsx(Component, _objectSpread$g({}, props))\n });\n };\n return QueryWrapper;\n};\n\nvar fetch$3 = function fetch() {\n return axios.get(\"\".concat(BASE_URL, \"/permissions\"));\n};\nvar permissionsApi = {\n fetch: fetch$3\n};\n\nfunction ownKeys$f(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$f(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$f(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$f(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar useFetchPermissions = function useFetchPermissions() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return useQuery(_objectSpread$f({\n queryKey: [QUERY_KEYS.PERMISSIONS],\n queryFn: permissionsApi.fetch,\n select: function select(response) {\n return response === null || response === void 0 ? void 0 : response.permissions;\n }\n }, options));\n};\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = _objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\n\nvar fetch$2 = function fetch() {\n return axios.get(\"\".concat(BASE_URL, \"/global_roles\"));\n};\nvar globalRolesApi = {\n fetch: fetch$2\n};\n\nvar fetch$1 = function fetch() {\n return axios.get(\"\".concat(BASE_URL, \"/organization_roles\"));\n};\nvar create$1 = function create(payload) {\n return axios.post(\"\".concat(BASE_URL, \"/organization_roles\"), payload);\n};\nvar update$1 = function update(id, payload) {\n return axios.patch(\"\".concat(BASE_URL, \"/organization_roles/\").concat(id), payload);\n};\nvar destroy = function destroy(id, payload) {\n return axios[\"delete\"](\"\".concat(BASE_URL, \"/organization_roles/\").concat(id), {\n data: payload\n });\n};\nvar bulkUpdate$1 = function bulkUpdate(payload) {\n return axios.patch(\"\".concat(BASE_URL, \"/organization_roles/bulk_update\"), payload);\n};\nvar organizationRolesApi = {\n bulkUpdate: bulkUpdate$1,\n create: create$1,\n destroy: destroy,\n fetch: fetch$1,\n update: update$1\n};\n\nvar _excluded$3 = [\"onSuccess\"],\n _excluded2$2 = [\"onSuccess\"],\n _excluded3 = [\"onSuccess\"],\n _excluded4 = [\"onSuccess\"];\nfunction ownKeys$e(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$e(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$e(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$e(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar useFetchRoles = function useFetchRoles() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return useQuery(_objectSpread$e({\n queryKey: [QUERY_KEYS.ROLES],\n queryFn: organizationRolesApi.fetch,\n select: function select(response) {\n return response === null || response === void 0 ? void 0 : response.organizationRoles;\n }\n }, options));\n};\nvar useFetchGlobalRoles = function useFetchGlobalRoles() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return useQuery(_objectSpread$e({\n queryKey: [QUERY_KEYS.GLOBAL_ROLES],\n queryFn: globalRolesApi.fetch\n }, options));\n};\nvar useCreateRole = function useCreateRole(_ref) {\n var _onSuccess = _ref.onSuccess,\n options = _objectWithoutProperties(_ref, _excluded$3);\n return useMutationWithInvalidation(organizationRolesApi.create, _objectSpread$e({\n keysToInvalidate: [[QUERY_KEYS.TEAMS_DEPENDENCIES], [QUERY_KEYS.ROLES]],\n onSuccess: function onSuccess() {\n _onSuccess === null || _onSuccess === void 0 || _onSuccess();\n }\n }, options));\n};\nvar useUpdateRole = function useUpdateRole(_ref2) {\n var _onSuccess2 = _ref2.onSuccess,\n options = _objectWithoutProperties(_ref2, _excluded2$2);\n return useMutationWithInvalidation(function (_ref3) {\n var id = _ref3.id,\n payload = _ref3.payload;\n return organizationRolesApi.update(id, payload);\n }, _objectSpread$e({\n keysToInvalidate: [[QUERY_KEYS.TEAMS], [QUERY_KEYS.TEAMS_DEPENDENCIES], [QUERY_KEYS.ROLES]],\n onSuccess: function onSuccess() {\n _onSuccess2 === null || _onSuccess2 === void 0 || _onSuccess2();\n }\n }, options));\n};\nvar useDestroyRole = function useDestroyRole(_ref4) {\n var _ref4$onSuccess = _ref4.onSuccess,\n _onSuccess3 = _ref4$onSuccess === void 0 ? noop : _ref4$onSuccess,\n options = _objectWithoutProperties(_ref4, _excluded3);\n return useMutationWithInvalidation(function (_ref5) {\n var id = _ref5.id,\n payload = _ref5.payload;\n return organizationRolesApi.destroy(id, payload);\n }, _objectSpread$e({\n keysToInvalidate: [[QUERY_KEYS.TEAMS], [QUERY_KEYS.TEAMS_DEPENDENCIES], [QUERY_KEYS.ROLES]],\n onSuccess: function onSuccess() {\n _onSuccess3 === null || _onSuccess3 === void 0 || _onSuccess3();\n }\n }, options));\n};\nvar useBulkUpdateRoles = function useBulkUpdateRoles(_ref6) {\n var _onSuccess4 = _ref6.onSuccess,\n options = _objectWithoutProperties(_ref6, _excluded4);\n return useMutationWithInvalidation(organizationRolesApi.bulkUpdate, _objectSpread$e({\n keysToInvalidate: [[QUERY_KEYS.TEAMS], [QUERY_KEYS.TEAMS_DEPENDENCIES], [QUERY_KEYS.ROLES]],\n onSuccess: function onSuccess() {\n _onSuccess4 === null || _onSuccess4 === void 0 || _onSuccess4();\n }\n }, options));\n};\n\nvar renderSearchProps = function renderSearchProps() {\n return {\n \"data-cy\": \"ntm-search-roles-input\",\n placeholder: t$1(\"neetoTeamMembers.placeholders.searchRole\", PLURAL)\n };\n};\nvar renderBreadcrumbs = function renderBreadcrumbs(breadcrumbs) {\n return breadcrumbs !== null && breadcrumbs !== void 0 ? breadcrumbs : [{\n text: taxonomies.member.plural,\n link: \"/members\"\n }];\n};\n\nvar AddRoleButton = function AddRoleButton(_ref) {\n var config = _ref.config,\n onClick = _ref.onClick;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var isCreatePermissionGranted = config.permissions.create;\n return /*#__PURE__*/jsx(Tooltip, {\n content: t(\"neetoTeamMembers.tooltips.noPermissionToAddRole\"),\n disabled: isCreatePermissionGranted,\n position: \"bottom\",\n children: /*#__PURE__*/jsx(\"span\", {\n children: /*#__PURE__*/jsx(Button, {\n \"data-cy\": \"ntm-add-role-button\",\n disabled: !isCreatePermissionGranted,\n label: t(\"neetoTeamMembers.labels.addNewRole\"),\n onClick: onClick\n })\n })\n });\n};\n\nvar Header$3 = function Header(_ref) {\n var _config$header;\n var config = _ref.config,\n handleReset = _ref.handleReset,\n handleSubmit = _ref.handleSubmit,\n _ref$isDirty = _ref.isDirty,\n isDirty = _ref$isDirty === void 0 ? false : _ref$isDirty,\n setIsNewRolePaneOpen = _ref.setIsNewRolePaneOpen,\n roles = _ref.roles;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var isUpdatePermissionGranted = config.permissions.update;\n return /*#__PURE__*/jsx(NeetoHeader, {\n breadcrumbs: renderBreadcrumbs(config === null || config === void 0 || (_config$header = config.header) === null || _config$header === void 0 ? void 0 : _config$header.breadcrumbs),\n className: \"ntm-roles-header\",\n searchProps: isNotEmpty(roles) ? renderSearchProps() : null,\n actionBlock: isDirty ? /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(Tooltip, {\n content: t(\"neetoTeamMembers.tooltips.noPermissionToEditRoles\"),\n disabled: isUpdatePermissionGranted,\n position: \"bottom\",\n children: /*#__PURE__*/jsx(\"span\", {\n children: /*#__PURE__*/jsx(Button, {\n \"data-cy\": \"ntm-role-submission-button\",\n disabled: !isUpdatePermissionGranted,\n label: t(\"neetoTeamMembers.buttons.saveChanges\"),\n type: \"submit\",\n onClick: handleSubmit\n })\n })\n }), /*#__PURE__*/jsx(Button, {\n \"data-cy\": \"ntm-role-reset-button\",\n label: t(\"neetoTeamMembers.buttons.reset\"),\n style: \"text\",\n type: \"reset\",\n onClick: handleReset\n })]\n }) : /*#__PURE__*/jsx(AddRoleButton, {\n config: config,\n onClick: function onClick() {\n return setIsNewRolePaneOpen(true);\n }\n }),\n title: /*#__PURE__*/jsxs(\"span\", {\n className: \"neeto-ui-flex neeto-ui-items-center neeto-ui-gap-6\",\n children: [t(\"neetoTeamMembers.common.role\", PLURAL), (config === null || config === void 0 ? void 0 : config.helpUrl) && /*#__PURE__*/jsx(Button, {\n className: \"neeto-ui-mt-1\",\n \"data-cy\": \"ntm-roles-permission-more-info-button\",\n href: config === null || config === void 0 ? void 0 : config.helpUrl,\n icon: ExternalLink,\n label: t(\"neetoTeamMembers.helpers.moreInfoAboutPermissions\"),\n style: \"link\",\n target: \"_blank\"\n })]\n })\n });\n};\n\nvar transformObjectToDotNotation = function transformObjectToDotNotation(object) {\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \"\";\n var result = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];\n var errorKey = Object.keys(object).find(function (key) {\n return !!object[key];\n });\n if (!errorKey) return;\n var value = object[errorKey];\n if (!value) return;\n var nextKey = prefix ? \"\".concat(prefix, \".\").concat(errorKey) : errorKey;\n is(Object, value) ? transformObjectToDotNotation(value, nextKey, result) : result.push(nextKey);\n\n // eslint-disable-next-line consistent-return\n return result;\n};\nvar getErrorFieldName = function getErrorFieldName(formikErrors) {\n var _transformObjectToDot;\n return (_transformObjectToDot = transformObjectToDotNotation(formikErrors)) === null || _transformObjectToDot === void 0 ? void 0 : _transformObjectToDot[0];\n};\n\nvar ScrollToErrorField = function ScrollToErrorField(_ref) {\n var formRef = _ref.formRef;\n var _useFormikContext = useFormikContext(),\n submitCount = _useFormikContext.submitCount,\n isValid = _useFormikContext.isValid,\n errors = _useFormikContext.errors;\n var isValidatedReference = useRef(false);\n useEffect(function () {\n isValidatedReference.current = false;\n }, [submitCount]);\n useEffect(function () {\n if (!formRef.current) return;\n if (isValidatedReference.current || isValid) return;\n isValidatedReference.current = true;\n var fieldErrorNames = getErrorFieldName(errors);\n if (fieldErrorNames.length <= 0) return;\n var errorFormElement = _toConsumableArray(formRef.current.elements).find(function (element) {\n return element.name === fieldErrorNames;\n });\n errorFormElement === null || errorFormElement === void 0 || errorFormElement.scrollIntoView({\n behavior: \"smooth\",\n block: \"center\"\n });\n }, [submitCount, errors]); // eslint-disable-line react-hooks/exhaustive-deps\n\n return null;\n};\n\nvar ROLE_NAME_MAX_LENGTH = 40;\nvar ROLE_DESCRIPTION_MAX_LENGTH = 255;\nvar ADD_ROLE_FORM_VALIDATION_SCHEMA = object({\n name: string().trim().max(ROLE_NAME_MAX_LENGTH,\n // @ts-ignore\n t$1(\"neetoTeamMembers.validations.nameLimitExceeded\", {\n limit: ROLE_NAME_MAX_LENGTH\n }))\n // @ts-ignore\n .required(t$1(\"neetoTeamMembers.validations.enterRoleName\")),\n description: string().trim().max(ROLE_DESCRIPTION_MAX_LENGTH,\n // @ts-ignore\n t$1(\"neetoTeamMembers.validations.descriptionLimitExceeded\", {\n limit: ROLE_DESCRIPTION_MAX_LENGTH\n }))\n});\nvar ADD_ROLE_FORM_INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n permissionIds: []\n};\nvar ROLE_FORMIK_PROPS = {\n validationSchema: ADD_ROLE_FORM_VALIDATION_SCHEMA\n};\n\nfunction ownKeys$d(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$d(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$d(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$d(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar sortPermissionsBySequence = function sortPermissionsBySequence() {\n var _permissions$;\n var permissions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n return permissions !== null && permissions !== void 0 && (_permissions$ = permissions[0]) !== null && _permissions$ !== void 0 && _permissions$.sequence ? permissions.sort(function (first, second) {\n return first.sequence - second.sequence;\n }) : permissions;\n};\nvar getPermissionGroups = function getPermissionGroups() {\n var permissions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var sortBySequence = sortPermissionsBySequence(permissions);\n var groupedPermissions = new Map();\n sortBySequence.forEach(function (permission) {\n if (groupedPermissions.has(permission === null || permission === void 0 ? void 0 : permission.category)) {\n var category = groupedPermissions.get(permission.category);\n var currentPermissions = category.get(\"permissions\");\n var _permissions = append(permission, currentPermissions);\n category.set(\"permissions\", _permissions);\n } else {\n var value = new Map();\n value.set(\"permissions\", append(permission, []));\n value.set(\"isPermissionVisible\", true);\n groupedPermissions.set(permission === null || permission === void 0 ? void 0 : permission.category, value);\n }\n });\n return groupedPermissions;\n};\nvar getModifiedPermissions = function getModifiedPermissions() {\n var roles = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var modifiedRoles = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n return modifiedRoles.map(function (role) {\n var oldPermissions = findById(role.id, roles).permissionIds;\n if (equals(oldPermissions, role.permissionIds)) return false;\n return {\n id: role.id,\n permissionIds: role.permissionIds\n };\n }).filter(Boolean);\n};\nvar attachChildrenRecursively = function attachChildrenRecursively(permission, permissionsNameMap, permissionRelationConfig) {\n var _ref = permissionRelationConfig[permission.name] || {},\n children = _ref.children;\n return children ? _objectSpread$d(_objectSpread$d({}, permission), {}, {\n children: children.flatMap(function (childName) {\n return attachChildrenRecursively(permissionsNameMap[childName][0], permissionsNameMap, permissionRelationConfig);\n })\n }) : permission;\n};\nvar findChildIdsRecursively = function findChildIdsRecursively(permission, permissionsNameMap, permissionRelationConfig) {\n var _ref2 = permissionRelationConfig[permission.name] || {},\n children = _ref2.children;\n return children ? concat(children.flatMap(function (childName) {\n return findChildIdsRecursively(permissionsNameMap[childName][0], permissionsNameMap, permissionRelationConfig);\n }), [permission.id]) : [permission.id];\n};\nvar getChildrenRemovedFromRoot = function getChildrenRemovedFromRoot(_ref3) {\n var permissions = _ref3.permissions,\n permissionsNameMap = _ref3.permissionsNameMap,\n permissionRelationConfig = _ref3.permissionRelationConfig;\n var permissionsWithChildren = permissions.map(function (permission) {\n return attachChildrenRecursively(permission, permissionsNameMap, permissionRelationConfig);\n });\n var childPermissions = Object.values(permissionRelationConfig).flatMap(prop(\"children\"));\n return permissionsWithChildren.filter(function (permission) {\n return !childPermissions.includes(permission.name);\n });\n};\n\nfunction ownKeys$c(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$c(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$c(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$c(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar Permissions = function Permissions(_ref) {\n var _ref$permissions = _ref.permissions,\n permissions = _ref$permissions === void 0 ? [] : _ref$permissions,\n _ref$isDisabled = _ref.isDisabled,\n isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,\n _ref$permissionRelati = _ref.permissionRelationConfig,\n permissionRelationConfig = _ref$permissionRelati === void 0 ? {} : _ref$permissionRelati;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useFormikContext = useFormikContext(),\n setFieldValue = _useFormikContext.setFieldValue,\n values = _useFormikContext.values;\n var _values$permissionIds = values.permissionIds,\n permissionIds = _values$permissionIds === void 0 ? [] : _values$permissionIds;\n var permissionsNameMap = groupBy(prop(\"name\"))(permissions);\n var handleTogglePermission = function handleTogglePermission(permissionId) {\n var permission = findById(permissionId, permissions);\n var nextPermissionIds = [];\n if (permissionIds.includes(permissionId)) {\n var childIds = [];\n if (permissionRelationConfig[permission.name]) {\n childIds = findChildIdsRecursively(permission, permissionsNameMap, permissionRelationConfig);\n }\n var permissionIdsToBeUnchecked = [permissionId].concat(_toConsumableArray(childIds));\n nextPermissionIds = permissionIds.filter(function (id) {\n return !permissionIdsToBeUnchecked.includes(id);\n });\n } else {\n var _uncheckOnSelect$flat;\n var _ref2 = permissionRelationConfig[permission.name] || {},\n uncheckOnSelect = _ref2.uncheckOnSelect;\n var uncheckOnSelectPermissions = (_uncheckOnSelect$flat = uncheckOnSelect === null || uncheckOnSelect === void 0 ? void 0 : uncheckOnSelect.flatMap(function (name) {\n return permissionsNameMap[name];\n })) !== null && _uncheckOnSelect$flat !== void 0 ? _uncheckOnSelect$flat : [];\n var _childIds = uncheckOnSelectPermissions.flatMap(function (permission) {\n return findChildIdsRecursively(permission, permissionsNameMap, permissionRelationConfig);\n });\n var uncheckedPermissionIds = pluck(\"id\", uncheckOnSelectPermissions);\n var _permissionIdsToBeUnchecked = [].concat(_toConsumableArray(uncheckedPermissionIds), _toConsumableArray(_childIds));\n nextPermissionIds = uncheckOnSelect ? [].concat(_toConsumableArray(permissionIds.filter(function (id) {\n return !_permissionIdsToBeUnchecked.includes(id);\n })), [permissionId]) : [].concat(_toConsumableArray(permissionIds), [permissionId]);\n }\n setFieldValue(\"permissionIds\", nextPermissionIds);\n };\n var groupedPermissions = useMemo(function () {\n var childrenRemovedFromRoot = getChildrenRemovedFromRoot({\n permissions: permissions,\n permissionsNameMap: permissionsNameMap,\n permissionRelationConfig: permissionRelationConfig\n });\n return groupBy(prop(\"category\"))(childrenRemovedFromRoot);\n }, [permissions]); // eslint-disable-line react-hooks/exhaustive-deps\n\n var renderPermission = function renderPermission(_ref3) {\n var _permissionRelationCo;\n var id = _ref3.id,\n name = _ref3.name,\n description = _ref3.description,\n children = _ref3.children,\n _ref3$isParentChecked = _ref3.isParentChecked,\n isParentChecked = _ref3$isParentChecked === void 0 ? true : _ref3$isParentChecked;\n var sortedChildren = children && sortPermissionsBySequence(children);\n var isCheckingDisabled = !isParentChecked || isDisabled;\n var isChecked = permissionIds.includes(id);\n var permissionsToBeUnchecked = (_permissionRelationCo = permissionRelationConfig[name]) === null || _permissionRelationCo === void 0 ? void 0 : _permissionRelationCo.uncheckOnSelect;\n var hasUnCheckOnSelect = permissionsToBeUnchecked && isNotEmpty(permissionsToBeUnchecked);\n var tooltipMessage = hasUnCheckOnSelect && t(\"neetoTeamMembers.tooltips.uncheckOnSelectPermissions\", {\n permissions: permissionsToBeUnchecked.flatMap(function (name) {\n return pluck(\"description\", permissionsNameMap[name]);\n }).join(\", \")\n });\n return /*#__PURE__*/jsx(Fragment$1, {\n children: /*#__PURE__*/jsx(Tooltip, {\n content: tooltipMessage,\n disabled: !tooltipMessage || isChecked,\n position: \"left-start\",\n children: /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-permission__card\",\n children: [/*#__PURE__*/jsx(Checkbox, {\n checked: isChecked,\n className: \"flex-grow-0\",\n \"data-cy\": \"ntm-roles-permission-checkbox\",\n disabled: isCheckingDisabled,\n label: description,\n onChange: function onChange() {\n return handleTogglePermission(id);\n }\n }), /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-permission__sub-blocks neeto-ui-relative neeto-ui-pl-6\",\n children: sortedChildren === null || sortedChildren === void 0 ? void 0 : sortedChildren.map(function (childPermission) {\n return renderPermission(_objectSpread$c(_objectSpread$c({}, childPermission), {}, {\n isParentChecked: isChecked\n }));\n })\n })]\n })\n })\n }, id);\n };\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-pane__body-wrapper\",\n children: [/*#__PURE__*/jsxs(\"div\", {\n children: [/*#__PURE__*/jsx(Typography, {\n lineHeight: \"normal\",\n style: \"h4\",\n weight: \"semibold\",\n children: t(\"neetoTeamMembers.common.permission\", SINGULAR)\n }), /*#__PURE__*/jsx(Typography, {\n lineHeight: \"normal\",\n style: \"body2\",\n children: t(\"neetoTeamMembers.helpers.configPermissions\")\n })]\n }), Object.keys(groupedPermissions).map(function (category) {\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-permission\",\n \"data-cy\": \"ntm-roles-permission-card\",\n children: [/*#__PURE__*/jsx(Typography, {\n className: \"ntm-roles-permission__heading neeto-ui-mb-2\",\n \"data-cy\": \"ntm-roles-permission-category-title\",\n lineHeight: \"normal\",\n style: \"h5\",\n weight: \"bold\",\n children: category\n }), /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-permission-category-card\",\n children: groupedPermissions[category].map(renderPermission)\n })]\n }, category);\n })]\n });\n};\n\nfunction ownKeys$b(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$b(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$b(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$b(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar ManageRoles = function ManageRoles(_ref) {\n var config = _ref.config,\n _ref$isOpen = _ref.isOpen,\n isOpen = _ref$isOpen === void 0 ? false : _ref$isOpen,\n onClose = _ref.onClose,\n _ref$permissions = _ref.permissions,\n permissions = _ref$permissions === void 0 ? [] : _ref$permissions,\n _ref$selectedRole = _ref.selectedRole,\n selectedRole = _ref$selectedRole === void 0 ? {} : _ref$selectedRole;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var formReference = useRef(null);\n var inputReference = useRef(null);\n var _useCreateRole = useCreateRole({\n onSuccess: onClose\n }),\n createRole = _useCreateRole.mutate,\n isCreatingRole = _useCreateRole.isPending;\n var _useUpdateRole = useUpdateRole({\n onSuccess: onClose\n }),\n updateRole = _useUpdateRole.mutate,\n isUpdatingRole = _useUpdateRole.isPending;\n var isEdit = isPresent(selectedRole);\n var isSubmitting = isCreatingRole || isUpdatingRole;\n var handleSubmit = function handleSubmit(formValues) {\n var payload = {\n organizationRole: _objectSpread$b(_objectSpread$b({}, formValues), {}, {\n name: formValues.name.trim(),\n description: formValues.description.trim()\n })\n };\n isEdit ? updateRole({\n payload: payload,\n id: selectedRole.id\n }) : createRole(payload);\n };\n var initialValues = isEdit ? selectedRole : ADD_ROLE_FORM_INITIAL_VALUES;\n var formikProps = _objectSpread$b(_objectSpread$b({}, ROLE_FORMIK_PROPS), {}, {\n initialValues: initialValues,\n onSubmit: handleSubmit\n });\n var isReadOnly = selectedRole.kind === \"system\";\n var isDisabled = ADMIN_ROLES.includes(selectedRole.name) && isReadOnly;\n return /*#__PURE__*/jsxs(Pane, {\n isOpen: isOpen,\n onClose: onClose,\n initialFocusRef: inputReference,\n children: [/*#__PURE__*/jsx(Pane.Header, {\n children: /*#__PURE__*/jsx(Typography, {\n \"data-cy\": \"ntm-add-role-title\",\n style: \"h2\",\n children: isEdit ? t(\"neetoTeamMembers.labels.editRole\") : t(\"neetoTeamMembers.labels.addNewRole\")\n })\n }), /*#__PURE__*/jsx(Form$1, {\n formikProps: formikProps,\n ref: formReference,\n children: function children(_ref2) {\n var _config$permissionRel;\n var dirty = _ref2.dirty;\n return /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(ScrollToErrorField, {\n formRef: formReference\n }), /*#__PURE__*/jsx(Pane.Body, {\n children: /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-pane__body\",\n children: [/*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-pane__body-wrapper\",\n children: [/*#__PURE__*/jsx(Input, {\n required: true,\n unlimitedChars: true,\n \"data-cy\": \"ntm-add-role-name-text-field\",\n label: t(\"neetoTeamMembers.common.name\"),\n maxLength: ROLE_NAME_MAX_LENGTH,\n name: \"name\",\n placeholder: t(\"neetoTeamMembers.placeholders.enterName\"),\n readOnly: isReadOnly,\n ref: inputReference\n }), /*#__PURE__*/jsx(Textarea, {\n unlimitedChars: true,\n \"data-cy\": \"ntm-add-role-description-text-field\",\n label: t(\"neetoTeamMembers.common.description\"),\n maxLength: ROLE_DESCRIPTION_MAX_LENGTH,\n name: \"description\",\n readOnly: isDisabled,\n placeholder: t(\"neetoTeamMembers.placeholders.enterDescription\")\n })]\n }), /*#__PURE__*/jsx(Permissions, {\n isDisabled: isDisabled,\n permissions: permissions,\n permissionRelationConfig: (_config$permissionRel = config === null || config === void 0 ? void 0 : config.permissionRelation) !== null && _config$permissionRel !== void 0 ? _config$permissionRel : {}\n })]\n })\n }), /*#__PURE__*/jsx(Pane.Footer, {\n children: /*#__PURE__*/jsx(ActionBlock, {\n isSubmitting: isSubmitting,\n className: \"ntm-roles-pane__footer\",\n cancelButtonProps: {\n \"data-cy\": \"ntm-add-role-cancel-button\",\n onClick: onClose\n },\n submitButtonProps: {\n \"data-cy\": \"ntm-add-role-submit-button\",\n disabled: isSubmitting || isDisabled || !dirty\n }\n })\n })]\n });\n }\n })]\n });\n};\n\nvar DEFAULT_MANAGE_ROLE_VALUES = {\n isDelete: false,\n isEdit: false,\n selectedRole: {}\n};\nvar MENU_ITEMS = {\n EDIT: \"edit\",\n DELETE: \"delete\"\n};\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nvar deepClone = function deepClone(object) {\n if (!object || true === object) {\n //this also handles boolean as true and false\n return object;\n }\n var objectType = _typeof$1(object);\n if (\"number\" === objectType || \"string\" === objectType) {\n // add your immutables here\n return object;\n }\n var result = null;\n if (Array.isArray(object)) {\n result = [];\n } else if (!object.constructor) {\n result = {};\n } else {\n result = new object.constructor();\n }\n if (object instanceof Map) {\n var _iterator = _createForOfIteratorHelper(object.keys()),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var key = _step.value;\n result.set(key, deepClone(object.get(key)));\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n Object.keys(object).forEach(function (key) {\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n result[key] = deepClone(object[key]);\n }\n });\n return result;\n};\nvar renderRolesTooltipContent = function renderRolesTooltipContent(roleName) {\n return Object.is(roleName, \"Admin\") ? t$1(\"neetoTeamMembers.tooltips.adminMustHaveAccess\") : t$1(\"neetoTeamMembers.tooltips.noPermissionToEditRoles\");\n};\nvar removeDuplicates = function removeDuplicates(array) {\n return _toConsumableArray(new Set(array));\n};\nvar updatePermissionVisibility = function updatePermissionVisibility(categoryName, permissions) {\n var category = permissions.get(categoryName);\n var isPermissionVisible = category.get(\"isPermissionVisible\");\n category.set(\"isPermissionVisible\", !isPermissionVisible);\n return new Map(permissions.set(categoryName, category));\n};\nvar filterPermissionsBySearch = function filterPermissionsBySearch(searchTerm, permissionGroups) {\n var newValue = deepClone(permissionGroups);\n newValue.forEach(function (value) {\n var permissions = value.get(\"permissions\");\n var filteredPermissions = permissions.filter(function (permission) {\n var _permission$descripti;\n return permission === null || permission === void 0 || (_permission$descripti = permission.description) === null || _permission$descripti === void 0 || (_permission$descripti = _permission$descripti.toLowerCase()) === null || _permission$descripti === void 0 || (_permission$descripti = _permission$descripti.trim()) === null || _permission$descripti === void 0 ? void 0 : _permission$descripti.includes(searchTerm.toLowerCase().trim());\n });\n value.set(\"permissions\", filteredPermissions);\n });\n return newValue;\n};\nvar getMenuItems = function getMenuItems(_ref) {\n var isDeletePermissionGranted = _ref.isDeletePermissionGranted,\n isUpdatePermissionGranted = _ref.isUpdatePermissionGranted,\n role = _ref.role,\n setManageRole = _ref.setManageRole,\n isSystemRole = _ref.isSystemRole;\n return [{\n key: MENU_ITEMS.EDIT,\n className: \"ntm-dropdown__button\",\n \"data-cy\": \"ntm-roles-table-edit-role-button\",\n isDisabled: not(isUpdatePermissionGranted),\n size: \"small\",\n tooltipProps: {\n content: t$1(\"neetoTeamMembers.tooltips.noPermissionToEditRoles\"),\n disabled: isUpdatePermissionGranted,\n position: \"left\"\n },\n label: t$1(\"neetoTeamMembers.common.edit\"),\n onClick: function onClick() {\n return setManageRole({\n isEdit: true,\n selectedRole: role\n });\n }\n }, {\n key: MENU_ITEMS.DELETE,\n className: \"ntm-dropdown__button\",\n \"data-cy\": \"ntm-roles-table-delete-role-button\",\n isDisabled: not(isDeletePermissionGranted),\n size: \"small\",\n isVisible: not(isSystemRole),\n tooltipProps: {\n content: t$1(\"neetoTeamMembers.tooltips.noPermissionToRemoveRoles\"),\n disabled: isDeletePermissionGranted,\n position: \"left\"\n },\n label: t$1(\"neetoTeamMembers.common.delete\"),\n onClick: function onClick() {\n return setManageRole({\n isDelete: true,\n selectedRole: role\n });\n }\n }];\n};\nvar getRowClientHeight = function getRowClientHeight(permission) {\n var sidebarItems = Array.from(document.querySelectorAll(\".ntm-roles-table-sidebar__list-item:not(.ntm-roles-table-sidebar__list-item--highlighted)\"));\n var sidebarItem = _findBy({\n dataset: {\n name: permission === null || permission === void 0 ? void 0 : permission.description\n }\n }, sidebarItems);\n return sidebarItem === null || sidebarItem === void 0 ? void 0 : sidebarItem.clientHeight;\n};\n\nvar Row = function Row(_ref) {\n var _ref$allPermissionsOf = _ref.allPermissionsOfCategory,\n allPermissionsOfCategory = _ref$allPermissionsOf === void 0 ? null : _ref$allPermissionsOf,\n config = _ref.config,\n _ref$permission = _ref.permission,\n permission = _ref$permission === void 0 ? null : _ref$permission,\n roles = _ref.roles,\n setModifiedRoles = _ref.setModifiedRoles;\n var isUpdatePermissionGranted = config.permissions.update;\n var permissions = (allPermissionsOfCategory === null || allPermissionsOfCategory === void 0 ? void 0 : allPermissionsOfCategory.get(\"permissions\")) || [];\n var allPermissionIdsOfCategory = map(prop(\"id\"), permissions);\n var handleSubmit = function handleSubmit(role, checked) {\n var permissionIds = isNotEmpty(allPermissionIdsOfCategory) ? allPermissionIdsOfCategory : [permission === null || permission === void 0 ? void 0 : permission.id];\n var modifiedRole = modify(\"permissionIds\", function () {\n return checked ? removeDuplicates([].concat(_toConsumableArray(role.permissionIds), _toConsumableArray(permissionIds))) : role.permissionIds.filter(function (id) {\n return !permissionIds.includes(id);\n });\n }, role);\n setModifiedRoles(replaceById(role.id, modifiedRole));\n };\n var isCheckboxChecked = function isCheckboxChecked(role) {\n return !allPermissionsOfCategory ? includes(permission === null || permission === void 0 ? void 0 : permission.id, role.permissionIds) : allPermissionIdsOfCategory.every(includes(__, role.permissionIds));\n };\n return /*#__PURE__*/jsx(\"div\", {\n className: classnames(\"ntm-roles-table__row\", {\n \"ntm-roles-table__row--highlighted\": !!allPermissionsOfCategory\n }),\n children: roles.map(function (role) {\n return /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table__cell\",\n style: {\n height: getRowClientHeight(permission)\n },\n children: /*#__PURE__*/jsx(Tooltip, {\n content: renderRolesTooltipContent(role.name),\n position: \"top\",\n disabled: isUpdatePermissionGranted && !identical(role.name, \"Admin\"),\n children: /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table-cell__checkbox-wrapper\",\n children: /*#__PURE__*/jsx(Checkbox, {\n disabled: true,\n checked: isCheckboxChecked(role),\n className: \"ntm-roles-table-cell__checkbox\",\n \"data-cy\": \"ntm-roles-table-permission-checkbox\",\n onChange: function onChange(_ref2) {\n var checked = _ref2.target.checked;\n return handleSubmit(role, checked);\n }\n })\n })\n })\n }, role.id);\n })\n });\n};\n\nvar TableHeader = function TableHeader(_ref) {\n var config = _ref.config,\n roles = _ref.roles,\n setManageRole = _ref.setManageRole,\n setIsScrollPresent = _ref.setIsScrollPresent;\n var isUpdatePermissionGranted = config.permissions.update;\n var isDeletePermissionGranted = config.permissions[\"delete\"];\n var scrollSyncElement = useRef(null);\n var getOverflowStatus = useCallback(function () {\n if (!scrollSyncElement.current) return;\n var headerElement = scrollSyncElement.current.node;\n var isScrollBarPresent = isOverflown(headerElement);\n setIsScrollPresent(isScrollBarPresent);\n }, [setIsScrollPresent]);\n useEffect(function () {\n addEventListener(\"resize\", getOverflowStatus);\n return function () {\n return removeEventListener(\"resize\", getOverflowStatus);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n useEffect(getOverflowStatus, [getOverflowStatus, scrollSyncElement, roles]);\n return /*#__PURE__*/jsx(distExports.ScrollSyncPane, {\n group: \"horizontal\",\n ref: scrollSyncElement,\n children: /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table__header\",\n \"data-cy\": \"ntm-roles-table-header\",\n children: roles === null || roles === void 0 ? void 0 : roles.map(function (role, index) {\n var isSystemRole = identical(\"system\", role.kind);\n var isAdminRole = ADMIN_ROLES.includes(role.name) && isSystemRole;\n return /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table__cell\",\n children: /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-table-header-cell__container\",\n \"data-cy\": \"ntm-roles-table-role-header\",\n children: [/*#__PURE__*/jsx(Typography, {\n className: \"ntm-roles-table-header__role-name\",\n \"data-cy\": \"ntm-roles-table-header-role-title\",\n lineHeight: \"normal\",\n style: \"h4\",\n weight: \"semibold\",\n children: role.name\n }), !isAdminRole && /*#__PURE__*/jsx(MoreDropdown, {\n dropdownProps: {\n autoWidth: true\n },\n dropdownButtonProps: {\n className: \"ntm-roles-table-header__dropdown\",\n \"data-cy\": \"ntm-roles-table-header-role-dropdown-button\"\n },\n menuItems: getMenuItems({\n isDeletePermissionGranted: isDeletePermissionGranted,\n isUpdatePermissionGranted: isUpdatePermissionGranted,\n role: role,\n setManageRole: setManageRole,\n isSystemRole: isSystemRole\n })\n })]\n })\n }, \"ntm-roles-\".concat(index));\n })\n })\n });\n};\nvar TableHeader$1 = /*#__PURE__*/memo(TableHeader);\n\nvar Delete = function Delete(_ref) {\n var isOpen = _ref.isOpen,\n onClose = _ref.onClose,\n selectedRole = _ref.selectedRole,\n roles = _ref.roles;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useDestroyRole = useDestroyRole({\n onSuccess: onClose\n }),\n deleteRole = _useDestroyRole.mutate,\n isDeleting = _useDestroyRole.isPending;\n var handleDelete = function handleDelete() {\n var _roles$find;\n var id = selectedRole.id;\n var payload = {\n newRoleId: (_roles$find = roles.find(function (role) {\n return role.id !== id;\n })) === null || _roles$find === void 0 ? void 0 : _roles$find.id\n };\n deleteRole({\n id: id,\n payload: payload\n });\n };\n return /*#__PURE__*/jsx(Alert, {\n isOpen: isOpen,\n onClose: onClose,\n cancelButtonLabel: t(\"neetoTeamMembers.buttons.cancel\"),\n isSubmitting: isDeleting,\n submitButtonLabel: t(\"neetoTeamMembers.buttons.delete\"),\n title: t(\"neetoTeamMembers.labels.deleteRole\"),\n message: /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.alerts.messages.deletingRole\",\n values: {\n name: selectedRole === null || selectedRole === void 0 ? void 0 : selectedRole.name\n }\n }),\n onSubmit: handleDelete\n });\n};\n\nvar Columns = function Columns(_ref) {\n var config = _ref.config,\n filteredGroupPermissions = _ref.filteredGroupPermissions,\n filteredRoles = _ref.filteredRoles,\n permissions = _ref.permissions,\n roles = _ref.roles,\n setModifiedRoles = _ref.setModifiedRoles,\n setIsScrollPresent = _ref.setIsScrollPresent;\n var _useState = useState(DEFAULT_MANAGE_ROLE_VALUES),\n _useState2 = _slicedToArray(_useState, 2),\n manageRole = _useState2[0],\n setManageRole = _useState2[1];\n var categories = Array.from(filteredGroupPermissions === null || filteredGroupPermissions === void 0 ? void 0 : filteredGroupPermissions.keys());\n var onClose = function onClose() {\n return setManageRole(DEFAULT_MANAGE_ROLE_VALUES);\n };\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-table__columns\",\n children: [/*#__PURE__*/jsx(TableHeader$1, {\n config: config,\n roles: filteredRoles,\n setIsScrollPresent: setIsScrollPresent,\n setManageRole: setManageRole\n }), /*#__PURE__*/jsx(distExports.ScrollSyncPane, {\n group: [\"horizontal\", \"vertical\"],\n children: /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table__rows\",\n children: categories.map(function (category, index) {\n var groupedPermissions = filteredGroupPermissions.get(category);\n var isPermissionVisible = groupedPermissions.get(\"isPermissionVisible\");\n var permissions = groupedPermissions.get(\"permissions\");\n return /*#__PURE__*/jsxs(\"div\", {\n children: [/*#__PURE__*/jsx(Row, {\n allPermissionsOfCategory: groupedPermissions,\n config: config,\n roles: filteredRoles,\n setModifiedRoles: setModifiedRoles\n }), isPermissionVisible && permissions.map(function (permission) {\n return /*#__PURE__*/jsx(Row, {\n config: config,\n permission: permission,\n roles: filteredRoles,\n setModifiedRoles: setModifiedRoles\n }, permission.id);\n })]\n }, index);\n })\n })\n }), /*#__PURE__*/jsx(ManageRoles, {\n config: config,\n isOpen: manageRole.isEdit,\n permissions: permissions,\n selectedRole: manageRole.selectedRole,\n onClose: onClose\n }), /*#__PURE__*/jsx(Delete, {\n isOpen: manageRole.isDelete,\n roles: roles,\n selectedRole: manageRole.selectedRole,\n onClose: onClose\n })]\n });\n};\n\nvar ToggleDropdown = function ToggleDropdown(_ref) {\n var isVisible = _ref.isVisible;\n return isVisible ? /*#__PURE__*/jsx(Up, {\n className: \"ntm-roles-table-sidebar__drop-down-button\",\n \"data-cy\": \"ntm-permission-category-hide-button\",\n size: 16,\n strokeWidth: 2\n }) : /*#__PURE__*/jsx(Down, {\n className: \"ntm-roles-table-sidebar__drop-down-button\",\n \"data-cy\": \"ntm-permission-category-show-button\",\n size: 16,\n strokeWidth: 2\n });\n};\n\nvar renderDescription = function renderDescription(permissions, filteredPermissions) {\n return permissions === null || permissions === void 0 ? void 0 : permissions.map(function (_ref) {\n var id = _ref.id,\n description = _ref.description,\n children = _ref.children;\n return /*#__PURE__*/jsxs(Fragment$1, {\n children: [filteredPermissions.includes(id) && /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table-sidebar__list-item\",\n \"data-name\": description,\n children: /*#__PURE__*/jsx(Typography, {\n \"data-cy\": \"ntm-permission-category-description\",\n lineHeight: \"normal\",\n style: \"body2\",\n children: description\n })\n }, id), /*#__PURE__*/jsx(\"div\", {\n className: \"neeto-ui-relative neeto-ui-pl-6 ntm-roles-table-sidebar__sub-blocks\",\n children: renderDescription(children, filteredPermissions)\n })]\n }, id);\n });\n};\nvar getSearchWrapperStyle = function getSearchWrapperStyle() {\n var scrollBarWidth = getScrollBarWidth();\n document.documentElement.style.setProperty(\"--ntm-roles-table-default-scroll\", \"\".concat(scrollBarWidth, \"px\"));\n return {\n marginBottom: \"\".concat(scrollBarWidth, \"px\")\n };\n};\n\nvar Sidebar = function Sidebar(_ref) {\n var searchTerm = _ref.searchTerm,\n setSearchTerm = _ref.setSearchTerm,\n filteredGroupPermissions = _ref.filteredGroupPermissions,\n toggleDropdown = _ref.toggleDropdown,\n isScrollPresent = _ref.isScrollPresent,\n _ref$permissions = _ref.permissions,\n permissions = _ref$permissions === void 0 ? [] : _ref$permissions,\n _ref$permissionRelati = _ref.permissionRelationConfig,\n permissionRelationConfig = _ref$permissionRelati === void 0 ? {} : _ref$permissionRelati;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var categories = Array.from(filteredGroupPermissions.keys());\n var searchWrapperStyle = isScrollPresent ? getSearchWrapperStyle() : {};\n var permissionsNameMap = groupBy(prop(\"name\"))(permissions);\n var groupedPermissionsWithChildren = useMemo(function () {\n var childrenRemovedFromRoot = getChildrenRemovedFromRoot({\n permissions: permissions,\n permissionsNameMap: permissionsNameMap,\n permissionRelationConfig: permissionRelationConfig\n });\n return groupBy(prop(\"category\"))(childrenRemovedFromRoot);\n }, [permissions]);\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-table__sidebar\",\n children: [/*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table-sidebar__search\",\n style: searchWrapperStyle,\n children: /*#__PURE__*/jsx(Input$1, {\n \"data-cy\": \"ntm-search-permissions-input\",\n prefix: /*#__PURE__*/jsx(Search, {}),\n type: \"search\",\n value: searchTerm,\n placeholder: t(\"neetoTeamMembers.placeholders.searchPermission\", PLURAL),\n onChange: function onChange(_ref2) {\n var value = _ref2.target.value;\n return setSearchTerm(value);\n }\n })\n }), /*#__PURE__*/jsx(distExports.ScrollSyncPane, {\n group: \"vertical\",\n children: /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table-sidebar__list\",\n children: categories.map(function (category, index) {\n var groupedPermissions = filteredGroupPermissions.get(category);\n var isPermissionVisible = groupedPermissions.get(\"isPermissionVisible\");\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-table-sidebar__list-item-cell\",\n children: [/*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-roles-table-sidebar__list-item ntm-roles-table-sidebar__list-item--highlighted cursor-pointer\",\n onClick: function onClick() {\n return toggleDropdown(category);\n },\n children: [/*#__PURE__*/jsx(Typography, {\n \"data-cy\": \"ntm-permission-category-title\",\n lineHeight: \"normal\",\n style: \"h4\",\n weight: \"semibold\",\n children: category\n }), /*#__PURE__*/jsx(ToggleDropdown, {\n isVisible: isPermissionVisible\n })]\n }), isPermissionVisible && /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table-sidebar__list-item-spacing-handler ml-[12px] px-[24px]\",\n children: renderDescription(groupedPermissionsWithChildren[category], pluck(\"id\", filteredGroupPermissions.get(category).get(\"permissions\") || []))\n })]\n }, index);\n })\n })\n })]\n });\n};\n\nvar Table = function Table(_ref) {\n var _config$permissionRel;\n var config = _ref.config,\n filteredRoles = _ref.filteredRoles,\n roles = _ref.roles,\n permissionGroups = _ref.permissionGroups,\n permissions = _ref.permissions,\n setModifiedRoles = _ref.setModifiedRoles,\n setIsNewRolePaneOpen = _ref.setIsNewRolePaneOpen;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var isCreatePermissionGranted = config.permissions.create;\n var _useState = useState(\"\"),\n _useState2 = _slicedToArray(_useState, 2),\n searchTerm = _useState2[0],\n setSearchTerm = _useState2[1];\n var _useState3 = useState(permissionGroups),\n _useState4 = _slicedToArray(_useState3, 2),\n filteredGroupPermissions = _useState4[0],\n setFilteredGroupPermissions = _useState4[1];\n var _useState5 = useState(false),\n _useState6 = _slicedToArray(_useState5, 2),\n isScrollPresent = _useState6[0],\n setIsScrollPresent = _useState6[1];\n var _useState7 = useState(undefined),\n _useState8 = _slicedToArray(_useState7, 2),\n selectedRole = _useState8[0],\n setSelectedRole = _useState8[1];\n var _useState9 = useState(false),\n _useState10 = _slicedToArray(_useState9, 2),\n isDeleteAlertOpen = _useState10[0],\n setIsDeleteAlertOpen = _useState10[1];\n var _useState11 = useState(false),\n _useState12 = _slicedToArray(_useState11, 2),\n isEditPaneOpen = _useState12[0],\n setIsEditPaneOpen = _useState12[1];\n var toggleDropdown = function toggleDropdown(category) {\n var permissions = updatePermissionVisibility(category, filteredGroupPermissions);\n setFilteredGroupPermissions(permissions);\n };\n useEffect(function () {\n var newValue = filterPermissionsBySearch(searchTerm, permissionGroups);\n setFilteredGroupPermissions(newValue);\n }, [permissionGroups, searchTerm]);\n return /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table__wrapper\",\n children: /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-roles-table__container\",\n children: isEmpty(filteredRoles) ? /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-empty-state\",\n children: /*#__PURE__*/jsx(NoData, {\n title: t(\"neetoTeamMembers.labels.roleNotFound\", PLURAL),\n primaryButtonProps: {\n \"data-cy\": \"ntm-add-role-button\",\n disabled: !isCreatePermissionGranted,\n label: t(\"neetoTeamMembers.labels.addNewRole\"),\n onClick: function onClick() {\n return setIsNewRolePaneOpen(true);\n }\n }\n })\n }) : /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(Sidebar, {\n filteredGroupPermissions: filteredGroupPermissions,\n isScrollPresent: isScrollPresent,\n permissions: permissions,\n searchTerm: searchTerm,\n setSearchTerm: setSearchTerm,\n toggleDropdown: toggleDropdown,\n permissionRelationConfig: (_config$permissionRel = config === null || config === void 0 ? void 0 : config.permissionRelation) !== null && _config$permissionRel !== void 0 ? _config$permissionRel : {}\n }), /*#__PURE__*/jsx(Columns, {\n config: config,\n filteredGroupPermissions: filteredGroupPermissions,\n filteredRoles: filteredRoles,\n permissions: permissions,\n roles: roles,\n setIsScrollPresent: setIsScrollPresent,\n setModifiedRoles: setModifiedRoles\n })]\n })\n })\n }), /*#__PURE__*/jsx(ManageRoles, {\n config: config,\n permissions: permissions,\n selectedRole: selectedRole,\n isOpen: isEditPaneOpen,\n onClose: function onClose() {\n setSelectedRole(undefined);\n setIsEditPaneOpen(false);\n }\n }), /*#__PURE__*/jsx(Delete, {\n roles: roles,\n selectedRole: selectedRole,\n isOpen: isDeleteAlertOpen,\n onClose: function onClose() {\n setSelectedRole(undefined);\n setIsDeleteAlertOpen(false);\n }\n })]\n });\n};\n\nvar Roles = function Roles(_ref) {\n var config = _ref.config;\n var isViewPermissionGranted = config.permissions.view;\n var isUpdatePermissionGranted = config.permissions.update;\n var _useState = useState([]),\n _useState2 = _slicedToArray(_useState, 2),\n modifiedRoles = _useState2[0],\n setModifiedRoles = _useState2[1];\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n isNewRolePaneOpen = _useState4[0],\n setIsNewRolePaneOpen = _useState4[1];\n var _useFetchRoles = useFetchRoles({\n enabled: isViewPermissionGranted\n }),\n _useFetchRoles$data = _useFetchRoles.data,\n roles = _useFetchRoles$data === void 0 ? [] : _useFetchRoles$data,\n isRolesLoading = _useFetchRoles.isLoading,\n status = _useFetchRoles.status;\n var _useQueryParams = useQueryParams(),\n _useQueryParams$searc = _useQueryParams.searchTerm,\n searchTerm = _useQueryParams$searc === void 0 ? \"\" : _useQueryParams$searc;\n var _useFetchPermissions = useFetchPermissions({\n enabled: isViewPermissionGranted\n }),\n permissionData = _useFetchPermissions.data,\n isPermissionsLoading = _useFetchPermissions.isLoading;\n var _useBulkUpdateRoles = useBulkUpdateRoles({\n enabled: isUpdatePermissionGranted\n }),\n bulkUpdate = _useBulkUpdateRoles.mutate;\n var permissions = sortPermissionsBySequence(permissionData);\n var permissionGroups = getPermissionGroups(permissions);\n var filteredRoles = filter(function (_ref2) {\n var name = _ref2.name;\n return includes(searchTerm.toLowerCase().trim(), name.toLowerCase().trim());\n }, isNotEmpty(modifiedRoles) ? modifiedRoles : roles);\n var handleSubmit = function handleSubmit() {\n var updatedRoles = getModifiedPermissions(roles, modifiedRoles);\n bulkUpdate({\n organizationRoles: {\n updatedRoles: updatedRoles\n }\n });\n };\n var handleReset = function handleReset() {\n return setModifiedRoles(roles);\n };\n useEffect(function () {\n if (status !== \"success\") return;\n setModifiedRoles(roles);\n }, [roles, status]);\n if (isRolesLoading || isPermissionsLoading) {\n return /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-members-page-loader\",\n children: /*#__PURE__*/jsx(PageLoader, {})\n });\n }\n return /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(distExports.ScrollSync, {\n children: /*#__PURE__*/jsxs(Container, {\n isHeaderFixed: true,\n children: [/*#__PURE__*/jsx(Header$3, {\n config: config,\n handleReset: handleReset,\n handleSubmit: handleSubmit,\n roles: roles,\n setIsNewRolePaneOpen: setIsNewRolePaneOpen\n }), /*#__PURE__*/jsx(Table, {\n config: config,\n filteredRoles: filteredRoles,\n permissionGroups: permissionGroups,\n permissions: permissions,\n roles: roles,\n setIsNewRolePaneOpen: setIsNewRolePaneOpen,\n setModifiedRoles: setModifiedRoles\n })]\n })\n }), /*#__PURE__*/jsx(ManageRoles, {\n config: config,\n permissions: permissions,\n isOpen: isNewRolePaneOpen,\n onClose: function onClose() {\n return setIsNewRolePaneOpen(false);\n }\n })]\n });\n};\nvar index$1 = withTitle(withReactQuery(Roles), i18next.t(\"neetoTeamMembers.common.role\", PLURAL));\n\n/* eslint complexity: [2, 18], max-statements: [2, 33] */\nvar shams = function hasSymbols() {\n\tif (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }\n\tif (typeof Symbol.iterator === 'symbol') { return true; }\n\n\tvar obj = {};\n\tvar sym = Symbol('test');\n\tvar symObj = Object(sym);\n\tif (typeof sym === 'string') { return false; }\n\n\tif (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }\n\tif (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }\n\n\t// temp disabled per https://github.com/ljharb/object.assign/issues/17\n\t// if (sym instanceof Symbol) { return false; }\n\t// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4\n\t// if (!(symObj instanceof Symbol)) { return false; }\n\n\t// if (typeof Symbol.prototype.toString !== 'function') { return false; }\n\t// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }\n\n\tvar symVal = 42;\n\tobj[sym] = symVal;\n\tfor (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop\n\tif (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }\n\n\tif (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }\n\n\tvar syms = Object.getOwnPropertySymbols(obj);\n\tif (syms.length !== 1 || syms[0] !== sym) { return false; }\n\n\tif (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }\n\n\tif (typeof Object.getOwnPropertyDescriptor === 'function') {\n\t\tvar descriptor = Object.getOwnPropertyDescriptor(obj, sym);\n\t\tif (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }\n\t}\n\n\treturn true;\n};\n\nvar origSymbol = typeof Symbol !== 'undefined' && Symbol;\nvar hasSymbolSham = shams;\n\nvar hasSymbols$1 = function hasNativeSymbols() {\n\tif (typeof origSymbol !== 'function') { return false; }\n\tif (typeof Symbol !== 'function') { return false; }\n\tif (typeof origSymbol('foo') !== 'symbol') { return false; }\n\tif (typeof Symbol('bar') !== 'symbol') { return false; }\n\n\treturn hasSymbolSham();\n};\n\nvar test = {\n\tfoo: {}\n};\n\nvar $Object = Object;\n\nvar hasProto$1 = function hasProto() {\n\treturn { __proto__: test }.foo === test.foo && !({ __proto__: null } instanceof $Object);\n};\n\n/* eslint no-invalid-this: 1 */\n\nvar ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';\nvar slice = Array.prototype.slice;\nvar toStr$1 = Object.prototype.toString;\nvar funcType = '[object Function]';\n\nvar implementation$1 = function bind(that) {\n var target = this;\n if (typeof target !== 'function' || toStr$1.call(target) !== funcType) {\n throw new TypeError(ERROR_MESSAGE + target);\n }\n var args = slice.call(arguments, 1);\n\n var bound;\n var binder = function () {\n if (this instanceof bound) {\n var result = target.apply(\n this,\n args.concat(slice.call(arguments))\n );\n if (Object(result) === result) {\n return result;\n }\n return this;\n } else {\n return target.apply(\n that,\n args.concat(slice.call(arguments))\n );\n }\n };\n\n var boundLength = Math.max(0, target.length - args.length);\n var boundArgs = [];\n for (var i = 0; i < boundLength; i++) {\n boundArgs.push('$' + i);\n }\n\n bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder);\n\n if (target.prototype) {\n var Empty = function Empty() {};\n Empty.prototype = target.prototype;\n bound.prototype = new Empty();\n Empty.prototype = null;\n }\n\n return bound;\n};\n\nvar implementation = implementation$1;\n\nvar functionBind = Function.prototype.bind || implementation;\n\nvar bind$1 = functionBind;\n\nvar src = bind$1.call(Function.call, Object.prototype.hasOwnProperty);\n\nvar undefined$1;\n\nvar $SyntaxError = SyntaxError;\nvar $Function = Function;\nvar $TypeError$1 = TypeError;\n\n// eslint-disable-next-line consistent-return\nvar getEvalledConstructor = function (expressionSyntax) {\n\ttry {\n\t\treturn $Function('\"use strict\"; return (' + expressionSyntax + ').constructor;')();\n\t} catch (e) {}\n};\n\nvar $gOPD = Object.getOwnPropertyDescriptor;\nif ($gOPD) {\n\ttry {\n\t\t$gOPD({}, '');\n\t} catch (e) {\n\t\t$gOPD = null; // this is IE 8, which has a broken gOPD\n\t}\n}\n\nvar throwTypeError = function () {\n\tthrow new $TypeError$1();\n};\nvar ThrowTypeError = $gOPD\n\t? (function () {\n\t\ttry {\n\t\t\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\n\t\t\targuments.callee; // IE 8 does not throw here\n\t\t\treturn throwTypeError;\n\t\t} catch (calleeThrows) {\n\t\t\ttry {\n\t\t\t\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\n\t\t\t\treturn $gOPD(arguments, 'callee').get;\n\t\t\t} catch (gOPDthrows) {\n\t\t\t\treturn throwTypeError;\n\t\t\t}\n\t\t}\n\t}())\n\t: throwTypeError;\n\nvar hasSymbols = hasSymbols$1();\nvar hasProto = hasProto$1();\n\nvar getProto = Object.getPrototypeOf || (\n\thasProto\n\t\t? function (x) { return x.__proto__; } // eslint-disable-line no-proto\n\t\t: null\n);\n\nvar needsEval = {};\n\nvar TypedArray = typeof Uint8Array === 'undefined' || !getProto ? undefined$1 : getProto(Uint8Array);\n\nvar INTRINSICS = {\n\t'%AggregateError%': typeof AggregateError === 'undefined' ? undefined$1 : AggregateError,\n\t'%Array%': Array,\n\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined$1 : ArrayBuffer,\n\t'%ArrayIteratorPrototype%': hasSymbols && getProto ? getProto([][Symbol.iterator]()) : undefined$1,\n\t'%AsyncFromSyncIteratorPrototype%': undefined$1,\n\t'%AsyncFunction%': needsEval,\n\t'%AsyncGenerator%': needsEval,\n\t'%AsyncGeneratorFunction%': needsEval,\n\t'%AsyncIteratorPrototype%': needsEval,\n\t'%Atomics%': typeof Atomics === 'undefined' ? undefined$1 : Atomics,\n\t'%BigInt%': typeof BigInt === 'undefined' ? undefined$1 : BigInt,\n\t'%BigInt64Array%': typeof BigInt64Array === 'undefined' ? undefined$1 : BigInt64Array,\n\t'%BigUint64Array%': typeof BigUint64Array === 'undefined' ? undefined$1 : BigUint64Array,\n\t'%Boolean%': Boolean,\n\t'%DataView%': typeof DataView === 'undefined' ? undefined$1 : DataView,\n\t'%Date%': Date,\n\t'%decodeURI%': decodeURI,\n\t'%decodeURIComponent%': decodeURIComponent,\n\t'%encodeURI%': encodeURI,\n\t'%encodeURIComponent%': encodeURIComponent,\n\t'%Error%': Error,\n\t'%eval%': eval, // eslint-disable-line no-eval\n\t'%EvalError%': EvalError,\n\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined$1 : Float32Array,\n\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined$1 : Float64Array,\n\t'%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined$1 : FinalizationRegistry,\n\t'%Function%': $Function,\n\t'%GeneratorFunction%': needsEval,\n\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined$1 : Int8Array,\n\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined$1 : Int16Array,\n\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined$1 : Int32Array,\n\t'%isFinite%': isFinite,\n\t'%isNaN%': isNaN,\n\t'%IteratorPrototype%': hasSymbols && getProto ? getProto(getProto([][Symbol.iterator]())) : undefined$1,\n\t'%JSON%': typeof JSON === 'object' ? JSON : undefined$1,\n\t'%Map%': typeof Map === 'undefined' ? undefined$1 : Map,\n\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols || !getProto ? undefined$1 : getProto(new Map()[Symbol.iterator]()),\n\t'%Math%': Math,\n\t'%Number%': Number,\n\t'%Object%': Object,\n\t'%parseFloat%': parseFloat,\n\t'%parseInt%': parseInt,\n\t'%Promise%': typeof Promise === 'undefined' ? undefined$1 : Promise,\n\t'%Proxy%': typeof Proxy === 'undefined' ? undefined$1 : Proxy,\n\t'%RangeError%': RangeError,\n\t'%ReferenceError%': ReferenceError,\n\t'%Reflect%': typeof Reflect === 'undefined' ? undefined$1 : Reflect,\n\t'%RegExp%': RegExp,\n\t'%Set%': typeof Set === 'undefined' ? undefined$1 : Set,\n\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols || !getProto ? undefined$1 : getProto(new Set()[Symbol.iterator]()),\n\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined$1 : SharedArrayBuffer,\n\t'%String%': String,\n\t'%StringIteratorPrototype%': hasSymbols && getProto ? getProto(''[Symbol.iterator]()) : undefined$1,\n\t'%Symbol%': hasSymbols ? Symbol : undefined$1,\n\t'%SyntaxError%': $SyntaxError,\n\t'%ThrowTypeError%': ThrowTypeError,\n\t'%TypedArray%': TypedArray,\n\t'%TypeError%': $TypeError$1,\n\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined$1 : Uint8Array,\n\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined$1 : Uint8ClampedArray,\n\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined$1 : Uint16Array,\n\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined$1 : Uint32Array,\n\t'%URIError%': URIError,\n\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined$1 : WeakMap,\n\t'%WeakRef%': typeof WeakRef === 'undefined' ? undefined$1 : WeakRef,\n\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined$1 : WeakSet\n};\n\nif (getProto) {\n\ttry {\n\t\tnull.error; // eslint-disable-line no-unused-expressions\n\t} catch (e) {\n\t\t// https://github.com/tc39/proposal-shadowrealm/pull/384#issuecomment-1364264229\n\t\tvar errorProto = getProto(getProto(e));\n\t\tINTRINSICS['%Error.prototype%'] = errorProto;\n\t}\n}\n\nvar doEval = function doEval(name) {\n\tvar value;\n\tif (name === '%AsyncFunction%') {\n\t\tvalue = getEvalledConstructor('async function () {}');\n\t} else if (name === '%GeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('function* () {}');\n\t} else if (name === '%AsyncGeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('async function* () {}');\n\t} else if (name === '%AsyncGenerator%') {\n\t\tvar fn = doEval('%AsyncGeneratorFunction%');\n\t\tif (fn) {\n\t\t\tvalue = fn.prototype;\n\t\t}\n\t} else if (name === '%AsyncIteratorPrototype%') {\n\t\tvar gen = doEval('%AsyncGenerator%');\n\t\tif (gen && getProto) {\n\t\t\tvalue = getProto(gen.prototype);\n\t\t}\n\t}\n\n\tINTRINSICS[name] = value;\n\n\treturn value;\n};\n\nvar LEGACY_ALIASES = {\n\t'%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],\n\t'%ArrayPrototype%': ['Array', 'prototype'],\n\t'%ArrayProto_entries%': ['Array', 'prototype', 'entries'],\n\t'%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'],\n\t'%ArrayProto_keys%': ['Array', 'prototype', 'keys'],\n\t'%ArrayProto_values%': ['Array', 'prototype', 'values'],\n\t'%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'],\n\t'%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'],\n\t'%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'],\n\t'%BooleanPrototype%': ['Boolean', 'prototype'],\n\t'%DataViewPrototype%': ['DataView', 'prototype'],\n\t'%DatePrototype%': ['Date', 'prototype'],\n\t'%ErrorPrototype%': ['Error', 'prototype'],\n\t'%EvalErrorPrototype%': ['EvalError', 'prototype'],\n\t'%Float32ArrayPrototype%': ['Float32Array', 'prototype'],\n\t'%Float64ArrayPrototype%': ['Float64Array', 'prototype'],\n\t'%FunctionPrototype%': ['Function', 'prototype'],\n\t'%Generator%': ['GeneratorFunction', 'prototype'],\n\t'%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'],\n\t'%Int8ArrayPrototype%': ['Int8Array', 'prototype'],\n\t'%Int16ArrayPrototype%': ['Int16Array', 'prototype'],\n\t'%Int32ArrayPrototype%': ['Int32Array', 'prototype'],\n\t'%JSONParse%': ['JSON', 'parse'],\n\t'%JSONStringify%': ['JSON', 'stringify'],\n\t'%MapPrototype%': ['Map', 'prototype'],\n\t'%NumberPrototype%': ['Number', 'prototype'],\n\t'%ObjectPrototype%': ['Object', 'prototype'],\n\t'%ObjProto_toString%': ['Object', 'prototype', 'toString'],\n\t'%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'],\n\t'%PromisePrototype%': ['Promise', 'prototype'],\n\t'%PromiseProto_then%': ['Promise', 'prototype', 'then'],\n\t'%Promise_all%': ['Promise', 'all'],\n\t'%Promise_reject%': ['Promise', 'reject'],\n\t'%Promise_resolve%': ['Promise', 'resolve'],\n\t'%RangeErrorPrototype%': ['RangeError', 'prototype'],\n\t'%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'],\n\t'%RegExpPrototype%': ['RegExp', 'prototype'],\n\t'%SetPrototype%': ['Set', 'prototype'],\n\t'%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'],\n\t'%StringPrototype%': ['String', 'prototype'],\n\t'%SymbolPrototype%': ['Symbol', 'prototype'],\n\t'%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'],\n\t'%TypedArrayPrototype%': ['TypedArray', 'prototype'],\n\t'%TypeErrorPrototype%': ['TypeError', 'prototype'],\n\t'%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'],\n\t'%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'],\n\t'%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'],\n\t'%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'],\n\t'%URIErrorPrototype%': ['URIError', 'prototype'],\n\t'%WeakMapPrototype%': ['WeakMap', 'prototype'],\n\t'%WeakSetPrototype%': ['WeakSet', 'prototype']\n};\n\nvar bind = functionBind;\nvar hasOwn$1 = src;\nvar $concat$1 = bind.call(Function.call, Array.prototype.concat);\nvar $spliceApply = bind.call(Function.apply, Array.prototype.splice);\nvar $replace$1 = bind.call(Function.call, String.prototype.replace);\nvar $strSlice = bind.call(Function.call, String.prototype.slice);\nvar $exec = bind.call(Function.call, RegExp.prototype.exec);\n\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\nvar rePropName = /[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g;\nvar reEscapeChar = /\\\\(\\\\)?/g; /** Used to match backslashes in property paths. */\nvar stringToPath = function stringToPath(string) {\n\tvar first = $strSlice(string, 0, 1);\n\tvar last = $strSlice(string, -1);\n\tif (first === '%' && last !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected closing `%`');\n\t} else if (last === '%' && first !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected opening `%`');\n\t}\n\tvar result = [];\n\t$replace$1(string, rePropName, function (match, number, quote, subString) {\n\t\tresult[result.length] = quote ? $replace$1(subString, reEscapeChar, '$1') : number || match;\n\t});\n\treturn result;\n};\n/* end adaptation */\n\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\n\tvar intrinsicName = name;\n\tvar alias;\n\tif (hasOwn$1(LEGACY_ALIASES, intrinsicName)) {\n\t\talias = LEGACY_ALIASES[intrinsicName];\n\t\tintrinsicName = '%' + alias[0] + '%';\n\t}\n\n\tif (hasOwn$1(INTRINSICS, intrinsicName)) {\n\t\tvar value = INTRINSICS[intrinsicName];\n\t\tif (value === needsEval) {\n\t\t\tvalue = doEval(intrinsicName);\n\t\t}\n\t\tif (typeof value === 'undefined' && !allowMissing) {\n\t\t\tthrow new $TypeError$1('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\n\t\t}\n\n\t\treturn {\n\t\t\talias: alias,\n\t\t\tname: intrinsicName,\n\t\t\tvalue: value\n\t\t};\n\t}\n\n\tthrow new $SyntaxError('intrinsic ' + name + ' does not exist!');\n};\n\nvar getIntrinsic = function GetIntrinsic(name, allowMissing) {\n\tif (typeof name !== 'string' || name.length === 0) {\n\t\tthrow new $TypeError$1('intrinsic name must be a non-empty string');\n\t}\n\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\n\t\tthrow new $TypeError$1('\"allowMissing\" argument must be a boolean');\n\t}\n\n\tif ($exec(/^%?[^%]*%?$/, name) === null) {\n\t\tthrow new $SyntaxError('`%` may not be present anywhere but at the beginning and end of the intrinsic name');\n\t}\n\tvar parts = stringToPath(name);\n\tvar intrinsicBaseName = parts.length > 0 ? parts[0] : '';\n\n\tvar intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);\n\tvar intrinsicRealName = intrinsic.name;\n\tvar value = intrinsic.value;\n\tvar skipFurtherCaching = false;\n\n\tvar alias = intrinsic.alias;\n\tif (alias) {\n\t\tintrinsicBaseName = alias[0];\n\t\t$spliceApply(parts, $concat$1([0, 1], alias));\n\t}\n\n\tfor (var i = 1, isOwn = true; i < parts.length; i += 1) {\n\t\tvar part = parts[i];\n\t\tvar first = $strSlice(part, 0, 1);\n\t\tvar last = $strSlice(part, -1);\n\t\tif (\n\t\t\t(\n\t\t\t\t(first === '\"' || first === \"'\" || first === '`')\n\t\t\t\t|| (last === '\"' || last === \"'\" || last === '`')\n\t\t\t)\n\t\t\t&& first !== last\n\t\t) {\n\t\t\tthrow new $SyntaxError('property names with quotes must have matching quotes');\n\t\t}\n\t\tif (part === 'constructor' || !isOwn) {\n\t\t\tskipFurtherCaching = true;\n\t\t}\n\n\t\tintrinsicBaseName += '.' + part;\n\t\tintrinsicRealName = '%' + intrinsicBaseName + '%';\n\n\t\tif (hasOwn$1(INTRINSICS, intrinsicRealName)) {\n\t\t\tvalue = INTRINSICS[intrinsicRealName];\n\t\t} else if (value != null) {\n\t\t\tif (!(part in value)) {\n\t\t\t\tif (!allowMissing) {\n\t\t\t\t\tthrow new $TypeError$1('base intrinsic for ' + name + ' exists, but the property is not available.');\n\t\t\t\t}\n\t\t\t\treturn void undefined$1;\n\t\t\t}\n\t\t\tif ($gOPD && (i + 1) >= parts.length) {\n\t\t\t\tvar desc = $gOPD(value, part);\n\t\t\t\tisOwn = !!desc;\n\n\t\t\t\t// By convention, when a data property is converted to an accessor\n\t\t\t\t// property to emulate a data property that does not suffer from\n\t\t\t\t// the override mistake, that accessor's getter is marked with\n\t\t\t\t// an `originalValue` property. Here, when we detect this, we\n\t\t\t\t// uphold the illusion by pretending to see that original data\n\t\t\t\t// property, i.e., returning the value rather than the getter\n\t\t\t\t// itself.\n\t\t\t\tif (isOwn && 'get' in desc && !('originalValue' in desc.get)) {\n\t\t\t\t\tvalue = desc.get;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = value[part];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tisOwn = hasOwn$1(value, part);\n\t\t\t\tvalue = value[part];\n\t\t\t}\n\n\t\t\tif (isOwn && !skipFurtherCaching) {\n\t\t\t\tINTRINSICS[intrinsicRealName] = value;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n\nvar callBind$1 = {exports: {}};\n\ncallBind$1.exports;\n\n(function (module) {\n\n\tvar bind = functionBind;\n\tvar GetIntrinsic = getIntrinsic;\n\n\tvar $apply = GetIntrinsic('%Function.prototype.apply%');\n\tvar $call = GetIntrinsic('%Function.prototype.call%');\n\tvar $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);\n\n\tvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);\n\tvar $defineProperty = GetIntrinsic('%Object.defineProperty%', true);\n\tvar $max = GetIntrinsic('%Math.max%');\n\n\tif ($defineProperty) {\n\t\ttry {\n\t\t\t$defineProperty({}, 'a', { value: 1 });\n\t\t} catch (e) {\n\t\t\t// IE 8 has a broken defineProperty\n\t\t\t$defineProperty = null;\n\t\t}\n\t}\n\n\tmodule.exports = function callBind(originalFunction) {\n\t\tvar func = $reflectApply(bind, $call, arguments);\n\t\tif ($gOPD && $defineProperty) {\n\t\t\tvar desc = $gOPD(func, 'length');\n\t\t\tif (desc.configurable) {\n\t\t\t\t// original length, plus the receiver, minus any additional arguments (after the receiver)\n\t\t\t\t$defineProperty(\n\t\t\t\t\tfunc,\n\t\t\t\t\t'length',\n\t\t\t\t\t{ value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) }\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\treturn func;\n\t};\n\n\tvar applyBind = function applyBind() {\n\t\treturn $reflectApply(bind, $apply, arguments);\n\t};\n\n\tif ($defineProperty) {\n\t\t$defineProperty(module.exports, 'apply', { value: applyBind });\n\t} else {\n\t\tmodule.exports.apply = applyBind;\n\t} \n} (callBind$1));\n\nvar callBindExports = callBind$1.exports;\n\nvar GetIntrinsic$1 = getIntrinsic;\n\nvar callBind = callBindExports;\n\nvar $indexOf = callBind(GetIntrinsic$1('String.prototype.indexOf'));\n\nvar callBound$1 = function callBoundIntrinsic(name, allowMissing) {\n\tvar intrinsic = GetIntrinsic$1(name, !!allowMissing);\n\tif (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) {\n\t\treturn callBind(intrinsic);\n\t}\n\treturn intrinsic;\n};\n\nvar util_inspect = require$$0$1.inspect;\n\nvar hasMap = typeof Map === 'function' && Map.prototype;\nvar mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, 'size') : null;\nvar mapSize = hasMap && mapSizeDescriptor && typeof mapSizeDescriptor.get === 'function' ? mapSizeDescriptor.get : null;\nvar mapForEach = hasMap && Map.prototype.forEach;\nvar hasSet = typeof Set === 'function' && Set.prototype;\nvar setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, 'size') : null;\nvar setSize = hasSet && setSizeDescriptor && typeof setSizeDescriptor.get === 'function' ? setSizeDescriptor.get : null;\nvar setForEach = hasSet && Set.prototype.forEach;\nvar hasWeakMap = typeof WeakMap === 'function' && WeakMap.prototype;\nvar weakMapHas = hasWeakMap ? WeakMap.prototype.has : null;\nvar hasWeakSet = typeof WeakSet === 'function' && WeakSet.prototype;\nvar weakSetHas = hasWeakSet ? WeakSet.prototype.has : null;\nvar hasWeakRef = typeof WeakRef === 'function' && WeakRef.prototype;\nvar weakRefDeref = hasWeakRef ? WeakRef.prototype.deref : null;\nvar booleanValueOf = Boolean.prototype.valueOf;\nvar objectToString = Object.prototype.toString;\nvar functionToString = Function.prototype.toString;\nvar $match = String.prototype.match;\nvar $slice = String.prototype.slice;\nvar $replace = String.prototype.replace;\nvar $toUpperCase = String.prototype.toUpperCase;\nvar $toLowerCase = String.prototype.toLowerCase;\nvar $test = RegExp.prototype.test;\nvar $concat = Array.prototype.concat;\nvar $join = Array.prototype.join;\nvar $arrSlice = Array.prototype.slice;\nvar $floor = Math.floor;\nvar bigIntValueOf = typeof BigInt === 'function' ? BigInt.prototype.valueOf : null;\nvar gOPS = Object.getOwnPropertySymbols;\nvar symToString = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? Symbol.prototype.toString : null;\nvar hasShammedSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'object';\n// ie, `has-tostringtag/shams\nvar toStringTag = typeof Symbol === 'function' && Symbol.toStringTag && (typeof Symbol.toStringTag === hasShammedSymbols ? 'object' : 'symbol')\n ? Symbol.toStringTag\n : null;\nvar isEnumerable = Object.prototype.propertyIsEnumerable;\n\nvar gPO = (typeof Reflect === 'function' ? Reflect.getPrototypeOf : Object.getPrototypeOf) || (\n [].__proto__ === Array.prototype // eslint-disable-line no-proto\n ? function (O) {\n return O.__proto__; // eslint-disable-line no-proto\n }\n : null\n);\n\nfunction addNumericSeparator(num, str) {\n if (\n num === Infinity\n || num === -Infinity\n || num !== num\n || (num && num > -1000 && num < 1000)\n || $test.call(/e/, str)\n ) {\n return str;\n }\n var sepRegex = /[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;\n if (typeof num === 'number') {\n var int = num < 0 ? -$floor(-num) : $floor(num); // trunc(num)\n if (int !== num) {\n var intStr = String(int);\n var dec = $slice.call(str, intStr.length + 1);\n return $replace.call(intStr, sepRegex, '$&_') + '.' + $replace.call($replace.call(dec, /([0-9]{3})/g, '$&_'), /_$/, '');\n }\n }\n return $replace.call(str, sepRegex, '$&_');\n}\n\nvar utilInspect = util_inspect;\nvar inspectCustom = utilInspect.custom;\nvar inspectSymbol = isSymbol(inspectCustom) ? inspectCustom : null;\n\nvar objectInspect = function inspect_(obj, options, depth, seen) {\n var opts = options || {};\n\n if (has$3(opts, 'quoteStyle') && (opts.quoteStyle !== 'single' && opts.quoteStyle !== 'double')) {\n throw new TypeError('option \"quoteStyle\" must be \"single\" or \"double\"');\n }\n if (\n has$3(opts, 'maxStringLength') && (typeof opts.maxStringLength === 'number'\n ? opts.maxStringLength < 0 && opts.maxStringLength !== Infinity\n : opts.maxStringLength !== null\n )\n ) {\n throw new TypeError('option \"maxStringLength\", if provided, must be a positive integer, Infinity, or `null`');\n }\n var customInspect = has$3(opts, 'customInspect') ? opts.customInspect : true;\n if (typeof customInspect !== 'boolean' && customInspect !== 'symbol') {\n throw new TypeError('option \"customInspect\", if provided, must be `true`, `false`, or `\\'symbol\\'`');\n }\n\n if (\n has$3(opts, 'indent')\n && opts.indent !== null\n && opts.indent !== '\\t'\n && !(parseInt(opts.indent, 10) === opts.indent && opts.indent > 0)\n ) {\n throw new TypeError('option \"indent\" must be \"\\\\t\", an integer > 0, or `null`');\n }\n if (has$3(opts, 'numericSeparator') && typeof opts.numericSeparator !== 'boolean') {\n throw new TypeError('option \"numericSeparator\", if provided, must be `true` or `false`');\n }\n var numericSeparator = opts.numericSeparator;\n\n if (typeof obj === 'undefined') {\n return 'undefined';\n }\n if (obj === null) {\n return 'null';\n }\n if (typeof obj === 'boolean') {\n return obj ? 'true' : 'false';\n }\n\n if (typeof obj === 'string') {\n return inspectString(obj, opts);\n }\n if (typeof obj === 'number') {\n if (obj === 0) {\n return Infinity / obj > 0 ? '0' : '-0';\n }\n var str = String(obj);\n return numericSeparator ? addNumericSeparator(obj, str) : str;\n }\n if (typeof obj === 'bigint') {\n var bigIntStr = String(obj) + 'n';\n return numericSeparator ? addNumericSeparator(obj, bigIntStr) : bigIntStr;\n }\n\n var maxDepth = typeof opts.depth === 'undefined' ? 5 : opts.depth;\n if (typeof depth === 'undefined') { depth = 0; }\n if (depth >= maxDepth && maxDepth > 0 && typeof obj === 'object') {\n return isArray$3(obj) ? '[Array]' : '[Object]';\n }\n\n var indent = getIndent(opts, depth);\n\n if (typeof seen === 'undefined') {\n seen = [];\n } else if (indexOf(seen, obj) >= 0) {\n return '[Circular]';\n }\n\n function inspect(value, from, noIndent) {\n if (from) {\n seen = $arrSlice.call(seen);\n seen.push(from);\n }\n if (noIndent) {\n var newOpts = {\n depth: opts.depth\n };\n if (has$3(opts, 'quoteStyle')) {\n newOpts.quoteStyle = opts.quoteStyle;\n }\n return inspect_(value, newOpts, depth + 1, seen);\n }\n return inspect_(value, opts, depth + 1, seen);\n }\n\n if (typeof obj === 'function' && !isRegExp$1(obj)) { // in older engines, regexes are callable\n var name = nameOf(obj);\n var keys = arrObjKeys(obj, inspect);\n return '[Function' + (name ? ': ' + name : ' (anonymous)') + ']' + (keys.length > 0 ? ' { ' + $join.call(keys, ', ') + ' }' : '');\n }\n if (isSymbol(obj)) {\n var symString = hasShammedSymbols ? $replace.call(String(obj), /^(Symbol\\(.*\\))_[^)]*$/, '$1') : symToString.call(obj);\n return typeof obj === 'object' && !hasShammedSymbols ? markBoxed(symString) : symString;\n }\n if (isElement(obj)) {\n var s = '<' + $toLowerCase.call(String(obj.nodeName));\n var attrs = obj.attributes || [];\n for (var i = 0; i < attrs.length; i++) {\n s += ' ' + attrs[i].name + '=' + wrapQuotes(quote(attrs[i].value), 'double', opts);\n }\n s += '>';\n if (obj.childNodes && obj.childNodes.length) { s += '...'; }\n s += '</' + $toLowerCase.call(String(obj.nodeName)) + '>';\n return s;\n }\n if (isArray$3(obj)) {\n if (obj.length === 0) { return '[]'; }\n var xs = arrObjKeys(obj, inspect);\n if (indent && !singleLineValues(xs)) {\n return '[' + indentedJoin(xs, indent) + ']';\n }\n return '[ ' + $join.call(xs, ', ') + ' ]';\n }\n if (isError(obj)) {\n var parts = arrObjKeys(obj, inspect);\n if (!('cause' in Error.prototype) && 'cause' in obj && !isEnumerable.call(obj, 'cause')) {\n return '{ [' + String(obj) + '] ' + $join.call($concat.call('[cause]: ' + inspect(obj.cause), parts), ', ') + ' }';\n }\n if (parts.length === 0) { return '[' + String(obj) + ']'; }\n return '{ [' + String(obj) + '] ' + $join.call(parts, ', ') + ' }';\n }\n if (typeof obj === 'object' && customInspect) {\n if (inspectSymbol && typeof obj[inspectSymbol] === 'function' && utilInspect) {\n return utilInspect(obj, { depth: maxDepth - depth });\n } else if (customInspect !== 'symbol' && typeof obj.inspect === 'function') {\n return obj.inspect();\n }\n }\n if (isMap(obj)) {\n var mapParts = [];\n if (mapForEach) {\n mapForEach.call(obj, function (value, key) {\n mapParts.push(inspect(key, obj, true) + ' => ' + inspect(value, obj));\n });\n }\n return collectionOf('Map', mapSize.call(obj), mapParts, indent);\n }\n if (isSet(obj)) {\n var setParts = [];\n if (setForEach) {\n setForEach.call(obj, function (value) {\n setParts.push(inspect(value, obj));\n });\n }\n return collectionOf('Set', setSize.call(obj), setParts, indent);\n }\n if (isWeakMap(obj)) {\n return weakCollectionOf('WeakMap');\n }\n if (isWeakSet(obj)) {\n return weakCollectionOf('WeakSet');\n }\n if (isWeakRef(obj)) {\n return weakCollectionOf('WeakRef');\n }\n if (isNumber(obj)) {\n return markBoxed(inspect(Number(obj)));\n }\n if (isBigInt(obj)) {\n return markBoxed(inspect(bigIntValueOf.call(obj)));\n }\n if (isBoolean(obj)) {\n return markBoxed(booleanValueOf.call(obj));\n }\n if (isString(obj)) {\n return markBoxed(inspect(String(obj)));\n }\n if (!isDate(obj) && !isRegExp$1(obj)) {\n var ys = arrObjKeys(obj, inspect);\n var isPlainObject = gPO ? gPO(obj) === Object.prototype : obj instanceof Object || obj.constructor === Object;\n var protoTag = obj instanceof Object ? '' : 'null prototype';\n var stringTag = !isPlainObject && toStringTag && Object(obj) === obj && toStringTag in obj ? $slice.call(toStr(obj), 8, -1) : protoTag ? 'Object' : '';\n var constructorTag = isPlainObject || typeof obj.constructor !== 'function' ? '' : obj.constructor.name ? obj.constructor.name + ' ' : '';\n var tag = constructorTag + (stringTag || protoTag ? '[' + $join.call($concat.call([], stringTag || [], protoTag || []), ': ') + '] ' : '');\n if (ys.length === 0) { return tag + '{}'; }\n if (indent) {\n return tag + '{' + indentedJoin(ys, indent) + '}';\n }\n return tag + '{ ' + $join.call(ys, ', ') + ' }';\n }\n return String(obj);\n};\n\nfunction wrapQuotes(s, defaultStyle, opts) {\n var quoteChar = (opts.quoteStyle || defaultStyle) === 'double' ? '\"' : \"'\";\n return quoteChar + s + quoteChar;\n}\n\nfunction quote(s) {\n return $replace.call(String(s), /\"/g, '"');\n}\n\nfunction isArray$3(obj) { return toStr(obj) === '[object Array]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isDate(obj) { return toStr(obj) === '[object Date]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isRegExp$1(obj) { return toStr(obj) === '[object RegExp]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isError(obj) { return toStr(obj) === '[object Error]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isString(obj) { return toStr(obj) === '[object String]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isNumber(obj) { return toStr(obj) === '[object Number]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isBoolean(obj) { return toStr(obj) === '[object Boolean]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\n\n// Symbol and BigInt do have Symbol.toStringTag by spec, so that can't be used to eliminate false positives\nfunction isSymbol(obj) {\n if (hasShammedSymbols) {\n return obj && typeof obj === 'object' && obj instanceof Symbol;\n }\n if (typeof obj === 'symbol') {\n return true;\n }\n if (!obj || typeof obj !== 'object' || !symToString) {\n return false;\n }\n try {\n symToString.call(obj);\n return true;\n } catch (e) {}\n return false;\n}\n\nfunction isBigInt(obj) {\n if (!obj || typeof obj !== 'object' || !bigIntValueOf) {\n return false;\n }\n try {\n bigIntValueOf.call(obj);\n return true;\n } catch (e) {}\n return false;\n}\n\nvar hasOwn = Object.prototype.hasOwnProperty || function (key) { return key in this; };\nfunction has$3(obj, key) {\n return hasOwn.call(obj, key);\n}\n\nfunction toStr(obj) {\n return objectToString.call(obj);\n}\n\nfunction nameOf(f) {\n if (f.name) { return f.name; }\n var m = $match.call(functionToString.call(f), /^function\\s*([\\w$]+)/);\n if (m) { return m[1]; }\n return null;\n}\n\nfunction indexOf(xs, x) {\n if (xs.indexOf) { return xs.indexOf(x); }\n for (var i = 0, l = xs.length; i < l; i++) {\n if (xs[i] === x) { return i; }\n }\n return -1;\n}\n\nfunction isMap(x) {\n if (!mapSize || !x || typeof x !== 'object') {\n return false;\n }\n try {\n mapSize.call(x);\n try {\n setSize.call(x);\n } catch (s) {\n return true;\n }\n return x instanceof Map; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakMap(x) {\n if (!weakMapHas || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakMapHas.call(x, weakMapHas);\n try {\n weakSetHas.call(x, weakSetHas);\n } catch (s) {\n return true;\n }\n return x instanceof WeakMap; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakRef(x) {\n if (!weakRefDeref || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakRefDeref.call(x);\n return true;\n } catch (e) {}\n return false;\n}\n\nfunction isSet(x) {\n if (!setSize || !x || typeof x !== 'object') {\n return false;\n }\n try {\n setSize.call(x);\n try {\n mapSize.call(x);\n } catch (m) {\n return true;\n }\n return x instanceof Set; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakSet(x) {\n if (!weakSetHas || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakSetHas.call(x, weakSetHas);\n try {\n weakMapHas.call(x, weakMapHas);\n } catch (s) {\n return true;\n }\n return x instanceof WeakSet; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isElement(x) {\n if (!x || typeof x !== 'object') { return false; }\n if (typeof HTMLElement !== 'undefined' && x instanceof HTMLElement) {\n return true;\n }\n return typeof x.nodeName === 'string' && typeof x.getAttribute === 'function';\n}\n\nfunction inspectString(str, opts) {\n if (str.length > opts.maxStringLength) {\n var remaining = str.length - opts.maxStringLength;\n var trailer = '... ' + remaining + ' more character' + (remaining > 1 ? 's' : '');\n return inspectString($slice.call(str, 0, opts.maxStringLength), opts) + trailer;\n }\n // eslint-disable-next-line no-control-regex\n var s = $replace.call($replace.call(str, /(['\\\\])/g, '\\\\$1'), /[\\x00-\\x1f]/g, lowbyte);\n return wrapQuotes(s, 'single', opts);\n}\n\nfunction lowbyte(c) {\n var n = c.charCodeAt(0);\n var x = {\n 8: 'b',\n 9: 't',\n 10: 'n',\n 12: 'f',\n 13: 'r'\n }[n];\n if (x) { return '\\\\' + x; }\n return '\\\\x' + (n < 0x10 ? '0' : '') + $toUpperCase.call(n.toString(16));\n}\n\nfunction markBoxed(str) {\n return 'Object(' + str + ')';\n}\n\nfunction weakCollectionOf(type) {\n return type + ' { ? }';\n}\n\nfunction collectionOf(type, size, entries, indent) {\n var joinedEntries = indent ? indentedJoin(entries, indent) : $join.call(entries, ', ');\n return type + ' (' + size + ') {' + joinedEntries + '}';\n}\n\nfunction singleLineValues(xs) {\n for (var i = 0; i < xs.length; i++) {\n if (indexOf(xs[i], '\\n') >= 0) {\n return false;\n }\n }\n return true;\n}\n\nfunction getIndent(opts, depth) {\n var baseIndent;\n if (opts.indent === '\\t') {\n baseIndent = '\\t';\n } else if (typeof opts.indent === 'number' && opts.indent > 0) {\n baseIndent = $join.call(Array(opts.indent + 1), ' ');\n } else {\n return null;\n }\n return {\n base: baseIndent,\n prev: $join.call(Array(depth + 1), baseIndent)\n };\n}\n\nfunction indentedJoin(xs, indent) {\n if (xs.length === 0) { return ''; }\n var lineJoiner = '\\n' + indent.prev + indent.base;\n return lineJoiner + $join.call(xs, ',' + lineJoiner) + '\\n' + indent.prev;\n}\n\nfunction arrObjKeys(obj, inspect) {\n var isArr = isArray$3(obj);\n var xs = [];\n if (isArr) {\n xs.length = obj.length;\n for (var i = 0; i < obj.length; i++) {\n xs[i] = has$3(obj, i) ? inspect(obj[i], obj) : '';\n }\n }\n var syms = typeof gOPS === 'function' ? gOPS(obj) : [];\n var symMap;\n if (hasShammedSymbols) {\n symMap = {};\n for (var k = 0; k < syms.length; k++) {\n symMap['$' + syms[k]] = syms[k];\n }\n }\n\n for (var key in obj) { // eslint-disable-line no-restricted-syntax\n if (!has$3(obj, key)) { continue; } // eslint-disable-line no-restricted-syntax, no-continue\n if (isArr && String(Number(key)) === key && key < obj.length) { continue; } // eslint-disable-line no-restricted-syntax, no-continue\n if (hasShammedSymbols && symMap['$' + key] instanceof Symbol) {\n // this is to prevent shammed Symbols, which are stored as strings, from being included in the string key section\n continue; // eslint-disable-line no-restricted-syntax, no-continue\n } else if ($test.call(/[^\\w$]/, key)) {\n xs.push(inspect(key, obj) + ': ' + inspect(obj[key], obj));\n } else {\n xs.push(key + ': ' + inspect(obj[key], obj));\n }\n }\n if (typeof gOPS === 'function') {\n for (var j = 0; j < syms.length; j++) {\n if (isEnumerable.call(obj, syms[j])) {\n xs.push('[' + inspect(syms[j]) + ']: ' + inspect(obj[syms[j]], obj));\n }\n }\n }\n return xs;\n}\n\nvar GetIntrinsic = getIntrinsic;\nvar callBound = callBound$1;\nvar inspect = objectInspect;\n\nvar $TypeError = GetIntrinsic('%TypeError%');\nvar $WeakMap = GetIntrinsic('%WeakMap%', true);\nvar $Map = GetIntrinsic('%Map%', true);\n\nvar $weakMapGet = callBound('WeakMap.prototype.get', true);\nvar $weakMapSet = callBound('WeakMap.prototype.set', true);\nvar $weakMapHas = callBound('WeakMap.prototype.has', true);\nvar $mapGet = callBound('Map.prototype.get', true);\nvar $mapSet = callBound('Map.prototype.set', true);\nvar $mapHas = callBound('Map.prototype.has', true);\n\n/*\n * This function traverses the list returning the node corresponding to the\n * given key.\n *\n * That node is also moved to the head of the list, so that if it's accessed\n * again we don't need to traverse the whole list. By doing so, all the recently\n * used nodes can be accessed relatively quickly.\n */\nvar listGetNode = function (list, key) { // eslint-disable-line consistent-return\n\tfor (var prev = list, curr; (curr = prev.next) !== null; prev = curr) {\n\t\tif (curr.key === key) {\n\t\t\tprev.next = curr.next;\n\t\t\tcurr.next = list.next;\n\t\t\tlist.next = curr; // eslint-disable-line no-param-reassign\n\t\t\treturn curr;\n\t\t}\n\t}\n};\n\nvar listGet = function (objects, key) {\n\tvar node = listGetNode(objects, key);\n\treturn node && node.value;\n};\nvar listSet = function (objects, key, value) {\n\tvar node = listGetNode(objects, key);\n\tif (node) {\n\t\tnode.value = value;\n\t} else {\n\t\t// Prepend the new node to the beginning of the list\n\t\tobjects.next = { // eslint-disable-line no-param-reassign\n\t\t\tkey: key,\n\t\t\tnext: objects.next,\n\t\t\tvalue: value\n\t\t};\n\t}\n};\nvar listHas = function (objects, key) {\n\treturn !!listGetNode(objects, key);\n};\n\nvar sideChannel = function getSideChannel() {\n\tvar $wm;\n\tvar $m;\n\tvar $o;\n\tvar channel = {\n\t\tassert: function (key) {\n\t\t\tif (!channel.has(key)) {\n\t\t\t\tthrow new $TypeError('Side channel does not contain ' + inspect(key));\n\t\t\t}\n\t\t},\n\t\tget: function (key) { // eslint-disable-line consistent-return\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif ($wm) {\n\t\t\t\t\treturn $weakMapGet($wm, key);\n\t\t\t\t}\n\t\t\t} else if ($Map) {\n\t\t\t\tif ($m) {\n\t\t\t\t\treturn $mapGet($m, key);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif ($o) { // eslint-disable-line no-lonely-if\n\t\t\t\t\treturn listGet($o, key);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\thas: function (key) {\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif ($wm) {\n\t\t\t\t\treturn $weakMapHas($wm, key);\n\t\t\t\t}\n\t\t\t} else if ($Map) {\n\t\t\t\tif ($m) {\n\t\t\t\t\treturn $mapHas($m, key);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif ($o) { // eslint-disable-line no-lonely-if\n\t\t\t\t\treturn listHas($o, key);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t},\n\t\tset: function (key, value) {\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif (!$wm) {\n\t\t\t\t\t$wm = new $WeakMap();\n\t\t\t\t}\n\t\t\t\t$weakMapSet($wm, key, value);\n\t\t\t} else if ($Map) {\n\t\t\t\tif (!$m) {\n\t\t\t\t\t$m = new $Map();\n\t\t\t\t}\n\t\t\t\t$mapSet($m, key, value);\n\t\t\t} else {\n\t\t\t\tif (!$o) {\n\t\t\t\t\t/*\n\t\t\t\t\t * Initialize the linked list as an empty node, so that we don't have\n\t\t\t\t\t * to special-case handling of the first node: we can always refer to\n\t\t\t\t\t * it as (previous node).next, instead of something like (list).head\n\t\t\t\t\t */\n\t\t\t\t\t$o = { key: {}, next: null };\n\t\t\t\t}\n\t\t\t\tlistSet($o, key, value);\n\t\t\t}\n\t\t}\n\t};\n\treturn channel;\n};\n\nvar replace = String.prototype.replace;\nvar percentTwenties = /%20/g;\n\nvar Format = {\n RFC1738: 'RFC1738',\n RFC3986: 'RFC3986'\n};\n\nvar formats$3 = {\n 'default': Format.RFC3986,\n formatters: {\n RFC1738: function (value) {\n return replace.call(value, percentTwenties, '+');\n },\n RFC3986: function (value) {\n return String(value);\n }\n },\n RFC1738: Format.RFC1738,\n RFC3986: Format.RFC3986\n};\n\nvar formats$2 = formats$3;\n\nvar has$2 = Object.prototype.hasOwnProperty;\nvar isArray$2 = Array.isArray;\n\nvar hexTable = (function () {\n var array = [];\n for (var i = 0; i < 256; ++i) {\n array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase());\n }\n\n return array;\n}());\n\nvar compactQueue = function compactQueue(queue) {\n while (queue.length > 1) {\n var item = queue.pop();\n var obj = item.obj[item.prop];\n\n if (isArray$2(obj)) {\n var compacted = [];\n\n for (var j = 0; j < obj.length; ++j) {\n if (typeof obj[j] !== 'undefined') {\n compacted.push(obj[j]);\n }\n }\n\n item.obj[item.prop] = compacted;\n }\n }\n};\n\nvar arrayToObject = function arrayToObject(source, options) {\n var obj = options && options.plainObjects ? Object.create(null) : {};\n for (var i = 0; i < source.length; ++i) {\n if (typeof source[i] !== 'undefined') {\n obj[i] = source[i];\n }\n }\n\n return obj;\n};\n\nvar merge = function merge(target, source, options) {\n /* eslint no-param-reassign: 0 */\n if (!source) {\n return target;\n }\n\n if (typeof source !== 'object') {\n if (isArray$2(target)) {\n target.push(source);\n } else if (target && typeof target === 'object') {\n if ((options && (options.plainObjects || options.allowPrototypes)) || !has$2.call(Object.prototype, source)) {\n target[source] = true;\n }\n } else {\n return [target, source];\n }\n\n return target;\n }\n\n if (!target || typeof target !== 'object') {\n return [target].concat(source);\n }\n\n var mergeTarget = target;\n if (isArray$2(target) && !isArray$2(source)) {\n mergeTarget = arrayToObject(target, options);\n }\n\n if (isArray$2(target) && isArray$2(source)) {\n source.forEach(function (item, i) {\n if (has$2.call(target, i)) {\n var targetItem = target[i];\n if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') {\n target[i] = merge(targetItem, item, options);\n } else {\n target.push(item);\n }\n } else {\n target[i] = item;\n }\n });\n return target;\n }\n\n return Object.keys(source).reduce(function (acc, key) {\n var value = source[key];\n\n if (has$2.call(acc, key)) {\n acc[key] = merge(acc[key], value, options);\n } else {\n acc[key] = value;\n }\n return acc;\n }, mergeTarget);\n};\n\nvar assign = function assignSingleSource(target, source) {\n return Object.keys(source).reduce(function (acc, key) {\n acc[key] = source[key];\n return acc;\n }, target);\n};\n\nvar decode = function (str, decoder, charset) {\n var strWithoutPlus = str.replace(/\\+/g, ' ');\n if (charset === 'iso-8859-1') {\n // unescape never throws, no try...catch needed:\n return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape);\n }\n // utf-8\n try {\n return decodeURIComponent(strWithoutPlus);\n } catch (e) {\n return strWithoutPlus;\n }\n};\n\nvar encode = function encode(str, defaultEncoder, charset, kind, format) {\n // This code was originally written by Brian White (mscdex) for the io.js core querystring library.\n // It has been adapted here for stricter adherence to RFC 3986\n if (str.length === 0) {\n return str;\n }\n\n var string = str;\n if (typeof str === 'symbol') {\n string = Symbol.prototype.toString.call(str);\n } else if (typeof str !== 'string') {\n string = String(str);\n }\n\n if (charset === 'iso-8859-1') {\n return escape(string).replace(/%u[0-9a-f]{4}/gi, function ($0) {\n return '%26%23' + parseInt($0.slice(2), 16) + '%3B';\n });\n }\n\n var out = '';\n for (var i = 0; i < string.length; ++i) {\n var c = string.charCodeAt(i);\n\n if (\n c === 0x2D // -\n || c === 0x2E // .\n || c === 0x5F // _\n || c === 0x7E // ~\n || (c >= 0x30 && c <= 0x39) // 0-9\n || (c >= 0x41 && c <= 0x5A) // a-z\n || (c >= 0x61 && c <= 0x7A) // A-Z\n || (format === formats$2.RFC1738 && (c === 0x28 || c === 0x29)) // ( )\n ) {\n out += string.charAt(i);\n continue;\n }\n\n if (c < 0x80) {\n out = out + hexTable[c];\n continue;\n }\n\n if (c < 0x800) {\n out = out + (hexTable[0xC0 | (c >> 6)] + hexTable[0x80 | (c & 0x3F)]);\n continue;\n }\n\n if (c < 0xD800 || c >= 0xE000) {\n out = out + (hexTable[0xE0 | (c >> 12)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]);\n continue;\n }\n\n i += 1;\n c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF));\n /* eslint operator-linebreak: [2, \"before\"] */\n out += hexTable[0xF0 | (c >> 18)]\n + hexTable[0x80 | ((c >> 12) & 0x3F)]\n + hexTable[0x80 | ((c >> 6) & 0x3F)]\n + hexTable[0x80 | (c & 0x3F)];\n }\n\n return out;\n};\n\nvar compact = function compact(value) {\n var queue = [{ obj: { o: value }, prop: 'o' }];\n var refs = [];\n\n for (var i = 0; i < queue.length; ++i) {\n var item = queue[i];\n var obj = item.obj[item.prop];\n\n var keys = Object.keys(obj);\n for (var j = 0; j < keys.length; ++j) {\n var key = keys[j];\n var val = obj[key];\n if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {\n queue.push({ obj: obj, prop: key });\n refs.push(val);\n }\n }\n }\n\n compactQueue(queue);\n\n return value;\n};\n\nvar isRegExp = function isRegExp(obj) {\n return Object.prototype.toString.call(obj) === '[object RegExp]';\n};\n\nvar isBuffer = function isBuffer(obj) {\n if (!obj || typeof obj !== 'object') {\n return false;\n }\n\n return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));\n};\n\nvar combine = function combine(a, b) {\n return [].concat(a, b);\n};\n\nvar maybeMap = function maybeMap(val, fn) {\n if (isArray$2(val)) {\n var mapped = [];\n for (var i = 0; i < val.length; i += 1) {\n mapped.push(fn(val[i]));\n }\n return mapped;\n }\n return fn(val);\n};\n\nvar utils$2 = {\n arrayToObject: arrayToObject,\n assign: assign,\n combine: combine,\n compact: compact,\n decode: decode,\n encode: encode,\n isBuffer: isBuffer,\n isRegExp: isRegExp,\n maybeMap: maybeMap,\n merge: merge\n};\n\nvar getSideChannel = sideChannel;\nvar utils$1 = utils$2;\nvar formats$1 = formats$3;\nvar has$1 = Object.prototype.hasOwnProperty;\n\nvar arrayPrefixGenerators = {\n brackets: function brackets(prefix) {\n return prefix + '[]';\n },\n comma: 'comma',\n indices: function indices(prefix, key) {\n return prefix + '[' + key + ']';\n },\n repeat: function repeat(prefix) {\n return prefix;\n }\n};\n\nvar isArray$1 = Array.isArray;\nvar push = Array.prototype.push;\nvar pushToArray = function (arr, valueOrArray) {\n push.apply(arr, isArray$1(valueOrArray) ? valueOrArray : [valueOrArray]);\n};\n\nvar toISO = Date.prototype.toISOString;\n\nvar defaultFormat = formats$1['default'];\nvar defaults$1 = {\n addQueryPrefix: false,\n allowDots: false,\n charset: 'utf-8',\n charsetSentinel: false,\n delimiter: '&',\n encode: true,\n encoder: utils$1.encode,\n encodeValuesOnly: false,\n format: defaultFormat,\n formatter: formats$1.formatters[defaultFormat],\n // deprecated\n indices: false,\n serializeDate: function serializeDate(date) {\n return toISO.call(date);\n },\n skipNulls: false,\n strictNullHandling: false\n};\n\nvar isNonNullishPrimitive = function isNonNullishPrimitive(v) {\n return typeof v === 'string'\n || typeof v === 'number'\n || typeof v === 'boolean'\n || typeof v === 'symbol'\n || typeof v === 'bigint';\n};\n\nvar sentinel = {};\n\nvar stringify$1 = function stringify(\n object,\n prefix,\n generateArrayPrefix,\n commaRoundTrip,\n strictNullHandling,\n skipNulls,\n encoder,\n filter,\n sort,\n allowDots,\n serializeDate,\n format,\n formatter,\n encodeValuesOnly,\n charset,\n sideChannel\n) {\n var obj = object;\n\n var tmpSc = sideChannel;\n var step = 0;\n var findFlag = false;\n while ((tmpSc = tmpSc.get(sentinel)) !== void undefined && !findFlag) {\n // Where object last appeared in the ref tree\n var pos = tmpSc.get(object);\n step += 1;\n if (typeof pos !== 'undefined') {\n if (pos === step) {\n throw new RangeError('Cyclic object value');\n } else {\n findFlag = true; // Break while\n }\n }\n if (typeof tmpSc.get(sentinel) === 'undefined') {\n step = 0;\n }\n }\n\n if (typeof filter === 'function') {\n obj = filter(prefix, obj);\n } else if (obj instanceof Date) {\n obj = serializeDate(obj);\n } else if (generateArrayPrefix === 'comma' && isArray$1(obj)) {\n obj = utils$1.maybeMap(obj, function (value) {\n if (value instanceof Date) {\n return serializeDate(value);\n }\n return value;\n });\n }\n\n if (obj === null) {\n if (strictNullHandling) {\n return encoder && !encodeValuesOnly ? encoder(prefix, defaults$1.encoder, charset, 'key', format) : prefix;\n }\n\n obj = '';\n }\n\n if (isNonNullishPrimitive(obj) || utils$1.isBuffer(obj)) {\n if (encoder) {\n var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults$1.encoder, charset, 'key', format);\n return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults$1.encoder, charset, 'value', format))];\n }\n return [formatter(prefix) + '=' + formatter(String(obj))];\n }\n\n var values = [];\n\n if (typeof obj === 'undefined') {\n return values;\n }\n\n var objKeys;\n if (generateArrayPrefix === 'comma' && isArray$1(obj)) {\n // we need to join elements in\n if (encodeValuesOnly && encoder) {\n obj = utils$1.maybeMap(obj, encoder);\n }\n objKeys = [{ value: obj.length > 0 ? obj.join(',') || null : void undefined }];\n } else if (isArray$1(filter)) {\n objKeys = filter;\n } else {\n var keys = Object.keys(obj);\n objKeys = sort ? keys.sort(sort) : keys;\n }\n\n var adjustedPrefix = commaRoundTrip && isArray$1(obj) && obj.length === 1 ? prefix + '[]' : prefix;\n\n for (var j = 0; j < objKeys.length; ++j) {\n var key = objKeys[j];\n var value = typeof key === 'object' && typeof key.value !== 'undefined' ? key.value : obj[key];\n\n if (skipNulls && value === null) {\n continue;\n }\n\n var keyPrefix = isArray$1(obj)\n ? typeof generateArrayPrefix === 'function' ? generateArrayPrefix(adjustedPrefix, key) : adjustedPrefix\n : adjustedPrefix + (allowDots ? '.' + key : '[' + key + ']');\n\n sideChannel.set(object, step);\n var valueSideChannel = getSideChannel();\n valueSideChannel.set(sentinel, sideChannel);\n pushToArray(values, stringify(\n value,\n keyPrefix,\n generateArrayPrefix,\n commaRoundTrip,\n strictNullHandling,\n skipNulls,\n generateArrayPrefix === 'comma' && encodeValuesOnly && isArray$1(obj) ? null : encoder,\n filter,\n sort,\n allowDots,\n serializeDate,\n format,\n formatter,\n encodeValuesOnly,\n charset,\n valueSideChannel\n ));\n }\n\n return values;\n};\n\nvar normalizeStringifyOptions = function normalizeStringifyOptions(opts) {\n if (!opts) {\n return defaults$1;\n }\n\n if (opts.encoder !== null && typeof opts.encoder !== 'undefined' && typeof opts.encoder !== 'function') {\n throw new TypeError('Encoder has to be a function.');\n }\n\n var charset = opts.charset || defaults$1.charset;\n if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {\n throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');\n }\n\n var format = formats$1['default'];\n if (typeof opts.format !== 'undefined') {\n if (!has$1.call(formats$1.formatters, opts.format)) {\n throw new TypeError('Unknown format option provided.');\n }\n format = opts.format;\n }\n var formatter = formats$1.formatters[format];\n\n var filter = defaults$1.filter;\n if (typeof opts.filter === 'function' || isArray$1(opts.filter)) {\n filter = opts.filter;\n }\n\n return {\n addQueryPrefix: typeof opts.addQueryPrefix === 'boolean' ? opts.addQueryPrefix : defaults$1.addQueryPrefix,\n allowDots: typeof opts.allowDots === 'undefined' ? defaults$1.allowDots : !!opts.allowDots,\n charset: charset,\n charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults$1.charsetSentinel,\n delimiter: typeof opts.delimiter === 'undefined' ? defaults$1.delimiter : opts.delimiter,\n encode: typeof opts.encode === 'boolean' ? opts.encode : defaults$1.encode,\n encoder: typeof opts.encoder === 'function' ? opts.encoder : defaults$1.encoder,\n encodeValuesOnly: typeof opts.encodeValuesOnly === 'boolean' ? opts.encodeValuesOnly : defaults$1.encodeValuesOnly,\n filter: filter,\n format: format,\n formatter: formatter,\n serializeDate: typeof opts.serializeDate === 'function' ? opts.serializeDate : defaults$1.serializeDate,\n skipNulls: typeof opts.skipNulls === 'boolean' ? opts.skipNulls : defaults$1.skipNulls,\n sort: typeof opts.sort === 'function' ? opts.sort : null,\n strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults$1.strictNullHandling\n };\n};\n\nvar stringify_1 = function (object, opts) {\n var obj = object;\n var options = normalizeStringifyOptions(opts);\n\n var objKeys;\n var filter;\n\n if (typeof options.filter === 'function') {\n filter = options.filter;\n obj = filter('', obj);\n } else if (isArray$1(options.filter)) {\n filter = options.filter;\n objKeys = filter;\n }\n\n var keys = [];\n\n if (typeof obj !== 'object' || obj === null) {\n return '';\n }\n\n var arrayFormat;\n if (opts && opts.arrayFormat in arrayPrefixGenerators) {\n arrayFormat = opts.arrayFormat;\n } else if (opts && 'indices' in opts) {\n arrayFormat = opts.indices ? 'indices' : 'repeat';\n } else {\n arrayFormat = 'indices';\n }\n\n var generateArrayPrefix = arrayPrefixGenerators[arrayFormat];\n if (opts && 'commaRoundTrip' in opts && typeof opts.commaRoundTrip !== 'boolean') {\n throw new TypeError('`commaRoundTrip` must be a boolean, or absent');\n }\n var commaRoundTrip = generateArrayPrefix === 'comma' && opts && opts.commaRoundTrip;\n\n if (!objKeys) {\n objKeys = Object.keys(obj);\n }\n\n if (options.sort) {\n objKeys.sort(options.sort);\n }\n\n var sideChannel = getSideChannel();\n for (var i = 0; i < objKeys.length; ++i) {\n var key = objKeys[i];\n\n if (options.skipNulls && obj[key] === null) {\n continue;\n }\n pushToArray(keys, stringify$1(\n obj[key],\n key,\n generateArrayPrefix,\n commaRoundTrip,\n options.strictNullHandling,\n options.skipNulls,\n options.encode ? options.encoder : null,\n options.filter,\n options.sort,\n options.allowDots,\n options.serializeDate,\n options.format,\n options.formatter,\n options.encodeValuesOnly,\n options.charset,\n sideChannel\n ));\n }\n\n var joined = keys.join(options.delimiter);\n var prefix = options.addQueryPrefix === true ? '?' : '';\n\n if (options.charsetSentinel) {\n if (options.charset === 'iso-8859-1') {\n // encodeURIComponent('✓'), the \"numeric entity\" representation of a checkmark\n prefix += 'utf8=%26%2310003%3B&';\n } else {\n // encodeURIComponent('✓')\n prefix += 'utf8=%E2%9C%93&';\n }\n }\n\n return joined.length > 0 ? prefix + joined : '';\n};\n\nvar utils = utils$2;\n\nvar has = Object.prototype.hasOwnProperty;\nvar isArray = Array.isArray;\n\nvar defaults = {\n allowDots: false,\n allowPrototypes: false,\n allowSparse: false,\n arrayLimit: 20,\n charset: 'utf-8',\n charsetSentinel: false,\n comma: false,\n decoder: utils.decode,\n delimiter: '&',\n depth: 5,\n ignoreQueryPrefix: false,\n interpretNumericEntities: false,\n parameterLimit: 1000,\n parseArrays: true,\n plainObjects: false,\n strictNullHandling: false\n};\n\nvar interpretNumericEntities = function (str) {\n return str.replace(/&#(\\d+);/g, function ($0, numberStr) {\n return String.fromCharCode(parseInt(numberStr, 10));\n });\n};\n\nvar parseArrayValue = function (val, options) {\n if (val && typeof val === 'string' && options.comma && val.indexOf(',') > -1) {\n return val.split(',');\n }\n\n return val;\n};\n\n// This is what browsers will submit when the ✓ character occurs in an\n// application/x-www-form-urlencoded body and the encoding of the page containing\n// the form is iso-8859-1, or when the submitted form has an accept-charset\n// attribute of iso-8859-1. Presumably also with other charsets that do not contain\n// the ✓ character, such as us-ascii.\nvar isoSentinel = 'utf8=%26%2310003%3B'; // encodeURIComponent('✓')\n\n// These are the percent-encoded utf-8 octets representing a checkmark, indicating that the request actually is utf-8 encoded.\nvar charsetSentinel = 'utf8=%E2%9C%93'; // encodeURIComponent('✓')\n\nvar parseValues = function parseQueryStringValues(str, options) {\n var obj = { __proto__: null };\n\n var cleanStr = options.ignoreQueryPrefix ? str.replace(/^\\?/, '') : str;\n var limit = options.parameterLimit === Infinity ? undefined : options.parameterLimit;\n var parts = cleanStr.split(options.delimiter, limit);\n var skipIndex = -1; // Keep track of where the utf8 sentinel was found\n var i;\n\n var charset = options.charset;\n if (options.charsetSentinel) {\n for (i = 0; i < parts.length; ++i) {\n if (parts[i].indexOf('utf8=') === 0) {\n if (parts[i] === charsetSentinel) {\n charset = 'utf-8';\n } else if (parts[i] === isoSentinel) {\n charset = 'iso-8859-1';\n }\n skipIndex = i;\n i = parts.length; // The eslint settings do not allow break;\n }\n }\n }\n\n for (i = 0; i < parts.length; ++i) {\n if (i === skipIndex) {\n continue;\n }\n var part = parts[i];\n\n var bracketEqualsPos = part.indexOf(']=');\n var pos = bracketEqualsPos === -1 ? part.indexOf('=') : bracketEqualsPos + 1;\n\n var key, val;\n if (pos === -1) {\n key = options.decoder(part, defaults.decoder, charset, 'key');\n val = options.strictNullHandling ? null : '';\n } else {\n key = options.decoder(part.slice(0, pos), defaults.decoder, charset, 'key');\n val = utils.maybeMap(\n parseArrayValue(part.slice(pos + 1), options),\n function (encodedVal) {\n return options.decoder(encodedVal, defaults.decoder, charset, 'value');\n }\n );\n }\n\n if (val && options.interpretNumericEntities && charset === 'iso-8859-1') {\n val = interpretNumericEntities(val);\n }\n\n if (part.indexOf('[]=') > -1) {\n val = isArray(val) ? [val] : val;\n }\n\n if (has.call(obj, key)) {\n obj[key] = utils.combine(obj[key], val);\n } else {\n obj[key] = val;\n }\n }\n\n return obj;\n};\n\nvar parseObject = function (chain, val, options, valuesParsed) {\n var leaf = valuesParsed ? val : parseArrayValue(val, options);\n\n for (var i = chain.length - 1; i >= 0; --i) {\n var obj;\n var root = chain[i];\n\n if (root === '[]' && options.parseArrays) {\n obj = [].concat(leaf);\n } else {\n obj = options.plainObjects ? Object.create(null) : {};\n var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root;\n var index = parseInt(cleanRoot, 10);\n if (!options.parseArrays && cleanRoot === '') {\n obj = { 0: leaf };\n } else if (\n !isNaN(index)\n && root !== cleanRoot\n && String(index) === cleanRoot\n && index >= 0\n && (options.parseArrays && index <= options.arrayLimit)\n ) {\n obj = [];\n obj[index] = leaf;\n } else if (cleanRoot !== '__proto__') {\n obj[cleanRoot] = leaf;\n }\n }\n\n leaf = obj;\n }\n\n return leaf;\n};\n\nvar parseKeys = function parseQueryStringKeys(givenKey, val, options, valuesParsed) {\n if (!givenKey) {\n return;\n }\n\n // Transform dot notation to bracket notation\n var key = options.allowDots ? givenKey.replace(/\\.([^.[]+)/g, '[$1]') : givenKey;\n\n // The regex chunks\n\n var brackets = /(\\[[^[\\]]*])/;\n var child = /(\\[[^[\\]]*])/g;\n\n // Get the parent\n\n var segment = options.depth > 0 && brackets.exec(key);\n var parent = segment ? key.slice(0, segment.index) : key;\n\n // Stash the parent if it exists\n\n var keys = [];\n if (parent) {\n // If we aren't using plain objects, optionally prefix keys that would overwrite object prototype properties\n if (!options.plainObjects && has.call(Object.prototype, parent)) {\n if (!options.allowPrototypes) {\n return;\n }\n }\n\n keys.push(parent);\n }\n\n // Loop through children appending to the array until we hit depth\n\n var i = 0;\n while (options.depth > 0 && (segment = child.exec(key)) !== null && i < options.depth) {\n i += 1;\n if (!options.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) {\n if (!options.allowPrototypes) {\n return;\n }\n }\n keys.push(segment[1]);\n }\n\n // If there's a remainder, just add whatever is left\n\n if (segment) {\n keys.push('[' + key.slice(segment.index) + ']');\n }\n\n return parseObject(keys, val, options, valuesParsed);\n};\n\nvar normalizeParseOptions = function normalizeParseOptions(opts) {\n if (!opts) {\n return defaults;\n }\n\n if (opts.decoder !== null && opts.decoder !== undefined && typeof opts.decoder !== 'function') {\n throw new TypeError('Decoder has to be a function.');\n }\n\n if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {\n throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');\n }\n var charset = typeof opts.charset === 'undefined' ? defaults.charset : opts.charset;\n\n return {\n allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,\n allowPrototypes: typeof opts.allowPrototypes === 'boolean' ? opts.allowPrototypes : defaults.allowPrototypes,\n allowSparse: typeof opts.allowSparse === 'boolean' ? opts.allowSparse : defaults.allowSparse,\n arrayLimit: typeof opts.arrayLimit === 'number' ? opts.arrayLimit : defaults.arrayLimit,\n charset: charset,\n charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,\n comma: typeof opts.comma === 'boolean' ? opts.comma : defaults.comma,\n decoder: typeof opts.decoder === 'function' ? opts.decoder : defaults.decoder,\n delimiter: typeof opts.delimiter === 'string' || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults.delimiter,\n // eslint-disable-next-line no-implicit-coercion, no-extra-parens\n depth: (typeof opts.depth === 'number' || opts.depth === false) ? +opts.depth : defaults.depth,\n ignoreQueryPrefix: opts.ignoreQueryPrefix === true,\n interpretNumericEntities: typeof opts.interpretNumericEntities === 'boolean' ? opts.interpretNumericEntities : defaults.interpretNumericEntities,\n parameterLimit: typeof opts.parameterLimit === 'number' ? opts.parameterLimit : defaults.parameterLimit,\n parseArrays: opts.parseArrays !== false,\n plainObjects: typeof opts.plainObjects === 'boolean' ? opts.plainObjects : defaults.plainObjects,\n strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling\n };\n};\n\nvar parse$1 = function (str, opts) {\n var options = normalizeParseOptions(opts);\n\n if (str === '' || str === null || typeof str === 'undefined') {\n return options.plainObjects ? Object.create(null) : {};\n }\n\n var tempObj = typeof str === 'string' ? parseValues(str, options) : str;\n var obj = options.plainObjects ? Object.create(null) : {};\n\n // Iterate over the keys and setup the new object\n\n var keys = Object.keys(tempObj);\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n var newObj = parseKeys(key, tempObj[key], options, typeof str === 'string');\n obj = utils.merge(obj, newObj, options);\n }\n\n if (options.allowSparse === true) {\n return obj;\n }\n\n return utils.compact(obj);\n};\n\nvar stringify = stringify_1;\nvar parse = parse$1;\nvar formats = formats$3;\n\nvar lib = {\n formats: formats,\n parse: parse,\n stringify: stringify\n};\n\nvar qs = /*@__PURE__*/getDefaultExportFromCjs(lib);\n\nvar fetch = function fetch(params) {\n var serializedParams = qs.stringify(keysToSnakeCase(params), {\n arrayFormat: \"brackets\",\n encode: false\n });\n return axios.get(\"\".concat(BASE_URL, \"/teams?\").concat(serializedParams));\n};\nvar fetchCountsPerCategory = function fetchCountsPerCategory() {\n return axios.get(\"\".concat(BASE_URL, \"/teams/counts_per_category\"));\n};\nvar create = function create(payload) {\n return axios.post(\"\".concat(BASE_URL, \"/teams\"), payload);\n};\nvar update = function update(id, payload) {\n return axios.put(\"\".concat(BASE_URL, \"/teams/\").concat(id), {\n team: payload\n });\n};\nvar bulkUpdate = function bulkUpdate(payload) {\n return axios.patch(\"\".concat(BASE_URL, \"/teams/bulk_update\"), payload);\n};\nvar fetchFilterOptions = function fetchFilterOptions(params) {\n return axios.get(\"\".concat(BASE_URL, \"/teams/filter_options\"), {\n params: keysToSnakeCase(params)\n });\n};\nvar creationStatus = function creationStatus(jobId) {\n return axios.get(\"\".concat(BASE_URL, \"/teams/creation_status/\").concat(jobId));\n};\nvar teamsApi = {\n bulkUpdate: bulkUpdate,\n create: create,\n fetch: fetch,\n update: update,\n fetchFilterOptions: fetchFilterOptions,\n fetchCountsPerCategory: fetchCountsPerCategory,\n creationStatus: creationStatus\n};\n\nvar _excluded$2 = [\"onSuccess\"],\n _excluded2$1 = [\"onSuccess\"];\nfunction ownKeys$a(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$a(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$a(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$a(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar useFetchMembers = function useFetchMembers() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return useQuery(_objectSpread$a(_objectSpread$a({\n queryKey: [QUERY_KEYS.TEAMS, params],\n queryFn: function queryFn() {\n return teamsApi.fetch(params);\n },\n select: identity,\n placeholderData: keepPreviousData\n }, options), {}, {\n refetchOnWindowFocus: false\n }));\n};\nvar useFetchMembersCountsPerCategory = function useFetchMembersCountsPerCategory() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return useQuery(_objectSpread$a(_objectSpread$a({\n queryKey: [QUERY_KEYS.TEAMS],\n queryFn: teamsApi.fetchCountsPerCategory,\n select: identity,\n placeholderData: keepPreviousData\n }, options), {}, {\n refetchOnWindowFocus: false\n }));\n};\nvar useCreateMember = function useCreateMember() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return useMutation(_objectSpread$a({\n mutationFn: teamsApi.create\n }, options));\n};\nvar useUpdateMember = function useUpdateMember(_ref) {\n var _onSuccess = _ref.onSuccess,\n options = _objectWithoutProperties(_ref, _excluded$2);\n return useMutationWithInvalidation(function (_ref2) {\n var id = _ref2.id,\n payload = _ref2.payload;\n return teamsApi.update(id, payload);\n }, _objectSpread$a({\n keysToInvalidate: [[QUERY_KEYS.TEAMS], [QUERY_KEYS.TEAMS_DEPENDENCIES]],\n onSuccess: function onSuccess() {\n _onSuccess === null || _onSuccess === void 0 || _onSuccess();\n }\n }, options));\n};\nvar useBulkUpdateMembers = function useBulkUpdateMembers(_ref3) {\n var _onSuccess2 = _ref3.onSuccess,\n options = _objectWithoutProperties(_ref3, _excluded2$1);\n return useMutationWithInvalidation(teamsApi.bulkUpdate, _objectSpread$a({\n keysToInvalidate: [[QUERY_KEYS.TEAMS], [QUERY_KEYS.TEAMS_DEPENDENCIES]],\n onSuccess: function onSuccess() {\n _onSuccess2 === null || _onSuccess2 === void 0 || _onSuccess2();\n }\n }, options));\n};\nvar refetchMembers = function refetchMembers() {\n queryClient.invalidateQueries({\n queryKey: [QUERY_KEYS.TEAMS]\n });\n queryClient.invalidateQueries({\n queryKey: [QUERY_KEYS.TEAMS_DEPENDENCIES]\n });\n};\nvar useFetchFilterOptions = function useFetchFilterOptions(_ref4) {\n var _ref4$params = _ref4.params,\n params = _ref4$params === void 0 ? {} : _ref4$params,\n _ref4$options = _ref4.options,\n options = _ref4$options === void 0 ? {} : _ref4$options;\n return useQuery(_objectSpread$a(_objectSpread$a({\n queryKey: [QUERY_KEYS.TEAMS_DEPENDENCIES, params],\n queryFn: function queryFn() {\n return teamsApi.fetchFilterOptions(params);\n },\n select: identity\n }, options), {}, {\n refetchOnWindowFocus: false\n }));\n};\nvar useMembersCreationStatus = function useMembersCreationStatus(jobId, options) {\n return useQuery(_objectSpread$a({\n queryKey: [QUERY_KEYS.CREATION_STATUS, jobId],\n queryFn: function queryFn() {\n return teamsApi.creationStatus(jobId);\n }\n }, options));\n};\n\nvar _getQueryParams = getQueryParams(),\n page = _getQueryParams.page,\n pageSize = _getQueryParams.pageSize;\nvar DEFAULT_RADIX = 10;\nvar DEFAULT_IS_OPEN_VALUES = {\n menuBar: false,\n manageMember: false,\n alert: false\n};\nvar DEFAULT_FILTER_VALUES = {\n page: clamp(1, Infinity, parseInt(page)) || DEFAULT_PAGE_INDEX,\n pageSize: clamp(10, 100, parseInt(pageSize)) || DEFAULT_PAGE_SIZE$1,\n sortBy: \"\",\n orderBy: \"\",\n neetoFilters: []\n};\nvar DEFAULT_SELECTED_ROWS = {\n active: [],\n emails: [],\n keys: [],\n displayNames: []\n};\nvar TEAM_MEMBERS_HIDDEN_COLUMNS = \"TEAM_MEMBERS_TABLE_HIDDEN_COLUMNS\";\n\nfunction ownKeys$9(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$9(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$9(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$9(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar MenuItem$2 = Dropdown.MenuItem;\nvar renderNameColumn = function renderNameColumn(_ref) {\n var config = _ref.config,\n handleUpdateRole = _ref.handleUpdateRole,\n handleUpdateStatus = _ref.handleUpdateStatus,\n tableData = _ref.tableData;\n var name = tableData.displayName,\n imageUrl = tableData.profileImageUrl,\n subscriptionPlan = tableData.subscriptionPlan;\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-members-table__wrapper\",\n children: [/*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-members-table__column\",\n children: [/*#__PURE__*/jsx(Avatar, {\n size: \"medium\",\n user: {\n name: name,\n imageUrl: imageUrl\n }\n }), /*#__PURE__*/jsx(Typography, {\n \"data-cy\": \"ntm-member-name-\".concat(hyphenize(name)),\n style: \"body2\",\n children: name\n }), subscriptionPlan === SUBSCRIPTION_PLANS.PRO && /*#__PURE__*/jsx(Tag, {\n className: \"neeto-ui-text-transform-uppercase\",\n \"data-cy\": \"ntm-member-subscription-plan-tag\",\n label: i18next.t(\"neetoTeamMembers.common.pro\"),\n style: \"info\",\n type: \"outline\"\n })]\n }), renderDropdownButton({\n config: config,\n handleUpdateRole: handleUpdateRole,\n handleUpdateStatus: handleUpdateStatus,\n tableData: tableData\n })]\n });\n};\nvar renderDropdownButton = function renderDropdownButton(_ref2) {\n var _config$table, _config$table$dropdow;\n var config = _ref2.config,\n handleUpdateRole = _ref2.handleUpdateRole,\n handleUpdateStatus = _ref2.handleUpdateStatus,\n tableData = _ref2.tableData;\n return /*#__PURE__*/jsx(MoreDropdown, {\n dropdownProps: {\n appendTo: function appendTo() {\n return document.body;\n },\n strategy: \"fixed\"\n },\n isDisabled: not(config.permissions.update),\n dropdownButtonProps: {\n className: \"flex-shrink-0\",\n \"data-cy\": \"ntm-members-table-row-dropdown-button\",\n tooltipProps: {\n content: i18next.t(\"neetoTeamMembers.tooltips.noPermissionToEditMembers\"),\n disabled: config.permissions.update,\n position: \"top\"\n }\n },\n menuTopChildren: /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(MenuItem$2.Button, {\n className: \"ntm-dropdown__button\",\n \"data-cy\": \"ntm-edit-member-button\",\n size: \"small\",\n onClick: function onClick() {\n return handleUpdateRole(tableData);\n },\n children: i18next.t(\"neetoTeamMembers.common.edit\")\n }), config === null || config === void 0 || (_config$table = config.table) === null || _config$table === void 0 || (_config$table$dropdow = _config$table.dropdownProps) === null || _config$table$dropdow === void 0 ? void 0 : _config$table$dropdow.call(_config$table, tableData), /*#__PURE__*/jsx(MenuItem$2.Button, {\n className: \"ntm-dropdown__button\",\n \"data-cy\": \"ntm-deactivate-member-button\",\n size: \"small\",\n onClick: function onClick() {\n return handleUpdateStatus(tableData);\n },\n children: i18next.t(\"neetoTeamMembers.common.remove\")\n })]\n })\n });\n};\nvar getDefaultAlertTitle = function getDefaultAlertTitle(_ref3) {\n var member = _ref3.member;\n return member !== null && member !== void 0 && member.active ? i18next.t(\"neetoTeamMembers.common.remove_\", {\n what: taxonomies.member.singular\n }) : i18next.t(\"neetoTeamMembers.common.activate_\", {\n what: taxonomies.member.singular\n });\n};\nvar getDefaultAlertMessage = function getDefaultAlertMessage(_ref4) {\n var member = _ref4.member;\n return /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.alerts.messages.removeMember\",\n values: _objectSpread$9(_objectSpread$9({}, SINGULAR), {}, {\n person: member === null || member === void 0 ? void 0 : member.displayName\n })\n });\n};\nvar getDefaultColumns = function getDefaultColumns(_ref5) {\n var config = _ref5.config,\n handleUpdateRole = _ref5.handleUpdateRole,\n handleUpdateStatus = _ref5.handleUpdateStatus,\n otherColumns = _ref5.otherColumns,\n isSize = _ref5.isSize;\n return [{\n dataIndex: \"name\",\n key: \"name\",\n width: 300,\n fixed: isNotEmpty(otherColumns) && !isSize(\"mobile\"),\n render: function render(_, tableData) {\n return renderNameColumn({\n config: config,\n handleUpdateRole: handleUpdateRole,\n handleUpdateStatus: handleUpdateStatus,\n tableData: tableData\n });\n },\n sorter: true,\n title: i18next.t(\"neetoTeamMembers.common.name\"),\n isHidable: false\n }, {\n dataIndex: \"email\",\n key: \"email\",\n sorter: true,\n width: 350,\n title: i18next.t(\"neetoTeamMembers.common.email\", SINGULAR)\n }, {\n dataIndex: \"role\",\n key: \"organization_role\",\n sorter: true,\n width: 200,\n title: i18next.t(\"neetoTeamMembers.common.role\", SINGULAR)\n }, {\n dataIndex: \"subscriptionPlan\",\n key: \"subscription_plan\",\n hidden: true,\n isHidable: false,\n title: \"\"\n }];\n};\nvar removeExcludedRole = curry(function (excludedRoles, role) {\n return !(excludedRoles !== null && excludedRoles !== void 0 && excludedRoles.includes(role === null || role === void 0 ? void 0 : role.name));\n});\nvar getSubscriptionLabelAndValue = function getSubscriptionLabelAndValue() {\n return Object.entries(SUBSCRIPTION_PLANS).map(function (_ref6) {\n var _ref7 = _slicedToArray(_ref6, 2),\n key = _ref7[0],\n value = _ref7[1];\n return {\n label: key,\n value: value\n };\n });\n};\nvar getColumnData = function getColumnData(_ref8) {\n var _config$otherColumns;\n var config = _ref8.config,\n handleUpdateRole = _ref8.handleUpdateRole,\n handleUpdateStatus = _ref8.handleUpdateStatus,\n isSize = _ref8.isSize;\n var otherColumns = (_config$otherColumns = config === null || config === void 0 ? void 0 : config.otherColumns) !== null && _config$otherColumns !== void 0 ? _config$otherColumns : [];\n var defaultColumns = getDefaultColumns({\n config: config,\n handleUpdateRole: handleUpdateRole,\n handleUpdateStatus: handleUpdateStatus,\n otherColumns: otherColumns,\n isSize: isSize\n });\n var columns = defaultColumns.map(function (column) {\n var otherColumn = otherColumns.find(function (_ref9) {\n var dataIndex = _ref9.dataIndex;\n return identical(dataIndex, column.dataIndex);\n });\n return otherColumn || column;\n });\n otherColumns.forEach(function (otherColumn) {\n var column = columns.find(function (_ref10) {\n var dataIndex = _ref10.dataIndex;\n return identical(dataIndex, otherColumn.dataIndex);\n });\n if (!column) columns.push(otherColumn);\n });\n return columns;\n};\nvar renderUpdateAlert = function renderUpdateAlert(field, props) {\n var _config$alert;\n var config = props.config,\n member = props.member;\n if (config !== null && config !== void 0 && (_config$alert = config.alert) !== null && _config$alert !== void 0 && _config$alert[field]) {\n var _config$alert2;\n return (_config$alert2 = config.alert) === null || _config$alert2 === void 0 ? void 0 : _config$alert2[field]({\n active: member === null || member === void 0 ? void 0 : member.active,\n id: member === null || member === void 0 ? void 0 : member.id,\n name: member === null || member === void 0 ? void 0 : member.displayName\n });\n }\n return field === \"title\" ? getDefaultAlertTitle(props) : getDefaultAlertMessage(props);\n};\nvar handlePageChange = function handlePageChange(setFilters, history) {\n return function (page, pageSize) {\n var searchParams = getQueryParams({\n toCamelCase: false\n });\n history.replace(buildUrl(window.location.pathname, mergeLeft({\n page: page,\n page_size: pageSize\n }, searchParams)));\n setFilters(mergeLeft({\n page: page,\n pageSize: pageSize\n }));\n };\n};\nvar renderPaginationProps = function renderPaginationProps(size) {\n return {\n pageSize: parseInt(size, DEFAULT_RADIX)\n };\n};\nvar defaultNeetoFiltersColumns = function defaultNeetoFiltersColumns() {\n return [{\n key: \"email\",\n label: i18next.t(\"neetoTeamMembers.common.email\", SINGULAR),\n model: \"User\",\n node: \"email\",\n showRuleSelector: true,\n type: \"text\"\n }, {\n key: \"name\",\n label: i18next.t(\"neetoTeamMembers.common.name\"),\n model: \"User\",\n node: \"first_name,last_name\",\n type: \"text\",\n values: \"\"\n }, {\n key: \"role\",\n label: i18next.t(\"neetoTeamMembers.common.role\", SINGULAR),\n model: \"OrganizationRole\",\n node: \"organization_role.name\",\n type: \"multi_option\",\n values: []\n }, {\n key: \"subscription_plan\",\n label: i18next.t(\"neetoTeamMembers.common.subscriptionPlan\", SINGULAR),\n model: \"User\",\n node: \"subscription_plan\",\n type: \"single_option\",\n values: []\n }];\n};\nvar buildFilterColumns = function buildFilterColumns(_ref11) {\n var _ref11$options = _ref11.options,\n _ref11$options$emails = _ref11$options.emails,\n emails = _ref11$options$emails === void 0 ? [] : _ref11$options$emails,\n _ref11$options$organi = _ref11$options.organizationRoles,\n organizationRoles = _ref11$options$organi === void 0 ? [] : _ref11$options$organi,\n _ref11$emailConfig = _ref11.emailConfig,\n setSearchTerm = _ref11$emailConfig.setSearchTerm,\n isLoading = _ref11$emailConfig.isLoading;\n var columnValues = {\n email: emails.map(toLabelAndValue),\n role: organizationRoles.map(toLabelAndValue),\n subscription_plan: getSubscriptionLabelAndValue()\n };\n return defaultNeetoFiltersColumns().map(function (column) {\n var values = columnValues[column.key];\n if (column.key === \"role\") return assoc(\"values\", values, column);\n var emailConfig = {\n values: values,\n isLoading: isLoading,\n onInputChange: setSearchTerm\n };\n return mergeLeft(emailConfig, column);\n });\n};\nvar getFilteredRoles = function getFilteredRoles() {\n var roles = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return filter(removeExcludedRole(config === null || config === void 0 ? void 0 : config.excludedRoles), roles);\n};\nvar generateNoDataContent = function generateNoDataContent(_ref12) {\n var buttonProps = _ref12.buttonProps;\n var disabled = buttonProps.disabled,\n onClick = buttonProps.onClick;\n var noDataTitleTranslationKey = \"notFound_\";\n var noDataTitle = i18next.t(\"neetoTeamMembers.common.\".concat(noDataTitleTranslationKey), {\n what: taxonomies.member.plural\n });\n var noDataButtonProps = {\n \"data-cy\": \"ntm-add-member-button\",\n disabled: disabled,\n label: i18next.t(\"neetoTeamMembers.common.addNew_\", {\n what: taxonomies.member.singular\n }),\n onClick: onClick\n };\n return {\n noDataTitle: noDataTitle,\n noDataButtonProps: noDataButtonProps\n };\n};\n\nfunction ownKeys$8(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$8(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$8(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$8(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar useFilters = function useFilters(_ref) {\n var _config$filterColumns;\n var config = _ref.config;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useQueryParams = useQueryParams(),\n _useQueryParams$searc = _useQueryParams.searchTerm,\n searchTerm = _useQueryParams$searc === void 0 ? \"\" : _useQueryParams$searc;\n var searchKeywordProps = {\n node: \"first_name,last_name,email\",\n value: searchTerm,\n key: \"search_term\"\n };\n var _useState = useState(\"\"),\n _useState2 = _slicedToArray(_useState, 2),\n emailSearchTerm = _useState2[0],\n setEmailSearchTerm = _useState2[1];\n var defaultNeetoFilters = buildFiltersFromURL([].concat(_toConsumableArray((_config$filterColumns = config === null || config === void 0 ? void 0 : config.filterColumns) !== null && _config$filterColumns !== void 0 ? _config$filterColumns : defaultNeetoFiltersColumns()), [searchKeywordProps]));\n var _useState3 = useState(_objectSpread$8(_objectSpread$8(_objectSpread$8({}, DEFAULT_FILTER_VALUES), config === null || config === void 0 ? void 0 : config.defaultFilterValues), {}, {\n neetoFilters: defaultNeetoFilters\n })),\n _useState4 = _slicedToArray(_useState3, 2),\n filters = _useState4[0],\n setFilters = _useState4[1];\n var resetPage = useFuncDebounce(function () {\n return setFilters(mergeLeft({\n page: DEFAULT_PAGE_INDEX\n }));\n });\n var debouncedEmailSearchTerm = useDebounce(emailSearchTerm, 750);\n var shouldFetchFilterOptions = isNil(config === null || config === void 0 ? void 0 : config.filterColumns);\n var _useFetchFilterOption = useFetchFilterOptions({\n params: {\n emailSearchTerm: debouncedEmailSearchTerm\n },\n options: {\n enabled: shouldFetchFilterOptions\n }\n }),\n _useFetchFilterOption2 = _useFetchFilterOption.data,\n filterOptions = _useFetchFilterOption2 === void 0 ? {} : _useFetchFilterOption2,\n isFilterOptionsLoading = _useFetchFilterOption.isLoading;\n var filterColumns = shouldFetchFilterOptions ? buildFilterColumns({\n options: filterOptions,\n emailConfig: {\n setSearchTerm: setEmailSearchTerm,\n isLoading: isFilterOptionsLoading\n }\n }) : config === null || config === void 0 ? void 0 : config.filterColumns;\n var searchProps = useMemo(function () {\n return {\n \"data-cy\": \"ntm-search-members-input\",\n placeholder: t(\"neetoTeamMembers.common.search_\", {\n what: taxonomies.member.plural\n }),\n onChange: resetPage\n };\n }, []);\n return {\n filters: filters,\n setFilters: setFilters,\n filterColumns: filterColumns,\n searchProps: searchProps,\n searchKeywordProps: searchKeywordProps\n };\n};\n\nfunction ownKeys$7(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$7(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$7(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$7(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar useTeams = function useTeams(_ref) {\n var config = _ref.config,\n filters = _ref.filters,\n setFilters = _ref.setFilters,\n updateMember = _ref.updateMember;\n var history = useHistory();\n var _useState = useState(null),\n _useState2 = _slicedToArray(_useState, 2),\n selectedMember = _useState2[0],\n setSelectedMember = _useState2[1];\n var _useState3 = useState(DEFAULT_IS_OPEN_VALUES),\n _useState4 = _slicedToArray(_useState3, 2),\n isOpen = _useState4[0],\n setIsOpen = _useState4[1];\n var _useState5 = useState(DEFAULT_SELECTED_ROWS),\n _useState6 = _slicedToArray(_useState5, 2),\n selectedRows = _useState6[0],\n setSelectedRows = _useState6[1];\n var handleRemoveMember = function handleRemoveMember() {\n var _globalProps$user;\n var id = selectedMember.id,\n email = selectedMember.email;\n var payload = {\n active: false\n };\n updateMember({\n id: id,\n payload: payload\n });\n if (((_globalProps$user = globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.email) === email) {\n window.location.pathname = \"/\";\n }\n };\n var handleUpdateStatus = function handleUpdateStatus(user) {\n setSelectedMember(user);\n setIsOpen(assoc(\"alert\", true));\n };\n var handleUpdateRole = function handleUpdateRole(user) {\n setSelectedMember(user);\n setIsOpen(assoc(\"manageMember\", true));\n };\n var handleAlertClose = function handleAlertClose() {\n setIsOpen(assoc(\"alert\", false));\n setSelectedMember(null);\n };\n var handlePaneClose = function handlePaneClose(_ref2) {\n var _globalProps$user2;\n var submitted = _ref2.submitted;\n setIsOpen(assoc(\"manageMember\", false));\n if (submitted && ((_globalProps$user2 = globalProps.user) === null || _globalProps$user2 === void 0 ? void 0 : _globalProps$user2.email) === (selectedMember === null || selectedMember === void 0 ? void 0 : selectedMember.email)) {\n window.location.pathname = \"/\";\n }\n setSelectedMember(null);\n };\n var resetSelectedRows = function resetSelectedRows() {\n return setSelectedRows(DEFAULT_SELECTED_ROWS);\n };\n var handleMemberFilterChange = function handleMemberFilterChange() {\n setSelectedRows(DEFAULT_SELECTED_ROWS);\n handlePageChange(setFilters, history)(DEFAULT_PAGE_INDEX, filters.pageSize);\n };\n var handleTableChange = function handleTableChange(_, __, sorter) {\n setFilters(mergeLeft({\n sortBy: sorter.field,\n orderBy: sorter.order\n }));\n };\n var handleRowSelect = function handleRowSelect(keys, rowData) {\n var _config$table, _config$table$onRowSe;\n var rows = {\n active: pluck(\"active\", rowData),\n displayNames: pluck(\"displayName\", rowData),\n emails: pluck(\"email\", rowData),\n subscriptionPlans: pluck(\"subscriptionPlan\", rowData),\n keys: keys\n };\n setSelectedRows(_objectSpread$7({}, rows));\n config === null || config === void 0 || (_config$table = config.table) === null || _config$table === void 0 || (_config$table$onRowSe = _config$table.onRowSelect) === null || _config$table$onRowSe === void 0 || _config$table$onRowSe.call(_config$table, {\n rows: rows,\n resetSelectedRows: resetSelectedRows,\n rowData: rowData\n });\n };\n return {\n handleAlertClose: handleAlertClose,\n handleMemberFilterChange: handleMemberFilterChange,\n handlePaneClose: handlePaneClose,\n handleRowSelect: handleRowSelect,\n handleTableChange: handleTableChange,\n handleRemoveMember: handleRemoveMember,\n handleUpdateRole: handleUpdateRole,\n handleUpdateStatus: handleUpdateStatus,\n isOpen: isOpen,\n selectedMember: selectedMember,\n selectedRows: selectedRows,\n setIsOpen: setIsOpen,\n setSelectedRows: setSelectedRows\n };\n};\n\nvar FIXED_COLUMNS = [\"name\", \"actions\"];\nvar MANAGE_ROLES_BUTTON_LABEL = t$1(\"neetoTeamMembers.labels.manageRole\", PLURAL);\n\nfunction ownKeys$6(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$6(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$6(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$6(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar Header$2 = function Header(_ref) {\n var isCreatePermissionGranted = _ref.isCreatePermissionGranted,\n otherActionBlock = _ref.otherActionBlock,\n _ref$onClick = _ref.onClick,\n onClick = _ref$onClick === void 0 ? noop : _ref$onClick,\n rolesButtonProps = _ref.rolesButtonProps;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var isRolesButtonVisible = !!rolesButtonProps;\n var isOtherActionBlockVisible = !!otherActionBlock;\n return /*#__PURE__*/jsxs(Fragment, {\n children: [isOtherActionBlockVisible && otherActionBlock(), isRolesButtonVisible ? /*#__PURE__*/jsx(Button, _objectSpread$6({\n \"data-cy\": \"ntm-manage-roles-button\",\n label: MANAGE_ROLES_BUTTON_LABEL,\n style: \"secondary\"\n }, rolesButtonProps)) : null, /*#__PURE__*/jsx(Tooltip, {\n content: t(\"neetoTeamMembers.tooltips.noPermissionToAddMember\"),\n disabled: isCreatePermissionGranted,\n position: \"bottom\",\n children: /*#__PURE__*/jsx(\"span\", {\n children: /*#__PURE__*/jsx(Button, {\n onClick: onClick,\n \"data-cy\": \"ntm-add-member-button\",\n disabled: !isCreatePermissionGranted,\n label: t(\"neetoTeamMembers.common.addNew_\", {\n what: taxonomies.member.singular\n })\n })\n })\n })]\n });\n};\nvar HeaderActionBlock = /*#__PURE__*/memo(Header$2);\n\nvar filterBySearchTerm = function filterBySearchTerm(searchTerm, roles) {\n return filter(function (_ref) {\n var name = _ref.name;\n return includes(trim(toLower(searchTerm)), trim(toLower(name)));\n }, roles);\n};\nvar getDeactivatedButtonVisible = function getDeactivatedButtonVisible(selectedRows, config) {\n var _config$hiddenBulkAct;\n return selectedRows.active.some(function (active) {\n return active === true;\n }) && !(config !== null && config !== void 0 && (_config$hiddenBulkAct = config.hiddenBulkActions) !== null && _config$hiddenBulkAct !== void 0 && _config$hiddenBulkAct.includes(\"remove\"));\n};\n\nvar Menu$1 = Dropdown.Menu,\n MenuItem$1 = Dropdown.MenuItem;\nvar RolesDropdown = function RolesDropdown(_ref) {\n var _ref$disabled = _ref.disabled,\n disabled = _ref$disabled === void 0 ? false : _ref$disabled,\n hasUpdatePermission = _ref.hasUpdatePermission,\n _ref$isSearchable = _ref.isSearchable,\n isSearchable = _ref$isSearchable === void 0 ? false : _ref$isSearchable,\n _ref$roles = _ref.roles,\n roles = _ref$roles === void 0 ? [] : _ref$roles,\n _ref$selectedMembersC = _ref.selectedMembersCount,\n selectedMembersCount = _ref$selectedMembersC === void 0 ? 0 : _ref$selectedMembersC,\n setAlertType = _ref.setAlertType,\n setBulkUpdateRole = _ref.setBulkUpdateRole;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isDropdownOpen = _useState2[0],\n setIsDropdownOpen = _useState2[1];\n var _useState3 = useState(\"\"),\n _useState4 = _slicedToArray(_useState3, 2),\n searchTerm = _useState4[0],\n setSearchTerm = _useState4[1];\n var filteredRoles = filterBySearchTerm(searchTerm, roles);\n var isUpdatingAllowed = hasUpdatePermission && !disabled;\n var handleSearch = function handleSearch(_ref2) {\n var value = _ref2.target.value;\n return setSearchTerm(value);\n };\n var handleSelectRole = function handleSelectRole(role) {\n setBulkUpdateRole(role);\n setAlertType(\"role\");\n setIsDropdownOpen(false);\n };\n var handleOnClose = function handleOnClose() {\n setSearchTerm(\"\");\n setIsDropdownOpen(false);\n };\n var handleClick = function handleClick(event) {\n event.stopPropagation();\n setIsDropdownOpen(!isDropdownOpen);\n };\n return /*#__PURE__*/jsx(Tooltip, {\n disabled: isUpdatingAllowed,\n position: \"top\",\n content: t(\"neetoTeamMembers.tooltips.activateUserToEdit\", {\n count: selectedMembersCount\n }),\n children: /*#__PURE__*/jsx(\"span\", {\n children: /*#__PURE__*/jsx(Dropdown, {\n buttonStyle: \"secondary\",\n closeOnSelect: false,\n \"data-cy\": \"ntm-members-roles-update-dropdown-button\",\n disabled: !isUpdatingAllowed,\n isOpen: isUpdatingAllowed && isDropdownOpen,\n position: \"auto-end\",\n customTarget: /*#__PURE__*/jsx(MenuItem$1.Button, {\n disabled: !isUpdatingAllowed,\n suffix: /*#__PURE__*/jsx(Right$1, {\n size: 16\n }),\n children: t(\"neetoTeamMembers.buttons.changeRole\")\n }),\n onClick: handleClick,\n onClose: handleOnClose,\n children: /*#__PURE__*/jsxs(Menu$1, {\n children: [isSearchable && /*#__PURE__*/jsx(\"div\", {\n className: \"neeto-ui-px-3 neeto-ui-py-2\",\n onClick: function onClick(event) {\n event.stopPropagation();\n },\n children: /*#__PURE__*/jsx(Input$1, {\n \"data-cy\": \"ntm-members-roles-search-input\",\n prefix: /*#__PURE__*/jsx(Search, {}),\n type: \"search\",\n value: searchTerm,\n placeholder: t(\"neetoTeamMembers.placeholders.searchRole\", PLURAL),\n onChange: handleSearch\n })\n }), isNotEmpty(filteredRoles) ? filteredRoles.map(function (_ref3) {\n var id = _ref3.id,\n name = _ref3.name;\n return /*#__PURE__*/jsx(MenuItem$1.Button, {\n onClick: function onClick() {\n return handleSelectRole(name);\n },\n children: name\n }, id);\n }) : /*#__PURE__*/jsx(\"div\", {\n className: \"neeto-ui-flex neeto-ui-justify-center neeto-ui-p-1\",\n children: /*#__PURE__*/jsx(Typography, {\n className: \"neeto-ui-text-gray-700\",\n style: \"body2\",\n children: t(\"neetoTeamMembers.helpers.noRolesFound\")\n })\n })]\n })\n })\n })\n });\n};\n\nfunction ownKeys$5(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$5(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$5(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$5(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar Menu = Dropdown.Menu,\n MenuItem = Dropdown.MenuItem;\nvar Left = function Left(_ref) {\n var _ref2, _selectedRows$keys, _selectedRows$active, _config$hiddenBulkAct, _config$otherBulkActi;\n var config = _ref.config,\n filteredCount = _ref.filteredCount,\n roles = _ref.roles,\n selectedRows = _ref.selectedRows,\n setSelectedRows = _ref.setSelectedRows;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var isUpdatePermissionGranted = config.permissions.update;\n var _useState = useState(\"\"),\n _useState2 = _slicedToArray(_useState, 2),\n alertType = _useState2[0],\n setAlertType = _useState2[1];\n var _useState3 = useState(\"\"),\n _useState4 = _slicedToArray(_useState3, 2),\n bulkUpdateRole = _useState4[0],\n setBulkUpdateRole = _useState4[1];\n var hasSelectedRows = isNotEmpty(selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.keys);\n var selectedMembersCountValues = {\n count: (_ref2 = (selectedRows === null || selectedRows === void 0 || (_selectedRows$keys = selectedRows.keys) === null || _selectedRows$keys === void 0 ? void 0 : _selectedRows$keys.length) || filteredCount) !== null && _ref2 !== void 0 ? _ref2 : 0,\n metaName: hasSelectedRows && (selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.keys.length) > 1 ? taxonomies.member.plural : taxonomies.member.singular,\n totalCount: filteredCount !== null && filteredCount !== void 0 ? filteredCount : 0\n };\n var hasDeactivateMembers = selectedRows === null || selectedRows === void 0 || (_selectedRows$active = selectedRows.active) === null || _selectedRows$active === void 0 ? void 0 : _selectedRows$active.some(function (active) {\n return !active;\n });\n var _useBulkUpdateMembers = useBulkUpdateMembers({\n onSuccess: function onSuccess() {\n var _config$bulkUpdateMem;\n setSelectedRows(DEFAULT_SELECTED_ROWS);\n config === null || config === void 0 || (_config$bulkUpdateMem = config.bulkUpdateMembers) === null || _config$bulkUpdateMem === void 0 || (_config$bulkUpdateMem = _config$bulkUpdateMem.onSuccess) === null || _config$bulkUpdateMem === void 0 || _config$bulkUpdateMem.callback();\n }\n }),\n bulkUpdateMember = _useBulkUpdateMembers.mutate;\n var handleDeactivateMembers = function handleDeactivateMembers() {\n var _selectedRows$emails, _globalProps$user;\n bulkUpdateMember({\n users: {\n active: false,\n emails: selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.emails\n }\n });\n if (selectedRows !== null && selectedRows !== void 0 && (_selectedRows$emails = selectedRows.emails) !== null && _selectedRows$emails !== void 0 && _selectedRows$emails.includes((_globalProps$user = globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.email)) {\n window.location.pathname = \"/\";\n }\n };\n var resetSelectedRows = function resetSelectedRows() {\n return setSelectedRows(DEFAULT_SELECTED_ROWS);\n };\n var handleRoleChange = function handleRoleChange(role) {\n var _selectedRows$emails2, _globalProps$user2;\n bulkUpdateMember({\n users: {\n active: true,\n emails: selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.emails,\n organization_role: role\n }\n });\n if (selectedRows !== null && selectedRows !== void 0 && (_selectedRows$emails2 = selectedRows.emails) !== null && _selectedRows$emails2 !== void 0 && _selectedRows$emails2.includes((_globalProps$user2 = globalProps.user) === null || _globalProps$user2 === void 0 ? void 0 : _globalProps$user2.email)) {\n window.location.pathname = \"/\";\n }\n };\n var alertTypes = [{\n message: \"neetoTeamMembers.alerts.messages.removeMember\",\n onSubmit: handleDeactivateMembers,\n title: t(\"neetoTeamMembers.common.remove_\", {\n what: selectedMembersCountValues === null || selectedMembersCountValues === void 0 ? void 0 : selectedMembersCountValues.metaName\n }),\n type: \"remove\"\n }, {\n message: \"neetoTeamMembers.alerts.messages.changeRole\",\n onSubmit: handleRoleChange,\n title: t(\"neetoTeamMembers.common.changeRole\"),\n type: \"role\"\n }];\n var selectedAlert = findBy({\n type: alertType\n }, alertTypes);\n var handleAlertClose = function handleAlertClose() {\n selectedAlert.onSubmit(bulkUpdateRole);\n setAlertType(\"\");\n };\n var getButtonLabel = function getButtonLabel(type) {\n if (type === \"role\") {\n return t(\"neetoTeamMembers.buttons.changeRole\");\n }\n return t(\"neetoTeamMembers.buttons.remove\");\n };\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"neeto-ui-flex neeto-ui-items-center neeto-ui-gap-4\",\n children: [/*#__PURE__*/jsx(Typography, {\n component: \"h4\",\n \"data-cy\": \"ntm-filtered-members-count\",\n style: \"h4\",\n children: /*#__PURE__*/jsx(Trans, {\n components: {\n span: /*#__PURE__*/jsx(\"span\", {\n className: \"neeto-ui-text-gray-600\"\n })\n },\n values: selectedMembersCountValues,\n i18nKey: hasSelectedRows ? \"neetoTeamMembers.helpers.selectedMembersCount\" : \"neetoTeamMembers.helpers.metaNameWithCount\"\n })\n }), hasSelectedRows && /*#__PURE__*/jsx(Tooltip, {\n content: t(\"neetoTeamMembers.tooltips.noPermissionToEditMembers\"),\n disabled: isUpdatePermissionGranted,\n position: \"top\",\n children: /*#__PURE__*/jsx(\"span\", {\n children: /*#__PURE__*/jsx(Dropdown, {\n buttonStyle: \"secondary\",\n \"data-cy\": \"ntm-members-take-action-dropdown-button\",\n disabled: !isUpdatePermissionGranted,\n label: t(\"neetoTeamMembers.common.takeAction\"),\n children: /*#__PURE__*/jsxs(Menu, {\n children: [getDeactivatedButtonVisible(selectedRows, config) && /*#__PURE__*/jsx(MenuItem.Button, {\n \"data-cy\": \"ntm-deactivate-members-button\",\n disabled: !isUpdatePermissionGranted,\n onClick: function onClick() {\n return setAlertType(\"remove\");\n },\n children: t(\"neetoTeamMembers.common.remove\")\n }), !(config !== null && config !== void 0 && (_config$hiddenBulkAct = config.hiddenBulkActions) !== null && _config$hiddenBulkAct !== void 0 && _config$hiddenBulkAct.includes(\"role\")) && /*#__PURE__*/jsx(RolesDropdown, {\n roles: roles,\n setAlertType: setAlertType,\n setBulkUpdateRole: setBulkUpdateRole,\n disabled: hasDeactivateMembers,\n hasUpdatePermission: isUpdatePermissionGranted,\n selectedMembersCount: selectedMembersCountValues === null || selectedMembersCountValues === void 0 ? void 0 : selectedMembersCountValues.count\n }), config === null || config === void 0 || (_config$otherBulkActi = config.otherBulkActions) === null || _config$otherBulkActi === void 0 ? void 0 : _config$otherBulkActi.call(config, resetSelectedRows, selectedRows)]\n })\n })\n })\n }), /*#__PURE__*/jsx(Alert, {\n isOpen: selectedAlert,\n submitButtonLabel: getButtonLabel(selectedAlert === null || selectedAlert === void 0 ? void 0 : selectedAlert.type),\n title: selectedAlert === null || selectedAlert === void 0 ? void 0 : selectedAlert.title,\n message: /*#__PURE__*/jsx(Trans, {\n i18nKey: selectedAlert === null || selectedAlert === void 0 ? void 0 : selectedAlert.message,\n values: _objectSpread$5(_objectSpread$5({}, selectedMembersCountValues), {}, {\n person: selectedRows.displayNames[0],\n role: bulkUpdateRole\n })\n }),\n onClose: function onClose() {\n return setAlertType(\"\");\n },\n onSubmit: handleAlertClose\n })]\n });\n};\nvar Right = withT(function (_ref3) {\n var t = _ref3.t,\n columns = _ref3.columns,\n filterColumns = _ref3.filterColumns,\n handleNeetoFilterChange = _ref3.handleNeetoFilterChange,\n setIsFiltersPaneOpen = _ref3.setIsFiltersPaneOpen,\n isFiltersPaneOpen = _ref3.isFiltersPaneOpen,\n searchKeywordProps = _ref3.searchKeywordProps;\n return /*#__PURE__*/jsx(SubHeader$1.RightBlock, {\n columnsButtonProps: {\n columnData: columns,\n fixedColumns: FIXED_COLUMNS,\n localStorageKey: TEAM_MEMBERS_HIDDEN_COLUMNS,\n noColumnMessage: t(\"neetoTeamMembers.columns.noColumnsFound\"),\n searchProps: {\n placeholder: t(\"neetoTeamMembers.columns.search\")\n }\n },\n filterProps: {\n columns: filterColumns,\n isOpen: isFiltersPaneOpen,\n setIsOpen: setIsFiltersPaneOpen,\n onChange: handleNeetoFilterChange,\n keyword: searchKeywordProps\n }\n });\n});\nvar SubHeader = {\n Left: Left,\n Right: Right\n};\n\nfunction ownKeys$4(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar Header = function Header(_ref) {\n var _config$header, _config$header2;\n var config = _ref.config,\n setIsOpen = _ref.setIsOpen,\n searchProps = _ref.searchProps;\n return /*#__PURE__*/jsx(NeetoHeader, _objectSpread$4({\n searchProps: searchProps,\n title: taxonomies.member.plural,\n actionBlock: /*#__PURE__*/jsx(HeaderActionBlock, {\n isCreatePermissionGranted: config.permissions.create,\n otherActionBlock: (_config$header = config.header) === null || _config$header === void 0 ? void 0 : _config$header.otherActionBlock,\n rolesButtonProps: config.rolesButtonProps,\n onClick: function onClick() {\n return setIsOpen(assoc(\"manageMember\", true));\n }\n })\n }, config === null || config === void 0 || (_config$header2 = config.header) === null || _config$header2 === void 0 ? void 0 : _config$header2.otherProps));\n};\nvar Header$1 = /*#__PURE__*/memo(Header);\n\nvar _excluded$1 = [\"className\", \"children\"],\n _excluded2 = [\"className\", \"children\"];\nfunction ownKeys$3(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar PageWrapper = function PageWrapper(_ref) {\n var className = _ref.className,\n children = _ref.children,\n otherProps = _objectWithoutProperties(_ref, _excluded$1);\n return /*#__PURE__*/jsx(\"div\", _objectSpread$3(_objectSpread$3({\n className: className\n }, otherProps), {}, {\n children: children\n }));\n};\nvar Page = function Page(_ref2) {\n var className = _ref2.className,\n children = _ref2.children,\n otherProps = _objectWithoutProperties(_ref2, _excluded2);\n return /*#__PURE__*/jsx(\"div\", _objectSpread$3(_objectSpread$3({\n className: className\n }, otherProps), {}, {\n children: children\n }));\n};\nPage.Header = PageWrapper;\nPage.Body = PageWrapper;\nPage.Footer = PageWrapper;\n\nvar NAME_INPUT_VALIDATION_SCHEMA = {\n firstName: yup.string().trim(t$1(\"neetoTeamMembers.validations.removeSpaces\")).strict(true),\n lastName: yup.string().trim(t$1(\"neetoTeamMembers.validations.removeSpaces\")).strict(true)\n};\nvar ROLES_RADIO_GROUP_VALIDATION_SCHEMA = {\n role: yup.string().required(t$1(\"neetoTeamMembers.validations.roleRequired\"))\n};\nvar APP_ROLES_SCHEMA = {\n appsRoles: yup.array().of(yup.object().shape({\n appName: yup.string(),\n isEnabled: yup[\"boolean\"](),\n role: yup.string().required(t$1(\"neetoTeamMembers.validations.roleRequired\"))\n }))\n};\nvar FILTER_INVALID_EMAILS = {\n label: t$1(\"neetoTeamMembers.validations.filterInvalidEmails\")\n};\nvar COUNTER_PROPS = {\n label: t$1(\"neetoTeamMembers.common.email\", PLURAL),\n startsFrom: 4\n};\nvar DEFAULT_COMPONENT_CONFIG = {\n type: \"pane\",\n isOpen: false,\n className: \"\",\n headerProps: {},\n bodyProps: {},\n footerProps: {}\n};\nvar MEMBERS_FORM_COMPONENT_MAPPER = {\n pane: Pane,\n modal: Modal,\n page: Page\n};\nvar FORM_PAGES = {\n MAIN: \"main\",\n APP_LIST: \"appList\",\n CONFIRMATION: \"confirmation\"\n};\nvar EMAIL_REGEX = new RegExp(\"^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\\\.[A-Z]{2,}$\", \"i\");\n\nvar _globalProps$organiza;\nvar _excluded = [\"appRoles\", \"emails\", \"firstName\", \"lastName\", \"role\"];\nfunction ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar getProductName = function getProductName(activeAppRoles) {\n var _activeAppRoles$;\n return activeAppRoles !== null && activeAppRoles !== void 0 && (_activeAppRoles$ = activeAppRoles[0]) !== null && _activeAppRoles$ !== void 0 && _activeAppRoles$.appName ? t$1(\"neetoTeamMembers.labels.neeto_\", {\n product: activeAppRoles[0].appName\n }) : globalProps.appName;\n};\nvar getActiveRole = function getActiveRole(activeAppRoles, role) {\n var _activeAppRoles$2;\n return (activeAppRoles === null || activeAppRoles === void 0 || (_activeAppRoles$2 = activeAppRoles[0]) === null || _activeAppRoles$2 === void 0 ? void 0 : _activeAppRoles$2.activeRole) || role;\n};\nvar getDefaultRole = function getDefaultRole(roles, currentAppRole, appName) {\n var _globalProps$appName;\n if (appName === ((_globalProps$appName = globalProps.appName) === null || _globalProps$appName === void 0 ? void 0 : _globalProps$appName.substring(5))) {\n return currentAppRole;\n }\n var condition = isAdminRole(currentAppRole);\n var role = _findBy({\n name: condition\n }, roles);\n return role ? role.name : roles[0].name;\n};\nvar generateAppsRolesInitialValue = function generateAppsRolesInitialValue(globalRoles, currentAppRole) {\n var _globalProps$appName2;\n if (!globalRoles) return [];\n var appNames = Object.keys(globalRoles);\n var currentApp = (_globalProps$appName2 = globalProps.appName) === null || _globalProps$appName2 === void 0 ? void 0 : _globalProps$appName2.substring(5);\n var currentAppNameIndex = appNames.indexOf(currentApp);\n var appNamesSorted = move(currentAppNameIndex, 0, appNames);\n return appNamesSorted.map(function (appName) {\n return {\n appName: appName,\n activeRole: getDefaultRole(globalRoles[appName], currentAppRole, appName),\n isEnabled: true,\n isPrimary: currentApp === appName\n };\n });\n};\nvar isAdminRole = function isAdminRole(role) {\n return includes(role, ADMIN_ROLES) ? equals(ADMIN_ROLE_NAME) : notEquals(ADMIN_ROLE_NAME);\n};\nvar renderInitialValues = function renderInitialValues(_ref) {\n var _roles$1$name, _roles$, _roles$2;\n var _ref$additionalFields = _ref.additionalFieldsInitialValues,\n additionalFieldsInitialValues = _ref$additionalFields === void 0 ? {} : _ref$additionalFields,\n globalRoles = _ref.globalRoles,\n roles = _ref.roles,\n selectedMember = _ref.selectedMember;\n if (isNotNil(selectedMember)) {\n var keysToPick = [\"firstName\", \"lastName\", \"role\"].concat(_toConsumableArray(keys(additionalFieldsInitialValues)));\n return _objectSpread$2(_objectSpread$2(_objectSpread$2({}, additionalFieldsInitialValues), pick(keysToPick, selectedMember)), {}, {\n emails: [_objectSpread$2(_objectSpread$2({}, toLabelAndValue(selectedMember.email)), {}, {\n valid: true\n })]\n });\n }\n return _objectSpread$2({\n firstName: \"\",\n lastName: \"\",\n emails: [],\n role: (_roles$1$name = (_roles$ = roles[1]) === null || _roles$ === void 0 ? void 0 : _roles$.name) !== null && _roles$1$name !== void 0 ? _roles$1$name : \"\",\n subscriptionPlan: SUBSCRIPTION_PLANS.FREE,\n appRoles: generateAppsRolesInitialValue(globalRoles, (_roles$2 = roles[1]) === null || _roles$2 === void 0 ? void 0 : _roles$2.name)\n }, additionalFieldsInitialValues);\n};\nvar renderPayload = function renderPayload(_ref2) {\n var appRoles = _ref2.appRoles,\n emails = _ref2.emails,\n firstName = _ref2.firstName,\n lastName = _ref2.lastName,\n role = _ref2.role,\n otherValues = _objectWithoutProperties(_ref2, _excluded);\n var selectedMember = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n return selectedMember ? _objectSpread$2({\n active: true,\n firstName: firstName.trim(),\n lastName: lastName.trim(),\n organizationRole: role,\n email: emails[0].value\n }, otherValues) : {\n user: _objectSpread$2({\n emails: pluck(\"value\", emails),\n organizationRole: role,\n appRoles: appRoles\n }, otherValues)\n };\n};\nvar getSingleInvitationTranslationProps = function getSingleInvitationTranslationProps(_ref3) {\n var activeAppRoles = _ref3.activeAppRoles,\n role = _ref3.role,\n selectedEmail = _ref3.selectedEmail;\n return {\n count: selectedEmail.length,\n emails: selectedEmail,\n product: getProductName(activeAppRoles),\n role: getActiveRole(activeAppRoles, role)\n };\n};\nvar buildValidationSchema = function buildValidationSchema(_ref4) {\n var selectedMember = _ref4.selectedMember,\n memberLimit = _ref4.memberLimit,\n organizationUsersCount = _ref4.organizationUsersCount;\n return yup.object().shape(_objectSpread$2(_objectSpread$2(_objectSpread$2(_objectSpread$2({}, NAME_INPUT_VALIDATION_SCHEMA), ROLES_RADIO_GROUP_VALIDATION_SCHEMA), APP_ROLES_SCHEMA), {}, {\n emails: yup.array().min(1, t$1(\"neetoTeamMembers.validations.minOneEmail\")).test(\"are-all-emails-valid\", t$1(\"neetoTeamMembers.validations.validEmail\"), function (emails) {\n return emails.every(prop(\"valid\"));\n }).test(\"is-emails-length-within-available-members-capacity\", /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.validations.memberLimitExceeded\",\n values: {\n limit: memberLimit\n },\n components: {\n emailTo: /*#__PURE__*/jsx(Button, {\n href: \"mailto:support@neeto.com\",\n style: \"link\"\n })\n }\n }), function (emails) {\n return isNotNil(selectedMember) || isNil(memberLimit) || emails.length <= memberLimit - organizationUsersCount;\n }).nullable()\n }));\n};\nvar neetoAuthManageProductUrl = \"\".concat((_globalProps$organiza = globalProps.organization) === null || _globalProps$organiza === void 0 ? void 0 : _globalProps$organiza.authAppUrl, \"/settings/general/products\");\n\nvar AppList = function AppList(_ref) {\n var globalRoles = _ref.globalRoles,\n savedStateRef = _ref.savedStateRef;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useState = useState(savedStateRef.current.isAppListEnabled),\n _useState2 = _slicedToArray(_useState, 2),\n isAppListEnabled = _useState2[0],\n setIsAppListEnabled = _useState2[1];\n var _useFetchNeetoApps = useFetchNeetoApps(),\n _useFetchNeetoApps$da = _useFetchNeetoApps.data,\n _useFetchNeetoApps$da2 = _useFetchNeetoApps$da === void 0 ? {} : _useFetchNeetoApps$da,\n isOwner = _useFetchNeetoApps$da2.isOwner,\n neetoApps = _useFetchNeetoApps$da2.neetoApps;\n var _useFormikContext = useFormikContext(),\n _useFormikContext$val = _useFormikContext.values,\n _useFormikContext$val2 = _useFormikContext$val.emails,\n emails = _useFormikContext$val2 === void 0 ? [] : _useFormikContext$val2,\n _useFormikContext$val3 = _useFormikContext$val.appRoles,\n appRoles = _useFormikContext$val3 === void 0 ? [] : _useFormikContext$val3,\n setFieldValue = _useFormikContext.setFieldValue;\n var selectedEmail = pluck(\"value\", emails);\n var isManageProductsLinkEnabled = isOwner && (neetoApps === null || neetoApps === void 0 ? void 0 : neetoApps.length) >= 3;\n useEffect(function () {\n if (savedStateRef.current.isAppListEnabled !== isAppListEnabled) {\n appRoles === null || appRoles === void 0 || appRoles.forEach(function (appRole, index) {\n var _globalProps$appName;\n if ((appRole === null || appRole === void 0 ? void 0 : appRole.appName) === ((_globalProps$appName = globalProps.appName) === null || _globalProps$appName === void 0 ? void 0 : _globalProps$appName.substring(5))) {\n setFieldValue(\"appRoles[\".concat(index, \"].isEnabled\"), true);\n return;\n }\n setFieldValue(\"appRoles[\".concat(index, \"].isEnabled\"), isAppListEnabled);\n });\n }\n savedStateRef.current.isAppListEnabled = isAppListEnabled;\n }, [isAppListEnabled]); // eslint-disable-line react-hooks/exhaustive-deps\n\n var buildRoleOptions = function buildRoleOptions(roles) {\n return roles.map(function (role) {\n return toLabelAndValue(role.name);\n });\n };\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"neeto-ui-flex neeto-ui-flex-col neeto-ui-gap-6\",\n children: [/*#__PURE__*/jsxs(\"div\", {\n className: \"neeto-ui-w-full space-y-3\",\n children: [/*#__PURE__*/jsx(Checkbox, {\n checked: isAppListEnabled,\n className: \"ntm-manage-members__checkbox-align-start\",\n \"data-cy\": \"ntm-manage-members-app-list-checkbox\",\n label: /*#__PURE__*/jsx(Typography, {\n component: \"span\",\n lineHeight: \"relaxed\",\n style: \"body2\",\n children: /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.helpers.addMembersToNeetoProducts\",\n values: {\n emails: selectedEmail\n }\n })\n }),\n onChange: function onChange() {\n return setIsAppListEnabled(not);\n }\n }), isManageProductsLinkEnabled && /*#__PURE__*/jsx(Typography, {\n style: \"body2\",\n children: /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.helpers.manageProducts\",\n components: {\n button: /*#__PURE__*/jsx(Button, {\n href: neetoAuthManageProductUrl,\n style: \"link\"\n })\n }\n })\n })]\n }), /*#__PURE__*/jsx(\"div\", {\n className: \"neeto-ui-w-full\",\n children: appRoles.map(function (_ref2, index) {\n var _globalProps$appName2;\n var appName = _ref2.appName,\n isEnabled = _ref2.isEnabled;\n var isCurrentApp = appName === ((_globalProps$appName2 = globalProps.appName) === null || _globalProps$appName2 === void 0 ? void 0 : _globalProps$appName2.substring(5));\n var isAppRoleSelectionChecked = isCurrentApp || isEnabled;\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-manage-members__app-roles\",\n children: [/*#__PURE__*/jsx(Tooltip, {\n content: t(\"neetoTeamMembers.tooltips.hostAppIsRequired\"),\n disabled: !isCurrentApp,\n position: \"left\",\n children: /*#__PURE__*/jsx(\"span\", {\n children: /*#__PURE__*/jsx(Switch, {\n checked: isAppRoleSelectionChecked,\n disabled: isCurrentApp,\n name: \"appsRoles[\".concat(index, \"].isEnabled\"),\n label: t(\"neetoTeamMembers.labels.neeto_\", {\n product: appName\n }),\n onChange: function onChange(_ref3) {\n var target = _ref3.target;\n setFieldValue(\"appRoles[\".concat(index, \"].isEnabled\"), target.checked);\n }\n })\n })\n }), /*#__PURE__*/jsx(Tooltip, {\n content: t(\"neetoTeamMembers.tooltips.goBackToChangeRole\"),\n disabled: !isCurrentApp,\n position: \"top\",\n children: /*#__PURE__*/jsx(\"span\", {\n className: \"ntm-manage-members-app-roles__select-wrapper\",\n children: /*#__PURE__*/jsx(Select, {\n isDisabled: isCurrentApp || !isEnabled,\n name: \"appRoles[\".concat(index, \"].activeRole\"),\n options: buildRoleOptions(globalRoles[appName]),\n size: \"small\",\n strategy: \"fixed\",\n onChange: function onChange(_ref4) {\n var value = _ref4.value;\n setFieldValue(\"appRoles[\".concat(index, \"].activeRole\"), value);\n }\n })\n })\n })]\n }, appName);\n })\n })]\n });\n};\n\nvar Confirmation = function Confirmation() {\n var _globalProps$organiza;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useFormikContext = useFormikContext(),\n _useFormikContext$val = _useFormikContext.values,\n emails = _useFormikContext$val.emails,\n role = _useFormikContext$val.role,\n appRoles = _useFormikContext$val.appRoles;\n var selectedEmail = pluck(\"value\", emails);\n var activeAppRoles = filterBy({\n isEnabled: true\n }, appRoles);\n return activeAppRoles.length > 1 ? /*#__PURE__*/jsxs(\"div\", {\n className: \"neeto-ui-flex neeto-ui-flex-col neeto-ui-gap-6\",\n children: [/*#__PURE__*/jsx(\"div\", {\n className: \"neeto-ui-w-full\",\n children: /*#__PURE__*/jsx(Typography, {\n component: \"span\",\n lineHeight: \"relaxed\",\n style: \"body2\",\n children: /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.helpers.multipleProductInvitation\",\n values: {\n count: selectedEmail.length,\n emails: selectedEmail,\n orgName: (_globalProps$organiza = globalProps.organization) === null || _globalProps$organiza === void 0 ? void 0 : _globalProps$organiza.name\n }\n })\n })\n }), /*#__PURE__*/jsxs(\"table\", {\n className: \"neeto-ui-w-full ntm-product-roles-table\",\n children: [/*#__PURE__*/jsx(\"thead\", {\n children: /*#__PURE__*/jsxs(\"tr\", {\n children: [/*#__PURE__*/jsx(\"th\", {\n children: t(\"neetoTeamMembers.common.productName\")\n }), /*#__PURE__*/jsx(\"th\", {\n children: t(\"neetoTeamMembers.common.role\", SINGULAR)\n })]\n })\n }), /*#__PURE__*/jsx(\"tbody\", {\n children: activeAppRoles.map(function (_ref) {\n var appName = _ref.appName,\n activeRole = _ref.activeRole;\n return /*#__PURE__*/jsxs(\"tr\", {\n children: [/*#__PURE__*/jsx(\"td\", {\n children: /*#__PURE__*/jsx(Typography, {\n component: \"span\",\n lineHeight: \"relaxed\",\n style: \"body2\",\n children: t(\"neetoTeamMembers.labels.neeto_\", {\n product: appName\n })\n })\n }), /*#__PURE__*/jsx(\"td\", {\n children: /*#__PURE__*/jsx(Typography, {\n component: \"span\",\n lineHeight: \"relaxed\",\n style: \"body2\",\n children: activeRole\n })\n })]\n }, appName);\n })\n })]\n })]\n }) : /*#__PURE__*/jsx(Typography, {\n component: \"span\",\n lineHeight: \"relaxed\",\n style: \"body2\",\n children: /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.helpers.singleProductInvitation\",\n values: getSingleInvitationTranslationProps({\n activeAppRoles: activeAppRoles,\n role: role,\n selectedEmail: selectedEmail\n })\n })\n });\n};\n\nvar MultipleEmailInput = function MultipleEmailInput(_ref) {\n var _head;\n var _ref$emails = _ref.emails,\n emails = _ref$emails === void 0 ? [] : _ref$emails,\n innerRef = _ref.innerRef,\n _ref$selectedMember = _ref.selectedMember,\n selectedMember = _ref$selectedMember === void 0 ? null : _ref$selectedMember;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useFormikContext = useFormikContext(),\n setFieldValue = _useFormikContext.setFieldValue;\n var handleInputChange = function handleInputChange(event) {\n var email = event.target.value;\n var emailList = [{\n label: email,\n value: email,\n valid: EMAIL_REGEX.test(email)\n }];\n setFieldValue(\"emails\", emailList);\n };\n return /*#__PURE__*/jsx(\"div\", {\n className: \"neeto-ui-w-full\",\n children: selectedMember ? /*#__PURE__*/jsx(Input, {\n \"data-cy\": \"ntm-manage-member-email-input\",\n name: \"emails\",\n size: \"medium\",\n type: \"email\",\n value: (_head = head(emails)) === null || _head === void 0 ? void 0 : _head.value,\n label: /*#__PURE__*/jsx(\"span\", {\n className: \"neeto-ui-w-full neeto-ui-flex neeto-ui-justify-between\",\n children: /*#__PURE__*/jsx(Typography, {\n component: \"span\",\n style: \"body2\",\n children: t(\"neetoTeamMembers.common.email\", SINGULAR)\n })\n }),\n onChange: handleInputChange\n }) : /*#__PURE__*/jsx(MultiEmailInput, {\n required: true,\n counter: COUNTER_PROPS,\n \"data-cy\": \"ntm-manage-member-email-input\",\n filterInvalidEmails: FILTER_INVALID_EMAILS,\n helpText: t(\"neetoTeamMembers.helpers.enterMultipleEmails\"),\n label: t(\"neetoTeamMembers.common.email\", PLURAL),\n name: \"emails\",\n placeholder: t(\"neetoTeamMembers.placeholders.email\"),\n ref: innerRef\n })\n });\n};\n\nvar NameInputs = function NameInputs(_ref) {\n var innerRef = _ref.innerRef;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"neeto-ui-flex neeto-ui-w-full neeto-ui-gap-4\",\n children: [/*#__PURE__*/jsx(Input, {\n \"data-cy\": \"ntm-edit-member-first-name-text-field\",\n label: t(\"neetoTeamMembers.labels.firstName\"),\n name: \"firstName\",\n ref: innerRef\n }), /*#__PURE__*/jsx(Input, {\n \"data-cy\": \"ntm-edit-member-last-name-text-field\",\n label: t(\"neetoTeamMembers.labels.lastName\"),\n name: \"lastName\"\n })]\n });\n};\n\nvar RolesRadioGroup = function RolesRadioGroup(_ref) {\n var config = _ref.config,\n globalRoles = _ref.globalRoles,\n isEdit = _ref.isEdit,\n _ref$role = _ref.role,\n role = _ref$role === void 0 ? \"\" : _ref$role,\n _ref$roles = _ref.roles,\n roles = _ref$roles === void 0 ? [] : _ref$roles;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useFormikContext = useFormikContext(),\n values = _useFormikContext.values,\n setFieldValue = _useFormikContext.setFieldValue;\n var setDefaultSelection = function setDefaultSelection(currentRole) {\n var _values$appRoles;\n var condition = isAdminRole(currentRole);\n (_values$appRoles = values.appRoles) === null || _values$appRoles === void 0 || _values$appRoles.forEach(function (_ref2, index) {\n var _globalProps$appName;\n var appName = _ref2.appName,\n activeRole = _ref2.activeRole;\n if (appName === ((_globalProps$appName = globalProps.appName) === null || _globalProps$appName === void 0 ? void 0 : _globalProps$appName.substring(5))) {\n setFieldValue(\"appRoles[\".concat(index, \"].activeRole\"), currentRole);\n return;\n }\n if (condition(activeRole)) return;\n var matchingRole = _findBy({\n name: condition\n }, globalRoles[appName]);\n if (matchingRole) {\n setFieldValue(\"appRoles[\".concat(index, \"].activeRole\"), matchingRole.name);\n }\n });\n };\n return /*#__PURE__*/jsx(Radio$1, {\n stacked: true,\n className: \"ntm-members-radio-group flex-grow-0\",\n \"data-cy\": \"ntm-manage-member-roles-group\",\n labelProps: {\n className: \"neeto-ui-radio__label w-full\"\n },\n name: \"role\",\n label: /*#__PURE__*/jsxs(\"span\", {\n className: \"flex w-full items-center justify-between\",\n children: [/*#__PURE__*/jsxs(Label, {\n required: true,\n children: [\" \", t(\"neetoTeamMembers.common.role\", SINGULAR)]\n }), /*#__PURE__*/jsx(Button, {\n label: t(\"neetoTeamMembers.labels.manageRole\", PLURAL),\n style: \"link\",\n to: config.pathToRolesPage\n })]\n }),\n onChange: function onChange(_ref3) {\n var value = _ref3.target.value;\n setFieldValue(\"role\", value);\n !isEdit && setDefaultSelection(value);\n },\n children: roles.map(function (_ref4) {\n var id = _ref4.id,\n name = _ref4.name;\n return /*#__PURE__*/jsx(\"label\", {\n className: \"ntm-members-form-radio-item__wrapper\",\n htmlFor: slugify(name),\n children: /*#__PURE__*/jsx(Radio$1.Item, {\n className: \"ntm-members-form-radio-item__label\",\n \"data-cy\": \"ntm-manage-member-roles-button\",\n defaultChecked: identical(name, role),\n id: slugify(name),\n label: name,\n name: \"role\",\n value: name\n })\n }, id);\n })\n });\n};\n\nvar SubscriptionPlan = function SubscriptionPlan(_ref) {\n var _subscription$plan, _subscription$plan2;\n var subscription = _ref.subscription;\n var _useFormikContext = useFormikContext(),\n values = _useFormikContext.values,\n setFieldValue = _useFormikContext.setFieldValue;\n var isProPlan = (values === null || values === void 0 ? void 0 : values.subscriptionPlan) === SUBSCRIPTION_PLANS.PRO;\n var handleChange = function handleChange(event) {\n return setFieldValue(\"subscriptionPlan\", event.target.checked ? SUBSCRIPTION_PLANS.PRO : SUBSCRIPTION_PLANS.FREE);\n };\n return /*#__PURE__*/jsxs(\"div\", {\n className: \"flex flex-col space-y-4\",\n children: [/*#__PURE__*/jsx(Checkbox$1, {\n label: /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.labels.upgradeToProPlan\"\n }),\n name: \"isSubscriptionProPlan\",\n onChange: handleChange\n }), isProPlan && /*#__PURE__*/jsx(Callout, {\n icon: Warning,\n style: \"warning\",\n children: /*#__PURE__*/jsx(Typography, {\n style: \"body2\",\n weight: \"normal\",\n children: /*#__PURE__*/jsx(Trans, {\n i18nKey: \"neetoTeamMembers.helpers.subscriptionWarning\",\n values: {\n amount: currencyFormat.withSymbol(subscription === null || subscription === void 0 || (_subscription$plan = subscription.plan) === null || _subscription$plan === void 0 ? void 0 : _subscription$plan.amount, subscription === null || subscription === void 0 || (_subscription$plan2 = subscription.plan) === null || _subscription$plan2 === void 0 || (_subscription$plan2 = _subscription$plan2.currency) === null || _subscription$plan2 === void 0 ? void 0 : _subscription$plan2.toUpperCase(), {\n maximumFractionDigits: 2,\n minimumFractionDigits: 0\n })\n }\n })\n })\n })]\n });\n};\n\nfunction ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar ManageMember = function ManageMember(_ref) {\n var _config$subscription, _manageMemberComponen, _config$additionalFie2;\n var config = _ref.config,\n onComplete = _ref.onComplete,\n _ref$roles = _ref.roles,\n roles = _ref$roles === void 0 ? [] : _ref$roles,\n _ref$selectedMember = _ref.selectedMember,\n selectedMember = _ref$selectedMember === void 0 ? null : _ref$selectedMember,\n _ref$componentConfig = _ref.componentConfig,\n componentConfig = _ref$componentConfig === void 0 ? {} : _ref$componentConfig;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isCreationStatusPollingEnabled = _useState2[0],\n setIsCreationStatusPollingEnabled = _useState2[1];\n var isViewPermissionGranted = config.permissions.view;\n var isNotDevelopment = globalProps.railsEnv !== \"development\";\n var _useFetchMembers = useFetchMembers({\n enabled: isViewPermissionGranted\n }),\n team = _useFetchMembers.data;\n var _useState3 = useState(FORM_PAGES.MAIN),\n _useState4 = _slicedToArray(_useState3, 2),\n currentPage = _useState4[0],\n setCurrentPage = _useState4[1];\n var formReference = useRef(null);\n var inputReference = useRef(null);\n var appListSavedStateReference = useRef({\n isAppListEnabled: true\n });\n var shouldSkipAppListPage = useRef(false);\n var formikValues = useRef(null);\n var manageMemberComponentConfig = _objectSpread$1(_objectSpread$1({}, DEFAULT_COMPONENT_CONFIG), {}, {\n initialFocusRef: inputReference\n }, componentConfig);\n var Component = MEMBERS_FORM_COMPONENT_MAPPER[manageMemberComponentConfig.type || \"pane\"];\n var haveToFetchRoles = isEmpty(roles) && isViewPermissionGranted;\n var isEditForm = !!selectedMember;\n var isLastPage = currentPage === FORM_PAGES.CONFIRMATION || isEditForm;\n var isSubscriptionVisible = !isEditForm && ((_config$subscription = config.subscription) === null || _config$subscription === void 0 ? void 0 : _config$subscription.isActive);\n var _useFetchRoles = useFetchRoles({\n select: function select(response) {\n var _response$organizatio;\n return reverse((_response$organizatio = response.organizationRoles) !== null && _response$organizatio !== void 0 ? _response$organizatio : []);\n },\n enabled: haveToFetchRoles\n }),\n _useFetchRoles$data = _useFetchRoles.data,\n rolesList = _useFetchRoles$data === void 0 ? roles : _useFetchRoles$data,\n isRolesLoading = _useFetchRoles.isLoading;\n var _useFetchGlobalRoles = useFetchGlobalRoles({\n select: function select(response) {\n return groupBy(prop(\"appName\"), response !== null && response !== void 0 ? response : []);\n },\n enabled: isNotDevelopment && !selectedMember && isViewPermissionGranted\n }),\n _useFetchGlobalRoles$ = _useFetchGlobalRoles.data,\n globalRoles = _useFetchGlobalRoles$ === void 0 ? {} : _useFetchGlobalRoles$,\n isGlobalRolesLoading = _useFetchGlobalRoles.isLoading;\n var filteredRoles = getFilteredRoles(rolesList, config);\n var _useCreateMember = useCreateMember({\n onSuccess: function onSuccess() {\n return setIsCreationStatusPollingEnabled(true);\n }\n }),\n _useCreateMember$data = _useCreateMember.data,\n _useCreateMember$data2 = _useCreateMember$data === void 0 ? {} : _useCreateMember$data,\n jobId = _useCreateMember$data2.jobId,\n totalCount = _useCreateMember$data2.totalCount,\n createMember = _useCreateMember.mutate,\n isCreatingMember = _useCreateMember.isLoading;\n var refetchInterval = function refetchInterval(query) {\n var _ref2 = query.state.data || {},\n isCompleted = _ref2.isCompleted;\n if (isCompleted) {\n setIsCreationStatusPollingEnabled(false);\n return false;\n }\n return 2000;\n };\n var _useMembersCreationSt = useMembersCreationStatus(jobId, {\n refetchInterval: refetchInterval,\n enabled: isCreationStatusPollingEnabled\n }),\n creationStatus = _useMembersCreationSt.data;\n useEffect(function () {\n var _config$createMember;\n var _ref3 = creationStatus || {},\n isCompleted = _ref3.isCompleted,\n isSuccessful = _ref3.isSuccessful,\n users = _ref3.users,\n error = _ref3.error;\n if (!isCompleted) return;\n handleClose();\n config === null || config === void 0 || (_config$createMember = config.createMember) === null || _config$createMember === void 0 || (_config$createMember = _config$createMember.onSuccess) === null || _config$createMember === void 0 || _config$createMember.callback({\n users: users\n });\n if (isSuccessful) {\n showThumbsUpToastr();\n } else {\n Toastr.error(error);\n }\n refetchMembers();\n }, [creationStatus]);\n var _useUpdateMember = useUpdateMember({\n onSuccess: function onSuccess() {\n var _config$updateMember;\n handleClose(true);\n config === null || config === void 0 || (_config$updateMember = config.updateMember) === null || _config$updateMember === void 0 || (_config$updateMember = _config$updateMember.onSuccess) === null || _config$updateMember === void 0 || _config$updateMember.callback();\n }\n }),\n updateMember = _useUpdateMember.mutate,\n isUpdatingMember = _useUpdateMember.isPending;\n var hasRoleChanged = function hasRoleChanged(_ref4) {\n var submitted = _ref4.submitted,\n values = _ref4.values;\n return submitted && (values === null || values === void 0 ? void 0 : values.role) !== (selectedMember === null || selectedMember === void 0 ? void 0 : selectedMember.role);\n };\n var handleClose = function handleClose() {\n var submitted = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n onComplete({\n submitted: hasRoleChanged({\n submitted: submitted,\n values: formikValues.current\n })\n });\n setCurrentPage(FORM_PAGES.MAIN);\n appListSavedStateReference.current = {\n isAppListEnabled: true\n };\n setIsCreationStatusPollingEnabled(false);\n };\n var isSubmitting = isCreatingMember || isUpdatingMember || isRolesLoading || isGlobalRolesLoading;\n var handleAddMember = function handleAddMember(values) {\n selectedMember ?\n // @ts-ignore\n updateMember({\n id: selectedMember.id,\n payload: renderPayload(values, selectedMember)\n }) : createMember(renderPayload(values));\n };\n var handleOnSubmit = function handleOnSubmit(values) {\n shouldSkipAppListPage.current = isEmpty(values.appRoles);\n if (isLastPage) {\n handleAddMember(values);\n } else if (currentPage === FORM_PAGES.APP_LIST || shouldSkipAppListPage.current) {\n setCurrentPage(FORM_PAGES.CONFIRMATION);\n } else if (currentPage === FORM_PAGES.MAIN) {\n setCurrentPage(FORM_PAGES.APP_LIST);\n }\n };\n var handleBackButton = function handleBackButton() {\n if (currentPage === FORM_PAGES.APP_LIST || shouldSkipAppListPage.current) {\n setCurrentPage(FORM_PAGES.MAIN);\n } else if (currentPage === FORM_PAGES.CONFIRMATION) {\n setCurrentPage(FORM_PAGES.APP_LIST);\n }\n };\n var getTitle = function getTitle() {\n return selectedMember ? t(\"neetoTeamMembers.common.edit_\", {\n what: taxonomies.member.singular\n }) : t(\"neetoTeamMembers.common.addNew_\", {\n what: taxonomies.member.singular\n });\n };\n var renderFormPage = function renderFormPage(page, emails, role) {\n var _config$additionalFie;\n switch (page) {\n case FORM_PAGES.MAIN:\n return /*#__PURE__*/jsxs(Fragment, {\n children: [selectedMember && /*#__PURE__*/jsx(NameInputs, {\n innerRef: inputReference\n }), /*#__PURE__*/jsx(MultipleEmailInput, {\n emails: emails,\n selectedMember: selectedMember,\n innerRef: inputReference\n }), isSubscriptionVisible && /*#__PURE__*/jsx(SubscriptionPlan, {\n handleClose: handleClose,\n subscription: config.subscription\n }), /*#__PURE__*/jsx(RolesRadioGroup, {\n config: config,\n globalRoles: globalRoles,\n role: role,\n isEdit: !!selectedMember,\n roles: filteredRoles\n }), (_config$additionalFie = config.additionalFields) === null || _config$additionalFie === void 0 ? void 0 : _config$additionalFie.component]\n });\n case FORM_PAGES.APP_LIST:\n return /*#__PURE__*/jsx(AppList, {\n globalRoles: globalRoles,\n savedStateRef: appListSavedStateReference\n });\n case FORM_PAGES.CONFIRMATION:\n return /*#__PURE__*/jsx(Confirmation, {});\n default:\n return null;\n }\n };\n return /*#__PURE__*/jsxs(Component, {\n className: manageMemberComponentConfig.className,\n \"data-cy\": \"ntm-manage-members-pane-wrapper\",\n initialFocusRef: manageMemberComponentConfig.initialFocusRef,\n isOpen: manageMemberComponentConfig.isOpen,\n onClose: function onClose() {\n return handleClose(false);\n },\n children: [/*#__PURE__*/jsxs(Component.Header, _objectSpread$1(_objectSpread$1({}, manageMemberComponentConfig.headerProps), {}, {\n className: classnames([{\n \"ntm-manage-members__header\": currentPage !== FORM_PAGES.MAIN\n }, (_manageMemberComponen = manageMemberComponentConfig.headerProps) === null || _manageMemberComponen === void 0 ? void 0 : _manageMemberComponen.className]),\n children: [currentPage !== FORM_PAGES.MAIN && /*#__PURE__*/jsx(Button, {\n \"aria-label\": \"Back\",\n icon: LeftArrow,\n size: \"medium\",\n style: \"text\",\n tooltipProps: {\n content: t(\"neetoTeamMembers.buttons.back\"),\n position: \"bottom\"\n },\n onClick: handleBackButton\n }), /*#__PURE__*/jsx(Typography, {\n className: \"ntm-members-form__header\",\n \"data-cy\": \"ntm-manage-members-pane-header\",\n style: \"h2\",\n weight: \"semibold\",\n children: getTitle()\n })]\n })), /*#__PURE__*/jsx(Form$1, {\n ref: formReference,\n formikProps: {\n enableReinitialize: true,\n initialValues: renderInitialValues({\n additionalFieldsInitialValues: (_config$additionalFie2 = config.additionalFields) === null || _config$additionalFie2 === void 0 ? void 0 : _config$additionalFie2.initialValues,\n globalRoles: globalRoles,\n roles: filteredRoles,\n selectedMember: selectedMember\n }),\n onSubmit: handleOnSubmit,\n validationSchema: buildValidationSchema(_objectSpread$1({\n selectedMember: selectedMember\n }, team))\n },\n children: function children(_ref5) {\n var _manageMemberComponen2, _creationStatus$progr, _manageMemberComponen3;\n var values = _ref5.values;\n var emails = values.emails,\n role = values.role;\n formikValues.current = values;\n return /*#__PURE__*/jsxs(Fragment, {\n children: [/*#__PURE__*/jsx(ScrollToErrorField, {\n formRef: formReference\n }), /*#__PURE__*/jsxs(Component.Body, _objectSpread$1(_objectSpread$1({}, manageMemberComponentConfig.bodyProps), {}, {\n className: classnames([\"ntm-members-form__body\", (_manageMemberComponen2 = manageMemberComponentConfig.bodyProps) === null || _manageMemberComponen2 === void 0 ? void 0 : _manageMemberComponen2.className]),\n children: [isCreationStatusPollingEnabled && /*#__PURE__*/jsx(Callout, {\n className: \"w-full\",\n icon: Info,\n style: \"info\",\n children: t(\"neetoTeamMembers.helpers.memberCreationStatus\", {\n count: emails.length,\n completedCount: creationStatus === null || creationStatus === void 0 || (_creationStatus$progr = creationStatus.progress) === null || _creationStatus$progr === void 0 ? void 0 : _creationStatus$progr.completedCount,\n totalCount: totalCount\n })\n }), renderFormPage(currentPage, emails, role)]\n })), /*#__PURE__*/jsx(Component.Footer, _objectSpread$1(_objectSpread$1({}, manageMemberComponentConfig.footerProps), {}, {\n className: classnames([\"ntm-members-form__footer\", (_manageMemberComponen3 = manageMemberComponentConfig.footerProps) === null || _manageMemberComponen3 === void 0 ? void 0 : _manageMemberComponen3.className]),\n children: /*#__PURE__*/jsx(ActionBlock, {\n isSubmitting: isSubmitting || isCreationStatusPollingEnabled,\n cancelButtonProps: {\n \"data-cy\": \"ntm-manage-member-cancel-button\",\n onClick: function onClick() {\n return handleClose(false);\n }\n },\n submitButtonProps: {\n \"data-cy\": isLastPage ? \"ntm-manage-member-submit-button\" : \"ntm-manage-member-continue-button\",\n label: isLastPage ? t(\"neetoTeamMembers.buttons.saveChanges\") : t(\"neetoTeamMembers.buttons.continue\")\n }\n })\n }))]\n });\n }\n })]\n });\n};\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nvar TeamMembers = function TeamMembers(_ref) {\n var _config$fetchApiRespo, _config$table, _config$table$onDropd, _config$table2;\n var config = _ref.config;\n var _useTranslation = useTranslation(),\n t = _useTranslation.t;\n var history = useHistory();\n var _useBreakpoints = useBreakpoints(),\n isSize = _useBreakpoints.isSize;\n var queryParams = useQueryParams();\n var isViewPermissionGranted = config.permissions.view;\n var isCreatePermissionGranted = config.permissions.create;\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isFiltersPaneOpen = _useState2[0],\n setIsFiltersPaneOpen = _useState2[1];\n useEffect(function () {\n handleMemberFilterChange();\n }, []);\n var _useFilters = useFilters({\n config: config\n }),\n filters = _useFilters.filters,\n setFilters = _useFilters.setFilters,\n filterColumns = _useFilters.filterColumns,\n searchProps = _useFilters.searchProps,\n searchKeywordProps = _useFilters.searchKeywordProps;\n var _useFetchMembers = useFetchMembers(_objectSpread({}, filters), {\n enabled: isViewPermissionGranted\n }),\n team = _useFetchMembers.data,\n isMembersLoading = _useFetchMembers.isLoading,\n isMembersFetching = _useFetchMembers.isFetching;\n var _useFetchRoles = useFetchRoles({\n select: function select(response) {\n var _response$organizatio;\n return reverse((_response$organizatio = response === null || response === void 0 ? void 0 : response.organizationRoles) !== null && _response$organizatio !== void 0 ? _response$organizatio : []);\n },\n enabled: isViewPermissionGranted\n }),\n roles = _useFetchRoles.data,\n isRolesLoading = _useFetchRoles.isLoading;\n var _useUpdateMember = useUpdateMember({\n onSuccess: function onSuccess() {\n var _config$updateMember;\n handleAlertClose();\n config === null || config === void 0 || (_config$updateMember = config.updateMember) === null || _config$updateMember === void 0 || (_config$updateMember = _config$updateMember.onSuccess) === null || _config$updateMember === void 0 || _config$updateMember.callback();\n }\n }),\n updateMember = _useUpdateMember.mutate,\n isUpdatingMember = _useUpdateMember.isPending;\n var filteredRoles = getFilteredRoles(roles, config);\n var _useTeams = useTeams({\n config: config,\n filters: filters,\n setFilters: setFilters,\n updateMember: updateMember\n }),\n handleAlertClose = _useTeams.handleAlertClose,\n handleMemberFilterChange = _useTeams.handleMemberFilterChange,\n handlePaneClose = _useTeams.handlePaneClose,\n handleRowSelect = _useTeams.handleRowSelect,\n handleTableChange = _useTeams.handleTableChange,\n handleRemoveMember = _useTeams.handleRemoveMember,\n handleUpdateRole = _useTeams.handleUpdateRole,\n handleUpdateStatus = _useTeams.handleUpdateStatus,\n isOpen = _useTeams.isOpen,\n selectedMember = _useTeams.selectedMember,\n selectedRows = _useTeams.selectedRows,\n setIsOpen = _useTeams.setIsOpen,\n setSelectedRows = _useTeams.setSelectedRows;\n config === null || config === void 0 || (_config$fetchApiRespo = config.fetchApiResponse) === null || _config$fetchApiRespo === void 0 || _config$fetchApiRespo.call(config, {\n team: team\n });\n var hasMembers = (team === null || team === void 0 ? void 0 : team.activeUsersCount) > 0;\n var updateMemberAlertProps = {\n member: selectedMember,\n config: config\n };\n config === null || config === void 0 || (_config$table = config.table) === null || _config$table === void 0 || (_config$table$onDropd = _config$table.onDropdownClick) === null || _config$table$onDropd === void 0 || _config$table$onDropd.call(_config$table, {\n handleUpdateRole: handleUpdateRole,\n handleUpdateStatus: handleUpdateStatus\n });\n var columns = useMemo(function () {\n return getColumnData({\n config: config,\n handleUpdateRole: handleUpdateRole,\n handleUpdateStatus: handleUpdateStatus,\n isSize: isSize\n });\n }, [(_config$table2 = config.table) === null || _config$table2 === void 0 ? void 0 : _config$table2.dropdownProps] // eslint-disable-line react-hooks/exhaustive-deps\n );\n\n var _useHiddenColumns = useHiddenColumns(TEAM_MEMBERS_HIDDEN_COLUMNS),\n hideColumn = _useHiddenColumns.hideColumn,\n getVisibleColumnData = _useHiddenColumns.getVisibleColumnData;\n var handleNeetoFilterChange = function handleNeetoFilterChange(filters) {\n setFilters(mergeLeft({\n neetoFilters: filters,\n page: DEFAULT_PAGE_INDEX\n }));\n setSelectedRows(DEFAULT_SELECTED_ROWS);\n history.push(buildUrl(window.location.pathname, mergeLeft({\n page: DEFAULT_PAGE_INDEX\n }, queryParams)));\n };\n var _generateNoDataConten = generateNoDataContent({\n buttonProps: {\n onClick: function onClick() {\n return setIsOpen(assoc(\"manageMember\", true));\n },\n disabled: !isCreatePermissionGranted\n }\n }),\n noDataTitle = _generateNoDataConten.noDataTitle,\n noDataButtonProps = _generateNoDataConten.noDataButtonProps;\n if (isRolesLoading || isMembersLoading) {\n return /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-members-page-loader\",\n children: /*#__PURE__*/jsx(PageLoader, {})\n });\n }\n return /*#__PURE__*/jsx(\"div\", {\n className: \"ntm-members\",\n children: /*#__PURE__*/jsxs(\"div\", {\n className: \"ntm-members-wrapper\",\n children: [/*#__PURE__*/jsxs(Container, {\n children: [/*#__PURE__*/jsx(Header$1, {\n config: config,\n setIsOpen: setIsOpen,\n searchProps: hasMembers ? searchProps : null\n }), /*#__PURE__*/jsx(SubHeader$1, {\n leftActionBlock: /*#__PURE__*/jsx(SubHeader.Left, {\n config: config,\n selectedRows: selectedRows,\n setSelectedRows: setSelectedRows,\n filteredCount: team === null || team === void 0 ? void 0 : team.membersCount,\n roles: filteredRoles\n }),\n rightActionBlock: hasMembers && /*#__PURE__*/jsx(SubHeader.Right, {\n columns: columns,\n filterColumns: filterColumns,\n handleNeetoFilterChange: handleNeetoFilterChange,\n isFiltersPaneOpen: isFiltersPaneOpen,\n searchKeywordProps: searchKeywordProps,\n setIsFiltersPaneOpen: setIsFiltersPaneOpen\n })\n }), /*#__PURE__*/jsx(Bar, {\n columns: filterColumns,\n keyword: searchKeywordProps,\n setIsPaneOpen: setIsFiltersPaneOpen,\n onChange: handleNeetoFilterChange\n }), /*#__PURE__*/jsx(TableWrapper, {\n hasPagination: (team === null || team === void 0 ? void 0 : team.membersCount) > filters.pageSize,\n children: (team === null || team === void 0 ? void 0 : team.membersCount) !== 0 ? /*#__PURE__*/jsx(Table$1, {\n fixedHeight: true,\n allowRowClick: false,\n columnData: getVisibleColumnData(columns),\n currentPageNumber: parseInt(filters.page, DEFAULT_RADIX),\n \"data-cy\": \"ntm-members-table\",\n handlePageChange: handlePageChange(setFilters, history),\n loading: isMembersFetching,\n paginationProps: renderPaginationProps(filters.pageSize),\n rowData: team === null || team === void 0 ? void 0 : team.members,\n rowSelection: {\n columnWidth: \"2%\"\n },\n selectedRowKeys: selectedRows.keys,\n totalCount: team === null || team === void 0 ? void 0 : team.membersCount,\n onChange: handleTableChange,\n onColumnHide: function onColumnHide(_ref2) {\n var dataIndex = _ref2.dataIndex;\n return hideColumn(dataIndex);\n },\n onRowSelect: handleRowSelect\n }) : /*#__PURE__*/jsx(\"div\", {\n className: \"flex h-full w-full items-center justify-center\",\n children: /*#__PURE__*/jsx(NoData, {\n primaryButtonProps: noDataButtonProps,\n title: noDataTitle\n })\n })\n })]\n }), /*#__PURE__*/jsx(ManageMember, {\n config: config,\n selectedMember: selectedMember,\n componentConfig: {\n isOpen: isOpen.manageMember\n },\n roles: filteredRoles,\n onComplete: handlePaneClose\n }), /*#__PURE__*/jsx(Alert, {\n cancelButtonLabel: t(\"neetoTeamMembers.buttons.cancel\"),\n isOpen: isOpen.alert,\n isSubmitting: isUpdatingMember,\n message: renderUpdateAlert(\"message\", updateMemberAlertProps),\n submitButtonLabel: t(\"neetoTeamMembers.buttons.remove\"),\n title: renderUpdateAlert(\"title\", updateMemberAlertProps),\n onClose: handleAlertClose,\n onSubmit: handleRemoveMember\n })]\n })\n });\n};\nvar index = withTitle(withReactQuery(TeamMembers), taxonomies.member.plural);\n\nvar useMembersSidenav = function useMembersSidenav(_ref) {\n var route = _ref.route;\n return {\n icon: UserCircle,\n label: taxonomies.member.plural,\n to: route,\n \"data-cy\": \"members-nav-tab\",\n permission: hasPermission(VIEW_MEMBERS_PERMISSION)\n };\n};\n\nvar e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c();}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n));}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}\n\nvar css = \":root{--ntm-roles-table-default-scroll:15px;--ntm-roles-table-cell-height:48px;--ntm-roles-sidebar-width:480px;--ntm-roles-table-header-height:72px}.ntm-scrollbar__inner{height:200px;width:100%}.ntm-scrollbar__outer{height:150px;left:0;overflow:hidden;position:absolute;top:0;visibility:hidden;width:200px}.ntm-empty-state{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.ntm-members{overflow:auto;width:100%}.ntm-members-wrapper{display:flex}.ntm-members-page-loader{height:100vh;width:100%}.ntm-members-table__wrapper{display:flex;gap:.75rem;justify-content:space-between;width:100%}.ntm-members-table__column{align-items:center;display:flex;gap:.5rem}.ntm-members-form__header{margin-bottom:.5rem}.ntm-members-form__body{padding-bottom:1rem;width:100%}.ntm-members-form__body>*+*{margin-top:1.5rem}.ntm-members-form__footer{display:flex;gap:.5rem}.ntm-manage-members__header{align-items:flex-start;display:flex}.ntm-manage-members__header>*+*{margin-left:.5rem}.ntm-manage-members__app-roles{align-items:center;display:flex;justify-content:space-between;padding:.5rem 0;width:100%}.ntm-manage-members-app-roles__select-wrapper{max-width:250px;width:50%}.ntm-manage-members-effective-app-roles{align-items:center;display:flex;justify-content:space-between;padding:.25rem 0}.ntm-manage-members-effective-app-roles__role-name{max-width:300px;width:67%}.ntm-members-radio-group,.ntm-members-radio-group .neeto-ui-radio__container--stacked{width:100%}.ntm-members-radio-group__label{padding-right:4px}.ntm-members-radio-group__icon{cursor:pointer}.ntm-members-form-radio-item__wrapper{cursor:pointer;padding:8px 0!important;width:100%}.ntm-members-form-radio-item__wrapper:first-child{padding-top:0!important}.ntm-members-form-radio-item__label{margin-bottom:0!important}.ntm-members-form-radio-item__description,.ntm-product-roles-table th{color:rgb(var(--neeto-ui-gray-700))}.ntm-product-roles-table th{font-size:var(--neeto-ui-text-xs);font-weight:var(--neeto-ui-font-bold);text-transform:uppercase;vertical-align:middle}.ntm-product-roles-table td,.ntm-product-roles-table th{border:1px solid rgb(var(--neeto-ui-gray-200));padding:8px;text-align:left}.ntm-manage-members__checkbox-align-start.neeto-ui-checkbox__wrapper .neeto-ui-checkbox__container{align-items:flex-start}.ntm-manage-members__checkbox-align-start.neeto-ui-checkbox__wrapper .neeto-ui-checkbox[type=checkbox]{margin-top:4px}.ntm-roles-table__wrapper{height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - 24px);padding:0 40px;width:100%}@media screen and (max-width:1024px){.ntm-roles-table__wrapper{--neeto-molecules-main-header-with-breadcrumbs-height:216px}}@media screen and (max-width:768px){.ntm-roles-table__wrapper{--neeto-molecules-main-header-with-breadcrumbs-height:186px;overflow:hidden;padding:0 20px}}.ntm-roles-table__container{display:flex;height:100%}@media screen and (max-width:768px){.ntm-roles-table__container{height:auto;overflow-y:auto}}.ntm-roles-table__sidebar{border-top:thin solid rgb(var(--neeto-ui-gray-200));height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - 28px);min-width:480px;min-width:var(--ntm-roles-sidebar-width);width:480px;width:var(--ntm-roles-sidebar-width)}@media screen and (max-width:768px){.ntm-roles-table__sidebar{height:100%}}.ntm-roles-table-sidebar__search{height:72px;height:var(--ntm-roles-table-header-height);padding:20px 24px}.ntm-roles-table-sidebar__list,.ntm-roles-table-sidebar__search{border-bottom:thin solid rgb(var(--neeto-ui-gray-200));border-left:thin solid rgb(var(--neeto-ui-gray-200));border-right:thin solid rgb(var(--neeto-ui-gray-200))}.ntm-roles-table-sidebar__list{max-height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - 115px);max-height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - var(--ntm-roles-table-header-height) - var(--ntm-roles-table-default-scroll) - 28px);overflow:auto;white-space:nowrap}.ntm-roles-table-sidebar__list-item{display:flex;flex-direction:column;justify-content:center;min-height:48px;min-height:var(--ntm-roles-table-cell-height);overflow-wrap:break-word;position:relative;white-space:normal}.ntm-roles-table-sidebar__list-item:after{background-color:rgb(var(--neeto-ui-gray-300));content:\\\"\\\";height:1px;left:-18px;position:absolute;top:23px;width:14px}.ntm-roles-table-sidebar__list-item.ntm-roles-table-sidebar__list-item--highlighted{background-color:rgb(var(--neeto-ui-gray-100));border-top:thin solid rgb(var(--neeto-ui-gray-200));flex-direction:row;justify-content:space-between;padding:11px 24px}.ntm-roles-table__columns{border-top:thin solid rgb(var(--neeto-ui-gray-200));flex-grow:1;overflow:hidden}@media screen and (max-width:768px){.ntm-roles-table__columns{overflow:visible;overflow:initial}}.ntm-roles-table__cell{align-items:center;border-right:thin solid rgb(var(--neeto-ui-gray-200));display:flex;height:48px;height:var(--ntm-roles-table-cell-height);justify-content:center;min-height:48px;min-height:var(--ntm-roles-table-cell-height);min-width:200px;padding:12px 8px;width:100%}.ntm-roles-table-cell__checkbox-wrapper{height:1rem;margin:auto;position:absolute;width:1rem;z-index:10}.ntm-roles-table-cell__checkbox{z-index:10}.ntm-roles-table__header{align-items:center;display:flex;overflow-x:auto}.ntm-roles-table__header .ntm-roles-table__cell{border-bottom:thin solid rgb(var(--neeto-ui-gray-200));height:72px;height:var(--ntm-roles-table-header-height)}@media screen and (max-width:768px){.ntm-roles-table__header{overflow:visible;overflow:initial}}.ntm-roles-table-header-cell__container{align-items:center;display:flex;justify-content:space-between;overflow:hidden;width:100%}.ntm-roles-table-header__dropdown{flex-shrink:0;margin:3px}.ntm-roles-table-header__role-name{overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%}.ntm-roles-table__rows{max-height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - 115px);max-height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - var(--ntm-roles-table-header-height) - var(--ntm-roles-table-default-scroll) - 28px);overflow-y:auto;scrollbar-width:none;width:100%}.ntm-roles-table__rows::-webkit-scrollbar{height:0;width:0}.ntm-roles-table__rows::-webkit-scrollbar-thumb{background:rgb(var(--neeto-ui-gray-300));border-radius:50px}.ntm-roles-table__rows::-webkit-scrollbar-thumb:hover{border-radius:50px}.ntm-roles-table__rows::-webkit-scrollbar-track{background:rgb(var(--neeto-ui-gray-300))}.ntm-roles-table__rows div:last-child .ntm-roles-table__row:last-child .ntm-roles-table__cell{border-bottom:thin solid rgb(var(--neeto-ui-gray-200))}.ntm-roles-table__row{align-items:center;display:flex}.ntm-roles-table__row .ntm-roles-table__cell{overflow:hidden;position:relative}.ntm-roles-table__row .ntm-roles-table__cell p{min-width:340px;opacity:0;width:340px}.ntm-roles-table__row.ntm-roles-table__row--highlighted .ntm-roles-table__cell{background-color:rgb(var(--neeto-ui-gray-100))}.ntm-roles-table__row .ntm-roles-table__cell{border-top:thin solid rgb(var(--neeto-ui-gray-200))}.ntm-roles-table-sidebar__drop-down-button{color:rgb(var(--neeto-ui-gray-600));cursor:pointer}.ntm-roles-modal__body>*+*{margin-top:1rem}.ntm-roles-modal__footer{display:flex;gap:.5rem}.ntm-roles-pane__body{margin-bottom:1.5rem;width:100%}.ntm-roles-pane__body-wrapper>*+*{margin-top:1rem}.ntm-roles-pane__body>*+*{margin-top:1.5rem}.ntm-roles-pane__footer{display:flex;gap:.5rem}.ntm-roles-permission__heading{color:rgb(var(--neeto-ui-gray-500));text-transform:uppercase}.ntm-roles-permission__card{background-color:rgb(var(--neeto-ui-white));display:flex;flex-direction:column;gap:.75rem;padding:.4rem 0;position:relative}.ntm-roles-permission__card:after{background-color:rgb(var(--neeto-ui-gray-300));content:\\\"\\\";height:1px;left:-15px;position:absolute;top:14px;width:10px}.ntm-roles-permission__card--description{flex-grow:1}.ntm-roles-permission__card--checkbox{padding:0 .5rem}.ntm-roles-permission__card .neeto-ui-checkbox__wrapper .neeto-ui-checkbox__container{align-items:flex-start}.ntm-roles-permission__card .neeto-ui-checkbox__wrapper .neeto-ui-checkbox__container .neeto-ui-checkbox[type=checkbox]:disabled+.neeto-ui-label{cursor:not-allowed;opacity:.5}.ntm-roles-permission__sub-blocks{position:relative}.ntm-roles-permission__sub-blocks:before{background-color:rgb(var(--neeto-ui-gray-300));content:\\\"\\\";height:calc(100% - 14px);left:8px;position:absolute;top:0;width:1px}.ntm-roles-permission__sub-blocks:empty{display:none}.ntm-roles-permission-category-card{border:1px solid rgb(var(--neeto-ui-gray-400));border-radius:var(--neeto-ui-rounded);padding:10px 20px}.ntm-roles-permission-category-card>.ntm-roles-permission__card:after{display:none}.ntm-roles-help-url-wrapper{align-items:center;display:flex;justify-content:center;padding:1rem 0;width:100%}.ntm-roles-table-sidebar__list-item-spacing-handler>.ntm-roles-table-sidebar__list-item:after,.ntm-roles-table-sidebar__list-item-spacing-handler>.ntm-roles-table-sidebar__list-item:before{display:none}.ntm-roles-table-sidebar__sub-blocks{position:relative}.ntm-roles-table-sidebar__sub-blocks:before{background-color:rgb(var(--neeto-ui-gray-300));content:\\\"\\\";height:calc(100% - 24px);left:6px;position:absolute;top:0;width:1px}.ntm-roles-table-sidebar__sub-blocks:empty{display:none}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9hYnN0cmFjdHMvX3Jvb3Quc2NzcyIsImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9hcHBsaWNhdGlvbi5zY3NzIiwiYXBwL2phdmFzY3JpcHQvc3JjL3N0eWxlc2hlZXRzL2Jhc2UvX2Jhc2Uuc2NzcyIsImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9jb21wb25lbnRzL19lbXB0eS1zdGF0ZS5zY3NzIiwiYXBwL2phdmFzY3JpcHQvc3JjL3N0eWxlc2hlZXRzL3BhZ2VzL19tZW1iZXJzLnNjc3MiLCJhcHAvamF2YXNjcmlwdC9zcmMvc3R5bGVzaGVldHMvcGFnZXMvX3JvbGVzLnNjc3MiLCJhcHAvamF2YXNjcmlwdC9zcmMvc3R5bGVzaGVldHMvYWJzdHJhY3RzL19taXhpbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUNFLHFDQUFBLENBQ0Esa0NBQUEsQ0FDQSwrQkFBQSxDQUNBLG9DQ0NGLENDSkUsc0JBRUUsWUFBQSxDQURBLFVEUUosQ0NKRSxzQkFLRSxZQUFBLENBRkEsTUFBQSxDQUdBLGVBQUEsQ0FMQSxpQkFBQSxDQUNBLEtBQUEsQ0FLQSxpQkFBQSxDQUhBLFdEU0osQ0VuQkEsaUJBSUUsa0JBQUEsQ0FEQSxZQUFBLENBREEsV0FBQSxDQUdBLHNCQUFBLENBSkEsVUYwQkYsQ0czQkEsYUFDRSxhQUFBLENBQ0EsVUg4QkYsQ0c1QkUscUJBQ0UsWUg4QkosQ0czQkUseUJBRUUsWUFBQSxDQURBLFVIOEJKLENHekJJLDRCQUVFLFlBQUEsQ0FFQSxVQUFBLENBREEsNkJBQUEsQ0FGQSxVSDhCTixDR3pCSSwyQkFFRSxrQkFBQSxDQURBLFlBQUEsQ0FFQSxTSDJCTixDR3RCSSwwQkFDRSxtQkh3Qk4sQ0dyQkksd0JBRUUsbUJBQUEsQ0FEQSxVSHdCTixDR3RCTSw0QkFDRSxpQkh3QlIsQ0dwQkksMEJBQ0UsWUFBQSxDQUNBLFNIc0JOLENHakJBLDRC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R0YsQ0l4R0UsNENBQ0UsOENBQUEsQ0FFQSxVQUFBLENBQ0Esd0JBQUEsQ0FDQSxRQUFBLENBQ0EsaUJBQUEsQ0FKQSxLQUFBLENBS0EsU0owR0osQ0l2R0UsMkNBQ0UsWUp5R0oiLCJzb3VyY2VzQ29udGVudCI6WyI6cm9vdCB7XG4gIC0tbnRtLXJvbGVzLXRhYmxlLWRlZmF1bHQtc2Nyb2xsOiAxNXB4O1xuICAtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodDogNDhweDtcbiAgLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aDogNDgwcHg7XG4gIC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQ6IDcycHg7XG59XG4iLCI6cm9vdCB7XG4gIC0tbnRtLXJvbGVzLXRhYmxlLWRlZmF1bHQtc2Nyb2xsOiAxNXB4O1xuICAtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodDogNDhweDtcbiAgLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aDogNDgwcHg7XG4gIC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQ6IDcycHg7XG59XG5cbi5udG0tc2Nyb2xsYmFyX19pbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIwMHB4O1xufVxuLm50bS1zY3JvbGxiYXJfX291dGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICB3aWR0aDogMjAwcHg7XG4gIGhlaWdodDogMTUwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLm50bS1lbXB0eS1zdGF0ZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ubnRtLW1lbWJlcnMge1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG59XG4ubnRtLW1lbWJlcnMtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4ubnRtLW1lbWJlcnMtcGFnZS1sb2FkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbn1cbi5udG0tbWVtYmVycy10YWJsZV9fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogMC43NXJlbTtcbn1cbi5udG0tbWVtYmVycy10YWJsZV9fY29sdW1uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjVyZW07XG59XG4ubnRtLW1lbWJlcnMtZm9ybV9faGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuLm50bS1tZW1iZXJzLWZvcm1fX2JvZHkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG59XG4ubnRtLW1lbWJlcnMtZm9ybV9fYm9keSA+ICogKyAqIHtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xufVxuLm50bS1tZW1iZXJzLWZvcm1fX2Zvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMC41cmVtO1xufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzX19oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi5udG0tbWFuYWdlLW1lbWJlcnNfX2hlYWRlciA+ICogKyAqIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVyc19fYXBwLXJvbGVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC41cmVtIDA7XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnMtYXBwLXJvbGVzX19zZWxlY3Qtd3JhcHBlciB7XG4gIHdpZHRoOiA1MCU7XG4gIG1heC13aWR0aDogMjUwcHg7XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnMtZWZmZWN0aXZlLWFwcC1yb2xlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMC4yNXJlbSAwO1xufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzLWVmZmVjdGl2ZS1hcHAtcm9sZXNfX3JvbGUtbmFtZSB7XG4gIHdpZHRoOiA2NyU7XG4gIG1heC13aWR0aDogMzAwcHg7XG59XG5cbi5udG0tbWVtYmVycy1yYWRpby1ncm91cCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm50bS1tZW1iZXJzLXJhZGlvLWdyb3VwIC5uZWV0by11aS1yYWRpb19fY29udGFpbmVyLS1zdGFja2VkIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubnRtLW1lbWJlcnMtcmFkaW8tZ3JvdXBfX2xhYmVsIHtcbiAgcGFkZGluZy1yaWdodDogNHB4O1xufVxuLm50bS1tZW1iZXJzLXJhZGlvLWdyb3VwX19pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubnRtLW1lbWJlcnMtZm9ybS1yYWRpby1pdGVtX193cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogOHB4IDBweCAhaW1wb3J0YW50O1xufVxuLm50bS1tZW1iZXJzLWZvcm0tcmFkaW8taXRlbV9fd3JhcHBlcjpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctdG9wOiAwcHggIWltcG9ydGFudDtcbn1cbi5udG0tbWVtYmVycy1mb3JtLXJhZGlvLWl0ZW1fX2xhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuLm50bS1tZW1iZXJzLWZvcm0tcmFkaW8taXRlbV9fZGVzY3JpcHRpb24ge1xuICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNzAwKSk7XG59XG5cbi5udG0tcHJvZHVjdC1yb2xlcy10YWJsZSB0aCB7XG4gIGNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS03MDApKTtcbiAgZm9udC1zaXplOiB2YXIoLS1uZWV0by11aS10ZXh0LXhzKTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLW5lZXRvLXVpLWZvbnQtYm9sZCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ubnRtLXByb2R1Y3Qtcm9sZXMtdGFibGUgdGQsXG4ubnRtLXByb2R1Y3Qtcm9sZXMtdGFibGUgdGgge1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogOHB4O1xufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzX19jaGVja2JveC1hbGlnbi1zdGFydC5uZWV0by11aS1jaGVja2JveF9fd3JhcHBlciAubmVldG8tdWktY2hlY2tib3hfX2NvbnRhaW5lciB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuLm50bS1tYW5hZ2UtbWVtYmVyc19fY2hlY2tib3gtYWxpZ24tc3RhcnQubmVldG8tdWktY2hlY2tib3hfX3dyYXBwZXIgLm5lZXRvLXVpLWNoZWNrYm94W3R5cGU9Y2hlY2tib3hdIHtcbiAgbWFyZ2luLXRvcDogNHB4O1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlX193cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLSAyNHB4KTtcbiAgcGFkZGluZzogMCA0MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5udG0tcm9sZXMtdGFibGVfX3dyYXBwZXIge1xuICAgIC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLXdpdGgtYnJlYWRjcnVtYnMtaGVpZ2h0OiAyMTZweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm50bS1yb2xlcy10YWJsZV9fd3JhcHBlciB7XG4gICAgLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQ6IDE4NnB4O1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2NvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5udG0tcm9sZXMtdGFibGVfX2NvbnRhaW5lciB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZV9fc2lkZWJhciB7XG4gIHdpZHRoOiB2YXIoLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aCk7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLSAyOHB4KTtcbiAgbWluLXdpZHRoOiB2YXIoLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aCk7XG4gIGJvcmRlci10b3A6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAubnRtLXJvbGVzLXRhYmxlX19zaWRlYmFyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19zZWFyY2gge1xuICBwYWRkaW5nOiAyMHB4IDI0cHg7XG4gIGhlaWdodDogdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQpO1xuICBib3JkZXItbGVmdDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbiAgYm9yZGVyLXJpZ2h0OiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xuICBib3JkZXItYm90dG9tOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3Qge1xuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLXdpdGgtYnJlYWRjcnVtYnMtaGVpZ2h0KSAtIHZhcigtLW50bS1yb2xlcy10YWJsZS1oZWFkZXItaGVpZ2h0KSAtIHZhcigtLW50bS1yb2xlcy10YWJsZS1kZWZhdWx0LXNjcm9sbCkgLSAyOHB4KTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGJvcmRlci1sZWZ0OiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xuICBib3JkZXItcmlnaHQ6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG4gIGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbn1cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDFweDtcbiAgbGVmdDogLTE4cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAyM3B4O1xuICB3aWR0aDogMTRweDtcbn1cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0tLWhpZ2hsaWdodGVkIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0xMDApKTtcbiAgcGFkZGluZzogMTFweCAyNHB4O1xuICBib3JkZXItdG9wOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19jb2x1bW5zIHtcbiAgZmxleC1ncm93OiAxO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm50bS1yb2xlcy10YWJsZV9fY29sdW1ucyB7XG4gICAgb3ZlcmZsb3c6IHVuc2V0O1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2NlbGwge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtY2VsbC1oZWlnaHQpO1xuICBtaW4taGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtY2VsbC1oZWlnaHQpO1xuICBwYWRkaW5nOiAxMnB4IDhweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1jZWxsX19jaGVja2JveC13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDFyZW07XG4gIHdpZHRoOiAxcmVtO1xuICBtYXJnaW46IGF1dG87XG4gIHotaW5kZXg6IDEwO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWNlbGxfX2NoZWNrYm94IHtcbiAgei1pbmRleDogMTA7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG4ubnRtLXJvbGVzLXRhYmxlX19oZWFkZXIgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIGhlaWdodDogdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQpO1xuICBib3JkZXItYm90dG9tOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm50bS1yb2xlcy10YWJsZV9faGVhZGVyIHtcbiAgICBvdmVyZmxvdzogdW5zZXQ7XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZS1oZWFkZXItY2VsbF9fY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1oZWFkZXJfX2Ryb3Bkb3duIHtcbiAgbWFyZ2luOiAzcHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWhlYWRlcl9fcm9sZS1uYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX3Jvd3Mge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLSB2YXIoLS1udG0tcm9sZXMtdGFibGUtaGVhZGVyLWhlaWdodCkgLSB2YXIoLS1udG0tcm9sZXMtdGFibGUtZGVmYXVsdC1zY3JvbGwpIC0gMjhweCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3Jvd3M6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgd2lkdGg6IDBweDtcbiAgaGVpZ2h0OiAwcHg7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3dzOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIGJhY2tncm91bmQ6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xufVxuLm50bS1yb2xlcy10YWJsZV9fcm93czo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xufVxuLm50bS1yb2xlcy10YWJsZV9fcm93czo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICBiYWNrZ3JvdW5kOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3Jvd3MgZGl2Omxhc3QtY2hpbGQgLm50bS1yb2xlcy10YWJsZV9fcm93Omxhc3QtY2hpbGQgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX3JvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3cgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3JvdyAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHAge1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogMzQwcHg7XG4gIG1pbi13aWR0aDogMzQwcHg7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3cubnRtLXJvbGVzLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVkIC5udG0tcm9sZXMtdGFibGVfX2NlbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0xMDApKTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3JvdyAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgYm9yZGVyLXRvcDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19kcm9wLWRvd24tYnV0dG9uIHtcbiAgY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTYwMCkpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5udG0tcm9sZXMtbW9kYWxfX2JvZHkgPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG4ubnRtLXJvbGVzLW1vZGFsX19mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDAuNXJlbTtcbn1cblxuLm50bS1yb2xlcy1wYW5lX19ib2R5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cbi5udG0tcm9sZXMtcGFuZV9fYm9keS13cmFwcGVyID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuLm50bS1yb2xlcy1wYW5lX19ib2R5ID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG59XG4ubnRtLXJvbGVzLXBhbmVfX2Zvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMC41cmVtO1xufVxuXG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2hlYWRpbmcge1xuICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNTAwKSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktd2hpdGUpKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDAuNzVyZW07XG4gIHBhZGRpbmc6IDAuNHJlbSAwO1xufVxuLm50bS1yb2xlcy1wZXJtaXNzaW9uX19jYXJkOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDFweDtcbiAgbGVmdDogLTE1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxNHB4O1xuICB3aWR0aDogMTBweDtcbn1cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fY2FyZC0tZGVzY3JpcHRpb24ge1xuICBmbGV4LWdyb3c6IDE7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQtLWNoZWNrYm94IHtcbiAgcGFkZGluZzogMCAwLjVyZW07XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQgLm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIC5uZWV0by11aS1jaGVja2JveF9fY29udGFpbmVyIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQgLm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIC5uZWV0by11aS1jaGVja2JveF9fY29udGFpbmVyIC5uZWV0by11aS1jaGVja2JveFt0eXBlPWNoZWNrYm94XTpkaXNhYmxlZCArIC5uZWV0by11aS1sYWJlbCB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fc3ViLWJsb2NrcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fc3ViLWJsb2Nrczo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gIHRvcDogMDtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNHB4KTtcbiAgbGVmdDogOHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX3N1Yi1ibG9ja3M6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubnRtLXJvbGVzLXBlcm1pc3Npb24tY2F0ZWdvcnktY2FyZCB7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tbmVldG8tdWktcm91bmRlZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTQwMCkpO1xufVxuLm50bS1yb2xlcy1wZXJtaXNzaW9uLWNhdGVnb3J5LWNhcmQgPiAubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQ6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm50bS1yb2xlcy1oZWxwLXVybC13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtIDA7XG59XG5cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtLXNwYWNpbmctaGFuZGxlciA+IC5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0tc3BhY2luZy1oYW5kbGVyID4gLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW06OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19zdWItYmxvY2tzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19zdWItYmxvY2tzOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgdG9wOiAwO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDI0cHgpO1xuICBsZWZ0OiA2cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbn1cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fc3ViLWJsb2NrczplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59IiwiLm50bS1zY3JvbGxiYXIge1xuICAmX19pbm5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgfVxuXG4gICZfX291dGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG4iLCIubnRtLWVtcHR5LXN0YXRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4iLCIubnRtLW1lbWJlcnMge1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJi13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgJi1wYWdlLWxvYWRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgfVxuXG4gICYtdGFibGUge1xuICAgICZfX3dyYXBwZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgIH1cbiAgICAmX19jb2x1bW4ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDAuNXJlbTtcbiAgICB9XG4gIH1cblxuICAmLWZvcm0ge1xuICAgICZfX2hlYWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgfVxuXG4gICAgJl9fYm9keSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgJiA+ICogKyAqIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2Zvb3RlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiAwLjVyZW07XG4gICAgfVxuICB9XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnNfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICYgPiAqICsgKiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgfVxufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzX19hcHAtcm9sZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVycy1hcHAtcm9sZXNfX3NlbGVjdC13cmFwcGVyIHtcbiAgd2lkdGg6IDUwJTtcbiAgbWF4LXdpZHRoOiAyNTBweDtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVycy1lZmZlY3RpdmUtYXBwLXJvbGVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwLjI1cmVtIDA7XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnMtZWZmZWN0aXZlLWFwcC1yb2xlc19fcm9sZS1uYW1lIHtcbiAgd2lkdGg6IDY3JTtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbn1cblxuLm50bS1tZW1iZXJzLXJhZGlvLWdyb3VwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIC5uZWV0by11aS1yYWRpb19fY29udGFpbmVyLS1zdGFja2VkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICZfX2xhYmVsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4gIH1cblxuICAmX19pY29uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLm50bS1tZW1iZXJzLWZvcm0tcmFkaW8taXRlbSB7XG4gICZfX3dyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nOiA4cHggMHB4ICFpbXBvcnRhbnQ7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJl9fbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gICZfX2Rlc2NyaXB0aW9uIHtcbiAgICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNzAwKSk7XG4gIH1cbn1cblxuLm50bS1wcm9kdWN0LXJvbGVzLXRhYmxlIHtcbiAgdGgge1xuICAgIGNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS03MDApKTtcbiAgICBmb250LXNpemU6IHZhcigtLW5lZXRvLXVpLXRleHQteHMpO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLW5lZXRvLXVpLWZvbnQtYm9sZCk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICB0ZCxcbiAgdGgge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZzogOHB4O1xuICB9XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnNfX2NoZWNrYm94LWFsaWduLXN0YXJ0Lm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIHtcbiAgLm5lZXRvLXVpLWNoZWNrYm94X19jb250YWluZXIge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uZWV0by11aS1jaGVja2JveFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgfVxufVxuIiwiLm50bS1yb2xlcy10YWJsZV9fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoXG4gICAgMTAwdmggLSB2YXIoLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQpIC0gMjRweFxuICApO1xuICBwYWRkaW5nOiAwIDQwcHg7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQ6IDIxNnB4O1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodDogMTg2cHg7XG5cbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19zaWRlYmFyIHtcbiAgd2lkdGg6IHZhcigtLW50bS1yb2xlcy1zaWRlYmFyLXdpZHRoKTtcbiAgaGVpZ2h0OiBjYWxjKFxuICAgIDEwMHZoIC0gdmFyKC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLXdpdGgtYnJlYWRjcnVtYnMtaGVpZ2h0KSAtIDI4cHhcbiAgKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aCk7XG4gIGJvcmRlci10b3A6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fc2VhcmNoIHtcbiAgcGFkZGluZzogMjBweCAyNHB4O1xuICBoZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1oZWFkZXItaGVpZ2h0KTtcbiAgYm9yZGVyLWxlZnQ6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbiAgYm9yZGVyLWJvdHRvbTogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0IHtcbiAgbWF4LWhlaWdodDogY2FsYyhcbiAgICAxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLVxuICAgICAgdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQpIC1cbiAgICAgIHZhcigtLW50bS1yb2xlcy10YWJsZS1kZWZhdWx0LXNjcm9sbCkgLSAyOHB4XG4gICk7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBib3JkZXItbGVmdDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbiAgYm9yZGVyLXJpZ2h0OiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xuICBib3JkZXItYm90dG9tOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3QtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtaW4taGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtY2VsbC1oZWlnaHQpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbGVmdDogLTE4cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMjNweDtcbiAgICB3aWR0aDogMTRweDtcbiAgfVxuXG4gICYubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3QtaXRlbS0taGlnaGxpZ2h0ZWQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTEwMCkpO1xuICAgIHBhZGRpbmc6IDExcHggMjRweDtcbiAgICBib3JkZXItdG9wOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2NvbHVtbnMge1xuICBmbGV4LWdyb3c6IDE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBvdmVyZmxvdzogdW5zZXQ7XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICBoZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodCk7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodCk7XG4gIHBhZGRpbmc6IDEycHggOHB4O1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1jZWxsX19jaGVja2JveC13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDFyZW07XG4gIHdpZHRoOiAxcmVtO1xuICBtYXJnaW46IGF1dG87XG4gIHotaW5kZXg6IDEwO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWNlbGxfX2NoZWNrYm94IHtcbiAgei1pbmRleDogMTA7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gICAgaGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtaGVhZGVyLWhlaWdodCk7XG4gICAgYm9yZGVyLWJvdHRvbTogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgb3ZlcmZsb3c6IHVuc2V0O1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGUtaGVhZGVyLWNlbGxfX2NvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5udG0tcm9sZXMtdGFibGUtaGVhZGVyX19kcm9wZG93biB7XG4gIG1hcmdpbjogM3B4O1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1oZWFkZXJfX3JvbGUtbmFtZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19yb3dzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IGNhbGMoXG4gICAgMTAwdmggLSAje3ZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCl9IC0gdmFyKFxuICAgICAgICAtLW50bS1yb2xlcy10YWJsZS1oZWFkZXItaGVpZ2h0XG4gICAgICApIC0gdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWRlZmF1bHQtc2Nyb2xsKSAtIDI4cHhcbiAgKTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgQGluY2x1ZGUgc2Nyb2xsYmFycyhcbiAgICAwcHgsXG4gICAgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSksXG4gICAgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSlcbiAgKTtcblxuICBkaXYge1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAubnRtLXJvbGVzLXRhYmxlX19yb3cge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIC5udG0tcm9sZXMtdGFibGVfX2NlbGwge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZV9fcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC8vIEhpZGRlbiAtIEp1c3QgZm9yIGhlaWdodCByZWZlcmVuY2VcbiAgICBwIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB3aWR0aDogMzQwcHg7XG4gICAgICBtaW4td2lkdGg6IDM0MHB4O1xuICAgIH1cbiAgfVxuXG4gICYubnRtLXJvbGVzLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVkIHtcbiAgICAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTEwMCkpO1xuICAgIH1cbiAgfVxuXG4gIC5udG0tcm9sZXMtdGFibGVfX2NlbGwge1xuICAgIGJvcmRlci10b3A6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19kcm9wLWRvd24tYnV0dG9uIHtcbiAgY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTYwMCkpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5udG0tcm9sZXMtbW9kYWwge1xuICAmX19ib2R5ID4gKiArICoge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gIH1cblxuICAmX19mb290ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAwLjVyZW07XG4gIH1cbn1cblxuLm50bS1yb2xlcy1wYW5lIHtcbiAgJl9fYm9keSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXG4gICAgJi13cmFwcGVyID4gKiArICoge1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG5cbiAgICAmID4gKiArICoge1xuICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIH1cbiAgfVxuXG4gICZfX2Zvb3RlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDAuNXJlbTtcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXBlcm1pc3Npb24ge1xuICAmX19oZWFkaW5nIHtcbiAgICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNTAwKSk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuXG4gICZfX2NhcmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS13aGl0ZSkpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDAuNzVyZW07XG4gICAgcGFkZGluZzogMC40cmVtIDA7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGxlZnQ6IC0xNXB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxNHB4O1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgfVxuXG4gICAgJi0tZGVzY3JpcHRpb24ge1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cblxuICAgICYtLWNoZWNrYm94IHtcbiAgICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICAgIH1cblxuICAgIC5uZWV0by11aS1jaGVja2JveF9fd3JhcHBlciAubmVldG8tdWktY2hlY2tib3hfX2NvbnRhaW5lciB7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgICAgLm5lZXRvLXVpLWNoZWNrYm94W3R5cGU9XCJjaGVja2JveFwiXTpkaXNhYmxlZCArIC5uZWV0by11aS1sYWJlbCB7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19zdWItYmxvY2tzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gICAgICB0b3A6IDA7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNHB4KTtcbiAgICAgIGxlZnQ6IDhweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxcHg7XG4gICAgfVxuXG4gICAgJjplbXB0eSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ubnRtLXJvbGVzLXBlcm1pc3Npb24tY2F0ZWdvcnktY2FyZCB7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tbmVldG8tdWktcm91bmRlZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTQwMCkpO1xuICAmID4gLm50bS1yb2xlcy1wZXJtaXNzaW9uX19jYXJkIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ubnRtLXJvbGVzLWhlbHAtdXJsLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDFyZW0gMDtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0tc3BhY2luZy1oYW5kbGVyIHtcbiAgJiA+IC5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19zdWItYmxvY2tzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gICAgdG9wOiAwO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyNHB4KTtcbiAgICBsZWZ0OiA2cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gIH1cblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCJAbWl4aW4gc2Nyb2xsYmFycyhcbiAgJHNpemUsXG4gICRmb3JlZ3JvdW5kLWNvbG9yOiAkbmVldG8tdWktZ3JheS0zMDAsXG4gICRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudFxuKSB7XG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTtcblxuICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6ICRzaXplO1xuICAgIGhlaWdodDogJHNpemU7XG4gIH1cblxuICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogJGZvcmVncm91bmQtY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICB9XG59XG4iXX0= */\";\nn(css,{});\n\nvar Profile = {\n Pane: Profile$1,\n usePaneState: useProfileUpdatePaneState\n};\n\nexport { Groups, MANAGE_MEMBERS_PERMISSION, MANAGE_ROLES_PERMISSION, ManageMember, Permissions, Profile, index$1 as Roles, RolesRadioGroup, index as TeamMembers, VIEW_MEMBERS_PERMISSION, VIEW_ROLES_PERMISSION, hasPermission, refetchMembers, useFetchMembers, useFetchMembersCountsPerCategory, useMembersSidenav };\n//# sourceMappingURL=index.js.map\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","var _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\nvar knot = function knot() {\n var extended = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var events = Object.create(null);\n\n function on(name, handler) {\n events[name] = events[name] || [];\n events[name].push(handler);\n return this;\n }\n\n function once(name, handler) {\n handler._once = true;\n on(name, handler);\n return this;\n }\n\n function off(name) {\n var handler = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n handler ? events[name].splice(events[name].indexOf(handler), 1) : delete events[name];\n\n return this;\n }\n\n function emit(name) {\n var _this = this;\n\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n // cache the events, to avoid consequences of mutation\n var cache = events[name] && events[name].slice();\n\n // only fire handlers if they exist\n cache && cache.forEach(function (handler) {\n // remove handlers added with 'once'\n handler._once && off(name, handler);\n\n // set 'this' context, pass args to handlers\n handler.apply(_this, args);\n });\n\n return this;\n }\n\n return _extends({}, extended, {\n\n on: on,\n once: once,\n off: off,\n emit: emit\n });\n};\n\nvar bricks = function bricks() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n // privates\n\n var persist = void 0; // packing new elements, or all elements?\n var ticking = void 0; // for debounced resize\n\n var sizeIndex = void 0;\n var sizeDetail = void 0;\n\n var columnTarget = void 0;\n var columnHeights = void 0;\n\n var nodeTop = void 0;\n var nodeLeft = void 0;\n var nodeWidth = void 0;\n var nodeHeight = void 0;\n\n var nodes = void 0;\n var nodesWidths = void 0;\n var nodesHeights = void 0;\n\n // resolve options\n\n var packed = options.packed.indexOf('data-') === 0 ? options.packed : 'data-' + options.packed;\n var sizes = options.sizes.slice().reverse();\n var position = options.position !== false;\n\n var container = options.container.nodeType ? options.container : document.querySelector(options.container);\n\n var selectors = {\n all: function all() {\n return toArray(container.children);\n },\n new: function _new() {\n return toArray(container.children).filter(function (node) {\n return !node.hasAttribute('' + packed);\n });\n }\n };\n\n // series\n\n var setup = [setSizeIndex, setSizeDetail, setColumns];\n\n var run = [setNodes, setNodesDimensions, setNodesStyles, setContainerStyles];\n\n // instance\n\n var instance = knot({\n pack: pack,\n update: update,\n resize: resize\n });\n\n return instance;\n\n // general helpers\n\n function runSeries(functions) {\n functions.forEach(function (func) {\n return func();\n });\n }\n\n // array helpers\n\n function toArray(input) {\n var scope = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : document;\n\n return Array.prototype.slice.call(input);\n }\n\n function fillArray(length) {\n return Array.apply(null, Array(length)).map(function () {\n return 0;\n });\n }\n\n // size helpers\n\n function getSizeIndex() {\n // find index of widest matching media query\n return sizes.map(function (size) {\n return size.mq && window.matchMedia('(min-width: ' + size.mq + ')').matches;\n }).indexOf(true);\n }\n\n function setSizeIndex() {\n sizeIndex = getSizeIndex();\n }\n\n function setSizeDetail() {\n // if no media queries matched, use the base case\n sizeDetail = sizeIndex === -1 ? sizes[sizes.length - 1] : sizes[sizeIndex];\n }\n\n // column helpers\n\n function setColumns() {\n columnHeights = fillArray(sizeDetail.columns);\n }\n\n // node helpers\n\n function setNodes() {\n nodes = selectors[persist ? 'new' : 'all']();\n }\n\n function setNodesDimensions() {\n // exit if empty container\n if (nodes.length === 0) {\n return;\n }\n\n nodesWidths = nodes.map(function (element) {\n return element.clientWidth;\n });\n nodesHeights = nodes.map(function (element) {\n return element.clientHeight;\n });\n }\n\n function setNodesStyles() {\n nodes.forEach(function (element, index) {\n columnTarget = columnHeights.indexOf(Math.min.apply(Math, columnHeights));\n\n element.style.position = 'absolute';\n\n nodeTop = columnHeights[columnTarget] + 'px';\n nodeLeft = columnTarget * nodesWidths[index] + columnTarget * sizeDetail.gutter + 'px';\n\n // support positioned elements (default) or transformed elements\n if (position) {\n element.style.top = nodeTop;\n element.style.left = nodeLeft;\n } else {\n element.style.transform = 'translate3d(' + nodeLeft + ', ' + nodeTop + ', 0)';\n }\n\n element.setAttribute(packed, '');\n\n // ignore nodes with no width and/or height\n nodeWidth = nodesWidths[index];\n nodeHeight = nodesHeights[index];\n\n if (nodeWidth && nodeHeight) {\n columnHeights[columnTarget] += nodeHeight + sizeDetail.gutter;\n }\n });\n }\n\n // container helpers\n\n function setContainerStyles() {\n container.style.position = 'relative';\n container.style.width = sizeDetail.columns * nodeWidth + (sizeDetail.columns - 1) * sizeDetail.gutter + 'px';\n container.style.height = Math.max.apply(Math, columnHeights) - sizeDetail.gutter + 'px';\n }\n\n // resize helpers\n\n function resizeFrame() {\n if (!ticking) {\n window.requestAnimationFrame(resizeHandler);\n ticking = true;\n }\n }\n\n function resizeHandler() {\n if (sizeIndex !== getSizeIndex()) {\n pack();\n instance.emit('resize', sizeDetail);\n }\n\n ticking = false;\n }\n\n // API\n\n function pack() {\n persist = false;\n runSeries(setup.concat(run));\n\n return instance.emit('pack');\n }\n\n function update() {\n persist = true;\n runSeries(run);\n\n return instance.emit('update');\n }\n\n function resize() {\n var flag = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n\n var action = flag ? 'addEventListener' : 'removeEventListener';\n\n window[action]('resize', resizeFrame);\n\n return instance;\n }\n};\n\nexport default bricks;\n","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar InfiniteScroll = function (_Component) {\n _inherits(InfiniteScroll, _Component);\n\n function InfiniteScroll(props) {\n _classCallCheck(this, InfiniteScroll);\n\n var _this = _possibleConstructorReturn(this, (InfiniteScroll.__proto__ || Object.getPrototypeOf(InfiniteScroll)).call(this, props));\n\n _this.scrollListener = _this.scrollListener.bind(_this);\n _this.eventListenerOptions = _this.eventListenerOptions.bind(_this);\n _this.mousewheelListener = _this.mousewheelListener.bind(_this);\n return _this;\n }\n\n _createClass(InfiniteScroll, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n this.pageLoaded = this.props.pageStart;\n this.options = this.eventListenerOptions();\n this.attachScrollListener();\n }\n }, {\n key: 'componentDidUpdate',\n value: function componentDidUpdate() {\n if (this.props.isReverse && this.loadMore) {\n var parentElement = this.getParentElement(this.scrollComponent);\n parentElement.scrollTop = parentElement.scrollHeight - this.beforeScrollHeight + this.beforeScrollTop;\n this.loadMore = false;\n }\n this.attachScrollListener();\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n this.detachScrollListener();\n this.detachMousewheelListener();\n }\n }, {\n key: 'isPassiveSupported',\n value: function isPassiveSupported() {\n var passive = false;\n\n var testOptions = {\n get passive() {\n passive = true;\n }\n };\n\n try {\n document.addEventListener('test', null, testOptions);\n document.removeEventListener('test', null, testOptions);\n } catch (e) {\n // ignore\n }\n return passive;\n }\n }, {\n key: 'eventListenerOptions',\n value: function eventListenerOptions() {\n var options = this.props.useCapture;\n\n if (this.isPassiveSupported()) {\n options = {\n useCapture: this.props.useCapture,\n passive: true\n };\n } else {\n options = {\n passive: false\n };\n }\n return options;\n }\n\n // Set a defaut loader for all your `InfiniteScroll` components\n\n }, {\n key: 'setDefaultLoader',\n value: function setDefaultLoader(loader) {\n this.defaultLoader = loader;\n }\n }, {\n key: 'detachMousewheelListener',\n value: function detachMousewheelListener() {\n var scrollEl = window;\n if (this.props.useWindow === false) {\n scrollEl = this.scrollComponent.parentNode;\n }\n\n scrollEl.removeEventListener('mousewheel', this.mousewheelListener, this.options ? this.options : this.props.useCapture);\n }\n }, {\n key: 'detachScrollListener',\n value: function detachScrollListener() {\n var scrollEl = window;\n if (this.props.useWindow === false) {\n scrollEl = this.getParentElement(this.scrollComponent);\n }\n\n scrollEl.removeEventListener('scroll', this.scrollListener, this.options ? this.options : this.props.useCapture);\n scrollEl.removeEventListener('resize', this.scrollListener, this.options ? this.options : this.props.useCapture);\n }\n }, {\n key: 'getParentElement',\n value: function getParentElement(el) {\n var scrollParent = this.props.getScrollParent && this.props.getScrollParent();\n if (scrollParent != null) {\n return scrollParent;\n }\n return el && el.parentNode;\n }\n }, {\n key: 'filterProps',\n value: function filterProps(props) {\n return props;\n }\n }, {\n key: 'attachScrollListener',\n value: function attachScrollListener() {\n var parentElement = this.getParentElement(this.scrollComponent);\n\n if (!this.props.hasMore || !parentElement) {\n return;\n }\n\n var scrollEl = window;\n if (this.props.useWindow === false) {\n scrollEl = parentElement;\n }\n\n scrollEl.addEventListener('mousewheel', this.mousewheelListener, this.options ? this.options : this.props.useCapture);\n scrollEl.addEventListener('scroll', this.scrollListener, this.options ? this.options : this.props.useCapture);\n scrollEl.addEventListener('resize', this.scrollListener, this.options ? this.options : this.props.useCapture);\n\n if (this.props.initialLoad) {\n this.scrollListener();\n }\n }\n }, {\n key: 'mousewheelListener',\n value: function mousewheelListener(e) {\n // Prevents Chrome hangups\n // See: https://stackoverflow.com/questions/47524205/random-high-content-download-time-in-chrome/47684257#47684257\n if (e.deltaY === 1 && !this.isPassiveSupported()) {\n e.preventDefault();\n }\n }\n }, {\n key: 'scrollListener',\n value: function scrollListener() {\n var el = this.scrollComponent;\n var scrollEl = window;\n var parentNode = this.getParentElement(el);\n\n var offset = void 0;\n if (this.props.useWindow) {\n var doc = document.documentElement || document.body.parentNode || document.body;\n var scrollTop = scrollEl.pageYOffset !== undefined ? scrollEl.pageYOffset : doc.scrollTop;\n if (this.props.isReverse) {\n offset = scrollTop;\n } else {\n offset = this.calculateOffset(el, scrollTop);\n }\n } else if (this.props.isReverse) {\n offset = parentNode.scrollTop;\n } else {\n offset = el.scrollHeight - parentNode.scrollTop - parentNode.clientHeight;\n }\n\n // Here we make sure the element is visible as well as checking the offset\n if (offset < Number(this.props.threshold) && el && el.offsetParent !== null) {\n this.detachScrollListener();\n this.beforeScrollHeight = parentNode.scrollHeight;\n this.beforeScrollTop = parentNode.scrollTop;\n // Call loadMore after detachScrollListener to allow for non-async loadMore functions\n if (typeof this.props.loadMore === 'function') {\n this.props.loadMore(this.pageLoaded += 1);\n this.loadMore = true;\n }\n }\n }\n }, {\n key: 'calculateOffset',\n value: function calculateOffset(el, scrollTop) {\n if (!el) {\n return 0;\n }\n\n return this.calculateTopPosition(el) + (el.offsetHeight - scrollTop - window.innerHeight);\n }\n }, {\n key: 'calculateTopPosition',\n value: function calculateTopPosition(el) {\n if (!el) {\n return 0;\n }\n return el.offsetTop + this.calculateTopPosition(el.offsetParent);\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n var renderProps = this.filterProps(this.props);\n\n var children = renderProps.children,\n element = renderProps.element,\n hasMore = renderProps.hasMore,\n initialLoad = renderProps.initialLoad,\n isReverse = renderProps.isReverse,\n loader = renderProps.loader,\n loadMore = renderProps.loadMore,\n pageStart = renderProps.pageStart,\n ref = renderProps.ref,\n threshold = renderProps.threshold,\n useCapture = renderProps.useCapture,\n useWindow = renderProps.useWindow,\n getScrollParent = renderProps.getScrollParent,\n props = _objectWithoutProperties(renderProps, ['children', 'element', 'hasMore', 'initialLoad', 'isReverse', 'loader', 'loadMore', 'pageStart', 'ref', 'threshold', 'useCapture', 'useWindow', 'getScrollParent']);\n\n props.ref = function (node) {\n _this2.scrollComponent = node;\n if (ref) {\n ref(node);\n }\n };\n\n var childrenArray = [children];\n if (hasMore) {\n if (loader) {\n isReverse ? childrenArray.unshift(loader) : childrenArray.push(loader);\n } else if (this.defaultLoader) {\n isReverse ? childrenArray.unshift(this.defaultLoader) : childrenArray.push(this.defaultLoader);\n }\n }\n return _react2.default.createElement(element, props, childrenArray);\n }\n }]);\n\n return InfiniteScroll;\n}(_react.Component);\n\nInfiniteScroll.propTypes = {\n children: _propTypes2.default.node.isRequired,\n element: _propTypes2.default.node,\n hasMore: _propTypes2.default.bool,\n initialLoad: _propTypes2.default.bool,\n isReverse: _propTypes2.default.bool,\n loader: _propTypes2.default.node,\n loadMore: _propTypes2.default.func.isRequired,\n pageStart: _propTypes2.default.number,\n ref: _propTypes2.default.func,\n getScrollParent: _propTypes2.default.func,\n threshold: _propTypes2.default.number,\n useCapture: _propTypes2.default.bool,\n useWindow: _propTypes2.default.bool\n};\nInfiniteScroll.defaultProps = {\n element: 'div',\n hasMore: false,\n initialLoad: true,\n pageStart: 0,\n ref: null,\n threshold: 250,\n useWindow: true,\n isReverse: false,\n useCapture: false,\n loader: null,\n getScrollParent: null\n};\nexports.default = InfiniteScroll;\nmodule.exports = exports['default'];\n","module.exports = require('./dist/InfiniteScroll')\n","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _class, _temp2;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _bricks = require('bricks.js');\n\nvar _bricks2 = _interopRequireDefault(_bricks);\n\nvar _reactInfiniteScroller = require('react-infinite-scroller');\n\nvar _reactInfiniteScroller2 = _interopRequireDefault(_reactInfiniteScroller);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar MasonryInfiniteScroller = (_temp2 = _class = function (_Component) {\n _inherits(MasonryInfiniteScroller, _Component);\n\n function MasonryInfiniteScroller() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, MasonryInfiniteScroller);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = MasonryInfiniteScroller.__proto__ || Object.getPrototypeOf(MasonryInfiniteScroller)).call.apply(_ref, [this].concat(args))), _this), _this.setContainerRef = function (component) {\n _this.masonryContainer = component;\n }, _this.forcePack = function () {\n if (_this.masonryContainer) {\n _this.state.instance.pack();\n }\n }, _this.forceUpdate = function () {\n if (_this.masonryContainer) {\n _this.state.instance.update();\n }\n }, _this.createNewInstance = function () {\n var _this$props = _this.props,\n packed = _this$props.packed,\n sizes = _this$props.sizes,\n children = _this$props.children,\n position = _this$props.position;\n\n var instance = (0, _bricks2.default)({\n container: _this.masonryContainer,\n packed: packed,\n sizes: sizes,\n position: position\n });\n\n instance.resize(true);\n\n if (children.length > 0) {\n instance.pack();\n }\n\n _this.setState(function () {\n return { instance: instance };\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(MasonryInfiniteScroller, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n this.createNewInstance();\n }\n }, {\n key: 'componentDidUpdate',\n value: function componentDidUpdate(prevProps) {\n var children = this.props.children;\n var instance = this.state.instance;\n\n\n if (prevProps.children.length === 0 && children.length === 0) {\n return;\n }\n\n if (prevProps.children.length === 0 && children.length > 0) {\n return instance.pack();\n }\n\n if (prevProps.children.length !== children.length) {\n if (this.props.pack) {\n return instance.pack();\n } else {\n return instance.update();\n }\n }\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n if (this.state) {\n this.state.instance.resize(false);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n var _props = this.props,\n children = _props.children,\n className = _props.className,\n style = _props.style,\n pack = _props.pack,\n packed = _props.packed,\n position = _props.position,\n sizes = _props.sizes,\n props = _objectWithoutProperties(_props, ['children', 'className', 'style', 'pack', 'packed', 'position', 'sizes']);\n\n return _react2.default.createElement(\n _reactInfiniteScroller2.default,\n props,\n _react2.default.createElement(\n 'div',\n { ref: this.setContainerRef, className: className, style: style },\n children\n )\n );\n }\n }]);\n\n return MasonryInfiniteScroller;\n}(_react.Component), _class.propTypes = {\n children: _propTypes2.default.arrayOf(_propTypes2.default.element).isRequired,\n className: _propTypes2.default.string,\n initialLoad: _propTypes2.default.bool,\n pack: _propTypes2.default.bool,\n packed: _propTypes2.default.string,\n position: _propTypes2.default.bool,\n sizes: _propTypes2.default.array,\n style: _propTypes2.default.object\n}, _class.defaultProps = {\n className: '',\n initialLoad: true,\n pack: false,\n packed: 'data-packed',\n position: true,\n sizes: [{ columns: 1, gutter: 20 }, { mq: '768px', columns: 2, gutter: 20 }, { mq: '1024px', columns: 3, gutter: 20 }],\n style: {}\n}, _temp2);\nexports.default = MasonryInfiniteScroller;","//Abstracts\n@import \"../abstracts/variables\";\n\n.niu-unsplash-container {\n height: calc(#{$niu-modal-height} - #{$niu-modal-header-height}) !important;\n max-height: $niu-unsplash-container-max-height;\n\n img {\n height: 100%;\n width: 100%;\n object-fit: cover;\n animation: fade-in 1.2s 1s cubic-bezier(0.39, 0.575, 0.565, 1) both;\n border-radius: var(--neeto-ui-rounded);\n position: relative;\n cursor: pointer;\n }\n}\n","import { useCallback, useState } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { hasPermission } from \"neetocommons/utils\";\nimport { MenuHorizontal } from \"neetoicons\";\nimport { VIEW_ROLES_PERMISSION } from \"neetoteam\";\nimport { Alert, Dropdown, Spinner } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\nimport MasonryInfiniteScroller from \"react-masonry-infinite\";\n\nimport { useBulkDestroyAssets } from \"hooks/useAssetsApi\";\nimport { CLOUD_FLARE } from \"src/constants\";\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/components/_image-library.scss\";\n\nimport {\n ASSETS_DESTROY_URL,\n INFINITE_SCROLLER_SIZES,\n INFINITE_SCROLLER_STYLE,\n TABS,\n} from \"../constants\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst InfiniteScroller = ({\n hasMore = false,\n loadMore = noop,\n tab,\n images,\n setSelectedImage = noop,\n handleUnsplashImageSelect = noop,\n handleSubmit = noop,\n}) => {\n const { t } = useTranslation();\n const [deleteConfirmation, setDeleteConfirmation] = useState({\n isOpen: false,\n imageIds: [],\n });\n\n const { isPending, mutate: bulkDelete } =\n useBulkDestroyAssets(ASSETS_DESTROY_URL);\n\n const isMenuButtonEnabled = globalProps.assetsUploaderService !== CLOUD_FLARE;\n\n const handleDelete = useCallback(() => {\n bulkDelete(deleteConfirmation.imageIds, {\n onSuccess: () => setDeleteConfirmation({ isOpen: false, imageIds: [] }),\n });\n }, [deleteConfirmation.imageIds]);\n\n const Loader = (\n <div className=\"flex justify-center\">\n <Spinner />\n </div>\n );\n\n return (\n <div className=\"niu-unsplash-container mr-2 max-w-full overflow-x-hidden overflow-y-scroll\">\n <MasonryInfiniteScroller\n {...{ hasMore, loadMore }}\n pack\n position\n className=\"w-full\"\n loader={Loader}\n sizes={INFINITE_SCROLLER_SIZES}\n style={INFINITE_SCROLLER_STYLE}\n useWindow={false}\n >\n {images.map((image, index) => (\n <div className=\"float-left w-1/2 pb-4 pr-4 md:w-1/4\" key={image.id}>\n <div\n className=\"relative w-full\"\n style={{\n paddingBottom: `${(image.height / image.width) * 100}%`,\n }}\n >\n <div\n className=\"neeto-ui-rounded-sm neeto-ui-bg-gray-100 group absolute h-full w-full\"\n data-cy=\"library-image-card\"\n id={`unsplashImage${image.id}`}\n >\n {tab === TABS[1].key && (\n <>\n <img\n data-cy={`niu-unsplash-image-${index}`}\n src={image?.urls?.regular}\n onClick={() => handleUnsplashImageSelect(image)}\n />\n <a\n className=\"neeto-ui-text-gray-100 absolute bottom-2 left-2 m-auto text-xs underline opacity-0 group-hover:opacity-100\"\n href={`https://unsplash.com/@${image?.user?.username}`}\n rel=\"noreferrer\"\n target=\"_blank\"\n >\n {image?.user?.name}\n {\" | \"} {t(\"neetoImageUploader.labels.unsplash\")}\n </a>\n </>\n )}\n {tab === TABS[0].key && (\n <>\n {hasPermission(VIEW_ROLES_PERMISSION) &&\n isMenuButtonEnabled && (\n <Dropdown\n buttonSize=\"small\"\n buttonStyle=\"tertiary\"\n data-cy={`image-library-image-options-${index}`}\n icon={MenuHorizontal}\n buttonProps={{\n className:\n // eslint-disable-next-line @bigbinary/neeto/use-neetoui-classes\n \"absolute right-2 top-2 z-[1] rounded-full\",\n }}\n >\n <Menu>\n <MenuItem.Button\n data-cy=\"image-library-image-delete\"\n onClick={() =>\n setDeleteConfirmation({\n isOpen: true,\n imageIds: [image?.fileId || image.id],\n })\n }\n >\n {t(\n \"neetoImageUploader.deleteConfirmation.delete\"\n )}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n )}\n <img\n data-cy={`niu-library-image-${index}`}\n src={image?.url}\n onClick={() => {\n setSelectedImage(image);\n handleSubmit(image);\n }}\n />\n </>\n )}\n </div>\n </div>\n </div>\n ))}\n </MasonryInfiniteScroller>\n <Alert\n isOpen={deleteConfirmation.isOpen}\n isSubmitting={isPending}\n message={t(\"neetoImageUploader.deleteConfirmation.message\")}\n submitButtonLabel={t(\"neetoImageUploader.deleteConfirmation.delete\")}\n title={t(\"neetoImageUploader.deleteConfirmation.title\")}\n onClose={() => setDeleteConfirmation({ isOpen: false, imageIds: [] })}\n onSubmit={handleDelete}\n />\n </div>\n );\n};\n\nexport default InfiniteScroller;\n","import { Spinner, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchAssets } from \"hooks/useAssetsApi\";\n\nimport InfiniteScroller from \"./InfiniteScroller\";\n\nimport { ASSETS_FETCH_URL, IMAGES_PER_PAGE, TABS } from \"../constants\";\n\nconst Images = ({ debouncedQuery, setSelectedImage, handleSubmit }) => {\n const { t } = useTranslation();\n\n const {\n fetchNextPage,\n hasNextPage,\n data: { results = [] } = {},\n isLoading,\n isError,\n } = useFetchAssets({\n searchTerm: debouncedQuery,\n per: IMAGES_PER_PAGE,\n url: ASSETS_FETCH_URL,\n });\n\n if (isError) {\n return (\n <Typography className=\"mt-9 flex justify-center\" style=\"body2\">\n {t(\"neetoImageUploader.unsplash.errorMessage\")}\n </Typography>\n );\n }\n\n if (isLoading) {\n return (\n <div className=\"flex justify-around\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <InfiniteScroller\n {...{ handleSubmit, setSelectedImage }}\n hasMore={hasNextPage}\n images={results}\n key={debouncedQuery}\n loadMore={fetchNextPage}\n tab={TABS[0].key}\n />\n );\n};\n\nexport default Images;\n","import axios from \"axios\";\n\nconst newAxiosInstance = axios.create();\n\nconst searchUnsplashImages = ({ pageNo, query }) =>\n axios.get(\"neeto_image_uploader_engine/unsplash/fetch\", {\n params: { page: pageNo, per_page: 30, query: query || \"latest\" },\n });\n\nconst getUnsplashImage = (url, config = {}) =>\n newAxiosInstance.get(url, config);\n\nconst unsplashApi = { searchUnsplashImages, getUnsplashImage };\n\nexport default unsplashApi;\n","import { keepPreviousData, useInfiniteQuery } from \"@tanstack/react-query\";\nimport { prop } from \"ramda\";\n\nimport unsplashApi from \"apis/unsplash\";\nimport { UNSPLASH_STALE_TIME, QUERY_KEYS } from \"src/constants/query\";\n\nconst { UNSPLASH_LIST } = QUERY_KEYS;\n\nconst useFetchUnsplashImages = ({ query }, options = {}) =>\n useInfiniteQuery({\n queryKey: [UNSPLASH_LIST, { query }],\n queryFn: ({ pageParam = 1 }) =>\n unsplashApi.searchUnsplashImages({ pageNo: pageParam, query }),\n initialPageParam: 1,\n getNextPageParam: (lastPage, _, lastPageParam) =>\n lastPageParam < lastPage.totalPages ? lastPageParam + 1 : null,\n select: data => {\n const results = data.pages.flatMap(prop(\"results\"));\n\n return { results };\n },\n staleTime: UNSPLASH_STALE_TIME,\n placeholderData: keepPreviousData,\n ...options,\n });\n\nexport { useFetchUnsplashImages };\n","import { DirectUpload } from \"@rails/activestorage\";\nimport ImageKit from \"imagekit-javascript\";\nimport { keysToCamelCase } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { mergeRight } from \"ramda\";\n\nimport directUploadsApi from \"apis/direct_uploads\";\nimport { UNSPLASH_DEFAULT_NAME } from \"components/constants\";\n\nexport const uploadWithDirectUpload = file =>\n new Promise((resolve, reject) => {\n const upload = new DirectUpload(file, \"/api/direct_uploads\");\n upload.create((error, blob) => {\n if (error) {\n reject(error);\n\n return;\n }\n\n const payload = {\n id: blob.signed_id,\n payload: {\n metadata: {\n organizationKey: globalProps.organization.publicApiKey,\n url: blob.blob_url,\n height: 200,\n width: 200,\n },\n },\n };\n directUploadsApi.update(payload);\n\n resolve(mergeRight(keysToCamelCase(blob), { url: blob.blob_url }));\n });\n });\n\nexport const uploadWithImageKit = file => {\n const authenticationEndpoint = `${window.location.origin}/neeto_image_uploader_engine/imagekit/auth`;\n const imagekit = new ImageKit(\n mergeRight(globalProps.imagekit, { authenticationEndpoint })\n );\n\n return imagekit.upload({\n file,\n fileName: UNSPLASH_DEFAULT_NAME,\n folder: globalProps.imagekit.folder,\n customMetadata: {\n organizationKey: globalProps.organization.publicApiKey,\n appName: globalProps.appName,\n },\n });\n};\n","import { Spinner, Toastr, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport unsplashApi from \"apis/unsplash\";\nimport { useFetchUnsplashImages } from \"hooks/useUnsplashApi\";\nimport { IS_DEVELOPMENT_OR_HEROKU_ENV } from \"src/constants\";\n\nimport InfiniteScroller from \"./InfiniteScroller\";\nimport { uploadWithDirectUpload, uploadWithImageKit } from \"./utils\";\n\nimport {\n TABS,\n UNSPLASH_DEFAULT_NAME,\n UNSPLASH_DEFAULT_REQUEST_CONFIG,\n} from \"../constants\";\n\nconst UnsplashLibrary = ({\n debouncedQuery,\n setSelectedImage,\n setIsUploading,\n setActiveTab,\n}) => {\n const handleUnsplashImageSelect = async image => {\n try {\n setIsUploading(true);\n const response = await unsplashApi.getUnsplashImage(\n image.urls?.regular,\n UNSPLASH_DEFAULT_REQUEST_CONFIG\n );\n\n const file = new File([response.data], UNSPLASH_DEFAULT_NAME, {\n type: response.data.type,\n });\n\n const result = IS_DEVELOPMENT_OR_HEROKU_ENV\n ? await uploadWithDirectUpload(file)\n : await uploadWithImageKit(file);\n\n setSelectedImage(result);\n } catch (error) {\n Toastr.error(error);\n setActiveTab(TABS[0].key);\n } finally {\n setIsUploading(false);\n }\n };\n\n const { t } = useTranslation();\n\n const {\n fetchNextPage,\n hasNextPage,\n data: { results = [] } = {},\n isError,\n isLoading,\n } = useFetchUnsplashImages({ query: debouncedQuery });\n\n if (isError) {\n return (\n <Typography className=\"mt-9 flex justify-center\" style=\"body2\">\n {t(\"neetoImageUploader.unsplash.errorMessage\")}\n </Typography>\n );\n }\n\n if (isLoading) {\n return (\n <div className=\"flex justify-around\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <InfiniteScroller\n {...{ debouncedQuery, handleUnsplashImageSelect }}\n hasMore={hasNextPage}\n images={results}\n key={debouncedQuery}\n loadMore={fetchNextPage}\n tab={TABS[1].key}\n />\n );\n};\n\nexport default UnsplashLibrary;\n","import { useEffect, useState } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport { Input } from \"neetoui\";\nimport { equals } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Images from \"./Images\";\nimport Unsplash from \"./Unsplash\";\n\nimport { TABS } from \"../constants\";\n\nconst ImageLibrary = ({\n setSelectedImage,\n tab,\n setIsUploading,\n setActiveTab,\n handleSubmit = noop,\n}) => {\n const [query, setQuery] = useState(\"\");\n\n const { t } = useTranslation();\n\n const debouncedQuery = useDebounce(query, 400);\n\n const inputPlaceHolder = equals(tab, TABS[1].key)\n ? t(\"neetoImageUploader.placeholders.searchImageFromWeb\")\n : t(\"neetoImageUploader.placeholders.searchImage\");\n\n useEffect(() => {\n setQuery(\"\");\n }, [tab]);\n\n return (\n <div className=\"w-full pb-2 pl-6 pt-1\">\n <Input\n autoFocus\n className=\"mb-4 mr-6\"\n data-cy=\"niu-unsplash-image-picker-search-input\"\n name=\"text\"\n placeholder={inputPlaceHolder}\n value={query}\n onChange={({ target: { value } }) => setQuery(value)}\n />\n {tab === TABS[0].key ? (\n <Images\n {...{ debouncedQuery, handleSubmit, query, setSelectedImage }}\n />\n ) : (\n <Unsplash\n {...{\n debouncedQuery,\n query,\n setActiveTab,\n setIsUploading,\n setSelectedImage,\n }}\n />\n )}\n </div>\n );\n};\n\nexport default ImageLibrary;\n","import { useEffect, useState } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport {\n Modal as NeetoUIModal,\n Button,\n Tab,\n Spinner,\n Toastr,\n Typography,\n} from \"neetoui\";\nimport { equals, mergeRight } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { DEFAULT_UPLOAD_CONFIG } from \"components/ImageUploader/constants\";\nimport { useCreateBlob } from \"hooks/useDirectUploads\";\nimport useImageUploader from \"hooks/useImageUploader\";\nimport useUploadDropzone from \"hooks/useUploadDropzone\";\nimport { generateASCIIFileName } from \"hooks/utils\";\nimport { CLOUD_FLARE, IS_DEVELOPMENT_OR_HEROKU_ENV } from \"src/constants\";\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/components/_modal.scss\";\n\nimport { createOptions } from \"./utils\";\n\nimport { TABS, UNSPLASH_URL } from \"../constants\";\nimport ImageEditor from \"../ImageEditor\";\nimport { isNilOrEmpty } from \"../ImageEditor/utils\";\nimport ImageLibrary from \"../ImageLibrary\";\n\nconst Modal = ({\n isOpen,\n onClose = noop,\n onUploadComplete = noop,\n uploadConfig = {},\n fixedAspectRatio = {},\n}) => {\n const [activeTab, setActiveTab] = useState(TABS[0].key);\n const [selectedImage, setSelectedImage] = useState({});\n const [isUploading, setIsUploading] = useState(false);\n\n const { t } = useTranslation();\n\n const { mutate: createBlob } = useCreateBlob();\n\n const uploadConfigWithDefaults = mergeRight(\n DEFAULT_UPLOAD_CONFIG,\n uploadConfig\n );\n\n const isImageCropEnabled = globalProps.assetsUploaderService !== CLOUD_FLARE;\n const isCloudFlareImageUploader =\n globalProps.assetsUploaderService === CLOUD_FLARE;\n\n const handleCloseModal = () => {\n onClose();\n setSelectedImage({});\n };\n\n const handleImageEditComplete = editedImage => {\n if (IS_DEVELOPMENT_OR_HEROKU_ENV) {\n onUploadComplete({\n url: editedImage.url,\n signedId: editedImage.signedId,\n });\n } else {\n const payload = {\n filename: generateASCIIFileName(editedImage.name),\n byte_size: editedImage.size,\n content_type: editedImage.fileType,\n checksum: editedImage.fileId,\n metadata: editedImage,\n service_name: \"imagekitio\",\n };\n\n createBlob(payload, {\n onSuccess: image => {\n onUploadComplete({\n url: image.blobUrl,\n signedId: image.signedId,\n });\n },\n onError: Toastr.error,\n });\n }\n handleCloseModal();\n };\n\n const handleUploadToCloudFlare = (result, file = {}) => {\n const payload = {\n filename: generateASCIIFileName(result.filename),\n content_type: file.type,\n byte_size: file.size,\n checksum: result.id,\n metadata: { ...result, url: result.variants[0] },\n service_name: \"cloudflare_image\",\n };\n\n createBlob(payload);\n };\n\n const handleSubmit = image => {\n onUploadComplete({ url: image.url, signedId: image.signedId });\n handleCloseModal();\n };\n\n const { uploadFile } = useImageUploader({\n onUploadComplete: isCloudFlareImageUploader\n ? handleUploadToCloudFlare\n : setSelectedImage,\n setIsUploading,\n });\n\n const { getRootProps, getInputProps, isDragActive, inputRef } =\n useUploadDropzone({\n uploadConfig: uploadConfigWithDefaults,\n onDrop: uploadFile,\n });\n\n const openFileUploadDialog = () => inputRef.current?.click();\n const options = createOptions([\n { key: \"local\", onClick: openFileUploadDialog },\n ]);\n\n useEffect(() => {\n setActiveTab(TABS[0].key);\n }, [isOpen]);\n\n return (\n <NeetoUIModal\n {...{ isOpen }}\n className=\"niu-modal\"\n size=\"large\"\n onClose={handleCloseModal}\n >\n {isUploading && (\n <div className=\"neeto-ui-bg-gray-400 absolute inset-0 z-50 flex h-full items-center justify-center opacity-50\">\n <Spinner />\n </div>\n )}\n {isNilOrEmpty(selectedImage) && isDragActive && (\n <div\n className=\"neeto-ui-rounded-xl neeto-ui-bg-gray-400 absolute flex h-full w-full flex-col items-center justify-around border-4 border-dashed border-gray-900 opacity-40\"\n {...getRootProps()}\n >\n <Typography>{t(\"neetoImageUploader.common.dropHere\")}</Typography>\n </div>\n )}\n {!isNilOrEmpty(selectedImage) && isImageCropEnabled ? (\n <ImageEditor\n {...{ fixedAspectRatio, handleImageEditComplete }}\n handleReset={() => setSelectedImage({})}\n image={selectedImage}\n signedId={selectedImage?.signedId}\n />\n ) : (\n <div\n className=\"h-full flex-col\"\n {...getRootProps({\n onClick: event => event.stopPropagation(),\n })}\n >\n <NeetoUIModal.Header>\n <Typography style=\"h2\">\n {t(\"neetoImageUploader.common.imageLibrary\")}\n </Typography>\n </NeetoUIModal.Header>\n <div className=\"px-6 py-2\">\n <div className=\"flex flex-col items-center justify-between gap-2 sm:flex-row\">\n <div className=\"flex gap-2\">\n <Tab size=\"small\">\n {TABS.map(tab => (\n <Tab.Item\n active={activeTab === tab.key}\n data-cy={tab.dataCy}\n key={tab.key}\n onClick={() => setActiveTab(tab.key)}\n >\n {tab.label}\n </Tab.Item>\n ))}\n </Tab>\n </div>\n <div className=\"flex gap-2\">\n {options.map(({ key, ...otherProps }) => (\n <Button {...otherProps} key={key} size=\"small\" />\n ))}\n </div>\n </div>\n </div>\n <ImageLibrary\n {...{\n setActiveTab,\n setIsUploading,\n setSelectedImage,\n ...(isCloudFlareImageUploader && { handleSubmit }),\n }}\n tab={activeTab}\n />\n {equals(activeTab, TABS[1].key) && (\n <NeetoUIModal.Footer className=\"flex items-center justify-center gap-2\">\n <Typography style=\"body2\">\n <Trans\n i18nKey=\"neetoImageUploader.unsplash.poweredByUnsplash\"\n components={{\n a: (\n <a href={UNSPLASH_URL} rel=\"noreferrer\" target=\"_blank\" />\n ),\n }}\n />\n </Typography>\n </NeetoUIModal.Footer>\n )}\n </div>\n )}\n <input {...getInputProps()} />\n </NeetoUIModal>\n );\n};\n\nexport default Modal;\n"],"names":["e","t","n","css","createOptions","options","arguments","length","undefined","OPTIONS","map","option","mergeLeft","findBy","key","this","cropImage","payload","axios","post","developmentApi","useCropImage","useMutation","_objectSpread","mutationFn","useImageControls","_ref","isAspectRatioLocked","setAspectRatioLocked","setCrop","_ref$crop","crop","aspectRatio","imageRef","setAspectRatio","setHeight","setWidth","onToggleAspectRatioLock","newHeight","width","height","newWidth","Math","trunc","x","current","mergeRight","handleWidthChange","cropWidth","Number","displayWidth","naturalWidth","displayHeight","y","toFixed","handleHeightChange","cropHeight","naturalHeight","handleAspectWidthChange","aspectWidth","handleAspectHeightChange","aspectHeight","Controls","handleSubmit","isFullImage","setIsFullImage","_ref$hideControls","hideControls","_useTranslation","useTranslation","getActualCropHeight","_imageRef$current","_imageRef$current2","getActualCropWidth","_imageRef$current3","_imageRef$current4","_useState","useState","_useState2","_slicedToArray","_useState3","_useState4","_useImageControls","debouncedHeight","useDebounce","debouncedWidth","useEffect","_jsxs","className","children","_Fragment","_jsx","Switch","checked","label","onChange","disabled","Typography","style","Input","size","type","value","withEventTargetValue","round","Button","isNilOrEmpty","onClick","ImageEditor","image","handleReset","_ref$handleImageEditC","handleImageEditComplete","noop","_ref$signedId","signedId","_ref$fixedAspectRatio","fixedAspectRatio","setIsAspectRatioLocked","_useState5","_useState6","_useState7","DEFAULT_CROP_CONFIG","_useState8","_useCropImage","mutate","useRef","wrapperRef","cropAspectRatio","isPresent","processCrop","getCropValues","onSuccess","IS_DEVELOPMENT_OR_HEROKU_ENV","newURL","getCroppedImageURL","imageURL","url","icon","LeftArrow","iconPosition","id","ref","classNames","isItemsCenter","ReactCrop","src","aspect","onComplete","alt","onLoad","onImageLoaded","target","fetch","searchTerm","page","per","get","params","bulkDestroy","imageIds","imagesApi","useFetchAssets","useInfiniteQuery","queryKey","QUERY_KEYS","ASSETS_LIST","queryFn","_ref2","_ref2$pageParam","pageParam","getNextPageParam","lastPage","_","lastPageParam","IMAGES_PER_PAGE","select","data","results","pages","flatMap","identity","initialPageParam","staleTime","ASSETS_STALE_TIME","useBulkDestroyAssets","queryClient","useQueryClient","variables","setQueriesData","old","filter","item","includes","fileId","pageParams","t$1","_objectWithoutProperties","Input$1","lib","DEFAULT_PAGE_SIZE$1","Menu","MenuItem","Modal","_excluded","ownKeys$1","_objectSpread$1","ownKeys","ReactPropTypesSecret","require$$0","propTypesModule","require$$1","require$$3","injector_5175b9d6","Dropdown","InfiniteScroller","_ref$hasMore","hasMore","_ref$loadMore","loadMore","tab","images","_ref$setSelectedImage","setSelectedImage","_ref$handleUnsplashIm","handleUnsplashImageSelect","_ref$handleSubmit","isOpen","deleteConfirmation","setDeleteConfirmation","_useBulkDestroyAssets","ASSETS_DESTROY_URL","isPending","bulkDelete","isMenuButtonEnabled","globalProps","assetsUploaderService","CLOUD_FLARE","handleDelete","useCallback","Loader","Spinner","MasonryInfiniteScroller","pack","position","loader","sizes","INFINITE_SCROLLER_SIZES","INFINITE_SCROLLER_STYLE","useWindow","index","_image$urls","_image$user","_image$user2","paddingBottom","concat","TABS","urls","regular","href","user","username","rel","name","hasPermission","VIEW_ROLES_PERMISSION","buttonSize","buttonStyle","MenuHorizontal","buttonProps","Alert","isSubmitting","message","submitButtonLabel","title","onClose","onSubmit","Images","debouncedQuery","_useFetchAssets","ASSETS_FETCH_URL","fetchNextPage","hasNextPage","_useFetchAssets$data","_useFetchAssets$data2","_useFetchAssets$data3","isLoading","isError","_createElement","newAxiosInstance","create","searchUnsplashImages","pageNo","query","per_page","getUnsplashImage","config","unsplashApi","UNSPLASH_LIST","useFetchUnsplashImages","totalPages","prop","UNSPLASH_STALE_TIME","placeholderData","keepPreviousData","uploadWithDirectUpload","file","Promise","resolve","reject","upload","DirectUpload","error","blob","signed_id","metadata","organizationKey","organization","publicApiKey","blob_url","directUploadsApi","update","keysToCamelCase","uploadWithImageKit","authenticationEndpoint","window","location","origin","imagekit","ImageKit","fileName","UNSPLASH_DEFAULT_NAME","folder","customMetadata","appName","UnsplashLibrary","setIsUploading","setActiveTab","_asyncToGenerator","_regeneratorRuntime","mark","_callee","response","result","wrap","_callee$","_context","prev","next","UNSPLASH_DEFAULT_REQUEST_CONFIG","sent","File","t0","t1","Toastr","finish","stop","_x","apply","_useFetchUnsplashImag","_useFetchUnsplashImag2","_useFetchUnsplashImag3","_useFetchUnsplashImag4","ImageLibrary","setQuery","inputPlaceHolder","equals","autoFocus","placeholder","Unsplash","_ref$onClose","_ref$onUploadComplete","onUploadComplete","_ref$uploadConfig","uploadConfig","activeTab","selectedImage","isUploading","_useCreateBlob","useCreateBlob","createBlob","uploadConfigWithDefaults","DEFAULT_UPLOAD_CONFIG","isImageCropEnabled","isCloudFlareImageUploader","handleCloseModal","editedImage","filename","generateASCIIFileName","byte_size","content_type","fileType","checksum","service_name","blobUrl","onError","handleUploadToCloudFlare","variants","_useImageUploader","useImageUploader","uploadFile","_useUploadDropzone","useUploadDropzone","onDrop","getRootProps","getInputProps","isDragActive","inputRef","openFileUploadDialog","_inputRef$current","click","NeetoUIModal","event","stopPropagation","Header","Tab","Item","active","dataCy","otherProps","Footer","Trans","i18nKey","components","a","UNSPLASH_URL"],"mappings":"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AAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAM,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAM,WAAW,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,WAAW,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,IAAG,CAAC,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAG,CAAC,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,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AAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,C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"}
|