Tag
A label that can be attached to one or more bookmarks. Attributes: id: Unique identifier. name: Display name (must be unique per user). color: Visual colour for UI rendering. description: Optional description of what this tag represents. usage_count: Number of bookmarks currently using this tag.
Attributes
| Attribute | Type | Description |
|---|---|---|
| id | string | Unique identifier. |
| name | string | Display name (must be unique per user). |
| color | [TagColor](tagcolor.md?sid=app_models_tag_tagcolor) = TagColor.GRAY | Visual colour for UI rendering. |
| description | string | Optional description of what this tag represents. |
| usage_count | integer = 0 | Number of bookmarks currently using this tag. |
Constructor
Signature
def Tag(
name: str,
color: [TagColor](tagcolor.md?sid=app_models_tag_tagcolor) = TagColor.GRAY,
description: str
)
Parameters
| Name | Type | Description |
|---|---|---|
| name | str | The display name of the tag. |
| color | [TagColor](tagcolor.md?sid=app_models_tag_tagcolor) = TagColor.GRAY | The visual color for UI rendering. |
| description | str | An optional description of what this tag represents. |
Methods
rename()
@classmethod
def rename(
new_name: string
) - > None
Rename the tag. Raises ValueError if the name is empty or too long.
Parameters
| Name | Type | Description |
|---|---|---|
| new_name | string | The new display name for the tag. |
Returns
| Type | Description |
|---|---|
None | None |
increment_usage()
@classmethod
def increment_usage() - > int
Record that a bookmark now uses this tag. Returns the new usage count.
Returns
| Type | Description |
|---|---|
int | The updated usage count after incrementing. |
decrement_usage()
@classmethod
def decrement_usage() - > int
Record that a bookmark removed this tag. Returns the new usage count, ensuring it does not go below zero.
Returns
| Type | Description |
|---|---|
int | The updated usage count after decrementing. |
to_dict()
@classmethod
def to_dict() - > Dict[str, Any]
Serialise the tag object into a JSON-safe dictionary representation.
Returns
| Type | Description |
|---|---|
Dict[str, Any] | A dictionary containing the tag's id, name, color, description, and usage_count. |
from_dict()
@classmethod
def from_dict(
data: Dict[str, Any]
) - > [Tag](tag.md?sid=app_models_tag_tag)
Construct a Tag object from a dictionary representation.
Parameters
| Name | Type | Description |
|---|---|---|
| data | Dict[str, Any] | A dictionary containing the tag's properties, expected to have at least a 'name' key. |
Returns
| Type | Description |
|---|---|
[Tag](tag.md?sid=app_models_tag_tag) | A new Tag object initialized with the provided dictionary data. |