first commit
Some checks failed
Build / run (push) Has been cancelled

This commit is contained in:
maher
2025-10-29 11:42:25 +01:00
commit 703f50a09d
4595 changed files with 385164 additions and 0 deletions

View File

@@ -0,0 +1,6 @@
import {createSvgIcon} from '@common/icons/create-svg-icon';
export const InfoDialogTriggerIcon = createSvgIcon(
<path d="M9 8a1 1 0 0 0-1-1H5.5a1 1 0 1 0 0 2H7v4a1 1 0 0 0 2 0zM4 0h8a4 4 0 0 1 4 4v8a4 4 0 0 1-4 4H4a4 4 0 0 1-4-4V4a4 4 0 0 1 4-4zm4 5.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z" />,
'InfoDialogTrigger'
);

View File

@@ -0,0 +1,41 @@
import {IconButton} from '@common/ui/buttons/icon-button';
import {InfoDialogTriggerIcon} from '@common/ui/overlays/dialog/info-dialog-trigger/info-dialog-trigger-icon';
import {Dialog, DialogSize} from '@common/ui/overlays/dialog/dialog';
import {DialogHeader} from '@common/ui/overlays/dialog/dialog-header';
import {DialogBody} from '@common/ui/overlays/dialog/dialog-body';
import {DialogTrigger} from '@common/ui/overlays/dialog/dialog-trigger';
import React, {ReactNode} from 'react';
import clsx from 'clsx';
interface Props {
title?: ReactNode;
body: ReactNode;
dialogSize?: DialogSize;
className?: string;
}
export function InfoDialogTrigger({
title,
body,
dialogSize = 'sm',
className,
}: Props) {
return (
<DialogTrigger type="popover" triggerOnHover>
<IconButton
className={clsx('ml-4 text-muted opacity-70', className)}
iconSize="xs"
size="2xs"
>
<InfoDialogTriggerIcon viewBox="0 0 16 16" />
</IconButton>
<Dialog size={dialogSize}>
{title && (
<DialogHeader padding="px-18 pt-12" size="md" hideDismissButton>
{title}
</DialogHeader>
)}
<DialogBody>{body}</DialogBody>
</Dialog>
</DialogTrigger>
);
}