@umbra.ui/core 0.1.24 → 0.1.26

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.
Files changed (74) hide show
  1. package/dist/components/controls/Dropdown/Dropdown.vue +1 -1
  2. package/dist/components/controls/Dropdown/types.d.ts +1 -1
  3. package/dist/components/controls/Dropdown/types.d.ts.map +1 -1
  4. package/dist/components/controls/Dropdown/types.ts +1 -1
  5. package/dist/components/controls/IconButton/IconButton.vue +1 -1
  6. package/dist/components/dialogs/Alert/Alert.vue +1 -1
  7. package/dist/components/dialogs/Toast/Toast.vue +6 -2
  8. package/dist/components/dialogs/Toast/ToastContainer.vue +1 -1
  9. package/dist/components/dialogs/Toast/useToast.d.ts +1 -1
  10. package/dist/components/dialogs/Toast/useToast.d.ts.map +1 -1
  11. package/dist/components/dialogs/Toast/useToast.ts +2 -1
  12. package/dist/components/indicators/Tooltip/tooltip.d.ts +1 -1
  13. package/dist/components/indicators/Tooltip/tooltip.d.ts.map +1 -1
  14. package/dist/components/indicators/Tooltip/tooltip.ts +1 -1
  15. package/dist/components/indicators/Tooltip/useTooltip.d.ts +1 -1
  16. package/dist/components/indicators/Tooltip/useTooltip.d.ts.map +1 -1
  17. package/dist/components/indicators/Tooltip/useTooltip.ts +1 -1
  18. package/dist/components/inputs/Tags/TagBar.vue +2 -1
  19. package/dist/components/inputs/Tags/TagCreation.vue +6 -6
  20. package/dist/components/inputs/Tags/TagPicker.vue +2 -2
  21. package/dist/components/inputs/Tags/types.d.ts.map +1 -1
  22. package/dist/components/inputs/Tags/types.ts +0 -1
  23. package/dist/components/inputs/search/README.md +1 -1
  24. package/dist/components/inputs/search/SearchResults.vue +1 -1
  25. package/dist/components/navigation/adaptive/AdaptiveLayout.vue +1 -1
  26. package/dist/components/navigation/adaptive/types.d.ts +2 -1
  27. package/dist/components/navigation/adaptive/types.d.ts.map +1 -1
  28. package/dist/components/navigation/adaptive/types.ts +2 -1
  29. package/dist/components/navigation/adaptive/useBreakpoints.d.ts +2 -2
  30. package/dist/components/navigation/adaptive/useBreakpoints.d.ts.map +1 -1
  31. package/dist/components/navigation/adaptive/useBreakpoints.ts +2 -2
  32. package/dist/components/navigation/adaptive/useViewAnimation.d.ts +1 -1
  33. package/dist/components/navigation/adaptive/useViewAnimation.d.ts.map +1 -1
  34. package/dist/components/navigation/adaptive/useViewAnimation.ts +1 -1
  35. package/dist/components/navigation/navstack/NavigationStack.vue +1 -1
  36. package/dist/components/navigation/navstack/useNavigationStack.d.ts +2 -2
  37. package/dist/components/navigation/navstack/useNavigationStack.d.ts.map +1 -1
  38. package/dist/components/navigation/navstack/useNavigationStack.ts +3 -2
  39. package/dist/components/navigation/slideover/useSlideoverController.d.ts +1 -1
  40. package/dist/components/navigation/slideover/useSlideoverController.d.ts.map +1 -1
  41. package/dist/components/navigation/slideover/useSlideoverController.ts +2 -1
  42. package/dist/components/navigation/splitview/SplitViewController.vue +1 -1
  43. package/dist/components/navigation/splitview/useSplitViewController.d.ts +2 -2
  44. package/dist/components/navigation/splitview/useSplitViewController.d.ts.map +1 -1
  45. package/dist/components/navigation/splitview/useSplitViewController.ts +3 -2
  46. package/dist/components/pickers/ColorPicker/ColorPicker.vue +2 -1
  47. package/dist/components/pickers/DatePicker/DatePicker.vue +1 -1
  48. package/package.json +4 -2
  49. package/src/components/controls/Dropdown/Dropdown.vue +1 -1
  50. package/src/components/controls/Dropdown/types.ts +1 -1
  51. package/src/components/controls/IconButton/IconButton.vue +1 -1
  52. package/src/components/dialogs/Alert/Alert.vue +1 -1
  53. package/src/components/dialogs/Toast/Toast.vue +6 -2
  54. package/src/components/dialogs/Toast/ToastContainer.vue +1 -1
  55. package/src/components/dialogs/Toast/useToast.ts +2 -1
  56. package/src/components/indicators/Tooltip/tooltip.ts +1 -1
  57. package/src/components/indicators/Tooltip/useTooltip.ts +1 -1
  58. package/src/components/inputs/Tags/TagBar.vue +2 -1
  59. package/src/components/inputs/Tags/TagCreation.vue +6 -6
  60. package/src/components/inputs/Tags/TagPicker.vue +2 -2
  61. package/src/components/inputs/Tags/types.ts +0 -1
  62. package/src/components/inputs/search/README.md +1 -1
  63. package/src/components/inputs/search/SearchResults.vue +1 -1
  64. package/src/components/navigation/adaptive/AdaptiveLayout.vue +1 -1
  65. package/src/components/navigation/adaptive/types.ts +2 -1
  66. package/src/components/navigation/adaptive/useBreakpoints.ts +2 -2
  67. package/src/components/navigation/adaptive/useViewAnimation.ts +1 -1
  68. package/src/components/navigation/navstack/NavigationStack.vue +1 -1
  69. package/src/components/navigation/navstack/useNavigationStack.ts +3 -2
  70. package/src/components/navigation/slideover/useSlideoverController.ts +2 -1
  71. package/src/components/navigation/splitview/SplitViewController.vue +1 -1
  72. package/src/components/navigation/splitview/useSplitViewController.ts +3 -2
  73. package/src/components/pickers/ColorPicker/ColorPicker.vue +2 -1
  74. package/src/components/pickers/DatePicker/DatePicker.vue +1 -1
