@s_mart/minha-conta 15.0.2 → 16.0.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/api/index.d.ts +30 -0
- package/dist/api/queries.d.ts +92 -0
- package/dist/components/loading/loading.d.ts +4 -0
- package/dist/components/meuPlanoInfo/components/buttonPlanos.d.ts +3 -0
- package/dist/components/meuPlanoInfo/components/detalhes.d.ts +10 -0
- package/dist/components/meuPlanoInfo/components/skeleton.d.ts +1 -0
- package/dist/components/meuPlanoInfo/meuPlanoInfo.d.ts +2 -0
- package/dist/components/meuPlanoInfo/meuPlanoInfo.static.d.ts +2 -0
- package/dist/components/meuPlanoInfo/meuPlanoInfo.types.d.ts +16 -0
- package/dist/components/meuPlanoInfo/useMeuPlanoInfo.d.ts +15 -0
- package/dist/components/planosDialog/contratarRecursos/confirmacaoDialog/confirmacaoDialog.d.ts +5 -0
- package/dist/components/planosDialog/contratarRecursos/confirmacaoDialog/useConfirmacaoDialog.d.ts +15 -0
- package/dist/components/planosDialog/contratarRecursos/contratarRecursos.d.ts +1 -0
- package/dist/components/planosDialog/contratarRecursos/listaRecursos/listaRecursos.d.ts +1 -0
- package/dist/components/planosDialog/contratarRecursos/listaRecursos/listaRecursos.styles.d.ts +5 -0
- package/dist/components/planosDialog/contratarRecursos/planoShowcase/planoShowcase.d.ts +1 -0
- package/dist/components/planosDialog/contratarRecursos/planoShowcase/planoShowcase.styles.d.ts +7 -0
- package/dist/components/planosDialog/contratarRecursos/planoShowcase/usePlanoShowcase.d.ts +7 -0
- package/dist/components/planosDialog/emptyState/emptyState.d.ts +1 -0
- package/dist/components/planosDialog/listagemPlanos/listagemPlanos.d.ts +2 -0
- package/dist/components/planosDialog/listagemPlanos/listagemPlanos.styles.d.ts +5 -0
- package/dist/components/planosDialog/listagemPlanos/listagemPlanos.types.d.ts +4 -0
- package/dist/components/planosDialog/listagemPlanos/plano/plano.d.ts +10 -0
- package/dist/components/planosDialog/listagemPlanos/plano/plano.styles.d.ts +8 -0
- package/dist/components/planosDialog/listagemPlanos/useListagemPlanos.d.ts +12 -0
- package/dist/components/planosDialog/loading/loading.d.ts +1 -0
- package/dist/components/planosDialog/planosDialog.d.ts +2 -0
- package/dist/components/planosDialog/planosDialog.static.d.ts +4 -0
- package/dist/components/planosDialog/planosDialog.types.d.ts +26 -0
- package/dist/components/planosDialog/planosDialogExport.d.ts +2 -0
- package/dist/components/planosDialog/usePlanosDialog.d.ts +15 -0
- package/dist/components/recursosDialog/confirmacaoAdquirirDialog/confirmacaoAdquirirDialog.d.ts +2 -0
- package/dist/components/recursosDialog/confirmacaoAdquirirDialog/confirmacaoAdquirirDialog.types.d.ts +6 -0
- package/dist/components/recursosDialog/confirmacaoRemoverDialog/confirmacaoRemoverDialog.d.ts +2 -0
- package/dist/components/recursosDialog/confirmacaoRemoverDialog/confirmacaoRemoverDialog.types.d.ts +6 -0
- package/dist/components/recursosDialog/emptyState/emptyState.d.ts +1 -0
- package/dist/components/recursosDialog/gifDialog/gifDialog.d.ts +2 -0
- package/dist/components/recursosDialog/gifDialog/gifDialog.styles.d.ts +1 -0
- package/dist/components/recursosDialog/gifDialog/gifDialog.types.d.ts +7 -0
- package/dist/components/recursosDialog/recurso/recurso.d.ts +2 -0
- package/dist/components/recursosDialog/recurso/recurso.styles.d.ts +14 -0
- package/dist/components/recursosDialog/recurso/recurso.types.d.ts +8 -0
- package/dist/components/recursosDialog/recursosDialog.d.ts +2 -0
- package/dist/components/recursosDialog/recursosDialog.types.d.ts +25 -0
- package/dist/components/recursosDialog/recursosDialogExport.d.ts +2 -0
- package/dist/components/recursosDialog/useRecursosDialog.d.ts +17 -0
- package/dist/context/minhaContaProvider.d.ts +99 -0
- package/dist/context/minhaContaQueryProvider.d.ts +2 -0
- package/dist/context/notificationProvider.d.ts +3 -0
- package/dist/context/notificationProvider.types.d.ts +8 -0
- package/dist/helpers/contrateApi/contrateApi.types.d.ts +45 -0
- package/dist/helpers/contrateApi/geralApi.types.d.ts +29 -0
- package/dist/helpers/contrateApi/meusDadosApi.types.d.ts +175 -0
- package/dist/helpers/types.d.ts +3 -0
- package/dist/hooks/useDialog.d.ts +4 -0
- package/dist/hooks/useToken.d.ts +2 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.mjs +3388 -83
- package/dist/index.mjs.map +1 -0
- package/dist/screens/confirmarEmail/api/index.d.ts +7 -0
- package/dist/screens/confirmarEmail/confirmarEmail.d.ts +2 -0
- package/dist/screens/confirmarEmail/confirmarEmail.styles.d.ts +6 -0
- package/dist/screens/confirmarEmail/confirmarEmail.types.d.ts +9 -0
- package/dist/screens/confirmarEmail/useConfirmarEmail.d.ts +2 -0
- package/dist/screens/meuPlano/faturas/alterarEmailCobrancaDialog/alterarEmailCobrancaDialog.d.ts +4 -0
- package/dist/screens/meuPlano/faturas/alterarEmailCobrancaDialog/alterarEmailCobrancaDialog.types.d.ts +8 -0
- package/dist/screens/meuPlano/faturas/alterarEmailCobrancaDialog/useAlterarEmailCobrancaDialog.d.ts +19 -0
- package/dist/screens/meuPlano/faturas/emptyState/emptyState.d.ts +1 -0
- package/dist/screens/meuPlano/faturas/faturas.d.ts +1 -0
- package/dist/screens/meuPlano/faturas/useFaturas.d.ts +32 -0
- package/dist/screens/meuPlano/faturas/useProximaFatura.d.ts +1 -0
- package/dist/screens/meuPlano/meuPlano.d.ts +3 -0
- package/dist/screens/meuPlano/termosDeUso/termosDeUso.d.ts +5 -0
- package/dist/screens/meuPlano/useMeuPlano.d.ts +5 -0
- package/dist/screens/minhaConta/minhaConta.d.ts +2 -0
- package/dist/screens/minhaConta/minhaConta.types.d.ts +19 -0
- package/dist/screens/minhaConta/useMinhaConta.d.ts +6 -0
- package/dist/screens/minhaEmpresa/dadosEmpresa/dadosEmpresa.d.ts +1 -0
- package/dist/screens/minhaEmpresa/dadosEmpresa/dadosEmpresa.styles.d.ts +1 -0
- package/dist/screens/minhaEmpresa/dadosEmpresa/useDadosEmpresa.d.ts +15 -0
- package/dist/screens/minhaEmpresa/dadosEndereco/dadosEndereco.d.ts +1 -0
- package/dist/screens/minhaEmpresa/dadosEndereco/useDadosEndereco.d.ts +10 -0
- package/dist/screens/minhaEmpresa/dadosResponsavel/dadosResponsavel.d.ts +1 -0
- package/dist/screens/minhaEmpresa/header/header.d.ts +1 -0
- package/dist/screens/minhaEmpresa/header/useHeader.d.ts +14 -0
- package/dist/screens/minhaEmpresa/minhaEmpresa.d.ts +3 -0
- package/dist/screens/minhaEmpresa/minhaEmpresa.helpers.d.ts +4 -0
- package/dist/screens/minhaEmpresa/minhaEmpresa.types.d.ts +42 -0
- package/dist/screens/minhaEmpresa/useMinhaEmpresa.d.ts +6 -0
- package/dist/shared/styles.d.ts +7 -0
- package/dist/shared/types.d.ts +4 -0
- package/dist/store/app/app.static.d.ts +2 -0
- package/dist/store/app/app.types.d.ts +9 -0
- package/dist/store/app/useAppStore.d.ts +2 -0
- package/dist/store/minhaConta/createMinhaContaStore.d.ts +2 -0
- package/dist/store/minhaConta/minhaConta.static.d.ts +2 -0
- package/dist/store/minhaConta/minhaConta.types.d.ts +226 -0
- package/dist/types/index.d.ts +16 -0
- package/dist/utils/getPeriodicidadeLabel.d.ts +6 -0
- package/dist/utils/openWhatsapp.d.ts +2 -0
- package/dist/utils/parseError.d.ts +2 -0
- package/package.json +55 -69
- package/dist/index.d.mts +0 -618
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { AxiosInstance } from 'axios';
|
|
2
|
+
export declare class ApiConfirmarEmail {
|
|
3
|
+
private axiosSistemaPublico;
|
|
4
|
+
constructor(axiosInstance: AxiosInstance);
|
|
5
|
+
confirmarEmailEmpresa(token: string): Promise<import('axios').AxiosResponse<any, any, {}, any>>;
|
|
6
|
+
confirmarEmailResponsavel(token: string): Promise<import('axios').AxiosResponse<any, any, {}, any>>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const SBody: import('@emotion/styled').StyledComponent<import('@mui/material').GridBaseProps & {
|
|
2
|
+
sx?: import('@mui/system').SxProps<import('@mui/material').Theme> | undefined;
|
|
3
|
+
} & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "sx" | keyof import('@mui/material').GridBaseProps> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
|
|
4
|
+
export declare const SCardGrid: import('@emotion/styled').StyledComponent<import('@mui/material').GridBaseProps & {
|
|
5
|
+
sx?: import('@mui/system').SxProps<import('@mui/material').Theme> | undefined;
|
|
6
|
+
} & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "sx" | keyof import('@mui/material').GridBaseProps> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { NotificationProviderProps } from '../../context/notificationProvider.types';
|
|
2
|
+
import { ApiConfirmarEmail } from './api';
|
|
3
|
+
export interface ConfirmarEmailProps extends Pick<NotificationProviderProps, 'onNotification'> {
|
|
4
|
+
api: ApiConfirmarEmail;
|
|
5
|
+
tipo: ConfirmarEmailTipo;
|
|
6
|
+
imagem: string;
|
|
7
|
+
onSubmit: () => void;
|
|
8
|
+
}
|
|
9
|
+
export type ConfirmarEmailTipo = 'empresa' | 'responsável';
|
package/dist/screens/meuPlano/faturas/alterarEmailCobrancaDialog/useAlterarEmailCobrancaDialog.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { FormEventHandler } from 'react';
|
|
2
|
+
import { AlterarEmailCobrancaDialogFormValues, AlterarEmailCobrancaDialogProps } from './alterarEmailCobrancaDialog.types';
|
|
3
|
+
export declare const useAlterarEmailCobrancaDialog: ({ onClose }: AlterarEmailCobrancaDialogProps) => {
|
|
4
|
+
fields: ({
|
|
5
|
+
email: string;
|
|
6
|
+
} & Record<"id", string> & {
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
})[];
|
|
9
|
+
remove: import('react-hook-form').UseFieldArrayRemove;
|
|
10
|
+
append: import('react-hook-form').UseFieldArrayAppend<AlterarEmailCobrancaDialogFormValues, "emails">;
|
|
11
|
+
maxFields: boolean;
|
|
12
|
+
handleFormSubmit: FormEventHandler;
|
|
13
|
+
emailUnico: (index: number) => {
|
|
14
|
+
validate: {
|
|
15
|
+
emailUnico: (value: string) => "E-mail já inserido" | undefined;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
form: import('react-hook-form').UseFormReturn<AlterarEmailCobrancaDialogFormValues, any, AlterarEmailCobrancaDialogFormValues>;
|
|
19
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function EmptyState(): import("react").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function Faturas(): import("react").JSX.Element;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { GridColDef } from '@mui/x-data-grid';
|
|
2
|
+
import { ItemListarCobrancasResponse } from '../../../helpers/contrateApi/meusDadosApi.types';
|
|
3
|
+
type Acao = {
|
|
4
|
+
label: string;
|
|
5
|
+
onClick: () => void;
|
|
6
|
+
variant: 'contained' | 'outlined' | 'text';
|
|
7
|
+
};
|
|
8
|
+
declare const useFaturas: () => {
|
|
9
|
+
cobrancas: NoInfer<ItemListarCobrancasResponse[]> | undefined;
|
|
10
|
+
tableStatus: "loading" | "empty" | null;
|
|
11
|
+
tableColumns: GridColDef<ItemListarCobrancasResponse>[];
|
|
12
|
+
listaEmailsCobranca: string | undefined;
|
|
13
|
+
getActions: (row: ItemListarCobrancasResponse) => Acao[];
|
|
14
|
+
getSituacao: (row: ItemListarCobrancasResponse) => {
|
|
15
|
+
label: string;
|
|
16
|
+
color: "#F5917F";
|
|
17
|
+
} | {
|
|
18
|
+
label: string;
|
|
19
|
+
color: "#EEEEEE";
|
|
20
|
+
} | {
|
|
21
|
+
label: string;
|
|
22
|
+
color: "#A5D770";
|
|
23
|
+
} | {
|
|
24
|
+
label: string;
|
|
25
|
+
color: "#CACACA";
|
|
26
|
+
} | {
|
|
27
|
+
label: string;
|
|
28
|
+
color: "#FFFFFF";
|
|
29
|
+
};
|
|
30
|
+
loading: boolean;
|
|
31
|
+
};
|
|
32
|
+
export default useFaturas;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const useProximaFatura: () => import("react").JSX.Element | null;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { TextFieldProps } from '@s_mart/form';
|
|
2
|
+
import { ApiMinhaConta } from '../../api';
|
|
3
|
+
import { NotificationProviderProps } from '../../context/notificationProvider.types';
|
|
4
|
+
import { MinhaContaStoreState } from '../../store/minhaConta/minhaConta.types';
|
|
5
|
+
type TextFieldSlotProps = Partial<Omit<TextFieldProps, 'name'>>;
|
|
6
|
+
export type MinhaContaSlotProps = {
|
|
7
|
+
/**
|
|
8
|
+
* @prop label - `"Nome fantasia"`
|
|
9
|
+
* @prop required - `true`
|
|
10
|
+
* @prop rules - `composeValidators([required, maxLength(60)])`
|
|
11
|
+
*/
|
|
12
|
+
textFieldEmpresaEmail?: TextFieldSlotProps;
|
|
13
|
+
};
|
|
14
|
+
export type MinhaContaProps = Omit<MinhaContaStoreState, 'ready' | 'usuario'> & Pick<NotificationProviderProps, 'onNotification'> & {
|
|
15
|
+
slotProps?: MinhaContaSlotProps;
|
|
16
|
+
} & {
|
|
17
|
+
api: ApiMinhaConta;
|
|
18
|
+
};
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const useMinhaConta: () => {
|
|
2
|
+
esconderTabMeuPlano: boolean | undefined;
|
|
3
|
+
tabAtiva: import('../../store/minhaConta/minhaConta.types').Tabs;
|
|
4
|
+
setTabAtiva: (tab: import('../../store/minhaConta/minhaConta.types').Tabs) => void;
|
|
5
|
+
fullWidthTabs: boolean;
|
|
6
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function DadosEmpresa(): import("react").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const SHelperRNTRC: import('@emotion/styled').StyledComponent<import('@mui/material').TypographyOwnProps & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "className" | "style" | "classes" | "children" | "sx" | "variant" | "color" | "align" | "gutterBottom" | "noWrap" | "variantMapping"> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
declare const useDadosEmpresa: () => {
|
|
2
|
+
onAtualizarRntrc: () => Promise<void>;
|
|
3
|
+
camposAdicionais: {
|
|
4
|
+
ie?: import('../../../store/minhaConta/minhaConta.types').ICampoAdicional;
|
|
5
|
+
rntrc?: import('../../../store/minhaConta/minhaConta.types').ICampoAdicional;
|
|
6
|
+
rntrcVencimento?: import('../../../store/minhaConta/minhaConta.types').ICampoAdicional;
|
|
7
|
+
} | undefined;
|
|
8
|
+
buscandoRntrc: boolean;
|
|
9
|
+
alteracaoDoEmailDaEmpresa: {
|
|
10
|
+
data_expiracao: string;
|
|
11
|
+
novo_email: string;
|
|
12
|
+
} | null | undefined;
|
|
13
|
+
textFieldSlotPropsEmpresaEmail: {};
|
|
14
|
+
};
|
|
15
|
+
export default useDadosEmpresa;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function DadosEndereco(): import("react").JSX.Element;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { AutocompleteOption } from '../../../shared/types';
|
|
2
|
+
import { CidadeValue } from '../minhaEmpresa.types';
|
|
3
|
+
declare const useDadosEndereco: () => {
|
|
4
|
+
onChangeCep: (cep: string) => Promise<void>;
|
|
5
|
+
fetchingCep: boolean;
|
|
6
|
+
onChangeInputCidades: import('lodash-es/debounce').DebouncedFunc<(search: string) => Promise<void>>;
|
|
7
|
+
onFocusInputCidades: () => false | Promise<void>;
|
|
8
|
+
cidades: AutocompleteOption<CidadeValue>[];
|
|
9
|
+
};
|
|
10
|
+
export default useDadosEndereco;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function DadosResponsavel(): import("react").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function Header(): import("react").JSX.Element;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare const useHeader: () => {
|
|
2
|
+
open: () => void;
|
|
3
|
+
getInputProps: <T extends import('react-dropzone').DropzoneInputProps>(props?: T) => T;
|
|
4
|
+
logo: {
|
|
5
|
+
conteudo: string;
|
|
6
|
+
mimetype: string;
|
|
7
|
+
nome: string;
|
|
8
|
+
tamanho: number;
|
|
9
|
+
} | undefined;
|
|
10
|
+
getIniciaisEmpresa: () => string;
|
|
11
|
+
onRemoverLogo: () => void;
|
|
12
|
+
isDirty: boolean;
|
|
13
|
+
isSubmitting: boolean;
|
|
14
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { AtualizarMeusDadosBody, BuscarMeusDadosResponse } from '../../helpers/contrateApi/meusDadosApi.types';
|
|
2
|
+
import { MinhaEmpresaFormValues } from './minhaEmpresa.types';
|
|
3
|
+
export declare const assembleMinhaEmpresaForm: (values: BuscarMeusDadosResponse) => MinhaEmpresaFormValues;
|
|
4
|
+
export declare const assembleMinhaEmpresaQuery: (values: MinhaEmpresaFormValues) => AtualizarMeusDadosBody;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Dayjs } from 'dayjs';
|
|
2
|
+
import { AutocompleteOption } from '../../shared/types';
|
|
3
|
+
export interface MinhaEmpresaFormValues {
|
|
4
|
+
logo?: {
|
|
5
|
+
conteudo: string;
|
|
6
|
+
mimetype: string;
|
|
7
|
+
nome: string;
|
|
8
|
+
tamanho: number;
|
|
9
|
+
};
|
|
10
|
+
empresa: {
|
|
11
|
+
cpfCnpj: string;
|
|
12
|
+
nomeFantasia: string;
|
|
13
|
+
razaoSocial: string;
|
|
14
|
+
fone: string;
|
|
15
|
+
email?: string;
|
|
16
|
+
ie?: string;
|
|
17
|
+
rntrc?: string;
|
|
18
|
+
rntrcDataVencimento?: Dayjs;
|
|
19
|
+
};
|
|
20
|
+
endereco: {
|
|
21
|
+
cep: string;
|
|
22
|
+
cidade: AutocompleteOption<CidadeValue>;
|
|
23
|
+
bairro: string;
|
|
24
|
+
rua: string;
|
|
25
|
+
numero: string;
|
|
26
|
+
complemento?: string;
|
|
27
|
+
};
|
|
28
|
+
responsavel: {
|
|
29
|
+
nome: string;
|
|
30
|
+
email: string;
|
|
31
|
+
fone: string;
|
|
32
|
+
};
|
|
33
|
+
flags: {
|
|
34
|
+
fetchingCep?: boolean;
|
|
35
|
+
ultimoCepBuscado?: string;
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
export interface CidadeValue {
|
|
39
|
+
codigo: number;
|
|
40
|
+
nome: string;
|
|
41
|
+
uf: string;
|
|
42
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { FormEventHandler } from 'react';
|
|
2
|
+
import { MinhaEmpresaFormValues } from './minhaEmpresa.types';
|
|
3
|
+
export declare const useMinhaEmpresa: () => {
|
|
4
|
+
form: import('react-hook-form').UseFormReturn<MinhaEmpresaFormValues, any, MinhaEmpresaFormValues>;
|
|
5
|
+
handleSubmit: FormEventHandler;
|
|
6
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { PaperProps } from '@mui/material';
|
|
2
|
+
interface SPaperProps extends PaperProps {
|
|
3
|
+
centerContent?: boolean;
|
|
4
|
+
height?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare const SPaper: import('@emotion/styled').StyledComponent<import('@mui/material').PaperOwnProps & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "className" | "style" | "classes" | "children" | "elevation" | "square" | "sx" | "variant"> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & SPaperProps, {}, {}>;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
import { GridSize } from '@mui/material';
|
|
2
|
+
import { TextFieldProps } from '@s_mart/form';
|
|
3
|
+
import { ReactElement } from 'react';
|
|
4
|
+
import { IPlanoWithRecursos } from '../../components/planosDialog/planosDialog.types';
|
|
5
|
+
import { IRecurso } from '../../components/recursosDialog/recursosDialog.types';
|
|
6
|
+
import { AtualizarMeusDadosBody, MeuPlanoRecursosResponse } from '../../helpers/contrateApi/meusDadosApi.types';
|
|
7
|
+
export type MinhaContaStore = MinhaContaStoreState & MinhaContaStoreActions;
|
|
8
|
+
export interface MinhaContaStoreState extends SistemaNome, ContatoSuporte {
|
|
9
|
+
tabAtiva?: Tabs;
|
|
10
|
+
/**
|
|
11
|
+
* Prop que ao ser passada como True esconde a Tab "Meu plano".
|
|
12
|
+
*/
|
|
13
|
+
esconderTabMeuPlano?: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Props relacionadas à tab `Minha empresa`
|
|
16
|
+
*/
|
|
17
|
+
minhaEmpresa: MinhaEmpresaState;
|
|
18
|
+
/**
|
|
19
|
+
* Props relacionadas à tab `Meu plano`
|
|
20
|
+
*/
|
|
21
|
+
meuPlano: MeuPlanoState;
|
|
22
|
+
/**
|
|
23
|
+
* Props relacionadas à loja de recursos
|
|
24
|
+
*/
|
|
25
|
+
recursosDialog: RecursosDialogState;
|
|
26
|
+
/**
|
|
27
|
+
* Props relacionadas à loja de planos
|
|
28
|
+
*/
|
|
29
|
+
planosDialog: PlanosDialogState;
|
|
30
|
+
usuario?: {
|
|
31
|
+
email: string;
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
interface MinhaContaStoreActions {
|
|
35
|
+
setTabAtiva: (tab: Tabs) => void;
|
|
36
|
+
}
|
|
37
|
+
export interface SistemaNome {
|
|
38
|
+
/**
|
|
39
|
+
* O nome do sistema em que o minha conta está sendo injetado sobre
|
|
40
|
+
*/
|
|
41
|
+
sistemaNome: string;
|
|
42
|
+
}
|
|
43
|
+
export interface ContatoSuporte {
|
|
44
|
+
/**
|
|
45
|
+
* Telefone para entrar em contato com o suporte.
|
|
46
|
+
*
|
|
47
|
+
* @important Mandar com 55 e sem máscara
|
|
48
|
+
*/
|
|
49
|
+
telefoneSuporte: string;
|
|
50
|
+
/**
|
|
51
|
+
* Telefone para entrar em contato com o CS
|
|
52
|
+
*
|
|
53
|
+
* @important Mandar com 55 e sem máscara
|
|
54
|
+
*/
|
|
55
|
+
telefoneCS?: string;
|
|
56
|
+
}
|
|
57
|
+
interface MinhaEmpresaState {
|
|
58
|
+
/**
|
|
59
|
+
* Campos adicionais no formulário que são renderizados abaixo dos campos obrigatórios da empresa
|
|
60
|
+
*/
|
|
61
|
+
camposAdicionais?: {
|
|
62
|
+
ie?: ICampoAdicional;
|
|
63
|
+
rntrc?: ICampoAdicional;
|
|
64
|
+
rntrcVencimento?: ICampoAdicional;
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* Função Callback executada ao salvar os dados da minha conta com sucesso
|
|
68
|
+
* @param `query` - A query com os dados utilizados para salvar a minha conta
|
|
69
|
+
*/
|
|
70
|
+
onDadosAtualizadosComSucesso?: (query: AtualizarMeusDadosBody) => void;
|
|
71
|
+
/**
|
|
72
|
+
* Prop para mostrar um helper nos campos de e-mail
|
|
73
|
+
*/
|
|
74
|
+
helperCamposDeEmail?: ReactElement;
|
|
75
|
+
}
|
|
76
|
+
interface MeuPlanoState {
|
|
77
|
+
/**
|
|
78
|
+
* Link de uma página web que contenha os termos de uso do produto.
|
|
79
|
+
* O link na aba "Meu plano" aparecerá somente se esta prop existir
|
|
80
|
+
*/
|
|
81
|
+
linkTermosDeUso?: string;
|
|
82
|
+
/**
|
|
83
|
+
* Esconde o botão "Ver Planos"
|
|
84
|
+
*/
|
|
85
|
+
esconderPlanos?: boolean;
|
|
86
|
+
/**
|
|
87
|
+
* Esconde o botão "Loja de recursos"
|
|
88
|
+
*/
|
|
89
|
+
esconderLojaDeRecursos?: boolean;
|
|
90
|
+
/**
|
|
91
|
+
* Esconde o card com as informações do plano atual
|
|
92
|
+
*/
|
|
93
|
+
esconderInformacoesPlano?: boolean;
|
|
94
|
+
/**
|
|
95
|
+
* Path da imagem para o empty state da listagem de faturas
|
|
96
|
+
*/
|
|
97
|
+
faturasEmptyStateImg?: string;
|
|
98
|
+
/**
|
|
99
|
+
* Mostra botão de abrir fatura
|
|
100
|
+
*/
|
|
101
|
+
exibirAbrirFatura?: boolean;
|
|
102
|
+
/**
|
|
103
|
+
* Função Callback executada ao renderizar a tab do meu plano
|
|
104
|
+
* @dica Pode ser usada para executar uma função de monitoraramento das ações do usuário
|
|
105
|
+
*/
|
|
106
|
+
onRenderTabMeuPlano?: () => void;
|
|
107
|
+
}
|
|
108
|
+
export interface RecursosDialogState {
|
|
109
|
+
/**
|
|
110
|
+
* Array de objetos com os gifs dos recursos da loja de recursos
|
|
111
|
+
*/
|
|
112
|
+
recursosGifs?: {
|
|
113
|
+
slug: string;
|
|
114
|
+
gif: string;
|
|
115
|
+
}[];
|
|
116
|
+
/**
|
|
117
|
+
* Slug de um recurso para ser destacado e ficar no topo da lista
|
|
118
|
+
*
|
|
119
|
+
* @important Somente funciona com recursos não contratados
|
|
120
|
+
*/
|
|
121
|
+
recursoEmDestaque?: string;
|
|
122
|
+
/**
|
|
123
|
+
* Path da imagem para o empty state dos recursos não contratados
|
|
124
|
+
*/
|
|
125
|
+
emptyStateImg?: string;
|
|
126
|
+
/**
|
|
127
|
+
* Callback executada ao contratar um recurso com sucesso
|
|
128
|
+
*/
|
|
129
|
+
onContratarRecurso?: (recursoContratado: IRecurso) => void;
|
|
130
|
+
/**
|
|
131
|
+
* Callback executada ao remover um recurso com sucesso
|
|
132
|
+
*/
|
|
133
|
+
onRemoverRecurso?: (recursoRemovido: IRecurso) => void;
|
|
134
|
+
/**
|
|
135
|
+
* Boolean para esconder ou não os valores dos recursos não contratados
|
|
136
|
+
*
|
|
137
|
+
* Se true, o botão de contratar chama o telefone do CS, se habilitado, ou do suporte
|
|
138
|
+
*/
|
|
139
|
+
esconderValoresRecursos?: boolean;
|
|
140
|
+
/**
|
|
141
|
+
* Para não permitir remover recursos contratados
|
|
142
|
+
*
|
|
143
|
+
* Se true, o botão de remover abre o whats do CS ou suporte
|
|
144
|
+
*/
|
|
145
|
+
naoPermitirRemoverRecursos?: boolean;
|
|
146
|
+
/**
|
|
147
|
+
* Callback executada ao clicar no recurso, seja em "Quero saber mais" ou "Adquirir"
|
|
148
|
+
*/
|
|
149
|
+
acaoSecundariaOnClickRecurso?: () => void;
|
|
150
|
+
}
|
|
151
|
+
export interface PlanosDialogState {
|
|
152
|
+
/**
|
|
153
|
+
* Path da imagem para o empty state
|
|
154
|
+
*/
|
|
155
|
+
emptyStateImg?: string;
|
|
156
|
+
/**
|
|
157
|
+
* Define as imagens que irão aparecer nas modais de contratar um plano novo
|
|
158
|
+
*/
|
|
159
|
+
imagensAlterarPlano?: {
|
|
160
|
+
diminuir: string;
|
|
161
|
+
melhorar: string;
|
|
162
|
+
contratar: string;
|
|
163
|
+
};
|
|
164
|
+
/**
|
|
165
|
+
* Impede de trocar para um plano de menor valor
|
|
166
|
+
*/
|
|
167
|
+
bloquearDowngrade?: boolean;
|
|
168
|
+
/**
|
|
169
|
+
* Impede de trocar para um plano de menor valor até usar o plano atual por 30 dias.
|
|
170
|
+
*/
|
|
171
|
+
bloquearDowngrade30Dias?: boolean;
|
|
172
|
+
/**
|
|
173
|
+
* Deixa desabilitado os planos com valor menor que o contratado.
|
|
174
|
+
*/
|
|
175
|
+
desabilitarPlanosMenores?: boolean;
|
|
176
|
+
/**
|
|
177
|
+
* Mostra determinados planos de um determinado grupo
|
|
178
|
+
*
|
|
179
|
+
* Se passar somente `codigoGrupo`, serão exibidos todos os planos do grupo
|
|
180
|
+
*
|
|
181
|
+
* Se passar somente `codigoPlanoValor`, serão filtrados a partir dos planos do grupo e será escondido o filtro de periodicidade
|
|
182
|
+
*/
|
|
183
|
+
mostrarPlanosDeterminados?: {
|
|
184
|
+
codigoGrupo?: number;
|
|
185
|
+
/**
|
|
186
|
+
* Identificador do plano junto com uma periodicidade
|
|
187
|
+
* */
|
|
188
|
+
codigoPlanoValor?: number[];
|
|
189
|
+
};
|
|
190
|
+
/**
|
|
191
|
+
* Esconde o filtro de periodicidade
|
|
192
|
+
*/
|
|
193
|
+
esconderPeriodicidade?: boolean;
|
|
194
|
+
/**
|
|
195
|
+
* Mostra somente os planos da periodicidade informada
|
|
196
|
+
*
|
|
197
|
+
* Se houverem planos setados em codigoValorPlano, serão desconsiderados
|
|
198
|
+
*/
|
|
199
|
+
mostrarSomentePlanosDaPeriodicidade?: 'mensais' | 'trimestrais' | 'semestrais' | 'anuais';
|
|
200
|
+
/**
|
|
201
|
+
* Esconde o valor dos planos
|
|
202
|
+
*
|
|
203
|
+
* Se true, o botão de contratar chama o telefone do CS, se habilitado, ou do suporte
|
|
204
|
+
*/
|
|
205
|
+
esconderValorPlanos?: boolean;
|
|
206
|
+
/**
|
|
207
|
+
* Não deixa desabilitado o plano atual do cliente
|
|
208
|
+
*/
|
|
209
|
+
habilitarPlanoAtual?: boolean;
|
|
210
|
+
/**
|
|
211
|
+
* Callback executada ao contratar um plano com sucesso
|
|
212
|
+
*/
|
|
213
|
+
onContratarSuccess?: (planoAntigo: MeuPlanoRecursosResponse, planoNovo: IPlanoWithRecursos) => void;
|
|
214
|
+
}
|
|
215
|
+
export type Tabs = 'minhaEmpresa' | 'meuPlano';
|
|
216
|
+
export interface ICampoAdicional {
|
|
217
|
+
grid?: {
|
|
218
|
+
xs?: GridSize;
|
|
219
|
+
sm?: GridSize;
|
|
220
|
+
md?: GridSize;
|
|
221
|
+
lg?: GridSize;
|
|
222
|
+
};
|
|
223
|
+
required?: TextFieldProps['required'];
|
|
224
|
+
rules?: TextFieldProps['rules'];
|
|
225
|
+
}
|
|
226
|
+
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
type OnErrorCallback = (error: unknown) => void;
|
|
2
|
+
type OnSuccessCallback<Response = void> = (result: Response) => void;
|
|
3
|
+
export type RequestsCallbacks<OnSuccessResponse = void> = {
|
|
4
|
+
onError?: OnErrorCallback;
|
|
5
|
+
onSuccess?: OnSuccessCallback<OnSuccessResponse>;
|
|
6
|
+
};
|
|
7
|
+
export type NotificationProps = {
|
|
8
|
+
variant?: 'default' | 'error' | 'success' | 'warning' | 'info';
|
|
9
|
+
duration?: number;
|
|
10
|
+
title?: string;
|
|
11
|
+
message?: string;
|
|
12
|
+
};
|
|
13
|
+
export interface NotificationCallback {
|
|
14
|
+
setNotification(params: NotificationProps): void;
|
|
15
|
+
}
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
type Modelo = 'mensalidade' | 'mensais' | 'mes';
|
|
2
|
+
interface GetPeriodicidadeLabelOptions {
|
|
3
|
+
modelo?: Modelo;
|
|
4
|
+
}
|
|
5
|
+
declare const getPeriodicidadeLabel: (periodicidade: number | null, options?: GetPeriodicidadeLabelOptions) => string;
|
|
6
|
+
export default getPeriodicidadeLabel;
|