@supabase/lite 0.8.0 → 0.8.1-next.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import {loadEnv}from'vite';import S from'node:path';import K from'chokidar';import {watchSchema,migrationsDir,applyPendingMigrations,ensureInitialStructure,createApi,listMigrationFiles,ensureSchema}from'@supabase/lite/cli';import {getRequestListener}from'@hono/node-server';try {
1
+ import {loadEnv}from'vite';import A from'node:path';import G from'chokidar';import {watchSchema,migrationsDir,applyPendingMigrations,ensureInitialStructure,resolveConfiguredPublishableKey,createApi,listMigrationFiles,ensureSchema}from'@supabase/lite/cli';import {getRequestListener}from'@hono/node-server';try {
2
2
  /**
3
3
  * Adding this to avoid warnings from node:sqlite being experimental
4
4
  */
@@ -9,4 +9,4 @@ import {loadEnv}from'vite';import S from'node:path';import K from'chokidar';impo
9
9
  };
10
10
  } catch {}
11
11
 
12
- var P=Object.create;var v=Object.defineProperty;var R=Object.getOwnPropertyDescriptor;var I=Object.getOwnPropertyNames;var T=Object.getPrototypeOf,D=Object.prototype.hasOwnProperty;var C=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var L=(t,e,o,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of I(e))!D.call(t,r)&&r!==o&&v(t,r,{get:()=>e[r],enumerable:!(i=R(e,r))||i.enumerable});return t};var M=(t,e,o)=>(o=t!=null?P(T(t)):{},L(v(o,"default",{value:t,enumerable:true}),t));var _=C((Z,w)=>{var f=process||{},y=f.argv||[],g=f.env||{},N=!(g.NO_COLOR||y.includes("--no-color"))&&(!!g.FORCE_COLOR||y.includes("--color")||f.platform==="win32"||(f.stdout||{}).isTTY&&g.TERM!=="dumb"||!!g.CI),k=(t,e,o=t)=>i=>{let r=""+i,n=r.indexOf(e,t.length);return ~n?t+V(r,e,o,n)+e:t+r+e},V=(t,e,o,i)=>{let r="",n=0;do r+=t.substring(n,i)+o,n=i+e.length,i=t.indexOf(e,n);while(~i);return r+t.substring(n)},A=(t=N)=>{let e=t?k:()=>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")}};w.exports=A();w.exports.createColors=A;});var c=M(_());var u=["/auth/v1","/rest/v1","/_system"];function h(t,e=u){let o=getRequestListener(async i=>t.fetch(i));return (i,r,n)=>{let x=i.url??"";if(!e.some(a=>x===a||x.startsWith(`${a}/`)||x.startsWith(`${a}?`)))return n();o(i,r).catch(n);}}function q(t,e){let o=t.root?S.resolve(t.root):process.cwd(),r=t.envFile===false||t.envDir===false?false:t.envDir?S.resolve(o,t.envDir):o,n=t.envPrefix??"VITE_";return loadEnv(e,r,n)}function z(t={}){let{config:e,migrateOnBoot:o=true,watchSchema:i=true,forceSchema:r=false,initOnBoot:n=true,prefixes:x=u}=t,a;async function B(){n&&await ensureInitialStructure({recreate:false,template:false});let s=await(await createApi({withSupabaseClient:false})).project.local.createApp(e);if(r&&console.log(c.default.yellow("\u26A0 supalite: forceSchema=true \u2014 data-loss migrations allowed")),o){if((await listMigrationFiles(s)).length>0){let b=await applyPendingMigrations(s);for(let l of b.applied)console.log(c.default.green(" \u2713"),"Applied migration",c.default.cyan(l.filename));}await ensureSchema(s,{force:r});}return s}async function d(){try{await a?.connection.close();}catch{}}return {name:"@supabase/lite",config(m,{mode:s}){let p=q(m,s),b=m.define??{},l={},E=(U,F)=>U in p||F in b;return E("VITE_SUPABASE_URL","import.meta.env.VITE_SUPABASE_URL")||(l["import.meta.env.VITE_SUPABASE_URL"]="window.location.origin"),E("VITE_SUPABASE_ANON_KEY","import.meta.env.VITE_SUPABASE_ANON_KEY")||(l["import.meta.env.VITE_SUPABASE_ANON_KEY"]=JSON.stringify("sb-lite-anon-key")),{define:l}},async configureServer(m){if(a=await B(),m.middlewares.use(h(a,x)),i){watchSchema(a,{translate:true,force:r});let s=S.join(process.cwd(),"supabase",migrationsDir(a)),p=K.watch(s,{ignoreInitial:true});p.on("add",async()=>{try{let b=await applyPendingMigrations(a);for(let l of b.applied)console.log(c.default.green(" \u2713"),"Applied",c.default.cyan(l.filename));}catch(b){console.error(c.default.red("Migration failed: "+String(b.message??b)));}}),m.httpServer?.once("close",()=>{p.close();});}m.httpServer?.once("close",d);},async configurePreviewServer(m){a=await B(),m.middlewares.use(h(a,x)),m.httpServer?.once("close",d);},async closeBundle(){await d();}}}var me=z;export{u as DEFAULT_PREFIXES,me as default,h as honoMiddleware,z as supalite};
12
+ var I=Object.create;var E=Object.defineProperty;var T=Object.getOwnPropertyDescriptor;var k=Object.getOwnPropertyNames;var C=Object.getPrototypeOf,L=Object.prototype.hasOwnProperty;var M=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var N=(t,e,n,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of k(e))!L.call(t,r)&&r!==n&&E(t,r,{get:()=>e[r],enumerable:!(i=T(e,r))||i.enumerable});return t};var V=(t,e,n)=>(n=t!=null?I(C(t)):{},N(E(n,"default",{value:t,enumerable:true}),t));var O=M((ie,v)=>{var u=process||{},_=u.argv||[],d=u.env||{},W=!(d.NO_COLOR||_.includes("--no-color"))&&(!!d.FORCE_COLOR||_.includes("--color")||u.platform==="win32"||(u.stdout||{}).isTTY&&d.TERM!=="dumb"||!!d.CI),Y=(t,e,n=t)=>i=>{let r=""+i,o=r.indexOf(e,t.length);return ~o?t+K(r,e,n,o)+e:t+r+e},K=(t,e,n,i)=>{let r="",o=0;do r+=t.substring(o,i)+n,o=i+e.length,i=t.indexOf(e,o);while(~i);return r+t.substring(o)},P=(t=W)=>{let e=t?Y:()=>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")}};v.exports=P();v.exports.createColors=P;});var b=V(O());var j=Symbol("lite-peer-address");function R(t,e){e&&Object.defineProperty(t,j,{value:e,enumerable:false,configurable:false,writable:false});}var h=["/auth/v1","/rest/v1","/_system"];function w(t,e=h){let n=getRequestListener(async(i,...r)=>{let o=r[0]?.incoming;return R(i,o?.socket?.remoteAddress),t.fetch(i)});return (i,r,o)=>{let c=i.url??"";if(!e.some(p=>c===p||c.startsWith(`${p}/`)||c.startsWith(`${p}?`)))return o();n(i,r).catch(o);}}function ee(t,e){let n=t.root?A.resolve(t.root):process.cwd(),r=t.envFile===false||t.envDir===false?false:t.envDir?A.resolve(n,t.envDir):n,o=t.envPrefix??"VITE_";return loadEnv(e,r,o)}function te(t={}){let{config:e,migrateOnBoot:n=true,watchSchema:i=true,forceSchema:r=false,initOnBoot:o=true,prefixes:c=h,admin:p}=t,s;async function B(a){o&&await ensureInitialStructure({recreate:false,template:false});let l=await(await createApi({withSupabaseClient:false})).project.local.createApp(e,a);if(r&&console.log(b.default.yellow("\u26A0 supalite: forceSchema=true \u2014 data-loss migrations allowed")),n){if((await listMigrationFiles(l)).length>0){let m=await applyPendingMigrations(l);for(let x of m.applied)console.log(b.default.green(" \u2713"),"Applied migration",b.default.cyan(x.filename));}await ensureSchema(l,{force:r});}return l}async function S(){try{await s?.connection.close();}catch{}}return {name:"@supabase/lite",async config(a,{mode:f}){let l=ee(a,f),g=a.define??{},m={},x=(y,F)=>y in l||F in g;if(x("VITE_SUPABASE_URL","import.meta.env.VITE_SUPABASE_URL")||(m["import.meta.env.VITE_SUPABASE_URL"]="window.location.origin"),!x("VITE_SUPABASE_ANON_KEY","import.meta.env.VITE_SUPABASE_ANON_KEY")){o&&await ensureInitialStructure({recreate:false,template:false});let y=await resolveConfiguredPublishableKey(e);m["import.meta.env.VITE_SUPABASE_ANON_KEY"]=JSON.stringify(y??"sb-lite-anon-key");}return {define:m}},async configureServer(a){if(s=await B({admin:p,adminDefault:true}),a.middlewares.use(w(s,c)),i){let f=watchSchema(s,{translate:true,force:r}),l=A.join(process.cwd(),"supabase",migrationsDir(s)),g=G.watch(l,{ignoreInitial:true});g.on("add",async()=>{try{let m=await applyPendingMigrations(s);for(let x of m.applied)console.log(b.default.green(" \u2713"),"Applied",b.default.cyan(x.filename));}catch(m){console.error(b.default.red("Migration failed: "+String(m.message??m)));}}),a.httpServer?.once("close",()=>{g.close(),f();});}a.httpServer?.once("close",S);},async configurePreviewServer(a){s=await B({admin:false,adminDefault:false}),a.middlewares.use(w(s,c)),a.httpServer?.once("close",S);},async closeBundle(){await S();}}}var pe=te;export{h as DEFAULT_PREFIXES,pe as default,w as honoMiddleware,te as supalite};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@supabase/lite",
3
- "version": "0.8.0",
3
+ "version": "0.8.1-next.1",
4
4
  "description": "Lightweight TypeScript-native Supabase implementation on SQLite (alpha). PostgREST + GoTrue compatible — use @supabase/supabase-js as-is.",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -135,10 +135,13 @@
135
135
  "@commander-js/extra-typings": "^14.0.0",
136
136
  "@electric-sql/pglite": "0.4.5",
137
137
  "@hono/node-server": "^1.19.9",
138
- "@supabase/pg-delta": "1.0.0-alpha.10",
138
+ "@supabase/pg-delta": "1.0.0-alpha.34",
139
+ "@supabase/supabase-js": "^2.97.0",
139
140
  "@sentry/node": "^10.51.0",
140
141
  "@vercel/detect-agent": "^1.2.3",
141
142
  "dotenv": "^17.3.1",
143
+ "jose": "^6.1.3",
144
+ "jsonv-ts": "^0.10.1",
142
145
  "libpg-query": "17.7.3",
143
146
  "kysely": "^0.28.11",
144
147
  "kysely-generic-sqlite": "^1.2.1",
@@ -175,7 +178,6 @@
175
178
  "@pgsql/types": "^17.6.2",
176
179
  "@pgsql/utils": "^17.8.15",
177
180
  "@sqlite.org/sqlite-wasm": "^3.51.2-build7",
178
- "@supabase/supabase-js": "^2.97.0",
179
181
  "@types/bcryptjs": "^3.0.0",
180
182
  "aws4fetch": "^1.0.20",
181
183
  "bun-plugin-tailwind": "^0.1.2",
@@ -183,8 +185,6 @@
183
185
  "fs-extra": "^11.3.3",
184
186
  "hono": "^4.12.2",
185
187
  "ink": "^6.8.0",
186
- "jose": "^6.1.3",
187
- "jsonv-ts": "^0.10.1",
188
188
  "open": "^11.0.0",
189
189
  "pgserve": "^1.1.6",
190
190
  "picocolors": "^1.1.1",
@@ -22,7 +22,7 @@ The package is pre-1.0 and changes fast. **Do not rely on this skill's specifics
22
22
 
23
23
  | Scenario | Use | Notes |
24
24
  |---|---|---|
25
- | Vite project | `@supabase/lite/vite` plugin (same-process) | No separate CLI. Pass `window.location.origin` + any non-empty string to `createClient`. |
25
+ | Vite project | `@supabase/lite/vite` plugin (same-process) | No separate CLI. Pass `window.location.origin` + the project's `sb_publishable_*` key (or any string if no API keys are configured) to `createClient`. |
26
26
  | Non-Vite app, want auto schema-reload | `lite dev` (separate process) | Watches `schemas/*.sql`. |
27
27
  | Non-Vite app, manual control / CI / prod-like | `lite start` (separate process) | No watch, no auto-migrate. |
28
28