Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | import { useMemo } from 'react'; import { useIntl } from 'react-intl'; import { type SelectOption } from '@allshares/studio-design-system'; import { UserStatus } from '@amalia/tenants/users/types'; import { UserStatusLabels } from '../../../status/status.messages'; const statusOrder = [UserStatus.INACTIVE, UserStatus.INVITED, UserStatus.ACTIVE, UserStatus.DEACTIVATED]; export type StatusOption = SelectOption<UserStatus>; export const useStatusOptions = (): StatusOption[] => { const { formatMessage } = useIntl(); return useMemo( () => Object.values(UserStatus) .toSorted((a, b) => statusOrder.indexOf(a) - statusOrder.indexOf(b)) .map((status) => ({ value: status, label: formatMessage(UserStatusLabels[status]), })), [formatMessage], ); }; |