@malloy-publisher/sdk 0.0.219 → 0.0.221

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 (60) hide show
  1. package/dist/{ServerProvider-DaYKdCxq.es.js → ServerProvider-XsVzz-OD.es.js} +1426 -926
  2. package/dist/ServerProvider-j5Jof3CU.cjs.js +1 -0
  3. package/dist/client/api.d.ts +409 -13
  4. package/dist/client/index.cjs.js +1 -1
  5. package/dist/client/index.es.js +56 -54
  6. package/dist/components/Materializations/ManifestView.d.ts +1 -1
  7. package/dist/components/ServerProvider.d.ts +12 -0
  8. package/dist/components/highlighter.d.ts +6 -1
  9. package/dist/{core-BiGj7BML.es.js → core-D9Hl0IDY.es.js} +1 -1
  10. package/dist/{core-CnTkTGYk.cjs.js → core-Df0c84B0.cjs.js} +1 -1
  11. package/dist/github-dark-BKL9xNgN.cjs.js +1 -0
  12. package/dist/github-dark-DenFmJkN.es.js +4 -0
  13. package/dist/{index-BTfp6uRs.es.js → index-Br50Niyz.es.js} +13617 -13497
  14. package/dist/index-DmzHCafz.cjs.js +307 -0
  15. package/dist/index.cjs.js +1 -1
  16. package/dist/index.d.ts +1 -0
  17. package/dist/index.es.js +47 -38
  18. package/dist/theme/ThemeContext.d.ts +45 -0
  19. package/dist/theme/buildMalloyExplicitTheme.d.ts +34 -0
  20. package/dist/theme/buildTableCssVars.d.ts +25 -0
  21. package/dist/theme/buildVegaThemeOverride.d.ts +16 -0
  22. package/dist/theme/defaults.d.ts +7 -0
  23. package/dist/theme/index.d.ts +8 -0
  24. package/dist/theme/keys.d.ts +20 -0
  25. package/dist/theme/readChartAnnotations.d.ts +23 -0
  26. package/dist/theme/resolveTheme.d.ts +22 -0
  27. package/dist/theme/types.d.ts +61 -0
  28. package/package.json +7 -5
  29. package/src/components/AnalyzePackageButton.tsx +6 -3
  30. package/src/components/Environment/Packages.tsx +6 -3
  31. package/src/components/Home/AddEnvironmentDialog.tsx +1 -1
  32. package/src/components/Home/Home.tsx +6 -3
  33. package/src/components/Materializations/ManifestView.tsx +4 -4
  34. package/src/components/Materializations/MaterializationDetailDialog.tsx +2 -2
  35. package/src/components/Model/ModelCell.tsx +4 -2
  36. package/src/components/Notebook/NotebookCell.tsx +36 -18
  37. package/src/components/Package/Package.tsx +8 -3
  38. package/src/components/RenderedResult/RenderedResult.tsx +253 -31
  39. package/src/components/ServerProvider.tsx +142 -46
  40. package/src/components/Workbook/MutableCell.tsx +7 -5
  41. package/src/components/Workbook/Workbook.tsx +1 -1
  42. package/src/components/highlighter.ts +19 -5
  43. package/src/components/styles.ts +19 -18
  44. package/src/index.ts +1 -0
  45. package/src/theme/ThemeContext.tsx +83 -0
  46. package/src/theme/buildMalloyExplicitTheme.ts +58 -0
  47. package/src/theme/buildTableCssVars.spec.ts +64 -0
  48. package/src/theme/buildTableCssVars.ts +60 -0
  49. package/src/theme/buildVegaThemeOverride.spec.ts +53 -0
  50. package/src/theme/buildVegaThemeOverride.ts +44 -0
  51. package/src/theme/defaults.ts +75 -0
  52. package/src/theme/index.ts +8 -0
  53. package/src/theme/keys.ts +29 -0
  54. package/src/theme/readChartAnnotations.spec.ts +55 -0
  55. package/src/theme/readChartAnnotations.ts +66 -0
  56. package/src/theme/resolveTheme.spec.ts +144 -0
  57. package/src/theme/resolveTheme.ts +115 -0
  58. package/src/theme/types.ts +67 -0
  59. package/dist/ServerProvider-RXwIqb5f.cjs.js +0 -1
  60. package/dist/index-CQMDeQ_C.cjs.js +0 -235
