smartsheet-python-sdk 3.5.5__py3-none-any.whl

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 (195) hide show
  1. smartsheet/__init__.py +37 -0
  2. smartsheet/attachments.py +565 -0
  3. smartsheet/cells.py +164 -0
  4. smartsheet/contacts.py +78 -0
  5. smartsheet/discussions.py +411 -0
  6. smartsheet/events.py +79 -0
  7. smartsheet/exceptions.py +130 -0
  8. smartsheet/favorites.py +116 -0
  9. smartsheet/folders.py +438 -0
  10. smartsheet/groups.py +186 -0
  11. smartsheet/home.py +180 -0
  12. smartsheet/images.py +61 -0
  13. smartsheet/models/__init__.py +126 -0
  14. smartsheet/models/access_token.py +95 -0
  15. smartsheet/models/account.py +77 -0
  16. smartsheet/models/alternate_email.py +88 -0
  17. smartsheet/models/asset_share.py +165 -0
  18. smartsheet/models/asset_shares_paginated_result.py +84 -0
  19. smartsheet/models/attachment.py +181 -0
  20. smartsheet/models/auto_number_format.py +81 -0
  21. smartsheet/models/automation_action.py +162 -0
  22. smartsheet/models/automation_rule.py +164 -0
  23. smartsheet/models/boolean_object_value.py +38 -0
  24. smartsheet/models/bulk_item_failure.py +77 -0
  25. smartsheet/models/bulk_item_result.py +111 -0
  26. smartsheet/models/cell.py +193 -0
  27. smartsheet/models/cell_data_item.py +152 -0
  28. smartsheet/models/cell_history.py +67 -0
  29. smartsheet/models/cell_link.py +91 -0
  30. smartsheet/models/cell_link_widget_content.py +101 -0
  31. smartsheet/models/chart_widget_content.py +124 -0
  32. smartsheet/models/column.py +253 -0
  33. smartsheet/models/comment.py +126 -0
  34. smartsheet/models/contact.py +88 -0
  35. smartsheet/models/contact_object_value.py +59 -0
  36. smartsheet/models/container_destination.py +74 -0
  37. smartsheet/models/copy_or_move_row_destination.py +54 -0
  38. smartsheet/models/copy_or_move_row_directive.py +64 -0
  39. smartsheet/models/copy_or_move_row_result.py +67 -0
  40. smartsheet/models/criteria.py +82 -0
  41. smartsheet/models/cross_sheet_reference.py +134 -0
  42. smartsheet/models/currency.py +64 -0
  43. smartsheet/models/date_object_value.py +56 -0
  44. smartsheet/models/datetime_object_value.py +56 -0
  45. smartsheet/models/discussion.py +183 -0
  46. smartsheet/models/downloaded_file.py +106 -0
  47. smartsheet/models/duration.py +112 -0
  48. smartsheet/models/email.py +82 -0
  49. smartsheet/models/enums/__init__.py +56 -0
  50. smartsheet/models/enums/access_level.py +26 -0
  51. smartsheet/models/enums/asset_type.py +10 -0
  52. smartsheet/models/enums/attachment_parent_type.py +23 -0
  53. smartsheet/models/enums/attachment_sub_type.py +26 -0
  54. smartsheet/models/enums/attachment_type.py +29 -0
  55. smartsheet/models/enums/automation_action_frequency.py +24 -0
  56. smartsheet/models/enums/automation_action_type.py +23 -0
  57. smartsheet/models/enums/automation_rule_disabled_reason.py +27 -0
  58. smartsheet/models/enums/cell_link_status.py +28 -0
  59. smartsheet/models/enums/column_type.py +31 -0
  60. smartsheet/models/enums/criteria_target.py +21 -0
  61. smartsheet/models/enums/cross_sheet_reference_status.py +28 -0
  62. smartsheet/models/enums/currency_code.py +43 -0
  63. smartsheet/models/enums/day_descriptors.py +30 -0
  64. smartsheet/models/enums/day_ordinal.py +25 -0
  65. smartsheet/models/enums/event_action.py +76 -0
  66. smartsheet/models/enums/event_obejct_type.py +34 -0
  67. smartsheet/models/enums/event_source.py +27 -0
  68. smartsheet/models/enums/global_template.py +23 -0
  69. smartsheet/models/enums/operator.py +62 -0
  70. smartsheet/models/enums/paper_type.py +29 -0
  71. smartsheet/models/enums/predecessor_type.py +24 -0
  72. smartsheet/models/enums/publish_accessible_by.py +22 -0
  73. smartsheet/models/enums/schedule_type.py +25 -0
  74. smartsheet/models/enums/seat_type.py +17 -0
  75. smartsheet/models/enums/share_scope.py +22 -0
  76. smartsheet/models/enums/share_type.py +22 -0
  77. smartsheet/models/enums/sheet_email_format.py +23 -0
  78. smartsheet/models/enums/sheet_filter_operator.py +22 -0
  79. smartsheet/models/enums/sheet_filter_type.py +23 -0
  80. smartsheet/models/enums/sort_direction.py +22 -0
  81. smartsheet/models/enums/symbol.py +45 -0
  82. smartsheet/models/enums/system_column_type.py +25 -0
  83. smartsheet/models/enums/update_request_status.py +23 -0
  84. smartsheet/models/enums/user_status.py +23 -0
  85. smartsheet/models/enums/widget_type.py +32 -0
  86. smartsheet/models/error.py +74 -0
  87. smartsheet/models/error_result.py +117 -0
  88. smartsheet/models/event.py +153 -0
  89. smartsheet/models/event_result.py +86 -0
  90. smartsheet/models/explicit_null.py +24 -0
  91. smartsheet/models/favorite.py +81 -0
  92. smartsheet/models/folder.py +177 -0
  93. smartsheet/models/font_family.py +63 -0
  94. smartsheet/models/format_details.py +55 -0
  95. smartsheet/models/format_tables.py +191 -0
  96. smartsheet/models/group.py +134 -0
  97. smartsheet/models/group_member.py +104 -0
  98. smartsheet/models/home.py +110 -0
  99. smartsheet/models/hyperlink.py +81 -0
  100. smartsheet/models/image.py +101 -0
  101. smartsheet/models/image_url.py +91 -0
  102. smartsheet/models/image_url_map.py +68 -0
  103. smartsheet/models/image_widget_content.py +117 -0
  104. smartsheet/models/index_result.py +118 -0
  105. smartsheet/models/json_object.py +59 -0
  106. smartsheet/models/multi_contact_object_value.py +49 -0
  107. smartsheet/models/multi_picklist_object_value.py +48 -0
  108. smartsheet/models/multi_row_email.py +60 -0
  109. smartsheet/models/number_object_value.py +38 -0
  110. smartsheet/models/o_auth_error.py +86 -0
  111. smartsheet/models/object_value.py +130 -0
  112. smartsheet/models/paginated_children_result.py +80 -0
  113. smartsheet/models/predecessor.py +102 -0
  114. smartsheet/models/predecessor_list.py +49 -0
  115. smartsheet/models/primitive_object_value.py +59 -0
  116. smartsheet/models/profile_image.py +72 -0
  117. smartsheet/models/project_settings.py +89 -0
  118. smartsheet/models/recipient.py +63 -0
  119. smartsheet/models/report.py +90 -0
  120. smartsheet/models/report_cell.py +59 -0
  121. smartsheet/models/report_column.py +67 -0
  122. smartsheet/models/report_publish.py +95 -0
  123. smartsheet/models/report_row.py +68 -0
  124. smartsheet/models/report_widget_content.py +78 -0
  125. smartsheet/models/result.py +105 -0
  126. smartsheet/models/row.py +336 -0
  127. smartsheet/models/row_email.py +83 -0
  128. smartsheet/models/row_mapping.py +77 -0
  129. smartsheet/models/schedule.py +140 -0
  130. smartsheet/models/scope.py +70 -0
  131. smartsheet/models/search_result.py +67 -0
  132. smartsheet/models/search_result_item.py +150 -0
  133. smartsheet/models/selection_range.py +86 -0
  134. smartsheet/models/sent_update_request.py +172 -0
  135. smartsheet/models/server_info.py +67 -0
  136. smartsheet/models/share.py +183 -0
  137. smartsheet/models/sheet.py +462 -0
  138. smartsheet/models/sheet_email.py +81 -0
  139. smartsheet/models/sheet_filter.py +106 -0
  140. smartsheet/models/sheet_filter_details.py +76 -0
  141. smartsheet/models/sheet_publish.py +184 -0
  142. smartsheet/models/sheet_summary.py +59 -0
  143. smartsheet/models/sheet_user_permissions.py +58 -0
  144. smartsheet/models/sheet_user_settings.py +72 -0
  145. smartsheet/models/shortcut_data_item.py +102 -0
  146. smartsheet/models/shortcut_widget_content.py +61 -0
  147. smartsheet/models/sight.py +175 -0
  148. smartsheet/models/sight_publish.py +77 -0
  149. smartsheet/models/sort_criterion.py +64 -0
  150. smartsheet/models/sort_specifier.py +55 -0
  151. smartsheet/models/source.py +83 -0
  152. smartsheet/models/string_object_value.py +38 -0
  153. smartsheet/models/summary_field.py +256 -0
  154. smartsheet/models/template.py +171 -0
  155. smartsheet/models/title_rich_text_widget_content.py +68 -0
  156. smartsheet/models/token_paginated_result.py +79 -0
  157. smartsheet/models/update_request.py +110 -0
  158. smartsheet/models/user.py +58 -0
  159. smartsheet/models/user_model.py +280 -0
  160. smartsheet/models/user_plan.py +77 -0
  161. smartsheet/models/user_profile.py +89 -0
  162. smartsheet/models/version.py +57 -0
  163. smartsheet/models/web_content_widget_content.py +60 -0
  164. smartsheet/models/webhook.py +219 -0
  165. smartsheet/models/webhook_secret.py +58 -0
  166. smartsheet/models/webhook_stats.py +76 -0
  167. smartsheet/models/webhook_subscope.py +50 -0
  168. smartsheet/models/widget.py +211 -0
  169. smartsheet/models/widget_content.py +52 -0
  170. smartsheet/models/widget_hyperlink.py +74 -0
  171. smartsheet/models/workspace.py +185 -0
  172. smartsheet/object_value.py +72 -0
  173. smartsheet/passthrough.py +127 -0
  174. smartsheet/reports.py +382 -0
  175. smartsheet/search.py +100 -0
  176. smartsheet/server.py +48 -0
  177. smartsheet/session.py +70 -0
  178. smartsheet/sharing.py +163 -0
  179. smartsheet/sheets.py +2062 -0
  180. smartsheet/sights.py +370 -0
  181. smartsheet/smartsheet.py +684 -0
  182. smartsheet/templates.py +87 -0
  183. smartsheet/token.py +128 -0
  184. smartsheet/types.py +323 -0
  185. smartsheet/users.py +490 -0
  186. smartsheet/util.py +199 -0
  187. smartsheet/version.py +34 -0
  188. smartsheet/webhooks.py +161 -0
  189. smartsheet/workspaces.py +647 -0
  190. smartsheet_python_sdk-3.5.5.dist-info/METADATA +120 -0
  191. smartsheet_python_sdk-3.5.5.dist-info/RECORD +195 -0
  192. smartsheet_python_sdk-3.5.5.dist-info/WHEEL +5 -0
  193. smartsheet_python_sdk-3.5.5.dist-info/licenses/LICENSE.md +201 -0
  194. smartsheet_python_sdk-3.5.5.dist-info/licenses/NOTICE +10 -0
  195. smartsheet_python_sdk-3.5.5.dist-info/top_level.txt +1 -0
