dbgate-web 5.1.2 → 5.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- !function(){"use strict";var t,n="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},e={},i={},o={};t=o,Object.defineProperty(t,"__esModule",{value:!0}),t.redisSplitterOptions=t.noSplitSplitterOptions=t.mongoSplitterOptions=t.sqliteSplitterOptions=t.postgreSplitterOptions=t.mssqlSplitterOptions=t.mysqlSplitterOptions=t.defaultSplitterOptions=void 0,t.defaultSplitterOptions={stringsBegins:["'"],stringsEnds:{"'":"'"},stringEscapes:{"'":"'"},allowSemicolon:!0,allowCustomDelimiter:!1,allowGoDelimiter:!1,allowDollarDollarString:!1,noSplit:!1,doubleDashComments:!0,multilineComments:!0,javaScriptComments:!1,returnRichInfo:!1,splitByLines:!1},t.mysqlSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{allowCustomDelimiter:!0,stringsBegins:["'","`"],stringsEnds:{"'":"'","`":"`"},stringEscapes:{"'":"\\","`":"`"}}),t.mssqlSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{allowSemicolon:!1,allowGoDelimiter:!0,stringsBegins:["'","["],stringsEnds:{"'":"'","[":"]"},stringEscapes:{"'":"'"}}),t.postgreSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{allowDollarDollarString:!0,stringsBegins:["'",'"'],stringsEnds:{"'":"'",'"':'"'},stringEscapes:{"'":"'",'"':'"'}}),t.sqliteSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{stringsBegins:["'",'"'],stringsEnds:{"'":"'",'"':'"'},stringEscapes:{"'":"'",'"':'"'}}),t.mongoSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{stringsBegins:["'",'"'],stringsEnds:{"'":"'",'"':'"'},stringEscapes:{"'":"\\",'"':"\\"}}),t.noSplitSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{noSplit:!0}),t.redisSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{splitByLines:!0}),Object.defineProperty(i,"__esModule",{value:!0}),i.splitQuery=i.finishSplitStream=i.getInitialDelimiter=i.splitQueryLine=void 0;const s=o;function r(t,n){if(t.options.returnRichInfo){let{source:e,position:i,line:o,column:s,streamPosition:r}=t;for(;n>0;)"\n"==e[i]?(o+=1,s=0):s+=1,i+=1,r+=1,n-=1;t.position=i,t.streamPosition=r,t.line=o,t.column=s}else t.position+=n}function l(t,n,e,i){return i?e==i?t[n]==e&&t[n+1]!=e:t[n]==e&&t[n-1]!=i:t[n]==e}const a={type:"whitespace",length:1},c={type:"eoln",length:1},p={type:"data",length:1};function u(t){let n=t.position;const e=t.source,i=e[n];if(t.options.stringsBegins.includes(i)){n++;const o=t.options.stringsEnds[i],s=t.options.stringEscapes[i];for(;n<t.end&&!l(e,n,o,s);)o==s&&e[n]==o&&e[n+1]==o?n+=2:n++;return{type:"string",length:n-t.position+1}}if(t.currentDelimiter&&e.slice(n).startsWith(t.currentDelimiter))return{type:"delimiter",length:t.currentDelimiter.length};if(" "==i||"\t"==i||"\r"==i)return a;if("\n"==i)return c;if(t.options.doubleDashComments&&"-"==i&&"-"==e[n+1]){for(;n<t.end&&"\n"!=e[n];)n++;return{type:"comment",length:n-t.position}}if(t.options.multilineComments&&"/"==i&&"*"==e[n+1]){for(n+=2;n<t.end&&("*"!=e[n]||"/"!=e[n+1]);)n++;return{type:"comment",length:n-t.position+2}}if(t.options.allowCustomDelimiter&&!t.wasDataOnLine){const t=e.slice(n).match(/^DELIMITER[ \t]+([^\n]+)/i);if(t)return{type:"set_delimiter",value:t[1].trim(),length:t[0].length}}if(t.options.allowGoDelimiter&&!t.wasDataOnLine){const t=e.slice(n).match(/^GO[\t\r ]*(\n|$)/i);if(t)return{type:"go_delimiter",length:t[0].length-1}}const o=function(t){if(!t.options.allowDollarDollarString)return null;let n=t.position;const e=t.source,i=/^(\$[a-zA-Z0-9_]*\$)/.exec(e.slice(n));if(!i)return null;const o=i[1];for(n+=o.length;n<t.end;){if(e.slice(n).startsWith(o))return{type:"string",length:n+o.length-t.position};n++}return null}(t);return o||p}function m(t){const n=(t.commandPart||"")+t.source.slice(t.currentCommandStart,t.position),e=n.trim();e&&(t.options.returnRichInfo?t.pushOutput(d(n,{text:e,start:{position:t.commandStartPosition,line:t.commandStartLine,column:t.commandStartColumn},end:{position:t.streamPosition,line:t.line,column:t.column}})):t.pushOutput(e))}function d(t,n){const e=t.indexOf(n.text),i=Object.assign({},n.start);for(let n=0;n<e;n+=1)"\n"==t[n]?(i.position+=1,i.line+=1,i.column=0):(i.position+=1,i.column+=1);return Object.assign(Object.assign({},n),{trimStart:i,trimEnd:n.end})}function g(t){t.options.returnRichInfo&&(t.commandStartPosition=t.streamPosition,t.commandStartLine=t.line,t.commandStartColumn=t.column)}function f(t){if(t.options.splitByLines)!function(t){for(;t.position<t.end;)"\n"==t.source[t.position]?(m(t),t.commandPart="",r(t,1),t.currentCommandStart=t.position,g(t)):r(t,1);t.end>t.currentCommandStart&&(t.commandPart+=t.source.slice(t.currentCommandStart,t.position))}(t);else{for(;t.position<t.end;){const n=u(t);if(n)switch(n.type){case"string":case"comment":case"data":r(t,n.length),t.wasDataOnLine=!0;break;case"eoln":r(t,n.length),t.wasDataOnLine=!1;break;case"whitespace":r(t,n.length);break;case"set_delimiter":m(t),t.commandPart="",t.currentDelimiter=n.value,r(t,n.length),t.currentCommandStart=t.position,g(t);break;case"go_delimiter":case"delimiter":m(t),t.commandPart="",r(t,n.length),t.currentCommandStart=t.position,g(t)}else r(t,1)}t.end>t.currentCommandStart&&(t.commandPart+=t.source.slice(t.currentCommandStart,t.position))}}function O(t){return!1===(null==t?void 0:t.allowSemicolon)?null:";"}function S(t){const n=t.commandPart.trim();n&&(t.options.returnRichInfo?t.pushOutput(d(t.commandPart,{text:n,start:{position:t.commandStartPosition,line:t.commandStartLine,column:t.commandStartColumn},end:{position:t.streamPosition,line:t.line,column:t.column}})):t.pushOutput(n))}i.splitQueryLine=f,i.getInitialDelimiter=O,i.finishSplitStream=S,i.splitQuery=function(t,n=null){var e;const i=Object.assign(Object.assign({},s.defaultSplitterOptions),n);if(i.noSplit){if(i.returnRichInfo){const n=t.split("\n");return[{text:t,start:{position:0,line:0,column:0},end:{position:t.length,line:n.length,column:(null===(e=n[n.length-1])||void 0===e?void 0:e.length)||0}}]}return[t]}const o=[],r={source:t,end:t.length,currentDelimiter:O(n),position:0,column:0,line:0,currentCommandStart:0,commandStartLine:0,commandStartColumn:0,commandStartPosition:0,streamPosition:0,pushOutput:t=>o.push(t),wasDataOnLine:!1,options:i,commandPart:""};return f(r),S(r),o},function(t){var e=n&&n.__createBinding||(Object.create?function(t,n,e,i){void 0===i&&(i=e);var o=Object.getOwnPropertyDescriptor(n,e);o&&!("get"in o?!n.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return n[e]}}),Object.defineProperty(t,i,o)}:function(t,n,e,i){void 0===i&&(i=e),t[i]=n[e]}),s=n&&n.__exportStar||function(t,n){for(var i in t)"default"===i||Object.prototype.hasOwnProperty.call(n,i)||e(n,t,i)};Object.defineProperty(t,"__esModule",{value:!0}),t.splitQuery=void 0;var r=i;Object.defineProperty(t,"splitQuery",{enumerable:!0,get:function(){return r.splitQuery}}),s(o,t)}(e),onmessage=t=>{const n=e.splitQuery(t.data.text,t.data.options);postMessage(n)}}();
1
+ !function(){"use strict";var t,n="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},i={},e={},o={};t=o,Object.defineProperty(t,"__esModule",{value:!0}),t.redisSplitterOptions=t.noSplitSplitterOptions=t.mongoSplitterOptions=t.sqliteSplitterOptions=t.postgreSplitterOptions=t.mssqlSplitterOptions=t.mysqlSplitterOptions=t.defaultSplitterOptions=void 0,t.defaultSplitterOptions={stringsBegins:["'"],stringsEnds:{"'":"'"},stringEscapes:{"'":"'"},allowSemicolon:!0,allowCustomDelimiter:!1,allowGoDelimiter:!1,allowDollarDollarString:!1,noSplit:!1,doubleDashComments:!0,multilineComments:!0,javaScriptComments:!1,returnRichInfo:!1,splitByLines:!1,preventSingleLineSplit:!1,adaptiveGoSplit:!1,ignoreComments:!1},t.mysqlSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{allowCustomDelimiter:!0,stringsBegins:["'","`"],stringsEnds:{"'":"'","`":"`"},stringEscapes:{"'":"\\","`":"`"}}),t.mssqlSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{allowSemicolon:!1,allowGoDelimiter:!0,stringsBegins:["'","["],stringsEnds:{"'":"'","[":"]"},stringEscapes:{"'":"'"}}),t.postgreSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{allowDollarDollarString:!0,stringsBegins:["'",'"'],stringsEnds:{"'":"'",'"':'"'},stringEscapes:{"'":"'",'"':'"'}}),t.sqliteSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{stringsBegins:["'",'"'],stringsEnds:{"'":"'",'"':'"'},stringEscapes:{"'":"'",'"':'"'}}),t.mongoSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{stringsBegins:["'",'"'],stringsEnds:{"'":"'",'"':'"'},stringEscapes:{"'":"\\",'"':"\\"}}),t.noSplitSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{noSplit:!0}),t.redisSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{splitByLines:!0}),Object.defineProperty(e,"__esModule",{value:!0}),e.splitQuery=e.finishSplitStream=e.getInitialDelimiter=e.splitQueryLine=void 0;const s=o;function r(t,n,i){let{source:e,position:o,line:s,column:r,streamPosition:a}=t;for(;n>0;)"\n"==e[o]?(s+=1,r=0):r+=1,o+=1,a+=1,n-=1;t.position=o,t.streamPosition=a,t.line=s,t.column=r,t.wasDataInCommand||(i?(t.trimCommandStartPosition=a,t.trimCommandStartLine=s,t.trimCommandStartColumn=r):t.wasDataInCommand=!0),i||(t.noWhitePosition=a,t.noWhiteLine=s,t.noWhiteColumn=r)}function a(t,n,i,e){return e?i==e?t[n]==i&&t[n+1]!=i:t[n]==i&&t[n-1]!=e:t[n]==i}const l={type:"whitespace",length:1},m={type:"eoln",length:1},p={type:"data",length:1};function c(t){let n=t.position;const i=t.source,e=i[n];if(t.options.stringsBegins.includes(e)){n++;const o=t.options.stringsEnds[e],s=t.options.stringEscapes[e];for(;n<t.end&&!a(i,n,o,s);)o==s&&i[n]==o&&i[n+1]==o?n+=2:n++;return{type:"string",length:n-t.position+1}}if(t.currentDelimiter&&i.slice(n).startsWith(t.currentDelimiter))return{type:"delimiter",length:t.currentDelimiter.length};if(" "==e||"\t"==e||"\r"==e)return l;if("\n"==e)return m;if(t.options.doubleDashComments&&"-"==e&&"-"==i[n+1]){for(;n<t.end&&"\n"!=i[n];)n++;return{type:"comment",length:n-t.position}}if(t.options.multilineComments&&"/"==e&&"*"==i[n+1]){for(n+=2;n<t.end&&("*"!=i[n]||"/"!=i[n+1]);)n++;return{type:"comment",length:n-t.position+2}}if(t.options.allowCustomDelimiter&&!t.wasDataOnLine){const t=i.slice(n).match(/^DELIMITER[ \t]+([^\n]+)/i);if(t)return{type:"set_delimiter",value:t[1].trim(),length:t[0].length}}if((t.options.allowGoDelimiter||t.options.adaptiveGoSplit)&&!t.wasDataOnLine){const t=i.slice(n).match(/^GO[\t\r ]*(\n|$)/i);if(t)return{type:"go_delimiter",length:t[0].length-1}}if(t.options.adaptiveGoSplit){const t=i.slice(n).match(/^CREATE\s*(PROCEDURE|FUNCTION|TRIGGER)/i);if(t)return{type:"create_routine",length:t[0].length-1}}const o=function(t){if(!t.options.allowDollarDollarString)return null;let n=t.position;const i=t.source,e=/^(\$[a-zA-Z0-9_]*\$)/.exec(i.slice(n));if(!e)return null;const o=e[1];for(n+=o.length;n<t.end;){if(i.slice(n).startsWith(o))return{type:"string",length:n+o.length-t.position};n++}return null}(t);return o||p}function u(t,n){var i;const e={options:t.options,source:t.source,position:t.position,currentDelimiter:t.currentDelimiter,end:t.end,wasDataOnLine:t.wasDataOnLine};for(e.position+=n.length;e.position<e.end;){const t=c(e);if(t)switch(t.type){case"whitespace":e.position+=t.length;continue;case"eoln":return!1;case"comment":if(null===(i=t.value)||void 0===i?void 0:i.includes("\n"))return!0;e.position+=t.length;continue;default:return!0}else e.position+=1}}function d(t){t.commandPart+=t.source.slice(t.currentCommandStart,t.position),g(t)}function g(t){const n=t.commandPart.substring(t.trimCommandStartPosition-t.commandStartPosition,t.noWhitePosition-t.commandStartPosition);n.trim()&&(t.options.returnRichInfo?t.pushOutput({text:n,start:{position:t.commandStartPosition,line:t.commandStartLine,column:t.commandStartColumn},end:{position:t.streamPosition,line:t.line,column:t.column},trimStart:{position:t.trimCommandStartPosition,line:t.trimCommandStartLine,column:t.trimCommandStartColumn},trimEnd:{position:t.noWhitePosition,line:t.noWhiteLine,column:t.noWhiteColumn}}):t.pushOutput(n))}function S(t){t.commandStartPosition=t.streamPosition,t.commandStartLine=t.line,t.commandStartColumn=t.column,t.trimCommandStartPosition=t.streamPosition,t.trimCommandStartLine=t.line,t.trimCommandStartColumn=t.column,t.wasDataInCommand=!1}function f(t){if(t.options.splitByLines)!function(t){for(;t.position<t.end;)"\n"==t.source[t.position]?(d(t),t.commandPart="",r(t,1,!0),t.currentCommandStart=t.position,S(t)):r(t,1,/\s/.test(t.source[t.position]));t.end>t.currentCommandStart&&(t.commandPart+=t.source.slice(t.currentCommandStart,t.position))}(t);else{for(;t.position<t.end;){const n=c(t);if(n)switch(n.type){case"string":case"data":r(t,n.length,!1),t.wasDataOnLine=!0;break;case"comment":r(t,n.length,!!t.options.ignoreComments),t.wasDataOnLine=!0;break;case"eoln":r(t,n.length,!0),t.wasDataOnLine=!1;break;case"whitespace":r(t,n.length,!0);break;case"set_delimiter":d(t),t.commandPart="",t.currentDelimiter=n.value,r(t,n.length,!1),t.currentCommandStart=t.position,S(t);break;case"go_delimiter":d(t),t.commandPart="",r(t,n.length,!1),t.currentCommandStart=t.position,S(t),t.options.adaptiveGoSplit&&(t.currentDelimiter=";");break;case"create_routine":r(t,n.length,!1),t.options.adaptiveGoSplit&&(t.currentDelimiter=null);break;case"delimiter":if(t.options.preventSingleLineSplit&&u(t,n)){r(t,n.length,!1),t.wasDataOnLine=!0;break}d(t),t.commandPart="",r(t,n.length,!1),t.currentCommandStart=t.position,S(t)}else r(t,1,!1)}t.end>t.currentCommandStart&&(t.commandPart+=t.source.slice(t.currentCommandStart,t.position))}}function h(t){return(null==t?void 0:t.adaptiveGoSplit)?";":!1===(null==t?void 0:t.allowSemicolon)?null:";"}function O(t){g(t)}e.splitQueryLine=f,e.getInitialDelimiter=h,e.finishSplitStream=O,e.splitQuery=function(t,n=null){var i;const e=Object.assign(Object.assign({},s.defaultSplitterOptions),n);if(e.noSplit){if(e.returnRichInfo){const n=t.split("\n");return[{text:t,start:{position:0,line:0,column:0},end:{position:t.length,line:n.length,column:(null===(i=n[n.length-1])||void 0===i?void 0:i.length)||0}}]}return[t]}const o=[],r={source:t,end:t.length,currentDelimiter:h(n),position:0,column:0,line:0,currentCommandStart:0,commandStartLine:0,commandStartColumn:0,commandStartPosition:0,streamPosition:0,noWhiteLine:0,noWhiteColumn:0,noWhitePosition:0,trimCommandStartPosition:0,trimCommandStartLine:0,trimCommandStartColumn:0,wasDataInCommand:!1,pushOutput:t=>o.push(t),wasDataOnLine:!1,options:e,commandPart:""};return f(r),O(r),o},function(t){var i=n&&n.__createBinding||(Object.create?function(t,n,i,e){void 0===e&&(e=i);var o=Object.getOwnPropertyDescriptor(n,i);o&&!("get"in o?!n.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return n[i]}}),Object.defineProperty(t,e,o)}:function(t,n,i,e){void 0===e&&(e=i),t[e]=n[i]}),s=n&&n.__exportStar||function(t,n){for(var e in t)"default"===e||Object.prototype.hasOwnProperty.call(n,e)||i(n,t,e)};Object.defineProperty(t,"__esModule",{value:!0}),t.splitQuery=void 0;var r=e;Object.defineProperty(t,"splitQuery",{enumerable:!0,get:function(){return r.splitQuery}}),s(o,t)}(i),onmessage=t=>{const n=i.splitQuery(t.data.text,t.data.options);postMessage(n)}}();
2
2
  //# sourceMappingURL=query-parser-worker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"query-parser-worker.js","sources":["../../../../node_modules/dbgate-query-splitter/lib/options.js","../../../../node_modules/dbgate-query-splitter/lib/splitQuery.js","../../../../node_modules/dbgate-query-splitter/lib/index.js","../../src/query/QueryParserWorker.js"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.redisSplitterOptions = exports.noSplitSplitterOptions = exports.mongoSplitterOptions = exports.sqliteSplitterOptions = exports.postgreSplitterOptions = exports.mssqlSplitterOptions = exports.mysqlSplitterOptions = exports.defaultSplitterOptions = void 0;\nexports.defaultSplitterOptions = {\n stringsBegins: [\"'\"],\n stringsEnds: { \"'\": \"'\" },\n stringEscapes: { \"'\": \"'\" },\n allowSemicolon: true,\n allowCustomDelimiter: false,\n allowGoDelimiter: false,\n allowDollarDollarString: false,\n noSplit: false,\n doubleDashComments: true,\n multilineComments: true,\n javaScriptComments: false,\n returnRichInfo: false,\n splitByLines: false,\n};\nexports.mysqlSplitterOptions = Object.assign(Object.assign({}, exports.defaultSplitterOptions), { allowCustomDelimiter: true, stringsBegins: [\"'\", '`'], stringsEnds: { \"'\": \"'\", '`': '`' }, stringEscapes: { \"'\": '\\\\', '`': '`' } });\nexports.mssqlSplitterOptions = Object.assign(Object.assign({}, exports.defaultSplitterOptions), { allowSemicolon: false, allowGoDelimiter: true, stringsBegins: [\"'\", '['], stringsEnds: { \"'\": \"'\", '[': ']' }, stringEscapes: { \"'\": \"'\" } });\nexports.postgreSplitterOptions = Object.assign(Object.assign({}, exports.defaultSplitterOptions), { allowDollarDollarString: true, stringsBegins: [\"'\", '\"'], stringsEnds: { \"'\": \"'\", '\"': '\"' }, stringEscapes: { \"'\": \"'\", '\"': '\"' } });\nexports.sqliteSplitterOptions = Object.assign(Object.assign({}, exports.defaultSplitterOptions), { stringsBegins: [\"'\", '\"'], stringsEnds: { \"'\": \"'\", '\"': '\"' }, stringEscapes: { \"'\": \"'\", '\"': '\"' } });\nexports.mongoSplitterOptions = Object.assign(Object.assign({}, exports.defaultSplitterOptions), { stringsBegins: [\"'\", '\"'], stringsEnds: { \"'\": \"'\", '\"': '\"' }, stringEscapes: { \"'\": '\\\\', '\"': '\\\\' } });\nexports.noSplitSplitterOptions = Object.assign(Object.assign({}, exports.defaultSplitterOptions), { noSplit: true });\nexports.redisSplitterOptions = Object.assign(Object.assign({}, exports.defaultSplitterOptions), { splitByLines: true });\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.splitQuery = exports.finishSplitStream = exports.getInitialDelimiter = exports.splitQueryLine = void 0;\nconst options_1 = require(\"./options\");\nconst SEMICOLON = ';';\nfunction movePosition(context, count) {\n if (context.options.returnRichInfo) {\n let { source, position, line, column, streamPosition } = context;\n while (count > 0) {\n if (source[position] == '\\n') {\n line += 1;\n column = 0;\n }\n else {\n column += 1;\n }\n position += 1;\n streamPosition += 1;\n count -= 1;\n }\n context.position = position;\n context.streamPosition = streamPosition;\n context.line = line;\n context.column = column;\n }\n else {\n context.position += count;\n }\n}\nfunction isStringEnd(s, pos, endch, escapech) {\n if (!escapech) {\n return s[pos] == endch;\n }\n if (endch == escapech) {\n return s[pos] == endch && s[pos + 1] != endch;\n }\n else {\n return s[pos] == endch && s[pos - 1] != escapech;\n }\n}\nconst WHITESPACE_TOKEN = {\n type: 'whitespace',\n length: 1,\n};\nconst EOLN_TOKEN = {\n type: 'eoln',\n length: 1,\n};\nconst DATA_TOKEN = {\n type: 'data',\n length: 1,\n};\nfunction scanDollarQuotedString(context) {\n if (!context.options.allowDollarDollarString)\n return null;\n let pos = context.position;\n const s = context.source;\n const match = /^(\\$[a-zA-Z0-9_]*\\$)/.exec(s.slice(pos));\n if (!match)\n return null;\n const label = match[1];\n pos += label.length;\n while (pos < context.end) {\n if (s.slice(pos).startsWith(label)) {\n return {\n type: 'string',\n length: pos + label.length - context.position,\n };\n }\n pos++;\n }\n return null;\n}\nfunction scanToken(context) {\n let pos = context.position;\n const s = context.source;\n const ch = s[pos];\n if (context.options.stringsBegins.includes(ch)) {\n pos++;\n const endch = context.options.stringsEnds[ch];\n const escapech = context.options.stringEscapes[ch];\n while (pos < context.end && !isStringEnd(s, pos, endch, escapech)) {\n if (endch == escapech && s[pos] == endch && s[pos + 1] == endch) {\n pos += 2;\n }\n else {\n pos++;\n }\n }\n return {\n type: 'string',\n length: pos - context.position + 1,\n };\n }\n if (context.currentDelimiter && s.slice(pos).startsWith(context.currentDelimiter)) {\n return {\n type: 'delimiter',\n length: context.currentDelimiter.length,\n };\n }\n if (ch == ' ' || ch == '\\t' || ch == '\\r') {\n return WHITESPACE_TOKEN;\n }\n if (ch == '\\n') {\n return EOLN_TOKEN;\n }\n if (context.options.doubleDashComments && ch == '-' && s[pos + 1] == '-') {\n while (pos < context.end && s[pos] != '\\n')\n pos++;\n return {\n type: 'comment',\n length: pos - context.position,\n };\n }\n if (context.options.multilineComments && ch == '/' && s[pos + 1] == '*') {\n pos += 2;\n while (pos < context.end) {\n if (s[pos] == '*' && s[pos + 1] == '/')\n break;\n pos++;\n }\n return {\n type: 'comment',\n length: pos - context.position + 2,\n };\n }\n if (context.options.allowCustomDelimiter && !context.wasDataOnLine) {\n const m = s.slice(pos).match(/^DELIMITER[ \\t]+([^\\n]+)/i);\n if (m) {\n return {\n type: 'set_delimiter',\n value: m[1].trim(),\n length: m[0].length,\n };\n }\n }\n if (context.options.allowGoDelimiter && !context.wasDataOnLine) {\n const m = s.slice(pos).match(/^GO[\\t\\r ]*(\\n|$)/i);\n if (m) {\n return {\n type: 'go_delimiter',\n length: m[0].length - 1,\n };\n }\n }\n const dollarString = scanDollarQuotedString(context);\n if (dollarString)\n return dollarString;\n return DATA_TOKEN;\n}\nfunction pushQuery(context) {\n const sql = (context.commandPart || '') + context.source.slice(context.currentCommandStart, context.position);\n const trimmed = sql.trim();\n if (trimmed) {\n if (context.options.returnRichInfo) {\n context.pushOutput(countTrimmedPositions(sql, {\n text: trimmed,\n start: {\n position: context.commandStartPosition,\n line: context.commandStartLine,\n column: context.commandStartColumn,\n },\n end: {\n position: context.streamPosition,\n line: context.line,\n column: context.column,\n },\n }));\n }\n else {\n context.pushOutput(trimmed);\n }\n }\n}\nfunction countTrimmedPositions(full, positions) {\n const startIndex = full.indexOf(positions.text);\n const trimStart = Object.assign({}, positions.start);\n for (let i = 0; i < startIndex; i += 1) {\n if (full[i] == '\\n') {\n trimStart.position += 1;\n trimStart.line += 1;\n trimStart.column = 0;\n }\n else {\n trimStart.position += 1;\n trimStart.column += 1;\n }\n }\n return Object.assign(Object.assign({}, positions), { trimStart, trimEnd: positions.end });\n}\nfunction markStartCommand(context) {\n if (context.options.returnRichInfo) {\n context.commandStartPosition = context.streamPosition;\n context.commandStartLine = context.line;\n context.commandStartColumn = context.column;\n }\n}\nfunction splitByLines(context) {\n while (context.position < context.end) {\n if (context.source[context.position] == '\\n') {\n pushQuery(context);\n context.commandPart = '';\n movePosition(context, 1);\n context.currentCommandStart = context.position;\n markStartCommand(context);\n }\n else {\n movePosition(context, 1);\n }\n }\n if (context.end > context.currentCommandStart) {\n context.commandPart += context.source.slice(context.currentCommandStart, context.position);\n }\n}\nfunction splitQueryLine(context) {\n if (context.options.splitByLines) {\n splitByLines(context);\n return;\n }\n while (context.position < context.end) {\n const token = scanToken(context);\n if (!token) {\n // nothing special, move forward\n movePosition(context, 1);\n continue;\n }\n switch (token.type) {\n case 'string':\n movePosition(context, token.length);\n context.wasDataOnLine = true;\n break;\n case 'comment':\n movePosition(context, token.length);\n context.wasDataOnLine = true;\n break;\n case 'eoln':\n movePosition(context, token.length);\n context.wasDataOnLine = false;\n break;\n case 'data':\n movePosition(context, token.length);\n context.wasDataOnLine = true;\n break;\n case 'whitespace':\n movePosition(context, token.length);\n break;\n case 'set_delimiter':\n pushQuery(context);\n context.commandPart = '';\n context.currentDelimiter = token.value;\n movePosition(context, token.length);\n context.currentCommandStart = context.position;\n markStartCommand(context);\n break;\n case 'go_delimiter':\n pushQuery(context);\n context.commandPart = '';\n movePosition(context, token.length);\n context.currentCommandStart = context.position;\n markStartCommand(context);\n break;\n case 'delimiter':\n pushQuery(context);\n context.commandPart = '';\n movePosition(context, token.length);\n context.currentCommandStart = context.position;\n markStartCommand(context);\n break;\n }\n }\n if (context.end > context.currentCommandStart) {\n context.commandPart += context.source.slice(context.currentCommandStart, context.position);\n }\n}\nexports.splitQueryLine = splitQueryLine;\nfunction getInitialDelimiter(options) {\n return (options === null || options === void 0 ? void 0 : options.allowSemicolon) === false ? null : SEMICOLON;\n}\nexports.getInitialDelimiter = getInitialDelimiter;\nfunction finishSplitStream(context) {\n const trimmed = context.commandPart.trim();\n if (trimmed) {\n if (context.options.returnRichInfo) {\n context.pushOutput(countTrimmedPositions(context.commandPart, {\n text: trimmed,\n start: {\n position: context.commandStartPosition,\n line: context.commandStartLine,\n column: context.commandStartColumn,\n },\n end: {\n position: context.streamPosition,\n line: context.line,\n column: context.column,\n },\n }));\n }\n else {\n context.pushOutput(trimmed);\n }\n }\n}\nexports.finishSplitStream = finishSplitStream;\nfunction splitQuery(sql, options = null) {\n var _a;\n const usedOptions = Object.assign(Object.assign({}, options_1.defaultSplitterOptions), options);\n if (usedOptions.noSplit) {\n if (usedOptions.returnRichInfo) {\n const lines = sql.split('\\n');\n return [\n {\n text: sql,\n start: {\n position: 0,\n line: 0,\n column: 0,\n },\n end: {\n position: sql.length,\n line: lines.length,\n column: ((_a = lines[lines.length - 1]) === null || _a === void 0 ? void 0 : _a.length) || 0,\n },\n },\n ];\n }\n return [sql];\n }\n const output = [];\n const context = {\n source: sql,\n end: sql.length,\n currentDelimiter: getInitialDelimiter(options),\n position: 0,\n column: 0,\n line: 0,\n currentCommandStart: 0,\n commandStartLine: 0,\n commandStartColumn: 0,\n commandStartPosition: 0,\n streamPosition: 0,\n pushOutput: cmd => output.push(cmd),\n wasDataOnLine: false,\n options: usedOptions,\n commandPart: '',\n };\n splitQueryLine(context);\n finishSplitStream(context);\n return output;\n}\nexports.splitQuery = splitQuery;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.splitQuery = void 0;\nvar splitQuery_1 = require(\"./splitQuery\");\nObject.defineProperty(exports, \"splitQuery\", { enumerable: true, get: function () { return splitQuery_1.splitQuery; } });\n__exportStar(require(\"./options\"), exports);\n","import { splitQuery } from 'dbgate-query-splitter';\n\nonmessage = e => {\n const result = splitQuery(e.data.text, e.data.options);\n postMessage(result);\n};\n"],"names":["Object","defineProperty","exports","value","redisSplitterOptions","noSplitSplitterOptions","sqliteSplitterOptions","postgreSplitterOptions","mysqlSplitterOptions","defaultSplitterOptions","stringsBegins","stringsEnds","stringEscapes","allowSemicolon","allowCustomDelimiter","allowGoDelimiter","allowDollarDollarString","noSplit","doubleDashComments","multilineComments","javaScriptComments","returnRichInfo","splitByLines","assign","mssqlSplitterOptions","mongoSplitterOptions","splitQuery_1","splitQuery","getInitialDelimiter","splitQueryLine","options_1","require$$0","movePosition","context","count","options","source","position","line","column","streamPosition","isStringEnd","s","pos","endch","escapech","WHITESPACE_TOKEN","type","length","EOLN_TOKEN","DATA_TOKEN","scanToken","ch","includes","end","currentDelimiter","slice","startsWith","wasDataOnLine","m","match","trim","dollarString","exec","label","scanDollarQuotedString","pushQuery","sql","commandPart","currentCommandStart","trimmed","pushOutput","countTrimmedPositions","text","start","commandStartPosition","commandStartLine","commandStartColumn","full","positions","startIndex","indexOf","trimStart","i","trimEnd","markStartCommand","token","finishSplitStream","splitQuery$1","_a","usedOptions","lines","split","output","cmd","push","__createBinding","this","create","o","k","k2","undefined","desc","getOwnPropertyDescriptor","__esModule","writable","configurable","enumerable","get","__exportStar","p","prototype","hasOwnProperty","call","require$$1","onmessage","e","result","data","postMessage"],"mappings":"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"}
1
+ {"version":3,"file":"query-parser-worker.js","sources":["../../../../node_modules/dbgate-query-splitter/lib/options.js","../../../../node_modules/dbgate-query-splitter/lib/splitQuery.js","../../../../node_modules/dbgate-query-splitter/lib/index.js","../../src/query/QueryParserWorker.js"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.redisSplitterOptions = exports.noSplitSplitterOptions = exports.mongoSplitterOptions = exports.sqliteSplitterOptions = exports.postgreSplitterOptions = exports.mssqlSplitterOptions = exports.mysqlSplitterOptions = exports.defaultSplitterOptions = void 0;\nexports.defaultSplitterOptions = {\n stringsBegins: [\"'\"],\n stringsEnds: { \"'\": \"'\" },\n stringEscapes: { \"'\": \"'\" },\n allowSemicolon: true,\n allowCustomDelimiter: false,\n allowGoDelimiter: false,\n allowDollarDollarString: false,\n noSplit: false,\n doubleDashComments: true,\n multilineComments: true,\n javaScriptComments: false,\n returnRichInfo: false,\n splitByLines: false,\n preventSingleLineSplit: false,\n adaptiveGoSplit: false,\n ignoreComments: false,\n};\nexports.mysqlSplitterOptions = Object.assign(Object.assign({}, exports.defaultSplitterOptions), { allowCustomDelimiter: true, stringsBegins: [\"'\", '`'], stringsEnds: { \"'\": \"'\", '`': '`' }, stringEscapes: { \"'\": '\\\\', '`': '`' } });\nexports.mssqlSplitterOptions = Object.assign(Object.assign({}, exports.defaultSplitterOptions), { allowSemicolon: false, allowGoDelimiter: true, stringsBegins: [\"'\", '['], stringsEnds: { \"'\": \"'\", '[': ']' }, stringEscapes: { \"'\": \"'\" } });\nexports.postgreSplitterOptions = Object.assign(Object.assign({}, exports.defaultSplitterOptions), { allowDollarDollarString: true, stringsBegins: [\"'\", '\"'], stringsEnds: { \"'\": \"'\", '\"': '\"' }, stringEscapes: { \"'\": \"'\", '\"': '\"' } });\nexports.sqliteSplitterOptions = Object.assign(Object.assign({}, exports.defaultSplitterOptions), { stringsBegins: [\"'\", '\"'], stringsEnds: { \"'\": \"'\", '\"': '\"' }, stringEscapes: { \"'\": \"'\", '\"': '\"' } });\nexports.mongoSplitterOptions = Object.assign(Object.assign({}, exports.defaultSplitterOptions), { stringsBegins: [\"'\", '\"'], stringsEnds: { \"'\": \"'\", '\"': '\"' }, stringEscapes: { \"'\": '\\\\', '\"': '\\\\' } });\nexports.noSplitSplitterOptions = Object.assign(Object.assign({}, exports.defaultSplitterOptions), { noSplit: true });\nexports.redisSplitterOptions = Object.assign(Object.assign({}, exports.defaultSplitterOptions), { splitByLines: true });\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.splitQuery = exports.finishSplitStream = exports.getInitialDelimiter = exports.splitQueryLine = void 0;\nconst options_1 = require(\"./options\");\nconst SEMICOLON = ';';\nfunction movePosition(context, count, isWhite) {\n let { source, position, line, column, streamPosition } = context;\n while (count > 0) {\n if (source[position] == '\\n') {\n line += 1;\n column = 0;\n }\n else {\n column += 1;\n }\n position += 1;\n streamPosition += 1;\n count -= 1;\n }\n context.position = position;\n context.streamPosition = streamPosition;\n context.line = line;\n context.column = column;\n if (!context.wasDataInCommand) {\n if (isWhite) {\n context.trimCommandStartPosition = streamPosition;\n context.trimCommandStartLine = line;\n context.trimCommandStartColumn = column;\n }\n else {\n context.wasDataInCommand = true;\n }\n }\n if (!isWhite) {\n context.noWhitePosition = streamPosition;\n context.noWhiteLine = line;\n context.noWhiteColumn = column;\n }\n}\nfunction isStringEnd(s, pos, endch, escapech) {\n if (!escapech) {\n return s[pos] == endch;\n }\n if (endch == escapech) {\n return s[pos] == endch && s[pos + 1] != endch;\n }\n else {\n return s[pos] == endch && s[pos - 1] != escapech;\n }\n}\nconst WHITESPACE_TOKEN = {\n type: 'whitespace',\n length: 1,\n};\nconst EOLN_TOKEN = {\n type: 'eoln',\n length: 1,\n};\nconst DATA_TOKEN = {\n type: 'data',\n length: 1,\n};\nfunction scanDollarQuotedString(context) {\n if (!context.options.allowDollarDollarString)\n return null;\n let pos = context.position;\n const s = context.source;\n const match = /^(\\$[a-zA-Z0-9_]*\\$)/.exec(s.slice(pos));\n if (!match)\n return null;\n const label = match[1];\n pos += label.length;\n while (pos < context.end) {\n if (s.slice(pos).startsWith(label)) {\n return {\n type: 'string',\n length: pos + label.length - context.position,\n };\n }\n pos++;\n }\n return null;\n}\nfunction scanToken(context) {\n let pos = context.position;\n const s = context.source;\n const ch = s[pos];\n if (context.options.stringsBegins.includes(ch)) {\n pos++;\n const endch = context.options.stringsEnds[ch];\n const escapech = context.options.stringEscapes[ch];\n while (pos < context.end && !isStringEnd(s, pos, endch, escapech)) {\n if (endch == escapech && s[pos] == endch && s[pos + 1] == endch) {\n pos += 2;\n }\n else {\n pos++;\n }\n }\n return {\n type: 'string',\n length: pos - context.position + 1,\n };\n }\n if (context.currentDelimiter && s.slice(pos).startsWith(context.currentDelimiter)) {\n return {\n type: 'delimiter',\n length: context.currentDelimiter.length,\n };\n }\n if (ch == ' ' || ch == '\\t' || ch == '\\r') {\n return WHITESPACE_TOKEN;\n }\n if (ch == '\\n') {\n return EOLN_TOKEN;\n }\n if (context.options.doubleDashComments && ch == '-' && s[pos + 1] == '-') {\n while (pos < context.end && s[pos] != '\\n')\n pos++;\n return {\n type: 'comment',\n length: pos - context.position,\n };\n }\n if (context.options.multilineComments && ch == '/' && s[pos + 1] == '*') {\n pos += 2;\n while (pos < context.end) {\n if (s[pos] == '*' && s[pos + 1] == '/')\n break;\n pos++;\n }\n return {\n type: 'comment',\n length: pos - context.position + 2,\n };\n }\n if (context.options.allowCustomDelimiter && !context.wasDataOnLine) {\n const m = s.slice(pos).match(/^DELIMITER[ \\t]+([^\\n]+)/i);\n if (m) {\n return {\n type: 'set_delimiter',\n value: m[1].trim(),\n length: m[0].length,\n };\n }\n }\n if ((context.options.allowGoDelimiter || context.options.adaptiveGoSplit) && !context.wasDataOnLine) {\n const m = s.slice(pos).match(/^GO[\\t\\r ]*(\\n|$)/i);\n if (m) {\n return {\n type: 'go_delimiter',\n length: m[0].length - 1,\n };\n }\n }\n if (context.options.adaptiveGoSplit) {\n const m = s.slice(pos).match(/^CREATE\\s*(PROCEDURE|FUNCTION|TRIGGER)/i);\n if (m) {\n return {\n type: 'create_routine',\n length: m[0].length - 1,\n };\n }\n }\n const dollarString = scanDollarQuotedString(context);\n if (dollarString)\n return dollarString;\n return DATA_TOKEN;\n}\nfunction containsDataAfterDelimiterOnLine(context, delimiter) {\n var _a;\n const cloned = {\n options: context.options,\n source: context.source,\n position: context.position,\n currentDelimiter: context.currentDelimiter,\n end: context.end,\n wasDataOnLine: context.wasDataOnLine,\n };\n cloned.position += delimiter.length;\n while (cloned.position < cloned.end) {\n const token = scanToken(cloned);\n if (!token) {\n cloned.position += 1;\n continue;\n }\n switch (token.type) {\n case 'whitespace':\n cloned.position += token.length;\n continue;\n case 'eoln':\n return false;\n case 'comment':\n if ((_a = token.value) === null || _a === void 0 ? void 0 : _a.includes('\\n'))\n return true;\n cloned.position += token.length;\n continue;\n default:\n return true;\n }\n }\n}\nfunction pushQuery(context) {\n context.commandPart += context.source.slice(context.currentCommandStart, context.position);\n pushCurrentQueryPart(context);\n}\nfunction pushCurrentQueryPart(context) {\n const trimmed = context.commandPart.substring(context.trimCommandStartPosition - context.commandStartPosition, context.noWhitePosition - context.commandStartPosition);\n if (trimmed.trim()) {\n if (context.options.returnRichInfo) {\n context.pushOutput({\n text: trimmed,\n start: {\n position: context.commandStartPosition,\n line: context.commandStartLine,\n column: context.commandStartColumn,\n },\n end: {\n position: context.streamPosition,\n line: context.line,\n column: context.column,\n },\n trimStart: {\n position: context.trimCommandStartPosition,\n line: context.trimCommandStartLine,\n column: context.trimCommandStartColumn,\n },\n trimEnd: {\n position: context.noWhitePosition,\n line: context.noWhiteLine,\n column: context.noWhiteColumn,\n },\n });\n }\n else {\n context.pushOutput(trimmed);\n }\n }\n}\nfunction markStartCommand(context) {\n context.commandStartPosition = context.streamPosition;\n context.commandStartLine = context.line;\n context.commandStartColumn = context.column;\n context.trimCommandStartPosition = context.streamPosition;\n context.trimCommandStartLine = context.line;\n context.trimCommandStartColumn = context.column;\n context.wasDataInCommand = false;\n}\nfunction splitByLines(context) {\n while (context.position < context.end) {\n if (context.source[context.position] == '\\n') {\n pushQuery(context);\n context.commandPart = '';\n movePosition(context, 1, true);\n context.currentCommandStart = context.position;\n markStartCommand(context);\n }\n else {\n movePosition(context, 1, /\\s/.test(context.source[context.position]));\n }\n }\n if (context.end > context.currentCommandStart) {\n context.commandPart += context.source.slice(context.currentCommandStart, context.position);\n }\n}\nfunction splitQueryLine(context) {\n if (context.options.splitByLines) {\n splitByLines(context);\n return;\n }\n while (context.position < context.end) {\n const token = scanToken(context);\n if (!token) {\n // nothing special, move forward\n movePosition(context, 1, false);\n continue;\n }\n switch (token.type) {\n case 'string':\n movePosition(context, token.length, false);\n context.wasDataOnLine = true;\n break;\n case 'comment':\n movePosition(context, token.length, !!context.options.ignoreComments);\n context.wasDataOnLine = true;\n break;\n case 'eoln':\n movePosition(context, token.length, true);\n context.wasDataOnLine = false;\n break;\n case 'data':\n movePosition(context, token.length, false);\n context.wasDataOnLine = true;\n break;\n case 'whitespace':\n movePosition(context, token.length, true);\n break;\n case 'set_delimiter':\n pushQuery(context);\n context.commandPart = '';\n context.currentDelimiter = token.value;\n movePosition(context, token.length, false);\n context.currentCommandStart = context.position;\n markStartCommand(context);\n break;\n case 'go_delimiter':\n pushQuery(context);\n context.commandPart = '';\n movePosition(context, token.length, false);\n context.currentCommandStart = context.position;\n markStartCommand(context);\n if (context.options.adaptiveGoSplit) {\n context.currentDelimiter = SEMICOLON;\n }\n break;\n case 'create_routine':\n movePosition(context, token.length, false);\n if (context.options.adaptiveGoSplit) {\n context.currentDelimiter = null;\n }\n break;\n case 'delimiter':\n if (context.options.preventSingleLineSplit && containsDataAfterDelimiterOnLine(context, token)) {\n movePosition(context, token.length, false);\n context.wasDataOnLine = true;\n break;\n }\n pushQuery(context);\n context.commandPart = '';\n movePosition(context, token.length, false);\n context.currentCommandStart = context.position;\n markStartCommand(context);\n break;\n }\n }\n if (context.end > context.currentCommandStart) {\n context.commandPart += context.source.slice(context.currentCommandStart, context.position);\n }\n}\nexports.splitQueryLine = splitQueryLine;\nfunction getInitialDelimiter(options) {\n if (options === null || options === void 0 ? void 0 : options.adaptiveGoSplit)\n return SEMICOLON;\n return (options === null || options === void 0 ? void 0 : options.allowSemicolon) === false ? null : SEMICOLON;\n}\nexports.getInitialDelimiter = getInitialDelimiter;\nfunction finishSplitStream(context) {\n pushCurrentQueryPart(context);\n}\nexports.finishSplitStream = finishSplitStream;\nfunction splitQuery(sql, options = null) {\n var _a;\n const usedOptions = Object.assign(Object.assign({}, options_1.defaultSplitterOptions), options);\n if (usedOptions.noSplit) {\n if (usedOptions.returnRichInfo) {\n const lines = sql.split('\\n');\n return [\n {\n text: sql,\n start: {\n position: 0,\n line: 0,\n column: 0,\n },\n end: {\n position: sql.length,\n line: lines.length,\n column: ((_a = lines[lines.length - 1]) === null || _a === void 0 ? void 0 : _a.length) || 0,\n },\n },\n ];\n }\n return [sql];\n }\n const output = [];\n const context = {\n source: sql,\n end: sql.length,\n currentDelimiter: getInitialDelimiter(options),\n position: 0,\n column: 0,\n line: 0,\n currentCommandStart: 0,\n commandStartLine: 0,\n commandStartColumn: 0,\n commandStartPosition: 0,\n streamPosition: 0,\n noWhiteLine: 0,\n noWhiteColumn: 0,\n noWhitePosition: 0,\n trimCommandStartPosition: 0,\n trimCommandStartLine: 0,\n trimCommandStartColumn: 0,\n wasDataInCommand: false,\n pushOutput: cmd => output.push(cmd),\n wasDataOnLine: false,\n options: usedOptions,\n commandPart: '',\n };\n splitQueryLine(context);\n finishSplitStream(context);\n return output;\n}\nexports.splitQuery = splitQuery;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.splitQuery = void 0;\nvar splitQuery_1 = require(\"./splitQuery\");\nObject.defineProperty(exports, \"splitQuery\", { enumerable: true, get: function () { return splitQuery_1.splitQuery; } });\n__exportStar(require(\"./options\"), exports);\n","import { splitQuery } from 'dbgate-query-splitter';\n\nonmessage = e => {\n const result = splitQuery(e.data.text, e.data.options);\n postMessage(result);\n};\n"],"names":["Object","defineProperty","exports","value","redisSplitterOptions","noSplitSplitterOptions","sqliteSplitterOptions","postgreSplitterOptions","mysqlSplitterOptions","defaultSplitterOptions","stringsBegins","stringsEnds","stringEscapes","allowSemicolon","allowCustomDelimiter","allowGoDelimiter","allowDollarDollarString","noSplit","doubleDashComments","multilineComments","javaScriptComments","returnRichInfo","splitByLines","preventSingleLineSplit","adaptiveGoSplit","ignoreComments","assign","mssqlSplitterOptions","mongoSplitterOptions","splitQuery_1","splitQuery","getInitialDelimiter","splitQueryLine","options_1","require$$0","movePosition","context","count","isWhite","source","position","line","column","streamPosition","wasDataInCommand","trimCommandStartPosition","trimCommandStartLine","trimCommandStartColumn","noWhitePosition","noWhiteLine","noWhiteColumn","isStringEnd","s","pos","endch","escapech","WHITESPACE_TOKEN","type","length","EOLN_TOKEN","DATA_TOKEN","scanToken","ch","options","includes","end","currentDelimiter","slice","startsWith","wasDataOnLine","m","match","trim","dollarString","exec","label","scanDollarQuotedString","containsDataAfterDelimiterOnLine","delimiter","_a","cloned","token","pushQuery","commandPart","currentCommandStart","pushCurrentQueryPart","trimmed","substring","commandStartPosition","pushOutput","text","start","commandStartLine","commandStartColumn","trimStart","trimEnd","markStartCommand","test","finishSplitStream","splitQuery$1","sql","usedOptions","lines","split","output","cmd","push","__createBinding","this","create","o","k","k2","undefined","desc","getOwnPropertyDescriptor","__esModule","writable","configurable","enumerable","get","__exportStar","p","prototype","hasOwnProperty","call","require$$1","onmessage","e","result","data","postMessage"],"mappings":"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"}
package/public/global.css CHANGED
@@ -167,3 +167,33 @@ textarea {
167
167
  color: var(--theme-font-1);
168
168
  border: 1px solid var(--theme-border);
169
169
  }
170
+
171
+ .ace_gutter-cell.ace-gutter-sql-run {
172
+ background-repeat: no-repeat;
173
+ background-position: 2px center;
174
+
175
+ /* content: '▶';
176
+ margin-right: 3px; */
177
+
178
+ /* border-radius: 20px 0px 0px 20px; */
179
+ /* Change the color of the breakpoint if you want
180
+ box-shadow: 0px 0px 1px 1px #248c46 inset; */
181
+ }
182
+
183
+ .theme-type-light .ace_gutter-cell.ace-gutter-sql-run {
184
+ background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTguMS4xLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgMTcuODA0IDE3LjgwNCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTcuODA0IDE3LjgwNDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8Zz4KCTxnIGlkPSJjOThfcGxheSI+CgkJPHBhdGggZmlsbD0nIzQ0NCcgZD0iTTIuMDY3LDAuMDQzQzIuMjEtMC4wMjgsMi4zNzItMC4wMDgsMi40OTMsMC4wODVsMTMuMzEyLDguNTAzYzAuMDk0LDAuMDc4LDAuMTU0LDAuMTkxLDAuMTU0LDAuMzEzCgkJCWMwLDAuMTItMC4wNjEsMC4yMzctMC4xNTQsMC4zMTRMMi40OTIsMTcuNzE3Yy0wLjA3LDAuMDU3LTAuMTYyLDAuMDg3LTAuMjUsMC4wODdsLTAuMTc2LTAuMDQKCQkJYy0wLjEzNi0wLjA2NS0wLjIyMi0wLjIwNy0wLjIyMi0wLjM2MVYwLjQwMkMxLjg0NCwwLjI1LDEuOTMsMC4xMDcsMi4wNjcsMC4wNDN6Ii8+Cgk8L2c+Cgk8ZyBpZD0iQ2FwYV8xXzc4XyI+Cgk8L2c+CjwvZz4KPC9zdmc+Cg==);
185
+ }
186
+
187
+ .theme-type-dark .ace_gutter-cell.ace-gutter-sql-run {
188
+ background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTguMS4xLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgMTcuODA0IDE3LjgwNCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTcuODA0IDE3LjgwNDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8Zz4KCTxnIGlkPSJjOThfcGxheSI+CgkJPHBhdGggZmlsbD0nI2RkZCcgZD0iTTIuMDY3LDAuMDQzQzIuMjEtMC4wMjgsMi4zNzItMC4wMDgsMi40OTMsMC4wODVsMTMuMzEyLDguNTAzYzAuMDk0LDAuMDc4LDAuMTU0LDAuMTkxLDAuMTU0LDAuMzEzCgkJCWMwLDAuMTItMC4wNjEsMC4yMzctMC4xNTQsMC4zMTRMMi40OTIsMTcuNzE3Yy0wLjA3LDAuMDU3LTAuMTYyLDAuMDg3LTAuMjUsMC4wODdsLTAuMTc2LTAuMDQKCQkJYy0wLjEzNi0wLjA2NS0wLjIyMi0wLjIwNy0wLjIyMi0wLjM2MVYwLjQwMkMxLjg0NCwwLjI1LDEuOTMsMC4xMDcsMi4wNjcsMC4wNDN6Ii8+Cgk8L2c+Cgk8ZyBpZD0iQ2FwYV8xXzc4XyI+Cgk8L2c+CjwvZz4KPC9zdmc+Cg==);
189
+ }
190
+
191
+ .ace_gutter-cell.ace-gutter-sql-run:hover {
192
+ background-color: var(--theme-bg-2);
193
+ }
194
+
195
+ .ace_gutter-cell.ace-gutter-current-part {
196
+ /* background-color: var(--theme-bg-2); */
197
+ font-weight: bold;
198
+ color: var(--theme-font-hover);
199
+ }