diff --git a/odoo-stubs/fields.pyi b/odoo-stubs/fields.pyi index ef8b524..669eb13 100644 --- a/odoo-stubs/fields.pyi +++ b/odoo-stubs/fields.pyi @@ -23,11 +23,6 @@ from .tools import date_utils, float_utils _FieldT = TypeVar("_FieldT", bound=Field) _FieldValueT = TypeVar("_FieldValueT") _ModelT = TypeVar("_ModelT", bound=BaseModel) -_Selection = list[tuple[str, str]] -_SelectionRaw = _Selection | Callable[..., _Selection] | str -_Domain = list -_DomainRaw = _Domain | Callable[..., _Domain] -_CommandList = list[tuple[BaseModel, list]] _SeqIntT = TypeVar("_SeqIntT", bound=Sequence[int]) DATE_LENGTH: int @@ -342,11 +337,11 @@ class Image(Binary): class Selection(Field[str]): type: str column_type: tuple[str, str] - selection: _SelectionRaw + selection: list | Callable | str validate: bool ondelete: dict[str, Any] | None def __init__( - self, selection: _SelectionRaw = ..., string: str = ..., **kwargs + self, selection: list | Callable | str = ..., string: str = ..., **kwargs ) -> None: ... def setup_nonrelated(self, model: BaseModel) -> None: ... def setup_related(self, model: BaseModel): ... @@ -376,12 +371,12 @@ class Reference(Selection): class _Relational(Field[BaseModel]): relational: bool - domain: _DomainRaw + domain: list | Callable context: dict check_company: bool comodel_name: str def setup_nonrelated(self, model: BaseModel) -> None: ... - def get_domain_list(self, model: BaseModel) -> _Domain: ... + def get_domain_list(self, model: BaseModel) -> list: ... class Many2one(_Relational): type: str @@ -500,7 +495,7 @@ class _RelationalMulti(_Relational): def get_depends(self, model: BaseModel): ... def create(self, record_values: list[tuple[BaseModel, Any]]) -> None: ... def write(self, records: BaseModel, value): ... - def write_batch(self, records_commands_list: _CommandList, create: bool = ...): ... + def write_batch(self, records_commands_list: list, create: bool = ...): ... class One2many(_RelationalMulti): type: str @@ -518,8 +513,8 @@ class One2many(_RelationalMulti): def update_db(self, model: BaseModel, columns) -> None: ... def get_domain_list(self, records: BaseModel): ... def read(self, records: BaseModel): ... - def write_real(self, records_commands_list: _CommandList, create: bool = ...): ... - def write_new(self, records_commands_list: _CommandList): ... + def write_real(self, records_commands_list: list, create: bool = ...): ... + def write_new(self, records_commands_list: list): ... class Many2many(_RelationalMulti): type: str @@ -543,8 +538,8 @@ class Many2many(_RelationalMulti): @property def groupable(self) -> bool: ... def read(self, records: BaseModel) -> None: ... - def write_real(self, records_commands_list: _CommandList, create: bool = ...): ... - def write_new(self, records_commands_list: _CommandList): ... + def write_real(self, records_commands_list: list, create: bool = ...): ... + def write_new(self, records_commands_list: list): ... class Id(Field[int]): type: str diff --git a/odoo-stubs/models.pyi b/odoo-stubs/models.pyi index a659d6a..e21b40b 100644 --- a/odoo-stubs/models.pyi +++ b/odoo-stubs/models.pyi @@ -29,7 +29,6 @@ from .tools.query import Query _T = TypeVar("_T") _ModelT = TypeVar("_ModelT", bound=BaseModel) _Model2T = TypeVar("_Model2T", bound=BaseModel) -_Domain = list regex_order: Pattern[str] regex_object_name: Pattern[str] @@ -174,11 +173,11 @@ class BaseModel(metaclass=MetaModel): def fields_get_keys(self) -> list[str]: ... def _rec_name_fallback(self) -> str: ... def user_has_groups(self, groups: str) -> bool: ... - def search_count(self, domain: _Domain, limit: int | None = ...) -> int: ... + def search_count(self, domain: list, limit: int | None = ...) -> int: ... @overload def search( self: _ModelT, - domain: _Domain, + domain: list, offset: int = ..., limit: int | None = ..., order: str | None = ..., @@ -187,7 +186,7 @@ class BaseModel(metaclass=MetaModel): @overload def search( self, - domain: _Domain, + domain: list, offset: int = ..., limit: int | None = ..., order: str | None = ..., @@ -199,14 +198,14 @@ class BaseModel(metaclass=MetaModel): def name_search( self, name: str = ..., - args: _Domain | None = ..., + args: list | None = ..., operator: str = ..., limit: int = ..., ) -> list[tuple[int, str]]: ... def _name_search( self, name: str = ..., - args: _Domain | None = ..., + args: list | None = ..., operator: str = ..., limit: int = ..., name_get_uid: int | None = ..., @@ -215,11 +214,11 @@ class BaseModel(metaclass=MetaModel): @classmethod def clear_caches(cls) -> None: ... def _read_group_expand_full( - self, groups: _ModelT, domain: _Domain | None, order: str | None + self, groups: _ModelT, domain: list | None, order: str | None ) -> _ModelT: ... def _read_group_fill_results( self, - domain: _Domain, + domain: list, groupby: str, remaining_groupbys: list[str], aggregated_fields: list[str], @@ -249,11 +248,11 @@ class BaseModel(metaclass=MetaModel): self, key, value, groupby_dict: dict[str, dict[str, Any]] ) -> Any: ... def _read_group_format_result( - self, data: dict, annotated_groupbys: list[dict], groupby: list, domain: _Domain + self, data: dict, annotated_groupbys: list[dict], groupby: list, domain: list ) -> dict: ... def _read_group( self, - domain: _Domain, + domain: list, fields: list[str], groupby: str | list[str], offset: int = ..., @@ -263,7 +262,7 @@ class BaseModel(metaclass=MetaModel): ) -> list[dict[str, Any]]: ... def read_group( self, - domain: _Domain, + domain: list, fields: list[str], groupby: str | list[str], offset: int = ..., @@ -273,7 +272,7 @@ class BaseModel(metaclass=MetaModel): ) -> list[dict[str, Any]]: ... def _read_group_raw( self, - domain: _Domain, + domain: list, fields: list[str], groupby: str | list[str], offset: int = ..., @@ -355,7 +354,7 @@ class BaseModel(metaclass=MetaModel): def _load_records_write(self, values: dict[str, Any]) -> None: ... def _load_records_create(self, values: list[dict[str, Any]]): ... def _load_records(self, data_list: list[dict], update: bool = ...) -> BaseModel: ... - def _where_calc(self, domain: _Domain, active_test: bool = ...) -> Query: ... + def _where_calc(self, domain: list, active_test: bool = ...) -> Query: ... def _check_qorder(self, word: str) -> bool: ... def _apply_ir_rules(self, query: Query, mode: str = ...) -> None: ... def _generate_m2o_order_by( @@ -377,14 +376,14 @@ class BaseModel(metaclass=MetaModel): def _generate_order_by(self, order_spec: str | None, query: Query) -> str: ... def _flush_search( self, - domain: _Domain, + domain: list, fields: Sequence[str] | None = ..., order: str | None = ..., seen: set | None = ..., ) -> None: ... def _search( self: _ModelT, - domain: _Domain, + domain: list, offset: int = ..., limit: int | None = ..., order: str | None = ..., @@ -408,7 +407,7 @@ class BaseModel(metaclass=MetaModel): def is_transient(cls) -> bool: ... def search_read( self, - domain: _Domain | None = ..., + domain: list | None = ..., fields: list[str] | None = ..., offset: int = ..., limit: int | None = ..., @@ -458,7 +457,7 @@ class BaseModel(metaclass=MetaModel): def filtered(self: _ModelT, func: Callable[[_ModelT], bool]) -> _ModelT: ... @overload def filtered(self: _ModelT, func: str) -> _ModelT: ... - def filtered_domain(self: _ModelT, domain: _Domain) -> _ModelT: ... + def filtered_domain(self: _ModelT, domain: list) -> _ModelT: ... @overload def sorted( self: _ModelT, key: Callable[[_ModelT], Any] = ..., reverse: bool = ... diff --git a/odoo-stubs/osv/expression.pyi b/odoo-stubs/osv/expression.pyi index 04390ff..6761b69 100644 --- a/odoo-stubs/osv/expression.pyi +++ b/odoo-stubs/osv/expression.pyi @@ -5,8 +5,6 @@ from ..models import BaseModel from ..sql_db import Cursor from ..tools.query import Query -_Domain = list - NOT_OPERATOR: str OR_OPERATOR: str AND_OPERATOR: str @@ -20,12 +18,12 @@ FALSE_LEAF: tuple TRUE_DOMAIN: list[tuple] FALSE_DOMAIN: list[tuple] -def normalize_domain(domain: _Domain) -> _Domain: ... -def is_false(model, domain: _Domain) -> bool: ... -def combine(operator: str, unit, zero, domains: list[_Domain]) -> _Domain: ... -def AND(domains: list[_Domain]) -> _Domain: ... -def OR(domains: list[_Domain]) -> _Domain: ... -def distribute_not(domain: _Domain) -> _Domain: ... +def normalize_domain(domain: list) -> list: ... +def is_false(model, domain: list) -> bool: ... +def combine(operator: str, unit, zero, domains: list[list]) -> list: ... +def AND(domains: list[list]) -> list: ... +def OR(domains: list[list]) -> list: ... +def distribute_not(domain: list) -> list: ... def normalize_leaf(element): ... def is_operator(element) -> bool: ... def is_leaf(element, internal: bool = ...) -> bool: ... @@ -36,12 +34,12 @@ def get_unaccent_wrapper(cr: Cursor) -> Callable[[Any], str]: ... class expression: root_model: BaseModel root_alias: str | None - expression: _Domain + expression: list query: Query | None result: tuple[str, list] def __init__( self, - domain: _Domain, + domain: list, model: BaseModel, alias: str | None = ..., query: Query | None = ...,