@marianmeres/stuic 3.0.0 → 3.0.2

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 (156) hide show
  1. package/dist/actions/index.d.ts +1 -0
  2. package/dist/actions/index.js +1 -0
  3. package/dist/actions/typeahead.svelte.d.ts +53 -0
  4. package/dist/actions/typeahead.svelte.js +328 -0
  5. package/dist/base.css +17 -0
  6. package/dist/components/AlertConfirmPrompt/AlertConfirmPrompt.svelte +4 -3
  7. package/dist/components/AlertConfirmPrompt/AlertConfirmPrompt.svelte.d.ts +4 -3
  8. package/dist/components/AlertConfirmPrompt/Current.svelte +1 -2
  9. package/dist/components/AlertConfirmPrompt/Current.svelte.d.ts +0 -1
  10. package/dist/components/AlertConfirmPrompt/index.css +47 -43
  11. package/dist/components/AssetsPreview/AssetsPreview.svelte +0 -1
  12. package/dist/components/AssetsPreview/AssetsPreview.svelte.d.ts +0 -1
  13. package/dist/components/AssetsPreview/index.css +31 -29
  14. package/dist/components/Avatar/Avatar.svelte +0 -1
  15. package/dist/components/Avatar/Avatar.svelte.d.ts +0 -1
  16. package/dist/components/Avatar/index.css +87 -85
  17. package/dist/components/Backdrop/Backdrop.svelte +0 -1
  18. package/dist/components/Backdrop/Backdrop.svelte.d.ts +0 -1
  19. package/dist/components/Backdrop/index.css +15 -13
  20. package/dist/components/Button/Button.svelte +0 -1
  21. package/dist/components/Button/Button.svelte.d.ts +0 -1
  22. package/dist/components/Button/index.css +431 -429
  23. package/dist/components/ButtonGroupRadio/ButtonGroupRadio.svelte +0 -1
  24. package/dist/components/ButtonGroupRadio/ButtonGroupRadio.svelte.d.ts +0 -1
  25. package/dist/components/ButtonGroupRadio/index.css +123 -117
  26. package/dist/components/Collapsible/index.css +17 -15
  27. package/dist/components/CommandMenu/CommandMenu.svelte +7 -4
  28. package/dist/components/CommandMenu/CommandMenu.svelte.d.ts +0 -1
  29. package/dist/components/CommandMenu/index.css +27 -25
  30. package/dist/components/DismissibleMessage/DismissibleMessage.svelte +0 -2
  31. package/dist/components/DismissibleMessage/DismissibleMessage.svelte.d.ts +0 -1
  32. package/dist/components/DismissibleMessage/index.css +116 -110
  33. package/dist/components/DropdownMenu/DropdownMenu.svelte +317 -74
  34. package/dist/components/DropdownMenu/DropdownMenu.svelte.d.ts +19 -1
  35. package/dist/components/DropdownMenu/index.css +236 -170
  36. package/dist/components/DropdownMenu/index.d.ts +1 -1
  37. package/dist/components/HoverExpandableWidth/HoverExpandableWidth.svelte +3 -1
  38. package/dist/components/HoverExpandableWidth/HoverExpandableWidth.svelte.d.ts +1 -0
  39. package/dist/components/Input/FieldInput.svelte +8 -0
  40. package/dist/components/Input/FieldInput.svelte.d.ts +2 -0
  41. package/dist/components/Input/FieldOptions.svelte +1 -1
  42. package/dist/components/Input/index.css +411 -398
  43. package/dist/components/KbdShortcut/KbdShortcut.svelte +4 -12
  44. package/dist/components/KbdShortcut/README.md +34 -0
  45. package/dist/components/KbdShortcut/index.css +55 -0
  46. package/dist/components/ListItemButton/ListItemButton.svelte +0 -1
  47. package/dist/components/ListItemButton/ListItemButton.svelte.d.ts +0 -1
  48. package/dist/components/ListItemButton/index.css +118 -116
  49. package/dist/components/Modal/Modal.svelte +0 -1
  50. package/dist/components/Modal/Modal.svelte.d.ts +0 -1
  51. package/dist/components/Modal/index.css +18 -16
  52. package/dist/components/ModalDialog/index.css +29 -27
  53. package/dist/components/Nav/Nav.svelte +732 -0
  54. package/dist/components/Nav/Nav.svelte.d.ts +110 -0
  55. package/dist/components/Nav/README.md +334 -0
  56. package/dist/components/Nav/index.css +318 -0
  57. package/dist/components/Nav/index.d.ts +1 -0
  58. package/dist/components/Nav/index.js +1 -0
  59. package/dist/components/Notifications/Notifications.svelte +2 -3
  60. package/dist/components/Notifications/Notifications.svelte.d.ts +0 -1
  61. package/dist/components/Notifications/index.css +158 -158
  62. package/dist/components/Notifications/notifications-stack.svelte.d.ts +4 -0
  63. package/dist/components/Notifications/notifications-stack.svelte.js +8 -0
  64. package/dist/components/Progress/Progress.svelte +4 -2
  65. package/dist/components/Progress/Progress.svelte.d.ts +1 -0
  66. package/dist/components/Progress/README.md +86 -15
  67. package/dist/components/Progress/_internal/Bar.svelte +4 -15
  68. package/dist/components/Progress/_internal/Bar.svelte.d.ts +1 -1
  69. package/dist/components/Progress/_internal/Circle.svelte +30 -2
  70. package/dist/components/Progress/_internal/Circle.svelte.d.ts +1 -0
  71. package/dist/components/Progress/index.css +47 -1
  72. package/dist/components/Skeleton/README.md +152 -0
  73. package/dist/components/Skeleton/Skeleton.svelte +6 -7
  74. package/dist/components/Skeleton/Skeleton.svelte.d.ts +0 -1
  75. package/dist/components/Skeleton/index.css +73 -43
  76. package/dist/components/Spinner/README.md +149 -37
  77. package/dist/components/Spinner/Spinner.svelte +14 -38
  78. package/dist/components/Spinner/Spinner.svelte.d.ts +2 -1
  79. package/dist/components/Spinner/SpinnerCircle.svelte +6 -34
  80. package/dist/components/Spinner/SpinnerCircle.svelte.d.ts +1 -0
  81. package/dist/components/Spinner/SpinnerCircleOscillate.svelte +10 -5
  82. package/dist/components/Spinner/SpinnerUnicode.svelte +3 -1
  83. package/dist/components/Spinner/SpinnerUnicode.svelte.d.ts +1 -0
  84. package/dist/components/Spinner/index.css +104 -0
  85. package/dist/components/Switch/README.md +34 -18
  86. package/dist/components/Switch/Switch.svelte +24 -46
  87. package/dist/components/Switch/Switch.svelte.d.ts +4 -2
  88. package/dist/components/Switch/index.css +120 -2
  89. package/dist/components/Switch/index.d.ts +1 -2
  90. package/dist/components/Switch/index.js +1 -2
  91. package/dist/components/TabbedMenu/README.md +28 -17
  92. package/dist/components/TabbedMenu/TabbedMenu.svelte +5 -46
  93. package/dist/components/TabbedMenu/TabbedMenu.svelte.d.ts +0 -1
  94. package/dist/components/TabbedMenu/index.css +85 -3
  95. package/dist/components/ThemePreview/ThemePreview.svelte +86 -33
  96. package/dist/components/ThemePreview/ThemePreview.svelte.d.ts +3 -1
  97. package/dist/components/ThemePreview/index.css +24 -8
  98. package/dist/components/TwCheck/README.md +32 -13
  99. package/dist/components/TwCheck/TwCheck.svelte +11 -9
  100. package/dist/components/TwCheck/TwCheck.svelte.d.ts +0 -1
  101. package/dist/components/TwCheck/index.css +14 -0
  102. package/dist/components/TypeaheadInput/TypeaheadInput.svelte +19 -187
  103. package/dist/components/TypeaheadInput/TypeaheadInput.svelte.d.ts +4 -2
  104. package/dist/icons/index.d.ts +1 -0
  105. package/dist/icons/index.js +1 -0
  106. package/dist/index.css +44 -39
  107. package/dist/index.d.ts +1 -0
  108. package/dist/index.js +1 -0
  109. package/dist/themes/blue-orange.css +246 -156
  110. package/dist/themes/blue-orange.js +24 -0
  111. package/dist/themes/cyan-red.css +246 -156
  112. package/dist/themes/cyan-red.js +24 -0
  113. package/dist/themes/cyan-slate.css +246 -156
  114. package/dist/themes/cyan-slate.js +25 -1
  115. package/dist/themes/emerald-pink.css +246 -156
  116. package/dist/themes/emerald-pink.js +25 -1
  117. package/dist/themes/fuchsia-emerald.css +246 -156
  118. package/dist/themes/fuchsia-emerald.js +25 -1
  119. package/dist/themes/gray.css +246 -156
  120. package/dist/themes/gray.js +24 -0
  121. package/dist/themes/indigo-amber.css +246 -156
  122. package/dist/themes/indigo-amber.js +26 -2
  123. package/dist/themes/neutral.css +246 -156
  124. package/dist/themes/neutral.js +24 -0
  125. package/dist/themes/pink-emerald.css +246 -156
  126. package/dist/themes/pink-emerald.js +25 -1
  127. package/dist/themes/pink-teal.css +253 -0
  128. package/dist/themes/pink-teal.d.ts +6 -0
  129. package/dist/themes/pink-teal.js +175 -0
  130. package/dist/themes/purple-yellow.css +246 -156
  131. package/dist/themes/purple-yellow.js +24 -0
  132. package/dist/themes/rainbow.css +246 -156
  133. package/dist/themes/rainbow.js +25 -1
  134. package/dist/themes/red-blue.css +246 -156
  135. package/dist/themes/red-blue.js +24 -0
  136. package/dist/themes/red-cyan.css +246 -156
  137. package/dist/themes/red-cyan.js +24 -0
  138. package/dist/themes/red-sky.css +253 -0
  139. package/dist/themes/red-sky.d.ts +6 -0
  140. package/dist/themes/red-sky.js +175 -0
  141. package/dist/themes/rose-teal.css +246 -156
  142. package/dist/themes/rose-teal.js +24 -0
  143. package/dist/themes/sky-amber.css +246 -156
  144. package/dist/themes/sky-amber.js +26 -2
  145. package/dist/themes/slate-cyan.css +246 -156
  146. package/dist/themes/slate-cyan.js +25 -1
  147. package/dist/themes/teal-rose.css +246 -156
  148. package/dist/themes/teal-rose.js +24 -0
  149. package/dist/themes/violet-lime.css +246 -156
  150. package/dist/themes/violet-lime.js +27 -3
  151. package/dist/utils/design-tokens.d.ts +1 -1
  152. package/dist/utils/design-tokens.js +44 -3
  153. package/dist/utils/storage-abstraction.js +1 -1
  154. package/package.json +11 -28
  155. package/dist/components/Switch/SwitchButton.svelte +0 -134
  156. package/dist/components/Switch/SwitchButton.svelte.d.ts +0 -21
