Skip to content

Commit 69c2b75

Browse files
authored
Merge pull request #52 from aman-squareboat/fixForNonBreakingAPIChanges
Fix for non breaking api changes
2 parents 0b38d35 + d66482e commit 69c2b75

25 files changed

+700
-122
lines changed

imagekitio/models/results/AITags.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
class AITags:
2-
def __init__(self, name=None, confidence=None, source=None):
2+
def __init__(self, name=None, confidence=None, source=None,**kwargs):
33
self.name = name
44
self.confidence = confidence
55
self.source = source
6+
for key in kwargs.keys():
7+
self.__setattr__(key,kwargs[key])
8+
def __getattr__(self,key):
9+
return None
10+

imagekitio/models/results/BulkDeleteFileResult.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,14 @@
22

33

44
class BulkDeleteFileResult:
5-
def __init__(self, successfully_deleted_file_ids=None):
5+
def __init__(self, successfully_deleted_file_ids=None,**kwargs):
66
self.successfully_deleted_file_ids = successfully_deleted_file_ids
77
self.__response_metadata: ResponseMetadata = ResponseMetadata("", "", "")
8+
for key in kwargs.keys():
9+
self.__setattr__(key,kwargs[key])
10+
def __getattr__(self,key):
11+
return None
12+
813

914
@property
1015
def response_metadata(self):
Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from .CustomMetadataSchema import CustomMetadataSchema
2-
2+
from ...utils.utils import camel_dict_to_snake_dict
33

