@columenlabs/lumen-ui 0.1.1 → 0.1.3

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 (70) hide show
  1. package/README.md +1 -1
  2. package/dist/assistant-panel.js +1 -1
  3. package/dist/coverage-calendar-map.js +1 -1
  4. package/dist/coverage-cells.d.ts +2 -2
  5. package/dist/coverage-map.js +4 -10
  6. package/dist/details-table.js +1 -5
  7. package/dist/form-issues.js +1 -1
  8. package/dist/frame-script.js +1 -1
  9. package/dist/growth-chart.d.ts +9 -9
  10. package/dist/joins.d.ts +4 -3
  11. package/dist/joins.js +1 -1
  12. package/dist/lumen-code.js +1 -5
  13. package/dist/lumen-drawer.js +1 -3
  14. package/dist/lumen-filter.js +5 -13
  15. package/dist/lumen-grid.js +2 -4
  16. package/dist/lumen-layout.js +7 -4
  17. package/dist/lumen-links.d.ts +1 -1
  18. package/dist/lumen-selector.js +1 -1
  19. package/dist/lumen-source.js +2 -4
  20. package/dist/lumen-tab-drawer.js +1 -1
  21. package/dist/lumen-toast.d.ts +4 -4
  22. package/dist/lumen-view-card.js +1 -1
  23. package/dist/lumen-view.js +2 -4
  24. package/dist/lumen-widget.d.ts +277 -171
  25. package/dist/lumen-widget.js +31 -20
  26. package/dist/market/indicator-picker.js +1 -1
  27. package/dist/market/live.d.ts +1 -1
  28. package/dist/market/lumen-chart.js +1 -1
  29. package/dist/market/price-chart.d.ts +10 -10
  30. package/dist/nav.js +1 -1
  31. package/dist/notifications.js +1 -3
  32. package/dist/overview.js +1 -1
  33. package/dist/page.js +1 -1
  34. package/dist/pager.js +1 -1
  35. package/dist/prefs.d.ts +25 -25
  36. package/dist/schedules.js +1 -1
  37. package/dist/settings.js +1 -3
  38. package/dist/shell.js +1 -1
  39. package/dist/sourced-card.d.ts +10 -0
  40. package/dist/sourced-card.js +69 -0
  41. package/dist/summary-cards.js +2 -6
  42. package/dist/symbol-sheet.js +1 -1
  43. package/dist/tasks.d.ts +1 -1
  44. package/dist/tasks.js +1 -1
  45. package/dist/tile.js +2 -4
  46. package/dist/ui/badge.d.ts +1 -1
  47. package/dist/ui/button.d.ts +2 -2
  48. package/dist/ui/chart.d.ts +2 -2
  49. package/dist/ui/chart.js +2 -5
  50. package/dist/ui/field.d.ts +1 -1
  51. package/dist/ui/input-group.d.ts +2 -2
  52. package/dist/ui/item.d.ts +3 -3
  53. package/dist/ui/sidebar.d.ts +1 -1
  54. package/dist/ui/sidebar.js +1 -1
  55. package/dist/ui/toggle.d.ts +1 -1
  56. package/dist/view-edit-cell.js +1 -4
  57. package/dist/view-editor.d.ts +1 -1
  58. package/dist/view-editor.js +188 -47
  59. package/dist/view-formulas.d.ts +1 -1
  60. package/dist/view-model.d.ts +15 -15
  61. package/dist/whats-new.js +1 -1
  62. package/dist/widget-data.d.ts +4 -0
  63. package/dist/widget-data.js +32 -0
  64. package/dist/widget-settings.d.ts +219 -139
  65. package/dist/widget-settings.js +4 -4
  66. package/dist/widget-thumbs.d.ts +1 -1
  67. package/dist/widget-thumbs.js +1 -1
  68. package/dist/workspace-keys.d.ts +1 -1
  69. package/dist/workspaces.js +1 -1
  70. package/package.json +5 -5
