HotelSync
9e1eff30a6
fix: persist custom roles immediately, show them in user modal
...
- createRole() now calls api.rolePermissions.save() on creation so the
role survives a page refresh (was only in local state before)
- UserModal now renders custom roles from savedPermissions context
alongside the system role buttons
- mapRole() passes custom_* role keys through unchanged
- handleSave falls back to u.role for custom roles (no backendRoleMap entry)
- Table badge handles missing ROLE_META entry for custom roles
- DB migration 082: removes users.role CHECK constraint so custom role
keys can be stored in the users table
- Backend POST/PATCH: allow custom_* roles through role allowlist checks
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-20 19:57:59 +03:00
..
2026-03-12 12:09:53 +03:00
2026-03-17 13:33:27 +03:00
2026-03-18 18:18:41 +03:00
2026-03-12 12:09:53 +03:00
2026-03-17 13:49:30 +03:00
2026-03-17 14:21:45 +03:00
2026-03-17 17:35:16 +03:00
2026-03-17 18:43:05 +03:00
2026-03-18 18:57:10 +03:00
2026-03-19 12:55:39 +03:00
2026-03-19 14:03:04 +03:00
2026-03-19 20:53:07 +03:00
2026-03-19 21:15:37 +03:00
2026-03-20 17:19:27 +03:00
2026-03-20 17:28:52 +03:00
2026-03-20 17:47:12 +03:00
2026-03-21 15:46:01 +03:00
2026-03-21 19:24:36 +03:00
2026-03-21 23:02:24 +03:00
2026-03-23 11:42:29 +03:00
2026-03-23 12:53:44 +03:00
2026-03-23 14:49:19 +03:00
2026-03-23 15:05:12 +03:00
2026-03-23 16:14:45 +03:00
2026-03-23 22:27:18 +03:00
2026-03-23 23:02:30 +03:00
2026-03-23 23:28:42 +03:00
2026-03-24 10:38:51 +03:00
2026-03-24 11:07:28 +03:00
2026-03-24 11:24:49 +03:00
2026-03-24 11:45:24 +03:00
2026-03-24 11:51:42 +03:00
2026-03-24 12:29:32 +03:00
2026-03-24 20:20:26 +03:00
2026-03-26 00:05:14 +03:00
2026-03-26 00:29:13 +03:00
2026-03-26 00:39:48 +03:00
2026-03-26 01:10:48 +03:00
2026-03-26 01:18:02 +03:00
2026-03-26 10:15:29 +03:00
2026-03-26 10:15:29 +03:00
2026-03-26 11:12:47 +03:00
2026-03-26 18:27:24 +03:00
2026-03-27 12:41:31 +03:00
2026-03-27 13:05:23 +03:00
2026-03-27 13:53:55 +03:00
2026-03-27 14:06:44 +03:00
2026-03-29 12:08:51 +03:00
2026-03-31 11:19:54 +03:00
2026-03-31 15:46:17 +03:00
2026-03-31 16:29:30 +03:00
2026-03-31 21:02:56 +03:00
2026-03-31 23:40:29 +03:00
2026-04-01 23:08:24 +03:00
2026-04-01 23:48:37 +03:00
2026-04-02 11:21:37 +03:00
2026-04-02 11:46:30 +03:00
2026-04-02 11:59:38 +03:00
2026-04-02 19:24:53 +03:00
2026-04-02 19:24:53 +03:00
2026-04-02 19:24:53 +03:00
2026-04-06 11:47:51 +03:00
2026-04-02 23:09:03 +03:00
2026-04-06 12:55:42 +03:00
2026-04-06 12:55:42 +03:00
2026-04-06 15:36:40 +03:00
2026-04-06 16:12:38 +03:00
2026-04-06 20:37:06 +03:00
2026-04-06 20:47:52 +03:00
2026-04-07 20:30:26 +03:00
2026-04-08 01:31:10 +03:00
2026-04-08 02:28:17 +03:00
2026-04-08 02:55:24 +03:00
2026-04-14 11:25:40 +03:00
2026-04-14 12:03:35 +03:00
2026-04-14 12:13:07 +03:00
2026-04-14 12:31:17 +03:00
2026-04-14 13:16:35 +03:00
2026-04-14 17:36:04 +03:00
2026-04-15 11:32:52 +03:00
2026-04-15 12:14:03 +03:00
2026-04-17 11:47:18 +03:00
2026-04-17 12:16:15 +03:00
2026-04-20 10:50:22 +03:00
2026-04-20 19:57:59 +03:00