@evoke-platform/ui-components 1.0.0-dev.139 → 1.0.0-dev.141

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.
@@ -3,8 +3,9 @@ import { Button, List, ListItem, Popper, TextField, Typography } from '../../../
3
3
  import { Box } from '../../../layout';
4
4
  import InputMask from 'react-input-mask';
5
5
  import { CancelOutlined } from '../../../../icons';
6
+ import { ClickAwayListener } from '@mui/material';
6
7
  const AddressFieldComponent = (props) => {
7
- const { property, defaultValue, error, errorMessage, onBlur, readOnly, required, size, placeholder, mask, isMultiLineText, rows, inputMaskPlaceholderChar, queryAddresses } = props;
8
+ const { property, defaultValue, error, errorMessage, onBlur, readOnly, required, size, placeholder, mask, isMultiLineText, rows, inputMaskPlaceholderChar, queryAddresses, } = props;
8
9
  const [value, setValue] = useState(defaultValue !== null && defaultValue !== void 0 ? defaultValue : '');
9
10
  // const [inputValue, setInputValue] = useState<string>('');
10
11
  const [selectOptions, setSelectOptions] = useState([]);
@@ -19,22 +20,31 @@ const AddressFieldComponent = (props) => {
19
20
  setAnchorEl(e.currentTarget);
20
21
  const inputValue = e.target.value;
21
22
  setValue(inputValue);
22
- queryAddresses && queryAddresses(value).then(addresses => {
23
- setSelectOptions(addresses.filter(address => address.address.line1).map((address) => {
24
- let label = '', sublabel = '';
25
- if (address.address.line1)
26
- label = label.concat(address.address.line1);
27
- if (address.address.city)
28
- sublabel = sublabel.concat(`${address.address.city}`);
29
- if (address.address.county)
30
- sublabel = sublabel ? sublabel.concat(`, ${address.address.county}`) : address.address.county;
31
- if (address.address.state)
32
- sublabel = sublabel ? sublabel.concat(`, ${address.address.state}`) : address.address.state;
33
- if (address.address.zipCode)
34
- sublabel = sublabel ? sublabel.concat(` ${address.address.zipCode}`) : address.address.zipCode;
35
- return { label, sublabel, value: address.address };
36
- }));
37
- });
23
+ queryAddresses &&
24
+ queryAddresses(value).then((addresses) => {
25
+ setSelectOptions(addresses
26
+ .filter((address) => address.address.line1)
27
+ .map((address) => {
28
+ let label = '', sublabel = '';
29
+ if (address.address.line1)
30
+ label = label.concat(address.address.line1);
31
+ if (address.address.city)
32
+ sublabel = sublabel.concat(`${address.address.city}`);
33
+ if (address.address.county)
34
+ sublabel = sublabel
35
+ ? sublabel.concat(`, ${address.address.county}`)
36
+ : address.address.county;
37
+ if (address.address.state)
38
+ sublabel = sublabel
39
+ ? sublabel.concat(`, ${address.address.state}`)
40
+ : address.address.state;
41
+ if (address.address.zipCode)
42
+ sublabel = sublabel
43
+ ? sublabel.concat(` ${address.address.zipCode}`)
44
+ : address.address.zipCode;
45
+ return { label, sublabel, value: address.address };
46
+ }));
47
+ });
38
48
  props.onChange(id, inputValue, property, undefined, true);
39
49
  };
40
50
  const handleClick = (option) => {
@@ -46,10 +56,10 @@ const AddressFieldComponent = (props) => {
46
56
  setAnchorEl(null);
47
57
  };
48
58
  return (React.createElement(Box, null,
49
- !mask ? React.createElement(TextField, { id: id, "aria-describedby": popperId, onChange: !readOnly ? handleChange : undefined, error: error, errorMessage: errorMessage, value: value, fullWidth: true, onBlur: onBlur, size: size !== null && size !== void 0 ? size : 'medium', placeholder: placeholder, InputProps: {
59
+ !mask ? (React.createElement(TextField, { id: id, "aria-describedby": popperId, onChange: !readOnly ? handleChange : undefined, error: error, errorMessage: errorMessage, value: value, fullWidth: true, onBlur: onBlur, size: size !== null && size !== void 0 ? size : 'medium', placeholder: placeholder, InputProps: {
50
60
  type: 'search',
51
- autoComplete: 'off'
52
- }, required: required, readOnly: readOnly, multiline: property.type === 'string' && !readOnly && isMultiLineText, rows: isMultiLineText ? (rows ? rows : 3) : undefined }) : React.createElement(InputMask, { mask: mask, maskChar: inputMaskPlaceholderChar !== null && inputMaskPlaceholderChar !== void 0 ? inputMaskPlaceholderChar : '_', value: value, onChange: !readOnly ? handleChange : undefined, onBlur: onBlur, alwaysShowMask: true }, () => (React.createElement(TextField, { id: id, sx: readOnly
61
+ autoComplete: 'off',
62
+ }, required: required, readOnly: readOnly, multiline: property.type === 'string' && !readOnly && isMultiLineText, rows: isMultiLineText ? (rows ? rows : 3) : undefined })) : (React.createElement(InputMask, { mask: mask, maskChar: inputMaskPlaceholderChar !== null && inputMaskPlaceholderChar !== void 0 ? inputMaskPlaceholderChar : '_', value: value, onChange: !readOnly ? handleChange : undefined, onBlur: onBlur, alwaysShowMask: true }, () => (React.createElement(TextField, { id: id, sx: readOnly
53
63
  ? {
54
64
  '& .MuiOutlinedInput-notchedOutline': {
55
65
  border: 'none',
@@ -59,24 +69,24 @@ const AddressFieldComponent = (props) => {
59
69
  backgroundColor: '#f4f6f8',
60
70
  },
61
71
  }
62
- : undefined, required: required, error: error, errorMessage: errorMessage, InputProps: { readOnly: readOnly }, fullWidth: true, size: size !== null && size !== void 0 ? size : 'medium', type: 'text', multiline: property.type === 'string' && !readOnly && isMultiLineText, rows: isMultiLineText ? (rows ? rows : 3) : undefined, value: value }))),
63
- !readOnly && React.createElement(Popper, { id: popperId, open: open, anchorEl: anchorEl, placement: 'bottom-start', sx: { margin: '0 0 0 35px', background: 'white' } },
64
- React.createElement(List, null,
65
- selectOptions.map((option) => {
66
- return (React.createElement(ListItem, { onClick: () => handleClick(option), sx: {
67
- '&:hover': {
68
- cursor: 'pointer',
69
- backgroundColor: 'rgba(0, 0, 0, 0.04)',
70
- }
71
- } },
72
- React.createElement(Box, { sx: {
73
- flexGrow: 1,
72
+ : undefined, required: required, error: error, errorMessage: errorMessage, InputProps: { readOnly: readOnly }, fullWidth: true, size: size !== null && size !== void 0 ? size : 'medium', type: 'text', multiline: property.type === 'string' && !readOnly && isMultiLineText, rows: isMultiLineText ? (rows ? rows : 3) : undefined, value: value })))),
73
+ !readOnly && (React.createElement(ClickAwayListener, { onClickAway: handleClose },
74
+ React.createElement(Popper, { id: popperId, open: open, anchorEl: anchorEl, placement: "bottom-start", sx: { margin: '0 0 0 35px', background: 'white', zIndex: 2000 } },
75
+ React.createElement(List, null,
76
+ selectOptions.map((option) => {
77
+ return (React.createElement(ListItem, { onClick: () => handleClick(option), sx: {
78
+ '&:hover': {
79
+ cursor: 'pointer',
80
+ backgroundColor: 'rgba(0, 0, 0, 0.04)',
81
+ },
74
82
  } },
75
- React.createElement(Typography, null, option.label),
76
- React.createElement("br", null),
77
- React.createElement(Typography, { sx: { color: '#586069' } }, option.sublabel))));
78
- }),
79
- React.createElement(ListItem, { sx: { justifyContent: 'center' } },
80
- React.createElement(Button, { fullWidth: true, size: 'small', color: 'primary', variant: "outlined", startIcon: React.createElement(CancelOutlined, null), onClick: () => handleClose() }, "Close"))))));
83
+ React.createElement(Box, { sx: {
84
+ flexGrow: 1,
85
+ } },
86
+ React.createElement(Typography, null, option.label),
87
+ React.createElement(Typography, { sx: { color: '#586069' } }, option.sublabel))));
88
+ }),
89
+ React.createElement(ListItem, { sx: { justifyContent: 'center' } },
90
+ React.createElement(Button, { fullWidth: true, size: "small", color: "primary", variant: "outlined", startIcon: React.createElement(CancelOutlined, null), onClick: () => handleClose() }, "Close"))))))));
81
91
  };
82
92
  export default AddressFieldComponent;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@evoke-platform/ui-components",
3
- "version": "1.0.0-dev.139",
3
+ "version": "1.0.0-dev.141",
4
4
  "description": "",
5
5
  "main": "dist/published/index.js",
6
6
  "module": "dist/published/index.js",