@fuzdev/fuz_app 0.51.0 → 0.53.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 (395) hide show
  1. package/dist/actions/CLAUDE.md +43 -10
  2. package/dist/actions/action_bridge.d.ts +3 -1
  3. package/dist/actions/action_bridge.d.ts.map +1 -1
  4. package/dist/actions/action_bridge.js +3 -1
  5. package/dist/actions/action_codegen.d.ts +28 -43
  6. package/dist/actions/action_codegen.d.ts.map +1 -1
  7. package/dist/actions/action_codegen.js +31 -50
  8. package/dist/actions/action_event.d.ts +44 -1
  9. package/dist/actions/action_event.d.ts.map +1 -1
  10. package/dist/actions/action_event.js +44 -1
  11. package/dist/actions/action_event_helpers.d.ts +26 -0
  12. package/dist/actions/action_event_helpers.d.ts.map +1 -1
  13. package/dist/actions/action_event_helpers.js +26 -1
  14. package/dist/actions/action_peer.d.ts +17 -0
  15. package/dist/actions/action_peer.d.ts.map +1 -1
  16. package/dist/actions/action_peer.js +8 -9
  17. package/dist/actions/action_registry.d.ts +1 -5
  18. package/dist/actions/action_registry.d.ts.map +1 -1
  19. package/dist/actions/action_registry.js +5 -11
  20. package/dist/actions/action_rpc.d.ts +20 -0
  21. package/dist/actions/action_rpc.d.ts.map +1 -1
  22. package/dist/actions/action_rpc.js +45 -20
  23. package/dist/actions/action_spec.d.ts +75 -6
  24. package/dist/actions/action_spec.d.ts.map +1 -1
  25. package/dist/actions/action_spec.js +36 -6
  26. package/dist/actions/frontend_rpc_client.d.ts +1 -9
  27. package/dist/actions/frontend_rpc_client.d.ts.map +1 -1
  28. package/dist/actions/frontend_rpc_client.js +1 -9
  29. package/dist/actions/register_action_ws.d.ts +19 -0
  30. package/dist/actions/register_action_ws.d.ts.map +1 -1
  31. package/dist/actions/register_action_ws.js +44 -1
  32. package/dist/actions/register_ws_endpoint.d.ts +3 -0
  33. package/dist/actions/register_ws_endpoint.d.ts.map +1 -1
  34. package/dist/actions/register_ws_endpoint.js +3 -0
  35. package/dist/actions/request_tracker.svelte.d.ts +24 -16
  36. package/dist/actions/request_tracker.svelte.d.ts.map +1 -1
  37. package/dist/actions/request_tracker.svelte.js +24 -16
  38. package/dist/actions/rpc_client.d.ts +0 -1
  39. package/dist/actions/rpc_client.d.ts.map +1 -1
  40. package/dist/actions/rpc_client.js +3 -17
  41. package/dist/actions/socket.svelte.d.ts +35 -16
  42. package/dist/actions/socket.svelte.d.ts.map +1 -1
  43. package/dist/actions/socket.svelte.js +33 -14
  44. package/dist/actions/transports.d.ts +15 -5
  45. package/dist/actions/transports.d.ts.map +1 -1
  46. package/dist/actions/transports.js +15 -15
  47. package/dist/actions/transports_http.d.ts +7 -0
  48. package/dist/actions/transports_http.d.ts.map +1 -1
  49. package/dist/actions/transports_http.js +7 -0
  50. package/dist/actions/transports_ws.d.ts +13 -0
  51. package/dist/actions/transports_ws.d.ts.map +1 -1
  52. package/dist/actions/transports_ws.js +13 -0
  53. package/dist/actions/transports_ws_auth_guard.d.ts +6 -4
  54. package/dist/actions/transports_ws_auth_guard.d.ts.map +1 -1
  55. package/dist/actions/transports_ws_auth_guard.js +6 -4
  56. package/dist/actions/transports_ws_backend.d.ts +14 -1
  57. package/dist/actions/transports_ws_backend.d.ts.map +1 -1
  58. package/dist/actions/transports_ws_backend.js +14 -10
  59. package/dist/auth/CLAUDE.md +64 -18
  60. package/dist/auth/account_queries.d.ts +7 -0
  61. package/dist/auth/account_queries.d.ts.map +1 -1
  62. package/dist/auth/account_queries.js +7 -0
  63. package/dist/auth/admin_action_specs.d.ts +5 -0
  64. package/dist/auth/admin_action_specs.d.ts.map +1 -1
  65. package/dist/auth/admin_action_specs.js +5 -0
  66. package/dist/auth/admin_actions.d.ts +1 -0
  67. package/dist/auth/admin_actions.d.ts.map +1 -1
  68. package/dist/auth/admin_actions.js +1 -0
  69. package/dist/auth/api_token_queries.d.ts +6 -0
  70. package/dist/auth/api_token_queries.d.ts.map +1 -1
  71. package/dist/auth/api_token_queries.js +6 -0
  72. package/dist/auth/app_settings_queries.d.ts +4 -0
  73. package/dist/auth/app_settings_queries.d.ts.map +1 -1
  74. package/dist/auth/app_settings_queries.js +4 -0
  75. package/dist/auth/audit_log_queries.d.ts +5 -0
  76. package/dist/auth/audit_log_queries.d.ts.map +1 -1
  77. package/dist/auth/audit_log_queries.js +5 -0
  78. package/dist/auth/audit_log_routes.d.ts +2 -2
  79. package/dist/auth/audit_log_routes.js +2 -2
  80. package/dist/auth/audit_log_schema.d.ts +2 -0
  81. package/dist/auth/audit_log_schema.d.ts.map +1 -1
  82. package/dist/auth/audit_log_schema.js +134 -55
  83. package/dist/auth/bearer_auth.d.ts +2 -0
  84. package/dist/auth/bearer_auth.d.ts.map +1 -1
  85. package/dist/auth/bearer_auth.js +2 -0
  86. package/dist/auth/bootstrap_account.d.ts +3 -0
  87. package/dist/auth/bootstrap_account.d.ts.map +1 -1
  88. package/dist/auth/bootstrap_account.js +3 -0
  89. package/dist/auth/cleanup.d.ts +6 -0
  90. package/dist/auth/cleanup.d.ts.map +1 -1
  91. package/dist/auth/cleanup.js +6 -0
  92. package/dist/auth/daemon_token_middleware.d.ts +4 -0
  93. package/dist/auth/daemon_token_middleware.d.ts.map +1 -1
  94. package/dist/auth/daemon_token_middleware.js +4 -0
  95. package/dist/auth/invite_queries.d.ts +3 -0
  96. package/dist/auth/invite_queries.d.ts.map +1 -1
  97. package/dist/auth/invite_queries.js +3 -0
  98. package/dist/auth/permit_offer_action_specs.d.ts +6 -0
  99. package/dist/auth/permit_offer_action_specs.d.ts.map +1 -1
  100. package/dist/auth/permit_offer_action_specs.js +11 -0
  101. package/dist/auth/permit_offer_queries.d.ts +18 -0
  102. package/dist/auth/permit_offer_queries.d.ts.map +1 -1
  103. package/dist/auth/permit_offer_queries.js +18 -0
  104. package/dist/auth/permit_queries.d.ts +7 -0
  105. package/dist/auth/permit_queries.d.ts.map +1 -1
  106. package/dist/auth/permit_queries.js +7 -0
  107. package/dist/auth/request_context.d.ts +1 -0
  108. package/dist/auth/request_context.d.ts.map +1 -1
  109. package/dist/auth/request_context.js +1 -0
  110. package/dist/auth/role_schema.d.ts +2 -0
  111. package/dist/auth/role_schema.d.ts.map +1 -1
  112. package/dist/auth/role_schema.js +2 -0
  113. package/dist/auth/self_service_role_actions.d.ts +1 -0
  114. package/dist/auth/self_service_role_actions.d.ts.map +1 -1
  115. package/dist/auth/self_service_role_actions.js +1 -0
  116. package/dist/auth/session_lifecycle.d.ts +2 -0
  117. package/dist/auth/session_lifecycle.d.ts.map +1 -1
  118. package/dist/auth/session_lifecycle.js +2 -0
  119. package/dist/auth/session_middleware.d.ts +1 -0
  120. package/dist/auth/session_middleware.d.ts.map +1 -1
  121. package/dist/auth/session_middleware.js +1 -0
  122. package/dist/auth/session_queries.d.ts +9 -0
  123. package/dist/auth/session_queries.d.ts.map +1 -1
  124. package/dist/auth/session_queries.js +9 -0
  125. package/dist/cli/config.d.ts +1 -2
  126. package/dist/cli/config.d.ts.map +1 -1
  127. package/dist/cli/config.js +1 -2
  128. package/dist/cli/daemon.d.ts +6 -1
  129. package/dist/cli/daemon.d.ts.map +1 -1
  130. package/dist/cli/daemon.js +6 -1
  131. package/dist/db/assert_row.d.ts +2 -1
  132. package/dist/db/assert_row.d.ts.map +1 -1
  133. package/dist/db/assert_row.js +2 -1
  134. package/dist/db/create_db.d.ts +3 -1
  135. package/dist/db/create_db.d.ts.map +1 -1
  136. package/dist/db/create_db.js +3 -1
  137. package/dist/db/db.d.ts +15 -4
  138. package/dist/db/db.d.ts.map +1 -1
  139. package/dist/db/db.js +14 -3
  140. package/dist/db/db_pg.d.ts +4 -3
  141. package/dist/db/db_pg.d.ts.map +1 -1
  142. package/dist/db/db_pg.js +7 -5
  143. package/dist/db/db_pglite.d.ts +4 -4
  144. package/dist/db/db_pglite.js +4 -4
  145. package/dist/db/migrate.d.ts +7 -4
  146. package/dist/db/migrate.d.ts.map +1 -1
  147. package/dist/db/migrate.js +5 -2
  148. package/dist/db/sql_identifier.d.ts +2 -1
  149. package/dist/db/sql_identifier.d.ts.map +1 -1
  150. package/dist/db/sql_identifier.js +2 -1
  151. package/dist/db/status.d.ts +4 -1
  152. package/dist/db/status.d.ts.map +1 -1
  153. package/dist/db/status.js +5 -2
  154. package/dist/dev/setup.d.ts +15 -2
  155. package/dist/dev/setup.d.ts.map +1 -1
  156. package/dist/dev/setup.js +15 -2
  157. package/dist/env/dotenv.d.ts +2 -1
  158. package/dist/env/dotenv.d.ts.map +1 -1
  159. package/dist/env/dotenv.js +2 -1
  160. package/dist/env/load.d.ts +1 -3
  161. package/dist/env/load.d.ts.map +1 -1
  162. package/dist/env/load.js +1 -3
  163. package/dist/env/resolve.d.ts +1 -1
  164. package/dist/env/resolve.js +1 -1
  165. package/dist/env/update_env_variable.d.ts +2 -0
  166. package/dist/env/update_env_variable.d.ts.map +1 -1
  167. package/dist/env/update_env_variable.js +2 -0
  168. package/dist/hono_context.d.ts +2 -5
  169. package/dist/hono_context.d.ts.map +1 -1
  170. package/dist/hono_context.js +2 -5
  171. package/dist/http/common_routes.d.ts +0 -8
  172. package/dist/http/common_routes.d.ts.map +1 -1
  173. package/dist/http/common_routes.js +0 -8
  174. package/dist/http/db_routes.d.ts +0 -3
  175. package/dist/http/db_routes.d.ts.map +1 -1
  176. package/dist/http/db_routes.js +0 -3
  177. package/dist/http/error_schemas.d.ts +12 -11
  178. package/dist/http/error_schemas.d.ts.map +1 -1
  179. package/dist/http/error_schemas.js +11 -7
  180. package/dist/http/jsonrpc_errors.d.ts +0 -6
  181. package/dist/http/jsonrpc_errors.d.ts.map +1 -1
  182. package/dist/http/jsonrpc_errors.js +0 -6
  183. package/dist/http/origin.d.ts +6 -13
  184. package/dist/http/origin.d.ts.map +1 -1
  185. package/dist/http/origin.js +7 -14
  186. package/dist/http/pending_effects.d.ts +4 -0
  187. package/dist/http/pending_effects.d.ts.map +1 -1
  188. package/dist/http/pending_effects.js +4 -0
  189. package/dist/http/proxy.d.ts +3 -6
  190. package/dist/http/proxy.d.ts.map +1 -1
  191. package/dist/http/proxy.js +3 -6
  192. package/dist/http/route_spec.d.ts +14 -35
  193. package/dist/http/route_spec.d.ts.map +1 -1
  194. package/dist/http/route_spec.js +17 -22
  195. package/dist/http/schema_helpers.d.ts +0 -4
  196. package/dist/http/schema_helpers.d.ts.map +1 -1
  197. package/dist/http/schema_helpers.js +0 -4
  198. package/dist/http/surface.d.ts +2 -12
  199. package/dist/http/surface.d.ts.map +1 -1
  200. package/dist/http/surface.js +1 -12
  201. package/dist/rate_limiter.d.ts +30 -1
  202. package/dist/rate_limiter.d.ts.map +1 -1
  203. package/dist/rate_limiter.js +40 -1
  204. package/dist/realtime/sse.d.ts +7 -2
  205. package/dist/realtime/sse.d.ts.map +1 -1
  206. package/dist/realtime/sse.js +3 -2
  207. package/dist/realtime/sse_auth_guard.d.ts +21 -21
  208. package/dist/realtime/sse_auth_guard.d.ts.map +1 -1
  209. package/dist/realtime/sse_auth_guard.js +24 -24
  210. package/dist/realtime/subscriber_registry.d.ts +4 -5
  211. package/dist/realtime/subscriber_registry.d.ts.map +1 -1
  212. package/dist/realtime/subscriber_registry.js +4 -5
  213. package/dist/runtime/fs.d.ts +5 -3
  214. package/dist/runtime/fs.d.ts.map +1 -1
  215. package/dist/runtime/fs.js +5 -3
  216. package/dist/runtime/mock.d.ts +6 -3
  217. package/dist/runtime/mock.d.ts.map +1 -1
  218. package/dist/runtime/mock.js +6 -3
  219. package/dist/server/app_backend.d.ts +1 -0
  220. package/dist/server/app_backend.d.ts.map +1 -1
  221. package/dist/server/app_backend.js +1 -0
  222. package/dist/server/app_server.d.ts +31 -5
  223. package/dist/server/app_server.d.ts.map +1 -1
  224. package/dist/server/app_server.js +23 -7
  225. package/dist/server/startup.d.ts +0 -2
  226. package/dist/server/startup.d.ts.map +1 -1
  227. package/dist/server/startup.js +0 -2
  228. package/dist/server/static.d.ts +0 -1
  229. package/dist/server/static.d.ts.map +1 -1
  230. package/dist/server/static.js +0 -1
  231. package/dist/server/validate_nginx.d.ts +3 -3
  232. package/dist/server/validate_nginx.d.ts.map +1 -1
  233. package/dist/server/validate_nginx.js +0 -3
  234. package/dist/testing/CLAUDE.md +1 -1
  235. package/dist/testing/admin_integration.d.ts +5 -1
  236. package/dist/testing/admin_integration.d.ts.map +1 -1
  237. package/dist/testing/admin_integration.js +8 -6
  238. package/dist/testing/adversarial_404.d.ts +0 -2
  239. package/dist/testing/adversarial_404.d.ts.map +1 -1
  240. package/dist/testing/adversarial_404.js +0 -2
  241. package/dist/testing/adversarial_headers.d.ts +5 -4
  242. package/dist/testing/adversarial_headers.d.ts.map +1 -1
  243. package/dist/testing/adversarial_headers.js +5 -4
  244. package/dist/testing/adversarial_input.d.ts +4 -2
  245. package/dist/testing/adversarial_input.d.ts.map +1 -1
  246. package/dist/testing/adversarial_input.js +4 -2
  247. package/dist/testing/app_server.d.ts +25 -0
  248. package/dist/testing/app_server.d.ts.map +1 -1
  249. package/dist/testing/app_server.js +11 -2
  250. package/dist/testing/assertions.d.ts +23 -11
  251. package/dist/testing/assertions.d.ts.map +1 -1
  252. package/dist/testing/assertions.js +23 -11
  253. package/dist/testing/attack_surface.d.ts +0 -4
  254. package/dist/testing/attack_surface.d.ts.map +1 -1
  255. package/dist/testing/attack_surface.js +0 -4
  256. package/dist/testing/audit_completeness.d.ts +4 -1
  257. package/dist/testing/audit_completeness.d.ts.map +1 -1
  258. package/dist/testing/audit_completeness.js +4 -1
  259. package/dist/testing/auth_apps.d.ts +5 -10
  260. package/dist/testing/auth_apps.d.ts.map +1 -1
  261. package/dist/testing/auth_apps.js +5 -10
  262. package/dist/testing/data_exposure.d.ts +0 -11
  263. package/dist/testing/data_exposure.d.ts.map +1 -1
  264. package/dist/testing/data_exposure.js +0 -11
  265. package/dist/testing/db.d.ts +9 -7
  266. package/dist/testing/db.d.ts.map +1 -1
  267. package/dist/testing/db.js +9 -7
  268. package/dist/testing/error_coverage.d.ts +9 -14
  269. package/dist/testing/error_coverage.d.ts.map +1 -1
  270. package/dist/testing/error_coverage.js +9 -14
  271. package/dist/testing/integration.d.ts +4 -1
  272. package/dist/testing/integration.d.ts.map +1 -1
  273. package/dist/testing/integration.js +4 -1
  274. package/dist/testing/integration_helpers.d.ts +5 -34
  275. package/dist/testing/integration_helpers.d.ts.map +1 -1
  276. package/dist/testing/integration_helpers.js +5 -41
  277. package/dist/testing/middleware.d.ts +5 -10
  278. package/dist/testing/middleware.d.ts.map +1 -1
  279. package/dist/testing/middleware.js +5 -10
  280. package/dist/testing/mock_fs.d.ts +0 -2
  281. package/dist/testing/mock_fs.d.ts.map +1 -1
  282. package/dist/testing/mock_fs.js +0 -2
  283. package/dist/testing/rate_limiting.d.ts +3 -1
  284. package/dist/testing/rate_limiting.d.ts.map +1 -1
  285. package/dist/testing/rate_limiting.js +3 -1
  286. package/dist/testing/round_trip.d.ts +0 -2
  287. package/dist/testing/round_trip.d.ts.map +1 -1
  288. package/dist/testing/round_trip.js +0 -2
  289. package/dist/testing/rpc_attack_surface.d.ts +0 -2
  290. package/dist/testing/rpc_attack_surface.d.ts.map +1 -1
  291. package/dist/testing/rpc_attack_surface.js +0 -2
  292. package/dist/testing/rpc_helpers.d.ts +21 -14
  293. package/dist/testing/rpc_helpers.d.ts.map +1 -1
  294. package/dist/testing/rpc_helpers.js +21 -14
  295. package/dist/testing/rpc_round_trip.d.ts +0 -2
  296. package/dist/testing/rpc_round_trip.d.ts.map +1 -1
  297. package/dist/testing/rpc_round_trip.js +0 -2
  298. package/dist/testing/schema_generators.d.ts +5 -3
  299. package/dist/testing/schema_generators.d.ts.map +1 -1
  300. package/dist/testing/schema_generators.js +22 -3
  301. package/dist/testing/sse_round_trip.d.ts +3 -1
  302. package/dist/testing/sse_round_trip.d.ts.map +1 -1
  303. package/dist/testing/sse_round_trip.js +3 -1
  304. package/dist/testing/standard.d.ts +0 -2
  305. package/dist/testing/standard.d.ts.map +1 -1
  306. package/dist/testing/standard.js +0 -2
  307. package/dist/testing/stubs.d.ts +8 -3
  308. package/dist/testing/stubs.d.ts.map +1 -1
  309. package/dist/testing/stubs.js +10 -3
  310. package/dist/testing/surface_invariants.d.ts +14 -3
  311. package/dist/testing/surface_invariants.d.ts.map +1 -1
  312. package/dist/testing/surface_invariants.js +14 -3
  313. package/dist/testing/ws_round_trip.d.ts +13 -1
  314. package/dist/testing/ws_round_trip.d.ts.map +1 -1
  315. package/dist/ui/AccountSessions.svelte +9 -0
  316. package/dist/ui/AccountSessions.svelte.d.ts.map +1 -1
  317. package/dist/ui/AdminAccounts.svelte +10 -0
  318. package/dist/ui/AdminAccounts.svelte.d.ts.map +1 -1
  319. package/dist/ui/AdminAuditLog.svelte +10 -0
  320. package/dist/ui/AdminAuditLog.svelte.d.ts.map +1 -1
  321. package/dist/ui/AdminInvites.svelte +9 -0
  322. package/dist/ui/AdminInvites.svelte.d.ts.map +1 -1
  323. package/dist/ui/AdminOverview.svelte +10 -0
  324. package/dist/ui/AdminOverview.svelte.d.ts.map +1 -1
  325. package/dist/ui/AdminPermitHistory.svelte +9 -0
  326. package/dist/ui/AdminPermitHistory.svelte.d.ts.map +1 -1
  327. package/dist/ui/AdminSessions.svelte +10 -0
  328. package/dist/ui/AdminSessions.svelte.d.ts.map +1 -1
  329. package/dist/ui/AdminSettings.svelte +9 -0
  330. package/dist/ui/AdminSettings.svelte.d.ts.map +1 -1
  331. package/dist/ui/AdminSurface.svelte +9 -0
  332. package/dist/ui/AdminSurface.svelte.d.ts.map +1 -1
  333. package/dist/ui/AppShell.svelte +24 -0
  334. package/dist/ui/AppShell.svelte.d.ts +23 -0
  335. package/dist/ui/AppShell.svelte.d.ts.map +1 -1
  336. package/dist/ui/BootstrapForm.svelte +17 -0
  337. package/dist/ui/BootstrapForm.svelte.d.ts +4 -0
  338. package/dist/ui/BootstrapForm.svelte.d.ts.map +1 -1
  339. package/dist/ui/CLAUDE.md +1 -1
  340. package/dist/ui/ColumnLayout.svelte +11 -0
  341. package/dist/ui/ColumnLayout.svelte.d.ts +10 -0
  342. package/dist/ui/ColumnLayout.svelte.d.ts.map +1 -1
  343. package/dist/ui/Datatable.svelte +18 -0
  344. package/dist/ui/Datatable.svelte.d.ts +17 -0
  345. package/dist/ui/Datatable.svelte.d.ts.map +1 -1
  346. package/dist/ui/LoginForm.svelte +18 -0
  347. package/dist/ui/LoginForm.svelte.d.ts +9 -0
  348. package/dist/ui/LoginForm.svelte.d.ts.map +1 -1
  349. package/dist/ui/LogoutButton.svelte +9 -0
  350. package/dist/ui/LogoutButton.svelte.d.ts +8 -0
  351. package/dist/ui/LogoutButton.svelte.d.ts.map +1 -1
  352. package/dist/ui/MenuLink.svelte +10 -0
  353. package/dist/ui/MenuLink.svelte.d.ts +9 -0
  354. package/dist/ui/MenuLink.svelte.d.ts.map +1 -1
  355. package/dist/ui/OpenSignupToggle.svelte +9 -0
  356. package/dist/ui/OpenSignupToggle.svelte.d.ts.map +1 -1
  357. package/dist/ui/SignupForm.svelte +16 -0
  358. package/dist/ui/SignupForm.svelte.d.ts +4 -0
  359. package/dist/ui/SignupForm.svelte.d.ts.map +1 -1
  360. package/dist/ui/SurfaceExplorer.svelte +9 -0
  361. package/dist/ui/SurfaceExplorer.svelte.d.ts.map +1 -1
  362. package/dist/ui/audit_log_state.svelte.d.ts +6 -1
  363. package/dist/ui/audit_log_state.svelte.d.ts.map +1 -1
  364. package/dist/ui/audit_log_state.svelte.js +7 -2
  365. package/dist/ui/auth_state.svelte.d.ts +16 -4
  366. package/dist/ui/auth_state.svelte.d.ts.map +1 -1
  367. package/dist/ui/auth_state.svelte.js +16 -4
  368. package/dist/ui/form_state.svelte.d.ts +9 -0
  369. package/dist/ui/form_state.svelte.d.ts.map +1 -1
  370. package/dist/ui/form_state.svelte.js +9 -0
  371. package/dist/ui/loadable.svelte.d.ts +6 -1
  372. package/dist/ui/loadable.svelte.d.ts.map +1 -1
  373. package/dist/ui/loadable.svelte.js +6 -1
  374. package/dist/ui/permit_offers_state.svelte.d.ts +2 -0
  375. package/dist/ui/permit_offers_state.svelte.d.ts.map +1 -1
  376. package/dist/ui/permit_offers_state.svelte.js +2 -0
  377. package/dist/ui/popover.svelte.d.ts +17 -4
  378. package/dist/ui/popover.svelte.d.ts.map +1 -1
  379. package/dist/ui/popover.svelte.js +17 -4
  380. package/dist/ui/position_helpers.d.ts +1 -3
  381. package/dist/ui/position_helpers.d.ts.map +1 -1
  382. package/dist/ui/position_helpers.js +1 -3
  383. package/dist/ui/sidebar_state.svelte.d.ts +21 -9
  384. package/dist/ui/sidebar_state.svelte.d.ts.map +1 -1
  385. package/dist/ui/sidebar_state.svelte.js +16 -2
  386. package/dist/ui/table_state.svelte.d.ts +14 -0
  387. package/dist/ui/table_state.svelte.d.ts.map +1 -1
  388. package/dist/ui/table_state.svelte.js +14 -0
  389. package/dist/ui/ui_fetch.d.ts +1 -7
  390. package/dist/ui/ui_fetch.d.ts.map +1 -1
  391. package/dist/ui/ui_fetch.js +1 -7
  392. package/dist/ui/ui_format.d.ts +2 -14
  393. package/dist/ui/ui_format.d.ts.map +1 -1
  394. package/dist/ui/ui_format.js +2 -14
  395. package/package.json +2 -2
