@oneuptime/common 12.0.0 → 12.0.1

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 (33) hide show
  1. package/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.ts +12 -2
  2. package/Server/Infrastructure/Postgres/LocalMigrationGenerationDataSource.ts +12 -2
  3. package/Server/Services/LlmProviderService.ts +69 -9
  4. package/Server/Services/RunnerService.ts +1 -7
  5. package/Server/Utils/Monitor/Criteria/CompareCriteria.ts +12 -0
  6. package/Tests/App/Dashboard/RunnerInstallInstructions.test.tsx +119 -0
  7. package/Tests/App/Dashboard/RunnerStatus.test.tsx +274 -0
  8. package/Tests/Server/Services/LlmProviderUsableByProject.test.ts +293 -0
  9. package/Tests/Server/Utils/AI/ToolArgsExtractors.test.ts +141 -0
  10. package/Tests/Server/Utils/AI/Toolbox/WidgetBuilder.test.ts +205 -0
  11. package/Tests/Server/Utils/Monitor/Criteria/CompareCriteria.test.ts +897 -0
  12. package/Tests/Types/Runner/RunnerLiveStatus.test.ts +320 -0
  13. package/Tests/UI/Components/AiInvestigationSettingsCard.test.tsx +285 -0
  14. package/Tests/UI/Components/Detail/EntityFields.test.tsx +166 -0
  15. package/Types/Runbook/RunbookStep.ts +15 -0
  16. package/Types/Runner/RunnerLiveStatus.ts +114 -0
  17. package/UI/Components/Detail/Detail.tsx +155 -0
  18. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.js +16 -4
  19. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.js.map +1 -1
  20. package/build/dist/Server/Infrastructure/Postgres/LocalMigrationGenerationDataSource.js +11 -1
  21. package/build/dist/Server/Infrastructure/Postgres/LocalMigrationGenerationDataSource.js.map +1 -1
  22. package/build/dist/Server/Services/LlmProviderService.js +61 -8
  23. package/build/dist/Server/Services/LlmProviderService.js.map +1 -1
  24. package/build/dist/Server/Services/RunnerService.js +1 -6
  25. package/build/dist/Server/Services/RunnerService.js.map +1 -1
  26. package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js +11 -0
  27. package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js.map +1 -1
  28. package/build/dist/Types/Runbook/RunbookStep.js.map +1 -1
  29. package/build/dist/Types/Runner/RunnerLiveStatus.js +69 -0
  30. package/build/dist/Types/Runner/RunnerLiveStatus.js.map +1 -0
  31. package/build/dist/UI/Components/Detail/Detail.js +97 -0
  32. package/build/dist/UI/Components/Detail/Detail.js.map +1 -1
  33. package/package.json +1 -1
