@getstrata/core 0.5.52 → 0.5.54

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.
Files changed (32) hide show
  1. package/README.md +6 -3
  2. package/dist/core/queue/failedJobRepository.d.ts +1 -1
  3. package/dist/core/queue/failedJobTable.d.ts +1 -1
  4. package/dist/entries/auth/accessControl.js +60 -1
  5. package/dist/entries/auth/membershipMiddleware.js +21 -0
  6. package/dist/entries/auth/membershipScope.js +336 -1
  7. package/dist/entries/auth/membershipService.js +304 -1
  8. package/dist/entries/auth/policy.js +81 -1
  9. package/dist/entries/auth/sessionGuard.js +8 -7
  10. package/dist/entries/database/repositoryQuery.js +655 -0
  11. package/dist/entries/database/whereBuilder.js +32 -0
  12. package/dist/entries/http/formRequest.js +102 -0
  13. package/dist/entries/http/pagination.js +102 -0
  14. package/dist/entries/http/routeModelBinding.js +102 -0
  15. package/dist/entries/http/securedRouteModelBinding.js +102 -0
  16. package/dist/entries/http/validation.js +145 -0
  17. package/dist/entries/http/webErrorResponse.js +8 -7
  18. package/dist/entries/http/webFormRequest.js +102 -0
  19. package/dist/entries/queue/createAppQueue.js +2 -2
  20. package/dist/entries/queue/failedJobRepository.js +2 -2
  21. package/dist/entries/queue/publicQueue.js +2 -2
  22. package/dist/entries/queue/queueMetrics.js +2 -2
  23. package/dist/entries/view.js +8 -7
  24. package/dist/index.js +2215 -2213
  25. package/dist/modules/user/apiTokenRepository.d.ts +1 -1
  26. package/dist/modules/user/apiTokenTable.d.ts +1 -1
  27. package/dist/modules/user/notificationRepository.d.ts +1 -1
  28. package/dist/modules/user/notificationTable.d.ts +1 -1
  29. package/dist/modules/user/oauthIdentityRepository.d.ts +2 -2
  30. package/dist/modules/user/repository.d.ts +1 -1
  31. package/dist/modules/user/table.d.ts +1 -1
  32. package/package.json +17 -2
@@ -1,4 +1,4 @@
1
- import { BaseRepository } from "@getstrata/core/database";
1
+ import { BaseRepository } from "@getstrata/core/database/baseRepository";
2
2
  import type { ApiTokenRecord } from "./types";
