@budibase/bbui 3.39.19 → 3.39.20

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/bbui.mjs CHANGED
@@ -45707,7 +45707,7 @@ function StatusLight(l, u) {
45707
45707
  var root_1$39 = /* @__PURE__ */ from_html("<img alt=\"Avatar\"/>"), root_2$25 = /* @__PURE__ */ from_html("<div> </div>");
45708
45708
  function Avatar(l, u) {
45709
45709
  push$1(u, !1);
45710
- let f = /* @__PURE__ */ mutable_source(), p = /* @__PURE__ */ mutable_source(), m = new Map([
45710
+ let f = /* @__PURE__ */ new Map([
45711
45711
  ["XXS", "--spectrum-alias-avatar-size-50"],
45712
45712
  ["XS", "--spectrum-alias-avatar-size-75"],
45713
45713
  ["S", "--spectrum-alias-avatar-size-200"],
@@ -45715,35 +45715,37 @@ function Avatar(l, u) {
45715
45715
  ["L", "--spectrum-alias-avatar-size-500"],
45716
45716
  ["XL", "--spectrum-alias-avatar-size-600"],
45717
45717
  ["XXL", "--spectrum-alias-avatar-size-700"]
45718
- ]), v = prop(u, "size", 8, "M"), y = prop(u, "url", 8, ""), b = prop(u, "disabled", 8, !1), x = prop(u, "initials", 8, "JD"), S = prop(u, "color", 8, ""), w = "#3aab87", T = (l) => l?.length ? `hsl(${l[0].toLowerCase().charCodeAt(0) % 26 / 26 * 360}, 50%, 50%)` : "#3aab87", E = (l, u) => {
45719
- let f = `var(${m.get(l)})`;
45720
- return `width:${f}; height:${f}; font-size:${`calc(${f} / 2)`}; background:${u};`;
45718
+ ]), p = prop(u, "size", 8, "M"), m = prop(u, "url", 8, ""), v = prop(u, "disabled", 8, !1), y = prop(u, "initials", 8, "JD"), b = prop(u, "color", 8, ""), x = "#3aab87", S = /* @__PURE__ */ mutable_source(), w = /* @__PURE__ */ mutable_source(), T = (l) => l?.length ? `hsl(${l[0].toLowerCase().charCodeAt(0) % 26 / 26 * 360}, 50%, 50%)` : "#3aab87", E = (l, u) => {
45719
+ let p = f.get(l);
45720
+ if (!p) return `background:${u};`;
45721
+ let m = `var(${p})`;
45722
+ return `width:${m}; height:${m}; font-size:${`calc(${m} / 2)`}; background:${u};`;
45721
45723
  };
45722
- legacy_pre_effect(() => (deep_read_state(S()), deep_read_state(x())), () => {
45723
- set(f, S() || T(x()));
45724
- }), legacy_pre_effect(() => (deep_read_state(v()), get$2(f)), () => {
45725
- set(p, E(v(), get$2(f)));
45724
+ legacy_pre_effect(() => (deep_read_state(b()), deep_read_state(y())), () => {
45725
+ set(S, b() || T(y()));
45726
+ }), legacy_pre_effect(() => (deep_read_state(p()), get$2(S)), () => {
45727
+ set(w, E(p(), get$2(S)));
45726
45728
  }), legacy_pre_effect_reset(), init$1();
45727
45729
  var D = comment(), O = first_child(D), k = (l) => {
45728
45730
  var u = root_1$39();
45729
- let f;
45730
- template_effect((l, p, m) => {
45731
- f = set_class(u, 1, "spectrum-Avatar", null, f, l), set_attribute(u, "src", y()), set_style(u, `width: var(${p ?? ""}); height: var(${m ?? ""});`);
45731
+ let y;
45732
+ template_effect((l, f, p) => {
45733
+ y = set_class(u, 1, "spectrum-Avatar", null, y, l), set_attribute(u, "src", m()), set_style(u, `width: var(${f ?? ""}); height: var(${p ?? ""});`);
45732
45734
  }, [
45733
- () => ({ "is-disabled": b() }),
45734
- () => (deep_read_state(v()), untrack(() => m.get(v()))),
45735
- () => (deep_read_state(v()), untrack(() => m.get(v())))
45735
+ () => ({ "is-disabled": v() }),
45736
+ () => (deep_read_state(p()), untrack(() => f.get(p()))),
45737
+ () => (deep_read_state(p()), untrack(() => f.get(p())))
45736
45738
  ]), append$1(l, u);
45737
45739
  }, j = (l) => {
45738
45740
  var u = root_2$25();
45739
45741
  let f;
45740
- var m = child(u, !0);
45742
+ var p = child(u, !0);
45741
45743
  reset(u), template_effect((l) => {
45742
- f = set_class(u, 1, "spectrum-Avatar svelte-8hiuyi", null, f, l), set_style(u, get$2(p)), set_text(m, x() || "");
45743
- }, [() => ({ "is-disabled": b() })]), append$1(l, u);
45744
+ f = set_class(u, 1, "spectrum-Avatar svelte-8hiuyi", null, f, l), set_style(u, get$2(w)), set_text(p, y() || "");
45745
+ }, [() => ({ "is-disabled": v() })]), append$1(l, u);
45744
45746
  };
45745
45747
  if_block(O, (l) => {
45746
- y() ? l(k) : l(j, !1);
45748
+ m() ? l(k) : l(j, !1);
45747
45749
  }), append$1(l, D), pop();
45748
45750
  }
45749
45751
  //#endregion
@@ -51373,9 +51375,9 @@ var require_random_from_seed = /* @__PURE__ */ __commonJSMin(((l, u) => {
51373
51375
  }, isActiveOverlay = (l) => {
51374
51376
  let u = [];
51375
51377
  return overlayStack.subscribe((l) => u = l)(), u.length > 0 && u[u.length - 1] === l;
51376
- }, drawerContainer = "drawer-container", openDrawers = writable([]), modal = writable(!1), resizable = writable(!0), drawerLeft = writable(null), drawerWidth = writable(null), observer, observe = () => {
51378
+ }, drawerContainer = "drawer-container", openDrawers = writable([]), modal = writable(!1), resizable = writable(!0), drawerLeft = writable(null), drawerWidth = writable(null), observer = null, observe = () => {
51377
51379
  let l = document.getElementsByClassName(drawerContainer)[0];
51378
- if (observer || !l) return;
51380
+ if (observer || !(l instanceof HTMLElement)) return;
51379
51381
  observer = new ResizeObserver((l) => {
51380
51382
  if (!l?.[0]) return;
51381
51383
  let u = l[0].target.getBoundingClientRect();
@@ -51389,7 +51391,7 @@ var require_random_from_seed = /* @__PURE__ */ __commonJSMin(((l, u) => {
51389
51391
  function Drawer(l, u) {
51390
51392
  let f = sanitize_slots(u);
51391
51393
  push$1(u, !1);
51392
- let p = () => store_get(openDrawers, "$openDrawers", S), m = () => store_get(overlayStack, "$overlayStack", S), v = () => store_get(drawerLeft, "$drawerLeft", S), y = () => store_get(drawerWidth, "$drawerWidth", S), b = () => store_get(modal, "$modal", S), x = () => store_get(resizable, "$resizable", S), [S, w] = setup_stores(), T = /* @__PURE__ */ mutable_source(), E = /* @__PURE__ */ mutable_source(), D = /* @__PURE__ */ mutable_source(), O = /* @__PURE__ */ mutable_source(), k = prop(u, "title", 8, ""), j = prop(u, "forceModal", 8, !1), M = prop(u, "zIndex", 8, void 0), N = createEventDispatcher(), P = 11, F = /* @__PURE__ */ mutable_source(!1), L = (0, import_shortid.generate)(), R = (l, u, f, p, m) => {
51394
+ let p = () => store_get(openDrawers, "$openDrawers", S), m = () => store_get(overlayStack, "$overlayStack", S), v = () => store_get(drawerLeft, "$drawerLeft", S), y = () => store_get(drawerWidth, "$drawerWidth", S), b = () => store_get(modal, "$modal", S), x = () => store_get(resizable, "$resizable", S), [S, w] = setup_stores(), T = prop(u, "title", 8, ""), E = prop(u, "forceModal", 8, !1), D = prop(u, "zIndex", 24, () => void 0), O = createEventDispatcher(), k = 11, j = /* @__PURE__ */ mutable_source(!1), M = (0, import_shortid.generate)(), N = /* @__PURE__ */ mutable_source(0), P = /* @__PURE__ */ mutable_source(-1), F = /* @__PURE__ */ mutable_source(BASE_Z_INDEX), L = /* @__PURE__ */ mutable_source(""), R = (l, u, f, p, m) => {
51393
51395
  let v = `
51394
51396
  --scale-factor: ${W(l)};
51395
51397
  --spacing: 11px;
@@ -51402,10 +51404,10 @@ function Drawer(l, u) {
51402
51404
  `;
51403
51405
  };
51404
51406
  function z() {
51405
- get$2(F) || (j() && (modal.set(!0), resizable.set(!1)), observe(), set(F, !0), N("drawerShow", L), openDrawers.update((l) => [...l, L]), addOverlay(L));
51407
+ get$2(j) || (E() && (modal.set(!0), resizable.set(!1)), observe(), set(j, !0), O("drawerShow", M), openDrawers.update((l) => [...l, M]), addOverlay(M));
51406
51408
  }
51407
51409
  function B() {
51408
- get$2(F) && (set(F, !1), N("drawerHide", L), openDrawers.update((l) => l.filter((l) => l !== L)), removeOverlay(L), unobserve());
51410
+ get$2(j) && (set(j, !1), O("drawerHide", M), openDrawers.update((l) => l.filter((l) => l !== M)), removeOverlay(M), unobserve());
51409
51411
  }
51410
51412
  setContext("drawer", {
51411
51413
  hide: B,
@@ -51413,7 +51415,7 @@ function Drawer(l, u) {
51413
51415
  modal,
51414
51416
  resizable
51415
51417
  });
51416
- let V = (l) => l < .5 ? 2 * l * l : 1 - (-2 * l + 2) ** 2 / 2, H = () => ({
51418
+ let V = (l) => l < .5 ? 2 * l * l : 1 - (-2 * l + 2) ** 2 / 2, H = (l) => ({
51417
51419
  duration: 260,
51418
51420
  css: (l) => {
51419
51421
  let u = V(l);
@@ -51422,20 +51424,20 @@ function Drawer(l, u) {
51422
51424
  opacity: ${u};
51423
51425
  `;
51424
51426
  }
51425
- }), U = () => ({
51427
+ }), U = (l) => ({
51426
51428
  duration: 260,
51427
51429
  css: (l) => `opacity: ${V(l)};`
51428
51430
  }), W = (l) => 1 - (1 - 1 / (l * l + 1)) * .1;
51429
51431
  onDestroy(() => {
51430
- get$2(F) && B();
51432
+ get$2(j) && B();
51431
51433
  }), legacy_pre_effect(() => p(), () => {
51432
- set(T, p().length - p().indexOf(L) - 1);
51434
+ set(N, p().length - p().indexOf(M) - 1);
51433
51435
  }), legacy_pre_effect(() => m(), () => {
51434
- set(E, m().indexOf(L));
51435
- }), legacy_pre_effect(() => (deep_read_state(M()), get$2(E), BASE_Z_INDEX), () => {
51436
- set(D, M() ?? (get$2(E) === -1 ? 1001 : 1001 + get$2(E)));
51437
- }), legacy_pre_effect(() => (get$2(T), v(), y(), b(), get$2(D)), () => {
51438
- set(O, R(get$2(T), v(), y(), b(), get$2(D)));
51436
+ set(P, m().indexOf(M));
51437
+ }), legacy_pre_effect(() => (deep_read_state(D()), get$2(P), BASE_Z_INDEX), () => {
51438
+ set(F, D() ?? (get$2(P) === -1 ? 1001 : 1001 + get$2(P)));
51439
+ }), legacy_pre_effect(() => (get$2(N), v(), y(), b(), get$2(F)), () => {
51440
+ set(L, R(get$2(N), v(), y(), b(), get$2(F)));
51439
51441
  }), legacy_pre_effect_reset();
51440
51442
  var K = {
51441
51443
  show: z,
@@ -51450,18 +51452,18 @@ function Drawer(l, u) {
51450
51452
  let y;
51451
51453
  var S = sibling(v, 2);
51452
51454
  let w;
51453
- var E = child(S), j = child(E), M = (l) => {
51455
+ var E = child(S), D = child(E), O = (l) => {
51454
51456
  var f = comment();
51455
51457
  slot(first_child(f), u, "title", {}, null), append$1(l, f);
51456
- }, N = (l) => {
51458
+ }, k = (l) => {
51457
51459
  var u = root_4$6(), f = child(u, !0);
51458
- reset(u), template_effect(() => set_text(f, k() || "Bindings")), append$1(l, u);
51460
+ reset(u), template_effect(() => set_text(f, T() || "Bindings")), append$1(l, u);
51459
51461
  };
51460
- if_block(j, (l) => {
51461
- untrack(() => f.title) ? l(M) : l(N, !1);
51462
+ if_block(D, (l) => {
51463
+ untrack(() => f.title) ? l(O) : l(k, !1);
51462
51464
  });
51463
- var P = sibling(j, 2), F = child(P);
51464
- Button(F, {
51465
+ var j = sibling(D, 2), M = child(j);
51466
+ Button(M, {
51465
51467
  secondary: !0,
51466
51468
  quiet: !0,
51467
51469
  $$events: { click: B },
@@ -51470,9 +51472,9 @@ function Drawer(l, u) {
51470
51472
  },
51471
51473
  $$slots: { default: !0 }
51472
51474
  });
51473
- var L = sibling(F, 2);
51474
- slot(L, u, "buttons", {}, null);
51475
- var R = sibling(L, 2), z = (l) => {
51475
+ var P = sibling(M, 2);
51476
+ slot(P, u, "buttons", {}, null);
51477
+ var R = sibling(P, 2), z = (l) => {
51476
51478
  ActionButton(l, {
51477
51479
  size: "M",
51478
51480
  quiet: !0,
@@ -51496,27 +51498,27 @@ function Drawer(l, u) {
51496
51498
  };
51497
51499
  if_block(R, (l) => {
51498
51500
  x() && l(z);
51499
- }), reset(P), reset(E);
51501
+ }), reset(j), reset(E);
51500
51502
  var V = sibling(E, 2);
51501
51503
  slot(V, u, "body", {}, null);
51502
51504
  var W = sibling(V, 2);
51503
51505
  let K;
51504
51506
  reset(S), reset(m), template_effect((l, u, f) => {
51505
- y = set_class(v, 1, "underlay svelte-1vcgmkq", null, y, l), set_style(v, `z-index: ${get$2(D) - 1}`), w = set_class(S, 1, "drawer svelte-1vcgmkq", null, w, u), set_style(S, get$2(O)), K = set_class(W, 1, "overlay svelte-1vcgmkq", null, K, f);
51507
+ y = set_class(v, 1, "underlay svelte-1vcgmkq", null, y, l), set_style(v, `z-index: ${get$2(F) - 1}`), w = set_class(S, 1, "drawer svelte-1vcgmkq", null, w, u), set_style(S, get$2(L)), K = set_class(W, 1, "overlay svelte-1vcgmkq", null, K, f);
51506
51508
  }, [
51507
51509
  () => ({ hidden: !b() }),
51508
51510
  () => ({
51509
- stacked: get$2(T) > 0,
51511
+ stacked: get$2(N) > 0,
51510
51512
  modal: b()
51511
51513
  }),
51512
- () => ({ hidden: b() || get$2(T) === 0 })
51514
+ () => ({ hidden: b() || get$2(N) === 0 })
51513
51515
  ]), transition(3, v, () => U), transition(3, S, () => H), append$1(l, m);
51514
51516
  },
51515
51517
  $$slots: { default: !0 }
51516
51518
  });
51517
51519
  };
51518
51520
  if_block(J, (l) => {
51519
- get$2(F) && l(Y);
51521
+ get$2(j) && l(Y);
51520
51522
  }), append$1(l, q), bind_prop(u, "show", z), bind_prop(u, "hide", B);
51521
51523
  var X = pop(K);
51522
51524
  return w(), X;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@budibase/bbui",
3
3
  "description": "A UI solution used in the different Budibase projects.",
4
- "version": "3.39.19",
4
+ "version": "3.39.20",
5
5
  "license": "MPL-2.0",
6
6
  "module": "dist/bbui.mjs",
7
7
  "exports": {
@@ -105,5 +105,5 @@
105
105
  }
106
106
  }
107
107
  },
108
- "gitHead": "b4c900a2cf83659df74f4373aeea3a0140164476"
108
+ "gitHead": "20794a65fa61d7d5fe90dd923aebc037a68af4d4"
109
109
  }
@@ -1,7 +1,9 @@
1
- <script>
1
+ <script lang="ts">
2
2
  import "@spectrum-css/avatar/dist/index-vars.css"
3
3
 
4
- let sizes = new Map([
4
+ type AvatarSize = "XXS" | "XS" | "S" | "M" | "L" | "XL" | "XXL"
5
+
6
+ let sizes = new Map<AvatarSize, string>([
5
7
  ["XXS", "--spectrum-alias-avatar-size-50"],
6
8
  ["XS", "--spectrum-alias-avatar-size-75"],
7
9
  ["S", "--spectrum-alias-avatar-size-200"],
@@ -10,28 +12,35 @@
10
12
  ["XL", "--spectrum-alias-avatar-size-600"],
11
13
  ["XXL", "--spectrum-alias-avatar-size-700"],
12
14
  ])
13
- export let size = "M"
14
- export let url = ""
15
- export let disabled = false
16
- export let initials = "JD"
17
- export let color = ""
15
+ export let size: AvatarSize = "M"
16
+ export let url: string = ""
17
+ export let disabled: boolean = false
18
+ export let initials: string = "JD"
19
+ export let color: string = ""
20
+
21
+ const defaultColor = "#3aab87"
18
22
 
19
- const DefaultColor = "#3aab87"
23
+ let avatarColor: string
24
+ let style: string
20
25
 
21
26
  $: avatarColor = color || getColor(initials)
22
27
  $: style = getStyle(size, avatarColor)
23
28
 
24
- const getColor = initials => {
29
+ const getColor = (initials: string): string => {
25
30
  if (!initials?.length) {
26
- return DefaultColor
31
+ return defaultColor
27
32
  }
28
33
  const code = initials[0].toLowerCase().charCodeAt(0)
29
34
  const hue = ((code % 26) / 26) * 360
30
35
  return `hsl(${hue}, 50%, 50%)`
31
36
  }
32
37
 
33
- const getStyle = (sizeKey, color) => {
34
- const size = `var(${sizes.get(sizeKey)})`
38
+ const getStyle = (sizeKey: AvatarSize, color: string): string => {
39
+ const sizeValue = sizes.get(sizeKey)
40
+ if (!sizeValue) {
41
+ return `background:${color};`
42
+ }
43
+ const size = `var(${sizeValue})`
35
44
  const fontSize = `calc(${size} / 2)`
36
45
  return `width:${size}; height:${size}; font-size:${fontSize}; background:${color};`
37
46
  }
@@ -1,25 +1,34 @@
1
- <script context="module">
2
- import { get, writable } from "svelte/store"
1
+ <script lang="ts" context="module">
2
+ import { get, writable, type Writable } from "svelte/store"
3
3
 
4
4
  // Observe this class name if possible in order to know how to size the
5
5
  // drawer. If this doesn't exist we'll use a fixed size.
6
6
  const drawerContainer = "drawer-container"
7
7
 
8
8
  // Context level stores to keep drawers in sync
9
- const openDrawers = writable([])
10
- const modal = writable(false)
11
- const resizable = writable(true)
12
- const drawerLeft = writable(null)
13
- const drawerWidth = writable(null)
9
+ const openDrawers = writable<string[]>([])
10
+ const modal = writable<boolean>(false)
11
+ const resizable = writable<boolean>(true)
12
+ const drawerLeft = writable<number | null>(null)
13
+ const drawerWidth = writable<number | null>(null)
14
14
 
15
15
  // Resize observer to keep track of size changes
16
- let observer
16
+ let observer: ResizeObserver | null = null
17
+
18
+ interface DrawerContext {
19
+ hide: () => void
20
+ show: () => void
21
+ modal: Writable<boolean>
22
+ resizable: Writable<boolean>
23
+ }
17
24
 
18
25
  // Starts observing the target node to watching to size changes.
19
26
  // Invoked when the first drawer of a chain is rendered.
20
27
  const observe = () => {
21
- const target = document.getElementsByClassName(drawerContainer)[0]
22
- if (observer || !target) {
28
+ const target = document.getElementsByClassName(drawerContainer)[0] as
29
+ | Element
30
+ | undefined
31
+ if (observer || !(target instanceof HTMLElement)) {
23
32
  return
24
33
  }
25
34
  observer = new ResizeObserver(entries => {
@@ -56,9 +65,10 @@
56
65
  }
57
66
  </script>
58
67
 
59
- <script>
68
+ <script lang="ts">
60
69
  import { generate } from "shortid"
61
70
  import { createEventDispatcher, onDestroy, setContext } from "svelte"
71
+ import type { TransitionConfig } from "svelte/transition"
62
72
  import Portal from "svelte-portal"
63
73
  import ActionButton from "../ActionButton/ActionButton.svelte"
64
74
  import Button from "../Button/Button.svelte"
@@ -70,15 +80,24 @@
70
80
  BASE_Z_INDEX,
71
81
  } from "../Modal/overlayStack"
72
82
 
73
- export let title = ""
74
- export let forceModal = false
75
- export let zIndex = undefined
83
+ interface DrawerEvents {
84
+ drawerShow: string
85
+ drawerHide: string
86
+ }
87
+
88
+ export let title: string = ""
89
+ export let forceModal: boolean = false
90
+ export let zIndex: number | undefined = undefined
76
91
 
77
- const dispatch = createEventDispatcher()
92
+ const dispatch = createEventDispatcher<DrawerEvents>()
78
93
  const spacing = 11
79
94
 
80
- let visible = false
81
- let drawerId = generate()
95
+ let visible: boolean = false
96
+ let drawerId: string = generate()
97
+ let depth: number = 0
98
+ let stackIndex: number = -1
99
+ let computedZIndex: number = BASE_Z_INDEX
100
+ let style: string = ""
82
101
 
83
102
  $: depth = $openDrawers.length - $openDrawers.indexOf(drawerId) - 1
84
103
  $: stackIndex = $overlayStack.indexOf(drawerId)
@@ -86,7 +105,13 @@
86
105
  zIndex ?? (stackIndex === -1 ? BASE_Z_INDEX : BASE_Z_INDEX + stackIndex)
87
106
  $: style = getStyle(depth, $drawerLeft, $drawerWidth, $modal, computedZIndex)
88
107
 
89
- const getStyle = (depth, left, width, modal, zIndex) => {
108
+ const getStyle = (
109
+ depth: number,
110
+ left: number | null,
111
+ width: number | null,
112
+ modal: boolean,
113
+ zIndex: number | undefined
114
+ ): string => {
90
115
  let style = `
91
116
  --scale-factor: ${getScaleFactor(depth)};
92
117
  --spacing: ${spacing}px;
@@ -105,7 +130,7 @@
105
130
  `
106
131
  }
107
132
 
108
- export function show() {
133
+ export function show(): void {
109
134
  if (visible) {
110
135
  return
111
136
  }
@@ -120,7 +145,7 @@
120
145
  addOverlay(drawerId)
121
146
  }
122
147
 
123
- export function hide() {
148
+ export function hide(): void {
124
149
  if (!visible) {
125
150
  return
126
151
  }
@@ -131,23 +156,23 @@
131
156
  unobserve()
132
157
  }
133
158
 
134
- setContext("drawer", {
159
+ setContext<DrawerContext>("drawer", {
135
160
  hide,
136
161
  show,
137
162
  modal,
138
163
  resizable,
139
164
  })
140
165
 
141
- const easeInOutQuad = x => {
166
+ const easeInOutQuad = (x: number): number => {
142
167
  return x < 0.5 ? 2 * x * x : 1 - Math.pow(-2 * x + 2, 2) / 2
143
168
  }
144
169
 
145
170
  // Use a custom svelte transition here because the built-in slide
146
171
  // transition has a horrible overshoot
147
- const drawerSlide = () => {
172
+ const drawerSlide = (_node: Element): TransitionConfig => {
148
173
  return {
149
174
  duration: 260,
150
- css: t => {
175
+ css: (t: number) => {
151
176
  const f = easeInOutQuad(t)
152
177
  const yOffset = (1 - f) * 200
153
178
  return `
@@ -160,16 +185,16 @@
160
185
 
161
186
  // Custom fade transition because the default svelte one doesn't work any more
162
187
  // with svelte 4
163
- const drawerFade = () => {
188
+ const drawerFade = (_node: Element): TransitionConfig => {
164
189
  return {
165
190
  duration: 260,
166
- css: t => {
191
+ css: (t: number) => {
167
192
  return `opacity: ${easeInOutQuad(t)};`
168
193
  },
169
194
  }
170
195
  }
171
196
 
172
- const getScaleFactor = depth => {
197
+ const getScaleFactor = (depth: number): number => {
173
198
  // Quadratic function approaching a limit of 1 as depth tends to infinity
174
199
  const lim = 1 - 1 / (depth * depth + 1)
175
200
  // Scale drawers between 1 and 0.9 as depth approaches infinity
@@ -1,5 +1,5 @@
1
- <script>
2
- export let padding = true
1
+ <script lang="ts">
2
+ export let padding: boolean = true
3
3
  </script>
4
4
 
5
5
  <div class="drawer-contents" class:padding>