@gyramais/gyra-design 0.2.58 → 0.2.60

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 (27) hide show
  1. package/dist/components/Guide/GuideChecklist.d.ts +49 -0
  2. package/dist/components/Guide/GuideChoice.d.ts +24 -0
  3. package/dist/components/Guide/GuideLauncher.d.ts +50 -0
  4. package/dist/components/Guide/GuideNewsList.d.ts +31 -0
  5. package/dist/components/Guide/SiderList.d.ts +47 -0
  6. package/dist/components/Guide/index.d.ts +5 -0
  7. package/dist/components/Guide/index.js +7 -0
  8. package/dist/components/Guide/index.js.map +1 -0
  9. package/dist/components/Guide/useRovingFocus.d.ts +3 -0
  10. package/dist/emails/balance-sheet-finalized/components/Guide/GuideChecklist.d.ts +49 -0
  11. package/dist/emails/balance-sheet-finalized/components/Guide/GuideChoice.d.ts +24 -0
  12. package/dist/emails/balance-sheet-finalized/components/Guide/GuideLauncher.d.ts +50 -0
  13. package/dist/emails/balance-sheet-finalized/components/Guide/GuideNewsList.d.ts +31 -0
  14. package/dist/emails/balance-sheet-finalized/components/Guide/SiderList.d.ts +47 -0
  15. package/dist/emails/balance-sheet-finalized/components/Guide/index.d.ts +5 -0
  16. package/dist/emails/balance-sheet-finalized/components/Guide/useRovingFocus.d.ts +3 -0
  17. package/dist/emails/balance-sheet-finalized/index.d.ts +1 -0
  18. package/dist/emails/email/components/Guide/GuideChecklist.d.ts +49 -0
  19. package/dist/emails/email/components/Guide/GuideChoice.d.ts +24 -0
  20. package/dist/emails/email/components/Guide/GuideLauncher.d.ts +50 -0
  21. package/dist/emails/email/components/Guide/GuideNewsList.d.ts +31 -0
  22. package/dist/emails/email/components/Guide/SiderList.d.ts +47 -0
  23. package/dist/emails/email/components/Guide/index.d.ts +5 -0
  24. package/dist/emails/email/components/Guide/useRovingFocus.d.ts +3 -0
  25. package/dist/emails/email/index.d.ts +1 -0
  26. package/dist/index.css +1271 -0
  27. package/package.json +1 -1