@@ -144,11 +144,13 @@ export declare function draftOf<T>(styleId: string, domain: ViewDomain<T>, cards
144
144
  * of $1 a domain that draws curves. */
145
145
  export declare function useOffered<T>(domain: ViewDomain<T>): (styleId: string) => boolean;
146
146
  /** Add widget: the domain's pre-built widgets, or a kind to build. */
147
- export declare function AddWidgetDialog<T>({ open, onOpenChange, domain, cards, onAdd, onBuild, }: {
147
+ export declare function AddWidgetDialog<T>({ open, onOpenChange, domain, cards, onAdd, onBuild, name, }: {
148
148
  open: boolean;
149
149
  onOpenChange: (o: boolean) => void;
150
150
  domain: ViewDomain<T>;
151
151
  cards: ViewCard[];
152
+ /** The page's name, for the data picker's "this page" row. */
153
+ name?: string;
152
154
  /** Adds a ready card (a pre-built widget, or the view's tiles or the view itself). */
153
155
  onAdd: (card: ViewCard) => void;
154
156
  /** Opens Edit widget on a new card of a kind. */
@@ -156,34 +158,57 @@ export declare function AddWidgetDialog<T>({ open, onOpenChange, domain, cards,
156
158
  }): import("react").JSX.Element;
157
159
  /** A page's cards after `action` on card `i`, or null for Edit (the caller opens a dialog). */
158
160
  export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAction): ({
159
- kind: "table";
160
- style: "table";
161
161
  id: string;
162
162
  title: string | null;
163
163
  w: number;
164
+ h?: number | undefined;
165
+ x?: number | undefined;
166
+ y?: number | undefined;
167
+ phone?: {
168
+ x: number;
169
+ y: number;
170
+ w: number;
171
+ h?: number | undefined;
172
+ } | undefined;
164
173
  filter: {
165
174
  key: string;
166
175
  value: string;
167
176
  not?: boolean | undefined;
168
- op?: "gt" | "lt" | "eq" | "between" | undefined;
169
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
177
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
178
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
170
179
  }[];
180
+ source?: string | undefined;
181
+ connections?: {
182
+ to: string;
183
+ on: {
184
+ from: string;
185
+ to: string;
186
+ }[];
187
+ }[] | undefined;
188
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
189
+ controls?: Partial<Record<"ask" | "columns" | "download" | "filter" | "footer" | "group" | "header" | "legend" | "pager" | "refresh" | "window", boolean>> | undefined;
190
+ kind: "table";
191
+ style: "table";
171
192
  table?: {
172
- shape: "table" | "group" | "pivot";
193
+ shape: "group" | "pivot" | "table";
173
194
  columns: string[];
195
+ hidden?: string[] | undefined;
174
196
  chips: {
175
197
  key: string;
176
- placement: "inline" | "column";
198
+ placement: "column" | "inline";
177
199
  }[];
200
+ formats?: Record<string, "compact" | "integer" | "number" | "percent" | "price" | "price_rounded" | "price_signed" | "rounded" | "signed" | "weight"> | undefined;
201
+ aggs?: Record<string, "count" | "distinct" | "first" | "last" | "max" | "mean" | "min" | "none" | "sum"> | undefined;
178
202
  group: {
179
203
  fields: string[];
180
204
  default: string | null;
181
205
  };
206
+ subgroup?: string | null | undefined;
182
207
  pivot: {
183
208
  rows: string;
184
209
  columns: string;
185
210
  value: string;
186
- agg: "max" | "min" | "first" | "last" | "sum" | "count" | "mean" | "distinct";
211
+ agg: "count" | "distinct" | "first" | "last" | "max" | "mean" | "min" | "sum";
187
212
  } | null;
188
213
  sort: {
189
214
  key: string;
@@ -191,14 +216,14 @@ export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAct
191
216
  } | null;
192
217
  pagination: {
193
218
  on: boolean;
194
- size: 100 | 50 | 25 | 250;
219
+ size: 25 | 50 | 100 | 250;
195
220
  };
196
- hidden?: string[] | undefined;
197
- formats?: Record<string, "number" | "weight" | "compact" | "rounded" | "price" | "price_rounded" | "price_signed" | "percent" | "signed" | "integer"> | undefined;
198
- aggs?: Record<string, "none" | "max" | "min" | "first" | "last" | "sum" | "count" | "mean" | "distinct"> | undefined;
199
- subgroup?: string | null | undefined;
200
- width?: "scroll" | "fit" | undefined;
221
+ width?: "fit" | "scroll" | undefined;
201
222
  } | undefined;
223
+ } | {
224
+ id: string;
225
+ title: string | null;
226
+ w: number;
202
227
  h?: number | undefined;
203
228
  x?: number | undefined;
204
229
  y?: number | undefined;
@@ -208,25 +233,32 @@ export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAct
208
233
  w: number;
209
234
  h?: number | undefined;
210
235
  } | undefined;
211
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
212
- controls?: Partial<Record<"footer" | "header" | "legend" | "filter" | "group" | "download" | "columns" | "ask" | "refresh" | "pager" | "window", boolean>> | undefined;
213
- } | {
236
+ filter: {
237
+ key: string;
238
+ value: string;
239
+ not?: boolean | undefined;
240
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
241
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
242
+ }[];
243
+ source?: string | undefined;
244
+ connections?: {
245
+ to: string;
246
+ on: {
247
+ from: string;
248
+ to: string;
249
+ }[];
250
+ }[] | undefined;
251
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
252
+ controls?: Partial<Record<"ask" | "columns" | "download" | "filter" | "footer" | "group" | "header" | "legend" | "pager" | "refresh" | "window", boolean>> | undefined;
214
253
  kind: "table";
215
254
  style: "top_n";
216
255
  sort: string;
217
256
  desc: boolean;
218
257
  n: number;
219
258
  columns: string[];
259
+ } | {
220
260
  id: string;
221
261
  title: string | null;
222
- w: number;
223
- filter: {
224
- key: string;
225
- value: string;
226
- not?: boolean | undefined;
227
- op?: "gt" | "lt" | "eq" | "between" | undefined;
228
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
229
- }[];
230
262
  h?: number | undefined;
231
263
  x?: number | undefined;
232
264
  y?: number | undefined;
@@ -236,9 +268,23 @@ export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAct
236
268
  w: number;
237
269
  h?: number | undefined;
238
270
  } | undefined;
239
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
240
- controls?: Partial<Record<"footer" | "header" | "legend" | "filter" | "group" | "download" | "columns" | "ask" | "refresh" | "pager" | "window", boolean>> | undefined;
241
- } | {
271
+ filter: {
272
+ key: string;
273
+ value: string;
274
+ not?: boolean | undefined;
275
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
276
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
277
+ }[];
278
+ source?: string | undefined;
279
+ connections?: {
280
+ to: string;
281
+ on: {
282
+ from: string;
283
+ to: string;
284
+ }[];
285
+ }[] | undefined;
286
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
287
+ controls?: Partial<Record<"ask" | "columns" | "download" | "filter" | "footer" | "group" | "header" | "legend" | "pager" | "refresh" | "window", boolean>> | undefined;
242
288
  kind: "metric";
243
289
  style: "number" | "progress_bar" | "progress_circle";
244
290
  w: number;
@@ -246,32 +292,32 @@ export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAct
246
292
  key: string;
247
293
  label: string;
248
294
  field: string;
249
- agg: "max" | "min" | "first" | "last" | "sum" | "count" | "mean" | "distinct";
295
+ agg: "count" | "distinct" | "first" | "last" | "max" | "mean" | "min" | "sum";
250
296
  filter: {
251
297
  key: string;
252
298
  value: string;
253
299
  not?: boolean | undefined;
254
- op?: "gt" | "lt" | "eq" | "between" | undefined;
255
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
300
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
301
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
256
302
  }[];
257
303
  sign: boolean;
258
304
  suffix: string;
259
305
  lines: ({
260
306
  kind: "value";
261
307
  field: string;
262
- agg: "max" | "min" | "first" | "last" | "sum" | "count" | "mean" | "distinct";
308
+ agg: "count" | "distinct" | "first" | "last" | "max" | "mean" | "min" | "sum";
263
309
  filter: {
264
310
  key: string;
265
311
  value: string;
266
312
  not?: boolean | undefined;
267
- op?: "gt" | "lt" | "eq" | "between" | undefined;
268
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
313
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
314
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
269
315
  }[];
270
316
  suffix: string;
271
317
  } | {
272
318
  kind: "pct";
273
319
  field: string;
274
- agg: "max" | "min" | "first" | "last" | "sum" | "count" | "mean" | "distinct";
320
+ agg: "count" | "distinct" | "first" | "last" | "max" | "mean" | "min" | "sum";
275
321
  } | {
276
322
  kind: "text";
277
323
  text: string;
@@ -279,21 +325,16 @@ export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAct
279
325
  } | {
280
326
  key: string;
281
327
  };
282
- id: string;
283
- title: string | null;
284
- filter: {
285
- key: string;
286
- value: string;
287
- not?: boolean | undefined;
288
- op?: "gt" | "lt" | "eq" | "between" | undefined;
289
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
290
- }[];
291
328
  target?: number | undefined;
292
329
  meter?: "health" | "usage" | undefined;
293
330
  bands?: {
294
331
  warn: number;
295
332
  bad: number;
296
333
  } | undefined;
334
+ } | {
335
+ id: string;
336
+ title: string | null;
337
+ w: number;
297
338
  h?: number | undefined;
298
339
  x?: number | undefined;
299
340
  y?: number | undefined;
@@ -303,51 +344,55 @@ export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAct
303
344
  w: number;
304
345
  h?: number | undefined;
305
346
  } | undefined;
306
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
307
- controls?: Partial<Record<"footer" | "header" | "legend" | "filter" | "group" | "download" | "columns" | "ask" | "refresh" | "pager" | "window", boolean>> | undefined;
308
- } | {
309
- kind: "metric";
310
- style: "row";
311
- id: string;
312
- title: string | null;
313
- w: number;
314
347
  filter: {
315
348
  key: string;
316
349
  value: string;
317
350
  not?: boolean | undefined;
318
- op?: "gt" | "lt" | "eq" | "between" | undefined;
319
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
351
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
352
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
320
353
  }[];
354
+ source?: string | undefined;
355
+ connections?: {
356
+ to: string;
357
+ on: {
358
+ from: string;
359
+ to: string;
360
+ }[];
361
+ }[] | undefined;
362
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
363
+ controls?: Partial<Record<"ask" | "columns" | "download" | "filter" | "footer" | "group" | "header" | "legend" | "pager" | "refresh" | "window", boolean>> | undefined;
364
+ kind: "metric";
365
+ style: "row";
321
366
  tiles?: ({
322
367
  key: string;
323
368
  label: string;
324
369
  field: string;
325
- agg: "max" | "min" | "first" | "last" | "sum" | "count" | "mean" | "distinct";
370
+ agg: "count" | "distinct" | "first" | "last" | "max" | "mean" | "min" | "sum";
326
371
  filter: {
327
372
  key: string;
328
373
  value: string;
329
374
  not?: boolean | undefined;
330
- op?: "gt" | "lt" | "eq" | "between" | undefined;
331
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
375
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
376
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
332
377
  }[];
333
378
  sign: boolean;
334
379
  suffix: string;
335
380
  lines: ({
336
381
  kind: "value";
337
382
  field: string;
338
- agg: "max" | "min" | "first" | "last" | "sum" | "count" | "mean" | "distinct";
383
+ agg: "count" | "distinct" | "first" | "last" | "max" | "mean" | "min" | "sum";
339
384
  filter: {
340
385
  key: string;
341
386
  value: string;
342
387
  not?: boolean | undefined;
343
- op?: "gt" | "lt" | "eq" | "between" | undefined;
344
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
388
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
389
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
345
390
  }[];
346
391
  suffix: string;
347
392
  } | {
348
393
  kind: "pct";
349
394
  field: string;
350
- agg: "max" | "min" | "first" | "last" | "sum" | "count" | "mean" | "distinct";
395
+ agg: "count" | "distinct" | "first" | "last" | "max" | "mean" | "min" | "sum";
351
396
  } | {
352
397
  kind: "text";
353
398
  text: string;
@@ -357,6 +402,9 @@ export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAct
357
402
  })[] | undefined;
358
403
  rank?: string | undefined;
359
404
  cash?: boolean | undefined;
405
+ } | {
406
+ id: string;
407
+ title: string | null;
360
408
  h?: number | undefined;
361
409
  x?: number | undefined;
362
410
  y?: number | undefined;
@@ -366,25 +414,34 @@ export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAct
366
414
  w: number;
367
415
  h?: number | undefined;
368
416
  } | undefined;
369
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
370
- controls?: Partial<Record<"footer" | "header" | "legend" | "filter" | "group" | "download" | "columns" | "ask" | "refresh" | "pager" | "window", boolean>> | undefined;
371
- } | {
417
+ filter: {
418
+ key: string;
419
+ value: string;
420
+ not?: boolean | undefined;
421
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
422
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
423
+ }[];
424
+ source?: string | undefined;
425
+ connections?: {
426
+ to: string;
427
+ on: {
428
+ from: string;
429
+ to: string;
430
+ }[];
431
+ }[] | undefined;
432
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
433
+ controls?: Partial<Record<"ask" | "columns" | "download" | "filter" | "footer" | "group" | "header" | "legend" | "pager" | "refresh" | "window", boolean>> | undefined;
372
434
  w: number;
373
435
  date: string;
374
436
  values: string[];
375
- bucket: "month" | "week" | "year" | "day";
376
- agg: "last" | "sum" | "count" | "mean";
437
+ bucket: "day" | "month" | "week" | "year";
438
+ agg: "count" | "last" | "mean" | "sum";
377
439
  kind: "metric";
378
440
  style: "spark" | "tracker";
441
+ } | {
379
442
  id: string;
380
443
  title: string | null;
381
- filter: {
382
- key: string;
383
- value: string;
384
- not?: boolean | undefined;
385
- op?: "gt" | "lt" | "eq" | "between" | undefined;
386
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
387
- }[];
444
+ w: number;
388
445
  h?: number | undefined;
389
446
  x?: number | undefined;
390
447
  y?: number | undefined;
@@ -394,24 +451,32 @@ export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAct
394
451
  w: number;
395
452
  h?: number | undefined;
396
453
  } | undefined;
397
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
398
- controls?: Partial<Record<"footer" | "header" | "legend" | "filter" | "group" | "download" | "columns" | "ask" | "refresh" | "pager" | "window", boolean>> | undefined;
399
- } | {
454
+ filter: {
455
+ key: string;
456
+ value: string;
457
+ not?: boolean | undefined;
458
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
459
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
460
+ }[];
461
+ source?: string | undefined;
462
+ connections?: {
463
+ to: string;
464
+ on: {
465
+ from: string;
466
+ to: string;
467
+ }[];
468
+ }[] | undefined;
469
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
470
+ controls?: Partial<Record<"ask" | "columns" | "download" | "filter" | "footer" | "group" | "header" | "legend" | "pager" | "refresh" | "window", boolean>> | undefined;
400
471
  kind: "allocation";
401
472
  style: "bar";
402
473
  by: string;
403
474
  value: string;
404
475
  max: number;
476
+ } | {
405
477
  id: string;
406
478
  title: string | null;
407
479
  w: number;
408
- filter: {
409
- key: string;
410
- value: string;
411
- not?: boolean | undefined;
412
- op?: "gt" | "lt" | "eq" | "between" | undefined;
413
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
414
- }[];
415
480
  h?: number | undefined;
416
481
  x?: number | undefined;
417
482
  y?: number | undefined;
@@ -421,24 +486,32 @@ export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAct
421
486
  w: number;
422
487
  h?: number | undefined;
423
488
  } | undefined;
424
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
425
- controls?: Partial<Record<"footer" | "header" | "legend" | "filter" | "group" | "download" | "columns" | "ask" | "refresh" | "pager" | "window", boolean>> | undefined;
426
- } | {
489
+ filter: {
490
+ key: string;
491
+ value: string;
492
+ not?: boolean | undefined;
493
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
494
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
495
+ }[];
496
+ source?: string | undefined;
497
+ connections?: {
498
+ to: string;
499
+ on: {
500
+ from: string;
501
+ to: string;
502
+ }[];
503
+ }[] | undefined;
504
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
505
+ controls?: Partial<Record<"ask" | "columns" | "download" | "filter" | "footer" | "group" | "header" | "legend" | "pager" | "refresh" | "window", boolean>> | undefined;
427
506
  kind: "allocation";
428
507
  style: "donut";
429
508
  by: string;
430
509
  value: string;
431
510
  max: number;
511
+ } | {
432
512
  id: string;
433
513
  title: string | null;
434
514
  w: number;
435
- filter: {
436
- key: string;
437
- value: string;
438
- not?: boolean | undefined;
439
- op?: "gt" | "lt" | "eq" | "between" | undefined;
440
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
441
- }[];
442
515
  h?: number | undefined;
443
516
  x?: number | undefined;
444
517
  y?: number | undefined;
@@ -448,27 +521,35 @@ export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAct
448
521
  w: number;
449
522
  h?: number | undefined;
450
523
  } | undefined;
451
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
452
- controls?: Partial<Record<"footer" | "header" | "legend" | "filter" | "group" | "download" | "columns" | "ask" | "refresh" | "pager" | "window", boolean>> | undefined;
453
- } | {
524
+ filter: {
525
+ key: string;
526
+ value: string;
527
+ not?: boolean | undefined;
528
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
529
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
530
+ }[];
531
+ source?: string | undefined;
532
+ connections?: {
533
+ to: string;
534
+ on: {
535
+ from: string;
536
+ to: string;
537
+ }[];
538
+ }[] | undefined;
539
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
540
+ controls?: Partial<Record<"ask" | "columns" | "download" | "filter" | "footer" | "group" | "header" | "legend" | "pager" | "refresh" | "window", boolean>> | undefined;
454
541
  kind: "allocation";
455
542
  style: "bar_list";
456
543
  by: string;
457
544
  value: string;
458
545
  signed: boolean;
546
+ stack?: string | undefined;
459
547
  desc: boolean;
460
548
  n: number;
549
+ } | {
461
550
  id: string;
462
551
  title: string | null;
463
552
  w: number;
464
- filter: {
465
- key: string;
466
- value: string;
467
- not?: boolean | undefined;
468
- op?: "gt" | "lt" | "eq" | "between" | undefined;
469
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
470
- }[];
471
- stack?: string | undefined;
472
553
  h?: number | undefined;
473
554
  x?: number | undefined;
474
555
  y?: number | undefined;
@@ -478,24 +559,32 @@ export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAct
478
559
  w: number;
479
560
  h?: number | undefined;
480
561
  } | undefined;
481
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
482
- controls?: Partial<Record<"footer" | "header" | "legend" | "filter" | "group" | "download" | "columns" | "ask" | "refresh" | "pager" | "window", boolean>> | undefined;
483
- } | {
562
+ filter: {
563
+ key: string;
564
+ value: string;
565
+ not?: boolean | undefined;
566
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
567
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
568
+ }[];
569
+ source?: string | undefined;
570
+ connections?: {
571
+ to: string;
572
+ on: {
573
+ from: string;
574
+ to: string;
575
+ }[];
576
+ }[] | undefined;
577
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
578
+ controls?: Partial<Record<"ask" | "columns" | "download" | "filter" | "footer" | "group" | "header" | "legend" | "pager" | "refresh" | "window", boolean>> | undefined;
484
579
  kind: "chart";
485
580
  style: "price";
486
581
  symbol: string;
487
- window: "1D" | "5D" | "1M" | "6M" | "YTD" | "1Y" | "5Y" | "Max";
488
- type: "line" | "candles";
582
+ window: "1D" | "1M" | "1Y" | "5D" | "5Y" | "6M" | "Max" | "YTD";
583
+ type: "candles" | "line";
584
+ } | {
489
585
  id: string;
490
586
  title: string | null;
491
587
  w: number;
492
- filter: {
493
- key: string;
494
- value: string;
495
- not?: boolean | undefined;
496
- op?: "gt" | "lt" | "eq" | "between" | undefined;
497
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
498
- }[];
499
588
  h?: number | undefined;
500
589
  x?: number | undefined;
501
590
  y?: number | undefined;
@@ -505,22 +594,30 @@ export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAct
505
594
  w: number;
506
595
  h?: number | undefined;
507
596
  } | undefined;
