@epam/statgpt-sdmx-toolkit 0.4.0-rc.26 → 0.4.0-rc.28

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.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const B=t=>{if(t!=null){const e=t.split("=");return e.length===1?t:e[1]}},L=t=>{if(t==null)return{};const e=B(t),n={agency:"",id:"",version:""};return e&&(e.includes(":")&&(n.agency=e.split(":")[0],n.id=e.split(":")[1].split("(")[0]),e.includes("(")&&e.includes(")")&&(n.version=e.split("(")[1]?.split(")")[0])),n},ot=t=>{const[e,n]=t.split(")."),{agency:r,id:s,version:a}=L(e+")");return{childId:n,agency:r,id:s,version:a}},it=(t,e,n)=>{const r=e===""?"":`(${e})`;return`${n}:${t}${r}`};var ne=(t=>(t.DESCENDANTS="descendants",t.NONE="none",t.ALL="all",t))(ne||{}),Ae=(t=>(t.EXACT="exact",t.AVAILABLE="available",t))(Ae||{});function En(t){return{data:{codelists:t.data.codelists,conceptSchemes:t.data.conceptSchemes,dataConstraints:t.data.dataConstraints?.map(xn),dataflows:t.data.dataflows,dataStructures:t.data.dataStructures,metadataStructures:t.data.metadataStructures}}}function xn(t){return{...t,cubeRegions:t.cubeRegions?.map(Pn)}}function Pn(t){return{isIncluded:t.include,memberSelection:t.keyValues.map(Mn)}}function Mn(t){return{included:t.include,componentId:t.id,selectionValues:t.values.map(vn)}}function vn(t){return{memberValue:t.value}}const An=(t="",e="",n="")=>`sdmx/3.0/availability/dataflow/${t}/${e}/${n}`;class On{constructor(e){this.client=e}async getConstraints(e,n){const{agency:r,id:s,version:a}=L(e),o={filters:n||[],mode:Ae.AVAILABLE,references:ne.NONE},i=An(r,s,a);if(this.client.config.sdmxProxyUrl){const c=await this.client.postRequest(i,{body:o},this.client.config.sdmxProxyUrl);return En(c)}return await this.client.postRequest(i,{body:o},this.client.config.constrainsApiUrl||this.client.config.apiUrl)}}var H=(t=>(t.CSV="csv",t.JSON="json",t.XML="xml",t))(H||{}),ct=(t=>(t.ID="id",t.NAME="name",t.ID_NAME="both",t))(ct||{}),ut=(t=>(t.FULL_DATASET="full",t.DATA_IN_TABLE="query",t))(ut||{});const dt=(t,e)=>{switch(t){case H.CSV:return X("application/vnd.sdmx.data+csv;version=2.0.0",e);case H.XML:return X("application/vnd.sdmx.data+xml;version=3.0.0",e);case H.JSON:return X(`application/${t}`,e);default:return X("application/vnd.sdmx.data+csv;version=2.0.0",e)}},X=(t,e)=>`${t}; labels=${e}`;var Oe=(t=>(t.REFERENCE_PARTIAL="referencepartial",t.FULL="full",t))(Oe||{});const Nn="all",lt="sdmx/3.0/data/dataflow",ft="&",Qe=":",Rn="=",mt="+",_n=",",ht="*",De=(t,e,n)=>{const{filterKey:r,timeFilter:s}=n,{agency:a,id:o,version:i}=L(t),c=[s||"",e].filter(d=>!!d).join(ft);return`${`${lt}/${a}/${o}/${i}`}/${r||ht}?${c}`},In=(t="",e="",n="",r=ne.DESCENDANTS)=>`sdmx/3.0/structure/dataflow/${t}/${e}/${n}?references=${r}&detail=${Oe.REFERENCE_PARTIAL}`;class kn{constructor(e){this.client=e}async getDataSet(e,n){const{agency:r,id:s,version:a}=L(e);return await this.client.getRequest(In(r,s,a,n))}async getDatasetData(e,n){const r=new URLSearchParams({includeHistory:"false",limit:"1000",attributes:Nn,dimensionAtObservation:"TIME_PERIOD"}).toString(),s=De(e,r,n);return await this.client.getRequest(s)}async downloadDataSet(e,n,r,s,a,o,i=!1){const c=new URLSearchParams({format:n,compress:"false",attributes:i?"all":"none",limit:"1000"}).toString(),u=De(e,c,a);return this.client.streamRequest(u,{method:"GET",headers:{Accept:dt(n,s),"Accept-language":r}},o)}}const Yn=(t,e)=>t.error||t.message||`${e.status} ${e.statusText}`,Sn="application/json",Cn="Content-Type",we="Api-Key",Ln="X-CONVERSATION-ID",z="Ocp-Apim-Subscription-Key";class Ue extends Error{constructor(e){super(e.message),this.isHttpError=!0,this.name="HttpError",this.code=e.code,this.status=e.status,this.details=e.details,this.displayMessage=e.displayMessage}}const gt=6048e5,Wn=864e5,Ne=6e4,Re=36e5,$n=1e3,He=Symbol.for("constructDateFrom");function E(t,e){return typeof t=="function"?t(e):t&&typeof t=="object"&&He in t?t[He](e):t instanceof Date?new t.constructor(e):new Date(e)}function p(t,e){return E(e||t,t)}function wt(t,e,n){const r=p(t,n?.in);return isNaN(e)?E(n?.in||t,NaN):(e&&r.setDate(r.getDate()+e),r)}let qn={};function W(){return qn}function I(t,e){const n=W(),r=e?.weekStartsOn??e?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,s=p(t,e?.in),a=s.getDay(),o=(a<r?7:0)+a-r;return s.setDate(s.getDate()-o),s.setHours(0,0,0,0),s}function C(t,e){return I(t,{...e,weekStartsOn:1})}function yt(t,e){const n=p(t,e?.in),r=n.getFullYear(),s=E(n,0);s.setFullYear(r+1,0,4),s.setHours(0,0,0,0);const a=C(s),o=E(n,0);o.setFullYear(r,0,4),o.setHours(0,0,0,0);const i=C(o);return n.getTime()>=a.getTime()?r+1:n.getTime()>=i.getTime()?r:r-1}function J(t){const e=p(t),n=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return n.setUTCFullYear(e.getFullYear()),+t-+n}function Fn(t,...e){const n=E.bind(null,e.find(r=>typeof r=="object"));return e.map(n)}function Be(t,e){const n=p(t,e?.in);return n.setHours(0,0,0,0),n}function Qn(t,e,n){const[r,s]=Fn(n?.in,t,e),a=Be(r),o=Be(s),i=+a-J(a),c=+o-J(o);return Math.round((i-c)/Wn)}function Un(t,e){const n=yt(t,e),r=E(t,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),C(r)}function Hn(t){return t instanceof Date||typeof t=="object"&&Object.prototype.toString.call(t)==="[object Date]"}function be(t){return!(!Hn(t)&&typeof t!="number"||isNaN(+p(t)))}function Bn(t,e){const n=p(t,e?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}const Gn={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Vn=(t,e,n)=>{let r;const s=Gn[t];return typeof s=="string"?r=s:e===1?r=s.one:r=s.other.replace("{{count}}",e.toString()),n?.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function ye(t){return(e={})=>{const n=e.width?String(e.width):t.defaultWidth;return t.formats[n]||t.formats[t.defaultWidth]}}const Xn={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},jn={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Kn={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},zn={date:ye({formats:Xn,defaultWidth:"full"}),time:ye({formats:jn,defaultWidth:"full"}),dateTime:ye({formats:Kn,defaultWidth:"full"})},Jn={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Zn=(t,e,n,r)=>Jn[t];function F(t){return(e,n)=>{const r=n?.context?String(n.context):"standalone";let s;if(r==="formatting"&&t.formattingValues){const o=t.defaultFormattingWidth||t.defaultWidth,i=n?.width?String(n.width):o;s=t.formattingValues[i]||t.formattingValues[o]}else{const o=t.defaultWidth,i=n?.width?String(n.width):t.defaultWidth;s=t.values[i]||t.values[o]}const a=t.argumentCallback?t.argumentCallback(e):e;return s[a]}}const er={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},tr={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},nr={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},rr={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},sr={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},ar={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},or=(t,e)=>{const n=Number(t),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},ir={ordinalNumber:or,era:F({values:er,defaultWidth:"wide"}),quarter:F({values:tr,defaultWidth:"wide",argumentCallback:t=>t-1}),month:F({values:nr,defaultWidth:"wide"}),day:F({values:rr,defaultWidth:"wide"}),dayPeriod:F({values:sr,defaultWidth:"wide",formattingValues:ar,defaultFormattingWidth:"wide"})};function Q(t){return(e,n={})=>{const r=n.width,s=r&&t.matchPatterns[r]||t.matchPatterns[t.defaultMatchWidth],a=e.match(s);if(!a)return null;const o=a[0],i=r&&t.parsePatterns[r]||t.parsePatterns[t.defaultParseWidth],c=Array.isArray(i)?ur(i,l=>l.test(o)):cr(i,l=>l.test(o));let u;u=t.valueCallback?t.valueCallback(c):c,u=n.valueCallback?n.valueCallback(u):u;const d=e.slice(o.length);return{value:u,rest:d}}}function cr(t,e){for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&e(t[n]))return n}function ur(t,e){for(let n=0;n<t.length;n++)if(e(t[n]))return n}function dr(t){return(e,n={})=>{const r=e.match(t.matchPattern);if(!r)return null;const s=r[0],a=e.match(t.parsePattern);if(!a)return null;let o=t.valueCallback?t.valueCallback(a[0]):a[0];o=n.valueCallback?n.valueCallback(o):o;const i=e.slice(s.length);return{value:o,rest:i}}}const lr=/^(\d+)(th|st|nd|rd)?/i,fr=/\d+/i,mr={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},hr={any:[/^b/i,/^(a|c)/i]},gr={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},wr={any:[/1/i,/2/i,/3/i,/4/i]},yr={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},pr={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},Dr={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},br={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},Tr={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},Er={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},xr={ordinalNumber:dr({matchPattern:lr,parsePattern:fr,valueCallback:t=>parseInt(t,10)}),era:Q({matchPatterns:mr,defaultMatchWidth:"wide",parsePatterns:hr,defaultParseWidth:"any"}),quarter:Q({matchPatterns:gr,defaultMatchWidth:"wide",parsePatterns:wr,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Q({matchPatterns:yr,defaultMatchWidth:"wide",parsePatterns:pr,defaultParseWidth:"any"}),day:Q({matchPatterns:Dr,defaultMatchWidth:"wide",parsePatterns:br,defaultParseWidth:"any"}),dayPeriod:Q({matchPatterns:Tr,defaultMatchWidth:"any",parsePatterns:Er,defaultParseWidth:"any"})},pt={code:"en-US",formatDistance:Vn,formatLong:zn,formatRelative:Zn,localize:ir,match:xr,options:{weekStartsOn:0,firstWeekContainsDate:1}};function Pr(t,e){const n=p(t,e?.in);return Qn(n,Bn(n))+1}function Dt(t,e){const n=p(t,e?.in),r=+C(n)-+Un(n);return Math.round(r/gt)+1}function _e(t,e){const n=p(t,e?.in),r=n.getFullYear(),s=W(),a=e?.firstWeekContainsDate??e?.locale?.options?.firstWeekContainsDate??s.firstWeekContainsDate??s.locale?.options?.firstWeekContainsDate??1,o=E(e?.in||t,0);o.setFullYear(r+1,0,a),o.setHours(0,0,0,0);const i=I(o,e),c=E(e?.in||t,0);c.setFullYear(r,0,a),c.setHours(0,0,0,0);const u=I(c,e);return+n>=+i?r+1:+n>=+u?r:r-1}function Mr(t,e){const n=W(),r=e?.firstWeekContainsDate??e?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,s=_e(t,e),a=E(e?.in||t,0);return a.setFullYear(s,0,r),a.setHours(0,0,0,0),I(a,e)}function bt(t,e){const n=p(t,e?.in),r=+I(n,e)-+Mr(n,e);return Math.round(r/gt)+1}function h(t,e){const n=t<0?"-":"",r=Math.abs(t).toString().padStart(e,"0");return n+r}const _={y(t,e){const n=t.getFullYear(),r=n>0?n:1-n;return h(e==="yy"?r%100:r,e.length)},M(t,e){const n=t.getMonth();return e==="M"?String(n+1):h(n+1,2)},d(t,e){return h(t.getDate(),e.length)},a(t,e){const n=t.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];default:return n==="am"?"a.m.":"p.m."}},h(t,e){return h(t.getHours()%12||12,e.length)},H(t,e){return h(t.getHours(),e.length)},m(t,e){return h(t.getMinutes(),e.length)},s(t,e){return h(t.getSeconds(),e.length)},S(t,e){const n=e.length,r=t.getMilliseconds(),s=Math.trunc(r*Math.pow(10,n-3));return h(s,e.length)}},S={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},Ge={G:function(t,e,n){const r=t.getFullYear()>0?1:0;switch(e){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});default:return n.era(r,{width:"wide"})}},y:function(t,e,n){if(e==="yo"){const r=t.getFullYear(),s=r>0?r:1-r;return n.ordinalNumber(s,{unit:"year"})}return _.y(t,e)},Y:function(t,e,n,r){const s=_e(t,r),a=s>0?s:1-s;if(e==="YY"){const o=a%100;return h(o,2)}return e==="Yo"?n.ordinalNumber(a,{unit:"year"}):h(a,e.length)},R:function(t,e){const n=yt(t);return h(n,e.length)},u:function(t,e){const n=t.getFullYear();return h(n,e.length)},Q:function(t,e,n){const r=Math.ceil((t.getMonth()+1)/3);switch(e){case"Q":return String(r);case"QQ":return h(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(t,e,n){const r=Math.ceil((t.getMonth()+1)/3);switch(e){case"q":return String(r);case"qq":return h(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(t,e,n){const r=t.getMonth();switch(e){case"M":case"MM":return _.M(t,e);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(t,e,n){const r=t.getMonth();switch(e){case"L":return String(r+1);case"LL":return h(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(t,e,n,r){const s=bt(t,r);return e==="wo"?n.ordinalNumber(s,{unit:"week"}):h(s,e.length)},I:function(t,e,n){const r=Dt(t);return e==="Io"?n.ordinalNumber(r,{unit:"week"}):h(r,e.length)},d:function(t,e,n){return e==="do"?n.ordinalNumber(t.getDate(),{unit:"date"}):_.d(t,e)},D:function(t,e,n){const r=Pr(t);return e==="Do"?n.ordinalNumber(r,{unit:"dayOfYear"}):h(r,e.length)},E:function(t,e,n){const r=t.getDay();switch(e){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(t,e,n,r){const s=t.getDay(),a=(s-r.weekStartsOn+8)%7||7;switch(e){case"e":return String(a);case"ee":return h(a,2);case"eo":return n.ordinalNumber(a,{unit:"day"});case"eee":return n.day(s,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(s,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(s,{width:"short",context:"formatting"});default:return n.day(s,{width:"wide",context:"formatting"})}},c:function(t,e,n,r){const s=t.getDay(),a=(s-r.weekStartsOn+8)%7||7;switch(e){case"c":return String(a);case"cc":return h(a,e.length);case"co":return n.ordinalNumber(a,{unit:"day"});case"ccc":return n.day(s,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(s,{width:"narrow",context:"standalone"});case"cccccc":return n.day(s,{width:"short",context:"standalone"});default:return n.day(s,{width:"wide",context:"standalone"})}},i:function(t,e,n){const r=t.getDay(),s=r===0?7:r;switch(e){case"i":return String(s);case"ii":return h(s,e.length);case"io":return n.ordinalNumber(s,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(t,e,n){const s=t.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.dayPeriod(s,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(s,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(s,{width:"narrow",context:"formatting"});default:return n.dayPeriod(s,{width:"wide",context:"formatting"})}},b:function(t,e,n){const r=t.getHours();let s;switch(r===12?s=S.noon:r===0?s=S.midnight:s=r/12>=1?"pm":"am",e){case"b":case"bb":return n.dayPeriod(s,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(s,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(s,{width:"narrow",context:"formatting"});default:return n.dayPeriod(s,{width:"wide",context:"formatting"})}},B:function(t,e,n){const r=t.getHours();let s;switch(r>=17?s=S.evening:r>=12?s=S.afternoon:r>=4?s=S.morning:s=S.night,e){case"B":case"BB":case"BBB":return n.dayPeriod(s,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(s,{width:"narrow",context:"formatting"});default:return n.dayPeriod(s,{width:"wide",context:"formatting"})}},h:function(t,e,n){if(e==="ho"){let r=t.getHours()%12;return r===0&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return _.h(t,e)},H:function(t,e,n){return e==="Ho"?n.ordinalNumber(t.getHours(),{unit:"hour"}):_.H(t,e)},K:function(t,e,n){const r=t.getHours()%12;return e==="Ko"?n.ordinalNumber(r,{unit:"hour"}):h(r,e.length)},k:function(t,e,n){let r=t.getHours();return r===0&&(r=24),e==="ko"?n.ordinalNumber(r,{unit:"hour"}):h(r,e.length)},m:function(t,e,n){return e==="mo"?n.ordinalNumber(t.getMinutes(),{unit:"minute"}):_.m(t,e)},s:function(t,e,n){return e==="so"?n.ordinalNumber(t.getSeconds(),{unit:"second"}):_.s(t,e)},S:function(t,e){return _.S(t,e)},X:function(t,e,n){const r=t.getTimezoneOffset();if(r===0)return"Z";switch(e){case"X":return Xe(r);case"XXXX":case"XX":return k(r);default:return k(r,":")}},x:function(t,e,n){const r=t.getTimezoneOffset();switch(e){case"x":return Xe(r);case"xxxx":case"xx":return k(r);default:return k(r,":")}},O:function(t,e,n){const r=t.getTimezoneOffset();switch(e){case"O":case"OO":case"OOO":return"GMT"+Ve(r,":");default:return"GMT"+k(r,":")}},z:function(t,e,n){const r=t.getTimezoneOffset();switch(e){case"z":case"zz":case"zzz":return"GMT"+Ve(r,":");default:return"GMT"+k(r,":")}},t:function(t,e,n){const r=Math.trunc(+t/1e3);return h(r,e.length)},T:function(t,e,n){return h(+t,e.length)}};function Ve(t,e=""){const n=t>0?"-":"+",r=Math.abs(t),s=Math.trunc(r/60),a=r%60;return a===0?n+String(s):n+String(s)+e+h(a,2)}function Xe(t,e){return t%60===0?(t>0?"-":"+")+h(Math.abs(t)/60,2):k(t,e)}function k(t,e=""){const n=t>0?"-":"+",r=Math.abs(t),s=h(Math.trunc(r/60),2),a=h(r%60,2);return n+s+e+a}const je=(t,e)=>{switch(t){case"P":return e.date({width:"short"});case"PP":return e.date({width:"medium"});case"PPP":return e.date({width:"long"});default:return e.date({width:"full"})}},Tt=(t,e)=>{switch(t){case"p":return e.time({width:"short"});case"pp":return e.time({width:"medium"});case"ppp":return e.time({width:"long"});default:return e.time({width:"full"})}},vr=(t,e)=>{const n=t.match(/(P+)(p+)?/)||[],r=n[1],s=n[2];if(!s)return je(t,e);let a;switch(r){case"P":a=e.dateTime({width:"short"});break;case"PP":a=e.dateTime({width:"medium"});break;case"PPP":a=e.dateTime({width:"long"});break;default:a=e.dateTime({width:"full"});break}return a.replace("{{date}}",je(r,e)).replace("{{time}}",Tt(s,e))},Te={p:Tt,P:vr},Ar=/^D+$/,Or=/^Y+$/,Nr=["D","DD","YY","YYYY"];function Et(t){return Ar.test(t)}function xt(t){return Or.test(t)}function Ee(t,e,n){const r=Rr(t,e,n);if(console.warn(r),Nr.includes(t))throw new RangeError(r)}function Rr(t,e,n){const r=t[0]==="Y"?"years":"days of the month";return`Use \`${t.toLowerCase()}\` instead of \`${t}\` (in \`${e}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const _r=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Ir=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,kr=/^'([^]*?)'?$/,Yr=/''/g,Sr=/[a-zA-Z]/;function Cr(t,e,n){const r=W(),s=r.locale??pt,a=r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,o=r.weekStartsOn??r.locale?.options?.weekStartsOn??0,i=p(t,n?.in);if(!be(i))throw new RangeError("Invalid time value");let c=e.match(Ir).map(d=>{const l=d[0];if(l==="p"||l==="P"){const w=Te[l];return w(d,s.formatLong)}return d}).join("").match(_r).map(d=>{if(d==="''")return{isToken:!1,value:"'"};const l=d[0];if(l==="'")return{isToken:!1,value:Lr(d)};if(Ge[l])return{isToken:!0,value:d};if(l.match(Sr))throw new RangeError("Format string contains an unescaped latin alphabet character `"+l+"`");return{isToken:!1,value:d}});s.localize.preprocessor&&(c=s.localize.preprocessor(i,c));const u={firstWeekContainsDate:a,weekStartsOn:o,locale:s};return c.map(d=>{if(!d.isToken)return d.value;const l=d.value;(xt(l)||Et(l))&&Ee(l,e,String(t));const w=Ge[l[0]];return w(i,l,s.localize,u)}).join("")}function Lr(t){const e=t.match(kr);return e?e[1].replace(Yr,"'"):t}function Wr(){return Object.assign({},W())}function $r(t,e){const n=p(t,e?.in).getDay();return n===0?7:n}function qr(t,e){const n=Fr(e)?new e(0):E(e,0);return n.setFullYear(t.getFullYear(),t.getMonth(),t.getDate()),n.setHours(t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()),n}function Fr(t){return typeof t=="function"&&t.prototype?.constructor===t}const Qr=10;class Pt{subPriority=0;validate(e,n){return!0}}class Ur extends Pt{constructor(e,n,r,s,a){super(),this.value=e,this.validateValue=n,this.setValue=r,this.priority=s,a&&(this.subPriority=a)}validate(e,n){return this.validateValue(e,this.value,n)}set(e,n,r){return this.setValue(e,n,this.value,r)}}class Hr extends Pt{priority=Qr;subPriority=-1;constructor(e,n){super(),this.context=e||(r=>E(n,r))}set(e,n){return n.timestampIsSet?e:E(e,qr(e,this.context))}}class m{run(e,n,r,s){const a=this.parse(e,n,r,s);return a?{setter:new Ur(a.value,this.validate,this.set,this.priority,this.subPriority),rest:a.rest}:null}validate(e,n,r){return!0}}class Br extends m{priority=140;parse(e,n,r){switch(n){case"G":case"GG":case"GGG":return r.era(e,{width:"abbreviated"})||r.era(e,{width:"narrow"});case"GGGGG":return r.era(e,{width:"narrow"});default:return r.era(e,{width:"wide"})||r.era(e,{width:"abbreviated"})||r.era(e,{width:"narrow"})}}set(e,n,r){return n.era=r,e.setFullYear(r,0,1),e.setHours(0,0,0,0),e}incompatibleTokens=["R","u","t","T"]}const b={month:/^(1[0-2]|0?\d)/,date:/^(3[0-1]|[0-2]?\d)/,dayOfYear:/^(36[0-6]|3[0-5]\d|[0-2]?\d?\d)/,week:/^(5[0-3]|[0-4]?\d)/,hour23h:/^(2[0-3]|[0-1]?\d)/,hour24h:/^(2[0-4]|[0-1]?\d)/,hour11h:/^(1[0-1]|0?\d)/,hour12h:/^(1[0-2]|0?\d)/,minute:/^[0-5]?\d/,second:/^[0-5]?\d/,singleDigit:/^\d/,twoDigits:/^\d{1,2}/,threeDigits:/^\d{1,3}/,fourDigits:/^\d{1,4}/,anyDigitsSigned:/^-?\d+/,singleDigitSigned:/^-?\d/,twoDigitsSigned:/^-?\d{1,2}/,threeDigitsSigned:/^-?\d{1,3}/,fourDigitsSigned:/^-?\d{1,4}/},A={basicOptionalMinutes:/^([+-])(\d{2})(\d{2})?|Z/,basic:/^([+-])(\d{2})(\d{2})|Z/,basicOptionalSeconds:/^([+-])(\d{2})(\d{2})((\d{2}))?|Z/,extended:/^([+-])(\d{2}):(\d{2})|Z/,extendedOptionalSeconds:/^([+-])(\d{2}):(\d{2})(:(\d{2}))?|Z/};function T(t,e){return t&&{value:e(t.value),rest:t.rest}}function y(t,e){const n=e.match(t);return n?{value:parseInt(n[0],10),rest:e.slice(n[0].length)}:null}function O(t,e){const n=e.match(t);if(!n)return null;if(n[0]==="Z")return{value:0,rest:e.slice(1)};const r=n[1]==="+"?1:-1,s=n[2]?parseInt(n[2],10):0,a=n[3]?parseInt(n[3],10):0,o=n[5]?parseInt(n[5],10):0;return{value:r*(s*Re+a*Ne+o*$n),rest:e.slice(n[0].length)}}function Mt(t){return y(b.anyDigitsSigned,t)}function D(t,e){switch(t){case 1:return y(b.singleDigit,e);case 2:return y(b.twoDigits,e);case 3:return y(b.threeDigits,e);case 4:return y(b.fourDigits,e);default:return y(new RegExp("^\\d{1,"+t+"}"),e)}}function Z(t,e){switch(t){case 1:return y(b.singleDigitSigned,e);case 2:return y(b.twoDigitsSigned,e);case 3:return y(b.threeDigitsSigned,e);case 4:return y(b.fourDigitsSigned,e);default:return y(new RegExp("^-?\\d{1,"+t+"}"),e)}}function Ie(t){switch(t){case"morning":return 4;case"evening":return 17;case"pm":case"noon":case"afternoon":return 12;default:return 0}}function vt(t,e){const n=e>0,r=n?e:1-e;let s;if(r<=50)s=t||100;else{const a=r+50,o=Math.trunc(a/100)*100,i=t>=a%100;s=t+o-(i?100:0)}return n?s:1-s}function At(t){return t%400===0||t%4===0&&t%100!==0}class Gr extends m{priority=130;incompatibleTokens=["Y","R","u","w","I","i","e","c","t","T"];parse(e,n,r){const s=a=>({year:a,isTwoDigitYear:n==="yy"});switch(n){case"y":return T(D(4,e),s);case"yo":return T(r.ordinalNumber(e,{unit:"year"}),s);default:return T(D(n.length,e),s)}}validate(e,n){return n.isTwoDigitYear||n.year>0}set(e,n,r){const s=e.getFullYear();if(r.isTwoDigitYear){const o=vt(r.year,s);return e.setFullYear(o,0,1),e.setHours(0,0,0,0),e}const a=!("era"in n)||n.era===1?r.year:1-r.year;return e.setFullYear(a,0,1),e.setHours(0,0,0,0),e}}class Vr extends m{priority=130;parse(e,n,r){const s=a=>({year:a,isTwoDigitYear:n==="YY"});switch(n){case"Y":return T(D(4,e),s);case"Yo":return T(r.ordinalNumber(e,{unit:"year"}),s);default:return T(D(n.length,e),s)}}validate(e,n){return n.isTwoDigitYear||n.year>0}set(e,n,r,s){const a=_e(e,s);if(r.isTwoDigitYear){const i=vt(r.year,a);return e.setFullYear(i,0,s.firstWeekContainsDate),e.setHours(0,0,0,0),I(e,s)}const o=!("era"in n)||n.era===1?r.year:1-r.year;return e.setFullYear(o,0,s.firstWeekContainsDate),e.setHours(0,0,0,0),I(e,s)}incompatibleTokens=["y","R","u","Q","q","M","L","I","d","D","i","t","T"]}class Xr extends m{priority=130;parse(e,n){return Z(n==="R"?4:n.length,e)}set(e,n,r){const s=E(e,0);return s.setFullYear(r,0,4),s.setHours(0,0,0,0),C(s)}incompatibleTokens=["G","y","Y","u","Q","q","M","L","w","d","D","e","c","t","T"]}class jr extends m{priority=130;parse(e,n){return Z(n==="u"?4:n.length,e)}set(e,n,r){return e.setFullYear(r,0,1),e.setHours(0,0,0,0),e}incompatibleTokens=["G","y","Y","R","w","I","i","e","c","t","T"]}class Kr extends m{priority=120;parse(e,n,r){switch(n){case"Q":case"QQ":return D(n.length,e);case"Qo":return r.ordinalNumber(e,{unit:"quarter"});case"QQQ":return r.quarter(e,{width:"abbreviated",context:"formatting"})||r.quarter(e,{width:"narrow",context:"formatting"});case"QQQQQ":return r.quarter(e,{width:"narrow",context:"formatting"});default:return r.quarter(e,{width:"wide",context:"formatting"})||r.quarter(e,{width:"abbreviated",context:"formatting"})||r.quarter(e,{width:"narrow",context:"formatting"})}}validate(e,n){return n>=1&&n<=4}set(e,n,r){return e.setMonth((r-1)*3,1),e.setHours(0,0,0,0),e}incompatibleTokens=["Y","R","q","M","L","w","I","d","D","i","e","c","t","T"]}class zr extends m{priority=120;parse(e,n,r){switch(n){case"q":case"qq":return D(n.length,e);case"qo":return r.ordinalNumber(e,{unit:"quarter"});case"qqq":return r.quarter(e,{width:"abbreviated",context:"standalone"})||r.quarter(e,{width:"narrow",context:"standalone"});case"qqqqq":return r.quarter(e,{width:"narrow",context:"standalone"});default:return r.quarter(e,{width:"wide",context:"standalone"})||r.quarter(e,{width:"abbreviated",context:"standalone"})||r.quarter(e,{width:"narrow",context:"standalone"})}}validate(e,n){return n>=1&&n<=4}set(e,n,r){return e.setMonth((r-1)*3,1),e.setHours(0,0,0,0),e}incompatibleTokens=["Y","R","Q","M","L","w","I","d","D","i","e","c","t","T"]}class Jr extends m{incompatibleTokens=["Y","R","q","Q","L","w","I","D","i","e","c","t","T"];priority=110;parse(e,n,r){const s=a=>a-1;switch(n){case"M":return T(y(b.month,e),s);case"MM":return T(D(2,e),s);case"Mo":return T(r.ordinalNumber(e,{unit:"month"}),s);case"MMM":return r.month(e,{width:"abbreviated",context:"formatting"})||r.month(e,{width:"narrow",context:"formatting"});case"MMMMM":return r.month(e,{width:"narrow",context:"formatting"});default:return r.month(e,{width:"wide",context:"formatting"})||r.month(e,{width:"abbreviated",context:"formatting"})||r.month(e,{width:"narrow",context:"formatting"})}}validate(e,n){return n>=0&&n<=11}set(e,n,r){return e.setMonth(r,1),e.setHours(0,0,0,0),e}}class Zr extends m{priority=110;parse(e,n,r){const s=a=>a-1;switch(n){case"L":return T(y(b.month,e),s);case"LL":return T(D(2,e),s);case"Lo":return T(r.ordinalNumber(e,{unit:"month"}),s);case"LLL":return r.month(e,{width:"abbreviated",context:"standalone"})||r.month(e,{width:"narrow",context:"standalone"});case"LLLLL":return r.month(e,{width:"narrow",context:"standalone"});default:return r.month(e,{width:"wide",context:"standalone"})||r.month(e,{width:"abbreviated",context:"standalone"})||r.month(e,{width:"narrow",context:"standalone"})}}validate(e,n){return n>=0&&n<=11}set(e,n,r){return e.setMonth(r,1),e.setHours(0,0,0,0),e}incompatibleTokens=["Y","R","q","Q","M","w","I","D","i","e","c","t","T"]}function es(t,e,n){const r=p(t,n?.in),s=bt(r,n)-e;return r.setDate(r.getDate()-s*7),p(r,n?.in)}class ts extends m{priority=100;parse(e,n,r){switch(n){case"w":return y(b.week,e);case"wo":return r.ordinalNumber(e,{unit:"week"});default:return D(n.length,e)}}validate(e,n){return n>=1&&n<=53}set(e,n,r,s){return I(es(e,r,s),s)}incompatibleTokens=["y","R","u","q","Q","M","L","I","d","D","i","t","T"]}function ns(t,e,n){const r=p(t,n?.in),s=Dt(r,n)-e;return r.setDate(r.getDate()-s*7),r}class rs extends m{priority=100;parse(e,n,r){switch(n){case"I":return y(b.week,e);case"Io":return r.ordinalNumber(e,{unit:"week"});default:return D(n.length,e)}}validate(e,n){return n>=1&&n<=53}set(e,n,r){return C(ns(e,r))}incompatibleTokens=["y","Y","u","q","Q","M","L","w","d","D","e","c","t","T"]}const ss=[31,28,31,30,31,30,31,31,30,31,30,31],as=[31,29,31,30,31,30,31,31,30,31,30,31];class os extends m{priority=90;subPriority=1;parse(e,n,r){switch(n){case"d":return y(b.date,e);case"do":return r.ordinalNumber(e,{unit:"date"});default:return D(n.length,e)}}validate(e,n){const r=e.getFullYear(),s=At(r),a=e.getMonth();return s?n>=1&&n<=as[a]:n>=1&&n<=ss[a]}set(e,n,r){return e.setDate(r),e.setHours(0,0,0,0),e}incompatibleTokens=["Y","R","q","Q","w","I","D","i","e","c","t","T"]}class is extends m{priority=90;subpriority=1;parse(e,n,r){switch(n){case"D":case"DD":return y(b.dayOfYear,e);case"Do":return r.ordinalNumber(e,{unit:"date"});default:return D(n.length,e)}}validate(e,n){const r=e.getFullYear();return At(r)?n>=1&&n<=366:n>=1&&n<=365}set(e,n,r){return e.setMonth(0,r),e.setHours(0,0,0,0),e}incompatibleTokens=["Y","R","q","Q","M","L","w","I","d","E","i","e","c","t","T"]}function ke(t,e,n){const r=W(),s=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,a=p(t,n?.in),o=a.getDay(),c=(e%7+7)%7,u=7-s,d=e<0||e>6?e-(o+u)%7:(c+u)%7-(o+u)%7;return wt(a,d,n)}class cs extends m{priority=90;parse(e,n,r){switch(n){case"E":case"EE":case"EEE":return r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"});case"EEEEE":return r.day(e,{width:"narrow",context:"formatting"});case"EEEEEE":return r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"});default:return r.day(e,{width:"wide",context:"formatting"})||r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"})}}validate(e,n){return n>=0&&n<=6}set(e,n,r,s){return e=ke(e,r,s),e.setHours(0,0,0,0),e}incompatibleTokens=["D","i","e","c","t","T"]}class us extends m{priority=90;parse(e,n,r,s){const a=o=>{const i=Math.floor((o-1)/7)*7;return(o+s.weekStartsOn+6)%7+i};switch(n){case"e":case"ee":return T(D(n.length,e),a);case"eo":return T(r.ordinalNumber(e,{unit:"day"}),a);case"eee":return r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"});case"eeeee":return r.day(e,{width:"narrow",context:"formatting"});case"eeeeee":return r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"});default:return r.day(e,{width:"wide",context:"formatting"})||r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"})}}validate(e,n){return n>=0&&n<=6}set(e,n,r,s){return e=ke(e,r,s),e.setHours(0,0,0,0),e}incompatibleTokens=["y","R","u","q","Q","M","L","I","d","D","E","i","c","t","T"]}class ds extends m{priority=90;parse(e,n,r,s){const a=o=>{const i=Math.floor((o-1)/7)*7;return(o+s.weekStartsOn+6)%7+i};switch(n){case"c":case"cc":return T(D(n.length,e),a);case"co":return T(r.ordinalNumber(e,{unit:"day"}),a);case"ccc":return r.day(e,{width:"abbreviated",context:"standalone"})||r.day(e,{width:"short",context:"standalone"})||r.day(e,{width:"narrow",context:"standalone"});case"ccccc":return r.day(e,{width:"narrow",context:"standalone"});case"cccccc":return r.day(e,{width:"short",context:"standalone"})||r.day(e,{width:"narrow",context:"standalone"});default:return r.day(e,{width:"wide",context:"standalone"})||r.day(e,{width:"abbreviated",context:"standalone"})||r.day(e,{width:"short",context:"standalone"})||r.day(e,{width:"narrow",context:"standalone"})}}validate(e,n){return n>=0&&n<=6}set(e,n,r,s){return e=ke(e,r,s),e.setHours(0,0,0,0),e}incompatibleTokens=["y","R","u","q","Q","M","L","I","d","D","E","i","e","t","T"]}function ls(t,e,n){const r=p(t,n?.in),s=$r(r,n),a=e-s;return wt(r,a,n)}class fs extends m{priority=90;parse(e,n,r){const s=a=>a===0?7:a;switch(n){case"i":case"ii":return D(n.length,e);case"io":return r.ordinalNumber(e,{unit:"day"});case"iii":return T(r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"}),s);case"iiiii":return T(r.day(e,{width:"narrow",context:"formatting"}),s);case"iiiiii":return T(r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"}),s);default:return T(r.day(e,{width:"wide",context:"formatting"})||r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"}),s)}}validate(e,n){return n>=1&&n<=7}set(e,n,r){return e=ls(e,r),e.setHours(0,0,0,0),e}incompatibleTokens=["y","Y","u","q","Q","M","L","w","d","D","E","e","c","t","T"]}class ms extends m{priority=80;parse(e,n,r){switch(n){case"a":case"aa":case"aaa":return r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"});case"aaaaa":return r.dayPeriod(e,{width:"narrow",context:"formatting"});default:return r.dayPeriod(e,{width:"wide",context:"formatting"})||r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"})}}set(e,n,r){return e.setHours(Ie(r),0,0,0),e}incompatibleTokens=["b","B","H","k","t","T"]}class hs extends m{priority=80;parse(e,n,r){switch(n){case"b":case"bb":case"bbb":return r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"});case"bbbbb":return r.dayPeriod(e,{width:"narrow",context:"formatting"});default:return r.dayPeriod(e,{width:"wide",context:"formatting"})||r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"})}}set(e,n,r){return e.setHours(Ie(r),0,0,0),e}incompatibleTokens=["a","B","H","k","t","T"]}class gs extends m{priority=80;parse(e,n,r){switch(n){case"B":case"BB":case"BBB":return r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"});case"BBBBB":return r.dayPeriod(e,{width:"narrow",context:"formatting"});default:return r.dayPeriod(e,{width:"wide",context:"formatting"})||r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"})}}set(e,n,r){return e.setHours(Ie(r),0,0,0),e}incompatibleTokens=["a","b","t","T"]}class ws extends m{priority=70;parse(e,n,r){switch(n){case"h":return y(b.hour12h,e);case"ho":return r.ordinalNumber(e,{unit:"hour"});default:return D(n.length,e)}}validate(e,n){return n>=1&&n<=12}set(e,n,r){const s=e.getHours()>=12;return s&&r<12?e.setHours(r+12,0,0,0):!s&&r===12?e.setHours(0,0,0,0):e.setHours(r,0,0,0),e}incompatibleTokens=["H","K","k","t","T"]}class ys extends m{priority=70;parse(e,n,r){switch(n){case"H":return y(b.hour23h,e);case"Ho":return r.ordinalNumber(e,{unit:"hour"});default:return D(n.length,e)}}validate(e,n){return n>=0&&n<=23}set(e,n,r){return e.setHours(r,0,0,0),e}incompatibleTokens=["a","b","h","K","k","t","T"]}class ps extends m{priority=70;parse(e,n,r){switch(n){case"K":return y(b.hour11h,e);case"Ko":return r.ordinalNumber(e,{unit:"hour"});default:return D(n.length,e)}}validate(e,n){return n>=0&&n<=11}set(e,n,r){return e.getHours()>=12&&r<12?e.setHours(r+12,0,0,0):e.setHours(r,0,0,0),e}incompatibleTokens=["h","H","k","t","T"]}class Ds extends m{priority=70;parse(e,n,r){switch(n){case"k":return y(b.hour24h,e);case"ko":return r.ordinalNumber(e,{unit:"hour"});default:return D(n.length,e)}}validate(e,n){return n>=1&&n<=24}set(e,n,r){const s=r<=24?r%24:r;return e.setHours(s,0,0,0),e}incompatibleTokens=["a","b","h","H","K","t","T"]}class bs extends m{priority=60;parse(e,n,r){switch(n){case"m":return y(b.minute,e);case"mo":return r.ordinalNumber(e,{unit:"minute"});default:return D(n.length,e)}}validate(e,n){return n>=0&&n<=59}set(e,n,r){return e.setMinutes(r,0,0),e}incompatibleTokens=["t","T"]}class Ts extends m{priority=50;parse(e,n,r){switch(n){case"s":return y(b.second,e);case"so":return r.ordinalNumber(e,{unit:"second"});default:return D(n.length,e)}}validate(e,n){return n>=0&&n<=59}set(e,n,r){return e.setSeconds(r,0),e}incompatibleTokens=["t","T"]}class Es extends m{priority=30;parse(e,n){const r=s=>Math.trunc(s*Math.pow(10,-n.length+3));return T(D(n.length,e),r)}set(e,n,r){return e.setMilliseconds(r),e}incompatibleTokens=["t","T"]}class xs extends m{priority=10;parse(e,n){switch(n){case"X":return O(A.basicOptionalMinutes,e);case"XX":return O(A.basic,e);case"XXXX":return O(A.basicOptionalSeconds,e);case"XXXXX":return O(A.extendedOptionalSeconds,e);default:return O(A.extended,e)}}set(e,n,r){return n.timestampIsSet?e:E(e,e.getTime()-J(e)-r)}incompatibleTokens=["t","T","x"]}class Ps extends m{priority=10;parse(e,n){switch(n){case"x":return O(A.basicOptionalMinutes,e);case"xx":return O(A.basic,e);case"xxxx":return O(A.basicOptionalSeconds,e);case"xxxxx":return O(A.extendedOptionalSeconds,e);default:return O(A.extended,e)}}set(e,n,r){return n.timestampIsSet?e:E(e,e.getTime()-J(e)-r)}incompatibleTokens=["t","T","X"]}class Ms extends m{priority=40;parse(e){return Mt(e)}set(e,n,r){return[E(e,r*1e3),{timestampIsSet:!0}]}incompatibleTokens="*"}class vs extends m{priority=20;parse(e){return Mt(e)}set(e,n,r){return[E(e,r),{timestampIsSet:!0}]}incompatibleTokens="*"}const As={G:new Br,y:new Gr,Y:new Vr,R:new Xr,u:new jr,Q:new Kr,q:new zr,M:new Jr,L:new Zr,w:new ts,I:new rs,d:new os,D:new is,E:new cs,e:new us,c:new ds,i:new fs,a:new ms,b:new hs,B:new gs,h:new ws,H:new ys,K:new ps,k:new Ds,m:new bs,s:new Ts,S:new Es,X:new xs,x:new Ps,t:new Ms,T:new vs},Os=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Ns=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Rs=/^'([^]*?)'?$/,_s=/''/g,Is=/\S/,ks=/[a-zA-Z]/;function Ys(t,e,n,r){const s=()=>E(n,NaN),a=Wr(),o=a.locale??pt,i=a.firstWeekContainsDate??a.locale?.options?.firstWeekContainsDate??1,c=a.weekStartsOn??a.locale?.options?.weekStartsOn??0;if(!e)return t?s():p(n,r?.in);const u={firstWeekContainsDate:i,weekStartsOn:c,locale:o},d=[new Hr(r?.in,n)],l=e.match(Ns).map(f=>{const g=f[0];if(g in Te){const M=Te[g];return M(f,o.formatLong)}return f}).join("").match(Os),w=[];for(let f of l){xt(f)&&Ee(f,e,t),Et(f)&&Ee(f,e,t);const g=f[0],M=As[g];if(M){const{incompatibleTokens:v}=M;if(Array.isArray(v)){const q=w.find(V=>v.includes(V.token)||V.token===g);if(q)throw new RangeError(`The format string mustn't contain \`${q.fullToken}\` and \`${f}\` at the same time`)}else if(M.incompatibleTokens==="*"&&w.length>0)throw new RangeError(`The format string mustn't contain \`${f}\` and any other token at the same time`);w.push({token:g,fullToken:f});const $=M.run(t,f,o.match,u);if(!$)return s();d.push($.setter),t=$.rest}else{if(g.match(ks))throw new RangeError("Format string contains an unescaped latin alphabet character `"+g+"`");if(f==="''"?f="'":g==="'"&&(f=Ss(f)),t.indexOf(f)===0)t=t.slice(f.length);else return s()}}if(t.length>0&&Is.test(t))return s();const x=d.map(f=>f.priority).sort((f,g)=>g-f).filter((f,g,M)=>M.indexOf(f)===g).map(f=>d.filter(g=>g.priority===f).sort((g,M)=>M.subPriority-g.subPriority)).map(f=>f[0]);let P=p(n,r?.in);if(isNaN(+P))return s();const Y={};for(const f of x){if(!f.validate(P,u))return s();const g=f.set(P,Y,u);Array.isArray(g)?(P=g[0],Object.assign(Y,g[1])):P=g}return P}function Ss(t){return t.match(Rs)[1].replace(_s,"'")}function Cs(t,e){const n=()=>E(e?.in,NaN),s=qs(t);let a;if(s.date){const u=Fs(s.date,2);a=Qs(u.restDateString,u.year)}if(!a||isNaN(+a))return n();const o=+a;let i=0,c;if(s.time&&(i=Us(s.time),isNaN(i)))return n();if(s.timezone){if(c=Hs(s.timezone),isNaN(c))return n()}else{const u=new Date(o+i),d=p(0,e?.in);return d.setFullYear(u.getUTCFullYear(),u.getUTCMonth(),u.getUTCDate()),d.setHours(u.getUTCHours(),u.getUTCMinutes(),u.getUTCSeconds(),u.getUTCMilliseconds()),d}return p(o+i+c,e?.in)}const j={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},Ls=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,Ws=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,$s=/^([+-])(\d{2})(?::?(\d{2}))?$/;function qs(t){const e={},n=t.split(j.dateTimeDelimiter);let r;if(n.length>2)return e;if(/:/.test(n[0])?r=n[0]:(e.date=n[0],r=n[1],j.timeZoneDelimiter.test(e.date)&&(e.date=t.split(j.timeZoneDelimiter)[0],r=t.substr(e.date.length,t.length))),r){const s=j.timezone.exec(r);s?(e.time=r.replace(s[1],""),e.timezone=s[1]):e.time=r}return e}function Fs(t,e){const n=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+e)+"})|(\\d{2}|[+-]\\d{"+(2+e)+"})$)"),r=t.match(n);if(!r)return{year:NaN,restDateString:""};const s=r[1]?parseInt(r[1]):null,a=r[2]?parseInt(r[2]):null;return{year:a===null?s:a*100,restDateString:t.slice((r[1]||r[2]).length)}}function Qs(t,e){if(e===null)return new Date(NaN);const n=t.match(Ls);if(!n)return new Date(NaN);const r=!!n[4],s=U(n[1]),a=U(n[2])-1,o=U(n[3]),i=U(n[4]),c=U(n[5])-1;if(r)return js(e,i,c)?Bs(e,i,c):new Date(NaN);{const u=new Date(0);return!Vs(e,a,o)||!Xs(e,s)?new Date(NaN):(u.setUTCFullYear(e,a,Math.max(s,o)),u)}}function U(t){return t?parseInt(t):1}function Us(t){const e=t.match(Ws);if(!e)return NaN;const n=pe(e[1]),r=pe(e[2]),s=pe(e[3]);return Ks(n,r,s)?n*Re+r*Ne+s*1e3:NaN}function pe(t){return t&&parseFloat(t.replace(",","."))||0}function Hs(t){if(t==="Z")return 0;const e=t.match($s);if(!e)return 0;const n=e[1]==="+"?-1:1,r=parseInt(e[2]),s=e[3]&&parseInt(e[3])||0;return zs(r,s)?n*(r*Re+s*Ne):NaN}function Bs(t,e,n){const r=new Date(0);r.setUTCFullYear(t,0,4);const s=r.getUTCDay()||7,a=(e-1)*7+n+1-s;return r.setUTCDate(r.getUTCDate()+a),r}const Gs=[31,null,31,30,31,30,31,31,30,31,30,31];function Ot(t){return t%400===0||t%4===0&&t%100!==0}function Vs(t,e,n){return e>=0&&e<=11&&n>=1&&n<=(Gs[e]||(Ot(t)?29:28))}function Xs(t,e){return e>=1&&e<=(Ot(t)?366:365)}function js(t,e,n){return e>=1&&e<=53&&n>=0&&n<=6}function Ks(t,e,n){return t===24?e===0&&n===0:n>=0&&n<60&&e>=0&&e<60&&t>=0&&t<25}function zs(t,e){return e>=0&&e<=59}const K=t=>{if(!t.includes("T")){for(const n of Js){const r=Ys(t,n,new Date);if(be(r))return r}return null}const e=Cs(t);return be(e)?e:null},Js=["yyyy-MM-dd","MM-dd-yyyy"],xe=(t,e,n)=>{const r={};return e?.contentType!==null&&(r[Cn]=e?.contentType||Sn),e?.jwt&&(r.Authorization=`Bearer ${e.jwt}`),e?.chatReference&&(r[Ln]=e.chatReference),{...r,...n}},Zs=t=>{const e={...t};return e[we]&&(e[we]=e[we].substring(0,8)+"...[REDACTED]"),e.Authorization&&(e.Authorization="Bearer [REDACTED]"),e[z]&&(e[z]=e[z].substring(0,8)+"...[REDACTED]"),e},Ke=async(t,e,n)=>await fetch(t,{method:n.method||"GET",headers:e,body:n.body?JSON.stringify(n.body):void 0}),ea=async(t,e,n)=>{const r=n?.body===void 0?void 0:n?.isFormData?n.body:JSON.stringify(n.body);return await fetch(t,{method:n.method,headers:e,body:r,signal:n?.signal})};class ta{constructor(){this.decoder=new TextDecoder}async streamChat(e,n,r={},s){const{onMessage:a,onError:o,onComplete:i,signal:c}=r;try{const u=await this.initializeStreamRequest(e,n,c,s);await this.processStreamData(u,a),i?.()}catch(u){this.handleStreamError(u,o)}}async initializeStreamRequest(e,n,r,s){const a=xe(void 0,{jwt:s}),o=await ea(e,{Accept:"text/event-stream",...a},{method:"POST",body:n,signal:r});if(!o.ok){const i=await o.text();let c={};try{c=JSON.parse(i)}catch{c.error="Failed to parse error body"}throw new Ue({status:o.status,message:c.error??"No response body"})}if(!o.body)throw new Ue({message:"No response body",status:o.status});return o.body.getReader()}async processStreamData(e,n){let r="";try{for(;;){const{done:s,value:a}=await e.read();if(s){r.trim()&&this.parseSSEDataLine(r,n);break}const o=this.decoder.decode(a,{stream:!0});r+=o;const i=r.split(`
2
- `);r=i.pop()||"";for(const c of i)this.parseSSEDataLine(c,n)}}finally{e.releaseLock()}}handleStreamError(e,n){const r=e instanceof Error?e:new Error(String(e));throw n?.(r),r}parseSSEDataLine(e,n){const r=e.trim();if(!(!r||r.startsWith(":"))&&r.startsWith("data: ")){const s=r.slice(6);if(s==="[DONE]"){console.info("SSE: Stream completed");return}let a;try{a=JSON.parse(s)}catch(o){console.error(`Failed to parse SSE data: ${s} ${o}`)}n?.(a)}}}new ta;class na{constructor(e){this.config=e,console.info("SdmxApiClient initialized",{apiUrl:e.apiUrl||"NOT SET"})}async getRequest(e,n){return this.request(e,{...n,method:"GET"})}async postRequest(e,n,r){return this.request(e,{...n,method:"POST"},r)}async streamRequest(e,n,r){const s=`${this.config.apiUrl}/${e}`,a={...xe(void 0,{jwt:this.config.jwt}),...n.headers};this.config.apiKey!=null&&(a[z]=this.config.apiKey);const o=new ReadableStream({async start(c){try{const u=await Ke(s,a,n);if(!u.ok){const x=await u.text();throw console.error(`Fetch failed! Status: ${u.status}, Body: ${x}`),new Error(`Fetch failed with status ${u.status}`)}const d=u.body?.getReader();if(!d)throw new Error("Failed to create stream reader");const l=new Uint8Array([239,187,191]);c.enqueue(l);const w=async()=>{const{done:x,value:P}=await d.read();x?c.close():(c.enqueue(P),await w())};w()}catch(u){c.error(u)}}}),i=new Headers({"Content-Disposition":`attachment; filename=${encodeURIComponent(r)}`});return new Response(o,{headers:i})}async request(e,n,r){const s=Date.now(),a=`${r||this.config.apiUrl}/${e}`,o={...xe(void 0,{jwt:this.config.jwt}),...n.headers};this.config.apiKey!=null&&(o["Ocp-Apim-Subscription-Key"]=this.config.apiKey),this.addInfoRequestLog("API Request",a,n,o);try{const i=await Ke(a,o,n),c=Date.now()-s;let u;const d=await i.text();try{u=d?JSON.parse(d):{}}catch{if(this.addErrorRequestParsing(a,n,i,c,d),!i.ok)throw new Error(`API request failed: ${i.status} ${i.statusText} - ${d.substring(0,100)}`);u={data:d}}if(!i.ok){this.addErrorRequestLog(a,n,i,c,u);const l=Yn(u,i);throw new Error(`API request failed: ${l}`)}return u}catch(i){const c=Date.now()-s;throw console.error("API Request Exception",{method:n.method,url:a,duration:`${c}ms`,error:i instanceof Error?i.message:String(i)}),i}}addInfoRequestLog(e,n,r,s){const a={method:r.method||"GET",url:n,headers:Zs(s)};r.body&&(a.body=r.body),console.info(e,a)}addErrorRequestLog(e,n,r,s,a){console.error("API Request Failed",{method:n.method,url:e,status:r.status,statusText:r.statusText,duration:`${s}ms`,response:a})}addErrorRequestParsing(e,n,r,s,a){console.error("API Response Parse Error",{method:n.method,url:e,status:r.status,statusText:r.statusText,duration:`${s}ms`,responseText:a.substring(0,200),error:"Response is not valid JSON"})}}const ra=["FREQ","FREQUENCY"],Nt="TIME_PERIOD",Rt="time_period_start",_t="time_period_end";var It=(t=>(t.CONDITIONAL="Conditional",t.MANDATORY="Mandatory",t))(It||{}),re=(t=>(t.DIMENSION="Dimension",t.MEASURE_DIMENSION="MeasureDimension",t.TIME_DIMENSION="TimeDimension",t))(re||{}),kt=(t=>(t.UNBOUNDED="unbounded",t))(kt||{});const Yt=(t,e)=>{const n=t?.data?.dataSets?.[0],s=t?.data?.structures?.[0]?.attributes?.dimensionGroup||[],a=n?.dimensionGroupAttributes,o={};for(const i of s){const c=i.relationship.dimensions,{codedSeriesKey:u,decodedSeriesKey:d}=Ye(t,e,c);o[i.id]={values:a?.[u]||[],decodedSeriesKey:d,codedSeriesKey:u}}return o},Ye=(t,e,n)=>{const r=t?.data?.structures?.[0],s=[...r?.dimensions.series||[],...r?.dimensions.observation||[]],a=new Array(s?.length),o=new Array(s?.length);return n?.forEach(i=>{const c=s?.findIndex(l=>l.id===i)||0,u=e[c],d=s[c].values.findIndex(l=>l.id===u||l.value===u)||0;a[c]=d>=0?d:u,o[c]=u}),{codedSeriesKey:a.join(":"),decodedSeriesKey:o.join(":")}},sa=(t,e,n)=>{const r=t?.data?.dataSets?.[0],s=t?.data?.structures?.[0],a=(s?.attributes?.dimensionGroup||[]).filter(l=>l.relationship.dimensions?.length===1&&l.relationship.dimensions.includes(e||"")),o=r?.dimensionGroupAttributes,i=[...s?.dimensions.series||[],...s?.dimensions.observation||[]],c=i?.findIndex(l=>l.id===e),u=new Array(i?.length);u[c]=n||"";const d={};for(const l of a){const w=l.relationship.dimensions,{codedSeriesKey:x,decodedSeriesKey:P}=Ye(t,u,w);d[l.id]={values:o?.[x]||[],decodedSeriesKey:P,codedSeriesKey:x}}return d},St=(t,e)=>{if(e==null)return;const n=t.values?.[e];return n??(e instanceof Array?{values:e}:{value:e.toString()})},Ct="Observation",aa=t=>{const e=t?.data?.dataSets,n=t?.data?.structures?.[0];if(!e||!n)return[];const r=n.attributes,s=n.dimensions,a=r?.dimensionGroup||[],o=e[0].series||e[0].observations,i=s.series?.length?s.series:s.observation,c=[];for(const u in o){const d=[],{name:l,parsedTimeSeriesValue:w}=Lt(u,i),x=o[u],P=x.attributes||[];if(Object.keys(x).length===0){c.push({name:l,parsedTimeSeriesValue:w,values:d,attributes:[],dataSetAttrs:[]});continue}d.push(...ia(x,n));const Y=ee(r?.series||[],v=>P[v]),f=ca(n.attributes?.dataSet||[],e[0].attributes?.filter(v=>v!=null)||[]),g=Yt(t,w),M=a.map((v,$)=>{const q=g[v.id],V=St(v,q.values[$]);return{attribute:v,dimensionGroupValue:V,dimensionGroupData:q}});c.push({name:l,parsedTimeSeriesValue:w,values:d,attributes:Y,dataSetAttrs:f,dimensionGroupAttributes:M})}return c},Lt=(t,e)=>{const n=t.split(new RegExp("(?<!\\|):(?!\\||$)")),r=[];for(let s=0;s<n.length;s++){const a=e?.[s],o=Number(n[s]);if(o<0||a==null)continue;const i=a.values[o];if(i==null){r.push(n[s].replace("|:",":"));continue}r.push(i?.id||i?.value||"")}return{name:Wt(r),parsedTimeSeriesValue:r}},ee=(t,e)=>{const n=[];for(let r=0;r<t.length;r++){const s=t[r],a=e(r),o=a!=null&&s.values!=null?oa(a,s):void 0;n.push({name:s.id,value:o})}return n},oa=(t,e)=>{const n=e.values[t];return n==null?typeof t=="object"?t:t.toString():n?.id||n?.value||n?.ids||n?.values},Wt=t=>t.map(e=>e?$t(e):"").join("."),$t=t=>t.replace(/\./g,"|.").replace(/:/g,"|:"),ia=(t,e)=>{const n=e.measures?.observation?.length;if(t.observations==null)return[{values:ze(t,e.measures),obsAttributes:ee(e.attributes?.observation||[],o=>t[o+n]),dimensionAtObservation:Ct}];const r=t.observations,s=e.dimensions.observation?.[0],a=[];for(const o in r){const i=s?.values[o];a.push({dimensionAtObservation:i?.value||i?.id,values:ze(r[o],e.measures),obsAttributes:ee(e.attributes?.observation||[],c=>r[o][c+n])})}return a},ze=(t,e)=>e?.observation?.map((n,r)=>({name:n.id,value:t[r]}))||[],ca=(t,e)=>t.reduce((n,r,s)=>{const a=e[s];return ua(n,r,a,""),n},[]),ua=(t,e,n,r)=>{const s=n!=null?e?.values?.length>0?e.values[n]?.id||e.values[n]?.value:String(n):r;t.push({name:e.id,value:s||""})},qt=/^[0-9][0-9][0-9][0-9]-Q[1-4]$/,Ft=/^[0-9][0-9][0-9][0-9]-W(0[1-9]|[1-4][0-9]|5[0-3])$/,Qt=/^[0-9][0-9][0-9][0-9]-S[1-2]$/,Ut=/^[0-9][0-9][0-9][0-9]$/,Ht=/^[0-9][0-9][0-9][0-9]-(0[1-9]|1[0-2])-[0-9][0-9]$/,Bt=/^[0-9][0-9][0-9][0-9]-M(0[1-9]|(1[0-2]))$/,se=t=>Ut.exec(t),ae=t=>!!se(t),Gt=t=>Qt.exec(t),oe=t=>!!Gt(t),ie=t=>Bt.exec(t),ce=t=>!!ie(t),ue=t=>qt.exec(t),de=t=>!!ue(t),Vt=t=>Ht.exec(t),Xt=t=>!!Vt(t),jt=t=>Ft.exec(t),le=t=>!!jt(t),Se=1440*60*1e3,Ce=7*Se;function Le(t){const e=`${t}-01-01`,n=new Date(e);if(n.getDay()!==4){const s=1+(4-n.getDay()+7)%7;n.setMonth(0,s)}return n}function da(t){const e=new Date(t),r=-((e.getDay()+6)%7)+3;return e.setDate(e.getDate()+r),new Date(e.valueOf())}function Pe(t,e="W"){const n=`${t}-12-31`,r=G(new Date(n),e);if(r.weekYear===t)return r.weekNumber;const s=`${t}-12-24`;return G(new Date(s),e).weekNumber}function We(t,e,n="W"){return`${t}-${n}${e<10?"0"+e:e}`}function G(t,e="W"){const n=da(t),r=n.getFullYear(),s=Le(r),a=1+Math.ceil((n.getTime()-s.getTime())/Ce);return{code:We(r,a,e),weekNumber:a,weekYear:r}}function Kt(t){const[e,n]=t.split("-W"),s=Le(+e).getTime()+(+n-1)*Ce-3*Se;return new Date(s)}function zt(t){const[e,n]=t.split("-W"),s=Le(+e).getTime()+(+n-1)*Ce+3*Se;return new Date(s)}function $e(t){return ae(t)?la(t):oe(t)?ma(t):de(t)?ga(t):ce(t)?ya(t):le(t)?Kt(t):Da(t)}function qe(t){return ae(t)?fa(t):oe(t)?ha(t):de(t)?wa(t):ce(t)?pa(t):le(t)?zt(t):ba(t)}function la(t){const e=se(t);if(e)return new Date(Number(e[0]),0,1)}function fa(t){const e=se(t);if(e)return new Date(Number(e[0])+1,0,1)}function ma(t){const[e,n]=t.split("-S");switch(+n){case 1:return new Date(+e,0,1);case 2:return new Date(+e,6,1)}}function ha(t){const[e,n]=t.split("-S");switch(+n){case 1:return new Date(+e,6,1);case 2:return new Date(+e+1,0,1)}}function ga(t){const e=ue(t);if(!e)return;const[n,r]=e[0].split("-Q");switch(+r){case 1:return new Date(+n,0,1);case 2:return new Date(+n,3,1);case 3:return new Date(+n,6,1);case 4:return new Date(+n,9,1)}}function wa(t){const e=ue(t);if(!e)return;const[n,r]=e[0].split("-Q");switch(+r){case 1:return new Date(+n,3,1);case 2:return new Date(+n,6,1);case 3:return new Date(+n,9,1);case 4:return new Date(+n+1,0,1)}}function ya(t){const e=ie(t);if(!e)return;const[n,r]=e[0].split("-M");return new Date(+n,+r-1,1)}function pa(t){const e=ie(t);if(!e)return;const[n,r]=e[0].split("-M");return new Date(+n,+r,1)}const Da=t=>new Date(`${t}T00:00:00`),ba=t=>{const e=new Date(`${t}T23:59:00`);return e.setMinutes(e.getMinutes()+1),e},Ta=1,Jt=(t,e,n,r=!0,s="Q")=>{const a=[],o=e&&e>3?Aa(e,r):1,i=n?Math.floor((n-1)/3):4;for(let c=o;c<=i;c++)a.push(`${t}-${s}${c}`);return a},Zt=(t,e,n,r="S")=>{const s=[];return(e||1)<7&&(n||12)>6&&s.push(`${t}-${r}1`),n==null&&s.push(`${t}-${r}2`),s},Ea=t=>Math.ceil(t/3),en=(t,e,n="M")=>`${t}-${n}${e.toString().padStart(2,"0")}`,xa=(t,e,n="M")=>{const r=[];for(let s=e;s<=12;s++)r.push(en(t,s,n));return r},Pa=(t,e,n,r="M")=>{const s=[];for(let a=e;a<n;a++)s.push(en(t,a,r));return s},tn=(t,e,n,r="M")=>{const s=e||1,a=n==null,o=n||12;return a?xa(t,s,r):Pa(t,s,o,r)},Ma=(t,e,n="M")=>{switch(e){case 0:return[`${t}-${n}01`,`${t}-${n}02`,`${t}-${n}03`];case 1:return[`${t}-${n}04`,`${t}-${n}05`,`${t}-${n}06`];case 2:return[`${t}-${n}07`,`${t}-${n}08`,`${t}-${n}09`];case 3:return[`${t}-${n}10`,`${t}-${n}11`,`${t}-${n}12`];default:return[]}},nn=(t,e)=>{const n=N(e,!0),r=N(t),s=n.getFullYear(),a=r.getFullYear(),o=n.getTime()<=r.getTime()?a+Ta-s:0;return Array.from({length:o},(c,u)=>s+u)},N=(t,e=!1)=>{const n=va(t,e);return n?(n.getTimezoneOffset()>0&&n.setMinutes(n.getMinutes()+n.getTimezoneOffset()),n):new Date},va=(t,e=!1)=>{const n=Number(t);return t.toString().length!==13?e?$e(t):qe(t):isNaN(n)?new Date(`${t}T00:00:00.000Z`):new Date(n)},Aa=(t,e)=>e?Math.floor((t+1)/3):Math.ceil((t+1)/3),Oa=(t,e)=>{const n=Ze(t)-Ze(e);if(n===0&&t!==e){const r=Je(t),s=Je(e);return r-s}return n},Je=t=>ae(t)?6:oe(t)?5:de(t)?4:ce(t)?3:le(t)?2:Xt(t)?1:0,Ze=(t,e=!1)=>(e?$e(t):qe(t))?.getTime()||0;var fe=(t=>(t.LAST_UPDATE_AT="lastUpdatedAt",t.SERIES_COUNT="series_count",t))(fe||{}),rn=(t=>(t.C="c",t))(rn||{}),R=(t=>(t.EQUALS="eq",t.NOT_EQUALS="ne",t.LESS="lt",t.LESS_OR_EQUAL="le",t.GREATER="gt",t.GREATER_OR_EQUAL="ge",t.CONTAINS="co",t.NOT_CONTAINS="nc",t.STARTS="sw",t.ENDS="ew",t))(R||{}),sn=(t=>(t.BOOLEAN="Boolean",t.DATE_TIME="DateTime",t.DECIMAL="Decimal",t.INTEGER="Integer",t.OBSERVATION_TIME_PERIOD="ObservationalTimePeriod",t.STRING="String",t.TIME="Time",t.TIME_RANGE="TimeRange",t.URI="URI",t))(sn||{}),an=(t=>(t.ANNUAL="A",t.QUARTERLY="Q",t.MONTHLY="M",t))(an||{});function Na(t){return t?.annotations?.find(e=>{if(e.id===fe.LAST_UPDATE_AT)return e})?.value}const me=(t,e)=>t?.names&&t?.names[e]||t?.name,on=(t,e,n)=>{if(!(!t||e?.has(t?.id))&&(e?.set(t?.id,t),t?.parent)){const r=n?.get(t?.parent);on(r,e,n)}},cn=(t,e)=>{const n=new Map,r=new Map(t?.map(s=>[s.id,s]));return e?.forEach(s=>{on(s,n,r)}),Array.from(n?.values())},Ra=t=>{const e=t?.find(a=>a.id===Rt),n=t?.find(a=>a.id===_t),r=n?.title?new Date(n?.title):null;return{startPeriod:e?.title?new Date(e?.title):null,endPeriod:r}},_a=(t,e)=>t.id.localeCompare(e.id),Ia=(t,e)=>t.memberValue.localeCompare(e.memberValue),ka=(t,e)=>{const n=new Array(t.length),r=t.map((o,i)=>[o,i]);r.sort((o,i)=>_a(o[0],i[0]));const s=[...e];s.sort(Ia);let a=0;for(const o of r){const i=o[0];for(;a<s.length&&s[a].memberValue.localeCompare(i.id)<0;)a+=1;a<s.length&&s[a].memberValue===i.id&&(n[o[1]]=o[0])}return n.filter(o=>o!=null)},Ya=t=>!!t?.some(e=>e.parent),Sa=(t,e,n,r,s=[])=>{let a=t||[];if(Ca(n||[],e||"")){const o=(n||[])[0].cubeRegions?.find(({isIncluded:i})=>i);if(o){const i=o.memberSelection?.find(({componentId:c})=>c===e);i?a=a.length===0?(i.selectionValues||[]).map(({memberValue:c})=>({id:c,name:c})):ka(a,i.selectionValues):a=[]}}else s.length!==0&&(a=a.filter(({id:o})=>s.includes(o)));return Ya(t)&&(a=cn(t,a)),a?.map(o=>({...o,name:r?me(o,r):o?.name}))},Ca=(t,e)=>t!=null&&t.length>0&&e!=null,un=t=>{const e=[];return t?.filters?.forEach(n=>{n.componentCode!==Nt&&e.push({componentCode:n.componentCode,operator:R.EQUALS,value:n.values.join(",")})}),e},La=t=>{const e=new Map;return t?.forEach(n=>{e.set(n.urn,un(n))}),e},Wa=/^[v^~<>=]*?(\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+))?(?:-([\da-z\-]+(?:\.[\da-z\-]+)*))?(?:\+[\da-z\-]+(?:\.[\da-z\-]+)*)?)?)?$/i,et=t=>{if(typeof t!="string")throw new TypeError("Invalid argument expected string");const e=t.match(Wa);if(!e)throw new Error(`Invalid argument not valid semver ('${t}' received)`);return e.shift(),e},tt=t=>t==="*"||t==="x"||t==="X",nt=t=>{const e=parseInt(t,10);return isNaN(e)?t:e},$a=(t,e)=>typeof t!=typeof e?[String(t),String(e)]:[t,e],qa=(t,e)=>{if(tt(t)||tt(e))return 0;const[n,r]=$a(nt(t),nt(e));return n>r?1:n<r?-1:0},rt=(t,e)=>{for(let n=0;n<Math.max(t.length,e.length);n++){const r=qa(t[n]||"0",e[n]||"0");if(r!==0)return r}return 0},Fa=(t,e)=>{const n=et(t),r=et(e),s=n.pop(),a=r.pop(),o=rt(n,r);return o!==0?o:s&&a?rt(s.split("."),a.split(".")):s||a?s?-1:1:0},Qa=(t,e,n)=>{Ua(n);const r=Fa(t,e);return dn[n].includes(r)},dn={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]},st=Object.keys(dn),Ua=t=>{if(st.indexOf(t)===-1)throw new Error(`Invalid operator, expected one of ${st.join("|")}`)},te="+",he=(t,e)=>{const{agency:n,id:r,version:s}=L(t),a=e.filter(c=>c.agencyID===n&&c.id===r&&!c?.version?.includes(te));if(a.length===1)return a[0];if(!s?.includes(te))return a.find(c=>c.version===s);const o=a.map(c=>c.version),i=ln(s,o);return a.find(c=>c.version===i[0])},ln=(t,e)=>{const n=Ha(t,e);return n.length>0?[n[0]]:[]},Ha=(t,e)=>{const n=[];return e.forEach(r=>{mn(t,r)&&n.push(r)}),n},fn=t=>{const e=t.trim().replace(/\d+\+/,"*"),[n]=e.split("*");return new RegExp(`^${n}`)},mn=(t,e)=>{const n=t.trim().replace(/\+/,"");return fn(t).test(e)&&Qa(e,n,">=")},ge=(t,e)=>{const{concept:n}=hn(t,e);return n},hn=(t,e)=>{if(t==null)return{concept:void 0,scheme:void 0};const{childId:n,agency:r,id:s,version:a}=ot(t);if(a?.includes(te)){const o=he(t,e);return{concept:Me(o?.concepts||[],n),scheme:o}}for(const o of e)if(Ba(o,s,r,a))return{concept:Me(o?.concepts||[],n),scheme:o};return{concept:void 0,scheme:void 0}},Me=(t,e)=>t?.find(n=>n.id===e),Ba=(t,e,n,r)=>t.id===e&&t.agencyID===n&&t.version===r,Ga=(t=[],e=[],n)=>{const r=n?.conceptIdentity||"",s=ge(r,e),a=B(n?.localRepresentation?.enumeration),o=B(s?.coreRepresentation?.enumeration),i=a||o;if(i!=null)return he(i,t)},Va=(t,e,n,r)=>{const s=e?.find(a=>a?.id===t?.id)?.values;return n?.filter(a=>s?.some(o=>o.id===a.id))?.map(a=>({...a,name:r?me(a,r):a?.name}))||[]},gn=(t,e)=>{const n=e?.dataStructureComponents?.attributeList,r=t?.metadataStructureComponents?.metadataAttributeList;return n?.metadataAttributeUsages?.map(s=>{const a=r?.metadataAttributes?.find(o=>o?.id===s?.metadataAttributeReference);return{...a,attributeRelationship:s.attributeRelationship,isMandatory:Number(a?.minOccurs)>0}})},Xa=(t=[],e,n)=>{const r=B(e?.conceptIdentity)||"",s=ge(r,t);return n?me(s,n):s?.name??s?.id??e?.id};function ve(t){return t?.dataStructures?.[0]?.dataStructureComponents?.dimensionList}function ja(t){return t?.data?.structures?.[0]?.dimensions?.series||[]}function Ka(t){return t?.data?.structures?.[0]?.dimensions?.observation?.[0].values.map(e=>e.value).filter(e=>e!=null)||[]}function za(t){return t.find(e=>e.type===re.TIME_DIMENSION)}const Ja=t=>{const e=new Map,n=t?.dataStructures?.[0],r=t?.metadataStructures?.[0],s=t?.conceptSchemes||[],a=t?.codelists||[];return t&&[...ve(t)?.dimensions||[],...ve(t)?.timeDimensions||[],...gn(r,n),...n?.dataStructureComponents?.attributeList?.attributes||[]].forEach(i=>{const c=ge(i?.conceptIdentity,s),u=i?.localRepresentation?.enumeration||c?.coreRepresentation?.enumeration,d=he(u,a);i?.id&&(u?e.set(i?.id,{...d,name:c?.name,names:c?.names}):e.set(i?.id,{id:i?.id,name:c?.name,names:c?.names}))}),e},Za=t=>t?.find(e=>e.id===fe.SERIES_COUNT)?.title||"",eo="/api/download",to=(t,e,n,r,s,a,o)=>{const i=new URLSearchParams({urn:t,format:e,compress:"false",filename:a,filters:JSON.stringify(s),attribute:r,language:n,isMetadata:o?"true":"none"}).toString(),c=`${eo}?${i}`;window.open(c,"_blank")},no=(t,e)=>{const n=[];for(const r of t){if(r.type!==re.DIMENSION)continue;const s=e.find(a=>a.componentCode===r.id);s!=null&&s.values?.length>0?n.push(s.values?.join(mt)):n.push("*")}return n.join(".")},wn=(t,e)=>{if(!t||!t.startPeriod&&!t.endPeriod)return null;const n=[],{startPeriod:r,endPeriod:s}=t;if(r&&n.push(`${R.GREATER_OR_EQUAL}${Qe}${at(r)}`),s&&n.push(`${R.LESS_OR_EQUAL}${Qe}${at(s)}`),n.length===0)return null;const a=e;return n.map(o=>`${encodeURIComponent(`c[${a}]`)}${Rn}${encodeURIComponent(o)}`).join(ft)},at=t=>Cr(t,"yyyy-MM-dd"),ro=(t,e)=>{const n=yn(t,e)||null;return n?wn(n,e?.id):null},yn=(t,e)=>{const n=e.id,r=t?.filters?.find(c=>c.componentCode===n);if(!r||!r.values)return null;const s=r.values?.filter(c=>!!c);if(!s.length)return null;const a=r.operator;if(a===R.LESS_OR_EQUAL||a===R.LESS)return{startPeriod:null,endPeriod:K(s[0])};if(a===R.GREATER_OR_EQUAL||a===R.GREATER)return{startPeriod:K(s[0]),endPeriod:null};const o=K(s[0]),i=K(s[1]);return{startPeriod:o,endPeriod:i}},Fe=(t,e,n)=>{const r=N(e,!0),s=N(n),a=N(t,!0),o=N(t),i=r.getTime()>a.getTime()?r:a,c=s.getTime()<o.getTime()?s:o;return{start:i,end:c}},pn=(t,e,n,r="W")=>{const s=+t,{start:a,end:o}=Fe(t,e,n);if(a.getTime()>o.getTime())return[];const i=G(a,r),c=i.weekYear===s?i.weekNumber:i.weekYear<s?1:Pe(s,r),u=G(o,r),d=u.weekYear===s?u.weekNumber:u.weekYear>s?Pe(s,r):1,l=[];if(c<d)for(let w=c;w<=d;w++)l.push(We(s,w,r));return l},so=t=>{const e=new Date(t);return e.setMinutes(e.getMinutes()-e.getTimezoneOffset()),e.toISOString().slice(0,10)},Dn=(t,e,n)=>{const{start:r,end:s}=Fe(t,e,n);if(r.getTime()>s.getTime())return[];const a=[],o=new Date(r.getFullYear(),r.getMonth(),r.getDate()),i=new Date(s.getFullYear(),s.getMonth(),s.getDate());for(;o.getTime()<i.getTime();){const c=so(o);a.push(c),o.setDate(o.getDate()+1)}return a},bn=t=>({isDailyExist:!!t?.some(({memberValue:e})=>e==="D"),isWeeklyExist:!!t?.some(({memberValue:e})=>e==="W"),isMonthlyExist:!!t?.some(({memberValue:e})=>e==="M"),isQuarterlyExist:!!t?.some(({memberValue:e})=>e==="Q"),isSemiAnnualExist:!!t?.some(({memberValue:e})=>e==="S"),isYearlyExist:!!t?.some(({memberValue:e})=>e==="A"||e==="Y")}),ao=(t,e,n,r)=>{const s=r===0?N(e.toString(),!0)?.getMonth()+1:void 0,a=r===t.length-1?N(n.toString())?.getMonth()+1||1:void 0;return{startMonth:s,endMonth:a}},Tn=["FREQUENCY","FREQ"],oo=(t,e)=>{const n=t?.[0]?.cubeRegions?.[0]?.memberSelection?.find(c=>Tn.includes(c.componentId))?.selectionValues,r=bn(n||[]),s=e?.startPeriod?.getTime()||1,a=e?.endPeriod?.getTime()||1,o=nn(a,s),i=[];return o.forEach((c,u)=>{const d=[],{startMonth:l,endMonth:w}=ao(o,new Date(s),new Date(a),u),{isDailyExist:x,isWeeklyExist:P,isMonthlyExist:Y,isQuarterlyExist:f,isSemiAnnualExist:g,isYearlyExist:M}=r;M&&d.push(c.toString()),g&&d.push(...Zt(c,l,w)),f&&d.push(...Jt(c,l,w,!1)),Y&&d.push(...tn(c,l,w)),P&&d.push(...pn(c,s.toString(),a.toString())),x&&d.push(...Dn(c,s.toString(),a.toString())),i.push(...d)}),i};function io(t){const{urn:e}=t.details;return it(e.resourceId,e.version,e.agencyId)}function co(t){const e={};for(const n of t.datasets){const r=n.dataset,s=io(r);e[s]=r.details.dimensions}return e}exports.Annotations=fe;exports.AssignmentStatus=It;exports.AvailabilityApi=On;exports.DATASET_DATA_URL=lt;exports.DatasetApi=kn;exports.DimensionType=re;exports.DownloadType=ut;exports.FREQUENCY_DIMENSION_ID=ra;exports.FREQUENCY_DIM_ID=Tn;exports.FileColumnsAttribute=ct;exports.GET_v3_FILTER_ALL=ht;exports.GET_v3_FILTER_AND=_n;exports.GET_v3_FILTER_OR=mt;exports.OBSERVATION_KEY=Ct;exports.OccurrenceType=kt;exports.Periods=an;exports.RepresentationTextType=sn;exports.SDMX_DATA_QUERY_PARAMS=rn;exports.SINGLE_WILDCARD_SYMBOL=te;exports.SdmxApiClient=na;exports.SdmxAvailabilityMode=Ae;exports.SdmxDataFormat=H;exports.SdmxDetails=Oe;exports.SdmxReferences=ne;exports.SeriesFilterOperator=R;exports.TIME_PERIOD=Nt;exports.TIME_PERIOD_END_ANNOTATION_KEY=_t;exports.TIME_PERIOD_START_ANNOTATION_KEY=Rt;exports.buildDatasetDimensionsMetadataMap=co;exports.dailyPattern=Ht;exports.decodeDimensionId=$t;exports.findCodelistByDimension=Ga;exports.generateDatasetDataRequest=De;exports.generateShortUrn=it;exports.getAdditionalColumns=oo;exports.getAnnotationPeriod=Ra;exports.getArtifactByUrnWithWildCard=he;exports.getAttachedDimensionsSeriesByDimension=sa;exports.getAttachedDimensionsSeriesByTsId=Yt;exports.getAttachedDimensionsSeriesKey=Ye;exports.getAttributeValueFromDataQueryResponse=St;exports.getAvailableCodes=Va;exports.getAvailableCodesFromConstrains=Sa;exports.getChildParsedUrn=ot;exports.getConcept=ge;exports.getConceptByUrn=Me;exports.getConceptWithScheme=hn;exports.getConvertedMetaAttributes=gn;exports.getDailyRegExp=Vt;exports.getDaysColumns=Dn;exports.getDimensionTitle=Xa;exports.getDimensions=ve;exports.getFilteredItemsWithParents=cn;exports.getFiltersDtoFromDataQuery=un;exports.getFiltersDtoMapFromDataQuery=La;exports.getISOWeek=G;exports.getKeyFromUrn=B;exports.getLastUpdatedTime=Na;exports.getLastWeekNumberOfYear=Pe;exports.getLocalizedName=me;exports.getMonthlyData=tn;exports.getMonthlyDataByQuarter=Ma;exports.getMonthlyRegExp=ie;exports.getParsedEndPeriodDate=qe;exports.getParsedResponse=aa;exports.getParsedStartPeriodDate=$e;exports.getPeriodDate=N;exports.getPeriods=bn;exports.getQuarterByMonth=Ea;exports.getQuarterlyRegExp=ue;exports.getQuartersData=Jt;exports.getQueryTimePeriodFilters=wn;exports.getRequestAcceptHeader=dt;exports.getResolvedVersionBySingleWildcard=ln;exports.getSemiAnnualData=Zt;exports.getSemiAnnuallyRegExp=Gt;exports.getSeriesAttributes=ee;exports.getSeriesName=Lt;exports.getStructureComponentsMap=Ja;exports.getStructureDimensions=ja;exports.getTimeDimension=za;exports.getTimePeriods=Ka;exports.getTimeQueryFilter=ro;exports.getTimeRangeFromAttachment=yn;exports.getTimeSeriesCount=Za;exports.getTimeSeriesFilterKey=no;exports.getTimeSeriesId=Wt;exports.getWeekCode=We;exports.getWeeklyPeriodEndDate=zt;exports.getWeeklyPeriodStartDate=Kt;exports.getWeeklyRegExp=jt;exports.getWeeksColumns=pn;exports.getWildCardRegexp=fn;exports.getYearPeriod=Fe;exports.getYearlyRegExp=se;exports.getYears=nn;exports.isDaily=Xt;exports.isMonthly=ce;exports.isQuarterly=de;exports.isSemiAnnually=oe;exports.isWeekly=le;exports.isWildCardVersionCorrect=mn;exports.isYearly=ae;exports.monthlyPattern=Bt;exports.openDownloadWindow=to;exports.quarterPattern=qt;exports.semiAnnuallyPattern=Qt;exports.sortPeriods=Oa;exports.splitUrn=L;exports.weeklyPattern=Ft;exports.yearlyPattern=Ut;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const B=t=>{if(t!=null){const e=t.split("=");return e.length===1?t:e[1]}},L=t=>{if(t==null)return{};const e=B(t),n={agency:"",id:"",version:""};return e&&(e.includes(":")&&(n.agency=e.split(":")[0],n.id=e.split(":")[1].split("(")[0]),e.includes("(")&&e.includes(")")&&(n.version=e.split("(")[1]?.split(")")[0])),n},ot=t=>{const[e,n]=t.split(")."),{agency:r,id:s,version:a}=L(e+")");return{childId:n,agency:r,id:s,version:a}},it=(t,e,n)=>{const r=e===""?"":`(${e})`;return`${n}:${t}${r}`};var ne=(t=>(t.DESCENDANTS="descendants",t.NONE="none",t.ALL="all",t))(ne||{}),Ae=(t=>(t.EXACT="exact",t.AVAILABLE="available",t))(Ae||{});function En(t){return{data:{codelists:t.data.codelists,conceptSchemes:t.data.conceptSchemes,dataConstraints:t.data.dataConstraints?.map(xn),dataflows:t.data.dataflows,dataStructures:t.data.dataStructures,metadataStructures:t.data.metadataStructures}}}function xn(t){return{...t,cubeRegions:t.cubeRegions?.map(Pn)}}function Pn(t){return{isIncluded:t.include,memberSelection:t.keyValues.map(Mn)}}function Mn(t){return{included:t.include,componentId:t.id,selectionValues:t.values.map(vn)}}function vn(t){return{memberValue:t.value}}const An=(t="",e="",n="")=>`sdmx/3.0/availability/dataflow/${t}/${e}/${n}`;class On{constructor(e){this.client=e}async getConstraints(e,n){const{agency:r,id:s,version:a}=L(e),o={filters:n||[],mode:Ae.AVAILABLE,references:ne.NONE},i=An(r,s,a);if(this.client.config.sdmxProxyUrl){const c=await this.client.postRequest(i,{body:o},this.client.config.sdmxProxyUrl);return En(c)}return await this.client.postRequest(i,{body:o},this.client.config.constrainsApiUrl||this.client.config.apiUrl)}}var H=(t=>(t.CSV="csv",t.JSON="json",t.XML="xml",t))(H||{}),ct=(t=>(t.ID="id",t.NAME="name",t.ID_NAME="both",t))(ct||{}),ut=(t=>(t.FULL_DATASET="full",t.DATA_IN_TABLE="query",t))(ut||{});const dt=(t,e)=>{switch(t){case H.CSV:return X("application/vnd.sdmx.data+csv;version=2.0.0",e);case H.XML:return X("application/vnd.sdmx.data+xml;version=3.0.0",e);case H.JSON:return X(`application/${t}`,e);default:return X("application/vnd.sdmx.data+csv;version=2.0.0",e)}},X=(t,e)=>`${t}; labels=${e}`;var Oe=(t=>(t.REFERENCE_PARTIAL="referencepartial",t.FULL="full",t))(Oe||{});const Nn="all",lt="sdmx/3.0/data/dataflow",ft="&",Qe=":",_n="=",mt="+",Rn=",",ht="*",De=(t,e,n)=>{const{filterKey:r,timeFilter:s}=n,{agency:a,id:o,version:i}=L(t),c=[s||"",e].filter(d=>!!d).join(ft);return`${`${lt}/${a}/${o}/${i}`}/${r||ht}?${c}`},In=(t="",e="",n="",r=ne.DESCENDANTS)=>`sdmx/3.0/structure/dataflow/${t}/${e}/${n}?references=${r}&detail=${Oe.REFERENCE_PARTIAL}`;class kn{constructor(e){this.client=e}async getDataSet(e,n){const{agency:r,id:s,version:a}=L(e);return await this.client.getRequest(In(r,s,a,n))}async getDatasetData(e,n){const r=new URLSearchParams({includeHistory:"false",limit:"1000",attributes:Nn,dimensionAtObservation:"TIME_PERIOD"}).toString(),s=De(e,r,n);return await this.client.getRequest(s)}async downloadDataSet(e,n,r,s,a,o,i=!1){const c=new URLSearchParams({format:n,compress:"false",attributes:i?"all":"none",limit:"1000"}).toString(),u=De(e,c,a);return this.client.streamRequest(u,{method:"GET",headers:{Accept:dt(n,s),"Accept-language":r}},o)}}const Yn=(t,e)=>t.error||t.message||`${e.status} ${e.statusText}`,Sn="application/json",Cn="Content-Type",we="Api-Key",Ln="X-CONVERSATION-ID",z="Ocp-Apim-Subscription-Key";class Ue extends Error{constructor(e){super(e.message),this.isHttpError=!0,this.name="HttpError",this.code=e.code,this.status=e.status,this.details=e.details,this.displayMessage=e.displayMessage}}const gt=6048e5,Wn=864e5,Ne=6e4,_e=36e5,$n=1e3,He=Symbol.for("constructDateFrom");function E(t,e){return typeof t=="function"?t(e):t&&typeof t=="object"&&He in t?t[He](e):t instanceof Date?new t.constructor(e):new Date(e)}function p(t,e){return E(e||t,t)}function wt(t,e,n){const r=p(t,n?.in);return isNaN(e)?E(n?.in||t,NaN):(e&&r.setDate(r.getDate()+e),r)}let qn={};function W(){return qn}function I(t,e){const n=W(),r=e?.weekStartsOn??e?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,s=p(t,e?.in),a=s.getDay(),o=(a<r?7:0)+a-r;return s.setDate(s.getDate()-o),s.setHours(0,0,0,0),s}function C(t,e){return I(t,{...e,weekStartsOn:1})}function yt(t,e){const n=p(t,e?.in),r=n.getFullYear(),s=E(n,0);s.setFullYear(r+1,0,4),s.setHours(0,0,0,0);const a=C(s),o=E(n,0);o.setFullYear(r,0,4),o.setHours(0,0,0,0);const i=C(o);return n.getTime()>=a.getTime()?r+1:n.getTime()>=i.getTime()?r:r-1}function J(t){const e=p(t),n=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return n.setUTCFullYear(e.getFullYear()),+t-+n}function Fn(t,...e){const n=E.bind(null,e.find(r=>typeof r=="object"));return e.map(n)}function Be(t,e){const n=p(t,e?.in);return n.setHours(0,0,0,0),n}function Qn(t,e,n){const[r,s]=Fn(n?.in,t,e),a=Be(r),o=Be(s),i=+a-J(a),c=+o-J(o);return Math.round((i-c)/Wn)}function Un(t,e){const n=yt(t,e),r=E(t,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),C(r)}function Hn(t){return t instanceof Date||typeof t=="object"&&Object.prototype.toString.call(t)==="[object Date]"}function be(t){return!(!Hn(t)&&typeof t!="number"||isNaN(+p(t)))}function Bn(t,e){const n=p(t,e?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}const Gn={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Vn=(t,e,n)=>{let r;const s=Gn[t];return typeof s=="string"?r=s:e===1?r=s.one:r=s.other.replace("{{count}}",e.toString()),n?.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function ye(t){return(e={})=>{const n=e.width?String(e.width):t.defaultWidth;return t.formats[n]||t.formats[t.defaultWidth]}}const Xn={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},jn={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Kn={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},zn={date:ye({formats:Xn,defaultWidth:"full"}),time:ye({formats:jn,defaultWidth:"full"}),dateTime:ye({formats:Kn,defaultWidth:"full"})},Jn={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Zn=(t,e,n,r)=>Jn[t];function F(t){return(e,n)=>{const r=n?.context?String(n.context):"standalone";let s;if(r==="formatting"&&t.formattingValues){const o=t.defaultFormattingWidth||t.defaultWidth,i=n?.width?String(n.width):o;s=t.formattingValues[i]||t.formattingValues[o]}else{const o=t.defaultWidth,i=n?.width?String(n.width):t.defaultWidth;s=t.values[i]||t.values[o]}const a=t.argumentCallback?t.argumentCallback(e):e;return s[a]}}const er={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},tr={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},nr={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},rr={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},sr={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},ar={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},or=(t,e)=>{const n=Number(t),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},ir={ordinalNumber:or,era:F({values:er,defaultWidth:"wide"}),quarter:F({values:tr,defaultWidth:"wide",argumentCallback:t=>t-1}),month:F({values:nr,defaultWidth:"wide"}),day:F({values:rr,defaultWidth:"wide"}),dayPeriod:F({values:sr,defaultWidth:"wide",formattingValues:ar,defaultFormattingWidth:"wide"})};function Q(t){return(e,n={})=>{const r=n.width,s=r&&t.matchPatterns[r]||t.matchPatterns[t.defaultMatchWidth],a=e.match(s);if(!a)return null;const o=a[0],i=r&&t.parsePatterns[r]||t.parsePatterns[t.defaultParseWidth],c=Array.isArray(i)?ur(i,l=>l.test(o)):cr(i,l=>l.test(o));let u;u=t.valueCallback?t.valueCallback(c):c,u=n.valueCallback?n.valueCallback(u):u;const d=e.slice(o.length);return{value:u,rest:d}}}function cr(t,e){for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&e(t[n]))return n}function ur(t,e){for(let n=0;n<t.length;n++)if(e(t[n]))return n}function dr(t){return(e,n={})=>{const r=e.match(t.matchPattern);if(!r)return null;const s=r[0],a=e.match(t.parsePattern);if(!a)return null;let o=t.valueCallback?t.valueCallback(a[0]):a[0];o=n.valueCallback?n.valueCallback(o):o;const i=e.slice(s.length);return{value:o,rest:i}}}const lr=/^(\d+)(th|st|nd|rd)?/i,fr=/\d+/i,mr={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},hr={any:[/^b/i,/^(a|c)/i]},gr={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},wr={any:[/1/i,/2/i,/3/i,/4/i]},yr={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},pr={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},Dr={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},br={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},Tr={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},Er={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},xr={ordinalNumber:dr({matchPattern:lr,parsePattern:fr,valueCallback:t=>parseInt(t,10)}),era:Q({matchPatterns:mr,defaultMatchWidth:"wide",parsePatterns:hr,defaultParseWidth:"any"}),quarter:Q({matchPatterns:gr,defaultMatchWidth:"wide",parsePatterns:wr,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Q({matchPatterns:yr,defaultMatchWidth:"wide",parsePatterns:pr,defaultParseWidth:"any"}),day:Q({matchPatterns:Dr,defaultMatchWidth:"wide",parsePatterns:br,defaultParseWidth:"any"}),dayPeriod:Q({matchPatterns:Tr,defaultMatchWidth:"any",parsePatterns:Er,defaultParseWidth:"any"})},pt={code:"en-US",formatDistance:Vn,formatLong:zn,formatRelative:Zn,localize:ir,match:xr,options:{weekStartsOn:0,firstWeekContainsDate:1}};function Pr(t,e){const n=p(t,e?.in);return Qn(n,Bn(n))+1}function Dt(t,e){const n=p(t,e?.in),r=+C(n)-+Un(n);return Math.round(r/gt)+1}function Re(t,e){const n=p(t,e?.in),r=n.getFullYear(),s=W(),a=e?.firstWeekContainsDate??e?.locale?.options?.firstWeekContainsDate??s.firstWeekContainsDate??s.locale?.options?.firstWeekContainsDate??1,o=E(e?.in||t,0);o.setFullYear(r+1,0,a),o.setHours(0,0,0,0);const i=I(o,e),c=E(e?.in||t,0);c.setFullYear(r,0,a),c.setHours(0,0,0,0);const u=I(c,e);return+n>=+i?r+1:+n>=+u?r:r-1}function Mr(t,e){const n=W(),r=e?.firstWeekContainsDate??e?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,s=Re(t,e),a=E(e?.in||t,0);return a.setFullYear(s,0,r),a.setHours(0,0,0,0),I(a,e)}function bt(t,e){const n=p(t,e?.in),r=+I(n,e)-+Mr(n,e);return Math.round(r/gt)+1}function h(t,e){const n=t<0?"-":"",r=Math.abs(t).toString().padStart(e,"0");return n+r}const R={y(t,e){const n=t.getFullYear(),r=n>0?n:1-n;return h(e==="yy"?r%100:r,e.length)},M(t,e){const n=t.getMonth();return e==="M"?String(n+1):h(n+1,2)},d(t,e){return h(t.getDate(),e.length)},a(t,e){const n=t.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];default:return n==="am"?"a.m.":"p.m."}},h(t,e){return h(t.getHours()%12||12,e.length)},H(t,e){return h(t.getHours(),e.length)},m(t,e){return h(t.getMinutes(),e.length)},s(t,e){return h(t.getSeconds(),e.length)},S(t,e){const n=e.length,r=t.getMilliseconds(),s=Math.trunc(r*Math.pow(10,n-3));return h(s,e.length)}},S={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},Ge={G:function(t,e,n){const r=t.getFullYear()>0?1:0;switch(e){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});default:return n.era(r,{width:"wide"})}},y:function(t,e,n){if(e==="yo"){const r=t.getFullYear(),s=r>0?r:1-r;return n.ordinalNumber(s,{unit:"year"})}return R.y(t,e)},Y:function(t,e,n,r){const s=Re(t,r),a=s>0?s:1-s;if(e==="YY"){const o=a%100;return h(o,2)}return e==="Yo"?n.ordinalNumber(a,{unit:"year"}):h(a,e.length)},R:function(t,e){const n=yt(t);return h(n,e.length)},u:function(t,e){const n=t.getFullYear();return h(n,e.length)},Q:function(t,e,n){const r=Math.ceil((t.getMonth()+1)/3);switch(e){case"Q":return String(r);case"QQ":return h(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(t,e,n){const r=Math.ceil((t.getMonth()+1)/3);switch(e){case"q":return String(r);case"qq":return h(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(t,e,n){const r=t.getMonth();switch(e){case"M":case"MM":return R.M(t,e);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(t,e,n){const r=t.getMonth();switch(e){case"L":return String(r+1);case"LL":return h(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(t,e,n,r){const s=bt(t,r);return e==="wo"?n.ordinalNumber(s,{unit:"week"}):h(s,e.length)},I:function(t,e,n){const r=Dt(t);return e==="Io"?n.ordinalNumber(r,{unit:"week"}):h(r,e.length)},d:function(t,e,n){return e==="do"?n.ordinalNumber(t.getDate(),{unit:"date"}):R.d(t,e)},D:function(t,e,n){const r=Pr(t);return e==="Do"?n.ordinalNumber(r,{unit:"dayOfYear"}):h(r,e.length)},E:function(t,e,n){const r=t.getDay();switch(e){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(t,e,n,r){const s=t.getDay(),a=(s-r.weekStartsOn+8)%7||7;switch(e){case"e":return String(a);case"ee":return h(a,2);case"eo":return n.ordinalNumber(a,{unit:"day"});case"eee":return n.day(s,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(s,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(s,{width:"short",context:"formatting"});default:return n.day(s,{width:"wide",context:"formatting"})}},c:function(t,e,n,r){const s=t.getDay(),a=(s-r.weekStartsOn+8)%7||7;switch(e){case"c":return String(a);case"cc":return h(a,e.length);case"co":return n.ordinalNumber(a,{unit:"day"});case"ccc":return n.day(s,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(s,{width:"narrow",context:"standalone"});case"cccccc":return n.day(s,{width:"short",context:"standalone"});default:return n.day(s,{width:"wide",context:"standalone"})}},i:function(t,e,n){const r=t.getDay(),s=r===0?7:r;switch(e){case"i":return String(s);case"ii":return h(s,e.length);case"io":return n.ordinalNumber(s,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(t,e,n){const s=t.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.dayPeriod(s,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(s,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(s,{width:"narrow",context:"formatting"});default:return n.dayPeriod(s,{width:"wide",context:"formatting"})}},b:function(t,e,n){const r=t.getHours();let s;switch(r===12?s=S.noon:r===0?s=S.midnight:s=r/12>=1?"pm":"am",e){case"b":case"bb":return n.dayPeriod(s,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(s,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(s,{width:"narrow",context:"formatting"});default:return n.dayPeriod(s,{width:"wide",context:"formatting"})}},B:function(t,e,n){const r=t.getHours();let s;switch(r>=17?s=S.evening:r>=12?s=S.afternoon:r>=4?s=S.morning:s=S.night,e){case"B":case"BB":case"BBB":return n.dayPeriod(s,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(s,{width:"narrow",context:"formatting"});default:return n.dayPeriod(s,{width:"wide",context:"formatting"})}},h:function(t,e,n){if(e==="ho"){let r=t.getHours()%12;return r===0&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return R.h(t,e)},H:function(t,e,n){return e==="Ho"?n.ordinalNumber(t.getHours(),{unit:"hour"}):R.H(t,e)},K:function(t,e,n){const r=t.getHours()%12;return e==="Ko"?n.ordinalNumber(r,{unit:"hour"}):h(r,e.length)},k:function(t,e,n){let r=t.getHours();return r===0&&(r=24),e==="ko"?n.ordinalNumber(r,{unit:"hour"}):h(r,e.length)},m:function(t,e,n){return e==="mo"?n.ordinalNumber(t.getMinutes(),{unit:"minute"}):R.m(t,e)},s:function(t,e,n){return e==="so"?n.ordinalNumber(t.getSeconds(),{unit:"second"}):R.s(t,e)},S:function(t,e){return R.S(t,e)},X:function(t,e,n){const r=t.getTimezoneOffset();if(r===0)return"Z";switch(e){case"X":return Xe(r);case"XXXX":case"XX":return k(r);default:return k(r,":")}},x:function(t,e,n){const r=t.getTimezoneOffset();switch(e){case"x":return Xe(r);case"xxxx":case"xx":return k(r);default:return k(r,":")}},O:function(t,e,n){const r=t.getTimezoneOffset();switch(e){case"O":case"OO":case"OOO":return"GMT"+Ve(r,":");default:return"GMT"+k(r,":")}},z:function(t,e,n){const r=t.getTimezoneOffset();switch(e){case"z":case"zz":case"zzz":return"GMT"+Ve(r,":");default:return"GMT"+k(r,":")}},t:function(t,e,n){const r=Math.trunc(+t/1e3);return h(r,e.length)},T:function(t,e,n){return h(+t,e.length)}};function Ve(t,e=""){const n=t>0?"-":"+",r=Math.abs(t),s=Math.trunc(r/60),a=r%60;return a===0?n+String(s):n+String(s)+e+h(a,2)}function Xe(t,e){return t%60===0?(t>0?"-":"+")+h(Math.abs(t)/60,2):k(t,e)}function k(t,e=""){const n=t>0?"-":"+",r=Math.abs(t),s=h(Math.trunc(r/60),2),a=h(r%60,2);return n+s+e+a}const je=(t,e)=>{switch(t){case"P":return e.date({width:"short"});case"PP":return e.date({width:"medium"});case"PPP":return e.date({width:"long"});default:return e.date({width:"full"})}},Tt=(t,e)=>{switch(t){case"p":return e.time({width:"short"});case"pp":return e.time({width:"medium"});case"ppp":return e.time({width:"long"});default:return e.time({width:"full"})}},vr=(t,e)=>{const n=t.match(/(P+)(p+)?/)||[],r=n[1],s=n[2];if(!s)return je(t,e);let a;switch(r){case"P":a=e.dateTime({width:"short"});break;case"PP":a=e.dateTime({width:"medium"});break;case"PPP":a=e.dateTime({width:"long"});break;default:a=e.dateTime({width:"full"});break}return a.replace("{{date}}",je(r,e)).replace("{{time}}",Tt(s,e))},Te={p:Tt,P:vr},Ar=/^D+$/,Or=/^Y+$/,Nr=["D","DD","YY","YYYY"];function Et(t){return Ar.test(t)}function xt(t){return Or.test(t)}function Ee(t,e,n){const r=_r(t,e,n);if(console.warn(r),Nr.includes(t))throw new RangeError(r)}function _r(t,e,n){const r=t[0]==="Y"?"years":"days of the month";return`Use \`${t.toLowerCase()}\` instead of \`${t}\` (in \`${e}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const Rr=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Ir=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,kr=/^'([^]*?)'?$/,Yr=/''/g,Sr=/[a-zA-Z]/;function Cr(t,e,n){const r=W(),s=r.locale??pt,a=r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,o=r.weekStartsOn??r.locale?.options?.weekStartsOn??0,i=p(t,n?.in);if(!be(i))throw new RangeError("Invalid time value");let c=e.match(Ir).map(d=>{const l=d[0];if(l==="p"||l==="P"){const w=Te[l];return w(d,s.formatLong)}return d}).join("").match(Rr).map(d=>{if(d==="''")return{isToken:!1,value:"'"};const l=d[0];if(l==="'")return{isToken:!1,value:Lr(d)};if(Ge[l])return{isToken:!0,value:d};if(l.match(Sr))throw new RangeError("Format string contains an unescaped latin alphabet character `"+l+"`");return{isToken:!1,value:d}});s.localize.preprocessor&&(c=s.localize.preprocessor(i,c));const u={firstWeekContainsDate:a,weekStartsOn:o,locale:s};return c.map(d=>{if(!d.isToken)return d.value;const l=d.value;(xt(l)||Et(l))&&Ee(l,e,String(t));const w=Ge[l[0]];return w(i,l,s.localize,u)}).join("")}function Lr(t){const e=t.match(kr);return e?e[1].replace(Yr,"'"):t}function Wr(){return Object.assign({},W())}function $r(t,e){const n=p(t,e?.in).getDay();return n===0?7:n}function qr(t,e){const n=Fr(e)?new e(0):E(e,0);return n.setFullYear(t.getFullYear(),t.getMonth(),t.getDate()),n.setHours(t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()),n}function Fr(t){return typeof t=="function"&&t.prototype?.constructor===t}const Qr=10;class Pt{subPriority=0;validate(e,n){return!0}}class Ur extends Pt{constructor(e,n,r,s,a){super(),this.value=e,this.validateValue=n,this.setValue=r,this.priority=s,a&&(this.subPriority=a)}validate(e,n){return this.validateValue(e,this.value,n)}set(e,n,r){return this.setValue(e,n,this.value,r)}}class Hr extends Pt{priority=Qr;subPriority=-1;constructor(e,n){super(),this.context=e||(r=>E(n,r))}set(e,n){return n.timestampIsSet?e:E(e,qr(e,this.context))}}class m{run(e,n,r,s){const a=this.parse(e,n,r,s);return a?{setter:new Ur(a.value,this.validate,this.set,this.priority,this.subPriority),rest:a.rest}:null}validate(e,n,r){return!0}}class Br extends m{priority=140;parse(e,n,r){switch(n){case"G":case"GG":case"GGG":return r.era(e,{width:"abbreviated"})||r.era(e,{width:"narrow"});case"GGGGG":return r.era(e,{width:"narrow"});default:return r.era(e,{width:"wide"})||r.era(e,{width:"abbreviated"})||r.era(e,{width:"narrow"})}}set(e,n,r){return n.era=r,e.setFullYear(r,0,1),e.setHours(0,0,0,0),e}incompatibleTokens=["R","u","t","T"]}const b={month:/^(1[0-2]|0?\d)/,date:/^(3[0-1]|[0-2]?\d)/,dayOfYear:/^(36[0-6]|3[0-5]\d|[0-2]?\d?\d)/,week:/^(5[0-3]|[0-4]?\d)/,hour23h:/^(2[0-3]|[0-1]?\d)/,hour24h:/^(2[0-4]|[0-1]?\d)/,hour11h:/^(1[0-1]|0?\d)/,hour12h:/^(1[0-2]|0?\d)/,minute:/^[0-5]?\d/,second:/^[0-5]?\d/,singleDigit:/^\d/,twoDigits:/^\d{1,2}/,threeDigits:/^\d{1,3}/,fourDigits:/^\d{1,4}/,anyDigitsSigned:/^-?\d+/,singleDigitSigned:/^-?\d/,twoDigitsSigned:/^-?\d{1,2}/,threeDigitsSigned:/^-?\d{1,3}/,fourDigitsSigned:/^-?\d{1,4}/},A={basicOptionalMinutes:/^([+-])(\d{2})(\d{2})?|Z/,basic:/^([+-])(\d{2})(\d{2})|Z/,basicOptionalSeconds:/^([+-])(\d{2})(\d{2})((\d{2}))?|Z/,extended:/^([+-])(\d{2}):(\d{2})|Z/,extendedOptionalSeconds:/^([+-])(\d{2}):(\d{2})(:(\d{2}))?|Z/};function T(t,e){return t&&{value:e(t.value),rest:t.rest}}function y(t,e){const n=e.match(t);return n?{value:parseInt(n[0],10),rest:e.slice(n[0].length)}:null}function O(t,e){const n=e.match(t);if(!n)return null;if(n[0]==="Z")return{value:0,rest:e.slice(1)};const r=n[1]==="+"?1:-1,s=n[2]?parseInt(n[2],10):0,a=n[3]?parseInt(n[3],10):0,o=n[5]?parseInt(n[5],10):0;return{value:r*(s*_e+a*Ne+o*$n),rest:e.slice(n[0].length)}}function Mt(t){return y(b.anyDigitsSigned,t)}function D(t,e){switch(t){case 1:return y(b.singleDigit,e);case 2:return y(b.twoDigits,e);case 3:return y(b.threeDigits,e);case 4:return y(b.fourDigits,e);default:return y(new RegExp("^\\d{1,"+t+"}"),e)}}function Z(t,e){switch(t){case 1:return y(b.singleDigitSigned,e);case 2:return y(b.twoDigitsSigned,e);case 3:return y(b.threeDigitsSigned,e);case 4:return y(b.fourDigitsSigned,e);default:return y(new RegExp("^-?\\d{1,"+t+"}"),e)}}function Ie(t){switch(t){case"morning":return 4;case"evening":return 17;case"pm":case"noon":case"afternoon":return 12;default:return 0}}function vt(t,e){const n=e>0,r=n?e:1-e;let s;if(r<=50)s=t||100;else{const a=r+50,o=Math.trunc(a/100)*100,i=t>=a%100;s=t+o-(i?100:0)}return n?s:1-s}function At(t){return t%400===0||t%4===0&&t%100!==0}class Gr extends m{priority=130;incompatibleTokens=["Y","R","u","w","I","i","e","c","t","T"];parse(e,n,r){const s=a=>({year:a,isTwoDigitYear:n==="yy"});switch(n){case"y":return T(D(4,e),s);case"yo":return T(r.ordinalNumber(e,{unit:"year"}),s);default:return T(D(n.length,e),s)}}validate(e,n){return n.isTwoDigitYear||n.year>0}set(e,n,r){const s=e.getFullYear();if(r.isTwoDigitYear){const o=vt(r.year,s);return e.setFullYear(o,0,1),e.setHours(0,0,0,0),e}const a=!("era"in n)||n.era===1?r.year:1-r.year;return e.setFullYear(a,0,1),e.setHours(0,0,0,0),e}}class Vr extends m{priority=130;parse(e,n,r){const s=a=>({year:a,isTwoDigitYear:n==="YY"});switch(n){case"Y":return T(D(4,e),s);case"Yo":return T(r.ordinalNumber(e,{unit:"year"}),s);default:return T(D(n.length,e),s)}}validate(e,n){return n.isTwoDigitYear||n.year>0}set(e,n,r,s){const a=Re(e,s);if(r.isTwoDigitYear){const i=vt(r.year,a);return e.setFullYear(i,0,s.firstWeekContainsDate),e.setHours(0,0,0,0),I(e,s)}const o=!("era"in n)||n.era===1?r.year:1-r.year;return e.setFullYear(o,0,s.firstWeekContainsDate),e.setHours(0,0,0,0),I(e,s)}incompatibleTokens=["y","R","u","Q","q","M","L","I","d","D","i","t","T"]}class Xr extends m{priority=130;parse(e,n){return Z(n==="R"?4:n.length,e)}set(e,n,r){const s=E(e,0);return s.setFullYear(r,0,4),s.setHours(0,0,0,0),C(s)}incompatibleTokens=["G","y","Y","u","Q","q","M","L","w","d","D","e","c","t","T"]}class jr extends m{priority=130;parse(e,n){return Z(n==="u"?4:n.length,e)}set(e,n,r){return e.setFullYear(r,0,1),e.setHours(0,0,0,0),e}incompatibleTokens=["G","y","Y","R","w","I","i","e","c","t","T"]}class Kr extends m{priority=120;parse(e,n,r){switch(n){case"Q":case"QQ":return D(n.length,e);case"Qo":return r.ordinalNumber(e,{unit:"quarter"});case"QQQ":return r.quarter(e,{width:"abbreviated",context:"formatting"})||r.quarter(e,{width:"narrow",context:"formatting"});case"QQQQQ":return r.quarter(e,{width:"narrow",context:"formatting"});default:return r.quarter(e,{width:"wide",context:"formatting"})||r.quarter(e,{width:"abbreviated",context:"formatting"})||r.quarter(e,{width:"narrow",context:"formatting"})}}validate(e,n){return n>=1&&n<=4}set(e,n,r){return e.setMonth((r-1)*3,1),e.setHours(0,0,0,0),e}incompatibleTokens=["Y","R","q","M","L","w","I","d","D","i","e","c","t","T"]}class zr extends m{priority=120;parse(e,n,r){switch(n){case"q":case"qq":return D(n.length,e);case"qo":return r.ordinalNumber(e,{unit:"quarter"});case"qqq":return r.quarter(e,{width:"abbreviated",context:"standalone"})||r.quarter(e,{width:"narrow",context:"standalone"});case"qqqqq":return r.quarter(e,{width:"narrow",context:"standalone"});default:return r.quarter(e,{width:"wide",context:"standalone"})||r.quarter(e,{width:"abbreviated",context:"standalone"})||r.quarter(e,{width:"narrow",context:"standalone"})}}validate(e,n){return n>=1&&n<=4}set(e,n,r){return e.setMonth((r-1)*3,1),e.setHours(0,0,0,0),e}incompatibleTokens=["Y","R","Q","M","L","w","I","d","D","i","e","c","t","T"]}class Jr extends m{incompatibleTokens=["Y","R","q","Q","L","w","I","D","i","e","c","t","T"];priority=110;parse(e,n,r){const s=a=>a-1;switch(n){case"M":return T(y(b.month,e),s);case"MM":return T(D(2,e),s);case"Mo":return T(r.ordinalNumber(e,{unit:"month"}),s);case"MMM":return r.month(e,{width:"abbreviated",context:"formatting"})||r.month(e,{width:"narrow",context:"formatting"});case"MMMMM":return r.month(e,{width:"narrow",context:"formatting"});default:return r.month(e,{width:"wide",context:"formatting"})||r.month(e,{width:"abbreviated",context:"formatting"})||r.month(e,{width:"narrow",context:"formatting"})}}validate(e,n){return n>=0&&n<=11}set(e,n,r){return e.setMonth(r,1),e.setHours(0,0,0,0),e}}class Zr extends m{priority=110;parse(e,n,r){const s=a=>a-1;switch(n){case"L":return T(y(b.month,e),s);case"LL":return T(D(2,e),s);case"Lo":return T(r.ordinalNumber(e,{unit:"month"}),s);case"LLL":return r.month(e,{width:"abbreviated",context:"standalone"})||r.month(e,{width:"narrow",context:"standalone"});case"LLLLL":return r.month(e,{width:"narrow",context:"standalone"});default:return r.month(e,{width:"wide",context:"standalone"})||r.month(e,{width:"abbreviated",context:"standalone"})||r.month(e,{width:"narrow",context:"standalone"})}}validate(e,n){return n>=0&&n<=11}set(e,n,r){return e.setMonth(r,1),e.setHours(0,0,0,0),e}incompatibleTokens=["Y","R","q","Q","M","w","I","D","i","e","c","t","T"]}function es(t,e,n){const r=p(t,n?.in),s=bt(r,n)-e;return r.setDate(r.getDate()-s*7),p(r,n?.in)}class ts extends m{priority=100;parse(e,n,r){switch(n){case"w":return y(b.week,e);case"wo":return r.ordinalNumber(e,{unit:"week"});default:return D(n.length,e)}}validate(e,n){return n>=1&&n<=53}set(e,n,r,s){return I(es(e,r,s),s)}incompatibleTokens=["y","R","u","q","Q","M","L","I","d","D","i","t","T"]}function ns(t,e,n){const r=p(t,n?.in),s=Dt(r,n)-e;return r.setDate(r.getDate()-s*7),r}class rs extends m{priority=100;parse(e,n,r){switch(n){case"I":return y(b.week,e);case"Io":return r.ordinalNumber(e,{unit:"week"});default:return D(n.length,e)}}validate(e,n){return n>=1&&n<=53}set(e,n,r){return C(ns(e,r))}incompatibleTokens=["y","Y","u","q","Q","M","L","w","d","D","e","c","t","T"]}const ss=[31,28,31,30,31,30,31,31,30,31,30,31],as=[31,29,31,30,31,30,31,31,30,31,30,31];class os extends m{priority=90;subPriority=1;parse(e,n,r){switch(n){case"d":return y(b.date,e);case"do":return r.ordinalNumber(e,{unit:"date"});default:return D(n.length,e)}}validate(e,n){const r=e.getFullYear(),s=At(r),a=e.getMonth();return s?n>=1&&n<=as[a]:n>=1&&n<=ss[a]}set(e,n,r){return e.setDate(r),e.setHours(0,0,0,0),e}incompatibleTokens=["Y","R","q","Q","w","I","D","i","e","c","t","T"]}class is extends m{priority=90;subpriority=1;parse(e,n,r){switch(n){case"D":case"DD":return y(b.dayOfYear,e);case"Do":return r.ordinalNumber(e,{unit:"date"});default:return D(n.length,e)}}validate(e,n){const r=e.getFullYear();return At(r)?n>=1&&n<=366:n>=1&&n<=365}set(e,n,r){return e.setMonth(0,r),e.setHours(0,0,0,0),e}incompatibleTokens=["Y","R","q","Q","M","L","w","I","d","E","i","e","c","t","T"]}function ke(t,e,n){const r=W(),s=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,a=p(t,n?.in),o=a.getDay(),c=(e%7+7)%7,u=7-s,d=e<0||e>6?e-(o+u)%7:(c+u)%7-(o+u)%7;return wt(a,d,n)}class cs extends m{priority=90;parse(e,n,r){switch(n){case"E":case"EE":case"EEE":return r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"});case"EEEEE":return r.day(e,{width:"narrow",context:"formatting"});case"EEEEEE":return r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"});default:return r.day(e,{width:"wide",context:"formatting"})||r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"})}}validate(e,n){return n>=0&&n<=6}set(e,n,r,s){return e=ke(e,r,s),e.setHours(0,0,0,0),e}incompatibleTokens=["D","i","e","c","t","T"]}class us extends m{priority=90;parse(e,n,r,s){const a=o=>{const i=Math.floor((o-1)/7)*7;return(o+s.weekStartsOn+6)%7+i};switch(n){case"e":case"ee":return T(D(n.length,e),a);case"eo":return T(r.ordinalNumber(e,{unit:"day"}),a);case"eee":return r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"});case"eeeee":return r.day(e,{width:"narrow",context:"formatting"});case"eeeeee":return r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"});default:return r.day(e,{width:"wide",context:"formatting"})||r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"})}}validate(e,n){return n>=0&&n<=6}set(e,n,r,s){return e=ke(e,r,s),e.setHours(0,0,0,0),e}incompatibleTokens=["y","R","u","q","Q","M","L","I","d","D","E","i","c","t","T"]}class ds extends m{priority=90;parse(e,n,r,s){const a=o=>{const i=Math.floor((o-1)/7)*7;return(o+s.weekStartsOn+6)%7+i};switch(n){case"c":case"cc":return T(D(n.length,e),a);case"co":return T(r.ordinalNumber(e,{unit:"day"}),a);case"ccc":return r.day(e,{width:"abbreviated",context:"standalone"})||r.day(e,{width:"short",context:"standalone"})||r.day(e,{width:"narrow",context:"standalone"});case"ccccc":return r.day(e,{width:"narrow",context:"standalone"});case"cccccc":return r.day(e,{width:"short",context:"standalone"})||r.day(e,{width:"narrow",context:"standalone"});default:return r.day(e,{width:"wide",context:"standalone"})||r.day(e,{width:"abbreviated",context:"standalone"})||r.day(e,{width:"short",context:"standalone"})||r.day(e,{width:"narrow",context:"standalone"})}}validate(e,n){return n>=0&&n<=6}set(e,n,r,s){return e=ke(e,r,s),e.setHours(0,0,0,0),e}incompatibleTokens=["y","R","u","q","Q","M","L","I","d","D","E","i","e","t","T"]}function ls(t,e,n){const r=p(t,n?.in),s=$r(r,n),a=e-s;return wt(r,a,n)}class fs extends m{priority=90;parse(e,n,r){const s=a=>a===0?7:a;switch(n){case"i":case"ii":return D(n.length,e);case"io":return r.ordinalNumber(e,{unit:"day"});case"iii":return T(r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"}),s);case"iiiii":return T(r.day(e,{width:"narrow",context:"formatting"}),s);case"iiiiii":return T(r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"}),s);default:return T(r.day(e,{width:"wide",context:"formatting"})||r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"}),s)}}validate(e,n){return n>=1&&n<=7}set(e,n,r){return e=ls(e,r),e.setHours(0,0,0,0),e}incompatibleTokens=["y","Y","u","q","Q","M","L","w","d","D","E","e","c","t","T"]}class ms extends m{priority=80;parse(e,n,r){switch(n){case"a":case"aa":case"aaa":return r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"});case"aaaaa":return r.dayPeriod(e,{width:"narrow",context:"formatting"});default:return r.dayPeriod(e,{width:"wide",context:"formatting"})||r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"})}}set(e,n,r){return e.setHours(Ie(r),0,0,0),e}incompatibleTokens=["b","B","H","k","t","T"]}class hs extends m{priority=80;parse(e,n,r){switch(n){case"b":case"bb":case"bbb":return r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"});case"bbbbb":return r.dayPeriod(e,{width:"narrow",context:"formatting"});default:return r.dayPeriod(e,{width:"wide",context:"formatting"})||r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"})}}set(e,n,r){return e.setHours(Ie(r),0,0,0),e}incompatibleTokens=["a","B","H","k","t","T"]}class gs extends m{priority=80;parse(e,n,r){switch(n){case"B":case"BB":case"BBB":return r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"});case"BBBBB":return r.dayPeriod(e,{width:"narrow",context:"formatting"});default:return r.dayPeriod(e,{width:"wide",context:"formatting"})||r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"})}}set(e,n,r){return e.setHours(Ie(r),0,0,0),e}incompatibleTokens=["a","b","t","T"]}class ws extends m{priority=70;parse(e,n,r){switch(n){case"h":return y(b.hour12h,e);case"ho":return r.ordinalNumber(e,{unit:"hour"});default:return D(n.length,e)}}validate(e,n){return n>=1&&n<=12}set(e,n,r){const s=e.getHours()>=12;return s&&r<12?e.setHours(r+12,0,0,0):!s&&r===12?e.setHours(0,0,0,0):e.setHours(r,0,0,0),e}incompatibleTokens=["H","K","k","t","T"]}class ys extends m{priority=70;parse(e,n,r){switch(n){case"H":return y(b.hour23h,e);case"Ho":return r.ordinalNumber(e,{unit:"hour"});default:return D(n.length,e)}}validate(e,n){return n>=0&&n<=23}set(e,n,r){return e.setHours(r,0,0,0),e}incompatibleTokens=["a","b","h","K","k","t","T"]}class ps extends m{priority=70;parse(e,n,r){switch(n){case"K":return y(b.hour11h,e);case"Ko":return r.ordinalNumber(e,{unit:"hour"});default:return D(n.length,e)}}validate(e,n){return n>=0&&n<=11}set(e,n,r){return e.getHours()>=12&&r<12?e.setHours(r+12,0,0,0):e.setHours(r,0,0,0),e}incompatibleTokens=["h","H","k","t","T"]}class Ds extends m{priority=70;parse(e,n,r){switch(n){case"k":return y(b.hour24h,e);case"ko":return r.ordinalNumber(e,{unit:"hour"});default:return D(n.length,e)}}validate(e,n){return n>=1&&n<=24}set(e,n,r){const s=r<=24?r%24:r;return e.setHours(s,0,0,0),e}incompatibleTokens=["a","b","h","H","K","t","T"]}class bs extends m{priority=60;parse(e,n,r){switch(n){case"m":return y(b.minute,e);case"mo":return r.ordinalNumber(e,{unit:"minute"});default:return D(n.length,e)}}validate(e,n){return n>=0&&n<=59}set(e,n,r){return e.setMinutes(r,0,0),e}incompatibleTokens=["t","T"]}class Ts extends m{priority=50;parse(e,n,r){switch(n){case"s":return y(b.second,e);case"so":return r.ordinalNumber(e,{unit:"second"});default:return D(n.length,e)}}validate(e,n){return n>=0&&n<=59}set(e,n,r){return e.setSeconds(r,0),e}incompatibleTokens=["t","T"]}class Es extends m{priority=30;parse(e,n){const r=s=>Math.trunc(s*Math.pow(10,-n.length+3));return T(D(n.length,e),r)}set(e,n,r){return e.setMilliseconds(r),e}incompatibleTokens=["t","T"]}class xs extends m{priority=10;parse(e,n){switch(n){case"X":return O(A.basicOptionalMinutes,e);case"XX":return O(A.basic,e);case"XXXX":return O(A.basicOptionalSeconds,e);case"XXXXX":return O(A.extendedOptionalSeconds,e);default:return O(A.extended,e)}}set(e,n,r){return n.timestampIsSet?e:E(e,e.getTime()-J(e)-r)}incompatibleTokens=["t","T","x"]}class Ps extends m{priority=10;parse(e,n){switch(n){case"x":return O(A.basicOptionalMinutes,e);case"xx":return O(A.basic,e);case"xxxx":return O(A.basicOptionalSeconds,e);case"xxxxx":return O(A.extendedOptionalSeconds,e);default:return O(A.extended,e)}}set(e,n,r){return n.timestampIsSet?e:E(e,e.getTime()-J(e)-r)}incompatibleTokens=["t","T","X"]}class Ms extends m{priority=40;parse(e){return Mt(e)}set(e,n,r){return[E(e,r*1e3),{timestampIsSet:!0}]}incompatibleTokens="*"}class vs extends m{priority=20;parse(e){return Mt(e)}set(e,n,r){return[E(e,r),{timestampIsSet:!0}]}incompatibleTokens="*"}const As={G:new Br,y:new Gr,Y:new Vr,R:new Xr,u:new jr,Q:new Kr,q:new zr,M:new Jr,L:new Zr,w:new ts,I:new rs,d:new os,D:new is,E:new cs,e:new us,c:new ds,i:new fs,a:new ms,b:new hs,B:new gs,h:new ws,H:new ys,K:new ps,k:new Ds,m:new bs,s:new Ts,S:new Es,X:new xs,x:new Ps,t:new Ms,T:new vs},Os=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Ns=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,_s=/^'([^]*?)'?$/,Rs=/''/g,Is=/\S/,ks=/[a-zA-Z]/;function Ys(t,e,n,r){const s=()=>E(n,NaN),a=Wr(),o=a.locale??pt,i=a.firstWeekContainsDate??a.locale?.options?.firstWeekContainsDate??1,c=a.weekStartsOn??a.locale?.options?.weekStartsOn??0;if(!e)return t?s():p(n,r?.in);const u={firstWeekContainsDate:i,weekStartsOn:c,locale:o},d=[new Hr(r?.in,n)],l=e.match(Ns).map(f=>{const g=f[0];if(g in Te){const M=Te[g];return M(f,o.formatLong)}return f}).join("").match(Os),w=[];for(let f of l){xt(f)&&Ee(f,e,t),Et(f)&&Ee(f,e,t);const g=f[0],M=As[g];if(M){const{incompatibleTokens:v}=M;if(Array.isArray(v)){const q=w.find(V=>v.includes(V.token)||V.token===g);if(q)throw new RangeError(`The format string mustn't contain \`${q.fullToken}\` and \`${f}\` at the same time`)}else if(M.incompatibleTokens==="*"&&w.length>0)throw new RangeError(`The format string mustn't contain \`${f}\` and any other token at the same time`);w.push({token:g,fullToken:f});const $=M.run(t,f,o.match,u);if(!$)return s();d.push($.setter),t=$.rest}else{if(g.match(ks))throw new RangeError("Format string contains an unescaped latin alphabet character `"+g+"`");if(f==="''"?f="'":g==="'"&&(f=Ss(f)),t.indexOf(f)===0)t=t.slice(f.length);else return s()}}if(t.length>0&&Is.test(t))return s();const x=d.map(f=>f.priority).sort((f,g)=>g-f).filter((f,g,M)=>M.indexOf(f)===g).map(f=>d.filter(g=>g.priority===f).sort((g,M)=>M.subPriority-g.subPriority)).map(f=>f[0]);let P=p(n,r?.in);if(isNaN(+P))return s();const Y={};for(const f of x){if(!f.validate(P,u))return s();const g=f.set(P,Y,u);Array.isArray(g)?(P=g[0],Object.assign(Y,g[1])):P=g}return P}function Ss(t){return t.match(_s)[1].replace(Rs,"'")}function Cs(t,e){const n=()=>E(e?.in,NaN),s=qs(t);let a;if(s.date){const u=Fs(s.date,2);a=Qs(u.restDateString,u.year)}if(!a||isNaN(+a))return n();const o=+a;let i=0,c;if(s.time&&(i=Us(s.time),isNaN(i)))return n();if(s.timezone){if(c=Hs(s.timezone),isNaN(c))return n()}else{const u=new Date(o+i),d=p(0,e?.in);return d.setFullYear(u.getUTCFullYear(),u.getUTCMonth(),u.getUTCDate()),d.setHours(u.getUTCHours(),u.getUTCMinutes(),u.getUTCSeconds(),u.getUTCMilliseconds()),d}return p(o+i+c,e?.in)}const j={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},Ls=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,Ws=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,$s=/^([+-])(\d{2})(?::?(\d{2}))?$/;function qs(t){const e={},n=t.split(j.dateTimeDelimiter);let r;if(n.length>2)return e;if(/:/.test(n[0])?r=n[0]:(e.date=n[0],r=n[1],j.timeZoneDelimiter.test(e.date)&&(e.date=t.split(j.timeZoneDelimiter)[0],r=t.substr(e.date.length,t.length))),r){const s=j.timezone.exec(r);s?(e.time=r.replace(s[1],""),e.timezone=s[1]):e.time=r}return e}function Fs(t,e){const n=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+e)+"})|(\\d{2}|[+-]\\d{"+(2+e)+"})$)"),r=t.match(n);if(!r)return{year:NaN,restDateString:""};const s=r[1]?parseInt(r[1]):null,a=r[2]?parseInt(r[2]):null;return{year:a===null?s:a*100,restDateString:t.slice((r[1]||r[2]).length)}}function Qs(t,e){if(e===null)return new Date(NaN);const n=t.match(Ls);if(!n)return new Date(NaN);const r=!!n[4],s=U(n[1]),a=U(n[2])-1,o=U(n[3]),i=U(n[4]),c=U(n[5])-1;if(r)return js(e,i,c)?Bs(e,i,c):new Date(NaN);{const u=new Date(0);return!Vs(e,a,o)||!Xs(e,s)?new Date(NaN):(u.setUTCFullYear(e,a,Math.max(s,o)),u)}}function U(t){return t?parseInt(t):1}function Us(t){const e=t.match(Ws);if(!e)return NaN;const n=pe(e[1]),r=pe(e[2]),s=pe(e[3]);return Ks(n,r,s)?n*_e+r*Ne+s*1e3:NaN}function pe(t){return t&&parseFloat(t.replace(",","."))||0}function Hs(t){if(t==="Z")return 0;const e=t.match($s);if(!e)return 0;const n=e[1]==="+"?-1:1,r=parseInt(e[2]),s=e[3]&&parseInt(e[3])||0;return zs(r,s)?n*(r*_e+s*Ne):NaN}function Bs(t,e,n){const r=new Date(0);r.setUTCFullYear(t,0,4);const s=r.getUTCDay()||7,a=(e-1)*7+n+1-s;return r.setUTCDate(r.getUTCDate()+a),r}const Gs=[31,null,31,30,31,30,31,31,30,31,30,31];function Ot(t){return t%400===0||t%4===0&&t%100!==0}function Vs(t,e,n){return e>=0&&e<=11&&n>=1&&n<=(Gs[e]||(Ot(t)?29:28))}function Xs(t,e){return e>=1&&e<=(Ot(t)?366:365)}function js(t,e,n){return e>=1&&e<=53&&n>=0&&n<=6}function Ks(t,e,n){return t===24?e===0&&n===0:n>=0&&n<60&&e>=0&&e<60&&t>=0&&t<25}function zs(t,e){return e>=0&&e<=59}const K=t=>{if(!t.includes("T")){for(const n of Js){const r=Ys(t,n,new Date);if(be(r))return r}return null}const e=Cs(t);return be(e)?e:null},Js=["yyyy-MM-dd","MM-dd-yyyy"],xe=(t,e,n)=>{const r={};return e?.contentType!==null&&(r[Cn]=e?.contentType||Sn),e?.jwt&&(r.Authorization=`Bearer ${e.jwt}`),e?.chatReference&&(r[Ln]=e.chatReference),{...r,...n}},Zs=t=>{const e={...t};return e[we]&&(e[we]=e[we].substring(0,8)+"...[REDACTED]"),e.Authorization&&(e.Authorization="Bearer [REDACTED]"),e[z]&&(e[z]=e[z].substring(0,8)+"...[REDACTED]"),e},Ke=async(t,e,n)=>await fetch(t,{method:n.method||"GET",headers:e,body:n.body?JSON.stringify(n.body):void 0}),ea=async(t,e,n)=>{const r=n?.body===void 0?void 0:n?.isFormData?n.body:JSON.stringify(n.body);return await fetch(t,{method:n.method,headers:e,body:r,signal:n?.signal})};class ta{constructor(){this.decoder=new TextDecoder}async streamChat(e,n,r={},s){const{onMessage:a,onError:o,onComplete:i,signal:c}=r;try{const u=await this.initializeStreamRequest(e,n,c,s);await this.processStreamData(u,a),i?.()}catch(u){this.handleStreamError(u,o)}}async initializeStreamRequest(e,n,r,s){const a=xe(void 0,{jwt:s}),o=await ea(e,{Accept:"text/event-stream",...a},{method:"POST",body:n,signal:r});if(!o.ok){const i=await o.text();let c={};try{c=JSON.parse(i)}catch{c.error="Failed to parse error body"}throw new Ue({status:o.status,message:c.error??"No response body"})}if(!o.body)throw new Ue({message:"No response body",status:o.status});return o.body.getReader()}async processStreamData(e,n){let r="";try{for(;;){const{done:s,value:a}=await e.read();if(s){r.trim()&&this.parseSSEDataLine(r,n);break}const o=this.decoder.decode(a,{stream:!0});r+=o;const i=r.split(`
2
+ `);r=i.pop()||"";for(const c of i)this.parseSSEDataLine(c,n)}}finally{e.releaseLock()}}handleStreamError(e,n){const r=e instanceof Error?e:new Error(String(e));throw n?.(r),r}parseSSEDataLine(e,n){const r=e.trim();if(!(!r||r.startsWith(":"))&&r.startsWith("data: ")){const s=r.slice(6);if(s==="[DONE]"){console.info("SSE: Stream completed");return}let a;try{a=JSON.parse(s)}catch(o){console.error(`Failed to parse SSE data: ${s} ${o}`)}n?.(a)}}}new ta;class na{constructor(e){this.config=e,console.info("SdmxApiClient initialized",{apiUrl:e.apiUrl||"NOT SET"})}async getRequest(e,n){return this.request(e,{...n,method:"GET"})}async postRequest(e,n,r){return this.request(e,{...n,method:"POST"},r)}async streamRequest(e,n,r){const s=`${this.config.apiUrl}/${e}`,a={...xe(void 0,{jwt:this.config.jwt}),...n.headers};this.config.apiKey!=null&&(a[z]=this.config.apiKey);const o=new ReadableStream({async start(c){try{const u=await Ke(s,a,n);if(!u.ok){const x=await u.text();throw console.error(`Fetch failed! Status: ${u.status}, Body: ${x}`),new Error(`Fetch failed with status ${u.status}`)}const d=u.body?.getReader();if(!d)throw new Error("Failed to create stream reader");const l=new Uint8Array([239,187,191]);c.enqueue(l);const w=async()=>{const{done:x,value:P}=await d.read();x?c.close():(c.enqueue(P),await w())};w()}catch(u){c.error(u)}}}),i=new Headers({"Content-Disposition":`attachment; filename=${encodeURIComponent(r)}`});return new Response(o,{headers:i})}async request(e,n,r){const s=Date.now(),a=`${r||this.config.apiUrl}/${e}`,o={...xe(void 0,{jwt:this.config.jwt}),...n.headers};this.config.apiKey!=null&&(o["Ocp-Apim-Subscription-Key"]=this.config.apiKey),this.addInfoRequestLog("API Request",a,n,o);try{const i=await Ke(a,o,n),c=Date.now()-s;let u;const d=await i.text();try{u=d?JSON.parse(d):{}}catch{if(this.addErrorRequestParsing(a,n,i,c,d),!i.ok)throw new Error(`API request failed: ${i.status} ${i.statusText} - ${d.substring(0,100)}`);u={data:d}}if(!i.ok){this.addErrorRequestLog(a,n,i,c,u);const l=Yn(u,i);throw new Error(`API request failed: ${l}`)}return u}catch(i){const c=Date.now()-s;throw console.error("API Request Exception",{method:n.method,url:a,duration:`${c}ms`,error:i instanceof Error?i.message:String(i)}),i}}addInfoRequestLog(e,n,r,s){const a={method:r.method||"GET",url:n,headers:Zs(s)};r.body&&(a.body=r.body),console.info(e,a)}addErrorRequestLog(e,n,r,s,a){console.error("API Request Failed",{method:n.method,url:e,status:r.status,statusText:r.statusText,duration:`${s}ms`,response:a})}addErrorRequestParsing(e,n,r,s,a){console.error("API Response Parse Error",{method:n.method,url:e,status:r.status,statusText:r.statusText,duration:`${s}ms`,responseText:a.substring(0,200),error:"Response is not valid JSON"})}}const ra=["FREQ","FREQUENCY"],Nt="TIME_PERIOD",_t="time_period_start",Rt="time_period_end";var It=(t=>(t.CONDITIONAL="Conditional",t.MANDATORY="Mandatory",t))(It||{}),re=(t=>(t.DIMENSION="Dimension",t.MEASURE_DIMENSION="MeasureDimension",t.TIME_DIMENSION="TimeDimension",t))(re||{}),kt=(t=>(t.UNBOUNDED="unbounded",t))(kt||{});const Yt=(t,e)=>{const n=t?.data?.dataSets?.[0],s=t?.data?.structures?.[0]?.attributes?.dimensionGroup||[],a=n?.dimensionGroupAttributes,o={};for(const i of s){const c=i.relationship.dimensions,{codedSeriesKey:u,decodedSeriesKey:d}=Ye(t,e,c);o[i.id]={values:a?.[u]||[],decodedSeriesKey:d,codedSeriesKey:u}}return o},Ye=(t,e,n)=>{const r=t?.data?.structures?.[0],s=[...r?.dimensions.series||[],...r?.dimensions.observation||[]],a=new Array(s?.length),o=new Array(s?.length);return n?.forEach(i=>{const c=s?.findIndex(l=>l.id===i)||0,u=e[c],d=s[c].values.findIndex(l=>l.id===u||l.value===u)||0;a[c]=d>=0?d:u,o[c]=u}),{codedSeriesKey:a.join(":"),decodedSeriesKey:o.join(":")}},sa=(t,e,n)=>{const r=t?.data?.dataSets?.[0],s=t?.data?.structures?.[0],a=(s?.attributes?.dimensionGroup||[]).filter(l=>l.relationship.dimensions?.length===1&&l.relationship.dimensions.includes(e||"")),o=r?.dimensionGroupAttributes,i=[...s?.dimensions.series||[],...s?.dimensions.observation||[]],c=i?.findIndex(l=>l.id===e),u=new Array(i?.length);u[c]=n||"";const d={};for(const l of a){const w=l.relationship.dimensions,{codedSeriesKey:x,decodedSeriesKey:P}=Ye(t,u,w);d[l.id]={values:o?.[x]||[],decodedSeriesKey:P,codedSeriesKey:x}}return d},St=(t,e)=>{if(e==null)return;const n=t.values?.[e];return n??(e instanceof Array?{values:e}:{value:e.toString()})},Ct="Observation",aa=t=>{const e=t?.data?.dataSets,n=t?.data?.structures?.[0];if(!e||!n)return[];const r=n.attributes,s=n.dimensions,a=r?.dimensionGroup||[],o=e[0].series||e[0].observations,i=s.series?.length?s.series:s.observation,c=[];for(const u in o){const d=[],{name:l,parsedTimeSeriesValue:w}=Lt(u,i),x=o[u],P=x.attributes||[];if(Object.keys(x).length===0){c.push({name:l,parsedTimeSeriesValue:w,values:d,attributes:[],dataSetAttrs:[]});continue}d.push(...ia(x,n));const Y=ee(r?.series||[],v=>P[v]),f=ca(n.attributes?.dataSet||[],e[0].attributes?.filter(v=>v!=null)||[]),g=Yt(t,w),M=a.map((v,$)=>{const q=g[v.id],V=St(v,q.values[$]);return{attribute:v,dimensionGroupValue:V,dimensionGroupData:q}});c.push({name:l,parsedTimeSeriesValue:w,values:d,attributes:Y,dataSetAttrs:f,dimensionGroupAttributes:M})}return c},Lt=(t,e)=>{const n=t.split(new RegExp("(?<!\\|):(?!\\||$)")),r=[];for(let s=0;s<n.length;s++){const a=e?.[s],o=Number(n[s]);if(o<0||a==null)continue;const i=a.values[o];if(i==null){r.push(n[s].replace("|:",":"));continue}r.push(i?.id||i?.value||"")}return{name:Wt(r),parsedTimeSeriesValue:r}},ee=(t,e)=>{const n=[];for(let r=0;r<t.length;r++){const s=t[r],a=e(r),o=a!=null&&s.values!=null?oa(a,s):void 0;n.push({name:s.id,value:o})}return n},oa=(t,e)=>{const n=e.values[t];return n==null?typeof t=="object"?t:t.toString():n?.id||n?.value||n?.ids||n?.values},Wt=t=>t.map(e=>e?$t(e):"").join("."),$t=t=>t.replace(/\./g,"|.").replace(/:/g,"|:"),ia=(t,e)=>{const n=e.measures?.observation?.length;if(t.observations==null)return[{values:ze(t,e.measures),obsAttributes:ee(e.attributes?.observation||[],o=>t[o+n]),dimensionAtObservation:Ct}];const r=t.observations,s=e.dimensions.observation?.[0],a=[];for(const o in r){const i=s?.values[o];a.push({dimensionAtObservation:i?.value||i?.id,values:ze(r[o],e.measures),obsAttributes:ee(e.attributes?.observation||[],c=>r[o][c+n])})}return a},ze=(t,e)=>e?.observation?.map((n,r)=>({name:n.id,value:t[r]}))||[],ca=(t,e)=>t.reduce((n,r,s)=>{const a=e[s];return ua(n,r,a,""),n},[]),ua=(t,e,n,r)=>{const s=n!=null?e?.values?.length>0?e.values[n]?.id||e.values[n]?.value:String(n):r;t.push({name:e.id,value:s||""})},qt=/^[0-9][0-9][0-9][0-9]-Q[1-4]$/,Ft=/^[0-9][0-9][0-9][0-9]-W(0[1-9]|[1-4][0-9]|5[0-3])$/,Qt=/^[0-9][0-9][0-9][0-9]-S[1-2]$/,Ut=/^[0-9][0-9][0-9][0-9]$/,Ht=/^[0-9][0-9][0-9][0-9]-(0[1-9]|1[0-2])-[0-9][0-9]$/,Bt=/^[0-9][0-9][0-9][0-9]-M(0[1-9]|(1[0-2]))$/,se=t=>Ut.exec(t),ae=t=>!!se(t),Gt=t=>Qt.exec(t),oe=t=>!!Gt(t),ie=t=>Bt.exec(t),ce=t=>!!ie(t),ue=t=>qt.exec(t),de=t=>!!ue(t),Vt=t=>Ht.exec(t),Xt=t=>!!Vt(t),jt=t=>Ft.exec(t),le=t=>!!jt(t),Se=1440*60*1e3,Ce=7*Se;function Le(t){const e=`${t}-01-01`,n=new Date(e);if(n.getDay()!==4){const s=1+(4-n.getDay()+7)%7;n.setMonth(0,s)}return n}function da(t){const e=new Date(t),r=-((e.getDay()+6)%7)+3;return e.setDate(e.getDate()+r),new Date(e.valueOf())}function Pe(t,e="W"){const n=`${t}-12-31`,r=G(new Date(n),e);if(r.weekYear===t)return r.weekNumber;const s=`${t}-12-24`;return G(new Date(s),e).weekNumber}function We(t,e,n="W"){return`${t}-${n}${e<10?"0"+e:e}`}function G(t,e="W"){const n=da(t),r=n.getFullYear(),s=Le(r),a=1+Math.ceil((n.getTime()-s.getTime())/Ce);return{code:We(r,a,e),weekNumber:a,weekYear:r}}function Kt(t){const[e,n]=t.split("-W"),s=Le(+e).getTime()+(+n-1)*Ce-3*Se;return new Date(s)}function zt(t){const[e,n]=t.split("-W"),s=Le(+e).getTime()+(+n-1)*Ce+3*Se;return new Date(s)}function $e(t){return ae(t)?la(t):oe(t)?ma(t):de(t)?ga(t):ce(t)?ya(t):le(t)?Kt(t):Da(t)}function qe(t){return ae(t)?fa(t):oe(t)?ha(t):de(t)?wa(t):ce(t)?pa(t):le(t)?zt(t):ba(t)}function la(t){const e=se(t);if(e)return new Date(Number(e[0]),0,1)}function fa(t){const e=se(t);if(e)return new Date(Number(e[0])+1,0,1)}function ma(t){const[e,n]=t.split("-S");switch(+n){case 1:return new Date(+e,0,1);case 2:return new Date(+e,6,1)}}function ha(t){const[e,n]=t.split("-S");switch(+n){case 1:return new Date(+e,6,1);case 2:return new Date(+e+1,0,1)}}function ga(t){const e=ue(t);if(!e)return;const[n,r]=e[0].split("-Q");switch(+r){case 1:return new Date(+n,0,1);case 2:return new Date(+n,3,1);case 3:return new Date(+n,6,1);case 4:return new Date(+n,9,1)}}function wa(t){const e=ue(t);if(!e)return;const[n,r]=e[0].split("-Q");switch(+r){case 1:return new Date(+n,3,1);case 2:return new Date(+n,6,1);case 3:return new Date(+n,9,1);case 4:return new Date(+n+1,0,1)}}function ya(t){const e=ie(t);if(!e)return;const[n,r]=e[0].split("-M");return new Date(+n,+r-1,1)}function pa(t){const e=ie(t);if(!e)return;const[n,r]=e[0].split("-M");return new Date(+n,+r,1)}const Da=t=>new Date(`${t}T00:00:00`),ba=t=>{const e=new Date(`${t}T23:59:00`);return e.setMinutes(e.getMinutes()+1),e},Ta=1,Jt=(t,e,n,r=!0,s="Q")=>{const a=[],o=e&&e>3?Aa(e,r):1,i=n?Math.floor((n-1)/3):4;for(let c=o;c<=i;c++)a.push(`${t}-${s}${c}`);return a},Zt=(t,e,n,r="S")=>{const s=[];return(e||1)<7&&(n||12)>6&&s.push(`${t}-${r}1`),n==null&&s.push(`${t}-${r}2`),s},Ea=t=>Math.ceil(t/3),en=(t,e,n="M")=>`${t}-${n}${e.toString().padStart(2,"0")}`,xa=(t,e,n="M")=>{const r=[];for(let s=e;s<=12;s++)r.push(en(t,s,n));return r},Pa=(t,e,n,r="M")=>{const s=[];for(let a=e;a<n;a++)s.push(en(t,a,r));return s},tn=(t,e,n,r="M")=>{const s=e||1,a=n==null,o=n||12;return a?xa(t,s,r):Pa(t,s,o,r)},Ma=(t,e,n="M")=>{switch(e){case 0:return[`${t}-${n}01`,`${t}-${n}02`,`${t}-${n}03`];case 1:return[`${t}-${n}04`,`${t}-${n}05`,`${t}-${n}06`];case 2:return[`${t}-${n}07`,`${t}-${n}08`,`${t}-${n}09`];case 3:return[`${t}-${n}10`,`${t}-${n}11`,`${t}-${n}12`];default:return[]}},nn=(t,e)=>{const n=N(e,!0),r=N(t),s=n.getFullYear(),a=r.getFullYear(),o=n.getTime()<=r.getTime()?a+Ta-s:0;return Array.from({length:o},(c,u)=>s+u)},N=(t,e=!1)=>{const n=va(t,e);return n?(n.getTimezoneOffset()>0&&n.setMinutes(n.getMinutes()+n.getTimezoneOffset()),n):new Date},va=(t,e=!1)=>{const n=Number(t);return t.toString().length!==13?e?$e(t):qe(t):isNaN(n)?new Date(`${t}T00:00:00.000Z`):new Date(n)},Aa=(t,e)=>e?Math.floor((t+1)/3):Math.ceil((t+1)/3),Oa=(t,e)=>{const n=Ze(t)-Ze(e);if(n===0&&t!==e){const r=Je(t),s=Je(e);return r-s}return n},Je=t=>ae(t)?6:oe(t)?5:de(t)?4:ce(t)?3:le(t)?2:Xt(t)?1:0,Ze=(t,e=!1)=>(e?$e(t):qe(t))?.getTime()||0;var fe=(t=>(t.LAST_UPDATE_AT="lastUpdatedAt",t.SERIES_COUNT="series_count",t))(fe||{}),rn=(t=>(t.C="c",t))(rn||{}),_=(t=>(t.EQUALS="eq",t.NOT_EQUALS="ne",t.LESS="lt",t.LESS_OR_EQUAL="le",t.GREATER="gt",t.GREATER_OR_EQUAL="ge",t.CONTAINS="co",t.NOT_CONTAINS="nc",t.STARTS="sw",t.ENDS="ew",t))(_||{}),sn=(t=>(t.BOOLEAN="Boolean",t.DATE_TIME="DateTime",t.DECIMAL="Decimal",t.INTEGER="Integer",t.OBSERVATION_TIME_PERIOD="ObservationalTimePeriod",t.STRING="String",t.TIME="Time",t.TIME_RANGE="TimeRange",t.URI="URI",t))(sn||{}),an=(t=>(t.ANNUAL="A",t.QUARTERLY="Q",t.MONTHLY="M",t))(an||{});function Na(t){return t?.annotations?.find(e=>{if(e.id===fe.LAST_UPDATE_AT)return e})?.value}const me=(t,e)=>t?.names&&t?.names[e]||t?.name,on=(t,e,n)=>{if(!(!t||e?.has(t?.id))&&(e?.set(t?.id,t),t?.parent)){const r=n?.get(t?.parent);on(r,e,n)}},cn=(t,e)=>{const n=new Map,r=new Map(t?.map(s=>[s.id,s]));return e?.forEach(s=>{on(s,n,r)}),Array.from(n?.values())},_a=t=>{const e=t?.find(a=>a.id===_t),n=t?.find(a=>a.id===Rt),r=n?.title?new Date(n?.title):null;return{startPeriod:e?.title?new Date(e?.title):null,endPeriod:r}},Ra=(t,e)=>t.id.localeCompare(e.id),Ia=(t,e)=>t.memberValue.localeCompare(e.memberValue),ka=(t,e)=>{const n=new Array(t.length),r=t.map((o,i)=>[o,i]);r.sort((o,i)=>Ra(o[0],i[0]));const s=[...e];s.sort(Ia);let a=0;for(const o of r){const i=o[0];for(;a<s.length&&s[a].memberValue.localeCompare(i.id)<0;)a+=1;a<s.length&&s[a].memberValue===i.id&&(n[o[1]]=o[0])}return n.filter(o=>o!=null)},Ya=t=>!!t?.some(e=>e.parent),Sa=(t,e,n,r,s=[])=>{let a=t||[];if(Ca(n||[],e||"")){const o=(n||[])[0].cubeRegions?.find(({isIncluded:i})=>i);if(o){const i=o.memberSelection?.find(({componentId:c})=>c===e);i?a=a.length===0?(i.selectionValues||[]).map(({memberValue:c})=>({id:c,name:c})):ka(a,i.selectionValues):a=[]}}else s.length!==0&&(a=a.filter(({id:o})=>s.includes(o)));return Ya(t)&&(a=cn(t,a)),a?.map(o=>({...o,name:r?me(o,r):o?.name}))},Ca=(t,e)=>t!=null&&t.length>0&&e!=null,un=t=>{const e=[];return t?.filters?.forEach(n=>{n.componentCode!==Nt&&e.push({componentCode:n.componentCode,operator:_.EQUALS,value:n.values.join(",")})}),e},La=t=>{const e=new Map;return t?.forEach(n=>{e.set(n.urn,un(n))}),e},Wa=/^[v^~<>=]*?(\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+))?(?:-([\da-z\-]+(?:\.[\da-z\-]+)*))?(?:\+[\da-z\-]+(?:\.[\da-z\-]+)*)?)?)?$/i,et=t=>{if(typeof t!="string")throw new TypeError("Invalid argument expected string");const e=t.match(Wa);if(!e)throw new Error(`Invalid argument not valid semver ('${t}' received)`);return e.shift(),e},tt=t=>t==="*"||t==="x"||t==="X",nt=t=>{const e=parseInt(t,10);return isNaN(e)?t:e},$a=(t,e)=>typeof t!=typeof e?[String(t),String(e)]:[t,e],qa=(t,e)=>{if(tt(t)||tt(e))return 0;const[n,r]=$a(nt(t),nt(e));return n>r?1:n<r?-1:0},rt=(t,e)=>{for(let n=0;n<Math.max(t.length,e.length);n++){const r=qa(t[n]||"0",e[n]||"0");if(r!==0)return r}return 0},Fa=(t,e)=>{const n=et(t),r=et(e),s=n.pop(),a=r.pop(),o=rt(n,r);return o!==0?o:s&&a?rt(s.split("."),a.split(".")):s||a?s?-1:1:0},Qa=(t,e,n)=>{Ua(n);const r=Fa(t,e);return dn[n].includes(r)},dn={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]},st=Object.keys(dn),Ua=t=>{if(st.indexOf(t)===-1)throw new Error(`Invalid operator, expected one of ${st.join("|")}`)},te="+",he=(t,e)=>{const{agency:n,id:r,version:s}=L(t),a=e.filter(c=>c.agencyID===n&&c.id===r&&!c?.version?.includes(te));if(a.length===1)return a[0];if(!s?.includes(te))return a.find(c=>c.version===s);const o=a.map(c=>c.version),i=ln(s,o);return a.find(c=>c.version===i[0])},ln=(t,e)=>{const n=Ha(t,e);return n.length>0?[n[0]]:[]},Ha=(t,e)=>{const n=[];return e.forEach(r=>{mn(t,r)&&n.push(r)}),n},fn=t=>{const e=t.trim(),n=e.indexOf("+");if(n<=0)return"";let r=n;for(;r>0&&e[r-1]>="0"&&e[r-1]<="9";)r--;return r>0?e.slice(0,r):""},mn=(t,e)=>{const n=t.trim().replace(/\+/,""),r=fn(t);return e.startsWith(r)&&Qa(e,n,">=")},ge=(t,e)=>{const{concept:n}=hn(t,e);return n},hn=(t,e)=>{if(t==null)return{concept:void 0,scheme:void 0};const{childId:n,agency:r,id:s,version:a}=ot(t);if(a?.includes(te)){const o=he(t,e);return{concept:Me(o?.concepts||[],n),scheme:o}}for(const o of e)if(Ba(o,s,r,a))return{concept:Me(o?.concepts||[],n),scheme:o};return{concept:void 0,scheme:void 0}},Me=(t,e)=>t?.find(n=>n.id===e),Ba=(t,e,n,r)=>t.id===e&&t.agencyID===n&&t.version===r,Ga=(t=[],e=[],n)=>{const r=n?.conceptIdentity||"",s=ge(r,e),a=B(n?.localRepresentation?.enumeration),o=B(s?.coreRepresentation?.enumeration),i=a||o;if(i!=null)return he(i,t)},Va=(t,e,n,r)=>{const s=e?.find(a=>a?.id===t?.id)?.values;return n?.filter(a=>s?.some(o=>o.id===a.id))?.map(a=>({...a,name:r?me(a,r):a?.name}))||[]},gn=(t,e)=>{const n=e?.dataStructureComponents?.attributeList,r=t?.metadataStructureComponents?.metadataAttributeList;return n?.metadataAttributeUsages?.map(s=>{const a=r?.metadataAttributes?.find(o=>o?.id===s?.metadataAttributeReference);return{...a,attributeRelationship:s.attributeRelationship,isMandatory:Number(a?.minOccurs)>0}})},Xa=(t=[],e,n)=>{const r=B(e?.conceptIdentity)||"",s=ge(r,t);return n?me(s,n):s?.name??s?.id??e?.id};function ve(t){return t?.dataStructures?.[0]?.dataStructureComponents?.dimensionList}function ja(t){return t?.data?.structures?.[0]?.dimensions?.series||[]}function Ka(t){return t?.data?.structures?.[0]?.dimensions?.observation?.[0].values.map(e=>e.value).filter(e=>e!=null)||[]}function za(t){return t.find(e=>e.type===re.TIME_DIMENSION)}const Ja=t=>{const e=new Map,n=t?.dataStructures?.[0],r=t?.metadataStructures?.[0],s=t?.conceptSchemes||[],a=t?.codelists||[];return t&&[...ve(t)?.dimensions||[],...ve(t)?.timeDimensions||[],...gn(r,n),...n?.dataStructureComponents?.attributeList?.attributes||[]].forEach(i=>{const c=ge(i?.conceptIdentity,s),u=i?.localRepresentation?.enumeration||c?.coreRepresentation?.enumeration,d=he(u,a);i?.id&&(u?e.set(i?.id,{...d,name:c?.name,names:c?.names}):e.set(i?.id,{id:i?.id,name:c?.name,names:c?.names}))}),e},Za=t=>t?.find(e=>e.id===fe.SERIES_COUNT)?.title||"",eo="/api/download",to=(t,e,n,r,s,a,o)=>{const i=new URLSearchParams({urn:t,format:e,compress:"false",filename:a,filters:JSON.stringify(s),attribute:r,language:n,isMetadata:o?"true":"none"}).toString(),c=`${eo}?${i}`;window.open(c,"_blank")},no=(t,e)=>{const n=[];for(const r of t){if(r.type!==re.DIMENSION)continue;const s=e.find(a=>a.componentCode===r.id);s!=null&&s.values?.length>0?n.push(s.values?.join(mt)):n.push("*")}return n.join(".")},wn=(t,e)=>{if(!t||!t.startPeriod&&!t.endPeriod)return null;const n=[],{startPeriod:r,endPeriod:s}=t;if(r&&n.push(`${_.GREATER_OR_EQUAL}${Qe}${at(r)}`),s&&n.push(`${_.LESS_OR_EQUAL}${Qe}${at(s)}`),n.length===0)return null;const a=e;return n.map(o=>`${encodeURIComponent(`c[${a}]`)}${_n}${encodeURIComponent(o)}`).join(ft)},at=t=>Cr(t,"yyyy-MM-dd"),ro=(t,e)=>{const n=yn(t,e)||null;return n?wn(n,e?.id):null},yn=(t,e)=>{const n=e.id,r=t?.filters?.find(c=>c.componentCode===n);if(!r||!r.values)return null;const s=r.values?.filter(c=>!!c);if(!s.length)return null;const a=r.operator;if(a===_.LESS_OR_EQUAL||a===_.LESS)return{startPeriod:null,endPeriod:K(s[0])};if(a===_.GREATER_OR_EQUAL||a===_.GREATER)return{startPeriod:K(s[0]),endPeriod:null};const o=K(s[0]),i=K(s[1]);return{startPeriod:o,endPeriod:i}},Fe=(t,e,n)=>{const r=N(e,!0),s=N(n),a=N(t,!0),o=N(t),i=r.getTime()>a.getTime()?r:a,c=s.getTime()<o.getTime()?s:o;return{start:i,end:c}},pn=(t,e,n,r="W")=>{const s=+t,{start:a,end:o}=Fe(t,e,n);if(a.getTime()>o.getTime())return[];const i=G(a,r),c=i.weekYear===s?i.weekNumber:i.weekYear<s?1:Pe(s,r),u=G(o,r),d=u.weekYear===s?u.weekNumber:u.weekYear>s?Pe(s,r):1,l=[];if(c<d)for(let w=c;w<=d;w++)l.push(We(s,w,r));return l},so=t=>{const e=new Date(t);return e.setMinutes(e.getMinutes()-e.getTimezoneOffset()),e.toISOString().slice(0,10)},Dn=(t,e,n)=>{const{start:r,end:s}=Fe(t,e,n);if(r.getTime()>s.getTime())return[];const a=[],o=new Date(r.getFullYear(),r.getMonth(),r.getDate()),i=new Date(s.getFullYear(),s.getMonth(),s.getDate());for(;o.getTime()<i.getTime();){const c=so(o);a.push(c),o.setDate(o.getDate()+1)}return a},bn=t=>({isDailyExist:!!t?.some(({memberValue:e})=>e==="D"),isWeeklyExist:!!t?.some(({memberValue:e})=>e==="W"),isMonthlyExist:!!t?.some(({memberValue:e})=>e==="M"),isQuarterlyExist:!!t?.some(({memberValue:e})=>e==="Q"),isSemiAnnualExist:!!t?.some(({memberValue:e})=>e==="S"),isYearlyExist:!!t?.some(({memberValue:e})=>e==="A"||e==="Y")}),ao=(t,e,n,r)=>{const s=r===0?N(e.toString(),!0)?.getMonth()+1:void 0,a=r===t.length-1?N(n.toString())?.getMonth()+1||1:void 0;return{startMonth:s,endMonth:a}},Tn=["FREQUENCY","FREQ"],oo=(t,e)=>{const n=t?.[0]?.cubeRegions?.[0]?.memberSelection?.find(c=>Tn.includes(c.componentId))?.selectionValues,r=bn(n||[]),s=e?.startPeriod?.getTime()||1,a=e?.endPeriod?.getTime()||1,o=nn(a,s),i=[];return o.forEach((c,u)=>{const d=[],{startMonth:l,endMonth:w}=ao(o,new Date(s),new Date(a),u),{isDailyExist:x,isWeeklyExist:P,isMonthlyExist:Y,isQuarterlyExist:f,isSemiAnnualExist:g,isYearlyExist:M}=r;M&&d.push(c.toString()),g&&d.push(...Zt(c,l,w)),f&&d.push(...Jt(c,l,w,!1)),Y&&d.push(...tn(c,l,w)),P&&d.push(...pn(c,s.toString(),a.toString())),x&&d.push(...Dn(c,s.toString(),a.toString())),i.push(...d)}),i};function io(t){const{urn:e}=t.details;return it(e.resourceId,e.version,e.agencyId)}function co(t){const e={};for(const n of t.datasets){const r=n.dataset,s=io(r);e[s]=r.details.dimensions}return e}exports.Annotations=fe;exports.AssignmentStatus=It;exports.AvailabilityApi=On;exports.DATASET_DATA_URL=lt;exports.DatasetApi=kn;exports.DimensionType=re;exports.DownloadType=ut;exports.FREQUENCY_DIMENSION_ID=ra;exports.FREQUENCY_DIM_ID=Tn;exports.FileColumnsAttribute=ct;exports.GET_v3_FILTER_ALL=ht;exports.GET_v3_FILTER_AND=Rn;exports.GET_v3_FILTER_OR=mt;exports.OBSERVATION_KEY=Ct;exports.OccurrenceType=kt;exports.Periods=an;exports.RepresentationTextType=sn;exports.SDMX_DATA_QUERY_PARAMS=rn;exports.SINGLE_WILDCARD_SYMBOL=te;exports.SdmxApiClient=na;exports.SdmxAvailabilityMode=Ae;exports.SdmxDataFormat=H;exports.SdmxDetails=Oe;exports.SdmxReferences=ne;exports.SeriesFilterOperator=_;exports.TIME_PERIOD=Nt;exports.TIME_PERIOD_END_ANNOTATION_KEY=Rt;exports.TIME_PERIOD_START_ANNOTATION_KEY=_t;exports.buildDatasetDimensionsMetadataMap=co;exports.dailyPattern=Ht;exports.decodeDimensionId=$t;exports.findCodelistByDimension=Ga;exports.generateDatasetDataRequest=De;exports.generateShortUrn=it;exports.getAdditionalColumns=oo;exports.getAnnotationPeriod=_a;exports.getArtifactByUrnWithWildCard=he;exports.getAttachedDimensionsSeriesByDimension=sa;exports.getAttachedDimensionsSeriesByTsId=Yt;exports.getAttachedDimensionsSeriesKey=Ye;exports.getAttributeValueFromDataQueryResponse=St;exports.getAvailableCodes=Va;exports.getAvailableCodesFromConstrains=Sa;exports.getChildParsedUrn=ot;exports.getConcept=ge;exports.getConceptByUrn=Me;exports.getConceptWithScheme=hn;exports.getConvertedMetaAttributes=gn;exports.getDailyRegExp=Vt;exports.getDaysColumns=Dn;exports.getDimensionTitle=Xa;exports.getDimensions=ve;exports.getFilteredItemsWithParents=cn;exports.getFiltersDtoFromDataQuery=un;exports.getFiltersDtoMapFromDataQuery=La;exports.getISOWeek=G;exports.getKeyFromUrn=B;exports.getLastUpdatedTime=Na;exports.getLastWeekNumberOfYear=Pe;exports.getLocalizedName=me;exports.getMonthlyData=tn;exports.getMonthlyDataByQuarter=Ma;exports.getMonthlyRegExp=ie;exports.getParsedEndPeriodDate=qe;exports.getParsedResponse=aa;exports.getParsedStartPeriodDate=$e;exports.getPeriodDate=N;exports.getPeriods=bn;exports.getQuarterByMonth=Ea;exports.getQuarterlyRegExp=ue;exports.getQuartersData=Jt;exports.getQueryTimePeriodFilters=wn;exports.getRequestAcceptHeader=dt;exports.getResolvedVersionBySingleWildcard=ln;exports.getSemiAnnualData=Zt;exports.getSemiAnnuallyRegExp=Gt;exports.getSeriesAttributes=ee;exports.getSeriesName=Lt;exports.getStructureComponentsMap=Ja;exports.getStructureDimensions=ja;exports.getTimeDimension=za;exports.getTimePeriods=Ka;exports.getTimeQueryFilter=ro;exports.getTimeRangeFromAttachment=yn;exports.getTimeSeriesCount=Za;exports.getTimeSeriesFilterKey=no;exports.getTimeSeriesId=Wt;exports.getWeekCode=We;exports.getWeeklyPeriodEndDate=zt;exports.getWeeklyPeriodStartDate=Kt;exports.getWeeklyRegExp=jt;exports.getWeeksColumns=pn;exports.getWildCardPrefix=fn;exports.getYearPeriod=Fe;exports.getYearlyRegExp=se;exports.getYears=nn;exports.isDaily=Xt;exports.isMonthly=ce;exports.isQuarterly=de;exports.isSemiAnnually=oe;exports.isWeekly=le;exports.isWildCardVersionCorrect=mn;exports.isYearly=ae;exports.monthlyPattern=Bt;exports.openDownloadWindow=to;exports.quarterPattern=qt;exports.semiAnnuallyPattern=Qt;exports.sortPeriods=Oa;exports.splitUrn=L;exports.weeklyPattern=Ft;exports.yearlyPattern=Ut;
package/index.mjs CHANGED
@@ -56,7 +56,7 @@ function kt(t) {
56
56
  memberValue: t.value
57
57
  };
58
58
  }
59
- const Rt = (t = "", e = "", n = "") => `sdmx/3.0/availability/dataflow/${t}/${e}/${n}`;
59
+ const _t = (t = "", e = "", n = "") => `sdmx/3.0/availability/dataflow/${t}/${e}/${n}`;
60
60
  class La {
61
61
  constructor(e) {
62
62
  this.client = e;
@@ -66,7 +66,7 @@ class La {
66
66
  filters: n || [],
67
67
  mode: Ze.AVAILABLE,
68
68
  references: ue.NONE
69
- }, i = Rt(r, s, a);
69
+ }, i = _t(r, s, a);
70
70
  if (this.client.config.sdmxProxyUrl) {
71
71
  const c = await this.client.postRequest(
72
72
  i,
@@ -82,7 +82,7 @@ class La {
82
82
  );
83
83
  }
84
84
  }
85
- var X = /* @__PURE__ */ ((t) => (t.CSV = "csv", t.JSON = "json", t.XML = "xml", t))(X || {}), _t = /* @__PURE__ */ ((t) => (t.ID = "id", t.NAME = "name", t.ID_NAME = "both", t))(_t || {}), It = /* @__PURE__ */ ((t) => (t.FULL_DATASET = "full", t.DATA_IN_TABLE = "query", t))(It || {});
85
+ var X = /* @__PURE__ */ ((t) => (t.CSV = "csv", t.JSON = "json", t.XML = "xml", t))(X || {}), Rt = /* @__PURE__ */ ((t) => (t.ID = "id", t.NAME = "name", t.ID_NAME = "both", t))(Rt || {}), It = /* @__PURE__ */ ((t) => (t.FULL_DATASET = "full", t.DATA_IN_TABLE = "query", t))(It || {});
86
86
  const Yt = (t, e) => {
87
87
  switch (t) {
88
88
  case X.CSV:
@@ -105,7 +105,7 @@ const Yt = (t, e) => {
105
105
  }
106
106
  }, B = (t, e) => `${t}; labels=${e}`;
107
107
  var et = /* @__PURE__ */ ((t) => (t.REFERENCE_PARTIAL = "referencepartial", t.FULL = "full", t))(et || {});
108
- const Ct = "all", Lt = "sdmx/3.0/data/dataflow", tt = "&", Re = ":", St = "=", Wt = "+", Sa = ",", $t = "*", _e = (t, e, n) => {
108
+ const Ct = "all", Lt = "sdmx/3.0/data/dataflow", tt = "&", _e = ":", St = "=", Wt = "+", Sa = ",", $t = "*", Re = (t, e, n) => {
109
109
  const { filterKey: r, timeFilter: s } = n, { agency: a, id: o, version: i } = H(t), c = [s || "", e].filter((d) => !!d).join(tt);
110
110
  return `${`${Lt}/${a}/${o}/${i}`}/${r || $t}?${c}`;
111
111
  }, qt = (t = "", e = "", n = "", r = ue.DESCENDANTS) => `sdmx/3.0/structure/dataflow/${t}/${e}/${n}?references=${r}&detail=${et.REFERENCE_PARTIAL}`;
@@ -126,7 +126,7 @@ class Wa {
126
126
  attributes: Ct,
127
127
  dimensionAtObservation: "TIME_PERIOD"
128
128
  // TODO: use time dimensions
129
- }).toString(), s = _e(e, r, n);
129
+ }).toString(), s = Re(e, r, n);
130
130
  return await this.client.getRequest(s);
131
131
  }
132
132
  async downloadDataSet(e, n, r, s, a, o, i = !1) {
@@ -135,7 +135,7 @@ class Wa {
135
135
  compress: "false",
136
136
  attributes: i ? "all" : "none",
137
137
  limit: "1000"
138
- }).toString(), u = _e(e, c, a);
138
+ }).toString(), u = Re(e, c, a);
139
139
  return this.client.streamRequest(
140
140
  u,
141
141
  {
@@ -170,12 +170,12 @@ let Vt = {};
170
170
  function S() {
171
171
  return Vt;
172
172
  }
173
- function _(t, e) {
173
+ function R(t, e) {
174
174
  const n = S(), r = e?.weekStartsOn ?? e?.locale?.options?.weekStartsOn ?? n.weekStartsOn ?? n.locale?.options?.weekStartsOn ?? 0, s = y(t, e?.in), a = s.getDay(), o = (a < r ? 7 : 0) + a - r;
175
175
  return s.setDate(s.getDate() - o), s.setHours(0, 0, 0, 0), s;
176
176
  }
177
177
  function L(t, e) {
178
- return _(t, { ...e, weekStartsOn: 1 });
178
+ return R(t, { ...e, weekStartsOn: 1 });
179
179
  }
180
180
  function st(t, e) {
181
181
  const n = y(t, e?.in), r = n.getFullYear(), s = E(n, 0);
@@ -614,7 +614,7 @@ const bn = /^(\d+)(th|st|nd|rd)?/i, Dn = /\d+/i, Tn = {
614
614
  evening: /evening/i,
615
615
  night: /night/i
616
616
  }
617
- }, Rn = {
617
+ }, _n = {
618
618
  ordinalNumber: yn({
619
619
  matchPattern: bn,
620
620
  parsePattern: Dn,
@@ -657,13 +657,13 @@ const bn = /^(\d+)(th|st|nd|rd)?/i, Dn = /\d+/i, Tn = {
657
657
  formatLong: sn,
658
658
  formatRelative: on,
659
659
  localize: wn,
660
- match: Rn,
660
+ match: _n,
661
661
  options: {
662
662
  weekStartsOn: 0,
663
663
  firstWeekContainsDate: 1
664
664
  }
665
665
  };
666
- function _n(t, e) {
666
+ function Rn(t, e) {
667
667
  const n = y(t, e?.in);
668
668
  return jt(n, Jt(n)) + 1;
669
669
  }
@@ -674,17 +674,17 @@ function ot(t, e) {
674
674
  function fe(t, e) {
675
675
  const n = y(t, e?.in), r = n.getFullYear(), s = S(), a = e?.firstWeekContainsDate ?? e?.locale?.options?.firstWeekContainsDate ?? s.firstWeekContainsDate ?? s.locale?.options?.firstWeekContainsDate ?? 1, o = E(e?.in || t, 0);
676
676
  o.setFullYear(r + 1, 0, a), o.setHours(0, 0, 0, 0);
677
- const i = _(o, e), c = E(e?.in || t, 0);
677
+ const i = R(o, e), c = E(e?.in || t, 0);
678
678
  c.setFullYear(r, 0, a), c.setHours(0, 0, 0, 0);
679
- const u = _(c, e);
679
+ const u = R(c, e);
680
680
  return +n >= +i ? r + 1 : +n >= +u ? r : r - 1;
681
681
  }
682
682
  function In(t, e) {
683
683
  const n = S(), r = e?.firstWeekContainsDate ?? e?.locale?.options?.firstWeekContainsDate ?? n.firstWeekContainsDate ?? n.locale?.options?.firstWeekContainsDate ?? 1, s = fe(t, e), a = E(e?.in || t, 0);
684
- return a.setFullYear(s, 0, r), a.setHours(0, 0, 0, 0), _(a, e);
684
+ return a.setFullYear(s, 0, r), a.setHours(0, 0, 0, 0), R(a, e);
685
685
  }
686
686
  function it(t, e) {
687
- const n = y(t, e?.in), r = +_(n, e) - +In(n, e);
687
+ const n = y(t, e?.in), r = +R(n, e) - +In(n, e);
688
688
  return Math.round(r / nt) + 1;
689
689
  }
690
690
  function h(t, e) {
@@ -938,7 +938,7 @@ const N = {
938
938
  },
939
939
  // Day of year
940
940
  D: function(t, e, n) {
941
- const r = _n(t);
941
+ const r = Rn(t);
942
942
  return e === "Do" ? n.ordinalNumber(r, { unit: "dayOfYear" }) : h(r, e.length);
943
943
  },
944
944
  // Day of week
@@ -1677,10 +1677,10 @@ class tr extends m {
1677
1677
  i,
1678
1678
  0,
1679
1679
  s.firstWeekContainsDate
1680
- ), e.setHours(0, 0, 0, 0), _(e, s);
1680
+ ), e.setHours(0, 0, 0, 0), R(e, s);
1681
1681
  }
1682
1682
  const o = !("era" in n) || n.era === 1 ? r.year : 1 - r.year;
1683
- return e.setFullYear(o, 0, s.firstWeekContainsDate), e.setHours(0, 0, 0, 0), _(e, s);
1683
+ return e.setFullYear(o, 0, s.firstWeekContainsDate), e.setHours(0, 0, 0, 0), R(e, s);
1684
1684
  }
1685
1685
  incompatibleTokens = [
1686
1686
  "y",
@@ -2005,7 +2005,7 @@ class ur extends m {
2005
2005
  return n >= 1 && n <= 53;
2006
2006
  }
2007
2007
  set(e, n, r, s) {
2008
- return _(cr(e, r, s), s);
2008
+ return R(cr(e, r, s), s);
2009
2009
  }
2010
2010
  incompatibleTokens = [
2011
2011
  "y",
@@ -2661,7 +2661,7 @@ class kr extends m {
2661
2661
  }
2662
2662
  incompatibleTokens = ["t", "T"];
2663
2663
  }
2664
- class Rr extends m {
2664
+ class _r extends m {
2665
2665
  priority = 10;
2666
2666
  parse(e, n) {
2667
2667
  switch (n) {
@@ -2694,7 +2694,7 @@ class Rr extends m {
2694
2694
  }
2695
2695
  incompatibleTokens = ["t", "T", "x"];
2696
2696
  }
2697
- class _r extends m {
2697
+ class Rr extends m {
2698
2698
  priority = 10;
2699
2699
  parse(e, n) {
2700
2700
  switch (n) {
@@ -2775,8 +2775,8 @@ const Cr = {
2775
2775
  m: new Ar(),
2776
2776
  s: new Nr(),
2777
2777
  S: new kr(),
2778
- X: new Rr(),
2779
- x: new _r(),
2778
+ X: new _r(),
2779
+ x: new Rr(),
2780
2780
  t: new Ir(),
2781
2781
  T: new Yr()
2782
2782
  }, Lr = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g, Sr = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g, Wr = /^'([^]*?)'?$/, $r = /''/g, qr = /\S/, Qr = /[a-zA-Z]/;
@@ -3398,7 +3398,7 @@ const ws = (t, e) => {
3398
3398
  name: e.id,
3399
3399
  value: s || ""
3400
3400
  });
3401
- }, Ms = /^[0-9][0-9][0-9][0-9]-Q[1-4]$/, vs = /^[0-9][0-9][0-9][0-9]-W(0[1-9]|[1-4][0-9]|5[0-3])$/, Os = /^[0-9][0-9][0-9][0-9]-S[1-2]$/, As = /^[0-9][0-9][0-9][0-9]$/, Ns = /^[0-9][0-9][0-9][0-9]-(0[1-9]|1[0-2])-[0-9][0-9]$/, ks = /^[0-9][0-9][0-9][0-9]-M(0[1-9]|(1[0-2]))$/, ge = (t) => As.exec(t), pe = (t) => !!ge(t), Rs = (t) => Os.exec(t), ye = (t) => !!Rs(t), be = (t) => ks.exec(t), De = (t) => !!be(t), Te = (t) => Ms.exec(t), Ee = (t) => !!Te(t), _s = (t) => Ns.exec(t), Is = (t) => !!_s(t), Ys = (t) => vs.exec(t), xe = (t) => !!Ys(t), Pe = 1440 * 60 * 1e3, Me = 7 * Pe;
3401
+ }, Ms = /^[0-9][0-9][0-9][0-9]-Q[1-4]$/, vs = /^[0-9][0-9][0-9][0-9]-W(0[1-9]|[1-4][0-9]|5[0-3])$/, Os = /^[0-9][0-9][0-9][0-9]-S[1-2]$/, As = /^[0-9][0-9][0-9][0-9]$/, Ns = /^[0-9][0-9][0-9][0-9]-(0[1-9]|1[0-2])-[0-9][0-9]$/, ks = /^[0-9][0-9][0-9][0-9]-M(0[1-9]|(1[0-2]))$/, ge = (t) => As.exec(t), pe = (t) => !!ge(t), _s = (t) => Os.exec(t), ye = (t) => !!_s(t), be = (t) => ks.exec(t), De = (t) => !!be(t), Te = (t) => Ms.exec(t), Ee = (t) => !!Te(t), Rs = (t) => Ns.exec(t), Is = (t) => !!Rs(t), Ys = (t) => vs.exec(t), xe = (t) => !!Ys(t), Pe = 1440 * 60 * 1e3, Me = 7 * Pe;
3402
3402
  function ve(t) {
3403
3403
  const e = `${t}-01-01`, n = new Date(e);
3404
3404
  if (n.getDay() !== 4) {
@@ -3589,7 +3589,7 @@ const Gs = (t) => /* @__PURE__ */ new Date(`${t}T00:00:00`), Vs = (t) => {
3589
3589
  }
3590
3590
  return n;
3591
3591
  }, He = (t) => pe(t) ? 6 : ye(t) ? 5 : Ee(t) ? 4 : De(t) ? 3 : xe(t) ? 2 : Is(t) ? 1 : 0, Ue = (t, e = !1) => (e ? yt(t) : bt(t))?.getTime() || 0;
3592
- var Oe = /* @__PURE__ */ ((t) => (t.LAST_UPDATE_AT = "lastUpdatedAt", t.SERIES_COUNT = "series_count", t))(Oe || {}), ra = /* @__PURE__ */ ((t) => (t.C = "c", t))(ra || {}), R = /* @__PURE__ */ ((t) => (t.EQUALS = "eq", t.NOT_EQUALS = "ne", t.LESS = "lt", t.LESS_OR_EQUAL = "le", t.GREATER = "gt", t.GREATER_OR_EQUAL = "ge", t.CONTAINS = "co", t.NOT_CONTAINS = "nc", t.STARTS = "sw", t.ENDS = "ew", t))(R || {}), sa = /* @__PURE__ */ ((t) => (t.BOOLEAN = "Boolean", t.DATE_TIME = "DateTime", t.DECIMAL = "Decimal", t.INTEGER = "Integer", t.OBSERVATION_TIME_PERIOD = "ObservationalTimePeriod", t.STRING = "String", t.TIME = "Time", t.TIME_RANGE = "TimeRange", t.URI = "URI", t))(sa || {}), aa = /* @__PURE__ */ ((t) => (t.ANNUAL = "A", t.QUARTERLY = "Q", t.MONTHLY = "M", t))(aa || {});
3592
+ var Oe = /* @__PURE__ */ ((t) => (t.LAST_UPDATE_AT = "lastUpdatedAt", t.SERIES_COUNT = "series_count", t))(Oe || {}), ra = /* @__PURE__ */ ((t) => (t.C = "c", t))(ra || {}), _ = /* @__PURE__ */ ((t) => (t.EQUALS = "eq", t.NOT_EQUALS = "ne", t.LESS = "lt", t.LESS_OR_EQUAL = "le", t.GREATER = "gt", t.GREATER_OR_EQUAL = "ge", t.CONTAINS = "co", t.NOT_CONTAINS = "nc", t.STARTS = "sw", t.ENDS = "ew", t))(_ || {}), sa = /* @__PURE__ */ ((t) => (t.BOOLEAN = "Boolean", t.DATE_TIME = "DateTime", t.DECIMAL = "Decimal", t.INTEGER = "Integer", t.OBSERVATION_TIME_PERIOD = "ObservationalTimePeriod", t.STRING = "String", t.TIME = "Time", t.TIME_RANGE = "TimeRange", t.URI = "URI", t))(sa || {}), aa = /* @__PURE__ */ ((t) => (t.ANNUAL = "A", t.QUARTERLY = "Q", t.MONTHLY = "M", t))(aa || {});
3593
3593
  function Ga(t) {
3594
3594
  return t?.annotations?.find((e) => {
3595
3595
  if (e.id === Oe.LAST_UPDATE_AT)
@@ -3656,7 +3656,7 @@ const Ae = (t, e) => t?.names && t?.names[e] || t?.name, Tt = (t, e, n) => {
3656
3656
  return t?.filters?.forEach((n) => {
3657
3657
  n.componentCode !== ds && e.push({
3658
3658
  componentCode: n.componentCode,
3659
- operator: R.EQUALS,
3659
+ operator: _.EQUALS,
3660
3660
  value: n.values.join(",")
3661
3661
  });
3662
3662
  }), e;
@@ -3727,11 +3727,15 @@ const Ae = (t, e) => t?.names && t?.names[e] || t?.name, Tt = (t, e, n) => {
3727
3727
  Ea(t, r) && n.push(r);
3728
3728
  }), n;
3729
3729
  }, Ta = (t) => {
3730
- const e = t.trim().replace(/\d+\+/, "*"), [n] = e.split("*");
3731
- return new RegExp(`^${n}`);
3730
+ const e = t.trim(), n = e.indexOf("+");
3731
+ if (n <= 0) return "";
3732
+ let r = n;
3733
+ for (; r > 0 && e[r - 1] >= "0" && e[r - 1] <= "9"; )
3734
+ r--;
3735
+ return r > 0 ? e.slice(0, r) : "";
3732
3736
  }, Ea = (t, e) => {
3733
- const n = t.trim().replace(/\+/, "");
3734
- return Ta(t).test(e) && pa(e, n, ">=");
3737
+ const n = t.trim().replace(/\+/, ""), r = Ta(t);
3738
+ return e.startsWith(r) && pa(e, n, ">=");
3735
3739
  }, ke = (t, e) => {
3736
3740
  const { concept: n } = xa(t, e);
3737
3741
  return n;
@@ -3863,9 +3867,9 @@ const no = (t) => {
3863
3867
  return null;
3864
3868
  const n = [], { startPeriod: r, endPeriod: s } = t;
3865
3869
  if (r && n.push(
3866
- `${R.GREATER_OR_EQUAL}${Re}${Je(r)}`
3870
+ `${_.GREATER_OR_EQUAL}${_e}${Je(r)}`
3867
3871
  ), s && n.push(
3868
- `${R.LESS_OR_EQUAL}${Re}${Je(s)}`
3872
+ `${_.LESS_OR_EQUAL}${_e}${Je(s)}`
3869
3873
  ), n.length === 0)
3870
3874
  return null;
3871
3875
  const a = e;
@@ -3885,9 +3889,9 @@ const no = (t) => {
3885
3889
  if (!s.length)
3886
3890
  return null;
3887
3891
  const a = r.operator;
3888
- if (a === R.LESS_OR_EQUAL || a === R.LESS)
3892
+ if (a === _.LESS_OR_EQUAL || a === _.LESS)
3889
3893
  return { startPeriod: null, endPeriod: V(s[0]) };
3890
- if (a === R.GREATER_OR_EQUAL || a === R.GREATER)
3894
+ if (a === _.GREATER_OR_EQUAL || a === _.GREATER)
3891
3895
  return { startPeriod: V(s[0]), endPeriod: null };
3892
3896
  const o = V(s[0]), i = V(s[1]);
3893
3897
  return { startPeriod: o, endPeriod: i };
@@ -3909,7 +3913,7 @@ const no = (t) => {
3909
3913
  }, ka = (t) => {
3910
3914
  const e = new Date(t);
3911
3915
  return e.setMinutes(e.getMinutes() - e.getTimezoneOffset()), e.toISOString().slice(0, 10);
3912
- }, Ra = (t, e, n) => {
3916
+ }, _a = (t, e, n) => {
3913
3917
  const { start: r, end: s } = xt(t, e, n);
3914
3918
  if (r.getTime() > s.getTime())
3915
3919
  return [];
@@ -3923,7 +3927,7 @@ const no = (t) => {
3923
3927
  a.push(c), o.setDate(o.getDate() + 1);
3924
3928
  }
3925
3929
  return a;
3926
- }, _a = (t) => ({
3930
+ }, Ra = (t) => ({
3927
3931
  isDailyExist: !!t?.some(({ memberValue: e }) => e === "D"),
3928
3932
  isWeeklyExist: !!t?.some(({ memberValue: e }) => e === "W"),
3929
3933
  isMonthlyExist: !!t?.some(({ memberValue: e }) => e === "M"),
@@ -3938,7 +3942,7 @@ const no = (t) => {
3938
3942
  }, Ya = ["FREQUENCY", "FREQ"], io = (t, e) => {
3939
3943
  const n = t?.[0]?.cubeRegions?.[0]?.memberSelection?.find(
3940
3944
  (c) => Ya.includes(c.componentId)
3941
- )?.selectionValues, r = _a(n || []), s = e?.startPeriod?.getTime() || 1, a = e?.endPeriod?.getTime() || 1, o = ea(a, s), i = [];
3945
+ )?.selectionValues, r = Ra(n || []), s = e?.startPeriod?.getTime() || 1, a = e?.endPeriod?.getTime() || 1, o = ea(a, s), i = [];
3942
3946
  return o.forEach((c, u) => {
3943
3947
  const d = [], { startMonth: l, endMonth: g } = Ia(
3944
3948
  o,
@@ -3958,7 +3962,7 @@ const no = (t) => {
3958
3962
  ), Y && d.push(...Zs(c, l, g)), P && d.push(
3959
3963
  ...Na(c, s.toString(), a.toString())
3960
3964
  ), x && d.push(
3961
- ...Ra(c, s.toString(), a.toString())
3965
+ ..._a(c, s.toString(), a.toString())
3962
3966
  ), i.push(...d);
3963
3967
  }), i;
3964
3968
  };
@@ -3984,7 +3988,7 @@ export {
3984
3988
  It as DownloadType,
3985
3989
  qa as FREQUENCY_DIMENSION_ID,
3986
3990
  Ya as FREQUENCY_DIM_ID,
3987
- _t as FileColumnsAttribute,
3991
+ Rt as FileColumnsAttribute,
3988
3992
  $t as GET_v3_FILTER_ALL,
3989
3993
  Sa as GET_v3_FILTER_AND,
3990
3994
  Wt as GET_v3_FILTER_OR,
@@ -3999,7 +4003,7 @@ export {
3999
4003
  X as SdmxDataFormat,
4000
4004
  et as SdmxDetails,
4001
4005
  ue as SdmxReferences,
4002
- R as SeriesFilterOperator,
4006
+ _ as SeriesFilterOperator,
4003
4007
  ds as TIME_PERIOD,
4004
4008
  fs as TIME_PERIOD_END_ANNOTATION_KEY,
4005
4009
  ls as TIME_PERIOD_START_ANNOTATION_KEY,
@@ -4007,7 +4011,7 @@ export {
4007
4011
  Ns as dailyPattern,
4008
4012
  Ts as decodeDimensionId,
4009
4013
  Ka as findCodelistByDimension,
4010
- _e as generateDatasetDataRequest,
4014
+ Re as generateDatasetDataRequest,
4011
4015
  Mt as generateShortUrn,
4012
4016
  io as getAdditionalColumns,
4013
4017
  Va as getAnnotationPeriod,
@@ -4023,8 +4027,8 @@ export {
4023
4027
  Ke as getConceptByUrn,
4024
4028
  xa as getConceptWithScheme,
4025
4029
  Ma as getConvertedMetaAttributes,
4026
- _s as getDailyRegExp,
4027
- Ra as getDaysColumns,
4030
+ Rs as getDailyRegExp,
4031
+ _a as getDaysColumns,
4028
4032
  Ja as getDimensionTitle,
4029
4033
  ze as getDimensions,
4030
4034
  oa as getFilteredItemsWithParents,
@@ -4042,7 +4046,7 @@ export {
4042
4046
  Fa as getParsedResponse,
4043
4047
  yt as getParsedStartPeriodDate,
4044
4048
  k as getPeriodDate,
4045
- _a as getPeriods,
4049
+ Ra as getPeriods,
4046
4050
  Ha as getQuarterByMonth,
4047
4051
  Te as getQuarterlyRegExp,
4048
4052
  js as getQuartersData,
@@ -4050,7 +4054,7 @@ export {
4050
4054
  Yt as getRequestAcceptHeader,
4051
4055
  ba as getResolvedVersionBySingleWildcard,
4052
4056
  Ks as getSemiAnnualData,
4053
- Rs as getSemiAnnuallyRegExp,
4057
+ _s as getSemiAnnuallyRegExp,
4054
4058
  ie as getSeriesAttributes,
4055
4059
  ys as getSeriesName,
4056
4060
  no as getStructureComponentsMap,
@@ -4067,7 +4071,7 @@ export {
4067
4071
  Ls as getWeeklyPeriodStartDate,
4068
4072
  Ys as getWeeklyRegExp,
4069
4073
  Na as getWeeksColumns,
4070
- Ta as getWildCardRegexp,
4074
+ Ta as getWildCardPrefix,
4071
4075
  xt as getYearPeriod,
4072
4076
  ge as getYearlyRegExp,
4073
4077
  ea as getYears,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epam/statgpt-sdmx-toolkit",
3
- "version": "0.4.0-rc.26",
3
+ "version": "0.4.0-rc.28",
4
4
  "license": "MIT",
5
5
  "exports": {
6
6
  ".": {
@@ -14,8 +14,8 @@
14
14
  "module": "./index.mjs",
15
15
  "types": "./index.d.ts",
16
16
  "dependencies": {
17
- "@epam/statgpt-dial-toolkit": "0.4.0-rc.26",
18
- "@epam/statgpt-shared-toolkit": "0.4.0-rc.26",
17
+ "@epam/statgpt-dial-toolkit": "0.4.0-rc.28",
18
+ "@epam/statgpt-shared-toolkit": "0.4.0-rc.28",
19
19
  "compare-versions": "^6.1.1",
20
20
  "date-fns": "^4.1.0"
21
21
  }
@@ -2,5 +2,5 @@ import { CommonArtefactProperty } from '../models/structural-metadata/common-art
2
2
  export declare const SINGLE_WILDCARD_SYMBOL = "+";
3
3
  export declare const getArtifactByUrnWithWildCard: (urn: string | undefined, artifacts: CommonArtefactProperty[]) => CommonArtefactProperty | undefined;
4
4
  export declare const getResolvedVersionBySingleWildcard: (wildcard: string, versions: string[]) => string[];
5
- export declare const getWildCardRegexp: (wildcard: string) => RegExp;
5
+ export declare const getWildCardPrefix: (wildcard: string) => string;
6
6
  export declare const isWildCardVersionCorrect: (wildcard: string, version: string) => boolean;