@lightdash/common 0.2044.0 → 0.2046.0

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.
@@ -1,4 +1,5 @@
1
1
  import { z } from 'zod';
2
+ import { FieldType, MetricType } from './field';
2
3
  export declare const ChangesetSchema: z.ZodObject<{
3
4
  changesetUuid: z.ZodString;
4
5
  createdAt: z.ZodDate;
@@ -58,25 +59,116 @@ export declare const ChangeSchema: z.ZodIntersection<z.ZodObject<{
58
59
  type: z.ZodLiteral<"create">;
59
60
  payload: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
60
61
  type: z.ZodLiteral<"metric">;
61
- value: z.ZodUnknown;
62
+ value: z.ZodObject<{
63
+ fieldType: z.ZodLiteral<FieldType.METRIC>;
64
+ type: z.ZodNativeEnum<typeof MetricType>;
65
+ name: z.ZodString;
66
+ label: z.ZodString;
67
+ table: z.ZodString;
68
+ tableLabel: z.ZodString;
69
+ sql: z.ZodString;
70
+ description: z.ZodOptional<z.ZodString>;
71
+ hidden: z.ZodBoolean;
72
+ compiledSql: z.ZodString;
73
+ tablesReferences: z.ZodArray<z.ZodString, "many">;
74
+ tablesRequiredAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>;
75
+ }, "strip", z.ZodTypeAny, {
76
+ name: string;
77
+ label: string;
78
+ sql: string;
79
+ table: string;
80
+ fieldType: FieldType.METRIC;
81
+ type: MetricType;
82
+ tableLabel: string;
83
+ hidden: boolean;
84
+ compiledSql: string;
85
+ tablesReferences: string[];
86
+ description?: string | undefined;
87
+ tablesRequiredAttributes?: Record<string, Record<string, string>> | undefined;
88
+ }, {
89
+ name: string;
90
+ label: string;
91
+ sql: string;
92
+ table: string;
93
+ fieldType: FieldType.METRIC;
94
+ type: MetricType;
95
+ tableLabel: string;
96
+ hidden: boolean;
97
+ compiledSql: string;
98
+ tablesReferences: string[];
99
+ description?: string | undefined;
100
+ tablesRequiredAttributes?: Record<string, Record<string, string>> | undefined;
101
+ }>;
62
102
  }, "strip", z.ZodTypeAny, {
103
+ value: {
104
+ name: string;
105
+ label: string;
106
+ sql: string;
107
+ table: string;
108
+ fieldType: FieldType.METRIC;
109
+ type: MetricType;
110
+ tableLabel: string;
111
+ hidden: boolean;
112
+ compiledSql: string;
113
+ tablesReferences: string[];
114
+ description?: string | undefined;
115
+ tablesRequiredAttributes?: Record<string, Record<string, string>> | undefined;
116
+ };
63
117
  type: "metric";
64
- value?: unknown;
65
118
  }, {
119
+ value: {
120
+ name: string;
121
+ label: string;
122
+ sql: string;
123
+ table: string;
124
+ fieldType: FieldType.METRIC;
125
+ type: MetricType;
126
+ tableLabel: string;
127
+ hidden: boolean;
128
+ compiledSql: string;
129
+ tablesReferences: string[];
130
+ description?: string | undefined;
131
+ tablesRequiredAttributes?: Record<string, Record<string, string>> | undefined;
132
+ };
66
133
  type: "metric";
67
- value?: unknown;
68
134
  }>]>;
