codeapp-js 0.1.1 → 0.2.2

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 (121) hide show
  1. package/codeApp/dist/codeapp.js +552 -78
  2. package/codeApp/dist/power-apps-data.js +2531 -2531
  3. package/dev files/outlook.js +218 -9
  4. package/examples/combined demo/dist/codeapp.js +1098 -0
  5. package/examples/combined demo/dist/index.js +69 -114
  6. package/examples/combined demo/dist/power-apps-data.js +646 -170
  7. package/examples/combined demo/power.config.json +42 -42
  8. package/examples/dataverse Demo/dist/codeapp.js +1085 -0
  9. package/examples/dataverse Demo/dist/index.html +54 -54
  10. package/examples/dataverse Demo/dist/index.js +82 -70
  11. package/examples/dataverse Demo/dist/power-apps-data.js +551 -170
  12. package/examples/dataverse Demo/power.config.json +34 -34
  13. package/examples/dataverse Demo/readme.md +79 -79
  14. package/examples/groups Demo/dist/codeapp.js +1085 -0
  15. package/examples/groups Demo/dist/index.js +27 -27
  16. package/examples/groups Demo/dist/power-apps-data.js +551 -170
  17. package/examples/kanban/dist/dataverse.js +94 -94
  18. package/examples/kanban/dist/environmentVar.js +55 -55
  19. package/examples/kanban/dist/office365groups.js +97 -97
  20. package/examples/kanban/dist/office365users.js +169 -169
  21. package/examples/kanban/dist/outlook.js +162 -162
  22. package/examples/kanban/dist/power-apps-data.js +560 -138
  23. package/examples/kanban/dist/sharepoint.js +339 -339
  24. package/examples/myProfile/dist/index.html +184 -184
  25. package/examples/myProfile/dist/index.js +141 -141
  26. package/examples/myProfile/dist/office365users.js +169 -169
  27. package/examples/myProfile/dist/power-apps-data.js +560 -138
  28. package/examples/myProfile/power.config.json +22 -22
  29. package/examples/myProfile/readme.md +79 -79
  30. package/examples/outlook Demo/dist/codeapp.js +1085 -0
  31. package/examples/outlook Demo/dist/index.html +35 -35
  32. package/examples/outlook Demo/dist/index.js +170 -166
  33. package/examples/outlook Demo/dist/outlook.js +121 -121
  34. package/examples/outlook Demo/dist/power-apps-data.js +551 -170
  35. package/examples/outlook Demo/dist/styles.css +84 -84
  36. package/examples/outlook Demo/readme.md +82 -82
  37. package/examples/outlook Demo2/OutlookDemo_1_0_0_1.zip +0 -0
  38. package/examples/outlook Demo2/agent/decision-log.md +7 -0
  39. package/examples/outlook Demo2/dist/codeapp.js +1334 -0
  40. package/examples/outlook Demo2/dist/icon-512.png +0 -0
  41. package/examples/outlook Demo2/dist/index.html +98 -0
  42. package/examples/outlook Demo2/dist/index.js +346 -0
  43. package/examples/outlook Demo2/dist/power-apps-data.js +3007 -0
  44. package/examples/outlook Demo2/dist/styles.css +639 -0
  45. package/examples/outlook Demo2/power.config.json +23 -0
  46. package/examples/outlook Demo2/src/generated/index.ts +14 -0
  47. package/examples/outlook Demo2/src/generated/models/Office365GroupsModel.ts +363 -0
  48. package/examples/outlook Demo2/src/generated/models/Office365OutlookModel.ts +2046 -0
  49. package/examples/outlook Demo2/src/generated/models/Office365UsersModel.ts +254 -0
  50. package/examples/outlook Demo2/src/generated/services/Office365GroupsService.ts +326 -0
  51. package/examples/outlook Demo2/src/generated/services/Office365OutlookService.ts +2476 -0
  52. package/examples/outlook Demo2/src/generated/services/Office365UsersService.ts +358 -0
  53. package/examples/planning Poker/.vscode/settings.json +4 -4
  54. package/examples/planning Poker/additional files/customizations (tables).xml +6428 -6428
  55. package/examples/planning Poker/additional files/dataverse-tables.json +165 -165
  56. package/examples/planning Poker/additional files/readme.md +122 -122
  57. package/examples/planning Poker/dist/dataverse.js +78 -78
  58. package/examples/planning Poker/dist/index.html +198 -198
  59. package/examples/planning Poker/dist/index.js +954 -954
  60. package/examples/planning Poker/dist/power-apps-data.js +560 -138
  61. package/examples/planning Poker/dist/styles.css +815 -815
  62. package/examples/sharePoint Demo/agent/decision-log.md +5 -5
  63. package/examples/sharePoint Demo/dist/codeapp.js +1085 -0
  64. package/examples/sharePoint Demo/dist/index.js +44 -51
  65. package/examples/sharePoint Demo/dist/power-apps-data.js +551 -170
  66. package/examples/sharePoint Demo/power.config.json +22 -22
  67. package/examples/solution explorer/agent/decision-log.md +27 -0
  68. package/examples/solution explorer/agent/mockup-01-swiss-grid.html +452 -0
  69. package/examples/solution explorer/agent/mockup-02-dark-glass.html +496 -0
  70. package/examples/solution explorer/agent/mockup-03-paper-console.html +510 -0
  71. package/examples/solution explorer/agent/mockup-04-neon-noir.html +546 -0
  72. package/examples/solution explorer/agent/mockup-05-zen-garden.html +534 -0
  73. package/examples/solution explorer/dist/codeapp.js +1098 -0
  74. package/examples/solution explorer/dist/icon-512.png +0 -0
  75. package/examples/solution explorer/dist/index.html +80 -0
  76. package/examples/solution explorer/dist/index.js +735 -0
  77. package/examples/solution explorer/dist/power-apps-data.js +3007 -0
  78. package/examples/solution explorer/dist/styles.css +571 -0
  79. package/examples/solution explorer/power.config.json +151 -0
  80. package/examples/todo/dist/dataverse.js +64 -64
  81. package/examples/todo/dist/index.html +75 -75
  82. package/examples/todo/dist/index.js +8 -8
  83. package/examples/todo/dist/power-apps-data.js +560 -138
  84. package/examples/todo/dist/renderer.js +375 -375
  85. package/examples/todo/dist/styles.css +691 -691
  86. package/examples/todo/power.config.json +34 -34
  87. package/package.json +1 -8
  88. package/docs-mockups/atelier/index.html +0 -120
  89. package/docs-mockups/atelier/script.js +0 -23
  90. package/docs-mockups/atelier/styles.css +0 -361
  91. package/docs-mockups/field-guide/index.html +0 -112
  92. package/docs-mockups/field-guide/script.js +0 -20
  93. package/docs-mockups/field-guide/styles.css +0 -272
  94. package/docs-mockups/index.html +0 -80
  95. package/docs-mockups/maker-hub/index.html +0 -178
  96. package/docs-mockups/maker-hub/script.js +0 -20
  97. package/docs-mockups/maker-hub/styles.css +0 -404
  98. package/docs-mockups/script.js +0 -26
  99. package/docs-mockups/signal/index.html +0 -146
  100. package/docs-mockups/signal/script.js +0 -20
  101. package/docs-mockups/signal/styles.css +0 -314
  102. package/docs-mockups/styles.css +0 -287
  103. package/examples/combined demo/dist/dataverse.js +0 -86
  104. package/examples/combined demo/dist/environmentVar.js +0 -55
  105. package/examples/combined demo/dist/office365groups.js +0 -97
  106. package/examples/combined demo/dist/office365users.js +0 -169
  107. package/examples/combined demo/dist/outlook.js +0 -162
  108. package/examples/combined demo/dist/sharepoint.js +0 -339
  109. package/examples/dataverse Demo/dist/dataverse.js +0 -86
  110. package/examples/groups Demo/dist/dataverse.js +0 -86
  111. package/examples/groups Demo/dist/environmentVar.js +0 -55
  112. package/examples/groups Demo/dist/office365groups.js +0 -97
  113. package/examples/groups Demo/dist/office365users.js +0 -169
  114. package/examples/groups Demo/dist/outlook.js +0 -162
  115. package/examples/groups Demo/dist/sharepoint.js +0 -339
  116. package/examples/sharePoint Demo/dist/dataverse.js +0 -94
  117. package/examples/sharePoint Demo/dist/environmentVar.js +0 -55
  118. package/examples/sharePoint Demo/dist/office365groups.js +0 -97
  119. package/examples/sharePoint Demo/dist/office365users.js +0 -169
  120. package/examples/sharePoint Demo/dist/outlook.js +0 -162
  121. package/examples/sharePoint Demo/dist/sharepoint.js +0 -339
