arpakitlib 1.8.174__py3-none-any.whl → 1.8.175__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.
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "arpakitlib_project_template_version": "5",
3
- "arpakitlib_project_template_subversion": "39"
3
+ "arpakitlib_project_template_subversion": "40"
4
4
  }
@@ -22,6 +22,7 @@ class VerificationCodeMV(SimpleMV, model=VerificationCodeDBM):
22
22
  VerificationCodeDBM.recipient,
23
23
  VerificationCodeDBM.user,
24
24
  VerificationCodeDBM.is_active,
25
+ VerificationCodeDBM.detail_data,
25
26
  VerificationCodeDBM.extra_data
26
27
  ]
27
28
  column_details_list = [
@@ -34,6 +35,7 @@ class VerificationCodeMV(SimpleMV, model=VerificationCodeDBM):
34
35
  VerificationCodeDBM.recipient,
35
36
  VerificationCodeDBM.user,
36
37
  VerificationCodeDBM.is_active,
38
+ VerificationCodeDBM.detail_data,
37
39
  VerificationCodeDBM.extra_data
38
40
  ]
39
41
  form_columns = [
@@ -43,6 +45,7 @@ class VerificationCodeMV(SimpleMV, model=VerificationCodeDBM):
43
45
  VerificationCodeDBM.recipient,
44
46
  VerificationCodeDBM.user,
45
47
  VerificationCodeDBM.is_active,
48
+ VerificationCodeDBM.detail_data,
46
49
  VerificationCodeDBM.extra_data
47
50
  ]
48
51
  form_overrides = {
@@ -66,10 +69,12 @@ class VerificationCodeMV(SimpleMV, model=VerificationCodeDBM):
66
69
  ]
67
70
  column_formatters = {
68
71
  VerificationCodeDBM.creation_dt: lambda m, _: format_datetime_(m.creation_dt),
72
+ VerificationCodeDBM.detail_data: lambda m, _: format_json_for_preview_(m.detail_data),
69
73
  VerificationCodeDBM.extra_data: lambda m, _: format_json_for_preview_(m.extra_data)
70
74
  }
71
75
  column_formatters_detail = {
72
76
  VerificationCodeDBM.creation_dt: lambda m, _: format_datetime_(m.creation_dt),
77
+ VerificationCodeDBM.detail_data: lambda m, _: format_json_for_preview_(m.detail_data),
73
78
  VerificationCodeDBM.extra_data: lambda m, a: format_json_(m.extra_data),
74
79
  }
75
80
  form_ajax_refs = {
@@ -1,7 +1,7 @@
1
1
  from __future__ import annotations
2
2
 
3
3
  from random import randint
4
- from typing import TYPE_CHECKING
4
+ from typing import TYPE_CHECKING, Any
5
5
 
6
6
  import sqlalchemy
7
7
  from sqlalchemy.orm import Mapped, mapped_column, relationship, validates
@@ -55,6 +55,13 @@ class VerificationCodeDBM(SimpleDBM):
55
55
  insert_default=True,
56
56
  server_default="true"
57
57
  )
58
+ detail_data: Mapped[dict[str, Any]] = mapped_column(
59
+ sqlalchemy.JSON,
60
+ nullable=False,
61
+ index=False,
62
+ insert_default={},
63
+ server_default="{}",
64
+ )
58
65
 
59
66
  # one to many
