@decimalturn/toml-patch 0.5.0 → 0.5.2

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