brynq-sdk-bob 2.8.2__tar.gz → 2.8.2.dev0__tar.gz

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.
Files changed (34) hide show
  1. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/PKG-INFO +1 -1
  2. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/people.py +13 -4
  3. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob.egg-info/PKG-INFO +1 -1
  4. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/setup.py +1 -1
  5. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/__init__.py +0 -0
  6. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/bank.py +0 -0
  7. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/company.py +0 -0
  8. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/custom_tables.py +0 -0
  9. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/documents.py +0 -0
  10. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/employment.py +0 -0
  11. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/named_lists.py +0 -0
  12. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/payments.py +0 -0
  13. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/payroll_history.py +0 -0
  14. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/reports.py +0 -0
  15. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/salaries.py +0 -0
  16. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/schemas/__init__.py +0 -0
  17. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/schemas/bank.py +0 -0
  18. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/schemas/custom_tables.py +0 -0
  19. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/schemas/employment.py +0 -0
  20. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/schemas/named_lists.py +0 -0
  21. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/schemas/payments.py +0 -0
  22. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/schemas/payroll_history.py +0 -0
  23. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/schemas/people.py +0 -0
  24. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/schemas/salary.py +0 -0
  25. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/schemas/timeoff.py +0 -0
  26. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/schemas/work.py +0 -0
  27. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/timeoff.py +0 -0
  28. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob/work.py +0 -0
  29. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob.egg-info/SOURCES.txt +0 -0
  30. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob.egg-info/dependency_links.txt +0 -0
  31. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob.egg-info/not-zip-safe +0 -0
  32. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob.egg-info/requires.txt +0 -0
  33. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/brynq_sdk_bob.egg-info/top_level.txt +0 -0
  34. {brynq_sdk_bob-2.8.2 → brynq_sdk_bob-2.8.2.dev0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: brynq_sdk_bob
3
- Version: 2.8.2
3
+ Version: 2.8.2.dev0
4
4
  Summary: Bob wrapper from BrynQ
5
5
  Author: BrynQ
6
6
  Author-email: support@brynq.com
@@ -52,21 +52,30 @@ class People:
52
52
  df.columns = df.columns.str.replace('/', '.', regex=False)
53
53
 
54
54
 
55
- # Clean up custom .value columns; keeps only one field per custom key. the .value column actually contains the value., other column is nested key.
55
+ # Format custom columns in the same way as they were in the schema/request body.
56
+ # (e.g. 'identification.custom.field_1747318003716.value' -> 'identification.custom.field_1747318003716')
57
+ # But only if the target column doesn't already exist or is empty, to prioritize the cleaner name if it has value
56
58
  custom_cols = [col for col in df.columns if "custom" in str(col) and str(col).endswith('.value')]
57
59
  for col in custom_cols:
58
60
  new_col = col.removesuffix('.value')
59
- # prefer non-empty clean column, otherwise upgrade .value data
61
+ # If the new column doesn't exist, rename it directly
60
62
  if new_col not in df.columns:
61
63
  df = df.rename(columns={col: new_col})
64
+ # If it exists but is all empty/NA, and the .value column has data, overwrite it
62
65
  elif df[new_col].isna().all() and not df[col].isna().all():
63
66
  df[new_col] = df[col]
64
67
  df = df.drop(columns=[col])
68
+ # If both exist and have data, prefer the existing one (assuming cleaner format) but drop the .value duplicate if redundant
65
69
  else:
66
- # Drop identical/redundant .value col
70
+ # If both exist, we might want to keep the existing one as is, and just drop the .value one to avoid confusion
71
+ # Or check if they are identical and drop one
67
72
  if df[new_col].equals(df[col]):
68
73
  df = df.drop(columns=[col])
69
- pass
74
+ else:
75
+ # If they differ, we might want to keep the one with more data or default to existing behavior
76
+ # For now, let's assume we trust the existing column if it has data.
77
+ # Just drop the .value column if we aren't using it to overwrite
78
+ pass
70
79
 
71
80
 
72
81
  # A lot of fields from Bob are returned with only ID's. Those fields should be mapped to names. Therefore, we need to get the mapping from the named-lists endpoint.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: brynq_sdk_bob
3
- Version: 2.8.2
3
+ Version: 2.8.2.dev0
4
4
  Summary: Bob wrapper from BrynQ
5
5
  Author: BrynQ
6
6
  Author-email: support@brynq.com
@@ -2,7 +2,7 @@ from setuptools import setup, find_namespace_packages
2
2
 
3
3
  setup(
4
4
  name='brynq_sdk_bob',
5
- version='2.8.2',
5
+ version='2.8.2-dev',
6
6
  description='Bob wrapper from BrynQ',
7
7
  long_description='Bob wrapper from BrynQ',
8
8
  author='BrynQ',