@netless/fastboard-ui 0.3.6 → 0.3.8-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -1,5 +1,3 @@
1
- import Tippy from 'tippy.js';
2
-
3
1
  var __defProp = Object.defineProperty;
4
2
  var __defProps = Object.defineProperties;
5
3
  var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
@@ -19,8 +17,28 @@ var __spreadValues = (a, b) => {
19
17
  return a;
20
18
  };
21
19
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __publicField = (obj, key, value) => {
21
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
22
+ return value;
23
+ };
24
+
25
+ // inline-sass-helper:inline-sass-style-helper.js
26
+ function injectStyle(text2) {
27
+ if (typeof document !== "undefined") {
28
+ var style = document.createElement("style");
29
+ var node = document.createTextNode(text2);
30
+ style.appendChild(node);
31
+ document.head.appendChild(style);
32
+ }
33
+ }
34
+
35
+ // inline-sass-content:./src/style.scss
36
+ var style_default = '.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}.tippy-box[data-theme~=light]{color:#26323d;box-shadow:0 0 20px 4px #9aa1b126,0 4px 80px -8px #24282f40,0 4px 4px -2px #5b5e6926;background-color:#fff}.tippy-box[data-theme~=light][data-placement^=top]>.tippy-arrow:before{border-top-color:#fff}.tippy-box[data-theme~=light][data-placement^=bottom]>.tippy-arrow:before{border-bottom-color:#fff}.tippy-box[data-theme~=light][data-placement^=left]>.tippy-arrow:before{border-left-color:#fff}.tippy-box[data-theme~=light][data-placement^=right]>.tippy-arrow:before{border-right-color:#fff}.tippy-box[data-theme~=light]>.tippy-backdrop{background-color:#fff}.tippy-box[data-theme~=light]>.tippy-svg-arrow{fill:#fff}.fastboard-icon.light .fastboard-icon-stroke-color{stroke:var(--fastboard-color, #5d6066)}.fastboard-icon.light .fastboard-icon-fill-color{fill:var(--fastboard-color, #5d6066)}.fastboard-icon.light.is-active .fastboard-icon-stroke-color{stroke:var(--fastboard-active-color, #3381ff)}.fastboard-icon.light.is-active .fastboard-icon-fill-color{fill:var(--fastboard-active-color, #3381ff)}.fastboard-icon.dark .fastboard-icon-stroke-color{stroke:var(--fastboard-color, #7b7e84)}.fastboard-icon.dark .fastboard-icon-fill-color{fill:var(--fastboard-color, #7b7e84)}.fastboard-icon.dark.is-active .fastboard-icon-stroke-color{stroke:var(--fastboard-active-color, #2867cc)}.fastboard-icon.dark.is-active .fastboard-icon-fill-color{fill:var(--fastboard-active-color, #2867cc)}.fastboard-redo-undo{box-sizing:border-box;display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid;border-radius:4px;font-size:14px;font-family:system-ui;pointer-events:auto;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.fastboard-redo-undo *{box-sizing:inherit}.fastboard-redo-undo.light{color:var(--fastboard-color, #5d6066);background-color:var(--fastboard-bg-color, rgba(255, 255, 255, .9));border-color:var(--fastboard-border-color, #e5e8f0)}.fastboard-redo-undo.dark{color:var(--fastboard-color, #7b7e84);background-color:var(--fastboard-bg-color, rgba(20, 24, 30, .9));border-color:var(--fastboard-border-color, #383b42)}.fastboard-redo-undo-btn{appearance:none;cursor:pointer;margin:0;border:0;padding:0;width:24px;height:24px;background-color:#0000;border-radius:4px;font-size:0;line-height:1;flex-shrink:0}.fastboard-redo-undo-btn svg,.fastboard-redo-undo-btn img{width:100%;height:100%;pointer-events:none}.fastboard-redo-undo-btn:disabled{opacity:.5;cursor:not-allowed}.fastboard-redo-undo-btn.light:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #ebf2ff)}.fastboard-redo-undo-btn.dark:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #383b42)}.fastboard-zoom-control{box-sizing:border-box;display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid;border-radius:4px;font-size:14px;font-family:system-ui;pointer-events:auto;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.fastboard-zoom-control *{box-sizing:inherit}.fastboard-zoom-control.light{color:var(--fastboard-color, #5d6066);background-color:var(--fastboard-bg-color, rgba(255, 255, 255, .9));border-color:var(--fastboard-border-color, #e5e8f0)}.fastboard-zoom-control.dark{color:var(--fastboard-color, #7b7e84);background-color:var(--fastboard-bg-color, rgba(20, 24, 30, .9));border-color:var(--fastboard-border-color, #383b42)}.fastboard-zoom-control-btn{appearance:none;cursor:pointer;margin:0;border:0;padding:0;width:24px;height:24px;background-color:#0000;border-radius:4px;font-size:0;line-height:1;flex-shrink:0}.fastboard-zoom-control-btn svg,.fastboard-zoom-control-btn img{width:100%;height:100%;pointer-events:none}.fastboard-zoom-control-btn:disabled{opacity:.5;cursor:not-allowed}.fastboard-zoom-control-btn.light:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #ebf2ff)}.fastboard-zoom-control-btn.dark:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #383b42)}.fastboard-zoom-control-text{font-variant-numeric:tabular-nums}.fastboard-page-control{box-sizing:border-box;display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid;border-radius:4px;font-size:14px;font-family:system-ui;pointer-events:auto;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.fastboard-page-control *{box-sizing:inherit}.fastboard-page-control.light{color:var(--fastboard-color, #5d6066);background-color:var(--fastboard-bg-color, rgba(255, 255, 255, .9));border-color:var(--fastboard-border-color, #e5e8f0)}.fastboard-page-control.dark{color:var(--fastboard-color, #7b7e84);background-color:var(--fastboard-bg-color, rgba(20, 24, 30, .9));border-color:var(--fastboard-border-color, #383b42)}.fastboard-page-control-btn{appearance:none;cursor:pointer;margin:0;border:0;padding:0;width:24px;height:24px;background-color:#0000;border-radius:4px;font-size:0;line-height:1;flex-shrink:0}.fastboard-page-control-btn svg,.fastboard-page-control-btn img{width:100%;height:100%;pointer-events:none}.fastboard-page-control-btn:disabled{opacity:.5;cursor:not-allowed}.fastboard-page-control-btn.light:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #ebf2ff)}.fastboard-page-control-btn.dark:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #383b42)}.fastboard-page-control-text{font-variant-numeric:tabular-nums}.fastboard-player-control{box-sizing:border-box;display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid;border-radius:4px;font-size:14px;font-family:system-ui;pointer-events:auto;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);width:100%}.fastboard-player-control *{box-sizing:inherit}.fastboard-player-control.light{color:var(--fastboard-color, #5d6066);background-color:var(--fastboard-bg-color, rgba(255, 255, 255, .9));border-color:var(--fastboard-border-color, #e5e8f0)}.fastboard-player-control.dark{color:var(--fastboard-color, #7b7e84);background-color:var(--fastboard-bg-color, rgba(20, 24, 30, .9));border-color:var(--fastboard-border-color, #383b42)}.fastboard-player-control-btn{appearance:none;cursor:pointer;margin:0;border:0;padding:0;width:24px;height:24px;background-color:#0000;border-radius:4px;font-size:0;line-height:1;flex-shrink:0;display:inline}.fastboard-player-control-btn svg,.fastboard-player-control-btn img{width:100%;height:100%;pointer-events:none}.fastboard-player-control-btn:disabled{opacity:.5;cursor:not-allowed}.fastboard-player-control-btn.light:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #ebf2ff)}.fastboard-player-control-btn.dark:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #383b42)}.fastboard-player-control-btn.loading svg,.fastboard-player-control-btn.loading img{animation:fastboard-player-control-rotate .5s linear infinite}@keyframes fastboard-player-control-rotate{to{transform:rotate(360deg)}}.fastboard-player-control-btn.speed{width:auto;padding:4px;text-align:right;font-size:14px;font-variant-numeric:tabular-nums}.fastboard-player-control-btn.is-active.light{color:var(--fastboard-active-color, #3381ff)}.fastboard-player-control-btn.is-active.dark{color:var(--fastboard-active-color, #2867cc)}.fastboard-player-control-speed-text,.fastboard-player-control-progress{font-size:14px;font-variant-numeric:tabular-nums;line-height:16px}.fastboard-player-control-progress{display:inline-flex;align-items:center}.fastboard-player-control-panel.speed{display:flex;flex-direction:column}.fastboard-toolbar{height:100%;display:flex;align-items:center;position:relative;transform:translate(0);transition:transform .5s cubic-bezier(.34,1.56,.64,1);pointer-events:none}.fastboard-toolbar.collapsed{transform:translate(-100%)}.fastboard-toolbar-handler{position:absolute;left:100%;width:17px;font-size:0;border-radius:3px;cursor:pointer;pointer-events:auto}.fastboard-toolbar-handler:focus-visible{outline:2px solid -webkit-focus-ring-color}.fastboard-toolbar-handler input[type=checkbox]{position:absolute;top:0;left:0;appearance:none;margin:0;width:100%;height:100%;cursor:pointer;opacity:0;z-index:-1}.fastboard-toolbar-handler svg{opacity:0;transition:opacity .5s 1s;pointer-events:none}.fastboard-toolbar-handler.light .fastboard-toolbar-handler-bg-color{fill:var(--fastboard-bg-color, rgba(255, 255, 255, .9))}.fastboard-toolbar-handler.light .fastboard-toolbar-handler-border-color{stroke:var(--fastboard-border-color, #e5e8f0)}.fastboard-toolbar-handler.light .fastboard-toolbar-handler-image-stroke-color{stroke:var(--fastboard-color, #5d6066)}.fastboard-toolbar-handler.light .fastboard-toolbar-handler-image-fill-color{fill:var(--fastboard-color, #5d6066)}.fastboard-toolbar-handler.dark .fastboard-toolbar-handler-bg-color{fill:var(--fastboard-bg-color, rgba(20, 24, 30, .9))}.fastboard-toolbar-handler.dark .fastboard-toolbar-handler-border-color{stroke:var(--fastboard-border-color, #383b42)}.fastboard-toolbar-handler.dark .fastboard-toolbar-handler-image-stroke-color{stroke:var(--fastboard-color, #7b7e84)}.fastboard-toolbar-handler.dark .fastboard-toolbar-handler-image-fill-color{fill:var(--fastboard-color, #7b7e84)}.fastboard-toolbar:hover .fastboard-toolbar-handler svg,.fastboard-toolbar.collapsed .fastboard-toolbar-handler svg{opacity:1;transition:opacity .2s}.fastboard-toolbar-btn{appearance:none;cursor:pointer;margin:0;border:0;padding:4px;width:32px;height:32px;background-color:#0000;border-radius:4px;font-size:0;line-height:1;flex-shrink:0}.fastboard-toolbar-btn svg,.fastboard-toolbar-btn img{width:100%;height:100%;pointer-events:none}.fastboard-toolbar-btn:disabled{opacity:.5;cursor:not-allowed}.fastboard-toolbar-btn.light:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #ebf2ff)}.fastboard-toolbar-btn.dark:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #383b42)}.fastboard-slider{box-sizing:border-box;position:relative;width:100%;height:100%;display:flex;align-items:center}.fastboard-slider *{box-sizing:inherit}.fastboard-slider-track{appearance:none;background:rgba(0,0,0,0);border:0;border-radius:26px;flex:1;display:block;height:19px;margin:0;width:0;min-width:0;padding:0;transition:box-shadow .3s ease;cursor:pointer;touch-action:manipulation}.fastboard-slider-track::-webkit-slider-runnable-track{border:0;border-radius:2.5px;height:5px;transition:box-shadow .3s ease;user-select:none;background-color:#80808040;-webkit-user-select:none;background-image:linear-gradient(to right,currentColor var(--value, 0%),transparent var(--value, 0%))}.fastboard-slider-track::-webkit-slider-thumb{background:#fff;border:0;border-radius:100%;box-shadow:0 1px 1px #23292f26,0 0 0 1px #23292f33;width:13px;height:13px;position:relative;transition:all .2s ease;cursor:grab;appearance:none;margin-top:-4px}.fastboard-slider-track::-moz-range-track{border:0;border-radius:2.5px;height:5px;transition:box-shadow .3s ease;user-select:none;background-color:#80808040;-webkit-user-select:none}.fastboard-slider-track::-moz-range-thumb{appearance:none;background:#fff;border:0;border-radius:100%;box-shadow:0 1px 1px #23292f26,0 0 0 1px #23292f33;width:13px;height:13px;position:relative;transition:all .2s ease;cursor:grab}.fastboard-slider-track::-moz-range-progress{background:currentColor;border-radius:2.5px;height:5px}.fastboard-slider-track::-ms-track{border:0;border-radius:2.5px;height:5px;transition:box-shadow .3s ease;user-select:none;background-color:#80808040;-webkit-user-select:none;color:#0000}.fastboard-slider-track::-ms-thumb{appearance:none;background:#fff;border:0;border-radius:100%;box-shadow:0 1px 1px #23292f26,0 0 0 1px #23292f33;width:13px;height:13px;position:relative;transition:all .2s ease;cursor:grab;margin-top:0}.fastboard-slider-track::-ms-tooltip{display:none}.fastboard-slider-track::-moz-focus-outer{border:0}.fastboard-slider-track.grabbing::-webkit-slider-thumb{cursor:grabbing}.fastboard-slider-track.light{color:var(--fastboard-active-color, #3381ff)}.fastboard-slider-track.dark{color:var(--fastboard-active-color, #2867cc)}.fastboard-toolbar-contents{box-sizing:border-box;display:inline-flex;align-items:center;gap:4px;border:1px solid;border-radius:4px;font-size:14px;font-family:system-ui;pointer-events:auto;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);padding:2px 0;gap:0;flex-direction:column}.fastboard-toolbar-contents *{box-sizing:inherit}.fastboard-toolbar-contents.light{color:var(--fastboard-color, #5d6066);background-color:var(--fastboard-bg-color, rgba(255, 255, 255, .9));border-color:var(--fastboard-border-color, #e5e8f0)}.fastboard-toolbar-contents.dark{color:var(--fastboard-color, #7b7e84);background-color:var(--fastboard-bg-color, rgba(20, 24, 30, .9));border-color:var(--fastboard-border-color, #383b42)}.fastboard-toolbar-contents>.fastboard-toolbar-btn{margin:2px 4px}.fastboard-toolbar-btn-interactive{position:relative}.fastboard-toolbar-triangle{width:0px;height:0px;border-bottom:4px solid;border-left:4px solid rgba(0,0,0,0);position:absolute;bottom:0;right:0}.fastboard-toolbar-btn:focus+.fastboard-toolbar-triangle{opacity:0}.fastboard-toolbar-scrollable{padding:2px 4px;overflow:hidden;display:flex;flex-direction:column;gap:4px}.fastboard-toolbar-tooltip{display:inline-flex;align-items:center;gap:4px}.fastboard-toolbar-hotkey{display:inline-flex;margin-right:-4px;width:24px;height:24px;align-items:center;justify-content:center;background-color:#ffffff1a;border-radius:4px}.fastboard-toolbar-panel-wrapper{display:none}.fastboard-toolbar-panel{display:flex;flex-direction:column}.fastboard-toolbar-panel-divider{height:.5px;width:100%;margin:4px 0;background-color:#ffffff26}.fastboard-toolbar-colors,.fastboard-toolbar-shapes{display:grid;align-self:center;grid-template:repeat(2,1fr)/repeat(4,1fr);align-items:center;justify-items:center;gap:4px}.fastboard-toolbar-shape-btn,.fastboard-toolbar-color-btn{width:24px;height:24px;padding:0;display:inline-flex;align-items:center;justify-content:center}.fastboard-toolbar-color-btn{border:1px solid rgba(0,0,0,0)}.fastboard-toolbar-color-btn.light.is-active{border-color:var(--fastboard-active-color, #3381ff)}.fastboard-toolbar-color-btn.dark.is-active{border-color:var(--fastboard-active-color, #2867cc)}.fastboard-toolbar-color-item{display:inline-block;width:16px;height:16px;border-radius:4px;pointer-events:none}.fastboard-toolbar-panel.apps{display:grid;grid-template-columns:repeat(min(var(--n, 3),3),minmax(max-content,1fr));gap:4px}.fastboard-toolbar-app-btn{margin:0;border:0;border-radius:2px;padding:4px 6px;background-color:#0000;display:inline-flex;flex-direction:column;align-items:center;gap:4px;font-size:0}.fastboard-toolbar-app-btn:disabled{opacity:.8}.fastboard-toolbar-app-btn-icon{width:32px;height:32px;pointer-events:none}.fastboard-toolbar-app-btn-text{font-size:14px;line-height:1;max-width:100%;overflow:hidden;text-overflow:ellipsis}.fastboard-toolbar-app-btn.is-loading{cursor:progress}.fastboard-toolbar-app-btn.is-failed{cursor:not-allowed;opacity:.5}.fastboard-toolbar-app-btn:not(:disabled,.is-loading,.is-failed):hover.light{cursor:pointer;background-color:var(--fastboard-hover-bg-color, #ebf2ff)}.fastboard-toolbar-app-btn-text.light{color:var(--fastboard-color, #5d6066)}.fastboard-toolbar-app-btn:not(:disabled,.is-loading,.is-failed):hover.dark{cursor:pointer;background-color:var(--fastboard-hover-bg-color, #383b42)}.fastboard-toolbar-app-btn-text.dark{color:var(--fastboard-color, #7b7e84)}.fastboard-root{position:relative;width:100%;height:100%;overflow:hidden}.fastboard-view{position:absolute;top:0;left:0;width:100%;height:100%}.fastboard-left{display:flex;align-items:center;position:absolute;bottom:62px;top:8px;left:0;z-index:200;pointer-events:none}.fastboard-left .fastboard-toolbar{padding-left:16px}.fastboard-bottom-left,.fastboard-bottom,.fastboard-bottom-right{display:flex;gap:10px;position:absolute;bottom:8px;left:8px;padding:8px;z-index:200;pointer-events:none}.fastboard-bottom-right{left:auto;right:8px}.fastboard-bottom{right:8px}.fastboard-left.hidden *,.fastboard-bottom.hidden *,.fastboard-bottom-left.hidden *,.fastboard-bottom-right.hidden *{opacity:0;pointer-events:none}.fastboard-tip{font-family:inherit;color:#d5d9e0;background-color:#03060d}.fastboard-tip[data-placement^=right]>.tippy-arrow:before{top:4px;border-width:4px;border-right-color:#03060d}.fastboard-tip[data-placement^=top]>.tippy-arrow:before{left:4px;border-width:4px;border-top-color:#03060d}.fastboard-panel .tippy-content{padding:8px}.netless-whiteboard:focus-visible{outline:none}';
37
+
38
+ // inline-sass-stub:./src/style.scss
39
+ injectStyle(style_default);
22
40
 
23
- // ../../node_modules/.pnpm/svelte@3.49.0/node_modules/svelte/internal/index.mjs
41
+ // ../../node_modules/.pnpm/svelte@3.55.0/node_modules/svelte/internal/index.mjs
24
42
  function noop() {
25
43
  }
