@supabase/lite 0.8.1-next.1 → 0.8.1-next.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LIMITATIONS.md +1 -1
- package/STATUS.md +1 -1
- package/dist/cli/index.js +117 -117
- package/dist/cli/lib.d.ts +3 -1
- package/dist/cli/lib.js +33 -33
- package/dist/{index-Bv2S5btu.d.ts → index-DKO3OQpz.d.ts} +2 -0
- package/dist/index.d.ts +63 -4
- package/dist/index.js +68 -68
- package/dist/vite/index.d.ts +8 -1
- package/package.json +3 -1
package/dist/cli/lib.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import'pgsql-deparser';import*as ie from'node:path';import ie__default from'node:path';import
|
|
1
|
+
import'pgsql-deparser';import*as ie from'node:path';import ie__default from'node:path';import as from'node:os';import St from'node:fs';import {createClient}from'@supabase/supabase-js';import {ensureVar,SqliteConnection,App,cloud,splitSqlStatements}from'@supabase/lite';import {createConnection}from'@supabase/lite/sqlite';import*as V from'node:fs/promises';import V__default from'node:fs/promises';import {createHash}from'node:crypto';import'jsonv-ts';import {parse}from'dotenv';import'node:url';import*as ro from'fs';import {statSync,stat,realpathSync,realpath,readdirSync,readdir}from'fs';import {resolve,posix,sep,isAbsolute,basename,dirname,normalize,relative}from'path';import {fileURLToPath}from'url';import {createRequire}from'module';import oc from'chokidar';try {
|
|
2
2
|
/**
|
|
3
3
|
* Adding this to avoid warnings from node:sqlite being experimental
|
|
4
4
|
*/
|
|
@@ -9,44 +9,44 @@ import'pgsql-deparser';import*as ie from'node:path';import ie__default from'node
|
|
|
9
9
|
};
|
|
10
10
|
} catch {}
|
|
11
11
|
|
|
12
|
-
var Qi=Object.create;var Xt=Object.defineProperty;var Zi=Object.getOwnPropertyDescriptor;var es=Object.getOwnPropertyNames;var ts=Object.getPrototypeOf,ns=Object.prototype.hasOwnProperty;var F=(t,e)=>()=>(t&&(e=t(t=0)),e);var Se=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),rs=(t,e)=>{for(var n in e)Xt(t,n,{get:e[n],enumerable:true});},is=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of es(e))!ns.call(t,i)&&i!==n&&Xt(t,i,{get:()=>e[i],enumerable:!(r=Zi(e,i))||r.enumerable});return t};var Pe=(t,e,n)=>(n=t!=null?Qi(ts(t)):{},is(Xt(n,"default",{value:t,enumerable:true}),t));var Fe=Se((tu,zt)=>{var Rt=process||{},nr=Rt.argv||[],Ct=Rt.env||{},us=!(Ct.NO_COLOR||nr.includes("--no-color"))&&(!!Ct.FORCE_COLOR||nr.includes("--color")||Rt.platform==="win32"||(Rt.stdout||{}).isTTY&&Ct.TERM!=="dumb"||!!Ct.CI),fs=(t,e,n=t)=>r=>{let i=""+r,s=i.indexOf(e,t.length);return ~s?t+ps(i,e,n,s)+e:t+i+e},ps=(t,e,n,r)=>{let i="",s=0;do i+=t.substring(s,r)+n,s=r+e.length,r=t.indexOf(e,s);while(~r);return i+t.substring(s)},rr=(t=us)=>{let e=t?fs:()=>String;return {isColorSupported:t,reset:e("\x1B[0m","\x1B[0m"),bold:e("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:e("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:e("\x1B[3m","\x1B[23m"),underline:e("\x1B[4m","\x1B[24m"),inverse:e("\x1B[7m","\x1B[27m"),hidden:e("\x1B[8m","\x1B[28m"),strikethrough:e("\x1B[9m","\x1B[29m"),black:e("\x1B[30m","\x1B[39m"),red:e("\x1B[31m","\x1B[39m"),green:e("\x1B[32m","\x1B[39m"),yellow:e("\x1B[33m","\x1B[39m"),blue:e("\x1B[34m","\x1B[39m"),magenta:e("\x1B[35m","\x1B[39m"),cyan:e("\x1B[36m","\x1B[39m"),white:e("\x1B[37m","\x1B[39m"),gray:e("\x1B[90m","\x1B[39m"),bgBlack:e("\x1B[40m","\x1B[49m"),bgRed:e("\x1B[41m","\x1B[49m"),bgGreen:e("\x1B[42m","\x1B[49m"),bgYellow:e("\x1B[43m","\x1B[49m"),bgBlue:e("\x1B[44m","\x1B[49m"),bgMagenta:e("\x1B[45m","\x1B[49m"),bgCyan:e("\x1B[46m","\x1B[49m"),bgWhite:e("\x1B[47m","\x1B[49m"),blackBright:e("\x1B[90m","\x1B[39m"),redBright:e("\x1B[91m","\x1B[39m"),greenBright:e("\x1B[92m","\x1B[39m"),yellowBright:e("\x1B[93m","\x1B[39m"),blueBright:e("\x1B[94m","\x1B[39m"),magentaBright:e("\x1B[95m","\x1B[39m"),cyanBright:e("\x1B[96m","\x1B[39m"),whiteBright:e("\x1B[97m","\x1B[39m"),bgBlackBright:e("\x1B[100m","\x1B[49m"),bgRedBright:e("\x1B[101m","\x1B[49m"),bgGreenBright:e("\x1B[102m","\x1B[49m"),bgYellowBright:e("\x1B[103m","\x1B[49m"),bgBlueBright:e("\x1B[104m","\x1B[49m"),bgMagentaBright:e("\x1B[105m","\x1B[49m"),bgCyanBright:e("\x1B[106m","\x1B[49m"),bgWhiteBright:e("\x1B[107m","\x1B[49m")}};zt.exports=rr();zt.exports.createColors=rr;});var Ke=Se((hp,Or)=>{var kr="[^\\\\/]",Yo="(?=.)",Nr="[^/]",hn="(?:\\/|$)",Lr="(?:^|\\/)",gn=`\\.{1,2}${hn}`,Qo="(?!\\.)",Zo=`(?!${Lr}${gn})`,ea=`(?!\\.{0,1}${hn})`,ta=`(?!${gn})`,na="[^.\\/]",ra=`${Nr}*?`,ia="/",Pr={DOT_LITERAL:"\\.",PLUS_LITERAL:"\\+",QMARK_LITERAL:"\\?",SLASH_LITERAL:"\\/",ONE_CHAR:Yo,QMARK:Nr,END_ANCHOR:hn,DOTS_SLASH:gn,NO_DOT:Qo,NO_DOTS:Zo,NO_DOT_SLASH:ea,NO_DOTS_SLASH:ta,QMARK_NO_DOT:na,STAR:ra,START_ANCHOR:Lr,SEP:ia},sa={...Pr,SLASH_LITERAL:"[\\\\/]",QMARK:kr,STAR:`${kr}*?`,DOTS_SLASH:"\\.{1,2}(?:[\\\\/]|$)",NO_DOT:"(?!\\.)",NO_DOTS:"(?!(?:^|[\\\\/])\\.{1,2}(?:[\\\\/]|$))",NO_DOT_SLASH:"(?!\\.{0,1}(?:[\\\\/]|$))",NO_DOTS_SLASH:"(?!\\.{1,2}(?:[\\\\/]|$))",QMARK_NO_DOT:"[^.\\\\/]",START_ANCHOR:"(?:^|[\\\\/])",END_ANCHOR:"(?:[\\\\/]|$)",SEP:"\\"},oa={__proto__:null,alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};Or.exports={DEFAULT_MAX_EXTGLOB_RECURSION:0,MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:oa,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{__proto__:null,"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,extglobChars(t){return {"!":{type:"negate",open:"(?:(?!(?:",close:`))${t.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(t){return t===true?sa:Pr}};});var Xe=Se(J=>{var{REGEX_BACKSLASH:aa,REGEX_REMOVE_BACKSLASH:la,REGEX_SPECIAL_CHARS:ca,REGEX_SPECIAL_CHARS_GLOBAL:ua}=Ke();J.isObject=t=>t!==null&&typeof t=="object"&&!Array.isArray(t);J.hasRegexChars=t=>ca.test(t);J.isRegexChar=t=>t.length===1&&J.hasRegexChars(t);J.escapeRegex=t=>t.replace(ua,"\\$1");J.toPosixSlashes=t=>t.replace(aa,"/");J.isWindows=()=>{if(typeof navigator<"u"&&navigator.platform){let t=navigator.platform.toLowerCase();return t==="win32"||t==="windows"}return typeof process<"u"&&process.platform?process.platform==="win32":false};J.removeBackslashes=t=>t.replace(la,e=>e==="\\"?"":e);J.escapeLast=(t,e,n)=>{let r=t.lastIndexOf(e,n);return r===-1?t:t[r-1]==="\\"?J.escapeLast(t,e,r-1):`${t.slice(0,r)}\\${t.slice(r)}`};J.removePrefix=(t,e={})=>{let n=t;return n.startsWith("./")&&(n=n.slice(2),e.prefix="./"),n};J.wrapOutput=(t,e={},n={})=>{let r=n.contains?"":"^",i=n.contains?"":"$",s=`${r}(?:${t})${i}`;return e.negated===true&&(s=`(?:^(?!${s}).*$)`),s};J.basename=(t,{windows:e}={})=>{let n=t.split(e?/[\\/]/:"/"),r=n[n.length-1];return r===""?n[n.length-2]:r};});var Mr=Se((yp,Hr)=>{var Fr=Xe(),{CHAR_ASTERISK:yn,CHAR_AT:fa,CHAR_BACKWARD_SLASH:We,CHAR_COMMA:pa,CHAR_DOT:bn,CHAR_EXCLAMATION_MARK:wn,CHAR_FORWARD_SLASH:Br,CHAR_LEFT_CURLY_BRACE:Sn,CHAR_LEFT_PARENTHESES:xn,CHAR_LEFT_SQUARE_BRACKET:ma,CHAR_PLUS:da,CHAR_QUESTION_MARK:Ir,CHAR_RIGHT_CURLY_BRACE:ha,CHAR_RIGHT_PARENTHESES:Dr,CHAR_RIGHT_SQUARE_BRACKET:ga}=Ke(),jr=t=>t===Br||t===We,Ur=t=>{t.isPrefix!==true&&(t.depth=t.isGlobstar?1/0:1);},ya=(t,e)=>{let n=e||{},r=t.length-1,i=n.parts===true||n.scanToEnd===true,s=[],o=[],a=[],l=t,c=-1,u=0,f=0,h=false,y=false,g=false,E=false,A=false,q=false,x=false,H=false,X=false,O=false,$=0,k,T,C={value:"",depth:0,isGlob:false},m=()=>c>=r,W=()=>l.charCodeAt(c+1),S=()=>(k=T,l.charCodeAt(++c));for(;c<r;){T=S();let P;if(T===We){x=C.backslashes=true,T=S(),T===Sn&&(q=true);continue}if(q===true||T===Sn){for($++;m()!==true&&(T=S());){if(T===We){x=C.backslashes=true,S();continue}if(T===Sn){$++;continue}if(q!==true&&T===bn&&(T=S())===bn){if(h=C.isBrace=true,g=C.isGlob=true,O=true,i===true)continue;break}if(q!==true&&T===pa){if(h=C.isBrace=true,g=C.isGlob=true,O=true,i===true)continue;break}if(T===ha&&($--,$===0)){q=false,h=C.isBrace=true,O=true;break}}if(i===true)continue;break}if(T===Br){if(s.push(c),o.push(C),C={value:"",depth:0,isGlob:false},O===true)continue;if(k===bn&&c===u+1){u+=2;continue}f=c+1;continue}if(n.noext!==true&&(T===da||T===fa||T===yn||T===Ir||T===wn)===true&&W()===xn){if(g=C.isGlob=true,E=C.isExtglob=true,O=true,T===wn&&c===u&&(X=true),i===true){for(;m()!==true&&(T=S());){if(T===We){x=C.backslashes=true,T=S();continue}if(T===Dr){g=C.isGlob=true,O=true;break}}continue}break}if(T===yn){if(k===yn&&(A=C.isGlobstar=true),g=C.isGlob=true,O=true,i===true)continue;break}if(T===Ir){if(g=C.isGlob=true,O=true,i===true)continue;break}if(T===ma){for(;m()!==true&&(P=S());){if(P===We){x=C.backslashes=true,S();continue}if(P===ga){y=C.isBracket=true,g=C.isGlob=true,O=true;break}}if(i===true)continue;break}if(n.nonegate!==true&&T===wn&&c===u){H=C.negated=true,u++;continue}if(n.noparen!==true&&T===xn){if(g=C.isGlob=true,i===true){for(;m()!==true&&(T=S());){if(T===xn){x=C.backslashes=true,T=S();continue}if(T===Dr){O=true;break}}continue}break}if(g===true){if(O=true,i===true)continue;break}}n.noext===true&&(E=false,g=false);let L=l,d="",p="";u>0&&(d=l.slice(0,u),l=l.slice(u),f-=u),L&&g===true&&f>0?(L=l.slice(0,f),p=l.slice(f)):g===true?(L="",p=l):L=l,L&&L!==""&&L!=="/"&&L!==l&&jr(L.charCodeAt(L.length-1))&&(L=L.slice(0,-1)),n.unescape===true&&(p&&(p=Fr.removeBackslashes(p)),L&&x===true&&(L=Fr.removeBackslashes(L)));let Z={prefix:d,input:t,start:u,base:L,glob:p,isBrace:h,isBracket:y,isGlob:g,isExtglob:E,isGlobstar:A,negated:H,negatedExtglob:X};if(n.tokens===true&&(Z.maxDepth=0,jr(T)||o.push(C),Z.tokens=o),n.parts===true||n.tokens===true){let P;for(let U=0;U<s.length;U++){let ue=P?P+1:u,ee=s[U],he=t.slice(ue,ee);n.tokens&&(U===0&&u!==0?(o[U].isPrefix=true,o[U].value=d):o[U].value=he,Ur(o[U]),Z.maxDepth+=o[U].depth),(U!==0||he!=="")&&a.push(he),P=ee;}if(P&&P+1<t.length){let U=t.slice(P+1);a.push(U),n.tokens&&(o[o.length-1].value=U,Ur(o[o.length-1]),Z.maxDepth+=o[o.length-1].depth);}Z.slashes=s,Z.parts=a;}return Z};Hr.exports=ya;});var Xr=Se((bp,Kr)=>{var ze=Ke(),Q=Xe(),{MAX_LENGTH:Bt,POSIX_REGEX_SOURCE:ba,REGEX_NON_SPECIAL_CHARS:wa,REGEX_SPECIAL_CHARS_BACKREF:Sa,REPLACEMENTS:qr}=ze,xa=(t,e)=>{if(typeof e.expandRange=="function")return e.expandRange(...t,e);t.sort();let n=`[${t.join("-")}]`;try{new RegExp(n);}catch{return t.map(i=>Q.escapeRegex(i)).join("..")}return n},ke=(t,e)=>`Missing ${t}: "${e}" - use "\\\\${e}" to match literal characters`,Vr=t=>{let e=[],n=0,r=0,i=0,s="",o=false;for(let a of t){if(o===true){s+=a,o=false;continue}if(a==="\\"){s+=a,o=true;continue}if(a==='"'){i=i===1?0:1,s+=a;continue}if(i===0){if(a==="[")n++;else if(a==="]"&&n>0)n--;else if(n===0){if(a==="(")r++;else if(a===")"&&r>0)r--;else if(a==="|"&&r===0){e.push(s),s="";continue}}}s+=a;}return e.push(s),e},Ea=t=>{let e=false;for(let n of t){if(e===true){e=false;continue}if(n==="\\"){e=true;continue}if(/[?*+@!()[\]{}]/.test(n))return false}return true},Gr=t=>{let e=t.trim(),n=true;for(;n===true;)n=false,/^@\([^\\()[\]{}|]+\)$/.test(e)&&(e=e.slice(2,-1),n=true);if(Ea(e))return e.replace(/\\(.)/g,"$1")},Ta=t=>{let e=t.map(Gr).filter(Boolean);for(let n=0;n<e.length;n++)for(let r=n+1;r<e.length;r++){let i=e[n],s=e[r],o=i[0];if(!(!o||i!==o.repeat(i.length)||s!==o.repeat(s.length))&&(i===s||i.startsWith(s)||s.startsWith(i)))return true}return false},En=(t,e=true)=>{if(t[0]!=="+"&&t[0]!=="*"||t[1]!=="(")return;let n=0,r=0,i=0,s=false;for(let o=1;o<t.length;o++){let a=t[o];if(s===true){s=false;continue}if(a==="\\"){s=true;continue}if(a==='"'){i=i===1?0:1;continue}if(i!==1){if(a==="["){n++;continue}if(a==="]"&&n>0){n--;continue}if(!(n>0)){if(a==="("){r++;continue}if(a===")"&&(r--,r===0))return e===true&&o!==t.length-1?void 0:{type:t[0],body:t.slice(2,o),end:o}}}}},Aa=t=>{let e=0,n=[];for(;e<t.length;){let i=En(t.slice(e),false);if(!i||i.type!=="*")return;let s=Vr(i.body).map(a=>a.trim());if(s.length!==1)return;let o=Gr(s[0]);if(!o||o.length!==1)return;n.push(o),e+=i.end+1;}return n.length<1?void 0:`${n.length===1?Q.escapeRegex(n[0]):`[${n.map(i=>Q.escapeRegex(i)).join("")}]`}*`},_a=t=>{let e=0,n=t.trim(),r=En(n);for(;r;)e++,n=r.body.trim(),r=En(n);return e},Ca=(t,e)=>{if(e.maxExtglobRecursion===false)return {risky:false};let n=typeof e.maxExtglobRecursion=="number"?e.maxExtglobRecursion:ze.DEFAULT_MAX_EXTGLOB_RECURSION,r=Vr(t).map(i=>i.trim());if(r.length>1&&(r.some(i=>i==="")||r.some(i=>/^[*?]+$/.test(i))||Ta(r)))return {risky:true};for(let i of r){let s=Aa(i);if(s)return {risky:true,safeOutput:s};if(_a(i)>n)return {risky:true}}return {risky:false}},Tn=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");t=qr[t]||t;let n={...e},r=typeof n.maxLength=="number"?Math.min(Bt,n.maxLength):Bt,i=t.length;if(i>r)throw new SyntaxError(`Input length: ${i}, exceeds maximum allowed length: ${r}`);let s={type:"bos",value:"",output:n.prepend||""},o=[s],a=n.capture?"":"?:",l=ze.globChars(n.windows),c=ze.extglobChars(l),{DOT_LITERAL:u,PLUS_LITERAL:f,SLASH_LITERAL:h,ONE_CHAR:y,DOTS_SLASH:g,NO_DOT:E,NO_DOT_SLASH:A,NO_DOTS_SLASH:q,QMARK:x,QMARK_NO_DOT:H,STAR:X,START_ANCHOR:O}=l,$=w=>`(${a}(?:(?!${O}${w.dot?g:u}).)*?)`,k=n.dot?"":E,T=n.dot?x:H,C=n.bash===true?$(n):X;n.capture&&(C=`(${C})`),typeof n.noext=="boolean"&&(n.noextglob=n.noext);let m={input:t,index:-1,start:0,dot:n.dot===true,consumed:"",output:"",prefix:"",backtrack:false,negated:false,brackets:0,braces:0,parens:0,quotes:0,globstar:false,tokens:o};t=Q.removePrefix(t,m),i=t.length;let W=[],S=[],L=[],d=s,p,Z=()=>m.index===i-1,P=m.peek=(w=1)=>t[m.index+w],U=m.advance=()=>t[++m.index]||"",ue=()=>t.slice(m.index+1),ee=(w="",j=0)=>{m.consumed+=w,m.index+=j;},he=w=>{m.output+=w.output!=null?w.output:w.value,ee(w.value);},Ji=()=>{let w=1;for(;P()==="!"&&(P(2)!=="("||P(3)==="?");)U(),m.start++,w++;return w%2===0?false:(m.negated=true,m.start++,true)},wt=w=>{m[w]++,L.push(w);},ge=w=>{m[w]--,L.pop();},R=w=>{if(d.type==="globstar"){let j=m.braces>0&&(w.type==="comma"||w.type==="brace"),b=w.extglob===true||W.length&&(w.type==="pipe"||w.type==="paren");w.type!=="slash"&&w.type!=="paren"&&!j&&!b&&(m.output=m.output.slice(0,-d.output.length),d.type="star",d.value="*",d.output=C,m.output+=d.output);}if(W.length&&w.type!=="paren"&&(W[W.length-1].inner+=w.value),(w.value||w.output)&&he(w),d&&d.type==="text"&&w.type==="text"){d.output=(d.output||d.value)+w.value,d.value+=w.value;return}w.prev=d,o.push(w),d=w;},St=(w,j)=>{let b={...c[j],conditions:1,inner:""};b.prev=d,b.parens=m.parens,b.output=m.output,b.startIndex=m.index,b.tokensIndex=o.length;let v=(n.capture?"(":"")+b.open;wt("parens"),R({type:w,value:j,output:m.output?"":y}),R({type:"paren",extglob:true,value:U(),output:v}),W.push(b);},Yi=w=>{let j=t.slice(w.startIndex,m.index+1),b=t.slice(w.startIndex+2,m.index),v=Ca(b,n);if((w.type==="plus"||w.type==="star")&&v.risky){let I=v.safeOutput?(w.output?"":y)+(n.capture?`(${v.safeOutput})`:v.safeOutput):void 0,ae=o[w.tokensIndex];ae.type="text",ae.value=j,ae.output=I||Q.escapeRegex(j);for(let le=w.tokensIndex+1;le<o.length;le++)o[le].value="",o[le].output="",delete o[le].suffix;m.output=w.output+ae.output,m.backtrack=true,R({type:"paren",extglob:true,value:p,output:""}),ge("parens");return}let D=w.close+(n.capture?")":""),G;if(w.type==="negate"){let I=C;if(w.inner&&w.inner.length>1&&w.inner.includes("/")&&(I=$(n)),(I!==C||Z()||/^\)+$/.test(ue()))&&(D=w.close=`)$))${I}`),w.inner.includes("*")&&(G=ue())&&/^\.[^\\/.]+$/.test(G)){let ae=Tn(G,{...e,fastpaths:false}).output;D=w.close=`)${ae})${I})`;}w.prev.type==="bos"&&(m.negatedExtglob=true);}R({type:"paren",extglob:true,value:p,output:D}),ge("parens");};if(n.fastpaths!==false&&!/(^[*!]|[/()[\]{}"])/.test(t)){let w=false,j=t.replace(Sa,(b,v,D,G,I,ae)=>G==="\\"?(w=true,b):G==="?"?v?v+G+(I?x.repeat(I.length):""):ae===0?T+(I?x.repeat(I.length):""):x.repeat(D.length):G==="."?u.repeat(D.length):G==="*"?v?v+G+(I?C:""):C:v?b:`\\${b}`);return w===true&&(n.unescape===true?j=j.replace(/\\/g,""):j=j.replace(/\\+/g,b=>b.length%2===0?"\\\\":b?"\\":"")),j===t&&n.contains===true?(m.output=t,m):(m.output=Q.wrapOutput(j,m,e),m)}for(;!Z();){if(p=U(),p==="\0")continue;if(p==="\\"){let b=P();if(b==="/"&&n.bash!==true||b==="."||b===";")continue;if(!b){p+="\\",R({type:"text",value:p});continue}let v=/^\\+/.exec(ue()),D=0;if(v&&v[0].length>2&&(D=v[0].length,m.index+=D,D%2!==0&&(p+="\\")),n.unescape===true?p=U():p+=U(),m.brackets===0){R({type:"text",value:p});continue}}if(m.brackets>0&&(p!=="]"||d.value==="["||d.value==="[^")){if(n.posix!==false&&p===":"){let b=d.value.slice(1);if(b.includes("[")&&(d.posix=true,b.includes(":"))){let v=d.value.lastIndexOf("["),D=d.value.slice(0,v),G=d.value.slice(v+2),I=ba[G];if(I){d.value=D+I,m.backtrack=true,U(),!s.output&&o.indexOf(d)===1&&(s.output=y);continue}}}(p==="["&&P()!==":"||p==="-"&&P()==="]")&&(p=`\\${p}`),p==="]"&&(d.value==="["||d.value==="[^")&&(p=`\\${p}`),n.posix===true&&p==="!"&&d.value==="["&&(p="^"),d.value+=p,he({value:p});continue}if(m.quotes===1&&p!=='"'){p=Q.escapeRegex(p),d.value+=p,he({value:p});continue}if(p==='"'){m.quotes=m.quotes===1?0:1,n.keepQuotes===true&&R({type:"text",value:p});continue}if(p==="("){wt("parens"),R({type:"paren",value:p});continue}if(p===")"){if(m.parens===0&&n.strictBrackets===true)throw new SyntaxError(ke("opening","("));let b=W[W.length-1];if(b&&m.parens===b.parens+1){Yi(W.pop());continue}R({type:"paren",value:p,output:m.parens?")":"\\)"}),ge("parens");continue}if(p==="["){if(n.nobracket===true||!ue().includes("]")){if(n.nobracket!==true&&n.strictBrackets===true)throw new SyntaxError(ke("closing","]"));p=`\\${p}`;}else wt("brackets");R({type:"bracket",value:p});continue}if(p==="]"){if(n.nobracket===true||d&&d.type==="bracket"&&d.value.length===1){R({type:"text",value:p,output:`\\${p}`});continue}if(m.brackets===0){if(n.strictBrackets===true)throw new SyntaxError(ke("opening","["));R({type:"text",value:p,output:`\\${p}`});continue}ge("brackets");let b=d.value.slice(1);if(d.posix!==true&&b[0]==="^"&&!b.includes("/")&&(p=`/${p}`),d.value+=p,he({value:p}),n.literalBrackets===false||Q.hasRegexChars(b))continue;let v=Q.escapeRegex(d.value);if(m.output=m.output.slice(0,-d.value.length),n.literalBrackets===true){m.output+=v,d.value=v;continue}d.value=`(${a}${v}|${d.value})`,m.output+=d.value;continue}if(p==="{"&&n.nobrace!==true){wt("braces");let b={type:"brace",value:p,output:"(",outputIndex:m.output.length,tokensIndex:m.tokens.length};S.push(b),R(b);continue}if(p==="}"){let b=S[S.length-1];if(n.nobrace===true||!b){R({type:"text",value:p,output:p});continue}let v=")";if(b.dots===true){let D=o.slice(),G=[];for(let I=D.length-1;I>=0&&(o.pop(),D[I].type!=="brace");I--)D[I].type!=="dots"&&G.unshift(D[I].value);v=xa(G,n),m.backtrack=true;}if(b.comma!==true&&b.dots!==true){let D=m.output.slice(0,b.outputIndex),G=m.tokens.slice(b.tokensIndex);b.value=b.output="\\{",p=v="\\}",m.output=D;for(let I of G)m.output+=I.output||I.value;}R({type:"brace",value:p,output:v}),ge("braces"),S.pop();continue}if(p==="|"){W.length>0&&W[W.length-1].conditions++,R({type:"text",value:p});continue}if(p===","){let b=p,v=S[S.length-1];v&&L[L.length-1]==="braces"&&(v.comma=true,b="|"),R({type:"comma",value:p,output:b});continue}if(p==="/"){if(d.type==="dot"&&m.index===m.start+1){m.start=m.index+1,m.consumed="",m.output="",o.pop(),d=s;continue}R({type:"slash",value:p,output:h});continue}if(p==="."){if(m.braces>0&&d.type==="dot"){d.value==="."&&(d.output=u);let b=S[S.length-1];d.type="dots",d.output+=p,d.value+=p,b.dots=true;continue}if(m.braces+m.parens===0&&d.type!=="bos"&&d.type!=="slash"){R({type:"text",value:p,output:u});continue}R({type:"dot",value:p,output:u});continue}if(p==="?"){if(!(d&&d.value==="(")&&n.noextglob!==true&&P()==="("&&P(2)!=="?"){St("qmark",p);continue}if(d&&d.type==="paren"){let v=P(),D=p;(d.value==="("&&!/[!=<:]/.test(v)||v==="<"&&!/<([!=]|\w+>)/.test(ue()))&&(D=`\\${p}`),R({type:"text",value:p,output:D});continue}if(n.dot!==true&&(d.type==="slash"||d.type==="bos")){R({type:"qmark",value:p,output:H});continue}R({type:"qmark",value:p,output:x});continue}if(p==="!"){if(n.noextglob!==true&&P()==="("&&(P(2)!=="?"||!/[!=<:]/.test(P(3)))){St("negate",p);continue}if(n.nonegate!==true&&m.index===0){Ji();continue}}if(p==="+"){if(n.noextglob!==true&&P()==="("&&P(2)!=="?"){St("plus",p);continue}if(d&&d.value==="("||n.regex===false){R({type:"plus",value:p,output:f});continue}if(d&&(d.type==="bracket"||d.type==="paren"||d.type==="brace")||m.parens>0){R({type:"plus",value:p});continue}R({type:"plus",value:f});continue}if(p==="@"){if(n.noextglob!==true&&P()==="("&&P(2)!=="?"){R({type:"at",extglob:true,value:p,output:""});continue}R({type:"text",value:p});continue}if(p!=="*"){(p==="$"||p==="^")&&(p=`\\${p}`);let b=wa.exec(ue());b&&(p+=b[0],m.index+=b[0].length),R({type:"text",value:p});continue}if(d&&(d.type==="globstar"||d.star===true)){d.type="star",d.star=true,d.value+=p,d.output=C,m.backtrack=true,m.globstar=true,ee(p);continue}let w=ue();if(n.noextglob!==true&&/^\([^?]/.test(w)){St("star",p);continue}if(d.type==="star"){if(n.noglobstar===true){ee(p);continue}let b=d.prev,v=b.prev,D=b.type==="slash"||b.type==="bos",G=v&&(v.type==="star"||v.type==="globstar");if(n.bash===true&&(!D||w[0]&&w[0]!=="/")){R({type:"star",value:p,output:""});continue}let I=m.braces>0&&(b.type==="comma"||b.type==="brace"),ae=W.length&&(b.type==="pipe"||b.type==="paren");if(!D&&b.type!=="paren"&&!I&&!ae){R({type:"star",value:p,output:""});continue}for(;w.slice(0,3)==="/**";){let le=t[m.index+4];if(le&&le!=="/")break;w=w.slice(3),ee("/**",3);}if(b.type==="bos"&&Z()){d.type="globstar",d.value+=p,d.output=$(n),m.output=d.output,m.globstar=true,ee(p);continue}if(b.type==="slash"&&b.prev.type!=="bos"&&!G&&Z()){m.output=m.output.slice(0,-(b.output+d.output).length),b.output=`(?:${b.output}`,d.type="globstar",d.output=$(n)+(n.strictSlashes?")":"|$)"),d.value+=p,m.globstar=true,m.output+=b.output+d.output,ee(p);continue}if(b.type==="slash"&&b.prev.type!=="bos"&&w[0]==="/"){let le=w[1]!==void 0?"|$":"";m.output=m.output.slice(0,-(b.output+d.output).length),b.output=`(?:${b.output}`,d.type="globstar",d.output=`${$(n)}${h}|${h}${le})`,d.value+=p,m.output+=b.output+d.output,m.globstar=true,ee(p+U()),R({type:"slash",value:"/",output:""});continue}if(b.type==="bos"&&w[0]==="/"){d.type="globstar",d.value+=p,d.output=`(?:^|${h}|${$(n)}${h})`,m.output=d.output,m.globstar=true,ee(p+U()),R({type:"slash",value:"/",output:""});continue}m.output=m.output.slice(0,-d.output.length),d.type="globstar",d.output=$(n),d.value+=p,m.output+=d.output,m.globstar=true,ee(p);continue}let j={type:"star",value:p,output:C};if(n.bash===true){j.output=".*?",(d.type==="bos"||d.type==="slash")&&(j.output=k+j.output),R(j);continue}if(d&&(d.type==="bracket"||d.type==="paren")&&n.regex===true){j.output=p,R(j);continue}(m.index===m.start||d.type==="slash"||d.type==="dot")&&(d.type==="dot"?(m.output+=A,d.output+=A):n.dot===true?(m.output+=q,d.output+=q):(m.output+=k,d.output+=k),P()!=="*"&&(m.output+=y,d.output+=y)),R(j);}for(;m.brackets>0;){if(n.strictBrackets===true)throw new SyntaxError(ke("closing","]"));m.output=Q.escapeLast(m.output,"["),ge("brackets");}for(;m.parens>0;){if(n.strictBrackets===true)throw new SyntaxError(ke("closing",")"));m.output=Q.escapeLast(m.output,"("),ge("parens");}for(;m.braces>0;){if(n.strictBrackets===true)throw new SyntaxError(ke("closing","}"));m.output=Q.escapeLast(m.output,"{"),ge("braces");}if(n.strictSlashes!==true&&(d.type==="star"||d.type==="bracket")&&R({type:"maybe_slash",value:"",output:`${h}?`}),m.backtrack===true){m.output="";for(let w of m.tokens)m.output+=w.output!=null?w.output:w.value,w.suffix&&(m.output+=w.suffix);}return m};Tn.fastpaths=(t,e)=>{let n={...e},r=typeof n.maxLength=="number"?Math.min(Bt,n.maxLength):Bt,i=t.length;if(i>r)throw new SyntaxError(`Input length: ${i}, exceeds maximum allowed length: ${r}`);t=qr[t]||t;let{DOT_LITERAL:s,SLASH_LITERAL:o,ONE_CHAR:a,DOTS_SLASH:l,NO_DOT:c,NO_DOTS:u,NO_DOTS_SLASH:f,STAR:h,START_ANCHOR:y}=ze.globChars(n.windows),g=n.dot?u:c,E=n.dot?f:c,A=n.capture?"":"?:",q={negated:false,prefix:""},x=n.bash===true?".*?":h;n.capture&&(x=`(${x})`);let H=k=>k.noglobstar===true?x:`(${A}(?:(?!${y}${k.dot?l:s}).)*?)`,X=k=>{switch(k){case "*":return `${g}${a}${x}`;case ".*":return `${s}${a}${x}`;case "*.*":return `${g}${x}${s}${a}${x}`;case "*/*":return `${g}${x}${o}${a}${E}${x}`;case "**":return g+H(n);case "**/*":return `(?:${g}${H(n)}${o})?${E}${a}${x}`;case "**/*.*":return `(?:${g}${H(n)}${o})?${E}${x}${s}${a}${x}`;case "**/.*":return `(?:${g}${H(n)}${o})?${s}${a}${x}`;default:{let T=/^(.*?)\.(\w+)$/.exec(k);if(!T)return;let C=X(T[1]);return C?C+s+T[2]:void 0}}},O=Q.removePrefix(t,q),$=X(O);return $&&n.strictSlashes!==true&&($+=`${o}?`),$};Kr.exports=Tn;});var Jr=Se((wp,zr)=>{var Ra=Mr(),An=Xr(),Wr=Xe(),va=Ke(),$a=t=>t&&typeof t=="object"&&!Array.isArray(t),M=(t,e,n=false)=>{if(Array.isArray(t)){let u=t.map(h=>M(h,e,n));return h=>{for(let y of u){let g=y(h);if(g)return g}return false}}let r=$a(t)&&t.tokens&&t.input;if(t===""||typeof t!="string"&&!r)throw new TypeError("Expected pattern to be a non-empty string");let i=e||{},s=i.windows,o=r?M.compileRe(t,e):M.makeRe(t,e,false,true),a=o.state;delete o.state;let l=()=>false;if(i.ignore){let u={...e,ignore:null,onMatch:null,onResult:null};l=M(i.ignore,u,n);}let c=(u,f=false)=>{let{isMatch:h,match:y,output:g}=M.test(u,o,e,{glob:t,posix:s}),E={glob:t,state:a,regex:o,posix:s,input:u,output:g,match:y,isMatch:h};return typeof i.onResult=="function"&&i.onResult(E),h===false?(E.isMatch=false,f?E:false):l(u)?(typeof i.onIgnore=="function"&&i.onIgnore(E),E.isMatch=false,f?E:false):(typeof i.onMatch=="function"&&i.onMatch(E),f?E:true)};return n&&(c.state=a),c};M.test=(t,e,n,{glob:r,posix:i}={})=>{if(typeof t!="string")throw new TypeError("Expected input to be a string");if(t==="")return {isMatch:false,output:""};let s=n||{},o=s.format||(i?Wr.toPosixSlashes:null),a=t===r,l=a&&o?o(t):t;return a===false&&(l=o?o(t):t,a=l===r),(a===false||s.capture===true)&&(s.matchBase===true||s.basename===true?a=M.matchBase(t,e,n,i):a=e.exec(l)),{isMatch:!!a,match:a,output:l}};M.matchBase=(t,e,n)=>(e instanceof RegExp?e:M.makeRe(e,n)).test(Wr.basename(t));M.isMatch=(t,e,n)=>M(e,n)(t);M.parse=(t,e)=>Array.isArray(t)?t.map(n=>M.parse(n,e)):An(t,{...e,fastpaths:false});M.scan=(t,e)=>Ra(t,e);M.compileRe=(t,e,n=false,r=false)=>{if(n===true)return t.output;let i=e||{},s=i.contains?"":"^",o=i.contains?"":"$",a=`${s}(?:${t.output})${o}`;t&&t.negated===true&&(a=`^(?!${a}).*$`);let l=M.toRegex(a,e);return r===true&&(l.state=t),l};M.makeRe=(t,e={},n=false,r=false)=>{if(!t||typeof t!="string")throw new TypeError("Expected a non-empty string");let i={negated:false,fastpaths:true};return e.fastpaths!==false&&(t[0]==="."||t[0]==="*")&&(i.output=An.fastpaths(t,e)),i.output||(i=An(t,e)),M.compileRe(i,e,n,r)};M.toRegex=(t,e)=>{try{let n=e||{};return new RegExp(t,n.flags||(n.nocase?"i":""))}catch(n){if(e&&e.debug===true)throw n;return /$^/}};M.constants=va;zr.exports=M;});var ei=Se((Sp,Zr)=>{var Yr=Jr(),ka=Xe();function Qr(t,e,n=false){return e&&(e.windows===null||e.windows===void 0)&&(e={...e,windows:ka.isWindows()}),Yr(t,e,n)}Object.assign(Qr,Yr);Zr.exports=Qr;});function tt(t){if("String"in t)return t.String.sval}function me(t){return t.map(tt).filter(e=>e!=null)}function Si(t){return Object.keys(t)[0]}function xi(t){if("A_Const"in t){if(t.A_Const.ival)return t.A_Const.ival.ival;if(t.A_Const.fval)return t.A_Const.fval.fval;if(t.A_Const.sval)return t.A_Const.sval.sval;if(t.A_Const.boolval)return t.A_Const.boolval.boolval;if(t.A_Const.isnull)return null}}var Mt=F(()=>{});function Ei(t){let e=t.toLowerCase();return ["serial","serial4","bigserial","serial8","smallserial","serial2"].includes(e)}function Ti(t){let e=t.toLowerCase();return ["varchar","character varying","char","character","bpchar"].includes(e)}function Ai(t){let e=t.toLowerCase();return ["numeric","decimal"].includes(e)}var Nn,qt,Cl,Ln=F(()=>{Mt();Nn=class extends Error{},qt=class extends Nn{constructor(n,r){super(r??`Unsupported node type: ${Si(n)}`);this.node=n;}};Cl={CreateEnumStmt:{react:"ignore"},CreateDomainStmt:{react:"warn"},CreateSeqStmt:{react:"ignore"},AlterSeqStmt:{react:"ignore"},CreateSchemaStmt:{react:"warn"},CreatePolicyStmt:{react:"ignore"},AlterPolicyStmt:{react:"ignore"},PartitionElem:{react:"error"},PartitionCmd:{react:"error"},VariableSetStmt:{react:"ignore"},CompositeTypeStmt:{react:"error"},AlterEnumStmt:{react:"error"},AlterObjectSchemaStmt:{react:"error"},AlterOwnerStmt:{react:"error"},AlterTypeStmt:{react:"error"},AlterFunctionStmt:{react:"error"},AlterDefaultPrivilegesStmt:{react:"error"},GrantStmt:{react:"error"},GrantRoleStmt:{react:"error"},CopyStmt:{react:"error"},CreateCastStmt:{react:"error"},AlterOpFamilyStmt:{react:"error"},AlterOperatorStmt:{react:"error"},TruncateStmt:{react:"error"},A_Indirection:{react:"error"},XmlExpr:{react:"error"},XmlSerialize:{react:"error"},RangeTableSample:{react:"error"},GroupingSet:{react:"error"}},new Map(Object.entries(Cl));});var ne,Vt,_i=F(()=>{Mt();Ln();ne=class extends qt{constructor(e,n){super(e,`Unsupported expression: ${n}`);}},Vt=class{deparse(e){if("A_Const"in e){let i=e.A_Const;if(i.boolval!==void 0)return i.boolval.boolval?{}:{$always:false}}let n=Object.keys(e)[0],r=this[n];if(!r)throw new ne({[n]:e},`Unsupported expression: ${n}`);return r.call(this,e[n])}deparseValue(e){if("A_Const"in e)return this.A_Const(e.A_Const);if("ColumnRef"in e)return this.ColumnRef(e.ColumnRef);if("FuncCall"in e)return this.FuncCall(e.FuncCall);if("SubLink"in e)return this.SubLink(e.SubLink);if("TypeCast"in e)return this.TypeCast(e.TypeCast);if("A_Expr"in e){let r=this.isJwtAccessor(e.A_Expr);return r||this.A_Expr(e.A_Expr)}if("BoolExpr"in e)return this.BoolExpr(e.BoolExpr);let n=Object.keys(e)[0];throw new ne({[n]:e},`deparseValue: ${n}`)}A_Expr(e){if(e.kind==="AEXPR_OP"){let n=e.name?.[0],r=n?tt(n):void 0;if(!r)throw new ne({A_Expr:e},"A_Expr missing operator");let i=this.isJwtAccessor(e);if(i)return {[i]:{}};let s=e.lexpr?this.deparseValue(e.lexpr):void 0,o=e.rexpr?this.deparseValue(e.rexpr):void 0,a=this.mapOperator(r);if(!a)throw new ne({A_Expr:e},`Unsupported operator: ${r}`);let l=e.rexpr!=null&&"ColumnRef"in e.rexpr;if(typeof s=="string"&&s.startsWith("{{")&&l)return {[o]:{[a]:s}};let c=l&&typeof o=="string"?{$ref:o}:o;return {[s]:{[a]:c}}}if(e.kind==="AEXPR_LIKE"||e.kind==="AEXPR_ILIKE"){let n=e.lexpr?this.deparseValue(e.lexpr):void 0,r=e.rexpr?this.deparseValue(e.rexpr):void 0,s=(e.name?.[0]?tt(e.name[0]):"~~")==="!~~"?"$notLike":"$like";return {[n]:{[s]:r}}}if(e.kind==="AEXPR_IN"){let n=e.lexpr?this.deparseValue(e.lexpr):void 0,r=e.rexpr&&"List"in e.rexpr&&e.rexpr.List.items?e.rexpr.List.items.map(i=>this.deparseValue(i)):[];return {[n]:{$in:r}}}throw new ne({A_Expr:e},`A_Expr kind: ${e.kind}`)}BoolExpr(e){let n=e.args??[];switch(e.boolop){case "AND_EXPR":return {$and:n.map(r=>this.deparse(r))};case "OR_EXPR":return {$or:n.map(r=>this.deparse(r))};case "NOT_EXPR":return {$not:this.deparse(n[0])};default:throw new ne({BoolExpr:e},`BoolExpr op: ${e.boolop}`)}}NullTest(e){let n=e.arg?this.deparseValue(e.arg):void 0;return e.nulltesttype==="IS_NULL"?{[n]:{$is:null}}:{[n]:{$isNot:null}}}SubLink(e){if(e.subLinkType==="ANY_SUBLINK"){let n=e.testexpr?this.deparseValue(e.testexpr):void 0,r=e.subselect?this.SelectStmt(e.subselect.SelectStmt):void 0;return {[n]:{$in:r}}}if(e.subLinkType==="EXISTS_SUBLINK")return {$exists:e.subselect?this.SelectStmt(e.subselect.SelectStmt):void 0};if(e.subLinkType==="EXPR_SUBLINK"){let n=e.subselect?e.subselect.SelectStmt:void 0;if(n?.fromClause?.length)return this.SelectStmt(n);if(n?.targetList?.[0]){let r=n.targetList[0],i="ResTarget"in r?r.ResTarget:void 0;if(i?.val){let s=this.deparseValue(i.val);return s}}}throw new ne({SubLink:e},`SubLink type: ${e.subLinkType}`)}SelectStmt(e){let{from:n,schema:r,join:i}=this.deparseFromClause(e.fromClause??[]),s=[];for(let h of e.targetList??[]){let y="ResTarget"in h?h.ResTarget:void 0;if(y?.val){let g=this.deparseValue(y.val);Array.isArray(g)?s.push(...g.map(String)):g!=null&&g!==""&&s.push(String(g));}}let o=e.whereClause?this.deparse(e.whereClause):void 0,a=this.deparseSortClause(e.sortClause),l=this.deparseLimit(e.limitCount),c=this.deparseLimit(e.limitOffset),u=this.deparseGroupClause(e.groupClause),f={type:"query",from:n,select:s};return r&&(f.schema=r),Object.keys(i).length>0&&(f.join=i),o&&(f.where=o),a.length>0&&(f.order=a),l!==void 0&&(f.limit=l),c!==void 0&&(f.offset=c),u.length>0&&(f.group=u),f}FuncCall(e){let n=this.isAuthFunc(e.funcname??[]);if(n)return n;throw new ne({FuncCall:e},`FuncCall: ${me(e.funcname??[]).join(".")}`)}ColumnRef(e){let n=me(e.fields??[]);return n.length===1?n[0]:n.join(".")}A_Const(e){if(e.boolval!==void 0)return e.boolval.boolval;if(e.ival!==void 0)return e.ival.ival??0;if(e.fval!==void 0)return parseFloat(e.fval.fval??"0");if(e.sval!==void 0)return e.sval.sval??"";if(e.isnull)return null;throw new ne({A_Const:e},"A_Const: unknown variant")}TypeCast(e){if(!e.arg)throw new ne({TypeCast:e},"TypeCast: missing arg");return this.deparseValue(e.arg)}BooleanTest(e){let n=e.arg?this.deparseValue(e.arg):void 0;return e.booltesttype==="IS_TRUE"?{[n]:{$eq:true}}:{[n]:{$eq:false}}}deparseFromClause(e){let n={};if(e.length===0)return {from:"",join:n};let r=e[0];if("RangeVar"in r){let i=r.RangeVar;return {from:i.relname??"",schema:i.schemaname,join:n}}if("JoinExpr"in r){let{from:i,schema:s}=this.walkJoinExpr(r.JoinExpr,n);return {from:i,schema:s,join:n}}return {from:"",join:n}}walkJoinExpr(e,n){let r={from:""};if(e.larg)if("RangeVar"in e.larg){let i=e.larg.RangeVar;r={from:i.relname??"",schema:i.schemaname};}else "JoinExpr"in e.larg&&(r=this.walkJoinExpr(e.larg.JoinExpr,n));if(e.rarg&&"RangeVar"in e.rarg){let i=e.rarg.RangeVar,s=i.relname??"",o=i.alias?.aliasname??s,a=e.jointype==="JOIN_LEFT"?"left":"inner",l={from:s,type:a};e.quals&&(l.on=this.deparse(e.quals));let c=o;if(c in n){let u=2;for(;`${c}_${u}`in n;)u++;c=`${c}_${u}`;}n[c]=l;}return r}deparseSortClause(e){if(!e)return [];let n=[];for(let r of e){if(!("SortBy"in r))continue;let i=r.SortBy;if(!i.node)continue;let s=String(this.deparseValue(i.node)),o=i.sortby_dir==="SORTBY_DESC"?"desc":"asc",a={column:s,direction:o};i.sortby_nulls==="SORTBY_NULLS_FIRST"?a.nullsFirst=true:i.sortby_nulls==="SORTBY_NULLS_LAST"&&(a.nullsFirst=false),n.push(a);}return n}deparseLimit(e){if(!e)return;let n=this.deparseValue(e);return typeof n=="number"?n:Number(n)}deparseGroupClause(e){return e?e.map(n=>String(this.deparseValue(n))):[]}isAuthFunc(e){let n=me(e);if(n.length===2&&n[0]==="auth"){if(n[1]==="uid")return "{{auth.uid}}";if(n[1]==="jwt")return "{{auth.jwt}}";if(n[1]==="role")return "{{auth.role}}";throw new Error(`Unsupported auth function: "${n.slice(1).join(".")}"`)}return null}isJwtAccessor(e){if(e.kind!=="AEXPR_OP")return null;let n=e.name?.[0]?tt(e.name[0]):void 0;if(n!=="->"&&n!=="->>")return null;let r=e.rexpr&&"A_Const"in e.rexpr?e.rexpr.A_Const.sval?.sval:void 0;if(r===void 0)return null;if(e.lexpr&&"FuncCall"in e.lexpr)return this.isAuthFunc(e.lexpr.FuncCall.funcname??[])==="{{auth.jwt}}"?`{{auth.jwt.${r}}}`:null;if(e.lexpr&&"A_Expr"in e.lexpr){let i=this.isJwtAccessor(e.lexpr.A_Expr);if(i)return `${i.slice(0,-2)}.${r}}}`}return null}mapOperator(e){switch(e){case "=":return "$eq";case "<>":case "!=":return "$neq";case ">":return "$gt";case ">=":return "$gte";case "<":return "$lt";case "<=":return "$lte";case "~~":return "$like";case "!~~":return "$notLike";default:return}}};});var _e,Ci=F(()=>{_e=class t{constructor(e){this.data=e;}appliesTo(e){return this.data.command==="ALL"||this.data.command===e}appliesToRole(e){return this.data.roles.length===0||this.data.roles.includes(e)}toJSON(){return this.data}static fromJSON(e){return new t(e)}};});var nt,Pn=F(()=>{nt=class extends Error{constructor(n,r,i,s){super(`check constraint "${i}" violated for ${n}.${r}`);this.table=n;this.column=r;this.constraint=i;this.value=s;this.name="CheckConstraintError";}};});var K,de=F(()=>{Pn();K=class{context;factoryExtra;constructor(e){this.context=e;}get isShimBacked(){return false}checkConstraint(){return null}serialize(e){return e}deserialize(e){return e}validateStorage(e){return {status:"pass",message:null}}validationFail(e,n){return {status:"fail",message:e,action:n}}validationPass(){return {status:"pass",message:null}}isNullish(e){return e==null}toColumnDDL(e){let{includeNullable:n=true}=e??{},r=[],i=this.context.column;r.push(this.quoteIfNeeded(i)),r.push(this.sqliteType),this.context.isPrimaryKey&&r.push("PRIMARY KEY"),this.context.isSerial&&this.context.isPrimaryKey&&r.push("AUTOINCREMENT"),n&&!this.context.nullable&&!this.context.isPrimaryKey&&r.push("NOT NULL"),this.context.isUnique&&!this.context.isPrimaryKey&&r.push("UNIQUE"),this.context.defaultValue!==null&&r.push(`DEFAULT ${this.context.defaultValue}`);let s=this.checkConstraint();return s&&r.push(`CHECK (${s})`),r.join(" ")}checkError(e,n){return new nt(this.context.table,this.context.column,e,n)}quoteIfNeeded(e){return /^[a-zA-Z_][a-zA-Z0-9_]*$/.test(e)?e:`"${e}"`}};});var Ce,Gt=F(()=>{de();Ce=class extends K{get sqliteType(){return "INTEGER"}};});var rt,On=F(()=>{Gt();rt=class extends Ce{constructor(e){super({...e,isSerial:true});}};});function Rl(t,e){let{precision:n,scale:r}=e,i=10**r,s=10**(n-r);return Math.abs(Math.round(t*i)-t*i)<1e-4&&Math.abs(t)<s}var it,Fn=F(()=>{de();it=class extends K{numericPrecision;constructor(e,n){super(e),this.numericPrecision=n;}get isShimBacked(){return this.numericPrecision!==void 0}get sqliteType(){return "REAL"}checkConstraint(){if(this.numericPrecision){let{precision:e,scale:n}=this.numericPrecision,r=this.context.column,i=10**n,s=10**(e-n);return `ABS(ROUND(${r} * ${i}) - ${r} * ${i}) < 0.0001 AND ABS(${r}) < ${s}`}return null}validateStorage(e){if(this.isNullish(e))return this.validationPass();if(typeof e!="number"||!Number.isFinite(e))return this.validationFail("Expected finite number.","Patch rows with finite numbers.");if(this.numericPrecision){let{precision:n,scale:r}=this.numericPrecision;if(!Rl(e,this.numericPrecision))return this.validationFail(`Does not fit numeric(${n}, ${r}).`,"Patch rows within numeric precision.")}return this.validationPass()}};});var B,se=F(()=>{de();B=class extends K{lengthConstraint;constructor(e,n){super(e),this.lengthConstraint=n;}get isShimBacked(){return this.lengthConstraint!==void 0}get sqliteType(){return "TEXT"}checkConstraint(){return this.lengthConstraint!==void 0?`length(${this.context.column}) <= ${this.lengthConstraint}`:null}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"?this.validationFail("Expected text.","Patch rows with text values."):this.lengthConstraint!==void 0&&Array.from(e).length>this.lengthConstraint?this.validationFail(`Exceeds length ${this.lengthConstraint}.`,"Patch rows with shorter text."):this.validationPass()}};});var st,In=F(()=>{de();st=class extends K{get sqliteType(){return "BLOB"}};});var ot,Dn=F(()=>{de();ot=class extends K{get isShimBacked(){return true}get sqliteType(){return "INTEGER"}checkConstraint(){return `${this.context.column} IN (0, 1)`}serialize(e){if(this.isNullish(e))return e;if(e===true||e===1)return 1;if(e===false||e===0)return 0;throw this.checkError("boolean_range",e)}deserialize(e){if(this.isNullish(e)||e===true||e===false)return e;if(typeof e=="number"&&Number.isFinite(e)){if(e===1)return true;if(e===0)return false}return e===1n?true:e===0n?false:e==="1"||e==="true"?true:e==="0"||e==="false"?false:e}validateStorage(e){return this.isNullish(e)?this.validationPass():e===1||e===0?this.validationPass():this.validationFail("Expected 0 or 1.","Patch rows with boolean values.")}};});function Ri(t){try{return {ok:!0,value:JSON.parse(t)}}catch{return {ok:false}}}var at,jn=F(()=>{de();at=class extends K{get isShimBacked(){return true}get sqliteType(){return "TEXT"}checkConstraint(){let e=this.context.column;return `${e} IS NULL OR json_valid(${e})`}serialize(e){if(this.isNullish(e))return e;try{return JSON.stringify(e)}catch{throw this.checkError("json_valid",e)}}deserialize(e){if(this.isNullish(e))return e;if(typeof e=="string"){let n=Ri(e);return n.ok?n.value:e}return e}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"?this.validationFail("Expected JSON text.","Patch rows with JSON values."):Ri(e).ok?this.validationPass():this.validationFail("Invalid JSON text.","Patch rows with valid JSON.")}};});function vl(t){if(!/^\d{4}-\d{2}-\d{2}$/.test(t))return false;let e=new Date(`${t}T00:00:00.000Z`);return !Number.isNaN(e.getTime())&&e.toISOString().slice(0,10)===t}var lt,Un=F(()=>{se();lt=class extends B{get isShimBacked(){return true}checkConstraint(){let e=this.context.column;return `${e} IS NULL OR date(${e}) IS NOT NULL`}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"||!vl(e)?this.validationFail("Invalid date.","Patch rows with YYYY-MM-DD dates."):this.validationPass()}};});function $l(t){let e=t.match(/^(\d{2}):(\d{2})(?::(\d{2})(?:\.\d{1,6})?)?([+-](\d{2}):?(\d{2}))?$/);if(!e)return false;let n=Number(e[1]),r=Number(e[2]),i=e[3]===void 0?0:Number(e[3]),s=e[5]===void 0?null:Number(e[5]),o=e[6]===void 0?null:Number(e[6]),a=s===null||o!==null&&s<=15&&o<=59;return n<=24&&r<=59&&i<=59&&(n!==24||r===0&&i===0)&&a}var ct,Bn=F(()=>{se();ct=class extends B{get isShimBacked(){return true}checkConstraint(){let e=this.context.column;return `${e} IS NULL OR time(${e}) IS NOT NULL`}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"||!$l(e)?this.validationFail("Invalid time.","Patch rows with HH:MM[:SS] times."):this.validationPass()}};});function kl(t){let e=t.match(/^(\d{4})-(\d{2})-(\d{2})[ T](\d{2}):(\d{2})(?::(\d{2})(?:\.\d{1,6})?)?(?:Z|([+-](\d{2}):?(\d{2})))?$/);if(!e)return false;let n=Number(e[1]),r=Number(e[2]),i=Number(e[3]),s=Number(e[4]),o=Number(e[5]),a=e[6]===void 0?0:Number(e[6]),l=e[8]===void 0?null:Number(e[8]),c=e[9]===void 0?null:Number(e[9]),u=new Date(Date.UTC(n,r-1,i)),f=u.getUTCFullYear()===n&&u.getUTCMonth()===r-1&&u.getUTCDate()===i,h=s<=24&&o<=59&&a<=59&&(s!==24||o===0&&a===0),y=l===null||c!==null&&l<=15&&c<=59;return f&&h&&y}var ut,Hn=F(()=>{se();ut=class extends B{get isShimBacked(){return true}checkConstraint(){let e=this.context.column;return `${e} IS NULL OR datetime(${e}) IS NOT NULL`}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"||!kl(e)?this.validationFail("Invalid timestamp.","Patch rows with ISO timestamps."):this.validationPass()}};});var ft,Mn=F(()=>{se();ft=class extends B{get isShimBacked(){return true}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"||e.trim().length===0?this.validationFail("Expected interval text.","Patch rows with interval strings."):/^-?\d+(?:\.\d+)?$/.test(e.trim())?this.validationFail("Ambiguous numeric interval.","Patch rows with explicit interval strings."):this.validationPass()}};});var pt,qn=F(()=>{se();pt=class extends B{enumValues;constructor(e,n){super(e),this.enumValues=n;}get isShimBacked(){return true}checkConstraint(){let e=this.context.column,n=this.enumValues.map(r=>`'${r.replace(/'/g,"''")}'`).join(", ");return `${e} IN (${n})`}serialize(e){if(this.isNullish(e))return e;if(typeof e!="string"||!this.enumValues.includes(e))throw this.checkError("enum_membership",e);return e}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"||!this.enumValues.includes(e)?this.validationFail("Invalid enum value.","Patch rows with declared enum values."):this.validationPass()}};});function vi(t){try{return {ok:!0,value:JSON.parse(t)}}catch{return {ok:false}}}var Le,Vn=F(()=>{de();Le=class extends K{elementField;constructor(e,n){super(e),this.elementField=n;}get sqliteType(){return "TEXT"}get isShimBacked(){return true}checkConstraint(){let e=this.context.column;return `${e} IS NULL OR (json_valid(${e}) AND json_type(${e}) = 'array')`}serialize(e){if(this.isNullish(e))return e;if(!Array.isArray(e))throw this.checkError("array_type",e);return this.elementField?JSON.stringify(e.map(n=>this.elementField.serialize(n))):JSON.stringify(e)}deserialize(e){if(this.isNullish(e))return e;if(typeof e=="string"){let n=vi(e);if(n.ok&&Array.isArray(n.value))return this.elementField?n.value.map(r=>this.elementField.deserialize(r)):n.value}return e}validateStorage(e){if(this.isNullish(e))return this.validationPass();if(typeof e!="string")return this.validationFail("Expected JSON array text.","Patch rows with array values.");let n=vi(e);if(!n.ok)return this.validationFail("Invalid JSON array text.","Patch rows with array values.");if(!Array.isArray(n.value))return this.validationFail("Expected JSON array.","Patch rows with array values.");if(this.elementField)for(let r of n.value){let i=this.elementField.validateStorage(r);if(i.status==="fail")return this.validationFail(`Invalid ${this.elementField.context.pgTypeName} array element.`,i.action??"Patch rows with valid array elements.")}return this.validationPass()}};});function $i(t){return Ll.test(t.toLowerCase())}var Nl,Ll,mt,Gn=F(()=>{se();Nl="????????-????-????-????-????????????",Ll=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/;mt=class extends B{get isShimBacked(){return true}checkConstraint(){let e=this.quoteIfNeeded(this.context.column);return `${e} IS NULL OR ${e} GLOB '${Nl}'`}serialize(e){if(this.isNullish(e))return e;if(typeof e!="string")throw this.checkError("uuid_format",e);let n=e.toLowerCase();if(!$i(n))throw this.checkError("uuid_format",e);return n}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"||!$i(e)?this.validationFail("Invalid UUID.","Patch rows with valid UUIDs."):this.validationPass()}};});function Pl(t){let e=t.split("/");if(e.length>2)return null;let n=e[0];if(!n)return null;if(e.length===1)return {address:n,prefix:null};let r=e[1];return !r||!/^\d+$/.test(r)?null:{address:n,prefix:Number(r)}}function Ol(t){let e=t.split(".");return e.length!==4?false:e.every(n=>{if(!/^\d+$/.test(n))return false;let r=Number(n);return r>=0&&r<=255})}function Fl(t){if(!t.includes(":"))return false;try{return new URL(`http://[${t}]/`),!0}catch{return false}}function ki(t){let e=Pl(t);return e?Ol(e.address)?e.prefix===null||e.prefix>=0&&e.prefix<=32:Fl(e.address)?e.prefix===null||e.prefix>=0&&e.prefix<=128:false:false}var dt,Kn=F(()=>{se();dt=class extends B{get isShimBacked(){return true}checkConstraint(){let e=this.quoteIfNeeded(this.context.column);return `${e} IS NULL OR (length(${e}) BETWEEN 3 AND 49 AND (instr(${e}, '.') > 0 OR instr(${e}, ':') > 0))`}serialize(e){if(this.isNullish(e))return e;if(typeof e!="string")throw this.checkError("inet_format",e);let n=e.trim();if(!ki(n))throw this.checkError("inet_format",e);return n}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"||!ki(e.trim())?this.validationFail("Invalid inet address.","Patch rows with valid inet strings."):this.validationPass()}};});var ht,Xn=F(()=>{se();ht=class extends B{serialize(e){throw new Error(`Unsupported type "${this.context.pgTypeName}" for ${this.context.table}.${this.context.column}`)}deserialize(e){throw new Error(`Unsupported type "${this.context.pgTypeName}" for ${this.context.table}.${this.context.column}`)}toColumnDDL(){throw new Error(`Unsupported type "${this.context.pgTypeName}" for ${this.context.table}.${this.context.column}`)}};});function gt(t,e){let n=Jl(t,e);if(e){let{enumValues:r,...i}=e;n.factoryExtra=i;}return n}function Jl(t,e){if(e?.isArray){let r=gt(t,{...e,isArray:false});return new Le(t,r)}if(e?.enumValues)return new pt(t,e.enumValues);let n=t.pgTypeName.toLowerCase().trim();if(n.startsWith("_")||n.endsWith("[]")){let r=n.startsWith("_")?n.slice(1):n.slice(0,-2),i={...t,pgTypeName:r},s=gt(i);return new Le(t,s)}return Dl.has(n)?new rt(t):Il.has(n)?new Ce(t):Hl.has(n)?new ot(t):Ml.has(n)?new at(t):Kl.has(n)?new lt(t):Xl.has(n)?new ct(t):Wl.has(n)?new ut(t):zl.has(n)?new ft(t):Bl.has(n)?new st(t):jl.has(n)?new it(t,e?.numericPrecision):ql.has(n)?new mt(t):Vl.has(n)?new B(t,63):Gl.has(n)?new dt(t):Ul.has(n)?new B(t,e?.lengthConstraint):new ht(t)}var Il,Dl,jl,Ul,Bl,Hl,Ml,ql,Vl,Gl,Kl,Xl,Wl,zl,Ni=F(()=>{Gt();On();Fn();se();In();Dn();jn();Un();Bn();Hn();Mn();qn();Vn();Gn();Kn();Xn();Il=new Set(["int2","smallint","int4","integer","int","int8","bigint"]),Dl=new Set(["serial","serial4","bigserial","serial8","smallserial","serial2"]),jl=new Set(["float4","real","float8","double precision","numeric","decimal"]),Ul=new Set(["text","varchar","character varying","char","character","bpchar"]),Bl=new Set(["bytea"]),Hl=new Set(["bool","boolean"]),Ml=new Set(["json","jsonb"]),ql=new Set(["uuid"]),Vl=new Set(["name"]),Gl=new Set(["inet"]),Kl=new Set(["date"]),Xl=new Set(["time","timetz","time without time zone","time with time zone"]),Wl=new Set(["timestamp","timestamptz","timestamp without time zone","timestamp with time zone"]),zl=new Set(["interval"]);});var Li=F(()=>{});var yt,Pi=F(()=>{yt=class{table;schema;fields;constructor(e,n="public",r=new Map){this.table=e,this.schema=n,this.fields=r;}get(e){return this.fields.get(e)}has(e){return this.fields.has(e)}set(e,n){this.fields.set(e,n);}columns(){return Array.from(this.fields.keys())}all(){return Array.from(this.fields.values())}serializeRow(e){let n={};for(let[r,i]of Object.entries(e)){let s=this.fields.get(r);n[r]=s?s.serialize(i):i;}return n}deserializeRow(e){let n={};for(let[r,i]of Object.entries(e)){let s=this.fields.get(r);n[r]=s?s.deserialize(i):i;}return n}applyDefaults(e){let n={...e};for(let[r,i]of this.fields)!(r in n)&&i.context.defaultFn&&(n[r]=i.context.defaultFn());return n}};});var Oi=F(()=>{de();Pn();Gt();On();Fn();se();In();Dn();jn();Un();Bn();Hn();Mn();qn();Vn();Gn();Kn();Xn();Ni();Li();Pi();});var Di={};rs(Di,{_resetWarnedMissingToClauseForTests:()=>Yl,collectComments:()=>rc,collectEnums:()=>Ql,collectPolicies:()=>ec,collectSchema:()=>tc,collectTableConstraints:()=>nc,collectVariables:()=>Zl});function Yl(){Jn.clear();}function Ql(t){let e=new Map;for(let n of t.stmts??[]){if(!n.stmt||!("CreateEnumStmt"in n.stmt))continue;let r=n.stmt.CreateEnumStmt,i=me(r.typeName??[]).join(".");if(!i||!r.vals)continue;let s=me(r.vals);e.set(i.toLowerCase(),s);}return e}function Zl(t){let e=new Map;for(let n of t.stmts??[]){if(!n.stmt||!("VariableSetStmt"in n.stmt))continue;let r=n.stmt.VariableSetStmt,i=r.name,s=xi(r.args?.[0]??{});e.set(i,{value:s,local:r.is_local});}return e}function Fi(t){let e=[],n=false;for(let r of t??[])if("RoleSpec"in r){let i=r.RoleSpec;i.roletype==="ROLESPEC_PUBLIC"?i.location===-1&&(n=true):i.roletype==="ROLESPEC_CSTRING"&&i.rolename&&e.push(i.rolename);}return {roles:e,implicitPublic:n}}function Kt(t,e){return t&&t.length>0?t:e}function Wn(t,e,n){return t.findIndex(r=>r.data.name===e.name&&r.data.table===e.table&&Kt(r.data.schema,n)===Kt(e.schema,n))}function zn(t,e){return new Error(`policy "${t}" for table "${e}" does not exist`)}function Ii(t,e,n,r){return t.data.table===e&&Kt(t.data.schema,r)===Kt(n,r)}function ec(t,e={}){let n=e.defaultSchema||"public",r=e.validateMutations===true,i=new Vt,s=new Set,o=[];for(let a of t.stmts??[])if(a.stmt){if("CreatePolicyStmt"in a.stmt){let l=a.stmt.CreatePolicyStmt,c=l.table?.relname??"",u=l.table?.schemaname,f={select:"SELECT",insert:"INSERT",update:"UPDATE",delete:"DELETE"},h=l.cmd_name?f[l.cmd_name]??"ALL":"ALL",y=l.permissive===true,{roles:g,implicitPublic:E}=Fi(l.roles),A=l.qual?i.deparse(l.qual):void 0,q=l.with_check?i.deparse(l.with_check):void 0;if(E){let H=u?`${u}.${c}`:c,X=l.policy_name??"",O=`${H}::${X}`;if(!Jn.has(O)){Jn.add(O);let $=JSON.stringify(A)+JSON.stringify(q);/\{\{auth\.(uid|jwt|role)/i.test($)||console.warn(`[supalite] policy "${X}" on "${H}" has no TO clause \u2014 applies to all roles (PUBLIC). For clarity, prefer an explicit \`TO <role>\` clause (e.g. \`TO authenticated\`).`);}}let x=new _e({name:l.policy_name??"",table:c,schema:u,command:h,permissive:y,roles:g,using:A,withCheck:q});o.push(x);}if("DropStmt"in a.stmt&&a.stmt.DropStmt.removeType==="OBJECT_POLICY"){let l=a.stmt.DropStmt,c=l.objects?.[0];if(c&&"List"in c){let u=me(c.List.items??[]),f=u[u.length-1],h=u[u.length-2],y=u.length>=3?u[u.length-3]:void 0;if(f&&h){let g=Wn(o,{name:f,table:h,schema:y},n);if(g!==-1)o.splice(g,1);else if(r&&!l.missing_ok)throw zn(f,h)}}}if("AlterPolicyStmt"in a.stmt){let l=a.stmt.AlterPolicyStmt,c=l.policy_name??"",u=l.table?.relname??"",f=l.table?.schemaname,h=Wn(o,{name:c,table:u,schema:f},n);if(h===-1){if(r)throw zn(c,u);continue}let y=o[h].data,g=l.roles?Fi(l.roles).roles:y.roles,E=l.qual?i.deparse(l.qual):y.using,A=l.with_check?i.deparse(l.with_check):y.withCheck;o[h]=new _e({...y,roles:g,using:E,withCheck:A});}if("RenameStmt"in a.stmt&&a.stmt.RenameStmt.renameType==="OBJECT_POLICY"){let l=a.stmt.RenameStmt,c=l.subname??"",u=l.relation?.relname??"",f=l.relation?.schemaname,h=Wn(o,{name:c,table:u,schema:f},n);if(h===-1){if(r)throw zn(c,u);continue}l.newname&&(o[h]=new _e({...o[h].data,name:l.newname}));}if("RenameStmt"in a.stmt&&a.stmt.RenameStmt.renameType==="OBJECT_TABLE"){let l=a.stmt.RenameStmt,c=l.relation?.relname??"",u=l.newname??"",f=l.relation?.schemaname;if(c&&u&&c!==u){s.delete(c)&&s.add(u);for(let h=0;h<o.length;h++)Ii(o[h],c,f,n)&&(o[h]=new _e({...o[h].data,table:u}));}}if("DropStmt"in a.stmt&&a.stmt.DropStmt.removeType==="OBJECT_TABLE")for(let l of a.stmt.DropStmt.objects??[]){if(!("List"in l))continue;let c=me(l.List.items??[]),u=c[c.length-1],f=c.length>=2?c[c.length-2]:void 0;if(u){s.delete(u);for(let h=o.length-1;h>=0;h--)Ii(o[h],u,f,n)&&o.splice(h,1);}}if("AlterTableStmt"in a.stmt){let l=a.stmt.AlterTableStmt,c=l.relation?.relname??"";for(let u of l.cmds??[]){if(!("AlterTableCmd"in u))continue;let f=u.AlterTableCmd.subtype;f==="AT_EnableRowSecurity"?s.add(c):f==="AT_DisableRowSecurity"&&s.delete(c);}}}return {policies:o,tables:s}}function tc(t,e){let n=new Map;for(let r of t.stmts??[]){if(!r.stmt||!("CreateStmt"in r.stmt))continue;let i=r.stmt.CreateStmt,s=i.relation?.relname??"",o=i.relation?.schemaname??"public";if(!s)continue;let a=new yt(s,o);for(let l of i.tableElts??[]){if(!("ColumnDef"in l))continue;let c=l.ColumnDef,u=c.colname;if(!u)continue;let f=c.typeName?.names?.map(S=>S.String?.sval||S.String?.str).filter(Boolean),h=f&&(f.length===2&&f[0]==="pg_catalog"?f[1]:f[0]);if(!h)continue;let y=!!c.typeName?.arrayBounds?.length,g=Array.isArray(c.typeName?.typmods)?c.typeName.typmods:[],E=S=>g[S]?.A_Const?.ival?.ival??g[S]?.A_Const?.val?.ival?.ival,A={isArray:y};if(Ti(h)&&g.length>0){let S=E(0);typeof S=="number"&&S>0&&(A.lengthConstraint=S);}if(Ai(h)&&g.length>=2){let S=E(0),L=E(1);typeof S=="number"&&typeof L=="number"&&S>0&&L>=0&&(A.numericPrecision={precision:S,scale:L});}let q=e.get(h.toLowerCase());q&&(A.enumValues=q);let x=Array.isArray(c.constraints)?c.constraints:[],H=x.some(S=>S.Constraint?.contype==="CONSTR_PRIMARY"),X=Ei(h)||x.some(S=>S.Constraint?.contype==="CONSTR_IDENTITY"),O=x.some(S=>S.Constraint?.contype==="CONSTR_NOTNULL"),$=x.find(S=>S.Constraint?.contype==="CONSTR_UNIQUE"),k=x.find(S=>S.Constraint?.contype==="CONSTR_GENERATED"),T=x.find(S=>S.Constraint?.contype==="CONSTR_FOREIGN"),C=x.find(S=>S.Constraint?.contype==="CONSTR_CHECK"),m;if(T){let S=T.Constraint,L=S.pktable?.relname,d=S.pktable?.schemaname,p=S.pk_attrs?.[0]?.String?.sval;L&&p&&(m={refSchema:d,refTable:L,refColumn:p,constraintName:S.conname||void 0});}let W={schema:o,table:s,column:u,pgTypeName:h,nullable:!O&&!H,defaultValue:null,defaultFn:null,isPrimaryKey:H,isUnique:!!$,isSerial:X,isGenerated:!!k,fkRef:m,hasCheck:!!C,checkConstraintName:C?.Constraint?.conname||void 0,uniqueConstraintName:$?.Constraint?.conname||void 0};a.set(u,gt(W,A));}n.set(`${o}.${s}`,a);}return n}function nc(t){let e=[];for(let n of t.stmts??[]){if(!n.stmt||!("CreateStmt"in n.stmt))continue;let r=n.stmt.CreateStmt,i=r.relation?.relname??"",s=r.relation?.schemaname??"public";if(i)for(let o of r.tableElts??[]){if("ColumnDef"in o)continue;let a=o;if(!a.Constraint)continue;let l=a.Constraint,c=l.contype;if(c==="CONSTR_UNIQUE"){let u=(l.keys??[]).map(f=>f.String?.sval??f.String?.str).filter(Boolean);if(u.length===0)continue;e.push({schema:s,table:i,kind:"unique",name:l.conname||void 0,columns:u});}else if(c==="CONSTR_CHECK")e.push({schema:s,table:i,kind:"check",name:l.conname||void 0,columns:[]});else if(c==="CONSTR_FOREIGN"){let u=(l.fk_attrs??[]).map(y=>y.String?.sval??y.String?.str).filter(Boolean),f=(l.pk_attrs??[]).map(y=>y.String?.sval??y.String?.str).filter(Boolean),h=l.pktable?.relname;if(!h)continue;e.push({schema:s,table:i,kind:"foreign_key",name:l.conname||void 0,columns:u,refSchema:l.pktable?.schemaname,refTable:h,refColumns:f});}}}return e}function rc(t){let e=[];for(let n of t.stmts??[]){if(!n.stmt||!("CommentStmt"in n.stmt))continue;let r=n.stmt.CommentStmt,i=r.comment??"";if(!i)continue;let s=r.objtype,o=(r.object?.List?.items??r.object?.items??[]).map(a=>a.String?.sval??a.String?.str).filter(Boolean);if(o.length!==0){if(s==="OBJECT_TABLE"||s==="OBJECT_VIEW"){let[a,l]=o.length>=2?o:["public",o[0]];e.push({schema:a,table:l,text:i});}else if(s==="OBJECT_COLUMN"){let a="public",l,c;o.length>=3?[a,l,c]=o:[l,c]=o,e.push({schema:a,table:l,column:c,text:i});}}}return e}var Jn,ji=F(()=>{_i();Mt();Ci();Oi();Ln();Jn=new Set;});process.stdin.isTTY?null:(async()=>{let t=[];for await(let e of process.stdin)t.push(e);return Buffer.concat(t).toString("utf8")})();function re(t,e){xt.existsSync(t)||(xt.mkdirSync(t,{recursive:true}),e?.());}function xe(t,e,n){xt.existsSync(t)||(xt.writeFileSync(t,e),n?.());}var pe=class t{root;constructor(e,n){let r=n??t.projectDir();this.root=ie__default.join(r,e??"");}ensureRoot(){re(this.root);}static homeDir(){return ie__default.join(os.homedir(),".lite")}static projectDir(){return ie__default.join(process.cwd(),"supabase")}deleteAll(e=false){try{xt.rmSync(this.root,{recursive:!0});}catch(n){if(!e)throw n}this.ensureRoot();}delete(e,n=false){try{xt.unlinkSync(ie__default.join(this.root,e));}catch(r){if(!n)throw r}}write(e,n,r=false){try{this.ensureRoot(),xt.writeFileSync(ie__default.join(this.root,e),n);}catch(i){if(!r)throw i}}read(e,n=false){try{return xt.readFileSync(ie__default.join(this.root,e),"utf8")}catch(r){if(!n)throw r}}relativePath(e){return e?ie__default.relative(process.cwd(),ie__default.join(this.root,e)):this.root}path(e){return e?ie__default.join(this.root,e):this.root}};var Oe=process.env.LITE_CLOUD_URL??(process.env.LOCAL?"http://localhost:2001":"https://api.lite.dev"),Tt=process.env.LITE_CLOUD_PROJECTS_URL??(process.env.LOCAL?"http://supalite.local":"https://lite.black");var _t=class{root;constructor(e){this.root=e??ie__default.join(os.homedir(),".lite","auth"),re(this.root);}async getItem(e){try{return xt.readFileSync(ie__default.join(this.root,e+".json"),"utf8")}catch{return null}}async setItem(e,n){xt.writeFileSync(ie__default.join(this.root,e+".json"),n);}async removeItem(e){try{xt.unlinkSync(ie__default.join(this.root,e+".json"));}catch{return}}};var Re=class{constructor(e){this.config=e;this.tempFs=new pe(".temp",this.config.root),this.projectFs=new pe("supabase",this.config.root),this.schemaFs=new pe("schemas",this.config.root),this.authStorage=this.config.authStorage??new _t(ie__default.join(pe.homeDir(),"auth")),this._client=this.config.withSupabaseClient!==false?this.config.client??createClient(this.config.host??Oe,process.env.LITE_CLOUD_ANON_KEY??"...",{auth:{storage:this.authStorage}}):void 0;}tempFs;projectFs;schemaFs;_client;authStorage;async fetch(e,n){if(!this.config.token)throw new Error("Not authenticated, sign in first.");let r=e instanceof URL?e:new URL(e,this.config.host??Oe);return await fetch(r,{...n,headers:{...n?.headers,Authorization:`Bearer ${this.config.token}`}})}};var ve=class extends Re{constructor(n){super(n);this.config=n;}get client(){if(!this._client)throw new Error("Supabase client not initialized");return this._client}projectRef(){return this.tempFs.read("project-ref",true)}projectUrl(n){let r=new URL(this.config.projectsHost??Tt),i=r.hostname.replace(/^www\./,"");return `${r.protocol}//${n}.${i}${r.port?`:${r.port}`:""}`}};var Y={config_dir:"supabase",default_db_url:"file:supabase/.temp/data.db",default_db_dir:"supabase/.temp/data"};var Ve=Pe(Fe());function ms(t,e){let n=t.slice(0,e).split(/\r\n|\n|\r/g);return [n.length,n.pop().length+1]}function ds(t,e,n){let r=t.split(/\r\n|\n|\r/g),i="",s=(Math.log10(e+1)|0)+1;for(let o=e-1;o<=e+1;o++){let a=r[o-1];a&&(i+=o.toString().padEnd(s," "),i+=": ",i+=a,i+=`
|
|
12
|
+
var es=Object.create;var Kt=Object.defineProperty;var ts=Object.getOwnPropertyDescriptor;var ns=Object.getOwnPropertyNames;var rs=Object.getPrototypeOf,is=Object.prototype.hasOwnProperty;var F=(t,e)=>()=>(t&&(e=t(t=0)),e);var xe=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),ss=(t,e)=>{for(var n in e)Kt(t,n,{get:e[n],enumerable:true});},os=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of ns(e))!is.call(t,i)&&i!==n&&Kt(t,i,{get:()=>e[i],enumerable:!(r=ts(e,i))||r.enumerable});return t};var Pe=(t,e,n)=>(n=t!=null?es(rs(t)):{},os(Kt(n,"default",{value:t,enumerable:true}),t));var Fe=xe((nu,Xt)=>{var Rt=process||{},rr=Rt.argv||[],Ct=Rt.env||{},fs=!(Ct.NO_COLOR||rr.includes("--no-color"))&&(!!Ct.FORCE_COLOR||rr.includes("--color")||Rt.platform==="win32"||(Rt.stdout||{}).isTTY&&Ct.TERM!=="dumb"||!!Ct.CI),ps=(t,e,n=t)=>r=>{let i=""+r,s=i.indexOf(e,t.length);return ~s?t+ms(i,e,n,s)+e:t+i+e},ms=(t,e,n,r)=>{let i="",s=0;do i+=t.substring(s,r)+n,s=r+e.length,r=t.indexOf(e,s);while(~r);return i+t.substring(s)},ir=(t=fs)=>{let e=t?ps:()=>String;return {isColorSupported:t,reset:e("\x1B[0m","\x1B[0m"),bold:e("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:e("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:e("\x1B[3m","\x1B[23m"),underline:e("\x1B[4m","\x1B[24m"),inverse:e("\x1B[7m","\x1B[27m"),hidden:e("\x1B[8m","\x1B[28m"),strikethrough:e("\x1B[9m","\x1B[29m"),black:e("\x1B[30m","\x1B[39m"),red:e("\x1B[31m","\x1B[39m"),green:e("\x1B[32m","\x1B[39m"),yellow:e("\x1B[33m","\x1B[39m"),blue:e("\x1B[34m","\x1B[39m"),magenta:e("\x1B[35m","\x1B[39m"),cyan:e("\x1B[36m","\x1B[39m"),white:e("\x1B[37m","\x1B[39m"),gray:e("\x1B[90m","\x1B[39m"),bgBlack:e("\x1B[40m","\x1B[49m"),bgRed:e("\x1B[41m","\x1B[49m"),bgGreen:e("\x1B[42m","\x1B[49m"),bgYellow:e("\x1B[43m","\x1B[49m"),bgBlue:e("\x1B[44m","\x1B[49m"),bgMagenta:e("\x1B[45m","\x1B[49m"),bgCyan:e("\x1B[46m","\x1B[49m"),bgWhite:e("\x1B[47m","\x1B[49m"),blackBright:e("\x1B[90m","\x1B[39m"),redBright:e("\x1B[91m","\x1B[39m"),greenBright:e("\x1B[92m","\x1B[39m"),yellowBright:e("\x1B[93m","\x1B[39m"),blueBright:e("\x1B[94m","\x1B[39m"),magentaBright:e("\x1B[95m","\x1B[39m"),cyanBright:e("\x1B[96m","\x1B[39m"),whiteBright:e("\x1B[97m","\x1B[39m"),bgBlackBright:e("\x1B[100m","\x1B[49m"),bgRedBright:e("\x1B[101m","\x1B[49m"),bgGreenBright:e("\x1B[102m","\x1B[49m"),bgYellowBright:e("\x1B[103m","\x1B[49m"),bgBlueBright:e("\x1B[104m","\x1B[49m"),bgMagentaBright:e("\x1B[105m","\x1B[49m"),bgCyanBright:e("\x1B[106m","\x1B[49m"),bgWhiteBright:e("\x1B[107m","\x1B[49m")}};Xt.exports=ir();Xt.exports.createColors=ir;});var We=xe((gp,Fr)=>{var Nr="[^\\\\/]",Qo="(?=.)",Lr="[^/]",hn="(?:\\/|$)",Pr="(?:^|\\/)",gn=`\\.{1,2}${hn}`,Zo="(?!\\.)",ea=`(?!${Pr}${gn})`,ta=`(?!\\.{0,1}${hn})`,na=`(?!${gn})`,ra="[^.\\/]",ia=`${Lr}*?`,sa="/",Or={DOT_LITERAL:"\\.",PLUS_LITERAL:"\\+",QMARK_LITERAL:"\\?",SLASH_LITERAL:"\\/",ONE_CHAR:Qo,QMARK:Lr,END_ANCHOR:hn,DOTS_SLASH:gn,NO_DOT:Zo,NO_DOTS:ea,NO_DOT_SLASH:ta,NO_DOTS_SLASH:na,QMARK_NO_DOT:ra,STAR:ia,START_ANCHOR:Pr,SEP:sa},oa={...Or,SLASH_LITERAL:"[\\\\/]",QMARK:Nr,STAR:`${Nr}*?`,DOTS_SLASH:"\\.{1,2}(?:[\\\\/]|$)",NO_DOT:"(?!\\.)",NO_DOTS:"(?!(?:^|[\\\\/])\\.{1,2}(?:[\\\\/]|$))",NO_DOT_SLASH:"(?!\\.{0,1}(?:[\\\\/]|$))",NO_DOTS_SLASH:"(?!\\.{1,2}(?:[\\\\/]|$))",QMARK_NO_DOT:"[^.\\\\/]",START_ANCHOR:"(?:^|[\\\\/])",END_ANCHOR:"(?:[\\\\/]|$)",SEP:"\\"},aa={__proto__:null,alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};Fr.exports={DEFAULT_MAX_EXTGLOB_RECURSION:0,MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:aa,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{__proto__:null,"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,extglobChars(t){return {"!":{type:"negate",open:"(?:(?!(?:",close:`))${t.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(t){return t===true?oa:Or}};});var Ke=xe(J=>{var{REGEX_BACKSLASH:la,REGEX_REMOVE_BACKSLASH:ca,REGEX_SPECIAL_CHARS:ua,REGEX_SPECIAL_CHARS_GLOBAL:fa}=We();J.isObject=t=>t!==null&&typeof t=="object"&&!Array.isArray(t);J.hasRegexChars=t=>ua.test(t);J.isRegexChar=t=>t.length===1&&J.hasRegexChars(t);J.escapeRegex=t=>t.replace(fa,"\\$1");J.toPosixSlashes=t=>t.replace(la,"/");J.isWindows=()=>{if(typeof navigator<"u"&&navigator.platform){let t=navigator.platform.toLowerCase();return t==="win32"||t==="windows"}return typeof process<"u"&&process.platform?process.platform==="win32":false};J.removeBackslashes=t=>t.replace(ca,e=>e==="\\"?"":e);J.escapeLast=(t,e,n)=>{let r=t.lastIndexOf(e,n);return r===-1?t:t[r-1]==="\\"?J.escapeLast(t,e,r-1):`${t.slice(0,r)}\\${t.slice(r)}`};J.removePrefix=(t,e={})=>{let n=t;return n.startsWith("./")&&(n=n.slice(2),e.prefix="./"),n};J.wrapOutput=(t,e={},n={})=>{let r=n.contains?"":"^",i=n.contains?"":"$",s=`${r}(?:${t})${i}`;return e.negated===true&&(s=`(?:^(?!${s}).*$)`),s};J.basename=(t,{windows:e}={})=>{let n=t.split(e?/[\\/]/:"/"),r=n[n.length-1];return r===""?n[n.length-2]:r};});var qr=xe((bp,Hr)=>{var Ir=Ke(),{CHAR_ASTERISK:yn,CHAR_AT:pa,CHAR_BACKWARD_SLASH:ze,CHAR_COMMA:ma,CHAR_DOT:bn,CHAR_EXCLAMATION_MARK:wn,CHAR_FORWARD_SLASH:Mr,CHAR_LEFT_CURLY_BRACE:xn,CHAR_LEFT_PARENTHESES:Sn,CHAR_LEFT_SQUARE_BRACKET:da,CHAR_PLUS:ha,CHAR_QUESTION_MARK:Dr,CHAR_RIGHT_CURLY_BRACE:ga,CHAR_RIGHT_PARENTHESES:jr,CHAR_RIGHT_SQUARE_BRACKET:ya}=We(),Ur=t=>t===Mr||t===ze,Br=t=>{t.isPrefix!==true&&(t.depth=t.isGlobstar?1/0:1);},ba=(t,e)=>{let n=e||{},r=t.length-1,i=n.parts===true||n.scanToEnd===true,s=[],o=[],a=[],l=t,c=-1,u=0,f=0,m=false,g=false,y=false,E=false,T=false,q=false,S=false,M=false,K=false,O=false,$=0,v,A,C={value:"",depth:0,isGlob:false},d=()=>c>=r,z=()=>l.charCodeAt(c+1),x=()=>(v=A,l.charCodeAt(++c));for(;c<r;){A=x();let P;if(A===ze){S=C.backslashes=true,A=x(),A===xn&&(q=true);continue}if(q===true||A===xn){for($++;d()!==true&&(A=x());){if(A===ze){S=C.backslashes=true,x();continue}if(A===xn){$++;continue}if(q!==true&&A===bn&&(A=x())===bn){if(m=C.isBrace=true,y=C.isGlob=true,O=true,i===true)continue;break}if(q!==true&&A===ma){if(m=C.isBrace=true,y=C.isGlob=true,O=true,i===true)continue;break}if(A===ga&&($--,$===0)){q=false,m=C.isBrace=true,O=true;break}}if(i===true)continue;break}if(A===Mr){if(s.push(c),o.push(C),C={value:"",depth:0,isGlob:false},O===true)continue;if(v===bn&&c===u+1){u+=2;continue}f=c+1;continue}if(n.noext!==true&&(A===ha||A===pa||A===yn||A===Dr||A===wn)===true&&z()===Sn){if(y=C.isGlob=true,E=C.isExtglob=true,O=true,A===wn&&c===u&&(K=true),i===true){for(;d()!==true&&(A=x());){if(A===ze){S=C.backslashes=true,A=x();continue}if(A===jr){y=C.isGlob=true,O=true;break}}continue}break}if(A===yn){if(v===yn&&(T=C.isGlobstar=true),y=C.isGlob=true,O=true,i===true)continue;break}if(A===Dr){if(y=C.isGlob=true,O=true,i===true)continue;break}if(A===da){for(;d()!==true&&(P=x());){if(P===ze){S=C.backslashes=true,x();continue}if(P===ya){g=C.isBracket=true,y=C.isGlob=true,O=true;break}}if(i===true)continue;break}if(n.nonegate!==true&&A===wn&&c===u){M=C.negated=true,u++;continue}if(n.noparen!==true&&A===Sn){if(y=C.isGlob=true,i===true){for(;d()!==true&&(A=x());){if(A===Sn){S=C.backslashes=true,A=x();continue}if(A===jr){O=true;break}}continue}break}if(y===true){if(O=true,i===true)continue;break}}n.noext===true&&(E=false,y=false);let L=l,h="",p="";u>0&&(h=l.slice(0,u),l=l.slice(u),f-=u),L&&y===true&&f>0?(L=l.slice(0,f),p=l.slice(f)):y===true?(L="",p=l):L=l,L&&L!==""&&L!=="/"&&L!==l&&Ur(L.charCodeAt(L.length-1))&&(L=L.slice(0,-1)),n.unescape===true&&(p&&(p=Ir.removeBackslashes(p)),L&&S===true&&(L=Ir.removeBackslashes(L)));let Z={prefix:h,input:t,start:u,base:L,glob:p,isBrace:m,isBracket:g,isGlob:y,isExtglob:E,isGlobstar:T,negated:M,negatedExtglob:K};if(n.tokens===true&&(Z.maxDepth=0,Ur(A)||o.push(C),Z.tokens=o),n.parts===true||n.tokens===true){let P;for(let U=0;U<s.length;U++){let ue=P?P+1:u,ee=s[U],he=t.slice(ue,ee);n.tokens&&(U===0&&u!==0?(o[U].isPrefix=true,o[U].value=h):o[U].value=he,Br(o[U]),Z.maxDepth+=o[U].depth),(U!==0||he!=="")&&a.push(he),P=ee;}if(P&&P+1<t.length){let U=t.slice(P+1);a.push(U),n.tokens&&(o[o.length-1].value=U,Br(o[o.length-1]),Z.maxDepth+=o[o.length-1].depth);}Z.slashes=s,Z.parts=a;}return Z};Hr.exports=ba;});var zr=xe((wp,Kr)=>{var Xe=We(),Q=Ke(),{MAX_LENGTH:Bt,POSIX_REGEX_SOURCE:wa,REGEX_NON_SPECIAL_CHARS:xa,REGEX_SPECIAL_CHARS_BACKREF:Sa,REPLACEMENTS:Vr}=Xe,Ea=(t,e)=>{if(typeof e.expandRange=="function")return e.expandRange(...t,e);t.sort();let n=`[${t.join("-")}]`;try{new RegExp(n);}catch{return t.map(i=>Q.escapeRegex(i)).join("..")}return n},ve=(t,e)=>`Missing ${t}: "${e}" - use "\\\\${e}" to match literal characters`,Gr=t=>{let e=[],n=0,r=0,i=0,s="",o=false;for(let a of t){if(o===true){s+=a,o=false;continue}if(a==="\\"){s+=a,o=true;continue}if(a==='"'){i=i===1?0:1,s+=a;continue}if(i===0){if(a==="[")n++;else if(a==="]"&&n>0)n--;else if(n===0){if(a==="(")r++;else if(a===")"&&r>0)r--;else if(a==="|"&&r===0){e.push(s),s="";continue}}}s+=a;}return e.push(s),e},Ta=t=>{let e=false;for(let n of t){if(e===true){e=false;continue}if(n==="\\"){e=true;continue}if(/[?*+@!()[\]{}]/.test(n))return false}return true},Wr=t=>{let e=t.trim(),n=true;for(;n===true;)n=false,/^@\([^\\()[\]{}|]+\)$/.test(e)&&(e=e.slice(2,-1),n=true);if(Ta(e))return e.replace(/\\(.)/g,"$1")},Aa=t=>{let e=t.map(Wr).filter(Boolean);for(let n=0;n<e.length;n++)for(let r=n+1;r<e.length;r++){let i=e[n],s=e[r],o=i[0];if(!(!o||i!==o.repeat(i.length)||s!==o.repeat(s.length))&&(i===s||i.startsWith(s)||s.startsWith(i)))return true}return false},En=(t,e=true)=>{if(t[0]!=="+"&&t[0]!=="*"||t[1]!=="(")return;let n=0,r=0,i=0,s=false;for(let o=1;o<t.length;o++){let a=t[o];if(s===true){s=false;continue}if(a==="\\"){s=true;continue}if(a==='"'){i=i===1?0:1;continue}if(i!==1){if(a==="["){n++;continue}if(a==="]"&&n>0){n--;continue}if(!(n>0)){if(a==="("){r++;continue}if(a===")"&&(r--,r===0))return e===true&&o!==t.length-1?void 0:{type:t[0],body:t.slice(2,o),end:o}}}}},_a=t=>{let e=0,n=[];for(;e<t.length;){let i=En(t.slice(e),false);if(!i||i.type!=="*")return;let s=Gr(i.body).map(a=>a.trim());if(s.length!==1)return;let o=Wr(s[0]);if(!o||o.length!==1)return;n.push(o),e+=i.end+1;}return n.length<1?void 0:`${n.length===1?Q.escapeRegex(n[0]):`[${n.map(i=>Q.escapeRegex(i)).join("")}]`}*`},Ca=t=>{let e=0,n=t.trim(),r=En(n);for(;r;)e++,n=r.body.trim(),r=En(n);return e},Ra=(t,e)=>{if(e.maxExtglobRecursion===false)return {risky:false};let n=typeof e.maxExtglobRecursion=="number"?e.maxExtglobRecursion:Xe.DEFAULT_MAX_EXTGLOB_RECURSION,r=Gr(t).map(i=>i.trim());if(r.length>1&&(r.some(i=>i==="")||r.some(i=>/^[*?]+$/.test(i))||Aa(r)))return {risky:true};for(let i of r){let s=_a(i);if(s)return {risky:true,safeOutput:s};if(Ca(i)>n)return {risky:true}}return {risky:false}},Tn=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");t=Vr[t]||t;let n={...e},r=typeof n.maxLength=="number"?Math.min(Bt,n.maxLength):Bt,i=t.length;if(i>r)throw new SyntaxError(`Input length: ${i}, exceeds maximum allowed length: ${r}`);let s={type:"bos",value:"",output:n.prepend||""},o=[s],a=n.capture?"":"?:",l=Xe.globChars(n.windows),c=Xe.extglobChars(l),{DOT_LITERAL:u,PLUS_LITERAL:f,SLASH_LITERAL:m,ONE_CHAR:g,DOTS_SLASH:y,NO_DOT:E,NO_DOT_SLASH:T,NO_DOTS_SLASH:q,QMARK:S,QMARK_NO_DOT:M,STAR:K,START_ANCHOR:O}=l,$=w=>`(${a}(?:(?!${O}${w.dot?y:u}).)*?)`,v=n.dot?"":E,A=n.dot?S:M,C=n.bash===true?$(n):K;n.capture&&(C=`(${C})`),typeof n.noext=="boolean"&&(n.noextglob=n.noext);let d={input:t,index:-1,start:0,dot:n.dot===true,consumed:"",output:"",prefix:"",backtrack:false,negated:false,brackets:0,braces:0,parens:0,quotes:0,globstar:false,tokens:o};t=Q.removePrefix(t,d),i=t.length;let z=[],x=[],L=[],h=s,p,Z=()=>d.index===i-1,P=d.peek=(w=1)=>t[d.index+w],U=d.advance=()=>t[++d.index]||"",ue=()=>t.slice(d.index+1),ee=(w="",j=0)=>{d.consumed+=w,d.index+=j;},he=w=>{d.output+=w.output!=null?w.output:w.value,ee(w.value);},Qi=()=>{let w=1;for(;P()==="!"&&(P(2)!=="("||P(3)==="?");)U(),d.start++,w++;return w%2===0?false:(d.negated=true,d.start++,true)},wt=w=>{d[w]++,L.push(w);},ge=w=>{d[w]--,L.pop();},R=w=>{if(h.type==="globstar"){let j=d.braces>0&&(w.type==="comma"||w.type==="brace"),b=w.extglob===true||z.length&&(w.type==="pipe"||w.type==="paren");w.type!=="slash"&&w.type!=="paren"&&!j&&!b&&(d.output=d.output.slice(0,-h.output.length),h.type="star",h.value="*",h.output=C,d.output+=h.output);}if(z.length&&w.type!=="paren"&&(z[z.length-1].inner+=w.value),(w.value||w.output)&&he(w),h&&h.type==="text"&&w.type==="text"){h.output=(h.output||h.value)+w.value,h.value+=w.value;return}w.prev=h,o.push(w),h=w;},xt=(w,j)=>{let b={...c[j],conditions:1,inner:""};b.prev=h,b.parens=d.parens,b.output=d.output,b.startIndex=d.index,b.tokensIndex=o.length;let k=(n.capture?"(":"")+b.open;wt("parens"),R({type:w,value:j,output:d.output?"":g}),R({type:"paren",extglob:true,value:U(),output:k}),z.push(b);},Zi=w=>{let j=t.slice(w.startIndex,d.index+1),b=t.slice(w.startIndex+2,d.index),k=Ra(b,n);if((w.type==="plus"||w.type==="star")&&k.risky){let I=k.safeOutput?(w.output?"":g)+(n.capture?`(${k.safeOutput})`:k.safeOutput):void 0,ae=o[w.tokensIndex];ae.type="text",ae.value=j,ae.output=I||Q.escapeRegex(j);for(let le=w.tokensIndex+1;le<o.length;le++)o[le].value="",o[le].output="",delete o[le].suffix;d.output=w.output+ae.output,d.backtrack=true,R({type:"paren",extglob:true,value:p,output:""}),ge("parens");return}let D=w.close+(n.capture?")":""),G;if(w.type==="negate"){let I=C;if(w.inner&&w.inner.length>1&&w.inner.includes("/")&&(I=$(n)),(I!==C||Z()||/^\)+$/.test(ue()))&&(D=w.close=`)$))${I}`),w.inner.includes("*")&&(G=ue())&&/^\.[^\\/.]+$/.test(G)){let ae=Tn(G,{...e,fastpaths:false}).output;D=w.close=`)${ae})${I})`;}w.prev.type==="bos"&&(d.negatedExtglob=true);}R({type:"paren",extglob:true,value:p,output:D}),ge("parens");};if(n.fastpaths!==false&&!/(^[*!]|[/()[\]{}"])/.test(t)){let w=false,j=t.replace(Sa,(b,k,D,G,I,ae)=>G==="\\"?(w=true,b):G==="?"?k?k+G+(I?S.repeat(I.length):""):ae===0?A+(I?S.repeat(I.length):""):S.repeat(D.length):G==="."?u.repeat(D.length):G==="*"?k?k+G+(I?C:""):C:k?b:`\\${b}`);return w===true&&(n.unescape===true?j=j.replace(/\\/g,""):j=j.replace(/\\+/g,b=>b.length%2===0?"\\\\":b?"\\":"")),j===t&&n.contains===true?(d.output=t,d):(d.output=Q.wrapOutput(j,d,e),d)}for(;!Z();){if(p=U(),p==="\0")continue;if(p==="\\"){let b=P();if(b==="/"&&n.bash!==true||b==="."||b===";")continue;if(!b){p+="\\",R({type:"text",value:p});continue}let k=/^\\+/.exec(ue()),D=0;if(k&&k[0].length>2&&(D=k[0].length,d.index+=D,D%2!==0&&(p+="\\")),n.unescape===true?p=U():p+=U(),d.brackets===0){R({type:"text",value:p});continue}}if(d.brackets>0&&(p!=="]"||h.value==="["||h.value==="[^")){if(n.posix!==false&&p===":"){let b=h.value.slice(1);if(b.includes("[")&&(h.posix=true,b.includes(":"))){let k=h.value.lastIndexOf("["),D=h.value.slice(0,k),G=h.value.slice(k+2),I=wa[G];if(I){h.value=D+I,d.backtrack=true,U(),!s.output&&o.indexOf(h)===1&&(s.output=g);continue}}}(p==="["&&P()!==":"||p==="-"&&P()==="]")&&(p=`\\${p}`),p==="]"&&(h.value==="["||h.value==="[^")&&(p=`\\${p}`),n.posix===true&&p==="!"&&h.value==="["&&(p="^"),h.value+=p,he({value:p});continue}if(d.quotes===1&&p!=='"'){p=Q.escapeRegex(p),h.value+=p,he({value:p});continue}if(p==='"'){d.quotes=d.quotes===1?0:1,n.keepQuotes===true&&R({type:"text",value:p});continue}if(p==="("){wt("parens"),R({type:"paren",value:p});continue}if(p===")"){if(d.parens===0&&n.strictBrackets===true)throw new SyntaxError(ve("opening","("));let b=z[z.length-1];if(b&&d.parens===b.parens+1){Zi(z.pop());continue}R({type:"paren",value:p,output:d.parens?")":"\\)"}),ge("parens");continue}if(p==="["){if(n.nobracket===true||!ue().includes("]")){if(n.nobracket!==true&&n.strictBrackets===true)throw new SyntaxError(ve("closing","]"));p=`\\${p}`;}else wt("brackets");R({type:"bracket",value:p});continue}if(p==="]"){if(n.nobracket===true||h&&h.type==="bracket"&&h.value.length===1){R({type:"text",value:p,output:`\\${p}`});continue}if(d.brackets===0){if(n.strictBrackets===true)throw new SyntaxError(ve("opening","["));R({type:"text",value:p,output:`\\${p}`});continue}ge("brackets");let b=h.value.slice(1);if(h.posix!==true&&b[0]==="^"&&!b.includes("/")&&(p=`/${p}`),h.value+=p,he({value:p}),n.literalBrackets===false||Q.hasRegexChars(b))continue;let k=Q.escapeRegex(h.value);if(d.output=d.output.slice(0,-h.value.length),n.literalBrackets===true){d.output+=k,h.value=k;continue}h.value=`(${a}${k}|${h.value})`,d.output+=h.value;continue}if(p==="{"&&n.nobrace!==true){wt("braces");let b={type:"brace",value:p,output:"(",outputIndex:d.output.length,tokensIndex:d.tokens.length};x.push(b),R(b);continue}if(p==="}"){let b=x[x.length-1];if(n.nobrace===true||!b){R({type:"text",value:p,output:p});continue}let k=")";if(b.dots===true){let D=o.slice(),G=[];for(let I=D.length-1;I>=0&&(o.pop(),D[I].type!=="brace");I--)D[I].type!=="dots"&&G.unshift(D[I].value);k=Ea(G,n),d.backtrack=true;}if(b.comma!==true&&b.dots!==true){let D=d.output.slice(0,b.outputIndex),G=d.tokens.slice(b.tokensIndex);b.value=b.output="\\{",p=k="\\}",d.output=D;for(let I of G)d.output+=I.output||I.value;}R({type:"brace",value:p,output:k}),ge("braces"),x.pop();continue}if(p==="|"){z.length>0&&z[z.length-1].conditions++,R({type:"text",value:p});continue}if(p===","){let b=p,k=x[x.length-1];k&&L[L.length-1]==="braces"&&(k.comma=true,b="|"),R({type:"comma",value:p,output:b});continue}if(p==="/"){if(h.type==="dot"&&d.index===d.start+1){d.start=d.index+1,d.consumed="",d.output="",o.pop(),h=s;continue}R({type:"slash",value:p,output:m});continue}if(p==="."){if(d.braces>0&&h.type==="dot"){h.value==="."&&(h.output=u);let b=x[x.length-1];h.type="dots",h.output+=p,h.value+=p,b.dots=true;continue}if(d.braces+d.parens===0&&h.type!=="bos"&&h.type!=="slash"){R({type:"text",value:p,output:u});continue}R({type:"dot",value:p,output:u});continue}if(p==="?"){if(!(h&&h.value==="(")&&n.noextglob!==true&&P()==="("&&P(2)!=="?"){xt("qmark",p);continue}if(h&&h.type==="paren"){let k=P(),D=p;(h.value==="("&&!/[!=<:]/.test(k)||k==="<"&&!/<([!=]|\w+>)/.test(ue()))&&(D=`\\${p}`),R({type:"text",value:p,output:D});continue}if(n.dot!==true&&(h.type==="slash"||h.type==="bos")){R({type:"qmark",value:p,output:M});continue}R({type:"qmark",value:p,output:S});continue}if(p==="!"){if(n.noextglob!==true&&P()==="("&&(P(2)!=="?"||!/[!=<:]/.test(P(3)))){xt("negate",p);continue}if(n.nonegate!==true&&d.index===0){Qi();continue}}if(p==="+"){if(n.noextglob!==true&&P()==="("&&P(2)!=="?"){xt("plus",p);continue}if(h&&h.value==="("||n.regex===false){R({type:"plus",value:p,output:f});continue}if(h&&(h.type==="bracket"||h.type==="paren"||h.type==="brace")||d.parens>0){R({type:"plus",value:p});continue}R({type:"plus",value:f});continue}if(p==="@"){if(n.noextglob!==true&&P()==="("&&P(2)!=="?"){R({type:"at",extglob:true,value:p,output:""});continue}R({type:"text",value:p});continue}if(p!=="*"){(p==="$"||p==="^")&&(p=`\\${p}`);let b=xa.exec(ue());b&&(p+=b[0],d.index+=b[0].length),R({type:"text",value:p});continue}if(h&&(h.type==="globstar"||h.star===true)){h.type="star",h.star=true,h.value+=p,h.output=C,d.backtrack=true,d.globstar=true,ee(p);continue}let w=ue();if(n.noextglob!==true&&/^\([^?]/.test(w)){xt("star",p);continue}if(h.type==="star"){if(n.noglobstar===true){ee(p);continue}let b=h.prev,k=b.prev,D=b.type==="slash"||b.type==="bos",G=k&&(k.type==="star"||k.type==="globstar");if(n.bash===true&&(!D||w[0]&&w[0]!=="/")){R({type:"star",value:p,output:""});continue}let I=d.braces>0&&(b.type==="comma"||b.type==="brace"),ae=z.length&&(b.type==="pipe"||b.type==="paren");if(!D&&b.type!=="paren"&&!I&&!ae){R({type:"star",value:p,output:""});continue}for(;w.slice(0,3)==="/**";){let le=t[d.index+4];if(le&&le!=="/")break;w=w.slice(3),ee("/**",3);}if(b.type==="bos"&&Z()){h.type="globstar",h.value+=p,h.output=$(n),d.output=h.output,d.globstar=true,ee(p);continue}if(b.type==="slash"&&b.prev.type!=="bos"&&!G&&Z()){d.output=d.output.slice(0,-(b.output+h.output).length),b.output=`(?:${b.output}`,h.type="globstar",h.output=$(n)+(n.strictSlashes?")":"|$)"),h.value+=p,d.globstar=true,d.output+=b.output+h.output,ee(p);continue}if(b.type==="slash"&&b.prev.type!=="bos"&&w[0]==="/"){let le=w[1]!==void 0?"|$":"";d.output=d.output.slice(0,-(b.output+h.output).length),b.output=`(?:${b.output}`,h.type="globstar",h.output=`${$(n)}${m}|${m}${le})`,h.value+=p,d.output+=b.output+h.output,d.globstar=true,ee(p+U()),R({type:"slash",value:"/",output:""});continue}if(b.type==="bos"&&w[0]==="/"){h.type="globstar",h.value+=p,h.output=`(?:^|${m}|${$(n)}${m})`,d.output=h.output,d.globstar=true,ee(p+U()),R({type:"slash",value:"/",output:""});continue}d.output=d.output.slice(0,-h.output.length),h.type="globstar",h.output=$(n),h.value+=p,d.output+=h.output,d.globstar=true,ee(p);continue}let j={type:"star",value:p,output:C};if(n.bash===true){j.output=".*?",(h.type==="bos"||h.type==="slash")&&(j.output=v+j.output),R(j);continue}if(h&&(h.type==="bracket"||h.type==="paren")&&n.regex===true){j.output=p,R(j);continue}(d.index===d.start||h.type==="slash"||h.type==="dot")&&(h.type==="dot"?(d.output+=T,h.output+=T):n.dot===true?(d.output+=q,h.output+=q):(d.output+=v,h.output+=v),P()!=="*"&&(d.output+=g,h.output+=g)),R(j);}for(;d.brackets>0;){if(n.strictBrackets===true)throw new SyntaxError(ve("closing","]"));d.output=Q.escapeLast(d.output,"["),ge("brackets");}for(;d.parens>0;){if(n.strictBrackets===true)throw new SyntaxError(ve("closing",")"));d.output=Q.escapeLast(d.output,"("),ge("parens");}for(;d.braces>0;){if(n.strictBrackets===true)throw new SyntaxError(ve("closing","}"));d.output=Q.escapeLast(d.output,"{"),ge("braces");}if(n.strictSlashes!==true&&(h.type==="star"||h.type==="bracket")&&R({type:"maybe_slash",value:"",output:`${m}?`}),d.backtrack===true){d.output="";for(let w of d.tokens)d.output+=w.output!=null?w.output:w.value,w.suffix&&(d.output+=w.suffix);}return d};Tn.fastpaths=(t,e)=>{let n={...e},r=typeof n.maxLength=="number"?Math.min(Bt,n.maxLength):Bt,i=t.length;if(i>r)throw new SyntaxError(`Input length: ${i}, exceeds maximum allowed length: ${r}`);t=Vr[t]||t;let{DOT_LITERAL:s,SLASH_LITERAL:o,ONE_CHAR:a,DOTS_SLASH:l,NO_DOT:c,NO_DOTS:u,NO_DOTS_SLASH:f,STAR:m,START_ANCHOR:g}=Xe.globChars(n.windows),y=n.dot?u:c,E=n.dot?f:c,T=n.capture?"":"?:",q={negated:false,prefix:""},S=n.bash===true?".*?":m;n.capture&&(S=`(${S})`);let M=v=>v.noglobstar===true?S:`(${T}(?:(?!${g}${v.dot?l:s}).)*?)`,K=v=>{switch(v){case "*":return `${y}${a}${S}`;case ".*":return `${s}${a}${S}`;case "*.*":return `${y}${S}${s}${a}${S}`;case "*/*":return `${y}${S}${o}${a}${E}${S}`;case "**":return y+M(n);case "**/*":return `(?:${y}${M(n)}${o})?${E}${a}${S}`;case "**/*.*":return `(?:${y}${M(n)}${o})?${E}${S}${s}${a}${S}`;case "**/.*":return `(?:${y}${M(n)}${o})?${s}${a}${S}`;default:{let A=/^(.*?)\.(\w+)$/.exec(v);if(!A)return;let C=K(A[1]);return C?C+s+A[2]:void 0}}},O=Q.removePrefix(t,q),$=K(O);return $&&n.strictSlashes!==true&&($+=`${o}?`),$};Kr.exports=Tn;});var Yr=xe((xp,Jr)=>{var ka=qr(),An=zr(),Xr=Ke(),$a=We(),va=t=>t&&typeof t=="object"&&!Array.isArray(t),H=(t,e,n=false)=>{if(Array.isArray(t)){let u=t.map(m=>H(m,e,n));return m=>{for(let g of u){let y=g(m);if(y)return y}return false}}let r=va(t)&&t.tokens&&t.input;if(t===""||typeof t!="string"&&!r)throw new TypeError("Expected pattern to be a non-empty string");let i=e||{},s=i.windows,o=r?H.compileRe(t,e):H.makeRe(t,e,false,true),a=o.state;delete o.state;let l=()=>false;if(i.ignore){let u={...e,ignore:null,onMatch:null,onResult:null};l=H(i.ignore,u,n);}let c=(u,f=false)=>{let{isMatch:m,match:g,output:y}=H.test(u,o,e,{glob:t,posix:s}),E={glob:t,state:a,regex:o,posix:s,input:u,output:y,match:g,isMatch:m};return typeof i.onResult=="function"&&i.onResult(E),m===false?(E.isMatch=false,f?E:false):l(u)?(typeof i.onIgnore=="function"&&i.onIgnore(E),E.isMatch=false,f?E:false):(typeof i.onMatch=="function"&&i.onMatch(E),f?E:true)};return n&&(c.state=a),c};H.test=(t,e,n,{glob:r,posix:i}={})=>{if(typeof t!="string")throw new TypeError("Expected input to be a string");if(t==="")return {isMatch:false,output:""};let s=n||{},o=s.format||(i?Xr.toPosixSlashes:null),a=t===r,l=a&&o?o(t):t;return a===false&&(l=o?o(t):t,a=l===r),(a===false||s.capture===true)&&(s.matchBase===true||s.basename===true?a=H.matchBase(t,e,n,i):a=e.exec(l)),{isMatch:!!a,match:a,output:l}};H.matchBase=(t,e,n)=>(e instanceof RegExp?e:H.makeRe(e,n)).test(Xr.basename(t));H.isMatch=(t,e,n)=>H(e,n)(t);H.parse=(t,e)=>Array.isArray(t)?t.map(n=>H.parse(n,e)):An(t,{...e,fastpaths:false});H.scan=(t,e)=>ka(t,e);H.compileRe=(t,e,n=false,r=false)=>{if(n===true)return t.output;let i=e||{},s=i.contains?"":"^",o=i.contains?"":"$",a=`${s}(?:${t.output})${o}`;t&&t.negated===true&&(a=`^(?!${a}).*$`);let l=H.toRegex(a,e);return r===true&&(l.state=t),l};H.makeRe=(t,e={},n=false,r=false)=>{if(!t||typeof t!="string")throw new TypeError("Expected a non-empty string");let i={negated:false,fastpaths:true};return e.fastpaths!==false&&(t[0]==="."||t[0]==="*")&&(i.output=An.fastpaths(t,e)),i.output||(i=An(t,e)),H.compileRe(i,e,n,r)};H.toRegex=(t,e)=>{try{let n=e||{};return new RegExp(t,n.flags||(n.nocase?"i":""))}catch(n){if(e&&e.debug===true)throw n;return /$^/}};H.constants=$a;Jr.exports=H;});var ti=xe((Sp,ei)=>{var Qr=Yr(),Na=Ke();function Zr(t,e,n=false){return e&&(e.windows===null||e.windows===void 0)&&(e={...e,windows:Na.isWindows()}),Qr(t,e,n)}Object.assign(Zr,Qr);ei.exports=Zr;});function tt(t){if("String"in t)return t.String.sval}function me(t){return t.map(tt).filter(e=>e!=null)}function Si(t){return Object.keys(t)[0]}function Ei(t){if("A_Const"in t){if(t.A_Const.ival)return t.A_Const.ival.ival;if(t.A_Const.fval)return t.A_Const.fval.fval;if(t.A_Const.sval)return t.A_Const.sval.sval;if(t.A_Const.boolval)return t.A_Const.boolval.boolval;if(t.A_Const.isnull)return null}}var Ht=F(()=>{});function Ti(t){let e=t.toLowerCase();return ["serial","serial4","bigserial","serial8","smallserial","serial2"].includes(e)}function Ai(t){let e=t.toLowerCase();return ["varchar","character varying","char","character","bpchar"].includes(e)}function _i(t){let e=t.toLowerCase();return ["numeric","decimal"].includes(e)}var Nn,qt,Rl,Ln=F(()=>{Ht();Nn=class extends Error{},qt=class extends Nn{constructor(n,r){super(r??`Unsupported node type: ${Si(n)}`);this.node=n;}};Rl={CreateEnumStmt:{react:"ignore"},CreateDomainStmt:{react:"warn"},CreateSeqStmt:{react:"ignore"},AlterSeqStmt:{react:"ignore"},CreateSchemaStmt:{react:"warn"},CreatePolicyStmt:{react:"ignore"},AlterPolicyStmt:{react:"ignore"},PartitionElem:{react:"error"},PartitionCmd:{react:"error"},VariableSetStmt:{react:"ignore"},CompositeTypeStmt:{react:"error"},AlterEnumStmt:{react:"error"},AlterObjectSchemaStmt:{react:"error"},AlterOwnerStmt:{react:"error"},AlterTypeStmt:{react:"error"},AlterFunctionStmt:{react:"error"},AlterDefaultPrivilegesStmt:{react:"error"},GrantStmt:{react:"error"},GrantRoleStmt:{react:"error"},CopyStmt:{react:"error"},CreateCastStmt:{react:"error"},AlterOpFamilyStmt:{react:"error"},AlterOperatorStmt:{react:"error"},TruncateStmt:{react:"error"},A_Indirection:{react:"error"},XmlExpr:{react:"error"},XmlSerialize:{react:"error"},RangeTableSample:{react:"error"},GroupingSet:{react:"error"}},new Map(Object.entries(Rl));});var ne,Vt,Ci=F(()=>{Ht();Ln();ne=class extends qt{constructor(e,n){super(e,`Unsupported expression: ${n}`);}},Vt=class{deparse(e){if("A_Const"in e){let i=e.A_Const;if(i.boolval!==void 0)return i.boolval.boolval?{}:{$always:false}}let n=Object.keys(e)[0],r=this[n];if(!r)throw new ne({[n]:e},`Unsupported expression: ${n}`);return r.call(this,e[n])}deparseValue(e){if("A_Const"in e)return this.A_Const(e.A_Const);if("ColumnRef"in e)return this.ColumnRef(e.ColumnRef);if("FuncCall"in e)return this.FuncCall(e.FuncCall);if("SubLink"in e)return this.SubLink(e.SubLink);if("TypeCast"in e)return this.TypeCast(e.TypeCast);if("A_Expr"in e){let r=this.isJwtAccessor(e.A_Expr);return r||this.A_Expr(e.A_Expr)}if("BoolExpr"in e)return this.BoolExpr(e.BoolExpr);let n=Object.keys(e)[0];throw new ne({[n]:e},`deparseValue: ${n}`)}A_Expr(e){if(e.kind==="AEXPR_OP"){let n=e.name?.[0],r=n?tt(n):void 0;if(!r)throw new ne({A_Expr:e},"A_Expr missing operator");let i=this.isJwtAccessor(e);if(i)return {[i]:{}};let s=e.lexpr?this.deparseValue(e.lexpr):void 0,o=e.rexpr?this.deparseValue(e.rexpr):void 0,a=this.mapOperator(r);if(!a)throw new ne({A_Expr:e},`Unsupported operator: ${r}`);let l=e.rexpr!=null&&"ColumnRef"in e.rexpr;if(typeof s=="string"&&s.startsWith("{{")&&l)return {[o]:{[a]:s}};let c=l&&typeof o=="string"?{$ref:o}:o;return {[s]:{[a]:c}}}if(e.kind==="AEXPR_LIKE"||e.kind==="AEXPR_ILIKE"){let n=e.lexpr?this.deparseValue(e.lexpr):void 0,r=e.rexpr?this.deparseValue(e.rexpr):void 0,s=(e.name?.[0]?tt(e.name[0]):"~~")==="!~~"?"$notLike":"$like";return {[n]:{[s]:r}}}if(e.kind==="AEXPR_IN"){let n=e.lexpr?this.deparseValue(e.lexpr):void 0,r=e.rexpr&&"List"in e.rexpr&&e.rexpr.List.items?e.rexpr.List.items.map(i=>this.deparseValue(i)):[];return {[n]:{$in:r}}}throw new ne({A_Expr:e},`A_Expr kind: ${e.kind}`)}BoolExpr(e){let n=e.args??[];switch(e.boolop){case "AND_EXPR":return {$and:n.map(r=>this.deparse(r))};case "OR_EXPR":return {$or:n.map(r=>this.deparse(r))};case "NOT_EXPR":return {$not:this.deparse(n[0])};default:throw new ne({BoolExpr:e},`BoolExpr op: ${e.boolop}`)}}NullTest(e){let n=e.arg?this.deparseValue(e.arg):void 0;return e.nulltesttype==="IS_NULL"?{[n]:{$is:null}}:{[n]:{$isNot:null}}}SubLink(e){if(e.subLinkType==="ANY_SUBLINK"){let n=e.testexpr?this.deparseValue(e.testexpr):void 0,r=e.subselect?this.SelectStmt(e.subselect.SelectStmt):void 0;return {[n]:{$in:r}}}if(e.subLinkType==="EXISTS_SUBLINK")return {$exists:e.subselect?this.SelectStmt(e.subselect.SelectStmt):void 0};if(e.subLinkType==="EXPR_SUBLINK"){let n=e.subselect?e.subselect.SelectStmt:void 0;if(n?.fromClause?.length)return this.SelectStmt(n);if(n?.targetList?.[0]){let r=n.targetList[0],i="ResTarget"in r?r.ResTarget:void 0;if(i?.val){let s=this.deparseValue(i.val);return s}}}throw new ne({SubLink:e},`SubLink type: ${e.subLinkType}`)}SelectStmt(e){let{from:n,schema:r,join:i}=this.deparseFromClause(e.fromClause??[]),s=[];for(let m of e.targetList??[]){let g="ResTarget"in m?m.ResTarget:void 0;if(g?.val){let y=this.deparseValue(g.val);Array.isArray(y)?s.push(...y.map(String)):y!=null&&y!==""&&s.push(String(y));}}let o=e.whereClause?this.deparse(e.whereClause):void 0,a=this.deparseSortClause(e.sortClause),l=this.deparseLimit(e.limitCount),c=this.deparseLimit(e.limitOffset),u=this.deparseGroupClause(e.groupClause),f={type:"query",from:n,select:s};return r&&(f.schema=r),Object.keys(i).length>0&&(f.join=i),o&&(f.where=o),a.length>0&&(f.order=a),l!==void 0&&(f.limit=l),c!==void 0&&(f.offset=c),u.length>0&&(f.group=u),f}FuncCall(e){let n=this.isAuthFunc(e.funcname??[]);if(n)return n;throw new ne({FuncCall:e},`FuncCall: ${me(e.funcname??[]).join(".")}`)}ColumnRef(e){let n=me(e.fields??[]);return n.length===1?n[0]:n.join(".")}A_Const(e){if(e.boolval!==void 0)return e.boolval.boolval;if(e.ival!==void 0)return e.ival.ival??0;if(e.fval!==void 0)return parseFloat(e.fval.fval??"0");if(e.sval!==void 0)return e.sval.sval??"";if(e.isnull)return null;throw new ne({A_Const:e},"A_Const: unknown variant")}TypeCast(e){if(!e.arg)throw new ne({TypeCast:e},"TypeCast: missing arg");return this.deparseValue(e.arg)}BooleanTest(e){let n=e.arg?this.deparseValue(e.arg):void 0;return e.booltesttype==="IS_TRUE"?{[n]:{$eq:true}}:{[n]:{$eq:false}}}deparseFromClause(e){let n={};if(e.length===0)return {from:"",join:n};let r=e[0];if("RangeVar"in r){let i=r.RangeVar;return {from:i.relname??"",schema:i.schemaname,join:n}}if("JoinExpr"in r){let{from:i,schema:s}=this.walkJoinExpr(r.JoinExpr,n);return {from:i,schema:s,join:n}}return {from:"",join:n}}walkJoinExpr(e,n){let r={from:""};if(e.larg)if("RangeVar"in e.larg){let i=e.larg.RangeVar;r={from:i.relname??"",schema:i.schemaname};}else "JoinExpr"in e.larg&&(r=this.walkJoinExpr(e.larg.JoinExpr,n));if(e.rarg&&"RangeVar"in e.rarg){let i=e.rarg.RangeVar,s=i.relname??"",o=i.alias?.aliasname??s,a=e.jointype==="JOIN_LEFT"?"left":"inner",l={from:s,type:a};e.quals&&(l.on=this.deparse(e.quals));let c=o;if(c in n){let u=2;for(;`${c}_${u}`in n;)u++;c=`${c}_${u}`;}n[c]=l;}return r}deparseSortClause(e){if(!e)return [];let n=[];for(let r of e){if(!("SortBy"in r))continue;let i=r.SortBy;if(!i.node)continue;let s=String(this.deparseValue(i.node)),o=i.sortby_dir==="SORTBY_DESC"?"desc":"asc",a={column:s,direction:o};i.sortby_nulls==="SORTBY_NULLS_FIRST"?a.nullsFirst=true:i.sortby_nulls==="SORTBY_NULLS_LAST"&&(a.nullsFirst=false),n.push(a);}return n}deparseLimit(e){if(!e)return;let n=this.deparseValue(e);return typeof n=="number"?n:Number(n)}deparseGroupClause(e){return e?e.map(n=>String(this.deparseValue(n))):[]}isAuthFunc(e){let n=me(e);if(n.length===2&&n[0]==="auth"){if(n[1]==="uid")return "{{auth.uid}}";if(n[1]==="jwt")return "{{auth.jwt}}";if(n[1]==="role")return "{{auth.role}}";throw new Error(`Unsupported auth function: "${n.slice(1).join(".")}"`)}return null}isJwtAccessor(e){if(e.kind!=="AEXPR_OP")return null;let n=e.name?.[0]?tt(e.name[0]):void 0;if(n!=="->"&&n!=="->>")return null;let r=e.rexpr&&"A_Const"in e.rexpr?e.rexpr.A_Const.sval?.sval:void 0;if(r===void 0)return null;if(e.lexpr&&"FuncCall"in e.lexpr)return this.isAuthFunc(e.lexpr.FuncCall.funcname??[])==="{{auth.jwt}}"?`{{auth.jwt.${r}}}`:null;if(e.lexpr&&"A_Expr"in e.lexpr){let i=this.isJwtAccessor(e.lexpr.A_Expr);if(i)return `${i.slice(0,-2)}.${r}}}`}return null}mapOperator(e){switch(e){case "=":return "$eq";case "<>":case "!=":return "$neq";case ">":return "$gt";case ">=":return "$gte";case "<":return "$lt";case "<=":return "$lte";case "~~":return "$like";case "!~~":return "$notLike";default:return}}};});var _e,Ri=F(()=>{_e=class t{constructor(e){this.data=e;}appliesTo(e){return this.data.command==="ALL"||this.data.command===e}appliesToRole(e){return this.data.roles.length===0||this.data.roles.includes(e)}toJSON(){return this.data}static fromJSON(e){return new t(e)}};});var nt,Pn=F(()=>{nt=class extends Error{constructor(n,r,i,s){super(`check constraint "${i}" violated for ${n}.${r}`);this.table=n;this.column=r;this.constraint=i;this.value=s;this.name="CheckConstraintError";}};});var W,de=F(()=>{Pn();W=class{context;factoryExtra;constructor(e){this.context=e;}get isShimBacked(){return false}checkConstraint(){return null}serialize(e){return e}deserialize(e){return e}validateStorage(e){return {status:"pass",message:null}}validationFail(e,n){return {status:"fail",message:e,action:n}}validationPass(){return {status:"pass",message:null}}isNullish(e){return e==null}toColumnDDL(e){let{includeNullable:n=true}=e??{},r=[],i=this.context.column;r.push(this.quoteIfNeeded(i)),r.push(this.sqliteType),this.context.isPrimaryKey&&r.push("PRIMARY KEY"),this.context.isSerial&&this.context.isPrimaryKey&&r.push("AUTOINCREMENT"),n&&!this.context.nullable&&!this.context.isPrimaryKey&&r.push("NOT NULL"),this.context.isUnique&&!this.context.isPrimaryKey&&r.push("UNIQUE"),this.context.defaultValue!==null&&r.push(`DEFAULT ${this.context.defaultValue}`);let s=this.checkConstraint();return s&&r.push(`CHECK (${s})`),r.join(" ")}checkError(e,n){return new nt(this.context.table,this.context.column,e,n)}quoteIfNeeded(e){return /^[a-zA-Z_][a-zA-Z0-9_]*$/.test(e)?e:`"${e}"`}};});var Ce,Gt=F(()=>{de();Ce=class extends W{get sqliteType(){return "INTEGER"}};});var rt,On=F(()=>{Gt();rt=class extends Ce{constructor(e){super({...e,isSerial:true});}};});function kl(t,e){let{precision:n,scale:r}=e,i=10**r,s=10**(n-r);return Math.abs(Math.round(t*i)-t*i)<1e-4&&Math.abs(t)<s}var it,Fn=F(()=>{de();it=class extends W{numericPrecision;constructor(e,n){super(e),this.numericPrecision=n;}get isShimBacked(){return this.numericPrecision!==void 0}get sqliteType(){return "REAL"}checkConstraint(){if(this.numericPrecision){let{precision:e,scale:n}=this.numericPrecision,r=this.context.column,i=10**n,s=10**(e-n);return `ABS(ROUND(${r} * ${i}) - ${r} * ${i}) < 0.0001 AND ABS(${r}) < ${s}`}return null}validateStorage(e){if(this.isNullish(e))return this.validationPass();if(typeof e!="number"||!Number.isFinite(e))return this.validationFail("Expected finite number.","Patch rows with finite numbers.");if(this.numericPrecision){let{precision:n,scale:r}=this.numericPrecision;if(!kl(e,this.numericPrecision))return this.validationFail(`Does not fit numeric(${n}, ${r}).`,"Patch rows within numeric precision.")}return this.validationPass()}};});var B,se=F(()=>{de();B=class extends W{lengthConstraint;constructor(e,n){super(e),this.lengthConstraint=n;}get isShimBacked(){return this.lengthConstraint!==void 0}get sqliteType(){return "TEXT"}checkConstraint(){return this.lengthConstraint!==void 0?`length(${this.context.column}) <= ${this.lengthConstraint}`:null}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"?this.validationFail("Expected text.","Patch rows with text values."):this.lengthConstraint!==void 0&&Array.from(e).length>this.lengthConstraint?this.validationFail(`Exceeds length ${this.lengthConstraint}.`,"Patch rows with shorter text."):this.validationPass()}};});var st,In=F(()=>{de();st=class extends W{get sqliteType(){return "BLOB"}};});var ot,Dn=F(()=>{de();ot=class extends W{get isShimBacked(){return true}get sqliteType(){return "INTEGER"}checkConstraint(){return `${this.context.column} IN (0, 1)`}serialize(e){if(this.isNullish(e))return e;if(e===true||e===1)return 1;if(e===false||e===0)return 0;throw this.checkError("boolean_range",e)}deserialize(e){if(this.isNullish(e)||e===true||e===false)return e;if(typeof e=="number"&&Number.isFinite(e)){if(e===1)return true;if(e===0)return false}return e===1n?true:e===0n?false:e==="1"||e==="true"?true:e==="0"||e==="false"?false:e}validateStorage(e){return this.isNullish(e)?this.validationPass():e===1||e===0?this.validationPass():this.validationFail("Expected 0 or 1.","Patch rows with boolean values.")}};});function ki(t){try{return {ok:!0,value:JSON.parse(t)}}catch{return {ok:false}}}var at,jn=F(()=>{de();at=class extends W{get isShimBacked(){return true}get sqliteType(){return "TEXT"}checkConstraint(){let e=this.context.column;return `${e} IS NULL OR json_valid(${e})`}serialize(e){if(this.isNullish(e))return e;try{return JSON.stringify(e)}catch{throw this.checkError("json_valid",e)}}deserialize(e){if(this.isNullish(e))return e;if(typeof e=="string"){let n=ki(e);return n.ok?n.value:e}return e}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"?this.validationFail("Expected JSON text.","Patch rows with JSON values."):ki(e).ok?this.validationPass():this.validationFail("Invalid JSON text.","Patch rows with valid JSON.")}};});function $l(t){if(!/^\d{4}-\d{2}-\d{2}$/.test(t))return false;let e=new Date(`${t}T00:00:00.000Z`);return !Number.isNaN(e.getTime())&&e.toISOString().slice(0,10)===t}var lt,Un=F(()=>{se();lt=class extends B{get isShimBacked(){return true}checkConstraint(){let e=this.context.column;return `${e} IS NULL OR date(${e}) IS NOT NULL`}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"||!$l(e)?this.validationFail("Invalid date.","Patch rows with YYYY-MM-DD dates."):this.validationPass()}};});function vl(t){let e=t.match(/^(\d{2}):(\d{2})(?::(\d{2})(?:\.\d{1,6})?)?([+-](\d{2}):?(\d{2}))?$/);if(!e)return false;let n=Number(e[1]),r=Number(e[2]),i=e[3]===void 0?0:Number(e[3]),s=e[5]===void 0?null:Number(e[5]),o=e[6]===void 0?null:Number(e[6]),a=s===null||o!==null&&s<=15&&o<=59;return n<=24&&r<=59&&i<=59&&(n!==24||r===0&&i===0)&&a}var ct,Bn=F(()=>{se();ct=class extends B{get isShimBacked(){return true}checkConstraint(){let e=this.context.column;return `${e} IS NULL OR time(${e}) IS NOT NULL`}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"||!vl(e)?this.validationFail("Invalid time.","Patch rows with HH:MM[:SS] times."):this.validationPass()}};});function Nl(t){let e=t.match(/^(\d{4})-(\d{2})-(\d{2})[ T](\d{2}):(\d{2})(?::(\d{2})(?:\.\d{1,6})?)?(?:Z|([+-](\d{2}):?(\d{2})))?$/);if(!e)return false;let n=Number(e[1]),r=Number(e[2]),i=Number(e[3]),s=Number(e[4]),o=Number(e[5]),a=e[6]===void 0?0:Number(e[6]),l=e[8]===void 0?null:Number(e[8]),c=e[9]===void 0?null:Number(e[9]),u=new Date(Date.UTC(n,r-1,i)),f=u.getUTCFullYear()===n&&u.getUTCMonth()===r-1&&u.getUTCDate()===i,m=s<=24&&o<=59&&a<=59&&(s!==24||o===0&&a===0),g=l===null||c!==null&&l<=15&&c<=59;return f&&m&&g}var ut,Mn=F(()=>{se();ut=class extends B{get isShimBacked(){return true}checkConstraint(){let e=this.context.column;return `${e} IS NULL OR datetime(${e}) IS NOT NULL`}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"||!Nl(e)?this.validationFail("Invalid timestamp.","Patch rows with ISO timestamps."):this.validationPass()}};});var ft,Hn=F(()=>{se();ft=class extends B{get isShimBacked(){return true}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"||e.trim().length===0?this.validationFail("Expected interval text.","Patch rows with interval strings."):/^-?\d+(?:\.\d+)?$/.test(e.trim())?this.validationFail("Ambiguous numeric interval.","Patch rows with explicit interval strings."):this.validationPass()}};});var pt,qn=F(()=>{se();pt=class extends B{enumValues;constructor(e,n){super(e),this.enumValues=n;}get isShimBacked(){return true}checkConstraint(){let e=this.context.column,n=this.enumValues.map(r=>`'${r.replace(/'/g,"''")}'`).join(", ");return `${e} IN (${n})`}serialize(e){if(this.isNullish(e))return e;if(typeof e!="string"||!this.enumValues.includes(e))throw this.checkError("enum_membership",e);return e}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"||!this.enumValues.includes(e)?this.validationFail("Invalid enum value.","Patch rows with declared enum values."):this.validationPass()}};});function $i(t){try{return {ok:!0,value:JSON.parse(t)}}catch{return {ok:false}}}var Le,Vn=F(()=>{de();Le=class extends W{elementField;constructor(e,n){super(e),this.elementField=n;}get sqliteType(){return "TEXT"}get isShimBacked(){return true}checkConstraint(){let e=this.context.column;return `${e} IS NULL OR (json_valid(${e}) AND json_type(${e}) = 'array')`}serialize(e){if(this.isNullish(e))return e;if(!Array.isArray(e))throw this.checkError("array_type",e);return this.elementField?JSON.stringify(e.map(n=>this.elementField.serialize(n))):JSON.stringify(e)}deserialize(e){if(this.isNullish(e))return e;if(typeof e=="string"){let n=$i(e);if(n.ok&&Array.isArray(n.value))return this.elementField?n.value.map(r=>this.elementField.deserialize(r)):n.value}return e}validateStorage(e){if(this.isNullish(e))return this.validationPass();if(typeof e!="string")return this.validationFail("Expected JSON array text.","Patch rows with array values.");let n=$i(e);if(!n.ok)return this.validationFail("Invalid JSON array text.","Patch rows with array values.");if(!Array.isArray(n.value))return this.validationFail("Expected JSON array.","Patch rows with array values.");if(this.elementField)for(let r of n.value){let i=this.elementField.validateStorage(r);if(i.status==="fail")return this.validationFail(`Invalid ${this.elementField.context.pgTypeName} array element.`,i.action??"Patch rows with valid array elements.")}return this.validationPass()}};});function vi(t){return Pl.test(t.toLowerCase())}var Ll,Pl,mt,Gn=F(()=>{se();Ll="????????-????-????-????-????????????",Pl=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/;mt=class extends B{get isShimBacked(){return true}checkConstraint(){let e=this.quoteIfNeeded(this.context.column);return `${e} IS NULL OR ${e} GLOB '${Ll}'`}serialize(e){if(this.isNullish(e))return e;if(typeof e!="string")throw this.checkError("uuid_format",e);let n=e.toLowerCase();if(!vi(n))throw this.checkError("uuid_format",e);return n}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"||!vi(e)?this.validationFail("Invalid UUID.","Patch rows with valid UUIDs."):this.validationPass()}};});function Ol(t){let e=t.split("/");if(e.length>2)return null;let n=e[0];if(!n)return null;if(e.length===1)return {address:n,prefix:null};let r=e[1];return !r||!/^\d+$/.test(r)?null:{address:n,prefix:Number(r)}}function Fl(t){let e=t.split(".");return e.length!==4?false:e.every(n=>{if(!/^\d+$/.test(n))return false;let r=Number(n);return r>=0&&r<=255})}function Il(t){if(!t.includes(":"))return false;try{return new URL(`http://[${t}]/`),!0}catch{return false}}function Ni(t){let e=Ol(t);return e?Fl(e.address)?e.prefix===null||e.prefix>=0&&e.prefix<=32:Il(e.address)?e.prefix===null||e.prefix>=0&&e.prefix<=128:false:false}var dt,Wn=F(()=>{se();dt=class extends B{get isShimBacked(){return true}checkConstraint(){let e=this.quoteIfNeeded(this.context.column);return `${e} IS NULL OR (length(${e}) BETWEEN 3 AND 49 AND (instr(${e}, '.') > 0 OR instr(${e}, ':') > 0))`}serialize(e){if(this.isNullish(e))return e;if(typeof e!="string")throw this.checkError("inet_format",e);let n=e.trim();if(!Ni(n))throw this.checkError("inet_format",e);return n}validateStorage(e){return this.isNullish(e)?this.validationPass():typeof e!="string"||!Ni(e.trim())?this.validationFail("Invalid inet address.","Patch rows with valid inet strings."):this.validationPass()}};});var ht,Kn=F(()=>{se();ht=class extends B{serialize(e){throw new Error(`Unsupported type "${this.context.pgTypeName}" for ${this.context.table}.${this.context.column}`)}deserialize(e){throw new Error(`Unsupported type "${this.context.pgTypeName}" for ${this.context.table}.${this.context.column}`)}toColumnDDL(){throw new Error(`Unsupported type "${this.context.pgTypeName}" for ${this.context.table}.${this.context.column}`)}};});function gt(t,e){let n=Yl(t,e);if(e){let{enumValues:r,...i}=e;n.factoryExtra=i;}return n}function Yl(t,e){if(e?.isArray){let r=gt(t,{...e,isArray:false});return new Le(t,r)}if(e?.enumValues)return new pt(t,e.enumValues);let n=t.pgTypeName.toLowerCase().trim();if(n.startsWith("_")||n.endsWith("[]")){let r=n.startsWith("_")?n.slice(1):n.slice(0,-2),i={...t,pgTypeName:r},s=gt(i);return new Le(t,s)}return jl.has(n)?new rt(t):Dl.has(n)?new Ce(t):Hl.has(n)?new ot(t):ql.has(n)?new at(t):Kl.has(n)?new lt(t):zl.has(n)?new ct(t):Xl.has(n)?new ut(t):Jl.has(n)?new ft(t):Ml.has(n)?new st(t):Ul.has(n)?new it(t,e?.numericPrecision):Vl.has(n)?new mt(t):Gl.has(n)?new B(t,63):Wl.has(n)?new dt(t):Bl.has(n)?new B(t,e?.lengthConstraint):new ht(t)}var Dl,jl,Ul,Bl,Ml,Hl,ql,Vl,Gl,Wl,Kl,zl,Xl,Jl,Li=F(()=>{Gt();On();Fn();se();In();Dn();jn();Un();Bn();Mn();Hn();qn();Vn();Gn();Wn();Kn();Dl=new Set(["int2","smallint","int4","integer","int","int8","bigint"]),jl=new Set(["serial","serial4","bigserial","serial8","smallserial","serial2"]),Ul=new Set(["float4","real","float8","double precision","numeric","decimal"]),Bl=new Set(["text","varchar","character varying","char","character","bpchar"]),Ml=new Set(["bytea"]),Hl=new Set(["bool","boolean"]),ql=new Set(["json","jsonb"]),Vl=new Set(["uuid"]),Gl=new Set(["name"]),Wl=new Set(["inet"]),Kl=new Set(["date"]),zl=new Set(["time","timetz","time without time zone","time with time zone"]),Xl=new Set(["timestamp","timestamptz","timestamp without time zone","timestamp with time zone"]),Jl=new Set(["interval"]);});var Pi=F(()=>{});var yt,Oi=F(()=>{yt=class{table;schema;fields;constructor(e,n="public",r=new Map){this.table=e,this.schema=n,this.fields=r;}get(e){return this.fields.get(e)}has(e){return this.fields.has(e)}set(e,n){this.fields.set(e,n);}columns(){return Array.from(this.fields.keys())}all(){return Array.from(this.fields.values())}serializeRow(e){let n={};for(let[r,i]of Object.entries(e)){let s=this.fields.get(r);n[r]=s?s.serialize(i):i;}return n}deserializeRow(e){let n={};for(let[r,i]of Object.entries(e)){let s=this.fields.get(r);n[r]=s?s.deserialize(i):i;}return n}applyDefaults(e){let n={...e};for(let[r,i]of this.fields)!(r in n)&&i.context.defaultFn&&(n[r]=i.context.defaultFn());return n}};});var Fi=F(()=>{de();Pn();Gt();On();Fn();se();In();Dn();jn();Un();Bn();Mn();Hn();qn();Vn();Gn();Wn();Kn();Li();Pi();Oi();});var Ui={};ss(Ui,{_resetWarnedMissingToClauseForTests:()=>Ql,collectComments:()=>ic,collectEnums:()=>Zl,collectPolicies:()=>tc,collectSchema:()=>nc,collectTableConstraints:()=>rc,collectVariables:()=>ec,lookupEnumValue:()=>ji});function Ql(){Jn.clear();}function Zl(t){let e=new Map;for(let n of t.stmts??[]){if(!n.stmt||!("CreateEnumStmt"in n.stmt))continue;let r=n.stmt.CreateEnumStmt,i=me(r.typeName??[]).join(".");if(!i||!r.vals)continue;let s=me(r.vals),o=i.toLowerCase();e.set(o,s),o.startsWith("public.")&&e.set(o.slice(7),s);}return e}function ji(t,e){let n=e.toLowerCase(),r=t.get(n);return r||(n.startsWith("public.")?t.get(n.slice(7)):t.get(`public.${n}`))}function ec(t){let e=new Map;for(let n of t.stmts??[]){if(!n.stmt||!("VariableSetStmt"in n.stmt))continue;let r=n.stmt.VariableSetStmt,i=r.name,s=Ei(r.args?.[0]??{});e.set(i,{value:s,local:r.is_local});}return e}function Ii(t){let e=[],n=false;for(let r of t??[])if("RoleSpec"in r){let i=r.RoleSpec;i.roletype==="ROLESPEC_PUBLIC"?i.location===-1&&(n=true):i.roletype==="ROLESPEC_CSTRING"&&i.rolename&&e.push(i.rolename);}return {roles:e,implicitPublic:n}}function Wt(t,e){return t&&t.length>0?t:e}function zn(t,e,n){return t.findIndex(r=>r.data.name===e.name&&r.data.table===e.table&&Wt(r.data.schema,n)===Wt(e.schema,n))}function Xn(t,e){return new Error(`policy "${t}" for table "${e}" does not exist`)}function Di(t,e,n,r){return t.data.table===e&&Wt(t.data.schema,r)===Wt(n,r)}function tc(t,e={}){let n=e.defaultSchema||"public",r=e.validateMutations===true,i=new Vt,s=new Set,o=[];for(let a of t.stmts??[])if(a.stmt){if("CreatePolicyStmt"in a.stmt){let l=a.stmt.CreatePolicyStmt,c=l.table?.relname??"",u=l.table?.schemaname,f={select:"SELECT",insert:"INSERT",update:"UPDATE",delete:"DELETE"},m=l.cmd_name?f[l.cmd_name]??"ALL":"ALL",g=l.permissive===true,{roles:y,implicitPublic:E}=Ii(l.roles),T=l.qual?i.deparse(l.qual):void 0,q=l.with_check?i.deparse(l.with_check):void 0;if(E){let M=u?`${u}.${c}`:c,K=l.policy_name??"",O=`${M}::${K}`;if(!Jn.has(O)){Jn.add(O);let $=JSON.stringify(T)+JSON.stringify(q);/\{\{auth\.(uid|jwt|role)/i.test($)||console.warn(`[supalite] policy "${K}" on "${M}" has no TO clause \u2014 applies to all roles (PUBLIC). For clarity, prefer an explicit \`TO <role>\` clause (e.g. \`TO authenticated\`).`);}}let S=new _e({name:l.policy_name??"",table:c,schema:u,command:m,permissive:g,roles:y,using:T,withCheck:q});o.push(S);}if("DropStmt"in a.stmt&&a.stmt.DropStmt.removeType==="OBJECT_POLICY"){let l=a.stmt.DropStmt,c=l.objects?.[0];if(c&&"List"in c){let u=me(c.List.items??[]),f=u[u.length-1],m=u[u.length-2],g=u.length>=3?u[u.length-3]:void 0;if(f&&m){let y=zn(o,{name:f,table:m,schema:g},n);if(y!==-1)o.splice(y,1);else if(r&&!l.missing_ok)throw Xn(f,m)}}}if("AlterPolicyStmt"in a.stmt){let l=a.stmt.AlterPolicyStmt,c=l.policy_name??"",u=l.table?.relname??"",f=l.table?.schemaname,m=zn(o,{name:c,table:u,schema:f},n);if(m===-1){if(r)throw Xn(c,u);continue}let g=o[m].data,y=l.roles?Ii(l.roles).roles:g.roles,E=l.qual?i.deparse(l.qual):g.using,T=l.with_check?i.deparse(l.with_check):g.withCheck;o[m]=new _e({...g,roles:y,using:E,withCheck:T});}if("RenameStmt"in a.stmt&&a.stmt.RenameStmt.renameType==="OBJECT_POLICY"){let l=a.stmt.RenameStmt,c=l.subname??"",u=l.relation?.relname??"",f=l.relation?.schemaname,m=zn(o,{name:c,table:u,schema:f},n);if(m===-1){if(r)throw Xn(c,u);continue}l.newname&&(o[m]=new _e({...o[m].data,name:l.newname}));}if("RenameStmt"in a.stmt&&a.stmt.RenameStmt.renameType==="OBJECT_TABLE"){let l=a.stmt.RenameStmt,c=l.relation?.relname??"",u=l.newname??"",f=l.relation?.schemaname;if(c&&u&&c!==u){s.delete(c)&&s.add(u);for(let m=0;m<o.length;m++)Di(o[m],c,f,n)&&(o[m]=new _e({...o[m].data,table:u}));}}if("DropStmt"in a.stmt&&a.stmt.DropStmt.removeType==="OBJECT_TABLE")for(let l of a.stmt.DropStmt.objects??[]){if(!("List"in l))continue;let c=me(l.List.items??[]),u=c[c.length-1],f=c.length>=2?c[c.length-2]:void 0;if(u){s.delete(u);for(let m=o.length-1;m>=0;m--)Di(o[m],u,f,n)&&o.splice(m,1);}}if("AlterTableStmt"in a.stmt){let l=a.stmt.AlterTableStmt,c=l.relation?.relname??"";for(let u of l.cmds??[]){if(!("AlterTableCmd"in u))continue;let f=u.AlterTableCmd.subtype;f==="AT_EnableRowSecurity"?s.add(c):f==="AT_DisableRowSecurity"&&s.delete(c);}}}return {policies:o,tables:s}}function nc(t,e){let n=new Map;for(let r of t.stmts??[]){if(!r.stmt||!("CreateStmt"in r.stmt))continue;let i=r.stmt.CreateStmt,s=i.relation?.relname??"",o=i.relation?.schemaname??"public";if(!s)continue;let a=new yt(s,o);for(let l of i.tableElts??[]){if(!("ColumnDef"in l))continue;let c=l.ColumnDef,u=c.colname;if(!u)continue;let f=c.typeName?.names?.map(x=>x.String?.sval||x.String?.str).filter(Boolean),m=f&&f.length>0?f.length===2&&f[0]==="pg_catalog"?f[1]:f.join("."):void 0;if(!m)continue;let g=!!c.typeName?.arrayBounds?.length,y=Array.isArray(c.typeName?.typmods)?c.typeName.typmods:[],E=x=>y[x]?.A_Const?.ival?.ival??y[x]?.A_Const?.val?.ival?.ival,T={isArray:g};if(Ai(m)&&y.length>0){let x=E(0);typeof x=="number"&&x>0&&(T.lengthConstraint=x);}if(_i(m)&&y.length>=2){let x=E(0),L=E(1);typeof x=="number"&&typeof L=="number"&&x>0&&L>=0&&(T.numericPrecision={precision:x,scale:L});}let q=ji(e,m);q&&(T.enumValues=q);let S=Array.isArray(c.constraints)?c.constraints:[],M=S.some(x=>x.Constraint?.contype==="CONSTR_PRIMARY"),K=Ti(m)||S.some(x=>x.Constraint?.contype==="CONSTR_IDENTITY"),O=S.some(x=>x.Constraint?.contype==="CONSTR_NOTNULL"),$=S.find(x=>x.Constraint?.contype==="CONSTR_UNIQUE"),v=S.find(x=>x.Constraint?.contype==="CONSTR_GENERATED"),A=S.find(x=>x.Constraint?.contype==="CONSTR_FOREIGN"),C=S.find(x=>x.Constraint?.contype==="CONSTR_CHECK"),d;if(A){let x=A.Constraint,L=x.pktable?.relname,h=x.pktable?.schemaname,p=x.pk_attrs?.[0]?.String?.sval;L&&p&&(d={refSchema:h,refTable:L,refColumn:p,constraintName:x.conname||void 0});}let z={schema:o,table:s,column:u,pgTypeName:m,nullable:!O&&!M,defaultValue:null,defaultFn:null,isPrimaryKey:M,isUnique:!!$,isSerial:K,isGenerated:!!v,fkRef:d,hasCheck:!!C,checkConstraintName:C?.Constraint?.conname||void 0,uniqueConstraintName:$?.Constraint?.conname||void 0};a.set(u,gt(z,T));}n.set(`${o}.${s}`,a);}return n}function rc(t){let e=[];for(let n of t.stmts??[]){if(!n.stmt||!("CreateStmt"in n.stmt))continue;let r=n.stmt.CreateStmt,i=r.relation?.relname??"",s=r.relation?.schemaname??"public";if(i)for(let o of r.tableElts??[]){if("ColumnDef"in o){let u=o.ColumnDef,f=u?.colname;if(!f)continue;for(let m of u.constraints??[]){let g=m?.Constraint;if(!g||g.contype!=="CONSTR_FOREIGN")continue;let y=g.pktable?.relname;if(!y)continue;let E=(g.pk_attrs??[]).map(T=>T.String?.sval??T.String?.str).filter(Boolean);e.push({schema:s,table:i,kind:"foreign_key",name:g.conname||void 0,columns:[f],refSchema:g.pktable?.schemaname,refTable:y,refColumns:E});}continue}let a=o;if(!a.Constraint)continue;let l=a.Constraint,c=l.contype;if(c==="CONSTR_UNIQUE"){let u=(l.keys??[]).map(f=>f.String?.sval??f.String?.str).filter(Boolean);if(u.length===0)continue;e.push({schema:s,table:i,kind:"unique",name:l.conname||void 0,columns:u});}else if(c==="CONSTR_CHECK")e.push({schema:s,table:i,kind:"check",name:l.conname||void 0,columns:[]});else if(c==="CONSTR_FOREIGN"){let u=(l.fk_attrs??[]).map(g=>g.String?.sval??g.String?.str).filter(Boolean),f=(l.pk_attrs??[]).map(g=>g.String?.sval??g.String?.str).filter(Boolean),m=l.pktable?.relname;if(!m)continue;e.push({schema:s,table:i,kind:"foreign_key",name:l.conname||void 0,columns:u,refSchema:l.pktable?.schemaname,refTable:m,refColumns:f});}}}return e}function ic(t){let e=[];for(let n of t.stmts??[]){if(!n.stmt||!("CommentStmt"in n.stmt))continue;let r=n.stmt.CommentStmt,i=r.comment??"";if(!i)continue;let s=r.objtype,o=(r.object?.List?.items??r.object?.items??[]).map(a=>a.String?.sval??a.String?.str).filter(Boolean);if(o.length!==0){if(s==="OBJECT_TABLE"||s==="OBJECT_VIEW"){let[a,l]=o.length>=2?o:["public",o[0]];e.push({schema:a,table:l,text:i});}else if(s==="OBJECT_COLUMN"){let a="public",l,c;o.length>=3?[a,l,c]=o:[l,c]=o,e.push({schema:a,table:l,column:c,text:i});}}}return e}var Jn,Bi=F(()=>{Ci();Ht();Ri();Fi();Ln();Jn=new Set;});var nr=process.stdin.isTTY?null:(async()=>{let t=[];for await(let e of process.stdin)t.push(e);return Buffer.concat(t).toString("utf8")})();nr&&process.stdin.unref?.();function re(t,e){St.existsSync(t)||(St.mkdirSync(t,{recursive:true}),e?.());}function Se(t,e,n){St.existsSync(t)||(St.writeFileSync(t,e),n?.());}var pe=class t{root;constructor(e,n){let r=n??t.projectDir();this.root=ie__default.join(r,e??"");}ensureRoot(){re(this.root);}static homeDir(){return ie__default.join(as.homedir(),".lite")}static projectDir(){return ie__default.join(process.cwd(),"supabase")}deleteAll(e=false){try{St.rmSync(this.root,{recursive:!0});}catch(n){if(!e)throw n}this.ensureRoot();}delete(e,n=false){try{St.unlinkSync(ie__default.join(this.root,e));}catch(r){if(!n)throw r}}write(e,n,r=false){try{this.ensureRoot(),St.writeFileSync(ie__default.join(this.root,e),n);}catch(i){if(!r)throw i}}read(e,n=false){try{return St.readFileSync(ie__default.join(this.root,e),"utf8")}catch(r){if(!n)throw r}}relativePath(e){return e?ie__default.relative(process.cwd(),ie__default.join(this.root,e)):this.root}path(e){return e?ie__default.join(this.root,e):this.root}};var Oe=process.env.LITE_CLOUD_URL??(process.env.LOCAL?"http://localhost:2001":"https://api.lite.dev"),Tt=process.env.LITE_CLOUD_PROJECTS_URL??(process.env.LOCAL?"http://supalite.local":"https://lite.black");var _t=class{root;constructor(e){this.root=e??ie__default.join(as.homedir(),".lite","auth"),re(this.root);}async getItem(e){try{return St.readFileSync(ie__default.join(this.root,e+".json"),"utf8")}catch{return null}}async setItem(e,n){St.writeFileSync(ie__default.join(this.root,e+".json"),n);}async removeItem(e){try{St.unlinkSync(ie__default.join(this.root,e+".json"));}catch{return}}};var Re=class{constructor(e){this.config=e;this.tempFs=new pe(".temp",this.config.root),this.projectFs=new pe("supabase",this.config.root),this.schemaFs=new pe("schemas",this.config.root),this.authStorage=this.config.authStorage??new _t(ie__default.join(pe.homeDir(),"auth")),this._client=this.config.withSupabaseClient!==false?this.config.client??createClient(this.config.host??Oe,process.env.LITE_CLOUD_ANON_KEY??"...",{auth:{storage:this.authStorage}}):void 0;}tempFs;projectFs;schemaFs;_client;authStorage;async fetch(e,n){if(!this.config.token)throw new Error("Not authenticated, sign in first.");let r=e instanceof URL?e:new URL(e,this.config.host??Oe);return await fetch(r,{...n,headers:{...n?.headers,Authorization:`Bearer ${this.config.token}`}})}};var ke=class extends Re{constructor(n){super(n);this.config=n;}get client(){if(!this._client)throw new Error("Supabase client not initialized");return this._client}projectRef(){return this.tempFs.read("project-ref",true)}projectUrl(n){let r=new URL(this.config.projectsHost??Tt),i=r.hostname.replace(/^www\./,"");return `${r.protocol}//${n}.${i}${r.port?`:${r.port}`:""}`}};var Y={config_dir:"supabase",default_db_url:"file:supabase/.temp/data.db",default_db_dir:"supabase/.temp/data"};var Ve=Pe(Fe());function ds(t,e){let n=t.slice(0,e).split(/\r\n|\n|\r/g);return [n.length,n.pop().length+1]}function hs(t,e,n){let r=t.split(/\r\n|\n|\r/g),i="",s=(Math.log10(e+1)|0)+1;for(let o=e-1;o<=e+1;o++){let a=r[o-1];a&&(i+=o.toString().padEnd(s," "),i+=": ",i+=a,i+=`
|
|
13
13
|
`,o===e&&(i+=" ".repeat(s+n+2),i+=`^
|
|
14
|
-
`));}return i}var _=class extends Error{line;column;codeblock;constructor(e,n){let[r,i]=
|
|
14
|
+
`));}return i}var _=class extends Error{line;column;codeblock;constructor(e,n){let[r,i]=ds(n.toml,n.ptr),s=hs(n.toml,r,i);super(`Invalid TOML document: ${e}
|
|
15
15
|
|
|
16
|
-
${s}`,n),this.line=r,this.column=i,this.codeblock=s;}};function
|
|
16
|
+
${s}`,n),this.line=r,this.column=i,this.codeblock=s;}};function gs(t,e){let n=0;for(;t[e-++n]==="\\";);return --n&&n%2}function kt(t,e=0,n=t.length){let r=t.indexOf(`
|
|
17
17
|
`,e);return t[r-1]==="\r"&&r--,r<=n?r:-1}function $e(t,e){for(let n=e;n<t.length;n++){let r=t[n];if(r===`
|
|
18
18
|
`)return n;if(r==="\r"&&t[n+1]===`
|
|
19
|
-
`)return n+1;if(r<" "&&r!==" "||r==="\x7F")throw new _("control characters are not allowed in comments",{toml:t,ptr:e})}return t.length}function
|
|
19
|
+
`)return n+1;if(r<" "&&r!==" "||r==="\x7F")throw new _("control characters are not allowed in comments",{toml:t,ptr:e})}return t.length}function X(t,e,n,r){let i;for(;(i=t[e])===" "||i===" "||!n&&(i===`
|
|
20
20
|
`||i==="\r"&&t[e+1]===`
|
|
21
|
-
`);)e++;return r||i!=="#"?e:
|
|
21
|
+
`);)e++;return r||i!=="#"?e:X(t,$e(t,e),n)}function sr(t,e,n,r,i=false){if(!r)return e=kt(t,e),e<0?t.length:e;for(let s=e;s<t.length;s++){let o=t[s];if(o==="#")s=kt(t,s);else {if(o===n)return s+1;if(o===r||i&&(o===`
|
|
22
22
|
`||o==="\r"&&t[s+1]===`
|
|
23
|
-
`))return s}}throw new _("cannot find end of structure",{toml:t,ptr:e})}function $t(t,e){let n=t[e],r=n===t[e+1]&&t[e+1]===t[e+2]?t.slice(e,e+3):n;e+=r.length-1;do e=t.indexOf(r,++e);while(e>-1&&n!=="'"&&
|
|
24
|
-
`,f:"\f",r:"\r",e:"\x1B",'"':'"',"\\":"\\"};function
|
|
23
|
+
`))return s}}throw new _("cannot find end of structure",{toml:t,ptr:e})}function $t(t,e){let n=t[e],r=n===t[e+1]&&t[e+1]===t[e+2]?t.slice(e,e+3):n;e+=r.length-1;do e=t.indexOf(r,++e);while(e>-1&&n!=="'"&&gs(t,e));return e>-1&&(e+=r.length,r.length>1&&(t[e]===n&&e++,t[e]===n&&e++)),e}var ys=/^(\d{4}-\d{2}-\d{2})?[T ]?(?:(\d{2}):\d{2}(?::\d{2}(?:\.\d+)?)?)?(Z|[-+]\d{2}:\d{2})?$/i,Ie=class t extends Date{#t=false;#n=false;#e=null;constructor(e){let n=true,r=true,i="Z";if(typeof e=="string"){let s=e.match(ys);s?(s[1]||(n=false,e=`0000-01-01T${e}`),r=!!s[2],r&&e[10]===" "&&(e=e.replace(" ","T")),s[2]&&+s[2]>23?e="":(i=s[3]||null,e=e.toUpperCase(),!i&&r&&(e+="Z"))):e="";}super(e),isNaN(this.getTime())||(this.#t=n,this.#n=r,this.#e=i);}isDateTime(){return this.#t&&this.#n}isLocal(){return !this.#t||!this.#n||!this.#e}isDate(){return this.#t&&!this.#n}isTime(){return this.#n&&!this.#t}isValid(){return this.#t||this.#n}toISOString(){let e=super.toISOString();if(this.isDate())return e.slice(0,10);if(this.isTime())return e.slice(11,23);if(this.#e===null)return e.slice(0,-1);if(this.#e==="Z")return e;let n=+this.#e.slice(1,3)*60+ +this.#e.slice(4,6);return n=this.#e[0]==="-"?n:-n,new Date(this.getTime()-n*6e4).toISOString().slice(0,-1)+this.#e}static wrapAsOffsetDateTime(e,n="Z"){let r=new t(e);return r.#e=n,r}static wrapAsLocalDateTime(e){let n=new t(e);return n.#e=null,n}static wrapAsLocalDate(e){let n=new t(e);return n.#n=false,n.#e=null,n}static wrapAsLocalTime(e){let n=new t(e);return n.#t=false,n.#e=null,n}};var bs=/^((0x[0-9a-fA-F](_?[0-9a-fA-F])*)|(([+-]|0[ob])?\d(_?\d)*))$/,ws=/^[+-]?\d(_?\d)*(\.\d(_?\d)*)?([eE][+-]?\d(_?\d)*)?$/,xs=/^[+-]?0[0-9_]/,Ss=/^[0-9a-f]{2,8}$/i,or={b:"\b",t:" ",n:`
|
|
24
|
+
`,f:"\f",r:"\r",e:"\x1B",'"':'"',"\\":"\\"};function vt(t,e=0,n=t.length){let r=t[e]==="'",i=t[e++]===t[e]&&t[e]===t[e+1];i&&(n-=2,t[e+=2]==="\r"&&e++,t[e]===`
|
|
25
25
|
`&&e++);let s=0,o,a="",l=e;for(;e<n-1;){let c=t[e++];if(c===`
|
|
26
26
|
`||c==="\r"&&t[e]===`
|
|
27
27
|
`){if(!i)throw new _("newlines are not allowed in strings",{toml:t,ptr:e-1})}else if(c<" "&&c!==" "||c==="\x7F")throw new _("control characters are not allowed in strings",{toml:t,ptr:e-1});if(o){if(o=false,c==="x"||c==="u"||c==="U"){let u=t.slice(e,e+=c==="x"?2:c==="u"?4:8);if(!Ss.test(u))throw new _("invalid unicode escape",{toml:t,ptr:s});try{a+=String.fromCodePoint(parseInt(u,16));}catch{throw new _("invalid unicode escape",{toml:t,ptr:s})}}else if(i&&(c===`
|
|
28
|
-
`||c===" "||c===" "||c==="\r")){if(e=
|
|
29
|
-
`&&t[e]!=="\r")throw new _("invalid escape: only line-ending whitespace may be escaped",{toml:t,ptr:s});e=
|
|
30
|
-
`&&t[o]!=="\r")throw new _("unexpected character encountered",{toml:t,ptr:o});o+=+(t[o]===",");}return [l,o]}o=
|
|
31
|
-
`&&o!=="\r"){let a,l=i,c=false,[u,f]=Nt(t,e-1);for(let
|
|
32
|
-
`&&s!=="\r"){let o=De(t,e-1,"]",n-1,r);i.push(o[0]),e=o[1];}}if(!s)throw new _("unfinished array encountered",{toml:t,ptr:e});return [i,e]}function
|
|
33
|
-
`&&t[a]!=="\r")throw new _("each key-value declaration must be followed by an end-of-line",{toml:t,ptr:a});a=
|
|
28
|
+
`||c===" "||c===" "||c==="\r")){if(e=X(t,e-1,true),t[e]!==`
|
|
29
|
+
`&&t[e]!=="\r")throw new _("invalid escape: only line-ending whitespace may be escaped",{toml:t,ptr:s});e=X(t,e);}else if(c in or)a+=or[c];else throw new _("unrecognized escape sequence",{toml:t,ptr:s});l=e;}else !r&&c==="\\"&&(s=e-1,o=true,a+=t.slice(l,s));}return a+t.slice(l,n-1)}function ar(t,e,n,r){if(t==="true")return true;if(t==="false")return false;if(t==="-inf")return -1/0;if(t==="inf"||t==="+inf")return 1/0;if(t==="nan"||t==="+nan"||t==="-nan")return NaN;if(t==="-0")return r?0n:0;let i=bs.test(t);if(i||ws.test(t)){if(xs.test(t))throw new _("leading zeroes are not allowed",{toml:e,ptr:n});t=t.replace(/_/g,"");let o=+t;if(isNaN(o))throw new _("invalid number",{toml:e,ptr:n});if(i){if((i=!Number.isSafeInteger(o))&&!r)throw new _("integer value cannot be represented losslessly",{toml:e,ptr:n});(i||r===true)&&(o=BigInt(t));}return o}let s=new Ie(t);if(!s.isValid())throw new _("invalid value",{toml:e,ptr:n});return s}function Es(t,e,n){let r=t.slice(e,n),i=r.indexOf("#");return i>-1&&($e(t,i),r=r.slice(0,i)),[r.trimEnd(),i]}function De(t,e,n,r,i){if(r===0)throw new _("document contains excessively nested structures. aborting.",{toml:t,ptr:e});let s=t[e];if(s==="["||s==="{"){let[l,c]=s==="["?cr(t,e,r,i):lr(t,e,r,i);if(n){if(c=X(t,c),t[c]===",")c++;else if(t[c]!==n)throw new _("expected comma or end of structure",{toml:t,ptr:c})}return [l,c]}let o;if(s==='"'||s==="'"){o=$t(t,e);let l=vt(t,e,o);if(n){if(o=X(t,o),t[o]&&t[o]!==","&&t[o]!==n&&t[o]!==`
|
|
30
|
+
`&&t[o]!=="\r")throw new _("unexpected character encountered",{toml:t,ptr:o});o+=+(t[o]===",");}return [l,o]}o=sr(t,e,",",n);let a=Es(t,e,o-+(t[o-1]===","));if(!a[0])throw new _("incomplete key-value declaration: no value specified",{toml:t,ptr:e});return n&&a[1]>-1&&(o=X(t,e+a[1]),o+=+(t[o]===",")),[ar(a[0],t,e,i),o]}var Ts=/^[a-zA-Z0-9-_]+[ \t]*$/;function Nt(t,e,n="="){let r=e-1,i=[],s=t.indexOf(n,e);if(s<0)throw new _("incomplete key-value: cannot find end of key",{toml:t,ptr:e});do{let o=t[e=++r];if(o!==" "&&o!==" ")if(o==='"'||o==="'"){if(o===t[e+1]&&o===t[e+2])throw new _("multiline strings are not allowed in keys",{toml:t,ptr:e});let a=$t(t,e);if(a<0)throw new _("unfinished string encountered",{toml:t,ptr:e});r=t.indexOf(".",a);let l=t.slice(a,r<0||r>s?s:r),c=kt(l);if(c>-1)throw new _("newlines are not allowed in keys",{toml:t,ptr:e+r+c});if(l.trimStart())throw new _("found extra tokens after the string part",{toml:t,ptr:a});if(s<a&&(s=t.indexOf(n,a),s<0))throw new _("incomplete key-value: cannot find end of key",{toml:t,ptr:e});i.push(vt(t,e,a));}else {r=t.indexOf(".",e);let a=t.slice(e,r<0||r>s?s:r);if(!Ts.test(a))throw new _("only letter, numbers, dashes and underscores are allowed in keys",{toml:t,ptr:e});i.push(a.trimEnd());}}while(r+1&&r<s);return [i,X(t,s+1,true,true)]}function lr(t,e,n,r){let i={},s=new Set,o;for(e++;(o=t[e++])!=="}"&&o;){if(o===",")throw new _("expected value, found comma",{toml:t,ptr:e-1});if(o==="#")e=$e(t,e);else if(o!==" "&&o!==" "&&o!==`
|
|
31
|
+
`&&o!=="\r"){let a,l=i,c=false,[u,f]=Nt(t,e-1);for(let y=0;y<u.length;y++){if(y&&(l=c?l[a]:l[a]={}),a=u[y],(c=Object.hasOwn(l,a))&&(typeof l[a]!="object"||s.has(l[a])))throw new _("trying to redefine an already defined value",{toml:t,ptr:e});!c&&a==="__proto__"&&Object.defineProperty(l,a,{enumerable:true,configurable:true,writable:true});}if(c)throw new _("trying to redefine an already defined value",{toml:t,ptr:e});let[m,g]=De(t,f,"}",n-1,r);s.add(m),l[a]=m,e=g;}}if(!o)throw new _("unfinished table encountered",{toml:t,ptr:e});return [i,e]}function cr(t,e,n,r){let i=[],s;for(e++;(s=t[e++])!=="]"&&s;){if(s===",")throw new _("expected value, found comma",{toml:t,ptr:e-1});if(s==="#")e=$e(t,e);else if(s!==" "&&s!==" "&&s!==`
|
|
32
|
+
`&&s!=="\r"){let o=De(t,e-1,"]",n-1,r);i.push(o[0]),e=o[1];}}if(!s)throw new _("unfinished array encountered",{toml:t,ptr:e});return [i,e]}function ur(t,e,n,r){let i=e,s=n,o,a=false,l;for(let c=0;c<t.length;c++){if(c){if(i=a?i[o]:i[o]={},s=(l=s[o]).c,r===0&&(l.t===1||l.t===2))return null;if(l.t===2){let u=i.length-1;i=i[u],s=s[u].c;}}if(o=t[c],(a=Object.hasOwn(i,o))&&s[o]?.t===0&&s[o]?.d)return null;a||(o==="__proto__"&&(Object.defineProperty(i,o,{enumerable:true,configurable:true,writable:true}),Object.defineProperty(s,o,{enumerable:true,configurable:true,writable:true})),s[o]={t:c<t.length-1&&r===2?3:r,d:false,i:0,c:{}});}if(l=s[o],l.t!==r&&!(r===1&&l.t===3)||(r===2&&(l.d||(l.d=true,i[o]=[]),i[o].push(i={}),l.c[l.i++]=l={t:1,d:false,i:0,c:{}}),l.d))return null;if(l.d=true,r===1)i=a?i[o]:i[o]={};else if(r===0&&a)return null;return [o,i,l.c]}function je(t,{maxDepth:e=1e3,integersAsBigInt:n}={}){let r={},i={},s=r,o=i;for(let a=X(t,0);a<t.length;){if(t[a]==="["){let l=t[++a]==="[",c=Nt(t,a+=+l,"]");if(l){if(t[c[1]-1]!=="]")throw new _("expected end of table declaration",{toml:t,ptr:c[1]-1});c[1]++;}let u=ur(c[0],r,i,l?2:1);if(!u)throw new _("trying to redefine an already defined table or value",{toml:t,ptr:a});o=u[2],s=u[1],a=c[1];}else {let l=Nt(t,a),c=ur(l[0],s,o,0);if(!c)throw new _("trying to redefine an already defined table or value",{toml:t,ptr:a});let u=De(t,l[1],void 0,e,n);c[1][c[0]]=u[0],a=u[1];}if(a=X(t,a,true),t[a]&&t[a]!==`
|
|
33
|
+
`&&t[a]!=="\r")throw new _("each key-value declaration must be followed by an end-of-line",{toml:t,ptr:a});a=X(t,a);}return r}var fr=/^[a-z0-9-_]+$/i;function Ue(t){let e=typeof t;if(e==="object"){if(Array.isArray(t))return "array";if(t instanceof Date)return "date"}return e}function As(t){for(let e=0;e<t.length;e++)if(Ue(t[e])!=="object")return false;return t.length!=0}function Jt(t){return JSON.stringify(t).replace(/\x7f/g,"\\u007f")}function Yt(t,e,n,r){if(n===0)throw new Error("Could not stringify the object: maximum object depth exceeded");if(e==="number")return isNaN(t)?"nan":t===1/0?"inf":t===-1/0?"-inf":r&&Number.isInteger(t)?t.toFixed(1):t.toString();if(e==="bigint"||e==="boolean")return t.toString();if(e==="string")return Jt(t);if(e==="date"){if(isNaN(t.getTime()))throw new TypeError("cannot serialize invalid date");return t.toISOString()}if(e==="object")return _s(t,n,r);if(e==="array")return Cs(t,n,r)}function _s(t,e,n){let r=Object.keys(t);if(r.length===0)return "{}";let i="{ ";for(let s=0;s<r.length;s++){let o=r[s];s&&(i+=", "),i+=fr.test(o)?o:Jt(o),i+=" = ",i+=Yt(t[o],Ue(t[o]),e-1,n);}return i+" }"}function Cs(t,e,n){if(t.length===0)return "[]";let r="[ ";for(let i=0;i<t.length;i++){if(i&&(r+=", "),t[i]===null||t[i]===void 0)throw new TypeError("arrays cannot contain null or undefined values");r+=Yt(t[i],Ue(t[i]),e-1,n);}return r+" ]"}function Rs(t,e,n,r){if(n===0)throw new Error("Could not stringify the object: maximum object depth exceeded");let i="";for(let s=0;s<t.length;s++)i+=`${i&&`
|
|
34
34
|
`}[[${e}]]
|
|
35
|
-
`,i+=Qt(0,t[s],e,n,r);return i}function Qt(t,e,n,r,i){if(r===0)throw new Error("Could not stringify the object: maximum object depth exceeded");let s="",o="",a=Object.keys(e);for(let l=0;l<a.length;l++){let c=a[l];if(e[c]!==null&&e[c]!==void 0){let u=Ue(e[c]);if(u==="symbol"||u==="function")throw new TypeError(`cannot serialize values of type '${u}'`);let f=
|
|
36
|
-
`)+
|
|
37
|
-
`)+Qt(
|
|
35
|
+
`,i+=Qt(0,t[s],e,n,r);return i}function Qt(t,e,n,r,i){if(r===0)throw new Error("Could not stringify the object: maximum object depth exceeded");let s="",o="",a=Object.keys(e);for(let l=0;l<a.length;l++){let c=a[l];if(e[c]!==null&&e[c]!==void 0){let u=Ue(e[c]);if(u==="symbol"||u==="function")throw new TypeError(`cannot serialize values of type '${u}'`);let f=fr.test(c)?c:Jt(c);if(u==="array"&&As(e[c]))o+=(o&&`
|
|
36
|
+
`)+Rs(e[c],n?`${n}.${f}`:f,r-1,i);else if(u==="object"){let m=n?`${n}.${f}`:f;o+=(o&&`
|
|
37
|
+
`)+Qt(m,e[c],m,r-1,i);}else s+=f,s+=" = ",s+=Yt(e[c],u,r,i),s+=`
|
|
38
38
|
`;}}return t&&(s||!o)&&(s=s?`[${t}]
|
|
39
39
|
${s}`:`[${t}]`),s&&o?`${s}
|
|
40
40
|
${o}`:s||o}function Zt(t,{maxDepth:e=1e3,numbersAsFloat:n=false}={}){if(Ue(t)!=="object")throw new TypeError("stringify can only be called with an object");let r=Qt(0,t,"",e,n);return r[r.length-1]!==`
|
|
41
41
|
`?r+`
|
|
42
|
-
`:r}var
|
|
43
|
-
`;)n+=t[r],r++;continue}if(f==="/"&&
|
|
44
|
-
`;)n++;continue}if(i==="/"&&s==="*"){for(n+=2;n<r&&!(t[n]==="*"&&t[n+1]==="/");)n++;n+=2;continue}e+=i,n++;}return e.trim()}function tn(t){return typeof t=="number"?t:Number.parseInt(String(t),10)}var Pt=class{driver=V;basePath;constructor(e){this.basePath=ie.resolve(e.basePath);}filePath(e,n){return ie.join(this.basePath,e,n)}async ensureDir(e){await V.mkdir(ie.dirname(e),{recursive:true});}async getObject(e,n,r,i){let s=this.filePath(e,n),o=await V.stat(s),a=`"${createHash("md5").update(`${s}:${o.mtimeMs}`).digest("hex")}"`;if(i?.ifNoneMatch===a)return {httpStatusCode:304,metadata:this.buildMetadata(o,a,n)};if(i?.ifModifiedSince){let h=new Date(i.ifModifiedSince);if(o.mtime<=h)return {httpStatusCode:304,metadata:this.buildMetadata(o,a,n)}}let l,c,u=o.size,f=200;if(i?.range){let h=i.range.match(/^bytes=(\d+)-(\d*)$/);if(h){let y=Number.parseInt(h[1],10),g=h[2]?Number.parseInt(h[2],10):o.size-1;u=g-y+1,c=`bytes ${y}-${g}/${o.size}`,f=206,l=(await V.open(s,"r")).readableWebStream();}else l=(await V.open(s,"r")).readableWebStream();}else l=(await V.open(s,"r")).readableWebStream();return {httpStatusCode:f,metadata:{...this.buildMetadata(o,a,n),contentLength:u,contentRange:c},body:l}}async uploadObject(e,n,r,i,s,o){let a=this.filePath(e,n);await this.ensureDir(a);let l;if(i instanceof Uint8Array||Buffer.isBuffer(i))l=i;else {let f=[],h=i.getReader();for(;;){let{done:y,value:g}=await h.read();if(y)break;f.push(g);}l=Buffer.concat(f);}await V.writeFile(a,l);let c=await V.stat(a),u=`"${createHash("md5").update(l).digest("hex")}"`;return {cacheControl:o,contentLength:c.size,size:c.size,mimetype:s,lastModified:c.mtime,eTag:u}}async deleteObject(e,n,r){let i=this.filePath(e,n);await V.unlink(i).catch(s=>{if(s.code!=="ENOENT")throw s});}async deleteObjects(e,n){for(let r of n)await this.deleteObject(e,r,void 0);}async copyObject(e,n,r,i,s){let o=this.filePath(e,n),a=this.filePath(e,i);await this.ensureDir(a),await V.copyFile(o,a);let l=await V.stat(a),c=await V.readFile(a);return {httpStatusCode:200,eTag:`"${createHash("md5").update(c).digest("hex")}"`,lastModified:l.mtime}}async headObject(e,n,r){let i=this.filePath(e,n),s=await V.stat(i),o=`"${createHash("md5").update(`${i}:${s.mtimeMs}`).digest("hex")}"`;return this.buildMetadata(s,o,n)}async privateAssetUrl(e,n,r){return `file://${this.filePath(e,n)}`}buildMetadata(e,n,r){return {cacheControl:"no-cache",contentLength:tn(e.size),size:tn(e.size),mimetype:Ns(r),lastModified:e.mtime,eTag:n}}};function Ns(t){let e=ie.extname(t).toLowerCase();return {".html":"text/html",".css":"text/css",".js":"application/javascript",".json":"application/json",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".svg":"image/svg+xml",".webp":"image/webp",".avif":"image/avif",".pdf":"application/pdf",".txt":"text/plain",".xml":"application/xml",".zip":"application/zip",".mp4":"video/mp4",".webm":"video/webm",".mp3":"audio/mpeg",".wav":"audio/wav",".woff":"font/woff",".woff2":"font/woff2"}[e]??"application/octet-stream"}var Ls=new Function("spec","return import(spec)");async function nn(t,e,n){try{return await Ls(t)}catch(r){throw r?.code==="ERR_MODULE_NOT_FOUND"||/Cannot find package/.test(String(r?.message))?new Error(`Driver '${e}' selected but '${n}' is not installed. Run: bun add ${n}`):r}}function He(t,e={}){let n=ie__default.resolve(e.cwd??process.cwd()),r=e.env??process.env,i=process.env.SUPABASE_ENV||"development",s=[`.env.${i}.local`,i==="test"?null:".env.local",`.env.${i}`,".env"].filter(a=>a!==null),o=Fs(ie__default.resolve(t),n);for(let a of o)for(let l of s){let c=ie__default.join(a,l),u;try{u=xt.readFileSync(c,"utf-8");}catch{continue}let f;try{f=parse(u);}catch(h){throw new Error(`Failed to parse ${c}: ${h.message}`)}for(let[h,y]of Object.entries(f))r[h]===void 0&&(r[h]=y);}}function Fs(t,e){let n=[],r=t,i=ie__default.parse(r).root;for(;n.push(r),!(r===e||r===i);){let s=ie__default.dirname(r);if(s===r)break;r=s;}return n}var Is=/^env\((\w+)\)$/;function Me(t,e=process.env){return rn(t,e)}function rn(t,e){if(typeof t=="string"){let n=t.match(Is);return n?e[n[1]]??"":t}if(Array.isArray(t))return t.map(n=>rn(n,e));if(t&&typeof t=="object"){let n=Object.getPrototypeOf(t);if(n!==Object.prototype&&n!==null)return t;let r={};for(let[i,s]of Object.entries(t))r[i]=rn(s,e);return r}return t}var Ds=process.env.LITE_VERBOSE==="1";function qe(...t){Ds&&console.error(...t);}var Us=["toml","json","ts","mts","js","mjs","cjs"],Ot=class extends ve{ref(){return this.projectRef()}setRef(e){return this.tempFs.write("project-ref",e),this}link(e){return this.setRef(e.id),e}unlink(){return this.tempFs.delete("project-ref"),this}url(){let e=this.ref();if(!e)throw new Error("No project linked");return this.projectUrl(e)}async getConfigPath(e){let n=ie__default.relative(process.cwd(),Y.config_dir);if(!e)for(let r of Us){let i=ie__default.join(n,`config.${r}`);if(await V__default.access(i).then(()=>true).catch(()=>false)){e=i;break}}return e}async readConfig(e){let n=await this.getConfigPath(e);if(!n)return {};qe(Ve.default.dim(`Using config file: ${Ve.default.cyan(`./${n}`)}`));let r=ie__default.dirname(ie__default.resolve(n));He(r);let i=n.split(".").pop(),s;switch(i){case "toml":s=je(await V__default.readFile(n,"utf-8"));break;case "json":s=JSON.parse(await V__default.readFile(n,"utf-8"));break;case "ts":case "mts":case "js":case "mjs":case "cjs":try{s=(await import(ie__default.join(process.cwd(),n))).default;break}catch(o){throw console.error("Failed to import config file",o),o}default:throw new Error(`Unsupported config file type: ${n}`)}return Me(s)}async createConnection(){throw new Error("Not implemented")}async getConfig(e){let n=await this.readConfig(e);if("connection"in n)return {...n,connection:await n.connection};let r,i;switch(n.db?.driver){case "sqlite":i=n.db?.url??Y.default_db_url,r=await createConnection({url:i,ddlDialect:"sqlite"});break;case "pglite":{i=n.db?.url??ie__default.join(process.cwd(),Y.default_db_dir);let{createPgliteConnection:s}=await nn("@supabase/lite/pglite","pglite","@electric-sql/pglite");r=await s({url:i});break}case "postgres":{i=n.db?.url??"";let{createPostgresConnection:s}=await nn("@supabase/lite/postgres","postgres","postgres");r=await s({url:i});break}default:i=n.db?.url??Y.default_db_url,r=await createConnection({url:i,ddlDialect:"postgres"});break}if(!r)throw new Error("Failed to create connection");return qe(Ve.default.green(" \u279C"),"Database located at",Ve.default.cyan(i??"in-memory")),{...n,connection:r}}async createApp(e,n){let r=await this.getConfig(e),i=new App({...r,options:{...r.options,server:{...r.options?.server,admin:n?.admin??r.options?.server?.admin??n?.adminDefault}}});return i.config.storage?.enabled&&process.env.EXPERIMENTAL_STORAGE==="1"&&!i._storageAdapter&&(i._storageAdapter=new Pt({basePath:ie__default.join(process.cwd(),Y.config_dir,".temp/storage")})),await i.init()}};var Ft=class extends ve{url(e){return this.projectUrl(e)}async ping(){return (await this.fetch("/v1/system/ping")).ok}async list(){let e=await this.fetch("/v1/projects");if(!e.ok)throw new Error("Failed to list projects");let n=await e.json();if(!Array.isArray(n))throw new Error("Failed to list projects");return n}async get(e){if(e=e??this.projectRef(),!e)throw new Error("No project ref found");let n=await this.fetch(`/v1/projects/${e}`);if(!n.ok)throw new Error(`Failed to get project: ${n.status} ${n.statusText}`);let r=await n.json();if(!r||!r.id)throw new Error("Failed to get project");return r}async create(e){if(!e.name)throw new Error("Project name is required");let n=await this.fetch("/v1/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!n.ok){let i=await n.text().catch(()=>"");throw new Error(`Failed to create project: ${n.status} ${n.statusText}${i?` \u2014 ${i}`:""}`)}let r=await n.json();if(!r||!r.id)throw new Error("Failed to create project");return r}async getConfig(e){let n=await this.fetch(`/v1/projects/${e}/config`);if(!n.ok)throw new Error(`Failed to get project config: ${n.status} ${n.statusText}`);let r=await n.json();if(!r)throw new Error("Failed to get project config");return r}async setConfig(e,n){let r=await this.fetch(`/v1/projects/${e}/config`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!r.ok)throw new Error(`Failed to set project config: ${r.status} ${r.statusText}`);return true}async createApp(e){if(!this.config.host)throw new Error("No host specified");let{data:n,error:r}=await this.client.auth.getSession();if(r)throw r;if(!n?.session?.access_token)throw new Error("Not authenticated, sign in first.");let i=await this.getConfig(e);return await new App({...i.config,connection:cloud({projectRef:e,token:n.session.access_token,host:this.config.host})}).init()}};var It=class extends Re{project;get client(){if(!this._client)throw new Error("Supabase client not initialized");return this._client}async getSession(){return await this.client.auth.getSession()}async getAccessToken(){let{data:e,error:n}=await this.getSession();if(n)throw n;return e?.session?.access_token}async requireSession(){let e=await this.getAccessToken();if(!e)throw new Error("Not authenticated, sign in first.");return e}async init(){let e={...this.config};return this.config.withSupabaseClient!==false&&(e.client=this.client,e.token=await this.getAccessToken()),this.project={local:new Ot(e),remote:new Ft(e)},this}};async function Ms(t={}){return await new It({host:Oe,projectsHost:Tt,root:pe.projectDir(),...t}).init()}var pn=Pe(Fe());var an=Pe(Fe());var qs=["toml","json","ts","mts","js","mjs","cjs"];async function Ge(t){let e=ie__default.relative(process.cwd(),Y.config_dir);if(!t)for(let n of qs){let r=ie__default.join(e,`config.${n}`);if(await V__default.access(r).then(()=>true).catch(()=>false)){t=r;break}}return t}async function dr(t){let e=await Ge(t);if(!e)return {};switch(qe(an.default.dim(`Using config file: ${an.default.cyan(`./${e}`)}`)),e.split(".").pop()){case "toml":return je(await V__default.readFile(e,"utf-8"));case "json":return JSON.parse(await V__default.readFile(e,"utf-8"));case "ts":case "mts":case "js":case "mjs":case "cjs":try{return (await import(ie__default.join(process.cwd(),e))).default}catch(r){throw console.error("Failed to import config file",r),r}default:throw new Error(`Unsupported config file type: ${e}`)}}async function Vs(t,e=process.env){try{let n=await Ge(t);if(!n)return;He(ie__default.dirname(ie__default.resolve(n)),{env:e});let i=Me(await dr(t),e)?.auth?.publishable_key;return typeof i=="string"&&i.length>0?i:void 0}catch{return}}function Gs(t){if(!t||t===":memory:")return;let e=t;if(e.startsWith("file://")?e=e.slice(7):e.startsWith("file:")&&(e=e.slice(5)),!(!e||e===":memory:"))return ie__default.resolve(process.cwd(),e)}async function hr(t){let e=await Ge(t);e&&He(ie__default.dirname(ie__default.resolve(e)));let n=Me(await dr(t));if("connection"in n)return;let r=n?.db?.driver;if(r==="postgres")return;let i=n?.db?.url??(r==="pglite"?Y.default_db_dir:Y.default_db_url);return Gs(i)}var Ks="supabase-self-hosted";function ln(t){let e="";for(let n=0;n<t.length;n++)e+=String.fromCharCode(t[n]);return btoa(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}async function gr(t){let e=new TextEncoder().encode(t),n=await crypto.subtle.digest("SHA-256",e);return new Uint8Array(n)}async function cn(t,e=Ks,n){let r=crypto.getRandomValues(new Uint8Array(17)),i=`sb_${t}_`,s=i+ln(r).slice(0,22),o=ln(await gr(`${e}|${s}`)).slice(0,8),a=`${s}_${o}`,l=await Xs(a),c=a.slice(0,i.length+5);return {key:a,hash:l,prefix:c,type:t}}async function Xs(t){return ln(await gr(t))}function yr(t,e){let n="";try{n=xt.readFileSync(t,"utf-8");}catch{n="";}let r=n.length>0?n.split(`
|
|
45
|
-
`):[];r.length>0&&r[r.length-1]===""&&r.pop();let i=r.filter(s=>{let o=s.match(/^([A-Za-z_][A-Za-z0-9_]*)=/);return !(o&&o[1]in e)});for(let[s,o]of Object.entries(e))i.push(`${s}=${o}`);
|
|
42
|
+
`:r}var ks={storage:"EXPERIMENTAL_STORAGE",cloud:"EXPERIMENTAL_CLOUD"},$s=["storage","cloud"];Object.fromEntries($s.map(t=>[t,vs(t)]));function vs(t){let e=typeof process<"u"&&process.env||void 0;return e?e.NODE_ENV==="test"?true:e[ks[t]]==="1":false}function en(t){let e=[],n="",r=0,i=t.length,s=false,o=false,a=0,l=/^create(\s+or\s+replace)?(\s+temp(orary)?)?$/i,c=f=>{mr(f).length>0&&e.push(f.trim());},u=()=>{s=false,o=false,a=0;};for(;r<i;){let f=t[r],m=t[r+1];if(f==="-"&&m==="-"){for(;r<i&&t[r]!==`
|
|
43
|
+
`;)n+=t[r],r++;continue}if(f==="/"&&m==="*"){for(n+="/*",r+=2;r<i&&!(t[r]==="*"&&t[r+1]==="/");)n+=t[r],r++;r<i&&(n+="*/",r+=2);continue}if(f==="'"){for(n+=f,r++;r<i;){if(t[r]==="'"&&t[r+1]==="'"){n+="''",r+=2;continue}if(n+=t[r],t[r]==="'"){r++;break}r++;}continue}if(f==='"'){for(n+=f,r++;r<i;){if(t[r]==='"'&&t[r+1]==='"'){n+='""',r+=2;continue}if(n+=t[r],t[r]==='"'){r++;break}r++;}continue}if(f==="$"){let g=t.indexOf("$",r+1);if(g!==-1){let y=t.slice(r,g+1);if(/^\$[A-Za-z_][A-Za-z0-9_]*\$$|^\$\$$/.test(y)){n+=y,r=g+1;let T=t.indexOf(y,r);T===-1?(n+=t.slice(r),r=i):(n+=t.slice(r,T+y.length),r=T+y.length);continue}}}if(/[A-Za-z_]/.test(f)){let g=r;for(;g<i&&/[A-Za-z0-9_]/.test(t[g]);)g++;let y=t.slice(r,g),E=y.toLowerCase();if(E==="trigger"&&l.test(mr(n))?s=true:s&&E==="begin"?(o=true,a++):s&&o&&E==="case"?a++:s&&o&&E==="end"&&a>0&&a--,n+=y,r=g,s&&o&&a===0){let T=r;for(;T<i&&/\s/.test(t[T]);)T++;t[T]===";"&&(r=T+1),c(n),n="",u();}continue}if(f===";"){if(s&&o&&a>0){n+=f,r++;continue}c(n),n="",u(),r++;continue}n+=f,r++;}return c(n),e}function mr(t){let e="",n=0,r=t.length;for(;n<r;){let i=t[n],s=t[n+1];if(i==="-"&&s==="-"){for(;n<r&&t[n]!==`
|
|
44
|
+
`;)n++;continue}if(i==="/"&&s==="*"){for(n+=2;n<r&&!(t[n]==="*"&&t[n+1]==="/");)n++;n+=2;continue}e+=i,n++;}return e.trim()}function tn(t){return typeof t=="number"?t:Number.parseInt(String(t),10)}var Pt=class{driver=V;basePath;constructor(e){this.basePath=ie.resolve(e.basePath);}filePath(e,n){return ie.join(this.basePath,e,n)}async ensureDir(e){await V.mkdir(ie.dirname(e),{recursive:true});}async getObject(e,n,r,i){let s=this.filePath(e,n),o=await V.stat(s),a=`"${createHash("md5").update(`${s}:${o.mtimeMs}`).digest("hex")}"`;if(i?.ifNoneMatch===a)return {httpStatusCode:304,metadata:this.buildMetadata(o,a,n)};if(i?.ifModifiedSince){let m=new Date(i.ifModifiedSince);if(o.mtime<=m)return {httpStatusCode:304,metadata:this.buildMetadata(o,a,n)}}let l,c,u=o.size,f=200;if(i?.range){let m=i.range.match(/^bytes=(\d+)-(\d*)$/);if(m){let g=Number.parseInt(m[1],10),y=m[2]?Number.parseInt(m[2],10):o.size-1;u=y-g+1,c=`bytes ${g}-${y}/${o.size}`,f=206,l=(await V.open(s,"r")).readableWebStream();}else l=(await V.open(s,"r")).readableWebStream();}else l=(await V.open(s,"r")).readableWebStream();return {httpStatusCode:f,metadata:{...this.buildMetadata(o,a,n),contentLength:u,contentRange:c},body:l}}async uploadObject(e,n,r,i,s,o){let a=this.filePath(e,n);await this.ensureDir(a);let l;if(i instanceof Uint8Array||Buffer.isBuffer(i))l=i;else {let f=[],m=i.getReader();for(;;){let{done:g,value:y}=await m.read();if(g)break;f.push(y);}l=Buffer.concat(f);}await V.writeFile(a,l);let c=await V.stat(a),u=`"${createHash("md5").update(l).digest("hex")}"`;return {cacheControl:o,contentLength:c.size,size:c.size,mimetype:s,lastModified:c.mtime,eTag:u}}async deleteObject(e,n,r){let i=this.filePath(e,n);await V.unlink(i).catch(s=>{if(s.code!=="ENOENT")throw s});}async deleteObjects(e,n){for(let r of n)await this.deleteObject(e,r,void 0);}async copyObject(e,n,r,i,s){let o=this.filePath(e,n),a=this.filePath(e,i);await this.ensureDir(a),await V.copyFile(o,a);let l=await V.stat(a),c=await V.readFile(a);return {httpStatusCode:200,eTag:`"${createHash("md5").update(c).digest("hex")}"`,lastModified:l.mtime}}async headObject(e,n,r){let i=this.filePath(e,n),s=await V.stat(i),o=`"${createHash("md5").update(`${i}:${s.mtimeMs}`).digest("hex")}"`;return this.buildMetadata(s,o,n)}async privateAssetUrl(e,n,r){return `file://${this.filePath(e,n)}`}buildMetadata(e,n,r){return {cacheControl:"no-cache",contentLength:tn(e.size),size:tn(e.size),mimetype:Ls(r),lastModified:e.mtime,eTag:n}}};function Ls(t){let e=ie.extname(t).toLowerCase();return {".html":"text/html",".css":"text/css",".js":"application/javascript",".json":"application/json",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".svg":"image/svg+xml",".webp":"image/webp",".avif":"image/avif",".pdf":"application/pdf",".txt":"text/plain",".xml":"application/xml",".zip":"application/zip",".mp4":"video/mp4",".webm":"video/webm",".mp3":"audio/mpeg",".wav":"audio/wav",".woff":"font/woff",".woff2":"font/woff2"}[e]??"application/octet-stream"}var Ps=new Function("spec","return import(spec)");async function nn(t,e,n){try{return await Ps(t)}catch(r){throw r?.code==="ERR_MODULE_NOT_FOUND"||/Cannot find package/.test(String(r?.message))?new Error(`Driver '${e}' selected but '${n}' is not installed. Run: bun add ${n}`):r}}function Me(t,e={}){let n=ie__default.resolve(e.cwd??process.cwd()),r=e.env??process.env,i=process.env.SUPABASE_ENV||"development",s=[`.env.${i}.local`,i==="test"?null:".env.local",`.env.${i}`,".env"].filter(a=>a!==null),o=Is(ie__default.resolve(t),n);for(let a of o)for(let l of s){let c=ie__default.join(a,l),u;try{u=St.readFileSync(c,"utf-8");}catch{continue}let f;try{f=parse(u);}catch(m){throw new Error(`Failed to parse ${c}: ${m.message}`)}for(let[m,g]of Object.entries(f))r[m]===void 0&&(r[m]=g);}}function Is(t,e){let n=[],r=t,i=ie__default.parse(r).root;for(;n.push(r),!(r===e||r===i);){let s=ie__default.dirname(r);if(s===r)break;r=s;}return n}var Ds=/^env\((\w+)\)$/;function He(t,e=process.env){return rn(t,e)}function rn(t,e){if(typeof t=="string"){let n=t.match(Ds);return n?e[n[1]]??"":t}if(Array.isArray(t))return t.map(n=>rn(n,e));if(t&&typeof t=="object"){let n=Object.getPrototypeOf(t);if(n!==Object.prototype&&n!==null)return t;let r={};for(let[i,s]of Object.entries(t))r[i]=rn(s,e);return r}return t}var js=process.env.LITE_VERBOSE==="1";function qe(...t){js&&console.error(...t);}var Bs=["toml","json","ts","mts","js","mjs","cjs"],Ot=class extends ke{ref(){return this.projectRef()}setRef(e){return this.tempFs.write("project-ref",e),this}link(e){return this.setRef(e.id),e}unlink(){return this.tempFs.delete("project-ref"),this}url(){let e=this.ref();if(!e)throw new Error("No project linked");return this.projectUrl(e)}async getConfigPath(e){let n=ie__default.relative(process.cwd(),Y.config_dir);if(!e)for(let r of Bs){let i=ie__default.join(n,`config.${r}`);if(await V__default.access(i).then(()=>true).catch(()=>false)){e=i;break}}return e}async readConfig(e){let n=await this.getConfigPath(e);if(!n)return {};qe(Ve.default.dim(`Using config file: ${Ve.default.cyan(`./${n}`)}`));let r=ie__default.dirname(ie__default.resolve(n));Me(r);let i=n.split(".").pop(),s;switch(i){case "toml":s=je(await V__default.readFile(n,"utf-8"));break;case "json":s=JSON.parse(await V__default.readFile(n,"utf-8"));break;case "ts":case "mts":case "js":case "mjs":case "cjs":try{s=(await import(ie__default.join(process.cwd(),n))).default;break}catch(o){throw console.error("Failed to import config file",o),o}default:throw new Error(`Unsupported config file type: ${n}`)}return He(s)}async createConnection(){throw new Error("Not implemented")}async getConfig(e){let n=await this.readConfig(e);if("connection"in n)return {...n,connection:await n.connection};let r,i;switch(n.db?.driver){case "sqlite":i=n.db?.url??Y.default_db_url,r=await createConnection({url:i,ddlDialect:"sqlite"});break;case "pglite":{i=n.db?.url??ie__default.join(process.cwd(),Y.default_db_dir);let{createPgliteConnection:s}=await nn("@supabase/lite/pglite","pglite","@electric-sql/pglite");r=await s({url:i});break}case "postgres":{i=n.db?.url??"";let{createPostgresConnection:s}=await nn("@supabase/lite/postgres","postgres","postgres");r=await s({url:i});break}default:i=n.db?.url??Y.default_db_url,r=await createConnection({url:i,ddlDialect:"postgres"});break}if(!r)throw new Error("Failed to create connection");return qe(Ve.default.green(" \u279C"),"Database located at",Ve.default.cyan(i??"in-memory")),{...n,connection:r}}async createApp(e,n){let r=await this.getConfig(e),i=new App({...r,options:{...r.options,server:{...r.options?.server,admin:n?.admin??r.options?.server?.admin??n?.adminDefault}}});return i.config.storage?.enabled&&process.env.EXPERIMENTAL_STORAGE==="1"&&!i._storageAdapter&&(i._storageAdapter=new Pt({basePath:ie__default.join(process.cwd(),Y.config_dir,".temp/storage")})),await i.init()}};var Ft=class extends ke{url(e){return this.projectUrl(e)}async ping(){return (await this.fetch("/v1/system/ping")).ok}async list(){let e=await this.fetch("/v1/projects");if(!e.ok)throw new Error("Failed to list projects");let n=await e.json();if(!Array.isArray(n))throw new Error("Failed to list projects");return n}async get(e){if(e=e??this.projectRef(),!e)throw new Error("No project ref found");let n=await this.fetch(`/v1/projects/${e}`);if(!n.ok)throw new Error(`Failed to get project: ${n.status} ${n.statusText}`);let r=await n.json();if(!r||!r.id)throw new Error("Failed to get project");return r}async create(e){if(!e.name)throw new Error("Project name is required");let n=await this.fetch("/v1/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!n.ok){let i=await n.text().catch(()=>"");throw new Error(`Failed to create project: ${n.status} ${n.statusText}${i?` \u2014 ${i}`:""}`)}let r=await n.json();if(!r||!r.id)throw new Error("Failed to create project");return r}async getConfig(e){let n=await this.fetch(`/v1/projects/${e}/config`);if(!n.ok)throw new Error(`Failed to get project config: ${n.status} ${n.statusText}`);let r=await n.json();if(!r)throw new Error("Failed to get project config");return r}async setConfig(e,n){let r=await this.fetch(`/v1/projects/${e}/config`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!r.ok)throw new Error(`Failed to set project config: ${r.status} ${r.statusText}`);return true}async createApp(e){if(!this.config.host)throw new Error("No host specified");let{data:n,error:r}=await this.client.auth.getSession();if(r)throw r;if(!n?.session?.access_token)throw new Error("Not authenticated, sign in first.");let i=await this.getConfig(e);return await new App({...i.config,connection:cloud({projectRef:e,token:n.session.access_token,host:this.config.host})}).init()}};var It=class extends Re{project;get client(){if(!this._client)throw new Error("Supabase client not initialized");return this._client}async getSession(){return await this.client.auth.getSession()}async getAccessToken(){let{data:e,error:n}=await this.getSession();if(n)throw n;return e?.session?.access_token}async requireSession(){let e=await this.getAccessToken();if(!e)throw new Error("Not authenticated, sign in first.");return e}async init(){let e={...this.config};return this.config.withSupabaseClient!==false&&(e.client=this.client,e.token=await this.getAccessToken()),this.project={local:new Ot(e),remote:new Ft(e)},this}};async function qs(t={}){return await new It({host:Oe,projectsHost:Tt,root:pe.projectDir(),...t}).init()}var pn=Pe(Fe());var an=Pe(Fe());var Vs=["toml","json","ts","mts","js","mjs","cjs"];async function Ge(t){let e=ie__default.relative(process.cwd(),Y.config_dir);if(!t)for(let n of Vs){let r=ie__default.join(e,`config.${n}`);if(await V__default.access(r).then(()=>true).catch(()=>false)){t=r;break}}return t}async function hr(t){let e=await Ge(t);if(!e)return {};switch(qe(an.default.dim(`Using config file: ${an.default.cyan(`./${e}`)}`)),e.split(".").pop()){case "toml":return je(await V__default.readFile(e,"utf-8"));case "json":return JSON.parse(await V__default.readFile(e,"utf-8"));case "ts":case "mts":case "js":case "mjs":case "cjs":try{return (await import(ie__default.join(process.cwd(),e))).default}catch(r){throw console.error("Failed to import config file",r),r}default:throw new Error(`Unsupported config file type: ${e}`)}}async function Gs(t,e=process.env){try{let n=await Ge(t);if(!n)return;Me(ie__default.dirname(ie__default.resolve(n)),{env:e});let i=He(await hr(t),e)?.auth?.publishable_key;return typeof i=="string"&&i.length>0?i:void 0}catch{return}}function Ws(t){if(!t||t===":memory:")return;let e=t;if(e.startsWith("file://")?e=e.slice(7):e.startsWith("file:")&&(e=e.slice(5)),!(!e||e===":memory:"))return ie__default.resolve(process.cwd(),e)}async function gr(t){let e=await Ge(t);e&&Me(ie__default.dirname(ie__default.resolve(e)));let n=He(await hr(t));if("connection"in n)return;let r=n?.db?.driver;if(r==="postgres")return;let i=n?.db?.url??(r==="pglite"?Y.default_db_dir:Y.default_db_url);return Ws(i)}var Ks="supabase-self-hosted";function ln(t){let e="";for(let n=0;n<t.length;n++)e+=String.fromCharCode(t[n]);return btoa(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}async function yr(t){let e=new TextEncoder().encode(t),n=await crypto.subtle.digest("SHA-256",e);return new Uint8Array(n)}async function cn(t,e=Ks,n){let r=crypto.getRandomValues(new Uint8Array(17)),i=`sb_${t}_`,s=i+ln(r).slice(0,22),o=ln(await yr(`${e}|${s}`)).slice(0,8),a=`${s}_${o}`,l=await zs(a),c=a.slice(0,i.length+5);return {key:a,hash:l,prefix:c,type:t}}async function zs(t){return ln(await yr(t))}function br(t,e){let n="";try{n=St.readFileSync(t,"utf-8");}catch{n="";}let r=n.length>0?n.split(`
|
|
45
|
+
`):[];r.length>0&&r[r.length-1]===""&&r.pop();let i=r.filter(s=>{let o=s.match(/^([A-Za-z_][A-Za-z0-9_]*)=/);return !(o&&o[1]in e)});for(let[s,o]of Object.entries(e))i.push(`${s}=${o}`);St.writeFileSync(t,i.join(`
|
|
46
46
|
`)+`
|
|
47
|
-
`);}function
|
|
48
|
-
`);}),
|
|
49
|
-
`);let
|
|
47
|
+
`);}function wr(t,e){let n;try{n=St.readFileSync(t,"utf-8");}catch{return [...e]}return e.filter(r=>!n.match(new RegExp(`^${r}=(.+)$`,"m"))?.[1]?.replace(/^"(.*)"$|^'(.*)'$/,(o,a,l)=>a??l??"")?.trim())}var Dt="SUPABASE_PUBLISHABLE_KEY",jt="SUPABASE_SECRET_KEY";async function Xs(t={}){let e=process.cwd();if(t.recreate){console.log(pn.default.dim("Recreating database..."));try{let a=await gr();a&&St.existsSync(a)&&(St.rmSync(a,{recursive:!0,force:!0}),console.log(pn.default.dim(` \u279C removed ${ie__default.relative(e,a)}`)));}catch{}try{St.rmSync(ie__default.join(e,"supabase",".temp"),{recursive:!0,force:!0});}catch{}}re(ie__default.join(e,"supabase"));let n=await Ge(),r=!n;if(!n){let a={api:{port:54321},db:{driver:"sqlite-postgres",url:"file:./supabase/.temp/data.db",migrations:{schema_paths:["./schemas/schema.sql"]},seed:{sql_paths:["./seed.sql"]}},auth:{enabled:true,jwt_secret:"dev-secret-change-me",jwt_expiry:3600,enable_signup:true,publishable_key:`env(${Dt})`,secret_key:`env(${jt})`,email:{enable_confirmations:false}}};t.driver==="pglite"&&(a.db.driver="pglite",a.db.url=ie__default.relative(process.cwd(),ie__default.join(e,"supabase",".temp","data")));let l=t.configFormat??"toml",c=ie__default.join(e,"supabase",`config.${l}`);l==="json"?Se(c,JSON.stringify(a)):Se(c,Zt(a));}re(ie__default.join(e,"supabase",".temp")),re(ie__default.join(e,"supabase","schemas"),()=>{Se(ie__default.join(e,"supabase","schemas","schema.sql"),t.template?Js:`-- This is a schema file for the database
|
|
48
|
+
`);}),Se(ie__default.join(e,"supabase","seed.sql"),t.template?Ys:`-- This is a seed file for the database
|
|
49
|
+
`);let i=ie__default.join(e,".env"),s=wr(i,[Dt,jt]),o;if(s.length>0){let a={};if(o={},s.includes(Dt)){let l=await cn("publishable");a[Dt]=l.key,o.publishable=l.key;}if(s.includes(jt)){let l=await cn("secret");a[jt]=l.key,o.secret=l.key;}br(i,a);}return {generatedKeys:o,created:r}}var Js=`
|
|
50
50
|
create table todos (
|
|
51
51
|
id serial primary key,
|
|
52
52
|
title text not null,
|
|
@@ -59,7 +59,7 @@ create table todos (
|
|
|
59
59
|
create table test (
|
|
60
60
|
id serial primary key,
|
|
61
61
|
name text not null
|
|
62
|
-
)`,Js="insert into todos (`id`, `title`, `description`, `completed`) values (1, 'test', 'test', false);\ninsert into todos (`id`, `title`, `description`, `completed`) values (2, 'test2', 'test2', true);\ninsert into test (`id`, `name`) values (1, 'test');\n";var wr=createRequire(import.meta.url);function ro(t){let e=normalize(t);return e.length>1&&e[e.length-1]===sep&&(e=e.substring(0,e.length-1)),e}var io=/[\\/]/g;function Er(t,e){return t.replace(io,e)}var so=/^[a-z]:[\\/]$/i;function oo(t){return t==="/"||so.test(t)}function mn(t,e){let{resolvePaths:n,normalizePath:r,pathSeparator:i}=e,s=process.platform==="win32"&&t.includes("/")||t.startsWith(".");if(n&&(t=resolve(t)),(r||s)&&(t=ro(t)),t===".")return "";let o=t[t.length-1]!==i;return Er(o?t+i:t,i)}function Tr(t,e){return e+t}function ao(t,e){return function(n,r){return r.startsWith(t)?r.slice(t.length)+n:Er(relative(t,r),e.pathSeparator)+e.pathSeparator+n}}function lo(t){return t}function co(t,e,n){return e+t+n}function uo(t,e){let{relativePaths:n,includeBasePath:r}=e;return n&&t?ao(t,e):r?Tr:lo}function fo(t){return function(e,n){n.push(e.substring(t.length)||".");}}function po(t){return function(e,n,r){let i=e.substring(t.length)||".";r.every(s=>s(i,true))&&n.push(i);}}var mo=(t,e)=>{e.push(t||".");},ho=(t,e,n)=>{let r=t||".";n.every(i=>i(r,true))&&e.push(r);},go=()=>{};function yo(t,e){let{includeDirs:n,filters:r,relativePaths:i}=e;return n?i?r&&r.length?po(t):fo(t):r&&r.length?ho:mo:go}var bo=(t,e,n,r)=>{r.every(i=>i(t,false))&&n.files++;},wo=(t,e,n,r)=>{r.every(i=>i(t,false))&&e.push(t);},So=(t,e,n,r)=>{n.files++;},xo=(t,e)=>{e.push(t);},Eo=()=>{};function To(t){let{excludeFiles:e,filters:n,onlyCounts:r}=t;return e?Eo:n&&n.length?r?bo:wo:r?So:xo}var Ao=t=>t,_o=()=>[""].slice(0,0);function Co(t){return t.group?_o:Ao}var Ro=(t,e,n)=>{t.push({directory:e,files:n,dir:e});},vo=()=>{};function $o(t){return t.group?Ro:vo}var ko=function(t,e,n){let{queue:r,fs:i,options:{suppressErrors:s}}=e;r.enqueue(),i.realpath(t,(o,a)=>{if(o)return r.dequeue(s?null:o,e);i.stat(a,(l,c)=>{if(l)return r.dequeue(s?null:l,e);if(c.isDirectory()&&Ar(t,a,e))return r.dequeue(null,e);n(c,a),r.dequeue(null,e);});});},No=function(t,e,n){let{queue:r,fs:i,options:{suppressErrors:s}}=e;r.enqueue();try{let o=i.realpathSync(t),a=i.statSync(o);if(a.isDirectory()&&Ar(t,o,e))return;n(a,o);}catch(o){if(!s)throw o}};function Lo(t,e){return !t.resolveSymlinks||t.excludeSymlinks?null:e?No:ko}function Ar(t,e,n){if(n.options.useRealPaths)return Po(e,n);let r=dirname(t),i=1;for(;r!==n.root&&i<2;){let s=n.symlinks.get(r);!!s&&(s===e||s.startsWith(e)||e.startsWith(s))?i++:r=dirname(r);}return n.symlinks.set(t,e),i>1}function Po(t,e){return e.visited.includes(t+e.options.pathSeparator)}var Oo=t=>t.counts,Fo=t=>t.groups,Io=t=>t.paths,Do=t=>t.paths.slice(0,t.options.maxFiles),jo=(t,e,n)=>(Ut(e,n,t.counts,t.options.suppressErrors),null),Uo=(t,e,n)=>(Ut(e,n,t.paths,t.options.suppressErrors),null),Bo=(t,e,n)=>(Ut(e,n,t.paths.slice(0,t.options.maxFiles),t.options.suppressErrors),null),Ho=(t,e,n)=>(Ut(e,n,t.groups,t.options.suppressErrors),null);function Ut(t,e,n,r){e(t&&!r?t:null,n);}function Mo(t,e){let{onlyCounts:n,group:r,maxFiles:i}=t;return n?e?Oo:jo:r?e?Fo:Ho:i?e?Do:Bo:e?Io:Uo}var _r={withFileTypes:true},qo=(t,e,n,r,i)=>{if(t.queue.enqueue(),r<0)return t.queue.dequeue(null,t);let{fs:s}=t;t.visited.push(e),t.counts.directories++,s.readdir(e||".",_r,(o,a=[])=>{i(a,n,r),t.queue.dequeue(t.options.suppressErrors?null:o,t);});},Vo=(t,e,n,r,i)=>{let{fs:s}=t;if(r<0)return;t.visited.push(e),t.counts.directories++;let o=[];try{o=s.readdirSync(e||".",_r);}catch(a){if(!t.options.suppressErrors)throw a}i(o,n,r);};function Go(t){return t?Vo:qo}var Ko=class{count=0;constructor(t){this.onQueueEmpty=t;}enqueue(){return this.count++,this.count}dequeue(t,e){this.onQueueEmpty&&(--this.count<=0||t)&&(this.onQueueEmpty(t,e),t&&(e.controller.abort(),this.onQueueEmpty=void 0));}},Xo=class{_files=0;_directories=0;set files(t){this._files=t;}get files(){return this._files}set directories(t){this._directories=t;}get directories(){return this._directories}get dirs(){return this._directories}},Wo=class{aborted=false;abort(){this.aborted=true;}},Cr=class{root;isSynchronous;state;joinPath;pushDirectory;pushFile;getArray;groupFiles;resolveSymlink;walkDirectory;callbackInvoker;constructor(t,e,n){this.isSynchronous=!n,this.callbackInvoker=Mo(e,this.isSynchronous),this.root=mn(t,e),this.state={root:oo(this.root)?this.root:this.root.slice(0,-1),paths:[""].slice(0,0),groups:[],counts:new Xo,options:e,queue:new Ko((r,i)=>this.callbackInvoker(i,r,n)),symlinks:new Map,visited:[""].slice(0,0),controller:new Wo,fs:e.fs||no},this.joinPath=uo(this.root,e),this.pushDirectory=yo(this.root,e),this.pushFile=To(e),this.getArray=Co(e),this.groupFiles=$o(e),this.resolveSymlink=Lo(e,this.isSynchronous),this.walkDirectory=Go(this.isSynchronous);}start(){return this.pushDirectory(this.root,this.state.paths,this.state.options.filters),this.walkDirectory(this.state,this.root,this.root,this.state.options.maxDepth,this.walk),this.isSynchronous?this.callbackInvoker(this.state,null):null}walk=(t,e,n)=>{let{paths:r,options:{filters:i,resolveSymlinks:s,excludeSymlinks:o,exclude:a,maxFiles:l,signal:c,useRealPaths:u,pathSeparator:f},controller:h}=this.state;if(h.aborted||c&&c.aborted||l&&r.length>l)return;let y=this.getArray(this.state.paths);for(let g=0;g<t.length;++g){let E=t[g];if(E.isFile()||E.isSymbolicLink()&&!s&&!o){let A=this.joinPath(E.name,e);this.pushFile(A,y,this.state.counts,i);}else if(E.isDirectory()){let A=co(E.name,e,this.state.options.pathSeparator);if(a&&a(E.name,A))continue;this.pushDirectory(A,r,i),this.walkDirectory(this.state,A,A,n-1,this.walk);}else if(this.resolveSymlink&&E.isSymbolicLink()){let A=Tr(E.name,e);this.resolveSymlink(A,this.state,(q,x)=>{if(q.isDirectory()){if(x=mn(x,this.state.options),a&&a(E.name,u?x:A+f))return;this.walkDirectory(this.state,x,u?x:A+f,n-1,this.walk);}else {x=u?x:A;let H=basename(x),X=mn(dirname(x),this.state.options);x=this.joinPath(H,X),this.pushFile(x,y,this.state.counts,i);}});}}this.groupFiles(this.state.groups,e,y);}};function zo(t,e){return new Promise((n,r)=>{Rr(t,e,(i,s)=>{if(i)return r(i);n(s);});})}function Rr(t,e,n){new Cr(t,e,n).start();}function Jo(t,e){return new Cr(t,e).start()}var Sr=class{constructor(t,e){this.root=t,this.options=e;}withPromise(){return zo(this.root,this.options)}withCallback(t){Rr(this.root,this.options,t);}sync(){return Jo(this.root,this.options)}},vr=null;try{wr.resolve("picomatch"),vr=wr("picomatch");}catch{}var $r=class{globCache={};options={maxDepth:1/0,suppressErrors:true,pathSeparator:sep,filters:[]};globFunction;constructor(t){this.options={...this.options,...t},this.globFunction=this.options.globFunction;}group(){return this.options.group=true,this}withPathSeparator(t){return this.options.pathSeparator=t,this}withBasePath(){return this.options.includeBasePath=true,this}withRelativePaths(){return this.options.relativePaths=true,this}withDirs(){return this.options.includeDirs=true,this}withMaxDepth(t){return this.options.maxDepth=t,this}withMaxFiles(t){return this.options.maxFiles=t,this}withFullPaths(){return this.options.resolvePaths=true,this.options.includeBasePath=true,this}withErrors(){return this.options.suppressErrors=false,this}withSymlinks({resolvePaths:t=true}={}){return this.options.resolveSymlinks=true,this.options.useRealPaths=t,this.withFullPaths()}withAbortSignal(t){return this.options.signal=t,this}normalize(){return this.options.normalizePath=true,this}filter(t){return this.options.filters.push(t),this}onlyDirs(){return this.options.excludeFiles=true,this.options.includeDirs=true,this}exclude(t){return this.options.exclude=t,this}onlyCounts(){return this.options.onlyCounts=true,this}crawl(t){return new Sr(t||".",this.options)}withGlobFunction(t){return this.globFunction=t,this}crawlWithOptions(t,e){return this.options={...this.options,...e},new Sr(t||".",this.options)}glob(...t){return this.globFunction?this.globWithOptions(t):this.globWithOptions(t,{dot:true})}globWithOptions(t,...e){let n=this.globFunction||vr;if(!n)throw new Error("Please specify a glob function to use glob matching.");var r=this.globCache[t.join("\0")];return r||(r=n(t,...e),this.globCache[t.join("\0")]=r),this.options.filters.push(i=>r(i)),this}};var Ne=Pe(ei()),Ba=Array.isArray,ii=/\\/g,Ha=/^[A-Za-z]:$/,si=process.platform==="win32",Ma=/^(\/?\.\.)+$/;function qa(t,e={}){let n=t.length,r=Array(n),i=Array(n),s,o;for(s=0;s<n;s++){let a=oi(t[s]);r[s]=a;let l=a.length,c=Array(l);for(o=0;o<l;o++)c[o]=(0, Ne.default)(a[o],e);i[s]=c;}return a=>{let l=a.split("/");if(l[0]===".."&&Ma.test(a))return true;for(s=0;s<n;s++){let c=r[s],u=i[s],f=l.length,h=Math.min(f,c.length);for(o=0;o<h;){let y=c[o];if(y.includes("/"))return true;if(!u[o](l[o]))break;if(!e.noglobstar&&y==="**")return true;o++;}if(o===f)return true}return false}}var Va=/^[A-Z]:\/$/i,Ga=si?t=>Va.test(t):t=>t==="/";function ti(t,e,n){if(t===e||e.startsWith(`${t}/`)){if(n){let i=t.length+ +!Ga(t);return (s,o)=>s.slice(i,o?-1:void 0)||"."}let r=e.slice(t.length+1);return r?(i,s)=>{if(i===".")return r;let o=`${r}/${i}`;return s?o.slice(0,-1):o}:(i,s)=>s&&i!=="."?i.slice(0,-1):i}return n?r=>posix.relative(t,r)||".":r=>posix.relative(t,`${e}/${r}`)||"."}function Ka(t,e){if(e.startsWith(`${t}/`)){let n=e.slice(t.length+1);return r=>`${n}/${r}`}return n=>{let r=posix.relative(t,`${e}/${n}`);return n[n.length-1]==="/"&&r!==""?`${r}/`:r||"."}}function ni(t){return t.replace(Ha,e=>`${e}/`)}var Xa={parts:true};function oi(t){var e;let n=Ne.default.scan(t,Xa);return !((e=n.parts)===null||e===void 0)&&e.length?n.parts:[t]}var Wa=/(?<!\\)([()[\]{}*?|]|^!|[!+@](?=\()|\\(?![()[\]{}!*+?@|]))/g,za=/(?<!\\)([()[\]{}]|^!|[!+@](?=\())/g,Ja=t=>t.replace(Wa,"\\$&"),Ya=t=>t.replace(za,"\\$&"),Qa=si?Ya:Ja;function Za(t,e){let n=Ne.default.scan(t);return n.isGlob||n.negated}function Je(...t){console.log(`[tinyglobby ${new Date().toLocaleTimeString("es")}]`,...t);}function ai(t){return typeof t=="string"?[t]:t??[]}var el=/^(\/?\.\.)+/,tl=/\\(?=[()[\]{}!*+?@|])/g;function _n(t,e,n,r){var i;let s=e.cwd,o=t;t[t.length-1]==="/"&&(o=t.slice(0,-1)),o[o.length-1]!=="*"&&e.expandDirectories&&(o+="/**");let a=Qa(s);o=isAbsolute(o.replace(tl,""))?posix.relative(a,o):posix.normalize(o);let l=(i=el.exec(o))===null||i===void 0?void 0:i[0],c=oi(o);if(l){let f=(l.length+1)/3,h=0,y=a.split("/");for(;h<f&&c[h+f]===y[y.length+h-f];)o=o.slice(0,(f-h-1)*3)+o.slice((f-h)*3+c[h+f].length+1)||".",h++;let g=posix.join(s,l.slice(h*3));g[0]!=="."&&n.root.length>g.length&&(n.root=ni(g),n.depthOffset=-f+h);}if(!r&&n.depthOffset>=0){var u;(u=n.commonPath)!==null&&u!==void 0||(n.commonPath=c);let f=[],h=Math.min(n.commonPath.length,c.length);for(let y=0;y<h;y++){let g=c[y];if(g==="**"&&!c[y+1]){f.pop();break}if(y===c.length-1||g!==n.commonPath[y]||Za(g))break;f.push(g);}n.depthOffset=f.length,n.commonPath=f,n.root=ni(f.length>0?posix.join(s,...f):s);}return o}function nl(t,e,n){let r=[],i=[];for(let s of t.ignore)s&&(s[0]!=="!"||s[1]==="(")&&i.push(_n(s,t,n,true));for(let s of e)s&&(s[0]!=="!"||s[1]==="("?r.push(_n(s,t,n,false)):(s[1]!=="!"||s[2]==="(")&&i.push(_n(s.slice(1),t,n,true)));return {match:r,ignore:i}}function rl(t,e){let n=t.cwd,r={root:n,depthOffset:0},i=nl(t,e,r);t.debug&&Je("internal processing patterns:",i);let{absolute:s,caseSensitiveMatch:o,debug:a,dot:l,followSymbolicLinks:c,onlyDirectories:u}=t,f=r.root.replace(ii,""),h={dot:l,nobrace:t.braceExpansion===false,nocase:!o,noextglob:t.extglob===false,noglobstar:t.globstar===false,posix:true},y=(0, Ne.default)(i.match,h),g=(0, Ne.default)(i.ignore,h),E=qa(i.match,h),A=ti(n,f,s),q=s?A:ti(n,f,true),x=(O,$)=>{let k=q($,true);return k!=="."&&!E(k)||g(k)},H;t.deep!==void 0&&(H=Math.round(t.deep-r.depthOffset));let X=new $r({filters:[a?(O,$)=>{let k=A(O,$),T=y(k)&&!g(k);return T&&Je(`matched ${k}`),T}:(O,$)=>{let k=A(O,$);return y(k)&&!g(k)}],exclude:a?(O,$)=>{let k=x(O,$);return Je(`${k?"skipped":"crawling"} ${$}`),k}:x,fs:t.fs,pathSeparator:"/",relativePaths:!s,resolvePaths:s,includeBasePath:s,resolveSymlinks:c,excludeSymlinks:!c,excludeFiles:u,includeDirs:u||!t.onlyFiles,maxDepth:H,signal:t.signal}).crawl(f);return t.debug&&Je("internal properties:",{...r,root:f}),[X,n!==f&&!s&&Ka(n,f)]}function il(t,e){if(e)for(let n=t.length-1;n>=0;n--)t[n]=e(t[n]);return t}var ri={caseSensitiveMatch:true,debug:!!process.env.TINYGLOBBY_DEBUG,expandDirectories:true,followSymbolicLinks:true,onlyFiles:true};function sl(t){let e=Object.assign({},t);for(let n in ri)e[n]===void 0&&Object.assign(e,{[n]:ri[n]});return e.cwd=(e.cwd instanceof URL?fileURLToPath(e.cwd):resolve(e.cwd||process.cwd())).replace(ii,"/"),e.ignore=ai(e.ignore),e.fs&&(e.fs={readdir:e.fs.readdir||readdir,readdirSync:e.fs.readdirSync||readdirSync,realpath:e.fs.realpath||realpath,realpathSync:e.fs.realpathSync||realpathSync,stat:e.fs.stat||stat,statSync:e.fs.statSync||statSync}),e.debug&&Je("globbing with options:",e),e}function ol(t,e={}){var n;if(t&&e?.patterns)throw new Error("Cannot pass patterns as both an argument and an option");let r=Ba(t)||typeof t=="string",i=ai((n=r?t:t.patterns)!==null&&n!==void 0?n:"**/*"),s=sl(r?e:t);return i.length>0?rl(s,i):[]}async function Ye(t,e){let[n,r]=ol(t,e);return n?il(await n.withPromise(),r):[]}var N=Pe(Fe());function te(t){return t.dialect==="postgres"?"pg":t.config?.ddlDialect==="sqlite"?"sqlite":"pg-flat"}function we(t){return t==="sqlite"?{schema_migrations:"migrations",seed_files:"seed_files"}:t==="pg-flat"?{schema_migrations:'"supabase_migrations.schema_migrations"',seed_files:'"supabase_migrations.seed_files"'}:{schema_migrations:"supabase_migrations.schema_migrations",seed_files:"supabase_migrations.seed_files"}}function Qe(t){return `'${t.replace(/'/g,"''")}'`}function al(t){return `'${`{${t.map(r=>`"${r.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}"`).join(",")}}`.replace(/'/g,"''")}'`}function li(t,e){return e==null?"NULL":t==="pg"?al(e):Qe(JSON.stringify(e))}function Cn(t){return t==null?"NULL":Qe(t)}function ci(t){if(t==null)return [];if(Array.isArray(t))return t;if(typeof t=="string"){let e=t.trim();if(e==="")return [];try{let n=JSON.parse(e);return Array.isArray(n)?n:[]}catch{return []}}return []}function ll(t){return {version:String(t.version),name:t.name??null,statements:ci(t.statements),rollback:ci(t.rollback),created_by:t.created_by??null,idempotency_key:t.idempotency_key??null}}var cl=[{name:"created_by",pgType:"text",sqliteType:"TEXT"},{name:"idempotency_key",pgType:"text",sqliteType:"TEXT"},{name:"rollback",pgType:"text[]",sqliteType:"TEXT"}];function ul(t){let{schema_migrations:e,seed_files:n}=we(t);return t==="pg"?["CREATE SCHEMA IF NOT EXISTS supabase_migrations",`CREATE TABLE IF NOT EXISTS ${e} (
|
|
62
|
+
)`,Ys="insert into todos (`id`, `title`, `description`, `completed`) values (1, 'test', 'test', false);\ninsert into todos (`id`, `title`, `description`, `completed`) values (2, 'test2', 'test2', true);\ninsert into test (`id`, `name`) values (1, 'test');\n";var xr=createRequire(import.meta.url);function io(t){let e=normalize(t);return e.length>1&&e[e.length-1]===sep&&(e=e.substring(0,e.length-1)),e}var so=/[\\/]/g;function Tr(t,e){return t.replace(so,e)}var oo=/^[a-z]:[\\/]$/i;function ao(t){return t==="/"||oo.test(t)}function mn(t,e){let{resolvePaths:n,normalizePath:r,pathSeparator:i}=e,s=process.platform==="win32"&&t.includes("/")||t.startsWith(".");if(n&&(t=resolve(t)),(r||s)&&(t=io(t)),t===".")return "";let o=t[t.length-1]!==i;return Tr(o?t+i:t,i)}function Ar(t,e){return e+t}function lo(t,e){return function(n,r){return r.startsWith(t)?r.slice(t.length)+n:Tr(relative(t,r),e.pathSeparator)+e.pathSeparator+n}}function co(t){return t}function uo(t,e,n){return e+t+n}function fo(t,e){let{relativePaths:n,includeBasePath:r}=e;return n&&t?lo(t,e):r?Ar:co}function po(t){return function(e,n){n.push(e.substring(t.length)||".");}}function mo(t){return function(e,n,r){let i=e.substring(t.length)||".";r.every(s=>s(i,true))&&n.push(i);}}var ho=(t,e)=>{e.push(t||".");},go=(t,e,n)=>{let r=t||".";n.every(i=>i(r,true))&&e.push(r);},yo=()=>{};function bo(t,e){let{includeDirs:n,filters:r,relativePaths:i}=e;return n?i?r&&r.length?mo(t):po(t):r&&r.length?go:ho:yo}var wo=(t,e,n,r)=>{r.every(i=>i(t,false))&&n.files++;},xo=(t,e,n,r)=>{r.every(i=>i(t,false))&&e.push(t);},So=(t,e,n,r)=>{n.files++;},Eo=(t,e)=>{e.push(t);},To=()=>{};function Ao(t){let{excludeFiles:e,filters:n,onlyCounts:r}=t;return e?To:n&&n.length?r?wo:xo:r?So:Eo}var _o=t=>t,Co=()=>[""].slice(0,0);function Ro(t){return t.group?Co:_o}var ko=(t,e,n)=>{t.push({directory:e,files:n,dir:e});},$o=()=>{};function vo(t){return t.group?ko:$o}var No=function(t,e,n){let{queue:r,fs:i,options:{suppressErrors:s}}=e;r.enqueue(),i.realpath(t,(o,a)=>{if(o)return r.dequeue(s?null:o,e);i.stat(a,(l,c)=>{if(l)return r.dequeue(s?null:l,e);if(c.isDirectory()&&_r(t,a,e))return r.dequeue(null,e);n(c,a),r.dequeue(null,e);});});},Lo=function(t,e,n){let{queue:r,fs:i,options:{suppressErrors:s}}=e;r.enqueue();try{let o=i.realpathSync(t),a=i.statSync(o);if(a.isDirectory()&&_r(t,o,e))return;n(a,o);}catch(o){if(!s)throw o}};function Po(t,e){return !t.resolveSymlinks||t.excludeSymlinks?null:e?Lo:No}function _r(t,e,n){if(n.options.useRealPaths)return Oo(e,n);let r=dirname(t),i=1;for(;r!==n.root&&i<2;){let s=n.symlinks.get(r);!!s&&(s===e||s.startsWith(e)||e.startsWith(s))?i++:r=dirname(r);}return n.symlinks.set(t,e),i>1}function Oo(t,e){return e.visited.includes(t+e.options.pathSeparator)}var Fo=t=>t.counts,Io=t=>t.groups,Do=t=>t.paths,jo=t=>t.paths.slice(0,t.options.maxFiles),Uo=(t,e,n)=>(Ut(e,n,t.counts,t.options.suppressErrors),null),Bo=(t,e,n)=>(Ut(e,n,t.paths,t.options.suppressErrors),null),Mo=(t,e,n)=>(Ut(e,n,t.paths.slice(0,t.options.maxFiles),t.options.suppressErrors),null),Ho=(t,e,n)=>(Ut(e,n,t.groups,t.options.suppressErrors),null);function Ut(t,e,n,r){e(t&&!r?t:null,n);}function qo(t,e){let{onlyCounts:n,group:r,maxFiles:i}=t;return n?e?Fo:Uo:r?e?Io:Ho:i?e?jo:Mo:e?Do:Bo}var Cr={withFileTypes:true},Vo=(t,e,n,r,i)=>{if(t.queue.enqueue(),r<0)return t.queue.dequeue(null,t);let{fs:s}=t;t.visited.push(e),t.counts.directories++,s.readdir(e||".",Cr,(o,a=[])=>{i(a,n,r),t.queue.dequeue(t.options.suppressErrors?null:o,t);});},Go=(t,e,n,r,i)=>{let{fs:s}=t;if(r<0)return;t.visited.push(e),t.counts.directories++;let o=[];try{o=s.readdirSync(e||".",Cr);}catch(a){if(!t.options.suppressErrors)throw a}i(o,n,r);};function Wo(t){return t?Go:Vo}var Ko=class{count=0;constructor(t){this.onQueueEmpty=t;}enqueue(){return this.count++,this.count}dequeue(t,e){this.onQueueEmpty&&(--this.count<=0||t)&&(this.onQueueEmpty(t,e),t&&(e.controller.abort(),this.onQueueEmpty=void 0));}},zo=class{_files=0;_directories=0;set files(t){this._files=t;}get files(){return this._files}set directories(t){this._directories=t;}get directories(){return this._directories}get dirs(){return this._directories}},Xo=class{aborted=false;abort(){this.aborted=true;}},Rr=class{root;isSynchronous;state;joinPath;pushDirectory;pushFile;getArray;groupFiles;resolveSymlink;walkDirectory;callbackInvoker;constructor(t,e,n){this.isSynchronous=!n,this.callbackInvoker=qo(e,this.isSynchronous),this.root=mn(t,e),this.state={root:ao(this.root)?this.root:this.root.slice(0,-1),paths:[""].slice(0,0),groups:[],counts:new zo,options:e,queue:new Ko((r,i)=>this.callbackInvoker(i,r,n)),symlinks:new Map,visited:[""].slice(0,0),controller:new Xo,fs:e.fs||ro},this.joinPath=fo(this.root,e),this.pushDirectory=bo(this.root,e),this.pushFile=Ao(e),this.getArray=Ro(e),this.groupFiles=vo(e),this.resolveSymlink=Po(e,this.isSynchronous),this.walkDirectory=Wo(this.isSynchronous);}start(){return this.pushDirectory(this.root,this.state.paths,this.state.options.filters),this.walkDirectory(this.state,this.root,this.root,this.state.options.maxDepth,this.walk),this.isSynchronous?this.callbackInvoker(this.state,null):null}walk=(t,e,n)=>{let{paths:r,options:{filters:i,resolveSymlinks:s,excludeSymlinks:o,exclude:a,maxFiles:l,signal:c,useRealPaths:u,pathSeparator:f},controller:m}=this.state;if(m.aborted||c&&c.aborted||l&&r.length>l)return;let g=this.getArray(this.state.paths);for(let y=0;y<t.length;++y){let E=t[y];if(E.isFile()||E.isSymbolicLink()&&!s&&!o){let T=this.joinPath(E.name,e);this.pushFile(T,g,this.state.counts,i);}else if(E.isDirectory()){let T=uo(E.name,e,this.state.options.pathSeparator);if(a&&a(E.name,T))continue;this.pushDirectory(T,r,i),this.walkDirectory(this.state,T,T,n-1,this.walk);}else if(this.resolveSymlink&&E.isSymbolicLink()){let T=Ar(E.name,e);this.resolveSymlink(T,this.state,(q,S)=>{if(q.isDirectory()){if(S=mn(S,this.state.options),a&&a(E.name,u?S:T+f))return;this.walkDirectory(this.state,S,u?S:T+f,n-1,this.walk);}else {S=u?S:T;let M=basename(S),K=mn(dirname(S),this.state.options);S=this.joinPath(M,K),this.pushFile(S,g,this.state.counts,i);}});}}this.groupFiles(this.state.groups,e,g);}};function Jo(t,e){return new Promise((n,r)=>{kr(t,e,(i,s)=>{if(i)return r(i);n(s);});})}function kr(t,e,n){new Rr(t,e,n).start();}function Yo(t,e){return new Rr(t,e).start()}var Sr=class{constructor(t,e){this.root=t,this.options=e;}withPromise(){return Jo(this.root,this.options)}withCallback(t){kr(this.root,this.options,t);}sync(){return Yo(this.root,this.options)}},$r=null;try{xr.resolve("picomatch"),$r=xr("picomatch");}catch{}var vr=class{globCache={};options={maxDepth:1/0,suppressErrors:true,pathSeparator:sep,filters:[]};globFunction;constructor(t){this.options={...this.options,...t},this.globFunction=this.options.globFunction;}group(){return this.options.group=true,this}withPathSeparator(t){return this.options.pathSeparator=t,this}withBasePath(){return this.options.includeBasePath=true,this}withRelativePaths(){return this.options.relativePaths=true,this}withDirs(){return this.options.includeDirs=true,this}withMaxDepth(t){return this.options.maxDepth=t,this}withMaxFiles(t){return this.options.maxFiles=t,this}withFullPaths(){return this.options.resolvePaths=true,this.options.includeBasePath=true,this}withErrors(){return this.options.suppressErrors=false,this}withSymlinks({resolvePaths:t=true}={}){return this.options.resolveSymlinks=true,this.options.useRealPaths=t,this.withFullPaths()}withAbortSignal(t){return this.options.signal=t,this}normalize(){return this.options.normalizePath=true,this}filter(t){return this.options.filters.push(t),this}onlyDirs(){return this.options.excludeFiles=true,this.options.includeDirs=true,this}exclude(t){return this.options.exclude=t,this}onlyCounts(){return this.options.onlyCounts=true,this}crawl(t){return new Sr(t||".",this.options)}withGlobFunction(t){return this.globFunction=t,this}crawlWithOptions(t,e){return this.options={...this.options,...e},new Sr(t||".",this.options)}glob(...t){return this.globFunction?this.globWithOptions(t):this.globWithOptions(t,{dot:true})}globWithOptions(t,...e){let n=this.globFunction||$r;if(!n)throw new Error("Please specify a glob function to use glob matching.");var r=this.globCache[t.join("\0")];return r||(r=n(t,...e),this.globCache[t.join("\0")]=r),this.options.filters.push(i=>r(i)),this}};var Ne=Pe(ti()),Ma=Array.isArray,si=/\\/g,Ha=/^[A-Za-z]:$/,oi=process.platform==="win32",qa=/^(\/?\.\.)+$/;function Va(t,e={}){let n=t.length,r=Array(n),i=Array(n),s,o;for(s=0;s<n;s++){let a=ai(t[s]);r[s]=a;let l=a.length,c=Array(l);for(o=0;o<l;o++)c[o]=(0, Ne.default)(a[o],e);i[s]=c;}return a=>{let l=a.split("/");if(l[0]===".."&&qa.test(a))return true;for(s=0;s<n;s++){let c=r[s],u=i[s],f=l.length,m=Math.min(f,c.length);for(o=0;o<m;){let g=c[o];if(g.includes("/"))return true;if(!u[o](l[o]))break;if(!e.noglobstar&&g==="**")return true;o++;}if(o===f)return true}return false}}var Ga=/^[A-Z]:\/$/i,Wa=oi?t=>Ga.test(t):t=>t==="/";function ni(t,e,n){if(t===e||e.startsWith(`${t}/`)){if(n){let i=t.length+ +!Wa(t);return (s,o)=>s.slice(i,o?-1:void 0)||"."}let r=e.slice(t.length+1);return r?(i,s)=>{if(i===".")return r;let o=`${r}/${i}`;return s?o.slice(0,-1):o}:(i,s)=>s&&i!=="."?i.slice(0,-1):i}return n?r=>posix.relative(t,r)||".":r=>posix.relative(t,`${e}/${r}`)||"."}function Ka(t,e){if(e.startsWith(`${t}/`)){let n=e.slice(t.length+1);return r=>`${n}/${r}`}return n=>{let r=posix.relative(t,`${e}/${n}`);return n[n.length-1]==="/"&&r!==""?`${r}/`:r||"."}}function ri(t){return t.replace(Ha,e=>`${e}/`)}var za={parts:true};function ai(t){var e;let n=Ne.default.scan(t,za);return !((e=n.parts)===null||e===void 0)&&e.length?n.parts:[t]}var Xa=/(?<!\\)([()[\]{}*?|]|^!|[!+@](?=\()|\\(?![()[\]{}!*+?@|]))/g,Ja=/(?<!\\)([()[\]{}]|^!|[!+@](?=\())/g,Ya=t=>t.replace(Xa,"\\$&"),Qa=t=>t.replace(Ja,"\\$&"),Za=oi?Qa:Ya;function el(t,e){let n=Ne.default.scan(t);return n.isGlob||n.negated}function Je(...t){console.log(`[tinyglobby ${new Date().toLocaleTimeString("es")}]`,...t);}function li(t){return typeof t=="string"?[t]:t??[]}var tl=/^(\/?\.\.)+/,nl=/\\(?=[()[\]{}!*+?@|])/g;function _n(t,e,n,r){var i;let s=e.cwd,o=t;t[t.length-1]==="/"&&(o=t.slice(0,-1)),o[o.length-1]!=="*"&&e.expandDirectories&&(o+="/**");let a=Za(s);o=isAbsolute(o.replace(nl,""))?posix.relative(a,o):posix.normalize(o);let l=(i=tl.exec(o))===null||i===void 0?void 0:i[0],c=ai(o);if(l){let f=(l.length+1)/3,m=0,g=a.split("/");for(;m<f&&c[m+f]===g[g.length+m-f];)o=o.slice(0,(f-m-1)*3)+o.slice((f-m)*3+c[m+f].length+1)||".",m++;let y=posix.join(s,l.slice(m*3));y[0]!=="."&&n.root.length>y.length&&(n.root=ri(y),n.depthOffset=-f+m);}if(!r&&n.depthOffset>=0){var u;(u=n.commonPath)!==null&&u!==void 0||(n.commonPath=c);let f=[],m=Math.min(n.commonPath.length,c.length);for(let g=0;g<m;g++){let y=c[g];if(y==="**"&&!c[g+1]){f.pop();break}if(g===c.length-1||y!==n.commonPath[g]||el(y))break;f.push(y);}n.depthOffset=f.length,n.commonPath=f,n.root=ri(f.length>0?posix.join(s,...f):s);}return o}function rl(t,e,n){let r=[],i=[];for(let s of t.ignore)s&&(s[0]!=="!"||s[1]==="(")&&i.push(_n(s,t,n,true));for(let s of e)s&&(s[0]!=="!"||s[1]==="("?r.push(_n(s,t,n,false)):(s[1]!=="!"||s[2]==="(")&&i.push(_n(s.slice(1),t,n,true)));return {match:r,ignore:i}}function il(t,e){let n=t.cwd,r={root:n,depthOffset:0},i=rl(t,e,r);t.debug&&Je("internal processing patterns:",i);let{absolute:s,caseSensitiveMatch:o,debug:a,dot:l,followSymbolicLinks:c,onlyDirectories:u}=t,f=r.root.replace(si,""),m={dot:l,nobrace:t.braceExpansion===false,nocase:!o,noextglob:t.extglob===false,noglobstar:t.globstar===false,posix:true},g=(0, Ne.default)(i.match,m),y=(0, Ne.default)(i.ignore,m),E=Va(i.match,m),T=ni(n,f,s),q=s?T:ni(n,f,true),S=(O,$)=>{let v=q($,true);return v!=="."&&!E(v)||y(v)},M;t.deep!==void 0&&(M=Math.round(t.deep-r.depthOffset));let K=new vr({filters:[a?(O,$)=>{let v=T(O,$),A=g(v)&&!y(v);return A&&Je(`matched ${v}`),A}:(O,$)=>{let v=T(O,$);return g(v)&&!y(v)}],exclude:a?(O,$)=>{let v=S(O,$);return Je(`${v?"skipped":"crawling"} ${$}`),v}:S,fs:t.fs,pathSeparator:"/",relativePaths:!s,resolvePaths:s,includeBasePath:s,resolveSymlinks:c,excludeSymlinks:!c,excludeFiles:u,includeDirs:u||!t.onlyFiles,maxDepth:M,signal:t.signal}).crawl(f);return t.debug&&Je("internal properties:",{...r,root:f}),[K,n!==f&&!s&&Ka(n,f)]}function sl(t,e){if(e)for(let n=t.length-1;n>=0;n--)t[n]=e(t[n]);return t}var ii={caseSensitiveMatch:true,debug:!!process.env.TINYGLOBBY_DEBUG,expandDirectories:true,followSymbolicLinks:true,onlyFiles:true};function ol(t){let e=Object.assign({},t);for(let n in ii)e[n]===void 0&&Object.assign(e,{[n]:ii[n]});return e.cwd=(e.cwd instanceof URL?fileURLToPath(e.cwd):resolve(e.cwd||process.cwd())).replace(si,"/"),e.ignore=li(e.ignore),e.fs&&(e.fs={readdir:e.fs.readdir||readdir,readdirSync:e.fs.readdirSync||readdirSync,realpath:e.fs.realpath||realpath,realpathSync:e.fs.realpathSync||realpathSync,stat:e.fs.stat||stat,statSync:e.fs.statSync||statSync}),e.debug&&Je("globbing with options:",e),e}function al(t,e={}){var n;if(t&&e?.patterns)throw new Error("Cannot pass patterns as both an argument and an option");let r=Ma(t)||typeof t=="string",i=li((n=r?t:t.patterns)!==null&&n!==void 0?n:"**/*"),s=ol(r?e:t);return i.length>0?il(s,i):[]}async function Ye(t,e){let[n,r]=al(t,e);return n?sl(await n.withPromise(),r):[]}var N=Pe(Fe());function te(t){return t.dialect==="postgres"?"pg":t.config?.ddlDialect==="sqlite"?"sqlite":"pg-flat"}function we(t){return t==="sqlite"?{schema_migrations:"migrations",seed_files:"seed_files"}:t==="pg-flat"?{schema_migrations:'"supabase_migrations.schema_migrations"',seed_files:'"supabase_migrations.seed_files"'}:{schema_migrations:"supabase_migrations.schema_migrations",seed_files:"supabase_migrations.seed_files"}}function Qe(t){return `'${t.replace(/'/g,"''")}'`}function ll(t){return `'${`{${t.map(r=>`"${r.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}"`).join(",")}}`.replace(/'/g,"''")}'`}function ci(t,e){return e==null?"NULL":t==="pg"?ll(e):Qe(JSON.stringify(e))}function Cn(t){return t==null?"NULL":Qe(t)}function ui(t){if(t==null)return [];if(Array.isArray(t))return t;if(typeof t=="string"){let e=t.trim();if(e==="")return [];try{let n=JSON.parse(e);return Array.isArray(n)?n:[]}catch{return []}}return []}function cl(t){return {version:String(t.version),name:t.name??null,statements:ui(t.statements),rollback:ui(t.rollback),created_by:t.created_by??null,idempotency_key:t.idempotency_key??null}}var ul=[{name:"created_by",pgType:"text",sqliteType:"TEXT"},{name:"idempotency_key",pgType:"text",sqliteType:"TEXT"},{name:"rollback",pgType:"text[]",sqliteType:"TEXT"}];function fl(t){let{schema_migrations:e,seed_files:n}=we(t);return t==="pg"?["CREATE SCHEMA IF NOT EXISTS supabase_migrations",`CREATE TABLE IF NOT EXISTS ${e} (
|
|
63
63
|
version text NOT NULL PRIMARY KEY,
|
|
64
64
|
statements text[],
|
|
65
65
|
name text,
|
|
@@ -79,19 +79,19 @@ create table test (
|
|
|
79
79
|
)`,`CREATE TABLE IF NOT EXISTS ${n} (
|
|
80
80
|
path TEXT NOT NULL PRIMARY KEY,
|
|
81
81
|
hash TEXT NOT NULL
|
|
82
|
-
)`]}function
|
|
83
|
-
${c}`)}return o.reduce((l,c)=>l+c.statements.length,0)}async function
|
|
82
|
+
)`]}function pl(t){let{schema_migrations:e}=we(t);return [`CREATE UNIQUE INDEX IF NOT EXISTS ${t==="sqlite"?"migrations_idempotency_key_idx":"schema_migrations_idempotency_key_idx"} ON ${e} (idempotency_key)`]}function fi(t,e){let{schema_migrations:n}=we(t);return `INSERT INTO ${n} (version, name, statements, rollback, created_by, idempotency_key) VALUES (${Qe(e.version)}, ${Cn(e.name)}, ${ci(t,e.statements)}, ${ci(t,e.rollback??null)}, ${Cn(e.created_by??null)}, ${Cn(e.idempotency_key??null)}) ON CONFLICT (idempotency_key) DO UPDATE SET version = EXCLUDED.version, name = EXCLUDED.name, statements = EXCLUDED.statements, rollback = EXCLUDED.rollback, created_by = EXCLUDED.created_by`}function ml(t){let{schema_migrations:e}=we(t);return `SELECT version FROM ${e} ORDER BY version ASC`}var dl="version, name, statements, rollback, created_by, idempotency_key";function hl(t){let{schema_migrations:e}=we(t);return `SELECT ${dl} FROM ${e} ORDER BY version ASC`}function gl(t){let{seed_files:e}=we(t);return e?`SELECT path, hash FROM ${e}`:null}function pi(t,e){let{seed_files:n}=we(t);return n?`INSERT INTO ${n} (path, hash) VALUES (${Qe(e.path)}, ${Qe(e.hash)}) ON CONFLICT (path) DO UPDATE SET hash = EXCLUDED.hash`:null}async function yl(t,e){let{schema_migrations:n}=we(e);for(let r of ul){let i=e==="pg"?r.pgType:r.sqliteType;if(e==="pg")await t.exec(`ALTER TABLE ${n} ADD COLUMN IF NOT EXISTS ${r.name} ${i}`);else try{await t.exec(`ALTER TABLE ${n} ADD COLUMN ${r.name} ${i}`);}catch{}}}async function Rn(t){let e=te(t);for(let n of fl(e))await t.exec(n);await yl(t,e);for(let n of pl(e))await t.exec(n);}async function mi(t){let e=te(t);return ((await t.exec(ml(e)))?.rows??[]).map(r=>r.version)}async function di(t){let e=te(t);return ((await t.exec(hl(e)))?.rows??[]).map(cl)}async function hi(t){let e=te(t),n=gl(e);return n?((await t.exec(n))?.rows??[]).map(i=>({path:i.path,hash:i.hash})):[]}var wl=/^(\d{14})(?:_([^.]+))?\.sql$/;function gi(t){return te(t.connection)==="sqlite"?"./sqlite-migrations/*.sql":"./migrations/*.sql"}function xl(t){return ie__default.posix.dirname(gi(t))}async function Ze(t){let e=ie__default.join(process.cwd(),"supabase"),n=await Ye([gi(t)],{cwd:e,absolute:true}),r=[];for(let i of n){let s=ie__default.basename(i),o=wl.exec(s);if(!o)continue;let a=await V__default.readFile(i,"utf-8");r.push({version:o[1],name:o[2]??null,filename:s,path:i,sql:a});}return r.sort((i,s)=>i.version.localeCompare(s.version))}async function yi(t){let e=new TextEncoder().encode(t),n=await crypto.subtle.digest("SHA-256",e);return Array.from(new Uint8Array(n)).map(r=>r.toString(16).padStart(2,"0")).join("")}async function bi(t){let e=[...t].sort((r,i)=>r.version.localeCompare(i.version)),n=await Promise.all(e.map(async r=>{let i=await yi((r.statements??[]).join(";"));return [r.version,i]}));return yi(JSON.stringify(n))}var El="supabase/.temp/.deparse-cache.json",Tl=2;function Al(t){return te(t.connection)==="pg-flat"}function _l(){return ie__default.join(process.cwd(),El)}async function Cl(t){let e=[];try{e=await di(t.connection);}catch(n){if(!String(n).includes("no such table"))throw n}return bi(e)}async function Ae(t){if(Al(t))try{let e=t.connection,n=SqliteConnection.serializeDeparseInfo(e.config?.translation?.deparse),[r,i]=await Promise.all([Cl(t),Mt(t,await et(t))]),s={v:Tl,fingerprint:r,schemaHash:i,deparse:n},o=_l();await V__default.mkdir(ie__default.dirname(o),{recursive:!0}),await V__default.writeFile(o,JSON.stringify(s),"utf-8");}catch{}}var qi=["./schemas/*.sql"],Vi="supabase/.temp/.translation-cache.json",Gi=3;async function ac(t,e){let n=await t.connection.introspect(),r=Yn(n);await Wi(t,{...e,dbHasTables:n.tables.length>0,dbFingerprint:r}),await fc(t);let i=await t.connection.introspect();Ki(i,t);}async function lc(t){return Ye(t.config.db?.seed?.sql_paths??["./seed.sql"],{cwd:ie__default.join(process.cwd(),"supabase"),absolute:true})}async function cc(t){let e=await lc(t);return Promise.all(e.map(async n=>{let r=await V__default.readFile(n,"utf-8"),i=createHash("sha256").update(r).digest("hex");return {path:ie__default.relative(process.cwd(),n),hash:i,statements:splitSqlStatements(r)}}))}async function uc(t,e){if(t.config.db?.seed?.enabled===false)return 0;let r=(await cc(t)).filter(l=>l.statements.length>0);if(r.length===0)return 0;await Rn(t.connection);let i=te(t.connection),s=new Map((await hi(t.connection)).map(l=>[l.path,l.hash])),o=r.filter(l=>s.get(l.path)!==l.hash);if(o.length===0)return 0;console.log(N.default.dim("Seeding database..."));let a=[];for(let l of o){a.push(...l.statements);let c=pi(i,{path:l.path,hash:l.hash});c&&a.push(c);}try{await t.connection.transaction(a);}catch(l){let c="Fix `supabase/seed.sql`, then re-run `lite dev` to reapply the schema and reseed.";throw new Error(`Seed failed and was rolled back: ${String(l.message??l)}
|
|
83
|
+
${c}`)}return o.reduce((l,c)=>l+c.statements.length,0)}async function fc(t){await uc(t);}async function et(t){let e=await Ye(t.config?.db?.migrations?.schema_paths??qi,{cwd:ie__default.join(process.cwd(),Y.config_dir),absolute:true}),n=await Promise.all(e.map(async r=>await V__default.readFile(r,"utf-8"))).then(r=>r.map(i=>i.split(`
|
|
84
84
|
`).filter(s=>s.trim().length>0&&!s.trim().startsWith("--")).join(`
|
|
85
85
|
`)).join(`
|
|
86
|
-
`));return n||""}async function
|
|
86
|
+
`));return n||""}async function Wi(t,e){let n=await et(t);if(!(!n&&(await Ze(t)).length>0)&&!(!n&&!t.connection.config.baseSchema)){if(e?.dbHasTables&&await mc(t,n,e.dbFingerprint)){console.log(N.default.dim("Schema unchanged \u2014 skipping translation.")),await Ae(t);return}try{let r=t.connection.createMigrator(n),i=await r.diff(),s=r.translationResult?.ast,o=await t.connection.introspect(),a=Yn(o);if(i.plan.steps.length===0){await Hi(t,n,s,a),await Ae(t);return}await r.migratePlan(i.plan,{force:e?.force??!1}),bc(i);let l=await t.connection.introspect();return await Hi(t,n,s,Yn(l)),await Ae(t),console.log(""),wc(i),i}catch(r){if(String(r).includes("likely empty"))console.log(N.default.dim("Nothing to migrate."));else {console.error("Migration error: "+String(r));try{await t.connection.exec("rollback");}catch{}}}}}function pc(t){return t.connection.config?.baseSchema??""}function Mt(t,e){let n=createHash("sha256");return n.update(JSON.stringify([pc(t),e??""])),n.digest("hex")}function Yn(t){let e=(r,i)=>[...r].sort((s,o)=>i(s).localeCompare(i(o))),n={tables:e(t.tables??[],r=>`${r.schema??""}.${r.name}`).map(r=>({schema:r.schema,name:r.name,type:r.type,sql:r.sql})),columns:e(t.columns??[],r=>`${r.schema??""}.${r.table}.${r.name}`).map(r=>({schema:r.schema,table:r.table,name:r.name,type:r.type,nullable:r.nullable,default_value:r.default_value,is_primary_key:r.is_primary_key})),indexes:e(t.indexes??[],r=>`${r.schema??""}.${r.table}.${r.name}`).map(r=>({schema:r.schema,table:r.table,name:r.name,unique:r.unique,columns:r.columns})),foreign_keys:e(t.foreign_keys??[],r=>`${r.schema??""}.${r.table}.${r.column}->${r.ref_table}.${r.ref_column}`).map(r=>({schema:r.schema,table:r.table,column:r.column,ref_schema:r.ref_schema,ref_table:r.ref_table,ref_column:r.ref_column})),primary_keys:e(t.primary_keys??[],r=>`${r.schema??""}.${r.table}`).map(r=>({schema:r.schema,table:r.table,columns:r.columns})),check_constraints:e(t.check_constraints??[],r=>`${r.schema??""}.${r.table}.${r.name??""}.${r.column??""}`).map(r=>({schema:r.schema,table:r.table,name:r.name,column:r.column,expression:r.expression})),unique_constraints:e(t.unique_constraints??[],r=>`${r.schema??""}.${r.table}.${r.name}`).map(r=>({schema:r.schema,table:r.table,name:r.name,columns:r.columns})),views:e(t.views??[],r=>`${r.schema??""}.${r.name}`).map(r=>({schema:r.schema,name:r.name,sql:r.sql})),triggers:e(t.triggers??[],r=>`${r.schema??""}.${r.table}.${r.name}`).map(r=>({schema:r.schema,table:r.table,name:r.name,sql:r.sql})),custom_types:e(t.custom_types??[],r=>`${r.schema??""}.${r.type}`).map(r=>({schema:r.schema,type:r.type,kind:r.kind,values:r.values,fields:r.fields}))};return createHash("sha256").update(JSON.stringify(n)).digest("hex")}async function mc(t,e,n){let r=t.connection;if(typeof r.updateDeparseInfo!="function")return false;let i=ie__default.join(process.cwd(),Vi),s;try{s=await V__default.readFile(i,"utf-8");}catch{return false}let o;try{o=JSON.parse(s);}catch{return false}if(o.v!==Gi||o.hash!==Mt(t,e)||!n||o.dbFingerprint!==n||!o.ast||typeof o.ast!="object")return false;try{let a=await Promise.resolve().then(()=>(Bi(),Ui)),l=o.ast,c=a.collectEnums(l),u=a.collectSchema(l,c),f=a.collectVariables(l),m=a.collectTableConstraints(l),g=a.collectComments(l),y=r.config?.translation?.schemas?.defaultSchema,{policies:E,tables:T}=a.collectPolicies(l,{defaultSchema:y});return r.updateDeparseInfo({enums:c,rls:{tables:T,policies:E},schema:u,vars:f,tableConstraints:m,comments:g}),!0}catch{return false}}async function Hi(t,e,n,r){if(!n||typeof n!="object")return;let i={v:Gi,hash:Mt(t,e),dbFingerprint:r,ast:n},s=ie__default.join(process.cwd(),Vi);try{await V__default.mkdir(ie__default.dirname(s),{recursive:!0}),await V__default.writeFile(s,JSON.stringify(i),"utf-8");}catch{}}function Ki(t,e){console.log();let n=(i,s)=>{let o=l=>{let c=N.default.dim;return typeof l=="number"&&(l>=0&&(c=l>0?N.default.green:N.default.dim),l<0&&(c=N.default.red)),typeof l=="boolean"?l?N.default.green("\u2713"):N.default.red("\u2717"):c(String(l))},a=Object.entries(s).map(([l,c])=>`${l}: ${o(c)}`).join(N.default.dim(" / "));console.log(`${N.default.dim("[")} ${i} ${N.default.dim("]")} ${a}`);};n(N.default.green("DATA"),{tables:t.tables.length,columns:t.columns.length,indexes:t.indexes.length});let r=e.config.rls??e.connection.config.translation?.deparse?.rls??{tables:new Set([]),policies:[]};n(N.default.green("AUTH"),{enabled:!!e.config.auth?.enabled,tables:ensureVar.Set(r.tables).size,policies:ensureVar.Array(r.policies).length});}function dc(t){let e=ie__default.join(process.cwd(),Y.config_dir),r=(t.config?.db?.migrations?.schema_paths??qi).map(i=>{let s=i.split("/"),o=s.findIndex(l=>/[*?[{]/.test(l)),a=(o===-1?s.slice(0,-1):s.slice(0,o)).join("/");return ie__default.resolve(e,a||".")});return [...new Set(r)]}function hc(t,e){let n,r=setTimeout(()=>{console.log(N.default.dim("Watching for changes...")),n=oc.watch(dc(t),{ignoreInitial:true});let i=async s=>{if(!s.endsWith(".sql"))return;console.log(),console.log(N.default.dim(`Schema changed: ${s}`)),await Wi(t,e);let o=await t.connection.introspect();Ki(o,t);};n.on("change",i),n.on("add",i);},200);return async()=>{clearTimeout(r),await n?.close();}}function gc(t,e){let n=r=>r;return t.plan.steps.flatMap(r=>[r.description?n(`-- ${r.description}`):"",r.sql+`
|
|
87
87
|
`]).filter(r=>r.trim().length>0).join(`
|
|
88
|
-
`)}function
|
|
88
|
+
`)}function yc(t){let e=new Date;return `${e.getFullYear().toString()+(e.getMonth()+1).toString().padStart(2,"0")+e.getDate().toString().padStart(2,"0")+e.getHours().toString().padStart(2,"0")+e.getMinutes().toString().padStart(2,"0")+e.getSeconds().toString().padStart(2,"0")}.sql`}function bc(t,e){let n="./supabase/.temp/migrations";re(n);let r=yc(),i=gc(t);Se(ie__default.join(n,r),i),console.log(N.default.dim(`Migration written to ${N.default.cyan(ie__default.join(n,r))}`));}function wc({diff:t}){if(typeof t=="string"){console.log(N.default.cyan(t));return}if(!t.has_changes)return;console.log(N.default.bgWhite(N.default.black(" Schema Diff "))),console.log();let e={added:{color:N.default.green,symbol:"+"},removed:{color:N.default.red,symbol:"-"},modified:{color:N.default.yellow,symbol:"~"}};if(t.tables.length>0){console.log(N.default.dim("Tables:"));for(let n of t.tables){let{color:r,symbol:i}=e[n.type];console.log(r(`${i} ${n.name}`));}console.log();}if(t.columns.length>0){console.log(N.default.dim("Columns:"));for(let n of t.columns){let{color:r,symbol:i}=e[n.type],s="";n.changes&&(s=Object.entries(n.changes).map(([o,a])=>`${o}: ${a.from} \u2192 ${a.to}`).join(", ")),console.log(r(`${i} ${n.table}.${n.name}${s?` (${s})`:""}`));}console.log();}if(t.indexes.length>0){console.log(N.default.dim("Indexes:"));for(let n of t.indexes){let{color:r,symbol:i}=e[n.type];console.log(r(`${i} ${n.name} on ${n.table}`));}console.log();}if(t.foreign_keys.length>0){console.log(N.default.dim("Foreign Keys:"));for(let n of t.foreign_keys){let{color:r,symbol:i}=e[n.type];console.log(r(`${i} ${n.table}.${n.column} \u2192 ${n.ref_table}.${n.ref_column}`));}console.log();}}var er=["anon","authenticated","service_role"];function xc(t){return t==="service_role"?"NOLOGIN BYPASSRLS":"NOLOGIN"}function tr(t){return t.size===0?"":`DO $$ BEGIN${[...t].map(n=>`
|
|
89
89
|
IF NOT EXISTS (SELECT FROM pg_roles WHERE rolname = '${n}') THEN
|
|
90
|
-
CREATE ROLE ${n} ${
|
|
90
|
+
CREATE ROLE ${n} ${xc(n)};
|
|
91
91
|
END IF;`).join("")}
|
|
92
92
|
END $$;
|
|
93
|
-
`}tr(new Set(er));function Xi(t,e){return t?t.quoted?t.value===e:t.value.toLowerCase()===e:false}function oe(t){return t?.quoted?t.value:t?.value.toLowerCase()}function Sc(t,e){let n="",r=e+1;for(;r<t.length;){if(t[r]==='"'&&t[r+1]==='"'){n+='"',r+=2;continue}if(t[r]==='"')return {token:{value:n,quoted:true},end:r+1};n+=t[r],r++;}return {token:{value:n,quoted:true},end:r}}function
|
|
94
|
-
`;)n++;continue}if(r==="/"&&i==="*"){for(n+=2;n<t.length&&!(t[n]==="*"&&t[n+1]==="/");)n++;n=n<t.length?n+2:n;continue}if(r==="'"){n=
|
|
93
|
+
`}tr(new Set(er));function Xi(t,e){return t?t.quoted?t.value===e:t.value.toLowerCase()===e:false}function oe(t){return t?.quoted?t.value:t?.value.toLowerCase()}function Sc(t,e){let n="",r=e+1;for(;r<t.length;){if(t[r]==='"'&&t[r+1]==='"'){n+='"',r+=2;continue}if(t[r]==='"')return {token:{value:n,quoted:true},end:r+1};n+=t[r],r++;}return {token:{value:n,quoted:true},end:r}}function Ec(t,e){let n=e+1;for(;n<t.length;){if(t[n]==="'"&&t[n+1]==="'"){n+=2;continue}if(t[n]==="'")return n+1;n++;}return n}function Tc(t,e){let n=/^\$[A-Za-z_][A-Za-z0-9_]*\$|^\$\$/.exec(t.slice(e))?.[0];if(!n)return;let r=e+n.length,i=t.indexOf(n,r);return i===-1?t.length:i+n.length}function Ji(t){let e=[],n=0;for(;n<t.length;){let r=t[n],i=t[n+1];if(/\s/.test(r)){n++;continue}if(r==="-"&&i==="-"){for(n+=2;n<t.length&&t[n]!==`
|
|
94
|
+
`;)n++;continue}if(r==="/"&&i==="*"){for(n+=2;n<t.length&&!(t[n]==="*"&&t[n+1]==="/");)n++;n=n<t.length?n+2:n;continue}if(r==="'"){n=Ec(t,n);continue}if(r==="$"){let s=Tc(t,n);if(s!==void 0){n=s;continue}}if(r==='"'){let{token:s,end:o}=Sc(t,n);e.push(s),n=o;continue}if(r===","||r===";"){e.push({value:r,quoted:false}),n++;continue}if(/[A-Za-z_]/.test(r)){let s=n;for(n++;n<t.length&&/[A-Za-z0-9_$]/.test(t[n]);)n++;e.push({value:t.slice(s,n).toLowerCase(),quoted:false});continue}n++;}return e}function Ac(t,e){let n=oe(t[e]),r=oe(t[e+1]);if((n==="create"||n==="alter")&&(r==="role"||r==="user"||r==="group"))return t[e+2]}function _c(t){let e=new Set,n=Ji(t);for(let r=0;r<n.length;r++){if(oe(n[r])!=="create")continue;let i=Ac(n,r);for(let s of er)Xi(i,s)&&e.add(s);}return e}function Zn(t,e,n){let r=new Set([";","as","by","check","for","granted","in","on","option","using","where","with"]);for(let i=e;i<t.length;i++){let s=oe(t[i]);if(!s||r.has(s))return;for(let o of er)Xi(t[i],o)&&n.add(o);}}function Cc(t){let e=[],n=[];for(let r of t){if(oe(r)===";"){n.length>0&&e.push(n),n=[];continue}n.push(r);}return n.length>0&&e.push(n),e}function zi(t,e){return t.some(n=>oe(n)===e)}function Rc(t){let e=new Set,n=Cc(Ji(t));for(let r of n){let i=oe(r[0]);for(let a=0;a<r.length;a++){let l=oe(r[a]);l==="to"&&(zi(r,"grant")||zi(r,"policy")||oe(r[a-1])==="owner")&&Zn(r,a+1,e),l==="from"&&i==="revoke"&&Zn(r,a+1,e);}let s=r.findIndex(a=>oe(a)==="to"),o=r.findIndex(a=>oe(a)==="on");i==="grant"&&s>1&&(o===-1||s<o)&&Zn(r,1,e);}return e}function Yi(t){let e=_c(t);return new Set([...Rc(t)].filter(n=>!e.has(n)))}async function kc(t,e={}){await t.ensureSystemSchema();let n=new Set(await mi(t.connection)),r=await Ze(t),i=te(t.connection),s=[],o=[];for(let l of r){if(n.has(l.version)){o.push(l);continue}let c=en(l.sql),u;if(i==="pg-flat"){let m=await t.connection.translateDdl(l.sql),g=typeof m=="string"?m:m.ddl??"";u=en(g);}else u=c;let f=fi(i,{version:l.version,name:l.name,statements:c});if(i==="pg"){let m=tr(Yi(l.sql));m&&await t.connection.exec(m);}await t.connection.transaction([...u,f],{intent:"migration"}),s.push(l);}let a=true;return i==="pg-flat"&&!e.persistWithDeclarative&&(await et(t)).trim()&&(a=false),i!=="sqlite"&&(r.length>0?await $c(t,r,{persist:a}):i==="pg-flat"&&a&&await Ae(t)),{applied:s,skipped:o}}async function $c(t,e,n){let r=e.map(a=>a.sql).join(`
|
|
95
95
|
`);if(!r.trim())return;let i=t.connection;if(typeof i.translateDdl!="function"||typeof i.updateDeparseInfo!="function")return;let s=await i.translateDdl(r),o=i.config?.translation?.deparse??{};i.updateDeparseInfo({...o,...s}),n?.persist!==false&&await Ae(t);}/*! Bundled license information:
|
|
96
96
|
|
|
97
97
|
smol-toml/dist/error.js:
|
|
@@ -130,4 +130,4 @@ smol-toml/dist/index.js:
|
|
|
130
130
|
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
131
131
|
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
132
132
|
*)
|
|
133
|
-
*/export{
|
|
133
|
+
*/export{kc as applyPendingMigrations,qs as createApi,Xs as ensureInitialStructure,ac as ensureSchema,Ze as listMigrationFiles,xl as migrationsDir,Gs as resolveConfiguredPublishableKey,hc as watchSchema};
|