Merge branch 'dev' into alerting-rules

This commit is contained in:
Owen
2026-04-15 14:41:29 -07:00
175 changed files with 264 additions and 238 deletions

View File

@@ -6,7 +6,7 @@ import sys
HEADER_TEXT = """/* HEADER_TEXT = """/*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.
@@ -17,87 +17,109 @@ HEADER_TEXT = """/*
*/ */
""" """
HEADER_NORMALIZED = HEADER_TEXT.strip()
def extract_leading_block_comment(content):
"""
If the file content begins with a /* ... */ block comment, return the
full text of that comment (including the delimiters) and the index at
which the rest of the file starts (after any trailing newlines).
Returns (None, 0) when no such comment is found.
"""
stripped = content.lstrip()
if not stripped.startswith('/*'):
return None, 0
# Account for any leading whitespace before the comment
comment_start = content.index('/*')
end_marker = content.find('*/', comment_start + 2)
if end_marker == -1:
return None, 0
comment_end = end_marker + 2 # position just after '*/'
comment_text = content[comment_start:comment_end].strip()
# Advance past any whitespace / newlines that follow the closing */
rest_start = comment_end
while rest_start < len(content) and content[rest_start] in '\n\r':
rest_start += 1
return comment_text, rest_start
def should_add_header(file_path): def should_add_header(file_path):
""" """
Checks if a file should receive the commercial license header. Checks if a file should receive the commercial license header.
Returns True if 'private' is in the path or file content. Returns True if 'server/private' is in the path.
""" """
# Check if 'private' is in the file path (case-insensitive)
if 'server/private' in file_path.lower(): if 'server/private' in file_path.lower():
return True return True
# Check if 'private' is in the file content (case-insensitive)
# try:
# with open(file_path, 'r', encoding='utf-8', errors='ignore') as f:
# content = f.read()
# if 'private' in content.lower():
# return True
# except Exception as e:
# print(f"Could not read file {file_path}: {e}")
return False return False
def process_directory(root_dir): def process_directory(root_dir):
""" """
Recursively scans a directory and adds headers to qualifying .ts or .tsx files, Recursively scans a directory and adds/replaces/removes headers in
skipping any 'node_modules' directories. qualifying .ts or .tsx files, skipping any 'node_modules' directories.
""" """
print(f"Scanning directory: {root_dir}") print(f"Scanning directory: {root_dir}")
files_processed = 0 files_processed = 0
headers_added = 0 files_modified = 0
for root, dirs, files in os.walk(root_dir): for root, dirs, files in os.walk(root_dir):
# --- MODIFICATION --- # Exclude 'node_modules' directories from the scan.
# Exclude 'node_modules' directories from the scan to improve performance.
if 'node_modules' in dirs: if 'node_modules' in dirs:
dirs.remove('node_modules') dirs.remove('node_modules')
for file in files: for file in files:
if file.endswith('.ts') or file.endswith('.tsx'): if not (file.endswith('.ts') or file.endswith('.tsx')):
file_path = os.path.join(root, file) continue
files_processed += 1
try: file_path = os.path.join(root, file)
with open(file_path, 'r+', encoding='utf-8') as f: files_processed += 1
original_content = f.read()
has_header = original_content.startswith(HEADER_TEXT.strip())
if should_add_header(file_path): try:
# Add header only if it's not already there with open(file_path, 'r', encoding='utf-8') as f:
if not has_header: original_content = f.read()
f.seek(0, 0) # Go to the beginning of the file
f.write(HEADER_TEXT.strip() + '\n\n' + original_content)
print(f"Added header to: {file_path}")
headers_added += 1
else:
print(f"Header already exists in: {file_path}")
else:
# Remove header if it exists but shouldn't be there
if has_header:
# Find the end of the header and remove it (including following newlines)
header_with_newlines = HEADER_TEXT.strip() + '\n\n'
if original_content.startswith(header_with_newlines):
content_without_header = original_content[len(header_with_newlines):]
else:
# Handle case where there might be different newline patterns
header_end = len(HEADER_TEXT.strip())
# Skip any newlines after the header
while header_end < len(original_content) and original_content[header_end] in '\n\r':
header_end += 1
content_without_header = original_content[header_end:]
f.seek(0) existing_comment, body_start = extract_leading_block_comment(
f.write(content_without_header) original_content
f.truncate() )
print(f"Removed header from: {file_path}") has_any_header = existing_comment is not None
headers_added += 1 # Reusing counter for modifications has_correct_header = existing_comment == HEADER_NORMALIZED
except Exception as e: body = original_content[body_start:] if has_any_header else original_content
print(f"Error processing file {file_path}: {e}")
if should_add_header(file_path):
if has_correct_header:
print(f"Header up-to-date: {file_path}")
else:
# Either no header exists or the header is outdated — write
# the correct one.
action = "Replaced header in" if has_any_header else "Added header to"
new_content = HEADER_NORMALIZED + '\n\n' + body
with open(file_path, 'w', encoding='utf-8') as f:
f.write(new_content)
print(f"{action}: {file_path}")
files_modified += 1
else:
if has_any_header:
# Remove the header — it shouldn't be here.
with open(file_path, 'w', encoding='utf-8') as f:
f.write(body)
print(f"Removed header from: {file_path}")
files_modified += 1
else:
print(f"No header needed: {file_path}")
except Exception as e:
print(f"Error processing file {file_path}: {e}")
print("\n--- Scan Complete ---") print("\n--- Scan Complete ---")
print(f"Total .ts or .tsx files found: {files_processed}") print(f"Total .ts or .tsx files found: {files_processed}")
print(f"Files modified (headers added/removed): {headers_added}") print(f"Files modified (added/replaced/removed): {files_modified}")
if __name__ == "__main__": if __name__ == "__main__":
@@ -106,7 +128,7 @@ if __name__ == "__main__":
if len(sys.argv) > 1: if len(sys.argv) > 1:
target_directory = sys.argv[1] target_directory = sys.argv[1]
else: else:
target_directory = '.' # Default to current directory target_directory = '.' # Default to current directory
if not os.path.isdir(target_directory): if not os.path.isdir(target_directory):
print(f"Error: Directory '{target_directory}' not found.") print(f"Error: Directory '{target_directory}' not found.")

