@datarails-ai/dr-appspace-cli 0.12.5 → 0.12.7

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 (2) hide show
  1. package/dist/cli.js +21 -7
  2. package/package.json +1 -1
package/dist/cli.js CHANGED
@@ -13,7 +13,7 @@ import { fileURLToPath as fileURLToPath6 } from "url";
13
13
  // package.json
14
14
  var package_default = {
15
15
  name: "@datarails-ai/dr-appspace-cli",
16
- version: "0.12.5",
16
+ version: "0.12.7",
17
17
  description: "Datarails App Space CLI \u2014 build, try, push and publish App Space apps",
18
18
  type: "module",
19
19
  engines: {
@@ -57,7 +57,7 @@ var package_default = {
57
57
  };
58
58
 
59
59
  // src/buildInfo.ts
60
- var BUILD_TIME = "2026-10-12T20:06:39.816Z";
60
+ var BUILD_TIME = "2026-10-13T11:28:57.721Z";
61
61
  function formatBuildTime(iso) {
62
62
  if (iso === "") return "";
63
63
  const d = new Date(iso);
@@ -17277,7 +17277,7 @@ var contract_schema_default = {
17277
17277
  module: { type: "string", description: "dr-widgets, dr-insights, dr-fmt, echarts, ui-kit" },
17278
17278
  version: { type: "string", description: "1.1.1 for a vendor module, v3 for the ui-kit" },
17279
17279
  file: { type: "string" },
17280
- path: { type: "string", description: "the platform-root path, e.g. vendor/dr-widgets@1.1.1/widgets.js" },
17280
+ path: { type: "string", description: "the platform-root path, e.g. vendor/dr-widgets@1.2.1/widgets.js" },
17281
17281
  rel: { enum: ["script", "stylesheet"] },
17282
17282
  pages: { type: "array", items: { type: "string" } },
17283
17283
  order: { type: "integer", minimum: 0, description: "load order: where this module is first reached across the bundle" }
@@ -18885,7 +18885,7 @@ function checkDrillTargets(doc, problems) {
18885
18885
  const row = raw;
18886
18886
  if (row["data"] !== void 0 && row["data"] !== null) continue;
18887
18887
  const drill = list2(row["drill"]).filter((name) => typeof name === "string");
18888
- if (drill.length === 0) continue;
18888
+ if (drill.length === 0 || !menuless(row)) continue;
18889
18889
  const offered = new Set(drill.map((name) => name.toLowerCase()));
18890
18890
  const listed = JSON.stringify(drill);
18891
18891
  if (row["kind"] === "breakdown") {
@@ -18895,7 +18895,7 @@ function checkDrillTargets(doc, problems) {
18895
18895
  problems.push({
18896
18896
  code: "drill-needs-dimension",
18897
18897
  pointer: pointer("data", "widgets", id, "drill"),
18898
- message: `this breakdown is cut by ${JSON.stringify(dimension)} and its drill list ${listed} does not name it, so no legend row answers a click \u2014 the card looks drillable and is not.`,
18898
+ message: `this breakdown gets no point menu, so a click on it is the drill itself; it is cut by ${JSON.stringify(dimension)} and its drill list ${listed} does not name it, so no legend row answers a click \u2014 the card looks drillable and is not.`,
18899
18899
  fix: `Put ${JSON.stringify(dimension)} first in drill \u2014 ${JSON.stringify([dimension, ...drill])}: the clicked slice is a value of the card's own dimension, and the levels after it are where the grid goes next.`
18900
18900
  });
18901
18901
  continue;
@@ -18907,11 +18907,25 @@ function checkDrillTargets(doc, problems) {
18907
18907
  problems.push({
18908
18908
  code: "drill-needs-dimension",
18909
18909
  pointer: pointer("data", "widgets", id, "drill"),
18910
- message: `this table's drill list ${listed} names none of its columns (${keys2.map((key) => JSON.stringify(key)).join(", ")}), and a cell drills only when its column key is in drill \u2014 so no cell answers a click.`,
18910
+ message: `this table gets no point menu, so a click on it is the drill itself; its drill list ${listed} names none of its columns (${keys2.map((key) => JSON.stringify(key)).join(", ")}), and a cell drills only when its column key is in drill \u2014 so no cell answers a click.`,
18911
18911
  fix: `Add the column a reader clicks to drill \u2014 e.g. ${JSON.stringify([keys2[0], ...drill])} \u2014 naming the grid's own dimension column first.`
18912
18912
  });
18913
18913
  }
18914
18914
  }
18915
+ function menuless(row) {
18916
+ if (row["compute"] || row["transform"] !== void 0 && row["transform"] !== null) return true;
18917
+ const source = row["source"];
18918
+ if (!isObject4(source) || "app_table" in source || "call" in source) return true;
18919
+ if ("metric_id" in source) return Boolean(source["drill_rows"]) && typeof row["value_field"] !== "string";
18920
+ if (!addressesTable(source)) return true;
18921
+ const measures = list2(source["measures"]).length > 0 ? list2(source["measures"]) : source["measure"] ? [source["measure"]] : [];
18922
+ const fields = measures.map((one) => obj(one)["field"]);
18923
+ const named12 = typeof row["value_field"] === "string" && fields.includes(row["value_field"]);
18924
+ return !(named12 || fields.length === 1);
18925
+ }
18926
+ function addressesTable(source) {
18927
+ return source["address"] === "id" || source["address"] === "alias" || Boolean(source["table_alias"]) || source["table_id"] !== void 0 && source["table_id"] !== null;
18928
+ }
18915
18929
  function checkAggOrAccountType(doc, warnings) {
18916
18930
  const widgets = obj(obj(doc["data"])["widgets"]);
18917
18931
  const declared = (value) => typeof value === "string" && value.trim() !== "";
@@ -27122,7 +27136,7 @@ var kit_default = {
27122
27136
  fmt: "dr-fmt@1.0.0",
27123
27137
  markdown: "dr-md@1.0.0",
27124
27138
  uiKit: "ui-kit/v3",
27125
- widgets: "dr-widgets@1.1.2"
27139
+ widgets: "dr-widgets@1.2.1"
27126
27140
  };
27127
27141
 
27128
27142
  // ../flows/appspace-builder/kit/kit.json
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@datarails-ai/dr-appspace-cli",
3
- "version": "0.12.5",
3
+ "version": "0.12.7",
4
4
  "description": "Datarails App Space CLI — build, try, push and publish App Space apps",
5
5
  "type": "module",
6
6
  "engines": {