@getstrata/core 0.5.47 → 0.5.48

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.
@@ -1589,14 +1589,6 @@ class BaseRepository {
1589
1589
  }
1590
1590
  }
1591
1591
  var baseRepository_default = BaseRepository;
1592
- // ../../src/core/database/connection.ts
1593
- function createDatabaseConnection(source) {
1594
- return {
1595
- async unsafe(query, params = []) {
1596
- return await source.unsafe(query, params);
1597
- }
1598
- };
1599
- }
1600
1592
  // ../../src/core/database/model.ts
1601
1593
  var modelRepositories = new WeakMap;
1602
1594
  var modelGlobalScopes = new WeakMap;
@@ -2537,19 +2529,6 @@ function createSchemaBuilder(db, driver) {
2537
2529
  function defineTable(definition) {
2538
2530
  return definition;
2539
2531
  }
2540
- // ../../src/core/database/transaction.ts
2541
- function supportsTransactions(connection) {
2542
- return typeof connection.begin === "function";
2543
- }
2544
- async function runInTransaction(operation) {
2545
- const pool = resolveRepositoryConnection();
2546
- if (!supportsTransactions(pool)) {
2547
- throw new Error("Active database connection does not support transactions. Bind a client with begin() via bindDatabaseConnection.");
2548
- }
2549
- return await pool.begin(async (transaction) => {
2550
- return await operation(createDatabaseConnection(transaction));
2551
- });
2552
- }
2553
2532
  // ../../src/config/database.ts
2554
2533
  function readInteger(name, fallback) {
2555
2534
  const parsed = Number.parseInt(process.env[name] ?? String(fallback), 10);
@@ -1,129 +1 @@
1
- // @bun
2
- // ../../src/core/database/connection.ts
3
- function createDatabaseConnection(source) {
4
- return {
5
- async unsafe(query, params = []) {
6
- return await source.unsafe(query, params);
7
- }
8
- };
9
- }
10
-
11
- // ../../src/core/database/boundConnection.ts
12
- var boundConnectionHolder = {
13
- connection: null
14
- };
15
- function bindDatabaseConnection(connection) {
16
- boundConnectionHolder.connection = connection;
17
- }
18
- function getBoundDatabaseConnection() {
19
- return boundConnectionHolder.connection;
20
- }
21
- function resetBoundDatabaseConnection() {
22
- boundConnectionHolder.connection = null;
23
- }
24
-
25
- // ../../src/core/runtime/asyncContextStore.ts
26
- import { AsyncLocalStorage } from "async_hooks";
27
- function createAsyncContextStore(key) {
28
- const symbol = Symbol.for(key);
29
- const globalRecord = globalThis;
30
- const existing = globalRecord[symbol];
31
- if (existing) {
32
- return existing;
33
- }
34
- const store = new AsyncLocalStorage;
35
- globalRecord[symbol] = store;
36
- return store;
37
- }
38
-
39
- // ../../src/core/database/connectionContext.ts
40
- var activeConnection = createAsyncContextStore("@getstrata/databaseConnectionContext");
41
- function runWithDatabaseConnection(connection, callback) {
42
- return activeConnection.run(connection, callback);
43
- }
44
- function getActiveDatabaseConnection(fallback) {
45
- return activeConnection.getStore() ?? fallback;
46
- }
47
- function hasActiveDatabaseConnection() {
48
- return activeConnection.getStore() !== undefined;
49
- }
50
-
51
- // ../../src/core/database/queryProxy.ts
52
- var POOL_CONNECTION_METHODS = new Set(["begin", "close", "connect"]);
53
- function createDatabaseQueryProxy(pool) {
54
- function resolveDatabase() {
55
- return getActiveDatabaseConnection(pool);
56
- }
57
- function resolveDatabaseForProperty(property) {
58
- if (typeof property === "string" && POOL_CONNECTION_METHODS.has(property)) {
59
- return pool;
60
- }
61
- return resolveDatabase();
62
- }
63
- return new Proxy(function database() {}, {
64
- apply(_target, _thisArg, args) {
65
- return resolveDatabase()(...args);
66
- },
67
- get(_target, property) {
68
- const connection = resolveDatabaseForProperty(property);
69
- const value = connection[property];
70
- return typeof value === "function" ? value.bind(connection) : value;
71
- }
72
- });
73
- }
74
-
75
- // ../../src/core/database/defaultConnection.ts
76
- var defaultPool = {
77
- connection: null
78
- };
79
- var defaultQuery = {
80
- connection: null
81
- };
82
- function registerDefaultDatabasePool(connection) {
83
- defaultPool.connection = connection;
84
- defaultQuery.connection = createDatabaseQueryProxy(connection);
85
- }
86
- function getDefaultDatabasePool() {
87
- if (!defaultPool.connection) {
88
- throw new Error("Default database pool is not registered. Call registerDefaultDatabasePool() during app bootstrap.");
89
- }
90
- return defaultPool.connection;
91
- }
92
- function getDefaultDatabaseQuery() {
93
- if (!defaultQuery.connection) {
94
- throw new Error("Default database query handle is not registered. Call registerDefaultDatabasePool() during app bootstrap.");
95
- }
96
- return defaultQuery.connection;
97
- }
98
-
99
- // ../../src/core/database/repositoryConnection.ts
100
- function resolveRepositoryConnection() {
101
- return getBoundDatabaseConnection() ?? getDefaultDatabaseQuery();
102
- }
103
- var repositoryConnection = new Proxy(function repositoryConnection2() {}, {
104
- apply(_target, _thisArg, args) {
105
- return resolveRepositoryConnection()(...args);
106
- },
107
- get(_target, property) {
108
- const connection = resolveRepositoryConnection();
109
- const value = connection[property];
110
- return typeof value === "function" ? value.bind(connection) : value;
111
- }
112
- });
113
-
114
- // ../../src/core/database/transaction.ts
115
- function supportsTransactions(connection) {
116
- return typeof connection.begin === "function";
117
- }
118
- async function runInTransaction(operation) {
119
- const pool = resolveRepositoryConnection();
120
- if (!supportsTransactions(pool)) {
121
- throw new Error("Active database connection does not support transactions. Bind a client with begin() via bindDatabaseConnection.");
122
- }
123
- return await pool.begin(async (transaction) => {
124
- return await operation(createDatabaseConnection(transaction));
125
- });
126
- }
127
- export {
128
- runInTransaction
129
- };
1
+ export * from "../../index.js";
@@ -1611,14 +1611,6 @@ class BaseRepository {
1611
1611
  }
1612
1612
  }
1613
1613
  var baseRepository_default = BaseRepository;
1614
- // ../../src/core/database/connection.ts
1615
- function createDatabaseConnection(source) {
1616
- return {
1617
- async unsafe(query, params = []) {
1618
- return await source.unsafe(query, params);
1619
- }
1620
- };
1621
- }
1622
1614
  // ../../src/core/database/model.ts
1623
1615
  var modelRepositories = new WeakMap;
1624
1616
  var modelGlobalScopes = new WeakMap;
@@ -2559,19 +2551,6 @@ function createSchemaBuilder(db, driver) {
2559
2551
  function defineTable(definition) {
2560
2552
  return definition;
2561
2553
  }
2562
- // ../../src/core/database/transaction.ts
2563
- function supportsTransactions(connection) {
2564
- return typeof connection.begin === "function";
2565
- }
2566
- async function runInTransaction(operation) {
2567
- const pool = resolveRepositoryConnection();
2568
- if (!supportsTransactions(pool)) {
2569
- throw new Error("Active database connection does not support transactions. Bind a client with begin() via bindDatabaseConnection.");
2570
- }
2571
- return await pool.begin(async (transaction) => {
2572
- return await operation(createDatabaseConnection(transaction));
2573
- });
2574
- }
2575
2554
  // ../../src/config/database.ts
2576
2555
  function readInteger(name, fallback) {
2577
2556
  const parsed = Number.parseInt(process.env[name] ?? String(fallback), 10);
@@ -1383,14 +1383,6 @@ class BaseRepository {
1383
1383
  }
1384
1384
  }
1385
1385
  var baseRepository_default = BaseRepository;
1386
- // ../../src/core/database/connection.ts
1387
- function createDatabaseConnection(source) {
1388
- return {
1389
- async unsafe(query, params = []) {
1390
- return await source.unsafe(query, params);
1391
- }
1392
- };
1393
- }
1394
1386
  // ../../src/core/database/model.ts
1395
1387
  var modelRepositories = new WeakMap;
1396
1388
  var modelGlobalScopes = new WeakMap;
@@ -2331,19 +2323,6 @@ function createSchemaBuilder(db, driver) {
2331
2323
  function defineTable(definition) {
2332
2324
  return definition;
2333
2325
  }
2334
- // ../../src/core/database/transaction.ts
2335
- function supportsTransactions(connection) {
2336
- return typeof connection.begin === "function";
2337
- }
2338
- async function runInTransaction(operation) {
2339
- const pool = resolveRepositoryConnection();
2340
- if (!supportsTransactions(pool)) {
2341
- throw new Error("Active database connection does not support transactions. Bind a client with begin() via bindDatabaseConnection.");
2342
- }
2343
- return await pool.begin(async (transaction) => {
2344
- return await operation(createDatabaseConnection(transaction));
2345
- });
2346
- }
2347
2326
  // ../../src/core/queue/failedJobTable.ts
2348
2327
  var failedJobTable = defineTable({
2349
2328
  name: "failed_job",
@@ -1383,14 +1383,6 @@ class BaseRepository {
1383
1383
  }
1384
1384
  }
1385
1385
  var baseRepository_default = BaseRepository;
1386
- // ../../src/core/database/connection.ts
1387
- function createDatabaseConnection(source) {
1388
- return {
1389
- async unsafe(query, params = []) {
1390
- return await source.unsafe(query, params);
1391
- }
1392
- };
1393
- }
1394
1386
  // ../../src/core/database/model.ts
1395
1387
  var modelRepositories = new WeakMap;
1396
1388
  var modelGlobalScopes = new WeakMap;
@@ -2331,19 +2323,6 @@ function createSchemaBuilder(db, driver) {
2331
2323
  function defineTable(definition) {
2332
2324
  return definition;
2333
2325
  }
2334
- // ../../src/core/database/transaction.ts
2335
- function supportsTransactions(connection) {
2336
- return typeof connection.begin === "function";
2337
- }
2338
- async function runInTransaction(operation) {
2339
- const pool = resolveRepositoryConnection();
2340
- if (!supportsTransactions(pool)) {
2341
- throw new Error("Active database connection does not support transactions. Bind a client with begin() via bindDatabaseConnection.");
2342
- }
2343
- return await pool.begin(async (transaction) => {
2344
- return await operation(createDatabaseConnection(transaction));
2345
- });
2346
- }
2347
2326
  // ../../src/core/queue/failedJobTable.ts
2348
2327
  var failedJobTable = defineTable({
2349
2328
  name: "failed_job",
@@ -1383,14 +1383,6 @@ class BaseRepository {
1383
1383
  }
1384
1384
  }
1385
1385
  var baseRepository_default = BaseRepository;
1386
- // ../../src/core/database/connection.ts
1387
- function createDatabaseConnection(source) {
1388
- return {
1389
- async unsafe(query, params = []) {
1390
- return await source.unsafe(query, params);
1391
- }
1392
- };
1393
- }
1394
1386
  // ../../src/core/database/model.ts
1395
1387
  var modelRepositories = new WeakMap;
1396
1388
  var modelGlobalScopes = new WeakMap;
@@ -2331,19 +2323,6 @@ function createSchemaBuilder(db, driver) {
2331
2323
  function defineTable(definition) {
2332
2324
  return definition;
2333
2325
  }
2334
- // ../../src/core/database/transaction.ts
2335
- function supportsTransactions(connection) {
2336
- return typeof connection.begin === "function";
2337
- }
2338
- async function runInTransaction(operation) {
2339
- const pool = resolveRepositoryConnection();
2340
- if (!supportsTransactions(pool)) {
2341
- throw new Error("Active database connection does not support transactions. Bind a client with begin() via bindDatabaseConnection.");
2342
- }
2343
- return await pool.begin(async (transaction) => {
2344
- return await operation(createDatabaseConnection(transaction));
2345
- });
2346
- }
2347
2326
  // ../../src/core/queue/failedJobTable.ts
2348
2327
  var failedJobTable = defineTable({
2349
2328
  name: "failed_job",
@@ -1404,14 +1404,6 @@ class BaseRepository {
1404
1404
  }
1405
1405
  }
1406
1406
  var baseRepository_default = BaseRepository;
1407
- // ../../src/core/database/connection.ts
1408
- function createDatabaseConnection(source) {
1409
- return {
1410
- async unsafe(query, params = []) {
1411
- return await source.unsafe(query, params);
1412
- }
1413
- };
1414
- }
1415
1407
  // ../../src/core/database/model.ts
1416
1408
  var modelRepositories = new WeakMap;
1417
1409
  var modelGlobalScopes = new WeakMap;
@@ -2352,19 +2344,6 @@ function createSchemaBuilder(db, driver) {
2352
2344
  function defineTable(definition) {
2353
2345
  return definition;
2354
2346
  }
2355
- // ../../src/core/database/transaction.ts
2356
- function supportsTransactions(connection) {
2357
- return typeof connection.begin === "function";
2358
- }
2359
- async function runInTransaction(operation) {
2360
- const pool = resolveRepositoryConnection();
2361
- if (!supportsTransactions(pool)) {
2362
- throw new Error("Active database connection does not support transactions. Bind a client with begin() via bindDatabaseConnection.");
2363
- }
2364
- return await pool.begin(async (transaction) => {
2365
- return await operation(createDatabaseConnection(transaction));
2366
- });
2367
- }
2368
2347
  // ../../src/core/queue/failedJobTable.ts
2369
2348
  var failedJobTable = defineTable({
2370
2349
  name: "failed_job",
@@ -1596,14 +1596,6 @@ class BaseRepository {
1596
1596
  }
1597
1597
  }
1598
1598
  var baseRepository_default = BaseRepository;
1599
- // ../../src/core/database/connection.ts
1600
- function createDatabaseConnection(source) {
1601
- return {
1602
- async unsafe(query, params = []) {
1603
- return await source.unsafe(query, params);
1604
- }
1605
- };
1606
- }
1607
1599
  // ../../src/core/database/model.ts
1608
1600
  var modelRepositories = new WeakMap;
1609
1601
  var modelGlobalScopes = new WeakMap;
@@ -2544,19 +2536,6 @@ function createSchemaBuilder(db, driver) {
2544
2536
  function defineTable(definition) {
2545
2537
  return definition;
2546
2538
  }
2547
- // ../../src/core/database/transaction.ts
2548
- function supportsTransactions(connection) {
2549
- return typeof connection.begin === "function";
2550
- }
2551
- async function runInTransaction(operation) {
2552
- const pool = resolveRepositoryConnection();
2553
- if (!supportsTransactions(pool)) {
2554
- throw new Error("Active database connection does not support transactions. Bind a client with begin() via bindDatabaseConnection.");
2555
- }
2556
- return await pool.begin(async (transaction) => {
2557
- return await operation(createDatabaseConnection(transaction));
2558
- });
2559
- }
2560
2539
  // ../../src/config/database.ts
2561
2540
  function readInteger(name, fallback) {
2562
2541
  const parsed = Number.parseInt(process.env[name] ?? String(fallback), 10);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@getstrata/core",
3
- "version": "0.5.47",
3
+ "version": "0.5.48",
4
4
  "description": "Strata — Laravel-inspired Bun framework public API",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -722,7 +722,7 @@
722
722
  "build:bundle": "bun build index.ts --outdir dist --target bun --external bun --external eta",
723
723
  "build:types": "tsc -p tsconfig.types.json",
724
724
  "prepublishOnly": "bun run build && bun ../../scripts/prepare-core-package-publish.ts",
725
- "build:subpaths": "bun build entries/auth/abilityChecker.ts entries/auth/membershipMiddleware.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/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/seeders.ts entries/database/seeders/types.ts entries/database/schema.ts entries/database/table.ts entries/database/transaction.ts entries/database/types.ts entries/http/authMiddleware.ts entries/http/authorizeMiddleware.ts entries/http/bodySizeLimitMiddleware.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/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/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/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/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/tenantDatabaseScope.ts entries/tenant/databaseTenantContext.ts entries/tracing/tracingMiddleware.ts entries/validation/rules.ts entries/view.ts --outdir dist --root . --target bun --external bun --external eta",
725
+ "build:subpaths": "bun build entries/auth/abilityChecker.ts entries/auth/membershipMiddleware.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/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/seeders.ts entries/database/seeders/types.ts entries/database/schema.ts entries/database/table.ts entries/database/types.ts entries/http/authMiddleware.ts entries/http/authorizeMiddleware.ts entries/http/bodySizeLimitMiddleware.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/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/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/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/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/tenantDatabaseScope.ts entries/tenant/databaseTenantContext.ts entries/tracing/tracingMiddleware.ts entries/validation/rules.ts entries/view.ts --outdir dist --root . --target bun --external bun --external eta",
726
726
  "build:shims": "bun ../../scripts/write-core-shared-shims.ts"
727
727
  },
728
728
  "publishConfig": {