Address Greptile company logo feedback

This commit is contained in:
Dotta
2026-03-16 10:05:14 -05:00
parent 2d548a9da0
commit 4dfd862f11
5 changed files with 208 additions and 71 deletions

View File

@@ -11,11 +11,19 @@ export const assetsApi = {
const safeFile = new File([buffer], file.name, { type: file.type });
const form = new FormData();
form.append("file", safeFile);
if (namespace && namespace.trim().length > 0) {
form.append("namespace", namespace.trim());
}
form.append("file", safeFile);
return api.postForm<AssetImage>(`/companies/${companyId}/assets/images`, form);
},
};
uploadCompanyLogo: async (companyId: string, file: File) => {
const buffer = await file.arrayBuffer();
const safeFile = new File([buffer], file.name, { type: file.type });
const form = new FormData();
form.append("file", safeFile);
return api.postForm<AssetImage>(`/companies/${companyId}/logo`, form);
},
};

View File

@@ -140,7 +140,7 @@ export function CompanySettings() {
const logoUploadMutation = useMutation({
mutationFn: (file: File) =>
assetsApi
.uploadImage(selectedCompanyId!, file, "companies")
.uploadCompanyLogo(selectedCompanyId!, file)
.then((asset) => companiesApi.update(selectedCompanyId!, { logoAssetId: asset.assetId })),
onSuccess: (company) => {
syncLogoState(company.logoUrl);
@@ -160,8 +160,8 @@ export function CompanySettings() {
const file = event.target.files?.[0] ?? null;
event.currentTarget.value = "";
if (!file) return;
if (file.size >= 100 * 1024) {
setLogoUploadError("Logo image must be smaller than 100 KB.");
if (file.size > 100 * 1024) {
setLogoUploadError("Logo image must be 100 KB or smaller.");
return;
}
setLogoUploadError(null);