@explorable-viz/fluid 0.8.1 → 0.8.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.
- package/README.md +4 -3
- package/dist/fluid/shared/fluid.mjs +77 -117
- package/dist/fluid/shared/load-figure.js +270 -223
- package/dist/fluid/shared/webtest-lib.js +1 -4
- package/package.json +2 -3
- package/website/article/fluid/1805.02474v1-10.fld +0 -33
- package/website/article/fluid/scigen.fld +0 -50
- package/website/article/transparent-text/index.html +0 -44
- package/website/article/transparent-text/spec.json +0 -8
@@ -233,6 +233,14 @@ var intercalate = function(separator) {
|
|
233
233
|
var showString = { show: showStringImpl };
|
234
234
|
var showNumber = { show: showNumberImpl };
|
235
235
|
var showInt = { show: showIntImpl };
|
236
|
+
var showBoolean = {
|
237
|
+
show: (v) => {
|
238
|
+
if (v) {
|
239
|
+
return "true";
|
240
|
+
}
|
241
|
+
return "false";
|
242
|
+
}
|
243
|
+
};
|
236
244
|
|
237
245
|
// output-es/Affjax.RequestHeader/index.js
|
238
246
|
var $RequestHeader = (tag, _1, _2) => ({ tag, _1, _2 });
|
@@ -3219,16 +3227,6 @@ var _toChar = function(just) {
|
|
3219
3227
|
var length2 = function(s) {
|
3220
3228
|
return s.length;
|
3221
3229
|
};
|
3222
|
-
var _indexOf = function(just) {
|
3223
|
-
return function(nothing) {
|
3224
|
-
return function(x2) {
|
3225
|
-
return function(s) {
|
3226
|
-
var i = s.indexOf(x2);
|
3227
|
-
return i === -1 ? nothing : just(i);
|
3228
|
-
};
|
3229
|
-
};
|
3230
|
-
};
|
3231
|
-
};
|
3232
3230
|
var take = function(n) {
|
3233
3231
|
return function(s) {
|
3234
3232
|
return s.substr(0, n);
|
@@ -3260,20 +3258,6 @@ var stripPrefix = (v) => (str) => {
|
|
3260
3258
|
}
|
3261
3259
|
return Nothing;
|
3262
3260
|
};
|
3263
|
-
var indexOf = /* @__PURE__ */ _indexOf(Just)(Nothing);
|
3264
|
-
var contains = (pat) => {
|
3265
|
-
const $0 = indexOf(pat);
|
3266
|
-
return (x2) => {
|
3267
|
-
const $1 = $0(x2);
|
3268
|
-
if ($1.tag === "Nothing") {
|
3269
|
-
return false;
|
3270
|
-
}
|
3271
|
-
if ($1.tag === "Just") {
|
3272
|
-
return true;
|
3273
|
-
}
|
3274
|
-
fail();
|
3275
|
-
};
|
3276
|
-
};
|
3277
3261
|
var charAt2 = /* @__PURE__ */ _charAt(Just)(Nothing);
|
3278
3262
|
|
3279
3263
|
// output-es/Foreign/foreign.js
|
@@ -4132,9 +4116,9 @@ function creator_default(name3) {
|
|
4132
4116
|
// node_modules/d3-selection/src/selector.js
|
4133
4117
|
function none() {
|
4134
4118
|
}
|
4135
|
-
function selector_default(
|
4136
|
-
return
|
4137
|
-
return this.querySelector(
|
4119
|
+
function selector_default(selector2) {
|
4120
|
+
return selector2 == null ? none : function() {
|
4121
|
+
return this.querySelector(selector2);
|
4138
4122
|
};
|
4139
4123
|
}
|
4140
4124
|
|
@@ -4163,9 +4147,9 @@ function array(x2) {
|
|
4163
4147
|
function empty2() {
|
4164
4148
|
return [];
|
4165
4149
|
}
|
4166
|
-
function selectorAll_default(
|
4167
|
-
return
|
4168
|
-
return this.querySelectorAll(
|
4150
|
+
function selectorAll_default(selector2) {
|
4151
|
+
return selector2 == null ? empty2 : function() {
|
4152
|
+
return this.querySelectorAll(selector2);
|
4169
4153
|
};
|
4170
4154
|
}
|
4171
4155
|
|
@@ -4192,14 +4176,14 @@ function selectAll_default(select2) {
|
|
4192
4176
|
}
|
4193
4177
|
|
4194
4178
|
// node_modules/d3-selection/src/matcher.js
|
4195
|
-
function matcher_default(
|
4179
|
+
function matcher_default(selector2) {
|
4196
4180
|
return function() {
|
4197
|
-
return this.matches(
|
4181
|
+
return this.matches(selector2);
|
4198
4182
|
};
|
4199
4183
|
}
|
4200
|
-
function childMatcher(
|
4184
|
+
function childMatcher(selector2) {
|
4201
4185
|
return function(node) {
|
4202
|
-
return node.matches(
|
4186
|
+
return node.matches(selector2);
|
4203
4187
|
};
|
4204
4188
|
}
|
4205
4189
|
|
@@ -4269,11 +4253,11 @@ EnterNode.prototype = {
|
|
4269
4253
|
insertBefore: function(child, next) {
|
4270
4254
|
return this._parent.insertBefore(child, next);
|
4271
4255
|
},
|
4272
|
-
querySelector: function(
|
4273
|
-
return this._parent.querySelector(
|
4256
|
+
querySelector: function(selector2) {
|
4257
|
+
return this._parent.querySelector(selector2);
|
4274
4258
|
},
|
4275
|
-
querySelectorAll: function(
|
4276
|
-
return this._parent.querySelectorAll(
|
4259
|
+
querySelectorAll: function(selector2) {
|
4260
|
+
return this._parent.querySelectorAll(selector2);
|
4277
4261
|
}
|
4278
4262
|
};
|
4279
4263
|
|
@@ -4924,8 +4908,8 @@ Selection.prototype = selection.prototype = {
|
|
4924
4908
|
var selection_default = selection;
|
4925
4909
|
|
4926
4910
|
// node_modules/d3-selection/src/select.js
|
4927
|
-
function select_default2(
|
4928
|
-
return typeof
|
4911
|
+
function select_default2(selector2) {
|
4912
|
+
return typeof selector2 === "string" ? new Selection([[document.querySelector(selector2)]], [document.documentElement]) : new Selection([[selector2]], root);
|
4929
4913
|
}
|
4930
4914
|
|
4931
4915
|
// node_modules/d3-color/src/define.js
|
@@ -10023,8 +10007,8 @@ var StyleModule = class {
|
|
10023
10007
|
constructor(spec, options) {
|
10024
10008
|
this.rules = [];
|
10025
10009
|
let { finish } = options || {};
|
10026
|
-
function splitSelector(
|
10027
|
-
return /^@/.test(
|
10010
|
+
function splitSelector(selector2) {
|
10011
|
+
return /^@/.test(selector2) ? [selector2] : selector2.split(/,\s*/);
|
10028
10012
|
}
|
10029
10013
|
function render(selectors, spec2, target, isKeyframes) {
|
10030
10014
|
let local = [], isAt = /^@(\w+)\b/.exec(selectors[0]), keyframes = isAt && isAt[1] == "keyframes";
|
@@ -10244,7 +10228,7 @@ function getSelection(root2) {
|
|
10244
10228
|
}
|
10245
10229
|
return target.getSelection();
|
10246
10230
|
}
|
10247
|
-
function
|
10231
|
+
function contains(dom, node) {
|
10248
10232
|
return node ? dom == node || dom.contains(node.nodeType != 1 ? node.parentNode : node) : false;
|
10249
10233
|
}
|
10250
10234
|
function deepActiveElement(doc2) {
|
@@ -10257,7 +10241,7 @@ function hasSelection(dom, selection2) {
|
|
10257
10241
|
if (!selection2.anchorNode)
|
10258
10242
|
return false;
|
10259
10243
|
try {
|
10260
|
-
return
|
10244
|
+
return contains(dom, selection2.anchorNode);
|
10261
10245
|
} catch (_) {
|
10262
10246
|
return false;
|
10263
10247
|
}
|
@@ -11156,7 +11140,7 @@ function scanCompositionTree(pos, side, view2, text2, enterView, fromText) {
|
|
11156
11140
|
let desc = ContentView.get(child);
|
11157
11141
|
if (!desc)
|
11158
11142
|
return fromText(pos, side);
|
11159
|
-
let hasComp =
|
11143
|
+
let hasComp = contains(child, text2);
|
11160
11144
|
let len = desc.length + (hasComp ? text2.nodeValue.length : 0);
|
11161
11145
|
if (pos < len || pos == len && desc.getSide() <= 0)
|
11162
11146
|
return hasComp ? scanCompositionTree(pos, side, desc, text2, enterView, fromText) : enterView(desc, pos, side);
|
@@ -11173,8 +11157,8 @@ function posFromDOMInCompositionTree(node, offset, view2, text2) {
|
|
11173
11157
|
if (view2 instanceof MarkView) {
|
11174
11158
|
let pos = 0;
|
11175
11159
|
for (let child of view2.children) {
|
11176
|
-
let hasComp =
|
11177
|
-
if (
|
11160
|
+
let hasComp = contains(child.dom, text2);
|
11161
|
+
if (contains(child.dom, node))
|
11178
11162
|
return pos + (hasComp ? posFromDOMInCompositionTree(node, offset, child, text2) : child.localPosFromDOM(node, offset));
|
11179
11163
|
pos += hasComp ? text2.nodeValue.length : child.length;
|
11180
11164
|
}
|
@@ -15299,8 +15283,8 @@ var DOMChange = class {
|
|
15299
15283
|
this.newSel = selectionFromPoints(selPoints, this.bounds.from);
|
15300
15284
|
} else {
|
15301
15285
|
let domSel = view2.observer.selectionRange;
|
15302
|
-
let head = iHead && iHead.node == domSel.focusNode && iHead.offset == domSel.focusOffset || !
|
15303
|
-
let anchor = iAnchor && iAnchor.node == domSel.anchorNode && iAnchor.offset == domSel.anchorOffset || !
|
15286
|
+
let head = iHead && iHead.node == domSel.focusNode && iHead.offset == domSel.focusOffset || !contains(view2.contentDOM, domSel.focusNode) ? view2.state.selection.main.head : view2.docView.posFromDOM(domSel.focusNode, domSel.focusOffset);
|
15287
|
+
let anchor = iAnchor && iAnchor.node == domSel.anchorNode && iAnchor.offset == domSel.anchorOffset || !contains(view2.contentDOM, domSel.anchorNode) ? view2.state.selection.main.anchor : view2.docView.posFromDOM(domSel.anchorNode, domSel.anchorOffset);
|
15304
15288
|
this.newSel = EditorSelection.single(anchor, head);
|
15305
15289
|
}
|
15306
15290
|
}
|
@@ -22491,6 +22475,11 @@ var boolConj = function(b1) {
|
|
22491
22475
|
return b1 && b2;
|
22492
22476
|
};
|
22493
22477
|
};
|
22478
|
+
var boolDisj = function(b1) {
|
22479
|
+
return function(b2) {
|
22480
|
+
return b1 || b2;
|
22481
|
+
};
|
22482
|
+
};
|
22494
22483
|
var boolNot = function(b) {
|
22495
22484
|
return !b;
|
22496
22485
|
};
|
@@ -22538,6 +22527,7 @@ var identity21 = (x2) => x2;
|
|
22538
22527
|
var meetSemilatticeUnit = { meet: (v) => identity21 };
|
22539
22528
|
var meetSemilatticeBoolean = { meet: boolConj };
|
22540
22529
|
var joinSemilatticeUnit = { join: (v) => identity21 };
|
22530
|
+
var joinSemilatticeBoolean = { join: boolDisj };
|
22541
22531
|
var boundedMeetSemilatticeUni = { top: void 0, MeetSemilattice0: () => meetSemilatticeUnit };
|
22542
22532
|
var boundedMeetSemilatticeBoo = { top: true, MeetSemilattice0: () => meetSemilatticeBoolean };
|
22543
22533
|
var boundedJoinSemilatticeUni = { bot: void 0, JoinSemilattice0: () => joinSemilatticeUnit };
|
@@ -34559,13 +34549,67 @@ var semigroupColumns = { append: (v) => (v1) => beside(v)(v1) };
|
|
34559
34549
|
var monoidColumns = { mempty: empty3, Semigroup0: () => semigroupColumns };
|
34560
34550
|
|
34561
34551
|
// output-es/Pretty/index.js
|
34562
|
-
var $ExprType = (tag) => tag;
|
34563
34552
|
var hcat = /* @__PURE__ */ (() => foldableList.foldMap(monoidColumns)(unsafeCoerce))();
|
34564
34553
|
var hcat1 = /* @__PURE__ */ (() => foldableArray.foldMap(monoidColumns)(unsafeCoerce))();
|
34565
34554
|
var toUnfoldable8 = /* @__PURE__ */ toUnfoldable4(unfoldableList);
|
34566
34555
|
var toUnfoldable13 = /* @__PURE__ */ toAscUnfoldable(unfoldableList);
|
34567
|
-
var
|
34568
|
-
|
34556
|
+
var isSimpleVal = {
|
34557
|
+
isSimple: (v) => {
|
34558
|
+
if (v._3.tag === "Constr") {
|
34559
|
+
return v._3._2.tag !== "Cons";
|
34560
|
+
}
|
34561
|
+
if (v._3.tag === "Fun" && v._3._1.tag === "PartialConstr") {
|
34562
|
+
return v._3._1._2.tag !== "Cons";
|
34563
|
+
}
|
34564
|
+
return true;
|
34565
|
+
}
|
34566
|
+
};
|
34567
|
+
var isSimpleExpr = {
|
34568
|
+
isSimple: (v) => {
|
34569
|
+
if (v.tag === "Var") {
|
34570
|
+
return true;
|
34571
|
+
}
|
34572
|
+
if (v.tag === "Op") {
|
34573
|
+
return true;
|
34574
|
+
}
|
34575
|
+
if (v.tag === "Int") {
|
34576
|
+
return true;
|
34577
|
+
}
|
34578
|
+
if (v.tag === "Float") {
|
34579
|
+
return true;
|
34580
|
+
}
|
34581
|
+
if (v.tag === "Str") {
|
34582
|
+
return true;
|
34583
|
+
}
|
34584
|
+
if (v.tag === "Constr") {
|
34585
|
+
return v._4.tag === "Nil";
|
34586
|
+
}
|
34587
|
+
return v.tag === "Dictionary" || v.tag === "Matrix" || v.tag === "Project" || v.tag === "DProject";
|
34588
|
+
}
|
34589
|
+
};
|
34590
|
+
var isSimpleExpr1 = {
|
34591
|
+
isSimple: (v) => {
|
34592
|
+
if (v.tag === "Var") {
|
34593
|
+
return true;
|
34594
|
+
}
|
34595
|
+
if (v.tag === "Op") {
|
34596
|
+
return true;
|
34597
|
+
}
|
34598
|
+
if (v.tag === "Int") {
|
34599
|
+
return true;
|
34600
|
+
}
|
34601
|
+
if (v.tag === "Float") {
|
34602
|
+
return true;
|
34603
|
+
}
|
34604
|
+
if (v.tag === "Str") {
|
34605
|
+
return true;
|
34606
|
+
}
|
34607
|
+
if (v.tag === "Constr") {
|
34608
|
+
return v._4.tag === "Nil";
|
34609
|
+
}
|
34610
|
+
return v.tag === "Dictionary" || v.tag === "Matrix" || v.tag === "Project" || v.tag === "DProject" || v.tag === "ListEmpty" || v.tag === "ListNonEmpty" || v.tag === "ListEnum" || v.tag === "ListComp";
|
34611
|
+
}
|
34612
|
+
};
|
34569
34613
|
var vert = (dictFoldable) => {
|
34570
34614
|
const fromFoldable27 = dictFoldable.foldr(Cons)(Nil);
|
34571
34615
|
return (delim) => {
|
@@ -34651,6 +34695,7 @@ var removeDocWS = (v) => ({
|
|
34651
34695
|
height: v.height,
|
34652
34696
|
lines: arrayMap((x2) => foldlArray((curr) => (v$1) => replaceAll(v$1._1)(v$1._2)(curr))(drop(length2(take3(1)(x2)))(x2))(pattRepPairs))(v.lines)
|
34653
34697
|
});
|
34698
|
+
var prettyP = (dictPretty) => (x2) => intercalate4("\n")(removeDocWS(dictPretty.pretty(x2)).lines);
|
34654
34699
|
var nil2 = /* @__PURE__ */ checkOneLine(/* @__PURE__ */ split("\n")(" []"));
|
34655
34700
|
var intersperse$p = (v) => (v1) => {
|
34656
34701
|
if (v.tag === "Cons") {
|
@@ -34678,75 +34723,6 @@ var getPrec = (x2) => {
|
|
34678
34723
|
}
|
34679
34724
|
fail();
|
34680
34725
|
};
|
34681
|
-
var exprType = (v) => {
|
34682
|
-
if (v.tag === "Var") {
|
34683
|
-
return Simple;
|
34684
|
-
}
|
34685
|
-
if (v.tag === "Op") {
|
34686
|
-
return Simple;
|
34687
|
-
}
|
34688
|
-
if (v.tag === "Int") {
|
34689
|
-
return Simple;
|
34690
|
-
}
|
34691
|
-
if (v.tag === "Float") {
|
34692
|
-
return Simple;
|
34693
|
-
}
|
34694
|
-
if (v.tag === "Str") {
|
34695
|
-
return Simple;
|
34696
|
-
}
|
34697
|
-
if (v.tag === "Constr") {
|
34698
|
-
if (v._4.tag === "Nil") {
|
34699
|
-
return Simple;
|
34700
|
-
}
|
34701
|
-
return Expression;
|
34702
|
-
}
|
34703
|
-
if (v.tag === "Dictionary") {
|
34704
|
-
return Simple;
|
34705
|
-
}
|
34706
|
-
if (v.tag === "Matrix") {
|
34707
|
-
return Simple;
|
34708
|
-
}
|
34709
|
-
if (v.tag === "Lambda") {
|
34710
|
-
return Simple;
|
34711
|
-
}
|
34712
|
-
if (v.tag === "Project") {
|
34713
|
-
return Simple;
|
34714
|
-
}
|
34715
|
-
if (v.tag === "DProject") {
|
34716
|
-
return Simple;
|
34717
|
-
}
|
34718
|
-
if (v.tag === "App") {
|
34719
|
-
return Expression;
|
34720
|
-
}
|
34721
|
-
if (v.tag === "BinaryApp") {
|
34722
|
-
return Expression;
|
34723
|
-
}
|
34724
|
-
if (v.tag === "MatchAs") {
|
34725
|
-
return Simple;
|
34726
|
-
}
|
34727
|
-
if (v.tag === "IfElse") {
|
34728
|
-
return Simple;
|
34729
|
-
}
|
34730
|
-
if (v.tag === "ListEmpty") {
|
34731
|
-
return Simple;
|
34732
|
-
}
|
34733
|
-
if (v.tag === "ListNonEmpty") {
|
34734
|
-
return Simple;
|
34735
|
-
}
|
34736
|
-
if (v.tag === "ListEnum") {
|
34737
|
-
return Simple;
|
34738
|
-
}
|
34739
|
-
if (v.tag === "ListComp") {
|
34740
|
-
return Simple;
|
34741
|
-
}
|
34742
|
-
if (v.tag === "Let") {
|
34743
|
-
return Expression;
|
34744
|
-
}
|
34745
|
-
if (v.tag === "LetRec") {
|
34746
|
-
return Expression;
|
34747
|
-
}
|
34748
|
-
fail();
|
34749
|
-
};
|
34750
34726
|
var comma = /* @__PURE__ */ checkOneLine(/* @__PURE__ */ split("\n")(" ,"));
|
34751
34727
|
var hcomma = (dictFoldable) => {
|
34752
34728
|
const $0 = dictFoldable.foldr(Cons)(Nil);
|
@@ -34763,30 +34739,29 @@ var between2 = (l) => (r) => (doc2) => beside(beside(l)(doc2))(r);
|
|
34763
34739
|
var brackets = /* @__PURE__ */ between2(/* @__PURE__ */ checkOneLine(/* @__PURE__ */ split("\n")(" [")))(/* @__PURE__ */ checkOneLine(/* @__PURE__ */ split("\n")(" ]")));
|
34764
34740
|
var curlyBraces = /* @__PURE__ */ between2(/* @__PURE__ */ checkOneLine(/* @__PURE__ */ split("\n")(" {")))(/* @__PURE__ */ checkOneLine(/* @__PURE__ */ split("\n")(" }")));
|
34765
34741
|
var keyBracks = /* @__PURE__ */ between2(/* @__PURE__ */ checkOneLine(/* @__PURE__ */ split("\n")(" [")))(/* @__PURE__ */ checkOneLine(/* @__PURE__ */ split("\n")(" ]")));
|
34766
|
-
var
|
34767
|
-
var
|
34768
|
-
|
34769
|
-
|
34770
|
-
return parens(doc2);
|
34742
|
+
var parentheses = /* @__PURE__ */ between2(/* @__PURE__ */ checkOneLine(/* @__PURE__ */ split("\n")(" (")))(/* @__PURE__ */ checkOneLine(/* @__PURE__ */ split("\n")(" )")));
|
34743
|
+
var prettySimple = (dictIsSimple) => (dictPretty) => (s) => {
|
34744
|
+
if (dictIsSimple.isSimple(s)) {
|
34745
|
+
return dictPretty.pretty(s);
|
34771
34746
|
}
|
34772
|
-
return
|
34747
|
+
return parentheses(dictPretty.pretty(s));
|
34773
34748
|
};
|
34774
|
-
var prettyConstr = (dictPretty) => (v) => (v1) => {
|
34749
|
+
var prettyConstr = (dictIsSimple) => (dictPretty) => (v) => (v1) => {
|
34775
34750
|
const $0 = (c, xs) => hcat($List(
|
34776
34751
|
"Cons",
|
34777
34752
|
checkOneLine(split("\n")(" " + showCtr(c))),
|
34778
|
-
listMap(
|
34753
|
+
listMap(prettySimple(dictIsSimple)(dictPretty))(xs)
|
34779
34754
|
));
|
34780
34755
|
if (v1.tag === "Cons") {
|
34781
34756
|
if (v1._2.tag === "Cons") {
|
34782
34757
|
if (v === "Pair") {
|
34783
|
-
return assertWith("")(v1._2._2.tag === "Nil")(
|
34758
|
+
return assertWith("")(v1._2._2.tag === "Nil")(parentheses(hcomma2([dictPretty.pretty(v1._1), dictPretty.pretty(v1._2._1)])));
|
34784
34759
|
}
|
34785
34760
|
if (v === "Nil") {
|
34786
34761
|
return assertWith("")(v1.tag === "Nil")(nil2);
|
34787
34762
|
}
|
34788
34763
|
if (v === ":") {
|
34789
|
-
return assertWith("")(v1._2._2.tag === "Nil")(
|
34764
|
+
return assertWith("")(v1._2._2.tag === "Nil")(parentheses(hcat1([
|
34790
34765
|
dictPretty.pretty(v1._1),
|
34791
34766
|
checkOneLine(split("\n")(" :")),
|
34792
34767
|
dictPretty.pretty(v1._2._1)
|
@@ -34798,7 +34773,7 @@ var prettyConstr = (dictPretty) => (v) => (v1) => {
|
|
34798
34773
|
return assertWith("")(v1.tag === "Nil")(nil2);
|
34799
34774
|
}
|
34800
34775
|
if (v1._2.tag === "Nil") {
|
34801
|
-
return beside(checkOneLine(split("\n")(" " + showCtr(v))))(dictPretty
|
34776
|
+
return beside(checkOneLine(split("\n")(" " + showCtr(v))))(prettySimple(dictIsSimple)(dictPretty)(v1._1));
|
34802
34777
|
}
|
34803
34778
|
return $0(v, v1);
|
34804
34779
|
}
|
@@ -34807,7 +34782,6 @@ var prettyConstr = (dictPretty) => (v) => (v1) => {
|
|
34807
34782
|
}
|
34808
34783
|
return $0(v, v1);
|
34809
34784
|
};
|
34810
|
-
var parentheses = /* @__PURE__ */ between2(/* @__PURE__ */ checkOneLine(/* @__PURE__ */ split("\n")(" (")))(/* @__PURE__ */ checkOneLine(/* @__PURE__ */ split("\n")(" )")));
|
34811
34785
|
var prettyPattern = {
|
34812
34786
|
pretty: (v) => {
|
34813
34787
|
if (v.tag === "PVar") {
|
@@ -34912,7 +34886,7 @@ var prettyExpr = (dictHighlightable) => ({
|
|
34912
34886
|
return beside(prettyDocOpt(prettyExpr(dictHighlightable)).pretty(v._2))(dictHighlightable.highlightIf(v._1)(prettyRecordOrDict(prettyExpr(dictHighlightable))(checkOneLine(split("\n")(" :")))(keyBracks)(curlyBraces)(prettyExpr(dictHighlightable).pretty)(listMap(toTuple)(v._3))));
|
34913
34887
|
}
|
34914
34888
|
if (v.tag === "Constr") {
|
34915
|
-
return beside(prettyDocOpt(prettyExpr(dictHighlightable)).pretty(v._2))(dictHighlightable.highlightIf(v._1)(prettyConstr(prettyExpr(dictHighlightable))(v._3)(v._4)));
|
34889
|
+
return beside(prettyDocOpt(prettyExpr(dictHighlightable)).pretty(v._2))(dictHighlightable.highlightIf(v._1)(prettyConstr(isSimpleExpr)(prettyExpr(dictHighlightable))(v._3)(v._4)));
|
34916
34890
|
}
|
34917
34891
|
if (v.tag === "Matrix") {
|
34918
34892
|
return beside(prettyDocOpt(prettyExpr(dictHighlightable)).pretty(v._2))(dictHighlightable.highlightIf(v._1)(prettyMatrix(dictHighlightable)(v._3)(v._4._1)(v._4._2)(v._5)));
|
@@ -34921,7 +34895,7 @@ var prettyExpr = (dictHighlightable) => ({
|
|
34921
34895
|
return hcat1([dictHighlightable.highlightIf(v._1)(checkOneLine(split("\n")(" fun"))), prettyElim(dictHighlightable).pretty(v._2)]);
|
34922
34896
|
}
|
34923
34897
|
if (v.tag === "Op") {
|
34924
|
-
return
|
34898
|
+
return parentheses(checkOneLine(split("\n")(" " + v._1)));
|
34925
34899
|
}
|
34926
34900
|
if (v.tag === "Let") {
|
34927
34901
|
return atop(hcat1([
|
@@ -35022,7 +34996,7 @@ var prettyFun = (dictHighlightable) => ({
|
|
35022
34996
|
return checkOneLine(split("\n")(" " + v._1._1));
|
35023
34997
|
}
|
35024
34998
|
if (v.tag === "PartialConstr") {
|
35025
|
-
return prettyConstr(prettyVal(dictHighlightable))(v._1)(v._2);
|
34999
|
+
return prettyConstr(isSimpleVal)(prettyVal(dictHighlightable))(v._1)(v._2);
|
35026
35000
|
}
|
35027
35001
|
fail();
|
35028
35002
|
}
|
@@ -35059,7 +35033,7 @@ var prettyBaseVal = (dictHighlightable) => ({
|
|
35059
35033
|
))(toUnfoldable13(v._1)));
|
35060
35034
|
}
|
35061
35035
|
if (v.tag === "Constr") {
|
35062
|
-
return prettyConstr(prettyVal(dictHighlightable))(v._1)(v._2);
|
35036
|
+
return prettyConstr(isSimpleVal)(prettyVal(dictHighlightable))(v._1)(v._2);
|
35063
35037
|
}
|
35064
35038
|
if (v.tag === "Matrix") {
|
35065
35039
|
return vert1(comma)(arrayMap((() => {
|
@@ -35161,7 +35135,7 @@ var prettyExpr1 = (dictAnn) => {
|
|
35161
35135
|
return beside(prettyDocOpt(prettyExpr1(dictAnn)).pretty(v._2))($0.highlightIf(v._1)(checkOneLine(split("\n")(' "' + v._3 + '"'))));
|
35162
35136
|
}
|
35163
35137
|
if (v.tag === "Constr") {
|
35164
|
-
return beside(prettyDocOpt(prettyExpr1(dictAnn)).pretty(v._2))($0.highlightIf(v._1)(prettyConstr(prettyExpr1(dictAnn))(v._3)(v._4)));
|
35138
|
+
return beside(prettyDocOpt(prettyExpr1(dictAnn)).pretty(v._2))($0.highlightIf(v._1)(prettyConstr(isSimpleExpr1)(prettyExpr1(dictAnn))(v._3)(v._4)));
|
35165
35139
|
}
|
35166
35140
|
if (v.tag === "Dictionary") {
|
35167
35141
|
return beside(prettyDocOpt(prettyExpr1(dictAnn)).pretty(v._2))($0.highlightIf(v._1)(curlyBraces(prettyDictEntries(dictAnn)(atop)(v._3))));
|
@@ -35170,13 +35144,13 @@ var prettyExpr1 = (dictAnn) => {
|
|
35170
35144
|
return beside(prettyDocOpt(prettyExpr1(dictAnn)).pretty(v._2))($0.highlightIf(v._1)(arrayBrackets(beside(beside(beside(beside(prettyExpr1(dictAnn).pretty(v._3))(checkOneLine(split("\n")(" |"))))(parentheses(beside(beside(checkOneLine(split("\n")(" " + v._4._1)))(checkOneLine(split("\n")(" ,"))))(checkOneLine(split("\n")(" " + v._4._2))))))(checkOneLine(split("\n")(" in"))))(prettyExpr1(dictAnn).pretty(v._5)))));
|
35171
35145
|
}
|
35172
35146
|
if (v.tag === "Lambda") {
|
35173
|
-
return
|
35147
|
+
return beside(checkOneLine(split("\n")(" fun")))(prettyClauses(dictAnn).pretty(v._1));
|
35174
35148
|
}
|
35175
35149
|
if (v.tag === "Project") {
|
35176
|
-
return beside(beside(beside(prettyDocOpt(prettyExpr1(dictAnn)).pretty(v._1))(prettySimple(dictAnn)(v._2)))(checkOneLine(split("\n")(" ."))))(checkOneLine(split("\n")(" " + v._3)));
|
35150
|
+
return beside(beside(beside(prettyDocOpt(prettyExpr1(dictAnn)).pretty(v._1))(prettySimple(isSimpleExpr1)(prettyExpr1(dictAnn))(v._2)))(checkOneLine(split("\n")(" ."))))(checkOneLine(split("\n")(" " + v._3)));
|
35177
35151
|
}
|
35178
35152
|
if (v.tag === "DProject") {
|
35179
|
-
return beside(beside(beside(beside(beside(prettyDocOpt(prettyExpr1(dictAnn)).pretty(v._1))(prettySimple(dictAnn)(v._2)))(checkOneLine(split("\n")(" ."))))(checkOneLine(split("\n")(" ["))))(prettySimple(dictAnn)(v._3)))(checkOneLine(split("\n")(" ]")));
|
35153
|
+
return beside(beside(beside(beside(beside(prettyDocOpt(prettyExpr1(dictAnn)).pretty(v._1))(prettySimple(isSimpleExpr1)(prettyExpr1(dictAnn))(v._2)))(checkOneLine(split("\n")(" ."))))(checkOneLine(split("\n")(" ["))))(prettySimple(isSimpleExpr1)(prettyExpr1(dictAnn))(v._3)))(checkOneLine(split("\n")(" ]")));
|
35180
35154
|
}
|
35181
35155
|
if (v.tag === "App") {
|
35182
35156
|
return beside(prettyDocOpt(prettyExpr1(dictAnn)).pretty(v._1))(prettyAppChain(dictAnn)($Expr2("App", v._1, v._2, v._3)));
|
@@ -35238,16 +35212,6 @@ var prettyBranch = (dictAnn) => ({
|
|
35238
35212
|
v._2._2
|
35239
35213
|
)))
|
35240
35214
|
});
|
35241
|
-
var prettySimple = (dictAnn) => (s) => {
|
35242
|
-
const v = exprType(s);
|
35243
|
-
if (v === "Simple") {
|
35244
|
-
return prettyExpr1(dictAnn).pretty(s);
|
35245
|
-
}
|
35246
|
-
if (v === "Expression") {
|
35247
|
-
return parentheses(prettyExpr1(dictAnn).pretty(s));
|
35248
|
-
}
|
35249
|
-
fail();
|
35250
|
-
};
|
35251
35215
|
var prettyDictEntries = (dictAnn) => (v) => (v1) => {
|
35252
35216
|
if (v1.tag === "Nil") {
|
35253
35217
|
return empty3;
|
@@ -35276,9 +35240,9 @@ var prettyBinApp = (dictAnn) => (v) => (v1) => {
|
|
35276
35240
|
};
|
35277
35241
|
var prettyAppChain = (dictAnn) => (v) => {
|
35278
35242
|
if (v.tag === "App") {
|
35279
|
-
return beside(prettyAppChain(dictAnn)(v._2))(prettySimple(dictAnn)(v._3));
|
35243
|
+
return beside(prettyAppChain(dictAnn)(v._2))(prettySimple(isSimpleExpr1)(prettyExpr1(dictAnn))(v._3));
|
35280
35244
|
}
|
35281
|
-
return prettySimple(dictAnn)(v);
|
35245
|
+
return prettySimple(isSimpleExpr1)(prettyExpr1(dictAnn))(v);
|
35282
35246
|
};
|
35283
35247
|
|
35284
35248
|
// output-es/Val/index.js
|
@@ -35441,6 +35405,17 @@ var highlightableVertex = {
|
|
35441
35405
|
highlightIf: (v) => (doc2) => beside(beside(doc2)(checkOneLine(split("\n")(" _"))))(checkOneLine(split("\n")(" \u27E8" + v + "\u27E9")))
|
35442
35406
|
};
|
35443
35407
|
var highlightableUnit = { highlightIf: (v) => identity28 };
|
35408
|
+
var highlightableBoolean = {
|
35409
|
+
highlightIf: (v) => {
|
35410
|
+
if (!v) {
|
35411
|
+
return identity28;
|
35412
|
+
}
|
35413
|
+
if (v) {
|
35414
|
+
return (doc2) => beside(beside(checkOneLine(split("\n")(" \u2E28")))(doc2))(checkOneLine(split("\n")(" \u2E29")));
|
35415
|
+
}
|
35416
|
+
fail();
|
35417
|
+
}
|
35418
|
+
};
|
35444
35419
|
var functorMatrixDim = { map: (f) => (m) => $Tuple(m._1, f(m._2)) };
|
35445
35420
|
var functorVal = { map: (f) => (m) => $Val(f(m._1), functorDocOpt(functorVal).map(f)(m._2), functorBaseVal.map(f)(m._3)) };
|
35446
35421
|
var functorMatrixRep = {
|
@@ -36520,6 +36495,22 @@ function type_(e) {
|
|
36520
36495
|
var $SelState = (tag, _1) => ({ tag, _1 });
|
36521
36496
|
var $SelectionType = (tag) => tag;
|
36522
36497
|
var $\u{1D54A} = (tag) => tag;
|
36498
|
+
var genericShowSum6 = /* @__PURE__ */ (() => {
|
36499
|
+
const $0 = genericShowConstructor(genericShowArgsNoArguments)({ reflectSymbol: () => "Inert" });
|
36500
|
+
return (dictGenericShow1) => ({
|
36501
|
+
"genericShow'": (v) => {
|
36502
|
+
if (v.tag === "Inl") {
|
36503
|
+
return $0["genericShow'"](v._1);
|
36504
|
+
}
|
36505
|
+
if (v.tag === "Inr") {
|
36506
|
+
return dictGenericShow1["genericShow'"](v._1);
|
36507
|
+
}
|
36508
|
+
fail();
|
36509
|
+
}
|
36510
|
+
});
|
36511
|
+
})();
|
36512
|
+
var ReactiveIsSymbol = { reflectSymbol: () => "Reactive" };
|
36513
|
+
var SelStatesIsSymbol = { reflectSymbol: () => "SelStates" };
|
36523
36514
|
var sequence = /* @__PURE__ */ (() => traversableArray.traverse(applicativeAff)(identity5))();
|
36524
36515
|
var sequence_ = /* @__PURE__ */ traverse_(applicativeEffect)(foldableArray)(identity4);
|
36525
36516
|
var clamp = (low) => (hi) => (x2) => {
|
@@ -36572,6 +36563,49 @@ var meetSemilatticeSelStates = (dictMeetSemilattice) => ({
|
|
36572
36563
|
fail();
|
36573
36564
|
}
|
36574
36565
|
});
|
36566
|
+
var highlightableSelStates = (dictHighlightable) => (dictJoinSemilattice) => ({
|
36567
|
+
highlightIf: (v) => {
|
36568
|
+
if (v.tag === "Inert") {
|
36569
|
+
return highlightableBoolean.highlightIf(false);
|
36570
|
+
}
|
36571
|
+
if (v.tag === "Reactive") {
|
36572
|
+
return dictHighlightable.highlightIf(dictJoinSemilattice.join(v._1.persistent)(v._1.transient));
|
36573
|
+
}
|
36574
|
+
fail();
|
36575
|
+
}
|
36576
|
+
});
|
36577
|
+
var prettyP2 = /* @__PURE__ */ prettyP(/* @__PURE__ */ prettyVal(/* @__PURE__ */ highlightableSelStates(highlightableBoolean)(joinSemilatticeBoolean)));
|
36578
|
+
var genericShow1 = (dictGenericShow) => (x2) => dictGenericShow["genericShow'"]((() => {
|
36579
|
+
if (x2.tag === "Inert") {
|
36580
|
+
return $Sum("Inl", NoArguments);
|
36581
|
+
}
|
36582
|
+
if (x2.tag === "Reactive") {
|
36583
|
+
return $Sum("Inr", x2._1);
|
36584
|
+
}
|
36585
|
+
fail();
|
36586
|
+
})());
|
36587
|
+
var showSelState = (dictShow) => ({ show: genericShow1(genericShowSum6(genericShowConstructor({ genericShowArgs: (v) => [dictShow.show(v)] })(ReactiveIsSymbol))) });
|
36588
|
+
var showSelStates = (dictShow) => ({
|
36589
|
+
show: (() => {
|
36590
|
+
const $0 = genericShowConstructor((() => {
|
36591
|
+
const $02 = showSelState({
|
36592
|
+
show: (record) => {
|
36593
|
+
const v = cons(intercalate(": ")(["persistent", dictShow.show(record.persistent)]))(cons(intercalate(": ")([
|
36594
|
+
"transient",
|
36595
|
+
dictShow.show(record.transient)
|
36596
|
+
]))([]));
|
36597
|
+
if (v.length === 0) {
|
36598
|
+
return "{}";
|
36599
|
+
}
|
36600
|
+
return intercalate(" ")(["{", intercalate(", ")(v), "}"]);
|
36601
|
+
}
|
36602
|
+
});
|
36603
|
+
return { genericShowArgs: (v) => [$02.show(v)] };
|
36604
|
+
})())(SelStatesIsSymbol);
|
36605
|
+
return (x2) => $0["genericShow'"](x2);
|
36606
|
+
})()
|
36607
|
+
});
|
36608
|
+
var show1 = /* @__PURE__ */ (() => showSelStates(showBoolean).show)();
|
36575
36609
|
var functorSelState = {
|
36576
36610
|
map: (f) => (m) => {
|
36577
36611
|
if (m.tag === "Inert") {
|
@@ -36642,25 +36676,25 @@ var to\u{1D539} = (v) => {
|
|
36642
36676
|
}
|
36643
36677
|
fail();
|
36644
36678
|
};
|
36645
|
-
var selector
|
36646
|
-
functorVal.map((
|
36647
|
-
if (
|
36679
|
+
var selector = (v) => (v1) => $Tuple(
|
36680
|
+
functorVal.map((x2) => spyWhen(true)("to ")(show1)((() => {
|
36681
|
+
if (x2.tag === "Inert") {
|
36648
36682
|
return Inert;
|
36649
36683
|
}
|
36650
|
-
if (
|
36684
|
+
if (x2.tag === "Reactive") {
|
36651
36685
|
if (v === "mousedown") {
|
36652
|
-
return $SelState("Reactive", { persistent: !
|
36686
|
+
return $SelState("Reactive", { persistent: !x2._1.persistent, transient: x2._1.transient });
|
36653
36687
|
}
|
36654
36688
|
if (v === "mouseenter") {
|
36655
|
-
return $SelState("Reactive", { transient: true, persistent:
|
36689
|
+
return $SelState("Reactive", { transient: true, persistent: x2._1.persistent });
|
36656
36690
|
}
|
36657
36691
|
if (v === "mouseleave") {
|
36658
|
-
return $SelState("Reactive", { transient: false, persistent:
|
36692
|
+
return $SelState("Reactive", { transient: false, persistent: x2._1.persistent });
|
36659
36693
|
}
|
36660
36694
|
return throwException(error("Unsupported event type"))();
|
36661
36695
|
}
|
36662
36696
|
fail();
|
36663
|
-
})(v1),
|
36697
|
+
})()))(spyWhen(true)("Setting selStates of ")(prettyP2)(v1)),
|
36664
36698
|
(() => {
|
36665
36699
|
if (v === "mousedown") {
|
36666
36700
|
return Persistent;
|
@@ -36744,7 +36778,7 @@ var getSel = (selType) => (s) => {
|
|
36744
36778
|
fail();
|
36745
36779
|
};
|
36746
36780
|
var eventData = (x2) => definitely("absurd")(nullable(_target(x2), Nothing, Just)).__data__;
|
36747
|
-
var selectionEventData$p = /* @__PURE__ */ fanout(categoryFn)(strongFn)(eventData)((x2) => selector
|
36781
|
+
var selectionEventData$p = /* @__PURE__ */ fanout(categoryFn)(strongFn)(eventData)((x2) => selector(type_(x2)));
|
36748
36782
|
var dict = (toDict) => (v) => toDict(v._3.tag === "Dictionary" ? v._3._1 : typeError(v._3)("Dictionary"));
|
36749
36783
|
var css = {
|
36750
36784
|
sel: {
|
@@ -37076,6 +37110,11 @@ function computed(element, prop) {
|
|
37076
37110
|
function canvasFont(el) {
|
37077
37111
|
return `${computed(el, "font-weight")} ${computed(el, "font-size")} ${computed(el, "font-family")}`;
|
37078
37112
|
}
|
37113
|
+
function assertNonEmpty(sel) {
|
37114
|
+
if (sel.empty()) {
|
37115
|
+
throw new Error("Assertion failed: D3 selection is empty");
|
37116
|
+
}
|
37117
|
+
}
|
37079
37118
|
function textDimensions(class_) {
|
37080
37119
|
return (text2) => {
|
37081
37120
|
const element = document.createElement("text");
|
@@ -37161,23 +37200,24 @@ function isEmpty3(sel) {
|
|
37161
37200
|
return sel.empty();
|
37162
37201
|
};
|
37163
37202
|
}
|
37164
|
-
function rootSelect(
|
37203
|
+
function rootSelect(selector2) {
|
37165
37204
|
return () => {
|
37166
|
-
return select_default2(
|
37205
|
+
return select_default2(selector2);
|
37167
37206
|
};
|
37168
37207
|
}
|
37169
|
-
function select(
|
37208
|
+
function select(selector2) {
|
37170
37209
|
return (sel) => {
|
37210
|
+
assertNonEmpty(sel);
|
37171
37211
|
return () => {
|
37172
|
-
return sel.select(
|
37212
|
+
return sel.select(selector2);
|
37173
37213
|
};
|
37174
37214
|
};
|
37175
37215
|
}
|
37176
|
-
function selectAll2(
|
37216
|
+
function selectAll2(selector2) {
|
37177
37217
|
return (sel) => {
|
37178
37218
|
return () => {
|
37179
37219
|
const sels = [];
|
37180
|
-
sel.selectAll(
|
37220
|
+
sel.selectAll(selector2).each(function() {
|
37181
37221
|
sels.push(select_default2(this));
|
37182
37222
|
});
|
37183
37223
|
return sels;
|
@@ -37248,6 +37288,7 @@ function setDatum(d) {
|
|
37248
37288
|
function on(eventType) {
|
37249
37289
|
return (listener) => {
|
37250
37290
|
return (sel) => {
|
37291
|
+
assertNonEmpty(sel);
|
37251
37292
|
return () => {
|
37252
37293
|
return sel.on(eventType, (e) => {
|
37253
37294
|
if (e.button == 0) {
|
@@ -38283,25 +38324,32 @@ var viewBarChartUnit = {
|
|
38283
38324
|
// output-es/App.View.Paragraph/index.js
|
38284
38325
|
var $Paragraph = (_1, _2) => ({ tag: "Paragraph", _1, _2 });
|
38285
38326
|
var sequence_2 = /* @__PURE__ */ traverse_(applicativeEffect)(foldableArray)(identity4);
|
38286
|
-
var
|
38287
|
-
|
38288
|
-
|
38289
|
-
const $1 =
|
38290
|
-
|
38291
|
-
|
38292
|
-
|
38293
|
-
|
38294
|
-
|
38295
|
-
|
38296
|
-
|
38297
|
-
|
38298
|
-
|
38299
|
-
const
|
38300
|
-
sequence_2(
|
38301
|
-
|
38302
|
-
|
38327
|
+
var viewParagraphUnit = {
|
38328
|
+
createElement: (v) => (v1) => (parent) => {
|
38329
|
+
const $0 = v1._2;
|
38330
|
+
const $1 = createChild(parent)(showElementType.show(Div))(fromFoldable9([
|
38331
|
+
$Tuple("class", "para-text")
|
38332
|
+
]));
|
38333
|
+
return () => {
|
38334
|
+
const rootElement = $1();
|
38335
|
+
sequence_2(arrayMap((view2) => view2((dictView) => (v2) => dictView.createElement()(v2)(rootElement)))($0))();
|
38336
|
+
return rootElement;
|
38337
|
+
};
|
38338
|
+
},
|
38339
|
+
setSelection: (v) => (v1) => (select2) => (rootElement) => {
|
38340
|
+
const $0 = v1._1;
|
38341
|
+
return sequence_2(zipWith((i) => (view2) => {
|
38342
|
+
const $1 = select(":scope > :nth-child(" + showIntImpl(i + 1 | 0) + ")")(rootElement);
|
38343
|
+
return () => {
|
38344
|
+
const child = $1();
|
38345
|
+
return view2((dictView) => (v2) => dictView.setSelection()(v2)((() => {
|
38346
|
+
const $2 = $0 ? docElement(i) : (x2) => constrArg("Paragraph")(0)(listElement(i)(x2));
|
38347
|
+
return (x2) => select2($2(x2));
|
38348
|
+
})())(child))();
|
38349
|
+
};
|
38350
|
+
})(range(0)(v1._2.length - 1 | 0))(v1._2));
|
38351
|
+
}
|
38303
38352
|
};
|
38304
|
-
var viewParagraphUnit = { createElement: (v) => createRootElement$p, setSelection: (v) => setSelStates$p };
|
38305
38353
|
|
38306
38354
|
// output-es/App.View.DocView/index.js
|
38307
38355
|
var viewDocViewUnit = {
|
@@ -38312,7 +38360,7 @@ var viewDocViewUnit = {
|
|
38312
38360
|
return () => {
|
38313
38361
|
const rootElement = $1();
|
38314
38362
|
v1.view((dictView) => (v3) => dictView.createElement()(v3)(rootElement))();
|
38315
|
-
|
38363
|
+
viewParagraphUnit.createElement()($0)(rootElement)();
|
38316
38364
|
return rootElement;
|
38317
38365
|
};
|
38318
38366
|
}
|
@@ -38324,12 +38372,12 @@ var viewDocViewUnit = {
|
|
38324
38372
|
setSelection: (v) => (v1) => (v2) => (v3) => {
|
38325
38373
|
if (v1.doc.tag === "Just") {
|
38326
38374
|
const $0 = v1.doc._1;
|
38327
|
-
const $1 = select(":nth-child(1)")(v3);
|
38375
|
+
const $1 = select(":scope > :nth-child(1)")(v3);
|
38328
38376
|
return () => {
|
38329
38377
|
const viewElem = $1();
|
38330
38378
|
v1.view((dictView) => (v4) => dictView.setSelection()(v4)(v2)(viewElem))();
|
38331
|
-
const docElem = select(":nth-child(2)")(v3)();
|
38332
|
-
|
38379
|
+
const docElem = select(":scope > :nth-child(2)")(v3)();
|
38380
|
+
viewParagraphUnit.setSelection()($0)(v2)(docElem)();
|
38333
38381
|
};
|
38334
38382
|
}
|
38335
38383
|
if (v1.doc.tag === "Nothing") {
|
@@ -38765,29 +38813,30 @@ var matrixRep = (v) => ({
|
|
38765
38813
|
|
38766
38814
|
// output-es/App.View.MultiView/index.js
|
38767
38815
|
var $MultiView = (_1) => ({ tag: "MultiView", _1 });
|
38768
|
-
var toUnfoldable9 = /* @__PURE__ */ toAscUnfoldable(unfoldableArray);
|
38769
38816
|
var sequence_3 = /* @__PURE__ */ traverse_(applicativeEffect)(foldableArray)(identity4);
|
38770
|
-
var
|
38771
|
-
|
38772
|
-
|
38773
|
-
const $
|
38774
|
-
const $
|
38817
|
+
var toUnfoldable9 = /* @__PURE__ */ toAscUnfoldable(unfoldableArray);
|
38818
|
+
var viewMultiViewUnit = {
|
38819
|
+
createElement: (v) => (v1) => (parent) => {
|
38820
|
+
const $0 = v1._1;
|
38821
|
+
const $1 = createChild(parent)(showElementType.show(Div))(fromFoldable9([]));
|
38775
38822
|
return () => {
|
38776
|
-
const
|
38777
|
-
|
38823
|
+
const rootElement = $1();
|
38824
|
+
sequence_3(arrayMap((v2) => v2._2((dictView) => (v3) => dictView.createElement()(v3)(rootElement)))(toUnfoldable9($0)))();
|
38825
|
+
return rootElement;
|
38778
38826
|
};
|
38779
|
-
}
|
38780
|
-
|
38781
|
-
|
38782
|
-
|
38783
|
-
|
38784
|
-
|
38785
|
-
|
38786
|
-
|
38787
|
-
|
38788
|
-
|
38827
|
+
},
|
38828
|
+
setSelection: (v) => (v1) => (select2) => (rootElement) => sequence_3((() => {
|
38829
|
+
const $0 = toUnfoldable9(v1._1);
|
38830
|
+
return zipWith((i) => (v2) => {
|
38831
|
+
const $1 = v2._1;
|
38832
|
+
const $2 = select(":scope > :nth-child(" + showIntImpl(i + 1 | 0) + ")")(rootElement);
|
38833
|
+
return () => {
|
38834
|
+
const child = $2();
|
38835
|
+
v2._2((dictView) => (v3) => dictView.setSelection()(v3)((x2) => select2(multiViewEntry($1)(x2)))(child))();
|
38836
|
+
};
|
38837
|
+
})(range(0)($0.length - 1 | 0))($0);
|
38838
|
+
})())
|
38789
38839
|
};
|
38790
|
-
var viewMultiViewUnit = { createElement: (v) => createRootElement$p2, setSelection: (v) => setSelStates$p2 };
|
38791
38840
|
|
38792
38841
|
// output-es/App.View.ScatterPlot/foreign.js
|
38793
38842
|
function setSelection_2({ point_attrs, eventListener: eventListener2, withScatterPlotPoint }, {
|
@@ -39169,9 +39218,9 @@ var viewTableViewUnit = {
|
|
39169
39218
|
var arrayDictToArray2 = (x2) => arrayMap((a) => arrayMap((a$1) => $$get2(showString)(mapDictString)(a$1)(a))(x2));
|
39170
39219
|
|
39171
39220
|
// output-es/App.View.Text/index.js
|
39172
|
-
var
|
39173
|
-
var textAttrs = (dictTextual) => (
|
39174
|
-
const $0 = dictTextual.getText(
|
39221
|
+
var textualText = { getText: unsafeCoerce };
|
39222
|
+
var textAttrs = (dictTextual) => (text2) => {
|
39223
|
+
const $0 = dictTextual.getText(text2);
|
39175
39224
|
return [
|
39176
39225
|
$Tuple("border-bottom", isTransient($0._2) ? "1px solid blue" : "none"),
|
39177
39226
|
$Tuple(
|
@@ -39209,14 +39258,12 @@ var viewTextUnit = {
|
|
39209
39258
|
return setText($0)(rootElement)();
|
39210
39259
|
};
|
39211
39260
|
},
|
39212
|
-
setSelection: (v) => (
|
39213
|
-
const $0 =
|
39214
|
-
const $1 = select(":nth-child(1)")(rootElement);
|
39261
|
+
setSelection: (v) => (text2) => (redraw) => (rootElement) => {
|
39262
|
+
const $0 = eventListener((x2) => redraw(selectionEventData$p(x2)._2));
|
39215
39263
|
return () => {
|
39216
|
-
const
|
39217
|
-
const
|
39218
|
-
|
39219
|
-
return for_2(["mousedown", "mouseenter", "mouseleave"])((ev) => on(ev)(listener)($2))();
|
39264
|
+
const listener = $0();
|
39265
|
+
const $1 = styles(rootElement)(fromFoldable9(textAttrs(textualText)(text2)))();
|
39266
|
+
return for_2(["mousedown", "mouseenter", "mouseleave"])((ev) => on(ev)(listener)($1))();
|
39220
39267
|
};
|
39221
39268
|
}
|
39222
39269
|
};
|
@@ -39498,7 +39545,7 @@ var view = () => (v) => (v1) => (v2) => {
|
|
39498
39545
|
}
|
39499
39546
|
if (v1._3._1 === "Paragraph") {
|
39500
39547
|
const vws = arrayMap(view()(v))(reflectValSelStates\u{1D54A}Array.from()(v1._3._2._1));
|
39501
|
-
return pack5($Paragraph(false,
|
39548
|
+
return pack5($Paragraph(false, zipWith(apply)(vws)(arrayMap((v$1) => Nothing)(vws))));
|
39502
39549
|
}
|
39503
39550
|
if (v1._3._1 === "Nil" || v1._3._1 === ":") {
|
39504
39551
|
const records = arrayMap(dict(identity30))(reflectValSelStates\u{1D54A}Array.from()(v1));
|
@@ -40898,13 +40945,13 @@ var string3 = (str) => consumeWith((input) => {
|
|
40898
40945
|
});
|
40899
40946
|
|
40900
40947
|
// output-es/Parsing.String.Basic/index.js
|
40901
|
-
var
|
40948
|
+
var show12 = /* @__PURE__ */ showArrayImpl(showCharImpl);
|
40902
40949
|
var satisfyCP = (p) => satisfy((x2) => p(toCharCode(x2)));
|
40903
40950
|
var space = /* @__PURE__ */ withErrorMessage(/* @__PURE__ */ satisfyCP(isSpace))("space");
|
40904
40951
|
var upper2 = /* @__PURE__ */ withErrorMessage(/* @__PURE__ */ satisfyCP(isUpper))("uppercase letter");
|
40905
|
-
var oneOf = (ss) => withLazyErrorMessage(satisfy((a) => elem(eqChar)(a)(ss)))((v) => "one of " +
|
40952
|
+
var oneOf = (ss) => withLazyErrorMessage(satisfy((a) => elem(eqChar)(a)(ss)))((v) => "one of " + show12(ss));
|
40906
40953
|
var octDigit = /* @__PURE__ */ withErrorMessage(/* @__PURE__ */ satisfyCP(isOctDigit))("oct digit");
|
40907
|
-
var noneOf = (ss) => withLazyErrorMessage(satisfy((a) => notElem(eqChar)(a)(ss)))((v) => "none of " +
|
40954
|
+
var noneOf = (ss) => withLazyErrorMessage(satisfy((a) => notElem(eqChar)(a)(ss)))((v) => "none of " + show12(ss));
|
40908
40955
|
var letter = /* @__PURE__ */ withErrorMessage(/* @__PURE__ */ satisfyCP(isAlpha))("letter");
|
40909
40956
|
var hexDigit = /* @__PURE__ */ withErrorMessage(/* @__PURE__ */ satisfyCP(isHexDigit))("hex digit");
|
40910
40957
|
var digit = /* @__PURE__ */ withErrorMessage(/* @__PURE__ */ satisfyCP(isDecDigit))("digit");
|