|
19 | 19 | map_environment_document_to_context, |
20 | 20 | map_environment_document_to_environment_updated_at, |
21 | 21 | map_segment_results_to_identity_segments, |
| 22 | + resolve_trait_values, |
22 | 23 | ) |
23 | 24 | from flagsmith.models import DefaultFlag, Flags, Segment |
24 | 25 | from flagsmith.offline_handlers import OfflineHandler |
@@ -318,21 +319,10 @@ def track_event( |
318 | 319 | self._pipeline_analytics_processor.record_custom_event( |
319 | 320 | event_name=event_name, |
320 | 321 | identity_identifier=identity_identifier, |
321 | | - traits=self._resolve_traits(traits), |
| 322 | + traits=resolve_trait_values(traits), |
322 | 323 | metadata=metadata, |
323 | 324 | ) |
324 | 325 |
|
325 | | - @staticmethod |
326 | | - def _resolve_traits( |
327 | | - traits: typing.Optional[TraitMapping], |
328 | | - ) -> typing.Optional[typing.Dict[str, typing.Any]]: |
329 | | - if not traits: |
330 | | - return None |
331 | | - return { |
332 | | - key: (val["value"] if isinstance(val, dict) else val) |
333 | | - for key, val in traits.items() |
334 | | - } |
335 | | - |
336 | 326 | def update_environment(self) -> None: |
337 | 327 | try: |
338 | 328 | environment_data = self._get_json_response( |
@@ -414,7 +404,7 @@ def _get_identity_flags_from_document( |
414 | 404 | default_flag_handler=self.default_flag_handler, |
415 | 405 | pipeline_analytics_processor=self._pipeline_analytics_processor, |
416 | 406 | identity_identifier=identifier, |
417 | | - traits=self._resolve_traits(traits), |
| 407 | + traits=resolve_trait_values(traits), |
418 | 408 | ) |
419 | 409 |
|
420 | 410 | def _get_environment_flags_from_api(self) -> Flags: |
@@ -461,7 +451,7 @@ def _get_identity_flags_from_api( |
461 | 451 | default_flag_handler=self.default_flag_handler, |
462 | 452 | pipeline_analytics_processor=self._pipeline_analytics_processor, |
463 | 453 | identity_identifier=identifier, |
464 | | - traits=self._resolve_traits(traits), |
| 454 | + traits=resolve_trait_values(traits), |
465 | 455 | ) |
466 | 456 | except FlagsmithAPIError: |
467 | 457 | if self.offline_handler: |
|
0 commit comments