@vincisys/eyeson 0.1.4 → 0.2.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.
- package/dist/components/Button/Button.d.ts +33 -1
- package/dist/components/Button/Button.d.ts.map +1 -1
- package/dist/components/Calendar/Calendar.d.ts +42 -0
- package/dist/components/Calendar/Calendar.d.ts.map +1 -0
- package/dist/components/Card/Card.d.ts +67 -0
- package/dist/components/Card/Card.d.ts.map +1 -0
- package/dist/components/Checkbox/Checkbox.d.ts +9 -0
- package/dist/components/Checkbox/Checkbox.d.ts.map +1 -0
- package/dist/components/ComboBox/Combobox.d.ts +1 -1
- package/dist/components/ComboBox/Combobox.d.ts.map +1 -1
- package/dist/components/DatePicker/DatePicker.d.ts +94 -0
- package/dist/components/DatePicker/DatePicker.d.ts.map +1 -0
- package/dist/components/Dialog/Dialog.d.ts +146 -0
- package/dist/components/Dialog/Dialog.d.ts.map +1 -0
- package/dist/components/Empty/Empty.d.ts +75 -0
- package/dist/components/Empty/Empty.d.ts.map +1 -0
- package/dist/components/IconButton/IconButton.d.ts +19 -0
- package/dist/components/IconButton/IconButton.d.ts.map +1 -0
- package/dist/components/Input/Input.d.ts +1 -2
- package/dist/components/Input/Input.d.ts.map +1 -1
- package/dist/components/Select/Select.d.ts +48 -0
- package/dist/components/Select/Select.d.ts.map +1 -0
- package/dist/components/Table/Table.d.ts +144 -0
- package/dist/components/Table/Table.d.ts.map +1 -0
- package/dist/components/Tabs/Tabs.d.ts +95 -0
- package/dist/components/Tabs/Tabs.d.ts.map +1 -0
- package/dist/components/Text/Text.d.ts +119 -0
- package/dist/components/Text/Text.d.ts.map +1 -0
- package/dist/index.d.ts +31 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3089 -0
- package/dist/lib/field-styles.d.ts +19 -0
- package/dist/lib/field-styles.d.ts.map +1 -0
- package/dist/lib/utils.d.ts +3 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/styles/eyes-binding.css +71 -0
- package/dist/styles/eyes-standalone.css +2 -0
- package/dist/styles/eyes.css +1 -0
- package/dist/styles/theme-eyes.css +48 -0
- package/dist/utils/resolve-variant.d.ts +2 -0
- package/dist/utils/resolve-variant.d.ts.map +1 -0
- package/package.json +72 -87
- package/styles.css +1 -1
- package/README.md +0 -27
- package/dist/Button.d.ts +0 -5
- package/dist/Button.d.ts.map +0 -1
- package/dist/Button.js +0 -120
- package/dist/Combobox.d.ts +0 -3
- package/dist/Combobox.d.ts.map +0 -1
- package/dist/Combobox.js +0 -142
- package/dist/Input.d.ts +0 -3
- package/dist/Input.d.ts.map +0 -1
- package/dist/Input.js +0 -159
- package/dist/styles.css +0 -90
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { type SelectRootChangeEventDetails } from '@base-ui/react/select';
|
|
2
|
+
import { type ReactNode } from 'react';
|
|
3
|
+
export type SelectState = 'default' | 'valid' | 'invalid';
|
|
4
|
+
export type SelectSize = 'sm' | 'md' | 'lg';
|
|
5
|
+
export type SelectOption = {
|
|
6
|
+
label: string;
|
|
7
|
+
value: string;
|
|
8
|
+
};
|
|
9
|
+
export type SelectProps = {
|
|
10
|
+
/** Texto do label acima do campo. */
|
|
11
|
+
label?: string;
|
|
12
|
+
/** Mostra o label no “traço” do campo (estilo floating). */
|
|
13
|
+
floatingLabel?: boolean;
|
|
14
|
+
/** Lista de itens disponíveis para seleção. */
|
|
15
|
+
items: readonly SelectOption[];
|
|
16
|
+
/** Placeholder exibido quando nenhum item está selecionado. */
|
|
17
|
+
placeholder?: string;
|
|
18
|
+
/** Desativa o campo, impedindo interação. */
|
|
19
|
+
disabled?: boolean;
|
|
20
|
+
/** Indica que o campo é obrigatório, exibindo asterisco. */
|
|
21
|
+
required?: boolean;
|
|
22
|
+
/** Faz o campo ocupar 100% da largura do container. */
|
|
23
|
+
fluid?: boolean;
|
|
24
|
+
/** Estado visual do campo. */
|
|
25
|
+
state?: SelectState;
|
|
26
|
+
/** Tamanho do campo (altura, padding e tipografia). */
|
|
27
|
+
size?: SelectSize;
|
|
28
|
+
/** Texto auxiliar exibido abaixo do campo no estado padrão. */
|
|
29
|
+
supportingText?: string;
|
|
30
|
+
/** Mensagem exibida abaixo do campo no estado inválido. */
|
|
31
|
+
errorMessage?: string;
|
|
32
|
+
/** `id` nativo do input escondido. Gerado automaticamente se omitido. */
|
|
33
|
+
id?: string;
|
|
34
|
+
/** `name` nativo do input escondido, útil para submissão de formulários. */
|
|
35
|
+
name?: string;
|
|
36
|
+
/** Item atualmente selecionado (modo controlado). */
|
|
37
|
+
value?: SelectOption | null;
|
|
38
|
+
/** Item selecionado na montagem (modo não-controlado). */
|
|
39
|
+
defaultValue?: SelectOption | null;
|
|
40
|
+
/** Callback chamado quando o item selecionado muda. */
|
|
41
|
+
onValueChange?: (value: SelectOption | null, eventDetails: SelectRootChangeEventDetails) => void;
|
|
42
|
+
/** Renderização customizada de cada item na lista. */
|
|
43
|
+
renderItem?: (item: SelectOption) => ReactNode;
|
|
44
|
+
/** Classe CSS extra aplicada ao elemento raiz. */
|
|
45
|
+
className?: string;
|
|
46
|
+
};
|
|
47
|
+
export default function Select({ label, floatingLabel, items, placeholder, disabled, required, fluid, state, size, supportingText, errorMessage, id, name, value, defaultValue, onValueChange, renderItem, className, }: SelectProps): import("react").JSX.Element;
|
|
48
|
+
//# sourceMappingURL=Select.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/components/Select/Select.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,4BAA4B,EACjC,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAS,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAgB9C,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;AAC1D,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAiC5C,MAAM,MAAM,YAAY,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACzB,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,+CAA+C;IAC/C,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IAC/B,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uDAAuD;IACvD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,uDAAuD;IACvD,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,+DAA+D;IAC/D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,2DAA2D;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,4EAA4E;IAC5E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,KAAK,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAC5B,0DAA0D;IAC1D,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IACnC,uDAAuD;IACvD,aAAa,CAAC,EAAE,CACf,KAAK,EAAE,YAAY,GAAG,IAAI,EAC1B,YAAY,EAAE,4BAA4B,KACtC,IAAI,CAAC;IACV,sDAAsD;IACtD,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,SAAS,CAAC;IAC/C,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC9B,KAAe,EACf,aAAoB,EACpB,KAAK,EACL,WAAmC,EACnC,QAAgB,EAChB,QAAgB,EAChB,KAAa,EACb,KAAiB,EACjB,IAAW,EACX,cAAmB,EACnB,YAA2C,EAC3C,EAAE,EACF,IAAI,EACJ,KAAiB,EACjB,YAAwB,EACxB,aAAyB,EACzB,UAAsB,EACtB,SAAS,GACT,EAAE,WAAW,+BA6Hb"}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import type { CheckboxRoot } from '@base-ui/react/checkbox';
|
|
2
|
+
type CheckboxChangeEventDetails = CheckboxRoot.ChangeEventDetails;
|
|
3
|
+
/** Table layout and row variant definitions mapping names to their Tailwind classes. */
|
|
4
|
+
export declare const EDS_TABLE_VARIANTS: {
|
|
5
|
+
readonly layout: {
|
|
6
|
+
readonly auto: {
|
|
7
|
+
readonly classes: "";
|
|
8
|
+
readonly description: "Auto table layout - columns resize based on content";
|
|
9
|
+
};
|
|
10
|
+
readonly fixed: {
|
|
11
|
+
readonly classes: "table-fixed";
|
|
12
|
+
readonly description: "Fixed table layout - columns have equal width, controlled via colgroup";
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
readonly variant: {
|
|
16
|
+
readonly default: {
|
|
17
|
+
readonly classes: "";
|
|
18
|
+
readonly description: "Default row variant";
|
|
19
|
+
};
|
|
20
|
+
readonly selected: {
|
|
21
|
+
readonly classes: "bg-eds-blue-background/20";
|
|
22
|
+
readonly description: "Selected row variant";
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
readonly sticky: {
|
|
26
|
+
readonly left: {
|
|
27
|
+
readonly classes: "sticky left-0";
|
|
28
|
+
readonly description: "Pin column to the left edge of the scroll container";
|
|
29
|
+
};
|
|
30
|
+
readonly right: {
|
|
31
|
+
readonly classes: "sticky right-0";
|
|
32
|
+
readonly description: "Pin column to the right edge of the scroll container";
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
export type TableStickyColumn = keyof typeof EDS_TABLE_VARIANTS.sticky;
|
|
37
|
+
export declare const EDS_TABLE_DEFAULT_VARIANTS: {
|
|
38
|
+
readonly layout: "auto";
|
|
39
|
+
readonly variant: "default";
|
|
40
|
+
};
|
|
41
|
+
export type TableRowVariant = keyof typeof EDS_TABLE_VARIANTS.variant;
|
|
42
|
+
export type TableLayout = keyof typeof EDS_TABLE_VARIANTS.layout;
|
|
43
|
+
/**
|
|
44
|
+
* Table — semantic HTML table with styled rows, cells, and selection support.
|
|
45
|
+
*
|
|
46
|
+
* Compound component: `Table` (Root), `.Header`, `.Head`, `.Body`, `.Row`,
|
|
47
|
+
* `.Cell`, `.Footer`, `.CheckCell`, `.CheckHead`, `.ResizeHandle`.
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ```tsx
|
|
51
|
+
* <Table>
|
|
52
|
+
* <Table.Header>
|
|
53
|
+
* <Table.Row>
|
|
54
|
+
* <Table.CheckHead checked={allSelected} onCheckedChange={toggleAll} />
|
|
55
|
+
* <Table.Head>Nome</Table.Head>
|
|
56
|
+
* </Table.Row>
|
|
57
|
+
* </Table.Header>
|
|
58
|
+
* <Table.Body>
|
|
59
|
+
* {rows.map((row) => (
|
|
60
|
+
* <Table.Row key={row.id} variant={selected.has(row.id) ? "selected" : "default"}>
|
|
61
|
+
* <Table.CheckCell checked={selected.has(row.id)} onCheckedChange={() => toggle(row.id)} />
|
|
62
|
+
* <Table.Cell>{row.name}</Table.Cell>
|
|
63
|
+
* </Table.Row>
|
|
64
|
+
* ))}
|
|
65
|
+
* </Table.Body>
|
|
66
|
+
* </Table>
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
69
|
+
export declare const Table: import("react").ForwardRefExoticComponent<import("react").HTMLAttributes<HTMLTableElement> & {
|
|
70
|
+
/**
|
|
71
|
+
* Algoritmo de layout da tabela.
|
|
72
|
+
* - `"auto"` — colunas se ajustam ao conteúdo
|
|
73
|
+
* - `"fixed"` — colunas de largura igual, controladas via `<colgroup>`
|
|
74
|
+
* @default "auto"
|
|
75
|
+
*/
|
|
76
|
+
layout?: TableLayout;
|
|
77
|
+
/**
|
|
78
|
+
* Classe extra aplicada ao container que envolve a tabela (a borda, o
|
|
79
|
+
* arredondamento e o scroll horizontal vivem nele). Use para
|
|
80
|
+
* `max-height`/`overflow-y-auto` ao combinar com `Table.Header sticky`.
|
|
81
|
+
*/
|
|
82
|
+
containerClassName?: string;
|
|
83
|
+
} & import("react").RefAttributes<HTMLTableElement>> & {
|
|
84
|
+
Header: import("react").ForwardRefExoticComponent<import("react").HTMLAttributes<HTMLTableSectionElement> & {
|
|
85
|
+
variant?: "default" | "compact";
|
|
86
|
+
/**
|
|
87
|
+
* Faz a linha de cabeçalho grudar no topo do container com scroll.
|
|
88
|
+
* Requer que o elemento pai da tabela tenha altura limitada com
|
|
89
|
+
* `overflow-y: auto`.
|
|
90
|
+
*/
|
|
91
|
+
sticky?: boolean;
|
|
92
|
+
} & import("react").RefAttributes<HTMLTableSectionElement>>;
|
|
93
|
+
Head: import("react").ForwardRefExoticComponent<import("react").HTMLAttributes<HTMLTableCellElement> & {
|
|
94
|
+
/**
|
|
95
|
+
* Fixa esta célula de cabeçalho na borda esquerda ou direita do
|
|
96
|
+
* container com scroll. Adiciona `position: sticky`, um fundo opaco e
|
|
97
|
+
* um gradiente na borda interna. Colunas de cabeçalho fixas renderizam
|
|
98
|
+
* em `z-2` para ficarem acima das células normais e das células fixas
|
|
99
|
+
* do corpo (`z-1`).
|
|
100
|
+
*/
|
|
101
|
+
sticky?: TableStickyColumn;
|
|
102
|
+
} & import("react").RefAttributes<HTMLTableCellElement>>;
|
|
103
|
+
Row: import("react").ForwardRefExoticComponent<import("react").HTMLAttributes<HTMLTableRowElement> & {
|
|
104
|
+
variant?: TableRowVariant;
|
|
105
|
+
} & import("react").RefAttributes<HTMLTableRowElement>>;
|
|
106
|
+
Body: import("react").ForwardRefExoticComponent<import("react").HTMLAttributes<HTMLTableSectionElement> & import("react").RefAttributes<HTMLTableSectionElement>>;
|
|
107
|
+
Cell: import("react").ForwardRefExoticComponent<import("react").TdHTMLAttributes<HTMLTableCellElement> & {
|
|
108
|
+
/**
|
|
109
|
+
* Fixa esta célula na borda esquerda ou direita do container com
|
|
110
|
+
* scroll. Adiciona `position: sticky`, um fundo opaco e um gradiente
|
|
111
|
+
* na borda interna. Requer que o elemento pai da tabela tenha
|
|
112
|
+
* `overflow-x: auto`.
|
|
113
|
+
*/
|
|
114
|
+
sticky?: TableStickyColumn;
|
|
115
|
+
} & import("react").RefAttributes<HTMLTableCellElement>>;
|
|
116
|
+
CheckCell: import("react").ForwardRefExoticComponent<import("react").TdHTMLAttributes<HTMLTableCellElement> & {
|
|
117
|
+
checked?: boolean;
|
|
118
|
+
indeterminate?: boolean;
|
|
119
|
+
/**
|
|
120
|
+
* Chamado quando o estado marcado do checkbox muda. O segundo
|
|
121
|
+
* argumento opcional expõe os detalhes do evento vindos do Checkbox,
|
|
122
|
+
* seguindo a mesma assinatura do componente Checkbox.
|
|
123
|
+
*/
|
|
124
|
+
onCheckedChange?: (checked: boolean, eventDetails?: CheckboxChangeEventDetails) => void;
|
|
125
|
+
label?: string;
|
|
126
|
+
disabled?: boolean;
|
|
127
|
+
} & import("react").RefAttributes<HTMLTableCellElement>>;
|
|
128
|
+
CheckHead: import("react").ForwardRefExoticComponent<import("react").ThHTMLAttributes<HTMLTableCellElement> & {
|
|
129
|
+
checked?: boolean;
|
|
130
|
+
indeterminate?: boolean;
|
|
131
|
+
/**
|
|
132
|
+
* Chamado quando o estado marcado do checkbox muda. O segundo
|
|
133
|
+
* argumento opcional expõe os detalhes do evento vindos do Checkbox,
|
|
134
|
+
* seguindo a mesma assinatura do componente Checkbox.
|
|
135
|
+
*/
|
|
136
|
+
onCheckedChange?: (checked: boolean, eventDetails?: CheckboxChangeEventDetails) => void;
|
|
137
|
+
label?: string;
|
|
138
|
+
disabled?: boolean;
|
|
139
|
+
} & import("react").RefAttributes<HTMLTableCellElement>>;
|
|
140
|
+
Footer: import("react").ForwardRefExoticComponent<import("react").HTMLAttributes<HTMLTableSectionElement> & import("react").RefAttributes<HTMLTableSectionElement>>;
|
|
141
|
+
ResizeHandle: import("react").ForwardRefExoticComponent<import("react").HTMLAttributes<HTMLButtonElement> & import("react").RefAttributes<HTMLButtonElement>>;
|
|
142
|
+
};
|
|
143
|
+
export default Table;
|
|
144
|
+
//# sourceMappingURL=Table.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../src/components/Table/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAM5D,KAAK,0BAA0B,GAAG,YAAY,CAAC,kBAAkB,CAAC;AAElE,wFAAwF;AACxF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgCrB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,kBAAkB,CAAC,MAAM,CAAC;AAoDvE,eAAO,MAAM,0BAA0B;;;CAG7B,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,kBAAkB,CAAC,OAAO,CAAC;AACtE,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,kBAAkB,CAAC,MAAM,CAAC;AA6SjE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,KAAK;IA7ShB;;;;;OAKG;aACM,WAAW;IACpB;;;;OAIG;yBACkB,MAAM;;;kBAwCjB,SAAS,GAAG,SAAS;QAC/B;;;;WAIG;iBACM,OAAO;;;QAyBhB;;;;;;WAMG;iBACM,iBAAiB;;;kBAchB,eAAe;;;;QAyBzB;;;;;WAKG;iBACM,iBAAiB;;;kBAkDhB,OAAO;wBACD,OAAO;QACvB;;;;WAIG;0BACe,CACjB,OAAO,EAAE,OAAO,EAChB,YAAY,CAAC,EAAE,0BAA0B,KACrC,IAAI;gBACD,MAAM;mBACH,OAAO;;;kBA6BR,OAAO;wBACD,OAAO;QACvB;;;;WAIG;0BACe,CACjB,OAAO,EAAE,OAAO,EAChB,YAAY,CAAC,EAAE,0BAA0B,KACrC,IAAI;gBACD,MAAM;mBACH,OAAO;;;;CAyElB,CAAC;AAEH,eAAe,KAAK,CAAC"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import type { TabsTab } from '@base-ui/react/tabs';
|
|
3
|
+
/** Tabs variant definitions. */
|
|
4
|
+
export declare const EDS_TABS_VARIANTS: {
|
|
5
|
+
readonly variant: readonly ["segmented", "underline"];
|
|
6
|
+
readonly size: readonly ["md", "sm"];
|
|
7
|
+
};
|
|
8
|
+
export declare const EDS_TABS_DEFAULT_VARIANTS: {
|
|
9
|
+
readonly variant: "segmented";
|
|
10
|
+
readonly size: "md";
|
|
11
|
+
};
|
|
12
|
+
export interface EdsTabsVariantsProps {
|
|
13
|
+
/**
|
|
14
|
+
* Estilo das abas.
|
|
15
|
+
* - `"segmented"` — indicador em pílula sobre uma trilha preenchida
|
|
16
|
+
* - `"underline"` — indicador em sublinhado abaixo do texto da aba
|
|
17
|
+
* @default "segmented"
|
|
18
|
+
*/
|
|
19
|
+
variant?: (typeof EDS_TABS_VARIANTS.variant)[number];
|
|
20
|
+
/**
|
|
21
|
+
* Tamanho das abas.
|
|
22
|
+
* - `"md"` — tamanho padrão (h-9, text-base)
|
|
23
|
+
* - `"sm"` — tamanho compacto (h-6.5, text-xs) — combina com Input size="sm"
|
|
24
|
+
* @default "md"
|
|
25
|
+
*/
|
|
26
|
+
size?: (typeof EDS_TABS_VARIANTS.size)[number];
|
|
27
|
+
}
|
|
28
|
+
/** Configuração de uma aba dentro do componente Tabs. */
|
|
29
|
+
export type TabsItem = {
|
|
30
|
+
/** Identificador único da aba, usado como o valor controlado. */
|
|
31
|
+
value: string;
|
|
32
|
+
/** Conteúdo exibido no gatilho da aba. */
|
|
33
|
+
label: ReactNode;
|
|
34
|
+
/** Classes CSS adicionais para este gatilho de aba. */
|
|
35
|
+
className?: string;
|
|
36
|
+
/**
|
|
37
|
+
* Função ou elemento de render customizado para substituir o elemento da
|
|
38
|
+
* aba (ex.: para abas baseadas em link). Ao usar uma função, ela recebe
|
|
39
|
+
* as props a serem espalhadas no elemento e o estado da aba.
|
|
40
|
+
*/
|
|
41
|
+
render?: TabsTab.Props['render'];
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Props do componente Tabs.
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```tsx
|
|
48
|
+
* <Tabs
|
|
49
|
+
* tabs={[
|
|
50
|
+
* { value: "overview", label: "Visão geral" },
|
|
51
|
+
* { value: "settings", label: "Configurações" },
|
|
52
|
+
* ]}
|
|
53
|
+
* value={activeTab}
|
|
54
|
+
* onValueChange={setActiveTab}
|
|
55
|
+
* />
|
|
56
|
+
* ```
|
|
57
|
+
*/
|
|
58
|
+
export type TabsProps = EdsTabsVariantsProps & {
|
|
59
|
+
/** Lista de abas a serem renderizadas. */
|
|
60
|
+
tabs?: TabsItem[];
|
|
61
|
+
/** Valor controlado. Quando definido, o componente se torna controlado. */
|
|
62
|
+
value?: string;
|
|
63
|
+
/** Valor inicial selecionado no modo não controlado. Ignorado quando `value` é definido. */
|
|
64
|
+
selectedValue?: string;
|
|
65
|
+
/** Chamado quando a aba ativa muda. */
|
|
66
|
+
onValueChange?: (value: string) => void;
|
|
67
|
+
/**
|
|
68
|
+
* Quando `true`, as abas são ativadas imediatamente ao receber foco via
|
|
69
|
+
* setas do teclado. Quando `false` (padrão), as abas recebem foco mas
|
|
70
|
+
* exigem Enter/Espaço para ativar.
|
|
71
|
+
*/
|
|
72
|
+
activateOnFocus?: boolean;
|
|
73
|
+
/** Classes CSS adicionais para o elemento raiz. */
|
|
74
|
+
className?: string;
|
|
75
|
+
/** Classes CSS adicionais para a lista de abas. */
|
|
76
|
+
listClassName?: string;
|
|
77
|
+
/** Classes CSS adicionais para o indicador. */
|
|
78
|
+
indicatorClassName?: string;
|
|
79
|
+
};
|
|
80
|
+
/**
|
|
81
|
+
* Navegação por abas com estilo segmentado ou sublinhado.
|
|
82
|
+
* Construído sobre o Tabs do Base UI com indicador ativo animado.
|
|
83
|
+
*
|
|
84
|
+
* @example
|
|
85
|
+
* ```tsx
|
|
86
|
+
* <Tabs
|
|
87
|
+
* variant="segmented"
|
|
88
|
+
* tabs={[{ value: "tab1", label: "Aba 1" }, { value: "tab2", label: "Aba 2" }]}
|
|
89
|
+
* value={active}
|
|
90
|
+
* onValueChange={setActive}
|
|
91
|
+
* />
|
|
92
|
+
* ```
|
|
93
|
+
*/
|
|
94
|
+
export declare function Tabs({ tabs, value, selectedValue, onValueChange, activateOnFocus, className, listClassName, indicatorClassName, variant, size, }: TabsProps): import("react").JSX.Element | null;
|
|
95
|
+
//# sourceMappingURL=Tabs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../src/components/Tabs/Tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,EAMN,KAAK,SAAS,EACd,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAInD,gCAAgC;AAChC,eAAO,MAAM,iBAAiB;;;CAGpB,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;CAG5B,CAAC;AAGX,MAAM,WAAW,oBAAoB;IACpC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,CAAC,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;IACrD;;;;;OAKG;IACH,IAAI,CAAC,EAAE,CAAC,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;CAC/C;AAED,yDAAyD;AACzD,MAAM,MAAM,QAAQ,GAAG;IACtB,iEAAiE;IACjE,KAAK,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,KAAK,EAAE,SAAS,CAAC;IACjB,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;CACjC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,SAAS,GAAG,oBAAoB,GAAG;IAC9C,0CAA0C;IAC1C,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC;IAClB,2EAA2E;IAC3E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4FAA4F;IAC5F,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,uCAAuC;IACvC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+CAA+C;IAC/C,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,IAAI,CAAC,EACpB,IAAI,EACJ,KAAK,EACL,aAAa,EACb,aAAa,EACb,eAAe,EACf,SAAS,EACT,aAAa,EACb,kBAAkB,EAClB,OAA2C,EAC3C,IAAqC,GACrC,EAAE,SAAS,sCA4HX"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { type ComponentPropsWithoutRef, type ElementRef, type ForwardedRef, type ReactNode } from 'react';
|
|
2
|
+
/** Text variant and size definitions mapping names to their Tailwind classes. */
|
|
3
|
+
export declare const EDS_TEXT_VARIANTS: {
|
|
4
|
+
readonly variant: {
|
|
5
|
+
readonly heading1: {
|
|
6
|
+
readonly classes: "text-3xl font-semibold";
|
|
7
|
+
readonly description: "Large heading for page titles";
|
|
8
|
+
};
|
|
9
|
+
readonly heading2: {
|
|
10
|
+
readonly classes: "text-2xl font-semibold";
|
|
11
|
+
readonly description: "Medium heading for section titles";
|
|
12
|
+
};
|
|
13
|
+
readonly heading3: {
|
|
14
|
+
readonly classes: "text-lg font-semibold";
|
|
15
|
+
readonly description: "Small heading for subsections";
|
|
16
|
+
};
|
|
17
|
+
readonly body: {
|
|
18
|
+
readonly classes: "text-eds-neutral-main";
|
|
19
|
+
readonly description: "Default body text";
|
|
20
|
+
};
|
|
21
|
+
readonly secondary: {
|
|
22
|
+
readonly classes: "text-eds-neutral-elements";
|
|
23
|
+
readonly description: "Muted text for secondary information";
|
|
24
|
+
};
|
|
25
|
+
readonly success: {
|
|
26
|
+
readonly classes: "text-eds-green-dark";
|
|
27
|
+
readonly description: "Success state text";
|
|
28
|
+
};
|
|
29
|
+
readonly error: {
|
|
30
|
+
readonly classes: "text-eds-red-main";
|
|
31
|
+
readonly description: "Error state text";
|
|
32
|
+
};
|
|
33
|
+
readonly mono: {
|
|
34
|
+
readonly classes: "font-mono";
|
|
35
|
+
readonly description: "Monospace text for code";
|
|
36
|
+
};
|
|
37
|
+
readonly 'mono-secondary': {
|
|
38
|
+
readonly classes: "font-mono text-eds-neutral-elements";
|
|
39
|
+
readonly description: "Muted monospace text";
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
readonly size: {
|
|
43
|
+
readonly xs: {
|
|
44
|
+
readonly classes: "text-xs";
|
|
45
|
+
readonly description: "Extra small text";
|
|
46
|
+
};
|
|
47
|
+
readonly sm: {
|
|
48
|
+
readonly classes: "text-sm";
|
|
49
|
+
readonly description: "Small text";
|
|
50
|
+
};
|
|
51
|
+
readonly md: {
|
|
52
|
+
readonly classes: "text-base";
|
|
53
|
+
readonly description: "Default text size";
|
|
54
|
+
};
|
|
55
|
+
readonly lg: {
|
|
56
|
+
readonly classes: "text-lg";
|
|
57
|
+
readonly description: "Large text";
|
|
58
|
+
};
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
export declare const EDS_TEXT_DEFAULT_VARIANTS: {
|
|
62
|
+
readonly variant: "body";
|
|
63
|
+
readonly size: "md";
|
|
64
|
+
};
|
|
65
|
+
export type TextVariant = keyof typeof EDS_TEXT_VARIANTS.variant;
|
|
66
|
+
export type TextSize = keyof typeof EDS_TEXT_VARIANTS.size;
|
|
67
|
+
type HeadingVariant = 'heading1' | 'heading2' | 'heading3';
|
|
68
|
+
type CopyVariant = 'body' | 'secondary' | 'success' | 'error';
|
|
69
|
+
type MonoVariant = 'mono' | 'mono-secondary';
|
|
70
|
+
/** Elementos HTML válidos para a prop `as` do Text. */
|
|
71
|
+
export type TextElement = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'p' | 'span' | 'label' | 'dt' | 'dd' | 'li' | 'figcaption' | 'legend' | 'pre' | 'code' | 'em' | 'strong' | 'small';
|
|
72
|
+
type BaseTextProps<Element extends TextElement = 'span'> = Omit<ComponentPropsWithoutRef<Element>, 'className'> & {
|
|
73
|
+
className?: string;
|
|
74
|
+
children?: ReactNode;
|
|
75
|
+
};
|
|
76
|
+
/**
|
|
77
|
+
* Props do componente Text.
|
|
78
|
+
*
|
|
79
|
+
* Variantes de heading (`"heading1"`, `"heading2"`, `"heading3"`) exigem a
|
|
80
|
+
* prop `as` — assim você escolhe explicitamente o nível semântico do
|
|
81
|
+
* cabeçalho (`"h1"`, `"h2"` etc.) ou `"span"` para texto com estilo de
|
|
82
|
+
* heading que não é, de fato, um heading da página.
|
|
83
|
+
*
|
|
84
|
+
* @example
|
|
85
|
+
* ```tsx
|
|
86
|
+
* <Text variant="heading1" as="h1">Título da página</Text>
|
|
87
|
+
* <Text variant="body">Texto padrão.</Text>
|
|
88
|
+
* <Text variant="secondary" size="sm">Texto auxiliar</Text>
|
|
89
|
+
* <Text variant="error">Algo deu errado</Text>
|
|
90
|
+
* <Text variant="mono">EYS-4821</Text>
|
|
91
|
+
* ```
|
|
92
|
+
*/
|
|
93
|
+
export type TextProps<Variant extends TextVariant = 'body', Element extends TextElement = 'span'> = BaseTextProps<Element> & (Variant extends CopyVariant ? {
|
|
94
|
+
variant?: Variant;
|
|
95
|
+
bold?: boolean;
|
|
96
|
+
size?: TextSize;
|
|
97
|
+
truncate?: boolean;
|
|
98
|
+
/** Elemento renderizado. @default "p" */
|
|
99
|
+
as?: Element;
|
|
100
|
+
} : Variant extends MonoVariant ? {
|
|
101
|
+
variant?: Variant;
|
|
102
|
+
bold?: never;
|
|
103
|
+
size?: 'md' | 'lg';
|
|
104
|
+
truncate?: boolean;
|
|
105
|
+
/** Elemento renderizado. @default "span" */
|
|
106
|
+
as?: Element;
|
|
107
|
+
} : Variant extends HeadingVariant ? {
|
|
108
|
+
variant: Variant;
|
|
109
|
+
bold?: never;
|
|
110
|
+
size?: never;
|
|
111
|
+
truncate?: boolean;
|
|
112
|
+
/** Elemento semântico do heading (ex.: `"h1"`, `"h2"`) ou `"span"` se for decorativo. */
|
|
113
|
+
as: Element;
|
|
114
|
+
} : never);
|
|
115
|
+
export declare const Text: <Variant extends TextVariant = "body", Element extends TextElement = "span">(props: TextProps<Variant, Element> & {
|
|
116
|
+
ref?: ForwardedRef<ElementRef<Element>>;
|
|
117
|
+
}) => React.ReactElement;
|
|
118
|
+
export {};
|
|
119
|
+
//# sourceMappingURL=Text.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../../../src/components/Text/Text.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGN,KAAK,wBAAwB,EAC7B,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,MAAM,OAAO,CAAC;AAIf,iFAAiF;AACjF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6CpB,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;CAG5B,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,iBAAiB,CAAC,OAAO,CAAC;AACjE,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,iBAAiB,CAAC,IAAI,CAAC;AAE3D,KAAK,cAAc,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC;AAC3D,KAAK,WAAW,GAAG,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,CAAC;AAC9D,KAAK,WAAW,GAAG,MAAM,GAAG,gBAAgB,CAAC;AAE7C,uDAAuD;AACvD,MAAM,MAAM,WAAW,GACpB,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,GAAG,GACH,MAAM,GACN,OAAO,GACP,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,YAAY,GACZ,QAAQ,GACR,KAAK,GACL,MAAM,GACN,IAAI,GACJ,QAAQ,GACR,OAAO,CAAC;AAEX,KAAK,aAAa,CAAC,OAAO,SAAS,WAAW,GAAG,MAAM,IAAI,IAAI,CAC9D,wBAAwB,CAAC,OAAO,CAAC,EACjC,WAAW,CACX,GAAG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,SAAS,CACpB,OAAO,SAAS,WAAW,GAAG,MAAM,EACpC,OAAO,SAAS,WAAW,GAAG,MAAM,IACjC,aAAa,CAAC,OAAO,CAAC,GACzB,CAAC,OAAO,SAAS,WAAW,GACzB;IACA,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yCAAyC;IACzC,EAAE,CAAC,EAAE,OAAO,CAAC;CACb,GACA,OAAO,SAAS,WAAW,GAC1B;IACA,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4CAA4C;IAC5C,EAAE,CAAC,EAAE,OAAO,CAAC;CACb,GACA,OAAO,SAAS,cAAc,GAC7B;IACA,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yFAAyF;IACzF,EAAE,EAAE,OAAO,CAAC;CACZ,GACA,KAAK,CAAC,CAAC;AAgEb,eAAO,MAAM,IAAI,EAA2B,CAC3C,OAAO,SAAS,WAAW,GAAG,MAAM,EACpC,OAAO,SAAS,WAAW,GAAG,MAAM,EAEpC,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG;IACpC,GAAG,CAAC,EAAE,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;CACxC,KACG,KAAK,CAAC,YAAY,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export { default as Button } from './components/Button/Button';
|
|
2
|
+
export { COLORS } from './constants/colors';
|
|
3
|
+
export type { ButtonProps, ButtonColor, ButtonIconPosition, ButtonSize, ButtonVariant, } from './components/Button/Button';
|
|
4
|
+
export type { EdsSemanticColor } from './constants/colors';
|
|
5
|
+
export { default as Calendar } from './components/Calendar/Calendar';
|
|
6
|
+
export type { CalendarProps, CalendarEvent, } from './components/Calendar/Calendar';
|
|
7
|
+
export { Card } from './components/Card/Card';
|
|
8
|
+
export type { CardProps, CardHeaderProps, CardTitleProps, CardDescriptionProps, CardActionProps, CardContentProps, CardFooterProps, } from './components/Card/Card';
|
|
9
|
+
export { default as Checkbox } from './components/Checkbox/Checkbox';
|
|
10
|
+
export type { CheckboxProps } from './components/Checkbox/Checkbox';
|
|
11
|
+
export { default as Combobox } from './components/ComboBox/Combobox';
|
|
12
|
+
export type { ComboboxProps, ComboboxOption, ComboboxState, } from './components/ComboBox/Combobox';
|
|
13
|
+
export { default as DatePicker } from './components/DatePicker/DatePicker';
|
|
14
|
+
export type { DatePickerProps, DatePickerSingleProps, DatePickerRangeProps, DatePickerState, DatePickerSize, DatePickerMode, DatePickerPreset, DateRange, } from './components/DatePicker/DatePicker';
|
|
15
|
+
export { Dialog } from './components/Dialog/Dialog';
|
|
16
|
+
export type { DialogProps, DialogRootProps, DialogTriggerProps, DialogTitleProps, DialogDescriptionProps, DialogCloseProps, DialogSize, DialogRole, } from './components/Dialog/Dialog';
|
|
17
|
+
export { Empty } from './components/Empty/Empty';
|
|
18
|
+
export type { EmptyProps, EmptySize } from './components/Empty/Empty';
|
|
19
|
+
export { default as IconButton } from './components/IconButton/IconButton';
|
|
20
|
+
export type { IconButtonProps, IconButtonVariant, IconButtonSize, IconButtonColor, } from './components/IconButton/IconButton';
|
|
21
|
+
export { default as Input } from './components/Input/Input';
|
|
22
|
+
export type { InputProps } from './components/Input/Input';
|
|
23
|
+
export { default as Select } from './components/Select/Select';
|
|
24
|
+
export type { SelectProps, SelectOption, SelectState, SelectSize, } from './components/Select/Select';
|
|
25
|
+
export { Text } from './components/Text/Text';
|
|
26
|
+
export type { TextProps, TextVariant, TextSize, TextElement, } from './components/Text/Text';
|
|
27
|
+
export { Table } from './components/Table/Table';
|
|
28
|
+
export type { TableLayout, TableRowVariant, TableStickyColumn, } from './components/Table/Table';
|
|
29
|
+
export { Tabs } from './components/Tabs/Tabs';
|
|
30
|
+
export type { TabsProps, TabsItem, EdsTabsVariantsProps, } from './components/Tabs/Tabs';
|
|
31
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,YAAY,EACX,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,UAAU,EACV,aAAa,GACb,MAAM,4BAA4B,CAAC;AACpC,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACrE,YAAY,EACX,aAAa,EACb,aAAa,GACb,MAAM,gCAAgC,CAAC;AAExC,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,YAAY,EACX,SAAS,EACT,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,eAAe,GACf,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACrE,YAAY,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACrE,YAAY,EACX,aAAa,EACb,cAAc,EACd,aAAa,GACb,MAAM,gCAAgC,CAAC;AAExC,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAC3E,YAAY,EACX,eAAe,EACf,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,SAAS,GACT,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,YAAY,EACX,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,UAAU,EACV,UAAU,GACV,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAEtE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAC3E,YAAY,EACX,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,eAAe,GACf,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC5D,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAC/D,YAAY,EACX,WAAW,EACX,YAAY,EACZ,WAAW,EACX,UAAU,GACV,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,YAAY,EACX,SAAS,EACT,WAAW,EACX,QAAQ,EACR,WAAW,GACX,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,YAAY,EACX,WAAW,EACX,eAAe,EACf,iBAAiB,GACjB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,YAAY,EACX,SAAS,EACT,QAAQ,EACR,oBAAoB,GACpB,MAAM,wBAAwB,CAAC"}
|