@@ -0,0 +1,152 @@
1
+ # pylint: disable=C0111,R0902,R0904,R0912,R0913,R0915,E1101
2
+ # Smartsheet Python SDK.
3
+ #
4
+ # Copyright 2018 Smartsheet.com, Inc.
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License"): you may
7
+ # not use this file except in compliance with the License. You may obtain
8
+ # a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
14
+ # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
15
+ # License for the specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ from __future__ import absolute_import
19
+
20
+ from ..object_value import assign_to_object_value
21
+ from ..types import Number, String, TypedObject, json
22
+ from ..util import deserialize, serialize
23
+ from .boolean_object_value import BooleanObjectValue
24
+ from .cell import Cell
25
+ from .number_object_value import NumberObjectValue
26
+ from .object_value import ObjectValue
27
+ from .string_object_value import StringObjectValue
28
+ from .summary_field import SummaryField
29
+
30
+
31
+ class CellDataItem:
32
+ """Smartsheet CellDataItem data model."""
33
+
34
+ def __init__(self, props=None, base_obj=None):
35
+ """Initialize the CellDataItem model."""
36
+ self._base = None
37
+ if base_obj is not None:
38
+ self._base = base_obj
39
+
40
+ self._cell = TypedObject(Cell)
41
+ self._column_id = Number()
42
+ self._data_source = String()
43
+ self._label = String()
44
+ self._label_format = String()
45
+ self._object_value = None
46
+ self._order = Number()
47
+ self._profile_field = TypedObject(SummaryField)
48
+ self._row_id = Number()
49
+ self._sheet_id = Number()
50
+ self._value_format = String()
51
+
52
+ if props:
53
+ deserialize(self, props)
54
+
55
+ self.__initialized = True
56
+
57
+ @property
58
+ def cell(self):
59
+ return self._cell.value
60
+
61
+ @cell.setter
62
+ def cell(self, value):
63
+ self._cell.value = value
64
+
65
+ @property
66
+ def column_id(self):
67
+ return self._column_id.value
68
+
69
+ @column_id.setter
70
+ def column_id(self, value):
71
+ self._column_id.value = value
72
+
73
+ @property
74
+ def data_source(self):
75
+ return self._data_source.value
76
+
77
+ @data_source.setter
78
+ def data_source(self, value):
79
+ self._data_source.value = value
80
+
81
+ @property
82
+ def label(self):
83
+ return self._label.value
84
+
85
+ @label.setter
86
+ def label(self, value):
87
+ self._label.value = value
88
+
89
+ @property
90
+ def label_format(self):
91
+ return self._label_format.value
92
+
93
+ @label_format.setter
94
+ def label_format(self, value):
95
+ self._label_format.value = value
96
+
97
+ @property
98
+ def object_value(self):
99
+ return self._object_value
100
+
101
+ @object_value.setter
102
+ def object_value(self, value):
103
+ self._object_value = assign_to_object_value(value)
104
+
105
+ @property
106
+ def order(self):
107
+ return self._order.value
108
+
109
+ @order.setter
110
+ def order(self, value):
111
+ self._order.value = value
112
+
113
+ @property
114
+ def profile_field(self):
115
+ return self._profile_field.value
116
+
117
+ @profile_field.setter
118
+ def profile_field(self, value):
119
+ self._profile_field.value = value
120
+
121
+ @property
122
+ def row_id(self):
123
+ return self._row_id.value
124
+
125
+ @row_id.setter
126
+ def row_id(self, value):
127
+ self._row_id.value = value
128
+
129
+ @property
130
+ def sheet_id(self):
131
+ return self._sheet_id.value
132
+
133
+ @sheet_id.setter
134
+ def sheet_id(self, value):
135
+ self._sheet_id.value = value
136
+
137
+ @property
138
+ def value_format(self):
139
+ return self._value_format.value
140
+
141
+ @value_format.setter
142
+ def value_format(self, value):
143
+ self._value_format.value = value
144
+
145
+ def to_dict(self):
146
+ return serialize(self)
147
+
148
+ def to_json(self):
149
+ return json.dumps(self.to_dict())
150
+
151
+ def __str__(self):
152
+ return self.to_json()
@@ -0,0 +1,67 @@
1
+ # pylint: disable=C0111,R0902,R0904,R0912,R0913,R0915,E1101
2
+ # Smartsheet Python SDK.
3
+ #
4
+ # Copyright 2018 Smartsheet.com, Inc.
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License"): you may
7
+ # not use this file except in compliance with the License. You may obtain
8
+ # a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
14
+ # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
15
+ # License for the specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ from __future__ import absolute_import
19
+
20
+ from ..types import Timestamp, TypedObject, json
21
+ from ..util import deserialize, serialize
22
+ from .cell import Cell
23
+ from .user import User
24
+
25
+
26
+ class CellHistory(Cell):
27
+
28
+ """Smartsheet CellHistory data model."""
29
+
30
+ def __init__(self, props=None, base_obj=None):
31
+ """Initialize the CellHistory model."""
32
+ super().__init__(None, base_obj)
33
+ self._base = None
34
+ if base_obj is not None:
35
+ self._base = base_obj
36
+
37
+ self._modified_at = Timestamp()
38
+ self._modified_by = TypedObject(User)
39
+
40
+ if props:
41
+ deserialize(self, props)
42
+ self.__initialized = True
43
+
44
+ @property
45
+ def modified_at(self):
46
+ return self._modified_at.value
47
+
48
+ @modified_at.setter
49
+ def modified_at(self, value):
50
+ self._modified_at.value = value
51
+
52
+ @property
53
+ def modified_by(self):
54
+ return self._modified_by.value
55
+
56
+ @modified_by.setter
57
+ def modified_by(self, value):
58
+ self._modified_by.value = value
59
+
60
+ def to_dict(self):
61
+ return serialize(self)
62
+
63
+ def to_json(self):
64
+ return json.dumps(self.to_dict())
65
+
66
+ def __str__(self):
67
+ return self.to_json()
@@ -0,0 +1,91 @@
1
+ # pylint: disable=C0111,R0902,R0904,R0912,R0913,R0915,E1101
2
+ # Smartsheet Python SDK.
3
+ #
4
+ # Copyright 2018 Smartsheet.com, Inc.
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License"): you may
7
+ # not use this file except in compliance with the License. You may obtain
8
+ # a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
14
+ # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
15
+ # License for the specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ from __future__ import absolute_import
19
+
20
+ from ..types import EnumeratedValue, Number, String, json
21
+ from ..util import deserialize, serialize
22
+ from .enums import CellLinkStatus
23
+
24
+
25
+ class CellLink:
26
+
27
+ """Smartsheet CellLink data model."""
28
+
29
+ def __init__(self, props=None, base_obj=None):
30
+ """Initialize the CellLink model."""
31
+ self._base = None
32
+ if base_obj is not None:
33
+ self._base = base_obj
34
+
35
+ self._column_id = Number()
36
+ self._row_id = Number()
37
+ self._sheet_id = Number()
38
+ self._sheet_name = String()
39
+ self._status = EnumeratedValue(CellLinkStatus)
40
+
41
+ if props:
42
+ deserialize(self, props)
43
+
44
+ @property
45
+ def column_id(self):
46
+ return self._column_id.value
47
+
48
+ @column_id.setter
49
+ def column_id(self, value):
50
+ self._column_id.value = value
51
+
52
+ @property
53
+ def row_id(self):
54
+ return self._row_id.value
55
+
56
+ @row_id.setter
57
+ def row_id(self, value):
58
+ self._row_id.value = value
59
+
60
+ @property
61
+ def sheet_id(self):
62
+ return self._sheet_id.value
63
+
64
+ @sheet_id.setter
65
+ def sheet_id(self, value):
66
+ self._sheet_id.value = value
67
+
68
+ @property
69
+ def sheet_name(self):
70
+ return self._sheet_name.value
71
+
72
+ @sheet_name.setter
73
+ def sheet_name(self, value):
74
+ self._sheet_name.value = value
75
+
76
+ @property
77
+ def status(self):
78
+ return self._status
79
+
80
+ @status.setter
81
+ def status(self, value):
82
+ self._status.set(value)
83
+
84
+ def to_dict(self):
85
+ return serialize(self)
86
+
87
+ def to_json(self):
88
+ return json.dumps(self.to_dict())
89
+
90
+ def __str__(self):
91
+ return self.to_json()
@@ -0,0 +1,101 @@
1
+ # pylint: disable=C0111,R0902,R0904,R0912,R0913,R0915,E1101,W0201
2
+ # Smartsheet Python SDK.
3
+ #
4
+ # Copyright 2019 Smartsheet.com, Inc.
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License"): you may
7
+ # not use this file except in compliance with the License. You may obtain
8
+ # a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
14
+ # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
15
+ # License for the specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ from __future__ import absolute_import
19
+
20
+ from ..types import Number, TypedList, TypedObject, json
21
+ from ..util import deserialize, serialize
22
+ from .cell_data_item import CellDataItem
23
+ from .column import Column
24
+ from .enums import WidgetType
25
+ from .widget_content import WidgetContent
26
+ from .widget_hyperlink import WidgetHyperlink
27
+
28
+
29
+ class CellLinkWidgetContent(WidgetContent):
30
+ """Smartsheet CellLinkWidgetContent data model."""
31
+
32
+ def __init__(self, props=None, base_obj=None):
33
+ """Initialize the CellLinkWidgetContent model."""
34
+ super().__init__(WidgetType.METRIC, base_obj)
35
+ self._base = None
36
+ if base_obj is not None:
37
+ self._base = base_obj
38
+
39
+ # Represents the CellLinkWidgetContent object.
40
+ self._sheet_id = Number()
41
+ self._cell_data = TypedList(CellDataItem)
42
+ self._columns = TypedList(Column)
43
+ self._hyperlink = TypedObject(WidgetHyperlink)
44
+
45
+ if props:
46
+ deserialize(self, props)
47
+
48
+ self.__initialized = True
49
+
50
+ def __getattr__(self, key):
51
+ if key == "format":
52
+ return self.format_
53
+ else:
54
+ raise AttributeError(key)
55
+
56
+ def __setattr__(self, key, value):
57
+ if key == "format":
58
+ self.format_ = value
59
+ else:
60
+ super().__setattr__(key, value)
61
+
62
+ @property
63
+ def sheet_id(self):
64
+ return self._sheet_id.value
65
+
66
+ @sheet_id.setter
67
+ def sheet_id(self, value):
68
+ self._sheet_id.value = value
69
+
70
+ @property
71
+ def cell_data(self):
72
+ return self._cell_data
73
+
74
+ @cell_data.setter
75
+ def cell_data(self, value):
76
+ self._cell_data.load(value)
77
+
78
+ @property
79
+ def columns(self):
80
+ return self._columns
81
+
82
+ @columns.setter
83
+ def columns(self, value):
84
+ self._columns.load(value)
85
+
86
+ @property
87
+ def hyperlink(self):
88
+ return self._hyperlink.value
89
+
90
+ @hyperlink.setter
91
+ def hyperlink(self, value):
92
+ self._hyperlink.value = value
93
+
94
+ def to_dict(self):
95
+ return serialize(self)
96
+
97
+ def to_json(self):
98
+ return json.dumps(self.to_dict())
99
+
100
+ def __str__(self):
101
+ return self.to_json()
@@ -0,0 +1,124 @@
1
+ # pylint: disable=C0111,R0902,R0904,R0912,R0913,R0915,E1101
2
+ # Smartsheet Python SDK.
3
+ #
4
+ # Copyright 2019 Smartsheet.com, Inc.
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License"): you may
7
+ # not use this file except in compliance with the License. You may obtain
8
+ # a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
14
+ # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
15
+ # License for the specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ from __future__ import absolute_import
19
+
20
+ from ..types import Number, TypedList, TypedObject, json, six
21
+ from ..util import deserialize, serialize
22
+ from .enums import WidgetType
23
+ from .selection_range import SelectionRange
24
+ from .widget_content import WidgetContent
25
+ from .widget_hyperlink import WidgetHyperlink
26
+
27
+
28
+ class ChartWidgetContent(WidgetContent):
29
+ """Smartsheet ChartWidgetContent data model."""
30
+
31
+ def __init__(self, props=None, base_obj=None):
32
+ """Initialize the ChartWidgetContent model."""
33
+ super().__init__(WidgetType.CHART, base_obj)
34
+ self._base = None
35
+ if base_obj is not None:
36
+ self._base = base_obj
37
+
38
+ # Represents the ChartWidgetContent object
39
+ self._report_id = Number()
40
+ self._sheet_id = Number()
41
+ self._axes = TypedObject(object)
42
+ self._hyperlink = TypedObject(WidgetHyperlink)
43
+ self._included_column_ids = TypedList(six.integer_types)
44
+ self._legend = TypedObject(object)
45
+ self._selection_ranges = TypedList(SelectionRange)
46
+ self._series = TypedObject(object)
47
+
48
+ if props:
49
+ deserialize(self, props)
50
+
51
+ self.__initialized = True
52
+
53
+ @property
54
+ def report_id(self):
55
+ return self._report_id.value
56
+
57
+ @report_id.setter
58
+ def report_id(self, value):
59
+ self._report_id.value = value
60
+
61
+ @property
62
+ def sheet_id(self):
63
+ return self._sheet_id.value
64
+
65
+ @sheet_id.setter
66
+ def sheet_id(self, value):
67
+ self._sheet_id.value = value
68
+
69
+ @property
70
+ def axes(self):
71
+ return self._axes.value
72
+
73
+ @axes.setter
74
+ def axes(self, value):
75
+ self._axes.value = value
76
+
77
+ @property
78
+ def hyperlink(self):
79
+ return self._hyperlink.value
80
+
81
+ @hyperlink.setter
82
+ def hyperlink(self, value):
83
+ self._hyperlink.value = value
84
+
85
+ @property
86
+ def included_column_ids(self):
87
+ return self._included_column_ids
88
+
89
+ @included_column_ids.setter
90
+ def included_column_ids(self, value):
91
+ self._included_column_ids.load(value)
92
+
93
+ @property
94
+ def legend(self):
95
+ return self._legend.value
96
+
97
+ @legend.setter
98
+ def legend(self, value):
99
+ self._legend.value = value
100
+
101
+ @property
102
+ def selection_ranges(self):
103
+ return self._selection_ranges
104
+
105
+ @selection_ranges.setter
106
+ def selection_ranges(self, value):
107
+ self._selection_ranges.load(value)
108
+
109
+ @property
110
+ def series(self):
111
+ return self._series.value
112
+
113
+ @series.setter
114
+ def series(self, value):
115
+ self._series.value = value
116
+
117
+ def to_dict(self):
118
+ return serialize(self)
119
+
120
+ def to_json(self):
121
+ return json.dumps(self.to_dict())
122
+
123
+ def __str__(self):
124
+ return self.to_json()