@niledatabase/nextjs 5.0.0-alpha.9 → 5.0.1-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -1,8 +1,12 @@
1
- import { Server } from '@niledatabase/server';
1
+ import { Extension } from '@niledatabase/server';
2
2
 
3
- declare function nextJs(instance: Server): {
4
- id: string;
5
- onRequest: () => Promise<void>;
3
+ declare const nextJs: Extension;
4
+
5
+ type Handlers<T = Response> = {
6
+ GET: (req: Request) => Promise<T>;
7
+ POST: (req: Request) => Promise<T>;
8
+ DELETE: (req: Request) => Promise<T>;
9
+ PUT: (req: Request) => Promise<T>;
6
10
  };
7
11
 
8
- export { nextJs };
12
+ export { type Handlers, nextJs };
package/dist/index.d.ts CHANGED
@@ -1,8 +1,12 @@
1
- import { Server } from '@niledatabase/server';
1
+ import { Extension } from '@niledatabase/server';
2
2
 
3
- declare function nextJs(instance: Server): {
4
- id: string;
5
- onRequest: () => Promise<void>;
3
+ declare const nextJs: Extension;
4
+
5
+ type Handlers<T = Response> = {
6
+ GET: (req: Request) => Promise<T>;
7
+ POST: (req: Request) => Promise<T>;
8
+ DELETE: (req: Request) => Promise<T>;
9
+ PUT: (req: Request) => Promise<T>;
6
10
  };
7
11
 
8
- export { nextJs };
12
+ export { type Handlers, nextJs };
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";var x=Object.create;var s=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var f=Object.getPrototypeOf,k=Object.prototype.hasOwnProperty;var p=(t,e)=>{for(var o in e)s(t,o,{get:e[o],enumerable:!0})},i=(t,e,o,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of C(e))!k.call(t,n)&&n!==o&&s(t,n,{get:()=>e[n],enumerable:!(r=d(e,n))||r.enumerable});return t};var u=(t,e,o)=>(o=t!=null?x(f(t)):{},i(e||!t||!t.__esModule?s(o,"default",{value:t,enumerable:!0}):o,t)),m=t=>i(s({},"__esModule",{value:!0}),t);var w={};p(w,{nextJs:()=>v});module.exports=m(w);var c=require("@niledatabase/server");function v(t){return{id:"next-js-cookies",onRequest:async()=>{let{cookies:e,headers:o}=await import("next/headers"),r=await o(),n=await e();if(t.setContext(r),!t.getContext().tenantId){let a=n.get(c.TENANT_COOKIE);a&&t.setContext({tenantId:a.value})}}}}0&&(module.exports={nextJs});
1
+ "use strict";var p=Object.create;var i=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var k=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty;var q=(e,s)=>{for(var t in s)i(e,t,{get:s[t],enumerable:!0})},T=(e,s,t,r)=>{if(s&&typeof s=="object"||typeof s=="function")for(let o of l(s))!m.call(e,o)&&o!==t&&i(e,o,{get:()=>s[o],enumerable:!(r=d(s,o))||r.enumerable});return e};var x=(e,s,t)=>(t=e!=null?p(k(e)):{},T(s||!e||!e.__esModule?i(t,"default",{value:e,enumerable:!0}):t,e)),E=e=>T(i({},"__esModule",{value:!0}),e);var u={};q(u,{nextJs:()=>h});module.exports=E(u);var n=require("@niledatabase/server");async function f({set:e}){let{cookies:s,headers:t}=await import("next/headers"),r=await t(),o=await s();e({headers:r});let a=o.get(n.TENANT_COOKIE);a&&e({tenantId:a.value})}var h=()=>({id:"next-js-cookies",withContext:f,onResponse:async({response:e},{set:s})=>{let t=e?.headers;if(t){let r=(0,n.parseToken)(t),o=(0,n.parseResetToken)(t),a=(0,n.parseCallback)(t),c=[r,o,a].filter(Boolean).join("; ");c.length&&s({headers:new Headers({cookie:c})})}}});0&&(module.exports={nextJs});
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import { Server, TENANT_COOKIE } from '@niledatabase/server';\n\nexport function nextJs(instance: Server) {\n return {\n id: 'next-js-cookies',\n onRequest: async () => {\n const { cookies, headers } = await import('next/headers');\n const headersHelper = await headers();\n const cooks = await cookies();\n instance.setContext(headersHelper);\n if (!instance.getContext().tenantId) {\n const tenantCookie = cooks.get(TENANT_COOKIE);\n if (tenantCookie) {\n instance.setContext({ tenantId: tenantCookie.value });\n }\n }\n },\n };\n}\n"],"mappings":"0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,YAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAsC,gCAE/B,SAASF,EAAOG,EAAkB,CACvC,MAAO,CACL,GAAI,kBACJ,UAAW,SAAY,CACrB,GAAM,CAAE,QAAAC,EAAS,QAAAC,CAAQ,EAAI,KAAM,QAAO,cAAc,EAClDC,EAAgB,MAAMD,EAAQ,EAC9BE,EAAQ,MAAMH,EAAQ,EAE5B,GADAD,EAAS,WAAWG,CAAa,EAC7B,CAACH,EAAS,WAAW,EAAE,SAAU,CACnC,IAAMK,EAAeD,EAAM,IAAI,eAAa,EACxCC,GACFL,EAAS,WAAW,CAAE,SAAUK,EAAa,KAAM,CAAC,CAExD,CACF,CACF,CACF","names":["index_exports","__export","nextJs","__toCommonJS","import_server","instance","cookies","headers","headersHelper","cooks","tenantCookie"]}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import {\n parseCallback,\n parseResetToken,\n parseToken,\n TENANT_COOKIE,\n} from '@niledatabase/server';\nimport type { Extension, CTX } from '@niledatabase/server';\n\nasync function nextJsHeaders({ set }: CTX) {\n const { cookies, headers } = await import('next/headers');\n const headersHelper = await headers();\n const cooks = await cookies();\n set({ headers: headersHelper });\n const tenantCookie = cooks.get(TENANT_COOKIE);\n if (tenantCookie) {\n set({ tenantId: tenantCookie.value });\n }\n}\nconst nextJs: Extension = () => {\n return {\n id: 'next-js-cookies',\n // be sure any server side request gets the headers automatically\n withContext: nextJsHeaders,\n // after the response, be sure additional calls have the correct cookies\n onResponse: async ({ response }, { set: setContext }) => {\n const resHeaders = response?.headers;\n if (resHeaders) {\n const token = parseToken(resHeaders);\n const reset = parseResetToken(resHeaders);\n const callback = parseCallback(resHeaders);\n const cookie = [token, reset, callback].filter(Boolean).join('; ');\n if (cookie.length) {\n // set this to true (only works once) since the request is 100% server side until the next request\n setContext({\n headers: new Headers({ cookie }),\n });\n }\n }\n },\n };\n};\n\nexport { nextJs };\n\nexport type Handlers<T = Response> = {\n GET: (req: Request) => Promise<T>;\n POST: (req: Request) => Promise<T>;\n DELETE: (req: Request) => Promise<T>;\n PUT: (req: Request) => Promise<T>;\n};\n"],"mappings":"0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,YAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAKO,gCAGP,eAAeC,EAAc,CAAE,IAAAC,CAAI,EAAQ,CACzC,GAAM,CAAE,QAAAC,EAAS,QAAAC,CAAQ,EAAI,KAAM,QAAO,cAAc,EAClDC,EAAgB,MAAMD,EAAQ,EAC9BE,EAAQ,MAAMH,EAAQ,EAC5BD,EAAI,CAAE,QAASG,CAAc,CAAC,EAC9B,IAAME,EAAeD,EAAM,IAAI,eAAa,EACxCC,GACFL,EAAI,CAAE,SAAUK,EAAa,KAAM,CAAC,CAExC,CACA,IAAMT,EAAoB,KACjB,CACL,GAAI,kBAEJ,YAAaG,EAEb,WAAY,MAAO,CAAE,SAAAO,CAAS,EAAG,CAAE,IAAKC,CAAW,IAAM,CACvD,IAAMC,EAAaF,GAAU,QAC7B,GAAIE,EAAY,CACd,IAAMC,KAAQ,cAAWD,CAAU,EAC7BE,KAAQ,mBAAgBF,CAAU,EAClCG,KAAW,iBAAcH,CAAU,EACnCI,EAAS,CAACH,EAAOC,EAAOC,CAAQ,EAAE,OAAO,OAAO,EAAE,KAAK,IAAI,EAC7DC,EAAO,QAETL,EAAW,CACT,QAAS,IAAI,QAAQ,CAAE,OAAAK,CAAO,CAAC,CACjC,CAAC,CAEL,CACF,CACF","names":["index_exports","__export","nextJs","__toCommonJS","import_server","nextJsHeaders","set","cookies","headers","headersHelper","cooks","tenantCookie","response","setContext","resHeaders","token","reset","callback","cookie"]}
package/dist/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
- import{TENANT_COOKIE as a}from"@niledatabase/server";function x(t){return{id:"next-js-cookies",onRequest:async()=>{let{cookies:o,headers:n}=await import("next/headers"),r=await n(),s=await o();if(t.setContext(r),!t.getContext().tenantId){let e=s.get(a);e&&t.setContext({tenantId:e.value})}}}}export{x as nextJs};
1
+ import{parseCallback as i,parseResetToken as c,parseToken as T,TENANT_COOKIE as p}from"@niledatabase/server";async function d({set:s}){let{cookies:o,headers:e}=await import("next/headers"),n=await e(),r=await o();s({headers:n});let t=r.get(p);t&&s({tenantId:t.value})}var k=()=>({id:"next-js-cookies",withContext:d,onResponse:async({response:s},{set:o})=>{let e=s?.headers;if(e){let n=T(e),r=c(e),t=i(e),a=[n,r,t].filter(Boolean).join("; ");a.length&&o({headers:new Headers({cookie:a})})}}});export{k as nextJs};
2
2
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import { Server, TENANT_COOKIE } from '@niledatabase/server';\n\nexport function nextJs(instance: Server) {\n return {\n id: 'next-js-cookies',\n onRequest: async () => {\n const { cookies, headers } = await import('next/headers');\n const headersHelper = await headers();\n const cooks = await cookies();\n instance.setContext(headersHelper);\n if (!instance.getContext().tenantId) {\n const tenantCookie = cooks.get(TENANT_COOKIE);\n if (tenantCookie) {\n instance.setContext({ tenantId: tenantCookie.value });\n }\n }\n },\n };\n}\n"],"mappings":"AAAA,OAAiB,iBAAAA,MAAqB,uBAE/B,SAASC,EAAOC,EAAkB,CACvC,MAAO,CACL,GAAI,kBACJ,UAAW,SAAY,CACrB,GAAM,CAAE,QAAAC,EAAS,QAAAC,CAAQ,EAAI,KAAM,QAAO,cAAc,EAClDC,EAAgB,MAAMD,EAAQ,EAC9BE,EAAQ,MAAMH,EAAQ,EAE5B,GADAD,EAAS,WAAWG,CAAa,EAC7B,CAACH,EAAS,WAAW,EAAE,SAAU,CACnC,IAAMK,EAAeD,EAAM,IAAIN,CAAa,EACxCO,GACFL,EAAS,WAAW,CAAE,SAAUK,EAAa,KAAM,CAAC,CAExD,CACF,CACF,CACF","names":["TENANT_COOKIE","nextJs","instance","cookies","headers","headersHelper","cooks","tenantCookie"]}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import {\n parseCallback,\n parseResetToken,\n parseToken,\n TENANT_COOKIE,\n} from '@niledatabase/server';\nimport type { Extension, CTX } from '@niledatabase/server';\n\nasync function nextJsHeaders({ set }: CTX) {\n const { cookies, headers } = await import('next/headers');\n const headersHelper = await headers();\n const cooks = await cookies();\n set({ headers: headersHelper });\n const tenantCookie = cooks.get(TENANT_COOKIE);\n if (tenantCookie) {\n set({ tenantId: tenantCookie.value });\n }\n}\nconst nextJs: Extension = () => {\n return {\n id: 'next-js-cookies',\n // be sure any server side request gets the headers automatically\n withContext: nextJsHeaders,\n // after the response, be sure additional calls have the correct cookies\n onResponse: async ({ response }, { set: setContext }) => {\n const resHeaders = response?.headers;\n if (resHeaders) {\n const token = parseToken(resHeaders);\n const reset = parseResetToken(resHeaders);\n const callback = parseCallback(resHeaders);\n const cookie = [token, reset, callback].filter(Boolean).join('; ');\n if (cookie.length) {\n // set this to true (only works once) since the request is 100% server side until the next request\n setContext({\n headers: new Headers({ cookie }),\n });\n }\n }\n },\n };\n};\n\nexport { nextJs };\n\nexport type Handlers<T = Response> = {\n GET: (req: Request) => Promise<T>;\n POST: (req: Request) => Promise<T>;\n DELETE: (req: Request) => Promise<T>;\n PUT: (req: Request) => Promise<T>;\n};\n"],"mappings":"AAAA,OACE,iBAAAA,EACA,mBAAAC,EACA,cAAAC,EACA,iBAAAC,MACK,uBAGP,eAAeC,EAAc,CAAE,IAAAC,CAAI,EAAQ,CACzC,GAAM,CAAE,QAAAC,EAAS,QAAAC,CAAQ,EAAI,KAAM,QAAO,cAAc,EAClDC,EAAgB,MAAMD,EAAQ,EAC9BE,EAAQ,MAAMH,EAAQ,EAC5BD,EAAI,CAAE,QAASG,CAAc,CAAC,EAC9B,IAAME,EAAeD,EAAM,IAAIN,CAAa,EACxCO,GACFL,EAAI,CAAE,SAAUK,EAAa,KAAM,CAAC,CAExC,CACA,IAAMC,EAAoB,KACjB,CACL,GAAI,kBAEJ,YAAaP,EAEb,WAAY,MAAO,CAAE,SAAAQ,CAAS,EAAG,CAAE,IAAKC,CAAW,IAAM,CACvD,IAAMC,EAAaF,GAAU,QAC7B,GAAIE,EAAY,CACd,IAAMC,EAAQb,EAAWY,CAAU,EAC7BE,EAAQf,EAAgBa,CAAU,EAClCG,EAAWjB,EAAcc,CAAU,EACnCI,EAAS,CAACH,EAAOC,EAAOC,CAAQ,EAAE,OAAO,OAAO,EAAE,KAAK,IAAI,EAC7DC,EAAO,QAETL,EAAW,CACT,QAAS,IAAI,QAAQ,CAAE,OAAAK,CAAO,CAAC,CACjC,CAAC,CAEL,CACF,CACF","names":["parseCallback","parseResetToken","parseToken","TENANT_COOKIE","nextJsHeaders","set","cookies","headers","headersHelper","cooks","tenantCookie","nextJs","response","setContext","resHeaders","token","reset","callback","cookie"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@niledatabase/nextjs",
3
- "version": "5.0.0-alpha.9",
3
+ "version": "5.0.1-alpha.0",
4
4
  "license": "MIT",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -11,6 +11,9 @@
11
11
  "import": "./dist/index.mjs"
12
12
  }
