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.modern.js
CHANGED
|
@@ -8,6 +8,7 @@ import Select from 'react-select';
|
|
|
8
8
|
import Files from 'react-files';
|
|
9
9
|
import applyNav, { GENERIC_NAV } from 'rjsf-tabs';
|
|
10
10
|
import { ReactGhLikeDiff } from 'react-gh-like-diff';
|
|
11
|
+
import Ajv from 'ajv';
|
|
11
12
|
|
|
12
13
|
function _arrayLikeToArray(r, a) {
|
|
13
14
|
(null == a || a > r.length) && (a = r.length);
|
|
@@ -19271,8 +19272,14 @@ var EditorSection = /*#__PURE__*/function (_React$Component) {
|
|
|
19271
19272
|
isSubmitting: false,
|
|
19272
19273
|
isDownloadConfig: false,
|
|
19273
19274
|
isCompareChanges: false,
|
|
19274
|
-
activeSideBar: 'schema-modal'
|
|
19275
|
+
activeSideBar: 'schema-modal',
|
|
19276
|
+
showNewToolsHighlight: true
|
|
19275
19277
|
};
|
|
19278
|
+
setTimeout(function () {
|
|
19279
|
+
_this.setState({
|
|
19280
|
+
showNewToolsHighlight: false
|
|
19281
|
+
});
|
|
19282
|
+
}, 10000);
|
|
19276
19283
|
_this.input = '';
|
|
19277
19284
|
_this.s3 = _this.props.fetchFileContentExt ? true : false;
|
|
19278
19285
|
return _this;
|
|
@@ -19564,7 +19571,9 @@ var EditorSection = /*#__PURE__*/function (_React$Component) {
|
|
|
19564
19571
|
}, ' ', "Review changes", ' ')), /*#__PURE__*/React.createElement("div", {
|
|
19565
19572
|
className: "col-xs-7",
|
|
19566
19573
|
style: {
|
|
19567
|
-
"float": 'left'
|
|
19574
|
+
"float": 'left',
|
|
19575
|
+
display: 'flex',
|
|
19576
|
+
alignItems: 'center'
|
|
19568
19577
|
}
|
|
19569
19578
|
}, editorToolsFull.map(function (modal, idx) {
|
|
19570
19579
|
return /*#__PURE__*/React.createElement(EditorToolButton, {
|
|
@@ -19575,7 +19584,15 @@ var EditorSection = /*#__PURE__*/function (_React$Component) {
|
|
|
19575
19584
|
comment: modal.comment,
|
|
19576
19585
|
className: modal["class"]
|
|
19577
19586
|
});
|
|
19578
|
-
})
|
|
19587
|
+
}), this.state.showNewToolsHighlight && /*#__PURE__*/React.createElement("span", {
|
|
19588
|
+
style: {
|
|
19589
|
+
fontSize: '12px',
|
|
19590
|
+
color: '#337ab7',
|
|
19591
|
+
marginLeft: '10px',
|
|
19592
|
+
transition: 'opacity 1s ease-out',
|
|
19593
|
+
opacity: this.state.showNewToolsHighlight ? 1 : 0
|
|
19594
|
+
}
|
|
19595
|
+
}, "New: OBD & filter builder tools"))))))), /*#__PURE__*/React.createElement("div", {
|
|
19579
19596
|
className: "config-bar-background"
|
|
19580
19597
|
}));
|
|
19581
19598
|
};
|
|
@@ -21876,7 +21893,6 @@ function extractSupportedPidsFromBitmap(rangeStart, bitmapHex, supportedSet) {
|
|
|
21876
21893
|
}
|
|
21877
21894
|
|
|
21878
21895
|
var merge$1 = require("deepmerge");
|
|
21879
|
-
var yourForm$1;
|
|
21880
21896
|
var modeOptions = [{
|
|
21881
21897
|
value: "all",
|
|
21882
21898
|
label: "Select from all PIDs"
|
|
@@ -22187,6 +22203,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22187
22203
|
}
|
|
22188
22204
|
};
|
|
22189
22205
|
_proto.testMergedFile = function testMergedFile() {
|
|
22206
|
+
var _this8 = this;
|
|
22190
22207
|
var _this$state4 = this.state,
|
|
22191
22208
|
generatedConfig = _this$state4.generatedConfig,
|
|
22192
22209
|
enableControlSignal = _this$state4.enableControlSignal,
|
|
@@ -22257,8 +22274,24 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22257
22274
|
this.setState({
|
|
22258
22275
|
mergedConfig: mergedConfigTemp
|
|
22259
22276
|
}, function () {
|
|
22260
|
-
|
|
22261
|
-
|
|
22277
|
+
var schemaContent = _this8.props.schemaContent;
|
|
22278
|
+
if (schemaContent && mergedConfigTemp) {
|
|
22279
|
+
try {
|
|
22280
|
+
var ajv = new Ajv({
|
|
22281
|
+
allErrors: true,
|
|
22282
|
+
strict: false,
|
|
22283
|
+
logger: false
|
|
22284
|
+
});
|
|
22285
|
+
var validate = ajv.compile(schemaContent);
|
|
22286
|
+
var valid = validate(mergedConfigTemp);
|
|
22287
|
+
_this8.setState({
|
|
22288
|
+
mergedConfigValid: valid
|
|
22289
|
+
});
|
|
22290
|
+
} catch (e) {
|
|
22291
|
+
_this8.setState({
|
|
22292
|
+
mergedConfigValid: false
|
|
22293
|
+
});
|
|
22294
|
+
}
|
|
22262
22295
|
}
|
|
22263
22296
|
});
|
|
22264
22297
|
};
|
|
@@ -22306,7 +22339,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22306
22339
|
linkElement.click();
|
|
22307
22340
|
};
|
|
22308
22341
|
_proto.render = function render() {
|
|
22309
|
-
var
|
|
22342
|
+
var _this9 = this;
|
|
22310
22343
|
var _this$state6 = this.state,
|
|
22311
22344
|
toolMode = _this$state6.toolMode,
|
|
22312
22345
|
channel = _this$state6.channel,
|
|
@@ -22317,7 +22350,6 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22317
22350
|
searchQuery = _this$state6.searchQuery,
|
|
22318
22351
|
supportedPids = _this$state6.supportedPids,
|
|
22319
22352
|
generatedConfig = _this$state6.generatedConfig,
|
|
22320
|
-
mergedConfig = _this$state6.mergedConfig,
|
|
22321
22353
|
mergedConfigValid = _this$state6.mergedConfigValid,
|
|
22322
22354
|
csvFileName = _this$state6.csvFileName,
|
|
22323
22355
|
mixedWarning = _this$state6.mixedWarning,
|
|
@@ -22327,7 +22359,6 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22327
22359
|
combinedConfig = _this$state6.combinedConfig;
|
|
22328
22360
|
var _this$props = this.props,
|
|
22329
22361
|
formData = _this$props.formData,
|
|
22330
|
-
schemaContent = _this$props.schemaContent,
|
|
22331
22362
|
editorConfigFiles = _this$props.editorConfigFiles;
|
|
22332
22363
|
var configFileName = editorConfigFiles && editorConfigFiles.length > 0 ? editorConfigFiles[0].name : "";
|
|
22333
22364
|
var isVersion0109 = configFileName.includes("01.09");
|
|
@@ -22371,7 +22402,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22371
22402
|
}, /*#__PURE__*/React.createElement(Files, {
|
|
22372
22403
|
onChange: this.handleCsvUpload,
|
|
22373
22404
|
onError: function onError(error) {
|
|
22374
|
-
return
|
|
22405
|
+
return _this9.props.showAlert("danger", error.message);
|
|
22375
22406
|
},
|
|
22376
22407
|
accepts: [".csv"],
|
|
22377
22408
|
multiple: false,
|
|
@@ -22398,7 +22429,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22398
22429
|
options: channelOptions,
|
|
22399
22430
|
value: channel,
|
|
22400
22431
|
onChange: function onChange(opt) {
|
|
22401
|
-
return
|
|
22432
|
+
return _this9.handleSettingChange("channel", opt);
|
|
22402
22433
|
},
|
|
22403
22434
|
comment: "Select which CAN channel should be used to transmit the OBD requests."
|
|
22404
22435
|
})), /*#__PURE__*/React.createElement("div", {
|
|
@@ -22408,7 +22439,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22408
22439
|
options: bitRateOptions,
|
|
22409
22440
|
value: bitRate,
|
|
22410
22441
|
onChange: function onChange(opt) {
|
|
22411
|
-
return
|
|
22442
|
+
return _this9.handleSettingChange("bitRate", opt);
|
|
22412
22443
|
},
|
|
22413
22444
|
comment: "Cars typically use 500K, trucks/buses may use 250K or 500K."
|
|
22414
22445
|
}))), toolMode !== "test" && /*#__PURE__*/React.createElement("div", {
|
|
@@ -22420,7 +22451,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22420
22451
|
options: canIdOptions,
|
|
22421
22452
|
value: canId,
|
|
22422
22453
|
onChange: function onChange(opt) {
|
|
22423
|
-
return
|
|
22454
|
+
return _this9.handleSettingChange("canId", opt);
|
|
22424
22455
|
},
|
|
22425
22456
|
comment: "Cars typically use 7DF, trucks/buses typically use 18DB33F1."
|
|
22426
22457
|
})), /*#__PURE__*/React.createElement("div", {
|
|
@@ -22430,7 +22461,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22430
22461
|
options: obdModeOptions,
|
|
22431
22462
|
value: obdMode,
|
|
22432
22463
|
onChange: function onChange(opt) {
|
|
22433
|
-
return
|
|
22464
|
+
return _this9.handleSettingChange("obdMode", opt);
|
|
22434
22465
|
},
|
|
22435
22466
|
comment: "Cars use OBD2, trucks/buses may use OBD2 or WWH-OBD."
|
|
22436
22467
|
}))), toolMode !== "test" && /*#__PURE__*/React.createElement("div", {
|
|
@@ -22443,17 +22474,17 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22443
22474
|
max: 10000,
|
|
22444
22475
|
onChange: function onChange(e) {
|
|
22445
22476
|
var val = parseInt(e.target.value) || 0;
|
|
22446
|
-
|
|
22477
|
+
_this9.setState({
|
|
22447
22478
|
spacing: val
|
|
22448
22479
|
});
|
|
22449
22480
|
},
|
|
22450
22481
|
onBlur: function onBlur(e) {
|
|
22451
22482
|
var val = Math.min(10000, Math.max(100, parseInt(e.target.value) || 100));
|
|
22452
|
-
|
|
22483
|
+
_this9.setState({
|
|
22453
22484
|
spacing: val
|
|
22454
22485
|
}, function () {
|
|
22455
|
-
if (
|
|
22456
|
-
|
|
22486
|
+
if (_this9.getSelectedPids().length > 0) {
|
|
22487
|
+
_this9.generateTransmitList();
|
|
22457
22488
|
}
|
|
22458
22489
|
});
|
|
22459
22490
|
}
|
|
@@ -22504,7 +22535,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22504
22535
|
key: pid.uniqueId,
|
|
22505
22536
|
className: "checkbox-white-space",
|
|
22506
22537
|
onClick: function onClick() {
|
|
22507
|
-
return !pid.disabled &&
|
|
22538
|
+
return !pid.disabled && _this9.handlePidToggle(pid.uniqueId);
|
|
22508
22539
|
},
|
|
22509
22540
|
style: {
|
|
22510
22541
|
display: "flex",
|
|
@@ -22530,7 +22561,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22530
22561
|
checked: pid.selected,
|
|
22531
22562
|
disabled: pid.disabled,
|
|
22532
22563
|
onChange: function onChange() {
|
|
22533
|
-
return !pid.disabled &&
|
|
22564
|
+
return !pid.disabled && _this9.handlePidToggle(pid.uniqueId);
|
|
22534
22565
|
}
|
|
22535
22566
|
}), /*#__PURE__*/React.createElement("span", null))), /*#__PURE__*/React.createElement("span", {
|
|
22536
22567
|
className: "binary-text-alt-2",
|
|
@@ -22573,11 +22604,11 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22573
22604
|
type: "checkbox",
|
|
22574
22605
|
checked: enableOBDFilter,
|
|
22575
22606
|
onChange: function onChange() {
|
|
22576
|
-
|
|
22607
|
+
_this9.setState({
|
|
22577
22608
|
enableOBDFilter: !enableOBDFilter
|
|
22578
22609
|
}, function () {
|
|
22579
|
-
if (
|
|
22580
|
-
|
|
22610
|
+
if (_this9.getSelectedPids().length > 0) {
|
|
22611
|
+
_this9.generateTransmitList();
|
|
22581
22612
|
}
|
|
22582
22613
|
});
|
|
22583
22614
|
},
|
|
@@ -22602,11 +22633,11 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22602
22633
|
type: "checkbox",
|
|
22603
22634
|
checked: enableControlSignal,
|
|
22604
22635
|
onChange: function onChange() {
|
|
22605
|
-
|
|
22636
|
+
_this9.setState({
|
|
22606
22637
|
enableControlSignal: !enableControlSignal
|
|
22607
22638
|
}, function () {
|
|
22608
|
-
if (
|
|
22609
|
-
|
|
22639
|
+
if (_this9.getSelectedPids().length > 0) {
|
|
22640
|
+
_this9.generateTransmitList();
|
|
22610
22641
|
}
|
|
22611
22642
|
});
|
|
22612
22643
|
},
|
|
@@ -22651,7 +22682,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22651
22682
|
type: "checkbox",
|
|
22652
22683
|
checked: showPreview,
|
|
22653
22684
|
onChange: function onChange() {
|
|
22654
|
-
return
|
|
22685
|
+
return _this9.setState({
|
|
22655
22686
|
showPreview: !showPreview
|
|
22656
22687
|
});
|
|
22657
22688
|
},
|
|
@@ -22665,20 +22696,7 @@ var OBDTool = /*#__PURE__*/function (_React$Component) {
|
|
|
22665
22696
|
}
|
|
22666
22697
|
}, /*#__PURE__*/React.createElement("pre", {
|
|
22667
22698
|
className: "browse-file-preview"
|
|
22668
|
-
}, 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))
|
|
22669
|
-
style: {
|
|
22670
|
-
display: "none"
|
|
22671
|
-
}
|
|
22672
|
-
}, /*#__PURE__*/React.createElement(Form, {
|
|
22673
|
-
validator: validator,
|
|
22674
|
-
onError: this.onValidationError,
|
|
22675
|
-
schema: schemaContent ? schemaContent : {},
|
|
22676
|
-
formData: mergedConfig ? mergedConfig : {},
|
|
22677
|
-
onSubmit: this.onSubmit,
|
|
22678
|
-
ref: function ref(form) {
|
|
22679
|
-
yourForm$1 = form;
|
|
22680
|
-
}
|
|
22681
|
-
})));
|
|
22699
|
+
}, 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)));
|
|
22682
22700
|
};
|
|
22683
22701
|
return OBDTool;
|
|
22684
22702
|
}(React.Component);
|
|
@@ -22991,13 +23009,13 @@ function applyPrescaler(frame, filter, prescalerState) {
|
|
|
22991
23009
|
state.lastData = currentData;
|
|
22992
23010
|
return true;
|
|
22993
23011
|
}
|
|
22994
|
-
var maskValue = prescalerValue ?
|
|
23012
|
+
var maskValue = prescalerValue ? BigInt("0x" + prescalerValue) : BigInt("0xFFFFFFFFFFFFFFFF");
|
|
22995
23013
|
var prevBytes = parseDataBytes(state.lastData);
|
|
22996
23014
|
var currBytes = parseDataBytes(currentData);
|
|
22997
23015
|
var changed = false;
|
|
22998
23016
|
for (var i = 0; i < Math.max(prevBytes.length, currBytes.length); i++) {
|
|
22999
23017
|
var byteMask = BigInt(1) << BigInt(i);
|
|
23000
|
-
if ((
|
|
23018
|
+
if ((maskValue & byteMask) !== BigInt(0)) {
|
|
23001
23019
|
var prevByte = prevBytes[i] || 0;
|
|
23002
23020
|
var currByte = currBytes[i] || 0;
|
|
23003
23021
|
if (prevByte !== currByte) {
|
|
@@ -23104,7 +23122,6 @@ function evaluateFilters(frames, configData, detectedDeviceType) {
|
|
|
23104
23122
|
var _excluded = ["name"],
|
|
23105
23123
|
_excluded2 = ["name"];
|
|
23106
23124
|
var merge$2 = require("deepmerge");
|
|
23107
|
-
var yourForm$2;
|
|
23108
23125
|
var prescalerOptions = [{
|
|
23109
23126
|
value: "none",
|
|
23110
23127
|
label: "None"
|
|
@@ -24032,6 +24049,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24032
24049
|
return filterConfig;
|
|
24033
24050
|
};
|
|
24034
24051
|
_proto.testMergedFile = function testMergedFile() {
|
|
24052
|
+
var _this11 = this;
|
|
24035
24053
|
var _this$state7 = this.state,
|
|
24036
24054
|
generatedFilterConfig = _this$state7.generatedFilterConfig,
|
|
24037
24055
|
filterMergeMode = _this$state7.filterMergeMode;
|
|
@@ -24065,8 +24083,24 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24065
24083
|
this.setState({
|
|
24066
24084
|
mergedConfig: mergedConfigTemp
|
|
24067
24085
|
}, function () {
|
|
24068
|
-
|
|
24069
|
-
|
|
24086
|
+
var schemaContent = _this11.props.schemaContent;
|
|
24087
|
+
if (schemaContent && mergedConfigTemp) {
|
|
24088
|
+
try {
|
|
24089
|
+
var ajv = new Ajv({
|
|
24090
|
+
allErrors: true,
|
|
24091
|
+
strict: false,
|
|
24092
|
+
logger: false
|
|
24093
|
+
});
|
|
24094
|
+
var validate = ajv.compile(schemaContent);
|
|
24095
|
+
var valid = validate(mergedConfigTemp);
|
|
24096
|
+
_this11.setState({
|
|
24097
|
+
mergedConfigValid: valid
|
|
24098
|
+
});
|
|
24099
|
+
} catch (e) {
|
|
24100
|
+
_this11.setState({
|
|
24101
|
+
mergedConfigValid: false
|
|
24102
|
+
});
|
|
24103
|
+
}
|
|
24070
24104
|
}
|
|
24071
24105
|
});
|
|
24072
24106
|
};
|
|
@@ -24274,7 +24308,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24274
24308
|
});
|
|
24275
24309
|
};
|
|
24276
24310
|
_proto.render = function render() {
|
|
24277
|
-
var
|
|
24311
|
+
var _this12 = this;
|
|
24278
24312
|
var _this$state10 = this.state,
|
|
24279
24313
|
csvFileName = _this$state10.csvFileName,
|
|
24280
24314
|
dbcFileNames = _this$state10.dbcFileNames,
|
|
@@ -24313,7 +24347,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24313
24347
|
}, /*#__PURE__*/React.createElement(Files, {
|
|
24314
24348
|
onChange: this.handleCsvUpload,
|
|
24315
24349
|
onError: function onError(error) {
|
|
24316
|
-
return
|
|
24350
|
+
return _this12.props.showAlert("danger", error.message);
|
|
24317
24351
|
},
|
|
24318
24352
|
accepts: [".csv"],
|
|
24319
24353
|
multiple: false,
|
|
@@ -24327,7 +24361,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24327
24361
|
}, /*#__PURE__*/React.createElement(Files, {
|
|
24328
24362
|
onChange: this.handleDbcUpload,
|
|
24329
24363
|
onError: function onError(error) {
|
|
24330
|
-
return
|
|
24364
|
+
return _this12.props.showAlert("danger", error.message);
|
|
24331
24365
|
},
|
|
24332
24366
|
accepts: [".dbc"],
|
|
24333
24367
|
multiple: true,
|
|
@@ -24362,10 +24396,10 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24362
24396
|
type: "checkbox",
|
|
24363
24397
|
checked: groupJ1939Pgns,
|
|
24364
24398
|
onChange: function onChange() {
|
|
24365
|
-
|
|
24399
|
+
_this12.setState({
|
|
24366
24400
|
groupJ1939Pgns: !groupJ1939Pgns
|
|
24367
24401
|
}, function () {
|
|
24368
|
-
|
|
24402
|
+
_this12.mergeData();
|
|
24369
24403
|
});
|
|
24370
24404
|
},
|
|
24371
24405
|
style: {
|
|
@@ -24375,7 +24409,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24375
24409
|
}), "Group 29-bit IDs as PGNs"), /*#__PURE__*/React.createElement("p", {
|
|
24376
24410
|
className: "field-description field-description-shift"
|
|
24377
24411
|
}, "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 () {
|
|
24378
|
-
var isEnabled =
|
|
24412
|
+
var isEnabled = _this12.props.formData && _this12.isFirmwareVersionSupported();
|
|
24379
24413
|
return /*#__PURE__*/React.createElement("div", {
|
|
24380
24414
|
className: "form-group pl0 field-string",
|
|
24381
24415
|
style: {
|
|
@@ -24392,9 +24426,9 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24392
24426
|
}
|
|
24393
24427
|
}, /*#__PURE__*/React.createElement("input", {
|
|
24394
24428
|
type: "checkbox",
|
|
24395
|
-
checked:
|
|
24429
|
+
checked: _this12.state.showFilteredSummary,
|
|
24396
24430
|
onChange: function onChange() {
|
|
24397
|
-
return
|
|
24431
|
+
return _this12.toggleFilteredSummary();
|
|
24398
24432
|
},
|
|
24399
24433
|
disabled: !isEnabled,
|
|
24400
24434
|
style: {
|
|
@@ -24443,10 +24477,10 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24443
24477
|
}, label, ":"), /*#__PURE__*/React.createElement("input", {
|
|
24444
24478
|
type: "text",
|
|
24445
24479
|
className: "form-control encryption-input",
|
|
24446
|
-
value:
|
|
24480
|
+
value: _this12.state["channelMap" + label],
|
|
24447
24481
|
onChange: function onChange(e) {
|
|
24448
|
-
var
|
|
24449
|
-
return
|
|
24482
|
+
var _this12$setState;
|
|
24483
|
+
return _this12.setState((_this12$setState = {}, _this12$setState["channelMap" + label] = e.target.value, _this12$setState));
|
|
24450
24484
|
},
|
|
24451
24485
|
style: {
|
|
24452
24486
|
width: "36px",
|
|
@@ -24562,11 +24596,11 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24562
24596
|
marginLeft: "8px"
|
|
24563
24597
|
}
|
|
24564
24598
|
}, "Signals")), filteredEntries.map(function (entry) {
|
|
24565
|
-
var isChannelValid =
|
|
24599
|
+
var isChannelValid = _this12.props.deviceType === "CANmod" ? _this12.isChannelValid(entry.channel) : true;
|
|
24566
24600
|
return /*#__PURE__*/React.createElement("div", {
|
|
24567
24601
|
key: entry.uniqueId,
|
|
24568
24602
|
onClick: function onClick() {
|
|
24569
|
-
return isChannelValid &&
|
|
24603
|
+
return isChannelValid && _this12.handleEntryToggle(entry.uniqueId);
|
|
24570
24604
|
},
|
|
24571
24605
|
style: {
|
|
24572
24606
|
display: "flex",
|
|
@@ -24594,7 +24628,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24594
24628
|
checked: entry.selected,
|
|
24595
24629
|
disabled: !isChannelValid,
|
|
24596
24630
|
onChange: function onChange() {
|
|
24597
|
-
return isChannelValid &&
|
|
24631
|
+
return isChannelValid && _this12.handleEntryToggle(entry.uniqueId);
|
|
24598
24632
|
}
|
|
24599
24633
|
}), /*#__PURE__*/React.createElement("span", null))), /*#__PURE__*/React.createElement("span", {
|
|
24600
24634
|
className: "binary-text-alt-2",
|
|
@@ -24631,7 +24665,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24631
24665
|
display: "flex",
|
|
24632
24666
|
alignItems: "center"
|
|
24633
24667
|
}
|
|
24634
|
-
},
|
|
24668
|
+
}, _this12.renderBarChart(entry.isGroup ? entry.groupedPercentage : entry.percentage, maxPercentage), /*#__PURE__*/React.createElement("span", {
|
|
24635
24669
|
style: {
|
|
24636
24670
|
marginLeft: "4px",
|
|
24637
24671
|
fontFamily: "monospace",
|
|
@@ -24722,7 +24756,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24722
24756
|
marginLeft: "4px"
|
|
24723
24757
|
},
|
|
24724
24758
|
onClick: function onClick() {
|
|
24725
|
-
return
|
|
24759
|
+
return _this12.selectTop(30);
|
|
24726
24760
|
}
|
|
24727
24761
|
}, "Top 30"), /*#__PURE__*/React.createElement("span", {
|
|
24728
24762
|
style: {
|
|
@@ -24735,7 +24769,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24735
24769
|
cursor: "pointer"
|
|
24736
24770
|
},
|
|
24737
24771
|
onClick: function onClick() {
|
|
24738
|
-
return
|
|
24772
|
+
return _this12.selectTop(50);
|
|
24739
24773
|
}
|
|
24740
24774
|
}, "Top 50"), /*#__PURE__*/React.createElement("span", {
|
|
24741
24775
|
style: {
|
|
@@ -24748,7 +24782,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24748
24782
|
cursor: "pointer"
|
|
24749
24783
|
},
|
|
24750
24784
|
onClick: function onClick() {
|
|
24751
|
-
return
|
|
24785
|
+
return _this12.selectMatched(true);
|
|
24752
24786
|
}
|
|
24753
24787
|
}, "Matched"), /*#__PURE__*/React.createElement("span", {
|
|
24754
24788
|
style: {
|
|
@@ -24761,13 +24795,13 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24761
24795
|
cursor: "pointer"
|
|
24762
24796
|
},
|
|
24763
24797
|
onClick: function onClick() {
|
|
24764
|
-
return
|
|
24798
|
+
return _this12.selectMatched(false);
|
|
24765
24799
|
}
|
|
24766
24800
|
}, "Unmatched")), csvData && function () {
|
|
24767
|
-
var activeCsvData =
|
|
24768
|
-
var isFiltered =
|
|
24769
|
-
var originalFileSize =
|
|
24770
|
-
var filteredFileSize = isFiltered ? originalFileSize * (1 -
|
|
24801
|
+
var activeCsvData = _this12.state.showFilteredSummary && _this12.state.filteredCsvData ? _this12.state.filteredCsvData : csvData;
|
|
24802
|
+
var isFiltered = _this12.state.showFilteredSummary && _this12.state.filteredCsvData;
|
|
24803
|
+
var originalFileSize = _this12.csvFileSize / (1024 * 1024);
|
|
24804
|
+
var filteredFileSize = isFiltered ? originalFileSize * (1 - _this12.state.filterReductionPercent / 100) : originalFileSize;
|
|
24771
24805
|
return /*#__PURE__*/React.createElement("div", {
|
|
24772
24806
|
style: {
|
|
24773
24807
|
fontSize: "12px",
|
|
@@ -24794,7 +24828,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24794
24828
|
color: "#5cb85c",
|
|
24795
24829
|
marginTop: "4px"
|
|
24796
24830
|
}
|
|
24797
|
-
}, "Showing filtered summary (reduction: ", /*#__PURE__*/React.createElement("strong", null,
|
|
24831
|
+
}, "Showing filtered summary (reduction: ", /*#__PURE__*/React.createElement("strong", null, _this12.state.filterReductionPercent.toFixed(1), "%"), ")"));
|
|
24798
24832
|
}(), function () {
|
|
24799
24833
|
var hasSelection = mergedEntries.some(function (e) {
|
|
24800
24834
|
return e.selected;
|
|
@@ -24820,8 +24854,8 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24820
24854
|
}, /*#__PURE__*/React.createElement("div", {
|
|
24821
24855
|
className: "col-xs-6",
|
|
24822
24856
|
style: {
|
|
24823
|
-
opacity:
|
|
24824
|
-
pointerEvents:
|
|
24857
|
+
opacity: _this12.props.deviceType === "CANmod" ? 0.5 : 1,
|
|
24858
|
+
pointerEvents: _this12.props.deviceType === "CANmod" ? "none" : "auto"
|
|
24825
24859
|
}
|
|
24826
24860
|
}, /*#__PURE__*/React.createElement(SimpleDropdown, {
|
|
24827
24861
|
name: "Type",
|
|
@@ -24832,59 +24866,59 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24832
24866
|
value: "rejection",
|
|
24833
24867
|
label: "Rejection"
|
|
24834
24868
|
}],
|
|
24835
|
-
value:
|
|
24869
|
+
value: _this12.state.filterType,
|
|
24836
24870
|
onChange: function onChange(opt) {
|
|
24837
|
-
return
|
|
24871
|
+
return _this12.setState({
|
|
24838
24872
|
filterType: opt.value
|
|
24839
24873
|
}, function () {
|
|
24840
|
-
return
|
|
24874
|
+
return _this12.generateFilterConfig();
|
|
24841
24875
|
});
|
|
24842
24876
|
}
|
|
24843
|
-
}),
|
|
24877
|
+
}), _this12.props.deviceType === "CANmod" && /*#__PURE__*/React.createElement("span", {
|
|
24844
24878
|
className: "field-description",
|
|
24845
24879
|
style: {
|
|
24846
24880
|
fontSize: "11px",
|
|
24847
24881
|
color: "#999"
|
|
24848
24882
|
}
|
|
24849
|
-
}, "CANmod only supports acceptance filters")),
|
|
24883
|
+
}, "CANmod only supports acceptance filters")), _this12.state.filterType === "acceptance" && /*#__PURE__*/React.createElement("div", {
|
|
24850
24884
|
className: "col-xs-6"
|
|
24851
24885
|
}, /*#__PURE__*/React.createElement(SimpleDropdown, {
|
|
24852
24886
|
name: "Prescaler",
|
|
24853
24887
|
options: prescalerOptions,
|
|
24854
|
-
value:
|
|
24888
|
+
value: _this12.state.prescalerType,
|
|
24855
24889
|
onChange: function onChange(opt) {
|
|
24856
|
-
return
|
|
24890
|
+
return _this12.setState({
|
|
24857
24891
|
prescalerType: opt.value
|
|
24858
24892
|
}, function () {
|
|
24859
|
-
return
|
|
24893
|
+
return _this12.generateFilterConfig();
|
|
24860
24894
|
});
|
|
24861
24895
|
}
|
|
24862
|
-
}))),
|
|
24896
|
+
}))), _this12.state.filterType === "acceptance" && _this12.state.prescalerType !== "none" && /*#__PURE__*/React.createElement("div", {
|
|
24863
24897
|
className: "form-group pl0 field-string"
|
|
24864
|
-
},
|
|
24898
|
+
}, _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", {
|
|
24865
24899
|
type: "number",
|
|
24866
24900
|
className: "form-control encryption-input",
|
|
24867
24901
|
min: "1",
|
|
24868
|
-
max:
|
|
24869
|
-
value:
|
|
24902
|
+
max: _this12.state.prescalerType === "count" ? 256 : 4194304,
|
|
24903
|
+
value: _this12.state.prescalerValue,
|
|
24870
24904
|
onChange: function onChange(e) {
|
|
24871
|
-
return
|
|
24905
|
+
return _this12.setState({
|
|
24872
24906
|
prescalerValue: parseInt(e.target.value) || 1
|
|
24873
24907
|
}, function () {
|
|
24874
|
-
return
|
|
24908
|
+
return _this12.generateFilterConfig();
|
|
24875
24909
|
});
|
|
24876
24910
|
}
|
|
24877
|
-
}),
|
|
24911
|
+
}), _this12.state.prescalerType === "data" && /*#__PURE__*/React.createElement("input", {
|
|
24878
24912
|
type: "text",
|
|
24879
24913
|
className: "form-control encryption-input",
|
|
24880
|
-
value:
|
|
24914
|
+
value: _this12.state.dataPrescalerMask,
|
|
24881
24915
|
onChange: function onChange(e) {
|
|
24882
24916
|
var val = e.target.value.toUpperCase();
|
|
24883
24917
|
if (/^[a-fA-F0-9]*$/.test(val) && val.length <= 16) {
|
|
24884
|
-
|
|
24918
|
+
_this12.setState({
|
|
24885
24919
|
dataPrescalerMask: val
|
|
24886
24920
|
}, function () {
|
|
24887
|
-
return
|
|
24921
|
+
return _this12.generateFilterConfig();
|
|
24888
24922
|
});
|
|
24889
24923
|
}
|
|
24890
24924
|
},
|
|
@@ -24895,7 +24929,7 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24895
24929
|
}
|
|
24896
24930
|
}), /*#__PURE__*/React.createElement("span", {
|
|
24897
24931
|
className: "field-description field-description-shift"
|
|
24898
|
-
},
|
|
24932
|
+
}, _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", {
|
|
24899
24933
|
style: {
|
|
24900
24934
|
display: "flex",
|
|
24901
24935
|
alignItems: "center",
|
|
@@ -24915,12 +24949,12 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24915
24949
|
type: "radio",
|
|
24916
24950
|
name: "filterMergeMode",
|
|
24917
24951
|
value: "replace",
|
|
24918
|
-
checked:
|
|
24952
|
+
checked: _this12.state.filterMergeMode === "replace",
|
|
24919
24953
|
onChange: function onChange(e) {
|
|
24920
|
-
return
|
|
24954
|
+
return _this12.setState({
|
|
24921
24955
|
filterMergeMode: e.target.value
|
|
24922
24956
|
}, function () {
|
|
24923
|
-
return
|
|
24957
|
+
return _this12.generateFilterConfig();
|
|
24924
24958
|
});
|
|
24925
24959
|
},
|
|
24926
24960
|
style: {
|
|
@@ -24943,12 +24977,12 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24943
24977
|
type: "radio",
|
|
24944
24978
|
name: "filterMergeMode",
|
|
24945
24979
|
value: "append_top",
|
|
24946
|
-
checked:
|
|
24980
|
+
checked: _this12.state.filterMergeMode === "append_top",
|
|
24947
24981
|
onChange: function onChange(e) {
|
|
24948
|
-
return
|
|
24982
|
+
return _this12.setState({
|
|
24949
24983
|
filterMergeMode: e.target.value
|
|
24950
24984
|
}, function () {
|
|
24951
|
-
return
|
|
24985
|
+
return _this12.generateFilterConfig();
|
|
24952
24986
|
});
|
|
24953
24987
|
},
|
|
24954
24988
|
style: {
|
|
@@ -24971,12 +25005,12 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
24971
25005
|
type: "radio",
|
|
24972
25006
|
name: "filterMergeMode",
|
|
24973
25007
|
value: "append_bottom",
|
|
24974
|
-
checked:
|
|
25008
|
+
checked: _this12.state.filterMergeMode === "append_bottom",
|
|
24975
25009
|
onChange: function onChange(e) {
|
|
24976
|
-
return
|
|
25010
|
+
return _this12.setState({
|
|
24977
25011
|
filterMergeMode: e.target.value
|
|
24978
25012
|
}, function () {
|
|
24979
|
-
return
|
|
25013
|
+
return _this12.generateFilterConfig();
|
|
24980
25014
|
});
|
|
24981
25015
|
},
|
|
24982
25016
|
style: {
|
|
@@ -25010,9 +25044,9 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
25010
25044
|
}, 0);
|
|
25011
25045
|
return " (" + count11Bit + " 11-bit, " + count29Bit + " 29-bit) | " + sizePercent.toFixed(1) + "%";
|
|
25012
25046
|
}()), function () {
|
|
25013
|
-
var isFirmwareSupported =
|
|
25014
|
-
var isCanmod =
|
|
25015
|
-
var isCanmodRouter = isCanmod &&
|
|
25047
|
+
var isFirmwareSupported = _this12.isFirmwareVersionSupported();
|
|
25048
|
+
var isCanmod = _this12.props.deviceType === "CANmod";
|
|
25049
|
+
var isCanmodRouter = isCanmod && _this12.isCanmodRouter();
|
|
25016
25050
|
var minFirmware = isCanmod ? MIN_FIRMWARE_CANMOD_ROUTER : MIN_FIRMWARE_CANEDGE;
|
|
25017
25051
|
var isDeviceSupported = !isCanmod || isCanmodRouter;
|
|
25018
25052
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
@@ -25023,20 +25057,20 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
25023
25057
|
}
|
|
25024
25058
|
}, /*#__PURE__*/React.createElement("button", {
|
|
25025
25059
|
className: "btn btn-primary",
|
|
25026
|
-
onClick:
|
|
25027
|
-
disabled: !
|
|
25060
|
+
onClick: _this12.onMerge,
|
|
25061
|
+
disabled: !_this12.props.formData || Object.keys(_this12.props.formData).length === 0 || _this12.state.mergedConfigValid !== true || !isFirmwareSupported || !isDeviceSupported
|
|
25028
25062
|
}, "Merge files"), /*#__PURE__*/React.createElement("button", {
|
|
25029
25063
|
className: "btn btn-default",
|
|
25030
|
-
onClick:
|
|
25031
|
-
disabled: Object.keys(
|
|
25032
|
-
}, "Download JSON")),
|
|
25064
|
+
onClick: _this12.onDownload,
|
|
25065
|
+
disabled: Object.keys(_this12.state.generatedFilterConfig).length === 0
|
|
25066
|
+
}, "Download JSON")), _this12.props.formData && Object.keys(_this12.props.formData).length > 0 && isDeviceSupported && !isFirmwareSupported && /*#__PURE__*/React.createElement("div", {
|
|
25033
25067
|
style: {
|
|
25034
25068
|
fontSize: "12px",
|
|
25035
25069
|
color: "#666",
|
|
25036
25070
|
marginTop: "8px"
|
|
25037
25071
|
}
|
|
25038
25072
|
}, "Merging requires firmware ", minFirmware, ".XX+ - please update your device"));
|
|
25039
|
-
}(), Object.keys(
|
|
25073
|
+
}(), Object.keys(_this12.state.generatedFilterConfig).length > 0 && /*#__PURE__*/React.createElement("div", {
|
|
25040
25074
|
style: {
|
|
25041
25075
|
marginTop: "10px"
|
|
25042
25076
|
}
|
|
@@ -25049,17 +25083,17 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
25049
25083
|
}
|
|
25050
25084
|
}, /*#__PURE__*/React.createElement("input", {
|
|
25051
25085
|
type: "checkbox",
|
|
25052
|
-
checked:
|
|
25086
|
+
checked: _this12.state.showFilterPreview,
|
|
25053
25087
|
onChange: function onChange() {
|
|
25054
|
-
return
|
|
25055
|
-
showFilterPreview: !
|
|
25088
|
+
return _this12.setState({
|
|
25089
|
+
showFilterPreview: !_this12.state.showFilterPreview
|
|
25056
25090
|
});
|
|
25057
25091
|
},
|
|
25058
25092
|
style: {
|
|
25059
25093
|
marginRight: "6px",
|
|
25060
25094
|
marginBottom: "4px"
|
|
25061
25095
|
}
|
|
25062
|
-
}), "Show partial config preview"),
|
|
25096
|
+
}), "Show partial config preview"), _this12.state.showFilterPreview && /*#__PURE__*/React.createElement("div", {
|
|
25063
25097
|
style: {
|
|
25064
25098
|
marginTop: "10px"
|
|
25065
25099
|
}
|
|
@@ -25070,21 +25104,8 @@ var FilterBuilderTool = /*#__PURE__*/function (_React$Component) {
|
|
|
25070
25104
|
overflow: "auto",
|
|
25071
25105
|
fontSize: "11px"
|
|
25072
25106
|
}
|
|
25073
|
-
}, JSON.stringify(
|
|
25074
|
-
}()), /*#__PURE__*/React.createElement("div",
|
|
25075
|
-
style: {
|
|
25076
|
-
display: "none"
|
|
25077
|
-
}
|
|
25078
|
-
}, /*#__PURE__*/React.createElement(Form, {
|
|
25079
|
-
validator: validator,
|
|
25080
|
-
onError: this.onValidationError,
|
|
25081
|
-
schema: this.props.schemaContent ? this.props.schemaContent : {},
|
|
25082
|
-
formData: this.state.mergedConfig ? this.state.mergedConfig : {},
|
|
25083
|
-
onSubmit: this.onSubmit,
|
|
25084
|
-
ref: function ref(form) {
|
|
25085
|
-
yourForm$2 = form;
|
|
25086
|
-
}
|
|
25087
|
-
})), /*#__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)));
|
|
25107
|
+
}, JSON.stringify(_this12.state.generatedFilterConfig, null, 2)))));
|
|
25108
|
+
}()), /*#__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)));
|
|
25088
25109
|
};
|
|
25089
25110
|
return FilterBuilderTool;
|
|
25090
25111
|
}(React.Component);
|