elij-ui-library 0.1.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.
Files changed (90) hide show
  1. package/README.md +100 -0
  2. package/dist/components/ActionLinkButton/ActionLinkButton.d.ts +13 -0
  3. package/dist/components/ActionLinkButton/index.d.ts +2 -0
  4. package/dist/components/Alert/Alert.d.ts +10 -0
  5. package/dist/components/Alert/index.d.ts +2 -0
  6. package/dist/components/Avatar/Avatar.d.ts +9 -0
  7. package/dist/components/Avatar/index.d.ts +2 -0
  8. package/dist/components/Badge/Badge.d.ts +7 -0
  9. package/dist/components/Badge/index.d.ts +2 -0
  10. package/dist/components/Breadcrumb/Breadcrumb.d.ts +12 -0
  11. package/dist/components/Breadcrumb/index.d.ts +2 -0
  12. package/dist/components/Button/Button.d.ts +10 -0
  13. package/dist/components/Button/index.d.ts +2 -0
  14. package/dist/components/Card/Card.d.ts +9 -0
  15. package/dist/components/Card/index.d.ts +2 -0
  16. package/dist/components/Charts/Charts.d.ts +52 -0
  17. package/dist/components/Charts/index.d.ts +2 -0
  18. package/dist/components/Checkbox/Checkbox.d.ts +6 -0
  19. package/dist/components/Checkbox/index.d.ts +2 -0
  20. package/dist/components/Dialog/Dialog.d.ts +12 -0
  21. package/dist/components/Dialog/index.d.ts +2 -0
  22. package/dist/components/Divider/Divider.d.ts +6 -0
  23. package/dist/components/Divider/index.d.ts +2 -0
  24. package/dist/components/Drawer/Drawer.d.ts +13 -0
  25. package/dist/components/Drawer/index.d.ts +2 -0
  26. package/dist/components/Dropdown/Dropdown.d.ts +13 -0
  27. package/dist/components/Dropdown/index.d.ts +2 -0
  28. package/dist/components/Empty/Empty.d.ts +9 -0
  29. package/dist/components/Empty/index.d.ts +2 -0
  30. package/dist/components/EventCarousel/EventCarousel.d.ts +13 -0
  31. package/dist/components/EventCarousel/index.d.ts +2 -0
  32. package/dist/components/FilterTabs/FilterTabs.d.ts +14 -0
  33. package/dist/components/FilterTabs/index.d.ts +2 -0
  34. package/dist/components/Flex/Flex.d.ts +11 -0
  35. package/dist/components/Flex/index.d.ts +2 -0
  36. package/dist/components/Grid/Grid.d.ts +15 -0
  37. package/dist/components/Grid/index.d.ts +2 -0
  38. package/dist/components/Input/Input.d.ts +9 -0
  39. package/dist/components/Input/index.d.ts +2 -0
  40. package/dist/components/Layout/Layout.d.ts +6 -0
  41. package/dist/components/Layout/index.d.ts +1 -0
  42. package/dist/components/Menu/Menu.d.ts +18 -0
  43. package/dist/components/Menu/index.d.ts +2 -0
  44. package/dist/components/Pagination/Pagination.d.ts +10 -0
  45. package/dist/components/Pagination/index.d.ts +2 -0
  46. package/dist/components/Progress/Progress.d.ts +9 -0
  47. package/dist/components/Progress/index.d.ts +2 -0
  48. package/dist/components/RadioGroup/RadioGroup.d.ts +18 -0
  49. package/dist/components/RadioGroup/index.d.ts +2 -0
  50. package/dist/components/Result/Result.d.ts +10 -0
  51. package/dist/components/Result/index.d.ts +2 -0
  52. package/dist/components/SectionHeading/SectionHeading.d.ts +8 -0
  53. package/dist/components/SectionHeading/index.d.ts +2 -0
  54. package/dist/components/Select/Select.d.ts +16 -0
  55. package/dist/components/Select/index.d.ts +2 -0
  56. package/dist/components/Skeleton/Skeleton.d.ts +8 -0
  57. package/dist/components/Skeleton/index.d.ts +2 -0
  58. package/dist/components/Space/Space.d.ts +9 -0
  59. package/dist/components/Space/index.d.ts +2 -0
  60. package/dist/components/Spinner/Spinner.d.ts +6 -0
  61. package/dist/components/Spinner/index.d.ts +2 -0
  62. package/dist/components/Steps/Steps.d.ts +16 -0
  63. package/dist/components/Steps/index.d.ts +2 -0
  64. package/dist/components/Switch/Switch.d.ts +8 -0
  65. package/dist/components/Switch/index.d.ts +2 -0
  66. package/dist/components/Table/Table.d.ts +18 -0
  67. package/dist/components/Table/index.d.ts +2 -0
  68. package/dist/components/Tabs/Tabs.d.ts +17 -0
  69. package/dist/components/Tabs/index.d.ts +2 -0
  70. package/dist/components/Tag/Tag.d.ts +9 -0
  71. package/dist/components/Tag/index.d.ts +2 -0
  72. package/dist/components/Textarea/Textarea.d.ts +9 -0
  73. package/dist/components/Textarea/index.d.ts +2 -0
  74. package/dist/components/Tooltip/Tooltip.d.ts +8 -0
  75. package/dist/components/Tooltip/index.d.ts +2 -0
  76. package/dist/components/Typography/Typography.d.ts +15 -0
  77. package/dist/components/Typography/index.d.ts +2 -0
  78. package/dist/components/WhatsAppButton/WhatsAppButton.d.ts +13 -0
  79. package/dist/components/WhatsAppButton/index.d.ts +2 -0
  80. package/dist/i18n/messages.d.ts +59 -0
  81. package/dist/icons/WhatsAppIcon.d.ts +6 -0
  82. package/dist/icons/index.d.ts +2 -0
  83. package/dist/index.cjs +1 -0
  84. package/dist/index.d.ts +81 -0
  85. package/dist/index.js +778 -0
  86. package/dist/provider/UIContext.d.ts +10 -0
  87. package/dist/provider/UIProvider.d.ts +10 -0
  88. package/dist/provider/index.d.ts +5 -0
  89. package/dist/ui-library.css +1 -0
  90. package/package.json +77 -0