44
class CustomMetadataFieldsResult:
55
def __init__(
@@ -8,17 +8,16 @@ def __init__(
88
name=None,
99
label=None,
1010
schema: dict = {},
11+
**kwargs
1112
):
1213
self.id = id
1314
self.name = name
1415
self.label = label
1516
self.schema = CustomMetadataSchema(
16-
schema["type"],
17-
schema["selectOptions"] if "selectOptions" in schema else None,
18-
schema["defaultValue"] if "defaultValue" in schema else None,
19-
schema["isValueRequired"] if "isValueRequired" in schema else None,
20-
schema["minValue"] if "minValue" in schema else None,
21-
schema["maxValue"] if "maxValue" in schema else None,
22-
schema["minLength"] if "minLength" in schema else None,
23-
schema["maxValue"] if "maxValue" in schema else None,
17+
**camel_dict_to_snake_dict(schema)
2418
)
19+
for key in kwargs.keys():
20+
self.__setattr__(key,kwargs[key])
21+
def __getattr__(self,key):
22+
return None
23+

imagekitio/models/results/CustomMetadataFieldsResultWithResponseMetadata.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,10 @@ def __init__(
99
id=None,
1010
name=None,
1111
label=None,
12-
schema: CustomMetadataSchema = CustomMetadataSchema(
13-
None, None, None, None, None, None, None, None
14-
),
12+
schema:dict = {},
13+
**kwargs
1514
):
1615
super(CustomMetadataFieldsResultWithResponseMetadata, self).__init__(
17-
id, name, label, schema
16+
id, name, label, schema,**kwargs
1817
)
1918
self.response_metadata: ResponseMetadata = ResponseMetadata("", "", "")

imagekitio/models/results/CustomMetadataSchema.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ def __init__(
99
max_value=None,
1010
min_length=None,
1111
max_length=None,
12+
**kwargs
13+
1214
):
1315
self.type = type
1416
self.select_options = select_options
@@ -18,3 +20,8 @@ def __init__(
1820
self.max_value = max_value
1921
self.min_length = min_length
2022
self.max_length = max_length
23+
for key in kwargs.keys():
24+
self.__setattr__(key,kwargs[key])
25+
def __getattr__(self,key):
26+
return None
27+
Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,15 @@
11
class EmbeddedMetadata:
2-
def __init__(self, x_resolution=None, y_resolution=None, date_created=None, date_time_created=None):
2+
3+
def __init__(self, x_resolution=None, y_resolution=None, date_created=None, date_time_created=None,**kwargs):
34
self.x_resolution = x_resolution
45
self.y_resolution = y_resolution
56
self.date_created = date_created
67
self.date_time_created = date_time_created
8+
for key in kwargs.keys():
9+
self.__setattr__(key,kwargs[key])
10+
11+
def __getattr__(self,attr):
12+
return None
13+
14+
715

imagekitio/models/results/FileResult.py

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
from typing import List
22
from .AITags import AITags
33
from .VersionInfo import VersionInfo
4-
4+
from ...utils.utils import camel_dict_to_snake_dict
55

66
class FileResult:
77
def __init__(
@@ -28,6 +28,7 @@ def __init__(
2828
has_alpha=False,
2929
mime: str = None,
3030
extension_status: dict = {},
31+
**kwargs
3132
):
3233
self.type = type
3334
self.name = name
@@ -40,12 +41,10 @@ def __init__(
4041
for i in ai_tags:
4142
self.ai_tags.append(
4243
AITags(
43-
i["name"] if "name" in i else None,
44-
i["confidence"] if "confidence" in i else None,
45-
i["source"] if "source" in i else None,
44+
**camel_dict_to_snake_dict(i)
4645
)
4746
)
48-
self.version_info = VersionInfo(version_info["id"], version_info["name"])
47+
self.version_info = VersionInfo(**camel_dict_to_snake_dict(version_info))
4948
self.embedded_metadata = embedded_metadata
5049
self.custom_coordinates = custom_coordinates
5150
self.custom_metadata = custom_metadata
@@ -60,3 +59,8 @@ def __init__(
6059
self.has_alpha = has_alpha
6160
self.mime = mime
6261
self.extension_status = extension_status
62+
for key in kwargs.keys():
63+
self.__setattr__(key,kwargs[key])
64+
def __getattr__(self,key):
65+
return None
66+

imagekitio/models/results/FileResultWithResponseMetadata.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ def __init__(
1515
updated_at=None,
1616
file_id=None,
1717
tags=None,
18-
ai_tags: List[AITags] = AITags(None, None, None),
19-
version_info: VersionInfo = VersionInfo(None, None),
18+
ai_tags: List[AITags] = [],
19+
version_info: dict = {},
2020
embedded_metadata=None,
2121
custom_coordinates: str = "",
2222
custom_metadata=None,
@@ -31,6 +31,7 @@ def __init__(
3131
has_alpha=False,
3232
mime: str = None,
3333
extension_status=None,
34+
**kwargs
3435
):
3536
super().__init__(
3637
type,
@@ -55,5 +56,6 @@ def __init__(
5556
has_alpha,
5657
mime,
5758
extension_status,
59+
**kwargs
5860
)
5961
self.response_metadata: ResponseMetadata = ResponseMetadata("", "", "")

imagekitio/models/results/FolderResult.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,14 @@
22

33

44
class FolderResult:
5-
def __init__(self, job_id=None):
5+
def __init__(self, job_id=None,**kwargs):
66
self.job_id = job_id
77
self.__response_metadata: ResponseMetadata = ResponseMetadata("", "", "")
8+
for key in kwargs.keys():
9+
self.__setattr__(key,kwargs[key])
10+
def __getattr__(self,key):
11+
return None
12+
813

914
@property
1015
def response_metadata(self):

imagekitio/models/results/GetBulkJobStatusResult.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,16 @@
22

33

44
class GetBulkJobStatusResult:
5-
def __init__(self, job_id=None, type=None, status=None):
5+
def __init__(self, job_id=None, type=None, status=None,**kwargs):
66
self.job_id = job_id
77
self.type = type
88
self.status = status
99
self.__response_metadata: ResponseMetadata = ResponseMetadata("", "", "")
10+
for key in kwargs.keys():
11+
self.__setattr__(key,kwargs[key])
12+
def __getattr__(self,key):
13+
return None
14+
1015

1116
@property
1217
def response_metadata(self):

0 commit comments

Comments
 (0)