13
13
  },
14
+ "files": [
15
+ "dist"
16
+ ],
14
17
  "prettier": {
15
18
  "printWidth": 80,
16
19
  "semi": true,
@@ -31,12 +34,12 @@
31
34
  "access": "public"
32
35
  },
33
36
  "peerDependencies": {
34
- "@niledatabase/server": "*",
37
+ "@niledatabase/server": ">=5.0.0-alpha",
35
38
  "next": "^15"
36
39
  },
37
40
  "devDependencies": {
38
41
  "next": "^15.3.3",
39
42
  "tsup": "^8.5.0"
40
43
  },
41
- "gitHead": "0a9e4f3a9099ec5c76f55535b17c9dd32c5cc030"
44
+ "gitHead": "e007e8aeaaecfab54afd7321dd7def184149514e"
42
45
  }
package/CHANGELOG.md DELETED
@@ -1,36 +0,0 @@
1
- # Change Log
2
-
3
- All notable changes to this project will be documented in this file.
4
- See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
-
6
- # [5.0.0-alpha.9](https://github.com/niledatabase/nile-js/compare/v5.0.0-alpha.8...v5.0.0-alpha.9) (2025-06-16)
7
-
8
- **Note:** Version bump only for package @niledatabase/nextjs
9
-
10
- # [5.0.0-alpha.8](https://github.com/niledatabase/nile-js/compare/v5.0.0-alpha.7...v5.0.0-alpha.8) (2025-06-12)
11
-
12
- **Note:** Version bump only for package @niledatabase/nextjs
13
-
14
- # [5.0.0-alpha.7](https://github.com/niledatabase/nile-js/compare/v5.0.0-alpha.6...v5.0.0-alpha.7) (2025-06-11)
15
-
16
- ### Bug Fixes
17
-
18
- - **server:** update request params from context mutation ([6b9cdf6](https://github.com/niledatabase/nile-js/commit/6b9cdf672f1ace1adfd197f47fd3c216d89520aa))
19
-
20
- # [5.0.0-alpha.6](https://github.com/niledatabase/nile-js/compare/v5.0.0-alpha.5...v5.0.0-alpha.6) (2025-06-11)
21
-
22
- ### Bug Fixes
23
-
24
- - **server:** move logging to the config object ([6e3e380](https://github.com/niledatabase/nile-js/commit/6e3e38014f5b9795552af0a7b97e2d3fe6cd1a88))
25
-
26
- # [5.0.0-alpha.5](https://github.com/niledatabase/nile-js/compare/v5.0.0-alpha.4...v5.0.0-alpha.5) (2025-06-10)
27
-
28
- ### Bug Fixes
29
-
30
- - **nextjs:** build and export correctly ([c522c5e](https://github.com/niledatabase/nile-js/commit/c522c5e485bea75b0fdf86cfcd6b0af662f5a0b5))
31
-
32
- # [5.0.0-alpha.4](https://github.com/niledatabase/nile-js/compare/v5.0.0-alpha.3...v5.0.0-alpha.4) (2025-06-10)
33
-
34
- ### Features
35
-
36
- - **server:** invites ([c10f598](https://github.com/niledatabase/nile-js/commit/c10f5980bcbc55ed436ce8cceca4111aa8e6a276))
package/src/index.ts DELETED
@@ -1,19 +0,0 @@
1
- import { Server, TENANT_COOKIE } from '@niledatabase/server';
2
-
3
- export function nextJs(instance: Server) {
4
- return {
5
- id: 'next-js-cookies',
6
- onRequest: async () => {
7
- const { cookies, headers } = await import('next/headers');
8
- const headersHelper = await headers();
9
- const cooks = await cookies();
10
- instance.setContext(headersHelper);
11
- if (!instance.getContext().tenantId) {
12
- const tenantCookie = cooks.get(TENANT_COOKIE);
13
- if (tenantCookie) {
14
- instance.setContext({ tenantId: tenantCookie.value });
15
- }
16
- }
17
- },
18
- };
19
- }
package/tsconfig.json DELETED
@@ -1,30 +0,0 @@
1
- {
2
- "extends": "../../tsconfig",
3
- // see https://www.typescriptlang.org/tsconfig to better understand tsconfigs
4
- "include": ["src/**/*"],
5
- "compilerOptions": {
6
- "importHelpers": true,
7
- // output .d.ts declaration files for consumers
8
- "declaration": true,
9
- // output .js.map sourcemap files for consumers
10
- "sourceMap": true,
11
- // stricter type-checking for stronger correctness. Recommended by TS
12
- "strict": true,
13
- // linter checks for common issues
14
- "noImplicitReturns": true,
15
- "noFallthroughCasesInSwitch": true,
16
- // noUnused* overlap with @typescript-eslint/no-unused-vars, can disable if duplicative
17
- "noUnusedLocals": false,
18
- // set to false for code generation
19
- "noUnusedParameters": false,
20
- // interop between ESM and CJS modules. Recommended by TS
21
- "esModuleInterop": true,
22
- // significant perf increase by skipping checking .d.ts files, particularly those in node_modules. Recommended by TS
23
- "skipLibCheck": true,
24
- // error out if import and file system have a casing mismatch. Recommended by TS
25
- "forceConsistentCasingInFileNames": true,
26
- // `dts build` ignores this option, but it is commonly used when type-checking separately with `tsc`
27
- "noEmit": false,
28
- }
29
-
30
- }
package/tsup.config.js DELETED
@@ -1,10 +0,0 @@
1
- import { defineConfig } from 'tsup';
2
-
3
- export default defineConfig({
4
- minify: true,
5
- target: 'es2022',
6
- sourcemap: true,
7
- dts: true,
8
- format: ['esm', 'cjs'],
9
- external: ['next', 'next/headers', 'next/navigation', 'next/server'],
10
- });