Best-effort parse for JSON list fields stored in SQLite.
(value: Any)
| 35 | |
| 36 | |
| 37 | def _deserialize_json_list(value: Any) -> List[Any]: |
| 38 | """Best-effort parse for JSON list fields stored in SQLite.""" |
| 39 | if isinstance(value, list): |
| 40 | return value |
| 41 | if not value: |
| 42 | return [] |
| 43 | if isinstance(value, str): |
| 44 | try: |
| 45 | parsed = json.loads(value) |
| 46 | except json.JSONDecodeError: |
| 47 | return [value] |
| 48 | return parsed if isinstance(parsed, list) else [parsed] |
| 49 | return [value] |
| 50 | |
| 51 | |
| 52 | def _load_json_metadata(raw: Any) -> Dict[str, Any]: |
no outgoing calls
no test coverage detected