@@ -0,0 +1,3 @@
1
+ import React from "react";
2
+ declare const useRovingFocus: () => (event: React.KeyboardEvent<HTMLElement>) => void;
3
+ export { useRovingFocus };
@@ -0,0 +1,49 @@
1
+ import React from "react";
2
+ import "./index.css";
3
+ type GuideChecklistItem = {
4
+ key: string;
5
+ title: string;
6
+ description?: string;
7
+ /** Texto curto a direita, ex. "2 min". */
8
+ meta?: string;
9
+ icon?: React.ReactNode;
10
+ done?: boolean;
11
+ onClick: () => void;
12
+ };
13
+ type GuideChecklistProps = {
14
+ id?: string;
15
+ className?: string;
16
+ title: string;
17
+ subtitle?: string;
18
+ items: GuideChecklistItem[];
19
+ /** Mostra o botao de minimizar no cabecalho. */
20
+ onMinimize?: () => void;
21
+ /** Acoes do menu "Mais opcoes" (ex. Recomecar, Ocultar). */
22
+ menu?: Array<{
23
+ label: string;
24
+ onClick: () => void;
25
+ }>;
26
+ footer?: React.ReactNode;
27
+ /** Placeholder no formato do cartao enquanto os passos carregam. */
28
+ loading?: boolean;
29
+ /** Texto quando nao ha passo para mostrar. */
30
+ emptyText?: string;
31
+ /**
32
+ * Chaves que devem tocar a animacao de concluido uma vez ao montar. Serve
33
+ * para o passo concluido com o cartao fechado (ex. a pessoa clicou, foi
34
+ * para a tela e voltou): na proxima abertura o check ainda entra animado.
35
+ * So anima as chaves que ja chegam com `done`.
36
+ */
37
+ animateKeys?: string[];
38
+ };
39
+ /**
40
+ * Cartao "Primeiros passos" do rodape do menu lateral.
41
+ *
42
+ * Barra segmentada (um segmento por passo), passo concluido riscado com check
43
+ * azul, proximo passo em destaque com a descricao. Quando um item passa a
44
+ * concluido, o check entra com uma animacao curta e o leitor de tela anuncia
45
+ * o novo progresso. Sem animacao sob `prefers-reduced-motion`.
46
+ */
47
+ declare const GuideChecklist: ({ id, className, title, subtitle, items, onMinimize, menu, footer, loading, emptyText, animateKeys, }: GuideChecklistProps) => React.JSX.Element;
48
+ export { GuideChecklist };
49
+ export type { GuideChecklistProps, GuideChecklistItem };
@@ -0,0 +1,24 @@
1
+ import React from "react";
2
+ import "./index.css";
3
+ type GuideChoiceOption = {
4
+ key: string;
5
+ title: string;
6
+ description?: string;
7
+ icon?: React.ReactNode;
8
+ recommended?: boolean;
9
+ onClick: () => void;
10
+ };
11
+ type GuideChoiceProps = {
12
+ id?: string;
13
+ className?: string;
14
+ title: string;
15
+ subtitle?: string;
16
+ options: GuideChoiceOption[];
17
+ };
18
+ /**
19
+ * Corpo de modal ou popover para um passo com mais de um caminho: cartoes
20
+ * verticais, um por opcao, com "Recomendado" discreto.
21
+ */
22
+ declare const GuideChoice: ({ id, className, title, subtitle, options }: GuideChoiceProps) => React.JSX.Element;
23
+ export { GuideChoice };
24
+ export type { GuideChoiceProps, GuideChoiceOption };
@@ -0,0 +1,50 @@
1
+ import React from "react";
2
+ import "./index.css";
3
+ type GuideLauncherProps = {
4
+ id?: string;
5
+ className?: string;
6
+ icon?: React.ReactNode;
7
+ /** Nome fixo da entrada, ex. "Primeiros passos" ou "Novidades". */
8
+ label: string;
9
+ /** Progresso discreto "3/5" com um anel pequeno. */
10
+ progress?: {
11
+ done: number;
12
+ total: number;
13
+ };
14
+ /** Contador em badge (ex. novidades nao vistas). Zero esconde o badge.
15
+ Recolhido, vira so um ponto; o numero vai para o Tooltip. */
16
+ count?: number;
17
+ /** Menu lateral recolhido: so o icone, com Tooltip e ponto/contador. */
18
+ collapsed?: boolean;
19
+ /** O painel que este botao abre esta aberto. */
20
+ active?: boolean;
21
+ onClick: () => void;
22
+ } & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "onClick" | "id" | "className" | "children">;
23
+ /**
24
+ * Linha do rodape do menu lateral que abre um painel (checklist, novidades).
25
+ *
26
+ * Aceita ref e props extras para funcionar como gatilho `asChild` de um
27
+ * Popover: o Radix injeta ref, `aria-expanded` e o onClick composto.
28
+ */
29
+ declare const GuideLauncher: React.ForwardRefExoticComponent<{
30
+ id?: string;
31
+ className?: string;
32
+ icon?: React.ReactNode;
33
+ /** Nome fixo da entrada, ex. "Primeiros passos" ou "Novidades". */
34
+ label: string;
35
+ /** Progresso discreto "3/5" com um anel pequeno. */
36
+ progress?: {
37
+ done: number;
38
+ total: number;
39
+ };
40
+ /** Contador em badge (ex. novidades nao vistas). Zero esconde o badge.
41
+ Recolhido, vira so um ponto; o numero vai para o Tooltip. */
42
+ count?: number;
43
+ /** Menu lateral recolhido: so o icone, com Tooltip e ponto/contador. */
44
+ collapsed?: boolean;
45
+ /** O painel que este botao abre esta aberto. */
46
+ active?: boolean;
47
+ onClick: () => void;
48
+ } & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "className" | "children" | "id" | "onClick"> & React.RefAttributes<HTMLButtonElement>>;
49
+ export { GuideLauncher };
50
+ export type { GuideLauncherProps };
@@ -0,0 +1,31 @@
1
+ import React from "react";
2
+ import "./index.css";
3
+ type GuideNewsItem = {
4
+ key: string;
5
+ title: string;
6
+ summary?: string;
7
+ /** Data ja formatada para exibir, ex. "12 set". */
8
+ date?: string;
9
+ /** Miniatura (imagem ou poster do video) acima do titulo. */
10
+ media?: React.ReactNode;
11
+ unread?: boolean;
12
+ onClick: () => void;
13
+ };
14
+ type GuideNewsListProps = {
15
+ id?: string;
16
+ className?: string;
17
+ title: string;
18
+ items: GuideNewsItem[];
19
+ /** Mostra "Marcar todas como lidas" quando ha novidade nao vista. */
20
+ onMarkAllRead?: () => void;
21
+ emptyText?: string;
22
+ /** Placeholder no formato da lista enquanto as novidades carregam. */
23
+ loading?: boolean;
24
+ };
25
+ /**
26
+ * Lista "Novidades" do rodape do menu lateral: ponto azul nas nao vistas,
27
+ * resumo em ate duas linhas, data discreta e miniatura opcional.
28
+ */
29
+ declare const GuideNewsList: ({ id, className, title, items, onMarkAllRead, emptyText, loading, }: GuideNewsListProps) => React.JSX.Element;
30
+ export { GuideNewsList };
31
+ export type { GuideNewsListProps, GuideNewsItem };
@@ -0,0 +1,47 @@
1
+ import React from "react";
2
+ import "./index.css";
3
+ type SiderListItem = {
4
+ key: string;
5
+ label: string;
6
+ icon?: React.ReactNode;
7
+ active?: boolean;
8
+ onClick: () => void;
9
+ };
10
+ type SiderListProps = {
11
+ id?: string;
12
+ className?: string;
13
+ title: string;
14
+ /** Botao de icone no cabecalho, ex. "+" nova conversa. */
15
+ action?: {
16
+ icon: React.ReactNode;
17
+ label: string;
18
+ onClick: () => void;
19
+ };
20
+ items: SiderListItem[];
21
+ /** Link no fim da lista, ex. "Todas as conversas". */
22
+ more?: {
23
+ label: string;
24
+ onClick: () => void;
25
+ };
26
+ /** Menu recolhido: mostra so o botao de `action`, com Tooltip. */
27
+ collapsed?: boolean;
28
+ /**
29
+ * Icone do botao no menu recolhido (ex. balao de conversa). Sem ele, usa o
30
+ * `action.icon`, que costuma ser um "+" e nao diz o que o bloco e.
31
+ */
32
+ collapsedIcon?: React.ReactNode;
33
+ /** Linhas de placeholder enquanto a lista carrega. */
34
+ loading?: boolean;
35
+ /**
36
+ * Sem itens e sem `emptyText`, o bloco nao renderiza nada (some do menu).
37
+ * Com `emptyText`, mostra o titulo e o texto.
38
+ */
39
+ emptyText?: string;
40
+ };
41
+ /**
42
+ * Bloco de lista curta no menu lateral (ex. "Conversas com a GYRA+"):
43
+ * rotulo de grupo, acao no cabecalho, ate poucos itens e um "ver todos".
44
+ */
45
+ declare const SiderList: ({ id, className, title, action, items, more, collapsed, collapsedIcon, loading, emptyText, }: SiderListProps) => React.JSX.Element | null;
46
+ export { SiderList };
47
+ export type { SiderListProps, SiderListItem };
@@ -0,0 +1,5 @@
1
+ export * from "./GuideLauncher";
2
+ export * from "./GuideChecklist";
3
+ export * from "./GuideNewsList";
4
+ export * from "./GuideChoice";
5
+ export * from "./SiderList";
@@ -0,0 +1,3 @@
1
+ import React from "react";
2
+ declare const useRovingFocus: () => (event: React.KeyboardEvent<HTMLElement>) => void;
3
+ export { useRovingFocus };
@@ -22,6 +22,7 @@ import "./components/Filter/index.css";
22
22
  import "./components/FloatingCard/index.css";
