@oneuptime/common 10.0.92 → 10.0.94

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 (146) hide show
  1. package/Models/DatabaseModels/DockerResource.ts +497 -0
  2. package/Models/DatabaseModels/Index.ts +2 -0
  3. package/Models/DatabaseModels/Monitor.ts +83 -0
  4. package/Models/DatabaseModels/TeamMember.ts +0 -2
  5. package/Server/API/MonitorTemplateAPI.ts +182 -0
  6. package/Server/API/TeamMemberAPI.ts +116 -0
  7. package/Server/Infrastructure/Postgres/SchemaMigrations/1777933061000-MigrationName.ts +41 -0
  8. package/Server/Infrastructure/Postgres/SchemaMigrations/1777972687018-MigrationName.ts +69 -0
  9. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +4 -0
  10. package/Server/Services/BillingInvoiceService.ts +18 -29
  11. package/Server/Services/DockerResourceService.ts +310 -0
  12. package/Server/Services/MonitorTemplateService.ts +359 -0
  13. package/Server/Types/Database/Permissions/TenantPermission.ts +82 -0
  14. package/Types/Dashboard/DashboardComponentType.ts +13 -0
  15. package/Types/Dashboard/DashboardComponents/ComponentArgument.ts +16 -0
  16. package/Types/Dashboard/DashboardComponents/DashboardAlertListComponent.ts +4 -0
  17. package/Types/Dashboard/DashboardComponents/DashboardDockerContainerListComponent.ts +15 -0
  18. package/Types/Dashboard/DashboardComponents/DashboardDockerHostListComponent.ts +14 -0
  19. package/Types/Dashboard/DashboardComponents/DashboardDockerImageListComponent.ts +15 -0
  20. package/Types/Dashboard/DashboardComponents/DashboardDockerNetworkListComponent.ts +14 -0
  21. package/Types/Dashboard/DashboardComponents/DashboardDockerVolumeListComponent.ts +14 -0
  22. package/Types/Dashboard/DashboardComponents/DashboardIncidentListComponent.ts +4 -0
  23. package/Types/Dashboard/DashboardComponents/DashboardKubernetesCronJobListComponent.ts +15 -0
  24. package/Types/Dashboard/DashboardComponents/DashboardKubernetesDaemonSetListComponent.ts +15 -0
  25. package/Types/Dashboard/DashboardComponents/DashboardKubernetesDeploymentListComponent.ts +15 -0
  26. package/Types/Dashboard/DashboardComponents/DashboardKubernetesJobListComponent.ts +15 -0
  27. package/Types/Dashboard/DashboardComponents/DashboardKubernetesNamespaceListComponent.ts +14 -0
  28. package/Types/Dashboard/DashboardComponents/DashboardKubernetesNodeListComponent.ts +15 -0
  29. package/Types/Dashboard/DashboardComponents/DashboardKubernetesPodListComponent.ts +16 -0
  30. package/Types/Dashboard/DashboardComponents/DashboardKubernetesStatefulSetListComponent.ts +15 -0
  31. package/Types/Dashboard/DashboardComponents/DashboardMonitorListComponent.ts +3 -0
  32. package/Types/Docker/DockerInventoryExtractor.ts +343 -0
  33. package/Types/Monitor/CustomCodeMonitor/CustomCodeMonitorResponse.ts +12 -0
  34. package/Utils/Dashboard/Components/DashboardAlertListComponent.ts +47 -2
  35. package/Utils/Dashboard/Components/DashboardDockerContainerListComponent.ts +93 -0
  36. package/Utils/Dashboard/Components/DashboardDockerHostListComponent.ts +83 -0
  37. package/Utils/Dashboard/Components/DashboardDockerImageListComponent.ts +92 -0
  38. package/Utils/Dashboard/Components/DashboardDockerNetworkListComponent.ts +82 -0
  39. package/Utils/Dashboard/Components/DashboardDockerVolumeListComponent.ts +82 -0
  40. package/Utils/Dashboard/Components/DashboardIncidentListComponent.ts +47 -2
  41. package/Utils/Dashboard/Components/DashboardKubernetesCronJobListComponent.ts +36 -0
  42. package/Utils/Dashboard/Components/DashboardKubernetesDaemonSetListComponent.ts +36 -0
  43. package/Utils/Dashboard/Components/DashboardKubernetesDeploymentListComponent.ts +36 -0
  44. package/Utils/Dashboard/Components/DashboardKubernetesJobListComponent.ts +34 -0
  45. package/Utils/Dashboard/Components/DashboardKubernetesNamespaceListComponent.ts +36 -0
  46. package/Utils/Dashboard/Components/DashboardKubernetesNodeListComponent.ts +57 -0
  47. package/Utils/Dashboard/Components/DashboardKubernetesPodListComponent.ts +60 -0
  48. package/Utils/Dashboard/Components/DashboardKubernetesResourceListShared.ts +75 -0
  49. package/Utils/Dashboard/Components/DashboardKubernetesStatefulSetListComponent.ts +36 -0
  50. package/Utils/Dashboard/Components/DashboardMonitorListComponent.ts +59 -2
  51. package/Utils/Dashboard/Components/Index.ts +102 -0
  52. package/build/dist/Models/DatabaseModels/DockerResource.js +525 -0
  53. package/build/dist/Models/DatabaseModels/DockerResource.js.map +1 -0
  54. package/build/dist/Models/DatabaseModels/Index.js +2 -0
  55. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  56. package/build/dist/Models/DatabaseModels/Monitor.js +82 -0
  57. package/build/dist/Models/DatabaseModels/Monitor.js.map +1 -1
  58. package/build/dist/Models/DatabaseModels/TeamMember.js +0 -1
  59. package/build/dist/Models/DatabaseModels/TeamMember.js.map +1 -1
  60. package/build/dist/Server/API/MonitorTemplateAPI.js +108 -0
  61. package/build/dist/Server/API/MonitorTemplateAPI.js.map +1 -0
  62. package/build/dist/Server/API/TeamMemberAPI.js +66 -0
  63. package/build/dist/Server/API/TeamMemberAPI.js.map +1 -0
  64. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1777933061000-MigrationName.js +20 -0
  65. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1777933061000-MigrationName.js.map +1 -0
  66. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1777972687018-MigrationName.js +30 -0
  67. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1777972687018-MigrationName.js.map +1 -0
  68. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +4 -0
  69. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  70. package/build/dist/Server/Services/BillingInvoiceService.js +22 -25
  71. package/build/dist/Server/Services/BillingInvoiceService.js.map +1 -1
  72. package/build/dist/Server/Services/DockerResourceService.js +196 -0
  73. package/build/dist/Server/Services/DockerResourceService.js.map +1 -0
  74. package/build/dist/Server/Services/MonitorTemplateService.js +290 -0
  75. package/build/dist/Server/Services/MonitorTemplateService.js.map +1 -1
  76. package/build/dist/Server/Types/Database/Permissions/TenantPermission.js +54 -0
  77. package/build/dist/Server/Types/Database/Permissions/TenantPermission.js.map +1 -1
  78. package/build/dist/Types/Dashboard/DashboardComponentType.js +13 -0
  79. package/build/dist/Types/Dashboard/DashboardComponentType.js.map +1 -1
  80. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js +15 -0
  81. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js.map +1 -1
  82. package/build/dist/Types/Dashboard/DashboardComponents/DashboardDockerContainerListComponent.js +2 -0
  83. package/build/dist/Types/Dashboard/DashboardComponents/DashboardDockerContainerListComponent.js.map +1 -0
  84. package/build/dist/Types/Dashboard/DashboardComponents/DashboardDockerHostListComponent.js +2 -0
  85. package/build/dist/Types/Dashboard/DashboardComponents/DashboardDockerHostListComponent.js.map +1 -0
  86. package/build/dist/Types/Dashboard/DashboardComponents/DashboardDockerImageListComponent.js +2 -0
  87. package/build/dist/Types/Dashboard/DashboardComponents/DashboardDockerImageListComponent.js.map +1 -0
  88. package/build/dist/Types/Dashboard/DashboardComponents/DashboardDockerNetworkListComponent.js +2 -0
  89. package/build/dist/Types/Dashboard/DashboardComponents/DashboardDockerNetworkListComponent.js.map +1 -0
  90. package/build/dist/Types/Dashboard/DashboardComponents/DashboardDockerVolumeListComponent.js +2 -0
  91. package/build/dist/Types/Dashboard/DashboardComponents/DashboardDockerVolumeListComponent.js.map +1 -0
  92. package/build/dist/Types/Dashboard/DashboardComponents/DashboardKubernetesCronJobListComponent.js +2 -0
  93. package/build/dist/Types/Dashboard/DashboardComponents/DashboardKubernetesCronJobListComponent.js.map +1 -0
  94. package/build/dist/Types/Dashboard/DashboardComponents/DashboardKubernetesDaemonSetListComponent.js +2 -0
  95. package/build/dist/Types/Dashboard/DashboardComponents/DashboardKubernetesDaemonSetListComponent.js.map +1 -0
  96. package/build/dist/Types/Dashboard/DashboardComponents/DashboardKubernetesDeploymentListComponent.js +2 -0
  97. package/build/dist/Types/Dashboard/DashboardComponents/DashboardKubernetesDeploymentListComponent.js.map +1 -0
  98. package/build/dist/Types/Dashboard/DashboardComponents/DashboardKubernetesJobListComponent.js +2 -0
  99. package/build/dist/Types/Dashboard/DashboardComponents/DashboardKubernetesJobListComponent.js.map +1 -0
  100. package/build/dist/Types/Dashboard/DashboardComponents/DashboardKubernetesNamespaceListComponent.js +2 -0
  101. package/build/dist/Types/Dashboard/DashboardComponents/DashboardKubernetesNamespaceListComponent.js.map +1 -0
  102. package/build/dist/Types/Dashboard/DashboardComponents/DashboardKubernetesNodeListComponent.js +2 -0
  103. package/build/dist/Types/Dashboard/DashboardComponents/DashboardKubernetesNodeListComponent.js.map +1 -0
  104. package/build/dist/Types/Dashboard/DashboardComponents/DashboardKubernetesPodListComponent.js +2 -0
  105. package/build/dist/Types/Dashboard/DashboardComponents/DashboardKubernetesPodListComponent.js.map +1 -0
  106. package/build/dist/Types/Dashboard/DashboardComponents/DashboardKubernetesStatefulSetListComponent.js +2 -0
  107. package/build/dist/Types/Dashboard/DashboardComponents/DashboardKubernetesStatefulSetListComponent.js.map +1 -0
  108. package/build/dist/Types/Docker/DockerInventoryExtractor.js +293 -0
  109. package/build/dist/Types/Docker/DockerInventoryExtractor.js.map +1 -0
  110. package/build/dist/Utils/Dashboard/Components/DashboardAlertListComponent.js +43 -3
  111. package/build/dist/Utils/Dashboard/Components/DashboardAlertListComponent.js.map +1 -1
  112. package/build/dist/Utils/Dashboard/Components/DashboardDockerContainerListComponent.js +75 -0
  113. package/build/dist/Utils/Dashboard/Components/DashboardDockerContainerListComponent.js.map +1 -0
  114. package/build/dist/Utils/Dashboard/Components/DashboardDockerHostListComponent.js +69 -0
  115. package/build/dist/Utils/Dashboard/Components/DashboardDockerHostListComponent.js.map +1 -0
  116. package/build/dist/Utils/Dashboard/Components/DashboardDockerImageListComponent.js +75 -0
  117. package/build/dist/Utils/Dashboard/Components/DashboardDockerImageListComponent.js.map +1 -0
  118. package/build/dist/Utils/Dashboard/Components/DashboardDockerNetworkListComponent.js +66 -0
  119. package/build/dist/Utils/Dashboard/Components/DashboardDockerNetworkListComponent.js.map +1 -0
  120. package/build/dist/Utils/Dashboard/Components/DashboardDockerVolumeListComponent.js +66 -0
  121. package/build/dist/Utils/Dashboard/Components/DashboardDockerVolumeListComponent.js.map +1 -0
  122. package/build/dist/Utils/Dashboard/Components/DashboardIncidentListComponent.js +43 -3
  123. package/build/dist/Utils/Dashboard/Components/DashboardIncidentListComponent.js.map +1 -1
  124. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesCronJobListComponent.js +29 -0
  125. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesCronJobListComponent.js.map +1 -0
  126. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesDaemonSetListComponent.js +29 -0
  127. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesDaemonSetListComponent.js.map +1 -0
  128. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesDeploymentListComponent.js +29 -0
  129. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesDeploymentListComponent.js.map +1 -0
  130. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesJobListComponent.js +29 -0
  131. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesJobListComponent.js.map +1 -0
  132. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesNamespaceListComponent.js +29 -0
  133. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesNamespaceListComponent.js.map +1 -0
  134. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesNodeListComponent.js +44 -0
  135. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesNodeListComponent.js.map +1 -0
  136. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesPodListComponent.js +47 -0
  137. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesPodListComponent.js.map +1 -0
  138. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesResourceListShared.js +55 -0
  139. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesResourceListShared.js.map +1 -0
  140. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesStatefulSetListComponent.js +29 -0
  141. package/build/dist/Utils/Dashboard/Components/DashboardKubernetesStatefulSetListComponent.js.map +1 -0
  142. package/build/dist/Utils/Dashboard/Components/DashboardMonitorListComponent.js +46 -3
  143. package/build/dist/Utils/Dashboard/Components/DashboardMonitorListComponent.js.map +1 -1
  144. package/build/dist/Utils/Dashboard/Components/Index.js +53 -0
  145. package/build/dist/Utils/Dashboard/Components/Index.js.map +1 -1
  146. package/package.json +1 -1
