@fuzdev/fuz_app 0.52.0 → 0.54.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.
Files changed (254) hide show
  1. package/dist/actions/CLAUDE.md +29 -9
  2. package/dist/actions/action_codegen.d.ts +10 -35
  3. package/dist/actions/action_codegen.d.ts.map +1 -1
  4. package/dist/actions/action_codegen.js +13 -42
  5. package/dist/actions/action_peer.d.ts.map +1 -1
  6. package/dist/actions/action_peer.js +0 -9
  7. package/dist/actions/action_registry.d.ts +0 -4
  8. package/dist/actions/action_registry.d.ts.map +1 -1
  9. package/dist/actions/action_registry.js +4 -10
  10. package/dist/actions/action_rpc.d.ts +16 -0
  11. package/dist/actions/action_rpc.d.ts.map +1 -1
  12. package/dist/actions/action_rpc.js +41 -20
  13. package/dist/actions/action_spec.d.ts +54 -5
  14. package/dist/actions/action_spec.d.ts.map +1 -1
  15. package/dist/actions/action_spec.js +21 -5
  16. package/dist/actions/frontend_rpc_client.d.ts +1 -9
  17. package/dist/actions/frontend_rpc_client.d.ts.map +1 -1
  18. package/dist/actions/frontend_rpc_client.js +1 -9
  19. package/dist/actions/register_action_ws.d.ts +16 -0
  20. package/dist/actions/register_action_ws.d.ts.map +1 -1
  21. package/dist/actions/register_action_ws.js +41 -1
  22. package/dist/actions/request_tracker.svelte.d.ts +10 -15
  23. package/dist/actions/request_tracker.svelte.d.ts.map +1 -1
  24. package/dist/actions/request_tracker.svelte.js +10 -15
  25. package/dist/actions/rpc_client.d.ts +0 -1
  26. package/dist/actions/rpc_client.d.ts.map +1 -1
  27. package/dist/actions/rpc_client.js +3 -17
  28. package/dist/actions/socket.svelte.d.ts +0 -1
  29. package/dist/actions/socket.svelte.d.ts.map +1 -1
  30. package/dist/actions/socket.svelte.js +0 -1
  31. package/dist/actions/transports.d.ts +4 -3
  32. package/dist/actions/transports.d.ts.map +1 -1
  33. package/dist/actions/transports.js +4 -13
  34. package/dist/actions/transports_ws_auth_guard.d.ts +0 -2
  35. package/dist/actions/transports_ws_auth_guard.d.ts.map +1 -1
  36. package/dist/actions/transports_ws_auth_guard.js +0 -2
  37. package/dist/actions/transports_ws_backend.d.ts.map +1 -1
  38. package/dist/actions/transports_ws_backend.js +0 -9
  39. package/dist/auth/CLAUDE.md +43 -19
  40. package/dist/auth/account_queries.d.ts +0 -3
  41. package/dist/auth/account_queries.d.ts.map +1 -1
  42. package/dist/auth/account_queries.js +0 -3
  43. package/dist/auth/admin_action_specs.d.ts +5 -0
  44. package/dist/auth/admin_action_specs.d.ts.map +1 -1
  45. package/dist/auth/admin_action_specs.js +5 -0
  46. package/dist/auth/api_token_queries.d.ts +0 -1
  47. package/dist/auth/api_token_queries.d.ts.map +1 -1
  48. package/dist/auth/api_token_queries.js +0 -1
  49. package/dist/auth/audit_log_queries.d.ts +0 -1
  50. package/dist/auth/audit_log_queries.d.ts.map +1 -1
  51. package/dist/auth/audit_log_queries.js +0 -1
  52. package/dist/auth/audit_log_routes.d.ts +2 -2
  53. package/dist/auth/audit_log_routes.js +2 -2
  54. package/dist/auth/invite_queries.d.ts +0 -1
  55. package/dist/auth/invite_queries.d.ts.map +1 -1
  56. package/dist/auth/invite_queries.js +0 -1
  57. package/dist/auth/permit_offer_action_specs.d.ts +1 -0
  58. package/dist/auth/permit_offer_action_specs.d.ts.map +1 -1
  59. package/dist/auth/permit_offer_action_specs.js +1 -0
  60. package/dist/auth/permit_offer_actions.d.ts.map +1 -1
  61. package/dist/auth/permit_offer_actions.js +9 -6
  62. package/dist/auth/permit_offer_queries.d.ts +0 -1
  63. package/dist/auth/permit_offer_queries.d.ts.map +1 -1
  64. package/dist/auth/permit_offer_queries.js +0 -1
  65. package/dist/auth/permit_queries.d.ts +0 -1
  66. package/dist/auth/permit_queries.d.ts.map +1 -1
  67. package/dist/auth/permit_queries.js +0 -1
  68. package/dist/auth/request_context.d.ts +47 -2
  69. package/dist/auth/request_context.d.ts.map +1 -1
  70. package/dist/auth/request_context.js +57 -2
  71. package/dist/auth/self_service_role_actions.d.ts.map +1 -1
  72. package/dist/auth/self_service_role_actions.js +14 -11
  73. package/dist/auth/session_lifecycle.d.ts +0 -1
  74. package/dist/auth/session_lifecycle.d.ts.map +1 -1
  75. package/dist/auth/session_lifecycle.js +0 -1
  76. package/dist/auth/session_middleware.d.ts +0 -4
  77. package/dist/auth/session_middleware.d.ts.map +1 -1
  78. package/dist/auth/session_middleware.js +0 -4
  79. package/dist/cli/config.d.ts +0 -3
  80. package/dist/cli/config.d.ts.map +1 -1
  81. package/dist/cli/config.js +0 -3
  82. package/dist/cli/daemon.d.ts +1 -1
  83. package/dist/cli/daemon.js +1 -1
  84. package/dist/db/create_db.d.ts +0 -1
  85. package/dist/db/create_db.d.ts.map +1 -1
  86. package/dist/db/create_db.js +0 -1
  87. package/dist/db/db.d.ts +0 -4
  88. package/dist/db/db.d.ts.map +1 -1
  89. package/dist/db/db.js +0 -4
  90. package/dist/db/db_pg.d.ts +2 -2
  91. package/dist/db/db_pg.js +2 -2
  92. package/dist/db/db_pglite.d.ts +1 -2
  93. package/dist/db/db_pglite.d.ts.map +1 -1
  94. package/dist/db/db_pglite.js +1 -2
  95. package/dist/db/migrate.d.ts +0 -1
  96. package/dist/db/migrate.d.ts.map +1 -1
  97. package/dist/db/migrate.js +0 -1
  98. package/dist/dev/setup.d.ts +0 -3
  99. package/dist/dev/setup.d.ts.map +1 -1
  100. package/dist/dev/setup.js +0 -3
  101. package/dist/env/load.d.ts +0 -2
  102. package/dist/env/load.d.ts.map +1 -1
  103. package/dist/env/load.js +0 -2
  104. package/dist/hono_context.d.ts +2 -5
  105. package/dist/hono_context.d.ts.map +1 -1
  106. package/dist/hono_context.js +2 -5
  107. package/dist/http/common_routes.d.ts +0 -8
  108. package/dist/http/common_routes.d.ts.map +1 -1
  109. package/dist/http/common_routes.js +0 -8
  110. package/dist/http/db_routes.d.ts +0 -3
  111. package/dist/http/db_routes.d.ts.map +1 -1
  112. package/dist/http/db_routes.js +0 -3
  113. package/dist/http/error_schemas.d.ts +12 -11
  114. package/dist/http/error_schemas.d.ts.map +1 -1
  115. package/dist/http/error_schemas.js +11 -7
  116. package/dist/http/jsonrpc_errors.d.ts +0 -6
  117. package/dist/http/jsonrpc_errors.d.ts.map +1 -1
  118. package/dist/http/jsonrpc_errors.js +0 -6
  119. package/dist/http/origin.d.ts +6 -13
  120. package/dist/http/origin.d.ts.map +1 -1
  121. package/dist/http/origin.js +7 -14
  122. package/dist/http/proxy.d.ts +1 -7
  123. package/dist/http/proxy.d.ts.map +1 -1
  124. package/dist/http/proxy.js +1 -7
  125. package/dist/http/route_spec.d.ts +13 -35
  126. package/dist/http/route_spec.d.ts.map +1 -1
  127. package/dist/http/route_spec.js +10 -22
  128. package/dist/http/schema_helpers.d.ts +0 -4
  129. package/dist/http/schema_helpers.d.ts.map +1 -1
  130. package/dist/http/schema_helpers.js +0 -4
  131. package/dist/http/surface.d.ts +2 -12
  132. package/dist/http/surface.d.ts.map +1 -1
  133. package/dist/http/surface.js +1 -12
  134. package/dist/rate_limiter.d.ts +16 -0
  135. package/dist/rate_limiter.d.ts.map +1 -1
  136. package/dist/rate_limiter.js +26 -0
  137. package/dist/realtime/sse.d.ts +0 -1
  138. package/dist/realtime/sse.d.ts.map +1 -1
  139. package/dist/realtime/sse.js +0 -1
  140. package/dist/realtime/subscriber_registry.d.ts +0 -3
  141. package/dist/realtime/subscriber_registry.d.ts.map +1 -1
  142. package/dist/realtime/subscriber_registry.js +0 -3
  143. package/dist/runtime/fs.d.ts +1 -4
  144. package/dist/runtime/fs.d.ts.map +1 -1
  145. package/dist/runtime/fs.js +1 -4
  146. package/dist/runtime/mock.d.ts +0 -3
  147. package/dist/runtime/mock.d.ts.map +1 -1
  148. package/dist/runtime/mock.js +0 -3
  149. package/dist/server/app_server.d.ts +27 -5
  150. package/dist/server/app_server.d.ts.map +1 -1
  151. package/dist/server/app_server.js +19 -7
  152. package/dist/server/startup.d.ts +0 -2
  153. package/dist/server/startup.d.ts.map +1 -1
  154. package/dist/server/startup.js +0 -2
  155. package/dist/server/static.d.ts +0 -1
  156. package/dist/server/static.d.ts.map +1 -1
  157. package/dist/server/static.js +0 -1
  158. package/dist/server/validate_nginx.d.ts +0 -3
  159. package/dist/server/validate_nginx.d.ts.map +1 -1
  160. package/dist/server/validate_nginx.js +0 -3
  161. package/dist/testing/CLAUDE.md +1 -1
  162. package/dist/testing/admin_integration.d.ts +0 -1
  163. package/dist/testing/admin_integration.d.ts.map +1 -1
  164. package/dist/testing/admin_integration.js +3 -6
  165. package/dist/testing/adversarial_404.d.ts +0 -2
  166. package/dist/testing/adversarial_404.d.ts.map +1 -1
  167. package/dist/testing/adversarial_404.js +0 -2
  168. package/dist/testing/adversarial_headers.d.ts +0 -1
  169. package/dist/testing/adversarial_headers.d.ts.map +1 -1
  170. package/dist/testing/adversarial_headers.js +0 -1
  171. package/dist/testing/adversarial_input.d.ts +0 -2
  172. package/dist/testing/adversarial_input.d.ts.map +1 -1
  173. package/dist/testing/adversarial_input.js +0 -2
  174. package/dist/testing/app_server.d.ts +22 -0
  175. package/dist/testing/app_server.d.ts.map +1 -1
  176. package/dist/testing/app_server.js +2 -4
  177. package/dist/testing/assertions.d.ts +0 -4
  178. package/dist/testing/assertions.d.ts.map +1 -1
  179. package/dist/testing/assertions.js +0 -4
  180. package/dist/testing/attack_surface.d.ts +0 -4
  181. package/dist/testing/attack_surface.d.ts.map +1 -1
  182. package/dist/testing/attack_surface.js +0 -4
  183. package/dist/testing/audit_completeness.d.ts +0 -1
  184. package/dist/testing/audit_completeness.d.ts.map +1 -1
  185. package/dist/testing/audit_completeness.js +0 -1
  186. package/dist/testing/auth_apps.d.ts +2 -10
  187. package/dist/testing/auth_apps.d.ts.map +1 -1
  188. package/dist/testing/auth_apps.js +2 -10
  189. package/dist/testing/data_exposure.d.ts +0 -11
  190. package/dist/testing/data_exposure.d.ts.map +1 -1
  191. package/dist/testing/data_exposure.js +0 -11
  192. package/dist/testing/db.d.ts +0 -6
  193. package/dist/testing/db.d.ts.map +1 -1
  194. package/dist/testing/db.js +0 -6
  195. package/dist/testing/error_coverage.d.ts +0 -14
  196. package/dist/testing/error_coverage.d.ts.map +1 -1
  197. package/dist/testing/error_coverage.js +0 -14
  198. package/dist/testing/integration.d.ts +0 -1
  199. package/dist/testing/integration.d.ts.map +1 -1
  200. package/dist/testing/integration.js +0 -1
  201. package/dist/testing/integration_helpers.d.ts +1 -36
  202. package/dist/testing/integration_helpers.d.ts.map +1 -1
  203. package/dist/testing/integration_helpers.js +1 -43
  204. package/dist/testing/middleware.d.ts +0 -10
  205. package/dist/testing/middleware.d.ts.map +1 -1
  206. package/dist/testing/middleware.js +0 -10
  207. package/dist/testing/mock_fs.d.ts +0 -2
  208. package/dist/testing/mock_fs.d.ts.map +1 -1
  209. package/dist/testing/mock_fs.js +0 -2
  210. package/dist/testing/rate_limiting.d.ts +0 -1
  211. package/dist/testing/rate_limiting.d.ts.map +1 -1
  212. package/dist/testing/rate_limiting.js +0 -1
  213. package/dist/testing/round_trip.d.ts +0 -2
  214. package/dist/testing/round_trip.d.ts.map +1 -1
  215. package/dist/testing/round_trip.js +0 -2
  216. package/dist/testing/rpc_attack_surface.d.ts +0 -2
  217. package/dist/testing/rpc_attack_surface.d.ts.map +1 -1
  218. package/dist/testing/rpc_attack_surface.js +0 -2
  219. package/dist/testing/rpc_helpers.d.ts +0 -6
  220. package/dist/testing/rpc_helpers.d.ts.map +1 -1
  221. package/dist/testing/rpc_helpers.js +0 -6
  222. package/dist/testing/rpc_round_trip.d.ts +0 -2
  223. package/dist/testing/rpc_round_trip.d.ts.map +1 -1
  224. package/dist/testing/rpc_round_trip.js +0 -2
  225. package/dist/testing/schema_generators.d.ts +0 -3
  226. package/dist/testing/schema_generators.d.ts.map +1 -1
  227. package/dist/testing/schema_generators.js +29 -3
  228. package/dist/testing/sse_round_trip.d.ts +0 -1
  229. package/dist/testing/sse_round_trip.d.ts.map +1 -1
  230. package/dist/testing/sse_round_trip.js +0 -1
  231. package/dist/testing/standard.d.ts +0 -2
  232. package/dist/testing/standard.d.ts.map +1 -1
  233. package/dist/testing/standard.js +0 -2
  234. package/dist/testing/stubs.d.ts +3 -5
  235. package/dist/testing/stubs.d.ts.map +1 -1
  236. package/dist/testing/stubs.js +5 -5
  237. package/dist/testing/surface_invariants.d.ts +0 -3
  238. package/dist/testing/surface_invariants.d.ts.map +1 -1
  239. package/dist/testing/surface_invariants.js +0 -3
  240. package/dist/ui/CLAUDE.md +1 -1
  241. package/dist/ui/audit_log_state.svelte.js +1 -1
  242. package/dist/ui/position_helpers.d.ts +0 -3
  243. package/dist/ui/position_helpers.d.ts.map +1 -1
  244. package/dist/ui/position_helpers.js +0 -3
  245. package/dist/ui/sidebar_state.svelte.d.ts +1 -2
  246. package/dist/ui/sidebar_state.svelte.d.ts.map +1 -1
  247. package/dist/ui/sidebar_state.svelte.js +1 -2
  248. package/dist/ui/ui_fetch.d.ts +1 -7
  249. package/dist/ui/ui_fetch.d.ts.map +1 -1
  250. package/dist/ui/ui_fetch.js +1 -7
  251. package/dist/ui/ui_format.d.ts +2 -14
  252. package/dist/ui/ui_format.d.ts.map +1 -1
  253. package/dist/ui/ui_format.js +2 -14
  254. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"rpc_helpers.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/rpc_helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rpc_helpers.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/rpc_helpers.ts"],"names":[],"mappings":"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"}