View File

@@ -2351,7 +2351,7 @@
}, },
"scale": { "scale": {
"title": "Скала", "title": "Скала",
"description": "Предприятие, 50 потребители, 50 сайта и приоритетна поддръжка." "description": "Функции за корпоративни клиенти, 50 потребители, 100 сайта и приоритетна поддръжка."
} }
}, },
"personalUseOnly": "Само за лична употреба (безплатен лиценз - без проверка)", "personalUseOnly": "Само за лична употреба (безплатен лиценз - без проверка)",

View File

@@ -2351,7 +2351,7 @@
}, },
"scale": { "scale": {
"title": "Měřítko", "title": "Měřítko",
"description": "Podnikové funkce, 50 uživatelů, 50 míst a prioritní podpory." "description": "Podnikové funkce, 50 uživatelů, 100 stránek a prioritní podpora."
} }
}, },
"personalUseOnly": "Pouze pro osobní použití (zdarma licence - bez ověření)", "personalUseOnly": "Pouze pro osobní použití (zdarma licence - bez ověření)",

View File

@@ -2351,7 +2351,7 @@
}, },
"scale": { "scale": {
"title": "Maßstab", "title": "Maßstab",
"description": "Enterprise Features, 50 Benutzer, 50 Sites und Prioritätsunterstützung." "description": "Unternehmensmerkmale, 50 Benutzer, 100 Standorte und prioritärer Support."
} }
}, },
"personalUseOnly": "Nur persönliche Nutzung (kostenlose Lizenz - kein Checkout)", "personalUseOnly": "Nur persönliche Nutzung (kostenlose Lizenz - kein Checkout)",

View File

@@ -2351,7 +2351,7 @@
}, },
"scale": { "scale": {
"title": "Escala", "title": "Escala",
"description": "Características de la empresa, 50 usuarios, 50 sitios y soporte prioritario." "description": "Funcionalidades empresariales, 50 usuarios, 100 sitios y soporte prioritario."
} }
}, },
"personalUseOnly": "Solo uso personal (licencia gratuita - sin salida)", "personalUseOnly": "Solo uso personal (licencia gratuita - sin salida)",

View File

@@ -2351,7 +2351,7 @@
}, },
"scale": { "scale": {
"title": "Échelle", "title": "Échelle",
"description": "Fonctionnalités d'entreprise, 50 utilisateurs, 50 sites et une prise en charge prioritaire." "description": "Fonctionnalités d'entreprise, 50 utilisateurs, 100 sites et support prioritaire."
} }
}, },
"personalUseOnly": "Usage personnel uniquement (licence gratuite - pas de validation)", "personalUseOnly": "Usage personnel uniquement (licence gratuite - pas de validation)",

View File

@@ -2351,7 +2351,7 @@
}, },
"scale": { "scale": {
"title": "Scala", "title": "Scala",
"description": "Funzionalità aziendali, 50 utenti, 50 siti e supporto prioritario." "description": "Funzionalità aziendali, 50 utenti, 100 siti e supporto prioritario."
} }
}, },
"personalUseOnly": "Uso personale esclusivo (licenza gratuita - nessun pagamento)", "personalUseOnly": "Uso personale esclusivo (licenza gratuita - nessun pagamento)",

View File

@@ -2351,7 +2351,7 @@
}, },
"scale": { "scale": {
"title": "스케일", "title": "스케일",
"description": "기업 기능, 50명의 사용자, 50개의 사이트, 우선 지원." "description": "기업 기능, 50명의 사용자, 100개의 사이트, 그리고 우선 지원."
} }
}, },
"personalUseOnly": "개인용으로만 사용 (무료 라이선스 - 결제 없음)", "personalUseOnly": "개인용으로만 사용 (무료 라이선스 - 결제 없음)",

View File

