@sisense/sdk-ui 1.15.1 → 1.16.0

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.
Files changed (80) hide show
  1. package/dist/ai.cjs +50 -50
  2. package/dist/ai.js +112 -111
  3. package/dist/analytics-composer/index.d.ts +1 -0
  4. package/dist/analytics-composer/translators/code-templates.d.ts +11 -0
  5. package/dist/analytics-composer/translators/generate-code.d.ts +18 -0
  6. package/dist/analytics-composer/translators/index.d.ts +3 -0
  7. package/dist/analytics-composer/translators/model-translator.d.ts +48 -0
  8. package/dist/analytics-composer/translators/query-templates.d.ts +1 -0
  9. package/dist/analytics-composer/translators/query-translator.d.ts +134 -0
  10. package/dist/analytics-composer/translators/translate-filters-to-code.d.ts +2 -0
  11. package/dist/analytics-composer/translators/translate-props-to-code.d.ts +8 -0
  12. package/dist/analytics-composer/translators/types.d.ts +95 -0
  13. package/dist/analytics-composer/translators/utils.d.ts +13 -0
  14. package/dist/analytics-composer.cjs +239 -0
  15. package/dist/analytics-composer.d.ts +1 -0
  16. package/dist/analytics-composer.js +5435 -0
  17. package/dist/api/rest-api.d.ts +5 -0
  18. package/dist/api/types/dashboard-dto.d.ts +8 -0
  19. package/dist/api/types/palette-dto.d.ts +9 -0
  20. package/dist/app/settings/settings.d.ts +5 -0
  21. package/dist/app/settings/types/features.d.ts +6 -0
  22. package/dist/chart/advanced-chart.d.ts +7 -0
  23. package/dist/chart-data/advanced-analytics-data.d.ts +50 -0
  24. package/dist/chart-data/types.d.ts +1 -0
  25. package/dist/chart-data-options/types.d.ts +33 -4
  26. package/dist/chart-options-processor/advanced-chart-options.d.ts +24 -0
  27. package/dist/chart-options-processor/cartesian-chart-options.d.ts +2 -1
  28. package/dist/chart-options-processor/chart-options-service.d.ts +5 -0
  29. package/dist/chart-options-processor/translations/axis-section.d.ts +2 -2
  30. package/dist/chart-options-processor/translations/legend-section.d.ts +2 -0
  31. package/dist/chart-options-processor/translations/tooltip-utils.d.ts +1 -0
  32. package/dist/chart-options-processor/translations/tooltip.d.ts +4 -2
  33. package/dist/common/components/loading-indicator.d.ts +14 -0
  34. package/dist/common-filters/cascading-utils.d.ts +30 -0
  35. package/dist/common-filters/common-filters-connector.d.ts +7 -1
  36. package/dist/common-filters/types.d.ts +9 -4
  37. package/dist/common-filters/utils.d.ts +3 -2
  38. package/dist/dashboard/dashboard-by-id.d.ts +2 -0
  39. package/dist/dashboard/dashboard.d.ts +3 -1
  40. package/dist/dashboard/types.d.ts +2 -1
  41. package/dist/dashboard-widget/dashboard-widget.d.ts +2 -0
  42. package/dist/dashboard-widget/translate-widget-data-options.d.ts +1 -1
  43. package/dist/dashboard-widget/translate-widget-style-options.d.ts +11 -2
  44. package/dist/dashboard-widget/types.d.ts +26 -8
  45. package/dist/dashboard-widget/utils.d.ts +8 -0
  46. package/dist/filters/components/date-filter/date-filter/date-filter.d.ts +1 -0
  47. package/dist/filters/utils.d.ts +1 -0
  48. package/dist/get-widget-options-D008Wku-.cjs +172 -0
  49. package/dist/get-widget-options-Xskksk4X.js +34154 -0
  50. package/dist/index.cjs +195 -194
  51. package/dist/index.js +12388 -12114
  52. package/dist/models/dashboard/dashboard-model.d.ts +10 -2
  53. package/dist/models/dashboard/get-dashboard-model.d.ts +13 -2
  54. package/dist/models/dashboard/types.d.ts +5 -0
  55. package/dist/models/dashboard/use-get-dashboard-model.d.ts +2 -0
  56. package/dist/models/dashboard/use-get-dashboard-models.d.ts +2 -0
  57. package/dist/models/widget/get-widget-model.d.ts +13 -2
  58. package/dist/models/widget/translate-widget.d.ts +9 -1
  59. package/dist/models/widget/use-get-widget-model.d.ts +2 -0
  60. package/dist/models/widget/widget-model.d.ts +5 -3
  61. package/dist/pivot-table/use-get-pivot-table-query.d.ts +2 -6
  62. package/dist/props.d.ts +13 -5
  63. package/dist/query-execution/execute-query-by-widget-id.d.ts +2 -0
  64. package/dist/query-execution/index.d.ts +1 -1
  65. package/dist/query-execution/types.d.ts +11 -2
  66. package/dist/query-execution/use-execute-query-by-widget-id.d.ts +5 -5
  67. package/dist/themes/legacy-design-settings.d.ts +14 -0
  68. package/dist/translation/resources/en.d.ts +9 -0
  69. package/dist/translation/resources/index.d.ts +18 -0
  70. package/dist/types.d.ts +51 -9
  71. package/dist/useQuery-DeK1uDeJ.js +43001 -0
  72. package/dist/useQuery-aWnvBOTu.cjs +433 -0
  73. package/dist/utils/filters.d.ts +2 -0
  74. package/dist/widgets/common/widget-container.d.ts +2 -2
  75. package/dist/widgets/common/widget-header-info-button.d.ts +2 -2
  76. package/dist/widgets/common/widget-header.d.ts +2 -2
  77. package/dist/widgets/common/widget-style-utils.d.ts +5 -4
  78. package/package.json +18 -8
  79. package/dist/useQuery-B-49RH93.js +0 -76791
  80. package/dist/useQuery-C2MQvc4S.cjs +0 -603
