Merge pull request #1538 from GNS3/release/v2.2.53
Some checks failed
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Build / build (push) Has been cancelled

Release v2.2.53
This commit is contained in:
Jeremy Grossmann 2025-01-21 12:31:35 +07:00 committed by GitHub
commit fecebdd0a7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 35 additions and 11 deletions

View File

@ -1,6 +1,6 @@
{
"name": "gns3-web-ui",
"version": "2.2.52",
"version": "2.2.53",
"author": {
"name": "GNS3 Technology Inc.",
"email": "developers@gns3.com"

View File

@ -30,6 +30,7 @@ export class PortsComponent implements OnInit {
}
onAdd() {
this.newPort.name = "Ethernet" + this.newPort.port_number;
this.ethernetPorts.push(this.newPort);
this.newPort = {

View File

@ -170,7 +170,7 @@
</mat-select>
</div>
<div>
Install required files
Install the required files
<button
mat-icon-button
matTooltip="Refresh list of images"
@ -441,7 +441,7 @@
</mat-radio-group>
</div>
<div>
Install required files
Install the required images
<button
mat-icon-button
matTooltip="Refresh list of images"
@ -453,10 +453,16 @@
<mat-list>
<mat-list-item *ngFor="let image of applianceToInstall.images">
<div class="list-item">
<div>
<span>
{{ image.filename }}
</div>
</span>
<div>
<span *ngIf="checkImageFromVersion(image.filename)">
<mat-icon matTooltip="Ready to install" matTooltipClass="custom-tooltip">check</mat-icon>
</span>
<span *ngIf="!checkImageFromVersion(image.filename)">
<mat-icon matTooltip="Missing" matTooltipClass="custom-tooltip">close</mat-icon>
</span>
<input
type="file"
class="non-visible"
@ -499,7 +505,7 @@
</mat-radio-group>
</div>
<div>
Install required files
Install the required images
<button
mat-icon-button
matTooltip="Refresh list of images"
@ -511,9 +517,15 @@
<mat-list>
<mat-list-item *ngFor="let image of applianceToInstall.images">
<div class="list-item">
<div>
<span>
{{ image.filename }}
</div>
</span>
<span *ngIf="checkImageFromVersion(image.filename)">
<mat-icon matTooltip="Ready to install" matTooltipClass="custom-tooltip">check</mat-icon>
</span>
<span *ngIf="!checkImageFromVersion(image.filename)">
<mat-icon matTooltip="Missing" matTooltipClass="custom-tooltip">close</mat-icon>
</span>
<div>
<input
type="file"

View File

@ -143,7 +143,7 @@ export class NewTemplateDialogComponent implements OnInit {
this.qemuBinaries = binaries;
});
this.uploader = new FileUploader({});
this.uploader = new FileUploader({url: ''});
this.uploader.onAfterAddingFile = (file) => {
file.withCredentials = false;
};
@ -162,7 +162,7 @@ export class NewTemplateDialogComponent implements OnInit {
this.getAppliance(item.url);
};
this.uploaderImage = new FileUploader({});
this.uploaderImage = new FileUploader({url: ''});
this.uploaderImage.onAfterAddingFile = (file) => {
file.withCredentials = false;
};

View File

@ -3,7 +3,7 @@ import { Injectable } from '@angular/core';
@Injectable()
export class ProjectNameValidator {
get(projectName) {
var pattern = new RegExp(/[~`!#$%\^&*+=\[\]\\';,/{}|\\":<>\?]/);
var pattern = new RegExp(/[~`!#$%\^&*+=\[\]\\';,/{}|\\"<>\?]/);
if (!pattern.test(projectName.value)) {
return null;

View File

@ -31,6 +31,11 @@ export class MapSettingsService {
} else {
localStorage.setItem('symbolScaling', 'true');
}
if (localStorage.getItem('showInterfaceLabels')) {
this.showInterfaceLabels = localStorage.getItem('showInterfaceLabels') === 'true' ? true : false;
} else {
localStorage.setItem('showInterfaceLabels', 'true');
}
}
public getSymbolScaling(): boolean {
@ -72,6 +77,12 @@ export class MapSettingsService {
toggleShowInterfaceLabels(value: boolean) {
this.showInterfaceLabels = value;
localStorage.removeItem('showInterfaceLabels');
if (value) {
localStorage.setItem('showInterfaceLabels', 'true');
} else {
localStorage.setItem('showInterfaceLabels', 'false');
}
}
toggleIntegrateInterfaceLabels(value: boolean) {