@@ -106,19 +106,32 @@ export declare class Popover {
106
106
  popover_class: string;
107
107
  constructor(params?: PopoverParameters);
108
108
  /**
109
- * Updates the popover configuration.
109
+ * Updates the popover configuration. Swaps `popover_class` on the live
110
+ * content element when supplied and re-syncs the outside-click handler
111
+ * if `disable_outside_click` changed.
112
+ *
113
+ * @mutates `this`
110
114
  */
111
115
  update(params: PopoverParameters): void;
112
116
  /**
113
- * Shows the popover.
117
+ * Shows the popover, registering the outside-click handler and updating
118
+ * `aria-expanded` on the trigger. No-ops when already visible.
119
+ *
120
+ * @mutates `this`
114
121
  */
115
122
  show(): void;
116
123
  /**
117
- * Hides the popover.
124
+ * Hides the popover, removing the outside-click handler. No-ops when
125
+ * already hidden.
126
+ *
127
+ * @mutates `this`
118
128
  */
119
129
  hide(): void;
120
130
  /**
121
- * Toggles the popover visibility.
131
+ * Toggles the popover visibility, or sets it to the given value.
132
+ *
133
+ * @param visible - desired visibility (defaults to the inverse of current)
134
+ * @mutates `this`
122
135
  */
123
136
  toggle(visible?: boolean): void;
124
137
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"popover.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/ui/popover.svelte.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAEH,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,QAAQ,CAAC;AAGpC,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAC,KAAK,QAAQ,EAAE,KAAK,SAAS,EAA2B,MAAM,uBAAuB,CAAC;AAS9F;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC,uDAAuD;IACvD,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,yCAAyC;IACzC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wDAAwD;IACxD,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,4CAA4C;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+CAA+C;IAC/C,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;IAClE,uDAAuD;IACvD,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,IAAI,EAAE,WAAW,KAAK,gBAAgB,GAAG;IAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CAAC,CAAC;AAElG;;GAEG;AAEH,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;CAElE;AAED;;GAEG;AACH,qBAAa,OAAO;;IACnB,gDAAgD;IAChD,OAAO,UAAqB;IAE5B,uDAAuD;IACvD,QAAQ,EAAE,QAAQ,CAAwB;IAE1C,yCAAyC;IACzC,KAAK,EAAE,SAAS,CAAwB;IAExC,kCAAkC;IAClC,MAAM,SAAmB;IAEzB,wDAAwD;IACxD,qBAAqB,UAAqB;IAE1C,oCAAoC;IACpC,aAAa,SAAkB;gBAoBnB,MAAM,CAAC,EAAE,iBAAiB;IAiCtC;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAgEvC;;OAEG;IACH,IAAI,IAAI,IAAI;IAWZ;;OAEG;IACH,IAAI,IAAI,IAAI;IAWZ;;OAEG;IACH,MAAM,CAAC,OAAO,UAAgB,GAAG,IAAI;IAQrC;;OAEG;IACH,SAAS,EAAE,UAAU,CAAC,WAAW,CAAC,CAQhC;IAEF;;OAEG;IACH,OAAO,GAAI,SAAS,wBAAwB,KAAG,UAAU,CAAC,WAAW,CAAC,CAsBpE;IAEF;;OAEG;IACH,OAAO,GAAI,SAAS,wBAAwB,KAAG,UAAU,CAAC,WAAW,CAAC,CA2DpE;CACF"}
1
+ {"version":3,"file":"popover.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/ui/popover.svelte.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAEH,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,QAAQ,CAAC;AAGpC,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAC,KAAK,QAAQ,EAAE,KAAK,SAAS,EAA2B,MAAM,uBAAuB,CAAC;AAS9F;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC,uDAAuD;IACvD,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,yCAAyC;IACzC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wDAAwD;IACxD,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,4CAA4C;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+CAA+C;IAC/C,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;IAClE,uDAAuD;IACvD,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,IAAI,EAAE,WAAW,KAAK,gBAAgB,GAAG;IAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CAAC,CAAC;AAElG;;GAEG;AAEH,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;CAElE;AAED;;GAEG;AACH,qBAAa,OAAO;;IACnB,gDAAgD;IAChD,OAAO,UAAqB;IAE5B,uDAAuD;IACvD,QAAQ,EAAE,QAAQ,CAAwB;IAE1C,yCAAyC;IACzC,KAAK,EAAE,SAAS,CAAwB;IAExC,kCAAkC;IAClC,MAAM,SAAmB;IAEzB,wDAAwD;IACxD,qBAAqB,UAAqB;IAE1C,oCAAoC;IACpC,aAAa,SAAkB;gBAoBnB,MAAM,CAAC,EAAE,iBAAiB;IAiCtC;;;;;;OAMG;IACH,MAAM,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAgEvC;;;;;OAKG;IACH,IAAI,IAAI,IAAI;IAWZ;;;;;OAKG;IACH,IAAI,IAAI,IAAI;IAWZ;;;;;OAKG;IACH,MAAM,CAAC,OAAO,UAAgB,GAAG,IAAI;IAQrC;;OAEG;IACH,SAAS,EAAE,UAAU,CAAC,WAAW,CAAC,CAQhC;IAEF;;OAEG;IACH,OAAO,GAAI,SAAS,wBAAwB,KAAG,UAAU,CAAC,WAAW,CAAC,CAsBpE;IAEF;;OAEG;IACH,OAAO,GAAI,SAAS,wBAAwB,KAAG,UAAU,CAAC,WAAW,CAAC,CA2DpE;CACF"}
@@ -107,7 +107,11 @@ export class Popover {
107
107
  }
