UNPKG

@horizon-domains/property-model

Version:

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

1,503 lines (1,499 loc) 527 kB
"use strict"; var __create = Object.create; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( // If the importer is in node compatibility mode or this is not an ESM // file that has been converted to a CommonJS file using a Babel- // compatible transform (i.e. "__esModule" has not been set), then set // "default" to the CommonJS "module.exports" for node compatibility. isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod )); var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // src/index.ts var index_exports = {}; __export(index_exports, { FakeDataAllProperties: () => fake_all_properties_default, FakeDataApartamentos: () => fake_apartamentos_default, FakeDataCasas: () => fake_casas_sobrados_default, FakeDataCasasSobrados: () => fake_casas_sobrados_default, FakeDataComerciais: () => fake_comerciais_default, FakeDataGenerator: () => FakeDataGenerator, FakeDataIndustriais: () => fake_industriais_default, FakeDataRurais: () => fake_rurais_default, FakeDataSobrados: () => fake_casas_sobrados_default, FakeDataTerrenos: () => fake_terrenos_lotes_default, FakeDataTerrenosLotes: () => fake_terrenos_lotes_default, HorizonPropertySchemaBase: () => horizon_property_schema_base_default, HorizonPropertySchemaBaseZod: () => HorizonPropertySchemaBaseZod, fakeDataConfigExample: () => fakeDataConfig, mergePropertyAttributesModel: () => mergePropertyAttributesModel, preparaAttrValueLabel: () => preparaAttrValueLabel, sortAttributes: () => sortAttributes }); module.exports = __toCommonJS(index_exports); // src/schemas/horizon-property-schema-base.json var horizon_property_schema_base_default = { fields: [ { key: "reference", label: "Refer\xEAncia", type: "String", validation: { required: true }, categories: ["identificacao"], origin: "hb:property" }, { key: "updated_at", label: "\xDAltima atualiza\xE7\xE3o", type: "String", format: "datetime", categories: ["sistema"], origin: "hb:property" }, { key: "title", label: "T\xEDtulo", type: "String", validation: { required: true, maxLength: 200 }, categories: ["identificacao"], origin: "hb:property" }, { key: "description", label: "Descri\xE7\xE3o", type: "String", validation: { required: true }, db: { type: "text", index: "fulltext" }, categories: ["identificacao"], origin: "hb:property" }, { key: "seo_slug", label: "Slug SEO", type: "String", categories: ["seo"], origin: "hb:property" }, { key: "seo_title", label: "T\xEDtulo SEO", type: "String", validation: { maxLength: 60 }, categories: ["seo"], origin: "hb:property" }, { key: "seo_description", label: "Descri\xE7\xE3o SEO", type: "String", validation: { maxLength: 160 }, categories: ["seo"], origin: "hb:property" }, { key: "seo_keywords", label: "Palavras-chave SEO", type: "String", validation: { maxLength: 200 }, categories: ["seo"], origin: "hb:property" }, { key: "main_image", label: "Imagem principal", type: "Json", categories: ["media"], origin: "hb:property" }, { key: "images", label: "Imagens", type: "Json[]", validation: { required: true }, categories: ["media"], origin: "hb:property" }, { key: "videos", label: "V\xEDdeos", type: "Json[]", validation: { required: true }, categories: ["media"], origin: "hb:property" }, { key: "virtual_tours", label: "Tours virtuais", type: "Json[]", validation: { required: true }, categories: ["media"], origin: "hb:property" }, { key: "documents", label: "Documentos", type: "Json[]", validation: { required: true }, categories: ["media"], origin: "hb:property" }, { key: "currency", label: "Moeda", type: "String", db: { default: "BRL" }, categories: ["sistema"], origin: "hb:property" }, { key: "unit_area", label: "Unidade de \xE1rea", type: "String", db: { default: "m2" }, categories: ["sistema"], origin: "hb:property" }, { key: "unit_distance", label: "Unidade de dist\xE2ncia", enum: { meters: "Metros", km: "Quil\xF4metros" }, type: "String", db: { default: "meters" }, categories: ["sistema"], origin: "hb:property" }, { key: "map_show_proximity", label: "Exibir aproximado no mapa", type: "Boolean", db: { default: "false" }, categories: ["sistema"], origin: "hb:property" }, { key: "operacao", label: "Opera\xE7\xE3o", enum: { venda: "Venda", locacao: "Loca\xE7\xE3o", temporada: "Temporada" }, type: "String[]", categories: ["comercial"], origin: "hb:property" }, { key: "valor_venda", label: "Valor de venda", type: "Number", format: "currency", unit: "BRL", validation: { precision: 2 }, conditions: ["operacao:venda"], categories: ["valores", "principais"], origin: "hb:property" }, { key: "valor_locacao", label: "Valor de loca\xE7\xE3o", type: "Number", format: "currency", unit: "BRL", validation: { precision: 2 }, conditions: ["operacao:locacao"], categories: ["valores", "principais"], origin: "hb:property" }, { key: "valor_diaria", label: "Valor da di\xE1ria", type: "Number", format: "currency", unit: "BRL", validation: { precision: 2 }, conditions: ["operacao:temporada"], categories: ["valores"], origin: "hb:property" }, { key: "valor_condominio", label: "Valor do condom\xEDnio", type: "Number", format: "currency", unit: "BRL", validation: { precision: 2 }, categories: ["valores"], origin: "hb:property" }, { key: "valor_iptu", label: "Valor do IPTU", type: "Number", format: "currency", unit: "BRL", validation: { precision: 2 }, categories: ["valores"], origin: "hb:property" }, { key: "area_total", label: "\xC1rea total", type: "Number", format: "area", unit: "m2", validation: { min: 0 }, categories: ["estrutura", "principais"], origin: "hb:property" }, { key: "area_privativa", label: "\xC1rea privativa", type: "Number", format: "area", unit: "m2", validation: { min: 0 }, categories: ["estrutura"], origin: "hb:property" }, { key: "area_util", label: "\xC1rea \xFAtil", type: "Number", format: "area", unit: "m2", validation: { min: 0 }, categories: ["estrutura"], origin: "hb:property" }, { key: "dormitorios", label: "Dormit\xF3rios", type: "Number", format: "count", validation: { min: 0 }, categories: ["dependencias", "principais"], origin: "hb:property" }, { key: "suites", label: "Su\xEDtes", type: "Number", format: "count", validation: { min: 0 }, categories: ["dependencias"], origin: "hb:property" }, { key: "banheiros", label: "Banheiros", type: "Number", format: "count", validation: { min: 0 }, categories: ["dependencias", "principais"], origin: "hb:property" }, { key: "vagas_garagem", label: "Vagas de garagem", type: "Number", format: "count", validation: { min: 0 }, categories: ["dependencias", "principais"], origin: "hb:property" }, { key: "finalidade", label: "Finalidade", type: "String", categories: ["estrutura"], origin: "hb:property" }, { key: "tipo", label: "Tipo do im\xF3vel", type: "String", categories: ["estrutura"], origin: "hb:property" }, { key: "subtipo", label: "Sub-tipo do im\xF3vel", type: "String", parent: "tipo", categories: ["estrutura"], origin: "hb:property" }, { key: "endereco_cep", label: "CEP", type: "String", validation: { maxLength: 9 }, mask: "cep", categories: ["localizacao"], origin: "hb:property" }, { key: "endereco_estado", label: "Estado", type: "String", categories: ["localizacao"], origin: "hb:property" }, { key: "endereco_cidade", label: "Cidade", type: "String", parent: "endereco_estado", categories: ["localizacao"], origin: "hb:property" }, { key: "endereco_bairro", label: "Bairro", type: "String", parent: "endereco_cidade", categories: ["localizacao"], origin: "hb:property" }, { key: "endereco_logradouro", label: "Logradouro", type: "String", categories: ["localizacao"], origin: "hb:property" }, { key: "endereco_numero", label: "N\xFAmero", type: "String", categories: ["localizacao"], origin: "hb:property" }, { key: "endereco_complemento", label: "Complemento", type: "String", categories: ["localizacao"], origin: "hb:property" }, { key: "endereco_referencia", label: "Refer\xEAncia", type: "String", categories: ["localizacao"], origin: "hb:property" }, { key: "endereco_zona", label: "Zona", type: "String", categories: ["localizacao"], origin: "hb:property" }, { key: "latitude", label: "Latitude", type: "Number", validation: { min: -90, max: 90, precision: 8 }, db: { type: "decimal(10,8)", index: "geo" }, categories: ["localizacao"], origin: "hb:property" }, { key: "longitude", label: "Longitude", type: "Number", validation: { min: -180, max: 180, precision: 8 }, db: { type: "decimal(11,8)", index: "geo" }, categories: ["localizacao"], origin: "hb:property" }, { key: "mobiliado", label: "Mobiliado", type: "Boolean", categories: ["caracteristicas"], origin: "hb:property" }, { key: "caracteristicas", label: "Caracter\xEDsticas", type: "String[]", categories: ["caracteristicas"], origin: "hb:property" }, { key: "destaque", label: "Im\xF3vel em destaque", type: "Boolean", categories: ["comercial"], origin: "hb:property" }, { key: "corretor_key", label: "ID do corretor", type: "String", categories: ["corretor"], origin: "hb:property" }, { key: "corretor_nome", label: "Nome do corretor", type: "String", categories: ["corretor"], origin: "hb:property" }, { key: "condominio_key", label: "ID do condom\xEDnio", type: "String", categories: ["condominio"], origin: "hb:property" }, { key: "condominio_nome", label: "Nome do condom\xEDnio", type: "String", categories: ["condominio"], origin: "hb:property" }, { key: "tags", label: "Tags do Im\xF3vel", type: "String[]", categories: ["identificacao"], origin: "hb:property" }, { key: "numero_pessoas", label: "N\xFAmero de pessoas", type: "Number", format: "count", validation: { min: 0 }, categories: ["caracteristicas"], origin: "hb:property" } ] }; // src/schemas/generated/horizon-property-schema-base.zod.ts var import_zod = require("zod"); var HorizonPropertySchemaBaseZod = import_zod.z.object({ reference: import_zod.z.string().describe("Refer\xEAncia"), updated_at: import_zod.z.string().describe("\xDAltima atualiza\xE7\xE3o").optional(), title: import_zod.z.string().max(200).describe("T\xEDtulo"), description: import_zod.z.string().describe("Descri\xE7\xE3o"), seo_slug: import_zod.z.string().describe("Slug SEO").optional(), seo_title: import_zod.z.string().max(60).describe("T\xEDtulo SEO").optional(), seo_description: import_zod.z.string().max(160).describe("Descri\xE7\xE3o SEO").optional(), seo_keywords: import_zod.z.string().max(200).describe("Palavras-chave SEO").optional(), main_image: import_zod.z.any().describe("Imagem principal").optional(), images: import_zod.z.array(import_zod.z.any()).describe("Imagens"), videos: import_zod.z.array(import_zod.z.any()).describe("V\xEDdeos"), virtual_tours: import_zod.z.array(import_zod.z.any()).describe("Tours virtuais"), documents: import_zod.z.array(import_zod.z.any()).describe("Documentos"), currency: import_zod.z.string().describe("Moeda").optional(), unit_area: import_zod.z.string().describe("Unidade de \xE1rea").optional(), unit_distance: import_zod.z.enum(["meters", "km"]).describe("Unidade de dist\xE2ncia").optional(), map_show_proximity: import_zod.z.boolean().describe("Exibir aproximado no mapa").optional(), operacao: import_zod.z.array(import_zod.z.enum(["venda", "locacao", "temporada"])).describe("Opera\xE7\xE3o").optional(), valor_venda: import_zod.z.number().multipleOf(0.01).describe("Valor de venda").optional(), valor_locacao: import_zod.z.number().multipleOf(0.01).describe("Valor de loca\xE7\xE3o").optional(), valor_diaria: import_zod.z.number().multipleOf(0.01).describe("Valor da di\xE1ria").optional(), valor_condominio: import_zod.z.number().multipleOf(0.01).describe("Valor do condom\xEDnio").optional(), valor_iptu: import_zod.z.number().multipleOf(0.01).describe("Valor do IPTU").optional(), area_total: import_zod.z.number().min(0).describe("\xC1rea total").optional(), area_privativa: import_zod.z.number().min(0).describe("\xC1rea privativa").optional(), area_util: import_zod.z.number().min(0).describe("\xC1rea \xFAtil").optional(), dormitorios: import_zod.z.number().min(0).describe("Dormit\xF3rios").optional(), suites: import_zod.z.number().min(0).describe("Su\xEDtes").optional(), banheiros: import_zod.z.number().min(0).describe("Banheiros").optional(), vagas_garagem: import_zod.z.number().min(0).describe("Vagas de garagem").optional(), finalidade: import_zod.z.string().describe("Finalidade").optional(), tipo: import_zod.z.string().describe("Tipo do im\xF3vel").optional(), subtipo: import_zod.z.string().describe("Sub-tipo do im\xF3vel").optional(), endereco_cep: import_zod.z.string().max(9).describe("CEP").optional(), endereco_estado: import_zod.z.string().describe("Estado").optional(), endereco_cidade: import_zod.z.string().describe("Cidade").optional(), endereco_bairro: import_zod.z.string().describe("Bairro").optional(), endereco_logradouro: import_zod.z.string().describe("Logradouro").optional(), endereco_numero: import_zod.z.string().describe("N\xFAmero").optional(), endereco_complemento: import_zod.z.string().describe("Complemento").optional(), endereco_referencia: import_zod.z.string().describe("Refer\xEAncia").optional(), endereco_zona: import_zod.z.string().describe("Zona").optional(), latitude: import_zod.z.number().min(-90).max(90).multipleOf(1e-8).describe("Latitude").optional(), longitude: import_zod.z.number().min(-180).max(180).multipleOf(1e-8).describe("Longitude").optional(), mobiliado: import_zod.z.boolean().describe("Mobiliado").optional(), caracteristicas: import_zod.z.array(import_zod.z.string()).describe("Caracter\xEDsticas").optional(), destaque: import_zod.z.boolean().describe("Im\xF3vel em destaque").optional(), corretor_key: import_zod.z.string().describe("ID do corretor").optional(), corretor_nome: import_zod.z.string().describe("Nome do corretor").optional(), condominio_key: import_zod.z.string().describe("ID do condom\xEDnio").optional(), condominio_nome: import_zod.z.string().describe("Nome do condom\xEDnio").optional(), tags: import_zod.z.array(import_zod.z.string()).describe("Tags do Im\xF3vel").optional(), numero_pessoas: import_zod.z.number().min(0).describe("N\xFAmero de pessoas").optional() }); var safeValidateHorizonPropertySchemaBase = (data) => { return HorizonPropertySchemaBaseZod.safeParse(data); }; // 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