@epam/statgpt-conversation-view 0.7.0-dev.30 → 0.7.0-dev.31
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/index.js +1 -1
- package/index.mjs +56 -56
- package/package.json +6 -6
package/index.js
CHANGED
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=Object.
|
|
|
4
4
|
`).split(`
|
|
5
5
|
`).map(e=>e.replace(re,` `).trim()).filter(Boolean)[0]??``;return(t.length>ne?t.substring(0,ne):t).trim()},oe=(e,t,n,r,i,a)=>{let o=`${e}/${t}`;return{name:n,folderId:o,prompt:i,id:(0,m.generateConversationId)({folderId:o,name:n}),messages:[{role:u.Role.Assistant,content:r}],custom_fields:{configuration:{choice:a}}}},se=(0,c.createContext)(null);function ce({children:e,styles:t}){return(0,l.jsx)(se.Provider,{value:t??{},children:e})}function Y(){let e=(0,c.useContext)(se);if(!e)throw Error(`useConversationViewStyles must be used within ConversationViewStylesProvider`);return e}var le=Object.defineProperty,ue=Object.getOwnPropertySymbols,de=Object.prototype.hasOwnProperty,fe=Object.prototype.propertyIsEnumerable,pe=(e,t,n)=>t in e?le(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,me=(e,t)=>{for(var n in t||={})de.call(t,n)&&pe(e,n,t[n]);if(ue)for(var n of ue(t))fe.call(t,n)&&pe(e,n,t[n]);return e},he=(e,t)=>{var n={};for(var r in e)de.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&ue)for(var r of ue(e))t.indexOf(r)<0&&fe.call(e,r)&&(n[r]=e[r]);return n},ge;(e=>{let t=class t{constructor(e,n,r,a){if(this.version=e,this.errorCorrectionLevel=n,this.modules=[],this.isFunction=[],e<t.MIN_VERSION||e>t.MAX_VERSION)throw RangeError(`Version value out of range`);if(a<-1||a>7)throw RangeError(`Mask value out of range`);this.size=e*4+17;let o=[];for(let e=0;e<this.size;e++)o.push(!1);for(let e=0;e<this.size;e++)this.modules.push(o.slice()),this.isFunction.push(o.slice());this.drawFunctionPatterns();let s=this.addEccAndInterleave(r);if(this.drawCodewords(s),a==-1){let e=1e9;for(let t=0;t<8;t++){this.applyMask(t),this.drawFormatBits(t);let n=this.getPenaltyScore();n<e&&(a=t,e=n),this.applyMask(t)}}i(0<=a&&a<=7),this.mask=a,this.applyMask(a),this.drawFormatBits(a),this.isFunction=[]}static encodeText(n,r){let i=e.QrSegment.makeSegments(n);return t.encodeSegments(i,r)}static encodeBinary(n,r){let i=e.QrSegment.makeBytes(n);return t.encodeSegments([i],r)}static encodeSegments(e,r,a=1,s=40,c=-1,l=!0){if(!(t.MIN_VERSION<=a&&a<=s&&s<=t.MAX_VERSION)||c<-1||c>7)throw RangeError(`Invalid value`);let u,d;for(u=a;;u++){let n=t.getNumDataCodewords(u,r)*8,i=o.getTotalBits(e,u);if(i<=n){d=i;break}if(u>=s)throw RangeError(`Data too long`)}for(let e of[t.Ecc.MEDIUM,t.Ecc.QUARTILE,t.Ecc.HIGH])l&&d<=t.getNumDataCodewords(u,e)*8&&(r=e);let f=[];for(let t of e){n(t.mode.modeBits,4,f),n(t.numChars,t.mode.numCharCountBits(u),f);for(let e of t.getData())f.push(e)}i(f.length==d);let p=t.getNumDataCodewords(u,r)*8;i(f.length<=p),n(0,Math.min(4,p-f.length),f),n(0,(8-f.length%8)%8,f),i(f.length%8==0);for(let e=236;f.length<p;e^=253)n(e,8,f);let m=[];for(;m.length*8<f.length;)m.push(0);return f.forEach((e,t)=>m[t>>>3]|=e<<7-(t&7)),new t(u,r,m,c)}getModule(e,t){return 0<=e&&e<this.size&&0<=t&&t<this.size&&this.modules[t][e]}getModules(){return this.modules}drawFunctionPatterns(){for(let e=0;e<this.size;e++)this.setFunctionModule(6,e,e%2==0),this.setFunctionModule(e,6,e%2==0);this.drawFinderPattern(3,3),this.drawFinderPattern(this.size-4,3),this.drawFinderPattern(3,this.size-4);let e=this.getAlignmentPatternPositions(),t=e.length;for(let n=0;n<t;n++)for(let r=0;r<t;r++)n==0&&r==0||n==0&&r==t-1||n==t-1&&r==0||this.drawAlignmentPattern(e[n],e[r]);this.drawFormatBits(0),this.drawVersion()}drawFormatBits(e){let t=this.errorCorrectionLevel.formatBits<<3|e,n=t;for(let e=0;e<10;e++)n=n<<1^(n>>>9)*1335;let a=(t<<10|n)^21522;i(a>>>15==0);for(let e=0;e<=5;e++)this.setFunctionModule(8,e,r(a,e));this.setFunctionModule(8,7,r(a,6)),this.setFunctionModule(8,8,r(a,7)),this.setFunctionModule(7,8,r(a,8));for(let e=9;e<15;e++)this.setFunctionModule(14-e,8,r(a,e));for(let e=0;e<8;e++)this.setFunctionModule(this.size-1-e,8,r(a,e));for(let e=8;e<15;e++)this.setFunctionModule(8,this.size-15+e,r(a,e));this.setFunctionModule(8,this.size-8,!0)}drawVersion(){if(this.version<7)return;let e=this.version;for(let t=0;t<12;t++)e=e<<1^(e>>>11)*7973;let t=this.version<<12|e;i(t>>>18==0);for(let e=0;e<18;e++){let n=r(t,e),i=this.size-11+e%3,a=Math.floor(e/3);this.setFunctionModule(i,a,n),this.setFunctionModule(a,i,n)}}drawFinderPattern(e,t){for(let n=-4;n<=4;n++)for(let r=-4;r<=4;r++){let i=Math.max(Math.abs(r),Math.abs(n)),a=e+r,o=t+n;0<=a&&a<this.size&&0<=o&&o<this.size&&this.setFunctionModule(a,o,i!=2&&i!=4)}}drawAlignmentPattern(e,t){for(let n=-2;n<=2;n++)for(let r=-2;r<=2;r++)this.setFunctionModule(e+r,t+n,Math.max(Math.abs(r),Math.abs(n))!=1)}setFunctionModule(e,t,n){this.modules[t][e]=n,this.isFunction[t][e]=!0}addEccAndInterleave(e){let n=this.version,r=this.errorCorrectionLevel;if(e.length!=t.getNumDataCodewords(n,r))throw RangeError(`Invalid argument`);let a=t.NUM_ERROR_CORRECTION_BLOCKS[r.ordinal][n],o=t.ECC_CODEWORDS_PER_BLOCK[r.ordinal][n],s=Math.floor(t.getNumRawDataModules(n)/8),c=a-s%a,l=Math.floor(s/a),u=[],d=t.reedSolomonComputeDivisor(o);for(let n=0,r=0;n<a;n++){let i=e.slice(r,r+l-o+(n<c?0:1));r+=i.length;let a=t.reedSolomonComputeRemainder(i,d);n<c&&i.push(0),u.push(i.concat(a))}let f=[];for(let e=0;e<u[0].length;e++)u.forEach((t,n)=>{(e!=l-o||n>=c)&&f.push(t[e])});return i(f.length==s),f}drawCodewords(e){if(e.length!=Math.floor(t.getNumRawDataModules(this.version)/8))throw RangeError(`Invalid argument`);let n=0;for(let t=this.size-1;t>=1;t-=2){t==6&&(t=5);for(let i=0;i<this.size;i++)for(let a=0;a<2;a++){let o=t-a,s=t+1&2?i:this.size-1-i;!this.isFunction[s][o]&&n<e.length*8&&(this.modules[s][o]=r(e[n>>>3],7-(n&7)),n++)}}i(n==e.length*8)}applyMask(e){if(e<0||e>7)throw RangeError(`Mask value out of range`);for(let t=0;t<this.size;t++)for(let n=0;n<this.size;n++){let r;switch(e){case 0:r=(n+t)%2==0;break;case 1:r=t%2==0;break;case 2:r=n%3==0;break;case 3:r=(n+t)%3==0;break;case 4:r=(Math.floor(n/3)+Math.floor(t/2))%2==0;break;case 5:r=n*t%2+n*t%3==0;break;case 6:r=(n*t%2+n*t%3)%2==0;break;case 7:r=((n+t)%2+n*t%3)%2==0;break;default:throw Error(`Unreachable`)}!this.isFunction[t][n]&&r&&(this.modules[t][n]=!this.modules[t][n])}}getPenaltyScore(){let e=0;for(let n=0;n<this.size;n++){let r=!1,i=0,a=[0,0,0,0,0,0,0];for(let o=0;o<this.size;o++)this.modules[n][o]==r?(i++,i==5?e+=t.PENALTY_N1:i>5&&e++):(this.finderPenaltyAddHistory(i,a),r||(e+=this.finderPenaltyCountPatterns(a)*t.PENALTY_N3),r=this.modules[n][o],i=1);e+=this.finderPenaltyTerminateAndCount(r,i,a)*t.PENALTY_N3}for(let n=0;n<this.size;n++){let r=!1,i=0,a=[0,0,0,0,0,0,0];for(let o=0;o<this.size;o++)this.modules[o][n]==r?(i++,i==5?e+=t.PENALTY_N1:i>5&&e++):(this.finderPenaltyAddHistory(i,a),r||(e+=this.finderPenaltyCountPatterns(a)*t.PENALTY_N3),r=this.modules[o][n],i=1);e+=this.finderPenaltyTerminateAndCount(r,i,a)*t.PENALTY_N3}for(let n=0;n<this.size-1;n++)for(let r=0;r<this.size-1;r++){let i=this.modules[n][r];i==this.modules[n][r+1]&&i==this.modules[n+1][r]&&i==this.modules[n+1][r+1]&&(e+=t.PENALTY_N2)}let n=0;for(let e of this.modules)n=e.reduce((e,t)=>e+ +!!t,n);let r=this.size*this.size,a=Math.ceil(Math.abs(n*20-r*10)/r)-1;return i(0<=a&&a<=9),e+=a*t.PENALTY_N4,i(0<=e&&e<=2568888),e}getAlignmentPatternPositions(){if(this.version==1)return[];{let e=Math.floor(this.version/7)+2,t=this.version==32?26:Math.ceil((this.version*4+4)/(e*2-2))*2,n=[6];for(let r=this.size-7;n.length<e;r-=t)n.splice(1,0,r);return n}}static getNumRawDataModules(e){if(e<t.MIN_VERSION||e>t.MAX_VERSION)throw RangeError(`Version number out of range`);let n=(16*e+128)*e+64;if(e>=2){let t=Math.floor(e/7)+2;n-=(25*t-10)*t-55,e>=7&&(n-=36)}return i(208<=n&&n<=29648),n}static getNumDataCodewords(e,n){return Math.floor(t.getNumRawDataModules(e)/8)-t.ECC_CODEWORDS_PER_BLOCK[n.ordinal][e]*t.NUM_ERROR_CORRECTION_BLOCKS[n.ordinal][e]}static reedSolomonComputeDivisor(e){if(e<1||e>255)throw RangeError(`Degree out of range`);let n=[];for(let t=0;t<e-1;t++)n.push(0);n.push(1);let r=1;for(let i=0;i<e;i++){for(let e=0;e<n.length;e++)n[e]=t.reedSolomonMultiply(n[e],r),e+1<n.length&&(n[e]^=n[e+1]);r=t.reedSolomonMultiply(r,2)}return n}static reedSolomonComputeRemainder(e,n){let r=n.map(e=>0);for(let i of e){let e=i^r.shift();r.push(0),n.forEach((n,i)=>r[i]^=t.reedSolomonMultiply(n,e))}return r}static reedSolomonMultiply(e,t){if(e>>>8||t>>>8)throw RangeError(`Byte out of range`);let n=0;for(let r=7;r>=0;r--)n=n<<1^(n>>>7)*285,n^=(t>>>r&1)*e;return i(n>>>8==0),n}finderPenaltyCountPatterns(e){let t=e[1];i(t<=this.size*3);let n=t>0&&e[2]==t&&e[3]==t*3&&e[4]==t&&e[5]==t;return(n&&e[0]>=t*4&&e[6]>=t?1:0)+(n&&e[6]>=t*4&&e[0]>=t?1:0)}finderPenaltyTerminateAndCount(e,t,n){return e&&(this.finderPenaltyAddHistory(t,n),t=0),t+=this.size,this.finderPenaltyAddHistory(t,n),this.finderPenaltyCountPatterns(n)}finderPenaltyAddHistory(e,t){t[0]==0&&(e+=this.size),t.pop(),t.unshift(e)}};t.MIN_VERSION=1,t.MAX_VERSION=40,t.PENALTY_N1=3,t.PENALTY_N2=3,t.PENALTY_N3=40,t.PENALTY_N4=10,t.ECC_CODEWORDS_PER_BLOCK=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],t.NUM_ERROR_CORRECTION_BLOCKS=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],e.QrCode=t;function n(e,t,n){if(t<0||t>31||e>>>t)throw RangeError(`Value out of range`);for(let r=t-1;r>=0;r--)n.push(e>>>r&1)}function r(e,t){return(e>>>t&1)!=0}function i(e){if(!e)throw Error(`Assertion error`)}let a=class e{constructor(e,t,n){if(this.mode=e,this.numChars=t,this.bitData=n,t<0)throw RangeError(`Invalid argument`);this.bitData=n.slice()}static makeBytes(t){let r=[];for(let e of t)n(e,8,r);return new e(e.Mode.BYTE,t.length,r)}static makeNumeric(t){if(!e.isNumeric(t))throw RangeError(`String contains non-numeric characters`);let r=[];for(let e=0;e<t.length;){let i=Math.min(t.length-e,3);n(parseInt(t.substring(e,e+i),10),i*3+1,r),e+=i}return new e(e.Mode.NUMERIC,t.length,r)}static makeAlphanumeric(t){if(!e.isAlphanumeric(t))throw RangeError(`String contains unencodable characters in alphanumeric mode`);let r=[],i;for(i=0;i+2<=t.length;i+=2){let a=e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(i))*45;a+=e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(i+1)),n(a,11,r)}return i<t.length&&n(e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(i)),6,r),new e(e.Mode.ALPHANUMERIC,t.length,r)}static makeSegments(t){return t==``?[]:e.isNumeric(t)?[e.makeNumeric(t)]:e.isAlphanumeric(t)?[e.makeAlphanumeric(t)]:[e.makeBytes(e.toUtf8ByteArray(t))]}static makeEci(t){let r=[];if(t<0)throw RangeError(`ECI assignment value out of range`);if(t<128)n(t,8,r);else if(t<16384)n(2,2,r),n(t,14,r);else if(t<1e6)n(6,3,r),n(t,21,r);else throw RangeError(`ECI assignment value out of range`);return new e(e.Mode.ECI,0,r)}static isNumeric(t){return e.NUMERIC_REGEX.test(t)}static isAlphanumeric(t){return e.ALPHANUMERIC_REGEX.test(t)}getData(){return this.bitData.slice()}static getTotalBits(e,t){let n=0;for(let r of e){let e=r.mode.numCharCountBits(t);if(r.numChars>=1<<e)return 1/0;n+=4+e+r.bitData.length}return n}static toUtf8ByteArray(e){e=encodeURI(e);let t=[];for(let n=0;n<e.length;n++)e.charAt(n)==`%`?(t.push(parseInt(e.substring(n+1,n+3),16)),n+=2):t.push(e.charCodeAt(n));return t}};a.NUMERIC_REGEX=/^[0-9]*$/,a.ALPHANUMERIC_REGEX=/^[A-Z0-9 $%*+.\/:-]*$/,a.ALPHANUMERIC_CHARSET=`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:`;let o=a;e.QrSegment=a})(ge||={}),(e=>{(e=>{let t=class{constructor(e,t){this.ordinal=e,this.formatBits=t}};t.LOW=new t(0,1),t.MEDIUM=new t(1,0),t.QUARTILE=new t(2,3),t.HIGH=new t(3,2),e.Ecc=t})(e.QrCode||={})})(ge||={}),(e=>{(e=>{let t=class{constructor(e,t){this.modeBits=e,this.numBitsCharCount=t}numCharCountBits(e){return this.numBitsCharCount[Math.floor((e+7)/17)]}};t.NUMERIC=new t(1,[10,12,14]),t.ALPHANUMERIC=new t(2,[9,11,13]),t.BYTE=new t(4,[8,16,16]),t.KANJI=new t(8,[8,10,12]),t.ECI=new t(7,[0,0,0]),e.Mode=t})(e.QrSegment||={})})(ge||={});var _e=ge,ve={L:_e.QrCode.Ecc.LOW,M:_e.QrCode.Ecc.MEDIUM,Q:_e.QrCode.Ecc.QUARTILE,H:_e.QrCode.Ecc.HIGH},ye=128,be=`L`,xe=`#FFFFFF`,Se=`#000000`,Ce=!1,we=1,Te=4,Ee=0,De=.1;function Oe(e,t=0){let n=[];return e.forEach(function(e,r){let i=null;e.forEach(function(a,o){if(!a&&i!==null){n.push(`M${i+t} ${r+t}h${o-i}v1H${i+t}z`),i=null;return}if(o===e.length-1){if(!a)return;i===null?n.push(`M${o+t},${r+t} h1v1H${o+t}z`):n.push(`M${i+t},${r+t} h${o+1-i}v1H${i+t}z`);return}a&&i===null&&(i=o)})}),n.join(``)}function ke(e,t){return e.slice().map((e,n)=>n<t.y||n>=t.y+t.h?e:e.map((e,n)=>n<t.x||n>=t.x+t.w?e:!1))}function Ae(e,t,n,r){if(r==null)return null;let i=e.length+n*2,a=Math.floor(t*De),o=i/t,s=(r.width||a)*o,c=(r.height||a)*o,l=r.x==null?e.length/2-s/2:r.x*o,u=r.y==null?e.length/2-c/2:r.y*o,d=r.opacity==null?1:r.opacity,f=null;if(r.excavate){let e=Math.floor(l),t=Math.floor(u);f={x:e,y:t,w:Math.ceil(s+l-e),h:Math.ceil(c+u-t)}}let p=r.crossOrigin;return{x:l,y:u,h:c,w:s,excavation:f,opacity:d,crossOrigin:p}}function je(e,t){return t==null?e?Te:Ee:Math.max(Math.floor(t),0)}function Me({value:e,level:t,minVersion:n,includeMargin:r,marginSize:i,imageSettings:a,size:o,boostLevel:s}){let l=c.default.useMemo(()=>{let r=(Array.isArray(e)?e:[e]).reduce((e,t)=>(e.push(..._e.QrSegment.makeSegments(t)),e),[]);return _e.QrCode.encodeSegments(r,ve[t],n,void 0,void 0,s)},[e,t,n,s]),{cells:u,margin:d,numCells:f,calculatedImageSettings:p}=c.default.useMemo(()=>{let e=l.getModules(),t=je(r,i);return{cells:e,margin:t,numCells:e.length+t*2,calculatedImageSettings:Ae(e,o,t,a)}},[l,o,a,r,i]);return{qrcode:l,margin:d,cells:u,numCells:f,calculatedImageSettings:p}}var Ne=function(){try{new Path2D().addPath(new Path2D)}catch{return!1}return!0}(),Pe=c.default.forwardRef(function(e,t){let n=e,{value:r,size:i=ye,level:a=be,bgColor:o=xe,fgColor:s=Se,includeMargin:l=Ce,minVersion:u=we,boostLevel:d,marginSize:f,imageSettings:p}=n,m=he(n,[`value`,`size`,`level`,`bgColor`,`fgColor`,`includeMargin`,`minVersion`,`boostLevel`,`marginSize`,`imageSettings`]),{style:h}=m,g=he(m,[`style`]),_=p?.src,v=c.default.useRef(null),y=c.default.useRef(null),b=c.default.useCallback(e=>{v.current=e,typeof t==`function`?t(e):t&&(t.current=e)},[t]),[x,S]=c.default.useState(!1),{margin:C,cells:w,numCells:T,calculatedImageSettings:E}=Me({value:r,level:a,minVersion:u,boostLevel:d,includeMargin:l,marginSize:f,imageSettings:p,size:i});c.default.useEffect(()=>{if(v.current!=null){let e=v.current,t=e.getContext(`2d`);if(!t)return;let n=w,r=y.current,a=E!=null&&r!==null&&r.complete&&r.naturalHeight!==0&&r.naturalWidth!==0;a&&E.excavation!=null&&(n=ke(w,E.excavation));let c=window.devicePixelRatio||1;e.height=e.width=i*c;let l=i/T*c;t.scale(l,l),t.fillStyle=o,t.fillRect(0,0,T,T),t.fillStyle=s,Ne?t.fill(new Path2D(Oe(n,C))):w.forEach(function(e,n){e.forEach(function(e,r){e&&t.fillRect(r+C,n+C,1,1)})}),E&&(t.globalAlpha=E.opacity),a&&t.drawImage(r,E.x+C,E.y+C,E.w,E.h)}}),c.default.useEffect(()=>{S(!1)},[_]);let D=me({height:i,width:i},h),O=null;return _!=null&&(O=c.default.createElement(`img`,{src:_,key:_,style:{display:`none`},onLoad:()=>{S(!0)},ref:y,crossOrigin:E?.crossOrigin})),c.default.createElement(c.default.Fragment,null,c.default.createElement(`canvas`,me({style:D,height:i,width:i,ref:b,role:`img`},g)),O)});Pe.displayName=`QRCodeCanvas`;var Fe=c.default.forwardRef(function(e,t){let n=e,{value:r,size:i=ye,level:a=be,bgColor:o=xe,fgColor:s=Se,includeMargin:l=Ce,minVersion:u=we,boostLevel:d,title:f,marginSize:p,imageSettings:m}=n,h=he(n,[`value`,`size`,`level`,`bgColor`,`fgColor`,`includeMargin`,`minVersion`,`boostLevel`,`title`,`marginSize`,`imageSettings`]),{margin:g,cells:_,numCells:v,calculatedImageSettings:y}=Me({value:r,level:a,minVersion:u,boostLevel:d,includeMargin:l,marginSize:p,imageSettings:m,size:i}),b=_,x=null;m!=null&&y!=null&&(y.excavation!=null&&(b=ke(_,y.excavation)),x=c.default.createElement(`image`,{href:m.src,height:y.h,width:y.w,x:y.x+g,y:y.y+g,preserveAspectRatio:`none`,opacity:y.opacity,crossOrigin:y.crossOrigin}));let S=Oe(b,g);return c.default.createElement(`svg`,me({height:i,width:i,viewBox:`0 0 ${v} ${v}`,ref:t,role:`img`},h),!!f&&c.default.createElement(`title`,null,f),c.default.createElement(`path`,{fill:o,d:`M0,0 h${v}v${v}H0z`,shapeRendering:`crispEdges`}),c.default.createElement(`path`,{fill:s,d:S,shapeRendering:`crispEdges`}),x)});Fe.displayName=`QRCodeSVG`;var Ie=(e,t)=>({invitationType:m.InvitationType.LINK,resources:[{url:`conversations/${encodeURI(e)}`},...t]}),Le=e=>`/${h.SHARE_CONVERSATION_ROUTE}/${e?.invitationLink?.split(`/`).at(-1)||``}`,Re=(e,t)=>t?.find(t=>{let n=e?.id?.split(`/`)?.pop(),r=t?.url?.split(`/`)?.pop()||``;return r===n||decodeURI(r)===n}),ze=e=>(e?.messages?.filter(e=>!!e?.custom_content?.attachments))?.flatMap(e=>e?.custom_content?.attachments?.map(e=>({url:e?.url||``}))||[])?.filter(e=>!!e?.url)||[],Be=({conversation:e,locale:t,onCloseModal:n,modalDividers:r,getConversation:i,generateConversationLink:a,chatExpiration:o,chatExpirationDays:s,close:u,chatWarning:p,shareLink:g,shareCopyLink:_,shareCopiedLink:v,shareDescription:y,shareRemoveAccessToUsers:b,chatName:x,getSharedConversations:S,revokeSharedConversations:C,baseUrl:w,id:T,clientSharedPage:E,clientSharedProp:D,shareAlertMessage:O})=>{let[k,A]=(0,c.useState)(null),[j,M]=(0,c.useState)(),[N,P]=(0,c.useState)(!1),[F,I]=(0,c.useState)(!1),[L,R]=(0,c.useState)(),z=(0,c.useRef)(null),B=(0,c.useRef)(null),V=(0,c.useMemo)(()=>e?.id?decodeURI(e.id):T?.[0]&&T?.[1]&&t?decodeURI(`${T[0]}/${t}/${T[1]}`):null,[e?.id,T,t]),H=(0,c.useMemo)(()=>{if(!k)return``;let e=w||window.location.origin;return w&&w!==window.location.origin&&E&&D?`${e}/${E}?${D}=${k.split(`/${h.SHARE_CONVERSATION_ROUTE}/`)?.[1]}`:`${e}/${t}${k}`},[w,k,t,E,D]),U=(0,c.useCallback)(async e=>{let t=await S?.((0,m.getSharedConversationsRequest)(m.ShareTarget.OTHERS));if(t)return Re({id:e},t.resources)},[S]);(0,c.useEffect)(()=>{if(!V||z.current===V)return;z.current=V,P(!1),B.current?.abort();let e=new AbortController;return B.current=e,(async()=>{try{let t=Ie(V,ze(await i?.(V))),n=await a?.(t),r=await U(V);if(e.signal.aborted||!n)return;A(Le(n)),M(r),P(!0)}catch(t){if(e.signal.aborted)return;P(!1),console.error(`Error sharing conversation`,t)}})(),()=>{e.abort(),z.current=null}},[V,a,i,U]);let W=(0,c.useCallback)(()=>{B.current?.abort(),z.current=null,n(),A(null),P(!1),I(!1)},[n]),G=(0,c.useCallback)(()=>{I(!0),navigator.clipboard.writeText(H||``)},[H]),K=async()=>{try{if(R(!0),j&&await C?.({resources:[j]}),V){let e=await U(V);B.current?.signal.aborted||M(e)}}catch(e){console.error(`Error revoking shared conversation`,e)}finally{B.current?.signal.aborted||R(!1)}},q=(0,c.useCallback)(()=>(0,l.jsx)(d.Button,{buttonClassName:F?`text-button-secondary`:`text-button-primary`,iconBefore:F?(0,l.jsx)(f.IconCheck,{width:20,height:20}):(0,l.jsx)(f.IconCopy,{width:20,height:20}),title:F?v??`Copied`:_??`Copy link`,disabled:F,onClick:G}),[F,G,v,_]);return(0,l.jsxs)(d.Popup,{heading:g??`Share link`,portalId:`share`,size:d.PopUpSize.SM,dividers:r,onClose:W,closeButtonTitle:u??`Close`,children:[N?(0,l.jsxs)(`div`,{className:`share flex flex-col gap-y-4 overflow-auto px-6 pb-6 sm:p-0`,children:[O?(0,l.jsx)(d.InlineAlert,{type:d.InlineAlertType.Note,icon:(0,l.jsx)(f.IconInfoCircle,{width:16,height:16}),children:O}):null,e?.name?(0,l.jsxs)(`div`,{className:`share-info flex w-full`,children:[(0,l.jsx)(`p`,{className:`share-info-title body-1 mr-1 text-neutrals-800`,children:x??`Chat name:`}),(0,l.jsx)(`h3`,{className:`min-w-0 flex-1 truncate`,title:e?.name,children:e?.name})]}):null,(0,l.jsxs)(`div`,{className:`share-info flex`,children:[(0,l.jsx)(`p`,{className:`share-info-title body-1 mr-1 text-neutrals-800`,children:o??`Link expiration date:`}),(0,l.jsxs)(`h3`,{children:[`3 `,s??`days`]})]}),(0,l.jsx)(Fe,{className:`min-h-[200px] self-center rounded border border-neutrals-600 p-2`,value:H,size:200}),(0,l.jsx)(`p`,{className:`body-2 text-neutrals-1000`,children:y??`Your name, special instructions, and any messages you add after sharing remain confidential.`}),(0,l.jsx)(d.InputWithIcon,{containerClasses:`share-input-container`,cssClass:`share-input`,readonly:!0,placeholder:H,value:H,inputId:`conversationLink`,iconAfterInput:q()})]}):(0,l.jsx)(`div`,{className:`flex items-center justify-center p-6`,children:(0,l.jsx)(d.Loader,{})}),N?e&&j?(0,l.jsx)(`div`,{className:`remove-access`,children:(0,l.jsx)(d.Button,{title:b??`Remove access to all users`,buttonClassName:`remove-access-button py-3 px-4`,isSmallButton:!0,disabled:L,onClick:K})}):(0,l.jsx)(`p`,{className:`body-2 share-footer text-neutrals-800`,children:p??`This chat has not been shared with anyone yet.`}):(0,l.jsx)(`div`,{})]})},Ve=({shareButtonClass:e,shareIcon:t,...n})=>{let[r,i]=(0,c.useState)(d.PopUpState.Closed),a=()=>{i(d.PopUpState.Opened)},o=(0,c.useCallback)(()=>{i(d.PopUpState.Closed)},[]);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(d.Button,{buttonClassName:e||`text-button-secondary`,title:n?.share||`Share`,iconBefore:t,onClick:a}),r===d.PopUpState.Opened&&(0,l.jsx)(Be,{onCloseModal:o,...n})]})},He=({conversation:e,locale:t,isOpenedAdvancedView:n,isShowShareButton:r,shareConversationProps:i,rightSlot:a})=>(0,l.jsx)(l.Fragment,{children:(0,l.jsxs)(`header`,{className:(0,p.default)(`bg-white border-b px-6 py-2 border-gray-200 flex justify-between items-center mobile:px-1`,`conversation-view-header`),children:[(0,l.jsx)(`span`,{className:(0,p.default)(`flex-1 min-w-0 truncate h4`,`conversation-view-header-text`),title:e?.name,children:e?.name}),(0,l.jsxs)(`div`,{className:`ml-3 flex items-center gap-4`,children:[!n&&r&&(0,l.jsx)(`div`,{className:`flex gap-x-2`,children:(0,l.jsx)(Ve,{conversation:e,locale:t,...i})}),a]})]})}),Ue=({content:e,textColorClass:t})=>{let{isOpenedAdvancedView:n}=I();return(0,l.jsx)(`div`,{className:(0,p.default)(`prose max-w-none break-words`,n?`body-2`:`body-1`,t),children:(0,l.jsx)(_.default,{remarkPlugins:[v.default],components:{strong:e=>(0,l.jsx)(`strong`,{className:t,...e}),a:({href:e,children:t,...n})=>(0,l.jsx)(`a`,{href:e,target:`_blank`,rel:`noreferrer`,...n,children:t})},children:e})})},We=({choiceButtons:e,disabled:t,onClick:n})=>{let r=(0,p.default)(`flex w-full min-h-[72px] flex-col items-start justify-center rounded border px-4 py-2 text-left`,`border-hues-200 hover:bg-hues-100`,`disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-transparent`);return e.map(e=>(0,l.jsx)(`div`,{className:`mt-4`,children:(0,l.jsxs)(`button`,{type:`button`,className:r,disabled:t,onClick:()=>n(e[u.DialSchemaProperties.DialWidgetOptions]?.populateText,e?.const),"aria-label":`button`,children:[(0,l.jsx)(`h3`,{className:`mb-1`,children:e.title}),e.const!==q.COMPLETE&&(0,l.jsx)(`p`,{className:`body-1 text-neutrals-800`,children:e[u.DialSchemaProperties.DialWidgetOptions]?.populateText})]})},e.title))},Ge=({messageContent:e,choiceButtons:t,disabled:n,onClick:r,handleOnboardingSkip:i})=>{let{titles:a}=Y();return(0,l.jsxs)(`div`,{className:`onboarding flex size-full flex-1 flex-col overflow-auto`,children:[(0,l.jsx)(He,{conversation:{name:a?.onboardingTitle??`Introducing the AI assistant`}}),(0,l.jsxs)(`div`,{className:`onboarding-content flex flex-col`,children:[(0,l.jsx)(Ue,{content:e}),(0,l.jsx)(`div`,{className:`mt-4`,children:(0,l.jsx)(We,{choiceButtons:t,disabled:n,onClick:r})}),(0,l.jsxs)(`div`,{className:`mt-8 flex`,children:[(0,l.jsx)(d.Button,{title:a?.skipOnboardingNow,buttonClassName:`text-button-secondary mr-4`,disabled:n,onClick:()=>i?.(),isSmallButton:!0}),(0,l.jsx)(d.Button,{title:a?.refuseOnboarding,buttonClassName:`text-button-tertiary`,disabled:n,onClick:()=>i?.(!0),isSmallButton:!0})]})]})]})},Ke=({openNewConversation:e})=>{let{titles:t}=Y();return(0,l.jsxs)(`div`,{className:`body-3 bg-accent-300 p-2 text-center`,children:[(0,l.jsx)(`span`,{className:`mr-2 text-neutrals-900`,children:t?.onboardingFooter}),(0,l.jsxs)(`span`,{onClick:e,className:`inline-flex cursor-pointer align-top`,children:[(0,l.jsx)(f.IconPlus,{width:15,height:15}),(0,l.jsx)(`p`,{className:`ml-1`,children:t?.onboardingFooterLink})]})]})},qe=({firstLine:e,secondLine:t})=>{let n=e!=null&&e.trim()!==``,r=t!=null&&t.trim()!==``;return(0,l.jsxs)(`div`,{className:(0,p.default)(`text-center body-3`,r?`p-0`:n?`p-1`:`p-3`),children:[n&&(0,l.jsx)(`div`,{className:`text-neutrals-800`,children:e}),r&&(0,l.jsx)(`div`,{className:`text-neutrals-800`,children:t})]})},Je=({suggestionsList:e,welcomeText:t,welcomeDescription:n,welcomeInputPlaceholder:r,titleIcon:i,actions:a,titles:o,inputMessageStyles:s,suggestionsContainerClass:f,isBottomInputPosition:_,prompt:v,onboardingMessageSchema:y,handleConversationClick:b,setConversations:x,locale:S,setSharedConversations:C})=>{let[w,T]=(0,c.useState)(null),[E,D]=(0,c.useState)(!0),[O,k]=(0,c.useState)(!1),{onboardingFileSchema:A,onboardingFileName:j,onboardingFilePath:M,isShowOnboarding:N,setIsShowOnboarding:P,setOnboardingFileSchema:F}=G(),{isAgentAvailable:I}=(0,d.useAgentAvailability)(),{statusMessages:L}=H();(0,c.useEffect)(()=>{(async()=>{try{T((await a.getBucket()).bucket)}catch(e){console.error(e instanceof Error?e.message:`Request error`)}finally{D(!1)}})()},[a]);let R=(0,c.useCallback)(async(e,t)=>{if(!w){console.error(`No bucket`);return}k(!0);try{let n=N?oe(w,S,o?.onboardingTitle??`Introducing the AI assistant`,y?.properties?.choice?.description??``,e,t):ie(w,S,o.newChat??`New chat`,e),r=await a.createConversation(n,S,N),i=await a.getConversations(S),s=await a.getSharedConversations((0,m.getSharedConversationsRequest)(m.ShareTarget.ME));if(y&&A){let e={...A,isStarted:!0};await a.putOnboardingFile?.(j,M,e),F?.(e)}x((0,h.cleanConversationNames)(i)),C((0,h.cleanConversationNames)((0,g.transformSharedConversations)(s,S))),b(r.folderId,r.id)}catch(e){console.error(e instanceof Error?e.message:`Creation conversation failed`),k(!1)}},[a,w,b,N,S,j,M,A,y,x,F,C,o.newChat,o?.onboardingTitle]),z=(0,c.useCallback)(async e=>{if(P(!1),e&&A){let e={...A,isSkipped:!0};await a.putOnboardingFile?.(j,M,e),F?.(e)}},[a,j,M,A,P,F]);return(0,c.useEffect)(()=>{v&&w&&R(v)},[w,v]),(0,l.jsx)(ce,{styles:{titles:o},children:(0,l.jsxs)(`div`,{className:`flex size-full flex-col`,children:[O||v&&E?(0,l.jsx)(d.Loader,{}):N?(0,l.jsx)(Ge,{messageContent:y?.properties?.choice?.description||``,choiceButtons:y?.properties?.choice?.oneOf||[],disabled:!w,handleOnboardingSkip:z,onClick:R}):(0,l.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center sm:px-4`,children:[(0,l.jsxs)(`div`,{className:(0,p.default)(`flex items-center max-w-full sm-min:px-4`,_?`mt-auto mb-8`:n?`mb-0`:`mb-6`),children:[i,(0,l.jsx)(`h1`,{className:`sm:h2 text-hues-800 text-center`,children:t??o?.welcomeTitle??`How can I help you?`})]}),n&&(0,l.jsx)(`p`,{className:`body-1 text-neutrals-900 mb-6 mt-3 max-w-[784px] text-center`,children:n}),(()=>{let t=!w;return I?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(te,{containerClasses:(0,p.default)(s.inputContainerClass,_&&`order-3 mt-auto`),inputClasses:`mr-2`,disabled:t,placeholder:r||o?.askAnything||`Ask anything...`,sendMessageIcon:s.sendMessageIcon,onSendMessage:R}),(0,l.jsx)(`div`,{className:(0,p.default)(`no-scrollbar overflow-x-auto`,f),children:(0,l.jsx)(`div`,{className:(0,p.default)(`flex flex-wrap justify-center gap-2`,`tags-container`),children:e.map(e=>(0,l.jsx)(d.Tag,{title:e.title,text:e[u.DialSchemaProperties.DialWidgetOptions]?.populateText,disabled:t,onClick:R},e.title))})})]}):(0,l.jsx)(d.InlineAlert,{type:d.InlineAlertType.Error,children:L.assistantUnavailable})})()]}),N&&(0,l.jsx)(Ke,{openNewConversation:()=>P(!1)}),!N&&(0,l.jsx)(qe,{firstLine:o.footerFirstLine,secondLine:o.footerSecondLine})]})})},Ye=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 16 16`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{d:`M3.33333 13.3327V8.66602H2V7.33268H6V8.66602H4.66667V13.3327H3.33333ZM3.33333 5.99935V2.66602H4.66667V5.99935H3.33333ZM6 5.99935V4.66602H7.33333V2.66602H8.66667V4.66602H10V5.99935H6ZM7.33333 13.3327V7.33268H8.66667V13.3327H7.33333ZM11.3333 13.3327V11.3327H10V9.99935H14V11.3327H12.6667V13.3327H11.3333ZM11.3333 8.66602V2.66602H12.6667V8.66602H11.3333Z`,fill:`currentColor`})}),X=function(e){return e.DATA_GRID=`dataGrid`,e.METADATA_PER_SERIES=`metadataPerSeries`,e.CHARTS=`charts`,e.CHARTS_NAVIGATION=`chartsNavigation`,e.OPEN_ADVANCED_VIEW=`openAdvancedView`,e.FILTERS=`filters`,e.CHART_PER_SERIES=`chartPerSeries`,e.METADATA_PER_DATASET=`metadataPerDataset`,e.EXIT_ADVANCED_VIEW=`exitAdvancedView`,e}({}),Xe=[`charts`,`chartsNavigation`],Ze=[`dataGrid`,`metadataPerSeries`,...Xe,`openAdvancedView`],Qe=[`filters`,`chartPerSeries`,`metadataPerDataset`,`exitAdvancedView`],$e=(e,t)=>{let n=t?.[`${e}Title`],r=t?.[`${e}Description`];return{title:typeof n==`string`?n:``,description:typeof r==`string`?r:``}},et=(e,t)=>e.find(e=>!t.infoElements?.[e])||``,tt=(e,t)=>{if(!e||!t)return``;if(Ze.includes(t)){let t=et(Ze,e);if(t)return t}return et(Qe,e)||``},nt=(e,t)=>{let n=et(e,t);return{...t,infoElements:{...t?.infoElements,[t.lastDisplayedElement]:!1,...n?{[n]:!0}:{}},lastDisplayedElement:n}},rt=e=>nt(Qe,e),it=e=>nt(Xe,e),at=e=>(!e?.infoElements?.charts||!e?.infoElements?.chartsNavigation)&&!Xe.includes(e.lastDisplayedElement),ot=5,st=({targetPosition:e,overlayClasses:t,onClose:n})=>(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`div`,{className:`overlay overlay-top`,style:{height:e.top,top:0-ot,bottom:e.top+ot}}),(0,l.jsx)(`div`,{className:`overlay overlay-bottom`,style:{top:e.bottom+ot,bottom:0}}),(0,l.jsx)(`div`,{className:`overlay overlay-left`,style:{top:e.top-ot,height:e.height+ot*2,width:e.left,left:0-ot,right:e.left-ot*2}}),(0,l.jsx)(`div`,{className:`overlay overlay-right`,style:{top:e.top-ot,left:e.right+ot,height:e.height+ot*2,right:0}}),(0,l.jsx)(`div`,{className:(0,p.default)(`outline-block z-10`,t),onClick:n,style:{top:e.top,left:e.left,height:e.height,width:e.width}})]}),ct=({reference:e,title:t,description:n,onReferenceClick:r,shouldCloseTooltip:i,shouldMoveToNextStep:a,supressReferenceClick:o})=>{let[s,u]=(0,c.useState)(!0),[f,m]=(0,c.useState)(!1),h=(0,c.useRef)(null),{isShowOnboarding:g,onboardingFileSchema:_,setOnboardingFileSchema:v}=G(),{refs:b,floatingStyles:x,context:S,placement:C}=(0,y.useFloating)({open:s,onOpenChange:u,placement:`right-start`,elements:{reference:e?.current},middleware:[(0,y.offset)({mainAxis:12,crossAxis:-4}),(0,y.flip)(),(0,y.shift)(),(0,y.arrow)({element:h})],whileElementsMounted:y.autoUpdate}),{getFloatingProps:w}=(0,y.useInteractions)([(0,y.useClick)(S)]),T=(0,c.useCallback)(()=>{if(g){let e=tt(_,_?.lastDisplayedElement);v?.({..._,infoElements:{..._?.infoElements,...e?{[e]:!0}:{}},lastDisplayedElement:e})}u?.(!1)},[g,_,v]);(0,c.useEffect)(()=>{b.setReference(e?.current??null)},[e,b]);let E=()=>T(),D=e?.current?.getBoundingClientRect();return(0,c.useEffect)(()=>{i&&!f&&(T(),m(!0))},[i,T,f]),(0,l.jsx)(l.Fragment,{children:s&&(0,l.jsxs)(y.FloatingPortal,{children:[D&&(0,l.jsx)(st,{overlayClasses:o?`cursor-default`:`cursor-pointer`,targetPosition:D,onClose:()=>{r?(r?.(),a?T():u(!1)):o||(T(),e?.current?.click())}}),(0,l.jsxs)(`div`,{ref:b.setFloating,style:x,...w(),className:`tooltip z-tooltip max-w-[350px]`,children:[(0,l.jsxs)(`div`,{className:`tooltip-header`,children:[(0,l.jsx)(`h3`,{children:t}),(0,l.jsx)(d.CloseButton,{btnClassNames:`w-4 h-4`,onClick:E})]}),(0,l.jsx)(`div`,{className:`tooltip-description`,children:(0,l.jsx)(`p`,{children:n})}),(0,l.jsx)(`div`,{ref:h,className:(0,p.default)(`tooltip-arrow absolute w-3 h-3 rotate-45`,C?.includes(`right`)?`left-[-4px]`:`right-[-6px]`,C?.includes(`end`)?`bottom-2 tooltip-arrow-white`:`top-3`)})]})]})})},lt=({buttonProps:e,selectedFiltersCount:t=0,isLoading:n,setModalState:r,isModalClosed:i,warningIcon:a,filterIconClassName:o,timeSeriesCount:s})=>{let{titles:u}=Y(),f=(0,c.useRef)(null),[m,h]=(0,c.useState)(``),[g,_]=(0,c.useState)(``),[v,y]=(0,c.useState)(!1),{onboardingFileSchema:b,isShowOnboarding:x}=G(),S=d.SERIES_LIMIT<(s??0),C=(0,c.useMemo)(()=>e?.isShowBadge?e?.title:`${e?.title}: ${t}`,[e?.isShowBadge,e?.title,t]);return(0,c.useEffect)(()=>{if(x){let{title:e,description:t}=$e(X.FILTERS,u);h(e),_(t)}},[u,x]),(0,c.useEffect)(()=>{x&&y(b?.lastDisplayedElement===X.FILTERS)},[b?.lastDisplayedElement,x]),(0,l.jsx)(`div`,{className:`filter-button-container relative`,ref:f,children:n?(0,l.jsx)(d.Loader,{}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(d.Button,{iconBefore:(0,l.jsx)(Ye,{className:(0,p.default)(`size-4`,o)}),iconAfter:S?a:void 0,title:C,buttonClassName:`text-button-secondary filter-button`,isSmallButton:!0,onClick:()=>r(d.PopUpState.Opened)}),e?.isShowBadge&&(0,l.jsx)(`div`,{className:`filter-count-badge`,children:(0,l.jsx)(`h5`,{children:t})}),v&&(0,l.jsx)(ct,{reference:f,title:m,description:g,onReferenceClick:()=>r(d.PopUpState.Opened),shouldCloseTooltip:i})]})})},ut=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 16 16`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{d:`M8.00016 1.33325C4.3135 1.33325 1.3335 4.31325 1.3335 7.99992C1.3335 11.6866 4.3135 14.6666 8.00016 14.6666C11.6868 14.6666 14.6668 11.6866 14.6668 7.99992C14.6668 4.31325 11.6868 1.33325 8.00016 1.33325ZM8.00016 13.3333C5.06016 13.3333 2.66683 10.9399 2.66683 7.99992C2.66683 5.05992 5.06016 2.66659 8.00016 2.66659C10.9402 2.66659 13.3335 5.05992 13.3335 7.99992C13.3335 10.9399 10.9402 13.3333 8.00016 13.3333ZM10.3935 4.66659L8.00016 7.05992L5.60683 4.66659L4.66683 5.60659L7.06016 7.99992L4.66683 10.3933L5.60683 11.3333L8.00016 8.93992L10.3935 11.3333L11.3335 10.3933L8.94016 7.99992L11.3335 5.60659L10.3935 4.66659Z`,fill:`currentColor`})}),dt=({dataQueries:e,disabledDatasetUrns:t,isSelected:n,onSelect:r,onClearAll:i})=>{let{titles:a}=Y(),o=e.length-t.size,s=t.size>0;return(0,l.jsxs)(`div`,{className:(0,p.default)(`flex justify-between items-center px-2 h-10 shrink-0 hover:bg-hues-100 rounded`,`filters-facet-item cursor-pointer`,n&&`bg-hues-100`),onClick:r,children:[(0,l.jsx)(`h3`,{className:`w-full min-w-0 flex-1 truncate`,title:a?.dataset??`Dataset`,children:(0,l.jsx)(`span`,{className:`truncate`,children:a?.dataset??`Dataset`})}),(0,l.jsxs)(`div`,{className:`ml-2 flex items-center gap-2 text-neutrals-800`,children:[(0,l.jsx)(`span`,{className:`filters-facet-item-counter px-2 text-center`,children:`${o}/${e.length}`}),s&&(0,l.jsx)(`div`,{className:`filters-facet-item-settings flex items-center gap-2`,children:(0,l.jsx)(d.IconButton,{buttonClassName:`text-button-tertiary w-4 h-4 border-0 p-0 filters-facet-item-icon`,icon:(0,l.jsx)(ut,{width:16,height:16}),title:a?.reset??`Reset`,onClick:e=>{e.stopPropagation(),i()}})})]})]})},ft=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 16 16`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{d:`M11.3301 6.25L8.00008 9.75L4.67008 6.25L11.3301 6.25Z`,fill:`currentColor`})}),pt=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 16 16`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{d:`M12.8232 7C12.926 7 13.012 7.07201 13.0244 7.16797L13.1807 8.22754C13.4315 8.32754 13.6621 8.46012 13.876 8.62012L14.9004 8.21973C14.9208 8.21186 14.9453 8.20803 14.9697 8.20801C15.0436 8.20801 15.1133 8.24392 15.1504 8.30762L15.9736 9.69238C16.0227 9.7803 16.0018 9.88834 15.9238 9.94824L15.0566 10.6084C15.0731 10.7363 15.085 10.8642 15.085 11C15.085 11.1358 15.0731 11.2637 15.0566 11.3916L15.9238 12.0518C16.0018 12.1117 16.0227 12.2197 15.9736 12.3076L15.1504 13.6924C15.1133 13.7561 15.0434 13.792 14.9736 13.792C14.9492 13.7919 14.9248 13.7881 14.9004 13.7803L13.876 13.3799C13.6621 13.5359 13.4315 13.6725 13.1807 13.7725L13.0244 14.832C13.012 14.928 12.926 15 12.8232 15H11.1787C11.0759 15 10.9889 14.928 10.9766 14.832L10.8203 13.7725C10.5696 13.6725 10.3397 13.5398 10.126 13.3799L9.10156 13.7803C9.08115 13.7882 9.05667 13.792 9.03223 13.792C8.95826 13.792 8.88761 13.7563 8.85059 13.6924L8.02832 12.3076C7.97924 12.2197 8.0001 12.1117 8.07812 12.0518L8.94531 11.3916C8.92889 11.2637 8.91699 11.1319 8.91699 11C8.91699 10.8681 8.92889 10.7363 8.94531 10.6084L8.07812 9.94824C8.0001 9.88832 7.97515 9.78032 8.02832 9.69238L8.85059 8.30762C8.88754 8.24383 8.95763 8.20816 9.02734 8.20801C9.05192 8.20801 9.07699 8.21179 9.10156 8.21973L10.126 8.62012C10.3397 8.46418 10.5696 8.32752 10.8203 8.22754L10.9766 7.16797C10.9889 7.07197 11.0759 7 11.1787 7H12.8232ZM11.7129 7.7998L11.6309 8.33984L11.5654 8.79199L11.1289 8.96387C10.9604 9.03184 10.792 9.12795 10.6152 9.25586L10.2451 9.52832L9.81738 9.36035L9.29492 9.15625L9.00684 9.63965L9.45117 9.97559L9.81738 10.2559L9.75977 10.708C9.74743 10.828 9.73926 10.92 9.73926 11C9.73926 11.08 9.74743 11.1719 9.75977 11.2959L9.81738 11.748L9.45117 12.0283L9.00684 12.3643L9.29492 12.8477L9.81738 12.6436L10.2529 12.4717L10.627 12.752C10.7913 12.8719 10.9561 12.9642 11.1328 13.0361L11.5693 13.208L11.6348 13.6602L11.7129 14.2002H12.2891L12.3711 13.6602L12.4365 13.208L12.873 13.0361C13.0415 12.9681 13.21 12.8721 13.3867 12.7441L13.7568 12.4717L14.1846 12.6396L14.707 12.8438L14.9941 12.3604L14.5508 12.0244L14.1846 11.7441L14.2422 11.292C14.2545 11.172 14.2627 11.084 14.2627 11C14.2627 10.916 14.2586 10.832 14.2422 10.708L14.1846 10.2559L14.5508 9.97559L14.9902 9.63574L14.7021 9.15234L14.1807 9.35645L13.7441 9.52832L13.3701 9.24805C13.2057 9.12808 13.0411 9.03586 12.8643 8.96387L12.4287 8.79199L12.3623 8.33984L12.2842 7.7998H11.7129ZM3.33301 12.6338H2V11.3008H3.33301V12.6338ZM7.00977 11.3008C7.03732 11.7651 7.12864 12.2121 7.27441 12.6338H4.66699V11.3008H7.00977ZM12.001 9.40039C12.9097 9.40043 13.6455 10.116 13.6455 11C13.6455 11.884 12.9097 12.5996 12.001 12.5996C11.0922 12.5996 10.3564 11.884 10.3564 11C10.3564 10.116 11.0922 9.40039 12.001 9.40039ZM12.001 10.2002C11.5486 10.2002 11.1787 10.56 11.1787 11C11.1787 11.44 11.5486 11.7998 12.001 11.7998C12.4533 11.7998 12.8232 11.44 12.8232 11C12.8232 10.56 12.4533 10.2002 12.001 10.2002ZM3.33301 8.63379H2V7.30078H3.33301V8.63379ZM8.63574 7.30078C8.21765 7.68124 7.86483 8.13197 7.59473 8.63379H4.66699V7.30078H8.63574ZM3.33301 4.7334H2V3.40039H3.33301V4.7334ZM14 4.7334H4.66699V3.40039H14V4.7334Z`,fill:`currentColor`})}),mt=(e,t,n,r,i=!1,a)=>{let o={...x.default[r]},s=S.default;i&&(o.firstDayOfWeek=1);let c=new Date(e);c.setHours(0,0,0,0);let l=new Date(t);l.setHours(23,59,59,999);let u={minDate:n===h.CalendarResolution.MONTH?new Date(e.getFullYear(),e.getMonth()):c,maxDate:n===h.CalendarResolution.MONTH?new Date(t.getFullYear(),t.getMonth()):l,locale:o};return n===h.CalendarResolution.MONTH?{...u,dateFormat:`M Y`,plugins:[new s({shorthand:!0,dateFormat:`M Y`})]}:{...u,monthSelectorType:`static`,dateFormat:a||`d.m.Y`}},ht=e=>{e?.setMinutes(e.getMinutes()-e.getTimezoneOffset())},gt={year:`numeric`,month:`short`,day:`numeric`},_t=(e,t)=>e?.toLocaleDateString(t,gt)||``,vt=(e,t)=>{let{startPeriod:n,endPeriod:r}=e;return!t.startPeriod&&!t.endPeriod&&n&&r?{startPeriod:new Date(n?.getTime()),endPeriod:new Date(r?.getTime())}:{startPeriod:n?new Date(Math.max(n.getTime(),t.startPeriod.getTime())):t.startPeriod,endPeriod:r?new Date(Math.min(r.getTime(),t.endPeriod.getTime())):t.endPeriod}},yt=(e,t)=>{let{endPeriod:n}=e,r=n?.getFullYear()||new Date().getFullYear(),i=r+ +t,a=new Date(+t<0?r:i,n?.getMonth()||0,n?.getDate()||1),o=new Date(+t<0?i:r,0,1);return{startPeriod:new Date(Math.max(o.getTime(),e?.startPeriod?.getTime()||0)),endPeriod:a}},bt=e=>({quarterly:e?.quarterly||`Q`,monthly:e?.monthly||`M`}),xt=(e,t)=>{let n=bt(t);return(0,b.isQuarterly)(e)&&n?.quarterly?e?.replace(/Q/g,n?.quarterly):(0,b.isMonthly)(e)&&n?.monthly?e?.replace(/M/g,n?.monthly):e},St=(e,t)=>{let n={...e};return(!e.startPeriod&&t?.startPeriod||t?.startPeriod&&e?.startPeriod&&t.startPeriod<e?.startPeriod)&&(n.startPeriod=t?.startPeriod||null),(!e.endPeriod&&t?.endPeriod||t?.endPeriod&&e?.endPeriod&&t.endPeriod>e?.endPeriod)&&(n.endPeriod=t?.endPeriod||null),n},Ct=e=>{if(!e?.length)return null;let t=null,n=null;for(let r of e){let e=r.filters?.find(e=>e.componentCode===b.TIME_PERIOD);if(!e)continue;let i=e.values.filter(Boolean),a=i[0]?(0,h.getTimePeriod)(i[0]):null,o=i[1]?(0,h.getTimePeriod)(i[1]):null;!a||!o||((!t||a<t)&&(t=a),(!n||o>n)&&(n=o))}return t&&n?{startPeriod:t,endPeriod:n}:null},wt=function(e){return e.FLAT_LIST=`FLAT_LIST`,e.HIERARCHY=`HIERARCHY`,e}({}),Tt=(e,t,n,r,i)=>e?.map(e=>{let a=(0,b.findCodelistByDimension)(t?.codelists,t?.conceptSchemes,e)?.codes,o=(0,b.getAvailableCodes)(e,n,a,r),s=a?.some(e=>e?.parent);return{id:e?.id,title:(0,b.getDimensionTitle)(t?.conceptSchemes,e,r),dimensionValues:o,isTimeDimension:e?.type===b.DimensionType.TIME_DIMENSION,isHierarchical:s,displayMode:s?wt.HIERARCHY:wt.FLAT_LIST,datasetUrn:i,filterType:`dataset`}})||[],Et=e=>e?.filterType===`shared`,Dt=e=>{if(e?.id)return Et(e)?`shared:${e.id}`:e?.datasetUrn?`${e.datasetUrn}:${e.id}`:e.id},Ot=(e,t)=>Dt(e)===Dt(t),kt=(e,t)=>e?.map(e=>t&&Ot(e,t)?{...t,isSelectedFilter:!0}:{...e,isSelectedFilter:!1}),At=(e,t,n)=>e?e.map(e=>Ot(e,t)?{...e,displayMode:n}:e):[],jt=e=>e?.filter(e=>!!e?.isSelectedValue)||[],Mt=e=>e?.map(e=>({...e,dimensionValues:jt(e?.dimensionValues)})).filter(e=>e.dimensionValues?.length||e.timeRange?.startPeriod||e.timeRange?.endPeriod),Nt=e=>e?.reduce((e,t)=>(t?.dimensionValues?.length??0)+e,0)||0,Pt=e=>({...e,dimensionValues:e?.dimensionValues?.map(e=>({...e,isSelectedValue:!1})),timeRange:void 0}),Ft=(e,t)=>e?.map(e=>Ot(e,t)?Pt(e):e),It=e=>e?.map(e=>Pt(e)),Lt=(e,t,n)=>e.map(e=>{let r=t?.filters?.find(t=>t.componentCode===e.id),i=[];if(r)if(e.isTimeDimension){let t=r.values.filter(e=>!!e),i=(0,b.getAnnotationPeriod)(n?.[0]?.annotations),a=t[0]?(0,h.getTimePeriod)(t[0]):null,o=t[1]?(0,h.getTimePeriod)(t[1]):null,s=i;return a&&o&&(s=i?vt({startPeriod:a,endPeriod:o},i):{startPeriod:a,endPeriod:o}),{...e,timeRange:s}}else i=e?.dimensionValues?.map(e=>r?.values?.includes(e.id)?{...e,isSelectedValue:!0}:e);else i=e.dimensionValues;return{...e,dimensionValues:i}}),Rt=e=>e?.map(e=>({...e,isDisabled:!0})),zt=e=>new Map(e?.map(e=>[e.id,{...e,children:[]}])),Bt=e=>{if(!e)return[];let t=zt(e),n=[];return e.forEach(e=>{if(e&&e.parent){let n=t.get(e.parent),r=t.get(e.id);n&&n.children&&r&&(n.children=[...n.children,r])}else{let r=t.get(e.id);r&&n.push(r)}}),n},Vt=(e,t=!1)=>t?`${e*d.TREE_NODE_PADDING-d.TREE_NODE_ARROW_SIZE}px`:`${e*d.TREE_NODE_PADDING}px`,Ht=e=>e?.children?.reduce((e,t)=>[...e,t,...Ht(t)],[])||[],Ut=(e,t)=>e?e.filter(e=>!e.disabled).map(e=>({...e,isSelectedValue:t})):[],Wt=e=>!!e?.children?.some(e=>e?.isSelectedValue||Wt(e)),Gt=e=>{let t=Ht(e);if(!e.children?.length)return[{...e,isSelectedValue:!e.isSelectedValue}];let n=(n,r)=>[{...e,isSelectedValue:n},...Ut(t,r)];if(!e.isSelectableValue)return e.isSelectedValue?n(!1,!1):n(!0,!0);let r=t.filter(e=>!e.disabled),i=r.some(e=>e.isSelectedValue),a=r.length>0&&r.every(e=>e.isSelectedValue),o=!!e.isSelectedValue;return!o&&!i?n(!0,!0):o&&a?n(!1,!0):!o&&i?n(!0,!1):o&&!i?n(!1,!1):n(!0,!0)},Kt=(e,t)=>e.filter(e=>e.isSelectableValue&&!t.has(e.id)).map(e=>({id:e.id,name:e.name,isSelectedValue:e.isSelectedValue})),qt=({isHierarchical:e,availableHierarchies:t,titles:n})=>[{key:``,title:n?.flatList??`Flat list`},...e?[{key:wt.HIERARCHY,title:n?.hierarchy??`Hierarchy by parent`}]:[],...(t??[]).map(e=>({key:e.id,title:`${e.name??e.id} (${e.version})`}))],Jt=({calendarResolution:e,timeRange:t,timeRangeOptions:n,calendarStartFromMonday:r=!0,locale:i=h.Locale.EN,radioIcon:a,initialConstraints:o,onValueChange:s,calendarIcon:u,dateFormat:f,defaultTimeOption:p,dataQueries:m})=>{let{titles:g}=Y(),_=St((0,b.getAnnotationPeriod)(o?.[0]?.annotations),t),v=!(_?.startPeriod||_?.endPeriod)&&!t?Ct(m):null,y=v??_,[x,S]=(0,c.useState)(t??v),C=!t||t?.startPeriod?.getTime()===y?.startPeriod?.getTime()&&t?.endPeriod?.getTime()===y?.endPeriod?.getTime()?0:h.CUSTOM_PERIOD,[w,T]=(0,c.useState)(p??C),E=(0,c.useMemo)(()=>{let{startPeriod:e,endPeriod:t}=y,r=e?.getFullYear(),i=t?.getFullYear(),a=new Date().getFullYear();return n.filter(e=>e.value===h.CUSTOM_PERIOD||e.value===0||+e.value>=0&&i-a>=+e.value||+e.value<0&&r-a<+e.value)},[y,n]);(0,c.useEffect)(()=>{s(x,w)},[x]),(0,c.useEffect)(()=>{if(t!==null)return;let e=(0,b.getAnnotationPeriod)(o?.[0]?.annotations);e?.startPeriod||e?.endPeriod||S(Ct(m))},[t]);let D=e=>{e&&(ht(e),S(t=>t?{...t,startPeriod:e||null}:{endPeriod:null,startPeriod:e||null}))},O=e=>{e&&(ht(e),S(t=>t?{...t,endPeriod:e||null}:{startPeriod:null,endPeriod:e||null}))};if(y==null)return null;let k=mt(y.startPeriod,x?.endPeriod||y.endPeriod,e,i,r,f),A=mt(x?.startPeriod||y.startPeriod,y.endPeriod,e,i,r,f);return(0,l.jsxs)(`div`,{className:`mt-3 flex h-full min-w-0 flex-1 flex-col overflow-auto py-2 pr-3`,children:[(0,l.jsx)(`div`,{className:`w-full`,children:E.map(e=>(0,l.jsx)(d.Radio,{id:e.value.toString(),checked:w===e.value,label:e.title,onChange:()=>{let{value:t}=e;T(t),t!==h.CUSTOM_PERIOD&&S(t===0?y:yt(y,t))},radioIcon:a},e.value.toString()))}),(0,l.jsx)(`div`,{className:`w-full`,children:w===h.CUSTOM_PERIOD&&(0,l.jsxs)(`div`,{className:`filters-time-period caption mt-3 flex gap-4 text-neutral-700`,children:[(0,l.jsx)(d.Calendar,{onChange:D,options:k,value:x?.startPeriod||y?.startPeriod,label:g?.from||`From`,id:`time-options-start`,icon:u}),(0,l.jsx)(d.Calendar,{onChange:O,options:A,value:x?.endPeriod||y?.endPeriod,label:g?.to||`To`,id:`time-options-end`,icon:u,isEndDate:!0})]})})]})},Yt=(0,c.createContext)({isMetadataInSidePanel:!1,isCrossDatasetModeOn:!1,isTableSettingsFeatureEnabled:!1});function Xt({children:e,isMetadataInSidePanel:t=!1,isCrossDatasetModeOn:n=!1,isTableSettingsFeatureEnabled:r=!1}){let i=(0,c.useMemo)(()=>({isMetadataInSidePanel:t,isCrossDatasetModeOn:n,isTableSettingsFeatureEnabled:r}),[t,n,r]);return(0,l.jsx)(Yt.Provider,{value:i,children:e})}function Z(){return(0,c.useContext)(Yt)}var Zt=2,Qt=({value:e,onChange:t,searchIconSize:n})=>{let{titles:r}=Y(),{isCrossDatasetModeOn:i}=Z(),[a,o]=(0,c.useState)(!1),s=e.trim().toLowerCase(),u=i&&a&&s.length<Zt;return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(d.InputWithIcon,{inputId:`filters-search-input`,containerClasses:`gap-2 items-center filters-search-input`,cssClass:`filters-search-input-text`,placeholder:r?.searchPlaceholder??`Search`,value:e,onChange:t,onFocus:()=>o(!0),onBlur:()=>o(!1),iconBeforeInput:(0,l.jsx)(f.IconSearch,{width:n,height:n,className:`text-primary`})}),i&&(0,l.jsx)(`span`,{className:(0,p.default)(`caption text-neutrals-800 mt-1`,{invisible:!u}),children:r?.searchMinCharsCaption??`Enter at least 2 characters to start searching`})]})},$t=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 16 16`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{d:`M6.25 4.66668L9.75 8.00001L6.25 11.3333L6.25 4.66668Z`,fill:`currentColor`})}),en=({node:e,level:t=1,checkboxIcon:n,selectFilterValue:r,selectHierarchicalNodes:i,expandHierarchicalValue:a})=>{let o=!!e?.children?.length,s=o&&!e.isSelectedValue&&Wt(e),u=`cursor-pointer text-neutrals-1000 w-6 h-6 shrink-0`,f=(0,c.useId)();return(0,l.jsxs)(`div`,{className:`flex flex-col`,children:[(0,l.jsxs)(`div`,{className:`flex items-center`,style:{paddingLeft:Vt(t,o)},children:[o&&(e?.isExpanded?(0,l.jsx)($t,{className:u,onClick:()=>a?.(e)}):(0,l.jsx)(ft,{className:u,onClick:()=>a?.(e)})),(0,l.jsx)(d.Checkbox,{id:f,label:e?.name,checked:!!e.isSelectedValue,indeterminate:s,checkboxIcon:n,disabled:e?.disabled,onChange:(t,n)=>{e?.children?.length?e.children.some(e=>!e.disabled)?i?.(Gt(e)):i?.([{...e,isSelectedValue:n}]):r?.(e.id,n)}})]}),o&&e?.isExpanded&&(0,l.jsx)(l.Fragment,{children:e?.children?.map(e=>(0,l.jsx)(en,{node:e,level:t+1,checkboxIcon:n,selectFilterValue:r,selectHierarchicalNodes:i,expandHierarchicalValue:a},e?.id))})]},e?.id)},tn=({treeNodes:e,checkboxIcon:t,selectFilterValue:n,selectHierarchicalNodes:r,expandHierarchicalValue:i})=>(0,l.jsx)(l.Fragment,{children:e?.map(e=>(0,l.jsx)(en,{node:e,checkboxIcon:t,selectFilterValue:n,selectHierarchicalNodes:r,expandHierarchicalValue:i},e?.id))}),nn=({style:e,filterValue:t,checkboxIcon:n,selectFilterValue:r})=>(0,l.jsx)(`div`,{style:e,children:(0,l.jsx)(d.Checkbox,{id:t.id,label:t.name,checked:!!t.isSelectedValue,checkboxIcon:n,onChange:r})}),rn=(e,t,n,r,i=h.Locale.EN)=>{let a=t?.map(e=>{let t=(0,b.getAvailableCodesFromConstrains)((0,b.findCodelistByDimension)(n?.codelists,n?.conceptSchemes,e)?.codes,e.id,r,i);return{...e,dimensionValues:t}});return e?.map(e=>{let t=a?.find(t=>t.id===e.id),n=(t?.dimensionValues||[]).map(t=>{let n=e.dimensionValues?.find(e=>e?.id===t?.id)?.isSelectedValue;return{...t,isSelectedValue:n}}),r=new Set(n.map(e=>e.id)),i=t?(e.dimensionValues??[]).filter(e=>!!e.isSelectedValue&&!r.has(e.id)):[];return{...e,isDisabled:!1,dimensionValues:[...n,...i]}})||[]},an=(e,t,n)=>{let r=[];return Sr(e,t,n).filter(e=>e.timeRange||e.dimensionValues?.some(e=>e.isSelectedValue)).forEach(e=>{let{id:t,dimensionValues:n}=e;e.isTimeDimension?r=[...r,...on(e.timeRange,t)]:r.push({componentCode:t,operator:b.SeriesFilterOperator.EQUALS,value:n?.filter(e=>e.isSelectedValue)?.map(e=>e.id).join(b.GET_v3_FILTER_AND)||``})}),r},on=(e,t)=>e==null||e.startPeriod==null||e.endPeriod==null?[]:[{componentCode:t,operator:b.SeriesFilterOperator.GREATER_OR_EQUAL,value:cn(new Date(e.startPeriod))},{componentCode:t,operator:b.SeriesFilterOperator.LESS_OR_EQUAL,value:cn(new Date(e.endPeriod),1)}],sn=1e3*60*60*24,cn=(e,t=0)=>{e.setHours(0),e.setMinutes(0),e.setSeconds(0),e.setMinutes(e.getMinutes()-e.getTimezoneOffset());let n=e.getTime();return n+=t?sn-1:0,e=new Date(n),n.toString()},ln=e=>[...e].map(e=>({...e,value:e.value.split(`,`).sort().join(`,`)})).sort((e,t)=>e.componentCode.localeCompare(t.componentCode)),un=new Map,dn=new Map;function fn(e,t){return`${e.name??``}::${t}`}function pn(...e){return JSON.stringify(e)}async function mn(e,t,n){let r=fn(e,t);if(un.has(r))return un.get(r);let i=dn.get(r);if(i)return i;let a=n().then(e=>(un.set(r,e),e)).finally(()=>{dn.delete(r)});return dn.set(r,a),a}function hn(e,t){return un.has(fn(e,t))}function gn(){un.clear(),dn.clear()}var _n=e=>e.map(e=>({componentCode:e.id||``,operator:h.QueryFilterType.IN,values:e.dimensionValues?.map(e=>e.id)||[]})),vn=(e,t)=>{let n=t?.timeDimensions?.[0],r=(0,b.getTimeRangeFromAttachment)(e,n)||null;return r?(0,b.getQueryTimePeriodFilters)(r,n?.id):null},yn=(e,t,n)=>{let r=Mt(Sr(e,n)),i=r.find(e=>e?.isTimeDimension&&e?.timeRange);return{filterKey:(0,b.getTimeSeriesFilterKey)(t||[],_n(r)),timeFilter:(0,b.getQueryTimePeriodFilters)(i?.timeRange,i?.id)}},bn=e=>{if(!e)return``;let t=String(e.getDate()).padStart(2,`0`);return`${String(e.getMonth()+1).padStart(2,`0`)}-${t}-${e.getFullYear()}`},xn=e=>{if(!e)return``;let t=String(e.getDate()).padStart(2,`0`),n=String(e.getMonth()+1).padStart(2,`0`);return`${e.getFullYear()}-${n}-${t}`},Sn=(e,t,n=bn)=>Sr(e,t)?.filter(e=>e.timeRange||e.isExcluded||e.dimensionValues?.some(e=>e.isSelectedValue)).map(e=>e?.isTimeDimension?{componentCode:e?.id,operator:h.QueryFilterType.BETWEEN,values:[n(e?.timeRange?.startPeriod||void 0)||``,n(e?.timeRange?.endPeriod||void 0)||``]}:e.isExcluded?{componentCode:e?.id,operator:h.QueryFilterType.EXCLUDED,values:[]}:{componentCode:e?.id,operator:h.QueryFilterType.IN,values:e?.dimensionValues?.filter(e=>e.isSelectedValue)?.map(e=>e.id)||[]}),Cn=(e,t)=>{let n=Sr(e,t).flatMap(e=>e.id?[e.id]:[]),r=t?e.flatMap(e=>{if(e.filterType!==`shared`)return[];let n=e.sourceFilterIdsByDataset?.[t];return n?[n]:[]}):[];return new Set([...n,...r])},wn=(e,t)=>{let n=new Set(t.map(e=>e.componentCode));return Array.from(e).filter(e=>!n.has(e)).map(e=>({componentCode:e,operator:h.QueryFilterType.IN,values:[b.GET_v3_FILTER_ALL]}))},Tn=(e,t,n=!0)=>{let r=n?e.urn:void 0,i=Dn(t,r),a=Cn(t,r),o=wn(a,i),s=(e.filters??[]).filter(e=>!a.has(e.componentCode));return{...e,filters:[...s,...i,...o]}},En=(e,t)=>Sn(e,t),Dn=(e,t)=>Sn(e,t,xn),On=`COUNTRY`,kn=`FREQUENCY`,An=`TIME_PERIOD`,jn=new Set([On,kn,An]),Mn=e=>e?.trim()?.toLocaleUpperCase(),Nn=()=>(e,t)=>{let n=e?.name?.trim()?.toLocaleLowerCase();return n?Pn(n):Fn(t||``,e.id)},Pn=e=>`name:${e}`,Fn=(e,t)=>`dataset:${e}:id:${t}`,In=(e,t)=>e?t?.[e]:void 0,Ln=(e,t)=>{if(!(e?.filterType!==`dataset`||!e.id))return In(e.datasetUrn,t)?.[e.id]},Rn=(e,t,n)=>Object.entries(In(e,n)||{}).find(([,e])=>t(e))?.[0],zn=(e,t,n)=>Rn(e,e=>e.subtype===t,n),Bn=(e,t)=>Rn(e,e=>e.dimensionType===`TIME_PERIOD`,t),Vn=[{id:On,subtype:`REGION`,getMergedValueKey:Nn()},{id:kn,subtype:`FREQUENCY`,getMergedValueKey:Nn()},{id:An,getMergedValueKey:e=>e.id}],Hn=new Map(Vn.map(e=>[e.id,e])),Un=e=>e?Hn.get(Mn(e)||``):void 0,Wn=(e,t,n)=>{if(e.filterType===`shared`)return t.id===Mn(e.id);if(t.id===`TIME_PERIOD`)return e.isTimeDimension||Ln(e,n)?.dimensionType===`TIME_PERIOD`||t.id===Mn(e.id);let r=Ln(e,n);return t.subtype&&r?.subtype===t.subtype?!0:t.id===Mn(e.id)},Gn=(e,t)=>e?Vn.find(n=>Wn(e,n,t)):void 0,Kn=(e,t,n)=>{if(!t)return;let r=e?n?.[e]?.[t]:void 0;return r?.dimensionType===`TIME_PERIOD`?An:Vn.find(e=>!!e.subtype&&e.subtype===r?.subtype)?.id??Un(t)?.id},qn=e=>!!Un(e),Jn=e=>e?.filterType===`shared`&&qn(e?.id),Yn=(e,t)=>!e||Array.isArray(e.get(t)),Xn=(e,t)=>!e?.dataMessagesMap||e.dataMessagesMap.has(t),Zn=(e,t)=>{let n=new Map;return e.forEach(e=>{e.dimensionValues?.forEach(r=>{let i=t.getMergedValueKey(r,e.datasetUrn),a={datasetUrn:e.datasetUrn,id:r.id,name:r.name,parent:r.parent},o=n.get(i);if(o){o.isSelectedValue=o.isSelectedValue||r.isSelectedValue,o.sourceValues=[...o.sourceValues||[],a];return}n.set(i,{id:i,name:r.name,isSelectedValue:r.isSelectedValue,parent:r.parent,sourceValues:[a]})})}),Array.from(n.values())},Qn=(e,t)=>{let n=new Map,r=[];return e.forEach(e=>{let i=Gn(e,t);if(i&&e?.datasetUrn){let t=n.get(i.id)||[];n.set(i.id,[...t,e]);return}r.push(e)}),[...Vn.flatMap(e=>{let t=n.get(e.id);if(!t?.length)return[];let r={...t[0],id:e.id,datasetUrn:void 0,filterType:`shared`,sourceDatasetUrns:Array.from(new Set(t.map(e=>e.datasetUrn).filter(e=>!!e))),sourceFilterIdsByDataset:Object.fromEntries(t.flatMap(e=>e.datasetUrn&&e.id?[[e.datasetUrn,e.id]]:[])),dimensionValues:Zn(t,e)};return r.isTimeDimension&&(r.timeRange=ar(t)),r}),...r]},$n=(e,t,n)=>{let r=e.sourceFilterIdsByDataset?.[t];if(r)return r;if(e.id===`TIME_PERIOD`)return Bn(t,n);let i=Un(e.id);return i?.subtype?zn(t,i.subtype,n):void 0},er=(e,t,n,r)=>({...e,id:$n(e,t,r)||e.id,datasetUrn:t,filterType:`dataset`,...n?{dimensionValues:n}:{}}),tr=(e,t)=>(e.sourceDatasetUrns||[]).map(n=>er(e,n,void 0,t)),nr=(e,t)=>({id:t.id,name:t.name,parent:t.parent,isSelectedValue:e.isSelectedValue}),rr=(e,t)=>{let n=new Map;return e.dimensionValues?.forEach(r=>{r.sourceValues?.forEach(i=>{let a=i.datasetUrn||``,o=n.get(a),s=nr(r,i);if(o){o.dimensionValues=[...o.dimensionValues||[],s];return}n.set(a,er(e,a,[s],t))})}),n},ir=(e,t=!1,n)=>{if(!Jn(e))return[e];if(e.isTimeDimension)return tr(e,n);let r=rr(e,n);return Array.from(r.values())},ar=e=>{let t=e.map(e=>e.timeRange?.startPeriod).filter(e=>!!e),n=e.map(e=>e.timeRange?.endPeriod).filter(e=>!!e);if(!(!t.length||!n.length))return{startPeriod:new Date(Math.min(...t.map(e=>e.getTime()))),endPeriod:new Date(Math.max(...n.map(e=>e.getTime())))}},or=(e,t,n,r)=>t&&t<n?{startPeriod:new Date(n),endPeriod:new Date(n)}:e&&e>r?{startPeriod:new Date(r),endPeriod:new Date(r)}:{startPeriod:e?new Date(Math.max(e.getTime(),n.getTime())):new Date(n),endPeriod:t?new Date(Math.min(t.getTime(),r.getTime())):new Date(r)},sr=(e,t)=>{if(!e.isTimeDimension||!e.timeRange)return e;let{startPeriod:n,endPeriod:r}=(0,b.getAnnotationPeriod)(t?.[0]?.annotations);return!n||!r?e:{...e,timeRange:or(e.timeRange.startPeriod,e.timeRange.endPeriod,n,r)}},cr=(e,t)=>e?.dimensionsMap?new Map(Array.from(e.dimensionsMap.entries()).map(([n,r])=>[n,Tt(r,e?.structuresMap?.get(n),e?.structureDimensionsMap?.get(n),t,n)])):new Map,lr=(e,t,n=!0)=>new Map(Array.from(e?.dimensionsMap?.entries()||[]).map(([r,i])=>{let a=Yn(e?.constraintsMap,r),o=Xn(e,r);return[r,i?.map(i=>{if(!a||n&&!o)return{...i,dimensionValues:[]};let s=(0,b.getAvailableCodesFromConstrains)((0,b.findCodelistByDimension)(e?.structuresMap?.get(r)?.codelists,e?.structuresMap?.get(r)?.conceptSchemes,i)?.codes,i.id,e?.constraintsMap?.get(r),t);return{...i,dimensionValues:s}})||[]]})),ur=e=>e.map(e=>({...e,isDisabled:!1,dimensionValues:e.dimensionValues?.filter(e=>e.isSelectedValue)||[]})),dr=(e,t,n=!0)=>{let r=cr(e,t),i=lr(e,t,n);return new Map(Array.from(r?.entries()||[]).map(([e,t])=>{let n=i?.get(e);return[e,t.map(e=>({...e,dimensionValues:n?.find(t=>t.id===e.id)?.dimensionValues||[]}))]}))},fr=(e,t,n,r)=>{let i=(e,n)=>t?.some(t=>t.urn!==e.urn&&t.filters?.some(e=>e.operator===h.QueryFilterType.BETWEEN||!e.values?.length?!1:Gn({id:e.componentCode,datasetUrn:t.urn,filterType:`dataset`},r)?.id===n.id))??!1;return Qn(t?.flatMap(t=>{let a=t?.urn;return Lt(e?.get(a)||[],t,n?.get(a)||[]).map(e=>{if(e.isTimeDimension||e.filterType!==`dataset`)return e;let n=Gn(e,r);return!n||n.id===`TIME_PERIOD`||t.filters?.some(t=>t.componentCode===e.id&&t.operator!==h.QueryFilterType.BETWEEN)||!i(t,n)||e.dimensionValues?.some(e=>e.isSelectedValue)?e:{...e,dimensionValues:e.dimensionValues?.map(e=>({...e,isSelectedValue:!0}))}})})||[],r)},pr=(e,t,n=!1,r,i=new Set)=>{let a=e?.flatMap(e=>ir(e,n,r))?.reduce((e,n)=>{let r=n?.datasetUrn||``,i=sr(n,t?.get(r));return e.has(r)||e.set(r,[]),e?.get(r)?.push(i),e},new Map);if(i.size>0)for(let e of i)a.delete(e);return a},mr=(e,t,n,r,i)=>{let a=e.filter(e=>e.filterType===`shared`&&!e.isTimeDimension&&(e.dimensionValues?.some(e=>e.isSelectedValue)??!1));if(!a.length)return new Set(t);let o=(e,t)=>{let a=$n(t,e,r);if(!a)return!1;if(i)return!(i.get(e)??[]).find(e=>e.id===a);let o=n?.find(t=>t.urn===e);return o?!o.filters?.some(e=>e.componentCode===a&&e.operator!==h.QueryFilterType.BETWEEN):!1};return new Set(t.filter(e=>a.every(t=>t.dimensionValues?.some(t=>t.isSelectedValue&&t.sourceValues?.some(t=>t.datasetUrn===e))||o(e,t))))},hr=(e,t)=>t?(e||[]).filter(e=>t.has(e.urn)):e||[],gr=(e,t)=>t?new Map([...e].filter(([e])=>t.has(e))):e,_r=(e,t)=>{let n=new Map;if(e?.forEach(e=>{e.filters?.forEach(r=>{if(r.operator===h.QueryFilterType.BETWEEN||!r.values?.length)return;let i=Gn({id:r.componentCode,datasetUrn:e.urn,filterType:`dataset`},t);if(!i||i.id===`TIME_PERIOD`)return;let a=n.get(i.id)??new Set;a.add(e.urn),n.set(i.id,a)})}),n.size)return e?.filter(e=>Array.from(n.values()).every(t=>t.has(e.urn))).map(e=>e.urn)??[]},vr=(e,t)=>t?Array.from(new Set(e?.flatMap(e=>e.cubeRegions?.filter(e=>e.isIncluded).flatMap(e=>e.memberSelection?.filter(e=>e.componentId===t).flatMap(e=>e.selectionValues.map(e=>e.memberValue))??[])??[])??[])):[],yr=(e,t,n)=>{if(e.length<2||!t)return e;let r=e.flatMap(e=>Vn.flatMap(r=>{if(!r.subtype)return[];let i=zn(e.urn,r.subtype,n);return i?[{configId:r.id,dataQuery:e,dimensionId:i,filter:e.filters?.find(e=>e.componentCode===i&&e.operator!==h.QueryFilterType.BETWEEN),availableValues:vr(t.get(e.urn),i)}]:[]})),i=new Map;r.forEach(e=>{i.set(e.configId,[...i.get(e.configId)??[],e])});let a=new Map;return i.forEach(e=>{let t=e.filter(e=>e.filter?.values?.length),n=e.filter(e=>!e.filter);if(!t.length||!n.length)return;let r=new Set(n.flatMap(e=>e.availableValues));r.size&&t.forEach(e=>{let t=e.filter;if(!t?.values?.length)return;let n=new Set(e.availableValues),i=Array.from(new Set([...t.values,...Array.from(r).filter(e=>n.has(e))]));i.length>t.values.length&&a.set(t,i)})}),a.size?e.map(e=>{let t=!1,n=e.filters?.map(e=>{let n=a.get(e);return n?(t=!0,{...e,values:n}):e});return t?{...e,filters:n}:e}):e},br=e=>JSON.stringify(e?.map(e=>({urn:e.urn,filters:e.filters??[]}))??[]),xr=(e,t,n=h.Locale.EN,r)=>{let i=[];return Array.from(e?.entries())?.forEach(([e,r])=>{let a=t?.dimensionsMap?.get(e),o=t?.structuresMap?.get(e),s=Yn(t?.constraintsMap,e),c=Xn(t,e);if(!s||!c){i.push(...ur(r));return}let l=t?.constraintsMap?.get(e);i.push(...rn(r,a,o,l,n))}),Qn(i,r)},Sr=(e,t,n)=>t?pr(e,void 0,!1,n).get(t)||[]:e.filter(e=>e.filterType!==`shared`),Cr=(e,t)=>{if(e?.filterType===`shared`)return;let n=e?.datasetUrn?t?.get(e.datasetUrn)?.dataflows?.[0]:void 0;return n?(0,b.generateShortUrn)(n?.name,``,n?.agencyID):void 0},wr=(e,t)=>e?.length?!!t?.dimensionsMap&&!!t?.structuresMap&&!!t?.structureDimensionsMap&&!!t?.constraintsMap:!1,Tr=(e,t,n)=>ln(an(t,e,n).filter(e=>e.componentCode!==b.TIME_PERIOD)),Er=(e,t,n,r,i)=>e?.map(e=>{let a=e?.urn??``,o=Tr(a,i??t?.get(a)??[],r);return n?mn(n.getConstraints,pn(a,o),()=>n.getConstraints(a,o)).then(e=>({urn:a,data:e})):Promise.resolve({urn:a,data:{}})})||[],Dr=(e,t,n,r,i)=>!n?.getConstraints||!e?.length?!1:e.some(e=>{let a=e?.urn??``,o=Tr(a,i??t?.get(a)??[],r);return!hn(n.getConstraints,pn(a,o))}),Or=(e,t,n)=>{if(e.length<2)return!1;let r=new Map;for(let i of e){let e=t.dimensionsMap?.get(i.urn);if(e)for(let t of e){let e=t.id;if(!e)continue;let a=n?.[i.urn]?.[e],o=a?.subtype;if(!o||a?.dimensionType===`TIME_PERIOD`)continue;let s=Vn.find(e=>e.subtype===o);if(!s)continue;let c=r.get(s.id)??{datasetsWithExplicitValues:new Set,datasetsWithMissingFilter:new Set},l=i.filters?.find(t=>t.componentCode===e&&t.operator!==h.QueryFilterType.BETWEEN);l?l.values?.length&&c.datasetsWithExplicitValues.add(i.urn):c.datasetsWithMissingFilter.add(i.urn),r.set(s.id,c)}}return[...r.values()].some(e=>[...e.datasetsWithMissingFilter].some(t=>[...e.datasetsWithExplicitValues].some(e=>e!==t)))},kr=e=>new Map(e?.flatMap(({urn:e,data:t})=>{let n=t?.data?.dataConstraints;return Array.isArray(n)?[[e,n]]:[]})),Ar=e=>kr(e.flatMap(e=>e.status===`fulfilled`?[e.value]:[])),jr=(e,t)=>{let n=new Map(e);return t.forEach((e,t)=>{n.set(t,e)}),n},Mr=(e,t,n,r)=>{if(e&&t?.filterType===`shared`&&t?.isTimeDimension){let e=Array.from(r?.values()||[]).flatMap(e=>e||[]).map(e=>(0,b.getAnnotationPeriod)(e?.annotations)).filter(e=>e.startPeriod!==null&&e.endPeriod!==null);if(!e.length)return[];let n=new Date(Math.min(...e.map(e=>e.startPeriod.getTime()))),i=new Date(Math.max(...e.map(e=>e.endPeriod.getTime())));return[{id:t.id||b.TIME_PERIOD,annotations:[{id:b.TIME_PERIOD_START_ANNOTATION_KEY,title:n.toISOString()},{id:b.TIME_PERIOD_END_ANNOTATION_KEY,title:i.toISOString()}]}]}return e?r?.get(t?.datasetUrn??``)??[]:n??[]},Nr=(e,t,n)=>new Map(t?.map(t=>{let r=t?.urn;return[r,yn(e.get(r)||[],n?.get(r))]})),Pr=(e,t,n,r,i)=>{let a=Or(e,t,i);if(!n||!e.length||!a)return;let o=fr(dr({...t,constraintsMap:n},r,!1),e,n,i),s=pr(o,n,!1,i),c=mr(o,e.map(e=>e.urn),e,i,s);return{compatibleUrns:c,filterParamsMap:Nr(s,e.filter(e=>c.has(e.urn)),t.dimensionsMap)}},Fr=(e,t)=>new Map(e?.map(e=>{let n=e?.urn;return[n,En(t?.get(n)||[])]})),Ir=(e,t,n)=>{let r=(e.sourceDatasetUrns??[]).filter(e=>!t.has(e));if(r.length===0)return[];if(!n||!e.timeRange)return[{...e,sourceDatasetUrns:r}];let i=r.map(e=>(0,b.getAnnotationPeriod)(n.get(e)?.[0]?.annotations)).filter(e=>!!e?.startPeriod&&!!e?.endPeriod);if(i.length===0)return[{...e,sourceDatasetUrns:r}];let a=new Date(Math.min(...i.map(e=>e.startPeriod.getTime()))),o=new Date(Math.max(...i.map(e=>e.endPeriod.getTime())));return[{...e,sourceDatasetUrns:r,timeRange:or(e.timeRange.startPeriod,e.timeRange.endPeriod,a,o)}]},Lr=(e,t,n)=>t.size===0?e:e.flatMap(e=>{if(e.filterType!==`shared`)return[e];if(e.isTimeDimension)return Ir(e,t,n);let r=(e.dimensionValues??[]).filter(e=>e.sourceValues?.some(e=>!t.has(e.datasetUrn??``)));return r.length===0?[]:[{...e,dimensionValues:r}]}),Rr=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 16 16`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{d:`M8 14C6.32222 14 4.90278 13.7417 3.74167 13.225C2.58056 12.7083 2 12.0778 2 11.3333V4.66667C2 3.93333 2.58611 3.30556 3.75833 2.78333C4.93056 2.26111 6.34444 2 8 2C9.65556 2 11.0694 2.26111 12.2417 2.78333C13.4139 3.30556 14 3.93333 14 4.66667V11.3333C14 12.0778 13.4194 12.7083 12.2583 13.225C11.0972 13.7417 9.67778 14 8 14ZM8 6.01667C8.98889 6.01667 9.98333 5.875 10.9833 5.59167C11.9833 5.30833 12.5444 5.00556 12.6667 4.68333C12.5444 4.36111 11.9861 4.05556 10.9917 3.76667C9.99722 3.47778 9 3.33333 8 3.33333C6.98889 3.33333 5.99722 3.475 5.025 3.75833C4.05278 4.04167 3.48889 4.35 3.33333 4.68333C3.48889 5.01667 4.05278 5.32222 5.025 5.6C5.99722 5.87778 6.98889 6.01667 8 6.01667ZM8 9.33333C8.46667 9.33333 8.91667 9.31111 9.35 9.26667C9.78333 9.22222 10.1972 9.15833 10.5917 9.075C10.9861 8.99167 11.3583 8.88889 11.7083 8.76667C12.0583 8.64444 12.3778 8.50556 12.6667 8.35V6.35C12.3778 6.50556 12.0583 6.64444 11.7083 6.76667C11.3583 6.88889 10.9861 6.99167 10.5917 7.075C10.1972 7.15833 9.78333 7.22222 9.35 7.26667C8.91667 7.31111 8.46667 7.33333 8 7.33333C7.53333 7.33333 7.07778 7.31111 6.63333 7.26667C6.18889 7.22222 5.76944 7.15833 5.375 7.075C4.98056 6.99167 4.61111 6.88889 4.26667 6.76667C3.92222 6.64444 3.61111 6.50556 3.33333 6.35V8.35C3.61111 8.50556 3.92222 8.64444 4.26667 8.76667C4.61111 8.88889 4.98056 8.99167 5.375 9.075C5.76944 9.15833 6.18889 9.22222 6.63333 9.26667C7.07778 9.31111 7.53333 9.33333 8 9.33333ZM8 12.6667C8.51111 12.6667 9.03056 12.6278 9.55833 12.55C10.0861 12.4722 10.5722 12.3694 11.0167 12.2417C11.4611 12.1139 11.8333 11.9694 12.1333 11.8083C12.4333 11.6472 12.6111 11.4833 12.6667 11.3167V9.68333C12.3778 9.83889 12.0583 9.97778 11.7083 10.1C11.3583 10.2222 10.9861 10.325 10.5917 10.4083C10.1972 10.4917 9.78333 10.5556 9.35 10.6C8.91667 10.6444 8.46667 10.6667 8 10.6667C7.53333 10.6667 7.07778 10.6444 6.63333 10.6C6.18889 10.5556 5.76944 10.4917 5.375 10.4083C4.98056 10.325 4.61111 10.2222 4.26667 10.1C3.92222 9.97778 3.61111 9.83889 3.33333 9.68333V11.3333C3.38889 11.5 3.56389 11.6611 3.85833 11.8167C4.15278 11.9722 4.52222 12.1139 4.96667 12.2417C5.41111 12.3694 5.9 12.4722 6.43333 12.55C6.96667 12.6278 7.48889 12.6667 8 12.6667Z`,fill:`currentColor`})}),zr=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 20 20`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{d:`M6.66663 6.175L10.4833 10L6.66663 13.825L7.84163 15L12.8416 10L7.84163 5L6.66663 6.175Z`,fill:`currentColor`})}),Br=C.FixedSizeList,Vr=24,Hr=232,Ur=({selectedFilter:e,filterValues:t,checkboxIcon:n,isHierarchicalView:r,isVirtualized:i=!0,isScrollable:a=!0,isDisableValues:o,isValuesLoading:s,structuresMap:c,hierarchyTreeNodes:u,isHierarchyLoading:f,selectFilterValue:m,selectHierarchicalNodes:h,expandHierarchicalValue:g})=>{let _=(0,d.useIsMobile)(d.MOBILE_BREAKPOINT),{isCrossDatasetModeOn:v}=Z(),y=s||f;if(!t&&!y)return null;let b=t??[],x=e?Cr(e,c):void 0,S=c?.size===1,C=v&&e?.filterType!==`shared`&&!!e?.title&&(S||!!x),T=b.length*Vr,E=T>Hr?Hr:T;return(0,l.jsxs)(`div`,{className:(0,p.default)(`relative`,o&&`pointer-events-none opacity-[0.7]`,a?`flex h-full min-h-0 flex-col mobile:h-auto`:`flex flex-col`,y&&`min-h-12`),children:[C&&(0,l.jsxs)(`div`,{className:`mb-2 flex items-center gap-x-1`,children:[!S&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(Rr,{className:`size-4 shrink-0 text-neutrals-700`}),(0,l.jsx)(`span`,{className:`h4 text-neutrals-800`,children:x}),(0,l.jsx)(zr,{className:`size-4 shrink-0 text-neutrals-1000`})]}),(0,l.jsx)(`span`,{className:`h4 text-neutrals-1000`,children:e?.title})]}),y&&(0,l.jsx)(`div`,{className:`pointer-events-none absolute inset-0 z-10 min-h-12`,children:(0,l.jsx)(d.Loader,{})}),(0,l.jsx)(`div`,{className:(0,p.default)(a?`min-h-0 flex-1 overflow-auto mobile:flex-none`:`overflow-visible`,y&&`pointer-events-none opacity-[0.7]`),style:a&&_&&!y?{height:`${E}px`}:void 0,children:u?.length||r?(0,l.jsx)(tn,{treeNodes:u??Bt(b),checkboxIcon:n,selectFilterValue:m,selectHierarchicalNodes:h,expandHierarchicalValue:g}):!i||_?(0,l.jsx)(`div`,{className:`flex flex-col gap-y-1`,children:b.map(e=>(0,l.jsx)(nn,{filterValue:e,checkboxIcon:n,selectFilterValue:m},e.id))}):(0,l.jsx)(w.default,{children:({width:e,height:t})=>(0,l.jsx)(Br,{itemCount:b.length,itemSize:Vr,width:e,height:t,children:({index:e,style:t})=>(0,l.jsx)(nn,{style:t,filterValue:b[e],checkboxIcon:n,selectFilterValue:m})})})})]})};function Wr(e,t){let n=(e??``).split(`.`).map(Number),r=(t??``).split(`.`).map(Number),i=Math.max(n.length,r.length);for(let e=0;e<i;e++){let t=(n[e]??0)-(r[e]??0);if(t!==0)return t}return 0}function Gr(e){let t=new Map;for(let n of e){let e=`${n.agencyID??``}:${n.id}`,r=t.get(e);(!r||Wr(n.version??``,r.version??``)>0)&&t.set(e,n)}return Array.from(t.values())}function Kr(e){return(0,b.generateShortUrn)(e.id,e.version??``,e.agencyID??``)}function qr(e,t,n,r,i){let a=(0,b.getHierarchyAvailableCodes)((0,b.getHierarchyCodes)(e,t),n,r);return Xr(Yr(e,(0,b.getCodeListsData)(t),a.map(e=>e.id),i))}function Jr(e,t,n,r,i){return r?.map(r=>{let{childId:a,agency:o,id:s,version:c}=(0,b.getChildParsedUrn)(r.code),l=(0,b.generateShortUrn)(s,c,o),u=Object.keys(e??{}).find(e=>(0,b.urnMatchesIgnoreVersion)(e,l))??l,d=(e?.[u])?.find(e=>e.id===a),f=d?.name||d?.description||a,p=n?(0,b.urnMatchesIgnoreVersion)(l,n):!0,m=!p&&(r.hierarchicalCodes?.length??0)>0,h=Jr(e,t,n,r.hierarchicalCodes,r.code),g=h.length===0;return m&&g||p&&g&&t&&!t.includes(a??``)?null:{id:r.code,name:f,children:h,isExpanded:!0,disabled:!p&&h.every(e=>e.disabled),isSelectableValue:p,parent:i,metadata:{...r,hierarchicalCodes:void 0}}}).filter(e=>e!==null)??[]}function Yr(e,t,n,r){return!n||n.length===0?[]:Jr(t,n,r,e?.hierarchicalCodes,void 0)}function Xr(e){return e.map(e=>{let{childId:t}=(0,b.getChildParsedUrn)(e.id??``);return{id:t??e.id??``,name:e.name,isExpanded:e.isExpanded,isSelectedValue:!1,disabled:e.disabled,isSelectableValue:e.isSelectableValue,children:Xr(e.children)}})}function Zr(e,t){return e?.filterType===`shared`?e.dimensionValues?.find(e=>e.id===t||e.sourceValues?.some(e=>e.id===t))?.id:t}function Qr(e){return e?.filterType===`shared`?new Set(e.dimensionValues?.flatMap(e=>e.isSelectedValue?e.sourceValues?.map(e=>e.id)??[]:[])??[]):new Set(e?.dimensionValues?.filter(e=>e.isSelectedValue).map(e=>e.id)??[])}function $r(e,t){if(!e?.length||t?.filterType!==`shared`)return e??[];let n=new Map;return e.forEach(e=>{let r=Zr(t,e.id);r&&n.set(r,{...e,id:r})}),Array.from(n.values())}function ei(e,t){return Zr(t,e)}function ti(e,t){return e.map(e=>{let n=e.children?.length?ti(e.children,t):e.children,r;if(t.has(e.id))r=!0;else if(n?.length&&!e.isSelectableValue){let e=n.filter(e=>!e.disabled);r=e.length>0&&e.every(e=>!!e.isSelectedValue)}else r=!1;return{...e,isSelectedValue:r,children:n}})}function ni(e,t){return e.map(e=>e.id===t?{...e,isExpanded:!e.isExpanded}:e.children?.length?{...e,children:ni(e.children,t)}:e)}function ri(e,t){let n=t.toLowerCase();return e.reduce((e,r)=>{let i=r.name?.toLowerCase().includes(n),a=ri(r.children??[],t);return(i||a.length>0)&&e.push({...r,isExpanded:!0,children:i?r.children:a}),e},[])}var ii=(0,c.createContext)(null);function ai({children:e,value:t}){return(0,l.jsx)(ii.Provider,{value:t,children:e})}function oi(){let e=(0,c.useContext)(ii);if(!e)throw Error(`useFiltersModal must be used within FiltersModalProvider`);return e}var si=2,ci=({filtersList:e,selectedFilter:t,initialConstraints:n,structuresMap:r,selectedTimeOption:i,hierarchyState:a})=>{let{titles:o}=Y(),{locale:s,isDisableValues:u,isValuesLoading:d,timeRangeOptions:f,filterValuesProps:m,dataQueries:g,selectFilterValue:_,selectHierarchicalNodes:v,expandHierarchicalValue:y,onTimePeriodChange:x}=oi(),[S,C]=(0,c.useState)(``),{isCrossDatasetModeOn:w}=Z(),T=t?.displayMode===wt.HIERARCHY,E=Dt(t),D=t?.filterType===`shared`,O=S?.trim().toLowerCase(),k=w?O.length>=si:!!O,A=k&&w&&!D,j=(0,c.useCallback)(e=>{if(!e?.dimensionValues)return{filterValues:[],matchedCount:0};let t=e.dimensionValues.filter(e=>e?.name?.toLowerCase()?.includes(O));return{filterValues:e.displayMode===wt.HIERARCHY?(0,b.getFilteredItemsWithParents)(e.dimensionValues,t):t,matchedCount:t.length}},[O]),M=(0,c.useMemo)(()=>k?j(t).filterValues:t?.dimensionValues,[k,j,t]),N=(0,c.useMemo)(()=>A?(e||[]).reduce((e,n)=>{if(Ot(n,t)||n.filterType===`shared`)return e;let{filterValues:r,matchedCount:i}=j(n);return i?[...e,{filter:n,filterValues:r,matchedCount:i,isHierarchicalView:n.displayMode===wt.HIERARCHY}]:e},[]):[],[A,e,t,j]),P=(0,c.useMemo)(()=>{let e=a?.treeNodes;if(!e?.length)return e;let n=Qr(t),r=n.size?ti(e,n):e;return k?ri(r,O):r},[a?.treeNodes,t,k,O]),F=P?!P.length:!M?.length,I=!!d||!!a?.isLoading,L=(0,c.useMemo)(()=>N.reduce((e,t)=>e+t.matchedCount,0),[N]);(0,c.useEffect)(()=>{C(``)},[E]);let R=(0,c.useCallback)(e=>{C(e)},[C]);return(0,l.jsx)(l.Fragment,{children:t?.isTimeDimension&&n?(0,l.jsx)(Jt,{initialConstraints:n,calendarResolution:h.CalendarResolution.DAY,timeRange:t?.timeRange||null,timeRangeOptions:f||[],calendarStartFromMonday:!0,locale:s,radioIcon:m?.radioIcon,onValueChange:x,calendarIcon:m?.calendarIcon,dateFormat:m?.dateFormat,defaultTimeOption:i,dataQueries:g}):(0,l.jsxs)(`div`,{className:(0,p.default)(`flex h-full min-w-0 flex-1 flex-col py-2 mobile:h-auto mobile:flex-none mobile:border-0`,`filter-values-container`),children:[(0,l.jsx)(Qt,{value:S,onChange:R,searchIconSize:m?.searchIconSize}),(0,l.jsx)(`div`,{className:`body-2 mt-3 flex min-h-0 flex-1 flex-col overflow-auto mobile:flex-none mobile:overflow-visible`,children:A?(0,l.jsxs)(l.Fragment,{children:[t&&(0,l.jsxs)(`div`,{className:`shrink-0 pb-4`,children:[(0,l.jsx)(Ur,{selectedFilter:t,filterValues:M,checkboxIcon:m?.checkboxIcon,isHierarchicalView:T,isVirtualized:!1,isScrollable:!1,isDisableValues:u,isValuesLoading:d,structuresMap:r,hierarchyTreeNodes:P,isHierarchyLoading:a?.isLoading,selectFilterValue:_,selectHierarchicalNodes:v,expandHierarchicalValue:y}),!I&&F&&(0,l.jsx)(`span`,{className:`body-2 text-neutrals-700`,children:o?.noResultsInSection?.(t.title??``)??`No results found in ${t.title??``}`})]}),(0,l.jsxs)(`div`,{className:`pb-3`,children:[(0,l.jsxs)(`span`,{className:`h2 text-neutrals-1000`,children:[o?.otherResults??`Other results`,`:`,` `,L]}),!d&&L===0&&(0,l.jsx)(`p`,{className:`body-2 mt-1 text-neutrals-700`,children:o?.noResultsInOtherDimensions??`No results found in other dimensions`})]}),N.map(({filter:e,filterValues:t,isHierarchicalView:n})=>(0,l.jsx)(`div`,{className:`shrink-0 pb-4 last:pb-0`,children:(0,l.jsx)(Ur,{selectedFilter:e,filterValues:t,checkboxIcon:m?.checkboxIcon,isHierarchicalView:n,isVirtualized:!1,isScrollable:!1,isDisableValues:u,isValuesLoading:d,structuresMap:r,selectFilterValue:(t,n)=>_(t,n,e),selectHierarchicalNodes:t=>v(t,e),expandHierarchicalValue:t=>y(t,e)})},Dt(e)))]}):(0,l.jsx)(Ur,{selectedFilter:t,filterValues:M,checkboxIcon:m?.checkboxIcon,isHierarchicalView:T,isDisableValues:u,isValuesLoading:d,structuresMap:r,hierarchyTreeNodes:P,isHierarchyLoading:a?.isLoading,selectFilterValue:_,selectHierarchicalNodes:v,expandHierarchicalValue:y})})]})})},li=({filtersList:e,filter:t,onSelectFilter:n,onSelectDisplayMode:r,onDeleteFilter:i,initialConstraints:a,hideFacetCounterByDefault:o,hierarchyState:s})=>{let{titles:u}=Y(),{locale:f,onSelectHierarchy:m}=oi(),h=(0,d.useIsMobile)(),[g,_]=(0,c.useState)(0),[v,y]=(0,c.useState)(!1),b=t?.isTimeDimension&&t?.timeRange,x=(0,c.useMemo)(()=>t?.timeRange?.startPeriod&&t?.timeRange?.endPeriod?`${_t(t?.timeRange?.startPeriod,f)} -
|
|
6
6
|
${_t(t?.timeRange?.endPeriod,f)}`:``,[f,t?.timeRange]);(0,c.useEffect)(()=>{_(jt(t?.dimensionValues)?.length)},[t?.dimensionValues]);let S=o?g>0:!0,C=(0,c.useMemo)(()=>qt({isHierarchical:t?.isHierarchical,availableHierarchies:s?.availableHierarchies,titles:u}),[t?.isHierarchical,s?.availableHierarchies,u]),w=s?.isLoading||!t?.isHierarchical&&!s?.availableHierarchies?.length;return(0,c.useEffect)(()=>{t.isSelectedFilter||y(!1)},[t.isSelectedFilter]),(0,l.jsxs)(`div`,{className:`flex flex-col`,children:[(0,l.jsxs)(`div`,{className:(0,p.default)(`flex justify-between items-center px-2 h-10 hover:bg-hues-100 sm:h-14 sm:hover:bg-white rounded`,`filters-facet-item cursor-pointer`,t?.isSelectedFilter&&!h&&`bg-hues-100`,t?.isDisabled&&`cursor-default pointer-events-none opacity-[0.7]`),onClick:()=>{h&&y(e=>!e),n(t)},children:[(0,l.jsxs)(`h3`,{className:`w-full min-w-0 flex-1 truncate sm:flex sm:items-center`,title:t?.title,children:[(0,l.jsx)(`span`,{className:`truncate`,children:t?.title}),h&&(0,l.jsx)(ft,{className:(0,p.default)(`chevron-icon w-6 h-6 shrink-0`,v&&`rotate-180`)})]}),(0,l.jsxs)(`div`,{className:`ml-2 flex items-center gap-2 text-neutrals-800`,children:[b&&(0,l.jsx)(`span`,{className:`filters-facet-item-counter border-none`,children:x}),!b&&S&&(0,l.jsx)(`span`,{className:(0,p.default)(`px-2 text-center`,`filters-facet-item-counter`),children:g?`${g}/${t?.dimensionValues?.length||0}`:u?.all||`All`}),b?null:(0,l.jsxs)(`div`,{className:`filters-facet-item-settings flex items-center gap-2`,children:[(0,l.jsx)(d.Dropdown,{triggerButton:(0,l.jsx)(d.IconButton,{buttonClassName:(0,p.default)(`text-button-tertiary w-4 h-4 border-0 p-0`,`filters-facet-item-icon`),icon:(0,l.jsx)(pt,{width:16,height:16}),title:u?.displayOrder||`Display Order`,disabled:w}),disabled:w,options:C,selectedOption:s?.selectedHierarchy?.id??(t?.displayMode===wt.HIERARCHY?wt.HIERARCHY:``),onOptionSelect:e=>{if(e===``)m?.(t,null),r?.(t,wt.FLAT_LIST);else if(e===wt.HIERARCHY)m?.(t,null),r?.(t,wt.HIERARCHY);else{let n=s?.availableHierarchies?.find(t=>t.id===e)??null;m?.(t,n)}}}),g>0&&(0,l.jsx)(d.IconButton,{buttonClassName:(0,p.default)(`text-button-tertiary w-4 h-4 border-0 p-0`,`filters-facet-item-icon`),icon:(0,l.jsx)(ut,{width:16,height:16}),title:u?.reset||`Reset`,onClick:e=>{e.stopPropagation(),i?.(t)}})]})]})]}),v&&(0,l.jsx)(ci,{filtersList:e,selectedFilter:t,initialConstraints:a,hierarchyState:s})]})},ui=new Set,di=({filtersList:e,hideFacetCounterByDefault:t,onSelectFilter:n,onDeleteFilter:r,onSelectDisplayMode:i,initialConstraints:a,initialConstraintsMap:o,datasetIcon:s,structuresMap:c,hierarchyStateMap:u,dataQueries:d,disabledDatasetUrns:f=ui,isDatasetFacetSelected:m=!1,onSelectDatasetFacet:h,onClearAllDatasets:g})=>{let{isCrossDatasetModeOn:_}=Z(),v=_&&!!d?.length,y=new Set(e.filter(e=>e.filterType===`dataset`).map(e=>e.datasetUrn||``)).size;return(0,l.jsxs)(`div`,{className:(0,p.default)(`overflow-y-auto advanced-view-filters-list w-[338px] pr-3 h-full sm:w-full`),children:[v&&(0,l.jsx)(dt,{dataQueries:d,disabledDatasetUrns:f,isSelected:m,onSelect:h,onClearAll:g}),e.filter(e=>!(e.filterType===`dataset`&&e.datasetUrn&&f.has(e.datasetUrn))).map((e,d,f)=>{let p=f[d-1],m=e.filterType===`dataset`&&y>1&&e.datasetUrn!==p?.datasetUrn?Cr(e,c):void 0;return(0,l.jsxs)(`div`,{className:`min-w-0 shrink-0`,children:[m&&(0,l.jsxs)(`h4`,{className:`filters-facet-dataset-name !flex`,children:[(0,l.jsx)(`span`,{className:`filters-facet-dataset-icon`,children:s}),(0,l.jsx)(`span`,{className:`min-w-0 truncate`,title:m,children:m})]}),(0,l.jsx)(li,{filtersList:f,filter:e,onSelectFilter:n,onSelectDisplayMode:i,onDeleteFilter:r,hideFacetCounterByDefault:t,initialConstraints:Mr(_,e,a,o),hierarchyState:u?.get(Dt(e)??``)})]},Dt(e))})]})},fi=({dataQueries:e,disabledDatasetUrns:t,onToggleDataset:n,searchIconSize:r})=>{let[i,a]=(0,c.useState)(``),o=i.trim().toLowerCase(),s=e.filter(e=>o.length<2||(e.title??e.urn).toLowerCase().includes(o)),u=e.length-t.size;return(0,l.jsxs)(`div`,{className:`filter-values-container flex h-full min-w-0 flex-1 flex-col py-2 sm:border-0`,children:[(0,l.jsx)(Qt,{value:i,onChange:a,searchIconSize:r}),(0,l.jsx)(`div`,{className:`body-2 mt-3 flex min-h-0 flex-1 flex-col overflow-auto`,children:s.map(e=>{let r=!t.has(e.urn),i=r&&u===1;return(0,l.jsx)(`div`,{className:(0,p.default)(`py-1`,i&&`pointer-events-none`),children:(0,l.jsx)(d.Checkbox,{id:e.urn,label:e.title??e.urn,checked:r,disabled:i,disabledScope:`icon`,onChange:(t,r)=>n(e.urn,!!r)})},e.urn)})})]})},pi=({controller:e})=>{let{state:{filtersList:t,selectedFilter:n,isDisableValues:r,isValuesLoading:i,timeSeriesCount:a,selectedTimeOption:o,disabledDatasetUrns:s},options:{modalProps:u,locale:f,timeRangeOptions:m,initialConstraints:h,initialConstraintsMap:g,datasetIcon:_,structuresMap:v,dataQueries:y},handlers:{setSelectedFilter:b,onSelectDisplayMode:x,onDeleteFilter:S,onClearAllFilters:C,updateSelectedFilterValues:w,onTimePeriodChange:T,onToggleDataset:E,onClearAllDatasets:D},hierarchy:{hierarchyStateMap:O,onSelectHierarchy:k,onExpandHierarchyNode:A}}=e,{titles:j}=Y(),M=O?.get(Dt(n)),N=(0,d.useIsMobile)(),{isCrossDatasetModeOn:P}=Z(),[F,I]=(0,c.useState)(!1),L=(0,c.useMemo)(()=>Lr(t.filter(e=>!(e.filterType===`dataset`&&e.datasetUrn&&s.has(e.datasetUrn))),s,g),[t,s,g]),R=(0,c.useMemo)(()=>n?L.find(e=>Ot(e,n)):void 0,[n,L]),z=Nt(Mt(t))+s.size,B=(0,c.useCallback)(()=>{I(!0),b(void 0)},[b]),V=(0,c.useCallback)(e=>{I(!1);let n=t?.find(t=>Ot(t,e));if(!n){b(void 0);return}b({...n,isSelectedFilter:!0})},[t,b]),H=e=>e?t?.find(t=>Ot(t,e)):void 0;return(0,l.jsx)(ai,{value:{locale:f,isDisableValues:r,isValuesLoading:i,timeRangeOptions:m,filterValuesProps:u?.filterValuesProps,dataQueries:y,onSelectHierarchy:k,selectFilterValue:(e,t,r)=>{let i=!r||Ot(r,n),a=H(r??n)??r??n;if(!a)return;let o=Et(a)?ei(e,a):e;if(!o)return;let s={...a,dimensionValues:a?.dimensionValues?.map(e=>e?.id===o?{...e,isSelectedValue:t}:e)};i&&b(s),w&&w(s)},selectHierarchicalNodes:(e,t)=>{let r=!t||Ot(t,n),i=H(t??n)??t??n;if(!i)return;let a=Et(i)?$r(e,i):e??[],o=new Set(i?.dimensionValues?.map(e=>e.id)),s=Et(i)?[]:Kt(a,o),c={...i,dimensionValues:[...i?.dimensionValues?.map(e=>{let t=a.find(t=>t?.id===e?.id);return t?{...e,isSelectedValue:t.isSelectedValue}:e})??[],...s]};r&&b(c),w&&w(c)},expandHierarchicalValue:(e,t)=>{let r=!t||Ot(t,n),i=H(t??n)??t??n;if(!i||!e?.id)return;let a=Dt(i);if((a?O?.get(a):void 0)?.treeNodes?.length){A?.(a,e.id);return}let o={...i,dimensionValues:i?.dimensionValues?.map(t=>t?.id===e?.id?{...t,isExpanded:!e?.isExpanded}:t)};r&&b(o),w&&w(o)},onTimePeriodChange:(e,t)=>{if(!n)return;let r={...n,timeRange:e||void 0};T?.(t),b(r),w&&w(r)}},children:(0,l.jsxs)(`div`,{className:(0,p.default)(`flex flex-row gap-5 flex-1 min-h-0 sm:p-0`,`filters-settings`),children:[(0,l.jsxs)(`div`,{className:(0,p.default)(`h-full sm:w-full`,u?.isShowTimeSeriesCount&&`flex flex-col justify-between`),children:[P&&(0,l.jsxs)(`div`,{className:`mb-4 flex items-center justify-between gap-x-4`,children:[(0,l.jsxs)(`span`,{className:`body-3 text-neutrals-900`,children:[j?.appliedFilters??`Applied filters`,`:`,` `,z]}),(0,l.jsx)(d.Button,{buttonClassName:`text-button-tertiary p-0`,title:j?.clearAll??`Clear All`,onClick:C,isSmallButton:N})]}),(0,l.jsx)(di,{filtersList:L,hideFacetCounterByDefault:u?.isHideFacetCounterByDefault,onSelectFilter:V,onSelectDisplayMode:x,onDeleteFilter:S,initialConstraints:h,initialConstraintsMap:g,datasetIcon:_,structuresMap:v,hierarchyStateMap:O,dataQueries:y,disabledDatasetUrns:s,isDatasetFacetSelected:F,onSelectDatasetFacet:B,onClearAllDatasets:D}),u?.isShowTimeSeriesCount&&a?(0,l.jsxs)(`h4`,{className:`my-4 text-neutrals-800`,children:[j?.timeSeries??`Timeseries`,`: `,a]}):null]}),!N&&(F?(0,l.jsx)(fi,{dataQueries:y??[],disabledDatasetUrns:s,onToggleDataset:E,searchIconSize:u?.filterValuesProps?.searchIconSize}):(0,l.jsx)(ci,{filtersList:L,selectedFilter:R,structuresMap:v,initialConstraints:Mr(P,n,h,g),selectedTimeOption:o,hierarchyState:M}))]})})},mi=({timeseriesLength:e=0,limitMessages:t})=>(0,l.jsx)(`div`,{className:`body-3 flex items-center gap-x-[4px] text-neutrals-800 sm:justify-center sm:text-center`,children:!e||d.SERIES_LIMIT>e?(0,l.jsx)(`span`,{children:t?.seriesCount?.(e)}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`span`,{children:t?.warningIcon}),(0,l.jsx)(`span`,{children:t?.counterLimit?.(e,d.SERIES_LIMIT)})]})}),hi=({modalProps:e,onApply:t,onClearAllFilters:n,onClose:r,applyDisabled:i,timeseriesLength:a,limitMessages:o})=>{let{titles:s}=Y(),c=(0,d.useIsMobile)(),u=e?.footerActionsPosition===`right`,f=e?.isShowCancelButton,m=e?.isShowClearAllButton??!0,h=f?u?`justify-end`:`justify-start`:u?`flex-row items-center justify-between sm:flex-col-reverse sm:gap-y-4`:`gap-x-8 flex-row-reverse items-center justify-between sm:flex-col sm:gap-y-4`,g=f?u?`items-center gap-x-8`:`justify-between`:u?`flex-row justify-end items-center sm:flex-col-reverse sm:gap-y-4`:`gap-x-8 flex-row-reverse justify-end items-center sm:flex-col-reverse sm:gap-y-4`;return(0,l.jsxs)(`div`,{className:(0,p.default)(`flex py-4 px-6 modal-footer-wrapper`,h),children:[!f&&(0,l.jsx)(mi,{timeseriesLength:a,limitMessages:o}),(0,l.jsxs)(`div`,{className:(0,p.default)(`flex`,g),children:[m&&(0,l.jsx)(d.Button,{iconBefore:c?e?.resetIcon:void 0,buttonClassName:`text-button-tertiary p-0`,title:e?.isShowClearIcon?s?.clearAllFilters??`Clear All Filters`:s?.clearAll??`Clear All`,onClick:()=>n(),isSmallButton:c}),(0,l.jsxs)(`div`,{className:`flex items-center gap-x-3`,children:[e?.isShowCancelButton?(0,l.jsx)(d.Button,{buttonClassName:`text-button-tertiary sm:h8`,title:s?.cancel??`Cancel`,onClick:r,isSmallButton:c}):null,(0,l.jsx)(d.Button,{buttonClassName:`advanced-view-filters-modal-apply-button`,title:s?.apply??`Apply`,onClick:t,isSmallButton:c,disabled:i})]})]})]})},gi=({buttonProps:e,selectedFiltersCount:t,isLoading:n,setModalState:r,isModalClosed:i,filterIconClassName:a,timeSeriesCount:o,modalState:s,modalProps:c,controller:u,onApply:f,onClose:p,onClearAllFilters:m,applyDisabled:h,limitMessages:g})=>{let{titles:_}=Y();return(0,l.jsxs)(`div`,{className:`filters-container`,children:[(0,l.jsx)(lt,{buttonProps:e,selectedFiltersCount:t,isLoading:n,setModalState:r,isModalClosed:i,warningIcon:g?.warningIcon,filterIconClassName:a,timeSeriesCount:o}),s===d.PopUpState.Opened&&(0,l.jsxs)(d.Popup,{heading:_?.settings||`Settings`,portalId:`filters`,size:d.PopUpSize.LG,containerClassName:`advanced-view-filters-modal h-[80%]`,dividers:c?.isShowDividers,onClose:p,closeButtonTitle:_?.close||`Close`,children:[(0,l.jsx)(pi,{controller:u}),(0,l.jsx)(hi,{onApply:f,onClose:p,onClearAllFilters:m,modalProps:c,applyDisabled:h,timeseriesLength:o,limitMessages:g})]})]})},_i=(0,c.createContext)(null);function vi({children:e}){let[t,n]=(0,c.useState)(d.PopUpState.Closed),[r,i]=(0,c.useState)(!1),a=(0,c.useMemo)(()=>({modalState:t,setModalState:n,isModalClosed:r,setIsModalClosed:i}),[t,r]);return(0,l.jsx)(_i.Provider,{value:a,children:e})}function yi(){let e=(0,c.useContext)(_i);if(!e)throw Error(`useFiltersModalState must be used within FiltersModalStateProvider`);return e}var bi={availableHierarchies:[],selectedHierarchy:null,mainHierarchy:null,codelists:[],treeNodes:[],isLoading:!1},xi=({getCodelistUrnForFilter:e,getConstraintsForFilter:t,getSourceArtefactUrn:n,getAvailableHierarchies:r,getHierarchy:i})=>{let[a,o]=(0,c.useState)(new Map),s=(0,c.useCallback)((n,r)=>{let i=Dt(n);if(!i)return;let a=e(n),s=r??t(n);o(e=>{let t=e.get(i);if(!t?.mainHierarchy)return e;let r=qr(t.mainHierarchy,t.codelists,n.id??``,s,a),o=new Map(e);return o.set(i,{...t,treeNodes:r}),o})},[e,t]),l=(0,c.useCallback)(async t=>{if(!r)return;let i=e(t);if(!i)return;let a=Dt(t);if(a){o(e=>{let t=new Map(e),n=e.get(a)??bi;return t.set(a,{...n,isLoading:!0}),t});try{let e=Gr((await r(i,n?.(t)))?.data?.hierarchies??[]);o(t=>{let n=new Map(t),r=t.get(a)??bi;return n.set(a,{...r,availableHierarchies:e,isLoading:!1}),n})}catch{o(e=>{let t=new Map(e),n=e.get(a)??bi;return t.set(a,{...n,isLoading:!1}),t})}}},[r,e,n]),u=(0,c.useCallback)(async(n,r)=>{if(!i)return;let a=Dt(n);if(!a)return;let s=e(n);o(e=>{let t=new Map(e),n=e.get(a)??bi;return t.set(a,{...n,isLoading:!0}),t});try{let e=Kr(r),c=await i(e,s),l=c?.data?.hierarchies?.find(t=>Kr(t)===e);if(!l){o(e=>{let t=new Map(e),n=e.get(a)??bi;return t.set(a,{...n,selectedHierarchy:r,mainHierarchy:null,treeNodes:[],isLoading:!1}),t});return}let u=(0,b.resolveCodelistsFromResponse)(c?.data),d=qr(l,u,n.id??``,t(n),s);o(e=>{let t=new Map(e),n=e.get(a)??bi;return t.set(a,{...n,selectedHierarchy:r,mainHierarchy:l,codelists:u,treeNodes:d,isLoading:!1}),t})}catch{o(e=>{let t=new Map(e),n=e.get(a)??bi;return t.set(a,{...n,isLoading:!1}),t})}},[i,e,t]);return{hierarchyStateMap:a,rebuildHierarchyTree:s,loadAvailableHierarchies:l,onSelectHierarchy:(0,c.useCallback)((e,t)=>{if(!e)return;let n=Dt(e);if(n){if(!t){o(e=>{let t=new Map(e),r=e.get(n)??bi;return t.set(n,{...r,selectedHierarchy:null,mainHierarchy:null,treeNodes:[]}),t});return}u(e,t)}},[u]),onExpandHierarchyNode:(0,c.useCallback)((e,t)=>{o(n=>{let r=n.get(e);if(!r?.treeNodes)return n;let i=new Map(n);return i.set(e,{...r,treeNodes:ni(r.treeNodes,t)}),i})},[])}},Si=({apply:e,modalFilters:t,appliedFilters:n,disabledDatasetUrns:r,appliedDisabledUrns:i,setAppliedFilters:a,closeModal:o,addSystemMessage:s})=>({isFiltersUnchanged:(0,c.useMemo)(()=>e.getIsFiltersUnchanged(t,n,r,i),[e,t,n,r,i]),onApply:(0,c.useCallback)(()=>{let{appliedFilters:n,systemMessageFilters:i}=e.runApply(t,r);a(n),o(),(0,c.startTransition)(()=>{s(i,r)})},[e,t,r,a,o,s])}),Ci=()=>{let[e,t]=(0,c.useState)(!1),n=(0,c.useRef)(0);return{isLoading:e,startLoading:(0,c.useCallback)(()=>{n.current+=1,n.current===1&&t(!0)},[]),finishLoading:(0,c.useCallback)(()=>{n.current=Math.max(n.current-1,0),n.current===0&&t(!1)},[])}},wi=({strategy:e,modalFilters:t,setModalFilters:n,setSelectedFilter:r,rebuildHierarchyTree:i})=>{let[a,o]=(0,c.useState)(),[s,l]=(0,c.useState)(),{isLoading:u,startLoading:d,finishLoading:f}=Ci(),p=(0,c.useCallback)((e,t)=>{let n=e.find(e=>Ot(e,t));r(e=>e&&n&&Ot(e,t)?{...n,isSelectedFilter:!0}:e)},[r]),m=(0,c.useCallback)((t,n,r,a)=>{let{promise:o,shouldTrackLoading:s}=e.startFetch(t);s&&d(),o.then(o=>{if(a){let{filters:i,changed:s}=e.cleanIncompatible(t,o,a);if(s){e.commit(o),r?.(!0),l(!0),m(i,n,r,a);return}}let s=e.fill(t,o);e.commit(o),r?.(!1),n(s),a&&(p(s,a),i(a,e.getRebuildConstraints(a,o)))}).catch(()=>{let i=e.fallbackResult(t),o=e.fill(t,i);e.commit(i),r?.(!1),n(o),a&&p(o,a)}).finally(()=>{l(!1),s&&f()})},[f,i,d,e,p]),h=(0,c.useCallback)((t,i)=>{let a=e.fill(t,i);e.commit(i),r(e=>a?.find(t=>Ot(t,e))||e),n(a),l(!1)},[n,r,e]);return{isConstraintsLoading:a,isDisableFilterValues:s,isFilterValuesLoading:u,setIsConstraintsLoading:o,handleFiltersWithConstraints:m,handleFiltersDelete:(0,c.useCallback)((t,r)=>{l(!0),n(Rt(t));let{promise:i,shouldTrackLoading:a}=e.startFetch(t,r);a&&d(),i.then(e=>{h(t,e)}).catch(()=>{h(t,e.fallbackResult(t))}).finally(()=>{a&&f()})},[f,n,d,e,h]),updateSelectedFilterValues:(0,c.useCallback)(e=>{let r=e?t.map(t=>Ot(t,e)?e:t):t;l(!0),n(Rt(r)),o(!0),m(e?.isTimeDimension?kt(r,e):r,n,o,e)},[m,t,n])}},Ti=({init:e,setAppliedFilters:t,setIsConstraintsLoading:n,handleFiltersWithConstraints:r})=>{let{prepareInit:i,markInitialized:a}=e;(0,c.useEffect)(()=>{let e=i();if(e.status===`pending`){n(!0);return}e.status!==`skip`&&(n(!0),r(e.filters,t,n),a?.())},[i,a,t,n,r])},Ei=({mode:e,modalState:t,dataQueries:n,hierarchyStateMap:r,loadAvailableHierarchies:i})=>{let a=e===`multi`,[o,s]=(0,c.useState)([]),[l,u]=(0,c.useState)([]),[f,p]=(0,c.useState)(),[m,h]=(0,c.useState)([]),[g,_]=(0,c.useState)(void 0),[v,y]=(0,c.useState)(new Set),[b,x]=(0,c.useState)(new Set);return(0,c.useEffect)(()=>{l?.length&&h(Mt(l))},[l]),(0,c.useEffect)(()=>{s(e=>kt(e,f))},[f]),(0,c.useEffect)(()=>{if(t===d.PopUpState.Opened){a&&_(void 0);let e=l.find(e=>!e.isTimeDimension);if(p(e?{...e,isSelectedFilter:!0}:void 0),s(l),a){let e=new Set(n?.filter(e=>e.disabled).map(e=>e.urn));y(e),x(e)}}t===d.PopUpState.Closed&&p(void 0)},[l,n,a,t]),(0,c.useEffect)(()=>{if(!f||f.isTimeDimension)return;let e=Dt(f);e&&(r.get(e)||i(f))},[f,r,i]),(0,c.useEffect)(()=>{t===d.PopUpState.Opened&&l.forEach(e=>{if(e.isTimeDimension)return;let t=Dt(e);t&&!r.has(t)&&i(e)})},[t,l,r,i]),{modalFilters:o,setModalFilters:s,appliedFilters:l,setAppliedFilters:u,selectedFilter:f,setSelectedFilter:p,selectedFilterValues:m,selectedTimeOption:g,disabledDatasetUrns:v,appliedDisabledUrns:b,onSelectDisplayMode:(0,c.useCallback)((e,t)=>{s(n=>At(n,e,t)),Ot(f,e)&&p(e=>e&&{...e,displayMode:t})},[f]),onClearAllDatasets:(0,c.useCallback)(()=>{y(new Set)},[]),onToggleDataset:(0,c.useCallback)((e,t)=>{y(n=>{let r=new Set(n);return t?r.delete(e):r.add(e),r})},[]),onTimePeriodChange:(0,c.useCallback)(e=>{_(e)},[])}},Di=({buildSystemMessage:e,conversation:t,conversationKey:n,setConversation:r,updateConversation:i,updateDataQueries:a})=>{let o=(0,c.useRef)(t);return(0,c.useEffect)(()=>{o.current=t},[t]),(0,c.useCallback)(async(t,s)=>{let{conversation:c,nextDataQueries:l}=e(o.current??null,t,s??new Set);r?.(c),a?.(l),await i(decodeURI(n),{name:c?.name,messages:c?.messages||[]})},[e,n,r,i,a])},Oi=({actions:e,buttonProps:t,modalProps:n,dataQueries:r,locale:i,timeRangeOptions:a,conversationKey:o,conversation:s,setConversation:l,updateConversation:u,updateDataQueries:f,limitMessages:p,filterIconClassName:m},h)=>{let{mode:g,constraints:_,apply:v,buildSystemMessage:y,init:b,getConstraintsForFilter:x,getCodelistUrnForFilter:S,getSourceArtefactUrn:C,remember:w,restore:T,getDeleteTargets:E,getClearTargets:D,controllerOptions:O,timeSeriesCount:k}=h,{modalState:A,setModalState:j,isModalClosed:M,setIsModalClosed:N}=yi(),{hierarchyStateMap:P,rebuildHierarchyTree:F,loadAvailableHierarchies:I,onSelectHierarchy:L,onExpandHierarchyNode:R}=xi({getCodelistUrnForFilter:S,getConstraintsForFilter:x,getSourceArtefactUrn:C,getAvailableHierarchies:e?.getAvailableHierarchies,getHierarchy:e?.getHierarchy}),{modalFilters:z,setModalFilters:B,appliedFilters:V,setAppliedFilters:H,selectedFilter:U,setSelectedFilter:W,selectedFilterValues:G,selectedTimeOption:K,disabledDatasetUrns:q,appliedDisabledUrns:ee,onSelectDisplayMode:J,onClearAllDatasets:te,onToggleDataset:ne,onTimePeriodChange:re}=Ei({mode:g,modalState:A,dataQueries:g===`multi`?r:void 0,hierarchyStateMap:P,loadAvailableHierarchies:I}),{isConstraintsLoading:ie,isDisableFilterValues:ae,isFilterValuesLoading:oe,setIsConstraintsLoading:se,handleFiltersWithConstraints:ce,handleFiltersDelete:Y,updateSelectedFilterValues:le}=wi({strategy:_,modalFilters:z,setModalFilters:B,setSelectedFilter:W,rebuildHierarchyTree:F});(0,c.useEffect)(()=>{A===d.PopUpState.Closed&&w()},[A,w]),Ti({init:b,setAppliedFilters:H,setIsConstraintsLoading:se,handleFiltersWithConstraints:ce});let ue=(0,c.useCallback)(()=>{j(d.PopUpState.Closed),N(!0)},[j,N]),de=(0,c.useCallback)(()=>{T(),ue()},[ue,T]),{isFiltersUnchanged:fe,onApply:pe}=Si({apply:v,modalFilters:z,appliedFilters:V,disabledDatasetUrns:q,appliedDisabledUrns:ee,setAppliedFilters:H,closeModal:ue,addSystemMessage:Di({buildSystemMessage:y,conversation:s,conversationKey:o,setConversation:l,updateConversation:u,updateDataQueries:f})}),me=(0,c.useCallback)(e=>{Y(Ft(z,e),E(e,r))},[r,E,Y,z]),he=(0,c.useCallback)(()=>{Y(It(z),D(r)),g===`multi`&&te()},[r,D,Y,g,z,te]),ge=ie||ae||fe;return{buttonProps:t,selectedFiltersCount:Nt(G),isLoading:ie,setModalState:j,isModalClosed:M,filterIconClassName:m,timeSeriesCount:k,modalState:A,modalProps:n,onApply:pe,onClose:de,onClearAllFilters:he,applyDisabled:ge,limitMessages:p,controller:{state:{filtersList:z,selectedFilter:U,isDisableValues:ae,isValuesLoading:oe,selectedTimeOption:K,disabledDatasetUrns:q,timeSeriesCount:k===void 0?void 0:`${k}`},options:{locale:i,timeRangeOptions:a,modalProps:n,...O},handlers:{setSelectedFilter:W,onSelectDisplayMode:J,onDeleteFilter:me,onClearAllFilters:he,updateSelectedFilterValues:le,onTimePeriodChange:re,onToggleDataset:ne,onClearAllDatasets:te},hierarchy:{hierarchyStateMap:P,onSelectHierarchy:L,onExpandHierarchyNode:R}}}},ki=(e,t,n,r)=>e?.map(e=>({...e,filters:t?t?.get(e?.urn)||[]:n&&r?.urn===e?.urn?n:e?.filters}))||[],Ai=e=>{let t=e.filterType===`dataset`?[e.datasetUrn]:e.sourceDatasetUrns;return Array.from(new Set((t||[]).filter(e=>!!e)))},ji=(e,t)=>{if(!t)return!1;let n=e.dataStructureComponents?.dimensionList;return[...n?.dimensions||[],...n?.timeDimensions||[]].some(e=>e.id===t)},Mi=e=>{if(!e.length||e.some(e=>!e))return;let t=Array.from(new Set(e));return t.length===1?t[0]:void 0},Ni=(e,t)=>{let n=t?.dataStructures||[];if(!n.length)return[];let r=n.filter(t=>ji(t,e));return r.length?r:n.length===1?n:[]},Pi=e=>e.urn??(0,b.generateShortUrn)(e.id,e.version,e.agencyID),Fi=(e,t)=>Mi(Ni(e,t).map(Pi)),Ii=(e,t,n,r)=>{if(!e||!t)return;let i=n?.get(t)?.find(t=>t.id===e);if(!i)return;let a=(0,b.getKeyFromUrn)(i.localRepresentation?.enumeration);if(a)return a;let o=r?.get(t),s=(0,b.findCodelistByDimension)(o?.codelists,o?.conceptSchemes,i);return s?(0,b.getKeyFromUrn)(s.urn)??(0,b.generateShortUrn)(s.id,s.version,s.agencyID):void 0},Li=(e,t,n)=>{let r=Ai(e);return{codelistUrn:Mi(r.map(r=>Ii(e.id,r,t,n))),sourceArtefactUrn:Mi(r.map(t=>Fi(e.id,n?.get(t))))}},Ri=(e,t,n,r,i)=>{let a=new Set;if(!t||e.isTimeDimension)return a;let o=e.dimensionValues?.filter(e=>e.isSelectedValue)??[];if(!o.length)return a;let s=(0,b.findCodelistByDimension)(n?.codelists,n?.conceptSchemes,t);if(!s?.codes?.length)return a;let c=new Set(s.codes.map(e=>e.id)),l=new Set((0,b.getAvailableCodesFromConstrains)(s.codes,t.id,r,i).map(e=>e.id));return o.forEach(e=>{c.has(e.id)&&!l.has(e.id)&&a.add(e.id)}),a},zi=(e,t,n,r,i,a)=>{let o=!1,s=e.map(e=>{if(e.isTimeDimension||i&&e.id===i)return e;let s=t?.find(t=>t.id===e.id),c=Ri(e,s,n,r,a);return c.size?(o=!0,{...e,dimensionValues:e.dimensionValues?.map(e=>c.has(e.id)?{...e,isSelectedValue:!1}:e)}):e});return{filters:o?s:e,changed:o}},Bi=(e,t,n,r,i,a)=>zi(e,t,n,r,i?.id,a),Vi=(e,t,n,r,i)=>{let a=!1,o=new Map;return e.forEach((e,s)=>{let c=n?.filterType===`shared`?$n(n,s,i):n?.datasetUrn===s?n.id:void 0,l=zi(e,t?.dimensionsMap?.get(s),t?.structuresMap?.get(s),t?.constraintsMap?.get(s),c,r);a||=l.changed,o.set(s,l.filters)}),{filtersMap:a?o:e,changed:a}},Hi=(e,t,n)=>{let r=t?.find(t=>t.id===e.id);if(!r)return;let i=(0,b.getKeyFromUrn)(r.localRepresentation?.enumeration);if(i)return i;let a=(0,b.findCodelistByDimension)(n?.codelists,n?.conceptSchemes,r);return a?(0,b.getKeyFromUrn)(a.urn)??(0,b.generateShortUrn)(a.id,a.version,a.agencyID):void 0},Ui=e=>ln(an(e).filter(e=>e.componentCode!==b.TIME_PERIOD)),Wi=(e,t,n)=>{let r=Ui(n),i=e?.getConstraints;if(!i)return{request:Promise.resolve(void 0),shouldTrackLoading:!1};let a=pn(t,r);return{request:mn(i,a,()=>i(t,r)),shouldTrackLoading:!hn(i,a)}},Gi=({dimensions:e,structures:t,structureDimensions:n,locale:r,constraints:i})=>{let a=Tt(e,t,n,r),o=e?.map(e=>{let n=(0,b.getAvailableCodesFromConstrains)((0,b.findCodelistByDimension)(t?.codelists,t?.conceptSchemes,e)?.codes,e.id,i,r);return{...e,dimensionValues:n}});return a.map(e=>{let t=o?.find(t=>t.id===e.id)?.dimensionValues||[];return{...e,dimensionValues:t}})},Ki=({dimensions:e,structures:t,structureDimensions:n,locale:r,constraints:i,dataQuery:a})=>Lt(Gi({dimensions:e,structures:t,structureDimensions:n,locale:r,constraints:i}),a,i),qi=e=>{let t=[];return e.custom_content?.attachments&&t.push(...e.custom_content.attachments),t};function Ji(e){return e.type===m.AttachmentType.MARKDOWN&&e.title!=null&&e.title?.startsWith(`URL Query`)}function Yi(e){return e.type===m.AttachmentType.JSON&&e.title!=null&&e.title?.startsWith(`Query (JSON)`)}function Xi(e){return e.type===m.AttachmentType.MARKDOWN&&!Ji(e)}function Zi(e){return e.type===m.AttachmentType.CSV}function Qi(e){return e.type===m.AttachmentType.TABLE}function $i(e){return e.type===m.AttachmentType.CUSTOM_DATA_GRID}function ea(e){return e.type===m.AttachmentType.CUSTOM_CHART}function ta(e){return e.type===m.AttachmentType.PLOTLY}function na(e){return e.type===m.AttachmentType.CUSTOM_CODE_SAMPLE}function ra(e){return e.type===m.AttachmentType.CROSS_DATASET_GRID}function ia(e){return Qi(e)||$i(e)||ra(e)}var aa=(e,t)=>e?.filter((e,n)=>e?.custom_content?.attachments&&n<t)?.at(-1),oa=e=>e?.reduce((e,t,n)=>t?.custom_content?.attachments?.some(e=>Yi(e))?n:e,-1),sa=e=>e?.reduce((e,t)=>t?.role===u.Role.Assistant?t:e,{}),ca=e=>e.type===`text/markdown`&&!!e.data?.includes("```python"),la=(e,t)=>{let n=e?.custom_content?.attachments?.filter(ca)??[],r=t?.custom_content?.attachments?.filter(ca)??[],i=new Map;for(let e of[...n,...r])i.set(e.title??e.data??``,e);return[...i.values()]},ua=(e,t,n,r,i)=>({role:u.Role.System,content:``,custom_content:{attachments:n?.map(n=>{let r=e&&t?.urn===n?.urn?e:n?.filters;return{type:m.AttachmentType.JSON,title:n?.title,data:JSON.stringify({urn:n?.urn,metadata:n?.metadata,filters:i?i?.get(n?.urn):r,disabled:!!n?.disabled})}})||[],form_schema:r?.custom_content?.form_schema}}),da=(e,t,n,r,i)=>{if(!e)return[];let a=e.at(-1),o=a?.role===u.Role.System,s=o?e.slice(0,-1):e,c=sa(s),l=la(c,o?a:void 0),d=ua(r,i,t,c,n);return l.length&&d.custom_content&&(d.custom_content={...d.custom_content,attachments:[...d.custom_content.attachments??[],...l]}),[...s,d]},fa=({actions:e,attachmentsDataQuery:t,dataQueries:n,dimensions:r,structureDimensions:i,structures:a,initialConstraints:o,locale:s,onFiltersChange:l})=>{let u=(0,c.useRef)(o||[]),d=(0,c.useRef)(!1),[f,p]=(0,c.useState)([]),m=(0,c.useCallback)(n=>{let{request:r,shouldTrackLoading:i}=Wi(e,t?.urn??``,n);return{promise:r.then(e=>e?.data?.dataConstraints||[]),shouldTrackLoading:i}},[e,t]),h=(0,c.useCallback)(()=>[],[]),g=(0,c.useCallback)((e,t,n)=>Bi(e,r,a,t,n,s),[r,a,s]),_=(0,c.useCallback)((e,t)=>rn(e,r,a,t,s),[r,a,s]),v=(0,c.useCallback)(e=>{u.current=e},[]),y=(0,c.useCallback)((e,t)=>t,[]),x=(0,c.useCallback)(()=>u.current,[]),S=(0,c.useCallback)(e=>Hi(e,r,a),[r,a]),C=(0,c.useCallback)(e=>Fi(e.id,a),[a]),w=(0,c.useCallback)((e,t)=>(0,T.default)(yn(e,r),yn(t,r)),[r]),E=(0,c.useCallback)(e=>{let t=yn(e,r);return l?.(t,u.current,e),{appliedFilters:e,systemMessageFilters:e}},[r,l]),D=(0,c.useCallback)((e,r)=>{let i=En(r);return{conversation:e?{...e,messages:da(e.messages,n,void 0,i,t)}:null,nextDataQueries:ki(n,void 0,i,t)}},[t,n]),O=(0,c.useCallback)(()=>d.current||!a?{status:`skip`}:{status:`ready`,filters:Ki({dimensions:r,structures:a,structureDimensions:i,locale:s,constraints:u.current,dataQuery:t})},[t,r,s,i,a]),k=(0,c.useCallback)(()=>{d.current=!0},[]),A=(0,c.useCallback)(()=>{p(u.current)},[]),j=(0,c.useCallback)(()=>{u.current=f},[f]),M=(0,c.useCallback)(()=>void 0,[]),N=(0,c.useCallback)(()=>void 0,[]);return{mode:`single`,constraints:(0,c.useMemo)(()=>({startFetch:m,fallbackResult:h,cleanIncompatible:g,fill:_,commit:v,getRebuildConstraints:y}),[m,h,g,_,v,y]),apply:(0,c.useMemo)(()=>({getIsFiltersUnchanged:w,runApply:E}),[w,E]),buildSystemMessage:D,init:(0,c.useMemo)(()=>({prepareInit:O,markInitialized:k}),[O,k]),getConstraintsForFilter:x,getCodelistUrnForFilter:S,getSourceArtefactUrn:C,remember:A,restore:j,getDeleteTargets:M,getClearTargets:N,controllerOptions:(0,c.useMemo)(()=>({initialConstraints:o,dataQueries:t?[t]:void 0}),[o,t]),timeSeriesCount:Number((0,b.getTimeSeriesCount)(u.current?.[0]?.annotations))}},pa=e=>Oi(e,fa({actions:e.actions,attachmentsDataQuery:e.attachmentsDataQuery,dataQueries:e.dataQueries,dimensions:e.dimensions,structureDimensions:e.structureDimensions,structures:e.structures,initialConstraints:e.initialConstraints,locale:e.locale,onFiltersChange:e.onFiltersChange})),ma=e=>(0,l.jsx)(gi,{...pa(e)}),ha=({setToTitle:e,datasetName:t,datasetIcon:n,isShowDatasetDetails:r,queryFilterDetails:i})=>(0,l.jsx)(`div`,{children:i?.map(i=>(0,l.jsxs)(`div`,{className:`body-1 mb-2 flex flex-wrap items-center gap-1`,children:[(0,l.jsxs)(`span`,{children:[i?.title,(0,l.jsx)(`span`,{children:e??` set to `}),(0,l.jsx)(`span`,{className:`font-bold`,children:i?.valuesTitles?.join(`, `)})]}),t&&r&&(0,l.jsxs)(`span`,{className:`attachment-dataset-name caption !mb-0 inline-flex items-center`,children:[(0,l.jsx)(`span`,{className:`attachment-dataset-icon mr-1`,children:n}),t]})]},i?.title))}),ga=({titles:e,attachmentInfoList:t,datasetIcon:n,dataQueries:r})=>{let{isCrossDatasetModeOn:i}=Z(),{sharedFilterDetails:a,perDatasetInfoList:o}=(0,c.useMemo)(()=>{if(!i)return{sharedFilterDetails:[],perDatasetInfoList:[]};let e=new Map,n=[];return t?.forEach(t=>{let r=[];t.queryFiltersDetails?.forEach(t=>{if(jn.has(t.id)){let n=e.get(t.id);n?e.set(t.id,{...n,valuesTitles:Array.from(new Set([...n.valuesTitles||[],...t.valuesTitles||[]]))}):e.set(t.id,{...t})}else t.valuesTitles?.length&&r.push(t)}),r.length&&n.push({...t,queryFiltersDetails:r})}),{sharedFilterDetails:Array.from(e.values()),perDatasetInfoList:n}},[i,t]),s=r?.some(e=>e.disabled)??!1,u=t?.map(e=>e.datasetName).filter(Boolean)??[];return(0,l.jsxs)(`div`,{className:`attachment-details flex flex-col`,children:[(0,l.jsx)(`p`,{className:(0,p.default)(`body-1`,(t&&t.length<=1||i&&a.length>0)&&`mb-2`),children:e?.queryUpdatedManuallyTitle??`Query has been updated manually.`}),s&&u.length>0&&(0,l.jsxs)(`div`,{className:`body-1 mb-2 flex flex-wrap items-center gap-1`,children:[(0,l.jsxs)(`span`,{children:[e?.datasetLabel??`Dataset`,e?.setToTitle??` set to `]}),u.map(e=>(0,l.jsxs)(`span`,{className:`attachment-dataset-name caption !mb-0 inline-flex items-center`,children:[(0,l.jsx)(`span`,{className:`attachment-dataset-icon mr-1`,children:n}),e]},e))]}),i?(0,l.jsxs)(l.Fragment,{children:[a.length>0&&(0,l.jsx)(ha,{setToTitle:e?.setToTitle,queryFilterDetails:a}),o.map(t=>(0,l.jsx)(ha,{setToTitle:e?.setToTitle,datasetName:t.datasetName,datasetIcon:n,isShowDatasetDetails:!0,queryFilterDetails:t.queryFiltersDetails},t.datasetName))]}):t?.map(r=>!!r?.queryFiltersDetails?.length&&(0,l.jsx)(ha,{setToTitle:e?.setToTitle,datasetName:r?.datasetName,datasetIcon:n,isShowDatasetDetails:t?.length>1,queryFilterDetails:r?.queryFiltersDetails},r?.datasetName))]})},_a=({icon:e,title:t})=>(0,l.jsx)(`div`,{className:(0,p.default)(`px-3 py-4 rounded border mt-3`,`attachment-collapsed`),children:(0,l.jsxs)(`p`,{className:(0,p.default)(`flex body-3 items-center`),children:[e,(0,l.jsxs)(`span`,{className:`ml-2`,children:[` `,t]})]})}),va=e=>(0,l.jsxs)(`svg`,{width:44,height:24,viewBox:`0 0 44 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,l.jsx)(`rect`,{width:44,height:24,rx:12,fill:`currentColor`}),(0,l.jsx)(`circle`,{cx:32,cy:12,r:10,fill:`white`})]}),ya=e=>(0,l.jsxs)(`svg`,{width:44,height:24,viewBox:`0 0 44 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,l.jsx)(`rect`,{width:44,height:24,rx:12,fill:`currentColor`}),(0,l.jsx)(`circle`,{cx:12,cy:12,r:10,fill:`white`})]}),ba=[{value:b.SdmxDataFormat.JSON,title:`SDMX-JSON`},{value:b.SdmxDataFormat.XML,title:`SDMX-ML (XML)`},{value:b.SdmxDataFormat.CSV,title:`SDMX-CSV`}],xa=e=>[{value:b.FileColumnsAttribute.ID,title:e?.idOptions||`ID`,description:e?.idOptionsDescription},{value:b.FileColumnsAttribute.NAME,title:e?.nameOptions||`Name`,description:e?.nameOptionsDescription},{value:b.FileColumnsAttribute.ID_NAME,title:e?.idAndNameOptions||`Combined ID and Name`,description:e?.idAndNameOptionsDescription}],Sa=({title:e,items:t,selectedValue:n,setSelectedValue:r,infoMessage:i,collapsible:a=!0})=>{let o=(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`div`,{className:`flex flex-col gap-y-1`,children:t.map(e=>(0,l.jsx)(`div`,{className:`flex flex-col`,children:(0,l.jsx)(d.Radio,{id:e.value,checked:n.value===e.value,label:e.title,description:e.description,onChange:()=>{r(e)},radioIcon:(0,l.jsx)(f.IconCircleFilled,{className:`size-3`})},e.value)},e.value))}),i]});return a?(0,l.jsx)(d.CollapsibleBlock,{title:e,value:n.title,children:o}):(0,l.jsxs)(`div`,{className:`flex flex-col`,children:[(0,l.jsx)(`div`,{className:`flex items-center py-4`,children:(0,l.jsx)(`span`,{children:e})}),(0,l.jsx)(`div`,{className:`pb-4`,children:o})]})},Ca=({title:e,items:t,selectedUrns:n,onToggle:r,collapsible:i=!0,rowsLabel:a=`rows`})=>{let o=(0,l.jsx)(`div`,{className:`flex flex-col`,children:t.map(e=>(0,l.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,l.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,l.jsx)(d.Checkbox,{id:e.urn,label:e.name,checked:n.has(e.urn),onChange:r})}),(0,l.jsxs)(`span`,{className:`download-row-count`,children:[e.rowCount,` `,a]})]},e.urn))});return i?(0,l.jsx)(d.CollapsibleBlock,{title:e,children:o}):(0,l.jsxs)(`div`,{className:`flex flex-col`,children:[(0,l.jsx)(`div`,{className:`flex items-center py-4`,children:(0,l.jsx)(`span`,{children:e})}),(0,l.jsx)(`div`,{className:`pb-4`,children:o})]})},wa=e=>{let t=e.metadata?.keyDimensionIdsInDsdOrder,n=e.metadata?.timePeriodDimension;return t?.length?{filterKey:t.map(t=>{let n=e.filters?.find(e=>e.componentCode===t);return n?.values?.length?n.values.join(b.GET_v3_FILTER_OR):`*`}).join(`.`),timeFilter:n?(0,b.getTimeQueryFilter)(e,{id:n}):null}:null},Ta=(e,t,n,r)=>{if(t&&e===b.DownloadType.DATA_IN_TABLE){let e=wa(t);if(e)return e}if(r?.filterKey&&e===b.DownloadType.DATA_IN_TABLE)return r;let i=null,a=null;return t&&n&&e===b.DownloadType.DATA_IN_TABLE&&(i=(0,b.getTimeSeriesFilterKey)(n,t.filters??[]),a=(0,b.getTimeQueryFilter)(t,(0,b.getTimeDimension)(n))),{filterKey:i,timeFilter:a}},Ea=({dataQuery:e,datasetName:t,onCloseModal:n,type:r=b.DownloadType.FULL_DATASET,locale:i=h.Locale.EN,dimensions:a,filters:o,urn:s,titles:u,collapsible:f=!0,downloadDatasets:m,rowCount:g,isDownloadInProgress:_=!1,onDownloadStart:v,limitMessages:y,showLimitMessage:x,externalLink:S})=>{let C=xa(u),[w,T]=(0,c.useState)(ba[0]),[E,D]=(0,c.useState)(C[0]),[O,k]=(0,c.useState)(!0),[A,j]=(0,c.useState)(()=>new Set(m?.map(e=>e.urn)??[])),M=(0,c.useRef)(!1);(0,c.useEffect)(()=>{j(new Set(m?.map(e=>e.urn)??[]))},[m]);let N=(0,c.useCallback)(e=>{j(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),P=m!==void 0&&(m.length===0||A.size===0),F=(0,c.useCallback)(()=>{if(M.current)return;let c=w.value,l=(e,t,n,i)=>({dataQuery:e,urn:t,name:n,rowCount:i,fileName:`${n}.${c}`,filters:Ta(r,e,a,o)});if(!v({items:m&&m.length>0?m.filter(e=>A.has(e.urn)).map(e=>l(e.dataQuery,e.urn,e.name,e.rowCount)):[l(e,e?.urn||s||``,t||e?.urn||s||``,g??0)],dataFormat:c,dataFormatTitle:w.title,attribute:E.value,language:i,isMetadata:O})){M.current=!1;return}M.current=!0,n()},[w.value,w.title,E.value,m,A,e,s,t,g,r,a,o,i,O,v,n]),I=(0,l.jsxs)(`div`,{className:(0,p.default)(`download-metadata flex cursor-pointer gap-4`,{"download-metadata-active":O}),children:[O?(0,l.jsx)(va,{width:44,height:24,className:`text-primary`,onClick:()=>k(!O)}):(0,l.jsx)(ya,{width:44,height:24,className:`text-neutrals-500`,onClick:()=>k(!O)}),(0,l.jsx)(`div`,{children:u?.includeMetadata||`Include Metadata`})]});return(0,l.jsxs)(d.Popup,{heading:(0,l.jsx)(`p`,{className:`download-heading h2`,children:u?.download||`Download`}),portalId:`filters`,size:d.PopUpSize.LG,containerClassName:`download-popup h-[80%]`,dividers:!1,onClose:n,closeButtonTitle:u?.close||`Close`,children:[!m&&x&&(0,l.jsx)(`div`,{className:`download-info flex flex-col gap-1 px-6 pt-5`,children:(0,l.jsx)(d.RequestLimitMessage,{limitMessages:y,isDownload:!0,query:S})}),(0,l.jsxs)(`div`,{className:`download-settings flex flex-col overflow-auto p-6`,children:[(0,l.jsx)(Sa,{title:u?.dataFormat||`Data Format`,selectedValue:w,setSelectedValue:T,items:ba,collapsible:f,infoMessage:(0,l.jsx)(d.DownloadFormatMessage,{limitMessages:y,query:S})}),w.value===b.SdmxDataFormat.CSV&&(0,l.jsx)(Sa,{title:u?.attributes||`Attributes`,selectedValue:E,setSelectedValue:D,items:C,collapsible:f}),m&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(Ca,{title:u?.datasetsToDownload||`Datasets to download`,items:m,selectedUrns:A,onToggle:N,collapsible:f,rowsLabel:u?.rows||`rows`}),A.size>1&&(0,l.jsxs)(d.InlineAlert,{type:d.InlineAlertType.Note,children:[(0,l.jsx)(`span`,{className:`font-bold`,children:u?.filesWillBeDownloaded?.(A.size)??`${A.size} files will be downloaded`}),` `,u?.oneFilePerDataset??`- one file per selected dataset.`]})]}),f?(0,l.jsx)(d.CollapsibleBlock,{title:u?.metadata||`Metadata`,value:O?u?.all||`Included`:u?.none||`Not included`,children:I}):(0,l.jsxs)(`div`,{className:`flex flex-col`,children:[(0,l.jsx)(`div`,{className:`flex items-center py-4`,children:(0,l.jsx)(`span`,{children:u?.metadata||`Metadata`})}),(0,l.jsx)(`div`,{className:`pb-4`,children:I})]})]}),(0,l.jsxs)(`div`,{className:`download-button mt-auto flex items-center gap-x-3 p-6`,children:[u?.cancel&&(0,l.jsx)(d.Button,{buttonClassName:`text-button-tertiary`,title:u.cancel,onClick:n}),(0,l.jsx)(d.Button,{buttonClassName:`text-button-primary`,title:u?.download||`Download`,disabled:P||_,onClick:F})]})]})},Da=({id:e,title:t,version:n,agency:r,isActive:i,isSingleTab:a,onSelectDataset:o})=>(0,l.jsx)(`div`,{className:(0,p.default)(`dataset-tab truncate last:mr-4`,i?`dataset-tab-active`:`border-b-transparent`,a?`dataset-tab-single cursor-default`:`cursor-pointer`),title:t,onClick:()=>{a||o((0,b.generateShortUrn)(e,n,r))},children:(0,l.jsx)(`h3`,{className:`dataset-tab-title truncate`,title:t,children:t})}),Oa=({datasets:e,locale:t,initialSelectedDatasetUrn:n,selectDataset:r})=>{let{isOpenedAdvancedView:i}=I(),[a,o]=(0,c.useState)();(0,c.useEffect)(()=>{if(!n&&!a&&e?.[0]){let t=(0,b.generateShortUrn)(e[0].id,e[0].version,e[0].agencyID);o(t),r?.(t)}else n&&n!==a&&(o(n),r?.(n))},[e,r,n,a]);let s=(0,c.useCallback)(e=>{o(e),r?.(e)},[r]);return(0,l.jsx)(`div`,{className:(0,p.default)(`dataset-tabs flex w-full items-center justify-between`,i&&`hide-advance-button`),children:(0,l.jsx)(`div`,{className:`flex w-full items-center gap-4 overflow-y-auto sm:w-[calc(100%-30px)]`,children:e?.map(n=>(0,l.jsx)(Da,{id:n?.id,title:(0,b.getLocalizedName)(n,t||h.Locale.EN),version:n?.version,agency:n?.agencyID,isActive:e?.length>1&&a===(0,b.generateShortUrn)(n?.id,n?.version,n?.agencyID),isSingleTab:e?.length===1,onSelectDataset:s},n?.id))})})},ka=3,Aa=({datasets:e,locale:t})=>{let{isOpenedAdvancedView:n}=I(),r=(0,c.useMemo)(()=>(e||[]).map(e=>({urn:(0,b.generateShortUrn)(e?.id,e?.version,e?.agencyID),title:(0,b.getLocalizedName)(e,t||h.Locale.EN)})),[e,t]),i=(0,c.useMemo)(()=>r.slice(0,ka),[r]),a=Math.max(r.length-i.length,0),o=r.filter(e=>!i.some(t=>t.urn===e.urn)).map(e=>e.title).join(`
|
|
7
|
-
`);return(0,l.jsx)(`div`,{className:(0,p.default)(`cross-dataset-tabs flex w-full items-center justify-between`,n&&`hide-advance-button`),children:(0,l.jsxs)(`div`,{className:`cross-dataset-tabs-list sm:w-[calc(100%-30px)]`,children:[i.map((e,t)=>(0,l.jsxs)(`span`,{className:`cross-dataset-tabs-item-wrapper`,children:[(0,l.jsx)(`span`,{className:`cross-dataset-tabs-item`,title:e.title,children:e.title}),t<i.length-1&&(0,l.jsx)(`span`,{className:`cross-dataset-tabs-separator`,"aria-hidden":`true`})]},e.urn)),a>0&&(0,l.jsxs)(`span`,{className:`cross-dataset-tabs-counter`,title:o,children:[`+`,a]})]})})},ja=({datasets:e,locale:t,initialSelectedDatasetUrn:n,selectDataset:r})=>{let{isCrossDatasetModeOn:i}=Z();return i?(0,l.jsx)(Aa,{datasets:e,locale:t}):(0,l.jsx)(Oa,{datasets:e,locale:t,initialSelectedDatasetUrn:n,selectDataset:r})},Ma=(e,t)=>{let n=t?.get(e?.urn),r=n?.conceptSchemes||[],i=n?.codelists||[],a=(0,b.getDimensions)(n);return{structures:n,conceptSchemes:r,codelists:i,dimensions:[...a?.dimensions||[],...a?.timeDimensions||[]]}},Na=(e,t,n,r,i)=>{let a=t?.filter(e=>!e.disabled)??[],o=new Map;return a?.forEach(e=>{let{conceptSchemes:t,codelists:a,dimensions:s}=Ma(e,n);Fa((e?.filters??[]).filter(e=>e.operator!==h.QueryFilterType.EXCLUDED),e?.urn,s,t,a,r,i).forEach(e=>{if(e.valuesTitles?.length){let t=o.get(e.id)??[];o.set(e.id,Array.from(new Set([...t,...e.valuesTitles])))}})}),a?.map(t=>{let a=e?.find(e=>e?.urn===t?.urn),{structures:s,conceptSchemes:c,codelists:l,dimensions:u}=Ma(t,n),d=Pa(Fa(a?.filters||[],t?.urn,u,c,l,r,i),Fa(t?.filters??[],t?.urn,u,c,l,r,i)).map(e=>{if(e.valuesTitles?.length)return e;let t=o.get(e.id);return t?.length?{...e,valuesTitles:t}:null}).filter(e=>e!==null);return{datasetName:(0,b.getLocalizedName)(s?.dataflows?.[0],r),queryFiltersDetails:d}})},Pa=(e,t)=>{let n=new Map(e?.map(e=>[e?.id,e]));return t?.filter(e=>!(0,D.isEqual)(n?.get(e?.id)?.valuesTitles?.sort(),e?.valuesTitles?.sort()))||[]},Fa=(e,t,n,r,i,a,o)=>e?.map(e=>{let s=n.find(t=>t?.id===e?.componentCode),c=(0,b.getConcept)(s?.conceptIdentity||``,r),l=(0,b.findCodelistByDimension)(i,r,s);return{id:Kn(t,e?.componentCode,o)??e?.componentCode,title:(0,b.getLocalizedName)(c,a),valuesTitles:e?.operator===h.QueryFilterType.BETWEEN?[`${_t((0,h.getTimePeriod)(e?.values?.[0]),a)} - ${_t((0,h.getTimePeriod)(e?.values?.[1]),a)}`]:e?.values?.map(e=>(0,b.getLocalizedName)(l?.codes?.find(t=>t?.id===e),a)||e)}}),Ia=(e,t,n)=>{let r=``,i=``;if(e?.timeFilter){let t=decodeURIComponent(e.timeFilter||``)?.split(`:`);r=t[1]||``,i=t[3]||``}else if(t){let e=t?.filters?.find(e=>e.componentCode===b.TIME_PERIOD);r=e?.values?.[0]||``,i=e?.values?.[1]||``}return`&filter=${e?.filterKey||(0,b.getTimeSeriesFilterKey)(n||[],t?.filters||[])}&startPeriod=${r}&endPeriod=${i}`},La=(e,t,n,r)=>{let i=n?.metadata?.datasetUrl;return i?i+(e?Ia(t,n,r):``):``},Ra=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 16 16`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{d:`M2.33325 12.3267L6.33325 8.32001L8.99992 10.9867L14.6666 4.61334L13.7266 3.67334L8.99992 8.98667L6.33325 6.32001L1.33325 11.3267L2.33325 12.3267Z`,fill:`currentColor`})}),za=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 16 16`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M5.50644 4.00043L1.97857 7.52207L1.5 7.99979L1.97857 8.47751L5.50644 11.9991L6.46019 11.0437L3.41088 7.99979L6.46019 4.95587L5.50644 4.00043ZM10.4918 4.00043L14.0197 7.52207L14.4983 7.99979L14.0197 8.47751L10.4918 11.9991L9.53809 11.0437L12.5874 7.99979L9.53809 4.95587L10.4918 4.00043Z`,fill:`currentColor`})}),Ba=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 16 16`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{d:`M2.3999 4V12H13.5999V4H2.3999ZM5.7359 10.8H3.5999V5.2H5.7359V10.8ZM9.0639 10.8H6.9359V5.2H9.0719V10.8H9.0639ZM12.3999 10.8H10.2639V5.2H12.3999V10.8Z`,fill:`currentColor`})}),Va=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 16 16`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M2.18519 10.4815H7.18116C7.31033 10.9089 7.50501 11.3078 7.7535 11.6667H2.18519C1.53333 11.6667 1 11.1333 1 10.4815V2.18519C1 1.53333 1.53333 1 2.18519 1H10.4815C11.1333 1 11.6667 1.53333 11.6667 2.18519V5.02017C11.5296 5.00683 11.3906 5 11.25 5C10.9876 5 10.7307 5.02378 10.4815 5.06931V2.18519H2.18519V10.4815ZM7.69316 6.92288C7.99945 6.45568 8.39531 6.05248 8.85633 5.73769H3.37044V6.92288H7.69316ZM7 9.25C7 8.8544 7.05405 8.47143 7.15517 8.10807H3.37044V9.29326H7.00022L7 9.25ZM3.37044 4.5525H9.29636V3.36731H3.37044V4.5525ZM11.6624 10.9695C12.5981 10.8087 13.2264 9.91979 13.0656 8.98403C12.9049 8.04827 12.016 7.42002 11.0802 7.58078C10.1444 7.74155 9.51618 8.63046 9.67695 9.56621C9.83771 10.502 10.7266 11.1302 11.6624 10.9695ZM11.8656 12.1521C11.9243 12.142 11.9824 12.1303 12.0396 12.1168L14.5611 15.5477L15.5281 14.8371L13.1449 11.5944C13.9785 10.9558 14.4384 9.88763 14.2483 8.78085C13.9753 7.19192 12.4659 6.12513 10.877 6.39811C9.28808 6.67109 8.22129 8.18047 8.49428 9.7694C8.76726 11.3583 10.2766 12.4251 11.8656 12.1521Z`,fill:`currentColor`})}),Ha=({attachment:e,index:t,selectedAttachmentIndex:n,onSelectedAttachmentChange:r,showTabIcon:i,dataGridTitle:a})=>{let{titles:o}=Y(),s=(0,c.useRef)(null),[u,d]=(0,c.useState)(``),[f,m]=(0,c.useState)(``),[h,g]=(0,c.useState)(!1),{onboardingFileSchema:_,isShowOnboarding:v}=G(),y=(0,c.useCallback)((e,t=``)=>i?ta(e)||ea(e)?(0,l.jsx)(Ra,{className:t}):$i(e)||ra(e)?(0,l.jsx)(Ba,{className:t}):Ji(e)?(0,l.jsx)(Va,{className:t}):Xi(e)||na(e)?(0,l.jsx)(za,{className:t}):null:null,[i]),b=(0,c.useCallback)(e=>$i(e)?a||`Data Grid`:e.title,[a]);return(0,c.useEffect)(()=>{if(v&&ea(e)){let{title:e,description:t}=$e(X.CHARTS,o);d(e),m(t)}},[e,o,v]),(0,c.useEffect)(()=>{if(ea(e)&&v){let e=_?.lastDisplayedElement===X.CHARTS;g(e),e&&s?.current?.scrollIntoView({block:`end`,behavior:`smooth`})}},[_?.lastDisplayedElement,e,v]),(0,l.jsxs)(`div`,{ref:s,className:(0,p.default)(`cursor-pointer min-w-30`,`flex items-center gap-1`,`attachment-tab`,n===t?`attachment-tab-active text-primary`:``),onClick:()=>r(t),children:[y(e,`w-4 h-4`),(0,l.jsx)(`h4`,{className:`max-w-[130px] truncate`,title:b(e),children:b(e)}),h&&(0,l.jsx)(ct,{reference:s,title:u,description:f})]},e.index||t)},Ua=({attachments:e,...t})=>(0,l.jsx)(`div`,{className:`attachments-tabs flex w-fit flex-wrap items-center`,children:e.map((e,n)=>(0,l.jsx)(Ha,{attachment:e,index:n,...t},n))}),Wa=({attachments:e,selectedAttachmentIndex:t,selectedAttachment:n,attachmentsStyles:r,externalLink:i,isExternalLinkIncludeFilters:a,limitMessages:o,onSelectedAttachmentChange:s,onDownloadClick:u,hideDownloadButton:m,showAdvancedView:h,onOpenAdvancedView:g,isTableSettingsOpen:_,onTableSettingsOpen:v})=>{let{isTableSettingsFeatureEnabled:y}=Z(),{isOpenedAdvancedView:b}=I(),{titles:x}=Y(),{onboardingFileSchema:S,isShowOnboarding:C}=G(),w=(0,c.useRef)(null),[T,E]=(0,c.useState)(``),[D,O]=(0,c.useState)(``),[k,A]=(0,c.useState)(!1);(0,c.useEffect)(()=>{if(C){let{title:e,description:t}=$e(X.OPEN_ADVANCED_VIEW,x);E(e),O(t)}},[x,C]),(0,c.useEffect)(()=>{if(C){let e=S?.lastDisplayedElement===X.OPEN_ADVANCED_VIEW;A(e),e&&w?.current?.scrollIntoView({block:`center`,behavior:`smooth`})}},[S?.lastDisplayedElement,C]);let j=y&&!h&&!!v&&!!(n&&($i(n)||ra(n))),M=!m&&!!n&&($i(n)||ra(n)),N=!!h&&!b,P=b&&r?.hideDownloadIconInAdvancedView?void 0:r?.downloadIcon,F=!b&&r?.hideDownloadTextInConversationView?``:r?.downloadTitle??``;return(0,l.jsxs)(`div`,{className:`flex w-full min-w-0 items-center justify-between`,children:[(0,l.jsx)(Ua,{dataGridTitle:r?.dataGridTitle,attachments:e,selectedAttachmentIndex:t,showTabIcon:r?.showTabIcon,onSelectedAttachmentChange:s}),(0,l.jsxs)(`div`,{className:`attachments-buttons flex w-fit flex-wrap items-center justify-end gap-x-3`,children:[n&&$i(n)&&a&&(0,l.jsx)(`a`,{href:i,target:`_blank`,rel:`noreferrer`,children:(0,l.jsx)(d.Button,{title:o?.dataExplorer||`Data explorer`,buttonClassName:`text-button-tertiary small-icon-button [&>svg]:h-[16px] [&>svg]:w-[16px] whitespace-nowrap`,iconBefore:o?.dataExplorerIcon})}),M&&(0,l.jsx)(d.Button,{title:F,buttonClassName:`text-button-tertiary small-icon-button !p-0 !h-6`,textClassName:(0,p.default)(`ml-1`,r?.downloadButtonTextClassName),onClick:u,iconBefore:P}),M&&N&&(0,l.jsx)(`span`,{className:`advanced-view-button-divider`,"aria-hidden":`true`}),N&&(0,l.jsx)(`div`,{ref:w,children:(0,l.jsx)(d.Button,{title:r?.advancedViewTitle,buttonClassName:`advanced-view-button`,textClassName:`ml-1 h4 md:hidden`,iconBefore:r?.openAdvancedViewIcon,onClick:g})}),j&&(0,l.jsx)(d.Button,{disabled:_,buttonClassName:`text-button-tertiary !p-0 !h-6`,textClassName:`ml-1 h4`,iconBefore:r?.tableSettingsIcon??(0,l.jsx)(f.IconSettings,{className:`size-4`}),title:r?.tableSettings||`Table settings`,onClick:v}),n&&na(n)&&(0,l.jsx)(d.CopyButton,{title:r?.copyTitle,copiedTitle:r?.copiedTitle,tooltip:r?.copiedTooltip,hoverTooltip:r?.copyHoverTooltip,icon:r?.copyIcon,copiedIcon:r?.copiedIcon,onClick:()=>navigator.clipboard.writeText(n.data??``)})]}),k&&(0,l.jsx)(ct,{reference:w,title:T,description:D,onReferenceClick:g,shouldCloseTooltip:b})]})},Ga=({downloadTitles:e,attachment:t,actions:n,className:r=``})=>{let i=t.url,[a,o]=(0,c.useState)(null);async function s(e){e!=null&&o(await n.getFile(e))}return(0,l.jsxs)(`div`,{className:`rounded-lg border bg-white p-3 transition-colors ${r}`,children:[(0,l.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,l.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,l.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,l.jsx)(`span`,{className:`body-2 truncate text-neutrals-800`,title:t.title,children:t.title})})}),i&&(0,l.jsx)(`div`,{className:`shrink-0`,children:(0,l.jsx)(d.Button,{title:e??`Download`,onClick:()=>s(t.url),buttonClassName:`text-button-tertiary`})})]}),a&&(0,l.jsx)(`div`,{className:`mt-3`,children:(0,l.jsx)(`pre`,{className:`overflow-x-auto rounded-md bg-white p-3`,children:(0,l.jsx)(`code`,{children:JSON.stringify(a,null,2)})})})]})},Ka=`json`;function qa(e){return Ya(e)?Ja(e?.slice(4)):e}function Ja(e){let t=``;if(e)try{t=JSON.stringify(JSON.parse(e),null,2)}catch{t=e.toString()}return t}function Ya(e){return e?.startsWith(Ka)||!1}var Xa=({attachment:e,className:t=``})=>{let n=qa(e.data);return n?(0,l.jsxs)(`div`,{className:`attachment-json rounded-lg border bg-white ${t}`,children:[(0,l.jsx)(`div`,{className:`flex items-center justify-between rounded-t-lg border-b border-neutrals-200 bg-neutrals-100 px-3 py-2`,children:(0,l.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,l.jsx)(`h3`,{className:`text-neutrals-900`,children:e.title})})}),(0,l.jsx)(`div`,{className:`p-3`,children:(0,l.jsx)(`pre`,{className:`max-h-96 overflow-auto whitespace-pre-wrap break-words text-neutrals-800`,children:(0,l.jsx)(`code`,{children:n})})})]}):null},Za=e=>{try{let t=new URL(e);return[`http:`,`https:`,`data:`].includes(t.protocol)}catch{return!1}},Qa=e=>Za(e)?e:``,$a=e=>(0,l.jsx)(`svg`,{width:16,height:16,viewBox:`0 0 16 16`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{d:`M11.3333 4.66667H8.66659V6.00001H11.3333C12.4333 6.00001 13.3333 6.9 13.3333 8C13.3333 9.1 12.4333 10 11.3333 10H8.66659V11.3333H11.3333C13.1733 11.3333 14.6666 9.84 14.6666 8C14.6666 6.16 13.1733 4.66667 11.3333 4.66667ZM7.33325 10H4.66659C3.56659 10 2.66659 9.1 2.66659 8C2.66659 6.9 3.56659 6.00001 4.66659 6.00001H7.33325V4.66667H4.66659C2.82659 4.66667 1.33325 6.16 1.33325 8C1.33325 9.84 2.82659 11.3333 4.66659 11.3333H7.33325V10ZM5.33325 7.33334H10.6666V8.66667H5.33325V7.33334Z`,fill:`currentColor`})}),eo=({attachment:e,openLinkTitle:t,className:n=``})=>{let r=Qa(e.data||``);if(!r)return null;let i=e=>{window.open(e,`_blank`)?.focus()};return(0,l.jsx)(`div`,{className:`max-w-[500px] rounded-lg border bg-white py-3 pl-4 pr-3 ${n}`,children:(0,l.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,l.jsx)(`span`,{className:`mt-1 shrink-0 text-hues-800`,role:`img`,"aria-label":`Link`,children:(0,l.jsx)($a,{width:16,height:16})}),(0,l.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,l.jsx)(`div`,{className:`mb-1`,children:(0,l.jsx)(d.Link,{url:r,title:e.title})}),(0,l.jsx)(`div`,{className:`truncate break-all text-neutrals-600`,children:r})]}),(0,l.jsx)(`div`,{className:`shrink-0`,children:(0,l.jsx)(d.Button,{title:t??`Open link`,onClick:()=>i(r),buttonClassName:`text-button-tertiary`})})]})})},to=({dimensionsInfo:e,isNarrow:t})=>(0,l.jsx)(`div`,{className:(0,p.default)(`sidebar flex min-h-0 flex-col gap-3 overflow-auto`,t?`max-h-[120px] w-full shrink-0`:`w-[176px]`),children:e.map(e=>(0,l.jsxs)(`div`,{className:`flex flex-col`,children:[(0,l.jsx)(`h5`,{className:`text-neutrals-800`,children:e.title}),(0,l.jsx)(`h5`,{className:`font-bold`,children:e.value})]},e.title))}),no=({chart:e,isOpen:t,onClose:n,datasetTitle:r})=>{let{titles:i}=Y(),[a,o]=(0,c.useState)(d.PopUpState.Closed);(0,c.useEffect)(()=>{o(t?d.PopUpState.Opened:d.PopUpState.Closed)},[t]);let s=(0,c.useCallback)(()=>{o(d.PopUpState.Closed),n?.()},[n]);return(0,l.jsx)(l.Fragment,{children:a===d.PopUpState.Opened&&(0,l.jsxs)(d.Popup,{heading:(0,l.jsx)(`h1`,{className:`single-chart-popup-heading`,children:i?.chart??`Chart`}),containerClassName:`single-chart-popup h-[80%]`,portalId:`single-chart`,size:d.PopUpSize.LG,dividers:!1,onClose:s,closeButtonTitle:i?.close??`Close`,children:[(0,l.jsxs)(`div`,{className:`single-chart-popup-content flex h-full min-h-0 flex-1 flex-row gap-4`,children:[(0,l.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[r&&(0,l.jsxs)(`div`,{className:`mb-2 flex items-center gap-1`,children:[(0,l.jsx)(Rr,{className:`size-4 shrink-0 text-neutrals-1000`}),(0,l.jsx)(`h4`,{className:`text-neutrals-1000`,children:r})]}),(0,l.jsx)(O.default,{option:e.config,className:`size-full`,style:{width:`100%`,height:`100%`}})]}),(0,l.jsx)(to,{dimensionsInfo:e.dimensions})]}),(0,l.jsx)(`div`,{})]})})},ro=e=>{let{titles:t}=Y(),[n,r]=(0,c.useState)(!1),[i,a]=(0,c.useState)(),o=(0,c.useRef)(null),[s,u]=(0,c.useState)(``),[f,p]=(0,c.useState)(``),[m,h]=(0,c.useState)(!1),{onboardingFileSchema:g,isShowOnboarding:_}=G(),{isCrossDatasetModeOn:v}=Z(),[y,b]=(0,c.useState)(!1),x=(0,c.useMemo)(()=>io(e.value),[e.value]),S=(0,c.useCallback)(()=>{a(e=>e??x),r(!0)},[x]),C=(0,c.useCallback)(()=>{r(!1),b(!0)},[]);return(0,c.useEffect)(()=>{if(_){let{title:e,description:n}=$e(X.CHART_PER_SERIES,t);u(e),p(n)}},[t,_]),(0,c.useEffect)(()=>{_&&h(g?.lastDisplayedElement===X.CHART_PER_SERIES&&e.node.rowIndex===0)},[g?.lastDisplayedElement,e.node.rowIndex,_]),(0,c.useEffect)(()=>{a(void 0)},[e.value]),x&&!x.isPlottable?null:(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`div`,{ref:o,children:(0,l.jsx)(d.IconButton,{title:t?.chart??`Chart`,buttonClassName:`!text-neutrals-1000 !border-none !p-1`,icon:(0,l.jsx)(Ra,{className:`size-5`}),onClick:S})}),m&&(0,l.jsx)(ct,{reference:o,title:s,description:f,onReferenceClick:S,shouldCloseTooltip:y}),n&&i&&(0,l.jsx)(no,{chart:i,isOpen:n,onClose:C,datasetTitle:v?e.data?.datasetTitle??void 0:void 0})]})};function io(e){return typeof e==`function`?e():e}var ao=`padding-0`,oo={flex:1,minWidth:200},so=`observationValueCell`,co=`metadataCell`,lo=`chartCell`,uo=`mergedDimensionCell`,fo=`datasetDetailCell`,po=`Chart_column`,mo=(e,t,n,r,i,a)=>({headerName:``,suppressHeaderMenuButton:!0,suppressNavigable:!0,sortable:!1,editable:!1,pinned:!0,width:32,maxWidth:32,cellClass:ao,cellRenderer:co,cellRendererParams:{attributesData:t,dataSetData:e,locale:n,metadataSettings:r,titles:i,action:a}});function ho(e,t,n,r=32,i,a){return{headerName:``,field:po,colId:po,suppressHeaderMenuButton:!0,suppressNavigable:!0,sortable:!1,editable:!1,pinned:`right`,width:r,maxWidth:r,minWidth:r,cellClass:ao,suppressColumnsToolPanel:!0,cellRenderer:ro,cellRendererParams:{attributesData:t,dataSetData:e,locale:n,titles:i,action:a}}}function go(e,t){return t&&e.cellRenderer!==`metadataCell`&&(typeof e.maxWidth!=`number`||e.maxWidth>64)?{...e,width:Math.min(e.width??100,100),minWidth:Math.min(e.minWidth??100,100)}:{...e}}function _o(e,t,n,r){return{headerName:``,suppressHeaderMenuButton:!0,suppressNavigable:!0,sortable:!1,editable:!1,pinned:!0,width:32,maxWidth:32,cellClass:ao,cellRenderer:co,cellRendererParams:{structuresMap:e,attributesDataMap:t,locale:n,titles:r}}}var vo=[`index`,`value`],yo=e=>({columns:So(e),data:bo(e)}),bo=e=>{let t=e.metadata.time_column,n={};for(let r of e.data.data){let{value:e,...i}=r,a=xo(r,t);n[a]={...n[a]||{},...i,[r[t]]:e}}return Object.values(n)},xo=(e,t)=>Object.keys(e).filter(e=>!vo.includes(e)&&e!==t).map(t=>e[t]).join(`.`),So=e=>{let{metadata:t,data:n}=e,r=t.time_column,i=t.pinned_columns||[],a=n.schema.fields,o=[],s=n.data.map(e=>e[r]),c=Array.from(new Set(s)).filter(e=>e!=null).map(e=>({field:e,colId:e,headerName:e,cellClass:`text-right`,width:200})),l=i.map(e=>a.find(t=>t.name===e)).filter(e=>e!=null),u=a.filter(e=>!i.includes(e.name)).filter(e=>e!=null);if(l.length>0)for(let e of[...l])e.name===r||vo.includes(e.name)||o.push({colId:e.name,field:e.name,headerName:e.name,pinned:`left`,...oo,tooltipValueGetter:e=>e.value});for(let e of[...u])e.name===r||vo.includes(e.name)||o.push({colId:e.name,field:e.name,headerName:e.name,pinned:!1,...oo,tooltipValueGetter:e=>e.value});return o.push(...c),o},Co=e=>e*32+32+16,wo=({attachment:e,actions:t,className:n=``,showLimitMessage:r})=>{let[i,a]=(0,c.useState)(!1),[o,s]=(0,c.useState)([]),[u,f]=(0,c.useState)(),[p,m]=(0,c.useState)(400);(0,c.useEffect)(()=>{e.url!=null&&(a(!0),t.getFile(e.url).then(e=>{if(e==null){s([]),f([]),a(!1);return}let{columns:t,data:n}=yo(e);s(n),f(t),a(!1)}))},[e.url,t]),(0,c.useEffect)(()=>{o?(m(Co(o.length)),r?.(o.length>=d.SERIES_LIMIT)):r?.(!1)},[o,r]);let h=(0,c.useMemo)(()=>(0,l.jsx)(k.AgGridReact,{headerHeight:32,rowHeight:32,rowData:o,columnDefs:u,enableCellTextSelection:!0,domLayout:`normal`,tooltipShowDelay:0,tooltipShowMode:`whenTruncated`,autoSizeStrategy:{type:u&&u?.length>5?`fitCellContents`:`fitGridWidth`}}),[o,u]);return i?(0,l.jsx)(d.Loader,{}):(0,l.jsx)(`div`,{className:`w-full ${n}`,children:(0,l.jsx)(`div`,{className:`ag-theme-quartz max-h-[400px] min-h-[80px] w-full`,style:{height:p},children:h})})},To=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 16 16`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{d:`M7.4665 6.39967H8.53317V5.33301H7.4665V6.39967ZM7.4665 10.6663H8.53317V7.46634H7.4665V10.6663ZM7.9945 13.333C5.0505 13.333 2.6665 10.9437 2.6665 7.99967C2.6665 5.05567 5.0505 2.66634 7.9945 2.66634C10.9438 2.66634 13.3332 5.05567 13.3332 7.99967C13.3332 10.9437 10.9438 13.333 7.9945 13.333ZM7.99984 3.73301C5.6425 3.73301 3.73317 5.64234 3.73317 7.99967C3.73317 10.357 5.6425 12.2663 7.99984 12.2663C10.3572 12.2663 12.2665 10.357 12.2665 7.99967C12.2665 5.64234 10.3572 3.73301 7.99984 3.73301Z`,fill:`currentColor`})}),Eo=({title:e,value:t})=>{let n=(0,c.useCallback)(()=>Array.isArray(t)?t.join(`, `):t,[t]);return(0,l.jsxs)(`div`,{className:`body-3 flex gap-x-3`,children:[(0,l.jsxs)(`p`,{title:e,className:`text-neutrals-800`,children:[e,`:`]}),(0,l.jsx)(`p`,{title:n(),className:`truncate pr-3 font-semibold`,children:n()})]})};function Do(e){let t=(0,c.useRef)(null),[n,r]=(0,c.useState)(!1),[i,a]=(0,c.useState)(!1),o=(0,c.useCallback)(()=>{let e=t.current;e&&a(e.scrollHeight>e.offsetHeight)},[]);return(0,c.useEffect)(()=>{if(n)return;o();let e=t.current;if(!e||typeof ResizeObserver>`u`)return;let r=new ResizeObserver(()=>o());return r.observe(e),()=>r.disconnect()},[n,e,o]),{valueRef:t,isExpanded:n,canToggle:i,toggle:(0,c.useCallback)(()=>r(e=>!e),[])}}var Oo=({isExpanded:e,onToggle:t,title:n})=>(0,l.jsx)(d.IconButton,{title:n,buttonClassName:(0,p.default)(`border-none p-0 w-6 h-6 shrink-0`,e&&`rotate-[180deg]`),isBaseIconStyles:!1,icon:(0,l.jsx)(ft,{width:24,height:24}),onClick:t}),ko=({title:e,value:t,attachedKeysTitles:n,isDimensionGroup:r,locale:i})=>{let a=(0,c.useMemo)(()=>Array.isArray(t)?t?.map(e=>typeof e==`object`?e?.[i]:e)?.join(`, `):t,[i,t]),{valueRef:o,isExpanded:s,canToggle:u,toggle:d}=Do(a);return(0,l.jsxs)(`div`,{className:`metadata-item`,children:[!r&&n?.map(e=>(0,l.jsx)(`div`,{title:e,className:`metadata-item-key mb-1 pr-3 text-neutrals-800`,children:e},e)),(0,l.jsxs)(`div`,{className:(0,p.default)(`flex items-center`,u&&`justify-between`),children:[(0,l.jsx)(`h2`,{title:e,className:`metadata-item-title`,children:e}),u&&(0,l.jsx)(Oo,{isExpanded:s,onToggle:d})]}),(0,l.jsx)(`p`,{title:a,className:(0,p.default)(`metadata-item-value pr-3`,!s&&`line-clamp-4`),ref:o,children:a})]})},Ao=({metadata:e,metadataDescription:t=[],locale:n})=>{let{titles:r}=Y();return(0,l.jsxs)(`div`,{className:`metadata-content h-full overflow-hidden`,children:[t?.length>0&&(0,l.jsx)(`div`,{className:`metadata-description`,children:t?.map(e=>(0,l.jsx)(Eo,{title:e?.title,value:e?.value},e?.title))}),(0,l.jsx)(`div`,{className:`metadata-list h-full overflow-y-auto`,children:e&&e?.length>0?e?.map(e=>(0,l.jsx)(ko,{title:e?.title,value:e?.value,locale:n,attachedKeysTitles:e?.attachedKeysTitles,isDimensionGroup:e?.isDimensionGroup},e?.id||e?.title)):(0,l.jsx)(`div`,{className:`metadata-empty flex h-full items-center justify-center text-neutrals-700`,children:r?.noMetadata||`No metadata`})})]})},jo=({metadata:e,metadataDescription:t=[],isOpenMetadata:n,onCloseMetadata:r,locale:i})=>{let{titles:a}=Y(),[o,s]=(0,c.useState)(d.PopUpState.Closed);(0,c.useEffect)(()=>{s(n?d.PopUpState.Opened:d.PopUpState.Closed)},[n]);let u=(0,c.useCallback)(()=>{s(d.PopUpState.Closed),r?.()},[r]);return(0,l.jsx)(l.Fragment,{children:o===d.PopUpState.Opened&&(0,l.jsxs)(d.Popup,{heading:(0,l.jsx)(`h1`,{className:`metadata-heading`,children:a?.metadata||`Metadata`}),containerClassName:`metadata h-[80%]`,portalId:`metadata`,size:d.PopUpSize.LG,dividers:!1,onClose:u,closeButtonTitle:a?.close||`Close`,children:[(0,l.jsx)(Ao,{locale:i,metadata:e,metadataDescription:t}),(0,l.jsx)(`div`,{})]})})},Mo={dataset:`dataset`,agency:`agency`,lastUpdated:`lastUpdated`},No=({dataset:e,agency:t,lastUpdated:n,externalLink:r,formatValue:i})=>(0,l.jsxs)(`div`,{className:`mb-6 flex flex-col gap-2`,children:[(0,l.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,l.jsx)(f.IconDatabase,{className:`size-4 text-neutrals-700`}),(0,l.jsx)(`p`,{className:`h4 break-words text-neutrals-1000`,children:i(e?.value)}),r&&(0,l.jsx)(`a`,{href:r,target:`_blank`,rel:`noopener noreferrer`,children:(0,l.jsx)(f.IconExternalLink,{className:`size-4 shrink-0 cursor-pointer text-primary`})})]}),t&&(0,l.jsxs)(`div`,{className:`body-3 flex gap-1`,children:[(0,l.jsxs)(`span`,{className:`text-neutrals-800`,children:[t?.title,`:`]}),(0,l.jsx)(`span`,{className:`break-words text-neutrals-1000`,children:i(t?.value)})]}),n&&(0,l.jsxs)(`div`,{className:`body-3 flex gap-1`,children:[(0,l.jsxs)(`span`,{className:`text-neutrals-800`,children:[n?.title,`:`]}),(0,l.jsx)(`span`,{className:`break-words text-neutrals-1000`,children:i(n?.value)})]})]}),Po=({title:e,value:t,attachedKeysTitles:n,isDimensionGroup:r})=>{let{valueRef:i,isExpanded:a,canToggle:o,toggle:s}=Do(t);return(0,l.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[!r&&n?.map((e,t)=>(0,l.jsx)(`div`,{title:e,className:`body-3 text-neutrals-800`,children:e},`${e}-${t}`)),(0,l.jsxs)(`div`,{className:`flex items-center justify-between gap-2 pr-2`,children:[(0,l.jsx)(`p`,{title:e,className:`body-3 text-neutrals-800`,children:e}),o&&(0,l.jsx)(Oo,{isExpanded:a,onToggle:s})]}),(0,l.jsx)(`p`,{ref:i,title:t,className:(0,p.default)(`body-2 break-words text-neutrals-1000`,!a&&`line-clamp-4`),children:t})]})},Fo=new Set(Object.values(Mo)),Io=`, `,Lo=({metadata:e,metadataDescription:t=[],datasetInfo:n,externalLink:r,locale:i})=>{let{titles:a}=Y(),o=(0,c.useCallback)(e=>Array.isArray(e)?e.map(e=>typeof e==`object`?e?.[i]??``:e).join(Io):typeof e==`object`&&e?e?.[i]??``:e??``,[i]),{dataset:s,agency:u,lastUpdated:d,hasStructuredDatasetInfo:f}=(0,c.useMemo)(()=>{let e=t.find(e=>e?.id===Mo.dataset),r=t.find(e=>e?.id===Mo.agency),i=t.find(e=>e?.id===Mo.lastUpdated),a=n?.dataset||e;return{dataset:a,agency:n?.agency||r,lastUpdated:n?.lastUpdated||i,hasStructuredDatasetInfo:!!a}},[n,t]),p=(0,c.useMemo)(()=>f?t.filter(e=>!e?.id||!Fo.has(e.id)):t,[f,t]);return(0,l.jsx)(`div`,{className:`flex h-full flex-col overflow-hidden px-5 pb-4`,children:f||p.length>0||e?.length?(0,l.jsxs)(l.Fragment,{children:[f&&s&&(0,l.jsx)(No,{dataset:s,agency:u,lastUpdated:d,externalLink:r,formatValue:o}),p.length>0&&(0,l.jsx)(`div`,{className:`mb-4 flex flex-col gap-2`,children:p.map((e,t)=>(0,l.jsxs)(`div`,{className:`body-3 flex gap-2`,children:[(0,l.jsxs)(`span`,{className:`shrink-0 text-neutrals-800`,children:[e?.title||e?.id,`:`]}),(0,l.jsx)(`span`,{className:`min-w-0 truncate font-semibold text-neutrals-1000`,children:o(e?.value)})]},`${e?.id||e?.title}-${t}`))}),(0,l.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:(0,l.jsx)(`div`,{className:`flex flex-col gap-4`,children:e?.map(e=>(0,l.jsx)(Po,{title:e?.title||e?.id,value:o(e?.value),attachedKeysTitles:e?.attachedKeysTitles,isDimensionGroup:e?.isDimensionGroup},e?.id||e?.title))})})]}):(0,l.jsx)(`div`,{className:`body-3 flex h-full items-center justify-center text-neutrals-700`,children:a?.noMetadata||`No metadata`})})};function Ro(e,t){let{externalLink:n,externalLinksMap:r}=e??{};return t!=null&&r!=null?r.get(t):n}var zo=e=>e?.data[e?.colDef?.field||0]?.obsAttributes,Bo=e=>e?.data?.attributes,Vo=(e,t)=>Object.entries(e?.data).filter(([e])=>t?.get(e)).map(([e,t])=>({name:e,value:String(t)})),Ho=(e,t,n)=>{let r=typeof e==`object`?e?.[t]:e;return n?(0,b.getLocalizedName)(n?.codes?.find(t=>t?.id===e),t)||``:r},Uo=(e,t,n)=>e?.map(e=>{let r=e?.name||``,i=t?.get(r),a=i?.codes?.length?i:void 0,o=Array.isArray(e?.value)?e?.value.map(e=>Ho(e,n,a)):Ho(e?.value,n,a);return{id:(0,b.getLocalizedName)(a,n)||e?.name,title:(0,b.getLocalizedName)(a||i,n),value:o||e?.value}})||[],Wo=(e,t,n)=>({title:n?.dataset||`Dataset`,value:(0,b.getLocalizedName)(e,t)}),Go=(e,t,n,r)=>[{...Wo(e,n,r),id:Mo.dataset},{id:Mo.agency,title:r?.agency??`Agency`,value:e?.agencyID},{id:Mo.lastUpdated,title:r?.lastUpdated??`Last updated`,value:t}],Ko=(e,t,n,r)=>({dataset:e?{...Wo(e,n,r),id:Mo.dataset}:void 0,agency:e?{id:Mo.agency,title:r?.agency??`Agency`,value:e?.agencyID}:void 0,lastUpdated:e?{id:Mo.lastUpdated,title:r?.lastUpdated??`Last updated`,value:t}:void 0}),qo=(e,t,n)=>({title:(0,b.getDimensionTitle)(e?.conceptSchemes,(0,b.getDimensions)(e)?.timeDimensions?.[0],t),value:n?.colId||``}),Jo=(e,t)=>({title:t?.observation||`Observation`,value:e}),Yo=(e,t,n,r,i,a)=>{let o={title:r?.timeSeries||`Time Series`,value:a?.originalData?.name};return n?[qo(e,t,i),o,Jo(n,r)]:[o]},Xo=e=>{let t=e?.dataSets?.[0]?.attributes||[],n=e?.structures?.[0]?.attributes?.dataSet||[];return t?.length?n.reduce((e,n,r)=>{let i=t[r];if(i==null)return e;if(n?.values?.length>0){let t=n.values[i];e.push(t?{...n,values:[t]}:{...n})}else Array.isArray(i)?e.push({...n,values:[{values:i}]}):e.push({...n,values:[{value:i}]});return e},[]):n},Zo=(e,t)=>{if(e==null)return;if(typeof e!=`object`)return String(e);let n=e,r=n[t];if(typeof r==`string`)return r;let i=Object.values(n).find(e=>typeof e==`string`);return typeof i==`string`?i:void 0},Qo=(e,t,n)=>e?.map(e=>{let r=e?.id,i=e?.values?.[0]?.value,a=(typeof i==`object`?Zo(i,n):i)||e?.values?.[0]?.id,o=e?.values?.[0]?.ids||e?.values?.[0]?.values,s=t?.get(r),c=s?.codes?.length?s:void 0,l=(0,b.getLocalizedName)(c?.codes?.find(e=>e?.id===a),n)||(0,b.getLocalizedName)(e?.values?.[0],n)||a,u=o&&o.map(e=>{let t=typeof e==`object`?Zo(e,n):String(e);return(0,b.getLocalizedName)(c?.codes?.find(e=>e?.id===t),n)||t}).filter(e=>e!=null);return{id:r,title:(0,b.getLocalizedName)(s,n)||r,value:u?.length?u:l}}).filter(({value:e})=>!!e)||[],$o=(e,t)=>{let n=e?.dataSets?.[0],r=(e?.structures?.[0])?.attributes?.dimensionGroup||[],i=n?.dimensionGroupAttributes;return new Map(r.map(n=>{let r=n?.relationship?.dimensions,{codedSeriesKey:a,decodedSeriesKey:o}=es(e,t,r);return[n.id,{values:i?.[a]||[],decodedSeriesKey:o,codedSeriesKey:a}]}))},es=(e,t,n)=>{let r=e?.structures?.[0],i=[...r?.dimensions.series||[],...r?.dimensions.observation||[]],a=Array(i?.length)?.fill(``),o=Array(i?.length)?.fill(``);return n&&n?.forEach(e=>{let n=i?.findIndex(t=>t?.id===e)||0,r=t[n],s=i[n]?.values?.findIndex(e=>e?.id===r||e?.value===r)||0;a[n]=s>=0?s:r,o[n]=r}),{codedSeriesKey:a?.join(`:`),decodedSeriesKey:o?.join(`:`)}},ts=(e,t)=>t==null?void 0:e?.values?.[t]||(typeof t==`object`&&!Array.isArray(t)||Array.isArray(t)?{values:t}:{value:t?.toString()}),ns=e=>{let t=e?.value||e?.id,n=e?.values||e?.ids;return t==null?n||[null]:[t]},rs=(e,t,n)=>t==null?t:(n?.get(e||``))?.codes?.find(e=>e?.id===t)?.name||t,is=(e,t,n,r=h.Locale.EN)=>{let i=n?.dataStructureComponents?.dimensionList,a=[...i?.dimensions||[],...i?.timeDimensions||[]],o=[];return(e?.split(`:`)||[])?.forEach((e,n)=>{if(e!==``){let i=a?.[n]?.id||``,s=(0,b.getLocalizedName)(t?.get(i),r),c=rs(i,e,t);o.push(`${s}: ${c}`)}}),o},as=(e,t,n,r,i=h.Locale.EN)=>{if(!e||!t||!r)return[];let a=e?.structures?.[0]?.attributes?.dimensionGroup||[],o=$o(e,r);return a?.map((e,r)=>{let a=o?.get(e?.id),s=n?.get(e?.id),c=ns(ts(e,a?.values?.[r]));return{id:e?.id,title:(0,b.getLocalizedName)(s,i),value:Array.isArray(c)?c?.map(t=>rs(e?.id,t,n)||``):c,attachedKeysTitles:is(a?.decodedSeriesKey,n,t),isDimensionGroup:!0}})?.filter(({value:e})=>e?.some(e=>!!e))||[]},os=(0,A.extendTailwindMerge)({extend:{classGroups:{typography:[`h1`,`h2`,`h3`,`h4`,`h5`,`body-1`,`body-2`,`body-3`,`caption`]}}});function ss(...e){return os((0,p.default)(...e))}function cs({title:e,headerExtension:t,headerClassName:n,onClose:r,bodyClassName:i,panelClassName:a,children:o}){return(0,l.jsxs)(`div`,{className:ss(`h-full w-[362px] bg-white border-l border-neutrals-500 flex flex-col overflow-hidden`,a),children:[(0,l.jsxs)(`div`,{className:ss(`flex justify-between px-5 py-6`,n),children:[(0,l.jsx)(`div`,{className:`h2 text-neutrals-1000`,children:e}),(0,l.jsxs)(`div`,{className:`flex items-center gap-2`,children:[t,t&&(0,l.jsx)(`div`,{className:`h-3 w-px bg-neutrals-600`}),(0,l.jsx)(`button`,{type:`button`,onClick:r,children:(0,l.jsx)(f.IconX,{className:`size-5 text-neutrals-1000`})})]})]}),(0,l.jsx)(`div`,{className:ss(`flex-1 min-h-0 overflow-hidden`,i),children:o})]})}var ls=(0,c.createContext)(null);function us({children:e}){let[t,n]=(0,c.useState)(null),r=(0,c.useCallback)(e=>{n(e)},[]),i=(0,c.useCallback)(()=>{n(null)},[]),a=(0,c.useCallback)(e=>e?t?.id===e:t!==null,[t]),o=(0,c.useMemo)(()=>({panel:t,openPanel:r,closePanel:i,isPanelOpen:a}),[t,r,i,a]);return(0,l.jsx)(ls.Provider,{value:o,children:e})}function ds(){return(0,c.useContext)(ls)}function fs(){let e=ds();if(!e)return null;let{openPanel:t,closePanel:n,isPanelOpen:r}=e;return{openPanel:t,closePanel:n,isPanelOpen:r}}function ps({scope:e}){let t=ds();if(!t)return null;let{panel:n,closePanel:r}=t;if(!n)return null;let i=n.scope??`any`;return i!==`any`&&i!==e?null:(0,l.jsx)(cs,{title:n.title,headerExtension:n.headerExtension,headerClassName:n.headerClassName,onClose:r,bodyClassName:n.bodyClassName,panelClassName:n.panelClassName,children:n.content})}var ms={},hs={},gs=(0,c.createContext)({map:ms,getDimensionsMetadata:()=>void 0,getDimensionMetadata:()=>void 0,getRegionDimension:()=>void 0,getFrequencyDimension:()=>void 0,getIndicatorDimensions:()=>[],getDimensionsScheme:()=>void 0,getDatasetLastUpdated:e=>(0,b.getLastUpdatedTime)(e)});function _s({map:e,lastUpdatedMap:t=hs,children:n}){let r=(0,c.useMemo)(()=>{let n={},r={},i={},a=Object.keys(e);for(let t of a){n[t]={},r[t]={};let a=Object.keys(e[t]);for(let i of a){let a=e[t][i];a.subtype&&(n[t][a.subtype]=i),r[t][a.dimensionType]||(r[t][a.dimensionType]=[]),r[t][a.dimensionType].push(i)}i[t]={timePeriod:r[t]?.TIME_PERIOD?.[0]??void 0,frequency:n[t]?.FREQUENCY??void 0,region:n[t]?.REGION??void 0,indicators:r[t]?.INDICATOR??[],other:(r[t]?.NON_INDICATOR??[]).filter(n=>{let r=e[t][n];return r.subtype!==`FREQUENCY`&&r.subtype!==`REGION`})}}return{map:e,getDimensionsMetadata:t=>e[t],getDimensionMetadata:(t,n)=>e[t]?.[n],getRegionDimension:e=>n[e]?.REGION,getFrequencyDimension:e=>n[e]?.FREQUENCY,getIndicatorDimensions:e=>r[e]?.INDICATOR??[],getDimensionsScheme:e=>i[e],getDatasetLastUpdated:e=>{if(e)return t[(0,b.generateShortUrn)(e.id,e.version,e.agencyID)]||(0,b.getLastUpdatedTime)(e)}}},[e,t]);return(0,l.jsx)(gs.Provider,{value:r,children:n})}function vs(){return(0,c.useContext)(gs)}function ys(){return(0,c.useContext)(gs)}var bs=e=>e===h.Locale.UK?`dd MMM, yyyy`:` MMM dd, yyyy hh:mm aa`,xs=(e,t)=>{let n=bs(t);return e!=null&&e!==``&&n&&(0,j.isValid)(new Date(e))?(0,j.format)(new Date(e),n,t===h.Locale.UK?{locale:M.uk}:void 0):``},Ss=e=>{let{titles:t}=Y(),[n,r]=(0,c.useState)(!1),i=(0,c.useRef)(null),[a,o]=(0,c.useState)(``),[s,u]=(0,c.useState)(``),[f,p]=(0,c.useState)(!1),{onboardingFileSchema:m,isShowOnboarding:h}=G(),{isOpenedAdvancedView:g}=I(),_=fs(),{isMetadataInSidePanel:v}=Z(),{getDatasetLastUpdated:y}=vs(),[x,S]=(0,c.useState)(!1),C=e?.data?.dataset?.urn,w=Ro(e?.context,C),T=(0,c.useMemo)(()=>e.structuresMap?C==null?void 0:e.structuresMap.get(C):e.dataSetData,[e.structuresMap,C,e.dataSetData]),E=(0,c.useMemo)(()=>e.attributesDataMap?C==null?void 0:e.attributesDataMap.get(C):e.attributesData,[e.attributesDataMap,C,e.attributesData]),D=(0,c.useMemo)(()=>(0,b.getStructureComponentsMap)(T),[T]),O=(0,c.useMemo)(()=>[Wo(T?.dataflows?.[0],e?.locale,t),...Uo(Vo(e,D),D,e?.locale),...Uo(Bo(e),D,e?.locale),...as(E,T?.dataStructures?.[0],D,e?.data?.originalData?.parsedTimeSeriesValue,e?.locale)],[e,T,E,D,t]),k=(0,c.useMemo)(()=>Yo(T,e?.locale,e?.valueFormatted||e?.value,t,e?.colDef,e?.data),[e,T,t]),A=(0,c.useMemo)(()=>{let n=T?.dataflows?.[0];return Ko(n,xs(y(n),e?.locale),e?.locale,t)},[T,e?.locale,t,y]),j=(0,c.useCallback)(()=>{if(v&&_){_.openPanel({id:`grid-metadata-side-panel`,scope:g?`advanced`:`conversation`,title:t?.timeseriesMetadataPanel||`Timeseries Metadata`,bodyClassName:`overflow-hidden`,content:(0,l.jsx)(Lo,{locale:e?.locale,metadata:O,datasetInfo:A,externalLink:w,metadataDescription:e?.metadataSettings?.isMetadataDescription?k:[]})}),S(!0);return}r(!0)},[v,g,O,k,A,w,e?.locale,e?.metadataSettings?.isMetadataDescription,t,_]),M=(0,c.useCallback)(()=>{r(!1),S(!0)},[]);return(0,c.useEffect)(()=>{if(h){let{title:e,description:n}=$e(X.METADATA_PER_SERIES,t);o(e),u(n)}},[t,h]),(0,c.useEffect)(()=>{if(h){let t=m?.lastDisplayedElement===X.METADATA_PER_SERIES&&e.node.rowIndex===0;p(t),t&&setTimeout(()=>{i?.current?.scrollIntoView({block:`end`,behavior:`smooth`})})}},[m?.lastDisplayedElement,e.node.rowIndex,h]),(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`div`,{ref:i,children:(0,l.jsx)(d.IconButton,{title:t?.metadata||`View details`,buttonClassName:`!text-neutrals-1000 !border-none !p-1`,icon:(0,l.jsx)(To,{className:`size-5`}),onClick:j})}),f&&(0,l.jsx)(ct,{reference:i,title:a,description:s,onReferenceClick:j,shouldCloseTooltip:x}),n&&(0,l.jsx)(jo,{locale:e?.locale,metadata:O,metadataDescription:e?.metadataSettings?.isMetadataDescription?k:[],isOpenMetadata:n,onCloseMetadata:M})]})},Cs=(e,t,n=b.getLastUpdatedTime)=>{let r=ws(e),i=(0,b.getStructureComponentsMap)(r),a=e?.valueFormatted||e?.value,o=Uo(t,i,e?.locale),s=[Wo(r?.dataflows?.[0],e?.locale,e?.titles),...Uo(Vo(e,i),i,e?.locale),...e?.metadataSettings?.isMetadataDescription?[]:[qo(r,e?.locale,e?.colDef),Jo(a,e?.titles)],...o],c=e?.metadataSettings?.isMetadataDescription?Yo(r,e?.locale,a,e?.titles,e?.colDef,e?.data):[],l=r?.dataflows?.[0];return{metadata:s,metadataDescription:c,sidePanelDatasetInfo:Ko(l,xs(n(l),e?.locale),e?.locale,e?.titles)}},ws=e=>{if(e.structuresMap){let t=e?.data?.dataset?.urn;return t==null?void 0:e.structuresMap.get(t)}return e.dataSetData},Ts=`observation-metadata-side-panel`,Es=({params:e,obsAttributes:t})=>{let{titles:n}=Y(),[r,i]=(0,c.useState)(null),{isOpenedAdvancedView:a}=I(),o=fs(),{isMetadataInSidePanel:s}=Z(),{getDatasetLastUpdated:u}=vs(),d=e?.data?.dataset?.urn,f=Ro(e?.context,d),p=(0,c.useCallback)(()=>{let r=Cs(e,t,u);if(s&&o){o.openPanel({id:Ts,scope:a?`advanced`:`conversation`,title:n?.metadata||`Metadata`,bodyClassName:`overflow-hidden`,content:(0,l.jsx)(Lo,{locale:e?.locale,metadata:r.metadata,datasetInfo:r.sidePanelDatasetInfo,externalLink:f,metadataDescription:r.metadataDescription})});return}i(r)},[s,a,f,t,e,o,n,u]),m=(0,c.useCallback)(()=>{i(null)},[]);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{className:`relative size-full p-2 text-end`,children:[e?.valueFormatted||e?.value,(0,l.jsx)(`div`,{className:`metadata-indicator`,title:n?.metadata||`View details`,onClick:p})]}),r&&(0,l.jsx)(jo,{locale:e?.locale,metadata:r.metadata,metadataDescription:r.metadataDescription,isOpenMetadata:!0,onCloseMetadata:m})]})},Ds=e=>{let t=zo(e);return t?.length?(0,l.jsx)(Es,{params:e,obsAttributes:t}):(0,l.jsx)(`div`,{className:`relative size-full p-2 text-end`,children:e?.valueFormatted||e?.value})},Os=({ref:e,fixHeight:t,fillHeight:n,gridHeight:r,children:i})=>(0,l.jsx)(`div`,{ref:e,className:(0,p.default)(`ag-theme-quartz w-full min-h-[80px]`,n&&`h-full`,!n&&t&&`max-h-[400px]`,!n&&!t&&`max-h-full`),style:n?void 0:{height:r},children:i}),ks=({attachment:e,isDataLoading:t,isChartColumnVisible:n,fixHeight:r,fillHeight:i,externalLink:a,showLimitMessage:o,onApiReady:s})=>{let{titles:u}=Y(),[f,p]=(0,c.useState)(!1),[m,h]=(0,c.useState)([]),[g,_]=(0,c.useState)(),[v,y]=(0,c.useState)(400),b=(0,d.useIsMobile)(d.MOBILE_BREAKPOINT),x=(0,c.useRef)(null),[S,C]=(0,c.useState)(``),[w,T]=(0,c.useState)(``),[E,D]=(0,c.useState)(!1),{isShowOnboarding:O,onboardingFileSchema:A,setOnboardingFileSchema:j}=G();(0,c.useEffect)(()=>{if(e.grid_data==null)p(!0);else{let t=e.grid_data.columns.map(e=>e.colId===`Chart_column`?{...e,hide:!n}:go(e,b));h(e.grid_data.data),_(t),p(!1)}},[e.grid_data,n,b]),(0,c.useEffect)(()=>{m?(y(Co(m.length)),o?.(m.length>=d.SERIES_LIMIT)):o?.(!1)},[m,o]),(0,c.useEffect)(()=>{if(O){let{title:e,description:t}=$e(X.DATA_GRID,u);C(e),T(t)}},[u,O]),(0,c.useEffect)(()=>{A&&!A?.infoElements?.dataGrid&&j?.({...A,infoElements:{...A?.infoElements,dataGrid:!0},lastDisplayedElement:X.DATA_GRID})},[A,j]),(0,c.useEffect)(()=>{if(O){let e=A?.lastDisplayedElement===X.DATA_GRID;D(e),!f&&!t&&e&&setTimeout(()=>{x?.current?.scrollIntoView({block:`end`,behavior:`smooth`})})}},[A?.lastDisplayedElement,O,t,f]);let M=(0,c.useCallback)(e=>{s?.(e.api)},[s]),N=(0,c.useMemo)(()=>({externalLink:a}),[a]),P=(0,c.useMemo)(()=>({[co]:Ss,[so]:Ds,[lo]:ro}),[]),F=(0,c.useMemo)(()=>(0,l.jsx)(k.AgGridReact,{onGridReady:M,headerHeight:32,rowHeight:32,rowData:m,enableCellTextSelection:!0,columnDefs:g,context:N,domLayout:`normal`,tooltipShowDelay:0,tooltipShowMode:`whenTruncated`,components:P,valueCache:!0}),[m,g,M,N,P]);return f||t?(0,l.jsx)(d.Loader,{}):(0,l.jsxs)(`div`,{className:`size-full`,children:[(0,l.jsx)(Os,{ref:x,fixHeight:r,fillHeight:i,gridHeight:v,children:F}),E&&(0,l.jsx)(ct,{reference:x,title:S,description:w,supressReferenceClick:!0})]})};function As(e){if(typeof window>`u`)return e(),()=>void 0;let t,n=window.requestAnimationFrame(()=>{t=window.setTimeout(e,0)});return()=>{window.cancelAnimationFrame(n),t!=null&&window.clearTimeout(t)}}var js=200,Ms=8,Ns=2,Ps=({currentIndex:e,totalCount:t,icons:n,onPrev:r,onNext:i})=>{let{titles:a}=Y(),o=(0,d.useIsMobile)(d.MOBILE_BREAKPOINT),s=(0,c.useRef)(null),[u,f]=(0,c.useState)(``),[m,h]=(0,c.useState)(``),[g,_]=(0,c.useState)(!1),{onboardingFileSchema:v,isShowOnboarding:y}=G();(0,c.useEffect)(()=>{if(y){let{title:e,description:t}=$e(X.CHARTS_NAVIGATION,a);f(e),h(t)}},[a,y]),(0,c.useEffect)(()=>{if(y){let e=v?.lastDisplayedElement===X.CHARTS_NAVIGATION;_(e),e&&s?.current?.scrollIntoView({block:`center`,behavior:`smooth`})}},[v?.lastDisplayedElement,y]);let b=t>0?e/t*100:0,x=t>0?Math.min(Ms*t,js):0,S=t>0?Math.max(x/t,Ns):0,C=t>0?100/t:0;return(0,l.jsxs)(`div`,{className:(0,p.default)(`flex w-full flex-row items-center justify-center gap-2`,o&&`min-w-0`),children:[(0,l.jsx)(`div`,{className:(0,p.default)(`size-[20px] shrink-0 cursor-pointer`,e===0?`text-neutrals-700`:`text-primary`),onClick:r,children:n?.[J.PREVIOUS]}),(0,l.jsxs)(`div`,{className:(0,p.default)(`flex flex-col items-center gap-1 pt-[20px]`,o&&`min-w-0 flex-1`),children:[(0,l.jsx)(`div`,{className:(0,p.default)(`relative h-[4px] rounded-full bg-neutral-300`,o&&`w-full`),style:o?{maxWidth:`${js}px`}:{width:`${x}px`},children:(0,l.jsx)(`div`,{className:`absolute h-full rounded-full bg-primary`,style:{left:`${b}%`,width:o?`${C}%`:`${S}px`}})}),(0,l.jsxs)(`h5`,{className:(0,p.default)(`text-neutrals-800`,o&&`max-w-full truncate`),children:[e+1,`/`,t]})]}),(0,l.jsx)(`div`,{className:(0,p.default)(`size-[20px] shrink-0 cursor-pointer`,e+1===t?`text-neutrals-700`:`text-primary`),onClick:i,ref:s,children:n?.[J.NEXT]}),g&&(0,l.jsx)(ct,{reference:s,title:u,description:m})]})},Fs=({limitAmount:e,openAdvancedView:t,prefixIcon:n,contentClassName:r})=>{let{titles:i}=Y(),[a,o]=(0,c.useState)(!1),{refs:s,floatingStyles:u,context:d}=(0,y.useFloating)({open:a,onOpenChange:o,placement:`top-start`}),{getReferenceProps:f,getFloatingProps:p}=(0,y.useInteractions)([(0,y.useHover)(d,{handleClose:(0,y.safePolygon)({blockPointerEvents:!0})})]);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`div`,{className:`flex w-fit`,ref:s.setReference,...f(),children:(0,l.jsxs)(`div`,{className:ss(`mt-1 flex w-fit items-center gap-1 bg-hues-100 px-4 py-2`,r),children:[n,(0,l.jsx)(`h5`,{className:`font-bold`,children:i?.limits||`Limited to`}),(0,l.jsxs)(`h5`,{children:[e,` `,i?.timeseriesLimit||`Timeseries`]})]})}),a&&(0,l.jsx)(`div`,{className:`floating`,ref:s.setFloating,style:u,...p(),children:(0,l.jsxs)(`div`,{className:`z-10 mb-2 flex w-[300px] flex-col gap-2 rounded bg-white p-4 shadow`,children:[(0,l.jsxs)(`div`,{children:[(0,l.jsxs)(`h5`,{className:`text-neutrals-900`,children:[(0,l.jsx)(`span`,{className:`pr-0.5`,children:i?.limitLinkInfoP1_1||`The number of timeseries displayed in a single chart i`}),(0,l.jsxs)(`span`,{className:`pr-0.5 font-bold`,children:[i?.limitLinkInfoP1_2||`limited to`,` `,e]}),i?.limitLinkInfoP1_3||`for better clarity and performance.`]}),(0,l.jsxs)(`h5`,{className:`text-neutrals-900`,children:[(0,l.jsx)(`span`,{className:`pr-0.5`,children:i?.limitLinkInfoP2_1||`To visualize specific timeseries`}),(0,l.jsx)(`span`,{className:`pr-0.5 font-bold`,children:i?.limitLinkInfoP2_2||`filter`}),(0,l.jsx)(`span`,{className:`pr-0.5`,children:i?.limitLinkInfoP2_3||`your request, or`}),(0,l.jsx)(`span`,{className:`pr-0.5 font-bold`,children:i?.limitLinkInfoP2_4||`refine`}),i?.limitLinkInfoP2_5||`it in the chat.`]})]}),t&&(0,l.jsx)(`h4`,{className:`cursor-pointer text-primary`,onClick:t,children:i?.limitLinkInfoLink||`Open Advanced View`})]})})]})};function Is(e,t,n){let r=(e.getZr()?.painter).getRenderedCanvas()?.getContext(`2d`);if(!r)return 0;r.font=`${n.textStyle?.fontSize??12}px ${n.textStyle?.fontFamily??`sans-serif`}`;let i=r.measureText(t).width,a=n.itemWidth??25,o=n.itemGap??10;return i+a+o}var Ls=44,Rs=56,zs=280,Bs=52,Vs=({option:e,style:t})=>{let n=(0,c.useRef)(null),r=(0,d.useIsMobile)(d.MOBILE_BREAKPOINT),[i,a]=(0,c.useState)(e);(0,c.useEffect)(()=>{a(Us(e,r))},[e,r]);let o=(0,c.useCallback)(()=>{let t=n.current?.getEchartsInstance?.();if(!t||r)return;let i=t.getDom().clientWidth;if(i<=0)return;let o=e.legend||{},s=o.itemHeight??14,c=o.textStyle?.fontSize??12,l=t.getModel()?.getComponent(`legend`)?.getData()||[],u=0;l.forEach(e=>{let n=e.option.name||``;u+=Is(t,n,o)});let d=Math.max(1,Math.ceil(u/i))*(+s+ +c+6);a(e=>({...e,grid:{...e.grid||{},bottom:d+20}}))},[r,e.legend]);return(0,c.useEffect)(()=>{o();let e=()=>{o()};return window.addEventListener(`resize`,e),()=>{window.removeEventListener(`resize`,e)}},[e,o]),(0,l.jsx)(O.default,{notMerge:!0,lazyUpdate:!1,ref:n,option:i,style:Hs(t,r)})};function Hs(e,t){return t?{...e,height:zs,minHeight:zs}:e}function Us(e,t){let n=(0,D.cloneDeep)(e);return t?Ws(n):n}function Ws(e){return{...e,legend:Gs(e.legend),grid:{...qs(e.grid),left:8,right:8,bottom:Rs,containLabel:!0},xAxis:Ks(e.xAxis,e=>({...e,axisLabel:{...qs(e.axisLabel),hideOverlap:!0}})),yAxis:Ks(e.yAxis,e=>({...e,axisLabel:{...qs(e.axisLabel),width:Bs,overflow:`truncate`,formatter:Ys}}))}}function Gs(e){let t=e=>{let t=qs(e);return{...t,type:`scroll`,orient:`horizontal`,left:0,right:0,bottom:0,height:Ls,itemWidth:14,itemHeight:8,textStyle:{...qs(t.textStyle),width:120,overflow:`truncate`}}};return Array.isArray(e)?e.map(t):t(e)}function Ks(e,t){let n=e=>t(qs(e));return Array.isArray(e)?e.map(n):n(e)}function qs(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:{}}var Js=new Intl.NumberFormat(`en`,{notation:`compact`,maximumSignificantDigits:3});function Ys(e){let t=typeof e==`number`?e:Number(String(e).replace(/,/g,``));return Number.isFinite(t)?Js.format(t):String(e)}var Xs=({attachment:e,icons:t,isDataLoading:n,openAdvancedView:r,fixHeight:i=!0,limitationInfoPrefixIcon:a,limitationInfoContentClassName:o})=>{let{titles:s}=Y(),u=(0,d.useIsMobile)(d.MOBILE_BREAKPOINT),[f,m]=(0,c.useState)(!0),[h,g]=(0,c.useState)(),[_,v]=(0,c.useState)([]),[y,b]=(0,c.useState)(0),[x,S]=(0,c.useState)(void 0),[C,w]=(0,c.useState)(),{onboardingFileSchema:T,isShowOnboarding:E,setOnboardingFileSchema:D}=G(),O=(0,c.useRef)(null),{charting_data:k,getChartingData:A}=e;(0,c.useEffect)(()=>{if(b(0),k){g(k),m(!1);return}if(!A){g(void 0),m(!0);return}return m(!0),As(()=>{try{g(A())}catch(e){console.error(`Error building chart data`,e),g({units:[]})}finally{m(!1)}})},[k,A]),(0,c.useEffect)(()=>{let e=h?.groups??[],t=h?.units??[];v(e.length>0?e.flatMap(e=>e.units.map(t=>({unit:t,groupTitle:e.title}))):t.map(e=>({unit:e})))},[h]),(0,c.useEffect)(()=>{let e=_.length>y,t=e?_[y]:_[0];S(!f&&t!=null?t.unit:void 0),w(t?.groupTitle),e||b(0)},[f,_,y]),(0,c.useEffect)(()=>{T&&E&&!f&&(at(T)&&(D?.(it(T)),O?.current?.scrollIntoView({block:`center`,behavior:`smooth`})),T.lastDisplayedElement===X.CHART_PER_SERIES&&D?.(rt(T)))},[f,D,T,E]);let j=(0,c.useCallback)(()=>{b(e=>Math.min(e+1,_.length-1))},[_.length]),M=(0,c.useCallback)(()=>{b(e=>Math.max(e-1,0))},[]);return f||n?(0,l.jsx)(d.Loader,{}):(0,l.jsx)(`div`,{className:`chart-attachment size-full`,ref:O,children:h&&(0,l.jsx)(`div`,{className:`flex size-full flex-col gap-4`,children:_.length==0||x==null?(0,l.jsx)(`h4`,{className:`ml-1`,children:s?.chartInfo||`No data`}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,l.jsxs)(`h3`,{className:`chart-attachment-title`,children:[s?.chart||`Chart`,` `,y+1,`/`,_.length]}),(0,l.jsx)(`span`,{className:`h4 chart-attachment-info text-neutrals-700`,children:s?.chartInfo||`Chart Information`})]}),(0,l.jsxs)(`div`,{className:(0,p.default)(`chart-area flex gap-4 h-full`,u?`flex-col overflow-auto`:`flex-row overflow-hidden`,u&&`min-h-[500px]`,!u&&i&&`max-h-[400px] min-h-[400px]`,!u&&!i&&`min-h-[300px]`),children:[(0,l.jsxs)(`div`,{className:(0,p.default)(`flex min-h-0 min-w-0 flex-1 flex-col`,u&&`min-h-[360px] w-full`),children:[C&&(0,l.jsxs)(`div`,{className:`mb-1 flex items-center gap-1`,children:[(0,l.jsx)(Rr,{className:`size-4 shrink-0 text-neutrals-1000`}),(0,l.jsx)(`h4`,{className:`text-neutrals-1000`,children:C})]}),(0,l.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col gap-4`,children:[(0,l.jsx)(`div`,{className:(0,p.default)(`min-h-0 min-w-0 flex-1`,u&&`min-h-[280px]`),children:(0,l.jsx)(Vs,{option:x.config,style:{width:`100%`,height:`100%`,minHeight:0}})}),x.limitedByRowsAmountTo&&(0,l.jsx)(Fs,{limitAmount:x.limitedByRowsAmountTo,openAdvancedView:r,prefixIcon:a,contentClassName:o}),_.length>1&&(0,l.jsx)(Ps,{icons:t,currentIndex:y,totalCount:_.length,onNext:j,onPrev:M})]})]}),(0,l.jsx)(to,{dimensionsInfo:x.dimensions,isNarrow:u})]})]})})})},Zs=({attachment:e,className:t})=>{let{data:n,language:r}=e;return(0,l.jsx)(`div`,{className:ss([`h-full w-full [&_.cursors-layer]:hidden`,t]),children:(0,l.jsx)(N.Editor,{value:n,language:r,theme:`vs-light`,onMount:(e,t)=>{e.addCommand(t.KeyCode.F1,()=>{})},options:{readOnly:!0,contextmenu:!1,scrollBeyondLastLine:!1,minimap:{enabled:!1},wordWrap:`on`,automaticLayout:!0,tabSize:2}})})},Qs=`dataset_name`,$s=`agency`,ec=`country_aggregated`,tc=`indicator_aggregated`,nc=`frequency_aggregated`;function rc(e){return{columnState:e.getColumnState(),columnGroupState:e.getColumnGroupState()??[]}}function ic(e,t){t&&(e.applyColumnState({state:t.columnState,applyOrder:!0}),e.setColumnGroupState(t.columnGroupState))}var ac=[`columnVisible`,`columnMoved`,`displayedColumnsChanged`,`newColumnsLoaded`,`gridColumnsChanged`,`columnPinned`];function oc(e,t){(0,c.useEffect)(()=>{if(e){for(let n of ac)e.addEventListener(n,t);return()=>{for(let n of ac)e.removeEventListener(n,t)}}},[e,t])}function sc({currentUrn:e}){let[t,n]=(0,c.useState)(),[r,i]=(0,c.useState)(null),a=(0,c.useRef)(new Map),o=(0,c.useRef)(new Map),s=(0,c.useCallback)(t=>{if(n(t),a.current.has(e))r??i(a.current.get(e)??null);else{let n=rc(t);a.current.set(e,n),i(n)}let s=o.current.get(e);s&&(t.applyColumnState({state:s.columnState,applyOrder:!0}),s.columnGroupState!=null&&t.setColumnGroupState(s.columnGroupState))},[e]);(0,c.useEffect)(()=>{i(a.current.get(e)??null)},[e]);let l=(0,c.useCallback)(()=>{t&&o.current.set(e,rc(t))},[e,t]),u=(0,c.useCallback)(()=>{o.current.delete(e)},[e]),d=(0,c.useCallback)(()=>{a.current.delete(e),i(null)},[e]);return oc(t,l),{gridApi:t,onGridApiReady:s,initialColumnsState:r,clearUserColumnState:u,clearInitialColumnState:d}}var cc=function(e){return e.Compact=`compact`,e.Extended=`extended`,e}({}),lc=(0,c.createContext)(null);function uc({currentUrn:e,structuresMap:t,locale:n,dataQueries:r,gridViewMode:i=cc.Compact,onGridViewModeChange:a,texts:o,resetIcon:s,children:u}){let{gridApi:d,onGridApiReady:f,initialColumnsState:p,clearUserColumnState:m,clearInitialColumnState:h}=sc({currentUrn:e}),g=(0,c.useCallback)(e=>a?.(e),[a]),[_,v]=(0,c.useState)(new Map),y=(0,c.useCallback)((e,t,n)=>{v(r=>{let i=new Map(r),a=new Map(i.get(e)??[]),o=a.get(t)??{order:[],hidden:new Set};return a.set(t,n(o)),i.set(e,a),i}),d?.refreshCells({columns:[t]})},[d]),b=(0,c.useCallback)((e,t,n)=>{y(e,t,e=>({...e,order:n}))},[y]),x=(0,c.useCallback)(()=>{v(new Map)},[]),S=(0,c.useCallback)((e,t,n,r)=>{y(e,t,e=>{let t=new Set(e.hidden);return r?t.add(n):t.delete(n),{...e,hidden:t}})},[y]),C=(0,c.useMemo)(()=>({gridApi:d,onGridApiReady:f,initialColumnsState:p,structuresMap:t,locale:n,dataQueries:r,dimensionCustomization:_,setDimensionKeyOrder:b,setDimensionKeyHidden:S,resetDimensionCustomization:x,clearUserColumnState:m,clearInitialColumnState:h,gridViewMode:i,setGridViewMode:g,texts:o,resetIcon:s}),[d,p,f,t,n,r,_,b,S,x,m,h,i,g,o,s]);return(0,l.jsx)(lc.Provider,{value:C,children:u})}function dc(){let e=(0,c.useContext)(lc);if(!e)throw Error(`useTableSettingsContext must be used within TableSettingsProvider`);return e}var fc=()=>(0,c.useContext)(lc);function pc(e,t,n){let r=(0,b.getConcept)(e.conceptIdentity,t),i=e?.localRepresentation?.enumeration,a=r?.coreRepresentation?.enumeration;return{concept:r,codeList:(0,b.getArtifactByUrnWithWildCard)(i||a,n)||void 0}}function mc(e,t,n){let r=e.findIndex(e=>e.id===t);return n.originalData.parsedTimeSeriesValue[r]}function hc(e,t,n,r,i){let a=mc(e,t,r),o=n?.codes?.find(e=>e.id===a);return(0,b.getLocalizedName)(o,i)}function gc(e,t,n,r,i=cc.Compact){let a=i===cc.Extended?xc(e,t,n):[vc(e,t,n,r)];return[_c(e,t,n,r),...a,yc(e,t,n,r),...bc(e,t,n)]}function _c(e,t,n,r){return wc(r?.countryDimensions||`Country dimensions`,ec,r=>{let{structures:i,urn:a,data:o}=Tc(r,e),s=t.get(a)?.region;return o==null||a==null||i==null||s==null?``:Ec(i,s,o,n)},e,t,n,r)}function vc(e,t,n,r){return wc(r?.indicatorDimensions||`Indicator dimensions`,tc,r=>{let{structures:i,urn:a,data:o}=Tc(r,e),s=t.get(a)?.indicators;return o==null||a==null||i==null||s==null||s.length===0?``:s.map(e=>Ec(i,e,o,n)||``).join(`.`)},e,t,n,r)}function yc(e,t,n,r){return wc(r?.frequency||`Frequency`,nc,r=>{let{structures:i,urn:a,data:o}=Tc(r,e),s=t.get(a)?.frequency;return o==null||a==null||i==null||s==null?``:Ec(i,s,o,n)},e,t,n,r)}function bc(e,t,n){let r=new Set;return t.forEach(e=>{e?.other?.forEach(e=>{r.add(e)})}),Array.from(r).map(r=>Sc(r,e,t,n))}function xc(e,t,n){let r=new Set;return t.forEach(e=>{e?.indicators?.forEach(e=>{r.add(e)})}),Array.from(r).map(r=>({headerName:Cc(r,e,n),field:r,colId:r,valueGetter:i=>{let{structures:a,urn:o,data:s}=Tc(i,e),c=t.get(o)?.indicators??[];return s==null||o==null||a==null||!c.includes(r)?``:Ec(a,r,s,n)},...oo,cellClass:ao,tooltipValueGetter:e=>e.value}))}function Sc(e,t,n,r){return{...wc(Cc(e,t,r),e,i=>{let{structures:a,urn:o,data:s}=Tc(i,t),c=n.get(o)?.other??[];return s==null||o==null||a==null||!c.includes(e)?``:Ec(a,e,s,r)},t,n,r),hide:!0}}function Cc(e,t,n){for(let r of t.values()){if(!r)continue;let t=((0,b.getDimensions)(r)?.dimensions||[]).find(t=>t.id===e);if(t)return(0,b.getDimensionTitle)(r.conceptSchemes,t,n)??e}return e}function wc(e,t,n,r,i,a,o){return{headerName:e,field:t,colId:t,valueGetter:n,...oo,cellClass:ao,cellRenderer:uo,tooltipValueGetter:e=>e.value,cellRendererParams:{structuresMap:r,datasetDimensionsSchemesMap:i,locale:a,titles:o,colId:t}}}function Tc(e,t){let{data:n}=e,r=n?.dataset?.urn;return{data:n,urn:r,structures:r==null?void 0:t.get(r)}}function Ec(e,t,n,r){let i=e.conceptSchemes||[],a=e.codelists||[],o=(0,b.getDimensions)(e)?.dimensions||[],s=o.find(e=>e.id===t);if(s==null)return;let{codeList:c}=pc(s,i,a);return hc(o,t,c,n,r)}var Dc=`::`;function Oc(e,t){return`${e}${Dc}${t}`}function kc(e){return e.includes(Dc)}function Ac(e){let t=e.indexOf(Dc);return{urn:e.slice(0,t),dimensionKey:e.slice(t+2)}}var jc=new Set([tc]);function Mc(e,t){let n=e;return t?.order.length&&(n=[...t.order.filter(t=>e.includes(t)),...e.filter(e=>!t.order.includes(e))]),t?.hidden.size&&(n=n.filter(e=>!t.hidden.has(e))),n}function Nc(e,t,n){let r=n(t);return r?e===`indicator_aggregated`?r.indicators:e===`country_aggregated`?r.region?[r.region]:[]:e===`frequency_aggregated`&&r.frequency?[r.frequency]:[]:[]}function Pc(e,t,n){let r=e.getDimensionConfig(t,n);if(r?.alias)return r.alias;let i=e.structuresMap.get(t),a=(i?(0,b.getDimensions)(i)?.dimensions??[]:[]).find(e=>e.id===n);return(0,b.getDimensionTitle)(i?.conceptSchemes??[],a,e.locale)??n}function Fc(e){let t=e.enrichedColIds??jc;return n=>{if(!t.has(n.id))return n;let r=[];for(let{urn:t}of e.dataQueries){let i=Nc(n.id,t,e.getDimensionsScheme);if(!i.length)continue;let a=e.dimensionCustomization?.get(t)?.get(n.id),o=a?.order.length?Mc(i,{order:a.order,hidden:new Set}):i,s=o.length>1,c=o.map(n=>({id:Oc(t,n),type:`item`,label:Pc(e,t,n),isChecked:!a?.hidden.has(n),draggable:s,checkable:s})),l=(0,b.getLocalizedName)(e.structuresMap.get(t)?.dataflows?.[0],e.locale)??t;r.push({id:t,type:`group`,label:l,items:c})}return r.length?r.length===1?{...n,items:r[0].items}:{...n,items:r}:n}}function Ic(e,t){return e===`indicator_aggregated`?t.indicators??[]:e===`country_aggregated`?t.region?[t.region]:[]:e===`frequency_aggregated`?t.frequency?[t.frequency]:[]:t.other?.includes(e)?[e]:[]}function Lc(e,t){return e===`indicator_aggregated`?t?.indicatorMetadataPanel||`Indicator dimension details`:e===`country_aggregated`?t?.countryMetadataPanel||`Country dimension details`:t?.metadata||`Metadata`}var Rc=`merged-dimension-metadata-side-panel`,zc=e=>{let{titles:t}=Y(),{isOpenedAdvancedView:n}=I(),r=fs(),{isMetadataInSidePanel:i}=Z(),{getDatasetLastUpdated:a}=vs(),o=fc(),s=e?.data?.dataset?.urn,u=Ro(e?.context,s),d=s==null?void 0:e.structuresMap.get(s),f=s==null?void 0:e.datasetDimensionsSchemesMap.get(s),p=o?.dimensionCustomization,m=(0,c.useMemo)(()=>{if(!d||!f||s==null)return e.valueFormatted??e.value;let t=p?.get(s)?.get(e.colId);return Mc(Ic(e.colId,f),t).map(t=>Ec(d,t,e.data,e.locale)).filter(Boolean).join(`.`)},[p,d,f,s,e.valueFormatted,e.value,e.colId,e.data,e.locale]),h=(0,c.useMemo)(()=>{if(!d||!f)return[];let t=Ic(e.colId,f),n=(0,b.getStructureComponentsMap)(d);return Uo(t.filter(t=>e.data[t]!=null).map(t=>({name:t,value:String(e.data[t])})),n,e.locale)},[d,f,e.colId,e.data,e.locale]),g=(0,c.useMemo)(()=>{let n=d?.dataflows?.[0];if(n)return Ko(n,xs(a(n),e.locale),e.locale,t)},[d,e.locale,t,a]),_=i&&!!r&&!!e.value&&![`frequency_aggregated`,`country_aggregated`].includes(e.colId),v=(0,c.useCallback)(()=>{r&&r.openPanel({id:Rc,scope:n?`advanced`:`conversation`,title:Lc(e.colId,t),bodyClassName:`overflow-hidden`,content:(0,l.jsx)(Lo,{locale:e.locale,metadata:h,datasetInfo:g,externalLink:u})})},[r,n,e.colId,t,e.locale,h,g,u]);return(0,l.jsxs)(`div`,{className:`relative size-full p-2`,children:[m,_&&(0,l.jsx)(`div`,{className:`metadata-indicator`,title:t?.metadata||`View details`,onClick:v})]})},Bc=`dataset-detail-metadata-side-panel`,Vc=e=>{let{titles:t}=Y(),{isOpenedAdvancedView:n}=I(),r=fs(),{isMetadataInSidePanel:i}=Z(),{getDatasetLastUpdated:a}=vs(),o=e?.data?.dataset?.urn,s=Ro(e?.context,o),u=o==null?void 0:e.structuresMap.get(o),d=o==null?void 0:e.attributesDataMap?.get(o),f=(0,c.useMemo)(()=>{let n=u?.dataflows?.[0];if(n)return Ko(n,xs(a(n),e.locale),e.locale,t)},[u,e.locale,t,a]),p=(0,c.useMemo)(()=>Qo(Xo(d),(0,b.getStructureComponentsMap)(u),e.locale),[d,u,e.locale]),m=i&&!!r&&!!e.value,h=(0,c.useCallback)(()=>{r&&r.openPanel({id:Bc,scope:n?`advanced`:`conversation`,title:t?.datasetMetadataPanel||`Dataset Metadata`,bodyClassName:`overflow-hidden`,content:(0,l.jsx)(Lo,{locale:e.locale,metadata:p,datasetInfo:f,externalLink:s})})},[r,n,p,f,s,t,e.locale]);return(0,l.jsxs)(`div`,{className:`relative size-full p-2`,children:[e.valueFormatted??e.value,m&&(0,l.jsx)(`div`,{className:`metadata-indicator`,title:t?.metadata||`View details`,onClick:h})]})},Hc=({attachment:e,isDataLoading:t,isChartColumnVisible:n,fixHeight:r,externalLink:i,externalLinksMap:a,showLimitMessage:o,onApiReady:s})=>{let[u,f]=(0,c.useState)(!1),[p,m]=(0,c.useState)([]),[h,g]=(0,c.useState)(),[_,v]=(0,c.useState)(400),y=(0,d.useIsMobile)(d.MOBILE_BREAKPOINT),b=(0,c.useRef)(null),x=(0,c.useRef)([]);(0,c.useEffect)(()=>{if(e.gridContent==null)f(!0);else{let t=e.gridContent.columns.map(e=>e.colId===`Chart_column`?{...e,hide:!n}:go(e,y));m(e.gridContent.data),g(t),f(!1)}},[e.gridContent,n,y]),(0,c.useEffect)(()=>{p?(v(Co(p.length)),o?.(p.length>=d.SERIES_LIMIT)):o?.(!1)},[p,o]),(0,c.useEffect)(()=>{if(!h||!b.current)return;let e=h.map(e=>e.colId??e.field??``).filter(Boolean),t=x.current,n=new Set(t),r=e.length!==t.length||e.some(e=>!n.has(e));x.current=e,r&&b.current.resetColumnState()},[h]);let S=(0,c.useCallback)(e=>{b.current=e.api,s?.(e.api)},[s]),C=(0,c.useMemo)(()=>({externalLink:i,externalLinksMap:a}),[i,a]),w=(0,c.useMemo)(()=>({[co]:Ss,[so]:Ds,[uo]:zc,[lo]:ro,[fo]:Vc}),[]),T=(0,c.useMemo)(()=>(0,l.jsx)(k.AgGridReact,{headerHeight:32,rowHeight:32,rowData:p,enableCellTextSelection:!0,columnDefs:h,context:C,domLayout:`normal`,tooltipShowDelay:0,tooltipShowMode:`whenTruncated`,components:w,valueCache:!0,onGridReady:S}),[p,h,C,w,S]);return u||t?(0,l.jsx)(d.Loader,{}):(0,l.jsx)(`div`,{className:`size-full`,children:(0,l.jsx)(Os,{fixHeight:r,gridHeight:_,children:T})})},Uc=({selectedAttachment:e,actions:t,attachmentsStyles:n,isDataLoading:r,externalLink:i,externalLinksMap:a,isOpenedAdvancedView:o,onOpenAdvancedView:s,showLimitMessage:c,onGridApiReady:u})=>(0,l.jsxs)(`div`,{className:`flex min-h-0 w-full flex-1 justify-center`,children:[Zi(e)&&(0,l.jsx)(Ga,{actions:t,downloadTitles:n?.downloadTitle,attachment:e}),Qi(e)&&(0,l.jsx)(wo,{actions:t,attachment:e,showLimitMessage:c}),$i(e)&&(0,l.jsx)(ks,{attachment:e,isDataLoading:r,isChartColumnVisible:o,fixHeight:!o,showLimitMessage:c,onApiReady:u,externalLink:i}),ra(e)&&(0,l.jsx)(Hc,{attachment:e,isDataLoading:r,isChartColumnVisible:o,fixHeight:!o,showLimitMessage:c,onApiReady:u,externalLink:i,externalLinksMap:a}),ea(e)&&(0,l.jsx)(Xs,{isDataLoading:r,attachment:e,icons:n?.chartingIcons,openAdvancedView:o?void 0:s,fixHeight:!o,limitationInfoPrefixIcon:n?.limitationInfoIcon,limitationInfoContentClassName:n?.limitationInfoContentClassName}),Ji(e)&&(0,l.jsx)(eo,{attachment:e,openLinkTitle:n?.openLinkTitle}),Xi(e)&&(0,l.jsx)(Xa,{attachment:e}),na(e)&&(0,l.jsx)(Zs,{attachment:e,className:n?.codeAttachmentContainerClassName})]}),Wc=({isOpen:e,alertDetails:t,attachmentsStyles:n,onClose:r})=>{if(!e)return null;let i=t?.progress&&t.progress.total>0?`${Math.min(100,Math.max(0,t.progress.current/t.progress.total*100))}%`:`0%`;return(0,l.jsx)(d.Alert,{alertDetails:t,infoIcon:n?.infoDownloadIcon,successIcon:n?.successDownloadIcon,errorIcon:n?.errorDownloadIcon,onClose:r,closeButtonTitle:n?.closeTitle||`Close`,children:(0,l.jsxs)(l.Fragment,{children:[t?.text&&(0,l.jsx)(`div`,{className:`alert-text whitespace-pre-line break-words`,title:t.text,children:t.text}),t?.progress&&(0,l.jsx)(`div`,{className:`alert-progress`,children:(0,l.jsx)(`div`,{className:`alert-progress-value`,style:{width:i}})}),t?.action&&(0,l.jsxs)(`button`,{type:`button`,className:`alert-action`,disabled:t.action.disabled,onClick:t.action.onClick,title:t.action.title,children:[t.action.icon&&(0,l.jsx)(`span`,{className:`alert-action-icon`,children:t.action.icon}),(0,l.jsx)(`span`,{className:`alert-action-text`,children:t.action.text})]})]})})},Gc=({attachmentsStyles:e,onCancel:t,onRetry:n})=>{let r=(0,c.useCallback)(t=>e?.downloadTitles?.downloadStartedText?.(t.dataFormatTitle)??`Preparing ${t.dataFormatTitle} file.`,[e?.downloadTitles]),i=(0,c.useCallback)((t,n)=>e?.downloadTitles?.downloadInProgressTitle?.(t,n)??`Downloading file ${t} of ${n}`,[e?.downloadTitles]),a=(0,c.useCallback)((t,n)=>e?.downloadTitles?.downloadInProgressText?.(t,n)??`${t} \u00B7 ${n}`,[e?.downloadTitles]),o=(0,c.useCallback)(t=>t.items.length>1?e?.downloadTitles?.downloadSuccessMultipleTitle?.(t.items.length)??`${t.items.length} files downloaded`:e?.downloadTitles?.downloadSuccessTitle?.(t.dataFormatTitle)??`${t.dataFormatTitle} file downloaded`,[e?.downloadTitles]),s=(0,c.useCallback)(t=>{if(t.items.length>1)return e?.downloadTitles?.downloadSuccessMultipleText?.(t.items.length)??`${t.items.length} files successfully downloaded`;let[n]=t.items;return e?.downloadTitles?.downloadSuccessText?.(n.fileName,n.rowCount)??`${n.fileName} \u00B7 ${n.rowCount} rows`},[e?.downloadTitles]),l=(0,c.useCallback)(t=>{if(t.items.length>1)return e?.downloadTitles?.downloadFailedMultipleText?.(t.items.length)??`${t.items.length} datasets could not be exported`;let[n]=t.items;return e?.downloadTitles?.downloadFailedText?.(n.name)??`${n.name} could not be exported`},[e?.downloadTitles]);return{getStartedAlertDetails:(0,c.useCallback)(n=>({type:d.AlertType.INFO,title:e?.downloadTitles?.downloadStartedTitle??`Download started`,text:r(n),action:{text:e?.downloadTitles?.downloadCancelActionText??e?.downloadTitles?.cancel??`Cancel`,icon:e?.downloadInProgressActionIcon,onClick:t}}),[e?.downloadInProgressActionIcon,e?.downloadTitles,r,t]),getInProgressAlertDetails:(0,c.useCallback)((n,r,o,s)=>({type:d.AlertType.IN_PROGRESS,title:i(r,n.items.length),text:a(s,n.dataFormatTitle),progress:{current:o,total:n.items.length},action:{text:e?.downloadTitles?.downloadCancelActionText??e?.downloadTitles?.cancel??`Cancel`,icon:e?.downloadInProgressActionIcon,onClick:t}}),[e?.downloadInProgressActionIcon,e?.downloadTitles,a,i,t]),getSuccessAlertDetails:(0,c.useCallback)(e=>({type:d.AlertType.SUCCESS,title:o(e),text:s(e)}),[s,o]),getErrorAlertDetails:(0,c.useCallback)(t=>({type:d.AlertType.ERROR,title:e?.downloadTitles?.downloadFailedTitle??`Download failed`,text:l(t),action:{text:e?.downloadTitles?.downloadRetryActionText??`Retry download`,icon:e?.downloadErrorActionIcon,onClick:n}}),[e?.downloadErrorActionIcon,e?.downloadTitles,l,n])}},Kc=300,qc=({attachmentsStyles:e,downloadDataSet:t})=>{let[n,r]=(0,c.useState)(),[i,a]=(0,c.useState)(!1),[o,s]=(0,c.useState)(),l=(0,c.useRef)(null),u=(0,c.useRef)(null),d=(0,c.useRef)(null),f=(0,c.useRef)(!1),p=(0,c.useRef)(!1),m=(0,c.useCallback)(e=>{s(e),r(!0)},[]),h=(0,c.useCallback)(()=>{r(!1)},[]),g=(0,c.useCallback)(()=>{p.current=!0,l.current?.abort(),h()},[h]),_=(0,c.useCallback)(()=>{let e=u.current;!e||!d.current||d.current(e)},[]),v=(0,c.useCallback)(e=>(e instanceof DOMException||e instanceof Error)&&e.name===`AbortError`,[]),{getStartedAlertDetails:y,getInProgressAlertDetails:b,getSuccessAlertDetails:x,getErrorAlertDetails:S}=Gc({attachmentsStyles:e,onCancel:g,onRetry:_}),C=(0,c.useCallback)(async e=>{if(!f.current){f.current=!0,a(!0),p.current=!1,u.current=null;try{let n=[],r=e.items.length>1;r||m(y(e));for(let[i,a]of e.items.entries()){if(p.current)return;r&&m(b(e,i+1,i,a.name));let o=new AbortController;l.current=o;try{await t(a.urn,e.dataFormat,e.language,e.attribute,a.filters,a.fileName,e.isMetadata,o.signal)}catch(e){if(v(e)&&p.current)return;n.push(a),console.error(`Failed to download dataset`,e)}finally{l.current===o&&(l.current=null)}i<e.items.length-1&&await new Promise(e=>window.setTimeout(e,Kc))}if(p.current)return;if(n.length>0){let t={...e,items:n};u.current=t,m(S(t));return}m(x(e))}finally{l.current=null,f.current=!1,a(!1)}}},[t,S,b,y,x,v,m]);return(0,c.useEffect)(()=>{d.current=C},[C]),(0,c.useEffect)(()=>()=>{p.current=!0,l.current?.abort()},[]),{startDownload:(0,c.useCallback)(e=>f.current?!1:(C(e),!0),[C]),isDownloadRunning:i,downloadAlertProps:{isOpen:n,alertDetails:o,attachmentsStyles:e,onClose:h}}};E.ModuleRegistry.registerModules([E.AllCommunityModule]);var Jc=({attachments:e,actions:t,isSystemAttachments:n,isShowAttachments:r,showAdvancedView:i,currentDataQuery:a,dataQueries:o,attachmentInfoList:s,datasets:u,initialSelectedDatasetUrn:f,isDataLoading:m,isDataSetAttachments:h,locale:g,dimensions:_,filters:v,selectDataset:y,onAdvancedViewOpen:x,hideDownloadButton:S,containerClassName:C,isTableSettingsOpen:w,onTableSettingsOpen:T,onTableSettingsClose:E,onGridApiReady:D})=>{let{titles:O,messageStyles:k,attachmentsStyles:A,limitMessages:j,attachmentsConfig:M}=Y(),{isCrossDatasetModeOn:N}=Z(),[P,F]=(0,c.useState)(0),{isOpenedAdvancedView:L,setIsOpenedAdvancedView:R}=I(),[z,B]=(0,c.useState)(d.PopUpState.Closed),[V,H]=(0,c.useState)(!1),[U,W]=(0,c.useState)(!1),G=b.DownloadType.DATA_IN_TABLE,K=(0,c.useMemo)(()=>{if(!N||!o?.some(e=>e.disabled))return u;let e=new Set(o.filter(e=>!e.disabled).map(e=>e.urn));return u?.filter(t=>{let n=(0,b.generateShortUrn)(t?.id,t?.version,t?.agencyID);return e.has(n)})},[u,o,N]),q=e=>{F(e)},ee=(0,c.useCallback)(()=>{x?.(),R(!0),t.updateCurrentDataQuery(a||o?.[0]),t.updateDataQueries(o),t.updateDatasets(u)},[t,a,o,u,R,x]),J=e[P]||null;(0,c.useEffect)(()=>{H(h&&(u==null||u?.length==0))},[u,h]),(0,c.useEffect)(()=>{w&&J&&!$i(J)&&!ra(J)&&E?.()},[w,J,E]);let te=(0,c.useCallback)(()=>{B(d.PopUpState.Closed)},[B]),ne=M?.isExternaLinkIncludeFilters,re=La(ne,v,a||o?.[0],_),ie=(0,c.useMemo)(()=>{if(o?.length)return new Map(o.map(e=>[e.urn,La(ne,void 0,e)]))},[o,ne]),ae=(0,c.useMemo)(()=>{if(!J||!ra(J))return;let e=J.gridContent?.data??[],t=new Map,n=new Map;for(let r of e){let{dataset:e,datasetTitle:i}=r,a=e?.urn;a&&(t.set(a,(t.get(a)??0)+1),!n.has(a)&&i&&n.set(a,i))}return Array.from(t.entries()).map(([e,t])=>({urn:e,name:n.get(e)??e,rowCount:t,dataQuery:o?.find(t=>t.urn===e)}))},[J,o]),oe=(0,c.useMemo)(()=>{if(J){if($i(J))return J.grid_data?.data?.length;if(ra(J))return J.gridContent?.data?.length}},[J]),{startDownload:se,isDownloadRunning:ce,downloadAlertProps:le}=qc({attachmentsStyles:A,downloadDataSet:t.downloadDataSet});if(!e||e.length===0)return null;let ue=!L&&V||!!m;return(0,l.jsx)(l.Fragment,{children:L&&!r?(0,l.jsx)(_a,{icon:k?.advanceViewIcon,title:k?.openAdvanceViewTitle??`Opened in Advanced view`}):(0,l.jsxs)(`div`,{className:ss(`space-y-3 max-w-full max-h-full h-full`,!L&&!n?`pt-5`:`pt-0`,`flex flex-col pb-1`,C),children:[!L&&K?.length!=null&&K?.length>0&&(0,l.jsx)(ja,{datasets:K,initialSelectedDatasetUrn:f,locale:g,selectDataset:y}),ue?(0,l.jsx)(d.Loader,{}):(0,l.jsxs)(l.Fragment,{children:[n&&!L&&(0,l.jsx)(ga,{titles:{queryUpdatedManuallyTitle:O?.queryUpdatedManually,setToTitle:O?.setTo,datasetLabel:O?.dataset},datasetIcon:A?.datasetIcon,attachmentInfoList:s,dataQueries:o}),U&&(0,l.jsx)(d.RequestLimitMessage,{limitMessages:j,showAdvancedViewButton:!!J&&ia(J)&&i,onAdvancedViewClick:ee,query:re}),(0,l.jsx)(`div`,{className:(0,p.default)(!L&&u?.length&&`attachments-bordered`,`attachments-wrapper h-full min-h-0`),children:(0,l.jsxs)(`div`,{className:`flex h-full max-w-full flex-col items-center gap-4`,children:[(0,l.jsx)(Wa,{attachments:e,selectedAttachmentIndex:P,selectedAttachment:J,attachmentsStyles:A,externalLink:re,isExternalLinkIncludeFilters:ne,limitMessages:j,onSelectedAttachmentChange:q,onDownloadClick:()=>B(d.PopUpState.Opened),hideDownloadButton:S,showAdvancedView:i,onOpenAdvancedView:ee,isTableSettingsOpen:w,onTableSettingsOpen:T}),J!=null&&(0,l.jsx)(Uc,{selectedAttachment:J,actions:t,attachmentsStyles:A,isDataLoading:m,isOpenedAdvancedView:L,onOpenAdvancedView:ee,showLimitMessage:W,onGridApiReady:D,externalLink:re,externalLinksMap:ie})]})}),(0,l.jsxs)(l.Fragment,{children:[z===d.PopUpState.Opened&&(0,l.jsx)(Ea,{onCloseModal:te,onDownloadStart:se,isDownloadInProgress:ce,dataQuery:a,datasetName:J?.title||``,locale:g,type:G,dimensions:_,filters:v,urn:a?.urn,titles:A?.downloadTitles,rowCount:oe,collapsible:A?.downloadCollapsible,downloadDatasets:ae,limitMessages:j,showLimitMessage:U,externalLink:re}),(0,l.jsx)(Wc,{...le})]})]})]})})},Yc=({label:e,colDef:t})=>!!e.trim()&&!t.suppressColumnsToolPanel;function Xc(e){return e.colId??e.field??null}function Zc(e){return String(e.headerName??e.field??e.colId??``).trim()}function Qc(e){return new Map(e.getColumnState().map(e=>[e.colId,e]))}function $c(e,t){let n=e.getColumnDefs()??[],r=Qc(e),i=[];for(let e of n){let n=Xc(e);if(!n)continue;let a=Zc(e);if(!t({colId:n,label:a,colDef:e}))continue;let o=r.get(n);i.push({id:n,type:`item`,label:a,isChecked:!(o?.hide??!1),draggable:!0,checkable:!0})}let a=e.getColumnState().map(e=>e.colId),o=new Map(a.map((e,t)=>[e,t]));return i.sort((e,t)=>(o.get(e.id)??2**53-1)-(o.get(t.id)??2**53-1))}function el(e,t,n){let r=[...t];return e.map(e=>n.has(e)?r.shift()??e:e)}function tl(e,t){let n=e,r;for(let e of t){if(r=n.find(t=>t.id===e),!r)return;n=r.type===`group`?r.items:r.items??[]}return r?.type===`item`?r:void 0}function nl(e){if(!e.items?.length)return e;if(e.items.every(e=>e.type===`item`)){let t=e.items,n=t.filter(e=>e.isChecked!==!1);if(n.length!==1)return e;let[r]=n;return{...e,items:t.map(e=>e===r?{...e,checkable:!1,draggable:!1}:{...e,draggable:!1})}}let t=e.items.map(e=>{if(e.type!==`group`)return e;let t=e.items.filter(e=>e.type===`item`).filter(e=>e.isChecked!==!1);if(t.length!==1)return e;let[n]=t;return{...e,items:e.items.map(e=>e.type===`item`?e===n?{...e,checkable:!1,draggable:!1}:{...e,draggable:!1}:e)}});return t.every((t,n)=>t===e.items[n])?e:{...e,items:t}}function rl(e,t){let n=[];for(let r of e){if(r.type===`group`){n.push(...rl(r.items,t));continue}if(t?.(r)){n.push(r.id);continue}if(r.items?.length){n.push(...rl(r.items,t));continue}n.push(r.id)}return n}function il({api:e,searchQuery:t,includeColumn:n=Yc,enrichItem:r,onSubItemOrderChange:i,onSubItemVisibilityChange:a}){let[o,s]=(0,c.useState)(0),[l,u]=(0,c.useState)(new Set),f=(0,c.useCallback)(()=>{s(e=>e+1)},[]);oc(e,f);let p=(0,c.useMemo)(()=>!e||!e.getColumnState()?[]:$c(e,n),[e,n,o]),m=(0,c.useMemo)(()=>(r?p.map(e=>e.type===`item`?r(e):e):p).map(e=>e.type===`item`&&e.items?.length?{...e,isExpanded:l.has(e.id)}:e),[p,r,l]),h=(0,c.useMemo)(()=>new Set(p.map(e=>e.id)),[p]),g=(0,c.useMemo)(()=>(0,d.filterDraggableListNodes)(m,t),[m,t]),_=(0,c.useCallback)(t=>{if(!e)return;if(kc(t.itemId)&&a){let{urn:e,dimensionKey:n}=Ac(t.itemId),r=t.path[0];a(e,r,n,!t.nextChecked);return}let n=tl(m,t.path);!n||!h.has(n.id)||(e.applyColumnState({state:[{colId:n.id,hide:!t.nextChecked}]}),f())},[e,m,h,f,a]),v=(0,c.useCallback)(t=>{if(!e)return;if(kc(t.itemId)&&a){let{urn:e,dimensionKey:n}=Ac(t.itemId),r=t.path[0],i=tl(m,t.path);i?.type===`item`&&a(e,r,n,i.isChecked??!0);return}let n=tl(m,t.path);if(!n||!h.has(n.id))return;let r=!(e.getColumnState().find(e=>e.colId===n.id)?.hide??!1);e.applyColumnState({state:[{colId:n.id,hide:r}]}),f()},[e,m,h,f,a]);return{items:m,visibleItems:g,handleToggleChecked:_,handleToggleExpanded:(0,c.useCallback)(e=>{let t=e.path[e.path.length-1];u(n=>{let r=new Set(n);return e.nextExpanded?r.add(t):r.delete(t),r})},[]),handleItemClick:v,handleItemsChange:(0,c.useCallback)(t=>{if(!e)return;let n=e.getColumnState().map(e=>e.colId),r=new Set(p.map(e=>e.id)),a=el(n,rl(t,e=>h.has(e.id)),r);if(e.applyColumnState({state:a.map(e=>({colId:e})),applyOrder:!0}),f(),i){for(let e of t)if(!(e.type!==`item`||!h.has(e.id)||!e.items))if(e.items.some(e=>e.type===`group`))for(let t of e.items){if(t.type!==`group`)continue;let n=t.items.filter(e=>e.type===`item`);if(n.length<=1)continue;let r=t.id,a=n.map(e=>Ac(e.id).dimensionKey);i(r,e.id,a)}else{let t=e.items.filter(e=>e.type===`item`);if(t.length<=1||!kc(t[0].id))continue;let{urn:n}=Ac(t[0].id),r=t.map(e=>Ac(e.id).dimensionKey);i(n,e.id,r)}}},[e,p,h,f,i])}}function al({api:e,includeColumn:t,enrichItem:n,renderLabel:r,onSubItemOrderChange:i,onSubItemVisibilityChange:a,searchPlaceholder:o}){let[s,u]=(0,c.useState)(``),p=(0,c.useCallback)(e=>{u(e)},[u]),m=(0,c.useCallback)(()=>u(``),[u]),h=(0,c.useMemo)(()=>(0,l.jsx)(`button`,{type:`button`,onClick:m,children:(0,l.jsx)(f.IconX,{className:`size-4 text-neutrals-1000`})}),[m]),{visibleItems:g,handleItemsChange:_,handleToggleChecked:v,handleToggleExpanded:y,handleItemClick:b}=il({api:e,includeColumn:t,searchQuery:s,enrichItem:(0,c.useCallback)(e=>nl(n?n(e):e),[n]),onSubItemOrderChange:i,onSubItemVisibilityChange:a});return(0,l.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-2 px-5`,children:[(0,l.jsx)(d.InputWithIcon,{inputId:`columns-search-input`,containerClasses:`items-center filters-search-input gap-1 !p-2`,cssClass:`filters-search-input-text`,placeholder:o||`Search`,iconBeforeInput:(0,l.jsx)(f.IconSearch,{className:`size-4 text-neutrals-1000`}),iconAfterInput:s?h:void 0,value:s,onChange:p}),(0,l.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:(0,l.jsx)(d.DraggableList,{items:g,onItemsChange:_,onToggleChecked:v,onToggleExpanded:y,onItemClick:b,renderLabel:r})})]})}function ol(){let{dataQueries:e,structuresMap:t,locale:n,gridViewMode:r}=dc(),i=ys(),a=(0,c.useMemo)(()=>{let a=new Map;if(!i||!e?.length)return a;for(let{urn:o}of e){let e=i.getDimensionsScheme(o),s=!!e?.other.length,c=r===cc.Extended&&!!e?.indicators?.length;if(!s&&!c)continue;let l=n?(0,b.getLocalizedName)(t?.get(o)?.dataflows?.[0],n)??o:o,u=[...e?.other??[],...c?e?.indicators??[]:[]];for(let e of u){let t=a.get(e);t?t.push(l):a.set(e,[l])}}return a},[i,e,t,n,r]);return(0,c.useMemo)(()=>{if(!a.size)return;function e(e){let t=a.get(e.id);return t?.length?(0,l.jsxs)(`span`,{className:`flex w-full items-center gap-2 overflow-hidden`,children:[(0,l.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:e.label,children:e.label}),(0,l.jsx)(`span`,{className:`h5 min-w-0 flex-1 truncate text-right text-neutrals-700`,title:t.join(`, `),children:t.join(`, `)})]}):e.label}return e},[a])}var Q=function(e){return e.Header=`header`,e.Cell=`cell`,e}({}),$=function(e){return e.Focus=`focus`,e.Default=`default`,e}({}),sl=`grid gap-1`,cl={gridTemplateColumns:`44px 23px 23px`,gridTemplateRows:`repeat(4, 14px)`},ll={gridTemplateColumns:`repeat(4, 21.5px)`,gridTemplateRows:`repeat(4, 14px)`},ul={[Q.Header]:{[$.Focus]:`content-center rounded-sm border border-accent-300 bg-accent-300 text-center text-[8px] font-semibold`,[$.Default]:`rounded-sm bg-semantic-warning border border-accent-300`},[Q.Cell]:{[$.Focus]:`content-center rounded-sm border border-accent-300 bg-hues-100 pl-1 text-left text-[8px] font-semibold`,[$.Default]:`rounded-sm bg-neutrals-100 border border-accent-300`}},dl=({rows:e,style:t})=>(0,l.jsx)(`div`,{className:sl,style:t,children:e.map((e,t)=>(0,l.jsx)(c.Fragment,{children:e.map((e,n)=>(0,l.jsx)(`span`,{className:ss([ul[e.role][e.emphasis],!e.label&&`text-transparent`]),children:e.label||` `},`${t}-${n}`))},t))}),fl=[[{role:Q.Header,emphasis:$.Focus,label:`D1.D2.D3`},{role:Q.Header,emphasis:$.Default},{role:Q.Header,emphasis:$.Default}],[{role:Q.Cell,emphasis:$.Focus,label:`C1.A`},{role:Q.Cell,emphasis:$.Default},{role:Q.Cell,emphasis:$.Default}],[{role:Q.Cell,emphasis:$.Focus,label:`C1.B`},{role:Q.Cell,emphasis:$.Default},{role:Q.Cell,emphasis:$.Default}],[{role:Q.Cell,emphasis:$.Focus,label:`C2.X`},{role:Q.Cell,emphasis:$.Default},{role:Q.Cell,emphasis:$.Default}]],pl=()=>(0,l.jsx)(dl,{rows:fl,style:cl}),ml=[[{role:Q.Header,emphasis:$.Focus,label:`D1`},{role:Q.Header,emphasis:$.Focus,label:`D2`},{role:Q.Header,emphasis:$.Focus,label:`D3`},{role:Q.Header,emphasis:$.Default}],[{role:Q.Cell,emphasis:$.Focus,label:`C1`},{role:Q.Cell,emphasis:$.Focus,label:`A`},{role:Q.Cell,emphasis:$.Focus},{role:Q.Cell,emphasis:$.Default}],[{role:Q.Cell,emphasis:$.Focus,label:`C1`},{role:Q.Cell,emphasis:$.Focus,label:`B`},{role:Q.Cell,emphasis:$.Focus},{role:Q.Cell,emphasis:$.Default}],[{role:Q.Cell,emphasis:$.Focus,label:`C2`},{role:Q.Cell,emphasis:$.Focus},{role:Q.Cell,emphasis:$.Focus,label:`X`},{role:Q.Cell,emphasis:$.Default}]],hl=()=>(0,l.jsx)(dl,{rows:ml,style:ll}),gl=({title:e,description:t,visual:n,mode:r,activeMode:i,onClick:a})=>(0,l.jsxs)(`button`,{type:`button`,className:ss([`flex items-center gap-3 rounded border p-1`,r===i&&`border-primary`]),onClick:()=>a(r),children:[(0,l.jsx)(`div`,{className:`rounded-[5px] bg-neutrals-100 px-2 py-1`,children:n}),(0,l.jsxs)(`div`,{className:`flex flex-col gap-1 text-left`,children:[(0,l.jsx)(`span`,{className:`h4 text-neutrals-1000`,children:e}),(0,l.jsx)(`span`,{className:`caption text-neutrals-800`,children:t})]})]}),_l=({gridViewMode:e,onModeChange:t,compactViewTitle:n,compactViewDescription:r,extendedViewTitle:i,extendedViewDescription:a})=>(0,l.jsxs)(`div`,{className:`mx-5 my-3 flex flex-col gap-2`,children:[(0,l.jsx)(gl,{title:n||`Compact view`,description:r??(0,l.jsxs)(l.Fragment,{children:[`Related dimensions `,(0,l.jsx)(`strong`,{children:`combined into a single column.`})]}),visual:(0,l.jsx)(pl,{}),mode:cc.Compact,activeMode:e,onClick:t}),(0,l.jsx)(gl,{title:i||`Extended view`,description:a??(0,l.jsxs)(l.Fragment,{children:[`Each dimension displayed in `,(0,l.jsx)(`strong`,{children:`separate column.`})]}),visual:(0,l.jsx)(hl,{}),mode:cc.Extended,activeMode:e,onClick:t})]}),vl=`table-settings-side-panel`,yl=()=>{let{gridApi:e,initialColumnsState:t,structuresMap:n,locale:r,dataQueries:i,dimensionCustomization:a,setDimensionKeyOrder:o,setDimensionKeyHidden:s,resetDimensionCustomization:u,clearUserColumnState:d,clearInitialColumnState:p,gridViewMode:m,setGridViewMode:h,texts:g,resetIcon:_}=dc(),v=ys(),y=ol(),b=(0,c.useCallback)(e=>{d(),p(),u(),h(e)},[d,p,u,h]),x=(0,c.useCallback)(()=>{e&&(d(),t?ic(e,t):e.resetColumnState(),u())},[d,e,t,u]),S=(0,c.useMemo)(()=>{if(!(m!==cc.Compact||!v||!n||!r||!i?.length))return Fc({dataQueries:i,structuresMap:n,getDimensionsScheme:v.getDimensionsScheme,getDimensionConfig:(e,t)=>v.map[e]?.[t],locale:r,dimensionCustomization:a})},[m,v,n,r,i,a]);return e?(0,l.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,l.jsx)(_l,{gridViewMode:m,onModeChange:b,compactViewTitle:g?.compactViewTitle,compactViewDescription:g?.compactViewDescription,extendedViewTitle:g?.extendedViewTitle,extendedViewDescription:g?.extendedViewDescription}),(0,l.jsx)(`hr`,{className:`border-neutrals-500`}),(0,l.jsxs)(`div`,{className:`mx-5 mb-4 mt-5 flex items-center justify-between`,children:[(0,l.jsx)(`h3`,{className:`text-neutrals-1000`,children:g?.columnsDisplayTitle||`Columns display`}),(0,l.jsx)(`button`,{type:`button`,className:`text-neutrals-800`,onClick:x,children:_??(0,l.jsx)(f.IconRotate,{className:`size-4 rotate-180`})})]}),(0,l.jsx)(al,{api:e,enrichItem:S,renderLabel:y,onSubItemOrderChange:o,onSubItemVisibilityChange:s,searchPlaceholder:g?.columnsSearchPlaceholder})]}):null},bl=e=>{let{attachmentsStyles:t}=Y(),{onGridApiReady:n}=dc(),r=fs(),i=(0,c.useCallback)(()=>{r&&r.openPanel({id:vl,scope:`advanced`,title:t?.tableSettings||`Table settings`,headerClassName:`border-b border-neutrals-500`,content:(0,l.jsx)(yl,{})})},[r,t?.tableSettings]);return(0,l.jsx)(Jc,{...e,isTableSettingsOpen:r?.isPanelOpen(`table-settings-side-panel`)??!1,onTableSettingsOpen:r?i:void 0,onTableSettingsClose:r?.closePanel,onGridApiReady:n})},xl=(e,t,n)=>(0,c.useMemo)(()=>e?.map(e=>{let r=t?.get(e.urn)?.dataflows?.[0],i=(0,b.getLocalizedName)(r,n??``),a=i?(0,b.generateShortUrn)(i,``,r?.agencyID):void 0;return a?{...e,title:a}:e}),[e,n,t]),Sl=({actions:e,dataQueries:t,datasetDimensionsMetadataMap:n,structureDataMaps:r,datasetIcon:i,locale:a,onMultipleDataFiltersChange:o})=>{let s=(0,c.useRef)(r?.constraintsMap),[l,u]=(0,c.useState)(),d=(0,c.useMemo)(()=>wr(t,r),[t,r]),f=xl(t,r?.structuresMap,a),p=(0,c.useCallback)(e=>{let t=e.filterType===`dataset`?e.datasetUrn:e.sourceDatasetUrns?.[0];return t?s.current?.get(t):void 0},[]),m=(0,c.useCallback)(e=>Li(e,r?.dimensionsMap,r?.structuresMap),[r?.dimensionsMap,r?.structuresMap]),g=(0,c.useCallback)(e=>m(e).codelistUrn,[m]),_=(0,c.useCallback)(e=>m(e).sourceArtefactUrn,[m]),v=(0,c.useCallback)((i,a)=>{let o=pr(i,s.current,!1,n),c=a??t,l=Dr(c,o,e,n,i),u=Er(c,o,e,n,i);return{promise:Promise.allSettled(u).then(e=>{let t=jr(s.current||r?.constraintsMap,Ar(e));return{filtersMap:o,constraints:t,structureDataMaps:{...r,constraintsMap:t}}}),shouldTrackLoading:l}},[e,t,n,r]),y=(0,c.useCallback)(e=>{let t=pr(e,s.current,!1,n),i=s.current||r?.constraintsMap||new Map;return{filtersMap:t,constraints:i,structureDataMaps:{...r,constraintsMap:i}}},[n,r]),b=(0,c.useCallback)((e,t,r)=>{let{filtersMap:i,changed:o}=Vi(t.filtersMap,t.structureDataMaps,r,a,n);return o?{filters:xr(i,t.structureDataMaps,a,n),changed:!0}:{filters:e,changed:!1}},[n,a]),x=(0,c.useCallback)((e,t)=>xr(t.filtersMap,t.structureDataMaps,a,n),[n,a]),S=(0,c.useCallback)(e=>{s.current=e.constraints},[]),C=(0,c.useCallback)(e=>p(e),[p]),w=(0,c.useCallback)(e=>Nr(e,t,r?.dimensionsMap),[t,r?.dimensionsMap]),E=(0,c.useCallback)((e,t,r,i)=>{let a=pr(t,s.current,!1,n),o=pr(e,s.current,!1,n),c=(0,T.default)(w(a),w(o)),l=(0,T.default)([...i].sort(),[...r].sort());return c&&l},[n,w]),D=(0,c.useCallback)((e,i)=>{let c=t?.map(e=>({...e,disabled:i.has(e.urn)})),l=pr(e,s.current,!1,n,i),u=xr(l,{...r,constraintsMap:s.current},a,n),d=w(l),f=mr(u,t?.map(e=>e.urn)??[],t,n,l),p=(t?.map(e=>e.urn)??[]).filter(e=>!f.has(e));for(let e of p){let t=l.get(e);t&&l.set(e,t.map(e=>!e.isTimeDimension&&e.dimensionValues?.length&&!e.dimensionValues.some(e=>e.isSelectedValue)?{...e,isExcluded:!0}:e))}return o?.(d,s.current,c?.filter(e=>f.has(e.urn)||e.disabled),l,u),{appliedFilters:u,systemMessageFilters:l}},[t,n,w,a,o,r]),O=(0,c.useCallback)((e,n,r)=>{let i=n,a=t?.map(e=>({...e,disabled:r.has(e.urn)})),o=a?.filter(e=>!e.disabled),s=Fr(o,i);return{conversation:e?{...e,messages:da(e.messages,a,s)}:null,nextDataQueries:a?.map(e=>({...e,filters:e.disabled?e.filters??[]:s.get(e.urn)??[]}))??[]}},[t]),k=(0,c.useCallback)(()=>{if(!d)return{status:`pending`};let e=dr(r,a),i=t?.map(t=>{if(!t.disabled)return t;let n=(e.get(t.urn)??[]).filter(e=>e.filterType===`dataset`&&e.id&&!e.isTimeDimension).map(e=>({componentCode:e.id,operator:h.QueryFilterType.IN,values:[]}));return{...t,filters:n}});return{status:`ready`,filters:fr(e,i,r?.constraintsMap,n)}},[t,n,d,a,r]),A=(0,c.useCallback)(()=>{u(s.current)},[]),j=(0,c.useCallback)(()=>{s.current=l},[l]),M=(0,c.useCallback)((e,t)=>{let n=t?.find(t=>t?.urn===e?.datasetUrn);return e?.datasetUrn?n?[n]:[]:t},[]),N=(0,c.useCallback)(e=>e,[]);return{mode:`multi`,constraints:(0,c.useMemo)(()=>({startFetch:v,fallbackResult:y,cleanIncompatible:b,fill:x,commit:S,getRebuildConstraints:C}),[v,y,b,x,S,C]),apply:(0,c.useMemo)(()=>({getIsFiltersUnchanged:E,runApply:D}),[E,D]),buildSystemMessage:O,init:(0,c.useMemo)(()=>({prepareInit:k}),[k]),getConstraintsForFilter:p,getCodelistUrnForFilter:g,getSourceArtefactUrn:_,remember:A,restore:j,getDeleteTargets:M,getClearTargets:N,controllerOptions:(0,c.useMemo)(()=>({initialConstraintsMap:r?.constraintsMap,datasetIcon:i,structuresMap:r?.structuresMap,dataQueries:f}),[r,i,f])}},Cl=e=>{let t=ys();return Oi(e,Sl({actions:e.actions,dataQueries:e.dataQueries,datasetDimensionsMetadataMap:t.map,structureDataMaps:e.structureDataMaps,datasetIcon:e.datasetIcon,locale:e.locale,onMultipleDataFiltersChange:e.onMultipleDataFiltersChange}))},wl=e=>(0,l.jsx)(gi,{...Cl(e)}),Tl=({filtersProps:e,actions:t,attachments:n,attachmentsDataQuery:r,dataQueries:i,dimensions:a,locale:o,isDataLoading:s,setIsFiltering:u,filters:d,onFiltersChange:f})=>{let{titles:p,limitMessages:m}=Y(),h={getConstraints:t.getConstraints,getAvailableHierarchies:e.actions?.getAvailableHierarchies,getHierarchy:e.actions?.getHierarchy},{isCrossDatasetModeOn:g}=Z();return(0,c.useEffect)(()=>{s||u?.(!1)},[s,u]),(0,l.jsx)(`div`,{className:`h-full min-h-0 rounded bg-white`,children:(0,l.jsxs)(`div`,{className:`flex h-full flex-col gap-4 overflow-x-hidden`,children:[(0,l.jsxs)(`div`,{className:`data-details-header flex items-center justify-between`,children:[(0,l.jsx)(`h2`,{children:p?.content??`Content`}),g?(0,l.jsx)(wl,{attachmentsDataQuery:r,dataQueries:i,updateDataQueries:t?.updateDataQueries,locale:o,actions:h,dimensions:a,...e,onFiltersChange:f,limitMessages:m}):(0,l.jsx)(ma,{attachmentsDataQuery:r,dataQueries:i,updateDataQueries:t?.updateDataQueries,locale:o,actions:h,dimensions:a,...e,onFiltersChange:f,limitMessages:m})]}),(0,l.jsx)(`div`,{className:`advanced-view-attachments-container min-h-0 flex-1`,children:(0,l.jsx)(bl,{attachments:n,currentDataQuery:r,dataQueries:i,dimensions:a,actions:t,isShowAttachments:!0,isDataSetAttachments:!0,isDataLoading:s,locale:o,filters:d})})]})})},El=({isShowAgency:e,isShowDatasetBadge:t,dataset:n,data:r,structures:i,metadataSettings:a,locale:o,getDatasetUpdatedTime:s,externalLink:u,datasetIcon:p,externalLinkIcon:m,metadataButtonClassName:h,metadataIconClassName:g,infoSegmentContainerClassName:_,infoSegmentHeaderClassName:v,nameAndMetadataContainerClassName:y})=>{let{titles:x}=Y(),[S,C]=(0,c.useState)(``),[w,T]=(0,c.useState)(!1),E=(0,c.useRef)(null),[D,O]=(0,c.useState)(``),[k,A]=(0,c.useState)(``),[j,M]=(0,c.useState)(!1),{onboardingFileSchema:N,isShowOnboarding:P}=G(),{isOpenedAdvancedView:F}=I(),L=fs(),{isMetadataInSidePanel:R}=Z(),{getDatasetLastUpdated:z}=vs(),[B,V]=(0,c.useState)(!1),H=(0,c.useMemo)(()=>a?.isMetadataDescription?Go(n,S,o,x):[],[n,S,o,a?.isMetadataDescription,x]),U=(0,c.useMemo)(()=>[...a?.isMetadataDescription?[]:[Wo(n,o,x)],...Qo(Xo(r),(0,b.getStructureComponentsMap)(i),o)],[r,n,o,a?.isMetadataDescription,i,x]),W=(0,c.useMemo)(()=>Ko(n,S,o,x),[n,S,o,x]),K=(0,c.useCallback)(()=>{if(R&&L){L.openPanel({id:`dataset-metadata-side-panel`,scope:F?`advanced`:`conversation`,title:`Dataset Metadata`,bodyClassName:`overflow-hidden`,content:(0,l.jsx)(Lo,{locale:o,metadata:U,metadataDescription:H,datasetInfo:W,externalLink:u})}),V(!0);return}T(!0)},[H,U,W,u,R,F,o,L]),q=(0,c.useCallback)(()=>{T(!1),V(!0)},[]);(0,c.useEffect)(()=>{C(s&&s(U)||xs(z(n),o))},[n,o,U,s,z]),(0,c.useEffect)(()=>{if(P){let{title:e,description:t}=$e(X.METADATA_PER_DATASET,x);O(e),A(t)}},[x,P]),(0,c.useEffect)(()=>{P&&M(N?.lastDisplayedElement===X.METADATA_PER_DATASET)},[N?.lastDisplayedElement,P]);let ee=(e,t)=>(0,l.jsxs)(`div`,{className:ss(`flex gap-1 text-neutrals-1000`,_),children:[(0,l.jsxs)(`span`,{className:ss(`text-neutral-800`,v),children:[e,`:`]}),(0,l.jsx)(`span`,{children:t})]});return(0,l.jsxs)(`div`,{className:`dataset-info flex flex-col gap-3 bg-white`,children:[t&&(0,l.jsxs)(`div`,{className:`bg-accent-500 body-2 flex w-fit items-center gap-1 rounded-[20px] px-2 py-1`,children:[p,x?.dataset??`Dataset`]}),(0,l.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,l.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,l.jsxs)(`div`,{role:`heading`,"aria-level":4,className:ss(`flex gap-1 items-center h4`,y),children:[(0,l.jsx)(`div`,{ref:E,children:(0,l.jsx)(d.IconButton,{title:x?.metadata??`View details`,buttonClassName:ss(`!text-neutrals-1000 !border-none !w-4 !h-4 !p-0 shrink-0`,h),icon:(0,l.jsx)(To,{className:ss(`size-4`,g)}),onClick:K})}),(0,l.jsx)(`span`,{children:(0,b.getLocalizedName)(n,o)})]}),u&&(0,l.jsx)(`a`,{href:u,target:`_blank`,rel:`noopener noreferrer`,children:m||(0,l.jsx)(f.IconExternalLink,{className:`size-4 shrink-0 cursor-pointer text-primary`})})]}),(0,l.jsxs)(`div`,{className:`body-3 flex items-center gap-2`,children:[e&&(0,l.jsxs)(l.Fragment,{children:[ee(x?.agency??`Agency`,n?.agencyID??``),(0,l.jsx)(`div`,{"aria-hidden":`true`,className:`h-[14px] border-l border-l-neutral-500`})]}),ee(x?.lastUpdated??`Last updated`,S)]})]}),j&&(0,l.jsx)(ct,{reference:E,title:D,description:k,onReferenceClick:K,shouldCloseTooltip:B}),w&&(0,l.jsx)(jo,{locale:o,metadata:U,metadataDescription:H,isOpenMetadata:w,onCloseMetadata:q})]})},Dl=({locale:e,isShowShare:t,shareConversationProps:n,conversation:r})=>{let{titles:i}=Y(),{setIsOpenedAdvancedView:a}=I(),o=(0,c.useRef)(null),[s,u]=(0,c.useState)(``),[f,m]=(0,c.useState)(``),[h,g]=(0,c.useState)(!1),{onboardingFileSchema:_,isShowOnboarding:v}=G();return(0,c.useEffect)(()=>{if(v){let{title:e,description:t}=$e(X.EXIT_ADVANCED_VIEW,i);u(e),m(t)}},[i,v]),(0,c.useEffect)(()=>{v&&g(_?.lastDisplayedElement===X.EXIT_ADVANCED_VIEW)},[_?.lastDisplayedElement,v]),(0,l.jsxs)(`header`,{className:(0,p.default)(`bg-white px-6 py-4 flex justify-between items-center mobile:px-1`,`advanced-view-header`),children:[(0,l.jsxs)(`div`,{className:(0,p.default)(`flex gap-3 items-center`,!t&&`justify-between w-full`,`advanced-view-header-title`),children:[(0,l.jsx)(`div`,{ref:o,className:(0,p.default)(!t&&`order-2`,`flex`),children:(0,l.jsx)(d.CloseButton,{btnClassNames:`button-close`,onClick:()=>a(!1),title:i?.close||`Close`})}),h&&(0,l.jsx)(ct,{reference:o,title:s,description:f,onReferenceClick:()=>a(!1),shouldMoveToNextStep:!0}),(0,l.jsx)(`h2`,{children:i?.advanceViewTitle??`Advanced view`})]}),t&&(0,l.jsx)(Ve,{locale:e,conversation:r,...n})]})};function Ol(e,t,n,r,i,a,o,s,c){let l=kl(e,n),u=Al(e,t,n,r,i,a,c?.startPeriod&&c.endPeriod?(0,b.getAdditionalColumns)(s,c):[]);return[mo(e,t?.data,n,i,a,o),...l,...u,ho(e,t?.data,n,void 0,a,o)]}function kl(e,t){let n=e.conceptSchemes||[],r=e.codelists||[],i=(0,b.getDimensions)(e)?.dimensions||[];return i.map(e=>{let{codeList:a,concept:o}=pc(e,n,r);return{headerName:(0,b.getLocalizedName)(o,t),field:e.id,colId:e.id,valueGetter:e=>{let{data:n,colDef:r}=e,o=r.field;return hc(i,o,a,n,t)},...oo,tooltipValueGetter:e=>e.value}})}function Al(e,t,n,r,i,a,o){return Ml(Nl(o,(0,b.getTimePeriods)(t)),(e,t)=>jl(e,t||e,r,a),e,n,i,a)}var jl=(e,t,n=h.defaultFormatNumbers,r)=>({headerName:xt(t,r),colId:e,field:e,type:`numericColumn`,suppressColumnsToolPanel:!0,sortable:!1,width:200,cellClass:[`justify-end`,`cell-with-meta`],valueFormatter:e=>(0,h.formatNumberBySign)(e.value,n)}),Ml=(e,t,n,r,i,a)=>{let o=[];return e.sort((e,t)=>(0,b.sortPeriods)(e,t)).forEach(e=>{o.push({headerName:e.toString(),field:e.toString(),...t(e.toString()),valueGetter:e=>e.data[e.column.getColId()]?.value?.[0]?.value||null,cellClass:ao,cellRenderer:so,width:200,cellRendererParams:{dataSetData:n,locale:r,metadataSettings:i,titles:a}})}),o},Nl=(e=[],t=[])=>{if(!e.length)return t;if(!t.length)return e;let n=t.some(e=>(0,b.isYearly)(e)),r=t.some(e=>(0,b.isSemiAnnually)(e)),i=t.some(e=>(0,b.isQuarterly)(e)),a=t.some(e=>(0,b.isMonthly)(e)),o=t.some(e=>(0,b.isWeekly)(e)),s=t.some(e=>(0,b.isDaily)(e)),c=e.filter(e=>(0,b.isYearly)(e)?n:(0,b.isSemiAnnually)(e)?r:(0,b.isQuarterly)(e)?i:(0,b.isMonthly)(e)?a:(0,b.isWeekly)(e)?o:(0,b.isDaily)(e)?s:!0);return Array.from(new Set([...c,...t]))};function Pl(e,t,n){let r=t.map(e=>e.id).filter(e=>e!=null);return Fl(e,r,n.map(e=>e.id).filter(e=>e!=null),r)}var Fl=(e,t,n,r)=>{let i={};for(let a of e){let e=zl(a,t),o=Il(e,r),s=i[o];if(s==null){s={},i[o]=s;for(let t of r)s[t]=e[t]}let c=Hl(a.attributes);if(Ul(s,o,c,a),!a.values.length){Rl(s,e,n);continue}for(let t of a.values){let r=Hl(t.obsAttributes);Ul(s,o,c,a),Rl(s,e,n,t.dimensionAtObservation,Bl(a,t),r)}}return Object.values(i)},Il=(e,t)=>t.map(t=>e[t]).join(`_`),Ll=(e,t,n)=>t.map(t=>t===`TIME_PERIOD`?n:e[t]).join(`_`),Rl=(e,t,n,r,i,a)=>{let o=Ll(t,n,r);e[o]={value:i,obsAttributes:a}},zl=(e,t)=>{let n={},r=e.name.split(`.`);for(let e=0;e<t.length;e+=1)n[t[e]]=r[e];return n},Bl=(e,t)=>{let n=Vl(e.attributes);if(n)return[n];let r=Vl(t.obsAttributes);return r?[r]:t.values},Vl=(e=[])=>e.find(({name:e})=>e===`OBS_VALUE`),Hl=(e=[])=>e.filter(({value:e})=>e),Ul=(e,t,n,r)=>{e.attributes??=n,e.id=t,e.originalData=r},Wl=`#EEEEEE`,Gl=`#777777`;function Kl(e,t,n){let r={animation:!1,tooltip:{trigger:`axis`,appendToBody:!0,formatter:e=>{let t=e[0].axisValueLabel+`<br/>`;return e.forEach(e=>{e.value!==null&&e.value!==void 0&&(t+=e.marker+` `+e.seriesName+`: `+e.value+`<br/>`)}),t}},legend:{bottom:0},grid:{left:`3%`,right:`3%`,bottom:`40px`,containLabel:!0},xAxis:{...ql(n?.ticksColor,n?.labelsColor),type:`category`,boundaryGap:!1,data:e},yAxis:{...ql(n?.ticksColor,n?.labelsColor),type:`value`},series:t};return n?.colors!=null&&(r.color=n.colors),r}function ql(e=Wl,t=Gl){return{splitLine:{show:!0,showMaxLine:!1,lineStyle:{color:[e]}},axisTick:{show:!1},axisLabel:{color:t},axisLine:{lineStyle:{color:e}}}}function Jl(e,t,n,r){return t.map(t=>{let i=(0,b.getDimensions)(n)?.dimensions||[],a=i?.find(e=>e.id===t);if(a==null)return e[t]||``;let{codeList:o}=pc(a,n.conceptSchemes||[],n.codelists||[]);return hc(i,t,o,e,r)}).join(` - `)}function Yl(e,t){let n=[...t?.metadata?.indicatorDimensions||[]].filter(e=>e!=null),r=((0,b.getDimensions)(e)?.dimensions)?.filter(e=>e.id!=null&&!n.includes(e.id)&&t?.metadata?.countryDimension!==e.id).map(e=>e.id).filter(e=>e!=null)||[];return[...n,...r]}function Xl(e,t,n){let r={};return e.forEach(e=>{let i=Zl(e,t,n);r[i]||(r[i]={rows:[]}),r[i].rows.push(e)}),Object.keys(r).map(e=>r[e])}function Zl(e,t,n){let r=n.dataStructures?.[0]?.dataStructureComponents?.dimensionList?.dimensions||[];return t.map(t=>r?.find(e=>e.id===t)==null?e[t]||``:mc(r,t,e)).join(` - `)}function Ql(e,t){let n={};return e.forEach(e=>n[e]=$l(e,t)),{nonUniqDimensions:e.filter(e=>!n[e])}}function $l(e,t){let n=t.map(t=>eu(e,t));return new Set(n).size===1}function eu(e,t){return t[e]}var tu=`line`,nu=10,ru=2;function iu(e){return typeof e==`number`?Number.isFinite(e):typeof e==`string`&&e.trim()!==``?Number.isFinite(Number(e)):!1}function au(e){let t=(e.groups??[]).flatMap(e=>e.units);return[...e.units,...t].some(e=>e.isPlottable)}function ou(e,t,n,r,i){let a=gu(t,e,n,r,i,{includeChartData:!1}),o=(0,b.getTimePeriods)(t).sort((e,t)=>(0,b.sortPeriods)(e,t)),{nonUniqDimensions:s}=Ql(Yl(e,n),a);return{units:Xl(a,s,e).map(t=>lu(t,e,n,o,r,i))}}function su(e,t,n,r,i){let a;return()=>(a??=ou(e,t,n,r,i),a)}function cu(e,t,n,r,i,a){return lu({rows:[e]},n,r,t,i,a)}function lu(e,t,n,r,i,a){let o=mu(e.rows,t,n,i),s=o?.find(e=>b.FREQUENCY_DIMENSION_ID.includes(e?.id))?.id,c=du(r,e?.rows?.[0],s),l=fu(e.rows.length>nu?e.rows.slice(0,nu):e.rows,t,n,i,c);return{rows:e.rows,limitedByRowsAmountTo:e.rows.length>nu?nu:void 0,dimensions:o,config:Kl(c,l,a),isPlottable:uu(l)}}function uu(e){return e.some(e=>e.data.filter(iu).length>=ru)}function du(e,t,n){if(n){let r=t?.[n];if(r===b.Periods.MONTHLY)return e?.filter(e=>(0,b.isMonthly)(e));if(r===b.Periods.QUARTERLY)return e?.filter(e=>(0,b.isQuarterly)(e));if(r===b.Periods.ANNUAL)return e?.filter(e=>(0,b.isYearly)(e))}return e}function fu(e,t,n,r,i){return e.map(e=>({name:n?.metadata?.countryDimension==null?``:Jl(e,[n?.metadata?.countryDimension],t,r),type:tu,data:i.map(t=>pu(t,e))}))}function pu(e,t){return t[e]?.value?.[0]?.value||null}function mu(e,t,n,r){let i=n?.metadata?.countryDimension;return((0,b.getDimensions)(t)?.dimensions||[]).map(n=>{if(!(n.id==null||n.id===i))return{id:n.id,title:hu(n,t,r),value:Jl(e[0],[n.id],t,r)}}).filter(e=>e!=null)}function hu(e,t,n){let{concept:r}=pc(e,t.conceptSchemes||[],t.codelists||[]);return(0,b.getLocalizedName)(r,n)||e.id}function gu(e,t,n,r,i,a={}){let o=Pl(e==null?[]:(0,b.getParsedResponse)(e),(0,b.getDimensions)(t)?.dimensions||[],(0,b.getDimensions)(t)?.timeDimensions||[]);return a.includeChartData===!1?o:_u(o,e,t,n,r,i)}function _u(e,t,n,r,i,a){let o=(0,b.getTimePeriods)(t).sort((e,t)=>(0,b.sortPeriods)(e,t));return e.map(e=>({...e,[po]:()=>cu(e,o,n,r,i,a)}))}function vu(e,t,n,r,i,a,o,s,c,l,u){return{columns:Ol(e,t,r,i,a,s,c,l,u),data:gu(t,e,n,r,o)}}function yu(e,t,n,r,i,a,o,s,c,l,u){let d=e.dataflows?.[0]?.names?.[r],f=vu(e,t,n,r,i,a,o,s,c,l,u);return{title:d||s?.dataGrid||`Data Grid`,grid_data:f}}function bu(e){let t=e.replace(/\r\n/g,`
|
|
7
|
+
`);return(0,l.jsx)(`div`,{className:(0,p.default)(`cross-dataset-tabs flex w-full items-center justify-between`,n&&`hide-advance-button`),children:(0,l.jsxs)(`div`,{className:`cross-dataset-tabs-list sm:w-[calc(100%-30px)]`,children:[i.map((e,t)=>(0,l.jsxs)(`span`,{className:`cross-dataset-tabs-item-wrapper`,children:[(0,l.jsx)(`span`,{className:`cross-dataset-tabs-item`,title:e.title,children:e.title}),t<i.length-1&&(0,l.jsx)(`span`,{className:`cross-dataset-tabs-separator`,"aria-hidden":`true`})]},e.urn)),a>0&&(0,l.jsxs)(`span`,{className:`cross-dataset-tabs-counter`,title:o,children:[`+`,a]})]})})},ja=({datasets:e,locale:t,initialSelectedDatasetUrn:n,selectDataset:r})=>{let{isCrossDatasetModeOn:i}=Z();return i?(0,l.jsx)(Aa,{datasets:e,locale:t}):(0,l.jsx)(Oa,{datasets:e,locale:t,initialSelectedDatasetUrn:n,selectDataset:r})},Ma=(e,t)=>{let n=t?.get(e?.urn),r=n?.conceptSchemes||[],i=n?.codelists||[],a=(0,b.getDimensions)(n);return{structures:n,conceptSchemes:r,codelists:i,dimensions:[...a?.dimensions||[],...a?.timeDimensions||[]]}},Na=(e,t,n,r,i)=>{let a=t?.filter(e=>!e.disabled)??[],o=new Map;return a?.forEach(e=>{let{conceptSchemes:t,codelists:a,dimensions:s}=Ma(e,n);Fa((e?.filters??[]).filter(e=>e.operator!==h.QueryFilterType.EXCLUDED),e?.urn,s,t,a,r,i).forEach(e=>{if(e.valuesTitles?.length){let t=o.get(e.id)??[];o.set(e.id,Array.from(new Set([...t,...e.valuesTitles])))}})}),a?.map(t=>{let a=e?.find(e=>e?.urn===t?.urn),{structures:s,conceptSchemes:c,codelists:l,dimensions:u}=Ma(t,n),d=Pa(Fa(a?.filters||[],t?.urn,u,c,l,r,i),Fa(t?.filters??[],t?.urn,u,c,l,r,i)).map(e=>{if(e.valuesTitles?.length)return e;let t=o.get(e.id);return t?.length?{...e,valuesTitles:t}:null}).filter(e=>e!==null);return{datasetName:(0,b.getLocalizedName)(s?.dataflows?.[0],r),queryFiltersDetails:d}})},Pa=(e,t)=>{let n=new Map(e?.map(e=>[e?.id,e]));return t?.filter(e=>!(0,D.isEqual)(n?.get(e?.id)?.valuesTitles?.sort(),e?.valuesTitles?.sort()))||[]},Fa=(e,t,n,r,i,a,o)=>e?.map(e=>{let s=n.find(t=>t?.id===e?.componentCode),c=(0,b.getConcept)(s?.conceptIdentity||``,r),l=(0,b.findCodelistByDimension)(i,r,s);return{id:Kn(t,e?.componentCode,o)??e?.componentCode,title:(0,b.getLocalizedName)(c,a),valuesTitles:e?.operator===h.QueryFilterType.BETWEEN?[`${_t((0,h.getTimePeriod)(e?.values?.[0]),a)} - ${_t((0,h.getTimePeriod)(e?.values?.[1]),a)}`]:e?.values?.map(e=>(0,b.getLocalizedName)(l?.codes?.find(t=>t?.id===e),a)||e)}}),Ia=(e,t,n)=>{let r=``,i=``;if(e?.timeFilter){let t=decodeURIComponent(e.timeFilter||``)?.split(`:`);r=t[1]||``,i=t[3]||``}else if(t){let e=t?.filters?.find(e=>e.componentCode===b.TIME_PERIOD);r=e?.values?.[0]||``,i=e?.values?.[1]||``}return`&filter=${e?.filterKey||(0,b.getTimeSeriesFilterKey)(n||[],t?.filters||[])}&startPeriod=${r}&endPeriod=${i}`},La=(e,t,n,r)=>{let i=n?.metadata?.datasetUrl;return i?i+(e?Ia(t,n,r):``):``},Ra=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 16 16`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{d:`M2.33325 12.3267L6.33325 8.32001L8.99992 10.9867L14.6666 4.61334L13.7266 3.67334L8.99992 8.98667L6.33325 6.32001L1.33325 11.3267L2.33325 12.3267Z`,fill:`currentColor`})}),za=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 16 16`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M5.50644 4.00043L1.97857 7.52207L1.5 7.99979L1.97857 8.47751L5.50644 11.9991L6.46019 11.0437L3.41088 7.99979L6.46019 4.95587L5.50644 4.00043ZM10.4918 4.00043L14.0197 7.52207L14.4983 7.99979L14.0197 8.47751L10.4918 11.9991L9.53809 11.0437L12.5874 7.99979L9.53809 4.95587L10.4918 4.00043Z`,fill:`currentColor`})}),Ba=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 16 16`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{d:`M2.3999 4V12H13.5999V4H2.3999ZM5.7359 10.8H3.5999V5.2H5.7359V10.8ZM9.0639 10.8H6.9359V5.2H9.0719V10.8H9.0639ZM12.3999 10.8H10.2639V5.2H12.3999V10.8Z`,fill:`currentColor`})}),Va=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 16 16`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M2.18519 10.4815H7.18116C7.31033 10.9089 7.50501 11.3078 7.7535 11.6667H2.18519C1.53333 11.6667 1 11.1333 1 10.4815V2.18519C1 1.53333 1.53333 1 2.18519 1H10.4815C11.1333 1 11.6667 1.53333 11.6667 2.18519V5.02017C11.5296 5.00683 11.3906 5 11.25 5C10.9876 5 10.7307 5.02378 10.4815 5.06931V2.18519H2.18519V10.4815ZM7.69316 6.92288C7.99945 6.45568 8.39531 6.05248 8.85633 5.73769H3.37044V6.92288H7.69316ZM7 9.25C7 8.8544 7.05405 8.47143 7.15517 8.10807H3.37044V9.29326H7.00022L7 9.25ZM3.37044 4.5525H9.29636V3.36731H3.37044V4.5525ZM11.6624 10.9695C12.5981 10.8087 13.2264 9.91979 13.0656 8.98403C12.9049 8.04827 12.016 7.42002 11.0802 7.58078C10.1444 7.74155 9.51618 8.63046 9.67695 9.56621C9.83771 10.502 10.7266 11.1302 11.6624 10.9695ZM11.8656 12.1521C11.9243 12.142 11.9824 12.1303 12.0396 12.1168L14.5611 15.5477L15.5281 14.8371L13.1449 11.5944C13.9785 10.9558 14.4384 9.88763 14.2483 8.78085C13.9753 7.19192 12.4659 6.12513 10.877 6.39811C9.28808 6.67109 8.22129 8.18047 8.49428 9.7694C8.76726 11.3583 10.2766 12.4251 11.8656 12.1521Z`,fill:`currentColor`})}),Ha=({attachment:e,index:t,selectedAttachmentIndex:n,onSelectedAttachmentChange:r,showTabIcon:i,dataGridTitle:a})=>{let{titles:o}=Y(),s=(0,c.useRef)(null),[u,d]=(0,c.useState)(``),[f,m]=(0,c.useState)(``),[h,g]=(0,c.useState)(!1),{onboardingFileSchema:_,isShowOnboarding:v}=G(),y=(0,c.useCallback)((e,t=``)=>i?ta(e)||ea(e)?(0,l.jsx)(Ra,{className:t}):$i(e)||ra(e)?(0,l.jsx)(Ba,{className:t}):Ji(e)?(0,l.jsx)(Va,{className:t}):Xi(e)||na(e)?(0,l.jsx)(za,{className:t}):null:null,[i]),b=(0,c.useCallback)(e=>$i(e)?a||`Data Grid`:e.title,[a]);return(0,c.useEffect)(()=>{if(v&&ea(e)){let{title:e,description:t}=$e(X.CHARTS,o);d(e),m(t)}},[e,o,v]),(0,c.useEffect)(()=>{if(ea(e)&&v){let e=_?.lastDisplayedElement===X.CHARTS;g(e),e&&s?.current?.scrollIntoView({block:`end`,behavior:`smooth`})}},[_?.lastDisplayedElement,e,v]),(0,l.jsxs)(`div`,{ref:s,className:(0,p.default)(`cursor-pointer min-w-30`,`flex items-center gap-1`,`attachment-tab`,n===t?`attachment-tab-active text-primary`:``),onClick:()=>r(t),children:[y(e,`w-4 h-4`),(0,l.jsx)(`h4`,{className:`max-w-[130px] truncate`,title:b(e),children:b(e)}),h&&(0,l.jsx)(ct,{reference:s,title:u,description:f})]},e.index||t)},Ua=({attachments:e,...t})=>(0,l.jsx)(`div`,{className:`attachments-tabs flex w-fit flex-wrap items-center`,children:e.map((e,n)=>(0,l.jsx)(Ha,{attachment:e,index:n,...t},n))}),Wa=({attachments:e,selectedAttachmentIndex:t,selectedAttachment:n,attachmentsStyles:r,externalLink:i,isExternalLinkIncludeFilters:a,limitMessages:o,onSelectedAttachmentChange:s,onDownloadClick:u,hideDownloadButton:m,showAdvancedView:h,onOpenAdvancedView:g,isTableSettingsOpen:_,onTableSettingsOpen:v})=>{let{isTableSettingsFeatureEnabled:y}=Z(),{isOpenedAdvancedView:b}=I(),{titles:x}=Y(),{onboardingFileSchema:S,isShowOnboarding:C}=G(),w=(0,c.useRef)(null),[T,E]=(0,c.useState)(``),[D,O]=(0,c.useState)(``),[k,A]=(0,c.useState)(!1);(0,c.useEffect)(()=>{if(C){let{title:e,description:t}=$e(X.OPEN_ADVANCED_VIEW,x);E(e),O(t)}},[x,C]),(0,c.useEffect)(()=>{if(C){let e=S?.lastDisplayedElement===X.OPEN_ADVANCED_VIEW;A(e),e&&w?.current?.scrollIntoView({block:`center`,behavior:`smooth`})}},[S?.lastDisplayedElement,C]);let j=y&&!h&&!!v&&!!(n&&($i(n)||ra(n))),M=!m&&!!n&&($i(n)||ra(n)),N=!!h&&!b,P=b&&r?.hideDownloadIconInAdvancedView?void 0:r?.downloadIcon,F=!b&&r?.hideDownloadTextInConversationView?``:r?.downloadTitle??``;return(0,l.jsxs)(`div`,{className:`flex w-full min-w-0 items-center justify-between`,children:[(0,l.jsx)(Ua,{dataGridTitle:r?.dataGridTitle,attachments:e,selectedAttachmentIndex:t,showTabIcon:r?.showTabIcon,onSelectedAttachmentChange:s}),(0,l.jsxs)(`div`,{className:`attachments-buttons flex w-fit flex-wrap items-center justify-end gap-x-3`,children:[n&&$i(n)&&a&&(0,l.jsx)(`a`,{href:i,target:`_blank`,rel:`noreferrer`,children:(0,l.jsx)(d.Button,{title:o?.dataExplorer||`Data explorer`,buttonClassName:`text-button-tertiary small-icon-button [&>svg]:h-[16px] [&>svg]:w-[16px] whitespace-nowrap`,iconBefore:o?.dataExplorerIcon})}),M&&(0,l.jsx)(d.Button,{title:F,buttonClassName:`text-button-tertiary small-icon-button !p-0 !h-6`,textClassName:(0,p.default)(`ml-1`,r?.downloadButtonTextClassName),onClick:u,iconBefore:P}),M&&N&&(0,l.jsx)(`span`,{className:`advanced-view-button-divider`,"aria-hidden":`true`}),N&&(0,l.jsx)(`div`,{ref:w,children:(0,l.jsx)(d.Button,{title:r?.advancedViewTitle,buttonClassName:`advanced-view-button`,textClassName:`ml-1 h4 md:hidden`,iconBefore:r?.openAdvancedViewIcon,onClick:g})}),j&&(0,l.jsx)(d.Button,{disabled:_,buttonClassName:`text-button-tertiary !p-0 !h-6`,textClassName:`ml-1 h4`,iconBefore:r?.tableSettingsIcon??(0,l.jsx)(f.IconSettings,{className:`size-4`}),title:r?.tableSettings||`Table settings`,onClick:v}),n&&na(n)&&(0,l.jsx)(d.CopyButton,{title:r?.copyTitle,copiedTitle:r?.copiedTitle,tooltip:r?.copiedTooltip,hoverTooltip:r?.copyHoverTooltip,icon:r?.copyIcon,copiedIcon:r?.copiedIcon,onClick:()=>navigator.clipboard.writeText(n.data??``)})]}),k&&(0,l.jsx)(ct,{reference:w,title:T,description:D,onReferenceClick:g,shouldCloseTooltip:b})]})},Ga=({downloadTitles:e,attachment:t,actions:n,className:r=``})=>{let i=t.url,[a,o]=(0,c.useState)(null);async function s(e){e!=null&&o(await n.getFile(e))}return(0,l.jsxs)(`div`,{className:`rounded-lg border bg-white p-3 transition-colors ${r}`,children:[(0,l.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,l.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,l.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,l.jsx)(`span`,{className:`body-2 truncate text-neutrals-800`,title:t.title,children:t.title})})}),i&&(0,l.jsx)(`div`,{className:`shrink-0`,children:(0,l.jsx)(d.Button,{title:e??`Download`,onClick:()=>s(t.url),buttonClassName:`text-button-tertiary`})})]}),a&&(0,l.jsx)(`div`,{className:`mt-3`,children:(0,l.jsx)(`pre`,{className:`overflow-x-auto rounded-md bg-white p-3`,children:(0,l.jsx)(`code`,{children:JSON.stringify(a,null,2)})})})]})},Ka=`json`;function qa(e){return Ya(e)?Ja(e?.slice(4)):e}function Ja(e){let t=``;if(e)try{t=JSON.stringify(JSON.parse(e),null,2)}catch{t=e.toString()}return t}function Ya(e){return e?.startsWith(Ka)||!1}var Xa=({attachment:e,className:t=``})=>{let n=qa(e.data);return n?(0,l.jsxs)(`div`,{className:`attachment-json rounded-lg border bg-white ${t}`,children:[(0,l.jsx)(`div`,{className:`flex items-center justify-between rounded-t-lg border-b border-neutrals-200 bg-neutrals-100 px-3 py-2`,children:(0,l.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,l.jsx)(`h3`,{className:`text-neutrals-900`,children:e.title})})}),(0,l.jsx)(`div`,{className:`p-3`,children:(0,l.jsx)(`pre`,{className:`max-h-96 overflow-auto whitespace-pre-wrap break-words text-neutrals-800`,children:(0,l.jsx)(`code`,{children:n})})})]}):null},Za=e=>{try{let t=new URL(e);return[`http:`,`https:`,`data:`].includes(t.protocol)}catch{return!1}},Qa=e=>Za(e)?e:``,$a=e=>(0,l.jsx)(`svg`,{width:16,height:16,viewBox:`0 0 16 16`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{d:`M11.3333 4.66667H8.66659V6.00001H11.3333C12.4333 6.00001 13.3333 6.9 13.3333 8C13.3333 9.1 12.4333 10 11.3333 10H8.66659V11.3333H11.3333C13.1733 11.3333 14.6666 9.84 14.6666 8C14.6666 6.16 13.1733 4.66667 11.3333 4.66667ZM7.33325 10H4.66659C3.56659 10 2.66659 9.1 2.66659 8C2.66659 6.9 3.56659 6.00001 4.66659 6.00001H7.33325V4.66667H4.66659C2.82659 4.66667 1.33325 6.16 1.33325 8C1.33325 9.84 2.82659 11.3333 4.66659 11.3333H7.33325V10ZM5.33325 7.33334H10.6666V8.66667H5.33325V7.33334Z`,fill:`currentColor`})}),eo=({attachment:e,openLinkTitle:t,className:n=``})=>{let r=Qa(e.data||``);if(!r)return null;let i=e=>{window.open(e,`_blank`)?.focus()};return(0,l.jsx)(`div`,{className:`max-w-[500px] rounded-lg border bg-white py-3 pl-4 pr-3 ${n}`,children:(0,l.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,l.jsx)(`span`,{className:`mt-1 shrink-0 text-hues-800`,role:`img`,"aria-label":`Link`,children:(0,l.jsx)($a,{width:16,height:16})}),(0,l.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,l.jsx)(`div`,{className:`mb-1`,children:(0,l.jsx)(d.Link,{url:r,title:e.title})}),(0,l.jsx)(`div`,{className:`truncate break-all text-neutrals-600`,children:r})]}),(0,l.jsx)(`div`,{className:`shrink-0`,children:(0,l.jsx)(d.Button,{title:t??`Open link`,onClick:()=>i(r),buttonClassName:`text-button-tertiary`})})]})})},to=({dimensionsInfo:e,isNarrow:t})=>(0,l.jsx)(`div`,{className:(0,p.default)(`sidebar flex min-h-0 flex-col gap-3 overflow-auto`,t?`max-h-[120px] w-full shrink-0`:`w-[176px]`),children:e.map(e=>(0,l.jsxs)(`div`,{className:`flex flex-col`,children:[(0,l.jsx)(`h5`,{className:`text-neutrals-800`,children:e.title}),(0,l.jsx)(`h5`,{className:`font-bold`,children:e.value})]},e.title))}),no=({chart:e,isOpen:t,onClose:n,datasetTitle:r})=>{let{titles:i}=Y(),[a,o]=(0,c.useState)(d.PopUpState.Closed);(0,c.useEffect)(()=>{o(t?d.PopUpState.Opened:d.PopUpState.Closed)},[t]);let s=(0,c.useCallback)(()=>{o(d.PopUpState.Closed),n?.()},[n]);return(0,l.jsx)(l.Fragment,{children:a===d.PopUpState.Opened&&(0,l.jsxs)(d.Popup,{heading:(0,l.jsx)(`h1`,{className:`single-chart-popup-heading`,children:i?.chart??`Chart`}),containerClassName:`single-chart-popup h-[80%]`,portalId:`single-chart`,size:d.PopUpSize.LG,dividers:!1,onClose:s,closeButtonTitle:i?.close??`Close`,children:[(0,l.jsxs)(`div`,{className:`single-chart-popup-content flex h-full min-h-0 flex-1 flex-row gap-4`,children:[(0,l.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[r&&(0,l.jsxs)(`div`,{className:`mb-2 flex items-center gap-1`,children:[(0,l.jsx)(Rr,{className:`size-4 shrink-0 text-neutrals-1000`}),(0,l.jsx)(`h4`,{className:`text-neutrals-1000`,children:r})]}),(0,l.jsx)(O.default,{option:e.config,className:`size-full`,style:{width:`100%`,height:`100%`}})]}),(0,l.jsx)(to,{dimensionsInfo:e.dimensions})]}),(0,l.jsx)(`div`,{})]})})},ro=e=>{let{titles:t}=Y(),[n,r]=(0,c.useState)(!1),[i,a]=(0,c.useState)(),o=(0,c.useRef)(null),[s,u]=(0,c.useState)(``),[f,p]=(0,c.useState)(``),[m,h]=(0,c.useState)(!1),{onboardingFileSchema:g,isShowOnboarding:_}=G(),{isCrossDatasetModeOn:v}=Z(),[y,b]=(0,c.useState)(!1),x=(0,c.useMemo)(()=>io(e.value),[e.value]),S=(0,c.useCallback)(()=>{a(e=>e??x),r(!0)},[x]),C=(0,c.useCallback)(()=>{r(!1),b(!0)},[]);return(0,c.useEffect)(()=>{if(_){let{title:e,description:n}=$e(X.CHART_PER_SERIES,t);u(e),p(n)}},[t,_]),(0,c.useEffect)(()=>{_&&h(g?.lastDisplayedElement===X.CHART_PER_SERIES&&e.node.rowIndex===0)},[g?.lastDisplayedElement,e.node.rowIndex,_]),(0,c.useEffect)(()=>{a(void 0)},[e.value]),x&&!x.isPlottable?null:(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`div`,{ref:o,children:(0,l.jsx)(d.IconButton,{title:t?.chart??`Chart`,buttonClassName:`!text-neutrals-1000 !border-none !p-1`,icon:(0,l.jsx)(Ra,{className:`size-5`}),onClick:S})}),m&&(0,l.jsx)(ct,{reference:o,title:s,description:f,onReferenceClick:S,shouldCloseTooltip:y}),n&&i&&(0,l.jsx)(no,{chart:i,isOpen:n,onClose:C,datasetTitle:v?e.data?.datasetTitle??void 0:void 0})]})};function io(e){return typeof e==`function`?e():e}var ao=`padding-0`,oo={flex:1,minWidth:200},so=`observationValueCell`,co=`metadataCell`,lo=`chartCell`,uo=`mergedDimensionCell`,fo=`datasetDetailCell`,po=`Chart_column`,mo=(e,t,n,r,i,a)=>({headerName:``,suppressHeaderMenuButton:!0,suppressNavigable:!0,sortable:!1,editable:!1,pinned:!0,width:32,maxWidth:32,cellClass:ao,cellRenderer:co,cellRendererParams:{attributesData:t,dataSetData:e,locale:n,metadataSettings:r,titles:i,action:a}});function ho(e,t,n,r=32,i,a){return{headerName:``,field:po,colId:po,suppressHeaderMenuButton:!0,suppressNavigable:!0,sortable:!1,editable:!1,pinned:`right`,width:r,maxWidth:r,minWidth:r,cellClass:ao,suppressColumnsToolPanel:!0,cellRenderer:ro,cellRendererParams:{attributesData:t,dataSetData:e,locale:n,titles:i,action:a}}}function go(e,t){return t&&e.cellRenderer!==`metadataCell`&&(typeof e.maxWidth!=`number`||e.maxWidth>64)?{...e,width:Math.min(e.width??100,100),minWidth:Math.min(e.minWidth??100,100)}:{...e}}function _o(e,t,n,r){return{headerName:``,suppressHeaderMenuButton:!0,suppressNavigable:!0,sortable:!1,editable:!1,pinned:!0,width:32,maxWidth:32,cellClass:ao,cellRenderer:co,cellRendererParams:{structuresMap:e,attributesDataMap:t,locale:n,titles:r}}}var vo=[`index`,`value`],yo=e=>({columns:So(e),data:bo(e)}),bo=e=>{let t=e.metadata.time_column,n={};for(let r of e.data.data){let{value:e,...i}=r,a=xo(r,t);n[a]={...n[a]||{},...i,[r[t]]:e}}return Object.values(n)},xo=(e,t)=>Object.keys(e).filter(e=>!vo.includes(e)&&e!==t).map(t=>e[t]).join(`.`),So=e=>{let{metadata:t,data:n}=e,r=t.time_column,i=t.pinned_columns||[],a=n.schema.fields,o=[],s=n.data.map(e=>e[r]),c=Array.from(new Set(s)).filter(e=>e!=null).map(e=>({field:e,colId:e,headerName:e,cellClass:`text-right`,width:200})),l=i.map(e=>a.find(t=>t.name===e)).filter(e=>e!=null),u=a.filter(e=>!i.includes(e.name)).filter(e=>e!=null);if(l.length>0)for(let e of[...l])e.name===r||vo.includes(e.name)||o.push({colId:e.name,field:e.name,headerName:e.name,pinned:`left`,...oo,tooltipValueGetter:e=>e.value});for(let e of[...u])e.name===r||vo.includes(e.name)||o.push({colId:e.name,field:e.name,headerName:e.name,pinned:!1,...oo,tooltipValueGetter:e=>e.value});return o.push(...c),o},Co=e=>e*32+32+16,wo=({attachment:e,actions:t,className:n=``,showLimitMessage:r})=>{let[i,a]=(0,c.useState)(!1),[o,s]=(0,c.useState)([]),[u,f]=(0,c.useState)(),[p,m]=(0,c.useState)(400);(0,c.useEffect)(()=>{e.url!=null&&(a(!0),t.getFile(e.url).then(e=>{if(e==null){s([]),f([]),a(!1);return}let{columns:t,data:n}=yo(e);s(n),f(t),a(!1)}))},[e.url,t]),(0,c.useEffect)(()=>{o?(m(Co(o.length)),r?.(o.length>=d.SERIES_LIMIT)):r?.(!1)},[o,r]);let h=(0,c.useMemo)(()=>(0,l.jsx)(k.AgGridReact,{headerHeight:32,rowHeight:32,rowData:o,columnDefs:u,enableCellTextSelection:!0,domLayout:`normal`,tooltipShowDelay:0,tooltipShowMode:`whenTruncated`,autoSizeStrategy:{type:u&&u?.length>5?`fitCellContents`:`fitGridWidth`}}),[o,u]);return i?(0,l.jsx)(d.Loader,{}):(0,l.jsx)(`div`,{className:`w-full ${n}`,children:(0,l.jsx)(`div`,{className:`ag-theme-quartz max-h-[400px] min-h-[80px] w-full`,style:{height:p},children:h})})},To=e=>(0,l.jsx)(`svg`,{viewBox:`0 0 16 16`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,l.jsx)(`path`,{d:`M7.4665 6.39967H8.53317V5.33301H7.4665V6.39967ZM7.4665 10.6663H8.53317V7.46634H7.4665V10.6663ZM7.9945 13.333C5.0505 13.333 2.6665 10.9437 2.6665 7.99967C2.6665 5.05567 5.0505 2.66634 7.9945 2.66634C10.9438 2.66634 13.3332 5.05567 13.3332 7.99967C13.3332 10.9437 10.9438 13.333 7.9945 13.333ZM7.99984 3.73301C5.6425 3.73301 3.73317 5.64234 3.73317 7.99967C3.73317 10.357 5.6425 12.2663 7.99984 12.2663C10.3572 12.2663 12.2665 10.357 12.2665 7.99967C12.2665 5.64234 10.3572 3.73301 7.99984 3.73301Z`,fill:`currentColor`})}),Eo=({title:e,value:t})=>{let n=(0,c.useCallback)(()=>Array.isArray(t)?t.join(`, `):t,[t]);return(0,l.jsxs)(`div`,{className:`body-3 flex gap-x-3`,children:[(0,l.jsxs)(`p`,{title:e,className:`text-neutrals-800`,children:[e,`:`]}),(0,l.jsx)(`p`,{title:n(),className:`truncate pr-3 font-semibold`,children:n()})]})};function Do(e){let t=(0,c.useRef)(null),[n,r]=(0,c.useState)(!1),[i,a]=(0,c.useState)(!1),o=(0,c.useCallback)(()=>{let e=t.current;e&&a(e.scrollHeight>e.offsetHeight)},[]);return(0,c.useEffect)(()=>{if(n)return;o();let e=t.current;if(!e||typeof ResizeObserver>`u`)return;let r=new ResizeObserver(()=>o());return r.observe(e),()=>r.disconnect()},[n,e,o]),{valueRef:t,isExpanded:n,canToggle:i,toggle:(0,c.useCallback)(()=>r(e=>!e),[])}}var Oo=({isExpanded:e,onToggle:t,title:n})=>(0,l.jsx)(d.IconButton,{title:n,buttonClassName:(0,p.default)(`border-none p-0 w-6 h-6 shrink-0`,e&&`rotate-[180deg]`),isBaseIconStyles:!1,icon:(0,l.jsx)(ft,{width:24,height:24}),onClick:t}),ko=({title:e,value:t,attachedKeysTitles:n,isDimensionGroup:r,locale:i})=>{let a=(0,c.useMemo)(()=>Array.isArray(t)?t?.map(e=>typeof e==`object`?e?.[i]:e)?.join(`, `):t,[i,t]),{valueRef:o,isExpanded:s,canToggle:u,toggle:d}=Do(a);return(0,l.jsxs)(`div`,{className:`metadata-item`,children:[!r&&n?.map(e=>(0,l.jsx)(`div`,{title:e,className:`metadata-item-key mb-1 pr-3 text-neutrals-800`,children:e},e)),(0,l.jsxs)(`div`,{className:(0,p.default)(`flex items-center`,u&&`justify-between`),children:[(0,l.jsx)(`h2`,{title:e,className:`metadata-item-title`,children:e}),u&&(0,l.jsx)(Oo,{isExpanded:s,onToggle:d})]}),(0,l.jsx)(`p`,{title:a,className:(0,p.default)(`metadata-item-value pr-3`,!s&&`line-clamp-4`),ref:o,children:a})]})},Ao=({metadata:e,metadataDescription:t=[],locale:n})=>{let{titles:r}=Y();return(0,l.jsxs)(`div`,{className:`metadata-content h-full overflow-hidden`,children:[t?.length>0&&(0,l.jsx)(`div`,{className:`metadata-description`,children:t?.map(e=>(0,l.jsx)(Eo,{title:e?.title,value:e?.value},e?.title))}),(0,l.jsx)(`div`,{className:`metadata-list h-full overflow-y-auto`,children:e&&e?.length>0?e?.map(e=>(0,l.jsx)(ko,{title:e?.title,value:e?.value,locale:n,attachedKeysTitles:e?.attachedKeysTitles,isDimensionGroup:e?.isDimensionGroup},e?.id||e?.title)):(0,l.jsx)(`div`,{className:`metadata-empty flex h-full items-center justify-center text-neutrals-700`,children:r?.noMetadata||`No metadata`})})]})},jo=({metadata:e,metadataDescription:t=[],isOpenMetadata:n,onCloseMetadata:r,locale:i})=>{let{titles:a}=Y(),[o,s]=(0,c.useState)(d.PopUpState.Closed);(0,c.useEffect)(()=>{s(n?d.PopUpState.Opened:d.PopUpState.Closed)},[n]);let u=(0,c.useCallback)(()=>{s(d.PopUpState.Closed),r?.()},[r]);return(0,l.jsx)(l.Fragment,{children:o===d.PopUpState.Opened&&(0,l.jsxs)(d.Popup,{heading:(0,l.jsx)(`h1`,{className:`metadata-heading`,children:a?.metadata||`Metadata`}),containerClassName:`metadata h-[80%]`,portalId:`metadata`,size:d.PopUpSize.LG,dividers:!1,onClose:u,closeButtonTitle:a?.close||`Close`,children:[(0,l.jsx)(Ao,{locale:i,metadata:e,metadataDescription:t}),(0,l.jsx)(`div`,{})]})})},Mo={dataset:`dataset`,agency:`agency`,lastUpdated:`lastUpdated`},No=({dataset:e,agency:t,lastUpdated:n,externalLink:r,formatValue:i})=>(0,l.jsxs)(`div`,{className:`mb-6 flex flex-col gap-2`,children:[(0,l.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,l.jsx)(f.IconDatabase,{className:`size-4 text-neutrals-700`}),(0,l.jsx)(`p`,{className:`h4 break-words text-neutrals-1000`,children:i(e?.value)}),r&&(0,l.jsx)(`a`,{href:r,target:`_blank`,rel:`noopener noreferrer`,children:(0,l.jsx)(f.IconExternalLink,{className:`size-4 shrink-0 cursor-pointer text-primary`})})]}),t&&(0,l.jsxs)(`div`,{className:`body-3 flex gap-1`,children:[(0,l.jsxs)(`span`,{className:`text-neutrals-800`,children:[t?.title,`:`]}),(0,l.jsx)(`span`,{className:`break-words text-neutrals-1000`,children:i(t?.value)})]}),n&&(0,l.jsxs)(`div`,{className:`body-3 flex gap-1`,children:[(0,l.jsxs)(`span`,{className:`text-neutrals-800`,children:[n?.title,`:`]}),(0,l.jsx)(`span`,{className:`break-words text-neutrals-1000`,children:i(n?.value)})]})]}),Po=({title:e,value:t,attachedKeysTitles:n,isDimensionGroup:r})=>{let{valueRef:i,isExpanded:a,canToggle:o,toggle:s}=Do(t);return(0,l.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[!r&&n?.map((e,t)=>(0,l.jsx)(`div`,{title:e,className:`body-3 text-neutrals-800`,children:e},`${e}-${t}`)),(0,l.jsxs)(`div`,{className:`flex items-center justify-between gap-2 pr-2`,children:[(0,l.jsx)(`p`,{title:e,className:`body-3 text-neutrals-800`,children:e}),o&&(0,l.jsx)(Oo,{isExpanded:a,onToggle:s})]}),(0,l.jsx)(`p`,{ref:i,title:t,className:(0,p.default)(`body-2 break-words text-neutrals-1000`,!a&&`line-clamp-4`),children:t})]})},Fo=new Set(Object.values(Mo)),Io=`, `,Lo=({metadata:e,metadataDescription:t=[],datasetInfo:n,externalLink:r,locale:i})=>{let{titles:a}=Y(),o=(0,c.useCallback)(e=>Array.isArray(e)?e.map(e=>typeof e==`object`?e?.[i]??``:e).join(Io):typeof e==`object`&&e?e?.[i]??``:e??``,[i]),{dataset:s,agency:u,lastUpdated:d,hasStructuredDatasetInfo:f}=(0,c.useMemo)(()=>{let e=t.find(e=>e?.id===Mo.dataset),r=t.find(e=>e?.id===Mo.agency),i=t.find(e=>e?.id===Mo.lastUpdated),a=n?.dataset||e;return{dataset:a,agency:n?.agency||r,lastUpdated:n?.lastUpdated||i,hasStructuredDatasetInfo:!!a}},[n,t]),p=(0,c.useMemo)(()=>f?t.filter(e=>!e?.id||!Fo.has(e.id)):t,[f,t]);return(0,l.jsx)(`div`,{className:`flex h-full flex-col overflow-hidden px-5 pb-4`,children:f||p.length>0||e?.length?(0,l.jsxs)(l.Fragment,{children:[f&&s&&(0,l.jsx)(No,{dataset:s,agency:u,lastUpdated:d,externalLink:r,formatValue:o}),p.length>0&&(0,l.jsx)(`div`,{className:`mb-4 flex flex-col gap-2`,children:p.map((e,t)=>(0,l.jsxs)(`div`,{className:`body-3 flex gap-2`,children:[(0,l.jsxs)(`span`,{className:`shrink-0 text-neutrals-800`,children:[e?.title||e?.id,`:`]}),(0,l.jsx)(`span`,{className:`min-w-0 truncate font-semibold text-neutrals-1000`,children:o(e?.value)})]},`${e?.id||e?.title}-${t}`))}),(0,l.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:(0,l.jsx)(`div`,{className:`flex flex-col gap-4`,children:e?.map(e=>(0,l.jsx)(Po,{title:e?.title||e?.id,value:o(e?.value),attachedKeysTitles:e?.attachedKeysTitles,isDimensionGroup:e?.isDimensionGroup},e?.id||e?.title))})})]}):(0,l.jsx)(`div`,{className:`body-3 flex h-full items-center justify-center text-neutrals-700`,children:a?.noMetadata||`No metadata`})})};function Ro(e,t){let{externalLink:n,externalLinksMap:r}=e??{};return t!=null&&r!=null?r.get(t):n}var zo=e=>e?.data[e?.colDef?.field||0]?.obsAttributes,Bo=e=>e?.data?.attributes,Vo=(e,t)=>Object.entries(e?.data).filter(([e])=>t?.get(e)).map(([e,t])=>({name:e,value:String(t)})),Ho=(e,t,n)=>{let r=typeof e==`object`?e?.[t]:e;return n?(0,b.getLocalizedName)(n?.codes?.find(t=>t?.id===e),t)||``:r},Uo=(e,t,n)=>e?.map(e=>{let r=e?.name||``,i=t?.get(r),a=i?.codes?.length?i:void 0,o=Array.isArray(e?.value)?e?.value.map(e=>Ho(e,n,a)):Ho(e?.value,n,a);return{id:(0,b.getLocalizedName)(a,n)||e?.name,title:(0,b.getLocalizedName)(a||i,n),value:o||e?.value}})||[],Wo=(e,t,n)=>({title:n?.dataset||`Dataset`,value:(0,b.getLocalizedName)(e,t)}),Go=(e,t,n,r)=>[{...Wo(e,n,r),id:Mo.dataset},{id:Mo.agency,title:r?.agency??`Agency`,value:e?.agencyID},{id:Mo.lastUpdated,title:r?.lastUpdated??`Last updated`,value:t}],Ko=(e,t,n,r)=>({dataset:e?{...Wo(e,n,r),id:Mo.dataset}:void 0,agency:e?{id:Mo.agency,title:r?.agency??`Agency`,value:e?.agencyID}:void 0,lastUpdated:e?{id:Mo.lastUpdated,title:r?.lastUpdated??`Last updated`,value:t}:void 0}),qo=(e,t,n)=>({title:(0,b.getDimensionTitle)(e?.conceptSchemes,(0,b.getDimensions)(e)?.timeDimensions?.[0],t),value:n?.colId||``}),Jo=(e,t)=>({title:t?.observation||`Observation`,value:e}),Yo=(e,t,n,r,i,a)=>{let o={title:r?.timeSeries||`Time Series`,value:a?.originalData?.name};return n?[qo(e,t,i),o,Jo(n,r)]:[o]},Xo=e=>{let t=e?.dataSets?.[0]?.attributes||[],n=e?.structures?.[0]?.attributes?.dataSet||[];return t?.length?n.reduce((e,n,r)=>{let i=t[r];if(i==null)return e;if(n?.values?.length>0){let t=n.values[i];e.push(t?{...n,values:[t]}:{...n})}else Array.isArray(i)?e.push({...n,values:[{values:i}]}):e.push({...n,values:[{value:i}]});return e},[]):n},Zo=(e,t)=>{if(e==null)return;if(typeof e!=`object`)return String(e);let n=e,r=n[t];if(typeof r==`string`)return r;let i=Object.values(n).find(e=>typeof e==`string`);return typeof i==`string`?i:void 0},Qo=(e,t,n)=>e?.map(e=>{let r=e?.id,i=e?.values?.[0]?.value,a=(typeof i==`object`?Zo(i,n):i)||e?.values?.[0]?.id,o=e?.values?.[0]?.ids||e?.values?.[0]?.values,s=t?.get(r),c=s?.codes?.length?s:void 0,l=(0,b.getLocalizedName)(c?.codes?.find(e=>e?.id===a),n)||(0,b.getLocalizedName)(e?.values?.[0],n)||a,u=o&&o.map(e=>{let t=typeof e==`object`?Zo(e,n):String(e);return(0,b.getLocalizedName)(c?.codes?.find(e=>e?.id===t),n)||t}).filter(e=>e!=null);return{id:r,title:(0,b.getLocalizedName)(s,n)||r,value:u?.length?u:l}}).filter(({value:e})=>!!e)||[],$o=(e,t)=>{let n=e?.dataSets?.[0],r=(e?.structures?.[0])?.attributes?.dimensionGroup||[],i=n?.dimensionGroupAttributes;return new Map(r.map(n=>{let r=n?.relationship?.dimensions,{codedSeriesKey:a,decodedSeriesKey:o}=es(e,t,r);return[n.id,{values:i?.[a]||[],decodedSeriesKey:o,codedSeriesKey:a}]}))},es=(e,t,n)=>{let r=e?.structures?.[0],i=[...r?.dimensions.series||[],...r?.dimensions.observation||[]],a=Array(i?.length)?.fill(``),o=Array(i?.length)?.fill(``);return n&&n?.forEach(e=>{let n=i?.findIndex(t=>t?.id===e)||0,r=t[n],s=i[n]?.values?.findIndex(e=>e?.id===r||e?.value===r)||0;a[n]=s>=0?s:r,o[n]=r}),{codedSeriesKey:a?.join(`:`),decodedSeriesKey:o?.join(`:`)}},ts=(e,t)=>t==null?void 0:e?.values?.[t]||(typeof t==`object`&&!Array.isArray(t)||Array.isArray(t)?{values:t}:{value:t?.toString()}),ns=e=>{let t=e?.value||e?.id,n=e?.values||e?.ids;return t==null?n||[null]:[t]},rs=(e,t,n)=>t==null?t:(n?.get(e||``))?.codes?.find(e=>e?.id===t)?.name||t,is=(e,t,n,r=h.Locale.EN)=>{let i=n?.dataStructureComponents?.dimensionList,a=[...i?.dimensions||[],...i?.timeDimensions||[]],o=[];return(e?.split(`:`)||[])?.forEach((e,n)=>{if(e!==``){let i=a?.[n]?.id||``,s=(0,b.getLocalizedName)(t?.get(i),r),c=rs(i,e,t);o.push(`${s}: ${c}`)}}),o},as=(e,t,n,r,i=h.Locale.EN)=>{if(!e||!t||!r)return[];let a=e?.structures?.[0]?.attributes?.dimensionGroup||[],o=$o(e,r);return a?.map((e,r)=>{let a=o?.get(e?.id),s=n?.get(e?.id),c=ns(ts(e,a?.values?.[r]));return{id:e?.id,title:(0,b.getLocalizedName)(s,i),value:Array.isArray(c)?c?.map(t=>rs(e?.id,t,n)||``):c,attachedKeysTitles:is(a?.decodedSeriesKey,n,t),isDimensionGroup:!0}})?.filter(({value:e})=>e?.some(e=>!!e))||[]},os=(0,A.extendTailwindMerge)({extend:{classGroups:{typography:[`h1`,`h2`,`h3`,`h4`,`h5`,`body-1`,`body-2`,`body-3`,`caption`]}}});function ss(...e){return os((0,p.default)(...e))}function cs({title:e,headerExtension:t,headerClassName:n,onClose:r,bodyClassName:i,panelClassName:a,children:o}){return(0,l.jsxs)(`div`,{className:ss(`h-full w-[362px] bg-white border-l border-neutrals-500 flex flex-col overflow-hidden`,a),children:[(0,l.jsxs)(`div`,{className:ss(`flex justify-between px-5 py-6`,n),children:[(0,l.jsx)(`div`,{className:`h2 text-neutrals-1000`,children:e}),(0,l.jsxs)(`div`,{className:`flex items-center gap-2`,children:[t,t&&(0,l.jsx)(`div`,{className:`h-3 w-px bg-neutrals-600`}),(0,l.jsx)(`button`,{type:`button`,onClick:r,children:(0,l.jsx)(f.IconX,{className:`size-5 text-neutrals-1000`})})]})]}),(0,l.jsx)(`div`,{className:ss(`flex-1 min-h-0 overflow-hidden`,i),children:o})]})}var ls=(0,c.createContext)(null);function us({children:e}){let[t,n]=(0,c.useState)(null),r=(0,c.useCallback)(e=>{n(e)},[]),i=(0,c.useCallback)(()=>{n(null)},[]),a=(0,c.useCallback)(e=>e?t?.id===e:t!==null,[t]),o=(0,c.useMemo)(()=>({panel:t,openPanel:r,closePanel:i,isPanelOpen:a}),[t,r,i,a]);return(0,l.jsx)(ls.Provider,{value:o,children:e})}function ds(){return(0,c.useContext)(ls)}function fs(){let e=ds();if(!e)return null;let{openPanel:t,closePanel:n,isPanelOpen:r}=e;return{openPanel:t,closePanel:n,isPanelOpen:r}}function ps({scope:e}){let t=ds();if(!t)return null;let{panel:n,closePanel:r}=t;if(!n)return null;let i=n.scope??`any`;return i!==`any`&&i!==e?null:(0,l.jsx)(cs,{title:n.title,headerExtension:n.headerExtension,headerClassName:n.headerClassName,onClose:r,bodyClassName:n.bodyClassName,panelClassName:n.panelClassName,children:n.content})}var ms={},hs={},gs=(0,c.createContext)({map:ms,getDimensionsMetadata:()=>void 0,getDimensionMetadata:()=>void 0,getRegionDimension:()=>void 0,getFrequencyDimension:()=>void 0,getIndicatorDimensions:()=>[],getDimensionsScheme:()=>void 0,getDatasetLastUpdated:e=>(0,b.getLastUpdatedTime)(e)});function _s({map:e,lastUpdatedMap:t=hs,children:n}){let r=(0,c.useMemo)(()=>{let n={},r={},i={},a=Object.keys(e);for(let t of a){n[t]={},r[t]={};let a=Object.keys(e[t]);for(let i of a){let a=e[t][i];a.subtype&&(n[t][a.subtype]=i),r[t][a.dimensionType]||(r[t][a.dimensionType]=[]),r[t][a.dimensionType].push(i)}i[t]={timePeriod:r[t]?.TIME_PERIOD?.[0]??void 0,frequency:n[t]?.FREQUENCY??void 0,region:n[t]?.REGION??void 0,indicators:r[t]?.INDICATOR??[],other:(r[t]?.NON_INDICATOR??[]).filter(n=>{let r=e[t][n];return r.subtype!==`FREQUENCY`&&r.subtype!==`REGION`})}}return{map:e,getDimensionsMetadata:t=>e[t],getDimensionMetadata:(t,n)=>e[t]?.[n],getRegionDimension:e=>n[e]?.REGION,getFrequencyDimension:e=>n[e]?.FREQUENCY,getIndicatorDimensions:e=>r[e]?.INDICATOR??[],getDimensionsScheme:e=>i[e],getDatasetLastUpdated:e=>{if(e)return t[(0,b.generateShortUrn)(e.id,e.version,e.agencyID)]||(0,b.getLastUpdatedTime)(e)}}},[e,t]);return(0,l.jsx)(gs.Provider,{value:r,children:n})}function vs(){return(0,c.useContext)(gs)}function ys(){return(0,c.useContext)(gs)}var bs=e=>e===h.Locale.UK?`dd MMM, yyyy`:` MMM dd, yyyy hh:mm aa`,xs=(e,t)=>{let n=bs(t);return e!=null&&e!==``&&n&&(0,j.isValid)(new Date(e))?(0,j.format)(new Date(e),n,t===h.Locale.UK?{locale:M.uk}:void 0):``},Ss=e=>{let{titles:t}=Y(),[n,r]=(0,c.useState)(!1),i=(0,c.useRef)(null),[a,o]=(0,c.useState)(``),[s,u]=(0,c.useState)(``),[f,p]=(0,c.useState)(!1),{onboardingFileSchema:m,isShowOnboarding:h}=G(),{isOpenedAdvancedView:g}=I(),_=fs(),{isMetadataInSidePanel:v}=Z(),{getDatasetLastUpdated:y}=vs(),[x,S]=(0,c.useState)(!1),C=e?.data?.dataset?.urn,w=Ro(e?.context,C),T=(0,c.useMemo)(()=>e.structuresMap?C==null?void 0:e.structuresMap.get(C):e.dataSetData,[e.structuresMap,C,e.dataSetData]),E=(0,c.useMemo)(()=>e.attributesDataMap?C==null?void 0:e.attributesDataMap.get(C):e.attributesData,[e.attributesDataMap,C,e.attributesData]),D=(0,c.useMemo)(()=>(0,b.getStructureComponentsMap)(T),[T]),O=(0,c.useMemo)(()=>[Wo(T?.dataflows?.[0],e?.locale,t),...Uo(Vo(e,D),D,e?.locale),...Uo(Bo(e),D,e?.locale),...as(E,T?.dataStructures?.[0],D,e?.data?.originalData?.parsedTimeSeriesValue,e?.locale)],[e,T,E,D,t]),k=(0,c.useMemo)(()=>Yo(T,e?.locale,e?.valueFormatted||e?.value,t,e?.colDef,e?.data),[e,T,t]),A=(0,c.useMemo)(()=>{let n=T?.dataflows?.[0];return Ko(n,xs(y(n),e?.locale),e?.locale,t)},[T,e?.locale,t,y]),j=(0,c.useCallback)(()=>{if(v&&_){_.openPanel({id:`grid-metadata-side-panel`,scope:g?`advanced`:`conversation`,title:t?.timeseriesMetadataPanel||`Timeseries Metadata`,bodyClassName:`overflow-hidden`,content:(0,l.jsx)(Lo,{locale:e?.locale,metadata:O,datasetInfo:A,externalLink:w,metadataDescription:e?.metadataSettings?.isMetadataDescription?k:[]})}),S(!0);return}r(!0)},[v,g,O,k,A,w,e?.locale,e?.metadataSettings?.isMetadataDescription,t,_]),M=(0,c.useCallback)(()=>{r(!1),S(!0)},[]);return(0,c.useEffect)(()=>{if(h){let{title:e,description:n}=$e(X.METADATA_PER_SERIES,t);o(e),u(n)}},[t,h]),(0,c.useEffect)(()=>{if(h){let t=m?.lastDisplayedElement===X.METADATA_PER_SERIES&&e.node.rowIndex===0;p(t),t&&setTimeout(()=>{i?.current?.scrollIntoView({block:`end`,behavior:`smooth`})})}},[m?.lastDisplayedElement,e.node.rowIndex,h]),(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`div`,{ref:i,children:(0,l.jsx)(d.IconButton,{title:t?.metadata||`View details`,buttonClassName:`!text-neutrals-1000 !border-none !p-1`,icon:(0,l.jsx)(To,{className:`size-5`}),onClick:j})}),f&&(0,l.jsx)(ct,{reference:i,title:a,description:s,onReferenceClick:j,shouldCloseTooltip:x}),n&&(0,l.jsx)(jo,{locale:e?.locale,metadata:O,metadataDescription:e?.metadataSettings?.isMetadataDescription?k:[],isOpenMetadata:n,onCloseMetadata:M})]})},Cs=(e,t,n=b.getLastUpdatedTime)=>{let r=ws(e),i=(0,b.getStructureComponentsMap)(r),a=e?.valueFormatted||e?.value,o=Uo(t,i,e?.locale),s=[Wo(r?.dataflows?.[0],e?.locale,e?.titles),...Uo(Vo(e,i),i,e?.locale),...e?.metadataSettings?.isMetadataDescription?[]:[qo(r,e?.locale,e?.colDef),Jo(a,e?.titles)],...o],c=e?.metadataSettings?.isMetadataDescription?Yo(r,e?.locale,a,e?.titles,e?.colDef,e?.data):[],l=r?.dataflows?.[0];return{metadata:s,metadataDescription:c,sidePanelDatasetInfo:Ko(l,xs(n(l),e?.locale),e?.locale,e?.titles)}},ws=e=>{if(e.structuresMap){let t=e?.data?.dataset?.urn;return t==null?void 0:e.structuresMap.get(t)}return e.dataSetData},Ts=`observation-metadata-side-panel`,Es=({params:e,obsAttributes:t})=>{let{titles:n}=Y(),[r,i]=(0,c.useState)(null),{isOpenedAdvancedView:a}=I(),o=fs(),{isMetadataInSidePanel:s}=Z(),{getDatasetLastUpdated:u}=vs(),d=e?.data?.dataset?.urn,f=Ro(e?.context,d),p=(0,c.useCallback)(()=>{let r=Cs(e,t,u);if(s&&o){o.openPanel({id:Ts,scope:a?`advanced`:`conversation`,title:n?.metadata||`Metadata`,bodyClassName:`overflow-hidden`,content:(0,l.jsx)(Lo,{locale:e?.locale,metadata:r.metadata,datasetInfo:r.sidePanelDatasetInfo,externalLink:f,metadataDescription:r.metadataDescription})});return}i(r)},[s,a,f,t,e,o,n,u]),m=(0,c.useCallback)(()=>{i(null)},[]);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{className:`relative size-full p-2 text-end`,children:[e?.valueFormatted||e?.value,(0,l.jsx)(`div`,{className:`metadata-indicator`,title:n?.metadata||`View details`,onClick:p})]}),r&&(0,l.jsx)(jo,{locale:e?.locale,metadata:r.metadata,metadataDescription:r.metadataDescription,isOpenMetadata:!0,onCloseMetadata:m})]})},Ds=e=>{let t=zo(e);return t?.length?(0,l.jsx)(Es,{params:e,obsAttributes:t}):(0,l.jsx)(`div`,{className:`relative size-full p-2 text-end`,children:e?.valueFormatted||e?.value})},Os=({ref:e,fixHeight:t,fillHeight:n,gridHeight:r,children:i})=>(0,l.jsx)(`div`,{ref:e,className:(0,p.default)(`ag-theme-quartz w-full min-h-[80px]`,n&&`h-full`,!n&&t&&`max-h-[400px]`,!n&&!t&&`max-h-full`),style:n?void 0:{height:r},children:i}),ks=({attachment:e,isDataLoading:t,isChartColumnVisible:n,fixHeight:r,fillHeight:i,externalLink:a,showLimitMessage:o,onApiReady:s})=>{let{titles:u}=Y(),[f,p]=(0,c.useState)(!1),[m,h]=(0,c.useState)([]),[g,_]=(0,c.useState)(),[v,y]=(0,c.useState)(400),b=(0,d.useIsMobile)(d.MOBILE_BREAKPOINT),x=(0,c.useRef)(null),[S,C]=(0,c.useState)(``),[w,T]=(0,c.useState)(``),[E,D]=(0,c.useState)(!1),{isShowOnboarding:O,onboardingFileSchema:A,setOnboardingFileSchema:j}=G();(0,c.useEffect)(()=>{if(e.grid_data==null)p(!0);else{let t=e.grid_data.columns.map(e=>e.colId===`Chart_column`?{...e,hide:!n}:go(e,b));h(e.grid_data.data),_(t),p(!1)}},[e.grid_data,n,b]),(0,c.useEffect)(()=>{m?(y(Co(m.length)),o?.(m.length>=d.SERIES_LIMIT)):o?.(!1)},[m,o]),(0,c.useEffect)(()=>{if(O){let{title:e,description:t}=$e(X.DATA_GRID,u);C(e),T(t)}},[u,O]),(0,c.useEffect)(()=>{A&&!A?.infoElements?.dataGrid&&j?.({...A,infoElements:{...A?.infoElements,dataGrid:!0},lastDisplayedElement:X.DATA_GRID})},[A,j]),(0,c.useEffect)(()=>{if(O){let e=A?.lastDisplayedElement===X.DATA_GRID;D(e),!f&&!t&&e&&setTimeout(()=>{x?.current?.scrollIntoView({block:`end`,behavior:`smooth`})})}},[A?.lastDisplayedElement,O,t,f]);let M=(0,c.useCallback)(e=>{s?.(e.api)},[s]),N=(0,c.useMemo)(()=>({externalLink:a}),[a]),P=(0,c.useMemo)(()=>({[co]:Ss,[so]:Ds,[lo]:ro}),[]),F=(0,c.useMemo)(()=>(0,l.jsx)(k.AgGridReact,{onGridReady:M,headerHeight:32,rowHeight:32,rowData:m,enableCellTextSelection:!0,columnDefs:g,context:N,domLayout:`normal`,tooltipShowDelay:0,tooltipShowMode:`whenTruncated`,components:P,valueCache:!0}),[m,g,M,N,P]);return f||t?(0,l.jsx)(d.Loader,{}):(0,l.jsxs)(`div`,{className:`size-full`,children:[(0,l.jsx)(Os,{ref:x,fixHeight:r,fillHeight:i,gridHeight:v,children:F}),E&&(0,l.jsx)(ct,{reference:x,title:S,description:w,supressReferenceClick:!0})]})};function As(e){if(typeof window>`u`)return e(),()=>void 0;let t,n=window.requestAnimationFrame(()=>{t=window.setTimeout(e,0)});return()=>{window.cancelAnimationFrame(n),t!=null&&window.clearTimeout(t)}}var js=200,Ms=8,Ns=2,Ps=({currentIndex:e,totalCount:t,icons:n,onPrev:r,onNext:i})=>{let{titles:a}=Y(),o=(0,d.useIsMobile)(d.MOBILE_BREAKPOINT),s=(0,c.useRef)(null),[u,f]=(0,c.useState)(``),[m,h]=(0,c.useState)(``),[g,_]=(0,c.useState)(!1),{onboardingFileSchema:v,isShowOnboarding:y}=G();(0,c.useEffect)(()=>{if(y){let{title:e,description:t}=$e(X.CHARTS_NAVIGATION,a);f(e),h(t)}},[a,y]),(0,c.useEffect)(()=>{if(y){let e=v?.lastDisplayedElement===X.CHARTS_NAVIGATION;_(e),e&&s?.current?.scrollIntoView({block:`center`,behavior:`smooth`})}},[v?.lastDisplayedElement,y]);let b=t>0?e/t*100:0,x=t>0?Math.min(Ms*t,js):0,S=t>0?Math.max(x/t,Ns):0,C=t>0?100/t:0;return(0,l.jsxs)(`div`,{className:(0,p.default)(`flex w-full flex-row items-center justify-center gap-2`,o&&`min-w-0`),children:[(0,l.jsx)(`div`,{className:(0,p.default)(`size-[20px] shrink-0 cursor-pointer`,e===0?`text-neutrals-700`:`text-primary`),onClick:r,children:n?.[J.PREVIOUS]}),(0,l.jsxs)(`div`,{className:(0,p.default)(`flex flex-col items-center gap-1 pt-[20px]`,o&&`min-w-0 flex-1`),children:[(0,l.jsx)(`div`,{className:(0,p.default)(`relative h-[4px] rounded-full bg-neutral-300`,o&&`w-full`),style:o?{maxWidth:`${js}px`}:{width:`${x}px`},children:(0,l.jsx)(`div`,{className:`absolute h-full rounded-full bg-primary`,style:{left:`${b}%`,width:o?`${C}%`:`${S}px`}})}),(0,l.jsxs)(`h5`,{className:(0,p.default)(`text-neutrals-800`,o&&`max-w-full truncate`),children:[e+1,`/`,t]})]}),(0,l.jsx)(`div`,{className:(0,p.default)(`size-[20px] shrink-0 cursor-pointer`,e+1===t?`text-neutrals-700`:`text-primary`),onClick:i,ref:s,children:n?.[J.NEXT]}),g&&(0,l.jsx)(ct,{reference:s,title:u,description:m})]})},Fs=({limitAmount:e,openAdvancedView:t,prefixIcon:n,contentClassName:r})=>{let{titles:i}=Y(),[a,o]=(0,c.useState)(!1),{refs:s,floatingStyles:u,context:d}=(0,y.useFloating)({open:a,onOpenChange:o,placement:`top-start`}),{getReferenceProps:f,getFloatingProps:p}=(0,y.useInteractions)([(0,y.useHover)(d,{handleClose:(0,y.safePolygon)({blockPointerEvents:!0})})]);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`div`,{className:`flex w-fit`,ref:s.setReference,...f(),children:(0,l.jsxs)(`div`,{className:ss(`mt-1 flex w-fit items-center gap-1 bg-hues-100 px-4 py-2`,r),children:[n,(0,l.jsx)(`h5`,{className:`font-bold`,children:i?.limits||`Limited to`}),(0,l.jsxs)(`h5`,{children:[e,` `,i?.timeseriesLimit||`Timeseries`]})]})}),a&&(0,l.jsx)(`div`,{className:`floating`,ref:s.setFloating,style:u,...p(),children:(0,l.jsxs)(`div`,{className:`z-10 mb-2 flex w-[300px] flex-col gap-2 rounded bg-white p-4 shadow`,children:[(0,l.jsxs)(`div`,{children:[(0,l.jsxs)(`h5`,{className:`text-neutrals-900`,children:[(0,l.jsx)(`span`,{className:`pr-0.5`,children:i?.limitLinkInfoP1_1||`The number of timeseries displayed in a single chart i`}),(0,l.jsxs)(`span`,{className:`pr-0.5 font-bold`,children:[i?.limitLinkInfoP1_2||`limited to`,` `,e]}),i?.limitLinkInfoP1_3||`for better clarity and performance.`]}),(0,l.jsxs)(`h5`,{className:`text-neutrals-900`,children:[(0,l.jsx)(`span`,{className:`pr-0.5`,children:i?.limitLinkInfoP2_1||`To visualize specific timeseries`}),(0,l.jsx)(`span`,{className:`pr-0.5 font-bold`,children:i?.limitLinkInfoP2_2||`filter`}),(0,l.jsx)(`span`,{className:`pr-0.5`,children:i?.limitLinkInfoP2_3||`your request, or`}),(0,l.jsx)(`span`,{className:`pr-0.5 font-bold`,children:i?.limitLinkInfoP2_4||`refine`}),i?.limitLinkInfoP2_5||`it in the chat.`]})]}),t&&(0,l.jsx)(`h4`,{className:`cursor-pointer text-primary`,onClick:t,children:i?.limitLinkInfoLink||`Open Advanced View`})]})})]})};function Is(e,t,n){let r=(e.getZr()?.painter).getRenderedCanvas()?.getContext(`2d`);if(!r)return 0;r.font=`${n.textStyle?.fontSize??12}px ${n.textStyle?.fontFamily??`sans-serif`}`;let i=r.measureText(t).width,a=n.itemWidth??25,o=n.itemGap??10;return i+a+o}var Ls=44,Rs=56,zs=280,Bs=52,Vs=({option:e,style:t})=>{let n=(0,c.useRef)(null),r=(0,d.useIsMobile)(d.MOBILE_BREAKPOINT),[i,a]=(0,c.useState)(e);(0,c.useEffect)(()=>{a(Us(e,r))},[e,r]);let o=(0,c.useCallback)(()=>{let t=n.current?.getEchartsInstance?.();if(!t||r)return;let i=t.getDom().clientWidth;if(i<=0)return;let o=e.legend||{},s=o.itemHeight??14,c=o.textStyle?.fontSize??12,l=t.getModel()?.getComponent(`legend`)?.getData()||[],u=0;l.forEach(e=>{let n=e.option.name||``;u+=Is(t,n,o)});let d=Math.max(1,Math.ceil(u/i))*(+s+ +c+6);a(e=>({...e,grid:{...e.grid||{},bottom:d+20}}))},[r,e.legend]);return(0,c.useEffect)(()=>{o();let e=()=>{o()};return window.addEventListener(`resize`,e),()=>{window.removeEventListener(`resize`,e)}},[e,o]),(0,l.jsx)(O.default,{notMerge:!0,lazyUpdate:!1,ref:n,option:i,style:Hs(t,r)})};function Hs(e,t){return t?{...e,height:zs,minHeight:zs}:e}function Us(e,t){let n=(0,D.cloneDeep)(e);return t?Ws(n):n}function Ws(e){return{...e,legend:Gs(e.legend),grid:{...qs(e.grid),left:8,right:8,bottom:Rs,containLabel:!0},xAxis:Ks(e.xAxis,e=>({...e,axisLabel:{...qs(e.axisLabel),hideOverlap:!0}})),yAxis:Ks(e.yAxis,e=>({...e,axisLabel:{...qs(e.axisLabel),width:Bs,overflow:`truncate`,formatter:Ys}}))}}function Gs(e){let t=e=>{let t=qs(e);return{...t,type:`scroll`,orient:`horizontal`,left:0,right:0,bottom:0,height:Ls,itemWidth:14,itemHeight:8,textStyle:{...qs(t.textStyle),width:120,overflow:`truncate`}}};return Array.isArray(e)?e.map(t):t(e)}function Ks(e,t){let n=e=>t(qs(e));return Array.isArray(e)?e.map(n):n(e)}function qs(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:{}}var Js=new Intl.NumberFormat(`en`,{notation:`compact`,maximumSignificantDigits:3});function Ys(e){let t=typeof e==`number`?e:Number(String(e).replace(/,/g,``));return Number.isFinite(t)?Js.format(t):String(e)}var Xs=({attachment:e,icons:t,isDataLoading:n,openAdvancedView:r,fixHeight:i=!0,fillHeight:a,limitationInfoPrefixIcon:o,limitationInfoContentClassName:s})=>{let{titles:u}=Y(),f=(0,d.useIsMobile)(d.MOBILE_BREAKPOINT),[m,h]=(0,c.useState)(!0),[g,_]=(0,c.useState)(),[v,y]=(0,c.useState)([]),[b,x]=(0,c.useState)(0),[S,C]=(0,c.useState)(void 0),[w,T]=(0,c.useState)(),{onboardingFileSchema:E,isShowOnboarding:D,setOnboardingFileSchema:O}=G(),k=(0,c.useRef)(null),{charting_data:A,getChartingData:j}=e;(0,c.useEffect)(()=>{if(x(0),A){_(A),h(!1);return}if(!j){_(void 0),h(!0);return}return h(!0),As(()=>{try{_(j())}catch(e){console.error(`Error building chart data`,e),_({units:[]})}finally{h(!1)}})},[A,j]),(0,c.useEffect)(()=>{let e=g?.groups??[],t=g?.units??[];y(e.length>0?e.flatMap(e=>e.units.map(t=>({unit:t,groupTitle:e.title}))):t.map(e=>({unit:e})))},[g]),(0,c.useEffect)(()=>{let e=v.length>b,t=e?v[b]:v[0];C(!m&&t!=null?t.unit:void 0),T(t?.groupTitle),e||x(0)},[m,v,b]),(0,c.useEffect)(()=>{E&&D&&!m&&(at(E)&&(O?.(it(E)),k?.current?.scrollIntoView({block:`center`,behavior:`smooth`})),E.lastDisplayedElement===X.CHART_PER_SERIES&&O?.(rt(E)))},[m,O,E,D]);let M=(0,c.useCallback)(()=>{x(e=>Math.min(e+1,v.length-1))},[v.length]),N=(0,c.useCallback)(()=>{x(e=>Math.max(e-1,0))},[]),P=f?`flex-col overflow-auto`:`flex-row overflow-hidden`,F=a?`flex-1 min-h-0`:f?`h-full min-h-[500px]`:i?`h-full max-h-[400px] min-h-[400px]`:`h-full min-h-[300px]`;return m||n?(0,l.jsx)(d.Loader,{}):(0,l.jsx)(`div`,{className:`chart-attachment size-full`,ref:k,children:g&&(0,l.jsx)(`div`,{className:`flex size-full flex-col gap-4`,children:v.length==0||S==null?(0,l.jsx)(`h4`,{className:`ml-1`,children:u?.chartInfo||`No data`}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,l.jsxs)(`h3`,{className:`chart-attachment-title`,children:[u?.chart||`Chart`,` `,b+1,`/`,v.length]}),(0,l.jsx)(`span`,{className:`h4 chart-attachment-info text-neutrals-700`,children:u?.chartInfo||`Chart Information`})]}),(0,l.jsxs)(`div`,{className:(0,p.default)(`chart-area flex gap-4`,P,F),children:[(0,l.jsxs)(`div`,{className:(0,p.default)(`flex min-h-0 min-w-0 flex-1 flex-col`,f&&`min-h-[360px] w-full`),children:[w&&(0,l.jsxs)(`div`,{className:`mb-1 flex items-center gap-1`,children:[(0,l.jsx)(Rr,{className:`size-4 shrink-0 text-neutrals-1000`}),(0,l.jsx)(`h4`,{className:`text-neutrals-1000`,children:w})]}),(0,l.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col gap-4`,children:[(0,l.jsx)(`div`,{className:(0,p.default)(`min-h-0 min-w-0 flex-1`,f&&`min-h-[280px]`),children:(0,l.jsx)(Vs,{option:S.config,style:{width:`100%`,height:`100%`,minHeight:0}})}),S.limitedByRowsAmountTo&&(0,l.jsx)(Fs,{limitAmount:S.limitedByRowsAmountTo,openAdvancedView:r,prefixIcon:o,contentClassName:s}),v.length>1&&(0,l.jsx)(Ps,{icons:t,currentIndex:b,totalCount:v.length,onNext:M,onPrev:N})]})]}),(0,l.jsx)(to,{dimensionsInfo:S.dimensions,isNarrow:f})]})]})})})},Zs=({attachment:e,className:t})=>{let{data:n,language:r}=e;return(0,l.jsx)(`div`,{className:ss([`h-full w-full [&_.cursors-layer]:hidden`,t]),children:(0,l.jsx)(N.Editor,{value:n,language:r,theme:`vs-light`,onMount:(e,t)=>{e.addCommand(t.KeyCode.F1,()=>{})},options:{readOnly:!0,contextmenu:!1,scrollBeyondLastLine:!1,minimap:{enabled:!1},wordWrap:`on`,automaticLayout:!0,tabSize:2}})})},Qs=`dataset_name`,$s=`agency`,ec=`country_aggregated`,tc=`indicator_aggregated`,nc=`frequency_aggregated`;function rc(e){return{columnState:e.getColumnState(),columnGroupState:e.getColumnGroupState()??[]}}function ic(e,t){t&&(e.applyColumnState({state:t.columnState,applyOrder:!0}),e.setColumnGroupState(t.columnGroupState))}var ac=[`columnVisible`,`columnMoved`,`displayedColumnsChanged`,`newColumnsLoaded`,`gridColumnsChanged`,`columnPinned`];function oc(e,t){(0,c.useEffect)(()=>{if(e){for(let n of ac)e.addEventListener(n,t);return()=>{for(let n of ac)e.removeEventListener(n,t)}}},[e,t])}function sc({currentUrn:e}){let[t,n]=(0,c.useState)(),[r,i]=(0,c.useState)(null),a=(0,c.useRef)(new Map),o=(0,c.useRef)(new Map),s=(0,c.useCallback)(t=>{if(n(t),a.current.has(e))r??i(a.current.get(e)??null);else{let n=rc(t);a.current.set(e,n),i(n)}let s=o.current.get(e);s&&(t.applyColumnState({state:s.columnState,applyOrder:!0}),s.columnGroupState!=null&&t.setColumnGroupState(s.columnGroupState))},[e]);(0,c.useEffect)(()=>{i(a.current.get(e)??null)},[e]);let l=(0,c.useCallback)(()=>{t&&o.current.set(e,rc(t))},[e,t]),u=(0,c.useCallback)(()=>{o.current.delete(e)},[e]),d=(0,c.useCallback)(()=>{a.current.delete(e),i(null)},[e]);return oc(t,l),{gridApi:t,onGridApiReady:s,initialColumnsState:r,clearUserColumnState:u,clearInitialColumnState:d}}var cc=function(e){return e.Compact=`compact`,e.Extended=`extended`,e}({}),lc=(0,c.createContext)(null);function uc({currentUrn:e,structuresMap:t,locale:n,dataQueries:r,gridViewMode:i=cc.Compact,onGridViewModeChange:a,texts:o,resetIcon:s,children:u}){let{gridApi:d,onGridApiReady:f,initialColumnsState:p,clearUserColumnState:m,clearInitialColumnState:h}=sc({currentUrn:e}),g=(0,c.useCallback)(e=>a?.(e),[a]),[_,v]=(0,c.useState)(new Map),y=(0,c.useCallback)((e,t,n)=>{v(r=>{let i=new Map(r),a=new Map(i.get(e)??[]),o=a.get(t)??{order:[],hidden:new Set};return a.set(t,n(o)),i.set(e,a),i}),d?.refreshCells({columns:[t]})},[d]),b=(0,c.useCallback)((e,t,n)=>{y(e,t,e=>({...e,order:n}))},[y]),x=(0,c.useCallback)(()=>{v(new Map)},[]),S=(0,c.useCallback)((e,t,n,r)=>{y(e,t,e=>{let t=new Set(e.hidden);return r?t.add(n):t.delete(n),{...e,hidden:t}})},[y]),C=(0,c.useMemo)(()=>({gridApi:d,onGridApiReady:f,initialColumnsState:p,structuresMap:t,locale:n,dataQueries:r,dimensionCustomization:_,setDimensionKeyOrder:b,setDimensionKeyHidden:S,resetDimensionCustomization:x,clearUserColumnState:m,clearInitialColumnState:h,gridViewMode:i,setGridViewMode:g,texts:o,resetIcon:s}),[d,p,f,t,n,r,_,b,S,x,m,h,i,g,o,s]);return(0,l.jsx)(lc.Provider,{value:C,children:u})}function dc(){let e=(0,c.useContext)(lc);if(!e)throw Error(`useTableSettingsContext must be used within TableSettingsProvider`);return e}var fc=()=>(0,c.useContext)(lc);function pc(e,t,n){let r=(0,b.getConcept)(e.conceptIdentity,t),i=e?.localRepresentation?.enumeration,a=r?.coreRepresentation?.enumeration;return{concept:r,codeList:(0,b.getArtifactByUrnWithWildCard)(i||a,n)||void 0}}function mc(e,t,n){let r=e.findIndex(e=>e.id===t);return n.originalData.parsedTimeSeriesValue[r]}function hc(e,t,n,r,i){let a=mc(e,t,r),o=n?.codes?.find(e=>e.id===a);return(0,b.getLocalizedName)(o,i)}function gc(e,t,n,r,i=cc.Compact){let a=i===cc.Extended?xc(e,t,n):[vc(e,t,n,r)];return[_c(e,t,n,r),...a,yc(e,t,n,r),...bc(e,t,n)]}function _c(e,t,n,r){return wc(r?.countryDimensions||`Country dimensions`,ec,r=>{let{structures:i,urn:a,data:o}=Tc(r,e),s=t.get(a)?.region;return o==null||a==null||i==null||s==null?``:Ec(i,s,o,n)},e,t,n,r)}function vc(e,t,n,r){return wc(r?.indicatorDimensions||`Indicator dimensions`,tc,r=>{let{structures:i,urn:a,data:o}=Tc(r,e),s=t.get(a)?.indicators;return o==null||a==null||i==null||s==null||s.length===0?``:s.map(e=>Ec(i,e,o,n)||``).join(`.`)},e,t,n,r)}function yc(e,t,n,r){return wc(r?.frequency||`Frequency`,nc,r=>{let{structures:i,urn:a,data:o}=Tc(r,e),s=t.get(a)?.frequency;return o==null||a==null||i==null||s==null?``:Ec(i,s,o,n)},e,t,n,r)}function bc(e,t,n){let r=new Set;return t.forEach(e=>{e?.other?.forEach(e=>{r.add(e)})}),Array.from(r).map(r=>Sc(r,e,t,n))}function xc(e,t,n){let r=new Set;return t.forEach(e=>{e?.indicators?.forEach(e=>{r.add(e)})}),Array.from(r).map(r=>({headerName:Cc(r,e,n),field:r,colId:r,valueGetter:i=>{let{structures:a,urn:o,data:s}=Tc(i,e),c=t.get(o)?.indicators??[];return s==null||o==null||a==null||!c.includes(r)?``:Ec(a,r,s,n)},...oo,cellClass:ao,tooltipValueGetter:e=>e.value}))}function Sc(e,t,n,r){return{...wc(Cc(e,t,r),e,i=>{let{structures:a,urn:o,data:s}=Tc(i,t),c=n.get(o)?.other??[];return s==null||o==null||a==null||!c.includes(e)?``:Ec(a,e,s,r)},t,n,r),hide:!0}}function Cc(e,t,n){for(let r of t.values()){if(!r)continue;let t=((0,b.getDimensions)(r)?.dimensions||[]).find(t=>t.id===e);if(t)return(0,b.getDimensionTitle)(r.conceptSchemes,t,n)??e}return e}function wc(e,t,n,r,i,a,o){return{headerName:e,field:t,colId:t,valueGetter:n,...oo,cellClass:ao,cellRenderer:uo,tooltipValueGetter:e=>e.value,cellRendererParams:{structuresMap:r,datasetDimensionsSchemesMap:i,locale:a,titles:o,colId:t}}}function Tc(e,t){let{data:n}=e,r=n?.dataset?.urn;return{data:n,urn:r,structures:r==null?void 0:t.get(r)}}function Ec(e,t,n,r){let i=e.conceptSchemes||[],a=e.codelists||[],o=(0,b.getDimensions)(e)?.dimensions||[],s=o.find(e=>e.id===t);if(s==null)return;let{codeList:c}=pc(s,i,a);return hc(o,t,c,n,r)}var Dc=`::`;function Oc(e,t){return`${e}${Dc}${t}`}function kc(e){return e.includes(Dc)}function Ac(e){let t=e.indexOf(Dc);return{urn:e.slice(0,t),dimensionKey:e.slice(t+2)}}var jc=new Set([tc]);function Mc(e,t){let n=e;return t?.order.length&&(n=[...t.order.filter(t=>e.includes(t)),...e.filter(e=>!t.order.includes(e))]),t?.hidden.size&&(n=n.filter(e=>!t.hidden.has(e))),n}function Nc(e,t,n){let r=n(t);return r?e===`indicator_aggregated`?r.indicators:e===`country_aggregated`?r.region?[r.region]:[]:e===`frequency_aggregated`&&r.frequency?[r.frequency]:[]:[]}function Pc(e,t,n){let r=e.getDimensionConfig(t,n);if(r?.alias)return r.alias;let i=e.structuresMap.get(t),a=(i?(0,b.getDimensions)(i)?.dimensions??[]:[]).find(e=>e.id===n);return(0,b.getDimensionTitle)(i?.conceptSchemes??[],a,e.locale)??n}function Fc(e){let t=e.enrichedColIds??jc;return n=>{if(!t.has(n.id))return n;let r=[];for(let{urn:t}of e.dataQueries){let i=Nc(n.id,t,e.getDimensionsScheme);if(!i.length)continue;let a=e.dimensionCustomization?.get(t)?.get(n.id),o=a?.order.length?Mc(i,{order:a.order,hidden:new Set}):i,s=o.length>1,c=o.map(n=>({id:Oc(t,n),type:`item`,label:Pc(e,t,n),isChecked:!a?.hidden.has(n),draggable:s,checkable:s})),l=(0,b.getLocalizedName)(e.structuresMap.get(t)?.dataflows?.[0],e.locale)??t;r.push({id:t,type:`group`,label:l,items:c})}return r.length?r.length===1?{...n,items:r[0].items}:{...n,items:r}:n}}function Ic(e,t){return e===`indicator_aggregated`?t.indicators??[]:e===`country_aggregated`?t.region?[t.region]:[]:e===`frequency_aggregated`?t.frequency?[t.frequency]:[]:t.other?.includes(e)?[e]:[]}function Lc(e,t){return e===`indicator_aggregated`?t?.indicatorMetadataPanel||`Indicator dimension details`:e===`country_aggregated`?t?.countryMetadataPanel||`Country dimension details`:t?.metadata||`Metadata`}var Rc=`merged-dimension-metadata-side-panel`,zc=e=>{let{titles:t}=Y(),{isOpenedAdvancedView:n}=I(),r=fs(),{isMetadataInSidePanel:i}=Z(),{getDatasetLastUpdated:a}=vs(),o=fc(),s=e?.data?.dataset?.urn,u=Ro(e?.context,s),d=s==null?void 0:e.structuresMap.get(s),f=s==null?void 0:e.datasetDimensionsSchemesMap.get(s),p=o?.dimensionCustomization,m=(0,c.useMemo)(()=>{if(!d||!f||s==null)return e.valueFormatted??e.value;let t=p?.get(s)?.get(e.colId);return Mc(Ic(e.colId,f),t).map(t=>Ec(d,t,e.data,e.locale)).filter(Boolean).join(`.`)},[p,d,f,s,e.valueFormatted,e.value,e.colId,e.data,e.locale]),h=(0,c.useMemo)(()=>{if(!d||!f)return[];let t=Ic(e.colId,f),n=(0,b.getStructureComponentsMap)(d);return Uo(t.filter(t=>e.data[t]!=null).map(t=>({name:t,value:String(e.data[t])})),n,e.locale)},[d,f,e.colId,e.data,e.locale]),g=(0,c.useMemo)(()=>{let n=d?.dataflows?.[0];if(n)return Ko(n,xs(a(n),e.locale),e.locale,t)},[d,e.locale,t,a]),_=i&&!!r&&!!e.value&&![`frequency_aggregated`,`country_aggregated`].includes(e.colId),v=(0,c.useCallback)(()=>{r&&r.openPanel({id:Rc,scope:n?`advanced`:`conversation`,title:Lc(e.colId,t),bodyClassName:`overflow-hidden`,content:(0,l.jsx)(Lo,{locale:e.locale,metadata:h,datasetInfo:g,externalLink:u})})},[r,n,e.colId,t,e.locale,h,g,u]);return(0,l.jsxs)(`div`,{className:`relative size-full p-2`,children:[m,_&&(0,l.jsx)(`div`,{className:`metadata-indicator`,title:t?.metadata||`View details`,onClick:v})]})},Bc=`dataset-detail-metadata-side-panel`,Vc=e=>{let{titles:t}=Y(),{isOpenedAdvancedView:n}=I(),r=fs(),{isMetadataInSidePanel:i}=Z(),{getDatasetLastUpdated:a}=vs(),o=e?.data?.dataset?.urn,s=Ro(e?.context,o),u=o==null?void 0:e.structuresMap.get(o),d=o==null?void 0:e.attributesDataMap?.get(o),f=(0,c.useMemo)(()=>{let n=u?.dataflows?.[0];if(n)return Ko(n,xs(a(n),e.locale),e.locale,t)},[u,e.locale,t,a]),p=(0,c.useMemo)(()=>Qo(Xo(d),(0,b.getStructureComponentsMap)(u),e.locale),[d,u,e.locale]),m=i&&!!r&&!!e.value,h=(0,c.useCallback)(()=>{r&&r.openPanel({id:Bc,scope:n?`advanced`:`conversation`,title:t?.datasetMetadataPanel||`Dataset Metadata`,bodyClassName:`overflow-hidden`,content:(0,l.jsx)(Lo,{locale:e.locale,metadata:p,datasetInfo:f,externalLink:s})})},[r,n,p,f,s,t,e.locale]);return(0,l.jsxs)(`div`,{className:`relative size-full p-2`,children:[e.valueFormatted??e.value,m&&(0,l.jsx)(`div`,{className:`metadata-indicator`,title:t?.metadata||`View details`,onClick:h})]})},Hc=({attachment:e,isDataLoading:t,isChartColumnVisible:n,fixHeight:r,externalLink:i,externalLinksMap:a,showLimitMessage:o,onApiReady:s})=>{let[u,f]=(0,c.useState)(!1),[p,m]=(0,c.useState)([]),[h,g]=(0,c.useState)(),[_,v]=(0,c.useState)(400),y=(0,d.useIsMobile)(d.MOBILE_BREAKPOINT),b=(0,c.useRef)(null),x=(0,c.useRef)([]);(0,c.useEffect)(()=>{if(e.gridContent==null)f(!0);else{let t=e.gridContent.columns.map(e=>e.colId===`Chart_column`?{...e,hide:!n}:go(e,y));m(e.gridContent.data),g(t),f(!1)}},[e.gridContent,n,y]),(0,c.useEffect)(()=>{p?(v(Co(p.length)),o?.(p.length>=d.SERIES_LIMIT)):o?.(!1)},[p,o]),(0,c.useEffect)(()=>{if(!h||!b.current)return;let e=h.map(e=>e.colId??e.field??``).filter(Boolean),t=x.current,n=new Set(t),r=e.length!==t.length||e.some(e=>!n.has(e));x.current=e,r&&b.current.resetColumnState()},[h]);let S=(0,c.useCallback)(e=>{b.current=e.api,s?.(e.api)},[s]),C=(0,c.useMemo)(()=>({externalLink:i,externalLinksMap:a}),[i,a]),w=(0,c.useMemo)(()=>({[co]:Ss,[so]:Ds,[uo]:zc,[lo]:ro,[fo]:Vc}),[]),T=(0,c.useMemo)(()=>(0,l.jsx)(k.AgGridReact,{headerHeight:32,rowHeight:32,rowData:p,enableCellTextSelection:!0,columnDefs:h,context:C,domLayout:`normal`,tooltipShowDelay:0,tooltipShowMode:`whenTruncated`,components:w,valueCache:!0,onGridReady:S}),[p,h,C,w,S]);return u||t?(0,l.jsx)(d.Loader,{}):(0,l.jsx)(`div`,{className:`size-full`,children:(0,l.jsx)(Os,{fixHeight:r,gridHeight:_,children:T})})},Uc=({selectedAttachment:e,actions:t,attachmentsStyles:n,isDataLoading:r,externalLink:i,externalLinksMap:a,isOpenedAdvancedView:o,onOpenAdvancedView:s,showLimitMessage:c,onGridApiReady:u})=>(0,l.jsxs)(`div`,{className:`flex min-h-0 w-full flex-1 justify-center`,children:[Zi(e)&&(0,l.jsx)(Ga,{actions:t,downloadTitles:n?.downloadTitle,attachment:e}),Qi(e)&&(0,l.jsx)(wo,{actions:t,attachment:e,showLimitMessage:c}),$i(e)&&(0,l.jsx)(ks,{attachment:e,isDataLoading:r,isChartColumnVisible:o,fixHeight:!o,showLimitMessage:c,onApiReady:u,externalLink:i}),ra(e)&&(0,l.jsx)(Hc,{attachment:e,isDataLoading:r,isChartColumnVisible:o,fixHeight:!o,showLimitMessage:c,onApiReady:u,externalLink:i,externalLinksMap:a}),ea(e)&&(0,l.jsx)(Xs,{isDataLoading:r,attachment:e,icons:n?.chartingIcons,openAdvancedView:o?void 0:s,fixHeight:!o,limitationInfoPrefixIcon:n?.limitationInfoIcon,limitationInfoContentClassName:n?.limitationInfoContentClassName}),Ji(e)&&(0,l.jsx)(eo,{attachment:e,openLinkTitle:n?.openLinkTitle}),Xi(e)&&(0,l.jsx)(Xa,{attachment:e}),na(e)&&(0,l.jsx)(Zs,{attachment:e,className:n?.codeAttachmentContainerClassName})]}),Wc=({isOpen:e,alertDetails:t,attachmentsStyles:n,onClose:r})=>{if(!e)return null;let i=t?.progress&&t.progress.total>0?`${Math.min(100,Math.max(0,t.progress.current/t.progress.total*100))}%`:`0%`;return(0,l.jsx)(d.Alert,{alertDetails:t,infoIcon:n?.infoDownloadIcon,successIcon:n?.successDownloadIcon,errorIcon:n?.errorDownloadIcon,onClose:r,closeButtonTitle:n?.closeTitle||`Close`,children:(0,l.jsxs)(l.Fragment,{children:[t?.text&&(0,l.jsx)(`div`,{className:`alert-text whitespace-pre-line break-words`,title:t.text,children:t.text}),t?.progress&&(0,l.jsx)(`div`,{className:`alert-progress`,children:(0,l.jsx)(`div`,{className:`alert-progress-value`,style:{width:i}})}),t?.action&&(0,l.jsxs)(`button`,{type:`button`,className:`alert-action`,disabled:t.action.disabled,onClick:t.action.onClick,title:t.action.title,children:[t.action.icon&&(0,l.jsx)(`span`,{className:`alert-action-icon`,children:t.action.icon}),(0,l.jsx)(`span`,{className:`alert-action-text`,children:t.action.text})]})]})})},Gc=({attachmentsStyles:e,onCancel:t,onRetry:n})=>{let r=(0,c.useCallback)(t=>e?.downloadTitles?.downloadStartedText?.(t.dataFormatTitle)??`Preparing ${t.dataFormatTitle} file.`,[e?.downloadTitles]),i=(0,c.useCallback)((t,n)=>e?.downloadTitles?.downloadInProgressTitle?.(t,n)??`Downloading file ${t} of ${n}`,[e?.downloadTitles]),a=(0,c.useCallback)((t,n)=>e?.downloadTitles?.downloadInProgressText?.(t,n)??`${t} \u00B7 ${n}`,[e?.downloadTitles]),o=(0,c.useCallback)(t=>t.items.length>1?e?.downloadTitles?.downloadSuccessMultipleTitle?.(t.items.length)??`${t.items.length} files downloaded`:e?.downloadTitles?.downloadSuccessTitle?.(t.dataFormatTitle)??`${t.dataFormatTitle} file downloaded`,[e?.downloadTitles]),s=(0,c.useCallback)(t=>{if(t.items.length>1)return e?.downloadTitles?.downloadSuccessMultipleText?.(t.items.length)??`${t.items.length} files successfully downloaded`;let[n]=t.items;return e?.downloadTitles?.downloadSuccessText?.(n.fileName,n.rowCount)??`${n.fileName} \u00B7 ${n.rowCount} rows`},[e?.downloadTitles]),l=(0,c.useCallback)(t=>{if(t.items.length>1)return e?.downloadTitles?.downloadFailedMultipleText?.(t.items.length)??`${t.items.length} datasets could not be exported`;let[n]=t.items;return e?.downloadTitles?.downloadFailedText?.(n.name)??`${n.name} could not be exported`},[e?.downloadTitles]);return{getStartedAlertDetails:(0,c.useCallback)(n=>({type:d.AlertType.INFO,title:e?.downloadTitles?.downloadStartedTitle??`Download started`,text:r(n),action:{text:e?.downloadTitles?.downloadCancelActionText??e?.downloadTitles?.cancel??`Cancel`,icon:e?.downloadInProgressActionIcon,onClick:t}}),[e?.downloadInProgressActionIcon,e?.downloadTitles,r,t]),getInProgressAlertDetails:(0,c.useCallback)((n,r,o,s)=>({type:d.AlertType.IN_PROGRESS,title:i(r,n.items.length),text:a(s,n.dataFormatTitle),progress:{current:o,total:n.items.length},action:{text:e?.downloadTitles?.downloadCancelActionText??e?.downloadTitles?.cancel??`Cancel`,icon:e?.downloadInProgressActionIcon,onClick:t}}),[e?.downloadInProgressActionIcon,e?.downloadTitles,a,i,t]),getSuccessAlertDetails:(0,c.useCallback)(e=>({type:d.AlertType.SUCCESS,title:o(e),text:s(e)}),[s,o]),getErrorAlertDetails:(0,c.useCallback)(t=>({type:d.AlertType.ERROR,title:e?.downloadTitles?.downloadFailedTitle??`Download failed`,text:l(t),action:{text:e?.downloadTitles?.downloadRetryActionText??`Retry download`,icon:e?.downloadErrorActionIcon,onClick:n}}),[e?.downloadErrorActionIcon,e?.downloadTitles,l,n])}},Kc=300,qc=({attachmentsStyles:e,downloadDataSet:t})=>{let[n,r]=(0,c.useState)(),[i,a]=(0,c.useState)(!1),[o,s]=(0,c.useState)(),l=(0,c.useRef)(null),u=(0,c.useRef)(null),d=(0,c.useRef)(null),f=(0,c.useRef)(!1),p=(0,c.useRef)(!1),m=(0,c.useCallback)(e=>{s(e),r(!0)},[]),h=(0,c.useCallback)(()=>{r(!1)},[]),g=(0,c.useCallback)(()=>{p.current=!0,l.current?.abort(),h()},[h]),_=(0,c.useCallback)(()=>{let e=u.current;!e||!d.current||d.current(e)},[]),v=(0,c.useCallback)(e=>(e instanceof DOMException||e instanceof Error)&&e.name===`AbortError`,[]),{getStartedAlertDetails:y,getInProgressAlertDetails:b,getSuccessAlertDetails:x,getErrorAlertDetails:S}=Gc({attachmentsStyles:e,onCancel:g,onRetry:_}),C=(0,c.useCallback)(async e=>{if(!f.current){f.current=!0,a(!0),p.current=!1,u.current=null;try{let n=[],r=e.items.length>1;r||m(y(e));for(let[i,a]of e.items.entries()){if(p.current)return;r&&m(b(e,i+1,i,a.name));let o=new AbortController;l.current=o;try{await t(a.urn,e.dataFormat,e.language,e.attribute,a.filters,a.fileName,e.isMetadata,o.signal)}catch(e){if(v(e)&&p.current)return;n.push(a),console.error(`Failed to download dataset`,e)}finally{l.current===o&&(l.current=null)}i<e.items.length-1&&await new Promise(e=>window.setTimeout(e,Kc))}if(p.current)return;if(n.length>0){let t={...e,items:n};u.current=t,m(S(t));return}m(x(e))}finally{l.current=null,f.current=!1,a(!1)}}},[t,S,b,y,x,v,m]);return(0,c.useEffect)(()=>{d.current=C},[C]),(0,c.useEffect)(()=>()=>{p.current=!0,l.current?.abort()},[]),{startDownload:(0,c.useCallback)(e=>f.current?!1:(C(e),!0),[C]),isDownloadRunning:i,downloadAlertProps:{isOpen:n,alertDetails:o,attachmentsStyles:e,onClose:h}}};E.ModuleRegistry.registerModules([E.AllCommunityModule]);var Jc=({attachments:e,actions:t,isSystemAttachments:n,isShowAttachments:r,showAdvancedView:i,currentDataQuery:a,dataQueries:o,attachmentInfoList:s,datasets:u,initialSelectedDatasetUrn:f,isDataLoading:m,isDataSetAttachments:h,locale:g,dimensions:_,filters:v,selectDataset:y,onAdvancedViewOpen:x,hideDownloadButton:S,containerClassName:C,isTableSettingsOpen:w,onTableSettingsOpen:T,onTableSettingsClose:E,onGridApiReady:D})=>{let{titles:O,messageStyles:k,attachmentsStyles:A,limitMessages:j,attachmentsConfig:M}=Y(),{isCrossDatasetModeOn:N}=Z(),[P,F]=(0,c.useState)(0),{isOpenedAdvancedView:L,setIsOpenedAdvancedView:R}=I(),[z,B]=(0,c.useState)(d.PopUpState.Closed),[V,H]=(0,c.useState)(!1),[U,W]=(0,c.useState)(!1),G=b.DownloadType.DATA_IN_TABLE,K=(0,c.useMemo)(()=>{if(!N||!o?.some(e=>e.disabled))return u;let e=new Set(o.filter(e=>!e.disabled).map(e=>e.urn));return u?.filter(t=>{let n=(0,b.generateShortUrn)(t?.id,t?.version,t?.agencyID);return e.has(n)})},[u,o,N]),q=e=>{F(e)},ee=(0,c.useCallback)(()=>{x?.(),R(!0),t.updateCurrentDataQuery(a||o?.[0]),t.updateDataQueries(o),t.updateDatasets(u)},[t,a,o,u,R,x]),J=e[P]||null;(0,c.useEffect)(()=>{H(h&&(u==null||u?.length==0))},[u,h]),(0,c.useEffect)(()=>{w&&J&&!$i(J)&&!ra(J)&&E?.()},[w,J,E]);let te=(0,c.useCallback)(()=>{B(d.PopUpState.Closed)},[B]),ne=M?.isExternaLinkIncludeFilters,re=La(ne,v,a||o?.[0],_),ie=(0,c.useMemo)(()=>{if(o?.length)return new Map(o.map(e=>[e.urn,La(ne,void 0,e)]))},[o,ne]),ae=(0,c.useMemo)(()=>{if(!J||!ra(J))return;let e=J.gridContent?.data??[],t=new Map,n=new Map;for(let r of e){let{dataset:e,datasetTitle:i}=r,a=e?.urn;a&&(t.set(a,(t.get(a)??0)+1),!n.has(a)&&i&&n.set(a,i))}return Array.from(t.entries()).map(([e,t])=>({urn:e,name:n.get(e)??e,rowCount:t,dataQuery:o?.find(t=>t.urn===e)}))},[J,o]),oe=(0,c.useMemo)(()=>{if(J){if($i(J))return J.grid_data?.data?.length;if(ra(J))return J.gridContent?.data?.length}},[J]),{startDownload:se,isDownloadRunning:ce,downloadAlertProps:le}=qc({attachmentsStyles:A,downloadDataSet:t.downloadDataSet});if(!e||e.length===0)return null;let ue=!L&&V||!!m;return(0,l.jsx)(l.Fragment,{children:L&&!r?(0,l.jsx)(_a,{icon:k?.advanceViewIcon,title:k?.openAdvanceViewTitle??`Opened in Advanced view`}):(0,l.jsxs)(`div`,{className:ss(`space-y-3 max-w-full max-h-full h-full`,!L&&!n?`pt-5`:`pt-0`,`flex flex-col pb-1`,C),children:[!L&&K?.length!=null&&K?.length>0&&(0,l.jsx)(ja,{datasets:K,initialSelectedDatasetUrn:f,locale:g,selectDataset:y}),ue?(0,l.jsx)(d.Loader,{}):(0,l.jsxs)(l.Fragment,{children:[n&&!L&&(0,l.jsx)(ga,{titles:{queryUpdatedManuallyTitle:O?.queryUpdatedManually,setToTitle:O?.setTo,datasetLabel:O?.dataset},datasetIcon:A?.datasetIcon,attachmentInfoList:s,dataQueries:o}),U&&(0,l.jsx)(d.RequestLimitMessage,{limitMessages:j,showAdvancedViewButton:!!J&&ia(J)&&i,onAdvancedViewClick:ee,query:re}),(0,l.jsx)(`div`,{className:(0,p.default)(!L&&u?.length&&`attachments-bordered`,`attachments-wrapper h-full min-h-0`),children:(0,l.jsxs)(`div`,{className:`flex h-full max-w-full flex-col items-center gap-4`,children:[(0,l.jsx)(Wa,{attachments:e,selectedAttachmentIndex:P,selectedAttachment:J,attachmentsStyles:A,externalLink:re,isExternalLinkIncludeFilters:ne,limitMessages:j,onSelectedAttachmentChange:q,onDownloadClick:()=>B(d.PopUpState.Opened),hideDownloadButton:S,showAdvancedView:i,onOpenAdvancedView:ee,isTableSettingsOpen:w,onTableSettingsOpen:T}),J!=null&&(0,l.jsx)(Uc,{selectedAttachment:J,actions:t,attachmentsStyles:A,isDataLoading:m,isOpenedAdvancedView:L,onOpenAdvancedView:ee,showLimitMessage:W,onGridApiReady:D,externalLink:re,externalLinksMap:ie})]})}),(0,l.jsxs)(l.Fragment,{children:[z===d.PopUpState.Opened&&(0,l.jsx)(Ea,{onCloseModal:te,onDownloadStart:se,isDownloadInProgress:ce,dataQuery:a,datasetName:J?.title||``,locale:g,type:G,dimensions:_,filters:v,urn:a?.urn,titles:A?.downloadTitles,rowCount:oe,collapsible:A?.downloadCollapsible,downloadDatasets:ae,limitMessages:j,showLimitMessage:U,externalLink:re}),(0,l.jsx)(Wc,{...le})]})]})]})})},Yc=({label:e,colDef:t})=>!!e.trim()&&!t.suppressColumnsToolPanel;function Xc(e){return e.colId??e.field??null}function Zc(e){return String(e.headerName??e.field??e.colId??``).trim()}function Qc(e){return new Map(e.getColumnState().map(e=>[e.colId,e]))}function $c(e,t){let n=e.getColumnDefs()??[],r=Qc(e),i=[];for(let e of n){let n=Xc(e);if(!n)continue;let a=Zc(e);if(!t({colId:n,label:a,colDef:e}))continue;let o=r.get(n);i.push({id:n,type:`item`,label:a,isChecked:!(o?.hide??!1),draggable:!0,checkable:!0})}let a=e.getColumnState().map(e=>e.colId),o=new Map(a.map((e,t)=>[e,t]));return i.sort((e,t)=>(o.get(e.id)??2**53-1)-(o.get(t.id)??2**53-1))}function el(e,t,n){let r=[...t];return e.map(e=>n.has(e)?r.shift()??e:e)}function tl(e,t){let n=e,r;for(let e of t){if(r=n.find(t=>t.id===e),!r)return;n=r.type===`group`?r.items:r.items??[]}return r?.type===`item`?r:void 0}function nl(e){if(!e.items?.length)return e;if(e.items.every(e=>e.type===`item`)){let t=e.items,n=t.filter(e=>e.isChecked!==!1);if(n.length!==1)return e;let[r]=n;return{...e,items:t.map(e=>e===r?{...e,checkable:!1,draggable:!1}:{...e,draggable:!1})}}let t=e.items.map(e=>{if(e.type!==`group`)return e;let t=e.items.filter(e=>e.type===`item`).filter(e=>e.isChecked!==!1);if(t.length!==1)return e;let[n]=t;return{...e,items:e.items.map(e=>e.type===`item`?e===n?{...e,checkable:!1,draggable:!1}:{...e,draggable:!1}:e)}});return t.every((t,n)=>t===e.items[n])?e:{...e,items:t}}function rl(e,t){let n=[];for(let r of e){if(r.type===`group`){n.push(...rl(r.items,t));continue}if(t?.(r)){n.push(r.id);continue}if(r.items?.length){n.push(...rl(r.items,t));continue}n.push(r.id)}return n}function il({api:e,searchQuery:t,includeColumn:n=Yc,enrichItem:r,onSubItemOrderChange:i,onSubItemVisibilityChange:a}){let[o,s]=(0,c.useState)(0),[l,u]=(0,c.useState)(new Set),f=(0,c.useCallback)(()=>{s(e=>e+1)},[]);oc(e,f);let p=(0,c.useMemo)(()=>!e||!e.getColumnState()?[]:$c(e,n),[e,n,o]),m=(0,c.useMemo)(()=>(r?p.map(e=>e.type===`item`?r(e):e):p).map(e=>e.type===`item`&&e.items?.length?{...e,isExpanded:l.has(e.id)}:e),[p,r,l]),h=(0,c.useMemo)(()=>new Set(p.map(e=>e.id)),[p]),g=(0,c.useMemo)(()=>(0,d.filterDraggableListNodes)(m,t),[m,t]),_=(0,c.useCallback)(t=>{if(!e)return;if(kc(t.itemId)&&a){let{urn:e,dimensionKey:n}=Ac(t.itemId),r=t.path[0];a(e,r,n,!t.nextChecked);return}let n=tl(m,t.path);!n||!h.has(n.id)||(e.applyColumnState({state:[{colId:n.id,hide:!t.nextChecked}]}),f())},[e,m,h,f,a]),v=(0,c.useCallback)(t=>{if(!e)return;if(kc(t.itemId)&&a){let{urn:e,dimensionKey:n}=Ac(t.itemId),r=t.path[0],i=tl(m,t.path);i?.type===`item`&&a(e,r,n,i.isChecked??!0);return}let n=tl(m,t.path);if(!n||!h.has(n.id))return;let r=!(e.getColumnState().find(e=>e.colId===n.id)?.hide??!1);e.applyColumnState({state:[{colId:n.id,hide:r}]}),f()},[e,m,h,f,a]);return{items:m,visibleItems:g,handleToggleChecked:_,handleToggleExpanded:(0,c.useCallback)(e=>{let t=e.path[e.path.length-1];u(n=>{let r=new Set(n);return e.nextExpanded?r.add(t):r.delete(t),r})},[]),handleItemClick:v,handleItemsChange:(0,c.useCallback)(t=>{if(!e)return;let n=e.getColumnState().map(e=>e.colId),r=new Set(p.map(e=>e.id)),a=el(n,rl(t,e=>h.has(e.id)),r);if(e.applyColumnState({state:a.map(e=>({colId:e})),applyOrder:!0}),f(),i){for(let e of t)if(!(e.type!==`item`||!h.has(e.id)||!e.items))if(e.items.some(e=>e.type===`group`))for(let t of e.items){if(t.type!==`group`)continue;let n=t.items.filter(e=>e.type===`item`);if(n.length<=1)continue;let r=t.id,a=n.map(e=>Ac(e.id).dimensionKey);i(r,e.id,a)}else{let t=e.items.filter(e=>e.type===`item`);if(t.length<=1||!kc(t[0].id))continue;let{urn:n}=Ac(t[0].id),r=t.map(e=>Ac(e.id).dimensionKey);i(n,e.id,r)}}},[e,p,h,f,i])}}function al({api:e,includeColumn:t,enrichItem:n,renderLabel:r,onSubItemOrderChange:i,onSubItemVisibilityChange:a,searchPlaceholder:o}){let[s,u]=(0,c.useState)(``),p=(0,c.useCallback)(e=>{u(e)},[u]),m=(0,c.useCallback)(()=>u(``),[u]),h=(0,c.useMemo)(()=>(0,l.jsx)(`button`,{type:`button`,onClick:m,children:(0,l.jsx)(f.IconX,{className:`size-4 text-neutrals-1000`})}),[m]),{visibleItems:g,handleItemsChange:_,handleToggleChecked:v,handleToggleExpanded:y,handleItemClick:b}=il({api:e,includeColumn:t,searchQuery:s,enrichItem:(0,c.useCallback)(e=>nl(n?n(e):e),[n]),onSubItemOrderChange:i,onSubItemVisibilityChange:a});return(0,l.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-2 px-5`,children:[(0,l.jsx)(d.InputWithIcon,{inputId:`columns-search-input`,containerClasses:`items-center filters-search-input gap-1 !p-2`,cssClass:`filters-search-input-text`,placeholder:o||`Search`,iconBeforeInput:(0,l.jsx)(f.IconSearch,{className:`size-4 text-neutrals-1000`}),iconAfterInput:s?h:void 0,value:s,onChange:p}),(0,l.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:(0,l.jsx)(d.DraggableList,{items:g,onItemsChange:_,onToggleChecked:v,onToggleExpanded:y,onItemClick:b,renderLabel:r})})]})}function ol(){let{dataQueries:e,structuresMap:t,locale:n,gridViewMode:r}=dc(),i=ys(),a=(0,c.useMemo)(()=>{let a=new Map;if(!i||!e?.length)return a;for(let{urn:o}of e){let e=i.getDimensionsScheme(o),s=!!e?.other.length,c=r===cc.Extended&&!!e?.indicators?.length;if(!s&&!c)continue;let l=n?(0,b.getLocalizedName)(t?.get(o)?.dataflows?.[0],n)??o:o,u=[...e?.other??[],...c?e?.indicators??[]:[]];for(let e of u){let t=a.get(e);t?t.push(l):a.set(e,[l])}}return a},[i,e,t,n,r]);return(0,c.useMemo)(()=>{if(!a.size)return;function e(e){let t=a.get(e.id);return t?.length?(0,l.jsxs)(`span`,{className:`flex w-full items-center gap-2 overflow-hidden`,children:[(0,l.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:e.label,children:e.label}),(0,l.jsx)(`span`,{className:`h5 min-w-0 flex-1 truncate text-right text-neutrals-700`,title:t.join(`, `),children:t.join(`, `)})]}):e.label}return e},[a])}var Q=function(e){return e.Header=`header`,e.Cell=`cell`,e}({}),$=function(e){return e.Focus=`focus`,e.Default=`default`,e}({}),sl=`grid gap-1`,cl={gridTemplateColumns:`44px 23px 23px`,gridTemplateRows:`repeat(4, 14px)`},ll={gridTemplateColumns:`repeat(4, 21.5px)`,gridTemplateRows:`repeat(4, 14px)`},ul={[Q.Header]:{[$.Focus]:`content-center rounded-sm border border-accent-300 bg-accent-300 text-center text-[8px] font-semibold`,[$.Default]:`rounded-sm bg-semantic-warning border border-accent-300`},[Q.Cell]:{[$.Focus]:`content-center rounded-sm border border-accent-300 bg-hues-100 pl-1 text-left text-[8px] font-semibold`,[$.Default]:`rounded-sm bg-neutrals-100 border border-accent-300`}},dl=({rows:e,style:t})=>(0,l.jsx)(`div`,{className:sl,style:t,children:e.map((e,t)=>(0,l.jsx)(c.Fragment,{children:e.map((e,n)=>(0,l.jsx)(`span`,{className:ss([ul[e.role][e.emphasis],!e.label&&`text-transparent`]),children:e.label||` `},`${t}-${n}`))},t))}),fl=[[{role:Q.Header,emphasis:$.Focus,label:`D1.D2.D3`},{role:Q.Header,emphasis:$.Default},{role:Q.Header,emphasis:$.Default}],[{role:Q.Cell,emphasis:$.Focus,label:`C1.A`},{role:Q.Cell,emphasis:$.Default},{role:Q.Cell,emphasis:$.Default}],[{role:Q.Cell,emphasis:$.Focus,label:`C1.B`},{role:Q.Cell,emphasis:$.Default},{role:Q.Cell,emphasis:$.Default}],[{role:Q.Cell,emphasis:$.Focus,label:`C2.X`},{role:Q.Cell,emphasis:$.Default},{role:Q.Cell,emphasis:$.Default}]],pl=()=>(0,l.jsx)(dl,{rows:fl,style:cl}),ml=[[{role:Q.Header,emphasis:$.Focus,label:`D1`},{role:Q.Header,emphasis:$.Focus,label:`D2`},{role:Q.Header,emphasis:$.Focus,label:`D3`},{role:Q.Header,emphasis:$.Default}],[{role:Q.Cell,emphasis:$.Focus,label:`C1`},{role:Q.Cell,emphasis:$.Focus,label:`A`},{role:Q.Cell,emphasis:$.Focus},{role:Q.Cell,emphasis:$.Default}],[{role:Q.Cell,emphasis:$.Focus,label:`C1`},{role:Q.Cell,emphasis:$.Focus,label:`B`},{role:Q.Cell,emphasis:$.Focus},{role:Q.Cell,emphasis:$.Default}],[{role:Q.Cell,emphasis:$.Focus,label:`C2`},{role:Q.Cell,emphasis:$.Focus},{role:Q.Cell,emphasis:$.Focus,label:`X`},{role:Q.Cell,emphasis:$.Default}]],hl=()=>(0,l.jsx)(dl,{rows:ml,style:ll}),gl=({title:e,description:t,visual:n,mode:r,activeMode:i,onClick:a})=>(0,l.jsxs)(`button`,{type:`button`,className:ss([`flex items-center gap-3 rounded border p-1`,r===i&&`border-primary`]),onClick:()=>a(r),children:[(0,l.jsx)(`div`,{className:`rounded-[5px] bg-neutrals-100 px-2 py-1`,children:n}),(0,l.jsxs)(`div`,{className:`flex flex-col gap-1 text-left`,children:[(0,l.jsx)(`span`,{className:`h4 text-neutrals-1000`,children:e}),(0,l.jsx)(`span`,{className:`caption text-neutrals-800`,children:t})]})]}),_l=({gridViewMode:e,onModeChange:t,compactViewTitle:n,compactViewDescription:r,extendedViewTitle:i,extendedViewDescription:a})=>(0,l.jsxs)(`div`,{className:`mx-5 my-3 flex flex-col gap-2`,children:[(0,l.jsx)(gl,{title:n||`Compact view`,description:r??(0,l.jsxs)(l.Fragment,{children:[`Related dimensions `,(0,l.jsx)(`strong`,{children:`combined into a single column.`})]}),visual:(0,l.jsx)(pl,{}),mode:cc.Compact,activeMode:e,onClick:t}),(0,l.jsx)(gl,{title:i||`Extended view`,description:a??(0,l.jsxs)(l.Fragment,{children:[`Each dimension displayed in `,(0,l.jsx)(`strong`,{children:`separate column.`})]}),visual:(0,l.jsx)(hl,{}),mode:cc.Extended,activeMode:e,onClick:t})]}),vl=`table-settings-side-panel`,yl=()=>{let{gridApi:e,initialColumnsState:t,structuresMap:n,locale:r,dataQueries:i,dimensionCustomization:a,setDimensionKeyOrder:o,setDimensionKeyHidden:s,resetDimensionCustomization:u,clearUserColumnState:d,clearInitialColumnState:p,gridViewMode:m,setGridViewMode:h,texts:g,resetIcon:_}=dc(),v=ys(),y=ol(),b=(0,c.useCallback)(e=>{d(),p(),u(),h(e)},[d,p,u,h]),x=(0,c.useCallback)(()=>{e&&(d(),t?ic(e,t):e.resetColumnState(),u())},[d,e,t,u]),S=(0,c.useMemo)(()=>{if(!(m!==cc.Compact||!v||!n||!r||!i?.length))return Fc({dataQueries:i,structuresMap:n,getDimensionsScheme:v.getDimensionsScheme,getDimensionConfig:(e,t)=>v.map[e]?.[t],locale:r,dimensionCustomization:a})},[m,v,n,r,i,a]);return e?(0,l.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,l.jsx)(_l,{gridViewMode:m,onModeChange:b,compactViewTitle:g?.compactViewTitle,compactViewDescription:g?.compactViewDescription,extendedViewTitle:g?.extendedViewTitle,extendedViewDescription:g?.extendedViewDescription}),(0,l.jsx)(`hr`,{className:`border-neutrals-500`}),(0,l.jsxs)(`div`,{className:`mx-5 mb-4 mt-5 flex items-center justify-between`,children:[(0,l.jsx)(`h3`,{className:`text-neutrals-1000`,children:g?.columnsDisplayTitle||`Columns display`}),(0,l.jsx)(`button`,{type:`button`,className:`text-neutrals-800`,onClick:x,children:_??(0,l.jsx)(f.IconRotate,{className:`size-4 rotate-180`})})]}),(0,l.jsx)(al,{api:e,enrichItem:S,renderLabel:y,onSubItemOrderChange:o,onSubItemVisibilityChange:s,searchPlaceholder:g?.columnsSearchPlaceholder})]}):null},bl=e=>{let{attachmentsStyles:t}=Y(),{onGridApiReady:n}=dc(),r=fs(),i=(0,c.useCallback)(()=>{r&&r.openPanel({id:vl,scope:`advanced`,title:t?.tableSettings||`Table settings`,headerClassName:`border-b border-neutrals-500`,content:(0,l.jsx)(yl,{})})},[r,t?.tableSettings]);return(0,l.jsx)(Jc,{...e,isTableSettingsOpen:r?.isPanelOpen(`table-settings-side-panel`)??!1,onTableSettingsOpen:r?i:void 0,onTableSettingsClose:r?.closePanel,onGridApiReady:n})},xl=(e,t,n)=>(0,c.useMemo)(()=>e?.map(e=>{let r=t?.get(e.urn)?.dataflows?.[0],i=(0,b.getLocalizedName)(r,n??``),a=i?(0,b.generateShortUrn)(i,``,r?.agencyID):void 0;return a?{...e,title:a}:e}),[e,n,t]),Sl=({actions:e,dataQueries:t,datasetDimensionsMetadataMap:n,structureDataMaps:r,datasetIcon:i,locale:a,onMultipleDataFiltersChange:o})=>{let s=(0,c.useRef)(r?.constraintsMap),[l,u]=(0,c.useState)(),d=(0,c.useMemo)(()=>wr(t,r),[t,r]),f=xl(t,r?.structuresMap,a),p=(0,c.useCallback)(e=>{let t=e.filterType===`dataset`?e.datasetUrn:e.sourceDatasetUrns?.[0];return t?s.current?.get(t):void 0},[]),m=(0,c.useCallback)(e=>Li(e,r?.dimensionsMap,r?.structuresMap),[r?.dimensionsMap,r?.structuresMap]),g=(0,c.useCallback)(e=>m(e).codelistUrn,[m]),_=(0,c.useCallback)(e=>m(e).sourceArtefactUrn,[m]),v=(0,c.useCallback)((i,a)=>{let o=pr(i,s.current,!1,n),c=a??t,l=Dr(c,o,e,n,i),u=Er(c,o,e,n,i);return{promise:Promise.allSettled(u).then(e=>{let t=jr(s.current||r?.constraintsMap,Ar(e));return{filtersMap:o,constraints:t,structureDataMaps:{...r,constraintsMap:t}}}),shouldTrackLoading:l}},[e,t,n,r]),y=(0,c.useCallback)(e=>{let t=pr(e,s.current,!1,n),i=s.current||r?.constraintsMap||new Map;return{filtersMap:t,constraints:i,structureDataMaps:{...r,constraintsMap:i}}},[n,r]),b=(0,c.useCallback)((e,t,r)=>{let{filtersMap:i,changed:o}=Vi(t.filtersMap,t.structureDataMaps,r,a,n);return o?{filters:xr(i,t.structureDataMaps,a,n),changed:!0}:{filters:e,changed:!1}},[n,a]),x=(0,c.useCallback)((e,t)=>xr(t.filtersMap,t.structureDataMaps,a,n),[n,a]),S=(0,c.useCallback)(e=>{s.current=e.constraints},[]),C=(0,c.useCallback)(e=>p(e),[p]),w=(0,c.useCallback)(e=>Nr(e,t,r?.dimensionsMap),[t,r?.dimensionsMap]),E=(0,c.useCallback)((e,t,r,i)=>{let a=pr(t,s.current,!1,n),o=pr(e,s.current,!1,n),c=(0,T.default)(w(a),w(o)),l=(0,T.default)([...i].sort(),[...r].sort());return c&&l},[n,w]),D=(0,c.useCallback)((e,i)=>{let c=t?.map(e=>({...e,disabled:i.has(e.urn)})),l=pr(e,s.current,!1,n,i),u=xr(l,{...r,constraintsMap:s.current},a,n),d=w(l),f=mr(u,t?.map(e=>e.urn)??[],t,n,l),p=(t?.map(e=>e.urn)??[]).filter(e=>!f.has(e));for(let e of p){let t=l.get(e);t&&l.set(e,t.map(e=>!e.isTimeDimension&&e.dimensionValues?.length&&!e.dimensionValues.some(e=>e.isSelectedValue)?{...e,isExcluded:!0}:e))}return o?.(d,s.current,c?.filter(e=>f.has(e.urn)||e.disabled),l,u),{appliedFilters:u,systemMessageFilters:l}},[t,n,w,a,o,r]),O=(0,c.useCallback)((e,n,r)=>{let i=n,a=t?.map(e=>({...e,disabled:r.has(e.urn)})),o=a?.filter(e=>!e.disabled),s=Fr(o,i);return{conversation:e?{...e,messages:da(e.messages,a,s)}:null,nextDataQueries:a?.map(e=>({...e,filters:e.disabled?e.filters??[]:s.get(e.urn)??[]}))??[]}},[t]),k=(0,c.useCallback)(()=>{if(!d)return{status:`pending`};let e=dr(r,a),i=t?.map(t=>{if(!t.disabled)return t;let n=(e.get(t.urn)??[]).filter(e=>e.filterType===`dataset`&&e.id&&!e.isTimeDimension).map(e=>({componentCode:e.id,operator:h.QueryFilterType.IN,values:[]}));return{...t,filters:n}});return{status:`ready`,filters:fr(e,i,r?.constraintsMap,n)}},[t,n,d,a,r]),A=(0,c.useCallback)(()=>{u(s.current)},[]),j=(0,c.useCallback)(()=>{s.current=l},[l]),M=(0,c.useCallback)((e,t)=>{let n=t?.find(t=>t?.urn===e?.datasetUrn);return e?.datasetUrn?n?[n]:[]:t},[]),N=(0,c.useCallback)(e=>e,[]);return{mode:`multi`,constraints:(0,c.useMemo)(()=>({startFetch:v,fallbackResult:y,cleanIncompatible:b,fill:x,commit:S,getRebuildConstraints:C}),[v,y,b,x,S,C]),apply:(0,c.useMemo)(()=>({getIsFiltersUnchanged:E,runApply:D}),[E,D]),buildSystemMessage:O,init:(0,c.useMemo)(()=>({prepareInit:k}),[k]),getConstraintsForFilter:p,getCodelistUrnForFilter:g,getSourceArtefactUrn:_,remember:A,restore:j,getDeleteTargets:M,getClearTargets:N,controllerOptions:(0,c.useMemo)(()=>({initialConstraintsMap:r?.constraintsMap,datasetIcon:i,structuresMap:r?.structuresMap,dataQueries:f}),[r,i,f])}},Cl=e=>{let t=ys();return Oi(e,Sl({actions:e.actions,dataQueries:e.dataQueries,datasetDimensionsMetadataMap:t.map,structureDataMaps:e.structureDataMaps,datasetIcon:e.datasetIcon,locale:e.locale,onMultipleDataFiltersChange:e.onMultipleDataFiltersChange}))},wl=e=>(0,l.jsx)(gi,{...Cl(e)}),Tl=({filtersProps:e,actions:t,attachments:n,attachmentsDataQuery:r,dataQueries:i,dimensions:a,locale:o,isDataLoading:s,setIsFiltering:u,filters:d,onFiltersChange:f})=>{let{titles:p,limitMessages:m}=Y(),h={getConstraints:t.getConstraints,getAvailableHierarchies:e.actions?.getAvailableHierarchies,getHierarchy:e.actions?.getHierarchy},{isCrossDatasetModeOn:g}=Z();return(0,c.useEffect)(()=>{s||u?.(!1)},[s,u]),(0,l.jsx)(`div`,{className:`h-full min-h-0 rounded bg-white`,children:(0,l.jsxs)(`div`,{className:`flex h-full flex-col gap-4 overflow-x-hidden`,children:[(0,l.jsxs)(`div`,{className:`data-details-header flex items-center justify-between`,children:[(0,l.jsx)(`h2`,{children:p?.content??`Content`}),g?(0,l.jsx)(wl,{attachmentsDataQuery:r,dataQueries:i,updateDataQueries:t?.updateDataQueries,locale:o,actions:h,dimensions:a,...e,onFiltersChange:f,limitMessages:m}):(0,l.jsx)(ma,{attachmentsDataQuery:r,dataQueries:i,updateDataQueries:t?.updateDataQueries,locale:o,actions:h,dimensions:a,...e,onFiltersChange:f,limitMessages:m})]}),(0,l.jsx)(`div`,{className:`advanced-view-attachments-container min-h-0 flex-1`,children:(0,l.jsx)(bl,{attachments:n,currentDataQuery:r,dataQueries:i,dimensions:a,actions:t,isShowAttachments:!0,isDataSetAttachments:!0,isDataLoading:s,locale:o,filters:d})})]})})},El=({isShowAgency:e,isShowDatasetBadge:t,dataset:n,data:r,structures:i,metadataSettings:a,locale:o,getDatasetUpdatedTime:s,externalLink:u,datasetIcon:p,externalLinkIcon:m,metadataButtonClassName:h,metadataIconClassName:g,infoSegmentContainerClassName:_,infoSegmentHeaderClassName:v,nameAndMetadataContainerClassName:y})=>{let{titles:x}=Y(),[S,C]=(0,c.useState)(``),[w,T]=(0,c.useState)(!1),E=(0,c.useRef)(null),[D,O]=(0,c.useState)(``),[k,A]=(0,c.useState)(``),[j,M]=(0,c.useState)(!1),{onboardingFileSchema:N,isShowOnboarding:P}=G(),{isOpenedAdvancedView:F}=I(),L=fs(),{isMetadataInSidePanel:R}=Z(),{getDatasetLastUpdated:z}=vs(),[B,V]=(0,c.useState)(!1),H=(0,c.useMemo)(()=>a?.isMetadataDescription?Go(n,S,o,x):[],[n,S,o,a?.isMetadataDescription,x]),U=(0,c.useMemo)(()=>[...a?.isMetadataDescription?[]:[Wo(n,o,x)],...Qo(Xo(r),(0,b.getStructureComponentsMap)(i),o)],[r,n,o,a?.isMetadataDescription,i,x]),W=(0,c.useMemo)(()=>Ko(n,S,o,x),[n,S,o,x]),K=(0,c.useCallback)(()=>{if(R&&L){L.openPanel({id:`dataset-metadata-side-panel`,scope:F?`advanced`:`conversation`,title:`Dataset Metadata`,bodyClassName:`overflow-hidden`,content:(0,l.jsx)(Lo,{locale:o,metadata:U,metadataDescription:H,datasetInfo:W,externalLink:u})}),V(!0);return}T(!0)},[H,U,W,u,R,F,o,L]),q=(0,c.useCallback)(()=>{T(!1),V(!0)},[]);(0,c.useEffect)(()=>{C(s&&s(U)||xs(z(n),o))},[n,o,U,s,z]),(0,c.useEffect)(()=>{if(P){let{title:e,description:t}=$e(X.METADATA_PER_DATASET,x);O(e),A(t)}},[x,P]),(0,c.useEffect)(()=>{P&&M(N?.lastDisplayedElement===X.METADATA_PER_DATASET)},[N?.lastDisplayedElement,P]);let ee=(e,t)=>(0,l.jsxs)(`div`,{className:ss(`flex gap-1 text-neutrals-1000`,_),children:[(0,l.jsxs)(`span`,{className:ss(`text-neutral-800`,v),children:[e,`:`]}),(0,l.jsx)(`span`,{children:t})]});return(0,l.jsxs)(`div`,{className:`dataset-info flex flex-col gap-3 bg-white`,children:[t&&(0,l.jsxs)(`div`,{className:`bg-accent-500 body-2 flex w-fit items-center gap-1 rounded-[20px] px-2 py-1`,children:[p,x?.dataset??`Dataset`]}),(0,l.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,l.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,l.jsxs)(`div`,{role:`heading`,"aria-level":4,className:ss(`flex gap-1 items-center h4`,y),children:[(0,l.jsx)(`div`,{ref:E,children:(0,l.jsx)(d.IconButton,{title:x?.metadata??`View details`,buttonClassName:ss(`!text-neutrals-1000 !border-none !w-4 !h-4 !p-0 shrink-0`,h),icon:(0,l.jsx)(To,{className:ss(`size-4`,g)}),onClick:K})}),(0,l.jsx)(`span`,{children:(0,b.getLocalizedName)(n,o)})]}),u&&(0,l.jsx)(`a`,{href:u,target:`_blank`,rel:`noopener noreferrer`,children:m||(0,l.jsx)(f.IconExternalLink,{className:`size-4 shrink-0 cursor-pointer text-primary`})})]}),(0,l.jsxs)(`div`,{className:`body-3 flex items-center gap-2`,children:[e&&(0,l.jsxs)(l.Fragment,{children:[ee(x?.agency??`Agency`,n?.agencyID??``),(0,l.jsx)(`div`,{"aria-hidden":`true`,className:`h-[14px] border-l border-l-neutral-500`})]}),ee(x?.lastUpdated??`Last updated`,S)]})]}),j&&(0,l.jsx)(ct,{reference:E,title:D,description:k,onReferenceClick:K,shouldCloseTooltip:B}),w&&(0,l.jsx)(jo,{locale:o,metadata:U,metadataDescription:H,isOpenMetadata:w,onCloseMetadata:q})]})},Dl=({locale:e,isShowShare:t,shareConversationProps:n,conversation:r})=>{let{titles:i}=Y(),{setIsOpenedAdvancedView:a}=I(),o=(0,c.useRef)(null),[s,u]=(0,c.useState)(``),[f,m]=(0,c.useState)(``),[h,g]=(0,c.useState)(!1),{onboardingFileSchema:_,isShowOnboarding:v}=G();return(0,c.useEffect)(()=>{if(v){let{title:e,description:t}=$e(X.EXIT_ADVANCED_VIEW,i);u(e),m(t)}},[i,v]),(0,c.useEffect)(()=>{v&&g(_?.lastDisplayedElement===X.EXIT_ADVANCED_VIEW)},[_?.lastDisplayedElement,v]),(0,l.jsxs)(`header`,{className:(0,p.default)(`bg-white px-6 py-4 flex justify-between items-center mobile:px-1`,`advanced-view-header`),children:[(0,l.jsxs)(`div`,{className:(0,p.default)(`flex gap-3 items-center`,!t&&`justify-between w-full`,`advanced-view-header-title`),children:[(0,l.jsx)(`div`,{ref:o,className:(0,p.default)(!t&&`order-2`,`flex`),children:(0,l.jsx)(d.CloseButton,{btnClassNames:`button-close`,onClick:()=>a(!1),title:i?.close||`Close`})}),h&&(0,l.jsx)(ct,{reference:o,title:s,description:f,onReferenceClick:()=>a(!1),shouldMoveToNextStep:!0}),(0,l.jsx)(`h2`,{children:i?.advanceViewTitle??`Advanced view`})]}),t&&(0,l.jsx)(Ve,{locale:e,conversation:r,...n})]})};function Ol(e,t,n,r,i,a,o,s,c){let l=kl(e,n),u=Al(e,t,n,r,i,a,c?.startPeriod&&c.endPeriod?(0,b.getAdditionalColumns)(s,c):[]);return[mo(e,t?.data,n,i,a,o),...l,...u,ho(e,t?.data,n,void 0,a,o)]}function kl(e,t){let n=e.conceptSchemes||[],r=e.codelists||[],i=(0,b.getDimensions)(e)?.dimensions||[];return i.map(e=>{let{codeList:a,concept:o}=pc(e,n,r);return{headerName:(0,b.getLocalizedName)(o,t),field:e.id,colId:e.id,valueGetter:e=>{let{data:n,colDef:r}=e,o=r.field;return hc(i,o,a,n,t)},...oo,tooltipValueGetter:e=>e.value}})}function Al(e,t,n,r,i,a,o){return Ml(Nl(o,(0,b.getTimePeriods)(t)),(e,t)=>jl(e,t||e,r,a),e,n,i,a)}var jl=(e,t,n=h.defaultFormatNumbers,r)=>({headerName:xt(t,r),colId:e,field:e,type:`numericColumn`,suppressColumnsToolPanel:!0,sortable:!1,width:200,cellClass:[`justify-end`,`cell-with-meta`],valueFormatter:e=>(0,h.formatNumberBySign)(e.value,n)}),Ml=(e,t,n,r,i,a)=>{let o=[];return e.sort((e,t)=>(0,b.sortPeriods)(e,t)).forEach(e=>{o.push({headerName:e.toString(),field:e.toString(),...t(e.toString()),valueGetter:e=>e.data[e.column.getColId()]?.value?.[0]?.value||null,cellClass:ao,cellRenderer:so,width:200,cellRendererParams:{dataSetData:n,locale:r,metadataSettings:i,titles:a}})}),o},Nl=(e=[],t=[])=>{if(!e.length)return t;if(!t.length)return e;let n=t.some(e=>(0,b.isYearly)(e)),r=t.some(e=>(0,b.isSemiAnnually)(e)),i=t.some(e=>(0,b.isQuarterly)(e)),a=t.some(e=>(0,b.isMonthly)(e)),o=t.some(e=>(0,b.isWeekly)(e)),s=t.some(e=>(0,b.isDaily)(e)),c=e.filter(e=>(0,b.isYearly)(e)?n:(0,b.isSemiAnnually)(e)?r:(0,b.isQuarterly)(e)?i:(0,b.isMonthly)(e)?a:(0,b.isWeekly)(e)?o:(0,b.isDaily)(e)?s:!0);return Array.from(new Set([...c,...t]))};function Pl(e,t,n){let r=t.map(e=>e.id).filter(e=>e!=null);return Fl(e,r,n.map(e=>e.id).filter(e=>e!=null),r)}var Fl=(e,t,n,r)=>{let i={};for(let a of e){let e=zl(a,t),o=Il(e,r),s=i[o];if(s==null){s={},i[o]=s;for(let t of r)s[t]=e[t]}let c=Hl(a.attributes);if(Ul(s,o,c,a),!a.values.length){Rl(s,e,n);continue}for(let t of a.values){let r=Hl(t.obsAttributes);Ul(s,o,c,a),Rl(s,e,n,t.dimensionAtObservation,Bl(a,t),r)}}return Object.values(i)},Il=(e,t)=>t.map(t=>e[t]).join(`_`),Ll=(e,t,n)=>t.map(t=>t===`TIME_PERIOD`?n:e[t]).join(`_`),Rl=(e,t,n,r,i,a)=>{let o=Ll(t,n,r);e[o]={value:i,obsAttributes:a}},zl=(e,t)=>{let n={},r=e.name.split(`.`);for(let e=0;e<t.length;e+=1)n[t[e]]=r[e];return n},Bl=(e,t)=>{let n=Vl(e.attributes);if(n)return[n];let r=Vl(t.obsAttributes);return r?[r]:t.values},Vl=(e=[])=>e.find(({name:e})=>e===`OBS_VALUE`),Hl=(e=[])=>e.filter(({value:e})=>e),Ul=(e,t,n,r)=>{e.attributes??=n,e.id=t,e.originalData=r},Wl=`#EEEEEE`,Gl=`#777777`;function Kl(e,t,n){let r={animation:!1,tooltip:{trigger:`axis`,appendToBody:!0,formatter:e=>{let t=e[0].axisValueLabel+`<br/>`;return e.forEach(e=>{e.value!==null&&e.value!==void 0&&(t+=e.marker+` `+e.seriesName+`: `+e.value+`<br/>`)}),t}},legend:{bottom:0},grid:{left:`3%`,right:`3%`,bottom:`40px`,containLabel:!0},xAxis:{...ql(n?.ticksColor,n?.labelsColor),type:`category`,boundaryGap:!1,data:e},yAxis:{...ql(n?.ticksColor,n?.labelsColor),type:`value`},series:t};return n?.colors!=null&&(r.color=n.colors),r}function ql(e=Wl,t=Gl){return{splitLine:{show:!0,showMaxLine:!1,lineStyle:{color:[e]}},axisTick:{show:!1},axisLabel:{color:t},axisLine:{lineStyle:{color:e}}}}function Jl(e,t,n,r){return t.map(t=>{let i=(0,b.getDimensions)(n)?.dimensions||[],a=i?.find(e=>e.id===t);if(a==null)return e[t]||``;let{codeList:o}=pc(a,n.conceptSchemes||[],n.codelists||[]);return hc(i,t,o,e,r)}).join(` - `)}function Yl(e,t){let n=[...t?.metadata?.indicatorDimensions||[]].filter(e=>e!=null),r=((0,b.getDimensions)(e)?.dimensions)?.filter(e=>e.id!=null&&!n.includes(e.id)&&t?.metadata?.countryDimension!==e.id).map(e=>e.id).filter(e=>e!=null)||[];return[...n,...r]}function Xl(e,t,n){let r={};return e.forEach(e=>{let i=Zl(e,t,n);r[i]||(r[i]={rows:[]}),r[i].rows.push(e)}),Object.keys(r).map(e=>r[e])}function Zl(e,t,n){let r=n.dataStructures?.[0]?.dataStructureComponents?.dimensionList?.dimensions||[];return t.map(t=>r?.find(e=>e.id===t)==null?e[t]||``:mc(r,t,e)).join(` - `)}function Ql(e,t){let n={};return e.forEach(e=>n[e]=$l(e,t)),{nonUniqDimensions:e.filter(e=>!n[e])}}function $l(e,t){let n=t.map(t=>eu(e,t));return new Set(n).size===1}function eu(e,t){return t[e]}var tu=`line`,nu=10,ru=2;function iu(e){return typeof e==`number`?Number.isFinite(e):typeof e==`string`&&e.trim()!==``?Number.isFinite(Number(e)):!1}function au(e){let t=(e.groups??[]).flatMap(e=>e.units);return[...e.units,...t].some(e=>e.isPlottable)}function ou(e,t,n,r,i){let a=gu(t,e,n,r,i,{includeChartData:!1}),o=(0,b.getTimePeriods)(t).sort((e,t)=>(0,b.sortPeriods)(e,t)),{nonUniqDimensions:s}=Ql(Yl(e,n),a);return{units:Xl(a,s,e).map(t=>lu(t,e,n,o,r,i))}}function su(e,t,n,r,i){let a;return()=>(a??=ou(e,t,n,r,i),a)}function cu(e,t,n,r,i,a){return lu({rows:[e]},n,r,t,i,a)}function lu(e,t,n,r,i,a){let o=mu(e.rows,t,n,i),s=o?.find(e=>b.FREQUENCY_DIMENSION_ID.includes(e?.id))?.id,c=du(r,e?.rows?.[0],s),l=fu(e.rows.length>nu?e.rows.slice(0,nu):e.rows,t,n,i,c);return{rows:e.rows,limitedByRowsAmountTo:e.rows.length>nu?nu:void 0,dimensions:o,config:Kl(c,l,a),isPlottable:uu(l)}}function uu(e){return e.some(e=>e.data.filter(iu).length>=ru)}function du(e,t,n){if(n){let r=t?.[n];if(r===b.Periods.MONTHLY)return e?.filter(e=>(0,b.isMonthly)(e));if(r===b.Periods.QUARTERLY)return e?.filter(e=>(0,b.isQuarterly)(e));if(r===b.Periods.ANNUAL)return e?.filter(e=>(0,b.isYearly)(e))}return e}function fu(e,t,n,r,i){return e.map(e=>({name:n?.metadata?.countryDimension==null?``:Jl(e,[n?.metadata?.countryDimension],t,r),type:tu,data:i.map(t=>pu(t,e))}))}function pu(e,t){return t[e]?.value?.[0]?.value||null}function mu(e,t,n,r){let i=n?.metadata?.countryDimension;return((0,b.getDimensions)(t)?.dimensions||[]).map(n=>{if(!(n.id==null||n.id===i))return{id:n.id,title:hu(n,t,r),value:Jl(e[0],[n.id],t,r)}}).filter(e=>e!=null)}function hu(e,t,n){let{concept:r}=pc(e,t.conceptSchemes||[],t.codelists||[]);return(0,b.getLocalizedName)(r,n)||e.id}function gu(e,t,n,r,i,a={}){let o=Pl(e==null?[]:(0,b.getParsedResponse)(e),(0,b.getDimensions)(t)?.dimensions||[],(0,b.getDimensions)(t)?.timeDimensions||[]);return a.includeChartData===!1?o:_u(o,e,t,n,r,i)}function _u(e,t,n,r,i,a){let o=(0,b.getTimePeriods)(t).sort((e,t)=>(0,b.sortPeriods)(e,t));return e.map(e=>({...e,[po]:()=>cu(e,o,n,r,i,a)}))}function vu(e,t,n,r,i,a,o,s,c,l,u){return{columns:Ol(e,t,r,i,a,s,c,l,u),data:gu(t,e,n,r,o)}}function yu(e,t,n,r,i,a,o,s,c,l,u){let d=e.dataflows?.[0]?.names?.[r],f=vu(e,t,n,r,i,a,o,s,c,l,u);return{title:d||s?.dataGrid||`Data Grid`,grid_data:f}}function bu(e){let t=e.replace(/\r\n/g,`
|
|
8
8
|
`);if(!t.startsWith("```"))return{code:e};let n=t.split(`
|
|
9
9
|
`),r=n[0].slice(3).trim()||void 0,i=-1;for(let e=n.length-1;e>0;e--)if(n[e].trim()==="```"){i=e;break}return i===-1?{code:n.slice(1).join(`
|
|
10
10
|
`),language:r}:{code:n.slice(1,i).join(`
|
package/index.mjs
CHANGED
|
@@ -6329,95 +6329,95 @@ function ju(e) {
|
|
|
6329
6329
|
}
|
|
6330
6330
|
//#endregion
|
|
6331
6331
|
//#region libs/conversation-view/src/components/Attachments/CustomAttachments/CustomChartAttachment.tsx
|
|
6332
|
-
var Mu = ({ attachment: e, icons: t, isDataLoading: n, openAdvancedView: r, fixHeight: a = !0,
|
|
6333
|
-
let { titles:
|
|
6332
|
+
var Mu = ({ attachment: e, icons: t, isDataLoading: n, openAdvancedView: r, fixHeight: a = !0, fillHeight: s, limitationInfoPrefixIcon: c, limitationInfoContentClassName: m }) => {
|
|
6333
|
+
let { titles: h } = Z(), g = K(I), [_, v] = u(!0), [y, b] = u(), [x, S] = u([]), [C, w] = u(0), [T, E] = u(void 0), [D, O] = u(), { onboardingFileSchema: k, isShowOnboarding: A, setOnboardingFileSchema: j } = jn(), M = l(null), { charting_data: N, getChartingData: P } = e;
|
|
6334
6334
|
o(() => {
|
|
6335
|
-
if (
|
|
6336
|
-
|
|
6335
|
+
if (w(0), N) {
|
|
6336
|
+
b(N), v(!1);
|
|
6337
6337
|
return;
|
|
6338
6338
|
}
|
|
6339
|
-
if (!
|
|
6340
|
-
|
|
6339
|
+
if (!P) {
|
|
6340
|
+
b(void 0), v(!0);
|
|
6341
6341
|
return;
|
|
6342
6342
|
}
|
|
6343
|
-
return
|
|
6343
|
+
return v(!0), fu(() => {
|
|
6344
6344
|
try {
|
|
6345
|
-
|
|
6345
|
+
b(P());
|
|
6346
6346
|
} catch (e) {
|
|
6347
|
-
console.error("Error building chart data", e),
|
|
6347
|
+
console.error("Error building chart data", e), b({ units: [] });
|
|
6348
6348
|
} finally {
|
|
6349
|
-
|
|
6349
|
+
v(!1);
|
|
6350
6350
|
}
|
|
6351
6351
|
});
|
|
6352
|
-
}, [
|
|
6353
|
-
let e =
|
|
6354
|
-
|
|
6352
|
+
}, [N, P]), o(() => {
|
|
6353
|
+
let e = y?.groups ?? [], t = y?.units ?? [];
|
|
6354
|
+
S(e.length > 0 ? e.flatMap((e) => e.units.map((t) => ({
|
|
6355
6355
|
unit: t,
|
|
6356
6356
|
groupTitle: e.title
|
|
6357
6357
|
}))) : t.map((e) => ({ unit: e })));
|
|
6358
|
-
}, [
|
|
6359
|
-
let e =
|
|
6360
|
-
|
|
6358
|
+
}, [y]), o(() => {
|
|
6359
|
+
let e = x.length > C, t = e ? x[C] : x[0];
|
|
6360
|
+
E(!_ && t != null ? t.unit : void 0), O(t?.groupTitle), e || w(0);
|
|
6361
6361
|
}, [
|
|
6362
|
-
|
|
6363
|
-
|
|
6364
|
-
|
|
6362
|
+
_,
|
|
6363
|
+
x,
|
|
6364
|
+
C
|
|
6365
6365
|
]), o(() => {
|
|
6366
|
-
|
|
6366
|
+
k && A && !_ && (Vr(k) && (j?.(Br(k)), M?.current?.scrollIntoView({
|
|
6367
6367
|
block: "center",
|
|
6368
6368
|
behavior: "smooth"
|
|
6369
|
-
})),
|
|
6369
|
+
})), k.lastDisplayedElement === jr.CHART_PER_SERIES && j?.(zr(k)));
|
|
6370
6370
|
}, [
|
|
6371
|
-
|
|
6372
|
-
|
|
6373
|
-
|
|
6374
|
-
|
|
6371
|
+
_,
|
|
6372
|
+
j,
|
|
6373
|
+
k,
|
|
6374
|
+
A
|
|
6375
6375
|
]);
|
|
6376
|
-
let
|
|
6377
|
-
|
|
6378
|
-
}, [
|
|
6379
|
-
|
|
6380
|
-
}, []);
|
|
6381
|
-
return
|
|
6376
|
+
let L = i(() => {
|
|
6377
|
+
w((e) => Math.min(e + 1, x.length - 1));
|
|
6378
|
+
}, [x.length]), R = i(() => {
|
|
6379
|
+
w((e) => Math.max(e - 1, 0));
|
|
6380
|
+
}, []), z = g ? "flex-col overflow-auto" : "flex-row overflow-hidden", B = s ? "flex-1 min-h-0" : g ? "h-full min-h-[500px]" : a ? "h-full max-h-[400px] min-h-[400px]" : "h-full min-h-[300px]";
|
|
6381
|
+
return _ || n ? /* @__PURE__ */ f(F, {}) : /* @__PURE__ */ f("div", {
|
|
6382
6382
|
className: "chart-attachment size-full",
|
|
6383
|
-
ref:
|
|
6384
|
-
children:
|
|
6383
|
+
ref: M,
|
|
6384
|
+
children: y && /* @__PURE__ */ f("div", {
|
|
6385
6385
|
className: "flex size-full flex-col gap-4",
|
|
6386
|
-
children:
|
|
6386
|
+
children: x.length == 0 || T == null ? /* @__PURE__ */ f("h4", {
|
|
6387
6387
|
className: "ml-1",
|
|
6388
|
-
children:
|
|
6388
|
+
children: h?.chartInfo || "No data"
|
|
6389
6389
|
}) : /* @__PURE__ */ p(d, { children: [/* @__PURE__ */ p("div", {
|
|
6390
6390
|
className: "flex flex-col gap-1",
|
|
6391
6391
|
children: [/* @__PURE__ */ p("h3", {
|
|
6392
6392
|
className: "chart-attachment-title",
|
|
6393
6393
|
children: [
|
|
6394
|
-
|
|
6394
|
+
h?.chart || "Chart",
|
|
6395
6395
|
" ",
|
|
6396
|
-
|
|
6396
|
+
C + 1,
|
|
6397
6397
|
"/",
|
|
6398
|
-
|
|
6398
|
+
x.length
|
|
6399
6399
|
]
|
|
6400
6400
|
}), /* @__PURE__ */ f("span", {
|
|
6401
6401
|
className: "h4 chart-attachment-info text-neutrals-700",
|
|
6402
|
-
children:
|
|
6402
|
+
children: h?.chartInfo || "Chart Information"
|
|
6403
6403
|
})]
|
|
6404
6404
|
}), /* @__PURE__ */ p("div", {
|
|
6405
|
-
className: Y("chart-area flex gap-4
|
|
6405
|
+
className: Y("chart-area flex gap-4", z, B),
|
|
6406
6406
|
children: [/* @__PURE__ */ p("div", {
|
|
6407
|
-
className: Y("flex min-h-0 min-w-0 flex-1 flex-col",
|
|
6408
|
-
children: [
|
|
6407
|
+
className: Y("flex min-h-0 min-w-0 flex-1 flex-col", g && "min-h-[360px] w-full"),
|
|
6408
|
+
children: [D && /* @__PURE__ */ p("div", {
|
|
6409
6409
|
className: "mb-1 flex items-center gap-1",
|
|
6410
6410
|
children: [/* @__PURE__ */ f(xo, { className: "size-4 shrink-0 text-neutrals-1000" }), /* @__PURE__ */ f("h4", {
|
|
6411
6411
|
className: "text-neutrals-1000",
|
|
6412
|
-
children:
|
|
6412
|
+
children: D
|
|
6413
6413
|
})]
|
|
6414
6414
|
}), /* @__PURE__ */ p("div", {
|
|
6415
6415
|
className: "flex min-h-0 min-w-0 flex-1 flex-col gap-4",
|
|
6416
6416
|
children: [
|
|
6417
6417
|
/* @__PURE__ */ f("div", {
|
|
6418
|
-
className: Y("min-h-0 min-w-0 flex-1",
|
|
6418
|
+
className: Y("min-h-0 min-w-0 flex-1", g && "min-h-[280px]"),
|
|
6419
6419
|
children: /* @__PURE__ */ f(Cu, {
|
|
6420
|
-
option:
|
|
6420
|
+
option: T.config,
|
|
6421
6421
|
style: {
|
|
6422
6422
|
width: "100%",
|
|
6423
6423
|
height: "100%",
|
|
@@ -6425,24 +6425,24 @@ var Mu = ({ attachment: e, icons: t, isDataLoading: n, openAdvancedView: r, fixH
|
|
|
6425
6425
|
}
|
|
6426
6426
|
})
|
|
6427
6427
|
}),
|
|
6428
|
-
|
|
6429
|
-
limitAmount:
|
|
6428
|
+
T.limitedByRowsAmountTo && /* @__PURE__ */ f(_u, {
|
|
6429
|
+
limitAmount: T.limitedByRowsAmountTo,
|
|
6430
6430
|
openAdvancedView: r,
|
|
6431
|
-
prefixIcon:
|
|
6432
|
-
contentClassName:
|
|
6431
|
+
prefixIcon: c,
|
|
6432
|
+
contentClassName: m
|
|
6433
6433
|
}),
|
|
6434
|
-
|
|
6434
|
+
x.length > 1 && /* @__PURE__ */ f(gu, {
|
|
6435
6435
|
icons: t,
|
|
6436
|
-
currentIndex:
|
|
6437
|
-
totalCount:
|
|
6438
|
-
onNext:
|
|
6439
|
-
onPrev:
|
|
6436
|
+
currentIndex: C,
|
|
6437
|
+
totalCount: x.length,
|
|
6438
|
+
onNext: L,
|
|
6439
|
+
onPrev: R
|
|
6440
6440
|
})
|
|
6441
6441
|
]
|
|
6442
6442
|
})]
|
|
6443
6443
|
}), /* @__PURE__ */ f(Rc, {
|
|
6444
|
-
dimensionsInfo:
|
|
6445
|
-
isNarrow:
|
|
6444
|
+
dimensionsInfo: T.dimensions,
|
|
6445
|
+
isNarrow: g
|
|
6446
6446
|
})]
|
|
6447
6447
|
})] })
|
|
6448
6448
|
})
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@epam/statgpt-conversation-view",
|
|
3
|
-
"version": "0.7.0-dev.
|
|
3
|
+
"version": "0.7.0-dev.31",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@epam/statgpt-conversation-list": "0.7.0-dev.
|
|
7
|
-
"@epam/statgpt-dial-toolkit": "0.7.0-dev.
|
|
8
|
-
"@epam/statgpt-sdmx-toolkit": "0.7.0-dev.
|
|
9
|
-
"@epam/statgpt-shared-toolkit": "0.7.0-dev.
|
|
10
|
-
"@epam/statgpt-ui-components": "0.7.0-dev.
|
|
6
|
+
"@epam/statgpt-conversation-list": "0.7.0-dev.31",
|
|
7
|
+
"@epam/statgpt-dial-toolkit": "0.7.0-dev.31",
|
|
8
|
+
"@epam/statgpt-sdmx-toolkit": "0.7.0-dev.31",
|
|
9
|
+
"@epam/statgpt-shared-toolkit": "0.7.0-dev.31",
|
|
10
|
+
"@epam/statgpt-ui-components": "0.7.0-dev.31"
|
|
11
11
|
},
|
|
12
12
|
"peerDependencies": {
|
|
13
13
|
"@epam/ai-dial-shared": "^0.43.3",
|