23
23
  import "./components/Form/index.css";
24
24
  import "./components/Gauge/index.css";
25
+ import "./components/Guide/index.css";
25
26
  import "./components/HoverCard/index.css";
26
27
  import "./components/Icon/index.css";
27
28
  import "./components/IconDisplay/index.css";
@@ -0,0 +1,49 @@
1
+ import React from "react";
2
+ import "./index.css";
3
+ type GuideChecklistItem = {
4
+ key: string;
5
+ title: string;
6
+ description?: string;
7
+ /** Texto curto a direita, ex. "2 min". */
8
+ meta?: string;
9
+ icon?: React.ReactNode;
10
+ done?: boolean;
11
+ onClick: () => void;
12
+ };
13
+ type GuideChecklistProps = {
14
+ id?: string;
15
+ className?: string;
16
+ title: string;
17
+ subtitle?: string;
18
+ items: GuideChecklistItem[];
19
+ /** Mostra o botao de minimizar no cabecalho. */
20
+ onMinimize?: () => void;
21
+ /** Acoes do menu "Mais opcoes" (ex. Recomecar, Ocultar). */
22
+ menu?: Array<{
23
+ label: string;
24
+ onClick: () => void;
25
+ }>;
26
+ footer?: React.ReactNode;
27
+ /** Placeholder no formato do cartao enquanto os passos carregam. */
28
+ loading?: boolean;
29
+ /** Texto quando nao ha passo para mostrar. */
30
+ emptyText?: string;
31
+ /**
32
+ * Chaves que devem tocar a animacao de concluido uma vez ao montar. Serve
33
+ * para o passo concluido com o cartao fechado (ex. a pessoa clicou, foi
34
+ * para a tela e voltou): na proxima abertura o check ainda entra animado.
35
+ * So anima as chaves que ja chegam com `done`.
36
+ */
37
+ animateKeys?: string[];
38
+ };
39
+ /**
40
+ * Cartao "Primeiros passos" do rodape do menu lateral.
41
+ *
42
+ * Barra segmentada (um segmento por passo), passo concluido riscado com check
43
+ * azul, proximo passo em destaque com a descricao. Quando um item passa a
44
+ * concluido, o check entra com uma animacao curta e o leitor de tela anuncia
45
+ * o novo progresso. Sem animacao sob `prefers-reduced-motion`.
46
+ */
47
+ declare const GuideChecklist: ({ id, className, title, subtitle, items, onMinimize, menu, footer, loading, emptyText, animateKeys, }: GuideChecklistProps) => React.JSX.Element;
48
+ export { GuideChecklist };
49
+ export type { GuideChecklistProps, GuideChecklistItem };
@@ -0,0 +1,24 @@
1
+ import React from "react";
2
+ import "./index.css";
3
+ type GuideChoiceOption = {
4
+ key: string;
5
+ title: string;
6
+ description?: string;
7
+ icon?: React.ReactNode;
8
+ recommended?: boolean;
9
+ onClick: () => void;
10
+ };
11
+ type GuideChoiceProps = {
12
+ id?: string;
13
+ className?: string;
14
+ title: string;
15
+ subtitle?: string;
16
+ options: GuideChoiceOption[];
17
+ };
18
+ /**
19
+ * Corpo de modal ou popover para um passo com mais de um caminho: cartoes
20
+ * verticais, um por opcao, com "Recomendado" discreto.
21
+ */
22
+ declare const GuideChoice: ({ id, className, title, subtitle, options }: GuideChoiceProps) => React.JSX.Element;
23
+ export { GuideChoice };
24
+ export type { GuideChoiceProps, GuideChoiceOption };
@@ -0,0 +1,50 @@
1
+ import React from "react";
2
+ import "./index.css";
3
+ type GuideLauncherProps = {
4
+ id?: string;
5
+ className?: string;
6
+ icon?: React.ReactNode;
7
+ /** Nome fixo da entrada, ex. "Primeiros passos" ou "Novidades". */
8
+ label: string;
9
+ /** Progresso discreto "3/5" com um anel pequeno. */
10
+ progress?: {
11
+ done: number;
12
+ total: number;
13
+ };
14
+ /** Contador em badge (ex. novidades nao vistas). Zero esconde o badge.
15
+ Recolhido, vira so um ponto; o numero vai para o Tooltip. */
16
+ count?: number;
17
+ /** Menu lateral recolhido: so o icone, com Tooltip e ponto/contador. */
18
+ collapsed?: boolean;
19
+ /** O painel que este botao abre esta aberto. */
20
+ active?: boolean;
21
+ onClick: () => void;
22
+ } & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "onClick" | "id" | "className" | "children">;
23
+ /**
24
+ * Linha do rodape do menu lateral que abre um painel (checklist, novidades).
25
+ *
26
+ * Aceita ref e props extras para funcionar como gatilho `asChild` de um
27
+ * Popover: o Radix injeta ref, `aria-expanded` e o onClick composto.
28
+ */
29
+ declare const GuideLauncher: React.ForwardRefExoticComponent<{
30
+ id?: string;
31
+ className?: string;
32
+ icon?: React.ReactNode;
33
+ /** Nome fixo da entrada, ex. "Primeiros passos" ou "Novidades". */
34
+ label: string;
35
+ /** Progresso discreto "3/5" com um anel pequeno. */
36
+ progress?: {
37
+ done: number;
38
+ total: number;
39
+ };
40
+ /** Contador em badge (ex. novidades nao vistas). Zero esconde o badge.
41
+ Recolhido, vira so um ponto; o numero vai para o Tooltip. */
42
+ count?: number;
43
+ /** Menu lateral recolhido: so o icone, com Tooltip e ponto/contador. */
44
+ collapsed?: boolean;
45
+ /** O painel que este botao abre esta aberto. */
46
+ active?: boolean;
47
+ onClick: () => void;
48
+ } & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "className" | "children" | "id" | "onClick"> & React.RefAttributes<HTMLButtonElement>>;
49
+ export { GuideLauncher };
50
+ export type { GuideLauncherProps };
@@ -0,0 +1,31 @@
1
+ import React from "react";
2
+ import "./index.css";
3
+ type GuideNewsItem = {
4
+ key: string;
5
+ title: string;
6
+ summary?: string;
7
+ /** Data ja formatada para exibir, ex. "12 set". */
8
+ date?: string;
9
+ /** Miniatura (imagem ou poster do video) acima do titulo. */
10
+ media?: React.ReactNode;
11
+ unread?: boolean;
12
+ onClick: () => void;
13
+ };
14
+ type GuideNewsListProps = {
15
+ id?: string;
16
+ className?: string;
17
+ title: string;
18
+ items: GuideNewsItem[];
19
+ /** Mostra "Marcar todas como lidas" quando ha novidade nao vista. */
20
+ onMarkAllRead?: () => void;
21
+ emptyText?: string;
22
+ /** Placeholder no formato da lista enquanto as novidades carregam. */
23
+ loading?: boolean;
24
+ };
25
+ /**
26
+ * Lista "Novidades" do rodape do menu lateral: ponto azul nas nao vistas,
27
+ * resumo em ate duas linhas, data discreta e miniatura opcional.
28
+ */
29
+ declare const GuideNewsList: ({ id, className, title, items, onMarkAllRead, emptyText, loading, }: GuideNewsListProps) => React.JSX.Element;
30
+ export { GuideNewsList };
31
+ export type { GuideNewsListProps, GuideNewsItem };
@@ -0,0 +1,47 @@
1
+ import React from "react";
2
+ import "./index.css";
3
+ type SiderListItem = {
4
+ key: string;
5
+ label: string;
6
+ icon?: React.ReactNode;
7
+ active?: boolean;
8
+ onClick: () => void;
9
+ };
10
+ type SiderListProps = {
11
+ id?: string;
12
+ className?: string;
13
+ title: string;
14
+ /** Botao de icone no cabecalho, ex. "+" nova conversa. */
15
+ action?: {
16
+ icon: React.ReactNode;
17
+ label: string;
18
+ onClick: () => void;
19
+ };
20
+ items: SiderListItem[];
21
+ /** Link no fim da lista, ex. "Todas as conversas". */
22
+ more?: {
23
+ label: string;
24
+ onClick: () => void;
25
+ };
26
+ /** Menu recolhido: mostra so o botao de `action`, com Tooltip. */
27
+ collapsed?: boolean;
28
+ /**
29
+ * Icone do botao no menu recolhido (ex. balao de conversa). Sem ele, usa o
30
+ * `action.icon`, que costuma ser um "+" e nao diz o que o bloco e.
31
+ */
32
+ collapsedIcon?: React.ReactNode;
33
+ /** Linhas de placeholder enquanto a lista carrega. */
34
+ loading?: boolean;
35
+ /**
36
+ * Sem itens e sem `emptyText`, o bloco nao renderiza nada (some do menu).
37
+ * Com `emptyText`, mostra o titulo e o texto.
38
+ */
39
+ emptyText?: string;
40
+ };
41
+ /**
42
+ * Bloco de lista curta no menu lateral (ex. "Conversas com a GYRA+"):
43
+ * rotulo de grupo, acao no cabecalho, ate poucos itens e um "ver todos".
44
+ */
45
+ declare const SiderList: ({ id, className, title, action, items, more, collapsed, collapsedIcon, loading, emptyText, }: SiderListProps) => React.JSX.Element | null;
46
+ export { SiderList };
47
+ export type { SiderListProps, SiderListItem };
@@ -0,0 +1,5 @@
1
+ export * from "./GuideLauncher";
2
+ export * from "./GuideChecklist";
3
+ export * from "./GuideNewsList";
4
+ export * from "./GuideChoice";
5
+ export * from "./SiderList";
@@ -0,0 +1,3 @@
1
+ import React from "react";
2
+ declare const useRovingFocus: () => (event: React.KeyboardEvent<HTMLElement>) => void;
3
+ export { useRovingFocus };
@@ -22,6 +22,7 @@ import "./components/Filter/index.css";
22
22
  import "./components/FloatingCard/index.css";
23
23
  import "./components/Form/index.css";
24
24
  import "./components/Gauge/index.css";
25
+ import "./components/Guide/index.css";
25
26
  import "./components/HoverCard/index.css";
26
27
  import "./components/Icon/index.css";
27
28
  import "./components/IconDisplay/index.css";