@netless/fastboard-ui 0.3.0-canary.4 → 0.3.0-canary.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -130,6 +130,12 @@ function insert(target, node, anchor) {
130
130
  function detach(node) {
131
131
  node.parentNode.removeChild(node);
132
132
  }
133
+ function destroy_each(iterations, detaching) {
134
+ for (let i = 0; i < iterations.length; i += 1) {
135
+ if (iterations[i])
136
+ iterations[i].d(detaching);
137
+ }
138
+ }
133
139
  function element(name10) {
134
140
  return document.createElement(name10);
135
141
  }
@@ -193,6 +199,9 @@ function get_current_component() {
193
199
  throw new Error("Function called outside component initialization");
194
200
  return current_component;
195
201
  }
202
+ function onMount(fn) {
203
+ get_current_component().$$.on_mount.push(fn);
204
+ }
196
205
  function createEventDispatcher() {
197
206
  const component = get_current_component();
198
207
  return (type, detail) => {
@@ -3515,6 +3524,7 @@ function tippy_hide_all() {
3515
3524
  }
3516
3525
  var tippy_menu = {
3517
3526
  delay: 0,
3527
+ duration: [50, 300],
3518
3528
  placement: "right-start",
3519
3529
  interactive: true,
3520
3530
  trigger: "click"
@@ -4803,6 +4813,7 @@ function instance48($$self, $$props, $$invalidate) {
4803
4813
  }
4804
4814
  function addPage() {
4805
4815
  app == null ? void 0 : app.addPage({ after: true });
4816
+ app == null ? void 0 : app.nextPage();
4806
4817
  }
4807
4818
  $$self.$$set = ($$props2) => {
4808
4819
  if ("app" in $$props2)
@@ -5668,8 +5679,8 @@ var AppsInToolbar = class {
5668
5679
  this._listeners = this._listeners.filter((item) => item !== fn);
5669
5680
  };
5670
5681
  }
5671
- push(data) {
5672
- this._data.push(data);
5682
+ push(...data) {
5683
+ this._data.push(...data);
5673
5684
  this._listeners.forEach((fn) => fn(this._data));
5674
5685
  }
5675
5686
  insert(data, index) {
@@ -6591,14 +6602,14 @@ var Shapes_default = Shapes;
6591
6602
  // src/components/Toolbar/components/Contents.svelte
6592
6603
  function get_each_context3(ctx, list, i) {
6593
6604
  const child_ctx = ctx.slice();
6594
- child_ctx[39] = list[i];
6595
- const constants_0 = child_ctx[39];
6596
- child_ctx[40] = constants_0.icon;
6597
- child_ctx[41] = constants_0.label;
6598
- child_ctx[42] = constants_0.kind;
6599
- child_ctx[43] = constants_0.onClick;
6600
- const constants_1 = child_ctx[18] && child_ctx[18][child_ctx[42]];
6601
- child_ctx[44] = constants_1;
6605
+ child_ctx[40] = list[i];
6606
+ const constants_0 = child_ctx[40];
6607
+ child_ctx[41] = constants_0.icon;
6608
+ child_ctx[42] = constants_0.label;
6609
+ child_ctx[43] = constants_0.kind;
6610
+ child_ctx[44] = constants_0.onClick;
6611
+ const constants_1 = child_ctx[19] && child_ctx[19][child_ctx[43]];
6612
+ child_ctx[45] = constants_1;
6602
6613
  return child_ctx;
6603
6614
  }
6604
6615
  function create_if_block_7(ctx) {
@@ -6613,7 +6624,7 @@ function create_if_block_7(ctx) {
6613
6624
  button_props = assign(button_props, button_spread_levels[i]);
6614
6625
  }
6615
6626
  button = new Button_default({ props: button_props });
6616
- button.$on("click", ctx[20]);
6627
+ button.$on("click", ctx[21]);
6617
6628
  return {
6618
6629
  c() {
6619
6630
  create_component(button.$$.fragment);
@@ -6624,7 +6635,7 @@ function create_if_block_7(ctx) {
6624
6635
  },
6625
6636
  p(ctx2, dirty) {
6626
6637
  const button_changes = dirty[0] & 16384 ? get_spread_update(button_spread_levels, [button_spread_levels[0], get_spread_object(ctx2[14])]) : {};
6627
- if (dirty[0] & 2 | dirty[1] & 65536) {
6638
+ if (dirty[0] & 2 | dirty[1] & 131072) {
6628
6639
  button_changes.$$scope = { dirty, ctx: ctx2 };
6629
6640
  }
6630
6641
  button.$set(button_changes);
@@ -7614,7 +7625,7 @@ function create_if_block6(ctx) {
7614
7625
  $$scope: { ctx }
7615
7626
  }
7616
7627
  });
7617
- button.$on("click", ctx[21]);
7628
+ button.$on("click", ctx[22]);
7618
7629
  return {
7619
7630
  c() {
7620
7631
  create_component(button.$$.fragment);
@@ -7629,7 +7640,7 @@ function create_if_block6(ctx) {
7629
7640
  button_changes.theme = ctx2[1];
7630
7641
  if (dirty[0] & 8)
7631
7642
  button_changes.disabled = ctx2[3];
7632
- if (dirty[0] & 2 | dirty[1] & 65536) {
7643
+ if (dirty[0] & 2 | dirty[1] & 131072) {
7633
7644
  button_changes.$$scope = { dirty, ctx: ctx2 };
7634
7645
  }
7635
7646
  button.$set(button_changes);
@@ -7682,7 +7693,7 @@ function create_default_slot4(ctx) {
7682
7693
  }
7683
7694
  };
7684
7695
  }
7685
- function create_each_block3(key_1, ctx) {
7696
+ function create_each_block3(ctx) {
7686
7697
  let button;
7687
7698
  let img;
7688
7699
  let img_class_value;
@@ -7691,7 +7702,7 @@ function create_each_block3(key_1, ctx) {
7691
7702
  let img_title_value;
7692
7703
  let t0;
7693
7704
  let span;
7694
- let t1_value = ctx[41] + "";
7705
+ let t1_value = ctx[42] + "";
7695
7706
  let t1;
7696
7707
  let span_class_value;
7697
7708
  let t2;
@@ -7702,8 +7713,6 @@ function create_each_block3(key_1, ctx) {
7702
7713
  let mounted;
7703
7714
  let dispose;
7704
7715
  return {
7705
- key: key_1,
7706
- first: null,
7707
7716
  c() {
7708
7717
  button = element("button");
7709
7718
  img = element("img");
@@ -7712,18 +7721,17 @@ function create_each_block3(key_1, ctx) {
7712
7721
  t1 = text(t1_value);
7713
7722
  t2 = space();
7714
7723
  attr(img, "class", img_class_value = name5 + "-app-btn-icon " + ctx[1]);
7715
- if (!src_url_equal(img.src, img_src_value = ctx[40]))
7724
+ if (!src_url_equal(img.src, img_src_value = ctx[41]))
7716
7725
  attr(img, "src", img_src_value);
7717
- attr(img, "alt", img_alt_value = ctx[42]);
7718
- attr(img, "title", img_title_value = ctx[41]);
7726
+ attr(img, "alt", img_alt_value = ctx[43]);
7727
+ attr(img, "title", img_title_value = ctx[42]);
7719
7728
  attr(span, "class", span_class_value = name5 + "-app-btn-text " + ctx[1]);
7720
- attr(button, "class", button_class_value = name5 + "-app-btn " + ctx[42] + " " + ctx[1]);
7721
- attr(button, "title", button_title_value = ctx[41] + (ctx[44] && ctx[44].reason ? ": " + ctx[44].reason : ""));
7722
- attr(button, "data-app-kind", button_data_app_kind_value = ctx[39].kind);
7723
- button.disabled = button_disabled_value = ctx[44] && ctx[44].status !== "idle";
7724
- toggle_class(button, "is-loading", ctx[44] && ctx[44].status === "loading");
7725
- toggle_class(button, "is-failed", ctx[44] && ctx[44].status === "failed");
7726
- this.first = button;
7729
+ attr(button, "class", button_class_value = name5 + "-app-btn " + ctx[43] + " " + ctx[1]);
7730
+ attr(button, "title", button_title_value = ctx[42] + (ctx[45] && ctx[45].reason ? ": " + ctx[45].reason : ""));
7731
+ attr(button, "data-app-kind", button_data_app_kind_value = ctx[40].kind);
7732
+ button.disabled = button_disabled_value = ctx[45] && ctx[45].status !== "idle";
7733
+ toggle_class(button, "is-loading", ctx[45] && ctx[45].status === "loading");
7734
+ toggle_class(button, "is-failed", ctx[45] && ctx[45].status === "failed");
7727
7735
  },
7728
7736
  m(target, anchor) {
7729
7737
  insert(target, button, anchor);
@@ -7734,8 +7742,8 @@ function create_each_block3(key_1, ctx) {
7734
7742
  append(button, t2);
7735
7743
  if (!mounted) {
7736
7744
  dispose = listen(button, "click", function() {
7737
- if (is_function(ctx[0] && ctx[43].bind(null, ctx[0])))
7738
- (ctx[0] && ctx[43].bind(null, ctx[0])).apply(this, arguments);
7745
+ if (is_function(ctx[0] && ctx[44].bind(null, ctx[0])))
7746
+ (ctx[0] && ctx[44].bind(null, ctx[0])).apply(this, arguments);
7739
7747
  });
7740
7748
  mounted = true;
7741
7749
  }
@@ -7745,23 +7753,37 @@ function create_each_block3(key_1, ctx) {
7745
7753
  if (dirty[0] & 2 && img_class_value !== (img_class_value = name5 + "-app-btn-icon " + ctx[1])) {
7746
7754
  attr(img, "class", img_class_value);
7747
7755
  }
7756
+ if (dirty[0] & 262144 && !src_url_equal(img.src, img_src_value = ctx[41])) {
7757
+ attr(img, "src", img_src_value);
7758
+ }
7759
+ if (dirty[0] & 262144 && img_alt_value !== (img_alt_value = ctx[43])) {
7760
+ attr(img, "alt", img_alt_value);
7761
+ }
7762
+ if (dirty[0] & 262144 && img_title_value !== (img_title_value = ctx[42])) {
7763
+ attr(img, "title", img_title_value);
7764
+ }
7765
+ if (dirty[0] & 262144 && t1_value !== (t1_value = ctx[42] + ""))
7766
+ set_data(t1, t1_value);
7748
7767
  if (dirty[0] & 2 && span_class_value !== (span_class_value = name5 + "-app-btn-text " + ctx[1])) {
7749
7768
  attr(span, "class", span_class_value);
7750
7769
  }
7751
- if (dirty[0] & 2 && button_class_value !== (button_class_value = name5 + "-app-btn " + ctx[42] + " " + ctx[1])) {
7770
+ if (dirty[0] & 262146 && button_class_value !== (button_class_value = name5 + "-app-btn " + ctx[43] + " " + ctx[1])) {
7752
7771
  attr(button, "class", button_class_value);
7753
7772
  }
7754
- if (dirty[0] & 262144 && button_title_value !== (button_title_value = ctx[41] + (ctx[44] && ctx[44].reason ? ": " + ctx[44].reason : ""))) {
7773
+ if (dirty[0] & 786432 && button_title_value !== (button_title_value = ctx[42] + (ctx[45] && ctx[45].reason ? ": " + ctx[45].reason : ""))) {
7755
7774
  attr(button, "title", button_title_value);
7756
7775
  }
7757
- if (dirty[0] & 262144 && button_disabled_value !== (button_disabled_value = ctx[44] && ctx[44].status !== "idle")) {
7776
+ if (dirty[0] & 262144 && button_data_app_kind_value !== (button_data_app_kind_value = ctx[40].kind)) {
7777
+ attr(button, "data-app-kind", button_data_app_kind_value);
7778
+ }
7779
+ if (dirty[0] & 786432 && button_disabled_value !== (button_disabled_value = ctx[45] && ctx[45].status !== "idle")) {
7758
7780
  button.disabled = button_disabled_value;
7759
7781
  }
7760
- if (dirty[0] & 262146) {
7761
- toggle_class(button, "is-loading", ctx[44] && ctx[44].status === "loading");
7782
+ if (dirty[0] & 786434) {
7783
+ toggle_class(button, "is-loading", ctx[45] && ctx[45].status === "loading");
7762
7784
  }
7763
- if (dirty[0] & 262146) {
7764
- toggle_class(button, "is-failed", ctx[44] && ctx[44].status === "failed");
7785
+ if (dirty[0] & 786434) {
7786
+ toggle_class(button, "is-failed", ctx[45] && ctx[45].status === "failed");
7765
7787
  }
7766
7788
  },
7767
7789
  d(detaching) {
@@ -7824,8 +7846,6 @@ function create_fragment54(ctx) {
7824
7846
  let div6_class_value;
7825
7847
  let t18;
7826
7848
  let div7;
7827
- let each_blocks = [];
7828
- let each_1_lookup = /* @__PURE__ */ new Map();
7829
7849
  let div7_class_value;
7830
7850
  let div8_class_value;
7831
7851
  let current;
@@ -7845,7 +7865,7 @@ function create_fragment54(ctx) {
7845
7865
  button0_props = assign(button0_props, button0_spread_levels[i]);
7846
7866
  }
7847
7867
  button0 = new Button_default({ props: button0_props });
7848
- button0.$on("click", ctx[22]);
7868
+ button0.$on("click", ctx[23]);
7849
7869
  const button1_spread_levels = [
7850
7870
  { class: "selector" },
7851
7871
  ctx[14],
@@ -7859,7 +7879,7 @@ function create_fragment54(ctx) {
7859
7879
  button1_props = assign(button1_props, button1_spread_levels[i]);
7860
7880
  }
7861
7881
  button1 = new Button_default({ props: button1_props });
7862
- button1.$on("click", ctx[23]);
7882
+ button1.$on("click", ctx[24]);
7863
7883
  const button2_spread_levels = [
7864
7884
  { class: "pencil" },
7865
7885
  ctx[14],
@@ -7874,7 +7894,7 @@ function create_fragment54(ctx) {
7874
7894
  button2_props = assign(button2_props, button2_spread_levels[i]);
7875
7895
  }
7876
7896
  button2 = new Button_default({ props: button2_props });
7877
- button2.$on("click", ctx[24]);
7897
+ button2.$on("click", ctx[25]);
7878
7898
  const button3_spread_levels = [
7879
7899
  { class: "text" },
7880
7900
  ctx[14],
@@ -7889,7 +7909,7 @@ function create_fragment54(ctx) {
7889
7909
  button3_props = assign(button3_props, button3_spread_levels[i]);
7890
7910
  }
7891
7911
  button3 = new Button_default({ props: button3_props });
7892
- button3.$on("click", ctx[25]);
7912
+ button3.$on("click", ctx[26]);
7893
7913
  const button4_spread_levels = [
7894
7914
  { class: "shapes" },
7895
7915
  ctx[14],
@@ -7904,7 +7924,7 @@ function create_fragment54(ctx) {
7904
7924
  button4_props = assign(button4_props, button4_spread_levels[i]);
7905
7925
  }
7906
7926
  button4 = new Button_default({ props: button4_props });
7907
- button4.$on("click", ctx[26]);
7927
+ button4.$on("click", ctx[27]);
7908
7928
  const button5_spread_levels = [{ class: "eraser" }, ctx[14], { content: ctx[17].eraser }];
7909
7929
  let button5_props = {
7910
7930
  $$slots: { default: [create_default_slot_34] },
@@ -7914,7 +7934,7 @@ function create_fragment54(ctx) {
7914
7934
  button5_props = assign(button5_props, button5_spread_levels[i]);
7915
7935
  }
7916
7936
  button5 = new Button_default({ props: button5_props });
7917
- button5.$on("click", ctx[27]);
7937
+ button5.$on("click", ctx[28]);
7918
7938
  const button6_spread_levels = [{ class: "clear" }, ctx[14], { content: ctx[8].clear }];
7919
7939
  let button6_props = {
7920
7940
  $$slots: { default: [create_default_slot_24] },
@@ -7924,7 +7944,7 @@ function create_fragment54(ctx) {
7924
7944
  button6_props = assign(button6_props, button6_spread_levels[i]);
7925
7945
  }
7926
7946
  button6 = new Button_default({ props: button6_props });
7927
- button6.$on("click", ctx[28]);
7947
+ button6.$on("click", ctx[29]);
7928
7948
  const button7_spread_levels = [
7929
7949
  { class: "apps" },
7930
7950
  ctx[14],
@@ -7984,12 +8004,10 @@ function create_fragment54(ctx) {
7984
8004
  disabled: ctx[3]
7985
8005
  }
7986
8006
  });
7987
- let each_value = apps.data;
7988
- const get_key = (ctx2) => ctx2[39].kind;
8007
+ let each_value = ctx[18];
8008
+ let each_blocks = [];
7989
8009
  for (let i = 0; i < each_value.length; i += 1) {
7990
- let child_ctx = get_each_context3(ctx, each_value, i);
7991
- let key = get_key(child_ctx);
7992
- each_1_lookup.set(key, each_blocks[i] = create_each_block3(key, child_ctx));
8010
+ each_blocks[i] = create_each_block3(get_each_context3(ctx, each_value, i));
7993
8011
  }
7994
8012
  return {
7995
8013
  c() {
@@ -8051,6 +8069,7 @@ function create_fragment54(ctx) {
8051
8069
  attr(div5, "class", div5_class_value = name5 + "-panel-divider");
8052
8070
  attr(div6, "class", div6_class_value = name5 + "-panel shapes");
8053
8071
  attr(div7, "class", div7_class_value = name5 + "-panel apps");
8072
+ set_style(div7, "--n", ctx[18].length);
8054
8073
  attr(div8, "class", div8_class_value = name5 + "-panel-wrapper");
8055
8074
  set_style(div8, "display", "none");
8056
8075
  },
@@ -8085,11 +8104,11 @@ function create_fragment54(ctx) {
8085
8104
  append(div2, div1);
8086
8105
  append(div2, t11);
8087
8106
  mount_component(strokecolor0, div2, null);
8088
- ctx[33](div2);
8107
+ ctx[34](div2);
8089
8108
  append(div8, t12);
8090
8109
  append(div8, div3);
8091
8110
  mount_component(strokecolor1, div3, null);
8092
- ctx[34](div3);
8111
+ ctx[35](div3);
8093
8112
  append(div8, t13);
8094
8113
  append(div8, div6);
8095
8114
  mount_component(shapes2, div6, null);
@@ -8101,18 +8120,18 @@ function create_fragment54(ctx) {
8101
8120
  append(div6, div5);
8102
8121
  append(div6, t17);
8103
8122
  mount_component(strokecolor2, div6, null);
8104
- ctx[35](div6);
8123
+ ctx[36](div6);
8105
8124
  append(div8, t18);
8106
8125
  append(div8, div7);
8107
8126
  for (let i = 0; i < each_blocks.length; i += 1) {
8108
8127
  each_blocks[i].m(div7, null);
8109
8128
  }
8110
- ctx[36](div7);
8129
+ ctx[37](div7);
8111
8130
  current = true;
8112
8131
  if (!mounted) {
8113
8132
  dispose = [
8114
8133
  action_destroyer(scrollHeight_action = scrollHeight.call(null, div0, ctx[4])),
8115
- action_destroyer(scrollTop_action = scrollTop.call(null, div0, ctx[19]))
8134
+ action_destroyer(scrollTop_action = scrollTop.call(null, div0, ctx[20]))
8116
8135
  ];
8117
8136
  mounted = true;
8118
8137
  }
@@ -8142,7 +8161,7 @@ function create_fragment54(ctx) {
8142
8161
  dirty[0] & 16384 && get_spread_object(ctx2[14]),
8143
8162
  dirty[0] & 131072 && { content: ctx2[17].clicker }
8144
8163
  ]) : {};
8145
- if (dirty[0] & 130 | dirty[1] & 65536) {
8164
+ if (dirty[0] & 130 | dirty[1] & 131072) {
8146
8165
  button0_changes.$$scope = { dirty, ctx: ctx2 };
8147
8166
  }
8148
8167
  button0.$set(button0_changes);
@@ -8151,7 +8170,7 @@ function create_fragment54(ctx) {
8151
8170
  dirty[0] & 16384 && get_spread_object(ctx2[14]),
8152
8171
  dirty[0] & 131072 && { content: ctx2[17].selector }
8153
8172
  ]) : {};
8154
- if (dirty[0] & 130 | dirty[1] & 65536) {
8173
+ if (dirty[0] & 130 | dirty[1] & 131072) {
8155
8174
  button1_changes.$$scope = { dirty, ctx: ctx2 };
8156
8175
  }
8157
8176
  button1.$set(button1_changes);
@@ -8161,7 +8180,7 @@ function create_fragment54(ctx) {
8161
8180
  dirty[0] & 131072 && { content: ctx2[17].pencil },
8162
8181
  dirty[0] & 1024 && { menu: ctx2[10] }
8163
8182
  ]) : {};
8164
- if (dirty[0] & 130 | dirty[1] & 65536) {
8183
+ if (dirty[0] & 130 | dirty[1] & 131072) {
8165
8184
  button2_changes.$$scope = { dirty, ctx: ctx2 };
8166
8185
  }
8167
8186
  button2.$set(button2_changes);
@@ -8171,7 +8190,7 @@ function create_fragment54(ctx) {
8171
8190
  dirty[0] & 131072 && { content: ctx2[17].text },
8172
8191
  dirty[0] & 2048 && { menu: ctx2[11] }
8173
8192
  ]) : {};
8174
- if (dirty[0] & 130 | dirty[1] & 65536) {
8193
+ if (dirty[0] & 130 | dirty[1] & 131072) {
8175
8194
  button3_changes.$$scope = { dirty, ctx: ctx2 };
8176
8195
  }
8177
8196
  button3.$set(button3_changes);
@@ -8181,7 +8200,7 @@ function create_fragment54(ctx) {
8181
8200
  dirty[0] & 256 && { content: ctx2[8].shapes },
8182
8201
  dirty[0] & 4096 && { menu: ctx2[12] }
8183
8202
  ]) : {};
8184
- if (dirty[0] & 706 | dirty[1] & 65536) {
8203
+ if (dirty[0] & 706 | dirty[1] & 131072) {
8185
8204
  button4_changes.$$scope = { dirty, ctx: ctx2 };
8186
8205
  }
8187
8206
  button4.$set(button4_changes);
@@ -8190,7 +8209,7 @@ function create_fragment54(ctx) {
8190
8209
  dirty[0] & 16384 && get_spread_object(ctx2[14]),
8191
8210
  dirty[0] & 131072 && { content: ctx2[17].eraser }
8192
8211
  ]) : {};
8193
- if (dirty[0] & 130 | dirty[1] & 65536) {
8212
+ if (dirty[0] & 130 | dirty[1] & 131072) {
8194
8213
  button5_changes.$$scope = { dirty, ctx: ctx2 };
8195
8214
  }
8196
8215
  button5.$set(button5_changes);
@@ -8199,7 +8218,7 @@ function create_fragment54(ctx) {
8199
8218
  dirty[0] & 16384 && get_spread_object(ctx2[14]),
8200
8219
  dirty[0] & 256 && { content: ctx2[8].clear }
8201
8220
  ]) : {};
8202
- if (dirty[0] & 2 | dirty[1] & 65536) {
8221
+ if (dirty[0] & 2 | dirty[1] & 131072) {
8203
8222
  button6_changes.$$scope = { dirty, ctx: ctx2 };
8204
8223
  }
8205
8224
  button6.$set(button6_changes);
@@ -8210,7 +8229,7 @@ function create_fragment54(ctx) {
8210
8229
  dirty[0] & 8192 && { menu: ctx2[13] },
8211
8230
  button7_spread_levels[4]
8212
8231
  ]) : {};
8213
- if (dirty[0] & 2 | dirty[1] & 65536) {
8232
+ if (dirty[0] & 2 | dirty[1] & 131072) {
8214
8233
  button7_changes.$$scope = { dirty, ctx: ctx2 };
8215
8234
  }
8216
8235
  button7.$set(button7_changes);
@@ -8288,9 +8307,26 @@ function create_fragment54(ctx) {
8288
8307
  if (dirty[0] & 8)
8289
8308
  strokecolor2_changes.disabled = ctx2[3];
8290
8309
  strokecolor2.$set(strokecolor2_changes);
8291
- if (dirty[0] & 262147) {
8292
- each_value = apps.data;
8293
- each_blocks = update_keyed_each(each_blocks, dirty, get_key, 1, ctx2, each_value, each_1_lookup, div7, destroy_block, create_each_block3, null, get_each_context3);
8310
+ if (dirty[0] & 786435) {
8311
+ each_value = ctx2[18];
8312
+ let i;
8313
+ for (i = 0; i < each_value.length; i += 1) {
8314
+ const child_ctx = get_each_context3(ctx2, each_value, i);
8315
+ if (each_blocks[i]) {
8316
+ each_blocks[i].p(child_ctx, dirty);
8317
+ } else {
8318
+ each_blocks[i] = create_each_block3(child_ctx);
8319
+ each_blocks[i].c();
8320
+ each_blocks[i].m(div7, null);
8321
+ }
8322
+ }
8323
+ for (; i < each_blocks.length; i += 1) {
8324
+ each_blocks[i].d(1);
8325
+ }
8326
+ each_blocks.length = each_value.length;
8327
+ }
8328
+ if (!current || dirty[0] & 262144) {
8329
+ set_style(div7, "--n", ctx2[18].length);
8294
8330
  }
8295
8331
  },
8296
8332
  i(local) {
@@ -8358,17 +8394,15 @@ function create_fragment54(ctx) {
8358
8394
  detach(div8);
8359
8395
  destroy_component(strokewidth0);
8360
8396
  destroy_component(strokecolor0);
8361
- ctx[33](null);
8362
- destroy_component(strokecolor1);
8363
8397
  ctx[34](null);
8398
+ destroy_component(strokecolor1);
8399
+ ctx[35](null);
8364
8400
  destroy_component(shapes2);
8365
8401
  destroy_component(strokewidth1);
8366
8402
  destroy_component(strokecolor2);
8367
- ctx[35](null);
8368
- for (let i = 0; i < each_blocks.length; i += 1) {
8369
- each_blocks[i].d();
8370
- }
8371
8403
  ctx[36](null);
8404
+ destroy_each(each_blocks, detaching);
8405
+ ctx[37](null);
8372
8406
  mounted = false;
8373
8407
  run_all(dispose);
8374
8408
  }
@@ -8385,9 +8419,11 @@ function instance54($$self, $$props, $$invalidate) {
8385
8419
  let status;
8386
8420
  let max_scroll;
8387
8421
  let $top;
8388
- let $scroll_height, $$unsubscribe_scroll_height = noop, $$subscribe_scroll_height = () => ($$unsubscribe_scroll_height(), $$unsubscribe_scroll_height = subscribe(scroll_height, ($$value) => $$invalidate(31, $scroll_height = $$value)), scroll_height);
8389
- let $memberState, $$unsubscribe_memberState = noop, $$subscribe_memberState = () => ($$unsubscribe_memberState(), $$unsubscribe_memberState = subscribe(memberState, ($$value) => $$invalidate(32, $memberState = $$value)), memberState);
8390
- let $status, $$unsubscribe_status = noop, $$subscribe_status = () => ($$unsubscribe_status(), $$unsubscribe_status = subscribe(status, ($$value) => $$invalidate(18, $status = $$value)), status);
8422
+ let $scroll_height, $$unsubscribe_scroll_height = noop, $$subscribe_scroll_height = () => ($$unsubscribe_scroll_height(), $$unsubscribe_scroll_height = subscribe(scroll_height, ($$value) => $$invalidate(32, $scroll_height = $$value)), scroll_height);
8423
+ let $memberState, $$unsubscribe_memberState = noop, $$subscribe_memberState = () => ($$unsubscribe_memberState(), $$unsubscribe_memberState = subscribe(memberState, ($$value) => $$invalidate(33, $memberState = $$value)), memberState);
8424
+ let $apps;
8425
+ let $status, $$unsubscribe_status = noop, $$subscribe_status = () => ($$unsubscribe_status(), $$unsubscribe_status = subscribe(status, ($$value) => $$invalidate(19, $status = $$value)), status);
8426
+ component_subscribe($$self, apps, ($$value) => $$invalidate(18, $apps = $$value));
8391
8427
  $$self.$$.on_destroy.push(() => $$unsubscribe_scroll_height());
8392
8428
  $$self.$$.on_destroy.push(() => $$unsubscribe_memberState());
8393
8429
  $$self.$$.on_destroy.push(() => $$unsubscribe_status());
@@ -8406,7 +8442,7 @@ function instance54($$self, $$props, $$invalidate) {
8406
8442
  let apps_panel;
8407
8443
  let btn_props;
8408
8444
  let top = writable(0);
8409
- component_subscribe($$self, top, (value) => $$invalidate(38, $top = value));
8445
+ component_subscribe($$self, top, (value) => $$invalidate(39, $top = value));
8410
8446
  function scroll_up() {
8411
8447
  set_store_value(top, $top = clamp($top - 32 - 4, 0, max_scroll), $top);
8412
8448
  }
@@ -8474,7 +8510,7 @@ function instance54($$self, $$props, $$invalidate) {
8474
8510
  if ("scroll_height" in $$props2)
8475
8511
  $$subscribe_scroll_height($$invalidate(4, scroll_height = $$props2.scroll_height));
8476
8512
  if ("computed_height" in $$props2)
8477
- $$invalidate(29, computed_height = $$props2.computed_height);
8513
+ $$invalidate(30, computed_height = $$props2.computed_height);
8478
8514
  if ("scrollable" in $$props2)
8479
8515
  $$invalidate(5, scrollable = $$props2.scrollable);
8480
8516
  };
@@ -8494,9 +8530,9 @@ function instance54($$self, $$props, $$invalidate) {
8494
8530
  }
8495
8531
  if ($$self.$$.dirty[0] & 1) {
8496
8532
  $:
8497
- $$invalidate(30, hotkeys = app == null ? void 0 : app.hotKeys);
8533
+ $$invalidate(31, hotkeys = app == null ? void 0 : app.hotKeys);
8498
8534
  }
8499
- if ($$self.$$.dirty[0] & 1073742080) {
8535
+ if ($$self.$$.dirty[0] & 256 | $$self.$$.dirty[1] & 1) {
8500
8536
  $:
8501
8537
  $$invalidate(17, c = {
8502
8538
  clicker: tooltip(t.clicker, hotkeys == null ? void 0 : hotkeys.changeToClick),
@@ -8510,11 +8546,11 @@ function instance54($$self, $$props, $$invalidate) {
8510
8546
  $:
8511
8547
  $$subscribe_memberState($$invalidate(16, memberState = app == null ? void 0 : app.memberState));
8512
8548
  }
8513
- if ($$self.$$.dirty[1] & 2) {
8549
+ if ($$self.$$.dirty[1] & 4) {
8514
8550
  $:
8515
8551
  $$invalidate(7, appliance = $memberState == null ? void 0 : $memberState.currentApplianceName);
8516
8552
  }
8517
- if ($$self.$$.dirty[1] & 2) {
8553
+ if ($$self.$$.dirty[1] & 4) {
8518
8554
  $:
8519
8555
  $$invalidate(6, shape = $memberState == null ? void 0 : $memberState.shapeType);
8520
8556
  }
@@ -8522,10 +8558,6 @@ function instance54($$self, $$props, $$invalidate) {
8522
8558
  $:
8523
8559
  $$subscribe_status($$invalidate(15, status = app == null ? void 0 : app.appsStatus));
8524
8560
  }
8525
- if ($$self.$$.dirty[0] & 536870944 | $$self.$$.dirty[1] & 1) {
8526
- $:
8527
- max_scroll = scrollable ? $scroll_height + (32 + 8) * 2 - computed_height : 0;
8528
- }
8529
8561
  if ($$self.$$.dirty[0] & 192) {
8530
8562
  $:
8531
8563
  if (applianceShapes.includes(appliance)) {
@@ -8534,6 +8566,10 @@ function instance54($$self, $$props, $$invalidate) {
8534
8566
  $$invalidate(9, last_shape = shape);
8535
8567
  }
8536
8568
  }
8569
+ if ($$self.$$.dirty[0] & 1073741856 | $$self.$$.dirty[1] & 2) {
8570
+ $:
8571
+ max_scroll = scrollable ? $scroll_height + (32 + 8) * 2 - computed_height : 0;
8572
+ }
8537
8573
  };
8538
8574
  return [
8539
8575
  app,
@@ -8554,6 +8590,7 @@ function instance54($$self, $$props, $$invalidate) {
8554
8590
  status,
8555
8591
  memberState,
8556
8592
  c,
8593
+ $apps,
8557
8594
  $status,
8558
8595
  top,
8559
8596
  scroll_up,
@@ -8584,7 +8621,7 @@ var Contents = class extends SvelteComponent {
8584
8621
  language: 2,
8585
8622
  disabled: 3,
8586
8623
  scroll_height: 4,
8587
- computed_height: 29,
8624
+ computed_height: 30,
8588
8625
  scrollable: 5
8589
8626
  }, null, [-1, -1]);
8590
8627
  }
@@ -9329,13 +9366,14 @@ function create_if_block8(ctx) {
9329
9366
  }
9330
9367
  function create_default_slot_15(ctx) {
9331
9368
  let span;
9369
+ let t0_value = (ctx[15] || 1) + "";
9332
9370
  let t0;
9333
9371
  let t1;
9334
9372
  let span_class_value;
9335
9373
  return {
9336
9374
  c() {
9337
9375
  span = element("span");
9338
- t0 = text(ctx[15]);
9376
+ t0 = text(t0_value);
9339
9377
  t1 = text("x");
9340
9378
  attr(span, "class", span_class_value = name7 + "-speed-text");
9341
9379
  },
@@ -9345,8 +9383,8 @@ function create_default_slot_15(ctx) {
9345
9383
  append(span, t1);
9346
9384
  },
9347
9385
  p(ctx2, dirty) {
9348
- if (dirty & 32768)
9349
- set_data(t0, ctx2[15]);
9386
+ if (dirty & 32768 && t0_value !== (t0_value = (ctx2[15] || 1) + ""))
9387
+ set_data(t0, t0_value);
9350
9388
  },
9351
9389
  d(detaching) {
9352
9390
  if (detaching)
@@ -9882,6 +9920,15 @@ function instance57($$self, $$props, $$invalidate) {
9882
9920
  let { language = "en" } = $$props;
9883
9921
  let { containerRef = void 0 } = $$props;
9884
9922
  let container;
9923
+ onMount(() => {
9924
+ if (containerRef) {
9925
+ containerRef(container);
9926
+ return () => {
9927
+ if (containerRef)
9928
+ containerRef(null);
9929
+ };
9930
+ }
9931
+ });
9885
9932
  function div0_binding($$value) {
9886
9933
  binding_callbacks[$$value ? "unshift" : "push"](() => {
9887
9934
  container = $$value;
@@ -9901,13 +9948,19 @@ function instance57($$self, $$props, $$invalidate) {
9901
9948
  $$self.$$.update = () => {
9902
9949
  if ($$self.$$.dirty & 9) {
9903
9950
  $:
9904
- if (player && container)
9905
- player.bindContainer(container);
9951
+ try {
9952
+ if (player && container)
9953
+ player.bindContainer(container);
9954
+ } catch (err) {
9955
+ console.error("[fastboard] An error occurred while binding container");
9956
+ console.error(err);
9957
+ }
9906
9958
  }
9907
- if ($$self.$$.dirty & 24) {
9959
+ if ($$self.$$.dirty & 3) {
9908
9960
  $:
9909
- if (containerRef)
9910
- containerRef(container || null);
9961
+ if (player && theme) {
9962
+ player.manager.setPrefersColorScheme(theme);
9963
+ }
9911
9964
  }
9912
9965
  };
9913
9966
  return [player, theme, language, container, containerRef, div0_binding];
@@ -10092,6 +10145,15 @@ function instance58($$self, $$props, $$invalidate) {
10092
10145
  let { language = "en" } = $$props;
10093
10146
  let { containerRef = void 0 } = $$props;
10094
10147
  let container;
10148
+ onMount(() => {
10149
+ if (containerRef) {
10150
+ containerRef(container);
10151
+ return () => {
10152
+ if (containerRef)
10153
+ containerRef(null);
10154
+ };
10155
+ }
10156
+ });
10095
10157
  function div0_binding($$value) {
10096
10158
  binding_callbacks[$$value ? "unshift" : "push"](() => {
10097
10159
  container = $$value;
@@ -10111,13 +10173,19 @@ function instance58($$self, $$props, $$invalidate) {
10111
10173
  $$self.$$.update = () => {
10112
10174
  if ($$self.$$.dirty & 9) {
10113
10175
  $:
10114
- if (app && container)
10115
- app.bindContainer(container);
10176
+ try {
10177
+ if (app && container)
10178
+ app.bindContainer(container);
10179
+ } catch (err) {
10180
+ console.error("[fastboard] An error occurred while binding container");
10181
+ console.error(err);
10182
+ }
10116
10183
  }
10117
- if ($$self.$$.dirty & 24) {
10184
+ if ($$self.$$.dirty & 3) {
10118
10185
  $:
10119
- if (containerRef)
10120
- containerRef(container || null);
10186
+ if (app && theme) {
10187
+ app.manager.setPrefersColorScheme(theme);
10188
+ }
10121
10189
  }
10122
10190
  };
10123
10191
  return [app, theme, language, container, containerRef, div0_binding];
@@ -10146,7 +10214,7 @@ function injectStyle(text2) {
10146
10214
  }
10147
10215
 
10148
10216
  // inline-sass-content:./src/style.scss
10149
- 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;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:transparent;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;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:transparent;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;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:transparent;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;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:transparent;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)}.fastboard-toolbar.collapsed{transform:translate(-100%)}.fastboard-toolbar-handler{position:absolute;left:100%;width:17px;font-size:0;cursor:pointer}.fastboard-toolbar-handler input[type=checkbox]{position:absolute;top:0;left:0;appearance:none;margin:0;width:100%;height:100%;cursor:pointer}.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:transparent;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:transparent;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:transparent}.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;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 transparent;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 transparent}.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(3,1fr);gap:4px}.fastboard-toolbar-app-btn{margin:0;border:0;padding:4px;background-color:transparent;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;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}.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}.fastboard-bottom-right{left:auto;right:8px}.fastboard-bottom{right:8px}.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}';
10217
+ 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;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:transparent;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;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:transparent;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;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:transparent;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;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:transparent;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)}.fastboard-toolbar.collapsed{transform:translate(-100%)}.fastboard-toolbar-handler{position:absolute;left:100%;width:17px;font-size:0;cursor:pointer}.fastboard-toolbar-handler input[type=checkbox]{position:absolute;top:0;left:0;appearance:none;margin:0;width:100%;height:100%;cursor:pointer}.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:transparent;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:transparent;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:transparent}.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;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 transparent;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 transparent}.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:transparent;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}.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}.fastboard-bottom-right{left:auto;right:8px}.fastboard-bottom{right:8px}.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}';
10150
10218
 
10151
10219
  // inline-sass-stub:./src/style.scss
10152
10220
  injectStyle(style_default);