refactor: quality workflow, docs, tests

This commit is contained in:
Esdras Renan 2025-10-16 19:14:46 -03:00
parent a9caf36b01
commit 68ace0a858
27 changed files with 758 additions and 330 deletions

View file

@ -204,24 +204,32 @@ async function ensureCompany(
let id: Id<"companies">
if (existing) {
const existingIsAvulso = existing.isAvulso ?? undefined
const targetIsAvulso = payload.isAvulso ?? existingIsAvulso
const targetCnpj = payload.cnpj ?? undefined
const targetDomain = payload.domain ?? undefined
const targetPhone = payload.phone ?? undefined
const targetDescription = payload.description ?? undefined
const targetAddress = payload.address ?? undefined
const needsPatch =
existing.name !== payload.name ||
(existing as any).isAvulso !== (payload.isAvulso ?? (existing as any).isAvulso) ||
existing.cnpj !== (payload.cnpj ?? undefined) ||
existing.domain !== (payload.domain ?? undefined) ||
existing.phone !== (payload.phone ?? undefined) ||
existing.description !== (payload.description ?? undefined) ||
existing.address !== (payload.address ?? undefined) ||
existingIsAvulso !== targetIsAvulso ||
(existing.cnpj ?? undefined) !== targetCnpj ||
(existing.domain ?? undefined) !== targetDomain ||
(existing.phone ?? undefined) !== targetPhone ||
(existing.description ?? undefined) !== targetDescription ||
(existing.address ?? undefined) !== targetAddress ||
existing.provisioningCode !== payload.provisioningCode
if (needsPatch) {
await ctx.db.patch(existing._id, {
name: payload.name,
isAvulso: payload.isAvulso,
cnpj: payload.cnpj,
domain: payload.domain,
phone: payload.phone,
description: payload.description,
address: payload.address,
isAvulso: targetIsAvulso,
cnpj: targetCnpj,
domain: targetDomain,
phone: targetPhone,
description: targetDescription,
address: targetAddress,
provisioningCode: payload.provisioningCode,
updatedAt: Date.now(),
})
@ -359,7 +367,7 @@ export const exportTenantSnapshot = query({
companies: companies.map((company) => ({
slug: company.slug,
name: company.name,
isAvulso: (company as any).isAvulso ?? false,
isAvulso: company.isAvulso ?? false,
cnpj: company.cnpj ?? null,
domain: company.domain ?? null,
phone: company.phone ?? null,