@oneuptime/common 7.0.4263 → 7.0.4295

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 (72) hide show
  1. package/Models/DatabaseModels/StatusPage.ts +39 -0
  2. package/Server/API/OpenAPI.ts +29 -0
  3. package/Server/API/StatusPageAPI.ts +85 -114
  4. package/Server/EnvironmentConfig.ts +1 -8
  5. package/Server/Infrastructure/Postgres/SchemaMigrations/1748456937826-MigrationName.ts +15 -0
  6. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +2 -0
  7. package/Server/Services/BillingInvoiceService.ts +5 -3
  8. package/Server/Services/StatusPageDomainService.ts +31 -0
  9. package/Server/Services/StatusPageService.ts +89 -24
  10. package/Server/Types/ConfigLogLevel.ts +9 -0
  11. package/Server/Utils/Logger.ts +2 -1
  12. package/Server/Utils/OpenAPI.ts +370 -0
  13. package/Tests/Server/API/BaseAPI.test.ts +4 -0
  14. package/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.ts +7 -6
  15. package/Types/Billing/SubscriptionStatus.ts +1 -0
  16. package/Types/Exception/ExceptionCode.ts +1 -0
  17. package/Types/Exception/ForbiddenException.ts +8 -0
  18. package/Types/IP/IP.ts +88 -0
  19. package/UI/Components/ModelTable/BaseModelTable.tsx +0 -2
  20. package/UI/Utils/API/API.ts +15 -5
  21. package/UI/Utils/Cookie.ts +9 -0
  22. package/UI/Utils/User.ts +1 -0
  23. package/Utils/DNSUtil.ts +24 -0
  24. package/Utils/Schema/ModelSchema.ts +247 -0
  25. package/build/dist/Models/DatabaseModels/StatusPage.js +40 -0
  26. package/build/dist/Models/DatabaseModels/StatusPage.js.map +1 -1
  27. package/build/dist/Server/API/OpenAPI.js +14 -0
  28. package/build/dist/Server/API/OpenAPI.js.map +1 -0
  29. package/build/dist/Server/API/StatusPageAPI.js +78 -62
  30. package/build/dist/Server/API/StatusPageAPI.js.map +1 -1
  31. package/build/dist/Server/EnvironmentConfig.js +1 -8
  32. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  33. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1748456937826-MigrationName.js +12 -0
  34. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1748456937826-MigrationName.js.map +1 -0
  35. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +2 -0
  36. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  37. package/build/dist/Server/Services/BillingInvoiceService.js +3 -3
  38. package/build/dist/Server/Services/BillingInvoiceService.js.map +1 -1
  39. package/build/dist/Server/Services/StatusPageDomainService.js +19 -0
  40. package/build/dist/Server/Services/StatusPageDomainService.js.map +1 -1
  41. package/build/dist/Server/Services/StatusPageService.js +66 -21
  42. package/build/dist/Server/Services/StatusPageService.js.map +1 -1
  43. package/build/dist/Server/Types/ConfigLogLevel.js +10 -0
  44. package/build/dist/Server/Types/ConfigLogLevel.js.map +1 -0
  45. package/build/dist/Server/Utils/Logger.js +2 -1
  46. package/build/dist/Server/Utils/Logger.js.map +1 -1
  47. package/build/dist/Server/Utils/OpenAPI.js +334 -0
  48. package/build/dist/Server/Utils/OpenAPI.js.map +1 -0
  49. package/build/dist/Tests/Server/API/BaseAPI.test.js +4 -0
  50. package/build/dist/Tests/Server/API/BaseAPI.test.js.map +1 -1
  51. package/build/dist/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.js +7 -6
  52. package/build/dist/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.js.map +1 -1
  53. package/build/dist/Types/Billing/SubscriptionStatus.js +1 -0
  54. package/build/dist/Types/Billing/SubscriptionStatus.js.map +1 -1
  55. package/build/dist/Types/Exception/ExceptionCode.js +1 -0
  56. package/build/dist/Types/Exception/ExceptionCode.js.map +1 -1
  57. package/build/dist/Types/Exception/ForbiddenException.js +8 -0
  58. package/build/dist/Types/Exception/ForbiddenException.js.map +1 -0
  59. package/build/dist/Types/IP/IP.js +66 -0
  60. package/build/dist/Types/IP/IP.js.map +1 -1
  61. package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
  62. package/build/dist/UI/Utils/API/API.js +11 -5
  63. package/build/dist/UI/Utils/API/API.js.map +1 -1
  64. package/build/dist/UI/Utils/Cookie.js +8 -0
  65. package/build/dist/UI/Utils/Cookie.js.map +1 -1
  66. package/build/dist/UI/Utils/User.js +1 -0
  67. package/build/dist/UI/Utils/User.js.map +1 -1
  68. package/build/dist/Utils/DNSUtil.js +19 -0
  69. package/build/dist/Utils/DNSUtil.js.map +1 -0
  70. package/build/dist/Utils/Schema/ModelSchema.js +181 -0
  71. package/build/dist/Utils/Schema/ModelSchema.js.map +1 -0
  72. package/package.json +4 -2
