SPB Git forge

spb/uqo-eval

Public
55commits 2branches 0releases
134.4 MBsize
maindefault branch
yesterdaylast push
TypeScript 90.1% JavaScript 3.2% Python 3.2% CSS 1.8% HTML 1.8%
1.7 KB · 23 lines typescript
Raw Blame History
1// UQO Éval — laboratoire pédagogique d'évaluation immobilière2/** Entrées par défaut de la méthode du coût — module PUR (client + serveur + tests). */3import { DEFAULT_PARAMS } from "./taxonomy";4import type { BuildingSpec, CostInput } from "./types";56export function defaultBuilding(): BuildingSpec {7  return {8    type: "detached", quality: "standard", grossFloorAreaSqft: 1800, footprintSqft: null, stories: 2, yearBuilt: null, basement: "unfinished", basementFinishedPct: 0,9    garage: { type: "none", spaces: 0, areaSqft: null }, structure: "wood_frame", foundation: "poured_concrete", siding: { vinyl: 1 }, roof: "asphalt_shingle", roofGeometry: "gable", roofPitch: 6,10    windows: "pvc", windowCount: null, heating: "electric_baseboard", hasAirConditioning: false, hasAirExchanger: true, kitchens: 1, kitchenQuality: "standard", bathrooms: 1, powderRooms: 0, bathroomQuality: "standard",11    bedrooms: null, flooring: {}, deckSqft: 0, drivewaySqft: 0, driveway: "none", fenceLinFt: 0, landscapingSqft: 0, pool: "none", units: 1,12  };13}1415export function defaultInput(): CostInput {16  return {17    mode: "construction", propertyId: null, listingUid: null, address: null, municipality: null, lat: null, lng: null, locationCode: null,18    building: defaultBuilding(), quantityOverrides: {}, excludedAssemblies: [], params: JSON.parse(JSON.stringify(DEFAULT_PARAMS)),19    depreciation: { method: "age_life", effectiveAge: null, economicLife: 60, effectiveAgeSource: "derived", componentConditions: {}, functional: [], externalValueLoss: 0, externalNote: "" },20    land: { value: null, source: "none", rollYear: null, method: "" }, attributeSources: {}, roll: null, priceDate: null,21  };22}23