Implmeented some stuiff
This commit is contained in:
74
frontend/views/dashboard/dist/dashboard.unity.js
vendored
74
frontend/views/dashboard/dist/dashboard.unity.js
vendored
@@ -60,6 +60,7 @@ var DashboardUnity = /** @class */ (function () {
|
||||
this.timelineStanding = document.querySelector('.ntsh_dashboard-unity-timeline-standing');
|
||||
this.timelineProgress = document.querySelector('.ntsh_dashboard-unity-timeline-progress');
|
||||
this.parametersTable = document.querySelector('.ntsh_dashboard-unity-parameters');
|
||||
this.advancedParametersTable = document.querySelector('.ntsh_dashboard-unity-advancedparameters');
|
||||
this.sensorsTable = document.querySelector('.ntsh_dashboard-unity-sensors');
|
||||
this.errorContainer = document.querySelector('.ntsh_dashboard-unity-error');
|
||||
this.errorText = document.querySelector('.ntsh_dashboard-unity-errortext');
|
||||
@@ -143,6 +144,7 @@ var DashboardUnity = /** @class */ (function () {
|
||||
(0, utils_1.setProgressState)(this.timelineProgress, Math.round(state.parameters.timelineProgress * 100), 0, 100, '%');
|
||||
// ----------- Parameters -----------
|
||||
this.renderParameterSliders(state.state == 'CONNECTED' ? state.parameters.sliders : []);
|
||||
this.renderAdvancedParameterSliders(state.state == 'CONNECTED' ? state.parameters.advancedSliders : []);
|
||||
this.renderParameterSensors(state.state == 'CONNECTED' ? state.parameters.sensors : []);
|
||||
// ----------- Error -----------
|
||||
if (((_b = state === null || state === void 0 ? void 0 : state.error) !== null && _b !== void 0 ? _b : '').trim().length > 0)
|
||||
@@ -223,6 +225,78 @@ var DashboardUnity = /** @class */ (function () {
|
||||
});
|
||||
}
|
||||
};
|
||||
DashboardUnity.prototype.renderAdvancedParameterSliders = function (sliders) {
|
||||
var _this = this;
|
||||
var existingSliders = this.advancedParametersTable.querySelectorAll('.ntsh_dashboard-unity-parameter-row');
|
||||
if (existingSliders.length !== sliders.length) {
|
||||
this.advancedParametersTable.innerHTML = '';
|
||||
if (sliders.length === 0) {
|
||||
var row = (0, morphux_1.ce)('tr');
|
||||
var cell = (0, morphux_1.ce)('td');
|
||||
cell.appendChild((0, morphux_1.ce)('div', ['mux_text', 'ntsh_dashboard-unity-parameters-loading'], null, 'Waiting for Unity...'));
|
||||
row.appendChild(cell);
|
||||
this.advancedParametersTable.appendChild(row);
|
||||
}
|
||||
else
|
||||
sliders.forEach(function (slider) {
|
||||
var _a, _b;
|
||||
var multiplierFactor = (_a = slider.visualMultiplier) !== null && _a !== void 0 ? _a : 1;
|
||||
var decimalPlacesFactor = Math.pow(10, ((_b = slider.decimalPlaces) !== null && _b !== void 0 ? _b : 0));
|
||||
var value = Math.round(slider.outputValue *
|
||||
multiplierFactor *
|
||||
decimalPlacesFactor) / decimalPlacesFactor;
|
||||
var row = (0, morphux_1.ce)('tr', 'ntsh_dashboard-unity-parameter-row');
|
||||
var nameCell = (0, morphux_1.ce)('td');
|
||||
nameCell.appendChild((0, morphux_1.ce)('div', 'mux_text', null, slider.sliderName));
|
||||
row.appendChild(nameCell);
|
||||
var progressCell = (0, morphux_1.ce)('td', 'no-service');
|
||||
progressCell.appendChild((0, utils_1.createProgress)(value, slider.min * multiplierFactor, slider.max * multiplierFactor, slider.unit));
|
||||
row.appendChild(progressCell);
|
||||
var sliderCell = (0, morphux_1.ce)('td', 'only-service');
|
||||
var sliderProgress = (0, utils_1.createProgress)(value, slider.min * multiplierFactor, slider.max * multiplierFactor, slider.unit);
|
||||
var sliderValue = sliderProgress.querySelector('.ntsh_progress-value');
|
||||
sliderValue.classList.add('mux_resizer');
|
||||
sliderCell.appendChild(sliderProgress);
|
||||
var resizer = new morphux_1.MorphComponent.Resizer({
|
||||
existingContainer: sliderValue,
|
||||
direction: 'right',
|
||||
relative: true,
|
||||
min: 0,
|
||||
max: function () { return sliderProgress.clientWidth; },
|
||||
});
|
||||
var lastValue = -1;
|
||||
resizer.on('resized', function (size) {
|
||||
var percentage = Math.round((size / sliderProgress.clientWidth) * 100) / 100;
|
||||
var actualValue = slider.min + percentage * (slider.max - slider.min);
|
||||
if (actualValue === lastValue)
|
||||
return;
|
||||
lastValue = actualValue;
|
||||
_this._Main.socket.emit('unityWebSocket', 'advancedParameterValue', slider.sliderIndex, actualValue);
|
||||
(0, utils_1.setProgressState)(sliderProgress, Math.round(actualValue *
|
||||
multiplierFactor *
|
||||
decimalPlacesFactor) / decimalPlacesFactor, slider.min * multiplierFactor, slider.max * multiplierFactor, slider.unit);
|
||||
});
|
||||
row.appendChild(sliderCell);
|
||||
_this.advancedParametersTable.appendChild(row);
|
||||
});
|
||||
}
|
||||
else {
|
||||
existingSliders.forEach(function (row, index) {
|
||||
var _a, _b;
|
||||
var slider = sliders[index];
|
||||
var multiplierFactor = (_a = slider.visualMultiplier) !== null && _a !== void 0 ? _a : 1;
|
||||
var decimalPlacesFactor = Math.pow(10, ((_b = slider.decimalPlaces) !== null && _b !== void 0 ? _b : 0));
|
||||
var value = Math.round(slider.outputValue *
|
||||
multiplierFactor *
|
||||
decimalPlacesFactor) / decimalPlacesFactor;
|
||||
var progressElement = row.querySelector('.no-service .ntsh_progress');
|
||||
(0, utils_1.setProgressState)(progressElement, value, slider.min * multiplierFactor, slider.max * multiplierFactor, slider.unit);
|
||||
var sliderElement = row.querySelector('.only-service .ntsh_progress');
|
||||
if (sliderElement.querySelector('.mux_resizer-moving') == null)
|
||||
(0, utils_1.setProgressState)(sliderElement, value, slider.min * multiplierFactor, slider.max * multiplierFactor, slider.unit);
|
||||
});
|
||||
}
|
||||
};
|
||||
DashboardUnity.prototype.renderParameterSensors = function (sensors) {
|
||||
var _this = this;
|
||||
var existingSensors = this.sensorsTable.querySelectorAll('.ntsh_dashboard-unity-sensor-row');
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -241,7 +241,7 @@
|
||||
|
||||
|
||||
<div class="ntsh_dashboard-box ntsh_dashboard-unityparameters">
|
||||
<div class="ntsh_dashboard-box-header mux_header">Parameters</div>
|
||||
<div class="ntsh_dashboard-box-header mux_header">Audio</div>
|
||||
|
||||
<table class="ntsh_vertical ntsh_dashboard-unity-parameters">
|
||||
<tr>
|
||||
@@ -252,6 +252,19 @@
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="ntsh_dashboard-box ntsh_dashboard-unityadvancedparameters">
|
||||
<div class="ntsh_dashboard-box-header mux_header">Parameters</div>
|
||||
|
||||
<table class="ntsh_vertical ntsh_dashboard-unity-advancedparameters">
|
||||
<tr>
|
||||
<td>
|
||||
<div class="mux_text ntsh_dashboard-unity-advancedparameters-loading">Waiting for
|
||||
Unity...
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="ntsh_dashboard-box ntsh_dashboard-unitysensors">
|
||||
<div class="ntsh_dashboard-box-header mux_header">Sensors</div>
|
||||
|
||||
|
||||
@@ -15656,6 +15656,7 @@
|
||||
this.timelineStanding = document.querySelector('.ntsh_dashboard-unity-timeline-standing');
|
||||
this.timelineProgress = document.querySelector('.ntsh_dashboard-unity-timeline-progress');
|
||||
this.parametersTable = document.querySelector('.ntsh_dashboard-unity-parameters');
|
||||
this.advancedParametersTable = document.querySelector('.ntsh_dashboard-unity-advancedparameters');
|
||||
this.sensorsTable = document.querySelector('.ntsh_dashboard-unity-sensors');
|
||||
this.errorContainer = document.querySelector('.ntsh_dashboard-unity-error');
|
||||
this.errorText = document.querySelector('.ntsh_dashboard-unity-errortext');
|
||||
@@ -15739,6 +15740,7 @@
|
||||
(0, utils_1.setProgressState)(this.timelineProgress, Math.round(state.parameters.timelineProgress * 100), 0, 100, '%');
|
||||
// ----------- Parameters -----------
|
||||
this.renderParameterSliders(state.state == 'CONNECTED' ? state.parameters.sliders : []);
|
||||
this.renderAdvancedParameterSliders(state.state == 'CONNECTED' ? state.parameters.advancedSliders : []);
|
||||
this.renderParameterSensors(state.state == 'CONNECTED' ? state.parameters.sensors : []);
|
||||
// ----------- Error -----------
|
||||
if (((_b = state === null || state === void 0 ? void 0 : state.error) !== null && _b !== void 0 ? _b : '').trim().length > 0)
|
||||
@@ -15819,6 +15821,78 @@
|
||||
});
|
||||
}
|
||||
};
|
||||
DashboardUnity.prototype.renderAdvancedParameterSliders = function (sliders) {
|
||||
var _this = this;
|
||||
var existingSliders = this.advancedParametersTable.querySelectorAll('.ntsh_dashboard-unity-parameter-row');
|
||||
if (existingSliders.length !== sliders.length) {
|
||||
this.advancedParametersTable.innerHTML = '';
|
||||
if (sliders.length === 0) {
|
||||
var row = (0, morphux_1$1.ce)('tr');
|
||||
var cell = (0, morphux_1$1.ce)('td');
|
||||
cell.appendChild((0, morphux_1$1.ce)('div', ['mux_text', 'ntsh_dashboard-unity-parameters-loading'], null, 'Waiting for Unity...'));
|
||||
row.appendChild(cell);
|
||||
this.advancedParametersTable.appendChild(row);
|
||||
}
|
||||
else
|
||||
sliders.forEach(function (slider) {
|
||||
var _a, _b;
|
||||
var multiplierFactor = (_a = slider.visualMultiplier) !== null && _a !== void 0 ? _a : 1;
|
||||
var decimalPlacesFactor = Math.pow(10, ((_b = slider.decimalPlaces) !== null && _b !== void 0 ? _b : 0));
|
||||
var value = Math.round(slider.outputValue *
|
||||
multiplierFactor *
|
||||
decimalPlacesFactor) / decimalPlacesFactor;
|
||||
var row = (0, morphux_1$1.ce)('tr', 'ntsh_dashboard-unity-parameter-row');
|
||||
var nameCell = (0, morphux_1$1.ce)('td');
|
||||
nameCell.appendChild((0, morphux_1$1.ce)('div', 'mux_text', null, slider.sliderName));
|
||||
row.appendChild(nameCell);
|
||||
var progressCell = (0, morphux_1$1.ce)('td', 'no-service');
|
||||
progressCell.appendChild((0, utils_1.createProgress)(value, slider.min * multiplierFactor, slider.max * multiplierFactor, slider.unit));
|
||||
row.appendChild(progressCell);
|
||||
var sliderCell = (0, morphux_1$1.ce)('td', 'only-service');
|
||||
var sliderProgress = (0, utils_1.createProgress)(value, slider.min * multiplierFactor, slider.max * multiplierFactor, slider.unit);
|
||||
var sliderValue = sliderProgress.querySelector('.ntsh_progress-value');
|
||||
sliderValue.classList.add('mux_resizer');
|
||||
sliderCell.appendChild(sliderProgress);
|
||||
var resizer = new morphux_1$1.MorphComponent.Resizer({
|
||||
existingContainer: sliderValue,
|
||||
direction: 'right',
|
||||
relative: true,
|
||||
min: 0,
|
||||
max: function () { return sliderProgress.clientWidth; },
|
||||
});
|
||||
var lastValue = -1;
|
||||
resizer.on('resized', function (size) {
|
||||
var percentage = Math.round((size / sliderProgress.clientWidth) * 100) / 100;
|
||||
var actualValue = slider.min + percentage * (slider.max - slider.min);
|
||||
if (actualValue === lastValue)
|
||||
return;
|
||||
lastValue = actualValue;
|
||||
_this._Main.socket.emit('unityWebSocket', 'advancedParameterValue', slider.sliderIndex, actualValue);
|
||||
(0, utils_1.setProgressState)(sliderProgress, Math.round(actualValue *
|
||||
multiplierFactor *
|
||||
decimalPlacesFactor) / decimalPlacesFactor, slider.min * multiplierFactor, slider.max * multiplierFactor, slider.unit);
|
||||
});
|
||||
row.appendChild(sliderCell);
|
||||
_this.advancedParametersTable.appendChild(row);
|
||||
});
|
||||
}
|
||||
else {
|
||||
existingSliders.forEach(function (row, index) {
|
||||
var _a, _b;
|
||||
var slider = sliders[index];
|
||||
var multiplierFactor = (_a = slider.visualMultiplier) !== null && _a !== void 0 ? _a : 1;
|
||||
var decimalPlacesFactor = Math.pow(10, ((_b = slider.decimalPlaces) !== null && _b !== void 0 ? _b : 0));
|
||||
var value = Math.round(slider.outputValue *
|
||||
multiplierFactor *
|
||||
decimalPlacesFactor) / decimalPlacesFactor;
|
||||
var progressElement = row.querySelector('.no-service .ntsh_progress');
|
||||
(0, utils_1.setProgressState)(progressElement, value, slider.min * multiplierFactor, slider.max * multiplierFactor, slider.unit);
|
||||
var sliderElement = row.querySelector('.only-service .ntsh_progress');
|
||||
if (sliderElement.querySelector('.mux_resizer-moving') == null)
|
||||
(0, utils_1.setProgressState)(sliderElement, value, slider.min * multiplierFactor, slider.max * multiplierFactor, slider.unit);
|
||||
});
|
||||
}
|
||||
};
|
||||
DashboardUnity.prototype.renderParameterSensors = function (sensors) {
|
||||
var _this = this;
|
||||
var existingSensors = this.sensorsTable.querySelectorAll('.ntsh_dashboard-unity-sensor-row');
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -38,6 +38,13 @@
|
||||
}
|
||||
}
|
||||
|
||||
.ntsh_dashboard-unity-advancedparameters {
|
||||
.ntsh_dashboard-unity-advancedparameters-loading {
|
||||
text-align: center;
|
||||
color: #9d9d9d;
|
||||
}
|
||||
}
|
||||
|
||||
.ntsh_dashboard-unity-sensors {
|
||||
.ntsh_dashboard-unity-sensors-loading {
|
||||
text-align: center;
|
||||
|
||||
@@ -2400,6 +2400,10 @@ body {
|
||||
text-align: center;
|
||||
color: #9d9d9d;
|
||||
}
|
||||
.ntsh_dashboard .ntsh_dashboard-unity-advancedparameters .ntsh_dashboard-unity-advancedparameters-loading {
|
||||
text-align: center;
|
||||
color: #9d9d9d;
|
||||
}
|
||||
.ntsh_dashboard .ntsh_dashboard-unity-sensors .ntsh_dashboard-unity-sensors-loading {
|
||||
text-align: center;
|
||||
color: #9d9d9d;
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -75,6 +75,9 @@ export class DashboardUnity {
|
||||
parametersTable: HTMLTableElement = document.querySelector(
|
||||
'.ntsh_dashboard-unity-parameters'
|
||||
);
|
||||
advancedParametersTable: HTMLTableElement = document.querySelector(
|
||||
'.ntsh_dashboard-unity-advancedparameters'
|
||||
);
|
||||
|
||||
sensorsTable: HTMLTableElement = document.querySelector(
|
||||
'.ntsh_dashboard-unity-sensors'
|
||||
@@ -200,6 +203,9 @@ export class DashboardUnity {
|
||||
this.renderParameterSliders(
|
||||
state.state == 'CONNECTED' ? state.parameters.sliders : []
|
||||
);
|
||||
this.renderAdvancedParameterSliders(
|
||||
state.state == 'CONNECTED' ? state.parameters.advancedSliders : []
|
||||
);
|
||||
this.renderParameterSensors(
|
||||
state.state == 'CONNECTED' ? state.parameters.sensors : []
|
||||
);
|
||||
@@ -358,6 +364,155 @@ export class DashboardUnity {
|
||||
}
|
||||
}
|
||||
|
||||
private renderAdvancedParameterSliders(
|
||||
sliders: UnityParameters['sliders']
|
||||
) {
|
||||
const existingSliders = this.advancedParametersTable.querySelectorAll(
|
||||
'.ntsh_dashboard-unity-parameter-row'
|
||||
);
|
||||
|
||||
if (existingSliders.length !== sliders.length) {
|
||||
this.advancedParametersTable.innerHTML = '';
|
||||
|
||||
if (sliders.length === 0) {
|
||||
const row = ce('tr');
|
||||
const cell = ce('td');
|
||||
cell.appendChild(
|
||||
ce(
|
||||
'div',
|
||||
['mux_text', 'ntsh_dashboard-unity-parameters-loading'],
|
||||
null,
|
||||
'Waiting for Unity...'
|
||||
)
|
||||
);
|
||||
row.appendChild(cell);
|
||||
this.advancedParametersTable.appendChild(row);
|
||||
} else
|
||||
sliders.forEach((slider) => {
|
||||
const multiplierFactor = slider.visualMultiplier ?? 1;
|
||||
const decimalPlacesFactor =
|
||||
10 ** (slider.decimalPlaces ?? 0);
|
||||
|
||||
const value =
|
||||
Math.round(
|
||||
slider.outputValue *
|
||||
multiplierFactor *
|
||||
decimalPlacesFactor
|
||||
) / decimalPlacesFactor;
|
||||
|
||||
const row = ce('tr', 'ntsh_dashboard-unity-parameter-row');
|
||||
|
||||
const nameCell = ce('td');
|
||||
nameCell.appendChild(
|
||||
ce('div', 'mux_text', null, slider.sliderName)
|
||||
);
|
||||
row.appendChild(nameCell);
|
||||
|
||||
const progressCell = ce('td', 'no-service');
|
||||
progressCell.appendChild(
|
||||
createProgress(
|
||||
value,
|
||||
slider.min * multiplierFactor,
|
||||
slider.max * multiplierFactor,
|
||||
slider.unit
|
||||
)
|
||||
);
|
||||
row.appendChild(progressCell);
|
||||
|
||||
const sliderCell = ce('td', 'only-service');
|
||||
const sliderProgress = createProgress(
|
||||
value,
|
||||
slider.min * multiplierFactor,
|
||||
slider.max * multiplierFactor,
|
||||
slider.unit
|
||||
);
|
||||
const sliderValue: HTMLDivElement =
|
||||
sliderProgress.querySelector('.ntsh_progress-value');
|
||||
sliderValue.classList.add('mux_resizer');
|
||||
sliderCell.appendChild(sliderProgress);
|
||||
|
||||
const resizer = new MorphComponent.Resizer({
|
||||
existingContainer: sliderValue,
|
||||
direction: 'right',
|
||||
relative: true,
|
||||
min: 0,
|
||||
max: () => sliderProgress.clientWidth,
|
||||
});
|
||||
let lastValue: number = -1;
|
||||
resizer.on('resized', (size) => {
|
||||
const percentage =
|
||||
Math.round(
|
||||
(size / sliderProgress.clientWidth) * 100
|
||||
) / 100;
|
||||
|
||||
var actualValue =
|
||||
slider.min + percentage * (slider.max - slider.min);
|
||||
|
||||
if (actualValue === lastValue) return;
|
||||
lastValue = actualValue;
|
||||
|
||||
this._Main.socket.emit(
|
||||
'unityWebSocket',
|
||||
'advancedParameterValue',
|
||||
slider.sliderIndex,
|
||||
actualValue
|
||||
);
|
||||
setProgressState(
|
||||
sliderProgress,
|
||||
Math.round(
|
||||
actualValue *
|
||||
multiplierFactor *
|
||||
decimalPlacesFactor
|
||||
) / decimalPlacesFactor,
|
||||
slider.min * multiplierFactor,
|
||||
slider.max * multiplierFactor,
|
||||
slider.unit
|
||||
);
|
||||
});
|
||||
|
||||
row.appendChild(sliderCell);
|
||||
|
||||
this.advancedParametersTable.appendChild(row);
|
||||
});
|
||||
} else {
|
||||
existingSliders.forEach((row, index) => {
|
||||
const slider = sliders[index];
|
||||
const multiplierFactor = slider.visualMultiplier ?? 1;
|
||||
const decimalPlacesFactor = 10 ** (slider.decimalPlaces ?? 0);
|
||||
|
||||
const value =
|
||||
Math.round(
|
||||
slider.outputValue *
|
||||
multiplierFactor *
|
||||
decimalPlacesFactor
|
||||
) / decimalPlacesFactor;
|
||||
|
||||
const progressElement: HTMLDivElement = row.querySelector(
|
||||
'.no-service .ntsh_progress'
|
||||
);
|
||||
setProgressState(
|
||||
progressElement,
|
||||
value,
|
||||
slider.min * multiplierFactor,
|
||||
slider.max * multiplierFactor,
|
||||
slider.unit
|
||||
);
|
||||
|
||||
const sliderElement: HTMLDivElement = row.querySelector(
|
||||
'.only-service .ntsh_progress'
|
||||
);
|
||||
if (sliderElement.querySelector('.mux_resizer-moving') == null)
|
||||
setProgressState(
|
||||
sliderElement,
|
||||
value,
|
||||
slider.min * multiplierFactor,
|
||||
slider.max * multiplierFactor,
|
||||
slider.unit
|
||||
);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
private renderParameterSensors(sensors: UnityParameters['sensors']) {
|
||||
const existingSensors = this.sensorsTable.querySelectorAll(
|
||||
'.ntsh_dashboard-unity-sensor-row'
|
||||
@@ -528,6 +683,7 @@ interface UnityParameters {
|
||||
zedFPS: string;
|
||||
outOfService: boolean;
|
||||
sliders: UnityParameterSlider[];
|
||||
advancedSliders: UnityParameterSlider[];
|
||||
sensors: UnitySocketMessageHeartbeat['heartbeat']['dataSensors'];
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user