CI / changes (push) Successful in 10s
CI / commitlint (push) Has been skipped
CI / openapi (push) Successful in 27s
CI / web (push) Successful in 38s
CI / go (push) Successful in 2m36s
CI / bird2 (push) Successful in 15s
CI / release (push) Failing after 3m7s
Refactored the project structure to support a monorepo setup, moving the web application to `apps/web/` and updating related configurations. Adjusted pre-commit hooks to use `pnpm` for linting and formatting. Updated CI workflows to reflect the new directory structure and dependencies. Removed legacy files and configurations from the previous `web/` directory, streamlining the project for better maintainability and clarity.
32 lines
787 B
Svelte
32 lines
787 B
Svelte
<script lang="ts">
|
|
import type { Component, Snippet } from 'svelte';
|
|
import { cn } from '$lib/utils.js';
|
|
|
|
type Props = {
|
|
title?: string;
|
|
description?: string;
|
|
icon?: Component;
|
|
action?: Snippet;
|
|
class?: string;
|
|
};
|
|
|
|
let { title = 'Нет данных', description, icon: Icon, action, class: className }: Props = $props();
|
|
</script>
|
|
|
|
<div
|
|
class={cn('flex flex-col items-center justify-center gap-2 px-4 py-12 text-center', className)}
|
|
>
|
|
{#if Icon}
|
|
<div class="mb-1 text-muted-foreground/60" aria-hidden="true">
|
|
<Icon class="size-10" />
|
|
</div>
|
|
{/if}
|
|
<p class="text-sm font-medium">{title}</p>
|
|
{#if description}
|
|
<p class="max-w-sm text-sm text-muted-foreground">{description}</p>
|
|
{/if}
|
|
{#if action}
|
|
<div class="mt-2">{@render action()}</div>
|
|
{/if}
|
|
</div>
|