@oneuptime/common 10.5.30 → 10.5.32

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 (52) hide show
  1. package/Models/AnalyticsModels/AnalyticsBaseModel/AnalyticsBaseModel.ts +45 -0
  2. package/Models/AnalyticsModels/AuditLog.ts +3 -0
  3. package/Models/AnalyticsModels/ExceptionInstance.ts +3 -0
  4. package/Models/AnalyticsModels/Index.ts +2 -0
  5. package/Models/AnalyticsModels/Log.ts +3 -0
  6. package/Models/AnalyticsModels/Metric.ts +3 -0
  7. package/Models/AnalyticsModels/Span.ts +3 -0
  8. package/Models/DatabaseModels/Index.ts +4 -0
  9. package/Models/DatabaseModels/MetricSavedView.ts +334 -0
  10. package/Models/DatabaseModels/TraceSavedView.ts +334 -0
  11. package/Server/Infrastructure/Postgres/SchemaMigrations/1780645560183-AddMetricAndTraceSavedView.ts +81 -0
  12. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +2 -0
  13. package/Server/Services/MetricSavedViewService.ts +109 -0
  14. package/Server/Services/TraceSavedViewService.ts +109 -0
  15. package/Types/Telemetry/TelemetrySavedViewState.ts +26 -0
  16. package/UI/Components/Table/TableHeader.tsx +6 -2
  17. package/UI/Components/TelemetryViewer/components/SavedViewsDropdown.tsx +175 -0
  18. package/build/dist/Models/AnalyticsModels/AnalyticsBaseModel/AnalyticsBaseModel.js +32 -0
  19. package/build/dist/Models/AnalyticsModels/AnalyticsBaseModel/AnalyticsBaseModel.js.map +1 -1
  20. package/build/dist/Models/AnalyticsModels/AuditLog.js +2 -0
  21. package/build/dist/Models/AnalyticsModels/AuditLog.js.map +1 -1
  22. package/build/dist/Models/AnalyticsModels/ExceptionInstance.js +2 -0
  23. package/build/dist/Models/AnalyticsModels/ExceptionInstance.js.map +1 -1
  24. package/build/dist/Models/AnalyticsModels/Index.js +2 -0
  25. package/build/dist/Models/AnalyticsModels/Index.js.map +1 -1
  26. package/build/dist/Models/AnalyticsModels/Log.js +2 -0
  27. package/build/dist/Models/AnalyticsModels/Log.js.map +1 -1
  28. package/build/dist/Models/AnalyticsModels/Metric.js +2 -0
  29. package/build/dist/Models/AnalyticsModels/Metric.js.map +1 -1
  30. package/build/dist/Models/AnalyticsModels/Span.js +2 -0
  31. package/build/dist/Models/AnalyticsModels/Span.js.map +1 -1
  32. package/build/dist/Models/DatabaseModels/Index.js +4 -0
  33. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  34. package/build/dist/Models/DatabaseModels/MetricSavedView.js +356 -0
  35. package/build/dist/Models/DatabaseModels/MetricSavedView.js.map +1 -0
  36. package/build/dist/Models/DatabaseModels/TraceSavedView.js +356 -0
  37. package/build/dist/Models/DatabaseModels/TraceSavedView.js.map +1 -0
  38. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780645560183-AddMetricAndTraceSavedView.js +34 -0
  39. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780645560183-AddMetricAndTraceSavedView.js.map +1 -0
  40. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +2 -0
  41. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  42. package/build/dist/Server/Services/MetricSavedViewService.js +82 -0
  43. package/build/dist/Server/Services/MetricSavedViewService.js.map +1 -0
  44. package/build/dist/Server/Services/TraceSavedViewService.js +82 -0
  45. package/build/dist/Server/Services/TraceSavedViewService.js.map +1 -0
  46. package/build/dist/Types/Telemetry/TelemetrySavedViewState.js +9 -0
  47. package/build/dist/Types/Telemetry/TelemetrySavedViewState.js.map +1 -0
  48. package/build/dist/UI/Components/Table/TableHeader.js +2 -2
  49. package/build/dist/UI/Components/Table/TableHeader.js.map +1 -1
  50. package/build/dist/UI/Components/TelemetryViewer/components/SavedViewsDropdown.js +58 -0
  51. package/build/dist/UI/Components/TelemetryViewer/components/SavedViewsDropdown.js.map +1 -0
  52. package/package.json +1 -1