@@ -0,0 +1,166 @@
1
+ import Detail from "../../../../UI/Components/Detail/Detail";
2
+ import Field from "../../../../UI/Components/Detail/Field";
3
+ import FieldType from "../../../../UI/Components/Types/FieldType";
4
+ import IncidentSeverity from "../../../../Models/DatabaseModels/IncidentSeverity";
5
+ import Label from "../../../../Models/DatabaseModels/Label";
6
+ import Color from "../../../../Types/Color";
7
+ import ObjectID from "../../../../Types/ObjectID";
8
+ import { cleanup, render } from "@testing-library/react";
9
+ import React from "react";
10
+ import { afterEach, describe, expect, test } from "@jest/globals";
11
+
12
+ interface DetailItem {
13
+ incidentSeverity?: IncidentSeverity | undefined;
14
+ labels?: Array<Label> | undefined;
15
+ }
16
+
17
+ const renderDetail: (
18
+ item: DetailItem,
19
+ field: Field<DetailItem>,
20
+ ) => HTMLElement = (
21
+ item: DetailItem,
22
+ field: Field<DetailItem>,
23
+ ): HTMLElement => {
24
+ const { container } = render(
25
+ <Detail<DetailItem>
26
+ item={item}
27
+ fields={[field]}
28
+ showDetailsInNumberOfColumns={1}
29
+ />,
30
+ );
31
+
32
+ return container;
33
+ };
34
+
35
+ const buildSeverity: (name: string, color?: Color) => IncidentSeverity = (
36
+ name: string,
37
+ color?: Color,
38
+ ): IncidentSeverity => {
39
+ const severity: IncidentSeverity = new IncidentSeverity();
40
+ severity._id = new ObjectID("severity-id").toString();
41
+ severity.name = name;
42
+
43
+ if (color) {
44
+ severity.color = color;
45
+ }
46
+
47
+ return severity;
48
+ };
49
+
50
+ const severityField: Field<DetailItem> = {
51
+ key: "incidentSeverity",
52
+ title: "Minimum Severity To Investigate",
53
+ fieldType: FieldType.Entity,
54
+ placeholder: "Every severity",
55
+ };
56
+
57
+ const badgeSelector: string = '[data-dropdown-value-badge="true"]';
58
+
59
+ const requireElement: (
60
+ element: HTMLElement | null | undefined,
61
+ ) => HTMLElement = (element: HTMLElement | null | undefined): HTMLElement => {
62
+ if (!element) {
63
+ throw new Error("Expected the element to be rendered");
64
+ }
65
+
66
+ return element;
67
+ };
68
+
69
+ afterEach(() => {
70
+ cleanup();
71
+ });
72
+
73
+ describe("Detail entity fields", () => {
74
+ test("renders a related model as a labelled badge instead of throwing", () => {
75
+ const container: HTMLElement = renderDetail(
76
+ { incidentSeverity: buildSeverity("Critical", new Color("#ef4444")) },
77
+ severityField,
78
+ );
79
+
80
+ const badge: HTMLElement = requireElement(
81
+ container.querySelector<HTMLElement>(badgeSelector),
82
+ );
83
+
84
+ expect(badge.textContent).toContain("Critical");
85
+ expect(badge.style.backgroundColor).toEqual("rgb(239, 68, 68)");
86
+ });
87
+
88
+ test("renders an uncolored badge when the relation has no color selected", () => {
89
+ const container: HTMLElement = renderDetail(
90
+ { incidentSeverity: buildSeverity("Major") },
91
+ severityField,
92
+ );
93
+
94
+ const badge: HTMLElement = requireElement(
95
+ container.querySelector<HTMLElement>(badgeSelector),
96
+ );
97
+
98
+ expect(badge.textContent).toContain("Major");
99
+ expect(badge.classList.contains("bg-indigo-50")).toBe(true);
100
+ });
101
+
102
+ test("shows the placeholder when the relation is not set", () => {
103
+ const container: HTMLElement = renderDetail({}, severityField);
104
+
105
+ expect(container.textContent).toContain("Every severity");
106
+ expect(container.querySelector(badgeSelector)).toBeNull();
107
+ });
108
+
109
+ test("renders one badge per item for an entity array", () => {
110
+ const first: Label = new Label();
111
+ first.name = "Backend";
112
+ first.color = new Color("#22c55e");
113
+
114
+ const second: Label = new Label();
115
+ second.name = "Database";
116
+
117
+ const container: HTMLElement = renderDetail(
118
+ { labels: [first, second] },
119
+ {
120
+ key: "labels",
121
+ title: "Labels",
122
+ fieldType: FieldType.EntityArray,
123
+ placeholder: "No labels",
124
+ },
125
+ );
126
+
127
+ const badges: Array<HTMLElement> = Array.from(
128
+ container.querySelectorAll<HTMLElement>(badgeSelector),
129
+ );
130
+
131
+ expect(badges).toHaveLength(2);
132
+ expect(requireElement(badges[0]).textContent).toContain("Backend");
133
+ expect(requireElement(badges[0]).style.backgroundColor).toEqual(
134
+ "rgb(34, 197, 94)",
135
+ );
136
+ expect(requireElement(badges[1]).textContent).toContain("Database");
137
+ });
138
+
139
+ test("shows the placeholder for an empty entity array", () => {
140
+ const container: HTMLElement = renderDetail(
141
+ { labels: [] },
142
+ {
143
+ key: "labels",
144
+ title: "Labels",
145
+ fieldType: FieldType.EntityArray,
146
+ placeholder: "No labels",
147
+ },
148
+ );
149
+
150
+ expect(container.textContent).toContain("No labels");
151
+ expect(container.querySelector(badgeSelector)).toBeNull();
152
+ });
153
+
154
+ test("falls back to a label when a relation is declared without a field type", () => {
155
+ const container: HTMLElement = renderDetail(
156
+ { incidentSeverity: buildSeverity("Critical") },
157
+ {
158
+ key: "incidentSeverity",
159
+ title: "Minimum Severity To Investigate",
160
+ placeholder: "Every severity",
161
+ },
162
+ );
163
+
164
+ expect(container.textContent).toContain("Critical");
165
+ });
166
+ });
@@ -72,6 +72,21 @@ export interface AIStepConfig {
72
72
  * Response token cap. Defaults to 4096; clamped server-side.
73
73
  */
74
74
  maxTokens?: number;
75
+ /*
76
+ * Pin this step to a specific LLM provider. Optional — when unset the step
77
+ * uses the project's default provider (and, failing that, the global
78
+ * OneUptime provider), which is what every AI step did before this field
79
+ * existed.
80
+ *
81
+ * The id must name a provider the project owns or a global one; the server
82
+ * re-checks that on every run rather than trusting the stored config, since
83
+ * Runbook.steps is an unvalidated JSON column. A pinned provider that no
84
+ * longer resolves FAILS the step instead of quietly falling back to the
85
+ * default: an AI step runs unattended, and silently answering on a
86
+ * different model than the one a responder pinned is a change nobody would
87
+ * see. (Interactive chat, which has a human watching, does fall back.)
88
+ */
89
+ llmProviderId?: string;
75
90
  }