@@ -194,13 +194,13 @@ export interface BuildGraph {
194
194
  */
195
195
  export interface BuildInstruction {
196
196
  /**
197
- * Identifies which planned source this instruction is for (matches PersistSourcePlan.buildId).
197
+ * Identifies which planned source this instruction is for (matches PersistSourcePlan.sourceEntityId).
198
198
  * @type {string}
199
199
  * @memberof BuildInstruction
200
200
  */
201
- 'buildId': string;
201
+ 'sourceEntityId': string;
202
202
  /**
203
- * Optional convenience echo of \"sourceName@modelURL\"; buildId is authoritative.
203
+ * Optional convenience echo of \"sourceName@modelURL\"; sourceEntityId is authoritative.
204
204
  * @type {string}
205
205
  * @memberof BuildInstruction
206
206
  */
@@ -212,7 +212,7 @@ export interface BuildInstruction {
212
212
  */
213
213
  'materializedTableId': string;
214
214
  /**
215
- * Logical, fully-qualified (but unquoted) table name to create — an optional dialect container path plus the table name, e.g. `mydataset.engaged_events_<buildId>_v0`. The publisher dialect-quotes each segment when it emits the DDL, so quote-requiring names (a hyphenated BigQuery project id, a container path) are valid, and echoes this logical name back in the manifest.
215
+ * Logical, fully-qualified (but unquoted) table name to create — an optional dialect container path plus the table name, e.g. `mydataset.engaged_events_<sourceEntityId>_v0`. The publisher dialect-quotes each segment when it emits the DDL, so quote-requiring names (a hyphenated BigQuery project id, a container path) are valid, and echoes this logical name back in the manifest.
216
216
  * @type {string}
217
217
  * @memberof BuildInstruction
218
218
  */
@@ -238,7 +238,7 @@ export interface BuildInstructions {
238
238
  'sources': Array<BuildInstruction>;
239
239
  }
240
240
  /**
241
- * Build output. Maps each buildId a build produced to its physical table. Returned inline; the caller persists it.
241
+ * Build output. Maps each sourceEntityId a build produced to its physical table. Returned inline; the caller persists it.
242
242
  * @export
243
243
  * @interface BuildManifest
244
244
  */
@@ -250,7 +250,7 @@ export interface BuildManifest {
250
250
  */
251
251
  'builtAt'?: string;
252
252
  /**
253
- * Map of buildId to manifest entry.
253
+ * Map of sourceEntityId to manifest entry.
254
254
  * @type {{ [key: string]: ManifestEntry; }}
255
255
  * @memberof BuildManifest
256
256
  */
@@ -521,6 +521,12 @@ export interface Connection {
521
521
  * @memberof Connection
522
522
  */
523
523
  'type'?: ConnectionTypeEnum;
524
+ /**
525
+ * Optional, opaque, stable fingerprint of this connection\'s data identity. It is a hash of the configuration that determines *which data* the connection reaches (its data-locating settings), and deliberately excludes credentials and other secret values, so it stays constant across credential rotation and changes only when the connection is pointed at different data. When present, it is used as this connection\'s contribution to content-addressed build identifiers so that builds re-address only when the underlying data identity actually changes; consumers should treat it as an opaque token and use the supplied value verbatim rather than deriving their own. This field is optional — when omitted, a connection identity is derived locally instead.
526
+ * @type {string}
527
+ * @memberof Connection
528
+ */
529
+ 'fingerprint'?: string;
524
530
  /**
525
531
  *
526
532
  * @type {ConnectionAttributes}
@@ -724,7 +730,7 @@ export interface CreateMaterializationRequest {
724
730
  */
725
731
  'buildInstructions'?: BuildInstructions | null;
726
732
  /**
727
- * Build a new table even when a source\'s buildId is unchanged.
733
+ * Build a new table even when a source\'s sourceEntityId is unchanged.
728
734
  * @type {boolean}
729
735
  * @memberof CreateMaterializationRequest
730
736
  */
@@ -939,6 +945,12 @@ export interface Environment {
939
945
  * @memberof Environment
940
946
  */
941
947
  'packages'?: Array<Package>;
948
+ /**
949
+ * Reserved for a per-environment theme override. Not yet populated by the server or applied by the client; viewers currently use the instance-level theme only.
950
+ * @type {Theme}
951
+ * @memberof Environment
952
+ */
953
+ 'theme'?: Theme;
942
954
  }
943
955
  /**
944
956
  * **DEPRECATED**: Use the `Given` schema (native Malloy runtime parameters) instead. See docs/givens.md for migration recipes. A filter declared via #(filter) annotation on a Malloy source.
@@ -991,6 +1003,31 @@ export declare const FilterTypeEnum: {
991
1003
  readonly LessThan: "less_than";
992
1004
  };
993
1005
  export type FilterTypeEnum = typeof FilterTypeEnum[keyof typeof FilterTypeEnum];
1006
+ /**
1007
+ * Freshness policy declared in malloy-publisher.json\'s `materialization.freshness` block. Fields are surfaced verbatim; invalid values are dropped (reported as absent), never defaulted.
1008
+ * @export
1009
+ * @interface Freshness
1010
+ */
1011
+ export interface Freshness {
1012
+ /**
1013
+ * Maximum acceptable staleness of the package\'s materialized sources, as a duration string (e.g. \"24h\"). The control plane schedules refreshes to meet it.
1014
+ * @type {string}
1015
+ * @memberof Freshness
1016
+ */
1017
+ 'window'?: string;
1018
+ /**
1019
+ * Declared query-time behavior when the freshness window is missed: serve live, serve the stale table, or fail the query.
1020
+ * @type {string}
1021
+ * @memberof Freshness
1022
+ */
1023
+ 'fallback'?: FreshnessFallbackEnum;
1024
+ }
1025
+ export declare const FreshnessFallbackEnum: {
1026
+ readonly Live: "live";
1027
+ readonly StaleOk: "stale_ok";
1028
+ readonly Fail: "fail";
1029
+ };
1030
+ export type FreshnessFallbackEnum = typeof FreshnessFallbackEnum[keyof typeof FreshnessFallbackEnum];
994
1031
  /**
995
1032
  * Google Cloud Storage connection configuration for DuckDB
996
1033
  * @export
@@ -1128,7 +1165,7 @@ export interface ManifestEntry {
1128
1165
  * @type {string}
1129
1166
  * @memberof ManifestEntry
1130
1167
  */
1131
- 'buildId': string;
1168
+ 'sourceEntityId': string;
1132
1169
  /**
1133
1170
  *
1134
1171
  * @type {string}
@@ -1516,7 +1553,7 @@ export interface Package {
1516
1553
  */
1517
1554
  'queryableSources'?: PackageQueryableSourcesEnum;
1518
1555
  /**
1519
- * URI (gs:// or s3://) of the externally-computed manifest for this package. On (re)load the publisher reads it and binds persist references (buildId -> physicalTableName). Null = serve live.
1556
+ * URI (gs:// or s3://) of the externally-computed manifest for this package. On (re)load the publisher reads it and binds persist references (sourceEntityId -> physicalTableName). Null = serve live.
1520
1557
  * @type {string}
1521
1558
  * @memberof Package
1522
1559
  */
@@ -1534,7 +1571,7 @@ export interface Package {
1534
1571
  */
1535
1572
  'manifestBindingStatus'?: PackageManifestBindingStatusEnum;
1536
1573
  /**
1537
- * Server-computed, read-only: number of buildId -> physical-table entries currently bound (0 when unbound or on live fallback).
1574
+ * Server-computed, read-only: number of sourceEntityId -> physical-table entries currently bound (0 when unbound or on live fallback).
1538
1575
  * @type {number}
1539
1576
  * @memberof Package
1540
1577
  */
@@ -1570,11 +1607,17 @@ export type PackageManifestBindingStatusEnum = typeof PackageManifestBindingStat
1570
1607
  */
1571
1608
  export interface PackageMaterializationConfig {
1572
1609
  /**
1573
- * 5-field UNIX cron controlling how often the control plane re-materializes this package\'s published versions. Null = no scheduled re-materialization declared in the manifest (publish / on-demand only).
1610
+ * 5-field UNIX cron controlling how often the control plane re-materializes this package\'s published versions. Null = no scheduled re-materialization declared in the manifest (publish / on-demand only). A cron is the power tier of artifact-anchored scheduling: it is valid only when every persist source in the package resolves to an explicit `sharing=private`; a cron on a package with any shared/unset persist source is rejected at publish (declare `materialization.freshness.window` instead).
1574
1611
  * @type {string}
1575
1612
  * @memberof PackageMaterializationConfig
1576
1613
  */
1577
1614
  'schedule'?: string | null;
1615
+ /**
1616
+ *
1617
+ * @type {Freshness}
1618
+ * @memberof PackageMaterializationConfig
1619
+ */
1620
+ 'freshness'?: Freshness | null;
1578
1621
  }
1579
1622
  /**
1580
1623
  *
@@ -1684,17 +1727,29 @@ export interface PersistSourcePlan {
1684
1727
  */
1685
1728
  'dialect'?: string;
1686
1729
  /**
1687
- * hash(connectionDigest + canonical logical SQL).
1730
+ * Stable, content-addressed identity of this persisted source. A deterministic UUID5 derived from the source\'s scope, its connection `fingerprint`, and its canonical compiled SQL — deliberately independent of package version, so it changes only when the source\'s data identity changes. Consumers treat it as an opaque token and use the supplied value verbatim.
1688
1731
  * @type {string}
1689
1732
  * @memberof PersistSourcePlan
1690
1733
  */
1691
- 'buildId': string;
1734
+ 'sourceEntityId': string;
1692
1735
  /**
1693
1736
  * The source\'s build SQL (with the build manifest applied for upstream rewrites).
1694
1737
  * @type {string}
1695
1738
  * @memberof PersistSourcePlan
1696
1739
  */
1697
1740
  'sql': string;
1741
+ /**
1742
+ * The source\'s declared `#@ persist ... sharing=...` value (\"private\" | \"shared\"), reported verbatim. Null = unset — the publisher never substitutes the platform default, so the control plane can distinguish unset from an explicit `shared` and apply the default (unset => shared) itself. The publisher reports the most-specific declaration (the source\'s own persist annotation).
1743
+ * @type {string}
1744
+ * @memberof PersistSourcePlan
1745
+ */
1746
+ 'sharing'?: string | null;
1747
+ /**
1748
+ * The source\'s declared `#@ persist ... refresh=...` value (\"full\" | \"incremental\"), reported verbatim; null = unset. Metadata pass-through — inert to the publisher today.
1749
+ * @type {string}
1750
+ * @memberof PersistSourcePlan
1751
+ */
1752
+ 'refresh'?: string | null;
1698
1753
  /**
1699
1754
  * Output schema of the source.
1700
1755
  * @type {Array<Column>}
@@ -2115,6 +2170,12 @@ export interface ServerStatus {
2115
2170
  * @memberof ServerStatus
2116
2171
  */
2117
2172
  'frozenConfig'?: boolean;
2173
+ /**
2174
+ * Instance-wide default theme for the Malloy renderer and the Publisher app shell.
2175
+ * @type {Theme}
2176
+ * @memberof ServerStatus
2177
+ */
2178
+ 'theme'?: Theme;
2118
2179
  }
2119
2180
  export declare const ServerStatusOperationalStateEnum: {
2120
2181
  readonly Initializing: "initializing";
@@ -2377,6 +2438,250 @@ export interface TemporaryTable {
2377
2438
  */
2378
2439
  'table'?: string;
2379
2440
  }
2441
+ /**
2442
+ * Visual theme applied to Malloy renderer output (chart palette, fonts, table chrome) and to the Publisher app shell. Cascade order is instance → per-chart Malloy annotation, with later layers overriding earlier ones for the keys they set. (A per-environment layer is reserved but not yet applied by the client.)
2443
+ * @export
2444
+ * @interface Theme
2445
+ */
2446
+ export interface Theme {
2447
+ /**
2448
+ * Initial color mode for new viewers. \"auto\" follows the browser\'s prefers-color-scheme until the viewer overrides.
2449
+ * @type {string}
2450
+ * @memberof Theme
2451
+ */
2452
+ 'defaultMode'?: ThemeDefaultModeEnum;
2453
+ /**
2454
+ * When true, the Publisher app renders a light/dark toggle and persists the viewer\'s choice to localStorage. When false, the defaultMode is enforced.
2455
+ * @type {boolean}
2456
+ * @memberof Theme
2457
+ */
2458
+ 'allowUserToggle'?: boolean;
2459
+ /**
2460
+ *
2461
+ * @type {ThemePalette}
2462
+ * @memberof Theme
2463
+ */
2464
+ 'palette'?: ThemePalette;
2465
+ /**
2466
+ *
2467
+ * @type {ThemeFont}
2468
+ * @memberof Theme
2469
+ */
2470
+ 'font'?: ThemeFont;
2471
+ }
2472
+ export declare const ThemeDefaultModeEnum: {
2473
+ readonly Light: "light";
2474
+ readonly Dark: "dark";
2475
+ readonly Auto: "auto";
2476
+ };
2477
+ export type ThemeDefaultModeEnum = typeof ThemeDefaultModeEnum[keyof typeof ThemeDefaultModeEnum];
2478
+ /**
2479
+ * Typography overrides applied to both the app shell and the Malloy renderer (Vega text marks). Shared across light and dark modes because font choice is a brand decision, not a mode-specific one.
2480
+ * @export
2481
+ * @interface ThemeFont
2482
+ */
2483
+ export interface ThemeFont {
2484
+ /**
2485
+ * CSS font-family stack.
2486
+ * @type {string}
2487
+ * @memberof ThemeFont
2488
+ */
2489
+ 'family'?: string;
2490
+ /**
2491
+ * Base font size in pixels for renderer text.
2492
+ * @type {number}
2493
+ * @memberof ThemeFont
2494
+ */
2495
+ 'size'?: number;
2496
+ }
2497
+ /**
2498
+ * Color tokens consumed by the Malloy renderer and the app shell.
2499
+ * @export
2500
+ * @interface ThemePalette
2501
+ */
2502
+ export interface ThemePalette {
2503
+ /**
2504
+ * Ordered list of hex colors used by multi-series charts (passed to Vega\'s `range.category`). Shared across light and dark modes so the brand palette stays consistent when viewers switch modes.
2505
+ * @type {Array<string>}
2506
+ * @memberof ThemePalette
2507
+ */
2508
+ 'series'?: Array<string>;
2509
+ /**
2510
+ *
2511
+ * @type {ThemePaletteBackground}
2512
+ * @memberof ThemePalette
2513
+ */
2514
+ 'background'?: ThemePaletteBackground;
2515
+ /**
2516
+ *
2517
+ * @type {ThemePaletteTableHeader}
2518
+ * @memberof ThemePalette
2519
+ */
2520
+ 'tableHeader'?: ThemePaletteTableHeader;
2521
+ /**
2522
+ *
2523
+ * @type {ThemePaletteTableHeaderBackground}
2524
+ * @memberof ThemePalette
2525
+ */
2526
+ 'tableHeaderBackground'?: ThemePaletteTableHeaderBackground;
2527
+ /**
2528
+ *
2529
+ * @type {ThemePaletteTableBody}
2530
+ * @memberof ThemePalette
2531
+ */
2532
+ 'tableBody'?: ThemePaletteTableBody;
2533
+ /**
2534
+ *
2535
+ * @type {ThemePaletteTile}
2536
+ * @memberof ThemePalette
2537
+ */
2538
+ 'tile'?: ThemePaletteTile;
2539
+ /**
2540
+ *
2541
+ * @type {ThemePaletteTileTitle}
2542
+ * @memberof ThemePalette
2543
+ */
2544
+ 'tileTitle'?: ThemePaletteTileTitle;
2545
+ /**
2546
+ *
2547
+ * @type {ThemePaletteMapColor}
2548
+ * @memberof ThemePalette
2549
+ */
2550
+ 'mapColor'?: ThemePaletteMapColor;
2551
+ }
2552
+ /**
2553
+ * Page and chart background per mode.
2554
+ * @export
2555
+ * @interface ThemePaletteBackground
2556
+ */
2557
+ export interface ThemePaletteBackground {
2558
+ /**
2559
+ *
2560
+ * @type {string}
2561
+ * @memberof ThemePaletteBackground
2562
+ */
2563
+ 'light'?: string;
2564
+ /**
2565
+ *
2566
+ * @type {string}
2567
+ * @memberof ThemePaletteBackground
2568
+ */
2569
+ 'dark'?: string;
2570
+ }
2571
+ /**
2572
+ * Saturated end of the gradient used by choropleth maps and other sequential color scales. The renderer pairs it with a near-neutral low end so the operator only picks the brand-saturated colour.
2573
+ * @export
2574
+ * @interface ThemePaletteMapColor
2575
+ */
2576
+ export interface ThemePaletteMapColor {
2577
+ /**
2578
+ *
2579
+ * @type {string}
2580
+ * @memberof ThemePaletteMapColor
2581
+ */
2582
+ 'light'?: string;
2583
+ /**
2584
+ *
2585
+ * @type {string}
2586
+ * @memberof ThemePaletteMapColor
2587
+ */
2588
+ 'dark'?: string;
2589
+ }
2590
+ /**
2591
+ * Foreground color for table body cells per mode.
2592
+ * @export
2593
+ * @interface ThemePaletteTableBody
2594
+ */
2595
+ export interface ThemePaletteTableBody {
2596
+ /**
2597
+ *
2598
+ * @type {string}
2599
+ * @memberof ThemePaletteTableBody
2600
+ */
2601
+ 'light'?: string;
2602
+ /**
2603
+ *
2604
+ * @type {string}
2605
+ * @memberof ThemePaletteTableBody
2606
+ */
2607
+ 'dark'?: string;
2608
+ }
2609
+ /**
2610
+ * Foreground color for the table header per mode.
2611
+ * @export
2612
+ * @interface ThemePaletteTableHeader
2613
+ */
2614
+ export interface ThemePaletteTableHeader {
2615
+ /**
2616
+ *
2617
+ * @type {string}
2618
+ * @memberof ThemePaletteTableHeader
2619
+ */
2620
+ 'light'?: string;
2621
+ /**
2622
+ *
2623
+ * @type {string}
2624
+ * @memberof ThemePaletteTableHeader
2625
+ */
2626
+ 'dark'?: string;
2627
+ }
2628
+ /**
2629
+ * Background color for the table header row, per mode. Distinct from `tile` (the dashboard tile container that wraps each chart / table) so operators can theme the header band independently from the padding around the table.
2630
+ * @export
2631
+ * @interface ThemePaletteTableHeaderBackground
2632
+ */
2633
+ export interface ThemePaletteTableHeaderBackground {
2634
+ /**
2635
+ *
2636
+ * @type {string}
2637
+ * @memberof ThemePaletteTableHeaderBackground
2638
+ */
2639
+ 'light'?: string;
2640
+ /**
2641
+ *
2642
+ * @type {string}
2643
+ * @memberof ThemePaletteTableHeaderBackground
2644
+ */
2645
+ 'dark'?: string;
2646
+ }
2647
+ /**
2648
+ * Background color of the dashboard tile (the padded container that wraps each chart / table) per mode.
2649
+ * @export
2650
+ * @interface ThemePaletteTile
2651
+ */
2652
+ export interface ThemePaletteTile {
2653
+ /**
2654
+ *
2655
+ * @type {string}
2656
+ * @memberof ThemePaletteTile
2657
+ */
2658
+ 'light'?: string;
2659
+ /**
2660
+ *
2661
+ * @type {string}
2662
+ * @memberof ThemePaletteTile
2663
+ */
2664
+ 'dark'?: string;
2665
+ }
2666
+ /**
2667
+ * Foreground color for the title text that sits in the dashboard tile padding (e.g. the \"by_month\" label above a chart) per mode.
2668
+ * @export
2669
+ * @interface ThemePaletteTileTitle
2670
+ */
2671
+ export interface ThemePaletteTileTitle {
2672
+ /**
2673
+ *
2674
+ * @type {string}
2675
+ * @memberof ThemePaletteTileTitle
2676
+ */
2677
+ 'light'?: string;
2678
+ /**
2679
+ *
2680
+ * @type {string}
2681
+ * @memberof ThemePaletteTileTitle
2682
+ */
2683
+ 'dark'?: string;
2684
+ }
2380
2685
  /**
2381
2686
  * Trino database connection configuration
2382
2687
  * @export
@@ -4517,6 +4822,13 @@ export declare class PagesApi extends BaseAPI {
4517
4822
  * @export
4518
4823
  */
4519
4824
  export declare const PublisherApiAxiosParamCreator: (configuration?: Configuration) => {
4825
+ /**
4826
+ * Drops the saved theme from the server. The next GET returns either the publisher.config.json boot seed (if present) or an empty object. Rejected with 403 when publisher.config.json has frozenConfig=true.
4827
+ * @summary Reset the instance theme to the boot seed or default
4828
+ * @param {*} [options] Override http request option.
4829
+ * @throws {RequiredError}
4830
+ */
4831
+ deleteTheme: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
4520
4832
  /**
4521
4833
  * Returns the current status of the Malloy Publisher server, including initialization state, available environments, and server timestamp. This endpoint is useful for health checks and monitoring server availability.
4522
4834
  * @summary Get server status and health information
@@ -4524,12 +4836,34 @@ export declare const PublisherApiAxiosParamCreator: (configuration?: Configurati
4524
4836
  * @throws {RequiredError}
4525
4837
  */
4526
4838
  getStatus: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
4839
+ /**
4840
+ * Returns the theme used by the Malloy renderer for charts/tables/dashboards. Reflects edits made via the in-app Theme Editor (persisted to the server\'s internal DuckDB metadata store via the shared StorageManager). Empty object when no theme has been configured.
4841
+ * @summary Get the active instance theme
4842
+ * @param {*} [options] Override http request option.
4843
+ * @throws {RequiredError}
4844
+ */
4845
+ getTheme: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
4846
+ /**
4847
+ * Persists the supplied theme as the new instance theme. Returns the saved theme. Rejected with 403 when publisher.config.json has frozenConfig=true.
4848
+ * @summary Save the instance theme
4849
+ * @param {Theme} theme
4850
+ * @param {*} [options] Override http request option.
4851
+ * @throws {RequiredError}
4852
+ */
4853
+ updateTheme: (theme: Theme, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
4527
4854
  };
4528
4855
  /**
4529
4856
  * PublisherApi - functional programming interface
4530
4857
  * @export
4531
4858
  */
4532
4859
  export declare const PublisherApiFp: (configuration?: Configuration) => {
4860
+ /**
4861
+ * Drops the saved theme from the server. The next GET returns either the publisher.config.json boot seed (if present) or an empty object. Rejected with 403 when publisher.config.json has frozenConfig=true.
4862
+ * @summary Reset the instance theme to the boot seed or default
4863
+ * @param {*} [options] Override http request option.
4864
+ * @throws {RequiredError}
4865
+ */
4866
+ deleteTheme(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Theme>>;
4533
4867
  /**
4534
4868
  * Returns the current status of the Malloy Publisher server, including initialization state, available environments, and server timestamp. This endpoint is useful for health checks and monitoring server availability.
4535
4869
  * @summary Get server status and health information
@@ -4537,12 +4871,34 @@ export declare const PublisherApiFp: (configuration?: Configuration) => {
4537
4871
  * @throws {RequiredError}
4538
4872
  */
4539
4873
  getStatus(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ServerStatus>>;
4874
+ /**
4875
+ * Returns the theme used by the Malloy renderer for charts/tables/dashboards. Reflects edits made via the in-app Theme Editor (persisted to the server\'s internal DuckDB metadata store via the shared StorageManager). Empty object when no theme has been configured.
4876
+ * @summary Get the active instance theme
4877
+ * @param {*} [options] Override http request option.
4878
+ * @throws {RequiredError}
4879
+ */
4880
+ getTheme(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Theme>>;
4881
+ /**
4882
+ * Persists the supplied theme as the new instance theme. Returns the saved theme. Rejected with 403 when publisher.config.json has frozenConfig=true.
4883
+ * @summary Save the instance theme
4884
+ * @param {Theme} theme
4885
+ * @param {*} [options] Override http request option.
4886
+ * @throws {RequiredError}
4887
+ */
4888
+ updateTheme(theme: Theme, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Theme>>;
4540
4889
  };
4541
4890
  /**
4542
4891
  * PublisherApi - factory interface
4543
4892
  * @export
4544
4893
  */
4545
4894
  export declare const PublisherApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
4895
+ /**
4896
+ * Drops the saved theme from the server. The next GET returns either the publisher.config.json boot seed (if present) or an empty object. Rejected with 403 when publisher.config.json has frozenConfig=true.
4897
+ * @summary Reset the instance theme to the boot seed or default
4898
+ * @param {*} [options] Override http request option.
4899
+ * @throws {RequiredError}
4900
+ */
4901
+ deleteTheme(options?: RawAxiosRequestConfig): AxiosPromise<Theme>;
4546
4902
  /**
4547
4903
  * Returns the current status of the Malloy Publisher server, including initialization state, available environments, and server timestamp. This endpoint is useful for health checks and monitoring server availability.
4548
4904
  * @summary Get server status and health information
@@ -4550,6 +4906,21 @@ export declare const PublisherApiFactory: (configuration?: Configuration, basePa
4550
4906
  * @throws {RequiredError}
4551
4907
  */
4552
4908
  getStatus(options?: RawAxiosRequestConfig): AxiosPromise<ServerStatus>;
4909
+ /**
4910
+ * Returns the theme used by the Malloy renderer for charts/tables/dashboards. Reflects edits made via the in-app Theme Editor (persisted to the server\'s internal DuckDB metadata store via the shared StorageManager). Empty object when no theme has been configured.
4911
+ * @summary Get the active instance theme
4912
+ * @param {*} [options] Override http request option.
4913
+ * @throws {RequiredError}
4914
+ */
4915
+ getTheme(options?: RawAxiosRequestConfig): AxiosPromise<Theme>;
4916
+ /**
4917
+ * Persists the supplied theme as the new instance theme. Returns the saved theme. Rejected with 403 when publisher.config.json has frozenConfig=true.
4918
+ * @summary Save the instance theme
4919
+ * @param {Theme} theme
4920
+ * @param {*} [options] Override http request option.
4921
+ * @throws {RequiredError}
4922
+ */
4923
+ updateTheme(theme: Theme, options?: RawAxiosRequestConfig): AxiosPromise<Theme>;
4553
4924
  };
4554
4925
  /**
4555
4926
  * PublisherApi - object-oriented interface
@@ -4558,6 +4929,14 @@ export declare const PublisherApiFactory: (configuration?: Configuration, basePa
4558
4929
  * @extends {BaseAPI}
4559
4930
  */
4560
4931
  export declare class PublisherApi extends BaseAPI {
4932
+ /**
4933
+ * Drops the saved theme from the server. The next GET returns either the publisher.config.json boot seed (if present) or an empty object. Rejected with 403 when publisher.config.json has frozenConfig=true.
4934
+ * @summary Reset the instance theme to the boot seed or default
4935
+ * @param {*} [options] Override http request option.
4936
+ * @throws {RequiredError}
4937
+ * @memberof PublisherApi
4938
+ */
4939
+ deleteTheme(options?: RawAxiosRequestConfig): Promise< AxiosResponse<Theme, any, {}>>;
4561
4940
  /**
4562
4941
  * Returns the current status of the Malloy Publisher server, including initialization state, available environments, and server timestamp. This endpoint is useful for health checks and monitoring server availability.
4563
4942
  * @summary Get server status and health information
@@ -4566,6 +4945,23 @@ export declare class PublisherApi extends BaseAPI {
4566
4945
  * @memberof PublisherApi
4567
4946
  */
4568
4947
  getStatus(options?: RawAxiosRequestConfig): Promise< AxiosResponse<ServerStatus, any, {}>>;
4948
+ /**
4949
+ * Returns the theme used by the Malloy renderer for charts/tables/dashboards. Reflects edits made via the in-app Theme Editor (persisted to the server\'s internal DuckDB metadata store via the shared StorageManager). Empty object when no theme has been configured.
4950
+ * @summary Get the active instance theme
4951
+ * @param {*} [options] Override http request option.
4952
+ * @throws {RequiredError}
4953
+ * @memberof PublisherApi
4954
+ */
4955
+ getTheme(options?: RawAxiosRequestConfig): Promise< AxiosResponse<Theme, any, {}>>;
4956
+ /**
4957
+ * Persists the supplied theme as the new instance theme. Returns the saved theme. Rejected with 403 when publisher.config.json has frozenConfig=true.
4958
+ * @summary Save the instance theme
4959
+ * @param {Theme} theme
4960
+ * @param {*} [options] Override http request option.
4961
+ * @throws {RequiredError}
4962
+ * @memberof PublisherApi
4963
+ */
4964
+ updateTheme(theme: Theme, options?: RawAxiosRequestConfig): Promise< AxiosResponse<Theme, any, {}>>;
4569
4965
  }
4570
4966
  /**
4571
4967
  * WatchModeApi - axios parameter creator
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../ServerProvider-RXwIqb5f.cjs.js");exports.AttachedDatabaseTypeEnum=e.AttachedDatabaseTypeEnum;exports.AzureConnectionAuthTypeEnum=e.AzureConnectionAuthTypeEnum;exports.CompileProblemSeverityEnum=e.CompileProblemSeverityEnum;exports.CompileResultStatusEnum=e.CompileResultStatusEnum;exports.Configuration=e.Configuration;exports.ConnectionProxyTypeEnum=e.ConnectionProxyTypeEnum;exports.ConnectionStatusStatusEnum=e.ConnectionStatusStatusEnum;exports.ConnectionTypeEnum=e.ConnectionTypeEnum;exports.ConnectionsApi=e.ConnectionsApi;exports.ConnectionsApiAxiosParamCreator=e.ConnectionsApiAxiosParamCreator;exports.ConnectionsApiFactory=e.ConnectionsApiFactory;exports.ConnectionsApiFp=e.ConnectionsApiFp;exports.ConnectionsTestApi=e.ConnectionsTestApi;exports.ConnectionsTestApiAxiosParamCreator=e.ConnectionsTestApiAxiosParamCreator;exports.ConnectionsTestApiFactory=e.ConnectionsTestApiFactory;exports.ConnectionsTestApiFp=e.ConnectionsTestApiFp;exports.DatabaseTypeEnum=e.DatabaseTypeEnum;exports.DatabasesApi=e.DatabasesApi;exports.DatabasesApiAxiosParamCreator=e.DatabasesApiAxiosParamCreator;exports.DatabasesApiFactory=e.DatabasesApiFactory;exports.DatabasesApiFp=e.DatabasesApiFp;exports.EnvironmentsApi=e.EnvironmentsApi;exports.EnvironmentsApiAxiosParamCreator=e.EnvironmentsApiAxiosParamCreator;exports.EnvironmentsApiFactory=e.EnvironmentsApiFactory;exports.EnvironmentsApiFp=e.EnvironmentsApiFp;exports.ExecuteNotebookCellBypassFiltersEnum=e.ExecuteNotebookCellBypassFiltersEnum;exports.FilterTypeEnum=e.FilterTypeEnum;exports.LogMessageSeverityEnum=e.LogMessageSeverityEnum;exports.MaterializationActionActionEnum=e.MaterializationActionActionEnum;exports.MaterializationStatus=e.MaterializationStatus;exports.MaterializationsApi=e.MaterializationsApi;exports.MaterializationsApiAxiosParamCreator=e.MaterializationsApiAxiosParamCreator;exports.MaterializationsApiFactory=e.MaterializationsApiFactory;exports.MaterializationsApiFp=e.MaterializationsApiFp;exports.ModelsApi=e.ModelsApi;exports.ModelsApiAxiosParamCreator=e.ModelsApiAxiosParamCreator;exports.ModelsApiFactory=e.ModelsApiFactory;exports.ModelsApiFp=e.ModelsApiFp;exports.NotebookCellResultTypeEnum=e.NotebookCellResultTypeEnum;exports.NotebookCellTypeEnum=e.NotebookCellTypeEnum;exports.NotebooksApi=e.NotebooksApi;exports.NotebooksApiAxiosParamCreator=e.NotebooksApiAxiosParamCreator;exports.NotebooksApiFactory=e.NotebooksApiFactory;exports.NotebooksApiFp=e.NotebooksApiFp;exports.PackageManifestBindingStatusEnum=e.PackageManifestBindingStatusEnum;exports.PackageQueryableSourcesEnum=e.PackageQueryableSourcesEnum;exports.PackageWarningsInnerSeverityEnum=e.PackageWarningsInnerSeverityEnum;exports.PackagesApi=e.PackagesApi;exports.PackagesApiAxiosParamCreator=e.PackagesApiAxiosParamCreator;exports.PackagesApiFactory=e.PackagesApiFactory;exports.PackagesApiFp=e.PackagesApiFp;exports.PageFitEnum=e.PageFitEnum;exports.PagesApi=e.PagesApi;exports.PagesApiAxiosParamCreator=e.PagesApiAxiosParamCreator;exports.PagesApiFactory=e.PagesApiFactory;exports.PagesApiFp=e.PagesApiFp;exports.PostgresConnectionSslmodeEnum=e.PostgresConnectionSslmodeEnum;exports.PublisherApi=e.PublisherApi;exports.PublisherApiAxiosParamCreator=e.PublisherApiAxiosParamCreator;exports.PublisherApiFactory=e.PublisherApiFactory;exports.PublisherApiFp=e.PublisherApiFp;exports.Realization=e.Realization;exports.ServerProvider=e.ServerProvider;exports.ServerStatusOperationalStateEnum=e.ServerStatusOperationalStateEnum;exports.WatchModeApi=e.WatchModeApi;exports.WatchModeApiAxiosParamCreator=e.WatchModeApiAxiosParamCreator;exports.WatchModeApiFactory=e.WatchModeApiFactory;exports.WatchModeApiFp=e.WatchModeApiFp;exports.globalQueryClient=e.globalQueryClient;exports.useServer=e.useServer;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../ServerProvider-j5Jof3CU.cjs.js");exports.AttachedDatabaseTypeEnum=e.AttachedDatabaseTypeEnum;exports.AzureConnectionAuthTypeEnum=e.AzureConnectionAuthTypeEnum;exports.CompileProblemSeverityEnum=e.CompileProblemSeverityEnum;exports.CompileResultStatusEnum=e.CompileResultStatusEnum;exports.Configuration=e.Configuration;exports.ConnectionProxyTypeEnum=e.ConnectionProxyTypeEnum;exports.ConnectionStatusStatusEnum=e.ConnectionStatusStatusEnum;exports.ConnectionTypeEnum=e.ConnectionTypeEnum;exports.ConnectionsApi=e.ConnectionsApi;exports.ConnectionsApiAxiosParamCreator=e.ConnectionsApiAxiosParamCreator;exports.ConnectionsApiFactory=e.ConnectionsApiFactory;exports.ConnectionsApiFp=e.ConnectionsApiFp;exports.ConnectionsTestApi=e.ConnectionsTestApi;exports.ConnectionsTestApiAxiosParamCreator=e.ConnectionsTestApiAxiosParamCreator;exports.ConnectionsTestApiFactory=e.ConnectionsTestApiFactory;exports.ConnectionsTestApiFp=e.ConnectionsTestApiFp;exports.DatabaseTypeEnum=e.DatabaseTypeEnum;exports.DatabasesApi=e.DatabasesApi;exports.DatabasesApiAxiosParamCreator=e.DatabasesApiAxiosParamCreator;exports.DatabasesApiFactory=e.DatabasesApiFactory;exports.DatabasesApiFp=e.DatabasesApiFp;exports.EnvironmentsApi=e.EnvironmentsApi;exports.EnvironmentsApiAxiosParamCreator=e.EnvironmentsApiAxiosParamCreator;exports.EnvironmentsApiFactory=e.EnvironmentsApiFactory;exports.EnvironmentsApiFp=e.EnvironmentsApiFp;exports.ExecuteNotebookCellBypassFiltersEnum=e.ExecuteNotebookCellBypassFiltersEnum;exports.FilterTypeEnum=e.FilterTypeEnum;exports.FreshnessFallbackEnum=e.FreshnessFallbackEnum;exports.LogMessageSeverityEnum=e.LogMessageSeverityEnum;exports.MaterializationActionActionEnum=e.MaterializationActionActionEnum;exports.MaterializationStatus=e.MaterializationStatus;exports.MaterializationsApi=e.MaterializationsApi;exports.MaterializationsApiAxiosParamCreator=e.MaterializationsApiAxiosParamCreator;exports.MaterializationsApiFactory=e.MaterializationsApiFactory;exports.MaterializationsApiFp=e.MaterializationsApiFp;exports.ModelsApi=e.ModelsApi;exports.ModelsApiAxiosParamCreator=e.ModelsApiAxiosParamCreator;exports.ModelsApiFactory=e.ModelsApiFactory;exports.ModelsApiFp=e.ModelsApiFp;exports.NotebookCellResultTypeEnum=e.NotebookCellResultTypeEnum;exports.NotebookCellTypeEnum=e.NotebookCellTypeEnum;exports.NotebooksApi=e.NotebooksApi;exports.NotebooksApiAxiosParamCreator=e.NotebooksApiAxiosParamCreator;exports.NotebooksApiFactory=e.NotebooksApiFactory;exports.NotebooksApiFp=e.NotebooksApiFp;exports.PackageManifestBindingStatusEnum=e.PackageManifestBindingStatusEnum;exports.PackageQueryableSourcesEnum=e.PackageQueryableSourcesEnum;exports.PackageWarningsInnerSeverityEnum=e.PackageWarningsInnerSeverityEnum;exports.PackagesApi=e.PackagesApi;exports.PackagesApiAxiosParamCreator=e.PackagesApiAxiosParamCreator;exports.PackagesApiFactory=e.PackagesApiFactory;exports.PackagesApiFp=e.PackagesApiFp;exports.PageFitEnum=e.PageFitEnum;exports.PagesApi=e.PagesApi;exports.PagesApiAxiosParamCreator=e.PagesApiAxiosParamCreator;exports.PagesApiFactory=e.PagesApiFactory;exports.PagesApiFp=e.PagesApiFp;exports.PostgresConnectionSslmodeEnum=e.PostgresConnectionSslmodeEnum;exports.PublisherApi=e.PublisherApi;exports.PublisherApiAxiosParamCreator=e.PublisherApiAxiosParamCreator;exports.PublisherApiFactory=e.PublisherApiFactory;exports.PublisherApiFp=e.PublisherApiFp;exports.Realization=e.Realization;exports.ServerProvider=e.ServerProvider;exports.ServerStatusOperationalStateEnum=e.ServerStatusOperationalStateEnum;exports.ThemeDefaultModeEnum=e.ThemeDefaultModeEnum;exports.WatchModeApi=e.WatchModeApi;exports.WatchModeApiAxiosParamCreator=e.WatchModeApiAxiosParamCreator;exports.WatchModeApiFactory=e.WatchModeApiFactory;exports.WatchModeApiFp=e.WatchModeApiFp;exports.globalQueryClient=e.globalQueryClient;exports.useServer=e.useServer;