Office365-REST-Python-Client 2.5.5__py3-none-any.whl → 2.5.7__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 (270) hide show
  1. {Office365_REST_Python_Client-2.5.5.dist-info → Office365_REST_Python_Client-2.5.7.dist-info}/METADATA +6 -6
  2. {Office365_REST_Python_Client-2.5.5.dist-info → Office365_REST_Python_Client-2.5.7.dist-info}/RECORD +269 -222
  3. office365/booking/virtualevents/__init__.py +0 -0
  4. office365/booking/virtualevents/root.py +5 -0
  5. office365/communications/calls/participant.py +4 -5
  6. office365/directory/administrative_unit.py +9 -2
  7. office365/directory/applications/application.py +3 -3
  8. office365/directory/applications/roles/assignment_collection.py +1 -1
  9. office365/directory/applications/roles/collection.py +6 -2
  10. office365/directory/applications/roles/role.py +1 -1
  11. office365/directory/audit/provisioning/object_summary.py +30 -1
  12. office365/directory/authentication/method_configuration.py +9 -0
  13. office365/directory/authentication/method_mode_detail.py +8 -0
  14. office365/directory/authentication/method_target.py +5 -0
  15. office365/directory/authentication/methods/fido.py +8 -0
  16. office365/directory/authentication/methods/password.py +23 -0
  17. office365/directory/authentication/strength_root.py +5 -0
  18. office365/directory/certificates/auth_configuration.py +1 -3
  19. office365/directory/custom_security_attribute_definition.py +7 -0
  20. office365/directory/device_local_credential_info.py +6 -0
  21. office365/directory/directory.py +40 -12
  22. office365/directory/groups/group.py +2 -6
  23. office365/directory/identities/conditional_access_root.py +10 -1
  24. office365/directory/identities/container.py +3 -9
  25. office365/directory/identities/providers/builtin_identity.py +3 -2
  26. office365/directory/identities/providers/saml_or_wsfed.py +4 -5
  27. office365/directory/identitygovernance/appconsent/request_collection.py +1 -1
  28. office365/directory/identitygovernance/governance.py +14 -3
  29. office365/directory/identitygovernance/privilegedaccess/__init__.py +0 -0
  30. office365/directory/identitygovernance/privilegedaccess/root.py +5 -0
  31. office365/directory/identitygovernance/termsofuse/agreement_acceptance.py +8 -0
  32. office365/directory/identitygovernance/userconsent/request_collection.py +1 -1
  33. office365/directory/insights/resource_reference.py +1 -1
  34. office365/directory/key_credential.py +3 -0
  35. office365/directory/licenses/assignment_state.py +26 -2
  36. office365/directory/licenses/details.py +4 -3
  37. office365/directory/licenses/subscribed_sku.py +8 -10
  38. office365/directory/object_collection.py +40 -25
  39. office365/directory/password_credential.py +3 -0
  40. office365/directory/permissions/default_user_role.py +5 -0
  41. office365/directory/permissions/grants/condition_set.py +4 -2
  42. office365/directory/permissions/grants/oauth2.py +7 -10
  43. office365/directory/policies/authorization.py +50 -3
  44. office365/directory/policies/device_registration.py +6 -0
  45. office365/directory/policies/permission_grant.py +2 -0
  46. office365/directory/policies/root.py +13 -0
  47. office365/directory/profile_photo.py +6 -6
  48. office365/directory/protection/riskyusers/risky_user.py +4 -4
  49. office365/directory/rolemanagement/resource_action.py +10 -0
  50. office365/directory/rolemanagement/role_permission.py +10 -0
  51. office365/directory/security/alerts/alert.py +5 -7
  52. office365/directory/security/attacksimulations/landing_page.py +5 -0
  53. office365/directory/security/attacksimulations/operation.py +5 -0
  54. office365/directory/security/attacksimulations/report.py +8 -1
  55. office365/directory/security/attacksimulations/root.py +33 -0
  56. office365/directory/security/attacksimulations/users/__init__.py +0 -0
  57. office365/directory/security/attacksimulations/users/details.py +5 -0
  58. office365/directory/security/hunting_query_results.py +5 -0
  59. office365/directory/security/incidents/incident.py +8 -13
  60. office365/directory/security/security.py +20 -3
  61. office365/directory/security/threatintelligence/article_indicator.py +7 -0
  62. office365/directory/serviceprincipals/service_principal.py +6 -12
  63. office365/directory/synchronization/schema.py +16 -0
  64. office365/directory/synchronization/synchronization.py +2 -0
  65. office365/directory/users/activities/history_item.py +3 -2
  66. office365/directory/users/user.py +60 -10
  67. office365/entity_collection.py +3 -2
  68. office365/graph_client.py +58 -30
  69. office365/intune/audit/event.py +1 -3
  70. office365/intune/audit/event_collection.py +1 -1
  71. office365/intune/devices/alternative_security_id.py +4 -0
  72. office365/intune/devices/collection.py +57 -0
  73. office365/intune/devices/device.py +38 -10
  74. office365/intune/devices/management/management.py +12 -0
  75. office365/intune/organizations/organization.py +1 -0
  76. office365/onedrive/analytics/item_activity_stat.py +9 -0
  77. office365/onedrive/analytics/item_analytics.py +1 -0
  78. office365/onedrive/contenttypes/content_type.py +4 -12
  79. office365/onedrive/driveitems/driveItem.py +76 -7
  80. office365/onedrive/files/hashes.py +5 -0
  81. office365/onedrive/lists/collection.py +2 -2
  82. office365/onedrive/lists/list.py +1 -1
  83. office365/onedrive/operations/long_running.py +6 -6
  84. office365/onedrive/operations/rich_long_running.py +4 -3
  85. office365/onedrive/permissions/collection.py +1 -14
  86. office365/onedrive/sharepoint_settings.py +6 -6
  87. office365/onedrive/sitepages/__init__.py +0 -0
  88. office365/onedrive/sitepages/base.py +29 -0
  89. office365/onedrive/sitepages/canvas_layout.py +43 -0
  90. office365/onedrive/sitepages/collection.py +32 -0
  91. office365/onedrive/sitepages/horizontal_section.py +23 -0
  92. office365/onedrive/sitepages/horizontal_section_column.py +27 -0
  93. office365/onedrive/sitepages/site_page.py +116 -0
  94. office365/onedrive/sitepages/title_area.py +13 -0
  95. office365/onedrive/sitepages/vertical_section.py +27 -0
  96. office365/onedrive/sitepages/web_part.py +5 -0
  97. office365/onedrive/sites/site.py +10 -0
  98. office365/onedrive/sites/sites_with_root.py +1 -3
  99. office365/onedrive/termstore/store.py +2 -4
  100. office365/onedrive/termstore/terms/collection.py +1 -2
  101. office365/onedrive/workbooks/charts/data_labels.py +13 -1
  102. office365/onedrive/workbooks/filter.py +9 -0
  103. office365/onedrive/workbooks/filter_criteria.py +5 -0
  104. office365/onedrive/workbooks/functions/functions.py +6 -3
  105. office365/onedrive/workbooks/functions/result.py +2 -0
  106. office365/onedrive/workbooks/operations/workbook.py +7 -10
  107. office365/onedrive/workbooks/tables/pivot_table.py +9 -9
  108. office365/onedrive/workbooks/tables/sort.py +5 -0
  109. office365/onedrive/workbooks/tables/table.py +57 -0
  110. office365/onedrive/workbooks/worksheets/collection.py +0 -6
  111. office365/onedrive/workbooks/worksheets/protection.py +22 -1
  112. office365/onedrive/workbooks/worksheets/protection_options.py +7 -0
  113. office365/outlook/calendar/calendar.py +1 -3
  114. office365/outlook/calendar/events/event.py +45 -0
  115. office365/outlook/calendar/permissions/permission.py +7 -7
  116. office365/outlook/calendar/place.py +5 -3
  117. office365/outlook/calendar/response_status.py +11 -0
  118. office365/outlook/calendar/rooms/room.py +14 -0
  119. office365/outlook/mail/attachments/collection.py +6 -1
  120. office365/outlook/mail/automatic_replies_mailtips.py +5 -0
  121. office365/outlook/mail/conversation.py +1 -3
  122. office365/outlook/mail/folders/folder.py +1 -3
  123. office365/outlook/mail/messages/message.py +1 -1
  124. office365/outlook/mail/tips.py +17 -0
  125. office365/planner/plans/plan.py +11 -1
  126. office365/reports/root.py +83 -4
  127. office365/runtime/auth/authentication_context.py +12 -2
  128. office365/runtime/auth/providers/acs_token_provider.py +10 -7
  129. office365/runtime/auth/sts_profile.py +0 -1
  130. office365/runtime/client_object.py +18 -14
  131. office365/runtime/client_object_collection.py +8 -23
  132. office365/runtime/client_request_exception.py +1 -3
  133. office365/runtime/client_result.py +11 -14
  134. office365/runtime/client_runtime_context.py +11 -21
  135. office365/runtime/odata/json_format.py +7 -9
  136. office365/runtime/odata/request.py +12 -2
  137. office365/runtime/odata/v3/batch_request.py +7 -15
  138. office365/runtime/odata/v4/batch_request.py +13 -21
  139. office365/runtime/queries/upload_session.py +5 -0
  140. office365/runtime/types/event_handler.py +1 -1
  141. office365/search/entity.py +3 -2
  142. office365/sharepoint/activities/facets/delete.py +1 -1
  143. office365/sharepoint/activities/tracked_item_service.py +2 -3
  144. office365/sharepoint/administration/web_application.py +8 -7
  145. office365/sharepoint/alerts/collection.py +2 -1
  146. office365/sharepoint/attachments/attachment.py +3 -9
  147. office365/sharepoint/audit/audit.py +3 -2
  148. office365/sharepoint/changes/alert.py +4 -3
  149. office365/sharepoint/changes/collection.py +7 -10
  150. office365/sharepoint/changes/content_type.py +4 -4
  151. office365/sharepoint/changes/field.py +4 -5
  152. office365/sharepoint/changes/item.py +34 -7
  153. office365/sharepoint/changes/list.py +4 -4
  154. office365/sharepoint/changes/user.py +5 -6
  155. office365/sharepoint/client_context.py +4 -2
  156. office365/sharepoint/clientsidecomponent/component_context_info.py +4 -3
  157. office365/sharepoint/contentcenter/machinelearning/enabled.py +4 -3
  158. office365/sharepoint/contentcenter/machinelearning/hub.py +6 -6
  159. office365/sharepoint/contentcenter/machinelearning/models/collection.py +1 -1
  160. office365/sharepoint/contenttypes/content_type.py +13 -1
  161. office365/sharepoint/contenttypes/fieldlinks/collection.py +5 -7
  162. office365/sharepoint/contenttypes/fieldlinks/field_link.py +14 -22
  163. office365/sharepoint/directory/helper.py +2 -0
  164. office365/sharepoint/entity.py +12 -5
  165. office365/sharepoint/entity_collection.py +1 -3
  166. office365/sharepoint/eventreceivers/definition.py +8 -12
  167. office365/sharepoint/features/collection.py +1 -2
  168. office365/sharepoint/features/definitions/definition.py +6 -3
  169. office365/sharepoint/fields/calculated.py +8 -14
  170. office365/sharepoint/fields/collection.py +46 -13
  171. office365/sharepoint/fields/computed.py +4 -5
  172. office365/sharepoint/fields/currency.py +7 -11
  173. office365/sharepoint/fields/date_time.py +4 -8
  174. office365/sharepoint/fields/field.py +6 -16
  175. office365/sharepoint/fields/lookup.py +11 -9
  176. office365/sharepoint/fields/multi_choice.py +8 -12
  177. office365/sharepoint/fields/multi_line_text.py +10 -14
  178. office365/sharepoint/fields/number.py +13 -26
  179. office365/sharepoint/fields/rating_scale.py +6 -10
  180. office365/sharepoint/fields/related_field.py +10 -17
  181. office365/sharepoint/fields/url.py +4 -5
  182. office365/sharepoint/fields/user.py +10 -9
  183. office365/sharepoint/files/collection.py +17 -15
  184. office365/sharepoint/files/file.py +30 -23
  185. office365/sharepoint/folders/collection.py +22 -5
  186. office365/sharepoint/folders/coloring.py +11 -9
  187. office365/sharepoint/folders/coloring_information.py +38 -0
  188. office365/sharepoint/folders/folder.py +23 -25
  189. office365/sharepoint/likes/liked_by_information.py +7 -10
  190. office365/sharepoint/likes/user_entity.py +6 -8
  191. office365/sharepoint/listitems/form_update_value.py +17 -1
  192. office365/sharepoint/listitems/listitem.py +2 -2
  193. office365/sharepoint/lists/bloom_filter.py +5 -7
  194. office365/sharepoint/lists/creatables_info.py +5 -6
  195. office365/sharepoint/lists/list.py +24 -9
  196. office365/sharepoint/lists/template.py +7 -4
  197. office365/sharepoint/lists/template_collection.py +2 -4
  198. office365/sharepoint/marketplace/app_metadata.py +14 -23
  199. office365/sharepoint/marketplace/sitecollection/appcatalog/allowed_item.py +6 -8
  200. office365/sharepoint/migrationcenter/deploy_status.py +5 -0
  201. office365/sharepoint/migrationcenter/service/performance/__init__.py +0 -0
  202. office365/sharepoint/migrationcenter/service/performance/dashboard_data.py +9 -0
  203. office365/sharepoint/migrationcenter/service/performance/data.py +7 -0
  204. office365/sharepoint/migrationcenter/service/performance/entity_data.py +5 -0
  205. office365/sharepoint/navigation/node.py +5 -8
  206. office365/sharepoint/permissions/irm/effective_settings.py +6 -8
  207. office365/sharepoint/permissions/irm/file_settings.py +8 -6
  208. office365/sharepoint/permissions/irm/settings.py +25 -43
  209. office365/sharepoint/portal/groups/site_manager.py +6 -7
  210. office365/sharepoint/principal/principal.py +2 -4
  211. office365/sharepoint/publishing/embed_data_v1.py +8 -15
  212. office365/sharepoint/publishing/pages/campaign_publication.py +4 -3
  213. office365/sharepoint/publishing/primary_city_time.py +8 -9
  214. office365/sharepoint/publishing/video/service_discoverer.py +4 -3
  215. office365/sharepoint/pushnotifications/subscriber.py +11 -15
  216. office365/sharepoint/recyclebin/item.py +107 -7
  217. office365/sharepoint/sharing/information.py +9 -0
  218. office365/sharepoint/sharing/link_info.py +6 -0
  219. office365/sharepoint/sharing/object_sharing_settings.py +24 -46
  220. office365/sharepoint/sharing/permission_collection.py +18 -0
  221. office365/sharepoint/sharing/permission_information.py +5 -5
  222. office365/sharepoint/sharing/result.py +1 -0
  223. office365/sharepoint/sitedesigns/run.py +4 -3
  224. office365/sharepoint/sites/script_safe_domain.py +5 -0
  225. office365/sharepoint/sites/site.py +17 -20
  226. office365/sharepoint/taxonomy/field.py +32 -21
  227. office365/sharepoint/taxonomy/field_value.py +1 -1
  228. office365/sharepoint/taxonomy/groups/group.py +12 -1
  229. office365/sharepoint/taxonomy/sets/set.py +6 -0
  230. office365/sharepoint/taxonomy/stores/store.py +4 -2
  231. office365/sharepoint/teams/channel.py +6 -6
  232. office365/sharepoint/tenant/administration/endpoints.py +4 -3
  233. office365/sharepoint/tenant/administration/hubsites/properties.py +4 -5
  234. office365/sharepoint/tenant/administration/powerapps/__init__.py +0 -0
  235. office365/sharepoint/tenant/administration/powerapps/environment_context.py +8 -0
  236. office365/sharepoint/tenant/administration/sites/properties.py +0 -1
  237. office365/sharepoint/tenant/administration/spo_operation.py +4 -4
  238. office365/sharepoint/tenant/administration/tenant.py +1 -0
  239. office365/sharepoint/tenant/insights/report.py +11 -0
  240. office365/sharepoint/tenant/insights/report_manager.py +5 -0
  241. office365/sharepoint/tenant/insights/report_metadata.py +5 -0
  242. office365/sharepoint/tenant/settings.py +4 -3
  243. office365/sharepoint/translation/sync_translator.py +3 -2
  244. office365/sharepoint/ui/applicationpages/peoplepicker/entity_information.py +4 -4
  245. office365/sharepoint/usercustomactions/action.py +12 -20
  246. office365/sharepoint/userprofiles/followed_content.py +6 -10
  247. office365/sharepoint/userprofiles/people_manager.py +0 -1
  248. office365/sharepoint/userprofiles/person_properties.py +14 -30
  249. office365/sharepoint/userprofiles/personal_cache.py +4 -3
  250. office365/sharepoint/userprofiles/properties_for_user.py +4 -5
  251. office365/sharepoint/userprofiles/sharedwithme/document.py +12 -21
  252. office365/sharepoint/utilities/move_copy_util.py +19 -19
  253. office365/sharepoint/utilities/upload_status.py +7 -10
  254. office365/sharepoint/views/field_collection.py +9 -14
  255. office365/sharepoint/views/view.py +43 -64
  256. office365/sharepoint/webhooks/subscription.py +11 -19
  257. office365/sharepoint/webparts/webpart.py +3 -1
  258. office365/sharepoint/webs/information_collection.py +1 -1
  259. office365/sharepoint/webs/modernize_homepage_result.py +4 -3
  260. office365/sharepoint/webs/regional_settings.py +79 -16
  261. office365/sharepoint/webs/template.py +3 -5
  262. office365/sharepoint/webs/web.py +24 -25
  263. office365/teams/apps/catalog.py +1 -0
  264. office365/teams/chats/chat.py +4 -0
  265. office365/teams/operations/async_operation.py +5 -7
  266. office365/teams/schedule/schedule.py +6 -2
  267. office365/runtime/paths/item.py +0 -8
  268. {Office365_REST_Python_Client-2.5.5.dist-info → Office365_REST_Python_Client-2.5.7.dist-info}/LICENSE +0 -0
  269. {Office365_REST_Python_Client-2.5.5.dist-info → Office365_REST_Python_Client-2.5.7.dist-info}/WHEEL +0 -0
  270. {Office365_REST_Python_Client-2.5.5.dist-info → Office365_REST_Python_Client-2.5.7.dist-info}/top_level.txt +0 -0