108
108
  }
109
109
  /**
110
- * Updates the popover configuration.
110
+ * Updates the popover configuration. Swaps `popover_class` on the live
111
+ * content element when supplied and re-syncs the outside-click handler
112
+ * if `disable_outside_click` changed.
113
+ *
114
+ * @mutates `this`
111
115
  */
112
116
  update(params) {
113
117
  // Store the old class before updating
@@ -166,7 +170,10 @@ export class Popover {
166
170
  }
167
171
  }
168
172
  /**
169
- * Shows the popover.
173
+ * Shows the popover, registering the outside-click handler and updating
174
+ * `aria-expanded` on the trigger. No-ops when already visible.
175
+ *
176
+ * @mutates `this`
170
177
  */
171
178
  show() {
172
179
  if (this.visible)
@@ -178,7 +185,10 @@ export class Popover {
178
185
  this.#onshow();
179
186
  }
180
187
  /**
181
- * Hides the popover.
188
+ * Hides the popover, removing the outside-click handler. No-ops when
189
+ * already hidden.
190
+ *
191
+ * @mutates `this`
182
192
  */
183
193
  hide() {
184
194
  if (!this.visible)
@@ -190,7 +200,10 @@ export class Popover {
190
200
  this.#onhide();
191
201
  }
192
202
  /**
193
- * Toggles the popover visibility.
203
+ * Toggles the popover visibility, or sets it to the given value.
204
+ *
205
+ * @param visible - desired visibility (defaults to the inverse of current)
206
+ * @mutates `this`
194
207
  */
195
208
  toggle(visible = !this.visible) {
196
209
  if (visible) {
@@ -18,10 +18,8 @@ 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
22
+ * @throws UnreachableError if `position` is not a known `Position` value
25
23
  */
26
24
  export declare const generate_position_styles: (position?: Position, align?: Alignment, offset?: string) => Record<string, string>;
27
25
  //# sourceMappingURL=position_helpers.d.ts.map
@@ -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;;;;;;;GAOG;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,8 @@ 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
11
+ * @throws UnreachableError if `position` is not a known `Position` value
14
12
  */
15
13
  export const generate_position_styles = (position = 'center', align = 'center', offset = '0') => {
16
14
  const styles = {
@@ -1,16 +1,26 @@
1
+ /**
2
+ * Reactive sidebar visibility state. Provisioned by `AppShell.svelte` via
3
+ * `sidebar_state_context`; consumers read `show_sidebar` and call
4
+ * `toggle_sidebar` / `activate`.
5
+ *
6
+ * @module
7
+ */
8
+ /**
9
+ * Svelte context carrying a reactive `SidebarState` accessor. Set by
10
+ * `AppShell.svelte` (creates a fresh `SidebarState` if not supplied);
11
+ * consumers call `sidebar_state_context.get()` to read or toggle visibility.
12
+ */
1
13
  export declare const sidebar_state_context: {
2
14
  get: (error_message?: string) => () => SidebarState;
3
15
  get_maybe: () => (() => SidebarState) | undefined;
4
16
  set: (value: () => SidebarState) => () => SidebarState;
5
17
  };
6
- /**
7
- * Options for configuring a `SidebarState`.
8
- *
9
- * @param enabled Optional reactive getter that controls whether the sidebar is enabled.
10
- * When provided, overrides the internal `enabled` state.
11
- * `show_sidebar` automatically returns `false` when `enabled` is `false`.
12
- */
13
18
  export interface SidebarStateOptions {
19
+ /**
20
+ * Reactive getter that controls whether the sidebar is enabled. When
21
+ * supplied, overrides the internal `enabled` state — `show_sidebar`
22
+ * auto-returns `false` while the getter returns `false`.
23
+ */
14
24
  enabled?: () => boolean;
15
25
  }
16
26
  export declare class SidebarState {
@@ -22,8 +32,10 @@ export declare class SidebarState {
22
32
  constructor(options?: SidebarStateOptions);
23
33
  toggle_sidebar(value?: boolean): void;
24
34
  /**
25
- * Activates the sidebar, showing it and enabling the toggle.
26
- * Returns a cleanup function that deactivates.
35
+ * Show the sidebar and enable the toggle. The returned disposer hides
36
+ * and disables on cleanup pair with `$effect` for scoped activation.
37
+ *
38
+ * @mutates `this` - sets `enabled` and `show_sidebar`; disposer clears both
27
39
  */
28
40
  activate(): () => void;
29
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":"AAEA,eAAO,MAAM,qBAAqB;2CAAwB,YAAY;4BAAZ,YAAY;uBAAZ,YAAY,WAAZ,YAAY;CAAG,CAAC;AAE1E;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IACnC,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;;;OAGG;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"}
@@ -1,4 +1,16 @@
1
+ /**
2
+ * Reactive sidebar visibility state. Provisioned by `AppShell.svelte` via
3
+ * `sidebar_state_context`; consumers read `show_sidebar` and call
4
+ * `toggle_sidebar` / `activate`.
5
+ *
6
+ * @module
7
+ */
1
8
  import { create_context } from '@fuzdev/fuz_ui/context_helpers.js';
9
+ /**
10
+ * Svelte context carrying a reactive `SidebarState` accessor. Set by
11
+ * `AppShell.svelte` (creates a fresh `SidebarState` if not supplied);
12
+ * consumers call `sidebar_state_context.get()` to read or toggle visibility.
13
+ */
2
14
  export const sidebar_state_context = create_context();
3
15
  export class SidebarState {
4
16
  #get_enabled;
@@ -25,8 +37,10 @@ export class SidebarState {
25
37
  this.show_sidebar = value;
26
38
  }
27
39
  /**
28
- * Activates the sidebar, showing it and enabling the toggle.
29
- * Returns a cleanup function that deactivates.
40
+ * Show the sidebar and enable the toggle. The returned disposer hides
41
+ * and disables on cleanup pair with `$effect` for scoped activation.
42
+ *
43
+ * @mutates `this` - sets `enabled` and `show_sidebar`; disposer clears both
30
44
  */
31
45
  activate() {
32
46
  this.enabled = true;
@@ -55,9 +55,23 @@ export declare class TableState extends Loadable {
55
55
  readonly showing_end: number;
56
56
  readonly has_prev: boolean;
57
57
  readonly has_next: boolean;
58
+ /**
59
+ * Fetch a page of rows for `table_name` from `GET /api/db/tables/{table_name}`.
60
+ * `limit` is clamped to `[1, TABLE_LIMIT_MAX]`.
61
+ *
62
+ * @mutates `this`
63
+ */
58
64
  fetch(table_name: string, offset?: number, limit?: number): Promise<void>;
59
65
  go_prev(): void;
60
66
  go_next(): void;
67
+ /**
68
+ * Delete a row by its primary key via `DELETE /api/db/tables/{table_name}/rows/{pk}`.
69
+ * Optimistically drops it from `rows` and decrements `total` on success;
70
+ * surfaces server errors on `delete_error`.
71
+ *
72
+ * @returns `true` when the row was removed; `false` on missing primary key or server error
73
+ * @mutates `this`
74
+ */
61
75
  delete_row(row: Record<string, unknown>): Promise<boolean>;
62
76
  }
63
77
  //# sourceMappingURL=table_state.svelte.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"table_state.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/ui/table_state.svelte.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEH,OAAO,EAAC,QAAQ,EAAC,MAAM,sBAAsB,CAAC;AAG9C,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAErD,mEAAmE;AACnE,eAAO,MAAM,eAAe,OAAO,CAAC;AAEpC,qBAAa,UAAW,SAAQ,QAAQ;IACvC,UAAU,EAAE,MAAM,CAAkB;IACpC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAkB;IAC5C,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAkB;IACtD,KAAK,SAAiB;IACtB,MAAM,SAAiB;IACvB,KAAK,SAAmB;IACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAoB;IAC9C,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAoB;IAC3C,YAAY,EAAE,MAAM,GAAG,IAAI,CAAoB;IAG/C,QAAQ,CAAC,aAAa,SAAoD;IAC1E,QAAQ,CAAC,WAAW,SAAkE;IACtF,QAAQ,CAAC,QAAQ,UAA6B;IAC9C,QAAQ,CAAC,QAAQ,UAAmD;IAE9D,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,SAAI,EAAE,KAAK,SAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBvE,OAAO,IAAI,IAAI;IAIf,OAAO,IAAI,IAAI;IAIT,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;CAoChE"}
1
+ {"version":3,"file":"table_state.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/ui/table_state.svelte.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEH,OAAO,EAAC,QAAQ,EAAC,MAAM,sBAAsB,CAAC;AAG9C,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAErD,mEAAmE;AACnE,eAAO,MAAM,eAAe,OAAO,CAAC;AAEpC,qBAAa,UAAW,SAAQ,QAAQ;IACvC,UAAU,EAAE,MAAM,CAAkB;IACpC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAkB;IAC5C,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAkB;IACtD,KAAK,SAAiB;IACtB,MAAM,SAAiB;IACvB,KAAK,SAAmB;IACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAoB;IAC9C,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAoB;IAC3C,YAAY,EAAE,MAAM,GAAG,IAAI,CAAoB;IAG/C,QAAQ,CAAC,aAAa,SAAoD;IAC1E,QAAQ,CAAC,WAAW,SAAkE;IACtF,QAAQ,CAAC,QAAQ,UAA6B;IAC9C,QAAQ,CAAC,QAAQ,UAAmD;IAEpE;;;;;OAKG;IACG,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,SAAI,EAAE,KAAK,SAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBvE,OAAO,IAAI,IAAI;IAIf,OAAO,IAAI,IAAI;IAIf;;;;;;;OAOG;IACG,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;CAoChE"}
@@ -57,6 +57,12 @@ export class TableState extends Loadable {
57
57
  showing_end = $derived(Math.min(this.offset + this.rows.length, this.total));
58
58
  has_prev = $derived(this.offset > 0);
59
59
  has_next = $derived(this.offset + this.limit < this.total);
60
+ /**
61
+ * Fetch a page of rows for `table_name` from `GET /api/db/tables/{table_name}`.
62
+ * `limit` is clamped to `[1, TABLE_LIMIT_MAX]`.
63
+ *
64
+ * @mutates `this`
65
+ */
60
66
  async fetch(table_name, offset = 0, limit = 100) {
61
67
  this.table_name = table_name;
62
68
  this.offset = offset;
@@ -79,6 +85,14 @@ export class TableState extends Loadable {
79
85
  go_next() {
80
86
  this.offset += this.limit;
81
87
  }
88
+ /**
89
+ * Delete a row by its primary key via `DELETE /api/db/tables/{table_name}/rows/{pk}`.
90
+ * Optimistically drops it from `rows` and decrements `total` on success;
91
+ * surfaces server errors on `delete_error`.
92
+ *
93
+ * @returns `true` when the row was removed; `false` on missing primary key or server error
94
+ * @mutates `this`
95
+ */
82
96
  async delete_row(row) {
83
97
  if (!this.primary_key)
84
98
  return false;
@@ -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.51.0",
3
+ "version": "0.53.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",