@malloy-publisher/server 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.
- package/dist/app/api-doc.yaml +291 -20
- package/dist/app/assets/{EnvironmentPage-gehnjfC6.js → EnvironmentPage-D6G5n6mY.js} +1 -1
- package/dist/app/assets/{HomePage-8LQBytE4.js → HomePage-DgZluD8u.js} +1 -1
- package/dist/app/assets/LightMode-w9v0pEbg.js +1 -0
- package/dist/app/assets/MainPage-Bi_Tukvr.js +2 -0
- package/dist/app/assets/{MaterializationsPage-D7P1Kp6O.js → MaterializationsPage-BVERjnmG.js} +1 -1
- package/dist/app/assets/ModelPage-2OjS259-.js +1 -0
- package/dist/app/assets/{PackagePage-Cz9fVwSG.js → PackagePage-C8L2On4z.js} +1 -1
- package/dist/app/assets/{RouteError-UONCloyN.js → RouteError-DJoNC_Vl.js} +1 -1
- package/dist/app/assets/ThemeEditorPage-B-hJ1zgd.js +1 -0
- package/dist/app/assets/{WorkbookPage-Bhzqvbq_.js → WorkbookPage-CTbDgGeJ.js} +1 -1
- package/dist/app/assets/{core-BiGj7BML.es-kMHAa8tP.js → core-D9Hl0IDY.es-CmgzHn4c.js} +1 -1
- package/dist/app/assets/github-dark-DenFmJkN.es-DHJKELXO.js +1 -0
- package/dist/app/assets/index-8E2uLeV9.js +2541 -0
- package/dist/app/assets/index-BEjJCJjX.js +1761 -0
- package/dist/app/assets/index-BF8PkFm8.js +1 -0
- package/dist/app/assets/index-Cr-asgoV.js +527 -0
- package/dist/app/assets/index-DcCw_qxr.js +18 -0
- package/dist/app/assets/index-w_0OQJgZ.js +23 -0
- package/dist/app/index.html +1 -1
- package/dist/package_load_worker.mjs +20 -2
- package/dist/runtime/publisher.js +6 -1
- package/dist/server.mjs +412 -55
- package/dist/sshcrypto-8m50vnmb.node +0 -0
- package/package.json +12 -12
- package/src/config.theme.spec.ts +178 -0
- package/src/config.ts +179 -0
- package/src/controller/materialization.controller.spec.ts +4 -4
- package/src/controller/materialization.controller.ts +2 -2
- package/src/controller/package.controller.spec.ts +89 -1
- package/src/controller/package.controller.ts +28 -3
- package/src/controller/theme.controller.ts +83 -0
- package/src/dto/connection.dto.ts +6 -0
- package/src/materialization_metrics.ts +1 -1
- package/src/package_load/package_load_pool.ts +2 -1
- package/src/package_load/package_load_worker.ts +5 -2
- package/src/package_load/protocol.ts +2 -1
- package/src/runtime/publisher.js +6 -1
- package/src/server.ts +58 -1
- package/src/service/build_plan.spec.ts +61 -17
- package/src/service/build_plan.ts +35 -11
- package/src/service/connection.ts +52 -6
- package/src/service/connection_fingerprint.spec.ts +102 -0
- package/src/service/manifest_loader.spec.ts +5 -5
- package/src/service/manifest_loader.ts +4 -4
- package/src/service/materialization_cron_gate.spec.ts +137 -0
- package/src/service/materialization_schedule_surface.spec.ts +30 -1
- package/src/service/materialization_service.spec.ts +47 -37
- package/src/service/materialization_service.ts +59 -50
- package/src/service/materialization_test_fixtures.ts +22 -6
- package/src/service/model.ts +1 -1
- package/src/service/package.ts +50 -4
- package/src/service/package_manifest.spec.ts +42 -4
- package/src/service/package_manifest.ts +53 -4
- package/src/service/theme_store.ts +199 -0
- package/src/storage/DatabaseInterface.ts +1 -1
- package/src/storage/StorageManager.ts +17 -0
- package/src/storage/duckdb/schema.ts +27 -6
- package/src/theme_key_parity.spec.ts +57 -0
- package/tests/integration/materialization/manifest_binding.integration.spec.ts +1 -1
- package/tests/integration/materialization/materialization_lifecycle.integration.spec.ts +5 -5
- package/tests/unit/controller/theme.controller.spec.ts +141 -0
- package/tests/unit/service/theme_store.spec.ts +139 -0
- package/dist/app/assets/MainPage-DDaZLJw-.js +0 -2
- package/dist/app/assets/ModelPage-Do_vhxOc.js +0 -1
- package/dist/app/assets/index-VzRbxcF7.js +0 -455
- package/dist/app/assets/index-ddq4-5hu.js +0 -1760
- package/dist/app/assets/index-qOQF9CXq.js +0 -40
- package/dist/app/assets/index.umd-B2kmxDh7.js +0 -2467
|
@@ -11713,12 +11713,30 @@ function unwrapQuotedExpression(body) {
|
|
|
11713
11713
|
}
|
|
11714
11714
|
|
|
11715
11715
|
// src/service/package_manifest.ts
|
|
11716
|
+
var FRESHNESS_FALLBACKS = ["live", "stale_ok", "fail"];
|
|
11717
|
+
function parseFreshness(raw) {
|
|
11718
|
+
if (!raw || typeof raw !== "object") {
|
|
11719
|
+
return null;
|
|
11720
|
+
}
|
|
11721
|
+
const { window: window2, fallback } = raw;
|
|
11722
|
+
const freshness = {};
|
|
11723
|
+
if (typeof window2 === "string") {
|
|
11724
|
+
freshness.window = window2;
|
|
11725
|
+
}
|
|
11726
|
+
if (typeof fallback === "string" && FRESHNESS_FALLBACKS.includes(fallback)) {
|
|
11727
|
+
freshness.fallback = fallback;
|
|
11728
|
+
}
|
|
11729
|
+
return freshness;
|
|
11730
|
+
}
|
|
11716
11731
|
function parsePackageMaterialization(raw) {
|
|
11717
11732
|
if (!raw || typeof raw !== "object") {
|
|
11718
11733
|
return null;
|
|
11719
11734
|
}
|
|
11720
|
-
const schedule = raw
|
|
11721
|
-
return {
|
|
11735
|
+
const { schedule, freshness } = raw;
|
|
11736
|
+
return {
|
|
11737
|
+
schedule: typeof schedule === "string" ? schedule : null,
|
|
11738
|
+
freshness: parseFreshness(freshness)
|
|
11739
|
+
};
|
|
11722
11740
|
}
|
|
11723
11741
|
|
|
11724
11742
|
// src/service/source_extraction.ts
|
|
@@ -79,7 +79,12 @@
|
|
|
79
79
|
"/packages/" +
|
|
80
80
|
encodeURIComponent(target.pkg) +
|
|
81
81
|
"/models/" +
|
|
82
|
-
|
|
82
|
+
// Encode the whole model path as ONE path segment (slashes -> %2F). A model
|
|
83
|
+
// in a subfolder ("model/x.malloy") must not become two URL segments: some
|
|
84
|
+
// servers only match a single-segment {path} and would 405 a multi-segment
|
|
85
|
+
// path. This matches the typed SDK (encodeURIComponent) and the server's
|
|
86
|
+
// encoded-slash handling.
|
|
87
|
+
encodeURIComponent(modelPath) +
|
|
83
88
|
"/query";
|
|
84
89
|
var body = { compactJson: compactJson };
|
|
85
90
|
if (malloyQuery) body.query = malloyQuery;
|