@explorable-viz/fluid 0.7.61 → 0.7.62

Sign up to get free protection for your applications and to get access to all the features.
@@ -19,6 +19,5 @@ let plot year countries =
19
19
  in ScatterPlot {
20
20
  caption: "Clean energy efficiency vs. proportion of renewable energy capacity",
21
21
  points: plot 2018 [ "BRA", "CHN", "DEU", "FRA", "EGY", "IND", "JPN", "MEX", "NGA", "USA" ],
22
- xlabel: "Renewables/TotalEnergyCap",
23
- ylabel: "Clean Capacity Factor"
22
+ labels: { x: "Renewables/TotalEnergyCap", y: "Clean Capacity Factor" }
24
23
  }
@@ -25,6 +25,5 @@ in ScatterPlot {
25
25
  x: country.nonRenewables / country.totalCap,
26
26
  y: country.renCapFactor
27
27
  }| country <- energy 2018 ["USA"]],
28
- xlabel: "Renewables/TotalEnergyCap",
29
- ylabel: "Clean Capacity Factor"
28
+ labels: { x: "Renewables/TotalEnergyCap", y: "Clean Capacity Factor" }
30
29
  }
@@ -2,8 +2,8 @@ let countries = ["BRA", "EGY", "IND", "JPN"];
2
2
  let totalFor year country =
3
3
  let [ row ] = [ row | row <- nonRenewables, row.year == year, row.country == country ]
4
4
  in row.nuclearOut + row.gasOut + row.coalOut + row.petrolOut;
5
- stack year = [ { y: country, z: totalFor year country } | country <- countries ];
6
- yearData year = [ row | row <- nonRenewables, row.year == year, row.country `elem` countries ]
5
+ let stack year = [ { y: country, z: totalFor year country } | country <- countries ];
6
+ let yearData year = [ row | row <- nonRenewables, row.year == year, row.country `elem` countries ]
7
7
  in MultiView {
8
8
  barChart: BarChart {
9
9
  caption: "Non-renewables output",
@@ -16,7 +16,6 @@ in MultiView {
16
16
  x: sum [ row.nuclearOut | row <- yearData year ],
17
17
  y: sum [ row.nuclearCap | row <- yearData year ]
18
18
  } | year <- [2014..2018] ],
19
- xlabel: "Nuclear capacity",
20
- ylabel: "Nuclear output"
19
+ labels: { x: "Nuclear capacity", y: "Nuclear output" }
21
20
  }
22
21
  }
@@ -33,7 +33,6 @@ MultiView {
33
33
  in ScatterPlot {
34
34
  caption: "Clean energy efficiency vs proportion of renewable energy capacity",
35
35
  points: plot 2018 [ "BRA", "CHN", "DEU", "FRA", "EGY", "IND", "JPN", "MEX", "NGA", "USA" ],
36
- xlabel: "Renewables/TotalEnergyCap",
37
- ylabel: "Clean Capacity Factor"
36
+ labels: { x: "Renewables/TotalEnergyCap", y: "Clean Capacity Factor" }
38
37
  }
39
38
  }
@@ -2,15 +2,16 @@ let zero n = const n;
2
2
  wrap n n_max = ((n - 1) `mod` n_max) + 1;
3
3
  extend n = min (max n 1);
4
4
 
5
- let convolve image kernel method =
5
+ let convolve image kernel boundary =
6
6
  let ((m, n), (i, j)) = (dims image, dims kernel);
7
7
  (half_i, half_j) = (i `quot` 2, j `quot` 2);
8
8
  area = i * j
9
9
  in [| let weightedSum = sum [
10
10
  image!(x, y) * kernel!(i' + 1, j' + 1)
11
11
  | (i', j') <- range (0, 0) (i - 1, j - 1),
12
- let x = method (m' + i' - half_i) m,
13
- let y = method (n' + j' - half_j) n,
12
+ let x = boundary (m' + i' - half_i) m,
13
+ let y = boundary (n' + j' - half_j) n,
14
14
  x >= 1, x <= m, y >= 1, y <= n
15
15
  ] in weightedSum `quot` area
16
16
  | (m', n') in (m, n) |];