69
135
  }, "strip", z.ZodTypeAny, {
70
136
  type: "create";
71
137
  payload: {
138
+ value: {
139
+ name: string;
140
+ label: string;
141
+ sql: string;
142
+ table: string;
143
+ fieldType: FieldType.METRIC;
144
+ type: MetricType;
145
+ tableLabel: string;
146
+ hidden: boolean;
147
+ compiledSql: string;
148
+ tablesReferences: string[];
149
+ description?: string | undefined;
150
+ tablesRequiredAttributes?: Record<string, Record<string, string>> | undefined;
151
+ };
72
152
  type: "metric";
73
- value?: unknown;
74
153
  };
75
154
  }, {
76
155
  type: "create";
77
156
  payload: {
157
+ value: {
158
+ name: string;
159
+ label: string;
160
+ sql: string;
161
+ table: string;
162
+ fieldType: FieldType.METRIC;
163
+ type: MetricType;
164
+ tableLabel: string;
165
+ hidden: boolean;
166
+ compiledSql: string;
167
+ tablesReferences: string[];
168
+ description?: string | undefined;
169
+ tablesRequiredAttributes?: Record<string, Record<string, string>> | undefined;
170
+ };
78
171
  type: "metric";
79
- value?: unknown;
80
172
  };
81
173
  }>, z.ZodObject<{
82
174
  type: z.ZodLiteral<"update">;
@@ -176,25 +268,116 @@ export declare const ChangesetWithChangesSchema: z.ZodObject<{
176
268
  type: z.ZodLiteral<"create">;
177
269
  payload: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
178
270
  type: z.ZodLiteral<"metric">;
179
- value: z.ZodUnknown;
271
+ value: z.ZodObject<{
272
+ fieldType: z.ZodLiteral<FieldType.METRIC>;
273
+ type: z.ZodNativeEnum<typeof MetricType>;
274
+ name: z.ZodString;
275
+ label: z.ZodString;
276
+ table: z.ZodString;
277
+ tableLabel: z.ZodString;
278
+ sql: z.ZodString;
279
+ description: z.ZodOptional<z.ZodString>;
280
+ hidden: z.ZodBoolean;
281
+ compiledSql: z.ZodString;
282
+ tablesReferences: z.ZodArray<z.ZodString, "many">;
283
+ tablesRequiredAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>;
284
+ }, "strip", z.ZodTypeAny, {
285
+ name: string;
286
+ label: string;
287
+ sql: string;
288
+ table: string;
289
+ fieldType: FieldType.METRIC;
290
+ type: MetricType;
291
+ tableLabel: string;
292
+ hidden: boolean;
293
+ compiledSql: string;
294
+ tablesReferences: string[];
295
+ description?: string | undefined;
296
+ tablesRequiredAttributes?: Record<string, Record<string, string>> | undefined;
297
+ }, {
298
+ name: string;
299
+ label: string;
300
+ sql: string;
301
+ table: string;
302
+ fieldType: FieldType.METRIC;
303
+ type: MetricType;
304
+ tableLabel: string;
305
+ hidden: boolean;
306
+ compiledSql: string;
307
+ tablesReferences: string[];
308
+ description?: string | undefined;
309
+ tablesRequiredAttributes?: Record<string, Record<string, string>> | undefined;
310
+ }>;
180
311
  }, "strip", z.ZodTypeAny, {
312
+ value: {
313
+ name: string;
314
+ label: string;
315
+ sql: string;
316
+ table: string;
317
+ fieldType: FieldType.METRIC;
318
+ type: MetricType;
319
+ tableLabel: string;
320
+ hidden: boolean;
321
+ compiledSql: string;
322
+ tablesReferences: string[];
323
+ description?: string | undefined;
324
+ tablesRequiredAttributes?: Record<string, Record<string, string>> | undefined;
325
+ };
181
326
  type: "metric";
182
- value?: unknown;
183
327
  }, {
328
+ value: {
329
+ name: string;
330
+ label: string;
331
+ sql: string;
332
+ table: string;
333
+ fieldType: FieldType.METRIC;
334
+ type: MetricType;
335
+ tableLabel: string;
336
+ hidden: boolean;
337
+ compiledSql: string;
338
+ tablesReferences: string[];
339
+ description?: string | undefined;
340
+ tablesRequiredAttributes?: Record<string, Record<string, string>> | undefined;
341
+ };
184
342
  type: "metric";
185
- value?: unknown;
186
343
  }>]>;
