public static function values($withEmpty = false) {
        $list = [];

        $values = EnumHelper::values(static::typeName());
        foreach ($values as $key) {
            $value = Inflector::humanize($key, true);
            $list[$key] = static::t($value);
        }

        return ($withEmpty ? ['' => static::emptyValue()] : []) + $list;
    }