@epam/statgpt-sdmx-toolkit 0.3.0-rc.7 → 0.3.0-rc.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/constants/index.d.ts +1 -0
- package/constants/time-period.d.ts +3 -0
- package/index.cjs +2 -2
- package/index.mjs +123 -123
- package/models/dataset-dimensions-scheme.d.ts +7 -0
- package/models/datasets-metadata.d.ts +2 -1
- package/models/index.d.ts +1 -0
- package/package.json +3 -3
- package/utils/constraint.d.ts +1 -4
package/constants/index.d.ts
CHANGED
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
|
|
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 =
|
|
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
|
|
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 -
|
|
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
|
|
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
|
|
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 !(!
|
|
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) - +
|
|
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
|
|
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
|
|
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 =
|
|
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
|
|
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() -
|
|
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() -
|
|
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 =
|
|
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 =
|
|
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
|
|
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
|
|
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
|
|
3220
|
-
const
|
|
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
|
-
},
|
|
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
|
-
},
|
|
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 } =
|
|
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
|
-
...
|
|
3297
|
+
...Es(x, n)
|
|
3298
3298
|
);
|
|
3299
3299
|
const Y = ie(
|
|
3300
3300
|
r?.series || [],
|
|
3301
3301
|
(v) => P[v]
|
|
3302
|
-
), f =
|
|
3302
|
+
), f = xs(
|
|
3303
3303
|
n.attributes?.dataSet || [],
|
|
3304
3304
|
e[0].attributes?.filter((v) => v != null) || []
|
|
3305
|
-
), w =
|
|
3305
|
+
), w = ws(
|
|
3306
3306
|
t,
|
|
3307
3307
|
g
|
|
3308
3308
|
), M = a.map((v, W) => {
|
|
3309
|
-
const $ = w[v.id], U =
|
|
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
|
-
},
|
|
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:
|
|
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 ?
|
|
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
|
-
},
|
|
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
|
-
},
|
|
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:
|
|
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] })) || [],
|
|
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
|
|
3391
|
+
return Ps(n, r, a, ""), n;
|
|
3392
3392
|
},
|
|
3393
3393
|
[]
|
|
3394
|
-
),
|
|
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
|
-
},
|
|
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
|
|
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 =
|
|
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
|
|
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
|
|
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) ?
|
|
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) ?
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
-
},
|
|
3525
|
-
const a = [], o = e && e > 3 ?
|
|
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
|
-
},
|
|
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")}`,
|
|
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
|
-
},
|
|
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
|
-
},
|
|
3542
|
+
}, Zs = (t, e, n, r = "M") => {
|
|
3543
3543
|
const s = e || 1, a = n == null, o = n || 12;
|
|
3544
|
-
return a ?
|
|
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
|
-
},
|
|
3575
|
-
const n = k(e, !0), r = k(t), s = n.getFullYear(), a = r.getFullYear(), o = n.getTime() <= r.getTime() ? a +
|
|
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 =
|
|
3578
|
+
const n = ta(t, e);
|
|
3579
3579
|
return n ? (n.getTimezoneOffset() > 0 && n.setMinutes(n.getMinutes() + n.getTimezoneOffset()), n) : /* @__PURE__ */ new Date();
|
|
3580
|
-
},
|
|
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
|
-
},
|
|
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 :
|
|
3591
|
-
var Oe = /* @__PURE__ */ ((t) => (t.LAST_UPDATE_AT = "lastUpdatedAt", t.SERIES_COUNT = "series_count", t))(Oe || {}),
|
|
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
|
-
},
|
|
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
|
-
},
|
|
3608
|
+
}, Va = (t) => {
|
|
3609
3609
|
const e = t?.find(
|
|
3610
|
-
(a) => a.id ===
|
|
3610
|
+
(a) => a.id === ls
|
|
3611
3611
|
), n = t?.find(
|
|
3612
|
-
(a) => a.id ===
|
|
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 =
|
|
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 !==
|
|
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:
|
|
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:
|
|
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
|
-
},
|
|
3765
|
-
const r = n?.conceptIdentity || "", s = ke(r, e), a =
|
|
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 =
|
|
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
|
-
},
|
|
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 =
|
|
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
|
|
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
|
-
...
|
|
3814
|
-
...
|
|
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 =
|
|
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(...
|
|
3956
|
-
...
|
|
3957
|
-
), Y && 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
|
-
|
|
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
|
-
|
|
3991
|
-
|
|
3992
|
-
|
|
3993
|
-
|
|
3994
|
-
|
|
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
|
-
|
|
4003
|
-
|
|
4004
|
-
|
|
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
|
-
|
|
4007
|
-
|
|
4008
|
-
|
|
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
|
-
|
|
4015
|
+
ws as getAttachedDimensionsSeriesByTsId,
|
|
4016
4016
|
gt as getAttachedDimensionsSeriesKey,
|
|
4017
|
-
|
|
4018
|
-
|
|
4017
|
+
gs as getAttributeValueFromDataQueryResponse,
|
|
4018
|
+
za as getAvailableCodes,
|
|
4019
4019
|
Xa as getAvailableCodesFromConstrains,
|
|
4020
4020
|
Pt as getChildParsedUrn,
|
|
4021
4021
|
ke as getConcept,
|
|
4022
|
-
|
|
4022
|
+
Ke as getConceptByUrn,
|
|
4023
4023
|
xa as getConceptWithScheme,
|
|
4024
4024
|
Ma as getConvertedMetaAttributes,
|
|
4025
|
-
|
|
4025
|
+
_s as getDailyRegExp,
|
|
4026
4026
|
Ra as getDaysColumns,
|
|
4027
4027
|
Ja as getDimensionTitle,
|
|
4028
|
-
|
|
4029
|
-
|
|
4028
|
+
ze as getDimensions,
|
|
4029
|
+
oa as getFilteredItemsWithParents,
|
|
4030
4030
|
fa as getFiltersDtoFromDataQuery,
|
|
4031
4031
|
ja as getFiltersDtoMapFromDataQuery,
|
|
4032
4032
|
Z as getISOWeek,
|
|
4033
|
-
|
|
4033
|
+
K as getKeyFromUrn,
|
|
4034
4034
|
Ga as getLastUpdatedTime,
|
|
4035
4035
|
Fe as getLastWeekNumberOfYear,
|
|
4036
4036
|
Ae as getLocalizedName,
|
|
4037
|
-
|
|
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
|
-
|
|
4047
|
+
js as getQuartersData,
|
|
4048
4048
|
Oa as getQueryTimePeriodFilters,
|
|
4049
4049
|
Yt as getRequestAcceptHeader,
|
|
4050
4050
|
ba as getResolvedVersionBySingleWildcard,
|
|
4051
|
-
|
|
4052
|
-
|
|
4051
|
+
Ks as getSemiAnnualData,
|
|
4052
|
+
Rs as getSemiAnnuallyRegExp,
|
|
4053
4053
|
ie as getSeriesAttributes,
|
|
4054
|
-
|
|
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
|
-
|
|
4063
|
+
Ds as getTimeSeriesId,
|
|
4064
4064
|
pt as getWeekCode,
|
|
4065
|
-
|
|
4066
|
-
|
|
4067
|
-
|
|
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
|
-
|
|
4073
|
-
|
|
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
|
-
|
|
4080
|
+
ks as monthlyPattern,
|
|
4081
4081
|
so as openDownloadWindow,
|
|
4082
|
-
|
|
4083
|
-
|
|
4082
|
+
Ms as quarterPattern,
|
|
4083
|
+
Os as semiAnnuallyPattern,
|
|
4084
4084
|
Ba as sortPeriods,
|
|
4085
4085
|
H as splitUrn,
|
|
4086
|
-
|
|
4087
|
-
|
|
4086
|
+
vs as weeklyPattern,
|
|
4087
|
+
As as yearlyPattern
|
|
4088
4088
|
};
|
|
@@ -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?:
|
|
23
|
+
subtype?: SubtypeKey | null;
|
|
23
24
|
allValues: DimensionAllValues | null;
|
|
24
25
|
dimensionType: DimensionTypeKey;
|
|
25
26
|
}
|
package/models/index.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@epam/statgpt-sdmx-toolkit",
|
|
3
|
-
"version": "0.3.0-rc.
|
|
3
|
+
"version": "0.3.0-rc.9",
|
|
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.
|
|
18
|
-
"@epam/statgpt-shared-toolkit": "0.3.0-rc.
|
|
17
|
+
"@epam/statgpt-dial-toolkit": "0.3.0-rc.9",
|
|
18
|
+
"@epam/statgpt-shared-toolkit": "0.3.0-rc.9",
|
|
19
19
|
"compare-versions": "^6.1.1",
|
|
20
20
|
"date-fns": "^4.1.0"
|
|
21
21
|
}
|
package/utils/constraint.d.ts
CHANGED
|
@@ -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 {
|
|
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[];
|