UNPKG

node-sql-parser

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