@@ -1 +1 @@
1
- {"version":3,"file":"User.js","sourceRoot":"","sources":["../../../../UI/Utils/User.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"User.js","sourceRoot":"","sources":["../../../../UI/Utils/User.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import dns from "dns";
2
+ export default class DNSUtil {
3
+ static getCnameRecord(data) {
4
+ return new Promise((resolve, reject) => {
5
+ dns.resolveCname(data.domain, (err, addresses) => {
6
+ if (err) {
7
+ reject(err);
8
+ }
9
+ else if (addresses.length > 0) {
10
+ resolve(addresses[0]);
11
+ }
12
+ else {
13
+ reject(new Error("No CNAME record found for domain: " + data.domain));
14
+ }
15
+ });
16
+ });
17
+ }
18
+ }
19
+ //# sourceMappingURL=DNSUtil.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DNSUtil.js","sourceRoot":"","sources":["../../../Utils/DNSUtil.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,MAAM,CAAC,OAAO,OAAO,OAAO;IACnB,MAAM,CAAC,cAAc,CAAC,IAAwB;QACnD,OAAO,IAAI,OAAO,CAChB,CAAC,OAAgC,EAAE,MAA8B,EAAE,EAAE;YACnE,GAAG,CAAC,YAAY,CACd,IAAI,CAAC,MAAM,EACX,CAAC,GAAiB,EAAE,SAAmB,EAAE,EAAE;gBACzC,IAAI,GAAG,EAAE,CAAC;oBACR,MAAM,CAAC,GAAG,CAAC,CAAC;gBACd,CAAC;qBAAM,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACN,MAAM,CACJ,IAAI,KAAK,CAAC,oCAAoC,GAAG,IAAI,CAAC,MAAM,CAAC,CAC9D,CAAC;gBACJ,CAAC;YACH,CAAC,CACF,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,181 @@
1
+ import { z } from "zod";
2
+ import { extendZodWithOpenApi } from "@asteasolutions/zod-to-openapi";
3
+ import TableColumnType from "../../Types/Database/TableColumnType";
4
+ import { getTableColumns, } from "../../Types/Database/TableColumn";
5
+ import SortOrder from "../../Types/BaseDatabase/SortOrder";
6
+ extendZodWithOpenApi(z);
7
+ export default z;
8
+ export class ModelSchema {
9
+ static getModelSchema(data) {
10
+ const modelType = data.modelType;
11
+ const model = new modelType();
12
+ const columns = getTableColumns(model);
13
+ const shape = {};
14
+ for (const key in columns) {
15
+ const column = columns[key];
16
+ if (!column) {
17
+ continue;
18
+ }
19
+ let zodType;
20
+ if (column.type === TableColumnType.ObjectID) {
21
+ zodType = z.string();
22
+ }
23
+ else if (column.type === TableColumnType.Date) {
24
+ zodType = z.date();
25
+ }
26
+ else if (column.type === TableColumnType.Version ||
27
+ column.type === TableColumnType.Number ||
28
+ column.type === TableColumnType.PositiveNumber) {
29
+ zodType = z.number();
30
+ }
31
+ else if (column.type === TableColumnType.Email) {
32
+ zodType = z.string().email();
33
+ }
34
+ else if (column.type === TableColumnType.HashedString ||
35
+ column.type === TableColumnType.Slug ||
36
+ column.type === TableColumnType.ShortText ||
37
+ column.type === TableColumnType.LongText ||
38
+ column.type === TableColumnType.Phone) {
39
+ zodType = z.string();
40
+ }
41
+ else if (column.type === TableColumnType.Boolean) {
42
+ zodType = z.boolean();
43
+ }
44
+ else if (column.type === TableColumnType.JSON) {
45
+ zodType = z.any();
46
+ }
47
+ else if (column.type === TableColumnType.EntityArray) {
48
+ const entityArrayType = column.modelType;
49
+ if (!entityArrayType) {
50
+ throw new Error(`Entity type is not defined for column ${key}`);
51
+ }
52
+ const schemaArray = ModelSchema.getModelSchema({
53
+ modelType: entityArrayType,
54
+ });
55
+ zodType = z.array(z.lazy(() => {
56
+ return schemaArray;
57
+ }));
58
+ }
59
+ else if (column.type === TableColumnType.Entity) {
60
+ const entityType = column.modelType;
61
+ if (!entityType) {
62
+ throw new Error(`Entity type is not defined for column ${key}`);
63
+ }
64
+ const schema = ModelSchema.getModelSchema({
65
+ modelType: entityType,
66
+ });
67
+ zodType = z.lazy(() => {
68
+ return schema;
69
+ });
70
+ }
71
+ else {
72
+ zodType = z.any();
73
+ }
74
+ if (column.required) {
75
+ // leave as is
76
+ }
77
+ else {
78
+ zodType = zodType.optional();
79
+ }
80
+ // add title and description to the schema
81
+ if (column.title) {
82
+ zodType = zodType.describe(column.title);
83
+ }
84
+ const openApiKeyValue = {};
85
+ // add title and description to OpenAPI schema
86
+ if (column.title) {
87
+ openApiKeyValue["title"] = column.title;
88
+ }
89
+ if (column.description) {
90
+ openApiKeyValue["description"] = column.description;
91
+ }
92
+ zodType = zodType.openapi(openApiKeyValue);
93
+ shape[key] = zodType;
94
+ }
95
+ const openApiKeyValue = {
96
+ name: model.tableName,
97
+ title: model.singularName,
98
+ pluralTitle: model.pluralName,
99
+ description: model.tableDescription || "",
100
+ type: "object",
101
+ };
102
+ const schema = z
103
+ .object(shape)
104
+ .openapi(model.tableName, openApiKeyValue);
105
+ return schema;
106
+ }
107
+ static getSortableTypes() {
108
+ return [
109
+ TableColumnType.VeryLongText,
110
+ TableColumnType.Slug,
111
+ TableColumnType.ShortText,
112
+ TableColumnType.LongText,
113
+ TableColumnType.Number,
114
+ TableColumnType.Date,
115
+ TableColumnType.Boolean,
116
+ TableColumnType.Description,
117
+ TableColumnType.ObjectID,
118
+ ];
119
+ }
120
+ static getQueryModelSchema(data) {
121
+ const modelType = data.modelType;
122
+ const model = new modelType();
123
+ const columns = getTableColumns(model);
124
+ const shape = {};
125
+ for (const key in columns) {
126
+ const column = columns[key];
127
+ if (!column) {
128
+ continue;
129
+ }
130
+ // There are these query operators.
131
+ }
132
+ return z.object(shape);
133
+ }
134
+ static getSortModelSchema(data) {
135
+ const modelType = data.modelType;
136
+ const model = new modelType();
137
+ const columns = getTableColumns(model);
138
+ const shape = {};
139
+ for (const key in columns) {
140
+ const column = columns[key];
141
+ if (!column) {
142
+ continue;
143
+ }
144
+ const isSortable = ModelSchema.getSortableTypes().includes(column.type);
145
+ if (!isSortable) {
146
+ continue;
147
+ }
148
+ shape[key] = z
149
+ .enum([SortOrder.Ascending, SortOrder.Descending])
150
+ .optional();
151
+ }
152
+ return z.object(shape);
153
+ }
154
+ static getSelectModelSchema(data) {
155
+ const modelType = data.modelType;
156
+ const model = new modelType();
157
+ const columns = getTableColumns(model);
158
+ const shape = {};
159
+ for (const key in columns) {
160
+ const column = columns[key];
161
+ if (!column) {
162
+ continue;
163
+ }
164
+ // if its entity array or entity then you can select nested properties
165
+ if (!data.isNested &&
166
+ column.modelType &&
167
+ (column.type === TableColumnType.EntityArray ||
168
+ column.type === TableColumnType.Entity)) {
169
+ // can only do one level of nesting
170
+ shape[key] = this.getSelectModelSchema({
171
+ modelType: column.modelType,
172
+ isNested: true,
173
+ });
174
+ continue;
175
+ }
176
+ shape[key] = z.boolean().optional();
177
+ }
178
+ return z.object(shape);
179
+ }
180
+ }
181
+ //# sourceMappingURL=ModelSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModelSchema.js","sourceRoot":"","sources":["../../../../Utils/Schema/ModelSchema.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oneuptime/common",
3
- "version": "7.0.4263",
3
+ "version": "7.0.4295",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -44,6 +44,7 @@
44
44
  "ts-jest": "^28.0.5"
45
45
  },
46
46
  "dependencies": {
47
+ "@asteasolutions/zod-to-openapi": "^7.3.2",
47
48
  "@bull-board/express": "^5.21.4",
48
49
  "@clickhouse/client": "^1.10.1",
49
50
  "@elastic/elasticsearch": "^8.12.1",
@@ -134,6 +135,7 @@
134
135
  "typeorm-extension": "^2.2.13",
135
136
  "universal-cookie": "^7.2.1",
136
137
  "use-async-effect": "^2.2.6",
137
- "uuid": "^8.3.2"
138
+ "uuid": "^8.3.2",
139
+ "zod": "^3.25.30"
138
140
  }
139
141
  }