@@ -0,0 +1,356 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import Project from "./Project";
11
+ import User from "./User";
12
+ import BaseModel from "./DatabaseBaseModel/DatabaseBaseModel";
13
+ import Route from "../../Types/API/Route";
14
+ import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
15
+ import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
16
+ import TableBillingAccessControl from "../../Types/Database/AccessControl/TableBillingAccessControl";
17
+ import ColumnLength from "../../Types/Database/ColumnLength";
18
+ import ColumnType from "../../Types/Database/ColumnType";
19
+ import CrudApiEndpoint from "../../Types/Database/CrudApiEndpoint";
20
+ import EnableDocumentation from "../../Types/Database/EnableDocumentation";
21
+ import TableColumn from "../../Types/Database/TableColumn";
22
+ import TableColumnType from "../../Types/Database/TableColumnType";
23
+ import TableMetadata from "../../Types/Database/TableMetadata";
24
+ import TenantColumn from "../../Types/Database/TenantColumn";
25
+ import IconProp from "../../Types/Icon/IconProp";
26
+ import ObjectID from "../../Types/ObjectID";
27
+ import Permission from "../../Types/Permission";
28
+ import { PlanType } from "../../Types/Billing/SubscriptionPlan";
29
+ import { Column, Entity, Index, JoinColumn, ManyToOne } from "typeorm";
30
+ let MetricSavedView = class MetricSavedView extends BaseModel {
31
+ constructor() {
32
+ super(...arguments);
33
+ this.project = undefined;
34
+ this.projectId = undefined;
35
+ this.name = undefined;
36
+ this.createdByUser = undefined;
37
+ this.createdByUserId = undefined;
38
+ this.deletedByUser = undefined;
39
+ this.deletedByUserId = undefined;
40
+ this.query = undefined;
41
+ this.isDefault = undefined;
42
+ }
43
+ };
44
+ __decorate([
45
+ ColumnAccessControl({
46
+ create: [
47
+ Permission.ProjectOwner,
48
+ Permission.ProjectAdmin,
49
+ Permission.ProjectMember,
50
+ ],
51
+ read: [
52
+ Permission.ProjectOwner,
53
+ Permission.ProjectAdmin,
54
+ Permission.ProjectMember,
55
+ Permission.Viewer,
56
+ ],
57
+ update: [],
58
+ }),
59
+ TableColumn({
60
+ manyToOneRelationColumn: "projectId",
61
+ type: TableColumnType.Entity,
62
+ modelType: Project,
63
+ title: "Project",
64
+ description: "Relation to the project this saved metric view belongs to.",
65
+ }),
66
+ ManyToOne(() => {
67
+ return Project;
68
+ }, {
69
+ eager: false,
70
+ nullable: true,
71
+ onDelete: "CASCADE",
72
+ orphanedRowAction: "nullify",
73
+ }),
74
+ JoinColumn({ name: "projectId" }),
75
+ __metadata("design:type", Project)
76
+ ], MetricSavedView.prototype, "project", void 0);
77
+ __decorate([
78
+ ColumnAccessControl({
79
+ create: [
80
+ Permission.ProjectOwner,
81
+ Permission.ProjectAdmin,
82
+ Permission.ProjectMember,
83
+ ],
84
+ read: [
85
+ Permission.ProjectOwner,
86
+ Permission.ProjectAdmin,
87
+ Permission.ProjectMember,
88
+ Permission.Viewer,
89
+ ],
90
+ update: [],
91
+ }),
92
+ Index(),
93
+ TableColumn({
94
+ type: TableColumnType.ObjectID,
95
+ required: true,
96
+ canReadOnRelationQuery: true,
97
+ title: "Project ID",
98
+ description: "ID of the project this saved metric view belongs to.",
99
+ }),
100
+ Column({
101
+ type: ColumnType.ObjectID,
102
+ nullable: false,
103
+ transformer: ObjectID.getDatabaseTransformer(),
104
+ }),
105
+ __metadata("design:type", ObjectID)
106
+ ], MetricSavedView.prototype, "projectId", void 0);
107
+ __decorate([
108
+ ColumnAccessControl({
109
+ create: [
110
+ Permission.ProjectOwner,
111
+ Permission.ProjectAdmin,
112
+ Permission.ProjectMember,
113
+ ],
114
+ read: [
115
+ Permission.ProjectOwner,
116
+ Permission.ProjectAdmin,
117
+ Permission.ProjectMember,
118
+ Permission.Viewer,
119
+ ],
120
+ update: [
121
+ Permission.ProjectOwner,
122
+ Permission.ProjectAdmin,
123
+ Permission.ProjectMember,
124
+ ],
125
+ }),
126
+ TableColumn({
127
+ required: true,
128
+ type: TableColumnType.Name,
129
+ canReadOnRelationQuery: true,
130
+ title: "Name",
131
+ description: "Friendly name for this saved metric view.",
132
+ }),
133
+ Column({
134
+ nullable: false,
135
+ type: ColumnType.Name,
136
+ length: ColumnLength.Name,
137
+ }),
138
+ __metadata("design:type", String)
139
+ ], MetricSavedView.prototype, "name", void 0);
140
+ __decorate([
141
+ ColumnAccessControl({
142
+ create: [],
143
+ read: [
144
+ Permission.ProjectOwner,
145
+ Permission.ProjectAdmin,
146
+ Permission.ProjectMember,
147
+ Permission.Viewer,
148
+ ],
149
+ update: [],
150
+ }),
151
+ TableColumn({
152
+ manyToOneRelationColumn: "createdByUserId",
153
+ type: TableColumnType.Entity,
154
+ modelType: User,
155
+ title: "Created By User",
156
+ description: "Relation to the user who created this saved metric view.",
157
+ }),
158
+ ManyToOne(() => {
159
+ return User;
160
+ }, {
161
+ eager: false,
162
+ nullable: true,
163
+ onDelete: "SET NULL",
164
+ orphanedRowAction: "nullify",
165
+ }),
166
+ JoinColumn({ name: "createdByUserId" }),
167
+ __metadata("design:type", User)
168
+ ], MetricSavedView.prototype, "createdByUser", void 0);
169
+ __decorate([
170
+ ColumnAccessControl({
171
+ create: [],
172
+ read: [
173
+ Permission.ProjectOwner,
174
+ Permission.ProjectAdmin,
175
+ Permission.ProjectMember,
176
+ Permission.Viewer,
177
+ ],
178
+ update: [],
179
+ }),
180
+ TableColumn({
181
+ type: TableColumnType.ObjectID,
182
+ title: "Created By User ID",
183
+ description: "ID of the user who created this saved metric view.",
184
+ }),
185
+ Column({
186
+ type: ColumnType.ObjectID,
187
+ nullable: true,
188
+ transformer: ObjectID.getDatabaseTransformer(),
189
+ }),
190
+ __metadata("design:type", ObjectID)
191
+ ], MetricSavedView.prototype, "createdByUserId", void 0);
192
+ __decorate([
193
+ ColumnAccessControl({
194
+ create: [],
195
+ read: [
196
+ Permission.ProjectOwner,
197
+ Permission.ProjectAdmin,
198
+ Permission.ProjectMember,
199
+ Permission.Viewer,
200
+ ],
201
+ update: [],
202
+ }),
203
+ TableColumn({
204
+ manyToOneRelationColumn: "deletedByUserId",
205
+ type: TableColumnType.Entity,
206
+ modelType: User,
207
+ title: "Deleted By User",
208
+ description: "Relation to the user who deleted this saved metric view.",
209
+ }),
210
+ ManyToOne(() => {
211
+ return User;
212
+ }, {
213
+ eager: false,
214
+ nullable: true,
215
+ onDelete: "SET NULL",
216
+ orphanedRowAction: "nullify",
217
+ }),
218
+ JoinColumn({ name: "deletedByUserId" }),
219
+ __metadata("design:type", User)
220
+ ], MetricSavedView.prototype, "deletedByUser", void 0);
221
+ __decorate([
222
+ ColumnAccessControl({
223
+ create: [],
224
+ read: [
225
+ Permission.ProjectOwner,
226
+ Permission.ProjectAdmin,
227
+ Permission.ProjectMember,
228
+ Permission.Viewer,
229
+ ],
230
+ update: [],
231
+ }),
232
+ TableColumn({
233
+ type: TableColumnType.ObjectID,
234
+ title: "Deleted By User ID",
235
+ description: "ID of the user who deleted this saved metric view.",
236
+ }),
237
+ Column({
238
+ type: ColumnType.ObjectID,
239
+ nullable: true,
240
+ transformer: ObjectID.getDatabaseTransformer(),
241
+ }),
242
+ __metadata("design:type", ObjectID)
243
+ ], MetricSavedView.prototype, "deletedByUserId", void 0);
244
+ __decorate([
245
+ ColumnAccessControl({
246
+ create: [
247
+ Permission.ProjectOwner,
248
+ Permission.ProjectAdmin,
249
+ Permission.ProjectMember,
250
+ ],
251
+ read: [
252
+ Permission.ProjectOwner,
253
+ Permission.ProjectAdmin,
254
+ Permission.ProjectMember,
255
+ Permission.Viewer,
256
+ ],
257
+ update: [
258
+ Permission.ProjectOwner,
259
+ Permission.ProjectAdmin,
260
+ Permission.ProjectMember,
261
+ ],
262
+ }),
263
+ TableColumn({
264
+ title: "Query",
265
+ required: true,
266
+ type: TableColumnType.JSON,
267
+ canReadOnRelationQuery: true,
268
+ description: "Serialized metrics explorer view state (search, filters, time range, page size) for this saved view.",
269
+ }),
270
+ Column({
271
+ type: ColumnType.JSON,
272
+ nullable: false,
273
+ }),
274
+ __metadata("design:type", Object)
275
+ ], MetricSavedView.prototype, "query", void 0);
276
+ __decorate([
277
+ ColumnAccessControl({
278
+ create: [
279
+ Permission.ProjectOwner,
280
+ Permission.ProjectAdmin,
281
+ Permission.ProjectMember,
282
+ ],
283
+ read: [
284
+ Permission.ProjectOwner,
285
+ Permission.ProjectAdmin,
286
+ Permission.ProjectMember,
287
+ Permission.Viewer,
288
+ ],
289
+ update: [
290
+ Permission.ProjectOwner,
291
+ Permission.ProjectAdmin,
292
+ Permission.ProjectMember,
293
+ ],
294
+ }),
295
+ Index(),
296
+ TableColumn({
297
+ required: true,
298
+ type: TableColumnType.Boolean,
299
+ canReadOnRelationQuery: true,
300
+ title: "Is Default",
301
+ description: "Whether this saved metric view should be applied by default.",
302
+ defaultValue: false,
303
+ }),
304
+ Column({
305
+ nullable: false,
306
+ type: ColumnType.Boolean,
307
+ default: false,
308
+ }),
309
+ __metadata("design:type", Boolean)
310
+ ], MetricSavedView.prototype, "isDefault", void 0);
311
+ MetricSavedView = __decorate([
312
+ EnableDocumentation(),
313
+ TableBillingAccessControl({
314
+ create: PlanType.Free,
315
+ read: PlanType.Free,
316
+ update: PlanType.Free,
317
+ delete: PlanType.Free,
318
+ }),
319
+ TenantColumn("projectId"),
320
+ CrudApiEndpoint(new Route("/metric-saved-view")),
321
+ Entity({
322
+ name: "MetricSavedView",
323
+ }),
324
+ TableMetadata({
325
+ tableName: "MetricSavedView",
326
+ singularName: "Metric Saved View",
327
+ pluralName: "Metric Saved Views",
328
+ icon: IconProp.Window,
329
+ tableDescription: "Save and reuse metrics explorer views, including the current search, filters, time range, and page size.",
330
+ }),
331
+ TableAccessControl({
332
+ create: [
333
+ Permission.ProjectOwner,
334
+ Permission.ProjectAdmin,
335
+ Permission.ProjectMember,
336
+ ],
337
+ read: [
338
+ Permission.ProjectOwner,
339
+ Permission.ProjectAdmin,
340
+ Permission.ProjectMember,
341
+ Permission.Viewer,
342
+ ],
343
+ delete: [
344
+ Permission.ProjectOwner,
345
+ Permission.ProjectAdmin,
346
+ Permission.ProjectMember,
347
+ ],
348
+ update: [
349
+ Permission.ProjectOwner,
350
+ Permission.ProjectAdmin,
351
+ Permission.ProjectMember,
352
+ ],
353
+ })
354
+ ], MetricSavedView);
355
+ export default MetricSavedView;
356
+ //# sourceMappingURL=MetricSavedView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MetricSavedView.js","sourceRoot":"","sources":["../../../../Models/DatabaseModels/MetricSavedView.ts"],"names":[],"mappings":"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"}