@@ -0,0 +1,6 @@
1
+ import { HTMLAttributes } from 'react';
2
+ export interface SpinnerProps extends HTMLAttributes<HTMLSpanElement> {
3
+ size?: 'small' | 'medium' | 'large';
4
+ label?: string;
5
+ }
6
+ export declare function Spinner({ size, label, className, ...props }: SpinnerProps): import("react").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { Spinner } from './Spinner';
2
+ export type { SpinnerProps } from './Spinner';
@@ -0,0 +1,16 @@
1
+ import { ReactNode } from 'react';
2
+ export interface StepItem {
3
+ title: ReactNode;
4
+ description?: ReactNode;
5
+ status?: 'wait' | 'process' | 'finish' | 'error';
6
+ disabled?: boolean;
7
+ }
8
+ export interface StepsProps {
9
+ items: StepItem[];
10
+ current?: number;
11
+ direction?: 'horizontal' | 'vertical';
12
+ onChange?: (index: number) => void;
13
+ ariaLabel?: string;
14
+ className?: string;
15
+ }
16
+ export declare function Steps({ items, current, direction, onChange, ariaLabel, className }: StepsProps): import("react").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { Steps } from './Steps';
2
+ export type { StepItem, StepsProps } from './Steps';
@@ -0,0 +1,8 @@
1
+ import { ButtonHTMLAttributes, ReactNode } from 'react';
2
+ export interface SwitchProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'onChange'> {
3
+ checked?: boolean;
4
+ defaultChecked?: boolean;
5
+ onCheckedChange?: (checked: boolean) => void;
6
+ label?: ReactNode;
7
+ }
8
+ export declare const Switch: import('react').ForwardRefExoticComponent<SwitchProps & import('react').RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,2 @@
1
+ export { Switch } from './Switch';
2
+ export type { SwitchProps } from './Switch';
@@ -0,0 +1,18 @@
1
+ import { Key, ReactNode } from 'react';
2
+ export interface TableColumn<T> {
3
+ key: string;
4
+ title: ReactNode;
5
+ dataIndex?: keyof T;
6
+ render?: (value: unknown, record: T, index: number) => ReactNode;
7
+ align?: 'left' | 'center' | 'right';
8
+ width?: number | string;
9
+ }
10
+ export interface TableProps<T> {
11
+ columns: TableColumn<T>[];
12
+ data: T[];
13
+ rowKey: keyof T | ((record: T) => Key);
14
+ caption?: ReactNode;
15
+ emptyText?: ReactNode;
16
+ className?: string;
17
+ }
18
+ export declare function Table<T>({ columns, data, rowKey, caption, emptyText, className }: TableProps<T>): import("react").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { Table } from './Table';
2
+ export type { TableColumn, TableProps } from './Table';
@@ -0,0 +1,17 @@
1
+ import { ReactNode } from 'react';
2
+ export interface TabItem {
3
+ key: string;
4
+ label: ReactNode;
5
+ children: ReactNode;
6
+ disabled?: boolean;
7
+ }
8
+ export interface TabsProps {
9
+ items: TabItem[];
10
+ activeKey?: string;
11
+ defaultActiveKey?: string;
12
+ onChange?: (key: string) => void;
13
+ orientation?: 'horizontal' | 'vertical';
14
+ ariaLabel?: string;
15
+ className?: string;
16
+ }
17
+ export declare function Tabs({ items, activeKey, defaultActiveKey, onChange, orientation, ariaLabel, className }: TabsProps): import("react").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { Tabs } from './Tabs';
2
+ export type { TabItem, TabsProps } from './Tabs';
@@ -0,0 +1,9 @@
1
+ import { HTMLAttributes, ReactNode } from 'react';
2
+ export interface TagProps extends Omit<HTMLAttributes<HTMLSpanElement>, 'color'> {
3
+ children: ReactNode;
4
+ color?: 'default' | 'primary' | 'success' | 'warning' | 'danger';
5
+ closable?: boolean;
6
+ onClose?: () => void;
7
+ closeLabel?: string;
8
+ }
9
+ export declare function Tag({ children, color, closable, onClose, closeLabel, className, ...props }: TagProps): import("react").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { Tag } from './Tag';
2
+ export type { TagProps } from './Tag';
@@ -0,0 +1,9 @@
1
+ import { ReactNode, TextareaHTMLAttributes } from 'react';
2
+ export interface TextareaProps extends TextareaHTMLAttributes<HTMLTextAreaElement> {
3
+ label?: ReactNode;
4
+ helperText?: ReactNode;
5
+ error?: boolean;
6
+ errorMessage?: ReactNode;
7
+ fullWidth?: boolean;
8
+ }
9
+ export declare const Textarea: import('react').ForwardRefExoticComponent<TextareaProps & import('react').RefAttributes<HTMLTextAreaElement>>;
@@ -0,0 +1,2 @@
1
+ export { Textarea } from './Textarea';
2
+ export type { TextareaProps } from './Textarea';
@@ -0,0 +1,8 @@
1
+ import { ReactElement, ReactNode } from 'react';
2
+ export interface TooltipProps {
3
+ title: ReactNode;
4
+ children: ReactElement;
5
+ placement?: 'top' | 'right' | 'bottom' | 'left';
6
+ delay?: number;
7
+ }
8
+ export declare function Tooltip({ title, children, placement, delay }: TooltipProps): import("react").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { Tooltip } from './Tooltip';
2
+ export type { TooltipProps } from './Tooltip';
@@ -0,0 +1,15 @@
1
+ import { AnchorHTMLAttributes, HTMLAttributes, ReactNode } from 'react';
2
+ export interface TitleProps extends HTMLAttributes<HTMLHeadingElement> {
3
+ level?: 1 | 2 | 3 | 4 | 5 | 6;
4
+ children: ReactNode;
5
+ }
6
+ export declare function Title({ level, className, children, ...props }: TitleProps): import("react").JSX.Element;
7
+ export interface TextProps extends HTMLAttributes<HTMLSpanElement> {
8
+ children: ReactNode;
9
+ tone?: 'default' | 'secondary' | 'success' | 'warning' | 'danger';
10
+ strong?: boolean;
11
+ code?: boolean;
12
+ }
13
+ export declare function Text({ children, tone, strong, code, className, ...props }: TextProps): import("react").JSX.Element;
14
+ export declare function Paragraph({ className, ...props }: HTMLAttributes<HTMLParagraphElement>): import("react").JSX.Element;
15
+ export declare function Link({ className, ...props }: AnchorHTMLAttributes<HTMLAnchorElement>): import("react").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { Link, Paragraph, Text, Title } from './Typography';
2
+ export type { TextProps, TitleProps } from './Typography';
@@ -0,0 +1,13 @@
1
+ import { ReactNode } from 'react';
2
+ import { ButtonSize, ButtonVariant } from '../Button';
3
+ export interface WhatsAppButtonProps {
4
+ href: string;
5
+ children: ReactNode;
6
+ icon?: ReactNode;
7
+ size?: ButtonSize;
8
+ variant?: ButtonVariant;
9
+ className?: string;
10
+ target?: string;
11
+ rel?: string;
12
+ }
13
+ export declare function WhatsAppButton({ href, children, icon, size, variant, className, target, rel, }: WhatsAppButtonProps): import("react").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { WhatsAppButton } from './WhatsAppButton';
2
+ export type { WhatsAppButtonProps } from './WhatsAppButton';
@@ -0,0 +1,59 @@
1
+ export declare const defaultMessages: {
2
+ readonly en: {
3
+ readonly close: "Close";
4
+ readonly loading: "Loading";
5
+ readonly clear: "Clear";
6
+ readonly previous: "Previous";
7
+ readonly next: "Next";
8
+ readonly pagination: "Pagination";
9
+ readonly page: "Page";
10
+ readonly noData: "No data";
11
+ readonly breadcrumb: "Breadcrumb";
12
+ readonly menu: "Menu";
13
+ readonly tabs: "Tabs";
14
+ readonly steps: "Steps";
15
+ readonly progress: "Progress";
16
+ readonly previousPage: "Previous page";
17
+ readonly nextPage: "Next page";
18
+ readonly pageSuffix: "";
19
+ readonly confirm: "Confirm";
20
+ readonly cancel: "Cancel";
21
+ readonly open: "Open";
22
+ readonly chart: "Chart";
23
+ readonly pieChart: "Pie chart";
24
+ readonly donutChart: "Donut chart";
25
+ readonly horizontalBarChart: "Horizontal bar chart";
26
+ readonly combinationChart: "Combination chart";
27
+ readonly dualAxisChart: "Dual-axis chart";
28
+ };
29
+ readonly 'zh-CN': {
30
+ readonly close: "关闭";
31
+ readonly loading: "加载中";
32
+ readonly clear: "清除";
33
+ readonly previous: "上一步";
34
+ readonly next: "下一步";
35
+ readonly pagination: "分页";
36
+ readonly page: "第";
37
+ readonly noData: "暂无数据";
38
+ readonly breadcrumb: "面包屑导航";
39
+ readonly menu: "菜单";
40
+ readonly tabs: "标签页";
41
+ readonly steps: "步骤";
42
+ readonly progress: "进度";
43
+ readonly previousPage: "上一页";
44
+ readonly nextPage: "下一页";
45
+ readonly pageSuffix: "页";
46
+ readonly confirm: "确认";
47
+ readonly cancel: "取消";
48
+ readonly open: "打开";
49
+ readonly chart: "图表";
50
+ readonly pieChart: "饼图";
51
+ readonly donutChart: "环形图";
52
+ readonly horizontalBarChart: "横向条形图";
53
+ readonly combinationChart: "组合图";
54
+ readonly dualAxisChart: "双轴图";
55
+ };
56
+ };
57
+ export type BuiltInLocale = keyof typeof defaultMessages;
58
+ export type MessageKey = keyof (typeof defaultMessages)['en'];
59
+ export type Messages = Record<MessageKey, string> & Record<string, string>;
@@ -0,0 +1,6 @@
1
+ import { SVGProps } from 'react';
2
+ export interface WhatsAppIconProps extends Omit<SVGProps<SVGSVGElement>, "aria-hidden" | "height" | "width"> {
3
+ size?: number | string;
4
+ title?: string;
5
+ }
6
+ export declare function WhatsAppIcon({ size, title, className, ...props }: WhatsAppIconProps): import("react").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { WhatsAppIcon } from './WhatsAppIcon';
2
+ export type { WhatsAppIconProps } from './WhatsAppIcon';
package/dist/index.cjs ADDED
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),p=require("react"),m=require("recharts"),T=p.forwardRef(function({children:r,variant:a="primary",size:n="medium",fullWidth:s=!1,className:i="",type:c="button",...l},o){const u=["ui-button",`ui-button--${a}`,`ui-button--${n}`,s?"ui-button--full-width":"",i].filter(Boolean).join(" ");return e.jsx("button",{ref:o,className:u,type:c,...l,children:r})}),_={en:{close:"Close",loading:"Loading",clear:"Clear",previous:"Previous",next:"Next",pagination:"Pagination",page:"Page",noData:"No data",breadcrumb:"Breadcrumb",menu:"Menu",tabs:"Tabs",steps:"Steps",progress:"Progress",previousPage:"Previous page",nextPage:"Next page",pageSuffix:"",confirm:"Confirm",cancel:"Cancel",open:"Open",chart:"Chart",pieChart:"Pie chart",donutChart:"Donut chart",horizontalBarChart:"Horizontal bar chart",combinationChart:"Combination chart",dualAxisChart:"Dual-axis chart"},"zh-CN":{close:"关闭",loading:"加载中",clear:"清除",previous:"上一步",next:"下一步",pagination:"分页",page:"第",noData:"暂无数据",breadcrumb:"面包屑导航",menu:"菜单",tabs:"标签页",steps:"步骤",progress:"进度",previousPage:"上一页",nextPage:"下一页",pageSuffix:"页",confirm:"确认",cancel:"取消",open:"打开",chart:"图表",pieChart:"饼图",donutChart:"环形图",horizontalBarChart:"横向条形图",combinationChart:"组合图",dualAxisChart:"双轴图"}},E=_.en,P=p.createContext({locale:"en",messages:E,theme:"light",t:(t,r)=>r??E[t]??t});function $(){return p.useContext(P)}const L=_.en;function G({children:t,locale:r="en",messages:a,theme:n="light",className:s="",style:i,...c}){const l=p.useMemo(()=>{const u=r in _?_[r]:L,f=Object.fromEntries(Object.entries({...L,...u,...a}).filter(d=>d[1]!==void 0));return{locale:r,messages:f,theme:n,t:(d,j)=>f[d]??j??d}},[r,a,n]),o={colorScheme:n==="dark"?"dark":"light",...i};return e.jsx(P.Provider,{value:l,children:e.jsx("div",{className:["ui-provider",s].filter(Boolean).join(" "),"data-ui-locale":r,"data-ui-theme":n,lang:r,style:o,...c,children:t})})}function W({children:t,title:r,variant:a="info",onDismiss:n,dismissLabel:s,className:i="",...c}){const{t:l}=$();return e.jsxs("div",{role:a==="error"?"alert":"status",className:`ui-alert ui-alert--${a}${i?` ${i}`:""}`,...c,children:[e.jsxs("div",{className:"ui-alert__content",children:[r&&e.jsx("strong",{className:"ui-alert__title",children:r}),e.jsx("div",{children:t})]}),n&&e.jsx("button",{className:"ui-alert__dismiss",type:"button","aria-label":s??l("close"),onClick:n,children:"×"})]})}function U({children:t,variant:r="neutral",className:a="",...n}){return e.jsx("span",{className:`ui-badge ui-badge--${r}${a?` ${a}`:""}`,...n,children:t})}function X({children:t,interactive:r=!1,className:a="",...n}){return e.jsx("div",{className:`ui-card${r?" ui-card--interactive":""}${a?` ${a}`:""}`,...n,children:t})}function q({className:t="",...r}){return e.jsx("div",{className:`ui-card__header${t?` ${t}`:""}`,...r})}function V({className:t="",...r}){return e.jsx("div",{className:`ui-card__body${t?` ${t}`:""}`,...r})}function Y({className:t="",...r}){return e.jsx("div",{className:`ui-card__footer${t?` ${t}`:""}`,...r})}const Z=p.forwardRef(function({label:r,indeterminate:a=!1,className:n="",...s},i){const c=p.useRef(null);p.useEffect(()=>{c.current&&(c.current.indeterminate=a)},[a]);const l=o=>{c.current=o,typeof i=="function"?i(o):i&&(i.current=o)};return e.jsxs("label",{className:`ui-check${s.disabled?" ui-check--disabled":""}`,children:[e.jsx("input",{ref:l,className:`ui-check__input${n?` ${n}`:""}`,type:"checkbox",...s}),e.jsx("span",{className:"ui-check__control","aria-hidden":"true"}),r&&e.jsx("span",{className:"ui-check__label",children:r})]})});function O({open:t,onOpenChange:r,title:a,description:n,children:s,footer:i,closeLabel:c,closeOnOverlayClick:l=!0}){const{t:o}=$(),u=p.useId(),f=p.useId(),d=p.useRef(null);return p.useEffect(()=>{if(!t)return;const j=document.activeElement,b=document.body.style.overflow;document.body.style.overflow="hidden",d.current?.focus();const x=h=>{if(h.key==="Escape"&&r(!1),h.key!=="Tab"||!d.current)return;const y=Array.from(d.current.querySelectorAll('button:not(:disabled), [href], input:not(:disabled), select:not(:disabled), textarea:not(:disabled), [tabindex]:not([tabindex="-1"])'));if(!y.length){h.preventDefault();return}const v=y[0],g=y[y.length-1];h.shiftKey&&document.activeElement===v?(h.preventDefault(),g.focus()):!h.shiftKey&&document.activeElement===g&&(h.preventDefault(),v.focus())};return document.addEventListener("keydown",x),()=>{document.removeEventListener("keydown",x),document.body.style.overflow=b,j?.focus()}},[t,r]),t?e.jsx("div",{className:"ui-dialog__backdrop",onMouseDown:j=>{l&&j.target===j.currentTarget&&r(!1)},children:e.jsxs("div",{ref:d,className:"ui-dialog",role:"dialog","aria-modal":"true","aria-labelledby":u,"aria-describedby":n?f:void 0,tabIndex:-1,children:[e.jsxs("header",{className:"ui-dialog__header",children:[e.jsxs("div",{children:[e.jsx("h2",{id:u,children:a}),n&&e.jsx("p",{id:f,children:n})]}),e.jsx("button",{type:"button",className:"ui-dialog__close","aria-label":c??o("close"),onClick:()=>r(!1),children:"×"})]}),e.jsx("div",{className:"ui-dialog__body",children:s}),i&&e.jsx("footer",{className:"ui-dialog__footer",children:i})]})}):null}function J({orientation:t="horizontal",label:r,className:a="",...n}){return e.jsx("div",{className:`ui-divider ui-divider--${t}${r?" ui-divider--labelled":""}${a?` ${a}`:""}`,role:"separator","aria-orientation":t,...n,children:r&&e.jsx("span",{children:r})})}const Q=p.forwardRef(function({id:r,label:a,helperText:n,error:s=!1,errorMessage:i,fullWidth:c=!1,className:l="",...o},u){const f=p.useId(),d=r??f,j=s&&i?`${d}-error`:n?`${d}-helper`:void 0;return e.jsxs("div",{className:`ui-field${c?" ui-field--full":""}`,children:[a&&e.jsx("label",{className:"ui-field__label",htmlFor:d,children:a}),e.jsx("input",{ref:u,id:d,className:`ui-input${s?" ui-input--error":""}${l?` ${l}`:""}`,"aria-invalid":s||void 0,"aria-describedby":j,...o}),s&&i?e.jsx("span",{className:"ui-field__message ui-field__message--error",id:`${d}-error`,children:i}):n?e.jsx("span",{className:"ui-field__message",id:`${d}-helper`,children:n}):null]})});function ee({name:t,label:r,options:a,value:n,defaultValue:s,onValueChange:i,disabled:c=!1,orientation:l="vertical",className:o=""}){const u=p.useId();return e.jsxs("fieldset",{className:`ui-radio-group ui-radio-group--${l}${o?` ${o}`:""}`,disabled:c,children:[r&&e.jsx("legend",{className:"ui-field__label",children:r}),e.jsx("div",{className:"ui-radio-group__options",children:a.map(f=>e.jsxs("label",{className:"ui-radio",children:[e.jsx("input",{type:"radio",name:t??u,value:f.value,checked:n===void 0?void 0:n===f.value,defaultChecked:n===void 0?s===f.value:void 0,disabled:f.disabled,onChange:()=>i?.(f.value)}),e.jsx("span",{className:"ui-radio__control","aria-hidden":"true"}),e.jsx("span",{children:f.label})]},f.value))})]})}const te=p.forwardRef(function({id:r,label:a,helperText:n,error:s=!1,errorMessage:i,options:c,placeholder:l,fullWidth:o=!1,className:u="",...f},d){const j=p.useId(),b=r??j,x=s&&i?`${b}-error`:n?`${b}-helper`:void 0;return e.jsxs("div",{className:`ui-field${o?" ui-field--full":""}`,children:[a&&e.jsx("label",{className:"ui-field__label",htmlFor:b,children:a}),e.jsxs("select",{ref:d,id:b,className:`ui-select${s?" ui-select--error":""}${u?` ${u}`:""}`,"aria-invalid":s||void 0,"aria-describedby":x,...f,children:[l&&e.jsx("option",{value:"",disabled:!0,children:l}),c.map(h=>e.jsx("option",{value:h.value,disabled:h.disabled,children:h.label},h.value))]}),s&&i?e.jsx("span",{className:"ui-field__message ui-field__message--error",id:`${b}-error`,children:i}):n?e.jsx("span",{className:"ui-field__message",id:`${b}-helper`,children:n}):null]})});function K({size:t="medium",label:r,className:a="",...n}){const{t:s}=$();return e.jsx("span",{className:`ui-spinner ui-spinner--${t}${a?` ${a}`:""}`,role:"status","aria-label":r??s("loading"),...n})}const re=p.forwardRef(function({checked:r,defaultChecked:a=!1,onCheckedChange:n,label:s,disabled:i,className:c="",...l},o){const[u,f]=p.useState(a),d=r??u,j=()=>{if(i)return;const b=!d;r===void 0&&f(b),n?.(b)};return e.jsxs("div",{className:`ui-switch-row${i?" ui-switch-row--disabled":""}`,children:[e.jsx("button",{ref:o,type:"button",role:"switch","aria-checked":d,"aria-label":typeof s=="string"?s:void 0,disabled:i,className:`ui-switch${c?` ${c}`:""}`,onClick:j,...l,children:e.jsx("span",{className:"ui-switch__thumb"})}),s&&e.jsx("span",{children:s})]})}),ae=p.forwardRef(function({id:r,label:a,helperText:n,error:s=!1,errorMessage:i,fullWidth:c=!1,className:l="",...o},u){const f=p.useId(),d=r??f,j=s&&i?`${d}-error`:n?`${d}-helper`:void 0;return e.jsxs("div",{className:`ui-field${c?" ui-field--full":""}`,children:[a&&e.jsx("label",{className:"ui-field__label",htmlFor:d,children:a}),e.jsx("textarea",{ref:u,id:d,className:`ui-textarea${s?" ui-textarea--error":""}${l?` ${l}`:""}`,"aria-invalid":s||void 0,"aria-describedby":j,...o}),s&&i?e.jsx("span",{className:"ui-field__message ui-field__message--error",id:`${d}-error`,children:i}):n?e.jsx("span",{className:"ui-field__message",id:`${d}-helper`,children:n}):null]})});function ne({src:t,alt:r="",children:a,size:n="medium",shape:s="circle",className:i="",style:c,...l}){const[o,u]=p.useState(!1),f=typeof n=="number"?n:{small:28,medium:40,large:56}[n];return e.jsx("span",{className:`ui-avatar ui-avatar--${s}${i?` ${i}`:""}`,style:{width:f,height:f,...c},...l,children:t&&!o?e.jsx("img",{src:t,alt:r,onError:()=>u(!0)}):a})}function se({items:t,separator:r="/",ariaLabel:a,className:n=""}){const{t:s}=$();return e.jsx("nav",{"aria-label":a??s("breadcrumb"),className:`ui-breadcrumb${n?` ${n}`:""}`,children:e.jsx("ol",{children:t.map((i,c)=>e.jsxs("li",{children:[c>0&&e.jsx("span",{className:"ui-breadcrumb__separator","aria-hidden":"true",children:r}),c===t.length-1?e.jsx("span",{"aria-current":"page",children:i.label}):i.href?e.jsx("a",{href:i.href,children:i.label}):e.jsx("span",{children:i.label})]},c))})})}function ie({open:t,onOpenChange:r,title:a,children:n,footer:s,placement:i="right",width:c=400,closeLabel:l,closeOnOverlayClick:o=!0}){const{t:u}=$(),f=p.useId(),d=p.useRef(null);return p.useEffect(()=>{if(!t)return;const j=document.activeElement,b=document.body.style.overflow;document.body.style.overflow="hidden",d.current?.focus();const x=h=>{if(h.key==="Escape"&&r(!1),h.key==="Tab"&&d.current){const y=Array.from(d.current.querySelectorAll('button:not(:disabled), [href], input:not(:disabled), [tabindex]:not([tabindex="-1"])'));if(!y.length){h.preventDefault();return}const v=y[0],g=y[y.length-1];h.shiftKey&&document.activeElement===v?(h.preventDefault(),g.focus()):!h.shiftKey&&document.activeElement===g&&(h.preventDefault(),v.focus())}};return document.addEventListener("keydown",x),()=>{document.removeEventListener("keydown",x),document.body.style.overflow=b,j?.focus()}},[t,r]),t?e.jsx("div",{className:"ui-drawer__backdrop",onMouseDown:j=>{o&&j.target===j.currentTarget&&r(!1)},children:e.jsxs("div",{ref:d,tabIndex:-1,role:"dialog","aria-modal":"true","aria-labelledby":f,className:`ui-drawer ui-drawer--${i}`,style:{width:c},children:[e.jsxs("header",{children:[e.jsx("h2",{id:f,children:a}),e.jsx("button",{type:"button","aria-label":l??u("close"),onClick:()=>r(!1),children:"×"})]}),e.jsx("div",{className:"ui-drawer__body",children:n}),s&&e.jsx("footer",{children:s})]})}):null}function R({items:t,selectedKey:r,defaultSelectedKey:a,onSelect:n,mode:s="vertical",ariaLabel:i,className:c=""}){const{t:l}=$(),o=p.useRef([]),[u,f]=p.useState(a),d=r??u,j=x=>{x.disabled||(r===void 0&&f(x.key),n?.(x.key))},b=(x,h)=>{const y=s==="horizontal"?"ArrowRight":"ArrowDown",v=s==="horizontal"?"ArrowLeft":"ArrowUp";if(![y,v,"Home","End"].includes(x.key))return;x.preventDefault();let g=x.key==="Home"?0:x.key==="End"?t.length-1:(h+(x.key===y?1:-1)+t.length)%t.length;for(;t[g]?.disabled&&g!==h;)g=(g+(x.key===v?-1:1)+t.length)%t.length;o.current[g]?.focus()};return e.jsx("div",{className:`ui-menu ui-menu--${s}${c?` ${c}`:""}`,role:"menu","aria-label":i??l("menu"),children:t.map((x,h)=>{const y=d===x.key;return e.jsxs("button",{ref:v=>{o.current[h]=v},type:"button",role:"menuitem",disabled:x.disabled,"aria-current":y?"page":void 0,className:`ui-menu__item${y?" ui-menu__item--active":""}${x.danger?" ui-menu__item--danger":""}`,onClick:()=>j(x),onKeyDown:v=>b(v,h),children:[x.icon,e.jsx("span",{children:x.label})]},x.key)})})}function le({trigger:t,items:r,open:a,defaultOpen:n=!1,onOpenChange:s,onSelect:i,placement:c="bottom-start"}){const[l,o]=p.useState(n),u=a??l,f=p.useRef(null),d=b=>{a===void 0&&o(b),s?.(b)};p.useEffect(()=>{if(!u)return;const b=h=>{f.current?.contains(h.target)||d(!1)},x=h=>{h.key==="Escape"&&d(!1)};return document.addEventListener("mousedown",b),document.addEventListener("keydown",x),()=>{document.removeEventListener("mousedown",b),document.removeEventListener("keydown",x)}});const j=p.isValidElement(t)?p.cloneElement(t,{onClick:()=>d(!u),"aria-haspopup":"menu","aria-expanded":u}):t;return e.jsxs("div",{className:"ui-dropdown",ref:f,children:[j,u&&e.jsx("div",{className:`ui-dropdown__panel ui-dropdown__panel--${c}`,children:e.jsx(R,{items:r,onSelect:b=>{i?.(b),d(!1)}})})]})}function S({description:t,image:r,children:a,compact:n=!1,className:s=""}){const{t:i}=$();return e.jsxs("div",{className:`ui-empty${n?" ui-empty--compact":""}${s?` ${s}`:""}`,children:[r??e.jsx("span",{className:"ui-empty__image","aria-hidden":"true",children:"◇"}),e.jsx("span",{children:t??i("noData")}),a]})}function oe({children:t,vertical:r=!1,gap:a,align:n,justify:s,wrap:i,flex:c,className:l="",style:o,...u}){return e.jsx("div",{className:`ui-flex${l?` ${l}`:""}`,style:{flexDirection:r?"column":"row",gap:a,alignItems:n,justifyContent:s,flexWrap:i,flex:c,...o},...u,children:t})}function ce({children:t,gutter:r=0,align:a,justify:n,className:s="",style:i,...c}){const l=p.Children.map(t,o=>p.isValidElement(o)?p.cloneElement(o,{gutter:o.props.gutter??r}):o);return e.jsx("div",{className:`ui-row${s?` ${s}`:""}`,style:{marginInline:-r/2,rowGap:r,alignItems:a,justifyContent:n,...i},...c,children:l})}function ue({children:t,span:r=24,offset:a=0,gutter:n=0,className:s="",style:i,...c}){return e.jsx("div",{className:`ui-col${s?` ${s}`:""}`,style:{width:`${r/24*100}%`,marginInlineStart:`${a/24*100}%`,paddingInline:n/2,...i},...c,children:t})}function w(t){return function({className:a="",...n}){return e.jsx("section",{className:`ui-layout__${t}${a?` ${a}`:""}`,...n})}}function de({className:t="",...r}){return e.jsx("div",{className:`ui-layout${t?` ${t}`:""}`,...r})}const he=w("header"),fe=w("sider"),xe=w("content"),pe=w("footer");function je({current:t,total:r,pageSize:a=10,onChange:n,siblingCount:s=1,ariaLabel:i,className:c=""}){const{t:l}=$(),o=Math.max(1,Math.ceil(r/a)),u=Array.from({length:o},(d,j)=>j+1).filter(d=>d===1||d===o||Math.abs(d-t)<=s),f=d=>`${l("page")} ${d}${l("pageSuffix")?` ${l("pageSuffix")}`:""}`;return e.jsxs("nav",{"aria-label":i??l("pagination"),className:`ui-pagination${c?` ${c}`:""}`,children:[e.jsx("button",{type:"button",disabled:t<=1,"aria-label":l("previousPage"),onClick:()=>n(t-1),children:"‹"}),u.map((d,j)=>e.jsxs("span",{children:[j>0&&d-u[j-1]>1&&e.jsx("span",{className:"ui-pagination__ellipsis",children:"…"}),e.jsx("button",{type:"button","aria-current":d===t?"page":void 0,"aria-label":f(d),onClick:()=>n(d),children:d})]},d)),e.jsx("button",{type:"button",disabled:t>=o,"aria-label":l("nextPage"),onClick:()=>n(t+1),children:"›"})]})}function be({percent:t,type:r="line",status:a="normal",showInfo:n=!0,label:s,className:i="",...c}){const{t:l}=$(),o=Math.min(100,Math.max(0,t)),u=s??l("progress");if(r==="circle"){const d=2*Math.PI*42;return e.jsxs("div",{className:`ui-progress ui-progress--circle ui-progress--${a}${i?` ${i}`:""}`,role:"progressbar","aria-label":u,"aria-valuenow":o,"aria-valuemin":0,"aria-valuemax":100,...c,children:[e.jsxs("svg",{viewBox:"0 0 100 100",children:[e.jsx("circle",{className:"ui-progress__trail",cx:"50",cy:"50",r:42}),e.jsx("circle",{className:"ui-progress__value",cx:"50",cy:"50",r:42,strokeDasharray:d,strokeDashoffset:d*(1-o/100)})]}),n&&e.jsxs("span",{children:[o,"%"]})]})}return e.jsxs("div",{className:`ui-progress ui-progress--line ui-progress--${a}${i?` ${i}`:""}`,...c,children:[e.jsx("div",{className:"ui-progress__track",role:"progressbar","aria-label":u,"aria-valuenow":o,"aria-valuemin":0,"aria-valuemax":100,children:e.jsx("span",{style:{width:`${o}%`}})}),n&&e.jsxs("span",{children:[o,"%"]})]})}function me({status:t="info",title:r,description:a,icon:n,actions:s,className:i=""}){const c={success:"✓",info:"i",warning:"!",error:"×"};return e.jsxs("section",{className:`ui-result ui-result--${t}${i?` ${i}`:""}`,children:[e.jsx("div",{className:"ui-result__icon","aria-hidden":"true",children:n??c[t]}),e.jsx("h2",{children:r}),a&&e.jsx("p",{children:a}),s&&e.jsx("div",{className:"ui-result__actions",children:s})]})}function ve({variant:t="text",width:r,height:a,animated:n=!0,className:s="",style:i,...c}){return e.jsx("span",{"aria-hidden":"true",className:`ui-skeleton ui-skeleton--${t}${n?" ui-skeleton--animated":""}${s?` ${s}`:""}`,style:{width:r,height:a,...i},...c})}function ye({children:t,direction:r="horizontal",size:a="medium",wrap:n=!1,align:s="center",className:i="",style:c,...l}){const o=typeof a=="number"?a:{small:8,medium:16,large:24}[a];return e.jsx("div",{className:`ui-space ui-space--${r}${i?` ${i}`:""}`,style:{gap:o,flexWrap:n?"wrap":"nowrap",alignItems:s,...c},...l,children:t})}function ge({items:t,current:r=0,direction:a="horizontal",onChange:n,ariaLabel:s,className:i=""}){const{t:c}=$();return e.jsx("ol",{"aria-label":s??c("steps"),className:`ui-steps ui-steps--${a}${i?` ${i}`:""}`,children:t.map((l,o)=>{const u=l.status??(o<r?"finish":o===r?"process":"wait");return e.jsx("li",{className:`ui-step ui-step--${u}`,"aria-current":o===r?"step":void 0,children:e.jsxs("button",{type:"button",disabled:!n||l.disabled,onClick:()=>n?.(o),children:[e.jsx("span",{className:"ui-step__icon",children:u==="finish"?"✓":o+1}),e.jsxs("span",{children:[e.jsx("strong",{children:l.title}),l.description&&e.jsx("small",{children:l.description})]})]})},o)})})}function $e({columns:t,data:r,rowKey:a,caption:n,emptyText:s,className:i=""}){const c=l=>typeof a=="function"?a(l):l[a];return e.jsxs("div",{className:`ui-table-wrap${i?` ${i}`:""}`,children:[e.jsxs("table",{className:"ui-table",children:[n&&e.jsx("caption",{children:n}),e.jsx("thead",{children:e.jsx("tr",{children:t.map(l=>e.jsx("th",{scope:"col",style:{textAlign:l.align,width:l.width},children:l.title},l.key))})}),e.jsx("tbody",{children:r.map((l,o)=>e.jsx("tr",{children:t.map(u=>{const f=u.dataIndex?l[u.dataIndex]:void 0;return e.jsx("td",{style:{textAlign:u.align},children:u.render?u.render(f,l,o):f},u.key)})},c(l)))})]}),r.length===0&&e.jsx(S,{description:s,compact:!0})]})}function Ce({items:t,activeKey:r,defaultActiveKey:a,onChange:n,orientation:s="horizontal",ariaLabel:i,className:c=""}){const{t:l}=$(),[o,u]=p.useState(a??t.find(h=>!h.disabled)?.key),f=r??o,d=p.useId(),j=h=>{r===void 0&&u(h),n?.(h)},b=(h,y)=>{const v=s==="horizontal"?["ArrowRight","ArrowLeft"]:["ArrowDown","ArrowUp"];if(!v.includes(h.key))return;h.preventDefault();let g=(y+(h.key===v[0]?1:-1)+t.length)%t.length;for(;t[g].disabled&&g!==y;)g=(g+1)%t.length;j(t[g].key)},x=t.find(h=>h.key===f);return e.jsxs("div",{className:`ui-tabs ui-tabs--${s}${c?` ${c}`:""}`,children:[e.jsx("div",{role:"tablist","aria-label":i??l("tabs"),"aria-orientation":s,className:"ui-tabs__list",children:t.map((h,y)=>e.jsx("button",{id:`${d}-${h.key}-tab`,type:"button",role:"tab","aria-selected":f===h.key,"aria-controls":`${d}-${h.key}-panel`,tabIndex:f===h.key?0:-1,disabled:h.disabled,onClick:()=>j(h.key),onKeyDown:v=>b(v,y),children:h.label},h.key))}),x&&e.jsx("div",{role:"tabpanel",id:`${d}-${x.key}-panel`,"aria-labelledby":`${d}-${x.key}-tab`,className:"ui-tabs__panel",children:x.children})]})}function ke({items:t,activeKey:r,onChange:a,ariaLabel:n="Filter options",className:s=""}){return e.jsx("div",{className:`ui-filter-tabs${s?` ${s}`:""}`,role:"group","aria-label":n,children:t.map(i=>e.jsx("button",{type:"button","aria-pressed":r===i.id,disabled:i.disabled,onClick:()=>a?.(i.id),children:i.label},i.id))})}function F({level:t=2,className:r="",children:a,...n}){const s=`h${t}`;return e.jsx(s,{className:`ui-title ui-title--${t}${r?` ${r}`:""}`,...n,children:a})}function _e({children:t,tone:r="default",strong:a,code:n,className:s="",...i}){const c=n?"code":"span";return e.jsx(c,{className:`ui-text ui-text--${r}${a?" ui-text--strong":""}${n?" ui-text--code":""}${s?` ${s}`:""}`,...i,children:t})}function B({className:t="",...r}){return e.jsx("p",{className:`ui-paragraph${t?` ${t}`:""}`,...r})}function we({className:t="",...r}){return e.jsx("a",{className:`ui-link${t?` ${t}`:""}`,...r})}function Ne({eyebrow:t,title:r,description:a,className:n=""}){return e.jsxs("div",{className:`ui-section-heading${n?` ${n}`:""}`,children:[e.jsxs("div",{children:[e.jsx("p",{className:"eyebrow",children:t}),e.jsx(F,{level:2,children:r})]}),a?e.jsx(B,{children:a}):null]})}function M({href:t,children:r,icon:a,size:n="medium",variant:s="primary",className:i,target:c,rel:l}){return e.jsx("a",{href:t,target:c,rel:l,children:e.jsxs(T,{size:n,variant:s,className:i,style:{columnGap:10},children:[a,r]})})}function Ie({href:t,children:r,icon:a,size:n="large",variant:s="primary",className:i,target:c="_blank",rel:l="noreferrer"}){return e.jsx(M,{href:t,target:c,rel:l,size:n,variant:s,className:i,icon:a,children:r})}function Ae({title:t,description:r,media:a,className:n=""}){const[s,i]=p.useState(0),c=p.useRef(null),l=o=>{a.length!==0&&i(u=>(u+o+a.length)%a.length)};return e.jsxs("article",{className:`event-carousel${n?` ${n}`:""}`,children:[e.jsx("div",{className:"event-carousel-header",children:e.jsx("strong",{children:t})}),e.jsxs("div",{className:"event-carousel-viewport",onTouchStart:o=>{c.current=o.changedTouches[0]?.clientX??null},onTouchEnd:o=>{if(c.current===null)return;const u=(o.changedTouches[0]?.clientX??0)-c.current;Math.abs(u)>40&&l(u<0?1:-1),c.current=null},children:[e.jsx("div",{className:"event-carousel-track",style:{transform:`translateX(-${s*100}%)`},children:a.map((o,u)=>e.jsx("div",{className:"event-carousel-slide",children:o.type==="video"||o.src.endsWith(".mp4")?e.jsx("video",{src:o.src,"aria-label":o.alt??`${String(t)}, video`,autoPlay:!0,muted:!0,loop:!0,playsInline:!0,controls:!0,preload:"metadata"}):e.jsx("img",{src:o.src,alt:o.alt??`${String(t)}, photo ${u+1}`})},o.src))}),e.jsx("button",{className:"event-carousel-control event-carousel-control--prev",type:"button","aria-label":"Previous photo",onClick:()=>l(-1),children:"←"}),e.jsx("button",{className:"event-carousel-control event-carousel-control--next",type:"button","aria-label":"Next photo",onClick:()=>l(1),children:"→"})]}),r?e.jsx("div",{className:"event-carousel-footer",children:e.jsx(B,{children:r})}):null,e.jsx("div",{className:"event-carousel-dots","aria-label":`${String(t)} photos`,children:a.map((o,u)=>e.jsx("button",{type:"button","aria-label":`View photo ${u+1}`,"aria-current":s===u,onClick:()=>i(u)},o.src))})]})}function Se({size:t=24,title:r,className:a,...n}){return e.jsx("svg",{"aria-hidden":r?void 0:!0,"aria-label":r,className:a,height:t,role:r?"img":void 0,viewBox:"0 0 48 48",width:t,xmlns:"http://www.w3.org/2000/svg",...n,children:e.jsxs("g",{transform:"translate(-700 -360)",children:[e.jsx("path",{fill:"#67C15E",d:"M723.993033,360 C710.762252,360 700,370.765287 700,383.999801 C700,389.248451 701.692661,394.116025 704.570026,398.066947 L701.579605,406.983798 L710.804449,404.035539 C714.598605,406.546975 719.126434,408 724.006967,408 C737.237748,408 748,397.234315 748,384.000199 C748,370.765685 737.237748,360.000398 724.006967,360.000398 L723.993033,360.000398 L723.993033,360 Z"}),e.jsx("path",{fill:"#FFFFFF",d:"M717.29285,372.190836 C716.827488,371.07628 716.474784,371.034071 715.769774,371.005401 C715.529728,370.991464 715.262214,370.977527 714.96564,370.977527 C714.04845,370.977527 713.089462,371.245514 712.511043,371.838033 C711.806033,372.557577 710.056843,374.23638 710.056843,377.679202 C710.056843,381.122023 712.567571,384.451756 712.905944,384.917648 C713.258648,385.382743 717.800808,392.55031 724.853297,395.471492 C730.368379,397.757149 732.00491,397.545307 733.260074,397.27732 C735.093658,396.882308 737.393002,395.527239 737.971421,393.891043 C738.54984,392.25405 738.54984,390.857171 738.380255,390.560912 C738.211068,390.264652 737.745308,390.095816 737.040298,389.742615 C736.335288,389.389811 732.90737,387.696673 732.25849,387.470894 C731.623543,387.231179 731.017259,387.315995 730.537963,387.99333 C729.860819,388.938653 729.198006,389.89831 728.661785,390.476494 C728.238619,390.928051 727.547144,390.984595 726.969123,390.744481 C726.193254,390.420348 724.021298,389.657798 721.340985,387.273388 C719.267356,385.42535 717.856938,383.125756 717.448104,382.434484 C717.038871,381.729275 717.405907,381.319529 717.729948,380.938852 C718.082653,380.501232 718.421026,380.191036 718.77373,379.781688 C719.126434,379.372738 719.323884,379.160897 719.549599,378.681068 C719.789645,378.215575 719.62006,377.735746 719.450874,377.382942 C719.281687,377.030139 717.871269,373.587317 717.29285,372.190836 Z"})]})})}function Be({children:t,color:r="default",closable:a,onClose:n,closeLabel:s,className:i="",...c}){const{t:l}=$();return e.jsxs("span",{className:`ui-tag ui-tag--${r}${i?` ${i}`:""}`,...c,children:[t,a&&e.jsx("button",{type:"button","aria-label":s??l("close"),onClick:n,children:"×"})]})}function De({title:t,children:r,placement:a="top",delay:n=150}){const[s,i]=p.useState(!1),c=p.useId(),l=p.useRef(void 0);p.useEffect(()=>()=>clearTimeout(l.current),[]);const o=()=>{clearTimeout(l.current),l.current=setTimeout(()=>i(!0),n)},u=()=>{clearTimeout(l.current),i(!1)};return e.jsxs("span",{className:"ui-tooltip",onMouseEnter:o,onMouseLeave:u,onFocus:o,onBlur:u,onKeyDown:f=>{f.key==="Escape"&&u()},children:[p.cloneElement(r,{"aria-describedby":s?c:void 0}),s&&e.jsx("span",{id:c,role:"tooltip",className:`ui-tooltip__bubble ui-tooltip__bubble--${a}`,children:t})]})}const C=["var(--ui-chart-1)","var(--ui-chart-2)","var(--ui-chart-3)","var(--ui-chart-4)","var(--ui-chart-5)"];function N({loading:t,empty:r,height:a,label:n,className:s,children:i}){return e.jsx("div",{className:`ui-chart${s?` ${s}`:""}`,style:{height:a},role:"img","aria-label":n,children:t?e.jsx(K,{}):r?e.jsx(S,{compact:!0}):i})}function I(t){return t?r=>t(r):void 0}function D({kind:t,data:r,series:a,xKey:n,height:s=320,loading:i,showGrid:c=!0,showLegend:l=!0,showTooltip:o=!0,ariaLabel:u,valueFormatter:f,barSize:d,className:j}){const{t:b}=$(),x=u??b("chart"),h=e.jsxs(e.Fragment,{children:[c&&e.jsx(m.CartesianGrid,{strokeDasharray:"3 3",stroke:"var(--ui-color-border)"}),e.jsx(m.XAxis,{dataKey:n}),e.jsx(m.YAxis,{}),o&&e.jsx(m.Tooltip,{formatter:I(f)}),l&&e.jsx(m.Legend,{})]}),y=a.map((v,g)=>{const k=v.color??C[g%C.length];return t==="bar"?e.jsx(m.Bar,{dataKey:v.dataKey,name:v.name,fill:k,stackId:v.stackId,yAxisId:v.yAxisId,barSize:d,radius:[4,4,0,0]},v.dataKey):t==="area"?e.jsx(m.Area,{type:"monotone",dataKey:v.dataKey,name:v.name,stroke:k,fill:k,fillOpacity:.18},v.dataKey):e.jsx(m.Line,{type:"monotone",dataKey:v.dataKey,name:v.name,stroke:k,strokeWidth:2,dot:!1},v.dataKey)});return e.jsx(N,{loading:i,empty:!r.length,height:s,label:x,className:j,children:e.jsx(m.ResponsiveContainer,{width:"100%",height:"100%",children:t==="bar"?e.jsxs(m.BarChart,{data:r,children:[h,y]}):t==="area"?e.jsxs(m.AreaChart,{data:r,children:[h,y]}):e.jsxs(m.LineChart,{data:r,children:[h,y]})})})}function Ee(t){return e.jsx(D,{...t,kind:"line"})}function A(t){return e.jsx(D,{...t,kind:"bar"})}function Le(t){return e.jsx(D,{...t,kind:"area"})}function Te(t){return e.jsx(A,{...t})}function Pe(t){return e.jsx(A,{...t})}function Ke({series:t,...r}){return e.jsx(A,{...r,series:t.map(a=>({...a,stackId:a.stackId??"stack"}))})}function Re({data:t,series:r,xKey:a,height:n=320,loading:s,showGrid:i=!0,showLegend:c=!0,showTooltip:l=!0,ariaLabel:o,valueFormatter:u,barSize:f,className:d}){const{t:j}=$();return e.jsx(N,{loading:s,empty:!t.length,height:n,label:o??j("horizontalBarChart"),className:d,children:e.jsx(m.ResponsiveContainer,{width:"100%",height:"100%",children:e.jsxs(m.BarChart,{data:t,layout:"vertical",children:[i&&e.jsx(m.CartesianGrid,{strokeDasharray:"3 3",stroke:"var(--ui-color-border)"}),e.jsx(m.XAxis,{type:"number"}),e.jsx(m.YAxis,{type:"category",dataKey:a,width:80}),l&&e.jsx(m.Tooltip,{formatter:I(u)}),c&&e.jsx(m.Legend,{}),r.map((b,x)=>e.jsx(m.Bar,{dataKey:b.dataKey,name:b.name,stackId:b.stackId,fill:b.color??C[x%C.length],barSize:f,radius:[0,4,4,0]},b.dataKey))]})})})}function H({data:t,barSeries:r,lineSeries:a,xKey:n,dualAxis:s=!1,height:i=320,loading:c,showGrid:l=!0,showLegend:o=!0,showTooltip:u=!0,ariaLabel:f,valueFormatter:d,barSize:j,className:b}){const{t:x}=$();return e.jsx(N,{loading:c,empty:!t.length,height:i,label:f??x(s?"dualAxisChart":"combinationChart"),className:b,children:e.jsx(m.ResponsiveContainer,{width:"100%",height:"100%",children:e.jsxs(m.ComposedChart,{data:t,children:[l&&e.jsx(m.CartesianGrid,{strokeDasharray:"3 3",stroke:"var(--ui-color-border)"}),e.jsx(m.XAxis,{dataKey:n}),e.jsx(m.YAxis,{yAxisId:"left"}),s&&e.jsx(m.YAxis,{yAxisId:"right",orientation:"right"}),u&&e.jsx(m.Tooltip,{formatter:I(d)}),o&&e.jsx(m.Legend,{}),r.map((h,y)=>e.jsx(m.Bar,{dataKey:h.dataKey,name:h.name,stackId:h.stackId??"stack",yAxisId:h.yAxisId??"left",fill:h.color??C[y%C.length],barSize:j},h.dataKey)),a.map((h,y)=>e.jsx(m.Line,{dataKey:h.dataKey,name:h.name,yAxisId:h.yAxisId??(s?"right":"left"),stroke:h.color??C[(y+r.length)%C.length],strokeWidth:2},h.dataKey))]})})})}function Fe(t){return e.jsx(H,{...t,dualAxis:!0})}function z({data:t,nameKey:r,valueKey:a,height:n=320,loading:s,donut:i=!1,colors:c=C,showLegend:l=!0,showTooltip:o=!0,ariaLabel:u,valueFormatter:f,className:d}){const{t:j}=$();return e.jsx(N,{loading:s,empty:!t.length,height:n,label:u??j(i?"donutChart":"pieChart"),className:d,children:e.jsx(m.ResponsiveContainer,{width:"100%",height:"100%",children:e.jsxs(m.PieChart,{children:[o&&e.jsx(m.Tooltip,{formatter:I(f)}),l&&e.jsx(m.Legend,{}),e.jsx(m.Pie,{data:t,dataKey:a,nameKey:r,innerRadius:i?"55%":0,outerRadius:"78%",paddingAngle:2,children:t.map((b,x)=>e.jsx(m.Cell,{fill:c[x%c.length]},x))})]})})})}function Me(t){return e.jsx(z,{...t,donut:!0})}exports.ActionLinkButton=M;exports.Alert=W;exports.AreaChart=Le;exports.Avatar=ne;exports.Badge=U;exports.BarChart=A;exports.Breadcrumb=se;exports.Button=T;exports.Card=X;exports.CardBody=V;exports.CardFooter=Y;exports.CardHeader=q;exports.Checkbox=Z;exports.Col=ue;exports.Content=xe;exports.Dialog=O;exports.Divider=J;exports.DonutChart=Me;exports.Drawer=ie;exports.Dropdown=le;exports.DualAxisChart=Fe;exports.Empty=S;exports.EventCarousel=Ae;exports.FilterTabs=ke;exports.Flex=oe;exports.Footer=pe;exports.GroupedBarChart=Pe;exports.Header=he;exports.HorizontalBarChart=Re;exports.Input=Q;exports.Layout=de;exports.LineChart=Ee;exports.Link=we;exports.Menu=R;exports.Pagination=je;exports.Paragraph=B;exports.PieChart=z;exports.Progress=be;exports.RadioGroup=ee;exports.Result=me;exports.Row=ce;exports.SectionHeading=Ne;exports.Select=te;exports.Sider=fe;exports.Skeleton=ve;exports.Space=ye;exports.Spinner=K;exports.StackedBarChart=Ke;exports.StackedBarLineChart=H;exports.Steps=ge;exports.Switch=re;exports.Table=$e;exports.Tabs=Ce;exports.Tag=Be;exports.Text=_e;exports.Textarea=ae;exports.Title=F;exports.Tooltip=De;exports.UIProvider=G;exports.VerticalBarChart=Te;exports.WhatsAppButton=Ie;exports.WhatsAppIcon=Se;exports.useUI=$;
@@ -0,0 +1,81 @@
1
+ export { Button } from './components/Button';
2
+ export type { ButtonProps, ButtonSize, ButtonVariant } from './components/Button';
3
+ export { UIProvider, useUI } from './provider';
4
+ export type { BuiltInLocale, MessageKey, Messages, ThemeName, UIContextValue, UIProviderProps, } from './provider';
5
+ export { Alert } from './components/Alert';
6
+ export type { AlertProps, AlertVariant } from './components/Alert';
7
+ export { Badge } from './components/Badge';
8
+ export type { BadgeProps, BadgeVariant } from './components/Badge';
9
+ export { Card, CardBody, CardFooter, CardHeader } from './components/Card';
10
+ export type { CardProps } from './components/Card';
11
+ export { Checkbox } from './components/Checkbox';
12
+ export type { CheckboxProps } from './components/Checkbox';
13
+ export { Dialog } from './components/Dialog';
14
+ export type { DialogProps } from './components/Dialog';
15
+ export { Divider } from './components/Divider';
16
+ export type { DividerProps } from './components/Divider';
17
+ export { Input } from './components/Input';
18
+ export type { InputProps } from './components/Input';
19
+ export { RadioGroup } from './components/RadioGroup';
20
+ export type { RadioGroupProps, RadioOption } from './components/RadioGroup';
21
+ export { Select } from './components/Select';
22
+ export type { SelectOption, SelectProps } from './components/Select';
23
+ export { Spinner } from './components/Spinner';
24
+ export type { SpinnerProps } from './components/Spinner';
25
+ export { Switch } from './components/Switch';
26
+ export type { SwitchProps } from './components/Switch';
27
+ export { Textarea } from './components/Textarea';
28
+ export type { TextareaProps } from './components/Textarea';
29
+ export { Avatar } from './components/Avatar';
30
+ export type { AvatarProps } from './components/Avatar';
31
+ export { Breadcrumb } from './components/Breadcrumb';
32
+ export type { BreadcrumbItem, BreadcrumbProps } from './components/Breadcrumb';
33
+ export { Drawer } from './components/Drawer';
34
+ export type { DrawerProps } from './components/Drawer';
35
+ export { Dropdown } from './components/Dropdown';
36
+ export type { DropdownProps } from './components/Dropdown';
37
+ export { Empty } from './components/Empty';
38
+ export type { EmptyProps } from './components/Empty';
39
+ export { Flex } from './components/Flex';
40
+ export type { FlexProps } from './components/Flex';
41
+ export { Col, Row } from './components/Grid';
42
+ export type { ColProps, RowProps } from './components/Grid';
43
+ export { Content, Footer, Header, Layout, Sider } from './components/Layout';
44
+ export { Menu } from './components/Menu';
45
+ export type { MenuItem, MenuProps } from './components/Menu';
46
+ export { Pagination } from './components/Pagination';
47
+ export type { PaginationProps } from './components/Pagination';
48
+ export { Progress } from './components/Progress';
49
+ export type { ProgressProps } from './components/Progress';
50
+ export { Result } from './components/Result';
51
+ export type { ResultProps } from './components/Result';
52
+ export { Skeleton } from './components/Skeleton';
53
+ export type { SkeletonProps } from './components/Skeleton';
54
+ export { Space } from './components/Space';
55
+ export type { SpaceProps } from './components/Space';
56
+ export { Steps } from './components/Steps';
57
+ export type { StepItem, StepsProps } from './components/Steps';
58
+ export { Table } from './components/Table';
59
+ export type { TableColumn, TableProps } from './components/Table';
60
+ export { Tabs } from './components/Tabs';
61
+ export type { TabItem, TabsProps } from './components/Tabs';
62
+ export { FilterTabs } from './components/FilterTabs';
63
+ export type { FilterTabItem, FilterTabsProps } from './components/FilterTabs';
64
+ export { SectionHeading } from './components/SectionHeading';
65
+ export type { SectionHeadingProps } from './components/SectionHeading';
66
+ export { ActionLinkButton } from './components/ActionLinkButton';
67
+ export type { ActionLinkButtonProps } from './components/ActionLinkButton';
68
+ export { WhatsAppButton } from './components/WhatsAppButton';
69
+ export type { WhatsAppButtonProps } from './components/WhatsAppButton';
70
+ export { EventCarousel } from './components/EventCarousel';
71
+ export type { CarouselMedia, EventCarouselProps } from './components/EventCarousel';
72
+ export { WhatsAppIcon } from './icons';
73
+ export type { WhatsAppIconProps } from './icons';
74
+ export { Tag } from './components/Tag';
75
+ export type { TagProps } from './components/Tag';
76
+ export { Tooltip } from './components/Tooltip';
77
+ export type { TooltipProps } from './components/Tooltip';
78
+ export { Link, Paragraph, Text, Title } from './components/Typography';
79
+ export type { TextProps, TitleProps } from './components/Typography';
80
+ export { AreaChart, BarChart, DonutChart, DualAxisChart, GroupedBarChart, HorizontalBarChart, LineChart, PieChart, StackedBarChart, StackedBarLineChart, VerticalBarChart } from './components/Charts';
81
+ export type { CartesianChartProps, ChartSeries, CombinationChartProps, PieChartProps } from './components/Charts';