@@ -39,7 +39,6 @@
39
39
  </script>
40
40
 
41
41
  <script lang="ts">
42
- import "./index.css";
43
42
  import { twMerge } from "../../utils/tw-merge.js";
44
43
  import { generateAvatarColors } from "../../utils/avatar-colors.js";
45
44
  import { iconUser as defaultIconUser } from "../../icons/index.js";
@@ -37,7 +37,6 @@ export interface Props {
37
37
  /** Bindable element reference */
38
38
  el?: HTMLDivElement | HTMLButtonElement;
39
39
  }
40
- import "./index.css";
41
40
  declare const Avatar: import("svelte").Component<Props, {}, "el">;
42
41
  type Avatar = ReturnType<typeof Avatar>;
43
42
  export default Avatar;
@@ -40,89 +40,91 @@
40
40
  --stuic-avatar-font-size-2xl: var(--text-2xl);
41
41
  }
42
42
 
43
- /* ============================================================================
44
- BASE STYLES
45
- ============================================================================ */
46
-
47
- .stuic-avatar {
48
- /* Layout */
49
- display: inline-flex;
50
- align-items: center;
51
- justify-content: center;
52
- flex-shrink: 0;
53
- overflow: hidden;
54
-
55
- /* Typography */
56
- font-weight: var(--stuic-avatar-font-weight);
57
-
58
- /* Box model */
59
- border-radius: var(--stuic-avatar-radius);
60
-
61
- /* Colors (can be overridden by autoColor inline styles) */
62
- background: var(--stuic-avatar-bg);
63
- color: var(--stuic-avatar-fg);
64
-
65
- /* Transition for interactive mode */
66
- transition:
67
- background var(--stuic-avatar-transition),
68
- color var(--stuic-avatar-transition),
69
- opacity var(--stuic-avatar-transition);
70
- }
71
-
72
- /* ============================================================================
73
- SIZE VARIANTS
74
- ============================================================================ */
75
-
76
- .stuic-avatar[data-size="sm"] {
77
- width: var(--stuic-avatar-size-sm);
78
- height: var(--stuic-avatar-size-sm);
79
- font-size: var(--stuic-avatar-font-size-sm);
80
- }
81
-
82
- .stuic-avatar[data-size="md"] {
83
- width: var(--stuic-avatar-size-md);
84
- height: var(--stuic-avatar-size-md);
85
- font-size: var(--stuic-avatar-font-size-md);
86
- }
87
-
88
- .stuic-avatar[data-size="lg"] {
89
- width: var(--stuic-avatar-size-lg);
90
- height: var(--stuic-avatar-size-lg);
91
- font-size: var(--stuic-avatar-font-size-lg);
92
- }
93
-
94
- .stuic-avatar[data-size="xl"] {
95
- width: var(--stuic-avatar-size-xl);
96
- height: var(--stuic-avatar-size-xl);
97
- font-size: var(--stuic-avatar-font-size-xl);
98
- }
99
-
100
- .stuic-avatar[data-size="2xl"] {
101
- width: var(--stuic-avatar-size-2xl);
102
- height: var(--stuic-avatar-size-2xl);
103
- font-size: var(--stuic-avatar-font-size-2xl);
104
- }
105
-
106
- /* ============================================================================
107
- INTERACTIVE MODE (button)
108
- ============================================================================ */
109
-
110
- .stuic-avatar[data-interactive] {
111
- cursor: pointer;
112
- user-select: none;
113
- -webkit-tap-highlight-color: transparent;
114
- }
115
-
116
- .stuic-avatar[data-interactive]:hover {
117
- opacity: 0.85;
118
- }
119
-
120
- .stuic-avatar[data-interactive]:active {
121
- opacity: 0.75;
122
- }
123
-
124
- /* Focus styles */
125
- .stuic-avatar[data-interactive]:focus-visible {
126
- outline: var(--stuic-avatar-ring-width) solid var(--stuic-avatar-ring-color);
127
- outline-offset: var(--stuic-avatar-ring-offset);
43
+ @layer components {
44
+ /* ============================================================================
45
+ BASE STYLES
46
+ ============================================================================ */
47
+
48
+ .stuic-avatar {
49
+ /* Layout */
50
+ display: inline-flex;
51
+ align-items: center;
52
+ justify-content: center;
53
+ flex-shrink: 0;
54
+ overflow: hidden;
55
+
56
+ /* Typography */
57
+ font-weight: var(--stuic-avatar-font-weight);
58
+
59
+ /* Box model */
60
+ border-radius: var(--stuic-avatar-radius);
61
+
62
+ /* Colors (can be overridden by autoColor inline styles) */
63
+ background: var(--stuic-avatar-bg);
64
+ color: var(--stuic-avatar-fg);
65
+
66
+ /* Transition for interactive mode */
67
+ transition:
68
+ background var(--stuic-avatar-transition),
69
+ color var(--stuic-avatar-transition),
70
+ opacity var(--stuic-avatar-transition);
71
+ }
72
+
73
+ /* ============================================================================
74
+ SIZE VARIANTS
75
+ ============================================================================ */
76
+
77
+ .stuic-avatar[data-size="sm"] {
78
+ width: var(--stuic-avatar-size-sm);
79
+ height: var(--stuic-avatar-size-sm);
80
+ font-size: var(--stuic-avatar-font-size-sm);
81
+ }
82
+
83
+ .stuic-avatar[data-size="md"] {
84
+ width: var(--stuic-avatar-size-md);
85
+ height: var(--stuic-avatar-size-md);
86
+ font-size: var(--stuic-avatar-font-size-md);
87
+ }
88
+
89
+ .stuic-avatar[data-size="lg"] {
90
+ width: var(--stuic-avatar-size-lg);
91
+ height: var(--stuic-avatar-size-lg);
92
+ font-size: var(--stuic-avatar-font-size-lg);
93
+ }
94
+
95
+ .stuic-avatar[data-size="xl"] {
96
+ width: var(--stuic-avatar-size-xl);
97
+ height: var(--stuic-avatar-size-xl);
98
+ font-size: var(--stuic-avatar-font-size-xl);
99
+ }
100
+
101
+ .stuic-avatar[data-size="2xl"] {
102
+ width: var(--stuic-avatar-size-2xl);
103
+ height: var(--stuic-avatar-size-2xl);
104
+ font-size: var(--stuic-avatar-font-size-2xl);
105
+ }
106
+
107
+ /* ============================================================================
108
+ INTERACTIVE MODE (button)
109
+ ============================================================================ */
110
+
111
+ .stuic-avatar[data-interactive] {
112
+ cursor: pointer;
113
+ user-select: none;
114
+ -webkit-tap-highlight-color: transparent;
115
+ }
116
+
117
+ .stuic-avatar[data-interactive]:hover {
118
+ opacity: 0.85;
119
+ }
120
+
121
+ .stuic-avatar[data-interactive]:active {
122
+ opacity: 0.75;
123
+ }
124
+
125
+ /* Focus styles */
126
+ .stuic-avatar[data-interactive]:focus-visible {
127
+ outline: var(--stuic-avatar-ring-width) solid var(--stuic-avatar-ring-color);
128
+ outline-offset: var(--stuic-avatar-ring-offset);
129
+ }
128
130
  }
@@ -26,7 +26,6 @@
26
26
  </script>
27
27
 
28
28
  <script lang="ts">
29
- import "./index.css";
30
29
  import { twMerge } from "../../utils/tw-merge.js";
31
30
 
32
31
  const clog = createClog("Backdrop", { color: "auto" });
@@ -13,7 +13,6 @@ export interface Props extends Record<string, any> {
13
13
  visible?: boolean;
14
14
  noScrollLock?: boolean;
15
15
  }
16
- import "./index.css";
17
16
  declare const Backdrop: import("svelte").Component<Props, {
18
17
  close: () => void;
19
18
  open: (openerOrEvent?: null | HTMLElement | MouseEvent) => void;
@@ -10,20 +10,22 @@
10
10
  --stuic-backdrop-z-index: 10;
11
11
  }
12
12
 
13
- /* ============================================================================
14
- BASE STYLES
15
- ============================================================================ */
13
+ @layer components {
14
+ /* ============================================================================
15
+ BASE STYLES
16
+ ============================================================================ */
16
17
 
17
- .stuic-backdrop {
18
- /* Layout */
19
- position: fixed;
20
- inset: 0;
21
- display: flex;
22
- height: 100dvh;
18
+ .stuic-backdrop {
19
+ /* Layout */
20
+ position: fixed;
21
+ inset: 0;
22
+ display: flex;
23
+ height: 100dvh;
23
24
 
24
- /* Stacking */
25
- z-index: var(--stuic-backdrop-z-index);
25
+ /* Stacking */
26
+ z-index: var(--stuic-backdrop-z-index);
26
27
 
27
- /* Colors */
28
- background: var(--stuic-backdrop-bg);
28
+ /* Colors */
29
+ background: var(--stuic-backdrop-bg);
30
+ }
29
31
  }
@@ -47,7 +47,6 @@
47
47
  </script>
48
48
 
49
49
  <script lang="ts">
50
- import "./index.css";
51
50
  import { twMerge } from "../../utils/tw-merge.js";
52
51
  import { tooltip, type TooltipConfig } from "../../actions/tooltip/tooltip.svelte.js";
53
52
  import { X, type XProps } from "../X/index.js";
@@ -43,7 +43,6 @@ export interface Props extends Omit<HTMLButtonAttributes, "children"> {
43
43
  /** Show only spinner when spinner? */
44
44
  spinnerOnly?: boolean;
45
45
  }
46
- import "./index.css";
47
46
  import { type TooltipConfig } from "../../actions/tooltip/tooltip.svelte.js";
48
47
  import { type XProps } from "../X/index.js";
49
48
  import { type THC } from "../Thc/Thc.svelte";