constec 0.3.0__py3-none-any.whl → 0.3.1__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.
@@ -34,6 +34,7 @@ class Migration(migrations.Migration):
34
34
  ],
35
35
  options={
36
36
  'db_table': 'erp"."entities',
37
+ 'verbose_name_plural': 'Entities',
37
38
  },
38
39
  ),
39
40
  migrations.CreateModel(
@@ -121,12 +122,14 @@ class Migration(migrations.Migration):
121
122
  ],
122
123
  options={
123
124
  'db_table': 'core"."companies',
125
+ 'verbose_name_plural': 'Companies',
124
126
  },
125
127
  ),
126
128
  migrations.CreateModel(
127
129
  name='Contact',
128
130
  fields=[
129
131
  ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
132
+ ('label', models.CharField(blank=True, help_text="Optional label (e.g. 'Personal', 'Work')", max_length=100)),
130
133
  ('value', models.CharField(max_length=255)),
131
134
  ('metadata', models.JSONField(blank=True, default=dict)),
132
135
  ('type', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='contacts', to='constec_db.contacttype')),
@@ -377,6 +380,8 @@ class Migration(migrations.Migration):
377
380
  ],
378
381
  options={
379
382
  'db_table': 'core"."tag_categories',
383
+ 'verbose_name': 'Tag category',
384
+ 'verbose_name_plural': 'Tag categories',
380
385
  },
381
386
  ),
382
387
  migrations.AddField(
@@ -435,6 +440,8 @@ class Migration(migrations.Migration):
435
440
  ],
436
441
  options={
437
442
  'db_table': 'core"."user_company_access',
443
+ 'verbose_name': 'User company access',
444
+ 'verbose_name_plural': 'User company access',
438
445
  },
439
446
  ),
440
447
  migrations.AddIndex(
@@ -23,6 +23,7 @@ class Contact(UUIDModel):
23
23
  on_delete=models.CASCADE,
24
24
  related_name="contacts",
25
25
  )
26
+ label = models.CharField(max_length=100, blank=True, help_text="Optional label (e.g. 'Personal', 'Work')")
26
27
  value = models.CharField(max_length=255)
27
28
  metadata = models.JSONField(default=dict, blank=True)
28
29
 
@@ -31,6 +32,8 @@ class Contact(UUIDModel):
31
32
  db_table = 'core"."contacts'
32
33
 
33
34
  def __str__(self):
35
+ if self.label:
36
+ return f"{self.label}: {self.value} ({self.type.name})"
34
37
  return f"{self.value} ({self.type.name})"
35
38
 
36
39
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: constec
3
- Version: 0.3.0
3
+ Version: 0.3.1
4
4
  Summary: Base library for the Constec ecosystem - shared utilities, models, and namespace foundation
5
5
  License: MIT
6
6
  Project-URL: Homepage, https://github.com/TpmyCT/constec-python
@@ -1,12 +1,12 @@
1
1
  constec/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  constec/db/__init__.py,sha256=wou_y3aqCg1xP8Gr13FKRy0kEI2avV-19G3P2g3bzjs,287
3
3
  constec/db/apps.py,sha256=zc-9lGNa049q9bvxV7957EwnZjuBozPLZq594cKAU24,221
4
- constec/db/migrations/0001_initial.py,sha256=eJ2F_Gub0wgHOauKMvkDc_XUjGoaeyzDjyxA1f0nNsU,28527
4
+ constec/db/migrations/0001_initial.py,sha256=ru0auCkdz83Qu3e7hGX24WjZXAlM6fE7RZtgAnzANzQ,28979
5
5
  constec/db/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
6
  constec/db/models/__init__.py,sha256=xsER3dtbsj14mSb52v1Mf1bE0RzKbvrvwD6xti2RN5s,2132
7
7
  constec/db/models/base.py,sha256=1t_eYXYyggoL5fKLcitRPKr1qUE1Ql3_sOmSHQMD3QE,359
8
8
  constec/db/models/company.py,sha256=9Mr2Q9iSwu4bhp_4KPZqZy4ciJ62rI_AxFWSs1wGGhE,1097
9
- constec/db/models/contact.py,sha256=qzkekZBNBtusFMpZRANxwKjtDN9qCxc4BMz-H7RyWM0,1904
9
+ constec/db/models/contact.py,sha256=VJ66YgzCqp09dzYM5IK9rZZV1jqBepJQO8YK28gA98k,2106
10
10
  constec/db/models/erp.py,sha256=sN0U0XCMNW-pc9CNLZG_kPZeWXznq_XU3ML2zJ3arjA,3518
11
11
  constec/db/models/erp_entity.py,sha256=aussrOd7kyNaP2tRJ5SS_WLzpXcZ-SyBa7KnSCkL89g,3954
12
12
  constec/db/models/flow.py,sha256=K_UA7E4zJ2-UPNp5H9e-lfPeGn0wDEiOl0cRal4Dmb8,4414
@@ -24,8 +24,8 @@ constec/shared/exceptions.py,sha256=8Bih40RWoH0gVhto09mH2ppSQV_drHPnGWITcoD-0J0,
24
24
  constec/utils/__init__.py,sha256=brf-G4UvU-3CK_rKNPTaHwsVsxnoJSbml_QTZJSM7d0,458
25
25
  constec/utils/cuit.py,sha256=dQKGlA4pRQ5DyR-N4BiV8ZsvAle2Vgjif7PU72zHx_A,2753
26
26
  constec/utils/password.py,sha256=XNpTJ9xZQSoZNjXEAnexAEZuYkwW1dFgX4AY-B5Q0gA,1462
27
- constec-0.3.0.dist-info/licenses/LICENSE,sha256=a1R51ONDGq0UQfV-n3ybsNL7EGhcC2sQ1sXvRANaFVI,1064
28
- constec-0.3.0.dist-info/METADATA,sha256=HngSlD9Jv1PcYz6x2ycn9vSmCu0gNXe3b93Kfn817Qs,2954
29
- constec-0.3.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
30
- constec-0.3.0.dist-info/top_level.txt,sha256=bQ9AydOLlthShsr7tA7t7ivbLvlLPdhHOo0BdWgnh_Y,8
31
- constec-0.3.0.dist-info/RECORD,,
27
+ constec-0.3.1.dist-info/licenses/LICENSE,sha256=a1R51ONDGq0UQfV-n3ybsNL7EGhcC2sQ1sXvRANaFVI,1064
28
+ constec-0.3.1.dist-info/METADATA,sha256=poYgOsy9VNOF5y-075ox5qvgJa0GbvGLgRrOBBhlVoI,2954
29
+ constec-0.3.1.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
30
+ constec-0.3.1.dist-info/top_level.txt,sha256=bQ9AydOLlthShsr7tA7t7ivbLvlLPdhHOo0BdWgnh_Y,8
31
+ constec-0.3.1.dist-info/RECORD,,