508
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
509
- controls?: Partial<Record<"footer" | "header" | "legend" | "filter" | "group" | "download" | "columns" | "ask" | "refresh" | "pager" | "window", boolean>> | undefined;
510
- } | {
511
- kind: "chart";
512
- style: "growth";
513
- scale: "log" | "linear";
514
- id: string;
515
- title: string | null;
516
- w: number;
517
597
  filter: {
518
598
  key: string;
519
599
  value: string;
520
600
  not?: boolean | undefined;
521
- op?: "gt" | "lt" | "eq" | "between" | undefined;
522
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
601
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
602
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
523
603
  }[];
604
+ source?: string | undefined;
605
+ connections?: {
606
+ to: string;
607
+ on: {
608
+ from: string;
609
+ to: string;
610
+ }[];
611
+ }[] | undefined;
612
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
613
+ controls?: Partial<Record<"ask" | "columns" | "download" | "filter" | "footer" | "group" | "header" | "legend" | "pager" | "refresh" | "window", boolean>> | undefined;
614
+ kind: "chart";
615
+ style: "growth";
616
+ scale: "linear" | "log";
617
+ } | {
618
+ id: string;
619
+ title: string | null;
620
+ w: number;
524
621
  h?: number | undefined;
525
622
  x?: number | undefined;
526
623
  y?: number | undefined;
@@ -530,23 +627,30 @@ export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAct
530
627
  w: number;
531
628
  h?: number | undefined;
532
629
  } | undefined;
