{"version":3,"file":"Splitter-ER5_nMyK.chunk.mjs","sources":["../node_modules/json-string-splitter/Splitter.js"],"sourcesContent":["/**\n * Split concatenated JSON strings\n * \n * @module json-string-splitter\n */\n\n/**\n * Accepts a string consisting of one or more valid JSON substrings and splits it. Any remaining string after the end of the last complete JSON substring is returned in the 'remainder' field.\n * \n * Passing in invalid JSON can result in garbage output\n * \n * @alias splitter\n * @since 1.0.0\n * @param {string} string The string to look for JSON in\n * @returns {{ jsons: string[], remainder: '' }} \n * \n * @example\n * var splitter = require('json-string-splitter');\n * \n * var pieces = splitter('{\"foo\":\"bar\"}{\"more\":\"json\"}{\"partial\":\"json\"');\n * \n * console.log(pieces.jsons[0]); // '{\"foo\":\"bar\"}'\n * console.log(pieces.jsons[1]); // '{\"more\":\"json\"}'\n * console.log(pieces.remainder); // '{\"partial\":\"json\"'\n */\nmodule.exports = function(string) {\n var START = 0, JSON = 1, STRING = 2, ESCAPE = 3;\n \n var state = START;\n var nesting_level = 0;\n var json_start = null;\n var bounds = [];\n \n for(var i = 0 || 0; i < string.length; ++i) {\n switch(state) {\n case START:\n switch(string[i]) {\n case '{':\n ++nesting_level;\n state = JSON;\n json_start = i;\n break;\n }\n break;\n case JSON:\n switch(string[i]) {\n case '{': ++nesting_level; break;\n case '}':\n --nesting_level;\n if(nesting_level === 0) {\n state = START;\n bounds.push({ start: json_start, end: i + 1 });\n }\n break;\n case '\"': state = STRING; break;\n }\n break;\n case STRING:\n switch(string[i]) {\n case '\"': state = JSON; break;\n case '\\\\': state = ESCAPE; break;\n }\n break;\n case ESCAPE:\n state = STRING;\n break;\n }\n }\n \n var result = {\n jsons: [],\n remainder: string.substring(bounds[bounds.length - 1].end),\n }\n \n bounds.forEach(function(v) {\n result.jsons.push(string.substring(v.start, v.end));\n });\n \n return result;\n}\n"],"names":["Splitter","string","START","JSON","STRING","ESCAPE","state","nesting_level","json_start","bounds","i","result","v"],"mappings":";6CAyBAA,EAAiB,SAASC,EAAQ,CAQhC,QAPIC,EAAQ,EAAGC,EAAO,EAAGC,EAAS,EAAGC,EAAS,EAE1CC,EAAQJ,EACRK,EAAgB,EAChBC,EAAa,KACbC,EAAS,CAAE,EAEPC,EAAS,EAAGA,EAAIT,EAAO,OAAQ,EAAES,EACvC,OAAOJ,EAAK,CACV,KAAKJ,EACH,OAAOD,EAAOS,CAAC,EAAC,CACd,IAAK,IACH,EAAEH,EACFD,EAAQH,EACRK,EAAaE,EACb,KACZ,CACQ,MACF,KAAKP,EACH,OAAOF,EAAOS,CAAC,EAAC,CACd,IAAK,IAAK,EAAEH,EAAe,MAC3B,IAAK,IACH,EAAEA,EACCA,IAAkB,IACnBD,EAAQJ,EACRO,EAAO,KAAK,CAAE,MAAOD,EAAY,IAAKE,EAAI,EAAG,GAE/C,MACF,IAAK,IAAKJ,EAAQF,EAAQ,KACpC,CACQ,MACF,KAAKA,EACH,OAAOH,EAAOS,CAAC,EAAC,CACd,IAAK,IAAKJ,EAAQH,EAAM,MACxB,IAAK,KAAMG,EAAQD,EAAQ,KACrC,CACQ,MACF,KAAKA,EACHC,EAAQF,EACR,KACR,CAGE,IAAIO,EAAS,CACX,MAAO,CAAE,EACT,UAAWV,EAAO,UAAUQ,EAAOA,EAAO,OAAS,CAAC,EAAE,GAAG,CAC7D,EAEE,OAAAA,EAAO,QAAQ,SAASG,EAAG,CACzBD,EAAO,MAAM,KAAKV,EAAO,UAAUW,EAAE,MAAOA,EAAE,GAAG,CAAC,CACtD,CAAG,EAEMD,CACT","x_google_ignoreList":[0]}