@@ -2,7 +2,7 @@
2
2
  import { ChevronRightIcon } from "@umbra.ui/icons";
3
3
  import { Button } from "@umbra.ui/core";
4
4
  import { ref, onUnmounted, onMounted, computed, nextTick, watch } from "vue";
5
- import { DropdownItem } from "./types";
5
+ import type { DropdownItem } from "./types";
6
6
  import "./theme.css";
7
7
 
8
8
  // Shared overlay system across all dropdown instances
@@ -1,4 +1,4 @@
1
- import { ControlItem } from "../SegmentedControl/types";
1
+ import type { ControlItem } from "../SegmentedControl/types";
2
2
  export interface DropdownItem extends ControlItem {
3
3
  id: string | number;
4
4
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/controls/Dropdown/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAGxD,MAAM,WAAW,YAAa,SAAQ,WAAW;IAC/C,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;CACrB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/controls/Dropdown/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAG7D,MAAM,WAAW,YAAa,SAAQ,WAAW;IAC/C,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;CACrB"}
@@ -1,4 +1,4 @@
1
- import { ControlItem } from "../SegmentedControl/types";
1
+ import type { ControlItem } from "../SegmentedControl/types";
2
2
 
3
3
  // Updated DropdownItem interface with required id
4
4
  export interface DropdownItem extends ControlItem {
@@ -7,7 +7,7 @@ import "./theme.css";
7
7
  interface Props {
8
8
  iconName?: IconKey;
9
9
  buttonType?: "round" | "square" | "plain";
10
- buttonStyle?: "primary" | "secondary" | "tertiary" | "quaternary";
10
+ buttonStyle?: "primary" | "secondary" | "tertiary" | "quaternary" | string;
11
11
  state?: "normal" | "active" | "disabled";
12
12
  buttonSize?: number;
13
13
  tooltip?: string | TooltipConfig;
@@ -4,7 +4,7 @@
4
4
  <script setup lang="ts">
5
5
  import { watch, ref } from "vue";
6
6
  import Button from "../../controls/Button/Button.vue";
7
- import { AlertAction, AlertActionType } from "./types";
7
+ import type { AlertAction, AlertActionType } from "./types";
8
8
  import "./theme.css";
9
9
 
10
10
  // Props for customization
@@ -83,6 +83,10 @@ const textColor = computed(() => {
83
83
  return color.isLight() ? "black" : "white";
84
84
  });
85
85
 
86
+ const buttonStyle = computed(() => {
87
+ return textColor.value === "black" ? "secondary" : "primary";
88
+ });
89
+
86
90
  const customColor = computed(() => {
87
91
  const validTypes = ["success", "error", "warning", "info"];
88
92
  if (!validTypes.includes(props.toast.toastType as string)) {
@@ -165,8 +169,8 @@ const handleKeyDown = (event: KeyboardEvent) => {
165
169
  :class="$style.closeButton"
166
170
  @click.stop="handleDismiss"
167
171
  buttonType="plain"
168
- buttonSize="12"
169
- :buttonStyle="textColor"
172
+ :buttonSize="12"
173
+ :buttonStyle="buttonStyle"
170
174
  />
171
175
  </div>
172
176
  </template>
@@ -17,7 +17,7 @@ const containerRef = ref<HTMLElement>();
17
17
  const animatedToasts = new Set<string>();
18
18
 
19
19
  // Track auto-dismiss timeouts
20
- const autoDismissTimeouts = new Map<string, NodeJS.Timeout>();
20
+ const autoDismissTimeouts = new Map<string, ReturnType<typeof setTimeout>>();
21
21
 
22
22
  const handleDismiss = async (id: string) => {
23
23
  // Clear any auto-dismiss timeout for this toast
@@ -1,4 +1,4 @@
1
- import { App } from "vue";
1
+ import type { App } from "vue";
2
2
  import type { ToastOptions } from "./types";
3
3
  export declare const ToastPlugin: {
4
4
  install(app: App): void;
@@ -1 +1 @@
1
- {"version":3,"file":"useToast.d.ts","sourceRoot":"","sources":["../../../../src/components/dialogs/Toast/useToast.ts"],"names":[],"mappings":"AACA,OAAO,EAA2B,GAAG,EAAmB,MAAM,KAAK,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAiB,MAAM,SAAS,CAAC;AA2F3D,eAAO,MAAM,WAAW;iBACT,GAAG;CAMjB,CAAC;AAGF,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;wBAjFK,YAAY,KAAG,OAAO,CAAC,MAAM,CAAC;sBA4BtC,MAAM;;2BAhCD,KAAK,GAAG,MAAM,GAAG,cAAc;yBA+C3C,MAAM,gBACC,MAAM,YACV,OAAO,CAAC,YAAY,CAAC;uBAIxB,MAAM,gBACC,MAAM,YACV,OAAO,CAAC,YAAY,CAAC;yBAIxB,MAAM,gBACC,MAAM,YACV,OAAO,CAAC,YAAY,CAAC;sBAIxB,MAAM,gBACC,MAAM,YACV,OAAO,CAAC,YAAY,CAAC;CAyClC,CAAC"}
1
+ {"version":3,"file":"useToast.d.ts","sourceRoot":"","sources":["../../../../src/components/dialogs/Toast/useToast.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC/B,OAAO,KAAK,EAAE,YAAY,EAAiB,MAAM,SAAS,CAAC;AA2F3D,eAAO,MAAM,WAAW;iBACT,GAAG;CAMjB,CAAC;AAGF,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;wBAjFK,YAAY,KAAG,OAAO,CAAC,MAAM,CAAC;sBA4BtC,MAAM;;2BAhCD,KAAK,GAAG,MAAM,GAAG,cAAc;yBA+C3C,MAAM,gBACC,MAAM,YACV,OAAO,CAAC,YAAY,CAAC;uBAIxB,MAAM,gBACC,MAAM,YACV,OAAO,CAAC,YAAY,CAAC;yBAIxB,MAAM,gBACC,MAAM,YACV,OAAO,CAAC,YAAY,CAAC;sBAIxB,MAAM,gBACC,MAAM,YACV,OAAO,CAAC,YAAY,CAAC;CAyClC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  // useToast.ts
2
- import { ref, computed, nextTick, App, inject, provide } from "vue";
2
+ import { ref, computed, nextTick, inject, provide } from "vue";
3
+ import type { App } from "vue";
3
4
  import type { ToastOptions, ToastInstance } from "./types";
4
5
 
5
6
  const TOAST_INJECTION_KEY = Symbol("toast");
@@ -1,3 +1,3 @@
1
- import { Directive } from "vue";
1
+ import type { Directive } from "vue";
2
2
  export declare const vTooltip: Directive;
3
3
  //# sourceMappingURL=tooltip.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../../src/components/indicators/Tooltip/tooltip.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAoB,MAAM,KAAK,CAAC;AAQlD,eAAO,MAAM,QAAQ,EAAE,SAsCtB,CAAC"}
1
+ {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../../src/components/indicators/Tooltip/tooltip.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAoB,MAAM,KAAK,CAAC;AAQvD,eAAO,MAAM,QAAQ,EAAE,SAsCtB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  // directives/tooltip.ts
2
- import { Directive, DirectiveBinding } from "vue";
2
+ import type { Directive, DirectiveBinding } from "vue";
3
3
  import { useTooltip } from "./useTooltip";
4
4
  import type { TooltipConfig } from "./types";
5
5
 
@@ -1,4 +1,4 @@
1
- import { TooltipConfig } from "./types";
1
+ import type { TooltipConfig } from "./types";
2
2
  export declare const useTooltipProvider: () => {
3
3
  tooltipState: {
4
4
  isVisible: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"useTooltip.d.ts","sourceRoot":"","sources":["../../../../src/components/indicators/Tooltip/useTooltip.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAgB,MAAM,SAAS,CAAC;AAUtD,eAAO,MAAM,kBAAkB;;;;;;;;2BACO,WAAW,UAAU,aAAa;;CAoBvE,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,QAAQ,aAAa;2BAGhB,WAAW,GAAG,GAAG;2BA8BtB,WAAW;;CAGrC,CAAC"}
1
+ {"version":3,"file":"useTooltip.d.ts","sourceRoot":"","sources":["../../../../src/components/indicators/Tooltip/useTooltip.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAgB,MAAM,SAAS,CAAC;AAU3D,eAAO,MAAM,kBAAkB;;;;;;;;2BACO,WAAW,UAAU,aAAa;;CAoBvE,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,QAAQ,aAAa;2BAGhB,WAAW,GAAG,GAAG;2BA8BtB,WAAW;;CAGrC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { reactive } from "vue";
2
- import { TooltipConfig, TooltipState } from "./types";
2
+ import type { TooltipConfig, TooltipState } from "./types";
3
3
 
4
4
  const tooltipState = reactive<TooltipState>({
5
5
  isVisible: false,
@@ -9,7 +9,8 @@ import {
9
9
  watch,
10
10
  } from "vue";
11
11
  import { useTheme } from "../../../theme";
12
- import { TagItem, generateTagStyle } from "./types";
12
+ import { generateTagStyle } from "./types";
13
+ import type { TagItem } from "./types";
13
14
  import { IconButton } from "@umbra.ui/core";
14
15
  import { gsap } from "gsap";
15
16
  import TagPicker from "./TagPicker.vue";
@@ -6,7 +6,7 @@
6
6
  import { ref, computed } from "vue";
7
7
  import { gsap } from "gsap";
8
8
  import ColorPicker from "../../pickers/ColorPicker/ColorPicker.vue";
9
- import { Color } from "../../pickers/ColorPicker/colors";
9
+ import type { Color } from "../../pickers/ColorPicker/colors";
10
10
  import { CheckIcon } from "@umbra.ui/icons";
11
11
  const props = defineProps({
12
12
  containerID: {
@@ -28,7 +28,7 @@ const emits = defineEmits(["onCreate"]);
28
28
  const input = ref(null);
29
29
  const confirm = ref(null);
30
30
  const title = ref<string>("");
31
- const color = ref<Color>(null);
31
+ const color = ref<Color | null>(null);
32
32
  const currentHex = () => {
33
33
  return color.value?.hex ?? props.initialColor.hex;
34
34
  };
@@ -75,7 +75,7 @@ const onConfirm = () => {
75
75
  reset();
76
76
  };
77
77
  const onCancel = () => {
78
- title.value = originalTitle.value;
78
+ title.value = originalTitle.value ?? "";
79
79
  gsap.to(confirm.value, { duration: 0.3, opacity: 0, scale: 0.5 });
80
80
  };
81
81
 
@@ -99,10 +99,10 @@ const reset = () => {
99
99
  <div :class="$style.container">
100
100
  <div :class="$style.content">
101
101
  <ColorPicker
102
- :containerID="$props.containerID"
102
+ :color="color ?? initialColor"
103
103
  :pickerOffsetX="-8"
104
- @onColorSelect="onColorSelection"
105
- :buttonStyle="{ backgroundColor: currentHex() }"
104
+ :preventPopup="false"
105
+ @update:color="onColorSelection"
106
106
  />
107
107
  <input
108
108
  :class="[$style.field, 'body']"
@@ -1,6 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import { computed, ref, watch, nextTick } from "vue";
3
- import { TagItem, generateTagStyle } from "./types";
3
+ import { generateTagStyle } from "./types";
4
+ import type { TagItem } from "./types";
4
5
  import { ArrowTurnLeftIcon } from "@umbra.ui/icons";
5
6
  import "./theme.css";
6
7
 
@@ -42,7 +43,6 @@ const getTagStyle = (tag: TagItem) => {
42
43
  }
43
44
  // Default style if none provided
44
45
  return generateTagStyle({
45
- variant: "default",
46
46
  colorScheme: "#6b7280",
47
47
  size: "md",
48
48
  });
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/inputs/Tags/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/inputs/Tags/types.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import tinycolor from "tinycolor2";
2
2
  import * as colors from "@umbra.ui/colors";
3
- import { ThemeObject } from "../../../index";
4
3
  import { getThemeConfig } from "../../../theme";
5
4
 
6
5
  // Core interfaces
@@ -460,7 +460,7 @@ const searchAPI = async (query: string) => {
460
460
  };
461
461
 
462
462
  // Debounced search
463
- let searchTimeout: NodeJS.Timeout;
463
+ let searchTimeout: ReturnType<typeof setTimeout>;
464
464
  watch(searchQuery, (newQuery) => {
465
465
  clearTimeout(searchTimeout);
466
466
  searchTimeout = setTimeout(() => {
@@ -1,6 +1,6 @@
1
1
  <!-- SearchResults.vue -->
2
2
  <script setup lang="ts">
3
- import { SearchResult } from "./types";
3
+ import type { SearchResult } from "./types";
4
4
  import { CircleAnim32GlyphIcon, ChevronDownIcon } from "@umbra.ui/icons";
5
5
  import { computed, ref, watch } from "vue";
6
6
  import "./theme.css";
@@ -14,7 +14,7 @@ import {
14
14
  } from "vue";
15
15
  import { useAdaptiveLayoutState } from "./useAdaptiveLayout";
16
16
  import { useResponsiveContainer } from "./useContainerMonitor";
17
- import { View, InternalView, ViewLayout } from "./types";
17
+ import type { View, InternalView, ViewLayout } from "./types";
18
18
  import { useViewAnimation } from "./useViewAnimation";
19
19
  import { useBreakpoints } from "./useBreakpoints";
20
20
  import {
@@ -1,4 +1,5 @@
1
- import { Component, markRaw } from "vue";
1
+ import { markRaw } from "vue";
2
+ import type { Component } from "vue";
2
3
  export interface View {
3
4
  id: string;
4
5
  component: Component | ReturnType<typeof markRaw<Component>>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/navigation/adaptive/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAEzC,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,SAAS,GAAG,UAAU,CAAC,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,CAAC;AAE7E,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;AAE3E,MAAM,WAAW,YAAa,SAAQ,IAAI;IACxC,QAAQ,EAAE,YAAY,CAAC;CACxB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/navigation/adaptive/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAC9B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAErC,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,SAAS,GAAG,UAAU,CAAC,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,CAAC;AAE7E,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;AAE3E,MAAM,WAAW,YAAa,SAAQ,IAAI;IACxC,QAAQ,EAAE,YAAY,CAAC;CACxB"}
@@ -1,4 +1,5 @@
1
- import { Component, markRaw } from "vue";
1
+ import { markRaw } from "vue";
2
+ import type { Component } from "vue";
2
3
 
3
4
  export interface View {
4
5
  id: string;
@@ -1,5 +1,5 @@
1
- import { Ref } from "vue";
2
- import { InternalView } from "./types";
1
+ import type { Ref } from "vue";
2
+ import type { InternalView } from "./types";
3
3
  export declare const useBreakpoints: (views: Ref<InternalView[]>) => {
4
4
  setupForBreakpoint: (oldBreakpoint: string | null, currentBreakpoint: string | null) => void;
5
5
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useBreakpoints.d.ts","sourceRoot":"","sources":["../../../../src/components/navigation/adaptive/useBreakpoints.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,eAAO,MAAM,cAAc,GAAI,OAAO,GAAG,CAAC,YAAY,EAAE,CAAC;wCAEtC,MAAM,GAAG,IAAI,qBACT,MAAM,GAAG,IAAI;CAkCnC,CAAC"}
1
+ {"version":3,"file":"useBreakpoints.d.ts","sourceRoot":"","sources":["../../../../src/components/navigation/adaptive/useBreakpoints.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,eAAO,MAAM,cAAc,GAAI,OAAO,GAAG,CAAC,YAAY,EAAE,CAAC;wCAEtC,MAAM,GAAG,IAAI,qBACT,MAAM,GAAG,IAAI;CAkCnC,CAAC"}
@@ -1,5 +1,5 @@
1
- import { Ref } from "vue";
2
- import { InternalView } from "./types";
1
+ import type { Ref } from "vue";
2
+ import type { InternalView } from "./types";
3
3
 
4
4
  export const useBreakpoints = (views: Ref<InternalView[]>) => {
5
5
  const setupForBreakpoint = (
@@ -1,5 +1,5 @@
1
1
  import { type Ref } from "vue";
2
- import { InternalView } from "./types";
2
+ import type { InternalView } from "./types";
3
3
  export declare const useViewAnimation: (views: Ref<InternalView[]>, instanceKey: string, containerDimensions: Ref<{
4
4
  width: number;
5
5
  height: number;
@@ -1 +1 @@
1
- {"version":3,"file":"useViewAnimation.d.ts","sourceRoot":"","sources":["../../../../src/components/navigation/adaptive/useViewAnimation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,GAAG,EAAE,MAAM,KAAK,CAAC;AAG9C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAcvC,eAAO,MAAM,gBAAgB,GAC3B,OAAO,GAAG,CAAC,YAAY,EAAE,CAAC,EAC1B,aAAa,MAAM,EACnB,qBAAqB,GAAG,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,EAC3D,SAAS,MAAM,EACf,KAAK,MAAM;wBAuNsB,MAAM;wBAMN,MAAM;yBAUN,MAAM,GAAG,IAAI;wBAgBd,MAAM,GAAG,IAAI;wBAwLZ,MAAM;;yBA0CN,MAAM,GAAG,IAAI;wBAkDd,MAAM,GAAG,IAAI;uBAgEb,MAAM;;sBAYP,MAAM;;;;sBA3iBZ,YAAY;;;2BAIT,WAAW,EAAE;uBA6Ff,YAAY;4BAIP,MAAM,YAAY,MAAM;;8BAhCtB,MAAM,KAAG,YAAY,GAAG,IAAI;6BAU7B,MAAM,KAAG,YAAY,GAAG,IAAI;CA+jB7D,CAAC"}
1
+ {"version":3,"file":"useViewAnimation.d.ts","sourceRoot":"","sources":["../../../../src/components/navigation/adaptive/useViewAnimation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,GAAG,EAAE,MAAM,KAAK,CAAC;AAG9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAc5C,eAAO,MAAM,gBAAgB,GAC3B,OAAO,GAAG,CAAC,YAAY,EAAE,CAAC,EAC1B,aAAa,MAAM,EACnB,qBAAqB,GAAG,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,EAC3D,SAAS,MAAM,EACf,KAAK,MAAM;wBAuNsB,MAAM;wBAMN,MAAM;yBAUN,MAAM,GAAG,IAAI;wBAgBd,MAAM,GAAG,IAAI;wBAwLZ,MAAM;;yBA0CN,MAAM,GAAG,IAAI;wBAkDd,MAAM,GAAG,IAAI;uBAgEb,MAAM;;sBAYP,MAAM;;;;sBA3iBZ,YAAY;;;2BAIT,WAAW,EAAE;uBA6Ff,YAAY;4BAIP,MAAM,YAAY,MAAM;;8BAhCtB,MAAM,KAAG,YAAY,GAAG,IAAI;6BAU7B,MAAM,KAAG,YAAY,GAAG,IAAI;CA+jB7D,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { nextTick, ref, type Ref } from "vue";
2
2
  import { Flip } from "gsap/Flip";
3
3
  import gsap from "gsap";
4
- import { InternalView } from "./types";
4
+ import type { InternalView } from "./types";
5
5
 
6
6
  gsap.registerPlugin(Flip);
7
7
 
@@ -4,7 +4,7 @@ import { Flip } from "gsap/Flip";
4
4
  import { ref, onMounted, onUnmounted, watch, toRef } from "vue";
5
5
  import { useNavigationStack } from "./useNavigationStack";
6
6
  import "../theme.css";
7
- import { Pane } from "../types";
7
+ import type { Pane } from "../types";
8
8
 
9
9
  gsap.registerPlugin(Flip);
10
10
 
@@ -1,5 +1,5 @@
1
- import { Ref } from "vue";
2
- import { Pane } from "../types";
1
+ import type { Ref } from "vue";
2
+ import type { Pane } from "../types";
3
3
  export declare function useNavigationStack(initialPanes: Pane[], taskKey: string): {
4
4
  panes: Ref<{
5
5
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"useNavigationStack.d.ts","sourceRoot":"","sources":["../../../../src/components/navigation/navstack/useNavigationStack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,GAAG,EAAmB,MAAM,KAAK,CAAC;AAGhD,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIhC,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM;;;;;;;;;;;;;;;;sBAO7C,MAAM,aAAY,OAAO;oBA4E3B,IAAI,kBAAiB,OAAO;wBAWxB,MAAM;wBAqBxB,MAAM,QACP,IAAI,kBACK,OAAO;4BAqBO,IAAI,EAAE;EAkBtC"}
1
+ {"version":3,"file":"useNavigationStack.d.ts","sourceRoot":"","sources":["../../../../src/components/navigation/navstack/useNavigationStack.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC/B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAMrC,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM;;;;;;;;;;;;;;;;sBAO7C,MAAM,aAAY,OAAO;oBA4E3B,IAAI,kBAAiB,OAAO;wBAWxB,MAAM;wBAqBxB,MAAM,QACP,IAAI,kBACK,OAAO;4BAqBO,IAAI,EAAE;EAkBtC"}
@@ -1,7 +1,8 @@
1
- import { ref, Ref, computed, watch } from "vue";
1
+ import { ref, computed, watch } from "vue";
2
+ import type { Ref } from "vue";
3
+ import type { Pane } from "../types";
2
4
  import { gsap } from "gsap";
3
5
  import { Flip } from "gsap/Flip";
4
- import { Pane } from "../types";
5
6
 
6
7
  gsap.registerPlugin(Flip);
7
8
 
@@ -1,4 +1,4 @@
1
- import { Ref } from "vue";
1
+ import type { Ref } from "vue";
2
2
  interface Pane {
3
3
  name: string;
4
4
  background: string;
@@ -1 +1 @@
1
- {"version":3,"file":"useSlideoverController.d.ts","sourceRoot":"","sources":["../../../../src/components/navigation/slideover/useSlideoverController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,GAAG,EAAY,MAAM,KAAK,CAAC;AAMzC,UAAU,IAAI;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,GAAG,CAAC;IACf,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC5B;AAED,eAAO,MAAM,sBAAsB,GAAI,OAAO,IAAI,EAAE,EAAE,aAAa,MAAM;;;sBAqC9C,MAAM;sBAiDN,MAAM;wBAyCJ,MAAM;;;sBA6HR,MAAM,aAAY,OAAO;CAqDnD,CAAC"}
1
+ {"version":3,"file":"useSlideoverController.d.ts","sourceRoot":"","sources":["../../../../src/components/navigation/slideover/useSlideoverController.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAM/B,UAAU,IAAI;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,GAAG,CAAC;IACf,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC5B;AAED,eAAO,MAAM,sBAAsB,GAAI,OAAO,IAAI,EAAE,EAAE,aAAa,MAAM;;;sBAqC9C,MAAM;sBAiDN,MAAM;wBAyCJ,MAAM;;;sBA6HR,MAAM,aAAY,OAAO;CAqDnD,CAAC"}
@@ -1,4 +1,5 @@
1
- import { ref, Ref, computed } from "vue";
1
+ import { ref, computed } from "vue";
2
+ import type { Ref } from "vue";
2
3
  import { gsap } from "gsap";
3
4
  import { Flip } from "gsap/Flip";
4
5
 
@@ -5,7 +5,7 @@ import { Flip } from "gsap/Flip";
5
5
  import { ref, onMounted } from "vue";
6
6
  import { useSplitViewController } from "./useSplitViewController";
7
7
  import "../theme.css";
8
- import { Pane } from "../types";
8
+ import type { Pane } from "../types";
9
9
 
10
10
  gsap.registerPlugin(Flip);
11
11
 
@@ -1,5 +1,5 @@
1
- import { Ref } from "vue";
2
- import { Pane } from "../types";
1
+ import type { Ref } from "vue";
2
+ import type { Pane } from "../types";
3
3
  export declare const useSplitViewController: (panes: Pane[] | Ref<Pane[]>, componentId: string) => {
4
4
  visiblePanes: Ref<boolean[], boolean[]>;
5
5
  currentPaneIndex: import("vue").ComputedRef<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"useSplitViewController.d.ts","sourceRoot":"","sources":["../../../../src/components/navigation/splitview/useSplitViewController.ts"],"names":[],"mappings":"AACA,OAAO,EAAO,GAAG,EAA0B,MAAM,KAAK,CAAC;AAGvD,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIhC,eAAO,MAAM,sBAAsB,GACjC,OAAO,IAAI,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,EAC3B,aAAa,MAAM;;;;cAUX,MAAM,GAAG,MAAM;eACd,MAAM;;cADP,MAAM,GAAG,MAAM;eACd,MAAM;;sBA2BU,MAAM;sBAqDN,MAAM;wBAqCJ,MAAM;;;sBAwIR,MAAM,aAAY,OAAO;CAiHnD,CAAC"}
1
+ {"version":3,"file":"useSplitViewController.d.ts","sourceRoot":"","sources":["../../../../src/components/navigation/splitview/useSplitViewController.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC/B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAMrC,eAAO,MAAM,sBAAsB,GACjC,OAAO,IAAI,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,EAC3B,aAAa,MAAM;;;;cAUX,MAAM,GAAG,MAAM;eACd,MAAM;;cADP,MAAM,GAAG,MAAM;eACd,MAAM;;sBA2BU,MAAM;sBAqDN,MAAM;wBAqCJ,MAAM;;;sBAwIR,MAAM,aAAY,OAAO;CAiHnD,CAAC"}
@@ -1,8 +1,9 @@
1
1
  //useSplitViewController.ts
2
- import { ref, Ref, computed, unref, watch } from "vue";
2
+ import { ref, computed, unref, watch } from "vue";
3
+ import type { Ref } from "vue";
4
+ import type { Pane } from "../types";
3
5
  import { gsap } from "gsap";
4
6
  import { Flip } from "gsap/Flip";
5
- import { Pane } from "../types";
6
7
 
7
8
  gsap.registerPlugin(Flip);
8
9
 
@@ -1,6 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import { ref, watch, onBeforeUnmount, nextTick, computed } from "vue";
3
- import { Color, colors, colorPickerColors } from "./colors";
3
+ import { colors, colorPickerColors } from "./colors";
4
+ import type { Color } from "./colors";
4
5
  import {
5
6
  offset,
6
7
  flip,
@@ -257,7 +257,7 @@ const scrollview = ref<HTMLElement | null>(null);
257
257
  const fetchInProgress = ref<boolean>(false);
258
258
  const allowScroll = ref<boolean>(false);
259
259
  const isScrolling = ref<boolean>(false);
260
- let scrollTimeout: NodeJS.Timeout | undefined;
260
+ let scrollTimeout: ReturnType<typeof setTimeout> | undefined;
261
261
  const handleScroll = () => {
262
262
  // Set isScrolling to true when scrolling starts
263
263
  if (allowScroll.value) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@umbra.ui/core",
3
- "version": "0.1.24",
3
+ "version": "0.1.26",
4
4
  "description": "Core components for Umbra UI",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -47,15 +47,17 @@
47
47
  "@umbra.ui/icons": "^0.1.2",
48
48
  "@umbra.ui/typography": "^0.1.2",
49
49
  "autosize": "^6.0.1",
50
+ "@types/autosize": "^4.0.3",
50
51
  "gsap": "^3.13.0",
51
52
  "marked": "^16.1.2",
52
53
  "mitt": "^3.0.1",
53
54
  "prismjs": "^1.30.0",
55
+ "@types/prismjs": "^1.26.3",
54
56
  "tinycolor2": "^1.6.0",
57
+ "@types/tinycolor2": "^1.4.6",
55
58
  "vue": "^3.5.17"
56
59
  },
57
60
  "devDependencies": {
58
- "@types/tinycolor2": "^1.4.6",
59
61
  "glob": "^10.4.5",
60
62
  "typescript": "^5.0.0"
61
63
  },
@@ -2,7 +2,7 @@
2
2
  import { ChevronRightIcon } from "@umbra.ui/icons";
3
3
  import { Button } from "@umbra.ui/core";
4
4
  import { ref, onUnmounted, onMounted, computed, nextTick, watch } from "vue";
5
- import { DropdownItem } from "./types";
5
+ import type { DropdownItem } from "./types";
6
6
  import "./theme.css";
7
7
 
8
8
  // Shared overlay system across all dropdown instances
@@ -1,4 +1,4 @@
1
- import { ControlItem } from "../SegmentedControl/types";
1
+ import type { ControlItem } from "../SegmentedControl/types";
2
2
 
3
3
  // Updated DropdownItem interface with required id
4
4
  export interface DropdownItem extends ControlItem {
@@ -7,7 +7,7 @@ import "./theme.css";
7
7
  interface Props {
8
8
  iconName?: IconKey;
9
9
  buttonType?: "round" | "square" | "plain";
10
- buttonStyle?: "primary" | "secondary" | "tertiary" | "quaternary";
10
+ buttonStyle?: "primary" | "secondary" | "tertiary" | "quaternary" | string;
11
11
  state?: "normal" | "active" | "disabled";
12
12
  buttonSize?: number;
13
13
  tooltip?: string | TooltipConfig;
@@ -4,7 +4,7 @@
4
4
  <script setup lang="ts">
5
5
  import { watch, ref } from "vue";
6
6
  import Button from "../../controls/Button/Button.vue";
7
- import { AlertAction, AlertActionType } from "./types";
7
+ import type { AlertAction, AlertActionType } from "./types";
8
8
  import "./theme.css";
9
9
 
10
10
  // Props for customization
@@ -83,6 +83,10 @@ const textColor = computed(() => {
83
83
  return color.isLight() ? "black" : "white";
84
84
  });
85
85
 
86
+ const buttonStyle = computed(() => {
87
+ return textColor.value === "black" ? "secondary" : "primary";
88
+ });
89
+
86
90
  const customColor = computed(() => {
87
91
  const validTypes = ["success", "error", "warning", "info"];
88
92
  if (!validTypes.includes(props.toast.toastType as string)) {
@@ -165,8 +169,8 @@ const handleKeyDown = (event: KeyboardEvent) => {
165
169
  :class="$style.closeButton"
166
170
  @click.stop="handleDismiss"
167
171
  buttonType="plain"
168
- buttonSize="12"
169
- :buttonStyle="textColor"
172
+ :buttonSize="12"
173
+ :buttonStyle="buttonStyle"
170
174
  />
171
175
  </div>
172
176
  </template>
@@ -17,7 +17,7 @@ const containerRef = ref<HTMLElement>();
17
17
  const animatedToasts = new Set<string>();
18
18
 
19
19
  // Track auto-dismiss timeouts
20
- const autoDismissTimeouts = new Map<string, NodeJS.Timeout>();
20
+ const autoDismissTimeouts = new Map<string, ReturnType<typeof setTimeout>>();
21
21
 
22
22
  const handleDismiss = async (id: string) => {
23
23
  // Clear any auto-dismiss timeout for this toast
@@ -1,5 +1,6 @@
1
1
  // useToast.ts
2
- import { ref, computed, nextTick, App, inject, provide } from "vue";
2
+ import { ref, computed, nextTick, inject, provide } from "vue";
3
+ import type { App } from "vue";
3
4
  import type { ToastOptions, ToastInstance } from "./types";
4
5
 
5
6
  const TOAST_INJECTION_KEY = Symbol("toast");
@@ -1,5 +1,5 @@
1
1
  // directives/tooltip.ts
2
- import { Directive, DirectiveBinding } from "vue";
2
+ import type { Directive, DirectiveBinding } from "vue";
3
3
  import { useTooltip } from "./useTooltip";
4
4
  import type { TooltipConfig } from "./types";
5
5
 
@@ -1,5 +1,5 @@
1
1
  import { reactive } from "vue";
2
- import { TooltipConfig, TooltipState } from "./types";
2
+ import type { TooltipConfig, TooltipState } from "./types";
3
3
 
4
4
  const tooltipState = reactive<TooltipState>({
5
5
  isVisible: false,
@@ -9,7 +9,8 @@ import {
9
9
  watch,
10
10
  } from "vue";
11
11
  import { useTheme } from "../../../theme";
12
- import { TagItem, generateTagStyle } from "./types";
12
+ import { generateTagStyle } from "./types";
13
+ import type { TagItem } from "./types";
13
14
  import { IconButton } from "@umbra.ui/core";
14
15
  import { gsap } from "gsap";
15
16
  import TagPicker from "./TagPicker.vue";
@@ -6,7 +6,7 @@
6
6
  import { ref, computed } from "vue";
7
7
  import { gsap } from "gsap";
8
8
  import ColorPicker from "../../pickers/ColorPicker/ColorPicker.vue";
9
- import { Color } from "../../pickers/ColorPicker/colors";
9
+ import type { Color } from "../../pickers/ColorPicker/colors";
10
10
  import { CheckIcon } from "@umbra.ui/icons";
11
11
  const props = defineProps({
12
12
  containerID: {
@@ -28,7 +28,7 @@ const emits = defineEmits(["onCreate"]);
28
28
  const input = ref(null);
29
29
  const confirm = ref(null);
30
30
  const title = ref<string>("");
31
- const color = ref<Color>(null);
31
+ const color = ref<Color | null>(null);
32
32
  const currentHex = () => {
33
33
  return color.value?.hex ?? props.initialColor.hex;
34
34
  };
@@ -75,7 +75,7 @@ const onConfirm = () => {
75
75
  reset();
76
76
  };
77
77
  const onCancel = () => {
78
- title.value = originalTitle.value;
78
+ title.value = originalTitle.value ?? "";
79
79
  gsap.to(confirm.value, { duration: 0.3, opacity: 0, scale: 0.5 });
80
80
  };
81
81
 
@@ -99,10 +99,10 @@ const reset = () => {
99
99
  <div :class="$style.container">
100
100
  <div :class="$style.content">
101
101
  <ColorPicker
102
- :containerID="$props.containerID"
102
+ :color="color ?? initialColor"
103
103
  :pickerOffsetX="-8"
104
- @onColorSelect="onColorSelection"
105
- :buttonStyle="{ backgroundColor: currentHex() }"
104
+ :preventPopup="false"
105
+ @update:color="onColorSelection"
106
106
  />
107
107
  <input
108
108
  :class="[$style.field, 'body']"
@@ -1,6 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import { computed, ref, watch, nextTick } from "vue";
3
- import { TagItem, generateTagStyle } from "./types";
3
+ import { generateTagStyle } from "./types";
4
+ import type { TagItem } from "./types";
4
5
  import { ArrowTurnLeftIcon } from "@umbra.ui/icons";
5
6
  import "./theme.css";
6
7
 
@@ -42,7 +43,6 @@ const getTagStyle = (tag: TagItem) => {
42
43
  }
43
44
  // Default style if none provided
44
45
  return generateTagStyle({
45
- variant: "default",
46
46
  colorScheme: "#6b7280",
47
47
  size: "md",
48
48
  });
@@ -1,6 +1,5 @@
1
1
  import tinycolor from "tinycolor2";
2
2
  import * as colors from "@umbra.ui/colors";
3
- import { ThemeObject } from "../../../index";
4
3
  import { getThemeConfig } from "../../../theme";
5
4
 
6
5
  // Core interfaces
@@ -460,7 +460,7 @@ const searchAPI = async (query: string) => {
460
460
  };
461
461
 
462
462
  // Debounced search
463
- let searchTimeout: NodeJS.Timeout;
463
+ let searchTimeout: ReturnType<typeof setTimeout>;
464
464
  watch(searchQuery, (newQuery) => {
465
465
  clearTimeout(searchTimeout);
466
466
  searchTimeout = setTimeout(() => {
@@ -1,6 +1,6 @@
1
1
  <!-- SearchResults.vue -->
2
2
  <script setup lang="ts">
3
- import { SearchResult } from "./types";
3
+ import type { SearchResult } from "./types";
4
4
  import { CircleAnim32GlyphIcon, ChevronDownIcon } from "@umbra.ui/icons";
5
5
  import { computed, ref, watch } from "vue";
6
6
  import "./theme.css";
@@ -14,7 +14,7 @@ import {
14
14
  } from "vue";
15
15
  import { useAdaptiveLayoutState } from "./useAdaptiveLayout";
16
16
  import { useResponsiveContainer } from "./useContainerMonitor";
17
- import { View, InternalView, ViewLayout } from "./types";
17
+ import type { View, InternalView, ViewLayout } from "./types";
18
18
  import { useViewAnimation } from "./useViewAnimation";
19
19
  import { useBreakpoints } from "./useBreakpoints";
20
20
  import {
@@ -1,4 +1,5 @@
1
- import { Component, markRaw } from "vue";
1
+ import { markRaw } from "vue";
2
+ import type { Component } from "vue";
2
3
 
3
4
  export interface View {
4
5
  id: string;
@@ -1,5 +1,5 @@
1
- import { Ref } from "vue";
2
- import { InternalView } from "./types";
1
+ import type { Ref } from "vue";
2
+ import type { InternalView } from "./types";
3
3
 
4
4
  export const useBreakpoints = (views: Ref<InternalView[]>) => {
5
5
  const setupForBreakpoint = (
@@ -1,7 +1,7 @@
1
1
  import { nextTick, ref, type Ref } from "vue";
2
2
  import { Flip } from "gsap/Flip";
3
3
  import gsap from "gsap";
4
- import { InternalView } from "./types";
4
+ import type { InternalView } from "./types";
5
5
 
6
6
  gsap.registerPlugin(Flip);
7
7
 
@@ -4,7 +4,7 @@ import { Flip } from "gsap/Flip";
4
4
  import { ref, onMounted, onUnmounted, watch, toRef } from "vue";
5
5
  import { useNavigationStack } from "./useNavigationStack";
6
6
  import "../theme.css";
7
- import { Pane } from "../types";
7
+ import type { Pane } from "../types";
8
8
 
9
9
  gsap.registerPlugin(Flip);
10
10
 
@@ -1,7 +1,8 @@
1
- import { ref, Ref, computed, watch } from "vue";
1
+ import { ref, computed, watch } from "vue";
2
+ import type { Ref } from "vue";
3
+ import type { Pane } from "../types";
2
4
  import { gsap } from "gsap";
3
5
  import { Flip } from "gsap/Flip";
4
- import { Pane } from "../types";
5
6
 
6
7
  gsap.registerPlugin(Flip);
7
8
 
@@ -1,4 +1,5 @@
1
- import { ref, Ref, computed } from "vue";
1
+ import { ref, computed } from "vue";
2
+ import type { Ref } from "vue";
2
3
  import { gsap } from "gsap";
3
4
  import { Flip } from "gsap/Flip";
4
5
 
@@ -5,7 +5,7 @@ import { Flip } from "gsap/Flip";
5
5
  import { ref, onMounted } from "vue";
6
6
  import { useSplitViewController } from "./useSplitViewController";
7
7
  import "../theme.css";
8
- import { Pane } from "../types";
8
+ import type { Pane } from "../types";
9
9
 
10
10
  gsap.registerPlugin(Flip);
11
11
 
@@ -1,8 +1,9 @@
1
1
  //useSplitViewController.ts
2
- import { ref, Ref, computed, unref, watch } from "vue";
2
+ import { ref, computed, unref, watch } from "vue";
3
+ import type { Ref } from "vue";
4
+ import type { Pane } from "../types";
3
5
  import { gsap } from "gsap";
4
6
  import { Flip } from "gsap/Flip";
5
- import { Pane } from "../types";
6
7
 
7
8
  gsap.registerPlugin(Flip);
8
9
 
@@ -1,6 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import { ref, watch, onBeforeUnmount, nextTick, computed } from "vue";
3
- import { Color, colors, colorPickerColors } from "./colors";
3
+ import { colors, colorPickerColors } from "./colors";
4
+ import type { Color } from "./colors";
4
5
  import {
5
6
  offset,
6
7
  flip,
@@ -257,7 +257,7 @@ const scrollview = ref<HTMLElement | null>(null);
257
257
  const fetchInProgress = ref<boolean>(false);
258
258
  const allowScroll = ref<boolean>(false);
259
259
  const isScrolling = ref<boolean>(false);
260
- let scrollTimeout: NodeJS.Timeout | undefined;
260
+ let scrollTimeout: ReturnType<typeof setTimeout> | undefined;
261
261
  const handleScroll = () => {
262
262
  // Set isScrolling to true when scrolling starts
263
263
  if (allowScroll.value) {