@oneuptime/common 9.2.12 → 9.2.14

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 (190) hide show
  1. package/Models/DatabaseModels/AlertInternalNote.ts +29 -0
  2. package/Models/DatabaseModels/IncidentInternalNote.ts +29 -0
  3. package/Models/DatabaseModels/IncidentPublicNote.ts +29 -0
  4. package/Models/DatabaseModels/Index.ts +3 -11
  5. package/Models/DatabaseModels/{CopilotPullRequest.ts → LlmProvider.ts} +243 -248
  6. package/Models/DatabaseModels/ScheduledMaintenanceInternalNote.ts +29 -0
  7. package/Models/DatabaseModels/ScheduledMaintenancePublicNote.ts +29 -0
  8. package/Server/API/LlmProviderAPI.ts +57 -0
  9. package/Server/API/MicrosoftTeamsAPI.ts +2 -146
  10. package/Server/API/SlackAPI.ts +105 -0
  11. package/Server/API/StatusPageAPI.ts +6 -0
  12. package/Server/Infrastructure/Postgres/SchemaMigrations/1765477339178-MigrationName.ts +71 -0
  13. package/Server/Infrastructure/Postgres/SchemaMigrations/1765540325149-MigrationName.ts +45 -0
  14. package/Server/Infrastructure/Postgres/SchemaMigrations/1765540549739-MigrationName.ts +61 -0
  15. package/Server/Infrastructure/Postgres/SchemaMigrations/1765544010078-MigrationName.ts +35 -0
  16. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +8 -0
  17. package/Server/Middleware/SlackAuthorization.ts +4 -1
  18. package/Server/Services/AlertInternalNoteService.ts +26 -0
  19. package/Server/Services/IncidentInternalNoteService.ts +26 -0
  20. package/Server/Services/IncidentPublicNoteService.ts +26 -0
  21. package/Server/Services/Index.ts +2 -11
  22. package/Server/Services/LlmProviderService.ts +100 -0
  23. package/Server/Services/ScheduledMaintenanceInternalNoteService.ts +26 -0
  24. package/Server/Services/ScheduledMaintenancePublicNoteService.ts +26 -0
  25. package/Server/Services/StatusPageService.ts +3 -0
  26. package/Server/Utils/Express.ts +1 -0
  27. package/Server/Utils/StartServer.ts +5 -0
  28. package/Server/Utils/StatusPageResource.ts +89 -0
  29. package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.ts +96 -55
  30. package/Server/Utils/Workspace/Slack/Actions/ActionTypes.ts +16 -0
  31. package/Server/Utils/Workspace/Slack/Actions/Alert.ts +184 -1
  32. package/Server/Utils/Workspace/Slack/Actions/Incident.ts +224 -1
  33. package/Server/Utils/Workspace/Slack/Actions/ScheduledMaintenance.ts +232 -1
  34. package/Server/Utils/Workspace/Slack/Slack.ts +113 -0
  35. package/Server/Utils/Workspace/Slack/app-manifest.json +13 -2
  36. package/Tests/Server/Utils/StatusPageResource.test.ts +161 -0
  37. package/Types/Icon/IconProp.ts +1 -0
  38. package/Types/LLM/Index.ts +4 -0
  39. package/Types/LLM/LlmType.ts +7 -0
  40. package/Types/Permission.ts +38 -113
  41. package/UI/Components/Icon/Icon.tsx +8 -0
  42. package/UI/Components/Link/Link.tsx +5 -1
  43. package/build/dist/Models/DatabaseModels/AlertInternalNote.js +30 -0
  44. package/build/dist/Models/DatabaseModels/AlertInternalNote.js.map +1 -1
  45. package/build/dist/Models/DatabaseModels/IncidentInternalNote.js +30 -0
  46. package/build/dist/Models/DatabaseModels/IncidentInternalNote.js.map +1 -1
  47. package/build/dist/Models/DatabaseModels/IncidentPublicNote.js +30 -0
  48. package/build/dist/Models/DatabaseModels/IncidentPublicNote.js.map +1 -1
  49. package/build/dist/Models/DatabaseModels/Index.js +2 -10
  50. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  51. package/build/dist/Models/DatabaseModels/{CopilotPullRequest.js → LlmProvider.js} +263 -255
  52. package/build/dist/Models/DatabaseModels/LlmProvider.js.map +1 -0
  53. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceInternalNote.js +30 -0
  54. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceInternalNote.js.map +1 -1
  55. package/build/dist/Models/DatabaseModels/ScheduledMaintenancePublicNote.js +30 -0
  56. package/build/dist/Models/DatabaseModels/ScheduledMaintenancePublicNote.js.map +1 -1
  57. package/build/dist/Server/API/LlmProviderAPI.js +36 -0
  58. package/build/dist/Server/API/LlmProviderAPI.js.map +1 -0
  59. package/build/dist/Server/API/MicrosoftTeamsAPI.js +2 -91
  60. package/build/dist/Server/API/MicrosoftTeamsAPI.js.map +1 -1
  61. package/build/dist/Server/API/SlackAPI.js +74 -0
  62. package/build/dist/Server/API/SlackAPI.js.map +1 -1
  63. package/build/dist/Server/API/StatusPageAPI.js +6 -0
  64. package/build/dist/Server/API/StatusPageAPI.js.map +1 -1
  65. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1765477339178-MigrationName.js +30 -0
  66. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1765477339178-MigrationName.js.map +1 -0
  67. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1765540325149-MigrationName.js +22 -0
  68. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1765540325149-MigrationName.js.map +1 -0
  69. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1765540549739-MigrationName.js +39 -0
  70. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1765540549739-MigrationName.js.map +1 -0
  71. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1765544010078-MigrationName.js +18 -0
  72. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1765544010078-MigrationName.js.map +1 -0
  73. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +8 -0
  74. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  75. package/build/dist/Server/Middleware/SlackAuthorization.js +4 -1
  76. package/build/dist/Server/Middleware/SlackAuthorization.js.map +1 -1
  77. package/build/dist/Server/Services/AlertInternalNoteService.js +24 -0
  78. package/build/dist/Server/Services/AlertInternalNoteService.js.map +1 -1
  79. package/build/dist/Server/Services/IncidentInternalNoteService.js +24 -0
  80. package/build/dist/Server/Services/IncidentInternalNoteService.js.map +1 -1
  81. package/build/dist/Server/Services/IncidentPublicNoteService.js +24 -0
  82. package/build/dist/Server/Services/IncidentPublicNoteService.js.map +1 -1
  83. package/build/dist/Server/Services/Index.js +2 -10
  84. package/build/dist/Server/Services/Index.js.map +1 -1
  85. package/build/dist/Server/Services/LlmProviderService.js +85 -0
  86. package/build/dist/Server/Services/LlmProviderService.js.map +1 -0
  87. package/build/dist/Server/Services/ScheduledMaintenanceInternalNoteService.js +24 -0
  88. package/build/dist/Server/Services/ScheduledMaintenanceInternalNoteService.js.map +1 -1
  89. package/build/dist/Server/Services/ScheduledMaintenancePublicNoteService.js +24 -0
  90. package/build/dist/Server/Services/ScheduledMaintenancePublicNoteService.js.map +1 -1
  91. package/build/dist/Server/Services/StatusPageService.js +3 -0
  92. package/build/dist/Server/Services/StatusPageService.js.map +1 -1
  93. package/build/dist/Server/Utils/Express.js.map +1 -1
  94. package/build/dist/Server/Utils/StartServer.js +5 -0
  95. package/build/dist/Server/Utils/StartServer.js.map +1 -1
  96. package/build/dist/Server/Utils/StatusPageResource.js +68 -0
  97. package/build/dist/Server/Utils/StatusPageResource.js.map +1 -0
  98. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js +73 -42
  99. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js.map +1 -1
  100. package/build/dist/Server/Utils/Workspace/Slack/Actions/ActionTypes.js +13 -0
  101. package/build/dist/Server/Utils/Workspace/Slack/Actions/ActionTypes.js.map +1 -1
  102. package/build/dist/Server/Utils/Workspace/Slack/Actions/Alert.js +143 -1
  103. package/build/dist/Server/Utils/Workspace/Slack/Actions/Alert.js.map +1 -1
  104. package/build/dist/Server/Utils/Workspace/Slack/Actions/Incident.js +173 -1
  105. package/build/dist/Server/Utils/Workspace/Slack/Actions/Incident.js.map +1 -1
  106. package/build/dist/Server/Utils/Workspace/Slack/Actions/ScheduledMaintenance.js +173 -1
  107. package/build/dist/Server/Utils/Workspace/Slack/Actions/ScheduledMaintenance.js.map +1 -1
  108. package/build/dist/Server/Utils/Workspace/Slack/Slack.js +92 -0
  109. package/build/dist/Server/Utils/Workspace/Slack/Slack.js.map +1 -1
  110. package/build/dist/Server/Utils/Workspace/Slack/app-manifest.json +12 -2
  111. package/build/dist/Tests/Server/Utils/StatusPageResource.test.js +122 -0
  112. package/build/dist/Tests/Server/Utils/StatusPageResource.test.js.map +1 -0
  113. package/build/dist/Types/Icon/IconProp.js +1 -0
  114. package/build/dist/Types/Icon/IconProp.js.map +1 -1
  115. package/build/dist/Types/LLM/Index.js +4 -0
  116. package/build/dist/Types/LLM/Index.js.map +1 -0
  117. package/build/dist/Types/LLM/LlmType.js +8 -0
  118. package/build/dist/Types/LLM/LlmType.js.map +1 -0
  119. package/build/dist/Types/Permission.js +32 -97
  120. package/build/dist/Types/Permission.js.map +1 -1
  121. package/build/dist/UI/Components/Icon/Icon.js +3 -0
  122. package/build/dist/UI/Components/Icon/Icon.js.map +1 -1
  123. package/build/dist/UI/Components/Link/Link.js +4 -1
  124. package/build/dist/UI/Components/Link/Link.js.map +1 -1
  125. package/package.json +5 -1
  126. package/Models/DatabaseModels/CopilotAction.ts +0 -772
  127. package/Models/DatabaseModels/CopilotActionTypePriority.ts +0 -340
  128. package/Models/DatabaseModels/CopilotCodeRepository.ts +0 -637
  129. package/Models/DatabaseModels/ServiceCopilotCodeRepository.ts +0 -544
  130. package/Server/API/CopilotActionAPI.ts +0 -418
  131. package/Server/API/CopilotCodeRepositoryAPI.ts +0 -127
  132. package/Server/API/CopilotPullRequestAPI.ts +0 -243
  133. package/Server/Docs/CodeRepository.md +0 -43
  134. package/Server/Middleware/CodeRepositoryAuthorization.ts +0 -50
  135. package/Server/Services/CopilotActionService.ts +0 -10
  136. package/Server/Services/CopilotActionTypePriorityService.ts +0 -67
  137. package/Server/Services/CopilotCodeRepositoryService.ts +0 -62
  138. package/Server/Services/CopilotPullRequestService.ts +0 -10
  139. package/Server/Services/ServiceCopilotCodeRepositoryService.ts +0 -10
  140. package/Types/Copilot/CopilotActionProps/DirectoryActionProp.ts +0 -3
  141. package/Types/Copilot/CopilotActionProps/ExceptionActionProp.ts +0 -4
  142. package/Types/Copilot/CopilotActionProps/FileActionProp.ts +0 -7
  143. package/Types/Copilot/CopilotActionProps/FunctionActionProp.ts +0 -5
  144. package/Types/Copilot/CopilotActionProps/Index.ts +0 -96
  145. package/Types/Copilot/CopilotActionProps/SpanActionProp.ts +0 -4
  146. package/Types/Copilot/CopilotActionStatus.ts +0 -114
  147. package/Types/Copilot/CopilotActionType.ts +0 -212
  148. package/build/dist/Models/DatabaseModels/CopilotAction.js +0 -793
  149. package/build/dist/Models/DatabaseModels/CopilotAction.js.map +0 -1
  150. package/build/dist/Models/DatabaseModels/CopilotActionTypePriority.js +0 -358
  151. package/build/dist/Models/DatabaseModels/CopilotActionTypePriority.js.map +0 -1
  152. package/build/dist/Models/DatabaseModels/CopilotCodeRepository.js +0 -656
  153. package/build/dist/Models/DatabaseModels/CopilotCodeRepository.js.map +0 -1
  154. package/build/dist/Models/DatabaseModels/CopilotPullRequest.js.map +0 -1
  155. package/build/dist/Models/DatabaseModels/ServiceCopilotCodeRepository.js +0 -561
  156. package/build/dist/Models/DatabaseModels/ServiceCopilotCodeRepository.js.map +0 -1
  157. package/build/dist/Server/API/CopilotActionAPI.js +0 -295
  158. package/build/dist/Server/API/CopilotActionAPI.js.map +0 -1
  159. package/build/dist/Server/API/CopilotCodeRepositoryAPI.js +0 -91
  160. package/build/dist/Server/API/CopilotCodeRepositoryAPI.js.map +0 -1
  161. package/build/dist/Server/API/CopilotPullRequestAPI.js +0 -166
  162. package/build/dist/Server/API/CopilotPullRequestAPI.js.map +0 -1
  163. package/build/dist/Server/Middleware/CodeRepositoryAuthorization.js +0 -48
  164. package/build/dist/Server/Middleware/CodeRepositoryAuthorization.js.map +0 -1
  165. package/build/dist/Server/Services/CopilotActionService.js +0 -9
  166. package/build/dist/Server/Services/CopilotActionService.js.map +0 -1
  167. package/build/dist/Server/Services/CopilotActionTypePriorityService.js +0 -61
  168. package/build/dist/Server/Services/CopilotActionTypePriorityService.js.map +0 -1
  169. package/build/dist/Server/Services/CopilotCodeRepositoryService.js +0 -61
  170. package/build/dist/Server/Services/CopilotCodeRepositoryService.js.map +0 -1
  171. package/build/dist/Server/Services/CopilotPullRequestService.js +0 -9
  172. package/build/dist/Server/Services/CopilotPullRequestService.js.map +0 -1
  173. package/build/dist/Server/Services/ServiceCopilotCodeRepositoryService.js +0 -9
  174. package/build/dist/Server/Services/ServiceCopilotCodeRepositoryService.js.map +0 -1
  175. package/build/dist/Types/Copilot/CopilotActionProps/DirectoryActionProp.js +0 -2
  176. package/build/dist/Types/Copilot/CopilotActionProps/DirectoryActionProp.js.map +0 -1
  177. package/build/dist/Types/Copilot/CopilotActionProps/ExceptionActionProp.js +0 -2
  178. package/build/dist/Types/Copilot/CopilotActionProps/ExceptionActionProp.js.map +0 -1
  179. package/build/dist/Types/Copilot/CopilotActionProps/FileActionProp.js +0 -2
  180. package/build/dist/Types/Copilot/CopilotActionProps/FileActionProp.js.map +0 -1
  181. package/build/dist/Types/Copilot/CopilotActionProps/FunctionActionProp.js +0 -2
  182. package/build/dist/Types/Copilot/CopilotActionProps/FunctionActionProp.js.map +0 -1
  183. package/build/dist/Types/Copilot/CopilotActionProps/Index.js +0 -64
  184. package/build/dist/Types/Copilot/CopilotActionProps/Index.js.map +0 -1
  185. package/build/dist/Types/Copilot/CopilotActionProps/SpanActionProp.js +0 -2
  186. package/build/dist/Types/Copilot/CopilotActionProps/SpanActionProp.js.map +0 -1
  187. package/build/dist/Types/Copilot/CopilotActionStatus.js +0 -96
  188. package/build/dist/Types/Copilot/CopilotActionStatus.js.map +0 -1
  189. package/build/dist/Types/Copilot/CopilotActionType.js +0 -175
  190. package/build/dist/Types/Copilot/CopilotActionType.js.map +0 -1