@@ -0,0 +1,239 @@
1
+ "use strict";var xs=Object.defineProperty,Zs=Object.defineProperties;var en=Object.getOwnPropertyDescriptors;var qe=Object.getOwnPropertySymbols;var Ut=Object.prototype.hasOwnProperty,Vt=Object.prototype.propertyIsEnumerable;var ct=(s,e)=>(e=Symbol[s])?e:Symbol.for("Symbol."+s);var ft=(s,e,t)=>e in s?xs(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t,K=(s,e)=>{for(var t in e||(e={}))Ut.call(e,t)&&ft(s,t,e[t]);if(qe)for(var t of qe(e))Vt.call(e,t)&&ft(s,t,e[t]);return s},H=(s,e)=>Zs(s,en(e));var Jt=(s,e)=>{var t={};for(var n in s)Ut.call(s,n)&&e.indexOf(n)<0&&(t[n]=s[n]);if(s!=null&&qe)for(var n of qe(s))e.indexOf(n)<0&&Vt.call(s,n)&&(t[n]=s[n]);return t};var F=(s,e,t)=>(ft(s,typeof e!="symbol"?e+"":e,t),t);var ut=(s,e,t)=>new Promise((n,i)=>{var r=l=>{try{a(t.next(l))}catch(c){i(c)}},o=l=>{try{a(t.throw(l))}catch(c){i(c)}},a=l=>l.done?n(l.value):Promise.resolve(l.value).then(r,o);a((t=t.apply(s,e)).next())}),tn=function(s,e){this[0]=s,this[1]=e};var d=s=>{var e=s[ct("asyncIterator")],t=!1,n,i={};return e==null?(e=s[ct("iterator")](),n=r=>i[r]=o=>e[r](o)):(e=e.call(s),n=r=>i[r]=o=>{if(t){if(t=!1,r==="throw")throw o;return o}return t=!0,{done:!1,value:new tn(new Promise(a=>{var l=e[r](o);if(!(l instanceof Object))throw TypeError("Object expected");a(l)}),1)}}),i[ct("iterator")]=()=>i,n("next"),"throw"in e?n("throw"):i.throw=r=>{throw r},"return"in e&&n("return"),i};Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const P=require("./get-widget-options-D008Wku-.cjs"),sn={jaql:{datasource:{title:""},metadata:[]},queryTitle:"",chartRecommendations:{}},wt={model:"",metadata:[],chart:{},queryTitle:""};function nn(s){return s.replace(/\s+/g,"-").replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function rn(s){return s.charAt(0).toUpperCase()+s.slice(1)}function on(s){const e=/\[(.+?)\s\(Calendar\)\]/;return s.replace(e,"[$1]").trim()}function an(s){if(s)if(s.metadata){if(!s.model)throw Error("Missing model title")}else throw Error("Missing metadata");else throw Error("Empty model");return s}function ln(s){return!s||!s.jaql.datasource.title||!s.jaql.metadata.length}function Ie(s){return s&&s.replace(new RegExp("(?<!\\\\)'","g"),"\\'")}const cn={react:{baseChartTmpl:`import { {{componentString}} } from '@sisense/sdk-ui';
2
+ {{extraImportsString}}
3
+ import * as DM from './{{dataSourceString}}'; // generated with @sisense/sdk-cli
4
+
5
+ export default function CodeExample() {
6
+ return (
7
+ <{{componentString}}
8
+ title={'{{titleString}}'}
9
+ dataSource={DM.DataSource}
10
+ chartType={'{{chartTypeString}}'}
11
+ dataOptions={ {{dataOptionsString}} }
12
+ filters={ {{filtersString}} }
13
+ />
14
+ );
15
+ }`,chartTmpl:"{{baseChartTmpl}}",chartWidgetTmpl:"{{baseChartTmpl}}"},angular:{baseChartTmpl:`import { Component } from '@angular/core';
16
+ {{extraImportsString}}
17
+ import * as DM from './{{dataSourceString}}'; // generated with @sisense/sdk-cli
18
+
19
+ @Component({
20
+ selector: 'code-example',
21
+ template: \`
22
+ <csdk-chart-widget
23
+ chartType='{{chartTypeString}}'
24
+ [dataSource]='DM.DataSource'
25
+ [dataOptions]='dataOptions'
26
+ [filters]='filters'
27
+ />
28
+ \`
29
+ })
30
+ export class CodeExample {
31
+ DM = DM;
32
+ dataOptions = {{dataOptionsString}};
33
+ filters = {{filtersString}};
34
+ }`,chartTmpl:"{{baseChartTmpl}}",chartWidgetTmpl:"{{baseChartTmpl}}"},vue:{baseChartTmpl:`<script setup lang="ts">
35
+ import { ref } from 'vue';
36
+ import { {{componentString}} } from '@sisense/sdk-ui-vue';
37
+ {{extraImportsString}}
38
+ import * as DM from './{{dataSourceString}}'; // generated with @sisense/sdk-cli
39
+
40
+ const dataOptions = ref({{dataOptionsString}});
41
+ const filters = ref({{filtersString}});
42
+ <\/script>
43
+
44
+ <template>
45
+ <{{componentString}}
46
+ chartType="{{chartTypeString}}"
47
+ :dataOptions="dataOptions"
48
+ :filters="filters"
49
+ :dataSource="DM.DataSource"
50
+ title="{{titleString}}" />
51
+ </template>`,chartTmpl:"{{baseChartTmpl}}",chartWidgetTmpl:"{{baseChartTmpl}}"}},is=(s,e)=>cn[e][s].replace(/{{(.*?)Tmpl}}/g,(n,i)=>is(`${i}Tmpl`,e)),rs=(s,e)=>s.replace(/{{(.*?)}}/g,(t,n)=>n in e?e[n]:(console.warn(`Placeholder ${n} not found in data`),t)),fn=(s,e,t="react")=>{const n=is(s,t);return rs(n,e)},Ee=`
52
+ `,St="UNKNOWN",un=(s,e)=>{let t="";return t+=`measureFactory.customFormula(
53
+ `,t+=" ".repeat(e),t+=` '${Ie(s.title)}',
54
+ `,t+=" ".repeat(e),t+=` '${s.formula}',
55
+ `,t+=" ".repeat(e),t+=` {
56
+ `,Object.entries(s.context).forEach(([n,i])=>{const r=P.normalizeAttributeName(i.table||St,i.column||St,void 0,"DM");t+=" ".repeat(e),t+=` '${n.slice(1,-1)}': ${r},
57
+ `}),t+=" ".repeat(e),t+=` }
58
+ `,t+=" ".repeat(e),t+=")",t},hn=(s,e)=>{const{level:t,table:n,column:i,agg:r,sort:o,title:a}=s;let l;return n&&i&&(l=P.normalizeAttributeName(n,i,t,"DM")),r&&n&&i&&a&&(l=`measureFactory.${P.DimensionalBaseMeasure.aggregationFromJAQL(r)}(${l}, '${Ie(a)}')`),o&&(l=`{column: ${l}, sortType: '${P.getSortType(o)}'}`),l?`${" ".repeat(e)}${l}`:St},dn=(s,e)=>{const t=s.jaql().jaql;return"formula"in t?un(t,e):Ee+hn(t,e)},$e=(s,e=0,t=!1)=>{if(!s)return"";if(typeof s=="string")return`'${Ie(s)}'`;if(s instanceof P.JaqlElement)return dn(s,e);let n="";return Array.isArray(s)?n+=`[${s.map(i=>$e(i,e+2))}${s.length?Ee+" ".repeat(e+2):""}]`:(n+=`{${Ee}`,Object.entries(s).forEach(([i,r])=>{t&&(i=`'${Ie(i)}'`),n+=" ".repeat(e+2),Array.isArray(r)?n+=`${i}: [${r.map(o=>$e(o,e+4,t))}${r.length?Ee+" ".repeat(e+2):""}]`:typeof r=="object"?n+=`${i}: ${$e(r,e+2,t)}`:["number","boolean","undefined",null].includes(typeof r)?n+=`${i}: ${r}`:n+=`${i}: '${Ie(r)}'`,n+=`,${Ee}`}),n+=" ".repeat(e),n+="}"),n},Yt=`
59
+ `,pn=(s,e)=>{if(s.composeCode)return`${Yt}${" ".repeat(e)}${s.composeCode}`;const t=s.jaql().jaql;return`${Yt}${" ".repeat(e)}filterFactory.customFilter(${$e(t,e,!0)})`},mn=(s,e=0)=>{if(!s)return"";let t="";return t+=`[${s.map(n=>pn(n,e+2))}${s.length?`
60
+ `+" ".repeat(e+2):""}]`,t};class yn{constructor(e){F(this,"queryModel");F(this,"getChartRecommendationsOrDefault",e=>"chartType"in e?e:{chartType:"table",chartFamily:"table",axesMapping:{}});F(this,"getFilters",e=>e.map(t=>P.createFilterFromJaql(t.jaql)));F(this,"splitMetadata",e=>e.reduce((t,n)=>{if((n.panel==="scope"||n.jaql.filter)&&t.metadataFilters.push(P.cloneDeep(n)),n.panel!=="scope"){const i=P.cloneDeep(n);delete i.jaql.filter,t.metadataColumns.push(i)}return t},{metadataColumns:[],metadataFilters:[]}));F(this,"stringifyDataSource",e=>{if(!e)throw new Error("Data source is not defined");let t;return typeof e=="object"&&"title"in e?t=e.title:t=e,nn(t)});F(this,"stringifyChartType",e=>e);F(this,"stringifyFilters",e=>{if(!e)return"";if(Array.isArray(e))return mn(e,2);throw new Error("Filter relations not supported yet")});F(this,"stringifyDataOptions",e=>$e(e,2));F(this,"stringifyExtraImports",e=>{const t=["measureFactory"],{filters:n}=e;return Array.isArray(n)&&n.length>0&&t.push("filterFactory"),`import { ${t.join(", ")} } from '@sisense/sdk-data';`});F(this,"getChartWidgetCode",(e,t)=>{const n={titleString:e.title,dataSourceString:this.stringifyDataSource(e.dataSource),chartTypeString:this.stringifyChartType(e.chartType),dataOptionsString:this.stringifyDataOptions(e.dataOptions),filtersString:this.stringifyFilters(e.filters),componentString:"ChartWidget",extraImportsString:this.stringifyExtraImports(e)};return fn("chartWidgetTmpl",n,t)});this.queryModel=e}toChart(){if(!ln(this.queryModel))try{const e=this.queryModel,{jaql:t,chartRecommendations:n,queryTitle:i}=e,{metadata:r,datasource:{title:o}}=t,a=this.getChartRecommendationsOrDefault(n),l=a.chartType.toLowerCase(),c={cornerRadius:"Small",header:{renderToolbar:()=>null}},{metadataColumns:h,metadataFilters:f}=this.splitMetadata(r),p=this.getFilters(f);return{chartType:l,queryTitle:i,getChartWidgetProps:()=>{const{dataOptions:m,chartStyleOptions:y}=P.getChartOptions(h,a,!1),u=K(K({},y),c);return{chartType:l,dataOptions:m,styleOptions:u,dataSource:o,filters:p,title:i}}}}catch(e){console.log(e);return}}toCode(e,t="react"){try{const n=e.getChartWidgetProps();return this.getChartWidgetCode(n,t)}catch(n){return console.log(n),""}}}const It=Symbol.for("yaml.alias"),kt=Symbol.for("yaml.document"),z=Symbol.for("yaml.map"),os=Symbol.for("yaml.pair"),G=Symbol.for("yaml.scalar"),ge=Symbol.for("yaml.seq"),V=Symbol.for("yaml.node.type"),re=s=>!!s&&typeof s=="object"&&s[V]===It,be=s=>!!s&&typeof s=="object"&&s[V]===kt,we=s=>!!s&&typeof s=="object"&&s[V]===z,I=s=>!!s&&typeof s=="object"&&s[V]===os,A=s=>!!s&&typeof s=="object"&&s[V]===G,Se=s=>!!s&&typeof s=="object"&&s[V]===ge;function L(s){if(s&&typeof s=="object")switch(s[V]){case z:case ge:return!0}return!1}function M(s){if(s&&typeof s=="object")switch(s[V]){case It:case z:case G:case ge:return!0}return!1}const gn=s=>(A(s)||L(s))&&!!s.anchor,B=Symbol("break visit"),as=Symbol("skip children"),W=Symbol("remove node");function X(s,e){const t=ls(e);be(s)?ce(null,s.contents,t,Object.freeze([s]))===W&&(s.contents=null):ce(null,s,t,Object.freeze([]))}X.BREAK=B;X.SKIP=as;X.REMOVE=W;function ce(s,e,t,n){const i=cs(s,e,t,n);if(M(i)||I(i))return fs(s,n,i),ce(s,i,t,n);if(typeof i!="symbol"){if(L(e)){n=Object.freeze(n.concat(e));for(let r=0;r<e.items.length;++r){const o=ce(r,e.items[r],t,n);if(typeof o=="number")r=o-1;else{if(o===B)return B;o===W&&(e.items.splice(r,1),r-=1)}}}else if(I(e)){n=Object.freeze(n.concat(e));const r=ce("key",e.key,t,n);if(r===B)return B;r===W&&(e.key=null);const o=ce("value",e.value,t,n);if(o===B)return B;o===W&&(e.value=null)}}return i}function He(s,e){return ut(this,null,function*(){const t=ls(e);be(s)?(yield fe(null,s.contents,t,Object.freeze([s])))===W&&(s.contents=null):yield fe(null,s,t,Object.freeze([]))})}He.BREAK=B;He.SKIP=as;He.REMOVE=W;function fe(s,e,t,n){return ut(this,null,function*(){const i=yield cs(s,e,t,n);if(M(i)||I(i))return fs(s,n,i),fe(s,i,t,n);if(typeof i!="symbol"){if(L(e)){n=Object.freeze(n.concat(e));for(let r=0;r<e.items.length;++r){const o=yield fe(r,e.items[r],t,n);if(typeof o=="number")r=o-1;else{if(o===B)return B;o===W&&(e.items.splice(r,1),r-=1)}}}else if(I(e)){n=Object.freeze(n.concat(e));const r=yield fe("key",e.key,t,n);if(r===B)return B;r===W&&(e.key=null);const o=yield fe("value",e.value,t,n);if(o===B)return B;o===W&&(e.value=null)}}return i})}function ls(s){return typeof s=="object"&&(s.Collection||s.Node||s.Value)?Object.assign({Alias:s.Node,Map:s.Node,Scalar:s.Node,Seq:s.Node},s.Value&&{Map:s.Value,Scalar:s.Value,Seq:s.Value},s.Collection&&{Map:s.Collection,Seq:s.Collection},s):s}function cs(s,e,t,n){var i,r,o,a,l;if(typeof t=="function")return t(s,e,n);if(we(e))return(i=t.Map)==null?void 0:i.call(t,s,e,n);if(Se(e))return(r=t.Seq)==null?void 0:r.call(t,s,e,n);if(I(e))return(o=t.Pair)==null?void 0:o.call(t,s,e,n);if(A(e))return(a=t.Scalar)==null?void 0:a.call(t,s,e,n);if(re(e))return(l=t.Alias)==null?void 0:l.call(t,s,e,n)}function fs(s,e,t){const n=e[e.length-1];if(L(n))n.items[s]=t;else if(I(n))s==="key"?n.key=t:n.value=t;else if(be(n))n.contents=t;else{const i=re(n)?"alias":"scalar";throw new Error(`Cannot replace node with ${i} parent`)}}const bn={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},wn=s=>s.replace(/[!,[\]{}]/g,e=>bn[e]);class q{constructor(e,t){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},q.defaultYaml,e),this.tags=Object.assign({},q.defaultTags,t)}clone(){const e=new q(this.yaml,this.tags);return e.docStart=this.docStart,e}atDocument(){const e=new q(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:q.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},q.defaultTags);break}return e}add(e,t){this.atNextDocument&&(this.yaml={explicit:q.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},q.defaultTags),this.atNextDocument=!1);const n=e.trim().split(/[ \t]+/),i=n.shift();switch(i){case"%TAG":{if(n.length!==2&&(t(0,"%TAG directive should contain exactly two parts"),n.length<2))return!1;const[r,o]=n;return this.tags[r]=o,!0}case"%YAML":{if(this.yaml.explicit=!0,n.length!==1)return t(0,"%YAML directive should contain exactly one part"),!1;const[r]=n;if(r==="1.1"||r==="1.2")return this.yaml.version=r,!0;{const o=/^\d+\.\d+$/.test(r);return t(6,`Unsupported YAML version ${r}`,o),!1}}default:return t(0,`Unknown directive ${i}`,!0),!1}}tagName(e,t){if(e==="!")return"!";if(e[0]!=="!")return t(`Not a valid tag: ${e}`),null;if(e[1]==="<"){const o=e.slice(2,-1);return o==="!"||o==="!!"?(t(`Verbatim tags aren't resolved, so ${e} is invalid.`),null):(e[e.length-1]!==">"&&t("Verbatim tags must end with a >"),o)}const[,n,i]=e.match(new RegExp("^(.*!)([^!]*)$","s"));i||t(`The ${e} tag has no suffix`);const r=this.tags[n];if(r)try{return r+decodeURIComponent(i)}catch(o){return t(String(o)),null}return n==="!"?e:(t(`Could not resolve tag: ${e}`),null)}tagString(e){for(const[t,n]of Object.entries(this.tags))if(e.startsWith(n))return t+wn(e.substring(n.length));return e[0]==="!"?e:`!<${e}>`}toString(e){const t=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],n=Object.entries(this.tags);let i;if(e&&n.length>0&&M(e.contents)){const r={};X(e.contents,(o,a)=>{M(a)&&a.tag&&(r[a.tag]=!0)}),i=Object.keys(r)}else i=[];for(const[r,o]of n)r==="!!"&&o==="tag:yaml.org,2002:"||(!e||i.some(a=>a.startsWith(o)))&&t.push(`%TAG ${r} ${o}`);return t.join(`
61
+ `)}}q.defaultYaml={explicit:!1,version:"1.2"};q.defaultTags={"!!":"tag:yaml.org,2002:"};function us(s){if(/[\x00-\x19\s,[\]{}]/.test(s)){const t=`Anchor must not contain whitespace or control characters: ${JSON.stringify(s)}`;throw new Error(t)}return!0}function hs(s){const e=new Set;return X(s,{Value(t,n){n.anchor&&e.add(n.anchor)}}),e}function ds(s,e){for(let t=1;;++t){const n=`${s}${t}`;if(!e.has(n))return n}}function Sn(s,e){const t=[],n=new Map;let i=null;return{onAnchor:r=>{t.push(r),i||(i=hs(s));const o=ds(e,i);return i.add(o),o},setAnchors:()=>{for(const r of t){const o=n.get(r);if(typeof o=="object"&&o.anchor&&(A(o.node)||L(o.node)))o.node.anchor=o.anchor;else{const a=new Error("Failed to resolve repeated object (this should not happen)");throw a.source=r,a}}},sourceObjects:n}}function ue(s,e,t,n){if(n&&typeof n=="object")if(Array.isArray(n))for(let i=0,r=n.length;i<r;++i){const o=n[i],a=ue(s,n,String(i),o);a===void 0?delete n[i]:a!==o&&(n[i]=a)}else if(n instanceof Map)for(const i of Array.from(n.keys())){const r=n.get(i),o=ue(s,n,i,r);o===void 0?n.delete(i):o!==r&&n.set(i,o)}else if(n instanceof Set)for(const i of Array.from(n)){const r=ue(s,n,i,i);r===void 0?n.delete(i):r!==i&&(n.delete(i),n.add(r))}else for(const[i,r]of Object.entries(n)){const o=ue(s,n,i,r);o===void 0?delete n[i]:o!==r&&(n[i]=o)}return s.call(e,t,n)}function U(s,e,t){if(Array.isArray(s))return s.map((n,i)=>U(n,String(i),t));if(s&&typeof s.toJSON=="function"){if(!t||!gn(s))return s.toJSON(e,t);const n={aliasCount:0,count:1,res:void 0};t.anchors.set(s,n),t.onCreate=r=>{n.res=r,delete t.onCreate};const i=s.toJSON(e,t);return t.onCreate&&t.onCreate(i),i}return typeof s=="bigint"&&!(t!=null&&t.keep)?Number(s):s}class $t{constructor(e){Object.defineProperty(this,V,{value:e})}clone(){const e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:t,maxAliasCount:n,onAnchor:i,reviver:r}={}){if(!be(e))throw new TypeError("A document argument is required");const o={anchors:new Map,doc:e,keep:!0,mapAsMap:t===!0,mapKeyWarned:!1,maxAliasCount:typeof n=="number"?n:100},a=U(this,"",o);if(typeof i=="function")for(const{count:l,res:c}of o.anchors.values())i(c,l);return typeof r=="function"?ue(r,{"":a},"",a):a}}class ze extends $t{constructor(e){super(It),this.source=e,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(e){let t;return X(e,{Node:(n,i)=>{if(i===this)return X.BREAK;i.anchor===this.source&&(t=i)}}),t}toJSON(e,t){if(!t)return{source:this.source};const{anchors:n,doc:i,maxAliasCount:r}=t,o=this.resolve(i);if(!o){const l=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(l)}let a=n.get(o);if(a||(U(o,null,t),a=n.get(o)),!a||a.res===void 0){const l="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(l)}if(r>=0&&(a.count+=1,a.aliasCount===0&&(a.aliasCount=Re(i,o,n)),a.count*a.aliasCount>r)){const l="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(l)}return a.res}toString(e,t,n){const i=`*${this.source}`;if(e){if(us(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){const r=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(r)}if(e.implicitKey)return`${i} `}return i}}function Re(s,e,t){if(re(e)){const n=e.resolve(s),i=t&&n&&t.get(n);return i?i.count*i.aliasCount:0}else if(L(e)){let n=0;for(const i of e.items){const r=Re(s,i,t);r>n&&(n=r)}return n}else if(I(e)){const n=Re(s,e.key,t),i=Re(s,e.value,t);return Math.max(n,i)}return 1}const ps=s=>!s||typeof s!="function"&&typeof s!="object";class O extends $t{constructor(e){super(G),this.value=e}toJSON(e,t){return t!=null&&t.keep?this.value:U(this.value,e,t)}toString(){return String(this.value)}}O.BLOCK_FOLDED="BLOCK_FOLDED";O.BLOCK_LITERAL="BLOCK_LITERAL";O.PLAIN="PLAIN";O.QUOTE_DOUBLE="QUOTE_DOUBLE";O.QUOTE_SINGLE="QUOTE_SINGLE";const kn="tag:yaml.org,2002:";function On(s,e,t){var n;if(e){const i=t.filter(o=>o.tag===e),r=(n=i.find(o=>!o.format))!=null?n:i[0];if(!r)throw new Error(`Tag ${e} not found`);return r}return t.find(i=>{var r;return((r=i.identify)==null?void 0:r.call(i,s))&&!i.format})}function Ce(s,e,t){var f,p,m;if(be(s)&&(s=s.contents),M(s))return s;if(I(s)){const y=(p=(f=t.schema[z]).createNode)==null?void 0:p.call(f,t.schema,null,t);return y.items.push(s),y}(s instanceof String||s instanceof Number||s instanceof Boolean||typeof BigInt!="undefined"&&s instanceof BigInt)&&(s=s.valueOf());const{aliasDuplicateObjects:n,onAnchor:i,onTagObj:r,schema:o,sourceObjects:a}=t;let l;if(n&&s&&typeof s=="object"){if(l=a.get(s),l)return l.anchor||(l.anchor=i(s)),new ze(l.anchor);l={anchor:null,node:null},a.set(s,l)}e!=null&&e.startsWith("!!")&&(e=kn+e.slice(2));let c=On(s,e,o.tags);if(!c){if(s&&typeof s.toJSON=="function"&&(s=s.toJSON()),!s||typeof s!="object"){const y=new O(s);return l&&(l.node=y),y}c=s instanceof Map?o[z]:Symbol.iterator in Object(s)?o[ge]:o[z]}r&&(r(c),delete t.onTagObj);const h=c!=null&&c.createNode?c.createNode(t.schema,s,t):typeof((m=c==null?void 0:c.nodeClass)==null?void 0:m.from)=="function"?c.nodeClass.from(t.schema,s,t):new O(s);return e?h.tag=e:c.default||(h.tag=c.tag),l&&(l.node=h),h}function Ye(s,e,t){let n=t;for(let i=e.length-1;i>=0;--i){const r=e[i];if(typeof r=="number"&&Number.isInteger(r)&&r>=0){const o=[];o[r]=n,n=o}else n=new Map([[r,n]])}return Ce(n,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:s,sourceObjects:new Map})}const Ae=s=>s==null||typeof s=="object"&&!!s[Symbol.iterator]().next().done;class ms extends $t{constructor(e,t){super(e),Object.defineProperty(this,"schema",{value:t,configurable:!0,enumerable:!1,writable:!0})}clone(e){const t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(t.schema=e),t.items=t.items.map(n=>M(n)||I(n)?n.clone(e):n),this.range&&(t.range=this.range.slice()),t}addIn(e,t){if(Ae(e))this.add(t);else{const[n,...i]=e,r=this.get(n,!0);if(L(r))r.addIn(i,t);else if(r===void 0&&this.schema)this.set(n,Ye(this.schema,i,t));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${i}`)}}deleteIn(e){const[t,...n]=e;if(n.length===0)return this.delete(t);const i=this.get(t,!0);if(L(i))return i.deleteIn(n);throw new Error(`Expected YAML collection at ${t}. Remaining path: ${n}`)}getIn(e,t){const[n,...i]=e,r=this.get(n,!0);return i.length===0?!t&&A(r)?r.value:r:L(r)?r.getIn(i,t):void 0}hasAllNullValues(e){return this.items.every(t=>{if(!I(t))return!1;const n=t.value;return n==null||e&&A(n)&&n.value==null&&!n.commentBefore&&!n.comment&&!n.tag})}hasIn(e){const[t,...n]=e;if(n.length===0)return this.has(t);const i=this.get(t,!0);return L(i)?i.hasIn(n):!1}setIn(e,t){const[n,...i]=e;if(i.length===0)this.set(n,t);else{const r=this.get(n,!0);if(L(r))r.setIn(i,t);else if(r===void 0&&this.schema)this.set(n,Ye(this.schema,i,t));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${i}`)}}}const Tn=s=>s.replace(/^(?!$)(?: $)?/gm,"#");function Q(s,e){return/^\n+$/.test(s)?s.substring(1):e?s.replace(/^(?! *$)/gm,e):s}const te=(s,e,t)=>s.endsWith(`
62
+ `)?Q(t,e):t.includes(`
63
+ `)?`
64
+ `+Q(t,e):(s.endsWith(" ")?"":" ")+t,ys="flow",Ot="block",Ue="quoted";function Xe(s,e,t="flow",{indentAtStart:n,lineWidth:i=80,minContentWidth:r=20,onFold:o,onOverflow:a}={}){if(!i||i<0)return s;i<r&&(r=0);const l=Math.max(1+r,1+i-e.length);if(s.length<=l)return s;const c=[],h={};let f=i-e.length;typeof n=="number"&&(n>i-Math.max(2,r)?c.push(0):f=i-n);let p,m,y=!1,u=-1,g=-1,b=-1;t===Ot&&(u=Wt(s,u,e.length),u!==-1&&(f=u+l));for(let E;E=s[u+=1];){if(t===Ue&&E==="\\"){switch(g=u,s[u+1]){case"x":u+=3;break;case"u":u+=5;break;case"U":u+=9;break;default:u+=1}b=u}if(E===`
65
+ `)t===Ot&&(u=Wt(s,u,e.length)),f=u+e.length+l,p=void 0;else{if(E===" "&&m&&m!==" "&&m!==`
66
+ `&&m!==" "){const k=s[u+1];k&&k!==" "&&k!==`
67
+ `&&k!==" "&&(p=u)}if(u>=f)if(p)c.push(p),f=p+l,p=void 0;else if(t===Ue){for(;m===" "||m===" ";)m=E,E=s[u+=1],y=!0;const k=u>b+1?u-2:g-1;if(h[k])return s;c.push(k),h[k]=!0,f=k+l,p=void 0}else y=!0}m=E}if(y&&a&&a(),c.length===0)return s;o&&o();let S=s.slice(0,c[0]);for(let E=0;E<c.length;++E){const k=c[E],T=c[E+1]||s.length;k===0?S=`
68
+ ${e}${s.slice(0,T)}`:(t===Ue&&h[k]&&(S+=`${s[k]}\\`),S+=`
69
+ ${e}${s.slice(k+1,T)}`)}return S}function Wt(s,e,t){let n=e,i=e+1,r=s[i];for(;r===" "||r===" ";)if(e<i+t)r=s[++e];else{do r=s[++e];while(r&&r!==`
70
+ `);n=e,i=e+1,r=s[i]}return n}const xe=(s,e)=>({indentAtStart:e?s.indent.length:s.indentAtStart,lineWidth:s.options.lineWidth,minContentWidth:s.options.minContentWidth}),Ze=s=>/^(%|---|\.\.\.)/m.test(s);function Nn(s,e,t){if(!e||e<0)return!1;const n=e-t,i=s.length;if(i<=n)return!1;for(let r=0,o=0;r<i;++r)if(s[r]===`
71
+ `){if(r-o>n)return!0;if(o=r+1,i-o<=n)return!1}return!0}function Le(s,e){const t=JSON.stringify(s);if(e.options.doubleQuotedAsJSON)return t;const{implicitKey:n}=e,i=e.options.doubleQuotedMinMultiLineLength,r=e.indent||(Ze(s)?" ":"");let o="",a=0;for(let l=0,c=t[l];c;c=t[++l])if(c===" "&&t[l+1]==="\\"&&t[l+2]==="n"&&(o+=t.slice(a,l)+"\\ ",l+=1,a=l,c="\\"),c==="\\")switch(t[l+1]){case"u":{o+=t.slice(a,l);const h=t.substr(l+2,4);switch(h){case"0000":o+="\\0";break;case"0007":o+="\\a";break;case"000b":o+="\\v";break;case"001b":o+="\\e";break;case"0085":o+="\\N";break;case"00a0":o+="\\_";break;case"2028":o+="\\L";break;case"2029":o+="\\P";break;default:h.substr(0,2)==="00"?o+="\\x"+h.substr(2):o+=t.substr(l,6)}l+=5,a=l+1}break;case"n":if(n||t[l+2]==='"'||t.length<i)l+=1;else{for(o+=t.slice(a,l)+`
72
+
73
+ `;t[l+2]==="\\"&&t[l+3]==="n"&&t[l+4]!=='"';)o+=`
74
+ `,l+=2;o+=r,t[l+2]===" "&&(o+="\\"),l+=1,a=l+1}break;default:l+=1}return o=a?o+t.slice(a):t,n?o:Xe(o,r,Ue,xe(e,!1))}function Tt(s,e){if(e.options.singleQuote===!1||e.implicitKey&&s.includes(`
75
+ `)||/[ \t]\n|\n[ \t]/.test(s))return Le(s,e);const t=e.indent||(Ze(s)?" ":""),n="'"+s.replace(/'/g,"''").replace(/\n+/g,`$&
76
+ ${t}`)+"'";return e.implicitKey?n:Xe(n,t,ys,xe(e,!1))}function he(s,e){const{singleQuote:t}=e.options;let n;if(t===!1)n=Le;else{const i=s.includes('"'),r=s.includes("'");i&&!r?n=Tt:r&&!i?n=Le:n=t?Tt:Le}return n(s,e)}let Nt;try{Nt=new RegExp(`(^|(?<!
77
+ ))
78
+ +(?!
79
+ |$)`,"g")}catch(s){Nt=/\n+(?!\n|$)/g}function Ve({comment:s,type:e,value:t},n,i,r){const{blockQuote:o,commentString:a,lineWidth:l}=n.options;if(!o||/\n[\t ]+$/.test(t)||/^\s*$/.test(t))return he(t,n);const c=n.indent||(n.forceBlockIndent||Ze(t)?" ":""),h=o==="literal"?!0:o==="folded"||e===O.BLOCK_FOLDED?!1:e===O.BLOCK_LITERAL?!0:!Nn(t,l,c.length);if(!t)return h?`|
80
+ `:`>
81
+ `;let f,p;for(p=t.length;p>0;--p){const N=t[p-1];if(N!==`
82
+ `&&N!==" "&&N!==" ")break}let m=t.substring(p);const y=m.indexOf(`
83
+ `);y===-1?f="-":t===m||y!==m.length-1?(f="+",r&&r()):f="",m&&(t=t.slice(0,-m.length),m[m.length-1]===`
84
+ `&&(m=m.slice(0,-1)),m=m.replace(Nt,`$&${c}`));let u=!1,g,b=-1;for(g=0;g<t.length;++g){const N=t[g];if(N===" ")u=!0;else if(N===`
85
+ `)b=g;else break}let S=t.substring(0,b<g?b+1:g);S&&(t=t.substring(S.length),S=S.replace(/\n+/g,`$&${c}`));let k=(h?"|":">")+(u?c?"2":"1":"")+f;if(s&&(k+=" "+a(s.replace(/ ?[\r\n]+/g," ")),i&&i()),h)return t=t.replace(/\n+/g,`$&${c}`),`${k}
86
+ ${c}${S}${t}${m}`;t=t.replace(/\n+/g,`
87
+ $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${c}`);const T=Xe(`${S}${t}${m}`,c,Ot,xe(n,!0));return`${k}
88
+ ${c}${T}`}function En(s,e,t,n){const{type:i,value:r}=s,{actualString:o,implicitKey:a,indent:l,indentStep:c,inFlow:h}=e;if(a&&r.includes(`
89
+ `)||h&&/[[\]{},]/.test(r))return he(r,e);if(!r||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(r))return a||h||!r.includes(`
90
+ `)?he(r,e):Ve(s,e,t,n);if(!a&&!h&&i!==O.PLAIN&&r.includes(`
91
+ `))return Ve(s,e,t,n);if(Ze(r)){if(l==="")return e.forceBlockIndent=!0,Ve(s,e,t,n);if(a&&l===c)return he(r,e)}const f=r.replace(/\n+/g,`$&
92
+ ${l}`);if(o){const p=u=>{var g;return u.default&&u.tag!=="tag:yaml.org,2002:str"&&((g=u.test)==null?void 0:g.test(f))},{compat:m,tags:y}=e.doc.schema;if(y.some(p)||m!=null&&m.some(p))return he(r,e)}return a?f:Xe(f,l,ys,xe(e,!1))}function ve(s,e,t,n){const{implicitKey:i,inFlow:r}=e,o=typeof s.value=="string"?s:Object.assign({},s,{value:String(s.value)});let{type:a}=s;a!==O.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(o.value)&&(a=O.QUOTE_DOUBLE);const l=h=>{switch(h){case O.BLOCK_FOLDED:case O.BLOCK_LITERAL:return i||r?he(o.value,e):Ve(o,e,t,n);case O.QUOTE_DOUBLE:return Le(o.value,e);case O.QUOTE_SINGLE:return Tt(o.value,e);case O.PLAIN:return En(o,e,t,n);default:return null}};let c=l(a);if(c===null){const{defaultKeyType:h,defaultStringType:f}=e.options,p=i&&h||f;if(c=l(p),c===null)throw new Error(`Unsupported default string type ${p}`)}return c}function gs(s,e){const t=Object.assign({blockQuote:!0,commentString:Tn,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},s.schema.toStringOptions,e);let n;switch(t.collectionStyle){case"block":n=!1;break;case"flow":n=!0;break;default:n=null}return{anchors:new Set,doc:s,flowCollectionPadding:t.flowCollectionPadding?" ":"",indent:"",indentStep:typeof t.indent=="number"?" ".repeat(t.indent):" ",inFlow:n,options:t}}function An(s,e){var i,r,o,a;if(e.tag){const l=s.filter(c=>c.tag===e.tag);if(l.length>0)return(i=l.find(c=>c.format===e.format))!=null?i:l[0]}let t,n;if(A(e)){n=e.value;const l=s.filter(c=>{var h;return(h=c.identify)==null?void 0:h.call(c,n)});t=(r=l.find(c=>c.format===e.format))!=null?r:l.find(c=>!c.format)}else n=e,t=s.find(l=>l.nodeClass&&n instanceof l.nodeClass);if(!t){const l=(a=(o=n==null?void 0:n.constructor)==null?void 0:o.name)!=null?a:typeof n;throw new Error(`Tag not resolved for ${l} value`)}return t}function In(s,e,{anchors:t,doc:n}){if(!n.directives)return"";const i=[],r=(A(s)||L(s))&&s.anchor;r&&us(r)&&(t.add(r),i.push(`&${r}`));const o=s.tag?s.tag:e.default?null:e.tag;return o&&i.push(n.directives.tagString(o)),i.join(" ")}function me(s,e,t,n){var l,c;if(I(s))return s.toString(e,t,n);if(re(s)){if(e.doc.directives)return s.toString(e);if((l=e.resolvedAliases)!=null&&l.has(s))throw new TypeError("Cannot stringify circular structure without alias nodes");e.resolvedAliases?e.resolvedAliases.add(s):e.resolvedAliases=new Set([s]),s=s.resolve(e.doc)}let i;const r=M(s)?s:e.doc.createNode(s,{onTagObj:h=>i=h});i||(i=An(e.doc.schema.tags,r));const o=In(r,i,e);o.length>0&&(e.indentAtStart=((c=e.indentAtStart)!=null?c:0)+o.length+1);const a=typeof i.stringify=="function"?i.stringify(r,e,t,n):A(r)?ve(r,e,t,n):r.toString(e,t,n);return o?A(r)||a[0]==="{"||a[0]==="["?`${o} ${a}`:`${o}
93
+ ${e.indent}${a}`:a}function $n({key:s,value:e},t,n,i){var C,w;const{allNullValues:r,doc:o,indent:a,indentStep:l,options:{commentString:c,indentSeq:h,simpleKeys:f}}=t;let p=M(s)&&s.comment||null;if(f){if(p)throw new Error("With simple keys, key nodes cannot have comments");if(L(s)||!M(s)&&typeof s=="object"){const $="With simple keys, collection cannot be used as a key value";throw new Error($)}}let m=!f&&(!s||p&&e==null&&!t.inFlow||L(s)||(A(s)?s.type===O.BLOCK_FOLDED||s.type===O.BLOCK_LITERAL:typeof s=="object"));t=Object.assign({},t,{allNullValues:!1,implicitKey:!m&&(f||!r),indent:a+l});let y=!1,u=!1,g=me(s,t,()=>y=!0,()=>u=!0);if(!m&&!t.inFlow&&g.length>1024){if(f)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");m=!0}if(t.inFlow){if(r||e==null)return y&&n&&n(),g===""?"?":m?`? ${g}`:g}else if(r&&!f||e==null&&m)return g=`? ${g}`,p&&!y?g+=te(g,t.indent,c(p)):u&&i&&i(),g;y&&(p=null),m?(p&&(g+=te(g,t.indent,c(p))),g=`? ${g}
94
+ ${a}:`):(g=`${g}:`,p&&(g+=te(g,t.indent,c(p))));let b,S,E;M(e)?(b=!!e.spaceBefore,S=e.commentBefore,E=e.comment):(b=!1,S=null,E=null,e&&typeof e=="object"&&(e=o.createNode(e))),t.implicitKey=!1,!m&&!p&&A(e)&&(t.indentAtStart=g.length+1),u=!1,!h&&l.length>=2&&!t.inFlow&&!m&&Se(e)&&!e.flow&&!e.tag&&!e.anchor&&(t.indent=t.indent.substring(2));let k=!1;const T=me(e,t,()=>k=!0,()=>u=!0);let N=" ";if(p||b||S){if(N=b?`
95
+ `:"",S){const $=c(S);N+=`
96
+ ${Q($,t.indent)}`}T===""&&!t.inFlow?N===`
97
+ `&&(N=`
98
+
99
+ `):N+=`
100
+ ${t.indent}`}else if(!m&&L(e)){const $=T[0],_=T.indexOf(`
101
+ `),D=_!==-1,Z=(w=(C=t.inFlow)!=null?C:e.flow)!=null?w:e.items.length===0;if(D||!Z){let oe=!1;if(D&&($==="&"||$==="!")){let v=T.indexOf(" ");$==="&"&&v!==-1&&v<_&&T[v+1]==="!"&&(v=T.indexOf(" ",v+1)),(v===-1||_<v)&&(oe=!0)}oe||(N=`
102
+ ${t.indent}`)}}else(T===""||T[0]===`
103
+ `)&&(N="");return g+=N+T,t.inFlow?k&&n&&n():E&&!k?g+=te(g,t.indent,c(E)):u&&i&&i(),g}function bs(s,e){(s==="debug"||s==="warn")&&(typeof process!="undefined"&&process.emitWarning?process.emitWarning(e):console.warn(e))}const Qt="<<";function ws(s,e,{key:t,value:n}){if(s!=null&&s.doc.schema.merge&&Ln(t))if(n=re(n)?n.resolve(s.doc):n,Se(n))for(const i of n.items)ht(s,e,i);else if(Array.isArray(n))for(const i of n)ht(s,e,i);else ht(s,e,n);else{const i=U(t,"",s);if(e instanceof Map)e.set(i,U(n,i,s));else if(e instanceof Set)e.add(i);else{const r=Cn(t,i,s),o=U(n,r,s);r in e?Object.defineProperty(e,r,{value:o,writable:!0,enumerable:!0,configurable:!0}):e[r]=o}}return e}const Ln=s=>s===Qt||A(s)&&s.value===Qt&&(!s.type||s.type===O.PLAIN);function ht(s,e,t){const n=s&&re(t)?t.resolve(s.doc):t;if(!we(n))throw new Error("Merge sources must be maps or map aliases");const i=n.toJSON(null,s,Map);for(const[r,o]of i)e instanceof Map?e.has(r)||e.set(r,o):e instanceof Set?e.add(r):Object.prototype.hasOwnProperty.call(e,r)||Object.defineProperty(e,r,{value:o,writable:!0,enumerable:!0,configurable:!0});return e}function Cn(s,e,t){if(e===null)return"";if(typeof e!="object")return String(e);if(M(s)&&(t!=null&&t.doc)){const n=gs(t.doc,{});n.anchors=new Set;for(const r of t.anchors.keys())n.anchors.add(r.anchor);n.inFlow=!0,n.inStringifyKey=!0;const i=s.toString(n);if(!t.mapKeyWarned){let r=JSON.stringify(i);r.length>40&&(r=r.substring(0,36)+'..."'),bs(t.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${r}. Set mapAsMap: true to use object keys.`),t.mapKeyWarned=!0}return i}return JSON.stringify(e)}function Lt(s,e,t){const n=Ce(s,void 0,t),i=Ce(e,void 0,t);return new j(n,i)}class j{constructor(e,t=null){Object.defineProperty(this,V,{value:os}),this.key=e,this.value=t}clone(e){let{key:t,value:n}=this;return M(t)&&(t=t.clone(e)),M(n)&&(n=n.clone(e)),new j(t,n)}toJSON(e,t){const n=t!=null&&t.mapAsMap?new Map:{};return ws(t,n,this)}toString(e,t,n){return e!=null&&e.doc?$n(this,e,t,n):JSON.stringify(this)}}function Ss(s,e,t){var r;return(((r=e.inFlow)!=null?r:s.flow)?Mn:_n)(s,e,t)}function _n({comment:s,items:e},t,{blockItemPrefix:n,flowChars:i,itemIndent:r,onChompKeep:o,onComment:a}){const{indent:l,options:{commentString:c}}=t,h=Object.assign({},t,{indent:r,type:null});let f=!1;const p=[];for(let y=0;y<e.length;++y){const u=e[y];let g=null;if(M(u))!f&&u.spaceBefore&&p.push(""),We(t,p,u.commentBefore,f),u.comment&&(g=u.comment);else if(I(u)){const S=M(u.key)?u.key:null;S&&(!f&&S.spaceBefore&&p.push(""),We(t,p,S.commentBefore,f))}f=!1;let b=me(u,h,()=>g=null,()=>f=!0);g&&(b+=te(b,r,c(g))),f&&g&&(f=!1),p.push(n+b)}let m;if(p.length===0)m=i.start+i.end;else{m=p[0];for(let y=1;y<p.length;++y){const u=p[y];m+=u?`
104
+ ${l}${u}`:`
105
+ `}}return s?(m+=`
106
+ `+Q(c(s),l),a&&a()):f&&o&&o(),m}function Mn({items:s},e,{flowChars:t,itemIndent:n}){const{indent:i,indentStep:r,flowCollectionPadding:o,options:{commentString:a}}=e;n+=r;const l=Object.assign({},e,{indent:n,inFlow:!0,type:null});let c=!1,h=0;const f=[];for(let y=0;y<s.length;++y){const u=s[y];let g=null;if(M(u))u.spaceBefore&&f.push(""),We(e,f,u.commentBefore,!1),u.comment&&(g=u.comment);else if(I(u)){const S=M(u.key)?u.key:null;S&&(S.spaceBefore&&f.push(""),We(e,f,S.commentBefore,!1),S.comment&&(c=!0));const E=M(u.value)?u.value:null;E?(E.comment&&(g=E.comment),E.commentBefore&&(c=!0)):u.value==null&&(S!=null&&S.comment)&&(g=S.comment)}g&&(c=!0);let b=me(u,l,()=>g=null);y<s.length-1&&(b+=","),g&&(b+=te(b,n,a(g))),!c&&(f.length>h||b.includes(`
107
+ `))&&(c=!0),f.push(b),h=f.length}const{start:p,end:m}=t;if(f.length===0)return p+m;if(!c){const y=f.reduce((u,g)=>u+g.length+2,2);c=e.options.lineWidth>0&&y>e.options.lineWidth}if(c){let y=p;for(const u of f)y+=u?`
108
+ ${r}${i}${u}`:`
109
+ `;return`${y}
110
+ ${i}${m}`}else return`${p}${o}${f.join(" ")}${o}${m}`}function We({indent:s,options:{commentString:e}},t,n,i){if(n&&i&&(n=n.replace(/^\n+/,"")),n){const r=Q(e(n),s);t.push(r.trimStart())}}function se(s,e){const t=A(e)?e.value:e;for(const n of s)if(I(n)&&(n.key===e||n.key===t||A(n.key)&&n.key.value===t))return n}class R extends ms{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super(z,e),this.items=[]}static from(e,t,n){const{keepUndefined:i,replacer:r}=n,o=new this(e),a=(l,c)=>{if(typeof r=="function")c=r.call(t,l,c);else if(Array.isArray(r)&&!r.includes(l))return;(c!==void 0||i)&&o.items.push(Lt(l,c,n))};if(t instanceof Map)for(const[l,c]of t)a(l,c);else if(t&&typeof t=="object")for(const l of Object.keys(t))a(l,t[l]);return typeof e.sortMapEntries=="function"&&o.items.sort(e.sortMapEntries),o}add(e,t){var o;let n;I(e)?n=e:!e||typeof e!="object"||!("key"in e)?n=new j(e,e==null?void 0:e.value):n=new j(e.key,e.value);const i=se(this.items,n.key),r=(o=this.schema)==null?void 0:o.sortMapEntries;if(i){if(!t)throw new Error(`Key ${n.key} already set`);A(i.value)&&ps(n.value)?i.value.value=n.value:i.value=n.value}else if(r){const a=this.items.findIndex(l=>r(n,l)<0);a===-1?this.items.push(n):this.items.splice(a,0,n)}else this.items.push(n)}delete(e){const t=se(this.items,e);return t?this.items.splice(this.items.indexOf(t),1).length>0:!1}get(e,t){var r;const n=se(this.items,e),i=n==null?void 0:n.value;return(r=!t&&A(i)?i.value:i)!=null?r:void 0}has(e){return!!se(this.items,e)}set(e,t){this.add(new j(e,t),!0)}toJSON(e,t,n){const i=n?new n:t!=null&&t.mapAsMap?new Map:{};t!=null&&t.onCreate&&t.onCreate(i);for(const r of this.items)ws(t,i,r);return i}toString(e,t,n){if(!e)return JSON.stringify(this);for(const i of this.items)if(!I(i))throw new Error(`Map items must all be pairs; found ${JSON.stringify(i)} instead`);return!e.allNullValues&&this.hasAllNullValues(!1)&&(e=Object.assign({},e,{allNullValues:!0})),Ss(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:n,onComment:t})}}const ke={collection:"map",default:!0,nodeClass:R,tag:"tag:yaml.org,2002:map",resolve(s,e){return we(s)||e("Expected a mapping for this tag"),s},createNode:(s,e,t)=>R.from(s,e,t)};class x extends ms{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(ge,e),this.items=[]}add(e){this.items.push(e)}delete(e){const t=Be(e);return typeof t!="number"?!1:this.items.splice(t,1).length>0}get(e,t){const n=Be(e);if(typeof n!="number")return;const i=this.items[n];return!t&&A(i)?i.value:i}has(e){const t=Be(e);return typeof t=="number"&&t<this.items.length}set(e,t){const n=Be(e);if(typeof n!="number")throw new Error(`Expected a valid index, not ${e}.`);const i=this.items[n];A(i)&&ps(t)?i.value=t:this.items[n]=t}toJSON(e,t){const n=[];t!=null&&t.onCreate&&t.onCreate(n);let i=0;for(const r of this.items)n.push(U(r,String(i++),t));return n}toString(e,t,n){return e?Ss(this,e,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(e.indent||"")+" ",onChompKeep:n,onComment:t}):JSON.stringify(this)}static from(e,t,n){const{replacer:i}=n,r=new this(e);if(t&&Symbol.iterator in Object(t)){let o=0;for(let a of t){if(typeof i=="function"){const l=t instanceof Set?a:String(o++);a=i.call(t,l,a)}r.items.push(Ce(a,void 0,n))}}return r}}function Be(s){let e=A(s)?s.value:s;return e&&typeof e=="string"&&(e=Number(e)),typeof e=="number"&&Number.isInteger(e)&&e>=0?e:null}const Oe={collection:"seq",default:!0,nodeClass:x,tag:"tag:yaml.org,2002:seq",resolve(s,e){return Se(s)||e("Expected a sequence for this tag"),s},createNode:(s,e,t)=>x.from(s,e,t)},et={identify:s=>typeof s=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:s=>s,stringify(s,e,t,n){return e=Object.assign({actualString:!0},e),ve(s,e,t,n)}},tt={identify:s=>s==null,createNode:()=>new O(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new O(null),stringify:({source:s},e)=>typeof s=="string"&&tt.test.test(s)?s:e.options.nullStr},Ct={identify:s=>typeof s=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:s=>new O(s[0]==="t"||s[0]==="T"),stringify({source:s,value:e},t){if(s&&Ct.test.test(s)){const n=s[0]==="t"||s[0]==="T";if(e===n)return s}return e?t.options.trueStr:t.options.falseStr}};function Y({format:s,minFractionDigits:e,tag:t,value:n}){if(typeof n=="bigint")return String(n);const i=typeof n=="number"?n:Number(n);if(!isFinite(i))return isNaN(i)?".nan":i<0?"-.inf":".inf";let r=JSON.stringify(n);if(!s&&e&&(!t||t==="tag:yaml.org,2002:float")&&/^\d/.test(r)){let o=r.indexOf(".");o<0&&(o=r.length,r+=".");let a=e-(r.length-o-1);for(;a-- >0;)r+="0"}return r}const ks={identify:s=>typeof s=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:s=>s.slice(-3).toLowerCase()==="nan"?NaN:s[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Y},Os={identify:s=>typeof s=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:s=>parseFloat(s),stringify(s){const e=Number(s.value);return isFinite(e)?e.toExponential():Y(s)}},Ts={identify:s=>typeof s=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(s){const e=new O(parseFloat(s)),t=s.indexOf(".");return t!==-1&&s[s.length-1]==="0"&&(e.minFractionDigits=s.length-t-1),e},stringify:Y},st=s=>typeof s=="bigint"||Number.isInteger(s),_t=(s,e,t,{intAsBigInt:n})=>n?BigInt(s):parseInt(s.substring(e),t);function Ns(s,e,t){const{value:n}=s;return st(n)&&n>=0?t+n.toString(e):Y(s)}const Es={identify:s=>st(s)&&s>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(s,e,t)=>_t(s,2,8,t),stringify:s=>Ns(s,8,"0o")},As={identify:st,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(s,e,t)=>_t(s,0,10,t),stringify:Y},Is={identify:s=>st(s)&&s>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(s,e,t)=>_t(s,2,16,t),stringify:s=>Ns(s,16,"0x")},vn=[ke,Oe,et,tt,Ct,Es,As,Is,ks,Os,Ts];function Gt(s){return typeof s=="bigint"||Number.isInteger(s)}const Pe=({value:s})=>JSON.stringify(s),Dn=[{identify:s=>typeof s=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:s=>s,stringify:Pe},{identify:s=>s==null,createNode:()=>new O(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:Pe},{identify:s=>typeof s=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:s=>s==="true",stringify:Pe},{identify:Gt,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(s,e,{intAsBigInt:t})=>t?BigInt(s):parseInt(s,10),stringify:({value:s})=>Gt(s)?s.toString():JSON.stringify(s)},{identify:s=>typeof s=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:s=>parseFloat(s),stringify:Pe}],jn={default:!0,tag:"",test:/^/,resolve(s,e){return e(`Unresolved plain scalar ${JSON.stringify(s)}`),s}},qn=[ke,Oe].concat(Dn,jn),Mt={identify:s=>s instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(s,e){if(typeof Buffer=="function")return Buffer.from(s,"base64");if(typeof atob=="function"){const t=atob(s.replace(/[\n\r]/g,"")),n=new Uint8Array(t.length);for(let i=0;i<t.length;++i)n[i]=t.charCodeAt(i);return n}else return e("This environment does not support reading binary tags; either Buffer or atob is required"),s},stringify({comment:s,type:e,value:t},n,i,r){const o=t;let a;if(typeof Buffer=="function")a=o instanceof Buffer?o.toString("base64"):Buffer.from(o.buffer).toString("base64");else if(typeof btoa=="function"){let l="";for(let c=0;c<o.length;++c)l+=String.fromCharCode(o[c]);a=btoa(l)}else throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(e||(e=O.BLOCK_LITERAL),e!==O.QUOTE_DOUBLE){const l=Math.max(n.options.lineWidth-n.indent.length,n.options.minContentWidth),c=Math.ceil(a.length/l),h=new Array(c);for(let f=0,p=0;f<c;++f,p+=l)h[f]=a.substr(p,l);a=h.join(e===O.BLOCK_LITERAL?`
111
+ `:" ")}return ve({comment:s,type:e,value:a},n,i,r)}};function $s(s,e){var t;if(Se(s))for(let n=0;n<s.items.length;++n){let i=s.items[n];if(!I(i)){if(we(i)){i.items.length>1&&e("Each pair must have its own sequence indicator");const r=i.items[0]||new j(new O(null));if(i.commentBefore&&(r.key.commentBefore=r.key.commentBefore?`${i.commentBefore}
112
+ ${r.key.commentBefore}`:i.commentBefore),i.comment){const o=(t=r.value)!=null?t:r.key;o.comment=o.comment?`${i.comment}
113
+ ${o.comment}`:i.comment}i=r}s.items[n]=I(i)?i:new j(i)}}else e("Expected a sequence for this tag");return s}function Ls(s,e,t){const{replacer:n}=t,i=new x(s);i.tag="tag:yaml.org,2002:pairs";let r=0;if(e&&Symbol.iterator in Object(e))for(let o of e){typeof n=="function"&&(o=n.call(e,String(r++),o));let a,l;if(Array.isArray(o))if(o.length===2)a=o[0],l=o[1];else throw new TypeError(`Expected [key, value] tuple: ${o}`);else if(o&&o instanceof Object){const c=Object.keys(o);if(c.length===1)a=c[0],l=o[a];else throw new TypeError(`Expected tuple with one key, not ${c.length} keys`)}else a=o;i.items.push(Lt(a,l,t))}return i}const vt={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:$s,createNode:Ls};class de extends x{constructor(){super(),this.add=R.prototype.add.bind(this),this.delete=R.prototype.delete.bind(this),this.get=R.prototype.get.bind(this),this.has=R.prototype.has.bind(this),this.set=R.prototype.set.bind(this),this.tag=de.tag}toJSON(e,t){if(!t)return super.toJSON(e);const n=new Map;t!=null&&t.onCreate&&t.onCreate(n);for(const i of this.items){let r,o;if(I(i)?(r=U(i.key,"",t),o=U(i.value,r,t)):r=U(i,"",t),n.has(r))throw new Error("Ordered maps must not include duplicate keys");n.set(r,o)}return n}static from(e,t,n){const i=Ls(e,t,n),r=new this;return r.items=i.items,r}}de.tag="tag:yaml.org,2002:omap";const Dt={collection:"seq",identify:s=>s instanceof Map,nodeClass:de,default:!1,tag:"tag:yaml.org,2002:omap",resolve(s,e){const t=$s(s,e),n=[];for(const{key:i}of t.items)A(i)&&(n.includes(i.value)?e(`Ordered maps must not include duplicate keys: ${i.value}`):n.push(i.value));return Object.assign(new de,t)},createNode:(s,e,t)=>de.from(s,e,t)};function Cs({value:s,source:e},t){return e&&(s?_s:Ms).test.test(e)?e:s?t.options.trueStr:t.options.falseStr}const _s={identify:s=>s===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new O(!0),stringify:Cs},Ms={identify:s=>s===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new O(!1),stringify:Cs},Bn={identify:s=>typeof s=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:s=>s.slice(-3).toLowerCase()==="nan"?NaN:s[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Y},Pn={identify:s=>typeof s=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:s=>parseFloat(s.replace(/_/g,"")),stringify(s){const e=Number(s.value);return isFinite(e)?e.toExponential():Y(s)}},Kn={identify:s=>typeof s=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(s){const e=new O(parseFloat(s.replace(/_/g,""))),t=s.indexOf(".");if(t!==-1){const n=s.substring(t+1).replace(/_/g,"");n[n.length-1]==="0"&&(e.minFractionDigits=n.length)}return e},stringify:Y},De=s=>typeof s=="bigint"||Number.isInteger(s);function nt(s,e,t,{intAsBigInt:n}){const i=s[0];if((i==="-"||i==="+")&&(e+=1),s=s.substring(e).replace(/_/g,""),n){switch(t){case 2:s=`0b${s}`;break;case 8:s=`0o${s}`;break;case 16:s=`0x${s}`;break}const o=BigInt(s);return i==="-"?BigInt(-1)*o:o}const r=parseInt(s,t);return i==="-"?-1*r:r}function jt(s,e,t){const{value:n}=s;if(De(n)){const i=n.toString(e);return n<0?"-"+t+i.substr(1):t+i}return Y(s)}const Fn={identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(s,e,t)=>nt(s,2,2,t),stringify:s=>jt(s,2,"0b")},Rn={identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(s,e,t)=>nt(s,1,8,t),stringify:s=>jt(s,8,"0")},Un={identify:De,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(s,e,t)=>nt(s,0,10,t),stringify:Y},Vn={identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(s,e,t)=>nt(s,2,16,t),stringify:s=>jt(s,16,"0x")};class pe extends R{constructor(e){super(e),this.tag=pe.tag}add(e){let t;I(e)?t=e:e&&typeof e=="object"&&"key"in e&&"value"in e&&e.value===null?t=new j(e.key,null):t=new j(e,null),se(this.items,t.key)||this.items.push(t)}get(e,t){const n=se(this.items,e);return!t&&I(n)?A(n.key)?n.key.value:n.key:n}set(e,t){if(typeof t!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof t}`);const n=se(this.items,e);n&&!t?this.items.splice(this.items.indexOf(n),1):!n&&t&&this.items.push(new j(e))}toJSON(e,t){return super.toJSON(e,t,Set)}toString(e,t,n){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),t,n);throw new Error("Set items must all have null values")}static from(e,t,n){const{replacer:i}=n,r=new this(e);if(t&&Symbol.iterator in Object(t))for(let o of t)typeof i=="function"&&(o=i.call(t,o,o)),r.items.push(Lt(o,null,n));return r}}pe.tag="tag:yaml.org,2002:set";const qt={collection:"map",identify:s=>s instanceof Set,nodeClass:pe,default:!1,tag:"tag:yaml.org,2002:set",createNode:(s,e,t)=>pe.from(s,e,t),resolve(s,e){if(we(s)){if(s.hasAllNullValues(!0))return Object.assign(new pe,s);e("Set items must all have null values")}else e("Expected a mapping for this tag");return s}};function Bt(s,e){const t=s[0],n=t==="-"||t==="+"?s.substring(1):s,i=o=>e?BigInt(o):Number(o),r=n.replace(/_/g,"").split(":").reduce((o,a)=>o*i(60)+i(a),i(0));return t==="-"?i(-1)*r:r}function vs(s){let{value:e}=s,t=o=>o;if(typeof e=="bigint")t=o=>BigInt(o);else if(isNaN(e)||!isFinite(e))return Y(s);let n="";e<0&&(n="-",e*=t(-1));const i=t(60),r=[e%i];return e<60?r.unshift(0):(e=(e-r[0])/i,r.unshift(e%i),e>=60&&(e=(e-r[0])/i,r.unshift(e))),n+r.map(o=>String(o).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}const Ds={identify:s=>typeof s=="bigint"||Number.isInteger(s),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(s,e,{intAsBigInt:t})=>Bt(s,t),stringify:vs},js={identify:s=>typeof s=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:s=>Bt(s,!1),stringify:vs},it={identify:s=>s instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(s){const e=s.match(it.test);if(!e)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");const[,t,n,i,r,o,a]=e.map(Number),l=e[7]?Number((e[7]+"00").substr(1,3)):0;let c=Date.UTC(t,n-1,i,r||0,o||0,a||0,l);const h=e[8];if(h&&h!=="Z"){let f=Bt(h,!1);Math.abs(f)<30&&(f*=60),c-=6e4*f}return new Date(c)},stringify:({value:s})=>s.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")},Ht=[ke,Oe,et,tt,_s,Ms,Fn,Rn,Un,Vn,Bn,Pn,Kn,Mt,Dt,vt,qt,Ds,js,it],zt=new Map([["core",vn],["failsafe",[ke,Oe,et]],["json",qn],["yaml11",Ht],["yaml-1.1",Ht]]),Xt={binary:Mt,bool:Ct,float:Ts,floatExp:Os,floatNaN:ks,floatTime:js,int:As,intHex:Is,intOct:Es,intTime:Ds,map:ke,null:tt,omap:Dt,pairs:vt,seq:Oe,set:qt,timestamp:it},Jn={"tag:yaml.org,2002:binary":Mt,"tag:yaml.org,2002:omap":Dt,"tag:yaml.org,2002:pairs":vt,"tag:yaml.org,2002:set":qt,"tag:yaml.org,2002:timestamp":it};function dt(s,e){let t=zt.get(e);if(!t)if(Array.isArray(s))t=[];else{const n=Array.from(zt.keys()).filter(i=>i!=="yaml11").map(i=>JSON.stringify(i)).join(", ");throw new Error(`Unknown schema "${e}"; use one of ${n} or define customTags array`)}if(Array.isArray(s))for(const n of s)t=t.concat(n);else typeof s=="function"&&(t=s(t.slice()));return t.map(n=>{if(typeof n!="string")return n;const i=Xt[n];if(i)return i;const r=Object.keys(Xt).map(o=>JSON.stringify(o)).join(", ");throw new Error(`Unknown custom tag "${n}"; use one of ${r}`)})}const Yn=(s,e)=>s.key<e.key?-1:s.key>e.key?1:0;class rt{constructor({compat:e,customTags:t,merge:n,resolveKnownTags:i,schema:r,sortMapEntries:o,toStringDefaults:a}){this.compat=Array.isArray(e)?dt(e,"compat"):e?dt(null,e):null,this.merge=!!n,this.name=typeof r=="string"&&r||"core",this.knownTags=i?Jn:{},this.tags=dt(t,this.name),this.toStringOptions=a!=null?a:null,Object.defineProperty(this,z,{value:ke}),Object.defineProperty(this,G,{value:et}),Object.defineProperty(this,ge,{value:Oe}),this.sortMapEntries=typeof o=="function"?o:o===!0?Yn:null}clone(){const e=Object.create(rt.prototype,Object.getOwnPropertyDescriptors(this));return e.tags=this.tags.slice(),e}}function Wn(s,e){var l;const t=[];let n=e.directives===!0;if(e.directives!==!1&&s.directives){const c=s.directives.toString(s);c?(t.push(c),n=!0):s.directives.docStart&&(n=!0)}n&&t.push("---");const i=gs(s,e),{commentString:r}=i.options;if(s.commentBefore){t.length!==1&&t.unshift("");const c=r(s.commentBefore);t.unshift(Q(c,""))}let o=!1,a=null;if(s.contents){if(M(s.contents)){if(s.contents.spaceBefore&&n&&t.push(""),s.contents.commentBefore){const f=r(s.contents.commentBefore);t.push(Q(f,""))}i.forceBlockIndent=!!s.comment,a=s.contents.comment}const c=a?void 0:()=>o=!0;let h=me(s.contents,i,()=>a=null,c);a&&(h+=te(h,"",r(a))),(h[0]==="|"||h[0]===">")&&t[t.length-1]==="---"?t[t.length-1]=`--- ${h}`:t.push(h)}else t.push(me(s.contents,i));if((l=s.directives)!=null&&l.docEnd)if(s.comment){const c=r(s.comment);c.includes(`
114
+ `)?(t.push("..."),t.push(Q(c,""))):t.push(`... ${c}`)}else t.push("...");else{let c=s.comment;c&&o&&(c=c.replace(/^\n+/,"")),c&&((!o||a)&&t[t.length-1]!==""&&t.push(""),t.push(Q(r(c),"")))}return t.join(`
115
+ `)+`
116
+ `}class Te{constructor(e,t,n){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,V,{value:kt});let i=null;typeof t=="function"||Array.isArray(t)?i=t:n===void 0&&t&&(n=t,t=void 0);const r=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,uniqueKeys:!0,version:"1.2"},n);this.options=r;let{version:o}=r;n!=null&&n._directives?(this.directives=n._directives.atDocument(),this.directives.yaml.explicit&&(o=this.directives.yaml.version)):this.directives=new q({version:o}),this.setSchema(o,n),this.contents=e===void 0?null:this.createNode(e,i,n)}clone(){const e=Object.create(Te.prototype,{[V]:{value:kt}});return e.commentBefore=this.commentBefore,e.comment=this.comment,e.errors=this.errors.slice(),e.warnings=this.warnings.slice(),e.options=Object.assign({},this.options),this.directives&&(e.directives=this.directives.clone()),e.schema=this.schema.clone(),e.contents=M(this.contents)?this.contents.clone(e.schema):this.contents,this.range&&(e.range=this.range.slice()),e}add(e){ae(this.contents)&&this.contents.add(e)}addIn(e,t){ae(this.contents)&&this.contents.addIn(e,t)}createAlias(e,t){if(!e.anchor){const n=hs(this);e.anchor=!t||n.has(t)?ds(t||"a",n):t}return new ze(e.anchor)}createNode(e,t,n){let i;if(typeof t=="function")e=t.call({"":e},"",e),i=t;else if(Array.isArray(t)){const g=S=>typeof S=="number"||S instanceof String||S instanceof Number,b=t.filter(g).map(String);b.length>0&&(t=t.concat(b)),i=t}else n===void 0&&t&&(n=t,t=void 0);const{aliasDuplicateObjects:r,anchorPrefix:o,flow:a,keepUndefined:l,onTagObj:c,tag:h}=n!=null?n:{},{onAnchor:f,setAnchors:p,sourceObjects:m}=Sn(this,o||"a"),y={aliasDuplicateObjects:r!=null?r:!0,keepUndefined:l!=null?l:!1,onAnchor:f,onTagObj:c,replacer:i,schema:this.schema,sourceObjects:m},u=Ce(e,h,y);return a&&L(u)&&(u.flow=!0),p(),u}createPair(e,t,n={}){const i=this.createNode(e,null,n),r=this.createNode(t,null,n);return new j(i,r)}delete(e){return ae(this.contents)?this.contents.delete(e):!1}deleteIn(e){return Ae(e)?this.contents==null?!1:(this.contents=null,!0):ae(this.contents)?this.contents.deleteIn(e):!1}get(e,t){return L(this.contents)?this.contents.get(e,t):void 0}getIn(e,t){return Ae(e)?!t&&A(this.contents)?this.contents.value:this.contents:L(this.contents)?this.contents.getIn(e,t):void 0}has(e){return L(this.contents)?this.contents.has(e):!1}hasIn(e){return Ae(e)?this.contents!==void 0:L(this.contents)?this.contents.hasIn(e):!1}set(e,t){this.contents==null?this.contents=Ye(this.schema,[e],t):ae(this.contents)&&this.contents.set(e,t)}setIn(e,t){Ae(e)?this.contents=t:this.contents==null?this.contents=Ye(this.schema,Array.from(e),t):ae(this.contents)&&this.contents.setIn(e,t)}setSchema(e,t={}){typeof e=="number"&&(e=String(e));let n;switch(e){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new q({version:"1.1"}),n={merge:!0,resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=e:this.directives=new q({version:e}),n={merge:!1,resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,n=null;break;default:{const i=JSON.stringify(e);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${i}`)}}if(t.schema instanceof Object)this.schema=t.schema;else if(n)this.schema=new rt(Object.assign(n,t));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:e,jsonArg:t,mapAsMap:n,maxAliasCount:i,onAnchor:r,reviver:o}={}){const a={anchors:new Map,doc:this,keep:!e,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof i=="number"?i:100},l=U(this.contents,t!=null?t:"",a);if(typeof r=="function")for(const{count:c,res:h}of a.anchors.values())r(h,c);return typeof o=="function"?ue(o,{"":l},"",l):l}toJSON(e,t){return this.toJS({json:!0,jsonArg:e,mapAsMap:!1,onAnchor:t})}toString(e={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in e&&(!Number.isInteger(e.indent)||Number(e.indent)<=0)){const t=JSON.stringify(e.indent);throw new Error(`"indent" option must be a positive integer, not ${t}`)}return Wn(this,e)}}function ae(s){if(L(s))return!0;throw new Error("Expected a YAML collection as document contents")}class Pt extends Error{constructor(e,t,n,i){super(),this.name=e,this.code=n,this.message=i,this.pos=t}}class ne extends Pt{constructor(e,t,n){super("YAMLParseError",e,t,n)}}class qs extends Pt{constructor(e,t,n){super("YAMLWarning",e,t,n)}}const Qe=(s,e)=>t=>{if(t.pos[0]===-1)return;t.linePos=t.pos.map(a=>e.linePos(a));const{line:n,col:i}=t.linePos[0];t.message+=` at line ${n}, column ${i}`;let r=i-1,o=s.substring(e.lineStarts[n-1],e.lineStarts[n]).replace(/[\n\r]+$/,"");if(r>=60&&o.length>80){const a=Math.min(r-39,o.length-79);o="…"+o.substring(a),r-=a-1}if(o.length>80&&(o=o.substring(0,79)+"…"),n>1&&/^ *$/.test(o.substring(0,r))){let a=s.substring(e.lineStarts[n-2],e.lineStarts[n-1]);a.length>80&&(a=a.substring(0,79)+`…
117
+ `),o=a+o}if(/[^ ]/.test(o)){let a=1;const l=t.linePos[1];l&&l.line===n&&l.col>i&&(a=Math.max(1,Math.min(l.col-i,80-r)));const c=" ".repeat(r)+"^".repeat(a);t.message+=`:
118
+
119
+ ${o}
120
+ ${c}
121
+ `}};function ye(s,{flow:e,indicator:t,next:n,offset:i,onError:r,parentIndent:o,startOnNewline:a}){let l=!1,c=a,h=a,f="",p="",m=!1,y=!1,u=null,g=null,b=null,S=null,E=null,k=null,T=null;for(const w of s)switch(y&&(w.type!=="space"&&w.type!=="newline"&&w.type!=="comma"&&r(w.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),y=!1),u&&(c&&w.type!=="comment"&&w.type!=="newline"&&r(u,"TAB_AS_INDENT","Tabs are not allowed as indentation"),u=null),w.type){case"space":!e&&(t!=="doc-start"||(n==null?void 0:n.type)!=="flow-collection")&&w.source.includes(" ")&&(u=w),h=!0;break;case"comment":{h||r(w,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");const $=w.source.substring(1)||" ";f?f+=p+$:f=$,p="",c=!1;break}case"newline":c?f?f+=w.source:l=!0:p+=w.source,c=!0,m=!0,(g||b)&&(S=w),h=!0;break;case"anchor":g&&r(w,"MULTIPLE_ANCHORS","A node can have at most one anchor"),w.source.endsWith(":")&&r(w.offset+w.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),g=w,T===null&&(T=w.offset),c=!1,h=!1,y=!0;break;case"tag":{b&&r(w,"MULTIPLE_TAGS","A node can have at most one tag"),b=w,T===null&&(T=w.offset),c=!1,h=!1,y=!0;break}case t:(g||b)&&r(w,"BAD_PROP_ORDER",`Anchors and tags must be after the ${w.source} indicator`),k&&r(w,"UNEXPECTED_TOKEN",`Unexpected ${w.source} in ${e!=null?e:"collection"}`),k=w,c=t==="seq-item-ind"||t==="explicit-key-ind",h=!1;break;case"comma":if(e){E&&r(w,"UNEXPECTED_TOKEN",`Unexpected , in ${e}`),E=w,c=!1,h=!1;break}default:r(w,"UNEXPECTED_TOKEN",`Unexpected ${w.type} token`),c=!1,h=!1}const N=s[s.length-1],C=N?N.offset+N.source.length:i;return y&&n&&n.type!=="space"&&n.type!=="newline"&&n.type!=="comma"&&(n.type!=="scalar"||n.source!=="")&&r(n.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),u&&(c&&u.indent<=o||(n==null?void 0:n.type)==="block-map"||(n==null?void 0:n.type)==="block-seq")&&r(u,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:E,found:k,spaceBefore:l,comment:f,hasNewline:m,anchor:g,tag:b,newlineAfterProp:S,end:C,start:T!=null?T:C}}function _e(s){if(!s)return null;switch(s.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(s.source.includes(`
122
+ `))return!0;if(s.end){for(const e of s.end)if(e.type==="newline")return!0}return!1;case"flow-collection":for(const e of s.items){for(const t of e.start)if(t.type==="newline")return!0;if(e.sep){for(const t of e.sep)if(t.type==="newline")return!0}if(_e(e.key)||_e(e.value))return!0}return!1;default:return!0}}function Et(s,e,t){if((e==null?void 0:e.type)==="flow-collection"){const n=e.end[0];n.indent===s&&(n.source==="]"||n.source==="}")&&_e(e)&&t(n,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}function Bs(s,e,t){const{uniqueKeys:n}=s.options;if(n===!1)return!1;const i=typeof n=="function"?n:(r,o)=>r===o||A(r)&&A(o)&&r.value===o.value&&!(r.value==="<<"&&s.schema.merge);return e.some(r=>i(r.key,t))}const xt="All mapping items must start at the same column";function Qn({composeNode:s,composeEmptyNode:e},t,n,i,r){var h,f;const o=(h=r==null?void 0:r.nodeClass)!=null?h:R,a=new o(t.schema);t.atRoot&&(t.atRoot=!1);let l=n.offset,c=null;for(const p of n.items){const{start:m,key:y,sep:u,value:g}=p,b=ye(m,{indicator:"explicit-key-ind",next:y!=null?y:u==null?void 0:u[0],offset:l,onError:i,parentIndent:n.indent,startOnNewline:!0}),S=!b.found;if(S){if(y&&(y.type==="block-seq"?i(l,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in y&&y.indent!==n.indent&&i(l,"BAD_INDENT",xt)),!b.anchor&&!b.tag&&!u){c=b.end,b.comment&&(a.comment?a.comment+=`
123
+ `+b.comment:a.comment=b.comment);continue}(b.newlineAfterProp||_e(y))&&i(y!=null?y:m[m.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else((f=b.found)==null?void 0:f.indent)!==n.indent&&i(l,"BAD_INDENT",xt);const E=b.end,k=y?s(t,y,b,i):e(t,E,m,null,b,i);t.schema.compat&&Et(n.indent,y,i),Bs(t,a.items,k)&&i(E,"DUPLICATE_KEY","Map keys must be unique");const T=ye(u!=null?u:[],{indicator:"map-value-ind",next:g,offset:k.range[2],onError:i,parentIndent:n.indent,startOnNewline:!y||y.type==="block-scalar"});if(l=T.end,T.found){S&&((g==null?void 0:g.type)==="block-map"&&!T.hasNewline&&i(l,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),t.options.strict&&b.start<T.found.offset-1024&&i(k.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key"));const N=g?s(t,g,T,i):e(t,l,u,null,T,i);t.schema.compat&&Et(n.indent,g,i),l=N.range[2];const C=new j(k,N);t.options.keepSourceTokens&&(C.srcToken=p),a.items.push(C)}else{S&&i(k.range,"MISSING_CHAR","Implicit map keys need to be followed by map values"),T.comment&&(k.comment?k.comment+=`
124
+ `+T.comment:k.comment=T.comment);const N=new j(k);t.options.keepSourceTokens&&(N.srcToken=p),a.items.push(N)}}return c&&c<l&&i(c,"IMPOSSIBLE","Map comment with trailing content"),a.range=[n.offset,l,c!=null?c:l],a}function Gn({composeNode:s,composeEmptyNode:e},t,n,i,r){var h;const o=(h=r==null?void 0:r.nodeClass)!=null?h:x,a=new o(t.schema);t.atRoot&&(t.atRoot=!1);let l=n.offset,c=null;for(const{start:f,value:p}of n.items){const m=ye(f,{indicator:"seq-item-ind",next:p,offset:l,onError:i,parentIndent:n.indent,startOnNewline:!0});if(!m.found)if(m.anchor||m.tag||p)p&&p.type==="block-seq"?i(m.end,"BAD_INDENT","All sequence items must start at the same column"):i(l,"MISSING_CHAR","Sequence item without - indicator");else{c=m.end,m.comment&&(a.comment=m.comment);continue}const y=p?s(t,p,m,i):e(t,m.end,f,null,m,i);t.schema.compat&&Et(n.indent,p,i),l=y.range[2],a.items.push(y)}return a.range=[n.offset,l,c!=null?c:l],a}function je(s,e,t,n){let i="";if(s){let r=!1,o="";for(const a of s){const{source:l,type:c}=a;switch(c){case"space":r=!0;break;case"comment":{t&&!r&&n(a,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");const h=l.substring(1)||" ";i?i+=o+h:i=h,o="";break}case"newline":i&&(o+=l),r=!0;break;default:n(a,"UNEXPECTED_TOKEN",`Unexpected ${c} at node end`)}e+=l.length}}return{comment:i,offset:e}}const pt="Block collections are not allowed within flow collections",mt=s=>s&&(s.type==="block-map"||s.type==="block-seq");function Hn({composeNode:s,composeEmptyNode:e},t,n,i,r){var g,b;const o=n.start.source==="{",a=o?"flow map":"flow sequence",l=(g=r==null?void 0:r.nodeClass)!=null?g:o?R:x,c=new l(t.schema);c.flow=!0;const h=t.atRoot;h&&(t.atRoot=!1);let f=n.offset+n.start.source.length;for(let S=0;S<n.items.length;++S){const E=n.items[S],{start:k,key:T,sep:N,value:C}=E,w=ye(k,{flow:a,indicator:"explicit-key-ind",next:T!=null?T:N==null?void 0:N[0],offset:f,onError:i,parentIndent:n.indent,startOnNewline:!1});if(!w.found){if(!w.anchor&&!w.tag&&!N&&!C){S===0&&w.comma?i(w.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${a}`):S<n.items.length-1&&i(w.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${a}`),w.comment&&(c.comment?c.comment+=`
125
+ `+w.comment:c.comment=w.comment),f=w.end;continue}!o&&t.options.strict&&_e(T)&&i(T,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(S===0)w.comma&&i(w.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${a}`);else if(w.comma||i(w.start,"MISSING_CHAR",`Missing , between ${a} items`),w.comment){let $="";e:for(const _ of k)switch(_.type){case"comma":case"space":break;case"comment":$=_.source.substring(1);break e;default:break e}if($){let _=c.items[c.items.length-1];I(_)&&(_=(b=_.value)!=null?b:_.key),_.comment?_.comment+=`
126
+ `+$:_.comment=$,w.comment=w.comment.substring($.length+1)}}if(!o&&!N&&!w.found){const $=C?s(t,C,w,i):e(t,w.end,N,null,w,i);c.items.push($),f=$.range[2],mt(C)&&i($.range,"BLOCK_IN_FLOW",pt)}else{const $=w.end,_=T?s(t,T,w,i):e(t,$,k,null,w,i);mt(T)&&i(_.range,"BLOCK_IN_FLOW",pt);const D=ye(N!=null?N:[],{flow:a,indicator:"map-value-ind",next:C,offset:_.range[2],onError:i,parentIndent:n.indent,startOnNewline:!1});if(D.found){if(!o&&!w.found&&t.options.strict){if(N)for(const v of N){if(v===D.found)break;if(v.type==="newline"){i(v,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}w.start<D.found.offset-1024&&i(D.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else C&&("source"in C&&C.source&&C.source[0]===":"?i(C,"MISSING_CHAR",`Missing space after : in ${a}`):i(D.start,"MISSING_CHAR",`Missing , or : between ${a} items`));const Z=C?s(t,C,D,i):D.found?e(t,D.end,N,null,D,i):null;Z?mt(C)&&i(Z.range,"BLOCK_IN_FLOW",pt):D.comment&&(_.comment?_.comment+=`
127
+ `+D.comment:_.comment=D.comment);const oe=new j(_,Z);if(t.options.keepSourceTokens&&(oe.srcToken=E),o){const v=c;Bs(t,v.items,_)&&i($,"DUPLICATE_KEY","Map keys must be unique"),v.items.push(oe)}else{const v=new R(t.schema);v.flow=!0,v.items.push(oe),c.items.push(v)}f=Z?Z.range[2]:D.end}}const p=o?"}":"]",[m,...y]=n.end;let u=f;if(m&&m.source===p)u=m.offset+m.source.length;else{const S=a[0].toUpperCase()+a.substring(1),E=h?`${S} must end with a ${p}`:`${S} in block collection must be sufficiently indented and end with a ${p}`;i(f,h?"MISSING_CHAR":"BAD_INDENT",E),m&&m.source.length!==1&&y.unshift(m)}if(y.length>0){const S=je(y,u,t.options.strict,i);S.comment&&(c.comment?c.comment+=`
128
+ `+S.comment:c.comment=S.comment),c.range=[n.offset,u,S.offset]}else c.range=[n.offset,u,u];return c}function yt(s,e,t,n,i,r){const o=t.type==="block-map"?Qn(s,e,t,n,r):t.type==="block-seq"?Gn(s,e,t,n,r):Hn(s,e,t,n,r),a=o.constructor;return i==="!"||i===a.tagName?(o.tag=a.tagName,o):(i&&(o.tag=i),o)}function zn(s,e,t,n,i){var p,m;const r=n.tag,o=r?e.directives.tagName(r.source,y=>i(r,"TAG_RESOLVE_FAILED",y)):null;if(t.type==="block-seq"){const{anchor:y,newlineAfterProp:u}=n,g=y&&r?y.offset>r.offset?y:r:y!=null?y:r;g&&(!u||u.offset<g.offset)&&i(g,"MISSING_CHAR","Missing newline after block sequence props")}const a=t.type==="block-map"?"map":t.type==="block-seq"?"seq":t.start.source==="{"?"map":"seq";if(!r||!o||o==="!"||o===R.tagName&&a==="map"||o===x.tagName&&a==="seq")return yt(s,e,t,i,o);let l=e.schema.tags.find(y=>y.tag===o&&y.collection===a);if(!l){const y=e.schema.knownTags[o];if(y&&y.collection===a)e.schema.tags.push(Object.assign({},y,{default:!1})),l=y;else return y!=null&&y.collection?i(r,"BAD_COLLECTION_TYPE",`${y.tag} used for ${a} collection, but expects ${y.collection}`,!0):i(r,"TAG_RESOLVE_FAILED",`Unresolved tag: ${o}`,!0),yt(s,e,t,i,o)}const c=yt(s,e,t,i,o,l),h=(m=(p=l.resolve)==null?void 0:p.call(l,c,y=>i(r,"TAG_RESOLVE_FAILED",y),e.options))!=null?m:c,f=M(h)?h:new O(h);return f.range=c.range,f.tag=o,l!=null&&l.format&&(f.format=l.format),f}function Ps(s,e,t){const n=e.offset,i=Xn(e,s.options.strict,t);if(!i)return{value:"",type:null,comment:"",range:[n,n,n]};const r=i.mode===">"?O.BLOCK_FOLDED:O.BLOCK_LITERAL,o=e.source?xn(e.source):[];let a=o.length;for(let u=o.length-1;u>=0;--u){const g=o[u][1];if(g===""||g==="\r")a=u;else break}if(a===0){const u=i.chomp==="+"&&o.length>0?`
129
+ `.repeat(Math.max(1,o.length-1)):"";let g=n+i.length;return e.source&&(g+=e.source.length),{value:u,type:r,comment:i.comment,range:[n,g,g]}}let l=e.indent+i.indent,c=e.offset+i.length,h=0;for(let u=0;u<a;++u){const[g,b]=o[u];if(b===""||b==="\r")i.indent===0&&g.length>l&&(l=g.length);else{g.length<l&&t(c+g.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator"),i.indent===0&&(l=g.length),h=u,l===0&&!s.atRoot&&t(c,"BAD_INDENT","Block scalar values in collections must be indented");break}c+=g.length+b.length+1}for(let u=o.length-1;u>=a;--u)o[u][0].length>l&&(a=u+1);let f="",p="",m=!1;for(let u=0;u<h;++u)f+=o[u][0].slice(l)+`
130
+ `;for(let u=h;u<a;++u){let[g,b]=o[u];c+=g.length+b.length+1;const S=b[b.length-1]==="\r";if(S&&(b=b.slice(0,-1)),b&&g.length<l){const k=`Block scalar lines must not be less indented than their ${i.indent?"explicit indentation indicator":"first line"}`;t(c-b.length-(S?2:1),"BAD_INDENT",k),g=""}r===O.BLOCK_LITERAL?(f+=p+g.slice(l)+b,p=`
131
+ `):g.length>l||b[0]===" "?(p===" "?p=`
132
+ `:!m&&p===`
133
+ `&&(p=`
134
+
135
+ `),f+=p+g.slice(l)+b,p=`
136
+ `,m=!0):b===""?p===`
137
+ `?f+=`
138
+ `:p=`
139
+ `:(f+=p+b,p=" ",m=!1)}switch(i.chomp){case"-":break;case"+":for(let u=a;u<o.length;++u)f+=`
140
+ `+o[u][0].slice(l);f[f.length-1]!==`
141
+ `&&(f+=`
142
+ `);break;default:f+=`
143
+ `}const y=n+i.length+e.source.length;return{value:f,type:r,comment:i.comment,range:[n,y,y]}}function Xn({offset:s,props:e},t,n){if(e[0].type!=="block-scalar-header")return n(e[0],"IMPOSSIBLE","Block scalar header not found"),null;const{source:i}=e[0],r=i[0];let o=0,a="",l=-1;for(let p=1;p<i.length;++p){const m=i[p];if(!a&&(m==="-"||m==="+"))a=m;else{const y=Number(m);!o&&y?o=y:l===-1&&(l=s+p)}}l!==-1&&n(l,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${i}`);let c=!1,h="",f=i.length;for(let p=1;p<e.length;++p){const m=e[p];switch(m.type){case"space":c=!0;case"newline":f+=m.source.length;break;case"comment":t&&!c&&n(m,"MISSING_CHAR","Comments must be separated from other tokens by white space characters"),f+=m.source.length,h=m.source.substring(1);break;case"error":n(m,"UNEXPECTED_TOKEN",m.message),f+=m.source.length;break;default:{const y=`Unexpected token in block scalar header: ${m.type}`;n(m,"UNEXPECTED_TOKEN",y);const u=m.source;u&&typeof u=="string"&&(f+=u.length)}}}return{mode:r,indent:o,chomp:a,comment:h,length:f}}function xn(s){const e=s.split(/\n( *)/),t=e[0],n=t.match(/^( *)/),r=[n!=null&&n[1]?[n[1],t.slice(n[1].length)]:["",t]];for(let o=1;o<e.length;o+=2)r.push([e[o],e[o+1]]);return r}function Ks(s,e,t){const{offset:n,type:i,source:r,end:o}=s;let a,l;const c=(p,m,y)=>t(n+p,m,y);switch(i){case"scalar":a=O.PLAIN,l=Zn(r,c);break;case"single-quoted-scalar":a=O.QUOTE_SINGLE,l=ei(r,c);break;case"double-quoted-scalar":a=O.QUOTE_DOUBLE,l=ti(r,c);break;default:return t(s,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${i}`),{value:"",type:null,comment:"",range:[n,n+r.length,n+r.length]}}const h=n+r.length,f=je(o,h,e,t);return{value:l,type:a,comment:f.comment,range:[n,h,f.offset]}}function Zn(s,e){let t="";switch(s[0]){case" ":t="a tab character";break;case",":t="flow indicator character ,";break;case"%":t="directive indicator character %";break;case"|":case">":{t=`block scalar indicator ${s[0]}`;break}case"@":case"`":{t=`reserved character ${s[0]}`;break}}return t&&e(0,"BAD_SCALAR_START",`Plain value cannot start with ${t}`),Fs(s)}function ei(s,e){return(s[s.length-1]!=="'"||s.length===1)&&e(s.length,"MISSING_CHAR","Missing closing 'quote"),Fs(s.slice(1,-1)).replace(/''/g,"'")}function Fs(s){var l;let e,t;try{e=new RegExp(`(.*?)(?<![ ])[ ]*\r?
144
+ `,"sy"),t=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
145
+ `,"sy")}catch(c){e=new RegExp("(.*?)[ \\t]*\\r?\\n","sy"),t=new RegExp("[ \\t]*(.*?)[ \\t]*\\r?\\n","sy")}let n=e.exec(s);if(!n)return s;let i=n[1],r=" ",o=e.lastIndex;for(t.lastIndex=o;n=t.exec(s);)n[1]===""?r===`
146
+ `?i+=r:r=`
147
+ `:(i+=r+n[1],r=" "),o=t.lastIndex;const a=new RegExp("[ \\t]*(.*)","sy");return a.lastIndex=o,n=a.exec(s),i+r+((l=n==null?void 0:n[1])!=null?l:"")}function ti(s,e){let t="";for(let n=1;n<s.length-1;++n){const i=s[n];if(!(i==="\r"&&s[n+1]===`
148
+ `))if(i===`
149
+ `){const{fold:r,offset:o}=si(s,n);t+=r,n=o}else if(i==="\\"){let r=s[++n];const o=ni[r];if(o)t+=o;else if(r===`
150
+ `)for(r=s[n+1];r===" "||r===" ";)r=s[++n+1];else if(r==="\r"&&s[n+1]===`
151
+ `)for(r=s[++n+1];r===" "||r===" ";)r=s[++n+1];else if(r==="x"||r==="u"||r==="U"){const a={x:2,u:4,U:8}[r];t+=ii(s,n+1,a,e),n+=a}else{const a=s.substr(n-1,2);e(n-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${a}`),t+=a}}else if(i===" "||i===" "){const r=n;let o=s[n+1];for(;o===" "||o===" ";)o=s[++n+1];o!==`
152
+ `&&!(o==="\r"&&s[n+2]===`
153
+ `)&&(t+=n>r?s.slice(r,n+1):i)}else t+=i}return(s[s.length-1]!=='"'||s.length===1)&&e(s.length,"MISSING_CHAR",'Missing closing "quote'),t}function si(s,e){let t="",n=s[e+1];for(;(n===" "||n===" "||n===`
154
+ `||n==="\r")&&!(n==="\r"&&s[e+2]!==`
155
+ `);)n===`
156
+ `&&(t+=`
157
+ `),e+=1,n=s[e+1];return t||(t=" "),{fold:t,offset:e}}const ni={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
158
+ `,r:"\r",t:" ",v:"\v",N:"…",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\"," ":" "};function ii(s,e,t,n){const i=s.substr(e,t),o=i.length===t&&/^[0-9a-fA-F]+$/.test(i)?parseInt(i,16):NaN;if(isNaN(o)){const a=s.substr(e-2,t+2);return n(e-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${a}`),a}return String.fromCodePoint(o)}function Rs(s,e,t,n){const{value:i,type:r,comment:o,range:a}=e.type==="block-scalar"?Ps(s,e,n):Ks(e,s.options.strict,n),l=t?s.directives.tagName(t.source,f=>n(t,"TAG_RESOLVE_FAILED",f)):null,c=t&&l?ri(s.schema,i,l,t,n):e.type==="scalar"?oi(s,i,e,n):s.schema[G];let h;try{const f=c.resolve(i,p=>n(t!=null?t:e,"TAG_RESOLVE_FAILED",p),s.options);h=A(f)?f:new O(f)}catch(f){const p=f instanceof Error?f.message:String(f);n(t!=null?t:e,"TAG_RESOLVE_FAILED",p),h=new O(i)}return h.range=a,h.source=i,r&&(h.type=r),l&&(h.tag=l),c.format&&(h.format=c.format),o&&(h.comment=o),h}function ri(s,e,t,n,i){var a;if(t==="!")return s[G];const r=[];for(const l of s.tags)if(!l.collection&&l.tag===t)if(l.default&&l.test)r.push(l);else return l;for(const l of r)if((a=l.test)!=null&&a.test(e))return l;const o=s.knownTags[t];return o&&!o.collection?(s.tags.push(Object.assign({},o,{default:!1,test:void 0})),o):(i(n,"TAG_RESOLVE_FAILED",`Unresolved tag: ${t}`,t!=="tag:yaml.org,2002:str"),s[G])}function oi({directives:s,schema:e},t,n,i){var o;const r=e.tags.find(a=>{var l;return a.default&&((l=a.test)==null?void 0:l.test(t))})||e[G];if(e.compat){const a=(o=e.compat.find(l=>{var c;return l.default&&((c=l.test)==null?void 0:c.test(t))}))!=null?o:e[G];if(r.tag!==a.tag){const l=s.tagString(r.tag),c=s.tagString(a.tag),h=`Value may be parsed as either ${l} or ${c}`;i(n,"TAG_RESOLVE_FAILED",h,!0)}}return r}function ai(s,e,t){if(e){t===null&&(t=e.length);for(let n=t-1;n>=0;--n){let i=e[n];switch(i.type){case"space":case"comment":case"newline":s-=i.source.length;continue}for(i=e[++n];(i==null?void 0:i.type)==="space";)s+=i.source.length,i=e[++n];break}}return s}const li={composeNode:Us,composeEmptyNode:Kt};function Us(s,e,t,n){const{spaceBefore:i,comment:r,anchor:o,tag:a}=t;let l,c=!0;switch(e.type){case"alias":l=ci(s,e,n),(o||a)&&n(e,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":l=Rs(s,e,a,n),o&&(l.anchor=o.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":l=zn(li,s,e,t,n),o&&(l.anchor=o.source.substring(1));break;default:{const h=e.type==="error"?e.message:`Unsupported token (type: ${e.type})`;n(e,"UNEXPECTED_TOKEN",h),l=Kt(s,e.offset,void 0,null,t,n),c=!1}}return o&&l.anchor===""&&n(o,"BAD_ALIAS","Anchor cannot be an empty string"),i&&(l.spaceBefore=!0),r&&(e.type==="scalar"&&e.source===""?l.comment=r:l.commentBefore=r),s.options.keepSourceTokens&&c&&(l.srcToken=e),l}function Kt(s,e,t,n,{spaceBefore:i,comment:r,anchor:o,tag:a,end:l},c){const h={type:"scalar",offset:ai(e,t,n),indent:-1,source:""},f=Rs(s,h,a,c);return o&&(f.anchor=o.source.substring(1),f.anchor===""&&c(o,"BAD_ALIAS","Anchor cannot be an empty string")),i&&(f.spaceBefore=!0),r&&(f.comment=r,f.range[2]=l),f}function ci({options:s},{offset:e,source:t,end:n},i){const r=new ze(t.substring(1));r.source===""&&i(e,"BAD_ALIAS","Alias cannot be an empty string"),r.source.endsWith(":")&&i(e+t.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);const o=e+t.length,a=je(n,o,s.strict,i);return r.range=[e,o,a.offset],a.comment&&(r.comment=a.comment),r}function fi(s,e,{offset:t,start:n,value:i,end:r},o){const a=Object.assign({_directives:e},s),l=new Te(void 0,a),c={atRoot:!0,directives:l.directives,options:l.options,schema:l.schema},h=ye(n,{indicator:"doc-start",next:i!=null?i:r==null?void 0:r[0],offset:t,onError:o,parentIndent:0,startOnNewline:!0});h.found&&(l.directives.docStart=!0,i&&(i.type==="block-map"||i.type==="block-seq")&&!h.hasNewline&&o(h.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),l.contents=i?Us(c,i,h,o):Kt(c,h.end,n,null,h,o);const f=l.contents.range[2],p=je(r,f,!1,o);return p.comment&&(l.comment=p.comment),l.range=[t,f,p.offset],l}function Ne(s){if(typeof s=="number")return[s,s+1];if(Array.isArray(s))return s.length===2?s:[s[0],s[1]];const{offset:e,source:t}=s;return[e,e+(typeof t=="string"?t.length:1)]}function Zt(s){var i;let e="",t=!1,n=!1;for(let r=0;r<s.length;++r){const o=s[r];switch(o[0]){case"#":e+=(e===""?"":n?`
159
+
160
+ `:`
161
+ `)+(o.substring(1)||" "),t=!0,n=!1;break;case"%":((i=s[r+1])==null?void 0:i[0])!=="#"&&(r+=1),t=!1;break;default:t||(n=!0),t=!1}}return{comment:e,afterEmptyLine:n}}class Ft{constructor(e={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(t,n,i,r)=>{const o=Ne(t);r?this.warnings.push(new qs(o,n,i)):this.errors.push(new ne(o,n,i))},this.directives=new q({version:e.version||"1.2"}),this.options=e}decorate(e,t){const{comment:n,afterEmptyLine:i}=Zt(this.prelude);if(n){const r=e.contents;if(t)e.comment=e.comment?`${e.comment}
162
+ ${n}`:n;else if(i||e.directives.docStart||!r)e.commentBefore=n;else if(L(r)&&!r.flow&&r.items.length>0){let o=r.items[0];I(o)&&(o=o.key);const a=o.commentBefore;o.commentBefore=a?`${n}
163
+ ${a}`:n}else{const o=r.commentBefore;r.commentBefore=o?`${n}
164
+ ${o}`:n}}t?(Array.prototype.push.apply(e.errors,this.errors),Array.prototype.push.apply(e.warnings,this.warnings)):(e.errors=this.errors,e.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:Zt(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(e,t=!1,n=-1){for(const i of e)yield*d(this.next(i));yield*d(this.end(t,n))}*next(e){switch(e.type){case"directive":this.directives.add(e.source,(t,n,i)=>{const r=Ne(e);r[0]+=t,this.onError(r,"BAD_DIRECTIVE",n,i)}),this.prelude.push(e.source),this.atDirectives=!0;break;case"document":{const t=fi(this.options,this.directives,e,this.onError);this.atDirectives&&!t.directives.docStart&&this.onError(e,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(t,!1),this.doc&&(yield this.doc),this.doc=t,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(e.source);break;case"error":{const t=e.source?`${e.message}: ${JSON.stringify(e.source)}`:e.message,n=new ne(Ne(e),"UNEXPECTED_TOKEN",t);this.atDirectives||!this.doc?this.errors.push(n):this.doc.errors.push(n);break}case"doc-end":{if(!this.doc){const n="Unexpected doc-end without preceding document";this.errors.push(new ne(Ne(e),"UNEXPECTED_TOKEN",n));break}this.doc.directives.docEnd=!0;const t=je(e.end,e.offset+e.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),t.comment){const n=this.doc.comment;this.doc.comment=n?`${n}
165
+ ${t.comment}`:t.comment}this.doc.range[2]=t.offset;break}default:this.errors.push(new ne(Ne(e),"UNEXPECTED_TOKEN",`Unsupported token ${e.type}`))}}*end(e=!1,t=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(e){const n=Object.assign({_directives:this.directives},this.options),i=new Te(void 0,n);this.atDirectives&&this.onError(t,"MISSING_CHAR","Missing directives-end indicator line"),i.range=[0,t,t],this.decorate(i,!1),yield i}}}function ui(s,e=!0,t){if(s){const n=(i,r,o)=>{const a=typeof i=="number"?i:Array.isArray(i)?i[0]:i.offset;if(t)t(a,r,o);else throw new ne([a,a+1],r,o)};switch(s.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return Ks(s,e,n);case"block-scalar":return Ps({options:{strict:e}},s,n)}}return null}function hi(s,e){var c;const{implicitKey:t=!1,indent:n,inFlow:i=!1,offset:r=-1,type:o="PLAIN"}=e,a=ve({type:o,value:s},{implicitKey:t,indent:n>0?" ".repeat(n):"",inFlow:i,options:{blockQuote:!0,lineWidth:-1}}),l=(c=e.end)!=null?c:[{type:"newline",offset:-1,indent:n,source:`
166
+ `}];switch(a[0]){case"|":case">":{const h=a.indexOf(`
167
+ `),f=a.substring(0,h),p=a.substring(h+1)+`
168
+ `,m=[{type:"block-scalar-header",offset:r,indent:n,source:f}];return Vs(m,l)||m.push({type:"newline",offset:-1,indent:n,source:`
169
+ `}),{type:"block-scalar",offset:r,indent:n,props:m,source:p}}case'"':return{type:"double-quoted-scalar",offset:r,indent:n,source:a,end:l};case"'":return{type:"single-quoted-scalar",offset:r,indent:n,source:a,end:l};default:return{type:"scalar",offset:r,indent:n,source:a,end:l}}}function di(s,e,t={}){let{afterKey:n=!1,implicitKey:i=!1,inFlow:r=!1,type:o}=t,a="indent"in s?s.indent:null;if(n&&typeof a=="number"&&(a+=2),!o)switch(s.type){case"single-quoted-scalar":o="QUOTE_SINGLE";break;case"double-quoted-scalar":o="QUOTE_DOUBLE";break;case"block-scalar":{const c=s.props[0];if(c.type!=="block-scalar-header")throw new Error("Invalid block scalar header");o=c.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:o="PLAIN"}const l=ve({type:o,value:e},{implicitKey:i||a===null,indent:a!==null&&a>0?" ".repeat(a):"",inFlow:r,options:{blockQuote:!0,lineWidth:-1}});switch(l[0]){case"|":case">":pi(s,l);break;case'"':gt(s,l,"double-quoted-scalar");break;case"'":gt(s,l,"single-quoted-scalar");break;default:gt(s,l,"scalar")}}function pi(s,e){const t=e.indexOf(`
170
+ `),n=e.substring(0,t),i=e.substring(t+1)+`
171
+ `;if(s.type==="block-scalar"){const r=s.props[0];if(r.type!=="block-scalar-header")throw new Error("Invalid block scalar header");r.source=n,s.source=i}else{const{offset:r}=s,o="indent"in s?s.indent:-1,a=[{type:"block-scalar-header",offset:r,indent:o,source:n}];Vs(a,"end"in s?s.end:void 0)||a.push({type:"newline",offset:-1,indent:o,source:`
172
+ `});for(const l of Object.keys(s))l!=="type"&&l!=="offset"&&delete s[l];Object.assign(s,{type:"block-scalar",indent:o,props:a,source:i})}}function Vs(s,e){if(e)for(const t of e)switch(t.type){case"space":case"comment":s.push(t);break;case"newline":return s.push(t),!0}return!1}function gt(s,e,t){switch(s.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":s.type=t,s.source=e;break;case"block-scalar":{const n=s.props.slice(1);let i=e.length;s.props[0].type==="block-scalar-header"&&(i-=s.props[0].source.length);for(const r of n)r.offset+=i;delete s.props,Object.assign(s,{type:t,source:e,end:n});break}case"block-map":case"block-seq":{const i={type:"newline",offset:s.offset+e.length,indent:s.indent,source:`
173
+ `};delete s.items,Object.assign(s,{type:t,source:e,end:[i]});break}default:{const n="indent"in s?s.indent:-1,i="end"in s&&Array.isArray(s.end)?s.end.filter(r=>r.type==="space"||r.type==="comment"||r.type==="newline"):[];for(const r of Object.keys(s))r!=="type"&&r!=="offset"&&delete s[r];Object.assign(s,{type:t,indent:n,source:e,end:i})}}}const mi=s=>"type"in s?Ge(s):Je(s);function Ge(s){switch(s.type){case"block-scalar":{let e="";for(const t of s.props)e+=Ge(t);return e+s.source}case"block-map":case"block-seq":{let e="";for(const t of s.items)e+=Je(t);return e}case"flow-collection":{let e=s.start.source;for(const t of s.items)e+=Je(t);for(const t of s.end)e+=t.source;return e}case"document":{let e=Je(s);if(s.end)for(const t of s.end)e+=t.source;return e}default:{let e=s.source;if("end"in s&&s.end)for(const t of s.end)e+=t.source;return e}}}function Je({start:s,key:e,sep:t,value:n}){let i="";for(const r of s)i+=r.source;if(e&&(i+=Ge(e)),t)for(const r of t)i+=r.source;return n&&(i+=Ge(n)),i}const At=Symbol("break visit"),yi=Symbol("skip children"),Js=Symbol("remove item");function ie(s,e){"type"in s&&s.type==="document"&&(s={start:s.start,value:s.value}),Ys(Object.freeze([]),s,e)}ie.BREAK=At;ie.SKIP=yi;ie.REMOVE=Js;ie.itemAtPath=(s,e)=>{let t=s;for(const[n,i]of e){const r=t==null?void 0:t[n];if(r&&"items"in r)t=r.items[i];else return}return t};ie.parentCollection=(s,e)=>{const t=ie.itemAtPath(s,e.slice(0,-1)),n=e[e.length-1][0],i=t==null?void 0:t[n];if(i&&"items"in i)return i;throw new Error("Parent collection not found")};function Ys(s,e,t){let n=t(e,s);if(typeof n=="symbol")return n;for(const i of["key","value"]){const r=e[i];if(r&&"items"in r){for(let o=0;o<r.items.length;++o){const a=Ys(Object.freeze(s.concat([[i,o]])),r.items[o],t);if(typeof a=="number")o=a-1;else{if(a===At)return At;a===Js&&(r.items.splice(o,1),o-=1)}}typeof n=="function"&&i==="key"&&(n=n(e,s))}}return typeof n=="function"?n(e,s):n}const ot="\uFEFF",at="",lt="",Me="",gi=s=>!!s&&"items"in s,bi=s=>!!s&&(s.type==="scalar"||s.type==="single-quoted-scalar"||s.type==="double-quoted-scalar"||s.type==="block-scalar");function wi(s){switch(s){case ot:return"<BOM>";case at:return"<DOC>";case lt:return"<FLOW_END>";case Me:return"<SCALAR>";default:return JSON.stringify(s)}}function Ws(s){switch(s){case ot:return"byte-order-mark";case at:return"doc-mode";case lt:return"flow-error-end";case Me:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
174
+ `:case`\r
175
+ `:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(s[0]){case" ":case" ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}const Si=Object.freeze(Object.defineProperty({__proto__:null,BOM:ot,DOCUMENT:at,FLOW_END:lt,SCALAR:Me,createScalarToken:hi,isCollection:gi,isScalar:bi,prettyToken:wi,resolveAsScalar:ui,setScalarValue:di,stringify:mi,tokenType:Ws,visit:ie},Symbol.toStringTag,{value:"Module"}));function J(s){switch(s){case void 0:case" ":case`
176
+ `:case"\r":case" ":return!0;default:return!1}}const es=new Set("0123456789ABCDEFabcdef"),ki=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),Ke=new Set(",[]{}"),Oi=new Set(` ,[]{}
177
+ \r `),bt=s=>!s||Oi.has(s);class Qs{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(e,t=!1){var i;if(e){if(typeof e!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+e:e,this.lineEndPos=null}this.atEnd=!t;let n=(i=this.next)!=null?i:"stream";for(;n&&(t||this.hasChars(1));)n=yield*d(this.parseNext(n))}atLineEnd(){let e=this.pos,t=this.buffer[e];for(;t===" "||t===" ";)t=this.buffer[++e];return!t||t==="#"||t===`
178
+ `?!0:t==="\r"?this.buffer[e+1]===`
179
+ `:!1}charAt(e){return this.buffer[this.pos+e]}continueScalar(e){let t=this.buffer[e];if(this.indentNext>0){let n=0;for(;t===" ";)t=this.buffer[++n+e];if(t==="\r"){const i=this.buffer[n+e+1];if(i===`
180
+ `||!i&&!this.atEnd)return e+n+1}return t===`
181
+ `||n>=this.indentNext||!t&&!this.atEnd?e+n:-1}if(t==="-"||t==="."){const n=this.buffer.substr(e,3);if((n==="---"||n==="...")&&J(this.buffer[e+3]))return-1}return e}getLine(){let e=this.lineEndPos;return(typeof e!="number"||e!==-1&&e<this.pos)&&(e=this.buffer.indexOf(`
182
+ `,this.pos),this.lineEndPos=e),e===-1?this.atEnd?this.buffer.substring(this.pos):null:(this.buffer[e-1]==="\r"&&(e-=1),this.buffer.substring(this.pos,e))}hasChars(e){return this.pos+e<=this.buffer.length}setNext(e){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=e,null}peek(e){return this.buffer.substr(this.pos,e)}*parseNext(e){switch(e){case"stream":return yield*d(this.parseStream());case"line-start":return yield*d(this.parseLineStart());case"block-start":return yield*d(this.parseBlockStart());case"doc":return yield*d(this.parseDocument());case"flow":return yield*d(this.parseFlowCollection());case"quoted-scalar":return yield*d(this.parseQuotedScalar());case"block-scalar":return yield*d(this.parseBlockScalar());case"plain-scalar":return yield*d(this.parsePlainScalar())}}*parseStream(){let e=this.getLine();if(e===null)return this.setNext("stream");if(e[0]===ot&&(yield*d(this.pushCount(1)),e=e.substring(1)),e[0]==="%"){let t=e.length,n=e.indexOf("#");for(;n!==-1;){const r=e[n-1];if(r===" "||r===" "){t=n-1;break}else n=e.indexOf("#",n+1)}for(;;){const r=e[t-1];if(r===" "||r===" ")t-=1;else break}const i=(yield*d(this.pushCount(t)))+(yield*d(this.pushSpaces(!0)));return yield*d(this.pushCount(e.length-i)),this.pushNewline(),"stream"}if(this.atLineEnd()){const t=yield*d(this.pushSpaces(!0));return yield*d(this.pushCount(e.length-t)),yield*d(this.pushNewline()),"stream"}return yield at,yield*d(this.parseLineStart())}*parseLineStart(){const e=this.charAt(0);if(!e&&!this.atEnd)return this.setNext("line-start");if(e==="-"||e==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");const t=this.peek(3);if((t==="---"||t==="...")&&J(this.charAt(3)))return yield*d(this.pushCount(3)),this.indentValue=0,this.indentNext=0,t==="---"?"doc":"stream"}return this.indentValue=yield*d(this.pushSpaces(!1)),this.indentNext>this.indentValue&&!J(this.charAt(1))&&(this.indentNext=this.indentValue),yield*d(this.parseBlockStart())}*parseBlockStart(){const[e,t]=this.peek(2);if(!t&&!this.atEnd)return this.setNext("block-start");if((e==="-"||e==="?"||e===":")&&J(t)){const n=(yield*d(this.pushCount(1)))+(yield*d(this.pushSpaces(!0)));return this.indentNext=this.indentValue+1,this.indentValue+=n,yield*d(this.parseBlockStart())}return"doc"}*parseDocument(){yield*d(this.pushSpaces(!0));const e=this.getLine();if(e===null)return this.setNext("doc");let t=yield*d(this.pushIndicators());switch(e[t]){case"#":yield*d(this.pushCount(e.length-t));case void 0:return yield*d(this.pushNewline()),yield*d(this.parseLineStart());case"{":case"[":return yield*d(this.pushCount(1)),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*d(this.pushCount(1)),"doc";case"*":return yield*d(this.pushUntil(bt)),"doc";case'"':case"'":return yield*d(this.parseQuotedScalar());case"|":case">":return t+=yield*d(this.parseBlockScalarHeader()),t+=yield*d(this.pushSpaces(!0)),yield*d(this.pushCount(e.length-t)),yield*d(this.pushNewline()),yield*d(this.parseBlockScalar());default:return yield*d(this.parsePlainScalar())}}*parseFlowCollection(){let e,t,n=-1;do e=yield*d(this.pushNewline()),e>0?(t=yield*d(this.pushSpaces(!1)),this.indentValue=n=t):t=0,t+=yield*d(this.pushSpaces(!0));while(e+t>0);const i=this.getLine();if(i===null)return this.setNext("flow");if((n!==-1&&n<this.indentNext&&i[0]!=="#"||n===0&&(i.startsWith("---")||i.startsWith("..."))&&J(i[3]))&&!(n===this.indentNext-1&&this.flowLevel===1&&(i[0]==="]"||i[0]==="}")))return this.flowLevel=0,yield lt,yield*d(this.parseLineStart());let r=0;for(;i[r]===",";)r+=yield*d(this.pushCount(1)),r+=yield*d(this.pushSpaces(!0)),this.flowKey=!1;switch(r+=yield*d(this.pushIndicators()),i[r]){case void 0:return"flow";case"#":return yield*d(this.pushCount(i.length-r)),"flow";case"{":case"[":return yield*d(this.pushCount(1)),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*d(this.pushCount(1)),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*d(this.pushUntil(bt)),"flow";case'"':case"'":return this.flowKey=!0,yield*d(this.parseQuotedScalar());case":":{const o=this.charAt(1);if(this.flowKey||J(o)||o===",")return this.flowKey=!1,yield*d(this.pushCount(1)),yield*d(this.pushSpaces(!0)),"flow"}default:return this.flowKey=!1,yield*d(this.parsePlainScalar())}}*parseQuotedScalar(){const e=this.charAt(0);let t=this.buffer.indexOf(e,this.pos+1);if(e==="'")for(;t!==-1&&this.buffer[t+1]==="'";)t=this.buffer.indexOf("'",t+2);else for(;t!==-1;){let r=0;for(;this.buffer[t-1-r]==="\\";)r+=1;if(r%2===0)break;t=this.buffer.indexOf('"',t+1)}const n=this.buffer.substring(0,t);let i=n.indexOf(`
183
+ `,this.pos);if(i!==-1){for(;i!==-1;){const r=this.continueScalar(i+1);if(r===-1)break;i=n.indexOf(`
184
+ `,r)}i!==-1&&(t=i-(n[i-1]==="\r"?2:1))}if(t===-1){if(!this.atEnd)return this.setNext("quoted-scalar");t=this.buffer.length}return yield*d(this.pushToIndex(t+1,!1)),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let e=this.pos;for(;;){const t=this.buffer[++e];if(t==="+")this.blockScalarKeep=!0;else if(t>"0"&&t<="9")this.blockScalarIndent=Number(t)-1;else if(t!=="-")break}return yield*d(this.pushUntil(t=>J(t)||t==="#"))}*parseBlockScalar(){let e=this.pos-1,t=0,n;e:for(let r=this.pos;n=this.buffer[r];++r)switch(n){case" ":t+=1;break;case`
185
+ `:e=r,t=0;break;case"\r":{const o=this.buffer[r+1];if(!o&&!this.atEnd)return this.setNext("block-scalar");if(o===`
186
+ `)break}default:break e}if(!n&&!this.atEnd)return this.setNext("block-scalar");if(t>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=t:this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{const r=this.continueScalar(e+1);if(r===-1)break;e=this.buffer.indexOf(`
187
+ `,r)}while(e!==-1);if(e===-1){if(!this.atEnd)return this.setNext("block-scalar");e=this.buffer.length}}let i=e+1;for(n=this.buffer[i];n===" ";)n=this.buffer[++i];if(n===" "){for(;n===" "||n===" "||n==="\r"||n===`
188
+ `;)n=this.buffer[++i];e=i-1}else if(!this.blockScalarKeep)do{let r=e-1,o=this.buffer[r];o==="\r"&&(o=this.buffer[--r]);const a=r;for(;o===" ";)o=this.buffer[--r];if(o===`
189
+ `&&r>=this.pos&&r+1+t>a)e=r;else break}while(!0);return yield Me,yield*d(this.pushToIndex(e+1,!0)),yield*d(this.parseLineStart())}*parsePlainScalar(){const e=this.flowLevel>0;let t=this.pos-1,n=this.pos-1,i;for(;i=this.buffer[++n];)if(i===":"){const r=this.buffer[n+1];if(J(r)||e&&Ke.has(r))break;t=n}else if(J(i)){let r=this.buffer[n+1];if(i==="\r"&&(r===`
190
+ `?(n+=1,i=`
191
+ `,r=this.buffer[n+1]):t=n),r==="#"||e&&Ke.has(r))break;if(i===`
192
+ `){const o=this.continueScalar(n+1);if(o===-1)break;n=Math.max(n,o-2)}}else{if(e&&Ke.has(i))break;t=n}return!i&&!this.atEnd?this.setNext("plain-scalar"):(yield Me,yield*d(this.pushToIndex(t+1,!0)),e?"flow":"doc")}*pushCount(e){return e>0?(yield this.buffer.substr(this.pos,e),this.pos+=e,e):0}*pushToIndex(e,t){const n=this.buffer.slice(this.pos,e);return n?(yield n,this.pos+=n.length,n.length):(t&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*d(this.pushTag()))+(yield*d(this.pushSpaces(!0)))+(yield*d(this.pushIndicators()));case"&":return(yield*d(this.pushUntil(bt)))+(yield*d(this.pushSpaces(!0)))+(yield*d(this.pushIndicators()));case"-":case"?":case":":{const e=this.flowLevel>0,t=this.charAt(1);if(J(t)||e&&Ke.has(t))return e?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*d(this.pushCount(1)))+(yield*d(this.pushSpaces(!0)))+(yield*d(this.pushIndicators()))}}return 0}*pushTag(){if(this.charAt(1)==="<"){let e=this.pos+2,t=this.buffer[e];for(;!J(t)&&t!==">";)t=this.buffer[++e];return yield*d(this.pushToIndex(t===">"?e+1:e,!1))}else{let e=this.pos+1,t=this.buffer[e];for(;t;)if(ki.has(t))t=this.buffer[++e];else if(t==="%"&&es.has(this.buffer[e+1])&&es.has(this.buffer[e+2]))t=this.buffer[e+=3];else break;return yield*d(this.pushToIndex(e,!1))}}*pushNewline(){const e=this.buffer[this.pos];return e===`
193
+ `?yield*d(this.pushCount(1)):e==="\r"&&this.charAt(1)===`
194
+ `?yield*d(this.pushCount(2)):0}*pushSpaces(e){let t=this.pos-1,n;do n=this.buffer[++t];while(n===" "||e&&n===" ");const i=t-this.pos;return i>0&&(yield this.buffer.substr(this.pos,i),this.pos=t),i}*pushUntil(e){let t=this.pos,n=this.buffer[t];for(;!e(n);)n=this.buffer[++t];return yield*d(this.pushToIndex(t,!1))}}class Gs{constructor(){this.lineStarts=[],this.addNewLine=e=>this.lineStarts.push(e),this.linePos=e=>{let t=0,n=this.lineStarts.length;for(;t<n;){const r=t+n>>1;this.lineStarts[r]<e?t=r+1:n=r}if(this.lineStarts[t]===e)return{line:t+1,col:1};if(t===0)return{line:0,col:e};const i=this.lineStarts[t-1];return{line:t,col:e-i+1}}}}function ee(s,e){for(let t=0;t<s.length;++t)if(s[t].type===e)return!0;return!1}function ts(s){for(let e=0;e<s.length;++e)switch(s[e].type){case"space":case"comment":case"newline":break;default:return e}return-1}function Hs(s){switch(s==null?void 0:s.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function Fe(s){var e;switch(s.type){case"document":return s.start;case"block-map":{const t=s.items[s.items.length-1];return(e=t.sep)!=null?e:t.start}case"block-seq":return s.items[s.items.length-1].start;default:return[]}}function le(s){var t;if(s.length===0)return[];let e=s.length;e:for(;--e>=0;)switch(s[e].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;((t=s[++e])==null?void 0:t.type)==="space";);return s.splice(e,s.length)}function ss(s){if(s.start.type==="flow-seq-start")for(const e of s.items)e.sep&&!e.value&&!ee(e.start,"explicit-key-ind")&&!ee(e.sep,"map-value-ind")&&(e.key&&(e.value=e.key),delete e.key,Hs(e.value)?e.value.end?Array.prototype.push.apply(e.value.end,e.sep):e.value.end=e.sep:Array.prototype.push.apply(e.start,e.sep),delete e.sep)}class Rt{constructor(e){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new Qs,this.onNewLine=e}*parse(e,t=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(const n of this.lexer.lex(e,t))yield*d(this.next(n));t||(yield*d(this.end()))}*next(e){if(this.source=e,this.atScalar){this.atScalar=!1,yield*d(this.step()),this.offset+=e.length;return}const t=Ws(e);if(t)if(t==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=t,yield*d(this.step()),t){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+e.length);break;case"space":this.atNewLine&&e[0]===" "&&(this.indent+=e.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=e.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=e.length}else{const n=`Not a YAML token: ${e}`;yield*d(this.pop({type:"error",offset:this.offset,message:n,source:e})),this.offset+=e.length}}*end(){for(;this.stack.length>0;)yield*d(this.pop())}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){const e=this.peek(1);if(this.type==="doc-end"&&(!e||e.type!=="doc-end")){for(;this.stack.length>0;)yield*d(this.pop());this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!e)return yield*d(this.stream());switch(e.type){case"document":return yield*d(this.document(e));case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*d(this.scalar(e));case"block-scalar":return yield*d(this.blockScalar(e));case"block-map":return yield*d(this.blockMap(e));case"block-seq":return yield*d(this.blockSequence(e));case"flow-collection":return yield*d(this.flowCollection(e));case"doc-end":return yield*d(this.documentEnd(e))}yield*d(this.pop())}peek(e){return this.stack[this.stack.length-e]}*pop(e){const t=e!=null?e:this.stack.pop();if(!t)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield t;else{const n=this.peek(1);switch(t.type==="block-scalar"?t.indent="indent"in n?n.indent:0:t.type==="flow-collection"&&n.type==="document"&&(t.indent=0),t.type==="flow-collection"&&ss(t),n.type){case"document":n.value=t;break;case"block-scalar":n.props.push(t);break;case"block-map":{const i=n.items[n.items.length-1];if(i.value){n.items.push({start:[],key:t,sep:[]}),this.onKeyLine=!0;return}else if(i.sep)i.value=t;else{Object.assign(i,{key:t,sep:[]}),this.onKeyLine=!i.explicitKey;return}break}case"block-seq":{const i=n.items[n.items.length-1];i.value?n.items.push({start:[],value:t}):i.value=t;break}case"flow-collection":{const i=n.items[n.items.length-1];!i||i.value?n.items.push({start:[],key:t,sep:[]}):i.sep?i.value=t:Object.assign(i,{key:t,sep:[]});return}default:yield*d(this.pop()),yield*d(this.pop(t))}if((n.type==="document"||n.type==="block-map"||n.type==="block-seq")&&(t.type==="block-map"||t.type==="block-seq")){const i=t.items[t.items.length-1];i&&!i.sep&&!i.value&&i.start.length>0&&ts(i.start)===-1&&(t.indent===0||i.start.every(r=>r.type!=="comment"||r.indent<t.indent))&&(n.type==="document"?n.end=i.start:n.items.push({start:i.start}),t.items.splice(-1,1))}}}*stream(){switch(this.type){case"directive-line":yield{type:"directive",offset:this.offset,source:this.source};return;case"byte-order-mark":case"space":case"comment":case"newline":yield this.sourceToken;return;case"doc-mode":case"doc-start":{const e={type:"document",offset:this.offset,start:[]};this.type==="doc-start"&&e.start.push(this.sourceToken),this.stack.push(e);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(e){if(e.value)return yield*d(this.lineEnd(e));switch(this.type){case"doc-start":{ts(e.start)!==-1?(yield*d(this.pop()),yield*d(this.step())):e.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":e.start.push(this.sourceToken);return}const t=this.startBlockValue(e);t?this.stack.push(t):yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(e){if(this.type==="map-value-ind"){const t=Fe(this.peek(2)),n=le(t);let i;e.end?(i=e.end,i.push(this.sourceToken),delete e.end):i=[this.sourceToken];const r={type:"block-map",offset:e.offset,indent:e.indent,items:[{start:n,key:e,sep:i}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=r}else yield*d(this.lineEnd(e))}*blockScalar(e){switch(this.type){case"space":case"comment":case"newline":e.props.push(this.sourceToken);return;case"scalar":if(e.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let t=this.source.indexOf(`
195
+ `)+1;for(;t!==0;)this.onNewLine(this.offset+t),t=this.source.indexOf(`
196
+ `,t)+1}yield*d(this.pop());break;default:yield*d(this.pop()),yield*d(this.step())}}*blockMap(e){var n;const t=e.items[e.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,t.value){const i="end"in t.value?t.value.end:void 0,r=Array.isArray(i)?i[i.length-1]:void 0;(r==null?void 0:r.type)==="comment"?i==null||i.push(this.sourceToken):e.items.push({start:[this.sourceToken]})}else t.sep?t.sep.push(this.sourceToken):t.start.push(this.sourceToken);return;case"space":case"comment":if(t.value)e.items.push({start:[this.sourceToken]});else if(t.sep)t.sep.push(this.sourceToken);else{if(this.atIndentedComment(t.start,e.indent)){const i=e.items[e.items.length-2],r=(n=i==null?void 0:i.value)==null?void 0:n.end;if(Array.isArray(r)){Array.prototype.push.apply(r,t.start),r.push(this.sourceToken),e.items.pop();return}}t.start.push(this.sourceToken)}return}if(this.indent>=e.indent){const i=!this.onKeyLine&&this.indent===e.indent,r=i&&(t.sep||t.explicitKey)&&this.type!=="seq-item-ind";let o=[];if(r&&t.sep&&!t.value){const a=[];for(let l=0;l<t.sep.length;++l){const c=t.sep[l];switch(c.type){case"newline":a.push(l);break;case"space":break;case"comment":c.indent>e.indent&&(a.length=0);break;default:a.length=0}}a.length>=2&&(o=t.sep.splice(a[1]))}switch(this.type){case"anchor":case"tag":r||t.value?(o.push(this.sourceToken),e.items.push({start:o}),this.onKeyLine=!0):t.sep?t.sep.push(this.sourceToken):t.start.push(this.sourceToken);return;case"explicit-key-ind":!t.sep&&!t.explicitKey?(t.start.push(this.sourceToken),t.explicitKey=!0):r||t.value?(o.push(this.sourceToken),e.items.push({start:o,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(t.explicitKey)if(t.sep)if(t.value)e.items.push({start:[],key:null,sep:[this.sourceToken]});else if(ee(t.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:o,key:null,sep:[this.sourceToken]}]});else if(Hs(t.key)&&!ee(t.sep,"newline")){const a=le(t.start),l=t.key,c=t.sep;c.push(this.sourceToken),delete t.key,delete t.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:a,key:l,sep:c}]})}else o.length>0?t.sep=t.sep.concat(o,this.sourceToken):t.sep.push(this.sourceToken);else if(ee(t.start,"newline"))Object.assign(t,{key:null,sep:[this.sourceToken]});else{const a=le(t.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:a,key:null,sep:[this.sourceToken]}]})}else t.sep?t.value||r?e.items.push({start:o,key:null,sep:[this.sourceToken]}):ee(t.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):t.sep.push(this.sourceToken):Object.assign(t,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const a=this.flowScalar(this.type);r||t.value?(e.items.push({start:o,key:a,sep:[]}),this.onKeyLine=!0):t.sep?this.stack.push(a):(Object.assign(t,{key:a,sep:[]}),this.onKeyLine=!0);return}default:{const a=this.startBlockValue(e);if(a){i&&a.type!=="block-seq"&&e.items.push({start:o}),this.stack.push(a);return}}}}yield*d(this.pop()),yield*d(this.step())}*blockSequence(e){var n;const t=e.items[e.items.length-1];switch(this.type){case"newline":if(t.value){const i="end"in t.value?t.value.end:void 0,r=Array.isArray(i)?i[i.length-1]:void 0;(r==null?void 0:r.type)==="comment"?i==null||i.push(this.sourceToken):e.items.push({start:[this.sourceToken]})}else t.start.push(this.sourceToken);return;case"space":case"comment":if(t.value)e.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(t.start,e.indent)){const i=e.items[e.items.length-2],r=(n=i==null?void 0:i.value)==null?void 0:n.end;if(Array.isArray(r)){Array.prototype.push.apply(r,t.start),r.push(this.sourceToken),e.items.pop();return}}t.start.push(this.sourceToken)}return;case"anchor":case"tag":if(t.value||this.indent<=e.indent)break;t.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==e.indent)break;t.value||ee(t.start,"seq-item-ind")?e.items.push({start:[this.sourceToken]}):t.start.push(this.sourceToken);return}if(this.indent>e.indent){const i=this.startBlockValue(e);if(i){this.stack.push(i);return}}yield*d(this.pop()),yield*d(this.step())}*flowCollection(e){const t=e.items[e.items.length-1];if(this.type==="flow-error-end"){let n;do yield*d(this.pop()),n=this.peek(1);while(n&&n.type==="flow-collection")}else if(e.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!t||t.sep?e.items.push({start:[this.sourceToken]}):t.start.push(this.sourceToken);return;case"map-value-ind":!t||t.value?e.items.push({start:[],key:null,sep:[this.sourceToken]}):t.sep?t.sep.push(this.sourceToken):Object.assign(t,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!t||t.value?e.items.push({start:[this.sourceToken]}):t.sep?t.sep.push(this.sourceToken):t.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const i=this.flowScalar(this.type);!t||t.value?e.items.push({start:[],key:i,sep:[]}):t.sep?this.stack.push(i):Object.assign(t,{key:i,sep:[]});return}case"flow-map-end":case"flow-seq-end":e.end.push(this.sourceToken);return}const n=this.startBlockValue(e);n?this.stack.push(n):(yield*d(this.pop()),yield*d(this.step()))}else{const n=this.peek(2);if(n.type==="block-map"&&(this.type==="map-value-ind"&&n.indent===e.indent||this.type==="newline"&&!n.items[n.items.length-1].sep))yield*d(this.pop()),yield*d(this.step());else if(this.type==="map-value-ind"&&n.type!=="flow-collection"){const i=Fe(n),r=le(i);ss(e);const o=e.end.splice(1,e.end.length);o.push(this.sourceToken);const a={type:"block-map",offset:e.offset,indent:e.indent,items:[{start:r,key:e,sep:o}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=a}else yield*d(this.lineEnd(e))}}flowScalar(e){if(this.onNewLine){let t=this.source.indexOf(`
197
+ `)+1;for(;t!==0;)this.onNewLine(this.offset+t),t=this.source.indexOf(`
198
+ `,t)+1}return{type:e,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(e){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;const t=Fe(e),n=le(t);return n.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:n,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;const t=Fe(e),n=le(t);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:n,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(e,t){return this.type!=="comment"||this.indent<=t?!1:e.every(n=>n.type==="newline"||n.type==="space")}*documentEnd(e){this.type!=="doc-mode"&&(e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type==="newline"&&(yield*d(this.pop())))}*lineEnd(e){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*d(this.pop()),yield*d(this.step());break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type==="newline"&&(yield*d(this.pop()))}}}function zs(s){const e=s.prettyErrors!==!1;return{lineCounter:s.lineCounter||e&&new Gs||null,prettyErrors:e}}function Ti(s,e={}){const{lineCounter:t,prettyErrors:n}=zs(e),i=new Rt(t==null?void 0:t.addNewLine),r=new Ft(e),o=Array.from(r.compose(i.parse(s)));if(n&&t)for(const a of o)a.errors.forEach(Qe(s,t)),a.warnings.forEach(Qe(s,t));return o.length>0?o:Object.assign([],{empty:!0},r.streamInfo())}function Xs(s,e={}){const{lineCounter:t,prettyErrors:n}=zs(e),i=new Rt(t==null?void 0:t.addNewLine),r=new Ft(e);let o=null;for(const a of r.compose(i.parse(s),!0,s.length))if(!o)o=a;else if(o.options.logLevel!=="silent"){o.errors.push(new ne(a.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return n&&t&&(o.errors.forEach(Qe(s,t)),o.warnings.forEach(Qe(s,t))),o}function Ni(s,e,t){let n;typeof e=="function"?n=e:t===void 0&&e&&typeof e=="object"&&(t=e);const i=Xs(s,t);if(!i)return null;if(i.warnings.forEach(r=>bs(i.options.logLevel,r)),i.errors.length>0){if(i.options.logLevel!=="silent")throw i.errors[0];i.errors=[]}return i.toJS(Object.assign({reviver:n},t))}function Ei(s,e,t){var i;let n=null;if(typeof e=="function"||Array.isArray(e)?n=e:t===void 0&&e&&(t=e),typeof t=="string"&&(t=t.length),typeof t=="number"){const r=Math.round(t);t=r<1?void 0:r>8?{indent:8}:{indent:r}}if(s===void 0){const{keepUndefined:r}=(i=t!=null?t:e)!=null?i:{};if(!r)return}return new Te(s,n,t).toString(t)}const ns=Object.freeze(Object.defineProperty({__proto__:null,Alias:ze,CST:Si,Composer:Ft,Document:Te,Lexer:Qs,LineCounter:Gs,Pair:j,Parser:Rt,Scalar:O,Schema:rt,YAMLError:Pt,YAMLMap:R,YAMLParseError:ne,YAMLSeq:x,YAMLWarning:qs,isAlias:re,isCollection:L,isDocument:be,isMap:we,isNode:M,isPair:I,isScalar:A,isSeq:Se,parse:Ni,parseAllDocuments:Ti,parseDocument:Xs,stringify:Ei,visit:X,visitAsync:He},Symbol.toStringTag,{value:"Module"})),Ai=`# This is your query - you can modify it directly and click Run to see new results.
199
+ # Try uncommenting the elements below
200
+ # To learn more about the query syntax, visit [Doc URL]
201
+ ---
202
+ model: {{dataSourceTitle}}
203
+ # metadata:
204
+ # - jaql:
205
+ # dim: "[DimTable1.SomeTextColumn]"
206
+ # title: Dimension1
207
+ # - jaql:
208
+ # dim: "[Table2.SomeDateColumn]"
209
+ # level: years
210
+ # title: Dimension2
211
+ # format:
212
+ # mask:
213
+ # years: yyyy
214
+ # - jaql:
215
+ # dim: "[FactTable1.Column1]"
216
+ # agg: sum
217
+ # title: Measure1
218
+ # - jaql:
219
+ # type: measure
220
+ # formula: (SUM([Column1]) - SUM([Column2])) / SUM([Column1])
221
+ # context:
222
+ # "[Column1]":
223
+ # dim: "[FactTable1.Column1]"
224
+ # "[Column2]":
225
+ # dim: "[FactTable1.Column2]"
226
+ # title: Measure2
227
+ # - jaql:
228
+ # dim: "[FactTable1.Column1]"
229
+ # filter:
230
+ # fromNotEqual: 1000
231
+ # panel: scope
232
+ # chart:
233
+ # chartType: table
234
+ # dataOptions:
235
+ # columns:
236
+ # - name: Dimension1
237
+ # - name: Dimension2
238
+ # - name: Measure1
239
+ # - name: Measure2`;class Ii{constructor(e,t){F(this,"contextTitle");F(this,"indexedFields",{});this.contextTitle=e,this.indexedFields=this.indexFields(t)}indexFields(e){return e.reduce((t,n)=>{const i=n.id;t[i]=n;const r=on(i);return i!==r&&(t[r]=H(K({},n),{id:r})),t},{})}concatAggTypes(){return Object.values(P.AggregationTypes).map(t=>P.DimensionalBaseMeasure.aggregationToJAQL(t)).join("|")}simplifyAggFormula(e){const{formula:t,context:n,filter:i}=e;if(!n||!t)return e;const r=Object.keys(n);if(r.length!==1)return e;const o=r[0],a=n[o],l=this.concatAggTypes(),c=new RegExp(`^\\s*(${l})\\(\\[\\w+\\]\\)$`),h=t.match(c);if(h&&t.includes(o)){const f=h[1];return{dim:a.dim,agg:f,title:e.title,filter:i?K({},i):void 0}}return e}simplifyMetadataItemJaql(e){let t=e;if("formula"in e&&(t=this.simplifyAggFormula(e)),delete t.table,delete t.column,delete t.datatype,"context"in t){const n=K({},t.context);Object.keys(n).forEach(i=>{n[i]=this.simplifyMetadataItemJaql(n[i])}),t.context=n}return t}simplifyMetadataItemFilter(e){var i;const t=e;if(t.panel!=="scope")return t;delete t.format;const{jaql:n}=t;return(i=n.filter)!=null&&i.by&&(n.filter.by=this.simplifyAggFormula(n.filter.by)),H(K({},t),{jaql:n})}simplifyMetadataItemFormat(e){const{jaql:{level:t},format:{mask:n}={}}=e;return t&&(n!=null&&n[t])?H(K({},e),{format:{mask:{[t]:n[t]}}}):e}simplifyMetadataItem(e){let t=e;t.panel&&["rows","columns","measures"].includes(t.panel)&&delete t.panel,t=this.simplifyMetadataItemFilter(t),t=this.simplifyMetadataItemFormat(t);const{jaql:n,measure:i,by:r}=t;return H(K({},t),{jaql:this.simplifyMetadataItemJaql(n),by:r?this.simplifyMetadataItemJaql(r):void 0,measure:i?this.simplifyMetadataItemJaql(i):void 0})}simplifyChartRecommendations(e){if(!("axesMapping"in e))return{};const{chartType:t,axesMapping:n}=e,i=Object.entries(n).reduce((r,[o,a])=>(r[o]=a.map(l=>({name:l.name})),r),{});return{chartType:t,dataOptions:i}}getQueryTitleWithChartType(e,t){let n="chartType"in t?t.chartType:"table";return n!=="table"&&(n+=" chart"),`${n} showing ${e.toLowerCase()}`}translateToSimple(e){try{const{jaql:t,chartRecommendations:n,queryTitle:i}=P.cloneDeep(e);return{model:t.datasource.title,metadata:t.metadata.map(r=>this.simplifyMetadataItem(r)),chart:this.simplifyChartRecommendations(n),queryTitle:this.getQueryTitleWithChartType(i,n)}}catch(t){return console.error("Error running toSimpleQuery",t),wt}}stringifySimple(e){const r=e,{queryTitle:t}=r,n=Jt(r,["queryTitle"]),i=new ns.Document(n);return i.commentBefore=` ${rn(t)}`,i.directives&&(i.directives.docStart=!0),String(i)}getQueryTemplate(){return rs(Ai,{dataSourceTitle:this.contextTitle})}parseSimple(e){try{const t=ns.parseDocument(e),{commentBefore:n}=t,i=an(t.toJS());return i.queryTitle=(n==null?void 0:n.trim())||"",i}catch(t){console.error("Error parsing the YAML string",t)}return wt}expandChartRecommendations(e){if(!e||!("dataOptions"in e))return{};const{chartType:t,dataOptions:n}=e;return{chartFamily:P.deriveChartFamily(t),chartType:t,axesMapping:n}}expandMetadataItemJaql(e){const{dim:t="",agg:n,context:i}=e;i&&(Object.keys(i).forEach(a=>{i[a]=this.expandMetadataItemJaql(i[a])}),e.context=i);const r=this.indexedFields[t];if(!r)return e;let{filter:o}=e;return o!=null&&o.by&&(o=H(K({},o),{by:this.expandMetadataItemJaql(o.by)}),e.filter=o),K({table:r.table,column:r.column,datatype:r.dimtype,title:n?n+" "+r.title:r.title},e)}expandMetadataItem(e){const{jaql:t,measure:n}=e;return n?H(K({},e),{jaql:this.expandMetadataItemJaql(t),measure:this.expandMetadataItemJaql(n)}):H(K({},e),{jaql:this.expandMetadataItemJaql(t)})}translateToExpanded(e){const{model:t,metadata:n,chart:i,queryTitle:r}=P.cloneDeep(e),o={datasource:{title:t},metadata:n.map(l=>this.expandMetadataItem(l))},a=this.expandChartRecommendations(i);return{jaql:o,chartRecommendations:a,queryTitle:r}}}exports.EMPTY_EXPANDED_QUERY_MODEL=sn;exports.EMPTY_SIMPLE_QUERY_MODEL=wt;exports.ModelTranslator=yn;exports.QueryTranslator=Ii;
@@ -0,0 +1 @@
1
+ export * from './analytics-composer/index'