miro_api.models.width_only_adjustable_geometry

Miro Developer Platform

### Miro Developer Platform concepts - New to the Miro Developer Platform? Interested in learning more about platform concepts?? Read our introduction page and familiarize yourself with the Miro Developer Platform capabilities in a few minutes. ### Getting started with the Miro REST API - Quickstart (video): try the REST API in less than 3 minutes. - Quickstart (article): get started and try the REST API in less than 3 minutes. ### Miro REST API tutorials Check out our how-to articles with step-by-step instructions and code examples so you can: - Get started with OAuth 2.0 and Miro ### Miro App Examples Clone our Miro App Examples repository to get inspiration, customize, and explore apps built on top of Miro's Developer Platform 2.0.

The version of the OpenAPI document: v2.0 Generated by OpenAPI Generator (https://openapi-generator.tech)

Do not edit the class manually.

  1# coding: utf-8
  2
  3"""
  4Miro Developer Platform
  5
  6<img src=\"https://content.pstmn.io/47449ea6-0ef7-4af2-bac1-e58a70e61c58/aW1hZ2UucG5n\" width=\"1685\" height=\"593\">  ### Miro Developer Platform concepts  - New to the Miro Developer Platform? Interested in learning more about platform concepts?? [Read our introduction page](https://beta.developers.miro.com/docs/introduction) and familiarize yourself with the Miro Developer Platform capabilities in a few minutes.   ### Getting started with the Miro REST API  - [Quickstart (video):](https://beta.developers.miro.com/docs/try-out-the-rest-api-in-less-than-3-minutes) try the REST API in less than 3 minutes. - [Quickstart (article):](https://beta.developers.miro.com/docs/build-your-first-hello-world-app-1) get started and try the REST API in less than 3 minutes.   ### Miro REST API tutorials  Check out our how-to articles with step-by-step instructions and code examples so you can:  - [Get started with OAuth 2.0 and Miro](https://beta.developers.miro.com/docs/getting-started-with-oauth)   ### Miro App Examples  Clone our [Miro App Examples repository](https://github.com/miroapp/app-examples) to get inspiration, customize, and explore apps built on top of Miro's Developer Platform 2.0.
  7
  8The version of the OpenAPI document: v2.0
  9Generated by OpenAPI Generator (https://openapi-generator.tech)
 10
 11Do not edit the class manually.
 12"""  # noqa: E501
 13
 14
 15from __future__ import annotations
 16import pprint
 17import re  # noqa: F401
 18import json
 19
 20from pydantic import BaseModel, Field, StrictFloat, StrictInt
 21from typing import Any, ClassVar, Dict, List, Optional, Union
 22from typing import Optional, Set
 23from typing_extensions import Self
 24
 25
 26class WidthOnlyAdjustableGeometry(BaseModel):
 27    """
 28    Contains geometrical information about the item, such as its width or rotation. You can only specify the width of the text item as the height is dynamically updated based on the content.
 29    """  # noqa: E501
 30
 31    rotation: Optional[Union[StrictFloat, StrictInt]] = Field(
 32        default=None,
 33        description="Rotation angle of an item, in degrees, relative to the board. You can rotate items clockwise (right) and counterclockwise (left) by specifying positive and negative values, respectively.",
 34    )
 35    width: Optional[Union[StrictFloat, StrictInt]] = Field(
 36        default=None,
 37        description="Width of the item, in pixels. The minimum `width` of a `text` widget is relative to the font size of the `text` widget. The width must be at least 1.7 times wider than the font size. For example, if the font size of the `text` item is `14`, the minimum `width` is `24`.",
 38    )
 39    additional_properties: Dict[str, Any] = {}
 40    __properties: ClassVar[List[str]] = ["rotation", "width"]
 41
 42    model_config = {
 43        "populate_by_name": True,
 44        "validate_assignment": True,
 45        "protected_namespaces": (),
 46    }
 47
 48    def to_str(self) -> str:
 49        """Returns the string representation of the model using alias"""
 50        return pprint.pformat(self.model_dump(by_alias=True))
 51
 52    def to_json(self) -> str:
 53        """Returns the JSON representation of the model using alias"""
 54        # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
 55        return json.dumps(self.to_dict())
 56
 57    @classmethod
 58    def from_json(cls, json_str: str) -> Optional[Self]:
 59        """Create an instance of WidthOnlyAdjustableGeometry from a JSON string"""
 60        return cls.from_dict(json.loads(json_str))
 61
 62    def to_dict(self) -> Dict[str, Any]:
 63        """Return the dictionary representation of the model using alias.
 64
 65        This has the following differences from calling pydantic's
 66        `self.model_dump(by_alias=True)`:
 67
 68        * `None` is only added to the output dict for nullable fields that
 69          were set at model initialization. Other fields with value `None`
 70          are ignored.
 71        * Fields in `self.additional_properties` are added to the output dict.
 72        """
 73        excluded_fields: Set[str] = set(
 74            [
 75                "additional_properties",
 76            ]
 77        )
 78
 79        _dict = self.model_dump(
 80            by_alias=True,
 81            exclude=excluded_fields,
 82            exclude_none=True,
 83        )
 84        # puts key-value pairs in additional_properties in the top level
 85        if self.additional_properties is not None:
 86            for _key, _value in self.additional_properties.items():
 87                _dict[_key] = _value
 88
 89        return _dict
 90
 91    @classmethod
 92    def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
 93        """Create an instance of WidthOnlyAdjustableGeometry from a dict"""
 94        if obj is None:
 95            return None
 96
 97        if not isinstance(obj, dict):
 98            return cls.model_validate(obj)
 99
100        _obj = cls.model_validate({"rotation": obj.get("rotation"), "width": obj.get("width")})
101        # store additional fields in additional_properties
102        for _key in obj.keys():
103            if _key not in cls.__properties:
104                _obj.additional_properties[_key] = obj.get(_key)
105
106        return _obj
class WidthOnlyAdjustableGeometry(pydantic.main.BaseModel):
 27class WidthOnlyAdjustableGeometry(BaseModel):
 28    """
 29    Contains geometrical information about the item, such as its width or rotation. You can only specify the width of the text item as the height is dynamically updated based on the content.
 30    """  # noqa: E501
 31
 32    rotation: Optional[Union[StrictFloat, StrictInt]] = Field(
 33        default=None,
 34        description="Rotation angle of an item, in degrees, relative to the board. You can rotate items clockwise (right) and counterclockwise (left) by specifying positive and negative values, respectively.",
 35    )
 36    width: Optional[Union[StrictFloat, StrictInt]] = Field(
 37        default=None,
 38        description="Width of the item, in pixels. The minimum `width` of a `text` widget is relative to the font size of the `text` widget. The width must be at least 1.7 times wider than the font size. For example, if the font size of the `text` item is `14`, the minimum `width` is `24`.",
 39    )
 40    additional_properties: Dict[str, Any] = {}
 41    __properties: ClassVar[List[str]] = ["rotation", "width"]
 42
 43    model_config = {
 44        "populate_by_name": True,
 45        "validate_assignment": True,
 46        "protected_namespaces": (),
 47    }
 48
 49    def to_str(self) -> str:
 50        """Returns the string representation of the model using alias"""
 51        return pprint.pformat(self.model_dump(by_alias=True))
 52
 53    def to_json(self) -> str:
 54        """Returns the JSON representation of the model using alias"""
 55        # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
 56        return json.dumps(self.to_dict())
 57
 58    @classmethod
 59    def from_json(cls, json_str: str) -> Optional[Self]:
 60        """Create an instance of WidthOnlyAdjustableGeometry from a JSON string"""
 61        return cls.from_dict(json.loads(json_str))
 62
 63    def to_dict(self) -> Dict[str, Any]:
 64        """Return the dictionary representation of the model using alias.
 65
 66        This has the following differences from calling pydantic's
 67        `self.model_dump(by_alias=True)`:
 68
 69        * `None` is only added to the output dict for nullable fields that
 70          were set at model initialization. Other fields with value `None`
 71          are ignored.
 72        * Fields in `self.additional_properties` are added to the output dict.
 73        """
 74        excluded_fields: Set[str] = set(
 75            [
 76                "additional_properties",
 77            ]
 78        )
 79
 80        _dict = self.model_dump(
 81            by_alias=True,
 82            exclude=excluded_fields,
 83            exclude_none=True,
 84        )
 85        # puts key-value pairs in additional_properties in the top level
 86        if self.additional_properties is not None:
 87            for _key, _value in self.additional_properties.items():
 88                _dict[_key] = _value
 89
 90        return _dict
 91
 92    @classmethod
 93    def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
 94        """Create an instance of WidthOnlyAdjustableGeometry from a dict"""
 95        if obj is None:
 96            return None
 97
 98        if not isinstance(obj, dict):
 99            return cls.model_validate(obj)
100
101        _obj = cls.model_validate({"rotation": obj.get("rotation"), "width": obj.get("width")})
102        # store additional fields in additional_properties
103        for _key in obj.keys():
104            if _key not in cls.__properties:
105                _obj.additional_properties[_key] = obj.get(_key)
106
107        return _obj

Contains geometrical information about the item, such as its width or rotation. You can only specify the width of the text item as the height is dynamically updated based on the content.

rotation: Union[Annotated[float, Strict(strict=True)], Annotated[int, Strict(strict=True)], NoneType]
width: Union[Annotated[float, Strict(strict=True)], Annotated[int, Strict(strict=True)], NoneType]
additional_properties: Dict[str, Any]
model_config = {'populate_by_name': True, 'validate_assignment': True, 'protected_namespaces': ()}
def to_str(self) -> str:
49    def to_str(self) -> str:
50        """Returns the string representation of the model using alias"""
51        return pprint.pformat(self.model_dump(by_alias=True))

Returns the string representation of the model using alias

def to_json(self) -> str:
53    def to_json(self) -> str:
54        """Returns the JSON representation of the model using alias"""
55        # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
56        return json.dumps(self.to_dict())

Returns the JSON representation of the model using alias

@classmethod
def from_json(cls, json_str: str) -> Optional[typing_extensions.Self]:
58    @classmethod
59    def from_json(cls, json_str: str) -> Optional[Self]:
60        """Create an instance of WidthOnlyAdjustableGeometry from a JSON string"""
61        return cls.from_dict(json.loads(json_str))

Create an instance of WidthOnlyAdjustableGeometry from a JSON string

def to_dict(self) -> Dict[str, Any]:
63    def to_dict(self) -> Dict[str, Any]:
64        """Return the dictionary representation of the model using alias.
65
66        This has the following differences from calling pydantic's
67        `self.model_dump(by_alias=True)`:
68
69        * `None` is only added to the output dict for nullable fields that
70          were set at model initialization. Other fields with value `None`
71          are ignored.
72        * Fields in `self.additional_properties` are added to the output dict.
73        """
74        excluded_fields: Set[str] = set(
75            [
76                "additional_properties",
77            ]
78        )
79
80        _dict = self.model_dump(
81            by_alias=True,
82            exclude=excluded_fields,
83            exclude_none=True,
84        )
85        # puts key-value pairs in additional_properties in the top level
86        if self.additional_properties is not None:
87            for _key, _value in self.additional_properties.items():
88                _dict[_key] = _value
89
90        return _dict

Return the dictionary representation of the model using alias.

This has the following differences from calling pydantic's self.model_dump(by_alias=True):

  • None is only added to the output dict for nullable fields that were set at model initialization. Other fields with value None are ignored.
  • Fields in self.additional_properties are added to the output dict.
@classmethod
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[typing_extensions.Self]:
 92    @classmethod
 93    def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
 94        """Create an instance of WidthOnlyAdjustableGeometry from a dict"""
 95        if obj is None:
 96            return None
 97
 98        if not isinstance(obj, dict):
 99            return cls.model_validate(obj)
100
101        _obj = cls.model_validate({"rotation": obj.get("rotation"), "width": obj.get("width")})
102        # store additional fields in additional_properties
103        for _key in obj.keys():
104            if _key not in cls.__properties:
105                _obj.additional_properties[_key] = obj.get(_key)
106
107        return _obj

Create an instance of WidthOnlyAdjustableGeometry from a dict

def model_post_init(self: pydantic.main.BaseModel, __context: Any) -> None:
265def init_private_attributes(self: BaseModel, __context: Any) -> None:
266    """This function is meant to behave like a BaseModel method to initialise private attributes.
267
268    It takes context as an argument since that's what pydantic-core passes when calling it.
269
270    Args:
271        self: The BaseModel instance.
272        __context: The context.
273    """
274    if getattr(self, '__pydantic_private__', None) is None:
275        pydantic_private = {}
276        for name, private_attr in self.__private_attributes__.items():
277            default = private_attr.get_default()
278            if default is not PydanticUndefined:
279                pydantic_private[name] = default
280        object_setattr(self, '__pydantic_private__', pydantic_private)

This function is meant to behave like a BaseModel method to initialise private attributes.

It takes context as an argument since that's what pydantic-core passes when calling it.

Args: self: The BaseModel instance. __context: The context.

model_fields = {'rotation': FieldInfo(annotation=Union[Annotated[float, Strict(strict=True)], Annotated[int, Strict(strict=True)], NoneType], required=False, description='Rotation angle of an item, in degrees, relative to the board. You can rotate items clockwise (right) and counterclockwise (left) by specifying positive and negative values, respectively.'), 'width': FieldInfo(annotation=Union[Annotated[float, Strict(strict=True)], Annotated[int, Strict(strict=True)], NoneType], required=False, description='Width of the item, in pixels. The minimum `width` of a `text` widget is relative to the font size of the `text` widget. The width must be at least 1.7 times wider than the font size. For example, if the font size of the `text` item is `14`, the minimum `width` is `24`.'), 'additional_properties': FieldInfo(annotation=Dict[str, Any], required=False, default={})}
model_computed_fields = {}
Inherited Members
pydantic.main.BaseModel
BaseModel
model_extra
model_fields_set
model_construct
model_copy
model_dump
model_dump_json
model_json_schema
model_parametrized_name
model_rebuild
model_validate
model_validate_json
model_validate_strings
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs