@nextsparkjs/core 0.1.0-beta.194 → 0.1.0-beta.195
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/dist/components/app/guards/DeveloperGuard.d.ts +8 -1
- package/dist/components/app/guards/DeveloperGuard.d.ts.map +1 -1
- package/dist/components/app/guards/DeveloperGuard.js +2 -1
- package/dist/components/app/guards/SuperAdminGuard.d.ts +8 -1
- package/dist/components/app/guards/SuperAdminGuard.d.ts.map +1 -1
- package/dist/components/app/guards/SuperAdminGuard.js +2 -1
- package/dist/components/dashboard/block-editor/block-picker.d.ts.map +1 -1
- package/dist/components/dashboard/block-editor/block-picker.js +2 -1
- package/dist/components/dashboard/block-editor/builder-editor-view.d.ts.map +1 -1
- package/dist/components/dashboard/block-editor/builder-editor-view.js +39 -23
- package/dist/components/dashboard/block-editor/pattern-reference-preview.d.ts.map +1 -1
- package/dist/components/dashboard/block-editor/pattern-reference-preview.js +2 -1
- package/dist/components/dashboard/layouts/AuthGuard.d.ts.map +1 -1
- package/dist/components/dashboard/layouts/AuthGuard.js +3 -4
- package/dist/components/dashboard/layouts/AuthenticatedDashboardLayout.d.ts.map +1 -1
- package/dist/components/dashboard/layouts/AuthenticatedDashboardLayout.js +9 -10
- package/dist/components/dashboard/layouts/DashboardAuthLayout.d.ts.map +1 -1
- package/dist/components/dashboard/layouts/DashboardAuthLayout.js +3 -4
- package/dist/components/dashboard/layouts/DashboardAuthSkeleton.d.ts +2 -2
- package/dist/components/entities/wrappers/EntityDetailWrapper.d.ts.map +1 -1
- package/dist/components/entities/wrappers/EntityDetailWrapper.js +5 -2
- package/dist/components/entities/wrappers/EntityFormWrapper.d.ts.map +1 -1
- package/dist/components/entities/wrappers/EntityFormWrapper.js +5 -2
- package/dist/components/entities/wrappers/EntityListWrapper.d.ts.map +1 -1
- package/dist/components/entities/wrappers/EntityListWrapper.js +5 -2
- package/dist/components/ui/relation-display.d.ts.map +1 -1
- package/dist/components/ui/relation-display.js +2 -1
- package/dist/components/ui/user-display.d.ts.map +1 -1
- package/dist/components/ui/user-display.js +2 -1
- package/dist/emails/otp-verification.d.ts.map +1 -1
- package/dist/emails/otp-verification.js +5 -3
- package/dist/emails/reset-password.d.ts.map +1 -1
- package/dist/emails/reset-password.js +5 -3
- package/dist/emails/team-invitation.d.ts.map +1 -1
- package/dist/emails/team-invitation.js +3 -2
- package/dist/emails/verify-email.d.ts.map +1 -1
- package/dist/emails/verify-email.js +5 -3
- package/dist/hooks/useAuth.d.ts.map +1 -1
- package/dist/hooks/useAuth.js +21 -4
- package/dist/hooks/usePatternUsages.d.ts.map +1 -1
- package/dist/hooks/usePatternUsages.js +3 -2
- package/dist/lib/api/auth.d.ts +2 -0
- package/dist/lib/api/auth.d.ts.map +1 -1
- package/dist/lib/api/auth.js +10 -10
- package/dist/lib/api/client-headers.d.ts +11 -0
- package/dist/lib/api/client-headers.d.ts.map +1 -0
- package/dist/lib/api/client-headers.js +12 -0
- package/dist/lib/api/client-ip.d.ts +59 -0
- package/dist/lib/api/client-ip.d.ts.map +1 -0
- package/dist/lib/api/client-ip.js +91 -0
- package/dist/lib/api/cors-response.d.ts +54 -0
- package/dist/lib/api/cors-response.d.ts.map +1 -0
- package/dist/lib/api/cors-response.js +88 -0
- package/dist/lib/api/entities.d.ts.map +1 -1
- package/dist/lib/api/entities.js +4 -3
- package/dist/lib/api/entity/audit-log.d.ts.map +1 -1
- package/dist/lib/api/entity/audit-log.js +2 -1
- package/dist/lib/api/entity/generic-handler.d.ts.map +1 -1
- package/dist/lib/api/entity/generic-handler.js +23 -5
- package/dist/lib/api/helpers.d.ts +8 -2
- package/dist/lib/api/helpers.d.ts.map +1 -1
- package/dist/lib/api/helpers.js +27 -81
- package/dist/lib/api/keys.d.ts +6 -0
- package/dist/lib/api/keys.d.ts.map +1 -1
- package/dist/lib/api/keys.js +7 -1
- package/dist/lib/api/rate-limit.d.ts +4 -0
- package/dist/lib/api/rate-limit.d.ts.map +1 -1
- package/dist/lib/api/rate-limit.js +16 -40
- package/dist/lib/api/request-origin.d.ts +16 -7
- package/dist/lib/api/request-origin.d.ts.map +1 -1
- package/dist/lib/api/request-origin.js +43 -20
- package/dist/lib/auth/load-login-page.d.ts +10 -0
- package/dist/lib/auth/load-login-page.d.ts.map +1 -0
- package/dist/lib/auth/load-login-page.js +7 -0
- package/dist/lib/auth/runtime-readiness.d.ts.map +1 -1
- package/dist/lib/auth/runtime-readiness.js +2 -0
- package/dist/lib/auth/security-notifications/device-fingerprint.d.ts +1 -8
- package/dist/lib/auth/security-notifications/device-fingerprint.d.ts.map +1 -1
- package/dist/lib/auth/security-notifications/device-fingerprint.js +2 -12
- package/dist/lib/auth-email-callbacks.js +3 -3
- package/dist/lib/auth.d.ts.map +1 -1
- package/dist/lib/auth.js +7 -2
- package/dist/lib/config/config-client.d.ts.map +1 -1
- package/dist/lib/config/config-client.js +1 -1
- package/dist/lib/config/config-sync.d.ts.map +1 -1
- package/dist/lib/config/config-sync.js +1 -1
- package/dist/lib/config/public-config-client.d.ts +1 -0
- package/dist/lib/config/public-config-client.d.ts.map +1 -1
- package/dist/lib/config/public-config-client.js +3 -1
- package/dist/lib/config/types.d.ts +2 -0
- package/dist/lib/config/types.d.ts.map +1 -1
- package/dist/lib/constants/reserved-slugs.d.ts +17 -8
- package/dist/lib/constants/reserved-slugs.d.ts.map +1 -1
- package/dist/lib/constants/reserved-slugs.js +16 -52
- package/dist/lib/db.d.ts.map +1 -1
- package/dist/lib/db.js +9 -3
- package/dist/lib/entities/external-api-generator.d.ts.map +1 -1
- package/dist/lib/entities/external-api-generator.js +2 -4
- package/dist/lib/entities/public-slug.d.ts +46 -0
- package/dist/lib/entities/public-slug.d.ts.map +1 -0
- package/dist/lib/entities/public-slug.js +39 -0
- package/dist/routes/(auth)/signup/page.cc.d.ts +3 -8
- package/dist/routes/(auth)/signup/page.cc.d.ts.map +1 -1
- package/dist/routes/(auth)/signup/page.cc.js +7 -1
- package/dist/routes/(auth)/verify-email/page.d.ts.map +1 -1
- package/dist/routes/(auth)/verify-email/page.js +2 -1
- package/dist/routes/(public)/page.cc.d.ts +3 -0
- package/dist/routes/(public)/page.cc.d.ts.map +1 -0
- package/dist/routes/(public)/page.cc.js +3 -0
- package/dist/routes/_internal/area-access.cc.d.ts +21 -0
- package/dist/routes/_internal/area-access.cc.d.ts.map +1 -0
- package/dist/routes/_internal/area-access.cc.js +19 -0
- package/dist/routes/_internal/auth-layout.d.ts.map +1 -1
- package/dist/routes/_internal/auth-layout.js +3 -2
- package/dist/routes/_internal/dashboard-main-shared.d.ts +7 -0
- package/dist/routes/_internal/dashboard-main-shared.d.ts.map +1 -0
- package/dist/routes/_internal/dashboard-main-shared.js +49 -0
- package/dist/routes/_internal/default-auth-layout.d.ts.map +1 -1
- package/dist/routes/_internal/default-auth-layout.js +3 -2
- package/dist/routes/_internal/devtools-layout.cc.d.ts +3 -2
- package/dist/routes/_internal/devtools-layout.cc.d.ts.map +1 -1
- package/dist/routes/_internal/devtools-layout.cc.js +1 -1
- package/dist/routes/_internal/devtools-layout.d.ts +7 -2
- package/dist/routes/_internal/devtools-layout.d.ts.map +1 -1
- package/dist/routes/_internal/devtools-layout.js +4 -4
- package/dist/routes/_internal/entity-detail-route.cc.d.ts +8 -0
- package/dist/routes/_internal/entity-detail-route.cc.d.ts.map +1 -0
- package/dist/routes/_internal/entity-detail-route.cc.js +5 -0
- package/dist/routes/_internal/entity-edit-route.cc.d.ts +8 -0
- package/dist/routes/_internal/entity-edit-route.cc.d.ts.map +1 -0
- package/dist/routes/_internal/entity-edit-route.cc.js +5 -0
- package/dist/routes/_internal/public-archive-route.d.ts +1 -1
- package/dist/routes/_internal/public-archive-route.d.ts.map +1 -1
- package/dist/routes/_internal/public-archive-route.js +8 -3
- package/dist/routes/_internal/public-item-route.cc.d.ts +5 -1
- package/dist/routes/_internal/public-item-route.cc.d.ts.map +1 -1
- package/dist/routes/_internal/public-item-route.cc.js +2 -1
- package/dist/routes/_internal/public-item-route.d.ts +7 -0
- package/dist/routes/_internal/public-item-route.d.ts.map +1 -1
- package/dist/routes/_internal/public-item-route.js +6 -1
- package/dist/routes/_internal/superadmin-layout.cc.d.ts +2 -1
- package/dist/routes/_internal/superadmin-layout.cc.d.ts.map +1 -1
- package/dist/routes/_internal/superadmin-layout.cc.js +1 -1
- package/dist/routes/_internal/superadmin-layout.d.ts +7 -2
- package/dist/routes/_internal/superadmin-layout.d.ts.map +1 -1
- package/dist/routes/_internal/superadmin-layout.js +6 -6
- package/dist/routes/_internal/suspended-route.d.ts +16 -0
- package/dist/routes/_internal/suspended-route.d.ts.map +1 -0
- package/dist/routes/_internal/suspended-route.js +7 -0
- package/dist/routes/api/auth/[...all]/route.d.ts.map +1 -1
- package/dist/routes/api/auth/[...all]/route.js +4 -12
- package/dist/routes/api/csp-report/route.d.ts.map +1 -1
- package/dist/routes/api/csp-report/route.js +2 -13
- package/dist/routes/api/devtools/config/entities/route.d.ts +2 -0
- package/dist/routes/api/devtools/config/entities/route.d.ts.map +1 -1
- package/dist/routes/api/devtools/config/entities/route.js +2 -0
- package/dist/routes/api/devtools/config/theme/route.d.ts +2 -0
- package/dist/routes/api/devtools/config/theme/route.d.ts.map +1 -1
- package/dist/routes/api/devtools/config/theme/route.js +2 -0
- package/dist/routes/api/devtools/tests/[...path]/route.d.ts +2 -0
- package/dist/routes/api/devtools/tests/[...path]/route.d.ts.map +1 -1
- package/dist/routes/api/devtools/tests/[...path]/route.js +2 -0
- package/dist/routes/api/devtools/tests/route.d.ts +2 -0
- package/dist/routes/api/devtools/tests/route.d.ts.map +1 -1
- package/dist/routes/api/devtools/tests/route.js +2 -0
- package/dist/routes/api/health/route.d.ts +2 -0
- package/dist/routes/api/health/route.d.ts.map +1 -1
- package/dist/routes/api/health/route.js +2 -0
- package/dist/routes/api/internal/user-metadata/route.d.ts +2 -0
- package/dist/routes/api/internal/user-metadata/route.d.ts.map +1 -1
- package/dist/routes/api/internal/user-metadata/route.js +2 -0
- package/dist/routes/api/mcp/route.d.ts +2 -0
- package/dist/routes/api/mcp/route.d.ts.map +1 -1
- package/dist/routes/api/mcp/route.js +2 -0
- package/dist/routes/api/superadmin/subscriptions/route.d.ts +2 -0
- package/dist/routes/api/superadmin/subscriptions/route.d.ts.map +1 -1
- package/dist/routes/api/superadmin/subscriptions/route.js +2 -0
- package/dist/routes/api/superadmin/teams/[teamId]/route.d.ts +2 -0
- package/dist/routes/api/superadmin/teams/[teamId]/route.d.ts.map +1 -1
- package/dist/routes/api/superadmin/teams/[teamId]/route.js +2 -0
- package/dist/routes/api/superadmin/teams/route.d.ts +2 -0
- package/dist/routes/api/superadmin/teams/route.d.ts.map +1 -1
- package/dist/routes/api/superadmin/teams/route.js +2 -0
- package/dist/routes/api/superadmin/users/[userId]/route.d.ts +2 -0
- package/dist/routes/api/superadmin/users/[userId]/route.d.ts.map +1 -1
- package/dist/routes/api/superadmin/users/[userId]/route.js +2 -0
- package/dist/routes/api/superadmin/users/route.d.ts +2 -0
- package/dist/routes/api/superadmin/users/route.d.ts.map +1 -1
- package/dist/routes/api/superadmin/users/route.js +2 -0
- package/dist/routes/api/user/delete-account/route.d.ts +2 -0
- package/dist/routes/api/user/delete-account/route.d.ts.map +1 -1
- package/dist/routes/api/user/delete-account/route.js +2 -0
- package/dist/routes/api/user/plan-flags/route.d.ts +2 -0
- package/dist/routes/api/user/plan-flags/route.d.ts.map +1 -1
- package/dist/routes/api/user/plan-flags/route.js +2 -0
- package/dist/routes/api/user/profile/route.d.ts +2 -0
- package/dist/routes/api/user/profile/route.d.ts.map +1 -1
- package/dist/routes/api/user/profile/route.js +4 -3
- package/dist/routes/api/v1/[entity]/[id]/child/[childType]/[childId]/route.d.ts +2 -0
- package/dist/routes/api/v1/[entity]/[id]/child/[childType]/[childId]/route.d.ts.map +1 -1
- package/dist/routes/api/v1/[entity]/[id]/child/[childType]/[childId]/route.js +2 -0
- package/dist/routes/api/v1/[entity]/[id]/child/[childType]/route.d.ts +2 -0
- package/dist/routes/api/v1/[entity]/[id]/child/[childType]/route.d.ts.map +1 -1
- package/dist/routes/api/v1/[entity]/[id]/child/[childType]/route.js +2 -0
- package/dist/routes/api/v1/billing/cancel/route.d.ts +2 -0
- package/dist/routes/api/v1/billing/cancel/route.d.ts.map +1 -1
- package/dist/routes/api/v1/billing/cancel/route.js +2 -0
- package/dist/routes/api/v1/billing/change-plan/route.d.ts +2 -0
- package/dist/routes/api/v1/billing/change-plan/route.d.ts.map +1 -1
- package/dist/routes/api/v1/billing/change-plan/route.js +2 -0
- package/dist/routes/api/v1/billing/check-action/route.d.ts +2 -0
- package/dist/routes/api/v1/billing/check-action/route.d.ts.map +1 -1
- package/dist/routes/api/v1/billing/check-action/route.js +2 -0
- package/dist/routes/api/v1/billing/checkout/route.d.ts +2 -0
- package/dist/routes/api/v1/billing/checkout/route.d.ts.map +1 -1
- package/dist/routes/api/v1/billing/checkout/route.js +2 -0
- package/dist/routes/api/v1/billing/plans/route.d.ts +2 -0
- package/dist/routes/api/v1/billing/plans/route.d.ts.map +1 -1
- package/dist/routes/api/v1/billing/plans/route.js +2 -0
- package/dist/routes/api/v1/billing/portal/route.d.ts +2 -0
- package/dist/routes/api/v1/billing/portal/route.d.ts.map +1 -1
- package/dist/routes/api/v1/billing/portal/route.js +2 -0
- package/dist/routes/api/v1/blocks/[slug]/route.d.ts +2 -0
- package/dist/routes/api/v1/blocks/[slug]/route.d.ts.map +1 -1
- package/dist/routes/api/v1/blocks/[slug]/route.js +2 -0
- package/dist/routes/api/v1/blocks/route.d.ts +2 -0
- package/dist/routes/api/v1/blocks/route.d.ts.map +1 -1
- package/dist/routes/api/v1/blocks/route.js +2 -0
- package/dist/routes/api/v1/blocks/validate/route.d.ts +2 -0
- package/dist/routes/api/v1/blocks/validate/route.d.ts.map +1 -1
- package/dist/routes/api/v1/blocks/validate/route.js +2 -0
- package/dist/routes/api/v1/devtools/blocks/route.d.ts +2 -1
- package/dist/routes/api/v1/devtools/blocks/route.d.ts.map +1 -1
- package/dist/routes/api/v1/devtools/blocks/route.js +2 -9
- package/dist/routes/api/v1/devtools/docs/route.d.ts +2 -0
- package/dist/routes/api/v1/devtools/docs/route.d.ts.map +1 -1
- package/dist/routes/api/v1/devtools/docs/route.js +2 -0
- package/dist/routes/api/v1/devtools/features/route.d.ts +2 -1
- package/dist/routes/api/v1/devtools/features/route.d.ts.map +1 -1
- package/dist/routes/api/v1/devtools/features/route.js +2 -9
- package/dist/routes/api/v1/devtools/flows/route.d.ts +2 -1
- package/dist/routes/api/v1/devtools/flows/route.d.ts.map +1 -1
- package/dist/routes/api/v1/devtools/flows/route.js +2 -9
- package/dist/routes/api/v1/devtools/scheduled-actions/route.d.ts +2 -1
- package/dist/routes/api/v1/devtools/scheduled-actions/route.d.ts.map +1 -1
- package/dist/routes/api/v1/devtools/scheduled-actions/route.js +2 -9
- package/dist/routes/api/v1/devtools/scheduled-actions/run/route.d.ts +2 -1
- package/dist/routes/api/v1/devtools/scheduled-actions/run/route.d.ts.map +1 -1
- package/dist/routes/api/v1/devtools/scheduled-actions/run/route.js +2 -9
- package/dist/routes/api/v1/devtools/testing/route.d.ts +2 -1
- package/dist/routes/api/v1/devtools/testing/route.d.ts.map +1 -1
- package/dist/routes/api/v1/devtools/testing/route.js +2 -9
- package/dist/routes/api/v1/media/[id]/route.d.ts +2 -0
- package/dist/routes/api/v1/media/[id]/route.d.ts.map +1 -1
- package/dist/routes/api/v1/media/[id]/route.js +2 -0
- package/dist/routes/api/v1/media/[id]/tags/route.d.ts +2 -0
- package/dist/routes/api/v1/media/[id]/tags/route.d.ts.map +1 -1
- package/dist/routes/api/v1/media/[id]/tags/route.js +2 -0
- package/dist/routes/api/v1/media/check-duplicates/route.d.ts +2 -0
- package/dist/routes/api/v1/media/check-duplicates/route.d.ts.map +1 -1
- package/dist/routes/api/v1/media/check-duplicates/route.js +2 -0
- package/dist/routes/api/v1/media/route.d.ts +2 -0
- package/dist/routes/api/v1/media/route.d.ts.map +1 -1
- package/dist/routes/api/v1/media/route.js +2 -0
- package/dist/routes/api/v1/media/upload/route.d.ts +2 -0
- package/dist/routes/api/v1/media/upload/route.d.ts.map +1 -1
- package/dist/routes/api/v1/media/upload/route.js +2 -0
- package/dist/routes/api/v1/media-tags/route.d.ts +2 -0
- package/dist/routes/api/v1/media-tags/route.d.ts.map +1 -1
- package/dist/routes/api/v1/media-tags/route.js +2 -0
- package/dist/routes/api/v1/post-categories/[id]/route.d.ts +2 -0
- package/dist/routes/api/v1/post-categories/[id]/route.d.ts.map +1 -1
- package/dist/routes/api/v1/post-categories/[id]/route.js +2 -0
- package/dist/routes/api/v1/post-categories/route.d.ts +2 -0
- package/dist/routes/api/v1/post-categories/route.d.ts.map +1 -1
- package/dist/routes/api/v1/post-categories/route.js +2 -0
- package/dist/routes/api/v1/teams/[teamId]/members/route.js +2 -2
- package/dist/routes/api/v1/teams/[teamId]/subscription/route.d.ts +2 -0
- package/dist/routes/api/v1/teams/[teamId]/subscription/route.d.ts.map +1 -1
- package/dist/routes/api/v1/teams/[teamId]/subscription/route.js +2 -0
- package/dist/routes/api/v1/teams/[teamId]/usage/[limitSlug]/route.d.ts +2 -0
- package/dist/routes/api/v1/teams/[teamId]/usage/[limitSlug]/route.d.ts.map +1 -1
- package/dist/routes/api/v1/teams/[teamId]/usage/[limitSlug]/route.js +2 -0
- package/dist/routes/api/v1/users/[id]/route.d.ts.map +1 -1
- package/dist/routes/api/v1/users/[id]/route.js +3 -2
- package/dist/routes/api/v1/users/docs.md +34 -19
- package/dist/routes/api/v1/users/me/route.d.ts +6 -0
- package/dist/routes/api/v1/users/me/route.d.ts.map +1 -0
- package/dist/routes/api/v1/users/me/route.js +5 -0
- package/dist/routes/api/v1/users/presets.ts +2 -2
- package/dist/routes/dashboard/(main)/layout.cc.d.ts +4 -0
- package/dist/routes/dashboard/(main)/layout.cc.d.ts.map +1 -0
- package/dist/routes/dashboard/(main)/layout.cc.js +10 -0
- package/dist/routes/dashboard/(main)/layout.d.ts.map +1 -1
- package/dist/routes/dashboard/(main)/layout.js +3 -44
- package/dist/routes/dashboard/permission-denied/page.d.ts +1 -1
- package/dist/routes/dashboard/permission-denied/page.d.ts.map +1 -1
- package/dist/routes/dashboard/permission-denied/page.js +5 -1
- package/dist/routes/devtools/layout.cc.d.ts.map +1 -1
- package/dist/routes/devtools/layout.cc.js +5 -1
- package/dist/routes/manifest.json +10 -0
- package/dist/routes/robots.d.ts +10 -0
- package/dist/routes/robots.d.ts.map +1 -0
- package/dist/routes/robots.js +10 -0
- package/dist/routes/superadmin/layout.cc.d.ts.map +1 -1
- package/dist/routes/superadmin/layout.cc.js +5 -1
- package/dist/routes/variants.json +12 -2
- package/dist/templates/next.config.mjs +2 -29
- package/dist/templates/projects/blog/api/authors/[username]/route.ts +3 -0
- package/dist/templates/projects/blog/api/authors/route.ts +3 -0
- package/dist/templates/projects/blog/api/posts/public/route.ts +3 -0
- package/dist/templates/proxy.ts +12 -1
- package/dist/templates/public/favicon.ico +0 -0
- package/package.json +2 -2
- package/scripts/build/registry/__tests__/api-docs-colocated.test.mjs +3 -0
- package/scripts/build/registry/__tests__/billing-registry.test.mjs +50 -1
- package/scripts/build/registry/__tests__/block-registry.test.mjs +3 -0
- package/scripts/build/registry/__tests__/icons-discovery.test.mjs +3 -0
- package/scripts/build/registry/__tests__/quiet-console.mjs +17 -0
- package/scripts/build/registry/__tests__/safe-fs.test.mjs +3 -0
- package/scripts/build/registry/__tests__/team-roles.test.mjs +3 -0
- package/scripts/build/registry/discovery/permissions.test.mjs +3 -0
- package/scripts/build/registry/discovery/plugin-capabilities.mjs +2 -2
- package/scripts/build/registry/generators/billing-registry.mjs +7 -3
- package/scripts/build/registry/host/README.md +25 -1
- package/scripts/build/registry/host/__tests__/host-area-access.test.mjs +32 -0
- package/scripts/build/registry/host/__tests__/host-entities.test.mjs +32 -1
- package/scripts/build/registry/host/__tests__/host-plan.test.mjs +12 -2
- package/scripts/build/registry/host/entity-routes.mjs +9 -3
- package/scripts/build/registry/host/static-imports.mjs +4 -0
- package/scripts/build/routes-manifest.mjs +13 -1
- package/scripts/db/ssl-config.mjs +12 -1
- package/templates/next.config.mjs +2 -29
- package/templates/projects/blog/api/authors/[username]/route.ts +3 -0
- package/templates/projects/blog/api/authors/route.ts +3 -0
- package/templates/projects/blog/api/posts/public/route.ts +3 -0
- package/templates/proxy.ts +12 -1
- package/templates/public/favicon.ico +0 -0
|
@@ -10,7 +10,8 @@ export declare const withSuperadminAreaMessages: (Layout: ComponentType<Superadm
|
|
|
10
10
|
/**
|
|
11
11
|
* What a project's superadmin layout is composed with in Cache Components mode (the manifest's `compose` of that
|
|
12
12
|
* variant): the mode's messages and the server-side role check, then core's client guard around the project's layout,
|
|
13
|
-
* as `withSuperadminGuard` does in the ISR module.
|
|
13
|
+
* as `withSuperadminGuard` does in the ISR module. The guard is told the server checked the role (`serverChecked`), so it
|
|
14
|
+
* renders the area while the client session loads. A module of its own so only the superadmin route group imports the
|
|
14
15
|
* guard, the role check and their client components.
|
|
15
16
|
*/
|
|
16
17
|
export declare const withSuperadminGuard: (ProjectLayout: ComponentType<SuperadminLayoutProps>) => ({ children }: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"superadmin-layout.cc.d.ts","sourceRoot":"","sources":["../../../src/routes/_internal/superadmin-layout.cc.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAE1C,OAAO,EAAyB,KAAK,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAGvF;;;GAGG;AACH,eAAO,MAAM,0BAA0B,GAAI,QAAQ,aAAa,CAAC,qBAAqB,CAAC;;6CAA+D,CAAA;AAEtJ
|
|
1
|
+
{"version":3,"file":"superadmin-layout.cc.d.ts","sourceRoot":"","sources":["../../../src/routes/_internal/superadmin-layout.cc.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAE1C,OAAO,EAAyB,KAAK,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAGvF;;;GAGG;AACH,eAAO,MAAM,0BAA0B,GAAI,QAAQ,aAAa,CAAC,qBAAqB,CAAC;;6CAA+D,CAAA;AAEtJ;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,GAAI,eAAe,aAAa,CAAC,qBAAqB,CAAC;;6CAA2E,CAAA"}
|
|
@@ -2,4 +2,4 @@ import { withSuperadminMessages } from "./group-layouts.cc.js";
|
|
|
2
2
|
import { guardSuperadminLayout } from "./superadmin-layout.js";
|
|
3
3
|
import { withAreaGate } from "./area-access.js";
|
|
4
4
|
export const withSuperadminAreaMessages = (Layout) => withSuperadminMessages(withAreaGate("superadmin", Layout));
|
|
5
|
-
export const withSuperadminGuard = (ProjectLayout) => withSuperadminAreaMessages(guardSuperadminLayout(ProjectLayout));
|
|
5
|
+
export const withSuperadminGuard = (ProjectLayout) => withSuperadminAreaMessages(guardSuperadminLayout(ProjectLayout, true));
|
|
@@ -4,13 +4,17 @@ export declare const defaultMetadata: Metadata;
|
|
|
4
4
|
export interface SuperadminLayoutProps {
|
|
5
5
|
children: React.ReactNode;
|
|
6
6
|
}
|
|
7
|
+
/** `serverChecked`: see SuperAdminGuard (only the Cache Components module passes it, after its role check). */
|
|
8
|
+
type GuardedProps = SuperadminLayoutProps & {
|
|
9
|
+
serverChecked?: boolean;
|
|
10
|
+
};
|
|
7
11
|
/**
|
|
8
12
|
* Superadmin Layout
|
|
9
13
|
*
|
|
10
14
|
* Protected layout for superadmin-only sections with dedicated sidebar navigation.
|
|
11
15
|
* Owns the narrowly scoped client catalog for superadmin routes.
|
|
12
16
|
*/
|
|
13
|
-
export declare function SuperadminLayout({ children }:
|
|
17
|
+
export declare function SuperadminLayout({ children, serverChecked }: GuardedProps): import("react/jsx-runtime").JSX.Element;
|
|
14
18
|
/**
|
|
15
19
|
* Wraps a layout for this route group in the group's client messages, after the server-side role check
|
|
16
20
|
* (area-access): it runs before anything is rendered or sent, so a page load without the role gets a 307. The
|
|
@@ -26,10 +30,11 @@ export declare function withSuperadminMessages(ResolvedSuperadminLayout: Compone
|
|
|
26
30
|
* area-access). Shared by the message wrappers of both rendering modes (`withSuperadminGuard` here, and
|
|
27
31
|
* in `group-layouts.cc`).
|
|
28
32
|
*/
|
|
29
|
-
export declare function guardSuperadminLayout(ProjectLayout: ComponentType<SuperadminLayoutProps
|
|
33
|
+
export declare function guardSuperadminLayout(ProjectLayout: ComponentType<SuperadminLayoutProps>, serverChecked?: boolean): ({ children }: SuperadminLayoutProps) => import("react/jsx-runtime").JSX.Element;
|
|
30
34
|
/**
|
|
31
35
|
* The composition of a project's superadmin layout with core (the generated host): messages, then
|
|
32
36
|
* `guardSuperadminLayout` around the project's layout.
|
|
33
37
|
*/
|
|
34
38
|
export declare function withSuperadminGuard(ProjectLayout: ComponentType<SuperadminLayoutProps>): ({ children }: SuperadminLayoutProps) => Promise<import("react/jsx-runtime").JSX.Element>;
|
|
39
|
+
export {};
|
|
35
40
|
//# sourceMappingURL=superadmin-layout.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"superadmin-layout.d.ts","sourceRoot":"","sources":["../../../src/routes/_internal/superadmin-layout.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAU1C,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAIhC,eAAO,MAAM,eAAe,EAAE,QAI7B,CAAC;AAEF,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;
|
|
1
|
+
{"version":3,"file":"superadmin-layout.d.ts","sourceRoot":"","sources":["../../../src/routes/_internal/superadmin-layout.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAU1C,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAIhC,eAAO,MAAM,eAAe,EAAE,QAI7B,CAAC;AAEF,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,+GAA+G;AAC/G,KAAK,YAAY,GAAG,qBAAqB,GAAG;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAE,CAAA;AA6CvE;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,YAAY,2CAUzE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,wBAAwB,EAAE,aAAa,CAAC,qBAAqB,CAAC,IAChD,cAAc,qBAAqB,sDAUvF;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,aAAa,CAAC,qBAAqB,CAAC,EAAE,aAAa,UAAQ,IACtE,cAAc,qBAAqB,6CAe5E;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,aAAa,CAAC,qBAAqB,CAAC,kBA1CpB,qBAAqB,sDA4CvF"}
|
|
@@ -16,9 +16,9 @@ export const defaultMetadata = {
|
|
|
16
16
|
robots: "noindex, nofollow"
|
|
17
17
|
// Prevent search engine indexing
|
|
18
18
|
};
|
|
19
|
-
function SuperadminContent({ children }) {
|
|
19
|
+
function SuperadminContent({ children, serverChecked }) {
|
|
20
20
|
const pluginNavItems = getAllPluginNavItems("superadmin");
|
|
21
|
-
return /* @__PURE__ */ jsx(DashboardProviders, { children: /* @__PURE__ */ jsx(SuperAdminGuard, { children: /* @__PURE__ */ jsxs("div", { className: "flex h-screen bg-background", "data-cy": "superadmin-container", children: [
|
|
21
|
+
return /* @__PURE__ */ jsx(DashboardProviders, { children: /* @__PURE__ */ jsx(SuperAdminGuard, { serverChecked, children: /* @__PURE__ */ jsxs("div", { className: "flex h-screen bg-background", "data-cy": "superadmin-container", children: [
|
|
22
22
|
/* @__PURE__ */ jsx("div", { className: "hidden lg:block", children: /* @__PURE__ */ jsx(SuperadminSidebar, { pluginItems: pluginNavItems }) }),
|
|
23
23
|
/* @__PURE__ */ jsxs("div", { className: "flex-1 flex flex-col overflow-hidden", children: [
|
|
24
24
|
/* @__PURE__ */ jsx("div", { className: "lg:hidden bg-card border-b border-border p-4", children: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
@@ -32,8 +32,8 @@ function SuperadminContent({ children }) {
|
|
|
32
32
|
] })
|
|
33
33
|
] }) }) });
|
|
34
34
|
}
|
|
35
|
-
export function SuperadminLayout({ children }) {
|
|
36
|
-
return /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx("div", { className: "min-h-screen flex items-center justify-center", children: /* @__PURE__ */ jsx(Loader2, { className: "h-8 w-8 animate-spin text-muted-foreground" }) }), children: /* @__PURE__ */ jsx(SuperadminContent, { children }) });
|
|
35
|
+
export function SuperadminLayout({ children, serverChecked }) {
|
|
36
|
+
return /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx("div", { className: "min-h-screen flex items-center justify-center", children: /* @__PURE__ */ jsx(Loader2, { className: "h-8 w-8 animate-spin text-muted-foreground" }) }), children: /* @__PURE__ */ jsx(SuperadminContent, { serverChecked, children }) });
|
|
37
37
|
}
|
|
38
38
|
export function withSuperadminMessages(ResolvedSuperadminLayout) {
|
|
39
39
|
return async function SuperadminLayoutWithMessages({ children }) {
|
|
@@ -43,9 +43,9 @@ export function withSuperadminMessages(ResolvedSuperadminLayout) {
|
|
|
43
43
|
return /* @__PURE__ */ jsx(NextIntlClientProvider, { messages: selectMessages(messages, "superadmin", configuredNamespaces.superadmin), children: /* @__PURE__ */ jsx(ResolvedSuperadminLayout, { children }) });
|
|
44
44
|
};
|
|
45
45
|
}
|
|
46
|
-
export function guardSuperadminLayout(ProjectLayout) {
|
|
46
|
+
export function guardSuperadminLayout(ProjectLayout, serverChecked = false) {
|
|
47
47
|
return function GuardedSuperadminLayout({ children }) {
|
|
48
|
-
return /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx("div", { className: "min-h-screen flex items-center justify-center", children: /* @__PURE__ */ jsx(Loader2, { className: "h-8 w-8 animate-spin text-muted-foreground" }) }), children: /* @__PURE__ */ jsx(DashboardProviders, { children: /* @__PURE__ */ jsx(SuperAdminGuard, { children: /* @__PURE__ */ jsx(ProjectLayout, { children }) }) }) });
|
|
48
|
+
return /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx("div", { className: "min-h-screen flex items-center justify-center", children: /* @__PURE__ */ jsx(Loader2, { className: "h-8 w-8 animate-spin text-muted-foreground" }) }), children: /* @__PURE__ */ jsx(DashboardProviders, { children: /* @__PURE__ */ jsx(SuperAdminGuard, { serverChecked, children: /* @__PURE__ */ jsx(ProjectLayout, { children }) }) }) });
|
|
49
49
|
};
|
|
50
50
|
}
|
|
51
51
|
export function withSuperadminGuard(ProjectLayout) {
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* A route component behind its own Suspense boundary, for a host with `cacheComponents` on.
|
|
4
|
+
*
|
|
5
|
+
* A page that awaits `params` (or `searchParams`), redirects or answers notFound() is request-time work. The
|
|
6
|
+
* layouts of the Cache Components host already stream the page after their shell, but Next.js's instant-navigation
|
|
7
|
+
* check (the dev server runs it on every page, and logs "Could not validate ..." when it fails) wants a boundary
|
|
8
|
+
* between the segment it validates and that work, so a navigation to the segment finishes at once and the page
|
|
9
|
+
* streams in. The status a visitor gets is the one the host already gives: a redirect or a 404 thrown after the
|
|
10
|
+
* shell is sent reaches the browser as a 200 with a redirect or a not-found page.
|
|
11
|
+
*
|
|
12
|
+
* Only the Cache Components modules (`*.cc`) use it. An ISR host's pages are rendered before anything is sent, and
|
|
13
|
+
* keep a real 307 and 404.
|
|
14
|
+
*/
|
|
15
|
+
export declare function behindSuspense<Props extends object>(Route: (props: Props) => ReactNode | Promise<ReactNode>): (props: Props) => import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
//# sourceMappingURL=suspended-route.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"suspended-route.d.ts","sourceRoot":"","sources":["../../../src/routes/_internal/suspended-route.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAEhD;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,KAAK,SAAS,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,IACtE,OAAO,KAAK,6CAOjD"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Suspense } from "react";
|
|
3
|
+
export function behindSuspense(Route) {
|
|
4
|
+
return function RouteBehindSuspense(props) {
|
|
5
|
+
return /* @__PURE__ */ jsx(Suspense, { fallback: null, children: /* @__PURE__ */ jsx(Route, { ...props }) });
|
|
6
|
+
};
|
|
7
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../src/routes/api/auth/[...all]/route.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../src/routes/api/auth/[...all]/route.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAkBxD,wBAAsB,OAAO,CAAC,GAAG,EAAE,WAAW,kCAE7C;AAID,wBAAsB,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE;IAAE,MAAM,EAAE,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAA;CAAE,qBA4C1F;AAGD,wBAAsB,IAAI,CAAC,GAAG,EAAE,WAAW,qBAwI1C"}
|
|
@@ -6,6 +6,7 @@ import { isPublicSignupRestricted } from "@nextsparkjs/core/lib/teams/helpers";
|
|
|
6
6
|
import { TeamService } from "@nextsparkjs/core/lib/services";
|
|
7
7
|
import { wrapAuthHandlerWithCors, handleCorsPreflightRequest, addCorsHeaders } from "@nextsparkjs/core/lib/api/helpers";
|
|
8
8
|
import { checkDistributedRateLimit } from "@nextsparkjs/core/lib/api/rate-limit";
|
|
9
|
+
import { getClientIp } from "@nextsparkjs/core/lib/api/client-ip";
|
|
9
10
|
import { withSignupContext } from "@nextsparkjs/core/lib/auth-context";
|
|
10
11
|
import { dispatchSecurityNotificationsForRequest } from "@nextsparkjs/core/lib/auth/security-notifications";
|
|
11
12
|
import { verifyEmailPageUrl } from "@nextsparkjs/core/lib/auth/verify-email-link";
|
|
@@ -39,19 +40,10 @@ export async function GET(req, context) {
|
|
|
39
40
|
}
|
|
40
41
|
export async function POST(req) {
|
|
41
42
|
var _a, _b, _c, _d, _e;
|
|
42
|
-
const clientIp = (
|
|
43
|
-
const cfIp = req.headers.get("cf-connecting-ip");
|
|
44
|
-
if (cfIp) return cfIp;
|
|
45
|
-
const forwardedFor = req.headers.get("x-forwarded-for");
|
|
46
|
-
if (forwardedFor) {
|
|
47
|
-
const ips = forwardedFor.split(",").map((ip) => ip.trim()).filter(Boolean);
|
|
48
|
-
if (ips.length > 0) return ips[ips.length - 1];
|
|
49
|
-
}
|
|
50
|
-
return req.headers.get("x-real-ip") || "unknown";
|
|
51
|
-
})();
|
|
43
|
+
const clientIp = getClientIp(req.headers);
|
|
52
44
|
const rateLimitResult = await checkDistributedRateLimit(`auth:ip:${clientIp}`, "auth");
|
|
53
45
|
if (!rateLimitResult.allowed) {
|
|
54
|
-
return new NextResponse(JSON.stringify({ error: "Too many requests" }), {
|
|
46
|
+
return wrapAuthHandlerWithCors(async () => new NextResponse(JSON.stringify({ error: "Too many requests" }), {
|
|
55
47
|
status: 429,
|
|
56
48
|
headers: {
|
|
57
49
|
"Content-Type": "application/json",
|
|
@@ -60,7 +52,7 @@ export async function POST(req) {
|
|
|
60
52
|
"X-RateLimit-Remaining": "0",
|
|
61
53
|
"X-RateLimit-Reset": rateLimitResult.resetTime.toString()
|
|
62
54
|
}
|
|
63
|
-
});
|
|
55
|
+
}), req);
|
|
64
56
|
}
|
|
65
57
|
const readinessResponse = await getAuthReadinessResponse(req);
|
|
66
58
|
if (readinessResponse) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../src/routes/api/csp-report/route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAgB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../src/routes/api/csp-report/route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAgB,MAAM,aAAa,CAAC;AA2DxD,wBAAsB,IAAI,CAAC,OAAO,EAAE,WAAW,qBAyF9C;AAID,wBAAsB,OAAO,sBAS5B"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { randomUUID } from "node:crypto";
|
|
2
|
+
import { getClientIp } from "@nextsparkjs/core/lib/api/client-ip";
|
|
2
3
|
let checkDistributedRateLimit = null;
|
|
3
4
|
let createRateLimitErrorResponse = null;
|
|
4
5
|
let rateLimitLoaded = false;
|
|
@@ -16,25 +17,13 @@ async function ensureRateLimitLoaded() {
|
|
|
16
17
|
const getAllowedOrigin = () => {
|
|
17
18
|
return process.env.NEXT_PUBLIC_APP_URL || "http://localhost:3000";
|
|
18
19
|
};
|
|
19
|
-
function getClientIp(request) {
|
|
20
|
-
const forwardedFor = request.headers.get("x-forwarded-for");
|
|
21
|
-
if (forwardedFor) {
|
|
22
|
-
const ips = forwardedFor.split(",").map((ip) => ip.trim());
|
|
23
|
-
if (ips[0]) return ips[0];
|
|
24
|
-
}
|
|
25
|
-
const realIp = request.headers.get("x-real-ip");
|
|
26
|
-
if (realIp) return realIp;
|
|
27
|
-
const cfIp = request.headers.get("cf-connecting-ip");
|
|
28
|
-
if (cfIp) return cfIp;
|
|
29
|
-
return "unknown";
|
|
30
|
-
}
|
|
31
20
|
export async function POST(request) {
|
|
32
21
|
await ensureRateLimitLoaded();
|
|
33
22
|
const requestId = randomUUID().slice(0, 8);
|
|
34
23
|
let rateLimitHeaders = {};
|
|
35
24
|
if (checkDistributedRateLimit && createRateLimitErrorResponse) {
|
|
36
25
|
try {
|
|
37
|
-
const clientIp = getClientIp(request);
|
|
26
|
+
const clientIp = getClientIp(request.headers);
|
|
38
27
|
const rateLimitResult = await checkDistributedRateLimit(`csp-report:ip:${clientIp}`, "api");
|
|
39
28
|
if (!rateLimitResult.allowed) {
|
|
40
29
|
console.warn(`[CSP Report ${requestId}] Rate limit exceeded for IP: ${clientIp}`);
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { NextResponse } from "next/server";
|
|
2
|
+
import { corsPreflight } from '@nextsparkjs/core/lib/api/cors-response';
|
|
2
3
|
/**
|
|
3
4
|
* GET /api/devtools/config/entities
|
|
4
5
|
*
|
|
@@ -6,4 +7,5 @@ import { NextResponse } from "next/server";
|
|
|
6
7
|
* Only accessible to developer role
|
|
7
8
|
*/
|
|
8
9
|
export declare const GET: (request: import("next/server").NextRequest) => Promise<NextResponse>;
|
|
10
|
+
export declare const OPTIONS: typeof corsPreflight;
|
|
9
11
|
//# sourceMappingURL=route.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../../src/routes/api/devtools/config/entities/route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../../src/routes/api/devtools/config/entities/route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAI3C,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAgCxE;;;;;GAKG;AACH,eAAO,MAAM,GAAG,uEAwEN,CAAC;AAEX,eAAO,MAAM,OAAO,sBAAgB,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { getTypedSession } from "@nextsparkjs/core/lib/auth";
|
|
|
2
2
|
import { NextResponse } from "next/server";
|
|
3
3
|
import { getEntityRegistry } from "@nextsparkjs/core/lib/entities/queries";
|
|
4
4
|
import { withRateLimitTier } from "@nextsparkjs/core/lib/api/rate-limit";
|
|
5
|
+
import { corsPreflight } from "@nextsparkjs/core/lib/api/cors-response";
|
|
5
6
|
function isEntityConfig(entity) {
|
|
6
7
|
return "slug" in entity;
|
|
7
8
|
}
|
|
@@ -61,3 +62,4 @@ export const GET = withRateLimitTier(async (request) => {
|
|
|
61
62
|
);
|
|
62
63
|
}
|
|
63
64
|
}, "read");
|
|
65
|
+
export const OPTIONS = corsPreflight;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { NextResponse } from "next/server";
|
|
2
|
+
import { corsPreflight } from '@nextsparkjs/core/lib/api/cors-response';
|
|
2
3
|
/**
|
|
3
4
|
* GET /api/devtools/config/theme
|
|
4
5
|
*
|
|
@@ -6,4 +7,5 @@ import { NextResponse } from "next/server";
|
|
|
6
7
|
* Only accessible to developer role
|
|
7
8
|
*/
|
|
8
9
|
export declare const GET: (request: import("next/server").NextRequest) => Promise<NextResponse>;
|
|
10
|
+
export declare const OPTIONS: typeof corsPreflight;
|
|
9
11
|
//# sourceMappingURL=route.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../../src/routes/api/devtools/config/theme/route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../../src/routes/api/devtools/config/theme/route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAExE;;;;;GAKG;AACH,eAAO,MAAM,GAAG,uEAoDN,CAAC;AAEX,eAAO,MAAM,OAAO,sBAAgB,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { getTypedSession } from "@nextsparkjs/core/lib/auth";
|
|
|
2
2
|
import { NextResponse } from "next/server";
|
|
3
3
|
import { ThemeService } from "@nextsparkjs/core/lib/services/theme.service";
|
|
4
4
|
import { withRateLimitTier } from "@nextsparkjs/core/lib/api/rate-limit";
|
|
5
|
+
import { corsPreflight } from "@nextsparkjs/core/lib/api/cors-response";
|
|
5
6
|
export const GET = withRateLimitTier(async (request) => {
|
|
6
7
|
try {
|
|
7
8
|
const session = await getTypedSession(request.headers);
|
|
@@ -46,3 +47,4 @@ export const GET = withRateLimitTier(async (request) => {
|
|
|
46
47
|
);
|
|
47
48
|
}
|
|
48
49
|
}, "read");
|
|
50
|
+
export const OPTIONS = corsPreflight;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { NextResponse } from "next/server";
|
|
2
|
+
import { corsPreflight } from '@nextsparkjs/core/lib/api/cors-response';
|
|
2
3
|
/**
|
|
3
4
|
* GET /api/devtools/tests/[...path]
|
|
4
5
|
*
|
|
@@ -12,4 +13,5 @@ export declare const GET: (request: import("next/server").NextRequest, args_0: {
|
|
|
12
13
|
path: string[];
|
|
13
14
|
}>;
|
|
14
15
|
}) => Promise<NextResponse>;
|
|
16
|
+
export declare const OPTIONS: typeof corsPreflight;
|
|
15
17
|
//# sourceMappingURL=route.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../../src/routes/api/devtools/tests/[...path]/route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../../src/routes/api/devtools/tests/[...path]/route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAK3C,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAExE;;;;;;;GAOG;AACH,eAAO,MAAM,GAAG;YAEQ,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;2BA0GzC,CAAC;AAEX,eAAO,MAAM,OAAO,sBAAgB,CAAC"}
|
|
@@ -4,6 +4,7 @@ import { readFile, stat } from "fs/promises";
|
|
|
4
4
|
import { join } from "path";
|
|
5
5
|
import matter from "gray-matter";
|
|
6
6
|
import { withRateLimitTier } from "@nextsparkjs/core/lib/api/rate-limit";
|
|
7
|
+
import { corsPreflight } from "@nextsparkjs/core/lib/api/cors-response";
|
|
7
8
|
export const GET = withRateLimitTier(async (request, { params }) => {
|
|
8
9
|
try {
|
|
9
10
|
const session = await getTypedSession(request.headers);
|
|
@@ -91,3 +92,4 @@ export const GET = withRateLimitTier(async (request, { params }) => {
|
|
|
91
92
|
);
|
|
92
93
|
}
|
|
93
94
|
}, "read");
|
|
95
|
+
export const OPTIONS = corsPreflight;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { NextResponse } from "next/server";
|
|
2
|
+
import { corsPreflight } from '@nextsparkjs/core/lib/api/cors-response';
|
|
2
3
|
/**
|
|
3
4
|
* GET /api/devtools/tests
|
|
4
5
|
*
|
|
@@ -6,4 +7,5 @@ import { NextResponse } from "next/server";
|
|
|
6
7
|
* Only accessible to developer role
|
|
7
8
|
*/
|
|
8
9
|
export declare const GET: (request: import("next/server").NextRequest) => Promise<NextResponse>;
|
|
10
|
+
export declare const OPTIONS: typeof corsPreflight;
|
|
9
11
|
//# sourceMappingURL=route.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../src/routes/api/devtools/tests/route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../src/routes/api/devtools/tests/route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAI3C,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAmDxE;;;;;GAKG;AACH,eAAO,MAAM,GAAG,uEAkEN,CAAC;AAEX,eAAO,MAAM,OAAO,sBAAgB,CAAC"}
|
|
@@ -3,6 +3,7 @@ import { NextResponse } from "next/server";
|
|
|
3
3
|
import { readdir, stat } from "fs/promises";
|
|
4
4
|
import { join } from "path";
|
|
5
5
|
import { withRateLimitTier } from "@nextsparkjs/core/lib/api/rate-limit";
|
|
6
|
+
import { corsPreflight } from "@nextsparkjs/core/lib/api/cors-response";
|
|
6
7
|
async function buildFileTree(dirPath, basePath) {
|
|
7
8
|
const entries = await readdir(dirPath, { withFileTypes: true });
|
|
8
9
|
const tree = [];
|
|
@@ -87,3 +88,4 @@ export const GET = withRateLimitTier(async (request) => {
|
|
|
87
88
|
);
|
|
88
89
|
}
|
|
89
90
|
}, "read");
|
|
91
|
+
export const OPTIONS = corsPreflight;
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { corsPreflight } from "@nextsparkjs/core/lib/api/cors-response";
|
|
1
2
|
import { NextRequest, NextResponse } from "next/server";
|
|
2
3
|
export declare const GET: (request: NextRequest) => Promise<NextResponse>;
|
|
4
|
+
export declare const OPTIONS: typeof corsPreflight;
|
|
3
5
|
//# sourceMappingURL=route.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../src/routes/api/health/route.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../src/routes/api/health/route.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAGxE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAExD,eAAO,MAAM,GAAG,iDA8CN,CAAC;AAEX,eAAO,MAAM,OAAO,sBAAgB,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { queryWithRLS } from "@nextsparkjs/core/lib/db";
|
|
2
2
|
import { withRateLimitTier } from "@nextsparkjs/core/lib/api/rate-limit";
|
|
3
|
+
import { corsPreflight } from "@nextsparkjs/core/lib/api/cors-response";
|
|
3
4
|
import { isRedisConfigured } from "@nextsparkjs/core/lib/rate-limit-redis";
|
|
4
5
|
import { authenticateRequest } from "@nextsparkjs/core/lib/api/auth/dual-auth";
|
|
5
6
|
import { NextResponse } from "next/server";
|
|
@@ -37,3 +38,4 @@ export const GET = withRateLimitTier(async (request) => {
|
|
|
37
38
|
...dbError ? { error: dbError } : {}
|
|
38
39
|
}, { status: healthy ? 200 : 503 });
|
|
39
40
|
}, "read");
|
|
41
|
+
export const OPTIONS = corsPreflight;
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
import { NextRequest, NextResponse } from 'next/server';
|
|
2
|
+
import { corsPreflight } from '@nextsparkjs/core/lib/api/cors-response';
|
|
2
3
|
export declare const POST: (request: NextRequest) => Promise<NextResponse>;
|
|
4
|
+
export declare const OPTIONS: typeof corsPreflight;
|
|
3
5
|
//# sourceMappingURL=route.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../src/routes/api/internal/user-metadata/route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../src/routes/api/internal/user-metadata/route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAGvD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAA;AAIvE,eAAO,MAAM,IAAI,iDAwCN,CAAC;AAEZ,eAAO,MAAM,OAAO,sBAAgB,CAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { NextResponse } from "next/server";
|
|
2
2
|
import { MetaService } from "@nextsparkjs/core/lib/services/meta.service";
|
|
3
3
|
import { withRateLimitTier } from "@nextsparkjs/core/lib/api/rate-limit";
|
|
4
|
+
import { corsPreflight } from "@nextsparkjs/core/lib/api/cors-response";
|
|
4
5
|
import { authenticateRequest, createAuthFailureResponse } from "@nextsparkjs/core/lib/api/auth/dual-auth";
|
|
5
6
|
export const POST = withRateLimitTier(async (req) => {
|
|
6
7
|
try {
|
|
@@ -31,3 +32,4 @@ export const POST = withRateLimitTier(async (req) => {
|
|
|
31
32
|
}, { status: 500 });
|
|
32
33
|
}
|
|
33
34
|
}, "write");
|
|
35
|
+
export const OPTIONS = corsPreflight;
|
|
@@ -21,7 +21,9 @@
|
|
|
21
21
|
* - every tool call is audited to api_audit_log
|
|
22
22
|
*/
|
|
23
23
|
import { NextRequest, NextResponse } from 'next/server';
|
|
24
|
+
import { corsPreflight } from '@nextsparkjs/core/lib/api/cors-response';
|
|
24
25
|
export declare const POST: (request: NextRequest) => Promise<NextResponse>;
|
|
25
26
|
export declare function GET(): Promise<NextResponse>;
|
|
26
27
|
export declare function DELETE(): Promise<NextResponse>;
|
|
28
|
+
export declare const OPTIONS: typeof corsPreflight;
|
|
27
29
|
//# sourceMappingURL=route.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../src/routes/api/mcp/route.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../src/routes/api/mcp/route.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAOvD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAA;AAoIvE,eAAO,MAAM,IAAI,iDAA0C,CAAA;AAE3D,wBAAsB,GAAG,IAAI,OAAO,CAAC,YAAY,CAAC,CAKjD;AAED,wBAAsB,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC,CAKpD;AAED,eAAO,MAAM,OAAO,sBAAgB,CAAA"}
|
|
@@ -5,6 +5,7 @@ import {
|
|
|
5
5
|
} from "@nextsparkjs/core/lib/api/auth/dual-auth";
|
|
6
6
|
import { validateApiKey } from "@nextsparkjs/core/lib/api/auth";
|
|
7
7
|
import { withRateLimitTier } from "@nextsparkjs/core/lib/api/rate-limit";
|
|
8
|
+
import { corsPreflight } from "@nextsparkjs/core/lib/api/cors-response";
|
|
8
9
|
import { setEntityRegistry } from "@nextsparkjs/core/lib/entities/queries";
|
|
9
10
|
import { createMcpEngine } from "@nextsparkjs/core/lib/mcp";
|
|
10
11
|
import { ENTITY_REGISTRY, ENTITY_METADATA } from "@nextsparkjs/registries/entity-registry";
|
|
@@ -106,3 +107,4 @@ export async function DELETE() {
|
|
|
106
107
|
{ status: 405, headers: { Allow: "POST" } }
|
|
107
108
|
);
|
|
108
109
|
}
|
|
110
|
+
export const OPTIONS = corsPreflight;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { NextRequest, NextResponse } from 'next/server';
|
|
2
|
+
import { corsPreflight } from '@nextsparkjs/core/lib/api/cors-response';
|
|
2
3
|
/**
|
|
3
4
|
* GET /api/superadmin/subscriptions
|
|
4
5
|
*
|
|
@@ -6,4 +7,5 @@ import { NextRequest, NextResponse } from 'next/server';
|
|
|
6
7
|
* Supports filtering by status and pagination.
|
|
7
8
|
*/
|
|
8
9
|
export declare const GET: (request: NextRequest) => Promise<NextResponse>;
|
|
10
|
+
export declare const OPTIONS: typeof corsPreflight;
|
|
9
11
|
//# sourceMappingURL=route.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../src/routes/api/superadmin/subscriptions/route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../src/routes/api/superadmin/subscriptions/route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAIxD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AA+CxE;;;;;GAKG;AACH,eAAO,MAAM,GAAG,iDAkQJ,CAAC;AAEb,eAAO,MAAM,OAAO,sBAAgB,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { NextResponse } from "next/server";
|
|
|
2
2
|
import { getTypedSession } from "@nextsparkjs/core/lib/auth";
|
|
3
3
|
import { queryWithRLS } from "@nextsparkjs/core/lib/db";
|
|
4
4
|
import { withRateLimitTier } from "@nextsparkjs/core/lib/api/rate-limit";
|
|
5
|
+
import { corsPreflight } from "@nextsparkjs/core/lib/api/cors-response";
|
|
5
6
|
import { getBillingGateway } from "@nextsparkjs/core/lib/billing/gateways/factory";
|
|
6
7
|
export const GET = withRateLimitTier(async (request) => {
|
|
7
8
|
var _a;
|
|
@@ -233,3 +234,4 @@ export const GET = withRateLimitTier(async (request) => {
|
|
|
233
234
|
);
|
|
234
235
|
}
|
|
235
236
|
}, "strict");
|
|
237
|
+
export const OPTIONS = corsPreflight;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { NextRequest, NextResponse } from 'next/server';
|
|
2
|
+
import { corsPreflight } from '@nextsparkjs/core/lib/api/cors-response';
|
|
2
3
|
/**
|
|
3
4
|
* GET /api/superadmin/teams/[teamId]
|
|
4
5
|
*
|
|
@@ -10,4 +11,5 @@ export declare const GET: (request: NextRequest, args_0: {
|
|
|
10
11
|
teamId: string;
|
|
11
12
|
}>;
|
|
12
13
|
}) => Promise<NextResponse>;
|
|
14
|
+
export declare const OPTIONS: typeof corsPreflight;
|
|
13
15
|
//# sourceMappingURL=route.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../../src/routes/api/superadmin/teams/[teamId]/route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../../src/routes/api/superadmin/teams/[teamId]/route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAIxD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AA0DxE;;;;;GAKG;AACH,eAAO,MAAM,GAAG;YAEQ,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;2BA8NvC,CAAC;AAEb,eAAO,MAAM,OAAO,sBAAgB,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { NextResponse } from "next/server";
|
|
|
2
2
|
import { getTypedSession } from "@nextsparkjs/core/lib/auth";
|
|
3
3
|
import { queryWithRLS } from "@nextsparkjs/core/lib/db";
|
|
4
4
|
import { withRateLimitTier } from "@nextsparkjs/core/lib/api/rate-limit";
|
|
5
|
+
import { corsPreflight } from "@nextsparkjs/core/lib/api/cors-response";
|
|
5
6
|
import { getBillingGateway } from "@nextsparkjs/core/lib/billing/gateways/factory";
|
|
6
7
|
export const GET = withRateLimitTier(async (request, { params }) => {
|
|
7
8
|
var _a;
|
|
@@ -202,3 +203,4 @@ export const GET = withRateLimitTier(async (request, { params }) => {
|
|
|
202
203
|
);
|
|
203
204
|
}
|
|
204
205
|
}, "strict");
|
|
206
|
+
export const OPTIONS = corsPreflight;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { NextRequest, NextResponse } from 'next/server';
|
|
2
|
+
import { corsPreflight } from '@nextsparkjs/core/lib/api/cors-response';
|
|
2
3
|
/**
|
|
3
4
|
* GET /api/superadmin/teams
|
|
4
5
|
*
|
|
@@ -17,4 +18,5 @@ import { NextRequest, NextResponse } from 'next/server';
|
|
|
17
18
|
* - pagination: Pagination info
|
|
18
19
|
*/
|
|
19
20
|
export declare const GET: (request: NextRequest) => Promise<NextResponse>;
|
|
21
|
+
export declare const OPTIONS: typeof corsPreflight;
|
|
20
22
|
//# sourceMappingURL=route.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../src/routes/api/superadmin/teams/route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../src/routes/api/superadmin/teams/route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAKxD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAaxE;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,GAAG,iDAwJJ,CAAC;AAEb,eAAO,MAAM,OAAO,sBAAgB,CAAC"}
|
|
@@ -3,6 +3,7 @@ import { getTypedSession } from "@nextsparkjs/core/lib/auth";
|
|
|
3
3
|
import { queryWithRLS } from "@nextsparkjs/core/lib/db";
|
|
4
4
|
import { SYSTEM_ADMIN_TEAM_ID } from "@nextsparkjs/core/lib/api/auth/dual-auth";
|
|
5
5
|
import { withRateLimitTier } from "@nextsparkjs/core/lib/api/rate-limit";
|
|
6
|
+
import { corsPreflight } from "@nextsparkjs/core/lib/api/cors-response";
|
|
6
7
|
export const GET = withRateLimitTier(async (request) => {
|
|
7
8
|
var _a, _b, _c, _d;
|
|
8
9
|
try {
|
|
@@ -129,3 +130,4 @@ export const GET = withRateLimitTier(async (request) => {
|
|
|
129
130
|
);
|
|
130
131
|
}
|
|
131
132
|
}, "strict");
|
|
133
|
+
export const OPTIONS = corsPreflight;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { NextRequest, NextResponse } from 'next/server';
|
|
2
|
+
import { corsPreflight } from '@nextsparkjs/core/lib/api/cors-response';
|
|
2
3
|
interface RouteParams {
|
|
3
4
|
params: Promise<{
|
|
4
5
|
userId: string;
|
|
@@ -41,5 +42,6 @@ export declare const PATCH: (request: NextRequest, args_0: RouteParams) => Promi
|
|
|
41
42
|
* - Delete the user account
|
|
42
43
|
*/
|
|
43
44
|
export declare const DELETE: (request: NextRequest, args_0: RouteParams) => Promise<NextResponse>;
|
|
45
|
+
export declare const OPTIONS: typeof corsPreflight;
|
|
44
46
|
export {};
|
|
45
47
|
//# sourceMappingURL=route.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../../src/routes/api/superadmin/users/[userId]/route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../../src/routes/api/superadmin/users/[userId]/route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAIxD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AA+BxE,UAAU,WAAW;IACnB,MAAM,EAAE,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACrC;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,GAAG,sEA6KJ,CAAC;AAOb;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,KAAK,sEA+JN,CAAC;AAEb;;;;;;;;;;GAUG;AACH,eAAO,MAAM,MAAM,sEAgIP,CAAC;AAEb,eAAO,MAAM,OAAO,sBAAgB,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { NextResponse } from "next/server";
|
|
|
2
2
|
import { getTypedSession } from "@nextsparkjs/core/lib/auth";
|
|
3
3
|
import { queryWithRLS } from "@nextsparkjs/core/lib/db";
|
|
4
4
|
import { withRateLimitTier } from "@nextsparkjs/core/lib/api/rate-limit";
|
|
5
|
+
import { corsPreflight } from "@nextsparkjs/core/lib/api/cors-response";
|
|
5
6
|
export const GET = withRateLimitTier(async (request, { params }) => {
|
|
6
7
|
try {
|
|
7
8
|
const session = await getTypedSession(request.headers);
|
|
@@ -360,3 +361,4 @@ export const DELETE = withRateLimitTier(async (request, { params }) => {
|
|
|
360
361
|
);
|
|
361
362
|
}
|
|
362
363
|
}, "strict");
|
|
364
|
+
export const OPTIONS = corsPreflight;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { NextRequest, NextResponse } from 'next/server';
|
|
2
|
+
import { corsPreflight } from '@nextsparkjs/core/lib/api/cors-response';
|
|
2
3
|
/**
|
|
3
4
|
* GET /api/superadmin/users
|
|
4
5
|
*
|
|
@@ -34,4 +35,5 @@ export declare const POST: (request: NextRequest) => Promise<NextResponse>;
|
|
|
34
35
|
* Currently returns not implemented.
|
|
35
36
|
*/
|
|
36
37
|
export declare const PUT: (request: NextRequest) => Promise<NextResponse>;
|
|
38
|
+
export declare const OPTIONS: typeof corsPreflight;
|
|
37
39
|
//# sourceMappingURL=route.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../src/routes/api/superadmin/users/route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../src/routes/api/superadmin/users/route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAKxD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAExE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,GAAG,iDA6QJ,CAAC;AAEb;;;;;GAKG;AACH,eAAO,MAAM,IAAI,iDAKL,CAAC;AAEb;;;;;GAKG;AACH,eAAO,MAAM,GAAG,iDAKJ,CAAC;AAEb,eAAO,MAAM,OAAO,sBAAgB,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { NextResponse } from "next/server";
|
|
|
2
2
|
import { getTypedSession } from "@nextsparkjs/core/lib/auth";
|
|
3
3
|
import { queryWithRLS } from "@nextsparkjs/core/lib/db";
|
|
4
4
|
import { withRateLimitTier } from "@nextsparkjs/core/lib/api/rate-limit";
|
|
5
|
+
import { corsPreflight } from "@nextsparkjs/core/lib/api/cors-response";
|
|
5
6
|
export const GET = withRateLimitTier(async (request) => {
|
|
6
7
|
var _a, _b, _c;
|
|
7
8
|
try {
|
|
@@ -237,3 +238,4 @@ export const PUT = withRateLimitTier(async () => {
|
|
|
237
238
|
{ status: 501 }
|
|
238
239
|
);
|
|
239
240
|
}, "strict");
|
|
241
|
+
export const OPTIONS = corsPreflight;
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
import { NextRequest, NextResponse } from "next/server";
|
|
2
|
+
import { corsPreflight } from "@nextsparkjs/core/lib/api/cors-response";
|
|
2
3
|
export declare const DELETE: (request: NextRequest) => Promise<NextResponse>;
|
|
4
|
+
export declare const OPTIONS: typeof corsPreflight;
|
|
3
5
|
//# sourceMappingURL=route.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../src/routes/api/user/delete-account/route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../src/routes/api/user/delete-account/route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGxD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAGxE,eAAO,MAAM,MAAM,iDAoDP,CAAC;AAEb,eAAO,MAAM,OAAO,sBAAgB,CAAC"}
|