@farm.js/supabase 0.1.0-beta.107 → 0.1.0-beta.109
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +31 -3
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
Supabase integration for Farm.js
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
See [Stability and Support](https://farmjs.dev/docs/stability) for what this package guarantees.
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
|
-
npm install @farm.js/supabase
|
|
8
|
+
npm install @farm.js/supabase
|
|
9
9
|
```
|
|
10
10
|
|
|
11
11
|
See the [Farm.js repository](https://github.com/farming-labs/farm.js) for documentation, examples, and support.
|
package/dist/index.d.ts
CHANGED
|
@@ -63,7 +63,7 @@ export declare function supabase(input?: SupabaseIntegrationInput): import("@far
|
|
|
63
63
|
providers: string[];
|
|
64
64
|
pages: ResolvedSupabasePages;
|
|
65
65
|
};
|
|
66
|
-
config: import("@farm.js/core").FarmIntegrationConfigDefinition<ResolvedSupabaseEnv, import("@farm.js/core").
|
|
66
|
+
config: import("@farm.js/core").FarmIntegrationConfigDefinition<ResolvedSupabaseEnv, import("@farm.js/core").FarmSchema | undefined>;
|
|
67
67
|
api: {
|
|
68
68
|
[x: string]: {
|
|
69
69
|
post: {
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAsB,MAAM,eAAe,CAAC;AACvE,OAAO,EAGL,KAAK,6BAA6B,EAClC,KAAK,qBAAqB,EAC3B,MAAM,eAAe,CAAC;AAsCvB,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,yBAAyB,GAAG,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9E,MAAM,MAAM,gCAAgC,GAAG,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;AAExF,MAAM,WAAW,kCAAkC;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,OAAO,kBAAkB,CAAC;IACxC,OAAO,EAAE,gCAAgC,CAAC;CAC3C;AAED;;;;;GAKG;AACH,MAAM,MAAM,2BAA2B,GAAG,CACxC,OAAO,EAAE,kCAAkC,KACxC,yBAAyB,CAAC;AAE/B,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,EAAE,2BAA2B,CAAC;IACvC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,wBAAwB,CAAC;IACjC;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,GAAG,CAAC,EAAE,qBAAqB,CAAC;CAC7B;AAED,UAAU,mBAAmB;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,qBAAqB;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAsB,MAAM,eAAe,CAAC;AACvE,OAAO,EAGL,KAAK,6BAA6B,EAClC,KAAK,qBAAqB,EAC3B,MAAM,eAAe,CAAC;AAsCvB,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,yBAAyB,GAAG,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9E,MAAM,MAAM,gCAAgC,GAAG,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;AAExF,MAAM,WAAW,kCAAkC;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,OAAO,kBAAkB,CAAC;IACxC,OAAO,EAAE,gCAAgC,CAAC;CAC3C;AAED;;;;;GAKG;AACH,MAAM,MAAM,2BAA2B,GAAG,CACxC,OAAO,EAAE,kCAAkC,KACxC,yBAAyB,CAAC;AAE/B,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,EAAE,2BAA2B,CAAC;IACvC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,wBAAwB,CAAC;IACjC;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,GAAG,CAAC,EAAE,qBAAqB,CAAC;CAC7B;AAED,UAAU,mBAAmB;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,qBAAqB;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAmwBD,wBAAgB,QAAQ,CAAC,KAAK,GAAE,wBAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAuG7B,OAAO,WAAW,6BAA6B;;;;0BA+czC,OAAO,WAAW,6BAA6B;;GAgDpF"}
|
package/dist/index.js
CHANGED
|
@@ -609,14 +609,35 @@ function createSupabaseHandler(context, env, instance) {
|
|
|
609
609
|
setCookies,
|
|
610
610
|
};
|
|
611
611
|
}
|
|
612
|
+
async function readSupabaseJsonObject(request) {
|
|
613
|
+
try {
|
|
614
|
+
const body = await request.json();
|
|
615
|
+
if (body && typeof body === "object" && !Array.isArray(body)) {
|
|
616
|
+
return body;
|
|
617
|
+
}
|
|
618
|
+
}
|
|
619
|
+
catch {
|
|
620
|
+
// Report malformed input below without leaking the parser error.
|
|
621
|
+
}
|
|
622
|
+
return Response.json({ error: "Supabase auth request body must be a valid JSON object." }, { status: 400 });
|
|
623
|
+
}
|
|
612
624
|
async function parseEmailPasswordRequest(request) {
|
|
613
625
|
const contentType = request.headers.get("content-type") || "";
|
|
614
626
|
let payload = {};
|
|
615
627
|
if (contentType.includes("application/json")) {
|
|
616
|
-
|
|
628
|
+
const parsedBody = await readSupabaseJsonObject(request);
|
|
629
|
+
if (parsedBody instanceof Response)
|
|
630
|
+
return parsedBody;
|
|
631
|
+
payload = parsedBody;
|
|
617
632
|
}
|
|
618
633
|
else {
|
|
619
|
-
|
|
634
|
+
let formData;
|
|
635
|
+
try {
|
|
636
|
+
formData = await request.formData();
|
|
637
|
+
}
|
|
638
|
+
catch {
|
|
639
|
+
return Response.json({ error: "Supabase auth request body must be form data or a JSON object." }, { status: 400 });
|
|
640
|
+
}
|
|
620
641
|
formData.forEach((value, key) => {
|
|
621
642
|
payload[key] = value;
|
|
622
643
|
});
|
|
@@ -734,6 +755,8 @@ export function supabase(input = {}) {
|
|
|
734
755
|
return rejected;
|
|
735
756
|
}
|
|
736
757
|
const parsedRequest = await parseEmailPasswordRequest(request);
|
|
758
|
+
if (parsedRequest instanceof Response)
|
|
759
|
+
return parsedRequest;
|
|
737
760
|
if (!parsedRequest.ok) {
|
|
738
761
|
if (clientRequest) {
|
|
739
762
|
return jsonError(parsedRequest.message, 400);
|
|
@@ -890,6 +913,8 @@ export function supabase(input = {}) {
|
|
|
890
913
|
return rejected;
|
|
891
914
|
}
|
|
892
915
|
const parsedRequest = await parseEmailPasswordRequest(context.request);
|
|
916
|
+
if (parsedRequest instanceof Response)
|
|
917
|
+
return parsedRequest;
|
|
893
918
|
if (!parsedRequest.ok) {
|
|
894
919
|
if (clientRequest) {
|
|
895
920
|
return jsonError(parsedRequest.message, 400);
|
|
@@ -1031,7 +1056,10 @@ export function supabase(input = {}) {
|
|
|
1031
1056
|
if (request.method === "POST") {
|
|
1032
1057
|
const contentType = context.request.headers.get("content-type") || "";
|
|
1033
1058
|
if (contentType.includes("application/json")) {
|
|
1034
|
-
const
|
|
1059
|
+
const parsedBody = await readSupabaseJsonObject(context.request);
|
|
1060
|
+
if (parsedBody instanceof Response)
|
|
1061
|
+
return parsedBody;
|
|
1062
|
+
const payload = parsedBody;
|
|
1035
1063
|
returnTo = getReturnTo(payload.returnTo, returnTo);
|
|
1036
1064
|
}
|
|
1037
1065
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@farm.js/supabase",
|
|
3
|
-
"version": "0.1.0-beta.
|
|
3
|
+
"version": "0.1.0-beta.109",
|
|
4
4
|
"description": "Supabase integration for Farm.js",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -31,13 +31,13 @@
|
|
|
31
31
|
"dependencies": {
|
|
32
32
|
"@supabase/ssr": "^0.9.0",
|
|
33
33
|
"@supabase/supabase-js": "^2.99.2",
|
|
34
|
-
"@farm.js/core": "0.1.0-beta.
|
|
35
|
-
"@farm.js/integration-utils": "0.1.0-beta.
|
|
34
|
+
"@farm.js/core": "0.1.0-beta.109",
|
|
35
|
+
"@farm.js/integration-utils": "0.1.0-beta.109"
|
|
36
36
|
},
|
|
37
37
|
"scripts": {
|
|
38
38
|
"build": "node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\" && tsc",
|
|
39
39
|
"dev": "tsc --watch",
|
|
40
40
|
"type-check": "tsc --noEmit",
|
|
41
|
-
"test": "
|
|
41
|
+
"test": "pnpm run build && node --test test/*.test.mjs"
|
|
42
42
|
}
|
|
43
43
|
}
|