@@ -2,14 +2,30 @@ import DatabaseRequestType from "../../BaseDatabase/DatabaseRequestType";
2
2
  import Query from "../Query";
3
3
  import Select from "../Select";
4
4
  import BasePermission, { CheckPermissionBaseInterface } from "./BasePermission";
5
+ import TablePermission from "./TablePermission";
5
6
  import BaseModel from "../../../../Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel";
6
7
  import Includes from "../../../../Types/BaseDatabase/Includes";
7
8
  import DatabaseCommonInteractionProps from "../../../../Types/BaseDatabase/DatabaseCommonInteractionProps";
9
+ import DatabaseCommonInteractionPropsUtil, {
10
+ PermissionType,
11
+ } from "../../../../Types/BaseDatabase/DatabaseCommonInteractionPropsUtil";
8
12
  import BadDataException from "../../../../Types/Exception/BadDataException";
9
13
  import NotAuthorizedException from "../../../../Types/Exception/NotAuthorizedException";
10
14
  import ObjectID from "../../../../Types/ObjectID";
15
+ import Permission from "../../../../Types/Permission";
11
16
  import CaptureSpan from "../../../Utils/Telemetry/CaptureSpan";
12
17
 
18
+ /*
19
+ * Permissions auto-granted to every logged-in tenant user. Holding only these
20
+ * (without an actual role permission) does not signal admin authority and so
21
+ * should not unlock cross-row access on models that scope by user.
22
+ */
23
+ const AUTO_GRANTED_TENANT_PERMISSIONS: ReadonlyArray<Permission> = [
24
+ Permission.CurrentUser,
25
+ Permission.Public,
26
+ Permission.UnAuthorizedSsoUser,
27
+ ];
28
+
13
29
  export default class TenantPermission {
14
30
  @CaptureSpan()
15
31
  public static async addTenantScopeToQuery<TBaseModel extends BaseModel>(
@@ -32,6 +48,22 @@ export default class TenantPermission {
32
48
  // If this model has a tenantColumn, and request has tenantId, and is multiTenantQuery null then add tenantId to query.
33
49
  if (tenantColumn && props.tenantId && !props.isMultiTenantRequest) {
34
50
  (query as any)[tenantColumn] = props.tenantId;
51
+
52
+ /*
53
+ * If Permission.CurrentUser is the only thing letting the user through
54
+ * for this model+operation, also restrict the query to records they own.
55
+ * Otherwise the tenant filter alone leaves the user able to act on any
56
+ * row in the project (CVE-class issue when CurrentUser appears in a
57
+ * model's delete/update list alongside admin permissions).
58
+ */
59
+ if (
60
+ TenantPermission.shouldScopeQueryByCurrentUser(modelType, props, type)
61
+ ) {
62
+ const userColumn: string | null = model.getUserColumn();
63
+ if (userColumn) {
64
+ (query as any)[userColumn] = props.userId;
65
+ }
66
+ }
35
67
  }
36
68
  // if model allows user query without tenant, and user column is present, and userId is present, then add userId to query.
37
69
  else if (
@@ -124,4 +156,54 @@ export default class TenantPermission {
124
156
 
125
157
  return query;
126
158
  }
159
+
160
+ /**
161
+ * True if the only permission letting this user through the table-level
162
+ * check for this op is Permission.CurrentUser. In that case the query must
163
+ * be restricted to rows the user owns (via the model's user column).
164
+ */
165
+ private static shouldScopeQueryByCurrentUser<TBaseModel extends BaseModel>(
166
+ modelType: { new (): TBaseModel },
167
+ props: DatabaseCommonInteractionProps,
168
+ type: DatabaseRequestType,
169
+ ): boolean {
170
+ const model: BaseModel = new modelType();
171
+
172
+ if (!model.getUserColumn() || !props.userId) {
173
+ return false;
174
+ }
175
+
176
+ const modelPermissions: Array<Permission> =
177
+ TablePermission.getTablePermission(modelType, type);
178
+
179
+ if (!modelPermissions.includes(Permission.CurrentUser)) {
180
+ return false;
181
+ }
182
+
183
+ const userPermissions: Array<Permission> =
184
+ DatabaseCommonInteractionPropsUtil.getUserPermissions(
185
+ props,
186
+ PermissionType.Allow,
187
+ ).map((up: { permission: Permission }) => {
188
+ return up.permission;
189
+ });
190
+
191
+ const intersection: Array<Permission> = userPermissions.filter(
192
+ (p: Permission) => {
193
+ return modelPermissions.includes(p);
194
+ },
195
+ );
196
+
197
+ if (!intersection.includes(Permission.CurrentUser)) {
198
+ return false;
199
+ }
200
+
201
+ const adminMatch: Array<Permission> = intersection.filter(
202
+ (p: Permission) => {
203
+ return !AUTO_GRANTED_TENANT_PERMISSIONS.includes(p);
204
+ },
205
+ );
206
+
207
+ return adminMatch.length === 0;
208
+ }
127
209
  }
@@ -9,6 +9,19 @@ enum DashboardComponentType {
9
9
  IncidentList = `IncidentList`,
10
10
  AlertList = `AlertList`,
11
11
  MonitorList = `MonitorList`,
12
+ KubernetesPodList = `KubernetesPodList`,
13
+ KubernetesNodeList = `KubernetesNodeList`,
14
+ KubernetesNamespaceList = `KubernetesNamespaceList`,
15
+ KubernetesDeploymentList = `KubernetesDeploymentList`,
16
+ KubernetesStatefulSetList = `KubernetesStatefulSetList`,
17
+ KubernetesDaemonSetList = `KubernetesDaemonSetList`,
18
+ KubernetesJobList = `KubernetesJobList`,
19
+ KubernetesCronJobList = `KubernetesCronJobList`,
20
+ DockerHostList = `DockerHostList`,
21
+ DockerContainerList = `DockerContainerList`,
22
+ DockerImageList = `DockerImageList`,
23
+ DockerNetworkList = `DockerNetworkList`,
24
+ DockerVolumeList = `DockerVolumeList`,
12
25
  }
13
26
 
14
27
  export default DashboardComponentType;
@@ -12,6 +12,21 @@ export enum ComponentInputType {
12
12
  MetricsQueryConfigs = "MetricsQueryConfigs",
13
13
  LongText = "Long Text",
14
14
  Dropdown = "Dropdown",
15
+ MultiSelectDropdown = "MultiSelectDropdown",
16
+ EntityDropdown = "EntityDropdown",
17
+ EntityMultiSelectDropdown = "EntityMultiSelectDropdown",
18
+ }
19
+
20
+ export enum EntityFilterModelType {
21
+ IncidentSeverity = "IncidentSeverity",
22
+ AlertSeverity = "AlertSeverity",
23
+ IncidentState = "IncidentState",
24
+ AlertState = "AlertState",
25
+ MonitorStatus = "MonitorStatus",
26
+ Monitor = "Monitor",
27
+ Label = "Label",
28
+ KubernetesCluster = "KubernetesCluster",
29
+ DockerHost = "DockerHost",
15
30
  }
16
31
 
17
32
  export interface ComponentArgumentSection {
@@ -32,4 +47,5 @@ export interface ComponentArgument<T extends DashboardBaseComponent> {
32
47
  placeholder?: string | undefined;
33
48
  dropdownOptions?: Array<DropdownOption> | undefined;
34
49
  section?: ComponentArgumentSection | undefined;
50
+ entityFilterModelType?: EntityFilterModelType | undefined;
35
51
  }
@@ -9,5 +9,9 @@ export default interface DashboardAlertListComponent extends BaseComponent {
9
9
  title?: string | undefined;
10
10
  maxRows?: number | undefined;
11
11
  stateFilter?: string | undefined;
12
+ severityIds?: Array<string> | undefined;
13
+ stateIds?: Array<string> | undefined;
14
+ monitorIds?: Array<string> | undefined;
15
+ labelIds?: Array<string> | undefined;
12
16
  };
13
17
  }
@@ -0,0 +1,15 @@
1
+ import ObjectID from "../../ObjectID";
2
+ import DashboardComponentType from "../DashboardComponentType";
3
+ import BaseComponent from "./DashboardBaseComponent";
4
+
5
+ export default interface DashboardDockerContainerListComponent
6
+ extends BaseComponent {
7
+ componentType: DashboardComponentType.DockerContainerList;
8
+ componentId: ObjectID;
9
+ arguments: {
10
+ title?: string | undefined;
11
+ maxRows?: number | undefined;
12
+ dockerHostIds?: Array<string> | undefined;
13
+ imageName?: string | undefined;
14
+ };
15
+ }
@@ -0,0 +1,14 @@
1
+ import ObjectID from "../../ObjectID";
2
+ import DashboardComponentType from "../DashboardComponentType";
3
+ import BaseComponent from "./DashboardBaseComponent";
4
+
5
+ export default interface DashboardDockerHostListComponent
6
+ extends BaseComponent {
7
+ componentType: DashboardComponentType.DockerHostList;
8
+ componentId: ObjectID;
9
+ arguments: {
10
+ title?: string | undefined;
11
+ maxRows?: number | undefined;
12
+ statusFilter?: string | undefined;
13
+ };
14
+ }
@@ -0,0 +1,15 @@
1
+ import ObjectID from "../../ObjectID";
2
+ import DashboardComponentType from "../DashboardComponentType";
3
+ import BaseComponent from "./DashboardBaseComponent";
4
+
5
+ export default interface DashboardDockerImageListComponent
6
+ extends BaseComponent {
7
+ componentType: DashboardComponentType.DockerImageList;
8
+ componentId: ObjectID;
9
+ arguments: {
10
+ title?: string | undefined;
11
+ maxRows?: number | undefined;
12
+ dockerHostIds?: Array<string> | undefined;
13
+ nameSearch?: string | undefined;
14
+ };
15
+ }
@@ -0,0 +1,14 @@
1
+ import ObjectID from "../../ObjectID";
2
+ import DashboardComponentType from "../DashboardComponentType";
3
+ import BaseComponent from "./DashboardBaseComponent";
4
+
5
+ export default interface DashboardDockerNetworkListComponent
6
+ extends BaseComponent {
7
+ componentType: DashboardComponentType.DockerNetworkList;
8
+ componentId: ObjectID;
9
+ arguments: {
10
+ title?: string | undefined;
11
+ maxRows?: number | undefined;
12
+ dockerHostIds?: Array<string> | undefined;
13
+ };
14
+ }
@@ -0,0 +1,14 @@
1
+ import ObjectID from "../../ObjectID";
2
+ import DashboardComponentType from "../DashboardComponentType";
3
+ import BaseComponent from "./DashboardBaseComponent";
4
+
5
+ export default interface DashboardDockerVolumeListComponent
6
+ extends BaseComponent {
7
+ componentType: DashboardComponentType.DockerVolumeList;
8
+ componentId: ObjectID;
9
+ arguments: {
10
+ title?: string | undefined;
11
+ maxRows?: number | undefined;
12
+ dockerHostIds?: Array<string> | undefined;
13
+ };
14
+ }
@@ -9,5 +9,9 @@ export default interface DashboardIncidentListComponent extends BaseComponent {
9
9
  title?: string | undefined;
10
10
  maxRows?: number | undefined;
11
11
  stateFilter?: string | undefined;
12
+ severityIds?: Array<string> | undefined;
13
+ stateIds?: Array<string> | undefined;
14
+ monitorIds?: Array<string> | undefined;
15
+ labelIds?: Array<string> | undefined;
12
16
  };
13
17
  }
@@ -0,0 +1,15 @@
1
+ import ObjectID from "../../ObjectID";
2
+ import DashboardComponentType from "../DashboardComponentType";
3
+ import BaseComponent from "./DashboardBaseComponent";
4
+
5
+ export default interface DashboardKubernetesCronJobListComponent
6
+ extends BaseComponent {
7
+ componentType: DashboardComponentType.KubernetesCronJobList;
8
+ componentId: ObjectID;
9
+ arguments: {
10
+ title?: string | undefined;
11
+ maxRows?: number | undefined;
12
+ kubernetesClusterIds?: Array<string> | undefined;
13
+ namespaces?: string | undefined;
14
+ };
15
+ }
@@ -0,0 +1,15 @@
1
+ import ObjectID from "../../ObjectID";
2
+ import DashboardComponentType from "../DashboardComponentType";
3
+ import BaseComponent from "./DashboardBaseComponent";
4
+
5
+ export default interface DashboardKubernetesDaemonSetListComponent
6
+ extends BaseComponent {
7
+ componentType: DashboardComponentType.KubernetesDaemonSetList;
8
+ componentId: ObjectID;
9
+ arguments: {
10
+ title?: string | undefined;
11
+ maxRows?: number | undefined;
12
+ kubernetesClusterIds?: Array<string> | undefined;
13
+ namespaces?: string | undefined;
14
+ };
15
+ }
@@ -0,0 +1,15 @@
1
+ import ObjectID from "../../ObjectID";
2
+ import DashboardComponentType from "../DashboardComponentType";
3
+ import BaseComponent from "./DashboardBaseComponent";
4
+
5
+ export default interface DashboardKubernetesDeploymentListComponent
6
+ extends BaseComponent {
7
+ componentType: DashboardComponentType.KubernetesDeploymentList;
8
+ componentId: ObjectID;
9
+ arguments: {
10
+ title?: string | undefined;
11
+ maxRows?: number | undefined;
12
+ kubernetesClusterIds?: Array<string> | undefined;
13
+ namespaces?: string | undefined;
14
+ };
15
+ }
@@ -0,0 +1,15 @@
1
+ import ObjectID from "../../ObjectID";
2
+ import DashboardComponentType from "../DashboardComponentType";
3
+ import BaseComponent from "./DashboardBaseComponent";
4
+
5
+ export default interface DashboardKubernetesJobListComponent
6
+ extends BaseComponent {
7
+ componentType: DashboardComponentType.KubernetesJobList;
8
+ componentId: ObjectID;
9
+ arguments: {
10
+ title?: string | undefined;
11
+ maxRows?: number | undefined;
12
+ kubernetesClusterIds?: Array<string> | undefined;
13
+ namespaces?: string | undefined;
14
+ };
15
+ }
@@ -0,0 +1,14 @@
1
+ import ObjectID from "../../ObjectID";
2
+ import DashboardComponentType from "../DashboardComponentType";
3
+ import BaseComponent from "./DashboardBaseComponent";
4
+
5
+ export default interface DashboardKubernetesNamespaceListComponent
6
+ extends BaseComponent {
7
+ componentType: DashboardComponentType.KubernetesNamespaceList;
8
+ componentId: ObjectID;
9
+ arguments: {
10
+ title?: string | undefined;
11
+ maxRows?: number | undefined;
12
+ kubernetesClusterIds?: Array<string> | undefined;
13
+ };
14
+ }
@@ -0,0 +1,15 @@
1
+ import ObjectID from "../../ObjectID";
2
+ import DashboardComponentType from "../DashboardComponentType";
3
+ import BaseComponent from "./DashboardBaseComponent";
4
+
5
+ export default interface DashboardKubernetesNodeListComponent
6
+ extends BaseComponent {
7
+ componentType: DashboardComponentType.KubernetesNodeList;
8
+ componentId: ObjectID;
9
+ arguments: {
10
+ title?: string | undefined;
11
+ maxRows?: number | undefined;
12
+ kubernetesClusterIds?: Array<string> | undefined;
13
+ readinessFilter?: string | undefined;
14
+ };
15
+ }
@@ -0,0 +1,16 @@
1
+ import ObjectID from "../../ObjectID";
2
+ import DashboardComponentType from "../DashboardComponentType";
3
+ import BaseComponent from "./DashboardBaseComponent";
4
+
5
+ export default interface DashboardKubernetesPodListComponent
6
+ extends BaseComponent {
7
+ componentType: DashboardComponentType.KubernetesPodList;
8
+ componentId: ObjectID;
9
+ arguments: {
10
+ title?: string | undefined;
11
+ maxRows?: number | undefined;
12
+ kubernetesClusterIds?: Array<string> | undefined;
13
+ namespaces?: string | undefined;
14
+ podPhases?: Array<string> | undefined;
15
+ };
16
+ }
@@ -0,0 +1,15 @@
1
+ import ObjectID from "../../ObjectID";
2
+ import DashboardComponentType from "../DashboardComponentType";
3
+ import BaseComponent from "./DashboardBaseComponent";
4
+
5
+ export default interface DashboardKubernetesStatefulSetListComponent
6
+ extends BaseComponent {
7
+ componentType: DashboardComponentType.KubernetesStatefulSetList;
8
+ componentId: ObjectID;
9
+ arguments: {
10
+ title?: string | undefined;
11
+ maxRows?: number | undefined;
12
+ kubernetesClusterIds?: Array<string> | undefined;
13
+ namespaces?: string | undefined;
14
+ };
15
+ }
@@ -9,5 +9,8 @@ export default interface DashboardMonitorListComponent extends BaseComponent {
9
9
  title?: string | undefined;
10
10
  maxRows?: number | undefined;
11
11
  statusFilter?: string | undefined;
12
+ monitorStatusIds?: Array<string> | undefined;
13
+ monitorTypes?: Array<string> | undefined;
14
+ labelIds?: Array<string> | undefined;
12
15
  };
13
16
  }