from odoo import fields, models


class XenoHrModule(models.Model):
    _name = "xeno.hr.module"
    _description = (
        "Self-service module unit, mirrors XENHR's admin-managed HR "
        "Modules list (System Access page). Employees are granted access "
        "to a module via an Employee Group (hr.employee.category) or "
        "individually (xeno.employee.module.access); inactive modules "
        "drop out of both access screens without deleting existing grants."
    )
    _order = "sequence, name"

    name = fields.Char(required=True)
    active = fields.Boolean(default=True)
    sequence = fields.Integer(default=10)

    _name_uniq = models.Constraint(
        "unique(name)", "A module with this name already exists.")