@@ -1,3 +1,5 @@
1
+ from typing import Optional
2
+
1
3
  from office365.runtime.paths.resource_path import ResourcePath
2
4
  from office365.sharepoint.entity import Entity
3
5
  from office365.sharepoint.entity_collection import EntityCollection
@@ -9,24 +11,19 @@ class LikedByInformation(Entity):
9
11
 
10
12
  @property
11
13
  def like_count(self):
12
- """
13
- Number of users that have liked the item.
14
-
15
- :rtype: int or None
16
- """
14
+ # type: () -> Optional[int]
15
+ """Number of users that have liked the item."""
17
16
  return self.properties.get("LikeCount", None)
18
17
 
19
18
  @property
20
19
  def is_liked_by_user(self):
21
- """
22
- MUST be TRUE if the current user has liked the list item.
23
-
24
- :rtype: bool or None
25
- """
20
+ # type: () -> Optional[bool]
21
+ """MUST be TRUE if the current user has liked the list item."""
26
22
  return self.properties.get("isLikedByUser", None)
27
23
 
28
24
  @property
29
25
  def liked_by(self):
26
+ # type: () -> EntityCollection[UserEntity]
30
27
  """
31
28
  List of like entries corresponding to individual likes. MUST NOT contain more than one entry
32
29
  for the same user in the set.
@@ -1,3 +1,5 @@
1
+ from typing import Optional
2
+
1
3
  from office365.sharepoint.entity import Entity
2
4
 
3
5
 
@@ -6,16 +8,12 @@ class UserEntity(Entity):
6
8
 
7
9
  @property
8
10
  def creation_date(self):
9
- """
10
- The Datetime of the like.
11
- """
11
+ # type: () -> Optional[str]
12
+ """The Datetime of the like."""
12
13
  return self.properties.get("creationDate", None)
13
14
 
14
15
  @property
15
16
  def email(self):
16
- """
17
- The email of the user who liked the item.
18
-
19
- :rtype: str
20
- """
17
+ # type: () -> Optional[str]
18
+ """The email of the user who liked the item."""
21
19
  return self.properties.get("email", None)
@@ -7,7 +7,14 @@ from office365.sharepoint.fields.lookup_value import FieldLookupValue
7
7
  class ListItemFormUpdateValue(ClientValue):
8
8
  """Specifies the properties of a list item field and its value."""
9
9
 
10
- def __init__(self, name=None, value=None, has_exception=None, error_code=None):
10
+ def __init__(
11
+ self,
12
+ name=None,
13
+ value=None,
14
+ has_exception=None,
15
+ error_code=None,
16
+ error_message=None,
17
+ ):
11
18
  """