76
91
 
77
92
  /*
@@ -0,0 +1,114 @@
1
+ import OneUptimeDate from "../Date";
2
+
3
+ /*
4
+ * How recently a Runner must have heartbeated to count as online. Matches the
5
+ * window AIAgentService.isAgentAlive uses, and comfortably clears the Runner's
6
+ * 60s heartbeat interval.
7
+ *
8
+ * This lives in Types, not in RunnerService, because the dashboard has to
9
+ * answer the same question the server does. RunnerService imports it from
10
+ * here so the two cannot drift: a server that hands out work to Runners it
11
+ * considers alive, next to a dashboard that calls those same Runners
12
+ * disconnected, is worse than either answer on its own.
13
+ */
14
+ export const RUNNER_ALIVE_WINDOW_IN_MINUTES: number = 5;
15
+
16
+ /*
17
+ * What a Runner's heartbeat actually says about it right now.
18
+ *
19
+ * Deliberately NOT the same thing as the persisted RunnerConnectionStatus
20
+ * column. That column is written exactly twice — Disconnected when the row is
21
+ * created, Connected on the first heartbeat — and nothing ever writes it back,
22
+ * so a Runner that ran once last March still reads "connected" today. Every
23
+ * server-side liveness check already ignores it and compares lastAlive against
24
+ * the window above; this enum lets the dashboard tell the user the same truth.
25
+ */
26
+ export enum RunnerLiveStatus {
27
+ /* Heartbeated within the window: it is polling for work right now. */
28
+ Connected = "connected",
29
+
30
+ /*
31
+ * Heartbeated at some point, but not recently enough. The container is
32
+ * stopped, wedged, or cannot reach OneUptime.
33
+ */
34
+ Disconnected = "disconnected",
35
+
36
+ /*
37
+ * Never heartbeated at all. The row exists because someone created it in the
38
+ * dashboard, but the Docker command has not been run yet. This is a setup
39
+ * step the user still owes us, not a failure, and the UI must not dress it up
40
+ * as one.
41
+ */
42
+ NeverConnected = "never-connected",
43
+ }
44
+
45
+ /*
46
+ * lastAlive arrives as a Date from a hydrated model and as an ISO string from
47
+ * a raw API payload, so both are accepted. Anything falsy — null from Postgres,
48
+ * undefined from a select that never asked for the column — means "no heartbeat
49
+ * has ever been recorded".
50
+ */
51
+ export type GetRunnerLiveStatusFunction = (
52
+ lastAlive: Date | string | null | undefined,
53
+ ) => RunnerLiveStatus;
54
+
55
+ export const getRunnerLiveStatus: GetRunnerLiveStatusFunction = (
56
+ lastAlive: Date | string | null | undefined,
57
+ ): RunnerLiveStatus => {
58
+ if (!lastAlive) {
59
+ return RunnerLiveStatus.NeverConnected;
60
+ }
61
+
62
+ const lastAliveDate: Date = OneUptimeDate.fromString(lastAlive);
63
+
64
+ /*
65
+ * An unparseable value is not evidence of life. Returning Disconnected keeps
66
+ * a malformed timestamp from being reported as a healthy Runner.
67
+ */
68
+ if (isNaN(lastAliveDate.getTime())) {
69
+ return RunnerLiveStatus.Disconnected;
70
+ }
71
+
72
+ const windowStart: Date = OneUptimeDate.getSomeMinutesAgo(
73
+ RUNNER_ALIVE_WINDOW_IN_MINUTES,
74
+ );
75
+
76
+ if (OneUptimeDate.isAfter(lastAliveDate, windowStart)) {
77
+ return RunnerLiveStatus.Connected;
78
+ }
79
+
80
+ return RunnerLiveStatus.Disconnected;
81
+ };
82
+
83
+ /*
84
+ * The English label for each state, which is also its i18next lookup key.
85
+ *
86
+ * "Connected" and "Disconnected" already had translations in all sixteen
87
+ * Dashboard locale files before any of this — the probe pages have used them
88
+ * for years — so routing every Runner status label through these three
89
+ * constants is what lets the new state reuse them instead of inventing a
90
+ * parallel set that would have to be translated again.
91
+ *
92
+ * It lives here rather than in the component because two very different
93
+ * surfaces need the same words: the status bubble, and the plain-string
94
+ * option label in the runbook step editor's Runner picker.
95
+ */
96
+ export type GetRunnerLiveStatusLabelFunction = (
97
+ status: RunnerLiveStatus,
98
+ ) => string;
99
+
100
+ export const getRunnerLiveStatusLabel: GetRunnerLiveStatusLabelFunction = (
101
+ status: RunnerLiveStatus,
102
+ ): string => {
103
+ if (status === RunnerLiveStatus.Connected) {
104
+ return "Connected";
105
+ }
106
+
107
+ if (status === RunnerLiveStatus.NeverConnected) {
108
+ return "Never connected";
109
+ }
110
+
111
+ return "Disconnected";
112
+ };
113
+
114
+ export default RunnerLiveStatus;
@@ -178,6 +178,126 @@ const Detail: DetailFunction = <T extends GenericObject>(
178
178
  );
