taranis-models 1.3.2.dev3__py3-none-any.whl → 1.3.2.dev4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- models/assess.py +8 -53
- models/user.py +1 -1
- {taranis_models-1.3.2.dev3.dist-info → taranis_models-1.3.2.dev4.dist-info}/METADATA +1 -2
- {taranis_models-1.3.2.dev3.dist-info → taranis_models-1.3.2.dev4.dist-info}/RECORD +7 -7
- {taranis_models-1.3.2.dev3.dist-info → taranis_models-1.3.2.dev4.dist-info}/WHEEL +0 -0
- {taranis_models-1.3.2.dev3.dist-info → taranis_models-1.3.2.dev4.dist-info}/licenses/LICENSE.md +0 -0
- {taranis_models-1.3.2.dev3.dist-info → taranis_models-1.3.2.dev4.dist-info}/top_level.txt +0 -0
models/assess.py
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
from datetime import datetime
|
|
2
2
|
from functools import cached_property
|
|
3
|
-
from typing import
|
|
3
|
+
from typing import Literal
|
|
4
4
|
|
|
5
|
-
from langcodes import Language
|
|
6
|
-
from langcodes.tag_parser import LanguageTagError
|
|
7
|
-
from pydantic import ValidationInfo, field_validator, model_validator
|
|
8
5
|
|
|
9
6
|
from models.base import TaranisBaseModel
|
|
10
7
|
|
|
@@ -13,21 +10,18 @@ class NewsItem(TaranisBaseModel):
|
|
|
13
10
|
_core_endpoint = "/assess/news-items"
|
|
14
11
|
|
|
15
12
|
osint_source_id: str
|
|
16
|
-
id: str | None = None
|
|
17
13
|
hash: str | None = None
|
|
18
14
|
title: str | None = None
|
|
19
15
|
author: str | None = None
|
|
20
16
|
review: str | None = None
|
|
21
17
|
content: str | None = None
|
|
22
|
-
|
|
18
|
+
web_url: str | None = None
|
|
23
19
|
source: str | None = None
|
|
24
20
|
published: datetime | None = None
|
|
25
21
|
collected: datetime | None = None
|
|
26
|
-
|
|
27
|
-
attributes: list[str | dict[str, Any]] | None = None
|
|
22
|
+
attributes: list[str | dict] | None = None
|
|
28
23
|
story_id: str | None = None
|
|
29
24
|
language: str | None = None
|
|
30
|
-
last_change: str | None = None
|
|
31
25
|
|
|
32
26
|
|
|
33
27
|
class StoryTag(TaranisBaseModel):
|
|
@@ -59,8 +53,8 @@ class Story(TaranisBaseModel):
|
|
|
59
53
|
relevance: int | None = None
|
|
60
54
|
comments: str | None = None
|
|
61
55
|
in_reports_count: int | None = None
|
|
62
|
-
tags: list[dict
|
|
63
|
-
attributes: list[dict
|
|
56
|
+
tags: list[dict] | None = None
|
|
57
|
+
attributes: list[dict] | None = None
|
|
64
58
|
|
|
65
59
|
@cached_property
|
|
66
60
|
def search_field(self) -> str:
|
|
@@ -87,7 +81,7 @@ class FilterLists(TaranisBaseModel):
|
|
|
87
81
|
|
|
88
82
|
tags: list[str] = []
|
|
89
83
|
sources: list[AssessSource] = []
|
|
90
|
-
groups: list[dict
|
|
84
|
+
groups: list[dict] = []
|
|
91
85
|
|
|
92
86
|
|
|
93
87
|
class StoryUpdatePayload(TaranisBaseModel):
|
|
@@ -98,49 +92,10 @@ class StoryUpdatePayload(TaranisBaseModel):
|
|
|
98
92
|
description: str | None = None
|
|
99
93
|
comments: str | None = None
|
|
100
94
|
summary: str | None = None
|
|
101
|
-
tags: list[dict
|
|
102
|
-
attributes: list[dict
|
|
95
|
+
tags: list[dict] | None = None
|
|
96
|
+
attributes: list[dict] | None = None
|
|
103
97
|
|
|
104
98
|
|
|
105
99
|
class BulkAction(TaranisBaseModel):
|
|
106
100
|
story_ids: list[str] = []
|
|
107
101
|
payload: StoryUpdatePayload | None = None
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
class NewsItemCreate(TaranisBaseModel):
|
|
111
|
-
osint_source_id: str
|
|
112
|
-
title: str | None = None
|
|
113
|
-
author: str | None = None
|
|
114
|
-
review: str | None = None
|
|
115
|
-
content: str | None = None
|
|
116
|
-
link: str | None = None
|
|
117
|
-
source: str | None = None
|
|
118
|
-
published: datetime | None = None
|
|
119
|
-
collected: datetime | None = None
|
|
120
|
-
attributes: list[str | dict[str, Any]] | None = None
|
|
121
|
-
language: str | None = None
|
|
122
|
-
|
|
123
|
-
@field_validator("language", mode="before")
|
|
124
|
-
def normalize_language_code(self, v: str, info: ValidationInfo) -> str:
|
|
125
|
-
if v:
|
|
126
|
-
try:
|
|
127
|
-
return Language.get(v).language or ""
|
|
128
|
-
except (LanguageTagError, ValueError, TypeError):
|
|
129
|
-
return ""
|
|
130
|
-
return ""
|
|
131
|
-
|
|
132
|
-
@model_validator(mode="after")
|
|
133
|
-
def check_required_fields(self) -> "NewsItemCreate":
|
|
134
|
-
if not self.title and not self.content:
|
|
135
|
-
raise ValueError("Either title or content must be provided for NewsItemCreate.")
|
|
136
|
-
return self
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
class StoryCreate(TaranisBaseModel):
|
|
140
|
-
title: str | None = None
|
|
141
|
-
summary: str | None = None
|
|
142
|
-
description: str | None = None
|
|
143
|
-
news_items: list[NewsItemCreate] = []
|
|
144
|
-
tags: list[dict[str, Any]] | None = None
|
|
145
|
-
attributes: list[dict[str, Any]] | None = None
|
|
146
|
-
created: datetime | None = None
|
models/user.py
CHANGED
|
@@ -19,7 +19,7 @@ class ProfileSettings(TaranisBaseModel):
|
|
|
19
19
|
dark_theme: bool = False
|
|
20
20
|
compact_view: bool = False
|
|
21
21
|
show_charts: bool = False
|
|
22
|
-
infinite_scroll: bool =
|
|
22
|
+
infinite_scroll: bool = True
|
|
23
23
|
advanced_story_options: bool = False
|
|
24
24
|
language: str = "en"
|
|
25
25
|
hotkeys: dict[str, Any] = Field(default_factory=dict)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: taranis-models
|
|
3
|
-
Version: 1.3.2.
|
|
3
|
+
Version: 1.3.2.dev4
|
|
4
4
|
Summary: Taranis AI Models
|
|
5
5
|
Maintainer-email: AIT <benjamin.akhras@ait.ac.at>
|
|
6
6
|
License-Expression: EUPL-1.2
|
|
@@ -17,7 +17,6 @@ License-File: LICENSE.md
|
|
|
17
17
|
Requires-Dist: pydantic
|
|
18
18
|
Requires-Dist: pydantic-settings
|
|
19
19
|
Requires-Dist: python-dotenv
|
|
20
|
-
Requires-Dist: langcodes
|
|
21
20
|
Provides-Extra: dev
|
|
22
21
|
Requires-Dist: ruff; extra == "dev"
|
|
23
22
|
Requires-Dist: pytest; extra == "dev"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
models/__init__.py,sha256=PvAkuaQRsocjPY5C61q6TQ8ac-EYSXTHfiOuwlIAg0M,576
|
|
2
2
|
models/admin.py,sha256=0itSQNIyGPo0d30lNWzMr19Y-x_2wT_larsjGSo694s,10156
|
|
3
|
-
models/assess.py,sha256=
|
|
3
|
+
models/assess.py,sha256=TR7GvMQZ3Ka-9e-WqHdubYDnO3zB6B5c_2PU4xo4h2k,2947
|
|
4
4
|
models/asset.py,sha256=Zbzkspqlnya7Uj8Ig-pLm41VgmMnPXdPzacovNFXRPU,530
|
|
5
5
|
models/base.py,sha256=CBW_YcrwDSdTe-RbszXCj4yQnHW86fxSai_G7uVuBrE,594
|
|
6
6
|
models/dashboard.py,sha256=7PaB1jaK0c2VM5Deye_-lV0c-Pcg9s4BmQLzjC_V_I0,1083
|
|
@@ -8,9 +8,9 @@ models/product.py,sha256=ydsEDEirdZsGVunKiELxZE-3CbkDNHu1ZY4YgnvZzqU,1757
|
|
|
8
8
|
models/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
9
9
|
models/report.py,sha256=ruYnCEdf5ilDqbxsTwGGWenYMvhIQLraZYStBzzm7jY,1202
|
|
10
10
|
models/types.py,sha256=1TTXVXcUARzg2sOJJ2BfTCqboN7RQg-kn48FtE6MFaQ,6491
|
|
11
|
-
models/user.py,sha256=
|
|
12
|
-
taranis_models-1.3.2.
|
|
13
|
-
taranis_models-1.3.2.
|
|
14
|
-
taranis_models-1.3.2.
|
|
15
|
-
taranis_models-1.3.2.
|
|
16
|
-
taranis_models-1.3.2.
|
|
11
|
+
models/user.py,sha256=oXdiKby1GG3rDgSFl9QS8fpArSJnj0mkr-VTLcfvv1c,1325
|
|
12
|
+
taranis_models-1.3.2.dev4.dist-info/licenses/LICENSE.md,sha256=b8nnCcy_4Nd_v_okJ6mDKCvi64jkexzbSfIag7TR5mU,13827
|
|
13
|
+
taranis_models-1.3.2.dev4.dist-info/METADATA,sha256=EQId1QI17pBoUXhAi9TJzUd04QgA8ls7kgoyv1XL29k,1452
|
|
14
|
+
taranis_models-1.3.2.dev4.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
15
|
+
taranis_models-1.3.2.dev4.dist-info/top_level.txt,sha256=vH5ByFtkqB2bXlXOuK5zaaM_1GFEE9six0KgGIdPaU0,7
|
|
16
|
+
taranis_models-1.3.2.dev4.dist-info/RECORD,,
|
|
File without changes
|
{taranis_models-1.3.2.dev3.dist-info → taranis_models-1.3.2.dev4.dist-info}/licenses/LICENSE.md
RENAMED
|
File without changes
|
|
File without changes
|