chore: move ui utils to utils/ui

This commit is contained in:
terraputix
2026-02-15 15:29:11 +01:00
parent c2e90f5919
commit af433c92ff
34 changed files with 42 additions and 40 deletions
+1 -1
View File
@@ -6,7 +6,7 @@
}, },
"aliases": { "aliases": {
"components": "$lib/components", "components": "$lib/components",
"utils": "$lib/utils", "utils": "$lib/utils/ui",
"ui": "$lib/components/ui", "ui": "$lib/components/ui",
"hooks": "$lib/hooks", "hooks": "$lib/hooks",
"lib": "$lib" "lib": "$lib"
@@ -1,5 +1,5 @@
<script lang="ts"> <script lang="ts">
import { type WithElementRef, cn } from '$lib/utils.js'; import { type WithElementRef, cn } from '$lib/utils/ui.js';
import type { HTMLAttributes } from 'svelte/elements'; import type { HTMLAttributes } from 'svelte/elements';
@@ -1,5 +1,5 @@
<script lang="ts"> <script lang="ts">
import { type WithElementRef, cn } from '$lib/utils.js'; import { type WithElementRef, cn } from '$lib/utils/ui.js';
import type { HTMLAttributes } from 'svelte/elements'; import type { HTMLAttributes } from 'svelte/elements';
+1 -1
View File
@@ -19,7 +19,7 @@
</script> </script>
<script lang="ts"> <script lang="ts">
import { type WithElementRef, cn } from '$lib/utils.js'; import { type WithElementRef, cn } from '$lib/utils/ui.js';
import type { HTMLAttributes } from 'svelte/elements'; import type { HTMLAttributes } from 'svelte/elements';
+1 -1
View File
@@ -1,7 +1,7 @@
<script lang="ts" module> <script lang="ts" module>
import { type VariantProps, tv } from 'tailwind-variants'; import { type VariantProps, tv } from 'tailwind-variants';
import { type WithElementRef, cn } from '$lib/utils.js'; import { type WithElementRef, cn } from '$lib/utils/ui.js';
import type { HTMLAnchorAttributes, HTMLButtonAttributes } from 'svelte/elements'; import type { HTMLAnchorAttributes, HTMLButtonAttributes } from 'svelte/elements';
@@ -1,5 +1,5 @@
<script lang="ts"> <script lang="ts">
import { type WithElementRef, cn } from '$lib/utils.js'; import { type WithElementRef, cn } from '$lib/utils/ui.js';
import type { HTMLAttributes } from 'svelte/elements'; import type { HTMLAttributes } from 'svelte/elements';
@@ -1,5 +1,5 @@
<script lang="ts"> <script lang="ts">
import { type WithElementRef, cn } from '$lib/utils.js'; import { type WithElementRef, cn } from '$lib/utils/ui.js';
import type { HTMLAttributes } from 'svelte/elements'; import type { HTMLAttributes } from 'svelte/elements';
@@ -1,5 +1,5 @@
<script lang="ts"> <script lang="ts">
import { type WithElementRef, cn } from '$lib/utils.js'; import { type WithElementRef, cn } from '$lib/utils/ui.js';
import type { HTMLAttributes } from 'svelte/elements'; import type { HTMLAttributes } from 'svelte/elements';
@@ -1,5 +1,5 @@
<script lang="ts"> <script lang="ts">
import { type WithElementRef, cn } from '$lib/utils.js'; import { type WithElementRef, cn } from '$lib/utils/ui.js';
import type { HTMLAttributes } from 'svelte/elements'; import type { HTMLAttributes } from 'svelte/elements';
@@ -1,5 +1,5 @@
<script lang="ts"> <script lang="ts">
import { type WithElementRef, cn } from '$lib/utils.js'; import { type WithElementRef, cn } from '$lib/utils/ui.js';
import type { HTMLAttributes } from 'svelte/elements'; import type { HTMLAttributes } from 'svelte/elements';
+1 -1
View File
@@ -1,5 +1,5 @@
<script lang="ts"> <script lang="ts">
import { type WithElementRef, cn } from '$lib/utils.js'; import { type WithElementRef, cn } from '$lib/utils/ui.js';
import type { HTMLAttributes } from 'svelte/elements'; import type { HTMLAttributes } from 'svelte/elements';
+1 -1
View File
@@ -1,5 +1,5 @@
<script lang="ts"> <script lang="ts">
import { type WithElementRef, cn } from '$lib/utils.js'; import { type WithElementRef, cn } from '$lib/utils/ui.js';
import type { HTMLAttributes } from 'svelte/elements'; import type { HTMLAttributes } from 'svelte/elements';
@@ -3,7 +3,7 @@
import MinusIcon from '@lucide/svelte/icons/minus'; import MinusIcon from '@lucide/svelte/icons/minus';
import { Checkbox as CheckboxPrimitive } from 'bits-ui'; import { Checkbox as CheckboxPrimitive } from 'bits-ui';
import { type WithoutChildrenOrChild, cn } from '$lib/utils.js'; import { type WithoutChildrenOrChild, cn } from '$lib/utils/ui.js';
let { let {
ref = $bindable(null), ref = $bindable(null),
@@ -2,7 +2,7 @@
import XIcon from '@lucide/svelte/icons/x'; import XIcon from '@lucide/svelte/icons/x';
import { Dialog as DialogPrimitive } from 'bits-ui'; import { Dialog as DialogPrimitive } from 'bits-ui';
import { type WithoutChildrenOrChild, cn } from '$lib/utils.js'; import { type WithoutChildrenOrChild, cn } from '$lib/utils/ui.js';
import DialogPortal from './dialog-portal.svelte'; import DialogPortal from './dialog-portal.svelte';
import * as Dialog from './index.js'; import * as Dialog from './index.js';
@@ -1,7 +1,7 @@
<script lang="ts"> <script lang="ts">
import { Dialog as DialogPrimitive } from 'bits-ui'; import { Dialog as DialogPrimitive } from 'bits-ui';
import { cn } from '$lib/utils.js'; import { cn } from '$lib/utils/ui.js';
let { let {
ref = $bindable(null), ref = $bindable(null),
@@ -1,5 +1,5 @@
<script lang="ts"> <script lang="ts">
import { type WithElementRef, cn } from '$lib/utils.js'; import { type WithElementRef, cn } from '$lib/utils/ui.js';
import type { HTMLAttributes } from 'svelte/elements'; import type { HTMLAttributes } from 'svelte/elements';
@@ -1,5 +1,5 @@
<script lang="ts"> <script lang="ts">
import { type WithElementRef, cn } from '$lib/utils.js'; import { type WithElementRef, cn } from '$lib/utils/ui.js';
import type { HTMLAttributes } from 'svelte/elements'; import type { HTMLAttributes } from 'svelte/elements';
@@ -1,7 +1,7 @@
<script lang="ts"> <script lang="ts">
import { Dialog as DialogPrimitive } from 'bits-ui'; import { Dialog as DialogPrimitive } from 'bits-ui';
import { cn } from '$lib/utils.js'; import { cn } from '$lib/utils/ui.js';
let { let {
ref = $bindable(null), ref = $bindable(null),
@@ -1,7 +1,7 @@
<script lang="ts"> <script lang="ts">
import { Dialog as DialogPrimitive } from 'bits-ui'; import { Dialog as DialogPrimitive } from 'bits-ui';
import { cn } from '$lib/utils.js'; import { cn } from '$lib/utils/ui.js';
let { let {
ref = $bindable(null), ref = $bindable(null),
+1 -1
View File
@@ -1,5 +1,5 @@
<script lang="ts"> <script lang="ts">
import { type WithElementRef, cn } from '$lib/utils.js'; import { type WithElementRef, cn } from '$lib/utils/ui.js';
import type { HTMLInputAttributes, HTMLInputTypeAttribute } from 'svelte/elements'; import type { HTMLInputAttributes, HTMLInputTypeAttribute } from 'svelte/elements';
+1 -1
View File
@@ -1,7 +1,7 @@
<script lang="ts"> <script lang="ts">
import { Label as LabelPrimitive } from 'bits-ui'; import { Label as LabelPrimitive } from 'bits-ui';
import { cn } from '$lib/utils.js'; import { cn } from '$lib/utils/ui.js';
let { let {
ref = $bindable(null), ref = $bindable(null),
@@ -1,13 +1,13 @@
<script lang="ts"> <script lang="ts">
import { Select as SelectPrimitive } from 'bits-ui'; import { Select as SelectPrimitive } from 'bits-ui';
import { type WithoutChild, cn } from '$lib/utils.js'; import { type WithoutChild, cn } from '$lib/utils/ui.js';
import SelectPortal from './select-portal.svelte'; import SelectPortal from './select-portal.svelte';
import SelectScrollDownButton from './select-scroll-down-button.svelte'; import SelectScrollDownButton from './select-scroll-down-button.svelte';
import SelectScrollUpButton from './select-scroll-up-button.svelte'; import SelectScrollUpButton from './select-scroll-up-button.svelte';
import type { WithoutChildrenOrChild } from '$lib/utils.js'; import type { WithoutChildrenOrChild } from '$lib/utils/ui.js';
import type { ComponentProps } from 'svelte'; import type { ComponentProps } from 'svelte';
let { let {
@@ -1,7 +1,7 @@
<script lang="ts"> <script lang="ts">
import { Select as SelectPrimitive } from 'bits-ui'; import { Select as SelectPrimitive } from 'bits-ui';
import { cn } from '$lib/utils.js'; import { cn } from '$lib/utils/ui.js';
import type { ComponentProps } from 'svelte'; import type { ComponentProps } from 'svelte';
@@ -2,7 +2,7 @@
import CheckIcon from '@lucide/svelte/icons/check'; import CheckIcon from '@lucide/svelte/icons/check';
import { Select as SelectPrimitive } from 'bits-ui'; import { Select as SelectPrimitive } from 'bits-ui';
import { type WithoutChild, cn } from '$lib/utils.js'; import { type WithoutChild, cn } from '$lib/utils/ui.js';
let { let {
ref = $bindable(null), ref = $bindable(null),
@@ -1,5 +1,5 @@
<script lang="ts"> <script lang="ts">
import { type WithElementRef, cn } from '$lib/utils.js'; import { type WithElementRef, cn } from '$lib/utils/ui.js';
import type { HTMLAttributes } from 'svelte/elements'; import type { HTMLAttributes } from 'svelte/elements';
@@ -2,7 +2,7 @@
import ChevronDownIcon from '@lucide/svelte/icons/chevron-down'; import ChevronDownIcon from '@lucide/svelte/icons/chevron-down';
import { Select as SelectPrimitive } from 'bits-ui'; import { Select as SelectPrimitive } from 'bits-ui';
import { type WithoutChildrenOrChild, cn } from '$lib/utils.js'; import { type WithoutChildrenOrChild, cn } from '$lib/utils/ui.js';
let { let {
ref = $bindable(null), ref = $bindable(null),
@@ -2,7 +2,7 @@
import ChevronUpIcon from '@lucide/svelte/icons/chevron-up'; import ChevronUpIcon from '@lucide/svelte/icons/chevron-up';
import { Select as SelectPrimitive } from 'bits-ui'; import { Select as SelectPrimitive } from 'bits-ui';
import { type WithoutChildrenOrChild, cn } from '$lib/utils.js'; import { type WithoutChildrenOrChild, cn } from '$lib/utils/ui.js';
let { let {
ref = $bindable(null), ref = $bindable(null),
@@ -1,5 +1,5 @@
<script lang="ts"> <script lang="ts">
import { cn } from '$lib/utils.js'; import { cn } from '$lib/utils/ui.js';
import { Separator } from '$lib/components/ui/separator/index.js'; import { Separator } from '$lib/components/ui/separator/index.js';
@@ -2,7 +2,7 @@
import ChevronDownIcon from '@lucide/svelte/icons/chevron-down'; import ChevronDownIcon from '@lucide/svelte/icons/chevron-down';
import { Select as SelectPrimitive } from 'bits-ui'; import { Select as SelectPrimitive } from 'bits-ui';
import { type WithoutChild, cn } from '$lib/utils.js'; import { type WithoutChild, cn } from '$lib/utils/ui.js';
let { let {
ref = $bindable(null), ref = $bindable(null),
@@ -1,7 +1,7 @@
<script lang="ts"> <script lang="ts">
import { Separator as SeparatorPrimitive } from 'bits-ui'; import { Separator as SeparatorPrimitive } from 'bits-ui';
import { cn } from '$lib/utils.js'; import { cn } from '$lib/utils/ui.js';
let { let {
ref = $bindable(null), ref = $bindable(null),
+1 -1
View File
@@ -1,7 +1,7 @@
<script lang="ts"> <script lang="ts">
import { Switch as SwitchPrimitive } from 'bits-ui'; import { Switch as SwitchPrimitive } from 'bits-ui';
import { type WithoutChildrenOrChild, cn } from '$lib/utils.js'; import { type WithoutChildrenOrChild, cn } from '$lib/utils/ui.js';
let { let {
ref = $bindable(null), ref = $bindable(null),
+9
View File
@@ -0,0 +1,9 @@
export * from './ui.ts';
export * from './meteo.ts';
export const pad = (n: string | number) => {
if (n === null || n === undefined) {
return '';
}
return ('0' + n).slice(-2);
};
-7
View File
@@ -11,10 +11,3 @@ export type WithoutChild<T> = T extends { child?: any } ? Omit<T, 'child'> : T;
export type WithoutChildren<T> = T extends { children?: any } ? Omit<T, 'children'> : T; export type WithoutChildren<T> = T extends { children?: any } ? Omit<T, 'children'> : T;
export type WithoutChildrenOrChild<T> = WithoutChildren<WithoutChild<T>>; export type WithoutChildrenOrChild<T> = WithoutChildren<WithoutChild<T>>;
export type WithElementRef<T, U extends HTMLElement = HTMLElement> = T & { ref?: U | null }; export type WithElementRef<T, U extends HTMLElement = HTMLElement> = T & { ref?: U | null };
export const pad = (n: string | number) => {
if (n === null || n === undefined) {
return '';
}
return ('0' + n).slice(-2);
};
@@ -8,7 +8,7 @@
import { type GeoLocation, storedLocation } from '$lib/stores/settings'; import { type GeoLocation, storedLocation } from '$lib/stores/settings';
import { urlHashStore } from '$lib/stores/url-hash-store'; import { urlHashStore } from '$lib/stores/url-hash-store';
import { pad } from '$lib/utils'; import { pad } from '$lib/utils/index';
import { Label } from '$lib/components/ui/label'; import { Label } from '$lib/components/ui/label';
import * as Select from '$lib/components/ui/select'; import * as Select from '$lib/components/ui/select';