179
179
  };
180
180
 
181
+ /*
182
+ * Relation columns arrive as whole model instances. React throws (and takes
183
+ * the entire page down with it) when handed one as a child, so every object
184
+ * that reaches the renderer is reduced to a label with these keys, in order.
185
+ */
186
+ const entityLabelKeys: Array<string> = [
187
+ "name",
188
+ "title",
189
+ "label",
190
+ "email",
191
+ "slug",
192
+ "value",
193
+ ];
194
+
195
+ type GetEntityLabelFunction = (entity: unknown) => string;
196
+
197
+ const getEntityLabel: GetEntityLabelFunction = (entity: unknown): string => {
198
+ if (entity === null || entity === undefined) {
199
+ return "";
200
+ }
201
+
202
+ if (entity instanceof DatabaseProperty) {
203
+ return entity.toString();
204
+ }
205
+
206
+ if (typeof entity !== "object") {
207
+ return String(entity);
208
+ }
209
+
210
+ for (const key of entityLabelKeys) {
211
+ const value: unknown = (entity as Dictionary<unknown>)[key];
212
+
213
+ if (value === null || value === undefined || value === "") {
214
+ continue;
215
+ }
216
+
217
+ if (value instanceof DatabaseProperty) {
218
+ return value.toString();
219
+ }
220
+
221
+ if (typeof value !== "object") {
222
+ return String(value);
223
+ }
224
+ }
225
+
226
+ return "";
227
+ };
228
+
229
+ type GetEntityColorFunction = (entity: unknown) => Color | string | undefined;
230
+
231
+ const getEntityColor: GetEntityColorFunction = (
232
+ entity: unknown,
233
+ ): Color | string | undefined => {
234
+ if (!entity || typeof entity !== "object") {
235
+ return undefined;
236
+ }
237
+
238
+ const color: unknown = (entity as Dictionary<unknown>)["color"];
239
+
240
+ if (color instanceof Color || typeof color === "string") {
241
+ return color;
242
+ }
243
+
244
+ return undefined;
245
+ };
246
+
247
+ type GetEntityViewerFunction = (entity: unknown) => ReactElement | string;
248
+
249
+ const getEntityViewer: GetEntityViewerFunction = (
250
+ entity: unknown,
251
+ ): ReactElement | string => {
252
+ const label: string = getEntityLabel(entity);
253
+
254
+ if (!label) {
255
+ // Fall through to the placeholder the field already declares.
256
+ return "";
257
+ }
258
+
259
+ return <DropdownValueBadge label={label} color={getEntityColor(entity)} />;
260
+ };
261
+
262
+ type GetEntityArrayViewerFunction = (
263
+ entities: Array<unknown>,
264
+ ) => ReactElement | string;
265
+
266
+ const getEntityArrayViewer: GetEntityArrayViewerFunction = (
267
+ entities: Array<unknown>,
268
+ ): ReactElement | string => {
269
+ const labelled: Array<{ label: string; entity: unknown }> = entities
270
+ .map((entity: unknown) => {
271
+ return { label: getEntityLabel(entity), entity: entity };
272
+ })
273
+ .filter((item: { label: string; entity: unknown }) => {
274
+ return Boolean(item.label);
275
+ });
276
+
277
+ if (labelled.length === 0) {
278
+ return "";
279
+ }
280
+
281
+ return (
282
+ <div className="flex flex-wrap gap-1.5">
283
+ {labelled.map(
284
+ (
285
+ item: { label: string; entity: unknown },
286
+ index: number,
287
+ ): ReactElement => {
288
+ return (
289
+ <DropdownValueBadge
290
+ key={`${item.label}-${index}`}
291
+ label={item.label}
292
+ color={getEntityColor(item.entity)}
293
+ />
294
+ );
295
+ },
296
+ )}
297
+ </div>
298
+ );
299
+ };
300
+
181
301
  type GetDictionaryOfStringsViewerFunction = (
182
302
  data: Dictionary<string>,
183
303
  ) => ReactElement;
