pyxecm 3.4.1__tar.gz → 3.4.2__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 (72) hide show
  1. {pyxecm-3.4.1 → pyxecm-3.4.2}/PKG-INFO +1 -1
  2. {pyxecm-3.4.1 → pyxecm-3.4.2}/pyproject.toml +1 -1
  3. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/otcs.py +24 -2
  4. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/m365.py +3981 -1
  5. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/payload.py +53 -47
  6. {pyxecm-3.4.1 → pyxecm-3.4.2}/.gitignore +0 -0
  7. {pyxecm-3.4.1 → pyxecm-3.4.2}/README.md +0 -0
  8. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/__init__.py +0 -0
  9. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/avts.py +0 -0
  10. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/coreshare.py +0 -0
  11. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/helper/__init__.py +0 -0
  12. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/helper/assoc.py +0 -0
  13. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/helper/data.py +0 -0
  14. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/helper/logadapter.py +0 -0
  15. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/helper/web.py +0 -0
  16. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/helper/xml.py +0 -0
  17. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/otac.py +0 -0
  18. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/otawp.py +0 -0
  19. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/otca.py +0 -0
  20. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/otds.py +0 -0
  21. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/otiv.py +0 -0
  22. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/otkd.py +0 -0
  23. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/otmm.py +0 -0
  24. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/otpd.py +0 -0
  25. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm/py.typed +0 -0
  26. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/__init__.py +0 -0
  27. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/__main__.py +0 -0
  28. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/app.py +0 -0
  29. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/auth/__init__.py +0 -0
  30. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/auth/functions.py +0 -0
  31. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/auth/models.py +0 -0
  32. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/auth/router.py +0 -0
  33. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/common/__init__.py +0 -0
  34. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/common/functions.py +0 -0
  35. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/common/metrics.py +0 -0
  36. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/common/models.py +0 -0
  37. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/common/router.py +0 -0
  38. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/settings.py +0 -0
  39. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/terminal/__init__.py +0 -0
  40. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/terminal/router.py +0 -0
  41. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/v1_maintenance/__init__.py +0 -0
  42. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/v1_maintenance/functions.py +0 -0
  43. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/v1_maintenance/models.py +0 -0
  44. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/v1_maintenance/router.py +0 -0
  45. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/v1_otcs/__init__.py +0 -0
  46. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/v1_otcs/functions.py +0 -0
  47. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/v1_otcs/router.py +0 -0
  48. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/v1_payload/__init__.py +0 -0
  49. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/v1_payload/functions.py +0 -0
  50. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/v1_payload/models.py +0 -0
  51. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_api/v1_payload/router.py +0 -0
  52. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/__init__.py +0 -0
  53. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/__main__.py +0 -0
  54. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/browser_automation.py +0 -0
  55. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/customizer.py +0 -0
  56. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/exceptions.py +0 -0
  57. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/guidewire.py +0 -0
  58. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/k8s.py +0 -0
  59. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/log.py +0 -0
  60. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/payload_list.py +0 -0
  61. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/salesforce.py +0 -0
  62. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/sap.py +0 -0
  63. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/servicenow.py +0 -0
  64. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/settings.py +0 -0
  65. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/successfactors.py +0 -0
  66. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_customizer/translate.py +0 -0
  67. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_maintenance_page/__init__.py +0 -0
  68. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_maintenance_page/__main__.py +0 -0
  69. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_maintenance_page/app.py +0 -0
  70. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_maintenance_page/settings.py +0 -0
  71. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_maintenance_page/static/favicon.avif +0 -0
  72. {pyxecm-3.4.1 → pyxecm-3.4.2}/src/pyxecm_maintenance_page/templates/maintenance.html +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyxecm
3
- Version: 3.4.1
3
+ Version: 3.4.2
4
4
  Summary: A Python library to interact with Opentext Content Management Rest API
5
5
  Project-URL: Homepage, https://github.com/opentext/pyxecm
6
6
  Author-email: Kai Gatzweiler <kgatzweiler@opentext.com>, "Dr. Marc Diefenbruch" <mdiefenb@opentext.com>
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "pyxecm"
3
- version = "3.4.1"
3
+ version = "3.4.2"
4
4
  description = 'A Python library to interact with Opentext Content Management Rest API'
5
5
  keywords = [
6
6
  'opentext',
@@ -13269,7 +13269,7 @@ class OTCS:
13269
13269
  # end method definition
13270
13270
 
13271
13271
  @tracer.start_as_current_span(attributes=OTEL_TRACING_ATTRIBUTES, name="get_workspace_type_by_name")
13272
- def get_workspace_type_by_name(self, type_name: str) -> dict | None:
13272
+ def get_workspace_type_by_name(self, type_name: str, locale: str | None = None) -> dict | None:
13273
13273
  """Get information for a given workspace type.
13274
13274
 
13275
13275
  This is a convinience method. It's implementation is potentially
@@ -13279,6 +13279,8 @@ class OTCS:
13279
13279
  Args:
13280
13280
  type_name (str):
13281
13281
  The name of the workspace type to retrieve.
13282
+ locale (str | None, optional):
13283
+ The locale to use for the workspace type name comparison.
13282
13284
 
13283
13285
  Returns:
13284
13286
  dict | None:
@@ -13287,11 +13289,26 @@ class OTCS:
13287
13289
  """
13288
13290
 
13289
13291
  workspace_types = self.get_workspace_types_iterator()
13292
+ type_name_lower = type_name.lower()
13293
+
13290
13294
  for workspace_type in workspace_types:
13291
13295
  workspace_type_name = self.get_result_value(response=workspace_type, key="wksp_type_name")
13292
- if workspace_type_name.lower() == type_name.lower():
13296
+ if workspace_type_name and workspace_type_name.lower() == type_name_lower:
13293
13297
  return workspace_type
13294
13298
 
13299
+ workspace_type_names_multilingual = self.get_result_value(response=workspace_type, key="wksp_type_names")
13300
+ if not workspace_type_names_multilingual:
13301
+ continue
13302
+
13303
+ if locale:
13304
+ localized_name = workspace_type_names_multilingual.get(locale)
13305
+ if localized_name and localized_name.lower() == type_name_lower:
13306
+ return workspace_type
13307
+ else:
13308
+ for localized_name in workspace_type_names_multilingual.values():
13309
+ if localized_name and localized_name.lower() == type_name_lower:
13310
+ return workspace_type
13311
+
13295
13312
  return None
13296
13313
 
13297
13314
  # end method definition
@@ -16036,6 +16053,11 @@ class OTCS:
16036
16053
 
16037
16054
  REST operation: GET /v2/businessworkspaces/{bw_id}/doctypes
16038
16055
 
16056
+ NOTE: the response field `validity` is the number of MONTHS a document
16057
+ of this type is valid. The UI has two separate fields validity in months
16058
+ and validity in years. The REST API returns validity = validity_in_months + (validity_in_years * 12).
16059
+ So if the UI shows 1 year and 6 months, the REST API returns validity = 18.
16060
+
16039
16061
  Args:
16040
16062
  workspace_id (int):
16041
16063
  Workspace ID or Workspace template ID.