@zesty-io/material 0.6.6 → 0.9.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.
@@ -1,10 +1,10 @@
1
- import { OutlinedTextFieldProps } from '@mui/material/TextField';
2
- import { ReactNode } from 'react';
3
- export interface FieldTypeTextProps extends Omit<OutlinedTextFieldProps, 'variant'> {
1
+ import { OutlinedTextFieldProps } from "@mui/material/TextField";
2
+ import { ReactNode } from "react";
3
+ export interface FieldTypeTextProps extends Omit<OutlinedTextFieldProps, "variant"> {
4
4
  /**
5
- * Max length of the field
6
- * @default 150
7
- */
5
+ * Max length of the field
6
+ * @default 150
7
+ */
8
8
  maxLength?: number;
9
9
  value: string;
10
10
  endLabel?: ReactNode;
@@ -1,9 +1,19 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import MuiTextField from '@mui/material/TextField';
3
- import { FormControl, FormLabel, Box, InputAdornment } from '@mui/material';
2
+ import MuiTextField from "@mui/material/TextField";
3
+ import { FormControl, FormLabel, Box, InputAdornment } from "@mui/material";
4
4
  const FieldTypeText = ({ label, maxLength = 150, value, helperText, required, endLabel, ...props }) => {
5
- return (_jsxs(FormControl, { fullWidth: true, required: required, children: [_jsxs(FormLabel, { sx: { display: 'flex', justifyContent: 'space-between', alignItems: 'center', '& .MuiFormLabel-asterisk': { order: 2 } }, children: [_jsx(Box, { sx: { order: 1 }, children: label }), _jsx(Box, { sx: { order: 3, flex: 1, textAlign: 'right' }, children: endLabel })] }), _jsx(MuiTextField, { size: "small", variant: 'outlined', value: value, error: value?.length > maxLength, helperText: value?.length > maxLength ? 'Your input is over the specified limit' : helperText, InputProps: {
6
- endAdornment: (_jsxs(InputAdornment, { position: "end", sx: { fontSize: '14px' }, children: [value?.length, "/", maxLength] })),
5
+ return (_jsxs(FormControl, { fullWidth: true, required: required, children: [_jsxs(FormLabel, { sx: {
6
+ lineHeight: "inherit",
7
+ fontSize: "inherit",
8
+ display: "flex",
9
+ justifyContent: "space-between",
10
+ alignItems: "center",
11
+ "& .MuiFormLabel-asterisk": { order: 2 },
12
+ mb: 0.5,
13
+ }, children: [_jsx(Box, { sx: { order: 1 }, children: label }), _jsx(Box, { sx: { order: 3, flex: 1, textAlign: "right" }, children: endLabel })] }), _jsx(MuiTextField, { size: "small", variant: "outlined", value: value, error: value?.length > maxLength, helperText: value?.length > maxLength
14
+ ? "Your input is over the specified limit"
15
+ : helperText, InputProps: {
16
+ endAdornment: (_jsxs(InputAdornment, { position: "end", sx: { fontSize: "14px" }, children: [value?.length, "/", maxLength] })),
7
17
  }, ...props })] }));
8
18
  };
9
19
  export default FieldTypeText;
@@ -0,0 +1,5 @@
1
+ import { Story, Meta } from "@storybook/react/types-6-0";
2
+ import { Props } from "./";
3
+ declare const _default: Meta<import("@storybook/react/types-6-0").Args>;
4
+ export default _default;
5
+ export declare const Default: Story<Props>;
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { IconButton } from "./";
3
+ export default {
4
+ title: "IconButton",
5
+ component: IconButton,
6
+ argType: {},
7
+ };
8
+ const Template = (args) => {
9
+ return _jsx(IconButton, {});
10
+ };
11
+ export const Default = Template.bind({});
@@ -0,0 +1,32 @@
1
+ /// <reference types="react" />
2
+ export declare type Props = {
3
+ variant?: "standard" | "contained";
4
+ };
5
+ export declare const IconButton: import("@emotion/styled").StyledComponent<{
6
+ children?: import("react").ReactNode;
7
+ classes?: Partial<import("@mui/material").IconButtonClasses> | undefined;
8
+ color?: "error" | "inherit" | "primary" | "secondary" | "info" | "success" | "warning" | "default" | undefined;
9
+ disabled?: boolean | undefined;
10
+ disableFocusRipple?: boolean | undefined;
11
+ edge?: false | "start" | "end" | undefined;
12
+ size?: "small" | "medium" | "large" | "xsmall" | "xxsmall" | undefined;
13
+ sx?: import("@mui/material").SxProps<import("@mui/material").Theme> | undefined;
14
+ } & Omit<{
15
+ action?: import("react").Ref<import("@mui/material").ButtonBaseActions> | undefined;
16
+ centerRipple?: boolean | undefined;
17
+ children?: import("react").ReactNode;
18
+ classes?: Partial<import("@mui/material").ButtonBaseClasses> | undefined;
19
+ disabled?: boolean | undefined;
20
+ disableRipple?: boolean | undefined;
21
+ disableTouchRipple?: boolean | undefined;
22
+ focusRipple?: boolean | undefined;
23
+ focusVisibleClassName?: string | undefined;
24
+ LinkComponent?: import("react").ElementType<any> | undefined;
25
+ onFocusVisible?: import("react").FocusEventHandler<any> | undefined;
26
+ sx?: import("@mui/material").SxProps<import("@mui/material").Theme> | undefined;
27
+ tabIndex?: number | undefined;
28
+ TouchRippleProps?: Partial<import("@mui/material/ButtonBase/TouchRipple").TouchRippleProps> | undefined;
29
+ touchRippleRef?: import("react").Ref<import("@mui/material/ButtonBase/TouchRipple").TouchRippleActions> | undefined;
30
+ }, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Pick<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "key" | keyof import("react").ButtonHTMLAttributes<HTMLButtonElement>> & {
31
+ ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
32
+ }, keyof import("@mui/material/OverridableComponent").CommonProps | "children" | "color" | "disabled" | "size" | "sx" | "tabIndex" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "edge"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & Props, {}, {}>;
@@ -0,0 +1,15 @@
1
+ import { IconButton as IconButtonBase } from "@mui/material";
2
+ import { styled } from "@mui/material/styles";
3
+ export const IconButton = styled(IconButtonBase)(({ theme, variant = "standard", color = "inherit" }) => {
4
+ if (variant === "standard") {
5
+ return {};
6
+ }
7
+ const colorVariant = color === "default" || color === "inherit" ? "primary" : color;
8
+ return {
9
+ backgroundColor: theme.palette[colorVariant].main,
10
+ color: theme.palette.common.white,
11
+ "&:hover": {
12
+ backgroundColor: theme.palette[colorVariant].dark,
13
+ },
14
+ };
15
+ });
@@ -1,3 +1,2 @@
1
- import { Theme } from "@mui/material/styles";
2
- declare let theme: Theme;
1
+ declare let theme: import("@mui/material/styles").Theme;
3
2
  export default theme;
@@ -20,6 +20,15 @@ theme = createTheme(theme, {
20
20
  styleOverrides: {
21
21
  root: {
22
22
  minWidth: "auto",
23
+ boxShadow: "none",
24
+ textTransform: "none",
25
+ },
26
+ },
27
+ },
28
+ MuiButtonGroup: {
29
+ styleOverrides: {
30
+ root: {
31
+ boxShadow: "none",
23
32
  },
24
33
  },
25
34
  },
@@ -67,17 +76,6 @@ theme = createTheme(theme, {
67
76
  },
68
77
  },
69
78
  },
70
- MuiToggleButton: {
71
- styleOverrides: {
72
- root: ({ ownerState, theme }) => ({
73
- backgroundColor: `${theme.palette[ownerState.color].contrastText} !important`,
74
- ...(ownerState.selected && {
75
- color: `${theme.palette[ownerState.color].contrastText} !important`,
76
- backgroundColor: `${theme.palette[ownerState.color].main} !important`,
77
- }),
78
- }),
79
- },
80
- },
81
79
  MuiCssBaseline: {
82
80
  styleOverrides: {
83
81
  body: {
@@ -97,6 +95,52 @@ theme = createTheme(theme, {
97
95
  },
98
96
  },
99
97
  },
98
+ MuiOutlinedInput: {
99
+ styleOverrides: {
100
+ root: {
101
+ padding: "0px 8px",
102
+ borderRadius: "8px",
103
+ backgroundColor: theme.palette.common.white,
104
+ "&.Mui-disabled .MuiOutlinedInput-notchedOutline": {
105
+ borderColor: "#F2F4F7",
106
+ },
107
+ "&:hover .MuiOutlinedInput-notchedOutline": {
108
+ borderColor: "#F2F4F7",
109
+ },
110
+ "&.Mui-focused:hover .MuiOutlinedInput-notchedOutline": {
111
+ borderColor: "#FF5D0A",
112
+ },
113
+ },
114
+ input: {
115
+ padding: "10px 0px",
116
+ ":read-only": {
117
+ color: "#475467",
118
+ },
119
+ },
120
+ sizeSmall: {
121
+ input: {
122
+ padding: "8px 0px",
123
+ },
124
+ },
125
+ notchedOutline: {
126
+ borderColor: "#F2F4F7",
127
+ },
128
+ },
129
+ },
130
+ MuiLink: {
131
+ styleOverrides: {
132
+ root: {
133
+ color: theme.palette.info.dark,
134
+ textDecorationColor: theme.palette.info.main,
135
+ "&:hover": {
136
+ textDecorationColor: theme.palette.info.dark,
137
+ },
138
+ },
139
+ },
140
+ defaultProps: {
141
+ underline: "hover",
142
+ },
143
+ },
100
144
  },
101
145
  });
102
146
  export default theme;
@@ -1,3 +1,3 @@
1
- import { PaletteOptions } from '@mui/material/styles';
1
+ import { PaletteOptions } from "@mui/material/styles";
2
2
  declare const palette: PaletteOptions;
3
3
  export default palette;
@@ -1,23 +1,23 @@
1
1
  const palette = {
2
2
  primary: {
3
- main: '#404759',
4
- contrastText: '#ffffff',
3
+ main: "#404759",
4
+ contrastText: "#ffffff",
5
5
  },
6
6
  secondary: {
7
- main: '#497edf',
8
- contrastText: '#ffffff',
7
+ main: "#497edf",
8
+ contrastText: "#ffffff",
9
9
  },
10
10
  success: {
11
- main: '#75bf25',
12
- contrastText: '#ffffff',
11
+ main: "#75bf25",
12
+ contrastText: "#ffffff",
13
13
  },
14
14
  warning: {
15
- main: '#f17829',
16
- contrastText: '#ffffff',
15
+ main: "#f17829",
16
+ contrastText: "#ffffff",
17
17
  },
18
18
  error: {
19
- main: '#e53c05',
20
- contrastText: '#ffffff',
19
+ main: "#e53c05",
20
+ contrastText: "#ffffff",
21
21
  },
22
22
  };
23
23
  export default palette;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { SvgIconProps } from "@mui/material";
3
+ export declare const Home: (props: SvgIconProps) => JSX.Element;
@@ -0,0 +1,3 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { SvgIcon } from "@mui/material";
3
+ export const Home = (props) => (_jsx(SvgIcon, { ...props, children: _jsx("path", { d: "M5.5 20.625C5.08333 20.625 4.72917 20.4792 4.4375 20.1875C4.14583 19.8958 4 19.5417 4 19.125V9.375C4 9.14167 4.05417 8.91667 4.1625 8.7C4.27083 8.48333 4.41667 8.30833 4.6 8.175L11.1 3.3C11.2333 3.2 11.375 3.125 11.525 3.075C11.675 3.025 11.8333 3 12 3C12.1667 3 12.325 3.025 12.475 3.075C12.625 3.125 12.7667 3.2 12.9 3.3L19.4 8.175C19.5833 8.30833 19.7292 8.48333 19.8375 8.7C19.9458 8.91667 20 9.14167 20 9.375V19.125C20 19.5417 19.8542 19.8958 19.5625 20.1875C19.2708 20.4792 18.9167 20.625 18.5 20.625H14V13.625H10V20.625H5.5Z", fill: "currentColor" }) }));
@@ -7,3 +7,4 @@ export { OneToOne } from "./OneToOne";
7
7
  export { EditNote } from "./EditNote";
8
8
  export { FileTable } from "./FileTable";
9
9
  export { Brain } from "./Brain";
10
+ export { Home } from "./Home";
package/es/icons/index.js CHANGED
@@ -7,3 +7,4 @@ export { OneToOne } from "./OneToOne";
7
7
  export { EditNote } from "./EditNote";
8
8
  export { FileTable } from "./FileTable";
9
9
  export { Brain } from "./Brain";
10
+ export { Home } from "./Home";
package/es/index.d.ts CHANGED
@@ -1,15 +1,16 @@
1
- export { default as legacyTheme } from './LegacyTheme';
2
- export { default as theme } from './theme';
3
- export { default as FieldTypeText } from './FieldTypeText';
4
- export { default as FieldTypeSort } from './FieldTypeSort';
5
- export { default as FieldTypeUrl } from './FieldTypeUrl';
6
- export { default as FieldTypeDate } from './FieldTypeDate';
7
- export { default as FieldTypeDateTime } from './FieldTypeDateTime';
8
- export { default as FieldTypeColor } from './FieldTypeColor';
9
- export { default as FieldTypeNumber } from './FieldTypeNumber';
10
- export { default as FieldTypeOneToOne } from './FieldTypeOneToOne';
11
- export { default as FieldTypeOneToMany } from './FieldTypeOneToMany';
12
- export { default as CopyButton } from './CopyButton';
13
- export { default as ConfirmDialog } from './ConfirmDialog';
14
- export { default as VirtualizedAutocomplete } from './VitualizedAutocomplete';
15
- export * from './icons';
1
+ export { default as legacyTheme } from "./LegacyTheme";
2
+ export { theme, darkTheme } from "./theme";
3
+ export { default as FieldTypeText } from "./FieldTypeText";
4
+ export { default as FieldTypeSort } from "./FieldTypeSort";
5
+ export { default as FieldTypeUrl } from "./FieldTypeUrl";
6
+ export { default as FieldTypeDate } from "./FieldTypeDate";
7
+ export { default as FieldTypeDateTime } from "./FieldTypeDateTime";
8
+ export { default as FieldTypeColor } from "./FieldTypeColor";
9
+ export { default as FieldTypeNumber } from "./FieldTypeNumber";
10
+ export { default as FieldTypeOneToOne } from "./FieldTypeOneToOne";
11
+ export { default as FieldTypeOneToMany } from "./FieldTypeOneToMany";
12
+ export { default as CopyButton } from "./CopyButton";
13
+ export { default as ConfirmDialog } from "./ConfirmDialog";
14
+ export { default as VirtualizedAutocomplete } from "./VitualizedAutocomplete";
15
+ export { IconButton } from "./IconButton";
16
+ export * from "./icons";
package/es/index.js CHANGED
@@ -1,15 +1,16 @@
1
- export { default as legacyTheme } from './LegacyTheme';
2
- export { default as theme } from './theme';
3
- export { default as FieldTypeText } from './FieldTypeText';
4
- export { default as FieldTypeSort } from './FieldTypeSort';
5
- export { default as FieldTypeUrl } from './FieldTypeUrl';
6
- export { default as FieldTypeDate } from './FieldTypeDate';
7
- export { default as FieldTypeDateTime } from './FieldTypeDateTime';
8
- export { default as FieldTypeColor } from './FieldTypeColor';
9
- export { default as FieldTypeNumber } from './FieldTypeNumber';
10
- export { default as FieldTypeOneToOne } from './FieldTypeOneToOne';
11
- export { default as FieldTypeOneToMany } from './FieldTypeOneToMany';
12
- export { default as CopyButton } from './CopyButton';
13
- export { default as ConfirmDialog } from './ConfirmDialog';
14
- export { default as VirtualizedAutocomplete } from './VitualizedAutocomplete';
15
- export * from './icons';
1
+ export { default as legacyTheme } from "./LegacyTheme";
2
+ export { theme, darkTheme } from "./theme";
3
+ export { default as FieldTypeText } from "./FieldTypeText";
4
+ export { default as FieldTypeSort } from "./FieldTypeSort";
5
+ export { default as FieldTypeUrl } from "./FieldTypeUrl";
6
+ export { default as FieldTypeDate } from "./FieldTypeDate";
7
+ export { default as FieldTypeDateTime } from "./FieldTypeDateTime";
8
+ export { default as FieldTypeColor } from "./FieldTypeColor";
9
+ export { default as FieldTypeNumber } from "./FieldTypeNumber";
10
+ export { default as FieldTypeOneToOne } from "./FieldTypeOneToOne";
11
+ export { default as FieldTypeOneToMany } from "./FieldTypeOneToMany";
12
+ export { default as CopyButton } from "./CopyButton";
13
+ export { default as ConfirmDialog } from "./ConfirmDialog";
14
+ export { default as VirtualizedAutocomplete } from "./VitualizedAutocomplete";
15
+ export { IconButton } from "./IconButton";
16
+ export * from "./icons";
@@ -1,4 +1,5 @@
1
- import { Story, Meta } from '@storybook/react/types-6-0';
1
+ import { Story, Meta } from "@storybook/react/types-6-0";
2
2
  declare const _default: Meta<import("@storybook/react/types-6-0").Args>;
3
3
  export default _default;
4
- export declare const Default: Story<import("@storybook/react/types-6-0").Args>;
4
+ export declare const light: Story<import("@storybook/react/types-6-0").Args>;
5
+ export declare const dark: Story<import("@storybook/react/types-6-0").Args>;
@@ -1,10 +1,14 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import ReactJson from 'react-json-view';
3
- import theme from '.';
2
+ import ReactJson from "react-json-view";
3
+ import { darkTheme, theme } from ".";
4
4
  export default {
5
- title: 'Theme',
5
+ title: "Theme",
6
6
  };
7
- const Template = (args) => {
8
- return (_jsx(ReactJson, { src: theme }));
7
+ const LightTheme = (args) => {
8
+ return _jsx(ReactJson, { src: theme });
9
9
  };
10
- export const Default = Template.bind({});
10
+ const DarkTheme = (args) => {
11
+ return _jsx(ReactJson, { src: darkTheme });
12
+ };
13
+ export const light = LightTheme.bind({});
14
+ export const dark = DarkTheme.bind({});
@@ -1,4 +1,3 @@
1
- import { Theme } from "@mui/material/styles";
2
1
  declare module "@mui/material/styles" {
3
2
  interface Palette {
4
3
  border: string;
@@ -7,5 +6,16 @@ declare module "@mui/material/styles" {
7
6
  typography: TypographyVariantsOptions;
8
7
  }
9
8
  }
10
- declare let theme: Theme;
11
- export default theme;
9
+ declare module "@mui/material/IconButton" {
10
+ interface IconButtonPropsSizeOverrides {
11
+ xsmall: true;
12
+ xxsmall: true;
13
+ }
14
+ }
15
+ declare module "@mui/material/Button" {
16
+ interface ButtonPropsSizeOverrides {
17
+ xsmall: true;
18
+ }
19
+ }
20
+ export declare let theme: import("@mui/material/styles").Theme;
21
+ export declare let darkTheme: import("@mui/material/styles").Theme;