{
  "version": 3,
  "sources": ["ssg:https://ga.jspm.io/npm:@supabase/functions-js@2.1.1/dist/module/index.js", "ssg:https://ga.jspm.io/npm:@supabase/postgrest-js@1.6.0/dist/module/index.js", "ssg:https://ga.jspm.io/npm:es5-ext@0.10.62/_/d2db80e9.js", "ssg:https://ga.jspm.io/npm:es5-ext@0.10.62/global.js", "ssg:https://ga.jspm.io/npm:websocket@1.0.34/_/3c0ba9a6.js", "ssg:https://ga.jspm.io/npm:websocket@1.0.34/lib/browser.js", "ssg:https://ga.jspm.io/npm:@supabase/realtime-js@2.7.2/dist/module/index.js", "ssg:https://ga.jspm.io/npm:@supabase/storage-js@2.5.1/dist/module/index.js", "ssg:https://ga.jspm.io/npm:@supabase/gotrue-js@2.23.0/dist/module/index.js", "ssg:https://ga.jspm.io/npm:@supabase/supabase-js@2.21.0/dist/module/index.js", "ssg:https://framerusercontent.com/modules/oEGde8LFfGZs9F6SPTzf/Jq8iKevDEwiePOHdhOw2/Asteroids.js", "ssg:https://framerusercontent.com/modules/SiUv6to7J4C0vWxhrtYr/o6E9xSWlOnimZLUs9gEy/DuVlnWxx5.js", "ssg:https://framerusercontent.com/modules/EPi9OtBcdPHKTF3YYWi6/sG78alP96Eed6bW3nAL6/w4rC7o9ey.js"],
  "sourcesContent": ["var t=(void 0,function(t,e,n,r){function adopt(t){return t instanceof n?t:new n((function(e){e(t)}))}return new(n||(n=Promise))((function(n,o){function fulfilled(t){try{step(r.next(t))}catch(t){o(t)}}function rejected(t){try{step(r.throw(t))}catch(t){o(t)}}function step(t){t.done?n(t.value):adopt(t.value).then(fulfilled,rejected)}step((r=r.apply(t,e||[])).next())}))});const resolveFetch=e=>{let n;n=e||(\"undefined\"===typeof fetch?(...e)=>t(void 0,void 0,void 0,(function*(){return yield(yield import(\"cross-fetch\")).fetch(...e)})):fetch);return(...t)=>n(...t)};class FunctionsError extends Error{constructor(t,e=\"FunctionsError\",n){super(t);super.name=e;this.context=n}}class FunctionsFetchError extends FunctionsError{constructor(t){super(\"Failed to send a request to the Edge Function\",\"FunctionsFetchError\",t)}}class FunctionsRelayError extends FunctionsError{constructor(t){super(\"Relay Error invoking the Edge Function\",\"FunctionsRelayError\",t)}}class FunctionsHttpError extends FunctionsError{constructor(t){super(\"Edge Function returned a non-2xx status code\",\"FunctionsHttpError\",t)}}var e=(void 0,function(t,e,n,r){function adopt(t){return t instanceof n?t:new n((function(e){e(t)}))}return new(n||(n=Promise))((function(n,o){function fulfilled(t){try{step(r.next(t))}catch(t){o(t)}}function rejected(t){try{step(r.throw(t))}catch(t){o(t)}}function step(t){t.done?n(t.value):adopt(t.value).then(fulfilled,rejected)}step((r=r.apply(t,e||[])).next())}))});class FunctionsClient{constructor(t,{headers:e={},customFetch:n}={}){this.url=t;this.headers=e;this.fetch=resolveFetch(n)}\n/**\n     * Updates the authorization header\n     * @param token - the new jwt token sent in the authorisation header\n     */setAuth(t){this.headers.Authorization=`Bearer ${t}`}\n/**\n     * Invokes a function\n     * @param functionName - The name of the Function to invoke.\n     * @param options - Options for invoking the Function.\n     */invoke(t,n={}){var r;return e(this,void 0,void 0,(function*(){try{const{headers:e,method:o,body:i}=n;let s={};let c;if(i&&(e&&!Object.prototype.hasOwnProperty.call(e,\"Content-Type\")||!e))if(\"undefined\"!==typeof Blob&&i instanceof Blob||i instanceof ArrayBuffer){s[\"Content-Type\"]=\"application/octet-stream\";c=i}else if(\"string\"===typeof i){s[\"Content-Type\"]=\"text/plain\";c=i}else if(\"undefined\"!==typeof FormData&&i instanceof FormData)c=i;else{s[\"Content-Type\"]=\"application/json\";c=JSON.stringify(i)}const u=yield this.fetch(`${this.url}/${t}`,{method:o||\"POST\",headers:Object.assign(Object.assign(Object.assign({},s),this.headers),e),body:c}).catch((t=>{throw new FunctionsFetchError(t)}));const a=u.headers.get(\"x-relay-error\");if(a&&\"true\"===a)throw new FunctionsRelayError(u);if(!u.ok)throw new FunctionsHttpError(u);let l=(null!==(r=u.headers.get(\"Content-Type\"))&&void 0!==r?r:\"text/plain\").split(\";\")[0].trim();let d;d=\"application/json\"===l?yield u.json():\"application/octet-stream\"===l?yield u.blob():\"multipart/form-data\"===l?yield u.formData():yield u.text();return{data:d,error:null}}catch(t){return{data:null,error:t}}}))}}export{FunctionsClient,FunctionsError,FunctionsFetchError,FunctionsHttpError,FunctionsRelayError};\n\n//# sourceMappingURL=index.js.map", "import e from\"cross-fetch\";class PostgrestBuilder{constructor(s){this.shouldThrowOnError=false;this.method=s.method;this.url=s.url;this.headers=s.headers;this.schema=s.schema;this.body=s.body;this.shouldThrowOnError=s.shouldThrowOnError;this.signal=s.signal;this.allowEmpty=s.allowEmpty;s.fetch?this.fetch=s.fetch:\"undefined\"===typeof fetch?this.fetch=e:this.fetch=fetch}throwOnError(){this.shouldThrowOnError=true;return this}then(e,s){void 0===this.schema||([\"GET\",\"HEAD\"].includes(this.method)?this.headers[\"Accept-Profile\"]=this.schema:this.headers[\"Content-Profile\"]=this.schema);\"GET\"!==this.method&&\"HEAD\"!==this.method&&(this.headers[\"Content-Type\"]=\"application/json\");const t=this.fetch;let r=t(this.url.toString(),{method:this.method,headers:this.headers,body:JSON.stringify(this.body),signal:this.signal}).then((async e=>{var s,t,r;let a=null;let i=null;let h=null;let n=e.status;let l=e.statusText;if(e.ok){if(\"HEAD\"!==this.method){const s=await e.text();\"\"===s||(i=\"text/csv\"===this.headers.Accept||this.headers.Accept&&this.headers.Accept.includes(\"application/vnd.pgrst.plan+text\")?s:JSON.parse(s))}const r=null===(s=this.headers.Prefer)||void 0===s?void 0:s.match(/count=(exact|planned|estimated)/);const a=null===(t=e.headers.get(\"content-range\"))||void 0===t?void 0:t.split(\"/\");r&&a&&a.length>1&&(h=parseInt(a[1]))}else{const s=await e.text();try{a=JSON.parse(s);if(Array.isArray(a)&&404===e.status){i=[];a=null;n=200;l=\"OK\"}}catch(t){if(404===e.status&&\"\"===s){n=204;l=\"No Content\"}else a={message:s}}if(a&&this.allowEmpty&&(null===(r=null===a||void 0===a?void 0:a.details)||void 0===r?void 0:r.includes(\"Results contain 0 rows\"))){a=null;n=200;l=\"OK\"}if(a&&this.shouldThrowOnError)throw a}const o={error:a,data:i,count:h,status:n,statusText:l};return o}));this.shouldThrowOnError||(r=r.catch((e=>{var s,t,r;return{error:{message:`${null!==(s=null===e||void 0===e?void 0:e.name)&&void 0!==s?s:\"FetchError\"}: ${null===e||void 0===e?void 0:e.message}`,details:`${null!==(t=null===e||void 0===e?void 0:e.stack)&&void 0!==t?t:\"\"}`,hint:\"\",code:`${null!==(r=null===e||void 0===e?void 0:e.code)&&void 0!==r?r:\"\"}`},data:null,count:null,status:0,statusText:\"\"}})));return r.then(e,s)}}class PostgrestTransformBuilder extends PostgrestBuilder{\n/**\n     * Perform a SELECT on the query result.\n     *\n     * By default, `.insert()`, `.update()`, `.upsert()`, and `.delete()` do not\n     * return modified rows. By calling this method, modified rows are returned in\n     * `data`.\n     *\n     * @param columns - The columns to retrieve, separated by commas\n     */\nselect(e){let s=false;const t=(null!==e&&void 0!==e?e:\"*\").split(\"\").map((e=>{if(/\\s/.test(e)&&!s)return\"\";'\"'===e&&(s=!s);return e})).join(\"\");this.url.searchParams.set(\"select\",t);this.headers.Prefer&&(this.headers.Prefer+=\",\");this.headers.Prefer+=\"return=representation\";return this}\n/**\n     * Order the query result by `column`.\n     *\n     * You can call this method multiple times to order by multiple columns.\n     *\n     * You can order foreign tables, but it doesn't affect the ordering of the\n     * current table.\n     *\n     * @param column - The column to order by\n     * @param options - Named parameters\n     * @param options.ascending - If `true`, the result will be in ascending order\n     * @param options.nullsFirst - If `true`, `null`s appear first. If `false`,\n     * `null`s appear last.\n     * @param options.foreignTable - Set this to order a foreign table by foreign\n     * columns\n     */order(e,{ascending:s=true,nullsFirst:t,foreignTable:r}={}){const a=r?`${r}.order`:\"order\";const i=this.url.searchParams.get(a);this.url.searchParams.set(a,`${i?`${i},`:\"\"}${e}.${s?\"asc\":\"desc\"}${void 0===t?\"\":t?\".nullsfirst\":\".nullslast\"}`);return this}\n/**\n     * Limit the query result by `count`.\n     *\n     * @param count - The maximum number of rows to return\n     * @param options - Named parameters\n     * @param options.foreignTable - Set this to limit rows of foreign tables\n     * instead of the current table\n     */limit(e,{foreignTable:s}={}){const t=\"undefined\"===typeof s?\"limit\":`${s}.limit`;this.url.searchParams.set(t,`${e}`);return this}\n/**\n     * Limit the query result by `from` and `to` inclusively.\n     *\n     * @param from - The starting index from which to limit the result\n     * @param to - The last index to which to limit the result\n     * @param options - Named parameters\n     * @param options.foreignTable - Set this to limit rows of foreign tables\n     * instead of the current table\n     */range(e,s,{foreignTable:t}={}){const r=\"undefined\"===typeof t?\"offset\":`${t}.offset`;const a=\"undefined\"===typeof t?\"limit\":`${t}.limit`;this.url.searchParams.set(r,`${e}`);this.url.searchParams.set(a,\"\"+(s-e+1));return this}\n/**\n     * Set the AbortSignal for the fetch request.\n     *\n     * @param signal - The AbortSignal to use for the fetch request\n     */abortSignal(e){this.signal=e;return this}single(){this.headers.Accept=\"application/vnd.pgrst.object+json\";return this}maybeSingle(){this.headers.Accept=\"application/vnd.pgrst.object+json\";this.allowEmpty=true;return this}csv(){this.headers.Accept=\"text/csv\";return this}geojson(){this.headers.Accept=\"application/geo+json\";return this}\n/**\n     * Return `data` as the EXPLAIN plan for the query.\n     *\n     * @param options - Named parameters\n     *\n     * @param options.analyze - If `true`, the query will be executed and the\n     * actual run time will be returned\n     *\n     * @param options.verbose - If `true`, the query identifier will be returned\n     * and `data` will include the output columns of the query\n     *\n     * @param options.settings - If `true`, include information on configuration\n     * parameters that affect query planning\n     *\n     * @param options.buffers - If `true`, include information on buffer usage\n     *\n     * @param options.wal - If `true`, include information on WAL record generation\n     *\n     * @param options.format - The format of the output, can be `\"text\"` (default)\n     * or `\"json\"`\n     */explain({analyze:e=false,verbose:s=false,settings:t=false,buffers:r=false,wal:a=false,format:i=\"text\"}={}){const h=[e?\"analyze\":null,s?\"verbose\":null,t?\"settings\":null,r?\"buffers\":null,a?\"wal\":null].filter(Boolean).join(\"|\");const n=this.headers.Accept;this.headers.Accept=`application/vnd.pgrst.plan+${i}; for=\"${n}\"; options=${h};`;return\"json\"===i,this}rollback(){var e;(null!==(e=this.headers.Prefer)&&void 0!==e?e:\"\").trim().length>0?this.headers.Prefer+=\",tx=rollback\":this.headers.Prefer=\"tx=rollback\";return this}\n/**\n     * Override the type of the returned `data`.\n     *\n     * @typeParam NewResult - The new result type to override with\n     */returns(){return this}}class PostgrestFilterBuilder extends PostgrestTransformBuilder{\n/**\n     * Match only rows where `column` is equal to `value`.\n     *\n     * To check if the value of `column` is NULL, you should use `.is()` instead.\n     *\n     * @param column - The column to filter on\n     * @param value - The value to filter with\n     */\neq(e,s){this.url.searchParams.append(e,`eq.${s}`);return this}\n/**\n     * Match only rows where `column` is not equal to `value`.\n     *\n     * @param column - The column to filter on\n     * @param value - The value to filter with\n     */neq(e,s){this.url.searchParams.append(e,`neq.${s}`);return this}\n/**\n     * Match only rows where `column` is greater than `value`.\n     *\n     * @param column - The column to filter on\n     * @param value - The value to filter with\n     */gt(e,s){this.url.searchParams.append(e,`gt.${s}`);return this}\n/**\n     * Match only rows where `column` is greater than or equal to `value`.\n     *\n     * @param column - The column to filter on\n     * @param value - The value to filter with\n     */gte(e,s){this.url.searchParams.append(e,`gte.${s}`);return this}\n/**\n     * Match only rows where `column` is less than `value`.\n     *\n     * @param column - The column to filter on\n     * @param value - The value to filter with\n     */lt(e,s){this.url.searchParams.append(e,`lt.${s}`);return this}\n/**\n     * Match only rows where `column` is less than or equal to `value`.\n     *\n     * @param column - The column to filter on\n     * @param value - The value to filter with\n     */lte(e,s){this.url.searchParams.append(e,`lte.${s}`);return this}\n/**\n     * Match only rows where `column` matches `pattern` case-sensitively.\n     *\n     * @param column - The column to filter on\n     * @param pattern - The pattern to match with\n     */like(e,s){this.url.searchParams.append(e,`like.${s}`);return this}\n/**\n     * Match only rows where `column` matches all of `patterns` case-sensitively.\n     *\n     * @param column - The column to filter on\n     * @param patterns - The patterns to match with\n     */likeAllOf(e,s){this.url.searchParams.append(e,`like(all).{${s.join(\",\")}}`);return this}\n/**\n     * Match only rows where `column` matches any of `patterns` case-sensitively.\n     *\n     * @param column - The column to filter on\n     * @param patterns - The patterns to match with\n     */likeAnyOf(e,s){this.url.searchParams.append(e,`like(any).{${s.join(\",\")}}`);return this}\n/**\n     * Match only rows where `column` matches `pattern` case-insensitively.\n     *\n     * @param column - The column to filter on\n     * @param pattern - The pattern to match with\n     */ilike(e,s){this.url.searchParams.append(e,`ilike.${s}`);return this}\n/**\n     * Match only rows where `column` matches all of `patterns` case-insensitively.\n     *\n     * @param column - The column to filter on\n     * @param patterns - The patterns to match with\n     */ilikeAllOf(e,s){this.url.searchParams.append(e,`ilike(all).{${s.join(\",\")}}`);return this}\n/**\n     * Match only rows where `column` matches any of `patterns` case-insensitively.\n     *\n     * @param column - The column to filter on\n     * @param patterns - The patterns to match with\n     */ilikeAnyOf(e,s){this.url.searchParams.append(e,`ilike(any).{${s.join(\",\")}}`);return this}\n/**\n     * Match only rows where `column` IS `value`.\n     *\n     * For non-boolean columns, this is only relevant for checking if the value of\n     * `column` is NULL by setting `value` to `null`.\n     *\n     * For boolean columns, you can also set `value` to `true` or `false` and it\n     * will behave the same way as `.eq()`.\n     *\n     * @param column - The column to filter on\n     * @param value - The value to filter with\n     */is(e,s){this.url.searchParams.append(e,`is.${s}`);return this}\n/**\n     * Match only rows where `column` is included in the `values` array.\n     *\n     * @param column - The column to filter on\n     * @param values - The values array to filter with\n     */in(e,s){const t=s.map((e=>\"string\"===typeof e&&new RegExp(\"[,()]\").test(e)?`\"${e}\"`:`${e}`)).join(\",\");this.url.searchParams.append(e,`in.(${t})`);return this}\n/**\n     * Only relevant for jsonb, array, and range columns. Match only rows where\n     * `column` contains every element appearing in `value`.\n     *\n     * @param column - The jsonb, array, or range column to filter on\n     * @param value - The jsonb, array, or range value to filter with\n     */contains(e,s){\"string\"===typeof s?this.url.searchParams.append(e,`cs.${s}`):Array.isArray(s)?this.url.searchParams.append(e,`cs.{${s.join(\",\")}}`):this.url.searchParams.append(e,`cs.${JSON.stringify(s)}`);return this}\n/**\n     * Only relevant for jsonb, array, and range columns. Match only rows where\n     * every element appearing in `column` is contained by `value`.\n     *\n     * @param column - The jsonb, array, or range column to filter on\n     * @param value - The jsonb, array, or range value to filter with\n     */containedBy(e,s){\"string\"===typeof s?this.url.searchParams.append(e,`cd.${s}`):Array.isArray(s)?this.url.searchParams.append(e,`cd.{${s.join(\",\")}}`):this.url.searchParams.append(e,`cd.${JSON.stringify(s)}`);return this}\n/**\n     * Only relevant for range columns. Match only rows where every element in\n     * `column` is greater than any element in `range`.\n     *\n     * @param column - The range column to filter on\n     * @param range - The range to filter with\n     */rangeGt(e,s){this.url.searchParams.append(e,`sr.${s}`);return this}\n/**\n     * Only relevant for range columns. Match only rows where every element in\n     * `column` is either contained in `range` or greater than any element in\n     * `range`.\n     *\n     * @param column - The range column to filter on\n     * @param range - The range to filter with\n     */rangeGte(e,s){this.url.searchParams.append(e,`nxl.${s}`);return this}\n/**\n     * Only relevant for range columns. Match only rows where every element in\n     * `column` is less than any element in `range`.\n     *\n     * @param column - The range column to filter on\n     * @param range - The range to filter with\n     */rangeLt(e,s){this.url.searchParams.append(e,`sl.${s}`);return this}\n/**\n     * Only relevant for range columns. Match only rows where every element in\n     * `column` is either contained in `range` or less than any element in\n     * `range`.\n     *\n     * @param column - The range column to filter on\n     * @param range - The range to filter with\n     */rangeLte(e,s){this.url.searchParams.append(e,`nxr.${s}`);return this}\n/**\n     * Only relevant for range columns. Match only rows where `column` is\n     * mutually exclusive to `range` and there can be no element between the two\n     * ranges.\n     *\n     * @param column - The range column to filter on\n     * @param range - The range to filter with\n     */rangeAdjacent(e,s){this.url.searchParams.append(e,`adj.${s}`);return this}\n/**\n     * Only relevant for array and range columns. Match only rows where\n     * `column` and `value` have an element in common.\n     *\n     * @param column - The array or range column to filter on\n     * @param value - The array or range value to filter with\n     */overlaps(e,s){\"string\"===typeof s?this.url.searchParams.append(e,`ov.${s}`):this.url.searchParams.append(e,`ov.{${s.join(\",\")}}`);return this}\n/**\n     * Only relevant for text and tsvector columns. Match only rows where\n     * `column` matches the query string in `query`.\n     *\n     * @param column - The text or tsvector column to filter on\n     * @param query - The query text to match with\n     * @param options - Named parameters\n     * @param options.config - The text search configuration to use\n     * @param options.type - Change how the `query` text is interpreted\n     */textSearch(e,s,{config:t,type:r}={}){let a=\"\";\"plain\"===r?a=\"pl\":\"phrase\"===r?a=\"ph\":\"websearch\"===r&&(a=\"w\");const i=void 0===t?\"\":`(${t})`;this.url.searchParams.append(e,`${a}fts${i}.${s}`);return this}\n/**\n     * Match only rows where each column in `query` keys is equal to its\n     * associated value. Shorthand for multiple `.eq()`s.\n     *\n     * @param query - The object to filter with, with column names as keys mapped\n     * to their filter values\n     */match(e){Object.entries(e).forEach((([e,s])=>{this.url.searchParams.append(e,`eq.${s}`)}));return this}\n/**\n     * Match only rows which doesn't satisfy the filter.\n     *\n     * Unlike most filters, `opearator` and `value` are used as-is and need to\n     * follow [PostgREST\n     * syntax](https://postgrest.org/en/stable/api.html#operators). You also need\n     * to make sure they are properly sanitized.\n     *\n     * @param column - The column to filter on\n     * @param operator - The operator to be negated to filter with, following\n     * PostgREST syntax\n     * @param value - The value to filter with, following PostgREST syntax\n     */not(e,s,t){this.url.searchParams.append(e,`not.${s}.${t}`);return this}\n/**\n     * Match only rows which satisfy at least one of the filters.\n     *\n     * Unlike most filters, `filters` is used as-is and needs to follow [PostgREST\n     * syntax](https://postgrest.org/en/stable/api.html#operators). You also need\n     * to make sure it's properly sanitized.\n     *\n     * It's currently not possible to do an `.or()` filter across multiple tables.\n     *\n     * @param filters - The filters to use, following PostgREST syntax\n     * @param foreignTable - Set this to filter on foreign tables instead of the\n     * current table\n     */or(e,{foreignTable:s}={}){const t=s?`${s}.or`:\"or\";this.url.searchParams.append(t,`(${e})`);return this}\n/**\n     * Match only rows which satisfy the filter. This is an escape hatch - you\n     * should use the specific filter methods wherever possible.\n     *\n     * Unlike most filters, `opearator` and `value` are used as-is and need to\n     * follow [PostgREST\n     * syntax](https://postgrest.org/en/stable/api.html#operators). You also need\n     * to make sure they are properly sanitized.\n     *\n     * @param column - The column to filter on\n     * @param operator - The operator to filter with, following PostgREST syntax\n     * @param value - The value to filter with, following PostgREST syntax\n     */filter(e,s,t){this.url.searchParams.append(e,`${s}.${t}`);return this}}class PostgrestQueryBuilder{constructor(e,{headers:s={},schema:t,fetch:r}){this.url=e;this.headers=s;this.schema=t;this.fetch=r}\n/**\n     * Perform a SELECT query on the table or view.\n     *\n     * @param columns - The columns to retrieve, separated by commas. Columns can be renamed when returned with `customName:columnName`\n     *\n     * @param options - Named parameters\n     *\n     * @param options.head - When set to `true`, `data` will not be returned.\n     * Useful if you only need the count.\n     *\n     * @param options.count - Count algorithm to use to count rows in the table or view.\n     *\n     * `\"exact\"`: Exact but slow count algorithm. Performs a `COUNT(*)` under the\n     * hood.\n     *\n     * `\"planned\"`: Approximated but fast count algorithm. Uses the Postgres\n     * statistics under the hood.\n     *\n     * `\"estimated\"`: Uses exact count for low numbers and planned count for high\n     * numbers.\n     */select(e,{head:s=false,count:t}={}){const r=s?\"HEAD\":\"GET\";let a=false;const i=(null!==e&&void 0!==e?e:\"*\").split(\"\").map((e=>{if(/\\s/.test(e)&&!a)return\"\";'\"'===e&&(a=!a);return e})).join(\"\");this.url.searchParams.set(\"select\",i);t&&(this.headers.Prefer=`count=${t}`);return new PostgrestFilterBuilder({method:r,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch,allowEmpty:false})}\n/**\n     * Perform an INSERT into the table or view.\n     *\n     * By default, inserted rows are not returned. To return it, chain the call\n     * with `.select()`.\n     *\n     * @param values - The values to insert. Pass an object to insert a single row\n     * or an array to insert multiple rows.\n     *\n     * @param options - Named parameters\n     *\n     * @param options.count - Count algorithm to use to count inserted rows.\n     *\n     * `\"exact\"`: Exact but slow count algorithm. Performs a `COUNT(*)` under the\n     * hood.\n     *\n     * `\"planned\"`: Approximated but fast count algorithm. Uses the Postgres\n     * statistics under the hood.\n     *\n     * `\"estimated\"`: Uses exact count for low numbers and planned count for high\n     * numbers.\n     *\n     * @param options.defaultToNull - Make missing fields default to `null`.\n     * Otherwise, use the default value for the column.\n     */insert(e,{count:s,defaultToNull:t=true}={}){const r=\"POST\";const a=[];this.headers.Prefer&&a.push(this.headers.Prefer);s&&a.push(`count=${s}`);t||a.push(\"missing=default\");this.headers.Prefer=a.join(\",\");if(Array.isArray(e)){const s=e.reduce(((e,s)=>e.concat(Object.keys(s))),[]);if(s.length>0){const e=[...new Set(s)].map((e=>`\"${e}\"`));this.url.searchParams.set(\"columns\",e.join(\",\"))}}return new PostgrestFilterBuilder({method:r,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:this.fetch,allowEmpty:false})}\n/**\n     * Perform an UPSERT on the table or view. Depending on the column(s) passed\n     * to `onConflict`, `.upsert()` allows you to perform the equivalent of\n     * `.insert()` if a row with the corresponding `onConflict` columns doesn't\n     * exist, or if it does exist, perform an alternative action depending on\n     * `ignoreDuplicates`.\n     *\n     * By default, upserted rows are not returned. To return it, chain the call\n     * with `.select()`.\n     *\n     * @param values - The values to upsert with. Pass an object to upsert a\n     * single row or an array to upsert multiple rows.\n     *\n     * @param options - Named parameters\n     *\n     * @param options.onConflict - Comma-separated UNIQUE column(s) to specify how\n     * duplicate rows are determined. Two rows are duplicates if all the\n     * `onConflict` columns are equal.\n     *\n     * @param options.ignoreDuplicates - If `true`, duplicate rows are ignored. If\n     * `false`, duplicate rows are merged with existing rows.\n     *\n     * @param options.count - Count algorithm to use to count upserted rows.\n     *\n     * `\"exact\"`: Exact but slow count algorithm. Performs a `COUNT(*)` under the\n     * hood.\n     *\n     * `\"planned\"`: Approximated but fast count algorithm. Uses the Postgres\n     * statistics under the hood.\n     *\n     * `\"estimated\"`: Uses exact count for low numbers and planned count for high\n     * numbers.\n     *\n     * @param options.defaultToNull - Make missing fields default to `null`.\n     * Otherwise, use the default value for the column. This only applies when\n     * inserting new rows, not when merging with existing rows under\n     * `ignoreDuplicates: false`.\n     */upsert(e,{onConflict:s,ignoreDuplicates:t=false,count:r,defaultToNull:a=true}={}){const i=\"POST\";const h=[`resolution=${t?\"ignore\":\"merge\"}-duplicates`];void 0!==s&&this.url.searchParams.set(\"on_conflict\",s);this.headers.Prefer&&h.push(this.headers.Prefer);r&&h.push(`count=${r}`);a||h.push(\"missing=default\");this.headers.Prefer=h.join(\",\");if(Array.isArray(e)){const s=e.reduce(((e,s)=>e.concat(Object.keys(s))),[]);if(s.length>0){const e=[...new Set(s)].map((e=>`\"${e}\"`));this.url.searchParams.set(\"columns\",e.join(\",\"))}}return new PostgrestFilterBuilder({method:i,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:this.fetch,allowEmpty:false})}\n/**\n     * Perform an UPDATE on the table or view.\n     *\n     * By default, updated rows are not returned. To return it, chain the call\n     * with `.select()` after filters.\n     *\n     * @param values - The values to update with\n     *\n     * @param options - Named parameters\n     *\n     * @param options.count - Count algorithm to use to count updated rows.\n     *\n     * `\"exact\"`: Exact but slow count algorithm. Performs a `COUNT(*)` under the\n     * hood.\n     *\n     * `\"planned\"`: Approximated but fast count algorithm. Uses the Postgres\n     * statistics under the hood.\n     *\n     * `\"estimated\"`: Uses exact count for low numbers and planned count for high\n     * numbers.\n     */update(e,{count:s}={}){const t=\"PATCH\";const r=[];this.headers.Prefer&&r.push(this.headers.Prefer);s&&r.push(`count=${s}`);this.headers.Prefer=r.join(\",\");return new PostgrestFilterBuilder({method:t,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:this.fetch,allowEmpty:false})}\n/**\n     * Perform a DELETE on the table or view.\n     *\n     * By default, deleted rows are not returned. To return it, chain the call\n     * with `.select()` after filters.\n     *\n     * @param options - Named parameters\n     *\n     * @param options.count - Count algorithm to use to count deleted rows.\n     *\n     * `\"exact\"`: Exact but slow count algorithm. Performs a `COUNT(*)` under the\n     * hood.\n     *\n     * `\"planned\"`: Approximated but fast count algorithm. Uses the Postgres\n     * statistics under the hood.\n     *\n     * `\"estimated\"`: Uses exact count for low numbers and planned count for high\n     * numbers.\n     */delete({count:e}={}){const s=\"DELETE\";const t=[];e&&t.push(`count=${e}`);this.headers.Prefer&&t.unshift(this.headers.Prefer);this.headers.Prefer=t.join(\",\");return new PostgrestFilterBuilder({method:s,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch,allowEmpty:false})}}const s=\"1.6.0\";const t={\"X-Client-Info\":`postgrest-js/${s}`};\n/**\n * PostgREST client.\n *\n * @typeParam Database - Types for the schema from the [type\n * generator](https://supabase.com/docs/reference/javascript/next/typescript-support)\n *\n * @typeParam SchemaName - Postgres schema to switch to. Must be a string\n * literal, the same one passed to the constructor. If the schema is not\n * `\"public\"`, this must be supplied manually.\n */class PostgrestClient{\n/**\n     * Creates a PostgREST client.\n     *\n     * @param url - URL of the PostgREST endpoint\n     * @param options - Named parameters\n     * @param options.headers - Custom headers\n     * @param options.schema - Postgres schema to switch to\n     * @param options.fetch - Custom fetch\n     */\nconstructor(e,{headers:s={},schema:r,fetch:a}={}){this.url=e;this.headers=Object.assign(Object.assign({},t),s);this.schema=r;this.fetch=a}\n/**\n     * Perform a query on a table or a view.\n     *\n     * @param relation - The table or view name to query\n     */from(e){const s=new URL(`${this.url}/${e}`);return new PostgrestQueryBuilder(s,{headers:Object.assign({},this.headers),schema:this.schema,fetch:this.fetch})}\n/**\n     * Perform a function call.\n     *\n     * @param fn - The function name to call\n     * @param args - The arguments to pass to the function call\n     * @param options - Named parameters\n     * @param options.head - When set to `true`, `data` will not be returned.\n     * Useful if you only need the count.\n     * @param options.count - Count algorithm to use to count rows returned by the\n     * function. Only applicable for [set-returning\n     * functions](https://www.postgresql.org/docs/current/functions-srf.html).\n     *\n     * `\"exact\"`: Exact but slow count algorithm. Performs a `COUNT(*)` under the\n     * hood.\n     *\n     * `\"planned\"`: Approximated but fast count algorithm. Uses the Postgres\n     * statistics under the hood.\n     *\n     * `\"estimated\"`: Uses exact count for low numbers and planned count for high\n     * numbers.\n     */rpc(e,s={},{head:t=false,count:r}={}){let a;const i=new URL(`${this.url}/rpc/${e}`);let h;if(t){a=\"HEAD\";Object.entries(s).forEach((([e,s])=>{i.searchParams.append(e,`${s}`)}))}else{a=\"POST\";h=s}const n=Object.assign({},this.headers);r&&(n.Prefer=`count=${r}`);return new PostgrestFilterBuilder({method:a,url:i,headers:n,schema:this.schema,body:h,fetch:this.fetch,allowEmpty:false})}}export{PostgrestBuilder,PostgrestClient,PostgrestFilterBuilder,PostgrestQueryBuilder,PostgrestTransformBuilder};\n\n//# sourceMappingURL=index.js.map", "var e={},t=false;var o=\"undefined\"!==typeof globalThis?globalThis:\"undefined\"!==typeof self?self:global;function dew(){if(t)return e;t=true;var naiveFallback=function(){if(\"object\"===typeof self&&self)return self;if(\"object\"===typeof window&&window)return window;throw new Error(\"Unable to resolve global `this`\")};e=function(){if(this||o)return this||o;if(\"object\"===typeof globalThis&&globalThis)return globalThis;try{Object.defineProperty(Object.prototype,\"__global__\",{get:function(){return this||o},configurable:true})}catch(e){return naiveFallback()}try{return __global__||naiveFallback()}finally{delete Object.prototype.__global__}}();return e}export{dew as d};\n\n//# sourceMappingURL=d2db80e9.js.map", "import{d as a}from\"./_/d2db80e9.js\";var d=a();export{d as default};\n", "var e={name:\"websocket\",description:\"Websocket Client & Server Library implementing the WebSocket protocol as specified in RFC 6455.\",keywords:[\"websocket\",\"websockets\",\"socket\",\"networking\",\"comet\",\"push\",\"RFC-6455\",\"realtime\",\"server\",\"client\"],author:\"Brian McKelvey <theturtle32@gmail.com> (https://github.com/theturtle32)\",contributors:[\"I\u00F1aki Baz Castillo <ibc@aliax.net> (http://dev.sipdoc.net)\"],version:\"1.0.34\",repository:{type:\"git\",url:\"https://github.com/theturtle32/WebSocket-Node.git\"},homepage:\"https://github.com/theturtle32/WebSocket-Node\",engines:{node:\">=4.0.0\"},dependencies:{bufferutil:\"^4.0.1\",debug:\"^2.2.0\",\"es5-ext\":\"^0.10.50\",\"typedarray-to-buffer\":\"^3.1.5\",\"utf-8-validate\":\"^5.0.2\",yaeti:\"^0.0.6\"},devDependencies:{\"buffer-equal\":\"^1.0.0\",gulp:\"^4.0.2\",\"gulp-jshint\":\"^2.0.4\",\"jshint-stylish\":\"^2.2.1\",jshint:\"^2.0.0\",tape:\"^4.9.1\"},config:{verbose:false},scripts:{test:\"tape test/unit/*.js\",gulp:\"gulp\"},main:\"index\",directories:{lib:\"./lib\"},browser:\"lib/browser.js\",license:\"Apache-2.0\"};var t={};t=e.version;var i=t;export{i as _};\n\n//# sourceMappingURL=3c0ba9a6.js.map", "import e from\"es5-ext/global\";import{_ as o}from\"../_/3c0ba9a6.js\";var t={};var r;if(\"object\"===typeof globalThis)r=globalThis;else try{r=e}catch(e){}finally{r||\"undefined\"===typeof window||(r=window);if(!r)throw new Error(\"Could not determine global this\")}var n=r.WebSocket||r.MozWebSocket;var c=o;function W3CWebSocket(e,o){var t;t=o?new n(e,o):new n(e);return t}n&&[\"CONNECTING\",\"OPEN\",\"CLOSING\",\"CLOSED\"].forEach((function(e){Object.defineProperty(W3CWebSocket,e,{get:function(){return n[e]}})}));t={w3cwebsocket:n?W3CWebSocket:null,version:c};var a=t;const i=t.w3cwebsocket;export default a;export{i as w3cwebsocket};\n\n//# sourceMappingURL=browser.js.map", "import{w3cwebsocket as e}from\"websocket\";const t=\"2.7.2\";const s={\"X-Client-Info\":`realtime-js/${t}`};const i=\"1.0.0\";const n=1e4;const o=1e3;var r;(function(e){e[e.connecting=0]=\"connecting\";e[e.open=1]=\"open\";e[e.closing=2]=\"closing\";e[e.closed=3]=\"closed\"})(r||(r={}));var c;(function(e){e.closed=\"closed\";e.errored=\"errored\";e.joined=\"joined\";e.joining=\"joining\";e.leaving=\"leaving\"})(c||(c={}));var a;(function(e){e.close=\"phx_close\";e.error=\"phx_error\";e.join=\"phx_join\";e.reply=\"phx_reply\";e.leave=\"phx_leave\";e.access_token=\"access_token\"})(a||(a={}));var h;(function(e){e.websocket=\"websocket\"})(h||(h={}));var l;(function(e){e.Connecting=\"connecting\";e.Open=\"open\";e.Closing=\"closing\";e.Closed=\"closed\"})(l||(l={}));class Timer{constructor(e,t){this.callback=e;this.timerCalc=t;this.timer=void 0;this.tries=0;this.callback=e;this.timerCalc=t}reset(){this.tries=0;clearTimeout(this.timer)}scheduleTimeout(){clearTimeout(this.timer);this.timer=setTimeout((()=>{this.tries=this.tries+1;this.callback()}),this.timerCalc(this.tries+1))}}class Serializer{constructor(){this.HEADER_LENGTH=1}decode(e,t){return e.constructor===ArrayBuffer?t(this._binaryDecode(e)):t(\"string\"===typeof e?JSON.parse(e):{})}_binaryDecode(e){const t=new DataView(e);const s=new TextDecoder;return this._decodeBroadcast(e,t,s)}_decodeBroadcast(e,t,s){const i=t.getUint8(1);const n=t.getUint8(2);let o=this.HEADER_LENGTH+2;const r=s.decode(e.slice(o,o+i));o+=i;const c=s.decode(e.slice(o,o+n));o+=n;const a=JSON.parse(s.decode(e.slice(o,e.byteLength)));return{ref:null,topic:r,event:c,payload:a}}}class Push{\n/**\n     * Initializes the Push\n     *\n     * @param channel The Channel\n     * @param event The event, for example `\"phx_join\"`\n     * @param payload The payload, for example `{user_id: 123}`\n     * @param timeout The push timeout in milliseconds\n     */\nconstructor(e,t,s={},i=n){this.channel=e;this.event=t;this.payload=s;this.timeout=i;this.sent=false;this.timeoutTimer=void 0;this.ref=\"\";this.receivedResp=null;this.recHooks=[];this.refEvent=null;this.rateLimited=false}resend(e){this.timeout=e;this._cancelRefEvent();this.ref=\"\";this.refEvent=null;this.receivedResp=null;this.sent=false;this.send()}send(){if(this._hasReceived(\"timeout\"))return;this.startTimeout();this.sent=true;const e=this.channel.socket.push({topic:this.channel.topic,event:this.event,payload:this.payload,ref:this.ref,join_ref:this.channel._joinRef()});\"rate limited\"===e&&(this.rateLimited=true)}updatePayload(e){this.payload=Object.assign(Object.assign({},this.payload),e)}receive(e,t){var s;this._hasReceived(e)&&t(null===(s=this.receivedResp)||void 0===s?void 0:s.response);this.recHooks.push({status:e,callback:t});return this}startTimeout(){if(this.timeoutTimer)return;this.ref=this.channel.socket._makeRef();this.refEvent=this.channel._replyEventName(this.ref);const callback=e=>{this._cancelRefEvent();this._cancelTimeout();this.receivedResp=e;this._matchReceive(e)};this.channel._on(this.refEvent,{},callback);this.timeoutTimer=setTimeout((()=>{this.trigger(\"timeout\",{})}),this.timeout)}trigger(e,t){this.refEvent&&this.channel._trigger(this.refEvent,{status:e,response:t})}destroy(){this._cancelRefEvent();this._cancelTimeout()}_cancelRefEvent(){this.refEvent&&this.channel._off(this.refEvent,{})}_cancelTimeout(){clearTimeout(this.timeoutTimer);this.timeoutTimer=void 0}_matchReceive({status:e,response:t}){this.recHooks.filter((t=>t.status===e)).forEach((e=>e.callback(t)))}_hasReceived(e){return this.receivedResp&&this.receivedResp.status===e}}var d;(function(e){e.SYNC=\"sync\";e.JOIN=\"join\";e.LEAVE=\"leave\"})(d||(d={}));class RealtimePresence{\n/**\n     * Initializes the Presence.\n     *\n     * @param channel - The RealtimeChannel\n     * @param opts - The options,\n     *        for example `{events: {state: 'state', diff: 'diff'}}`\n     */\nconstructor(e,t){this.channel=e;this.state={};this.pendingDiffs=[];this.joinRef=null;this.caller={onJoin:()=>{},onLeave:()=>{},onSync:()=>{}};const s=(null===t||void 0===t?void 0:t.events)||{state:\"presence_state\",diff:\"presence_diff\"};this.channel._on(s.state,{},(e=>{const{onJoin:t,onLeave:s,onSync:i}=this.caller;this.joinRef=this.channel._joinRef();this.state=RealtimePresence.syncState(this.state,e,t,s);this.pendingDiffs.forEach((e=>{this.state=RealtimePresence.syncDiff(this.state,e,t,s)}));this.pendingDiffs=[];i()}));this.channel._on(s.diff,{},(e=>{const{onJoin:t,onLeave:s,onSync:i}=this.caller;if(this.inPendingSyncState())this.pendingDiffs.push(e);else{this.state=RealtimePresence.syncDiff(this.state,e,t,s);i()}}));this.onJoin(((e,t,s)=>{this.channel._trigger(\"presence\",{event:\"join\",key:e,currentPresences:t,newPresences:s})}));this.onLeave(((e,t,s)=>{this.channel._trigger(\"presence\",{event:\"leave\",key:e,currentPresences:t,leftPresences:s})}));this.onSync((()=>{this.channel._trigger(\"presence\",{event:\"sync\"})}))}static syncState(e,t,s,i){const n=this.cloneDeep(e);const o=this.transformState(t);const r={};const c={};this.map(n,((e,t)=>{o[e]||(c[e]=t)}));this.map(o,((e,t)=>{const s=n[e];if(s){const i=t.map((e=>e.presence_ref));const n=s.map((e=>e.presence_ref));const o=t.filter((e=>n.indexOf(e.presence_ref)<0));const a=s.filter((e=>i.indexOf(e.presence_ref)<0));o.length>0&&(r[e]=o);a.length>0&&(c[e]=a)}else r[e]=t}));return this.syncDiff(n,{joins:r,leaves:c},s,i)}static syncDiff(e,t,s,i){const{joins:n,leaves:o}={joins:this.transformState(t.joins),leaves:this.transformState(t.leaves)};s||(s=()=>{});i||(i=()=>{});this.map(n,((t,i)=>{var n;const o=null!==(n=e[t])&&void 0!==n?n:[];e[t]=this.cloneDeep(i);if(o.length>0){const s=e[t].map((e=>e.presence_ref));const i=o.filter((e=>s.indexOf(e.presence_ref)<0));e[t].unshift(...i)}s(t,o,i)}));this.map(o,((t,s)=>{let n=e[t];if(!n)return;const o=s.map((e=>e.presence_ref));n=n.filter((e=>o.indexOf(e.presence_ref)<0));e[t]=n;i(t,n,s);0===n.length&&delete e[t]}));return e}static map(e,t){return Object.getOwnPropertyNames(e).map((s=>t(s,e[s])))}static transformState(e){e=this.cloneDeep(e);return Object.getOwnPropertyNames(e).reduce(((t,s)=>{const i=e[s];t[s]=\"metas\"in i?i.metas.map((e=>{e.presence_ref=e.phx_ref;delete e.phx_ref;delete e.phx_ref_prev;return e})):i;return t}),{})}static cloneDeep(e){return JSON.parse(JSON.stringify(e))}onJoin(e){this.caller.onJoin=e}onLeave(e){this.caller.onLeave=e}onSync(e){this.caller.onSync=e}inPendingSyncState(){return!this.joinRef||this.joinRef!==this.channel._joinRef()}}var u;(function(e){e.abstime=\"abstime\";e.bool=\"bool\";e.date=\"date\";e.daterange=\"daterange\";e.float4=\"float4\";e.float8=\"float8\";e.int2=\"int2\";e.int4=\"int4\";e.int4range=\"int4range\";e.int8=\"int8\";e.int8range=\"int8range\";e.json=\"json\";e.jsonb=\"jsonb\";e.money=\"money\";e.numeric=\"numeric\";e.oid=\"oid\";e.reltime=\"reltime\";e.text=\"text\";e.time=\"time\";e.timestamp=\"timestamp\";e.timestamptz=\"timestamptz\";e.timetz=\"timetz\";e.tsrange=\"tsrange\";e.tstzrange=\"tstzrange\"})(u||(u={}));\n/**\n * Takes an array of columns and an object of string values then converts each string value\n * to its mapped type.\n *\n * @param {{name: String, type: String}[]} columns\n * @param {Object} record\n * @param {Object} options The map of various options that can be applied to the mapper\n * @param {Array} options.skipTypes The array of types that should not be converted\n *\n * @example convertChangeData([{name: 'first_name', type: 'text'}, {name: 'age', type: 'int4'}], {first_name: 'Paul', age:'33'}, {})\n * //=>{ first_name: 'Paul', age: 33 }\n */const convertChangeData=(e,t,s={})=>{var i;const n=null!==(i=s.skipTypes)&&void 0!==i?i:[];return Object.keys(t).reduce(((s,i)=>{s[i]=convertColumn(i,e,t,n);return s}),{})};\n/**\n * Converts the value of an individual column.\n *\n * @param {String} columnName The column that you want to convert\n * @param {{name: String, type: String}[]} columns All of the columns\n * @param {Object} record The map of string values\n * @param {Array} skipTypes An array of types that should not be converted\n * @return {object} Useless information\n *\n * @example convertColumn('age', [{name: 'first_name', type: 'text'}, {name: 'age', type: 'int4'}], {first_name: 'Paul', age: '33'}, [])\n * //=> 33\n * @example convertColumn('age', [{name: 'first_name', type: 'text'}, {name: 'age', type: 'int4'}], {first_name: 'Paul', age: '33'}, ['int4'])\n * //=> \"33\"\n */const convertColumn=(e,t,s,i)=>{const n=t.find((t=>t.name===e));const o=null===n||void 0===n?void 0:n.type;const r=s[e];return o&&!i.includes(o)?convertCell(o,r):noop$1(r)};\n/**\n * If the value of the cell is `null`, returns null.\n * Otherwise converts the string value to the correct type.\n * @param {String} type A postgres column type\n * @param {String} value The cell value\n *\n * @example convertCell('bool', 't')\n * //=> true\n * @example convertCell('int8', '10')\n * //=> 10\n * @example convertCell('_int4', '{1,2,3,4}')\n * //=> [1,2,3,4]\n */const convertCell=(e,t)=>{if(\"_\"===e.charAt(0)){const s=e.slice(1,e.length);return toArray(t,s)}switch(e){case u.bool:return toBoolean(t);case u.float4:case u.float8:case u.int2:case u.int4:case u.int8:case u.numeric:case u.oid:return toNumber(t);case u.json:case u.jsonb:return toJson(t);case u.timestamp:return toTimestampString(t);case u.abstime:case u.date:case u.daterange:case u.int4range:case u.int8range:case u.money:case u.reltime:case u.text:case u.time:case u.timestamptz:case u.timetz:case u.tsrange:case u.tstzrange:return noop$1(t);default:return noop$1(t)}};const noop$1=e=>e;const toBoolean=e=>{switch(e){case\"t\":return true;case\"f\":return false;default:return e}};const toNumber=e=>{if(\"string\"===typeof e){const t=parseFloat(e);if(!Number.isNaN(t))return t}return e};const toJson=e=>{if(\"string\"===typeof e)try{return JSON.parse(e)}catch(t){console.log(`JSON parse error: ${t}`);return e}return e};const toArray=(e,t)=>{if(\"string\"!==typeof e)return e;const s=e.length-1;const i=e[s];const n=e[0];if(\"{\"===n&&\"}\"===i){let i;const n=e.slice(1,s);try{i=JSON.parse(\"[\"+n+\"]\")}catch(e){i=n?n.split(\",\"):[]}return i.map((e=>convertCell(t,e)))}return e};const toTimestampString=e=>\"string\"===typeof e?e.replace(\" \",\"T\"):e;var f=(void 0,function(e,t,s,i){function adopt(e){return e instanceof s?e:new s((function(t){t(e)}))}return new(s||(s=Promise))((function(s,n){function fulfilled(e){try{step(i.next(e))}catch(e){n(e)}}function rejected(e){try{step(i.throw(e))}catch(e){n(e)}}function step(e){e.done?s(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))});var p;(function(e){e.ALL=\"*\";e.INSERT=\"INSERT\";e.UPDATE=\"UPDATE\";e.DELETE=\"DELETE\"})(p||(p={}));var v;(function(e){e.BROADCAST=\"broadcast\";e.PRESENCE=\"presence\";e.POSTGRES_CHANGES=\"postgres_changes\"})(v||(v={}));var m;(function(e){e.SUBSCRIBED=\"SUBSCRIBED\";e.TIMED_OUT=\"TIMED_OUT\";e.CLOSED=\"CLOSED\";e.CHANNEL_ERROR=\"CHANNEL_ERROR\"})(m||(m={}));class RealtimeChannel{constructor(e,t={config:{}},s){this.topic=e;this.params=t;this.socket=s;this.bindings={};this.state=c.closed;this.joinedOnce=false;this.pushBuffer=[];this.params.config=Object.assign({broadcast:{ack:false,self:false},presence:{key:\"\"}},t.config);this.timeout=this.socket.timeout;this.joinPush=new Push(this,a.join,this.params,this.timeout);this.rejoinTimer=new Timer((()=>this._rejoinUntilConnected()),this.socket.reconnectAfterMs);this.joinPush.receive(\"ok\",(()=>{this.state=c.joined;this.rejoinTimer.reset();this.pushBuffer.forEach((e=>e.send()));this.pushBuffer=[]}));this._onClose((()=>{this.rejoinTimer.reset();this.socket.log(\"channel\",`close ${this.topic} ${this._joinRef()}`);this.state=c.closed;this.socket._remove(this)}));this._onError((e=>{if(!this._isLeaving()&&!this._isClosed()){this.socket.log(\"channel\",`error ${this.topic}`,e);this.state=c.errored;this.rejoinTimer.scheduleTimeout()}}));this.joinPush.receive(\"timeout\",(()=>{if(this._isJoining()){this.socket.log(\"channel\",`timeout ${this.topic}`,this.joinPush.timeout);this.state=c.errored;this.rejoinTimer.scheduleTimeout()}}));this._on(a.reply,{},((e,t)=>{this._trigger(this._replyEventName(t),e)}));this.presence=new RealtimePresence(this)}subscribe(e,t=this.timeout){var s,i;if(this.joinedOnce)throw\"tried to subscribe multiple times. 'subscribe' can only be called a single time per channel instance\";{const{config:{broadcast:n,presence:o}}=this.params;this._onError((t=>e&&e(\"CHANNEL_ERROR\",t)));this._onClose((()=>e&&e(\"CLOSED\")));const r={};const c={broadcast:n,presence:o,postgres_changes:null!==(i=null===(s=this.bindings.postgres_changes)||void 0===s?void 0:s.map((e=>e.filter)))&&void 0!==i?i:[]};this.socket.accessToken&&(r.access_token=this.socket.accessToken);this.updateJoinPayload(Object.assign({config:c},r));this.joinedOnce=true;this._rejoin(t);this.joinPush.receive(\"ok\",(({postgres_changes:t})=>{var s;this.socket.accessToken&&this.socket.setAuth(this.socket.accessToken);if(void 0===t)e&&e(\"SUBSCRIBED\");else{const i=this.bindings.postgres_changes;const n=null!==(s=null===i||void 0===i?void 0:i.length)&&void 0!==s?s:0;const o=[];for(let s=0;s<n;s++){const n=i[s];const{filter:{event:r,schema:c,table:a,filter:h}}=n;const l=t&&t[s];if(!l||l.event!==r||l.schema!==c||l.table!==a||l.filter!==h){this.unsubscribe();e&&e(\"CHANNEL_ERROR\",new Error(\"mismatch between server and client bindings for postgres changes\"));return}o.push(Object.assign(Object.assign({},n),{id:l.id}))}this.bindings.postgres_changes=o;e&&e(\"SUBSCRIBED\")}})).receive(\"error\",(t=>{e&&e(\"CHANNEL_ERROR\",new Error(JSON.stringify(Object.values(t).join(\", \")||\"error\")))})).receive(\"timeout\",(()=>{e&&e(\"TIMED_OUT\")}))}return this}presenceState(){return this.presence.state}track(e,t={}){return f(this,void 0,void 0,(function*(){return yield this.send({type:\"presence\",event:\"track\",payload:e},t.timeout||this.timeout)}))}untrack(e={}){return f(this,void 0,void 0,(function*(){return yield this.send({type:\"presence\",event:\"untrack\"},e)}))}on(e,t,s){return this._on(e,t,s)}send(e,t={}){return new Promise((s=>{var i,n,o;const r=this._push(e.type,e,t.timeout||this.timeout);r.rateLimited&&s(\"rate limited\");\"broadcast\"!==e.type||(null===(o=null===(n=null===(i=this.params)||void 0===i?void 0:i.config)||void 0===n?void 0:n.broadcast)||void 0===o?void 0:o.ack)||s(\"ok\");r.receive(\"ok\",(()=>s(\"ok\")));r.receive(\"timeout\",(()=>s(\"timed out\")))}))}updateJoinPayload(e){this.joinPush.updatePayload(e)}unsubscribe(e=this.timeout){this.state=c.leaving;const onClose=()=>{this.socket.log(\"channel\",`leave ${this.topic}`);this._trigger(a.close,\"leave\",this._joinRef())};this.rejoinTimer.reset();this.joinPush.destroy();return new Promise((t=>{const s=new Push(this,a.leave,{},e);s.receive(\"ok\",(()=>{onClose();t(\"ok\")})).receive(\"timeout\",(()=>{onClose();t(\"timed out\")})).receive(\"error\",(()=>{t(\"error\")}));s.send();this._canPush()||s.trigger(\"ok\",{})}))}_push(e,t,s=this.timeout){if(!this.joinedOnce)throw`tried to push '${e}' to '${this.topic}' before joining. Use channel.subscribe() before pushing events`;let i=new Push(this,e,t,s);if(this._canPush())i.send();else{i.startTimeout();this.pushBuffer.push(i)}return i}_onMessage(e,t,s){return t}_isMember(e){return this.topic===e}_joinRef(){return this.joinPush.ref}_trigger(e,t,s){var i,n;const o=e.toLocaleLowerCase();const{close:r,error:c,leave:h,join:l}=a;const d=[r,c,h,l];if(s&&d.indexOf(o)>=0&&s!==this._joinRef())return;let u=this._onMessage(o,t,s);if(t&&!u)throw\"channel onMessage callbacks must return the payload, modified or unmodified\";[\"insert\",\"update\",\"delete\"].includes(o)?null===(i=this.bindings.postgres_changes)||void 0===i?void 0:i.filter((e=>{var t,s,i;return\"*\"===(null===(t=e.filter)||void 0===t?void 0:t.event)||(null===(i=null===(s=e.filter)||void 0===s?void 0:s.event)||void 0===i?void 0:i.toLocaleLowerCase())===o})).map((e=>e.callback(u,s))):null===(n=this.bindings[o])||void 0===n?void 0:n.filter((e=>{var s,i,n,r,c,a;if([\"broadcast\",\"presence\",\"postgres_changes\"].includes(o)){if(\"id\"in e){const o=e.id;const r=null===(s=e.filter)||void 0===s?void 0:s.event;return o&&(null===(i=t.ids)||void 0===i?void 0:i.includes(o))&&(\"*\"===r||(null===r||void 0===r?void 0:r.toLocaleLowerCase())===(null===(n=t.data)||void 0===n?void 0:n.type.toLocaleLowerCase()))}{const s=null===(c=null===(r=null===e||void 0===e?void 0:e.filter)||void 0===r?void 0:r.event)||void 0===c?void 0:c.toLocaleLowerCase();return\"*\"===s||s===(null===(a=null===t||void 0===t?void 0:t.event)||void 0===a?void 0:a.toLocaleLowerCase())}}return e.type.toLocaleLowerCase()===o})).map((e=>{if(\"object\"===typeof u&&\"ids\"in u){const e=u.data;const{schema:t,table:s,commit_timestamp:i,type:n,errors:o}=e;const r={schema:t,table:s,commit_timestamp:i,eventType:n,new:{},old:{},errors:o};u=Object.assign(Object.assign({},r),this._getPayloadRecords(e))}e.callback(u,s)}))}_isClosed(){return this.state===c.closed}_isJoined(){return this.state===c.joined}_isJoining(){return this.state===c.joining}_isLeaving(){return this.state===c.leaving}_replyEventName(e){return`chan_reply_${e}`}_on(e,t,s){const i=e.toLocaleLowerCase();const n={type:i,filter:t,callback:s};this.bindings[i]?this.bindings[i].push(n):this.bindings[i]=[n];return this}_off(e,t){const s=e.toLocaleLowerCase();this.bindings[s]=this.bindings[s].filter((e=>{var i;return!((null===(i=e.type)||void 0===i?void 0:i.toLocaleLowerCase())===s&&RealtimeChannel.isEqual(e.filter,t))}));return this}static isEqual(e,t){if(Object.keys(e).length!==Object.keys(t).length)return false;for(const s in e)if(e[s]!==t[s])return false;return true}_rejoinUntilConnected(){this.rejoinTimer.scheduleTimeout();this.socket.isConnected()&&this._rejoin()}_onClose(e){this._on(a.close,{},e)}_onError(e){this._on(a.error,{},(t=>e(t)))}_canPush(){return this.socket.isConnected()&&this._isJoined()}_rejoin(e=this.timeout){if(!this._isLeaving()){this.socket._leaveOpenTopic(this.topic);this.state=c.joining;this.joinPush.resend(e)}}_getPayloadRecords(e){const t={new:{},old:{}};\"INSERT\"!==e.type&&\"UPDATE\"!==e.type||(t.new=convertChangeData(e.columns,e.record));\"UPDATE\"!==e.type&&\"DELETE\"!==e.type||(t.old=convertChangeData(e.columns,e.old_record));return t}}var g=(void 0,function(e,t,s,i){function adopt(e){return e instanceof s?e:new s((function(t){t(e)}))}return new(s||(s=Promise))((function(s,n){function fulfilled(e){try{step(i.next(e))}catch(e){n(e)}}function rejected(e){try{step(i.throw(e))}catch(e){n(e)}}function step(e){e.done?s(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))});const noop=()=>{};class RealtimeClient{\n/**\n     * Initializes the Socket.\n     *\n     * @param endPoint The string WebSocket endpoint, ie, \"ws://example.com/socket\", \"wss://example.com\", \"/socket\" (inherited host & protocol)\n     * @param options.transport The Websocket Transport, for example WebSocket.\n     * @param options.timeout The default timeout in milliseconds to trigger push timeouts.\n     * @param options.params The optional params to pass when connecting.\n     * @param options.headers The optional headers to pass when connecting.\n     * @param options.heartbeatIntervalMs The millisec interval to send a heartbeat message.\n     * @param options.logger The optional function for specialized logging, ie: logger: (kind, msg, data) => { console.log(`${kind}: ${msg}`, data) }\n     * @param options.encode The function to encode outgoing messages. Defaults to JSON: (payload, callback) => callback(JSON.stringify(payload))\n     * @param options.decode The function to decode incoming messages. Defaults to Serializer's decode.\n     * @param options.reconnectAfterMs he optional function that returns the millsec reconnect interval. Defaults to stepped backoff off.\n     */\nconstructor(t,i){var o;this.accessToken=null;this.channels=[];this.endPoint=\"\";this.headers=s;this.params={};this.timeout=n;this.transport=e;this.heartbeatIntervalMs=3e4;this.heartbeatTimer=void 0;this.pendingHeartbeatRef=null;this.ref=0;this.logger=noop;this.conn=null;this.sendBuffer=[];this.serializer=new Serializer;this.stateChangeCallbacks={open:[],close:[],error:[],message:[]};this.eventsPerSecondLimitMs=100;this.inThrottle=false;this.endPoint=`${t}/${h.websocket}`;(null===i||void 0===i?void 0:i.params)&&(this.params=i.params);(null===i||void 0===i?void 0:i.headers)&&(this.headers=Object.assign(Object.assign({},this.headers),i.headers));(null===i||void 0===i?void 0:i.timeout)&&(this.timeout=i.timeout);(null===i||void 0===i?void 0:i.logger)&&(this.logger=i.logger);(null===i||void 0===i?void 0:i.transport)&&(this.transport=i.transport);(null===i||void 0===i?void 0:i.heartbeatIntervalMs)&&(this.heartbeatIntervalMs=i.heartbeatIntervalMs);const r=null===(o=null===i||void 0===i?void 0:i.params)||void 0===o?void 0:o.eventsPerSecond;r&&(this.eventsPerSecondLimitMs=Math.floor(1e3/r));this.reconnectAfterMs=(null===i||void 0===i?void 0:i.reconnectAfterMs)?i.reconnectAfterMs:e=>[1e3,2e3,5e3,1e4][e-1]||1e4;this.encode=(null===i||void 0===i?void 0:i.encode)?i.encode:(e,t)=>t(JSON.stringify(e));this.decode=(null===i||void 0===i?void 0:i.decode)?i.decode:this.serializer.decode.bind(this.serializer);this.reconnectTimer=new Timer((()=>g(this,void 0,void 0,(function*(){this.disconnect();this.connect()}))),this.reconnectAfterMs)}connect(){if(!this.conn){this.conn=new this.transport(this._endPointURL(),[],null,this.headers);if(this.conn){this.conn.binaryType=\"arraybuffer\";this.conn.onopen=()=>this._onConnOpen();this.conn.onerror=e=>this._onConnError(e);this.conn.onmessage=e=>this._onConnMessage(e);this.conn.onclose=e=>this._onConnClose(e)}}}\n/**\n     * Disconnects the socket.\n     *\n     * @param code A numeric status code to send on disconnect.\n     * @param reason A custom reason for the disconnect.\n     */disconnect(e,t){if(this.conn){this.conn.onclose=function(){};e?this.conn.close(e,null!==t&&void 0!==t?t:\"\"):this.conn.close();this.conn=null;this.heartbeatTimer&&clearInterval(this.heartbeatTimer);this.reconnectTimer.reset()}}getChannels(){return this.channels}\n/**\n     * Unsubscribes and removes a single channel\n     * @param channel A RealtimeChannel instance\n     */removeChannel(e){return g(this,void 0,void 0,(function*(){const t=yield e.unsubscribe();0===this.channels.length&&this.disconnect();return t}))}removeAllChannels(){return g(this,void 0,void 0,(function*(){const e=yield Promise.all(this.channels.map((e=>e.unsubscribe())));this.disconnect();return e}))}log(e,t,s){this.logger(e,t,s)}connectionState(){switch(this.conn&&this.conn.readyState){case r.connecting:return l.Connecting;case r.open:return l.Open;case r.closing:return l.Closing;default:return l.Closed}}isConnected(){return this.connectionState()===l.Open}channel(e,t={config:{}}){this.isConnected()||this.connect();const s=new RealtimeChannel(`realtime:${e}`,t,this);this.channels.push(s);return s}push(e){const{topic:t,event:s,payload:i,ref:n}=e;let callback=()=>{this.encode(e,(e=>{var t;null===(t=this.conn)||void 0===t?void 0:t.send(e)}))};this.log(\"push\",`${t} ${s} (${n})`,i);if(this.isConnected())if([\"broadcast\",\"presence\",\"postgres_changes\"].includes(s)){const e=this._throttle(callback)();if(e)return\"rate limited\"}else callback();else this.sendBuffer.push(callback)}\n/**\n     * Sets the JWT access token used for channel subscription authorization and Realtime RLS.\n     *\n     * @param token A JWT string.\n     */setAuth(e){this.accessToken=e;this.channels.forEach((t=>{e&&t.updateJoinPayload({access_token:e});t.joinedOnce&&t._isJoined()&&t._push(a.access_token,{access_token:e})}))}_makeRef(){let e=this.ref+1;e===this.ref?this.ref=0:this.ref=e;return this.ref.toString()}_leaveOpenTopic(e){let t=this.channels.find((t=>t.topic===e&&(t._isJoined()||t._isJoining())));if(t){this.log(\"transport\",`leaving duplicate topic \"${e}\"`);t.unsubscribe()}}\n/**\n     * Removes a subscription from the socket.\n     *\n     * @param channel An open subscription.\n     *\n     * @internal\n     */_remove(e){this.channels=this.channels.filter((t=>t._joinRef()!==e._joinRef()))}_endPointURL(){return this._appendParams(this.endPoint,Object.assign({},this.params,{vsn:i}))}_onConnMessage(e){this.decode(e.data,(e=>{let{topic:t,event:s,payload:i,ref:n}=e;(n&&n===this.pendingHeartbeatRef||s===(null===i||void 0===i?void 0:i.type))&&(this.pendingHeartbeatRef=null);this.log(\"receive\",`${i.status||\"\"} ${t} ${s} ${n&&\"(\"+n+\")\"||\"\"}`,i);this.channels.filter((e=>e._isMember(t))).forEach((e=>e._trigger(s,i,n)));this.stateChangeCallbacks.message.forEach((t=>t(e)))}))}_onConnOpen(){this.log(\"transport\",`connected to ${this._endPointURL()}`);this._flushSendBuffer();this.reconnectTimer.reset();this.heartbeatTimer&&clearInterval(this.heartbeatTimer);this.heartbeatTimer=setInterval((()=>this._sendHeartbeat()),this.heartbeatIntervalMs);this.stateChangeCallbacks.open.forEach((e=>e()))}_onConnClose(e){this.log(\"transport\",\"close\",e);this._triggerChanError();this.heartbeatTimer&&clearInterval(this.heartbeatTimer);this.reconnectTimer.scheduleTimeout();this.stateChangeCallbacks.close.forEach((t=>t(e)))}_onConnError(e){this.log(\"transport\",e.message);this._triggerChanError();this.stateChangeCallbacks.error.forEach((t=>t(e)))}_triggerChanError(){this.channels.forEach((e=>e._trigger(a.error)))}_appendParams(e,t){if(0===Object.keys(t).length)return e;const s=e.match(/\\?/)?\"&\":\"?\";const i=new URLSearchParams(t);return`${e}${s}${i}`}_flushSendBuffer(){if(this.isConnected()&&this.sendBuffer.length>0){this.sendBuffer.forEach((e=>e()));this.sendBuffer=[]}}_sendHeartbeat(){var e;if(this.isConnected())if(this.pendingHeartbeatRef){this.pendingHeartbeatRef=null;this.log(\"transport\",\"heartbeat timeout. Attempting to re-establish connection\");null===(e=this.conn)||void 0===e?void 0:e.close(o,\"hearbeat timeout\")}else{this.pendingHeartbeatRef=this._makeRef();this.push({topic:\"phoenix\",event:\"heartbeat\",payload:{},ref:this.pendingHeartbeatRef});this.setAuth(this.accessToken)}}_throttle(e,t=this.eventsPerSecondLimitMs){return()=>{if(this.inThrottle)return true;e();if(t>0){this.inThrottle=true;setTimeout((()=>{this.inThrottle=false}),t)}return false}}}export{v as REALTIME_LISTEN_TYPES,p as REALTIME_POSTGRES_CHANGES_LISTEN_EVENT,d as REALTIME_PRESENCE_LISTEN_EVENTS,m as REALTIME_SUBSCRIBE_STATES,RealtimeChannel,RealtimeClient,RealtimePresence};\n\n//# sourceMappingURL=index.js.map", "class StorageError extends Error{constructor(t){super(t);this.__isStorageError=true;this.name=\"StorageError\"}}function isStorageError(t){return\"object\"===typeof t&&null!==t&&\"__isStorageError\"in t}class StorageApiError extends StorageError{constructor(t,e){super(t);this.name=\"StorageApiError\";this.status=e}toJSON(){return{name:this.name,message:this.message,status:this.status}}}class StorageUnknownError extends StorageError{constructor(t,e){super(t);this.name=\"StorageUnknownError\";this.originalError=e}}var t=(void 0,function(t,e,r,o){function adopt(t){return t instanceof r?t:new r((function(e){e(t)}))}return new(r||(r=Promise))((function(r,n){function fulfilled(t){try{step(o.next(t))}catch(t){n(t)}}function rejected(t){try{step(o.throw(t))}catch(t){n(t)}}function step(t){t.done?r(t.value):adopt(t.value).then(fulfilled,rejected)}step((o=o.apply(t,e||[])).next())}))});const resolveFetch=e=>{let r;r=e||(\"undefined\"===typeof fetch?(...e)=>t(void 0,void 0,void 0,(function*(){return yield(yield import(\"cross-fetch\")).fetch(...e)})):fetch);return(...t)=>r(...t)};const resolveResponse=()=>t(void 0,void 0,void 0,(function*(){return\"undefined\"===typeof Response?(yield import(\"cross-fetch\")).Response:Response}));var e=(void 0,function(t,e,r,o){function adopt(t){return t instanceof r?t:new r((function(e){e(t)}))}return new(r||(r=Promise))((function(r,n){function fulfilled(t){try{step(o.next(t))}catch(t){n(t)}}function rejected(t){try{step(o.throw(t))}catch(t){n(t)}}function step(t){t.done?r(t.value):adopt(t.value).then(fulfilled,rejected)}step((o=o.apply(t,e||[])).next())}))});const _getErrorMessage=t=>t.msg||t.message||t.error_description||t.error||JSON.stringify(t);const handleError=(t,r)=>e(void 0,void 0,void 0,(function*(){const e=yield resolveResponse();t instanceof e?t.json().then((e=>{r(new StorageApiError(_getErrorMessage(e),t.status||500))})).catch((t=>{r(new StorageUnknownError(_getErrorMessage(t),t))})):r(new StorageUnknownError(_getErrorMessage(t),t))}));const _getRequestParams=(t,e,r,o)=>{const n={method:t,headers:(null===e||void 0===e?void 0:e.headers)||{}};if(\"GET\"===t)return n;n.headers=Object.assign({\"Content-Type\":\"application/json\"},null===e||void 0===e?void 0:e.headers);n.body=JSON.stringify(o);return Object.assign(Object.assign({},n),r)};function _handleRequest(t,r,o,n,i,s){return e(this,void 0,void 0,(function*(){return new Promise(((e,a)=>{t(o,_getRequestParams(r,n,i,s)).then((t=>{if(!t.ok)throw t;return(null===n||void 0===n?void 0:n.noResolveJson)?t:t.json()})).then((t=>e(t))).catch((t=>handleError(t,a)))}))}))}function get(t,r,o,n){return e(this,void 0,void 0,(function*(){return _handleRequest(t,\"GET\",r,o,n)}))}function post(t,r,o,n,i){return e(this,void 0,void 0,(function*(){return _handleRequest(t,\"POST\",r,n,i,o)}))}function put(t,r,o,n,i){return e(this,void 0,void 0,(function*(){return _handleRequest(t,\"PUT\",r,n,i,o)}))}function remove(t,r,o,n,i){return e(this,void 0,void 0,(function*(){return _handleRequest(t,\"DELETE\",r,n,i,o)}))}var r=(void 0,function(t,e,r,o){function adopt(t){return t instanceof r?t:new r((function(e){e(t)}))}return new(r||(r=Promise))((function(r,n){function fulfilled(t){try{step(o.next(t))}catch(t){n(t)}}function rejected(t){try{step(o.throw(t))}catch(t){n(t)}}function step(t){t.done?r(t.value):adopt(t.value).then(fulfilled,rejected)}step((o=o.apply(t,e||[])).next())}))});const o={limit:100,offset:0,sortBy:{column:\"name\",order:\"asc\"}};const n={cacheControl:\"3600\",contentType:\"text/plain;charset=UTF-8\",upsert:false};class StorageFileApi{constructor(t,e={},r,o){this.url=t;this.headers=e;this.bucketId=r;this.fetch=resolveFetch(o)}\n/**\n     * Uploads a file to an existing bucket or replaces an existing file at the specified path with a new one.\n     *\n     * @param method HTTP method.\n     * @param path The relative file path. Should be of the format `folder/subfolder/filename.png`. The bucket must already exist before attempting to upload.\n     * @param fileBody The body of the file to be stored in the bucket.\n     */uploadOrUpdate(t,e,o,i){return r(this,void 0,void 0,(function*(){try{let r;const s=Object.assign(Object.assign({},n),i);const a=Object.assign(Object.assign({},this.headers),\"POST\"===t&&{\"x-upsert\":String(s.upsert)});if(\"undefined\"!==typeof Blob&&o instanceof Blob){r=new FormData;r.append(\"cacheControl\",s.cacheControl);r.append(\"\",o)}else if(\"undefined\"!==typeof FormData&&o instanceof FormData){r=o;r.append(\"cacheControl\",s.cacheControl)}else{r=o;a[\"cache-control\"]=`max-age=${s.cacheControl}`;a[\"content-type\"]=s.contentType}const c=this._removeEmptyFolders(e);const u=this._getFinalPath(c);const d=yield this.fetch(`${this.url}/object/${u}`,Object.assign({method:t,body:r,headers:a},(null===s||void 0===s?void 0:s.duplex)?{duplex:s.duplex}:{}));if(d.ok)return{data:{path:c},error:null};{const t=yield d.json();return{data:null,error:t}}}catch(t){if(isStorageError(t))return{data:null,error:t};throw t}}))}\n/**\n     * Uploads a file to an existing bucket.\n     *\n     * @param path The file path, including the file name. Should be of the format `folder/subfolder/filename.png`. The bucket must already exist before attempting to upload.\n     * @param fileBody The body of the file to be stored in the bucket.\n     */upload(t,e,o){return r(this,void 0,void 0,(function*(){return this.uploadOrUpdate(\"POST\",t,e,o)}))}\n/**\n     * Upload a file with a token generated from `createSignedUploadUrl`.\n     * @param path The file path, including the file name. Should be of the format `folder/subfolder/filename.png`. The bucket must already exist before attempting to upload.\n     * @param token The token generated from `createSignedUploadUrl`\n     * @param fileBody The body of the file to be stored in the bucket.\n     */uploadToSignedUrl(t,e,o,i){return r(this,void 0,void 0,(function*(){const r=this._removeEmptyFolders(t);const s=this._getFinalPath(r);const a=new URL(this.url+`/object/upload/sign/${s}`);a.searchParams.set(\"token\",e);try{let t;const e=Object.assign({upsert:n.upsert},i);const s=Object.assign(Object.assign({},this.headers),{\"x-upsert\":String(e.upsert)});if(\"undefined\"!==typeof Blob&&o instanceof Blob){t=new FormData;t.append(\"cacheControl\",e.cacheControl);t.append(\"\",o)}else if(\"undefined\"!==typeof FormData&&o instanceof FormData){t=o;t.append(\"cacheControl\",e.cacheControl)}else{t=o;s[\"cache-control\"]=`max-age=${e.cacheControl}`;s[\"content-type\"]=e.contentType}const c=yield this.fetch(a.toString(),{method:\"PUT\",body:t,headers:s});if(c.ok)return{data:{path:r},error:null};{const t=yield c.json();return{data:null,error:t}}}catch(t){if(isStorageError(t))return{data:null,error:t};throw t}}))}\n/**\n     * Creates a signed upload URL.\n     * Signed upload URLs can be used to upload files to the bucket without further authentication.\n     * They are valid for one minute.\n     * @param path The file path, including the current file name. For example `folder/image.png`.\n     */createSignedUploadUrl(t){return r(this,void 0,void 0,(function*(){try{let e=this._getFinalPath(t);const r=yield post(this.fetch,`${this.url}/object/upload/sign/${e}`,{},{headers:this.headers});const o=new URL(this.url+r.url);const n=o.searchParams.get(\"token\");if(!n)throw new StorageError(\"No token returned by API\");return{data:{signedUrl:o.toString(),path:t,token:n},error:null}}catch(t){if(isStorageError(t))return{data:null,error:t};throw t}}))}\n/**\n     * Replaces an existing file at the specified path with a new one.\n     *\n     * @param path The relative file path. Should be of the format `folder/subfolder/filename.png`. The bucket must already exist before attempting to update.\n     * @param fileBody The body of the file to be stored in the bucket.\n     */update(t,e,o){return r(this,void 0,void 0,(function*(){return this.uploadOrUpdate(\"PUT\",t,e,o)}))}\n/**\n     * Moves an existing file to a new path in the same bucket.\n     *\n     * @param fromPath The original file path, including the current file name. For example `folder/image.png`.\n     * @param toPath The new file path, including the new file name. For example `folder/image-new.png`.\n     */move(t,e){return r(this,void 0,void 0,(function*(){try{const r=yield post(this.fetch,`${this.url}/object/move`,{bucketId:this.bucketId,sourceKey:t,destinationKey:e},{headers:this.headers});return{data:r,error:null}}catch(t){if(isStorageError(t))return{data:null,error:t};throw t}}))}\n/**\n     * Copies an existing file to a new path in the same bucket.\n     *\n     * @param fromPath The original file path, including the current file name. For example `folder/image.png`.\n     * @param toPath The new file path, including the new file name. For example `folder/image-copy.png`.\n     */copy(t,e){return r(this,void 0,void 0,(function*(){try{const r=yield post(this.fetch,`${this.url}/object/copy`,{bucketId:this.bucketId,sourceKey:t,destinationKey:e},{headers:this.headers});return{data:{path:r.Key},error:null}}catch(t){if(isStorageError(t))return{data:null,error:t};throw t}}))}\n/**\n     * Creates a signed URL. Use a signed URL to share a file for a fixed amount of time.\n     *\n     * @param path The file path, including the current file name. For example `folder/image.png`.\n     * @param expiresIn The number of seconds until the signed URL expires. For example, `60` for a URL which is valid for one minute.\n     * @param options.download triggers the file as a download if set to true. Set this parameter as the name of the file if you want to trigger the download with a different filename.\n     * @param options.transform Transform the asset before serving it to the client.\n     */createSignedUrl(t,e,o){return r(this,void 0,void 0,(function*(){try{let r=this._getFinalPath(t);let n=yield post(this.fetch,`${this.url}/object/sign/${r}`,Object.assign({expiresIn:e},(null===o||void 0===o?void 0:o.transform)?{transform:o.transform}:{}),{headers:this.headers});const i=(null===o||void 0===o?void 0:o.download)?`&download=${true===o.download?\"\":o.download}`:\"\";const s=encodeURI(`${this.url}${n.signedURL}${i}`);n={signedUrl:s};return{data:n,error:null}}catch(t){if(isStorageError(t))return{data:null,error:t};throw t}}))}\n/**\n     * Creates multiple signed URLs. Use a signed URL to share a file for a fixed amount of time.\n     *\n     * @param paths The file paths to be downloaded, including the current file names. For example `['folder/image.png', 'folder2/image2.png']`.\n     * @param expiresIn The number of seconds until the signed URLs expire. For example, `60` for URLs which are valid for one minute.\n     * @param options.download triggers the file as a download if set to true. Set this parameter as the name of the file if you want to trigger the download with a different filename.\n     */createSignedUrls(t,e,o){return r(this,void 0,void 0,(function*(){try{const r=yield post(this.fetch,`${this.url}/object/sign/${this.bucketId}`,{expiresIn:e,paths:t},{headers:this.headers});const n=(null===o||void 0===o?void 0:o.download)?`&download=${true===o.download?\"\":o.download}`:\"\";return{data:r.map((t=>Object.assign(Object.assign({},t),{signedUrl:t.signedURL?encodeURI(`${this.url}${t.signedURL}${n}`):null}))),error:null}}catch(t){if(isStorageError(t))return{data:null,error:t};throw t}}))}\n/**\n     * Downloads a file from a private bucket. For public buckets, make a request to the URL returned from `getPublicUrl` instead.\n     *\n     * @param path The full path and file name of the file to be downloaded. For example `folder/image.png`.\n     * @param options.transform Transform the asset before serving it to the client.\n     */download(t,e){return r(this,void 0,void 0,(function*(){const r=\"undefined\"!==typeof(null===e||void 0===e?void 0:e.transform);const o=r?\"render/image/authenticated\":\"object\";const n=this.transformOptsToQueryString((null===e||void 0===e?void 0:e.transform)||{});const i=n?`?${n}`:\"\";try{const e=this._getFinalPath(t);const r=yield get(this.fetch,`${this.url}/${o}/${e}${i}`,{headers:this.headers,noResolveJson:true});const n=yield r.blob();return{data:n,error:null}}catch(t){if(isStorageError(t))return{data:null,error:t};throw t}}))}\n/**\n     * A simple convenience function to get the URL for an asset in a public bucket. If you do not want to use this function, you can construct the public URL by concatenating the bucket URL with the path to the asset.\n     * This function does not verify if the bucket is public. If a public URL is created for a bucket which is not public, you will not be able to download the asset.\n     *\n     * @param path The path and name of the file to generate the public URL for. For example `folder/image.png`.\n     * @param options.download Triggers the file as a download if set to true. Set this parameter as the name of the file if you want to trigger the download with a different filename.\n     * @param options.transform Transform the asset before serving it to the client.\n     */getPublicUrl(t,e){const r=this._getFinalPath(t);const o=[];const n=(null===e||void 0===e?void 0:e.download)?`download=${true===e.download?\"\":e.download}`:\"\";\"\"!==n&&o.push(n);const i=\"undefined\"!==typeof(null===e||void 0===e?void 0:e.transform);const s=i?\"render/image\":\"object\";const a=this.transformOptsToQueryString((null===e||void 0===e?void 0:e.transform)||{});\"\"!==a&&o.push(a);let c=o.join(\"&\");\"\"!==c&&(c=`?${c}`);return{data:{publicUrl:encodeURI(`${this.url}/${s}/public/${r}${c}`)}}}\n/**\n     * Deletes files within the same bucket\n     *\n     * @param paths An array of files to delete, including the path and file name. For example [`'folder/image.png'`].\n     */remove(t){return r(this,void 0,void 0,(function*(){try{const e=yield remove(this.fetch,`${this.url}/object/${this.bucketId}`,{prefixes:t},{headers:this.headers});return{data:e,error:null}}catch(t){if(isStorageError(t))return{data:null,error:t};throw t}}))}\n/**\n     * Get file metadata\n     * @param id the file id to retrieve metadata\n     */\n/**\n     * Update file metadata\n     * @param id the file id to update metadata\n     * @param meta the new file metadata\n     */\n/**\n     * Lists all the files within a bucket.\n     * @param path The folder path.\n     */\nlist(t,e,n){return r(this,void 0,void 0,(function*(){try{const r=Object.assign(Object.assign(Object.assign({},o),e),{prefix:t||\"\"});const i=yield post(this.fetch,`${this.url}/object/list/${this.bucketId}`,r,{headers:this.headers},n);return{data:i,error:null}}catch(t){if(isStorageError(t))return{data:null,error:t};throw t}}))}_getFinalPath(t){return`${this.bucketId}/${t}`}_removeEmptyFolders(t){return t.replace(/^\\/|\\/$/g,\"\").replace(/\\/+/g,\"/\")}transformOptsToQueryString(t){const e=[];t.width&&e.push(`width=${t.width}`);t.height&&e.push(`height=${t.height}`);t.resize&&e.push(`resize=${t.resize}`);t.format&&e.push(`format=${t.format}`);t.quality&&e.push(`quality=${t.quality}`);return e.join(\"&\")}}const i=\"2.5.1\";const s={\"X-Client-Info\":`storage-js/${i}`};var a=(void 0,function(t,e,r,o){function adopt(t){return t instanceof r?t:new r((function(e){e(t)}))}return new(r||(r=Promise))((function(r,n){function fulfilled(t){try{step(o.next(t))}catch(t){n(t)}}function rejected(t){try{step(o.throw(t))}catch(t){n(t)}}function step(t){t.done?r(t.value):adopt(t.value).then(fulfilled,rejected)}step((o=o.apply(t,e||[])).next())}))});class StorageBucketApi{constructor(t,e={},r){this.url=t;this.headers=Object.assign(Object.assign({},s),e);this.fetch=resolveFetch(r)}listBuckets(){return a(this,void 0,void 0,(function*(){try{const t=yield get(this.fetch,`${this.url}/bucket`,{headers:this.headers});return{data:t,error:null}}catch(t){if(isStorageError(t))return{data:null,error:t};throw t}}))}\n/**\n     * Retrieves the details of an existing Storage bucket.\n     *\n     * @param id The unique identifier of the bucket you would like to retrieve.\n     */getBucket(t){return a(this,void 0,void 0,(function*(){try{const e=yield get(this.fetch,`${this.url}/bucket/${t}`,{headers:this.headers});return{data:e,error:null}}catch(t){if(isStorageError(t))return{data:null,error:t};throw t}}))}\n/**\n     * Creates a new Storage bucket\n     *\n     * @param id A unique identifier for the bucket you are creating.\n     * @param options.public The visibility of the bucket. Public buckets don't require an authorization token to download objects, but still require a valid token for all other operations. By default, buckets are private.\n     * @param options.fileSizeLimit specifies the max file size in bytes that can be uploaded to this bucket.\n     * The global file size limit takes precedence over this value.\n     * The default value is null, which doesn't set a per bucket file size limit.\n     * @param options.allowedMimeTypes specifies the allowed mime types that this bucket can accept during upload.\n     * The default value is null, which allows files with all mime types to be uploaded.\n     * Each mime type specified can be a wildcard, e.g. image/*, or a specific mime type, e.g. image/png.\n     * @returns newly created bucket id\n     */createBucket(t,e={public:false}){return a(this,void 0,void 0,(function*(){try{const r=yield post(this.fetch,`${this.url}/bucket`,{id:t,name:t,public:e.public,file_size_limit:e.fileSizeLimit,allowed_mime_types:e.allowedMimeTypes},{headers:this.headers});return{data:r,error:null}}catch(t){if(isStorageError(t))return{data:null,error:t};throw t}}))}\n/**\n     * Updates a Storage bucket\n     *\n     * @param id A unique identifier for the bucket you are updating.\n     * @param options.public The visibility of the bucket. Public buckets don't require an authorization token to download objects, but still require a valid token for all other operations.\n     * @param options.fileSizeLimit specifies the max file size in bytes that can be uploaded to this bucket.\n     * The global file size limit takes precedence over this value.\n     * The default value is null, which doesn't set a per bucket file size limit.\n     * @param options.allowedMimeTypes specifies the allowed mime types that this bucket can accept during upload.\n     * The default value is null, which allows files with all mime types to be uploaded.\n     * Each mime type specified can be a wildcard, e.g. image/*, or a specific mime type, e.g. image/png.\n     */updateBucket(t,e){return a(this,void 0,void 0,(function*(){try{const r=yield put(this.fetch,`${this.url}/bucket/${t}`,{id:t,name:t,public:e.public,file_size_limit:e.fileSizeLimit,allowed_mime_types:e.allowedMimeTypes},{headers:this.headers});return{data:r,error:null}}catch(t){if(isStorageError(t))return{data:null,error:t};throw t}}))}\n/**\n     * Removes all objects inside a single bucket.\n     *\n     * @param id The unique identifier of the bucket you would like to empty.\n     */emptyBucket(t){return a(this,void 0,void 0,(function*(){try{const e=yield post(this.fetch,`${this.url}/bucket/${t}/empty`,{},{headers:this.headers});return{data:e,error:null}}catch(t){if(isStorageError(t))return{data:null,error:t};throw t}}))}\n/**\n     * Deletes an existing bucket. A bucket can't be deleted with existing objects inside it.\n     * You must first `empty()` the bucket.\n     *\n     * @param id The unique identifier of the bucket you would like to delete.\n     */deleteBucket(t){return a(this,void 0,void 0,(function*(){try{const e=yield remove(this.fetch,`${this.url}/bucket/${t}`,{},{headers:this.headers});return{data:e,error:null}}catch(t){if(isStorageError(t))return{data:null,error:t};throw t}}))}}class StorageClient extends StorageBucketApi{constructor(t,e={},r){super(t,e,r)}\n/**\n     * Perform file operation in a bucket.\n     *\n     * @param id The bucket id to operate on.\n     */from(t){return new StorageFileApi(this.url,this.headers,t,this.fetch)}}export{StorageApiError,StorageClient,StorageError,StorageUnknownError,isStorageError};\n\n//# sourceMappingURL=index.js.map", "var e=(void 0,function(e,t,r,i){function adopt(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function fulfilled(e){try{step(i.next(e))}catch(e){s(e)}}function rejected(e){try{step(i.throw(e))}catch(e){s(e)}}function step(e){e.done?r(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))});function expiresAt(e){const t=Math.round(Date.now()/1e3);return t+e}function uuid(){return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,(function(e){const t=16*Math.random()|0,r=\"x\"==e?t:3&t|8;return r.toString(16)}))}const isBrowser=()=>\"undefined\"!==typeof document;const t={tested:false,writable:false};const supportsLocalStorage=()=>{if(!isBrowser())return false;try{if(\"object\"!==typeof globalThis.localStorage)return false}catch(e){return false}if(t.tested)return t.writable;const e=`lswt-${Math.random()}${Math.random()}`;try{globalThis.localStorage.setItem(e,e);globalThis.localStorage.removeItem(e);t.tested=true;t.writable=true}catch(e){t.tested=true;t.writable=false}return t.writable};function getParameterByName(e,t){var r;t||(t=(null===(r=null===window||void 0===window?void 0:window.location)||void 0===r?void 0:r.href)||\"\");e=e.replace(/[\\[\\]]/g,\"\\\\$&\");const i=new RegExp(\"[?&#]\"+e+\"(=([^&#]*)|&|#|$)\"),s=i.exec(t);return s?s[2]?decodeURIComponent(s[2].replace(/\\+/g,\" \")):\"\":null}const resolveFetch=t=>{let r;r=t||(\"undefined\"===typeof fetch?(...t)=>e(void 0,void 0,void 0,(function*(){return yield(yield import(\"cross-fetch\")).fetch(...t)})):fetch);return(...e)=>r(...e)};const looksLikeFetchResponse=e=>\"object\"===typeof e&&null!==e&&\"status\"in e&&\"ok\"in e&&\"json\"in e&&\"function\"===typeof e.json;const setItemAsync=(t,r,i)=>e(void 0,void 0,void 0,(function*(){yield t.setItem(r,JSON.stringify(i))}));const getItemAsync=(t,r)=>e(void 0,void 0,void 0,(function*(){const e=yield t.getItem(r);if(!e)return null;try{return JSON.parse(e)}catch(t){return e}}));const removeItemAsync=(t,r)=>e(void 0,void 0,void 0,(function*(){yield t.removeItem(r)}));function decodeBase64URL(e){const t=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";let r=\"\";let i,s,o;let n,a,l,d;let u=0;e=e.replace(\"-\",\"+\").replace(\"_\",\"/\");while(u<e.length){n=t.indexOf(e.charAt(u++));a=t.indexOf(e.charAt(u++));l=t.indexOf(e.charAt(u++));d=t.indexOf(e.charAt(u++));i=n<<2|a>>4;s=(15&a)<<4|l>>2;o=(3&l)<<6|d;r+=String.fromCharCode(i);64!=l&&0!=s&&(r+=String.fromCharCode(s));64!=d&&0!=o&&(r+=String.fromCharCode(o))}return r}class Deferred{constructor(){this.promise=new Deferred.promiseConstructor(((e,t)=>{this.resolve=e;this.reject=t}))}}Deferred.promiseConstructor=Promise;function decodeJWTPayload(e){const t=/^([a-z0-9_-]{4})*($|[a-z0-9_-]{3}=?$|[a-z0-9_-]{2}(==)?$)$/i;const r=e.split(\".\");if(3!==r.length)throw new Error(\"JWT is not valid: not a JWT structure\");if(!t.test(r[1]))throw new Error(\"JWT is not valid: payload is not in base64url format\");const i=r[1];return JSON.parse(decodeBase64URL(i))}function sleep(e){return new Promise((t=>{setTimeout((()=>t(null)),e)}))}function retryable(t,r){const i=new Promise(((i,s)=>{(()=>e(this,void 0,void 0,(function*(){for(let e=0;e<Infinity;e++)try{const s=yield t(e);if(!r(e,null,s)){i(s);return}}catch(t){if(!r(e,t)){s(t);return}}})))()}));return i}function dec2hex(e){return(\"0\"+e.toString(16)).substr(-2)}function generatePKCEVerifier(){const e=56;const t=new Uint32Array(e);if(\"undefined\"===typeof crypto){const t=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~\";const r=t.length;let i=\"\";for(let s=0;s<e;s++)i+=t.charAt(Math.floor(Math.random()*r));return i}crypto.getRandomValues(t);return Array.from(t,dec2hex).join(\"\")}function sha256(t){return e(this,void 0,void 0,(function*(){const e=new TextEncoder;const r=e.encode(t);const i=yield crypto.subtle.digest(\"SHA-256\",r);const s=new Uint8Array(i);return Array.from(s).map((e=>String.fromCharCode(e))).join(\"\")}))}function base64urlencode(e){return btoa(e).replace(/\\+/g,\"-\").replace(/\\//g,\"_\").replace(/=+$/,\"\")}function generatePKCEChallenge(t){return e(this,void 0,void 0,(function*(){if(\"undefined\"===typeof crypto){console.warn(\"WebCrypto API is not supported. Code challenge method will default to use plain instead of sha256.\");return t}const e=yield sha256(t);return base64urlencode(e)}))}class AuthError extends Error{constructor(e,t){super(e);this.__isAuthError=true;this.name=\"AuthError\";this.status=t}}function isAuthError(e){return\"object\"===typeof e&&null!==e&&\"__isAuthError\"in e}class AuthApiError extends AuthError{constructor(e,t){super(e,t);this.name=\"AuthApiError\";this.status=t}toJSON(){return{name:this.name,message:this.message,status:this.status}}}function isAuthApiError(e){return isAuthError(e)&&\"AuthApiError\"===e.name}class AuthUnknownError extends AuthError{constructor(e,t){super(e);this.name=\"AuthUnknownError\";this.originalError=t}}class CustomAuthError extends AuthError{constructor(e,t,r){super(e);this.name=t;this.status=r}toJSON(){return{name:this.name,message:this.message,status:this.status}}}class AuthSessionMissingError extends CustomAuthError{constructor(){super(\"Auth session missing!\",\"AuthSessionMissingError\",400)}}class AuthInvalidCredentialsError extends CustomAuthError{constructor(e){super(e,\"AuthInvalidCredentialsError\",400)}}class AuthImplicitGrantRedirectError extends CustomAuthError{constructor(e,t=null){super(e,\"AuthImplicitGrantRedirectError\",500);this.details=null;this.details=t}toJSON(){return{name:this.name,message:this.message,status:this.status,details:this.details}}}class AuthPKCEGrantCodeExchangeError extends CustomAuthError{constructor(e,t=null){super(e,\"AuthPKCEGrantCodeExchangeError\",500);this.details=null;this.details=t}toJSON(){return{name:this.name,message:this.message,status:this.status,details:this.details}}}class AuthRetryableFetchError extends CustomAuthError{constructor(e,t){super(e,\"AuthRetryableFetchError\",t)}}var r=(void 0,function(e,t,r,i){function adopt(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function fulfilled(e){try{step(i.next(e))}catch(e){s(e)}}function rejected(e){try{step(i.throw(e))}catch(e){s(e)}}function step(e){e.done?r(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))});var i=(void 0,function(e,t){var r={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(r[i]=e[i]);if(null!=e&&\"function\"===typeof Object.getOwnPropertySymbols){var s=0;for(i=Object.getOwnPropertySymbols(e);s<i.length;s++)t.indexOf(i[s])<0&&Object.prototype.propertyIsEnumerable.call(e,i[s])&&(r[i[s]]=e[i[s]])}return r});const _getErrorMessage=e=>e.msg||e.message||e.error_description||e.error||JSON.stringify(e);const handleError=(e,t)=>r(void 0,void 0,void 0,(function*(){const r=[502,503,504];looksLikeFetchResponse(e)?r.includes(e.status)?t(new AuthRetryableFetchError(_getErrorMessage(e),e.status)):e.json().then((r=>{t(new AuthApiError(_getErrorMessage(r),e.status||500))})).catch((e=>{t(new AuthUnknownError(_getErrorMessage(e),e))})):t(new AuthRetryableFetchError(_getErrorMessage(e),0))}));const _getRequestParams=(e,t,r,i)=>{const s={method:e,headers:(null===t||void 0===t?void 0:t.headers)||{}};if(\"GET\"===e)return s;s.headers=Object.assign({\"Content-Type\":\"application/json;charset=UTF-8\"},null===t||void 0===t?void 0:t.headers);s.body=JSON.stringify(i);return Object.assign(Object.assign({},s),r)};function _request(e,t,i,s){var o;return r(this,void 0,void 0,(function*(){const r=Object.assign({},null===s||void 0===s?void 0:s.headers);(null===s||void 0===s?void 0:s.jwt)&&(r.Authorization=`Bearer ${s.jwt}`);const n=null!==(o=null===s||void 0===s?void 0:s.query)&&void 0!==o?o:{};(null===s||void 0===s?void 0:s.redirectTo)&&(n.redirect_to=s.redirectTo);const a=Object.keys(n).length?\"?\"+new URLSearchParams(n).toString():\"\";const l=yield _handleRequest(e,t,i+a,{headers:r,noResolveJson:null===s||void 0===s?void 0:s.noResolveJson},{},null===s||void 0===s?void 0:s.body);return(null===s||void 0===s?void 0:s.xform)?null===s||void 0===s?void 0:s.xform(l):{data:Object.assign({},l),error:null}}))}function _handleRequest(e,t,i,s,o,n){return r(this,void 0,void 0,(function*(){return new Promise(((r,a)=>{e(i,_getRequestParams(t,s,o,n)).then((e=>{if(!e.ok)throw e;return(null===s||void 0===s?void 0:s.noResolveJson)?e:e.json()})).then((e=>r(e))).catch((e=>handleError(e,a)))}))}))}function _sessionResponse(e){var t;let r=null;if(hasSession(e)){r=Object.assign({},e);r.expires_at=expiresAt(e.expires_in)}const i=null!==(t=e.user)&&void 0!==t?t:e;return{data:{session:r,user:i},error:null}}function _userResponse(e){var t;const r=null!==(t=e.user)&&void 0!==t?t:e;return{data:{user:r},error:null}}function _ssoResponse(e){return{data:e,error:null}}function _generateLinkResponse(e){const{action_link:t,email_otp:r,hashed_token:s,redirect_to:o,verification_type:n}=e,a=i(e,[\"action_link\",\"email_otp\",\"hashed_token\",\"redirect_to\",\"verification_type\"]);const l={action_link:t,email_otp:r,hashed_token:s,redirect_to:o,verification_type:n};const d=Object.assign({},a);return{data:{properties:l,user:d},error:null}}function _noResolveJsonResponse(e){return e}\n/**\n * hasSession checks if the response object contains a valid session\n * @param data A response object\n * @returns true if a session is in the response\n */function hasSession(e){return e.access_token&&e.refresh_token&&e.expires_in}var s=(void 0,function(e,t,r,i){function adopt(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function fulfilled(e){try{step(i.next(e))}catch(e){s(e)}}function rejected(e){try{step(i.throw(e))}catch(e){s(e)}}function step(e){e.done?r(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))});var o=(void 0,function(e,t){var r={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(r[i]=e[i]);if(null!=e&&\"function\"===typeof Object.getOwnPropertySymbols){var s=0;for(i=Object.getOwnPropertySymbols(e);s<i.length;s++)t.indexOf(i[s])<0&&Object.prototype.propertyIsEnumerable.call(e,i[s])&&(r[i[s]]=e[i[s]])}return r});class GoTrueAdminApi{constructor({url:e=\"\",headers:t={},fetch:r}){this.url=e;this.headers=t;this.fetch=resolveFetch(r);this.mfa={listFactors:this._listFactors.bind(this),deleteFactor:this._deleteFactor.bind(this)}}\n/**\n     * Removes a logged-in session.\n     * @param jwt A valid, logged-in JWT.\n     */signOut(e){return s(this,void 0,void 0,(function*(){try{yield _request(this.fetch,\"POST\",`${this.url}/logout`,{headers:this.headers,jwt:e,noResolveJson:true});return{data:null,error:null}}catch(e){if(isAuthError(e))return{data:null,error:e};throw e}}))}\n/**\n     * Sends an invite link to an email address.\n     * @param email The email address of the user.\n     * @param options.redirectTo A URL or mobile deeplink to send the user to after they are confirmed.\n     * @param options.data Optional user metadata\n     */inviteUserByEmail(e,t={}){return s(this,void 0,void 0,(function*(){try{return yield _request(this.fetch,\"POST\",`${this.url}/invite`,{body:{email:e,data:t.data},headers:this.headers,redirectTo:t.redirectTo,xform:_userResponse})}catch(e){if(isAuthError(e))return{data:{user:null},error:e};throw e}}))}\n/**\n     * Generates email links and OTPs to be sent via a custom email provider.\n     * @param email The user's email.\n     * @param options.password User password. For signup only.\n     * @param options.data Optional user metadata. For signup only.\n     * @param options.redirectTo The redirect url which should be appended to the generated link\n     */generateLink(e){return s(this,void 0,void 0,(function*(){try{const{options:t}=e,r=o(e,[\"options\"]);const i=Object.assign(Object.assign({},r),t);if(\"newEmail\"in r){i.new_email=null===r||void 0===r?void 0:r.newEmail;delete i.newEmail}return yield _request(this.fetch,\"POST\",`${this.url}/admin/generate_link`,{body:i,headers:this.headers,xform:_generateLinkResponse,redirectTo:null===t||void 0===t?void 0:t.redirectTo})}catch(e){if(isAuthError(e))return{data:{properties:null,user:null},error:e};throw e}}))}createUser(e){return s(this,void 0,void 0,(function*(){try{return yield _request(this.fetch,\"POST\",`${this.url}/admin/users`,{body:e,headers:this.headers,xform:_userResponse})}catch(e){if(isAuthError(e))return{data:{user:null},error:e};throw e}}))}\n/**\n     * Get a list of users.\n     *\n     * This function should only be called on a server. Never expose your `service_role` key in the browser.\n     * @param params An object which supports `page` and `perPage` as numbers, to alter the paginated results.\n     */listUsers(e){var t,r,i,o,n,a,l;return s(this,void 0,void 0,(function*(){try{const s={nextPage:null,lastPage:0,total:0};const d=yield _request(this.fetch,\"GET\",`${this.url}/admin/users`,{headers:this.headers,noResolveJson:true,query:{page:null!==(r=null===(t=null===e||void 0===e?void 0:e.page)||void 0===t?void 0:t.toString())&&void 0!==r?r:\"\",per_page:null!==(o=null===(i=null===e||void 0===e?void 0:e.perPage)||void 0===i?void 0:i.toString())&&void 0!==o?o:\"\"},xform:_noResolveJsonResponse});if(d.error)throw d.error;const u=yield d.json();const h=null!==(n=d.headers.get(\"x-total-count\"))&&void 0!==n?n:0;const c=null!==(l=null===(a=d.headers.get(\"link\"))||void 0===a?void 0:a.split(\",\"))&&void 0!==l?l:[];if(c.length>0){c.forEach((e=>{const t=parseInt(e.split(\";\")[0].split(\"=\")[1].substring(0,1));const r=JSON.parse(e.split(\";\")[1].split(\"=\")[1]);s[`${r}Page`]=t}));s.total=parseInt(h)}return{data:Object.assign(Object.assign({},u),s),error:null}}catch(e){if(isAuthError(e))return{data:{users:[]},error:e};throw e}}))}\n/**\n     * Get user by id.\n     *\n     * @param uid The user's unique identifier\n     *\n     * This function should only be called on a server. Never expose your `service_role` key in the browser.\n     */getUserById(e){return s(this,void 0,void 0,(function*(){try{return yield _request(this.fetch,\"GET\",`${this.url}/admin/users/${e}`,{headers:this.headers,xform:_userResponse})}catch(e){if(isAuthError(e))return{data:{user:null},error:e};throw e}}))}\n/**\n     * Updates the user data.\n     *\n     * @param attributes The data you want to update.\n     *\n     * This function should only be called on a server. Never expose your `service_role` key in the browser.\n     */updateUserById(e,t){return s(this,void 0,void 0,(function*(){try{return yield _request(this.fetch,\"PUT\",`${this.url}/admin/users/${e}`,{body:t,headers:this.headers,xform:_userResponse})}catch(e){if(isAuthError(e))return{data:{user:null},error:e};throw e}}))}\n/**\n     * Delete a user. Requires a `service_role` key.\n     *\n     * @param id The user id you want to remove.\n     * @param shouldSoftDelete If true, then the user will be soft-deleted from the auth schema.\n     * Defaults to false for backward compatibility.\n     *\n     * This function should only be called on a server. Never expose your `service_role` key in the browser.\n     */deleteUser(e,t=false){return s(this,void 0,void 0,(function*(){try{return yield _request(this.fetch,\"DELETE\",`${this.url}/admin/users/${e}`,{headers:this.headers,body:{should_soft_delete:t},xform:_userResponse})}catch(e){if(isAuthError(e))return{data:{user:null},error:e};throw e}}))}_listFactors(e){return s(this,void 0,void 0,(function*(){try{const{data:t,error:r}=yield _request(this.fetch,\"GET\",`${this.url}/admin/users/${e.userId}/factors`,{headers:this.headers,xform:e=>({data:{factors:e},error:null})});return{data:t,error:r}}catch(e){if(isAuthError(e))return{data:null,error:e};throw e}}))}_deleteFactor(e){return s(this,void 0,void 0,(function*(){try{const t=yield _request(this.fetch,\"DELETE\",`${this.url}/admin/users/${e.userId}/factors/${e.id}`,{headers:this.headers});return{data:t,error:null}}catch(e){if(isAuthError(e))return{data:null,error:e};throw e}}))}}const n=\"2.23.0\";const a=\"http://localhost:9999\";const l=\"supabase.auth.token\";const d={\"X-Client-Info\":`gotrue-js/${n}`};const u=10;const h={getItem:e=>supportsLocalStorage()?globalThis.localStorage.getItem(e):null,setItem:(e,t)=>{supportsLocalStorage()&&globalThis.localStorage.setItem(e,t)},removeItem:e=>{supportsLocalStorage()&&globalThis.localStorage.removeItem(e)}};function polyfillGlobalThis(){if(\"object\"!==typeof globalThis)try{Object.defineProperty(Object.prototype,\"__magic__\",{get:function(){return this},configurable:true});__magic__.globalThis=__magic__;delete Object.prototype.__magic__}catch(e){\"undefined\"!==typeof self&&(self.globalThis=self)}}var c=(void 0,function(e,t,r,i){function adopt(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function fulfilled(e){try{step(i.next(e))}catch(e){s(e)}}function rejected(e){try{step(i.throw(e))}catch(e){s(e)}}function step(e){e.done?r(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))});polyfillGlobalThis();const f={url:a,storageKey:l,autoRefreshToken:true,persistSession:true,detectSessionInUrl:true,headers:d,flowType:\"implicit\"};const v=1e4;const y=3;class GoTrueClient{constructor(e){var t;this.stateChangeEmitters=new Map;this.autoRefreshTicker=null;this.visibilityChangedCallback=null;this.refreshingDeferred=null;this.initializePromise=null;this.detectSessionInUrl=true;this.broadcastChannel=null;const r=Object.assign(Object.assign({},f),e);this.inMemorySession=null;this.storageKey=r.storageKey;this.autoRefreshToken=r.autoRefreshToken;this.persistSession=r.persistSession;this.storage=r.storage||h;this.admin=new GoTrueAdminApi({url:r.url,headers:r.headers,fetch:r.fetch});this.url=r.url;this.headers=r.headers;this.fetch=resolveFetch(r.fetch);this.detectSessionInUrl=r.detectSessionInUrl;this.flowType=r.flowType;this.mfa={verify:this._verify.bind(this),enroll:this._enroll.bind(this),unenroll:this._unenroll.bind(this),challenge:this._challenge.bind(this),listFactors:this._listFactors.bind(this),challengeAndVerify:this._challengeAndVerify.bind(this),getAuthenticatorAssuranceLevel:this._getAuthenticatorAssuranceLevel.bind(this)};if(isBrowser()&&globalThis.BroadcastChannel&&this.persistSession&&this.storageKey){try{this.broadcastChannel=new globalThis.BroadcastChannel(this.storageKey)}catch(e){console.error(\"Failed to create a new BroadcastChannel, multi-tab state changes will not be available\",e)}null===(t=this.broadcastChannel)||void 0===t?void 0:t.addEventListener(\"message\",(e=>{this._notifyAllSubscribers(e.data.event,e.data.session,false)}))}this.initialize()}initialize(){this.initializePromise||(this.initializePromise=this._initialize());return this.initializePromise}_initialize(){return c(this,void 0,void 0,(function*(){if(this.initializePromise)return this.initializePromise;try{const e=yield this._isPKCEFlow();if(this.detectSessionInUrl&&this._isImplicitGrantFlow()||e){const{data:t,error:r}=yield this._getSessionFromUrl(e);if(r){yield this._removeSession();return{error:r}}const{session:i,redirectType:s}=t;yield this._saveSession(i);setTimeout((()=>{\"recovery\"===s?this._notifyAllSubscribers(\"PASSWORD_RECOVERY\",i):this._notifyAllSubscribers(\"SIGNED_IN\",i)}),0);return{error:null}}yield this._recoverAndRefresh();return{error:null}}catch(e){return isAuthError(e)?{error:e}:{error:new AuthUnknownError(\"Unexpected error during initialization\",e)}}finally{yield this._handleVisibilityChange()}}))}\n/**\n     * Creates a new user.\n     *\n     * Be aware that if a user account exists in the system you may get back an\n     * error message that attempts to hide this information from the user.\n     *\n     * @returns A logged-in session if the server has \"autoconfirm\" ON\n     * @returns A user if the server has \"autoconfirm\" OFF\n     */signUp(e){var t,r,i;return c(this,void 0,void 0,(function*(){try{yield this._removeSession();let s;if(\"email\"in e){const{email:r,password:i,options:o}=e;let n=null;let a=null;if(\"pkce\"===this.flowType){const e=generatePKCEVerifier();yield setItemAsync(this.storage,`${this.storageKey}-code-verifier`,e);n=yield generatePKCEChallenge(e);a=e===n?\"plain\":\"s256\"}s=yield _request(this.fetch,\"POST\",`${this.url}/signup`,{headers:this.headers,redirectTo:null===o||void 0===o?void 0:o.emailRedirectTo,body:{email:r,password:i,data:null!==(t=null===o||void 0===o?void 0:o.data)&&void 0!==t?t:{},gotrue_meta_security:{captcha_token:null===o||void 0===o?void 0:o.captchaToken},code_challenge:n,code_challenge_method:a},xform:_sessionResponse})}else{if(!(\"phone\"in e))throw new AuthInvalidCredentialsError(\"You must provide either an email or phone number and a password\");{const{phone:t,password:o,options:n}=e;s=yield _request(this.fetch,\"POST\",`${this.url}/signup`,{headers:this.headers,body:{phone:t,password:o,data:null!==(r=null===n||void 0===n?void 0:n.data)&&void 0!==r?r:{},channel:null!==(i=null===n||void 0===n?void 0:n.channel)&&void 0!==i?i:\"sms\",gotrue_meta_security:{captcha_token:null===n||void 0===n?void 0:n.captchaToken}},xform:_sessionResponse})}}const{data:o,error:n}=s;if(n||!o)return{data:{user:null,session:null},error:n};const a=o.session;const l=o.user;if(o.session){yield this._saveSession(o.session);this._notifyAllSubscribers(\"SIGNED_IN\",a)}return{data:{user:l,session:a},error:null}}catch(e){if(isAuthError(e))return{data:{user:null,session:null},error:e};throw e}}))}signInWithPassword(e){return c(this,void 0,void 0,(function*(){try{yield this._removeSession();let t;if(\"email\"in e){const{email:r,password:i,options:s}=e;t=yield _request(this.fetch,\"POST\",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{email:r,password:i,gotrue_meta_security:{captcha_token:null===s||void 0===s?void 0:s.captchaToken}},xform:_sessionResponse})}else{if(!(\"phone\"in e))throw new AuthInvalidCredentialsError(\"You must provide either an email or phone number and a password\");{const{phone:r,password:i,options:s}=e;t=yield _request(this.fetch,\"POST\",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{phone:r,password:i,gotrue_meta_security:{captcha_token:null===s||void 0===s?void 0:s.captchaToken}},xform:_sessionResponse})}}const{data:r,error:i}=t;if(i||!r)return{data:{user:null,session:null},error:i};if(r.session){yield this._saveSession(r.session);this._notifyAllSubscribers(\"SIGNED_IN\",r.session)}return{data:r,error:i}}catch(e){if(isAuthError(e))return{data:{user:null,session:null},error:e};throw e}}))}signInWithOAuth(e){var t,r,i,s;return c(this,void 0,void 0,(function*(){yield this._removeSession();return yield this._handleProviderSignIn(e.provider,{redirectTo:null===(t=e.options)||void 0===t?void 0:t.redirectTo,scopes:null===(r=e.options)||void 0===r?void 0:r.scopes,queryParams:null===(i=e.options)||void 0===i?void 0:i.queryParams,skipBrowserRedirect:null===(s=e.options)||void 0===s?void 0:s.skipBrowserRedirect})}))}exchangeCodeForSession(e){return c(this,void 0,void 0,(function*(){const t=yield getItemAsync(this.storage,`${this.storageKey}-code-verifier`);const{data:r,error:i}=yield _request(this.fetch,\"POST\",`${this.url}/token?grant_type=pkce`,{headers:this.headers,body:{auth_code:e,code_verifier:t},xform:_sessionResponse});yield removeItemAsync(this.storage,`${this.storageKey}-code-verifier`);if(i||!r)return{data:{user:null,session:null},error:i};if(r.session){yield this._saveSession(r.session);this._notifyAllSubscribers(\"SIGNED_IN\",r.session)}return{data:r,error:i}}))}signInWithIdToken(e){return c(this,void 0,void 0,(function*(){yield this._removeSession();try{const{options:t,provider:r,token:i,nonce:s}=e;const o=yield _request(this.fetch,\"POST\",`${this.url}/token?grant_type=id_token`,{headers:this.headers,body:{provider:r,id_token:i,nonce:s,gotrue_meta_security:{captcha_token:null===t||void 0===t?void 0:t.captchaToken}},xform:_sessionResponse});const{data:n,error:a}=o;if(a||!n)return{data:{user:null,session:null},error:a};if(n.session){yield this._saveSession(n.session);this._notifyAllSubscribers(\"SIGNED_IN\",n.session)}return{data:n,error:a}}catch(e){if(isAuthError(e))return{data:{user:null,session:null},error:e};throw e}}))}signInWithOtp(e){var t,r,i,s,o;return c(this,void 0,void 0,(function*(){try{yield this._removeSession();if(\"email\"in e){const{email:i,options:s}=e;let o=null;let n=null;if(\"pkce\"===this.flowType){const e=generatePKCEVerifier();yield setItemAsync(this.storage,`${this.storageKey}-code-verifier`,e);o=yield generatePKCEChallenge(e);n=e===o?\"plain\":\"s256\"}const{error:a}=yield _request(this.fetch,\"POST\",`${this.url}/otp`,{headers:this.headers,body:{email:i,data:null!==(t=null===s||void 0===s?void 0:s.data)&&void 0!==t?t:{},create_user:null===(r=null===s||void 0===s?void 0:s.shouldCreateUser)||void 0===r||r,gotrue_meta_security:{captcha_token:null===s||void 0===s?void 0:s.captchaToken},code_challenge:o,code_challenge_method:n},redirectTo:null===s||void 0===s?void 0:s.emailRedirectTo});return{data:{user:null,session:null},error:a}}if(\"phone\"in e){const{phone:t,options:r}=e;const{error:n}=yield _request(this.fetch,\"POST\",`${this.url}/otp`,{headers:this.headers,body:{phone:t,data:null!==(i=null===r||void 0===r?void 0:r.data)&&void 0!==i?i:{},create_user:null===(s=null===r||void 0===r?void 0:r.shouldCreateUser)||void 0===s||s,gotrue_meta_security:{captcha_token:null===r||void 0===r?void 0:r.captchaToken},channel:null!==(o=null===r||void 0===r?void 0:r.channel)&&void 0!==o?o:\"sms\"}});return{data:{user:null,session:null},error:n}}throw new AuthInvalidCredentialsError(\"You must provide either an email or phone number.\")}catch(e){if(isAuthError(e))return{data:{user:null,session:null},error:e};throw e}}))}verifyOtp(e){var t,r;return c(this,void 0,void 0,(function*(){try{yield this._removeSession();const{data:i,error:s}=yield _request(this.fetch,\"POST\",`${this.url}/verify`,{headers:this.headers,body:Object.assign(Object.assign({},e),{gotrue_meta_security:{captcha_token:null===(t=e.options)||void 0===t?void 0:t.captchaToken}}),redirectTo:null===(r=e.options)||void 0===r?void 0:r.redirectTo,xform:_sessionResponse});if(s)throw s;if(!i)throw new Error(\"An error occurred on token verification.\");const o=i.session;const n=i.user;if(null===o||void 0===o?void 0:o.access_token){yield this._saveSession(o);this._notifyAllSubscribers(\"SIGNED_IN\",o)}return{data:{user:n,session:o},error:null}}catch(e){if(isAuthError(e))return{data:{user:null,session:null},error:e};throw e}}))}signInWithSSO(e){var t,r,i;return c(this,void 0,void 0,(function*(){try{yield this._removeSession();return yield _request(this.fetch,\"POST\",`${this.url}/sso`,{body:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},\"providerId\"in e?{provider_id:e.providerId}:null),\"domain\"in e?{domain:e.domain}:null),{redirect_to:null!==(r=null===(t=e.options)||void 0===t?void 0:t.redirectTo)&&void 0!==r?r:void 0}),(null===(i=null===e||void 0===e?void 0:e.options)||void 0===i?void 0:i.captchaToken)?{gotrue_meta_security:{captcha_token:e.options.captchaToken}}:null),{skip_http_redirect:true}),headers:this.headers,xform:_ssoResponse})}catch(e){if(isAuthError(e))return{data:null,error:e};throw e}}))}getSession(){return c(this,void 0,void 0,(function*(){yield this.initializePromise;let e=null;if(this.persistSession){const t=yield getItemAsync(this.storage,this.storageKey);null!==t&&(this._isValidSession(t)?e=t:yield this._removeSession())}else e=this.inMemorySession;if(!e)return{data:{session:null},error:null};const t=!!e.expires_at&&e.expires_at<=Date.now()/1e3;if(!t)return{data:{session:e},error:null};const{session:r,error:i}=yield this._callRefreshToken(e.refresh_token);return i?{data:{session:null},error:i}:{data:{session:r},error:null}}))}\n/**\n     * Gets the current user details if there is an existing session.\n     * @param jwt Takes in an optional access token jwt. If no jwt is provided, getUser() will attempt to get the jwt from the current session.\n     */getUser(e){var t,r;return c(this,void 0,void 0,(function*(){try{if(!e){const{data:i,error:s}=yield this.getSession();if(s)throw s;e=null!==(r=null===(t=i.session)||void 0===t?void 0:t.access_token)&&void 0!==r?r:void 0}return yield _request(this.fetch,\"GET\",`${this.url}/user`,{headers:this.headers,jwt:e,xform:_userResponse})}catch(e){if(isAuthError(e))return{data:{user:null},error:e};throw e}}))}updateUser(e,t={}){return c(this,void 0,void 0,(function*(){try{const{data:r,error:i}=yield this.getSession();if(i)throw i;if(!r.session)throw new AuthSessionMissingError;const s=r.session;const{data:o,error:n}=yield _request(this.fetch,\"PUT\",`${this.url}/user`,{headers:this.headers,redirectTo:null===t||void 0===t?void 0:t.emailRedirectTo,body:e,jwt:s.access_token,xform:_userResponse});if(n)throw n;s.user=o.user;yield this._saveSession(s);this._notifyAllSubscribers(\"USER_UPDATED\",s);return{data:{user:s.user},error:null}}catch(e){if(isAuthError(e))return{data:{user:null},error:e};throw e}}))}_decodeJWT(e){return decodeJWTPayload(e)}\n/**\n     * Sets the session data from the current session. If the current session is expired, setSession will take care of refreshing it to obtain a new session.\n     * If the refresh token or access token in the current session is invalid, an error will be thrown.\n     * @param currentSession The current session that minimally contains an access token and refresh token.\n     */setSession(e){return c(this,void 0,void 0,(function*(){try{if(!e.access_token||!e.refresh_token)throw new AuthSessionMissingError;const t=Date.now()/1e3;let r=t;let i=true;let s=null;const o=decodeJWTPayload(e.access_token);if(o.exp){r=o.exp;i=r<=t}if(i){const{session:t,error:r}=yield this._callRefreshToken(e.refresh_token);if(r)return{data:{user:null,session:null},error:r};if(!t)return{data:{user:null,session:null},error:null};s=t}else{const{data:i,error:o}=yield this.getUser(e.access_token);if(o)throw o;s={access_token:e.access_token,refresh_token:e.refresh_token,user:i.user,token_type:\"bearer\",expires_in:r-t,expires_at:r};yield this._saveSession(s);this._notifyAllSubscribers(\"SIGNED_IN\",s)}return{data:{user:s.user,session:s},error:null}}catch(e){if(isAuthError(e))return{data:{session:null,user:null},error:e};throw e}}))}\n/**\n     * Returns a new session, regardless of expiry status.\n     * Takes in an optional current session. If not passed in, then refreshSession() will attempt to retrieve it from getSession().\n     * If the current session's refresh token is invalid, an error will be thrown.\n     * @param currentSession The current session. If passed in, it must contain a refresh token.\n     */refreshSession(e){var t;return c(this,void 0,void 0,(function*(){try{if(!e){const{data:r,error:i}=yield this.getSession();if(i)throw i;e=null!==(t=r.session)&&void 0!==t?t:void 0}if(!(null===e||void 0===e?void 0:e.refresh_token))throw new AuthSessionMissingError;const{session:r,error:i}=yield this._callRefreshToken(e.refresh_token);return i?{data:{user:null,session:null},error:i}:r?{data:{user:r.user,session:r},error:null}:{data:{user:null,session:null},error:null}}catch(e){if(isAuthError(e))return{data:{user:null,session:null},error:e};throw e}}))}_getSessionFromUrl(e){return c(this,void 0,void 0,(function*(){try{if(!isBrowser())throw new AuthImplicitGrantRedirectError(\"No browser detected.\");if(\"implicit\"===this.flowType&&!this._isImplicitGrantFlow())throw new AuthImplicitGrantRedirectError(\"Not a valid implicit grant flow url.\");if(\"pkce\"==this.flowType&&!e)throw new AuthPKCEGrantCodeExchangeError(\"Not a valid PKCE flow url.\");if(e){const e=getParameterByName(\"code\");if(!e)throw new AuthPKCEGrantCodeExchangeError(\"No code detected.\");const{data:t,error:r}=yield this.exchangeCodeForSession(e);if(r)throw r;if(!t.session)throw new AuthPKCEGrantCodeExchangeError(\"No session detected.\");return{data:{session:t.session,redirectType:null},error:null}}const t=getParameterByName(\"error_description\");if(t){const e=getParameterByName(\"error_code\");if(!e)throw new AuthImplicitGrantRedirectError(\"No error_code detected.\");const r=getParameterByName(\"error\");if(!r)throw new AuthImplicitGrantRedirectError(\"No error detected.\");throw new AuthImplicitGrantRedirectError(t,{error:r,code:e})}const r=getParameterByName(\"provider_token\");const i=getParameterByName(\"provider_refresh_token\");const s=getParameterByName(\"access_token\");if(!s)throw new AuthImplicitGrantRedirectError(\"No access_token detected.\");const o=getParameterByName(\"expires_in\");if(!o)throw new AuthImplicitGrantRedirectError(\"No expires_in detected.\");const n=getParameterByName(\"refresh_token\");if(!n)throw new AuthImplicitGrantRedirectError(\"No refresh_token detected.\");const a=getParameterByName(\"token_type\");if(!a)throw new AuthImplicitGrantRedirectError(\"No token_type detected.\");const l=Math.round(Date.now()/1e3);const d=l+parseInt(o);const{data:u,error:h}=yield this.getUser(s);if(h)throw h;const c=u.user;const f={provider_token:r,provider_refresh_token:i,access_token:s,expires_in:parseInt(o),expires_at:d,refresh_token:n,token_type:a,user:c};const v=getParameterByName(\"type\");window.location.hash=\"\";return{data:{session:f,redirectType:v},error:null}}catch(e){if(isAuthError(e))return{data:{session:null,redirectType:null},error:e};throw e}}))}_isImplicitGrantFlow(){return isBrowser()&&(Boolean(getParameterByName(\"access_token\"))||Boolean(getParameterByName(\"error_description\")))}_isPKCEFlow(){return c(this,void 0,void 0,(function*(){const e=yield getItemAsync(this.storage,`${this.storageKey}-code-verifier`);return isBrowser()&&Boolean(getParameterByName(\"code\"))&&Boolean(e)}))}signOut(){var e;return c(this,void 0,void 0,(function*(){const{data:t,error:r}=yield this.getSession();if(r)return{error:r};const i=null===(e=t.session)||void 0===e?void 0:e.access_token;if(i){const{error:e}=yield this.admin.signOut(i);if(e&&!(isAuthApiError(e)&&(404===e.status||401===e.status)))return{error:e}}yield this._removeSession();yield removeItemAsync(this.storage,`${this.storageKey}-code-verifier`);this._notifyAllSubscribers(\"SIGNED_OUT\",null);return{error:null}}))}\n/**\n     * Receive a notification every time an auth event happens.\n     * @param callback A callback function to be invoked when an auth event happens.\n     */onAuthStateChange(e){const t=uuid();const r={id:t,callback:e,unsubscribe:()=>{this.stateChangeEmitters.delete(t)}};this.stateChangeEmitters.set(t,r);this.emitInitialSession(t);return{data:{subscription:r}}}emitInitialSession(e){var t,r;return c(this,void 0,void 0,(function*(){try{const{data:{session:r},error:i}=yield this.getSession();if(i)throw i;null===(t=this.stateChangeEmitters.get(e))||void 0===t?void 0:t.callback(\"INITIAL_SESSION\",r)}catch(t){null===(r=this.stateChangeEmitters.get(e))||void 0===r?void 0:r.callback(\"INITIAL_SESSION\",null);console.error(t)}}))}\n/**\n     * Sends a password reset request to an email address.\n     * @param email The email address of the user.\n     * @param options.redirectTo The URL to send the user to after they click the password reset link.\n     * @param options.captchaToken Verification token received when the user completes the captcha on the site.\n     */resetPasswordForEmail(e,t={}){return c(this,void 0,void 0,(function*(){let r=null;let i=null;if(\"pkce\"===this.flowType){const e=generatePKCEVerifier();yield setItemAsync(this.storage,`${this.storageKey}-code-verifier`,e);r=yield generatePKCEChallenge(e);i=e===r?\"plain\":\"s256\"}try{return yield _request(this.fetch,\"POST\",`${this.url}/recover`,{body:{email:e,code_challenge:r,code_challenge_method:i,gotrue_meta_security:{captcha_token:t.captchaToken}},headers:this.headers,redirectTo:t.redirectTo})}catch(e){if(isAuthError(e))return{data:null,error:e};throw e}}))}\n/**\n     * Generates a new JWT.\n     * @param refreshToken A valid refresh token that was returned on login.\n     */_refreshAccessToken(e){return c(this,void 0,void 0,(function*(){try{const t=Date.now();return yield retryable((t=>c(this,void 0,void 0,(function*(){yield sleep(200*t);return yield _request(this.fetch,\"POST\",`${this.url}/token?grant_type=refresh_token`,{body:{refresh_token:e},headers:this.headers,xform:_sessionResponse})}))),((e,r,i)=>i&&i.error&&i.error instanceof AuthRetryableFetchError&&Date.now()+200*(e+1)-t<v))}catch(e){if(isAuthError(e))return{data:{session:null,user:null},error:e};throw e}}))}_isValidSession(e){const t=\"object\"===typeof e&&null!==e&&\"access_token\"in e&&\"refresh_token\"in e&&\"expires_at\"in e;return t}_handleProviderSignIn(e,t){return c(this,void 0,void 0,(function*(){const r=yield this._getUrlForProvider(e,{redirectTo:t.redirectTo,scopes:t.scopes,queryParams:t.queryParams});isBrowser()&&!t.skipBrowserRedirect&&window.location.assign(r);return{data:{provider:e,url:r},error:null}}))}_recoverAndRefresh(){var e;return c(this,void 0,void 0,(function*(){try{const t=yield getItemAsync(this.storage,this.storageKey);if(!this._isValidSession(t)){null!==t&&(yield this._removeSession());return}const r=Math.round(Date.now()/1e3);if((null!==(e=t.expires_at)&&void 0!==e?e:Infinity)<r+u)if(this.autoRefreshToken&&t.refresh_token){const{error:e}=yield this._callRefreshToken(t.refresh_token);if(e){console.log(e.message);yield this._removeSession()}}else yield this._removeSession();else{this.persistSession&&(yield this._saveSession(t));this._notifyAllSubscribers(\"SIGNED_IN\",t)}}catch(e){console.error(e);return}}))}_callRefreshToken(e){var t,r;return c(this,void 0,void 0,(function*(){if(this.refreshingDeferred)return this.refreshingDeferred.promise;try{this.refreshingDeferred=new Deferred;if(!e)throw new AuthSessionMissingError;const{data:t,error:r}=yield this._refreshAccessToken(e);if(r)throw r;if(!t.session)throw new AuthSessionMissingError;yield this._saveSession(t.session);this._notifyAllSubscribers(\"TOKEN_REFRESHED\",t.session);const i={session:t.session,error:null};this.refreshingDeferred.resolve(i);return i}catch(e){if(isAuthError(e)){const r={session:null,error:e};null===(t=this.refreshingDeferred)||void 0===t?void 0:t.resolve(r);return r}null===(r=this.refreshingDeferred)||void 0===r?void 0:r.reject(e);throw e}finally{this.refreshingDeferred=null}}))}_notifyAllSubscribers(e,t,r=true){this.broadcastChannel&&r&&this.broadcastChannel.postMessage({event:e,session:t});this.stateChangeEmitters.forEach((r=>r.callback(e,t)))}_saveSession(e){return c(this,void 0,void 0,(function*(){this.persistSession||(this.inMemorySession=e);this.persistSession&&e.expires_at&&(yield this._persistSession(e))}))}_persistSession(e){return setItemAsync(this.storage,this.storageKey,e)}_removeSession(){return c(this,void 0,void 0,(function*(){this.persistSession?yield removeItemAsync(this.storage,this.storageKey):this.inMemorySession=null}))}_removeVisibilityChangedCallback(){const e=this.visibilityChangedCallback;this.visibilityChangedCallback=null;try{e&&isBrowser()&&(null===window||void 0===window?void 0:window.removeEventListener)&&window.removeEventListener(\"visibilitychange\",e)}catch(e){console.error(\"removing visibilitychange callback failed\",e)}}_startAutoRefresh(){return c(this,void 0,void 0,(function*(){yield this._stopAutoRefresh();const e=setInterval((()=>this._autoRefreshTokenTick()),v);this.autoRefreshTicker=e;e&&\"object\"===typeof e&&\"function\"===typeof e.unref?e.unref():\"undefined\"!==typeof Deno&&\"function\"===typeof Deno.unrefTimer&&Deno.unrefTimer(e);yield this._autoRefreshTokenTick()}))}_stopAutoRefresh(){return c(this,void 0,void 0,(function*(){const e=this.autoRefreshTicker;this.autoRefreshTicker=null;e&&clearInterval(e)}))}startAutoRefresh(){return c(this,void 0,void 0,(function*(){this._removeVisibilityChangedCallback();yield this._startAutoRefresh()}))}stopAutoRefresh(){return c(this,void 0,void 0,(function*(){this._removeVisibilityChangedCallback();yield this._stopAutoRefresh()}))}_autoRefreshTokenTick(){return c(this,void 0,void 0,(function*(){const e=Date.now();try{const{data:{session:t}}=yield this.getSession();if(!t||!t.refresh_token||!t.expires_at)return;const r=Math.floor((1e3*t.expires_at-e)/v);r<y&&(yield this._callRefreshToken(t.refresh_token))}catch(e){console.error(\"Auto refresh tick failed with error. This is likely a transient error.\",e)}}))}_handleVisibilityChange(){return c(this,void 0,void 0,(function*(){if(!isBrowser()||!(null===window||void 0===window?void 0:window.addEventListener)){this.autoRefreshToken&&this.startAutoRefresh();return false}try{this.visibilityChangedCallback=()=>c(this,void 0,void 0,(function*(){return yield this._onVisibilityChanged(false)}));null===window||void 0===window?void 0:window.addEventListener(\"visibilitychange\",this.visibilityChangedCallback);yield this._onVisibilityChanged(true)}catch(e){console.error(\"_handleVisibilityChange\",e)}}))}_onVisibilityChanged(e){return c(this,void 0,void 0,(function*(){if(\"visible\"===document.visibilityState){if(!e){yield this.initializePromise;yield this._recoverAndRefresh()}this.autoRefreshToken&&this._startAutoRefresh()}else\"hidden\"===document.visibilityState&&this.autoRefreshToken&&this._stopAutoRefresh()}))}\n/**\n     * Generates the relevant login URL for a third-party provider.\n     * @param options.redirectTo A URL or mobile address to send the user to after they are confirmed.\n     * @param options.scopes A space-separated list of scopes granted to the OAuth application.\n     * @param options.queryParams An object of key-value pairs containing query parameters granted to the OAuth application.\n     */_getUrlForProvider(e,t){return c(this,void 0,void 0,(function*(){const r=[`provider=${encodeURIComponent(e)}`];(null===t||void 0===t?void 0:t.redirectTo)&&r.push(`redirect_to=${encodeURIComponent(t.redirectTo)}`);(null===t||void 0===t?void 0:t.scopes)&&r.push(`scopes=${encodeURIComponent(t.scopes)}`);if(\"pkce\"===this.flowType){const e=generatePKCEVerifier();yield setItemAsync(this.storage,`${this.storageKey}-code-verifier`,e);const t=yield generatePKCEChallenge(e);const i=e===t?\"plain\":\"s256\";const s=new URLSearchParams({code_challenge:`${encodeURIComponent(t)}`,code_challenge_method:`${encodeURIComponent(i)}`});r.push(s.toString())}if(null===t||void 0===t?void 0:t.queryParams){const e=new URLSearchParams(t.queryParams);r.push(e.toString())}return`${this.url}/authorize?${r.join(\"&\")}`}))}_unenroll(e){var t;return c(this,void 0,void 0,(function*(){try{const{data:r,error:i}=yield this.getSession();return i?{data:null,error:i}:yield _request(this.fetch,\"DELETE\",`${this.url}/factors/${e.factorId}`,{headers:this.headers,jwt:null===(t=null===r||void 0===r?void 0:r.session)||void 0===t?void 0:t.access_token})}catch(e){if(isAuthError(e))return{data:null,error:e};throw e}}))}_enroll(e){var t,r;return c(this,void 0,void 0,(function*(){try{const{data:i,error:s}=yield this.getSession();if(s)return{data:null,error:s};const{data:o,error:n}=yield _request(this.fetch,\"POST\",`${this.url}/factors`,{body:{friendly_name:e.friendlyName,factor_type:e.factorType,issuer:e.issuer},headers:this.headers,jwt:null===(t=null===i||void 0===i?void 0:i.session)||void 0===t?void 0:t.access_token});if(n)return{data:null,error:n};(null===(r=null===o||void 0===o?void 0:o.totp)||void 0===r?void 0:r.qr_code)&&(o.totp.qr_code=`data:image/svg+xml;utf-8,${o.totp.qr_code}`);return{data:o,error:null}}catch(e){if(isAuthError(e))return{data:null,error:e};throw e}}))}_verify(e){var t;return c(this,void 0,void 0,(function*(){try{const{data:r,error:i}=yield this.getSession();if(i)return{data:null,error:i};const{data:s,error:o}=yield _request(this.fetch,\"POST\",`${this.url}/factors/${e.factorId}/verify`,{body:{code:e.code,challenge_id:e.challengeId},headers:this.headers,jwt:null===(t=null===r||void 0===r?void 0:r.session)||void 0===t?void 0:t.access_token});if(o)return{data:null,error:o};yield this._saveSession(Object.assign({expires_at:Math.round(Date.now()/1e3)+s.expires_in},s));this._notifyAllSubscribers(\"MFA_CHALLENGE_VERIFIED\",s);return{data:s,error:o}}catch(e){if(isAuthError(e))return{data:null,error:e};throw e}}))}_challenge(e){var t;return c(this,void 0,void 0,(function*(){try{const{data:r,error:i}=yield this.getSession();return i?{data:null,error:i}:yield _request(this.fetch,\"POST\",`${this.url}/factors/${e.factorId}/challenge`,{headers:this.headers,jwt:null===(t=null===r||void 0===r?void 0:r.session)||void 0===t?void 0:t.access_token})}catch(e){if(isAuthError(e))return{data:null,error:e};throw e}}))}_challengeAndVerify(e){return c(this,void 0,void 0,(function*(){const{data:t,error:r}=yield this._challenge({factorId:e.factorId});return r?{data:null,error:r}:yield this._verify({factorId:e.factorId,challengeId:t.id,code:e.code})}))}_listFactors(){return c(this,void 0,void 0,(function*(){const{data:{user:e},error:t}=yield this.getUser();if(t)return{data:null,error:t};const r=(null===e||void 0===e?void 0:e.factors)||[];const i=r.filter((e=>\"totp\"===e.factor_type&&\"verified\"===e.status));return{data:{all:r,totp:i},error:null}}))}_getAuthenticatorAssuranceLevel(){var e,t;return c(this,void 0,void 0,(function*(){const{data:{session:r},error:i}=yield this.getSession();if(i)return{data:null,error:i};if(!r)return{data:{currentLevel:null,nextLevel:null,currentAuthenticationMethods:[]},error:null};const s=this._decodeJWT(r.access_token);let o=null;s.aal&&(o=s.aal);let n=o;const a=null!==(t=null===(e=r.user.factors)||void 0===e?void 0:e.filter((e=>\"verified\"===e.status)))&&void 0!==t?t:[];a.length>0&&(n=\"aal2\");const l=s.amr||[];return{data:{currentLevel:o,nextLevel:n,currentAuthenticationMethods:l},error:null}}))}}export{AuthApiError,AuthError,AuthImplicitGrantRedirectError,AuthInvalidCredentialsError,AuthPKCEGrantCodeExchangeError,AuthRetryableFetchError,AuthSessionMissingError,AuthUnknownError,CustomAuthError,GoTrueAdminApi,GoTrueClient,isAuthApiError,isAuthError};\n\n//# sourceMappingURL=index.js.map", "import{FunctionsClient as e}from\"@supabase/functions-js\";export{FunctionsError,FunctionsFetchError,FunctionsHttpError,FunctionsRelayError}from\"@supabase/functions-js\";import{PostgrestClient as t}from\"@supabase/postgrest-js\";import{RealtimeClient as s}from\"@supabase/realtime-js\";export*from\"@supabase/realtime-js\";import{StorageClient as n}from\"@supabase/storage-js\";import i,{Headers as a}from\"cross-fetch\";import{GoTrueClient as r}from\"@supabase/gotrue-js\";export*from\"@supabase/gotrue-js\";const o=\"2.21.0\";const l={\"X-Client-Info\":`supabase-js/${o}`};var u=(void 0,function(e,t,s,n){function adopt(e){return e instanceof s?e:new s((function(t){t(e)}))}return new(s||(s=Promise))((function(s,i){function fulfilled(e){try{step(n.next(e))}catch(e){i(e)}}function rejected(e){try{step(n.throw(e))}catch(e){i(e)}}function step(e){e.done?s(e.value):adopt(e.value).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())}))});const resolveFetch=e=>{let t;t=e||(\"undefined\"===typeof fetch?i:fetch);return(...e)=>t(...e)};const resolveHeadersConstructor=()=>\"undefined\"===typeof Headers?a:Headers;const fetchWithAuth=(e,t,s)=>{const n=resolveFetch(s);const i=resolveHeadersConstructor();return(s,a)=>u(void 0,void 0,void 0,(function*(){var r;const o=null!==(r=yield t())&&void 0!==r?r:e;let l=new i(null===a||void 0===a?void 0:a.headers);l.has(\"apikey\")||l.set(\"apikey\",e);l.has(\"Authorization\")||l.set(\"Authorization\",`Bearer ${o}`);return n(s,Object.assign(Object.assign({},a),{headers:l}))}))};function stripTrailingSlash(e){return e.replace(/\\/$/,\"\")}function applySettingDefaults(e,t){const{db:s,auth:n,realtime:i,global:a}=e;const{db:r,auth:o,realtime:l,global:u}=t;return{db:Object.assign(Object.assign({},r),s),auth:Object.assign(Object.assign({},o),n),realtime:Object.assign(Object.assign({},l),i),global:Object.assign(Object.assign({},u),a)}}class SupabaseAuthClient extends r{constructor(e){super(e)}}var h=(void 0,function(e,t,s,n){function adopt(e){return e instanceof s?e:new s((function(t){t(e)}))}return new(s||(s=Promise))((function(s,i){function fulfilled(e){try{step(n.next(e))}catch(e){i(e)}}function rejected(e){try{step(n.throw(e))}catch(e){i(e)}}function step(e){e.done?s(e.value):adopt(e.value).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())}))});const c={headers:l};const d={schema:\"public\"};const p={autoRefreshToken:true,persistSession:true,detectSessionInUrl:true,flowType:\"implicit\"};const f={};class SupabaseClient{\n/**\n     * Create a new client for use in the browser.\n     * @param supabaseUrl The unique Supabase URL which is supplied when you create a new project in your project dashboard.\n     * @param supabaseKey The unique Supabase Key which is supplied when you create a new project in your project dashboard.\n     * @param options.db.schema You can switch in between schemas. The schema needs to be on the list of exposed schemas inside Supabase.\n     * @param options.auth.autoRefreshToken Set to \"true\" if you want to automatically refresh the token before expiring.\n     * @param options.auth.persistSession Set to \"true\" if you want to automatically save the user session into local storage.\n     * @param options.auth.detectSessionInUrl Set to \"true\" if you want to automatically detects OAuth grants in the URL and signs in the user.\n     * @param options.realtime Options passed along to realtime-js constructor.\n     * @param options.global.fetch A custom fetch implementation.\n     * @param options.global.headers Any additional headers to send with each network request.\n     */\nconstructor(e,s,n){var i,a,r,o,l,u,h,b;this.supabaseUrl=e;this.supabaseKey=s;if(!e)throw new Error(\"supabaseUrl is required.\");if(!s)throw new Error(\"supabaseKey is required.\");const g=stripTrailingSlash(e);this.realtimeUrl=`${g}/realtime/v1`.replace(/^http/i,\"ws\");this.authUrl=`${g}/auth/v1`;this.storageUrl=`${g}/storage/v1`;const v=g.match(/(supabase\\.co)|(supabase\\.in)/);if(v){const e=g.split(\".\");this.functionsUrl=`${e[0]}.functions.${e[1]}.${e[2]}`}else this.functionsUrl=`${g}/functions/v1`;const m=`sb-${new URL(this.authUrl).hostname.split(\".\")[0]}-auth-token`;const j={db:d,realtime:f,auth:Object.assign(Object.assign({},p),{storageKey:m}),global:c};const y=applySettingDefaults(null!==n&&void 0!==n?n:{},j);this.storageKey=null!==(a=null===(i=y.auth)||void 0===i?void 0:i.storageKey)&&void 0!==a?a:\"\";this.headers=null!==(o=null===(r=y.global)||void 0===r?void 0:r.headers)&&void 0!==o?o:{};this.auth=this._initSupabaseAuthClient(null!==(l=y.auth)&&void 0!==l?l:{},this.headers,null===(u=y.global)||void 0===u?void 0:u.fetch);this.fetch=fetchWithAuth(s,this._getAccessToken.bind(this),null===(h=y.global)||void 0===h?void 0:h.fetch);this.realtime=this._initRealtimeClient(Object.assign({headers:this.headers},y.realtime));this.rest=new t(`${g}/rest/v1`,{headers:this.headers,schema:null===(b=y.db)||void 0===b?void 0:b.schema,fetch:this.fetch});this._listenForAuthEvents()}get functions(){return new e(this.functionsUrl,{headers:this.headers,customFetch:this.fetch})}get storage(){return new n(this.storageUrl,this.headers,this.fetch)}from(e){return this.rest.from(e)}\n/**\n     * Perform a function call.\n     *\n     * @param fn  The function name to call.\n     * @param args  The parameters to pass to the function call.\n     * @param options.head   When set to true, no data will be returned.\n     * @param options.count  Count algorithm to use to count rows in a table.\n     *\n     */rpc(e,t={},s){return this.rest.rpc(e,t,s)}\n/**\n     * Creates a Realtime channel with Broadcast, Presence, and Postgres Changes.\n     *\n     * @param {string} name - The name of the Realtime channel.\n     * @param {Object} opts - The options to pass to the Realtime channel.\n     *\n     */channel(e,t={config:{}}){return this.realtime.channel(e,t)}getChannels(){return this.realtime.getChannels()}\n/**\n     * Unsubscribes and removes Realtime channel from Realtime client.\n     *\n     * @param {RealtimeChannel} channel - The name of the Realtime channel.\n     *\n     */removeChannel(e){return this.realtime.removeChannel(e)}removeAllChannels(){return this.realtime.removeAllChannels()}_getAccessToken(){var e,t;return h(this,void 0,void 0,(function*(){const{data:s}=yield this.auth.getSession();return null!==(t=null===(e=s.session)||void 0===e?void 0:e.access_token)&&void 0!==t?t:null}))}_initSupabaseAuthClient({autoRefreshToken:e,persistSession:t,detectSessionInUrl:s,storage:n,storageKey:i,flowType:a},r,o){const l={Authorization:`Bearer ${this.supabaseKey}`,apikey:`${this.supabaseKey}`};return new SupabaseAuthClient({url:this.authUrl,headers:Object.assign(Object.assign({},l),r),storageKey:i,autoRefreshToken:e,persistSession:t,detectSessionInUrl:s,storage:n,flowType:a,fetch:o})}_initRealtimeClient(e){return new s(this.realtimeUrl,Object.assign(Object.assign({},e),{params:Object.assign({apikey:this.supabaseKey},null===e||void 0===e?void 0:e.params)}))}_listenForAuthEvents(){let e=this.auth.onAuthStateChange(((e,t)=>{this._handleTokenChanged(e,null===t||void 0===t?void 0:t.access_token,\"CLIENT\")}));return e}_handleTokenChanged(e,t,s){if(\"TOKEN_REFRESHED\"!==e&&\"SIGNED_IN\"!==e||this.changedAccessToken===t){if(\"SIGNED_OUT\"===e){this.realtime.setAuth(this.supabaseKey);\"STORAGE\"==s&&this.auth.signOut();this.changedAccessToken=void 0}}else{this.realtime.setAuth(null!==t&&void 0!==t?t:null);this.changedAccessToken=t}}}const createClient=(e,t,s)=>new SupabaseClient(e,t,s);export{SupabaseClient,createClient};\n\n//# sourceMappingURL=index.js.map", "import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{createClient}from\"@supabase/supabase-js\";import React from\"react\";let supabase;if(typeof window!==\"undefined\"){supabase=createClient(\"https://whrmsxtfoipsarhtftdi.supabase.co\",\"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6Indocm1zeHRmb2lwc2FyaHRmdGRpIiwicm9sZSI6ImFub24iLCJpYXQiOjE3Mzc5MzA2NTMsImV4cCI6MjA1MzUwNjY1M30.823Gl-VIO5W-XCIIFIKCImQyH9Ok59maBe1xlmEx7KM\");}const Canvas=/*#__PURE__*/React.forwardRef(({onGameOver},ref)=>{const canvasRef=React.useRef(null);const gameRef=ref||React.useRef(null);React.useEffect(()=>{if(!canvasRef.current)return;const canvas=canvasRef.current;const ctx=canvas.getContext(\"2d\");const ship={position:{x:canvas.width/2,y:canvas.height/2},velocity:{x:0,y:0},angle:0,throttle:0,maxThrottle:4,speed:.075,inertia:.995,radius:20,shields:0,bulletCount:1,update(){this.position.x+=this.velocity.x;this.position.y+=this.velocity.y;this.velocity.x*=this.inertia;this.velocity.y*=this.inertia;if(this.position.x>canvas.width)this.position.x=0;else if(this.position.x<0)this.position.x=canvas.width;if(this.position.y>canvas.height)this.position.y=0;else if(this.position.y<0)this.position.y=canvas.height;},accelerate(){const throttleFactor=this.throttle/this.maxThrottle;this.velocity.x-=Math.sin(-this.angle)*this.speed*throttleFactor;this.velocity.y-=Math.cos(-this.angle)*this.speed*throttleFactor;},render(){ctx.save();ctx.translate(this.position.x,this.position.y);ctx.rotate(this.angle);ctx.strokeStyle=\"#FFF\";ctx.lineWidth=2;ctx.beginPath();ctx.moveTo(0,-15);ctx.lineTo(10,15);ctx.lineTo(5,12);ctx.lineTo(-5,12);ctx.lineTo(-10,15);ctx.closePath();ctx.stroke();if(this.throttle>0){ctx.fillStyle=\"#FFF\";for(let i=0;i<this.throttle;i++){ctx.beginPath();ctx.arc(0,25+i*8,3,0,Math.PI*2);ctx.fill();}}if(this.shields>0){ctx.setLineDash([5,5]);for(let i=0;i<this.shields;i++){ctx.beginPath();ctx.arc(0,0,this.radius+5+i*5,0,Math.PI*2);ctx.stroke();}ctx.setLineDash([]);}ctx.restore();}};const PowerUp={create(type,x,y){return{id:Math.random().toString(),type,position:{x,y},radius:10,collected:false,render(){ctx.save();ctx.translate(this.position.x,this.position.y);ctx.strokeStyle=\"#FFF\";ctx.lineWidth=2;if(this.type===\"multishot\"){ctx.beginPath();ctx.moveTo(-5,0);ctx.lineTo(5,0);ctx.moveTo(0,-5);ctx.lineTo(0,5);ctx.stroke();}else if(this.type===\"shield\"){ctx.setLineDash([2,2]);ctx.beginPath();ctx.arc(0,0,5,0,Math.PI*2);ctx.stroke();ctx.setLineDash([]);}ctx.restore();}};}};const Asteroid={create(x,y,radius=40){return{id:Math.random().toString(),position:{x,y},velocity:{x:(Math.random()-.5)*2,y:(Math.random()-.5)*2},radius,score:(80-radius)*5,update(){this.position.x+=this.velocity.x;this.position.y+=this.velocity.y;if(this.position.x>canvas.width+this.radius)this.position.x=-this.radius;else if(this.position.x<-this.radius)this.position.x=canvas.width+this.radius;if(this.position.y>canvas.height+this.radius)this.position.y=-this.radius;else if(this.position.y<-this.radius)this.position.y=canvas.height+this.radius;},render(){ctx.save();ctx.translate(this.position.x,this.position.y);ctx.strokeStyle=\"#FFF\";ctx.lineWidth=2;ctx.beginPath();for(let i=0;i<8;i++){const angle=(i+1)*Math.PI*2/8;const r=this.radius+(Math.random()*2-1)*(this.radius*.1);ctx.lineTo(Math.cos(angle)*r,Math.sin(angle)*r);}ctx.closePath();ctx.stroke();ctx.restore();}};}};const game={ship,bullets:[],asteroids:[],powerUps:[],score:0,lives:3,mousePosition:{x:0,y:0},nextPowerUpTime:0,startTime:Date.now(),isGameOver:false,createBullet(angleOffset=0){return{id:Math.random().toString(),position:{x:this.ship.position.x,y:this.ship.position.y},velocity:{x:-Math.sin(-(this.ship.angle+angleOffset))*5,y:-Math.cos(-(this.ship.angle+angleOffset))*5},radius:3,update(){this.position.x+=this.velocity.x;this.position.y+=this.velocity.y;return this.position.x>=0&&this.position.x<=canvas.width&&this.position.y>=0&&this.position.y<=canvas.height;},render(){ctx.fillStyle=\"#FFF\";ctx.beginPath();ctx.arc(this.position.x,this.position.y,this.radius,0,Math.PI*2);ctx.fill();}};},addAsteroids(count){for(let i=0;i<count;i++){const x=Math.random()*canvas.width;const y=Math.random()*canvas.height;this.asteroids.push(Asteroid.create(x,y));}},handleClick(){if(this.isGameOver)return;const spreadAngle=Math.PI/18// 10 degrees\n;for(let i=0;i<this.ship.bulletCount;i++){const offset=spreadAngle*(i-(this.ship.bulletCount-1)/2);this.bullets.push(this.createBullet(offset));}},checkCollision(obj1,obj2){const dx=obj1.position.x-obj2.position.x;const dy=obj1.position.y-obj2.position.y;const distance=Math.sqrt(dx*dx+dy*dy);return distance<obj1.radius+obj2.radius;},destroyAsteroid(asteroid){this.score+=asteroid.score;const idx=this.asteroids.indexOf(asteroid);if(idx>-1){this.asteroids.splice(idx,1);if(asteroid.radius>10){this.asteroids.push(Asteroid.create(asteroid.position.x,asteroid.position.y,asteroid.radius/2),Asteroid.create(asteroid.position.x,asteroid.position.y,asteroid.radius/2));}}},spawnPowerUp(){if(Math.random()<.5){const x=Math.random()*canvas.width;const y=Math.random()*canvas.height;const type=Math.random()<.5?\"multishot\":\"shield\";this.powerUps.push(PowerUp.create(type,x,y));}this.nextPowerUpTime=performance.now()+Math.random()*1e4+5e3;},update(){if(this.isGameOver)return;if(performance.now()>this.nextPowerUpTime){this.spawnPowerUp();}const dx=this.mousePosition.x-this.ship.position.x;const dy=this.mousePosition.y-this.ship.position.y;this.ship.angle=Math.atan2(dy,dx)+Math.PI/2;this.ship.accelerate();this.ship.update();this.powerUps=this.powerUps.filter(powerUp=>{if(!powerUp.collected&&this.checkCollision(powerUp,this.ship)){if(powerUp.type===\"multishot\"){this.ship.bulletCount++;}else if(powerUp.type===\"shield\"){this.ship.shields++;}return false;}return true;});this.bullets=this.bullets.filter(bullet=>{if(!bullet.update())return false;for(let i=this.asteroids.length-1;i>=0;i--){const asteroid=this.asteroids[i];if(this.checkCollision(bullet,asteroid)){this.destroyAsteroid(asteroid);return false;}}return true;});this.asteroids.forEach(asteroid=>{asteroid.update();if(this.checkCollision(asteroid,this.ship)){if(this.ship.shields>0){this.ship.shields--;this.destroyAsteroid(asteroid);}else{this.lives--;if(this.lives<=0){this.gameOver();}else{this.resetShip();}}}});if(this.asteroids.length===0){this.addAsteroids(3);}},resetShip(){this.ship.position={x:canvas.width/2,y:canvas.height/2};this.ship.velocity={x:0,y:0};this.ship.angle=0;this.ship.throttle=0;},gameOver(){if(this.isGameOver)return;this.isGameOver=true;const duration=Date.now()-this.startTime;console.log(\"Game Over triggered\",this.score,duration);// Trigger Framer variant\nconst gameElement=document.querySelector('[data-framer-name=\"Game\"]');if(gameElement){gameElement.setAttribute(\"data-variant\",\"GameOver\");}if(typeof onGameOver===\"function\"){setTimeout(()=>onGameOver(this.score,duration),0);}},restart(){this.bullets=[];this.powerUps=[];this.lives=3;this.score=0;this.ship.shields=0;this.ship.bulletCount=1;this.isGameOver=false;this.startTime=Date.now();this.asteroids=[];this.resetShip();this.addAsteroids(3);},render(){ctx.fillStyle=\"#000\";ctx.fillRect(0,0,canvas.width,canvas.height);this.powerUps.forEach(powerUp=>powerUp.render());this.asteroids.forEach(asteroid=>asteroid.render());this.bullets.forEach(bullet=>bullet.render());this.ship.render();ctx.font=\"20px monospace\";ctx.fillStyle=\"#FFF\";ctx.fillText(`SCORE ${this.score}`,20,canvas.height-50);ctx.fillText(`LIVES ${this.lives}`,20,canvas.height-20);}};gameRef.current=game;if(ref){ref.current=game;}game.addAsteroids(3);const resizeCanvas=()=>{canvas.width=window.innerWidth;canvas.height=window.innerHeight;if(gameRef.current){gameRef.current.ship.position={x:canvas.width/2,y:canvas.height/2};}};const handleMouseMove=e=>{const rect=canvas.getBoundingClientRect();game.mousePosition={x:e.clientX-rect.left,y:e.clientY-rect.top};};const handleKeyDown=e=>{if(e.key===\"ArrowUp\"){game.ship.throttle=Math.min(game.ship.maxThrottle,game.ship.throttle+1);}else if(e.key===\"ArrowDown\"){game.ship.throttle=Math.max(0,game.ship.throttle-1);}};resizeCanvas();window.addEventListener(\"resize\",resizeCanvas);canvas.addEventListener(\"mousemove\",handleMouseMove);canvas.addEventListener(\"click\",game.handleClick.bind(game));window.addEventListener(\"keydown\",handleKeyDown);const animate=()=>{game.update();game.render();return requestAnimationFrame(animate);};const frameId=animate();return()=>{cancelAnimationFrame(frameId);canvas.removeEventListener(\"mousemove\",handleMouseMove);canvas.removeEventListener(\"click\",game.handleClick);window.removeEventListener(\"keydown\",handleKeyDown);window.removeEventListener(\"resize\",resizeCanvas);};},[onGameOver,ref]);return /*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,className:\"w-full h-full\"});});function GameOver({score,duration,onRestart}){console.log(\"GameOver rendering:\",{score,duration});const[initials,setInitials]=React.useState(\"\");const[scores,setScores]=React.useState([]);const[saved,setSaved]=React.useState(false);const[error,setError]=React.useState(null);React.useEffect(()=>{loadScores();},[]);const loadScores=async()=>{if(!supabase)return;try{const{data,error}=await supabase.from(\"high_scores\").select(\"*\").order(\"score\",{ascending:false}).limit(10);if(error)throw error;setScores(data||[]);}catch(err){setError(err.message);}};const saveScore=async()=>{if(!supabase||initials.length!==4)return;try{const{error}=await supabase.from(\"high_scores\").insert([{score,duration,initials:initials.toUpperCase()}]);if(error)throw error;setSaved(true);loadScores();}catch(err){setError(err.message);}};return /*#__PURE__*/_jsx(\"div\",{className:\"fixed inset-0 bg-black/80 flex items-center justify-center z-[9999]\",children:/*#__PURE__*/_jsxs(\"div\",{className:\"text-white font-mono space-y-4 text-center p-8 bg-black/50 rounded-lg border border-white/20\",children:[/*#__PURE__*/_jsx(\"h2\",{className:\"text-4xl mb-8\",children:\"GAME OVER\"}),/*#__PURE__*/_jsxs(\"div\",{className:\"text-2xl\",children:[\"SCORE: \",score]}),/*#__PURE__*/_jsxs(\"div\",{className:\"text-xl\",children:[\"TIME: \",Math.floor(duration/1e3),\"s\"]}),error&&/*#__PURE__*/_jsx(\"div\",{className:\"text-red-500 text-sm\",children:error}),!saved?/*#__PURE__*/_jsxs(\"div\",{className:\"space-y-4 mt-8\",children:[/*#__PURE__*/_jsx(\"input\",{type:\"text\",value:initials,onChange:e=>setInitials(e.target.value.toUpperCase().slice(0,4)),className:\"bg-transparent border-2 p-2 text-center w-32 text-2xl\",placeholder:\"INIT\"}),/*#__PURE__*/_jsx(\"button\",{onClick:saveScore,disabled:initials.length!==4,className:`block w-full border-2 p-2 ${initials.length===4?\"hover:bg-white hover:text-black\":\"opacity-50 cursor-not-allowed\"}`,children:\"SAVE SCORE\"})]}):null,scores.length>0&&/*#__PURE__*/_jsxs(\"div\",{className:\"mt-8 space-y-2\",children:[/*#__PURE__*/_jsx(\"h3\",{className:\"text-xl mb-4\",children:\"HIGH SCORES\"}),/*#__PURE__*/_jsx(\"div\",{className:\"space-y-1\",children:scores.map(s=>/*#__PURE__*/_jsxs(\"div\",{className:`flex justify-between ${s.score===score&&s.initials===initials?\"text-yellow-500\":\"\"}`,children:[/*#__PURE__*/_jsx(\"span\",{children:s.initials}),/*#__PURE__*/_jsx(\"span\",{children:s.score})]},s.id))})]}),/*#__PURE__*/_jsx(\"button\",{onClick:onRestart,className:\"block w-full border-2 p-2 mt-8 hover:bg-white hover:text-black\",children:\"PLAY AGAIN\"})]})});}export default function Game(){const[mounted,setMounted]=React.useState(false);const[gameState,setGameState]=React.useState({isOver:false,score:0,duration:0});const gameRef=React.useRef(null);React.useEffect(()=>{setMounted(true);},[]);const handleGameOver=React.useCallback((score,duration)=>{console.log(\"handleGameOver called\",score,duration);setGameState({isOver:true,score,duration});// Trigger Framer variant\nconst gameElement=document.querySelector('[data-framer-name=\"Game\"]');if(gameElement){gameElement.setAttribute(\"data-variant\",\"GameOver\");}},[]);const handleRestart=()=>{setGameState({isOver:false,score:0,duration:0});// Reset Framer variant\nconst gameElement=document.querySelector('[data-framer-name=\"Game\"]');if(gameElement){gameElement.setAttribute(\"data-variant\",\"Default\");}if(gameRef.current){gameRef.current.restart();}};if(!mounted)return null;return /*#__PURE__*/_jsx(\"div\",{className:\"fixed inset-0 w-screen h-screen bg-black relative\",\"data-framer-name\":\"Game\",\"data-variant\":\"Default\",children:/*#__PURE__*/_jsx(Canvas,{ref:gameRef,onGameOver:handleGameOver})});}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Game\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Asteroids.map", "// Generated by Framer (5bbf1f3)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,getLoadingLazyAtYPosition,Image,ResolveLinks,RichText,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useRouter,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import Game from\"https://framerusercontent.com/modules/oEGde8LFfGZs9F6SPTzf/Jq8iKevDEwiePOHdhOw2/Asteroids.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/8VxljSvlVILXJlJ0FX4H/4pJUdCisafm5bLJdXC0p/IN5a7f2T9.js\";import Button from\"https://framerusercontent.com/modules/l8zRKnxdEmTMRvXG2ZqO/p3828vySds6Rti4MmlUc/GHFogInxW.js\";const ButtonFonts=getFonts(Button);const GameFonts=getFonts(Game);const cycleOrder=[\"cQ6RomVme\",\"RzWeh7ayp\",\"edlDus1yn\"];const serializationHash=\"framer-B9jDw\";const variantClassNames={cQ6RomVme:\"framer-v-19d8i7w\",edlDus1yn:\"framer-v-qcot6q\",RzWeh7ayp:\"framer-v-15ns8vi\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={\"Game over\":\"edlDus1yn\",\"Variant 1\":\"cQ6RomVme\",\"Variant 2\":\"RzWeh7ayp\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"cQ6RomVme\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Variants=motion.create(React.Fragment);const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"cQ6RomVme\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const AhTatzgRWgtk4yo=activeVariantCallback(async(...args)=>{setVariant(\"RzWeh7ayp\");});const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const ref1=React.useRef(null);const isDisplayed=()=>{if(baseVariant===\"RzWeh7ayp\")return false;return true;};const isDisplayed1=()=>{if(baseVariant===\"edlDus1yn\")return false;return true;};const router=useRouter();const defaultLayoutId=React.useId();const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-19d8i7w\",className,classNames),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"cQ6RomVme\",ref:ref??ref1,style:{...style},...addPropertyOverrides({edlDus1yn:{\"data-framer-name\":\"Game over\"},RzWeh7ayp:{\"data-framer-name\":\"Variant 2\"}},baseVariant,gestureVariant),children:[isDisplayed()&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-1p2ffbx\",layoutDependency:layoutDependency,layoutId:\"imYSNqQJX\",children:/*#__PURE__*/_jsxs(Image,{background:{alt:\"\",backgroundSize:1,fit:\"tile\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+(0+((componentViewport?.height||1200)-0-((componentViewport?.height||1200)-0)*1)/2)+0+((((componentViewport?.height||1200)-0)*1-0-361.8)/2+0+0)),pixelHeight:8,pixelWidth:8,positionX:\"left\",positionY:\"top\",src:\"https://framerusercontent.com/images/9fijyAy2Lp1wLcIqn0UvccBFtfM.png\"},className:\"framer-1gv6nv6\",layoutDependency:layoutDependency,layoutId:\"i1qMuLaPW\",...addPropertyOverrides({edlDus1yn:{background:{alt:\"\",backgroundSize:1,fit:\"tile\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+(0+((componentViewport?.height||1200)-0-((componentViewport?.height||1200)-0)*1)/2)+0+((((componentViewport?.height||1200)-0)*1-0-160.3)/2+0+0)),pixelHeight:8,pixelWidth:8,positionX:\"left\",positionY:\"top\",src:\"https://framerusercontent.com/images/9fijyAy2Lp1wLcIqn0UvccBFtfM.png\"}}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1qrhwwf\",layoutDependency:layoutDependency,layoutId:\"Bj4Cuwx57\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h1,{style:{\"--font-selector\":\"Q1VTVE9NO1NwZXppYSBFeHRlbmRlZCBXZWIgUmVndWxhcg==\",\"--framer-font-family\":'\"Spezia Extended Web Regular\", \"Spezia Extended Web Regular Placeholder\", sans-serif',\"--framer-font-size\":\"123px\",\"--framer-line-height\":\"1.1em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-gdpscs, rgb(255, 255, 255))\"},children:\"404\"})}),className:\"framer-98741s\",fonts:[\"CUSTOM;Spezia Extended Web Regular\"],layoutDependency:layoutDependency,layoutId:\"UqswWvu7e\",style:{\"--extracted-gdpscs\":\"rgb(255, 255, 255)\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({edlDus1yn:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h1,{style:{\"--font-selector\":\"Q1VTVE9NO1NwZXppYSBFeHRlbmRlZCBXZWIgUmVndWxhcg==\",\"--framer-font-family\":'\"Spezia Extended Web Regular\", \"Spezia Extended Web Regular Placeholder\", sans-serif',\"--framer-font-size\":\"73px\",\"--framer-line-height\":\"1.1em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-gdpscs, rgb(255, 255, 255))\"},children:\"Game over\"})})}},baseVariant,gestureVariant)}),isDisplayed1()&&/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-cfniu5\",\"data-styles-preset\":\"IN5a7f2T9\",children:\"This page has been moved or doesn't exist\"})}),className:\"framer-v094jl\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"fvt7DvOkg\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true})]}),isDisplayed1()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{height:37,y:(componentViewport?.y||0)+(0+((componentViewport?.height||1200)-0-((componentViewport?.height||1200)-0)*1)/2)+0+((((componentViewport?.height||1200)-0)*1-0-361.8)/2+0+0)+40+187.8,children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-nk1rr1-container\",layoutDependency:layoutDependency,layoutId:\"tpRwNYFvM-container\",children:/*#__PURE__*/_jsx(Button,{AhTatzgRW:AhTatzgRWgtk4yo,height:\"100%\",id:\"tpRwNYFvM\",layoutId:\"tpRwNYFvM\",style:{height:\"100%\"},variant:\"eQfA9DsjX\",width:\"100%\",ZOFrgYEq2:\"Ready Player 1\"})})}),isDisplayed1()&&/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"augiA20Il\"},implicitPathVariables:undefined}],children:resolvedLinks=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:37,y:(componentViewport?.y||0)+(0+((componentViewport?.height||1200)-0-((componentViewport?.height||1200)-0)*1)/2)+0+((((componentViewport?.height||1200)-0)*1-0-361.8)/2+0+0)+40+244.8,children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-409ug6-container\",layoutDependency:layoutDependency,layoutId:\"eJ1OuT5_p-container\",children:/*#__PURE__*/_jsx(Button,{dRa91p0fm:resolvedLinks[0],height:\"100%\",id:\"eJ1OuT5_p\",layoutId:\"eJ1OuT5_p\",style:{height:\"100%\"},variant:\"SNJMBPmtV\",width:\"100%\",ZOFrgYEq2:\"Home\"})})})})]})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1qe5sfd-container\",layoutDependency:layoutDependency,layoutId:\"xpGO9Gggj-container\",children:/*#__PURE__*/_jsx(Game,{height:\"100%\",id:\"xpGO9Gggj\",layoutId:\"xpGO9Gggj\",style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-B9jDw.framer-18zmae0, .framer-B9jDw .framer-18zmae0 { display: block; }\",\".framer-B9jDw.framer-19d8i7w { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 1200px; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 1200px; }\",\".framer-B9jDw .framer-1p2ffbx { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 20px; height: 100%; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 1px; z-index: 5; }\",\".framer-B9jDw .framer-1gv6nv6 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 20px; height: min-content; justify-content: center; overflow: visible; padding: 40px; position: relative; width: min-content; }\",\".framer-B9jDw .framer-1qrhwwf { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-B9jDw .framer-98741s, .framer-B9jDw .framer-v094jl { flex: none; height: auto; position: relative; white-space: pre; width: auto; z-index: 3; }\",\".framer-B9jDw .framer-nk1rr1-container, .framer-B9jDw .framer-409ug6-container { flex: none; height: 37px; position: relative; width: auto; }\",\".framer-B9jDw .framer-1qe5sfd-container { flex: none; height: 100%; left: 0px; pointer-events: none; position: absolute; top: 0px; width: 100%; z-index: 1; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-B9jDw.framer-19d8i7w, .framer-B9jDw .framer-1p2ffbx, .framer-B9jDw .framer-1gv6nv6, .framer-B9jDw .framer-1qrhwwf { gap: 0px; } .framer-B9jDw.framer-19d8i7w > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } .framer-B9jDw.framer-19d8i7w > :first-child { margin-left: 0px; } .framer-B9jDw.framer-19d8i7w > :last-child { margin-right: 0px; } .framer-B9jDw .framer-1p2ffbx > *, .framer-B9jDw .framer-1gv6nv6 > * { margin: 0px; margin-bottom: calc(20px / 2); margin-top: calc(20px / 2); } .framer-B9jDw .framer-1p2ffbx > :first-child, .framer-B9jDw .framer-1gv6nv6 > :first-child, .framer-B9jDw .framer-1qrhwwf > :first-child { margin-top: 0px; } .framer-B9jDw .framer-1p2ffbx > :last-child, .framer-B9jDw .framer-1gv6nv6 > :last-child, .framer-B9jDw .framer-1qrhwwf > :last-child { margin-bottom: 0px; } .framer-B9jDw .framer-1qrhwwf > * { margin: 0px; margin-bottom: calc(10px / 2); margin-top: calc(10px / 2); } }\",\".framer-B9jDw.framer-v-15ns8vi .framer-1qe5sfd-container, .framer-B9jDw.framer-v-qcot6q .framer-1qe5sfd-container { pointer-events: auto; top: -4px; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1200\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"RzWeh7ayp\":{\"layout\":[\"fixed\",\"fixed\"]},\"edlDus1yn\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerDuVlnWxx5=withCSS(Component,css,\"framer-B9jDw\");export default FramerDuVlnWxx5;FramerDuVlnWxx5.displayName=\"Game\";FramerDuVlnWxx5.defaultProps={height:1200,width:1200};addPropertyControls(FramerDuVlnWxx5,{variant:{options:[\"cQ6RomVme\",\"RzWeh7ayp\",\"edlDus1yn\"],optionTitles:[\"Variant 1\",\"Variant 2\",\"Game over\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerDuVlnWxx5,[{explicitInter:true,fonts:[{family:\"Spezia Extended Web Regular\",source:\"custom\",url:\"https://framerusercontent.com/assets/nux2vZIMQOBHUMLjnZLmVBwGLCI.ttf\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...ButtonFonts,...GameFonts,...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerDuVlnWxx5\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"1200\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicHeight\":\"1200\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"RzWeh7ayp\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"edlDus1yn\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerDisplayContentsDiv\":\"false\",\"framerComponentViewportWidth\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}", "// Generated by Framer (b0164a3)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,ComponentViewportProvider,Container,cx,GeneratedComponentContext,getFonts,PropertyOverrides,useCustomCursors,useHydratedBreakpointVariants,useLocaleInfo,withCSS}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import Game from\"#framer/local/canvasComponent/DuVlnWxx5/DuVlnWxx5.js\";import Header from\"#framer/local/canvasComponent/lMAJG4uLz/lMAJG4uLz.js\";import metadataProvider from\"#framer/local/webPageMetadata/w4rC7o9ey/w4rC7o9ey.js\";const GameFonts=getFonts(Game);const HeaderFonts=getFonts(Header);const breakpoints={FDsFC8b2L:\"(min-width: 1200px)\",nW5NaiAyH:\"(min-width: 810px) and (max-width: 1199px)\",Q4yFl9_Ug:\"(max-width: 809px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-hUYmU\";const variantClassNames={FDsFC8b2L:\"framer-v-1o13te1\",nW5NaiAyH:\"framer-v-s0140m\",Q4yFl9_Ug:\"framer-v-k4kwdj\"};const metadata=metadataProvider();const humanReadableVariantMap={Desktop:\"FDsFC8b2L\",Phone:\"Q4yFl9_Ug\",Tablet:\"nW5NaiAyH\"};const getProps=({height,id,width,...props})=>{var _humanReadableVariantMap_props_variant,_ref;return{...props,variant:(_ref=(_humanReadableVariantMap_props_variant=humanReadableVariantMap[props.variant])!==null&&_humanReadableVariantMap_props_variant!==void 0?_humanReadableVariantMap_props_variant:props.variant)!==null&&_ref!==void 0?_ref:\"FDsFC8b2L\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,...restProps}=getProps(props);React.useEffect(()=>{const metadata1=metadataProvider(undefined,activeLocale);if(metadata1.robots){let robotsTag=document.querySelector('meta[name=\"robots\"]');if(robotsTag){robotsTag.setAttribute(\"content\",metadata1.robots);}else{robotsTag=document.createElement(\"meta\");robotsTag.setAttribute(\"name\",\"robots\");robotsTag.setAttribute(\"content\",metadata1.robots);document.head.appendChild(robotsTag);}}},[undefined,activeLocale]);React.useInsertionEffect(()=>{const metadata1=metadataProvider(undefined,activeLocale);document.title=metadata1.title||\"\";if(metadata1.viewport){var _document_querySelector;(_document_querySelector=document.querySelector('meta[name=\"viewport\"]'))===null||_document_querySelector===void 0?void 0:_document_querySelector.setAttribute(\"content\",metadata1.viewport);}const bodyCls=metadata1.bodyClassName;if(bodyCls){const body=document.body;body.classList.forEach(c=>c.startsWith(\"framer-body-\")&&body.classList.remove(c));body.classList.add(`${metadata1.bodyClassName}-framer-hUYmU`);}return()=>{if(bodyCls)document.body.classList.remove(`${metadata1.bodyClassName}-framer-hUYmU`);};},[undefined,activeLocale]);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const ref1=React.useRef(null);const defaultLayoutId=React.useId();useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{primaryVariantId:\"FDsFC8b2L\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:[/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-1o13te1\",className),ref:ref!==null&&ref!==void 0?ref:ref1,style:{...style},children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:1e3,width:\"100vw\",y:0,children:/*#__PURE__*/_jsx(Container,{className:\"framer-81h8tq-container\",children:/*#__PURE__*/_jsx(Game,{height:\"100%\",id:\"TqfnuY1a8\",layoutId:\"TqfnuY1a8\",style:{height:\"100%\",width:\"100%\"},variant:\"cQ6RomVme\",width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:83,width:\"100vw\",y:0,children:/*#__PURE__*/_jsx(Container,{className:\"framer-bjlfcq-container\",layoutScroll:true,children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{nW5NaiAyH:{variant:\"pcOwYKfLX\"},Q4yFl9_Ug:{variant:\"AbFVK2MiS\"}},children:/*#__PURE__*/_jsx(Header,{height:\"100%\",id:\"Xn0iY2Rc_\",layoutId:\"Xn0iY2Rc_\",style:{height:\"100%\",width:\"100%\"},variant:\"JS1T57QgW\",width:\"100%\"})})})})]}),/*#__PURE__*/_jsx(\"div\",{id:\"overlay\"})]})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",`.${metadata.bodyClassName}-framer-hUYmU { background: var(--token-642a9dd3-03af-4d90-b6c0-541f990fb106, rgb(3, 3, 3)) /* {\"name\":\"Page Background\"} */; }`,\".framer-hUYmU.framer-1rp679x, .framer-hUYmU .framer-1rp679x { display: block; }\",\".framer-hUYmU.framer-1o13te1 { align-content: center; align-items: center; background-color: var(--token-642a9dd3-03af-4d90-b6c0-541f990fb106, #030303); display: flex; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 1200px; }\",\".framer-hUYmU .framer-81h8tq-container { flex: none; height: 100vh; position: relative; width: 100%; }\",\".framer-hUYmU .framer-bjlfcq-container { flex: none; height: 83px; left: calc(50.00000000000002% - 100% / 2); position: fixed; top: 0px; width: 100%; z-index: 10; }\",\"@supports (background: -webkit-named-image(i)) and (not (scale:1)) { .framer-hUYmU.framer-1o13te1 { gap: 0px; } .framer-hUYmU.framer-1o13te1 > * { margin: 0px; margin-bottom: calc(10px / 2); margin-top: calc(10px / 2); } .framer-hUYmU.framer-1o13te1 > :first-child { margin-top: 0px; } .framer-hUYmU.framer-1o13te1 > :last-child { margin-bottom: 0px; } }\",`@media (min-width: 810px) and (max-width: 1199px) { .${metadata.bodyClassName}-framer-hUYmU { background: var(--token-642a9dd3-03af-4d90-b6c0-541f990fb106, rgb(3, 3, 3)) /* {\"name\":\"Page Background\"} */; } .framer-hUYmU.framer-1o13te1 { width: 810px; }}`,`@media (max-width: 809px) { .${metadata.bodyClassName}-framer-hUYmU { background: var(--token-642a9dd3-03af-4d90-b6c0-541f990fb106, rgb(3, 3, 3)) /* {\"name\":\"Page Background\"} */; } .framer-hUYmU.framer-1o13te1 { width: 480px; }}`];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 800\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"nW5NaiAyH\":{\"layout\":[\"fixed\",\"auto\"]},\"Q4yFl9_Ug\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n * @framerResponsiveScreen\n */const Framerw4rC7o9ey=withCSS(Component,css,\"framer-hUYmU\");export default Framerw4rC7o9ey;Framerw4rC7o9ey.displayName=\"Page\";Framerw4rC7o9ey.defaultProps={height:800,width:1200};addFonts(Framerw4rC7o9ey,[{explicitInter:true,fonts:[]},...GameFonts,...HeaderFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Framerw4rC7o9ey\",\"slots\":[],\"annotations\":{\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"nW5NaiAyH\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"Q4yFl9_Ug\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerResponsiveScreen\":\"\",\"framerIntrinsicWidth\":\"1200\",\"framerIntrinsicHeight\":\"800\",\"framerImmutableVariables\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],
  "mappings": "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",
  "names": ["t", "n", "adopt", "e", "fulfilled", "step", "rejected", "resolveFetch", "FunctionsError", "FunctionsFetchError", "FunctionsRelayError", "FunctionsHttpError", "FunctionsClient", "o", "i", "s", "u", "a", "l", "d", "PostgrestBuilder", "s", "t", "r", "e", "a", "i", "h", "n", "l", "PostgrestTransformBuilder", "PostgrestFilterBuilder", "PostgrestQueryBuilder", "PostgrestClient", "e", "t", "o", "global", "dew", "naiveFallback", "window", "d", "dew", "e", "t", "i", "t", "r", "d", "window", "n", "c", "i", "W3CWebSocket", "e", "o", "i", "t", "t", "s", "i", "n", "o", "r", "e", "c", "a", "h", "l", "Timer", "Serializer", "Push", "callback", "d", "RealtimePresence", "_RealtimePresence", "u", "convertChangeData", "convertColumn", "convertCell", "noop$1", "toArray", "toBoolean", "toNumber", "toJson", "toTimestampString", "f", "adopt", "fulfilled", "step", "rejected", "p", "v", "m", "RealtimeChannel", "_RealtimeChannel", "onClose", "g", "noop", "RealtimeClient", "StorageError", "t", "isStorageError", "StorageApiError", "e", "StorageUnknownError", "r", "o", "adopt", "n", "fulfilled", "step", "rejected", "resolveFetch", "resolveResponse", "_getErrorMessage", "handleError", "_getRequestParams", "_handleRequest", "get", "post", "put", "remove", "StorageFileApi", "s", "u", "d", "c", "i", "a", "StorageBucketApi", "StorageClient", "e", "t", "r", "i", "adopt", "s", "fulfilled", "step", "rejected", "expiresAt", "uuid", "isBrowser", "supportsLocalStorage", "getParameterByName", "window", "resolveFetch", "looksLikeFetchResponse", "setItemAsync", "getItemAsync", "removeItemAsync", "decodeBase64URL", "o", "n", "l", "d", "u", "Deferred", "_Deferred", "decodeJWTPayload", "sleep", "retryable", "dec2hex", "generatePKCEVerifier", "sha256", "base64urlencode", "generatePKCEChallenge", "AuthError", "isAuthError", "AuthApiError", "isAuthApiError", "AuthUnknownError", "CustomAuthError", "AuthSessionMissingError", "AuthInvalidCredentialsError", "AuthImplicitGrantRedirectError", "AuthPKCEGrantCodeExchangeError", "AuthRetryableFetchError", "_getErrorMessage", "handleError", "_getRequestParams", "_request", "_handleRequest", "_sessionResponse", "hasSession", "_userResponse", "_ssoResponse", "_generateLinkResponse", "a", "_noResolveJsonResponse", "GoTrueAdminApi", "h", "c", "polyfillGlobalThis", "f", "v", "y", "GoTrueClient", "o", "l", "u", "e", "t", "s", "n", "adopt", "i", "fulfilled", "step", "rejected", "resolveFetch", "resolveHeadersConstructor", "a", "fetchWithAuth", "r", "stripTrailingSlash", "applySettingDefaults", "SupabaseAuthClient", "GoTrueClient", "h", "c", "d", "p", "f", "SupabaseClient", "b", "g", "m", "j", "y", "PostgrestClient", "FunctionsClient", "StorageClient", "RealtimeClient", "createClient", "supabase", "window", "createClient", "Canvas", "e", "onGameOver", "ref", "canvasRef", "gameRef", "canvas", "ctx", "ship", "throttleFactor", "i", "PowerUp", "type", "x", "y", "Asteroid", "radius", "angle", "r", "game", "angleOffset", "count", "spreadAngle", "offset", "obj1", "obj2", "dx", "dy", "asteroid", "idx", "powerUp", "bullet", "duration", "gameElement", "resizeCanvas", "handleMouseMove", "rect", "handleKeyDown", "animate", "frameId", "p", "Game", "mounted", "setMounted", "e", "gameState", "setGameState", "gameRef", "handleGameOver", "score", "duration", "gameElement", "handleRestart", "p", "Canvas", "ButtonFonts", "getFonts", "GHFogInxW_default", "GameFonts", "Game", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "humanReadableVariantMap", "getProps", "height", "id", "width", "props", "createLayoutDependency", "Variants", "motion", "x", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "activeVariantCallback", "delay", "useActiveVariantCallback", "AhTatzgRWgtk4yo", "args", "scopingClassNames", "cx", "ref1", "pe", "isDisplayed", "isDisplayed1", "router", "useRouter", "defaultLayoutId", "ae", "componentViewport", "useComponentViewport", "LayoutGroup", "u", "Image2", "getLoadingLazyAtYPosition", "RichText2", "ComponentViewportProvider", "ResolveLinks", "resolvedLinks", "css", "FramerDuVlnWxx5", "withCSS", "DuVlnWxx5_default", "addPropertyControls", "ControlType", "addFonts", "getFontsFromSharedStyle", "fonts", "GameFonts", "getFonts", "DuVlnWxx5_default", "HeaderFonts", "lMAJG4uLz_default", "breakpoints", "serializationHash", "variantClassNames", "metadata", "humanReadableVariantMap", "getProps", "height", "id", "width", "props", "_humanReadableVariantMap_props_variant", "_ref", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "variant", "restProps", "ue", "metadata1", "robotsTag", "ie", "_document_querySelector", "bodyCls", "body", "c", "baseVariant", "hydratedBaseVariant", "useHydratedBreakpointVariants", "breakpoints", "gestureVariant", "scopingClassNames", "cx", "ref1", "pe", "defaultLayoutId", "ae", "useCustomCursors", "p", "GeneratedComponentContext", "u", "LayoutGroup", "motion", "ComponentViewportProvider", "Container", "DuVlnWxx5_default", "PropertyOverrides2", "lMAJG4uLz_default", "css", "Framerw4rC7o9ey", "withCSS", "w4rC7o9ey_default", "addFonts", "GameFonts", "HeaderFonts", "__FramerMetadata__"]
}
