@jsenv/plugin-toolbar 1.5.22 → 1.5.24

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.
@@ -143,10 +143,10 @@ input:focus-visible {
143
143
  }
144
144
 
145
145
  #execution_completed_icon[data-animate] path {
146
- transform-origin: 50%;
146
+ stroke: green;
147
147
  stroke-dasharray: 48;
148
148
  stroke-dashoffset: 48px;
149
- stroke: green;
149
+ transform-origin: 50%;
150
150
  animation: .5s cubic-bezier(.65, 0, .45, 1) forwards stroke;
151
151
  }
152
152
 
@@ -250,9 +250,9 @@ input:focus-visible {
250
250
  }
251
251
 
252
252
  .server_indicator_ring {
253
+ fill: #0000;
253
254
  stroke: #cecece75;
254
255
  stroke-width: 4px;
255
- fill: #0000;
256
256
  transform-origin: center;
257
257
  animation: 1.2s ease-out infinite pulse;
258
258
  }
@@ -397,9 +397,9 @@ html[data-theme="light"] .execution-link {
397
397
  }
398
398
 
399
399
  #settings_box {
400
- text-align: center;
401
- color: #fff;
402
400
  z-index: -1;
401
+ color: #fff;
402
+ text-align: center;
403
403
  background-color: #030713;
404
404
  border-radius: 5px 5px 0 0;
405
405
  min-width: 250px;
@@ -496,8 +496,8 @@ label {
496
496
  }
497
497
 
498
498
  #settings_box .category_title svg {
499
- fill: currentColor;
500
499
  vertical-align: top;
500
+ fill: currentColor;
501
501
  width: 18px;
502
502
  height: 18px;
503
503
  margin-right: 5px;
@@ -539,8 +539,8 @@ label {
539
539
  }
540
540
 
541
541
  .switch .square {
542
- content: "";
543
542
  color: #030713;
543
+ content: "";
544
544
  background-color: #4c4c4c;
545
545
  border-radius: .15em;
546
546
  width: 1em;
@@ -599,8 +599,8 @@ label {
599
599
  }
600
600
 
601
601
  #menu_overflow {
602
- visibility: hidden;
603
602
  opacity: 0;
603
+ visibility: hidden;
604
604
  background: #404040;
605
605
  width: 100%;
606
606
  height: 100%;
@@ -617,8 +617,8 @@ label {
617
617
  }
618
618
 
619
619
  #menu_overflow > * {
620
- vertical-align: middle;
621
620
  text-align: center;
621
+ vertical-align: middle;
622
622
  }
623
623
 
624
624
  #toolbar[data-menu-overflow-enabled] #menu_overflow_button {
@@ -634,8 +634,8 @@ label {
634
634
  }
635
635
 
636
636
  #toolbar[data-menu-overflow-opened] #menu_overflow {
637
- visibility: visible;
638
637
  opacity: 1;
638
+ visibility: visible;
639
639
  margin-left: -40px;
640
640
  display: block;
641
641
  left: 0;
@@ -701,14 +701,14 @@ label {
701
701
  }
702
702
 
703
703
  .tooltip_action a {
704
- vertical-align: middle;
705
704
  color: #fff;
705
+ vertical-align: middle;
706
706
  text-decoration: none;
707
707
  }
708
708
 
709
709
  .tooltip_icon {
710
- fill: #fff;
711
710
  vertical-align: middle;
711
+ fill: #fff;
712
712
  width: 20px;
713
713
  height: 20px;
714
714
  }
@@ -733,8 +733,8 @@ label {
733
733
  }
734
734
 
735
735
  .toolbar_icon {
736
- fill: #cecece;
737
736
  color: #cecece;
737
+ fill: #cecece;
738
738
  height: 40px;
739
739
  }
740
740
 