3
3
  declare class ApiTokenRepository extends BaseRepository<ApiTokenRecord, "id"> {
4
4
  constructor();
@@ -1,3 +1,3 @@
1
1
  import type { ApiTokenRecord } from "./types";
2
- declare const apiTokenTable: import("@getstrata/core/database").TableDefinition<ApiTokenRecord, "id">;
2
+ declare const apiTokenTable: import("@getstrata/core/database/table").TableDefinition<ApiTokenRecord, "id">;
3
3
  export { apiTokenTable };
@@ -1,4 +1,4 @@
1
- import { BaseRepository } from "@getstrata/core/database";
1
+ import { BaseRepository } from "@getstrata/core/database/baseRepository";
2
2
  import type { NotificationRecord } from "./notificationTypes";
3
3
  declare class NotificationRepository extends BaseRepository<NotificationRecord, "id"> {
4
4
  constructor();
@@ -1,3 +1,3 @@
1
1
  import type { NotificationRecord } from "./notificationTypes";
2
- declare const notificationTable: import("@getstrata/core/database").TableDefinition<NotificationRecord, "id">;
2
+ declare const notificationTable: import("@getstrata/core/database/table").TableDefinition<NotificationRecord, "id">;
3
3
  export { notificationTable };
@@ -1,6 +1,6 @@
1
- import { BaseRepository } from "@getstrata/core/database";
1
+ import { BaseRepository } from "@getstrata/core/database/baseRepository";
2
2
  import type { OAuthIdentityRecord } from "./types";
3
- declare const oauthIdentityTable: import("@getstrata/core/database").TableDefinition<OAuthIdentityRecord, "id">;
3
+ declare const oauthIdentityTable: import("@getstrata/core/database/table").TableDefinition<OAuthIdentityRecord, "id">;
4
4
  declare class OAuthIdentityRepository extends BaseRepository<OAuthIdentityRecord, "id"> {
5
5
  constructor();
6
6
  findByProviderUser(provider: string, providerUserId: string): Promise<OAuthIdentityRecord | null>;
@@ -1,4 +1,4 @@
1
- import { BaseRepository } from "@getstrata/core/database";
1
+ import { BaseRepository } from "@getstrata/core/database/baseRepository";
2
2
  import type { UserRecord } from "./types";
3
3
  declare class UserRepository extends BaseRepository<UserRecord, "id"> {
4
4
  constructor();
@@ -1,3 +1,3 @@
1
1
  import type { UserRecord } from "./types";
2
- declare const userTable: import("@getstrata/core/database").TableDefinition<UserRecord, "id">;
2
+ declare const userTable: import("@getstrata/core/database/table").TableDefinition<UserRecord, "id">;
3
3
  export { userTable };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@getstrata/core",
3
- "version": "0.5.52",
3
+ "version": "0.5.54",
4
4
  "description": "Strata — Laravel-inspired Bun framework public API",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -255,6 +255,11 @@
255
255
  "import": "./dist/entries/database/repositoryConnection.js",
256
256
  "default": "./dist/entries/database/repositoryConnection.js"
257
257
  },
258
+ "./database/repositoryQuery": {
259
+ "types": "./dist/core/database/repositoryQuery.d.ts",
260
+ "import": "./dist/entries/database/repositoryQuery.js",
261
+ "default": "./dist/entries/database/repositoryQuery.js"
262
+ },
258
263
  "./database/seeders": {
259
264
  "types": "./dist/core/database/seeders/runner.d.ts",
260
265
  "import": "./dist/entries/database/seeders.js",
@@ -285,6 +290,11 @@
285
290
  "import": "./dist/entries/database/types.js",
286
291
  "default": "./dist/entries/database/types.js"
287
292
  },
293
+ "./database/whereBuilder": {
294
+ "types": "./dist/core/database/whereBuilder.d.ts",
295
+ "import": "./dist/entries/database/whereBuilder.js",
296
+ "default": "./dist/entries/database/whereBuilder.js"
297
+ },
288
298
  "./errors/http": {
289
299
  "types": "./dist/core/errors/http.d.ts",
290
300
  "import": "./dist/entries/errors/http.js",
@@ -485,6 +495,11 @@
485
495
  "import": "./dist/entries/http/throttleMiddleware.js",
486
496
  "default": "./dist/entries/http/throttleMiddleware.js"
487
497
  },
498
+ "./http/validation": {
499
+ "types": "./dist/core/http/validation.d.ts",
500
+ "import": "./dist/entries/http/validation.js",
501
+ "default": "./dist/entries/http/validation.js"
502
+ },
488
503
  "./jobs/dispatchWebhookJob": {
489
504
  "types": "./dist/core/jobs/dispatchWebhookJob.d.ts",
490
505
  "import": "./dist/entries/jobs/dispatchWebhookJob.js",
@@ -727,7 +742,7 @@
727
742
  "build:bundle": "bun build index.ts --outdir dist --target bun --external bun --external eta",
728
743
  "build:types": "tsc -p tsconfig.types.json",
729
744
  "prepublishOnly": "bun run build && bun ../../scripts/prepare-core-package-publish.ts",
730
- "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/facades.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 --external @getstrata/core --external @getstrata/core/auth/accessControl --external @getstrata/core/auth/authContext --external @getstrata/core/auth/guard --external @getstrata/core/auth/membershipContext --external @getstrata/core/auth/membershipScope --external @getstrata/core/auth/membershipService --external @getstrata/core/auth/policy --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/repositoryConnection --external @getstrata/core/database/transaction --external @getstrata/core/errors/http --external @getstrata/core/events --external @getstrata/core/http --external @getstrata/core/http/middleware --external @getstrata/core/http/requestMetaContext --external @getstrata/core/notifications --external @getstrata/core/queue/jobRegistry --external @getstrata/core/runtime/applicationRegistry --external @getstrata/core/security/securityEvents --external @getstrata/core/tenant/tenantContext --external @getstrata/core/tenant/tenantMiddleware --external @getstrata/core/tracing/traceContext",
745
+ "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/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/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/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 --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/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/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/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/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/tenantContext --external @getstrata/core/tenant/tenantDatabaseScope --external @getstrata/core/tenant/databaseTenantContext --external @getstrata/core/tenant/tenantMiddleware --external @getstrata/core/tracing/traceContext --external @getstrata/core/tracing/tracingMiddleware --external @getstrata/core/validation/rules --external @getstrata/core/view",
731
746
  "build:shims": "bun ../../scripts/write-core-shared-shims.ts"
732
747
  },
733
748
  "publishConfig": {