sag_components 1.0.87 → 1.0.89

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.
@@ -19,7 +19,7 @@ var _styles = require("@mui/material/styles");
19
19
  var _CheckBoxOutlineBlank = _interopRequireDefault(require("@mui/icons-material/CheckBoxOutlineBlank"));
20
20
  var _CheckBox = _interopRequireDefault(require("@mui/icons-material/CheckBox"));
21
21
  var _Search = _interopRequireDefault(require("@mui/icons-material/Search.js"));
22
- var _ArrowDropDownIcon = _interopRequireDefault(require("./icons/ArrowDropDownIcon.jsx"));
22
+ var _ArrowDropDownIcon = require("./icons/ArrowDropDownIcon");
23
23
  //import PropTypes from "prop-types";
24
24
 
25
25
  // import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
@@ -53,10 +53,14 @@ var Dropdown = function Dropdown(_ref) {
53
53
  onInputChange = _ref.onInputChange,
54
54
  _ref$labelColor = _ref.labelColor,
55
55
  labelColor = _ref$labelColor === void 0 ? "#1B30AA" : _ref$labelColor,
56
- required = _ref.required;
56
+ required = _ref.required,
57
+ defaultValue = _ref.defaultValue,
58
+ _ref$allowedInput = _ref.allowedInput,
59
+ allowedInput = _ref$allowedInput === void 0 ? "all" : _ref$allowedInput;
57
60
  /**
58
61
  * SAG Dropdown
59
62
  */
63
+
60
64
  var _useState = (0, _react.useState)(null),
61
65
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
62
66
  currentInputValue = _useState2[0],
@@ -131,6 +135,31 @@ var Dropdown = function Dropdown(_ref) {
131
135
  newValue: newValue
132
136
  });
133
137
  };
138
+ var getOptionByLabel = function getOptionByLabel(label) {
139
+ if (!options) return null;
140
+ var foundOption = options.find(function (item) {
141
+ return item.label == label;
142
+ });
143
+ if (!foundOption) return null;
144
+ return foundOption;
145
+ };
146
+ var isInputAllowed = function isInputAllowed(inputChar) {
147
+ var NUMERIC_REGEX = /^[0-9-]+$/;
148
+ var ALPHA_REGEX = /^[a-zA-Z]+$/;
149
+ var ALPHA_NUMERIC_REGEX = /^[a-zA-Z0-9-]+$/;
150
+ switch (allowedInput) {
151
+ case "all":
152
+ return true;
153
+ case "alpha":
154
+ if (ALPHA_REGEX.test(inputChar)) return true;else return false;
155
+ case "numeric":
156
+ if (NUMERIC_REGEX.test(inputChar)) return true;else return false;
157
+ case "alphaNumeric":
158
+ if (ALPHA_NUMERIC_REGEX.test(inputChar)) return true;else return false;
159
+ default:
160
+ return true;
161
+ }
162
+ };
134
163
  var getAutocompleteSingle = function getAutocompleteSingle() {
135
164
  return /*#__PURE__*/_react.default.createElement(_styles.ThemeProvider, {
136
165
  theme: theme
@@ -142,18 +171,24 @@ var Dropdown = function Dropdown(_ref) {
142
171
  onInputChangeHandler(event, newInputValue);
143
172
  },
144
173
  disablePortal: true,
174
+ defaultValue: defaultValue && getOptionByLabel(defaultValue) != null ? getOptionByLabel(defaultValue) : null,
145
175
  id: "combo-box",
146
176
  options: options,
147
177
  sx: {
148
178
  width: width
149
179
  },
150
- popupIcon: showPopupIcon ? /*#__PURE__*/_react.default.createElement(_ArrowDropDownIcon.default, {
180
+ popupIcon: showPopupIcon ? /*#__PURE__*/_react.default.createElement(_ArrowDropDownIcon.ArrowDropDownIcon, {
151
181
  width: "0.6em",
152
182
  height: "0.6em"
153
183
  }) : null,
154
184
  forcePopupIcon: "auto",
155
185
  renderInput: function renderInput(params) {
156
186
  return /*#__PURE__*/_react.default.createElement(_TextField.default, Object.assign({}, params, {
187
+ onKeyDown: function onKeyDown(event) {
188
+ if (!isInputAllowed(event.key)) {
189
+ event.preventDefault();
190
+ }
191
+ },
157
192
  required: required,
158
193
  label: text,
159
194
  size: size,
@@ -172,7 +207,7 @@ var Dropdown = function Dropdown(_ref) {
172
207
  }),
173
208
  InputLabelProps: {
174
209
  style: {
175
- color: labelColor,
210
+ //color: labelColor,
176
211
  fontSize: "14px",
177
212
  fontFamily: "Lato"
178
213
  }
@@ -210,7 +245,7 @@ var Dropdown = function Dropdown(_ref) {
210
245
  getOptionLabel: function getOptionLabel(option) {
211
246
  return option.label;
212
247
  },
213
- popupIcon: showPopupIcon ? /*#__PURE__*/_react.default.createElement(_ArrowDropDownIcon.default, {
248
+ popupIcon: showPopupIcon ? /*#__PURE__*/_react.default.createElement(_ArrowDropDownIcon.ArrowDropDownIcon, {
214
249
  width: "0.6em",
215
250
  height: "0.6em"
216
251
  }) : null,
@@ -233,6 +268,11 @@ var Dropdown = function Dropdown(_ref) {
233
268
  size: size,
234
269
  sx: getTextFieldStyle(),
235
270
  placeholder: placeHolder,
271
+ onKeyDown: function onKeyDown(event) {
272
+ if (!isInputAllowed(event.key)) {
273
+ event.preventDefault();
274
+ }
275
+ },
236
276
  required: required,
237
277
  InputProps: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, params.InputProps), {}, {
238
278
  style: {
@@ -247,7 +287,7 @@ var Dropdown = function Dropdown(_ref) {
247
287
  }),
248
288
  InputLabelProps: {
249
289
  style: {
250
- color: labelColor,
290
+ //color: labelColor,
251
291
  fontSize: "16px",
252
292
  fontFamily: "Lato"
253
293
  }
@@ -257,10 +297,15 @@ var Dropdown = function Dropdown(_ref) {
257
297
  size: size,
258
298
  sx: getTextFieldStyle(),
259
299
  placeholder: placeHolder,
300
+ onKeyDown: function onKeyDown(event) {
301
+ if (!isInputAllowed(event.key)) {
302
+ event.preventDefault();
303
+ }
304
+ },
260
305
  required: required,
261
306
  InputLabelProps: {
262
307
  style: {
263
- color: labelColor,
308
+ //color: labelColor,
264
309
  fontSize: "16px",
265
310
  fontFamily: "Lato"
266
311
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sag_components",
3
- "version": "1.0.87",
3
+ "version": "1.0.89",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {