Skip to content

Commit

Permalink
fixed engine store not being utilized + escape press bug
Browse files Browse the repository at this point in the history
  • Loading branch information
DenFlyvendeGed committed Dec 14, 2023
1 parent 0386eab commit 939fd1f
Show file tree
Hide file tree
Showing 7 changed files with 62 additions and 10 deletions.
3 changes: 2 additions & 1 deletion src/lib/classes/engine/EngineStorage.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ class EngineStorage {
#engineId: number = 0;

get engineId(): number {
return (this.engineId = ++this.#engineId); //auto inc
this.engineId = ++this.#engineId; //auto inc
return this.#engineId;
}
set engineId(id: number) {
if (id >= 0) this.#engineId = id;
Expand Down
10 changes: 5 additions & 5 deletions src/lib/classes/engine/Validation.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,12 @@ export function validateName(name: string | undefined): boolean {
return false;
}

const regexTest: RegExp = new RegExp(
"^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", // Will test for any valid IP address
);
// const regexTest: RegExp = new RegExp(
// "^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", // Will test for any valid IP address
// );

export function validateIP(ipAdress: string): boolean {
return URL.canParse(ipAdress) || regexTest.test(ipAdress);
export function validateIP(ipAddress: string): boolean {
return URL.canParse("https://" + ipAddress) || URL.canParse(ipAddress); //regexTest.test(ipAdress);
}

export function validateStartPort(port: number): boolean {
Expand Down
1 change: 0 additions & 1 deletion src/lib/components/engineUI/EnginePanel.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@
overflow-y: scroll;
display: grid;
row-gap: 1rem;
grid-template-columns: repeat(0, 1fr);
min-width: 16em;
}
Expand Down
4 changes: 4 additions & 0 deletions src/lib/components/engineUI/EngineSeperate.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -263,6 +263,7 @@
padding: 0;
margin: 0;
font-size: small;
align-items: center;
}
.unselectable {
Expand All @@ -278,6 +279,9 @@
display: grid;
grid-template-areas: "name name-input delete" "ip ip-input local" "port port-input .";
grid-template-columns: 1fr 3fr 1fr;
border-bottom: 0.3em solid var(--engine-ui-text-color);
border-top: 0.3em solid var(--engine-ui-text-color);
}
.delete-button {
Expand Down
50 changes: 49 additions & 1 deletion src/lib/components/engineUI/EngineUI.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,13 @@
import { Save, Add, Close, Done } from "svelte-google-materialdesign-icons";
import type IEngineSeperateComponent from "$lib/interfaces/IEngineSeperateComponent";
import SvgButton from "../buttons/SvgButton.svelte";
import { writable, type Writable } from "svelte/store";
import { get, writable, type Writable } from "svelte/store";
import type EngineSeperate from "./EngineSeperate.svelte";
import { showEngineUI } from "./showEngineUI";
import { engineStore } from "$lib/globalState/engines";
import { onDestroy } from "svelte";
let closeListenersController: AbortController | undefined;
let showUnsavedChanges = false;
Expand Down Expand Up @@ -62,6 +65,51 @@
});
}
$: if ($showEngineUI) {
tempEngines.set([]);
//load Engine store
get(engineStore).forEach((engine) => {
let tempEngine: EngineDTO = {
address: engine.address,
name: engine.name,
hasBeenChanged: false,
useBundle: engine.useBundle,
portRangeStart: engine.portRangeStart,
portRangeEnd: engine.portRangeEnd,
id: engine.id,
};
tempEngines.update((items) => [...items, tempEngine]);
});
if (get(tempEngines).length == 0) {
addNewEngine();
$tempEngines[0].hasBeenChanged = false; //dont mark empty engine as change
}
closeListenersController?.abort();
closeListenersController = new AbortController();
window.addEventListener(
"keydown",
(event) => {
if (event.key === "Escape") {
$showEngineUI = false;
}
},
{
passive: true,
signal: closeListenersController.signal,
},
);
// openContextMenu();
} else {
closeListenersController?.abort();
// closeContextMenu();
}
onDestroy(() => {
closeListenersController?.abort();
});
function forceCloseDialogContainer() {
showUnsavedChanges = false;
showIncorrectInformation = false;
Expand Down
2 changes: 1 addition & 1 deletion src/tests/lib/classes/engine/fail.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -250,7 +250,7 @@ const missingName = {

const missingAddress = {
name: "test",
//address: "123.123.123.123",
address: "",
portRangeStart: 5,
portRangeEnd: 5,
id: 1,
Expand Down
2 changes: 1 addition & 1 deletion tests/lib/components/engineUI/engineUI.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ test("Invalid engine name will not save", async ({ page }) => {
test("Invalid engine address will not save", async ({ page }) => {
const inputs = await page.locator("#engine-ui-outer input").all();
await inputs[0].fill("test");
await inputs[1].fill("invalid");
await inputs[1].fill("5.5.5.5.5");
await inputs[2].fill("1");
await inputs[3].fill("2");

Expand Down

0 comments on commit 939fd1f

Please sign in to comment.