node-sql-parser
Version:
simple node sql parser
1 lines • 305 kB
JavaScript
!function(t,r){if("object"==typeof exports&&"object"==typeof module)module.exports=r();else if("function"==typeof define&&define.amd)define([],r);else{var e=r();for(var n in e)("object"==typeof exports?exports:t)[n]=e[n]}}(this,(function(){return function(t){var r={};function e(n){if(r[n])return r[n].exports;var o=r[n]={i:n,l:!1,exports:{}};return t[n].call(o.exports,o,o.exports,e),o.l=!0,o.exports}return e.m=t,e.c=r,e.d=function(t,r,n){e.o(t,r)||Object.defineProperty(t,r,{enumerable:!0,get:n})},e.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},e.t=function(t,r){if(1&r&&(t=e(t)),8&r)return t;if(4&r&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(e.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&r&&"string"!=typeof t)for(var o in t)e.d(n,o,function(r){return t[r]}.bind(null,o));return n},e.n=function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,"a",r),r},e.o=function(t,r){return Object.prototype.hasOwnProperty.call(t,r)},e.p="",e(e.s=26)}([function(t,r,e){"use strict";e.r(r),e.d(r,"arrayStructTypeToSQL",(function(){return E})),e.d(r,"autoIncrementToSQL",(function(){return _})),e.d(r,"columnOrderListToSQL",(function(){return x})),e.d(r,"commonKeywordArgsToSQL",(function(){return U})),e.d(r,"commonOptionConnector",(function(){return i})),e.d(r,"connector",(function(){return c})),e.d(r,"commonTypeValue",(function(){return O})),e.d(r,"commentToSQL",(function(){return A})),e.d(r,"createBinaryExpr",(function(){return f})),e.d(r,"createValueExpr",(function(){return l})),e.d(r,"dataTypeToSQL",(function(){return g})),e.d(r,"DEFAULT_OPT",(function(){return a})),e.d(r,"escape",(function(){return p})),e.d(r,"literalToSQL",(function(){return L})),e.d(r,"columnIdentifierToSql",(function(){return d})),e.d(r,"getParserOpt",(function(){return b})),e.d(r,"identifierToSql",(function(){return h})),e.d(r,"onPartitionsToSQL",(function(){return C})),e.d(r,"replaceParams",(function(){return j})),e.d(r,"returningToSQL",(function(){return S})),e.d(r,"hasVal",(function(){return w})),e.d(r,"setParserOpt",(function(){return v})),e.d(r,"toUpper",(function(){return m})),e.d(r,"topToSQL",(function(){return y})),e.d(r,"triggerEventToSQL",(function(){return T}));var n=e(2),o=e(11);function s(t){return(s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var a={database:"noql",type:"table",trimQuery:!0,parseOptions:{includeLocations:!1}},u=a;function i(t,r,e){if(e)return t?"".concat(t.toUpperCase()," ").concat(r(e)):r(e)}function c(t,r){if(r)return"".concat(t.toUpperCase()," ").concat(r)}function l(t){var r=s(t);if(Array.isArray(t))return{type:"expr_list",value:t.map(l)};if(null===t)return{type:"null",value:null};switch(r){case"boolean":return{type:"bool",value:t};case"string":return{type:"string",value:t};case"number":return{type:"number",value:t};default:throw new Error('Cannot convert value "'.concat(r,'" to SQL'))}}function f(t,r,e){var n={operator:t,type:"binary_expr"};return n.left=r.type?r:l(r),"BETWEEN"===t||"NOT BETWEEN"===t?(n.right={type:"expr_list",value:[l(e[0]),l(e[1])]},n):(n.right=e.type?e:l(e),n)}function p(t){return t}function b(){return u}function v(t){u=t}function y(t){if(t){var r=t.value,e=t.percent,n=t.parentheses?"(".concat(r,")"):r,o="TOP ".concat(n);return e?"".concat(o," ").concat(e.toUpperCase()):o}}function d(t){var r=b().database;if(t)switch(r&&r.toLowerCase()){case"db2":case"postgresql":case"redshift":case"snowflake":case"noql":case"trino":case"sqlite":return'"'.concat(t,'"');case"transactsql":return"[".concat(t,"]");case"mysql":case"mariadb":case"bigquery":default:return"`".concat(t,"`")}}function h(t,r){var e=b().database;if(!0===r)return"'".concat(t,"'");if(t){if("*"===t)return t;switch(e&&e.toLowerCase()){case"mysql":case"mariadb":return"`".concat(t,"`");case"postgresql":case"redshift":case"snowflake":case"trino":case"noql":case"sqlite":return'"'.concat(t,'"');case"transactsql":return"[".concat(t,"]");case"bigquery":case"db2":return t;default:return"`".concat(t,"`")}}}function m(t){if(t)return t.toUpperCase()}function w(t){return t}function L(t){if(t){var r=t.prefix,e=t.type,n=t.parentheses,a=t.suffix,u=t.value,i="object"===s(t)?u:t;switch(e){case"backticks_quote_string":i="`".concat(u,"`");break;case"string":i="'".concat(u,"'");break;case"regex_string":i='r"'.concat(u,'"');break;case"hex_string":i="X'".concat(u,"'");break;case"full_hex_string":i="0x".concat(u);break;case"natural_string":i="N'".concat(u,"'");break;case"bit_string":i="b'".concat(u,"'");break;case"double_quote_string":i='"'.concat(u,'"');break;case"single_quote_string":i="'".concat(u,"'");break;case"boolean":case"bool":i=u?"TRUE":"FALSE";break;case"null":i="NULL";break;case"star":i="*";break;case"param":i="".concat(r||":").concat(u),r=null;break;case"origin":i=u.toUpperCase();break;case"date":case"datetime":case"time":case"timestamp":i="".concat(e.toUpperCase()," '").concat(u,"'");break;case"var_string":i="N'".concat(u,"'");break;case"unicode_string":i="U&'".concat(u,"'")}var c=[];return r&&c.push(m(r)),c.push(i),a&&("string"==typeof a&&c.push(a),"object"===s(a)&&(a.collate?c.push(Object(o.a)(a.collate)):c.push(L(a)))),i=c.join(" "),n?"(".concat(i,")"):i}}function O(t){if(!t)return[];var r=t.type,e=t.symbol,n=t.value;return[r.toUpperCase(),e,"string"==typeof n?n.toUpperCase():L(n)].filter(w)}function j(t,r){return function t(r,e){return Object.keys(r).filter((function(t){var e=r[t];return Array.isArray(e)||"object"===s(e)&&null!==e})).forEach((function(n){var o=r[n];if("object"!==s(o)||"param"!==o.type)return t(o,e);if(void 0===e[o.value])throw new Error("no value for parameter :".concat(o.value," found"));return r[n]=l(e[o.value]),null})),r}(JSON.parse(JSON.stringify(t)),r)}function C(t){var r=t.type,e=t.partitions;return[m(r),"(".concat(e.map((function(t){if("range"!==t.type)return L(t);var r=t.start,e=t.end,n=t.symbol;return"".concat(L(r)," ").concat(m(n)," ").concat(L(e))})).join(", "),")")].join(" ")}function g(t){var r=t.dataType,e=t.length,n=t.parentheses,o=t.scale,s=t.suffix,a="";return null!=e&&(a=o?"".concat(e,", ").concat(o):e),n&&(a="(".concat(a,")")),s&&s.length&&(a+=" ".concat(s.join(" "))),"".concat(r).concat(a)}function E(t){if(t){var r=t.dataType,e=t.definition,n=t.anglebracket,o=m(r);if("ARRAY"!==o&&"STRUCT"!==o)return o;var s=e&&e.map((function(t){return[t.field_name,E(t.field_type)].filter(w).join(" ")})).join(", ");return n?"".concat(o,"<").concat(s,">"):"".concat(o," ").concat(s)}}function A(t){if(t){var r=[],e=t.keyword,n=t.symbol,o=t.value;return r.push(e.toUpperCase()),n&&r.push(n),r.push(L(o)),r.join(" ")}}function T(t){return t.map((function(t){var r=t.keyword,e=t.args,o=[m(r)];if(e){var s=e.keyword,a=e.columns;o.push(m(s),a.map(n.e).join(", "))}return o.join(" ")})).join(" OR ")}function S(t){return t?["RETURNING",t.columns.map(n.g).filter(w).join(", ")].join(" "):""}function U(t){return t?[m(t.keyword),m(t.args)]:[]}function _(t){if(t){if("string"==typeof t){var r=b().database;switch(r&&r.toLowerCase()){case"sqlite":return"AUTOINCREMENT";default:return"AUTO_INCREMENT"}}var e=t.keyword,n=t.seed,o=t.increment,s=t.parentheses,a=m(e);return s&&(a+="(".concat(L(n),", ").concat(L(o),")")),a}}function x(t){if(t)return t.map(n.d).filter(w).join(", ")}},function(t,r,e){"use strict";e.d(r,"a",(function(){return C})),e.d(r,"b",(function(){return g})),e.d(r,"d",(function(){return j})),e.d(r,"c",(function(){return E}));var n=e(0),o=e(9),s=e(13);var a=e(22),u=e(21);var i=e(11),c=e(2),l=e(6),f=e(18);var p=e(7),b=e(23);function v(t){return(v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function y(t){var r=t.expr_list,e=t.type;switch(Object(n.toUpper)(e)){case"STRUCT":return"(".concat(Object(c.h)(r),")");case"ARRAY":return function(t){var r=t.array_path,e=t.brackets,o=t.expr_list,s=t.parentheses;if(!o)return"[".concat(Object(c.h)(r),"]");var a=Array.isArray(o)?o.map((function(t){return"(".concat(Object(c.h)(t),")")})).filter(n.hasVal).join(", "):C(o);return e?"[".concat(a,"]"):s?"(".concat(a,")"):a}(t);default:return""}}function d(t){var r=t.definition,e=t.keyword,o=[Object(n.toUpper)(e)];return r&&"object"===v(r)&&(o.length=0,o.push(Object(n.arrayStructTypeToSQL)(r))),o.push(y(t)),o.filter(n.hasVal).join("")}var h=e(3),m=e(5),w=e(20);function L(t){return(L="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var O={alter:o.b,aggr_func:function(t){var r=t.args,e=t.filter,o=t.over,a=t.within_group_orderby,u=C(r.expr);u=Array.isArray(u)?u.join(", "):u;var i=t.name,c=Object(s.a)(o);r.distinct&&(u=["DISTINCT",u].join(" ")),r.separator&&r.separator.delimiter&&(u=[u,Object(n.literalToSQL)(r.separator.delimiter)].join("".concat(r.separator.symbol," "))),r.separator&&r.separator.expr&&(u=[u,C(r.separator.expr)].join(" ")),r.orderby&&(u=[u,E(r.orderby,"order by")].join(" ")),r.separator&&r.separator.value&&(u=[u,Object(n.toUpper)(r.separator.keyword),Object(n.literalToSQL)(r.separator.value)].filter(n.hasVal).join(" "));var l=a?"WITHIN GROUP (".concat(E(a,"order by"),")"):"",f=e?"FILTER (WHERE ".concat(C(e.where),")"):"";return["".concat(i,"(").concat(u,")"),l,c,f].filter(n.hasVal).join(" ")},any_value:l.a,window_func:w.c,array:d,assign:a.a,binary_expr:u.a,case:function(t){var r=["CASE"],e=t.args,n=t.expr,o=t.parentheses;n&&r.push(C(n));for(var s=0,a=e.length;s<a;++s)r.push(e[s].type.toUpperCase()),e[s].cond&&(r.push(C(e[s].cond)),r.push("THEN")),r.push(C(e[s].result));return r.push("END"),o?"(".concat(r.join(" "),")"):r.join(" ")},cast:l.c,collate:i.a,column_ref:c.e,column_definition:c.c,datatype:n.dataTypeToSQL,extract:l.d,flatten:l.e,fulltext_search:c.i,function:l.f,lambda:l.h,insert:m.b,interval:f.a,json:function(t){var r=t.keyword,e=t.expr_list;return[Object(n.toUpper)(r),e.map((function(t){return C(t)})).join(", ")].join(" ")},json_object_arg:l.g,json_visitor:function(t){return[t.symbol,C(t.expr)].join("")},show:b.a,struct:d,tablefunc:l.i,tables:h.c,unnest:h.d,window:w.b};function j(t){var r=t.prefix,e=void 0===r?"@":r,o=t.name,s=t.members,a=t.quoted,u=t.suffix,i=[],c=s&&s.length>0?"".concat(o,".").concat(s.join(".")):o,l="".concat(e||"").concat(c);return u&&(l+=u),i.push(l),[a,i.join(" "),a].filter(n.hasVal).join("")}function C(t){if(t){var r=t;if(t.ast){var e=r.ast;Reflect.deleteProperty(r,e);for(var o=0,s=Object.keys(e);o<s.length;o++){var a=s[o];r[a]=e[a]}}var u=r.type;return"expr"===u?C(r.expr):O[u]?O[u](r):Object(n.literalToSQL)(r)}}function g(t){return t?(Array.isArray(t)||(t=[t]),t.map(C)):[]}function E(t,r){if(!Array.isArray(t))return"";var e=[],o=Object(n.toUpper)(r);switch(o){case"ORDER BY":e=t.map((function(t){return[C(t.expr),t.type||"ASC",Object(n.toUpper)(t.nulls)].filter(n.hasVal).join(" ")}));break;case"PARTITION BY":default:e=t.map((function(t){return C(t.expr)}))}return Object(n.connector)(o,e.join(", "))}O.var=j,O.expr_list=function(t){var r=g(t.value),e=t.parentheses,n=t.separator;if(!e&&!n)return r;var o=n||", ",s=r.join(o);return e?"(".concat(s,")"):s},O.select=function(t){var r="object"===L(t._next)?Object(m.b)(t):Object(p.a)(t);return t.parentheses?"(".concat(r,")"):r},O.unary_expr=function(t){var r=t.operator,e=t.parentheses,n=t.expr,o="-"===r||"+"===r||"~"===r||"!"===r?"":" ",s="".concat(r).concat(o).concat(C(n));return e?"(".concat(s,")"):s},O.map_object=function(t){var r=t.keyword,e=t.expr.map((function(t){return[Object(n.literalToSQL)(t.key),Object(n.literalToSQL)(t.value)].join(", ")})).join(", ");return[Object(n.toUpper)(r),"[".concat(e,"]")].join("")}},function(t,r,e){"use strict";e.d(r,"a",(function(){return b})),e.d(r,"c",(function(){return w})),e.d(r,"e",(function(){return v})),e.d(r,"g",(function(){return j})),e.d(r,"h",(function(){return g})),e.d(r,"b",(function(){return y})),e.d(r,"d",(function(){return m})),e.d(r,"f",(function(){return d})),e.d(r,"i",(function(){return O})),e.d(r,"j",(function(){return C}));var n=e(11),o=e(19),s=e(1),a=e(6),u=e(3),i=e(0);function c(t){return(c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function l(t){return function(t){if(Array.isArray(t))return p(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||f(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function f(t,r){if(t){if("string"==typeof t)return p(t,r);var e={}.toString.call(t).slice(8,-1);return"Object"===e&&t.constructor&&(e=t.constructor.name),"Map"===e||"Set"===e?Array.from(t):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?p(t,r):void 0}}function p(t,r){(null==r||r>t.length)&&(r=t.length);for(var e=0,n=Array(r);e<r;e++)n[e]=t[e];return n}function b(t){if(!t||0===t.length)return"";var r,e=[],n=function(t,r){var e="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!e){if(Array.isArray(t)||(e=f(t))||r&&t&&"number"==typeof t.length){e&&(t=e);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,a=!0,u=!1;return{s:function(){e=e.call(t)},n:function(){var t=e.next();return a=t.done,t},e:function(t){u=!0,s=t},f:function(){try{a||null==e.return||e.return()}finally{if(u)throw s}}}}(t);try{for(n.s();!(r=n.n()).done;){var o=r.value,s=o.brackets?"[".concat(Object(i.literalToSQL)(o.index),"]"):"".concat(o.notation).concat(Object(i.literalToSQL)(o.index));o.property&&(s="".concat(s,".").concat(Object(i.literalToSQL)(o.property))),e.push(s)}}catch(t){n.e(t)}finally{n.f()}return e.join("")}function v(t){var r=t.array_index,e=t.as,o=t.column,a=t.collate,u=t.db,c=t.isDual,f=t.notations,p=void 0===f?[]:f,v=t.options,y=t.schema,d=t.table,h=t.parentheses,m=t.suffix,w=t.order_by,L=t.subFields,O=void 0===L?[]:L,j="*"===o?"*":function(t,r){if("string"==typeof t)return Object(i.identifierToSql)(t,r);var e=t.expr,n=t.offset,o=t.suffix,a=n&&n.map((function(t){return["[",t.name,"".concat(t.name?"(":""),Object(i.literalToSQL)(t.value),"".concat(t.name?")":""),"]"].filter(i.hasVal).join("")})).join("");return[Object(s.a)(e),a,o].filter(i.hasVal).join("")}(o,c),C=[u,y,d].filter(i.hasVal).map((function(t){return"".concat("string"==typeof t?Object(i.identifierToSql)(t):Object(s.a)(t))})),g=C[0];if(g){for(var E=1;E<C.length;++E)g="".concat(g).concat(p[E]||".").concat(C[E]);j="".concat(g).concat(p[E]||".").concat(j)}var A=[j=["".concat(j).concat(b(r))].concat(l(O)).join("."),Object(n.a)(a),Object(s.a)(v),Object(i.commonOptionConnector)("AS",s.a,e)];A.push("string"==typeof m?Object(i.toUpper)(m):Object(s.a)(m)),A.push(Object(i.toUpper)(w));var T=A.filter(i.hasVal).join(" ");return h?"(".concat(T,")"):T}function y(t){if(t){var r=t.dataType,e=t.length,n=t.suffix,o=t.scale,u=t.expr,i=r;if(null!=e&&(i+="(".concat([e,o].filter((function(t){return null!=t})).join(", "),")")),n&&n.length&&(i+=" ".concat(n.join(" "))),u&&(i+=Object(s.a)(u)),t.array){var c=Object(a.b)(t);i+=[/^\[.*\]$/.test(c)?"":" ",c].join("")}return i}}function d(t){var r=[];if(!t)return r;var e=t.definition,n=t.keyword,o=t.match,a=t.table,c=t.on_action;return r.push(Object(i.toUpper)(n)),r.push(Object(u.c)(a)),r.push(e&&"(".concat(e.map((function(t){return Object(s.a)(t)})).join(", "),")")),r.push(Object(i.toUpper)(o)),c.map((function(t){return r.push(Object(i.toUpper)(t.type),Object(s.a)(t.value))})),r.filter(i.hasVal)}function h(t){var r=[],e=t.nullable,n=t.character_set,a=t.check,u=t.comment,c=t.constraint,f=t.collate,p=t.storage,b=t.using,v=t.default_val,y=t.generated,h=t.auto_increment,m=t.unique,w=t.primary_key,L=t.column_format,O=t.reference_definition,j=[Object(i.toUpper)(e&&e.action),Object(i.toUpper)(e&&e.value)].filter(i.hasVal).join(" ");if(y||r.push(j),v){var C=v.type,g=v.value;r.push(C.toUpperCase(),Object(s.a)(g))}var E=Object(i.getParserOpt)().database;return c&&r.push(Object(i.toUpper)(c.keyword),Object(i.literalToSQL)(c.constraint)),r.push(Object(o.a)(a)),r.push(function(t){if(t)return[Object(i.toUpper)(t.value),"(".concat(Object(s.a)(t.expr),")"),Object(i.toUpper)(t.storage_type)].filter(i.hasVal).join(" ")}(y)),y&&r.push(j),r.push(Object(i.autoIncrementToSQL)(h),Object(i.toUpper)(w),Object(i.toUpper)(m),Object(i.commentToSQL)(u)),r.push.apply(r,l(Object(i.commonTypeValue)(n))),"sqlite"!==E&&r.push(Object(s.a)(f)),r.push.apply(r,l(Object(i.commonTypeValue)(L))),r.push.apply(r,l(Object(i.commonTypeValue)(p))),r.push.apply(r,l(d(O))),r.push(Object(i.commonOptionConnector)("USING",s.a,b)),r.filter(i.hasVal).join(" ")}function m(t){var r=t.column,e=t.collate,n=t.nulls,o=t.opclass,a=t.order_by,u="string"==typeof r?{type:"column_ref",table:t.table,column:r}:t;return u.collate=null,[Object(s.a)(u),Object(s.a)(e),o,Object(i.toUpper)(a),Object(i.toUpper)(n)].filter(i.hasVal).join(" ")}function w(t){var r=[],e=v(t.column),n=y(t.definition);return r.push(e),r.push(n),r.push(h(t)),r.filter(i.hasVal).join(" ")}function L(t){return t?"object"===c(t)?["AS",Object(s.a)(t)].join(" "):["AS",/^(`?)[a-z_][0-9a-z_]*(`?)$/i.test(t)?Object(i.identifierToSql)(t):Object(i.columnIdentifierToSql)(t)].join(" "):""}function O(t){var r=t.against,e=t.as,n=t.columns,o=t.match,a=t.mode;return[[Object(i.toUpper)(o),"(".concat(n.map((function(t){return v(t)})).join(", "),")")].join(" "),[Object(i.toUpper)(r),["(",Object(s.a)(t.expr),a&&" ".concat(Object(i.literalToSQL)(a)),")"].filter(i.hasVal).join("")].join(" "),L(e)].filter(i.hasVal).join(" ")}function j(t,r){var e=t.expr,n=t.type;if("cast"===n)return Object(a.c)(t);r&&(e.isDual=r);var o=Object(s.a)(e),u=t.expr_list;if(u){var c=[o],l=u.map((function(t){return j(t,r)})).join(", ");return c.push([Object(i.toUpper)(n),n&&"(",l,n&&")"].filter(i.hasVal).join("")),c.filter(i.hasVal).join(" ")}return e.parentheses&&Reflect.has(e,"array_index")&&"cast"!==e.type&&(o="(".concat(o,")")),e.array_index&&"column_ref"!==e.type&&(o="".concat(o).concat(b(e.array_index))),[o,L(t.as)].filter(i.hasVal).join(" ")}function C(t){var r=Array.isArray(t)&&t[0];return!(!r||"dual"!==r.type)}function g(t,r){if(!t||"*"===t)return t;var e=C(r);return t.map((function(t){return j(t,e)})).join(", ")}},function(t,r,e){"use strict";e.d(r,"c",(function(){return y})),e.d(r,"a",(function(){return d})),e.d(r,"b",(function(){return v})),e.d(r,"d",(function(){return c}));var n=e(21),o=e(2),s=e(1),a=e(17),u=e(18),i=e(0);function c(t){var r=t.type,e=t.as,n=t.expr,o=t.with_offset;return["".concat(Object(i.toUpper)(r),"(").concat(n&&Object(s.a)(n)||"",")"),Object(i.commonOptionConnector)("AS","string"==typeof e?i.identifierToSql:s.a,e),Object(i.commonOptionConnector)(Object(i.toUpper)(o&&o.keyword),i.identifierToSql,o&&o.as)].filter(i.hasVal).join(" ")}function l(t){if(t)switch(t.type){case"pivot":case"unpivot":return function(t){var r=t.as,e=t.column,a=t.expr,u=t.in_expr,c=t.type,l=[Object(s.a)(a),"FOR",Object(o.e)(e),Object(n.a)(u)],f=["".concat(Object(i.toUpper)(c),"(").concat(l.join(" "),")")];return r&&f.push("AS",Object(i.identifierToSql)(r)),f.join(" ")}(t);default:return""}}function f(t){if(t){var r=t.keyword,e=t.expr,n=t.index,o=t.index_columns,a=t.parentheses,u=t.prefix,c=[];switch(r.toLowerCase()){case"forceseek":c.push(Object(i.toUpper)(r),"(".concat(Object(i.identifierToSql)(n)),"(".concat(o.map(s.a).filter(i.hasVal).join(", "),"))"));break;case"spatial_window_max_cells":c.push(Object(i.toUpper)(r),"=",Object(s.a)(e));break;case"index":c.push(Object(i.toUpper)(u),Object(i.toUpper)(r),a?"(".concat(e.map(i.identifierToSql).join(", "),")"):"= ".concat(Object(i.identifierToSql)(e)));break;default:c.push(Object(s.a)(e))}return c.filter(i.hasVal).join(" ")}}function p(t,r){var e=t.name,n=t.symbol;return[Object(i.toUpper)(e),n,r].filter(i.hasVal).join(" ")}function b(t){var r=[];switch(t.keyword){case"as":r.push("AS","OF",Object(s.a)(t.of));break;case"from_to":r.push("FROM",Object(s.a)(t.from),"TO",Object(s.a)(t.to));break;case"between_and":r.push("BETWEEN",Object(s.a)(t.between),"AND",Object(s.a)(t.and));break;case"contained":r.push("CONTAINED","IN",Object(s.a)(t.in))}return r.filter(i.hasVal).join(" ")}function v(t){if("UNNEST"===Object(i.toUpper)(t.type))return c(t);var r,e,n,v,y=t.table,d=t.db,h=t.as,m=t.expr,w=t.operator,L=t.prefix,O=t.schema,j=t.server,C=t.suffix,g=t.tablesample,E=t.temporal_table,A=t.table_hint,T=Object(i.identifierToSql)(j),S=Object(i.identifierToSql)(d),U=Object(i.identifierToSql)(O),_=y&&Object(i.identifierToSql)(y);if(m)switch(m.type){case"values":var x=m.parentheses,N=m.values,I=m.prefix,R=[x&&"(","",x&&")"],k=Object(a.b)(N);I&&(k=k.split("(").slice(1).map((function(t){return"".concat(Object(i.toUpper)(I),"(").concat(t)})).join("")),R[1]="VALUES ".concat(k),_=R.filter(i.hasVal).join("");break;case"tumble":_=function(t){if(!t)return"";var r=t.data,e=t.timecol,n=t.offset,s=t.size,a=[Object(i.identifierToSql)(r.expr.db),Object(i.identifierToSql)(r.expr.schema),Object(i.identifierToSql)(r.expr.table)].filter(i.hasVal).join("."),c="DESCRIPTOR(".concat(Object(o.e)(e.expr),")"),l=["TABLE(TUMBLE(TABLE ".concat(p(r,a)),p(e,c)],f=p(s,Object(u.a)(s.expr));return n&&n.expr?l.push(f,"".concat(p(n,Object(u.a)(n.expr)),"))")):l.push("".concat(f,"))")),l.filter(i.hasVal).join(", ")}(m);break;case"generator":e=(r=m).keyword,n=r.type,v=r.generators.map((function(t){return Object(i.commonTypeValue)(t).join(" ")})).join(", "),_="".concat(Object(i.toUpper)(e),"(").concat(Object(i.toUpper)(n),"(").concat(v,"))");break;default:_=Object(s.a)(m)}var V=[[T,S,U,_=[Object(i.toUpper)(L),_,Object(i.toUpper)(C)].filter(i.hasVal).join(" ")].filter(i.hasVal).join(".")];if(g){var M=["TABLESAMPLE",Object(s.a)(g.expr),Object(i.literalToSQL)(g.repeatable)].filter(i.hasVal).join(" ");V.push(M)}V.push(function(t){if(t){var r=t.keyword,e=t.expr;return[Object(i.toUpper)(r),b(e)].filter(i.hasVal).join(" ")}}(E),Object(i.commonOptionConnector)("AS","string"==typeof h?i.identifierToSql:s.a,h),l(w)),A&&V.push(Object(i.toUpper)(A.keyword),"(".concat(A.expr.map(f).filter(i.hasVal).join(", "),")"));var q=V.filter(i.hasVal).join(" ");return t.parentheses?"(".concat(q,")"):q}function y(t){if(!t)return"";if(!Array.isArray(t)){var r=t.expr,e=t.parentheses,n=y(r);if(e){for(var o=[],a=[],u=!0===e?1:e.length,c=0;c++<u;)o.push("("),a.push(")");return o.join("")+n+a.join("")}return n}var l=t[0],f=[];if("dual"===l.type)return"DUAL";f.push(v(l));for(var p=1;p<t.length;++p){var b=t[p],d=b.on,h=b.using,m=b.join,w=[];w.push(m?" ".concat(Object(i.toUpper)(m)):","),w.push(v(b)),w.push(Object(i.commonOptionConnector)("ON",s.a,d)),h&&w.push("USING (".concat(h.map(i.identifierToSql).join(", "),")")),f.push(w.filter(i.hasVal).join(" "))}return f.filter(i.hasVal).join("")}function d(t){var r=t.keyword,e=t.symbol,n=t.value,o=[r.toUpperCase()];e&&o.push(e);var a=Object(i.literalToSQL)(n);switch(r){case"partition by":case"default collate":a=Object(s.a)(n);break;case"options":a="(".concat(n.map((function(t){return[t.keyword,t.symbol,Object(s.a)(t.value)].join(" ")})).join(", "),")");break;case"cluster by":a=n.map(s.a).join(", ")}return o.push(a),o.filter(i.hasVal).join(" ")}},function(t,r,e){"use strict";e.d(r,"a",(function(){return v})),e.d(r,"b",(function(){return y})),e.d(r,"c",(function(){return g})),e.d(r,"d",(function(){return E})),e.d(r,"e",(function(){return d})),e.d(r,"f",(function(){return h})),e.d(r,"g",(function(){return m})),e.d(r,"h",(function(){return S})),e.d(r,"i",(function(){return T})),e.d(r,"j",(function(){return A})),e.d(r,"l",(function(){return w})),e.d(r,"m",(function(){return L})),e.d(r,"o",(function(){return O})),e.d(r,"n",(function(){return j})),e.d(r,"k",(function(){return C}));var n=e(2),o=e(14),s=e(0),a=e(1),u=e(3),i=e(16),c=e(5);function l(t,r){var e="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!e){if(Array.isArray(t)||(e=p(t))||r&&t&&"number"==typeof t.length){e&&(t=e);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,a=!0,u=!1;return{s:function(){e=e.call(t)},n:function(){var t=e.next();return a=t.done,t},e:function(t){u=!0,s=t},f:function(){try{a||null==e.return||e.return()}finally{if(u)throw s}}}}function f(t){return function(t){if(Array.isArray(t))return b(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||p(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function p(t,r){if(t){if("string"==typeof t)return b(t,r);var e={}.toString.call(t).slice(8,-1);return"Object"===e&&t.constructor&&(e=t.constructor.name),"Map"===e||"Set"===e?Array.from(t):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?b(t,r):void 0}}function b(t,r){(null==r||r>t.length)&&(r=t.length);for(var e=0,n=Array(r);e<r;e++)n[e]=t[e];return n}function v(t){var r=Object(a.a)(t.expr);return"".concat("CALL"," ").concat(r)}function y(t){var r=t.type,e=t.keyword,o=t.name,i=t.prefix,c=t.suffix,l=[Object(s.toUpper)(r),Object(s.toUpper)(e),Object(s.toUpper)(i)];switch(e){case"table":l.push(Object(u.c)(o));break;case"trigger":l.push([o[0].schema?"".concat(Object(s.identifierToSql)(o[0].schema),"."):"",Object(s.identifierToSql)(o[0].trigger)].filter(s.hasVal).join(""));break;case"database":case"schema":case"procedure":l.push(Object(s.identifierToSql)(o));break;case"view":l.push(Object(u.c)(o),t.options&&t.options.map(a.a).filter(s.hasVal).join(" "));break;case"index":l.push.apply(l,[Object(n.e)(o)].concat(f(t.table?["ON",Object(u.b)(t.table)]:[]),[t.options&&t.options.map(a.a).filter(s.hasVal).join(" ")]))}return c&&l.push(c.map(a.a).filter(s.hasVal).join(" ")),l.filter(s.hasVal).join(" ")}function d(t){var r=t.type,e=t.table,n=Object(s.toUpper)(r);return"".concat(n," ").concat(Object(s.identifierToSql)(e))}function h(t){var r=t.type,e=t.name,n=t.args,o=[Object(s.toUpper)(r)],u=[e];return n&&u.push("(".concat(Object(a.a)(n).join(", "),")")),o.push(u.join("")),o.filter(s.hasVal).join(" ")}function m(t){var r=t.type,e=t.label,n=t.target,o=t.query,a=t.stmts;return[e,Object(s.toUpper)(r),n,"IN",Object(c.a)([o]),"LOOP",Object(c.a)(a),"END LOOP",e].filter(s.hasVal).join(" ")}function w(t){var r=t.type,e=t.level,n=t.raise,o=t.using,u=[Object(s.toUpper)(r),Object(s.toUpper)(e)];return n&&u.push([Object(s.literalToSQL)(n.keyword),"format"===n.type&&n.expr.length>0&&","].filter(s.hasVal).join(""),n.expr.map((function(t){return Object(a.a)(t)})).join(", ")),o&&u.push(Object(s.toUpper)(o.type),Object(s.toUpper)(o.option),o.symbol,o.expr.map((function(t){return Object(a.a)(t)})).join(", ")),u.filter(s.hasVal).join(" ")}function L(t){var r=t.type,e=t.table,n=[],o="".concat(r&&r.toUpperCase()," TABLE");if(e){var s,a=l(e);try{for(a.s();!(s=a.n()).done;){var i=s.value.map(u.b);n.push(i.join(" TO "))}}catch(t){a.e(t)}finally{a.f()}}return"".concat(o," ").concat(n.join(", "))}function O(t){var r=t.type,e=t.db,n=Object(s.toUpper)(r),o=Object(s.identifierToSql)(e);return"".concat(n," ").concat(o)}function j(t){var r=t.type,e=t.expr,n=t.keyword,o=Object(s.toUpper)(r),u=e.map(a.a).join(", ");return[o,Object(s.toUpper)(n),u].filter(s.hasVal).join(" ")}function C(t){var r=t.type,e=t.keyword,n=t.tables,o=[r.toUpperCase(),Object(s.toUpper)(e)];if("UNLOCK"===r.toUpperCase())return o.join(" ");var a,i=[],c=l(n);try{var p=function(){var t=a.value,r=t.table,e=t.lock_type,n=[Object(u.b)(r)];if(e){n.push(["prefix","type","suffix"].map((function(t){return Object(s.toUpper)(e[t])})).filter(s.hasVal).join(" "))}i.push(n.join(" "))};for(c.s();!(a=c.n()).done;)p()}catch(t){c.e(t)}finally{c.f()}return o.push.apply(o,[i.join(", ")].concat(f(function(t){var r=t.lock_mode,e=t.nowait,n=[];if(r){var o=r.mode;n.push(o.toUpperCase())}return e&&n.push(e.toUpperCase()),n}(t)))),o.filter(s.hasVal).join(" ")}function g(t){var r=t.type,e=t.keyword,n=t.expr;return[Object(s.toUpper)(r),Object(s.toUpper)(e),Object(a.a)(n)].filter(s.hasVal).join(" ")}function E(t){var r=t.type,e=t.declare,u=t.symbol,i=[Object(s.toUpper)(r)],c=e.map((function(t){var r=t.at,e=t.name,u=t.as,i=t.constant,c=t.datatype,l=t.not_null,f=t.prefix,p=t.definition,b=t.keyword,v=[[r,e].filter(s.hasVal).join(""),Object(s.toUpper)(u),Object(s.toUpper)(i)];switch(b){case"variable":v.push(Object(n.b)(c),Object(a.a)(t.collate),Object(s.toUpper)(l)),p&&v.push(Object(s.toUpper)(p.keyword),Object(a.a)(p.value));break;case"cursor":v.push(Object(s.toUpper)(f));break;case"table":v.push(Object(s.toUpper)(f),"(".concat(p.map(o.a).join(", "),")"))}return v.filter(s.hasVal).join(" ")})).join("".concat(u," "));return i.push(c),i.join(" ")}function A(t){var r=t.boolean_expr,e=t.else_expr,n=t.elseif_expr,o=t.if_expr,u=t.prefix,c=t.go,l=t.semicolons,f=t.suffix,p=t.type,b=[Object(s.toUpper)(p),Object(a.a)(r),Object(s.literalToSQL)(u),"".concat(Object(i.a)(o.ast||o)).concat(l[0]),Object(s.toUpper)(c)];return n&&b.push(n.map((function(t){return[Object(s.toUpper)(t.type),Object(a.a)(t.boolean_expr),"THEN",Object(i.a)(t.then.ast||t.then),t.semicolon].filter(s.hasVal).join(" ")})).join(" ")),e&&b.push("ELSE","".concat(Object(i.a)(e.ast||e)).concat(l[1])),b.push(Object(s.literalToSQL)(f)),b.filter(s.hasVal).join(" ")}function T(t){var r=t.name,e=t.host,n=[Object(s.literalToSQL)(r)];return e&&n.push("@",Object(s.literalToSQL)(e)),n.join("")}function S(t){var r=t.type,e=t.grant_option_for,o=t.keyword,u=t.objects,i=t.on,c=t.to_from,l=t.user_or_roles,f=t.with,p=[Object(s.toUpper)(r),Object(s.literalToSQL)(e)],b=u.map((function(t){var r=t.priv,e=t.columns,o=[Object(a.a)(r)];return e&&o.push("(".concat(e.map(n.e).join(", "),")")),o.join(" ")})).join(", ");if(p.push(b),i)switch(p.push("ON"),o){case"priv":p.push(Object(s.literalToSQL)(i.object_type),i.priv_level.map((function(t){return[Object(s.identifierToSql)(t.prefix),Object(s.identifierToSql)(t.name)].filter(s.hasVal).join(".")})).join(", "));break;case"proxy":p.push(T(i))}return p.push(Object(s.toUpper)(c),l.map(T).join(", ")),p.push(Object(s.literalToSQL)(f)),p.filter(s.hasVal).join(" ")}},function(t,r,e){"use strict";e.d(r,"b",(function(){return O})),e.d(r,"a",(function(){return j}));var n=e(9),o=e(1),s=e(3),a=e(0);var u=e(14),i=e(2);function c(t){var r=t.name,e=t.type;switch(e){case"table":case"view":var n=[Object(a.identifierToSql)(r.db),Object(a.identifierToSql)(r.table)].filter(a.hasVal).join(".");return"".concat(Object(a.toUpper)(e)," ").concat(n);case"column":return"COLUMN ".concat(Object(i.e)(r));default:return"".concat(Object(a.toUpper)(e)," ").concat(Object(a.literalToSQL)(r))}}function l(t){var r=t.keyword,e=t.expr;return[Object(a.toUpper)(r),Object(a.literalToSQL)(e)].filter(a.hasVal).join(" ")}var f=e(7);var p=e(8),b=e(15);var v=e(12),y=e(17),d=e(4);function h(t){var r=t.name,e=t.value;return["@".concat(r),"=",Object(o.a)(e)].filter(a.hasVal).join(" ")}var m=e(22);var w=e(23),L={alter:n.c,analyze:function(t){var r=t.type,e=t.table;return[Object(a.toUpper)(r),Object(s.b)(e)].join(" ")},attach:function(t){var r=t.type,e=t.database,n=t.expr,s=t.as,u=t.schema;return[Object(a.toUpper)(r),Object(a.toUpper)(e),Object(o.a)(n),Object(a.toUpper)(s),Object(a.identifierToSql)(u)].filter(a.hasVal).join(" ")},create:u.b,comment:function(t){var r=t.expr,e=t.keyword,n=t.target,o=t.type;return[Object(a.toUpper)(o),Object(a.toUpper)(e),c(n),l(r)].filter(a.hasVal).join(" ")},select:f.a,deallocate:d.c,delete:function(t){var r=t.columns,e=t.from,n=t.table,u=t.where,c=t.orderby,l=t.with,f=t.limit,v=[Object(b.a)(l),"DELETE"],y=Object(i.h)(r,e);return v.push(y),Array.isArray(n)&&(1===n.length&&!0===n[0].addition||v.push(Object(s.c)(n))),v.push(Object(a.commonOptionConnector)("FROM",s.c,e)),v.push(Object(a.commonOptionConnector)("WHERE",o.a,u)),v.push(Object(o.c)(c,"order by")),v.push(Object(p.a)(f)),v.filter(a.hasVal).join(" ")},exec:function(t){var r=t.keyword,e=t.module,n=t.parameters;return[Object(a.toUpper)(r),Object(s.b)(e),(n||[]).map(h).filter(a.hasVal).join(", ")].filter(a.hasVal).join(" ")},execute:d.f,explain:function(t){var r=t.type,e=t.expr;return[Object(a.toUpper)(r),Object(f.a)(e)].join(" ")},for:d.g,update:v.b,if:d.j,insert:y.a,drop:d.b,truncate:d.b,replace:y.a,declare:d.d,use:d.o,rename:d.m,call:d.a,desc:d.e,set:d.n,lock:d.k,unlock:d.k,show:w.a,grant:d.h,revoke:d.h,proc:function(t){var r=t.stmt;switch(r.type){case"assign":return Object(m.a)(r);case"return":return function(t){var r=t.type,e=t.expr;return[Object(a.toUpper)(r),Object(o.a)(e)].join(" ")}(r)}},raise:d.l,transaction:function(t){var r=t.expr,e=r.action,n=r.keyword,o=r.modes,s=[Object(a.literalToSQL)(e),Object(a.toUpper)(n)];return o&&s.push(o.map(a.literalToSQL).join(", ")),s.filter(a.hasVal).join(" ")}};function O(t){if(!t)return"";for(var r=L[t.type],e=t,n=e._parentheses,s=e._orderby,u=e._limit,i=[n&&"(",r(t)];t._next;){var c=L[t._next.type],l=Object(a.toUpper)(t.set_op);i.push(l,c(t._next)),t=t._next}return i.push(n&&")",Object(o.c)(s,"order by"),Object(p.a)(u)),i.filter(a.hasVal).join(" ")}function j(t){for(var r=[],e=0,n=t.length;e<n;++e){var o=t[e]&&t[e].ast?t[e].ast:t[e],s=O(o);e===n-1&&"transaction"===o.type&&(s="".concat(s," ;")),r.push(s)}return r.join(" ; ")}},function(t,r,e){"use strict";e.d(r,"a",(function(){return u})),e.d(r,"b",(function(){return i})),e.d(r,"c",(function(){return c})),e.d(r,"d",(function(){return l})),e.d(r,"e",(function(){return p})),e.d(r,"f",(function(){return b})),e.d(r,"g",(function(){return f})),e.d(r,"h",(function(){return y})),e.d(r,"i",(function(){return v}));var n=e(2),o=e(1),s=e(0),a=e(13);function u(t){var r=t.args,e=t.type,n=t.over,u=r.expr,i=r.having,c="".concat(Object(s.toUpper)(e),"(").concat(Object(o.a)(u));return i&&(c="".concat(c," HAVING ").concat(Object(s.toUpper)(i.prefix)," ").concat(Object(o.a)(i.expr))),[c="".concat(c,")"),Object(a.a)(n)].filter(s.hasVal).join(" ")}function i(t){if(!t||!t.array)return"";var r=t.array.keyword;if(r)return Object(s.toUpper)(r);for(var e=t.array,n=e.dimension,o=e.length,a=[],u=0;u<n;u++)a.push("["),o&&o[u]&&a.push(Object(s.literalToSQL)(o[u])),a.push("]");return a.join("")}function c(t){for(var r=t.target,e=t.expr,n=t.keyword,a=t.symbol,u=t.as,c=t.parentheses,l=Object(o.a)(e),f=[],p=0,b=r.length;p<b;++p){var v=r[p],y=v.angle_brackets,d=v.length,h=v.dataType,m=v.parentheses,w=v.quoted,L=v.scale,O=v.suffix,j=v.expr,C=j?Object(o.a)(j):"";null!=d&&(C=L?"".concat(d,", ").concat(L):d),m&&(C="(".concat(C,")")),y&&(C="<".concat(C,">")),O&&O.length&&(C+=" ".concat(O.map(s.literalToSQL).join(" ")));var g="::",E="",A=[];"as"===a&&(0===p&&(l="".concat(Object(s.toUpper)(n),"(").concat(l)),E=")",g=" ".concat(a.toUpperCase()," ")),0===p&&A.push(l);var T=i(v);A.push(g,w,h,w,T,C,E),f.push(A.filter(s.hasVal).join(""))}u&&f.push(" AS ".concat(Object(s.identifierToSql)(u)));var S=f.filter(s.hasVal).join("");return c?"(".concat(S,")"):S}function l(t){var r=t.args,e=t.type,n=r.field,a=r.cast_type,u=r.source,i=["".concat(Object(s.toUpper)(e),"(").concat(Object(s.toUpper)(n)),"FROM",Object(s.toUpper)(a),Object(o.a)(u)];return"".concat(i.filter(s.hasVal).join(" "),")")}function f(t){var r=t.expr,e=r.key,n=r.value,a=r.on,u=[Object(o.a)(e),"VALUE",Object(o.a)(n)];return a&&u.push("ON","NULL",Object(o.a)(a)),u.filter(s.hasVal).join(" ")}function p(t){var r=t.args,e=t.type,n=["input","path","outer","recursive","mode"].map((function(t){return function(t){if(!t)return"";var r=t.type,e=t.symbol,n=t.value;return[Object(s.toUpper)(r),e,Object(o.a)(n)].filter(s.hasVal).join(" ")}(r[t])})).filter(s.hasVal).join(", ");return"".concat(Object(s.toUpper)(e),"(").concat(n,")")}function b(t){var r=t.args,e=t.array_index,u=t.name,i=t.args_parentheses,c=t.parentheses,l=t.over,f=t.suffix,p=Object(a.a)(l),b=Object(o.a)(f),v=[Object(s.literalToSQL)(u.schema),u.name.map(s.literalToSQL).join(".")].filter(s.hasVal).join(".");if(!r)return[v,p].filter(s.hasVal).join(" ");var y=t.separator||", ";"TRIM"===Object(s.toUpper)(v)&&(y=" ");var d=[v];d.push(!1===i?" ":"(");var h=Object(o.a)(r);if(Array.isArray(y)){for(var m=h[0],w=1,L=h.length;w<L;++w)m=[m,h[w]].join(" ".concat(Object(o.a)(y[w-1])," "));d.push(m)}else d.push(h.join(y));return!1!==i&&d.push(")"),d.push(Object(n.a)(e)),d=[d.join(""),b].filter(s.hasVal).join(" "),[c?"(".concat(d,")"):d,p].filter(s.hasVal).join(" ")}function v(t){var r=t.as,e=t.name,n=t.args,a=[Object(s.literalToSQL)(e.schema),e.name.map(s.literalToSQL).join(".")].filter(s.hasVal).join(".");return["".concat(a,"(").concat(Object(o.a)(n).join(", "),")"),"AS",b(r)].join(" ")}function y(t){var r=t.args,e=t.expr,n=r.value,s=r.parentheses,a=n.map(o.a).join(", ");return[s?"(".concat(a,")"):a,"->",Object(o.a)(e)].join(" ")}},function(t,r,e){"use strict";e.d(r,"a",(function(){return f}));var n=e(1),o=e(2),s=e(8),a=e(15),u=e(3),i=e(0),c=e(11);function l(t){if(t&&t.position){var r=t.keyword,e=t.expr,o=[],s=Object(i.toUpper)(r);switch(s){case"VAR":o.push(e.map(n.d).join(", "));break;default:o.push(s,"string"==typeof e?Object(i.identifierToSql)(e):Object(n.a)(e))}return o.filter(i.hasVal).join(" ")}}function f(t){var r=t.as_struct_val,e=t.columns,f=t.collate,p=t.distinct,b=t.for,v=t.from,y=t.for_sys_time_as_of,d=void 0===y?{}:y,h=t.locking_read,m=t.groupby,w=t.having,L=t.into,O=void 0===L?{}:L,j=t.limit,C=t.options,g=t.orderby,E=t.parentheses_symbol,A=t.qualify,T=t.top,S=t.window,U=t.with,_=t.where,x=[Object(a.a)(U),"SELECT",Object(i.toUpper)(r)];Array.isArray(C)&&x.push(C.join(" ")),x.push(function(t){if(t){if("string"==typeof t)return t;var r=t.type,e=t.columns,o=[Object(i.toUpper)(r)];return e&&o.push("(".concat(e.map(n.a).join(", "),")")),o.filter(i.hasVal).join(" ")}}(p),Object(i.topToSQL)(T),Object(o.h)(e,v));var N=O.position,I="";N&&(I=Object(i.commonOptionConnector)("INTO",l,O)),"column"===N&&x.push(I),x.push(Object(i.commonOptionConnector)("FROM",u.c,v)),"from"===N&&x.push(I);var R=d||{},k=R.keyword,V=R.expr;x.push(Object(i.commonOptionConnector)(k,n.a,V)),x.push(Object(i.commonOptionConnector)("WHERE",n.a,_)),m&&(x.push(Object(i.connector)("GROUP BY",Object(n.b)(m.columns).join(", "))),x.push(Object(n.b)(m.modifiers).join(", "))),x.push(Object(i.commonOptionConnector)("HAVING",n.a,w)),x.push(Object(i.commonOptionConnector)("QUALIFY",n.a,A)),x.push(Object(i.commonOptionConnector)("WINDOW",n.a,S)),x.push(Object(n.c)(g,"order by")),x.push(Object(c.a)(f)),x.push(Object(s.a)(j)),x.push(Object(i.toUpper)(h)),"end"===N&&x.push(I),x.push(function(t){if(t){var r=t.expr,e=t.keyword,o=t.type,s=[Object(i.toUpper)(o),Object(i.toUpper)(e)];return r?"".concat(s.join(" "),"(").concat(Object(n.a)(r),")"):s.join(" ")}}(b));var M=x.filter(i.hasVal).join(" ");return E?"(".concat(M,")"):M}},function(t,r,e){"use strict";e.d(r,"a",(function(){return i}));var n=e(0),o=e(1);function s(t){return function(t){if(Array.isArray(t))return a(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,r){if(t){if("string"==typeof t)return a(t,r);var e={}.toString.call(t).slice(8,-1);return"Object"===e&&t.constructor&&(e=t.constructor.name),"Map"===e||"Set"===e?Array.from(t):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?a(t,r):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(t,r){(null==r||r>t.length)&&(r=t.length);for(var e=0,n=Array(r);e<r;e++)n[e]=t[e];return n}function u(t){return t?[Object(n.toUpper)(t.prefix),Object(o.a)(t.value),Object(n.toUpper)(t.suffix)]:[]}function i(t){return t?t.fetch?(e=(r=t).fetch,a=r.offset,[].concat(s(u(a)),s(u(e))).filter(n.hasVal).join(" ")):function(t){var r=t.seperator,e=t.value;return 1===e.length&&"offset"===r?Object(n.connector)("OFFSET",Object(o.a)(e[0])):Object(n.connector)("LIMIT",e.map(o.a).join("".concat("offset"===r?" ":"").concat(Object(n.toUpper)(r)," ")))}(t):"";var r,e,a}},function(t,r,e){"use strict";e.d(r,"a",(function(){return f})),e.d(r,"c",(function(){return p})),e.d(r,"b",(function(){return l}));var n=e(2),o=e(14),s=e(10),a=e(3),u=e(1),i=e(7),c=e(0);function l(t){if(!t)return"";var r=t.action,e=t.create_definitions,a=t.if_not_exists,u=t.keyword,i=t.if_exists,l=t.old_column,f=t.prefix,p=t.resource,b=t.symbol,v=t.suffix,y="",d=[];switch(p){case"column":d=[Object(n.c)(t)];break;case"index":d=Object(s.c)(t),y=t[p];break;case"table":case"schema":y=Object(c.identifierToSql)(t[p]);break;case"aggregate":case"function":case"domain":case"type":y=Object(c.identifierToSql)(t[p]);break;case"algorithm":case"lock":case"table-option":y=[b,Object(c.toUpper)(t[p])].filter(c.hasVal).join(" ");break;case"constraint":y=Object(c.identifierToSql)(t[p]),d=[Object(o.a)(e)];break;case"key":y=Object(c.identifierToSql)(t[p]);break;default:y=[b,t[p]].filter((function(t){return null!==t})).join(" ")}var h=[Object(c.toUpper)(r),Object(c.toUpper)(u),Object(c.toUpper)(a),Object(c.toUpper)(i),l&&Object(n.e)(l),Object(c.toUpper)(f),y&&y.trim(),d.filter(c.hasVal).join(" ")];return v&&h.push(Object(c.toUpper)(v.keyword),v.expr&&Object(n.e)(v.expr)),h.filter(c.hasVal).join(" ")}function f(t){var r=t.default&&[Object(c.toUpper)(t.default.keyword),Object(u.a)(t.default.value)].join(" ");return[Object(c.toUpper)(t.mode),t.name,Object(c.dataTypeToSQL)(t.type),r].filter(c.hasVal).join(" ")}function p(t){var r=t.keyword;switch(void 0===r?"table":r){case"aggregate":return function(t){var r=t.args,e=t.expr,n=t.keyword,o=t.name,s=t.type,a=r.expr,u=r.orderby;return[Object(c.toUpper)(s),Object(c.toUpper)(n),[[Object(c.identifierToSql)(o.schema),Object(c.identifierToSql)(o.name)].filter(c.hasVal).join("."),"(".concat(a.map(f).join(", ")).concat(u?[" ORDER","BY",u.map(f).join(", ")].join(" "):"",")")].filter(c.hasVal).join(""),l(e)].filter(c.hasVal).join(" ")}(t);case"table":return function(t){var r=t.type,e=t.table,n=t.if_exists,o=t.prefix,s=t.expr,i=void 0===s?[]:s,l=Object(c.toUpper)(r),f=Object(a.c)(e),p=i.map(u.a);return[l,"TABLE",Object(c.toUpper)(n),Object(c.literalToSQL)(o),f,p.join(", ")].filter(c.hasVal).join(" ")}(t);case"schema":return function(t){var r=t.expr,e=t.keyword,n=t.schema,o=t.type;return[Object(c.toUpper)(o),Object(c.toUpper)(e),Object(c.identifierToSql)(n),l(r)].filter(c.hasVal).join(" ")}(t);case"domain":case"type":return function(t){var r=t.expr,e=t.keyword,n=t.name,o=t.type;return[Object(c.toUpper)(o),Object(c.toUpper)(e),[Object(c.identifierToSql)(n.schema),Object(c.identifierToSql)(n.name)].filter(c.hasVal).join("."),l(r)].filter(c.hasVal).join(" ")}(t);case"function":return function(t){var r=t.args,e=t.expr,n=t.keyword,o=t.name,s=t.type;return[Object(c.toUpper)(s),Object(c.toUpper)(n),[[Object(c.identifierToSql)(o.schema),Object(c.identifierToSql)(o.name)].filter(c.hasVal).join("."),r&&"(".concat(r.expr?r.expr.map(f).join(", "):"",")")].filter(c.hasVal).join(""),l(e)].filter(c.hasVal).join(" ")}(t);case"view":return function(t){var r=t.type,e=t.columns,o=t.attributes,s=t.select,u=t.view,l=t.with,f=[Object(c.toUpper)(r),"VIEW",Object(a.b)(u)];return e&&f.push("(".concat(e.map(n.e).join(", "),")")),o&&f.push("WITH ".concat(o.map(c.toUpper).join(", "))),f.push("AS",Object(i.a)(s)),l&&f.push(Object(c.toUpper)(l)),f.filter(c.hasVal).join(" ")}(t)}}},function(t,r,e){"use strict";e.d(r,"a",(function(){return f})),e.d(r,"d",(function(){return u})),e.d(r,"b",(function(){return c})),e.d(r,"c",(function(){return l}));var n=e(0),o=e(1);function s(t){return function(t){if(Array.isArray(t))return a(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,r){if(t){if("string"==typeof t)return a(t,r);var e={}.toString.call(t).slice(8,-1);return"Object"===e&&t.constructor&&(e=t.constructor.name),"Map"===e||"Set"===e?Array.from(t):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?a(t,r):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(t,r){(null==r||r>t.length)&&(r=t.length);for(var e=0,n=Array(r);e<r;e++)n[e]=t[e];return n}function u(t){if(!t)return[];var r=t.keyword,e=t.type;return[r.toUpperCase(),Object(n.toUpper)(e)]}function i(t){if(t){var r=t.type,e=t.expr,o=t.symbol,a=r.toUpperCase(),i=[];switch(i.push(a),a){case"KEY_BLOCK_SIZE":o&&i.push(o),i.push(Object(n.literalToSQL)(e));break;case"BTREE":case"HASH":i.length=0,i.push.apply(i,s(u(t)));break;case"WITH PARSER":i.push(e);break;case"VISIBLE":case"INVISIBLE":break;case"COMMENT":i.shift(),i.push(Object(n.commentToSQL)(t));break;case"DATA_COMPRESSION":i.push(o,Object(n.toUpper)(e.value),Object(n.onPartitionsToSQL)(e.on));break;default:i.push(o,Object(n.literalToSQL)(e))}return i.filter(n.hasVal).join(" ")}}function c(t){return t?t.map(i):[]}function l(t){var r=t.constraint_type,e=t.index_type,a=t.index_options,i=void 0===a?[]:a,l=t.definition,f=t.on,p=t.with,b=[];if(b.push.apply(b,s(u(e))),l&&l.length){var v="CHECK"===Object(n.toUpper)(r)?"(".concat(Object(o.a)(l[0]),")"):"(".concat(l.map((function(t){return Object(o.a)(t)})).join(", "),")");b.push(v)}return b.push(c(i).join(" ")),p&&b.push("WITH (".concat(c(p).join(", "),")")),f&&b.push("ON [".concat(f,"]")),b}function f(t){var r=[],e=t.keyword,o=t.index;return r.push(Object(n.toUpper)(e)),r.push(o),r.push.apply(r,s(l(t))),r.filter(n.hasVal).join(" ")}},function(t,r,e){"use strict";e.d(r,"a",(function(){return s}));var n=e(1),o=e(0);function s(t){if(t){var r=t.keyword,e=t.collate,s=e.name,a=e.symbol,u=e.value,i=[Object(o.toUpper)(r)];return u||i.push(a),i.push(Object(o.literalToSQL)(s)),u&&i.push(a),i.push(Object(n.a)(u)),i.filter(o.hasVal).join(" ")}}},function(t,r,e){"use strict";e.d(r,"b",(function(){return p})),e.d(r,"a",(function(){return f}));var n=e(3),o=e(1),s=e(2),a=e(8),u=e(0),i=e(15);function c(t,r){var e="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!e){if(Array.isArray(t)||(e=function(t,r){if(t){if("string"==typeof t)return l(t,r);var e={}.toString.call(t).slice(8,-1);return"Object"===e&&t.constructor&&(e=t.constructor.name),"Map"===e||"Set"===e?Array.from(t):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?l(t,r):void 0}}(t))||r&&t&&"number"==typeof t.length){e&&(t=e);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,a=!0,u=!1;return{s:function(){e=e.call(t)},n:function(){var t=e.next();return a=t.done,t},e:function(t){u=!0,s=t},f:function(){try{a||null==e.return||e.return()}finally{if(u)throw s}}}}function l(t,r){(null==r||r>t.length)&&(r=t.length);for(var e=0,n=Array(r);e<r;e++)n[e]=t[e];return n}function f(t){if(!t||0===t.length)return"";var r,e=[],n=c(t);try{for(n.s();!(r=n.n()).done;){var a=r.value,i={},l=a.value;for(var f in a)"value"!==f&&"keyword"!==f&&(i[f]=a[f]);var p=[Object(s.e)(i)],b="";l&&(b=Object(o.a)(l),p.push("=",b)),e.push(p.filter(u.hasVal).join(" "))}}catch(t){n.e(t)}finally{n.f()}return e.join(", ")}function p(t){var r=t.from,e=t.table,s=t.set,c=t.where,l=t.orderby,p=t.with,b=t.limit,v=t.returning;return[Object(i.a)(p),"UPDATE",Object(n.c)(e),Object(u.commonOptionConnector)("SET",f,s),Object(u.commonOptionConnector)("FROM",n.c,r),Object(u.commonOptionConnector)("WHERE",o.a,c),Object(o.c)(l,"order by"),Object(a.a)(b),Object(u.returningToSQL)(v)].filter(u.hasVal).join(" ")}},function(t,r,e){"use strict";e.d(r,"a",(function(){return a}));var n=e(0),o=e(1),s=e(20);function a(t){if(t){var r=t.as_window_specification,e=t.expr,a=t.keyword,u=t.type,i=t.parentheses,c=Object(n.toUpper)(u);if("WINDOW"===c)return"OVER ".concat(Object(s.a)(r));if("ON UPDATE"===c){var l="".concat(Object(n.toUpper)(u)," ").concat(Object(n.toUpper)(a)),f=Object(o.a)(e)||[];return i&&(l="".concat(l,"(").concat(f.join(", "),")")),l}throw new Error("unknown over type")}}},function(t,r,e){"use strict";e.d(r,"b",(function(){return E})),e.d(r,"a",(function(){return h}));var n=e(9),o=e(1),s=e(10),a=e(2),u=e(4),i=e(19),c=e(6),l=e(3),f=e(12),p=e(5),b=e(0);function v(t){return function(t){if(Array.isArray(t))return d(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||y(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function y(t,r){if(t){if("string"==typeof t)return d(t,r);var e={}.toString.call(t).slice(8,-1);return"Object"===e&&t.constructor&&(e=t.constructor.name),"Map"===e||"Set"===e?Array.from(t):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?d(t,r):void 0}}function d(t,r){(null==r||r>t.length)&&(r=t.length);for(var e=0,n=Array(r);e<r;e++)n[e]=t[e];return n}function h(t){if(!t)return[