versacall-core-library-react 2.0.43 → 2.0.45

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.
@@ -23,12 +23,18 @@ var _Typography = _interopRequireDefault(require("@material-ui/core/Typography")
23
23
 
24
24
  var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
25
25
 
26
+ var _Link = _interopRequireDefault(require("@material-ui/core/Link"));
27
+
26
28
  var _TextField = _interopRequireDefault(require("@material-ui/core/TextField"));
27
29
 
28
30
  var _Switch = _interopRequireDefault(require("@material-ui/core/Switch"));
29
31
 
30
32
  var _Dialog = _interopRequireDefault(require("@material-ui/core/Dialog"));
31
33
 
34
+ var _DialogActions = _interopRequireDefault(require("@material-ui/core/DialogActions"));
35
+
36
+ var _DialogContent = _interopRequireDefault(require("@material-ui/core/DialogContent"));
37
+
32
38
  var _Chip = _interopRequireDefault(require("@material-ui/core/Chip"));
33
39
 
34
40
  var _propTypes = _interopRequireDefault(require("prop-types"));
@@ -43,6 +49,18 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
43
49
 
44
50
  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; }
45
51
 
52
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
53
+
54
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
55
+
56
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
57
+
58
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
59
+
60
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
61
+
62
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
63
+
46
64
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
47
65
 
48
66
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
@@ -89,7 +107,9 @@ var CoreShiftTagFilter = /*#__PURE__*/function (_Component) {
89
107
 
90
108
  _this = _super.call(this);
91
109
  _this.state = {
92
- open: false
110
+ open: false,
111
+ showAddCustom: false,
112
+ customTag: ''
93
113
  };
94
114
  return _this;
95
115
  }
@@ -125,6 +145,33 @@ var CoreShiftTagFilter = /*#__PURE__*/function (_Component) {
125
145
  basicFilter: basicFilter
126
146
  });
127
147
  }
148
+ }, {
149
+ key: "addCustom",
150
+ value: function addCustom() {
151
+ var customTag = this.state.customTag;
152
+
153
+ var newFilter = _objectSpread({}, this.props.filter);
154
+
155
+ if (!newFilter.shiftTagFilters.includes(customTag)) {
156
+ newFilter.shiftTagFilters.push(customTag);
157
+ this.props.updateFilter(newFilter);
158
+ }
159
+
160
+ this.setState({
161
+ showAddCustom: false
162
+ });
163
+ }
164
+ }, {
165
+ key: "handleKeyPress",
166
+ value: function handleKeyPress(e) {
167
+ var customTag = this.state.customTag;
168
+
169
+ if (e.which === 13) {
170
+ if (customTag.length > 0) {
171
+ this.addCustom();
172
+ }
173
+ }
174
+ }
128
175
  }, {
129
176
  key: "renderFilter",
130
177
  value: function renderFilter() {
@@ -181,6 +228,8 @@ var CoreShiftTagFilter = /*#__PURE__*/function (_Component) {
181
228
  }
182
229
  }, tagInfo.tag), "(".concat(tagInfo.count, ")"));
183
230
  }
