@getstrata/core 0.5.58 → 0.5.60
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 +21 -0
- package/README.md +3 -3
- package/dist/bootstrap/config.d.ts +1 -1
- package/dist/core/auth/sessionCookie.d.ts +2 -1
- package/dist/core/contracts/serviceTokens.d.ts +10 -1
- package/dist/core/database/bindConnection.d.ts +1 -3
- package/dist/core/database/bunSql.d.ts +13 -0
- package/dist/core/http/csrfToken.d.ts +2 -1
- package/dist/core/http/memoryThrottleMiddleware.d.ts +2 -1
- package/dist/core/view/htmlResponse.d.ts +13 -1
- package/dist/core/view/index.d.ts +3 -3
- package/dist/core/view/webLayoutData.d.ts +15 -4
- package/dist/entries/auth/sessionCookie.js +8 -4
- package/dist/entries/auth/sessionGuard.js +44 -5
- package/dist/entries/contracts/serviceTokens.js +43 -1
- package/dist/entries/database/bunSql.js +1 -0
- package/dist/entries/http/csrfMiddleware.js +6 -3
- package/dist/entries/http/csrfToken.js +7 -3
- package/dist/entries/http/memoryThrottleMiddleware.js +10 -2
- package/dist/entries/http/response.js +110 -26
- package/dist/entries/http/webErrorResponse.js +110 -26
- package/dist/entries/queue/createAppQueue.js +2 -0
- package/dist/entries/queue/jobRunner.js +2 -0
- package/dist/entries/queue/publicQueue.js +2 -0
- package/dist/entries/queue/queueMetrics.js +2 -0
- package/dist/entries/queue/redisQueue.js +2 -0
- package/dist/entries/view.js +117 -27
- package/dist/framework/public-api.d.ts +5 -4
- package/dist/index.js +139 -38
- package/package.json +10 -4
|
@@ -24,7 +24,8 @@ export type { ServiceProvider } from "../core/contracts/di.ts";
|
|
|
24
24
|
export { resolveService } from "../core/contracts/di.ts";
|
|
25
25
|
export type { DatabaseConnection } from "../core/database/baseRepository.ts";
|
|
26
26
|
export { default as BaseRepository } from "../core/database/baseRepository.ts";
|
|
27
|
-
export { bindDatabaseConnection } from "../core/database/bindConnection.ts";
|
|
27
|
+
export { bindDatabaseConnection, getBoundDatabaseConnection, resetBoundDatabaseConnection, } from "../core/database/bindConnection.ts";
|
|
28
|
+
export { bindBunSql, createBunSqlPool } from "../core/database/bunSql.ts";
|
|
28
29
|
export { createDatabaseConnection } from "../core/database/connection.ts";
|
|
29
30
|
export { getActiveDatabaseConnection, runWithDatabaseConnection, } from "../core/database/connectionContext.ts";
|
|
30
31
|
export { getDefaultDatabasePool, getDefaultDatabaseQuery, registerDefaultDatabasePool, } from "../core/database/defaultConnection.ts";
|
|
@@ -65,7 +66,7 @@ export { createFlashMiddleware } from "../core/http/flashMiddleware.ts";
|
|
|
65
66
|
export { FormRequest } from "../core/http/formRequest.ts";
|
|
66
67
|
export { applyMiddlewareToRoutes, bindRouteModel, buildRequestCacheKey, composeMiddleware, createAuthMiddleware, createAuthorizeMiddleware, createRequireAuthMiddleware, paginatedResponse, parsePaginationQuery, parsePositiveIntParam, requestIdMiddleware, securedBindRouteModel, securedBindRouteModelByKey, withMiddleware, wrapRouteHandler, } from "../core/http/index.ts";
|
|
67
68
|
export { createLoginThrottleMiddleware } from "../core/http/loginThrottleMiddleware.ts";
|
|
68
|
-
export { createMemoryThrottleMiddleware } from "../core/http/memoryThrottleMiddleware.ts";
|
|
69
|
+
export { createMemoryThrottleMiddleware, resetMemoryThrottleForTests, } from "../core/http/memoryThrottleMiddleware.ts";
|
|
69
70
|
export { createMetricsMiddleware, normalizeMetricPath } from "../core/http/metricsMiddleware.ts";
|
|
70
71
|
export type { Middleware, RouteHandler } from "../core/http/middleware.ts";
|
|
71
72
|
export { type ParsedUpload, parseMultipartUpload } from "../core/http/parseMultipartUpload.ts";
|
|
@@ -118,6 +119,6 @@ export { currentTraceId, runWithTraceContext } from "../core/tracing/traceContex
|
|
|
118
119
|
export { createTracingMiddleware } from "../core/tracing/tracingMiddleware.ts";
|
|
119
120
|
export type { ValidationRule, ValidationSchema } from "../core/validation/rules.ts";
|
|
120
121
|
export { emailRule, maxLength, minLength, required, stringRule, validateObject, } from "../core/validation/rules.ts";
|
|
121
|
-
export { DEFAULT_VIEWS_DIRECTORY, EtaViewEngine, htmlResponse, isHtmxRequest, resolveWebLayoutData, } from "../core/view/index.ts";
|
|
122
|
+
export { configureWebLayoutData, DEFAULT_VIEWS_DIRECTORY, EtaViewEngine, htmlResponse, isHtmxRequest, notFoundHtmlResponse, redirectResponse, resolveWebLayoutData, rssResponse, textResponse, xmlResponse, } from "../core/view/index.ts";
|
|
122
123
|
export type { ViewEngine } from "../core/view/viewEngine.ts";
|
|
123
|
-
export type { WebLayoutAuthUser, WebLayoutData } from "../core/view/webLayoutData.ts";
|
|
124
|
+
export type { WebLayoutAuthUser, WebLayoutData, WebLayoutDataOptions, WebLayoutUserKey, } from "../core/view/webLayoutData.ts";
|
package/dist/index.js
CHANGED
|
@@ -172,6 +172,28 @@ var CORE_EVENT_BUS_TOKEN = "core.eventBus";
|
|
|
172
172
|
var CORE_POLICY_GATE_TOKEN = "core.policyGate";
|
|
173
173
|
var CORE_AUTH_TOKEN = "core.auth";
|
|
174
174
|
var CORE_TOKEN_SERVICE_TOKEN = "core.tokenService";
|
|
175
|
+
var CORE_AUTH_USER_DIRECTORY_TOKEN = "core.authUserDirectory";
|
|
176
|
+
function isAuthUserDirectory(value) {
|
|
177
|
+
if (!value || typeof value !== "object") {
|
|
178
|
+
return false;
|
|
179
|
+
}
|
|
180
|
+
return typeof value.findByIdOrThrow === "function";
|
|
181
|
+
}
|
|
182
|
+
function resolveAuthUserDirectory(container) {
|
|
183
|
+
if (container.has(CORE_AUTH_USER_DIRECTORY_TOKEN)) {
|
|
184
|
+
const directory = container.resolve(CORE_AUTH_USER_DIRECTORY_TOKEN);
|
|
185
|
+
if (isAuthUserDirectory(directory)) {
|
|
186
|
+
return directory;
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
if (container.has(CORE_TOKEN_SERVICE_TOKEN)) {
|
|
190
|
+
const tokenService = container.resolve(CORE_TOKEN_SERVICE_TOKEN);
|
|
191
|
+
if (isAuthUserDirectory(tokenService)) {
|
|
192
|
+
return tokenService;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
return null;
|
|
196
|
+
}
|
|
175
197
|
|
|
176
198
|
// ../../src/core/auth/abilityCatalog.ts
|
|
177
199
|
var MEMBER_ABILITIES = [
|
|
@@ -276,10 +298,10 @@ class DatabaseTokenGuard {
|
|
|
276
298
|
if (!token) {
|
|
277
299
|
return null;
|
|
278
300
|
}
|
|
279
|
-
|
|
301
|
+
const tokenService = resolveAuthUserDirectory(this.container);
|
|
302
|
+
if (!tokenService || typeof tokenService.resolveUserFromToken !== "function") {
|
|
280
303
|
return null;
|
|
281
304
|
}
|
|
282
|
-
const tokenService = this.container.resolve(CORE_TOKEN_SERVICE_TOKEN);
|
|
283
305
|
return await tokenService.resolveUserFromToken(token);
|
|
284
306
|
}
|
|
285
307
|
}
|
|
@@ -734,12 +756,6 @@ function getBoundDatabaseConnection() {
|
|
|
734
756
|
function resetBoundDatabaseConnection() {
|
|
735
757
|
boundConnectionHolder.connection = null;
|
|
736
758
|
}
|
|
737
|
-
|
|
738
|
-
// ../../src/core/database/bindConnection.ts
|
|
739
|
-
function bindDatabaseConnection2(connection) {
|
|
740
|
-
bindDatabaseConnection(connection);
|
|
741
|
-
}
|
|
742
|
-
|
|
743
759
|
// ../../src/core/database/connectionContext.ts
|
|
744
760
|
var activeConnection = createAsyncContextStore("@getstrata/databaseConnectionContext");
|
|
745
761
|
function runWithDatabaseConnection(connection, callback) {
|
|
@@ -929,7 +945,7 @@ function createScimAuthMiddleware() {
|
|
|
929
945
|
return jsonScimError("SCIM tenant not found.", 401);
|
|
930
946
|
}
|
|
931
947
|
return await runWithTenantDatabase(tenant, async () => {
|
|
932
|
-
|
|
948
|
+
bindDatabaseConnection(getActiveDatabaseConnection(getDefaultDatabasePool()));
|
|
933
949
|
try {
|
|
934
950
|
return await next();
|
|
935
951
|
} finally {
|
|
@@ -2657,6 +2673,25 @@ class BaseRepository {
|
|
|
2657
2673
|
}
|
|
2658
2674
|
}
|
|
2659
2675
|
var baseRepository_default = BaseRepository;
|
|
2676
|
+
// ../../src/core/database/bunSql.ts
|
|
2677
|
+
var {SQL } = globalThis.Bun;
|
|
2678
|
+
function createBunSqlPool(options) {
|
|
2679
|
+
if (!options.url) {
|
|
2680
|
+
throw new Error("DATABASE_URL is not configured. Set url before creating a Bun SQL pool.");
|
|
2681
|
+
}
|
|
2682
|
+
return new SQL({
|
|
2683
|
+
url: options.url,
|
|
2684
|
+
max: options.max ?? 10,
|
|
2685
|
+
idleTimeout: options.idleTimeout ?? 30,
|
|
2686
|
+
maxLifetime: options.maxLifetime ?? 3600,
|
|
2687
|
+
connectionTimeout: options.connectionTimeout ?? 10
|
|
2688
|
+
});
|
|
2689
|
+
}
|
|
2690
|
+
function bindBunSql(sql) {
|
|
2691
|
+
bindDatabaseConnection(sql);
|
|
2692
|
+
registerDefaultDatabasePool(sql);
|
|
2693
|
+
return sql;
|
|
2694
|
+
}
|
|
2660
2695
|
// ../../src/core/database/connection.ts
|
|
2661
2696
|
function createDatabaseConnection(source) {
|
|
2662
2697
|
return {
|
|
@@ -4366,6 +4401,9 @@ function currentRequestMeta() {
|
|
|
4366
4401
|
// ../../src/core/http/csrfToken.ts
|
|
4367
4402
|
var CSRF_COOKIE = "workhub_csrf";
|
|
4368
4403
|
var CSRF_TTL_MS = 60 * 60 * 1000;
|
|
4404
|
+
function csrfCookieName() {
|
|
4405
|
+
return process.env.CSRF_COOKIE_NAME?.trim() || CSRF_COOKIE;
|
|
4406
|
+
}
|
|
4369
4407
|
function resolveCsrfSecret() {
|
|
4370
4408
|
return process.env.SESSION_SECRET?.trim() || process.env.OAUTH_STATE_SECRET?.trim() || process.env.ADMIN_API_TOKEN?.trim() || "workhub-dev-csrf-secret";
|
|
4371
4409
|
}
|
|
@@ -4385,11 +4423,11 @@ function createCsrfTokenCookie() {
|
|
|
4385
4423
|
const secure = process.env.APP_ENV === "production" ? "; Secure" : "";
|
|
4386
4424
|
return {
|
|
4387
4425
|
token,
|
|
4388
|
-
cookie: `${
|
|
4426
|
+
cookie: `${csrfCookieName()}=${encodeURIComponent(token)}; Path=/; SameSite=Lax; Max-Age=${Math.floor(CSRF_TTL_MS / 1000)}${secure}`
|
|
4389
4427
|
};
|
|
4390
4428
|
}
|
|
4391
4429
|
function resolveCsrfToken(request) {
|
|
4392
|
-
const cookieValue = readRequestCookie(request,
|
|
4430
|
+
const cookieValue = readRequestCookie(request, csrfCookieName());
|
|
4393
4431
|
if (cookieValue && Bun.CSRF.verify(cookieValue, csrfVerifyOptions())) {
|
|
4394
4432
|
return { token: cookieValue };
|
|
4395
4433
|
}
|
|
@@ -4425,7 +4463,7 @@ function verifyCsrfToken(request, submittedToken) {
|
|
|
4425
4463
|
if (!submittedToken) {
|
|
4426
4464
|
return false;
|
|
4427
4465
|
}
|
|
4428
|
-
const cookieValue = readRequestCookie(request,
|
|
4466
|
+
const cookieValue = readRequestCookie(request, csrfCookieName());
|
|
4429
4467
|
if (!cookieValue) {
|
|
4430
4468
|
return false;
|
|
4431
4469
|
}
|
|
@@ -5082,6 +5120,9 @@ class EtaViewEngine {
|
|
|
5082
5120
|
}
|
|
5083
5121
|
}
|
|
5084
5122
|
// ../../src/core/view/htmlResponse.ts
|
|
5123
|
+
function withCharset(contentType) {
|
|
5124
|
+
return contentType.includes("charset=") ? contentType : `${contentType}; charset=utf-8`;
|
|
5125
|
+
}
|
|
5085
5126
|
function htmlResponse(html, init = {}) {
|
|
5086
5127
|
return new Response(html, {
|
|
5087
5128
|
status: init.status ?? 200,
|
|
@@ -5094,45 +5135,87 @@ function htmlResponse(html, init = {}) {
|
|
|
5094
5135
|
function isHtmxRequest(request) {
|
|
5095
5136
|
return request.headers.get("HX-Request") === "true";
|
|
5096
5137
|
}
|
|
5138
|
+
function redirectResponse(location, status = 302) {
|
|
5139
|
+
return new Response(null, {
|
|
5140
|
+
status,
|
|
5141
|
+
headers: {
|
|
5142
|
+
Location: location
|
|
5143
|
+
}
|
|
5144
|
+
});
|
|
5145
|
+
}
|
|
5146
|
+
function notFoundHtmlResponse(body = "Not Found") {
|
|
5147
|
+
return htmlResponse(body, { status: 404 });
|
|
5148
|
+
}
|
|
5149
|
+
function textResponse(body, init = {}) {
|
|
5150
|
+
return new Response(body, {
|
|
5151
|
+
status: init.status ?? 200,
|
|
5152
|
+
headers: {
|
|
5153
|
+
"Content-Type": "text/plain; charset=utf-8"
|
|
5154
|
+
}
|
|
5155
|
+
});
|
|
5156
|
+
}
|
|
5157
|
+
function xmlResponse(body, init = {}) {
|
|
5158
|
+
return new Response(body, {
|
|
5159
|
+
status: init.status ?? 200,
|
|
5160
|
+
headers: {
|
|
5161
|
+
"Content-Type": withCharset(init.contentType ?? "application/xml")
|
|
5162
|
+
}
|
|
5163
|
+
});
|
|
5164
|
+
}
|
|
5165
|
+
function rssResponse(body, init = {}) {
|
|
5166
|
+
return xmlResponse(body, { ...init, contentType: "application/rss+xml" });
|
|
5167
|
+
}
|
|
5097
5168
|
// ../../src/core/view/webLayoutData.ts
|
|
5098
|
-
|
|
5099
|
-
|
|
5100
|
-
|
|
5169
|
+
var configuredLayoutOptions = {};
|
|
5170
|
+
function configureWebLayoutData(options) {
|
|
5171
|
+
configuredLayoutOptions = { ...options };
|
|
5172
|
+
}
|
|
5173
|
+
function layoutUserKey(options) {
|
|
5174
|
+
return options.userKey ?? "authUser";
|
|
5175
|
+
}
|
|
5176
|
+
async function defaultLoadLayoutUser(container, _request) {
|
|
5101
5177
|
const authUser = currentAuthUser();
|
|
5102
5178
|
if (!authUser) {
|
|
5103
|
-
return
|
|
5179
|
+
return null;
|
|
5104
5180
|
}
|
|
5105
5181
|
const userId = Number(authUser.id);
|
|
5106
5182
|
if (!Number.isInteger(userId) || userId <= 0) {
|
|
5107
|
-
return
|
|
5183
|
+
return null;
|
|
5108
5184
|
}
|
|
5109
|
-
|
|
5185
|
+
const directory = resolveAuthUserDirectory(container);
|
|
5186
|
+
if (!directory) {
|
|
5110
5187
|
return {
|
|
5111
|
-
|
|
5112
|
-
|
|
5113
|
-
|
|
5114
|
-
role: authUser.role ?? "member"
|
|
5115
|
-
},
|
|
5116
|
-
csrfToken,
|
|
5117
|
-
flash
|
|
5188
|
+
id: userId,
|
|
5189
|
+
email: "",
|
|
5190
|
+
role: authUser.role ?? "member"
|
|
5118
5191
|
};
|
|
5119
5192
|
}
|
|
5120
|
-
const tokenService = container.resolve(CORE_TOKEN_SERVICE_TOKEN);
|
|
5121
5193
|
try {
|
|
5122
|
-
const user = await
|
|
5194
|
+
const user = await directory.findByIdOrThrow(userId);
|
|
5123
5195
|
return {
|
|
5124
|
-
|
|
5125
|
-
|
|
5126
|
-
|
|
5127
|
-
role: authUser.role ?? user.role ?? "member"
|
|
5128
|
-
},
|
|
5129
|
-
csrfToken,
|
|
5130
|
-
flash
|
|
5196
|
+
id: userId,
|
|
5197
|
+
email: user.email ?? "",
|
|
5198
|
+
role: authUser.role ?? user.role ?? "member"
|
|
5131
5199
|
};
|
|
5132
5200
|
} catch {
|
|
5133
|
-
return
|
|
5201
|
+
return null;
|
|
5134
5202
|
}
|
|
5135
5203
|
}
|
|
5204
|
+
async function resolveWebLayoutData(container, request, options = {}) {
|
|
5205
|
+
const resolved = { ...configuredLayoutOptions, ...options };
|
|
5206
|
+
const csrfToken = request ? resolveCsrfTokenForRequest(request) : "";
|
|
5207
|
+
const flash = request ? currentRequestMeta().flash ?? pullFlash(request) : null;
|
|
5208
|
+
const userKey = layoutUserKey(resolved);
|
|
5209
|
+
const loadUser = resolved.loadUser ?? defaultLoadLayoutUser;
|
|
5210
|
+
const user = await loadUser(container, request);
|
|
5211
|
+
const extra = typeof resolved.extra === "function" ? await resolved.extra(user) : resolved.extra ?? {};
|
|
5212
|
+
return {
|
|
5213
|
+
[userKey]: user,
|
|
5214
|
+
csrfToken,
|
|
5215
|
+
flash,
|
|
5216
|
+
...extra
|
|
5217
|
+
};
|
|
5218
|
+
}
|
|
5136
5219
|
// ../../src/core/http/contentNegotiation.ts
|
|
5137
5220
|
function requestPrefersJson(request) {
|
|
5138
5221
|
if (!request) {
|
|
@@ -5331,9 +5414,11 @@ function createLoginThrottleMiddleware(options) {
|
|
|
5331
5414
|
};
|
|
5332
5415
|
}
|
|
5333
5416
|
// ../../src/core/http/memoryThrottleMiddleware.ts
|
|
5334
|
-
var
|
|
5417
|
+
var throttleBucketRegistries = new Set;
|
|
5335
5418
|
function createMemoryThrottleMiddleware(options) {
|
|
5336
5419
|
const prefix = options.keyPrefix ?? "workhub:memory-throttle:";
|
|
5420
|
+
const buckets = new Map;
|
|
5421
|
+
throttleBucketRegistries.add(buckets);
|
|
5337
5422
|
return async (request, next) => {
|
|
5338
5423
|
const path = new URL(request.url).pathname;
|
|
5339
5424
|
const identity = readClientIp(request) ?? request.headers.get("authorization")?.slice(0, 32) ?? "unknown";
|
|
@@ -5356,6 +5441,11 @@ function createMemoryThrottleMiddleware(options) {
|
|
|
5356
5441
|
return await next();
|
|
5357
5442
|
};
|
|
5358
5443
|
}
|
|
5444
|
+
function resetMemoryThrottleForTests() {
|
|
5445
|
+
for (const buckets of throttleBucketRegistries) {
|
|
5446
|
+
buckets.clear();
|
|
5447
|
+
}
|
|
5448
|
+
}
|
|
5359
5449
|
// ../../src/core/metrics/prometheus.ts
|
|
5360
5450
|
class PrometheusRegistry {
|
|
5361
5451
|
httpRequestsTotal = new Map;
|
|
@@ -6671,7 +6761,8 @@ export {
|
|
|
6671
6761
|
authContext,
|
|
6672
6762
|
belongsTo,
|
|
6673
6763
|
belongsToMany,
|
|
6674
|
-
|
|
6764
|
+
bindBunSql,
|
|
6765
|
+
bindDatabaseConnection,
|
|
6675
6766
|
bindRouteModel,
|
|
6676
6767
|
buildMarkdownMailMessage,
|
|
6677
6768
|
buildRequestCacheKey,
|
|
@@ -6683,9 +6774,11 @@ export {
|
|
|
6683
6774
|
conditionalJsonResponse,
|
|
6684
6775
|
config,
|
|
6685
6776
|
configureMembershipLookup,
|
|
6777
|
+
configureWebLayoutData,
|
|
6686
6778
|
createAuthMiddleware,
|
|
6687
6779
|
createAuthorizeMiddleware,
|
|
6688
6780
|
createBodySizeLimitMiddleware,
|
|
6781
|
+
createBunSqlPool,
|
|
6689
6782
|
createCacheStore,
|
|
6690
6783
|
createCorsMiddleware,
|
|
6691
6784
|
createCsrfMiddleware,
|
|
@@ -6736,6 +6829,7 @@ export {
|
|
|
6736
6829
|
formatAdminValue,
|
|
6737
6830
|
freshDatabase,
|
|
6738
6831
|
getActiveDatabaseConnection,
|
|
6832
|
+
getBoundDatabaseConnection,
|
|
6739
6833
|
getDefaultDatabasePool,
|
|
6740
6834
|
getDefaultDatabaseQuery,
|
|
6741
6835
|
getMigrationStatus,
|
|
@@ -6780,6 +6874,7 @@ export {
|
|
|
6780
6874
|
morphTo,
|
|
6781
6875
|
noContentResponse,
|
|
6782
6876
|
normalizeMetricPath,
|
|
6877
|
+
notFoundHtmlResponse,
|
|
6783
6878
|
paginatedResponse,
|
|
6784
6879
|
parseMultipartUpload,
|
|
6785
6880
|
parsePaginationQuery,
|
|
@@ -6794,6 +6889,7 @@ export {
|
|
|
6794
6889
|
readSubmittedCsrfToken,
|
|
6795
6890
|
readSubmittedCsrfTokenFromBody,
|
|
6796
6891
|
readTenancyDriver,
|
|
6892
|
+
redirectResponse,
|
|
6797
6893
|
registerDefaultDatabasePool,
|
|
6798
6894
|
registerModelRepository,
|
|
6799
6895
|
registerShutdownHandler,
|
|
@@ -6801,7 +6897,9 @@ export {
|
|
|
6801
6897
|
repositoryConnection,
|
|
6802
6898
|
requestIdMiddleware,
|
|
6803
6899
|
required,
|
|
6900
|
+
resetBoundDatabaseConnection,
|
|
6804
6901
|
resetDefaultStorage,
|
|
6902
|
+
resetMemoryThrottleForTests,
|
|
6805
6903
|
resolveApplicationAuth,
|
|
6806
6904
|
resolveApplicationCache,
|
|
6807
6905
|
resolveApplicationConfig,
|
|
@@ -6821,6 +6919,7 @@ export {
|
|
|
6821
6919
|
resolveUserTenantId,
|
|
6822
6920
|
resolveWebLayoutData,
|
|
6823
6921
|
rollbackDatabase,
|
|
6922
|
+
rssResponse,
|
|
6824
6923
|
runDueScheduledTasks,
|
|
6825
6924
|
runGracefulShutdown,
|
|
6826
6925
|
runInTransaction,
|
|
@@ -6841,6 +6940,7 @@ export {
|
|
|
6841
6940
|
storageFacade as storage,
|
|
6842
6941
|
stringRule,
|
|
6843
6942
|
stripMarkdown,
|
|
6943
|
+
textResponse,
|
|
6844
6944
|
toPaginatedResourceCollection,
|
|
6845
6945
|
toResourceCollection,
|
|
6846
6946
|
trustForwardedFor,
|
|
@@ -6850,5 +6950,6 @@ export {
|
|
|
6850
6950
|
withMiddleware,
|
|
6851
6951
|
withMigrationLock,
|
|
6852
6952
|
wrapMarkdownMailLayout,
|
|
6853
|
-
wrapRouteHandler
|
|
6953
|
+
wrapRouteHandler,
|
|
6954
|
+
xmlResponse
|
|
6854
6955
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@getstrata/core",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.60",
|
|
4
4
|
"description": "Strata — Laravel-inspired Bun framework public API",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -205,6 +205,11 @@
|
|
|
205
205
|
"import": "./dist/entries/database/boundConnection.js",
|
|
206
206
|
"default": "./dist/entries/database/boundConnection.js"
|
|
207
207
|
},
|
|
208
|
+
"./database/bunSql": {
|
|
209
|
+
"types": "./dist/core/database/bunSql.d.ts",
|
|
210
|
+
"import": "./dist/entries/database/bunSql.js",
|
|
211
|
+
"default": "./dist/entries/database/bunSql.js"
|
|
212
|
+
},
|
|
208
213
|
"./database/connection": {
|
|
209
214
|
"types": "./dist/core/database/connection.d.ts",
|
|
210
215
|
"import": "./dist/entries/database/connection.js",
|
|
@@ -306,7 +311,7 @@
|
|
|
306
311
|
"default": "./dist/entries/events.js"
|
|
307
312
|
},
|
|
308
313
|
"./facades": {
|
|
309
|
-
"types": "./dist/core/facades.d.ts",
|
|
314
|
+
"types": "./dist/core/facades/index.d.ts",
|
|
310
315
|
"import": "./dist/entries/facades.js",
|
|
311
316
|
"default": "./dist/entries/facades.js"
|
|
312
317
|
},
|
|
@@ -765,14 +770,15 @@
|
|
|
765
770
|
"types": "./dist/framework/public-api.d.ts",
|
|
766
771
|
"files": [
|
|
767
772
|
"dist",
|
|
768
|
-
"README.md"
|
|
773
|
+
"README.md",
|
|
774
|
+
"CHANGELOG.md"
|
|
769
775
|
],
|
|
770
776
|
"scripts": {
|
|
771
777
|
"build": "bun run build:bundle && bun run build:shims && bun run build:subpaths && bun run build:types",
|
|
772
778
|
"build:bundle": "bun build index.ts --outdir dist --target bun --external bun --external eta",
|
|
773
779
|
"build:types": "tsc -p tsconfig.types.json",
|
|
774
780
|
"prepublishOnly": "bun run build && bun ../../scripts/prepare-core-package-publish.ts",
|
|
775
|
-
"build:subpaths": "bun build entries/auth/accessControl.ts entries/auth/abilityChecker.ts entries/auth/membershipMiddleware.ts entries/auth/membershipScope.ts entries/auth/membershipService.ts entries/auth/oauth/oidcProvider.ts entries/auth/oauth/providers.ts entries/auth/oauth/samlProvider.ts entries/auth/oauth/types.ts entries/auth/password.ts entries/auth/policy.ts entries/auth/scimAuthMiddleware.ts entries/auth/sessionCookie.ts entries/auth/sessionGuard.ts entries/auth/tokenHash.ts entries/audit/exportAuditLogs.ts entries/audit/siemFormatter.ts entries/admin/formatValue.ts entries/admin/registry.ts entries/admin/types.ts entries/cache/tags.ts entries/cache/createCacheStore.ts entries/cache/repository.ts entries/cache/simpleCache.ts entries/cache/simpleCacheStore.ts entries/config/envSchema.ts entries/contracts/serviceTokens.ts entries/contracts/container.ts entries/contracts/di.ts entries/crypto/fieldEncryption.ts entries/crypto/mfaSecret.ts entries/database/errors.ts entries/database/factory.ts entries/database/migrations.ts entries/database/migrations/types.ts entries/database/model.ts entries/database/query.ts entries/database/relationships.ts entries/database/repositoryQuery.ts entries/database/seeders.ts entries/database/seeders/types.ts entries/database/schema.ts entries/database/table.ts entries/database/types.ts entries/database/whereBuilder.ts entries/facades.ts entries/http/authMiddleware.ts entries/http/authorizeMiddleware.ts entries/http/bodySizeLimitMiddleware.ts entries/http/clientIp.ts entries/http/cookies.ts entries/http/contentNegotiation.ts entries/http/conditionalResponse.ts entries/http/corsMiddleware.ts entries/http/csrfMiddleware.ts entries/http/csrfProtection.ts entries/http/csrfToken.ts entries/http/etag.ts entries/http/flashSession.ts entries/http/flashMiddleware.ts entries/http/formRequest.ts entries/http/metricsMiddleware.ts entries/http/loginThrottleMiddleware.ts entries/http/memoryThrottleMiddleware.ts entries/http/pagination.ts entries/http/parseFormBody.ts entries/http/parseMultipartUpload.ts entries/http/requireAbilityMiddleware.ts entries/http/requireAuthMiddleware.ts entries/http/requireGlobalAdminMiddleware.ts entries/http/requireWebAuthMiddleware.ts entries/http/resources.ts entries/http/response.ts entries/http/route.ts entries/http/routeMiddleware.ts entries/http/routeModelBinding.ts entries/http/scimThrottleMiddleware.ts entries/http/securityHeadersMiddleware.ts entries/http/securedRouteModelBinding.ts entries/http/webErrorResponse.ts entries/http/webFormRequest.ts entries/http/throttleMiddleware.ts entries/http/validation.ts entries/jobs/dispatchWebhookJob.ts entries/jobs/invalidateCacheTagsJob.ts entries/lifecycle/gracefulShutdown.ts entries/logging/logger.ts entries/logging/requestLoggingMiddleware.ts entries/mail/mailer.ts entries/mail/markdownMail.ts entries/mail/markdownMailable.ts entries/media/imageTransform.ts entries/metrics/prometheus.ts entries/openapi/generator.ts entries/openapi/registeredRoute.ts entries/openapi/validate.ts entries/pagination.ts entries/queue.ts entries/queue/createAppQueue.ts entries/queue/failedJobRepository.ts entries/queue/failedJobService.ts entries/queue/jobRunner.ts entries/queue/queueMetrics.ts entries/queue/publicQueue.ts entries/queue/redisQueue.ts entries/queue/types.ts entries/runtime/asyncContextStore.ts entries/scheduler/schedule.ts entries/scheduler/osCron.ts entries/security/oauthState.ts entries/security/publicReads.ts entries/security/safeFetch.ts entries/security/safeUrl.ts entries/security/scimTenantTokens.ts entries/security/stripeWebhook.ts entries/security/timingSafeCompare.ts entries/security/tokenExpiry.ts entries/security/totp.ts entries/storage/storage.ts entries/tenant/tenancyConfig.ts entries/tenant/tenantDatabaseScope.ts entries/tenant/databaseTenantContext.ts entries/terminal/runShell.ts entries/tracing/tracingMiddleware.ts entries/validation/rules.ts entries/view.ts --outdir dist --root . --target bun --external bun --external eta --external @getstrata/core --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/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",
|
|
781
|
+
"build:subpaths": "bun build entries/auth/accessControl.ts entries/auth/abilityChecker.ts entries/auth/membershipMiddleware.ts entries/auth/membershipScope.ts entries/auth/membershipService.ts entries/auth/oauth/oidcProvider.ts entries/auth/oauth/providers.ts entries/auth/oauth/samlProvider.ts entries/auth/oauth/types.ts entries/auth/password.ts entries/auth/policy.ts entries/auth/scimAuthMiddleware.ts entries/auth/sessionCookie.ts entries/auth/sessionGuard.ts entries/auth/tokenHash.ts entries/audit/exportAuditLogs.ts entries/audit/siemFormatter.ts entries/admin/formatValue.ts entries/admin/registry.ts entries/admin/types.ts entries/cache/tags.ts entries/cache/createCacheStore.ts entries/cache/repository.ts entries/cache/simpleCache.ts entries/cache/simpleCacheStore.ts entries/config/envSchema.ts entries/contracts/serviceTokens.ts entries/contracts/container.ts entries/contracts/di.ts entries/crypto/fieldEncryption.ts entries/crypto/mfaSecret.ts entries/database/errors.ts entries/database/factory.ts entries/database/migrations.ts entries/database/migrations/types.ts entries/database/model.ts entries/database/query.ts entries/database/relationships.ts entries/database/repositoryQuery.ts entries/database/seeders.ts entries/database/seeders/types.ts entries/database/schema.ts entries/database/table.ts entries/database/types.ts entries/database/whereBuilder.ts entries/facades.ts entries/http/authMiddleware.ts entries/http/authorizeMiddleware.ts entries/http/bodySizeLimitMiddleware.ts entries/http/clientIp.ts entries/http/cookies.ts entries/http/contentNegotiation.ts entries/http/conditionalResponse.ts entries/http/corsMiddleware.ts entries/http/csrfMiddleware.ts entries/http/csrfProtection.ts entries/http/csrfToken.ts entries/http/etag.ts entries/http/flashSession.ts entries/http/flashMiddleware.ts entries/http/formRequest.ts entries/http/metricsMiddleware.ts entries/http/loginThrottleMiddleware.ts entries/http/memoryThrottleMiddleware.ts entries/http/pagination.ts entries/http/parseFormBody.ts entries/http/parseMultipartUpload.ts entries/http/requireAbilityMiddleware.ts entries/http/requireAuthMiddleware.ts entries/http/requireGlobalAdminMiddleware.ts entries/http/requireWebAuthMiddleware.ts entries/http/resources.ts entries/http/response.ts entries/http/route.ts entries/http/routeMiddleware.ts entries/http/routeModelBinding.ts entries/http/scimThrottleMiddleware.ts entries/http/securityHeadersMiddleware.ts entries/http/securedRouteModelBinding.ts entries/http/webErrorResponse.ts entries/http/webFormRequest.ts entries/http/throttleMiddleware.ts entries/http/validation.ts entries/jobs/dispatchWebhookJob.ts entries/jobs/invalidateCacheTagsJob.ts entries/lifecycle/gracefulShutdown.ts entries/logging/logger.ts entries/logging/requestLoggingMiddleware.ts entries/mail/mailer.ts entries/mail/markdownMail.ts entries/mail/markdownMailable.ts entries/media/imageTransform.ts entries/metrics/prometheus.ts entries/openapi/generator.ts entries/openapi/registeredRoute.ts entries/openapi/validate.ts entries/pagination.ts entries/queue.ts entries/queue/createAppQueue.ts entries/queue/failedJobRepository.ts entries/queue/failedJobService.ts entries/queue/jobRunner.ts entries/queue/queueMetrics.ts entries/queue/publicQueue.ts entries/queue/redisQueue.ts entries/queue/types.ts entries/runtime/asyncContextStore.ts entries/scheduler/schedule.ts entries/scheduler/osCron.ts entries/security/oauthState.ts entries/security/publicReads.ts entries/security/safeFetch.ts entries/security/safeUrl.ts entries/security/scimTenantTokens.ts entries/security/stripeWebhook.ts entries/security/timingSafeCompare.ts entries/security/tokenExpiry.ts entries/security/totp.ts entries/storage/storage.ts entries/tenant/tenancyConfig.ts entries/tenant/tenantDatabaseScope.ts entries/tenant/databaseTenantContext.ts entries/terminal/runShell.ts entries/tracing/tracingMiddleware.ts entries/validation/rules.ts entries/view.ts --outdir dist --root . --target bun --external bun --external eta --external @getstrata/core --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",
|
|
776
782
|
"build:shims": "bun ../../scripts/write-core-shared-shims.ts"
|
|
777
783
|
},
|
|
778
784
|
"publishConfig": {
|