UNPKG

@horizon-domains/property-model

Version:

Modelo de propriedades imobiliárias v3 - Sistema de atributos dinâmicos

1,708 lines (1,706 loc) 497 kB
// src/schemas/horizon-property-schema-base.ts var horizonPropertySchemaBase = { entity: "property", version: "2.3.0", description: "Schema base can\xF4nico do modelo de propriedade Horizon v3", fields: [ // ======================================== // SISTEMA // ======================================== { key: "source_published_at", type: "String", categories: ["sistema"], format: "datetime", ui: { label: "Data da publica\xE7\xE3o original" }, audit: { origin: "hb:property" } }, { key: "source_updated_at", type: "String", categories: ["sistema"], format: "datetime", validation: { required: true }, ui: { label: "Data da \xFAltima republica\xE7\xE3o" }, audit: { origin: "hb:property" } }, { key: "currency", type: "String", categories: ["sistema"], validation: { required: true }, db: { default: "BRL" }, ui: { label: "Moeda" }, audit: { origin: "hb:property" } }, { key: "unit_area", type: "String", categories: ["sistema"], validation: { required: true }, db: { default: "m2" }, ui: { label: "Unidade de \xE1rea" }, audit: { origin: "hb:property" } }, { key: "unit_distance", type: "String", categories: ["sistema"], enum: { meters: "Metros", km: "Quil\xF4metros" }, validation: { required: true }, db: { default: "meters" }, ui: { label: "Unidade de dist\xE2ncia" }, audit: { origin: "hb:property" } }, // ======================================== // CABEÇALHO // ======================================== { key: "reference", type: "String", categories: ["cabecalho"], validation: { required: true }, ui: { label: "Refer\xEAncia" }, audit: { origin: "hb:property" } }, { key: "title", type: "String", categories: ["cabecalho"], validation: { required: true, maxLength: 200 }, ui: { label: "T\xEDtulo" }, audit: { origin: "hb:property" } }, { key: "description", type: "String", categories: ["cabecalho"], validation: { required: true }, db: { type: "text", index: "fulltext" }, ui: { label: "Descri\xE7\xE3o" }, audit: { origin: "hb:property" } }, // ======================================== // SEO // ======================================== { key: "seo_slug", type: "String", categories: ["seo"], validation: { maxLength: 255 }, db: { type: "varchar(255)", unique: true, index: true }, ui: { label: "Slug SEO" }, audit: { origin: "hb:property" } }, { key: "seo_title", type: "String", categories: ["seo"], validation: { maxLength: 60 }, ui: { label: "T\xEDtulo SEO" }, audit: { origin: "hb:property" } }, { key: "seo_description", type: "String", categories: ["seo"], validation: { maxLength: 160 }, ui: { label: "Descri\xE7\xE3o SEO" }, audit: { origin: "hb:property" } }, { key: "seo_keywords", type: "String", categories: ["seo"], validation: { maxLength: 200 }, ui: { label: "Palavras-chave SEO" }, audit: { origin: "hb:property" } }, // ======================================== // MÍDIAS // ======================================== { key: "main_image", type: "Json", categories: ["media"], ui: { label: "Imagem principal" }, audit: { origin: "hb:property" } }, { key: "images", type: "Json[]", categories: ["media"], validation: { required: true }, ui: { label: "Imagens" }, audit: { origin: "hb:property" } }, { key: "videos", type: "Json[]", categories: ["media"], validation: { required: true }, ui: { label: "V\xEDdeos" }, audit: { origin: "hb:property" } }, { key: "virtual_tours", type: "Json[]", categories: ["media"], validation: { required: true }, ui: { label: "Tours virtuais" }, audit: { origin: "hb:property" } }, // ======================================== // FICHA TÉCNICA // ======================================== { key: "operacao", type: "String[]", categories: ["ficha-tecnica"], enum: { venda: "Venda", locacao: "Loca\xE7\xE3o", temporada: "Temporada" }, validation: { required: true }, ui: { label: "Opera\xE7\xE3o" }, audit: { origin: "hb:property" } }, { key: "tipo", type: "String", categories: ["ficha-tecnica"], validation: { required: true }, ui: { label: "Tipo do im\xF3vel" }, audit: { origin: "hb:property" } }, { key: "dormitorios", type: "Number", categories: ["ficha-tecnica"], format: "count", validation: { min: 0 }, ui: { label: "Dormit\xF3rios" }, audit: { origin: "hb:property" } }, { key: "suites", type: "Number", categories: ["ficha-tecnica"], format: "count", validation: { min: 0 }, ui: { label: "Su\xEDtes" }, audit: { origin: "hb:property" } }, { key: "banheiros", type: "Number", categories: ["ficha-tecnica"], format: "count", validation: { min: 0 }, ui: { label: "Banheiros" }, audit: { origin: "hb:property" } }, { key: "vagas_garagem", type: "Number", categories: ["ficha-tecnica"], format: "count", validation: { min: 0 }, ui: { label: "Vagas de garagem" }, audit: { origin: "hb:property" } }, { key: "area_total", type: "Number", categories: ["ficha-tecnica"], format: "area", unit: "m2", validation: { min: 0 }, ui: { label: "\xC1rea total" }, audit: { origin: "hb:property" } }, { key: "area_privativa", type: "Number", categories: ["ficha-tecnica"], format: "area", unit: "m2", validation: { min: 0 }, ui: { label: "\xC1rea privativa" }, audit: { origin: "hb:property" } }, { key: "area_util", type: "Number", categories: ["ficha-tecnica"], format: "area", unit: "m2", validation: { min: 0 }, ui: { label: "\xC1rea \xFAtil" }, audit: { origin: "hb:property" } }, { key: "destaque", type: "Boolean", categories: ["ficha-tecnica"], ui: { label: "Im\xF3vel em destaque" }, audit: { origin: "hb:property" } }, // ======================================== // VALORES // ======================================== { key: "valor_venda", type: "Number", categories: ["valores"], format: "currency", unit: "BRL", validation: { precision: 2 }, rules: { conditions: ["operacao:venda"] }, ui: { label: "Valor de venda" }, audit: { origin: "hb:property" } }, { key: "valor_locacao", type: "Number", categories: ["valores"], format: "currency", unit: "BRL", validation: { precision: 2 }, rules: { conditions: ["operacao:locacao"] }, ui: { label: "Valor de loca\xE7\xE3o" }, audit: { origin: "hb:property" } }, { key: "valor_condominio", type: "Number", categories: ["valores"], format: "currency", unit: "BRL", validation: { precision: 2 }, ui: { label: "Valor do condom\xEDnio" }, audit: { origin: "hb:property" } }, { key: "valor_iptu", type: "Number", categories: ["valores"], format: "currency", unit: "BRL", validation: { precision: 2 }, ui: { label: "Valor do IPTU" }, audit: { origin: "hb:property" } }, // ======================================== // LOCALIZAÇÃO // ======================================== { key: "endereco_cep", type: "String", categories: ["localizacao"], validation: { maxLength: 9 }, mask: "cep", ui: { label: "CEP" }, audit: { origin: "hb:property" } }, { key: "endereco_estado", type: "String", categories: ["localizacao"], ui: { label: "Estado" }, audit: { origin: "hb:property" } }, { key: "endereco_cidade", type: "String", categories: ["localizacao"], rules: { parent: "endereco_estado" }, ui: { label: "Cidade" }, audit: { origin: "hb:property" } }, { key: "endereco_bairro", type: "String", categories: ["localizacao"], rules: { parent: "endereco_cidade" }, ui: { label: "Bairro" }, audit: { origin: "hb:property" } }, { key: "endereco_logradouro", type: "String", categories: ["localizacao"], ui: { label: "Logradouro" }, audit: { origin: "hb:property" } }, { key: "endereco_numero", type: "String", categories: ["localizacao"], ui: { label: "N\xFAmero" }, audit: { origin: "hb:property" } }, { key: "endereco_complemento", type: "String", categories: ["localizacao"], ui: { label: "Complemento" }, audit: { origin: "hb:property" } }, { key: "endereco_referencia", type: "String", categories: ["localizacao"], ui: { label: "Refer\xEAncia" }, audit: { origin: "hb:property" } }, { key: "endereco_zona", type: "String", categories: ["localizacao"], ui: { label: "Zona" }, audit: { origin: "hb:property" } }, { key: "lat", type: "Number", categories: ["localizacao"], validation: { min: -90, max: 90, precision: 8 }, db: { type: "decimal(10,8)", index: "geo" }, ui: { label: "Latitude" }, audit: { origin: "hb:property" } }, { key: "lng", type: "Number", categories: ["localizacao"], validation: { min: -180, max: 180, precision: 8 }, db: { type: "decimal(11,8)", index: "geo" }, ui: { label: "Longitude" }, audit: { origin: "hb:property" } }, // ======================================== // Relações // ======================================== { key: "corretor_key", type: "String", categories: ["relations"], ui: { label: "ID do corretor" }, audit: { origin: "hb:property" } }, { key: "corretor_nome", type: "String", categories: ["relations"], ui: { label: "Nome do corretor" }, audit: { origin: "hb:property" } }, { key: "condominio_key", type: "String", categories: ["relations"], ui: { label: "ID do condom\xEDnio" }, audit: { origin: "hb:property" } }, { key: "condominio_nome", type: "String", categories: ["relations"], ui: { label: "Nome do condom\xEDnio" }, audit: { origin: "hb:property" } } ] }; // src/schemas/horizon-property-schema-base.zod.ts import { z } from "zod"; var ImageSchema = z.object({ md: z.string().url().describe("URL tamanho m\xE9dio"), sm: z.string().url().describe("URL tamanho pequeno"), full: z.string().url().describe("URL tamanho completo"), cover: z.boolean().describe("Se \xE9 imagem de capa") }); var MainImageSchema = z.object({ md: z.string().url().describe("URL tamanho m\xE9dio"), sm: z.string().url().describe("URL tamanho pequeno"), full: z.string().url().describe("URL tamanho completo") }); var VideoSchema = z.object({ url: z.string().nullish().describe("Url do v\xEDdeo"), embed_url: z.string().nullish().describe("Url de incorpora\xE7\xE3o do v\xEDdeo") }); var VirtualTourSchema = z.object({ embed_url: z.string().url().describe("URL de incorpora\xE7\xE3o do tour 360\xB0") }); var HorizonPropertySchemaBaseZod = z.object({ // Sistema source_published_at: z.string().nullish().describe("Data da publica\xE7\xE3o original"), source_updated_at: z.string().describe("Data da \xFAltima republica\xE7\xE3o"), currency: z.string().default("BRL").describe("Moeda"), unit_area: z.string().default("m2").describe("Unidade de \xE1rea"), unit_distance: z.enum(["meters", "km"]).default("meters").describe("Unidade de dist\xE2ncia"), // Cabecalho reference: z.string().describe("Refer\xEAncia"), title: z.string().max(200).describe("T\xEDtulo"), description: z.string().describe("Descri\xE7\xE3o"), // SEO seo_slug: z.string().max(255).nullish().describe("Slug SEO"), seo_title: z.string().max(60).nullish().describe("T\xEDtulo SEO"), seo_description: z.string().max(160).nullish().describe("Descri\xE7\xE3o SEO"), seo_keywords: z.string().max(200).nullish().describe("Palavras-chave SEO"), // Medias main_image: MainImageSchema.describe("Imagem principal").optional(), images: z.array(ImageSchema).describe("Imagens"), videos: z.array(VideoSchema).describe("V\xEDdeos"), virtual_tours: z.array(VirtualTourSchema).describe("Tours virtuais"), // Ficha técnica operacao: z.array(z.enum(["venda", "locacao", "temporada"])).describe("Opera\xE7\xE3o"), tipo: z.string().describe("Tipo do im\xF3vel"), dormitorios: z.number().min(0).nullish().describe("Dormit\xF3rios"), suites: z.number().min(0).nullish().describe("Su\xEDtes"), banheiros: z.number().min(0).nullish().describe("Banheiros"), vagas_garagem: z.number().min(0).nullish().describe("Vagas de garagem"), area_total: z.number().min(0).nullish().describe("\xC1rea total"), area_privativa: z.number().min(0).nullish().describe("\xC1rea privativa"), area_util: z.number().min(0).nullish().describe("\xC1rea \xFAtil"), destaque: z.boolean().nullish().describe("Im\xF3vel em destaque"), // VALORES valor_venda: z.number().nullish().describe("Valor de venda"), valor_locacao: z.number().nullish().describe("Valor de loca\xE7\xE3o"), valor_condominio: z.number().nullish().describe("Valor do condom\xEDnio"), valor_iptu: z.number().nullish().describe("Valor do IPTU"), // LOCALIZACAO endereco_cep: z.string().max(9).nullish().describe("CEP"), endereco_estado: z.string().nullish().describe("Estado"), endereco_cidade: z.string().nullish().describe("Cidade"), endereco_bairro: z.string().nullish().describe("Bairro"), endereco_logradouro: z.string().nullish().describe("Logradouro"), endereco_numero: z.string().nullish().describe("N\xFAmero"), endereco_complemento: z.string().nullish().describe("Complemento"), endereco_referencia: z.string().nullish().describe("Refer\xEAncia"), endereco_zona: z.string().nullish().describe("Zona"), lat: z.number().min(-90).max(90).nullish().describe("Latitude"), lng: z.number().min(-180).max(180).nullish().describe("Longitude"), // RELACIONAMENTOS corretor_key: z.string().nullish().describe("ID do corretor"), corretor_nome: z.string().nullish().describe("Nome do corretor"), condominio_key: z.string().nullish().describe("ID do condom\xEDnio"), condominio_nome: z.string().nullish().describe("Nome do condom\xEDnio") }); // src/data/fake-properties/fake-apartamentos.json var fake_apartamentos_default = [ { reference: "FAKE_0004", updated_at: "2025-08-12T13:21:43.745Z", title: "Excelente Im\xF3vel - 2 quartos, 120m\xB2", description: "Excelente im\xF3vel localizado em excelente bairro, cidade. Im\xF3vel com \xF3tima localiza\xE7\xE3o e acabamento de qualidade. Caracter\xEDsticas destacadas incluem Alarme, Casa de Caseiro, Gesso. Agende sua visita!", seo_slug: "cobertura-venda-alto-de-pinheiros", seo_title: "Im\xF3vel em S\xE3o Paulo - Centro", seo_description: "Im\xF3vel com 2 dormit\xF3rios, 120m\xB2", seo_keywords: "venda, aluguel, im\xF3vel", main_image: { full: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1920", md: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1024", sm: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=480" }, images: [ { full: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1920", md: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1024", sm: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=480", cover: true }, { full: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1920", md: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1024", sm: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=480", cover: false } ], videos: [], virtual_tours: [], documents: [], currency: "BRL", unit_area: "m2", unit_distance: "meters", map_show_proximity: false, operacao: [ "venda", "locacao" ], valor_venda: 271159.04, valor_locacao: 4428.57, valor_diaria: 218.09, valor_condominio: 290.92, valor_iptu: 5285.19, area_total: 175, area_privativa: 155, area_util: 96, dormitorios: 5, suites: 0, banheiros: 3, vagas_garagem: 3, finalidade: "Mista", tipo: "Apartamentos", subtipo: "Cobertura", endereco_cep: "63527-209", endereco_estado: "Rio Grande do Sul", endereco_cidade: "Novo Hamburgo", endereco_bairro: "Alto de Pinheiros", endereco_logradouro: "Rua XV de Novembro", endereco_numero: "6499", endereco_zona: "Oeste", latitude: -23.51776708, longitude: -46.66023804, mobiliado: false, caracteristicas: [ "Aquecimento Central", "Box Blindex", "Cozinha Planejada", "Sanca", "Ed\xEDcula", "Molduras" ], destaque: false, corretor_nome: "Roberto Lima", tags: [ "Cobertura", "Alto de pinheiros", "Im\xF3vel" ], numero_pessoas: 7 }, { reference: "FAKE_0011", updated_at: "2025-08-12T13:21:43.748Z", title: "Im\xF3vel de 120m\xB2 em excelente localiza\xE7\xE3o", description: "Oportunidade \xFAnica! Im\xF3vel com excelente localiza\xE7\xE3o em cidade. Im\xF3vel pronto para morar com todas as comodidades necess\xE1rias.", seo_slug: "duplex-venda-ribeir-o-da-ilha", seo_title: "Im\xF3vel em S\xE3o Paulo - Centro", seo_description: "Im\xF3vel com 2 dormit\xF3rios, 120m\xB2", seo_keywords: "venda, aluguel, im\xF3vel", main_image: { full: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1920", md: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1024", sm: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=480" }, images: [ { full: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1920", md: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1024", sm: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=480", cover: true }, { full: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1920", md: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1024", sm: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1920", md: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1024", sm: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=480", cover: false } ], videos: [], virtual_tours: [], documents: [], currency: "BRL", unit_area: "m2", unit_distance: "meters", map_show_proximity: false, operacao: [ "venda" ], valor_venda: 385636473e-2, valor_locacao: 12967.22, valor_diaria: 334.41, valor_condominio: 1442.83, valor_iptu: 2204.47, area_total: 265, area_privativa: 60, area_util: 161, dormitorios: 4, suites: 1, banheiros: 4, vagas_garagem: 0, finalidade: "Comercial", tipo: "Apartamentos", subtipo: "Duplex", endereco_cep: "78347-855", endereco_estado: "Santa Catarina", endereco_cidade: "Florian\xF3polis", endereco_bairro: "Ribeir\xE3o da Ilha", endereco_logradouro: "Rua do Com\xE9rcio", endereco_numero: "9331", endereco_zona: "Centro", latitude: -23.53861084, longitude: -46.62940141, mobiliado: true, caracteristicas: [ "\xC1rea Gourmet", "Coworking", "Recep\xE7\xE3o" ], destaque: false, corretor_nome: "Maria Oliveira", tags: [ "Duplex", "Ribeir\xE3o da ilha", "Mobiliado", "Im\xF3vel" ], numero_pessoas: 5 }, { reference: "FAKE_0014", updated_at: "2025-08-12T13:21:43.748Z", title: "Im\xF3vel premium com \xF3tima localiza\xE7\xE3o", description: "Excelente im\xF3vel localizado em excelente bairro, cidade. Im\xF3vel com \xF3tima localiza\xE7\xE3o e acabamento de qualidade. Caracter\xEDsticas destacadas incluem Churrasqueira, M\xE1rmore. Agende sua visita!", seo_slug: "studio-locacao-canasvieiras", seo_title: "Im\xF3vel em S\xE3o Paulo - Centro", seo_description: "Im\xF3vel com 2 dormit\xF3rios, 120m\xB2", seo_keywords: "venda, aluguel, im\xF3vel", main_image: { full: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1920", md: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1024", sm: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=480" }, images: [ { full: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1920", md: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1024", sm: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=480", cover: true }, { full: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1920", md: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1024", sm: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1920", md: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1024", sm: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1920", md: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1024", sm: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=480", cover: false } ], videos: [], virtual_tours: [], documents: [], currency: "BRL", unit_area: "m2", unit_distance: "meters", map_show_proximity: false, operacao: [ "locacao", "temporada" ], valor_venda: 128090815e-2, valor_locacao: 5250.71, valor_diaria: 672.82, valor_condominio: 1328.9, valor_iptu: 5838.64, area_total: 413, area_privativa: 420, area_util: 128, dormitorios: 2, suites: 0, banheiros: 4, vagas_garagem: 3, finalidade: "Rural", tipo: "Apartamentos", subtipo: "Studio", endereco_cep: "90591-497", endereco_estado: "Bahia", endereco_cidade: "S\xE3o Leopoldo", endereco_bairro: "Canasvieiras", endereco_logradouro: "Rua do Com\xE9rcio", endereco_numero: "899", endereco_zona: "Centro-Sul", latitude: -23.57061612, longitude: -46.66554703, mobiliado: true, caracteristicas: [ "Port\xE3o Eletr\xF4nico", "Sacada", "Granito", "C\xE2meras", "Gesso", "Churrasqueira" ], destaque: false, corretor_nome: "Jo\xE3o Pereira", condominio_nome: "Residencial Leblon Tower", tags: [ "Studio", "Canasvieiras", "Mobiliado", "Im\xF3vel" ], numero_pessoas: 3 }, { reference: "FAKE_0015", updated_at: "2025-08-12T13:21:43.748Z", title: "Im\xF3vel de 120m\xB2 em excelente localiza\xE7\xE3o", description: "Im\xF3vel moderno com excelente custo-benef\xEDcio. Localizado em bairro nobre com f\xE1cil acesso a com\xE9rcios e servi\xE7os. Acabamentos de primeira linha.", seo_slug: "cobertura-venda-itaim-bibi", seo_title: "Im\xF3vel em S\xE3o Paulo - Centro", seo_description: "Im\xF3vel com 2 dormit\xF3rios, 120m\xB2", seo_keywords: "venda, aluguel, im\xF3vel", main_image: { full: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1920", md: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1024", sm: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=480" }, images: [ { full: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1920", md: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1024", sm: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=480", cover: true }, { full: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1920", md: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1024", sm: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=1920", md: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=1024", sm: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1920", md: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1024", sm: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1920", md: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1024", sm: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=480", cover: false } ], videos: [], virtual_tours: [], documents: [], currency: "BRL", unit_area: "m2", unit_distance: "meters", map_show_proximity: false, operacao: [ "venda" ], valor_venda: 225820398e-2, valor_locacao: 4666.83, valor_diaria: 403.5, valor_condominio: 1004.08, valor_iptu: 3830.35, area_total: 57, area_privativa: 154, area_util: 240, dormitorios: 4, suites: 0, banheiros: 2, vagas_garagem: 4, finalidade: "Industrial", tipo: "Apartamentos", subtipo: "Cobertura", endereco_cep: "41817-224", endereco_estado: "Distrito Federal", endereco_cidade: "Crici\xFAma", endereco_bairro: "Itaim Bibi", endereco_logradouro: "Rua Tiradentes", endereco_numero: "3817", endereco_zona: "Sul", latitude: -23.57930697, longitude: -46.62956582, mobiliado: true, caracteristicas: [ "Port\xE3o Eletr\xF4nico", "TV a Cabo", "Piso Laminado", "Po\xE7o Artesiano", "Elevador", "Lareira" ], destaque: false, corretor_nome: "Ana Silva", condominio_nome: "Residencial Reserva das \xC1guas", tags: [ "Cobertura", "Itaim bibi", "Mobiliado", "Im\xF3vel" ], numero_pessoas: 2 }, { reference: "FAKE_0037", updated_at: "2025-08-12T13:21:43.753Z", title: "Excelente Im\xF3vel - 2 quartos, 120m\xB2", description: "Im\xF3vel moderno com excelente custo-benef\xEDcio. Localizado em bairro nobre com f\xE1cil acesso a com\xE9rcios e servi\xE7os. Acabamentos de primeira linha.", seo_slug: "duplex-venda-belvedere", seo_title: "Im\xF3vel em S\xE3o Paulo - Centro", seo_description: "Im\xF3vel com 2 dormit\xF3rios, 120m\xB2", seo_keywords: "venda, aluguel, im\xF3vel", main_image: { full: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1920", md: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1024", sm: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=480" }, images: [ { full: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1920", md: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1024", sm: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=480", cover: true }, { full: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1920", md: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1024", sm: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1920", md: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1024", sm: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=480", cover: false } ], videos: [], virtual_tours: [], documents: [], currency: "BRL", unit_area: "m2", unit_distance: "meters", map_show_proximity: false, operacao: [ "venda" ], valor_venda: 560082.61, valor_locacao: 2357.54, valor_diaria: 303.72, valor_condominio: 577.18, valor_iptu: 1209.08, area_total: 104, area_privativa: 448, area_util: 89, dormitorios: 1, suites: 0, banheiros: 2, vagas_garagem: 0, finalidade: "Residencial", tipo: "Apartamentos", subtipo: "Duplex", endereco_cep: "28668-017", endereco_estado: "Rio Grande do Sul", endereco_cidade: "Uruguaiana", endereco_bairro: "Belvedere", endereco_logradouro: "Rua XV de Novembro", endereco_numero: "7965", endereco_zona: "Centro", latitude: -23.54076085, longitude: -46.63466688, mobiliado: true, caracteristicas: [ "Piscina", "Churrasqueira", "Varanda", "Gesso", "Lavabo" ], destaque: false, corretor_nome: "Maria Oliveira", tags: [ "Duplex", "Belvedere", "Mobiliado", "Im\xF3vel" ], numero_pessoas: 6 }, { reference: "FAKE_0040", updated_at: "2025-08-12T13:21:43.753Z", title: "Im\xF3vel de 120m\xB2 em excelente localiza\xE7\xE3o", description: "Excelente im\xF3vel localizado em excelente bairro, cidade. Im\xF3vel com \xF3tima localiza\xE7\xE3o e acabamento de qualidade. Caracter\xEDsticas destacadas incluem Piso Laminado, Cinema. Agende sua visita!", seo_slug: "duplex-locacao-centro", seo_title: "Im\xF3vel em S\xE3o Paulo - Centro", seo_description: "Im\xF3vel com 2 dormit\xF3rios, 120m\xB2", seo_keywords: "venda, aluguel, im\xF3vel", main_image: { full: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1920", md: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1024", sm: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=480" }, images: [ { full: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1920", md: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1024", sm: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=480", cover: true }, { full: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1920", md: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1024", sm: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1920", md: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1024", sm: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1920", md: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1024", sm: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=1920", md: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=1024", sm: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=480", cover: false } ], videos: [], virtual_tours: [], documents: [], currency: "BRL", unit_area: "m2", unit_distance: "meters", map_show_proximity: false, operacao: [ "locacao" ], valor_venda: 18628291e-1, valor_locacao: 1303.26, valor_diaria: 384.73, valor_condominio: 1519.78, valor_iptu: 4334.83, area_total: 496, area_privativa: 397, area_util: 47, dormitorios: 5, suites: 2, banheiros: 2, vagas_garagem: 0, finalidade: "Industrial", tipo: "Apartamentos", subtipo: "Duplex", endereco_cep: "11577-206", endereco_estado: "Bahia", endereco_cidade: "Blumenau", endereco_bairro: "Centro", endereco_logradouro: "Rua Marechal Deodoro", endereco_numero: "9433", endereco_zona: "Leste", latitude: -23.51371631, longitude: -46.58495402, mobiliado: false, caracteristicas: [ "Cinema", "Cozinha Planejada", "Playground", "Sacada", "Sauna" ], destaque: false, corretor_nome: "Patricia Souza", tags: [ "Duplex", "Centro", "Im\xF3vel" ], numero_pessoas: 2 }, { reference: "FAKE_0041", updated_at: "2025-08-12T13:21:43.753Z", title: "Im\xF3vel premium com \xF3tima localiza\xE7\xE3o", description: "Oportunidade \xFAnica! Im\xF3vel com excelente localiza\xE7\xE3o em cidade. Im\xF3vel pronto para morar com todas as comodidades necess\xE1rias.", seo_slug: "garden-locacao-mooca", seo_title: "Im\xF3vel em S\xE3o Paulo - Centro", seo_description: "Im\xF3vel com 2 dormit\xF3rios, 120m\xB2", seo_keywords: "venda, aluguel, im\xF3vel", main_image: { full: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1920", md: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1024", sm: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=480" }, images: [ { full: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1920", md: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1024", sm: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=480", cover: true }, { full: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1920", md: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1024", sm: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1920", md: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1024", sm: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1920", md: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1024", sm: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=1920", md: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=1024", sm: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=480", cover: false } ], videos: [], virtual_tours: [], documents: [], currency: "BRL", unit_area: "m2", unit_distance: "meters", map_show_proximity: false, operacao: [ "locacao" ], valor_venda: 378954596e-2, valor_locacao: 6550.17, valor_diaria: 622.63, valor_condominio: 1572.97, valor_iptu: 5679.72, area_total: 116, area_privativa: 320, area_util: 339, dormitorios: 5, suites: 0, banheiros: 1, vagas_garagem: 1, finalidade: "Mista", tipo: "Apartamentos", subtipo: "Garden", endereco_cep: "91867-728", endereco_estado: "Pernambuco", endereco_cidade: "Nova Igua\xE7u", endereco_bairro: "Mooca", endereco_logradouro: "Avenida Central", endereco_numero: "1485", endereco_zona: "Leste", latitude: -23.57415356, longitude: -46.67982593, mobiliado: false, caracteristicas: [ "Casa de Caseiro", "Quadra", "Elevador", "Recep\xE7\xE3o" ], destaque: false, corretor_nome: "Patricia Souza", condominio_nome: "Condom\xEDnio Ingleses Beach", tags: [ "Garden", "Mooca", "Im\xF3vel" ], numero_pessoas: 2 }, { reference: "FAKE_0048", updated_at: "2025-08-12T13:21:43.755Z", title: "Im\xF3vel de 120m\xB2 em excelente localiza\xE7\xE3o", description: "Im\xF3vel moderno com excelente custo-benef\xEDcio. Localizado em bairro nobre com f\xE1cil acesso a com\xE9rcios e servi\xE7os. Acabamentos de primeira linha.", seo_slug: "duplex-temporada-ipanema", seo_title: "Im\xF3vel em S\xE3o Paulo - Centro", seo_description: "Im\xF3vel com 2 dormit\xF3rios, 120m\xB2", seo_keywords: "venda, aluguel, im\xF3vel", main_image: { full: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1920", md: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1024", sm: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=480" }, images: [ { full: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1920", md: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1024", sm: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=480", cover: true }, { full: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=1920", md: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=1024", sm: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1920", md: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1024", sm: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1920", md: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1024", sm: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=480", cover: false } ], videos: [], virtual_tours: [], documents: [], currency: "BRL", unit_area: "m2", unit_distance: "meters", map_show_proximity: false, operacao: [ "temporada", "locacao" ], valor_venda: 176161.52, valor_locacao: 6089.75, valor_diaria: 206.48, valor_condominio: 219.67, valor_iptu: 3070.3, area_total: 32, area_privativa: 127, area_util: 398, dormitorios: 2, suites: 0, banheiros: 2, vagas_garagem: 4, finalidade: "Mista", tipo: "Apartamentos", subtipo: "Duplex", endereco_cep: "92811-602", endereco_estado: "Santa Catarina", endereco_cidade: "Itaja\xED", endereco_bairro: "Ipanema", endereco_logradouro: "Avenida Central", endereco_numero: "2171", endereco_zona: "Centro", latitude: -23.54790079, longitude: -46.66119864, mobiliado: false, caracteristicas: [ "Spa", "Jardim", "Churrasqueira", "\xC1rea Gourmet", "Portaria 24h" ], destaque: false, corretor_nome: "Patricia Souza", condominio_nome: "Condom\xEDnio Botafogo Bay", tags: [ "Duplex", "Ipanema", "Im\xF3vel" ], numero_pessoas: 7 }, { reference: "FAKE_0074", updated_at: "2025-08-12T13:21:43.760Z", title: "Im\xF3vel com 2 dormit\xF3rios para venda", description: "Excelente im\xF3vel localizado em excelente bairro, cidade. Im\xF3vel com \xF3tima localiza\xE7\xE3o e acabamento de qualidade. Caracter\xEDsticas destacadas incluem Casa de Caseiro, Ar Condicionado Central, Cisterna. Agende sua visita!", seo_slug: "garden-locacao-copacabana", seo_title: "Im\xF3vel em S\xE3o Paulo - Centro", seo_description: "Im\xF3vel com 2 dormit\xF3rios, 120m\xB2", seo_keywords: "venda, aluguel, im\xF3vel", main_image: { full: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1920", md: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1024", sm: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=480" }, images: [ { full: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1920", md: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1024", sm: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=480", cover: true }, { full: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1920", md: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1024", sm: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1920", md: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1024", sm: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1920", md: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1024", sm: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=1920", md: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=1024", sm: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=480", cover: false } ], videos: [], virtual_tours: [], documents: [], currency: "BRL", unit_area: "m2", unit_distance: "meters", map_show_proximity: false, operacao: [ "locacao" ], valor_venda: 451913551e-2, valor_locacao: 1722.05, valor_diaria: 159.15, valor_condominio: 305.06, valor_iptu: 1601.99, area_total: 346, area_privativa: 147, area_util: 382, dormitorios: 3, suites: 2, banheiros: 1, vagas_garagem: 1, finalidade: "Comercial", tipo: "Apartamentos", subtipo: "Garden", endereco_cep: "30718-482", endereco_estado: "Cear\xE1", endereco_cidade: "Montes Claros", endereco_bairro: "Copacabana", endereco_logradouro: "Avenida Jo\xE3o Pessoa", endereco_numero: "3030", endereco_zona: "Centro-Norte", latitude: -23.51688453, longitude: -46.58742062, mobiliado: false, caracteristicas: [ "Varanda", "Estacionamento", "\xC1rea de Servi\xE7o" ], destaque: false, corretor_nome: "Patricia Souza", condominio_nome: "Condom\xEDnio Ingleses Beach", tags: [ "Garden", "Copacabana", "Im\xF3vel" ], numero_pessoas: 1 }, { reference: "FAKE_0078", updated_at: "2025-08-12T13:21:43.761Z", title: "Excelente Im\xF3vel - 2 quartos, 120m\xB2", description: "Im\xF3vel moderno com excelente custo-benef\xEDcio. Localizado em bairro nobre com f\xE1cil acesso a com\xE9rcios e servi\xE7os. Acabamentos de primeira linha.", seo_slug: "garden-temporada-campeche", seo_title: "Im\xF3vel em S\xE3o Paulo - Centro", seo_description: "Im\xF3vel com 2 dormit\xF3rios, 120m\xB2", seo_keywords: "venda, aluguel, im\xF3vel", main_image: { full: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=1920", md: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=1024", sm: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=480" }, images: [ { full: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=1920", md: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=1024", sm: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=480", cover: true }, { full: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1920", md: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=1024", sm: "https://images.unsplash.com/photo-1484154218962-a197022b5858?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1920", md: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=1024", sm: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1920", md: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=1024", sm: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=480", cover: false }, { full: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1920", md: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=1024", sm: "https://images.unsplash.com/photo-1571055107559-3e67626fa8be?w=480", cover: false } ], videos: [], virtual_tours: [], documents: [], currency: "BRL", unit_area: "m2", unit_distance: "meters", map_show_proximity: false, operacao: [ "temporada" ], valor_venda: 488056126e-2, valor_locacao: 13761.6, valor_diaria: 186.8, valor_condominio: 1809.79, valor_iptu: 7859.67, area_total: 418, area_privativa: 284, area_util: 240, dormitorios: 2, suites: 0, banheiros: 1, vagas_garagem: 1, finalidade: "Industrial", tipo: "Apartamentos", subtipo: "Garden", endereco_cep: "96995-993", endereco_estado: "Cear\xE1", endereco_cidade: "Campos dos Goytacazes", endereco_bairro: "Campeche", endereco_logradouro: "Rua das Flores", endereco_numero: "937", endereco_zona: "Oeste", latitude: -23.52996934, longitude: -46.59233659, mobiliado: false, caracteristicas: [ "Papel de Parede", "Su\xEDte Master", "Pet Place", "Playground", "Cozinha Americana", "Port\xE3o Eletr\xF4nico" ], destaque: false, corretor_nome: "Ricardo Barbosa", condominio_nome: "Residencial Vila Madalena", tags: [ "Garden", "Campeche", "Im\xF3vel" ], numero_pessoas: 1 }, { reference: "FAKE_0082", updated_at: "2025-08-12T13:21:43.761Z", title: "Im\xF3vel premium com \xF3tima localiza\xE7\xE3o", description: "Oportunidade \xFAnica! Im\xF3vel com excelente localiza\xE7\xE3o em cidade. Im\xF3vel pronto para morar com todas as comodidades necess\xE1rias.", seo_slug: "duplex-locacao-sa-de", seo_title: "Im\xF3vel em S\xE3o Paulo - Centro", seo_description: "Im\xF3vel com 2 dormit\xF3rios, 120m\xB2", seo_keywords: "venda, aluguel, im\xF3vel", main_image: { full: "https://images.unsplash.com/photo-1522708323590-d2