pipesol-button 1.0.9 → 1.0.12
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/FormButtonGroup.d.ts +10 -0
- package/dist/components/FormButtonGroup.js +27 -4
- package/dist/components/FormButtonGroup.js.map +1 -1
- package/dist/components/NavigationButton.d.ts +32 -42
- package/dist/components/NavigationButton.js +24 -41
- package/dist/components/NavigationButton.js.map +1 -1
- package/dist/components/StyledButton.d.ts +4 -12
- package/dist/components/StyledButton.js +8 -17
- package/dist/components/StyledButton.js.map +1 -1
- package/dist/theme.d.ts +3 -0
- package/dist/theme.js +10 -0
- package/dist/theme.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/ButtonKind.d.ts +1 -1
- package/dist/types/CommonForwardProps.d.ts +1 -0
- package/dist/types/CommonForwardProps.js +14 -0
- package/dist/types/CommonForwardProps.js.map +1 -0
- package/dist/types/style/BorderProps.d.ts +5 -0
- package/dist/types/style/BorderProps.js +2 -0
- package/dist/types/style/BorderProps.js.map +1 -0
- package/dist/types/style/ColorProps.d.ts +6 -0
- package/dist/types/style/ColorProps.js +2 -0
- package/dist/types/style/ColorProps.js.map +1 -0
- package/dist/types/style/CommonStyleProps.d.ts +5 -0
- package/dist/types/style/CommonStyleProps.js +2 -0
- package/dist/types/style/CommonStyleProps.js.map +1 -0
- package/dist/types/style/LayoutProps.d.ts +6 -0
- package/dist/types/style/LayoutProps.js +2 -0
- package/dist/types/style/LayoutProps.js.map +1 -0
- package/package.json +4 -7
|
@@ -1,18 +1,26 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
export interface FormButtonGroupProps {
|
|
3
|
+
showDeleteButton?: boolean;
|
|
3
4
|
onCancel?: () => void;
|
|
5
|
+
onDelete?: () => void;
|
|
4
6
|
}
|
|
5
7
|
/**
|
|
6
8
|
* Agrupador de botões "Cancelar" e "Salvar" para uso **dentro** de formulários.
|
|
7
9
|
*
|
|
8
10
|
* O botão **"Salvar"** possui `type="submit"` e dispara o `onSubmit` do `<form>`.
|
|
9
11
|
*
|
|
12
|
+
* @param {boolean} [showDeleteButton="false"] Exibir botao Deletar.
|
|
10
13
|
* @param {() => void} [onCancel]
|
|
11
14
|
* Função disparada ao clicar em **"Cancelar"**.
|
|
12
15
|
* Ideal para fechar modal, navegar de volta, limpar estado ou desfazer alterações.
|
|
13
16
|
*
|
|
14
17
|
* @default onCancel = () => {}
|
|
15
18
|
*
|
|
19
|
+
* @param {() => void} [onDelete]
|
|
20
|
+
* Função disparada ao clicar em **"Deletar"**.
|
|
21
|
+
*
|
|
22
|
+
* @default onDelete = () => {}
|
|
23
|
+
*
|
|
16
24
|
* @example
|
|
17
25
|
* ```tsx
|
|
18
26
|
* import React from 'react';
|
|
@@ -31,7 +39,9 @@ export interface FormButtonGroupProps {
|
|
|
31
39
|
* <Box component="form" onSubmit={handleSubmit} noValidate>
|
|
32
40
|
* <TextField label="Nome" fullWidth margin="normal" />
|
|
33
41
|
* <FormButtonGroup
|
|
42
|
+
* exibirBotaoDelete = {true}
|
|
34
43
|
* onCancel={() => console.log('cancelado')}
|
|
44
|
+
* onDelete={() => console.log('deletado')}
|
|
35
45
|
* />
|
|
36
46
|
* </Box>
|
|
37
47
|
* );
|
|
@@ -1,12 +1,22 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { styled } from '@mui/material/styles';
|
|
3
3
|
import { StyledButtonKind } from './StyledButton';
|
|
4
|
+
const ActionsContainerWithDelete = styled('div', {
|
|
5
|
+
shouldForwardProp: (prop) => !['onCancel'].includes(prop),
|
|
6
|
+
})(() => ({
|
|
7
|
+
display: 'grid',
|
|
8
|
+
gridTemplateColumns: '1fr auto auto',
|
|
9
|
+
gap: '16px',
|
|
10
|
+
justifyItems: 'flex-start',
|
|
11
|
+
width: '100%',
|
|
12
|
+
}));
|
|
4
13
|
const ActionsContainer = styled('div', {
|
|
5
14
|
shouldForwardProp: (prop) => !['onCancel'].includes(prop),
|
|
6
15
|
})(() => ({
|
|
7
16
|
display: 'flex',
|
|
8
|
-
|
|
9
|
-
|
|
17
|
+
flexDirection: 'row',
|
|
18
|
+
gap: '16px',
|
|
19
|
+
justifyItems: 'flex-end',
|
|
10
20
|
width: '100%',
|
|
11
21
|
}));
|
|
12
22
|
/**
|
|
@@ -14,12 +24,18 @@ const ActionsContainer = styled('div', {
|
|
|
14
24
|
*
|
|
15
25
|
* O botão **"Salvar"** possui `type="submit"` e dispara o `onSubmit` do `<form>`.
|
|
16
26
|
*
|
|
27
|
+
* @param {boolean} [showDeleteButton="false"] Exibir botao Deletar.
|
|
17
28
|
* @param {() => void} [onCancel]
|
|
18
29
|
* Função disparada ao clicar em **"Cancelar"**.
|
|
19
30
|
* Ideal para fechar modal, navegar de volta, limpar estado ou desfazer alterações.
|
|
20
31
|
*
|
|
21
32
|
* @default onCancel = () => {}
|
|
22
33
|
*
|
|
34
|
+
* @param {() => void} [onDelete]
|
|
35
|
+
* Função disparada ao clicar em **"Deletar"**.
|
|
36
|
+
*
|
|
37
|
+
* @default onDelete = () => {}
|
|
38
|
+
*
|
|
23
39
|
* @example
|
|
24
40
|
* ```tsx
|
|
25
41
|
* import React from 'react';
|
|
@@ -38,15 +54,22 @@ const ActionsContainer = styled('div', {
|
|
|
38
54
|
* <Box component="form" onSubmit={handleSubmit} noValidate>
|
|
39
55
|
* <TextField label="Nome" fullWidth margin="normal" />
|
|
40
56
|
* <FormButtonGroup
|
|
57
|
+
* exibirBotaoDelete = {true}
|
|
41
58
|
* onCancel={() => console.log('cancelado')}
|
|
59
|
+
* onDelete={() => console.log('deletado')}
|
|
42
60
|
* />
|
|
43
61
|
* </Box>
|
|
44
62
|
* );
|
|
45
63
|
* };
|
|
46
64
|
* ```
|
|
47
65
|
*/
|
|
48
|
-
const FormButtonGroup = ({ onCancel = () => { }, }) => {
|
|
49
|
-
|
|
66
|
+
const FormButtonGroup = ({ showDeleteButton = false, onCancel = () => { }, onDelete = () => { }, }) => {
|
|
67
|
+
if (showDeleteButton) {
|
|
68
|
+
return (_jsxs(ActionsContainerWithDelete, { onCancel: onCancel, children: [_jsx(StyledButtonKind, { kind: "delete", type: "button", onClick: onDelete, sx: { width: 'auto' }, children: "Deletar" }), _jsx(StyledButtonKind, { kind: "secondary", type: "button", onClick: onCancel, sx: { width: 'auto' }, children: "Cancelar" }), _jsx(StyledButtonKind, { kind: "primary", type: "submit", sx: { width: 'auto' }, children: "Salvar" })] }));
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
return (_jsxs(ActionsContainer, { onCancel: onCancel, children: [_jsx(StyledButtonKind, { kind: "secondary", type: "button", onClick: onCancel, sx: { width: 'auto' }, children: "Cancelar" }), _jsx(StyledButtonKind, { kind: "primary", type: "submit", sx: { width: 'auto' }, children: "Salvar" })] }));
|
|
72
|
+
}
|
|
50
73
|
};
|
|
51
74
|
FormButtonGroup.displayName = 'FormButtonGroup';
|
|
52
75
|
export default FormButtonGroup;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormButtonGroup.js","sourceRoot":"","sources":["../../src/components/FormButtonGroup.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"FormButtonGroup.js","sourceRoot":"","sources":["../../src/components/FormButtonGroup.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAQlD,MAAM,0BAA0B,GAAG,MAAM,CAAC,KAAK,EAAE;IAC/C,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAE,CAAC,UAAU,CAAc,CAAC,QAAQ,CAAC,IAAc,CAAC;CAClF,CAAC,CAAyC,GAAG,EAAE,CAAC,CAAC;IAChD,OAAO,EAAE,MAAM;IACf,mBAAmB,EAAE,eAAe;IACpC,GAAG,EAAE,MAAM;IACX,YAAY,EAAE,YAAY;IAC1B,KAAK,EAAE,MAAM;CACd,CAAC,CAAC,CAAC;AAEJ,MAAM,gBAAgB,GAAG,MAAM,CAAC,KAAK,EAAE;IACrC,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAE,CAAC,UAAU,CAAc,CAAC,QAAQ,CAAC,IAAc,CAAC;CAClF,CAAC,CAAyC,GAAG,EAAE,CAAC,CAAC;IAChD,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,KAAK;IACpB,GAAG,EAAE,MAAM;IACX,YAAY,EAAE,UAAU;IACxB,KAAK,EAAE,MAAM;CACd,CAAC,CAAC,CAAC;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,MAAM,eAAe,GAAmC,CAAC,EACvD,gBAAgB,GAAG,KAAK,EACxB,QAAQ,GAAG,GAAG,EAAE,GAAE,CAAC,EACnB,QAAQ,GAAG,GAAG,EAAE,GAAE,CAAC,GACpB,EAAE,EAAE;IAEH,IAAI,gBAAgB,EAAC,CAAC;QAEpB,OAAO,CACL,MAAC,0BAA0B,IAAC,QAAQ,EAAE,QAAQ,aAC5C,KAAC,gBAAgB,IACf,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,QAAQ,EACjB,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,wBAGJ,EAGnB,KAAC,gBAAgB,IACf,IAAI,EAAC,WAAW,EAChB,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,QAAQ,EACjB,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,yBAGJ,EAEnB,KAAC,gBAAgB,IACf,IAAI,EAAC,SAAS,EACd,IAAI,EAAC,QAAQ,EACb,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,uBAGJ,IACQ,CAC9B,CAAC;IACJ,CAAC;SAEG,CAAC;QAEH,OAAO,CACP,MAAC,gBAAgB,IAAC,QAAQ,EAAE,QAAQ,aAElC,KAAC,gBAAgB,IACf,IAAI,EAAC,WAAW,EAChB,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,QAAQ,EACjB,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,yBAGJ,EAEnB,KAAC,gBAAgB,IACf,IAAI,EAAC,SAAS,EACd,IAAI,EAAC,QAAQ,EACb,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,uBAGJ,IACF,CAEpB,CAAC;IAGF,CAAC;AAIH,CAAC,CAAC;AAEF,eAAe,CAAC,WAAW,GAAG,iBAAiB,CAAC;AAChD,eAAe,eAAe,CAAC"}
|
|
@@ -1,64 +1,54 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { ButtonKind } from '@/types/ButtonKind';
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
4
|
+
* Botão de navegação reutilizável baseado em um link (`<a>`), estilizado com Material UI.
|
|
5
|
+
*
|
|
6
|
+
* Regras de navegação:
|
|
7
|
+
* - Se `url` contiver `http`, o link é tratado como externo e abre em nova aba.
|
|
8
|
+
* - Caso contrário, é tratado como link interno ou âncora.
|
|
9
|
+
*
|
|
10
|
+
* @param {ButtonKind} [kind="none"] Tipo de botão baseado nos tokens do tema.
|
|
11
|
+
* @param {string} url URL ou âncora de destino.
|
|
12
|
+
* @param {string} aria_label Texto para acessibilidade.
|
|
13
|
+
* @param {string} [backgroundColor] Cor de fundo do botão.
|
|
14
|
+
* @param {string} [backgroundColorHover] Cor de fundo no hover.
|
|
15
|
+
* @param {string} [color] Cor do texto.
|
|
16
|
+
* @param {string} [colorHover] Cor do texto no hover.
|
|
17
|
+
* @param {string} [border="none"] Borda do botão.
|
|
18
|
+
* @param {string} [borderRadius="0"] Raio da borda.
|
|
19
|
+
* @param {string} [boxShadow="none"] Sombra do botão.
|
|
20
|
+
* @param {string} width Largura do botão.
|
|
21
|
+
* @param {string} [margin="0"] Margem externa.
|
|
22
|
+
* @param {string} [padding="8px 24px"] Espaçamento interno.
|
|
23
|
+
* @param {React.ReactNode} children Conteúdo interno do botão.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```tsx
|
|
27
|
+
* <NavigationButton
|
|
28
|
+
* kind="primary"
|
|
29
|
+
* url="#contato"
|
|
30
|
+
* aria_label="Ir para contato"
|
|
31
|
+
* width="fit-content"
|
|
32
|
+
* >
|
|
33
|
+
* Fale conosco
|
|
34
|
+
* </NavigationButton>
|
|
35
|
+
* ```
|
|
5
36
|
*/
|
|
6
37
|
interface NavigationButtonProps {
|
|
7
|
-
/**
|
|
8
|
-
* Seleciona o conjunto de tokens do tema.
|
|
9
|
-
* @default "none"
|
|
10
|
-
*/
|
|
11
38
|
kind?: ButtonKind;
|
|
12
|
-
/**
|
|
13
|
-
* URL ou âncora para onde o botão deve navegar.
|
|
14
|
-
* - Se começar com `http`, abre em nova aba.
|
|
15
|
-
* - Caso contrário, é tratado como link interno/âncora.
|
|
16
|
-
*/
|
|
17
39
|
url: string;
|
|
18
|
-
/** Texto para acessibilidade (atributo `aria-label`). */
|
|
19
40
|
aria_label: string;
|
|
20
|
-
/** Cor de fundo padrão do botão (ex: `#1976d2` ou `transparent`). */
|
|
21
41
|
backgroundColor?: string;
|
|
22
|
-
/** Cor de fundo quando o botão é focado/hover. Se não informado, usa a cor padrão. */
|
|
23
42
|
backgroundColorHover?: string;
|
|
24
|
-
/** Cor do texto padrão (ex: `#fff`). */
|
|
25
43
|
color?: string;
|
|
26
|
-
/** Cor do texto no hover. Se não informado, usa a mesma cor padrão. */
|
|
27
44
|
colorHover?: string;
|
|
28
|
-
/**
|
|
29
|
-
* Borda do Botao (1px solid #fff)
|
|
30
|
-
* @default "none"
|
|
31
|
-
*/
|
|
32
45
|
border?: string;
|
|
33
|
-
/**
|
|
34
|
-
* Raio de borda (ex: `8px`, `50%`).
|
|
35
|
-
* @default "0"
|
|
36
|
-
*/
|
|
37
46
|
borderRadius?: string;
|
|
38
|
-
/**
|
|
39
|
-
* Sombra CSS (ex: `0 2px 4px rgba(0,0,0,0.2)`).
|
|
40
|
-
* @default "none"
|
|
41
|
-
*/
|
|
42
47
|
boxShadow?: string;
|
|
43
|
-
/** Largura do botão (ex: `200px`, `100%`). */
|
|
44
48
|
width: string;
|
|
45
|
-
/**
|
|
46
|
-
* Margem externa.
|
|
47
|
-
* @default "0"
|
|
48
|
-
*/
|
|
49
49
|
margin?: string;
|
|
50
|
-
/**
|
|
51
|
-
* Padding interno.
|
|
52
|
-
* @default "8px 24px"
|
|
53
|
-
*/
|
|
54
50
|
padding?: string;
|
|
55
|
-
/** Conteúdo interno (texto ou elementos JSX). */
|
|
56
51
|
children: React.ReactNode;
|
|
57
52
|
}
|
|
58
|
-
/**
|
|
59
|
-
* Botão de navegação reutilizável.
|
|
60
|
-
* Cria um link estilizado que pode ser usado para redirecionar
|
|
61
|
-
* para páginas externas ou seções internas.
|
|
62
|
-
*/
|
|
63
53
|
declare const NavigationButton: React.FC<NavigationButtonProps>;
|
|
64
54
|
export default NavigationButton;
|
|
@@ -1,61 +1,44 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
3
|
import { styled } from '@mui/material/styles';
|
|
4
|
+
import { COMMON_STYLE_FORWARD_PROPS } from '@/types/CommonForwardProps';
|
|
4
5
|
const ButtonStyled = styled('a', {
|
|
5
|
-
shouldForwardProp: (prop) => ![
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
'backgroundColorHover',
|
|
9
|
-
'colorText',
|
|
10
|
-
'colorHover',
|
|
11
|
-
'padding',
|
|
12
|
-
'borderRadius',
|
|
13
|
-
'border',
|
|
14
|
-
'width',
|
|
15
|
-
'margin',
|
|
16
|
-
'boxShadow',
|
|
17
|
-
].includes(prop),
|
|
18
|
-
})(({ theme, kind, backgroundColor, backgroundColorHover, colorText, colorHover, padding, borderRadius, border, width, margin, boxShadow, }) => {
|
|
19
|
-
const tokens = kind === "primary"
|
|
6
|
+
shouldForwardProp: (prop) => !['kind', ...COMMON_STYLE_FORWARD_PROPS].includes(prop),
|
|
7
|
+
})(({ theme, kind, background, backgroundHover, colorText, colorHover, padding, borderRadius, border, width, margin, boxShadow, }) => {
|
|
8
|
+
const tokens = kind === 'primary'
|
|
20
9
|
? theme.palette.custom.primaryButton
|
|
21
|
-
:
|
|
10
|
+
: kind === 'secondary'
|
|
11
|
+
? theme.palette.custom.secondaryButton
|
|
12
|
+
: kind === 'delete'
|
|
13
|
+
? theme.palette.custom.deleteButton
|
|
14
|
+
: undefined;
|
|
22
15
|
return {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
padding:
|
|
26
|
-
margin: margin !== null && margin !== void 0 ? margin : "0",
|
|
27
|
-
// Visual
|
|
16
|
+
width: width !== null && width !== void 0 ? width : 'auto',
|
|
17
|
+
margin: margin !== null && margin !== void 0 ? margin : '0',
|
|
18
|
+
padding: tokens ? tokens.padding : padding,
|
|
28
19
|
borderRadius: tokens ? tokens.borderRadius : borderRadius,
|
|
29
20
|
boxShadow: tokens ? tokens.boxShadow : boxShadow,
|
|
30
|
-
border
|
|
21
|
+
border,
|
|
31
22
|
textDecoration: 'none',
|
|
32
23
|
textTransform: 'none',
|
|
33
24
|
cursor: 'pointer',
|
|
34
25
|
textAlign: 'center',
|
|
35
|
-
|
|
36
|
-
background: tokens ? tokens.background : backgroundColor,
|
|
26
|
+
background: tokens ? tokens.background : background,
|
|
37
27
|
color: tokens ? tokens.color : colorText,
|
|
38
|
-
|
|
39
|
-
background: tokens
|
|
40
|
-
|
|
28
|
+
'&:hover': {
|
|
29
|
+
background: tokens
|
|
30
|
+
? tokens.backgroundHover
|
|
31
|
+
: backgroundHover !== null && backgroundHover !== void 0 ? backgroundHover : background,
|
|
32
|
+
color: tokens ? tokens.colorHover : colorHover !== null && colorHover !== void 0 ? colorHover : colorText,
|
|
41
33
|
},
|
|
42
34
|
};
|
|
43
35
|
});
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
* para páginas externas ou seções internas.
|
|
48
|
-
*/
|
|
49
|
-
const NavigationButton = ({ url, kind = "none", aria_label, backgroundColor, backgroundColorHover, color, colorHover, borderRadius = '0', border = 'none', boxShadow = 'none', width, margin = '0', padding = '8px 24px', children, }) => {
|
|
50
|
-
const marginButton = margin;
|
|
51
|
-
if (url.indexOf('http') !== -1) {
|
|
52
|
-
// Link externo: abre em nova aba
|
|
53
|
-
return (_jsx(ButtonStyled, { kind: kind, href: url, width: width, backgroundColor: backgroundColor, backgroundColorHover: backgroundColorHover, color: color, colorHover: colorHover, borderRadius: borderRadius, border: border, padding: padding, margin: marginButton, "aria-label": aria_label, target: "_blank", boxShadow: boxShadow, rel: "noopener noreferrer", children: children }));
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
// Link interno ou âncora
|
|
57
|
-
return (_jsx(ButtonStyled, { kind: kind, href: url, width: width, backgroundColor: backgroundColor, backgroundColorHover: backgroundColorHover, color: color, colorHover: colorHover, borderRadius: borderRadius, border: border, padding: padding, margin: marginButton, "aria-label": aria_label, boxShadow: boxShadow, children: children }));
|
|
36
|
+
const NavigationButton = ({ url, kind = 'none', aria_label, backgroundColor, backgroundColorHover, color, colorHover, borderRadius = '0', border = 'none', boxShadow = 'none', width, margin = '0', padding = '8px 24px', children, }) => {
|
|
37
|
+
if (url.includes('http')) {
|
|
38
|
+
return (_jsx(ButtonStyled, { kind: kind, href: url, width: width, background: backgroundColor, backgroundHover: backgroundColorHover, color: color, colorHover: colorHover, borderRadius: borderRadius, border: border, padding: padding, margin: margin, "aria-label": aria_label, target: "_blank", rel: "noopener noreferrer", boxShadow: boxShadow, children: children }));
|
|
58
39
|
}
|
|
40
|
+
return (_jsx(ButtonStyled, { kind: kind, href: url, width: width, background: backgroundColor, backgroundHover: backgroundColorHover, color: color, colorHover: colorHover, borderRadius: borderRadius, border: border, padding: padding, margin: margin, "aria-label": aria_label, boxShadow: boxShadow, children: children }));
|
|
59
41
|
};
|
|
42
|
+
NavigationButton.displayName = 'NavigationButton';
|
|
60
43
|
export default NavigationButton;
|
|
61
44
|
//# sourceMappingURL=NavigationButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationButton.js","sourceRoot":"","sources":["../../src/components/NavigationButton.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,EAAE;IAC/B,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAC1B,CAAC
|
|
1
|
+
{"version":3,"file":"NavigationButton.js","sourceRoot":"","sources":["../../src/components/NavigationButton.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,6 @@
|
|
|
1
1
|
import { ButtonKind } from "@/types/ButtonKind";
|
|
2
|
-
|
|
2
|
+
import { CommonStyleProps } from "@/types/style/CommonStyleProps";
|
|
3
|
+
export interface ButtonStyleProps extends CommonStyleProps {
|
|
3
4
|
kind: ButtonKind;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
padding?: string;
|
|
7
|
-
margin?: string;
|
|
8
|
-
boxShadow?: string;
|
|
9
|
-
background?: string;
|
|
10
|
-
backgroundHover?: string;
|
|
11
|
-
colorText?: string;
|
|
12
|
-
colorHover?: string;
|
|
13
|
-
borderRadius?: string;
|
|
14
|
-
}, {}, {}>;
|
|
5
|
+
}
|
|
6
|
+
export declare const StyledButtonKind: import("@emotion/styled").StyledComponent<import("@mui/material").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "style" | "color" | "children" | "sx" | "className" | "tabIndex" | "classes" | "href" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "loading" | "loadingIndicator" | "size" | "disableElevation" | "endIcon" | "fullWidth" | "loadingPosition" | "startIcon" | "variant"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & ButtonStyleProps, {}, {}>;
|
|
@@ -1,30 +1,21 @@
|
|
|
1
|
+
import { COMMON_STYLE_FORWARD_PROPS } from "@/types/CommonForwardProps";
|
|
1
2
|
import { Button, styled } from "@mui/material";
|
|
2
3
|
export const StyledButtonKind = styled(Button, {
|
|
3
|
-
shouldForwardProp: (prop) => ![
|
|
4
|
-
"kind",
|
|
5
|
-
"width",
|
|
6
|
-
"height",
|
|
7
|
-
"padding",
|
|
8
|
-
"margin",
|
|
9
|
-
"background",
|
|
10
|
-
"backgroundHover",
|
|
11
|
-
"colorText",
|
|
12
|
-
"colorHover",
|
|
13
|
-
"borderRadius",
|
|
14
|
-
"boxShadow",
|
|
15
|
-
"text",
|
|
16
|
-
"icon",
|
|
17
|
-
].includes(prop),
|
|
4
|
+
shouldForwardProp: (prop) => !["kind", ...COMMON_STYLE_FORWARD_PROPS].includes(prop),
|
|
18
5
|
})(({ theme, kind = "primary", width, height, padding, margin, background, backgroundHover, colorText, colorHover, borderRadius, boxShadow }) => {
|
|
19
6
|
const tokens = kind === "primary"
|
|
20
7
|
? theme.palette.custom.primaryButton
|
|
21
|
-
:
|
|
8
|
+
: kind === "secondary"
|
|
9
|
+
? theme.palette.custom.secondaryButton
|
|
10
|
+
: kind === "delete"
|
|
11
|
+
? theme.palette.custom.deleteButton
|
|
12
|
+
: undefined;
|
|
22
13
|
return {
|
|
23
14
|
// Dimensões
|
|
24
15
|
width: width,
|
|
25
16
|
height: height,
|
|
26
|
-
padding: padding,
|
|
27
17
|
margin: margin,
|
|
18
|
+
padding: tokens ? tokens.padding : padding,
|
|
28
19
|
// Visual
|
|
29
20
|
textTransform: "none",
|
|
30
21
|
borderRadius: tokens ? tokens.borderRadius : borderRadius,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StyledButton.js","sourceRoot":"","sources":["../../src/components/StyledButton.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"StyledButton.js","sourceRoot":"","sources":["../../src/components/StyledButton.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAExE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAM/C,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE;IAC7C,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,0BAA0B,CAAE,CAAC,QAAQ,CAAC,IAAc,CAAC;CAC/F,CAAC,CAEA,CAAC,EAAE,KAAK,EAAE,IAAI,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,EAAE;IAE5I,MAAM,MAAM,GACV,IAAI,KAAK,SAAS;QAChB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa;QACpC,CAAC,CAAC,IAAI,KAAK,WAAW;YACpB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe;YACtC,CAAC,CAAC,IAAI,KAAK,QAAQ;gBACjB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY;gBACnC,CAAC,CAAC,SAAS,CAAC;IAEpB,OAAO;QACL,YAAY;QACZ,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;QAE1C,SAAS;QACT,aAAa,EAAE,MAAM;QACrB,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY;QACzD,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QAEhD,QAAQ;QACR,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU;QACnD,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;QAExC,SAAS,EAAE;YACT,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAE,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,UAAU,CAAC;YAC9E,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,SAAS,CAAC;YAC7D,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;SACjD;QAED,kBAAkB;QAClB,gBAAgB,EAAE;YAChB,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;YACnC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ;YAClC,SAAS,EAAE,MAAM;SAClB;KACF,CAAC;AACN,CAAC,CAAC,CAAC"}
|
package/dist/theme.d.ts
CHANGED
|
@@ -6,11 +6,13 @@ declare module '@mui/material/styles' {
|
|
|
6
6
|
colorHover: string;
|
|
7
7
|
borderRadius: string;
|
|
8
8
|
boxShadow?: string;
|
|
9
|
+
padding: string;
|
|
9
10
|
}
|
|
10
11
|
interface Palette {
|
|
11
12
|
custom: {
|
|
12
13
|
primaryButton: ButtonOptions;
|
|
13
14
|
secondaryButton: ButtonOptions;
|
|
15
|
+
deleteButton: ButtonOptions;
|
|
14
16
|
borderColor?: string;
|
|
15
17
|
};
|
|
16
18
|
}
|
|
@@ -18,6 +20,7 @@ declare module '@mui/material/styles' {
|
|
|
18
20
|
custom?: {
|
|
19
21
|
primaryButton: ButtonOptions;
|
|
20
22
|
secondaryButton: ButtonOptions;
|
|
23
|
+
deleteButton: ButtonOptions;
|
|
21
24
|
borderColor?: string;
|
|
22
25
|
};
|
|
23
26
|
}
|
package/dist/theme.js
CHANGED
|
@@ -39,6 +39,7 @@ const theme = createTheme({
|
|
|
39
39
|
color: '#ffffff',
|
|
40
40
|
colorHover: '#ffffff',
|
|
41
41
|
borderRadius: "9999px",
|
|
42
|
+
padding: '0',
|
|
42
43
|
},
|
|
43
44
|
secondaryButton: {
|
|
44
45
|
background: '#ffffff',
|
|
@@ -46,6 +47,15 @@ const theme = createTheme({
|
|
|
46
47
|
color: "#216fed",
|
|
47
48
|
colorHover: '#005ce3',
|
|
48
49
|
borderRadius: "9999px",
|
|
50
|
+
padding: '0',
|
|
51
|
+
},
|
|
52
|
+
deleteButton: {
|
|
53
|
+
background: "#F44336",
|
|
54
|
+
backgroundHover: '#F44336',
|
|
55
|
+
color: '#ffffff',
|
|
56
|
+
colorHover: '#ffffff',
|
|
57
|
+
borderRadius: "9999px",
|
|
58
|
+
padding: '0',
|
|
49
59
|
},
|
|
50
60
|
borderColor: '#8c8c8c',
|
|
51
61
|
},
|
package/dist/theme.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.js","sourceRoot":"","sources":["../src/theme.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"theme.js","sourceRoot":"","sources":["../src/theme.tsx"],"names":[],"mappings":"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"}
|