187
344
  }, "strip", z.ZodTypeAny, {
188
345
  type: "create";
189
346
  payload: {
347
+ value: {
348
+ name: string;
349
+ label: string;
350
+ sql: string;
351
+ table: string;
352
+ fieldType: FieldType.METRIC;
353
+ type: MetricType;
354
+ tableLabel: string;
355
+ hidden: boolean;
356
+ compiledSql: string;
357
+ tablesReferences: string[];
358
+ description?: string | undefined;
359
+ tablesRequiredAttributes?: Record<string, Record<string, string>> | undefined;
360
+ };
190
361
  type: "metric";
191
- value?: unknown;
192
362
  };
193
363
  }, {
194
364
  type: "create";
195
365
  payload: {
366
+ value: {
367
+ name: string;
368
+ label: string;
369
+ sql: string;
370
+ table: string;
371
+ fieldType: FieldType.METRIC;
372
+ type: MetricType;
373
+ tableLabel: string;
374
+ hidden: boolean;
375
+ compiledSql: string;
376
+ tablesReferences: string[];
377
+ description?: string | undefined;
378
+ tablesRequiredAttributes?: Record<string, Record<string, string>> | undefined;
379
+ };
196
380
  type: "metric";
197
- value?: unknown;
198
381
  };
199
382
  }>, z.ZodObject<{
200
383
  type: z.ZodLiteral<"update">;
@@ -274,8 +457,21 @@ export declare const ChangesetWithChangesSchema: z.ZodObject<{
274
457
  } & ({
275
458
  type: "create";
276
459
  payload: {
460
+ value: {
461
+ name: string;
462
+ label: string;
463
+ sql: string;
464
+ table: string;
465
+ fieldType: FieldType.METRIC;
466
+ type: MetricType;
467
+ tableLabel: string;
468
+ hidden: boolean;
469
+ compiledSql: string;
470
+ tablesReferences: string[];
471
+ description?: string | undefined;
472
+ tablesRequiredAttributes?: Record<string, Record<string, string>> | undefined;
473
+ };
277
474
  type: "metric";
278
- value?: unknown;
279
475
  };
280
476
  } | {
281
477
  type: "update";
@@ -311,8 +507,21 @@ export declare const ChangesetWithChangesSchema: z.ZodObject<{
311
507
  } & ({
312
508
  type: "create";
313
509
  payload: {
510
+ value: {
511
+ name: string;
512
+ label: string;
513
+ sql: string;
514
+ table: string;
515
+ fieldType: FieldType.METRIC;
516
+ type: MetricType;
517
+ tableLabel: string;
518
+ hidden: boolean;
519
+ compiledSql: string;
520
+ tablesReferences: string[];
521
+ description?: string | undefined;
522
+ tablesRequiredAttributes?: Record<string, Record<string, string>> | undefined;
523
+ };
314
524
  type: "metric";
315
- value?: unknown;
316
525
  };
317
526
  } | {
318
527
  type: "update";
@@ -1 +1 @@
1
- {"version":3,"file":"changeset.d.ts","sourceRoot":"","sources":["../../../src/types/changeset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;EAS1B,CAAC;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA0CpB,CAAC;AAEN,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAErC,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAElD,MAAM,MAAM,qBAAqB,GAAG;IAChC,MAAM,EAAE,IAAI,CAAC;IACb,OAAO,EAAE,oBAAoB,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,IAAI,CACjC,MAAM,EACJ,mBAAmB,GACnB,kBAAkB,GAClB,MAAM,GACN,YAAY,GACZ,YAAY,GACZ,iBAAiB,GACjB,SAAS,CACd,CAAC;AAGF,KAAK,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEnD,MAAM,MAAM,+BAA+B,GAAG;IAC1C,MAAM,EAAE,IAAI,CAAC;IACb,OAAO,EAAE,mBAAmB,EAAE,CAAC;CAClC,CAAC"}
1
+ {"version":3,"file":"changeset.d.ts","sourceRoot":"","sources":["../../../src/types/changeset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAIhD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;EAS1B,CAAC;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA2DpB,CAAC;AAEN,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAErC,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAElD,MAAM,MAAM,qBAAqB,GAAG;IAChC,MAAM,EAAE,IAAI,CAAC;IACb,OAAO,EAAE,oBAAoB,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,IAAI,CACjC,MAAM,EACJ,mBAAmB,GACnB,kBAAkB,GAClB,MAAM,GACN,YAAY,GACZ,YAAY,GACZ,iBAAiB,GACjB,SAAS,CACd,CAAC;AAGF,KAAK,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEnD,MAAM,MAAM,+BAA+B,GAAG;IAC1C,MAAM,EAAE,IAAI,CAAC;IACb,OAAO,EAAE,mBAAmB,EAAE,CAAC;CAClC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { z } from 'zod';
2
+ import { FieldType, MetricType } from './field';
2
3
  const ChangesetStatusSchema = z.enum(['draft', 'applied']);
3
4
  export const ChangesetSchema = z.object({
4
5
  changesetUuid: z.string().uuid(),
@@ -27,8 +28,22 @@ export const ChangeSchema = z
27
28
  payload: z.discriminatedUnion('type', [
28
29
  z.object({
29
30
  type: z.literal('metric'),
30
- // TODO: add metric schema
31
- value: z.unknown(),
31
+ value: z.object({
32
+ fieldType: z.literal(FieldType.METRIC),
33
+ type: z.nativeEnum(MetricType),
34
+ name: z.string(),
35
+ label: z.string(),
36
+ table: z.string(),
37
+ tableLabel: z.string(), // Table friendly name
38
+ sql: z.string(), // Templated sql
39
+ description: z.string().optional(),
40
+ hidden: z.boolean(),
41
+ compiledSql: z.string(),
42
+ tablesReferences: z.array(z.string()),
43
+ tablesRequiredAttributes: z
44
+ .record(z.string(), z.record(z.string(), z.string()))
45
+ .optional(),
46
+ }),
32
47
  }),
33
48
  ]),
34
49
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"changeset.js","sourceRoot":"","sources":["../../../src/types/changeset.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"changeset.js","sourceRoot":"","sources":["../../../src/types/changeset.ts"],"names":[],"mappings":"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"}