@@ -486,6 +606,16 @@ const Detail: DetailFunction = <T extends GenericObject>(
486
606
  );
487
607
  }
488
608
 
609
+ if (data && field.fieldType === FieldType.Entity) {
610
+ data = getEntityViewer(data);
611
+ }
612
+
613
+ if (data && field.fieldType === FieldType.EntityArray) {
614
+ data = getEntityArrayViewer(
615
+ Array.isArray(data) ? (data as Array<unknown>) : [data],
616
+ );
617
+ }
618
+
489
619
  if (data && field.fieldType === FieldType.HiddenText) {
490
620
  data = (
491
621
  <HiddenText
@@ -608,6 +738,31 @@ const Detail: DetailFunction = <T extends GenericObject>(
608
738
  data = data.toString();
609
739
  }
610
740
 
741
+ /*
742
+ * Last resort. Anything still an object here is something no field type
743
+ * claimed - usually a relation column declared without FieldType.Entity.
744
+ * Rendering it would throw "Objects are not valid as a React child" and
745
+ * blank the whole page, so label it instead and log the misconfiguration.
746
+ */
747
+ if (data && typeof data === "object" && !React.isValidElement(data)) {
748
+ Logger.error(
749
+ "Detail: no field type renders the value of '" +
750
+ fieldKeyStr +
751
+ "'. Set fieldType (FieldType.Entity for relations) or getElement on the field.",
752
+ );
753
+
754
+ data = Array.isArray(data)
755
+ ? (data as Array<unknown>)
756
+ .map((entity: unknown) => {
757
+ return getEntityLabel(entity);
758
+ })
759
+ .filter((label: string) => {
760
+ return Boolean(label);
761
+ })
762
+ .join(", ")
763
+ : getEntityLabel(data);
764
+ }
765
+
611
766
  // Determine style-based classes
612
767
  const styleType: DetailStyle = props.style || DetailStyle.Default;
613
768
  const isCardStyle: boolean = styleType === DetailStyle.Card;
@@ -534,11 +534,21 @@ __decorate([
534
534
  Permission.OnCallMember,
535
535
  Permission.EditOnCallDutyPolicyScheduleLayer,
536
536
  ],
537
- }),
537
+ })
538
+ /*
539
+ * The default is `.toJSON()` rather than the Recurring instance itself. Both
540
+ * serialize to the identical JSON, so the DDL is unchanged — but TypeORM
541
+ * compares a jsonb default by deep-comparing the entity default against the
542
+ * value parsed back out of the database, and that comparison rejects any pair
543
+ * whose constructors differ (OrmUtils.compare2Objects). An instance never
544
+ * equals the plain object Postgres hands back, so every generated migration
545
+ * re-emitted this SET DEFAULT as phantom drift. A plain object compares equal.
546
+ */
547
+ ,
538
548
  Column({
539
549
  nullable: false,
540
550
  type: ColumnType.JSON,
541
- default: Recurring.getDefault(),
551
+ default: Recurring.getDefault().toJSON(),
542
552
  transformer: Recurring.getDatabaseTransformer(),
543
553
  }),