@@ -57,7 +57,6 @@ export const resolve_rpc_endpoints_for_setup = (rpc_endpoints, session_options)
57
57
  /**
58
58
  * Create a `RequestInit` for a JSON-RPC POST request.
59
59
  *
60
- * @param method - JSON-RPC method name
61
60
  * @param params - params (omit for parameterless methods; `null` is also
62
61
  * stripped for ergonomic call sites — JSON-RPC 2.0 §4.2
63
62
  * forbids `"params": null` on the wire, and `create_rpc_endpoint`
@@ -66,7 +65,6 @@ export const resolve_rpc_endpoints_for_setup = (rpc_endpoints, session_options)
66
65
  * envelope (e.g. asserting envelope-level rejection) should
67
66
  * build the body inline rather than route through this helper.
68
67
  * @param id - request id (default `'test'`)
69
- * @returns a `RequestInit` with the JSON-RPC envelope as body
70
68
  */
71
69
  export const create_rpc_post_init = (method, params, id = 'test') => {
72
70
  const envelope = { jsonrpc: JSONRPC_VERSION, method, id };
@@ -82,10 +80,8 @@ export const create_rpc_post_init = (method, params, id = 'test') => {
82
80
  * Build a GET URL with JSON-RPC query parameters.
83
81
  *
84
82
  * @param endpoint_path - the RPC endpoint path (e.g., `/api/rpc`)
85
- * @param method - JSON-RPC method name
86
83
  * @param params - params (omit for parameterless methods)
87
84
  * @param id - request id (default `'test'`)
88
- * @returns the full URL with query string
89
85
  */
90
86
  export const create_rpc_get_url = (endpoint_path, method, params, id = 'test') => {
91
87
  const search = new URLSearchParams({ method, id: String(id) });
@@ -100,7 +96,6 @@ export const create_rpc_get_url = (endpoint_path, method, params, id = 'test') =
100
96
  * Validates the structure matches `JsonrpcErrorResponse` and optionally
101
97
  * checks the error code.
102
98
  *
103
- * @param body - parsed response body
104
99
  * @param expected_code - optional error code to assert
105
100
  */
106
101
  export const assert_jsonrpc_error_response = (body, expected_code) => {
@@ -117,7 +112,6 @@ export const assert_jsonrpc_error_response = (body, expected_code) => {
117
112
  * is provided, also validates the `result` field against the declared
118
113
  * output schema — matching the REST round-trip's `assert_response_matches_spec`.
119
114
  *
120
- * @param body - parsed response body
121
115
  * @param output_schema - optional Zod schema to validate the `result` field against
122
116
  */
123
117
  export const assert_jsonrpc_success_response = (body, output_schema) => {
@@ -45,8 +45,6 @@ export interface RpcRoundTripTestOptions {
45
45
  * Error responses (from missing DB state, etc.) are expected and validated
46
46
  * as well-formed JSON-RPC errors. Successful responses are validated against
47
47
  * `action.spec.output`.
48
- *
49
- * @param options - round-trip test configuration
50
48
  */
51
49
  export declare const describe_rpc_round_trip_tests: (options: RpcRoundTripTestOptions) => void;
52
50
  //# sourceMappingURL=rpc_round_trip.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rpc_round_trip.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/rpc_round_trip.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAe7B,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAE9D,OAAO,EAEN,KAAK,eAAe,EAGpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAwB,KAAK,SAAS,EAAC,MAAM,SAAS,CAAC;AAM9D,OAAO,EAMN,KAAK,uBAAuB,EAC5B,MAAM,kBAAkB,CAAC;AAE1B,mDAAmD;AACnD,MAAM,WAAW,uBAAuB;IACvC,4CAA4C;IAC5C,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACxC,wDAAwD;IACxD,kBAAkB,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE;;;;;;;;;;OAUG;IACH,aAAa,EAAE,uBAAuB,CAAC;IACvC,iDAAiD;IACjD,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,qEAAqE;IACrE,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAChC,oDAAoD;IACpD,YAAY,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,6EAA6E;IAC7E,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACvD;AA2BD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,6BAA6B,GAAI,SAAS,uBAAuB,KAAG,IA8IhF,CAAC"}
1
+ {"version":3,"file":"rpc_round_trip.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/rpc_round_trip.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAe7B,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAE9D,OAAO,EAEN,KAAK,eAAe,EAGpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAwB,KAAK,SAAS,EAAC,MAAM,SAAS,CAAC;AAM9D,OAAO,EAMN,KAAK,uBAAuB,EAC5B,MAAM,kBAAkB,CAAC;AAE1B,mDAAmD;AACnD,MAAM,WAAW,uBAAuB;IACvC,4CAA4C;IAC5C,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACxC,wDAAwD;IACxD,kBAAkB,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE;;;;;;;;;;OAUG;IACH,aAAa,EAAE,uBAAuB,CAAC;IACvC,iDAAiD;IACjD,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,qEAAqE;IACrE,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAChC,oDAAoD;IACpD,YAAY,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,6EAA6E;IAC7E,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACvD;AA2BD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,6BAA6B,GAAI,SAAS,uBAAuB,KAAG,IA8IhF,CAAC"}
@@ -49,8 +49,6 @@ const pick_rpc_auth_headers = (method, test_app, authed_account, admin_account)
49
49
  * Error responses (from missing DB state, etc.) are expected and validated
50
50
  * as well-formed JSON-RPC errors. Successful responses are validated against
51
51
  * `action.spec.output`.
52
- *
53
- * @param options - round-trip test configuration
54
52
  */
55
53
  export const describe_rpc_round_trip_tests = (options) => {
56
54
  const skip_set = new Set(options.skip_methods);
@@ -25,9 +25,6 @@ export declare const resolve_valid_path: (path: string, params_schema?: z.ZodObj
25
25
  /**
26
26
  * Generate a valid request body for a route's input schema.
27
27
  *
28
- * Returns `undefined` for null schemas or schemas that can't be unwrapped to objects.
29
- *
30
- * @param input_schema - the route's input Zod schema
31
28
  * @returns a generated body that passes `safeParse`, or `undefined` for null /
32
29
  * non-object schemas
33
30
  * @throws Error if the generated body fails `input_schema.safeParse` — catches
@@ -1 +1 @@
1
- {"version":3,"file":"schema_generators.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/schema_generators.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAE7B;;;;;;;;GAQG;AAEH,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AACtB,OAAO,EAKN,KAAK,YAAY,EACjB,MAAM,yBAAyB,CAAC;AAIjC;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,cAAc,CAAC,CAAC,OAAO,KAAG,MAAM,GAAG,IAShE,CAAC;AA+FF,qEAAqE;AACrE,eAAO,MAAM,oBAAoB,GAAI,OAAO,YAAY,EAAE,cAAc,CAAC,CAAC,OAAO,KAAG,OAkDnF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,EAAE,gBAAgB,CAAC,CAAC,SAAS,KAAG,MAa9E,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,mBAAmB,GAC/B,cAAc,CAAC,CAAC,OAAO,KACrB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAkB5B,CAAC"}
1
+ {"version":3,"file":"schema_generators.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/schema_generators.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAE7B;;;;;;;;GAQG;AAEH,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AACtB,OAAO,EAKN,KAAK,YAAY,EACjB,MAAM,yBAAyB,CAAC;AAIjC;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,cAAc,CAAC,CAAC,OAAO,KAAG,MAAM,GAAG,IAShE,CAAC;AA+FF,qEAAqE;AACrE,eAAO,MAAM,oBAAoB,GAAI,OAAO,YAAY,EAAE,cAAc,CAAC,CAAC,OAAO,KAAG,OA+EnF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,EAAE,gBAAgB,CAAC,CAAC,SAAS,KAAG,MAa9E,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,GAC/B,cAAc,CAAC,CAAC,OAAO,KACrB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAkB5B,CAAC"}
@@ -165,6 +165,35 @@ export const generate_valid_value = (field, field_schema) => {
165
165
  }
166
166
  case 'null':
167
167
  return null;
168
+ case 'union': {
169
+ // Pick the first variant and recurse. Works for both `z.union` and
170
+ // `z.discriminatedUnion` — Zod 4 represents both as `def.type ===
171
+ // 'union'` with a `def.options` array. Picking `options[0]` is a
172
+ // pragmatic default; consumers needing a specific branch can pass
173
+ // an override via the relevant test helper.
174
+ const def = zod_unwrap_def(field_schema);
175
+ const first = def.options?.[0];
176
+ if (first) {
177
+ const inner_field = {
178
+ ...field,
179
+ base_type: zod_get_base_type(first),
180
+ };
181
+ return generate_valid_value(inner_field, first);
182
+ }
183
+ return 'test_value';
184
+ }
185
+ case 'literal': {
186
+ // Zod 4 stores literal values on `def.values` (always an array, even
187
+ // for single-valued literals). Returning the first literal satisfies
188
+ // `z.literal('foo')` as well as required discriminator fields in
189
+ // `z.discriminatedUnion` variants — without this branch the literal
190
+ // would fall through to the default and break parse.
191
+ const literal_def = zod_unwrap_def(field_schema);
192
+ if (literal_def.values && literal_def.values.length > 0) {
193
+ return literal_def.values[0];
194
+ }
195
+ return 'test_value';
196
+ }
168
197
  case 'enum': {
169
198
  const enum_def = zod_unwrap_def(field_schema);
170
199
  if ('entries' in enum_def) {
@@ -206,9 +235,6 @@ export const resolve_valid_path = (path, params_schema) => {
206
235
  /**
207
236
  * Generate a valid request body for a route's input schema.
208
237
  *
209
- * Returns `undefined` for null schemas or schemas that can't be unwrapped to objects.
210
- *
211
- * @param input_schema - the route's input Zod schema
212
238
  * @returns a generated body that passes `safeParse`, or `undefined` for null /
213
239
  * non-object schemas
214
240
  * @throws Error if the generated body fails `input_schema.safeParse` — catches
@@ -74,7 +74,6 @@ export interface SseRouteTestOptions {
74
74
  * connected comment, fires the trigger, validates the resulting payload,
75
75
  * then asserts close-on-revoke (unless opted out).
76
76
  *
77
- * @param options - SSE test configuration
78
77
  * @throws Error at setup time when `options.rpc_endpoints` is empty — the
79
78
  * close-on-revoke assertion dispatches `account_session_revoke_all` via
80
79
  * RPC. Hard-fails via `require_rpc_endpoint_path`.
@@ -1 +1 @@
1
- {"version":3,"file":"sse_round_trip.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/sse_round_trip.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAmB7B,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAwB,KAAK,SAAS,EAAuB,MAAM,oBAAoB,CAAC;AAE/F,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAEN,KAAK,eAAe,EACpB,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAwB,KAAK,SAAS,EAAC,MAAM,SAAS,CAAC;AAE9D,OAAO,EAIN,KAAK,uBAAuB,EAC5B,MAAM,kBAAkB,CAAC;AAM1B,gDAAgD;AAChD,MAAM,WAAW,gBAAgB;IAChC,wEAAwE;IACxE,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,OAAO,EAAE,CAAC,GAAG,EAAE;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,WAAW,CAAA;KAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3E;;;OAGG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC/B;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED,8CAA8C;AAC9C,MAAM,WAAW,mBAAmB;IACnC,4CAA4C;IAC5C,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACxC,qDAAqD;IACrD,kBAAkB,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE,iDAAiD;IACjD,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,qEAAqE;IACrE,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAChC;;;;;OAKG;IACH,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAChD;;;;;;;;;;;;;OAaG;IACH,aAAa,EAAE,uBAAuB,CAAC;IACvC,8BAA8B;IAC9B,MAAM,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;CAChC;AAyHD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,wBAAwB,GAAI,SAAS,mBAAmB,KAAG,IA2HvE,CAAC"}
1
+ {"version":3,"file":"sse_round_trip.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/sse_round_trip.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAmB7B,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAwB,KAAK,SAAS,EAAuB,MAAM,oBAAoB,CAAC;AAE/F,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAEN,KAAK,eAAe,EACpB,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAwB,KAAK,SAAS,EAAC,MAAM,SAAS,CAAC;AAE9D,OAAO,EAIN,KAAK,uBAAuB,EAC5B,MAAM,kBAAkB,CAAC;AAM1B,gDAAgD;AAChD,MAAM,WAAW,gBAAgB;IAChC,wEAAwE;IACxE,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,OAAO,EAAE,CAAC,GAAG,EAAE;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,WAAW,CAAA;KAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3E;;;OAGG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC/B;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED,8CAA8C;AAC9C,MAAM,WAAW,mBAAmB;IACnC,4CAA4C;IAC5C,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACxC,qDAAqD;IACrD,kBAAkB,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE,iDAAiD;IACjD,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,qEAAqE;IACrE,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAChC;;;;;OAKG;IACH,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAChD;;;;;;;;;;;;;OAaG;IACH,aAAa,EAAE,uBAAuB,CAAC;IACvC,8BAA8B;IAC9B,MAAM,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;CAChC;AAyHD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,wBAAwB,GAAI,SAAS,mBAAmB,KAAG,IA2HvE,CAAC"}
@@ -126,7 +126,6 @@ const parse_and_validate_sse_payload = (frame, event_specs, route_path) => {
126
126
  * connected comment, fires the trigger, validates the resulting payload,
127
127
  * then asserts close-on-revoke (unless opted out).
128
128
  *
129
- * @param options - SSE test configuration
130
129
  * @throws Error at setup time when `options.rpc_endpoints` is empty — the
131
130
  * close-on-revoke assertion dispatches `account_session_revoke_all` via
132
131
  * RPC. Hard-fails via `require_rpc_endpoint_path`.
@@ -55,8 +55,6 @@ export interface StandardTestOptions {
55
55
  * Run both standard integration and admin integration test suites.
56
56
  *
57
57
  * Admin tests are only included when `roles` is provided.
58
- *
59
- * @param options - session config, route factory, RPC endpoints, and optional role schema
60
58
  */
61
59
  export declare const describe_standard_tests: (options: StandardTestOptions) => void;
62
60
  //# sourceMappingURL=standard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"standard.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/standard.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAE7B;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAC,gBAAgB,EAAE,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAChF,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,SAAS,CAAC;AAGvC,OAAO,KAAK,EAAC,uBAAuB,EAAC,MAAM,kBAAkB,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,4CAA4C;IAC5C,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACxC,wDAAwD;IACxD,kBAAkB,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE,iDAAiD;IACjD,WAAW,CAAC,EAAE,OAAO,CACpB,IAAI,CAAC,gBAAgB,EAAE,SAAS,GAAG,iBAAiB,GAAG,oBAAoB,CAAC,CAC5E,CAAC;IACF;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAChC;;;OAGG;IACH,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB;;;;;;;;;;OAUG;IACH,aAAa,EAAE,uBAAuB,CAAC;IACvC;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,GAAI,SAAS,mBAAmB,KAAG,IAStE,CAAC"}
1
+ {"version":3,"file":"standard.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/standard.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAE7B;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAC,gBAAgB,EAAE,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAChF,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,SAAS,CAAC;AAGvC,OAAO,KAAK,EAAC,uBAAuB,EAAC,MAAM,kBAAkB,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,4CAA4C;IAC5C,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACxC,wDAAwD;IACxD,kBAAkB,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE,iDAAiD;IACjD,WAAW,CAAC,EAAE,OAAO,CACpB,IAAI,CAAC,gBAAgB,EAAE,SAAS,GAAG,iBAAiB,GAAG,oBAAoB,CAAC,CAC5E,CAAC;IACF;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAChC;;;OAGG;IACH,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB;;;;;;;;;;OAUG;IACH,aAAa,EAAE,uBAAuB,CAAC;IACvC;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,GAAI,SAAS,mBAAmB,KAAG,IAStE,CAAC"}
@@ -5,8 +5,6 @@ import { describe_standard_admin_integration_tests } from './admin_integration.j
5
5
  * Run both standard integration and admin integration test suites.
6
6
  *
7
7
  * Admin tests are only included when `roles` is provided.
8
- *
9
- * @param options - session config, route factory, RPC endpoints, and optional role schema
10
8
  */
11
9
  export const describe_standard_tests = (options) => {
12
10
  describe_standard_integration_tests(options);
@@ -21,8 +21,8 @@ import type { EventSpec } from '../realtime/sse.js';
21
21
  * surfaces the stub's identity in console output rather than silent `"{}"`.
22
22
  *
23
23
  * @param label - descriptive name for error messages (e.g. `'keyring'`, `'db'`)
24
- * @throws Error on any non-internal property access (`get` trap), labeled with
25
- * the stub name and the offending property.
24
+ * @throws Error on any non-internal property access, labeled with the stub
25
+ * name and the offending property.
26
26
  */
27
27
  export declare const create_throwing_stub: <T = any>(label: string) => T;
28
28
  /**
@@ -54,9 +54,7 @@ export declare const stub_mw: (_c: any, next: any) => Promise<void>;
54
54
  /** Stub `AppDeps` for auth surface tests — throws on any method access. */
55
55
  export declare const stub_app_deps: AppDeps;
56
56
  /**
57
- * Create no-op app deps for auth surface testing.
58
- *
59
- * @returns an `AppDeps`-shaped object with no-op deps
57
+ * Create no-op `AppDeps` for auth surface testing.
60
58
  */
61
59
  export declare const create_stub_app_deps: () => AppDeps;
62
60
  /** Create the API middleware stub array matching `create_auth_middleware_specs` output. */
@@ -1 +1 @@
1
- {"version":3,"file":"stubs.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/stubs.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAa7B,OAAO,KAAK,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAE3B,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,4BAA4B,CAAC;AAE/D,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAC,EAAE,EAAC,MAAM,aAAa,CAAC;AAC/B,OAAO,EAAqB,KAAK,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAGzE,OAAO,EAEN,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,oBAAoB,CAAC;AAKlD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,oBAAoB,GAAI,CAAC,GAAG,GAAG,EAAE,OAAO,MAAM,KAAG,CAqBtD,CAAC;AAET;;;;;;;;;GASG;AACH,eAAO,MAAM,gBAAgB,GAAI,CAAC,GAAG,GAAG,EAAE,QAAQ,MAAM,EAAE,YAAY,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,CAOxF,CAAC;AAET,iEAAiE;AACjE,eAAO,MAAM,IAAI,EAAE,GAAkC,CAAC;AAEtD;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,QAAO,EAI/B,CAAC;AAEJ,gDAAgD;AAChD,eAAO,MAAM,YAAY,QAAO,QAAgC,CAAC;AAEjE,2CAA2C;AAC3C,eAAO,MAAM,OAAO,GAAU,IAAI,GAAG,EAAE,MAAM,GAAG,KAAG,OAAO,CAAC,IAAI,CAAW,CAAC;AAI3E,2EAA2E;AAC3E,eAAO,MAAM,aAAa,EAAE,OAS3B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,QAAO,OAStC,CAAC;AAEH,2FAA2F;AAC3F,eAAO,MAAM,0BAA0B,GAAI,UAAU;IACpD,iDAAiD;IACjD,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAC/B,KAAG,KAAK,CAAC,cAAc,CAqBvB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,8BAA8B,GAC1C,iBAAiB,cAAc,CAAC,MAAM,CAAC,KACrC,gBAmBF,CAAC;AAEF,kDAAkD;AAClD,MAAM,WAAW,+BAA+B;IAC/C,6DAA6D;IAC7D,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACxC,qFAAqF;IACrF,kBAAkB,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE,oEAAoE;IACpE,UAAU,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC;IACzB,8CAA8C;IAC9C,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC/B;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;IAC7F,iFAAiF;IACjF,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,KAAK,CAAC,cAAc,CAAC,CAAC;IAC/E,0DAA0D;IAC1D,sBAAsB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,4BAA4B,GACxC,SAAS,+BAA+B,KACtC,cA2CF,CAAC"}
1
+ {"version":3,"file":"stubs.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/stubs.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAa7B,OAAO,KAAK,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAE3B,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,4BAA4B,CAAC;AAE/D,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAC,EAAE,EAAC,MAAM,aAAa,CAAC;AAC/B,OAAO,EAAqB,KAAK,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAGzE,OAAO,EAEN,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,oBAAoB,CAAC;AAKlD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,oBAAoB,GAAI,CAAC,GAAG,GAAG,EAAE,OAAO,MAAM,KAAG,CAqBtD,CAAC;AAET;;;;;;;;;GASG;AACH,eAAO,MAAM,gBAAgB,GAAI,CAAC,GAAG,GAAG,EAAE,QAAQ,MAAM,EAAE,YAAY,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,CAOxF,CAAC;AAET,iEAAiE;AACjE,eAAO,MAAM,IAAI,EAAE,GAAkC,CAAC;AAEtD;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,QAAO,EAI/B,CAAC;AAEJ,gDAAgD;AAChD,eAAO,MAAM,YAAY,QAAO,QAAgC,CAAC;AAEjE,2CAA2C;AAC3C,eAAO,MAAM,OAAO,GAAU,IAAI,GAAG,EAAE,MAAM,GAAG,KAAG,OAAO,CAAC,IAAI,CAAW,CAAC;AAI3E,2EAA2E;AAC3E,eAAO,MAAM,aAAa,EAAE,OAS3B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,QAAO,OAStC,CAAC;AAEH,2FAA2F;AAC3F,eAAO,MAAM,0BAA0B,GAAI,UAAU;IACpD,iDAAiD;IACjD,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAC/B,KAAG,KAAK,CAAC,cAAc,CAqBvB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,8BAA8B,GAC1C,iBAAiB,cAAc,CAAC,MAAM,CAAC,KACrC,gBAqBF,CAAC;AAEF,kDAAkD;AAClD,MAAM,WAAW,+BAA+B;IAC/C,6DAA6D;IAC7D,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACxC,qFAAqF;IACrF,kBAAkB,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE,oEAAoE;IACpE,UAAU,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC;IACzB,8CAA8C;IAC9C,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC/B;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;IAC7F,iFAAiF;IACjF,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,KAAK,CAAC,cAAc,CAAC,CAAC;IAC/E,0DAA0D;IAC1D,sBAAsB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,4BAA4B,GACxC,SAAS,+BAA+B,KACtC,cA2CF,CAAC"}
@@ -29,8 +29,8 @@ import { BaseServerEnv } from '../server/env.js';
29
29
  * surfaces the stub's identity in console output rather than silent `"{}"`.
30
30
  *
31
31
  * @param label - descriptive name for error messages (e.g. `'keyring'`, `'db'`)
32
- * @throws Error on any non-internal property access (`get` trap), labeled with
33
- * the stub name and the offending property.
32
+ * @throws Error on any non-internal property access, labeled with the stub
33
+ * name and the offending property.
34
34
  */
35
35
  export const create_throwing_stub = (label) => new Proxy({}, {
36
36
  get: (_target, prop) => {
@@ -100,9 +100,7 @@ export const stub_app_deps = {
100
100
  on_audit_event: () => { }, // eslint-disable-line @typescript-eslint/no-empty-function
101
101
  };
102
102
  /**
103
- * Create no-op app deps for auth surface testing.
104
- *
105
- * @returns an `AppDeps`-shaped object with no-op deps
103
+ * Create no-op `AppDeps` for auth surface testing.
106
104
  */
107
105
  export const create_stub_app_deps = () => ({
108
106
  stat: async () => null,
@@ -161,6 +159,8 @@ export const create_stub_app_server_context = (session_options) => {
161
159
  ip_rate_limiter: null,
162
160
  login_account_rate_limiter: null,
163
161
  signup_account_rate_limiter: null,
162
+ action_ip_rate_limiter: null,
163
+ action_account_rate_limiter: null,
164
164
  app_settings: { open_signup: false, updated_at: null, updated_by: null },
165
165
  audit_sse: null,
166
166
  };
@@ -85,7 +85,6 @@ export interface ErrorSchemaAuditEntry {
85
85
  * (`z.string()`) vs specific `z.literal()` or `z.enum()` error codes.
86
86
  * Use the output to prioritize progressive tightening of error schemas.
87
87
  *
88
- * @param surface - the app surface to audit
89
88
  * @returns audit entries for every route x status combination
90
89
  */
91
90
  export declare const audit_error_schema_tightness: (surface: AppSurface) => Array<ErrorSchemaAuditEntry>;
@@ -199,8 +198,6 @@ export declare const DEFAULT_ERROR_SCHEMA_TIGHTNESS: ErrorSchemaTightnessOptions
199
198
  * the configured threshold. Use `allowlist` and `ignore_statuses` to exclude
200
199
  * known exceptions during progressive tightening.
201
200
  *
202
- * @param surface - the app surface to check
203
- * @param options - threshold and exclusion configuration
204
201
  * @throws AssertionError listing every route × status combination whose error
205
202
  * schema specificity is below `min_specificity` (default `'enum'`) and is
206
203
  * not in `allowlist` or `ignore_statuses`.
@@ -1 +1 @@
1
- {"version":3,"file":"surface_invariants.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/surface_invariants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"surface_invariants.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/surface_invariants.ts"],"names":[],"mappings":"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"}
@@ -278,7 +278,6 @@ const extract_error_codes = (schema) => {
278
278
  * (`z.string()`) vs specific `z.literal()` or `z.enum()` error codes.
279
279
  * Use the output to prioritize progressive tightening of error schemas.
280
280
  *
281
- * @param surface - the app surface to audit
282
281
  * @returns audit entries for every route x status combination
283
282
  */
284
283
  export const audit_error_schema_tightness = (surface) => {
@@ -423,8 +422,6 @@ export const DEFAULT_ERROR_SCHEMA_TIGHTNESS = {
423
422
  * the configured threshold. Use `allowlist` and `ignore_statuses` to exclude
424
423
  * known exceptions during progressive tightening.
425
424
  *
426
- * @param surface - the app surface to check
427
- * @param options - threshold and exclusion configuration
428
425
  * @throws AssertionError listing every route × status combination whose error
429
426
  * schema specificity is below `min_specificity` (default `'enum'`) and is
430
427
  * not in `allowlist` or `ignore_statuses`.
package/dist/ui/CLAUDE.md CHANGED
@@ -238,7 +238,7 @@ destructive actions.
238
238
  `connected`. Internal `#last_seq` for SSE gap fill on reconnect.
239
239
  Methods: `fetch(options?)` (RPC), `fetch_permit_history`,
240
240
  `subscribe()` (opens `EventSource` at `#stream_url`, default
241
- `/api/admin/audit-log/stream`; prepends new events; refills gap
241
+ `/api/admin/audit/stream`; prepends new events; refills gap
242
242
  via `since_seq`), `disconnect()`. SSE stays on `EventSource` —
243
243
  streaming is not an RPC concern.
244
244
  - `admin_accounts_state.svelte.ts` — `AdminAccountsState` extends
@@ -32,7 +32,7 @@ export class AuditLogState extends Loadable {
32
32
  constructor(options) {
33
33
  super();
34
34
  this.#get_rpc = options?.get_rpc ?? (() => null);
35
- this.#stream_url = options?.stream_url ?? '/api/admin/audit-log/stream';
35
+ this.#stream_url = options?.stream_url ?? '/api/admin/audit/stream';
36
36
  }
37
37
  /** True when an RPC adapter is wired. `fetch`/`fetch_permit_history` no-op without it. */
38
38
  get has_rpc() {
@@ -18,10 +18,7 @@ export type Alignment = 'start' | 'center' | 'end';
18
18
  /**
19
19
  * Generates CSS positioning styles for UI elements.
20
20
  *
21
- * @param position - where to position the element ('left', 'right', etc.)
22
- * @param align - alignment along the position edge ('start', 'center', 'end')
23
21
  * @param offset - distance from the position (CSS value)
24
- * @returns CSS styles as a Record
25
22
  * @throws UnreachableError if `position` is not a known `Position` value
26
23
  */
27
24
  export declare const generate_position_styles: (position?: Position, align?: Alignment, offset?: string) => Record<string, string>;
@@ -1 +1 @@
1
- {"version":3,"file":"position_helpers.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/ui/position_helpers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,gBAAgB,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE/D;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;AAEnD;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB,GACpC,WAAU,QAAmB,EAC7B,QAAO,SAAoB,EAC3B,eAAY,KACV,MAAM,CAAC,MAAM,EAAE,MAAM,CAiEvB,CAAC"}
1
+ {"version":3,"file":"position_helpers.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/ui/position_helpers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,gBAAgB,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE/D;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;AAEnD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,GACpC,WAAU,QAAmB,EAC7B,QAAO,SAAoB,EAC3B,eAAY,KACV,MAAM,CAAC,MAAM,EAAE,MAAM,CAiEvB,CAAC"}
@@ -7,10 +7,7 @@ import { UnreachableError } from '@fuzdev/fuz_util/error.js';
7
7
  /**
8
8
  * Generates CSS positioning styles for UI elements.
9
9
  *
10
- * @param position - where to position the element ('left', 'right', etc.)
11
- * @param align - alignment along the position edge ('start', 'center', 'end')
12
10
  * @param offset - distance from the position (CSS value)
13
- * @returns CSS styles as a Record
14
11
  * @throws UnreachableError if `position` is not a known `Position` value
15
12
  */
16
13
  export const generate_position_styles = (position = 'center', align = 'center', offset = '0') => {
@@ -35,8 +35,7 @@ export declare class SidebarState {
35
35
  * Show the sidebar and enable the toggle. The returned disposer hides
36
36
  * and disables on cleanup — pair with `$effect` for scoped activation.
37
37
  *
38
- * @returns cleanup function that deactivates and hides the sidebar
39
- * @mutates `this`
38
+ * @mutates `this` - sets `enabled` and `show_sidebar`; disposer clears both
40
39
  */
41
40
  activate(): () => void;
42
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar_state.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/ui/sidebar_state.svelte.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;;;GAIG;AACH,eAAO,MAAM,qBAAqB;2CAAwB,YAAY;4BAAZ,YAAY;uBAAZ,YAAY,WAAZ,YAAY;CAAG,CAAC;AAE1E,MAAM,WAAW,mBAAmB;IACnC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC;CACxB;AAED,qBAAa,YAAY;;IAKxB,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,OAAO,EAEzB;IAED,IAAI,YAAY,IAAI,OAAO,CAG1B;IAED,IAAI,YAAY,CAAC,KAAK,EAAE,OAAO,EAE9B;gBAEW,OAAO,CAAC,EAAE,mBAAmB;IAIzC,cAAc,CAAC,KAAK,GAAE,OAA4B,GAAG,IAAI;IAIzD;;;;;;OAMG;IACH,QAAQ,IAAI,MAAM,IAAI;CAQtB"}
1
+ {"version":3,"file":"sidebar_state.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/ui/sidebar_state.svelte.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;;;GAIG;AACH,eAAO,MAAM,qBAAqB;2CAAwB,YAAY;4BAAZ,YAAY;uBAAZ,YAAY,WAAZ,YAAY;CAAG,CAAC;AAE1E,MAAM,WAAW,mBAAmB;IACnC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC;CACxB;AAED,qBAAa,YAAY;;IAKxB,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,OAAO,EAEzB;IAED,IAAI,YAAY,IAAI,OAAO,CAG1B;IAED,IAAI,YAAY,CAAC,KAAK,EAAE,OAAO,EAE9B;gBAEW,OAAO,CAAC,EAAE,mBAAmB;IAIzC,cAAc,CAAC,KAAK,GAAE,OAA4B,GAAG,IAAI;IAIzD;;;;;OAKG;IACH,QAAQ,IAAI,MAAM,IAAI;CAQtB"}
@@ -40,8 +40,7 @@ export class SidebarState {
40
40
  * Show the sidebar and enable the toggle. The returned disposer hides
41
41
  * and disables on cleanup — pair with `$effect` for scoped activation.
42
42
  *
43
- * @returns cleanup function that deactivates and hides the sidebar
44
- * @mutates `this`
43
+ * @mutates `this` - sets `enabled` and `show_sidebar`; disposer clears both
45
44
  */
46
45
  activate() {
47
46
  this.enabled = true;
@@ -9,10 +9,6 @@
9
9
  */
10
10
  /**
11
11
  * Fetch with credentials included (sends cookies).
12
- *
13
- * @param input - the request URL or Request object
14
- * @param init - optional fetch init options
15
- * @returns fetch response promise
16
12
  */
17
13
  export declare const ui_fetch: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>;
18
14
  /**
@@ -21,9 +17,7 @@ export declare const ui_fetch: (input: RequestInfo | URL, init?: RequestInit) =>
21
17
  * Handles responses with non-JSON bodies (e.g. HTML 404 pages)
22
18
  * that would throw on `response.json()`.
23
19
  *
24
- * @param response - the non-ok response
25
- * @param fallback - fallback message when no `.error` field is found
26
- * @returns error message string
20
+ * @param fallback - message when no `.error` field is found
27
21
  */
28
22
  export declare const parse_response_error: (response: Response, fallback?: string) => Promise<string>;
29
23
  //# sourceMappingURL=ui_fetch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui_fetch.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/ui/ui_fetch.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,WAAW,GAAG,GAAG,EAAE,OAAO,WAAW,KAAG,OAAO,CAAC,QAAQ,CACxC,CAAC;AAEjD;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,GAChC,UAAU,QAAQ,EAClB,WAAW,MAAM,KACf,OAAO,CAAC,MAAM,CAQhB,CAAC"}
1
+ {"version":3,"file":"ui_fetch.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/ui/ui_fetch.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;GAEG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,WAAW,GAAG,GAAG,EAAE,OAAO,WAAW,KAAG,OAAO,CAAC,QAAQ,CACxC,CAAC;AAEjD;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,GAChC,UAAU,QAAQ,EAClB,WAAW,MAAM,KACf,OAAO,CAAC,MAAM,CAQhB,CAAC"}
@@ -9,10 +9,6 @@
9
9
  */
10
10
  /**
11
11
  * Fetch with credentials included (sends cookies).
12
- *
13
- * @param input - the request URL or Request object
14
- * @param init - optional fetch init options
15
- * @returns fetch response promise
16
12
  */
17
13
  export const ui_fetch = (input, init) => fetch(input, { ...init, credentials: 'include' });
18
14
  /**
@@ -21,9 +17,7 @@ export const ui_fetch = (input, init) => fetch(input, { ...init, credentials: 'i
21
17
  * Handles responses with non-JSON bodies (e.g. HTML 404 pages)
22
18
  * that would throw on `response.json()`.
23
19
  *
24
- * @param response - the non-ok response
25
- * @param fallback - fallback message when no `.error` field is found
26
- * @returns error message string
20
+ * @param fallback - message when no `.error` field is found
27
21
  */
28
22
  export const parse_response_error = async (response, fallback) => {
29
23
  const default_message = fallback ?? `Error: ${response.status}`;
@@ -9,54 +9,42 @@
9
9
  /**
10
10
  * Format a timestamp as a relative time string.
11
11
  *
12
- * @param timestamp - a date value (`string`, `number`, or `Date`)
13
- * @param now - reference time in ms since epoch, defaults to `Date.now()`
14
12
  * @returns human-friendly relative time (e.g. "2m ago", "3h ago", "5d ago", "2mo ago", "1y ago")
15
13
  */
16
14
  export declare const format_relative_time: (timestamp: string | number | Date, now?: number) => string;
17
15
  /**
18
16
  * Format milliseconds as a human-friendly uptime string.
19
17
  *
20
- * @param ms - duration in milliseconds
21
18
  * @returns human-friendly duration (e.g. "45s", "12m", "3h 15m", "2d 5h")
22
19
  */
23
20
  export declare const format_uptime: (ms: number) => string;
24
21
  /**
25
22
  * Truncate a string by keeping the start and end, with a separator in the middle.
26
23
  *
27
- * @param str - the string to truncate
28
- * @param max_length - maximum total length including separator
29
- * @param separator - the middle separator
24
+ * @param max_length - total length including separator
30
25
  * @returns the truncated string, or the original if it fits
31
26
  */
32
27
  export declare const truncate_middle: (str: string, max_length: number, separator?: string) => string;
33
28
  /**
34
29
  * Truncate a UUID for display, keeping start and end visible.
35
30
  *
36
- * @param uuid - the UUID string to truncate
37
31
  * @returns a 12-character truncated UUID like `a1b2c…7890`
38
32
  */
39
33
  export declare const truncate_uuid: (uuid: string) => string;
40
34
  /**
41
35
  * Format an arbitrary value for table cell display.
42
- *
43
- * @param value - the value to format
44
- * @returns string representation suitable for UI display
45
36
  */
46
37
  export declare const format_value: (value: unknown) => string;
47
38
  /**
48
39
  * Format a timestamp as an absolute datetime string for title attributes.
49
40
  *
50
- * @param timestamp - a date value
51
41
  * @returns readable absolute datetime like `"2026-03-21 14:30:00 UTC"`
52
42
  */
53
43
  export declare const format_datetime_local: (timestamp: string | number | Date) => string;
54
44
  /**
55
45
  * Format audit event metadata for display based on event type.
56
46
  *
57
- * @param event_type - the audit event type (builtin or consumer-registered)
58
- * @param metadata - the metadata object (may be null)
59
- * @returns human-readable summary string
47
+ * @param event_type - builtin or consumer-registered audit event type
60
48
  */
61
49
  export declare const format_audit_metadata: (event_type: string, metadata: Record<string, unknown> | null) => string;
62
50
  //# sourceMappingURL=ui_format.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui_format.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/ui/ui_format.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,GAChC,WAAW,MAAM,GAAG,MAAM,GAAG,IAAI,EACjC,MAAK,MAAmB,KACtB,MA2BF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,aAAa,GAAI,IAAI,MAAM,KAAG,MAY1C,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,GAAI,KAAK,MAAM,EAAE,YAAY,MAAM,EAAE,kBAAe,KAAG,MAOlF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,KAAG,MAAmC,CAAC;AAEjF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,OAAO,KAAG,MAS7C,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAAI,WAAW,MAAM,GAAG,MAAM,GAAG,IAAI,KAAG,MAOzE,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,GACjC,YAAY,MAAM,EAClB,UAAU,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,KACtC,MAuDF,CAAC"}
1
+ {"version":3,"file":"ui_format.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/ui/ui_format.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAChC,WAAW,MAAM,GAAG,MAAM,GAAG,IAAI,EACjC,MAAK,MAAmB,KACtB,MA2BF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,IAAI,MAAM,KAAG,MAY1C,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAI,KAAK,MAAM,EAAE,YAAY,MAAM,EAAE,kBAAe,KAAG,MAOlF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,KAAG,MAAmC,CAAC;AAEjF;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,OAAO,KAAG,MAS7C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAAI,WAAW,MAAM,GAAG,MAAM,GAAG,IAAI,KAAG,MAOzE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GACjC,YAAY,MAAM,EAClB,UAAU,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,KACtC,MAuDF,CAAC"}
@@ -9,8 +9,6 @@
9
9
  /**
10
10
  * Format a timestamp as a relative time string.
11
11
  *
12
- * @param timestamp - a date value (`string`, `number`, or `Date`)
13
- * @param now - reference time in ms since epoch, defaults to `Date.now()`
14
12
  * @returns human-friendly relative time (e.g. "2m ago", "3h ago", "5d ago", "2mo ago", "1y ago")
15
13
  */
16
14
  export const format_relative_time = (timestamp, now = Date.now()) => {
@@ -49,7 +47,6 @@ export const format_relative_time = (timestamp, now = Date.now()) => {
49
47
  /**
50
48
  * Format milliseconds as a human-friendly uptime string.
51
49
  *
52
- * @param ms - duration in milliseconds
53
50
  * @returns human-friendly duration (e.g. "45s", "12m", "3h 15m", "2d 5h")
54
51
  */
55
52
  export const format_uptime = (ms) => {
@@ -72,9 +69,7 @@ export const format_uptime = (ms) => {
72
69
  /**
73
70
  * Truncate a string by keeping the start and end, with a separator in the middle.
74
71
  *
75
- * @param str - the string to truncate
76
- * @param max_length - maximum total length including separator
77
- * @param separator - the middle separator
72
+ * @param max_length - total length including separator
78
73
  * @returns the truncated string, or the original if it fits
79
74
  */
80
75
  export const truncate_middle = (str, max_length, separator = '…') => {
@@ -90,15 +85,11 @@ export const truncate_middle = (str, max_length, separator = '…') => {
90
85
  /**
91
86
  * Truncate a UUID for display, keeping start and end visible.
92
87
  *
93
- * @param uuid - the UUID string to truncate
94
88
  * @returns a 12-character truncated UUID like `a1b2c…7890`
95
89
  */
96
90
  export const truncate_uuid = (uuid) => truncate_middle(uuid, 12);
97
91
  /**
98
92
  * Format an arbitrary value for table cell display.
99
- *
100
- * @param value - the value to format
101
- * @returns string representation suitable for UI display
102
93
  */
103
94
  export const format_value = (value) => {
104
95
  if (value === null)
@@ -118,7 +109,6 @@ export const format_value = (value) => {
118
109
  /**
119
110
  * Format a timestamp as an absolute datetime string for title attributes.
120
111
  *
121
- * @param timestamp - a date value
122
112
  * @returns readable absolute datetime like `"2026-03-21 14:30:00 UTC"`
123
113
  */
124
114
  export const format_datetime_local = (timestamp) => {
@@ -133,9 +123,7 @@ export const format_datetime_local = (timestamp) => {
133
123
  /**
134
124
  * Format audit event metadata for display based on event type.
135
125
  *
136
- * @param event_type - the audit event type (builtin or consumer-registered)
137
- * @param metadata - the metadata object (may be null)
138
- * @returns human-readable summary string
126
+ * @param event_type - builtin or consumer-registered audit event type
139
127
  */
140
128
  export const format_audit_metadata = (event_type, metadata) => {
141
129
  if (!metadata)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fuzdev/fuz_app",
3
- "version": "0.52.0",
3
+ "version": "0.54.0",
4
4
  "description": "fullstack app library",
5
5
  "glyph": "🗝",
6
6
  "logo": "logo.svg",
@@ -45,7 +45,7 @@
45
45
  "@fuzdev/blake3_wasm": "^0.1.0",
46
46
  "@fuzdev/fuz_code": "^0.45.1",
47
47
  "@fuzdev/fuz_css": "^0.59.0",
48
- "@fuzdev/fuz_ui": "^0.191.4",
48
+ "@fuzdev/fuz_ui": "^0.192.0",
49
49
  "@fuzdev/fuz_util": "^0.59.0",
50
50
  "@fuzdev/gro": "^0.199.0",
51
51
  "@jridgewell/trace-mapping": "^0.3.31",