26
44
  function assign(tar, src) {
@@ -119,6 +137,13 @@ function action_destroyer(action_result) {
119
137
  return action_result && is_function(action_result.destroy) ? action_result.destroy : noop;
120
138
  }
121
139
  var is_client = typeof window !== "undefined";
140
+ var is_hydrating = false;
141
+ function start_hydrating() {
142
+ is_hydrating = true;
143
+ }
144
+ function end_hydrating() {
145
+ is_hydrating = false;
146
+ }
122
147
  function append(target, node) {
123
148
  target.appendChild(node);
124
149
  }
@@ -126,7 +151,9 @@ function insert(target, node, anchor) {
126
151
  target.insertBefore(node, anchor || null);
127
152
  }
128
153
  function detach(node) {
129
- node.parentNode.removeChild(node);
154
+ if (node.parentNode) {
155
+ node.parentNode.removeChild(node);
156
+ }
130
157
  }
131
158
  function destroy_each(iterations, detaching) {
132
159
  for (let i = 0; i < iterations.length; i += 1) {
@@ -188,6 +215,9 @@ function custom_event(type, detail, { bubbles = false, cancelable = false } = {}
188
215
  e.initCustomEvent(type, bubbles, cancelable, detail);
189
216
  return e;
190
217
  }
218
+ function construct_svelte_component(component, props) {
219
+ return new component(props);
220
+ }
191
221
  var current_component;
192
222
  function set_current_component(component) {
193
223
  current_component = component;
@@ -316,6 +346,7 @@ function transition_out(block, local, detach2, callback) {
316
346
  callback();
317
347
  }
318
348
  }
349
+ var globals = typeof window !== "undefined" ? window : typeof globalThis !== "undefined" ? globalThis : global;
319
350
  function destroy_block(block, lookup) {
320
351
  block.d(1);
321
352
  lookup.delete(block.key);
@@ -431,13 +462,13 @@ function create_component(block) {
431
462
  block && block.c();
432
463
  }
433
464
  function mount_component(component, target, anchor, customElement) {
434
- const { fragment, on_mount, on_destroy, after_update } = component.$$;
465
+ const { fragment, after_update } = component.$$;
435
466
  fragment && fragment.m(target, anchor);
436
467
  if (!customElement) {
437
468
  add_render_callback(() => {
438
- const new_on_destroy = on_mount.map(run).filter(is_function);
439
- if (on_destroy) {
440
- on_destroy.push(...new_on_destroy);
469
+ const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
470
+ if (component.$$.on_destroy) {
471
+ component.$$.on_destroy.push(...new_on_destroy);
441
472
  } else {
442
473
  run_all(new_on_destroy);
443
474
  }
@@ -468,7 +499,7 @@ function init(component, options, instance59, create_fragment59, not_equal2, pro
468
499
  set_current_component(component);
469
500
  const $$ = component.$$ = {
470
501
  fragment: null,
471
- ctx: null,
502
+ ctx: [],
472
503
  props,
473
504
  update: noop,
474
505
  not_equal: not_equal2,
@@ -502,6 +533,7 @@ function init(component, options, instance59, create_fragment59, not_equal2, pro
502
533
  $$.fragment = create_fragment59 ? create_fragment59($$.ctx) : false;
503
534
  if (options.target) {
504
535
  if (options.hydrate) {
536
+ start_hydrating();
505
537
  const nodes = children(options.target);
506
538
  $$.fragment && $$.fragment.l(nodes);
507
539
  nodes.forEach(detach);
@@ -511,16 +543,65 @@ function init(component, options, instance59, create_fragment59, not_equal2, pro
511
543
  if (options.intro)
512
544
  transition_in(component.$$.fragment);
513
545
  mount_component(component, options.target, options.anchor, options.customElement);
546
+ end_hydrating();
514
547
  flush();
515
548
  }
516
549
  set_current_component(parent_component);
517
550
  }
551
+ var SvelteElement;
552
+ if (typeof HTMLElement === "function") {
553
+ SvelteElement = class extends HTMLElement {
554
+ constructor() {
555
+ super();
556
+ this.attachShadow({ mode: "open" });
557
+ }
558
+ connectedCallback() {
559
+ const { on_mount } = this.$$;
560
+ this.$$.on_disconnect = on_mount.map(run).filter(is_function);
561
+ for (const key in this.$$.slotted) {
562
+ this.appendChild(this.$$.slotted[key]);
563
+ }
564
+ }
565
+ attributeChangedCallback(attr2, _oldValue, newValue) {
566
+ this[attr2] = newValue;
567
+ }
568
+ disconnectedCallback() {
569
+ run_all(this.$$.on_disconnect);
570
+ }
571
+ $destroy() {
572
+ destroy_component(this, 1);
573
+ this.$destroy = noop;
574
+ }
575
+ $on(type, callback) {
576
+ if (!is_function(callback)) {
577
+ return noop;
578
+ }
579
+ const callbacks = this.$$.callbacks[type] || (this.$$.callbacks[type] = []);
580
+ callbacks.push(callback);
581
+ return () => {
582
+ const index = callbacks.indexOf(callback);
583
+ if (index !== -1)
584
+ callbacks.splice(index, 1);
585
+ };
586
+ }
587
+ $set($$props) {
588
+ if (this.$$set && !is_empty($$props)) {
589
+ this.$$.skip_bound = true;
590
+ this.$$set($$props);
591
+ this.$$.skip_bound = false;
592
+ }
593
+ }
594
+ };
595
+ }
518
596
  var SvelteComponent = class {
519
597
  $destroy() {
520
598
  destroy_component(this, 1);
521
599
  this.$destroy = noop;
522
600
  }
523
601
  $on(type, callback) {
602
+ if (!is_function(callback)) {
603
+ return noop;
604
+ }
524
605
  const callbacks = this.$$.callbacks[type] || (this.$$.callbacks[type] = []);
525
606
  callbacks.push(callback);
526
607
  return () => {
@@ -557,7 +638,14 @@ function create_else_block(ctx) {
557
638
  p(ctx2, dirty) {
558
639
  if (default_slot) {
559
640
  if (default_slot.p && (!current || dirty & 8)) {
560
- update_slot_base(default_slot, default_slot_template, ctx2, ctx2[3], !current ? get_all_dirty_from_scope(ctx2[3]) : get_slot_changes(default_slot_template, ctx2[3], dirty, null), null);
641
+ update_slot_base(
642
+ default_slot,
643
+ default_slot_template,
644
+ ctx2,
645
+ ctx2[3],
646
+ !current ? get_all_dirty_from_scope(ctx2[3]) : get_slot_changes(default_slot_template, ctx2[3], dirty, null),
647
+ null
648
+ );
561
649
  }
562
650
  }
563
651
  },
@@ -623,7 +711,7 @@ function create_fragment(ctx) {
623
711
  return 0;
624
712
  return 1;
625
713
  }
626
- current_block_type_index = select_block_type(ctx);
714
+ current_block_type_index = select_block_type(ctx, -1);
627
715
  if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
628
716
  return {
629
717
  c() {
@@ -637,7 +725,7 @@ function create_fragment(ctx) {
637
725
  },
638
726
  p(ctx2, [dirty]) {
639
727
  let previous_block_index = current_block_type_index;
640
- current_block_type_index = select_block_type(ctx2);
728
+ current_block_type_index = select_block_type(ctx2, dirty);
641
729
  if (current_block_type_index === previous_block_index) {
642
730
  if_blocks[current_block_type_index].p(ctx2, dirty);
643
731
  } else {
@@ -3382,6 +3470,9 @@ var Icons = {
3382
3470
  Loading: Loading_default
3383
3471
  };
3384
3472
  var Icons_default = Icons;
3473
+
3474
+ // src/actions/tippy.ts
3475
+ import Tippy from "tippy.js";
3385
3476
  if (is_client) {
3386
3477
  Tippy.setDefaultProps({
3387
3478
  delay: [1e3, 400],
@@ -3474,7 +3565,14 @@ function create_else_block_1(ctx) {
3474
3565
  p(ctx2, dirty) {
3475
3566
  if (default_slot) {
3476
3567
  if (default_slot.p && (!current || dirty & 256)) {
3477
- update_slot_base(default_slot, default_slot_template, ctx2, ctx2[8], !current ? get_all_dirty_from_scope(ctx2[8]) : get_slot_changes(default_slot_template, ctx2[8], dirty, null), null);
3568
+ update_slot_base(
3569
+ default_slot,
3570
+ default_slot_template,
3571
+ ctx2,
3572
+ ctx2[8],
3573
+ !current ? get_all_dirty_from_scope(ctx2[8]) : get_slot_changes(default_slot_template, ctx2[8], dirty, null),
3574
+ null
3575
+ );
3478
3576
  }
3479
3577
  }
3480
3578
  if (!current || dirty & 7 && button_class_value !== (button_class_value = ctx2[1] + "-btn " + ctx2[0] + " " + ctx2[2])) {
@@ -3516,7 +3614,7 @@ function create_if_block2(ctx) {
3516
3614
  return 0;
3517
3615
  return 1;
3518
3616
  }
3519
- current_block_type_index = select_block_type_1(ctx);
3617
+ current_block_type_index = select_block_type_1(ctx, -1);
3520
3618
  if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
3521
3619
  return {
3522
3620
  c() {
@@ -3530,7 +3628,7 @@ function create_if_block2(ctx) {
3530
3628
  },
3531
3629
  p(ctx2, dirty) {
3532
3630
  let previous_block_index = current_block_type_index;
3533
- current_block_type_index = select_block_type_1(ctx2);
3631
+ current_block_type_index = select_block_type_1(ctx2, dirty);
3534
3632
  if (current_block_type_index === previous_block_index) {
3535
3633
  if_blocks[current_block_type_index].p(ctx2, dirty);
3536
3634
  } else {
@@ -3605,7 +3703,14 @@ function create_else_block2(ctx) {
3605
3703
  p(ctx2, dirty) {
3606
3704
  if (default_slot) {
3607
3705
  if (default_slot.p && (!current || dirty & 256)) {
3608
- update_slot_base(default_slot, default_slot_template, ctx2, ctx2[8], !current ? get_all_dirty_from_scope(ctx2[8]) : get_slot_changes(default_slot_template, ctx2[8], dirty, null), null);
3706
+ update_slot_base(
3707
+ default_slot,
3708
+ default_slot_template,
3709
+ ctx2,
3710
+ ctx2[8],
3711
+ !current ? get_all_dirty_from_scope(ctx2[8]) : get_slot_changes(default_slot_template, ctx2[8], dirty, null),
3712
+ null
3713
+ );
3609
3714
  }
3610
3715
  }
3611
3716
  if (!current || dirty & 7 && button_class_value !== (button_class_value = ctx2[1] + "-btn " + ctx2[0] + " " + ctx2[2])) {
@@ -3701,7 +3806,14 @@ function create_if_block_1(ctx) {
3701
3806
  p(ctx2, dirty) {
3702
3807
  if (default_slot) {
3703
3808
  if (default_slot.p && (!current || dirty & 256)) {
3704
- update_slot_base(default_slot, default_slot_template, ctx2, ctx2[8], !current ? get_all_dirty_from_scope(ctx2[8]) : get_slot_changes(default_slot_template, ctx2[8], dirty, null), null);
3809
+ update_slot_base(
3810
+ default_slot,
3811
+ default_slot_template,
3812
+ ctx2,
3813
+ ctx2[8],
3814
+ !current ? get_all_dirty_from_scope(ctx2[8]) : get_slot_changes(default_slot_template, ctx2[8], dirty, null),
3815
+ null
3816
+ );
3705
3817
  }
3706
3818
  }
3707
3819
  if (!current || dirty & 7 && button_class_value !== (button_class_value = ctx2[1] + "-btn " + ctx2[0] + " " + ctx2[2])) {
@@ -3764,7 +3876,7 @@ function create_fragment45(ctx) {
3764
3876
  return 0;
3765
3877
  return 1;
3766
3878
  }
3767
- current_block_type_index = select_block_type(ctx);
3879
+ current_block_type_index = select_block_type(ctx, -1);
3768
3880
  if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
3769
3881
  return {
3770
3882
  c() {
@@ -3778,7 +3890,7 @@ function create_fragment45(ctx) {
3778
3890
  },
3779
3891
  p(ctx2, [dirty]) {
3780
3892
  let previous_block_index = current_block_type_index;
3781
- current_block_type_index = select_block_type(ctx2);
3893
+ current_block_type_index = select_block_type(ctx2, dirty);
3782
3894
  if (current_block_type_index === previous_block_index) {
3783
3895
  if_blocks[current_block_type_index].p(ctx2, dirty);
3784
3896
  } else {
@@ -4182,28 +4294,36 @@ function instance46($$self, $$props, $$invalidate) {
4182
4294
  };
4183
4295
  $$self.$$.update = () => {
4184
4296
  if ($$self.$$.dirty & 2048) {
4185
- $$subscribe_writable($$invalidate(8, writable2 = app == null ? void 0 : app.writable));
4297
+ $:
4298
+ $$subscribe_writable($$invalidate(8, writable2 = app == null ? void 0 : app.writable));
4186
4299
  }
4187
4300
  if ($$self.$$.dirty & 65536) {
4188
- $$invalidate(13, disabled = !$writable);
4301
+ $:
4302
+ $$invalidate(13, disabled = !$writable);
4189
4303
  }
4190
4304
  if ($$self.$$.dirty & 4096) {
4191
- $$invalidate(7, t = i18n[language]);
4305
+ $:
4306
+ $$invalidate(7, t = i18n[language]);
4192
4307
  }
4193
4308
  if ($$self.$$.dirty & 8192) {
4194
- $$invalidate(2, type = disabled ? "disable" : "normal");
4309
+ $:
4310
+ $$invalidate(2, type = disabled ? "disable" : "normal");
4195
4311
  }
4196
4312
  if ($$self.$$.dirty & 2048) {
4197
- $$subscribe_undoSteps($$invalidate(6, undoSteps = app == null ? void 0 : app.canUndoSteps));
4313
+ $:
4314
+ $$subscribe_undoSteps($$invalidate(6, undoSteps = app == null ? void 0 : app.canUndoSteps));
4198
4315
  }
4199
4316
  if ($$self.$$.dirty & 2048) {
4200
- $$subscribe_redoSteps($$invalidate(5, redoSteps = app == null ? void 0 : app.canRedoSteps));
4317
+ $:
4318
+ $$subscribe_redoSteps($$invalidate(5, redoSteps = app == null ? void 0 : app.canRedoSteps));
4201
4319
  }
4202
4320
  if ($$self.$$.dirty & 40960) {
4203
- $$invalidate(4, undo_disabled = disabled || !$undoSteps);
4321
+ $:
4322
+ $$invalidate(4, undo_disabled = disabled || !$undoSteps);
4204
4323
  }
4205
4324
  if ($$self.$$.dirty & 24576) {
4206
- $$invalidate(3, redo_disabled = disabled || !$redoSteps);
4325
+ $:
4326
+ $$invalidate(3, redo_disabled = disabled || !$redoSteps);
4207
4327
  }
4208
4328
  };
4209
4329
  return [
@@ -4551,7 +4671,7 @@ function create_fragment47(ctx) {
4551
4671
  return create_if_block3;
4552
4672
  return create_else_block3;
4553
4673
  }
4554
- let current_block_type = select_block_type(ctx);
4674
+ let current_block_type = select_block_type(ctx, -1);
4555
4675
  let if_block = current_block_type(ctx);
4556
4676
  button1 = new Button_default({
4557
4677
  props: {
@@ -4615,7 +4735,7 @@ function create_fragment47(ctx) {
4615
4735
  button0_changes.$$scope = { dirty, ctx: ctx2 };
4616
4736
  }
4617
4737
  button0.$set(button0_changes);
4618
- if (current_block_type === (current_block_type = select_block_type(ctx2)) && if_block) {
4738
+ if (current_block_type === (current_block_type = select_block_type(ctx2, dirty)) && if_block) {
4619
4739
  if_block.p(ctx2, dirty);
4620
4740
  } else {
4621
4741
  if_block.d(1);
@@ -4732,28 +4852,36 @@ function instance47($$self, $$props, $$invalidate) {
4732
4852
  };
4733
4853
  $$self.$$.update = () => {
4734
4854
  if ($$self.$$.dirty & 32768) {
4735
- $$subscribe_writable($$invalidate(11, writable2 = app == null ? void 0 : app.writable));
4855
+ $:
4856
+ $$subscribe_writable($$invalidate(11, writable2 = app == null ? void 0 : app.writable));
4736
4857
  }
4737
4858
  if ($$self.$$.dirty & 131072) {
4738
- $$invalidate(2, disabled = !$writable);
4859
+ $:
4860
+ $$invalidate(2, disabled = !$writable);
4739
4861
  }
4740
4862
  if ($$self.$$.dirty & 65536) {
4741
- $$invalidate(10, t = i18n2[language]);
4863
+ $:
4864
+ $$invalidate(10, t = i18n2[language]);
4742
4865
  }
4743
4866
  if ($$self.$$.dirty & 4) {
4744
- $$invalidate(5, type = disabled ? "disable" : "normal");
4867
+ $:
4868
+ $$invalidate(5, type = disabled ? "disable" : "normal");
4745
4869
  }
4746
4870
  if ($$self.$$.dirty & 32768) {
4747
- $$subscribe_index($$invalidate(9, index = app == null ? void 0 : app.sceneIndex));
4871
+ $:
4872
+ $$subscribe_index($$invalidate(9, index = app == null ? void 0 : app.sceneIndex));
4748
4873
  }
4749
4874
  if ($$self.$$.dirty & 32768) {
4750
- $$subscribe_length($$invalidate(8, length = app == null ? void 0 : app.sceneLength));
4875
+ $:
4876
+ $$subscribe_length($$invalidate(8, length = app == null ? void 0 : app.sceneLength));
4751
4877
  }
4752
4878
  if ($$self.$$.dirty & 20) {
4753
- $$invalidate(7, prev_disabled = disabled || !$index);
4879
+ $:
4880
+ $$invalidate(7, prev_disabled = disabled || !$index);
4754
4881
  }
4755
4882
  if ($$self.$$.dirty & 28) {
4756
- $$invalidate(6, next_disabled = disabled || $length == null || $index === $length - 1);
4883
+ $:
4884
+ $$invalidate(6, next_disabled = disabled || $length == null || $index === $length - 1);
4757
4885
  }
4758
4886
  };
4759
4887
  return [
@@ -5100,7 +5228,7 @@ function create_fragment48(ctx) {
5100
5228
  return create_if_block4;
5101
5229
  return create_else_block4;
5102
5230
  }
5103
- let current_block_type = select_block_type(ctx);
5231
+ let current_block_type = select_block_type(ctx, -1);
5104
5232
  let if_block = current_block_type(ctx);
5105
5233
  button1 = new Button_default({
5106
5234
  props: {
@@ -5164,7 +5292,7 @@ function create_fragment48(ctx) {
5164
5292
  button0_changes.$$scope = { dirty, ctx: ctx2 };
5165
5293
  }
5166
5294
  button0.$set(button0_changes);
5167
- if (current_block_type === (current_block_type = select_block_type(ctx2)) && if_block) {
5295
+ if (current_block_type === (current_block_type = select_block_type(ctx2, dirty)) && if_block) {
5168
5296
  if_block.p(ctx2, dirty);
5169
5297
  } else {
5170
5298
  if_block.d(1);
@@ -5316,28 +5444,36 @@ function instance48($$self, $$props, $$invalidate) {
5316
5444
  $$self.$$.update = () => {
5317
5445
  var _a;
5318
5446
  if ($$self.$$.dirty & 16384) {
5319
- $$subscribe_writable($$invalidate(10, writable2 = app == null ? void 0 : app.writable));
5447
+ $:
5448
+ $$subscribe_writable($$invalidate(10, writable2 = app == null ? void 0 : app.writable));
5320
5449
  }
5321
5450
  if ($$self.$$.dirty & 65536) {
5322
- $$invalidate(3, disabled = !$writable);
5451
+ $:
5452
+ $$invalidate(3, disabled = !$writable);
5323
5453
  }
5324
5454
  if ($$self.$$.dirty & 32768) {
5325
- $$invalidate(9, t = i18n3[language]);
5455
+ $:
5456
+ $$invalidate(9, t = i18n3[language]);
5326
5457
  }
5327
5458
  if ($$self.$$.dirty & 8) {
5328
- $$invalidate(5, type = disabled ? "disable" : "normal");
5459
+ $:
5460
+ $$invalidate(5, type = disabled ? "disable" : "normal");
5329
5461
  }
5330
5462
  if ($$self.$$.dirty & 16384) {
5331
- $$subscribe_camera($$invalidate(8, camera = app == null ? void 0 : app.camera));
5463
+ $:
5464
+ $$subscribe_camera($$invalidate(8, camera = app == null ? void 0 : app.camera));
5332
5465
  }
5333
5466
  if ($$self.$$.dirty & 16) {
5334
- $$invalidate(2, scale = (_a = $camera == null ? void 0 : $camera.scale) != null ? _a : 1);
5467
+ $:
5468
+ $$invalidate(2, scale = (_a = $camera == null ? void 0 : $camera.scale) != null ? _a : 1);
5335
5469
  }
5336
5470
  if ($$self.$$.dirty & 12) {
5337
- $$invalidate(7, plus_disabled = disabled || next_scale(scale, 1) === scale);
5471
+ $:
5472
+ $$invalidate(7, plus_disabled = disabled || next_scale(scale, 1) === scale);
5338
5473
  }
5339
5474
  if ($$self.$$.dirty & 12) {
5340
- $$invalidate(6, minus_disabled = disabled || next_scale(scale, -1) === scale);
5475
+ $:
5476
+ $$invalidate(6, minus_disabled = disabled || next_scale(scale, -1) === scale);
5341
5477
  }
5342
5478
  };
5343
5479
  return [
@@ -5373,7 +5509,7 @@ var ZoomControl = class extends SvelteComponent {
5373
5509
  };
5374
5510
  var ZoomControl_default = ZoomControl;
5375
5511
 
5376
- // ../../node_modules/.pnpm/svelte@3.49.0/node_modules/svelte/store/index.mjs
5512
+ // ../../node_modules/.pnpm/svelte@3.55.0/node_modules/svelte/store/index.mjs
5377
5513
  var subscriber_queue = [];
5378
5514
  function writable(value, start = noop) {
5379
5515
  let stop;
@@ -5523,7 +5659,7 @@ var scrollTop = function(node, value) {
5523
5659
  let timer = 0;
5524
5660
  function on_scroll() {
5525
5661
  clearTimeout(timer);
5526
- timer = setTimeout(() => value.set(node.scrollTop), 200);
5662
+ timer = window.setTimeout(() => value.set(node.scrollTop), 200);
5527
5663
  }
5528
5664
  node.addEventListener("scroll", on_scroll);
5529
5665
  let unsubscribe = value.subscribe(listener);
@@ -5541,19 +5677,19 @@ var scrollTop = function(node, value) {
5541
5677
  };
5542
5678
 
5543
5679
  // src/behaviors/icons/visual-studio-code.svg
5544
- var visual_studio_code_default = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMS4wMWVtIiBoZWlnaHQ9IjFlbSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQgbWVldCIgdmlld0JveD0iMCAwIDI1NiAyNTQiIHN0eWxlPSItbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJJY29uaWZ5SWQtMTdmODcyMTU1YmUtY2M3NjZlLTU0MzkiIHgxPSI1MCUiIHgyPSI1MCUiIHkxPSIwJSIgeTI9IjEwMCUiPjxzdG9wIG9mZnNldD0iMCUiIHN0b3AtY29sb3I9IiNGRkYiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iMCIvPjwvbGluZWFyR3JhZGllbnQ+PHBhdGggaWQ9Ikljb25pZnlJZC0xN2Y4NzIxNTViZS1jYzc2NmUtNTQ0MCIgZD0iTTE4MC44MjggMjUyLjYwNWExNS44NzIgMTUuODcyIDAgMCAwIDEyLjY1LS40ODZsNTIuNTAxLTI1LjI2MmExNS45NCAxNS45NCAwIDAgMCA5LjAyNS0xNC4zNjRWNDEuMTk3YTE1LjkzOSAxNS45MzkgMCAwIDAtOS4wMjUtMTQuMzYzbC01Mi41LTI1LjI2M2ExNS44NzcgMTUuODc3IDAgMCAwLTE4LjExNSAzLjA4NEw3NC44NTcgOTYuMzVsLTQzLjc4LTMzLjIzMmExMC42MTQgMTAuNjE0IDAgMCAwLTEzLjU2LjYwM0wzLjQ3NiA3Ni40OTRjLTQuNjMgNC4yMTEtNC42MzUgMTEuNDk1LS4wMTIgMTUuNzEzbDM3Ljk2NyAzNC42MzhsLTM3Ljk2NyAzNC42MzdjLTQuNjIzIDQuMjE5LTQuNjE4IDExLjUwMi4wMTIgMTUuNzE0bDE0LjA0MSAxMi43NzJhMTAuNjE0IDEwLjYxNCAwIDAgMCAxMy41Ni42MDRsNDMuNzgtMzMuMjMzbDEwMC41MDcgOTEuNjk1YTE1Ljg1MyAxNS44NTMgMCAwIDAgNS40NjQgMy41NzFabTEwLjQ2NC0xODMuNjQ5bC03Ni4yNjIgNTcuODg5bDc2LjI2MiA1Ny44ODhWNjguOTU2WiIvPjwvZGVmcz48bWFzayBpZD0iSWNvbmlmeUlkLTE3Zjg3MjE1NWJlLWNjNzY2ZS01NDQxIiBmaWxsPSIjZmZmIj48dXNlIGhyZWY9IiNJY29uaWZ5SWQtMTdmODcyMTU1YmUtY2M3NjZlLTU0NDAiLz48L21hc2s+PHBhdGggZmlsbD0iIzAwNjVBOSIgZD0iTTI0Ni4xMzUgMjYuODczTDE5My41OTMgMS41NzVhMTUuODg1IDE1Ljg4NSAwIDAgMC0xOC4xMjMgMy4wOEwzLjQ2NiAxNjEuNDgyYy00LjYyNiA0LjIxOS00LjYyIDExLjUwMi4wMTIgMTUuNzE0bDE0LjA1IDEyLjc3MmExMC42MjUgMTAuNjI1IDAgMCAwIDEzLjU2OS42MDRMMjM4LjIyOSAzMy40MzZjNi45NDktNS4yNzEgMTYuOTMtLjMxNSAxNi45MyA4LjQwN3YtLjYxYTE1LjkzOCAxNS45MzggMCAwIDAtOS4wMjQtMTQuMzZaIiBtYXNrPSJ1cmwoI0ljb25pZnlJZC0xN2Y4NzIxNTViZS1jYzc2NmUtNTQ0MSkiLz48cGF0aCBmaWxsPSIjMDA3QUNDIiBkPSJtMjQ2LjEzNSAyMjYuODE2bC01Mi41NDIgMjUuMjk4YTE1Ljg4NyAxNS44ODcgMCAwIDEtMTguMTIzLTMuMDhMMy40NjYgOTIuMjA3Yy00LjYyNi00LjIxOC00LjYyLTExLjUwMi4wMTItMTUuNzEzbDE0LjA1LTEyLjc3M2ExMC42MjUgMTAuNjI1IDAgMCAxIDEzLjU2OS0uNjAzbDIwNy4xMzIgMTU3LjEzNWM2Ljk0OSA1LjI3MSAxNi45My4zMTUgMTYuOTMtOC40MDh2LjYxMWExNS45MzkgMTUuOTM5IDAgMCAxLTkuMDI0IDE0LjM2WiIgbWFzaz0idXJsKCNJY29uaWZ5SWQtMTdmODcyMTU1YmUtY2M3NjZlLTU0NDEpIi8+PHBhdGggZmlsbD0iIzFGOUNGMCIgZD0iTTE5My40MjggMjUyLjEzNGExNS44OTIgMTUuODkyIDAgMCAxLTE4LjEyNS0zLjA4M2M1Ljg4MSA1Ljg4IDE1LjkzOCAxLjcxNSAxNS45MzgtNi42MDNWMTEuMjczYzAtOC4zMTgtMTAuMDU3LTEyLjQ4My0xNS45MzgtNi42MDJhMTUuODkyIDE1Ljg5MiAwIDAgMSAxOC4xMjUtMy4wODRsNTIuNTMzIDI1LjI2M2ExNS45MzcgMTUuOTM3IDAgMCAxIDkuMDMgMTQuMzYzVjIxMi41MWMwIDYuMTI1LTMuNTEgMTEuNzA5LTkuMDMgMTQuMzYzbC01Mi41MzMgMjUuMjYyWiIgbWFzaz0idXJsKCNJY29uaWZ5SWQtMTdmODcyMTU1YmUtY2M3NjZlLTU0NDEpIi8+PHBhdGggZmlsbD0idXJsKCNJY29uaWZ5SWQtMTdmODcyMTU1YmUtY2M3NjZlLTU0MzkpIiBmaWxsLW9wYWNpdHk9Ii4yNSIgZD0iTTE4MC44MjggMjUyLjYwNWExNS44NzQgMTUuODc0IDAgMCAwIDEyLjY1LS40ODZsNTIuNS0yNS4yNjNhMTUuOTM4IDE1LjkzOCAwIDAgMCA5LjAyNi0xNC4zNjNWNDEuMTk3YTE1LjkzOSAxNS45MzkgMCAwIDAtOS4wMjUtMTQuMzYzTDE5My40NzcgMS41N2ExNS44NzcgMTUuODc3IDAgMCAwLTE4LjExNCAzLjA4NEw3NC44NTcgOTYuMzVsLTQzLjc4LTMzLjIzMmExMC42MTQgMTAuNjE0IDAgMCAwLTEzLjU2LjYwM0wzLjQ3NiA3Ni40OTRjLTQuNjMgNC4yMTEtNC42MzUgMTEuNDk1LS4wMTIgMTUuNzEzbDM3Ljk2NyAzNC42MzhsLTM3Ljk2NyAzNC42MzdjLTQuNjIzIDQuMjE5LTQuNjE4IDExLjUwMi4wMTIgMTUuNzE0bDE0LjA0MSAxMi43NzJhMTAuNjE0IDEwLjYxNCAwIDAgMCAxMy41Ni42MDRsNDMuNzgtMzMuMjMzbDEwMC41MDYgOTEuNjk1YTE1Ljg1NyAxNS44NTcgMCAwIDAgNS40NjUgMy41NzFabTEwLjQ2NC0xODMuNjVsLTc2LjI2MiA1Ny44OWw3Ni4yNjIgNTcuODg4VjY4Ljk1NloiIG1hc2s9InVybCgjSWNvbmlmeUlkLTE3Zjg3MjE1NWJlLWNjNzY2ZS01NDQxKSIvPjwvc3ZnPg==";
5680
+ var visual_studio_code_default = 'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1.01em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 254" style="-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); transform: rotate(360deg);"><defs><linearGradient id="IconifyId-17f872155be-cc766e-5439" x1="50%" x2="50%" y1="0%" y2="100%"><stop offset="0%" stop-color="%23FFF"/><stop offset="100%" stop-color="%23FFF" stop-opacity="0"/></linearGradient><path id="IconifyId-17f872155be-cc766e-5440" d="M180.828 252.605a15.872 15.872 0 0 0 12.65-.486l52.501-25.262a15.94 15.94 0 0 0 9.025-14.364V41.197a15.939 15.939 0 0 0-9.025-14.363l-52.5-25.263a15.877 15.877 0 0 0-18.115 3.084L74.857 96.35l-43.78-33.232a10.614 10.614 0 0 0-13.56.603L3.476 76.494c-4.63 4.211-4.635 11.495-.012 15.713l37.967 34.638l-37.967 34.637c-4.623 4.219-4.618 11.502.012 15.714l14.041 12.772a10.614 10.614 0 0 0 13.56.604l43.78-33.233l100.507 91.695a15.853 15.853 0 0 0 5.464 3.571Zm10.464-183.649l-76.262 57.889l76.262 57.888V68.956Z"/></defs><mask id="IconifyId-17f872155be-cc766e-5441" fill="%23fff"><use href="%23IconifyId-17f872155be-cc766e-5440"/></mask><path fill="%230065A9" d="M246.135 26.873L193.593 1.575a15.885 15.885 0 0 0-18.123 3.08L3.466 161.482c-4.626 4.219-4.62 11.502.012 15.714l14.05 12.772a10.625 10.625 0 0 0 13.569.604L238.229 33.436c6.949-5.271 16.93-.315 16.93 8.407v-.61a15.938 15.938 0 0 0-9.024-14.36Z" mask="url(%23IconifyId-17f872155be-cc766e-5441)"/><path fill="%23007ACC" d="m246.135 226.816l-52.542 25.298a15.887 15.887 0 0 1-18.123-3.08L3.466 92.207c-4.626-4.218-4.62-11.502.012-15.713l14.05-12.773a10.625 10.625 0 0 1 13.569-.603l207.132 157.135c6.949 5.271 16.93.315 16.93-8.408v.611a15.939 15.939 0 0 1-9.024 14.36Z" mask="url(%23IconifyId-17f872155be-cc766e-5441)"/><path fill="%231F9CF0" d="M193.428 252.134a15.892 15.892 0 0 1-18.125-3.083c5.881 5.88 15.938 1.715 15.938-6.603V11.273c0-8.318-10.057-12.483-15.938-6.602a15.892 15.892 0 0 1 18.125-3.084l52.533 25.263a15.937 15.937 0 0 1 9.03 14.363V212.51c0 6.125-3.51 11.709-9.03 14.363l-52.533 25.262Z" mask="url(%23IconifyId-17f872155be-cc766e-5441)"/><path fill="url(%23IconifyId-17f872155be-cc766e-5439)" fill-opacity=".25" d="M180.828 252.605a15.874 15.874 0 0 0 12.65-.486l52.5-25.263a15.938 15.938 0 0 0 9.026-14.363V41.197a15.939 15.939 0 0 0-9.025-14.363L193.477 1.57a15.877 15.877 0 0 0-18.114 3.084L74.857 96.35l-43.78-33.232a10.614 10.614 0 0 0-13.56.603L3.476 76.494c-4.63 4.211-4.635 11.495-.012 15.713l37.967 34.638l-37.967 34.637c-4.623 4.219-4.618 11.502.012 15.714l14.041 12.772a10.614 10.614 0 0 0 13.56.604l43.78-33.233l100.506 91.695a15.857 15.857 0 0 0 5.465 3.571Zm10.464-183.65l-76.262 57.89l76.262 57.888V68.956Z" mask="url(%23IconifyId-17f872155be-cc766e-5441)"/></svg>';
5545
5681
 
5546
5682
  // src/behaviors/icons/geogebra.svg
5547
- var geogebra_default = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBhcmlhLWhpZGRlbj0idHJ1ZSIgcm9sZT0iaW1nIiBjbGFzcz0iaWNvbmlmeSBpY29uaWZ5LS1hcmN0aWNvbnMiIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQgbWVldCIgdmlld0JveD0iMCAwIDQ4IDQ4Ij48cGF0aCBmaWxsPSJub25lIiBzdHJva2U9IiM2NTU3ZDIiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBkPSJNMjQgM2E0Ljc3IDQuNzcgMCAxIDAgNC43NyA0Ljc3QTQuNzggNC43OCAwIDAgMCAyNCAzWk03LjY5IDE0Ljg2YTQuNzcgNC43NyAwIDEgMCA0Ljc2IDQuNzdhNC43NiA0Ljc2IDAgMCAwLTQuNzYtNC43N1ptMzIuNjQgMGE0Ljc3IDQuNzcgMCAxIDAgNC43NyA0Ljc3YTQuNzcgNC43NyAwIDAgMC00Ljc3LTQuNzdaTTEzLjkyIDM0LjA1YTQuNzcgNC43NyAwIDEgMCA0Ljc3IDQuNzdhNC43NiA0Ljc2IDAgMCAwLTQuNzctNC43N1ptMjAuMTggMGE0Ljc3IDQuNzcgMCAxIDAgNC43NiA0Ljc3YTQuNzYgNC43NiAwIDAgMC00Ljc2LTQuNzdaIj48L3BhdGg+PHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNjU1N2QyIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZD0iTTE5LjI3IDguMzVhMTcuMjQgMTcuMjQgMCAwIDAtOS43MyA2Ljg3bTI4LjUxLjIyYTE3LjI4IDE3LjI4IDAgMCAwLTkuMzQtNi45NG04LjcgMjYuODlBMTcuMDkgMTcuMDkgMCAwIDAgNDAuOTMgMjV2LS42MU0xOCA0MS4yMmExNy4yMyAxNy4yMyAwIDAgMCA1LjY4IDFhMTcgMTcgMCAwIDAgNi4yLTEuMjJNNi41MyAyNC4yNXYuNzJhMTcuMTYgMTcuMTYgMCAwIDAgMy43NyAxMC43NiI+PC9wYXRoPjwvc3ZnPg==";
5683
+ var geogebra_default = 'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--arcticons" width="32" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 48 48"><path fill="none" stroke="%236557d2" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M24 3a4.77 4.77 0 1 0 4.77 4.77A4.78 4.78 0 0 0 24 3ZM7.69 14.86a4.77 4.77 0 1 0 4.76 4.77a4.76 4.76 0 0 0-4.76-4.77Zm32.64 0a4.77 4.77 0 1 0 4.77 4.77a4.77 4.77 0 0 0-4.77-4.77ZM13.92 34.05a4.77 4.77 0 1 0 4.77 4.77a4.76 4.76 0 0 0-4.77-4.77Zm20.18 0a4.77 4.77 0 1 0 4.76 4.77a4.76 4.76 0 0 0-4.76-4.77Z"></path><path fill="none" stroke="%236557d2" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M19.27 8.35a17.24 17.24 0 0 0-9.73 6.87m28.51.22a17.28 17.28 0 0 0-9.34-6.94m8.7 26.89A17.09 17.09 0 0 0 40.93 25v-.61M18 41.22a17.23 17.23 0 0 0 5.68 1a17 17 0 0 0 6.2-1.22M6.53 24.25v.72a17.16 17.16 0 0 0 3.77 10.76"></path></svg>';
5548
5684
 
5549
5685
  // src/behaviors/icons/countdown.svg
5550
- var countdown_default = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBhcmlhLWhpZGRlbj0idHJ1ZSIgcm9sZT0iaW1nIiBjbGFzcz0iaWNvbmlmeSBpY29uaWZ5LS1yYWRpeC1pY29ucyIgd2lkdGg9IjMyIiBoZWlnaHQ9IjMyIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWlkWU1pZCBtZWV0IiB2aWV3Qm94PSIwIDAgMTUgMTUiPjxwYXRoIGZpbGw9ImdyZXkiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTEzLjE1IDcuNWMwLTIuODM1LTIuMjEtNS42NS01LjY1LTUuNjVjLTIuNzc4IDAtNC4xNTEgMi4wNTYtNC43MzcgMy4xNUg0LjVhLjUuNSAwIDAgMSAwIDFoLTNhLjUuNSAwIDAgMS0uNS0uNXYtM2EuNS41IDAgMCAxIDEgMHYxLjgxM0MyLjcwNSAzLjA3MSA0LjMzNC44NSA3LjUuODVjNC4wNjMgMCA2LjY1IDMuMzM1IDYuNjUgNi42NWMwIDMuMzE1LTIuNTg3IDYuNjUtNi42NSA2LjY1Yy0xLjk0NCAwLTMuNTYyLS43Ny00LjcxNS0xLjk0MmE2Ljc3MiA2Ljc3MiAwIDAgMS0xLjQyNy0yLjE2N2EuNS41IDAgMSAxIC45MjUtLjM4Yy4yOC42ODEuNjkyIDEuMzE0IDEuMjE2IDEuODQ2Yy45NzIuOTkgMi4zMzYgMS42NDMgNC4wMDEgMS42NDNjMy40NCAwIDUuNjUtMi44MTUgNS42NS01LjY1Wk03IDEwVjVoMXY1SDdaIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiPjwvcGF0aD48L3N2Zz4=";
5686
+ var countdown_default = 'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--radix-icons" width="32" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 15 15"><path fill="grey" fill-rule="evenodd" d="M13.15 7.5c0-2.835-2.21-5.65-5.65-5.65c-2.778 0-4.151 2.056-4.737 3.15H4.5a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5v-3a.5.5 0 0 1 1 0v1.813C2.705 3.071 4.334.85 7.5.85c4.063 0 6.65 3.335 6.65 6.65c0 3.315-2.587 6.65-6.65 6.65c-1.944 0-3.562-.77-4.715-1.942a6.772 6.772 0 0 1-1.427-2.167a.5.5 0 1 1 .925-.38c.28.681.692 1.314 1.216 1.846c.972.99 2.336 1.643 4.001 1.643c3.44 0 5.65-2.815 5.65-5.65ZM7 10V5h1v5H7Z" clip-rule="evenodd"></path></svg>';
5551
5687
 
5552
5688
  // src/behaviors/apps.ts
5553
5689
  var AppsInToolbar = class {
5554
5690
  constructor(_data) {
5555
5691
  this._data = _data;
5556
- this._listeners = [];
5692
+ __publicField(this, "_listeners", []);
5557
5693
  }
5558
5694
  get data() {
5559
5695
  return this._data;
@@ -5768,12 +5904,14 @@ function instance49($$self, $$props, $$invalidate) {
5768
5904
  };
5769
5905
  $$self.$$.update = () => {
5770
5906
  if ($$self.$$.dirty & 385) {
5771
- if (value !== real_value && !grabbing) {
5907
+ $:
5908
+ if (value !== real_value && !grabbing) {
5772
5909
  $$invalidate(7, real_value = value);
5773
5910
  }
5774
5911
  }
5775
5912
  if ($$self.$$.dirty & 152) {
5776
- $$invalidate(9, percent = 100 * (real_value - min) / (max - min));
5913
+ $:
5914
+ $$invalidate(9, percent = 100 * (real_value - min) / (max - min));
5777
5915
  }
5778
5916
  };
5779
5917
  return [
@@ -5879,13 +6017,16 @@ function instance50($$self, $$props, $$invalidate) {
5879
6017
  $$self.$$.update = () => {
5880
6018
  var _a;
5881
6019
  if ($$self.$$.dirty & 8) {
5882
- $$subscribe_memberState($$invalidate(1, memberState = app == null ? void 0 : app.memberState));
6020
+ $:
6021
+ $$subscribe_memberState($$invalidate(1, memberState = app == null ? void 0 : app.memberState));
5883
6022
  }
5884
6023
  if ($$self.$$.dirty & 128) {
5885
- $$invalidate(6, value = (_a = $memberState == null ? void 0 : $memberState.strokeWidth) != null ? _a : 1);
6024
+ $:
6025
+ $$invalidate(6, value = (_a = $memberState == null ? void 0 : $memberState.strokeWidth) != null ? _a : 1);
5886
6026
  }
5887
6027
  if ($$self.$$.dirty & 112) {
5888
- $$invalidate(0, props = { value, theme, disabled });
6028
+ $:
6029
+ $$invalidate(0, props = { value, theme, disabled });
5889
6030
  }
5890
6031
  };
5891
6032
  return [
@@ -5918,6 +6059,7 @@ function create_each_block(key_1, ctx) {
5918
6059
  let span;
5919
6060
  let t;
5920
6061
  let button_class_value;
6062
+ let button_data_color_key_value;
5921
6063
  return {
5922
6064
  key: key_1,
5923
6065
  first: null,
@@ -5926,9 +6068,9 @@ function create_each_block(key_1, ctx) {
5926
6068
  span = element("span");
5927
6069
  t = space();
5928
6070
  attr(span, "class", "fastboard-toolbar-color-item");
5929
- set_style(span, "background-color", ctx[7], false);
6071
+ set_style(span, "background-color", ctx[7]);
5930
6072
  attr(button, "class", button_class_value = "fastboard-toolbar-btn fastboard-toolbar-color-btn " + ctx[0]);
5931
- attr(button, "data-color-key", ctx[7]);
6073
+ attr(button, "data-color-key", button_data_color_key_value = ctx[7]);
5932
6074
  button.disabled = ctx[1];
5933
6075
  toggle_class(button, "is-active", is_equal_color(ctx[2], colors[ctx[7]]));
5934
6076
  this.first = button;
@@ -6040,10 +6182,12 @@ function instance51($$self, $$props, $$invalidate) {
6040
6182
  };
6041
6183
  $$self.$$.update = () => {
6042
6184
  if ($$self.$$.dirty & 32) {
6043
- $$subscribe_memberState($$invalidate(3, memberState = app == null ? void 0 : app.memberState));
6185
+ $:
6186
+ $$subscribe_memberState($$invalidate(3, memberState = app == null ? void 0 : app.memberState));
6044
6187
  }
6045
6188
  if ($$self.$$.dirty & 64) {
6046
- $$invalidate(2, strokeColor = $memberState == null ? void 0 : $memberState.strokeColor);
6189
+ $:
6190
+ $$invalidate(2, strokeColor = $memberState == null ? void 0 : $memberState.strokeColor);
6047
6191
  }
6048
6192
  };
6049
6193
  return [theme, disabled, strokeColor, memberState, set_stroke_color, app, $memberState];
@@ -6067,6 +6211,7 @@ function create_each_block2(key_1, ctx) {
6067
6211
  let span;
6068
6212
  let t;
6069
6213
  let button_class_value;
6214
+ let button_data_color_key_value;
6070
6215
  return {
6071
6216
  key: key_1,
6072
6217
  first: null,
@@ -6075,9 +6220,9 @@ function create_each_block2(key_1, ctx) {
6075
6220
  span = element("span");
6076
6221
  t = space();
6077
6222
  attr(span, "class", "fastboard-toolbar-color-item");
6078
- set_style(span, "background-color", ctx[7], false);
6223
+ set_style(span, "background-color", ctx[7]);
6079
6224
  attr(button, "class", button_class_value = "fastboard-toolbar-btn fastboard-toolbar-color-btn " + ctx[0]);
6080
- attr(button, "data-color-key", ctx[7]);
6225
+ attr(button, "data-color-key", button_data_color_key_value = ctx[7]);
6081
6226
  button.disabled = ctx[1];
6082
6227
  toggle_class(button, "is-active", is_equal_color2(ctx[2], colors[ctx[7]]));
6083
6228
  this.first = button;
@@ -6189,10 +6334,12 @@ function instance52($$self, $$props, $$invalidate) {
6189
6334
  };
6190
6335
  $$self.$$.update = () => {
6191
6336
  if ($$self.$$.dirty & 32) {
6192
- $$subscribe_memberState($$invalidate(3, memberState = app == null ? void 0 : app.memberState));
6337
+ $:
6338
+ $$subscribe_memberState($$invalidate(3, memberState = app == null ? void 0 : app.memberState));
6193
6339
  }
6194
6340
  if ($$self.$$.dirty & 64) {
6195
- $$invalidate(2, textColor = $memberState == null ? void 0 : $memberState.textColor);
6341
+ $:
6342
+ $$invalidate(2, textColor = $memberState == null ? void 0 : $memberState.textColor);
6196
6343
  }
6197
6344
  };
6198
6345
  return [theme, disabled, textColor, memberState, set_stroke_color, app, $memberState];
@@ -6222,7 +6369,7 @@ function create_else_block5(ctx) {
6222
6369
  return { props: { theme: ctx2[0] } };
6223
6370
  }
6224
6371
  if (switch_value) {
6225
- switch_instance = new switch_value(switch_props(ctx));
6372
+ switch_instance = construct_svelte_component(switch_value, switch_props(ctx));
6226
6373
  }
6227
6374
  return {
6228
6375
  c() {
@@ -6231,9 +6378,8 @@ function create_else_block5(ctx) {
6231
6378
  switch_instance_anchor = empty();
6232
6379
  },
6233
6380
  m(target, anchor) {
6234
- if (switch_instance) {
6381
+ if (switch_instance)
6235
6382
  mount_component(switch_instance, target, anchor);
6236
- }
6237
6383
  insert(target, switch_instance_anchor, anchor);
6238
6384
  current = true;
6239
6385
  },
@@ -6251,7 +6397,7 @@ function create_else_block5(ctx) {
6251
6397
  check_outros();
6252
6398
  }
6253
6399
  if (switch_value) {
6254
- switch_instance = new switch_value(switch_props(ctx2));
6400
+ switch_instance = construct_svelte_component(switch_value, switch_props(ctx2));
6255
6401
  create_component(switch_instance.$$.fragment);
6256
6402
  transition_in(switch_instance.$$.fragment, 1);
6257
6403
  mount_component(switch_instance, switch_instance_anchor.parentNode, switch_instance_anchor);
@@ -6293,7 +6439,7 @@ function create_if_block5(ctx) {
6293
6439
  };
6294
6440
  }
6295
6441
  if (switch_value) {
6296
- switch_instance = new switch_value(switch_props(ctx));
6442
+ switch_instance = construct_svelte_component(switch_value, switch_props(ctx));
6297
6443
  }
6298
6444
  return {
6299
6445
  c() {
@@ -6302,9 +6448,8 @@ function create_if_block5(ctx) {
6302
6448
  switch_instance_anchor = empty();
6303
6449
  },
6304
6450
  m(target, anchor) {
6305
- if (switch_instance) {
6451
+ if (switch_instance)
6306
6452
  mount_component(switch_instance, target, anchor);
6307
- }
6308
6453
  insert(target, switch_instance_anchor, anchor);
6309
6454
  current = true;
6310
6455
  },
@@ -6322,7 +6467,7 @@ function create_if_block5(ctx) {
6322
6467
  check_outros();
6323
6468
  }
6324
6469
  if (switch_value) {
6325
- switch_instance = new switch_value(switch_props(ctx2));
6470
+ switch_instance = construct_svelte_component(switch_value, switch_props(ctx2));
6326
6471
  create_component(switch_instance.$$.fragment);
6327
6472
  transition_in(switch_instance.$$.fragment, 1);
6328
6473
  mount_component(switch_instance, switch_instance_anchor.parentNode, switch_instance_anchor);
@@ -6359,6 +6504,7 @@ function create_each_block3(key_1, ctx) {
6359
6504
  let if_block;
6360
6505
  let t_1;
6361
6506
  let button_class_value;
6507
+ let button_data_shape_key_value;
6362
6508
  let tippy_action;
6363
6509
  let current;
6364
6510
  let mounted;
@@ -6370,7 +6516,7 @@ function create_each_block3(key_1, ctx) {
6370
6516
  return 0;
6371
6517
  return 1;
6372
6518
  }
6373
- current_block_type_index = select_block_type(ctx);
6519
+ current_block_type_index = select_block_type(ctx, -1);
6374
6520
  if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
6375
6521
  return {
6376
6522
  key: key_1,
@@ -6380,7 +6526,7 @@ function create_each_block3(key_1, ctx) {
6380
6526
  if_block.c();
6381
6527
  t_1 = space();
6382
6528
  attr(button, "class", button_class_value = "fastboard-toolbar-btn fastboard-toolbar-shape-btn " + ctx[0] + " " + ctx[12]);
6383
- attr(button, "data-shape-key", ctx[12]);
6529
+ attr(button, "data-shape-key", button_data_shape_key_value = ctx[12]);
6384
6530
  button.disabled = ctx[1];
6385
6531
  toggle_class(button, "is-active", ctx[13]);
6386
6532
  this.first = button;
@@ -6401,7 +6547,7 @@ function create_each_block3(key_1, ctx) {
6401
6547
  p(new_ctx, dirty) {
6402
6548
  ctx = new_ctx;
6403
6549
  let previous_block_index = current_block_type_index;
6404
- current_block_type_index = select_block_type(ctx);
6550
+ current_block_type_index = select_block_type(ctx, dirty);
6405
6551
  if (current_block_type_index === previous_block_index) {
6406
6552
  if_blocks[current_block_type_index].p(ctx, dirty);
6407
6553
  } else {
@@ -6431,7 +6577,7 @@ function create_each_block3(key_1, ctx) {
6431
6577
  content: tooltip(ctx[6][ctx[12]], ctx[2][ctx[12]]),
6432
6578
  placement: "top"
6433
6579
  });
6434
- if (dirty & 25) {
6580
+ if (!current || dirty & 25) {
6435
6581
  toggle_class(button, "is-active", ctx[13]);
6436
6582
  }
6437
6583
  },
@@ -6584,22 +6730,28 @@ function instance53($$self, $$props, $$invalidate) {
6584
6730
  };
6585
6731
  $$self.$$.update = () => {
6586
6732
  if ($$self.$$.dirty & 512) {
6587
- $$invalidate(6, t = i18n5[language]);
6733
+ $:
6734
+ $$invalidate(6, t = i18n5[language]);
6588
6735
  }
6589
6736
  if ($$self.$$.dirty & 256) {
6590
- $$subscribe_memberState($$invalidate(5, memberState = app == null ? void 0 : app.memberState));
6737
+ $:
6738
+ $$subscribe_memberState($$invalidate(5, memberState = app == null ? void 0 : app.memberState));
6591
6739
  }
6592
6740
  if ($$self.$$.dirty & 2048) {
6593
- $$invalidate(4, appliance = $memberState == null ? void 0 : $memberState.currentApplianceName);
6741
+ $:
6742
+ $$invalidate(4, appliance = $memberState == null ? void 0 : $memberState.currentApplianceName);
6594
6743
  }
6595
6744
  if ($$self.$$.dirty & 2048) {
6596
- $$invalidate(3, shape = $memberState == null ? void 0 : $memberState.shapeType);
6745
+ $:
6746
+ $$invalidate(3, shape = $memberState == null ? void 0 : $memberState.shapeType);
6597
6747
  }
6598
6748
  if ($$self.$$.dirty & 256) {
6599
- $$invalidate(10, hotkeys = app == null ? void 0 : app.hotKeys);
6749
+ $:
6750
+ $$invalidate(10, hotkeys = app == null ? void 0 : app.hotKeys);
6600
6751
  }
6601
6752
  if ($$self.$$.dirty & 1024) {
6602
- $$invalidate(2, c = {
6753
+ $:
6754
+ $$invalidate(2, c = {
6603
6755
  rectangle: hotkeys == null ? void 0 : hotkeys.changeToRectangle,
6604
6756
  ellipse: hotkeys == null ? void 0 : hotkeys.changeToEllipse,
6605
6757
  straight: hotkeys == null ? void 0 : hotkeys.changeToStraight,
@@ -6638,19 +6790,18 @@ var Shapes_default = Shapes;
6638
6790
  // src/components/Toolbar/components/Contents.svelte
6639
6791
  function get_each_context4(ctx, list, i) {
6640
6792
  const child_ctx = ctx.slice();
6641
- child_ctx[41] = list[i];
6642
- const constants_0 = child_ctx[41];
6643
- child_ctx[42] = constants_0.icon;
6644
- child_ctx[43] = constants_0.label;
6645
- child_ctx[44] = constants_0.kind;
6646
- child_ctx[45] = constants_0.onClick;
6647
- const constants_1 = child_ctx[20] && child_ctx[20][child_ctx[44]];
6648
- child_ctx[46] = constants_1;
6649
- const constants_2 = () => {
6650
- child_ctx[0] && child_ctx[45](child_ctx[0]);
6651
- tippy_hide_all();
6652
- };
6653
- child_ctx[47] = constants_2;
6793
+ child_ctx[42] = list[i];
6794
+ const constants_0 = child_ctx[42];
6795
+ child_ctx[43] = constants_0.icon;
6796
+ child_ctx[44] = constants_0.label;
6797
+ child_ctx[45] = constants_0.kind;
6798
+ child_ctx[46] = constants_0.onClick;
6799
+ const constants_1 = child_ctx[20] && child_ctx[20][child_ctx[45]];
6800
+ child_ctx[47] = constants_1;
6801
+ const constants_2 = function func() {
6802
+ return ctx[38](child_ctx[46]);
6803
+ };
6804
+ child_ctx[48] = constants_2;
6654
6805
  return child_ctx;
6655
6806
  }
6656
6807
  function create_if_block_8(ctx) {
@@ -6676,7 +6827,7 @@ function create_if_block_8(ctx) {
6676
6827
  },
6677
6828
  p(ctx2, dirty) {
6678
6829
  const button_changes = dirty[0] & 32768 ? get_spread_update(button_spread_levels, [button_spread_levels[0], get_spread_object(ctx2[15])]) : {};
6679
- if (dirty[0] & 2 | dirty[1] & 524288) {
6830
+ if (dirty[0] & 2 | dirty[1] & 1048576) {
6680
6831
  button_changes.$$scope = { dirty, ctx: ctx2 };
6681
6832
  }
6682
6833
  button.$set(button_changes);
@@ -6809,7 +6960,7 @@ function create_default_slot_8(ctx) {
6809
6960
  return 0;
6810
6961
  return 1;
6811
6962
  }
6812
- current_block_type_index = select_block_type(ctx);
6963
+ current_block_type_index = select_block_type(ctx, [-1, -1]);
6813
6964
  if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
6814
6965
  return {
6815
6966
  c() {
@@ -6823,7 +6974,7 @@ function create_default_slot_8(ctx) {
6823
6974
  },
6824
6975
  p(ctx2, dirty) {
6825
6976
  let previous_block_index = current_block_type_index;
6826
- current_block_type_index = select_block_type(ctx2);
6977
+ current_block_type_index = select_block_type(ctx2, dirty);
6827
6978
  if (current_block_type_index === previous_block_index) {
6828
6979
  if_blocks[current_block_type_index].p(ctx2, dirty);
6829
6980
  } else {
@@ -6940,7 +7091,7 @@ function create_default_slot_7(ctx) {
6940
7091
  return 0;
6941
7092
  return 1;
6942
7093
  }
6943
- current_block_type_index = select_block_type_1(ctx);
7094
+ current_block_type_index = select_block_type_1(ctx, [-1, -1]);
6944
7095
  if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
6945
7096
  return {
6946
7097
  c() {
@@ -6954,7 +7105,7 @@ function create_default_slot_7(ctx) {
6954
7105
  },
6955
7106
  p(ctx2, dirty) {
6956
7107
  let previous_block_index = current_block_type_index;
6957
- current_block_type_index = select_block_type_1(ctx2);
7108
+ current_block_type_index = select_block_type_1(ctx2, dirty);
6958
7109
  if (current_block_type_index === previous_block_index) {
6959
7110
  if_blocks[current_block_type_index].p(ctx2, dirty);
6960
7111
  } else {
@@ -7071,7 +7222,7 @@ function create_default_slot_6(ctx) {
7071
7222
  return 0;
7072
7223
  return 1;
7073
7224
  }
7074
- current_block_type_index = select_block_type_2(ctx);
7225
+ current_block_type_index = select_block_type_2(ctx, [-1, -1]);
7075
7226
  if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
7076
7227
  return {
7077
7228
  c() {
@@ -7085,7 +7236,7 @@ function create_default_slot_6(ctx) {
7085
7236
  },
7086
7237
  p(ctx2, dirty) {
7087
7238
  let previous_block_index = current_block_type_index;
7088
- current_block_type_index = select_block_type_2(ctx2);
7239
+ current_block_type_index = select_block_type_2(ctx2, dirty);
7089
7240
  if (current_block_type_index === previous_block_index) {
7090
7241
  if_blocks[current_block_type_index].p(ctx2, dirty);
7091
7242
  } else {
@@ -7202,7 +7353,7 @@ function create_default_slot_53(ctx) {
7202
7353
  return 0;
7203
7354
  return 1;
7204
7355
  }
7205
- current_block_type_index = select_block_type_3(ctx);
7356
+ current_block_type_index = select_block_type_3(ctx, [-1, -1]);
7206
7357
  if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
7207
7358
  return {
7208
7359
  c() {
@@ -7216,7 +7367,7 @@ function create_default_slot_53(ctx) {
7216
7367
  },
7217
7368
  p(ctx2, dirty) {
7218
7369
  let previous_block_index = current_block_type_index;
7219
- current_block_type_index = select_block_type_3(ctx2);
7370
+ current_block_type_index = select_block_type_3(ctx2, dirty);
7220
7371
  if (current_block_type_index === previous_block_index) {
7221
7372
  if_blocks[current_block_type_index].p(ctx2, dirty);
7222
7373
  } else {
@@ -7262,7 +7413,7 @@ function create_else_block_12(ctx) {
7262
7413
  return { props: { theme: ctx2[1] } };
7263
7414
  }
7264
7415
  if (switch_value) {
7265
- switch_instance = new switch_value(switch_props(ctx));
7416
+ switch_instance = construct_svelte_component(switch_value, switch_props(ctx));
7266
7417
  }
7267
7418
  return {
7268
7419
  c() {
@@ -7271,9 +7422,8 @@ function create_else_block_12(ctx) {
7271
7422
  switch_instance_anchor = empty();
7272
7423
  },
7273
7424
  m(target, anchor) {
7274
- if (switch_instance) {
7425
+ if (switch_instance)
7275
7426
  mount_component(switch_instance, target, anchor);
7276
- }
7277
7427
  insert(target, switch_instance_anchor, anchor);
7278
7428
  current = true;
7279
7429
  },
@@ -7291,7 +7441,7 @@ function create_else_block_12(ctx) {
7291
7441
  check_outros();
7292
7442
  }
7293
7443
  if (switch_value) {
7294
- switch_instance = new switch_value(switch_props(ctx2));
7444
+ switch_instance = construct_svelte_component(switch_value, switch_props(ctx2));
7295
7445
  create_component(switch_instance.$$.fragment);
7296
7446
  transition_in(switch_instance.$$.fragment, 1);
7297
7447
  mount_component(switch_instance, switch_instance_anchor.parentNode, switch_instance_anchor);
@@ -7333,7 +7483,7 @@ function create_if_block_3(ctx) {
7333
7483
  };
7334
7484
  }
7335
7485
  if (switch_value) {
7336
- switch_instance = new switch_value(switch_props(ctx));
7486
+ switch_instance = construct_svelte_component(switch_value, switch_props(ctx));
7337
7487
  }
7338
7488
  return {
7339
7489
  c() {
@@ -7342,9 +7492,8 @@ function create_if_block_3(ctx) {
7342
7492
  switch_instance_anchor = empty();
7343
7493
  },
7344
7494
  m(target, anchor) {
7345
- if (switch_instance) {
7495
+ if (switch_instance)
7346
7496
  mount_component(switch_instance, target, anchor);
7347
- }
7348
7497
  insert(target, switch_instance_anchor, anchor);
7349
7498
  current = true;
7350
7499
  },
@@ -7362,7 +7511,7 @@ function create_if_block_3(ctx) {
7362
7511
  check_outros();
7363
7512
  }
7364
7513
  if (switch_value) {
7365
- switch_instance = new switch_value(switch_props(ctx2));
7514
+ switch_instance = construct_svelte_component(switch_value, switch_props(ctx2));
7366
7515
  create_component(switch_instance.$$.fragment);
7367
7516
  transition_in(switch_instance.$$.fragment, 1);
7368
7517
  mount_component(switch_instance, switch_instance_anchor.parentNode, switch_instance_anchor);
@@ -7405,7 +7554,7 @@ function create_default_slot_43(ctx) {
7405
7554
  return 0;
7406
7555
  return 1;
7407
7556
  }
7408
- current_block_type_index = select_block_type_4(ctx);
7557
+ current_block_type_index = select_block_type_4(ctx, [-1, -1]);
7409
7558
  if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
7410
7559
  return {
7411
7560
  c() {
@@ -7419,7 +7568,7 @@ function create_default_slot_43(ctx) {
7419
7568
  },
7420
7569
  p(ctx2, dirty) {
7421
7570
  let previous_block_index = current_block_type_index;
7422
- current_block_type_index = select_block_type_4(ctx2);
7571
+ current_block_type_index = select_block_type_4(ctx2, dirty);
7423
7572
  if (current_block_type_index === previous_block_index) {
7424
7573
  if_blocks[current_block_type_index].p(ctx2, dirty);
7425
7574
  } else {
@@ -7536,7 +7685,7 @@ function create_default_slot_34(ctx) {
7536
7685
  return 0;
7537
7686
  return 1;
7538
7687
  }
7539
- current_block_type_index = select_block_type_5(ctx);
7688
+ current_block_type_index = select_block_type_5(ctx, [-1, -1]);
7540
7689
  if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
7541
7690
  return {
7542
7691
  c() {
@@ -7550,7 +7699,7 @@ function create_default_slot_34(ctx) {
7550
7699
  },
7551
7700
  p(ctx2, dirty) {
7552
7701
  let previous_block_index = current_block_type_index;
7553
- current_block_type_index = select_block_type_5(ctx2);
7702
+ current_block_type_index = select_block_type_5(ctx2, dirty);
7554
7703
  if (current_block_type_index === previous_block_index) {
7555
7704
  if_blocks[current_block_type_index].p(ctx2, dirty);
7556
7705
  } else {
@@ -7654,7 +7803,7 @@ function create_if_block_12(ctx) {
7654
7803
  dirty[0] & 16384 && { menu: ctx2[14] },
7655
7804
  button_spread_levels[4]
7656
7805
  ]) : {};
7657
- if (dirty[0] & 2 | dirty[1] & 524288) {
7806
+ if (dirty[0] & 2 | dirty[1] & 1048576) {
7658
7807
  button_changes.$$scope = { dirty, ctx: ctx2 };
7659
7808
  }
7660
7809
  button.$set(button_changes);
@@ -7735,7 +7884,7 @@ function create_if_block6(ctx) {
7735
7884
  button_changes.theme = ctx2[1];
7736
7885
  if (dirty[0] & 8)
7737
7886
  button_changes.disabled = ctx2[3];
7738
- if (dirty[0] & 2 | dirty[1] & 524288) {
7887
+ if (dirty[0] & 2 | dirty[1] & 1048576) {
7739
7888
  button_changes.$$scope = { dirty, ctx: ctx2 };
7740
7889
  }
7741
7890
  button.$set(button_changes);
@@ -7797,7 +7946,7 @@ function create_each_block4(ctx) {
7797
7946
  let img_title_value;
7798
7947
  let t0;
7799
7948
  let span;
7800
- let t1_value = ctx[43] + "";
7949
+ let t1_value = ctx[44] + "";
7801
7950
  let t1;
7802
7951
  let span_class_value;
7803
7952
  let t2;
@@ -7816,17 +7965,17 @@ function create_each_block4(ctx) {
7816
7965
  t1 = text(t1_value);
7817
7966
  t2 = space();
7818
7967
  attr(img, "class", img_class_value = name5 + "-app-btn-icon " + ctx[1]);
7819
- if (!src_url_equal(img.src, img_src_value = ctx[42]))
7968
+ if (!src_url_equal(img.src, img_src_value = ctx[43]))
7820
7969
  attr(img, "src", img_src_value);
7821
- attr(img, "alt", img_alt_value = ctx[44]);
7822
- attr(img, "title", img_title_value = ctx[43]);
7970
+ attr(img, "alt", img_alt_value = ctx[45]);
7971
+ attr(img, "title", img_title_value = ctx[44]);
7823
7972
  attr(span, "class", span_class_value = name5 + "-app-btn-text " + ctx[1]);
7824
- attr(button, "class", button_class_value = name5 + "-app-btn " + ctx[44] + " " + ctx[1]);
7825
- attr(button, "title", button_title_value = ctx[43] + (ctx[46] && ctx[46].reason ? ": " + ctx[46].reason : ""));
7826
- attr(button, "data-app-kind", button_data_app_kind_value = ctx[41].kind);
7827
- button.disabled = button_disabled_value = ctx[46] && ctx[46].status !== "idle";
7828
- toggle_class(button, "is-loading", ctx[46] && ctx[46].status === "loading");
7829
- toggle_class(button, "is-failed", ctx[46] && ctx[46].status === "failed");
7973
+ attr(button, "class", button_class_value = name5 + "-app-btn " + ctx[45] + " " + ctx[1]);
7974
+ attr(button, "title", button_title_value = ctx[44] + (ctx[47] && ctx[47].reason ? ": " + ctx[47].reason : ""));
7975
+ attr(button, "data-app-kind", button_data_app_kind_value = ctx[42].kind);
7976
+ button.disabled = button_disabled_value = ctx[47] && ctx[47].status !== "idle";
7977
+ toggle_class(button, "is-loading", ctx[47] && ctx[47].status === "loading");
7978
+ toggle_class(button, "is-failed", ctx[47] && ctx[47].status === "failed");
7830
7979
  },
7831
7980
  m(target, anchor) {
7832
7981
  insert(target, button, anchor);
@@ -7837,8 +7986,8 @@ function create_each_block4(ctx) {
7837
7986
  append(button, t2);
7838
7987
  if (!mounted) {
7839
7988
  dispose = listen(button, "click", function() {
7840
- if (is_function(ctx[47]))
7841
- ctx[47].apply(this, arguments);
7989
+ if (is_function(ctx[48]))
7990
+ ctx[48].apply(this, arguments);
7842
7991
  });
7843
7992
  mounted = true;
7844
7993
  }
@@ -7848,37 +7997,37 @@ function create_each_block4(ctx) {
7848
7997
  if (dirty[0] & 2 && img_class_value !== (img_class_value = name5 + "-app-btn-icon " + ctx[1])) {
7849
7998
  attr(img, "class", img_class_value);
7850
7999
  }
7851
- if (dirty[0] & 524288 && !src_url_equal(img.src, img_src_value = ctx[42])) {
8000
+ if (dirty[0] & 524288 && !src_url_equal(img.src, img_src_value = ctx[43])) {
7852
8001
  attr(img, "src", img_src_value);
7853
8002
  }
7854
- if (dirty[0] & 524288 && img_alt_value !== (img_alt_value = ctx[44])) {
8003
+ if (dirty[0] & 524288 && img_alt_value !== (img_alt_value = ctx[45])) {
7855
8004
  attr(img, "alt", img_alt_value);
7856
8005
  }
7857
- if (dirty[0] & 524288 && img_title_value !== (img_title_value = ctx[43])) {
8006
+ if (dirty[0] & 524288 && img_title_value !== (img_title_value = ctx[44])) {
7858
8007
  attr(img, "title", img_title_value);
7859
8008
  }
7860
- if (dirty[0] & 524288 && t1_value !== (t1_value = ctx[43] + ""))
8009
+ if (dirty[0] & 524288 && t1_value !== (t1_value = ctx[44] + ""))
7861
8010
  set_data(t1, t1_value);
7862
8011
  if (dirty[0] & 2 && span_class_value !== (span_class_value = name5 + "-app-btn-text " + ctx[1])) {
7863
8012
  attr(span, "class", span_class_value);
7864
8013
  }
7865
- if (dirty[0] & 524290 && button_class_value !== (button_class_value = name5 + "-app-btn " + ctx[44] + " " + ctx[1])) {
8014
+ if (dirty[0] & 524290 && button_class_value !== (button_class_value = name5 + "-app-btn " + ctx[45] + " " + ctx[1])) {
7866
8015
  attr(button, "class", button_class_value);
7867
8016
  }
7868
- if (dirty[0] & 1572864 && button_title_value !== (button_title_value = ctx[43] + (ctx[46] && ctx[46].reason ? ": " + ctx[46].reason : ""))) {
8017
+ if (dirty[0] & 1572864 && button_title_value !== (button_title_value = ctx[44] + (ctx[47] && ctx[47].reason ? ": " + ctx[47].reason : ""))) {
7869
8018
  attr(button, "title", button_title_value);
7870
8019
  }
7871
- if (dirty[0] & 524288 && button_data_app_kind_value !== (button_data_app_kind_value = ctx[41].kind)) {
8020
+ if (dirty[0] & 524288 && button_data_app_kind_value !== (button_data_app_kind_value = ctx[42].kind)) {
7872
8021
  attr(button, "data-app-kind", button_data_app_kind_value);
7873
8022
  }
7874
- if (dirty[0] & 1572864 && button_disabled_value !== (button_disabled_value = ctx[46] && ctx[46].status !== "idle")) {
8023
+ if (dirty[0] & 1572864 && button_disabled_value !== (button_disabled_value = ctx[47] && ctx[47].status !== "idle")) {
7875
8024
  button.disabled = button_disabled_value;
7876
8025
  }
7877
8026
  if (dirty[0] & 1572866) {
7878
- toggle_class(button, "is-loading", ctx[46] && ctx[46].status === "loading");
8027
+ toggle_class(button, "is-loading", ctx[47] && ctx[47].status === "loading");
7879
8028
  }
7880
8029
  if (dirty[0] & 1572866) {
7881
- toggle_class(button, "is-failed", ctx[46] && ctx[46].status === "failed");
8030
+ toggle_class(button, "is-failed", ctx[47] && ctx[47].status === "failed");
7882
8031
  }
7883
8032
  },
7884
8033
  d(detaching) {
@@ -7906,7 +8055,9 @@ function create_fragment54(ctx) {
7906
8055
  let t6;
7907
8056
  let button6;
7908
8057
  let t7;
8058
+ let div0_class_value;
7909
8059
  let scrollHeight_action;
8060
+ let scrollTop_action;
7910
8061
  let t8;
7911
8062
  let t9;
7912
8063
  let div8;
@@ -7914,24 +8065,32 @@ function create_fragment54(ctx) {
7914
8065
  let strokewidth0;
7915
8066
  let t10;
7916
8067
  let div1;
8068
+ let div1_class_value;
7917
8069
  let t11;
7918
8070
  let strokecolor0;
8071
+ let div2_class_value;
7919
8072
  let t12;
7920
8073
  let div3;
7921
8074
  let textcolor;
8075
+ let div3_class_value;
7922
8076
  let t13;
7923
8077
  let div6;
7924
8078
  let shapes2;
7925
8079
  let t14;
7926
8080
  let div4;
8081
+ let div4_class_value;
7927
8082
  let t15;
7928
8083
  let strokewidth1;
7929
8084
  let t16;
7930
8085
  let div5;
8086
+ let div5_class_value;
7931
8087
  let t17;
7932
8088
  let strokecolor1;
8089
+ let div6_class_value;
7933
8090
  let t18;
7934
8091
  let div7;
8092
+ let div7_class_value;
8093
+ let div8_class_value;
7935
8094
  let current;
7936
8095
  let mounted;
7937
8096
  let dispose;
@@ -8131,17 +8290,17 @@ function create_fragment54(ctx) {
8131
8290
  for (let i = 0; i < each_blocks.length; i += 1) {
8132
8291
  each_blocks[i].c();
8133
8292
  }
8134
- attr(div0, "class", name5 + "-scrollable");
8293
+ attr(div0, "class", div0_class_value = name5 + "-scrollable");
8135
8294
  toggle_class(div0, "scrollable", ctx[5]);
8136
- attr(div1, "class", name5 + "-panel-divider");
8137
- attr(div2, "class", name5 + "-panel pencil");
8138
- attr(div3, "class", name5 + "-panel text");
8139
- attr(div4, "class", name5 + "-panel-divider");
8140
- attr(div5, "class", name5 + "-panel-divider");
8141
- attr(div6, "class", name5 + "-panel shapes");
8142
- attr(div7, "class", name5 + "-panel apps");
8295
+ attr(div1, "class", div1_class_value = name5 + "-panel-divider");
8296
+ attr(div2, "class", div2_class_value = name5 + "-panel pencil");
8297
+ attr(div3, "class", div3_class_value = name5 + "-panel text");
8298
+ attr(div4, "class", div4_class_value = name5 + "-panel-divider");
8299
+ attr(div5, "class", div5_class_value = name5 + "-panel-divider");
8300
+ attr(div6, "class", div6_class_value = name5 + "-panel shapes");
8301
+ attr(div7, "class", div7_class_value = name5 + "-panel apps");
8143
8302
  set_style(div7, "--n", ctx[19].length);
8144
- attr(div8, "class", name5 + "-panel-wrapper");
8303
+ attr(div8, "class", div8_class_value = name5 + "-panel-wrapper");
8145
8304
  set_style(div8, "display", "none");
8146
8305
  },
8147
8306
  m(target, anchor) {
@@ -8198,12 +8357,12 @@ function create_fragment54(ctx) {
8198
8357
  for (let i = 0; i < each_blocks.length; i += 1) {
8199
8358
  each_blocks[i].m(div7, null);
8200
8359
  }
8201
- ctx[38](div7);
8360
+ ctx[39](div7);
8202
8361
  current = true;
8203
8362
  if (!mounted) {
8204
8363
  dispose = [
8205
8364
  action_destroyer(scrollHeight_action = scrollHeight.call(null, div0, ctx[4])),
8206
- action_destroyer(scrollTop.call(null, div0, ctx[21]))
8365
+ action_destroyer(scrollTop_action = scrollTop.call(null, div0, ctx[21]))
8207
8366
  ];
8208
8367
  mounted = true;
8209
8368
  }
@@ -8233,7 +8392,7 @@ function create_fragment54(ctx) {
8233
8392
  dirty[0] & 32768 && get_spread_object(ctx2[15]),
8234
8393
  dirty[0] & 262144 && { content: ctx2[18].clicker }
8235
8394
  ]) : {};
8236
- if (dirty[0] & 258 | dirty[1] & 524288) {
8395
+ if (dirty[0] & 258 | dirty[1] & 1048576) {
8237
8396
  button0_changes.$$scope = { dirty, ctx: ctx2 };
8238
8397
  }
8239
8398
  button0.$set(button0_changes);
@@ -8242,7 +8401,7 @@ function create_fragment54(ctx) {
8242
8401
  dirty[0] & 32768 && get_spread_object(ctx2[15]),
8243
8402
  dirty[0] & 262144 && { content: ctx2[18].selector }
8244
8403
  ]) : {};
8245
- if (dirty[0] & 258 | dirty[1] & 524288) {
8404
+ if (dirty[0] & 258 | dirty[1] & 1048576) {
8246
8405
  button1_changes.$$scope = { dirty, ctx: ctx2 };
8247
8406
  }
8248
8407
  button1.$set(button1_changes);
@@ -8252,7 +8411,7 @@ function create_fragment54(ctx) {
8252
8411
  dirty[0] & 262144 && { content: ctx2[18].pencil },
8253
8412
  dirty[0] & 2048 && { menu: ctx2[11] }
8254
8413
  ]) : {};
8255
- if (dirty[0] & 258 | dirty[1] & 524288) {
8414
+ if (dirty[0] & 258 | dirty[1] & 1048576) {
8256
8415
  button2_changes.$$scope = { dirty, ctx: ctx2 };
8257
8416
  }
8258
8417
  button2.$set(button2_changes);
@@ -8262,7 +8421,7 @@ function create_fragment54(ctx) {
8262
8421
  dirty[0] & 262144 && { content: ctx2[18].text },
8263
8422
  dirty[0] & 4096 && { menu: ctx2[12] }
8264
8423
  ]) : {};
8265
- if (dirty[0] & 258 | dirty[1] & 524288) {
8424
+ if (dirty[0] & 258 | dirty[1] & 1048576) {
8266
8425
  button3_changes.$$scope = { dirty, ctx: ctx2 };
8267
8426
  }
8268
8427
  button3.$set(button3_changes);
@@ -8272,7 +8431,7 @@ function create_fragment54(ctx) {
8272
8431
  dirty[0] & 512 && { content: ctx2[9].shapes },
8273
8432
  dirty[0] & 8192 && { menu: ctx2[13] }
8274
8433
  ]) : {};
8275
- if (dirty[0] & 1410 | dirty[1] & 524288) {
8434
+ if (dirty[0] & 1410 | dirty[1] & 1048576) {
8276
8435
  button4_changes.$$scope = { dirty, ctx: ctx2 };
8277
8436
  }
8278
8437
  button4.$set(button4_changes);
@@ -8281,7 +8440,7 @@ function create_fragment54(ctx) {
8281
8440
  dirty[0] & 32768 && get_spread_object(ctx2[15]),
8282
8441
  dirty[0] & 262144 && { content: ctx2[18].eraser }
8283
8442
  ]) : {};
8284
- if (dirty[0] & 258 | dirty[1] & 524288) {
8443
+ if (dirty[0] & 258 | dirty[1] & 1048576) {
8285
8444
  button5_changes.$$scope = { dirty, ctx: ctx2 };
8286
8445
  }
8287
8446
  button5.$set(button5_changes);
@@ -8290,7 +8449,7 @@ function create_fragment54(ctx) {
8290
8449
  dirty[0] & 32768 && get_spread_object(ctx2[15]),
8291
8450
  dirty[0] & 512 && { content: ctx2[9].clear }
8292
8451
  ]) : {};
8293
- if (dirty[0] & 2 | dirty[1] & 524288) {
8452
+ if (dirty[0] & 2 | dirty[1] & 1048576) {
8294
8453
  button6_changes.$$scope = { dirty, ctx: ctx2 };
8295
8454
  }
8296
8455
  button6.$set(button6_changes);
@@ -8315,7 +8474,7 @@ function create_fragment54(ctx) {
8315
8474
  }
8316
8475
  if (scrollHeight_action && is_function(scrollHeight_action.update) && dirty[0] & 16)
8317
8476
  scrollHeight_action.update.call(null, ctx2[4]);
8318
- if (dirty[0] & 32) {
8477
+ if (!current || dirty[0] & 32) {
8319
8478
  toggle_class(div0, "scrollable", ctx2[5]);
8320
8479
  }
8321
8480
  if (ctx2[5]) {
@@ -8483,7 +8642,7 @@ function create_fragment54(ctx) {
8483
8642
  destroy_component(strokecolor1);
8484
8643
  ctx[37](null);
8485
8644
  destroy_each(each_blocks, detaching);
8486
- ctx[38](null);
8645
+ ctx[39](null);
8487
8646
  mounted = false;
8488
8647
  run_all(dispose);
8489
8648
  }
@@ -8524,7 +8683,7 @@ function instance54($$self, $$props, $$invalidate) {
8524
8683
  let apps_panel;
8525
8684
  let btn_props;
8526
8685
  let top = writable(0);
8527
- component_subscribe($$self, top, (value) => $$invalidate(40, $top = value));
8686
+ component_subscribe($$self, top, (value) => $$invalidate(41, $top = value));
8528
8687
  function scroll_up() {
8529
8688
  set_store_value(top, $top = clamp($top - 32 - 4, 0, max_scroll), $top);
8530
8689
  }
@@ -8574,6 +8733,10 @@ function instance54($$self, $$props, $$invalidate) {
8574
8733
  $$invalidate(13, shapes_panel);
8575
8734
  });
8576
8735
  }
8736
+ const func = (onClick) => {
8737
+ app && onClick(app);
8738
+ tippy_hide_all();
8739
+ };
8577
8740
  function div7_binding($$value) {
8578
8741
  binding_callbacks[$$value ? "unshift" : "push"](() => {
8579
8742
  apps_panel = $$value;
@@ -8600,7 +8763,8 @@ function instance54($$self, $$props, $$invalidate) {
8600
8763
  };
8601
8764
  $$self.$$.update = () => {
8602
8765
  if ($$self.$$.dirty[0] & 10) {
8603
- $$invalidate(15, btn_props = {
8766
+ $:
8767
+ $$invalidate(15, btn_props = {
8604
8768
  name: name5,
8605
8769
  theme,
8606
8770
  disabled,
@@ -8608,13 +8772,16 @@ function instance54($$self, $$props, $$invalidate) {
8608
8772
  });
8609
8773
  }
8610
8774
  if ($$self.$$.dirty[0] & 4) {
8611
- $$invalidate(9, t = i18n4[language]);
8775
+ $:
8776
+ $$invalidate(9, t = i18n4[language]);
8612
8777
  }
8613
8778
  if ($$self.$$.dirty[0] & 1) {
8614
- $$invalidate(32, hotkeys = app == null ? void 0 : app.hotKeys);
8779
+ $:
8780
+ $$invalidate(32, hotkeys = app == null ? void 0 : app.hotKeys);
8615
8781
  }
8616
8782
  if ($$self.$$.dirty[0] & 512 | $$self.$$.dirty[1] & 2) {
8617
- $$invalidate(18, c = {
8783
+ $:
8784
+ $$invalidate(18, c = {
8618
8785
  clicker: tooltip(t.clicker, hotkeys == null ? void 0 : hotkeys.changeToClick),
8619
8786
  selector: tooltip(t.selector, hotkeys == null ? void 0 : hotkeys.changeToSelector),
8620
8787
  pencil: tooltip(t.pencil, hotkeys == null ? void 0 : hotkeys.changeToPencil),
@@ -8623,26 +8790,32 @@ function instance54($$self, $$props, $$invalidate) {
8623
8790
  });
8624
8791
  }
8625
8792
  if ($$self.$$.dirty[0] & 1) {
8626
- $$subscribe_memberState($$invalidate(17, memberState = app == null ? void 0 : app.memberState));
8793
+ $:
8794
+ $$subscribe_memberState($$invalidate(17, memberState = app == null ? void 0 : app.memberState));
8627
8795
  }
8628
8796
  if ($$self.$$.dirty[1] & 8) {
8629
- $$invalidate(8, appliance = $memberState == null ? void 0 : $memberState.currentApplianceName);
8797
+ $:
8798
+ $$invalidate(8, appliance = $memberState == null ? void 0 : $memberState.currentApplianceName);
8630
8799
  }
8631
8800
  if ($$self.$$.dirty[1] & 8) {
8632
- $$invalidate(7, shape = $memberState == null ? void 0 : $memberState.shapeType);
8801
+ $:
8802
+ $$invalidate(7, shape = $memberState == null ? void 0 : $memberState.shapeType);
8633
8803
  }
8634
8804
  if ($$self.$$.dirty[0] & 1) {
8635
- $$subscribe_status($$invalidate(16, status = app == null ? void 0 : app.appsStatus));
8805
+ $:
8806
+ $$subscribe_status($$invalidate(16, status = app == null ? void 0 : app.appsStatus));
8636
8807
  }
8637
8808
  if ($$self.$$.dirty[0] & 384) {
8638
- if (applianceShapes.includes(appliance)) {
8809
+ $:
8810
+ if (applianceShapes.includes(appliance)) {
8639
8811
  $$invalidate(10, last_shape = appliance);
8640
8812
  } else if (shape) {
8641
8813
  $$invalidate(10, last_shape = shape);
8642
8814
  }
8643
8815
  }
8644
8816
  if ($$self.$$.dirty[0] & 32 | $$self.$$.dirty[1] & 5) {
8645
- max_scroll = scrollable ? $scroll_height + (32 + 8) * 2 - computed_height : 0;
8817
+ $:
8818
+ max_scroll = scrollable ? $scroll_height + (32 + 8) * 2 - computed_height : 0;
8646
8819
  }
8647
8820
  };
8648
8821
  return [
@@ -8684,22 +8857,32 @@ function instance54($$self, $$props, $$invalidate) {
8684
8857
  div2_binding,
8685
8858
  div3_binding,
8686
8859
  div6_binding,
8860
+ func,
8687
8861
  div7_binding
8688
8862
  ];
8689
8863
  }
8690
8864
  var Contents = class extends SvelteComponent {
8691
8865
  constructor(options) {
8692
8866
  super();
8693
- init(this, options, instance54, create_fragment54, safe_not_equal, {
8694
- app: 0,
8695
- theme: 1,
8696
- language: 2,
8697
- disabled: 3,
8698
- scroll_height: 4,
8699
- computed_height: 31,
8700
- scrollable: 5,
8701
- hide_apps: 6
8702
- }, null, [-1, -1]);
8867
+ init(
8868
+ this,
8869
+ options,
8870
+ instance54,
8871
+ create_fragment54,
8872
+ safe_not_equal,
8873
+ {
8874
+ app: 0,
8875
+ theme: 1,
8876
+ language: 2,
8877
+ disabled: 3,
8878
+ scroll_height: 4,
8879
+ computed_height: 31,
8880
+ scrollable: 5,
8881
+ hide_apps: 6
8882
+ },
8883
+ null,
8884
+ [-1, -1]
8885
+ );
8703
8886
  }
8704
8887
  };
8705
8888
  var Contents_default = Contents;
@@ -8707,18 +8890,20 @@ var Contents_default = Contents;
8707
8890
  // src/components/Toolbar/Toolbar.svelte
8708
8891
  function create_else_block7(ctx) {
8709
8892
  let path0;
8893
+ let path0_class_value;
8710
8894
  let path1;
8895
+ let path1_class_value;
8711
8896
  return {
8712
8897
  c() {
8713
8898
  path0 = svg_element("path");
8714
8899
  path1 = svg_element("path");
8715
8900
  attr(path0, "stroke", "#000");
8716
8901
  attr(path0, "d", "M20 52v16");
8717
- attr(path0, "class", name6 + "-handler-image-stroke-color");
8902
+ attr(path0, "class", path0_class_value = name6 + "-handler-image-stroke-color");
8718
8903
  attr(path1, "fill", "#000");
8719
8904
  attr(path1, "stroke", "none");
8720
8905
  attr(path1, "d", "M16 52v16l-8-8z");
8721
- attr(path1, "class", name6 + "-handler-image-fill-color");
8906
+ attr(path1, "class", path1_class_value = name6 + "-handler-image-fill-color");
8722
8907
  },
8723
8908
  m(target, anchor) {
8724
8909
  insert(target, path0, anchor);
@@ -8735,18 +8920,20 @@ function create_else_block7(ctx) {
8735
8920
  }
8736
8921
  function create_if_block7(ctx) {
8737
8922
  let path0;
8923
+ let path0_class_value;
8738
8924
  let path1;
8925
+ let path1_class_value;
8739
8926
  return {
8740
8927
  c() {
8741
8928
  path0 = svg_element("path");
8742
8929
  path1 = svg_element("path");
8743
8930
  attr(path0, "stroke", "#000");
8744
8931
  attr(path0, "d", "M10 52v16");
8745
- attr(path0, "class", name6 + "-handler-image-stroke-color");
8932
+ attr(path0, "class", path0_class_value = name6 + "-handler-image-stroke-color");
8746
8933
  attr(path1, "fill", "#000");
8747
8934
  attr(path1, "stroke", "none");
8748
8935
  attr(path1, "d", "M14 52v16l8-8z");
8749
- attr(path1, "class", name6 + "-handler-image-fill-color");
8936
+ attr(path1, "class", path1_class_value = name6 + "-handler-image-fill-color");
8750
8937
  },
8751
8938
  m(target, anchor) {
8752
8939
  insert(target, path0, anchor);
@@ -8772,9 +8959,12 @@ function create_fragment55(ctx) {
8772
8959
  let t1;
8773
8960
  let svg;
8774
8961
  let path0;
8962
+ let path0_class_value;
8775
8963
  let path1;
8964
+ let path1_class_value;
8776
8965
  let label_class_value;
8777
8966
  let div1_class_value;
8967
+ let height_action;
8778
8968
  let current;
8779
8969
  let mounted;
8780
8970
  let dispose;
@@ -8795,7 +8985,7 @@ function create_fragment55(ctx) {
8795
8985
  return create_if_block7;
8796
8986
  return create_else_block7;
8797
8987
  }
8798
- let current_block_type = select_block_type(ctx);
8988
+ let current_block_type = select_block_type(ctx, -1);
8799
8989
  let if_block = current_block_type(ctx);
8800
8990
  return {
8801
8991
  c() {
@@ -8811,15 +9001,15 @@ function create_fragment55(ctx) {
8811
9001
  path1 = svg_element("path");
8812
9002
  if_block.c();
8813
9003
  attr(div0, "class", div0_class_value = name6 + "-contents " + ctx[1]);
8814
- set_style(div0, "height", ctx[5] ? ctx[6] + "px" : "auto", false);
9004
+ set_style(div0, "height", ctx[5] ? ctx[6] + "px" : "auto");
8815
9005
  attr(input, "type", "checkbox");
8816
9006
  attr(path0, "fill", "#fff");
8817
9007
  attr(path0, "stroke", "none");
8818
9008
  attr(path0, "d", "m0 0 24 16q6 4 6 14v60q0 10-6 14L0 120");
8819
- attr(path0, "class", name6 + "-handler-bg-color");
9009
+ attr(path0, "class", path0_class_value = name6 + "-handler-bg-color");
8820
9010
  attr(path1, "stroke", "#000");
8821
9011
  attr(path1, "d", "m0 0 24 16q6 4 6 14v60q0 10-6 14L0 120");
8822
- attr(path1, "class", name6 + "-handler-border-color");
9012
+ attr(path1, "class", path1_class_value = name6 + "-handler-border-color");
8823
9013
  attr(svg, "fill", "none");
8824
9014
  attr(svg, "stroke-width", "2");
8825
9015
  attr(svg, "viewBox", "0 0 32 120");
@@ -8844,7 +9034,7 @@ function create_fragment55(ctx) {
8844
9034
  if (!mounted) {
8845
9035
  dispose = [
8846
9036
  listen(input, "change", ctx[15]),
8847
- action_destroyer(height.call(null, div1, ctx[9]))
9037
+ action_destroyer(height_action = height.call(null, div1, ctx[9]))
8848
9038
  ];
8849
9039
  mounted = true;
8850
9040
  }
@@ -8870,12 +9060,12 @@ function create_fragment55(ctx) {
8870
9060
  attr(div0, "class", div0_class_value);
8871
9061
  }
8872
9062
  if (dirty & 96) {
8873
- set_style(div0, "height", ctx2[5] ? ctx2[6] + "px" : "auto", false);
9063
+ set_style(div0, "height", ctx2[5] ? ctx2[6] + "px" : "auto");
8874
9064
  }
8875
9065
  if (dirty & 8) {
8876
9066
  input.checked = ctx2[3];
8877
9067
  }
8878
- if (current_block_type === (current_block_type = select_block_type(ctx2)) && if_block) {
9068
+ if (current_block_type === (current_block_type = select_block_type(ctx2, dirty)) && if_block) {
8879
9069
  if_block.p(ctx2, dirty);
8880
9070
  } else {
8881
9071
  if_block.d(1);
@@ -8891,7 +9081,7 @@ function create_fragment55(ctx) {
8891
9081
  if (!current || dirty & 2 && div1_class_value !== (div1_class_value = name6 + " " + ctx2[1])) {
8892
9082
  attr(div1, "class", div1_class_value);
8893
9083
  }
8894
- if (dirty & 10) {
9084
+ if (!current || dirty & 10) {
8895
9085
  toggle_class(div1, "collapsed", ctx2[3]);
8896
9086
  }
8897
9087
  },
@@ -8953,19 +9143,24 @@ function instance55($$self, $$props, $$invalidate) {
8953
9143
  $$self.$$.update = () => {
8954
9144
  var _a;
8955
9145
  if ($$self.$$.dirty & 1) {
8956
- $$subscribe_writable($$invalidate(8, writable2 = app == null ? void 0 : app.writable));
9146
+ $:
9147
+ $$subscribe_writable($$invalidate(8, writable2 = app == null ? void 0 : app.writable));
8957
9148
  }
8958
9149
  if ($$self.$$.dirty & 16384) {
8959
- $$invalidate(7, disabled = !$writable);
9150
+ $:
9151
+ $$invalidate(7, disabled = !$writable);
8960
9152
  }
8961
9153
  if ($$self.$$.dirty & 12288) {
8962
- $$invalidate(6, computed_height = clamp($container_height, extra_height, $scroll_height + extra_height));
9154
+ $:
9155
+ $$invalidate(6, computed_height = clamp($container_height, extra_height, $scroll_height + extra_height));
8963
9156
  }
8964
9157
  if ($$self.$$.dirty & 12288) {
8965
- $$invalidate(5, scrollable = $scroll_height + extra_height > $container_height);
9158
+ $:
9159
+ $$invalidate(5, scrollable = $scroll_height + extra_height > $container_height);
8966
9160
  }
8967
9161
  if ($$self.$$.dirty & 2048) {
8968
- $$invalidate(4, hide_apps = ((_a = config.apps) == null ? void 0 : _a.enable) === false);
9162
+ $:
9163
+ $$invalidate(4, hide_apps = ((_a = config.apps) == null ? void 0 : _a.enable) === false);
8969
9164
  }
8970
9165
  };
8971
9166
  return [
@@ -9254,7 +9449,7 @@ function create_default_slot_25(ctx) {
9254
9449
  return 1;
9255
9450
  return 2;
9256
9451
  }
9257
- current_block_type_index = select_block_type(ctx);
9452
+ current_block_type_index = select_block_type(ctx, -1);
9258
9453
  if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
9259
9454
  return {
9260
9455
  c() {
@@ -9268,7 +9463,7 @@ function create_default_slot_25(ctx) {
9268
9463
  },
9269
9464
  p(ctx2, dirty) {
9270
9465
  let previous_block_index = current_block_type_index;
9271
- current_block_type_index = select_block_type(ctx2);
9466
+ current_block_type_index = select_block_type(ctx2, dirty);
9272
9467
  if (current_block_type_index === previous_block_index) {
9273
9468
  if_blocks[current_block_type_index].p(ctx2, dirty);
9274
9469
  } else {
@@ -9312,13 +9507,17 @@ function create_else_block8(ctx) {
9312
9507
  let span0;
9313
9508
  let t1_value = format(ctx[13]) + "";
9314
9509
  let t1;
9510
+ let span0_class_value;
9315
9511
  let t2;
9316
9512
  let span1;
9317
9513
  let t3;
9514
+ let span1_class_value;
9318
9515
  let t4;
9319
9516
  let span2;
9320
9517
  let t5_value = format(ctx[14]) + "";
9321
9518
  let t5;
9519
+ let span2_class_value;
9520
+ let span3_class_value;
9322
9521
  let current;
9323
9522
  slider = new Slider_default({
9324
9523
  props: {
@@ -9343,10 +9542,10 @@ function create_else_block8(ctx) {
9343
9542
  t4 = space();
9344
9543
  span2 = element("span");
9345
9544
  t5 = text(t5_value);
9346
- attr(span0, "class", name7 + "-current");
9347
- attr(span1, "class", name7 + "-slash");
9348
- attr(span2, "class", name7 + "-duration");
9349
- attr(span3, "class", name7 + "-progress");
9545
+ attr(span0, "class", span0_class_value = name7 + "-current");
9546
+ attr(span1, "class", span1_class_value = name7 + "-slash");
9547
+ attr(span2, "class", span2_class_value = name7 + "-duration");
9548
+ attr(span3, "class", span3_class_value = name7 + "-progress");
9350
9549
  },
9351
9550
  m(target, anchor) {
9352
9551
  mount_component(slider, target, anchor);
@@ -9400,6 +9599,7 @@ function create_if_block8(ctx) {
9400
9599
  let t0;
9401
9600
  let span;
9402
9601
  let t1;
9602
+ let span_class_value;
9403
9603
  let current;
9404
9604
  slider = new Slider_default({
9405
9605
  props: {
@@ -9413,7 +9613,7 @@ function create_if_block8(ctx) {
9413
9613
  t0 = space();
9414
9614
  span = element("span");
9415
9615
  t1 = text("\u2026/\u2026");
9416
- attr(span, "class", name7 + "-progress loading");
9616
+ attr(span, "class", span_class_value = name7 + "-progress loading");
9417
9617
  },
9418
9618
  m(target, anchor) {
9419
9619
  mount_component(slider, target, anchor);
@@ -9447,12 +9647,13 @@ function create_default_slot_15(ctx) {
9447
9647
  let t0_value = (ctx[15] || 1) + "";
9448
9648
  let t0;
9449
9649
  let t1;
9650
+ let span_class_value;
9450
9651
  return {
9451
9652
  c() {
9452
9653
  span = element("span");
9453
9654
  t0 = text(t0_value);
9454
9655
  t1 = text("x");
9455
- attr(span, "class", name7 + "-speed-text");
9656
+ attr(span, "class", span_class_value = name7 + "-speed-text");
9456
9657
  },
9457
9658
  m(target, anchor) {
9458
9659
  insert(target, span, anchor);
@@ -9567,6 +9768,7 @@ function create_fragment56(ctx) {
9567
9768
  let div1;
9568
9769
  let each_blocks = [];
9569
9770
  let each_1_lookup = /* @__PURE__ */ new Map();
9771
+ let div1_class_value;
9570
9772
  let current;
9571
9773
  button0 = new Button_default({
9572
9774
  props: {
@@ -9587,7 +9789,7 @@ function create_fragment56(ctx) {
9587
9789
  return 0;
9588
9790
  return 1;
9589
9791
  }
9590
- current_block_type_index = select_block_type_1(ctx);
9792
+ current_block_type_index = select_block_type_1(ctx, -1);
9591
9793
  if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
9592
9794
  button1 = new Button_default({
9593
9795
  props: {
@@ -9624,7 +9826,7 @@ function create_fragment56(ctx) {
9624
9826
  each_blocks[i].c();
9625
9827
  }
9626
9828
  attr(div0, "class", div0_class_value = name7 + " " + ctx[0]);
9627
- attr(div1, "class", name7 + "-panel speed");
9829
+ attr(div1, "class", div1_class_value = name7 + "-panel speed");
9628
9830
  set_style(div2, "display", "none");
9629
9831
  },
9630
9832
  m(target, anchor) {
@@ -9658,7 +9860,7 @@ function create_fragment56(ctx) {
9658
9860
  }
9659
9861
  button0.$set(button0_changes);
9660
9862
  let previous_block_index = current_block_type_index;
9661
- current_block_type_index = select_block_type_1(ctx2);
9863
+ current_block_type_index = select_block_type_1(ctx2, dirty);
9662
9864
  if (current_block_type_index === previous_block_index) {
9663
9865
  if_blocks[current_block_type_index].p(ctx2, dirty);
9664
9866
  } else {
@@ -9826,37 +10028,48 @@ function instance56($$self, $$props, $$invalidate) {
9826
10028
  };
9827
10029
  $$self.$$.update = () => {
9828
10030
  if ($$self.$$.dirty & 1048576) {
9829
- $$invalidate(12, t = i18n6[language]);
10031
+ $:
10032
+ $$invalidate(12, t = i18n6[language]);
9830
10033
  }
9831
10034
  if ($$self.$$.dirty & 524288) {
9832
- $$invalidate(21, canPlay = player == null ? void 0 : player.canplay);
10035
+ $:
10036
+ $$invalidate(21, canPlay = player == null ? void 0 : player.canplay);
9833
10037
  }
9834
10038
  if ($$self.$$.dirty & 2097152) {
9835
- $$invalidate(4, disabled = !canPlay);
10039
+ $:
10040
+ $$invalidate(4, disabled = !canPlay);
9836
10041
  }
9837
10042
  if ($$self.$$.dirty & 16) {
9838
- $$invalidate(5, type = disabled ? "disable" : "normal");
10043
+ $:
10044
+ $$invalidate(5, type = disabled ? "disable" : "normal");
9839
10045
  }
9840
10046
  if ($$self.$$.dirty & 524288) {
9841
- $$subscribe_duration($$invalidate(11, duration = player == null ? void 0 : player.duration));
10047
+ $:
10048
+ $$subscribe_duration($$invalidate(11, duration = player == null ? void 0 : player.duration));
9842
10049
  }
9843
10050
  if ($$self.$$.dirty & 524288) {
9844
- $$subscribe_current($$invalidate(10, current = player == null ? void 0 : player.currentTime));
10051
+ $:
10052
+ $$subscribe_current($$invalidate(10, current = player == null ? void 0 : player.currentTime));
9845
10053
  }
9846
10054
  if ($$self.$$.dirty & 524288) {
9847
- $$subscribe_playbackRate($$invalidate(9, playbackRate = player == null ? void 0 : player.playbackRate));
10055
+ $:
10056
+ $$subscribe_playbackRate($$invalidate(9, playbackRate = player == null ? void 0 : player.playbackRate));
9848
10057
  }
9849
10058
  if ($$self.$$.dirty & 524288) {
9850
- $$subscribe_phase($$invalidate(8, phase = player == null ? void 0 : player.phase));
10059
+ $:
10060
+ $$subscribe_phase($$invalidate(8, phase = player == null ? void 0 : player.phase));
9851
10061
  }
9852
10062
  if ($$self.$$.dirty & 4194304) {
9853
- $$invalidate(3, loading = $phase === "waitingFirstFrame" || $phase === "buffering");
10063
+ $:
10064
+ $$invalidate(3, loading = $phase === "waitingFirstFrame" || $phase === "buffering");
9854
10065
  }
9855
10066
  if ($$self.$$.dirty & 4194304) {
9856
- $$invalidate(2, playing = $phase === "playing");
10067
+ $:
10068
+ $$invalidate(2, playing = $phase === "playing");
9857
10069
  }
9858
10070
  if ($$self.$$.dirty & 12) {
9859
- $$invalidate(7, className = [loading ? "loading" : "", playing ? "pause" : "play"].filter(Boolean).join(" "));
10071
+ $:
10072
+ $$invalidate(7, className = [loading ? "loading" : "", playing ? "pause" : "play"].filter(Boolean).join(" "));
9860
10073
  }
9861
10074
  };
9862
10075
  return [
@@ -9904,9 +10117,12 @@ var PlayerControl_default = PlayerControl;
9904
10117
  function create_fragment57(ctx) {
9905
10118
  let div2;
9906
10119
  let div0;
10120
+ let div0_class_value;
9907
10121
  let t;
9908
10122
  let div1;
9909
10123
  let playercontrol;
10124
+ let div1_class_value;
10125
+ let div2_class_value;
9910
10126
  let current;
9911
10127
  let mounted;
9912
10128
  let dispose;
@@ -9924,9 +10140,9 @@ function create_fragment57(ctx) {
9924
10140
  t = space();
9925
10141
  div1 = element("div");
9926
10142
  create_component(playercontrol.$$.fragment);
9927
- attr(div0, "class", name8 + "-view");
9928
- attr(div1, "class", name8 + "-bottom");
9929
- attr(div2, "class", name8 + "-root");
10143
+ attr(div0, "class", div0_class_value = name8 + "-view");
10144
+ attr(div1, "class", div1_class_value = name8 + "-bottom");
10145
+ attr(div2, "class", div2_class_value = name8 + "-root");
9930
10146
  toggle_class(div2, "loading", !ctx[0]);
9931
10147
  },
9932
10148
  m(target, anchor) {
@@ -9951,7 +10167,7 @@ function create_fragment57(ctx) {
9951
10167
  if (dirty & 4)
9952
10168
  playercontrol_changes.language = ctx2[2];
9953
10169
  playercontrol.$set(playercontrol_changes);
9954
- if (dirty & 1) {
10170
+ if (!current || dirty & 1) {
9955
10171
  toggle_class(div2, "loading", !ctx2[0]);
9956
10172
  }
9957
10173
  },
@@ -10015,7 +10231,8 @@ function instance57($$self, $$props, $$invalidate) {
10015
10231
  };
10016
10232
  $$self.$$.update = () => {
10017
10233
  if ($$self.$$.dirty & 9) {
10018
- try {
10234
+ $:
10235
+ try {
10019
10236
  if (player && container) {
10020
10237
  player.bindContainer(container);
10021
10238
  $$invalidate(6, mounted = true);
@@ -10026,7 +10243,8 @@ function instance57($$self, $$props, $$invalidate) {
10026
10243
  }
10027
10244
  }
10028
10245
  if ($$self.$$.dirty & 67) {
10029
- if (player && theme && mounted) {
10246
+ $:
10247
+ if (player && theme && mounted) {
10030
10248
  player.manager.setPrefersColorScheme(theme);
10031
10249
  }
10032
10250
  }
@@ -10235,13 +10453,18 @@ function create_fragment58(ctx) {
10235
10453
  var _a, _b, _c, _d;
10236
10454
  let div4;
10237
10455
  let div0;
10456
+ let div0_class_value;
10238
10457
  let t0;
10239
10458
  let div1;
10459
+ let div1_class_value;
10240
10460
  let t1;
10241
10461
  let div2;
10242
10462
  let t2;
10463
+ let div2_class_value;
10243
10464
  let t3;
10244
10465
  let div3;
10466
+ let div3_class_value;
10467
+ let div4_class_value;
10245
10468
  let current;
10246
10469
  let mounted;
10247
10470
  let dispose;
@@ -10268,14 +10491,14 @@ function create_fragment58(ctx) {
10268
10491
  div3 = element("div");
10269
10492
  if (if_block3)
10270
10493
  if_block3.c();
10271
- attr(div0, "class", name9 + "-view");
10272
- attr(div1, "class", name9 + "-left");
10494
+ attr(div0, "class", div0_class_value = name9 + "-view");
10495
+ attr(div1, "class", div1_class_value = name9 + "-left");
10273
10496
  toggle_class(div1, "hidden", !(ctx[5] === "visible" || ctx[5] === "toolbar-only"));
10274
- attr(div2, "class", name9 + "-bottom-left");
10497
+ attr(div2, "class", div2_class_value = name9 + "-bottom-left");
10275
10498
  toggle_class(div2, "hidden", ctx[5] !== "visible");
10276
- attr(div3, "class", name9 + "-bottom-right");
10499
+ attr(div3, "class", div3_class_value = name9 + "-bottom-right");
10277
10500
  toggle_class(div3, "hidden", ctx[5] !== "visible");
10278
- attr(div4, "class", name9 + "-root");
10501
+ attr(div4, "class", div4_class_value = name9 + "-root");
10279
10502
  toggle_class(div4, "loading", !ctx[0]);
10280
10503
  },
10281
10504
  m(target, anchor) {
@@ -10324,7 +10547,7 @@ function create_fragment58(ctx) {
10324
10547
  });
10325
10548
  check_outros();
10326
10549
  }
10327
- if (dirty & 32) {
10550
+ if (!current || dirty & 32) {
10328
10551
  toggle_class(div1, "hidden", !(ctx2[5] === "visible" || ctx2[5] === "toolbar-only"));
10329
10552
  }
10330
10553
  if (((_b2 = ctx2[3].redo_undo) == null ? void 0 : _b2.enable) !== false) {
@@ -10365,7 +10588,7 @@ function create_fragment58(ctx) {
10365
10588
  });
10366
10589
  check_outros();
10367
10590
  }
10368
- if (dirty & 32) {
10591
+ if (!current || dirty & 32) {
10369
10592
  toggle_class(div2, "hidden", ctx2[5] !== "visible");
10370
10593
  }
10371
10594
  if (((_d2 = ctx2[3].page_control) == null ? void 0 : _d2.enable) !== false) {
@@ -10387,10 +10610,10 @@ function create_fragment58(ctx) {
10387
10610
  });
10388
10611
  check_outros();
10389
10612
  }
10390
- if (dirty & 32) {
10613
+ if (!current || dirty & 32) {
10391
10614
  toggle_class(div3, "hidden", ctx2[5] !== "visible");
10392
10615
  }
10393
- if (dirty & 1) {
10616
+ if (!current || dirty & 1) {
10394
10617
  toggle_class(div4, "loading", !ctx2[0]);
10395
10618
  }
10396
10619
  },
@@ -10481,16 +10704,20 @@ function instance58($$self, $$props, $$invalidate) {
10481
10704
  };
10482
10705
  $$self.$$.update = () => {
10483
10706
  if ($$self.$$.dirty & 1) {
10484
- $$subscribe_writable($$invalidate(8, writable2 = app == null ? void 0 : app.writable));
10707
+ $:
10708
+ $$subscribe_writable($$invalidate(8, writable2 = app == null ? void 0 : app.writable));
10485
10709
  }
10486
10710
  if ($$self.$$.dirty & 1) {
10487
- $$subscribe_boxState($$invalidate(7, boxState = app == null ? void 0 : app.boxState));
10711
+ $:
10712
+ $$subscribe_boxState($$invalidate(7, boxState = app == null ? void 0 : app.boxState));
10488
10713
  }
10489
10714
  if ($$self.$$.dirty & 1) {
10490
- $$subscribe_focusedApp($$invalidate(6, focusedApp = app == null ? void 0 : app.focusedApp));
10715
+ $:
10716
+ $$subscribe_focusedApp($$invalidate(6, focusedApp = app == null ? void 0 : app.focusedApp));
10491
10717
  }
10492
10718
  if ($$self.$$.dirty & 28672) {
10493
- if (!$writable) {
10719
+ $:
10720
+ if (!$writable) {
10494
10721
  $$invalidate(5, layout = "hidden");
10495
10722
  } else if ($boxState === "maximized") {
10496
10723
  if ($focusedApp && AppsShowToolbar.some((kind) => ($focusedApp || "").includes(kind))) {
@@ -10503,7 +10730,8 @@ function instance58($$self, $$props, $$invalidate) {
10503
10730
  }
10504
10731
  }
10505
10732
  if ($$self.$$.dirty & 17) {
10506
- try {
10733
+ $:
10734
+ try {
10507
10735
  if (app && container) {
10508
10736
  app.bindContainer(container);
10509
10737
  $$invalidate(11, mounted = true);
@@ -10514,7 +10742,8 @@ function instance58($$self, $$props, $$invalidate) {
10514
10742
  }
10515
10743
  }
10516
10744
  if ($$self.$$.dirty & 2051) {
10517
- if (app && theme && mounted) {
10745
+ $:
10746
+ if (app && theme && mounted) {
10518
10747
  app.manager.setPrefersColorScheme(theme);
10519
10748
  }
10520
10749
  }
@@ -10607,22 +10836,16 @@ function createReplayUI(player, div) {
10607
10836
  }
10608
10837
  return ui;
10609
10838
  }
10610
-
10611
- // inline-sass-helper:inline-sass-style-helper.js
10612
- function injectStyle(text2) {
10613
- if (typeof document !== "undefined") {
10614
- var style = document.createElement("style");
10615
- var node = document.createTextNode(text2);
10616
- style.appendChild(node);
10617
- document.head.appendChild(style);
10618
- }
10619
- }
10620
-
10621
- // inline-sass-content:./src/style.scss
10622
- var style_default = '.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}.tippy-box[data-theme~=light]{color:#26323d;box-shadow:0 0 20px 4px #9aa1b126,0 4px 80px -8px #24282f40,0 4px 4px -2px #5b5e6926;background-color:#fff}.tippy-box[data-theme~=light][data-placement^=top]>.tippy-arrow:before{border-top-color:#fff}.tippy-box[data-theme~=light][data-placement^=bottom]>.tippy-arrow:before{border-bottom-color:#fff}.tippy-box[data-theme~=light][data-placement^=left]>.tippy-arrow:before{border-left-color:#fff}.tippy-box[data-theme~=light][data-placement^=right]>.tippy-arrow:before{border-right-color:#fff}.tippy-box[data-theme~=light]>.tippy-backdrop{background-color:#fff}.tippy-box[data-theme~=light]>.tippy-svg-arrow{fill:#fff}.fastboard-icon.light .fastboard-icon-stroke-color{stroke:var(--fastboard-color, #5d6066)}.fastboard-icon.light .fastboard-icon-fill-color{fill:var(--fastboard-color, #5d6066)}.fastboard-icon.light.is-active .fastboard-icon-stroke-color{stroke:var(--fastboard-active-color, #3381ff)}.fastboard-icon.light.is-active .fastboard-icon-fill-color{fill:var(--fastboard-active-color, #3381ff)}.fastboard-icon.dark .fastboard-icon-stroke-color{stroke:var(--fastboard-color, #7b7e84)}.fastboard-icon.dark .fastboard-icon-fill-color{fill:var(--fastboard-color, #7b7e84)}.fastboard-icon.dark.is-active .fastboard-icon-stroke-color{stroke:var(--fastboard-active-color, #2867cc)}.fastboard-icon.dark.is-active .fastboard-icon-fill-color{fill:var(--fastboard-active-color, #2867cc)}.fastboard-redo-undo{box-sizing:border-box;display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid;border-radius:4px;font-size:14px;font-family:system-ui;pointer-events:auto;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.fastboard-redo-undo *{box-sizing:inherit}.fastboard-redo-undo.light{color:var(--fastboard-color, #5d6066);background-color:var(--fastboard-bg-color, rgba(255, 255, 255, .9));border-color:var(--fastboard-border-color, #e5e8f0)}.fastboard-redo-undo.dark{color:var(--fastboard-color, #7b7e84);background-color:var(--fastboard-bg-color, rgba(20, 24, 30, .9));border-color:var(--fastboard-border-color, #383b42)}.fastboard-redo-undo-btn{appearance:none;cursor:pointer;margin:0;border:0;padding:0;width:24px;height:24px;background-color:#0000;border-radius:4px;font-size:0;line-height:1;flex-shrink:0}.fastboard-redo-undo-btn svg,.fastboard-redo-undo-btn img{width:100%;height:100%;pointer-events:none}.fastboard-redo-undo-btn:disabled{opacity:.5;cursor:not-allowed}.fastboard-redo-undo-btn.light:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #ebf2ff)}.fastboard-redo-undo-btn.dark:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #383b42)}.fastboard-zoom-control{box-sizing:border-box;display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid;border-radius:4px;font-size:14px;font-family:system-ui;pointer-events:auto;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.fastboard-zoom-control *{box-sizing:inherit}.fastboard-zoom-control.light{color:var(--fastboard-color, #5d6066);background-color:var(--fastboard-bg-color, rgba(255, 255, 255, .9));border-color:var(--fastboard-border-color, #e5e8f0)}.fastboard-zoom-control.dark{color:var(--fastboard-color, #7b7e84);background-color:var(--fastboard-bg-color, rgba(20, 24, 30, .9));border-color:var(--fastboard-border-color, #383b42)}.fastboard-zoom-control-btn{appearance:none;cursor:pointer;margin:0;border:0;padding:0;width:24px;height:24px;background-color:#0000;border-radius:4px;font-size:0;line-height:1;flex-shrink:0}.fastboard-zoom-control-btn svg,.fastboard-zoom-control-btn img{width:100%;height:100%;pointer-events:none}.fastboard-zoom-control-btn:disabled{opacity:.5;cursor:not-allowed}.fastboard-zoom-control-btn.light:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #ebf2ff)}.fastboard-zoom-control-btn.dark:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #383b42)}.fastboard-zoom-control-text{font-variant-numeric:tabular-nums}.fastboard-page-control{box-sizing:border-box;display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid;border-radius:4px;font-size:14px;font-family:system-ui;pointer-events:auto;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.fastboard-page-control *{box-sizing:inherit}.fastboard-page-control.light{color:var(--fastboard-color, #5d6066);background-color:var(--fastboard-bg-color, rgba(255, 255, 255, .9));border-color:var(--fastboard-border-color, #e5e8f0)}.fastboard-page-control.dark{color:var(--fastboard-color, #7b7e84);background-color:var(--fastboard-bg-color, rgba(20, 24, 30, .9));border-color:var(--fastboard-border-color, #383b42)}.fastboard-page-control-btn{appearance:none;cursor:pointer;margin:0;border:0;padding:0;width:24px;height:24px;background-color:#0000;border-radius:4px;font-size:0;line-height:1;flex-shrink:0}.fastboard-page-control-btn svg,.fastboard-page-control-btn img{width:100%;height:100%;pointer-events:none}.fastboard-page-control-btn:disabled{opacity:.5;cursor:not-allowed}.fastboard-page-control-btn.light:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #ebf2ff)}.fastboard-page-control-btn.dark:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #383b42)}.fastboard-page-control-text{font-variant-numeric:tabular-nums}.fastboard-player-control{box-sizing:border-box;display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid;border-radius:4px;font-size:14px;font-family:system-ui;pointer-events:auto;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);width:100%}.fastboard-player-control *{box-sizing:inherit}.fastboard-player-control.light{color:var(--fastboard-color, #5d6066);background-color:var(--fastboard-bg-color, rgba(255, 255, 255, .9));border-color:var(--fastboard-border-color, #e5e8f0)}.fastboard-player-control.dark{color:var(--fastboard-color, #7b7e84);background-color:var(--fastboard-bg-color, rgba(20, 24, 30, .9));border-color:var(--fastboard-border-color, #383b42)}.fastboard-player-control-btn{appearance:none;cursor:pointer;margin:0;border:0;padding:0;width:24px;height:24px;background-color:#0000;border-radius:4px;font-size:0;line-height:1;flex-shrink:0;display:inline}.fastboard-player-control-btn svg,.fastboard-player-control-btn img{width:100%;height:100%;pointer-events:none}.fastboard-player-control-btn:disabled{opacity:.5;cursor:not-allowed}.fastboard-player-control-btn.light:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #ebf2ff)}.fastboard-player-control-btn.dark:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #383b42)}.fastboard-player-control-btn.loading svg,.fastboard-player-control-btn.loading img{animation:fastboard-player-control-rotate .5s linear infinite}@keyframes fastboard-player-control-rotate{to{transform:rotate(360deg)}}.fastboard-player-control-btn.speed{width:auto;padding:4px;text-align:right;font-size:14px;font-variant-numeric:tabular-nums}.fastboard-player-control-btn.is-active.light{color:var(--fastboard-active-color, #3381ff)}.fastboard-player-control-btn.is-active.dark{color:var(--fastboard-active-color, #2867cc)}.fastboard-player-control-speed-text,.fastboard-player-control-progress{font-size:14px;font-variant-numeric:tabular-nums;line-height:16px}.fastboard-player-control-progress{display:inline-flex;align-items:center}.fastboard-player-control-panel.speed{display:flex;flex-direction:column}.fastboard-toolbar{height:100%;display:flex;align-items:center;position:relative;transform:translate(0);transition:transform .5s cubic-bezier(.34,1.56,.64,1);pointer-events:none}.fastboard-toolbar.collapsed{transform:translate(-100%)}.fastboard-toolbar-handler{position:absolute;left:100%;width:17px;font-size:0;border-radius:3px;cursor:pointer;pointer-events:auto}.fastboard-toolbar-handler:focus-within{outline:2px solid -webkit-focus-ring-color}.fastboard-toolbar-handler input[type=checkbox]{position:absolute;top:0;left:0;appearance:none;margin:0;width:100%;height:100%;cursor:pointer;opacity:0;z-index:-1}.fastboard-toolbar-handler svg{opacity:0;transition:opacity .5s 1s;pointer-events:none}.fastboard-toolbar-handler.light .fastboard-toolbar-handler-bg-color{fill:var(--fastboard-bg-color, rgba(255, 255, 255, .9))}.fastboard-toolbar-handler.light .fastboard-toolbar-handler-border-color{stroke:var(--fastboard-border-color, #e5e8f0)}.fastboard-toolbar-handler.light .fastboard-toolbar-handler-image-stroke-color{stroke:var(--fastboard-color, #5d6066)}.fastboard-toolbar-handler.light .fastboard-toolbar-handler-image-fill-color{fill:var(--fastboard-color, #5d6066)}.fastboard-toolbar-handler.dark .fastboard-toolbar-handler-bg-color{fill:var(--fastboard-bg-color, rgba(20, 24, 30, .9))}.fastboard-toolbar-handler.dark .fastboard-toolbar-handler-border-color{stroke:var(--fastboard-border-color, #383b42)}.fastboard-toolbar-handler.dark .fastboard-toolbar-handler-image-stroke-color{stroke:var(--fastboard-color, #7b7e84)}.fastboard-toolbar-handler.dark .fastboard-toolbar-handler-image-fill-color{fill:var(--fastboard-color, #7b7e84)}.fastboard-toolbar:hover .fastboard-toolbar-handler svg,.fastboard-toolbar.collapsed .fastboard-toolbar-handler svg{opacity:1;transition:opacity .2s}.fastboard-toolbar-btn{appearance:none;cursor:pointer;margin:0;border:0;padding:4px;width:32px;height:32px;background-color:#0000;border-radius:4px;font-size:0;line-height:1;flex-shrink:0}.fastboard-toolbar-btn svg,.fastboard-toolbar-btn img{width:100%;height:100%;pointer-events:none}.fastboard-toolbar-btn:disabled{opacity:.5;cursor:not-allowed}.fastboard-toolbar-btn.light:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #ebf2ff)}.fastboard-toolbar-btn.dark:not(:disabled):hover{background-color:var(--fastboard-hover-bg-color, #383b42)}.fastboard-slider{box-sizing:border-box;position:relative;width:100%;height:100%;display:flex;align-items:center}.fastboard-slider *{box-sizing:inherit}.fastboard-slider-track{appearance:none;background:rgba(0,0,0,0);border:0;border-radius:26px;flex:1;display:block;height:19px;margin:0;width:0;min-width:0;padding:0;transition:box-shadow .3s ease;cursor:pointer;touch-action:manipulation}.fastboard-slider-track::-webkit-slider-runnable-track{border:0;border-radius:2.5px;height:5px;transition:box-shadow .3s ease;user-select:none;background-color:#80808040;-webkit-user-select:none;background-image:linear-gradient(to right,currentColor var(--value, 0%),transparent var(--value, 0%))}.fastboard-slider-track::-webkit-slider-thumb{background:#fff;border:0;border-radius:100%;box-shadow:0 1px 1px #23292f26,0 0 0 1px #23292f33;width:13px;height:13px;position:relative;transition:all .2s ease;cursor:grab;appearance:none;margin-top:-4px}.fastboard-slider-track::-moz-range-track{border:0;border-radius:2.5px;height:5px;transition:box-shadow .3s ease;user-select:none;background-color:#80808040;-webkit-user-select:none}.fastboard-slider-track::-moz-range-thumb{appearance:none;background:#fff;border:0;border-radius:100%;box-shadow:0 1px 1px #23292f26,0 0 0 1px #23292f33;width:13px;height:13px;position:relative;transition:all .2s ease;cursor:grab}.fastboard-slider-track::-moz-range-progress{background:currentColor;border-radius:2.5px;height:5px}.fastboard-slider-track::-ms-track{border:0;border-radius:2.5px;height:5px;transition:box-shadow .3s ease;user-select:none;background-color:#80808040;-webkit-user-select:none;color:#0000}.fastboard-slider-track::-ms-thumb{appearance:none;background:#fff;border:0;border-radius:100%;box-shadow:0 1px 1px #23292f26,0 0 0 1px #23292f33;width:13px;height:13px;position:relative;transition:all .2s ease;cursor:grab;margin-top:0}.fastboard-slider-track::-ms-tooltip{display:none}.fastboard-slider-track::-moz-focus-outer{border:0}.fastboard-slider-track.grabbing::-webkit-slider-thumb{cursor:grabbing}.fastboard-slider-track.light{color:var(--fastboard-active-color, #3381ff)}.fastboard-slider-track.dark{color:var(--fastboard-active-color, #2867cc)}.fastboard-toolbar-contents{box-sizing:border-box;display:inline-flex;align-items:center;gap:4px;border:1px solid;border-radius:4px;font-size:14px;font-family:system-ui;pointer-events:auto;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);padding:2px 0;gap:0;flex-direction:column}.fastboard-toolbar-contents *{box-sizing:inherit}.fastboard-toolbar-contents.light{color:var(--fastboard-color, #5d6066);background-color:var(--fastboard-bg-color, rgba(255, 255, 255, .9));border-color:var(--fastboard-border-color, #e5e8f0)}.fastboard-toolbar-contents.dark{color:var(--fastboard-color, #7b7e84);background-color:var(--fastboard-bg-color, rgba(20, 24, 30, .9));border-color:var(--fastboard-border-color, #383b42)}.fastboard-toolbar-contents>.fastboard-toolbar-btn{margin:2px 4px}.fastboard-toolbar-btn-interactive{position:relative}.fastboard-toolbar-triangle{width:0px;height:0px;border-bottom:4px solid;border-left:4px solid rgba(0,0,0,0);position:absolute;bottom:0;right:0}.fastboard-toolbar-btn:focus+.fastboard-toolbar-triangle{opacity:0}.fastboard-toolbar-scrollable{padding:2px 4px;overflow:hidden;display:flex;flex-direction:column;gap:4px}.fastboard-toolbar-tooltip{display:inline-flex;align-items:center;gap:4px}.fastboard-toolbar-hotkey{display:inline-flex;margin-right:-4px;width:24px;height:24px;align-items:center;justify-content:center;background-color:#ffffff1a;border-radius:4px}.fastboard-toolbar-panel-wrapper{display:none}.fastboard-toolbar-panel{display:flex;flex-direction:column}.fastboard-toolbar-panel-divider{height:.5px;width:100%;margin:4px 0;background-color:#ffffff26}.fastboard-toolbar-colors,.fastboard-toolbar-shapes{display:grid;align-self:center;grid-template:repeat(2,1fr)/repeat(4,1fr);align-items:center;justify-items:center;gap:4px}.fastboard-toolbar-shape-btn,.fastboard-toolbar-color-btn{width:24px;height:24px;padding:0;display:inline-flex;align-items:center;justify-content:center}.fastboard-toolbar-color-btn{border:1px solid rgba(0,0,0,0)}.fastboard-toolbar-color-btn.light.is-active{border-color:var(--fastboard-active-color, #3381ff)}.fastboard-toolbar-color-btn.dark.is-active{border-color:var(--fastboard-active-color, #2867cc)}.fastboard-toolbar-color-item{display:inline-block;width:16px;height:16px;border-radius:4px;pointer-events:none}.fastboard-toolbar-panel.apps{display:grid;grid-template-columns:repeat(min(var(--n, 3),3),minmax(max-content,1fr));gap:4px}.fastboard-toolbar-app-btn{margin:0;border:0;border-radius:2px;padding:4px 6px;background-color:#0000;display:inline-flex;flex-direction:column;align-items:center;gap:4px;font-size:0}.fastboard-toolbar-app-btn:disabled{opacity:.8}.fastboard-toolbar-app-btn-icon{width:32px;height:32px;pointer-events:none}.fastboard-toolbar-app-btn-text{font-size:14px;line-height:1;max-width:100%;overflow:hidden;text-overflow:ellipsis}.fastboard-toolbar-app-btn.is-loading{cursor:progress}.fastboard-toolbar-app-btn.is-failed{cursor:not-allowed;opacity:.5}.fastboard-toolbar-app-btn:not(:disabled,.is-loading,.is-failed):hover.light{cursor:pointer;background-color:var(--fastboard-hover-bg-color, #ebf2ff)}.fastboard-toolbar-app-btn-text.light{color:var(--fastboard-color, #5d6066)}.fastboard-toolbar-app-btn:not(:disabled,.is-loading,.is-failed):hover.dark{cursor:pointer;background-color:var(--fastboard-hover-bg-color, #383b42)}.fastboard-toolbar-app-btn-text.dark{color:var(--fastboard-color, #7b7e84)}.fastboard-root{position:relative;width:100%;height:100%;overflow:hidden}.fastboard-view{position:absolute;top:0;left:0;width:100%;height:100%}.fastboard-left{display:flex;align-items:center;position:absolute;bottom:62px;top:8px;left:0;z-index:200;pointer-events:none}.fastboard-left .fastboard-toolbar{padding-left:16px}.fastboard-bottom-left,.fastboard-bottom,.fastboard-bottom-right{display:flex;gap:10px;position:absolute;bottom:8px;left:8px;padding:8px;z-index:200;pointer-events:none}.fastboard-bottom-right{left:auto;right:8px}.fastboard-bottom{right:8px}.fastboard-left.hidden *,.fastboard-bottom.hidden *,.fastboard-bottom-left.hidden *,.fastboard-bottom-right.hidden *{opacity:0;pointer-events:none}.fastboard-tip{font-family:inherit;color:#d5d9e0;background-color:#03060d}.fastboard-tip[data-placement^=right]>.tippy-arrow:before{top:4px;border-width:4px;border-right-color:#03060d}.fastboard-tip[data-placement^=top]>.tippy-arrow:before{left:4px;border-width:4px;border-top-color:#03060d}.fastboard-panel .tippy-content{padding:8px}';
10623
-
10624
- // inline-sass-stub:./src/style.scss
10625
- injectStyle(style_default);
10626
-
10627
- export { Fastboard_default as Fastboard, PageControl_default as PageControl, PlayerControl_default as PlayerControl, RedoUndo_default as RedoUndo, ReplayFastboard_default as ReplayFastboard, Toolbar_default as Toolbar, ZoomControl_default as ZoomControl, apps, createReplayUI, createUI };
10839
+ export {
10840
+ Fastboard_default as Fastboard,
10841
+ PageControl_default as PageControl,
10842
+ PlayerControl_default as PlayerControl,
10843
+ RedoUndo_default as RedoUndo,
10844
+ ReplayFastboard_default as ReplayFastboard,
10845
+ Toolbar_default as Toolbar,
10846
+ ZoomControl_default as ZoomControl,
10847
+ apps,
10848
+ createReplayUI,
10849
+ createUI
10850
+ };
10628
10851
  //# sourceMappingURL=index.mjs.map