231
+ /* eslint-disable jsx-a11y/anchor-is-valid */
232
+
184
233
  }, {
185
234
  key: "render",
186
235
  value: function render() {
@@ -192,7 +241,23 @@ var CoreShiftTagFilter = /*#__PURE__*/function (_Component) {
192
241
  hideAdvanced = _this$props.hideAdvanced,
193
242
  tags = _this$props.tags,
194
243
  customTitle = _this$props.customTitle;
195
- var open = this.state.open;
244
+ var _this$state = this.state,
245
+ open = _this$state.open,
246
+ showAddCustom = _this$state.showAddCustom,
247
+ customTag = _this$state.customTag;
248
+
249
+ var adjustedTags = _toConsumableArray(tags);
250
+
251
+ filter.shiftTagFilters.forEach(function (x) {
252
+ if (!adjustedTags.find(function (tagInfo) {
253
+ return tagInfo.tag === x;
254
+ })) {
255
+ adjustedTags.push({
256
+ tag: x,
257
+ count: 0
258
+ });
259
+ }
260
+ });
196
261
  return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
197
262
  style: {
198
263
  display: 'flex',
@@ -283,12 +348,80 @@ var CoreShiftTagFilter = /*#__PURE__*/function (_Component) {
283
348
  style: {
284
349
  padding: 10
285
350
  }
286
- }, "Shifts", " (".concat(filter.shiftTagFilters.length, ")"), /*#__PURE__*/_react.default.createElement("div", {
351
+ }, /*#__PURE__*/_react.default.createElement("div", {
352
+ style: {
353
+ display: 'flex'
354
+ }
355
+ }, /*#__PURE__*/_react.default.createElement("div", {
356
+ style: {
357
+ flexGrow: 1
358
+ }
359
+ }, "Shifts", " (".concat(filter.shiftTagFilters.length, ")")), /*#__PURE__*/_react.default.createElement(_Link.default, {
360
+ component: "button",
361
+ variant: "body2",
362
+ style: {
363
+ marginRight: 10
364
+ },
365
+ onClick: function onClick() {
366
+ return _this3.props.updateFilter(_objectSpread(_objectSpread({}, filter), {}, {
367
+ shiftTagFilters: []
368
+ }));
369
+ }
370
+ }, intl.formatMessage({
371
+ id: '__clear'
372
+ })), /*#__PURE__*/_react.default.createElement(_Link.default, {
373
+ component: "button",
374
+ variant: "body2",
375
+ onClick: function onClick() {
376
+ return _this3.setState({
377
+ showAddCustom: true,
378
+ customTag: ''
379
+ });
380
+ }
381
+ }, intl.formatMessage({
382
+ id: '__add_custom'
383
+ }))), /*#__PURE__*/_react.default.createElement("div", {
287
384
  style: style.list,
288
385
  className: _scrollbarModule.default.scroll
289
- }, tags.map(function (tagInfo) {
386
+ }, adjustedTags.map(function (tagInfo) {
290
387
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, _this3.renderTag(tagInfo));
291
- })))));
388
+ })), showAddCustom && /*#__PURE__*/_react.default.createElement(_Dialog.default, {
389
+ open: true,
390
+ onClose: function onClose() {
391
+ return _this3.setState({
392
+ showAddCustom: false
393
+ });
394
+ }
395
+ }, /*#__PURE__*/_react.default.createElement(_DialogContent.default, null, /*#__PURE__*/_react.default.createElement(_TextField.default, {
396
+ variant: "outlined",
397
+ label: intl.formatMessage({
398
+ id: '__custom_tag'
399
+ }),
400
+ value: customTag,
401
+ margin: "normal",
402
+ fullWidth: true,
403
+ autoFocus: true,
404
+ InputLabelProps: {
405
+ shrink: true
406
+ },
407
+ onChange: function onChange(e) {
408
+ return _this3.setState({
409
+ customTag: e.target.value.replace(/[^a-z0-9_]/g, '')
410
+ });
411
+ },
412
+ onKeyPress: function onKeyPress(e) {
413
+ return _this3.handleKeyPress(e);
414
+ }
415
+ })), /*#__PURE__*/_react.default.createElement(_DialogActions.default, null, /*#__PURE__*/_react.default.createElement(_Button.default, {
416
+ variant: "contained",
417
+ color: "primary",
418
+ disabled: customTag.length === 0,
419
+ onClick: function onClick() {
420
+ return _this3.addCustom();
421
+ }
422
+ }, intl.formatMessage({
423
+ id: '__add'
424
+ })))))));
292
425
  }
293
426
  }]);
294
427
 