533
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
534
- controls?: Partial<Record<"footer" | "header" | "legend" | "filter" | "group" | "download" | "columns" | "ask" | "refresh" | "pager" | "window", boolean>> | undefined;
535
- } | {
630
+ filter: {
631
+ key: string;
632
+ value: string;
633
+ not?: boolean | undefined;
634
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
635
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
636
+ }[];
637
+ source?: string | undefined;
638
+ connections?: {
639
+ to: string;
640
+ on: {
641
+ from: string;
642
+ to: string;
643
+ }[];
644
+ }[] | undefined;
645
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
646
+ controls?: Partial<Record<"ask" | "columns" | "download" | "filter" | "footer" | "group" | "header" | "legend" | "pager" | "refresh" | "window", boolean>> | undefined;
536
647
  kind: "chart";
537
648
  style: "market";
538
649
  symbols: string[];
539
650
  layout: "lines" | "tiles" | "today";
651
+ } | {
540
652
  id: string;
541
653
  title: string | null;
542
- w: number;
543
- filter: {
544
- key: string;
545
- value: string;
546
- not?: boolean | undefined;
547
- op?: "gt" | "lt" | "eq" | "between" | undefined;
548
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
549
- }[];
550
654
  h?: number | undefined;
551
655
  x?: number | undefined;
552
656
  y?: number | undefined;
@@ -556,25 +660,34 @@ export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAct
556
660
  w: number;
557
661
  h?: number | undefined;
558
662
  } | undefined;
