Files
ever-gauzy/apps
joel kalema a73de1d121 Feat/add employee dialog polish (#10336)
* feat(i18n): add strings for the add-employee dialog and form sections

* feat(user-forms): upload the profile photo through the shared avatar uploader

* feat(user-forms): group basic info fields into profile, account and employment sections

* feat(employees): track queued employees and the current entry in the add dialog

* feat(employees): redesign the add-employee dialog with labelled steps, review list and fixed footer

* style(employees): style the add-employee dialog header, steps, list and footer

* feat(tags): draw the picker checkbox and show selected tags as tinted labels

* style(tags): compact rows for the tag picker dropdown panel

* fix(employees): vertically centre the Show Deleted toggle in the header

* fix(employees): give Status and Screen Capture columns room from Name and Email

* fix(employees): address review feedback on the add-employee dialog

- mark template-only members protected
- translate the step bar's aria-label
- clear loading in a finally block so a failed create can be retried
- fit the step bar on narrow dialogs by naming only the current step

* fix(employees): resolve SonarCloud reliability issues in touched files

- mark fire-and-forget promises with void (typescript:S9383)
- drop async from delete(), which awaits nothing (typescript:S7503)

* fix(user-forms): hide SUPER_ADMIN from the role picker once the permission check resolves

excludeRoles() resolves after the role field may already have rendered its
options, and it mutated the excludes array in place, so the field kept
offering SUPER_ADMIN to users without that role.

- basic info form: assign a new excludes array instead of pushing
- role field: cache the fetched roles and re-filter them whenever excludes
  changes, clearing a selection that is no longer allowed

* fix(user-forms): keep a preselected role until the role list has loaded

applyExcludes() also runs from the excludes setter, which can fire before
getAll() returns. With no roles loaded every preselected role looked
disallowed and was cleared. Only check the selection once the roles have
loaded; renderRoles() re-runs the check at that point.
2026-09-29 20:06:44 +02:00
..
…
…
…