@getstrata/bootstrap 0.2.51 → 0.2.52
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/CHANGELOG.md +6 -0
- package/dist/bootstrap/web/routing.d.ts +7 -1
- package/dist/entries/context.js +16 -2
- package/dist/entries/createRoutes.js +4 -4
- package/dist/entries/createWebRoutes.js +2 -2
- package/dist/entries/dependencies.js +16 -2
- package/dist/entries/providers/view.js +16 -2
- package/dist/entries/providers.js +16 -2
- package/dist/entries/web/server.js +31 -14
- package/dist/index.js +49 -18
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# @getstrata/bootstrap changelog
|
|
2
2
|
|
|
3
|
+
## 0.2.52
|
|
4
|
+
|
|
5
|
+
- View provider registers `configureWebErrorView` so `errors/*.eta` render through the app Eta layout. `EtaViewEngine` receives `Request` from the layout-data resolver.
|
|
6
|
+
- `createWebServer` unknown routes and null handlers return styled HTML 404s and run inside request ALS so `configureWebLayoutData` can read the session cookie.
|
|
7
|
+
- `wrapSecuredRouteModelByKey` is documented as the wrong default for public HTML show pages; a missing model is a styled 404 and HTML/composite GET ETags stay off.
|
|
8
|
+
|
|
3
9
|
## 0.2.51
|
|
4
10
|
|
|
5
11
|
- `createCookieSessionAuthManager` returns `CookieSessionAuthManager` (`signIn`, `signOut`, `signInRedirect`, `signOutRedirect`). Controllers no longer need a local cookie helper.
|
|
@@ -9,10 +9,16 @@ export declare function routeParams(request: Request): Record<string, string>;
|
|
|
9
9
|
* Mutates the request in place so instanceof Request and Bun internals stay valid.
|
|
10
10
|
*/
|
|
11
11
|
export declare function toRouteRequest<TParams extends Record<string, string>>(request: Request): RouteRequest<TParams>;
|
|
12
|
-
/**
|
|
12
|
+
/**
|
|
13
|
+
* Laravel-style secured route-model binding for string keys (slugs, UUIDs).
|
|
14
|
+
* Public HTML show pages should look up the model in the controller instead.
|
|
15
|
+
* If this wrapper is still used on HTML, a missing model becomes a styled 404
|
|
16
|
+
* and GET ETags are skipped for HTML / composite objects unless `etag: true`.
|
|
17
|
+
*/
|
|
13
18
|
export declare function wrapSecuredRouteModelByKey<TParams extends Record<string, string>, TModel, TParam extends keyof TParams & string>(param: TParam, resolver: (key: string, request: RouteRequest<TParams>) => Promise<TModel>, authorization: {
|
|
14
19
|
resource: string;
|
|
15
20
|
action: "view" | "create" | "update" | "delete";
|
|
21
|
+
etag?: boolean;
|
|
16
22
|
}, handler: (request: RouteRequest<TParams>, model: TModel) => Response | Promise<Response>): RouteHandler;
|
|
17
23
|
/** Web group (CSRF + flash + HTML errors) plus login throttle. Do not wrap with wrapWeb again. */
|
|
18
24
|
export declare function wrapWebLogin(kernel: HttpKernel, handler: RouteHandler, onThrottled: (request: Request) => Response | Promise<Response>): RouteHandler;
|
package/dist/entries/context.js
CHANGED
|
@@ -460,7 +460,13 @@ var storage_default = storageProvider;
|
|
|
460
460
|
|
|
461
461
|
// ../../src/bootstrap/providers/view.ts
|
|
462
462
|
import { currentRequestMeta } from "@getstrata/core/http/requestMetaContext";
|
|
463
|
-
import {
|
|
463
|
+
import {
|
|
464
|
+
configureWebErrorView,
|
|
465
|
+
DEFAULT_VIEWS_DIRECTORY,
|
|
466
|
+
EtaViewEngine,
|
|
467
|
+
errorTemplateName,
|
|
468
|
+
resolveWebLayoutData
|
|
469
|
+
} from "@getstrata/core/view";
|
|
464
470
|
|
|
465
471
|
// ../../src/config/frontend.ts
|
|
466
472
|
function readFrontendMode() {
|
|
@@ -491,7 +497,15 @@ var viewProvider = {
|
|
|
491
497
|
}
|
|
492
498
|
const viewsDirectory = process.env.VIEW_DIRECTORY?.trim() || DEFAULT_VIEWS_DIRECTORY;
|
|
493
499
|
config.set(VIEW_DIRECTORY_CONFIG_KEY, viewsDirectory);
|
|
494
|
-
|
|
500
|
+
const engine = new EtaViewEngine(viewsDirectory, (request) => resolveWebLayoutData(container, request ?? currentRequestMeta().request));
|
|
501
|
+
container.set(CORE_VIEW_TOKEN, engine);
|
|
502
|
+
configureWebErrorView({
|
|
503
|
+
render: async (input) => engine.render(errorTemplateName(input.status), {
|
|
504
|
+
title: input.title,
|
|
505
|
+
message: input.message,
|
|
506
|
+
errors: input.errors
|
|
507
|
+
})
|
|
508
|
+
});
|
|
495
509
|
}
|
|
496
510
|
};
|
|
497
511
|
|
|
@@ -4,7 +4,7 @@ var __jsonParse = (a) => JSON.parse(a);
|
|
|
4
4
|
// ../../src/bootstrap/createRoutes.ts
|
|
5
5
|
import { applyMiddlewareToRoutes as applyMiddlewareToRoutes3 } from "@getstrata/core/http/middleware";
|
|
6
6
|
import { jsonResponse as jsonResponse4 } from "@getstrata/core/http/response";
|
|
7
|
-
import {
|
|
7
|
+
import { notFoundHtmlResponse as notFoundHtmlResponse2 } from "@getstrata/core/view";
|
|
8
8
|
|
|
9
9
|
// ../../index.html
|
|
10
10
|
var strata_default = __jsonParse("{\"index\":\"_.._/_.._/index.html\",\"files\":[{\"input\":\"../../index.html\",\"path\":\"./index-sfreg6q3.js\",\"loader\":\"js\",\"isEntry\":true,\"headers\":{\"etag\":\"Oc_YLpCmV6M\",\"content-type\":\"text/javascript;charset=utf-8\"}},{\"input\":\"../../index.html\",\"path\":\"_.._/_.._/index.html\",\"loader\":\"html\",\"isEntry\":true,\"headers\":{\"etag\":\"rWY90LWIcx8\",\"content-type\":\"text/html;charset=utf-8\"}}]}");
|
|
@@ -508,7 +508,7 @@ function mergeSpaRoutes(dependencies, routes) {
|
|
|
508
508
|
|
|
509
509
|
// ../../src/bootstrap/createWebRoutes.ts
|
|
510
510
|
import { join as join3 } from "path";
|
|
511
|
-
import {
|
|
511
|
+
import { notFoundHtmlResponse } from "@getstrata/core/view";
|
|
512
512
|
|
|
513
513
|
// ../../src/bootstrap/buildWebModuleRoutes.ts
|
|
514
514
|
import { applyMiddlewareToRoutes as applyMiddlewareToRoutes2 } from "@getstrata/core/http/middleware";
|
|
@@ -551,7 +551,7 @@ function createWebRoutes(dependencies) {
|
|
|
551
551
|
const relativePath = pathname.replace(/^\//, "");
|
|
552
552
|
const file = Bun.file(join3(process.cwd(), "public", relativePath));
|
|
553
553
|
if (!await file.exists()) {
|
|
554
|
-
return
|
|
554
|
+
return notFoundHtmlResponse();
|
|
555
555
|
}
|
|
556
556
|
return new Response(file);
|
|
557
557
|
};
|
|
@@ -1428,7 +1428,7 @@ function createRoutes(dependencies) {
|
|
|
1428
1428
|
"/*": async () => {
|
|
1429
1429
|
registerRoute2("GET", "/*", []);
|
|
1430
1430
|
if (isViewsEnabled()) {
|
|
1431
|
-
return
|
|
1431
|
+
return notFoundHtmlResponse2();
|
|
1432
1432
|
}
|
|
1433
1433
|
if (isSpaEnabled()) {
|
|
1434
1434
|
return jsonResponse4({ error: "Not Found" }, { status: 404 });
|
|
@@ -3,7 +3,7 @@ var __jsonParse = (a) => JSON.parse(a);
|
|
|
3
3
|
|
|
4
4
|
// ../../src/bootstrap/createWebRoutes.ts
|
|
5
5
|
import { join as join2 } from "path";
|
|
6
|
-
import {
|
|
6
|
+
import { notFoundHtmlResponse } from "@getstrata/core/view";
|
|
7
7
|
|
|
8
8
|
// ../../src/config/frontend.ts
|
|
9
9
|
function readFrontendMode() {
|
|
@@ -478,7 +478,7 @@ function createWebRoutes(dependencies) {
|
|
|
478
478
|
const relativePath = pathname.replace(/^\//, "");
|
|
479
479
|
const file = Bun.file(join2(process.cwd(), "public", relativePath));
|
|
480
480
|
if (!await file.exists()) {
|
|
481
|
-
return
|
|
481
|
+
return notFoundHtmlResponse();
|
|
482
482
|
}
|
|
483
483
|
return new Response(file);
|
|
484
484
|
};
|
|
@@ -460,7 +460,13 @@ var storage_default = storageProvider;
|
|
|
460
460
|
|
|
461
461
|
// ../../src/bootstrap/providers/view.ts
|
|
462
462
|
import { currentRequestMeta } from "@getstrata/core/http/requestMetaContext";
|
|
463
|
-
import {
|
|
463
|
+
import {
|
|
464
|
+
configureWebErrorView,
|
|
465
|
+
DEFAULT_VIEWS_DIRECTORY,
|
|
466
|
+
EtaViewEngine,
|
|
467
|
+
errorTemplateName,
|
|
468
|
+
resolveWebLayoutData
|
|
469
|
+
} from "@getstrata/core/view";
|
|
464
470
|
|
|
465
471
|
// ../../src/config/frontend.ts
|
|
466
472
|
function readFrontendMode() {
|
|
@@ -491,7 +497,15 @@ var viewProvider = {
|
|
|
491
497
|
}
|
|
492
498
|
const viewsDirectory = process.env.VIEW_DIRECTORY?.trim() || DEFAULT_VIEWS_DIRECTORY;
|
|
493
499
|
config.set(VIEW_DIRECTORY_CONFIG_KEY, viewsDirectory);
|
|
494
|
-
|
|
500
|
+
const engine = new EtaViewEngine(viewsDirectory, (request) => resolveWebLayoutData(container, request ?? currentRequestMeta().request));
|
|
501
|
+
container.set(CORE_VIEW_TOKEN, engine);
|
|
502
|
+
configureWebErrorView({
|
|
503
|
+
render: async (input) => engine.render(errorTemplateName(input.status), {
|
|
504
|
+
title: input.title,
|
|
505
|
+
message: input.message,
|
|
506
|
+
errors: input.errors
|
|
507
|
+
})
|
|
508
|
+
});
|
|
495
509
|
}
|
|
496
510
|
};
|
|
497
511
|
|
|
@@ -3,7 +3,13 @@ var __jsonParse = (a) => JSON.parse(a);
|
|
|
3
3
|
|
|
4
4
|
// ../../src/bootstrap/providers/view.ts
|
|
5
5
|
import { currentRequestMeta } from "@getstrata/core/http/requestMetaContext";
|
|
6
|
-
import {
|
|
6
|
+
import {
|
|
7
|
+
configureWebErrorView,
|
|
8
|
+
DEFAULT_VIEWS_DIRECTORY,
|
|
9
|
+
EtaViewEngine,
|
|
10
|
+
errorTemplateName,
|
|
11
|
+
resolveWebLayoutData
|
|
12
|
+
} from "@getstrata/core/view";
|
|
7
13
|
|
|
8
14
|
// ../../src/config/frontend.ts
|
|
9
15
|
function readFrontendMode() {
|
|
@@ -34,7 +40,15 @@ var viewProvider = {
|
|
|
34
40
|
}
|
|
35
41
|
const viewsDirectory = process.env.VIEW_DIRECTORY?.trim() || DEFAULT_VIEWS_DIRECTORY;
|
|
36
42
|
config.set(VIEW_DIRECTORY_CONFIG_KEY, viewsDirectory);
|
|
37
|
-
|
|
43
|
+
const engine = new EtaViewEngine(viewsDirectory, (request) => resolveWebLayoutData(container, request ?? currentRequestMeta().request));
|
|
44
|
+
container.set(CORE_VIEW_TOKEN, engine);
|
|
45
|
+
configureWebErrorView({
|
|
46
|
+
render: async (input) => engine.render(errorTemplateName(input.status), {
|
|
47
|
+
title: input.title,
|
|
48
|
+
message: input.message,
|
|
49
|
+
errors: input.errors
|
|
50
|
+
})
|
|
51
|
+
});
|
|
38
52
|
}
|
|
39
53
|
};
|
|
40
54
|
export {
|
|
@@ -450,7 +450,13 @@ var storage_default = storageProvider;
|
|
|
450
450
|
|
|
451
451
|
// ../../src/bootstrap/providers/view.ts
|
|
452
452
|
import { currentRequestMeta } from "@getstrata/core/http/requestMetaContext";
|
|
453
|
-
import {
|
|
453
|
+
import {
|
|
454
|
+
configureWebErrorView,
|
|
455
|
+
DEFAULT_VIEWS_DIRECTORY,
|
|
456
|
+
EtaViewEngine,
|
|
457
|
+
errorTemplateName,
|
|
458
|
+
resolveWebLayoutData
|
|
459
|
+
} from "@getstrata/core/view";
|
|
454
460
|
|
|
455
461
|
// ../../src/config/frontend.ts
|
|
456
462
|
function readFrontendMode() {
|
|
@@ -481,7 +487,15 @@ var viewProvider = {
|
|
|
481
487
|
}
|
|
482
488
|
const viewsDirectory = process.env.VIEW_DIRECTORY?.trim() || DEFAULT_VIEWS_DIRECTORY;
|
|
483
489
|
config.set(VIEW_DIRECTORY_CONFIG_KEY, viewsDirectory);
|
|
484
|
-
|
|
490
|
+
const engine = new EtaViewEngine(viewsDirectory, (request) => resolveWebLayoutData(container, request ?? currentRequestMeta().request));
|
|
491
|
+
container.set(CORE_VIEW_TOKEN, engine);
|
|
492
|
+
configureWebErrorView({
|
|
493
|
+
render: async (input) => engine.render(errorTemplateName(input.status), {
|
|
494
|
+
title: input.title,
|
|
495
|
+
message: input.message,
|
|
496
|
+
errors: input.errors
|
|
497
|
+
})
|
|
498
|
+
});
|
|
485
499
|
}
|
|
486
500
|
};
|
|
487
501
|
|
|
@@ -2,10 +2,21 @@
|
|
|
2
2
|
var __jsonParse = (a) => JSON.parse(a);
|
|
3
3
|
|
|
4
4
|
// ../../src/bootstrap/web/server.ts
|
|
5
|
+
import { currentRequestMeta, runWithRequestMeta } from "@getstrata/core/http/requestMetaContext";
|
|
6
|
+
import { notFoundHtmlResponse } from "@getstrata/core/view";
|
|
7
|
+
async function missingHtmlResponse() {
|
|
8
|
+
return notFoundHtmlResponse();
|
|
9
|
+
}
|
|
5
10
|
function wrapRouteHandler(handler) {
|
|
6
11
|
return async (request) => {
|
|
7
|
-
|
|
8
|
-
|
|
12
|
+
return await runWithRequestMeta({
|
|
13
|
+
...currentRequestMeta(),
|
|
14
|
+
request,
|
|
15
|
+
userAgent: request.headers.get("user-agent")
|
|
16
|
+
}, async () => {
|
|
17
|
+
const response = await handler(request);
|
|
18
|
+
return response ?? await missingHtmlResponse();
|
|
19
|
+
});
|
|
9
20
|
};
|
|
10
21
|
}
|
|
11
22
|
function convertAppRoutesToBunRoutes(routes) {
|
|
@@ -37,19 +48,25 @@ function createWebServer(options) {
|
|
|
37
48
|
port: options.port,
|
|
38
49
|
...bunRoutes ? { routes: bunRoutes } : {},
|
|
39
50
|
async fetch(request) {
|
|
40
|
-
await
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
51
|
+
return await runWithRequestMeta({
|
|
52
|
+
...currentRequestMeta(),
|
|
53
|
+
request,
|
|
54
|
+
userAgent: request.headers.get("user-agent")
|
|
55
|
+
}, async () => {
|
|
56
|
+
await options.onRequest?.(request);
|
|
57
|
+
const url = new URL(request.url);
|
|
58
|
+
if (url.pathname.startsWith("/assets/")) {
|
|
59
|
+
const file = Bun.file(`${publicDir}${url.pathname}`);
|
|
60
|
+
if (await file.exists()) {
|
|
61
|
+
return new Response(file);
|
|
62
|
+
}
|
|
46
63
|
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
64
|
+
if (options.handle) {
|
|
65
|
+
const response = await options.handle(request);
|
|
66
|
+
return response ?? await missingHtmlResponse();
|
|
67
|
+
}
|
|
68
|
+
return await missingHtmlResponse();
|
|
69
|
+
});
|
|
53
70
|
}
|
|
54
71
|
});
|
|
55
72
|
}
|
package/dist/index.js
CHANGED
|
@@ -806,7 +806,13 @@ var storage_default = storageProvider;
|
|
|
806
806
|
|
|
807
807
|
// ../../src/bootstrap/providers/view.ts
|
|
808
808
|
import { currentRequestMeta } from "@getstrata/core/http/requestMetaContext";
|
|
809
|
-
import {
|
|
809
|
+
import {
|
|
810
|
+
configureWebErrorView,
|
|
811
|
+
DEFAULT_VIEWS_DIRECTORY,
|
|
812
|
+
EtaViewEngine,
|
|
813
|
+
errorTemplateName,
|
|
814
|
+
resolveWebLayoutData
|
|
815
|
+
} from "@getstrata/core/view";
|
|
810
816
|
var CORE_VIEW_TOKEN = "core.view";
|
|
811
817
|
var VIEW_DIRECTORY_CONFIG_KEY = "view.directory";
|
|
812
818
|
var viewProvider = {
|
|
@@ -817,7 +823,15 @@ var viewProvider = {
|
|
|
817
823
|
}
|
|
818
824
|
const viewsDirectory = process.env.VIEW_DIRECTORY?.trim() || DEFAULT_VIEWS_DIRECTORY;
|
|
819
825
|
config.set(VIEW_DIRECTORY_CONFIG_KEY, viewsDirectory);
|
|
820
|
-
|
|
826
|
+
const engine = new EtaViewEngine(viewsDirectory, (request) => resolveWebLayoutData(container, request ?? currentRequestMeta().request));
|
|
827
|
+
container.set(CORE_VIEW_TOKEN, engine);
|
|
828
|
+
configureWebErrorView({
|
|
829
|
+
render: async (input) => engine.render(errorTemplateName(input.status), {
|
|
830
|
+
title: input.title,
|
|
831
|
+
message: input.message,
|
|
832
|
+
errors: input.errors
|
|
833
|
+
})
|
|
834
|
+
});
|
|
821
835
|
}
|
|
822
836
|
};
|
|
823
837
|
|
|
@@ -868,7 +882,7 @@ function createAppContext() {
|
|
|
868
882
|
}
|
|
869
883
|
// ../../src/bootstrap/createWebRoutes.ts
|
|
870
884
|
import { join as join3 } from "path";
|
|
871
|
-
import {
|
|
885
|
+
import { notFoundHtmlResponse } from "@getstrata/core/view";
|
|
872
886
|
function registerRoute(method, path, middleware) {
|
|
873
887
|
routeRegistry.register({ method, path, middleware });
|
|
874
888
|
}
|
|
@@ -886,7 +900,7 @@ function createWebRoutes(dependencies) {
|
|
|
886
900
|
const relativePath = pathname.replace(/^\//, "");
|
|
887
901
|
const file = Bun.file(join3(process.cwd(), "public", relativePath));
|
|
888
902
|
if (!await file.exists()) {
|
|
889
|
-
return
|
|
903
|
+
return notFoundHtmlResponse();
|
|
890
904
|
}
|
|
891
905
|
return new Response(file);
|
|
892
906
|
};
|
|
@@ -1201,10 +1215,21 @@ function createRouteKernel(dependencies) {
|
|
|
1201
1215
|
return createHttpKernel(dependencies);
|
|
1202
1216
|
}
|
|
1203
1217
|
// ../../src/bootstrap/web/server.ts
|
|
1218
|
+
import { currentRequestMeta as currentRequestMeta2, runWithRequestMeta } from "@getstrata/core/http/requestMetaContext";
|
|
1219
|
+
import { notFoundHtmlResponse as notFoundHtmlResponse2 } from "@getstrata/core/view";
|
|
1220
|
+
async function missingHtmlResponse() {
|
|
1221
|
+
return notFoundHtmlResponse2();
|
|
1222
|
+
}
|
|
1204
1223
|
function wrapRouteHandler(handler) {
|
|
1205
1224
|
return async (request) => {
|
|
1206
|
-
|
|
1207
|
-
|
|
1225
|
+
return await runWithRequestMeta({
|
|
1226
|
+
...currentRequestMeta2(),
|
|
1227
|
+
request,
|
|
1228
|
+
userAgent: request.headers.get("user-agent")
|
|
1229
|
+
}, async () => {
|
|
1230
|
+
const response = await handler(request);
|
|
1231
|
+
return response ?? await missingHtmlResponse();
|
|
1232
|
+
});
|
|
1208
1233
|
};
|
|
1209
1234
|
}
|
|
1210
1235
|
function convertAppRoutesToBunRoutes(routes) {
|
|
@@ -1236,19 +1261,25 @@ function createWebServer(options) {
|
|
|
1236
1261
|
port: options.port,
|
|
1237
1262
|
...bunRoutes ? { routes: bunRoutes } : {},
|
|
1238
1263
|
async fetch(request) {
|
|
1239
|
-
await
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1264
|
+
return await runWithRequestMeta({
|
|
1265
|
+
...currentRequestMeta2(),
|
|
1266
|
+
request,
|
|
1267
|
+
userAgent: request.headers.get("user-agent")
|
|
1268
|
+
}, async () => {
|
|
1269
|
+
await options.onRequest?.(request);
|
|
1270
|
+
const url = new URL(request.url);
|
|
1271
|
+
if (url.pathname.startsWith("/assets/")) {
|
|
1272
|
+
const file = Bun.file(`${publicDir}${url.pathname}`);
|
|
1273
|
+
if (await file.exists()) {
|
|
1274
|
+
return new Response(file);
|
|
1275
|
+
}
|
|
1245
1276
|
}
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1277
|
+
if (options.handle) {
|
|
1278
|
+
const response = await options.handle(request);
|
|
1279
|
+
return response ?? await missingHtmlResponse();
|
|
1280
|
+
}
|
|
1281
|
+
return await missingHtmlResponse();
|
|
1282
|
+
});
|
|
1252
1283
|
}
|
|
1253
1284
|
});
|
|
1254
1285
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@getstrata/bootstrap",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.52",
|
|
4
4
|
"description": "Strata application bootstrap — HttpKernel, DI, web session helpers",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -173,14 +173,14 @@
|
|
|
173
173
|
"build:bundle": "bun build index.ts --outdir dist --target bun --external bun --external eta --external @getstrata/core",
|
|
174
174
|
"build:types": "tsc -p tsconfig.types.json && bun ../../scripts/prune-bootstrap-dist-types.ts",
|
|
175
175
|
"prepublishOnly": "bun run build",
|
|
176
|
-
"build:subpaths": "bun build entries/applicationRegistry.ts entries/buildModuleRoutes.ts entries/buildWebModuleRoutes.ts entries/cache/modelCacheTags.ts entries/config.ts entries/context.ts entries/contracts.ts entries/createWebRoutes.ts entries/createRoutes.ts entries/createSpaRoutes.ts entries/dependencies.ts entries/discoverModules.ts entries/health.ts entries/http/securedRouteModelBinding.ts entries/httpKernel.ts entries/listeners/invalidateCacheOnModelWrite.ts entries/membershipService.ts entries/metricsRoutes.ts entries/queue/defaultJobs.ts entries/providers.ts entries/providers/view.ts entries/routeRegistry.ts entries/schedule.ts entries/secretsGuard.ts entries/web/forms.ts entries/web/routing.ts entries/web/server.ts entries/web/session.ts entries/web/slug.ts --outdir dist --root . --target bun --external bun --external eta --external @getstrata/core --external @getstrata/bootstrap --external @getstrata/bootstrap/applicationRegistry --external @getstrata/bootstrap/buildModuleRoutes --external @getstrata/bootstrap/buildWebModuleRoutes --external @getstrata/bootstrap/cache/modelCacheTags --external @getstrata/bootstrap/config --external @getstrata/bootstrap/context --external @getstrata/bootstrap/contracts --external @getstrata/bootstrap/createWebRoutes --external @getstrata/bootstrap/createRoutes --external @getstrata/bootstrap/createSpaRoutes --external @getstrata/bootstrap/dependencies --external @getstrata/bootstrap/discoverModules --external @getstrata/bootstrap/health --external @getstrata/bootstrap/http/securedRouteModelBinding --external @getstrata/bootstrap/httpKernel --external @getstrata/bootstrap/listeners/invalidateCacheOnModelWrite --external @getstrata/bootstrap/membershipService --external @getstrata/bootstrap/metricsRoutes --external @getstrata/bootstrap/queue/defaultJobs --external @getstrata/bootstrap/providers --external @getstrata/bootstrap/providers/view --external @getstrata/bootstrap/routeRegistry --external @getstrata/bootstrap/schedule --external @getstrata/bootstrap/secretsGuard --external @getstrata/bootstrap/web/forms --external @getstrata/bootstrap/web/routing --external @getstrata/bootstrap/web/server --external @getstrata/bootstrap/web/session --external @getstrata/bootstrap/web/slug --external @getstrata/core/auth/accessControl --external @getstrata/core/auth/abilityChecker --external @getstrata/core/auth/authContext --external @getstrata/core/auth/guard --external @getstrata/core/auth/membershipContext --external @getstrata/core/auth/membershipMiddleware --external @getstrata/core/auth/membershipScope --external @getstrata/core/auth/membershipService --external @getstrata/core/auth/oauth/oidcProvider --external @getstrata/core/auth/oauth/providers --external @getstrata/core/auth/oauth/samlProvider --external @getstrata/core/auth/oauth/types --external @getstrata/core/auth/password --external @getstrata/core/auth/policy --external @getstrata/core/auth/scimAuthMiddleware --external @getstrata/core/auth/sessionCookie --external @getstrata/core/auth/sessionGuard --external @getstrata/core/auth/tokenHash --external @getstrata/core/audit/exportAuditLogs --external @getstrata/core/audit/siemFormatter --external @getstrata/core/admin/formatValue --external @getstrata/core/admin/registry --external @getstrata/core/admin/types --external @getstrata/core/cache/tags --external @getstrata/core/cache/createCacheStore --external @getstrata/core/cache/repository --external @getstrata/core/cache/simpleCache --external @getstrata/core/cache/simpleCacheStore --external @getstrata/core/config/envSchema --external @getstrata/core/contracts/serviceTokens --external @getstrata/core/contracts/container --external @getstrata/core/contracts/di --external @getstrata/core/crypto/fieldEncryption --external @getstrata/core/crypto/mfaSecret --external @getstrata/core/database --external @getstrata/core/database/baseRepository --external @getstrata/core/database/bindConnection --external @getstrata/core/database/boundConnection --external @getstrata/core/database/bunSql --external @getstrata/core/database/connection --external @getstrata/core/database/defaultConnection --external @getstrata/core/database/errors --external @getstrata/core/database/factory --external @getstrata/core/database/migrations --external @getstrata/core/database/migrations/types --external @getstrata/core/database/model --external @getstrata/core/database/query --external @getstrata/core/database/relationships --external @getstrata/core/database/repositoryConnection --external @getstrata/core/database/repositoryQuery --external @getstrata/core/database/seeders --external @getstrata/core/database/seeders/types --external @getstrata/core/database/schema --external @getstrata/core/database/table --external @getstrata/core/database/transaction --external @getstrata/core/database/types --external @getstrata/core/database/whereBuilder --external @getstrata/core/errors/http --external @getstrata/core/events --external @getstrata/core/facades --external @getstrata/core/http --external @getstrata/core/http/authMiddleware --external @getstrata/core/http/authorizeMiddleware --external @getstrata/core/http/bodySizeLimitMiddleware --external @getstrata/core/http/clientIp --external @getstrata/core/http/cookies --external @getstrata/core/http/contentNegotiation --external @getstrata/core/http/conditionalResponse --external @getstrata/core/http/corsMiddleware --external @getstrata/core/http/csrfMiddleware --external @getstrata/core/http/csrfProtection --external @getstrata/core/http/csrfToken --external @getstrata/core/http/etag --external @getstrata/core/http/flashSession --external @getstrata/core/http/flashMiddleware --external @getstrata/core/http/formRequest --external @getstrata/core/http/middleware --external @getstrata/core/http/metricsMiddleware --external @getstrata/core/http/loginThrottleMiddleware --external @getstrata/core/http/memoryThrottleMiddleware --external @getstrata/core/http/pagination --external @getstrata/core/http/parseFormBody --external @getstrata/core/http/parseMultipartUpload --external @getstrata/core/http/requireAbilityMiddleware --external @getstrata/core/http/requireAuthMiddleware --external @getstrata/core/http/requireGlobalAdminMiddleware --external @getstrata/core/http/requireWebAuthMiddleware --external @getstrata/core/http/resources --external @getstrata/core/http/response --external @getstrata/core/http/route --external @getstrata/core/http/routeMiddleware --external @getstrata/core/http/routeModelBinding --external @getstrata/core/http/scimThrottleMiddleware --external @getstrata/core/http/securityHeadersMiddleware --external @getstrata/core/http/securedRouteModelBinding --external @getstrata/core/http/requestMetaContext --external @getstrata/core/http/webErrorResponse --external @getstrata/core/http/webFormRequest --external @getstrata/core/http/throttleMiddleware --external @getstrata/core/http/validation --external @getstrata/core/jobs/dispatchWebhookJob --external @getstrata/core/jobs/invalidateCacheTagsJob --external @getstrata/core/lifecycle/gracefulShutdown --external @getstrata/core/logging/logger --external @getstrata/core/logging/requestLoggingMiddleware --external @getstrata/core/mail/mailer --external @getstrata/core/mail/markdownMail --external @getstrata/core/mail/markdownMailable --external @getstrata/core/media/imageTransform --external @getstrata/core/metrics/prometheus --external @getstrata/core/notifications --external @getstrata/core/openapi/generator --external @getstrata/core/openapi/registeredRoute --external @getstrata/core/openapi/validate --external @getstrata/core/pagination --external @getstrata/core/queue --external @getstrata/core/queue/createAppQueue --external @getstrata/core/queue/failedJobRepository --external @getstrata/core/queue/failedJobService --external @getstrata/core/queue/jobRegistry --external @getstrata/core/queue/jobRunner --external @getstrata/core/queue/queueMetrics --external @getstrata/core/queue/publicQueue --external @getstrata/core/queue/redisQueue --external @getstrata/core/queue/types --external @getstrata/core/runtime/applicationRegistry --external @getstrata/core/runtime/asyncContextStore --external @getstrata/core/scheduler/schedule --external @getstrata/core/scheduler/osCron --external @getstrata/core/security/oauthState --external @getstrata/core/security/publicReads --external @getstrata/core/security/safeFetch --external @getstrata/core/security/safeUrl --external @getstrata/core/security/scimTenantTokens --external @getstrata/core/security/securityEvents --external @getstrata/core/security/stripeWebhook --external @getstrata/core/security/timingSafeCompare --external @getstrata/core/security/tokenExpiry --external @getstrata/core/security/totp --external @getstrata/core/storage/storage --external @getstrata/core/tenant/tenancyConfig --external @getstrata/core/tenant/tenantContext --external @getstrata/core/tenant/tenantDatabaseScope --external @getstrata/core/tenant/databaseTenantContext --external @getstrata/core/tenant/tenantMiddleware --external @getstrata/core/terminal/runShell --external @getstrata/core/tracing/traceContext --external @getstrata/core/tracing/tracingMiddleware --external @getstrata/core/validation/rules --external @getstrata/core/view",
|
|
176
|
+
"build:subpaths": "bun build entries/applicationRegistry.ts entries/buildModuleRoutes.ts entries/buildWebModuleRoutes.ts entries/cache/modelCacheTags.ts entries/config.ts entries/context.ts entries/contracts.ts entries/createWebRoutes.ts entries/createRoutes.ts entries/createSpaRoutes.ts entries/dependencies.ts entries/discoverModules.ts entries/health.ts entries/http/securedRouteModelBinding.ts entries/httpKernel.ts entries/listeners/invalidateCacheOnModelWrite.ts entries/membershipService.ts entries/metricsRoutes.ts entries/queue/defaultJobs.ts entries/providers.ts entries/providers/view.ts entries/routeRegistry.ts entries/schedule.ts entries/secretsGuard.ts entries/web/forms.ts entries/web/routing.ts entries/web/server.ts entries/web/session.ts entries/web/slug.ts --outdir dist --root . --target bun --external bun --external eta --external @getstrata/core --external @getstrata/bootstrap --external @getstrata/bootstrap/applicationRegistry --external @getstrata/bootstrap/buildModuleRoutes --external @getstrata/bootstrap/buildWebModuleRoutes --external @getstrata/bootstrap/cache/modelCacheTags --external @getstrata/bootstrap/config --external @getstrata/bootstrap/context --external @getstrata/bootstrap/contracts --external @getstrata/bootstrap/createWebRoutes --external @getstrata/bootstrap/createRoutes --external @getstrata/bootstrap/createSpaRoutes --external @getstrata/bootstrap/dependencies --external @getstrata/bootstrap/discoverModules --external @getstrata/bootstrap/health --external @getstrata/bootstrap/http/securedRouteModelBinding --external @getstrata/bootstrap/httpKernel --external @getstrata/bootstrap/listeners/invalidateCacheOnModelWrite --external @getstrata/bootstrap/membershipService --external @getstrata/bootstrap/metricsRoutes --external @getstrata/bootstrap/queue/defaultJobs --external @getstrata/bootstrap/providers --external @getstrata/bootstrap/providers/view --external @getstrata/bootstrap/routeRegistry --external @getstrata/bootstrap/schedule --external @getstrata/bootstrap/secretsGuard --external @getstrata/bootstrap/web/forms --external @getstrata/bootstrap/web/routing --external @getstrata/bootstrap/web/server --external @getstrata/bootstrap/web/session --external @getstrata/bootstrap/web/slug --external @getstrata/core/auth/accessControl --external @getstrata/core/auth/abilityChecker --external @getstrata/core/auth/authContext --external @getstrata/core/auth/guard --external @getstrata/core/auth/membershipContext --external @getstrata/core/auth/membershipMiddleware --external @getstrata/core/auth/membershipScope --external @getstrata/core/auth/membershipService --external @getstrata/core/auth/oauth/oidcProvider --external @getstrata/core/auth/oauth/providers --external @getstrata/core/auth/oauth/samlProvider --external @getstrata/core/auth/oauth/types --external @getstrata/core/auth/password --external @getstrata/core/auth/policy --external @getstrata/core/auth/scimAuthMiddleware --external @getstrata/core/auth/sessionCookie --external @getstrata/core/auth/sessionGuard --external @getstrata/core/auth/tokenHash --external @getstrata/core/audit/exportAuditLogs --external @getstrata/core/audit/siemFormatter --external @getstrata/core/admin/formatValue --external @getstrata/core/admin/registry --external @getstrata/core/admin/types --external @getstrata/core/cache/tags --external @getstrata/core/cache/createCacheStore --external @getstrata/core/cache/repository --external @getstrata/core/cache/simpleCache --external @getstrata/core/cache/simpleCacheStore --external @getstrata/core/config/envSchema --external @getstrata/core/contracts/serviceTokens --external @getstrata/core/contracts/container --external @getstrata/core/contracts/di --external @getstrata/core/crypto/fieldEncryption --external @getstrata/core/crypto/mfaSecret --external @getstrata/core/database --external @getstrata/core/database/baseRepository --external @getstrata/core/database/bindConnection --external @getstrata/core/database/boundConnection --external @getstrata/core/database/bunSql --external @getstrata/core/database/connection --external @getstrata/core/database/defaultConnection --external @getstrata/core/database/errors --external @getstrata/core/database/factory --external @getstrata/core/database/migrations --external @getstrata/core/database/migrations/types --external @getstrata/core/database/model --external @getstrata/core/database/query --external @getstrata/core/database/relationships --external @getstrata/core/database/repositoryConnection --external @getstrata/core/database/repositoryQuery --external @getstrata/core/database/seeders --external @getstrata/core/database/seeders/types --external @getstrata/core/database/schema --external @getstrata/core/database/table --external @getstrata/core/database/transaction --external @getstrata/core/database/types --external @getstrata/core/database/whereBuilder --external @getstrata/core/errors/http --external @getstrata/core/events --external @getstrata/core/facades --external @getstrata/core/http --external @getstrata/core/http/authMiddleware --external @getstrata/core/http/authorizeMiddleware --external @getstrata/core/http/bodySizeLimitMiddleware --external @getstrata/core/http/clientIp --external @getstrata/core/http/cookies --external @getstrata/core/http/contentNegotiation --external @getstrata/core/http/contentSecurityPolicy --external @getstrata/core/http/conditionalResponse --external @getstrata/core/http/corsMiddleware --external @getstrata/core/http/csrfMiddleware --external @getstrata/core/http/csrfProtection --external @getstrata/core/http/csrfToken --external @getstrata/core/http/etag --external @getstrata/core/http/flashSession --external @getstrata/core/http/flashMiddleware --external @getstrata/core/http/formRequest --external @getstrata/core/http/middleware --external @getstrata/core/http/metricsMiddleware --external @getstrata/core/http/loginThrottleMiddleware --external @getstrata/core/http/memoryThrottleMiddleware --external @getstrata/core/http/pagination --external @getstrata/core/http/parseFormBody --external @getstrata/core/http/parseMultipartUpload --external @getstrata/core/http/requireAbilityMiddleware --external @getstrata/core/http/requireAuthMiddleware --external @getstrata/core/http/requireGlobalAdminMiddleware --external @getstrata/core/http/requireWebAuthMiddleware --external @getstrata/core/http/resources --external @getstrata/core/http/response --external @getstrata/core/http/route --external @getstrata/core/http/routeMiddleware --external @getstrata/core/http/routeModelBinding --external @getstrata/core/http/safeInternalPath --external @getstrata/core/http/scimThrottleMiddleware --external @getstrata/core/http/securityHeadersMiddleware --external @getstrata/core/http/securedRouteModelBinding --external @getstrata/core/http/requestMetaContext --external @getstrata/core/http/webErrorResponse --external @getstrata/core/http/webFormRequest --external @getstrata/core/http/throttleMiddleware --external @getstrata/core/http/validation --external @getstrata/core/jobs/dispatchWebhookJob --external @getstrata/core/jobs/invalidateCacheTagsJob --external @getstrata/core/lifecycle/gracefulShutdown --external @getstrata/core/logging/logger --external @getstrata/core/logging/requestLoggingMiddleware --external @getstrata/core/mail/mailer --external @getstrata/core/mail/markdownMail --external @getstrata/core/mail/markdownMailable --external @getstrata/core/media/imageTransform --external @getstrata/core/metrics/prometheus --external @getstrata/core/notifications --external @getstrata/core/openapi/generator --external @getstrata/core/openapi/registeredRoute --external @getstrata/core/openapi/validate --external @getstrata/core/pagination --external @getstrata/core/queue --external @getstrata/core/queue/createAppQueue --external @getstrata/core/queue/failedJobRepository --external @getstrata/core/queue/failedJobService --external @getstrata/core/queue/jobRegistry --external @getstrata/core/queue/jobRunner --external @getstrata/core/queue/queueMetrics --external @getstrata/core/queue/publicQueue --external @getstrata/core/queue/redisQueue --external @getstrata/core/queue/types --external @getstrata/core/runtime/applicationRegistry --external @getstrata/core/runtime/asyncContextStore --external @getstrata/core/scheduler/schedule --external @getstrata/core/scheduler/osCron --external @getstrata/core/security/oauthState --external @getstrata/core/security/publicReads --external @getstrata/core/security/safeFetch --external @getstrata/core/security/safeUrl --external @getstrata/core/security/scimTenantTokens --external @getstrata/core/security/securityEvents --external @getstrata/core/security/stripeWebhook --external @getstrata/core/security/timingSafeCompare --external @getstrata/core/security/tokenExpiry --external @getstrata/core/security/totp --external @getstrata/core/storage/storage --external @getstrata/core/tenant/tenancyConfig --external @getstrata/core/tenant/tenantContext --external @getstrata/core/tenant/tenantDatabaseScope --external @getstrata/core/tenant/databaseTenantContext --external @getstrata/core/tenant/tenantMiddleware --external @getstrata/core/terminal/runShell --external @getstrata/core/tracing/traceContext --external @getstrata/core/tracing/tracingMiddleware --external @getstrata/core/validation/rules --external @getstrata/core/view",
|
|
177
177
|
"build:shims": "true"
|
|
178
178
|
},
|
|
179
179
|
"publishConfig": {
|
|
180
180
|
"access": "public"
|
|
181
181
|
},
|
|
182
182
|
"peerDependencies": {
|
|
183
|
-
"@getstrata/core": "^0.5.
|
|
183
|
+
"@getstrata/core": "^0.5.61",
|
|
184
184
|
"typescript": "^5.9.0"
|
|
185
185
|
}
|
|
186
186
|
}
|