@epam/statgpt-sdmx-toolkit 0.3.0-rc.6 → 0.3.0-rc.8

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.
@@ -1,3 +1,4 @@
1
1
  export * from './dataset-data-url';
2
2
  export * from './frequency-dimension';
3
3
  export * from './filter-operators';
4
+ export * from './time-period';
@@ -0,0 +1,3 @@
1
+ export declare const TIME_PERIOD = "TIME_PERIOD";
2
+ export declare const TIME_PERIOD_START_ANNOTATION_KEY = "time_period_start";
3
+ export declare const TIME_PERIOD_END_ANNOTATION_KEY = "time_period_end";
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 Rn="all",lt="sdmx/3.0/data/dataflow",ft="&",Qe=":",Nn="=",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}`},kn=(t="",e="",n="",r=ne.DESCENDANTS)=>`sdmx/3.0/structure/dataflow/${t}/${e}/${n}?references=${r}&detail=${Oe.REFERENCE_PARTIAL}`;class In{constructor(e){this.client=e}async getDataSet(e,n){const{agency:r,id:s,version:a}=L(e);return await this.client.getRequest(kn(r,s,a,n))}async getDatasetData(e,n){const r=new URLSearchParams({includeHistory:"false",limit:"1000",attributes:Rn,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 Sn=(t,e)=>t.error||t.message||`${e.status} ${e.statusText}`,Yn="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,Re=6e4,Ne=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 k(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 k(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=k(o,e),c=E(e?.in||t,0);c.setFullYear(r,0,a),c.setHours(0,0,0,0);const u=k(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),k(a,e)}function bt(t,e){const n=p(t,e?.in),r=+k(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)}},Y={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=Y.noon:r===0?s=Y.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=Y.evening:r>=12?s=Y.afternoon:r>=4?s=Y.morning:s=Y.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 I(r);default:return I(r,":")}},x:function(t,e,n){const r=t.getTimezoneOffset();switch(e){case"x":return Xe(r);case"xxxx":case"xx":return I(r);default:return I(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"+I(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"+I(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):I(t,e)}function I(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+$/,Rr=["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=Nr(t,e,n);if(console.warn(r),Rr.includes(t))throw new RangeError(r)}function Nr(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,kr=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Ir=/^'([^]*?)'?$/,Sr=/''/g,Yr=/[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(kr).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(Yr))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(Ir);return e?e[1].replace(Sr,"'"):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*Ne+a*Re+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 ke(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),k(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),k(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 k(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 Ie(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=Ie(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=Ie(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=Ie(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(ke(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(ke(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(ke(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,Rs=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Ns=/^'([^]*?)'?$/,_s=/''/g,ks=/\S/,Is=/[a-zA-Z]/;function Ss(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(Rs).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(Is))throw new RangeError("Format string contains an unescaped latin alphabet character `"+g+"`");if(f==="''"?f="'":g==="'"&&(f=Ys(f)),t.indexOf(f)===0)t=t.slice(f.length);else return s()}}if(t.length>0&&ks.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 S={};for(const f of x){if(!f.validate(P,u))return s();const g=f.set(P,S,u);Array.isArray(g)?(P=g[0],Object.assign(S,g[1])):P=g}return P}function Ys(t){return t.match(Ns)[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*Ne+r*Re+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*Ne+s*Re):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=Ss(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={[Cn]:e?.contentType||Yn};return 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)=>await fetch(t,{method:n.method,headers:e,body:n?.isFormData&&typeof n?.body=="string"?n.body:JSON.stringify(n.body),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=Sn(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"];var Rt=(t=>(t.CONDITIONAL="Conditional",t.MANDATORY="Mandatory",t))(Rt||{}),re=(t=>(t.DIMENSION="Dimension",t.MEASURE_DIMENSION="MeasureDimension",t.TIME_DIMENSION="TimeDimension",t))(re||{}),Nt=(t=>(t.UNBOUNDED="unbounded",t))(Nt||{});const _t=(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}=Se(t,e,c);o[i.id]={values:a?.[u]||[],decodedSeriesKey:d,codedSeriesKey:u}}return o},Se=(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}=Se(t,u,w);d[l.id]={values:o?.[x]||[],decodedSeriesKey:P,codedSeriesKey:x}}return d},kt=(t,e)=>{if(e==null)return;const n=t.values?.[e];return n??(e instanceof Array?{values:e}:{value:e.toString()})},It="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}=St(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 S=ee(r?.series||[],v=>P[v]),f=ca(n.attributes?.dataSet||[],e[0].attributes?.filter(v=>v!=null)||[]),g=_t(t,w),M=a.map((v,$)=>{const q=g[v.id],V=kt(v,q.values[$]);return{attribute:v,dimensionGroupValue:V,dimensionGroupData:q}});c.push({name:l,parsedTimeSeriesValue:w,values:d,attributes:S,dataSetAttrs:f,dimensionGroupAttributes:M})}return c},St=(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:Yt(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},Yt=t=>t.map(e=>e?Ct(e):"").join("."),Ct=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:It}];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||""})},Lt=/^[0-9][0-9][0-9][0-9]-Q[1-4]$/,Wt=/^[0-9][0-9][0-9][0-9]-W[0-9][0-9]?$/,$t=/^[0-9][0-9][0-9][0-9]-S[1-2]$/,qt=/^[0-9][0-9][0-9][0-9]$/,Ft=/^[0-9][0-9][0-9][0-9]-(0[1-9]|1[0-2])-[0-9][0-9]$/,Qt=/^[0-9][0-9][0-9][0-9]-M(0[1-9]|(1[0-2]))$/,se=t=>qt.exec(t),ae=t=>!!se(t),Ut=t=>$t.exec(t),oe=t=>!!Ut(t),ie=t=>Qt.exec(t),ce=t=>!!ie(t),ue=t=>Lt.exec(t),de=t=>!!ue(t),Ht=t=>Ft.exec(t),Bt=t=>!!Ht(t),Gt=t=>Wt.exec(t),le=t=>!!Gt(t),Ye=1440*60*1e3,Ce=7*Ye;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 Vt(t){const[e,n]=t.split("-W"),s=Le(+e).getTime()+(+n-1)*Ce-3*Ye;return new Date(s)}function Xt(t){const[e,n]=t.split("-W"),s=Le(+e).getTime()+(+n-1)*Ce+3*Ye;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)?Vt(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)?Xt(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},Kt=(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),zt=(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(zt(t,s,n));return r},Pa=(t,e,n,r="M")=>{const s=[];for(let a=e;a<n;a++)s.push(zt(t,a,r));return s},Jt=(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[]}},Zt=(t,e)=>{const n=R(e,!0),r=R(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)},R=(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:Bt(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||{}),en=(t=>(t.C="c",t))(en||{}),N=(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))(N||{}),tn=(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))(tn||{}),nn=(t=>(t.ANNUAL="A",t.QUARTERLY="Q",t.MONTHLY="M",t))(nn||{});function Ra(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,rn=(t,e,n)=>{if(!(!t||e?.has(t?.id))&&(e?.set(t?.id,t),t?.parent)){const r=n?.get(t?.parent);rn(r,e,n)}},sn=(t,e)=>{const n=new Map,r=new Map(t?.map(s=>[s.id,s]));return e?.forEach(s=>{rn(s,n,r)}),Array.from(n?.values())},an="time_period_end",on="time_period_start",cn="TIME_PERIOD",Na=t=>{const e=t?.find(a=>a.id===on),n=t?.find(a=>a.id===an),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),ka=(t,e)=>t.memberValue.localeCompare(e.memberValue),Ia=(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(ka);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)},Sa=t=>!!t?.some(e=>e.parent),Ya=(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})):Ia(a,i.selectionValues):a=[]}}else s.length!==0&&(a=a.filter(({id:o})=>s.includes(o)));return Sa(t)&&(a=sn(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!==cn&&e.push({componentCode:n.componentCode,operator:N.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(`${N.GREATER_OR_EQUAL}${Qe}${at(r)}`),s&&n.push(`${N.LESS_OR_EQUAL}${Qe}${at(s)}`),n.length===0)return null;const a=e;return n.map(o=>`${encodeURIComponent(`c[${a}]`)}${Nn}${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===N.LESS_OR_EQUAL||a===N.LESS)return{startPeriod:null,endPeriod:K(s[0])};if(a===N.GREATER_OR_EQUAL||a===N.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=R(e,!0),s=R(n),a=R(t,!0),o=R(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?R(e.toString(),!0)?.getMonth()+1:void 0,a=r===t.length-1?R(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=Zt(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:S,isQuarterlyExist:f,isSemiAnnualExist:g,isYearlyExist:M}=r;M&&d.push(c.toString()),g&&d.push(...Kt(c,l,w)),f&&d.push(...jt(c,l,w,!1)),S&&d.push(...Jt(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=Rt;exports.AvailabilityApi=On;exports.DATASET_DATA_URL=lt;exports.DatasetApi=In;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=It;exports.OccurrenceType=Nt;exports.Periods=nn;exports.RepresentationTextType=tn;exports.SDMX_DATA_QUERY_PARAMS=en;exports.SINGLE_WILDCARD_SYMBOL=te;exports.SdmxApiClient=na;exports.SdmxAvailabilityMode=Ae;exports.SdmxDataFormat=H;exports.SdmxDetails=Oe;exports.SdmxReferences=ne;exports.SeriesFilterOperator=N;exports.TIME_PERIOD=cn;exports.TIME_PERIOD_END=an;exports.TIME_PERIOD_START=on;exports.buildDatasetDimensionsMetadataMap=co;exports.dailyPattern=Ft;exports.decodeDimensionId=Ct;exports.findCodelistByDimension=Ga;exports.generateDatasetDataRequest=De;exports.generateShortUrn=it;exports.getAdditionalColumns=oo;exports.getAnnotationPeriod=Na;exports.getArtifactByUrnWithWildCard=he;exports.getAttachedDimensionsSeriesByDimension=sa;exports.getAttachedDimensionsSeriesByTsId=_t;exports.getAttachedDimensionsSeriesKey=Se;exports.getAttributeValueFromDataQueryResponse=kt;exports.getAvailableCodes=Va;exports.getAvailableCodesFromConstrains=Ya;exports.getChildParsedUrn=ot;exports.getConcept=ge;exports.getConceptByUrn=Me;exports.getConceptWithScheme=hn;exports.getConvertedMetaAttributes=gn;exports.getDailyRegExp=Ht;exports.getDaysColumns=Dn;exports.getDimensionTitle=Xa;exports.getDimensions=ve;exports.getFilteredItemsWithParents=sn;exports.getFiltersDtoFromDataQuery=un;exports.getFiltersDtoMapFromDataQuery=La;exports.getISOWeek=G;exports.getKeyFromUrn=B;exports.getLastUpdatedTime=Ra;exports.getLastWeekNumberOfYear=Pe;exports.getLocalizedName=me;exports.getMonthlyData=Jt;exports.getMonthlyDataByQuarter=Ma;exports.getMonthlyRegExp=ie;exports.getParsedEndPeriodDate=qe;exports.getParsedResponse=aa;exports.getParsedStartPeriodDate=$e;exports.getPeriodDate=R;exports.getPeriods=bn;exports.getQuarterByMonth=Ea;exports.getQuarterlyRegExp=ue;exports.getQuartersData=jt;exports.getQueryTimePeriodFilters=wn;exports.getRequestAcceptHeader=dt;exports.getResolvedVersionBySingleWildcard=ln;exports.getSemiAnnualData=Kt;exports.getSemiAnnuallyRegExp=Ut;exports.getSeriesAttributes=ee;exports.getSeriesName=St;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=Yt;exports.getWeekCode=We;exports.getWeeklyPeriodEndDate=Xt;exports.getWeeklyPeriodStartDate=Vt;exports.getWeeklyRegExp=Gt;exports.getWeeksColumns=pn;exports.getWildCardRegexp=fn;exports.getYearPeriod=Fe;exports.getYearlyRegExp=se;exports.getYears=Zt;exports.isDaily=Bt;exports.isMonthly=ce;exports.isQuarterly=de;exports.isSemiAnnually=oe;exports.isWeekly=le;exports.isWildCardVersionCorrect=mn;exports.isYearly=ae;exports.monthlyPattern=Qt;exports.openDownloadWindow=to;exports.quarterPattern=Lt;exports.semiAnnuallyPattern=$t;exports.sortPeriods=Oa;exports.splitUrn=L;exports.weeklyPattern=Wt;exports.yearlyPattern=qt;
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||{}),ve=(t=>(t.EXACT="exact",t.AVAILABLE="available",t))(ve||{});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(An)}}function An(t){return{memberValue:t.value}}const vn=(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:ve.AVAILABLE,references:ne.NONE},i=vn(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"})}},Ar=(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:Ar},vr=/^D+$/,Or=/^Y+$/,Nr=["D","DD","YY","YYYY"];function Et(t){return vr.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}/},v={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 At(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 vt(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=At(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=At(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=vt(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 vt(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(v.basicOptionalMinutes,e);case"XX":return O(v.basic,e);case"XXXX":return O(v.basicOptionalSeconds,e);case"XXXXX":return O(v.extendedOptionalSeconds,e);default:return O(v.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(v.basicOptionalMinutes,e);case"xx":return O(v.basic,e);case"xxxx":return O(v.basicOptionalSeconds,e);case"xxxxx":return O(v.extendedOptionalSeconds,e);default:return O(v.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 As extends m{priority=20;parse(e){return Mt(e)}set(e,n,r){return[E(e,r),{timestampIsSet:!0}]}incompatibleTokens="*"}const vs={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 As},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=vs[g];if(M){const{incompatibleTokens:A}=M;if(Array.isArray(A)){const q=w.find(V=>A.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={[Cn]:e?.contentType||Sn};return 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)=>await fetch(t,{method:n.method,headers:e,body:n?.isFormData&&typeof n?.body=="string"?n.body:JSON.stringify(n.body),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||[],A=>P[A]),f=ca(n.attributes?.dataSet||[],e[0].attributes?.filter(A=>A!=null)||[]),g=Yt(t,w),M=a.map((A,$)=>{const q=g[A.id],V=St(A,q.values[$]);return{attribute:A,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-9][0-9]?$/,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?va(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=Aa(t,e);return n?(n.getTimezoneOffset()>0&&n.setMinutes(n.getMinutes()+n.getTimezoneOffset()),n):new Date},Aa=(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)},va=(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 Ae(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&&[...Ae(t)?.dimensions||[],...Ae(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=ve;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=Ae;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;
package/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const z = (t) => {
1
+ const K = (t) => {
2
2
  if (t != null) {
3
3
  const e = t.split("=");
4
4
  return e.length === 1 ? t : e[1];
@@ -6,7 +6,7 @@ const z = (t) => {
6
6
  }, H = (t) => {
7
7
  if (t == null)
8
8
  return {};
9
- const e = z(t), n = {
9
+ const e = K(t), n = {
10
10
  agency: "",
11
11
  id: "",
12
12
  version: ""
@@ -185,7 +185,7 @@ function st(t, e) {
185
185
  const i = L(o);
186
186
  return n.getTime() >= a.getTime() ? r + 1 : n.getTime() >= i.getTime() ? r : r - 1;
187
187
  }
188
- function K(t) {
188
+ function z(t) {
189
189
  const e = y(t), n = new Date(
190
190
  Date.UTC(
191
191
  e.getFullYear(),
@@ -215,18 +215,18 @@ function jt(t, e, n) {
215
215
  n?.in,
216
216
  t,
217
217
  e
218
- ), a = Ce(r), o = Ce(s), i = +a - K(a), c = +o - K(o);
218
+ ), a = Ce(r), o = Ce(s), i = +a - z(a), c = +o - z(o);
219
219
  return Math.round((i - c) / Bt);
220
220
  }
221
- function zt(t, e) {
221
+ function Kt(t, e) {
222
222
  const n = st(t, e), r = E(t, 0);
223
223
  return r.setFullYear(n, 0, 4), r.setHours(0, 0, 0, 0), L(r);
224
224
  }
225
- function Kt(t) {
225
+ function zt(t) {
226
226
  return t instanceof Date || typeof t == "object" && Object.prototype.toString.call(t) === "[object Date]";
227
227
  }
228
228
  function re(t) {
229
- return !(!Kt(t) && typeof t != "number" || isNaN(+y(t)));
229
+ return !(!zt(t) && typeof t != "number" || isNaN(+y(t)));
230
230
  }
231
231
  function Jt(t, e) {
232
232
  const n = y(t, e?.in);
@@ -668,7 +668,7 @@ function _n(t, e) {
668
668
  return jt(n, Jt(n)) + 1;
669
669
  }
670
670
  function ot(t, e) {
671
- const n = y(t, e?.in), r = +L(n) - +zt(n);
671
+ const n = y(t, e?.in), r = +L(n) - +Kt(n);
672
672
  return Math.round(r / nt) + 1;
673
673
  }
674
674
  function fe(t, e) {
@@ -1405,14 +1405,14 @@ function Xn(t, e) {
1405
1405
  function jn(t) {
1406
1406
  return typeof t == "function" && t.prototype?.constructor === t;
1407
1407
  }
1408
- const zn = 10;
1408
+ const Kn = 10;
1409
1409
  class lt {
1410
1410
  subPriority = 0;
1411
1411
  validate(e, n) {
1412
1412
  return !0;
1413
1413
  }
1414
1414
  }
1415
- class Kn extends lt {
1415
+ class zn extends lt {
1416
1416
  constructor(e, n, r, s, a) {
1417
1417
  super(), this.value = e, this.validateValue = n, this.setValue = r, this.priority = s, a && (this.subPriority = a);
1418
1418
  }
@@ -1424,7 +1424,7 @@ class Kn extends lt {
1424
1424
  }
1425
1425
  }
1426
1426
  class Jn extends lt {
1427
- priority = zn;
1427
+ priority = Kn;
1428
1428
  subPriority = -1;
1429
1429
  constructor(e, n) {
1430
1430
  super(), this.context = e || ((r) => E(n, r));
@@ -1437,7 +1437,7 @@ class m {
1437
1437
  run(e, n, r, s) {
1438
1438
  const a = this.parse(e, n, r, s);
1439
1439
  return a ? {
1440
- setter: new Kn(
1440
+ setter: new zn(
1441
1441
  a.value,
1442
1442
  this.validate,
1443
1443
  this.set,
@@ -2689,7 +2689,7 @@ class Rr extends m {
2689
2689
  set(e, n, r) {
2690
2690
  return n.timestampIsSet ? e : E(
2691
2691
  e,
2692
- e.getTime() - K(e) - r
2692
+ e.getTime() - z(e) - r
2693
2693
  );
2694
2694
  }
2695
2695
  incompatibleTokens = ["t", "T", "x"];
@@ -2722,7 +2722,7 @@ class _r extends m {
2722
2722
  set(e, n, r) {
2723
2723
  return n.timestampIsSet ? e : E(
2724
2724
  e,
2725
- e.getTime() - K(e) - r
2725
+ e.getTime() - z(e) - r
2726
2726
  );
2727
2727
  }
2728
2728
  incompatibleTokens = ["t", "T", "X"];
@@ -2858,12 +2858,12 @@ function Ur(t, e) {
2858
2858
  let a;
2859
2859
  if (s.date) {
2860
2860
  const u = jr(s.date, 2);
2861
- a = zr(u.restDateString, u.year);
2861
+ a = Kr(u.restDateString, u.year);
2862
2862
  }
2863
2863
  if (!a || isNaN(+a)) return n();
2864
2864
  const o = +a;
2865
2865
  let i = 0, c;
2866
- if (s.time && (i = Kr(s.time), isNaN(i)))
2866
+ if (s.time && (i = zr(s.time), isNaN(i)))
2867
2867
  return n();
2868
2868
  if (s.timezone) {
2869
2869
  if (c = Jr(s.timezone), isNaN(c)) return n();
@@ -2912,7 +2912,7 @@ function jr(t, e) {
2912
2912
  restDateString: t.slice((r[1] || r[2]).length)
2913
2913
  };
2914
2914
  }
2915
- function zr(t, e) {
2915
+ function Kr(t, e) {
2916
2916
  if (e === null) return /* @__PURE__ */ new Date(NaN);
2917
2917
  const n = t.match(Br);
2918
2918
  if (!n) return /* @__PURE__ */ new Date(NaN);
@@ -2927,7 +2927,7 @@ function zr(t, e) {
2927
2927
  function F(t) {
2928
2928
  return t ? parseInt(t) : 1;
2929
2929
  }
2930
- function Kr(t) {
2930
+ function zr(t) {
2931
2931
  const e = t.match(Gr);
2932
2932
  if (!e) return NaN;
2933
2933
  const n = ne(e[1]), r = ne(e[2]), s = ne(e[3]);
@@ -3215,9 +3215,9 @@ class $a {
3215
3215
  });
3216
3216
  }
3217
3217
  }
3218
- const qa = ["FREQ", "FREQUENCY"];
3219
- var ds = /* @__PURE__ */ ((t) => (t.CONDITIONAL = "Conditional", t.MANDATORY = "Mandatory", t))(ds || {}), we = /* @__PURE__ */ ((t) => (t.DIMENSION = "Dimension", t.MEASURE_DIMENSION = "MeasureDimension", t.TIME_DIMENSION = "TimeDimension", t))(we || {}), ls = /* @__PURE__ */ ((t) => (t.UNBOUNDED = "unbounded", t))(ls || {});
3220
- const fs = (t, e) => {
3218
+ const qa = ["FREQ", "FREQUENCY"], ds = "TIME_PERIOD", ls = "time_period_start", fs = "time_period_end";
3219
+ var ms = /* @__PURE__ */ ((t) => (t.CONDITIONAL = "Conditional", t.MANDATORY = "Mandatory", t))(ms || {}), we = /* @__PURE__ */ ((t) => (t.DIMENSION = "Dimension", t.MEASURE_DIMENSION = "MeasureDimension", t.TIME_DIMENSION = "TimeDimension", t))(we || {}), hs = /* @__PURE__ */ ((t) => (t.UNBOUNDED = "unbounded", t))(hs || {});
3220
+ const ws = (t, e) => {
3221
3221
  const n = t?.data?.dataSets?.[0], s = t?.data?.structures?.[0]?.attributes?.dimensionGroup || [], a = n?.dimensionGroupAttributes, o = {};
3222
3222
  for (const i of s) {
3223
3223
  const c = i.relationship.dimensions, { codedSeriesKey: u, decodedSeriesKey: d } = gt(
@@ -3268,18 +3268,18 @@ const fs = (t, e) => {
3268
3268
  };
3269
3269
  }
3270
3270
  return d;
3271
- }, ms = (t, e) => {
3271
+ }, gs = (t, e) => {
3272
3272
  if (e == null)
3273
3273
  return;
3274
3274
  const n = t.values?.[e];
3275
3275
  return n ?? (e instanceof Array ? { values: e } : { value: e.toString() });
3276
- }, hs = "Observation", Fa = (t) => {
3276
+ }, ps = "Observation", Fa = (t) => {
3277
3277
  const e = t?.data?.dataSets, n = t?.data?.structures?.[0];
3278
3278
  if (!e || !n)
3279
3279
  return [];
3280
3280
  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 = [];
3281
3281
  for (const u in o) {
3282
- const d = [], { name: l, parsedTimeSeriesValue: g } = ws(
3282
+ const d = [], { name: l, parsedTimeSeriesValue: g } = ys(
3283
3283
  u,
3284
3284
  i
3285
3285
  ), x = o[u], P = x.attributes || [];
@@ -3294,19 +3294,19 @@ const fs = (t, e) => {
3294
3294
  continue;
3295
3295
  }
3296
3296
  d.push(
3297
- ...bs(x, n)
3297
+ ...Es(x, n)
3298
3298
  );
3299
3299
  const Y = ie(
3300
3300
  r?.series || [],
3301
3301
  (v) => P[v]
3302
- ), f = Ds(
3302
+ ), f = xs(
3303
3303
  n.attributes?.dataSet || [],
3304
3304
  e[0].attributes?.filter((v) => v != null) || []
3305
- ), w = fs(
3305
+ ), w = ws(
3306
3306
  t,
3307
3307
  g
3308
3308
  ), M = a.map((v, W) => {
3309
- const $ = w[v.id], U = ms(
3309
+ const $ = w[v.id], U = gs(
3310
3310
  v,
3311
3311
  $.values[W]
3312
3312
  );
@@ -3326,7 +3326,7 @@ const fs = (t, e) => {
3326
3326
  });
3327
3327
  }
3328
3328
  return c;
3329
- }, ws = (t, e) => {
3329
+ }, ys = (t, e) => {
3330
3330
  const n = t.split(new RegExp("(?<!\\|):(?!\\||$)")), r = [];
3331
3331
  for (let s = 0; s < n.length; s++) {
3332
3332
  const a = e?.[s], o = Number(n[s]);
@@ -3340,23 +3340,23 @@ const fs = (t, e) => {
3340
3340
  r.push(i?.id || i?.value || "");
3341
3341
  }
3342
3342
  return {
3343
- name: ps(r),
3343
+ name: Ds(r),
3344
3344
  parsedTimeSeriesValue: r
3345
3345
  };
3346
3346
  }, ie = (t, e) => {
3347
3347
  const n = [];
3348
3348
  for (let r = 0; r < t.length; r++) {
3349
- const s = t[r], a = e(r), o = a != null && s.values != null ? gs(a, s) : void 0;
3349
+ const s = t[r], a = e(r), o = a != null && s.values != null ? bs(a, s) : void 0;
3350
3350
  n.push({
3351
3351
  name: s.id,
3352
3352
  value: o
3353
3353
  });
3354
3354
  }
3355
3355
  return n;
3356
- }, gs = (t, e) => {
3356
+ }, bs = (t, e) => {
3357
3357
  const n = e.values[t];
3358
3358
  return n == null ? typeof t == "object" ? t : t.toString() : n?.id || n?.value || n?.ids || n?.values;
3359
- }, ps = (t) => t.map((e) => e ? ys(e) : "").join("."), ys = (t) => t.replace(/\./g, "|.").replace(/:/g, "|:"), bs = (t, e) => {
3359
+ }, Ds = (t) => t.map((e) => e ? Ts(e) : "").join("."), Ts = (t) => t.replace(/\./g, "|.").replace(/:/g, "|:"), Es = (t, e) => {
3360
3360
  const n = e.measures?.observation?.length;
3361
3361
  if (t.observations == null)
3362
3362
  return [
@@ -3366,7 +3366,7 @@ const fs = (t, e) => {
3366
3366
  e.attributes?.observation || [],
3367
3367
  (o) => t[o + n]
3368
3368
  ),
3369
- dimensionAtObservation: hs
3369
+ dimensionAtObservation: ps
3370
3370
  }
3371
3371
  ];
3372
3372
  const r = t.observations, s = e.dimensions.observation?.[0], a = [];
@@ -3385,19 +3385,19 @@ const fs = (t, e) => {
3385
3385
  });
3386
3386
  }
3387
3387
  return a;
3388
- }, Qe = (t, e) => e?.observation?.map((n, r) => ({ name: n.id, value: t[r] })) || [], Ds = (t, e) => t.reduce(
3388
+ }, Qe = (t, e) => e?.observation?.map((n, r) => ({ name: n.id, value: t[r] })) || [], xs = (t, e) => t.reduce(
3389
3389
  (n, r, s) => {
3390
3390
  const a = e[s];
3391
- return Ts(n, r, a, ""), n;
3391
+ return Ps(n, r, a, ""), n;
3392
3392
  },
3393
3393
  []
3394
- ), Ts = (t, e, n, r) => {
3394
+ ), Ps = (t, e, n, r) => {
3395
3395
  const s = n != null ? e?.values?.length > 0 ? e.values[n]?.id || e.values[n]?.value : String(n) : r;
3396
3396
  t.push({
3397
3397
  name: e.id,
3398
3398
  value: s || ""
3399
3399
  });
3400
- }, Es = /^[0-9][0-9][0-9][0-9]-Q[1-4]$/, xs = /^[0-9][0-9][0-9][0-9]-W[0-9][0-9]?$/, Ps = /^[0-9][0-9][0-9][0-9]-S[1-2]$/, Ms = /^[0-9][0-9][0-9][0-9]$/, vs = /^[0-9][0-9][0-9][0-9]-(0[1-9]|1[0-2])-[0-9][0-9]$/, Os = /^[0-9][0-9][0-9][0-9]-M(0[1-9]|(1[0-2]))$/, ge = (t) => Ms.exec(t), pe = (t) => !!ge(t), As = (t) => Ps.exec(t), ye = (t) => !!As(t), be = (t) => Os.exec(t), De = (t) => !!be(t), Te = (t) => Es.exec(t), Ee = (t) => !!Te(t), Ns = (t) => vs.exec(t), ks = (t) => !!Ns(t), Rs = (t) => xs.exec(t), xe = (t) => !!Rs(t), Pe = 1440 * 60 * 1e3, Me = 7 * Pe;
3400
+ }, Ms = /^[0-9][0-9][0-9][0-9]-Q[1-4]$/, vs = /^[0-9][0-9][0-9][0-9]-W[0-9][0-9]?$/, 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
3401
  function ve(t) {
3402
3402
  const e = `${t}-01-01`, n = new Date(e);
3403
3403
  if (n.getDay() !== 4) {
@@ -3406,7 +3406,7 @@ function ve(t) {
3406
3406
  }
3407
3407
  return n;
3408
3408
  }
3409
- function _s(t) {
3409
+ function Cs(t) {
3410
3410
  const e = new Date(t), r = -((e.getDay() + 6) % 7) + 3;
3411
3411
  return e.setDate(e.getDate() + r), new Date(e.valueOf());
3412
3412
  }
@@ -3421,7 +3421,7 @@ function pt(t, e, n = "W") {
3421
3421
  return `${t}-${n}${e < 10 ? "0" + e : e}`;
3422
3422
  }
3423
3423
  function Z(t, e = "W") {
3424
- const n = _s(t), r = n.getFullYear(), s = ve(r), a = 1 + Math.ceil(
3424
+ const n = Cs(t), r = n.getFullYear(), s = ve(r), a = 1 + Math.ceil(
3425
3425
  (n.getTime() - s.getTime()) / Me
3426
3426
  );
3427
3427
  return {
@@ -3430,31 +3430,31 @@ function Z(t, e = "W") {
3430
3430
  weekYear: r
3431
3431
  };
3432
3432
  }
3433
- function Is(t) {
3433
+ function Ls(t) {
3434
3434
  const [e, n] = t.split("-W"), s = ve(+e).getTime() + (+n - 1) * Me - 3 * Pe;
3435
3435
  return new Date(s);
3436
3436
  }
3437
- function Ys(t) {
3437
+ function Ss(t) {
3438
3438
  const [e, n] = t.split("-W"), s = ve(+e).getTime() + (+n - 1) * Me + 3 * Pe;
3439
3439
  return new Date(s);
3440
3440
  }
3441
3441
  function yt(t) {
3442
- return pe(t) ? Cs(t) : ye(t) ? Ss(t) : Ee(t) ? $s(t) : De(t) ? Qs(t) : xe(t) ? Is(t) : Hs(t);
3442
+ return pe(t) ? Ws(t) : ye(t) ? qs(t) : Ee(t) ? Fs(t) : De(t) ? Us(t) : xe(t) ? Ls(t) : Gs(t);
3443
3443
  }
3444
3444
  function bt(t) {
3445
- return pe(t) ? Ls(t) : ye(t) ? Ws(t) : Ee(t) ? qs(t) : De(t) ? Fs(t) : xe(t) ? Ys(t) : Us(t);
3445
+ return pe(t) ? $s(t) : ye(t) ? Qs(t) : Ee(t) ? Hs(t) : De(t) ? Bs(t) : xe(t) ? Ss(t) : Vs(t);
3446
3446
  }
3447
- function Cs(t) {
3447
+ function Ws(t) {
3448
3448
  const e = ge(t);
3449
3449
  if (e)
3450
3450
  return new Date(Number(e[0]), 0, 1);
3451
3451
  }
3452
- function Ls(t) {
3452
+ function $s(t) {
3453
3453
  const e = ge(t);
3454
3454
  if (e)
3455
3455
  return new Date(Number(e[0]) + 1, 0, 1);
3456
3456
  }
3457
- function Ss(t) {
3457
+ function qs(t) {
3458
3458
  const [e, n] = t.split("-S");
3459
3459
  switch (+n) {
3460
3460
  case 1:
@@ -3463,7 +3463,7 @@ function Ss(t) {
3463
3463
  return new Date(+e, 6, 1);
3464
3464
  }
3465
3465
  }
3466
- function Ws(t) {
3466
+ function Qs(t) {
3467
3467
  const [e, n] = t.split("-S");
3468
3468
  switch (+n) {
3469
3469
  case 1:
@@ -3472,7 +3472,7 @@ function Ws(t) {
3472
3472
  return new Date(+e + 1, 0, 1);
3473
3473
  }
3474
3474
  }
3475
- function $s(t) {
3475
+ function Fs(t) {
3476
3476
  const e = Te(t);
3477
3477
  if (!e)
3478
3478
  return;
@@ -3488,7 +3488,7 @@ function $s(t) {
3488
3488
  return new Date(+n, 9, 1);
3489
3489
  }
3490
3490
  }
3491
- function qs(t) {
3491
+ function Hs(t) {
3492
3492
  const e = Te(t);
3493
3493
  if (!e)
3494
3494
  return;
@@ -3504,44 +3504,44 @@ function qs(t) {
3504
3504
  return new Date(+n + 1, 0, 1);
3505
3505
  }
3506
3506
  }
3507
- function Qs(t) {
3507
+ function Us(t) {
3508
3508
  const e = be(t);
3509
3509
  if (!e)
3510
3510
  return;
3511
3511
  const [n, r] = e[0].split("-M");
3512
3512
  return new Date(+n, +r - 1, 1);
3513
3513
  }
3514
- function Fs(t) {
3514
+ function Bs(t) {
3515
3515
  const e = be(t);
3516
3516
  if (!e)
3517
3517
  return;
3518
3518
  const [n, r] = e[0].split("-M");
3519
3519
  return new Date(+n, +r, 1);
3520
3520
  }
3521
- const Hs = (t) => /* @__PURE__ */ new Date(`${t}T00:00:00`), Us = (t) => {
3521
+ const Gs = (t) => /* @__PURE__ */ new Date(`${t}T00:00:00`), Vs = (t) => {
3522
3522
  const e = /* @__PURE__ */ new Date(`${t}T23:59:00`);
3523
3523
  return e.setMinutes(e.getMinutes() + 1), e;
3524
- }, Bs = 1, Gs = (t, e, n, r = !0, s = "Q") => {
3525
- const a = [], o = e && e > 3 ? Zs(e, r) : 1, i = n ? Math.floor((n - 1) / 3) : 4;
3524
+ }, Xs = 1, js = (t, e, n, r = !0, s = "Q") => {
3525
+ const a = [], o = e && e > 3 ? na(e, r) : 1, i = n ? Math.floor((n - 1) / 3) : 4;
3526
3526
  for (let c = o; c <= i; c++)
3527
3527
  a.push(`${t}-${s}${c}`);
3528
3528
  return a;
3529
- }, Vs = (t, e, n, r = "S") => {
3529
+ }, Ks = (t, e, n, r = "S") => {
3530
3530
  const s = [];
3531
3531
  return (e || 1) < 7 && (n || 12) > 6 && s.push(`${t}-${r}1`), n == null && s.push(`${t}-${r}2`), s;
3532
- }, Ha = (t) => Math.ceil(t / 3), Dt = (t, e, n = "M") => `${t}-${n}${e.toString().padStart(2, "0")}`, Xs = (t, e, n = "M") => {
3532
+ }, Ha = (t) => Math.ceil(t / 3), Dt = (t, e, n = "M") => `${t}-${n}${e.toString().padStart(2, "0")}`, zs = (t, e, n = "M") => {
3533
3533
  const r = [];
3534
3534
  for (let s = e; s <= 12; s++)
3535
3535
  r.push(Dt(t, s, n));
3536
3536
  return r;
3537
- }, js = (t, e, n, r = "M") => {
3537
+ }, Js = (t, e, n, r = "M") => {
3538
3538
  const s = [];
3539
3539
  for (let a = e; a < n; a++)
3540
3540
  s.push(Dt(t, a, r));
3541
3541
  return s;
3542
- }, zs = (t, e, n, r = "M") => {
3542
+ }, Zs = (t, e, n, r = "M") => {
3543
3543
  const s = e || 1, a = n == null, o = n || 12;
3544
- return a ? Xs(t, s, r) : js(t, s, o, r);
3544
+ return a ? zs(t, s, r) : Js(t, s, o, r);
3545
3545
  }, Ua = (t, e, n = "M") => {
3546
3546
  switch (e) {
3547
3547
  case 0:
@@ -3571,24 +3571,24 @@ const Hs = (t) => /* @__PURE__ */ new Date(`${t}T00:00:00`), Us = (t) => {
3571
3571
  default:
3572
3572
  return [];
3573
3573
  }
3574
- }, Ks = (t, e) => {
3575
- const n = k(e, !0), r = k(t), s = n.getFullYear(), a = r.getFullYear(), o = n.getTime() <= r.getTime() ? a + Bs - s : 0;
3574
+ }, ea = (t, e) => {
3575
+ const n = k(e, !0), r = k(t), s = n.getFullYear(), a = r.getFullYear(), o = n.getTime() <= r.getTime() ? a + Xs - s : 0;
3576
3576
  return Array.from({ length: o }, (c, u) => s + u);
3577
3577
  }, k = (t, e = !1) => {
3578
- const n = Js(t, e);
3578
+ const n = ta(t, e);
3579
3579
  return n ? (n.getTimezoneOffset() > 0 && n.setMinutes(n.getMinutes() + n.getTimezoneOffset()), n) : /* @__PURE__ */ new Date();
3580
- }, Js = (t, e = !1) => {
3580
+ }, ta = (t, e = !1) => {
3581
3581
  const n = Number(t);
3582
3582
  return t.toString().length !== 13 ? e ? yt(t) : bt(t) : isNaN(n) ? /* @__PURE__ */ new Date(`${t}T00:00:00.000Z`) : new Date(n);
3583
- }, Zs = (t, e) => e ? Math.floor((t + 1) / 3) : Math.ceil((t + 1) / 3), Ba = (t, e) => {
3583
+ }, na = (t, e) => e ? Math.floor((t + 1) / 3) : Math.ceil((t + 1) / 3), Ba = (t, e) => {
3584
3584
  const n = Ue(t) - Ue(e);
3585
3585
  if (n === 0 && t !== e) {
3586
3586
  const r = He(t), s = He(e);
3587
3587
  return r - s;
3588
3588
  }
3589
3589
  return n;
3590
- }, He = (t) => pe(t) ? 6 : ye(t) ? 5 : Ee(t) ? 4 : De(t) ? 3 : xe(t) ? 2 : ks(t) ? 1 : 0, Ue = (t, e = !1) => (e ? yt(t) : bt(t))?.getTime() || 0;
3591
- var Oe = /* @__PURE__ */ ((t) => (t.LAST_UPDATE_AT = "lastUpdatedAt", t.SERIES_COUNT = "series_count", t))(Oe || {}), ea = /* @__PURE__ */ ((t) => (t.C = "c", t))(ea || {}), 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 || {}), ta = /* @__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))(ta || {}), na = /* @__PURE__ */ ((t) => (t.ANNUAL = "A", t.QUARTERLY = "Q", t.MONTHLY = "M", t))(na || {});
3590
+ }, 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;
3591
+ 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
3592
  function Ga(t) {
3593
3593
  return t?.annotations?.find((e) => {
3594
3594
  if (e.id === Oe.LAST_UPDATE_AT)
@@ -3600,16 +3600,16 @@ const Ae = (t, e) => t?.names && t?.names[e] || t?.name, Tt = (t, e, n) => {
3600
3600
  const r = n?.get(t?.parent);
3601
3601
  Tt(r, e, n);
3602
3602
  }
3603
- }, ra = (t, e) => {
3603
+ }, oa = (t, e) => {
3604
3604
  const n = /* @__PURE__ */ new Map(), r = new Map(t?.map((s) => [s.id, s]));
3605
3605
  return e?.forEach((s) => {
3606
3606
  Tt(s, n, r);
3607
3607
  }), Array.from(n?.values());
3608
- }, sa = "time_period_end", aa = "time_period_start", oa = "TIME_PERIOD", Va = (t) => {
3608
+ }, Va = (t) => {
3609
3609
  const e = t?.find(
3610
- (a) => a.id === aa
3610
+ (a) => a.id === ls
3611
3611
  ), n = t?.find(
3612
- (a) => a.id === sa
3612
+ (a) => a.id === fs
3613
3613
  ), r = n?.title ? new Date(n?.title) : null;
3614
3614
  return {
3615
3615
  startPeriod: e?.title ? new Date(e?.title) : null,
@@ -3646,14 +3646,14 @@ const Ae = (t, e) => t?.names && t?.names[e] || t?.name, Tt = (t, e, n) => {
3646
3646
  })) : ua(a, i.selectionValues) : a = [];
3647
3647
  }
3648
3648
  } else s.length !== 0 && (a = a.filter(({ id: o }) => s.includes(o)));
3649
- return da(t) && (a = ra(t, a)), a?.map((o) => ({
3649
+ return da(t) && (a = oa(t, a)), a?.map((o) => ({
3650
3650
  ...o,
3651
3651
  name: r ? Ae(o, r) : o?.name
3652
3652
  }));
3653
3653
  }, la = (t, e) => t != null && t.length > 0 && e != null, fa = (t) => {
3654
3654
  const e = [];
3655
3655
  return t?.filters?.forEach((n) => {
3656
- n.componentCode !== oa && e.push({
3656
+ n.componentCode !== ds && e.push({
3657
3657
  componentCode: n.componentCode,
3658
3658
  operator: R.EQUALS,
3659
3659
  value: n.values.join(",")
@@ -3747,29 +3747,29 @@ const Ae = (t, e) => t?.names && t?.names[e] || t?.name, Tt = (t, e, n) => {
3747
3747
  e
3748
3748
  );
3749
3749
  return {
3750
- concept: ze(o?.concepts || [], n),
3750
+ concept: Ke(o?.concepts || [], n),
3751
3751
  scheme: o
3752
3752
  };
3753
3753
  }
3754
3754
  for (const o of e)
3755
3755
  if (Pa(o, s, r, a))
3756
3756
  return {
3757
- concept: ze(o?.concepts || [], n),
3757
+ concept: Ke(o?.concepts || [], n),
3758
3758
  scheme: o
3759
3759
  };
3760
3760
  return {
3761
3761
  concept: void 0,
3762
3762
  scheme: void 0
3763
3763
  };
3764
- }, ze = (t, e) => t?.find((n) => n.id === e), Pa = (t, e, n, r) => t.id === e && t.agencyID === n && t.version === r, za = (t = [], e = [], n) => {
3765
- const r = n?.conceptIdentity || "", s = ke(r, e), a = z(
3764
+ }, Ke = (t, e) => t?.find((n) => n.id === e), Pa = (t, e, n, r) => t.id === e && t.agencyID === n && t.version === r, Ka = (t = [], e = [], n) => {
3765
+ const r = n?.conceptIdentity || "", s = ke(r, e), a = K(
3766
3766
  n?.localRepresentation?.enumeration
3767
- ), o = z(
3767
+ ), o = K(
3768
3768
  s?.coreRepresentation?.enumeration
3769
3769
  ), i = a || o;
3770
3770
  if (i != null)
3771
3771
  return Ne(i, t);
3772
- }, Ka = (t, e, n, r) => {
3772
+ }, za = (t, e, n, r) => {
3773
3773
  const s = e?.find(
3774
3774
  (a) => a?.id === t?.id
3775
3775
  )?.values;
@@ -3790,10 +3790,10 @@ const Ae = (t, e) => t?.names && t?.names[e] || t?.name, Tt = (t, e, n) => {
3790
3790
  };
3791
3791
  });
3792
3792
  }, Ja = (t = [], e, n) => {
3793
- const r = z(e?.conceptIdentity) || "", s = ke(r, t);
3793
+ const r = K(e?.conceptIdentity) || "", s = ke(r, t);
3794
3794
  return n ? Ae(s, n) : s?.name ?? s?.id ?? e?.id;
3795
3795
  };
3796
- function Ke(t) {
3796
+ function ze(t) {
3797
3797
  return t?.dataStructures?.[0]?.dataStructureComponents?.dimensionList;
3798
3798
  }
3799
3799
  function Za(t) {
@@ -3810,8 +3810,8 @@ function to(t) {
3810
3810
  const no = (t) => {
3811
3811
  const e = /* @__PURE__ */ new Map(), n = t?.dataStructures?.[0], r = t?.metadataStructures?.[0], s = t?.conceptSchemes || [], a = t?.codelists || [];
3812
3812
  return t && [
3813
- ...Ke(t)?.dimensions || [],
3814
- ...Ke(t)?.timeDimensions || [],
3813
+ ...ze(t)?.dimensions || [],
3814
+ ...ze(t)?.timeDimensions || [],
3815
3815
  ...Ma(r, n),
3816
3816
  ...n?.dataStructureComponents?.attributeList?.attributes || []
3817
3817
  ].forEach(
@@ -3937,7 +3937,7 @@ const no = (t) => {
3937
3937
  }, Ya = ["FREQUENCY", "FREQ"], io = (t, e) => {
3938
3938
  const n = t?.[0]?.cubeRegions?.[0]?.memberSelection?.find(
3939
3939
  (c) => Ya.includes(c.componentId)
3940
- )?.selectionValues, r = _a(n || []), s = e?.startPeriod?.getTime() || 1, a = e?.endPeriod?.getTime() || 1, o = Ks(a, s), i = [];
3940
+ )?.selectionValues, r = _a(n || []), s = e?.startPeriod?.getTime() || 1, a = e?.endPeriod?.getTime() || 1, o = ea(a, s), i = [];
3941
3941
  return o.forEach((c, u) => {
3942
3942
  const d = [], { startMonth: l, endMonth: g } = Ia(
3943
3943
  o,
@@ -3952,9 +3952,9 @@ const no = (t) => {
3952
3952
  isSemiAnnualExist: w,
3953
3953
  isYearlyExist: M
3954
3954
  } = r;
3955
- M && d.push(c.toString()), w && d.push(...Vs(c, l, g)), f && d.push(
3956
- ...Gs(c, l, g, !1)
3957
- ), Y && d.push(...zs(c, l, g)), P && d.push(
3955
+ M && d.push(c.toString()), w && d.push(...Ks(c, l, g)), f && d.push(
3956
+ ...js(c, l, g, !1)
3957
+ ), Y && d.push(...Zs(c, l, g)), P && d.push(
3958
3958
  ...Na(c, s.toString(), a.toString())
3959
3959
  ), x && d.push(
3960
3960
  ...Ra(c, s.toString(), a.toString())
@@ -3975,7 +3975,7 @@ function co(t) {
3975
3975
  }
3976
3976
  export {
3977
3977
  Oe as Annotations,
3978
- ds as AssignmentStatus,
3978
+ ms as AssignmentStatus,
3979
3979
  La as AvailabilityApi,
3980
3980
  Lt as DATASET_DATA_URL,
3981
3981
  Wa as DatasetApi,
@@ -3987,11 +3987,11 @@ export {
3987
3987
  $t as GET_v3_FILTER_ALL,
3988
3988
  Sa as GET_v3_FILTER_AND,
3989
3989
  Wt as GET_v3_FILTER_OR,
3990
- hs as OBSERVATION_KEY,
3991
- ls as OccurrenceType,
3992
- na as Periods,
3993
- ta as RepresentationTextType,
3994
- ea as SDMX_DATA_QUERY_PARAMS,
3990
+ ps as OBSERVATION_KEY,
3991
+ hs as OccurrenceType,
3992
+ aa as Periods,
3993
+ sa as RepresentationTextType,
3994
+ ra as SDMX_DATA_QUERY_PARAMS,
3995
3995
  ce as SINGLE_WILDCARD_SYMBOL,
3996
3996
  $a as SdmxApiClient,
3997
3997
  Ze as SdmxAvailabilityMode,
@@ -3999,42 +3999,42 @@ export {
3999
3999
  et as SdmxDetails,
4000
4000
  ue as SdmxReferences,
4001
4001
  R as SeriesFilterOperator,
4002
- oa as TIME_PERIOD,
4003
- sa as TIME_PERIOD_END,
4004
- aa as TIME_PERIOD_START,
4002
+ ds as TIME_PERIOD,
4003
+ fs as TIME_PERIOD_END_ANNOTATION_KEY,
4004
+ ls as TIME_PERIOD_START_ANNOTATION_KEY,
4005
4005
  co as buildDatasetDimensionsMetadataMap,
4006
- vs as dailyPattern,
4007
- ys as decodeDimensionId,
4008
- za as findCodelistByDimension,
4006
+ Ns as dailyPattern,
4007
+ Ts as decodeDimensionId,
4008
+ Ka as findCodelistByDimension,
4009
4009
  _e as generateDatasetDataRequest,
4010
4010
  Mt as generateShortUrn,
4011
4011
  io as getAdditionalColumns,
4012
4012
  Va as getAnnotationPeriod,
4013
4013
  Ne as getArtifactByUrnWithWildCard,
4014
4014
  Qa as getAttachedDimensionsSeriesByDimension,
4015
- fs as getAttachedDimensionsSeriesByTsId,
4015
+ ws as getAttachedDimensionsSeriesByTsId,
4016
4016
  gt as getAttachedDimensionsSeriesKey,
4017
- ms as getAttributeValueFromDataQueryResponse,
4018
- Ka as getAvailableCodes,
4017
+ gs as getAttributeValueFromDataQueryResponse,
4018
+ za as getAvailableCodes,
4019
4019
  Xa as getAvailableCodesFromConstrains,
4020
4020
  Pt as getChildParsedUrn,
4021
4021
  ke as getConcept,
4022
- ze as getConceptByUrn,
4022
+ Ke as getConceptByUrn,
4023
4023
  xa as getConceptWithScheme,
4024
4024
  Ma as getConvertedMetaAttributes,
4025
- Ns as getDailyRegExp,
4025
+ _s as getDailyRegExp,
4026
4026
  Ra as getDaysColumns,
4027
4027
  Ja as getDimensionTitle,
4028
- Ke as getDimensions,
4029
- ra as getFilteredItemsWithParents,
4028
+ ze as getDimensions,
4029
+ oa as getFilteredItemsWithParents,
4030
4030
  fa as getFiltersDtoFromDataQuery,
4031
4031
  ja as getFiltersDtoMapFromDataQuery,
4032
4032
  Z as getISOWeek,
4033
- z as getKeyFromUrn,
4033
+ K as getKeyFromUrn,
4034
4034
  Ga as getLastUpdatedTime,
4035
4035
  Fe as getLastWeekNumberOfYear,
4036
4036
  Ae as getLocalizedName,
4037
- zs as getMonthlyData,
4037
+ Zs as getMonthlyData,
4038
4038
  Ua as getMonthlyDataByQuarter,
4039
4039
  be as getMonthlyRegExp,
4040
4040
  bt as getParsedEndPeriodDate,
@@ -4044,14 +4044,14 @@ export {
4044
4044
  _a as getPeriods,
4045
4045
  Ha as getQuarterByMonth,
4046
4046
  Te as getQuarterlyRegExp,
4047
- Gs as getQuartersData,
4047
+ js as getQuartersData,
4048
4048
  Oa as getQueryTimePeriodFilters,
4049
4049
  Yt as getRequestAcceptHeader,
4050
4050
  ba as getResolvedVersionBySingleWildcard,
4051
- Vs as getSemiAnnualData,
4052
- As as getSemiAnnuallyRegExp,
4051
+ Ks as getSemiAnnualData,
4052
+ Rs as getSemiAnnuallyRegExp,
4053
4053
  ie as getSeriesAttributes,
4054
- ws as getSeriesName,
4054
+ ys as getSeriesName,
4055
4055
  no as getStructureComponentsMap,
4056
4056
  Za as getStructureDimensions,
4057
4057
  to as getTimeDimension,
@@ -4060,29 +4060,29 @@ export {
4060
4060
  Aa as getTimeRangeFromAttachment,
4061
4061
  ro as getTimeSeriesCount,
4062
4062
  ao as getTimeSeriesFilterKey,
4063
- ps as getTimeSeriesId,
4063
+ Ds as getTimeSeriesId,
4064
4064
  pt as getWeekCode,
4065
- Ys as getWeeklyPeriodEndDate,
4066
- Is as getWeeklyPeriodStartDate,
4067
- Rs as getWeeklyRegExp,
4065
+ Ss as getWeeklyPeriodEndDate,
4066
+ Ls as getWeeklyPeriodStartDate,
4067
+ Ys as getWeeklyRegExp,
4068
4068
  Na as getWeeksColumns,
4069
4069
  Ta as getWildCardRegexp,
4070
4070
  xt as getYearPeriod,
4071
4071
  ge as getYearlyRegExp,
4072
- Ks as getYears,
4073
- ks as isDaily,
4072
+ ea as getYears,
4073
+ Is as isDaily,
4074
4074
  De as isMonthly,
4075
4075
  Ee as isQuarterly,
4076
4076
  ye as isSemiAnnually,
4077
4077
  xe as isWeekly,
4078
4078
  Ea as isWildCardVersionCorrect,
4079
4079
  pe as isYearly,
4080
- Os as monthlyPattern,
4080
+ ks as monthlyPattern,
4081
4081
  so as openDownloadWindow,
4082
- Es as quarterPattern,
4083
- Ps as semiAnnuallyPattern,
4082
+ Ms as quarterPattern,
4083
+ Os as semiAnnuallyPattern,
4084
4084
  Ba as sortPeriods,
4085
4085
  H as splitUrn,
4086
- xs as weeklyPattern,
4087
- Ms as yearlyPattern
4086
+ vs as weeklyPattern,
4087
+ As as yearlyPattern
4088
4088
  };
@@ -0,0 +1,7 @@
1
+ export interface DatasetDimensionsScheme {
2
+ timePeriod: string | undefined;
3
+ frequency: string | undefined;
4
+ region: string | undefined;
5
+ indicators: string[];
6
+ other: string[];
7
+ }
@@ -17,9 +17,10 @@ export interface Urn {
17
17
  resourceId: string;
18
18
  }
19
19
  export type DimensionTypeKey = 'NON_INDICATOR' | 'INDICATOR' | 'TIME_PERIOD' | (string & {});
20
+ export type SubtypeKey = 'FREQUENCY' | 'REGION';
20
21
  export interface DimensionConfig {
21
22
  alias: string | null;
22
- subtype?: string | null;
23
+ subtype?: SubtypeKey | null;
23
24
  allValues: DimensionAllValues | null;
24
25
  dimensionType: DimensionTypeKey;
25
26
  }
package/models/index.d.ts CHANGED
@@ -14,3 +14,4 @@ export * from './structural-metadata/data-structure';
14
14
  export * from './structural-metadata/dataflow';
15
15
  export * from './structural-metadata/representation';
16
16
  export * from './datasets-metadata';
17
+ export * from './dataset-dimensions-scheme';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epam/statgpt-sdmx-toolkit",
3
- "version": "0.3.0-rc.6",
3
+ "version": "0.3.0-rc.8",
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.3.0-rc.6",
18
- "@epam/statgpt-shared-toolkit": "0.3.0-rc.6",
17
+ "@epam/statgpt-dial-toolkit": "0.3.0-rc.8",
18
+ "@epam/statgpt-shared-toolkit": "0.3.0-rc.8",
19
19
  "compare-versions": "^6.1.1",
20
20
  "date-fns": "^4.1.0"
21
21
  }
@@ -1,11 +1,8 @@
1
1
  import { DataConstraints } from '../models/structural-metadata/constraints';
2
2
  import { Annotation } from '../models/structural-metadata/structural-metadata-base';
3
- import { TimeRange, DataQuery } from '../../../shared-toolkit/src/index';
3
+ import { DataQuery, TimeRange } from '../../../shared-toolkit/src/index';
4
4
  import { Codelist } from '../models/structural-metadata/codelist';
5
5
  import { SeriesFilterDto } from '../models';
6
- export declare const TIME_PERIOD_END = "time_period_end";
7
- export declare const TIME_PERIOD_START = "time_period_start";
8
- export declare const TIME_PERIOD = "TIME_PERIOD";
9
6
  export declare const getAnnotationPeriod: (annotations: Annotation[] | undefined) => TimeRange;
10
7
  export declare const getAvailableCodesFromConstrains: (codes: Codelist[] | undefined, dimensionId: string | undefined, contentConstraints: DataConstraints[] | undefined, locale?: string, filters?: string[]) => Codelist[];
11
8
  export declare const getFiltersDtoFromDataQuery: (dataQuery: DataQuery) => SeriesFilterDto[];