1
0
mirror of https://github.com/XFox111/PasswordGeneratorExtension.git synced 2026-04-22 08:08:01 +03:00

Minor 1.2 (#5)

- Added option "Do not repeat characters"
- Updated GitHub release template
- Updated CI config
This commit is contained in:
Michael Gordeev
2021-03-03 16:44:06 +03:00
committed by GitHub
parent 5c3a3ca756
commit f142d8c3a6
8 changed files with 67 additions and 16 deletions
+9 -4
View File
@@ -10,6 +10,7 @@ chrome.storage.sync.get(
includeUppercase: true,
excludeSimilar: true,
excludeSpecial: true,
dontRepeatChars: false,
// Extension settings
showButton: true,
@@ -32,6 +33,7 @@ chrome.storage.sync.get(
"includeUppercase",
"excludeSimilar",
"excludeSpecial",
"dontRepeatChars",
"showButton",
"showContext",
@@ -47,8 +49,11 @@ chrome.storage.sync.get(
function SetupEventHandlers()
{
document.querySelectorAll("input").forEach(i =>
i.addEventListener("input",
() => chrome.storage.sync.set(JSON.parse("{ \"" + i.id + "\": " + (i.type == "checkbox" ? i.checked : i.value) + " }"))));
i.addEventListener(
"input",
() => chrome.storage.sync.set(JSON.parse("{ \"" + i.id + "\": " + (i.type == "checkbox" ? i.checked : i.value) + " }"))
)
);
document.querySelector("#generate").addEventListener("click", () => GeneratePassword(null, true));
document.querySelector("#more").addEventListener("click", (s) =>
@@ -57,12 +62,12 @@ function SetupEventHandlers()
if (group.hasAttribute("hidden"))
{
group.removeAttribute("hidden");
s.currentTarget.querySelector("i").textContent = "";
s.currentTarget.querySelector("i").textContent = "\uE010";
}
else
{
group.setAttribute("hidden", "");
s.currentTarget.querySelector("i").textContent = "";
s.currentTarget.querySelector("i").textContent = "\uE011";
}
});
}
+9 -2
View File
@@ -49,7 +49,8 @@ function GeneratePassword(e, useDefaultLength = false)
excludeSimilar: true,
excludeSpecial: true,
hideAlert: false,
promptForLength: false
promptForLength: false,
dontRepeatChars: false,
},
(settings) =>
{
@@ -82,7 +83,7 @@ function GeneratePassword(e, useDefaultLength = false)
if (response === null) // If user clicked 'Cancel'
return;
if (parseInt(response))
if (parseInt(response) && response > 1)
{
pwdLength = response;
break;
@@ -91,6 +92,12 @@ function GeneratePassword(e, useDefaultLength = false)
break;
}
if (settings.dontRepeatChars && availableCharacters.length < pwdLength)
{
alert(chrome.i18n.getMessage("notEnoughChars").replace("%MIN_CHARS%", availableCharacters.length));
return;
}
for (k = 0; k < pwdLength; k++)
password += availableCharacters[GetRandomInt(0, availableCharacters.length)]; // Picking random characters