mirror of
https://github.com/aliasvault/aliasvault.git
synced 2025-12-31 01:58:36 -05:00
Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5baede08a7 | ||
|
|
34995fe801 | ||
|
|
92a2511d9d | ||
|
|
41486c940c | ||
|
|
47c77ade02 | ||
|
|
a51621970d |
@@ -67,5 +67,4 @@ jobs:
|
||||
uses: softprops/action-gh-release@v2
|
||||
with:
|
||||
files: aliasvault-chrome-extension.zip
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
@@ -58,7 +58,7 @@ This method uses pre-built Docker images and works on minimal hardware specifica
|
||||
|
||||
```bash
|
||||
# Download install script from latest stable release
|
||||
curl -o install.sh https://raw.githubusercontent.com/lanedirt/AliasVault/0.12.1/install.sh
|
||||
curl -o install.sh https://raw.githubusercontent.com/lanedirt/AliasVault/0.12.2/install.sh
|
||||
|
||||
# Make install script executable and run it. This will create the .env file, pull the Docker images, and start the AliasVault containers.
|
||||
chmod +x install.sh
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "AliasVault",
|
||||
"description": "AliasVault Browser AutoFill Extension. Keeping your personal information private.",
|
||||
"version": "0.12.1",
|
||||
"version": "0.12.2",
|
||||
"manifest_version": 3,
|
||||
"content_security_policy": {
|
||||
"extension_pages": "script-src 'self' 'wasm-unsafe-eval'; object-src 'self';"
|
||||
|
||||
@@ -30,7 +30,7 @@ const Header: React.FC<HeaderProps> = ({
|
||||
const openClientTab = async () : Promise<void> => {
|
||||
const setting = await chrome.storage.local.get(['clientUrl']);
|
||||
let clientUrl = AppInfo.DEFAULT_CLIENT_URL;
|
||||
if (setting.clientUrl.length > 0) {
|
||||
if (setting.clientUrl && setting.clientUrl.length > 0) {
|
||||
clientUrl = setting.clientUrl;
|
||||
}
|
||||
|
||||
|
||||
@@ -34,13 +34,8 @@ const EmailsList: React.FC = () => {
|
||||
return;
|
||||
}
|
||||
|
||||
// TODO: create separate query to only get email addresses to avoid loading all credentials.
|
||||
const credentials = dbContext.sqliteClient.getAllCredentials();
|
||||
|
||||
// Get unique email addresses from all credentials.
|
||||
const emailAddresses = credentials
|
||||
.map(cred => cred.Email.trim()) // Trim whitespace
|
||||
.filter((email, index, self) => self.indexOf(email) === index);
|
||||
const emailAddresses = dbContext.sqliteClient.getAllEmailAddresses();
|
||||
|
||||
try {
|
||||
// For now we only show the latest 50 emails. No pagination.
|
||||
|
||||
@@ -41,7 +41,7 @@ const Login: React.FC = () => {
|
||||
const loadClientUrl = async () : Promise<void> => {
|
||||
const setting = await chrome.storage.local.get(['clientUrl']);
|
||||
let clientUrl = AppInfo.DEFAULT_CLIENT_URL;
|
||||
if (setting.clientUrl.length > 0) {
|
||||
if (setting.clientUrl && setting.clientUrl.length > 0) {
|
||||
clientUrl = setting.clientUrl;
|
||||
}
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ export class AppInfo {
|
||||
/**
|
||||
* The current extension version. This should be updated with each release of the extension.
|
||||
*/
|
||||
public static readonly VERSION = '0.12.1';
|
||||
public static readonly VERSION = '0.12.2';
|
||||
|
||||
/**
|
||||
* The minimum supported AliasVault server (API) version. If the server version is below this, the
|
||||
|
||||
@@ -229,6 +229,25 @@ class SqliteClient {
|
||||
}));
|
||||
}
|
||||
|
||||
/**
|
||||
* Fetch all unique email addresses from all credentials.
|
||||
* @returns Array of email addresses.
|
||||
*/
|
||||
public getAllEmailAddresses(): string[] {
|
||||
const query = `
|
||||
SELECT DISTINCT
|
||||
a.Email
|
||||
FROM Credentials c
|
||||
LEFT JOIN Aliases a ON c.AliasId = a.Id
|
||||
WHERE a.Email IS NOT NULL AND a.Email != '' AND c.IsDeleted = 0
|
||||
`;
|
||||
|
||||
const results = this.executeQuery(query);
|
||||
|
||||
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||
return results.map((row: any) => row.Email);
|
||||
}
|
||||
|
||||
/**
|
||||
* Fetch all encryption keys.
|
||||
*/
|
||||
|
||||
@@ -21,11 +21,7 @@ export class WebApiService {
|
||||
*
|
||||
* @param {Function} handleLogout - Function to handle logout.
|
||||
*/
|
||||
public constructor(
|
||||
private readonly handleLogout: () => void
|
||||
) {
|
||||
// Remove initialization of baseUrl
|
||||
}
|
||||
public constructor(private readonly handleLogout: () => void) { }
|
||||
|
||||
/**
|
||||
* Get the base URL for the API from settings.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#!/bin/bash
|
||||
# @version 0.12.0
|
||||
# @version 0.12.2
|
||||
|
||||
# Repository information used for downloading files and images from GitHub
|
||||
REPO_OWNER="lanedirt"
|
||||
@@ -1566,6 +1566,7 @@ handle_install_version() {
|
||||
set_smtp_tls_enabled || { printf "${RED}> Failed to set SMTP TLS${NC}\n"; exit 1; }
|
||||
set_default_ports || { printf "${RED}> Failed to set default ports${NC}\n"; exit 1; }
|
||||
set_public_registration || { printf "${RED}> Failed to set public registration${NC}\n"; exit 1; }
|
||||
set_ip_logging || { printf "${RED}> Failed to set IP logging${NC}\n"; exit 1; }
|
||||
|
||||
# Only generate admin password if not already set
|
||||
if ! grep -q "^ADMIN_PASSWORD_HASH=" "$ENV_FILE" || [ -z "$(grep "^ADMIN_PASSWORD_HASH=" "$ENV_FILE" | cut -d '=' -f2)" ]; then
|
||||
|
||||
@@ -3,6 +3,8 @@ events {
|
||||
}
|
||||
|
||||
http {
|
||||
client_max_body_size 25M;
|
||||
|
||||
upstream client {
|
||||
server client:3000;
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ public static class AppInfo
|
||||
/// <summary>
|
||||
/// Gets the patch version number.
|
||||
/// </summary>
|
||||
public const int VersionPatch = 1;
|
||||
public const int VersionPatch = 2;
|
||||
|
||||
/// <summary>
|
||||
/// Gets a dictionary of minimum supported client versions that the WebApi supports.
|
||||
|
||||
Reference in New Issue
Block a user