@@ -185,7 +185,7 @@ const appendIntoRespectingLineBreaksAndIndentation = (node, parentNode, {
185
185
  parentNode.appendChild(document.createTextNode("\n".concat(indentMinusOne)));
186
186
  };
187
187
  const createToolbarTriggerNode = () => {
188
- const css = /* css */"\n #jsenv_toolbar_trigger {\n display: block;\n overflow: hidden;\n position: fixed;\n z-index: 1000;\n bottom: -32px;\n right: 20px;\n height: 40px;\n width: 40px;\n padding: 0;\n margin: 0;\n border-radius: 5px 5px 0 0;\n border: 1px solid rgba(0, 0, 0, 0.33);\n border-bottom: none;\n box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.46);\n background: transparent;\n text-align: center;\n transition: 600ms;\n }\n\n #jsenv_toolbar_trigger:hover {\n cursor: pointer;\n }\n\n #jsenv_toolbar_trigger[data-expanded] {\n bottom: 0;\n }\n\n #jsenv_toolbar_trigger_icon {\n width: 35px;\n height: 35px;\n opacity: 0;\n transition: 600ms;\n }\n\n #jsenv_toolbar_trigger[data-expanded] #jsenv_toolbar_trigger_icon {\n opacity: 1;\n }\n ";
188
+ const css = /* css */"\n #jsenv_toolbar_trigger {\n position: fixed;\n right: 20px;\n bottom: -32px;\n z-index: 1000;\n display: block;\n width: 40px;\n height: 40px;\n margin: 0;\n padding: 0;\n text-align: center;\n background: transparent;\n border: 1px solid rgba(0, 0, 0, 0.33);\n border-bottom: none;\n border-radius: 5px 5px 0 0;\n box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.46);\n transition: 600ms;\n overflow: hidden;\n }\n\n #jsenv_toolbar_trigger:hover {\n cursor: pointer;\n }\n\n #jsenv_toolbar_trigger[data-expanded] {\n bottom: 0;\n }\n\n #jsenv_toolbar_trigger_icon {\n width: 35px;\n height: 35px;\n opacity: 0;\n transition: 600ms;\n }\n\n #jsenv_toolbar_trigger[data-expanded] #jsenv_toolbar_trigger_icon {\n opacity: 1;\n }\n ";
189
189
  const html = /* html */" <div\n id=\"jsenv_toolbar_trigger\"\n style=\"display:none\"\n >\n <style>\n ".concat(css, "\n </style>\n <svg id=\"jsenv_toolbar_trigger_icon\">\n <use xlink:href=\"").concat(jsenvLogoSvgUrl, "#jsenv_logo\"></use>\n </svg>\n </div>");
190
190
  class JsenvToolbarTriggerHtmlElement extends HTMLElement {
191
191
  constructor() {
@@ -1,6 +1,6 @@
1
1
  var n$1,
2
2
  u$2;
3
- function k$1(n) {
3
+ function k$2(n) {
4
4
  return n.children;
5
5
  }
6
6
  n$1 = {
@@ -32,8 +32,8 @@ var t$1,
32
32
  l$1 = e$1.diffed,
33
33
  m = e$1.__c,
34
34
  s$1 = e$1.unmount,
35
- p$1 = e$1.__;
36
- function d$1(n, t) {
35
+ p$2 = e$1.__;
36
+ function d$2(n, t) {
37
37
  e$1.__h && e$1.__h(r$1, n, f$1 || t), f$1 = 0;
38
38
  var u = r$1.__H || (r$1.__H = {
39
39
  __: [],
@@ -41,11 +41,11 @@ function d$1(n, t) {
41
41
  });
42
42
  return n >= u.__.length && u.__.push({}), u.__[n];
43
43
  }
44
- function h$2(n) {
44
+ function h$1(n) {
45
45
  return f$1 = 1, y$2(D, n);
46
46
  }
47
47
  function y$2(n, u, i) {
48
- var f = d$1(t$1++, 2);
48
+ var f = d$2(t$1++, 2);
49
49
  if (f.t = n, !f.__c && (f.__ = [D(void 0, u), function (n) {
50
50
  var t = f.__N ? f.__N[0] : f.__[0],
51
51
  r = f.t(t, n);
@@ -80,8 +80,8 @@ function y$2(n, u, i) {
80
80
  }
81
81
  return f.__N || f.__;
82
82
  }
83
- function q$1(n, r) {
84
- var u = d$1(t$1++, 7);
83
+ function q(n, r) {
84
+ var u = d$2(t$1++, 7);
85
85
  return C(u.__H, r) && (u.__ = n(), u.__H = r, u.__h = n), u.__;
86
86
  }
87
87
  function g$2() {
@@ -94,7 +94,7 @@ function g$2() {
94
94
  e$1.__b = function (n) {
95
95
  r$1 = null, a$1 && a$1(n);
96
96
  }, e$1.__ = function (n, t) {
97
- n && t.__k && t.__k.__m && (n.__m = t.__k.__m), p$1 && p$1(n, t);
97
+ n && t.__k && t.__k.__m && (n.__m = t.__k.__m), p$2 && p$2(n, t);
98
98
  }, e$1.__r = function (n) {
99
99
  v$2 && v$2(n), t$1 = 0;
100
100
  var i = (r$1 = n.__c).__H;
@@ -131,14 +131,14 @@ e$1.__b = function (n) {
131
131
  }
132
132
  }), r.__H = void 0, t && e$1.__e(t, r.__v));
133
133
  };
134
- var k = "function" == typeof requestAnimationFrame;
134
+ var k$1 = "function" == typeof requestAnimationFrame;
135
135
  function w$2(n) {
136
136
  var t,
137
137
  r = function () {
138
- clearTimeout(u), k && cancelAnimationFrame(t), setTimeout(n);
138
+ clearTimeout(u), k$1 && cancelAnimationFrame(t), setTimeout(n);
139
139
  },
140
140
  u = setTimeout(r, 35);
141
- k && (t = requestAnimationFrame(r));
141
+ k$1 && (t = requestAnimationFrame(r));
142
142
  }
143
143
  function z(n) {
144
144
  var t = r$1,
@@ -199,7 +199,7 @@ function o(i) {
199
199
  }
200
200
  }
201
201
  let n, s;
202
- function h$1(i) {
202
+ function h(i) {
203
203
  const t = n;
204
204
  n = void 0;
205
205
  try {
@@ -261,7 +261,7 @@ c.prototype.S = function (i) {
261
261
  if (t !== i && void 0 === i.e) {
262
262
  i.x = t;
263
263
  this.t = i;
264
- if (void 0 !== t) t.e = i;else h$1(() => {
264
+ if (void 0 !== t) t.e = i;else h(() => {
265
265
  var i;
266
266
  null == (i = this.W) || i.call(this);
267
267
  });
@@ -281,7 +281,7 @@ c.prototype.U = function (i) {
281
281
  }
282
282
  if (i === this.t) {
283
283
  this.t = o;
284
- if (void 0 === o) h$1(() => {
284
+ if (void 0 === o) h(() => {
285
285
  var i;
286
286
  null == (i = this.Z) || i.call(this);
287
287
  });
@@ -341,7 +341,7 @@ Object.defineProperty(c.prototype, "value", {
341
341
  }
342
342
  }
343
343
  });
344
- function d(i, t) {
344
+ function d$1(i, t) {
345
345
  return new c(i, t);
346
346
  }
347
347
  function v$1(i) {
@@ -454,7 +454,7 @@ Object.defineProperty(a.prototype, "value", {
454
454
  function w$1(i, t) {
455
455
  return new a(i, t);
456
456
  }
457
- function _$1(i) {
457
+ function _(i) {
458
458
  const o = i.u;
459
459
  i.u = void 0;
460
460
  if ("function" == typeof o) {
@@ -478,7 +478,7 @@ function b$1(i) {
478
478
  for (let t = i.s; void 0 !== t; t = t.n) t.S.U(t);
479
479
  i.x = void 0;
480
480
  i.s = void 0;
481
- _$1(i);
481
+ _(i);
482
482
  }
483
483
  function g$1(i) {
484
484
  if (n !== this) throw new Error("Out-of-order effect");
@@ -488,7 +488,7 @@ function g$1(i) {
488
488
  if (8 & this.f) b$1(this);
489
489
  t();
490
490
  }
491
- function p(i, t) {
491
+ function p$1(i, t) {
492
492
  this.x = i;
493
493
  this.u = void 0;
494
494
  this.s = void 0;
@@ -496,7 +496,7 @@ function p(i, t) {
496
496
  this.f = 32;
497
497
  this.name = null == t ? void 0 : t.name;
498
498
  }
499
- p.prototype.c = function () {
499
+ p$1.prototype.c = function () {
500
500
  const i = this.S();
501
501
  try {
502
502
  if (8 & this.f) return;
@@ -507,33 +507,33 @@ p.prototype.c = function () {
507
507
  i();
508
508
  }
509
509
  };
510
- p.prototype.S = function () {
510
+ p$1.prototype.S = function () {
511
511
  if (1 & this.f) throw new Error("Cycle detected");
512
512
  this.f |= 1;
513
513
  this.f &= -9;
514
- _$1(this);
514
+ _(this);
515
515
  l(this);
516
516
  r++;
517
517
  const i = n;
518
518
  n = this;
519
519
  return g$1.bind(this, i);
520
520
  };
521
- p.prototype.N = function () {
521
+ p$1.prototype.N = function () {
522
522
  if (!(2 & this.f)) {
523
523
  this.f |= 2;
524
524
  this.o = s;
525
525
  s = this;
526
526
  }
527
527
  };
528
- p.prototype.d = function () {
528
+ p$1.prototype.d = function () {
529
529
  this.f |= 8;
530
530
  if (!(1 & this.f)) b$1(this);
531
531
  };
532
- p.prototype.dispose = function () {
532
+ p$1.prototype.dispose = function () {
533
533
  this.d();
534
534
  };
535
535
  function E(i, t) {
536
- const o = new p(i, t);
536
+ const o = new p$1(i, t);
537
537
  try {
538
538
  o.c();
539
539
  } catch (i) {
@@ -545,41 +545,42 @@ function E(i, t) {
545
545
  return n;
546
546
  }
547
547
 
548
- let h,
549
- w,
550
- v = [];
548
+ const d = "undefined" != typeof window && !!window.__PREACT_SIGNALS_DEVTOOLS__;
549
+ let p,
550
+ v,
551
+ g = [];
551
552
  E(function () {
552
- h = this.N;
553
+ p = this.N;
553
554
  })();
554
- function y(i, n) {
555
- n$1[i] = n.bind(null, n$1[i] || (() => {}));
555
+ function b(t, e) {
556
+ n$1[t] = e.bind(null, n$1[t] || (() => {}));
556
557
  }
557
- function _(i) {
558
- if (w) w();
559
- w = i && i.S();
558
+ function y(t) {
559
+ if (v) v();
560
+ v = t && t.S();
560
561
  }
561
- function g({
562
- data: i
562
+ function w({
563
+ data: t
563
564
  }) {
564
- const t = useSignal(i);
565
- t.value = i;
566
- const [e, f] = q$1(() => {
567
- let i = this,
568
- e = this.__v;
569
- while (e = e.__) if (e.__c) {
570
- e.__c.__$f |= 4;
565
+ const i = useSignal(t);
566
+ i.value = t;
567
+ const [n, f] = q(() => {
568
+ let t = this,
569
+ n = this.__v;
570
+ while (n = n.__) if (n.__c) {
571
+ n.__c.__$f |= 4;
571
572
  break;
572
573
  }
573
574
  const o = w$1(() => {
574
- let i = t.value.value;
575
- return 0 === i ? 0 : true === i ? "" : i || "";
575
+ let t = i.value.value;
576
+ return 0 === t ? 0 : true === t ? "" : t || "";
576
577
  }),
577
578
  f = w$1(() => !Array.isArray(o.value) && !u$2(o.value)),
578
579
  r = E(function () {
579
- this.N = F;
580
+ this.N = M;
580
581
  if (f.value) {
581
- const t = o.value;
582
- if (i.__v && i.__v.__e && 3 === i.__v.__e.nodeType) i.__v.__e.data = t;
582
+ const i = o.value;
583
+ if (t.__v && t.__v.__e && 3 === t.__v.__e.nodeType) t.__v.__e.data = i;
583
584
  }
584
585
  }),
585
586
  u = this.__$u.d;
@@ -589,9 +590,9 @@ function g({
589
590
  };
590
591
  return [f, o];
591
592
  }, []);
592
- return e.value ? f.peek() : f.value;
593
+ return n.value ? f.peek() : f.value;
593
594
  }
594
- g.displayName = "ReactiveTextNode";
595
+ w.displayName = "ReactiveTextNode";
595
596
  Object.defineProperties(c.prototype, {
596
597
  constructor: {
597
598
  configurable: true,
@@ -599,7 +600,7 @@ Object.defineProperties(c.prototype, {
599
600
  },
600
601
  type: {
601
602
  configurable: true,
602
- value: g
603
+ value: w
603
604
  },
604
605
  props: {
605
606
  configurable: true,
@@ -614,147 +615,147 @@ Object.defineProperties(c.prototype, {
614
615
  value: 1
615
616
  }
616
617
  });
617
- y("__b", (i, t) => {
618
- if ("function" == typeof t.type && "undefined" != typeof window && window.__PREACT_SIGNALS_DEVTOOLS__) window.__PREACT_SIGNALS_DEVTOOLS__.exitComponent();
619
- if ("string" == typeof t.type) {
620
- let i,
621
- n = t.props;
622
- for (let e in n) {
623
- if ("children" === e) continue;
624
- let o = n[e];
618
+ b("__b", (t, i) => {
619
+ if ("string" == typeof i.type) {
620
+ let t,
621
+ e = i.props;
622
+ for (let n in e) {
623
+ if ("children" === n) continue;
624
+ let o = e[n];
625
625
  if (o instanceof c) {
626
- if (!i) t.__np = i = {};
627
- i[e] = o;
628
- n[e] = o.peek();
626
+ if (!t) i.__np = t = {};
627
+ t[n] = o;
628
+ e[n] = o.peek();
629
629
  }
630
630
  }
631
631
  }
632
- i(t);
632
+ t(i);
633
633
  });
634
- y("__r", (i, t) => {
635
- if ("function" == typeof t.type && "undefined" != typeof window && window.__PREACT_SIGNALS_DEVTOOLS__) window.__PREACT_SIGNALS_DEVTOOLS__.enterComponent(t);
636
- if (t.type !== k$1) {
637
- _();
638
- let i,
639
- n = t.__c;
640
- if (n) {
641
- n.__$f &= -2;
642
- i = n.__$u;
643
- if (void 0 === i) n.__$u = i = function (i) {
644
- let t;
634
+ b("__r", (t, i) => {
635
+ if (i.type !== k$2) {
636
+ y();
637
+ let t,
638
+ e = i.__c;
639
+ if (e) {
640
+ e.__$f &= -2;
641
+ t = e.__$u;
642
+ if (void 0 === t) e.__$u = t = function (t, i) {
643
+ let e;
645
644
  E(function () {
646
- t = this;
645
+ e = this;
646
+ }, {
647
+ name: i
647
648
  });
648
- t.c = () => {
649
- n.__$f |= 1;
650
- n.setState({});
651
- };
652
- return t;
653
- }();
649
+ e.c = t;
650
+ return e;
651
+ }(() => {
652
+ var i;
653
+ if (d) null == (i = t.y) || i.call(t);
654
+ e.__$f |= 1;
655
+ e.setState({});
656
+ }, "function" == typeof i.type ? i.type.displayName || i.type.name : "");
654
657
  }
655
- _(i);
658
+ y(t);
656
659
  }
657
- i(t);
660
+ t(i);
658
661
  });
659
- y("__e", (i, t, n, e) => {
660
- if ("undefined" != typeof window && window.__PREACT_SIGNALS_DEVTOOLS__) window.__PREACT_SIGNALS_DEVTOOLS__.exitComponent();
661
- _();
662
- i(t, n, e);
662
+ b("__e", (t, i, e, n) => {
663
+ y();
664
+ t(i, e, n);
663
665
  });
664
- y("diffed", (i, t) => {
665
- if ("function" == typeof t.type && "undefined" != typeof window && window.__PREACT_SIGNALS_DEVTOOLS__) window.__PREACT_SIGNALS_DEVTOOLS__.exitComponent();
666
- _();
667
- let n;
668
- if ("string" == typeof t.type && (n = t.__e)) {
669
- let i = t.__np,
670
- e = t.props;
671
- if (i) {
672
- let t = n.U;
673
- if (t) for (let n in t) {
674
- let e = t[n];
675
- if (void 0 !== e && !(n in i)) {
676
- e.d();
677
- t[n] = void 0;
666
+ b("diffed", (t, i) => {
667
+ y();
668
+ let e;
669
+ if ("string" == typeof i.type && (e = i.__e)) {
670
+ let t = i.__np,
671
+ n = i.props;
672
+ if (t) {
673
+ let i = e.U;
674
+ if (i) for (let e in i) {
675
+ let n = i[e];
676
+ if (void 0 !== n && !(e in t)) {
677
+ n.d();
678
+ i[e] = void 0;
678
679
  }
679
680
  } else {
680
- t = {};
681
- n.U = t;
681
+ i = {};
682
+ e.U = i;
682
683
  }
683
- for (let o in i) {
684
- let f = t[o],
685
- r = i[o];
684
+ for (let o in t) {
685
+ let f = i[o],
686
+ r = t[o];
686
687
  if (void 0 === f) {
687
- f = b(n, o, r, e);
688
- t[o] = f;
689
- } else f.o(r, e);
688
+ f = k(e, o, r, n);
689
+ i[o] = f;
690
+ } else f.o(r, n);
690
691
  }
691
692
  }
692
693
  }
693
- i(t);
694
+ t(i);
694
695
  });
695
- function b(i, t, n, e) {
696
- const o = t in i && void 0 === i.ownerSVGElement,
697
- f = d(n);
696
+ function k(t, i, e, n) {
697
+ const o = i in t && void 0 === t.ownerSVGElement,
698
+ f = d$1(e);
698
699
  return {
699
- o: (i, t) => {
700
- f.value = i;
701
- e = t;
700
+ o: (t, i) => {
701
+ f.value = t;
702
+ n = i;
702
703
  },
703
704
  d: E(function () {
704
- this.N = F;
705
- const n = f.value.value;
706
- if (e[t] !== n) {
707
- e[t] = n;
708
- if (o) i[t] = n;else if (null != n && (false !== n || "-" === t[4])) i.setAttribute(t, n);else i.removeAttribute(t);
705
+ this.N = M;
706
+ const e = f.value.value;
707
+ if (n[i] !== e) {
708
+ n[i] = e;
709
+ if (o) t[i] = e;else if (null != e && (false !== e || "-" === i[4])) t.setAttribute(i, e);else t.removeAttribute(i);
709
710
  }
710
711
  })
711
712
  };
712
713
  }
713
- y("unmount", (i, t) => {
714
- if ("string" == typeof t.type) {
715
- let i = t.__e;
716
- if (i) {
717
- const t = i.U;
718
- if (t) {
719
- i.U = void 0;
720
- for (let i in t) {
721
- let n = t[i];
722
- if (n) n.d();
714
+ b("unmount", (t, i) => {
715
+ if ("string" == typeof i.type) {
716
+ let t = i.__e;
717
+ if (t) {
718
+ const i = t.U;
719
+ if (i) {
720
+ t.U = void 0;
721
+ for (let t in i) {
722
+ let e = i[t];
723
+ if (e) e.d();
723
724
  }
724
725
  }
725
726
  }
726
727
  } else {
727
- let i = t.__c;
728
- if (i) {
729
- const t = i.__$u;
730
- if (t) {
731
- i.__$u = void 0;
732
- t.d();
728
+ let t = i.__c;
729
+ if (t) {
730
+ const i = t.__$u;
731
+ if (i) {
732
+ t.__$u = void 0;
733
+ i.d();
733
734
  }
734
735
  }
735
736
  }
736
- i(t);
737
+ t(i);
737
738
  });
738
- y("__h", (i, t, n, e) => {
739
- if (e < 3 || 9 === e) t.__$f |= 2;
740
- i(t, n, e);
739
+ b("__h", (t, i, e, n) => {
740
+ if (n < 3 || 9 === n) i.__$f |= 2;
741
+ t(i, e, n);
741
742
  });
742
- function useSignal(i, t) {
743
- return h$2(() => d(i, t))[0];
743
+ function useSignal(t, i) {
744
+ return h$1(() => d$1(t, i))[0];
744
745
  }
745
- const q = i => {
746
+ const A = t => {
746
747
  queueMicrotask(() => {
747
- queueMicrotask(i);
748
+ queueMicrotask(t);
748
749
  });
749
750
  };
750
- function x() {
751
+ function F() {
751
752
  o(() => {
752
- let i;
753
- while (i = v.shift()) h.call(i);
753
+ let t;
754
+ while (t = g.shift()) p.call(t);
754
755
  });
755
756
  }
756
- function F() {
757
- if (1 === v.push(this)) (n$1.requestAnimationFrame || q)(x);
757
+ function M() {
758
+ if (1 === g.push(this)) (n$1.requestAnimationFrame || A)(F);
758
759
  }
759
760
 
760
- export { E, d, w$1 as w };
761
+ export { E, d$1 as d, w$1 as w };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jsenv/plugin-toolbar",
3
- "version": "1.5.22",
3
+ "version": "1.5.24",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/jsenv/core",
@@ -28,15 +28,15 @@
28
28
  "prepublishOnly": "npm run build"
29
29
  },
30
30
  "dependencies": {
31
- "@jsenv/ast": "6.7.17"
31
+ "@jsenv/ast": "6.7.19"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@jsenv/core": "../../",
35
35
  "@jsenv/filesystem": "../../tooling/filesystem",
36
36
  "@jsenv/plugin-toolbar": "./",
37
37
  "@jsenv/utils": "../../tooling/utils",
38
- "@preact/signals": "2.5.0",
39
- "playwright": "1.56.1"
38
+ "@preact/signals": "2.6.2",
39
+ "playwright": "1.58.1"
40
40
  },
41
41
  "publishConfig": {
42
42
  "access": "public"
@@ -207,23 +207,23 @@ const appendIntoRespectingLineBreaksAndIndentation = (
207
207
  const createToolbarTriggerNode = () => {
208
208
  const css = /* css */ `
209
209
  #jsenv_toolbar_trigger {
210
- display: block;
211
- overflow: hidden;
212
210
  position: fixed;
213
- z-index: 1000;
214
- bottom: -32px;
215
211
  right: 20px;
216
- height: 40px;
212
+ bottom: -32px;
213
+ z-index: 1000;
214
+ display: block;
217
215
  width: 40px;
218
- padding: 0;
216
+ height: 40px;
219
217
  margin: 0;
220
- border-radius: 5px 5px 0 0;
218
+ padding: 0;
219
+ text-align: center;
220
+ background: transparent;
221
221
  border: 1px solid rgba(0, 0, 0, 0.33);
222
222
  border-bottom: none;
223
+ border-radius: 5px 5px 0 0;
223
224
  box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.46);
224
- background: transparent;
225
- text-align: center;
226
225
  transition: 600ms;
226
+ overflow: hidden;
227
227
  }
228
228
 
229
229
  #jsenv_toolbar_trigger:hover {
@@ -2,8 +2,8 @@
2
2
  width: 20px;
3
3
  height: 20px;
4
4
  margin: 10px;
5
- transform: scaleX(-1);
6
5
  color: #cecece;
6
+ transform: scaleX(-1);
7
7
  }
8
8
  #execution_pending_icon[data-animate] {
9
9
  opacity: 0;
@@ -12,15 +12,15 @@
12
12
  }
13
13
  @keyframes rotateLoader {
14
14
  0% {
15
- transform: scaleX(-1) rotate(360deg);
16
15
  opacity: 1;
16
+ transform: scaleX(-1) rotate(360deg);
17
17
  }
18
18
  50% {
19
19
  opacity: 0;
20
20
  }
21
21
  100% {
22
- transform: scaleX(-1) rotate(0deg);
23
22
  opacity: 1;
23
+ transform: scaleX(-1) rotate(0deg);
24
24
  }
25
25
  }
26
26
 
@@ -34,11 +34,11 @@
34
34
  opacity: 1;
35
35
  }
36
36
  #execution_completed_icon[data-animate] path {
37
- transform-origin: 50% 50%;
37
+ stroke: green;
38
38
  stroke-dasharray: 48;
39
39
  stroke-dashoffset: 48;
40
+ transform-origin: 50% 50%;
40
41
  animation: stroke 0.5s cubic-bezier(0.65, 0, 0.45, 1) forwards;
41
- stroke: green;
42
42
  }
43
43
  @keyframes stroke {
44
44
  100% {
@@ -69,7 +69,7 @@
69
69
  }
70
70
  @keyframes draw {
71
71
  100% {
72
- height: 376.964px;
73
72
  width: 45px;
73
+ height: 376.964px;
74
74
  }
75
75
  }
@@ -3,9 +3,9 @@
3
3
  }
4
4
  html,
5
5
  body {
6
+ height: 100%;
6
7
  margin: 0;
7
8
  padding: 0;
8
- height: 100%;
9
9
  }
10
10
  html {
11
11
  font-family: arial, sans;
@@ -64,7 +64,6 @@ Because for some element we set the focus outline on a div which would not match
64
64
  input:focus-visible,
65
65
  *[data-input-customized] input:focus-visible + * {
66
66
  outline-width: 2px;
67
- outline-offset: 0;
68
67
  outline-style: solid;
69
68
  /*
70
69
  force a blue color for firefox otherwise
@@ -72,6 +71,7 @@ Because for some element we set the focus outline on a div which would not match
72
71
  making it unpredictible and sometimes hard to see
73
72
  */
74
73
  outline-color: rgb(0, 150, 255);
74
+ outline-offset: 0;
75
75
  }
76
76
  }
77
77
  ::-moz-focus-inner {
@@ -86,18 +86,18 @@ Because for some element we set the focus outline on a div which would not match
86
86
 
87
87
  #toolbar_overlay {
88
88
  position: fixed;
89
- left: 0;
90
89
  top: 0;
90
+ left: 0;
91
91
  width: 100%;
92
92
  height: 100%;
93
- filter: url(#better-blur);
94
93
  background-color: rgba(0, 0, 0, 0.2);
94
+ filter: url(#better-blur);
95
95
  }
96
96
 
97
97
  #toolbar {
98
98
  position: fixed;
99
99
  bottom: 0;
100
- height: 40px;
101
100
  width: 100%;
101
+ height: 40px;
102
102
  background: #404040;
103
103
  }
@@ -9,11 +9,11 @@
9
9
 
10
10
  #server_indicator .autoreload {
11
11
  position: absolute;
12
+ top: 0;
13
+ left: 0;
12
14
  width: 32px;
13
15
  height: 32px;
14
16
  margin: 4px;
15
- left: 0;
16
- top: 0;
17
17
  }
18
18
  .autoreload[data-variant="enabled"] {
19
19
  color: green;
@@ -30,8 +30,8 @@
30
30
  }
31
31
  .server_indicator_circle[data-variant="connecting"] {
32
32
  fill: #cecece;
33
- animation: wink 1.2s ease-out infinite;
34
33
  transform-origin: center;
34
+ animation: wink 1.2s ease-out infinite;
35
35
  }
36
36
  @keyframes wink {
37
37
  0% {
@@ -52,22 +52,22 @@
52
52
  }
53
53
 
54
54
  .server_indicator_ring {
55
+ fill: transparent;
55
56
  stroke: rgba(206, 206, 206, 0.46);
56
57
  stroke-width: 4;
57
- fill: transparent;
58
- animation: pulse 1.2s ease-out infinite;
59
58
  transform-origin: center;
59
+ animation: pulse 1.2s ease-out infinite;
60
60
  }
61
61
  @keyframes pulse {
62
62
  0% {
63
- transform: scale(0);
64
63
  opacity: 0;
64
+ transform: scale(0);
65
65
  }
66
66
  50% {
67
67
  opacity: 1;
68
68
  }
69
69
  100% {
70
- transform: scale(1);
71
70
  opacity: 0;
71
+ transform: scale(1);
72
72
  }
73
73
  }
@@ -6,14 +6,14 @@
6
6
  @import "./tooltips/tooltips.css";
7
7
 
8
8
  .toolbar_control {
9
- background: none;
10
- border: none;
11
9
  display: flex;
12
- justify-content: center;
13
- align-items: center;
14
- height: 40px;
15
10
  width: 40px;
11
+ height: 40px;
16
12
  padding: 0;
13
+ align-items: center;
14
+ justify-content: center;
15
+ background: none;
16
+ border: none;
17
17
  }
18
18
 
19
19
  .toolbar_control:hover {
@@ -28,8 +28,8 @@
28
28
 
29
29
  .toolbar_icon {
30
30
  height: 40px;
31
- fill: #cecece;
32
31
  color: #cecece;
32
+ fill: #cecece;
33
33
  }
34
34
 
35
35
  .toolbar_icon:hover {
@@ -37,10 +37,10 @@
37
37
  }
38
38
 
39
39
  .toolbar_icon_wrapper {
40
+ display: inline-block;
41
+ width: 40px;
40
42
  height: 100%;
41
43
  text-align: center;
42
- width: 40px;
43
- display: inline-block;
44
44
  }
45
45
 
46
46
  #file[data-active] {
@@ -61,9 +61,9 @@
61
61
 
62
62
  #changes_indicator button {
63
63
  display: flex;
64
- justify-content: center;
65
- align-items: stretch;
66
64
  width: auto;
65
+ align-items: stretch;
66
+ justify-content: center;
67
67
  }
68
68
 
69
69
  .changes_icon {
@@ -1,8 +1,8 @@
1
1
  #menu_overflow_button {
2
- display: none;
3
2
  position: absolute;
4
3
  top: 0;
5
4
  right: 0;
5
+ display: none;
6
6
  width: 40px;
7
7
  background: #404040;
8
8
  }
@@ -12,16 +12,16 @@
12
12
  }
13
13
 
14
14
  #menu_overflow {
15
- visibility: hidden; /* disable keyboard navigation */
16
- display: none;
17
15
  position: absolute;
18
- left: 100%;
19
16
  top: 0;
20
17
  bottom: 0;
18
+ left: 100%;
19
+ display: none;
21
20
  width: 100%;
22
21
  height: 100%;
23
22
  background: #404040;
24
23
  opacity: 0;
24
+ visibility: hidden; /* disable keyboard navigation */
25
25
  }
26
26
 
27
27
  #menu_overflow[data-animate] {
@@ -30,8 +30,8 @@
30
30
  }
31
31
 
32
32
  #menu_overflow > * {
33
- vertical-align: middle;
34
33
  text-align: center;
34
+ vertical-align: middle;
35
35
  }
36
36
 
37
37
  #toolbar[data-menu-overflow-enabled] #menu_overflow_button {
@@ -48,11 +48,11 @@
48
48
  }
49
49
 
50
50
  #toolbar[data-menu-overflow-opened] #menu_overflow {
51
- visibility: visible; /* restore keyboard navigation */
52
- display: block;
53
- opacity: 1;
54
51
  left: 0;
52
+ display: block;
55
53
  margin-left: -40px;
54
+ opacity: 1;
55
+ visibility: visible; /* restore keyboard navigation */
56
56
  }
57
57
 
58
58
  #toolbar[data-menu-overflow-enabled] #settings_box {
@@ -49,8 +49,8 @@ html[data-theme="jsenv"] .switch .slider:before {
49
49
 
50
50
  /* tooltips */
51
51
  html[data-theme="jsenv"] .tooltip {
52
- background-color: #ffd390;
53
52
  color: #884900;
53
+ background-color: #ffd390;
54
54
  }
55
55
  html[data-theme="jsenv"] .tooltip_action {
56
56
  border-color: #884900;
@@ -54,8 +54,8 @@ html[data-theme="light"] .switch input:checked + * .square {
54
54
 
55
55
  /* tooltips */
56
56
  html[data-theme="light"] .tooltip {
57
- background-color: rgb(138, 145, 154);
58
57
  color: #fff;
58
+ background-color: rgb(138, 145, 154);
59
59
  }
60
60
  html[data-theme="light"] .tooltip_action {
61
61
  border-color: #fff;
@@ -100,6 +100,6 @@ html[data-theme="light"] #explorables fieldset label input + * {
100
100
  background: #ddf0ff;
101
101
  }
102
102
  html[data-theme="light"] .execution-link {
103
- background: #ddf0ff;
104
103
  color: #076570;
104
+ background: #ddf0ff;
105
105
  }
@@ -13,19 +13,19 @@
13
13
  }
14
14
 
15
15
  #settings_box {
16
- display: none;
17
16
  position: absolute;
18
- bottom: 40px;
19
17
  right: 0;
20
- text-align: center;
18
+ bottom: 40px;
19
+ z-index: -1;
20
+ display: none;
21
+ min-width: 250px;
22
+ min-height: 150px;
21
23
  padding: 17px;
22
- font-size: 14px;
23
24
  color: #fff;
25
+ font-size: 14px;
26
+ text-align: center;
24
27
  background-color: #030713;
25
28
  border-radius: 5px 5px 0 0;
26
- min-width: 250px;
27
- min-height: 150px;
28
- z-index: -1;
29
29
  }
30
30
 
31
31
  [data-active] #settings_box {
@@ -45,45 +45,45 @@
45
45
  }
46
46
 
47
47
  #settings_box_body {
48
- text-align: left;
49
- padding: 18px 0;
50
- max-height: 80vh;
51
- overflow: auto;
52
- width: 100vw;
53
48
  display: flex;
49
+ width: 100vw;
50
+ max-height: 80vh;
51
+ padding: 18px 0;
54
52
  justify-content: center;
53
+ text-align: left;
54
+ overflow: auto;
55
55
  }
56
56
 
57
57
  .settings_box_items_wrapper {
58
- max-width: 700px;
59
58
  display: flex;
59
+ max-width: 700px;
60
60
  flex-wrap: wrap;
61
61
  justify-content: center;
62
62
  }
63
63
 
64
64
  .settings_box_item {
65
- padding: 15px;
66
- background: #0c111b;
67
65
  width: 250px;
68
66
  margin: 9px 18px;
67
+ padding: 15px;
68
+ background: #0c111b;
69
69
  }
70
70
 
71
71
  #settings_box_header .settings_icon {
72
+ position: relative;
73
+ top: 4px;
74
+ width: 22px;
75
+ height: 22px;
76
+ margin-right: 10px;
72
77
  fill: none;
73
78
  stroke: #24b1b0;
74
79
  stroke-width: 2;
75
- margin-right: 10px;
76
- width: 22px;
77
- height: 22px;
78
- position: relative;
79
- top: 4px;
80
80
  }
81
81
 
82
82
  #settings_box h3 {
83
83
  display: inline-block;
84
- font-size: 20px;
85
84
  margin: 10px 0;
86
85
  color: #24b1b0;
86
+ font-size: 20px;
87
87
  }
88
88
 
89
89
  #settings_close_button {
@@ -95,32 +95,32 @@
95
95
  }
96
96
 
97
97
  label {
98
+ display: block;
99
+ padding-bottom: 3px;
98
100
  color: #a9a8a8;
99
101
  font-size: 14px;
100
- padding-bottom: 3px;
101
- display: block;
102
102
  }
103
103
 
104
104
  #settings_box .category_title {
105
- color: #24b1b0;
106
- font-size: 16px;
107
105
  display: inline-block;
108
- margin-bottom: 15px;
109
106
  margin-top: 4px;
107
+ margin-bottom: 15px;
108
+ color: #24b1b0;
109
+ font-size: 16px;
110
110
  }
111
111
 
112
112
  #settings_box .category_title svg {
113
- fill: currentColor;
114
- vertical-align: top;
115
- margin-right: 5px;
116
113
  width: 18px;
117
114
  height: 18px;
115
+ margin-right: 5px;
116
+ vertical-align: top;
117
+ fill: currentColor;
118
118
  }
119
119
 
120
120
  #settings_box .category_subtitle {
121
+ max-width: 220px;
121
122
  color: #a9a8a8;
122
123
  font-size: 14px;
123
- max-width: 220px;
124
124
  }
125
125
 
126
126
  /* checkbox switch */
@@ -134,34 +134,34 @@ label {
134
134
  }
135
135
  .switch input {
136
136
  position: absolute;
137
- opacity: 0;
138
137
  width: 0;
139
138
  height: 0;
139
+ opacity: 0;
140
140
  }
141
141
  .switch .slider {
142
142
  position: absolute;
143
- vertical-align: middle;
144
- height: 0.3em;
145
- left: 0.5em;
146
- right: 0.5em;
147
143
  top: 50%;
144
+ right: 0.5em;
145
+ left: 0.5em;
146
+ height: 0.3em;
148
147
  margin-top: -0.15em;
148
+ vertical-align: middle;
149
149
  background-color: #4c4c4c;
150
- transition: 0.4s;
151
150
  border-radius: 0.15em;
151
+ transition: 0.4s;
152
152
  }
153
153
  .switch .square {
154
154
  position: absolute;
155
- content: "";
156
- height: 1em;
157
- width: 1em;
158
- left: 0.5em;
159
155
  top: 50%;
156
+ left: 0.5em;
157
+ width: 1em;
158
+ height: 1em;
160
159
  margin-top: -0.5em;
161
- background-color: #4c4c4c;
162
160
  color: #030713;
163
- transition: 0.4s;
161
+ background-color: #4c4c4c;
164
162
  border-radius: 0.15em;
163
+ transition: 0.4s;
164
+ content: "";
165
165
  }
166
166
  .switch input + * {
167
167
  position: relative;
@@ -171,15 +171,15 @@ label {
171
171
  /* It's important to have a border (event transparent)
172
172
  To be able to apply an outline to this element later*/
173
173
  border-width: 1px;
174
- border-color: transparent;
175
174
  border-style: solid;
175
+ border-color: transparent;
176
176
  }
177
177
  .switch input:checked + * .slider {
178
178
  background-color: #24b1b0;
179
179
  }
180
180
  .switch input:checked + * .square {
181
- transform: translateX(1.6em);
182
181
  background-color: #24b1b0;
182
+ transform: translateX(1.6em);
183
183
  }
184
184
 
185
185
  .settings_box_item[data-disabled] {
@@ -1,26 +1,26 @@
1
1
  .tooltip {
2
- display: none;
3
- background-color: rgb(94, 94, 94);
4
- color: #fff;
5
- text-align: center;
6
- border-radius: 6px;
7
2
  position: absolute;
8
3
  bottom: 100%;
4
+ display: none;
5
+ max-width: 260px;
9
6
  margin-bottom: 6px;
10
7
  padding: 10px;
8
+ color: #fff;
11
9
  font-size: 14px;
12
- max-width: 260px;
10
+ text-align: center;
11
+ background-color: rgb(94, 94, 94);
12
+ border-radius: 6px;
13
13
  cursor: default;
14
14
  }
15
15
 
16
16
  .tooltip::after {
17
- content: "";
18
17
  position: absolute;
19
18
  top: 100%;
20
19
  left: 14px;
21
20
  border-width: 5px;
22
21
  border-style: solid;
23
22
  border-color: rgb(94, 94, 94) transparent transparent transparent;
23
+ content: "";
24
24
  }
25
25
 
26
26
  .tooltip[data-toolip-left] {
@@ -47,21 +47,21 @@
47
47
 
48
48
  .tooltip_action {
49
49
  display: inline-block;
50
+ margin-top: 6px;
51
+ padding: 3px 7px;
50
52
  border: 1px solid #a0a0a0;
51
53
  border-radius: 3px;
52
- padding: 3px 7px;
53
- margin-top: 6px;
54
54
  }
55
55
 
56
56
  .tooltip_action a {
57
- vertical-align: middle;
58
57
  color: white;
59
58
  text-decoration: none;
59
+ vertical-align: middle;
60
60
  }
61
61
 
62
62
  .tooltip_icon {
63
- fill: white;
64
63
  width: 20px;
65
64
  height: 20px;
66
65
  vertical-align: middle;
66
+ fill: white;
67
67
  }
@@ -8,9 +8,8 @@ export const jsenvPluginToolbar = ({
8
8
  animationsEnabled = true,
9
9
  notificationsEnabled = true,
10
10
  } = {}) => {
11
- const toolbarInjectorClientFileUrl = import.meta.resolve(
12
- "./client/toolbar_injector.js",
13
- );
11
+ const toolbarInjectorClientFileUrl = import.meta
12
+ .resolve("./client/toolbar_injector.js");
14
13
  const toolbarHtmlClientFileUrl = import.meta.resolve("./client/toolbar.html");
15
14
  return {
16
15
  name: "jsenv:toolbar",