559
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
560
- controls?: Partial<Record<"footer" | "header" | "legend" | "filter" | "group" | "download" | "columns" | "ask" | "refresh" | "pager" | "window", boolean>> | undefined;
561
- } | {
663
+ filter: {
664
+ key: string;
665
+ value: string;
666
+ not?: boolean | undefined;
667
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
668
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
669
+ }[];
670
+ source?: string | undefined;
671
+ connections?: {
672
+ to: string;
673
+ on: {
674
+ from: string;
675
+ to: string;
676
+ }[];
677
+ }[] | undefined;
678
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
679
+ controls?: Partial<Record<"ask" | "columns" | "download" | "filter" | "footer" | "group" | "header" | "legend" | "pager" | "refresh" | "window", boolean>> | undefined;
562
680
  w: number;
563
681
  date: string;
564
682
  values: string[];
565
- bucket: "month" | "week" | "year" | "day";
566
- agg: "last" | "sum" | "count" | "mean";
683
+ bucket: "day" | "month" | "week" | "year";
684
+ agg: "count" | "last" | "mean" | "sum";
567
685
  kind: "chart";
568
- style: "area" | "line" | "bars" | "stacked" | "combo";
686
+ style: "area" | "bars" | "combo" | "line" | "stacked";
687
+ } | {
569
688
  id: string;
570
689
  title: string | null;
571
- filter: {
572
- key: string;
573
- value: string;
574
- not?: boolean | undefined;
575
- op?: "gt" | "lt" | "eq" | "between" | undefined;
576
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
577
- }[];
690
+ w: number;
578
691
  h?: number | undefined;
579
692
  x?: number | undefined;
580
693
  y?: number | undefined;
@@ -584,31 +697,24 @@ export declare function cardsAfter(cards: ViewCard[], i: number, action: CardAct
584
697
  w: number;
585
698
  h?: number | undefined;
586
699
  } | undefined;
587
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
588
- controls?: Partial<Record<"footer" | "header" | "legend" | "filter" | "group" | "download" | "columns" | "ask" | "refresh" | "pager" | "window", boolean>> | undefined;
589
- } | {
590
- kind: "page";
591
- id: string;
592
- title: string | null;
593
- w: number;
594
700
  filter: {
595
701
  key: string;
596
702
  value: string;
597
703
  not?: boolean | undefined;
598
- op?: "gt" | "lt" | "eq" | "between" | undefined;
599
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
704
+ op?: "between" | "eq" | "gt" | "lt" | undefined;
705
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
600
706
  }[];
707
+ source?: string | undefined;
708
+ connections?: {
709
+ to: string;
710
+ on: {
711
+ from: string;
712
+ to: string;
713
+ }[];
714
+ }[] | undefined;
715
+ link?: "amber" | "blue" | "lime" | "pink" | "teal" | undefined;
716
+ controls?: Partial<Record<"ask" | "columns" | "download" | "filter" | "footer" | "group" | "header" | "legend" | "pager" | "refresh" | "window", boolean>> | undefined;
717
+ kind: "page";
601
718
  amount?: number | undefined;
602
- h?: number | undefined;
603
- x?: number | undefined;
604
- y?: number | undefined;
605
- phone?: {
606
- x: number;
607
- y: number;
608
- w: number;
609
- h?: number | undefined;
610
- } | undefined;
611
- link?: "blue" | "lime" | "pink" | "teal" | "amber" | undefined;
612
- controls?: Partial<Record<"footer" | "header" | "legend" | "filter" | "group" | "download" | "columns" | "ask" | "refresh" | "pager" | "window", boolean>> | undefined;
613
719
  })[] | null;
614
720
  export type { CustomViewConfig };