544
554
  __metadata("design:type", Recurring)
@@ -618,11 +628,13 @@ __decorate([
618
628
  Permission.OnCallMember,
619
629
  Permission.EditOnCallDutyPolicyScheduleLayer,
620
630
  ],
621
- }),
631
+ })
632
+ // Plain object, not the instance — see the note on `rotation` above.
633
+ ,
622
634
  Column({
623
635
  nullable: false,
624
636
  type: ColumnType.JSON,
625
- default: RestrictionTimes.getDefault(),
637
+ default: RestrictionTimes.getDefault().toJSON(),
626
638
  transformer: RestrictionTimes.getDatabaseTransformer(),
627
639
  }),
628
640
  __metadata("design:type", RestrictionTimes)
@@ -1 +1 @@
1
- {"version":3,"file":"OnCallDutyPolicyScheduleLayer.js","sourceRoot":"","sources":["../../../../Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OnCallDutyPolicyScheduleLayer.js","sourceRoot":"","sources":["../../../../Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,16 @@
1
1
  import dataSourceOptions from "./DataSourceOptions";
2
2
  import { DataSource } from "typeorm";
3
- const dataSourceOptionToMigrate = Object.assign(Object.assign({}, dataSourceOptions), { host: "localhost", port: 5400 });
3
+ /*
4
+ * The app reaches Postgres over the compose network as `postgres:5432`, but the
5
+ * migration CLI runs on the host, where the same server is published on
6
+ * localhost:5400 — hence the defaults below.
7
+ *
8
+ * DATABASE_MIGRATIONS_HOST / DATABASE_MIGRATIONS_PORT (already in
9
+ * config.example.env, already honoured by migration-run.sh) override them, so
10
+ * the schema-drift job can point this at a CI service container on a different
11
+ * port without editing the file.
12
+ */
13
+ const dataSourceOptionToMigrate = Object.assign(Object.assign({}, dataSourceOptions), { host: process.env["DATABASE_MIGRATIONS_HOST"] || "localhost", port: parseInt(process.env["DATABASE_MIGRATIONS_PORT"] || "5400", 10) });
4
14
  const PostgresDataSource = new DataSource(dataSourceOptionToMigrate);
5
15
  export default PostgresDataSource;
6
16
  //# sourceMappingURL=LocalMigrationGenerationDataSource.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LocalMigrationGenerationDataSource.js","sourceRoot":"","sources":["../../../../../Server/Infrastructure/Postgres/LocalMigrationGenerationDataSource.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,MAAM,yBAAyB,mCAC1B,iBAAiB,KACpB,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,IAAI,GACX,CAAC;AAEF,MAAM,kBAAkB,GAAe,IAAI,UAAU,CACnD,yBAAyB,CAC1B,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"LocalMigrationGenerationDataSource.js","sourceRoot":"","sources":["../../../../../Server/Infrastructure/Postgres/LocalMigrationGenerationDataSource.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC;;;;;;;;;GASG;AACH,MAAM,yBAAyB,mCAC1B,iBAAiB,KACpB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,IAAI,WAAW,EAC5D,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,IAAI,MAAM,EAAE,EAAE,CAAC,GACtE,CAAC;AAEF,MAAM,kBAAkB,GAAe,IAAI,UAAU,CACnD,yBAAyB,CAC1B,CAAC;AAEF,eAAe,kBAAkB,CAAC"}