@@ -269,7 +269,9 @@ var CoreTagFilter = /*#__PURE__*/function (_Component) {
269
269
  maxWidth: "md",
270
270
  open: openDialog,
271
271
  onClose: function onClose() {
272
- return _this2.handleMenu(false, '__close');
272
+ return _this2.setState({
273
+ openDialog: false
274
+ });
273
275
  },
274
276
  fullWidth: true
275
277
  }, /*#__PURE__*/_react.default.createElement(_TagFilterBuilder.default, {
@@ -13,13 +13,25 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
 
14
14
  var _Grid = _interopRequireDefault(require("@material-ui/core/Grid"));
15
15
 
16
- var _Typography = _interopRequireDefault(require("@material-ui/core/Typography"));
16
+ var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
17
+
18
+ var _Dialog = _interopRequireDefault(require("@material-ui/core/Dialog"));
19
+
20
+ var _DialogActions = _interopRequireDefault(require("@material-ui/core/DialogActions"));
21
+
22
+ var _DialogContent = _interopRequireDefault(require("@material-ui/core/DialogContent"));
17
23
 
18
24
  var _IconButton = _interopRequireDefault(require("@material-ui/core/IconButton"));
19
25
 
26
+ var _InputAdornment = _interopRequireDefault(require("@material-ui/core/InputAdornment"));
27
+
28
+ var _Link = _interopRequireDefault(require("@material-ui/core/Link"));
29
+
30
+ var _MenuItem = _interopRequireDefault(require("@material-ui/core/MenuItem"));
31
+
20
32
  var _TextField = _interopRequireDefault(require("@material-ui/core/TextField"));
21
33
 
22
- var _InputAdornment = _interopRequireDefault(require("@material-ui/core/InputAdornment"));
34
+ var _Typography = _interopRequireDefault(require("@material-ui/core/Typography"));
23
35
 
24
36
  var _FilterList = _interopRequireDefault(require("@material-ui/icons/FilterList"));
25
37
 
@@ -33,6 +45,8 @@ var _LocalOffer = _interopRequireDefault(require("@material-ui/icons/LocalOffer"
33
45
 
34
46
  var _Category = _interopRequireDefault(require("@material-ui/icons/Category"));
35
47
 
48
+ var _reactIntl = require("react-intl");
49
+
36
50
  var _scrollbarModule = _interopRequireDefault(require("../../css/scrollbar.module.css"));
37
51
 
38
52
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -79,24 +93,60 @@ var style = {
79
93
  }
80
94
  };
81
95
 
96
+ var consolidateTags = function consolidateTags(tagList) {
97
+ var newTagList = [];
98
+ tagList.forEach(function (tagInfo) {
99
+ var existing = newTagList.find(function (x) {
100
+ return x.tag === tagInfo.tag;
101
+ });
102
+
103
+ if (existing) {
104
+ existing.count += tagInfo.count;
105
+ } else {
106
+ newTagList.push({
107
+ tag: tagInfo.tag,
108
+ type: tagInfo.type,
109
+ count: tagInfo.count
110
+ });
111
+ }
112
+ });
113
+ return newTagList;
114
+ };
115
+
82
116
  function TagFilterBuilder(props) {
83
117
  var _useState = (0, _react.useState)(''),
84
118
  _useState2 = _slicedToArray(_useState, 2),
85
119
  search = _useState2[0],
86
120
  setSearch = _useState2[1];
87
121
 
88
- var tags = props.tags,
122
+ var _useState3 = (0, _react.useState)(false),
123
+ _useState4 = _slicedToArray(_useState3, 2),
124
+ showAddCustom = _useState4[0],
125
+ setShowAddCustom = _useState4[1];
126
+
127
+ var _useState5 = (0, _react.useState)([]),
128
+ _useState6 = _slicedToArray(_useState5, 2),
129
+ customTypeOptions = _useState6[0],
130
+ setCustomTypeOptions = _useState6[1];
131
+
132
+ var _useState7 = (0, _react.useState)(''),
133
+ _useState8 = _slicedToArray(_useState7, 2),
134
+ customType = _useState8[0],
135
+ setCustomType = _useState8[1];
136
+
137
+ var _useState9 = (0, _react.useState)(''),
138
+ _useState10 = _slicedToArray(_useState9, 2),
139
+ customTag = _useState10[0],
140
+ setCustomTag = _useState10[1];
141
+
142
+ var intl = props.intl,
143
+ tags = props.tags,
89
144
  filter = props.filter,
90
145
  updateFilter = props.updateFilter,
91
146
  hideModuleTagFilters = props.hideModuleTagFilters,
92
147
  hideModuleLocationFilters = props.hideModuleLocationFilters,
93
148
  hideMonitoringPointTagFilters = props.hideMonitoringPointTagFilters,
94
149
  hideMonitoringPointTypeFilters = props.hideMonitoringPointTypeFilters;
95
- /* return (
96
- <div>
97
- Hello
98
- </div>
99
- ); */
100
150
 
101
151
  var updateSearch = function updateSearch(value) {
102
152
  if (value.length > 0) {
@@ -185,24 +235,130 @@ function TagFilterBuilder(props) {
185
235
  }, tagInfo.tag), "(".concat(tagInfo.count, ")"));
186
236
  };
187
237
 
238
+ var showCustom = function showCustom(which) {
239
+ var typeOptions = [];
240
+
241
+ if (which === 'module') {
242
+ if (!hideModuleTagFilters) {
243
+ typeOptions.push('moduleTagFilters');
244
+ }
245
+
246
+ if (!hideModuleLocationFilters) {
247
+ typeOptions.push('moduleLocationFilters');
248
+ }
249
+
250
+ setCustomType(!hideModuleLocationFilters ? 'moduleLocationFilters' : 'moduleTagFilters');
251
+ } else {
252
+ if (!hideMonitoringPointTagFilters) {
253
+ typeOptions.push('monitoringPointTagFilters');
254
+ }
255
+
256
+ if (!hideMonitoringPointTypeFilters) {
257
+ typeOptions.push('monitoringPointTypeFilters');
258
+ }
259
+
260
+ setCustomType(!hideMonitoringPointTagFilters ? 'monitoringPointTagFilters' : 'monitoringPointTypeFilters');
261
+ }
262
+
263
+ setCustomTypeOptions(typeOptions);
264
+ setCustomTag('');
265
+ setShowAddCustom(true);
266
+ };
267
+
268
+ var addCustomTag = function addCustomTag() {
269
+ var newFilter = _objectSpread({}, filter);
270
+
271
+ if (!newFilter[customType].includes(customTag)) {
272
+ newFilter[customType].push(customTag);
273
+ updateFilter(newFilter);
274
+ }
275
+
276
+ setShowAddCustom(false);
277
+ };
278
+
279
+ var handleKeyPress = function handleKeyPress(e) {
280
+ if (e.which === 13) {
281
+ if (customTag.length > 0) {
282
+ addCustomTag();
283
+ }
284
+ }
285
+ };
286
+
188
287
  var showModules = !hideModuleTagFilters || !hideModuleLocationFilters;
189
288
  var showMonitoringPoints = !hideMonitoringPointTagFilters || !hideMonitoringPointTypeFilters;
190
289
  var columns = 0;
191
290
  if (showModules) columns++;
192
- if (showMonitoringPoints) columns++; // Filter or not
291
+ if (showMonitoringPoints) columns++; // Add any tags that aren't on the supplied list to the supplied list. This is needed in case we reference tags that have been deleted/etc.
292
+ // const adjustedModuleTags = [...tags.moduleTags];
293
+
294
+ var adjustedModuleTags = consolidateTags(tags.moduleTags);
295
+ filter.moduleTagFilters.forEach(function (x) {
296
+ if (!adjustedModuleTags.find(function (tagInfo) {
297
+ return tagInfo.tag === x;
298
+ })) {
299
+ adjustedModuleTags.push({
300
+ tag: x,
301
+ count: 0
302
+ });
303
+ }
304
+ }); // const adjustedLocationTags = [...tags.locationTags];
305
+
306
+ var adjustedLocationTags = consolidateTags(tags.locationTags);
307
+ filter.moduleLocationFilters.forEach(function (x) {
308
+ if (!adjustedLocationTags.find(function (tagInfo) {
309
+ return tagInfo.tag === x;
310
+ })) {
311
+ adjustedLocationTags.push({
312
+ tag: x,
313
+ count: 0
314
+ });
315
+ }
316
+ }); // const adjustedMonitoringPointTags = [...tags.monitoringPointTags];
317
+
318
+ var adjustedMonitoringPointTags = consolidateTags(tags.monitoringPointTags);
319
+ filter.monitoringPointTagFilters.forEach(function (x) {
320
+ if (!adjustedMonitoringPointTags.find(function (tagInfo) {
321
+ return tagInfo.tag === x;
322
+ })) {
323
+ adjustedMonitoringPointTags.push({
324
+ tag: x,
325
+ count: 0
326
+ });
327
+ }
328
+ }); // const adjustedMonitoringPointTypes = [...tags.typeTags];
329
+
330
+ var adjustedMonitoringPointTypes = consolidateTags(tags.typeTags);
331
+ filter.monitoringPointTypeFilters.forEach(function (x) {
332
+ if (!adjustedMonitoringPointTypes.find(function (tagInfo) {
333
+ return tagInfo.tag === x;
334
+ })) {
335
+ adjustedMonitoringPointTypes.push({
336
+ tag: x,
337
+ count: 0
338
+ });
339
+ }
340
+ }); // Filter or not
341
+ // const filteredModuleTags = search.length > 0 ? tags.moduleTags.filter(x => x.tag.includes(search)) : [...tags.moduleTags];
342
+ // const filteredLocationTags = search.length > 0 ? tags.locationTags.filter(x => x.tag.includes(search)) : [...tags.locationTags];
343
+ // const filteredMonitoringPointTags = search.length > 0 ? tags.monitoringPointTags.filter(x => x.tag.includes(search)) : [...tags.monitoringPointTags];
344
+ // const filteredTypeTags = search.length > 0 ? tags.typeTags.filter(x => x.tag.includes(search)) : [...tags.typeTags];
193
345
 
194
- var filteredModuleTags = search.length > 0 ? tags.moduleTags.filter(function (x) {
346
+ var filteredModuleTags = search.length > 0 ? adjustedModuleTags.filter(function (x) {
195
347
  return x.tag.includes(search);
196
- }) : _toConsumableArray(tags.moduleTags);
197
- var filteredLocationTags = search.length > 0 ? tags.locationTags.filter(function (x) {
348
+ }) : _toConsumableArray(adjustedModuleTags);
349
+ var filteredLocationTags = search.length > 0 ? adjustedLocationTags.filter(function (x) {
198
350
  return x.tag.includes(search);
199
- }) : _toConsumableArray(tags.locationTags);
200
- var filteredMonitoringPointTags = search.length > 0 ? tags.monitoringPointTags.filter(function (x) {
351
+ }) : _toConsumableArray(adjustedLocationTags);
352
+ var filteredMonitoringPointTags = search.length > 0 ? adjustedMonitoringPointTags.filter(function (x) {
201
353
  return x.tag.includes(search);
202
- }) : _toConsumableArray(tags.monitoringPointTags);
203
- var filteredTypeTags = search.length > 0 ? tags.typeTags.filter(function (x) {
354
+ }) : _toConsumableArray(adjustedMonitoringPointTags);
355
+ var filteredTypeTags = search.length > 0 ? adjustedMonitoringPointTypes.filter(function (x) {
204
356
  return x.tag.includes(search);
205
- }) : _toConsumableArray(tags.typeTags); // Sort by highest quantities of tags
357
+ }) : _toConsumableArray(adjustedMonitoringPointTypes); // const filteredModuleTags = adjustedModuleTags;
358
+ // const filteredLocationTags = adjustedLocationTags;
359
+ // const filteredMonitoringPointTags = adjustedMonitoringPointTags;
360
+ // const filteredTypeTags = adjustedMonitoringPointTypes;
361
+ // Sort by highest quantities of tags
206
362
 
207
363
  filteredModuleTags.sort(function (a, b) {
208
364
  return b.count - a.count;
@@ -216,7 +372,9 @@ function TagFilterBuilder(props) {
216
372
  filteredTypeTags.sort(function (a, b) {
217
373
  return b.count - a.count;
218
374
  });
219
- return /*#__PURE__*/_react.default.createElement(_Grid.default, {
375
+ /* eslint-disable jsx-a11y/anchor-is-valid */
376
+
377
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Grid.default, {
220
378
  container: true
221
379
  }, /*#__PURE__*/_react.default.createElement(_Grid.default, {
222
380
  item: true,
@@ -254,7 +412,37 @@ function TagFilterBuilder(props) {
254
412
  style: {
255
413
  padding: 10
256
414
  }
257
- }, "Modules", " (".concat((filter.moduleTagFilters.length + filter.moduleLocationFilters.length).toString(), ")"), /*#__PURE__*/_react.default.createElement("div", {
415
+ }, /*#__PURE__*/_react.default.createElement("div", {
416
+ style: {
417
+ display: 'flex'
418
+ }
419
+ }, /*#__PURE__*/_react.default.createElement("div", {
420
+ style: {
421
+ flexGrow: 1
422
+ }
423
+ }, "Modules", " (".concat((filter.moduleTagFilters.length + filter.moduleLocationFilters.length).toString(), ")")), /*#__PURE__*/_react.default.createElement(_Link.default, {
424
+ component: "button",
425
+ variant: "body2",
426
+ style: {
427
+ marginRight: 10
428
+ },
429
+ onClick: function onClick() {
430
+ return updateFilter(_objectSpread(_objectSpread({}, filter), {}, {
431
+ moduleTagFilters: [],
432
+ moduleLocationFilters: []
433
+ }));
434
+ }
435
+ }, intl.formatMessage({
436
+ id: '__clear'
437
+ })), /*#__PURE__*/_react.default.createElement(_Link.default, {
438
+ component: "button",
439
+ variant: "body2",
440
+ onClick: function onClick() {
441
+ return showCustom('module');
442
+ }
443
+ }, intl.formatMessage({
444
+ id: '__add_custom'
445
+ }))), /*#__PURE__*/_react.default.createElement("div", {
258
446
  style: style.list,
259
447
  className: _scrollbarModule.default.scroll
260
448
  }, !hideModuleTagFilters && filteredModuleTags.map(function (moduleTag) {
@@ -267,7 +455,37 @@ function TagFilterBuilder(props) {
267
455
  style: {
268
456
  padding: 10
269
457
  }
270
- }, "Monitoring Points", " (".concat((filter.monitoringPointTagFilters.length + filter.monitoringPointTypeFilters.length).toString(), ")"), /*#__PURE__*/_react.default.createElement("div", {
458
+ }, /*#__PURE__*/_react.default.createElement("div", {
459
+ style: {
460
+ display: 'flex'
461
+ }
462
+ }, /*#__PURE__*/_react.default.createElement("div", {
463
+ style: {
464
+ flexGrow: 1
465
+ }
466
+ }, "Monitoring Points", " (".concat((filter.monitoringPointTagFilters.length + filter.monitoringPointTypeFilters.length).toString(), ")")), /*#__PURE__*/_react.default.createElement(_Link.default, {
467
+ component: "button",
468
+ variant: "body2",
469
+ style: {
470
+ marginRight: 10
471
+ },
472
+ onClick: function onClick() {
473
+ return updateFilter(_objectSpread(_objectSpread({}, filter), {}, {
474
+ monitoringPointTagFilters: [],
475
+ monitoringPointTypeFilters: []
476
+ }));
477
+ }
478
+ }, intl.formatMessage({
479
+ id: '__clear'
480
+ })), /*#__PURE__*/_react.default.createElement(_Link.default, {
481
+ component: "button",
482
+ variant: "body2",
483
+ onClick: function onClick() {
484
+ return showCustom('monitoringPoint');
485
+ }
486
+ }, intl.formatMessage({
487
+ id: '__add_custom'
488
+ }))), /*#__PURE__*/_react.default.createElement("div", {
271
489
  style: style.list,
272
490
  className: _scrollbarModule.default.scroll
273
491
  }, !hideMonitoringPointTagFilters && filteredMonitoringPointTags.map(function (mpTag) {
@@ -281,10 +499,103 @@ function TagFilterBuilder(props) {
281
499
  padding: 20,
282
500
  textAlign: 'center'
283
501
  }
284
- }, "All types of tags have been hidden. Unhide some tags to be able to use the builder."));
502
+ }, "All types of tags have been hidden. Unhide some tags to be able to use the builder.")), showAddCustom && /*#__PURE__*/_react.default.createElement(_Dialog.default, {
503
+ open: true,
504
+ onClose: function onClose() {
505
+ return setShowAddCustom(false);
506
+ }
507
+ }, /*#__PURE__*/_react.default.createElement(_DialogContent.default, null, /*#__PURE__*/_react.default.createElement(_TextField.default, {
508
+ variant: "outlined",
509
+ label: intl.formatMessage({
510
+ id: '__type'
511
+ }),
512
+ margin: "normal",
513
+ value: customType,
514
+ onChange: function onChange(e) {
515
+ return setCustomType(e.target.value);
516
+ },
517
+ fullWidth: true,
518
+ select: true
519
+ }, customTypeOptions.map(function (cto) {
520
+ switch (cto) {
521
+ case 'moduleTagFilters':
522
+ return /*#__PURE__*/_react.default.createElement(_MenuItem.default, {
523
+ key: cto,
524
+ value: cto
525
+ }, /*#__PURE__*/_react.default.createElement(_LocalOffer.default, {
526
+ style: {
527
+ marginRight: 10
528
+ }
529
+ }), "Module Configuration Tag");
530
+
531
+ case 'moduleLocationFilters':
532
+ return /*#__PURE__*/_react.default.createElement(_MenuItem.default, {
533
+ key: cto,
534
+ value: cto
535
+ }, /*#__PURE__*/_react.default.createElement(_LocationOn.default, {
536
+ style: {
537
+ marginRight: 10
538
+ }
539
+ }), "Module Location Tag");
540
+
541
+ case 'monitoringPointTagFilters':
542
+ return /*#__PURE__*/_react.default.createElement(_MenuItem.default, {
543
+ key: cto,
544
+ value: cto
545
+ }, /*#__PURE__*/_react.default.createElement(_LocalOffer.default, {
546
+ style: {
547
+ marginRight: 10
548
+ }
549
+ }), "Monitoring Point Tag");
550
+
551
+ case 'monitoringPointTypeFilters':
552
+ return /*#__PURE__*/_react.default.createElement(_MenuItem.default, {
553
+ key: cto,
554
+ value: cto
555
+ }, /*#__PURE__*/_react.default.createElement(_Category.default, {
556
+ style: {
557
+ marginRight: 10
558
+ }
559
+ }), "Monitoring Point Type");
560
+
561
+ default:
562
+ return /*#__PURE__*/_react.default.createElement("option", {
563
+ key: cto,
564
+ value: cto
565
+ }, cto);
566
+ }
567
+ })), /*#__PURE__*/_react.default.createElement(_TextField.default, {
568
+ variant: "outlined",
569
+ label: intl.formatMessage({
570
+ id: '__custom_tag'
571
+ }),
572
+ margin: "normal",
573
+ fullWidth: true,
574
+ autoFocus: true,
575
+ onKeyPress: function onKeyPress(e) {
576
+ return handleKeyPress(e);
577
+ },
578
+ InputLabelProps: {
579
+ shrink: true
580
+ },
581
+ value: customTag,
582
+ onChange: function onChange(e) {
583
+ return setCustomTag(e.target.value.replace(/[^a-z0-9_]/g, ''));
584
+ }
585
+ })), /*#__PURE__*/_react.default.createElement(_DialogActions.default, null, /*#__PURE__*/_react.default.createElement(_Button.default, {
586
+ variant: "contained",
587
+ color: "primary",
588
+ disabled: customTag.length === 0,
589
+ onClick: function onClick() {
590
+ return addCustomTag();
591
+ }
592
+ }, /*#__PURE__*/_react.default.createElement(_reactIntl.FormattedMessage, {
593
+ id: "__add"
594
+ })))));
285
595
  }
286
596
 
287
597
  TagFilterBuilder.propTypes = {
598
+ intl: _propTypes.default.shape().isRequired,
288
599
  tags: _propTypes.default.shape().isRequired,
289
600
  filter: _propTypes.default.shape().isRequired,
290
601
  updateFilter: _propTypes.default.func.isRequired,
@@ -294,5 +605,7 @@ TagFilterBuilder.propTypes = {
294
605
  hideMonitoringPointTagFilters: _propTypes.default.bool.isRequired,
295
606
  hideMonitoringPointTypeFilters: _propTypes.default.bool.isRequired
296
607
  };
297
- var _default = TagFilterBuilder;
608
+
609
+ var _default = (0, _reactIntl.injectIntl)(TagFilterBuilder);
610
+
298
611
  exports.default = _default;
@@ -7,6 +7,7 @@
7
7
  "__add_action": "Add Action",
8
8
  "__add_column": "Add Column",
9
9
  "__add_condition": "Add Condition",
10
+ "__add_custom": "Add Custom",
10
11
  "__add_module_filter": "Add Module Filter",
11
12
  "__add_monitoring_points_filter": "Add Monitoring Points Filter",
12
13
  "__add_row": "Add Row",
@@ -79,6 +80,7 @@
79
80
  "__current_shift": "Current Shift",
80
81
  "__current_week": "Current Week",
81
82
  "__custom": "Custom",
83
+ "__custom_tag": "Custom Tag",
82
84
  "__dashboard": "Dashboard",
83
85
  "__dashboard_styles": "Dashboard Styles",
84
86
  "__dashboards": "Dashboards",
package/package.json CHANGED
@@ -2,10 +2,10 @@
2
2
  "versacall": {
3
3
  "title": "Versacall Core Library React",
4
4
  "applicationType": "react-library",
5
- "build": 43
5
+ "build": 45
6
6
  },
7
7
  "name": "versacall-core-library-react",
8
- "version": "2.0.43",
8
+ "version": "2.0.45",
9
9
  "description": "Versacall Core Library",
10
10
  "main": "dist/index.js",
11
11
  "module": "dist/index.js",