config-editor-base 2.9.0 → 2.9.2
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.js +149 -128
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +149 -128
- package/dist/index.modern.js.map +1 -1
- package/package.json +2 -1
package/dist/index.js
CHANGED
|
@@ -11,6 +11,7 @@ var Files = _interopDefault(require('react-files'));
|
|
|
11
11
|
var applyNav = require('rjsf-tabs');
|
|
12
12
|
var applyNav__default = _interopDefault(applyNav);
|
|
13
13
|
var reactGhLikeDiff = require('react-gh-like-diff');
|
|
14
|
+
var Ajv = _interopDefault(require('ajv'));
|
|
14
15
|
|
|
15
16
|
function _arrayLikeToArray(r, a) {
|
|
16
17
|
(null == a || a > r.length) && (a = r.length);
|
|
@@ -19274,8 +19275,14 @@ var EditorSection = /*#__PURE__*/function (_React$Component) {
|
|
|
19274
19275
|
isSubmitting: false,
|
|
19275
19276
|
isDownloadConfig: false,
|
|
19276
19277
|
isCompareChanges: false,
|
|
19277
|
-
activeSideBar: 'schema-modal'
|
|
19278
|
+
activeSideBar: 'schema-modal',
|
|
19279
|
+
showNewToolsHighlight: true
|
|
19278
19280
|
};
|
|
19281
|
+
setTimeout(function () {
|
|
19282
|
+
_this.setState({
|
|
19283
|
+
showNewToolsHighlight: false
|
|
19284
|
+
});
|
|
19285
|
+
}, 10000);
|
|
19279
19286
|
_this.input = '';
|
|
19280
19287
|
_this.s3 = _this.props.fetchFileContentExt ? true : false;
|
|
19281
19288
|
return _this;
|
|
@@ -19567,7 +19574,9 @@ var EditorSection = /*#__PURE__*/function (_React$Component) {
|
|
|
19567
19574
|
}, ' ', "Review changes", ' ')), /*#__PURE__*/React.createElement("div", {
|
|
19568
19575
|
className: "col-xs-7",
|
|
19569
19576
|
style: {
|
|
19570
|
-
"float": 'left'
|
|
19577
|
+
"float": 'left',
|
|
19578
|
+
display: 'flex',
|
|
19579
|
+
alignItems: 'center'
|
|
19571
19580
|
}
|
|
19572
19581
|
}, editorToolsFull.map(function (modal, idx) {
|
|
19573
19582
|
return /*#__PURE__*/React.createElement(EditorToolButton, {
|
|
@@ -19578,7 +19587,15 @@ var EditorSection = /*#__PURE__*/function (_React$Component) {
|
|
|
19578
19587
|
comment: modal.comment,
|
|
19579
19588
|
className: modal["class"]
|
|
19580
19589
|
});
|
|
19581
|
-
})
|
|
19590
|
+
}), this.state.showNewToolsHighlight && /*#__PURE__*/React.createElement("span", {
|
|
19591
|
+
style: {
|
|
19592
|
+
fontSize: '12px',
|
|
19593
|
+
color: '#337ab7',
|
|
19594
|
+
marginLeft: '10px',
|
|
19595
|
+
transition: 'opacity 1s ease-out',
|
|
19596
|
+
opacity: this.state.showNewToolsHighlight ? 1 : 0
|
|
19597
|
+
}
|
|
19598
|
+
}, "New: OBD & filter builder tools"))))))), /*#__PURE__*/React.createElement("div", {
|
|
19582
19599
|
className: "config-bar-background"
|
|
19583
19600
|
}));
|
|
19584
19601
|
};
|
|
@@ -21879,7 +21896,6 @@ function extractSupportedPidsFromBitmap(rangeStart, bitmapHex, supportedSet) {
|
|
|
21879
21896
|
}
|
|
21880
21897
|
|
|
21881
21898
|
var merge$1 = require("deepmerge");
|
|
21882
|
-
var yourForm$1;
|
|
21883
21899
|
var modeOptions = [{
|
|
21884
21900
|
value: "all",
|
|
21885
21901
|
label: "Select from all PIDs"
|
|
@@ -22190,6 +22206,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22190
22206
|
}
|
|
22191
22207
|
};
|
|
22192
22208
|
_proto.testMergedFile = function testMergedFile() {
|
|
22209
|
+
var _this8 = this;
|
|
22193
22210
|
var _this$state4 = this.state,
|
|
22194
22211
|
generatedConfig = _this$state4.generatedConfig,
|
|
22195
22212
|
enableControlSignal = _this$state4.enableControlSignal,
|
|
@@ -22260,8 +22277,24 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22260
22277
|
this.setState({
|
|
22261
22278
|
mergedConfig: mergedConfigTemp
|
|
22262
22279
|
}, function () {
|
|
22263
|
-
|
|
22264
|
-
|
|
22280
|
+
var schemaContent = _this8.props.schemaContent;
|
|
22281
|
+
if (schemaContent && mergedConfigTemp) {
|
|
22282
|
+
try {
|
|
22283
|
+
var ajv = new Ajv({
|
|
22284
|
+
allErrors: true,
|
|
22285
|
+
strict: false,
|
|
22286
|
+
logger: false
|
|
22287
|
+
});
|
|
22288
|
+
var validate = ajv.compile(schemaContent);
|
|
22289
|
+
var valid = validate(mergedConfigTemp);
|
|
22290
|
+
_this8.setState({
|
|
22291
|
+
mergedConfigValid: valid
|
|
22292
|
+
});
|
|
22293
|
+
} catch (e) {
|
|
22294
|
+
_this8.setState({
|
|
22295
|
+
mergedConfigValid: false
|
|
22296
|
+
});
|
|
22297
|
+
}
|
|
22265
22298
|
}
|
|
22266
22299
|
});
|
|
22267
22300
|
};
|
|
@@ -22309,7 +22342,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22309
22342
|
linkElement.click();
|
|
22310
22343
|
};
|
|
22311
22344
|
_proto.render = function render() {
|
|
22312
|
-
var
|
|
22345
|
+
var _this9 = this;
|
|
22313
22346
|
var _this$state6 = this.state,
|
|
22314
22347
|
toolMode = _this$state6.toolMode,
|
|
22315
22348
|
channel = _this$state6.channel,
|
|
@@ -22320,7 +22353,6 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22320
22353
|
searchQuery = _this$state6.searchQuery,
|
|
22321
22354
|
supportedPids = _this$state6.supportedPids,
|
|
22322
22355
|
generatedConfig = _this$state6.generatedConfig,
|
|
22323
|
-
mergedConfig = _this$state6.mergedConfig,
|
|
22324
22356
|
mergedConfigValid = _this$state6.mergedConfigValid,
|
|
22325
22357
|
csvFileName = _this$state6.csvFileName,
|
|
22326
22358
|
mixedWarning = _this$state6.mixedWarning,
|
|
@@ -22330,7 +22362,6 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22330
22362
|
combinedConfig = _this$state6.combinedConfig;
|
|
22331
22363
|
var _this$props = this.props,
|
|
22332
22364
|
formData = _this$props.formData,
|
|
22333
|
-
schemaContent = _this$props.schemaContent,
|
|
22334
22365
|
editorConfigFiles = _this$props.editorConfigFiles;
|
|
22335
22366
|
var configFileName = editorConfigFiles && editorConfigFiles.length > 0 ? editorConfigFiles[0].name : "";
|
|
22336
22367
|
var isVersion0109 = configFileName.includes("01.09");
|
|
@@ -22374,7 +22405,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22374
22405
|
}, /*#__PURE__*/React.createElement(Files, {
|
|
22375
22406
|
onChange: this.handleCsvUpload,
|
|
22376
22407
|
onError: function onError(error) {
|
|
22377
|
-
return
|
|
22408
|
+
return _this9.props.showAlert("danger", error.message);
|
|
22378
22409
|
},
|
|
22379
22410
|
accepts: [".csv"],
|
|
22380
22411
|
multiple: false,
|
|
@@ -22401,7 +22432,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22401
22432
|
options: channelOptions,
|
|
22402
22433
|
value: channel,
|
|
22403
22434
|
onChange: function onChange(opt) {
|
|
22404
|
-
return
|
|
22435
|
+
return _this9.handleSettingChange("channel", opt);
|
|
22405
22436
|
},
|
|
22406
22437
|
comment: "Select which CAN channel should be used to transmit the OBD requests."
|
|
22407
22438
|
})), /*#__PURE__*/React.createElement("div", {
|
|
@@ -22411,7 +22442,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22411
22442
|
options: bitRateOptions,
|
|
22412
22443
|
value: bitRate,
|
|
22413
22444
|
onChange: function onChange(opt) {
|
|
22414
|
-
return
|
|
22445
|
+
return _this9.handleSettingChange("bitRate", opt);
|
|
22415
22446
|
},
|
|
22416
22447
|
comment: "Cars typically use 500K, trucks/buses may use 250K or 500K."
|
|
22417
22448
|
}))), toolMode !== "test" && /*#__PURE__*/React.createElement("div", {
|
|
@@ -22423,7 +22454,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22423
22454
|
options: canIdOptions,
|
|
22424
22455
|
value: canId,
|
|
22425
22456
|
onChange: function onChange(opt) {
|
|
22426
|
-
return
|
|
22457
|
+
return _this9.handleSettingChange("canId", opt);
|
|
22427
22458
|
},
|
|
22428
22459
|
comment: "Cars typically use 7DF, trucks/buses typically use 18DB33F1."
|
|
22429
22460
|
})), /*#__PURE__*/React.createElement("div", {
|
|
@@ -22433,7 +22464,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22433
22464
|
options: obdModeOptions,
|
|
22434
22465
|
value: obdMode,
|
|
22435
22466
|
onChange: function onChange(opt) {
|
|
22436
|
-
return
|
|
22467
|
+
return _this9.handleSettingChange("obdMode", opt);
|
|
22437
22468
|
},
|
|
22438
22469
|
comment: "Cars use OBD2, trucks/buses may use OBD2 or WWH-OBD."
|
|
22439
22470
|
}))), toolMode !== "test" && /*#__PURE__*/React.createElement("div", {
|
|
@@ -22446,17 +22477,17 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22446
22477
|
max: 10000,
|
|
22447
22478
|
onChange: function onChange(e) {
|
|
22448
22479
|
var val = parseInt(e.target.value) || 0;
|
|
22449
|
-
|
|
22480
|
+
_this9.setState({
|
|
22450
22481
|
spacing: val
|
|
22451
22482
|
});
|
|
22452
22483
|
},
|
|
22453
22484
|
onBlur: function onBlur(e) {
|
|
22454
22485
|
var val = Math.min(10000, Math.max(100, parseInt(e.target.value) || 100));
|
|
22455
|
-
|
|
22486
|
+
_this9.setState({
|
|
22456
22487
|
spacing: val
|
|
22457
22488
|
}, function () {
|
|
22458
|
-
if (
|
|
22459
|
-
|
|
22489
|
+
if (_this9.getSelectedPids().length > 0) {
|
|
22490
|
+
_this9.generateTransmitList();
|
|
22460
22491
|
}
|
|
22461
22492
|
});
|
|
22462
22493
|
}
|
|
@@ -22507,7 +22538,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22507
22538
|
key: pid.uniqueId,
|
|
22508
22539
|
className: "checkbox-white-space",
|
|
22509
22540
|
onClick: function onClick() {
|
|
22510
|
-
return !pid.disabled &&
|
|
22541
|
+
return !pid.disabled && _this9.handlePidToggle(pid.uniqueId);
|
|
22511
22542
|
},
|
|
22512
22543
|
style: {
|
|
22513
22544
|
display: "flex",
|
|
@@ -22533,7 +22564,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22533
22564
|
checked: pid.selected,
|
|
22534
22565
|
disabled: pid.disabled,
|
|
22535
22566
|
onChange: function onChange() {
|
|
22536
|
-
return !pid.disabled &&
|
|
22567
|
+
return !pid.disabled && _this9.handlePidToggle(pid.uniqueId);
|
|
22537
22568
|
}
|
|
22538
22569
|
}), /*#__PURE__*/React.createElement("span", null))), /*#__PURE__*/React.createElement("span", {
|
|
22539
22570
|
className: "binary-text-alt-2",
|
|
@@ -22576,11 +22607,11 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22576
22607
|
type: "checkbox",
|
|
22577
22608
|
checked: enableOBDFilter,
|
|
22578
22609
|
onChange: function onChange() {
|
|
22579
|
-
|
|
22610
|
+
_this9.setState({
|
|
22580
22611
|
enableOBDFilter: !enableOBDFilter
|
|
22581
22612
|
}, function () {
|
|
22582
|
-
if (
|
|
22583
|
-
|
|
22613
|
+
if (_this9.getSelectedPids().length > 0) {
|
|
22614
|
+
_this9.generateTransmitList();
|
|
22584
22615
|
}
|
|
22585
22616
|
});
|
|
22586
22617
|
},
|
|
@@ -22605,11 +22636,11 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22605
22636
|
type: "checkbox",
|
|
22606
22637
|
checked: enableControlSignal,
|
|
22607
22638
|
onChange: function onChange() {
|
|
22608
|
-
|
|
22639
|
+
_this9.setState({
|
|
22609
22640
|
enableControlSignal: !enableControlSignal
|
|
22610
22641
|
}, function () {
|
|
22611
|
-
if (
|
|
22612
|
-
|
|
22642
|
+
if (_this9.getSelectedPids().length > 0) {
|
|
22643
|
+
_this9.generateTransmitList();
|
|
22613
22644
|
}
|
|
22614
22645
|
});
|
|
22615
22646
|
},
|
|
@@ -22654,7 +22685,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22654
22685
|
type: "checkbox",
|
|
22655
22686
|
checked: showPreview,
|
|
22656
22687
|
onChange: function onChange() {
|
|
22657
|
-
return
|
|
22688
|
+
return _this9.setState({
|
|
22658
22689
|
showPreview: !showPreview
|
|
22659
22690
|
});
|
|
22660
22691
|
},
|
|
@@ -22668,20 +22699,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22668
22699
|
}
|
|
22669
22700
|
}, /*#__PURE__*/React.createElement("pre", {
|
|
22670
22701
|
className: "browse-file-preview"
|
|
22671
|
-
}, JSON.stringify(combinedConfig, null, 2))))), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null))
|
|
22672
|
-
style: {
|
|
22673
|
-
display: "none"
|
|
22674
|
-
}
|
|
22675
|
-
}, /*#__PURE__*/React.createElement(Form, {
|
|
22676
|
-
validator: validator,
|
|
22677
|
-
onError: this.onValidationError,
|
|
22678
|
-
schema: schemaContent ? schemaContent : {},
|
|
22679
|
-
formData: mergedConfig ? mergedConfig : {},
|
|
22680
|
-
onSubmit: this.onSubmit,
|
|
22681
|
-
ref: function ref(form) {
|
|
22682
|
-
yourForm$1 = form;
|
|
22683
|
-
}
|
|
22684
|
-
})));
|
|
22702
|
+
}, JSON.stringify(combinedConfig, null, 2))))), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null)));
|
|
22685
22703
|
};
|
|
22686
22704
|
return OBDTool;
|
|
22687
22705
|
}(React.Component);
|
|
@@ -22994,13 +23012,13 @@ function applyPrescaler(frame, filter, prescalerState) {
|
|
|
22994
23012
|
state.lastData = currentData;
|
|
22995
23013
|
return true;
|
|
22996
23014
|
}
|
|
22997
|
-
var maskValue = prescalerValue ?
|
|
23015
|
+
var maskValue = prescalerValue ? BigInt("0x" + prescalerValue) : BigInt("0xFFFFFFFFFFFFFFFF");
|
|
22998
23016
|
var prevBytes = parseDataBytes(state.lastData);
|
|
22999
23017
|
var currBytes = parseDataBytes(currentData);
|
|
23000
23018
|
var changed = false;
|
|
23001
23019
|
for (var i = 0; i < Math.max(prevBytes.length, currBytes.length); i++) {
|
|
23002
23020
|
var byteMask = BigInt(1) << BigInt(i);
|
|
23003
|
-
if ((
|
|
23021
|
+
if ((maskValue & byteMask) !== BigInt(0)) {
|
|
23004
23022
|
var prevByte = prevBytes[i] || 0;
|
|
23005
23023
|
var currByte = currBytes[i] || 0;
|
|
23006
23024
|
if (prevByte !== currByte) {
|
|
@@ -23107,7 +23125,6 @@ function evaluateFilters(frames, configData, detectedDeviceType) {
|
|
|
23107
23125
|
var _excluded = ["name"],
|
|
23108
23126
|
_excluded2 = ["name"];
|
|
23109
23127
|
var merge$2 = require("deepmerge");
|
|
23110
|
-
var yourForm$2;
|
|
23111
23128
|
var prescalerOptions = [{
|
|
23112
23129
|
value: "none",
|
|
23113
23130
|
label: "None"
|
|
@@ -24035,6 +24052,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24035
24052
|
return filterConfig;
|
|
24036
24053
|
};
|
|
24037
24054
|
_proto.testMergedFile = function testMergedFile() {
|
|
24055
|
+
var _this11 = this;
|
|
24038
24056
|
var _this$state7 = this.state,
|
|
24039
24057
|
generatedFilterConfig = _this$state7.generatedFilterConfig,
|
|
24040
24058
|
filterMergeMode = _this$state7.filterMergeMode;
|
|
@@ -24068,8 +24086,24 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24068
24086
|
this.setState({
|
|
24069
24087
|
mergedConfig: mergedConfigTemp
|
|
24070
24088
|
}, function () {
|
|
24071
|
-
|
|
24072
|
-
|
|
24089
|
+
var schemaContent = _this11.props.schemaContent;
|
|
24090
|
+
if (schemaContent && mergedConfigTemp) {
|
|
24091
|
+
try {
|
|
24092
|
+
var ajv = new Ajv({
|
|
24093
|
+
allErrors: true,
|
|
24094
|
+
strict: false,
|
|
24095
|
+
logger: false
|
|
24096
|
+
});
|
|
24097
|
+
var validate = ajv.compile(schemaContent);
|
|
24098
|
+
var valid = validate(mergedConfigTemp);
|
|
24099
|
+
_this11.setState({
|
|
24100
|
+
mergedConfigValid: valid
|
|
24101
|
+
});
|
|
24102
|
+
} catch (e) {
|
|
24103
|
+
_this11.setState({
|
|
24104
|
+
mergedConfigValid: false
|
|
24105
|
+
});
|
|
24106
|
+
}
|
|
24073
24107
|
}
|
|
24074
24108
|
});
|
|
24075
24109
|
};
|
|
@@ -24277,7 +24311,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24277
24311
|
});
|
|
24278
24312
|
};
|
|
24279
24313
|
_proto.render = function render() {
|
|
24280
|
-
var
|
|
24314
|
+
var _this12 = this;
|
|
24281
24315
|
var _this$state10 = this.state,
|
|
24282
24316
|
csvFileName = _this$state10.csvFileName,
|
|
24283
24317
|
dbcFileNames = _this$state10.dbcFileNames,
|
|
@@ -24316,7 +24350,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24316
24350
|
}, /*#__PURE__*/React.createElement(Files, {
|
|
24317
24351
|
onChange: this.handleCsvUpload,
|
|
24318
24352
|
onError: function onError(error) {
|
|
24319
|
-
return
|
|
24353
|
+
return _this12.props.showAlert("danger", error.message);
|
|
24320
24354
|
},
|
|
24321
24355
|
accepts: [".csv"],
|
|
24322
24356
|
multiple: false,
|
|
@@ -24330,7 +24364,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24330
24364
|
}, /*#__PURE__*/React.createElement(Files, {
|
|
24331
24365
|
onChange: this.handleDbcUpload,
|
|
24332
24366
|
onError: function onError(error) {
|
|
24333
|
-
return
|
|
24367
|
+
return _this12.props.showAlert("danger", error.message);
|
|
24334
24368
|
},
|
|
24335
24369
|
accepts: [".dbc"],
|
|
24336
24370
|
multiple: true,
|
|
@@ -24365,10 +24399,10 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24365
24399
|
type: "checkbox",
|
|
24366
24400
|
checked: groupJ1939Pgns,
|
|
24367
24401
|
onChange: function onChange() {
|
|
24368
|
-
|
|
24402
|
+
_this12.setState({
|
|
24369
24403
|
groupJ1939Pgns: !groupJ1939Pgns
|
|
24370
24404
|
}, function () {
|
|
24371
|
-
|
|
24405
|
+
_this12.mergeData();
|
|
24372
24406
|
});
|
|
24373
24407
|
},
|
|
24374
24408
|
style: {
|
|
@@ -24378,7 +24412,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24378
24412
|
}), "Group 29-bit IDs as PGNs"), /*#__PURE__*/React.createElement("p", {
|
|
24379
24413
|
className: "field-description field-description-shift"
|
|
24380
24414
|
}, "In J1939/ISOBUS/NMEA protocol use cases it can be relevant to evaluate messages at the 18-bit PGN level instead of the 29-bit ID level.")), csvData && function () {
|
|
24381
|
-
var isEnabled =
|
|
24415
|
+
var isEnabled = _this12.props.formData && _this12.isFirmwareVersionSupported();
|
|
24382
24416
|
return /*#__PURE__*/React.createElement("div", {
|
|
24383
24417
|
className: "form-group pl0 field-string",
|
|
24384
24418
|
style: {
|
|
@@ -24395,9 +24429,9 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24395
24429
|
}
|
|
24396
24430
|
}, /*#__PURE__*/React.createElement("input", {
|
|
24397
24431
|
type: "checkbox",
|
|
24398
|
-
checked:
|
|
24432
|
+
checked: _this12.state.showFilteredSummary,
|
|
24399
24433
|
onChange: function onChange() {
|
|
24400
|
-
return
|
|
24434
|
+
return _this12.toggleFilteredSummary();
|
|
24401
24435
|
},
|
|
24402
24436
|
disabled: !isEnabled,
|
|
24403
24437
|
style: {
|
|
@@ -24446,10 +24480,10 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24446
24480
|
}, label, ":"), /*#__PURE__*/React.createElement("input", {
|
|
24447
24481
|
type: "text",
|
|
24448
24482
|
className: "form-control encryption-input",
|
|
24449
|
-
value:
|
|
24483
|
+
value: _this12.state["channelMap" + label],
|
|
24450
24484
|
onChange: function onChange(e) {
|
|
24451
|
-
var
|
|
24452
|
-
return
|
|
24485
|
+
var _this12$setState;
|
|
24486
|
+
return _this12.setState((_this12$setState = {}, _this12$setState["channelMap" + label] = e.target.value, _this12$setState));
|
|
24453
24487
|
},
|
|
24454
24488
|
style: {
|
|
24455
24489
|
width: "36px",
|
|
@@ -24565,11 +24599,11 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24565
24599
|
marginLeft: "8px"
|
|
24566
24600
|
}
|
|
24567
24601
|
}, "Signals")), filteredEntries.map(function (entry) {
|
|
24568
|
-
var isChannelValid =
|
|
24602
|
+
var isChannelValid = _this12.props.deviceType === "CANmod" ? _this12.isChannelValid(entry.channel) : true;
|
|
24569
24603
|
return /*#__PURE__*/React.createElement("div", {
|
|
24570
24604
|
key: entry.uniqueId,
|
|
24571
24605
|
onClick: function onClick() {
|
|
24572
|
-
return isChannelValid &&
|
|
24606
|
+
return isChannelValid && _this12.handleEntryToggle(entry.uniqueId);
|
|
24573
24607
|
},
|
|
24574
24608
|
style: {
|
|
24575
24609
|
display: "flex",
|
|
@@ -24597,7 +24631,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24597
24631
|
checked: entry.selected,
|
|
24598
24632
|
disabled: !isChannelValid,
|
|
24599
24633
|
onChange: function onChange() {
|
|
24600
|
-
return isChannelValid &&
|
|
24634
|
+
return isChannelValid && _this12.handleEntryToggle(entry.uniqueId);
|
|
24601
24635
|
}
|
|
24602
24636
|
}), /*#__PURE__*/React.createElement("span", null))), /*#__PURE__*/React.createElement("span", {
|
|
24603
24637
|
className: "binary-text-alt-2",
|
|
@@ -24634,7 +24668,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24634
24668
|
display: "flex",
|
|
24635
24669
|
alignItems: "center"
|
|
24636
24670
|
}
|
|
24637
|
-
},
|
|
24671
|
+
}, _this12.renderBarChart(entry.isGroup ? entry.groupedPercentage : entry.percentage, maxPercentage), /*#__PURE__*/React.createElement("span", {
|
|
24638
24672
|
style: {
|
|
24639
24673
|
marginLeft: "4px",
|
|
24640
24674
|
fontFamily: "monospace",
|
|
@@ -24725,7 +24759,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24725
24759
|
marginLeft: "4px"
|
|
24726
24760
|
},
|
|
24727
24761
|
onClick: function onClick() {
|
|
24728
|
-
return
|
|
24762
|
+
return _this12.selectTop(30);
|
|
24729
24763
|
}
|
|
24730
24764
|
}, "Top 30"), /*#__PURE__*/React.createElement("span", {
|
|
24731
24765
|
style: {
|
|
@@ -24738,7 +24772,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24738
24772
|
cursor: "pointer"
|
|
24739
24773
|
},
|
|
24740
24774
|
onClick: function onClick() {
|
|
24741
|
-
return
|
|
24775
|
+
return _this12.selectTop(50);
|
|
24742
24776
|
}
|
|
24743
24777
|
}, "Top 50"), /*#__PURE__*/React.createElement("span", {
|
|
24744
24778
|
style: {
|
|
@@ -24751,7 +24785,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24751
24785
|
cursor: "pointer"
|
|
24752
24786
|
},
|
|
24753
24787
|
onClick: function onClick() {
|
|
24754
|
-
return
|
|
24788
|
+
return _this12.selectMatched(true);
|
|
24755
24789
|
}
|
|
24756
24790
|
}, "Matched"), /*#__PURE__*/React.createElement("span", {
|
|
24757
24791
|
style: {
|
|
@@ -24764,13 +24798,13 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24764
24798
|
cursor: "pointer"
|
|
24765
24799
|
},
|
|
24766
24800
|
onClick: function onClick() {
|
|
24767
|
-
return
|
|
24801
|
+
return _this12.selectMatched(false);
|
|
24768
24802
|
}
|
|
24769
24803
|
}, "Unmatched")), csvData && function () {
|
|
24770
|
-
var activeCsvData =
|
|
24771
|
-
var isFiltered =
|
|
24772
|
-
var originalFileSize =
|
|
24773
|
-
var filteredFileSize = isFiltered ? originalFileSize * (1 -
|
|
24804
|
+
var activeCsvData = _this12.state.showFilteredSummary && _this12.state.filteredCsvData ? _this12.state.filteredCsvData : csvData;
|
|
24805
|
+
var isFiltered = _this12.state.showFilteredSummary && _this12.state.filteredCsvData;
|
|
24806
|
+
var originalFileSize = _this12.csvFileSize / (1024 * 1024);
|
|
24807
|
+
var filteredFileSize = isFiltered ? originalFileSize * (1 - _this12.state.filterReductionPercent / 100) : originalFileSize;
|
|
24774
24808
|
return /*#__PURE__*/React.createElement("div", {
|
|
24775
24809
|
style: {
|
|
24776
24810
|
fontSize: "12px",
|
|
@@ -24797,7 +24831,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24797
24831
|
color: "#5cb85c",
|
|
24798
24832
|
marginTop: "4px"
|
|
24799
24833
|
}
|
|
24800
|
-
}, "Showing filtered summary (reduction: ", /*#__PURE__*/React.createElement("strong", null,
|
|
24834
|
+
}, "Showing filtered summary (reduction: ", /*#__PURE__*/React.createElement("strong", null, _this12.state.filterReductionPercent.toFixed(1), "%"), ")"));
|
|
24801
24835
|
}(), function () {
|
|
24802
24836
|
var hasSelection = mergedEntries.some(function (e) {
|
|
24803
24837
|
return e.selected;
|
|
@@ -24823,8 +24857,8 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24823
24857
|
}, /*#__PURE__*/React.createElement("div", {
|
|
24824
24858
|
className: "col-xs-6",
|
|
24825
24859
|
style: {
|
|
24826
|
-
opacity:
|
|
24827
|
-
pointerEvents:
|
|
24860
|
+
opacity: _this12.props.deviceType === "CANmod" ? 0.5 : 1,
|
|
24861
|
+
pointerEvents: _this12.props.deviceType === "CANmod" ? "none" : "auto"
|
|
24828
24862
|
}
|
|
24829
24863
|
}, /*#__PURE__*/React.createElement(SimpleDropdown, {
|
|
24830
24864
|
name: "Type",
|
|
@@ -24835,59 +24869,59 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24835
24869
|
value: "rejection",
|
|
24836
24870
|
label: "Rejection"
|
|
24837
24871
|
}],
|
|
24838
|
-
value:
|
|
24872
|
+
value: _this12.state.filterType,
|
|
24839
24873
|
onChange: function onChange(opt) {
|
|
24840
|
-
return
|
|
24874
|
+
return _this12.setState({
|
|
24841
24875
|
filterType: opt.value
|
|
24842
24876
|
}, function () {
|
|
24843
|
-
return
|
|
24877
|
+
return _this12.generateFilterConfig();
|
|
24844
24878
|
});
|
|
24845
24879
|
}
|
|
24846
|
-
}),
|
|
24880
|
+
}), _this12.props.deviceType === "CANmod" && /*#__PURE__*/React.createElement("span", {
|
|
24847
24881
|
className: "field-description",
|
|
24848
24882
|
style: {
|
|
24849
24883
|
fontSize: "11px",
|
|
24850
24884
|
color: "#999"
|
|
24851
24885
|
}
|
|
24852
|
-
}, "CANmod only supports acceptance filters")),
|
|
24886
|
+
}, "CANmod only supports acceptance filters")), _this12.state.filterType === "acceptance" && /*#__PURE__*/React.createElement("div", {
|
|
24853
24887
|
className: "col-xs-6"
|
|
24854
24888
|
}, /*#__PURE__*/React.createElement(SimpleDropdown, {
|
|
24855
24889
|
name: "Prescaler",
|
|
24856
24890
|
options: prescalerOptions,
|
|
24857
|
-
value:
|
|
24891
|
+
value: _this12.state.prescalerType,
|
|
24858
24892
|
onChange: function onChange(opt) {
|
|
24859
|
-
return
|
|
24893
|
+
return _this12.setState({
|
|
24860
24894
|
prescalerType: opt.value
|
|
24861
24895
|
}, function () {
|
|
24862
|
-
return
|
|
24896
|
+
return _this12.generateFilterConfig();
|
|
24863
24897
|
});
|
|
24864
24898
|
}
|
|
24865
|
-
}))),
|
|
24899
|
+
}))), _this12.state.filterType === "acceptance" && _this12.state.prescalerType !== "none" && /*#__PURE__*/React.createElement("div", {
|
|
24866
24900
|
className: "form-group pl0 field-string"
|
|
24867
|
-
},
|
|
24901
|
+
}, _this12.state.prescalerType === "count" && "Count value", _this12.state.prescalerType === "time" && "Time interval (ms)", _this12.state.prescalerType === "data" && "Data mask (hex)", (_this12.state.prescalerType === "count" || _this12.state.prescalerType === "time") && /*#__PURE__*/React.createElement("input", {
|
|
24868
24902
|
type: "number",
|
|
24869
24903
|
className: "form-control encryption-input",
|
|
24870
24904
|
min: "1",
|
|
24871
|
-
max:
|
|
24872
|
-
value:
|
|
24905
|
+
max: _this12.state.prescalerType === "count" ? 256 : 4194304,
|
|
24906
|
+
value: _this12.state.prescalerValue,
|
|
24873
24907
|
onChange: function onChange(e) {
|
|
24874
|
-
return
|
|
24908
|
+
return _this12.setState({
|
|
24875
24909
|
prescalerValue: parseInt(e.target.value) || 1
|
|
24876
24910
|
}, function () {
|
|
24877
|
-
return
|
|
24911
|
+
return _this12.generateFilterConfig();
|
|
24878
24912
|
});
|
|
24879
24913
|
}
|
|
24880
|
-
}),
|
|
24914
|
+
}), _this12.state.prescalerType === "data" && /*#__PURE__*/React.createElement("input", {
|
|
24881
24915
|
type: "text",
|
|
24882
24916
|
className: "form-control encryption-input",
|
|
24883
|
-
value:
|
|
24917
|
+
value: _this12.state.dataPrescalerMask,
|
|
24884
24918
|
onChange: function onChange(e) {
|
|
24885
24919
|
var val = e.target.value.toUpperCase();
|
|
24886
24920
|
if (/^[a-fA-F0-9]*$/.test(val) && val.length <= 16) {
|
|
24887
|
-
|
|
24921
|
+
_this12.setState({
|
|
24888
24922
|
dataPrescalerMask: val
|
|
24889
24923
|
}, function () {
|
|
24890
|
-
return
|
|
24924
|
+
return _this12.generateFilterConfig();
|
|
24891
24925
|
});
|
|
24892
24926
|
}
|
|
24893
24927
|
},
|
|
@@ -24898,7 +24932,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24898
24932
|
}
|
|
24899
24933
|
}), /*#__PURE__*/React.createElement("span", {
|
|
24900
24934
|
className: "field-description field-description-shift"
|
|
24901
|
-
},
|
|
24935
|
+
}, _this12.state.prescalerType === "count" && "Accept every Nth message (1-256)", _this12.state.prescalerType === "time" && "Minimum time between messages (1-4194304 ms)", _this12.state.prescalerType === "data" && "Hex mask for data change detection")), /*#__PURE__*/React.createElement("div", {
|
|
24902
24936
|
style: {
|
|
24903
24937
|
display: "flex",
|
|
24904
24938
|
alignItems: "center",
|
|
@@ -24918,12 +24952,12 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24918
24952
|
type: "radio",
|
|
24919
24953
|
name: "filterMergeMode",
|
|
24920
24954
|
value: "replace",
|
|
24921
|
-
checked:
|
|
24955
|
+
checked: _this12.state.filterMergeMode === "replace",
|
|
24922
24956
|
onChange: function onChange(e) {
|
|
24923
|
-
return
|
|
24957
|
+
return _this12.setState({
|
|
24924
24958
|
filterMergeMode: e.target.value
|
|
24925
24959
|
}, function () {
|
|
24926
|
-
return
|
|
24960
|
+
return _this12.generateFilterConfig();
|
|
24927
24961
|
});
|
|
24928
24962
|
},
|
|
24929
24963
|
style: {
|
|
@@ -24946,12 +24980,12 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24946
24980
|
type: "radio",
|
|
24947
24981
|
name: "filterMergeMode",
|
|
24948
24982
|
value: "append_top",
|
|
24949
|
-
checked:
|
|
24983
|
+
checked: _this12.state.filterMergeMode === "append_top",
|
|
24950
24984
|
onChange: function onChange(e) {
|
|
24951
|
-
return
|
|
24985
|
+
return _this12.setState({
|
|
24952
24986
|
filterMergeMode: e.target.value
|
|
24953
24987
|
}, function () {
|
|
24954
|
-
return
|
|
24988
|
+
return _this12.generateFilterConfig();
|
|
24955
24989
|
});
|
|
24956
24990
|
},
|
|
24957
24991
|
style: {
|
|
@@ -24974,12 +25008,12 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24974
25008
|
type: "radio",
|
|
24975
25009
|
name: "filterMergeMode",
|
|
24976
25010
|
value: "append_bottom",
|
|
24977
|
-
checked:
|
|
25011
|
+
checked: _this12.state.filterMergeMode === "append_bottom",
|
|
24978
25012
|
onChange: function onChange(e) {
|
|
24979
|
-
return
|
|
25013
|
+
return _this12.setState({
|
|
24980
25014
|
filterMergeMode: e.target.value
|
|
24981
25015
|
}, function () {
|
|
24982
|
-
return
|
|
25016
|
+
return _this12.generateFilterConfig();
|
|
24983
25017
|
});
|
|
24984
25018
|
},
|
|
24985
25019
|
style: {
|
|
@@ -25013,9 +25047,9 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
25013
25047
|
}, 0);
|
|
25014
25048
|
return " (" + count11Bit + " 11-bit, " + count29Bit + " 29-bit) | " + sizePercent.toFixed(1) + "%";
|
|
25015
25049
|
}()), function () {
|
|
25016
|
-
var isFirmwareSupported =
|
|
25017
|
-
var isCanmod =
|
|
25018
|
-
var isCanmodRouter = isCanmod &&
|
|
25050
|
+
var isFirmwareSupported = _this12.isFirmwareVersionSupported();
|
|
25051
|
+
var isCanmod = _this12.props.deviceType === "CANmod";
|
|
25052
|
+
var isCanmodRouter = isCanmod && _this12.isCanmodRouter();
|
|
25019
25053
|
var minFirmware = isCanmod ? MIN_FIRMWARE_CANMOD_ROUTER : MIN_FIRMWARE_CANEDGE;
|
|
25020
25054
|
var isDeviceSupported = !isCanmod || isCanmodRouter;
|
|
25021
25055
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
@@ -25026,20 +25060,20 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
25026
25060
|
}
|
|
25027
25061
|
}, /*#__PURE__*/React.createElement("button", {
|
|
25028
25062
|
className: "btn btn-primary",
|
|
25029
|
-
onClick:
|
|
25030
|
-
disabled: !
|
|
25063
|
+
onClick: _this12.onMerge,
|
|
25064
|
+
disabled: !_this12.props.formData || Object.keys(_this12.props.formData).length === 0 || _this12.state.mergedConfigValid !== true || !isFirmwareSupported || !isDeviceSupported
|
|
25031
25065
|
}, "Merge files"), /*#__PURE__*/React.createElement("button", {
|
|
25032
25066
|
className: "btn btn-default",
|
|
25033
|
-
onClick:
|
|
25034
|
-
disabled: Object.keys(
|
|
25035
|
-
}, "Download JSON")),
|
|
25067
|
+
onClick: _this12.onDownload,
|
|
25068
|
+
disabled: Object.keys(_this12.state.generatedFilterConfig).length === 0
|
|
25069
|
+
}, "Download JSON")), _this12.props.formData && Object.keys(_this12.props.formData).length > 0 && isDeviceSupported && !isFirmwareSupported && /*#__PURE__*/React.createElement("div", {
|
|
25036
25070
|
style: {
|
|
25037
25071
|
fontSize: "12px",
|
|
25038
25072
|
color: "#666",
|
|
25039
25073
|
marginTop: "8px"
|
|
25040
25074
|
}
|
|
25041
25075
|
}, "Merging requires firmware ", minFirmware, ".XX+ - please update your device"));
|
|
25042
|
-
}(), Object.keys(
|
|
25076
|
+
}(), Object.keys(_this12.state.generatedFilterConfig).length > 0 && /*#__PURE__*/React.createElement("div", {
|
|
25043
25077
|
style: {
|
|
25044
25078
|
marginTop: "10px"
|
|
25045
25079
|
}
|
|
@@ -25052,17 +25086,17 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
25052
25086
|
}
|
|
25053
25087
|
}, /*#__PURE__*/React.createElement("input", {
|
|
25054
25088
|
type: "checkbox",
|
|
25055
|
-
checked:
|
|
25089
|
+
checked: _this12.state.showFilterPreview,
|
|
25056
25090
|
onChange: function onChange() {
|
|
25057
|
-
return
|
|
25058
|
-
showFilterPreview: !
|
|
25091
|
+
return _this12.setState({
|
|
25092
|
+
showFilterPreview: !_this12.state.showFilterPreview
|
|
25059
25093
|
});
|
|
25060
25094
|
},
|
|
25061
25095
|
style: {
|
|
25062
25096
|
marginRight: "6px",
|
|
25063
25097
|
marginBottom: "4px"
|
|
25064
25098
|
}
|
|
25065
|
-
}), "Show partial config preview"),
|
|
25099
|
+
}), "Show partial config preview"), _this12.state.showFilterPreview && /*#__PURE__*/React.createElement("div", {
|
|
25066
25100
|
style: {
|
|
25067
25101
|
marginTop: "10px"
|
|
25068
25102
|
}
|
|
@@ -25073,21 +25107,8 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
25073
25107
|
overflow: "auto",
|
|
25074
25108
|
fontSize: "11px"
|
|
25075
25109
|
}
|
|
25076
|
-
}, JSON.stringify(
|
|
25077
|
-
}()), /*#__PURE__*/React.createElement("div",
|
|
25078
|
-
style: {
|
|
25079
|
-
display: "none"
|
|
25080
|
-
}
|
|
25081
|
-
}, /*#__PURE__*/React.createElement(Form, {
|
|
25082
|
-
validator: validator,
|
|
25083
|
-
onError: this.onValidationError,
|
|
25084
|
-
schema: this.props.schemaContent ? this.props.schemaContent : {},
|
|
25085
|
-
formData: this.state.mergedConfig ? this.state.mergedConfig : {},
|
|
25086
|
-
onSubmit: this.onSubmit,
|
|
25087
|
-
ref: function ref(form) {
|
|
25088
|
-
yourForm$2 = form;
|
|
25089
|
-
}
|
|
25090
|
-
})), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null)));
|
|
25110
|
+
}, JSON.stringify(_this12.state.generatedFilterConfig, null, 2)))));
|
|
25111
|
+
}()), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("br", null)));
|
|
25091
25112
|
};
|
|
25092
25113
|
return FilterBuilderTool;
|
|
25093
25114
|
}(React.Component);
|