@decimalturn/toml-patch 0.3.8 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,3 @@
1
- //! @decimalturn/toml-patch v0.3.8 - https://github.com/DecimalTurn/toml-patch - @license: MIT
2
- "use strict";var e,t;function n(t){return t.type===e.Document}function l(t){return t.type===e.Table}function o(t){return t.type===e.TableArray}function r(t){return t.type===e.KeyValue}function a(t){return t.type===e.InlineArray}function i(t){return t.type===e.InlineItem}function c(t){return t.type===e.InlineTable}function u(t){return t.type===e.Comment}function s(e){return n(e)||l(e)||o(e)||c(e)||a(e)}function f(t){return function(t){return t.type===e.TableKey}(t)||function(t){return t.type===e.TableArrayKey}(t)||i(t)}!function(e){e.Document="Document",e.Table="Table",e.TableKey="TableKey",e.TableArray="TableArray",e.TableArrayKey="TableArrayKey",e.KeyValue="KeyValue",e.Key="Key",e.String="String",e.Integer="Integer",e.Float="Float",e.Boolean="Boolean",e.DateTime="DateTime",e.InlineArray="InlineArray",e.InlineItem="InlineItem",e.InlineTable="InlineTable",e.Comment="Comment"}(e||(e={}));class m{constructor(e){this.iterator=e,this.index=-1,this.value=void 0,this.done=!1,this.peeked=null}next(){var e;if(this.done)return d();const t=this.peeked||this.iterator.next();return this.index+=1,this.value=t.value,this.done=null!==(e=t.done)&&void 0!==e&&e,this.peeked=null,t}peek(){return this.done?d():(this.peeked||(this.peeked=this.iterator.next()),this.peeked)}[Symbol.iterator](){return this}}function d(){return{value:void 0,done:!0}}function p(e){return{lines:e.end.line-e.start.line+1,columns:e.end.column-e.start.column}}function y(e,t){const n=Array.isArray(e)?e:v(e),l=n.findIndex((e=>e>=t))+1;return{line:l,column:t-(n[l-2]+1||0)}}function v(e){const t=/\r\n|\n/g,n=[];let l;for(;null!=(l=t.exec(e));)n.push(l.index+l[0].length-1);return n.push(e.length+1),n}function h(e){return{line:e.line,column:e.column}}function w(e){return{start:h(e.start),end:h(e.end)}}class g extends Error{constructor(e,t,n){let l=`Error parsing TOML (${t.line}, ${t.column+1}):\n`;if(e){const n=function(e,t){const n=v(e),l=n[t.line-2]||0,o=n[t.line-1]||e.length;return e.substr(l,o-l)}(e,t),o=`${function(e,t=" "){return t.repeat(e)}(t.column)}^`;n&&(l+=`${n}\n${o}\n`)}l+=n,super(l),this.line=t.line,this.column=t.column}}!function(e){e.Bracket="Bracket",e.Curly="Curly",e.Equal="Equal",e.Comma="Comma",e.Dot="Dot",e.Comment="Comment",e.Literal="Literal"}(t||(t={}));const b=/\s/,k=/(\r\n|\n)/,x='"',T="'",I=/[\w,\d,\",\',\+,\-,\_]/;function*A(e){const n=new m(e[Symbol.iterator]());n.next();const l=function(e){const t=v(e);return(e,n)=>({start:y(t,e),end:y(t,n)})}(e);for(;!n.done;){if(b.test(n.value));else if("["===n.value||"]"===n.value)yield $(n,l,t.Bracket);else if("{"===n.value||"}"===n.value)yield $(n,l,t.Curly);else if("="===n.value)yield $(n,l,t.Equal);else if(","===n.value)yield $(n,l,t.Comma);else if("."===n.value)yield $(n,l,t.Dot);else if("#"===n.value)yield E(n,l);else{const t=C(e,n.index,T)||C(e,n.index,x);t?yield S(n,l,t,e):yield K(n,l,e)}n.next()}}function $(e,t,n){return{type:n,raw:e.value,loc:t(e.index,e.index+1)}}function E(e,n){const l=e.index;let o=e.value;for(;!e.peek().done&&!k.test(e.peek().value);)e.next(),o+=e.value;return{type:t.Comment,raw:o,loc:n(l,e.index+1)}}function S(e,n,l,o){const r=e.index;let a=l+l+l,i=a;for(e.next(),e.next(),e.next();!e.done&&(!C(o,e.index,l)||O(o,e.index,l));)i+=e.value,e.next();if(e.done)throw new g(o,y(o,e.index),`Expected close of multiline string with ${a}, reached end of file`);return i+=a,e.next(),e.next(),{type:t.Literal,raw:i,loc:n(r,e.index+1)}}function K(e,n,l){if(!I.test(e.value))throw new g(l,y(l,e.index),`Unsupported character "${e.value}". Expected ALPHANUMERIC, ", ', +, -, or _`);const o=e.index;let r=e.value,a=e.value===x,i=e.value===T;const c=e=>{if(e.peek().done)return!0;const t=e.peek().value;return!(a||i)&&(b.test(t)||","===t||"."===t||"]"===t||"}"===t||"="===t||"#"===t)};for(;!e.done&&!c(e)&&(e.next(),e.value===x&&(a=!a),e.value!==T||a||(i=!i),r+=e.value,!e.peek().done);){let t=e.peek().value;a&&"\\"===e.value&&(t===x?(r+=x,e.next()):"\\"===t&&(r+="\\",e.next()))}if(a||i)throw new g(l,y(l,o),`Expected close of string with ${a?x:T}`);return{type:t.Literal,raw:r,loc:n(o,e.index+1)}}function C(e,t,n){if(!n)return!1;if(!(e[t]===n&&e[t+1]===n&&e[t+2]===n))return!1;const l=e.slice(0,t).match(/\\+$/);if(!l)return n;return!(l[0].length%2!=0)&&n}function O(e,t,n){return!!n&&(e[t]===n&&e[t+1]===n&&e[t+2]===n&&e[t+3]===n)}function D(e){return e[e.length-1]}function j(){return Object.create(null)}function B(e){return"number"==typeof e&&e%1==0&&isFinite(e)&&!Object.is(e,-0)}function N(e){return"[object Date]"===Object.prototype.toString.call(e)}function F(e){return e&&"object"==typeof e&&!N(e)&&!Array.isArray(e)}function L(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function _(e,...t){return t.reduce(((e,t)=>t(e)),e)}function M(e){if(F(e)){return`{${Object.keys(e).sort().map((t=>`${JSON.stringify(t)}:${M(e[t])}`)).join(",")}}`}return Array.isArray(e)?`[${e.map(M).join(",")}]`:JSON.stringify(e)}function U(e,t){const n=e.length,l=t.length;e.length=n+l;for(let o=0;o<l;o++)e[n+o]=t[o]}const V=/\r\n/g,q=/\n/g,R=/^(\r\n|\n)/,W=/(?<!\\)(?:\\\\)*(\\\s*[\n\r\n]\s*)/g;function J(e){return e.startsWith("'''")?_(H(e,3),G):e.startsWith(T)?H(e,1):e.startsWith('"""')?_(H(e,3),G,X,Q,z,P):e.startsWith(x)?_(H(e,1),P):e}function z(e){let t="",n=0;for(let l=0;l<e.length;l++){const o=e[l];t+='"'===o&&n%2==0?'\\"':o,"\\"===o?n++:n=0}return t}function P(e){const t=e.replace(/\\U[a-fA-F0-9]{8}/g,(e=>{const t=parseInt(e.replace("\\U",""),16),n=String.fromCodePoint(t);return H(JSON.stringify(n),1)})),n=t.replace(/\t/g,"\\t");return JSON.parse(`"${n}"`)}function H(e,t){return e.slice(t,e.length-t)}function G(e){return e.replace(R,"")}function Q(e){return e.replace(V,"\\r\\n").replace(q,"\\n")}function X(e){return e.replace(W,((e,t)=>e.replace(t,"")))}const Y="true",Z=/e/i,ee=/\_/g,te=/inf/,ne=/nan/,le=/^0x/,oe=/^0o/,re=/^0b/,ae=/(\d{4})-(\d{2})-(\d{2})/,ie=/(\d{2}):(\d{2}):(\d{2})/;function*ce(e){const t=A(e),n=new m(t);for(;!n.next().done;)yield*ue(n,e)}function*ue(n,l){if(n.value.type===t.Comment)yield fe(n);else if(n.value.type===t.Bracket)yield function(n,l){const o=n.peek().done||n.peek().value.type!==t.Bracket?e.Table:e.TableArray,r=o===e.Table;if(r&&"["!==n.value.raw)throw new g(l,n.value.loc.start,`Expected table opening "[", found ${n.value.raw}`);if(!r&&("["!==n.value.raw||"["!==n.peek().value.raw))throw new g(l,n.value.loc.start,`Expected array of tables opening "[[", found ${n.value.raw+n.peek().value.raw}`);const a=r?{type:e.TableKey,loc:n.value.loc}:{type:e.TableArrayKey,loc:n.value.loc};n.next(),o===e.TableArray&&n.next();if(n.done)throw new g(l,a.loc.start,"Expected table key, reached end of file");a.item={type:e.Key,loc:w(n.value.loc),raw:n.value.raw,value:[J(n.value.raw)]};for(;!n.peek().done&&n.peek().value.type===t.Dot;){n.next();const e=n.value;n.next();const t=" ".repeat(e.loc.start.column-a.item.loc.end.column),l=" ".repeat(n.value.loc.start.column-e.loc.end.column);a.item.loc.end=n.value.loc.end,a.item.raw+=`${t}.${l}${n.value.raw}`,a.item.value.push(J(n.value.raw))}if(n.next(),r&&(n.done||"]"!==n.value.raw))throw new g(l,n.done?a.item.loc.end:n.value.loc.start,`Expected table closing "]", found ${n.done?"end of file":n.value.raw}`);if(!r&&(n.done||n.peek().done||"]"!==n.value.raw||"]"!==n.peek().value.raw))throw new g(l,n.done||n.peek().done?a.item.loc.end:n.value.loc.start,`Expected array of tables closing "]]", found ${n.done||n.peek().done?"end of file":n.value.raw+n.peek().value.raw}`);r||n.next();a.loc.end=n.value.loc.end;let i=[];for(;!n.peek().done&&n.peek().value.type!==t.Bracket;)n.next(),U(i,[...ue(n,l)]);return{type:r?e.Table:e.TableArray,loc:{start:h(a.loc.start),end:i.length?h(i[i.length-1].loc.end):h(a.loc.end)},key:a,items:i}}(n,l);else{if(n.value.type!==t.Literal)throw new g(l,n.value.loc.start,`Unexpected token "${n.value.type}". Expected Comment, Bracket, or String`);yield*function(n,l){const o={type:e.Key,loc:w(n.value.loc),raw:n.value.raw,value:[J(n.value.raw)]};for(;!n.peek().done&&n.peek().value.type===t.Dot;)n.next(),n.next(),o.loc.end=n.value.loc.end,o.raw+=`.${n.value.raw}`,o.value.push(J(n.value.raw));if(n.next(),n.done||n.value.type!==t.Equal)throw new g(l,n.done?o.loc.end:n.value.loc.start,`Expected "=" for key-value, found ${n.done?"end of file":n.value.raw}`);const r=n.value.loc.start.column;if(n.next(),n.done)throw new g(l,o.loc.start,"Expected value for key-value, reached end of file");const[a,...i]=se(n,l);return[{type:e.KeyValue,key:o,value:a,loc:{start:h(o.loc.start),end:h(a.loc.end)},equals:r},...i]}(n,l)}}function*se(n,l){if(n.value.type===t.Literal)n.value.raw[0]===x||n.value.raw[0]===T?yield function(t){return{type:e.String,loc:t.value.loc,raw:t.value.raw,value:J(t.value.raw)}}(n):n.value.raw===Y||"false"===n.value.raw?yield function(t){return{type:e.Boolean,loc:t.value.loc,value:t.value.raw===Y}}(n):ae.test(n.value.raw)||ie.test(n.value.raw)?yield function(n,l){let o,r=n.value.loc,a=n.value.raw;if(!n.peek().done&&n.peek().value.type===t.Literal&&ae.test(a)&&ie.test(n.peek().value.raw)){const e=r.start;n.next(),r={start:e,end:n.value.loc.end},a+=` ${n.value.raw}`}if(!n.peek().done&&n.peek().value.type===t.Dot){const e=r.start;if(n.next(),n.peek().done||n.peek().value.type!==t.Literal)throw new g(l,n.value.loc.end,"Expected fractional value for DateTime");n.next(),r={start:e,end:n.value.loc.end},a+=`.${n.value.raw}`}if(ae.test(a))o=new Date(a.replace(" ","T"));else{const[e]=(new Date).toISOString().split("T");o=new Date(`${e}T${a}`)}return{type:e.DateTime,loc:r,raw:a,value:o}}(n,l):!n.peek().done&&n.peek().value.type===t.Dot||te.test(n.value.raw)||ne.test(n.value.raw)||Z.test(n.value.raw)&&!le.test(n.value.raw)?yield function(n,l){let o,r=n.value.loc,a=n.value.raw;if(te.test(a))o="-inf"===a?-1/0:1/0;else if(ne.test(a))o=NaN;else if(n.peek().done||n.peek().value.type!==t.Dot)o=Number(a.replace(ee,""));else{const e=r.start;if(n.next(),n.peek().done||n.peek().value.type!==t.Literal)throw new g(l,n.value.loc.end,"Expected fraction value for Float");n.next(),a+=`.${n.value.raw}`,r={start:e,end:n.value.loc.end},o=Number(a.replace(ee,""))}return{type:e.Float,loc:r,raw:a,value:o}}(n,l):yield function(t){if("-0"===t.value.raw||"+0"===t.value.raw)return{type:e.Integer,loc:t.value.loc,raw:t.value.raw,value:0};let n=10;le.test(t.value.raw)?n=16:oe.test(t.value.raw)?n=8:re.test(t.value.raw)&&(n=2);const l=parseInt(t.value.raw.replace(ee,"").replace(oe,"").replace(re,""),n);return{type:e.Integer,loc:t.value.loc,raw:t.value.raw,value:l}}(n);else if(n.value.type===t.Curly)yield function(n,l){if("{"!==n.value.raw)throw new g(l,n.value.loc.start,`Expected "{" for inline table, found ${n.value.raw}`);const o={type:e.InlineTable,loc:w(n.value.loc),items:[]};n.next();for(;!n.done&&(n.value.type!==t.Curly||"}"!==n.value.raw);){if(n.value.type===t.Comma){const e=o.items[o.items.length-1];if(!e)throw new g(l,n.value.loc.start,'Found "," without previous value in inline table');e.comma=!0,e.loc.end=n.value.loc.start,n.next();continue}const[r]=ue(n,l);if(r.type!==e.KeyValue)throw new g(l,n.value.loc.start,`Only key-values are supported in inline tables, found ${r.type}`);const a={type:e.InlineItem,loc:w(r.loc),item:r,comma:!1};o.items.push(a),n.next()}if(n.done||n.value.type!==t.Curly||"}"!==n.value.raw)throw new g(l,n.done?o.loc.start:n.value.loc.start,`Expected "}", found ${n.done?"end of file":n.value.raw}`);return o.loc.end=n.value.loc.end,o}(n,l);else{if(n.value.type!==t.Bracket)throw new g(l,n.value.loc.start,`Unrecognized token type "${n.value.type}". Expected String, Curly, or Bracket`);{const[o,r]=function(n,l){if("["!==n.value.raw)throw new g(l,n.value.loc.start,`Expected "[" for inline array, found ${n.value.raw}`);const o={type:e.InlineArray,loc:w(n.value.loc),items:[]};let r=[];n.next();for(;!n.done&&(n.value.type!==t.Bracket||"]"!==n.value.raw);){if(n.value.type===t.Comma){const e=o.items[o.items.length-1];if(!e)throw new g(l,n.value.loc.start,'Found "," without previous value for inline array');e.comma=!0,e.loc.end=n.value.loc.start}else if(n.value.type===t.Comment)r.push(fe(n));else{const[t,...a]=se(n,l),i={type:e.InlineItem,loc:w(t.loc),item:t,comma:!1};o.items.push(i),U(r,a)}n.next()}if(n.done||n.value.type!==t.Bracket||"]"!==n.value.raw)throw new g(l,n.done?o.loc.start:n.value.loc.start,`Expected "]", found ${n.done?"end of file":n.value.raw}`);return o.loc.end=n.value.loc.end,[o,r]}(n,l);yield o,yield*r}}}function fe(t){return{type:e.Comment,loc:t.value.loc,raw:t.value.raw}}function me(t,n){var l;function o(e,t){for(const n of e)r(n,t)}function r(t,l){const a=n[t.type];switch(a&&"function"==typeof a&&a(t,l),a&&a.enter&&a.enter(t,l),t.type){case e.Document:o(t.items,t);break;case e.Table:r(t.key,t),o(t.items,t);break;case e.TableKey:r(t.item,t);break;case e.TableArray:r(t.key,t),o(t.items,t);break;case e.TableArrayKey:r(t.item,t);break;case e.KeyValue:r(t.key,t),r(t.value,t);break;case e.InlineArray:o(t.items,t);break;case e.InlineItem:r(t.item,t);break;case e.InlineTable:o(t.items,t);break;case e.Key:case e.String:case e.Integer:case e.Float:case e.Boolean:case e.DateTime:case e.Comment:break;default:throw new Error(`Unrecognized node type "${t.type}"`)}a&&a.exit&&a.exit(t,l)}null!=(l=t)&&"function"==typeof l[Symbol.iterator]?o(t,null):r(t,null)}const de=new WeakMap,pe=e=>(de.has(e)||de.set(e,new WeakMap),de.get(e)),ye=new WeakMap,ve=e=>(ye.has(e)||ye.set(e,new WeakMap),ye.get(e));function he(e,t,n,l){if(s(t)){const e=t.items.indexOf(n);if(e<0)throw new Error("Could not find existing item in parent node for replace");t.items.splice(e,1,l)}else if(r(t)&&c(t.value)&&!c(n)){const e=t.value.items.indexOf(n);if(e<0)throw new Error("Could not find existing item in parent node for replace");t.value.items.splice(e,1,l)}else if(f(t))t.item=l;else{if(!r(t))throw new Error(`Unsupported parent type "${t.type}" for replace`);t.key===n?t.key=l:t.value=l}Te(l,{lines:n.loc.start.line-l.loc.start.line,columns:n.loc.start.column-l.loc.start.column});const o=p(n.loc),a=p(l.loc);Ie({lines:a.lines-o.lines,columns:a.columns-o.columns},ve(e),l,n)}function we(e,t,f,m){if(!s(t))throw new Error(`Unsupported parent type "${t.type}" for insert`);let d,y;m=null!=m&&"number"==typeof m?m:t.items.length,a(t)||c(t)?({shift:d,offset:y}=function(e,t,n){if(!i(t))throw new Error(`Incompatible child type "${t.type}"`);const l=null!=n?e.items[n-1]:D(e.items),o=null==n||n===e.items.length;e.items.splice(n,0,t);const r=!!l,c=!o,s=o&&!0===t.comma;r&&(l.comma=!0);c&&(t.comma=!0);const f=a(e)&&function(e){if(!e.items.length)return!1;return p(e.loc).lines>e.items.length}(e),m=l?{line:l.loc.end.line,column:f?u(l)?e.loc.start.column:l.loc.start.column:l.loc.end.column}:h(e.loc.start);let d=0;if(f)d=1;else{const e=2,t=1;m.column+=r?e:t}m.line+=d;const y={lines:m.line-t.loc.start.line,columns:m.column-t.loc.start.column},v=p(t.loc),w={lines:v.lines+(d-1),columns:v.columns+(r||c?2:0)+(s?1:0)};return{shift:y,offset:w}}(t,f,m)):({shift:d,offset:y}=function(e,t,a){if(i=t,!(r(i)||l(i)||o(i)||u(i)))throw new Error(`Incompatible child type "${t.type}"`);var i;const c=e.items[a-1],s=n(e)&&!e.items.length;e.items.splice(a,0,t);const f=c?{line:c.loc.end.line,column:u(c)?e.loc.start.column:c.loc.start.column}:h(e.loc.start),m=l(t)||o(t);let d=0;s||(d=m?2:1);f.line+=d;const y={lines:f.line-t.loc.start.line,columns:f.column-t.loc.start.column},v=p(t.loc),w={lines:v.lines+(d-1),columns:v.columns};return{shift:y,offset:w}}(t,f,m)),Te(f,d);const v=t.items[m-1],w=v&&ve(e).get(v);w&&(y.lines+=w.lines,y.columns+=w.columns,ve(e).delete(v));ve(e).set(f,y)}function ge(e,t,n){if(!s(t))throw new Error(`Unsupported parent type "${t.type}" for remove`);let l=t.items.indexOf(n);if(l<0){if(l=t.items.findIndex((e=>f(e)&&e.item===n)),l<0)throw new Error("Could not find node in parent for removal");n=t.items[l]}const o=t.items[l-1];let r=t.items[l+1];t.items.splice(l,1);let a=p(n.loc);r&&u(r)&&r.loc.start.line===n.loc.end.line&&(a=p({start:n.loc.start,end:r.loc.end}),r=t.items[l+1],t.items.splice(l,1));const c=o&&i(o)||r&&i(r),m=o&&o.loc.end.line===n.loc.start.line,d=r&&r.loc.start.line===n.loc.end.line,y=c&&(m||d),v={lines:-(a.lines-(y?1:0)),columns:-a.columns};void 0===o&&void 0===r&&(v.lines=0,v.columns=0),c&&m&&(v.columns-=2),c&&!o&&r&&(v.columns-=2),c&&o&&!r&&(o.comma=!1);const h=o||t,w=o?ve(e):pe(e),g=ve(e),b=w.get(h);b&&(v.lines+=b.lines,v.columns+=b.columns);const k=g.get(n);k&&(v.lines+=k.lines,v.columns+=k.columns),w.set(h,v)}function be(e,t,n=!0){if(!n)return;if(!t.items.length)return;Ie({lines:0,columns:1},pe(e),t);const l=D(t.items);Ie({lines:0,columns:1},ve(e),l)}function ke(e,t,n=!1){if(!n)return;if(!t.items.length)return;const l=D(t.items);l.comma=!0,Ie({lines:0,columns:1},ve(e),l)}function xe(t){const n=pe(t),l=ve(t),o={lines:0,columns:{}};function r(e){const t=o.lines;e.loc.start.line+=t;const l=o.columns[e.loc.start.line]||0;e.loc.start.column+=l;const r=n.get(e);r&&(o.lines+=r.lines,o.columns[e.loc.start.line]=(o.columns[e.loc.start.line]||0)+r.columns)}function a(e){const t=o.lines;e.loc.end.line+=t;const n=o.columns[e.loc.end.line]||0;e.loc.end.column+=n;const r=l.get(e);r&&(o.lines+=r.lines,o.columns[e.loc.end.line]=(o.columns[e.loc.end.line]||0)+r.columns)}const i={enter:r,exit:a};me(t,{[e.Document]:i,[e.Table]:i,[e.TableArray]:i,[e.InlineTable]:i,[e.InlineArray]:i,[e.InlineItem]:i,[e.TableKey]:i,[e.TableArrayKey]:i,[e.KeyValue]:{enter(e){const t=e.loc.start.line+o.lines,n=l.get(e.key);e.equals+=(o.columns[t]||0)+(n?n.columns:0),r(e)},exit:a},[e.Key]:i,[e.String]:i,[e.Integer]:i,[e.Float]:i,[e.Boolean]:i,[e.DateTime]:i,[e.Comment]:i}),de.delete(t),ye.delete(t)}function Te(t,n,l={}){const{first_line_only:o=!1}=l,r=t.loc.start.line,{lines:a,columns:i}=n,c=e=>{o&&e.loc.start.line!==r||(e.loc.start.column+=i,e.loc.end.column+=i),e.loc.start.line+=a,e.loc.end.line+=a};return me(t,{[e.Table]:c,[e.TableKey]:c,[e.TableArray]:c,[e.TableArrayKey]:c,[e.KeyValue](e){c(e),e.equals+=i},[e.Key]:c,[e.String]:c,[e.Integer]:c,[e.Float]:c,[e.Boolean]:c,[e.DateTime]:c,[e.InlineArray]:c,[e.InlineItem]:c,[e.InlineTable]:c,[e.Comment]:c}),t}function Ie(e,t,n,l){const o=t.get(l||n);o&&(e.lines+=o.lines,e.columns+=o.columns),t.set(n,e)}function Ae(){return{type:e.Document,loc:{start:{line:1,column:0},end:{line:1,column:0}},items:[]}}function $e(t){const n=function(t){const n=Ce(t);return{type:e.TableKey,loc:{start:{line:1,column:0},end:{line:1,column:n.length+2}},item:{type:e.Key,loc:{start:{line:1,column:1},end:{line:1,column:n.length+1}},value:t,raw:n}}}(t);return{type:e.Table,loc:w(n.loc),key:n,items:[]}}function Ee(t){const n=function(t){const n=Ce(t);return{type:e.TableArrayKey,loc:{start:{line:1,column:0},end:{line:1,column:n.length+4}},item:{type:e.Key,loc:{start:{line:1,column:2},end:{line:1,column:n.length+2}},value:t,raw:n}}}(t);return{type:e.TableArray,loc:w(n.loc),key:n,items:[]}}function Se(t,n){const l=function(t){const n=Ce(t);return{type:e.Key,loc:{start:{line:1,column:0},end:{line:1,column:n.length}},raw:n,value:t}}(t),{column:o}=l.loc.end,r=o+1;return Te(n,{lines:0,columns:o+3-n.loc.start.column},{first_line_only:!0}),{type:e.KeyValue,loc:{start:h(l.loc.start),end:h(n.loc.end)},key:l,equals:r,value:n}}const Ke=/^[\w-]+$/;function Ce(e){return e.map((e=>Ke.test(e)?e:JSON.stringify(e))).join(".")}function Oe(t){return{type:e.InlineItem,loc:w(t.loc),item:t,comma:!1}}function De(e){return e.items.filter((e=>{if(!r(e))return!1;const t=c(e.value),n=a(e.value)&&e.value.items.length&&c(e.value.items[0].item);return t||n})).forEach((t=>{ge(e,e,t),c(t.value)?we(e,e,function(e){const t=$e(e.key.value);for(const n of e.value.items)we(t,t,n.item);return xe(t),t}(t)):function(e){const t=Ae();for(const n of e.value.items){const l=Ee(e.key.value);we(t,t,l);for(const e of n.item.items)we(t,l,e.item)}return xe(t),t.items}(t).forEach((t=>{we(e,e,t)}))})),xe(e),e}function je(e){let t=0,n=0;for(const l of e.items)0===n&&l.loc.start.line>1?t=1-l.loc.start.line:l.loc.start.line+t>n+2&&(t+=n+2-(l.loc.start.line+t)),Te(l,{lines:t,columns:0}),n=l.loc.end.line;return e}const Be={printWidth:80,trailingComma:!1,bracketSpacing:!0};function Ne(e,t={}){t=Object.assign({},Be,t),e=function(e){const t=[],n=[];for(const l in e)F(e[l])||Array.isArray(e[l])?n.push(l):t.push(l);const l={};for(let n=0;n<t.length;n++){const o=t[n];l[o]=e[o]}for(let t=0;t<n.length;t++){const o=n[t];l[o]=e[o]}return l}(e=_e(e));const n=Ae();for(const l of Fe(e,t))we(n,n,l);xe(n);const l=_(n,De,(e=>function(e){return e}(e)),je);return l}function*Fe(e,t){for(const n of Object.keys(e))yield Se([n],Le(e[n],t))}function Le(t,n){if(null==t)throw new Error('"null" and "undefined" values are not supported');return function(e){return"string"==typeof e}(t)?function(t){const n=JSON.stringify(t);return{type:e.String,loc:{start:{line:1,column:0},end:{line:1,column:n.length}},raw:n,value:t}}(t):B(t)?function(t){const n=t.toString();return{type:e.Integer,loc:{start:{line:1,column:0},end:{line:1,column:n.length}},raw:n,value:t}}(t):function(e){return"number"==typeof e&&(!B(e)||!isFinite(e)||Object.is(e,-0))}(t)?function(t){let n;return n=t===1/0?"inf":t===-1/0?"-inf":Number.isNaN(t)?"nan":Object.is(t,-0)?"-0.0":t.toString(),{type:e.Float,loc:{start:{line:1,column:0},end:{line:1,column:n.length}},raw:n,value:t}}(t):function(e){return"boolean"==typeof e}(t)?function(t){return{type:e.Boolean,loc:{start:{line:1,column:0},end:{line:1,column:t?4:5}},value:t}}(t):N(t)?function(t){const n=t.toISOString();return{type:e.DateTime,loc:{start:{line:1,column:0},end:{line:1,column:n.length}},raw:n,value:t}}(t):Array.isArray(t)?function(t,n){const l={type:e.InlineArray,loc:{start:{line:1,column:0},end:{line:1,column:2}},items:[]};for(const e of t){we(l,l,Oe(Le(e,n)))}return be(l,l,n.bracketSpacing),ke(l,l,n.trailingComma),xe(l),l}(t,n):function(t,n){if(t=_e(t),!F(t))return Le(t,n);const l={type:e.InlineTable,loc:{start:{line:1,column:0},end:{line:1,column:2}},items:[]},o=[...Fe(t,n)];for(const e of o){we(l,l,Oe(e))}return be(l,l,n.bracketSpacing),ke(l,l,n.trailingComma),xe(l),l}(t,n)}function _e(e){return e?N(e)?e:"function"==typeof e.toJSON?e.toJSON():e:e}const Me=/(\r\n|\n)/g;function Ue(t,n="\n",l){var o;const r=null!==(o=null==l?void 0:l.trailingNewline)&&void 0!==o?o:1,a=[];return me(t,{[e.TableKey](e){const{start:t,end:n}=e.loc;Ve(a,{start:t,end:{line:t.line,column:t.column+1}},"["),Ve(a,{start:{line:n.line,column:n.column-1},end:n},"]")},[e.TableArrayKey](e){const{start:t,end:n}=e.loc;Ve(a,{start:t,end:{line:t.line,column:t.column+2}},"[["),Ve(a,{start:{line:n.line,column:n.column-2},end:n},"]]")},[e.KeyValue](e){const{start:{line:t}}=e.loc;Ve(a,{start:{line:t,column:e.equals},end:{line:t,column:e.equals+1}},"=")},[e.Key](e){Ve(a,e.loc,e.raw)},[e.String](e){Ve(a,e.loc,e.raw)},[e.Integer](e){Ve(a,e.loc,e.raw)},[e.Float](e){Ve(a,e.loc,e.raw)},[e.Boolean](e){Ve(a,e.loc,e.value.toString())},[e.DateTime](e){Ve(a,e.loc,e.raw)},[e.InlineArray](e){const{start:t,end:n}=e.loc;Ve(a,{start:t,end:{line:t.line,column:t.column+1}},"["),Ve(a,{start:{line:n.line,column:n.column-1},end:n},"]")},[e.InlineTable](e){const{start:t,end:n}=e.loc;Ve(a,{start:t,end:{line:t.line,column:t.column+1}},"{"),Ve(a,{start:{line:n.line,column:n.column-1},end:n},"}")},[e.InlineItem](e){if(!e.comma)return;const t=e.loc.end;Ve(a,{start:t,end:{line:t.line,column:t.column+1}},",")},[e.Comment](e){Ve(a,e.loc,e.raw)}}),a.join(n)+n.repeat(r)}function Ve(e,t,n){const l=n.split(Me).filter((e=>"\n"!==e&&"\r\n"!==e)),o=t.end.line-t.start.line+1;if(l.length!==o)throw new Error(`Mismatch between location and raw string, expected ${o} lines for "${n}"`);for(let o=t.start.line;o<=t.end.line;o++){const r=qe(e,o);if(void 0===r)throw new Error(`Line ${o} is uninitialized when writing "${n}" at ${t.start.line}:${t.start.column} to ${t.end.line}:${t.end.column}`);const a=o===t.start.line,i=o===t.end.line,c=a?r.substr(0,t.start.column).padEnd(t.start.column," "):"",u=i?r.substr(t.end.column):"";e[o-1]=c+l[o-t.start.line]+u}}function qe(e,t){if(!e[t-1])for(let n=0;n<t;n++)e[n]||(e[n]="");return e[t-1]}function Re(t,n=""){const l=j(),o=new Set,r=new Set,a=new Set;let i=l,c=0;return me(t,{[e.Table](e){const t=e.key.item.value;try{Je(l,t,e.type,{tables:o,table_arrays:r,defined:a})}catch(t){const l=t;throw new g(n,e.key.loc.start,l.message)}const c=He(t);o.add(c),a.add(c),i=ze(l,t)},[e.TableArray](e){const t=e.key.item.value;try{Je(l,t,e.type,{tables:o,table_arrays:r,defined:a})}catch(t){const l=t;throw new g(n,e.key.loc.start,l.message)}const c=He(t);r.add(c),a.add(c),i=function(e,t){const n=Pe(e,t.slice(0,-1)),l=D(t);n[l]||(n[l]=[]);const o=j();return n[D(t)].push(o),o}(l,t)},[e.KeyValue]:{enter(e){if(c>0)return;const t=e.key.value;try{Je(i,t,e.type,{tables:o,table_arrays:r,defined:a})}catch(t){const l=t;throw new g(n,e.key.loc.start,l.message)}const l=We(e.value);(t.length>1?ze(i,t.slice(0,-1)):i)[D(t)]=l,a.add(He(t))}},[e.InlineTable]:{enter(){c++},exit(){c--}}}),l}function We(t){switch(t.type){case e.InlineTable:const n=j();return t.items.forEach((({item:e})=>{const t=e.key.value,l=We(e.value);(t.length>1?ze(n,t.slice(0,-1)):n)[D(t)]=l})),n;case e.InlineArray:return t.items.map((e=>We(e.item)));case e.String:case e.Integer:case e.Float:case e.Boolean:case e.DateTime:return t.value;default:throw new Error(`Unrecognized value type "${t.type}"`)}}function Je(t,n,l,o){let r=[],a=0;for(const e of n){if(r.push(e),!L(t,e))return;if("object"!=typeof(i=t[e])&&!N(i))throw new Error(`Invalid key, a value has already been defined for ${r.join(".")}`);const l=He(r);if(Array.isArray(t[e])&&!o.table_arrays.has(l))throw new Error(`Invalid key, cannot add to a static array at ${l}`);const c=a++<n.length-1;t=Array.isArray(t[e])&&c?D(t[e]):t[e]}var i;const c=He(n);if(t&&l===e.Table&&o.defined.has(c))throw new Error(`Invalid key, a table has already been defined named ${c}`);if(t&&l===e.TableArray&&!o.table_arrays.has(c))throw new Error(`Invalid key, cannot add an array of tables to a table at ${c}`)}function ze(e,t){const n=Pe(e,t.slice(0,-1)),l=D(t);return n[l]||(n[l]=j()),n[l]}function Pe(e,t){return t.reduce(((e,t)=>(e[t]||(e[t]=j()),Array.isArray(e[t])?D(e[t]):e[t])),e)}function He(e){return e.join(".")}var Ge;function Qe(e){return e.type===Ge.Remove}function Xe(e,t,n=[]){return e===t||(o=t,N(l=e)&&N(o)&&l.toISOString()===o.toISOString())?[]:Array.isArray(e)&&Array.isArray(t)?function(e,t,n=[]){let l=[];const o=e.map(M),r=t.map(M);r.forEach(((a,i)=>{const c=i>=o.length;if(!c&&o[i]===a)return;const u=o.indexOf(a,i+1);if(!c&&u>-1){l.push({type:Ge.Move,path:n,from:u,to:i});const e=o.splice(u,1);return void o.splice(i,0,...e)}const s=!r.includes(o[i]);if(!c&&s)return U(l,Xe(e[i],t[i],n.concat(i))),void(o[i]=a);l.push({type:Ge.Add,path:n.concat(i)}),o.splice(i,0,a)}));for(let e=r.length;e<o.length;e++)l.push({type:Ge.Remove,path:n.concat(e)});return l}(e,t,n):F(e)&&F(t)?function(e,t,n=[]){let l=[];const o=Object.keys(e),r=o.map((t=>M(e[t]))),a=Object.keys(t),i=a.map((e=>M(t[e]))),c=(e,t)=>{if(t.indexOf(e)<0)return!1;const n=o[r.indexOf(e)];return!a.includes(n)};return o.forEach(((o,u)=>{const s=n.concat(o);if(a.includes(o))U(l,Xe(e[o],t[o],s));else if(c(r[u],i)){const e=a[i.indexOf(r[u])];l.push({type:Ge.Rename,path:n,from:o,to:e})}else l.push({type:Ge.Remove,path:s})})),a.forEach(((e,t)=>{o.includes(e)||c(i[t],r)||l.push({type:Ge.Add,path:n.concat(e)})})),l}(e,t,n):[{type:Ge.Edit,path:n}];var l,o}function Ye(e,t){if(!t.length)return e;if(r(e))return Ye(e.value,t);const n={};let a;if(s(e)&&e.items.some(((e,c)=>{try{let u=[];if(r(e))u=e.key.value;else if(l(e))u=e.key.item.value;else if(o(e)){u=e.key.item.value;const t=M(u);n[t]||(n[t]=0);const l=n[t]++;u=u.concat(l)}else i(e)&&r(e.item)?u=e.item.key.value:i(e)&&(u=[c]);return!(!u.length||!function(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}(u,t.slice(0,u.length)))&&(a=Ye(e,t.slice(u.length)),!0)}catch(e){return!1}})),!a)throw new Error(`Could not find node at path ${t.join(".")}`);return a}function Ze(e,t){try{return Ye(e,t)}catch(e){}}function et(e,t){let n,l=t;for(;l.length&&!n;)l=l.slice(0,-1),n=Ze(e,l);if(!n)throw new Error(`Count not find parent node for path ${t.join(".")}`);return n}!function(e){e.Add="Add",e.Edit="Edit",e.Remove="Remove",e.Move="Move",e.Rename="Rename"}(Ge||(Ge={})),exports.parse=function(e){return Re(ce(e),e)},exports.patch=function(t,c,u){const s=[...ce(t)],m=Re(s),d=function(e,t,c){return c.forEach((c=>{if(function(e){return e.type===Ge.Add}(c)){const i=Ye(t,c.path),u=c.path.slice(0,-1);let s,f=D(c.path),m=o(i);if(B(f)&&!u.some(B)){const t=Ze(e,u.concat(0));t&&o(t)&&(m=!0)}if(l(i))s=e;else if(m){s=e;const t=e,n=Ze(t,u.concat(f-1)),l=Ze(t,u.concat(f));f=l?t.items.indexOf(l):n?t.items.indexOf(n)+1:t.items.length}else s=et(e,c.path),r(s)&&(s=s.value);o(s)||a(s)||n(s)?we(e,s,i,f):we(e,s,i)}else if(function(e){return e.type===Ge.Edit}(c)){let n,l=Ye(e,c.path),o=Ye(t,c.path);r(l)&&r(o)?(n=l,l=l.value,o=o.value):r(l)&&i(o)&&r(o.item)?(n=l,l=l.value,o=o.item.value):n=et(e,c.path),he(e,n,l,o)}else if(Qe(c)){let t=et(e,c.path);r(t)&&(t=t.value);const n=Ye(e,c.path);ge(e,t,n)}else if(function(e){return e.type===Ge.Move}(c)){let t=Ye(e,c.path);f(t)&&(t=t.item),r(t)&&(t=t.value);const n=t.items[c.from];ge(e,t,n),we(e,t,n,c.to)}else if(function(e){return e.type===Ge.Rename}(c)){let n=Ye(e,c.path.concat(c.from)),l=Ye(t,c.path.concat(c.to));f(n)&&(n=n.item),f(l)&&(l=l.item),he(e,n,n.key,l.key)}})),xe(e),e}({type:e.Document,loc:{start:{line:1,column:0},end:{line:1,column:0}},items:s},Ne(c,u),function(e){for(let t=0;t<e.length;t++){const n=e[t];if(Qe(n)){let l=t+1;for(;l<e.length;){const o=e[l];if(Qe(o)&&o.path[0]===n.path[0]&&o.path[1]>n.path[1]){e.splice(l,1),e.splice(t,0,o),t=0;break}l++}}}return e}(Xe(m,c)));let p="\n";const y=t.indexOf("\n");y>0&&"\r"===t.substring(y-1,y)&&(p="\r\n");const v=function(e,t){let n=0,l=e.length;for(;l>=t.length&&e.substring(l-t.length,l)===t;)n++,l-=t.length;return n}(t,p);return Ue(d.items,p,{trailingNewline:v})},exports.stringify=function(e,t){return Ue(Ne(e,t).items)};
1
+ //! @decimalturn/toml-patch v0.4.1 - https://github.com/DecimalTurn/toml-patch - @license: MIT
2
+ "use strict";var e,t;function n(t){return t.type===e.Document}function r(t){return t.type===e.Table}function l(t){return t.type===e.TableArray}function o(t){return t.type===e.KeyValue}function i(t){return t.type===e.DateTime}function a(t){return t.type===e.InlineArray}function s(t){return t.type===e.InlineItem}function c(t){return t.type===e.InlineTable}function u(t){return t.type===e.Comment}function f(e){return n(e)||r(e)||l(e)||c(e)||a(e)}function m(t){return function(t){return t.type===e.TableKey}(t)||function(t){return t.type===e.TableArrayKey}(t)||s(t)}!function(e){e.Document="Document",e.Table="Table",e.TableKey="TableKey",e.TableArray="TableArray",e.TableArrayKey="TableArrayKey",e.KeyValue="KeyValue",e.Key="Key",e.String="String",e.Integer="Integer",e.Float="Float",e.Boolean="Boolean",e.DateTime="DateTime",e.InlineArray="InlineArray",e.InlineItem="InlineItem",e.InlineTable="InlineTable",e.Comment="Comment"}(e||(e={}));class d{constructor(e){this.iterator=e,this.index=-1,this.value=void 0,this.done=!1,this.peeked=null}next(){var e;if(this.done)return p();const t=this.peeked||this.iterator.next();return this.index+=1,this.value=t.value,this.done=null!==(e=t.done)&&void 0!==e&&e,this.peeked=null,t}peek(){return this.done?p():(this.peeked||(this.peeked=this.iterator.next()),this.peeked)}[Symbol.iterator](){return this}}function p(){return{value:void 0,done:!0}}function y(e){return{lines:e.end.line-e.start.line+1,columns:e.end.column-e.start.column}}function h(e,t){const n=Array.isArray(e)?e:g(e),r=n.findIndex((e=>e>=t))+1;return{line:r,column:t-(n[r-2]+1||0)}}function g(e){const t=/\r\n|\n/g,n=[];let r;for(;null!=(r=t.exec(e));)n.push(r.index+r[0].length-1);return n.push(e.length+1),n}function v(e){return{line:e.line,column:e.column}}function w(e){return{start:v(e.start),end:v(e.end)}}class S extends Error{constructor(e,t,n){let r=`Error parsing TOML (${t.line}, ${t.column+1}):\n`;if(e){const n=function(e,t){const n=g(e),r=n[t.line-2]||0,l=n[t.line-1]||e.length;return e.substr(r,l-r)}(e,t),l=`${function(e,t=" "){return t.repeat(e)}(t.column)}^`;n&&(r+=`${n}\n${l}\n`)}r+=n,super(r),this.line=t.line,this.column=t.column}}!function(e){e.Bracket="Bracket",e.Curly="Curly",e.Equal="Equal",e.Comma="Comma",e.Dot="Dot",e.Comment="Comment",e.Literal="Literal"}(t||(t={}));const T=/\s/,b=/(\r\n|\n)/,$='"',k="'",I=/[\w,\d,\",\',\+,\-,\_]/;function*E(e){const n=new d(e[Symbol.iterator]());n.next();const r=function(e){const t=g(e);return(e,n)=>({start:h(t,e),end:h(t,n)})}(e);for(;!n.done;){if(T.test(n.value));else if("["===n.value||"]"===n.value)yield A(n,r,t.Bracket);else if("{"===n.value||"}"===n.value)yield A(n,r,t.Curly);else if("="===n.value)yield A(n,r,t.Equal);else if(","===n.value)yield A(n,r,t.Comma);else if("."===n.value)yield A(n,r,t.Dot);else if("#"===n.value)yield x(n,r);else{const t=_(e,n.index,k)||_(e,n.index,$);t?yield C(n,r,t,e):yield O(n,r,e)}n.next()}}function A(e,t,n){return{type:n,raw:e.value,loc:t(e.index,e.index+1)}}function x(e,n){const r=e.index;let l=e.value;for(;!e.peek().done&&!b.test(e.peek().value);)e.next(),l+=e.value;return{type:t.Comment,raw:l,loc:n(r,e.index+1)}}function C(e,n,r,l){const o=e.index;let i=r+r+r,a=i;for(e.next(),e.next(),e.next();!e.done&&(!_(l,e.index,r)||D(l,e.index,r));)a+=e.value,e.next();if(e.done)throw new S(l,h(l,e.index),`Expected close of multiline string with ${i}, reached end of file`);return a+=i,e.next(),e.next(),{type:t.Literal,raw:a,loc:n(o,e.index+1)}}function O(e,n,r){if(!I.test(e.value))throw new S(r,h(r,e.index),`Unsupported character "${e.value}". Expected ALPHANUMERIC, ", ', +, -, or _`);const l=e.index;let o=e.value,i=e.value===$,a=e.value===k;const s=e=>{if(e.peek().done)return!0;const t=e.peek().value;return!(i||a)&&(T.test(t)||","===t||"."===t||"]"===t||"}"===t||"="===t||"#"===t)};for(;!e.done&&!s(e)&&(e.next(),e.value===$&&(i=!i),e.value!==k||i||(a=!a),o+=e.value,!e.peek().done);){let t=e.peek().value;i&&"\\"===e.value&&(t===$?(o+=$,e.next()):"\\"===t&&(o+="\\",e.next()))}if(i||a)throw new S(r,h(r,l),`Expected close of string with ${i?$:k}`);return{type:t.Literal,raw:o,loc:n(l,e.index+1)}}function _(e,t,n){if(!n)return!1;if(!(e[t]===n&&e[t+1]===n&&e[t+2]===n))return!1;const r=e.slice(0,t).match(/\\+$/);if(!r)return n;return!(r[0].length%2!=0)&&n}function D(e,t,n){return!!n&&(e[t]===n&&e[t+1]===n&&e[t+2]===n&&e[t+3]===n)}function L(e){return e[e.length-1]}function F(){return Object.create(null)}function U(e){return"number"==typeof e&&e%1==0&&isFinite(e)&&!Object.is(e,-0)}function M(e){return"[object Date]"===Object.prototype.toString.call(e)}function K(e){return e&&"object"==typeof e&&!M(e)&&!Array.isArray(e)}function j(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function N(e,...t){return t.reduce(((e,t)=>t(e)),e)}function B(e){if(K(e)){return`{${Object.keys(e).sort().map((t=>`${JSON.stringify(t)}:${B(e[t])}`)).join(",")}}`}return Array.isArray(e)?`[${e.map(B).join(",")}]`:JSON.stringify(e)}function P(e,t){const n=e.length,r=t.length;e.length=n+r;for(let l=0;l<r;l++)e[n+l]=t[l]}const Z=/\r\n/g,W=/\n/g,z=/^(\r\n|\n)/,V=/(?<!\\)(?:\\\\)*(\\\s*[\n\r\n]\s*)/g;function q(e){return e.startsWith("'''")?N(Y(e,3),J):e.startsWith(k)?Y(e,1):e.startsWith('"""')?N(Y(e,3),J,Q,G,H,R):e.startsWith($)?N(Y(e,1),R):e}function H(e){let t="",n=0;for(let r=0;r<e.length;r++){const l=e[r];t+='"'===l&&n%2==0?'\\"':l,"\\"===l?n++:n=0}return t}function R(e){const t=e.replace(/\\U[a-fA-F0-9]{8}/g,(e=>{const t=parseInt(e.replace("\\U",""),16),n=String.fromCodePoint(t);return Y(JSON.stringify(n),1)})),n=t.replace(/\t/g,"\\t");return JSON.parse(`"${n}"`)}function Y(e,t){return e.slice(t,e.length-t)}function J(e){return e.replace(z,"")}function G(e){return e.replace(Z,"\\r\\n").replace(W,"\\n")}function Q(e){return e.replace(V,((e,t)=>e.replace(t,"")))}class X{static createDateWithOriginalFormat(e,t){if(X.IS_DATE_ONLY.test(t)){if(0!==e.getUTCHours()||0!==e.getUTCMinutes()||0!==e.getUTCSeconds()||0!==e.getUTCMilliseconds()){if(e instanceof re)return e;let t=e.toISOString().replace("Z","");return t=t.replace(/\.000$/,""),new ne(t,!1)}const t=e.toISOString().split("T")[0];return new ee(t)}if(X.IS_TIME_ONLY.test(t)){if(e instanceof te)return e;{const n=t.match(/\.(\d+)\s*$/),r=e.toISOString();if(r&&r.includes("T")){let l=r.split("T")[1].split("Z")[0];if(n){const t=n[1].length,[r,o,i]=l.split(":"),[a]=i.split(".");l=`${r}:${o}:${a}.${String(e.getUTCMilliseconds()).padStart(3,"0").slice(0,t)}`}return new te(l,t)}{const r=String(e.getUTCHours()).padStart(2,"0"),l=String(e.getUTCMinutes()).padStart(2,"0"),o=String(e.getUTCSeconds()).padStart(2,"0"),i=e.getUTCMilliseconds();let a;if(n){const e=n[1].length;a=`${r}:${l}:${o}.${String(i).padStart(3,"0").slice(0,e)}`}else if(i>0){a=`${r}:${l}:${o}.${String(i).padStart(3,"0").replace(/0+$/,"")}`}else a=`${r}:${l}:${o}`;return new te(a,t)}}}if(X.IS_LOCAL_DATETIME_T.test(t)){const n=t.match(/\.(\d+)\s*$/);let r=e.toISOString().replace("Z","");if(n){const t=n[1].length,[l,o]=r.split("T"),[i,a,s]=o.split(":"),[c]=s.split(".");r=`${l}T${i}:${a}:${c}.${String(e.getUTCMilliseconds()).padStart(3,"0").slice(0,t)}`}return new ne(r,!1,t)}if(X.IS_LOCAL_DATETIME_SPACE.test(t)){const n=t.match(/\.(\d+)\s*$/);let r=e.toISOString().replace("Z","").replace("T"," ");if(n){const t=n[1].length,[l,o]=r.split(" "),[i,a,s]=o.split(":"),[c]=s.split(".");r=`${l} ${i}:${a}:${c}.${String(e.getUTCMilliseconds()).padStart(3,"0").slice(0,t)}`}return new ne(r,!0,t)}if(X.IS_OFFSET_DATETIME_T.test(t)||X.IS_OFFSET_DATETIME_SPACE.test(t)){const n=t.match(/([+-]\d{2}:\d{2}|[Zz])$/),r=n?"z"===n[1]?"Z":n[1]:"Z",l=X.IS_OFFSET_DATETIME_SPACE.test(t),o=t.match(/\.(\d+)(?:[Zz]|[+-]\d{2}:\d{2})\s*$/),i=e.getTime();let a=0;if("Z"!==r){const e="+"===r[0]?1:-1,[t,n]=r.slice(1).split(":");a=e*(60*parseInt(t)+parseInt(n))}const s=new Date(i+6e4*a),c=s.getUTCFullYear(),u=String(s.getUTCMonth()+1).padStart(2,"0"),f=String(s.getUTCDate()).padStart(2,"0"),m=String(s.getUTCHours()).padStart(2,"0"),d=String(s.getUTCMinutes()).padStart(2,"0"),p=String(s.getUTCSeconds()).padStart(2,"0"),y=s.getUTCMilliseconds(),h=l?" ":"T";let g=`${m}:${d}:${p}`;if(o){const e=o[1].length;g+=`.${String(y).padStart(3,"0").slice(0,e)}`}else if(y>0){g+=`.${String(y).padStart(3,"0").replace(/0+$/,"")}`}return new re(`${c}-${u}-${f}${h}${g}${r}`,l)}return e}}X.IS_DATE_ONLY=/^\d{4}-\d{2}-\d{2}$/,X.IS_TIME_ONLY=/^\d{2}:\d{2}:\d{2}(?:\.\d+)?$/,X.IS_LOCAL_DATETIME_T=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$/,X.IS_LOCAL_DATETIME_SPACE=/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}(?:\.\d+)?$/,X.IS_OFFSET_DATETIME_T=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:[Zz]|[+-]\d{2}:\d{2})$/,X.IS_OFFSET_DATETIME_SPACE=/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}(?:\.\d+)?(?:[Zz]|[+-]\d{2}:\d{2})$/,X.IS_FULL_DATE=/(\d{4})-(\d{2})-(\d{2})/,X.IS_FULL_TIME=/(\d{2}):(\d{2}):(\d{2})/;class ee extends Date{constructor(e){super(e)}toISOString(){return`${this.getUTCFullYear()}-${String(this.getUTCMonth()+1).padStart(2,"0")}-${String(this.getUTCDate()).padStart(2,"0")}`}}class te extends Date{constructor(e,t){super(`1970-01-01T${e}`),this.originalFormat=t}toISOString(){const e=String(this.getUTCHours()).padStart(2,"0"),t=String(this.getUTCMinutes()).padStart(2,"0"),n=String(this.getUTCSeconds()).padStart(2,"0"),r=this.getUTCMilliseconds();if(this.originalFormat&&this.originalFormat.includes(".")){const l=this.originalFormat.match(/\.(\d+)\s*$/),o=l?l[1].length:3;return`${e}:${t}:${n}.${String(r).padStart(3,"0").slice(0,o)}`}if(r>0){return`${e}:${t}:${n}.${String(r).padStart(3,"0").replace(/0+$/,"")}`}return`${e}:${t}:${n}`}}class ne extends Date{constructor(e,t=!1,n){super(e.replace(" ","T")+"Z"),this.useSpaceSeparator=!1,this.useSpaceSeparator=t,this.originalFormat=n||e}toISOString(){const e=this.getUTCFullYear(),t=String(this.getUTCMonth()+1).padStart(2,"0"),n=String(this.getUTCDate()).padStart(2,"0"),r=String(this.getUTCHours()).padStart(2,"0"),l=String(this.getUTCMinutes()).padStart(2,"0"),o=String(this.getUTCSeconds()).padStart(2,"0"),i=this.getUTCMilliseconds(),a=`${e}-${t}-${n}`,s=this.useSpaceSeparator?" ":"T";if(this.originalFormat&&this.originalFormat.includes(".")){const e=this.originalFormat.match(/\.(\d+)\s*$/),t=e?e[1].length:3;return`${a}${s}${r}:${l}:${o}.${String(i).padStart(3,"0").slice(0,t)}`}if(i>0){return`${a}${s}${r}:${l}:${o}.${String(i).padStart(3,"0").replace(/0+$/,"")}`}return`${a}${s}${r}:${l}:${o}`}}class re extends Date{constructor(e,t=!1){super(e.replace(" ","T")),this.useSpaceSeparator=!1,this.useSpaceSeparator=t,this.originalFormat=e;const n=e.match(/([+-]\d{2}:\d{2}|[Zz])$/);n&&(this.originalOffset="z"===n[1]?"Z":n[1])}toISOString(){if(this.originalOffset){const e=this.getTime();let t=0;if("Z"!==this.originalOffset){const e="+"===this.originalOffset[0]?1:-1,[n,r]=this.originalOffset.slice(1).split(":");t=e*(60*parseInt(n)+parseInt(r))}const n=new Date(e+6e4*t),r=n.getUTCFullYear(),l=String(n.getUTCMonth()+1).padStart(2,"0"),o=String(n.getUTCDate()).padStart(2,"0"),i=String(n.getUTCHours()).padStart(2,"0"),a=String(n.getUTCMinutes()).padStart(2,"0"),s=String(n.getUTCSeconds()).padStart(2,"0"),c=n.getUTCMilliseconds(),u=`${r}-${l}-${o}`,f=this.useSpaceSeparator?" ":"T";if(this.originalFormat&&this.originalFormat.includes(".")){const e=this.originalFormat.match(/\.(\d+)(?:[Zz]|[+-]\d{2}:\d{2})\s*$/),t=e?e[1].length:3;return`${u}${f}${i}:${a}:${s}.${String(c).padStart(3,"0").slice(0,t)}${this.originalOffset}`}if(c>0){return`${u}${f}${i}:${a}:${s}.${String(c).padStart(3,"0").replace(/0+$/,"")}${this.originalOffset}`}return`${u}${f}${i}:${a}:${s}${this.originalOffset}`}const e=super.toISOString();return this.useSpaceSeparator?e.replace("T"," "):e}}const le=X,oe="true",ie=/e/i,ae=/\_/g,se=/inf/,ce=/nan/,ue=/^0x/,fe=/^0o/,me=/^0b/;function*de(e){const t=E(e),n=new d(t);for(;!n.next().done;)yield*pe(n,e)}function*pe(n,r){if(n.value.type===t.Comment)yield he(n);else if(n.value.type===t.Bracket)yield function(n,r){const l=n.peek().done||n.peek().value.type!==t.Bracket?e.Table:e.TableArray,o=l===e.Table;if(o&&"["!==n.value.raw)throw new S(r,n.value.loc.start,`Expected table opening "[", found ${n.value.raw}`);if(!o&&("["!==n.value.raw||"["!==n.peek().value.raw))throw new S(r,n.value.loc.start,`Expected array of tables opening "[[", found ${n.value.raw+n.peek().value.raw}`);const i=o?{type:e.TableKey,loc:n.value.loc}:{type:e.TableArrayKey,loc:n.value.loc};n.next(),l===e.TableArray&&n.next();if(n.done)throw new S(r,i.loc.start,"Expected table key, reached end of file");i.item={type:e.Key,loc:w(n.value.loc),raw:n.value.raw,value:[q(n.value.raw)]};for(;!n.peek().done&&n.peek().value.type===t.Dot;){n.next();const e=n.value;n.next();const t=" ".repeat(e.loc.start.column-i.item.loc.end.column),r=" ".repeat(n.value.loc.start.column-e.loc.end.column);i.item.loc.end=n.value.loc.end,i.item.raw+=`${t}.${r}${n.value.raw}`,i.item.value.push(q(n.value.raw))}if(n.next(),o&&(n.done||"]"!==n.value.raw))throw new S(r,n.done?i.item.loc.end:n.value.loc.start,`Expected table closing "]", found ${n.done?"end of file":n.value.raw}`);if(!o&&(n.done||n.peek().done||"]"!==n.value.raw||"]"!==n.peek().value.raw))throw new S(r,n.done||n.peek().done?i.item.loc.end:n.value.loc.start,`Expected array of tables closing "]]", found ${n.done||n.peek().done?"end of file":n.value.raw+n.peek().value.raw}`);o||n.next();i.loc.end=n.value.loc.end;let a=[];for(;!n.peek().done&&n.peek().value.type!==t.Bracket;)n.next(),P(a,[...pe(n,r)]);return{type:o?e.Table:e.TableArray,loc:{start:v(i.loc.start),end:a.length?v(a[a.length-1].loc.end):v(i.loc.end)},key:i,items:a}}(n,r);else{if(n.value.type!==t.Literal)throw new S(r,n.value.loc.start,`Unexpected token "${n.value.type}". Expected Comment, Bracket, or String`);yield*function(n,r){const l={type:e.Key,loc:w(n.value.loc),raw:n.value.raw,value:[q(n.value.raw)]};for(;!n.peek().done&&n.peek().value.type===t.Dot;)n.next(),n.next(),l.loc.end=n.value.loc.end,l.raw+=`.${n.value.raw}`,l.value.push(q(n.value.raw));if(n.next(),n.done||n.value.type!==t.Equal)throw new S(r,n.done?l.loc.end:n.value.loc.start,`Expected "=" for key-value, found ${n.done?"end of file":n.value.raw}`);const o=n.value.loc.start.column;if(n.next(),n.done)throw new S(r,l.loc.start,"Expected value for key-value, reached end of file");const[i,...a]=ye(n,r);return[{type:e.KeyValue,key:l,value:i,loc:{start:v(l.loc.start),end:v(i.loc.end)},equals:o},...a]}(n,r)}}function*ye(n,r){if(n.value.type===t.Literal)n.value.raw[0]===$||n.value.raw[0]===k?yield function(t){return{type:e.String,loc:t.value.loc,raw:t.value.raw,value:q(t.value.raw)}}(n):n.value.raw===oe||"false"===n.value.raw?yield function(t){return{type:e.Boolean,loc:t.value.loc,value:t.value.raw===oe}}(n):le.IS_FULL_DATE.test(n.value.raw)||le.IS_FULL_TIME.test(n.value.raw)?yield function(n,r){let l,o=n.value.loc,i=n.value.raw;if(!n.peek().done&&n.peek().value.type===t.Literal&&le.IS_FULL_DATE.test(i)&&le.IS_FULL_TIME.test(n.peek().value.raw)){const e=o.start;n.next(),o={start:e,end:n.value.loc.end},i+=` ${n.value.raw}`}if(!n.peek().done&&n.peek().value.type===t.Dot){const e=o.start;if(n.next(),n.peek().done||n.peek().value.type!==t.Literal)throw new S(r,n.value.loc.end,"Expected fractional value for DateTime");n.next(),o={start:e,end:n.value.loc.end},i+=`.${n.value.raw}`}if(le.IS_FULL_DATE.test(i))l=le.IS_DATE_ONLY.test(i)?new ee(i):le.IS_LOCAL_DATETIME_T.test(i)?new ne(i,!1):le.IS_LOCAL_DATETIME_SPACE.test(i)?new ne(i,!0):le.IS_OFFSET_DATETIME_T.test(i)?new re(i,!1):le.IS_OFFSET_DATETIME_SPACE.test(i)?new re(i,!0):new Date(i.replace(" ","T"));else if(le.IS_TIME_ONLY.test(i))l=new te(i,i);else{const[e]=(new Date).toISOString().split("T");l=new Date(`${e}T${i}`)}return{type:e.DateTime,loc:o,raw:i,value:l}}(n,r):!n.peek().done&&n.peek().value.type===t.Dot||se.test(n.value.raw)||ce.test(n.value.raw)||ie.test(n.value.raw)&&!ue.test(n.value.raw)?yield function(n,r){let l,o=n.value.loc,i=n.value.raw;if(se.test(i))l="-inf"===i?-1/0:1/0;else if(ce.test(i))l=NaN;else if(n.peek().done||n.peek().value.type!==t.Dot)l=Number(i.replace(ae,""));else{const e=o.start;if(n.next(),n.peek().done||n.peek().value.type!==t.Literal)throw new S(r,n.value.loc.end,"Expected fraction value for Float");n.next(),i+=`.${n.value.raw}`,o={start:e,end:n.value.loc.end},l=Number(i.replace(ae,""))}return{type:e.Float,loc:o,raw:i,value:l}}(n,r):yield function(t){if("-0"===t.value.raw||"+0"===t.value.raw)return{type:e.Integer,loc:t.value.loc,raw:t.value.raw,value:0};let n=10;ue.test(t.value.raw)?n=16:fe.test(t.value.raw)?n=8:me.test(t.value.raw)&&(n=2);const r=parseInt(t.value.raw.replace(ae,"").replace(fe,"").replace(me,""),n);return{type:e.Integer,loc:t.value.loc,raw:t.value.raw,value:r}}(n);else if(n.value.type===t.Curly)yield function(n,r){if("{"!==n.value.raw)throw new S(r,n.value.loc.start,`Expected "{" for inline table, found ${n.value.raw}`);const l={type:e.InlineTable,loc:w(n.value.loc),items:[]};n.next();for(;!n.done&&(n.value.type!==t.Curly||"}"!==n.value.raw);){if(n.value.type===t.Comma){const e=l.items[l.items.length-1];if(!e)throw new S(r,n.value.loc.start,'Found "," without previous value in inline table');e.comma=!0,e.loc.end=n.value.loc.start,n.next();continue}const[o]=pe(n,r);if(o.type!==e.KeyValue)throw new S(r,n.value.loc.start,`Only key-values are supported in inline tables, found ${o.type}`);const i={type:e.InlineItem,loc:w(o.loc),item:o,comma:!1};l.items.push(i),n.next()}if(n.done||n.value.type!==t.Curly||"}"!==n.value.raw)throw new S(r,n.done?l.loc.start:n.value.loc.start,`Expected "}", found ${n.done?"end of file":n.value.raw}`);return l.loc.end=n.value.loc.end,l}(n,r);else{if(n.value.type!==t.Bracket)throw new S(r,n.value.loc.start,`Unrecognized token type "${n.value.type}". Expected String, Curly, or Bracket`);{const[l,o]=function(n,r){if("["!==n.value.raw)throw new S(r,n.value.loc.start,`Expected "[" for inline array, found ${n.value.raw}`);const l={type:e.InlineArray,loc:w(n.value.loc),items:[]};let o=[];n.next();for(;!n.done&&(n.value.type!==t.Bracket||"]"!==n.value.raw);){if(n.value.type===t.Comma){const e=l.items[l.items.length-1];if(!e)throw new S(r,n.value.loc.start,'Found "," without previous value for inline array');e.comma=!0,e.loc.end=n.value.loc.start}else if(n.value.type===t.Comment)o.push(he(n));else{const[t,...i]=ye(n,r),a={type:e.InlineItem,loc:w(t.loc),item:t,comma:!1};l.items.push(a),P(o,i)}n.next()}if(n.done||n.value.type!==t.Bracket||"]"!==n.value.raw)throw new S(r,n.done?l.loc.start:n.value.loc.start,`Expected "]", found ${n.done?"end of file":n.value.raw}`);return l.loc.end=n.value.loc.end,[l,o]}(n,r);yield l,yield*o}}}function he(t){return{type:e.Comment,loc:t.value.loc,raw:t.value.raw}}function ge(t,n){var r;function l(e,t){for(const n of e)o(n,t)}function o(t,r){const i=n[t.type];switch(i&&"function"==typeof i&&i(t,r),i&&i.enter&&i.enter(t,r),t.type){case e.Document:l(t.items,t);break;case e.Table:o(t.key,t),l(t.items,t);break;case e.TableKey:o(t.item,t);break;case e.TableArray:o(t.key,t),l(t.items,t);break;case e.TableArrayKey:o(t.item,t);break;case e.KeyValue:o(t.key,t),o(t.value,t);break;case e.InlineArray:l(t.items,t);break;case e.InlineItem:o(t.item,t);break;case e.InlineTable:l(t.items,t);break;case e.Key:case e.String:case e.Integer:case e.Float:case e.Boolean:case e.DateTime:case e.Comment:break;default:throw new Error(`Unrecognized node type "${t.type}"`)}i&&i.exit&&i.exit(t,r)}null!=(r=t)&&"function"==typeof r[Symbol.iterator]?l(t,null):o(t,null)}const ve=X,we=new WeakMap,Se=e=>(we.has(e)||we.set(e,new WeakMap),we.get(e)),Te=new WeakMap,be=e=>(Te.has(e)||Te.set(e,new WeakMap),Te.get(e));function $e(e,t,n,r){if(i(n)&&i(r)){const e=n.raw,t=r.value,l=ve.createDateWithOriginalFormat(t,e);r.value=l,r.raw=l.toISOString();0!==r.raw.length-e.length&&(r.loc.end.column=r.loc.start.column+r.raw.length)}if(f(t)){const e=t.items.indexOf(n);if(e<0)throw new Error("Could not find existing item in parent node for replace");t.items.splice(e,1,r)}else if(o(t)&&c(t.value)&&!c(n)){const e=t.value.items.indexOf(n);if(e<0)throw new Error("Could not find existing item in parent node for replace");t.value.items.splice(e,1,r)}else if(m(t))t.item=r;else{if(!o(t))throw new Error(`Unsupported parent type "${t.type}" for replace`);t.key===n?t.key=r:t.value=r}Oe(r,{lines:n.loc.start.line-r.loc.start.line,columns:n.loc.start.column-r.loc.start.column});const l=y(n.loc),a=y(r.loc);_e({lines:a.lines-l.lines,columns:a.columns-l.columns},be(e),r,n)}function ke(e,t,i,m,d){if(!f(t))throw new Error(`Unsupported parent type "${t.type}" for insert`);let p,h;m=null!=m&&"number"==typeof m?m:t.items.length,a(t)||c(t)?({shift:p,offset:h}=function(e,t,n){if(!s(t))throw new Error(`Incompatible child type "${t.type}"`);const r=null!=n?e.items[n-1]:L(e.items),l=null==n||n===e.items.length;e.items.splice(n,0,t);const o=!!r,i=!l;o&&(r.comma=!0);i&&(t.comma=!0);const c=a(e)&&function(e){if(!e.items.length)return!1;return y(e.loc).lines>e.items.length}(e),u=l&&!0===t.comma;return Ie(e,t,n,{useNewLine:c,hasCommaHandling:!0,isLastElement:l,hasSeparatingCommaBefore:o,hasSeparatingCommaAfter:i,hasTrailingComma:u})}(t,i,m)):d&&n(t)?({shift:p,offset:h}=function(e,t,n){const r=Ie(e,t,n,{useNewLine:!1,hasCommaHandling:!1});return e.items.splice(n,0,t),r}(t,i,m)):({shift:p,offset:h}=function(e,t,i){if(a=t,!(o(a)||r(a)||l(a)||u(a)))throw new Error(`Incompatible child type "${t.type}"`);var a;const s=e.items[i-1],c=n(e)&&!e.items.length;e.items.splice(i,0,t);const f=s?{line:s.loc.end.line,column:u(s)?e.loc.start.column:s.loc.start.column}:v(e.loc.start),m=r(t)||l(t);let d=0;c||(d=m?2:1);f.line+=d;const p={lines:f.line-t.loc.start.line,columns:f.column-t.loc.start.column},h=y(t.loc),g={lines:h.lines+(d-1),columns:h.columns};return{shift:p,offset:g}}(t,i,m)),Oe(i,p);const g=t.items[m-1],w=g&&be(e).get(g);w&&(h.lines+=w.lines,h.columns+=w.columns,be(e).delete(g));be(e).set(i,h)}function Ie(e,t,n,r={}){const{useNewLine:l=!1,skipCommaSpace:o=2,skipBracketSpace:i=1,hasCommaHandling:a=!1,isLastElement:s=!1,hasSeparatingCommaBefore:c=!1,hasSeparatingCommaAfter:f=!1,hasTrailingComma:m=!1}=r,d=n>0?e.items[n-1]:void 0,p=d?{line:d.loc.end.line,column:l?u(d)?e.loc.start.column:d.loc.start.column:d.loc.end.column}:v(e.loc.start);let h=0;if(l)h=1;else{const e=c||!a&&!!d;e&&a?p.column+=o:(e||a&&!d)&&(p.column+=i)}p.line+=h;const g={lines:p.line-t.loc.start.line,columns:p.column-t.loc.start.column},w=y(t.loc);if(!a){return{shift:g,offset:{lines:w.lines+(h-1),columns:w.columns}}}let S=0;c&&m&&!f&&s&&(S=-1);return{shift:g,offset:{lines:w.lines+(h-1),columns:w.columns+(c||f?o:0)+(m?1+S:0)}}}function Ee(e,t,n){if(!f(t))throw new Error(`Unsupported parent type "${t.type}" for remove`);let r=t.items.indexOf(n);if(r<0){if(r=t.items.findIndex((e=>m(e)&&e.item===n)),r<0)throw new Error("Could not find node in parent for removal");n=t.items[r]}const l=t.items[r-1];let o=t.items[r+1];t.items.splice(r,1);let i=y(n.loc);o&&u(o)&&o.loc.start.line===n.loc.end.line&&(i=y({start:n.loc.start,end:o.loc.end}),o=t.items[r+1],t.items.splice(r,1));const a=l&&s(l)||o&&s(o),c=l&&l.loc.end.line===n.loc.start.line,d=o&&o.loc.start.line===n.loc.end.line,p=a&&(c||d),h={lines:-(i.lines-(p?1:0)),columns:-i.columns};if(void 0===l&&void 0===o&&(h.lines=0,h.columns=0),a&&c&&(h.columns-=2),a&&!l&&o&&(h.columns-=2),a&&l&&!o){const e=n.comma;l.comma=!!e}const g=l||t,v=l?be(e):Se(e),w=be(e),S=v.get(g);S&&(h.lines+=S.lines,h.columns+=S.columns);const T=w.get(n);T&&(h.lines+=T.lines,h.columns+=T.columns),v.set(g,h)}function Ae(e,t,n=!0){if(!n)return;if(!t.items.length)return;_e({lines:0,columns:1},Se(e),t);const r=L(t.items);_e({lines:0,columns:1},be(e),r)}function xe(e,t,n=!1){if(!n)return;if(!t.items.length)return;const r=L(t.items);r.comma=!0,_e({lines:0,columns:1},be(e),r)}function Ce(t){const n=Se(t),r=be(t),l={lines:0,columns:{}};function o(e){const t=l.lines;e.loc.start.line+=t;const r=l.columns[e.loc.start.line]||0;e.loc.start.column+=r;const o=n.get(e);o&&(l.lines+=o.lines,l.columns[e.loc.start.line]=(l.columns[e.loc.start.line]||0)+o.columns)}function i(e){const t=l.lines;e.loc.end.line+=t;const n=l.columns[e.loc.end.line]||0;e.loc.end.column+=n;const o=r.get(e);o&&(l.lines+=o.lines,l.columns[e.loc.end.line]=(l.columns[e.loc.end.line]||0)+o.columns)}const a={enter:o,exit:i};ge(t,{[e.Document]:a,[e.Table]:a,[e.TableArray]:a,[e.InlineTable]:a,[e.InlineArray]:a,[e.InlineItem]:a,[e.TableKey]:a,[e.TableArrayKey]:a,[e.KeyValue]:{enter(e){const t=e.loc.start.line+l.lines,n=r.get(e.key);e.equals+=(l.columns[t]||0)+(n?n.columns:0),o(e)},exit:i},[e.Key]:a,[e.String]:a,[e.Integer]:a,[e.Float]:a,[e.Boolean]:a,[e.DateTime]:a,[e.Comment]:a}),we.delete(t),Te.delete(t)}function Oe(t,n,r={}){const{first_line_only:l=!1}=r,o=t.loc.start.line,{lines:i,columns:a}=n,s=e=>{l&&e.loc.start.line!==o||(e.loc.start.column+=a,e.loc.end.column+=a),e.loc.start.line+=i,e.loc.end.line+=i};return ge(t,{[e.Table]:s,[e.TableKey]:s,[e.TableArray]:s,[e.TableArrayKey]:s,[e.KeyValue](e){s(e),e.equals+=a},[e.Key]:s,[e.String]:s,[e.Integer]:s,[e.Float]:s,[e.Boolean]:s,[e.DateTime]:s,[e.InlineArray]:s,[e.InlineItem]:s,[e.InlineTable]:s,[e.Comment]:s}),t}function _e(e,t,n,r){const l=t.get(r||n);l&&(e.lines+=l.lines,e.columns+=l.columns),t.set(n,e)}function De(){return{type:e.Document,loc:{start:{line:1,column:0},end:{line:1,column:0}},items:[]}}function Le(t){const n=function(t){const n=Ke(t);return{type:e.TableKey,loc:{start:{line:1,column:0},end:{line:1,column:n.length+2}},item:{type:e.Key,loc:{start:{line:1,column:1},end:{line:1,column:n.length+1}},value:t,raw:n}}}(t);return{type:e.Table,loc:w(n.loc),key:n,items:[]}}function Fe(t){const n=function(t){const n=Ke(t);return{type:e.TableArrayKey,loc:{start:{line:1,column:0},end:{line:1,column:n.length+4}},item:{type:e.Key,loc:{start:{line:1,column:2},end:{line:1,column:n.length+2}},value:t,raw:n}}}(t);return{type:e.TableArray,loc:w(n.loc),key:n,items:[]}}function Ue(t,n){const r=function(t){const n=Ke(t);return{type:e.Key,loc:{start:{line:1,column:0},end:{line:1,column:n.length}},raw:n,value:t}}(t),{column:l}=r.loc.end,o=l+1;return Oe(n,{lines:0,columns:l+3-n.loc.start.column},{first_line_only:!0}),{type:e.KeyValue,loc:{start:v(r.loc.start),end:v(n.loc.end)},key:r,equals:o,value:n}}const Me=/^[\w-]+$/;function Ke(e){return e.map((e=>Me.test(e)?e:JSON.stringify(e))).join(".")}function je(t){return{type:e.InlineItem,loc:w(t.loc),item:t,comma:!1}}const Ne=!1,Be=!0;function Pe(e,t){if(!e||"object"!=typeof e)return null;if(("InlineArray"===e.type||"InlineTable"===e.type)&&e.loc){const n=function(e,t){var n;if(!e||!e.start||!e.end)return null;const r=t.split(/\r?\n/),l=e.start.line-1,o=e.end.line-1,i=e.start.column,a=e.end.column;let s="";if(l===o)s=(null===(n=r[l])||void 0===n?void 0:n.substring(i,a+1))||"";else{r[l]&&(s+=r[l].substring(i));for(let e=l+1;e<o;e++)s+="\n"+(r[e]||"");r[o]&&(s+="\n"+r[o].substring(0,a+1))}const c=s.match(/^\[(\s*)/),u=s.match(/^\{(\s*)/);if(c)return c[1].length>0;if(u)return u[1].length>0;return null}(e.loc,t);if(null!==n)return n}if(e.items&&Array.isArray(e.items))for(const n of e.items){const e=Pe(n,t);if(null!==e)return e;if(n.item){const e=Pe(n.item,t);if(null!==e)return e}}for(const n of["value","key","item"])if(e[n]){const r=Pe(e[n],t);if(null!==r)return r}return null}function Ze(e){if(!e||"object"!=typeof e)return null;if("InlineArray"===e.type&&e.items&&Array.isArray(e.items))return We(e.items);if("InlineTable"===e.type&&e.items&&Array.isArray(e.items))return We(e.items);if("KeyValue"===e.type&&e.value)return Ze(e.value);if(e.items&&Array.isArray(e.items))for(const t of e.items){const e=Ze(t);if(null!==e)return e}return null}function We(e){if(0===e.length)return null;const t=e[e.length-1];return!(!t||"object"!=typeof t||!("comma"in t))&&!0===t.comma}function ze(e){if(!a(e))return!1;if(0===e.items.length)return!1;return!0===e.items[e.items.length-1].comma}function Ve(e){if(!c(e))return!1;if(0===e.items.length)return!1;return!0===e.items[e.items.length-1].comma}function qe(e){const t=e.indexOf("\n");return t>0&&"\r"===e.substring(t-1,t)?"\r\n":"\n"}function He(e,t){var n,r,l,o;if(e){if(e instanceof Re)return e;{const i=function(e){if(!e||"object"!=typeof e)return{};const t=new Set(["newLine","trailingNewline","trailingComma","bracketSpacing","inlineTableStart"]),n={},r=[],l=[];for(const o in e)if(Object.prototype.hasOwnProperty.call(e,o))if(t.has(o)){const t=e[o];switch(o){case"newLine":"string"==typeof t?n.newLine=t:l.push(`${o} (expected string, got ${typeof t})`);break;case"trailingNewline":"boolean"==typeof t||"number"==typeof t?n.trailingNewline=t:l.push(`${o} (expected boolean or number, got ${typeof t})`);break;case"trailingComma":case"bracketSpacing":"boolean"==typeof t?n[o]=t:l.push(`${o} (expected boolean, got ${typeof t})`);break;case"inlineTableStart":"number"==typeof t&&Number.isInteger(t)&&t>=0||null==t?n.inlineTableStart=t:l.push(`${o} (expected non-negative integer or undefined, got ${typeof t})`)}}else r.push(o);if(r.length>0&&console.warn(`toml-patch: Ignoring unsupported format properties: ${r.join(", ")}. Supported properties are: ${Array.from(t).join(", ")}`),l.length>0)throw new TypeError(`Invalid types for format properties: ${l.join(", ")}`);return n}(e);return new Re(null!==(n=i.newLine)&&void 0!==n?n:t.newLine,null!==(r=i.trailingNewline)&&void 0!==r?r:t.trailingNewline,null!==(l=i.trailingComma)&&void 0!==l?l:t.trailingComma,null!==(o=i.bracketSpacing)&&void 0!==o?o:t.bracketSpacing,void 0!==i.inlineTableStart?i.inlineTableStart:t.inlineTableStart)}}return t}class Re{constructor(e,t,n,r,l){this.newLine=null!=e?e:"\n",this.trailingNewline=null!=t?t:1,this.trailingComma=null!=n?n:Ne,this.bracketSpacing=null!=r?r:Be,this.inlineTableStart=null!=l?l:1}static default(){return new Re("\n",1,Ne,Be,1)}static autoDetectFormat(e){const t=Re.default();t.newLine=qe(e),t.trailingNewline=function(e,t){let n=0,r=e.length;for(;r>=t.length&&e.substring(r-t.length,r)===t;)n++,r-=t.length;return n}(e,t.newLine);try{const n=de(e),r=Array.from(n);t.trailingComma=function(e){const t=Array.from(e);for(const e of t){const t=Ze(e);if(null!==t)return t}return Ne}(r),t.bracketSpacing=function(e,t){const n=Array.from(t);for(const t of n){const n=Pe(t,e);if(null!==n)return n}return Be}(e,r)}catch(e){t.trailingComma=Ne,t.bracketSpacing=Be}return t.inlineTableStart=1,t}}function Ye(e,t){if(0===t.inlineTableStart)return e;return e.items.filter((e=>{if(!o(e))return!1;const n=c(e.value),r=a(e.value)&&e.value.items.length&&c(e.value.items[0].item);if(n||r){const n=Qe(e.key.value);return void 0===t.inlineTableStart||n<t.inlineTableStart}return!1})).forEach((t=>{Ee(e,e,t),c(t.value)?ke(e,e,Je(t)):function(e){const t=De();for(const n of e.value.items){const r=Fe(e.key.value);ke(t,t,r);for(const e of n.item.items)ke(t,r,e.item)}return Ce(t),t.items}(t).forEach((t=>{ke(e,e,t)}))})),Ce(e),e}function Je(e){const t=Le(e.key.value);for(const n of e.value.items)ke(t,t,n.item);return Ce(t),t}function Ge(e){if(e.items.length>0){const t=e.items[e.items.length-1];e.loc.end.line=t.loc.end.line,e.loc.end.column=t.loc.end.column}else e.loc.end.line=e.key.loc.end.line,e.loc.end.column=e.key.loc.end.column}function Qe(e){return Math.max(0,e.length-1)}function Xe(e,t,n){var r;for(let l=e.items.length-1;l>=0;l--){const i=e.items[l];if(o(i)&&c(i.value)){const l=[...e.key.item.value,...i.key.value];if(Qe(l)<(null!==(r=n.inlineTableStart)&&void 0!==r?r:1)){const r=Le(l);for(const e of i.value.items)ke(r,r,e.item);Ee(e,e,i),Ge(e),t.push(r),Xe(r,t,n)}}}}function et(e,t=Re.default()){e=function(e){const t=[],n=[];for(const r in e)K(e[r])||Array.isArray(e[r])?n.push(r):t.push(r);const r={};for(let n=0;n<t.length;n++){const l=t[n];r[l]=e[l]}for(let t=0;t<n.length;t++){const l=n[t];r[l]=e[l]}return r}(e=rt(e));const n=De();for(const r of tt(e,t))ke(n,n,r);Ce(n);const r=N(n,(e=>Ye(e,t)),(e=>function(e,t){if(void 0===t.inlineTableStart||0===t.inlineTableStart)return e;const n=[];for(const r of e.items)if(o(r)&&c(r.value)){if(Qe(r.key.value)<t.inlineTableStart){const l=Je(r);Ee(e,e,r),ke(e,e,l),Xe(l,n,t)}}else"Table"===r.type&&Xe(r,n,t);for(const t of n)ke(e,e,t);return Ce(e),e}(e,t)),(e=>function(e){return e}(e)));return function(e){let t=0,n=0;for(const r of e.items)0===n&&r.loc.start.line>1?t=1-r.loc.start.line:r.loc.start.line+t>n+2&&(t+=n+2-(r.loc.start.line+t)),Oe(r,{lines:t,columns:0}),n=r.loc.end.line;return e}(r)}function*tt(e,t){for(const n of Object.keys(e))yield Ue([n],nt(e[n],t))}function nt(t,n){if(null==t)throw new Error('"null" and "undefined" values are not supported');return function(e){return"string"==typeof e}(t)?function(t){const n=JSON.stringify(t);return{type:e.String,loc:{start:{line:1,column:0},end:{line:1,column:n.length}},raw:n,value:t}}(t):U(t)?function(t){const n=t.toString();return{type:e.Integer,loc:{start:{line:1,column:0},end:{line:1,column:n.length}},raw:n,value:t}}(t):function(e){return"number"==typeof e&&(!U(e)||!isFinite(e)||Object.is(e,-0))}(t)?function(t){let n;return n=t===1/0?"inf":t===-1/0?"-inf":Number.isNaN(t)?"nan":Object.is(t,-0)?"-0.0":t.toString(),{type:e.Float,loc:{start:{line:1,column:0},end:{line:1,column:n.length}},raw:n,value:t}}(t):function(e){return"boolean"==typeof e}(t)?function(t){return{type:e.Boolean,loc:{start:{line:1,column:0},end:{line:1,column:t?4:5}},value:t}}(t):M(t)?function(t){const n=t.toISOString();return{type:e.DateTime,loc:{start:{line:1,column:0},end:{line:1,column:n.length}},raw:n,value:t}}(t):Array.isArray(t)?function(t,n){const r={type:e.InlineArray,loc:{start:{line:1,column:0},end:{line:1,column:2}},items:[]};for(const e of t){ke(r,r,je(nt(e,n)))}return Ae(r,r,n.bracketSpacing),xe(r,r,n.trailingComma),Ce(r),r}(t,n):function(t,n){if(t=rt(t),!K(t))return nt(t,n);const r={type:e.InlineTable,loc:{start:{line:1,column:0},end:{line:1,column:2}},items:[]},l=[...tt(t,n)];for(const e of l){ke(r,r,je(e))}return Ae(r,r,n.bracketSpacing),xe(r,r,n.trailingComma),Ce(r),r}(t,n)}function rt(e){return e?M(e)?e:"function"==typeof e.toJSON?e.toJSON():e:e}const lt=/(\r\n|\n)/g;function ot(t,n){const r=[];return ge(t,{[e.TableKey](e){const{start:t,end:n}=e.loc;it(r,{start:t,end:{line:t.line,column:t.column+1}},"["),it(r,{start:{line:n.line,column:n.column-1},end:n},"]")},[e.TableArrayKey](e){const{start:t,end:n}=e.loc;it(r,{start:t,end:{line:t.line,column:t.column+2}},"[["),it(r,{start:{line:n.line,column:n.column-2},end:n},"]]")},[e.KeyValue](e){const{start:{line:t}}=e.loc;it(r,{start:{line:t,column:e.equals},end:{line:t,column:e.equals+1}},"=")},[e.Key](e){it(r,e.loc,e.raw)},[e.String](e){it(r,e.loc,e.raw)},[e.Integer](e){it(r,e.loc,e.raw)},[e.Float](e){it(r,e.loc,e.raw)},[e.Boolean](e){it(r,e.loc,e.value.toString())},[e.DateTime](e){it(r,e.loc,e.raw)},[e.InlineArray](e){const{start:t,end:n}=e.loc;it(r,{start:t,end:{line:t.line,column:t.column+1}},"["),it(r,{start:{line:n.line,column:n.column-1},end:n},"]")},[e.InlineTable](e){const{start:t,end:n}=e.loc;it(r,{start:t,end:{line:t.line,column:t.column+1}},"{"),it(r,{start:{line:n.line,column:n.column-1},end:n},"}")},[e.InlineItem](e){if(!e.comma)return;const t=e.loc.end;it(r,{start:t,end:{line:t.line,column:t.column+1}},",")},[e.Comment](e){it(r,e.loc,e.raw)}}),r.join(n.newLine)+n.newLine.repeat(n.trailingNewline)}function it(e,t,n){const r=n.split(lt).filter((e=>"\n"!==e&&"\r\n"!==e)),l=t.end.line-t.start.line+1;if(r.length!==l)throw new Error(`Mismatch between location and raw string, expected ${l} lines for "${n}"`);for(let l=t.start.line;l<=t.end.line;l++){const o=at(e,l);if(void 0===o)throw new Error(`Line ${l} is uninitialized when writing "${n}" at ${t.start.line}:${t.start.column} to ${t.end.line}:${t.end.column}`);const i=l===t.start.line,a=l===t.end.line,s=i?o.substr(0,t.start.column).padEnd(t.start.column," "):"",c=a?o.substr(t.end.column):"";e[l-1]=s+r[l-t.start.line]+c}}function at(e,t){if(!e[t-1])for(let n=0;n<t;n++)e[n]||(e[n]="");return e[t-1]}function st(t,n=""){const r=F(),l=new Set,o=new Set,i=new Set;let a=r,s=0;return ge(t,{[e.Table](e){const t=e.key.item.value;try{ut(r,t,e.type,{tables:l,table_arrays:o,defined:i})}catch(t){const r=t;throw new S(n,e.key.loc.start,r.message)}const s=dt(t);l.add(s),i.add(s),a=ft(r,t)},[e.TableArray](e){const t=e.key.item.value;try{ut(r,t,e.type,{tables:l,table_arrays:o,defined:i})}catch(t){const r=t;throw new S(n,e.key.loc.start,r.message)}const s=dt(t);o.add(s),i.add(s),a=function(e,t){const n=mt(e,t.slice(0,-1)),r=L(t);n[r]||(n[r]=[]);const l=F();return n[L(t)].push(l),l}(r,t)},[e.KeyValue]:{enter(e){if(s>0)return;const t=e.key.value;try{ut(a,t,e.type,{tables:l,table_arrays:o,defined:i})}catch(t){const r=t;throw new S(n,e.key.loc.start,r.message)}const r=ct(e.value);(t.length>1?ft(a,t.slice(0,-1)):a)[L(t)]=r,i.add(dt(t))}},[e.InlineTable]:{enter(){s++},exit(){s--}}}),r}function ct(t){switch(t.type){case e.InlineTable:const n=F();return t.items.forEach((({item:e})=>{const t=e.key.value,r=ct(e.value);(t.length>1?ft(n,t.slice(0,-1)):n)[L(t)]=r})),n;case e.InlineArray:return t.items.map((e=>ct(e.item)));case e.String:case e.Integer:case e.Float:case e.Boolean:case e.DateTime:return t.value;default:throw new Error(`Unrecognized value type "${t.type}"`)}}function ut(t,n,r,l){let o=[],i=0;for(const e of n){if(o.push(e),!j(t,e))return;if("object"!=typeof(a=t[e])&&!M(a))throw new Error(`Invalid key, a value has already been defined for ${o.join(".")}`);const r=dt(o);if(Array.isArray(t[e])&&!l.table_arrays.has(r))throw new Error(`Invalid key, cannot add to a static array at ${r}`);const s=i++<n.length-1;t=Array.isArray(t[e])&&s?L(t[e]):t[e]}var a;const s=dt(n);if(t&&r===e.Table&&l.defined.has(s))throw new Error(`Invalid key, a table has already been defined named ${s}`);if(t&&r===e.TableArray&&!l.table_arrays.has(s))throw new Error(`Invalid key, cannot add an array of tables to a table at ${s}`)}function ft(e,t){const n=mt(e,t.slice(0,-1)),r=L(t);return n[r]||(n[r]=F()),n[r]}function mt(e,t){return t.reduce(((e,t)=>(e[t]||(e[t]=F()),Array.isArray(e[t])?L(e[t]):e[t])),e)}function dt(e){return e.join(".")}var pt,yt,ht,gt;function vt(e){return e.type===pt.Remove}function wt(e,t,n=[]){return e===t||(l=t,M(r=e)&&M(l)&&r.toISOString()===l.toISOString())?[]:Array.isArray(e)&&Array.isArray(t)?function(e,t,n=[]){let r=[];const l=e.map(B),o=t.map(B);o.forEach(((i,a)=>{const s=a>=l.length;if(!s&&l[a]===i)return;const c=l.indexOf(i,a+1);if(!s&&c>-1){r.push({type:pt.Move,path:n,from:c,to:a});const e=l.splice(c,1);return void l.splice(a,0,...e)}const u=!o.includes(l[a]);if(!s&&u)return P(r,wt(e[a],t[a],n.concat(a))),void(l[a]=i);r.push({type:pt.Add,path:n.concat(a)}),l.splice(a,0,i)}));for(let e=o.length;e<l.length;e++)r.push({type:pt.Remove,path:n.concat(e)});return r}(e,t,n):K(e)&&K(t)?function(e,t,n=[]){let r=[];const l=Object.keys(e),o=l.map((t=>B(e[t]))),i=Object.keys(t),a=i.map((e=>B(t[e]))),s=(e,t)=>{if(t.indexOf(e)<0)return!1;const n=l[o.indexOf(e)];return!i.includes(n)};return l.forEach(((l,c)=>{const u=n.concat(l);if(i.includes(l))P(r,wt(e[l],t[l],u));else if(s(o[c],a)){const e=i[a.indexOf(o[c])];r.push({type:pt.Rename,path:n,from:l,to:e})}else r.push({type:pt.Remove,path:u})})),i.forEach(((e,t)=>{l.includes(e)||s(a[t],o)||r.push({type:pt.Add,path:n.concat(e)})})),r}(e,t,n):[{type:pt.Edit,path:n}];var r,l}function St(e,t){if(!t.length)return s(e)&&o(e.item)?e.item:e;if(o(e))return St(e.value,t);const n={};let i;if(f(e)&&e.items.some(((e,a)=>{try{let c=[];if(o(e))c=e.key.value;else if(r(e))c=e.key.item.value;else if(l(e)){c=e.key.item.value;const t=B(c);n[t]||(n[t]=0);const r=n[t]++;c=c.concat(r)}else s(e)&&o(e.item)?c=e.item.key.value:s(e)&&(c=[a]);return!(!c.length||!function(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}(c,t.slice(0,c.length)))&&(i=St(e,t.slice(c.length)),!0)}catch(e){return!1}})),!i)throw new Error(`Could not find node at path ${t.join(".")}`);return i}function Tt(e,t){try{return St(e,t)}catch(e){}}function bt(e,t){let n,r=t;for(;r.length&&!n;)r=r.slice(0,-1),n=Tt(e,r);if(!n)throw new Error(`Count not find parent node for path ${t.join(".")}`);return n}function $t(t,i,u){const f=[...t],d=st(f),p={type:e.Document,loc:{start:{line:1,column:0},end:{line:1,column:0}},items:f},y=et(i,He(Object.assign(Object.assign({},u),{inlineTableStart:void 0}),u)),h=function(e){for(let t=0;t<e.length;t++){const n=e[t];if(vt(n)){let r=t+1;for(;r<e.length;){const l=e[r];if(vt(l)&&l.path[0]===n.path[0]&&l.path[1]>n.path[1]){e.splice(r,1),e.splice(t,0,l),t=0;break}r++}}}return e}(wt(d,i));if(0===h.length)return{tomlString:ot(f,u),document:p};const g=function(e,t,i,u){return i.forEach((i=>{if(function(e){return e.type===pt.Add}(i)){const f=St(t,i.path),m=i.path.slice(0,-1);let d,p=L(i.path),y=l(f);if(U(p)&&!m.some(U)){const t=Tt(e,m.concat(0));t&&l(t)&&(y=!0)}if(r(f))d=e;else if(y){d=e;const t=e,n=Tt(t,m.concat(p-1)),r=Tt(t,m.concat(p));p=r?t.items.indexOf(r):n?t.items.indexOf(n)+1:t.items.length}else d=bt(e,i.path),o(d)&&(d=d.value);if(l(d)||a(d)||n(d)){if(a(d)){const e=ze(d);s(f)&&(f.comma=e)}if(void 0!==u.inlineTableStart&&u.inlineTableStart>0&&n(d)&&r(f)){const t=kt(f,e,u);ke(e,d,f,p);for(const n of t)ke(e,e,n,void 0)}else ke(e,d,f,p)}else if(c(d)){const t=Ve(d);if(o(f)){const n=je(f);n.comma=t,ke(e,d,n)}else ke(e,d,f)}else if(void 0!==u.inlineTableStart&&u.inlineTableStart>0&&o(f)&&c(f.value)&&r(d)){Qe([...d.key.item.value,...f.key.value])<u.inlineTableStart?function(e,t,n,r){const l=t.key.item.value,i=[...l,...e.key.value],a=Le(i);if(c(e.value))for(const t of e.value.items)s(t)&&o(t.item)&&ke(n,a,t.item,void 0);ke(n,n,a,void 0),Ge(t);const u=kt(a,n,r);for(const e of u)ke(n,n,e,void 0)}(f,d,e,u):ke(e,d,f)}else 0===u.inlineTableStart&&o(f)&&c(f.value)&&n(d)?ke(e,d,f,void 0,!0):ke(e,d,f)}else if(function(e){return e.type===pt.Edit}(i)){let n,r=St(e,i.path),l=St(t,i.path);if(o(r)&&o(l)){if(a(r.value)&&a(l.value)){const e=ze(r.value),t=l.value;if(t.items.length>0){t.items[t.items.length-1].comma=e}}if(c(r.value)&&c(l.value)){const e=Ve(r.value),t=l.value;if(t.items.length>0){t.items[t.items.length-1].comma=e}}n=r,r=r.value,l=l.value}else if(o(r)&&s(l)&&o(l.item))n=r,r=r.value,l=l.item.value;else if(s(r)&&o(l))n=r,r=r.item;else if(n=bt(e,i.path),o(n)){const t=i.path.slice(0,-1),r=St(e,t);o(r)&&a(r.value)&&(n=r.value)}$e(e,n,r,l)}else if(vt(i)){let t=bt(e,i.path);o(t)&&(t=t.value);const n=St(e,i.path);Ee(e,t,n)}else if(function(e){return e.type===pt.Move}(i)){let t=St(e,i.path);m(t)&&(t=t.item),o(t)&&(t=t.value);const n=t.items[i.from];Ee(e,t,n),ke(e,t,n,i.to)}else if(function(e){return e.type===pt.Rename}(i)){let n=St(e,i.path.concat(i.from)),r=St(t,i.path.concat(i.to));m(n)&&(n=n.item),m(r)&&(r=r.item),$e(e,n,n.key,r.key)}})),Ce(e),e}(p,y,h,u);return{tomlString:ot(g.items,u),document:g}}function kt(e,t,n){const r=[],l=(e,r)=>{var i;for(let a=e.items.length-1;a>=0;a--){const u=e.items[a];if(o(u)&&c(u.value)){const c=[...e.key.item.value,...u.key.value];if(Qe(c)<(null!==(i=n.inlineTableStart)&&void 0!==i?i:1)&&0!==n.inlineTableStart){const n=Le(c);for(const e of u.value.items)s(e)&&o(e.item)&&ke(t,n,e.item,void 0);e.items.splice(a,1),Ge(e),r.push(n),l(n,r)}}}};return l(e,r),r}function It(e,t,n,r){if("a"===n&&!r)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!r:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===n?r:"a"===n?r.call(e):r?r.value:t.get(e)}function Et(e,t,n,r,l){if("m"===r)throw new TypeError("Private method is not writable");if("a"===r&&!l)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!l:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===r?l.call(e,n):l?l.value=n:t.set(e,n),n}function At(e,t){return e.line!==t.line?e.line-t.line:e.column-t.column}!function(e){e.Add="Add",e.Edit="Edit",e.Remove="Remove",e.Move="Move",e.Rename="Rename"}(pt||(pt={})),"function"==typeof SuppressedError&&SuppressedError;function xt(e){if(e instanceof Date)return new Date(e.getTime());if(Array.isArray(e))return e.map(xt);if(e&&"object"==typeof e){const t={};for(const[n,r]of Object.entries(e))t[n]=xt(r);return t}return e}yt=new WeakMap,ht=new WeakMap,gt=new WeakMap,exports.TomlDocument=class{constructor(e){yt.set(this,void 0),ht.set(this,void 0),gt.set(this,void 0),Et(this,ht,e,"f"),Et(this,yt,Array.from(de(e)),"f"),Et(this,gt,Re.autoDetectFormat(e),"f")}get toTomlString(){return It(this,ht,"f")}get toJsObject(){return xt(st(It(this,yt,"f")))}get ast(){return It(this,yt,"f")}patch(e,t){const n=He(t,It(this,gt,"f")),{tomlString:r,document:l}=$t(It(this,yt,"f"),e,n);Et(this,yt,l.items,"f"),Et(this,ht,r,"f")}update(e){if(e===this.toTomlString)return;const t=this.toTomlString.split(It(this,gt,"f").newLine),n=qe(e),r=e.split(n);let l=0;for(;l<t.length&&l<r.length&&t[l]===r[l];)l++;let o=0;if(l<t.length&&l<r.length){const e=t[l],n=r[l];for(let t=0;t<Math.max(e.length,n.length);t++)if(e[t]!==n[t]){o=t;break}}let i=l+1;const{truncatedAst:a,lastEndPosition:s}=function(e,t,n){const r={line:t,column:n},l=[];let o=null;for(const t of e){const e=At(t.loc.end,r)<0,n=At(t.loc.start,r)<0;if(!e){if(n&&!e)break;break}l.push(t),o=t.loc.end}return{truncatedAst:l,lastEndPosition:o}}(It(this,yt,"f"),i,o),c=s?s.line:1,u=s?s.column+1:0,f=r.slice(c-1);f.length>0&&u>0&&(f[0]=f[0].substring(u));const m=f.join(It(this,gt,"f").newLine);Et(this,yt,Array.from(function*(e,t){for(const t of e)yield t;for(const e of de(t))yield e}(a,m)),"f"),Et(this,ht,e,"f"),Et(this,gt,Re.autoDetectFormat(e),"f")}overwrite(e){e!==this.toTomlString&&(Et(this,yt,Array.from(de(e)),"f"),Et(this,ht,e,"f"),Et(this,gt,Re.autoDetectFormat(e),"f"))}},exports.TomlFormat=Re,exports.parse=function(e){return st(de(e),e)},exports.patch=function(e,t,n){return $t(de(e),t,He(n,Re.autoDetectFormat(e))).tomlString},exports.stringify=function(e,t){const n=He(t,Re.default());return ot(et(e,n).items,n)};
3
3
  //# sourceMappingURL=toml-patch.cjs.min.js.map