@marianmeres/stuic 1.46.0 → 1.47.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,70 @@
1
+ <script>import { slide } from "svelte/transition";
2
+ import { twMerge } from "tailwind-merge";
3
+ import { Thc, X } from "../../index.js";
4
+ let _class = "";
5
+ export { _class as class };
6
+ export let classContent = "";
7
+ export let classDismiss = "";
8
+ export let duration = 150;
9
+ export let message;
10
+ export let onDismiss = () => message = null;
11
+ export let theme = "primary";
12
+ const preset = {
13
+ primary: "bg-stuic-primary/10 text-stuic-primary dark:bg-stuic-primary dark:text-white/90",
14
+ secondary: "bg-stuic-secondary/10 text-stuic-secondary dark:bg-stuic-secondary dark:text-white/90",
15
+ slate: "bg-slate-100 text-slate-800 dark:bg-slate-700 dark:text-slate-100",
16
+ gray: "bg-gray-100 text-gray-800 dark:bg-gray-700 dark:text-gray-100",
17
+ zinc: "bg-zinc-100 text-zinc-800 dark:bg-zinc-700 dark:text-zinc-100",
18
+ neutral: "bg-neutral-100 text-neutral-800 dark:bg-neutral-700 dark:text-neutral-100",
19
+ stone: "bg-stone-100 text-stone-800 dark:bg-stone-700 dark:text-stone-100",
20
+ red: "bg-red-100 text-red-800 dark:bg-red-800 dark:text-red-100",
21
+ orange: "bg-orange-100 text-orange-800 dark:bg-orange-800 dark:text-orange-100",
22
+ amber: "bg-amber-100 text-amber-800 dark:bg-amber-800 dark:text-amber-100",
23
+ yellow: "bg-yellow-100 text-yellow-800 dark:bg-yellow-800 dark:text-yellow-50",
24
+ lime: "bg-lime-100 text-lime-800 dark:bg-lime-800 dark:text-lime-100",
25
+ green: "bg-green-100 text-green-800 dark:bg-green-800 dark:text-green-100",
26
+ emerald: "bg-emerald-100 text-emerald-800 dark:bg-emerald-800 dark:text-emerald-50",
27
+ teal: "bg-teal-100 text-teal-800 dark:bg-teal-800 dark:text-teal-50",
28
+ cyan: "bg-cyan-100 text-cyan-800 dark:bg-cyan-800 dark:text-cyan-50",
29
+ sky: "bg-sky-100 text-sky-800 dark:bg-sky-800 dark:text-sky-50",
30
+ blue: "bg-blue-100 text-blue-800 dark:bg-blue-800 dark:text-blue-100",
31
+ indigo: "bg-indigo-100 text-indigo-800 dark:bg-indigo-800 dark:text-indigo-100",
32
+ violet: "bg-violet-100 text-violet-800 dark:bg-violet-800 dark:text-violet-100",
33
+ purple: "bg-purple-100 text-purple-800 dark:bg-purple-800 dark:text-purple-100",
34
+ fuchsia: "bg-fuchsia-100 text-fuchsia-800 dark:bg-fuchsia-800 dark:text-fuchsia-100",
35
+ pink: "bg-pink-100 text-pink-800 dark:bg-pink-800 dark:text-pink-100",
36
+ rose: "bg-rose-100 text-rose-800 dark:bg-rose-800 dark:text-rose-100"
37
+ };
38
+ </script>
39
+
40
+ {#if message}
41
+ <div
42
+ class={twMerge(`
43
+ mb-4 rounded flex
44
+ text-sm
45
+ ${preset[theme] ?? preset.primary}
46
+ ${_class}
47
+ `)}
48
+ transition:slide={{ duration }}
49
+ >
50
+ <div class={twMerge(`flex-1 px-4 py-3 ${classContent}`)}>
51
+ <Thc thc={message} />
52
+ </div>
53
+
54
+ {#if typeof onDismiss === 'function'}
55
+ <button
56
+ class={twMerge(`
57
+ hover:bg-black/5 dark:hover:bg-black/20
58
+ rounded rounded-l-none
59
+ px-3
60
+ flex items-center justify-center
61
+ group
62
+ ${classDismiss}
63
+ `)}
64
+ on:click={() => onDismiss()}
65
+ >
66
+ <X class="opacity-75 group-hover:opacity-100" strokeWidth={1.5} />
67
+ </button>
68
+ {/if}
69
+ </div>
70
+ {/if}
@@ -0,0 +1,23 @@
1
+ import { SvelteComponent } from "svelte";
2
+ import { type THC, type TW_COLORS } from '../../index.js';
3
+ declare const __propDef: {
4
+ props: {
5
+ class?: string | undefined;
6
+ classContent?: string | undefined;
7
+ classDismiss?: string | undefined;
8
+ duration?: number | undefined;
9
+ message: THC | null;
10
+ onDismiss?: (() => void) | null | undefined;
11
+ theme?: "primary" | TW_COLORS | "secondary" | undefined;
12
+ };
13
+ events: {
14
+ [evt: string]: CustomEvent<any>;
15
+ };
16
+ slots: {};
17
+ };
18
+ export type DismissibleMessageProps = typeof __propDef.props;
19
+ export type DismissibleMessageEvents = typeof __propDef.events;
20
+ export type DismissibleMessageSlots = typeof __propDef.slots;
21
+ export default class DismissibleMessage extends SvelteComponent<DismissibleMessageProps, DismissibleMessageEvents, DismissibleMessageSlots> {
22
+ }
23
+ export {};
package/dist/index.d.ts CHANGED
@@ -6,6 +6,7 @@ export { default as Button, ButtonConfig } from './components/Button/Button.svel
6
6
  export { default as SystemAwareColorScheme } from './components/ColorScheme/SystemAwareColorScheme.svelte';
7
7
  export { default as LocalColorScheme } from './components/ColorScheme/LocalColorScheme.svelte';
8
8
  export { ColorScheme } from './components/ColorScheme/color-scheme.js';
9
+ export { default as DismissibleMessage } from './components/DismissibleMessage/DismissibleMessage.svelte';
9
10
  export { default as Drawer, createDrawerStore } from './components/Drawer/Drawer.svelte';
10
11
  export { default as HoverExpandableWidth } from './components/HoverExpandableWidth/HoverExpandableWidth.svelte';
11
12
  export { default as Field } from './components/Input/Field.svelte';
@@ -17,7 +18,7 @@ export { createNotificationsStore, NOTIFICATION_EVENT, type NotiticationsCreateS
17
18
  export { default as Notifications, NotificationsConfig, } from './components/Notifications/Notifications.svelte';
18
19
  export { default as Popover } from './components/Popover/Popover.svelte';
19
20
  export { default as Switch, SwitchConfig } from './components/Switch/Switch.svelte';
20
- export { default as Thc } from './components/Thc/Thc.svelte';
21
+ export { default as Thc, type THC } from './components/Thc/Thc.svelte';
21
22
  export { default as X } from './components/X/X.svelte';
22
23
  export { focusTrap } from './actions/focus-trap.js';
23
24
  export { onOutside } from './actions/on-outside.js';
@@ -29,3 +30,4 @@ export { calculateAlignment } from './utils/calculate-alignment.js';
29
30
  export { DevicePointer } from './utils/device-pointer.js';
30
31
  export { getId } from './utils/get-id.js';
31
32
  export { windowSize, breakpoint } from './utils/window-size.js';
33
+ export type { TW_COLORS } from './utils/tw-types.js';
package/dist/index.js CHANGED
@@ -13,6 +13,8 @@ export { default as SystemAwareColorScheme } from './components/ColorScheme/Syst
13
13
  export { default as LocalColorScheme } from './components/ColorScheme/LocalColorScheme.svelte';
14
14
  export { ColorScheme } from './components/ColorScheme/color-scheme.js';
15
15
  //
16
+ export { default as DismissibleMessage } from './components/DismissibleMessage/DismissibleMessage.svelte';
17
+ //
16
18
  export { default as Drawer, createDrawerStore } from './components/Drawer/Drawer.svelte';
17
19
  //
18
20
  export { default as HoverExpandableWidth } from './components/HoverExpandableWidth/HoverExpandableWidth.svelte';
@@ -0,0 +1 @@
1
+ export type TW_COLORS = 'slate' | 'gray' | 'zinc' | 'neutral' | 'stone' | 'red' | 'orange' | 'amber' | 'yellow' | 'lime' | 'green' | 'emerald' | 'teal' | 'cyan' | 'sky' | 'blue' | 'indigo' | 'violet' | 'purple' | 'fuchsia' | 'pink' | 'rose';
@@ -0,0 +1 @@
1
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@marianmeres/stuic",
3
- "version": "1.46.0",
3
+ "version": "1.47.0",
4
4
  "scripts": {
5
5
  "dev": "vite dev",
6
6
  "build": "vite build && npm run package && node ./scripts/date.js",