17
+
@@ -10170,8 +10170,7 @@ var dataTypes = /* @__PURE__ */ foldrArray(Cons)(Nil)([
10170
10170
  /* @__PURE__ */ $Tuple("Viewport", 9)
10171
10171
  ]),
10172
10172
  /* @__PURE__ */ dataType("Transform")([/* @__PURE__ */ $Tuple("Scale", 2), /* @__PURE__ */ $Tuple("Translate", 2)]),
10173
- /* @__PURE__ */ dataType("Marker")([/* @__PURE__ */ $Tuple("Arrowhead", 0)]),
10174
- /* @__PURE__ */ dataType("Explanation")([/* @__PURE__ */ $Tuple("Explained", 2)])
10173
+ /* @__PURE__ */ dataType("Marker")([/* @__PURE__ */ $Tuple("Arrowhead", 0)])
10175
10174
  ]);
10176
10175
  var ctrToDataType = /* @__PURE__ */ (() => fromFoldable2(foldableList)(bindList.bind(listMap((d) => listMap((v) => $Tuple(
10177
10176
  v,
@@ -28437,8 +28436,8 @@ var dispatchCommand = (v) => {
28437
28436
  return _bind(evaluate(v._1))((v1) => _liftEffect(log(intercalate4("\n")(removeDocWS(prettyVal(highlightableUnit).pretty(v1)).lines))));
28438
28437
  }
28439
28438
  if (v.tag === "Publish") {
28440
- return _bind(_map((v$1) => {
28441
- })(_liftEffect(publish(v._1)(v._2))))(() => _liftEffect(log("Published")));
28439
+ return _map((v$1) => {
28440
+ })(_liftEffect(publish(v._1)(v._2)));
28442
28441
  }
28443
28442
  fail();
28444
28443
  };
@@ -28447,7 +28446,8 @@ var callback = (v) => {
28447
28446
  return log(showErrorImpl(v._1));
28448
28447
  }
28449
28448
  if (v.tag === "Right") {
28450
- return log("Success");
28449
+ return () => {
28450
+ };
28451
28451
  }
28452
28452
  fail();
28453
28453
  };
@@ -27787,8 +27787,7 @@ var dataTypes = /* @__PURE__ */ foldrArray(Cons)(Nil)([
27787
27787
  /* @__PURE__ */ $Tuple("Viewport", 9)
27788
27788
  ]),
27789
27789
  /* @__PURE__ */ dataType("Transform")([/* @__PURE__ */ $Tuple("Scale", 2), /* @__PURE__ */ $Tuple("Translate", 2)]),
27790
- /* @__PURE__ */ dataType("Marker")([/* @__PURE__ */ $Tuple("Arrowhead", 0)]),
27791
- /* @__PURE__ */ dataType("Explanation")([/* @__PURE__ */ $Tuple("Explained", 2)])
27790
+ /* @__PURE__ */ dataType("Marker")([/* @__PURE__ */ $Tuple("Arrowhead", 0)])
27792
27791
  ]);
27793
27792
  var ctrToDataType = /* @__PURE__ */ (() => fromFoldable(foldableList)(bindList.bind(listMap((d) => listMap((v) => $Tuple(
27794
27793
  v,
@@ -34840,7 +34839,6 @@ var forDefs = (\u03C1) => (\u03C3) => {
34840
34839
  };
34841
34840
 
34842
34841
  // output-es/Primitive/index.js
34843
- var $Explanation = (_1, _2, _3) => ({ tag: "Explanation", _1, _2, _3 });
34844
34842
  var fanin2 = /* @__PURE__ */ fanin(categoryFn)(choiceFn);
34845
34843
  var isZeroNumber = { isZero: ($0) => 0 === $0 };
34846
34844
  var isZeroInt = { isZero: ($0) => 0 === $0 };
@@ -34916,30 +34914,6 @@ var number5 = {
34916
34914
  return typeError(v)("Float");
34917
34915
  }
34918
34916
  };
34919
- var linkedTextEntry = {
34920
- pack: (v) => {
34921
- if (v.tag === "Left") {
34922
- return $BaseVal("Str", v._1);
34923
- }
34924
- if (v.tag === "Right") {
34925
- return $BaseVal(
34926
- "Constr",
34927
- "Explained",
34928
- $List("Cons", $Val(v._1._1, $BaseVal("Str", v._1._2)), $List("Cons", $Val(v._1._3._1, v._1._3._2), Nil))
34929
- );
34930
- }
34931
- fail();
34932
- },
34933
- unpack: (v) => {
34934
- if (v.tag === "Str") {
34935
- return $Either("Left", v._1);
34936
- }
34937
- if (v.tag === "Constr" && v._2.tag === "Cons" && v._2._1._2.tag === "Str" && v._2._2.tag === "Cons" && v._2._2._2.tag === "Nil" && v._1 === "Explained") {
34938
- return $Either("Right", $Explanation(v._2._2._1._1, v._2._1._2._1, v._2._2._1));
34939
- }
34940
- return typeError(v)("String or Explanation");
34941
- }
34942
- };
34943
34917
  var intOrNumberOrString = {
34944
34918
  pack: (v) => {
34945
34919
  if (v.tag === "Left") {
@@ -36593,7 +36567,19 @@ var reflectDictSelState\u{1D54A}$x215ValS3 = {
36593
36567
  })()
36594
36568
  })
36595
36569
  };
36596
- var reflectDictSelState\u{1D54A}$x215ValS12 = { from: () => (r) => ({ x: get_intOrNumber("x")(r), y: get_intOrNumber("y")(r) }) };
36570
+ var reflectDictSelState\u{1D54A}$x215ValS12 = {
36571
+ from: () => (r) => ({
36572
+ x: (() => {
36573
+ const $0 = $$get2(showString)(mapDictString)("x")(r);
36574
+ return $Tuple($0._2._2.tag === "Str" ? $0._2._2._1 : typeError($0._2._2)("Str"), $0._2._1);
36575
+ })(),
36576
+ y: (() => {
36577
+ const $0 = $$get2(showString)(mapDictString)("y")(r);
36578
+ return $Tuple($0._2._2.tag === "Str" ? $0._2._2._1 : typeError($0._2._2)("Str"), $0._2._1);
36579
+ })()
36580
+ })
36581
+ };
36582
+ var reflectDictSelState\u{1D54A}$x215ValS23 = { from: () => (r) => ({ x: get_intOrNumber("x")(r), y: get_intOrNumber("y")(r) }) };
36597
36583
 
36598
36584
  // output-es/App.View.LineChart/index.js
36599
36585
  var identity27 = (x2) => x2;
@@ -36622,7 +36608,7 @@ var reflectDictSelState\u{1D54A}$x215ValS4 = {
36622
36608
  const $0 = $$get2(showString)(mapDictString)("name")(r);
36623
36609
  return $Tuple($0._2._2.tag === "Str" ? $0._2._2._1 : typeError($0._2._2)("Str"), $0._2._1);
36624
36610
  })(),
36625
- points: arrayMap(dict(reflectDictSelState\u{1D54A}$x215ValS12.from()))(reflectValSelState\u{1D54A}ArrayV.from()($$get2(showString)(mapDictString)("points")(r)._2))
36611
+ points: arrayMap(dict(reflectDictSelState\u{1D54A}$x215ValS23.from()))(reflectValSelState\u{1D54A}ArrayV.from()($$get2(showString)(mapDictString)("points")(r)._2))
36626
36612
  })
36627
36613
  };
36628
36614
  var reflectValSelState\u{1D54A}LinePl = {
@@ -36897,114 +36883,84 @@ var drawableLineChart = {
36897
36883
  }
36898
36884
  };
36899
36885
 
36900
- // output-es/App.View.LinkedText/foreign.js
36901
- selection_default.prototype.attrs = function(m) {
36902
- for (const k in m) {
36903
- this.attr(k, m[k]);
36904
- }
36905
- return this;
36886
+ // output-es/App.View.LinkedText/index.js
36887
+ var for_4 = /* @__PURE__ */ for_(applicativeEffect)(foldableArray);
36888
+ var forWithIndex_2 = /* @__PURE__ */ forWithIndex_(applicativeEffect)(foldableWithIndexArray);
36889
+ var reflectValSelState\u{1D54A}Linked = {
36890
+ from: () => (r) => arrayMap((v) => $Tuple(v._2.tag === "Str" ? v._2._1 : typeError(v._2)("Str"), v._1))(reflectValSelState\u{1D54A}ArrayV.from()(r))
36906
36891
  };
36907
- function setSelState3({ accessAnn }, {
36908
- selState: selState2,
36909
- selClasses: selClasses2,
36910
- selClassesFor: selClassesFor2,
36911
- join: join3
36912
- }, div, view2, selListener2) {
36913
- div.selectAll("span").each(function(textElem) {
36914
- var sel;
36915
- if (textElem.conts.tag == "Left") {
36916
- sel = accessAnn(view2[textElem.i]);
36917
- } else {
36918
- sel = accessAnn(view2[textElem.i]);
36919
- }
36920
- select_default2(this).classed(selClasses2, false).classed(selClassesFor2(sel), true).on("mousedown", (e) => {
36921
- selListener2(e);
36922
- }).on("mouseenter", (e) => {
36923
- selListener2(e);
36924
- }).on("mouseleave", (e) => {
36925
- selListener2(e);
36926
- });
36927
- });
36928
- }
36929
- function drawLinkedText_({
36930
- explanation,
36931
- contents,
36932
- accessAnn
36933
- }, uiHelpers2, {
36934
- divId,
36935
- suffix,
36936
- view: view2
36937
- }, selListener2) {
36892
+ var setSelState3 = (v) => (redraw) => (rootElement) => {
36893
+ const $0 = selectAll2(".linked-text")(rootElement);
36938
36894
  return () => {
36939
- const div = select_default2("#" + divId);
36940
- const childId = divId + "-" + suffix;
36941
- let rootElement = div.selectAll("#" + childId);
36942
- if (rootElement.empty()) {
36943
- rootElement = div.append("div").attr("id", childId).text(view2._1).attr("class", "linked-text-parent");
36944
- rootElement.selectAll("span").data([...view2.entries()].map(([i, conts]) => {
36945
- return { i, conts };
36946
- })).enter().append("span").attr("id", childId).text((d) => contents(d.conts)).attr("class", "linked-text");
36947
- }
36948
- setSelState3({ accessAnn }, uiHelpers2, rootElement, view2, selListener2);
36895
+ const elems$p = $0();
36896
+ return for_4(elems$p)((elem2) => {
36897
+ const $1 = datum2(elem2);
36898
+ return () => {
36899
+ const v1 = $1();
36900
+ const $2 = definitely("index within bounds")(index(v)(v1.i));
36901
+ const $3 = styles(elem2)(fromFoldable10([
36902
+ $Tuple("border-bottom", isTransient($2._2) ? "1px solid blue" : "none"),
36903
+ $Tuple(
36904
+ "background",
36905
+ (() => {
36906
+ if (isPrimary($2._2) && isPersistent($2._2)) {
36907
+ return "#93E9BE";
36908
+ }
36909
+ if (isSecondary($2._2) && isPersistent($2._2)) {
36910
+ return "rgb(226, 226, 226)";
36911
+ }
36912
+ return "white";
36913
+ })()
36914
+ ),
36915
+ $Tuple(
36916
+ "color",
36917
+ (() => {
36918
+ if (isPrimary($2._2) && isTransient($2._2)) {
36919
+ return "blue";
36920
+ }
36921
+ if (isSecondary($2._2) && isTransient($2._2)) {
36922
+ return "royalblue";
36923
+ }
36924
+ return "black";
36925
+ })()
36926
+ )
36927
+ ]))();
36928
+ return for_2(["mousedown", "mouseenter", "mouseleave"])((ev) => on(ev)(redraw)($3))();
36929
+ };
36930
+ })();
36949
36931
  };
36950
- }
36951
- var drawLinkedText = (x1) => (x2) => (x3) => (x4) => drawLinkedText_(x1, x2, x3, x4);
36952
-
36953
- // output-es/App.View.LinkedText/index.js
36954
- var linkedTextHelpers = {
36955
- explanation: (v) => {
36956
- if (v.tag === "Left") {
36957
- return v._1._1;
36958
- }
36959
- if (v.tag === "Right") {
36960
- return v._1._1._2;
36961
- }
36962
- fail();
36963
- },
36964
- contents: (v) => {
36965
- if (v.tag === "Left") {
36966
- return v._1._1;
36967
- }
36968
- if (v.tag === "Right") {
36969
- if (v._1._1._3._2.tag === "Str") {
36970
- return v._1._1._3._2._1;
36971
- }
36972
- return typeError(v._1._1._3._2)("Str");
36973
- }
36974
- fail();
36975
- },
36976
- accessAnn: (v) => {
36977
- if (v.tag === "Left") {
36978
- return v._1._2;
36979
- }
36980
- if (v.tag === "Right") {
36981
- return v._1._1._1;
36982
- }
36983
- fail();
36984
- }
36985
36932
  };
36933
+ var createRootElement2 = (v) => (div) => (childId) => {
36934
+ const $0 = createChild(div)(showElementType.show(Text2))(fromFoldable10([
36935
+ classes(["linked-text-parent"]),
36936
+ $Tuple("id", childId)
36937
+ ]));
36938
+ return () => {
36939
+ const rootElement = $0();
36940
+ forWithIndex_2(v)((i) => (elem2) => {
36941
+ const $1 = createChild(rootElement)(showElementType.show(Text2))(fromFoldable10([
36942
+ classes(["linked-text"]),
36943
+ $Tuple("id", childId)
36944
+ ]));
36945
+ return () => {
36946
+ const elem$p = $1();
36947
+ const $2 = setText(elem2._1)(elem$p)();
36948
+ return setDatum({ i })($2)();
36949
+ };
36950
+ })();
36951
+ return rootElement;
36952
+ };
36953
+ };
36954
+ var drawable2LinkedText = { createRootElement: createRootElement2, setSelState: setSelState3 };
36986
36955
  var drawableLinkedText = {
36987
36956
  draw: (rSpec) => (figVal) => (v) => (redraw) => {
36988
- const $0 = drawLinkedText(linkedTextHelpers)(uiHelpers)(rSpec);
36989
- const $1 = selListener(figVal)(redraw)((v1) => (x2) => constrArg("LinkedText")(0)(listElement(v1.i)(x2)));
36957
+ const $0 = selListener(figVal)(redraw)((v1) => (x2) => constrArg("LinkedText")(0)(listElement(v1.i)(x2)));
36990
36958
  return () => {
36991
- const $2 = $1();
36992
- return $0($2)();
36959
+ const $1 = $0();
36960
+ return draw$p(drawable2LinkedText)(uiHelpers)(rSpec)($1)();
36993
36961
  };
36994
36962
  }
36995
36963
  };
36996
- var reflectValSelState\u{1D54A}Linked = {
36997
- from: () => (r) => arrayMap((x2) => {
36998
- const $0 = linkedTextEntry.unpack(x2._2);
36999
- if ($0.tag === "Left") {
37000
- return $Either("Left", $Tuple($0._1, x2._1));
37001
- }
37002
- if ($0.tag === "Right") {
37003
- return $Either("Right", $Tuple($0._1, x2._1));
37004
- }
37005
- fail();
37006
- })(reflectValSelState\u{1D54A}ArrayV.from()(r))
37007
- };
37008
36964
 
37009
36965
  // output-es/App.View.MatrixView/foreign.js
37010
36966
  function setSelState4({
@@ -37188,8 +37144,7 @@ function drawScatterPlot_(scatterPlotHelpers2, uiHelpers2, {
37188
37144
  view: {
37189
37145
  caption,
37190
37146
  points,
37191
- xlabel,
37192
- ylabel
37147
+ labels
37193
37148
  }
37194
37149
  }, listener) {
37195
37150
  return () => {
@@ -37215,8 +37170,8 @@ function drawScatterPlot_(scatterPlotHelpers2, uiHelpers2, {
37215
37170
  rootElement.append("g").attr("transform", "translate(0," + height + ")").call(axisBottom(x2).tickSizeOuter(0)).selectAll("text").style("text-anchor", "middle");
37216
37171
  const y2 = linear2().domain([Math.min(0, y_min), y_max]).range([height, 0]);
37217
37172
  rootElement.append("g").call(axisLeft(y2).tickSizeOuter(0));
37218
- rootElement.append("text").attr("x", width).attr("y", height + 25).style("text-anchor", "end").style("font-size", "10px").text(val(xlabel));
37219
- rootElement.append("text").attr("transform", "rotate(-90)").attr("x", -margin.top).attr("y", -margin.left + 20).style("text-anchor", "end").style("font-size", "10px").text(val(ylabel));
37173
+ rootElement.append("text").attr("x", width).attr("y", height + 25).style("text-anchor", "end").style("font-size", "10px").text(val(labels.x));
37174
+ rootElement.append("text").attr("transform", "rotate(-90)").attr("x", -margin.top).attr("y", -margin.left + 20).style("text-anchor", "end").style("font-size", "10px").text(val(labels.y));
37220
37175
  rootElement.append("g").selectAll("circle").data([...points.entries()].map(([i, point2]) => {
37221
37176
  return { i, point: point2 };
37222
37177
  })).enter().append("circle").classed("scatterplot-point", true).attr("cx", ({ point: point2 }) => x2(val(point2.x))).attr("cy", ({ point: point2 }) => y2(val(point2.y))).attr("stroke-width", 0.5);
@@ -37236,15 +37191,8 @@ var reflectDictSelState\u{1D54A}$x215ValS5 = {
37236
37191
  const $0 = $$get2(showString)(mapDictString)("caption")(r);
37237
37192
  return $Tuple($0._2._2.tag === "Str" ? $0._2._2._1 : typeError($0._2._2)("Str"), $0._2._1);
37238
37193
  })(),
37239
- points: arrayMap(dict(reflectDictSelState\u{1D54A}$x215ValS12.from()))(reflectValSelState\u{1D54A}ArrayV.from()($$get2(showString)(mapDictString)("points")(r)._2)),
37240
- xlabel: (() => {
37241
- const $0 = $$get2(showString)(mapDictString)("xlabel")(r);
37242
- return $Tuple($0._2._2.tag === "Str" ? $0._2._2._1 : typeError($0._2._2)("Str"), $0._2._1);
37243
- })(),
37244
- ylabel: (() => {
37245
- const $0 = $$get2(showString)(mapDictString)("ylabel")(r);
37246
- return $Tuple($0._2._2.tag === "Str" ? $0._2._2._1 : typeError($0._2._2)("Str"), $0._2._1);
37247
- })()
37194
+ points: arrayMap(dict(reflectDictSelState\u{1D54A}$x215ValS23.from()))(reflectValSelState\u{1D54A}ArrayV.from()($$get2(showString)(mapDictString)("points")(r)._2)),
37195
+ labels: dict(reflectDictSelState\u{1D54A}$x215ValS12.from())($$get2(showString)(mapDictString)("labels")(r)._2)
37248
37196
  })
37249
37197
  };
37250
37198
  var scatterPlotHelpers = {
@@ -37334,12 +37282,12 @@ var toStringWith = (v) => {
37334
37282
  // output-es/App.View.TableView/index.js
37335
37283
  var $Filter = (tag) => tag;
37336
37284
  var toUnfoldable9 = /* @__PURE__ */ toUnfoldable4(unfoldableArray);
37337
- var forWithIndex_2 = /* @__PURE__ */ forWithIndex_(applicativeEffect)(foldableWithIndexArray);
37285
+ var forWithIndex_3 = /* @__PURE__ */ forWithIndex_(applicativeEffect)(foldableWithIndexArray);
37338
37286
  var $$for = /* @__PURE__ */ (() => {
37339
37287
  const traverse2 = traversableArray.traverse(applicativeEffect);
37340
37288
  return (x2) => (f) => traverse2(f)(x2);
37341
37289
  })();
37342
- var for_4 = /* @__PURE__ */ for_(applicativeEffect)(foldableArray);
37290
+ var for_5 = /* @__PURE__ */ for_(applicativeEffect)(foldableArray);
37343
37291
  var Interactive = /* @__PURE__ */ $Filter("Interactive");
37344
37292
  var prim = (v) => {
37345
37293
  if (v._2.tag === "Int") {
@@ -37363,7 +37311,7 @@ var record_isVisible = (r) => filter((v) => {
37363
37311
  }
37364
37312
  fail();
37365
37313
  })(r).length !== 0;
37366
- var createRootElement2 = (v) => (div) => (childId) => {
37314
+ var createRootElement3 = (v) => (div) => (childId) => {
37367
37315
  const $0 = v.colNames;
37368
37316
  const $1 = v.filter;
37369
37317
  const $2 = v.rows;
@@ -37381,7 +37329,7 @@ var createRootElement2 = (v) => (div) => (childId) => {
37381
37329
  const colNames$p = ["__n", ...$0];
37382
37330
  const $4 = createChild(rootElement)(showElementType.show(THead))(fromFoldable10([]))();
37383
37331
  const row = createChild($4)(showElementType.show(TR))(fromFoldable10([]))();
37384
- forWithIndex_2(colNames$p)((j) => (colName) => {
37332
+ forWithIndex_3(colNames$p)((j) => (colName) => {
37385
37333
  const value = (() => {
37386
37334
  if (colName === "__n") {
37387
37335
  if ($1 === "Relevant") {
@@ -37403,7 +37351,7 @@ var createRootElement2 = (v) => (div) => (childId) => {
37403
37351
  };
37404
37352
  })();
37405
37353
  const body = createChild(rootElement)(showElementType.show(TBody))(fromFoldable10([]))();
37406
- forWithIndex_2($2)((i) => (row$1) => {
37354
+ forWithIndex_3($2)((i) => (row$1) => {
37407
37355
  const $5 = createChild(body)(showElementType.show(TR))(fromFoldable10([
37408
37356
  classes(["table-row"])
37409
37357
  ]));
@@ -37411,7 +37359,7 @@ var createRootElement2 = (v) => (div) => (childId) => {
37411
37359
  return () => {
37412
37360
  const $7 = $5();
37413
37361
  const row$p = $6($7)();
37414
- return forWithIndex_2([showIntImpl(i + 1 | 0), ...arrayMap(prim)(row$1)])((j) => (value) => {
37362
+ return forWithIndex_3([showIntImpl(i + 1 | 0), ...arrayMap(prim)(row$1)])((j) => (value) => {
37415
37363
  const $8 = createChild(row$p)(showElementType.show(TD))(fromFoldable10([
37416
37364
  classes(j >= 0 ? ["table-cell"] : [])
37417
37365
  ]));
@@ -37487,7 +37435,7 @@ var setSelState6 = (v) => (redraw) => (rootElement) => {
37487
37435
  const $3 = selectAll2(".table-cell")(rootElement);
37488
37436
  return () => {
37489
37437
  const cells = $3();
37490
- for_4(cells)((cell) => {
37438
+ for_5(cells)((cell) => {
37491
37439
  const $42 = datum2(cell);
37492
37440
  return () => {
37493
37441
  const v12 = $42();
@@ -37545,11 +37493,11 @@ var setSelState6 = (v) => (redraw) => (rootElement) => {
37545
37493
  };
37546
37494
  })();
37547
37495
  const v1 = partition(snd)(a$p);
37548
- for_4(v1.no)((() => {
37496
+ for_5(v1.no)((() => {
37549
37497
  const $42 = classed("hidden")(true);
37550
37498
  return (x2) => $42(x2._1);
37551
37499
  })())();
37552
- for_4(v1.yes)((() => {
37500
+ for_5(v1.yes)((() => {
37553
37501
  const $42 = classed("hidden")(false);
37554
37502
  return (x2) => $42(x2._1);
37555
37503
  })())();
@@ -37557,7 +37505,7 @@ var setSelState6 = (v) => (redraw) => (rootElement) => {
37557
37505
  setText($1 + " (" + showIntImpl($0.length - v1.no.length | 0) + " of " + showIntImpl($0.length) + ")")($4)();
37558
37506
  };
37559
37507
  };
37560
- var drawable2TableView = { createRootElement: createRootElement2, setSelState: setSelState6 };
37508
+ var drawable2TableView = { createRootElement: createRootElement3, setSelState: setSelState6 };
37561
37509
  var drawableTableView = {
37562
37510
  draw: (rSpec) => (figVal) => (v) => (redraw) => {
37563
37511
  const $0 = selListener(figVal)(redraw)((v1) => (x2) => listElement(v1.i)(dictVal(v1.colName)(x2)));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@explorable-viz/fluid",
3
- "version": "0.7.61",
3
+ "version": "0.7.62",
4
4
  "description": "Fluid is an experimental programming language which integrates a bidirectional dynamic analysis to connect outputs to data sources in a fine-grained way. Fluid is implemented in PureScript and runs in the browser.",
5
5
  "main": "index.js",
6
6
  "repository": {