12
19
  :param str name: Specifies the field internal name for a field.
13
20
  :param str value: Specifies a value for a field.
@@ -19,6 +26,15 @@ class ListItemFormUpdateValue(ClientValue):
19
26
  self.FieldValue = value
20
27
  self.HasException = has_exception
21
28
  self.ErrorCode = error_code
29
+ self.ErrorMessage = error_message
30
+
31
+ def __repr__(self):
32
+ if self.HasException:
33
+ return "{0} update failed: Message: {1}".format(
34
+ self.FieldName, self.ErrorMessage
35
+ )
36
+ else:
37
+ return "{0} update succeeded".format(self.FieldName)
22
38
 
23
39
  def to_json(self, json_format=None):
24
40
  json = super(ListItemFormUpdateValue, self).to_json(json_format)
@@ -212,13 +212,13 @@ class ListItem(SecurableObject):
212
212
 
213
213
  def _picker_value_resolved(picker_result):
214
214
  # type: (ClientResult) -> None
215
- file_abs_url = self.get_property("EncodedAbsUrl")
215
+ abs_url = self.get_property("EncodedAbsUrl")
216
216
  picker_value = "[{0}]".format(picker_result.value)
217
217
  from office365.sharepoint.webs.web import Web
218
218
 
219
219
  Web.share_object(
220
220
  self.context,
221
- file_abs_url,
221
+ abs_url,
222
222
  picker_value,
223
223
  role_values[share_option],
224
224
  0,
@@ -1,3 +1,5 @@
1
+ from typing import Optional
2
+
1
3
  from office365.runtime.client_value_collection import ClientValueCollection
2
4
  from office365.sharepoint.entity import Entity
3
5
 
@@ -7,15 +9,11 @@ class ListBloomFilter(Entity):
7
9
 
8
10
  @property
9
11
  def bloom_filter_size(self):
10
- """
11
- The length of the Bloom Filter
12
- :rtype: int or None
13
- """
12
+ # type: () -> Optional[int]
13
+ """The length of the Bloom Filter"""
14
14
  return self.properties.get("BloomFilterSize", None)
15
15
 
16
16
  @property
17
17
  def index_map(self):
18
- """
19
- Specifies a list of bloom indexes for item.
20
- """
18
+ """Specifies a list of bloom indexes for item."""
21
19
  return self.properties.get("IndexMap", ClientValueCollection(int))
@@ -1,3 +1,5 @@
1
+ from typing import Optional
2
+
1
3
  from office365.sharepoint.entity import Entity
2
4
  from office365.sharepoint.lists.creatable_item_info import CreatableItemInfoCollection
3
5
 
@@ -14,30 +16,27 @@ class CreatablesInfo(Entity):
14
16
 
15
17
  @property
16
18
  def can_create_folders(self):
19
+ # type: () -> Optional[bool]
17
20
  """
18
21
  Indicates if the user is able to create folders in the current list. The user MUST have the appropriate
19
22
  permissions and the list MUST allow folder creation.
20
-
21
- :rtype: bool or None
22
23
  """
23
24
  return self.properties.get("CanCreateFolders", None)
24
25
 
25
26
  @property
26
27
  def can_create_items(self):
28
+ # type: () -> Optional[bool]
27
29
  """
28
30
  Indicates whether this list can create items (such as documents (Word/Excel/PowerPoint))
29
31
  using Microsoft Office Online.
30
-
31
- :rtype: bool or None
32
32
  """
33
33
  return self.properties.get("CanCreateItems", None)
34
34
 
35
35
  @property
36
36
  def can_upload_files(self):
37
+ # type: () -> Optional[bool]
37
38
  """
38
39
  Indicates whether the user is able to upload files to this list.
39
-
40
- :rtype: bool or None
41
40
  """
42
41
  return self.properties.get("CanUploadFiles", None)
43
42
 
@@ -1,6 +1,6 @@
1
1
  import os
2
2
  from datetime import datetime
3
- from typing import AnyStr, Optional
3
+ from typing import TYPE_CHECKING, AnyStr, Optional
4
4
 
5
5
  from office365.runtime.client_result import ClientResult
6
6
  from office365.runtime.client_value_collection import ClientValueCollection
@@ -59,6 +59,9 @@ from office365.sharepoint.views.collection import ViewCollection
59
59
  from office365.sharepoint.views.view import View
60
60
  from office365.sharepoint.webhooks.subscription_collection import SubscriptionCollection
61
61
 
62
+ if TYPE_CHECKING:
63
+ from office365.sharepoint.lists.collection import ListCollection
64
+
62
65
 
63
66
  class List(SecurableObject):
64
67
  """
@@ -74,6 +77,15 @@ class List(SecurableObject):
74
77
  def __repr__(self):
75
78
  return self.id or self.title or self.entity_type_name
76
79
 
80
+ def clear(self):
81
+ """Clears the list."""
82
+
83
+ def _clear(items):
84
+ [item.delete_object() for item in items]
85
+
86
+ self.items.get().after_execute(_clear, execute_first=True)
87
+ return self
88
+
77
89
  def create_document_and_get_edit_link(
78
90
  self,
79
91
  file_name=None,
@@ -610,10 +622,11 @@ class List(SecurableObject):
610
622
  )
611
623
 
612
624
  def get_changes(self, query=None):
625
+ # type: (ChangeQuery) -> ChangeCollection
613
626
  """Returns the collection of changes from the change log that have occurred within the list,
614
627
  based on the specified query.
615
628
 
616
- :param office365.sharepoint.changeQuery.ChangeQuery query: Specifies which changes to return
629
+ :param ChangeQuery query: Specifies which changes to return
617
630
  """
618
631
  if query is None:
619
632
  query = ChangeQuery(list_=True)
@@ -825,6 +838,12 @@ class List(SecurableObject):
825
838
  # type: () -> Optional[bool]
826
839
  return self.properties.get("DisableGridEditing", None)
827
840
 
841
+ @property
842
+ def document_template_url(self):
843
+ # type: () -> Optional[str]
844
+ """Specifies the URL of the document template assigned to the list."""
845
+ return self.properties.get("DocumentTemplateUrl", None)
846
+
828
847
  @property
829
848
  def effective_base_permissions(self):
830
849
  """
@@ -1294,17 +1313,13 @@ class List(SecurableObject):
1294
1313
 
1295
1314
  @property
1296
1315
  def validation_formula(self):
1297
- """
1298
- Specifies the data validation criteria for a list item.
1299
- :rtype: str or None
1300
- """
1316
+ # type: () -> Optional[str]
1317
+ """Specifies the data validation criteria for a list item."""
1301
1318
  return self.properties.get("ValidationFormula", None)
1302
1319
 
1303
1320
  @property
1304
1321
  def parent_collection(self):
1305
- """
1306
- :rtype: office365.sharepoint.lists.collection.ListCollection
1307
- """
1322
+ # type: () -> ListCollection
1308
1323
  return self._parent_collection
1309
1324
 
1310
1325
  def get_property(self, name, default_value=None):
@@ -1,3 +1,5 @@
1
+ from typing import Optional
2
+
1
3
  from office365.runtime.client_result import ClientResult
2
4
  from office365.runtime.paths.service_operation import ServiceOperationPath
3
5
  from office365.runtime.queries.service_operation import ServiceOperationQuery
@@ -16,6 +18,9 @@ class ListTemplate(Entity):
16
18
  list template from the collection.
17
19
  """
18
20
 
21
+ def __repr__(self):
22
+ return self.internal_name or self.entity_type_name
23
+
19
24
  def get_global_schema_xml(self):
20
25
  """Retrieves the global schema.xml file."""
21
26
  return_type = ClientResult(self.context)
@@ -27,10 +32,8 @@ class ListTemplate(Entity):
27
32
 
28
33
  @property
29
34
  def internal_name(self):
30
- """Gets a value that specifies the identifier for the list template.
31
-
32
- :rtype: str or None
33
- """
35
+ # type: () -> Optional[str]
36
+ """Gets a value that specifies the identifier for the list template."""
34
37
  return self.properties.get("InternalName", None)
35
38
 
36
39
  def set_property(self, name, value, persist_changes=True):
@@ -3,7 +3,7 @@ from office365.sharepoint.entity_collection import EntityCollection
3
3
  from office365.sharepoint.lists.template import ListTemplate
4
4
 
5
5
 
6
- class ListTemplateCollection(EntityCollection):
6
+ class ListTemplateCollection(EntityCollection[ListTemplate]):
7
7
  """Specifies a collection of list templates"""
8
8
 
9
9
  def __init__(self, context, resource_path=None):
@@ -13,9 +13,7 @@ class ListTemplateCollection(EntityCollection):
13
13
  )
14
14
 
15
15
  def get_by_name(self, name):
16
- """
17
- Returns the list template with the specified name.
18
-
16
+ """Returns the list template with the specified name.
19
17
  :param str name: The specified name.
20
18
  """
21
19
  return ListTemplate(
@@ -1,3 +1,5 @@
1
+ from typing import Optional
2
+
1
3
  from office365.runtime.queries.service_operation import ServiceOperationQuery
2
4
  from office365.sharepoint.entity import Entity
3
5
 
@@ -30,49 +32,38 @@ class CorporateCatalogAppMetadata(Entity):
30
32
 
31
33
  @property
32
34
  def aad_permissions(self):
33
- """
34
- :rtype: str
35
- """
35
+ # type: () -> Optional[str]
36
+ """ """
36
37
  return self.properties.get("AadPermissions", None)
37
38
 
38
39
  @property
39
40
  def app_catalog_version(self):
40
- """The version of the app stored in the corporate catalog.
41
-
42
- :rtype: str
43
- """
41
+ # type: () -> Optional[str]
42
+ """The version of the app stored in the corporate catalog."""
44
43
  return self.properties.get("AppCatalogVersion", None)
45
44
 
46
45
  @property
47
46
  def can_upgrade(self):
48
- """Whether an existing instance of an app can be upgraded.
49
-
50
- :rtype: bool or None
51
- """
47
+ # type: () -> Optional[bool]
48
+ """Whether an existing instance of an app can be upgraded."""
52
49
  return self.properties.get("CanUpgrade", None)
53
50
 
54
51
  @property
55
52
  def is_client_side_solution(self):
56
- """Whether the app is a client-side solution.
57
-
58
- :rtype: bool or None
59
- """
53
+ # type: () -> Optional[bool]
54
+ """Whether the app is a client-side solution."""
60
55
  return self.properties.get("IsClientSideSolution", None)
61
56
 
62
57
  @property
63
58
  def title(self):
64
- """The title of the app.
65
-
66
- :rtype: bool or None
67
- """
59
+ # type: () -> Optional[str]
60
+ """The title of the app."""
68
61
  return self.properties.get("Title", None)
69
62
 
70
63
  @property
71
64
  def id(self):
72
- """The identifier of the app.
73
-
74
- :rtype: str or None
75
- """
65
+ # type: () -> Optional[str]
66
+ """The identifier of the app."""
76
67
  return self.properties.get("ID", None)
77
68
 
78
69
  @property
@@ -1,3 +1,5 @@
1
+ from typing import Optional
2
+
1
3
  from office365.sharepoint.entity import Entity
2
4
 
3
5
 
@@ -6,18 +8,14 @@ class SiteCollectionAppCatalogAllowedItem(Entity):
6
8
 
7
9
  @property
8
10
  def site_id(self):
9
- """The ID of a site collection in the allow list.
10
-
11
- :rtype: str or None
12
- """
11
+ # type: () -> Optional[str]
12
+ """The ID of a site collection in the allow list."""
13
13
  return self.properties.get("SiteID", None)
14
14
 
15
15
  @property
16
16
  def absolute_url(self):
17
- """The absolute URL of a site collection in the allow list.
18
-
19
- :rtype: str or None
20
- """
17
+ # type: () -> Optional[str]
18
+ """The absolute URL of a site collection in the allow list."""
21
19
  return self.properties.get("AbsoluteUrl", None)
22
20
 
23
21
  @property
@@ -0,0 +1,5 @@
1
+ from office365.sharepoint.entity import Entity
2
+
3
+
4
+ class MigrationCenterDeployStatus(Entity):
5
+ """"""
@@ -0,0 +1,9 @@
1
+ from office365.runtime.client_value import ClientValue
2
+
3
+
4
+ class PerformanceDashboardData(ClientValue):
5
+ """"""
6
+
7
+ @property
8
+ def entity_type_name(self):
9
+ return "Microsoft.Online.SharePoint.MigrationCenter.Service.PerformanceDashboardData"
@@ -0,0 +1,7 @@
1
+ from office365.sharepoint.migrationcenter.service.performance.entity_data import (
2
+ MigrationPerformanceEntityData,
3
+ )
4
+
5
+
6
+ class PerformanceData(MigrationPerformanceEntityData):
7
+ """"""
@@ -0,0 +1,5 @@
1
+ from office365.sharepoint.entity import Entity
2
+
3
+
4
+ class MigrationPerformanceEntityData(Entity):
5
+ """"""
@@ -1,9 +1,12 @@
1
- from typing import Optional
1
+ from typing import TYPE_CHECKING, Optional
2
2
 
3
3
  from office365.runtime.paths.resource_path import ResourcePath
4
4
  from office365.sharepoint.entity import Entity
5
5
  from office365.sharepoint.translation.user_resource import UserResource
6
6
 
7
+ if TYPE_CHECKING:
8
+ from office365.sharepoint.navigation.node_collection import NavigationNodeCollection
9
+
7
10
 
8
11
  class NavigationNode(Entity):
9
12
  """
@@ -20,10 +23,6 @@ class NavigationNode(Entity):
20
23
  @property
21
24
  def children(self):
22
25
  """Gets the collection of child nodes of the navigation node."""
23
- from office365.sharepoint.navigation.node_collection import (
24
- NavigationNodeCollection,
25
- )
26
-
27
26
  return self.properties.get(
28
27
  "Children",
29
28
  NavigationNodeCollection(
@@ -67,9 +66,7 @@ class NavigationNode(Entity):
67
66
 
68
67
  @property
69
68
  def parent_collection(self):
70
- """
71
- :rtype: office365.sharepoint.navigation.node_collection.NavigationNodeCollection
72
- """
69
+ # type: () -> NavigationNodeCollection
73
70
  return self._parent_collection
74
71
 
75
72
  @property
@@ -1,3 +1,5 @@
1
+ from typing import Optional
2
+
1
3
  from office365.sharepoint.entity import Entity
2
4
 
3
5
 
@@ -6,16 +8,12 @@ class EffectiveInformationRightsManagementSettings(Entity):
6
8
 
7
9
  @property
8
10
  def allow_print(self):
9
- """
10
- Specifies whether a user can print the downloaded document.
11
- :rtype: bool
12
- """
11
+ # type: () -> Optional[bool]
12
+ """Specifies whether a user can print the downloaded document."""
13
13
  return self.properties.get("AllowPrint", None)
14
14
 
15
15
  @property
16
16
  def template_id(self):
17
- """
18
- Gets the template ID of the RMS template that will be applied to the file/library.
19
- :rtype: str or None
20
- """
17
+ # type: () -> Optional[str]
18
+ """Gets the template ID of the RMS template that will be applied to the file/library."""
21
19
  return self.properties.get("TemplateId", None)
@@ -1,3 +1,5 @@
1
+ from typing import Optional
2
+
1
3
  from office365.runtime.queries.service_operation import ServiceOperationQuery
2
4
  from office365.sharepoint.entity import Entity
3
5
 
@@ -13,43 +15,43 @@ class InformationRightsManagementFileSettings(Entity):
13
15
 
14
16
  @property
15
17
  def allow_print(self):
18
+ # type: () -> Optional[bool]
16
19
  """
17
20
  Gets a value indicating whether or not the user can print the downloaded document.
18
21
  True if print is allowed; otherwise, it is false. The default value is false.
19
- :rtype: bool
20
22
  """
21
23
  return self.properties.get("AllowPrint", None)
22
24
 
23
25
  @allow_print.setter
24
26
  def allow_print(self, value):
27
+ # type: (bool) -> None
25
28
  """
26
- Sets a value indicating whether or not the user can print the downloaded document.
27
- :param bool value:
29
+ Sets a value indicating whether or not the user can print the downloaded document.
28
30
  """
29
31
  self.set_property("AllowPrint", value)
30
32
 
31
33
  @property
32
34
  def allow_script(self):
35
+ # type: () -> Optional[bool]
33
36
  """
34
37
  Gets a value indicating whether or not the user can run a script on the downloaded document.
35
38
  True if the script is allowed to run; otherwise, it is false. The default value is false.
36
- :rtype: bool
37
39
  """
38
40
  return self.properties.get("AllowScript", None)
39
41
 
40
42
  @allow_script.setter
41
43
  def allow_script(self, value):
44
+ # type: (bool) -> None
42
45
  """
43
46
  Sets a value indicating whether or not the user can run a script on the downloaded document.
44
- :param bool value:
45
47
  """
46
48
  self.set_property("AllowPrint", value)
47
49
 
48
50
  @property
49
51
  def allow_write_copy(self):
52
+ # type: () -> Optional[bool]
50
53
  """
51
54
  Getsa value indicating whether or not the user can write on a copy of the downloaded document.
52
55
  True if write on a copy is allowed; otherwise, it is false. The default value is false.
53
- :rtype: bool
54
56
  """
55
57
  return self.properties.get("AllowWriteCopy", None)