@junyiacademy/ui-test 1.7.1 → 1.7.3
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/index.d.ts +15 -265
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -0
- package/dist/interfaces/index.d.ts +22 -0
- package/dist/interfaces/index.d.ts.map +1 -0
- package/dist/interfaces/index.js +2 -0
- package/dist/interfaces/index.js.map +1 -0
- package/dist/interfaces/shared-types.d.ts +17 -0
- package/dist/interfaces/shared-types.d.ts.map +1 -0
- package/dist/interfaces/shared-types.js +2 -0
- package/dist/interfaces/shared-types.js.map +1 -0
- package/dist/lib/Info-Popover/InfoPopover.d.ts +21 -0
- package/dist/lib/Info-Popover/InfoPopover.d.ts.map +1 -0
- package/dist/lib/Info-Popover/InfoPopover.js +221 -0
- package/dist/lib/Info-Popover/InfoPopover.js.map +1 -0
- package/dist/lib/MUI/Alert/Alert.d.ts +4 -0
- package/dist/lib/MUI/Alert/Alert.d.ts.map +1 -0
- package/dist/lib/MUI/Alert/Alert.js +4 -0
- package/dist/lib/MUI/Alert/Alert.js.map +1 -0
- package/dist/lib/MUI/Avatar/Avatar.d.ts +4 -0
- package/dist/lib/MUI/Avatar/Avatar.d.ts.map +1 -0
- package/dist/lib/MUI/Avatar/Avatar.js +4 -0
- package/dist/lib/MUI/Avatar/Avatar.js.map +1 -0
- package/dist/lib/MUI/Badge/Badge.d.ts +4 -0
- package/dist/lib/MUI/Badge/Badge.d.ts.map +1 -0
- package/dist/lib/MUI/Badge/Badge.js +4 -0
- package/dist/lib/MUI/Badge/Badge.js.map +1 -0
- package/dist/lib/MUI/Checkbox/Checkbox.d.ts +4 -0
- package/dist/lib/MUI/Checkbox/Checkbox.d.ts.map +1 -0
- package/dist/lib/MUI/Checkbox/Checkbox.js +4 -0
- package/dist/lib/MUI/Checkbox/Checkbox.js.map +1 -0
- package/dist/lib/MUI/Chip/Chip.d.ts +4 -0
- package/dist/lib/MUI/Chip/Chip.d.ts.map +1 -0
- package/dist/lib/MUI/Chip/Chip.js +4 -0
- package/dist/lib/MUI/Chip/Chip.js.map +1 -0
- package/dist/lib/MUI/CircularProgress/CircularProgress.d.ts +4 -0
- package/dist/lib/MUI/CircularProgress/CircularProgress.d.ts.map +1 -0
- package/dist/lib/MUI/CircularProgress/CircularProgress.js +4 -0
- package/dist/lib/MUI/CircularProgress/CircularProgress.js.map +1 -0
- package/dist/lib/MUI/Divider/Divider.d.ts +4 -0
- package/dist/lib/MUI/Divider/Divider.d.ts.map +1 -0
- package/dist/lib/MUI/Divider/Divider.js +4 -0
- package/dist/lib/MUI/Divider/Divider.js.map +1 -0
- package/dist/lib/MUI/Fab/Fab.d.ts +4 -0
- package/dist/lib/MUI/Fab/Fab.d.ts.map +1 -0
- package/dist/lib/MUI/Fab/Fab.js +4 -0
- package/dist/lib/MUI/Fab/Fab.js.map +1 -0
- package/dist/lib/MUI/LinearProgress/LinearProgress.d.ts +4 -0
- package/dist/lib/MUI/LinearProgress/LinearProgress.d.ts.map +1 -0
- package/dist/lib/MUI/LinearProgress/LinearProgress.js +4 -0
- package/dist/lib/MUI/LinearProgress/LinearProgress.js.map +1 -0
- package/dist/lib/MUI/Link/Link.d.ts +4 -0
- package/dist/lib/MUI/Link/Link.d.ts.map +1 -0
- package/dist/lib/MUI/Link/Link.js +4 -0
- package/dist/lib/MUI/Link/Link.js.map +1 -0
- package/dist/lib/MUI/Menu/Menu.d.ts +4 -0
- package/dist/lib/MUI/Menu/Menu.d.ts.map +1 -0
- package/dist/lib/MUI/Menu/Menu.js +4 -0
- package/dist/lib/MUI/Menu/Menu.js.map +1 -0
- package/dist/lib/MUI/Menu/MenuItem.d.ts +4 -0
- package/dist/lib/MUI/Menu/MenuItem.d.ts.map +1 -0
- package/dist/lib/MUI/Menu/MenuItem.js +3 -0
- package/dist/lib/MUI/Menu/MenuItem.js.map +1 -0
- package/dist/lib/MUI/Paper/Paper.d.ts +4 -0
- package/dist/lib/MUI/Paper/Paper.d.ts.map +1 -0
- package/dist/lib/MUI/Paper/Paper.js +4 -0
- package/dist/lib/MUI/Paper/Paper.js.map +1 -0
- package/dist/lib/MUI/Rating/Rating.d.ts +4 -0
- package/dist/lib/MUI/Rating/Rating.d.ts.map +1 -0
- package/dist/lib/MUI/Rating/Rating.js +4 -0
- package/dist/lib/MUI/Rating/Rating.js.map +1 -0
- package/dist/lib/MUI/Skeleton/Skeleton.d.ts +4 -0
- package/dist/lib/MUI/Skeleton/Skeleton.d.ts.map +1 -0
- package/dist/lib/MUI/Skeleton/Skeleton.js +4 -0
- package/dist/lib/MUI/Skeleton/Skeleton.js.map +1 -0
- package/dist/lib/MUI/Slider/Slider.d.ts +4 -0
- package/dist/lib/MUI/Slider/Slider.d.ts.map +1 -0
- package/dist/lib/MUI/Slider/Slider.js +4 -0
- package/dist/lib/MUI/Slider/Slider.js.map +1 -0
- package/dist/lib/MUI/Snackbar/Snackbar.d.ts +4 -0
- package/dist/lib/MUI/Snackbar/Snackbar.d.ts.map +1 -0
- package/dist/lib/MUI/Snackbar/Snackbar.js +4 -0
- package/dist/lib/MUI/Snackbar/Snackbar.js.map +1 -0
- package/dist/lib/MUI/Switch/Switch.d.ts +4 -0
- package/dist/lib/MUI/Switch/Switch.d.ts.map +1 -0
- package/dist/lib/MUI/Switch/Switch.js +4 -0
- package/dist/lib/MUI/Switch/Switch.js.map +1 -0
- package/dist/lib/MUI/Tooltip/Tooltip.d.ts +4 -0
- package/dist/lib/MUI/Tooltip/Tooltip.d.ts.map +1 -0
- package/dist/lib/MUI/Tooltip/Tooltip.js +4 -0
- package/dist/lib/MUI/Tooltip/Tooltip.js.map +1 -0
- package/dist/lib/MUI/Typography/Typography.d.ts +6 -0
- package/dist/lib/MUI/Typography/Typography.d.ts.map +1 -0
- package/dist/lib/MUI/Typography/Typography.js +4 -0
- package/dist/lib/MUI/Typography/Typography.js.map +1 -0
- package/dist/lib/button/Button.d.ts +10 -0
- package/dist/lib/button/Button.d.ts.map +1 -0
- package/dist/lib/button/Button.js +41 -0
- package/dist/lib/button/Button.js.map +1 -0
- package/dist/lib/button/LoadingButton.d.ts +8 -0
- package/dist/lib/button/LoadingButton.d.ts.map +1 -0
- package/dist/lib/button/LoadingButton.js +30 -0
- package/dist/lib/button/LoadingButton.js.map +1 -0
- package/dist/lib/button-group/ButtonGroup.d.ts +12 -0
- package/dist/lib/button-group/ButtonGroup.d.ts.map +1 -0
- package/dist/lib/button-group/ButtonGroup.js +19 -0
- package/dist/lib/button-group/ButtonGroup.js.map +1 -0
- package/dist/lib/chip/Chip.d.ts +10 -0
- package/dist/lib/chip/Chip.d.ts.map +1 -0
- package/dist/lib/chip/Chip.js +32 -0
- package/dist/lib/chip/Chip.js.map +1 -0
- package/dist/lib/icon/Icon.d.ts +6 -0
- package/dist/lib/icon/Icon.d.ts.map +1 -0
- package/dist/lib/icon/Icon.js +3 -0
- package/dist/lib/icon/Icon.js.map +1 -0
- package/dist/lib/menu-item/SelectMenuItem.d.ts +7 -0
- package/dist/lib/menu-item/SelectMenuItem.d.ts.map +1 -0
- package/dist/lib/menu-item/SelectMenuItem.js +24 -0
- package/dist/lib/menu-item/SelectMenuItem.js.map +1 -0
- package/dist/lib/radio/Radio.d.ts +14 -0
- package/dist/lib/radio/Radio.d.ts.map +1 -0
- package/dist/lib/radio/Radio.js +35 -0
- package/dist/lib/radio/Radio.js.map +1 -0
- package/dist/lib/select/OutlinedSelect.d.ts +4 -0
- package/dist/lib/select/OutlinedSelect.d.ts.map +1 -0
- package/dist/lib/select/OutlinedSelect.js +89 -0
- package/dist/lib/select/OutlinedSelect.js.map +1 -0
- package/dist/lib/select/Select.d.ts +4 -0
- package/dist/lib/select/Select.d.ts.map +1 -0
- package/dist/lib/select/Select.js +11 -0
- package/dist/lib/select/Select.js.map +1 -0
- package/dist/lib/select/StandardSelect.d.ts +4 -0
- package/dist/lib/select/StandardSelect.d.ts.map +1 -0
- package/dist/lib/select/StandardSelect.js +59 -0
- package/dist/lib/select/StandardSelect.js.map +1 -0
- package/dist/lib/text-field/TextField.d.ts +4 -0
- package/dist/lib/text-field/TextField.d.ts.map +1 -0
- package/dist/lib/text-field/TextField.js +74 -0
- package/dist/lib/text-field/TextField.js.map +1 -0
- package/dist/lib/topic-filter/TopicFilter.d.ts +14 -0
- package/dist/lib/topic-filter/TopicFilter.d.ts.map +1 -0
- package/dist/lib/topic-filter/TopicFilter.js +92 -0
- package/dist/lib/topic-filter/TopicFilter.js.map +1 -0
- package/dist/lib/tutorial/Tutorial.d.ts +9 -0
- package/dist/lib/tutorial/Tutorial.d.ts.map +1 -0
- package/dist/lib/tutorial/Tutorial.js +42 -0
- package/dist/lib/tutorial/Tutorial.js.map +1 -0
- package/dist/lib/tutorial/TutorialStep.d.ts +28 -0
- package/dist/lib/tutorial/TutorialStep.d.ts.map +1 -0
- package/dist/lib/tutorial/TutorialStep.js +69 -0
- package/dist/lib/tutorial/TutorialStep.js.map +1 -0
- package/dist/styles/colors.d.ts +12 -0
- package/dist/styles/colors.d.ts.map +1 -0
- package/dist/styles/colors.js +6 -0
- package/dist/styles/colors.js.map +1 -0
- package/dist/styles/locales/dateTimePicker.d.ts +85 -0
- package/dist/styles/locales/dateTimePicker.d.ts.map +1 -0
- package/dist/styles/locales/dateTimePicker.js +71 -0
- package/dist/styles/locales/dateTimePicker.js.map +1 -0
- package/dist/styles/theme.d.ts +78 -0
- package/dist/styles/theme.d.ts.map +1 -0
- package/dist/styles/theme.js +206 -0
- package/dist/styles/theme.js.map +1 -0
- package/dist/utils/capitalize.d.ts +2 -0
- package/dist/utils/capitalize.d.ts.map +1 -0
- package/dist/utils/capitalize.js +4 -0
- package/dist/utils/capitalize.js.map +1 -0
- package/package.json +25 -33
- package/dist/index.js.mjs +0 -1479
- package/dist/index.js.umd.js +0 -2
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Chip as MuiChip } from '@mui/material';
|
|
3
|
+
import { chipClasses } from '@mui/material/Chip';
|
|
4
|
+
export const Chip = ({ color = 'progressUpgraded', checked = false, ...props }) => {
|
|
5
|
+
const { sx: chipSx = [], ...otherChipProps } = props;
|
|
6
|
+
return (_jsx(MuiChip, { variant: "outlined", sx: [
|
|
7
|
+
(theme) => ({
|
|
8
|
+
...(checked
|
|
9
|
+
? {
|
|
10
|
+
backgroundColor: theme.palette[color].main,
|
|
11
|
+
color: theme.palette[color].contrastText,
|
|
12
|
+
[`.MuiChip-icon`]: {
|
|
13
|
+
color: theme.palette[color].contrastText,
|
|
14
|
+
},
|
|
15
|
+
}
|
|
16
|
+
: {
|
|
17
|
+
backgroundColor: theme.palette[color].light,
|
|
18
|
+
color: theme.palette.text.primary,
|
|
19
|
+
}),
|
|
20
|
+
[`&.${chipClasses.clickable}:hover`]: {
|
|
21
|
+
backgroundColor: theme.palette[color].dark,
|
|
22
|
+
color: theme.palette[color].contrastText,
|
|
23
|
+
},
|
|
24
|
+
[`&.${chipClasses.clickable}:hover > .MuiChip-icon`]: {
|
|
25
|
+
color: theme.palette[color].contrastText,
|
|
26
|
+
},
|
|
27
|
+
}),
|
|
28
|
+
...(Array.isArray(chipSx) ? chipSx : [chipSx]),
|
|
29
|
+
], ...otherChipProps }));
|
|
30
|
+
};
|
|
31
|
+
export default Chip;
|
|
32
|
+
//# sourceMappingURL=Chip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Chip.js","sourceRoot":"","sources":["../../../src/lib/chip/Chip.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,IAAI,OAAO,EAA6B,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAcjD,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EACnB,KAAK,GAAG,kBAAkB,EAC1B,OAAO,GAAG,KAAK,EACf,GAAG,KAAK,EACE,EAAE,EAAE;IACd,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,cAAc,EAAE,GAAG,KAAK,CAAC;IACrD,OAAO,CACL,KAAC,OAAO,IACN,OAAO,EAAC,UAAU,EAClB,EAAE,EAAE;YACF,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACV,GAAG,CAAC,OAAO;oBACT,CAAC,CAAC;wBACE,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI;wBAC1C,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY;wBACxC,CAAC,eAAe,CAAC,EAAE;4BACjB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY;yBACzC;qBACF;oBACH,CAAC,CAAC;wBACE,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK;wBAC3C,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;qBAClC,CAAC;gBACN,CAAC,KAAK,WAAW,CAAC,SAAS,QAAQ,CAAC,EAAE;oBACpC,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI;oBAC1C,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY;iBACzC;gBACD,CAAC,KAAK,WAAW,CAAC,SAAS,wBAAwB,CAAC,EAAE;oBACpD,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY;iBACzC;aACF,CAAC;YACF,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;SAC/C,KACG,cAAc,GAClB,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { IconProps as MuiIconProps } from '@mui/material';
|
|
2
|
+
export type IconProps = Pick<MuiIconProps, 'color' | 'children' | 'fontSize'>;
|
|
3
|
+
export declare const Icon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").IconTypeMap<{}, "span">> & {
|
|
4
|
+
muiName: string;
|
|
5
|
+
};
|
|
6
|
+
//# sourceMappingURL=Icon.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../../../src/lib/icon/Icon.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAmB,SAAS,IAAI,YAAY,EAAE,MAAM,eAAe,CAAC;AAE3E,MAAM,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,OAAO,GAAG,UAAU,GAAG,UAAU,CAAC,CAAC;AAE9E,eAAO,MAAM,IAAI;;CAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Icon.js","sourceRoot":"","sources":["../../../src/lib/icon/Icon.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,IAAI,OAAO,EAA6B,MAAM,eAAe,CAAC;AAI3E,MAAM,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { MenuItemProps } from '@mui/material';
|
|
2
|
+
export interface SelectMenuItemProps extends MenuItemProps {
|
|
3
|
+
value?: any;
|
|
4
|
+
}
|
|
5
|
+
declare const SelectMenuItem: import("react").ForwardRefExoticComponent<Omit<SelectMenuItemProps, "ref"> & import("react").RefAttributes<HTMLLIElement>>;
|
|
6
|
+
export default SelectMenuItem;
|
|
7
|
+
//# sourceMappingURL=SelectMenuItem.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectMenuItem.d.ts","sourceRoot":"","sources":["../../../src/lib/menu-item/SelectMenuItem.tsx"],"names":[],"mappings":"AACA,OAAO,EAAY,aAAa,EAAE,MAAM,eAAe,CAAC;AAKxD,MAAM,WAAW,mBAAoB,SAAQ,aAAa;IAExD,KAAK,CAAC,EAAE,GAAG,CAAC;CACb;AAED,QAAA,MAAM,cAAc,4HA2BnB,CAAC;AAIF,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef } from 'react';
|
|
3
|
+
import { MenuItem } from '@mui/material';
|
|
4
|
+
import { menuItemClasses } from '@mui/material/MenuItem';
|
|
5
|
+
const SelectMenuItem = forwardRef((props, ref) => {
|
|
6
|
+
const { children, value = '', ...otherProps } = props;
|
|
7
|
+
const { sx: menuItemSx, ...otherMenuItemProps } = otherProps;
|
|
8
|
+
return (_jsx(MenuItem, { ref: ref, sx: [
|
|
9
|
+
(theme) => ({
|
|
10
|
+
whiteSpace: 'unset',
|
|
11
|
+
color: theme.palette.text.primary,
|
|
12
|
+
[`&.${menuItemClasses.selected}`]: {
|
|
13
|
+
backgroundColor: theme.palette.grey[300],
|
|
14
|
+
'&:hover': {
|
|
15
|
+
backgroundColor: theme.palette.grey[200],
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
}),
|
|
19
|
+
...(Array.isArray(menuItemSx) ? menuItemSx : [menuItemSx]),
|
|
20
|
+
], value: value, ...otherMenuItemProps, children: children }));
|
|
21
|
+
});
|
|
22
|
+
SelectMenuItem.displayName = 'SelectMenuItem';
|
|
23
|
+
export default SelectMenuItem;
|
|
24
|
+
//# sourceMappingURL=SelectMenuItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectMenuItem.js","sourceRoot":"","sources":["../../../src/lib/menu-item/SelectMenuItem.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAiB,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AASzD,MAAM,cAAc,GAAG,UAAU,CAC/B,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IACb,MAAM,EAAE,QAAQ,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,UAAU,EAAE,GAAG,KAAK,CAAC;IACtD,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,kBAAkB,EAAE,GAAG,UAAU,CAAC;IAC7D,OAAO,CACL,KAAC,QAAQ,IACP,GAAG,EAAE,GAAG,EACR,EAAE,EAAE;YACF,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACV,UAAU,EAAE,OAAO;gBACnB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;gBACjC,CAAC,KAAK,eAAe,CAAC,QAAQ,EAAE,CAAC,EAAE;oBACjC,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;oBACxC,SAAS,EAAE;wBACT,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;qBACzC;iBACF;aACF,CAAC;YACF,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;SAC3D,EACD,KAAK,EAAE,KAAK,KACR,kBAAkB,YAErB,QAAQ,GACA,CACZ,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,cAAc,CAAC,WAAW,GAAG,gBAAgB,CAAC;AAE9C,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { FormControlLabelProps as MuiFormControlLabelProps, RadioProps as MuiRadioProps, TypographyProps as MuiTypographyProps } from '@mui/material';
|
|
2
|
+
export interface RadioProps extends Omit<MuiFormControlLabelProps, 'control'> {
|
|
3
|
+
color?: 'primary' | 'secondary' | 'default';
|
|
4
|
+
size?: 'medium' | 'small';
|
|
5
|
+
caption?: string;
|
|
6
|
+
FormControlLabelProps?: Partial<MuiFormControlLabelProps>;
|
|
7
|
+
RadioProps?: Partial<MuiRadioProps> & {
|
|
8
|
+
'data-testid'?: string;
|
|
9
|
+
};
|
|
10
|
+
TypographyProps?: Partial<MuiTypographyProps>;
|
|
11
|
+
}
|
|
12
|
+
export declare const Radio: React.FC<RadioProps>;
|
|
13
|
+
export default Radio;
|
|
14
|
+
//# sourceMappingURL=Radio.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Radio.d.ts","sourceRoot":"","sources":["../../../src/lib/radio/Radio.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,qBAAqB,IAAI,wBAAwB,EAEjD,UAAU,IAAI,aAAa,EAC3B,eAAe,IAAI,kBAAkB,EAEtC,MAAM,eAAe,CAAC;AAiBvB,MAAM,WAAW,UAAW,SAAQ,IAAI,CAAC,wBAAwB,EAAE,SAAS,CAAC;IAC3E,KAAK,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;IAC5C,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qBAAqB,CAAC,EAAE,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAC1D,UAAU,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjE,eAAe,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;CAC/C;AAED,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CAwDtC,CAAC;AAEF,eAAe,KAAK,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { styled } from '@mui/material/styles';
|
|
3
|
+
import { FormControlLabel, Radio as MuiRadio, Typography, } from '@mui/material';
|
|
4
|
+
import { formControlLabelClasses } from '@mui/material/FormControlLabel';
|
|
5
|
+
import { radioClasses } from '@mui/material/Radio';
|
|
6
|
+
// self-defined-components
|
|
7
|
+
const StyledFormControlLabel = styled(FormControlLabel)(({ theme }) => ({
|
|
8
|
+
[`& .${formControlLabelClasses.label}`]: {
|
|
9
|
+
color: theme.palette.text.secondary,
|
|
10
|
+
[`&.${formControlLabelClasses.disabled}`]: {
|
|
11
|
+
color: theme.palette.text.disabled,
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
[`& .${radioClasses.checked} + .${formControlLabelClasses.label}`]: {
|
|
15
|
+
color: theme.palette.text.primary,
|
|
16
|
+
},
|
|
17
|
+
}));
|
|
18
|
+
export const Radio = ({ checked, disabled, label, labelPlacement, value, FormControlLabelProps = {}, RadioProps = {}, TypographyProps = {}, color = 'secondary', size = 'medium', caption = '', }) => {
|
|
19
|
+
const { sx: radioSx = [], ...otherRadioProps } = RadioProps;
|
|
20
|
+
const { sx: typographySx = [], ...otherTypographyProps } = TypographyProps;
|
|
21
|
+
return (_jsxs(_Fragment, { children: [_jsx(StyledFormControlLabel, { control: _jsx(MuiRadio, { sx: [
|
|
22
|
+
(theme) => ({
|
|
23
|
+
color: theme.palette.text.primary,
|
|
24
|
+
}),
|
|
25
|
+
...(Array.isArray(radioSx) ? radioSx : [radioSx]),
|
|
26
|
+
], color: color, size: size, ...otherRadioProps }), checked: checked, disabled: disabled, label: label, labelPlacement: labelPlacement, value: value, ...FormControlLabelProps }), caption && (_jsx(Typography, { sx: [
|
|
27
|
+
(theme) => ({
|
|
28
|
+
color: theme.palette.text.disabled,
|
|
29
|
+
margin: '0 0 0 30px',
|
|
30
|
+
}),
|
|
31
|
+
...(Array.isArray(typographySx) ? typographySx : [typographySx]),
|
|
32
|
+
], variant: "body2", ...otherTypographyProps, children: caption }))] }));
|
|
33
|
+
};
|
|
34
|
+
export default Radio;
|
|
35
|
+
//# sourceMappingURL=Radio.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Radio.js","sourceRoot":"","sources":["../../../src/lib/radio/Radio.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EACL,gBAAgB,EAEhB,KAAK,IAAI,QAAQ,EAGjB,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,0BAA0B;AAC1B,MAAM,sBAAsB,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IACtE,CAAC,MAAM,uBAAuB,CAAC,KAAK,EAAE,CAAC,EAAE;QACvC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS;QACnC,CAAC,KAAK,uBAAuB,CAAC,QAAQ,EAAE,CAAC,EAAE;YACzC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ;SACnC;KACF;IACD,CAAC,MAAM,YAAY,CAAC,OAAO,OAAO,uBAAuB,CAAC,KAAK,EAAE,CAAC,EAAE;QAClE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;KAClC;CACF,CAAC,CAAC,CAAC;AAWJ,MAAM,CAAC,MAAM,KAAK,GAAyB,CAAC,EAC1C,OAAO,EACP,QAAQ,EACR,KAAK,EACL,cAAc,EACd,KAAK,EACL,qBAAqB,GAAG,EAAE,EAC1B,UAAU,GAAG,EAAE,EACf,eAAe,GAAG,EAAE,EACpB,KAAK,GAAG,WAAW,EACnB,IAAI,GAAG,QAAQ,EACf,OAAO,GAAG,EAAE,GACb,EAAE,EAAE;IACH,MAAM,EAAE,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,eAAe,EAAE,GAAG,UAAU,CAAC;IAC5D,MAAM,EAAE,EAAE,EAAE,YAAY,GAAG,EAAE,EAAE,GAAG,oBAAoB,EAAE,GAAG,eAAe,CAAC;IAE3E,OAAO,CACL,8BACE,KAAC,sBAAsB,IACrB,OAAO,EACL,KAAC,QAAQ,IACP,EAAE,EAAE;wBACF,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;4BACV,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;yBAClC,CAAC;wBACF,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;qBAClD,EACD,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,KACN,eAAe,GACnB,EAEJ,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EACZ,cAAc,EAAE,cAAc,EAC9B,KAAK,EAAE,KAAK,KACR,qBAAqB,GACzB,EACD,OAAO,IAAI,CACV,KAAC,UAAU,IACT,EAAE,EAAE;oBACF,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;wBACV,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ;wBAClC,MAAM,EAAE,YAAY;qBACrB,CAAC;oBACF,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;iBACjE,EACD,OAAO,EAAC,OAAO,KACX,oBAAoB,YAEvB,OAAO,GACG,CACd,IACA,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OutlinedSelect.d.ts","sourceRoot":"","sources":["../../../src/lib/select/OutlinedSelect.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAE,WAAW,IAAI,YAAY,EAAE,MAAM,kBAAkB,CAAC;AA+C/D,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CA2GjD,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { styled } from '@mui/material/styles';
|
|
3
|
+
import { FormControl, FormHelperText, InputLabel, OutlinedInput, Select, } from '@mui/material';
|
|
4
|
+
import { formHelperTextClasses } from '@mui/material/FormHelperText';
|
|
5
|
+
import { inputBaseClasses } from '@mui/material/InputBase';
|
|
6
|
+
import { inputLabelClasses } from '@mui/material/InputLabel';
|
|
7
|
+
import { outlinedInputClasses } from '@mui/material/OutlinedInput';
|
|
8
|
+
// self-defined-components
|
|
9
|
+
const StyledInputLabel = styled(InputLabel, {
|
|
10
|
+
shouldForwardProp: (prop) => prop !== 'color',
|
|
11
|
+
})(({ color = 'primary', theme }) => ({
|
|
12
|
+
color: theme.palette.text.secondary,
|
|
13
|
+
[`&.${inputLabelClasses.outlined}`]: {
|
|
14
|
+
[`&:not(.${inputLabelClasses.disabled}) .${inputLabelClasses.focused}`]: {
|
|
15
|
+
color: theme.palette.action.active,
|
|
16
|
+
},
|
|
17
|
+
[`&.${inputLabelClasses.sizeSmall}:not(.${inputLabelClasses.shrink})`]: {
|
|
18
|
+
transform: 'translate(12px, 12px) scale(1)',
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
// eslint-disable-next-line
|
|
22
|
+
[`&.${inputLabelClasses.shrink}:not(.${inputLabelClasses.error}):not(.${inputLabelClasses.disabled}).${inputLabelClasses.focused}`]: {
|
|
23
|
+
color: theme.palette[color].main,
|
|
24
|
+
},
|
|
25
|
+
[`&.${inputLabelClasses.shrink}`]: {
|
|
26
|
+
backgroundColor: '#ffffff',
|
|
27
|
+
padding: '0 2px',
|
|
28
|
+
},
|
|
29
|
+
}));
|
|
30
|
+
const StyledOutlinedInput = styled(OutlinedInput)(({ theme }) => ({
|
|
31
|
+
[`&.${outlinedInputClasses.root}`]: {
|
|
32
|
+
[`&.${outlinedInputClasses.error}.${outlinedInputClasses.focused} .${outlinedInputClasses.notchedOutline}`]: {
|
|
33
|
+
borderColor: `${theme.palette.error.main}`,
|
|
34
|
+
},
|
|
35
|
+
[`&.${inputBaseClasses.sizeSmall} > .${inputBaseClasses.input}`]: {
|
|
36
|
+
padding: '12.5px 15px 12.5px 12px',
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
[`& .${outlinedInputClasses.input}`]: {
|
|
40
|
+
color: theme.palette.text.primary,
|
|
41
|
+
'&:focus': {
|
|
42
|
+
background: 'rgba(0,0,0,0)',
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
}));
|
|
46
|
+
export const OutlinedSelect = ({ label, helperText, FormControlProps = {}, InputLabelProps = {}, InputProps = {}, SelectProps = {}, MenuProps = {}, FormHelperTextProps = {}, className, children, color = 'primary', size = 'small', paperMaxHeight = 'auto', error = false, hasLabel = true, hasShrink = false, value = '', disabled = false, }) => {
|
|
47
|
+
const hasHelperText = !!helperText;
|
|
48
|
+
const { sx: formControlSx = [], ...otherFormControlProps } = FormControlProps;
|
|
49
|
+
const { sx: formHelperTextSx = [], ...otherFormHelperTextProps } = FormHelperTextProps;
|
|
50
|
+
return (_jsxs(FormControl, { sx: [
|
|
51
|
+
(theme) => ({
|
|
52
|
+
backgroundColor: 'white',
|
|
53
|
+
'&:hover': {
|
|
54
|
+
// eslint-disable-next-line
|
|
55
|
+
[`& :not(.${outlinedInputClasses.disabled}):not(.${outlinedInputClasses.error}) .${outlinedInputClasses.notchedOutline}`]: {
|
|
56
|
+
borderColor: theme.palette[color].main,
|
|
57
|
+
},
|
|
58
|
+
},
|
|
59
|
+
}),
|
|
60
|
+
...(Array.isArray(formControlSx) ? formControlSx : [formControlSx]),
|
|
61
|
+
], size: size, disabled: disabled, error: error, color: color, className: className, ...otherFormControlProps, children: [hasLabel && (_jsx(StyledInputLabel, { color: color, shrink: hasShrink ? true : undefined, ...InputLabelProps, children: label })), _jsx(Select, { value: value, label: hasLabel ? label : undefined, MenuProps: {
|
|
62
|
+
PaperProps: {
|
|
63
|
+
sx: {
|
|
64
|
+
maxHeight: paperMaxHeight,
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
disableAutoFocusItem: true,
|
|
68
|
+
anchorOrigin: {
|
|
69
|
+
vertical: 2,
|
|
70
|
+
horizontal: 'left',
|
|
71
|
+
},
|
|
72
|
+
transformOrigin: {
|
|
73
|
+
vertical: 'top',
|
|
74
|
+
horizontal: 'left',
|
|
75
|
+
},
|
|
76
|
+
...MenuProps,
|
|
77
|
+
}, input: _jsx(StyledOutlinedInput, { color: color, label: hasLabel ? label : undefined, disabled: disabled, ...InputProps }), ...SelectProps, children: children }), hasHelperText && (_jsx(FormHelperText, { sx: [
|
|
78
|
+
{
|
|
79
|
+
[`&.${formHelperTextClasses.root}`]: {
|
|
80
|
+
marginLeft: 0,
|
|
81
|
+
},
|
|
82
|
+
},
|
|
83
|
+
...(Array.isArray(formHelperTextSx)
|
|
84
|
+
? formHelperTextSx
|
|
85
|
+
: [formHelperTextSx]),
|
|
86
|
+
], ...otherFormHelperTextProps, children: helperText }))] }));
|
|
87
|
+
};
|
|
88
|
+
export default OutlinedSelect;
|
|
89
|
+
//# sourceMappingURL=OutlinedSelect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OutlinedSelect.js","sourceRoot":"","sources":["../../../src/lib/select/OutlinedSelect.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/lib/select/Select.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAI/C,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAKxC,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { OutlinedSelect } from './OutlinedSelect';
|
|
3
|
+
import { StandardSelect } from './StandardSelect';
|
|
4
|
+
export const Select = ({ variant, ...props }) => {
|
|
5
|
+
if (variant === 'outlined') {
|
|
6
|
+
return _jsx(OutlinedSelect, { ...props });
|
|
7
|
+
}
|
|
8
|
+
return _jsx(StandardSelect, { ...props });
|
|
9
|
+
};
|
|
10
|
+
export default Select;
|
|
11
|
+
//# sourceMappingURL=Select.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Select.js","sourceRoot":"","sources":["../../../src/lib/select/Select.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,CAAC,MAAM,MAAM,GAA0B,CAAC,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IACrE,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC3B,OAAO,KAAC,cAAc,OAAK,KAAK,GAAI,CAAC;IACvC,CAAC;IACD,OAAO,KAAC,cAAc,OAAK,KAAK,GAAI,CAAC;AACvC,CAAC,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StandardSelect.d.ts","sourceRoot":"","sources":["../../../src/lib/select/StandardSelect.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,WAAW,IAAI,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAwC/D,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAiEjD,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { styled } from '@mui/material/styles';
|
|
3
|
+
import { FormControl, FormHelperText, Input, InputLabel, Select, } from '@mui/material';
|
|
4
|
+
import { inputClasses } from '@mui/material/Input';
|
|
5
|
+
import { inputLabelClasses } from '@mui/material/InputLabel';
|
|
6
|
+
// self-defined-components
|
|
7
|
+
const StyledInputLabel = styled(InputLabel, {
|
|
8
|
+
shouldForwardProp: (prop) => prop !== 'color',
|
|
9
|
+
})(({ color = 'primary', theme }) => ({
|
|
10
|
+
[`&.${inputLabelClasses.root}`]: {
|
|
11
|
+
color: theme.palette.text.disabled,
|
|
12
|
+
},
|
|
13
|
+
[`&.${inputLabelClasses.focused}`]: {
|
|
14
|
+
color: theme.palette[color].main,
|
|
15
|
+
},
|
|
16
|
+
[`&.${inputLabelClasses.error}`]: {
|
|
17
|
+
color: theme.palette.error.main,
|
|
18
|
+
},
|
|
19
|
+
}));
|
|
20
|
+
const StyledInput = styled(Input, {
|
|
21
|
+
shouldForwardProp: (prop) => prop !== 'color',
|
|
22
|
+
})(({ color = 'primary', theme }) => ({
|
|
23
|
+
color: theme.palette.text.primary,
|
|
24
|
+
[`& .${inputClasses.input}`]: {
|
|
25
|
+
'&:focus': {
|
|
26
|
+
background: 'rgba(0,0,0,0)',
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
[`&.${inputClasses.underline}:not(.${inputClasses.disabled}):not(.${inputClasses.error})`]: {
|
|
30
|
+
'&:after,&:hover:before': {
|
|
31
|
+
borderBottomColor: theme.palette[color].main,
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
[`&.${inputClasses.underline}.${inputClasses.error}:not(.${inputClasses.disabled})`]: {
|
|
35
|
+
'&:after,&:hover:before': {
|
|
36
|
+
borderBottomColor: theme.palette.error.main,
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
}));
|
|
40
|
+
export const StandardSelect = ({ label, helperText, FormControlProps = {}, InputLabelProps = {}, InputProps = {}, SelectProps = {}, FormHelperTextProps = {}, className, children, color = 'primary', size = 'small', paperMaxHeight = 'auto', error = false, hasLabel = true, hasShrink = false, value = '', disabled = false, }) => {
|
|
41
|
+
const hasHelperText = !!helperText;
|
|
42
|
+
return (_jsxs(FormControl, { variant: "standard", color: color, size: size, disabled: disabled, error: error, className: className, ...FormControlProps, children: [_jsx(StyledInputLabel, { color: color, shrink: hasShrink ? true : undefined, ...InputLabelProps, children: hasLabel ? label : undefined }), _jsx(Select, { value: value, MenuProps: {
|
|
43
|
+
PaperProps: {
|
|
44
|
+
sx: {
|
|
45
|
+
maxHeight: paperMaxHeight,
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
anchorOrigin: {
|
|
49
|
+
vertical: 2,
|
|
50
|
+
horizontal: 'left',
|
|
51
|
+
},
|
|
52
|
+
transformOrigin: {
|
|
53
|
+
vertical: 'top',
|
|
54
|
+
horizontal: 'left',
|
|
55
|
+
},
|
|
56
|
+
}, input: _jsx(StyledInput, { color: color, ...InputProps }), ...SelectProps, children: children }), hasHelperText && (_jsx(FormHelperText, { ...FormHelperTextProps, children: helperText }))] }));
|
|
57
|
+
};
|
|
58
|
+
export default StandardSelect;
|
|
59
|
+
//# sourceMappingURL=StandardSelect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StandardSelect.js","sourceRoot":"","sources":["../../../src/lib/select/StandardSelect.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EACL,WAAW,EACX,cAAc,EACd,KAAK,EACL,UAAU,EAGV,MAAM,GACP,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAG7D,0BAA0B;AAC1B,MAAM,gBAAgB,GAAG,MAAM,CAAC,UAAU,EAAE;IAC1C,iBAAiB,EAAE,CAAC,IAAY,EAAW,EAAE,CAAC,IAAI,KAAK,OAAO;CAC/D,CAAC,CAAqB,CAAC,EAAE,KAAK,GAAG,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC,KAAK,iBAAiB,CAAC,IAAI,EAAE,CAAC,EAAE;QAC/B,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ;KACnC;IACD,CAAC,KAAK,iBAAiB,CAAC,OAAO,EAAE,CAAC,EAAE;QAClC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI;KACjC;IACD,CAAC,KAAK,iBAAiB,CAAC,KAAK,EAAE,CAAC,EAAE;QAChC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI;KAChC;CACF,CAAC,CAAC,CAAC;AAEJ,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,EAAE;IAChC,iBAAiB,EAAE,CAAC,IAAY,EAAW,EAAE,CAAC,IAAI,KAAK,OAAO;CAC/D,CAAC,CAAgB,CAAC,EAAE,KAAK,GAAG,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IACnD,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;IACjC,CAAC,MAAM,YAAY,CAAC,KAAK,EAAE,CAAC,EAAE;QAC5B,SAAS,EAAE;YACT,UAAU,EAAE,eAAe;SAC5B;KACF;IACD,CAAC,KAAK,YAAY,CAAC,SAAS,SAAS,YAAY,CAAC,QAAQ,UAAU,YAAY,CAAC,KAAK,GAAG,CAAC,EACxF;QACE,wBAAwB,EAAE;YACxB,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI;SAC7C;KACF;IACH,CAAC,KAAK,YAAY,CAAC,SAAS,IAAI,YAAY,CAAC,KAAK,SAAS,YAAY,CAAC,QAAQ,GAAG,CAAC,EAClF;QACE,wBAAwB,EAAE;YACxB,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI;SAC5C;KACF;CACJ,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,MAAM,cAAc,GAA2B,CAAC,EACrD,KAAK,EACL,UAAU,EACV,gBAAgB,GAAG,EAAE,EACrB,eAAe,GAAG,EAAE,EACpB,UAAU,GAAG,EAAE,EACf,WAAW,GAAG,EAAE,EAChB,mBAAmB,GAAG,EAAE,EACxB,SAAS,EACT,QAAQ,EACR,KAAK,GAAG,SAAS,EACjB,IAAI,GAAG,OAAO,EACd,cAAc,GAAG,MAAM,EACvB,KAAK,GAAG,KAAK,EACb,QAAQ,GAAG,IAAI,EACf,SAAS,GAAG,KAAK,EACjB,KAAK,GAAG,EAAE,EACV,QAAQ,GAAG,KAAK,GACjB,EAAE,EAAE;IACH,MAAM,aAAa,GAAG,CAAC,CAAC,UAAU,CAAC;IAEnC,OAAO,CACL,MAAC,WAAW,IACV,OAAO,EAAC,UAAU,EAClB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,KAChB,gBAAgB,aAEpB,KAAC,gBAAgB,IACf,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,KAChC,eAAe,YAElB,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,GACZ,EACnB,KAAC,MAAM,IACL,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE;oBACT,UAAU,EAAE;wBACV,EAAE,EAAE;4BACF,SAAS,EAAE,cAAc;yBAC1B;qBACF;oBACD,YAAY,EAAE;wBACZ,QAAQ,EAAE,CAAC;wBACX,UAAU,EAAE,MAAM;qBACnB;oBACD,eAAe,EAAE;wBACf,QAAQ,EAAE,KAAK;wBACf,UAAU,EAAE,MAAM;qBACnB;iBACF,EACD,KAAK,EAAE,KAAC,WAAW,IAAC,KAAK,EAAE,KAAK,KAAM,UAAU,GAAI,KAChD,WAAW,YAEd,QAAQ,GACF,EACR,aAAa,IAAI,CAChB,KAAC,cAAc,OAAK,mBAAmB,YAAG,UAAU,GAAkB,CACvE,IACW,CACf,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextField.d.ts","sourceRoot":"","sources":["../../../src/lib/text-field/TextField.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,cAAc,IAAI,iBAAiB,EACpC,MAAM,eAAe,CAAC;AAoDvB,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAwCjD,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { styled } from '@mui/material/styles';
|
|
3
|
+
import { TextField as MuiTextField, } from '@mui/material';
|
|
4
|
+
import { formHelperTextClasses } from '@mui/material/FormHelperText';
|
|
5
|
+
import { inputClasses } from '@mui/material/Input';
|
|
6
|
+
import { inputLabelClasses } from '@mui/material/InputLabel';
|
|
7
|
+
import { outlinedInputClasses } from '@mui/material/OutlinedInput';
|
|
8
|
+
import { textFieldClasses } from '@mui/material/TextField';
|
|
9
|
+
import capitalize from '../../utils/capitalize';
|
|
10
|
+
// self-defined-components
|
|
11
|
+
const StyledTextField = styled(MuiTextField)(({ label, color = 'primary', theme }) => ({
|
|
12
|
+
[`& .${inputLabelClasses.error}`]: {
|
|
13
|
+
[`&:not(.${inputLabelClasses.shrink})`]: {
|
|
14
|
+
color: theme.palette.text.secondary,
|
|
15
|
+
},
|
|
16
|
+
[`&.${inputLabelClasses.disabled}`]: {
|
|
17
|
+
color: theme.palette.text.disabled,
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
[`& .${inputLabelClasses.error}.${inputLabelClasses.focused}`]: {
|
|
21
|
+
color: theme.palette.error.main,
|
|
22
|
+
},
|
|
23
|
+
// For variant: standard | filled
|
|
24
|
+
[`& .${inputClasses.underline}:not(.${inputClasses.disabled})`]: {
|
|
25
|
+
[`&.MuiInputBase-color${capitalize(color)}:hover:before`]: {
|
|
26
|
+
borderColor: theme.palette[color].main,
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
// For variant: outlined
|
|
30
|
+
[`& .${inputClasses.disabled} .${outlinedInputClasses.notchedOutline}`]: {
|
|
31
|
+
borderStyle: 'dotted',
|
|
32
|
+
},
|
|
33
|
+
[`& .${inputClasses.error}.${inputClasses.focused} .${outlinedInputClasses.notchedOutline}`]: {
|
|
34
|
+
borderColor: theme.palette.error.main,
|
|
35
|
+
},
|
|
36
|
+
[`&.${textFieldClasses.root} :not(.${inputClasses.disabled}):not(.${inputClasses.error})`]: {
|
|
37
|
+
[`&.MuiInputBase-color${capitalize(color)}:hover .${outlinedInputClasses.notchedOutline}`]: {
|
|
38
|
+
borderColor: theme.palette[color].main,
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
[`& .${outlinedInputClasses.notchedOutline}`]: {
|
|
42
|
+
'& > legend': {
|
|
43
|
+
maxWidth: label === '' && 0,
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
}));
|
|
47
|
+
export const TextField = (props) => {
|
|
48
|
+
const { slotProps = {}, ...otherProps } = props;
|
|
49
|
+
const { inputLabel: inputLabelProps = {}, input: inputProps = {}, formHelperText: formHelperTextProps = {}, ...otherSlotProps } = slotProps;
|
|
50
|
+
const hasEndAdornment = !!('endAdornment' in inputProps && inputProps?.endAdornment);
|
|
51
|
+
return (_jsx(StyledTextField, { slotProps: {
|
|
52
|
+
inputLabel: {
|
|
53
|
+
shrink: hasEndAdornment ? true : undefined,
|
|
54
|
+
...inputLabelProps,
|
|
55
|
+
},
|
|
56
|
+
input: inputProps,
|
|
57
|
+
formHelperText: {
|
|
58
|
+
...formHelperTextProps,
|
|
59
|
+
sx: [
|
|
60
|
+
(theme) => ({
|
|
61
|
+
[`&.${formHelperTextClasses.root}`]: {
|
|
62
|
+
marginLeft: 0,
|
|
63
|
+
[`&.${inputClasses.error}`]: {
|
|
64
|
+
color: theme.palette.error.main,
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
}),
|
|
68
|
+
],
|
|
69
|
+
},
|
|
70
|
+
...otherSlotProps,
|
|
71
|
+
}, ...otherProps }));
|
|
72
|
+
};
|
|
73
|
+
export default TextField;
|
|
74
|
+
//# sourceMappingURL=TextField.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextField.js","sourceRoot":"","sources":["../../../src/lib/text-field/TextField.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { QueryTopicInfo } from '../../interfaces/shared-types';
|
|
2
|
+
export interface TopicFilterProps {
|
|
3
|
+
topicList: QueryTopicInfo;
|
|
4
|
+
onTopicSelected: (selectedTopicId: string, selectedInfo: {
|
|
5
|
+
layerNumber: number;
|
|
6
|
+
}) => void;
|
|
7
|
+
hasArrow: boolean;
|
|
8
|
+
selectedTopicIds: string[];
|
|
9
|
+
onResetClick?: () => void;
|
|
10
|
+
hasResetOption?: boolean;
|
|
11
|
+
}
|
|
12
|
+
declare const TopicFilter: ({ topicList, onTopicSelected, hasArrow, selectedTopicIds, onResetClick, hasResetOption, }: TopicFilterProps) => import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
export default TopicFilter;
|
|
14
|
+
//# sourceMappingURL=TopicFilter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TopicFilter.d.ts","sourceRoot":"","sources":["../../../src/lib/topic-filter/TopicFilter.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAW,MAAM,+BAA+B,CAAC;AAW7E,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,cAAc,CAAC;IAC1B,eAAe,EAAE,CACf,eAAe,EAAE,MAAM,EACvB,YAAY,EAAE;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,KAClC,IAAI,CAAC;IACV,QAAQ,EAAE,OAAO,CAAC;IAClB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAYD,QAAA,MAAM,WAAW,GAAI,2FASlB,gBAAgB,4CAmJlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { Box, useMediaQuery } from '@mui/material';
|
|
4
|
+
import ArrowRightRoundedIcon from '@mui/icons-material/ArrowRightRounded';
|
|
5
|
+
import SelectMenuItem from '../menu-item/SelectMenuItem';
|
|
6
|
+
import Select from '../select/Select';
|
|
7
|
+
// self-defined-configs
|
|
8
|
+
const LABEL = '請選擇';
|
|
9
|
+
const OPTION_FOR_RESET = 'option-for-reset';
|
|
10
|
+
const NO_SELECT = '';
|
|
11
|
+
const getTopicSelectValue = (layerNumber, selectedTopicIds, hasResetOption) => {
|
|
12
|
+
const defaultValue = hasResetOption && layerNumber === 0 ? OPTION_FOR_RESET : NO_SELECT;
|
|
13
|
+
return selectedTopicIds?.[layerNumber + 1] || defaultValue;
|
|
14
|
+
};
|
|
15
|
+
const TopicFilter = ({ topicList, onTopicSelected, hasArrow, selectedTopicIds, onResetClick = () => {
|
|
16
|
+
// do nothing.
|
|
17
|
+
}, hasResetOption = false, }) => {
|
|
18
|
+
const isUpMd = useMediaQuery((theme) => theme.breakpoints.up('md'));
|
|
19
|
+
const [isFocusedList, setIsFocusedList] = useState([]);
|
|
20
|
+
const handleChange = (e, layerNumber) => {
|
|
21
|
+
if (e.target.value === OPTION_FOR_RESET) {
|
|
22
|
+
onResetClick();
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
onTopicSelected(e.target.value, {
|
|
26
|
+
layerNumber,
|
|
27
|
+
});
|
|
28
|
+
setIsFocusedList((prevList) => [
|
|
29
|
+
...prevList.slice(0, layerNumber + 1),
|
|
30
|
+
false,
|
|
31
|
+
]);
|
|
32
|
+
};
|
|
33
|
+
return (_jsx(Box, { sx: {
|
|
34
|
+
display: 'flex',
|
|
35
|
+
alignItems: 'center',
|
|
36
|
+
flexWrap: 'wrap',
|
|
37
|
+
}, children: topicList.map((topic, layerNumber) => {
|
|
38
|
+
const hasLabel = isFocusedList[layerNumber] || !selectedTopicIds[layerNumber + 1];
|
|
39
|
+
if (topic.isError) {
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
return (_jsxs(Box, { sx: {
|
|
43
|
+
display: 'flex',
|
|
44
|
+
alignItems: 'center',
|
|
45
|
+
width: isUpMd ? undefined : '100%',
|
|
46
|
+
}, children: [hasArrow && layerNumber !== 0 && (_jsx(ArrowRightRoundedIcon, { sx: (theme) => ({
|
|
47
|
+
margin: theme.spacing(-1, -1.5),
|
|
48
|
+
fontSize: theme.spacing(7),
|
|
49
|
+
color: '#444',
|
|
50
|
+
}), fontSize: "large", "data-testid": "topic-filter-arrow" })), (() => {
|
|
51
|
+
if (topic.isLoading) {
|
|
52
|
+
return (_jsx(Select, { variant: "outlined", size: "small", label: "\u8F09\u5165\u8CC7\u6599\u4E2D...", disabled: true, FormControlProps: {
|
|
53
|
+
sx: (theme) => ({
|
|
54
|
+
width: isUpMd ? 220 : '100%',
|
|
55
|
+
margin: theme.spacing(1),
|
|
56
|
+
}),
|
|
57
|
+
} }));
|
|
58
|
+
}
|
|
59
|
+
return (_jsxs(Select, { variant: "outlined", size: "small", label: LABEL, paperMaxHeight: 412, hasLabel: hasLabel, value: getTopicSelectValue(layerNumber, selectedTopicIds, hasResetOption), SelectProps: {
|
|
60
|
+
'data-testid': `layered-topic-${layerNumber}`,
|
|
61
|
+
}, InputProps: {
|
|
62
|
+
inputProps: {
|
|
63
|
+
'aria-label': `layered-topic-${layerNumber}`,
|
|
64
|
+
},
|
|
65
|
+
onChange: (e) => {
|
|
66
|
+
handleChange(e, layerNumber);
|
|
67
|
+
},
|
|
68
|
+
onFocus: () => {
|
|
69
|
+
setIsFocusedList((prevList) => {
|
|
70
|
+
const newList = [...prevList];
|
|
71
|
+
newList[layerNumber] = true;
|
|
72
|
+
return newList;
|
|
73
|
+
});
|
|
74
|
+
},
|
|
75
|
+
onBlur: () => {
|
|
76
|
+
setIsFocusedList((prevList) => {
|
|
77
|
+
const newList = [...prevList];
|
|
78
|
+
newList[layerNumber] = false;
|
|
79
|
+
return newList;
|
|
80
|
+
});
|
|
81
|
+
},
|
|
82
|
+
}, FormControlProps: {
|
|
83
|
+
sx: (theme) => ({
|
|
84
|
+
width: isUpMd ? 220 : '100%',
|
|
85
|
+
margin: theme.spacing(1),
|
|
86
|
+
}),
|
|
87
|
+
}, children: [_jsx(SelectMenuItem, { disabled: true, value: "", children: LABEL }), hasResetOption && layerNumber === 0 && (_jsx(SelectMenuItem, { value: OPTION_FOR_RESET, children: "\u6240\u6709\u79D1\u76EE" })), topic.data.children.map((option) => (_jsx(SelectMenuItem, { value: option.id, "data-testid": `layered-menuitem-${layerNumber}`, "data-is-content-topic": option.hasContentChild, children: option.title }, option.id)))] }));
|
|
88
|
+
})()] }, layerNumber));
|
|
89
|
+
}) }));
|
|
90
|
+
};
|
|
91
|
+
export default TopicFilter;
|
|
92
|
+
//# sourceMappingURL=TopicFilter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TopicFilter.js","sourceRoot":"","sources":["../../../src/lib/topic-filter/TopicFilter.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { TutorialStepProps } from './TutorialStep';
|
|
2
|
+
export interface TutorialProps {
|
|
3
|
+
steps?: TutorialStepProps[];
|
|
4
|
+
initialStep?: number;
|
|
5
|
+
onClose: () => void;
|
|
6
|
+
}
|
|
7
|
+
export declare const Tutorial: ({ steps, initialStep, onClose, }: TutorialProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export default Tutorial;
|
|
9
|
+
//# sourceMappingURL=Tutorial.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Tutorial.d.ts","sourceRoot":"","sources":["../../../src/lib/tutorial/Tutorial.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAgB,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEjE,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,eAAO,MAAM,QAAQ,GAAI,kCAItB,aAAa,4CAoDf,CAAC;AACF,eAAe,QAAQ,CAAC"}
|