@@ -0,0 +1,254 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ * This file is autogenerated. Do not edit this file directly.
4
+ */
5
+
6
+ export interface GraphUserUpdateable_V1 {
7
+ // About Me
8
+ aboutMe?: string;
9
+ // Birthday
10
+ birthday?: string;
11
+ // Interests
12
+ interests?: string[];
13
+ // My Site
14
+ mySite?: string;
15
+ // Past Projects
16
+ pastProjects?: string[];
17
+ // Schools
18
+ schools?: string[];
19
+ // Skills
20
+ skills?: string[];
21
+ }
22
+
23
+ export interface GraphTrending {
24
+ // Unique identifier of the relationship
25
+ id?: string;
26
+ // Value indicating how much the document is currently trending
27
+ weight?: number;
28
+ resourceVisualization?: resourceVisualization;
29
+ sensitivityLabelInfo?: sensitivityLabelMetadata[];
30
+ }
31
+
32
+ export interface resourceVisualization {
33
+ // The item's title text
34
+ title?: string;
35
+ // The item's media type (can be used for filtering for a specific file based on a specific type)
36
+ _type?: string;
37
+ // The items media type (can be used for filtering for a specific type of file based on supported IANA Media MIME types)
38
+ mediaType?: string;
39
+ // A URL leading to the preview image for the item
40
+ previewImageUrl?: string;
41
+ // A preview text for the item
42
+ previewText?: string;
43
+ // A path leading to the folder in which the item is stored
44
+ containerWebUrl?: string;
45
+ // A string describing where the item is stored
46
+ containerDisplayName?: string;
47
+ // Can be used for filtering by the type of container in which the file is stored
48
+ containerType?: string;
49
+ }
50
+
51
+ export interface sensitivityLabelMetadata {
52
+ // SensitivityLabel Id.
53
+ sensitivityLabelId?: string;
54
+ // SensitivityLabel name.
55
+ name?: string;
56
+ // SensitivityLabel displayName info
57
+ displayName?: string;
58
+ // SensitivityLabel details on tooltip.
59
+ tooltip?: string;
60
+ // SensitivityLabel priority.
61
+ priority?: number;
62
+ // SensitivityLabel color.
63
+ color?: string;
64
+ // is SensitivityLabel Encrypted.
65
+ isEncrypted?: boolean;
66
+ // Whether SensitivityLabel is Enabled.
67
+ isEnabled?: boolean;
68
+ // Whether SensitivityLabel is Parent.
69
+ isParent?: boolean;
70
+ // Parent SensitivityLabel Id.
71
+ parentSensitivityLabelId?: string;
72
+ }
73
+
74
+ export interface LinklessEntityListResponse_List_Person {
75
+ // Value
76
+ value?: Person[];
77
+ }
78
+
79
+ export interface Person {
80
+ // A unique identifier for the Person object in the directory
81
+ id?: string;
82
+ // The person's display name
83
+ displayName?: string;
84
+ // The person's given name
85
+ givenName?: string;
86
+ // The person's surname
87
+ surname?: string;
88
+ // The person's birthday
89
+ birthday?: string;
90
+ // Free-form notes that the current user has taken about this person
91
+ personNotes?: string;
92
+ // If the current user has flagged this person as a favorite
93
+ isFavorite?: boolean;
94
+ // The person's job title
95
+ jobTitle?: string;
96
+ // The name of the person's company
97
+ companyName?: string;
98
+ // The person's department
99
+ department?: string;
100
+ // The location of the person's office
101
+ officeLocation?: string;
102
+ // The person's profession
103
+ profession?: string;
104
+ // The user principal name(UPN) of the user.The UPN is an Internet-style login name for the user based on the Internet standard RFC 822. By convention, this should map to the user's email name.The general format is alias @domain, where domain must be present in the tenant's collection of verified domains.
105
+ userPrincipalName?: string;
106
+ // The person's VOIP SIP address
107
+ imAddress?: string;
108
+ // Collection of the person's email addresses with a relevance score
109
+ scoredEmailAddresses?: ScoredEmailAddress[];
110
+ // The person's phone numbers
111
+ phones?: Phone[];
112
+ }
113
+
114
+ export interface ScoredEmailAddress {
115
+ // The email address
116
+ address?: string;
117
+ // The relevance score of the email address. A relevance score is used as a sort key, in relation to the other returned results. A higher relevance score value corresponds to a more relevant result. Relevance is determined by the user's communication and collaboration patterns and business relationships.
118
+ relevanceScore?: number;
119
+ }
120
+
121
+ export interface Phone {
122
+ // The phone number
123
+ _number?: string;
124
+ // The type of phone number. Possible values: home, business, mobile, other, assistant, homeFax, businessFax, otherFax, pager, radio.
125
+ _type?: string;
126
+ }
127
+
128
+ export interface User {
129
+ // A unique identifier for the user object in the directory.
130
+ Id: string;
131
+ // true if the account is enabled; otherwise, false. This property is required when a user is created.
132
+ AccountEnabled?: boolean;
133
+ // A list of business phone numbers for the user
134
+ BusinessPhones?: string[];
135
+ // The city in which the user is located.
136
+ City?: string;
137
+ // The name of the company in which the user works.
138
+ CompanyName?: string;
139
+ // The country/region in which the user is located; for example, "US" or "UK".
140
+ Country?: string;
141
+ // The name of the department in which the user works.
142
+ Department?: string;
143
+ // The name displayed in the address book for the user. This is usually the combination of the user's first name, middle initial and last name. This property is required when a user is created and it cannot be cleared during updates.
144
+ DisplayName?: string;
145
+ // The given name (first name) of the user.
146
+ GivenName?: string;
147
+ // The user’s job title.
148
+ JobTitle?: string;
149
+ // The SMTP/email address for the user, for example, "jeff@contoso.onmicrosoft.com". Read-Only.
150
+ Mail?: string;
151
+ // The mail alias for the user. This property must be specified when a user is created.
152
+ MailNickname?: string;
153
+ // The primary cellular telephone number for the user.
154
+ mobilePhone?: string;
155
+ // The office location in the user's place of business.
156
+ OfficeLocation?: string;
157
+ // The postal code for the user's postal address. The postal code is specific to the user's country/region. In the United States of America, this attribute contains the ZIP code.
158
+ PostalCode?: string;
159
+ // The user's surname (family name or last name).
160
+ Surname?: string;
161
+ // The primary cellular telephone number for the user.
162
+ TelephoneNumber?: string;
163
+ // The user principal name (UPN) of the user. The UPN is an Internet-style login name for the user based on the Internet standard RFC 822. By convention, this should map to the user’s email name. The general format is alias@domain, where domain must be present in the tenant’s collection of verified domains.
164
+ UserPrincipalName?: string;
165
+ }
166
+
167
+ export interface ClientPhotoMetadata {
168
+ // Has photo
169
+ HasPhoto?: boolean;
170
+ // Height of photo
171
+ Height?: number;
172
+ // Width of photo
173
+ Width?: number;
174
+ // Content Type of photo
175
+ ContentType?: string;
176
+ // File extension for the photo (ex: ".jpg")
177
+ ImageFileExtension?: string;
178
+ }
179
+
180
+ export type Object = object;
181
+
182
+ export interface EntityListResponse_IReadOnlyList_User {
183
+ // Value
184
+ value?: User[];
185
+ // Next page link
186
+ "@odata.nextLink"?: string;
187
+ }
188
+
189
+ export interface GraphUser_V1 {
190
+ // About Me
191
+ aboutMe?: string;
192
+ // true if the account is enabled; otherwise, false. This property is required when a user is created.
193
+ accountEnabled?: boolean;
194
+ // Birthday
195
+ birthday?: string;
196
+ // Business Phones
197
+ businessPhones?: string[];
198
+ // The city in which the user is located.
199
+ city?: string;
200
+ // The name of the company in which the user works.
201
+ companyName?: string;
202
+ // The country/region in which the user is located; for example, "US" or "UK".
203
+ country?: string;
204
+ // The name of the department in which the user works.
205
+ department?: string;
206
+ // Display Name
207
+ displayName?: string;
208
+ // Given Name
209
+ givenName?: string;
210
+ // Hire Date
211
+ hireDate?: string;
212
+ // Id
213
+ id?: string;
214
+ // Interests
215
+ interests?: string[];
216
+ // Job Title
217
+ jobTitle?: string;
218
+ // Mail
219
+ mail?: string;
220
+ // The mail alias for the user. This property must be specified when a user is created.
221
+ mailNickname?: string;
222
+ // Mobile Phone
223
+ mobilePhone?: string;
224
+ // My Site
225
+ mySite?: string;
226
+ // Office Location
227
+ officeLocation?: string;
228
+ // Past Projects
229
+ pastProjects?: string[];
230
+ // The postal code for the user's postal address. The postal code is specific to the user's country/region. In the United States of America, this attribute contains the ZIP code.
231
+ postalCode?: string;
232
+ // Preferred Language
233
+ preferredLanguage?: string;
234
+ // Preferred Name
235
+ preferredName?: string;
236
+ // Responsibilities
237
+ responsibilities?: string[];
238
+ // Schools
239
+ schools?: string[];
240
+ // Skills
241
+ skills?: string[];
242
+ // State
243
+ state?: string;
244
+ // Street Address
245
+ streetAddress?: string;
246
+ // Surname
247
+ surname?: string;
248
+ // User Principal Name
249
+ userPrincipalName?: string;
250
+ // User Type
251
+ userType?: string;
252
+ }
253
+
254
+ export type ObjectWithoutType = object;
@@ -0,0 +1,326 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ * This file is autogenerated. Do not edit this file directly.
4
+ */
5
+
6
+ import type { CreateCalendarEvent_Response } from '../models/Office365GroupsModel';
7
+ import type { IOperationResult } from '@microsoft/power-apps/data';
8
+ import type { ListGroupMembers_Response } from '../models/Office365GroupsModel';
9
+ import type { ListGroups_Response } from '../models/Office365GroupsModel';
10
+ import type { ListOwnedGroups_Response } from '../models/Office365GroupsModel';
11
+ import type { ListOwnedGroups_V2_Response } from '../models/Office365GroupsModel';
12
+ import type { ObjectWithoutType } from '../models/Office365GroupsModel';
13
+ import type { OnGroupMemberAddedOrRemoved_Response } from '../models/Office365GroupsModel';
14
+ import type { OnNewEvent_Response } from '../models/Office365GroupsModel';
15
+ import type { UpdateCalendarEvent_HTMLRequest } from '../models/Office365GroupsModel';
16
+ import type { UpdateCalendarEvent_Request } from '../models/Office365GroupsModel';
17
+ import { dataSourcesInfo } from '../../../.power/schemas/appschemas/dataSourcesInfo';
18
+ import { getClient } from '@microsoft/power-apps/data';
19
+
20
+ export class Office365GroupsService {
21
+ private static readonly dataSourceName = 'office365groups';
22
+
23
+ private static readonly client = getClient(dataSourcesInfo);
24
+
25
+ /**
26
+ * List group members
27
+ * This operation returns a list of all members in the given group and their details such as name, title, email, etc. You can query up to 1000 items using Top parameter. In case you need to retrieve more than 1000 values please turn on Settings->Pagination feature and provide Threshold limit.
28
+ */
29
+ public static async ListGroupMembers(groupId: string, $top?: number): Promise<IOperationResult<ListGroupMembers_Response>> {
30
+ const params: { groupId: string, $top?: number } = { groupId, $top };
31
+ const result = await Office365GroupsService.client.executeAsync<{ groupId: string, $top?: number }, ListGroupMembers_Response>(
32
+ {
33
+ connectorOperation: {
34
+ tableName: Office365GroupsService.dataSourceName,
35
+ operationName: 'ListGroupMembers',
36
+ parameters: params
37
+ },
38
+ });
39
+ return result;
40
+ }
41
+
42
+ /**
43
+ * When a group member is added or removed
44
+ * This operation triggers when a member is added to or removed from the given group.
45
+ */
46
+ public static async OnGroupMembershipChange(groupId: string, $select?: string): Promise<IOperationResult<OnGroupMemberAddedOrRemoved_Response>> {
47
+ const params: { groupId: string, $select?: string } = { groupId, $select };
48
+ const result = await Office365GroupsService.client.executeAsync<{ groupId: string, $select?: string }, OnGroupMemberAddedOrRemoved_Response>(
49
+ {
50
+ connectorOperation: {
51
+ tableName: Office365GroupsService.dataSourceName,
52
+ operationName: 'OnGroupMembershipChange',
53
+ parameters: params
54
+ },
55
+ });
56
+ return result;
57
+ }
58
+
59
+ /**
60
+ * Add member to group
61
+ * This operation is used to add a member to an O365 group, using a UPN.
62
+ */
63
+ public static async AddMemberToGroup(userUpn: string, groupId: string): Promise<IOperationResult<void>> {
64
+ const params: { userUpn: string, groupId: string } = { userUpn, groupId };
65
+ const result = await Office365GroupsService.client.executeAsync<{ userUpn: string, groupId: string }, void>(
66
+ {
67
+ connectorOperation: {
68
+ tableName: Office365GroupsService.dataSourceName,
69
+ operationName: 'AddMemberToGroup',
70
+ parameters: params
71
+ },
72
+ });
73
+ return result;
74
+ }
75
+
76
+ /**
77
+ * List my owned groups
78
+ * This operation returns a list of all groups that you own.
79
+ */
80
+ public static async ListOwnedGroups(): Promise<IOperationResult<ListOwnedGroups_Response>> {
81
+ const result = await Office365GroupsService.client.executeAsync<void, ListOwnedGroups_Response>(
82
+ {
83
+ connectorOperation: {
84
+ tableName: Office365GroupsService.dataSourceName,
85
+ operationName: 'ListOwnedGroups',
86
+ },
87
+ });
88
+ return result;
89
+ }
90
+
91
+ /**
92
+ * List my owned groups (V2)
93
+ * This operation returns a list of all groups that you own.
94
+ */
95
+ public static async ListOwnedGroups_V2(extractSensitivityLabel?: boolean, fetchSensitivityLabelMetadata?: boolean): Promise<IOperationResult<ListOwnedGroups_V2_Response>> {
96
+ const params: { extractSensitivityLabel?: boolean, fetchSensitivityLabelMetadata?: boolean } = { extractSensitivityLabel, fetchSensitivityLabelMetadata };
97
+ const result = await Office365GroupsService.client.executeAsync<{ extractSensitivityLabel?: boolean, fetchSensitivityLabelMetadata?: boolean }, ListOwnedGroups_V2_Response>(
98
+ {
99
+ connectorOperation: {
100
+ tableName: Office365GroupsService.dataSourceName,
101
+ operationName: 'ListOwnedGroups_V2',
102
+ parameters: params
103
+ },
104
+ });
105
+ return result;
106
+ }
107
+
108
+ /**
109
+ * List groups that I own and belong to
110
+ * This operation returns a list of all groups that you own and belong to.
111
+ */
112
+ public static async ListOwnedGroups_V3(extractSensitivityLabel?: boolean, fetchSensitivityLabelMetadata?: boolean): Promise<IOperationResult<ListOwnedGroups_Response>> {
113
+ const params: { extractSensitivityLabel?: boolean, fetchSensitivityLabelMetadata?: boolean } = { extractSensitivityLabel, fetchSensitivityLabelMetadata };
114
+ const result = await Office365GroupsService.client.executeAsync<{ extractSensitivityLabel?: boolean, fetchSensitivityLabelMetadata?: boolean }, ListOwnedGroups_Response>(
115
+ {
116
+ connectorOperation: {
117
+ tableName: Office365GroupsService.dataSourceName,
118
+ operationName: 'ListOwnedGroups_V3',
119
+ parameters: params
120
+ },
121
+ });
122
+ return result;
123
+ }
124
+
125
+ /**
126
+ * List groups
127
+ * This operation returns a list of all groups in the organization.
128
+ */
129
+ public static async ListGroups(extractSensitivityLabel?: boolean, fetchSensitivityLabelMetadata?: boolean, $filter?: string, $top?: number, $skiptoken?: string): Promise<IOperationResult<ListGroups_Response>> {
130
+ const params: { extractSensitivityLabel?: boolean, fetchSensitivityLabelMetadata?: boolean, $filter?: string, $top?: number, $skiptoken?: string } = { extractSensitivityLabel, fetchSensitivityLabelMetadata, $filter, $top, $skiptoken };
131
+ const result = await Office365GroupsService.client.executeAsync<{ extractSensitivityLabel?: boolean, fetchSensitivityLabelMetadata?: boolean, $filter?: string, $top?: number, $skiptoken?: string }, ListGroups_Response>(
132
+ {
133
+ connectorOperation: {
134
+ tableName: Office365GroupsService.dataSourceName,
135
+ operationName: 'ListGroups',
136
+ parameters: params
137
+ },
138
+ });
139
+ return result;
140
+ }
141
+
142
+ /**
143
+ * Create a group event
144
+ * This operation is used to create a new event in a group calendar.
145
+ */
146
+ public static async CreateCalendarEvent(body: UpdateCalendarEvent_Request, groupId: string): Promise<IOperationResult<void>> {
147
+ const params: { body: UpdateCalendarEvent_Request, groupId: string } = { body, groupId };
148
+ const result = await Office365GroupsService.client.executeAsync<{ body: UpdateCalendarEvent_Request, groupId: string }, void>(
149
+ {
150
+ connectorOperation: {
151
+ tableName: Office365GroupsService.dataSourceName,
152
+ operationName: 'CreateCalendarEvent',
153
+ parameters: params
154
+ },
155
+ });
156
+ return result;
157
+ }
158
+
159
+ /**
160
+ * Create a group event (V2)
161
+ * This operation is used to create a new event in a group calendar.
162
+ */
163
+ public static async CreateCalendarEventV2(body: UpdateCalendarEvent_HTMLRequest, groupId: string): Promise<IOperationResult<void>> {
164
+ const params: { body: UpdateCalendarEvent_HTMLRequest, groupId: string } = { body, groupId };
165
+ const result = await Office365GroupsService.client.executeAsync<{ body: UpdateCalendarEvent_HTMLRequest, groupId: string }, void>(
166
+ {
167
+ connectorOperation: {
168
+ tableName: Office365GroupsService.dataSourceName,
169
+ operationName: 'CreateCalendarEventV2',
170
+ parameters: params
171
+ },
172
+ });
173
+ return result;
174
+ }
175
+
176
+ /**
177
+ * Delete event (V2)
178
+ * This operation deletes an event in a calendar.
179
+ */
180
+ public static async CalendarDeleteItem_V2(event: string, groupId: string): Promise<IOperationResult<void>> {
181
+ const params: { event: string, groupId: string } = { event, groupId };
182
+ const result = await Office365GroupsService.client.executeAsync<{ event: string, groupId: string }, void>(
183
+ {
184
+ connectorOperation: {
185
+ tableName: Office365GroupsService.dataSourceName,
186
+ operationName: 'CalendarDeleteItem_V2',
187
+ parameters: params
188
+ },
189
+ });
190
+ return result;
191
+ }
192
+
193
+ /**
194
+ * Update a group event
195
+ * This operation is used to update a new event in a group calendar.
196
+ */
197
+ public static async UpdateCalendarEvent(event: string, body: UpdateCalendarEvent_HTMLRequest, groupId: string): Promise<IOperationResult<CreateCalendarEvent_Response>> {
198
+ const params: { event: string, body: UpdateCalendarEvent_HTMLRequest, groupId: string } = { event, body, groupId };
199
+ const result = await Office365GroupsService.client.executeAsync<{ event: string, body: UpdateCalendarEvent_HTMLRequest, groupId: string }, CreateCalendarEvent_Response>(
200
+ {
201
+ connectorOperation: {
202
+ tableName: Office365GroupsService.dataSourceName,
203
+ operationName: 'UpdateCalendarEvent',
204
+ parameters: params
205
+ },
206
+ });
207
+ return result;
208
+ }
209
+
210
+ /**
211
+ * Remove member from group
212
+ * This operation is used to remove a member from an O365 group, using a UPN.
213
+ */
214
+ public static async RemoveMemberFromGroup(userUpn: string, groupId: string): Promise<IOperationResult<void>> {
215
+ const params: { userUpn: string, groupId: string } = { userUpn, groupId };
216
+ const result = await Office365GroupsService.client.executeAsync<{ userUpn: string, groupId: string }, void>(
217
+ {
218
+ connectorOperation: {
219
+ tableName: Office365GroupsService.dataSourceName,
220
+ operationName: 'RemoveMemberFromGroup',
221
+ parameters: params
222
+ },
223
+ });
224
+ return result;
225
+ }
226
+
227
+ /**
228
+ * When there is a new event
229
+ * This operation triggers when a new event is added to a group calendar.
230
+ */
231
+ public static async OnNewEvent(groupId: string): Promise<IOperationResult<OnNewEvent_Response>> {
232
+ const params: { groupId: string } = { groupId };
233
+ const result = await Office365GroupsService.client.executeAsync<{ groupId: string }, OnNewEvent_Response>(
234
+ {
235
+ connectorOperation: {
236
+ tableName: Office365GroupsService.dataSourceName,
237
+ operationName: 'OnNewEvent',
238
+ parameters: params
239
+ },
240
+ });
241
+ return result;
242
+ }
243
+
244
+ /**
245
+ * Send an HTTP request V2
246
+ * Construct a Microsoft Graph REST API request to invoke. There is one segment that is supported: /groups. Learn more: https://docs.microsoft.com/en-us/graph/use-the-api.
247
+ */
248
+ public static async HttpRequestV2(Uri: string, Method: string, Body?: string, ContentType?: string, CustomHeader1?: string, CustomHeader2?: string, CustomHeader3?: string, CustomHeader4?: string, CustomHeader5?: string): Promise<IOperationResult<ObjectWithoutType>> {
249
+ const params: { Uri: string, Method: string, Body?: string, ContentType?: string, CustomHeader1?: string, CustomHeader2?: string, CustomHeader3?: string, CustomHeader4?: string, CustomHeader5?: string } = { Uri, Method, Body, ContentType, CustomHeader1, CustomHeader2, CustomHeader3, CustomHeader4, CustomHeader5 };
250
+ const result = await Office365GroupsService.client.executeAsync<{ Uri: string, Method: string, Body?: string, ContentType?: string, CustomHeader1?: string, CustomHeader2?: string, CustomHeader3?: string, CustomHeader4?: string, CustomHeader5?: string }, ObjectWithoutType>(
251
+ {
252
+ connectorOperation: {
253
+ tableName: Office365GroupsService.dataSourceName,
254
+ operationName: 'HttpRequestV2',
255
+ parameters: params
256
+ },
257
+ });
258
+ return result;
259
+ }
260
+
261
+ /**
262
+ * Send an HTTP request
263
+ * Construct a Microsoft Graph REST API request to invoke. Learn more: https://docs.microsoft.com/en-us/graph/use-the-api
264
+ */
265
+ public static async HttpRequest(Uri: string, Method: string, Body?: string, ContentType?: string, CustomHeader1?: string, CustomHeader2?: string, CustomHeader3?: string, CustomHeader4?: string, CustomHeader5?: string): Promise<IOperationResult<ObjectWithoutType>> {
266
+ const params: { Uri: string, Method: string, Body?: string, ContentType?: string, CustomHeader1?: string, CustomHeader2?: string, CustomHeader3?: string, CustomHeader4?: string, CustomHeader5?: string } = { Uri, Method, Body, ContentType, CustomHeader1, CustomHeader2, CustomHeader3, CustomHeader4, CustomHeader5 };
267
+ const result = await Office365GroupsService.client.executeAsync<{ Uri: string, Method: string, Body?: string, ContentType?: string, CustomHeader1?: string, CustomHeader2?: string, CustomHeader3?: string, CustomHeader4?: string, CustomHeader5?: string }, ObjectWithoutType>(
268
+ {
269
+ connectorOperation: {
270
+ tableName: Office365GroupsService.dataSourceName,
271
+ operationName: 'HttpRequest',
272
+ parameters: params
273
+ },
274
+ });
275
+ return result;
276
+ }
277
+
278
+ /**
279
+ * List deleted groups
280
+ * Lists deleted groups that can be restored.
281
+ */
282
+ public static async ListDeletedGroups(): Promise<IOperationResult<ListGroups_Response>> {
283
+ const result = await Office365GroupsService.client.executeAsync<void, ListGroups_Response>(
284
+ {
285
+ connectorOperation: {
286
+ tableName: Office365GroupsService.dataSourceName,
287
+ operationName: 'ListDeletedGroups',
288
+ },
289
+ });
290
+ return result;
291
+ }
292
+
293
+ /**
294
+ * Restore a deleted group
295
+ * Restore a recently deleted group
296
+ */
297
+ public static async RestoreDeletedGroup(groupId: string): Promise<IOperationResult<void>> {
298
+ const params: { groupId: string } = { groupId };
299
+ const result = await Office365GroupsService.client.executeAsync<{ groupId: string }, void>(
300
+ {
301
+ connectorOperation: {
302
+ tableName: Office365GroupsService.dataSourceName,
303
+ operationName: 'RestoreDeletedGroup',
304
+ parameters: params
305
+ },
306
+ });
307
+ return result;
308
+ }
309
+
310
+ /**
311
+ * List deleted groups by owner
312
+ * List deleted groups that can be restored by owner
313
+ */
314
+ public static async ListDeletedGroupsByOwner(userId: string): Promise<IOperationResult<ListGroups_Response>> {
315
+ const params: { userId: string } = { userId };
316
+ const result = await Office365GroupsService.client.executeAsync<{ userId: string }, ListGroups_Response>(
317
+ {
318
+ connectorOperation: {
319
+ tableName: Office365GroupsService.dataSourceName,
320
+ operationName: 'ListDeletedGroupsByOwner',
321
+ parameters: params
322
+ },
323
+ });
324
+ return result;
325
+ }
326
+ }