60
67
  user: Mapped[UserDBM | None] = relationship(
@@ -95,6 +102,14 @@ class VerificationCodeDBM(SimpleDBM):
95
102
  value = make_none_if_blank(value.strip())
96
103
  return value
97
104
 
105
+ @validates("detail_data")
106
+ def _validate_detail_data(self, key, value, *args, **kwargs):
107
+ if value is None:
108
+ value = {}
109
+ if not isinstance(value, dict):
110
+ raise ValueError(f"{key=}, {value=}, value is not dict")
111
+ return value
112
+
98
113
  @property
99
114
  def sdp_allowed_types(self) -> list[str]:
100
115
  return self.Types.values_list()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: arpakitlib
3
- Version: 1.8.174
3
+ Version: 1.8.175
4
4
  Summary: arpakitlib
5
5
  License: Apache-2.0
6
6
  Keywords: arpakitlib,arpakit,arpakit-company,arpakitcompany,arpakit_company
@@ -8,7 +8,7 @@ arpakitlib/_arpakit_project_template_v_5/alembic/env.py,sha256=Qesmnj5A2kB-Doeuf
8
8
  arpakitlib/_arpakit_project_template_v_5/alembic/script.py.mako,sha256=MEqL-2qATlST9TAOeYgscMn1uy6HUS9NFvDgl93dMj8,635
9
9
  arpakitlib/_arpakit_project_template_v_5/alembic/versions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
10
  arpakitlib/_arpakit_project_template_v_5/alembic.ini,sha256=8fuyeEvGBiPGbxEFy8ISBV3xX_fgVmuhEGpB10_B5Uo,3733
11
- arpakitlib/_arpakit_project_template_v_5/arpakitlib_project_template_info.json,sha256=MzKG0FxkZBCKhNfL0Y8R-9gGmPGWb7RLo3HoNW9pEVc,98
11
+ arpakitlib/_arpakit_project_template_v_5/arpakitlib_project_template_info.json,sha256=KQiU8fIzG2SHazH_nhqCF8G1ZmtSYmexcc-JdJF4V8k,98
12
12
  arpakitlib/_arpakit_project_template_v_5/command/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
13
  arpakitlib/_arpakit_project_template_v_5/command/alembic_history.sh,sha256=OMnDNtHIksGh9iavWnzbtxcudZW4vjdcISsBXvzZSPw,22
14
14
  arpakitlib/_arpakit_project_template_v_5/command/alembic_revision_autogenerate.sh,sha256=yW2i-SBOtBx15Ya0poVQqKkJM5t2JZp06r9AEW-DmGE,46
@@ -252,7 +252,7 @@ arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/model_view/operation.
252
252
  arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/model_view/story_log.py,sha256=EePtnFQsDKvhHcPYQU4ahgo24jC6uBZkuzu2alrTviE,2180
253
253
  arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/model_view/user.py,sha256=AbD0QPbAkwOE3i9aDirVBrIntQBCrU1xwX2IZlMS8Rk,2576
254
254
  arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/model_view/user_token.py,sha256=pyeyDTg4rss8-67hIE3-SQlAvNfje6HazuaVnyFBpN8,2054
255
- arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/model_view/verification_code.py,sha256=8dfmXKVsmLNf6Id6Ql52uVaZuQtqNCq5nJgBOv3N66A,2883
255
+ arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/model_view/verification_code.py,sha256=NVnF4SHJEGOFuZjLAzsT-fQr5VREYK4xcz5t1zG6JtM,3196
256
256
  arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/start_sqladmin.py,sha256=jaAOq7Kf7HYziJslWbjqzr41kX4dJ9CXDPtMXj8rWok,384
257
257
  arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
258
258
  arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/util/etc.py,sha256=jm65ZB0K8e6WpgcL2Y6pxcIuQjioIyMtBIOOFbbWfgk,1070
@@ -266,7 +266,7 @@ arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/sqlalchemy_model
266
266
  arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/sqlalchemy_model/story_log.py,sha256=hMYVJq837ZeIO3J2neOAzuzxeZ7hdR5PY93-YdgHftU,2472
267
267
  arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/sqlalchemy_model/user.py,sha256=22TE8y2Vm9byLLkIE6RVAMa29d9ILCVg1e1QYi4ONIQ,7898
268
268
  arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/sqlalchemy_model/user_token.py,sha256=dCCiRZcOiUpqd-DZZ-A6tVM0PzJwa030KFOzPXNyM7A,1929
269
- arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/sqlalchemy_model/verification_code.py,sha256=xrrNPXn5PeCnZ2VWVBdXDUft83EEYtc6b4pvs0oh1uw,3078
269
+ arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/sqlalchemy_model/verification_code.py,sha256=3fNkUwWEdt6l3Snwr_ktMqzTeo2hm04hPlznCLr2izg,3548
270
270
  arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
271
271
  arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/util/execute_func_with_story_log.py,sha256=HrDlG8Y1gbMNVIuDHvCndXbnp8vxc8T8l-_XBVn7zR8,6091
272
272
  arpakitlib/_arpakit_project_template_v_5/project/test_data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -411,8 +411,8 @@ arpakitlib/ar_sqlalchemy_util.py,sha256=w_tGPTWIMVjHkTEYo9tVe1sfK_4vvfd3zGATLiYC
411
411
  arpakitlib/ar_str_util.py,sha256=2lGpnXDf2h1cBZpVf5i1tX_HCv5iBd6IGnrCw4QWWlY,4350
412
412
  arpakitlib/ar_type_util.py,sha256=Cs_tef-Fc5xeyAF54KgISCsP11NHyzIsglm4S3Xx7iM,4049
413
413
  arpakitlib/ar_yookassa_api_client_util.py,sha256=VozuZeCJjmLd1zj2BdC9WfiAQ3XYOrIMsdpNK-AUlm0,5347
414
- arpakitlib-1.8.174.dist-info/LICENSE,sha256=GPEDQMam2r7FSTYqM1mm7aKnxLaWcBotH7UvQtea-ec,11355
415
- arpakitlib-1.8.174.dist-info/METADATA,sha256=7nQJRVCxFTvsuwIlsBOXbmWaD8bO-U-xsi4DpZxKyZQ,3706
416
- arpakitlib-1.8.174.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
417
- arpakitlib-1.8.174.dist-info/entry_points.txt,sha256=36xqR3PJFT2kuwjkM_EqoIy0qFUDPKSm_mJaI7emewE,87
418
- arpakitlib-1.8.174.dist-info/RECORD,,
414
+ arpakitlib-1.8.175.dist-info/LICENSE,sha256=GPEDQMam2r7FSTYqM1mm7aKnxLaWcBotH7UvQtea-ec,11355
415
+ arpakitlib-1.8.175.dist-info/METADATA,sha256=eUV4XHSXNQ3sM5UR-rkT6G7sIhgw2xah0O2I9bBPw-s,3706
416
+ arpakitlib-1.8.175.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
417
+ arpakitlib-1.8.175.dist-info/entry_points.txt,sha256=36xqR3PJFT2kuwjkM_EqoIy0qFUDPKSm_mJaI7emewE,87
418
+ arpakitlib-1.8.175.dist-info/RECORD,,