@@ -2351,7 +2351,7 @@
}, },
"scale": { "scale": {
"title": "Skala", "title": "Skala",
"description": "Enterprise features, 50 brukere, 50 nettsteder og prioritetsstøtte." "description": "Funksjoner for bedrifter, 50 brukere, 100 nettsteder og prioritert support."
} }
}, },
"personalUseOnly": "Kun personlig bruk (gratis lisens - ingen kasse)", "personalUseOnly": "Kun personlig bruk (gratis lisens - ingen kasse)",

View File

@@ -2351,7 +2351,7 @@
}, },
"scale": { "scale": {
"title": "Schaal", "title": "Schaal",
"description": "Enterprise functies, 50 gebruikers, 50 sites en prioriteit ondersteuning." "description": "Enterprise-functies, 50 gebruikers, 100 sites en prioritaire ondersteuning."
} }
}, },
"personalUseOnly": "Alleen voor persoonlijk gebruik (gratis licentie - geen afrekening)", "personalUseOnly": "Alleen voor persoonlijk gebruik (gratis licentie - geen afrekening)",

View File

@@ -2351,7 +2351,7 @@
}, },
"scale": { "scale": {
"title": "Skala", "title": "Skala",
"description": "Cechy przedsiębiorstw, 50 użytkowników, 50 obiektów i wsparcie priorytetowe." "description": "Funkcje dla przedsiębiorstw, 50 użytkowników, 100 witryn i priorytetowe wsparcie."
} }
}, },
"personalUseOnly": "Tylko do użytku osobistego (darmowa licencja - bez płatności)", "personalUseOnly": "Tylko do użytku osobistego (darmowa licencja - bez płatności)",

View File

@@ -2351,7 +2351,7 @@
}, },
"scale": { "scale": {
"title": "Escala", "title": "Escala",
"description": "Recursos de empresa, 50 usuários, 50 sites e apoio prioritário." "description": "Recursos empresariais, 50 usuários, 100 sites, e suporte prioritário."
} }
}, },
"personalUseOnly": "Uso pessoal apenas (licença gratuita - sem checkout)", "personalUseOnly": "Uso pessoal apenas (licença gratuita - sem checkout)",

View File

@@ -2351,7 +2351,7 @@
}, },
"scale": { "scale": {
"title": "Масштаб", "title": "Масштаб",
"description": "Функции предприятия, 50 пользователей, 50 сайтов, а также приоритетная поддержка." "description": "Функции корпоративного уровня, 50 пользователей, 100 сайтов и приоритетная поддержка."
} }
}, },
"personalUseOnly": "Только для личного использования (бесплатная лицензия - без оформления на кассе)", "personalUseOnly": "Только для личного использования (бесплатная лицензия - без оформления на кассе)",

View File

@@ -2351,7 +2351,7 @@
}, },
"scale": { "scale": {
"title": "Ölçek", "title": "Ölçek",
"description": "Kurumsal özellikler, 50 kullanıcı, 50 site ve öncelikli destek." "description": "Kurumsal özellikler, 50 kullanıcı, 100 site ve öncelikli destek."
} }
}, },
"personalUseOnly": "Kişisel kullanım için (ücretsiz lisans - ödeme yok)", "personalUseOnly": "Kişisel kullanım için (ücretsiz lisans - ödeme yok)",

View File

@@ -2351,7 +2351,7 @@
}, },
"scale": { "scale": {
"title": "缩放比例", "title": "缩放比例",
"description": "企业特征、50个用户、50个站点优先支持。" "description": "企业功能,50个用户100个站点,以及优先支持。"
} }
}, },
"personalUseOnly": "仅限个人使用(免费许可 - 无需结账)", "personalUseOnly": "仅限个人使用(免费许可 - 无需结账)",

View File

@@ -1,3 +1,5 @@
// Normalizes
/** /**
* Normalizes a post-authentication path for safe use when building redirect URLs. * Normalizes a post-authentication path for safe use when building redirect URLs.
* Returns a path that starts with / and does not allow open redirects (no //, no :). * Returns a path that starts with / and does not allow open redirects (no //, no :).

View File

@@ -1,3 +1,5 @@
// Sanitizes
/** /**
* Sanitize a string field before inserting into a database TEXT column. * Sanitize a string field before inserting into a database TEXT column.
* *

View File

@@ -1,3 +1,5 @@
// tokenCache
/** /**
* Returns a cached plaintext token from Redis if one exists and decrypts * Returns a cached plaintext token from Redis if one exists and decrypts
* cleanly, otherwise calls `createSession` to mint a fresh token, stores the * cleanly, otherwise calls `createSession` to mint a fresh token, stores the

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

View File

@@ -1,7 +1,7 @@
/* /*
* This file is part of a proprietary work. * This file is part of a proprietary work.
* *
* Copyright (c) 2025 Fossorial, Inc. * Copyright (c) 2025-2026 Fossorial, Inc.
* All rights reserved. * All rights reserved.
* *
* This file is licensed under the Fossorial Commercial License. * This file is licensed under the Fossorial Commercial License.

Some files were not shown because too many files have changed in this diff Show More