@decimalturn/toml-patch 0.5.1 → 0.6.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.
@@ -1,3 +1,3 @@
1
- //! @decimalturn/toml-patch v0.5.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.String}function a(t){return t.type===e.DateTime}function s(t){return t.type===e.InlineArray}function c(t){return t.type===e.InlineItem}function u(t){return t.type===e.InlineTable}function f(t){return t.type===e.Comment}function m(e){return n(e)||r(e)||l(e)||u(e)||s(e)}function d(t){return function(t){return t.type===e.TableKey}(t)||function(t){return t.type===e.TableArrayKey}(t)||c(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 p{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 h();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?h():(this.peeked||(this.peeked=this.iterator.next()),this.peeked)}[Symbol.iterator](){return this}}function h(){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 g(e,t){const n=Array.isArray(e)?e:v(e),r=n.findIndex((e=>e>=t))+1;return{line:r,column:t-(n[r-2]+1||0)}}function v(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 w(e){return{line:e.line,column:e.column}}function S(e){return{start:w(e.start),end:w(e.end)}}class T 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=v(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 $=/\s/,b=/(\r\n|\n)/,k='"',I="'",E=/[\w,\d,\",\',\+,\-,\_]/;function*x(e){const n=new p(e[Symbol.iterator]());n.next();const r=function(e){const t=v(e);return(e,n)=>({start:g(t,e),end:g(t,n)})}(e);for(;!n.done;){if($.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 C(n,r);else{const t=_(e,n.index,I)||_(e,n.index,k);t?yield O(n,r,t,e):yield D(n,r,e)}n.next()}}function A(e,t,n){return{type:n,raw:e.value,loc:t(e.index,e.index+1)}}function C(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 O(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)||F(l,e.index,r));)a+=e.value,e.next();if(e.done)throw new T(l,g(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 D(e,n,r){if(!E.test(e.value))throw new T(r,g(r,e.index),`Unsupported character "${e.value}". Expected ALPHANUMERIC, ", ', +, -, or _`);const l=e.index;let o=e.value,i=e.value===k,a=e.value===I;const s=e=>{if(e.peek().done)return!0;const t=e.peek().value;return!(i||a)&&($.test(t)||","===t||"."===t||"]"===t||"}"===t||"="===t||"#"===t)};for(;!e.done&&!s(e)&&(e.next(),e.value===k&&(i=!i),e.value!==I||i||(a=!a),o+=e.value,!e.peek().done);){let t=e.peek().value;i&&"\\"===e.value&&(t===k?(o+=k,e.next()):"\\"===t&&(o+="\\",e.next()))}if(i||a)throw new T(r,g(r,l),`Expected close of string with ${i?k:I}`);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 F(e,t,n){return!!n&&(e[t]===n&&e[t+1]===n&&e[t+2]===n&&e[t+3]===n)}function U(e){return e[e.length-1]}function L(){return Object.create(null)}function M(e){return"number"==typeof e&&e%1==0&&isFinite(e)&&!Object.is(e,-0)}function j(e){return"[object Date]"===Object.prototype.toString.call(e)}function K(e){return e&&"object"==typeof e&&!j(e)&&!Array.isArray(e)}function N(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function B(e,...t){return t.reduce(((e,t)=>t(e)),e)}function Z(e){if(K(e)){return`{${Object.keys(e).sort().map((t=>`${JSON.stringify(t)}:${Z(e[t])}`)).join(",")}}`}return Array.isArray(e)?`[${e.map(Z).join(",")}]`:JSON.stringify(e)}function W(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]}function P(e){return e.startsWith('"""')||e.startsWith("'''")}const z=/\r\n/g,V=/\n/g,H=/^(\r\n|\n)/,R=/(?<!\\)(?:\\\\)*(\\\s*[\n\r\n]\s*)/g;function q(e){return e.startsWith("'''")?B(G(e,3),Q):e.startsWith(I)?G(e,1):e.startsWith('"""')?B(G(e,3),Q,ee,X,Y,J):e.startsWith(k)?B(G(e,1),J):e}function Y(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 J(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 G(JSON.stringify(n),1)})),n=t.replace(/\t/g,"\\t");return JSON.parse(`"${n}"`)}function G(e,t){return e.slice(t,e.length-t)}function Q(e){return e.replace(H,"")}function X(e){return e.replace(z,"\\r\\n").replace(V,"\\n")}function ee(e){return e.replace(R,((e,t)=>e.replace(t,"")))}class te{static createDateWithOriginalFormat(e,t){if(te.IS_DATE_ONLY.test(t)){if(0!==e.getUTCHours()||0!==e.getUTCMinutes()||0!==e.getUTCSeconds()||0!==e.getUTCMilliseconds()){if(e instanceof oe)return e;let t=e.toISOString().replace("Z","");return t=t.replace(/\.000$/,""),new le(t,!1)}const t=e.toISOString().split("T")[0];return new ne(t)}if(te.IS_TIME_ONLY.test(t)){if(e instanceof re)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 re(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 re(a,t)}}}if(te.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 le(r,!1,t)}if(te.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 le(r,!0,t)}if(te.IS_OFFSET_DATETIME_T.test(t)||te.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=te.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"),h=s.getUTCMilliseconds(),y=l?" ":"T";let g=`${m}:${d}:${p}`;if(o){const e=o[1].length;g+=`.${String(h).padStart(3,"0").slice(0,e)}`}else if(h>0){g+=`.${String(h).padStart(3,"0").replace(/0+$/,"")}`}return new oe(`${c}-${u}-${f}${y}${g}${r}`,l)}return e}}te.IS_DATE_ONLY=/^\d{4}-\d{2}-\d{2}$/,te.IS_TIME_ONLY=/^\d{2}:\d{2}:\d{2}(?:\.\d+)?$/,te.IS_LOCAL_DATETIME_T=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$/,te.IS_LOCAL_DATETIME_SPACE=/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}(?:\.\d+)?$/,te.IS_OFFSET_DATETIME_T=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:[Zz]|[+-]\d{2}:\d{2})$/,te.IS_OFFSET_DATETIME_SPACE=/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}(?:\.\d+)?(?:[Zz]|[+-]\d{2}:\d{2})$/,te.IS_FULL_DATE=/(\d{4})-(\d{2})-(\d{2})/,te.IS_FULL_TIME=/(\d{2}):(\d{2}):(\d{2})/;class ne extends Date{constructor(e){super(e)}toISOString(){return`${this.getUTCFullYear()}-${String(this.getUTCMonth()+1).padStart(2,"0")}-${String(this.getUTCDate()).padStart(2,"0")}`}}class re extends Date{constructor(e,t){super(`1970-01-01T${e}Z`),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 le 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 oe 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 ie=te,ae="true",se=/e/i,ce=/\_/g,ue=/inf/,fe=/nan/,me=/^0x/,de=/^0o/,pe=/^0b/;function*he(e){const t=x(e),n=new p(t);for(;!n.next().done;)yield*ye(n,e)}function*ye(n,r){if(n.value.type===t.Comment)yield ve(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 T(r,n.value.loc.start,`Expected table opening "[", found ${n.value.raw}`);if(!o&&("["!==n.value.raw||"["!==n.peek().value.raw))throw new T(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 T(r,i.loc.start,"Expected table key, reached end of file");i.item={type:e.Key,loc:S(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 T(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 T(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(),W(a,[...ye(n,r)]);return{type:o?e.Table:e.TableArray,loc:{start:w(i.loc.start),end:a.length?w(a[a.length-1].loc.end):w(i.loc.end)},key:i,items:a}}(n,r);else{if(n.value.type!==t.Literal)throw new T(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:S(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 T(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 T(r,l.loc.start,"Expected value for key-value, reached end of file");const[i,...a]=ge(n,r);return[{type:e.KeyValue,key:l,value:i,loc:{start:w(l.loc.start),end:w(i.loc.end)},equals:o},...a]}(n,r)}}function*ge(n,r){if(n.value.type===t.Literal)n.value.raw[0]===k||n.value.raw[0]===I?yield function(t){return{type:e.String,loc:t.value.loc,raw:t.value.raw,value:q(t.value.raw)}}(n):n.value.raw===ae||"false"===n.value.raw?yield function(t){return{type:e.Boolean,loc:t.value.loc,value:t.value.raw===ae}}(n):ie.IS_FULL_DATE.test(n.value.raw)||ie.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&&ie.IS_FULL_DATE.test(i)&&ie.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 T(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(ie.IS_FULL_DATE.test(i))l=ie.IS_DATE_ONLY.test(i)?new ne(i):ie.IS_LOCAL_DATETIME_T.test(i)?new le(i,!1):ie.IS_LOCAL_DATETIME_SPACE.test(i)?new le(i,!0):ie.IS_OFFSET_DATETIME_T.test(i)?new oe(i,!1):ie.IS_OFFSET_DATETIME_SPACE.test(i)?new oe(i,!0):new Date(i.replace(" ","T"));else if(ie.IS_TIME_ONLY.test(i))l=new re(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||ue.test(n.value.raw)||fe.test(n.value.raw)||se.test(n.value.raw)&&!me.test(n.value.raw)?yield function(n,r){let l,o=n.value.loc,i=n.value.raw;if(ue.test(i))l="-inf"===i?-1/0:1/0;else if(fe.test(i))l=NaN;else if(n.peek().done||n.peek().value.type!==t.Dot)l=Number(i.replace(ce,""));else{const e=o.start;if(n.next(),n.peek().done||n.peek().value.type!==t.Literal)throw new T(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(ce,""))}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;me.test(t.value.raw)?n=16:de.test(t.value.raw)?n=8:pe.test(t.value.raw)&&(n=2);const r=parseInt(t.value.raw.replace(ce,"").replace(de,"").replace(pe,""),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 T(r,n.value.loc.start,`Expected "{" for inline table, found ${n.value.raw}`);const l={type:e.InlineTable,loc:S(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 T(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]=ye(n,r);if(o.type!==e.KeyValue)throw new T(r,n.value.loc.start,`Only key-values are supported in inline tables, found ${o.type}`);const i={type:e.InlineItem,loc:S(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 T(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 T(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 T(r,n.value.loc.start,`Expected "[" for inline array, found ${n.value.raw}`);const l={type:e.InlineArray,loc:S(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 T(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(ve(n));else{const[t,...i]=ge(n,r),a={type:e.InlineItem,loc:S(t.loc),item:t,comma:!1};l.items.push(a),W(o,i)}n.next()}if(n.done||n.value.type!==t.Bracket||"]"!==n.value.raw)throw new T(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 ve(t){return{type:e.Comment,loc:t.value.loc,raw:t.value.raw}}function we(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 Se=te,Te=new WeakMap,$e=e=>(Te.has(e)||Te.set(e,new WeakMap),Te.get(e)),be=new WeakMap,ke=e=>(be.has(e)||be.set(e,new WeakMap),be.get(e));function Ie(e,t,n,r){if(i(n)&&i(r)){r=function(e,t){if(!P(t.raw))return t;const n=t.raw.includes("\r\n")?"\r\n":"\n",r=(t.raw.match(new RegExp("\r\n"===n?"\\r\\n":"\\n","g"))||[]).length;return r>0?Object.assign(Object.assign({},t),{loc:{start:e.loc.start,end:{line:e.loc.start.line+r,column:3}}}):Object.assign(Object.assign({},t),{loc:{start:e.loc.start,end:{line:e.loc.start.line,column:e.loc.start.column+t.raw.length}}})}(n,Be(r.value,n.raw))}if(a(n)&&a(r)){const e=n.raw,t=r.value,l=Se.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(m(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)&&u(t.value)&&!u(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(d(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}_e(r,{lines:n.loc.start.line-r.loc.start.line,columns:n.loc.start.column-r.loc.start.column});const l=y(n.loc),s=y(r.loc);Fe({lines:s.lines-l.lines,columns:s.columns-l.columns},ke(e),r,n)}function Ee(e,t,i,a,d){if(!m(t))throw new Error(`Unsupported parent type "${t.type}" for insert`);let p,h;a=null!=a&&"number"==typeof a?a:t.items.length,s(t)||u(t)?({shift:p,offset:h}=function(e,t,n){if(!c(t))throw new Error(`Incompatible child type "${t.type}"`);const r=null!=n?e.items[n-1]:U(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 a=s(e)&&function(e){if(!e.items.length)return!1;return y(e.loc).lines>e.items.length}(e),u=l&&!0===t.comma;return xe(e,t,n,{useNewLine:a,hasCommaHandling:!0,isLastElement:l,hasSeparatingCommaBefore:o,hasSeparatingCommaAfter:i,hasTrailingComma:u})}(t,i,a)):d&&n(t)?({shift:p,offset:h}=function(e,t,n){const r=xe(e,t,n,{useNewLine:!1,hasCommaHandling:!1});return e.items.splice(n,0,t),r}(t,i,a)):({shift:p,offset:h}=function(e,t,i){if(a=t,!(o(a)||r(a)||l(a)||f(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 u=s?{line:s.loc.end.line,column:f(s)?e.loc.start.column:s.loc.start.column}:w(e.loc.start),m=r(t)||l(t);let d=0;c||(d=m?2:1);u.line+=d;const p={lines:u.line-t.loc.start.line,columns:u.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,a)),_e(i,p);const g=t.items[a-1],v=g&&ke(e).get(g);v&&(h.lines+=v.lines,h.columns+=v.columns,ke(e).delete(g));ke(e).set(i,h)}function xe(e,t,n,r={}){const{useNewLine:l=!1,skipCommaSpace:o=2,skipBracketSpace:i=1,hasCommaHandling:a=!1,isLastElement:s=!1,hasSeparatingCommaBefore:c=!1,hasSeparatingCommaAfter:u=!1,hasTrailingComma:m=!1}=r,d=n>0?e.items[n-1]:void 0,p=d?{line:d.loc.end.line,column:l?f(d)?e.loc.start.column:d.loc.start.column:d.loc.end.column}:w(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},v=y(t.loc);if(!a){return{shift:g,offset:{lines:v.lines+(h-1),columns:v.columns}}}let S=0;c&&m&&!u&&s&&(S=-1);return{shift:g,offset:{lines:v.lines+(h-1),columns:v.columns+(c||u?o:0)+(m?1+S:0)}}}function Ae(e,t,n){if(!m(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=>d(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&&f(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&&c(l)||o&&c(o),s=l&&l.loc.end.line===n.loc.start.line,u=o&&o.loc.start.line===n.loc.end.line,p=a&&(s||u),h={lines:-(i.lines-(p?1:0)),columns:-i.columns};if(void 0===l&&void 0===o&&(h.lines=0,h.columns=0),a&&s&&(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?ke(e):$e(e),w=ke(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 Ce(e,t,n=!0){if(!n)return;if(!t.items.length)return;Fe({lines:0,columns:1},$e(e),t);const r=U(t.items);Fe({lines:0,columns:1},ke(e),r)}function Oe(e,t,n=!1){if(!n)return;if(!t.items.length)return;const r=U(t.items);r.comma=!0,Fe({lines:0,columns:1},ke(e),r)}function De(t){const n=$e(t),r=ke(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};we(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}),Te.delete(t),be.delete(t)}function _e(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 we(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 Fe(e,t,n,r){const l=t.get(r||n);l&&(e.lines+=l.lines,e.columns+=l.columns),t.set(n,e)}function Ue(){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=Ne(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:S(n.loc),key:n,items:[]}}function Me(t){const n=function(t){const n=Ne(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:S(n.loc),key:n,items:[]}}function je(t,n){const r=function(t){const n=Ne(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 _e(n,{lines:0,columns:l+3-n.loc.start.column},{first_line_only:!0}),{type:e.KeyValue,loc:{start:w(r.loc.start),end:w(n.loc.end)},key:r,equals:o,value:n}}const Ke=/^[\w-]+$/;function Ne(e){return e.map((e=>Ke.test(e)?e:JSON.stringify(e))).join(".")}function Be(t,n){let r;if(n&&P(n)){let e=n.startsWith("'''");e&&t.includes("'''")&&(e=!1);const l=e?"'''":'"""',o=n.includes("\r\n")?"\r\n":"\n",i=n.startsWith(`${l}${o}`)||(n.startsWith("'''\n")||n.startsWith("'''\r\n"))&&!e;let a;a=e?t:t.replace(/\\/g,"\\\\").replace(/\x08/g,"\\b").replace(/\f/g,"\\f").replace(/\t/g,"\\t").replace(/[\x00-\x07\x0B\x0E-\x1F\x7F]/g,(e=>"\\u"+e.charCodeAt(0).toString(16).padStart(4,"0").toUpperCase())).replace(/"""/g,'""\\"'),r=i?`${l}${o}${a}${l}`:`${l}${a}${l}`}else r=JSON.stringify(t);return{type:e.String,loc:{start:{line:1,column:0},end:{line:1,column:r.length}},raw:r,value:t}}function Ze(t){return{type:e.InlineItem,loc:S(t.loc),item:t,comma:!1}}const We=!1,Pe=!0,ze=!1;function Ve(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=Ve(n,t);if(null!==e)return e;if(n.item){const e=Ve(n.item,t);if(null!==e)return e}}for(const n of["value","key","item"])if(e[n]){const r=Ve(e[n],t);if(null!==r)return r}return null}function He(e){if(!e||"object"!=typeof e)return null;if("InlineArray"===e.type&&e.items&&Array.isArray(e.items))return Re(e.items);if("InlineTable"===e.type&&e.items&&Array.isArray(e.items))return Re(e.items);if("KeyValue"===e.type&&e.value)return He(e.value);if(e.items&&Array.isArray(e.items))for(const t of e.items){const e=He(t);if(null!==e)return e}return null}function Re(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 qe(e){if(!s(e))return!1;if(0===e.items.length)return!1;return!0===e.items[e.items.length-1].comma}function Ye(e){if(!u(e))return!1;if(0===e.items.length)return!1;return!0===e.items[e.items.length-1].comma}function Je(e){const t=e.indexOf("\n");return t>0&&"\r"===e.substring(t-1,t)?"\r\n":"\n"}function Ge(e,t){var n,r,l,o,i;if(e){if(e instanceof Qe)return e;{const a=function(e){if(!e||"object"!=typeof e)return{};const t=new Set(["newLine","trailingNewline","trailingComma","bracketSpacing","inlineTableStart","truncateZeroTimeInDates"]),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":case"truncateZeroTimeInDates":"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 Qe(null!==(n=a.newLine)&&void 0!==n?n:t.newLine,null!==(r=a.trailingNewline)&&void 0!==r?r:t.trailingNewline,null!==(l=a.trailingComma)&&void 0!==l?l:t.trailingComma,null!==(o=a.bracketSpacing)&&void 0!==o?o:t.bracketSpacing,void 0!==a.inlineTableStart?a.inlineTableStart:t.inlineTableStart,null!==(i=a.truncateZeroTimeInDates)&&void 0!==i?i:t.truncateZeroTimeInDates)}}return t}class Qe{constructor(e,t,n,r,l,o){this.newLine=null!=e?e:"\n",this.trailingNewline=null!=t?t:1,this.trailingComma=null!=n?n:We,this.bracketSpacing=null!=r?r:Pe,this.inlineTableStart=null!=l?l:1,this.truncateZeroTimeInDates=null!=o?o:ze}static default(){return new Qe("\n",1,We,Pe,1,ze)}static autoDetectFormat(e){const t=Qe.default();t.newLine=Je(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=he(e),r=Array.from(n);t.trailingComma=function(e){const t=Array.from(e);for(const e of t){const t=He(e);if(null!==t)return t}return We}(r),t.bracketSpacing=function(e,t){const n=Array.from(t);for(const t of n){const n=Ve(t,e);if(null!==n)return n}return Pe}(e,r)}catch(e){t.trailingComma=We,t.bracketSpacing=Pe}return t.inlineTableStart=1,t.truncateZeroTimeInDates=ze,t}}function Xe(e,t){if(0===t.inlineTableStart)return e;return e.items.filter((e=>{if(!o(e))return!1;const n=u(e.value),r=s(e.value)&&e.value.items.length&&u(e.value.items[0].item);if(n||r){const n=nt(e.key.value);return void 0===t.inlineTableStart||n<t.inlineTableStart}return!1})).forEach((t=>{Ae(e,e,t),u(t.value)?Ee(e,e,et(t)):function(e){const t=Ue();for(const n of e.value.items){const r=Me(e.key.value);Ee(t,t,r);for(const e of n.item.items)Ee(t,r,e.item)}return De(t),t.items}(t).forEach((t=>{Ee(e,e,t)}))})),De(e),e}function et(e){const t=Le(e.key.value);for(const n of e.value.items)Ee(t,t,n.item);return De(t),t}function tt(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 nt(e){return Math.max(0,e.length-1)}function rt(e,t,n){var r;for(let l=e.items.length-1;l>=0;l--){const i=e.items[l];if(o(i)&&u(i.value)){const l=[...e.key.item.value,...i.key.value];if(nt(l)<(null!==(r=n.inlineTableStart)&&void 0!==r?r:1)){const r=Le(l);for(const e of i.value.items)Ee(r,r,e.item);Ae(e,e,i),tt(e),t.push(r),rt(r,t,n)}}}}function lt(e,t=Qe.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=at(e));const n=Ue();for(const r of ot(e,t))Ee(n,n,r);De(n);const r=B(n,(e=>Xe(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)&&u(r.value)){if(nt(r.key.value)<t.inlineTableStart){const l=et(r);Ae(e,e,r),Ee(e,e,l),rt(l,n,t)}}else"Table"===r.type&&rt(r,n,t);for(const t of n)Ee(e,e,t);return De(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)),_e(r,{lines:t,columns:0}),n=r.loc.end.line;return e}(r)}function*ot(e,t){for(const n of Object.keys(e))yield je([n],it(e[n],t))}function it(t,n){if(null==t)throw new Error('"null" and "undefined" values are not supported');return function(e){return"string"==typeof e}(t)?Be(t):M(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&&(!M(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):j(t)?function(t,n){n.truncateZeroTimeInDates&&0===t.getUTCHours()&&0===t.getUTCMinutes()&&0===t.getUTCSeconds()&&0===t.getUTCMilliseconds()&&(t=new ne(t.toISOString().split("T")[0]));const r=t.toISOString();return{type:e.DateTime,loc:{start:{line:1,column:0},end:{line:1,column:r.length}},raw:r,value:t}}(t,n):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){Ee(r,r,Ze(it(e,n)))}return Ce(r,r,n.bracketSpacing),Oe(r,r,n.trailingComma),De(r),r}(t,n):function(t,n){if(t=at(t),!K(t))return it(t,n);const r={type:e.InlineTable,loc:{start:{line:1,column:0},end:{line:1,column:2}},items:[]},l=[...ot(t,n)];for(const e of l){Ee(r,r,Ze(e))}return Ce(r,r,n.bracketSpacing),Oe(r,r,n.trailingComma),De(r),r}(t,n)}function at(e){return e?j(e)?e:"function"==typeof e.toJSON?e.toJSON():e:e}const st=/(\r\n|\n)/g;function ct(t,n){const r=[];return we(t,{[e.TableKey](e){const{start:t,end:n}=e.loc;ut(r,{start:t,end:{line:t.line,column:t.column+1}},"["),ut(r,{start:{line:n.line,column:n.column-1},end:n},"]")},[e.TableArrayKey](e){const{start:t,end:n}=e.loc;ut(r,{start:t,end:{line:t.line,column:t.column+2}},"[["),ut(r,{start:{line:n.line,column:n.column-2},end:n},"]]")},[e.KeyValue](e){const{start:{line:t}}=e.loc;ut(r,{start:{line:t,column:e.equals},end:{line:t,column:e.equals+1}},"=")},[e.Key](e){ut(r,e.loc,e.raw)},[e.String](e){ut(r,e.loc,e.raw)},[e.Integer](e){ut(r,e.loc,e.raw)},[e.Float](e){ut(r,e.loc,e.raw)},[e.Boolean](e){ut(r,e.loc,e.value.toString())},[e.DateTime](e){ut(r,e.loc,e.raw)},[e.InlineArray](e){const{start:t,end:n}=e.loc;ut(r,{start:t,end:{line:t.line,column:t.column+1}},"["),ut(r,{start:{line:n.line,column:n.column-1},end:n},"]")},[e.InlineTable](e){const{start:t,end:n}=e.loc;ut(r,{start:t,end:{line:t.line,column:t.column+1}},"{"),ut(r,{start:{line:n.line,column:n.column-1},end:n},"}")},[e.InlineItem](e){if(!e.comma)return;const t=e.loc.end;ut(r,{start:t,end:{line:t.line,column:t.column+1}},",")},[e.Comment](e){ut(r,e.loc,e.raw)}}),r.join(n.newLine)+n.newLine.repeat(n.trailingNewline)}function ut(e,t,n){const r=n.split(st).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=ft(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 ft(e,t){if(!e[t-1])for(let n=0;n<t;n++)e[n]||(e[n]="");return e[t-1]}function mt(t,n=""){const r=L(),l=new Set,o=new Set,i=new Set;let a=r,s=0;return we(t,{[e.Table](e){const t=e.key.item.value;try{pt(r,t,e.type,{tables:l,table_arrays:o,defined:i})}catch(t){const r=t;throw new T(n,e.key.loc.start,r.message)}const s=gt(t);l.add(s),i.add(s),a=ht(r,t)},[e.TableArray](e){const t=e.key.item.value;try{pt(r,t,e.type,{tables:l,table_arrays:o,defined:i})}catch(t){const r=t;throw new T(n,e.key.loc.start,r.message)}const s=gt(t);o.add(s),i.add(s),a=function(e,t){const n=yt(e,t.slice(0,-1)),r=U(t);n[r]||(n[r]=[]);const l=L();return n[U(t)].push(l),l}(r,t)},[e.KeyValue]:{enter(e){if(s>0)return;const t=e.key.value;try{pt(a,t,e.type,{tables:l,table_arrays:o,defined:i})}catch(t){const r=t;throw new T(n,e.key.loc.start,r.message)}const r=dt(e.value);(t.length>1?ht(a,t.slice(0,-1)):a)[U(t)]=r,i.add(gt(t))}},[e.InlineTable]:{enter(){s++},exit(){s--}}}),r}function dt(t){switch(t.type){case e.InlineTable:const n=L();return t.items.forEach((({item:e})=>{const t=e.key.value,r=dt(e.value);(t.length>1?ht(n,t.slice(0,-1)):n)[U(t)]=r})),n;case e.InlineArray:return t.items.map((e=>dt(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 pt(t,n,r,l){let o=[],i=0;for(const e of n){if(o.push(e),!N(t,e))return;if("object"!=typeof(a=t[e])&&!j(a))throw new Error(`Invalid key, a value has already been defined for ${o.join(".")}`);const r=gt(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?U(t[e]):t[e]}var a;const s=gt(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 ht(e,t){const n=yt(e,t.slice(0,-1)),r=U(t);return n[r]||(n[r]=L()),n[r]}function yt(e,t){return t.reduce(((e,t)=>(e[t]||(e[t]=L()),Array.isArray(e[t])?U(e[t]):e[t])),e)}function gt(e){return e.join(".")}var vt,wt,St,Tt;function $t(e){return e.type===vt.Remove}function bt(e,t,n=[]){return e===t||(l=t,j(r=e)&&j(l)&&r.toISOString()===l.toISOString())?[]:Array.isArray(e)&&Array.isArray(t)?function(e,t,n=[]){let r=[];const l=e.map(Z),o=t.map(Z);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:vt.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 W(r,bt(e[a],t[a],n.concat(a))),void(l[a]=i);r.push({type:vt.Add,path:n.concat(a)}),l.splice(a,0,i)}));for(let e=o.length;e<l.length;e++)r.push({type:vt.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=>Z(e[t]))),i=Object.keys(t),a=i.map((e=>Z(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))W(r,bt(e[l],t[l],u));else if(s(o[c],a)){const e=i[a.indexOf(o[c])];r.push({type:vt.Rename,path:n,from:l,to:e})}else r.push({type:vt.Remove,path:u})})),i.forEach(((e,t)=>{l.includes(e)||s(a[t],o)||r.push({type:vt.Add,path:n.concat(e)})})),r}(e,t,n):[{type:vt.Edit,path:n}];var r,l}function kt(e,t){if(!t.length)return c(e)&&o(e.item)?e.item:e;if(o(e))return kt(e.value,t);const n={};let i;if(m(e)&&e.items.some(((e,a)=>{try{let s=[];if(o(e))s=e.key.value;else if(r(e))s=e.key.item.value;else if(l(e)){s=e.key.item.value;const t=Z(s);n[t]||(n[t]=0);const r=n[t]++;s=s.concat(r)}else c(e)&&o(e.item)?s=e.item.key.value:c(e)&&(s=[a]);return!(!s.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}(s,t.slice(0,s.length)))&&(i=kt(e,t.slice(s.length)),!0)}catch(e){return!1}})),!i)throw new Error(`Could not find node at path ${t.join(".")}`);return i}function It(e,t){try{return kt(e,t)}catch(e){}}function Et(e,t){let n,r=t;for(;r.length&&!n;)r=r.slice(0,-1),n=It(e,r);if(!n)throw new Error(`Count not find parent node for path ${t.join(".")}`);return n}function xt(t,i,a){const f=[...t],m=mt(f),p={type:e.Document,loc:{start:{line:1,column:0},end:{line:1,column:0}},items:f},h=lt(i,Ge(Object.assign(Object.assign({},a),{inlineTableStart:void 0}),a)),y=function(e){for(let t=0;t<e.length;t++){const n=e[t];if($t(n)){let r=t+1;for(;r<e.length;){const l=e[r];if($t(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}(bt(m,i));if(0===y.length)return{tomlString:ct(f,a),document:p};const g=function(e,t,i,a){return i.forEach((i=>{if(function(e){return e.type===vt.Add}(i)){const f=kt(t,i.path),m=i.path.slice(0,-1);let d,p=U(i.path),h=l(f);if(M(p)&&!m.some(M)){const t=It(e,m.concat(0));t&&l(t)&&(h=!0)}if(r(f))d=e;else if(h){d=e;const t=e,n=It(t,m.concat(p-1)),r=It(t,m.concat(p));p=r?t.items.indexOf(r):n?t.items.indexOf(n)+1:t.items.length}else d=Et(e,i.path),o(d)&&(d=d.value);if(l(d)||s(d)||n(d)){if(s(d)){const e=qe(d);c(f)&&(f.comma=e)}if(void 0!==a.inlineTableStart&&a.inlineTableStart>0&&n(d)&&r(f)){const t=At(f,e,a);Ee(e,d,f,p);for(const n of t)Ee(e,e,n,void 0)}else Ee(e,d,f,p)}else if(u(d)){const t=Ye(d);if(o(f)){const n=Ze(f);n.comma=t,Ee(e,d,n)}else Ee(e,d,f)}else if(void 0!==a.inlineTableStart&&a.inlineTableStart>0&&o(f)&&u(f.value)&&r(d)){nt([...d.key.item.value,...f.key.value])<a.inlineTableStart?function(e,t,n,r){const l=t.key.item.value,i=[...l,...e.key.value],a=Le(i);if(u(e.value))for(const t of e.value.items)c(t)&&o(t.item)&&Ee(n,a,t.item,void 0);Ee(n,n,a,void 0),tt(t);const s=At(a,n,r);for(const e of s)Ee(n,n,e,void 0)}(f,d,e,a):Ee(e,d,f)}else 0===a.inlineTableStart&&o(f)&&u(f.value)&&n(d)?Ee(e,d,f,void 0,!0):Ee(e,d,f)}else if(function(e){return e.type===vt.Edit}(i)){let n,r=kt(e,i.path),l=kt(t,i.path);if(o(r)&&o(l)){if(s(r.value)&&s(l.value)){const e=qe(r.value),t=l.value;if(t.items.length>0){t.items[t.items.length-1].comma=e}}if(u(r.value)&&u(l.value)){const e=Ye(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)&&c(l)&&o(l.item))n=r,r=r.value,l=l.item.value;else if(c(r)&&o(l))n=r,r=r.item;else if(n=Et(e,i.path),o(n)){const t=i.path.slice(0,-1),r=kt(e,t);o(r)&&s(r.value)&&(n=r.value)}Ie(e,n,r,l)}else if($t(i)){let t=Et(e,i.path);o(t)&&(t=t.value);const n=kt(e,i.path);Ae(e,t,n)}else if(function(e){return e.type===vt.Move}(i)){let t=kt(e,i.path);d(t)&&(t=t.item),o(t)&&(t=t.value);const n=t.items[i.from];Ae(e,t,n),Ee(e,t,n,i.to)}else if(function(e){return e.type===vt.Rename}(i)){let n=kt(e,i.path.concat(i.from)),r=kt(t,i.path.concat(i.to));d(n)&&(n=n.item),d(r)&&(r=r.item),Ie(e,n,n.key,r.key)}})),De(e),e}(p,h,y,a);return{tomlString:ct(g.items,a),document:g}}function At(e,t,n){const r=[],l=(e,r)=>{var i;for(let a=e.items.length-1;a>=0;a--){const s=e.items[a];if(o(s)&&u(s.value)){const u=[...e.key.item.value,...s.key.value];if(nt(u)<(null!==(i=n.inlineTableStart)&&void 0!==i?i:1)&&0!==n.inlineTableStart){const n=Le(u);for(const e of s.value.items)c(e)&&o(e.item)&&Ee(t,n,e.item,void 0);e.items.splice(a,1),tt(e),r.push(n),l(n,r)}}}};return l(e,r),r}function Ct(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 Ot(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 Dt(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"}(vt||(vt={})),"function"==typeof SuppressedError&&SuppressedError;function _t(e){if(e instanceof Date)return new Date(e.getTime());if(Array.isArray(e))return e.map(_t);if(e&&"object"==typeof e){const t={};for(const[n,r]of Object.entries(e))t[n]=_t(r);return t}return e}wt=new WeakMap,St=new WeakMap,Tt=new WeakMap,exports.TomlDocument=class{constructor(e){wt.set(this,void 0),St.set(this,void 0),Tt.set(this,void 0),Ot(this,St,e,"f"),Ot(this,wt,Array.from(he(e)),"f"),Ot(this,Tt,Qe.autoDetectFormat(e),"f")}get toTomlString(){return Ct(this,St,"f")}get toJsObject(){return _t(mt(Ct(this,wt,"f")))}get ast(){return Ct(this,wt,"f")}patch(e,t){const n=Ge(t,Ct(this,Tt,"f")),{tomlString:r,document:l}=xt(Ct(this,wt,"f"),e,n);Ot(this,wt,l.items,"f"),Ot(this,St,r,"f")}update(e){if(e===this.toTomlString)return;const t=this.toTomlString.split(Ct(this,Tt,"f").newLine),n=Je(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=Dt(t.loc.end,r)<0,n=Dt(t.loc.start,r)<0;if(!e){if(n&&!e)break;break}l.push(t),o=t.loc.end}return{truncatedAst:l,lastEndPosition:o}}(Ct(this,wt,"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(Ct(this,Tt,"f").newLine);Ot(this,wt,Array.from(function*(e,t){for(const t of e)yield t;for(const e of he(t))yield e}(a,m)),"f"),Ot(this,St,e,"f"),Ot(this,Tt,Qe.autoDetectFormat(e),"f")}overwrite(e){e!==this.toTomlString&&(Ot(this,wt,Array.from(he(e)),"f"),Ot(this,St,e,"f"),Ot(this,Tt,Qe.autoDetectFormat(e),"f"))}},exports.TomlFormat=Qe,exports.parse=function(e){return mt(he(e),e)},exports.patch=function(e,t,n){return xt(he(e),t,Ge(n,Qe.autoDetectFormat(e))).tomlString},exports.stringify=function(e,t){const n=Ge(t,Qe.default());return ct(lt(e,n).items,n)};
1
+ //! @decimalturn/toml-patch v0.6.0 - 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.String}function a(t){return t.type===e.DateTime}function s(t){return t.type===e.InlineArray}function c(t){return t.type===e.InlineItem}function u(t){return t.type===e.InlineTable}function f(t){return t.type===e.Comment}function m(e){return n(e)||r(e)||l(e)||u(e)||s(e)}function d(t){return function(t){return t.type===e.TableKey}(t)||function(t){return t.type===e.TableArrayKey}(t)||c(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 p{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 h();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?h():(this.peeked||(this.peeked=this.iterator.next()),this.peeked)}[Symbol.iterator](){return this}}function h(){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 g(e,t){const n=Array.isArray(e)?e:v(e),r=n.findIndex((e=>e>=t))+1;return{line:r,column:t-(n[r-2]+1||0)}}function v(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 w(e){return{line:e.line,column:e.column}}function S(e){return{start:w(e.start),end:w(e.end)}}class T 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=v(e),r=n[t.line-2]||0,l=n[t.line-1]||e.length;return e.substring(r,l)}(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 b=/\s/,$=/(\r\n|\n)/,I='"',k="'",E=/[\w,\d,\",\',\+,\-,\_]/;function*x(e){const n=new p(e[Symbol.iterator]());n.next();const r=function(e){const t=v(e);return(e,n)=>({start:g(t,e),end:g(t,n)})}(e);for(;!n.done;){if(b.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 C(n,r);else{const t=_(e,n.index,k)||_(e,n.index,I);t?yield O(n,r,t,e):yield D(n,r,e)}n.next()}}function A(e,t,n){return{type:n,raw:e.value,loc:t(e.index,e.index+1)}}function C(e,n){const r=e.index;let l=e.value;for(;!e.peek().done&&!$.test(e.peek().value);)e.next(),l+=e.value;return{type:t.Comment,raw:l,loc:n(r,e.index+1)}}function O(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)||F(l,e.index,r));)a+=e.value,e.next();if(e.done)throw new T(l,g(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 D(e,n,r){if(!E.test(e.value))throw new T(r,g(r,e.index),`Unsupported character "${e.value}". Expected ALPHANUMERIC, ", ', +, -, or _`);const l=e.index;let o=e.value,i=e.value===I,a=e.value===k;const s=e=>{if(e.peek().done)return!0;const t=e.peek().value;return!(i||a)&&(b.test(t)||","===t||"."===t||"]"===t||"}"===t||"="===t||"#"===t)};for(;!e.done&&!s(e)&&(e.next(),e.value===I&&(i=!i),e.value!==k||i||(a=!a),o+=e.value,!e.peek().done);){let t=e.peek().value;i&&"\\"===e.value&&(t===I?(o+=I,e.next()):"\\"===t&&(o+="\\",e.next()))}if(i||a)throw new T(r,g(r,l),`Expected close of string with ${i?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;if(n===k)return n;const r=e.slice(0,t).match(/\\+$/);if(!r)return n;return!(r[0].length%2!=0)&&n}function F(e,t,n){return!!n&&(e[t]===n&&e[t+1]===n&&e[t+2]===n&&e[t+3]===n)}function U(e){return e[e.length-1]}function L(){return Object.create(null)}function M(e){return"number"==typeof e&&e%1==0&&isFinite(e)&&!Object.is(e,-0)}function K(e){return"[object Date]"===Object.prototype.toString.call(e)}function j(e){return e&&"object"==typeof e&&!K(e)&&!Array.isArray(e)}function N(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Z(e,...t){return t.reduce(((e,t)=>t(e)),e)}function B(e){if(j(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 W(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]}function P(e){return e.startsWith('"""')||e.startsWith("'''")}const z=/\r\n/g,V=/\n/g,H=/^(\r\n|\n)/,R=/(?<!\\)(?:\\\\)*(\\\s*[\n\r\n]\s*)/g;function q(e){return e.startsWith("'''")?Z(Q(e,3),X):e.startsWith(k)?Q(e,1):e.startsWith('"""')?Z(Q(e,3),X,te,ee,J,G):e.startsWith(I)?Z(Q(e,1),G):e}function J(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 Y(e,t){let n=0;for(let r=t-1;r>=0&&"\\"===e[r];r--)n++;return n%2!=0}function G(e){const t=e;let n=t.replace(/\\x([a-fA-F0-9]{2})/g,((e,n,r)=>{if(Y(t,r))return e;const l=parseInt(n,16),o=String.fromCharCode(l);return l<32||34===l||92===l?Q(JSON.stringify(o),1):o}));const r=n;n=r.replace(/\\e/g,((e,t)=>Y(r,t)?e:"\\u001b"));const l=n.replace(/\\U[a-fA-F0-9]{8}/g,(e=>{const t=parseInt(e.replace("\\U",""),16),n=String.fromCodePoint(t);return Q(JSON.stringify(n),1)})),o=l.replace(/\t/g,"\\t");return JSON.parse(`"${o}"`)}function Q(e,t){return e.slice(t,e.length-t)}function X(e){return e.replace(H,"")}function ee(e){return e.replace(z,"\\r\\n").replace(V,"\\n")}function te(e){return e.replace(R,((e,t)=>e.replace(t,"")))}class ne{static createDateWithOriginalFormat(e,t){if(ne.IS_DATE_ONLY.test(t)){if(0!==e.getUTCHours()||0!==e.getUTCMinutes()||0!==e.getUTCSeconds()||0!==e.getUTCMilliseconds()){if(e instanceof ie)return e;let t=e.toISOString().replace("Z","");return t=t.replace(/\.000$/,""),new oe(t,!1)}const t=e.toISOString().split("T")[0];return new re(t)}if(ne.IS_TIME_ONLY.test(t)){if(e instanceof le)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 le(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 le(a,t)}}}if(ne.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 oe(r,!1,t)}if(ne.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 oe(r,!0,t)}if(ne.IS_OFFSET_DATETIME_T.test(t)||ne.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=ne.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"),h=s.getUTCMilliseconds(),y=l?" ":"T";let g=`${m}:${d}:${p}`;if(o){const e=o[1].length;g+=`.${String(h).padStart(3,"0").slice(0,e)}`}else if(h>0){g+=`.${String(h).padStart(3,"0").replace(/0+$/,"")}`}return new ie(`${c}-${u}-${f}${y}${g}${r}`,l)}return e}}ne.IS_DATE_ONLY=/^\d{4}-\d{2}-\d{2}$/,ne.IS_TIME_ONLY=/^\d{2}:\d{2}(?::\d{2})?(?:\.\d+)?$/,ne.IS_LOCAL_DATETIME_T=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}(?::\d{2})?(?:\.\d+)?$/,ne.IS_LOCAL_DATETIME_SPACE=/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}(?::\d{2})?(?:\.\d+)?$/,ne.IS_OFFSET_DATETIME_T=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}(?::\d{2})?(?:\.\d+)?(?:[Zz]|[+-]\d{2}:\d{2})$/,ne.IS_OFFSET_DATETIME_SPACE=/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}(?::\d{2})?(?:\.\d+)?(?:[Zz]|[+-]\d{2}:\d{2})$/,ne.IS_FULL_DATE=/(\d{4})-(\d{2})-(\d{2})/,ne.IS_FULL_TIME=/(\d{2}):(\d{2})(?::(\d{2}))?/;class re extends Date{constructor(e){super(e)}toISOString(){return`${this.getUTCFullYear()}-${String(this.getUTCMonth()+1).padStart(2,"0")}-${String(this.getUTCDate()).padStart(2,"0")}`}}class le extends Date{constructor(e,t){let n=e;/:\d{2}:\d{2}/.test(e)||(n=e+":00"),super(`0000-01-01T${n}Z`),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 oe extends Date{constructor(e,t=!1,n){let r=e;/\d{2}:\d{2}:\d{2}/.test(e)||(r=e.replace(/(\d{2}:\d{2})([\s\-+TZ]|$)/,"$1:00$2")),super(r.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 ie extends Date{constructor(e,t=!1){let n=e;/\d{2}:\d{2}:\d{2}/.test(e)||(n=e.replace(/(\d{2}:\d{2})([\s\-+TZ]|$)/,"$1:00$2")),super(n.replace(" ","T")),this.useSpaceSeparator=!1,this.useSpaceSeparator=t,this.originalFormat=e;const r=e.match(/([+-]\d{2}:\d{2}|[Zz])$/);r&&(this.originalOffset="z"===r[1]?"Z":r[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 ae=ne,se="true",ce=/e/i,ue=/\_/g,fe=/inf/,me=/nan/,de=/^0x/,pe=/^0o/,he=/^0b/;function*ye(e){const t=x(e),n=new p(t);for(;!n.next().done;)yield*ge(n,e)}function*ge(n,r){if(n.value.type===t.Comment)yield we(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 T(r,n.value.loc.start,`Expected table opening "[", found ${n.value.raw}`);if(!o&&("["!==n.value.raw||"["!==n.peek().value.raw))throw new T(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 T(r,i.loc.start,"Expected table key, reached end of file");i.item={type:e.Key,loc:S(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 T(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 T(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(),W(a,[...ge(n,r)]);return{type:o?e.Table:e.TableArray,loc:{start:w(i.loc.start),end:a.length?w(a[a.length-1].loc.end):w(i.loc.end)},key:i,items:a}}(n,r);else{if(n.value.type!==t.Literal)throw new T(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:S(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 T(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 T(r,l.loc.start,"Expected value for key-value, reached end of file");const[i,...a]=ve(n,r);return[{type:e.KeyValue,key:l,value:i,loc:{start:w(l.loc.start),end:w(i.loc.end)},equals:o},...a]}(n,r)}}function*ve(n,r){if(n.value.type===t.Literal)n.value.raw[0]===I||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===se||"false"===n.value.raw?yield function(t){return{type:e.Boolean,loc:t.value.loc,value:t.value.raw===se}}(n):ae.IS_FULL_DATE.test(n.value.raw)||ae.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&&ae.IS_FULL_DATE.test(i)&&ae.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 T(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(ae.IS_FULL_DATE.test(i))l=ae.IS_DATE_ONLY.test(i)?new re(i):ae.IS_LOCAL_DATETIME_T.test(i)?new oe(i,!1):ae.IS_LOCAL_DATETIME_SPACE.test(i)?new oe(i,!0):ae.IS_OFFSET_DATETIME_T.test(i)?new ie(i,!1):ae.IS_OFFSET_DATETIME_SPACE.test(i)?new ie(i,!0):new Date(i.replace(" ","T"));else if(ae.IS_TIME_ONLY.test(i))l=new le(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||fe.test(n.value.raw)||me.test(n.value.raw)||ce.test(n.value.raw)&&!de.test(n.value.raw)?yield function(n,r){let l,o=n.value.loc,i=n.value.raw;if(fe.test(i))l="-inf"===i?-1/0:1/0;else if(me.test(i))l=NaN;else if(n.peek().done||n.peek().value.type!==t.Dot)l=Number(i.replace(ue,""));else{const e=o.start;if(n.next(),n.peek().done||n.peek().value.type!==t.Literal)throw new T(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(ue,""))}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;de.test(t.value.raw)?n=16:pe.test(t.value.raw)?n=8:he.test(t.value.raw)&&(n=2);const r=parseInt(t.value.raw.replace(ue,"").replace(pe,"").replace(he,""),n);return{type:e.Integer,loc:t.value.loc,raw:t.value.raw,value:r}}(n);else if(n.value.type===t.Curly){const[l,o]=function(n,r){if("{"!==n.value.raw)throw new T(r,n.value.loc.start,`Expected "{" for inline table, found ${n.value.raw}`);const l={type:e.InlineTable,loc:S(n.value.loc),items:[]},o=[];n.next();for(;!n.done&&(n.value.type!==t.Curly||"}"!==n.value.raw);){if(n.value.type===t.Comment){o.push(we(n)),n.next();continue}if(n.value.type===t.Comma){const e=l.items[l.items.length-1];if(!e)throw new T(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[i,...a]=ge(n,r);if(i.type!==e.KeyValue)throw new T(r,n.value.loc.start,`Only key-values are supported in inline tables, found ${i.type}`);const s={type:e.InlineItem,loc:S(i.loc),item:i,comma:!1};l.items.push(s),W(o,a),n.next()}if(n.done||n.value.type!==t.Curly||"}"!==n.value.raw)throw new T(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}else{if(n.value.type!==t.Bracket)throw new T(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 T(r,n.value.loc.start,`Expected "[" for inline array, found ${n.value.raw}`);const l={type:e.InlineArray,loc:S(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 T(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(we(n));else{const[t,...i]=ve(n,r),a={type:e.InlineItem,loc:S(t.loc),item:t,comma:!1};l.items.push(a),W(o,i)}n.next()}if(n.done||n.value.type!==t.Bracket||"]"!==n.value.raw)throw new T(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 we(t){return{type:e.Comment,loc:t.value.loc,raw:t.value.raw}}function Se(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 Te=new WeakMap,be=e=>(Te.has(e)||Te.set(e,new WeakMap),Te.get(e)),$e=new WeakMap,Ie=e=>($e.has(e)||$e.set(e,new WeakMap),$e.get(e));function ke(e,t,n,r){if(m(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)&&u(t.value)&&!u(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(d(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}_e(r,{lines:n.loc.start.line-r.loc.start.line,columns:n.loc.start.column-r.loc.start.column});const l=y(n.loc),i=y(r.loc);Fe({lines:i.lines-l.lines,columns:i.columns-l.columns},Ie(e),r,n)}function Ee(e,t,i,a,d){if(!m(t))throw new Error(`Unsupported parent type "${t.type}" for insert`);let p,h;a=null!=a&&"number"==typeof a?a:t.items.length,s(t)||u(t)?({shift:p,offset:h}=function(e,t,n){if(!c(t))throw new Error(`Incompatible child type "${t.type}"`);const r=null!=n?e.items[n-1]:U(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 a=s(e)&&function(e){if(!e.items.length)return!1;return y(e.loc).lines>e.items.length}(e),u=l&&!0===t.comma;return xe(e,t,n,{useNewLine:a,hasCommaHandling:!0,isLastElement:l,hasSeparatingCommaBefore:o,hasSeparatingCommaAfter:i,hasTrailingComma:u})}(t,i,a)):d&&n(t)?({shift:p,offset:h}=function(e,t,n){const r=xe(e,t,n,{useNewLine:!1,hasCommaHandling:!1});return e.items.splice(n,0,t),r}(t,i,a)):({shift:p,offset:h}=function(e,t,i){if(a=t,!(o(a)||r(a)||l(a)||f(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 u=s?{line:s.loc.end.line,column:f(s)?e.loc.start.column:s.loc.start.column}:w(e.loc.start),m=r(t)||l(t);let d=0;c||(d=m?2:1);u.line+=d;const p={lines:u.line-t.loc.start.line,columns:u.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,a)),_e(i,p);const g=t.items[a-1],v=g&&Ie(e).get(g);v&&(h.lines+=v.lines,h.columns+=v.columns,Ie(e).delete(g));Ie(e).set(i,h)}function xe(e,t,n,r={}){const{useNewLine:l=!1,skipCommaSpace:o=2,skipBracketSpace:i=1,hasCommaHandling:a=!1,isLastElement:s=!1,hasSeparatingCommaBefore:c=!1,hasSeparatingCommaAfter:u=!1,hasTrailingComma:m=!1}=r,d=n>0?e.items[n-1]:void 0,p=d?{line:d.loc.end.line,column:l?f(d)?e.loc.start.column:d.loc.start.column:d.loc.end.column}:w(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},v=y(t.loc);if(!a){return{shift:g,offset:{lines:v.lines+(h-1),columns:v.columns}}}let S=0;c&&m&&!u&&s&&(S=-1);return{shift:g,offset:{lines:v.lines+(h-1),columns:v.columns+(c||u?o:0)+(m?1+S:0)}}}function Ae(e,t,n){if(!m(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=>d(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&&f(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&&c(l)||o&&c(o),s=l&&l.loc.end.line===n.loc.start.line,u=o&&o.loc.start.line===n.loc.end.line,p=a&&(s||u),h={lines:-(i.lines-(p?1:0)),columns:-i.columns};if(void 0===l&&void 0===o&&(h.lines=0,h.columns=0),a&&s&&(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?Ie(e):be(e),w=Ie(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 Ce(e,t,n=!0){if(!n)return;if(!t.items.length)return;Fe({lines:0,columns:1},be(e),t);const r=U(t.items);Fe({lines:0,columns:1},Ie(e),r)}function Oe(e,t,n=!1){if(!n)return;if(!t.items.length)return;const r=U(t.items);r.comma=!0,Fe({lines:0,columns:1},Ie(e),r)}function De(t){const n=be(t),r=Ie(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};Se(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}),Te.delete(t),$e.delete(t)}function _e(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 Se(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 Fe(e,t,n,r){const l=t.get(r||n);l&&(e.lines+=l.lines,e.columns+=l.columns),t.set(n,e)}function Ue(){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=Ne(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:S(n.loc),key:n,items:[]}}function Me(t){const n=function(t){const n=Ne(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:S(n.loc),key:n,items:[]}}function Ke(t,n){const r=function(t){const n=Ne(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 _e(n,{lines:0,columns:l+3-n.loc.start.column},{first_line_only:!0}),{type:e.KeyValue,loc:{start:w(r.loc.start),end:w(n.loc.end)},key:r,equals:o,value:n}}const je=/^[\w-]+$/;function Ne(e){return e.map((e=>je.test(e)?e:JSON.stringify(e))).join(".")}function Ze(t,n){let r,l;if(n&&P(n)){let e=n.startsWith("'''");e&&t.includes("'''")&&(e=!1);const l=e?"'''":'"""',o=n.includes("\r\n")?"\r\n":"\n",i=n.startsWith(`${l}${o}`)||(n.startsWith("'''\n")||n.startsWith("'''\r\n"))&&!e;let a;a=e?t:t.replace(/\\/g,"\\\\").replace(/\x08/g,"\\b").replace(/\f/g,"\\f").replace(/\t/g,"\\t").replace(/[\x00-\x07\x0B\x0E-\x1F\x7F]/g,(e=>"\\u"+e.charCodeAt(0).toString(16).padStart(4,"0").toUpperCase())).replace(/"""/g,'""\\"'),r=i?`${l}${o}${a}${l}`:`${l}${a}${l}`}else r=JSON.stringify(t);if(r.includes("\r\n")||r.includes("\n")&&!r.includes("\r\n")){const e=r.includes("\r\n")?"\r\n":"\n",t=(r.match(new RegExp("\r\n"===e?"\\r\\n":"\\n","g"))||[]).length;l=t>0?{line:1+t,column:3}:{line:1,column:r.length}}else l={line:1,column:r.length};return{type:e.String,loc:{start:{line:1,column:0},end:l},raw:r,value:t}}function Be(t){return{type:e.InlineItem,loc:S(t.loc),item:t,comma:!1}}const We=!1,Pe=!0,ze=!1,Ve=!1;function He(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=He(n,t);if(null!==e)return e;if(n.item){const e=He(n.item,t);if(null!==e)return e}}for(const n of["value","key","item"])if(e[n]){const r=He(e[n],t);if(null!==r)return r}return null}function Re(e){if(!e||"object"!=typeof e)return null;if("InlineArray"===e.type&&e.items&&Array.isArray(e.items))return qe(e.items);if("InlineTable"===e.type&&e.items&&Array.isArray(e.items))return qe(e.items);if("KeyValue"===e.type&&e.value)return Re(e.value);if(e.items&&Array.isArray(e.items))for(const t of e.items){const e=Re(t);if(null!==e)return e}return null}function qe(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 Je(e){if(!s(e))return!1;if(0===e.items.length)return!1;return!0===e.items[e.items.length-1].comma}function Ye(e){if(!u(e))return!1;if(0===e.items.length)return!1;return!0===e.items[e.items.length-1].comma}function Ge(e){const t=e.indexOf("\n");return t>0&&"\r"===e.substring(t-1,t)?"\r\n":"\n"}function Qe(e,t){var n,r,l,o,i,a;if(e){if(e instanceof Xe)return e;{const s=function(e){if(!e||"object"!=typeof e)return{};const t=new Set(["newLine","trailingNewline","trailingComma","bracketSpacing","inlineTableStart","truncateZeroTimeInDates","useTabsForIndentation"]),n={},r=[],l=[];for(const o in e){const i=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":case"truncateZeroTimeInDates":case"useTabsForIndentation":"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 i&&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 Xe(null!==(n=s.newLine)&&void 0!==n?n:t.newLine,null!==(r=s.trailingNewline)&&void 0!==r?r:t.trailingNewline,null!==(l=s.trailingComma)&&void 0!==l?l:t.trailingComma,null!==(o=s.bracketSpacing)&&void 0!==o?o:t.bracketSpacing,void 0!==s.inlineTableStart?s.inlineTableStart:t.inlineTableStart,null!==(i=s.truncateZeroTimeInDates)&&void 0!==i?i:t.truncateZeroTimeInDates,null!==(a=s.useTabsForIndentation)&&void 0!==a?a:t.useTabsForIndentation)}}return t}class Xe{constructor(e,t,n,r,l,o,i){this.newLine=null!=e?e:"\n",this.trailingNewline=null!=t?t:1,this.trailingComma=null!=n?n:We,this.bracketSpacing=null!=r?r:Pe,this.inlineTableStart=null!=l?l:1,this.truncateZeroTimeInDates=null!=o?o:ze,this.useTabsForIndentation=null!=i?i:Ve}static default(){return new Xe("\n",1,We,Pe,1,ze,Ve)}static autoDetectFormat(e){const t=Xe.default();t.newLine=Ge(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=ye(e),r=Array.from(n);t.trailingComma=function(e){const t=Array.from(e);for(const e of t){const t=Re(e);if(null!==t)return t}return We}(r),t.bracketSpacing=function(e,t){const n=Array.from(t);for(const t of n){const n=He(t,e);if(null!==n)return n}return Pe}(e,r)}catch(e){t.trailingComma=We,t.bracketSpacing=Pe}return t.useTabsForIndentation=function(e){const t=e.split(/\r?\n/);let n=0,r=0;for(const e of t)if(0!==e.length&&("\t"===e[0]?n++:" "===e[0]&&r++,n+r>=5))break;return n>r}(e),t.inlineTableStart=1,t.truncateZeroTimeInDates=ze,t}}function et(e,t){if(0===t.inlineTableStart)return e;return e.items.filter((e=>{if(!o(e))return!1;const n=u(e.value),r=s(e.value)&&e.value.items.length&&u(e.value.items[0].item);if(n||r){const n=rt(e.key.value);return void 0===t.inlineTableStart||n<t.inlineTableStart}return!1})).forEach((t=>{Ae(e,e,t),u(t.value)?Ee(e,e,tt(t)):function(e){const t=Ue();for(const n of e.value.items){const r=Me(e.key.value);Ee(t,t,r);for(const e of n.item.items)Ee(t,r,e.item)}return De(t),t.items}(t).forEach((t=>{Ee(e,e,t)}))})),De(e),e}function tt(e){const t=Le(e.key.value);for(const n of e.value.items)Ee(t,t,n.item);return De(t),t}function nt(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 rt(e){return Math.max(0,e.length-1)}function lt(e,t,n){var r;for(let l=e.items.length-1;l>=0;l--){const i=e.items[l];if(o(i)&&u(i.value)){const l=[...e.key.item.value,...i.key.value];if(rt(l)<(null!==(r=n.inlineTableStart)&&void 0!==r?r:1)){const r=Le(l);for(const e of i.value.items)Ee(r,r,e.item);Ae(e,e,i),nt(e),t.push(r),lt(r,t,n)}}}}function ot(e,t=Xe.default()){e=function(e){const t=[],n=[];for(const r in e)j(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=st(e));const n=Ue();for(const r of it(e,t))Ee(n,n,r);De(n);const r=Z(n,(e=>et(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)&&u(r.value)){if(rt(r.key.value)<t.inlineTableStart){const l=tt(r);Ae(e,e,r),Ee(e,e,l),lt(l,n,t)}}else"Table"===r.type&&lt(r,n,t);for(const t of n)Ee(e,e,t);return De(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)),_e(r,{lines:t,columns:0}),n=r.loc.end.line;return e}(r)}function*it(e,t){for(const n of Object.keys(e))yield Ke([n],at(e[n],t))}function at(t,n){if(null==t)throw new Error('"null" and "undefined" values are not supported');return function(e){return"string"==typeof e}(t)?Ze(t):M(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&&(!M(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):K(t)?function(t,n){n.truncateZeroTimeInDates&&0===t.getUTCHours()&&0===t.getUTCMinutes()&&0===t.getUTCSeconds()&&0===t.getUTCMilliseconds()&&(t=new re(t.toISOString().split("T")[0]));const r=t.toISOString();return{type:e.DateTime,loc:{start:{line:1,column:0},end:{line:1,column:r.length}},raw:r,value:t}}(t,n):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){Ee(r,r,Be(at(e,n)))}return Ce(r,r,n.bracketSpacing),Oe(r,r,n.trailingComma),De(r),r}(t,n):function(t,n){if(t=st(t),!j(t))return at(t,n);const r={type:e.InlineTable,loc:{start:{line:1,column:0},end:{line:1,column:2}},items:[]},l=[...it(t,n)];for(const e of l){Ee(r,r,Be(e))}return Ce(r,r,n.bracketSpacing),Oe(r,r,n.trailingComma),De(r),r}(t,n)}function st(e){return e?K(e)?e:"function"==typeof e.toJSON?e.toJSON():e:e}const ct=/(\r\n|\n)/g;function ut(t,n){const r=[],l=n.useTabsForIndentation?"\t":" ";if(Se(t,{[e.TableKey](e){const{start:t,end:n}=e.loc;ft(r,{start:t,end:{line:t.line,column:t.column+1}},"[",l),ft(r,{start:{line:n.line,column:n.column-1},end:n},"]",l)},[e.TableArrayKey](e){const{start:t,end:n}=e.loc;ft(r,{start:t,end:{line:t.line,column:t.column+2}},"[[",l),ft(r,{start:{line:n.line,column:n.column-2},end:n},"]]",l)},[e.KeyValue](e){const{start:{line:t}}=e.loc;ft(r,{start:{line:t,column:e.equals},end:{line:t,column:e.equals+1}},"=",l)},[e.Key](e){ft(r,e.loc,e.raw,l)},[e.String](e){ft(r,e.loc,e.raw,l)},[e.Integer](e){ft(r,e.loc,e.raw,l)},[e.Float](e){ft(r,e.loc,e.raw,l)},[e.Boolean](e){ft(r,e.loc,e.value.toString(),l)},[e.DateTime](e){ft(r,e.loc,e.raw,l)},[e.InlineArray](e){const{start:t,end:n}=e.loc;ft(r,{start:t,end:{line:t.line,column:t.column+1}},"[",l),ft(r,{start:{line:n.line,column:n.column-1},end:n},"]",l)},[e.InlineTable](e){const{start:t,end:n}=e.loc;ft(r,{start:t,end:{line:t.line,column:t.column+1}},"{",l),ft(r,{start:{line:n.line,column:n.column-1},end:n},"}",l)},[e.InlineItem](e){if(!e.comma)return;const t=e.loc.end;ft(r,{start:t,end:{line:t.line,column:t.column+1}},",",l)},[e.Comment](e){ft(r,e.loc,e.raw,l)}}),n.useTabsForIndentation)for(let e=0;e<r.length;e++){const t=r[e],n=t.match(/^( +)/);if(n){const l=n[1],o="\t".repeat(l.length);r[e]=o+t.substring(l.length)}}return r.join(n.newLine)+n.newLine.repeat(n.trailingNewline)}function ft(e,t,n,r=" "){const l=n.split(ct).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 r=t.start.line;r<=t.end.line;r++){const o=mt(e,r);if(void 0===o)throw new Error(`Line ${r} is uninitialized when writing "${n}" at ${t.start.line}:${t.start.column} to ${t.end.line}:${t.end.column}`);const i=r===t.start.line,a=r===t.end.line;let s="";if(i){const e=o.substring(0,t.start.column);s=e.length<t.start.column?e.padEnd(t.start.column," "):e}const c=a?o.substring(t.end.column):"";e[r-1]=s+l[r-t.start.line]+c}}function mt(e,t){if(!e[t-1])for(let n=0;n<t;n++)e[n]||(e[n]="");return e[t-1]}function dt(t,n=""){const r=L(),l=new Set,o=new Set,i=new Set;let a=r,s=0;return Se(t,{[e.Table](e){const t=e.key.item.value;try{ht(r,t,e.type,{tables:l,table_arrays:o,defined:i})}catch(t){const r=t;throw new T(n,e.key.loc.start,r.message)}const s=vt(t);l.add(s),i.add(s),a=yt(r,t)},[e.TableArray](e){const t=e.key.item.value;try{ht(r,t,e.type,{tables:l,table_arrays:o,defined:i})}catch(t){const r=t;throw new T(n,e.key.loc.start,r.message)}const s=vt(t);o.add(s),i.add(s),a=function(e,t){const n=gt(e,t.slice(0,-1)),r=U(t);n[r]||(n[r]=[]);const l=L();return n[U(t)].push(l),l}(r,t)},[e.KeyValue]:{enter(e){if(s>0)return;const t=e.key.value;try{ht(a,t,e.type,{tables:l,table_arrays:o,defined:i})}catch(t){const r=t;throw new T(n,e.key.loc.start,r.message)}const r=pt(e.value);(t.length>1?yt(a,t.slice(0,-1)):a)[U(t)]=r,i.add(vt(t))}},[e.InlineTable]:{enter(){s++},exit(){s--}}}),r}function pt(t){switch(t.type){case e.InlineTable:const n=L();return t.items.forEach((({item:e})=>{const t=e.key.value,r=pt(e.value);(t.length>1?yt(n,t.slice(0,-1)):n)[U(t)]=r})),n;case e.InlineArray:return t.items.map((e=>pt(e.item)));case e.DateTime:case e.String:case e.Integer:case e.Float:case e.Boolean:return t.value;default:throw new Error(`Unrecognized value type "${t.type}"`)}}function ht(t,n,r,l){let o=[],i=0;for(const e of n){if(o.push(e),!N(t,e))return;if("object"!=typeof(a=t[e])&&!K(a))throw new Error(`Invalid key, a value has already been defined for ${o.join(".")}`);const r=vt(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?U(t[e]):t[e]}var a;const s=vt(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 yt(e,t){const n=gt(e,t.slice(0,-1)),r=U(t);return n[r]||(n[r]=L()),n[r]}function gt(e,t){return t.reduce(((e,t)=>(e[t]||(e[t]=L()),Array.isArray(e[t])?U(e[t]):e[t])),e)}function vt(e){return e.join(".")}var wt,St,Tt,bt;function $t(e){return e.type===wt.Remove}function It(e,t,n=[]){return e===t||(l=t,K(r=e)&&K(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:wt.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 W(r,It(e[a],t[a],n.concat(a))),void(l[a]=i);r.push({type:wt.Add,path:n.concat(a)}),l.splice(a,0,i)}));for(let e=o.length;e<l.length;e++)r.push({type:wt.Remove,path:n.concat(e)});return r}(e,t,n):j(e)&&j(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))W(r,It(e[l],t[l],u));else if(s(o[c],a)){const e=i[a.indexOf(o[c])];r.push({type:wt.Rename,path:n,from:l,to:e})}else r.push({type:wt.Remove,path:u})})),i.forEach(((e,t)=>{l.includes(e)||s(a[t],o)||r.push({type:wt.Add,path:n.concat(e)})})),r}(e,t,n):[{type:wt.Edit,path:n}];var r,l}function kt(e,t){if(!t.length)return c(e)&&o(e.item)?e.item:e;if(o(e))return kt(e.value,t);const n={};let i;if(m(e)&&e.items.some(((e,a)=>{try{let s=[];if(o(e))s=e.key.value;else if(r(e))s=e.key.item.value;else if(l(e)){s=e.key.item.value;const t=B(s);n[t]||(n[t]=0);const r=n[t]++;s=s.concat(r)}else c(e)&&o(e.item)?s=e.item.key.value:c(e)&&(s=[a]);return!(!s.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}(s,t.slice(0,s.length)))&&(i=c(e)&&o(e.item)?t.length===s.length?e:kt(e.item.value,t.slice(s.length)):kt(e,t.slice(s.length)),!0)}catch(e){return!1}})),!i)throw new Error(`Could not find node at path ${t.join(".")}`);return i}function Et(e,t){try{return kt(e,t)}catch(e){}}function xt(e,t){let n,r=t;for(;r.length&&!n;)r=r.slice(0,-1),n=Et(e,r);if(!n)throw new Error(`Count not find parent node for path ${t.join(".")}`);return n}function At(t,i,a){const f=[...t],m=dt(f),p={type:e.Document,loc:{start:{line:1,column:0},end:{line:1,column:0}},items:f},h=ot(i,Qe(Object.assign(Object.assign({},a),{inlineTableStart:void 0}),a)),y=function(e){for(let t=0;t<e.length;t++){const n=e[t];if($t(n)){let r=t+1;for(;r<e.length;){const l=e[r];if($t(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}(It(m,i));if(0===y.length)return{tomlString:ut(f,a),document:p};const g=function(e,t,i,a){return i.forEach((i=>{if(function(e){return e.type===wt.Add}(i)){const f=kt(t,i.path),m=i.path.slice(0,-1);let d,p=U(i.path),h=l(f);if(M(p)&&!m.some(M)){const t=Et(e,m.concat(0));t&&l(t)&&(h=!0)}if(r(f))d=e;else if(h){d=e;const t=e,n=Et(t,m.concat(p-1)),r=Et(t,m.concat(p));p=r?t.items.indexOf(r):n?t.items.indexOf(n)+1:t.items.length}else d=xt(e,i.path),o(d)&&(d=d.value);if(l(d)||s(d)||n(d)){if(s(d)){const e=Je(d);c(f)&&(f.comma=e)}if(void 0!==a.inlineTableStart&&a.inlineTableStart>0&&n(d)&&r(f)){const t=Ot(f,e,a);Ee(e,d,f,p);for(const n of t)Ee(e,e,n,void 0)}else Ee(e,d,f,p)}else if(u(d)){const t=Ye(d);if(o(f)){const n=Be(f);n.comma=t,Ee(e,d,n)}else Ee(e,d,f)}else if(void 0!==a.inlineTableStart&&a.inlineTableStart>0&&o(f)&&u(f.value)&&r(d)){rt([...d.key.item.value,...f.key.value])<a.inlineTableStart?function(e,t,n,r){const l=t.key.item.value,i=[...l,...e.key.value],a=Le(i);if(u(e.value))for(const t of e.value.items)c(t)&&o(t.item)&&Ee(n,a,t.item,void 0);Ee(n,n,a,void 0),nt(t);const s=Ot(a,n,r);for(const e of s)Ee(n,n,e,void 0)}(f,d,e,a):Ee(e,d,f)}else if(0===a.inlineTableStart&&o(f)&&u(f.value)&&n(d))Ee(e,d,f,void 0,!0);else{let t=f;c(f)&&(r(d)||n(d))&&(t=f.item),Ee(e,d,t)}}else if(function(e){return e.type===wt.Edit}(i)){let n,r=kt(e,i.path),l=kt(t,i.path);if(o(r)&&o(l))Ct(r.value,l.value),n=r,r=r.value,l=l.value;else if(o(r)&&c(l)&&o(l.item))n=r,r=r.value,l=l.item.value;else if(c(r)&&o(l))n=r,r=r.item;else if(c(r)&&c(l)&&o(r.item)&&o(l.item))Ct(r.item.value,l.item.value),n=r.item,r=r.item.value,l=l.item.value;else if(n=xt(e,i.path),o(n)){const t=i.path.slice(0,-1),r=kt(e,t);o(r)&&s(r.value)&&(n=r.value)}ke(e,n,r,l)}else if($t(i)){let t=xt(e,i.path);o(t)&&(t=t.value);const n=kt(e,i.path);Ae(e,t,n)}else if(function(e){return e.type===wt.Move}(i)){let t=kt(e,i.path);d(t)&&(t=t.item),o(t)&&(t=t.value);const n=t.items[i.from];Ae(e,t,n),Ee(e,t,n,i.to)}else if(function(e){return e.type===wt.Rename}(i)){let n=kt(e,i.path.concat(i.from)),r=kt(t,i.path.concat(i.to));d(n)&&(n=n.item),d(r)&&(r=r.item),ke(e,n,n.key,r.key)}})),De(e),e}(p,h,y,a);return{tomlString:ut(g.items,a),document:g}}function Ct(e,t){if(i(e)&&i(t)&&P(e.raw)){const n=Ze(t.value,e.raw);t.raw=n.raw,t.loc=n.loc}if(a(e)&&a(t)){const n=e.raw,r=t.value,l=ne.createDateWithOriginalFormat(r,n);t.value=l,t.raw=l.toISOString();0!==t.raw.length-n.length&&(t.loc.end.column=t.loc.start.column+t.raw.length)}if(s(e)&&s(t)){const n=Je(e);if(t.items.length>0){t.items[t.items.length-1].comma=n}}if(u(e)&&u(t)){const n=Ye(e);if(t.items.length>0){t.items[t.items.length-1].comma=n}}}function Ot(e,t,n){const r=[],l=(e,r)=>{var i;for(let a=e.items.length-1;a>=0;a--){const s=e.items[a];if(o(s)&&u(s.value)){const u=[...e.key.item.value,...s.key.value];if(rt(u)<(null!==(i=n.inlineTableStart)&&void 0!==i?i:1)&&0!==n.inlineTableStart){const n=Le(u);for(const e of s.value.items)c(e)&&o(e.item)&&Ee(t,n,e.item,void 0);e.items.splice(a,1),nt(e),r.push(n),l(n,r)}}}};return l(e,r),r}function Dt(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 _t(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 Ft(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"}(wt||(wt={})),"function"==typeof SuppressedError&&SuppressedError;function Ut(e){if(e instanceof Date)return new Date(e.getTime());if(Array.isArray(e))return e.map(Ut);if(e&&"object"==typeof e){const t={};for(const[n,r]of Object.entries(e))t[n]=Ut(r);return t}return e}St=new WeakMap,Tt=new WeakMap,bt=new WeakMap,exports.TomlDocument=class{constructor(e){St.set(this,void 0),Tt.set(this,void 0),bt.set(this,void 0),_t(this,Tt,e,"f"),_t(this,St,Array.from(ye(e)),"f"),_t(this,bt,Xe.autoDetectFormat(e),"f")}get toTomlString(){return Dt(this,Tt,"f")}get toJsObject(){return Ut(dt(Dt(this,St,"f")))}get ast(){return Dt(this,St,"f")}patch(e,t){const n=Qe(t,Dt(this,bt,"f")),{tomlString:r,document:l}=At(Dt(this,St,"f"),e,n);_t(this,St,l.items,"f"),_t(this,Tt,r,"f")}update(e){if(e===this.toTomlString)return;const t=this.toTomlString.split(Dt(this,bt,"f").newLine),n=Ge(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=Ft(t.loc.end,r)<0,n=Ft(t.loc.start,r)<0;if(!e){if(n&&!e)break;break}l.push(t),o=t.loc.end}return{truncatedAst:l,lastEndPosition:o}}(Dt(this,St,"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(Dt(this,bt,"f").newLine);_t(this,St,Array.from(function*(e,t){for(const t of e)yield t;for(const e of ye(t))yield e}(a,m)),"f"),_t(this,Tt,e,"f"),_t(this,bt,Xe.autoDetectFormat(e),"f")}overwrite(e){e!==this.toTomlString&&(_t(this,St,Array.from(ye(e)),"f"),_t(this,Tt,e,"f"),_t(this,bt,Xe.autoDetectFormat(e),"f"))}},exports.TomlFormat=Xe,exports.parse=function(e){return dt(ye(e),e)},exports.patch=function(e,t,n){return At(ye(e),t,Qe(n,Xe.autoDetectFormat(e))).tomlString},exports.stringify=function(e,t){const n=Qe(t,Xe.default());return ut(ot(e,n).items,n)};
3
3
  //# sourceMappingURL=toml-patch.cjs.min.js.map