@fuzdev/fuz_app 0.55.0 → 0.57.0
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/actions/CLAUDE.md +211 -155
- package/dist/actions/action_bridge.d.ts +8 -5
- package/dist/actions/action_bridge.d.ts.map +1 -1
- package/dist/actions/action_bridge.js +1 -11
- package/dist/actions/action_codegen.d.ts +19 -0
- package/dist/actions/action_codegen.d.ts.map +1 -1
- package/dist/actions/action_codegen.js +20 -14
- package/dist/actions/action_registry.d.ts.map +1 -1
- package/dist/actions/action_registry.js +5 -2
- package/dist/actions/action_rpc.d.ts +110 -44
- package/dist/actions/action_rpc.d.ts.map +1 -1
- package/dist/actions/action_rpc.js +92 -287
- package/dist/actions/action_spec.d.ts +55 -16
- package/dist/actions/action_spec.d.ts.map +1 -1
- package/dist/actions/action_spec.js +16 -11
- package/dist/actions/action_types.d.ts +28 -60
- package/dist/actions/action_types.d.ts.map +1 -1
- package/dist/actions/action_types.js +13 -5
- package/dist/actions/broadcast_api.d.ts +2 -2
- package/dist/actions/broadcast_api.js +2 -2
- package/dist/actions/compile_action_registry.d.ts +50 -0
- package/dist/actions/compile_action_registry.d.ts.map +1 -0
- package/dist/actions/compile_action_registry.js +69 -0
- package/dist/actions/heartbeat.d.ts +8 -4
- package/dist/actions/heartbeat.d.ts.map +1 -1
- package/dist/actions/heartbeat.js +5 -4
- package/dist/actions/perform_action.d.ts +145 -0
- package/dist/actions/perform_action.d.ts.map +1 -0
- package/dist/actions/perform_action.js +258 -0
- package/dist/actions/register_action_ws.d.ts +44 -38
- package/dist/actions/register_action_ws.d.ts.map +1 -1
- package/dist/actions/register_action_ws.js +101 -159
- package/dist/actions/register_ws_endpoint.d.ts +2 -10
- package/dist/actions/register_ws_endpoint.d.ts.map +1 -1
- package/dist/actions/register_ws_endpoint.js +32 -10
- package/dist/actions/transports_ws_auth_guard.d.ts +1 -1
- package/dist/actions/transports_ws_auth_guard.js +1 -1
- package/dist/actions/transports_ws_backend.d.ts +1 -1
- package/dist/actions/transports_ws_backend.js +1 -1
- package/dist/auth/CLAUDE.md +673 -442
- package/dist/auth/account_action_specs.d.ts +28 -7
- package/dist/auth/account_action_specs.d.ts.map +1 -1
- package/dist/auth/account_action_specs.js +7 -7
- package/dist/auth/account_actions.d.ts +8 -14
- package/dist/auth/account_actions.d.ts.map +1 -1
- package/dist/auth/account_actions.js +26 -32
- package/dist/auth/account_queries.d.ts +46 -13
- package/dist/auth/account_queries.d.ts.map +1 -1
- package/dist/auth/account_queries.js +73 -33
- package/dist/auth/account_routes.d.ts +4 -3
- package/dist/auth/account_routes.d.ts.map +1 -1
- package/dist/auth/account_routes.js +58 -33
- package/dist/auth/account_schema.d.ts +46 -54
- package/dist/auth/account_schema.d.ts.map +1 -1
- package/dist/auth/account_schema.js +21 -48
- package/dist/auth/admin_action_specs.d.ts +55 -21
- package/dist/auth/admin_action_specs.d.ts.map +1 -1
- package/dist/auth/admin_action_specs.js +42 -26
- package/dist/auth/admin_actions.d.ts +14 -21
- package/dist/auth/admin_actions.d.ts.map +1 -1
- package/dist/auth/admin_actions.js +47 -44
- package/dist/auth/audit_emitter.d.ts +160 -0
- package/dist/auth/audit_emitter.d.ts.map +1 -0
- package/dist/auth/audit_emitter.js +83 -0
- package/dist/auth/audit_log_queries.d.ts +17 -87
- package/dist/auth/audit_log_queries.d.ts.map +1 -1
- package/dist/auth/audit_log_queries.js +17 -96
- package/dist/auth/audit_log_routes.d.ts +1 -1
- package/dist/auth/audit_log_routes.d.ts.map +1 -1
- package/dist/auth/audit_log_routes.js +7 -3
- package/dist/auth/audit_log_schema.d.ts +48 -42
- package/dist/auth/audit_log_schema.d.ts.map +1 -1
- package/dist/auth/audit_log_schema.js +56 -43
- package/dist/auth/auth_guard_resolver.d.ts +44 -0
- package/dist/auth/auth_guard_resolver.d.ts.map +1 -0
- package/dist/auth/auth_guard_resolver.js +56 -0
- package/dist/auth/bootstrap_account.d.ts +7 -7
- package/dist/auth/bootstrap_account.d.ts.map +1 -1
- package/dist/auth/bootstrap_account.js +7 -7
- package/dist/auth/bootstrap_routes.d.ts.map +1 -1
- package/dist/auth/bootstrap_routes.js +11 -10
- package/dist/auth/cleanup.d.ts +20 -26
- package/dist/auth/cleanup.d.ts.map +1 -1
- package/dist/auth/cleanup.js +33 -47
- package/dist/auth/credential_type_schema.d.ts +115 -0
- package/dist/auth/credential_type_schema.d.ts.map +1 -0
- package/dist/auth/credential_type_schema.js +127 -0
- package/dist/auth/daemon_token_middleware.d.ts +1 -1
- package/dist/auth/daemon_token_middleware.js +3 -3
- package/dist/auth/ddl.d.ts +2 -2
- package/dist/auth/ddl.d.ts.map +1 -1
- package/dist/auth/ddl.js +6 -6
- package/dist/auth/deps.d.ts +7 -32
- package/dist/auth/deps.d.ts.map +1 -1
- package/dist/auth/grant_path_schema.d.ts +117 -0
- package/dist/auth/grant_path_schema.d.ts.map +1 -0
- package/dist/auth/grant_path_schema.js +137 -0
- package/dist/auth/invite_queries.d.ts +12 -1
- package/dist/auth/invite_queries.d.ts.map +1 -1
- package/dist/auth/invite_queries.js +12 -1
- package/dist/auth/invite_schema.d.ts +1 -1
- package/dist/auth/invite_schema.d.ts.map +1 -1
- package/dist/auth/invite_schema.js +1 -1
- package/dist/auth/middleware.d.ts.map +1 -1
- package/dist/auth/middleware.js +5 -2
- package/dist/auth/migrations.d.ts +22 -7
- package/dist/auth/migrations.d.ts.map +1 -1
- package/dist/auth/migrations.js +64 -25
- package/dist/auth/request_context.d.ts +157 -170
- package/dist/auth/request_context.d.ts.map +1 -1
- package/dist/auth/request_context.js +224 -268
- package/dist/auth/{permit_offer_action_specs.d.ts → role_grant_offer_action_specs.d.ts} +130 -100
- package/dist/auth/role_grant_offer_action_specs.d.ts.map +1 -0
- package/dist/auth/role_grant_offer_action_specs.js +262 -0
- package/dist/auth/role_grant_offer_actions.d.ts +104 -0
- package/dist/auth/role_grant_offer_actions.d.ts.map +1 -0
- package/dist/auth/{permit_offer_actions.js → role_grant_offer_actions.js} +153 -140
- package/dist/auth/{permit_offer_notifications.d.ts → role_grant_offer_notifications.d.ts} +80 -70
- package/dist/auth/role_grant_offer_notifications.d.ts.map +1 -0
- package/dist/auth/role_grant_offer_notifications.js +182 -0
- package/dist/auth/{permit_offer_queries.d.ts → role_grant_offer_queries.d.ts} +64 -64
- package/dist/auth/role_grant_offer_queries.d.ts.map +1 -0
- package/dist/auth/{permit_offer_queries.js → role_grant_offer_queries.js} +136 -123
- package/dist/auth/role_grant_offer_schema.d.ts +150 -0
- package/dist/auth/role_grant_offer_schema.d.ts.map +1 -0
- package/dist/auth/{permit_offer_schema.js → role_grant_offer_schema.js} +55 -36
- package/dist/auth/role_grant_queries.d.ts +231 -0
- package/dist/auth/role_grant_queries.d.ts.map +1 -0
- package/dist/auth/role_grant_queries.js +320 -0
- package/dist/auth/role_schema.d.ts +150 -40
- package/dist/auth/role_schema.d.ts.map +1 -1
- package/dist/auth/role_schema.js +144 -45
- package/dist/auth/scope_kind_schema.d.ts +96 -0
- package/dist/auth/scope_kind_schema.d.ts.map +1 -0
- package/dist/auth/scope_kind_schema.js +94 -0
- package/dist/auth/self_service_role_action_specs.d.ts +4 -1
- package/dist/auth/self_service_role_action_specs.d.ts.map +1 -1
- package/dist/auth/self_service_role_action_specs.js +2 -2
- package/dist/auth/self_service_role_actions.d.ts +35 -29
- package/dist/auth/self_service_role_actions.d.ts.map +1 -1
- package/dist/auth/self_service_role_actions.js +58 -48
- package/dist/auth/session_cookie.d.ts +43 -6
- package/dist/auth/session_cookie.d.ts.map +1 -1
- package/dist/auth/session_cookie.js +31 -5
- package/dist/auth/session_middleware.d.ts +37 -3
- package/dist/auth/session_middleware.d.ts.map +1 -1
- package/dist/auth/session_middleware.js +33 -7
- package/dist/auth/signup_routes.d.ts.map +1 -1
- package/dist/auth/signup_routes.js +48 -19
- package/dist/auth/standard_action_specs.d.ts +2 -2
- package/dist/auth/standard_action_specs.js +4 -4
- package/dist/auth/standard_rpc_actions.d.ts +23 -19
- package/dist/auth/standard_rpc_actions.d.ts.map +1 -1
- package/dist/auth/standard_rpc_actions.js +12 -12
- package/dist/db/migrate.d.ts +1 -1
- package/dist/db/migrate.js +1 -1
- package/dist/dev/setup.d.ts +2 -2
- package/dist/dev/setup.d.ts.map +1 -1
- package/dist/dev/setup.js +4 -4
- package/dist/env/load.d.ts +1 -1
- package/dist/env/load.js +1 -1
- package/dist/hono_context.d.ts +27 -45
- package/dist/hono_context.d.ts.map +1 -1
- package/dist/hono_context.js +14 -28
- package/dist/http/CLAUDE.md +235 -121
- package/dist/http/auth_shape.d.ts +191 -0
- package/dist/http/auth_shape.d.ts.map +1 -0
- package/dist/http/auth_shape.js +237 -0
- package/dist/http/common_routes.js +3 -3
- package/dist/http/db_routes.d.ts +4 -0
- package/dist/http/db_routes.d.ts.map +1 -1
- package/dist/http/db_routes.js +44 -7
- package/dist/http/error_schemas.d.ts +72 -39
- package/dist/http/error_schemas.d.ts.map +1 -1
- package/dist/http/error_schemas.js +81 -33
- package/dist/http/pending_effects.d.ts +71 -18
- package/dist/http/pending_effects.d.ts.map +1 -1
- package/dist/http/pending_effects.js +87 -18
- package/dist/http/proxy.d.ts +52 -5
- package/dist/http/proxy.d.ts.map +1 -1
- package/dist/http/proxy.js +92 -14
- package/dist/http/route_spec.d.ts +89 -75
- package/dist/http/route_spec.d.ts.map +1 -1
- package/dist/http/route_spec.js +54 -72
- package/dist/http/schema_helpers.d.ts +3 -14
- package/dist/http/schema_helpers.d.ts.map +1 -1
- package/dist/http/schema_helpers.js +2 -14
- package/dist/http/surface.d.ts +2 -10
- package/dist/http/surface.d.ts.map +1 -1
- package/dist/http/surface.js +3 -4
- package/dist/http/surface_query.d.ts +39 -35
- package/dist/http/surface_query.d.ts.map +1 -1
- package/dist/http/surface_query.js +79 -36
- package/dist/primitive_schemas.d.ts +39 -0
- package/dist/primitive_schemas.d.ts.map +1 -0
- package/dist/primitive_schemas.js +40 -0
- package/dist/realtime/sse_auth_guard.d.ts +5 -5
- package/dist/realtime/sse_auth_guard.js +9 -9
- package/dist/runtime/mock.d.ts +1 -1
- package/dist/runtime/mock.js +1 -1
- package/dist/server/app_backend.d.ts +14 -11
- package/dist/server/app_backend.d.ts.map +1 -1
- package/dist/server/app_backend.js +12 -8
- package/dist/server/app_server.d.ts +7 -7
- package/dist/server/app_server.d.ts.map +1 -1
- package/dist/server/app_server.js +35 -40
- package/dist/server/validate_nginx.d.ts +1 -1
- package/dist/server/validate_nginx.js +1 -1
- package/dist/testing/CLAUDE.md +50 -38
- package/dist/testing/admin_integration.d.ts +5 -6
- package/dist/testing/admin_integration.d.ts.map +1 -1
- package/dist/testing/admin_integration.js +87 -85
- package/dist/testing/app_server.d.ts +11 -14
- package/dist/testing/app_server.d.ts.map +1 -1
- package/dist/testing/app_server.js +16 -15
- package/dist/testing/assertions.d.ts.map +1 -1
- package/dist/testing/assertions.js +2 -1
- package/dist/testing/attack_surface.d.ts.map +1 -1
- package/dist/testing/attack_surface.js +15 -9
- package/dist/testing/audit_completeness.d.ts +2 -2
- package/dist/testing/audit_completeness.d.ts.map +1 -1
- package/dist/testing/audit_completeness.js +36 -36
- package/dist/testing/auth_apps.d.ts +5 -4
- package/dist/testing/auth_apps.d.ts.map +1 -1
- package/dist/testing/auth_apps.js +22 -19
- package/dist/testing/data_exposure.d.ts.map +1 -1
- package/dist/testing/data_exposure.js +5 -5
- package/dist/testing/db.d.ts +1 -1
- package/dist/testing/db.d.ts.map +1 -1
- package/dist/testing/db.js +4 -4
- package/dist/testing/db_entities.d.ts +22 -0
- package/dist/testing/db_entities.d.ts.map +1 -0
- package/dist/testing/db_entities.js +28 -0
- package/dist/testing/entities.d.ts +8 -7
- package/dist/testing/entities.d.ts.map +1 -1
- package/dist/testing/entities.js +21 -18
- package/dist/testing/integration.d.ts.map +1 -1
- package/dist/testing/integration.js +13 -14
- package/dist/testing/integration_helpers.d.ts +4 -4
- package/dist/testing/integration_helpers.d.ts.map +1 -1
- package/dist/testing/integration_helpers.js +20 -18
- package/dist/testing/middleware.d.ts +4 -4
- package/dist/testing/middleware.d.ts.map +1 -1
- package/dist/testing/middleware.js +12 -11
- package/dist/testing/rpc_attack_surface.d.ts.map +1 -1
- package/dist/testing/rpc_attack_surface.js +40 -24
- package/dist/testing/rpc_round_trip.d.ts +1 -1
- package/dist/testing/rpc_round_trip.d.ts.map +1 -1
- package/dist/testing/rpc_round_trip.js +14 -13
- package/dist/testing/sse_round_trip.d.ts +3 -4
- package/dist/testing/sse_round_trip.d.ts.map +1 -1
- package/dist/testing/sse_round_trip.js +7 -11
- package/dist/testing/standard.d.ts +1 -1
- package/dist/testing/stubs.d.ts +25 -0
- package/dist/testing/stubs.d.ts.map +1 -1
- package/dist/testing/stubs.js +43 -2
- package/dist/testing/surface_invariants.d.ts +14 -6
- package/dist/testing/surface_invariants.d.ts.map +1 -1
- package/dist/testing/surface_invariants.js +119 -43
- package/dist/testing/ws_round_trip.d.ts +12 -13
- package/dist/testing/ws_round_trip.d.ts.map +1 -1
- package/dist/testing/ws_round_trip.js +19 -11
- package/dist/ui/AdminAccounts.svelte +23 -20
- package/dist/ui/AdminOverview.svelte +15 -13
- package/dist/ui/AdminOverview.svelte.d.ts.map +1 -1
- package/dist/ui/{AdminPermitHistory.svelte → AdminRoleGrantHistory.svelte} +12 -12
- package/dist/ui/AdminRoleGrantHistory.svelte.d.ts +4 -0
- package/dist/ui/AdminRoleGrantHistory.svelte.d.ts.map +1 -0
- package/dist/ui/BootstrapForm.svelte +1 -1
- package/dist/ui/CLAUDE.md +60 -60
- package/dist/ui/{PermitOfferForm.svelte → RoleGrantOfferForm.svelte} +27 -26
- package/dist/ui/{PermitOfferForm.svelte.d.ts → RoleGrantOfferForm.svelte.d.ts} +7 -7
- package/dist/ui/RoleGrantOfferForm.svelte.d.ts.map +1 -0
- package/dist/ui/{PermitOfferHistory.svelte → RoleGrantOfferHistory.svelte} +12 -12
- package/dist/ui/{PermitOfferHistory.svelte.d.ts → RoleGrantOfferHistory.svelte.d.ts} +4 -4
- package/dist/ui/RoleGrantOfferHistory.svelte.d.ts.map +1 -0
- package/dist/ui/{PermitOfferInbox.svelte → RoleGrantOfferInbox.svelte} +14 -14
- package/dist/ui/{PermitOfferInbox.svelte.d.ts → RoleGrantOfferInbox.svelte.d.ts} +4 -4
- package/dist/ui/RoleGrantOfferInbox.svelte.d.ts.map +1 -0
- package/dist/ui/SignupForm.svelte +1 -1
- package/dist/ui/SurfaceExplorer.svelte +35 -15
- package/dist/ui/SurfaceExplorer.svelte.d.ts.map +1 -1
- package/dist/ui/account_sessions_state.svelte.d.ts +2 -3
- package/dist/ui/account_sessions_state.svelte.d.ts.map +1 -1
- package/dist/ui/account_sessions_state.svelte.js +2 -3
- package/dist/ui/admin_accounts_state.svelte.d.ts +18 -18
- package/dist/ui/admin_accounts_state.svelte.d.ts.map +1 -1
- package/dist/ui/admin_accounts_state.svelte.js +16 -16
- package/dist/ui/admin_rpc_adapters.d.ts +20 -20
- package/dist/ui/admin_rpc_adapters.d.ts.map +1 -1
- package/dist/ui/admin_rpc_adapters.js +17 -17
- package/dist/ui/admin_sessions_state.svelte.d.ts +2 -2
- package/dist/ui/admin_sessions_state.svelte.js +2 -2
- package/dist/ui/audit_log_state.svelte.d.ts +7 -7
- package/dist/ui/audit_log_state.svelte.d.ts.map +1 -1
- package/dist/ui/audit_log_state.svelte.js +6 -6
- package/dist/ui/auth_state.svelte.d.ts +3 -3
- package/dist/ui/auth_state.svelte.d.ts.map +1 -1
- package/dist/ui/auth_state.svelte.js +6 -6
- package/dist/ui/format_scope.d.ts +2 -2
- package/dist/ui/format_scope.js +2 -2
- package/dist/ui/{permit_offers_state.svelte.d.ts → role_grant_offers_state.svelte.d.ts} +30 -30
- package/dist/ui/role_grant_offers_state.svelte.d.ts.map +1 -0
- package/dist/ui/{permit_offers_state.svelte.js → role_grant_offers_state.svelte.js} +18 -18
- package/dist/ui/ui_format.js +2 -2
- package/package.json +3 -3
- package/dist/auth/permit_offer_action_specs.d.ts.map +0 -1
- package/dist/auth/permit_offer_action_specs.js +0 -258
- package/dist/auth/permit_offer_actions.d.ts +0 -110
- package/dist/auth/permit_offer_actions.d.ts.map +0 -1
- package/dist/auth/permit_offer_notifications.d.ts.map +0 -1
- package/dist/auth/permit_offer_notifications.js +0 -182
- package/dist/auth/permit_offer_queries.d.ts.map +0 -1
- package/dist/auth/permit_offer_schema.d.ts +0 -125
- package/dist/auth/permit_offer_schema.d.ts.map +0 -1
- package/dist/auth/permit_queries.d.ts +0 -222
- package/dist/auth/permit_queries.d.ts.map +0 -1
- package/dist/auth/permit_queries.js +0 -305
- package/dist/auth/require_keeper.d.ts +0 -20
- package/dist/auth/require_keeper.d.ts.map +0 -1
- package/dist/auth/require_keeper.js +0 -35
- package/dist/auth/route_guards.d.ts +0 -27
- package/dist/auth/route_guards.d.ts.map +0 -1
- package/dist/auth/route_guards.js +0 -38
- package/dist/auth/session_lifecycle.d.ts +0 -37
- package/dist/auth/session_lifecycle.d.ts.map +0 -1
- package/dist/auth/session_lifecycle.js +0 -29
- package/dist/ui/AdminPermitHistory.svelte.d.ts +0 -4
- package/dist/ui/AdminPermitHistory.svelte.d.ts.map +0 -1
- package/dist/ui/PermitOfferForm.svelte.d.ts.map +0 -1
- package/dist/ui/PermitOfferHistory.svelte.d.ts.map +0 -1
- package/dist/ui/PermitOfferInbox.svelte.d.ts.map +0 -1
- package/dist/ui/permit_offers_state.svelte.d.ts.map +0 -1
|
@@ -17,11 +17,17 @@
|
|
|
17
17
|
*/
|
|
18
18
|
import { z } from 'zod';
|
|
19
19
|
import type { RequestResponseActionSpec } from '../actions/action_spec.js';
|
|
20
|
-
/** Max audit-log page size.
|
|
20
|
+
/** Max audit-log page size. */
|
|
21
21
|
export declare const AUDIT_LOG_LIST_LIMIT_MAX = 200;
|
|
22
|
+
/** Default `admin_account_list` page size. */
|
|
23
|
+
export declare const ADMIN_ACCOUNT_LIST_DEFAULT_LIMIT = 50;
|
|
24
|
+
/** Max `admin_account_list` page size. */
|
|
25
|
+
export declare const ADMIN_ACCOUNT_LIST_LIMIT_MAX = 200;
|
|
22
26
|
/** Input for `admin_account_list`. */
|
|
23
27
|
export declare const AdminAccountListInput: z.ZodObject<{
|
|
24
28
|
acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
|
|
29
|
+
limit: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
30
|
+
offset: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
25
31
|
}, z.core.$strict>;
|
|
26
32
|
export type AdminAccountListInput = z.infer<typeof AdminAccountListInput>;
|
|
27
33
|
/** Output for `admin_account_list`. */
|
|
@@ -40,9 +46,10 @@ export declare const AdminAccountListOutput: z.ZodObject<{
|
|
|
40
46
|
id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
|
|
41
47
|
name: z.ZodString;
|
|
42
48
|
}, z.core.$strict>>;
|
|
43
|
-
|
|
49
|
+
role_grants: z.ZodArray<z.ZodObject<{
|
|
44
50
|
id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
|
|
45
51
|
role: z.ZodString;
|
|
52
|
+
scope_kind: z.ZodNullable<z.ZodString>;
|
|
46
53
|
scope_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
|
|
47
54
|
created_at: z.ZodString;
|
|
48
55
|
expires_at: z.ZodNullable<z.ZodString>;
|
|
@@ -51,6 +58,7 @@ export declare const AdminAccountListOutput: z.ZodObject<{
|
|
|
51
58
|
pending_offers: z.ZodArray<z.ZodObject<{
|
|
52
59
|
id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
|
|
53
60
|
role: z.ZodString;
|
|
61
|
+
scope_kind: z.ZodNullable<z.ZodString>;
|
|
54
62
|
scope_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
|
|
55
63
|
from_actor_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
|
|
56
64
|
from_username: z.ZodString;
|
|
@@ -143,15 +151,15 @@ export declare const AuditLogListOutput: z.ZodObject<{
|
|
|
143
151
|
}, z.core.$strict>>;
|
|
144
152
|
}, z.core.$strict>;
|
|
145
153
|
export type AuditLogListOutput = z.infer<typeof AuditLogListOutput>;
|
|
146
|
-
/** Input for `
|
|
147
|
-
export declare const
|
|
154
|
+
/** Input for `audit_log_role_grant_history`. */
|
|
155
|
+
export declare const AuditLogRoleGrantHistoryInput: z.ZodObject<{
|
|
148
156
|
limit: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
149
157
|
offset: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
150
158
|
acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
|
|
151
159
|
}, z.core.$strict>;
|
|
152
|
-
export type
|
|
153
|
-
/** Output for `
|
|
154
|
-
export declare const
|
|
160
|
+
export type AuditLogRoleGrantHistoryInput = z.infer<typeof AuditLogRoleGrantHistoryInput>;
|
|
161
|
+
/** Output for `audit_log_role_grant_history`. */
|
|
162
|
+
export declare const AuditLogRoleGrantHistoryOutput: z.ZodObject<{
|
|
155
163
|
events: z.ZodArray<z.ZodObject<{
|
|
156
164
|
id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
|
|
157
165
|
seq: z.ZodNumber;
|
|
@@ -171,7 +179,7 @@ export declare const AuditLogPermitHistoryOutput: z.ZodObject<{
|
|
|
171
179
|
target_username: z.ZodNullable<z.ZodString>;
|
|
172
180
|
}, z.core.$strict>>;
|
|
173
181
|
}, z.core.$strict>;
|
|
174
|
-
export type
|
|
182
|
+
export type AuditLogRoleGrantHistoryOutput = z.infer<typeof AuditLogRoleGrantHistoryOutput>;
|
|
175
183
|
/** Input for `invite_create`. At least one of `email` / `username` must be provided. */
|
|
176
184
|
export declare const InviteCreateInput: z.ZodObject<{
|
|
177
185
|
email: z.ZodOptional<z.ZodNullable<z.ZodEmail>>;
|
|
@@ -261,11 +269,15 @@ export declare const admin_account_list_action_spec: {
|
|
|
261
269
|
kind: "request_response";
|
|
262
270
|
initiator: "frontend";
|
|
263
271
|
auth: {
|
|
264
|
-
|
|
272
|
+
account: "required";
|
|
273
|
+
actor: "required";
|
|
274
|
+
roles: string[];
|
|
265
275
|
};
|
|
266
276
|
side_effects: false;
|
|
267
277
|
input: z.ZodObject<{
|
|
268
278
|
acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
|
|
279
|
+
limit: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
280
|
+
offset: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
269
281
|
}, z.core.$strict>;
|
|
270
282
|
output: z.ZodObject<{
|
|
271
283
|
accounts: z.ZodArray<z.ZodObject<{
|
|
@@ -282,9 +294,10 @@ export declare const admin_account_list_action_spec: {
|
|
|
282
294
|
id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
|
|
283
295
|
name: z.ZodString;
|
|
284
296
|
}, z.core.$strict>>;
|
|
285
|
-
|
|
297
|
+
role_grants: z.ZodArray<z.ZodObject<{
|
|
286
298
|
id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
|
|
287
299
|
role: z.ZodString;
|
|
300
|
+
scope_kind: z.ZodNullable<z.ZodString>;
|
|
288
301
|
scope_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
|
|
289
302
|
created_at: z.ZodString;
|
|
290
303
|
expires_at: z.ZodNullable<z.ZodString>;
|
|
@@ -293,6 +306,7 @@ export declare const admin_account_list_action_spec: {
|
|
|
293
306
|
pending_offers: z.ZodArray<z.ZodObject<{
|
|
294
307
|
id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
|
|
295
308
|
role: z.ZodString;
|
|
309
|
+
scope_kind: z.ZodNullable<z.ZodString>;
|
|
296
310
|
scope_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
|
|
297
311
|
from_actor_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
|
|
298
312
|
from_username: z.ZodString;
|
|
@@ -310,7 +324,9 @@ export declare const admin_session_list_action_spec: {
|
|
|
310
324
|
kind: "request_response";
|
|
311
325
|
initiator: "frontend";
|
|
312
326
|
auth: {
|
|
313
|
-
|
|
327
|
+
account: "required";
|
|
328
|
+
actor: "required";
|
|
329
|
+
roles: string[];
|
|
314
330
|
};
|
|
315
331
|
side_effects: false;
|
|
316
332
|
input: z.ZodObject<{
|
|
@@ -334,7 +350,9 @@ export declare const admin_session_revoke_all_action_spec: {
|
|
|
334
350
|
kind: "request_response";
|
|
335
351
|
initiator: "frontend";
|
|
336
352
|
auth: {
|
|
337
|
-
|
|
353
|
+
account: "required";
|
|
354
|
+
actor: "required";
|
|
355
|
+
roles: string[];
|
|
338
356
|
};
|
|
339
357
|
side_effects: true;
|
|
340
358
|
input: z.ZodObject<{
|
|
@@ -354,7 +372,9 @@ export declare const admin_token_revoke_all_action_spec: {
|
|
|
354
372
|
kind: "request_response";
|
|
355
373
|
initiator: "frontend";
|
|
356
374
|
auth: {
|
|
357
|
-
|
|
375
|
+
account: "required";
|
|
376
|
+
actor: "required";
|
|
377
|
+
roles: string[];
|
|
358
378
|
};
|
|
359
379
|
side_effects: true;
|
|
360
380
|
input: z.ZodObject<{
|
|
@@ -374,7 +394,9 @@ export declare const audit_log_list_action_spec: {
|
|
|
374
394
|
kind: "request_response";
|
|
375
395
|
initiator: "frontend";
|
|
376
396
|
auth: {
|
|
377
|
-
|
|
397
|
+
account: "required";
|
|
398
|
+
actor: "required";
|
|
399
|
+
roles: string[];
|
|
378
400
|
};
|
|
379
401
|
side_effects: false;
|
|
380
402
|
input: z.ZodObject<{
|
|
@@ -412,12 +434,14 @@ export declare const audit_log_list_action_spec: {
|
|
|
412
434
|
async: true;
|
|
413
435
|
description: string;
|
|
414
436
|
};
|
|
415
|
-
export declare const
|
|
437
|
+
export declare const audit_log_role_grant_history_action_spec: {
|
|
416
438
|
method: string;
|
|
417
439
|
kind: "request_response";
|
|
418
440
|
initiator: "frontend";
|
|
419
441
|
auth: {
|
|
420
|
-
|
|
442
|
+
account: "required";
|
|
443
|
+
actor: "required";
|
|
444
|
+
roles: string[];
|
|
421
445
|
};
|
|
422
446
|
side_effects: false;
|
|
423
447
|
input: z.ZodObject<{
|
|
@@ -453,7 +477,9 @@ export declare const invite_create_action_spec: {
|
|
|
453
477
|
kind: "request_response";
|
|
454
478
|
initiator: "frontend";
|
|
455
479
|
auth: {
|
|
456
|
-
|
|
480
|
+
account: "required";
|
|
481
|
+
actor: "required";
|
|
482
|
+
roles: string[];
|
|
457
483
|
};
|
|
458
484
|
side_effects: true;
|
|
459
485
|
input: z.ZodObject<{
|
|
@@ -482,7 +508,9 @@ export declare const invite_list_action_spec: {
|
|
|
482
508
|
kind: "request_response";
|
|
483
509
|
initiator: "frontend";
|
|
484
510
|
auth: {
|
|
485
|
-
|
|
511
|
+
account: "required";
|
|
512
|
+
actor: "required";
|
|
513
|
+
roles: string[];
|
|
486
514
|
};
|
|
487
515
|
side_effects: false;
|
|
488
516
|
input: z.ZodObject<{
|
|
@@ -509,7 +537,9 @@ export declare const invite_delete_action_spec: {
|
|
|
509
537
|
kind: "request_response";
|
|
510
538
|
initiator: "frontend";
|
|
511
539
|
auth: {
|
|
512
|
-
|
|
540
|
+
account: "required";
|
|
541
|
+
actor: "required";
|
|
542
|
+
roles: string[];
|
|
513
543
|
};
|
|
514
544
|
side_effects: true;
|
|
515
545
|
input: z.ZodObject<{
|
|
@@ -528,7 +558,9 @@ export declare const app_settings_get_action_spec: {
|
|
|
528
558
|
kind: "request_response";
|
|
529
559
|
initiator: "frontend";
|
|
530
560
|
auth: {
|
|
531
|
-
|
|
561
|
+
account: "required";
|
|
562
|
+
actor: "required";
|
|
563
|
+
roles: string[];
|
|
532
564
|
};
|
|
533
565
|
side_effects: false;
|
|
534
566
|
input: z.ZodObject<{
|
|
@@ -550,7 +582,9 @@ export declare const app_settings_update_action_spec: {
|
|
|
550
582
|
kind: "request_response";
|
|
551
583
|
initiator: "frontend";
|
|
552
584
|
auth: {
|
|
553
|
-
|
|
585
|
+
account: "required";
|
|
586
|
+
actor: "required";
|
|
587
|
+
roles: string[];
|
|
554
588
|
};
|
|
555
589
|
side_effects: true;
|
|
556
590
|
input: z.ZodObject<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin_action_specs.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/auth/admin_action_specs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAGtB,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"admin_action_specs.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/auth/admin_action_specs.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,16 +18,32 @@
|
|
|
18
18
|
import { z } from 'zod';
|
|
19
19
|
import { Uuid } from '@fuzdev/fuz_util/id.js';
|
|
20
20
|
import { ROLE_ADMIN, RoleName } from './role_schema.js';
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
21
|
+
import { AdminAccountEntryJson } from './account_schema.js';
|
|
22
|
+
import { Email, Username } from '../primitive_schemas.js';
|
|
23
|
+
import { ActingActor } from '../http/auth_shape.js';
|
|
24
|
+
import { AdminSessionJson, AUDIT_LOG_DEFAULT_LIMIT, AuditEventTypeName, AuditLogEventWithUsernamesJson, AuditOutcome, RoleGrantHistoryEventJson, } from './audit_log_schema.js';
|
|
23
25
|
import { InviteJson, InviteWithUsernamesJson } from './invite_schema.js';
|
|
24
26
|
import { AppSettingsWithUsernameJson } from './app_settings_schema.js';
|
|
25
|
-
/** Max audit-log page size.
|
|
27
|
+
/** Max audit-log page size. */
|
|
26
28
|
export const AUDIT_LOG_LIST_LIMIT_MAX = 200;
|
|
29
|
+
/** Default `admin_account_list` page size. */
|
|
30
|
+
export const ADMIN_ACCOUNT_LIST_DEFAULT_LIMIT = 50;
|
|
31
|
+
/** Max `admin_account_list` page size. */
|
|
32
|
+
export const ADMIN_ACCOUNT_LIST_LIMIT_MAX = 200;
|
|
27
33
|
// -- Input/output schemas ---------------------------------------------------
|
|
28
34
|
/** Input for `admin_account_list`. */
|
|
29
35
|
export const AdminAccountListInput = z.strictObject({
|
|
30
36
|
acting: ActingActor,
|
|
37
|
+
limit: z
|
|
38
|
+
.number()
|
|
39
|
+
.int()
|
|
40
|
+
.min(1)
|
|
41
|
+
.max(ADMIN_ACCOUNT_LIST_LIMIT_MAX)
|
|
42
|
+
.nullish()
|
|
43
|
+
.meta({
|
|
44
|
+
description: `Max accounts to return (default ${ADMIN_ACCOUNT_LIST_DEFAULT_LIMIT}, max ${ADMIN_ACCOUNT_LIST_LIMIT_MAX}).`,
|
|
45
|
+
}),
|
|
46
|
+
offset: z.number().int().min(0).nullish().meta({ description: 'Pagination offset.' }),
|
|
31
47
|
});
|
|
32
48
|
/** Output for `admin_account_list`. */
|
|
33
49
|
export const AdminAccountListOutput = z.strictObject({
|
|
@@ -95,8 +111,8 @@ export const AuditLogListInput = z.strictObject({
|
|
|
95
111
|
export const AuditLogListOutput = z.strictObject({
|
|
96
112
|
events: z.array(AuditLogEventWithUsernamesJson),
|
|
97
113
|
});
|
|
98
|
-
/** Input for `
|
|
99
|
-
export const
|
|
114
|
+
/** Input for `audit_log_role_grant_history`. */
|
|
115
|
+
export const AuditLogRoleGrantHistoryInput = z.strictObject({
|
|
100
116
|
limit: z
|
|
101
117
|
.number()
|
|
102
118
|
.int()
|
|
@@ -109,9 +125,9 @@ export const AuditLogPermitHistoryInput = z.strictObject({
|
|
|
109
125
|
offset: z.number().int().min(0).nullish().meta({ description: 'Pagination offset.' }),
|
|
110
126
|
acting: ActingActor,
|
|
111
127
|
});
|
|
112
|
-
/** Output for `
|
|
113
|
-
export const
|
|
114
|
-
events: z.array(
|
|
128
|
+
/** Output for `audit_log_role_grant_history`. */
|
|
129
|
+
export const AuditLogRoleGrantHistoryOutput = z.strictObject({
|
|
130
|
+
events: z.array(RoleGrantHistoryEventJson),
|
|
115
131
|
});
|
|
116
132
|
/** Input for `invite_create`. At least one of `email` / `username` must be provided. */
|
|
117
133
|
export const InviteCreateInput = z.strictObject({
|
|
@@ -164,18 +180,18 @@ export const admin_account_list_action_spec = {
|
|
|
164
180
|
method: 'admin_account_list',
|
|
165
181
|
kind: 'request_response',
|
|
166
182
|
initiator: 'frontend',
|
|
167
|
-
auth: {
|
|
183
|
+
auth: { account: 'required', actor: 'required', roles: [ROLE_ADMIN] },
|
|
168
184
|
side_effects: false,
|
|
169
185
|
input: AdminAccountListInput,
|
|
170
186
|
output: AdminAccountListOutput,
|
|
171
187
|
async: true,
|
|
172
|
-
description: 'List all accounts with their actors,
|
|
188
|
+
description: 'List all accounts with their actors, role_grants, and pending offers. Admin-only.',
|
|
173
189
|
};
|
|
174
190
|
export const admin_session_list_action_spec = {
|
|
175
191
|
method: 'admin_session_list',
|
|
176
192
|
kind: 'request_response',
|
|
177
193
|
initiator: 'frontend',
|
|
178
|
-
auth: {
|
|
194
|
+
auth: { account: 'required', actor: 'required', roles: [ROLE_ADMIN] },
|
|
179
195
|
side_effects: false,
|
|
180
196
|
input: AdminSessionListInput,
|
|
181
197
|
output: AdminSessionListOutput,
|
|
@@ -186,7 +202,7 @@ export const admin_session_revoke_all_action_spec = {
|
|
|
186
202
|
method: 'admin_session_revoke_all',
|
|
187
203
|
kind: 'request_response',
|
|
188
204
|
initiator: 'frontend',
|
|
189
|
-
auth: {
|
|
205
|
+
auth: { account: 'required', actor: 'required', roles: [ROLE_ADMIN] },
|
|
190
206
|
side_effects: true,
|
|
191
207
|
input: AdminSessionRevokeAllInput,
|
|
192
208
|
output: AdminSessionRevokeAllOutput,
|
|
@@ -198,7 +214,7 @@ export const admin_token_revoke_all_action_spec = {
|
|
|
198
214
|
method: 'admin_token_revoke_all',
|
|
199
215
|
kind: 'request_response',
|
|
200
216
|
initiator: 'frontend',
|
|
201
|
-
auth: {
|
|
217
|
+
auth: { account: 'required', actor: 'required', roles: [ROLE_ADMIN] },
|
|
202
218
|
side_effects: true,
|
|
203
219
|
input: AdminTokenRevokeAllInput,
|
|
204
220
|
output: AdminTokenRevokeAllOutput,
|
|
@@ -210,29 +226,29 @@ export const audit_log_list_action_spec = {
|
|
|
210
226
|
method: 'audit_log_list',
|
|
211
227
|
kind: 'request_response',
|
|
212
228
|
initiator: 'frontend',
|
|
213
|
-
auth: {
|
|
229
|
+
auth: { account: 'required', actor: 'required', roles: [ROLE_ADMIN] },
|
|
214
230
|
side_effects: false,
|
|
215
231
|
input: AuditLogListInput,
|
|
216
232
|
output: AuditLogListOutput,
|
|
217
233
|
async: true,
|
|
218
234
|
description: 'List audit log events with optional filters. Admin-only.',
|
|
219
235
|
};
|
|
220
|
-
export const
|
|
221
|
-
method: '
|
|
236
|
+
export const audit_log_role_grant_history_action_spec = {
|
|
237
|
+
method: 'audit_log_role_grant_history',
|
|
222
238
|
kind: 'request_response',
|
|
223
239
|
initiator: 'frontend',
|
|
224
|
-
auth: {
|
|
240
|
+
auth: { account: 'required', actor: 'required', roles: [ROLE_ADMIN] },
|
|
225
241
|
side_effects: false,
|
|
226
|
-
input:
|
|
227
|
-
output:
|
|
242
|
+
input: AuditLogRoleGrantHistoryInput,
|
|
243
|
+
output: AuditLogRoleGrantHistoryOutput,
|
|
228
244
|
async: true,
|
|
229
|
-
description: 'List
|
|
245
|
+
description: 'List role_grant grant and revoke events with usernames. Admin-only.',
|
|
230
246
|
};
|
|
231
247
|
export const invite_create_action_spec = {
|
|
232
248
|
method: 'invite_create',
|
|
233
249
|
kind: 'request_response',
|
|
234
250
|
initiator: 'frontend',
|
|
235
|
-
auth: {
|
|
251
|
+
auth: { account: 'required', actor: 'required', roles: [ROLE_ADMIN] },
|
|
236
252
|
side_effects: true,
|
|
237
253
|
input: InviteCreateInput,
|
|
238
254
|
output: InviteCreateOutput,
|
|
@@ -244,7 +260,7 @@ export const invite_list_action_spec = {
|
|
|
244
260
|
method: 'invite_list',
|
|
245
261
|
kind: 'request_response',
|
|
246
262
|
initiator: 'frontend',
|
|
247
|
-
auth: {
|
|
263
|
+
auth: { account: 'required', actor: 'required', roles: [ROLE_ADMIN] },
|
|
248
264
|
side_effects: false,
|
|
249
265
|
input: InviteListInput,
|
|
250
266
|
output: InviteListOutput,
|
|
@@ -255,7 +271,7 @@ export const invite_delete_action_spec = {
|
|
|
255
271
|
method: 'invite_delete',
|
|
256
272
|
kind: 'request_response',
|
|
257
273
|
initiator: 'frontend',
|
|
258
|
-
auth: {
|
|
274
|
+
auth: { account: 'required', actor: 'required', roles: [ROLE_ADMIN] },
|
|
259
275
|
side_effects: true,
|
|
260
276
|
input: InviteDeleteInput,
|
|
261
277
|
output: InviteDeleteOutput,
|
|
@@ -267,7 +283,7 @@ export const app_settings_get_action_spec = {
|
|
|
267
283
|
method: 'app_settings_get',
|
|
268
284
|
kind: 'request_response',
|
|
269
285
|
initiator: 'frontend',
|
|
270
|
-
auth: {
|
|
286
|
+
auth: { account: 'required', actor: 'required', roles: [ROLE_ADMIN] },
|
|
271
287
|
side_effects: false,
|
|
272
288
|
input: AppSettingsGetInput,
|
|
273
289
|
output: AppSettingsGetOutput,
|
|
@@ -278,7 +294,7 @@ export const app_settings_update_action_spec = {
|
|
|
278
294
|
method: 'app_settings_update',
|
|
279
295
|
kind: 'request_response',
|
|
280
296
|
initiator: 'frontend',
|
|
281
|
-
auth: {
|
|
297
|
+
auth: { account: 'required', actor: 'required', roles: [ROLE_ADMIN] },
|
|
282
298
|
side_effects: true,
|
|
283
299
|
input: AppSettingsUpdateInput,
|
|
284
300
|
output: AppSettingsUpdateOutput,
|
|
@@ -299,7 +315,7 @@ export const all_admin_action_specs = [
|
|
|
299
315
|
admin_session_revoke_all_action_spec,
|
|
300
316
|
admin_token_revoke_all_action_spec,
|
|
301
317
|
audit_log_list_action_spec,
|
|
302
|
-
|
|
318
|
+
audit_log_role_grant_history_action_spec,
|
|
303
319
|
invite_create_action_spec,
|
|
304
320
|
invite_list_action_spec,
|
|
305
321
|
invite_delete_action_spec,
|
|
@@ -5,23 +5,23 @@
|
|
|
5
5
|
*
|
|
6
6
|
* - Account management: `admin_account_list`, `admin_session_list`,
|
|
7
7
|
* `admin_session_revoke_all`, `admin_token_revoke_all`.
|
|
8
|
-
* - Audit log reads: `audit_log_list`, `
|
|
8
|
+
* - Audit log reads: `audit_log_list`, `audit_log_role_grant_history`.
|
|
9
9
|
* - Invite CRUD: `invite_create`, `invite_list`, `invite_delete`.
|
|
10
10
|
* - App settings: `app_settings_get`, `app_settings_update` (registered only
|
|
11
11
|
* when `AdminActionOptions.app_settings` is provided — the mutable ref is
|
|
12
12
|
* owned by the server context and shared with signup middleware).
|
|
13
13
|
*
|
|
14
14
|
* The action specs themselves live in `auth/admin_action_specs.ts`. Mutations
|
|
15
|
-
* emit matching audit events via `
|
|
15
|
+
* emit matching audit events via `deps.audit.emit`.
|
|
16
16
|
*
|
|
17
17
|
* Authorization is declared at the spec level (`auth: {role: 'admin'}`) so
|
|
18
18
|
* the RPC dispatcher enforces it before the handler runs and the generated
|
|
19
|
-
* surface accurately reports the requirement. `
|
|
20
|
-
* `auth/
|
|
19
|
+
* surface accurately reports the requirement. `role_grant_revoke` in
|
|
20
|
+
* `auth/role_grant_offer_actions.ts` uses the same spec-level pattern even though its
|
|
21
21
|
* sibling methods are authenticated-but-not-admin — the dispatcher checks
|
|
22
22
|
* auth per-spec, so mixed-auth endpoints compose cleanly. Handler-level
|
|
23
23
|
* gates are reserved for input-dependent elevation (e.g.
|
|
24
|
-
* `
|
|
24
|
+
* `role_grant_offer_list`/`_history` elevate to admin only when the caller
|
|
25
25
|
* passes an `account_id` other than their own — an input-dependent check
|
|
26
26
|
* the spec can't express).
|
|
27
27
|
*
|
|
@@ -30,13 +30,14 @@
|
|
|
30
30
|
import { type RpcAction } from '../actions/action_rpc.js';
|
|
31
31
|
import { type RoleSchemaResult } from './role_schema.js';
|
|
32
32
|
import { type AppSettings } from './app_settings_schema.js';
|
|
33
|
-
import type {
|
|
33
|
+
import type { RouteFactoryDeps } from './deps.js';
|
|
34
34
|
/** Options for `create_admin_actions`. */
|
|
35
35
|
export interface AdminActionOptions {
|
|
36
36
|
/**
|
|
37
37
|
* Role schema result from `create_role_schema()`. Defaults to builtin
|
|
38
|
-
* roles only. Used to derive `grantable_roles` (the
|
|
39
|
-
*
|
|
38
|
+
* roles only. Used to derive `grantable_roles` (the subset whose
|
|
39
|
+
* `RoleSpec.grant_paths` includes `'admin'`) returned by
|
|
40
|
+
* `admin_account_list`.
|
|
40
41
|
*/
|
|
41
42
|
roles?: RoleSchemaResult;
|
|
42
43
|
/**
|
|
@@ -49,24 +50,16 @@ export interface AdminActionOptions {
|
|
|
49
50
|
*/
|
|
50
51
|
app_settings?: AppSettings;
|
|
51
52
|
}
|
|
52
|
-
/**
|
|
53
|
-
* Dependencies for `create_admin_actions`.
|
|
54
|
-
*
|
|
55
|
-
* Aliases the shared `AuditEmitDeps` (the `log` / `on_audit_event` /
|
|
56
|
-
* optional `audit_log_config` slice every audit-emitting site picks).
|
|
57
|
-
* `log` drives RPC-internal error logging; `on_audit_event` is wired by
|
|
58
|
-
* the two revoke-all mutations so SSE fan-out mirrors the former
|
|
59
|
-
* REST-route behavior; `audit_log_config` is consumed by
|
|
60
|
-
* `audit_log_fire_and_forget`.
|
|
61
|
-
*/
|
|
62
|
-
export type AdminActionDeps = AuditEmitDeps;
|
|
63
53
|
/**
|
|
64
54
|
* Create the admin-only RPC actions.
|
|
65
55
|
*
|
|
66
|
-
* @param deps - `
|
|
56
|
+
* @param deps - `RouteFactoryDeps` (`log`, `audit`, …). `log` drives RPC-
|
|
57
|
+
* internal error logging; `audit.emit` writes audit rows via the captured
|
|
58
|
+
* pool. The bound emitter encapsulates `on_audit_event` fan-out and the
|
|
59
|
+
* optional `AuditLogConfig`.
|
|
67
60
|
* @param options - role schema for `grantable_roles` derivation
|
|
68
61
|
* @returns the `RpcAction` array to spread into a `create_rpc_endpoint` call
|
|
69
62
|
* @mutates `options.app_settings` ref - `app_settings_update` writes `open_signup`, `updated_at`, and `updated_by` so signup middleware reads without a DB round trip
|
|
70
63
|
*/
|
|
71
|
-
export declare const create_admin_actions: (deps:
|
|
64
|
+
export declare const create_admin_actions: (deps: Pick<RouteFactoryDeps, "log" | "audit">, options?: AdminActionOptions) => Array<RpcAction>;
|
|
72
65
|
//# sourceMappingURL=admin_actions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin_actions.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/auth/admin_actions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"admin_actions.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/auth/admin_actions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAsC,KAAK,SAAS,EAAC,MAAM,0BAA0B,CAAC;AAE7F,OAAO,EAGN,KAAK,gBAAgB,EACrB,MAAM,kBAAkB,CAAC;AAuB1B,OAAO,EAAC,KAAK,WAAW,EAAC,MAAM,0BAA0B,CAAC;AAK1D,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,WAAW,CAAC;AA8ChD,0CAA0C;AAC1C,MAAM,WAAW,kBAAkB;IAClC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB,GAChC,MAAM,IAAI,CAAC,gBAAgB,EAAE,KAAK,GAAG,OAAO,CAAC,EAC7C,UAAS,kBAAuB,KAC9B,KAAK,CAAC,SAAS,CAgQjB,CAAC"}
|