tenjin-ui-kit 0.2.173 → 0.2.174

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.
@@ -12,7 +12,7 @@ var _Clear = _interopRequireDefault(require("@mui/icons-material/Clear"));
12
12
  var _styles = require("@mui/material/styles");
13
13
  var _propTypes = _interopRequireDefault(require("prop-types"));
14
14
  var _text = _interopRequireDefault(require("../text"));
15
- var _excluded = ["value", "id", "onChange", "fullWidth", "label", "isRequired", "isDisabled", "errorMessage", "error", "initialValue"];
15
+ var _excluded = ["value", "id", "onChange", "fullWidth", "label", "isRequired", "isDisabled", "errorMessage", "error", "initialValue", "height"];
16
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
17
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
18
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -40,8 +40,9 @@ var InputWithChip = function InputWithChip(_ref) {
40
40
  errorMessage = _ref.errorMessage,
41
41
  error = _ref.error,
42
42
  initialValue = _ref.initialValue,
43
+ height = _ref.height,
43
44
  rest = _objectWithoutProperties(_ref, _excluded);
44
- var _useState = (0, _react.useState)(initialValue ? _toConsumableArray(initialValue) : []),
45
+ var _useState = (0, _react.useState)(value ? _toConsumableArray(value) : []),
45
46
  _useState2 = _slicedToArray(_useState, 2),
46
47
  chips = _useState2[0],
47
48
  setChips = _useState2[1];
@@ -50,6 +51,10 @@ var InputWithChip = function InputWithChip(_ref) {
50
51
  _useState4 = _slicedToArray(_useState3, 2),
51
52
  txtValue = _useState4[0],
52
53
  setTxtValue = _useState4[1];
54
+ var _useState5 = (0, _react.useState)(null),
55
+ _useState6 = _slicedToArray(_useState5, 2),
56
+ duplicateWarnig = _useState6[0],
57
+ setDuplicateWarning = _useState6[1];
53
58
  (0, _react.useEffect)(function () {
54
59
  if (onChange) {
55
60
  onChange(chips);
@@ -60,14 +65,26 @@ var InputWithChip = function InputWithChip(_ref) {
60
65
  setTxtValue(value.replace(",", ""));
61
66
  };
62
67
  var handleAddChip = function handleAddChip(event) {
68
+ setDuplicateWarning({
69
+ status: false,
70
+ message: ""
71
+ });
63
72
  if ((event.key === "Enter" || event.keyCode === 32 || event.keyCode === 188 || event.keyCode === 9 || event.type === "blur") && event.target.value.replace(",", "")) {
64
73
  var _value = event.target.value;
65
74
  var newValue = typeof _value === "string" ? _value.replace(",", "").trim() : _value.trim();
66
75
  // if (chips.includes(newValue)) return; //add if any info or anything needs to be shown
67
- setChips([].concat(_toConsumableArray(chips), [newValue]));
68
- onChange([].concat(_toConsumableArray(chips), [newValue]));
69
- setTxtValue("");
70
- event.target.parentNode.querySelector("input").value = "";
76
+ var isPresent = chips.includes(newValue);
77
+ if (isPresent) {
78
+ setDuplicateWarning({
79
+ status: true,
80
+ message: "".concat(newValue, " already exists")
81
+ });
82
+ } else {
83
+ setChips([].concat(_toConsumableArray(chips), [newValue]));
84
+ onChange([].concat(_toConsumableArray(chips), [newValue]));
85
+ setTxtValue("");
86
+ event.target.parentNode.querySelector("input").value = "";
87
+ }
71
88
  }
72
89
  };
73
90
  var handleDeleteChip = function handleDeleteChip(chipToDelete) {
@@ -120,25 +137,42 @@ var InputWithChip = function InputWithChip(_ref) {
120
137
  },
121
138
  onChange: onTextValueChange,
122
139
  helperText: errorMessage,
123
- error: error,
124
- InputProps: {
125
- startAdornment: chips.map(function (chip, index) {
126
- return /*#__PURE__*/_react.default.createElement(_Chip.default, {
127
- key: "".concat(chip, "-").concat(index),
128
- label: /*#__PURE__*/_react.default.createElement(_text.default, null, chip),
129
- onDelete: function onDelete() {
130
- return handleDeleteChip(chip);
131
- },
132
- deleteIcon: /*#__PURE__*/_react.default.createElement(_Clear.default, {
133
- fontSize: "small"
134
- }),
135
- style: {
136
- margin: "0.2rem"
137
- },
138
- size: "small"
139
- });
140
- })
141
- }
140
+ error: error
141
+ // InputProps={{
142
+ // startAdornment: chips.map((chip, index) => (
143
+ // <Chip
144
+ // key={`${chip}-${index}`}
145
+ // label={<Text>{chip}</Text>}
146
+ // onDelete={() => handleDeleteChip(chip)}
147
+ // deleteIcon={<ClearIcon fontSize="small" />}
148
+ // style={{ margin: "0.2rem" }}
149
+ // size="small"
150
+ // />
151
+ // )),
152
+ // }}
153
+ }))), (duplicateWarnig === null || duplicateWarnig === void 0 ? void 0 : duplicateWarnig.status) && /*#__PURE__*/_react.default.createElement(_material.Alert, {
154
+ severity: "warning"
155
+ }, duplicateWarnig === null || duplicateWarnig === void 0 ? void 0 : duplicateWarnig.message), !!chips && /*#__PURE__*/_react.default.createElement(_material.Box, {
156
+ maxHeight: theme.spacing(20),
157
+ overflow: "auto"
158
+ // border={!!chips && "1px solid #E7E7E7"}
159
+ ,
160
+ mt: theme.spacing(2)
161
+ }, /*#__PURE__*/_react.default.createElement(_text.default, null, chips.map(function (chip, index) {
162
+ return /*#__PURE__*/_react.default.createElement(_Chip.default, {
163
+ key: "".concat(chip, "-").concat(index),
164
+ label: /*#__PURE__*/_react.default.createElement(_text.default, null, chip),
165
+ onDelete: function onDelete() {
166
+ return handleDeleteChip(chip);
167
+ },
168
+ deleteIcon: /*#__PURE__*/_react.default.createElement(_Clear.default, {
169
+ fontSize: "small"
170
+ }),
171
+ style: {
172
+ margin: "0.2rem"
173
+ },
174
+ size: "small"
175
+ });
142
176
  }))));
143
177
  };
144
178
  InputWithChip.propTypes = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tenjin-ui-kit",
3
- "version": "0.2.173",
3
+ "version": "0.2.174",
4
4
  "repository": {
5
5
  "url": "https://gitlab.com/yethi/react/tenjin-ui-kit.git"
6
6
  },