@@ -1,544 +0,0 @@
1
- import CodeRepository from "./CopilotCodeRepository";
2
- import Project from "./Project";
3
- import ServiceCatalog from "./ServiceCatalog";
4
- import User from "./User";
5
- import BaseModel from "./DatabaseBaseModel/DatabaseBaseModel";
6
- import Route from "../../Types/API/Route";
7
- import { PlanType } from "../../Types/Billing/SubscriptionPlan";
8
- import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
9
- import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
10
- import TableBillingAccessControl from "../../Types/Database/AccessControl/TableBillingAccessControl";
11
- import CanAccessIfCanReadOn from "../../Types/Database/CanAccessIfCanReadOn";
12
- import ColumnLength from "../../Types/Database/ColumnLength";
13
- import ColumnType from "../../Types/Database/ColumnType";
14
- import CrudApiEndpoint from "../../Types/Database/CrudApiEndpoint";
15
- import EnableDocumentation from "../../Types/Database/EnableDocumentation";
16
- import EnableWorkflow from "../../Types/Database/EnableWorkflow";
17
- import TableColumn from "../../Types/Database/TableColumn";
18
- import TableColumnType from "../../Types/Database/TableColumnType";
19
- import TableMetadata from "../../Types/Database/TableMetadata";
20
- import TenantColumn from "../../Types/Database/TenantColumn";
21
- import IconProp from "../../Types/Icon/IconProp";
22
- import ObjectID from "../../Types/ObjectID";
23
- import Permission from "../../Types/Permission";
24
- import { Column, Entity, Index, JoinColumn, ManyToOne } from "typeorm";
25
-
26
- @CanAccessIfCanReadOn("codeRepositoryId")
27
- @EnableDocumentation()
28
- @TenantColumn("projectId")
29
- @TableBillingAccessControl({
30
- create: PlanType.Growth,
31
- read: PlanType.Growth,
32
- update: PlanType.Growth,
33
- delete: PlanType.Growth,
34
- })
35
- @TableAccessControl({
36
- create: [
37
- Permission.ProjectOwner,
38
- Permission.ProjectAdmin,
39
- Permission.ProjectMember,
40
- Permission.CreateServiceCopilotCodeRepository,
41
- ],
42
- read: [
43
- Permission.ProjectOwner,
44
- Permission.ProjectAdmin,
45
- Permission.ProjectMember,
46
- Permission.ProjectMember,
47
- Permission.ReadServiceCopilotCodeRepository,
48
- ],
49
- delete: [
50
- Permission.ProjectOwner,
51
- Permission.ProjectAdmin,
52
- Permission.ProjectMember,
53
- Permission.DeleteServiceCopilotCodeRepository,
54
- ],
55
- update: [
56
- Permission.ProjectOwner,
57
- Permission.ProjectAdmin,
58
- Permission.ProjectMember,
59
- Permission.EditServiceCopilotCodeRepository,
60
- ],
61
- })
62
- @EnableWorkflow({
63
- create: true,
64
- delete: true,
65
- update: true,
66
- read: true,
67
- })
68
- @CrudApiEndpoint(new Route("/service-copilot-code-repository"))
69
- @TableMetadata({
70
- tableName: "ServiceCopilotCodeRepository",
71
- singularName: "Service Code Repository for Copilot",
72
- pluralName: "Service Code Repositories for Copilot",
73
- icon: IconProp.SquareStack,
74
- tableDescription:
75
- "Add services to your code repository to categorize and manage them easily. This will help copilot understand and generate code.",
76
- })
77
- @Entity({
78
- name: "ServiceCopilotCodeRepository",
79
- })
80
- export default class ServiceCopilotCodeRepository extends BaseModel {
81
- @ColumnAccessControl({
82
- create: [
83
- Permission.ProjectOwner,
84
- Permission.ProjectAdmin,
85
- Permission.ProjectMember,
86
- Permission.CreateServiceCopilotCodeRepository,
87
- ],
88
- read: [
89
- Permission.ProjectOwner,
90
- Permission.ProjectAdmin,
91
- Permission.ProjectMember,
92
- Permission.ProjectMember,
93
- Permission.ReadServiceCopilotCodeRepository,
94
- ],
95
- update: [],
96
- })
97
- @TableColumn({
98
- manyToOneRelationColumn: "projectId",
99
- type: TableColumnType.Entity,
100
- modelType: Project,
101
- title: "Project",
102
- description: "Relation to Project Resource in which this object belongs",
103
- })
104
- @ManyToOne(
105
- () => {
106
- return Project;
107
- },
108
- {
109
- eager: false,
110
- nullable: true,
111
- onDelete: "CASCADE",
112
- orphanedRowAction: "nullify",
113
- },
114
- )
115
- @JoinColumn({ name: "projectId" })
116
- public project?: Project = undefined;
117
-
118
- @ColumnAccessControl({
119
- create: [
120
- Permission.ProjectOwner,
121
- Permission.ProjectAdmin,
122
- Permission.ProjectMember,
123
- Permission.CreateServiceCopilotCodeRepository,
124
- ],
125
- read: [
126
- Permission.ProjectOwner,
127
- Permission.ProjectAdmin,
128
- Permission.ProjectMember,
129
- Permission.ProjectMember,
130
- Permission.ReadServiceCopilotCodeRepository,
131
- ],
132
- update: [],
133
- })
134
- @Index()
135
- @TableColumn({
136
- type: TableColumnType.ObjectID,
137
- required: true,
138
- canReadOnRelationQuery: true,
139
- title: "Project ID",
140
- description: "ID of your OneUptime Project in which this object belongs",
141
- })
142
- @Column({
143
- type: ColumnType.ObjectID,
144
- nullable: false,
145
- transformer: ObjectID.getDatabaseTransformer(),
146
- })
147
- public projectId?: ObjectID = undefined;
148
-
149
- @ColumnAccessControl({
150
- create: [
151
- Permission.ProjectOwner,
152
- Permission.ProjectAdmin,
153
- Permission.ProjectMember,
154
- Permission.CreateServiceCopilotCodeRepository,
155
- ],
156
- read: [
157
- Permission.ProjectOwner,
158
- Permission.ProjectAdmin,
159
- Permission.ProjectMember,
160
- Permission.ProjectMember,
161
- Permission.ReadServiceCopilotCodeRepository,
162
- ],
163
- update: [
164
- Permission.ProjectOwner,
165
- Permission.ProjectAdmin,
166
- Permission.ProjectMember,
167
- Permission.EditServiceCopilotCodeRepository,
168
- ],
169
- })
170
- @TableColumn({
171
- required: true,
172
- isDefaultValueColumn: true,
173
- type: TableColumnType.LongText,
174
- canReadOnRelationQuery: true,
175
- title: "Path in Repository",
176
- description: "Path in your code repository where this service is located",
177
- defaultValue: "/",
178
- })
179
- @Column({
180
- nullable: false,
181
- type: ColumnType.LongText,
182
- length: ColumnLength.LongText,
183
- default: "/",
184
- })
185
- public servicePathInRepository?: string = undefined;
186
-
187
- @ColumnAccessControl({
188
- create: [
189
- Permission.ProjectOwner,
190
- Permission.ProjectAdmin,
191
- Permission.ProjectMember,
192
- Permission.CreateServiceCopilotCodeRepository,
193
- ],
194
- read: [
195
- Permission.ProjectOwner,
196
- Permission.ProjectAdmin,
197
- Permission.ProjectMember,
198
- Permission.ProjectMember,
199
- Permission.ReadServiceCopilotCodeRepository,
200
- ],
201
- update: [
202
- Permission.ProjectOwner,
203
- Permission.ProjectAdmin,
204
- Permission.ProjectMember,
205
- Permission.EditServiceCopilotCodeRepository,
206
- ],
207
- })
208
- @TableColumn({
209
- required: false,
210
- isDefaultValueColumn: true,
211
- type: TableColumnType.Number,
212
- canReadOnRelationQuery: true,
213
- title: "Limit Number of Open Pull Requests Count",
214
- description: "Limit Number of Open Pull Requests Count for this service",
215
- })
216
- @Column({
217
- nullable: true,
218
- type: ColumnType.Number,
219
- default: 3,
220
- })
221
- public limitNumberOfOpenPullRequestsCount?: number = undefined;
222
-
223
- @ColumnAccessControl({
224
- create: [
225
- Permission.ProjectOwner,
226
- Permission.ProjectAdmin,
227
- Permission.ProjectMember,
228
- Permission.CreateServiceCopilotCodeRepository,
229
- ],
230
- read: [
231
- Permission.ProjectOwner,
232
- Permission.ProjectAdmin,
233
- Permission.ProjectMember,
234
- Permission.ProjectMember,
235
- Permission.ReadServiceCopilotCodeRepository,
236
- ],
237
- update: [
238
- Permission.ProjectOwner,
239
- Permission.ProjectAdmin,
240
- Permission.ProjectMember,
241
- Permission.EditServiceCopilotCodeRepository,
242
- ],
243
- })
244
- @TableColumn({
245
- required: true,
246
- isDefaultValueColumn: true,
247
- type: TableColumnType.Boolean,
248
- canReadOnRelationQuery: true,
249
- title: "Enable Pull Requests",
250
- description:
251
- "Copilot will automatically improve your code by creating pull requests for this service",
252
- })
253
- @Column({
254
- nullable: false,
255
- type: ColumnType.Boolean,
256
- default: true,
257
- })
258
- public enablePullRequests?: boolean = undefined;
259
-
260
- @ColumnAccessControl({
261
- create: [
262
- Permission.ProjectOwner,
263
- Permission.ProjectAdmin,
264
- Permission.ProjectMember,
265
- Permission.CreateServiceCopilotCodeRepository,
266
- ],
267
- read: [
268
- Permission.ProjectOwner,
269
- Permission.ProjectAdmin,
270
- Permission.ProjectMember,
271
- Permission.ProjectMember,
272
- Permission.ReadServiceCopilotCodeRepository,
273
- ],
274
- update: [],
275
- })
276
- @TableColumn({
277
- manyToOneRelationColumn: "createdByUserId",
278
- type: TableColumnType.Entity,
279
- modelType: User,
280
- title: "Created by User",
281
- description:
282
- "Relation to User who created this object (if this object was created by a User)",
283
- })
284
- @ManyToOne(
285
- () => {
286
- return User;
287
- },
288
- {
289
- eager: false,
290
- nullable: true,
291
- onDelete: "SET NULL",
292
- orphanedRowAction: "nullify",
293
- },
294
- )
295
- @JoinColumn({ name: "createdByUserId" })
296
- public createdByUser?: User = undefined;
297
-
298
- @ColumnAccessControl({
299
- create: [
300
- Permission.ProjectOwner,
301
- Permission.ProjectAdmin,
302
- Permission.ProjectMember,
303
- Permission.CreateServiceCopilotCodeRepository,
304
- ],
305
- read: [
306
- Permission.ProjectOwner,
307
- Permission.ProjectAdmin,
308
- Permission.ProjectMember,
309
- Permission.ProjectMember,
310
- Permission.ReadServiceCopilotCodeRepository,
311
- ],
312
- update: [],
313
- })
314
- @TableColumn({
315
- type: TableColumnType.ObjectID,
316
- title: "Created by User ID",
317
- description:
318
- "User ID who created this object (if this object was created by a User)",
319
- })
320
- @Column({
321
- type: ColumnType.ObjectID,
322
- nullable: true,
323
- transformer: ObjectID.getDatabaseTransformer(),
324
- })
325
- public createdByUserId?: ObjectID = undefined;
326
-
327
- @ColumnAccessControl({
328
- create: [],
329
- read: [
330
- Permission.ProjectOwner,
331
- Permission.ProjectAdmin,
332
- Permission.ProjectMember,
333
- Permission.ProjectMember,
334
- Permission.ReadServiceCopilotCodeRepository,
335
- ],
336
- update: [],
337
- })
338
- @TableColumn({
339
- manyToOneRelationColumn: "deletedByUserId",
340
- type: TableColumnType.Entity,
341
- title: "Deleted by User",
342
- modelType: User,
343
- description:
344
- "Relation to User who deleted this object (if this object was deleted by a User)",
345
- })
346
- @ManyToOne(
347
- () => {
348
- return User;
349
- },
350
- {
351
- cascade: false,
352
- eager: false,
353
- nullable: true,
354
- onDelete: "SET NULL",
355
- orphanedRowAction: "nullify",
356
- },
357
- )
358
- @JoinColumn({ name: "deletedByUserId" })
359
- public deletedByUser?: User = undefined;
360
-
361
- @ColumnAccessControl({
362
- create: [],
363
- read: [
364
- Permission.ProjectOwner,
365
- Permission.ProjectAdmin,
366
- Permission.ProjectMember,
367
- Permission.ProjectMember,
368
- Permission.ReadServiceCopilotCodeRepository,
369
- ],
370
- update: [],
371
- })
372
- @TableColumn({
373
- type: TableColumnType.ObjectID,
374
- title: "Deleted by User ID",
375
- description:
376
- "User ID who deleted this object (if this object was deleted by a User)",
377
- })
378
- @Column({
379
- type: ColumnType.ObjectID,
380
- nullable: true,
381
- transformer: ObjectID.getDatabaseTransformer(),
382
- })
383
- public deletedByUserId?: ObjectID = undefined;
384
-
385
- @ColumnAccessControl({
386
- create: [
387
- Permission.ProjectOwner,
388
- Permission.ProjectAdmin,
389
- Permission.ProjectMember,
390
- Permission.CreateServiceCopilotCodeRepository,
391
- ],
392
- read: [
393
- Permission.ProjectOwner,
394
- Permission.ProjectAdmin,
395
- Permission.ProjectMember,
396
- Permission.ProjectMember,
397
- Permission.ReadServiceCopilotCodeRepository,
398
- ],
399
- update: [
400
- Permission.ProjectOwner,
401
- Permission.ProjectAdmin,
402
- Permission.ProjectMember,
403
- Permission.EditServiceCopilotCodeRepository,
404
- ],
405
- })
406
- @TableColumn({
407
- manyToOneRelationColumn: "codeRepositoryId",
408
- type: TableColumnType.Entity,
409
- modelType: CodeRepository,
410
- title: "Code Repository",
411
- description:
412
- "Relation to CodeRepository Resource in which this object belongs",
413
- })
414
- @ManyToOne(
415
- () => {
416
- return CodeRepository;
417
- },
418
- {
419
- eager: false,
420
- nullable: true,
421
- onDelete: "CASCADE",
422
- orphanedRowAction: "nullify",
423
- },
424
- )
425
- @JoinColumn({ name: "codeRepositoryId" })
426
- public codeRepository?: CodeRepository = undefined;
427
-
428
- @ColumnAccessControl({
429
- create: [
430
- Permission.ProjectOwner,
431
- Permission.ProjectAdmin,
432
- Permission.ProjectMember,
433
- Permission.CreateServiceCopilotCodeRepository,
434
- ],
435
- read: [
436
- Permission.ProjectOwner,
437
- Permission.ProjectAdmin,
438
- Permission.ProjectMember,
439
- Permission.ProjectMember,
440
- Permission.ReadServiceCopilotCodeRepository,
441
- ],
442
- update: [
443
- Permission.ProjectOwner,
444
- Permission.ProjectAdmin,
445
- Permission.ProjectMember,
446
- Permission.EditServiceCopilotCodeRepository,
447
- ],
448
- })
449
- @Index()
450
- @TableColumn({
451
- type: TableColumnType.ObjectID,
452
- required: true,
453
- canReadOnRelationQuery: true,
454
- title: "Code Repository ID",
455
- description:
456
- "ID of your OneUptime Code Repository in which this object belongs",
457
- })
458
- @Column({
459
- type: ColumnType.ObjectID,
460
- nullable: false,
461
- transformer: ObjectID.getDatabaseTransformer(),
462
- })
463
- public codeRepositoryId?: ObjectID = undefined;
464
-
465
- @ColumnAccessControl({
466
- create: [
467
- Permission.ProjectOwner,
468
- Permission.ProjectAdmin,
469
- Permission.ProjectMember,
470
- Permission.CreateServiceCopilotCodeRepository,
471
- ],
472
- read: [
473
- Permission.ProjectOwner,
474
- Permission.ProjectAdmin,
475
- Permission.ProjectMember,
476
- Permission.ProjectMember,
477
- Permission.ReadServiceCopilotCodeRepository,
478
- ],
479
- update: [
480
- Permission.ProjectOwner,
481
- Permission.ProjectAdmin,
482
- Permission.ProjectMember,
483
- Permission.EditServiceCopilotCodeRepository,
484
- ],
485
- })
486
- @TableColumn({
487
- manyToOneRelationColumn: "serviceCatalogId",
488
- type: TableColumnType.Entity,
489
- modelType: ServiceCatalog,
490
- title: "Service Catalog",
491
- description:
492
- "Relation to Service Catalog Resource in which this object belongs",
493
- })
494
- @ManyToOne(
495
- () => {
496
- return ServiceCatalog;
497
- },
498
- {
499
- eager: false,
500
- nullable: true,
501
- onDelete: "CASCADE",
502
- orphanedRowAction: "nullify",
503
- },
504
- )
505
- @JoinColumn({ name: "serviceCatalogId" })
506
- public serviceCatalog?: ServiceCatalog = undefined;
507
-
508
- @ColumnAccessControl({
509
- create: [
510
- Permission.ProjectOwner,
511
- Permission.ProjectAdmin,
512
- Permission.ProjectMember,
513
- Permission.CreateServiceCopilotCodeRepository,
514
- ],
515
- read: [
516
- Permission.ProjectOwner,
517
- Permission.ProjectAdmin,
518
- Permission.ProjectMember,
519
- Permission.ProjectMember,
520
- Permission.ReadServiceCopilotCodeRepository,
521
- ],
522
- update: [
523
- Permission.ProjectOwner,
524
- Permission.ProjectAdmin,
525
- Permission.ProjectMember,
526
- Permission.EditServiceCopilotCodeRepository,
527
- ],
528
- })
529
- @Index()
530
- @TableColumn({
531
- type: TableColumnType.ObjectID,
532
- required: true,
533
- canReadOnRelationQuery: true,
534
- title: "Service Catalog ID",
535
- description:
536
- "ID of your OneUptime ServiceCatalog in which this object belongs",
537
- })
538
- @Column({
539
- type: ColumnType.ObjectID,
540
- nullable: false,
541
- transformer: ObjectID.getDatabaseTransformer(),
542
- })
543
- public serviceCatalogId?: ObjectID = undefined;
544
- }