dineway 0.1.3
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/LICENSE +9 -0
- package/README.md +89 -0
- package/dist/adapters-BlzWJG82.d.mts +106 -0
- package/dist/apply-CAPvMfoU.mjs +1339 -0
- package/dist/astro/index.d.mts +50 -0
- package/dist/astro/index.mjs +1326 -0
- package/dist/astro/middleware/auth.d.mts +30 -0
- package/dist/astro/middleware/auth.mjs +708 -0
- package/dist/astro/middleware/redirect.d.mts +21 -0
- package/dist/astro/middleware/redirect.mjs +62 -0
- package/dist/astro/middleware/request-context.d.mts +17 -0
- package/dist/astro/middleware/request-context.mjs +1371 -0
- package/dist/astro/middleware/setup.d.mts +19 -0
- package/dist/astro/middleware/setup.mjs +46 -0
- package/dist/astro/middleware.d.mts +12 -0
- package/dist/astro/middleware.mjs +1716 -0
- package/dist/astro/types.d.mts +269 -0
- package/dist/astro/types.mjs +1 -0
- package/dist/base64-F8-DUraK.mjs +58 -0
- package/dist/byline-DeWCMU_i.mjs +234 -0
- package/dist/bylines-DyqBV9EQ.mjs +137 -0
- package/dist/chunk-ClPoSABd.mjs +21 -0
- package/dist/cli/index.d.mts +1 -0
- package/dist/cli/index.mjs +3987 -0
- package/dist/client/external-auth-headers.d.mts +38 -0
- package/dist/client/external-auth-headers.mjs +101 -0
- package/dist/client/index.d.mts +397 -0
- package/dist/client/index.mjs +345 -0
- package/dist/config-Cq8H0SfX.mjs +46 -0
- package/dist/connection-C9pxzuag.mjs +52 -0
- package/dist/content-zSgdNmnt.mjs +836 -0
- package/dist/db/index.d.mts +4 -0
- package/dist/db/index.mjs +62 -0
- package/dist/db/libsql.d.mts +10 -0
- package/dist/db/libsql.mjs +21 -0
- package/dist/db/postgres.d.mts +10 -0
- package/dist/db/postgres.mjs +29 -0
- package/dist/db/sqlite.d.mts +10 -0
- package/dist/db/sqlite.mjs +15 -0
- package/dist/default-WYlzADZL.mjs +80 -0
- package/dist/dialect-helpers-B9uSp2GJ.mjs +89 -0
- package/dist/error-DrxtnGPg.mjs +26 -0
- package/dist/index-C-jx21qs.d.mts +4771 -0
- package/dist/index.d.mts +16 -0
- package/dist/index.mjs +30 -0
- package/dist/load-C6FCD1FU.mjs +27 -0
- package/dist/loader-qKmo0wAY.mjs +446 -0
- package/dist/manifest-schema-CTSEyIJ3.mjs +186 -0
- package/dist/media/index.d.mts +25 -0
- package/dist/media/index.mjs +54 -0
- package/dist/media/local-runtime.d.mts +38 -0
- package/dist/media/local-runtime.mjs +132 -0
- package/dist/media-DMTr80Gv.mjs +199 -0
- package/dist/mode-BlyYtIFO.mjs +22 -0
- package/dist/page/index.d.mts +148 -0
- package/dist/page/index.mjs +419 -0
- package/dist/placeholder-B3knXwNc.mjs +267 -0
- package/dist/placeholder-bOx1xCTY.d.mts +283 -0
- package/dist/plugin-utils.d.mts +57 -0
- package/dist/plugin-utils.mjs +77 -0
- package/dist/plugins/adapt-sandbox-entry.d.mts +21 -0
- package/dist/plugins/adapt-sandbox-entry.mjs +112 -0
- package/dist/query-BiaPl_g2.mjs +459 -0
- package/dist/redirect-JPqLAbxa.mjs +328 -0
- package/dist/registry-DSd1GWB8.mjs +851 -0
- package/dist/request-context.d.mts +49 -0
- package/dist/request-context.mjs +42 -0
- package/dist/runner-B5l1JfOj.d.mts +26 -0
- package/dist/runner-BGUGywgG.mjs +1529 -0
- package/dist/runtime.d.mts +25 -0
- package/dist/runtime.mjs +41 -0
- package/dist/search-BNruJHDL.mjs +11054 -0
- package/dist/seed/index.d.mts +3 -0
- package/dist/seed/index.mjs +15 -0
- package/dist/seo/index.d.mts +69 -0
- package/dist/seo/index.mjs +69 -0
- package/dist/storage/local.d.mts +38 -0
- package/dist/storage/local.mjs +165 -0
- package/dist/storage/s3.d.mts +31 -0
- package/dist/storage/s3.mjs +174 -0
- package/dist/tokens-4vgYuXsZ.mjs +170 -0
- package/dist/transport-C5FYnid7.mjs +417 -0
- package/dist/transport-gIL-e43D.d.mts +41 -0
- package/dist/types-BawVha09.mjs +30 -0
- package/dist/types-BgQeVaPj.d.mts +192 -0
- package/dist/types-CLLdsG3g.d.mts +103 -0
- package/dist/types-D38djUXv.d.mts +1196 -0
- package/dist/types-DShnjzb6.mjs +15 -0
- package/dist/types-DkvMXalq.d.mts +425 -0
- package/dist/types-DuNbGKjF.mjs +74 -0
- package/dist/types-ju-_ORz7.d.mts +182 -0
- package/dist/validate-CXnRKfJK.mjs +327 -0
- package/dist/validate-CqRJb_xU.mjs +96 -0
- package/dist/validate-DVKJJ-M_.d.mts +377 -0
- package/locals.d.ts +47 -0
- package/package.json +313 -0
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import * as astro from "astro";
|
|
2
|
+
|
|
3
|
+
//#region src/astro/middleware/setup.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* Setup detection middleware
|
|
6
|
+
*
|
|
7
|
+
* Redirects to setup wizard if the site hasn't been set up yet.
|
|
8
|
+
* Checks both "dineway:setup_complete" option AND user existence.
|
|
9
|
+
*
|
|
10
|
+
* Detection logic (in order):
|
|
11
|
+
* 1. Does options table exist? No → setup needed
|
|
12
|
+
* 2. Is setup_complete true? No → setup needed
|
|
13
|
+
* 3. In passkey mode: Are there any users? No → setup needed
|
|
14
|
+
* In Access mode: Skip user check (first user created on first login)
|
|
15
|
+
* 4. Proceed to admin
|
|
16
|
+
*/
|
|
17
|
+
declare const onRequest: astro.MiddlewareHandler;
|
|
18
|
+
//#endregion
|
|
19
|
+
export { onRequest };
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { t as getAuthMode } from "../../mode-BlyYtIFO.mjs";
|
|
2
|
+
import { defineMiddleware } from "astro:middleware";
|
|
3
|
+
|
|
4
|
+
//#region src/astro/middleware/setup.ts
|
|
5
|
+
/**
|
|
6
|
+
* Setup detection middleware
|
|
7
|
+
*
|
|
8
|
+
* Redirects to setup wizard if the site hasn't been set up yet.
|
|
9
|
+
* Checks both "dineway:setup_complete" option AND user existence.
|
|
10
|
+
*
|
|
11
|
+
* Detection logic (in order):
|
|
12
|
+
* 1. Does options table exist? No → setup needed
|
|
13
|
+
* 2. Is setup_complete true? No → setup needed
|
|
14
|
+
* 3. In passkey mode: Are there any users? No → setup needed
|
|
15
|
+
* In Access mode: Skip user check (first user created on first login)
|
|
16
|
+
* 4. Proceed to admin
|
|
17
|
+
*/
|
|
18
|
+
const onRequest = defineMiddleware(async (context, next) => {
|
|
19
|
+
const isAdminRoute = context.url.pathname.startsWith("/_dineway/admin");
|
|
20
|
+
const isSetupRoute = context.url.pathname.startsWith("/_dineway/admin/setup");
|
|
21
|
+
if (isAdminRoute && !isSetupRoute) {
|
|
22
|
+
const { dineway } = context.locals;
|
|
23
|
+
if (!dineway?.db) return next();
|
|
24
|
+
try {
|
|
25
|
+
const setupComplete = await dineway.db.selectFrom("options").select("value").where("name", "=", "dineway:setup_complete").executeTakeFirst();
|
|
26
|
+
if (!(setupComplete && (() => {
|
|
27
|
+
try {
|
|
28
|
+
const parsed = JSON.parse(setupComplete.value);
|
|
29
|
+
return parsed === true || parsed === "true";
|
|
30
|
+
} catch {
|
|
31
|
+
return false;
|
|
32
|
+
}
|
|
33
|
+
})())) return context.redirect("/_dineway/admin/setup");
|
|
34
|
+
if (getAuthMode(dineway.config).type === "passkey") {
|
|
35
|
+
if ((await dineway.db.selectFrom("users").select((eb) => eb.fn.countAll().as("count")).executeTakeFirstOrThrow()).count === 0) return context.redirect("/_dineway/admin/setup");
|
|
36
|
+
}
|
|
37
|
+
} catch (error) {
|
|
38
|
+
if (error instanceof Error && error.message.includes("no such table")) return context.redirect("/_dineway/admin/setup");
|
|
39
|
+
console.error("Setup middleware error:", error);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return next();
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
//#endregion
|
|
46
|
+
export { onRequest };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as astro from "astro";
|
|
2
|
+
|
|
3
|
+
//#region src/astro/middleware.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* Dineway middleware
|
|
6
|
+
*
|
|
7
|
+
* Thin wrapper that initializes DinewayRuntime and attaches it to locals.
|
|
8
|
+
* All heavy lifting happens in DinewayRuntime.
|
|
9
|
+
*/
|
|
10
|
+
declare const onRequest: astro.MiddlewareHandler;
|
|
11
|
+
//#endregion
|
|
12
|
+
export { onRequest as default, onRequest };
|