@supabase/storage-js 2.90.0 → 2.90.1-canary.0
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/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/dist/umd/supabase.js +1 -1
- package/package.json +1 -1
- package/src/lib/version.ts +1 -1
package/dist/umd/supabase.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var supabase=(function(e){var t=class extends Error{constructor(e){super(e),this.__isStorageError=!0,this.name=`StorageError`}};function n(e){return typeof e==`object`&&!!e&&`__isStorageError`in e}var r=class extends t{constructor(e,t,n){super(e),this.name=`StorageApiError`,this.status=t,this.statusCode=n}toJSON(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}}},i=class extends t{constructor(e,t){super(e),this.name=`StorageUnknownError`,this.originalError=t}};let a=e=>e?(...t)=>e(...t):(...e)=>fetch(...e),o=()=>Response,s=e=>{if(Array.isArray(e))return e.map(e=>s(e));if(typeof e==`function`||e!==Object(e))return e;let t={};return Object.entries(e).forEach(([e,n])=>{let r=e.replace(/([-_][a-z])/gi,e=>e.toUpperCase().replace(/[-_]/g,``));t[r]=s(n)}),t},c=e=>{if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},l=e=>!e||typeof e!=`string`||e.length===0||e.length>100||e.trim()!==e||e.includes(`/`)||e.includes(`\\`)?!1:/^[\w!.\*'() &$@=;:+,?-]+$/.test(e),u=e=>e.msg||e.message||e.error_description||(typeof e.error==`string`?e.error:e.error?.message)||JSON.stringify(e),d=async(e,t,n)=>{e instanceof await o()&&!n?.noResolveJson?e.json().then(n=>{let i=e.status||500,a=n?.statusCode||i+``;t(new r(u(n),i,a))}).catch(e=>{t(new i(u(e),e))}):t(new i(u(e),e))},f=(e,t,n,r)=>{let i={method:e,headers:t?.headers||{}};return e===`GET`||!r?i:(c(r)?(i.headers={"Content-Type":`application/json`,...t?.headers},i.body=JSON.stringify(r)):i.body=r,t?.duplex&&(i.duplex=t.duplex),{...i,...n})};async function p(e,t,n,r,i,a){return new Promise((o,s)=>{e(n,f(t,r,i,a)).then(e=>{if(!e.ok)throw e;return r?.noResolveJson?e:e.json()}).then(e=>o(e)).catch(e=>d(e,s,r))})}async function m(e,t,n,r){return p(e,`GET`,t,n,r)}async function h(e,t,n,r,i){return p(e,`POST`,t,r,i,n)}async function g(e,t,n,r,i){return p(e,`PUT`,t,r,i,n)}async function ee(e,t,n,r){return p(e,`HEAD`,t,{...n,noResolveJson:!0},r)}async function _(e,t,n,r,i){return p(e,`DELETE`,t,r,i,n)}var v=class{constructor(e,t){this.downloadFn=e,this.shouldThrowOnError=t}then(e,t){return this.execute().then(e,t)}async execute(){try{return{data:(await this.downloadFn()).body,error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}};let y;var te=class{static{y=Symbol.toStringTag}constructor(e,t){this.downloadFn=e,this.shouldThrowOnError=t,this[y]=`BlobDownloadBuilder`,this.promise=null}asStream(){return new v(this.downloadFn,this.shouldThrowOnError)}then(e,t){return this.getPromise().then(e,t)}catch(e){return this.getPromise().catch(e)}finally(e){return this.getPromise().finally(e)}getPromise(){return this.promise||=this.execute(),this.promise}async execute(){try{return{data:await(await this.downloadFn()).blob(),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}};let ne={limit:100,offset:0,sortBy:{column:`name`,order:`asc`}},b={cacheControl:`3600`,contentType:`text/plain;charset=UTF-8`,upsert:!1};var x=class{constructor(e,t={},n,r){this.shouldThrowOnError=!1,this.url=e,this.headers=t,this.bucketId=n,this.fetch=a(r)}throwOnError(){return this.shouldThrowOnError=!0,this}async uploadOrUpdate(e,t,r,i){try{let n,a={...b,...i},o={...this.headers,...e===`POST`&&{"x-upsert":String(a.upsert)}},s=a.metadata;typeof Blob<`u`&&r instanceof Blob?(n=new FormData,n.append(`cacheControl`,a.cacheControl),s&&n.append(`metadata`,this.encodeMetadata(s)),n.append(``,r)):typeof FormData<`u`&&r instanceof FormData?(n=r,n.has(`cacheControl`)||n.append(`cacheControl`,a.cacheControl),s&&!n.has(`metadata`)&&n.append(`metadata`,this.encodeMetadata(s))):(n=r,o[`cache-control`]=`max-age=${a.cacheControl}`,o[`content-type`]=a.contentType,s&&(o[`x-metadata`]=this.toBase64(this.encodeMetadata(s))),(typeof ReadableStream<`u`&&n instanceof ReadableStream||n&&typeof n==`object`&&`pipe`in n&&typeof n.pipe==`function`)&&!a.duplex&&(a.duplex=`half`)),i?.headers&&(o={...o,...i.headers});let c=this._removeEmptyFolders(t),l=this._getFinalPath(c),u=await(e==`PUT`?g:h)(this.fetch,`${this.url}/object/${l}`,n,{headers:o,...a?.duplex?{duplex:a.duplex}:{}});return{data:{path:c,id:u.Id,fullPath:u.Key},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async upload(e,t,n){return this.uploadOrUpdate(`POST`,e,t,n)}async uploadToSignedUrl(e,t,r,i){let a=this._removeEmptyFolders(e),o=this._getFinalPath(a),s=new URL(this.url+`/object/upload/sign/${o}`);s.searchParams.set(`token`,t);try{let e,t={upsert:b.upsert,...i},n={...this.headers,"x-upsert":String(t.upsert)};return typeof Blob<`u`&&r instanceof Blob?(e=new FormData,e.append(`cacheControl`,t.cacheControl),e.append(``,r)):typeof FormData<`u`&&r instanceof FormData?(e=r,e.append(`cacheControl`,t.cacheControl)):(e=r,n[`cache-control`]=`max-age=${t.cacheControl}`,n[`content-type`]=t.contentType),{data:{path:a,fullPath:(await g(this.fetch,s.toString(),e,{headers:n})).Key},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async createSignedUploadUrl(e,r){try{let n=this._getFinalPath(e),i={...this.headers};r?.upsert&&(i[`x-upsert`]=`true`);let a=await h(this.fetch,`${this.url}/object/upload/sign/${n}`,{},{headers:i}),o=new URL(this.url+a.url),s=o.searchParams.get(`token`);if(!s)throw new t(`No token returned by API`);return{data:{signedUrl:o.toString(),path:e,token:s},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async update(e,t,n){return this.uploadOrUpdate(`PUT`,e,t,n)}async move(e,t,r){try{return{data:await h(this.fetch,`${this.url}/object/move`,{bucketId:this.bucketId,sourceKey:e,destinationKey:t,destinationBucket:r?.destinationBucket},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async copy(e,t,r){try{return{data:{path:(await h(this.fetch,`${this.url}/object/copy`,{bucketId:this.bucketId,sourceKey:e,destinationKey:t,destinationBucket:r?.destinationBucket},{headers:this.headers})).Key},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async createSignedUrl(e,t,r){try{let n=this._getFinalPath(e),i=await h(this.fetch,`${this.url}/object/sign/${n}`,{expiresIn:t,...r?.transform?{transform:r.transform}:{}},{headers:this.headers}),a=r?.download?`&download=${r.download===!0?``:r.download}`:``;return i={signedUrl:encodeURI(`${this.url}${i.signedURL}${a}`)},{data:i,error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async createSignedUrls(e,t,r){try{let n=await h(this.fetch,`${this.url}/object/sign/${this.bucketId}`,{expiresIn:t,paths:e},{headers:this.headers}),i=r?.download?`&download=${r.download===!0?``:r.download}`:``;return{data:n.map(e=>({...e,signedUrl:e.signedURL?encodeURI(`${this.url}${e.signedURL}${i}`):null})),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}download(e,t){let n=t?.transform===void 0?`object`:`render/image/authenticated`,r=this.transformOptsToQueryString(t?.transform||{}),i=r?`?${r}`:``,a=this._getFinalPath(e);return new te(()=>m(this.fetch,`${this.url}/${n}/${a}${i}`,{headers:this.headers,noResolveJson:!0}),this.shouldThrowOnError)}async info(e){let t=this._getFinalPath(e);try{return{data:s(await m(this.fetch,`${this.url}/object/info/${t}`,{headers:this.headers})),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async exists(e){let t=this._getFinalPath(e);try{return await ee(this.fetch,`${this.url}/object/${t}`,{headers:this.headers}),{data:!0,error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e)&&e instanceof i){let t=e.originalError;if([400,404].includes(t?.status))return{data:!1,error:e}}throw e}}getPublicUrl(e,t){let n=this._getFinalPath(e),r=[],i=t?.download?`download=${t.download===!0?``:t.download}`:``;i!==``&&r.push(i);let a=t?.transform===void 0?`object`:`render/image`,o=this.transformOptsToQueryString(t?.transform||{});o!==``&&r.push(o);let s=r.join(`&`);return s!==``&&(s=`?${s}`),{data:{publicUrl:encodeURI(`${this.url}/${a}/public/${n}${s}`)}}}async remove(e){try{return{data:await _(this.fetch,`${this.url}/object/${this.bucketId}`,{prefixes:e},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async list(e,t,r){try{let n={...ne,...t,prefix:e||``};return{data:await h(this.fetch,`${this.url}/object/list/${this.bucketId}`,n,{headers:this.headers},r),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async listV2(e,t){try{let n={...e};return{data:await h(this.fetch,`${this.url}/object/list-v2/${this.bucketId}`,n,{headers:this.headers},t),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}encodeMetadata(e){return JSON.stringify(e)}toBase64(e){return typeof Buffer<`u`?Buffer.from(e).toString(`base64`):btoa(e)}_getFinalPath(e){return`${this.bucketId}/${e.replace(/^\/+/,``)}`}_removeEmptyFolders(e){return e.replace(/^\/|\/$/g,``).replace(/\/+/g,`/`)}transformOptsToQueryString(e){let t=[];return e.width&&t.push(`width=${e.width}`),e.height&&t.push(`height=${e.height}`),e.resize&&t.push(`resize=${e.resize}`),e.format&&t.push(`format=${e.format}`),e.quality&&t.push(`quality=${e.quality}`),t.join(`&`)}};let S=`2.90.0`,C={"X-Client-Info":`storage-js/${S}`};var re=class{constructor(e,t={},n,r){this.shouldThrowOnError=!1;let i=new URL(e);r?.useNewHostname&&/supabase\.(co|in|red)$/.test(i.hostname)&&!i.hostname.includes(`storage.supabase.`)&&(i.hostname=i.hostname.replace(`supabase.`,`storage.supabase.`)),this.url=i.href.replace(/\/$/,``),this.headers={...C,...t},this.fetch=a(n)}throwOnError(){return this.shouldThrowOnError=!0,this}async listBuckets(e){try{let t=this.listBucketOptionsToQueryString(e);return{data:await m(this.fetch,`${this.url}/bucket${t}`,{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async getBucket(e){try{return{data:await m(this.fetch,`${this.url}/bucket/${e}`,{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async createBucket(e,t={public:!1}){try{return{data:await h(this.fetch,`${this.url}/bucket`,{id:e,name:e,type:t.type,public:t.public,file_size_limit:t.fileSizeLimit,allowed_mime_types:t.allowedMimeTypes},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async updateBucket(e,t){try{return{data:await g(this.fetch,`${this.url}/bucket/${e}`,{id:e,name:e,public:t.public,file_size_limit:t.fileSizeLimit,allowed_mime_types:t.allowedMimeTypes},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async emptyBucket(e){try{return{data:await h(this.fetch,`${this.url}/bucket/${e}/empty`,{},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async deleteBucket(e){try{return{data:await _(this.fetch,`${this.url}/bucket/${e}`,{},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}listBucketOptionsToQueryString(e){let t={};return e&&(`limit`in e&&(t.limit=String(e.limit)),`offset`in e&&(t.offset=String(e.offset)),e.search&&(t.search=e.search),e.sortColumn&&(t.sortColumn=e.sortColumn),e.sortOrder&&(t.sortOrder=e.sortOrder)),Object.keys(t).length>0?`?`+new URLSearchParams(t).toString():``}},w=class extends Error{constructor(e,t){super(e),this.name=`IcebergError`,this.status=t.status,this.icebergType=t.icebergType,this.icebergCode=t.icebergCode,this.details=t.details,this.isCommitStateUnknown=t.icebergType===`CommitStateUnknownException`||[500,502,504].includes(t.status)&&t.icebergType?.includes(`CommitState`)===!0}isNotFound(){return this.status===404}isConflict(){return this.status===409}isAuthenticationTimeout(){return this.status===419}};function ie(e,t,n){let r=new URL(t,e);if(n)for(let[e,t]of Object.entries(n))t!==void 0&&r.searchParams.set(e,t);return r.toString()}async function T(e){return!e||e.type===`none`?{}:e.type===`bearer`?{Authorization:`Bearer ${e.token}`}:e.type===`header`?{[e.name]:e.value}:e.type===`custom`?await e.getHeaders():{}}function E(e){let t=e.fetchImpl??globalThis.fetch;return{async request({method:n,path:r,query:i,body:a,headers:o}){let s=ie(e.baseUrl,r,i),c=await T(e.auth),l=await t(s,{method:n,headers:{...a?{"Content-Type":`application/json`}:{},...c,...o},body:a?JSON.stringify(a):void 0}),u=await l.text(),d=(l.headers.get(`content-type`)||``).includes(`application/json`),f=d&&u?JSON.parse(u):u;if(!l.ok){let e=d?f:void 0,t=e?.error;throw new w(t?.message??`Request failed with status ${l.status}`,{status:l.status,icebergType:t?.type,icebergCode:t?.code,details:e})}return{status:l.status,headers:l.headers,data:f}}}}function D(e){return e.join(``)}var O=class{constructor(e,t=``){this.client=e,this.prefix=t}async listNamespaces(e){let t=e?{parent:D(e.namespace)}:void 0;return(await this.client.request({method:`GET`,path:`${this.prefix}/namespaces`,query:t})).data.namespaces.map(e=>({namespace:e}))}async createNamespace(e,t){let n={namespace:e.namespace,properties:t?.properties};return(await this.client.request({method:`POST`,path:`${this.prefix}/namespaces`,body:n})).data}async dropNamespace(e){await this.client.request({method:`DELETE`,path:`${this.prefix}/namespaces/${D(e.namespace)}`})}async loadNamespaceMetadata(e){return{properties:(await this.client.request({method:`GET`,path:`${this.prefix}/namespaces/${D(e.namespace)}`})).data.properties}}async namespaceExists(e){try{return await this.client.request({method:`HEAD`,path:`${this.prefix}/namespaces/${D(e.namespace)}`}),!0}catch(e){if(e instanceof w&&e.status===404)return!1;throw e}}async createNamespaceIfNotExists(e,t){try{return await this.createNamespace(e,t)}catch(e){if(e instanceof w&&e.status===409)return;throw e}}};function k(e){return e.join(``)}var A=class{constructor(e,t=``,n){this.client=e,this.prefix=t,this.accessDelegation=n}async listTables(e){return(await this.client.request({method:`GET`,path:`${this.prefix}/namespaces/${k(e.namespace)}/tables`})).data.identifiers}async createTable(e,t){let n={};return this.accessDelegation&&(n[`X-Iceberg-Access-Delegation`]=this.accessDelegation),(await this.client.request({method:`POST`,path:`${this.prefix}/namespaces/${k(e.namespace)}/tables`,body:t,headers:n})).data.metadata}async updateTable(e,t){let n=await this.client.request({method:`POST`,path:`${this.prefix}/namespaces/${k(e.namespace)}/tables/${e.name}`,body:t});return{"metadata-location":n.data[`metadata-location`],metadata:n.data.metadata}}async dropTable(e,t){await this.client.request({method:`DELETE`,path:`${this.prefix}/namespaces/${k(e.namespace)}/tables/${e.name}`,query:{purgeRequested:String(t?.purge??!1)}})}async loadTable(e){let t={};return this.accessDelegation&&(t[`X-Iceberg-Access-Delegation`]=this.accessDelegation),(await this.client.request({method:`GET`,path:`${this.prefix}/namespaces/${k(e.namespace)}/tables/${e.name}`,headers:t})).data.metadata}async tableExists(e){let t={};this.accessDelegation&&(t[`X-Iceberg-Access-Delegation`]=this.accessDelegation);try{return await this.client.request({method:`HEAD`,path:`${this.prefix}/namespaces/${k(e.namespace)}/tables/${e.name}`,headers:t}),!0}catch(e){if(e instanceof w&&e.status===404)return!1;throw e}}async createTableIfNotExists(e,t){try{return await this.createTable(e,t)}catch(n){if(n instanceof w&&n.status===409)return await this.loadTable({namespace:e.namespace,name:t.name});throw n}}},ae=class{constructor(e){let t=`v1`;e.catalogName&&(t+=`/${e.catalogName}`),this.client=E({baseUrl:e.baseUrl.endsWith(`/`)?e.baseUrl:`${e.baseUrl}/`,auth:e.auth,fetchImpl:e.fetch}),this.accessDelegation=e.accessDelegation?.join(`,`),this.namespaceOps=new O(this.client,t),this.tableOps=new A(this.client,t,this.accessDelegation)}async listNamespaces(e){return this.namespaceOps.listNamespaces(e)}async createNamespace(e,t){return this.namespaceOps.createNamespace(e,t)}async dropNamespace(e){await this.namespaceOps.dropNamespace(e)}async loadNamespaceMetadata(e){return this.namespaceOps.loadNamespaceMetadata(e)}async listTables(e){return this.tableOps.listTables(e)}async createTable(e,t){return this.tableOps.createTable(e,t)}async updateTable(e,t){return this.tableOps.updateTable(e,t)}async dropTable(e,t){await this.tableOps.dropTable(e,t)}async loadTable(e){return this.tableOps.loadTable(e)}async namespaceExists(e){return this.namespaceOps.namespaceExists(e)}async tableExists(e){return this.tableOps.tableExists(e)}async createNamespaceIfNotExists(e,t){return this.namespaceOps.createNamespaceIfNotExists(e,t)}async createTableIfNotExists(e,t){return this.tableOps.createTableIfNotExists(e,t)}},j=class{constructor(e,t={},n){this.shouldThrowOnError=!1,this.url=e.replace(/\/$/,``),this.headers={...C,...t},this.fetch=a(n)}throwOnError(){return this.shouldThrowOnError=!0,this}async createBucket(e){try{return{data:await h(this.fetch,`${this.url}/bucket`,{name:e},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async listBuckets(e){try{let t=new URLSearchParams;e?.limit!==void 0&&t.set(`limit`,e.limit.toString()),e?.offset!==void 0&&t.set(`offset`,e.offset.toString()),e?.sortColumn&&t.set(`sortColumn`,e.sortColumn),e?.sortOrder&&t.set(`sortOrder`,e.sortOrder),e?.search&&t.set(`search`,e.search);let n=t.toString(),r=n?`${this.url}/bucket?${n}`:`${this.url}/bucket`;return{data:await m(this.fetch,r,{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async deleteBucket(e){try{return{data:await _(this.fetch,`${this.url}/bucket/${e}`,{},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}from(e){if(!l(e))throw new t(`Invalid bucket name: File, folder, and bucket names must follow AWS object key naming guidelines and should avoid the use of any other characters.`);let n=new ae({baseUrl:this.url,catalogName:e,auth:{type:`custom`,getHeaders:async()=>this.headers},fetch:this.fetch}),r=this.shouldThrowOnError;return new Proxy(n,{get(e,t){let n=e[t];return typeof n==`function`?async(...t)=>{try{return{data:await n.apply(e,t),error:null}}catch(e){if(r)throw e;return{data:null,error:e}}}:n}})}};let M={"X-Client-Info":`storage-js/${S}`,"Content-Type":`application/json`};var N=class extends Error{constructor(e){super(e),this.__isStorageVectorsError=!0,this.name=`StorageVectorsError`}};function P(e){return typeof e==`object`&&!!e&&`__isStorageVectorsError`in e}var F=class extends N{constructor(e,t,n){super(e),this.name=`StorageVectorsApiError`,this.status=t,this.statusCode=n}toJSON(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}}},I=class extends N{constructor(e,t){super(e),this.name=`StorageVectorsUnknownError`,this.originalError=t}};let L=function(e){return e.InternalError=`InternalError`,e.S3VectorConflictException=`S3VectorConflictException`,e.S3VectorNotFoundException=`S3VectorNotFoundException`,e.S3VectorBucketNotEmpty=`S3VectorBucketNotEmpty`,e.S3VectorMaxBucketsExceeded=`S3VectorMaxBucketsExceeded`,e.S3VectorMaxIndexesExceeded=`S3VectorMaxIndexesExceeded`,e}({}),R=e=>e?(...t)=>e(...t):(...e)=>fetch(...e),z=()=>Response,B=e=>{if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},V=e=>Array.from(new Float32Array(e)),H=(e,t)=>{if(t!==void 0&&e.float32.length!==t)throw Error(`Vector dimension mismatch: expected ${t}, got ${e.float32.length}`)},U=e=>e.msg||e.message||e.error_description||e.error||JSON.stringify(e),W=async(e,t,n)=>{if(e&&typeof e==`object`&&`status`in e&&`ok`in e&&typeof e.status==`number`&&!n?.noResolveJson){let n=e.status||500,r=e;if(typeof r.json==`function`)r.json().then(e=>{let r=e?.statusCode||e?.code||n+``;t(new F(U(e),n,r))}).catch(()=>{let e=n+``;t(new F(r.statusText||`HTTP ${n} error`,n,e))});else{let e=n+``;t(new F(r.statusText||`HTTP ${n} error`,n,e))}}else t(new I(U(e),e))},G=(e,t,n,r)=>{let i={method:e,headers:t?.headers||{}};return e===`GET`||!r?i:(B(r)?(i.headers={"Content-Type":`application/json`,...t?.headers},i.body=JSON.stringify(r)):i.body=r,{...i,...n})};async function K(e,t,n,r,i,a){return new Promise((o,s)=>{e(n,G(t,r,i,a)).then(e=>{if(!e.ok)throw e;if(r?.noResolveJson)return e;let t=e.headers.get(`content-type`);return!t||!t.includes(`application/json`)?{}:e.json()}).then(e=>o(e)).catch(e=>W(e,s,r))})}async function q(e,t,n,r,i){return K(e,`POST`,t,r,i,n)}var J=class{constructor(e,t={},n){this.shouldThrowOnError=!1,this.url=e.replace(/\/$/,``),this.headers={...M,...t},this.fetch=R(n)}throwOnError(){return this.shouldThrowOnError=!0,this}async createIndex(e){try{return{data:await q(this.fetch,`${this.url}/CreateIndex`,e,{headers:this.headers})||{},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async getIndex(e,t){try{return{data:await q(this.fetch,`${this.url}/GetIndex`,{vectorBucketName:e,indexName:t},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async listIndexes(e){try{return{data:await q(this.fetch,`${this.url}/ListIndexes`,e,{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async deleteIndex(e,t){try{return{data:await q(this.fetch,`${this.url}/DeleteIndex`,{vectorBucketName:e,indexName:t},{headers:this.headers})||{},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}},Y=class{constructor(e,t={},n){this.shouldThrowOnError=!1,this.url=e.replace(/\/$/,``),this.headers={...M,...t},this.fetch=R(n)}throwOnError(){return this.shouldThrowOnError=!0,this}async putVectors(e){try{if(e.vectors.length<1||e.vectors.length>500)throw Error(`Vector batch size must be between 1 and 500 items`);return{data:await q(this.fetch,`${this.url}/PutVectors`,e,{headers:this.headers})||{},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async getVectors(e){try{return{data:await q(this.fetch,`${this.url}/GetVectors`,e,{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async listVectors(e){try{if(e.segmentCount!==void 0){if(e.segmentCount<1||e.segmentCount>16)throw Error(`segmentCount must be between 1 and 16`);if(e.segmentIndex!==void 0&&(e.segmentIndex<0||e.segmentIndex>=e.segmentCount))throw Error(`segmentIndex must be between 0 and ${e.segmentCount-1}`)}return{data:await q(this.fetch,`${this.url}/ListVectors`,e,{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async queryVectors(e){try{return{data:await q(this.fetch,`${this.url}/QueryVectors`,e,{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async deleteVectors(e){try{if(e.keys.length<1||e.keys.length>500)throw Error(`Keys batch size must be between 1 and 500 items`);return{data:await q(this.fetch,`${this.url}/DeleteVectors`,e,{headers:this.headers})||{},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}},X=class{constructor(e,t={},n){this.shouldThrowOnError=!1,this.url=e.replace(/\/$/,``),this.headers={...M,...t},this.fetch=R(n)}throwOnError(){return this.shouldThrowOnError=!0,this}async createBucket(e){try{return{data:await q(this.fetch,`${this.url}/CreateVectorBucket`,{vectorBucketName:e},{headers:this.headers})||{},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async getBucket(e){try{return{data:await q(this.fetch,`${this.url}/GetVectorBucket`,{vectorBucketName:e},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async listBuckets(e={}){try{return{data:await q(this.fetch,`${this.url}/ListVectorBuckets`,e,{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async deleteBucket(e){try{return{data:await q(this.fetch,`${this.url}/DeleteVectorBucket`,{vectorBucketName:e},{headers:this.headers})||{},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}},Z=class extends X{constructor(e,t={}){super(e,t.headers||{},t.fetch)}from(e){return new Q(this.url,this.headers,e,this.fetch)}async createBucket(e){return super.createBucket(e)}async getBucket(e){return super.getBucket(e)}async listBuckets(e={}){return super.listBuckets(e)}async deleteBucket(e){return super.deleteBucket(e)}},Q=class extends J{constructor(e,t,n,r){super(e,t,r),this.vectorBucketName=n}async createIndex(e){return super.createIndex({...e,vectorBucketName:this.vectorBucketName})}async listIndexes(e={}){return super.listIndexes({...e,vectorBucketName:this.vectorBucketName})}async getIndex(e){return super.getIndex(this.vectorBucketName,e)}async deleteIndex(e){return super.deleteIndex(this.vectorBucketName,e)}index(e){return new $(this.url,this.headers,this.vectorBucketName,e,this.fetch)}},$=class extends Y{constructor(e,t,n,r,i){super(e,t,i),this.vectorBucketName=n,this.indexName=r}async putVectors(e){return super.putVectors({...e,vectorBucketName:this.vectorBucketName,indexName:this.indexName})}async getVectors(e){return super.getVectors({...e,vectorBucketName:this.vectorBucketName,indexName:this.indexName})}async listVectors(e={}){return super.listVectors({...e,vectorBucketName:this.vectorBucketName,indexName:this.indexName})}async queryVectors(e){return super.queryVectors({...e,vectorBucketName:this.vectorBucketName,indexName:this.indexName})}async deleteVectors(e){return super.deleteVectors({...e,vectorBucketName:this.vectorBucketName,indexName:this.indexName})}},oe=class extends re{constructor(e,t={},n,r){super(e,t,n,r)}from(e){return new x(this.url,this.headers,e,this.fetch)}get vectors(){return new Z(this.url+`/vector`,{headers:this.headers,fetch:this.fetch})}get analytics(){return new j(this.url+`/iceberg`,this.headers,this.fetch)}};return e.StorageAnalyticsClient=j,e.StorageApiError=r,e.StorageClient=oe,e.StorageError=t,e.StorageUnknownError=i,e.StorageVectorsApiError=F,e.StorageVectorsClient=Z,e.StorageVectorsError=N,e.StorageVectorsErrorCode=L,e.StorageVectorsUnknownError=I,e.VectorBucketApi=X,e.VectorBucketScope=Q,e.VectorDataApi=Y,e.VectorIndexApi=J,e.VectorIndexScope=$,e.isPlainObject=B,e.isStorageError=n,e.isStorageVectorsError=P,e.normalizeToFloat32=V,e.resolveFetch=R,e.resolveResponse=z,e.validateVectorDimension=H,e})({});
|
|
1
|
+
var supabase=(function(e){var t=class extends Error{constructor(e){super(e),this.__isStorageError=!0,this.name=`StorageError`}};function n(e){return typeof e==`object`&&!!e&&`__isStorageError`in e}var r=class extends t{constructor(e,t,n){super(e),this.name=`StorageApiError`,this.status=t,this.statusCode=n}toJSON(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}}},i=class extends t{constructor(e,t){super(e),this.name=`StorageUnknownError`,this.originalError=t}};let a=e=>e?(...t)=>e(...t):(...e)=>fetch(...e),o=()=>Response,s=e=>{if(Array.isArray(e))return e.map(e=>s(e));if(typeof e==`function`||e!==Object(e))return e;let t={};return Object.entries(e).forEach(([e,n])=>{let r=e.replace(/([-_][a-z])/gi,e=>e.toUpperCase().replace(/[-_]/g,``));t[r]=s(n)}),t},c=e=>{if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},l=e=>!e||typeof e!=`string`||e.length===0||e.length>100||e.trim()!==e||e.includes(`/`)||e.includes(`\\`)?!1:/^[\w!.\*'() &$@=;:+,?-]+$/.test(e),u=e=>e.msg||e.message||e.error_description||(typeof e.error==`string`?e.error:e.error?.message)||JSON.stringify(e),d=async(e,t,n)=>{e instanceof await o()&&!n?.noResolveJson?e.json().then(n=>{let i=e.status||500,a=n?.statusCode||i+``;t(new r(u(n),i,a))}).catch(e=>{t(new i(u(e),e))}):t(new i(u(e),e))},f=(e,t,n,r)=>{let i={method:e,headers:t?.headers||{}};return e===`GET`||!r?i:(c(r)?(i.headers={"Content-Type":`application/json`,...t?.headers},i.body=JSON.stringify(r)):i.body=r,t?.duplex&&(i.duplex=t.duplex),{...i,...n})};async function p(e,t,n,r,i,a){return new Promise((o,s)=>{e(n,f(t,r,i,a)).then(e=>{if(!e.ok)throw e;return r?.noResolveJson?e:e.json()}).then(e=>o(e)).catch(e=>d(e,s,r))})}async function m(e,t,n,r){return p(e,`GET`,t,n,r)}async function h(e,t,n,r,i){return p(e,`POST`,t,r,i,n)}async function g(e,t,n,r,i){return p(e,`PUT`,t,r,i,n)}async function ee(e,t,n,r){return p(e,`HEAD`,t,{...n,noResolveJson:!0},r)}async function _(e,t,n,r,i){return p(e,`DELETE`,t,r,i,n)}var v=class{constructor(e,t){this.downloadFn=e,this.shouldThrowOnError=t}then(e,t){return this.execute().then(e,t)}async execute(){try{return{data:(await this.downloadFn()).body,error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}};let y;var te=class{static{y=Symbol.toStringTag}constructor(e,t){this.downloadFn=e,this.shouldThrowOnError=t,this[y]=`BlobDownloadBuilder`,this.promise=null}asStream(){return new v(this.downloadFn,this.shouldThrowOnError)}then(e,t){return this.getPromise().then(e,t)}catch(e){return this.getPromise().catch(e)}finally(e){return this.getPromise().finally(e)}getPromise(){return this.promise||=this.execute(),this.promise}async execute(){try{return{data:await(await this.downloadFn()).blob(),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}};let ne={limit:100,offset:0,sortBy:{column:`name`,order:`asc`}},b={cacheControl:`3600`,contentType:`text/plain;charset=UTF-8`,upsert:!1};var x=class{constructor(e,t={},n,r){this.shouldThrowOnError=!1,this.url=e,this.headers=t,this.bucketId=n,this.fetch=a(r)}throwOnError(){return this.shouldThrowOnError=!0,this}async uploadOrUpdate(e,t,r,i){try{let n,a={...b,...i},o={...this.headers,...e===`POST`&&{"x-upsert":String(a.upsert)}},s=a.metadata;typeof Blob<`u`&&r instanceof Blob?(n=new FormData,n.append(`cacheControl`,a.cacheControl),s&&n.append(`metadata`,this.encodeMetadata(s)),n.append(``,r)):typeof FormData<`u`&&r instanceof FormData?(n=r,n.has(`cacheControl`)||n.append(`cacheControl`,a.cacheControl),s&&!n.has(`metadata`)&&n.append(`metadata`,this.encodeMetadata(s))):(n=r,o[`cache-control`]=`max-age=${a.cacheControl}`,o[`content-type`]=a.contentType,s&&(o[`x-metadata`]=this.toBase64(this.encodeMetadata(s))),(typeof ReadableStream<`u`&&n instanceof ReadableStream||n&&typeof n==`object`&&`pipe`in n&&typeof n.pipe==`function`)&&!a.duplex&&(a.duplex=`half`)),i?.headers&&(o={...o,...i.headers});let c=this._removeEmptyFolders(t),l=this._getFinalPath(c),u=await(e==`PUT`?g:h)(this.fetch,`${this.url}/object/${l}`,n,{headers:o,...a?.duplex?{duplex:a.duplex}:{}});return{data:{path:c,id:u.Id,fullPath:u.Key},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async upload(e,t,n){return this.uploadOrUpdate(`POST`,e,t,n)}async uploadToSignedUrl(e,t,r,i){let a=this._removeEmptyFolders(e),o=this._getFinalPath(a),s=new URL(this.url+`/object/upload/sign/${o}`);s.searchParams.set(`token`,t);try{let e,t={upsert:b.upsert,...i},n={...this.headers,"x-upsert":String(t.upsert)};return typeof Blob<`u`&&r instanceof Blob?(e=new FormData,e.append(`cacheControl`,t.cacheControl),e.append(``,r)):typeof FormData<`u`&&r instanceof FormData?(e=r,e.append(`cacheControl`,t.cacheControl)):(e=r,n[`cache-control`]=`max-age=${t.cacheControl}`,n[`content-type`]=t.contentType),{data:{path:a,fullPath:(await g(this.fetch,s.toString(),e,{headers:n})).Key},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async createSignedUploadUrl(e,r){try{let n=this._getFinalPath(e),i={...this.headers};r?.upsert&&(i[`x-upsert`]=`true`);let a=await h(this.fetch,`${this.url}/object/upload/sign/${n}`,{},{headers:i}),o=new URL(this.url+a.url),s=o.searchParams.get(`token`);if(!s)throw new t(`No token returned by API`);return{data:{signedUrl:o.toString(),path:e,token:s},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async update(e,t,n){return this.uploadOrUpdate(`PUT`,e,t,n)}async move(e,t,r){try{return{data:await h(this.fetch,`${this.url}/object/move`,{bucketId:this.bucketId,sourceKey:e,destinationKey:t,destinationBucket:r?.destinationBucket},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async copy(e,t,r){try{return{data:{path:(await h(this.fetch,`${this.url}/object/copy`,{bucketId:this.bucketId,sourceKey:e,destinationKey:t,destinationBucket:r?.destinationBucket},{headers:this.headers})).Key},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async createSignedUrl(e,t,r){try{let n=this._getFinalPath(e),i=await h(this.fetch,`${this.url}/object/sign/${n}`,{expiresIn:t,...r?.transform?{transform:r.transform}:{}},{headers:this.headers}),a=r?.download?`&download=${r.download===!0?``:r.download}`:``;return i={signedUrl:encodeURI(`${this.url}${i.signedURL}${a}`)},{data:i,error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async createSignedUrls(e,t,r){try{let n=await h(this.fetch,`${this.url}/object/sign/${this.bucketId}`,{expiresIn:t,paths:e},{headers:this.headers}),i=r?.download?`&download=${r.download===!0?``:r.download}`:``;return{data:n.map(e=>({...e,signedUrl:e.signedURL?encodeURI(`${this.url}${e.signedURL}${i}`):null})),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}download(e,t){let n=t?.transform===void 0?`object`:`render/image/authenticated`,r=this.transformOptsToQueryString(t?.transform||{}),i=r?`?${r}`:``,a=this._getFinalPath(e);return new te(()=>m(this.fetch,`${this.url}/${n}/${a}${i}`,{headers:this.headers,noResolveJson:!0}),this.shouldThrowOnError)}async info(e){let t=this._getFinalPath(e);try{return{data:s(await m(this.fetch,`${this.url}/object/info/${t}`,{headers:this.headers})),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async exists(e){let t=this._getFinalPath(e);try{return await ee(this.fetch,`${this.url}/object/${t}`,{headers:this.headers}),{data:!0,error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e)&&e instanceof i){let t=e.originalError;if([400,404].includes(t?.status))return{data:!1,error:e}}throw e}}getPublicUrl(e,t){let n=this._getFinalPath(e),r=[],i=t?.download?`download=${t.download===!0?``:t.download}`:``;i!==``&&r.push(i);let a=t?.transform===void 0?`object`:`render/image`,o=this.transformOptsToQueryString(t?.transform||{});o!==``&&r.push(o);let s=r.join(`&`);return s!==``&&(s=`?${s}`),{data:{publicUrl:encodeURI(`${this.url}/${a}/public/${n}${s}`)}}}async remove(e){try{return{data:await _(this.fetch,`${this.url}/object/${this.bucketId}`,{prefixes:e},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async list(e,t,r){try{let n={...ne,...t,prefix:e||``};return{data:await h(this.fetch,`${this.url}/object/list/${this.bucketId}`,n,{headers:this.headers},r),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async listV2(e,t){try{let n={...e};return{data:await h(this.fetch,`${this.url}/object/list-v2/${this.bucketId}`,n,{headers:this.headers},t),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}encodeMetadata(e){return JSON.stringify(e)}toBase64(e){return typeof Buffer<`u`?Buffer.from(e).toString(`base64`):btoa(e)}_getFinalPath(e){return`${this.bucketId}/${e.replace(/^\/+/,``)}`}_removeEmptyFolders(e){return e.replace(/^\/|\/$/g,``).replace(/\/+/g,`/`)}transformOptsToQueryString(e){let t=[];return e.width&&t.push(`width=${e.width}`),e.height&&t.push(`height=${e.height}`),e.resize&&t.push(`resize=${e.resize}`),e.format&&t.push(`format=${e.format}`),e.quality&&t.push(`quality=${e.quality}`),t.join(`&`)}};let S=`2.90.1-canary.0`,C={"X-Client-Info":`storage-js/${S}`};var re=class{constructor(e,t={},n,r){this.shouldThrowOnError=!1;let i=new URL(e);r?.useNewHostname&&/supabase\.(co|in|red)$/.test(i.hostname)&&!i.hostname.includes(`storage.supabase.`)&&(i.hostname=i.hostname.replace(`supabase.`,`storage.supabase.`)),this.url=i.href.replace(/\/$/,``),this.headers={...C,...t},this.fetch=a(n)}throwOnError(){return this.shouldThrowOnError=!0,this}async listBuckets(e){try{let t=this.listBucketOptionsToQueryString(e);return{data:await m(this.fetch,`${this.url}/bucket${t}`,{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async getBucket(e){try{return{data:await m(this.fetch,`${this.url}/bucket/${e}`,{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async createBucket(e,t={public:!1}){try{return{data:await h(this.fetch,`${this.url}/bucket`,{id:e,name:e,type:t.type,public:t.public,file_size_limit:t.fileSizeLimit,allowed_mime_types:t.allowedMimeTypes},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async updateBucket(e,t){try{return{data:await g(this.fetch,`${this.url}/bucket/${e}`,{id:e,name:e,public:t.public,file_size_limit:t.fileSizeLimit,allowed_mime_types:t.allowedMimeTypes},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async emptyBucket(e){try{return{data:await h(this.fetch,`${this.url}/bucket/${e}/empty`,{},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async deleteBucket(e){try{return{data:await _(this.fetch,`${this.url}/bucket/${e}`,{},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}listBucketOptionsToQueryString(e){let t={};return e&&(`limit`in e&&(t.limit=String(e.limit)),`offset`in e&&(t.offset=String(e.offset)),e.search&&(t.search=e.search),e.sortColumn&&(t.sortColumn=e.sortColumn),e.sortOrder&&(t.sortOrder=e.sortOrder)),Object.keys(t).length>0?`?`+new URLSearchParams(t).toString():``}},w=class extends Error{constructor(e,t){super(e),this.name=`IcebergError`,this.status=t.status,this.icebergType=t.icebergType,this.icebergCode=t.icebergCode,this.details=t.details,this.isCommitStateUnknown=t.icebergType===`CommitStateUnknownException`||[500,502,504].includes(t.status)&&t.icebergType?.includes(`CommitState`)===!0}isNotFound(){return this.status===404}isConflict(){return this.status===409}isAuthenticationTimeout(){return this.status===419}};function ie(e,t,n){let r=new URL(t,e);if(n)for(let[e,t]of Object.entries(n))t!==void 0&&r.searchParams.set(e,t);return r.toString()}async function T(e){return!e||e.type===`none`?{}:e.type===`bearer`?{Authorization:`Bearer ${e.token}`}:e.type===`header`?{[e.name]:e.value}:e.type===`custom`?await e.getHeaders():{}}function E(e){let t=e.fetchImpl??globalThis.fetch;return{async request({method:n,path:r,query:i,body:a,headers:o}){let s=ie(e.baseUrl,r,i),c=await T(e.auth),l=await t(s,{method:n,headers:{...a?{"Content-Type":`application/json`}:{},...c,...o},body:a?JSON.stringify(a):void 0}),u=await l.text(),d=(l.headers.get(`content-type`)||``).includes(`application/json`),f=d&&u?JSON.parse(u):u;if(!l.ok){let e=d?f:void 0,t=e?.error;throw new w(t?.message??`Request failed with status ${l.status}`,{status:l.status,icebergType:t?.type,icebergCode:t?.code,details:e})}return{status:l.status,headers:l.headers,data:f}}}}function D(e){return e.join(``)}var O=class{constructor(e,t=``){this.client=e,this.prefix=t}async listNamespaces(e){let t=e?{parent:D(e.namespace)}:void 0;return(await this.client.request({method:`GET`,path:`${this.prefix}/namespaces`,query:t})).data.namespaces.map(e=>({namespace:e}))}async createNamespace(e,t){let n={namespace:e.namespace,properties:t?.properties};return(await this.client.request({method:`POST`,path:`${this.prefix}/namespaces`,body:n})).data}async dropNamespace(e){await this.client.request({method:`DELETE`,path:`${this.prefix}/namespaces/${D(e.namespace)}`})}async loadNamespaceMetadata(e){return{properties:(await this.client.request({method:`GET`,path:`${this.prefix}/namespaces/${D(e.namespace)}`})).data.properties}}async namespaceExists(e){try{return await this.client.request({method:`HEAD`,path:`${this.prefix}/namespaces/${D(e.namespace)}`}),!0}catch(e){if(e instanceof w&&e.status===404)return!1;throw e}}async createNamespaceIfNotExists(e,t){try{return await this.createNamespace(e,t)}catch(e){if(e instanceof w&&e.status===409)return;throw e}}};function k(e){return e.join(``)}var A=class{constructor(e,t=``,n){this.client=e,this.prefix=t,this.accessDelegation=n}async listTables(e){return(await this.client.request({method:`GET`,path:`${this.prefix}/namespaces/${k(e.namespace)}/tables`})).data.identifiers}async createTable(e,t){let n={};return this.accessDelegation&&(n[`X-Iceberg-Access-Delegation`]=this.accessDelegation),(await this.client.request({method:`POST`,path:`${this.prefix}/namespaces/${k(e.namespace)}/tables`,body:t,headers:n})).data.metadata}async updateTable(e,t){let n=await this.client.request({method:`POST`,path:`${this.prefix}/namespaces/${k(e.namespace)}/tables/${e.name}`,body:t});return{"metadata-location":n.data[`metadata-location`],metadata:n.data.metadata}}async dropTable(e,t){await this.client.request({method:`DELETE`,path:`${this.prefix}/namespaces/${k(e.namespace)}/tables/${e.name}`,query:{purgeRequested:String(t?.purge??!1)}})}async loadTable(e){let t={};return this.accessDelegation&&(t[`X-Iceberg-Access-Delegation`]=this.accessDelegation),(await this.client.request({method:`GET`,path:`${this.prefix}/namespaces/${k(e.namespace)}/tables/${e.name}`,headers:t})).data.metadata}async tableExists(e){let t={};this.accessDelegation&&(t[`X-Iceberg-Access-Delegation`]=this.accessDelegation);try{return await this.client.request({method:`HEAD`,path:`${this.prefix}/namespaces/${k(e.namespace)}/tables/${e.name}`,headers:t}),!0}catch(e){if(e instanceof w&&e.status===404)return!1;throw e}}async createTableIfNotExists(e,t){try{return await this.createTable(e,t)}catch(n){if(n instanceof w&&n.status===409)return await this.loadTable({namespace:e.namespace,name:t.name});throw n}}},ae=class{constructor(e){let t=`v1`;e.catalogName&&(t+=`/${e.catalogName}`),this.client=E({baseUrl:e.baseUrl.endsWith(`/`)?e.baseUrl:`${e.baseUrl}/`,auth:e.auth,fetchImpl:e.fetch}),this.accessDelegation=e.accessDelegation?.join(`,`),this.namespaceOps=new O(this.client,t),this.tableOps=new A(this.client,t,this.accessDelegation)}async listNamespaces(e){return this.namespaceOps.listNamespaces(e)}async createNamespace(e,t){return this.namespaceOps.createNamespace(e,t)}async dropNamespace(e){await this.namespaceOps.dropNamespace(e)}async loadNamespaceMetadata(e){return this.namespaceOps.loadNamespaceMetadata(e)}async listTables(e){return this.tableOps.listTables(e)}async createTable(e,t){return this.tableOps.createTable(e,t)}async updateTable(e,t){return this.tableOps.updateTable(e,t)}async dropTable(e,t){await this.tableOps.dropTable(e,t)}async loadTable(e){return this.tableOps.loadTable(e)}async namespaceExists(e){return this.namespaceOps.namespaceExists(e)}async tableExists(e){return this.tableOps.tableExists(e)}async createNamespaceIfNotExists(e,t){return this.namespaceOps.createNamespaceIfNotExists(e,t)}async createTableIfNotExists(e,t){return this.tableOps.createTableIfNotExists(e,t)}},j=class{constructor(e,t={},n){this.shouldThrowOnError=!1,this.url=e.replace(/\/$/,``),this.headers={...C,...t},this.fetch=a(n)}throwOnError(){return this.shouldThrowOnError=!0,this}async createBucket(e){try{return{data:await h(this.fetch,`${this.url}/bucket`,{name:e},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async listBuckets(e){try{let t=new URLSearchParams;e?.limit!==void 0&&t.set(`limit`,e.limit.toString()),e?.offset!==void 0&&t.set(`offset`,e.offset.toString()),e?.sortColumn&&t.set(`sortColumn`,e.sortColumn),e?.sortOrder&&t.set(`sortOrder`,e.sortOrder),e?.search&&t.set(`search`,e.search);let n=t.toString(),r=n?`${this.url}/bucket?${n}`:`${this.url}/bucket`;return{data:await m(this.fetch,r,{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}async deleteBucket(e){try{return{data:await _(this.fetch,`${this.url}/bucket/${e}`,{},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(n(e))return{data:null,error:e};throw e}}from(e){if(!l(e))throw new t(`Invalid bucket name: File, folder, and bucket names must follow AWS object key naming guidelines and should avoid the use of any other characters.`);let n=new ae({baseUrl:this.url,catalogName:e,auth:{type:`custom`,getHeaders:async()=>this.headers},fetch:this.fetch}),r=this.shouldThrowOnError;return new Proxy(n,{get(e,t){let n=e[t];return typeof n==`function`?async(...t)=>{try{return{data:await n.apply(e,t),error:null}}catch(e){if(r)throw e;return{data:null,error:e}}}:n}})}};let M={"X-Client-Info":`storage-js/${S}`,"Content-Type":`application/json`};var N=class extends Error{constructor(e){super(e),this.__isStorageVectorsError=!0,this.name=`StorageVectorsError`}};function P(e){return typeof e==`object`&&!!e&&`__isStorageVectorsError`in e}var F=class extends N{constructor(e,t,n){super(e),this.name=`StorageVectorsApiError`,this.status=t,this.statusCode=n}toJSON(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}}},I=class extends N{constructor(e,t){super(e),this.name=`StorageVectorsUnknownError`,this.originalError=t}};let L=function(e){return e.InternalError=`InternalError`,e.S3VectorConflictException=`S3VectorConflictException`,e.S3VectorNotFoundException=`S3VectorNotFoundException`,e.S3VectorBucketNotEmpty=`S3VectorBucketNotEmpty`,e.S3VectorMaxBucketsExceeded=`S3VectorMaxBucketsExceeded`,e.S3VectorMaxIndexesExceeded=`S3VectorMaxIndexesExceeded`,e}({}),R=e=>e?(...t)=>e(...t):(...e)=>fetch(...e),z=()=>Response,B=e=>{if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},V=e=>Array.from(new Float32Array(e)),H=(e,t)=>{if(t!==void 0&&e.float32.length!==t)throw Error(`Vector dimension mismatch: expected ${t}, got ${e.float32.length}`)},U=e=>e.msg||e.message||e.error_description||e.error||JSON.stringify(e),W=async(e,t,n)=>{if(e&&typeof e==`object`&&`status`in e&&`ok`in e&&typeof e.status==`number`&&!n?.noResolveJson){let n=e.status||500,r=e;if(typeof r.json==`function`)r.json().then(e=>{let r=e?.statusCode||e?.code||n+``;t(new F(U(e),n,r))}).catch(()=>{let e=n+``;t(new F(r.statusText||`HTTP ${n} error`,n,e))});else{let e=n+``;t(new F(r.statusText||`HTTP ${n} error`,n,e))}}else t(new I(U(e),e))},G=(e,t,n,r)=>{let i={method:e,headers:t?.headers||{}};return e===`GET`||!r?i:(B(r)?(i.headers={"Content-Type":`application/json`,...t?.headers},i.body=JSON.stringify(r)):i.body=r,{...i,...n})};async function K(e,t,n,r,i,a){return new Promise((o,s)=>{e(n,G(t,r,i,a)).then(e=>{if(!e.ok)throw e;if(r?.noResolveJson)return e;let t=e.headers.get(`content-type`);return!t||!t.includes(`application/json`)?{}:e.json()}).then(e=>o(e)).catch(e=>W(e,s,r))})}async function q(e,t,n,r,i){return K(e,`POST`,t,r,i,n)}var J=class{constructor(e,t={},n){this.shouldThrowOnError=!1,this.url=e.replace(/\/$/,``),this.headers={...M,...t},this.fetch=R(n)}throwOnError(){return this.shouldThrowOnError=!0,this}async createIndex(e){try{return{data:await q(this.fetch,`${this.url}/CreateIndex`,e,{headers:this.headers})||{},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async getIndex(e,t){try{return{data:await q(this.fetch,`${this.url}/GetIndex`,{vectorBucketName:e,indexName:t},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async listIndexes(e){try{return{data:await q(this.fetch,`${this.url}/ListIndexes`,e,{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async deleteIndex(e,t){try{return{data:await q(this.fetch,`${this.url}/DeleteIndex`,{vectorBucketName:e,indexName:t},{headers:this.headers})||{},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}},Y=class{constructor(e,t={},n){this.shouldThrowOnError=!1,this.url=e.replace(/\/$/,``),this.headers={...M,...t},this.fetch=R(n)}throwOnError(){return this.shouldThrowOnError=!0,this}async putVectors(e){try{if(e.vectors.length<1||e.vectors.length>500)throw Error(`Vector batch size must be between 1 and 500 items`);return{data:await q(this.fetch,`${this.url}/PutVectors`,e,{headers:this.headers})||{},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async getVectors(e){try{return{data:await q(this.fetch,`${this.url}/GetVectors`,e,{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async listVectors(e){try{if(e.segmentCount!==void 0){if(e.segmentCount<1||e.segmentCount>16)throw Error(`segmentCount must be between 1 and 16`);if(e.segmentIndex!==void 0&&(e.segmentIndex<0||e.segmentIndex>=e.segmentCount))throw Error(`segmentIndex must be between 0 and ${e.segmentCount-1}`)}return{data:await q(this.fetch,`${this.url}/ListVectors`,e,{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async queryVectors(e){try{return{data:await q(this.fetch,`${this.url}/QueryVectors`,e,{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async deleteVectors(e){try{if(e.keys.length<1||e.keys.length>500)throw Error(`Keys batch size must be between 1 and 500 items`);return{data:await q(this.fetch,`${this.url}/DeleteVectors`,e,{headers:this.headers})||{},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}},X=class{constructor(e,t={},n){this.shouldThrowOnError=!1,this.url=e.replace(/\/$/,``),this.headers={...M,...t},this.fetch=R(n)}throwOnError(){return this.shouldThrowOnError=!0,this}async createBucket(e){try{return{data:await q(this.fetch,`${this.url}/CreateVectorBucket`,{vectorBucketName:e},{headers:this.headers})||{},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async getBucket(e){try{return{data:await q(this.fetch,`${this.url}/GetVectorBucket`,{vectorBucketName:e},{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async listBuckets(e={}){try{return{data:await q(this.fetch,`${this.url}/ListVectorBuckets`,e,{headers:this.headers}),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}async deleteBucket(e){try{return{data:await q(this.fetch,`${this.url}/DeleteVectorBucket`,{vectorBucketName:e},{headers:this.headers})||{},error:null}}catch(e){if(this.shouldThrowOnError)throw e;if(P(e))return{data:null,error:e};throw e}}},Z=class extends X{constructor(e,t={}){super(e,t.headers||{},t.fetch)}from(e){return new Q(this.url,this.headers,e,this.fetch)}async createBucket(e){return super.createBucket(e)}async getBucket(e){return super.getBucket(e)}async listBuckets(e={}){return super.listBuckets(e)}async deleteBucket(e){return super.deleteBucket(e)}},Q=class extends J{constructor(e,t,n,r){super(e,t,r),this.vectorBucketName=n}async createIndex(e){return super.createIndex({...e,vectorBucketName:this.vectorBucketName})}async listIndexes(e={}){return super.listIndexes({...e,vectorBucketName:this.vectorBucketName})}async getIndex(e){return super.getIndex(this.vectorBucketName,e)}async deleteIndex(e){return super.deleteIndex(this.vectorBucketName,e)}index(e){return new $(this.url,this.headers,this.vectorBucketName,e,this.fetch)}},$=class extends Y{constructor(e,t,n,r,i){super(e,t,i),this.vectorBucketName=n,this.indexName=r}async putVectors(e){return super.putVectors({...e,vectorBucketName:this.vectorBucketName,indexName:this.indexName})}async getVectors(e){return super.getVectors({...e,vectorBucketName:this.vectorBucketName,indexName:this.indexName})}async listVectors(e={}){return super.listVectors({...e,vectorBucketName:this.vectorBucketName,indexName:this.indexName})}async queryVectors(e){return super.queryVectors({...e,vectorBucketName:this.vectorBucketName,indexName:this.indexName})}async deleteVectors(e){return super.deleteVectors({...e,vectorBucketName:this.vectorBucketName,indexName:this.indexName})}},oe=class extends re{constructor(e,t={},n,r){super(e,t,n,r)}from(e){return new x(this.url,this.headers,e,this.fetch)}get vectors(){return new Z(this.url+`/vector`,{headers:this.headers,fetch:this.fetch})}get analytics(){return new j(this.url+`/iceberg`,this.headers,this.fetch)}};return e.StorageAnalyticsClient=j,e.StorageApiError=r,e.StorageClient=oe,e.StorageError=t,e.StorageUnknownError=i,e.StorageVectorsApiError=F,e.StorageVectorsClient=Z,e.StorageVectorsError=N,e.StorageVectorsErrorCode=L,e.StorageVectorsUnknownError=I,e.VectorBucketApi=X,e.VectorBucketScope=Q,e.VectorDataApi=Y,e.VectorIndexApi=J,e.VectorIndexScope=$,e.isPlainObject=B,e.isStorageError=n,e.isStorageVectorsError=P,e.normalizeToFloat32=V,e.resolveFetch=R,e.resolveResponse=z,e.validateVectorDimension=H,e})({});
|
package/package.json
CHANGED
package/src/lib/version.ts
CHANGED
|
@@ -4,4 +4,4 @@
|
|
|
4
4
|
// - Debugging and support (identifying which version is running)
|
|
5
5
|
// - Telemetry and logging (version reporting in errors/analytics)
|
|
6
6
|
// - Ensuring build artifacts match the published package version
|
|
7
|
-
export const version = '2.90.0'
|
|
7
|
+
export const version = '2.90.1-canary.0'
|