
function ao(e, t) {
var a = to(),
r = M(a),
h = M(r);
Pt(h, () => t.children ?? ct), k(e, a)
}
const ro = new Intl.NumberFormat(“pt-PT”, {
style: “percent”,
maximumFractionDigits: 0
}),
ho = new Intl.NumberFormat(“pt-PT”, {
minimumFractionDigits: 1,
maximumFractionDigits: 1
}),
wh = new Intl.NumberFormat(“pt-PT”, {
maximumFractionDigits: 0
}),
yh = e => {
const t = Math.abs(Math.round(e)),
a = t >= 1e4 ? String(t).replace(/\B(?=(\d{3})+(?!\d))/g, “.”) : String(t);
return (e < 0 ? “-” : “”) + a
};
function J1(e) {
return e == null || Number.isNaN(e) ? “\u2014” : `\u20AC ${yh(e)}`
}
function so(e) {
return e == null || Number.isNaN(e) ? “\u2014” : yh(e)
}
function no(e) {
return e == null || Number.isNaN(e) ? “\u2014” : ro.format(e)
}
function Zt(e) {
return e == null || Number.isNaN(e) ? “\u2014” : e < 10 ? `${ho.format(e)} h` : `${wh.format(e)} h`
}
function oo(e) {
return e == null || Number.isNaN(e) ? “\u2014” : wh.format(Math.round(e))
}
const Qa = .45,
lo = {
presencial: 22,
hibrido: 9,
teletrabalho: 0
},
Xt = {
metropolitano: 40,
municipal: 30,
ferroviario_verde: 20
},
io = [“transportes”, “gasoleo”, “gasolina”, “eletrico”],
vo = {
transportes: “Transportes p\xFAblicos”,
gasoleo: “Carro a gas\xF3leo”,
gasolina: “Carro a gasolina”,
eletrico: “Carro el\xE9trico”
},
xh = {
transportes: “autocarro”,
gasoleo: “bomba”,
gasolina: “bomba”,
eletrico: “tomada”
},
Ct = [{
pele: “#ffb27a”,
cabelo: “#2b0204”,
roupa: “#2f7fd1”,
estilo: “curto”
}, {
pele: “#c98a52”,
cabelo: “#2b0204”,
roupa: “#5a3d9e”,
estilo: “comprido”
}, {
pele: “#ffe0c2”,
cabelo: “#5c3a1e”,
roupa: “#1f8a70”,
estilo: “chapeu”
}, {
pele: “#8d5524”,
cabelo: “#2b0204”,
roupa: “#b0306f”,
estilo: “comprido”
}],
ea = e => e === “Porto” ? “do Porto” : “de Lisboa”,
co = (e, t) => t !== “transportes” ? “carro” : “transportes p\xFAblicos”,
ie = {
voltar: “VOLTAR”,
recomecar: “RECOME\xC7AR”,
comoJogarTitulo: “Como jogar”,
comoJogar: “Fa\xE7a as escolhas de cada passo: a personagem, onde vai trabalhar e morar, e como se desloca. No fim, mostramos-lhe o custo de vida dessas escolhas e o sal\xE1rio que seria preciso para as sustentar.”
},
Se = {
tag: “SIMULADOR”,
titulo: “RECEBI UMA PROPOSTA”,
premissa: “Aceitou um emprego numa das principais cidades do pa\xEDs. Parece simples, mas depois \xE9 preciso encontrar casa e chegar ao trabalho todos os dias, e isso tem um custo. Fa\xE7a as escolhas e descubra quanto lhe fica a vida ao fim do m\xEAs.”,
comoTitulo: “Como funciona”,
passo1: “Crie a sua personagem e aceite o emprego”,
passo2: “Escolha a cidade para trabalhar, onde morar e como se deslocar”,
passo3: “No fim, mostramos-lhe a fatura do m\xEAs: o que gasta e o que sobra”,
botao: “COME\xC7AR”
},
_h = {
curriculos: {
mensagens: [“A preparar o curr\xEDculo\u2026”, “A enviar candidaturas\u2026”, “A aguardar resposta\u2026”],
feito: “Conseguiu uma proposta de emprego.”,
botao: “CONTINUAR”,
saltar: “AVAN\xC7AR”
},
extrato: {
mensagens: [“A reunir as despesas\u2026”, “A somar a casa e as viagens\u2026”, “A rever o extrato banc\xE1rio\u2026”],
feito: “As suas contas est\xE3o prontas.”,
botao: “VER AS CONTAS”,
saltar: “AVAN\xC7AR”
}
},
ht = {
titulo: “ONDE VAI TRABALHAR”,
texto: “O escrit\xF3rio fica no centro de uma grande cidade. Em qual prefere trabalhar?”,
lisboa: “LISBOA”,
porto: “PORTO”,
continuar: “CONTINUAR”
},
st = {
titulo: “COMO VAI TRABALHAR”,
texto: “Quantos dias vai ao escrit\xF3rio?”,
opcoes: {
presencial: {
rotulo: “PRESENCIAL”,
sub: “Todos os dias no escrit\xF3rio.”
},
hibrido: {
rotulo: “H\xCDBRIDO”,
sub: “Dois dias por semana no escrit\xF3rio.”
},
teletrabalho: {
rotulo: “TELETRABALHO”,
sub: “Sempre a partir de casa.”
}
},
continuar: “CONTINUAR”
},
_e = {
titulo: “ARRENDAR OU COMPRAR”,
texto: “Vai precisar de uma casa. Prefere arrendar ou comprar?”,
nota: “Todos os valores assumem uma casa de 100 m\xB2.”,
arrendar: “ARRENDAR”,
arrendarSub: “Paga uma renda todos os meses.”,
comprar: “COMPRAR”,
comprarSub: “Paga a presta\xE7\xE3o de um cr\xE9dito habita\xE7\xE3o.”,
continuar: “CONTINUAR”
},
nt = {
titulo: “CRIAR PERSONAGEM”,
rotuloNome: “O seu nome”,
placeholderNome: “Opcional”,
escolha: “Escolha a sua personagem”,
botao: “CONTINUAR”
},
Rt = {
texto: e => `Onde quer morar? O trabalho fica no centro ${ea(e)}. Em cada concelho v\xEA o pre\xE7o da casa e a dist\xE2ncia at\xE9 ao trabalho.`,
legendaTitulo: e => `Da ${e===”arrendar”?”renda”:”presta\xE7\xE3o”} mais baixa \xE0 mais alta, em euros`,
rendaPropria: (e, t) => `Mora ${t} e sabe a ${e===”arrendar”?”renda”:”presta\xE7\xE3o”} certa? Introduza-a (opcional).`,
semDados: e => `N\xE3o temos ${e===”arrendar”?”a renda”:”a presta\xE7\xE3o”} deste concelho. Insira um valor para continuar ou escolha outro munic\xEDpio.`,
continuar: “CONTINUAR”
},
Wa = {
titulo: “COMO SE DESLOCA”,
texto: “Para ir at\xE9 ao seu local de trabalho, precisa de se deslocar. Como vai faz\xEA-lo?”,
verContas: “CONTINUAR”
},
ot = {
texto: “Nos transportes p\xFAblicos, paga um passe mensal. Qual usa?”,
rot: “Que passe usa?”,
multi: “Pode escolher mais do que um.”,
outroRot: “Sabe o valor certo do seu passe?”,
outroPlaceholder: “Insira outro valor (opcional)”,
continuar: “VER AS CONTAS”
},
B1 = {
titulo: “AS CONTAS DO M\xCAS”,
mudarIntro: “Mude uma escolha e veja as contas a mudar”,
mudarCidade: “CIDADE”,
mudarCasa: “CASA”,
mudarMunicipio: “MUNIC\xCDPIO”,
mudarRegime: “REGIME”,
mudarTransporte: “TRANSPORTE”,
continuarLer: “Fa\xE7a scroll”,
etiquetaCusto: “Quanto custa”,
porMesLongo: “por m\xEAs”,
decCasa: “em habita\xE7\xE3o”,
decDeslocacao: “em desloca\xE7\xE3o”,
horasViagem: e => `e ${e} em viagem`,
m1Frase: (e, t, a) => `${e?e+”, s”:”S”}egundo as suas escolhas, \xE9 isto que lhe custa morar ${t} e trabalhar ${a}.`,
etiquetaTempo: “O tempo”,
porAno: e => e === “carro” ? `por ano dentro do ${e}` : `por ano nos ${e}`,
m2Frase: e => {
const t = Math.round(e / 8),
a = Math.round(e / 24),
r = h => h === 1 ? “dia” : “dias”;
return `Se fizer este percurso durante 11 meses, equivale a ${t} ${r(t)} de trabalho, ou ${a} ${r(a)} de 24 horas.`
},
etiquetaRendimento: “O rendimento”,
reflexaoIntro: e => `${e===”Porto”?”A fuga do Porto, onde comprar ou arrendar casa passa, pelo menos, os \u20AC1200 mensais,”:”A fuga de Lisboa, onde comprar ou arrendar casa passa facilmente os \u20AC1700 por m\xEAs,”} parece ser a escolha \xF3bvia num pa\xEDs onde um casal que ganhe o sal\xE1rio m\xE9dio l\xEDquido tem pouco mais de \u20AC2500 l\xEDquidos para gerir o seu m\xEAs. No final, v\xE1rios factores pesam: o tamanho da casa, o transporte, o tempo, a conta banc\xE1ria. Ent\xE3o, ser\xE1 a fuga das cidades a op\xE7\xE3o mais acertada?`,
reflexao: “Estes n\xFAmeros s\xF3 ganham sentido ao lado de outra escolha. Valeria a pena morar mais longe para pagar menos, ou mais perto, para poupar horas?”,
compensaSub: “Compare com outro s\xEDtio”,
historias: “CONHE\xC7A HIST\xD3RIAS REAIS”,
suaEscolha: “A sua escolha”,
labelCasa: “Casa”,
labelDeslocacao: “Desloca\xE7\xE3o”,
rendimentoNecessario: “Rendimento necess\xE1rio”,
custoVida: “Custo de vida”,
necessarioRot: e => `Para a habita\xE7\xE3o n\xE3o pesar mais de ${no(e)} do rendimento, o agregado familiar deveria ganhar pelo menos`,
liquidosMes: “l\xEDquidos por m\xEAs”,
labelViagem: “Tempo em viagem”,
porMes: “/m\xEAs”,
equivDias: e => `\u2248 ${oo(e)} ${Math.round(e)===1?”dia”:”dias”} de trabalho de 8 h`,
comoCompara: “Como se compara”,
compSub: “Todos os valores s\xE3o mensais, para o mesmo agregado. A sua escolha est\xE1 a laranja e o s\xEDtio comparado a amarelo.”,
compAdd: “Comparar com:”,
compararOutro: “Comparar outro munic\xEDpio”,
compAddMun: “Outro munic\xEDpio”,
compAddReg: “Outro regime”,
compAddTrans: “Outro transporte”,
compMax: “Chegou ao limite de cen\xE1rios. Remova um para acrescentar outro.”,
comparacaoCentro({
escolheuCentro: e,
cenEscolhido: t,
cenCentro: a,
concEscolhido: r,
cidade: h
}) {
if (e) return `Escolheu morar no centro ${ea(h)}: a casa custa mais, mas quase n\xE3o perde tempo em desloca\xE7\xF5es.`;
if (a?.custo == null || t.custo == null) return `No centro ${ea(h)} n\xE3o h\xE1 dados de pre\xE7o para comparar.`;
const n = t.custo – a.custo,
o = J1(Math.round(Math.abs(n))),
l = t.horas – (a.horas ?? 0),
i = `Face ao centro ${ea(h)}, morar ${r.em_concelho} fica-lhe ${o} mais ${n<0?”barato”:”caro”} por m\xEAs`;
return Math.abs(l) < .05 ? `${i}, sem diferen\xE7a no tempo de desloca\xE7\xF5es.` : l > 0 ? `${i}, mas perde ${Zt(l)} em desloca\xE7\xF5es.` : `${i}, e ainda poupa ${Zt(Math.abs(l))} em desloca\xE7\xF5es.`
}
},
uo = {
k: “#2b0204”,
w: “#fff1e0”,
y: “#ffbf00”,
Y: “#ffe08a”,
c: “#b5831f”,
e: “#a8401a”,
o: “#e65100”,
R: “#a70e13”,
p: “#fff1e0”,
P: “#fffaf0”,
d: “#e8dcc4”
},
I1 = e => e.split(`
`).filter(t => t.length);
I1(`….kkkk….
..kkyyyykk..
.kyYYyyyyck.
.kYyyeeeyck.
kyYyeyyyyyck
kyYeeeeyyyck
kyyyeyyyyyck
kyyeeeeyyyck
kyyyeyyyyyck
.kyyyeeeyck.
.kccyyyycck.
..kkcccckk..
….kkkk….`);
const fo = I1(`..kkkkkkkk..
..kwwwwwwk..
..kwRRRRwk..
kkkwwwwwwkkk
kokwRRRRwkok
kookwwwwkook
koookkkkoook
kooooooooook
kkkkkkkkkkkk`),
$h = I1(`…..kk…..
….kRRk….
…kRRRRk…
..kRRRRRRk..
.kRRRRRRRRk.
kkkkkkkkkkkk
.kwwwwwwwwk.
.kwyywwyywk.
.kwyywwyywk.
.kwwkkkkwwk.
.kwwkookwwk.
.kkkkkkkkkk.`),
po = I1(`kkkkkkkkkk
kwwwwwwwwk
kwRRRRwwwk
kwwwwwwwwk
kwRRRwwRwk
kwwwwwwwwk
kwRRRRwRwk
kwwwwwwwwk
kkkkkkkkkk
kwRRwwyyyk
kwwkwwkwwk
k..k..k..k`),
Mo = I1(`k…….
kk……
kwk…..
kwwk….
kwwwk…
kwwwwk..
kwwwwwk.
kwwwwwwk
kwwwkkkk
kwkkwk..
kk..kwk.
…..kk.`),
Ph = I1(`..w..
..w..
ww.ww
..w..
..w..`),
zo = I1(`…….k
…….k
..k….k
.kk….k
kkkkkkkk
.kk…..
..k…..`),
Ch = I1(`kkkkkkk
.kwwwk.
.kyyyk.
..kyk..
…k…
..kyk..
.kwyyk.
.kyyyk.
kkkkkkk`);
I1(`.kkkkkkkkkkkkkk.
.kPPPPPPPPPPPPk.
.kPRRRRRRRRRPPk.
.kPPPPPPPPPPPPk.
.kPRRRRRRRRRRPk.
.kPPPPPPPPPPPPk.
.kPRRRRRRRPPPPk.
.kPPPPPPPPPPPPk.
.kkkkkkkkkkkkkk.
……kkkk……
……keek……
..kkkkkkkkkkkk..
.keeeeeeeeeeeek.
..kkkkkkkkkkkk..`);
const mo = I1(`.kkk.
k…k
….k
..kk.
..k..
…..
..k..`),
go = I1(`…k…
..kk…
.kkk…
kkkkkk.
.kkk…
..kk…
…k…`),
ko = I1(`…k…
…kk..
…kkk.
.kkkkkk
…kkk.
…kk..
…k…`),
Rh = I1(`kkkkkkk
.kkkkk.
..kkk..
…k…`);
I1(`…k…
…k…
…k…
…k…
k..k..k
.k.k.k.
..kkk..`);
const Ah = I1(`.kkkk.k
k….kk
k…kkk
k……
k…..k
.k…k.
..kkk..`);
var bo = Y1(“
wo = Y1(‘
yo = Y1(‘‘);
function L1(e, t) {
u1(t, !0);
let a = N(t, “map”, 19, () => []),
r = N(t, “palette”, 3, uo),
h = N(t, “cell”, 3, 4),
n = N(t, “titulo”, 3, “”),
o = N(t, “classe”, 3, “”),
l = N(t, “sombra”, 3, !1);
const i = y(() => a().length),
v = y(() => a().reduce((g, m) => Math.max(g, m.length), 0)),
p = y(() => l() ? `filter:drop-shadow(${h()}px ${h()}px 0 #d9c7a6)` : “”);
var c = yo(),
d = M(c);
{
var u = g => {
var m = bo(),
b = O(m, !0);
P(() => x(b, n())), k(g, m)
};
Q(d, g => {
n() && g(u)
})
}
var z = f(d);
i1(z, 17, a, R1, (g, m, b) => {
var _ = me(),
w = S1(_);
i1(w, 17, () => s(m).split(“”), R1, (C, R, A) => {
var S = me(),
F = S1(S);
{
var J = q => {
var V = wo();
j(V, “x”, A), j(V, “y”, b), P(() => j(V, “fill”, r()[s(R)])), k(q, V)
};
Q(F, q => {
r()[s(R)] && q(J)
})
}
k(C, S)
}), k(g, _)
}), P(() => {
k1(c, 0, Dn(o()), “svelte-huaby4”), j(c, “width”, s(v) * h()), j(c, “height”, s(i) * h()), j(c, “viewBox”, `0 0 ${s(v)??””} ${s(i)??””}`), j(c, “role”, n() ? “img” : “presentation”), j(c, “aria-label”, n() || void 0), j(c, “aria-hidden”, n() ? void 0 : “true”), n1(c, s(p))
}), k(e, c), d1()
}
var xo = Y1(‘
function Ga(e, t) { u1(t, !0); let a = N(t, “tamanho”, 3, 72), r = N(t, “andar”, 3, !1), h = N(t, “pele”, 3, “#ffb27a”), n = N(t, “cabelo”, 3, “#2b0204”), o = N(t, “roupa”, 3, “#e65100”), l = N(t, “estilo”, 3, “curto”); const i = w => w.map(C => C.padEnd(16, “.”).slice(0, 16)), v = { curto: [“…………….”, “…..cccc…….”, “….cccccc……”, “….cppppc……”, “….cpppcc……”, “….cppppc……”, “…..pppp…….”], comprido: [“…………….”, “…..cccc…….”, “….cccccc……”, “…ccppppcc…..”, “…ccpppccc…..”, “…ccppppcc…..”, “….cppppc……”], chapeu: [“…………….”, “….cccccc……”, “…cccccccc…..”, “…..cccc…….”, “….pppppp……”, “….ppppcp……”, “….pppppp……”] }, p = [“….rrrrrr……”, “…rrrrrrrr…..”, “..rrrrrrrrrr….”, “..rprrrrrrpr….”, “..rprrrrrrpr….”, “…rrrrrrrr…..”, “….rrrrrr……”, “….rr..rr……”, “….rr..rr……”, “….rr..rr……”], c = y(() => […v[l()] ?? v.curto, …p]), d = y(() => i([…s(c), “….rr..rr……”, “…ss….ss…..”, “…………….”])), u = y(() => i([…s(c), “…rr….rr…..”, “..ss……ss….”, “…………….”])), z = y(() => ({ c: n(), p: h(), r: o(), s: “#2b0204” })), g = 16, m = 20; var b = $o(); let _; i1(b, 21, () => [s(d), s(u)], R1, (w, C, R) => { var A = _o(); k1(A, 0, `frame f${R}`, “svelte-x57pi4”), j(A, “viewBox”, `0 0 ${g} ${m}`), i1(A, 21, () => s(C), R1, (S, F, J) => { var q = me(), V = S1(q); i1(V, 17, () => s(F).split(“”), R1, (D, H, t1) => { var o1 = me(), z1 = S1(o1); { var p1 = O1 => { var E1 = xo(); j(E1, “x”, t1), j(E1, “y”, J), P(() => j(E1, “fill”, s(z)[s(H)])), k(O1, E1) }; Q(z1, O1 => { s(z)[s(H)] && O1(p1) }) } k(D, o1) }), k(S, q) }), P(() => { j(A, “width”, a()), j(A, “height”, a() / g * m) }), k(w, A) }), P(() => { _ = k1(b, 1, “personagem svelte-x57pi4”, null, _, { andar: r() }), n1(b, `width:${a()}px;height:${a()/g*m}px`) }), k(e, b), d1() } var Po = T(‘‘);
function At(e, t) { u1(t, !0); let a = N(t, “alvo”, 3, null), r = N(t, “parado”, 3, !1), h = N(t, “texto”, 3, “Fa\xE7a scroll”);
function n() { a()?.scrollIntoView?.({ behavior: “smooth”, block: “start” }) } var o = Po(); let l; var i = M(o), v = O(i, !0), p = f(i, 2), c = M(p); L1(c, { get map() { return Rh }, cell: 3, palette: { k: “var(–economia)” } }), P(() => { l = k1(o, 1, “seta-momento svelte-1x75ren”, null, l, { parado: r() }), x(v, h()) }), N1(“click”, o, n), k(e, o), d1() } xe([“click”]); var Co = T(”), Ro = T(‘ ‘), Ao = T(‘ ‘), So = T(““), No = T(”), Oo = T(‘‘), Eo = T(”), To = T(”), jo = T(”);
function qo(e, t) { u1(t, !0); let a = N(t, “titulo”, 3, “A PROPOSTA”), r = N(t, “recomecar”, 3, null), h = N(t, “passo”, 3, 0), n = N(t, “total”, 3, 0), o = N(t, “avatar”, 3, null), l = N(t, “nome”, 3, “”), i = N(t, “dicaScroll”, 3, !0), v = r1(!1); const p = y(() => Array.from({ length: n() }, (U, B) => B + 1)); let c = r1(null), d = r1(null), u = r1(!1), z = r1(!1); oe(() => { if (typeof IntersectionObserver > “u”) return; const U = new IntersectionObserver(B => { for (const E of B) E.target === s(c) ? K(u, E.isIntersecting, !0) : E.target === s(d) && K(z, E.isIntersecting, !0) }, { threshold: 0 }); return s(c) && U.observe(s(c)), s(d) && U.observe(s(d)), () => U.disconnect() }); const g = y(() => s(u) && !s(z)); var m = jo(), b = M(m); { var _ = U => { var B = Co(), E = M(B); Pt(E, () => t.canto), k(U, B) }; Q(b, U => { t.canto && U(_) }) } var w = f(b, 2), C = M(w), R = M(C), A = M(R), S = M(A); { var F = U => { var B = Ro(), E = M(B), b1 = M(E); Ga(b1, { tamanho: 24, get pele() { return o().pele }, get cabelo() { return o().cabelo }, get roupa() { return o().roupa }, get estilo() { return o().estilo } }); var I = f(E, 2), W = O(I, !0); P(h1 => x(W, h1), [() => l()?.trim() || a()]), k(U, B) }, J = U => { var B = Ao(), E = O(B, !0); P(() => x(E, a())), k(U, B) }; Q(S, U => { o() && h() >= 1 ? U(F) : U(J, -1) }) } var q = f(A, 2); { var V = U => { var B = No(); i1(B, 21, () => s(p), R1, (E, b1) => { var I = So(); let W; P(() => W = k1(I, 1, “pip svelte-n403tr”, null, W, { feito: s(b1) < h(), atual: s(b1) === h() })), k(E, I) }), P(() => { j(B, “aria-valuenow”, h()), j(B, “aria-valuemax”, n()), j(B, “aria-label”, `Passo ${h()} de ${n()}`) }), k(U, B) }; Q(q, U => { h() >= 1 && n() > 0 && U(V) }) } var D = f(q, 2), H = M(D); { var t1 = U => { var B = Oo(), E = M(B); L1(E, { get map() { return Ah }, cell: 3 }), N1(“click”, B, function(…b1) { r()?.apply(this, b1) }), k(U, B) }; Q(H, U => { r() && U(t1) }) } var o1 = f(H, 2), z1 = M(o1); L1(z1, { get map() { return mo }, cell: 3 }); var p1 = f(R, 2), O1 = M(p1); Pt(O1, () => t.children ?? ct); var E1 = f(w, 2); Ae(E1, U => K(d, U), () => s(d)); var L = f(E1, 2); { var Z = U => { var B = Eo(), E = M(B); At(E, { get alvo() { return s(d) } }), k(U, B) }; Q(L, U => { i() && s(g) && U(Z) }) } var l1 = f(L, 2); { var c1 = U => { var B = To(), E = M(B), b1 = M(E), I = O(b1, !0), W = f(b1, 2), h1 = O(W, !0), $1 = f(W, 2); P(() => { x(I, ie.comoJogarTitulo), x(h1, ie.comoJogar) }), N1(“click”, B, () => K(v, !1)), N1(“keydown”, B, M1 => M1.key === “Escape” && K(v, !1)), N1(“click”, E, M1 => M1.stopPropagation()), N1(“click”, $1, () => K(v, !1)), k(U, B) }; Q(l1, U => { s(v) && U(c1) }) } Ae(m, U => K(c, U), () => s(c)), N1(“click”, o1, () => K(v, !0)), k(e, m), d1() } xe([“click”, “keydown”]); var Sh = T(‘‘), Io = T(‘‘), Lo = T(‘‘);
function v1(e, t) { let a = N(t, “selecionado”, 3, !1), r = N(t, “variante”, 3, “normal”), h = N(t, “seta”, 3, null), n = N(t, “disabled”, 3, !1), o = N(t, “type”, 3, “button”), l = N(t, “ariaPressed”, 3, void 0), i = N(t, “title”, 3, void 0); const v = “var(–tinta)”, p = y(() => h() ?? (r() === “primario” ? “dir” : null)); var c = Lo(); let d; var u = M(c), z = f(M(u), 2); { var g = A => { var S = Sh(), F = M(S); L1(F, { get map() { return go }, palette: { k: v }, cell: 3 }), k(A, S) }; Q(z, A => { s(p) === “esq” && A(g) }) } var m = f(z, 2); { var b = A => { var S = Io(); k(A, S) }; Q(m, A => { r() === “opcao” && A(b) }) } var _ = f(m, 2), w = M(_); Pt(w, () => t.children ?? ct); var C = f(_, 2); { var R = A => { var S = Sh(), F = M(S); L1(F, { get map() { return ko }, palette: { k: v }, cell: 3 }), k(A, S) }; Q(C, A => { s(p) === “dir” && A(R) }) } P(() => { j(c, “type”, o()), c.disabled = n(), j(c, “title”, i()), j(c, “aria-pressed”, l()), d = k1(c, 1, `botao ${r()??””}`, “svelte-i7ejp8”, d, { selecionado: a(), “so-seta”: s(p) === “esq” }) }), N1(“click”, c, function(…A) { t.onclick?.apply(this, A) }), k(e, c) } xe([“click”]); const V1 = e => e.map(t => t.padEnd(16, “.”).slice(0, 16)), Nh = { casa: V1([“…………….”, “…….11…….”, “……1111……”, “…..112211…..”, “….11222211….”, “…1122222211…”, “..112222222211..”, “.11222222222211.”, “.11111111111111.”, “.11122211122111.”, “.11122211122111.”, “.11122211111111.”, “.11111111111111.”, “.11111111111111.”, “…………….”, “…………….”]), chave: V1([“…………….”, “….1111……..”, “…11..11…….”, “..11….11……”, “..11….11……”, “..11….11……”, “…11..11…….”, “….1111……..”, “…..11………”, “…..11………”, “…..11………”, “…..1111…….”, “…..11………”, “…..1111…….”, “…………….”, “…………….”]), moeda: V1([“…………….”, “…..111111…..”, “…1122222211…”, “..112221222211..”, “.11222212122211.”, “.12221212121221.”, “.12212121212121.”, “.12121212121221.”, “.12212121212121.”, “.12221212121221.”, “.11222121222211.”, “..112221222211..”, “…1122222211…”, “…..111111…..”, “…………….”, “…………….”]), autocarro: V1([“…………….”, “..1111111111….”, “.111111111111…”, “.12211221221…”, “.12211221221…”, “.111111111111…”, “.111111111111…”, “.111111111111…”, “.111111111111…”, “.112111111211…”, “.111111111111…”, “..1.111111.1….”, “…111..111…..”, “..12.1..1.21….”, “…1…..1……”, “…………….”]), comboio: V1([“…………….”, “….11111111….”, “…1111111111…”, “..111111111111..”, “..112211221111..”, “..112211221111..”, “..111111111111..”, “..111111111111..”, “..111111111112..”, “..111111111112..”, “..1111111111111.”, “..11.111111.111.”, “…1.1….1.1…”, “..12.1….1.21..”, “…1…….1….”, “…………….”]), carro: V1([“…………….”, “…………….”, “…………….”, “……1111……”, “…..122221…..”, “…1111111111…”, “..111111111111..”, “.11111111111111.”, “.11111111111111.”, “..111111111111..”, “…11……11…”, “..1221….1221..”, “..1221….1221..”, “…11……11…”, “…………….”, “…………….”]), bomba: V1([“…………….”, “..111111…1….”, “..1….1..111…”, “..1.11.1..1.1…”, “..1.11.1.111….”, “..1….1..1…..”, “..111111..1…..”, “..1….1.11…..”, “..1….1.1……”, “..1….111……”, “..1….1……..”, “..11111111……”, “..111111111…..”, “…………….”, “…………….”, “…………….”]), tomada: V1([“…………….”, “…………….”, “….11..11……”, “….11..11……”, “…111111111….”, “…111111111….”, “…111111111….”, “….1111111…..”, “…..11111……”, “…….1……..”, “……221…….”, “…..22………”, “….22……….”, “…2…………”, “…………….”, “…………….”]), portagem: V1([“…………….”, “…11………..”, “…11.222222222.”, “…11.222222222.”, “…11………..”, “…11………..”, “…11………..”, “…11………..”, “…11………..”, “…11………..”, “.1111111……..”, “.1111111……..”, “.1111111……..”, “…………….”, “…………….”, “…………….”]), relogio: V1([“…………….”, “…..111111…..”, “…11122211111..”, “..11122211111…”, “.1112221111111..”, “.1122211111111..”, “.1112211111111..”, “.1111211111111..”, “.1111221111111..”, “.1111112111111..”, “.1111111111111..”, “..111111111111..”, “…1111111111…”, “…..111111…..”, “…………….”, “…………….”]), calendario: V1([“…………….”, “…1…….1….”, “…1…….1….”, “.1111111111111..”, “.1111111111111..”, “.1122112211221..”, “.1122112211221..”, “.1111111111111..”, “.1122112211221..”, “.1122112211221..”, “.1111111111111..”, “.1122112211221..”, “.1122112211221..”, “.1111111111111..”, “…………….”, “…………….”]), escritorio: V1([“…………….”, “…1111111111…”, “…1111111111…”, “…1221221221…”, “…1221221221…”, “…1111111111…”, “…1221221221…”, “…1221221221…”, “…1111111111…”, “…1221221221…”, “…1221221221…”, “…1111111111…”, “…1111221111…”, “…1111221111…”, “..11111111111..”, “…………….”]), envelope: V1([“…………….”, “…………….”, “.11111111111111.”, “.12111111111121.”, “.11211111111211.”, “.11121111112111.”, “.11112111121111.”, “.11111222211111.”, “.11112111121111.”, “.11121111112111.”, “.11211111111211.”, “.12111111111121.”, “.11111111111111.”, “…………….”, “…………….”, “…………….”]), carteira: V1([“…………….”, “…………….”, “..111111111111..”, “.11111111111111.”, “.11111111111111.”, “.11111111111221.”, “.11111111111121.”, “.11111111111121.”, “.11111111111221.”, “.11111111111111.”, “.11111111111111.”, “..111111111111..”, “…………….”, “…………….”, “…………….”, “…………….”]), euro: V1([“…………….”, “……111111….”, “…..11….11…”, “….11……….”, “….11……….”, “.1111111……..”, “….11……….”, “.111111………”, “….11……….”, “….11……….”, “…..11….11…”, “……111111….”, “…………….”, “…………….”, “…………….”, “…………….”]) }; var Vo = Y1(“
function Ye(e, t) { u1(t, !0); let a = N(t, “tamanho”, 3, 32), r = N(t, “cor”, 3, “currentColor”), h = N(t, “realce”, 3, “var(–amarelo)”), n = N(t, “titulo”, 3, “”), o = N(t, “sombra”, 3, !0); const l = y(() => Nh[t.nome] ?? []), i = y(() => Math.max(2, Math.round(a() / 16))), v = y(() => o() ? `display:block;filter:drop-shadow(${s(i)}px ${s(i)}px 0 #d9c7a6)` : “display:block”); var p = Do(), c = M(p); { var d = z => { var g = Vo(), m = O(g, !0); P(() => x(m, n())), k(z, g) }; Q(c, z => { n() && z(d) }) } var u = f(c); i1(u, 17, () => s(l), R1, (z, g, m) => { var b = me(), _ = S1(b); i1(_, 17, () => s(g).split(“”), R1, (w, C, R) => { var A = me(), S = S1(A); { var F = J => { var q = Fo(); j(q, “x”, R), j(q, “y”, m), P(() => j(q, “fill”, s(C) === “2” ? h() : r())), k(J, q) }; Q(S, J => { (s(C) === “1” || s(C) === “2”) && J(F) }) } k(w, A) }), k(z, b) }), P(() => { j(p, “width”, a()), j(p, “height”, a()), j(p, “role”, n() ? “img” : “presentation”), j(p, “aria-label”, n() || void 0), j(p, “aria-hidden”, n() ? void 0 : “true”), n1(p, s(v)) }), k(e, p), d1() } var Bo = T(”), Uo = T(”);
function Yo(e, t) { let a = N(t, “tamanho”, 3, 232), r = N(t, “ativo”, 3, !0); const h = y(() => a() / 256); var n = Uo(), o = M(n), l = f(o, 2); let i; var v = f(l, 2); { var p = c => { var d = Bo(), u = M(d), z = f(u, 2), g = f(z, 2), m = f(g, 2), b = f(m, 2); P(() => { n1(d, `left:${28*s(h)}px;top:${28*s(h)}px;gap:${8*s(h)}px`), n1(u, `height:${8*s(h)}px`), n1(z, `height:${8*s(h)}px`), n1(g, `height:${8*s(h)}px`), n1(m, `height:${8*s(h)}px`), n1(b, `width:${8*s(h)}px;height:${12*s(h)}px`) }), k(c, d) }; Q(v, c => { r() && c(p) }) } P(() => { n1(n, `width:${a()}px;height:${a()*.75}px`), j(o, “width”, a()), j(o, “height”, a() * .75), i = k1(l, 1, “led svelte-5tsl3t”, null, i, { on: r() }), n1(l, `left:${220*s(h)}px;top:${140*s(h)}px;width:${12*s(h)}px;height:${8*s(h)}px`) }), k(e, n) } var Jo = T(”), Qo = T(”), Wo = T(”), Go = T(”), Ho = T(““), Ko = T(‘ ‘, 1), Zo = T(”), Xo = T(‘
‘);
function Oh(e, t) { u1(t, !0); const a = 12; let r = N(t, “icone”, 3, “envelope”), h = N(t, “cena”, 3, “pc”); const n = typeof window < “u” && window.matchMedia && window.matchMedia(“(prefers-reduced-motion: reduce)”).matches; let o = r1(ne(n ? 100 : 0)), l = r1(ne(n)); const i = y(() => Math.round(s(o) / 100 * a)), v = y(() => Math.min(t.config.mensagens.length – 1, Math.floor(s(o) / (100 / t.config.mensagens.length)))); oe(() => { if (n) return; const R = setInterval(() => { K(o, Math.min(100, s(o) + 2.5), !0), s(o) >= 100 && (K(l, !0), clearInterval(R)) }, 100); return () => clearInterval(R) }); var p = Xo(), c = M(p), d = M(c); { var u = R => { var A = Wo(), S = M(A), F = M(S); Ye(F, { nome: “euro”, tamanho: 18, cor: “var(–tinta)”, realce: “var(–economia)” }); var J = f(S, 2); { var q = D => { var H = Jo(); k(D, H) }, V = D => { var H = Qo(), t1 = M(H); Ye(t1, { get nome() { return r() }, tamanho: 40, cor: “var(–economia)”, realce: “var(–tinta)” }), k(D, H) }; Q(J, D => { s(l) ? D(V, -1) : D(q) }) } k(R, A) }, z = R => { var A = Go(), S = M(A), F = M(S); L1(F, { get map() { return Ph }, cell: 4 }); var J = f(S, 2); { let D = y(() => !s(l)); Yo(J, { tamanho: 224, get ativo() { return s(D) } }) } var q = f(J, 2), V = M(q); L1(V, { get map() { return Ph }, cell: 3 }), k(R, A) }; Q(d, R => { h() === “extrato” ? R(u) : R(z, -1) }) } var g = f(d, 2); { var m = R => { var A = Ko(), S = S1(A), F = M(S), J = M(F); L1(J, { get map() { return Ch }, cell: 3 }); var q = f(F, 2), V = O(q, !0), D = f(S, 2); i1(D, 21, () => Array(a), R1, (H, t1, o1) => { var z1 = Ho(); let p1; P(() => p1 = k1(z1, 1, “bloco svelte-k3acpr”, null, p1, { cheio: o1 < s(i) })), k(H, z1) }), P(H => { x(V, t.config.mensagens[s(v)]), j(D, “aria-valuenow”, H) }, [() => Math.round(s(o))]), k(R, A) }, b = R => { var A = Zo(), S = O(A, !0); P(() => x(S, t.config.feito)), k(R, A) }; Q(g, R => { s(l) ? R(b, -1) : R(m) }) } var _ = f(c, 2), w = M(_); v1(w, { get onclick() { return t.voltar }, seta: “esq”, children: (R, A) => { var S = s1(); P(() => x(S, ie.voltar)), k(R, S) }, $$slots: { default: !0 } }); var C = f(w, 2); v1(C, { variante: “primario”, get onclick() { return t.avancar }, children: (R, A) => { var S = s1(); P(() => x(S, s(l) ? t.config.botao : t.config.saltar)), k(R, S) }, $$slots: { default: !0 } }), k(e, p), d1() } var el = T(‘‘), tl = T(‘‘);
function al(e, t) {
let a = N(t, “variante”, 3, “base”),
r = N(t, “disabled”, 3, !1),
h = N(t, “ariaLabel”, 3, void 0),
n = N(t, “type”, 3, “button”);
var o = tl();
let l;
var i = M(o),
v = f(M(i), 2);
{
var p = u => {
var z = el(),
g = M(z);
L1(g, {
get map() {
return zo
},
cell: 3
}), k(u, z)
};
Q(v, u => {
a() === “cta” && u(p)
})
}
var c = f(v, 2),
d = M(c);
Pt(d, () => t.children ?? ct), P(() => {
l = k1(o, 1, `pb ${a()??””}`, “svelte-96g6mr”, l, {
cta: a() === “cta”
}), j(o, “type”, n()), o.disabled = r(), j(o, “aria-label”, h())
}), N1(“click”, o, function(…u) {
t.onclick?.apply(this, u)
}), k(e, o)
}
xe([“click”]);
var Eh = Y1(‘
function hl(e, t) { u1(t, !0); let a = N(t, “tamanho”, 3, 52); const r = “#2b0204”, h = Nh.euro ?? [], n = d => d === “1” || d === “2”, o = (() => { const d = h.map(b => b.split(“”)), u = d.length, z = Math.max(0, …d.map(b => b.length)), g = (b, _) => _ >= 0 && _ < u && b >= 0 && b < d[_].length && n(d[_][b]), m = []; for (let b = 0; b < u; b++) for (let _ = 0; _ < z; _++) { if (g(_, b)) continue; let w = !1; for (let C = -1; C <= 1 && !w; C++) for (let R = -1; R <= 1 && !w; R++)(R || C) && g(_ + R, b + C) && (w = !0); w && m.push({ x: _, y: b }) } return m })(), l = d => d === “2” ? “#fff1e0” : “#ffbf00”; var i = rl(), v = M(i); j(v, “viewBox”, “0 0 16 16”); var p = M(v); i1(p, 17, () => o, R1, (d, u) => { var z = Eh(); j(z, “fill”, r), P(() => { j(z, “x”, s(u).x), j(z, “y”, s(u).y) }), k(d, z) }); var c = f(p); i1(c, 17, () => h, R1, (d, u, z) => { var g = me(), m = S1(g); i1(m, 17, () => s(u).split(“”), R1, (b, _, w) => { var C = me(), R = S1(C); { var A = F => { var J = Eh(); j(J, “x”, w), j(J, “y”, z), P(q => j(J, “fill”, q), [() => l(s(_))]), k(F, J) }, S = y(() => n(s(_))); Q(R, F => { s(S) && F(A) }) } k(b, C) }), k(d, g) }), P(() => { n1(i, `width:${a()}px;height:${a()}px`), j(v, “width”, a()), j(v, “height”, a()) }), k(e, i), d1() } var sl = T(‘
‘), nl = T(‘
‘);
function ol(e, t) { u1(t, !0); const a = [{ sprite: fo, txt: Se.passo1 }, { sprite: $h, txt: Se.passo2 }, { sprite: po, txt: Se.passo3 }]; var r = nl(), h = M(r), n = M(h); hl(n, { tamanho: 48 }); var o = f(h, 2), l = O(o, !0), i = f(o, 2), v = O(i, !0), p = f(i, 2), c = O(p, !0), d = f(p, 2), u = M(d), z = O(u, !0), g = f(u, 2); i1(g, 21, () => a, R1, (R, A) => { var S = sl(), F = M(S), J = M(F); L1(J, { get map() { return s(A).sprite }, cell: 3 }); var q = f(F, 2), V = O(q, !0); P(() => x(V, s(A).txt)), k(R, S) }); var m = f(d, 2), b = M(m), _ = M(b); al(_, { variante: “cta”, get onclick() { return t.avancar }, children: (R, A) => { var S = s1(); P(() => x(S, Se.botao)), k(R, S) }, $$slots: { default: !0 } }); var w = f(_, 2), C = M(w); L1(C, { get map() { return Mo }, cell: 4 }), P(() => { x(l, Se.tag), x(v, Se.titulo), x(c, Se.premissa), x(z, Se.comoTitulo) }), k(e, r), d1() } var ll = T(‘‘), il = T(‘
‘);
function vl(e, t) { u1(t, !0); let a = N(t, “estado”, 7); var r = il(), h = M(r), n = O(h, !0), o = f(h, 2), l = M(o), i = O(l, !0), v = f(l, 2), p = f(o, 2), c = O(p, !0), d = f(p, 2); i1(d, 21, () => Ct, R1, (m, b, _) => { var w = ll(); let C; j(w, “aria-label”, `Personagem ${_+1}`); var R = M(w); let A; var S = M(R); { let F = y(() => a().avatar === _ ? 64 : 52); Ga(S, { get tamanho() { return s(F) }, get pele() { return s(b).pele }, get cabelo() { return s(b).cabelo }, get roupa() { return s(b).roupa }, get estilo() { return s(b).estilo } }) } P(() => { C = k1(w, 1, “opcao svelte-6nek8t”, null, C, { ativa: a().avatar === _ }), j(w, “aria-checked”, a().avatar === _), A = k1(R, 1, “av svelte-6nek8t”, null, A, { respira: a().avatar === _ }) }), N1(“click”, w, () => a().avatar = _), k(m, w) }); var u = f(d, 2), z = M(u); v1(z, { get onclick() { return t.voltar }, seta: “esq”, children: (m, b) => { var _ = s1(); P(() => x(_, ie.voltar)), k(m, _) }, $$slots: { default: !0 } }); var g = f(z, 2); v1(g, { variante: “primario”, get onclick() { return t.avancar }, children: (m, b) => { var _ = s1(); P(() => x(_, nt.botao)), k(m, _) }, $$slots: { default: !0 } }), P(() => { x(n, nt.titulo), x(i, nt.rotuloNome), j(v, “placeholder”, nt.placeholderNome), x(c, nt.escolha), j(d, “aria-label”, nt.escolha) }), Ba(v, () => a().nome, m => a().nome = m), k(e, r), d1() } xe([“click”]); var cl = T(‘
‘);
function ul(e, t) { u1(t, !0); let a = N(t, “estado”, 7);
function r(g) { a().cidade = g, a().area = g } var h = cl(), n = M(h), o = O(n, !0), l = f(n, 2), i = O(l, !0), v = f(l, 2), p = M(v); { let g = y(() => a().cidade === “Lisboa”), m = y(() => a().cidade === “Lisboa”); v1(p, { variante: “opcao”, get selecionado() { return s(g) }, get ariaPressed() { return s(m) }, onclick: () => r(“Lisboa”), children: (b, _) => { var w = s1(); P(() => x(w, ht.lisboa)), k(b, w) }, $$slots: { default: !0 } }) } var c = f(p, 2); { let g = y(() => a().cidade === “Porto”), m = y(() => a().cidade === “Porto”); v1(c, { variante: “opcao”, get selecionado() { return s(g) }, get ariaPressed() { return s(m) }, onclick: () => r(“Porto”), children: (b, _) => { var w = s1(); P(() => x(w, ht.porto)), k(b, w) }, $$slots: { default: !0 } }) } var d = f(v, 2), u = M(d); v1(u, { get onclick() { return t.voltar }, seta: “esq”, children: (g, m) => { var b = s1(); P(() => x(b, ie.voltar)), k(g, b) }, $$slots: { default: !0 } }); var z = f(u, 2); { let g = y(() => !a().cidade); v1(z, { variante: “primario”, get disabled() { return s(g) }, get onclick() { return t.avancar }, children: (m, b) => { var _ = s1(); P(() => x(_, ht.continuar)), k(m, _) }, $$slots: { default: !0 } }) } P(() => { x(o, ht.titulo), x(i, ht.texto), j(v, “aria-label”, ht.titulo) }), k(e, h), d1() } var dl = T(‘ ‘), fl = T(‘
‘);
function pl(e, t) { u1(t, !0); let a = N(t, “estado”, 7); const r = [“presencial”, “hibrido”, “teletrabalho”]; var h = fl(), n = M(h), o = O(n, !0), l = f(n, 2), i = O(l, !0), v = f(l, 2); i1(v, 21, () => r, R1, (u, z) => { { let g = y(() => a().regime === s(z)), m = y(() => a().regime === s(z)); v1(u, { variante: “opcao”, get selecionado() { return s(g) }, get ariaPressed() { return s(m) }, onclick: () => a().regime = s(z), children: (b, _) => { var w = dl(), C = M(w), R = O(C, !0), A = f(C, 2), S = O(A, !0); P(() => { x(R, st.opcoes[s(z)].rotulo), x(S, st.opcoes[s(z)].sub) }), k(b, w) }, $$slots: { default: !0 } }) } }); var p = f(v, 2), c = M(p); v1(c, { get onclick() { return t.voltar }, seta: “esq”, children: (u, z) => { var g = s1(); P(() => x(g, ie.voltar)), k(u, g) }, $$slots: { default: !0 } }); var d = f(c, 2); { let u = y(() => !a().regime); v1(d, { variante: “primario”, get disabled() { return s(u) }, get onclick() { return t.avancar }, children: (z, g) => { var m = s1(); P(() => x(m, st.continuar)), k(z, m) }, $$slots: { default: !0 } }) } P(() => { x(o, st.titulo), x(i, st.texto), j(v, “aria-label”, st.titulo) }), k(e, h), d1() } const Ml = “https://docs.google.com/spreadsheets/d/e/2PACX-1vQMpYQLYwrmlwdgIMZ-T6NQdUvMJ2FbGeZ6VMmLQFMdqVhcNn1CSbNgtkWYdy1i8SqtD_WEk5Tf34L_/pub?output=csv”; async function zl() { try { const e = await fetch(Ml, { cache: “no-store” }); if (!e.ok) throw new Error(`HTTP ${e.status}`); return await e.text() } catch (e) { return console.error(“N\xE3o foi poss\xEDvel obter os dados da folha:”, e), “” } } const ml = { Lisboa: “em Lisboa”, Amadora: “na Amadora”, Oeiras: “em Oeiras”, Sintra: “em Sintra”, Cascais: “em Cascais”, Mafra: “em Mafra”, Loures: “em Loures”, Odivelas: “em Odivelas”, “Vila Franca de Xira”: “em Vila Franca de Xira”, Seixal: “no Seixal”, Sesimbra: “em Sesimbra”, Set\u00FAbal: “em Set\xFAbal”, Montijo: “no Montijo”, Almada: “em Almada”, Alcochete: “em Alcochete”, Barreiro: “no Barreiro”, Moita: “na Moita”, Palmela: “em Palmela”, Porto: “no Porto”, Arouca: “em Arouca”, Espinho: “em Espinho”, Maia: “na Maia”, Gondomar: “em Gondomar”, “S\xE3o Jo\xE3o da Madeira”: “em S\xE3o Jo\xE3o da Madeira”, Matosinhos: “em Matosinhos”, Valongo: “em Valongo”, “Vila do Conde”: “em Vila do Conde”, “Vila Nova de Gaia”: “em Vila Nova de Gaia”, “Santa Maria da Feira”: “em Santa Maria da Feira”, “Santo Tirso”: “em Santo Tirso”, Paredes: “em Paredes”, “P\xF3voa de Varzim”: “na P\xF3voa de Varzim”, Trofa: “na Trofa”, “Vale de Cambra”: “em Vale de Cambra”, “Oliveira de Azem\xE9is”: “em Oliveira de Azem\xE9is” };
function gl(e) { const t = []; let a = “”, r = [], h = !1; const n = e.replace(/\r\n?/g, ` `); for (let o = 0; o < n.length; o++) { const l = n[o]; h ? l === ‘”‘ ? n[o + 1] === ‘”‘ ? (a += ‘”‘, o++) : h = !1 : a += l : l === ‘”‘ ? h = !0 : l === “,” ? (r.push(a), a = “”) : l === ` ` ? (r.push(a), t.push(r), r = [], a = “”) : a += l } return (a !== “” || r.length) && (r.push(a), t.push(r)), t.filter(o => o.length > 1 || o.length === 1 && o[0] !== “”) } const Th = e => (e ?? “”).normalize(“NFD”).replace(/[\u0300-\u036f]/g, “”).toLowerCase().replace(/\s+/g, ” “).trim(), Q1 = e => { const t = (e ?? “”).trim(); return t === “” ? “” : +t };
function kl(e) { const t = gl(e); if (!t.length) return []; const a = t[0], r = new Map(a.map((i, v) => [Th(i), v])), h = i => r.get(Th(i)) ?? -1, n = { area: “\xC1rea”, concelho: “Concelho”, tempo_carro_total_min: “Carro: tempo total em viagens (min/dia)”, km_ida_volta: “Km total ida e volta (por dia)”, portagens_dia_eur: “Portagens (\u20AC/dia)”, custo_mes_hibrido_gasoleo: “Custo m\xEAs h\xEDbrido \u2013 gas\xF3leo (\u20AC)”, custo_mes_presencial_gasoleo: “Custo m\xEAs presencial \u2013 gas\xF3leo (\u20AC)”, custo_mes_hibrido_gasolina: “Custo m\xEAs h\xEDbrido \u2013 gasolina (\u20AC)”, custo_mes_presencial_gasolina: “Custo m\xEAs presencial \u2013 gasolina (\u20AC)”, custo_mes_hibrido_eletrico: “Custo m\xEAs h\xEDbrido \u2013 el\xE9trico (\u20AC)”, custo_mes_presencial_eletrico: “Custo m\xEAs presencial \u2013 el\xE9trico (\u20AC)”, transporte_publico: “TP: transportes usados”, tempo_tp_total_min: “TP: tempo total em viagens (min/dia)”, passe_mensal_eur: “TP: passe mensal (\u20AC)”, mensalidade_credito_eur: “Presta\xE7\xE3o mensal (\u20AC)”, renda_100m2_eur: “Renda mensal (\u20AC)” }, o = {}, l = []; for (const [i, v] of Object.entries(n)) { const p = h(v); o[i] = p, p === -1 && l.push(v) } return l.length && console.error(`Folha de dados: ${l.length} coluna(s) n\xE3o encontrada(s): ${l.map(i=>`”${i}”`).join(“, “)}. Os cabe\xE7alhos da folha publicada podem ter mudado \u2014 estes campos v\xE3o ficar vazios.`), t.slice(1).map(i => { const v = d => (i[o[d]] ?? “”).trim(), p = v(“area”), c = v(“concelho”); return { area: p, concelho: c, centro: c === p ? 1 : 0, em_concelho: ml[c] ?? `em ${c}`, renda_casa: Q1(v(“renda_100m2_eur”)), prestacao_casa: Q1(v(“mensalidade_credito_eur”)), km_dia: Q1(v(“km_ida_volta”)), tempo_carro_min: (() => { const d = Q1(v(“tempo_carro_total_min”)); return d === “” ? “” : d / 2 })(), tempo_transportes_min: (() => { const d = Q1(v(“tempo_tp_total_min”)); return d === “” ? “” : d / 2 })(), portagens_dia: Q1(v(“portagens_dia_eur”)), transporte_modo: v(“transporte_publico”), passe: Q1(v(“passe_mensal_eur”)), gasoleo_hibrido: Q1(v(“custo_mes_hibrido_gasoleo”)), gasoleo_presencial: Q1(v(“custo_mes_presencial_gasoleo”)), gasolina_hibrido: Q1(v(“custo_mes_hibrido_gasolina”)), gasolina_presencial: Q1(v(“custo_mes_presencial_gasolina”)), eletrico_hibrido: Q1(v(“custo_mes_hibrido_eletrico”)), eletrico_presencial: Q1(v(“custo_mes_presencial_eletrico”)) } }) } const ta = kl(await zl()), aa = new Map(ta.map(e => [e.concelho, e]));
function Ha(e) { return ta.filter(t => t.area === e) } const bl = { Lisboa: ta.find(e => e.area === “Lisboa” && e.centro), Porto: ta.find(e => e.area === “Porto” && e.centro) }, ra = (e, t) => e ? t === “arrendar” ? e.renda_casa : e.prestacao_casa == null || e.prestacao_casa === “” ? null : +e.prestacao_casa : null;
function wl(e, t, a, r = “metropolitano”) { return a === “teletrabalho” ? 0 : t === “transportes” ? (Array.isArray(r) ? r : [r]).reduce((h, n) => h + (Xt[n] || 0), 0) : +e[`${t}_${a}`] }
function yl(e, t, a) { return a === “teletrabalho” ? 0 : 2 * (t === “transportes” ? +e.tempo_transportes_min : +e.tempo_carro_min) * lo[a] / 60 }
function Ka(e, { modoCasa: t, meio: a, regime: r, passes: h, rendaCustom: n = null, passeCustom: o = null } = {}) { if (!e) return { concelho: void 0, casa: null, deslocacao: 0, custo: null, salarioNecessario: null, horas: 0, diasTrabalho: 0 }; const l = n ?? ra(e, t), i = a === “transportes” && r !== “teletrabalho” && o != null ? o : wl(e, a, r, h), v = l == null ? null : l + i, p = yl(e, a, r); return { concelho: e.concelho, casa: l, deslocacao: i, custo: v, salarioNecessario: l == null ? null : l / Qa, horas: p, diasTrabalho: p / 8 } }
function xl(e, t) { const a = e.map(r => ra(r, t)).filter(r => r != null); return a.length ? { min: Math.min(…a), max: Math.max(…a) } : { min: null, max: null } }
function _l(e, t, a) { if (e == null || t == null || a == null || a <= t) return 2; const r = Math.floor((e – t) / (a – t) * 5); return Math.max(0, Math.min(4, r)) } var $l = T(‘sem dados‘), Pl = T(‘ ‘), Cl = T(‘ ‘), Rl = T(‘‘), Al = T(‘ ‘), Sl = T(‘ sem dados‘), Nl = T(‘‘), Ol = T(‘
Escolher o munic\xEDpio
‘);
function El(e, t) { u1(t, !0); let a = N(t, “estado”, 7); const r = y(() => a().cidade), h = y(() => a().modoCasa ?? “arrendar”), n = L => ra(L, s(h)), o = y(() => xl(Ha(s(r)), s(h))), l = L => _l(L, s(o).min, s(o).max), i = L => typeof L.km_dia == “number” ? Math.round(L.km_dia / 2) : null, v = y(() => Ha(s(r)).map(L => ({ nome: L.concelho, renda: n(L), km: i(L) })).sort((L, Z) => L.renda == null && Z.renda == null ? 0 : L.renda == null ? 1 : Z.renda == null ? -1 : L.renda – Z.renda)), p = y(() => s(v).find(L => L.nome === a().concelho)?.renda ?? null), c = y(() => a().concelho ? aa.get(a().concelho) : null), d = y(() => s(c)?.em_concelho ?? `em ${a().concelho}`), u = y(() => !!s(c) && n(s(c)) == null), z = y(() => !!a().concelho && (!s(u) || a().rendaCustom != null)), g = L => Math.round(L / 10) * 10, m = y(() => { if (s(o).min == null || s(o).max == null) return []; const L = (s(o).max – s(o).min) / 5; return Array.from({ length: 5 }, (Z, l1) => `${g(s(o).min+l1*L)}\u2013${g(s(o).min+(l1+1)*L)}`) }), b = y(() => s(v).some(L => L.renda == null)); let _ = r1(ne(Ue(() => a().rendaCustom != null ? String(a().rendaCustom) : “”)));
function w(L) { a().concelho = L, a().rendaCustom = null, K(_, “”) } oe(() => { const L = Number(s(_).replace(/[^0-9]/g, “”)); a().rendaCustom = s(_).trim() !== “” && L > 0 ? L : null }); var C = Ol(), R = f(M(C), 2), A = O(R, !0), S = f(R, 2); i1(S, 21, () => s(v), L => L.nome, (L, Z) => { const l1 = y(() => s(Z).nome === a().concelho && a().rendaCustom != null), c1 = y(() => s(l1) ? a().rendaCustom : s(Z).renda), U = y(() => s(c1) == null); var B = Rl(); let E; var b1 = M(B), I = O(b1, !0), W = f(b1, 2); { var h1 = m1 => { var P1 = $l(); k(m1, P1) }, $1 = m1 => { var P1 = Pl(), G1 = O(P1, !0); P(ve => x(G1, ve), [() => J1(s(c1))]), k(m1, P1) }; Q(W, m1 => { s(U) ? m1(h1) : m1($1, -1) }) } var M1 = f(W, 2); { var W1 = m1 => { var P1 = Cl(), G1 = O(P1); P(() => x(G1, `a ${s(Z).km??””} km`)), k(m1, P1) }; Q(M1, m1 => { s(Z).km != null && m1(W1) }) } P(m1 => { E = k1(B, 1, `chip ${m1??””}`, “svelte-185hxsx”, E, { sel: a().concelho === s(Z).nome }), j(B, “aria-checked”, a().concelho === s(Z).nome), x(I, s(Z).nome) }, [() => s(U) ? “sem-dados” : “c” + l(s(c1))]), N1(“click”, B, () => w(s(Z).nome)), k(L, B) }); var F = f(S, 2), J = M(F), q = O(J, !0), V = f(J, 2), D = M(V); i1(D, 20, () => [“c0”, “c1”, “c2”, “c3”, “c4″], R1, (L, Z, l1) => { var c1 = Al(), U = M(c1), B = f(U, 2), E = O(B, !0); P(() => { k1(U, 1, `passo ${Z??””}`, “svelte-185hxsx”), x(E, s(m)[l1] ?? “”) }), k(L, c1) }); var H = f(D, 2); { var t1 = L => { var Z = Sl(); k(L, Z) }; Q(H, L => { s(b) && L(t1) }) } var o1 = f(F, 2); { var z1 = L => { var Z = Nl(), l1 = M(Z), c1 = O(l1, !0), U = f(l1, 2), B = f(M(U), 2); P((E, b1) => { x(c1, E), j(B, “placeholder”, b1) }, [() => s(u) ? Rt.semDados(s(h)) : Rt.rendaPropria(s(h), s(d)), () => s(p) != null ? so(s(p)) : “”]), Ba(B, () => s(_), E => K(_, E)), k(L, Z) }; Q(o1, L => { a().concelho && L(z1) }) } var p1 = f(o1, 2), O1 = M(p1); v1(O1, { get onclick() { return t.voltar }, seta: “esq”, children: (L, Z) => { var l1 = s1(); P(() => x(l1, ie.voltar)), k(L, l1) }, $$slots: { default: !0 } }); var E1 = f(O1, 2); { let L = y(() => !s(z)); v1(E1, { variante: “primario”, get disabled() { return s(L) }, get onclick() { return t.avancar }, children: (Z, l1) => { var c1 = s1(); P(() => x(c1, Rt.continuar)), k(Z, c1) }, $$slots: { default: !0 } }) } P((L, Z) => { x(A, L), x(q, Z) }, [() => Rt.texto(s(r)), () => Rt.legendaTitulo(s(h))]), k(e, C), d1() } xe([“click”]); var Tl = T(‘
‘);
function jl(e, t) { u1(t, !0); let a = N(t, “estado”, 7); var r = Tl(), h = M(r), n = O(h, !0), o = f(h, 2), l = O(o, !0), i = f(o, 2), v = M(i); let p; var c = f(M(v), 2), d = M(c); Ye(d, { nome: “chave”, tamanho: 40, cor: “currentColor” }); var u = f(c, 2), z = O(u, !0), g = f(u, 2), m = O(g, !0), b = f(v, 2); let _; var w = f(M(b), 2), C = M(w); Ye(C, { nome: “moeda”, tamanho: 40, cor: “currentColor” }); var R = f(w, 2), A = O(R, !0), S = f(R, 2), F = O(S, !0), J = f(i, 2), q = O(J, !0), V = f(J, 2), D = M(V); v1(D, { get onclick() { return t.voltar }, seta: “esq”, children: (t1, o1) => { var z1 = s1(); P(() => x(z1, ie.voltar)), k(t1, z1) }, $$slots: { default: !0 } }); var H = f(D, 2); { let t1 = y(() => !a().modoCasa); v1(H, { variante: “primario”, get disabled() { return s(t1) }, get onclick() { return t.avancar }, children: (o1, z1) => { var p1 = s1(); P(() => x(p1, _e.continuar)), k(o1, p1) }, $$slots: { default: !0 } }) } P(() => { x(n, _e.titulo), x(l, _e.texto), j(i, “aria-label”, _e.titulo), p = k1(v, 1, “cartao svelte-1hhfjbu”, null, p, { ativo: a().modoCasa === “arrendar” }), j(v, “aria-checked”, a().modoCasa === “arrendar”), x(z, _e.arrendar), x(m, _e.arrendarSub), _ = k1(b, 1, “cartao svelte-1hhfjbu”, null, _, { ativo: a().modoCasa === “comprar” }), j(b, “aria-checked”, a().modoCasa === “comprar”), x(A, _e.comprar), x(F, _e.comprarSub), x(q, _e.nota) }), N1(“click”, v, () => a().modoCasa = “arrendar”), N1(“click”, b, () => a().modoCasa = “comprar”), k(e, r), d1() } xe([“click”]); var ql = T(‘ ‘), Il = T(‘
‘);
function Ll(e, t) { u1(t, !0); let a = N(t, “estado”, 7); var r = Il(), h = M(r), n = O(h, !0), o = f(h, 2), l = O(o, !0), i = f(o, 2); i1(i, 21, () => io, R1, (d, u) => { { let z = y(() => a().meio === s(u)), g = y(() => a().meio === s(u)); v1(d, { variante: “opcao”, get selecionado() { return s(z) }, get ariaPressed() { return s(g) }, onclick: () => a().meio = s(u), children: (m, b) => { var _ = ql(), w = M(_); Ye(w, { get nome() { return xh[s(u)] }, tamanho: 22, cor: “currentColor” }); var C = f(w); P(() => x(C, ` ${vo[s(u)]??””}`)), k(m, _) }, $$slots: { default: !0 } }) } }); var v = f(i, 2), p = M(v); v1(p, { get onclick() { return t.voltar }, seta: “esq”, children: (d, u) => { var z = s1(); P(() => x(z, ie.voltar)), k(d, z) }, $$slots: { default: !0 } }); var c = f(p, 2); v1(c, { variante: “primario”, get onclick() { return t.avancar }, children: (d, u) => { var z = s1(); P(() => x(z, Wa.verContas)), k(d, z) }, $$slots: { default: !0 } }), P(() => { x(n, Wa.titulo), x(l, Wa.texto) }), k(e, r), d1() } var Vl = T(‘
O passe
‘);
function Fl(e, t) { u1(t, !0); let a = N(t, “estado”, 7); const r = y(() => aa.get(a().concelho)), h = y(() => { const V = [{ id: “metropolitano”, rotulo: `Passe metropolitano: ${J1(Xt.metropolitano)}` }]; return s(r)?.centro && V.push({ id: “municipal”, rotulo: `Passe municipal: ${J1(Xt.municipal)}` }), V.push({ id: “ferroviario_verde”, rotulo: `Passe Ferrovi\xE1rio Verde: ${J1(Xt.ferroviario_verde)}` }), V });
function n(V) { const D = new Set(a().passes); D.has(V) ? D.delete(V) : D.add(V), a().passes = […D] } oe(() => { const V = s(h).map(H => H.id), D = a().passes.filter(H => V.includes(H)); D.join() !== a().passes.join() && (a().passes = D) }); const o = y(() => a().passes.length === 0 && a().passeCustom == null); let l = r1(ne(Ue(() => a().passeCustom != null ? String(a().passeCustom) : “”))); oe(() => { const V = parseInt(s(l).replace(/[^\d]/g, “”), 10); a().passeCustom = Number.isFinite(V) && s(l).trim() !== “” ? V : null }); const i = y(() => a().passeCustom != null); var v = Vl(), p = f(M(v), 2), c = O(p, !0), d = f(p, 2); let u; var z = M(d), g = M(z), m = f(g); { var b = V => { var D = s1(); P(() => x(D, ` ${ot.multi}`)), k(V, D) }; Q(m, V => { s(h).length > 1 && V(b) }) } var _ = f(z, 2); i1(_, 17, () => s(h), R1, (V, D) => { { let H = y(() => a().passes.includes(s(D).id)), t1 = y(() => a().passes.includes(s(D).id)); v1(V, { variante: “opcao”, get selecionado() { return s(H) }, get ariaPressed() { return s(t1) }, onclick: () => n(s(D).id), children: (o1, z1) => { var p1 = s1(); P(() => x(p1, s(D).rotulo)), k(o1, p1) }, $$slots: { default: !0 } }) } }); var w = f(d, 2), C = M(w), R = O(C, !0), A = f(C, 2), S = f(M(A), 2), F = f(w, 2), J = M(F); v1(J, { get onclick() { return t.voltar }, seta: “esq”, children: (V, D) => { var H = s1(); P(() => x(H, ie.voltar)), k(V, H) }, $$slots: { default: !0 } }); var q = f(J, 2); v1(q, { variante: “primario”, get disabled() { return s(o) }, get onclick() { return t.avancar }, children: (V, D) => { var H = s1(); P(() => x(H, ot.continuar)), k(V, H) }, $$slots: { default: !0 } }), P(() => { x(c, ot.texto), u = k1(d, 1, “passes svelte-1sgrhi9”, null, u, { esmaecido: s(i) }), x(g, ot.rot), x(R, ot.outroRot), j(S, “placeholder”, ot.outroPlaceholder) }), Ba(S, () => s(l), V => K(l, V)), k(e, v), d1() } var Dl = Y1(‘‘);
function jh(e, t) {
let a = N(t, “celula”, 3, 4);
const r = y(a);
var h = Dl();
P(() => {
j(h, “width”, 44 * a()), j(h, “height”, 38 * a()), n1(h, `display:block;filter:drop-shadow(${s(r)}px ${s(r)}px 0 #d9c7a6)`)
}), k(e, h)
}
var Bl = Y1(‘‘);
function Ul(e, t) {
let a = N(t, “celula”, 3, 4);
const r = y(a);
var h = Bl();
P(() => {
j(h, “width”, 44 * a()), j(h, “height”, 38 * a()), n1(h, `display:block;filter:drop-shadow(${s(r)}px ${s(r)}px 0 #d9c7a6)`)
}), k(e, h)
}
let Yl = 0;
function Jl() {
return Yl += 1
}
var Ql = Y1(‘‘);
function Wl(e, t) {
let a = N(t, “largura”, 3, 236),
r = N(t, “celula”, 3, 2);
const h = `carril-${Jl()}`;
var n = Ql(),
o = M(n),
l = O(o),
i = f(o);
P(() => {
j(n, “height”, 32 * r()), j(n, “viewBox”, `0 0 ${a()/r()} 32`), j(l, “id”, h), j(i, “fill”, `url(#${h})`)
}), k(e, n)
}
let Gl = 0;
function Hl() {
return Gl += 1
}
var Kl = Y1(‘‘);
function Zl(e, t) {
let a = N(t, “largura”, 3, 242),
r = N(t, “celula”, 3, 2);
const h = `estrada-${Hl()}`;
var n = Kl(),
o = M(n),
l = O(o),
i = f(o);
P(() => {
j(n, “height”, 38 * r()), j(n, “viewBox”, `0 0 ${a()/r()} 38`), j(l, “id”, h), j(i, “fill”, `url(#${h})`)
}), k(e, n)
}
var Xl = T(‘
ei = T(‘ ‘, 1),
ti = T(‘
function ai(e, t) {
u1(t, !0);
let a = N(t, “meio”, 3, “transportes”),
r = N(t, “origem”, 3, “”),
h = N(t, “destino”, 3, “”);
const n = y(() => t.regime === “teletrabalho”),
o = y(() => a() === “transportes”);
var l = ti(),
i = M(l);
{
var v = c => {
var d = Xl(),
u = S1(d),
z = M(u);
jh(z, {
celula: 2
}), k(c, d)
},
p = c => {
var d = ei(),
u = S1(d),
z = M(u),
g = M(z);
jh(g, {
celula: 2
});
var m = f(z, 2),
b = M(m),
_ = M(b);
{
var w = t1 => {
Wl(t1, {
celula: 1
})
},
C = t1 => {
Zl(t1, {
celula: 1
})
};
Q(_, t1 => {
s(o) ? t1(w) : t1(C, -1)
})
}
var R = f(b, 2),
A = M(R);
Ga(A, {
tamanho: 48,
andar: !0,
get pele() {
return t.avatar.pele
},
get cabelo() {
return t.avatar.cabelo
},
get roupa() {
return t.avatar.roupa
},
get estilo() {
return t.avatar.estilo
}
});
var S = f(m, 2),
F = M(S);
Ul(F, {
celula: 2
});
var J = f(u, 2),
q = M(J),
V = O(q, !0),
D = f(q, 2),
H = O(D, !0);
P(() => {
x(V, r()), x(H, h())
}), k(c, d)
};
Q(i, c => {
s(n) ? c(v) : c(p, -1)
})
}
k(e, l), d1()
}
function Ne(e, t) {
u1(t, !0);
let a = N(t, “valor”, 3, 0),
r = N(t, “fmt”, 3, v => String(v)),
h = N(t, “dur”, 3, 650),
n = N(t, “ativo”, 3, !0),
o = r1(0),
l = !1;
oe(() => {
if (!n()) return;
const v = a() ?? 0,
p = Ue(() => s(o));
if (p === v) return;
if (l) {
K(o, v, !0);
return
}
l = !0;
let c = 0,
d = null,
u = !1;
const z = m => {
if (u) return;
d === null && (d = m);
const b = Math.min(1, (m – d) / h());
K(o, p + (v – p) * b), b < 1 ? c = requestAnimationFrame(z) : u = !0
};
c = requestAnimationFrame(z);
const g = setTimeout(() => {
u || (u = !0, K(o, v, !0))
}, h() + 150);
return () => {
u = !0, c && cancelAnimationFrame(c), clearTimeout(g)
}
});
var i = s1();
P(v => x(i, v), [() => r()(s(o))]), k(e, i), d1()
}
var ri = T(‘+ ‘, 1),
hi = T(‘
e em viagem
‘),
si = T(‘ ‘, 1),
ni = T(‘‘),
oi = T(‘ ‘),
li = T(”),
ii = T(‘ ‘, 1),
vi = T(‘
‘);
function ci(e, t) {
u1(t, !0);
let a = N(t, “estado”, 7);
const r = “section-Testemunhos-P9KeSsM8DT”;
function h() {
const $ = document.getElementById(r);
$ ? $.scrollIntoView({
behavior: “smooth”,
block: “start”
}) : window.location.hash = r
}
const n = y(() => Ct[a().avatar] ?? Ct[0]),
o = y(() => a().nome?.trim()),
l = y(() => s(o) ? `AS CONTAS DE ${s(o).toUpperCase()}` : B1.titulo),
i = y(() => a().regime !== “teletrabalho”),
v = y(() => ({
modoCasa: a().modoCasa,
meio: a().meio,
regime: a().regime,
passes: a().passes,
passeCustom: a().passeCustom
})),
p = y(() => ({
…s(v),
rendaCustom: a().rendaCustom
})),
c = y(() => aa.get(a().concelho)),
d = y(() => bl[a().cidade]?.concelho),
u = y(() => Ka(s(c), s(p))),
z = y(() => Ha(a().cidade)),
g = y(() => a().cidade === “Porto” ? “do Porto” : “de Lisboa”),
m = y(() => a().concelho === “Lisboa” || a().concelho === “Porto” ? `no ${a().concelho}` : `em ${a().concelho}`),
b = y(() => s(u).custo),
_ = y(() => s(u).casa),
w = y(() => s(u).deslocacao),
C = y(() => s(u).horas),
R = y(() => s(C) * 11),
A = y(() => s(u).salarioNecessario),
S = y(() => co(s(c), a().meio)),
F = “var(–economia)”,
J = “var(–amarelo)”,
q = y(() => s(z).filter($ => $.concelho !== a().concelho && ra($, a().modoCasa) != null).map($ => ({
nome: $.concelho,
rotulo: $.concelho === s(d) ? `${$.concelho} (centro)` : $.concelho
})).sort(($, Y) => $.rotulo.localeCompare(Y.rotulo))),
V = y(() => s(d) && s(d) !== a().concelho ? s(d) : s(q)[0]?.nome ?? null),
D = y(() => a().comparado && s(q).some($ => $.nome === a().comparado) ? a().comparado : s(V)),
H = y(() => s(q).find($ => $.nome === s(D))?.rotulo ?? s(D)),
t1 = y(() => Ka(aa.get(s(D)), s(v))),
o1 = y(() => {
const $ = s(z).map(a1 => Ka(a1, {
…s(v),
regime: “presencial”
})),
Y = a1 => Math.max(1, …$.map(w1 => w1[a1] ?? 0));
return {
custo: Y(“custo”),
casa: Y(“casa”),
deslocacao: Y(“deslocacao”),
horas: Y(“horas”)
}
}),
z1 = y(() => Math.max(s(o1).custo, s(o1).casa, s(o1).deslocacao) * 1.02),
p1 = $ => $ === “horas” ? s(o1).horas * 1.02 : $ === “salarioNecessario” ? s(z1) / Qa : s(z1),
O1 = y(() => a().modoCasa === “arrendar” ? “Renda mensal” : “Presta\xE7\xE3o mensal”),
E1 = y(() => [s(i) ? {
nome: “Total”,
campo: “custo”,
sub: “Casa e desloca\xE7\xE3o”,
fmt: J1,
grossaAbaixo: !0
} : null, {
nome: “Casa”,
campo: “casa”,
sub: s(O1),
fmt: J1
}, s(i) ? {
nome: “Desloca\xE7\xF5es”,
campo: “deslocacao”,
sub: null,
fmt: J1
} : null, s(i) ? {
nome: “Tempo em viagem”,
campo: “horas”,
sub: null,
fmt: Zt,
grossaAcima: !0
} : null, {
nome: “Rendimento necess\xE1rio”,
campo: “salarioNecessario”,
sub: “Para a habita\xE7\xE3o n\xE3o passar 45% do rendimento l\xEDquido do agregado”,
fmt: J1,
grossaAcima: !s(i)
}].filter(Boolean));
function L($, Y) {
if ($ == null || $ <= 0) return 0;
const a1 = $ / p1(Y) * 80;
return Math.max(1.5, Math.min(80, a1))
}
let Z = r1(null),
l1 = r1(null),
c1 = r1(null),
U = r1(null),
B = r1(null),
E = r1(!1),
b1 = r1(!1),
I = r1(!1),
W = r1(!1);
function h1($, Y) {
if (!$) return;
if (typeof IntersectionObserver > “u”) {
Y(!0);
return
}
const a1 = new IntersectionObserver(w1 => {
w1.some(C1 => C1.isIntersecting) && (Y(!0), a1.disconnect())
}, {
threshold: .4
});
return a1.observe($), () => a1.disconnect()
}
oe(() => h1(s(Z), $ => K(E, $, !0))), oe(() => h1(s(l1), $ => K(b1, $, !0))), oe(() => h1(s(c1), $ => K(I, $, !0))), oe(() => h1(s(B), $ => K(W, $, !0)));
const $1 = $ => `${Math.round($)} h`;
var M1 = vi(),
W1 = M(M1),
m1 = O(W1, !0),
P1 = f(W1, 2),
G1 = M(P1);
ai(G1, {
get avatar() {
return s(n)
},
get regime() {
return a().regime
},
get meio() {
return a().meio
},
get origem() {
return a().concelho
},
get destino() {
return a().cidade
}
});
var ve = f(G1, 2),
ha = M(ve);
{
var sa = $ => {
var Y = s1(“\u2014”);
k($, Y)
},
St = $ => {
Ne($, {
get valor() {
return s(b)
},
get fmt() {
return J1
},
get ativo() {
return s(E)
}
})
};
Q(ha, $ => {
s(b) == null ? $(sa) : $(St, -1)
})
}
var lt = f(ve, 2),
na = O(lt, !0),
it = f(lt, 2),
Nt = M(it),
Ot = M(Nt),
oa = M(Ot);
L1(oa, {
get map() {
return $h
},
cell: 3
});
var te = f(Ot, 2),
ce = M(te),
Je = M(ce);
{
var la = $ => {
var Y = s1(“\u2014”);
k($, Y)
},
Et = $ => {
Ne($, {
get valor() {
return s(_)
},
get fmt() {
return J1
},
get ativo() {
return s(E)
}
})
};
Q(Je, $ => {
s(_) == null ? $(la) : $(Et, -1)
})
}
var ia = f(ce),
va = f(Nt, 2);
{
var ca = $ => {
var Y = ri(),
a1 = f(S1(Y), 2),
w1 = M(a1);
Ye(w1, {
get nome() {
return xh[a().meio]
},
tamanho: 28,
cor: “var(–economia-2)”,
realce: “var(–amarelo)”
});
var C1 = f(w1, 2),
ae = M(C1),
ue = M(ae);
Ne(ue, {
get valor() {
return s(w)
},
get fmt() {
return J1
},
get ativo() {
return s(E)
}
});
var vt = f(ae);
P(() => x(vt, ` ${B1.decDeslocacao}`)), k($, Y)
};
Q(va, $ => {
s(i) && $(ca)
})
}
var Za = f(it, 2);
{
var qh = $ => {
var Y = hi(),
a1 = M(Y),
w1 = M(a1);
L1(w1, {
get map() {
return Ch
},
cell: 3
});
var C1 = f(a1, 2),
ae = f(M(C1)),
ue = M(ae);
Ne(ue, {
get valor() {
return s(C)
},
get fmt() {
return Zt
},
get ativo() {
return s(E)
}
}), k($, Y)
};
Q(Za, $ => {
s(i) && $(qh)
})
}
var Ih = f(Za, 2),
Lh = O(Ih, !0);
Ae(P1, $ => K(Z, $), () => s(Z));
var Xa = f(P1, 2);
{
var Vh = $ => {
var Y = si(),
a1 = S1(Y);
At(a1, {
get alvo() {
return s(l1)
}
});
var w1 = f(a1, 2),
C1 = M(w1),
ae = M(C1);
Ne(ae, {
get valor() {
return s(R)
},
fmt: $1,
get ativo() {
return s(b1)
}
});
var ue = f(C1, 2),
vt = O(ue, !0),
Ma = f(ue, 2),
za = O(Ma, !0);
Ae(w1, Qe => K(l1, Qe), () => s(l1)), P((Qe, jt) => {
x(vt, Qe), x(za, jt)
}, [() => B1.porAno(s(S)), () => B1.m2Frase(s(R))]), k($, Y)
};
Q(Xa, $ => {
s(i) && $(Vh)
})
}
var er = f(Xa, 2);
At(er, {
get alvo() {
return s(c1)
}
});
var ua = f(er, 2),
tr = M(ua),
Fh = O(tr, !0),
da = f(tr, 2);
let ar;
var Dh = M(da);
{
var Bh = $ => {
var Y = s1(“\u2014”);
k($, Y)
},
Uh = $ => {
Ne($, {
get valor() {
return s(A)
},
get fmt() {
return J1
},
dur: 1200,
get ativo() {
return s(I)
}
})
};
Q(Dh, $ => {
s(A) == null ? $(Bh) : $(Uh, -1)
})
}
var Yh = f(da, 2),
Jh = O(Yh, !0);
Ae(ua, $ => K(c1, $), () => s(c1));
var rr = f(ua, 2);
At(rr, {
get alvo() {
return s(U)
}
});
var fa = f(rr, 2),
hr = M(fa),
Qh = O(hr, !0),
sr = f(hr, 2),
Wh = O(sr, !0),
Gh = f(sr, 2);
At(Gh, {
get alvo() {
return s(B)
}
}), Ae(fa, $ => K(U, $), () => s(U));
var nr = f(fa, 2),
or = M(nr),
Hh = M(or),
lr = M(Hh),
Kh = O(lr, !0),
ir = f(lr, 2);
n1(ir, `–cor:${J}`);
var Ee = M(ir);
i1(Ee, 21, () => s(q), $ => $.nome, ($, Y) => {
var a1 = ni(),
w1 = O(a1, !0),
C1 = {};
P(() => {
x(w1, s(Y).rotulo), C1 !== (C1 = s(Y).nome) && (a1.value = (a1.__value = C1) ?? “”)
}), k($, a1)
});
var Tt;
kh(Ee);
var Zh = f(Ee, 2),
Xh = M(Zh);
L1(Xh, {
get map() {
return Rh
},
cell: 2
});
var vr = f(or, 2),
cr = M(vr),
ur = M(cr);
n1(ur, `background:${F}`);
var es = f(ur),
ts = f(cr, 2),
dr = M(ts);
n1(dr, `background:${J}`);
var as = f(dr, 1, !0),
fr = f(vr, 2);
i1(fr, 21, () => s(E1), $ => $.campo, ($, Y) => {
var a1 = li();
let w1;
var C1 = M(a1),
ae = M(C1),
ue = O(ae, !0),
vt = f(ae, 2);
{
var Ma = y1 => {
var $e = oi(),
Ms = O($e, !0);
P(() => x(Ms, s(Y).sub)), k(y1, $e)
};
Q(vt, y1 => {
s(Y).sub && y1(Ma)
})
}
var za = f(C1, 2),
Qe = M(za),
jt = M(Qe),
os = f(jt, 2),
ls = M(os);
{
var is = y1 => {
var $e = s1(“\u2014”);
k(y1, $e)
},
vs = y1 => {
Ne(y1, {
get valor() {
return s(u)[s(Y).campo]
},
get fmt() {
return s(Y).fmt
},
get ativo() {
return s(W)
}
})
};
Q(ls, y1 => {
s(u)[s(Y).campo] == null ? y1(is) : y1(vs, -1)
})
}
var cs = f(Qe, 2),
Mr = M(cs),
us = f(Mr, 2),
ds = M(us);
{
var fs = y1 => {
var $e = s1(“\u2014”);
k(y1, $e)
},
ps = y1 => {
Ne(y1, {
get valor() {
return s(t1)[s(Y).campo]
},
get fmt() {
return s(Y).fmt
},
get ativo() {
return s(W)
}
})
};
Q(ds, y1 => {
s(t1)[s(Y).campo] == null ? y1(fs) : y1(ps, -1)
})
}
P((y1, $e) => {
w1 = k1(a1, 1, “linha svelte-1csvft8”, null, w1, {
ab: s(Y).grossaAbaixo,
ac: s(Y).grossaAcima
}), x(ue, s(Y).nome), n1(jt, y1), n1(Mr, $e)
}, [() => `background:${F};width:${s(W)?L(s(u)[s(Y).campo],s(Y).campo):0}%`, () => `background:${J};width:${s(W)?L(s(t1)[s(Y).campo],s(Y).campo):0}%`]), k($, a1)
});
var pa = f(fr, 2),
rs = O(pa, !0),
hs = f(pa, 2),
pr = M(hs);
{
var ss = $ => {
v1($, {
get onclick() {
return t.recomecar
},
children: (Y, a1) => {
var w1 = ii(),
C1 = S1(w1),
ae = M(C1);
L1(ae, {
get map() {
return Ah
},
cell: 3
});
var ue = f(C1, 1, !0);
P(() => x(ue, ie.recomecar)), k(Y, w1)
},
$$slots: {
default: !0
}
})
};
Q(pr, $ => {
t.recomecar && $(ss)
})
}
var ns = f(pr, 2);
v1(ns, {
variante: “primario”,
onclick: h,
children: ($, Y) => {
var a1 = s1();
P(() => x(a1, B1.historias)), k($, a1)
},
$$slots: {
default: !0
}
}), Ae(nr, $ => K(B, $), () => s(B)), P(($, Y, a1) => {
x(m1, s(l)), x(na, B1.porMesLongo), x(ia, ` ${B1.decCasa}`), x(Lh, $), x(Fh, Y), ar = k1(da, 1, “num svelte-1csvft8”, null, ar, {
pop: s(I)
}), x(Jh, B1.liquidosMes), x(Qh, a1), x(Wh, B1.reflexao), x(Kh, B1.compAdd), Tt !== (Tt = s(D)) && (Ee.value = (Ee.__value = Tt) ?? “”, Da(Ee, Tt)), x(es, `${a().concelho??””} (a sua escolha)`), x(as, s(H)), x(rs, B1.compararOutro)
}, [() => B1.m1Frase(s(o), s(m), `no centro ${s(g)}`), () => B1.necessarioRot(Qa), () => B1.reflexaoIntro(a().cidade)]), N1(“change”, Ee, $ => a().comparado = $.currentTarget.value), N1(“click”, pa, () => s(B)?.scrollIntoView({
behavior: “smooth”,
block: “start”
})), k(e, M1), d1()
}
xe([“change”, “click”]);
var ui = T(”);
function di(e, t) {
u1(t, !0);
const a = () => ({
nome: “”,
avatar: 0,
cidade: null,
area: null,
regime: null,
modoCasa: null,
concelho: null,
rendaCustom: null,
meio: “transportes”,
passes: [],
passeCustom: null,
comparado: null
});
let r = ne(a()),
h = r1(“capa”),
n = r1(null);
function o() {
Object.assign(r, a()), K(h, “capa”), u()
}
const l = y(() => r.regime !== “teletrabalho”),
i = y(() => s(l) && r.meio === “transportes”),
v = y(() => [{
k: “capa”,
pip: !1
}, {
k: “curriculos”,
pip: !1,
loading: !0
}, {
k: “personagem”,
pip: !0
}, {
k: “cidade”,
pip: !0
}, {
k: “modo”,
pip: !0
}, {
k: “morar”,
pip: !0
}, {
k: “regime”,
pip: !0
}, …s(l) ? [{
k: “desloca”,
pip: !0
}] : [], …s(i) ? [{
k: “passe”,
pip: !0
}] : [], {
k: “extrato”,
pip: !1,
loading: !0
}, {
k: “contas”,
pip: !1
}]),
p = y(() => s(v).findIndex(w => w.k === s(h))),
c = y(() => s(v).filter(w => w.pip).length),
d = y(() => s(v)[s(p)]?.pip ? s(v).slice(0, s(p) + 1).filter(w => w.pip).length : 0);
function u() {
s(n)?.getBoundingClientRect && s(n).getBoundingClientRect().top < 0 && s(n).scrollIntoView({
behavior: “smooth”,
block: “start”
})
}
function z() {
const w = s(v).findIndex(C => C.k === s(h));
w >= 0 && w < s(v).length – 1 && K(h, s(v)[w + 1].k, !0), u()
}
function g() {
let w = s(v).findIndex(C => C.k === s(h)) – 1;
for (; w > 0 && s(v)[w].loading;) w–;
w >= 0 && K(h, s(v)[w].k, !0), u()
}
function m(w) {
s(v).some(C => C.k === w) && K(h, w, !0), u()
}
var b = ui(),
_ = M(b);
ao(_, {
children: (w, C) => {
{
let R = y(() => Ct[r.avatar] ?? Ct[0]),
A = y(() => s(h) === “capa” ? null : o),
S = y(() => s(h) !== “contas”);
qo(w, {
get passo() {
return s(d)
},
get total() {
return s(c)
},
get avatar() {
return s(R)
},
get nome() {
return r.nome
},
get recomecar() {
return s(A)
},
get dicaScroll() {
return s(S)
},
children: (F, J) => {
var q = me(),
V = S1(q);
Mh(V, () => s(h), D => {
var H = me(),
t1 = S1(H);
{
var o1 = E => {
ol(E, {
avancar: z
})
},
z1 = E => {
Oh(E, {
get config() {
return _h.curriculos
},
avancar: z,
voltar: g,
icone: “escritorio”,
cena: “pc”
})
},
p1 = E => {
vl(E, {
get estado() {
return r
},
avancar: z,
voltar: g
})
},
O1 = E => {
ul(E, {
get estado() {
return r
},
avancar: z,
voltar: g
})
},
E1 = E => {
pl(E, {
get estado() {
return r
},
avancar: z,
voltar: g
})
},
L = E => {
El(E, {
get estado() {
return r
},
avancar: z,
voltar: g
})
},
Z = E => {
jl(E, {
get estado() {
return r
},
avancar: z,
voltar: g
})
},
l1 = E => {
Ll(E, {
get estado() {
return r
},
avancar: z,
voltar: g
})
},
c1 = E => {
Fl(E, {
get estado() {
return r
},
avancar: z,
voltar: g
})
},
U = E => {
Oh(E, {
get config() {
return _h.extrato
},
avancar: z,
voltar: g,
icone: “carteira”,
cena: “extrato”
})
},
B = E => {
ci(E, {
get estado() {
return r
},
irPara: m,
voltar: g,
recomecar: o
})
};
Q(t1, E => {
s(h) === “capa” ? E(o1) : s(h) === “curriculos” ? E(z1, 1) : s(h) === “personagem” ? E(p1, 2) : s(h) === “cidade” ? E(O1, 3) : s(h) === “regime” ? E(E1, 4) : s(h) === “morar” ? E(L, 5) : s(h) === “modo” ? E(Z, 6) : s(h) === “desloca” ? E(l1, 7) : s(h) === “passe” ? E(c1, 8) : s(h) === “extrato” ? E(U, 9) : s(h) === “contas” && E(B, 10)
})
}
k(D, H)
}), k(F, q)
},
$$slots: {
default: !0
}
})
}
}
}), Ae(b, w => K(n, w), () => s(n)), k(e, b), d1()
}
var fi = T(““),
pi = T(”),
Mi = T(”),
zi = T(”),
mi = T(”),
gi = T(‘
‘),
ki = T(‘
‘),
bi = T(‘
‘);
function wi(e, t) {
u1(t, !0);
let a = N(t, “itens”, 19, () => []),
r = N(t, “categorias”, 19, () => []),
h = N(t, “principalId”, 3, null),
n = N(t, “corA”, 3, “var(–economia, #e65100)”),
o = N(t, “corB”, 3, “var(–verde-exp, #1f8a70)”),
l = N(t, “formatar”, 3, I => `\u20AC ${Math.round(I)}`),
i = N(t, “rotuloEixo”, 3, “Mais caro \u2192”),
v = N(t, “rotuloSeletor”, 3, “Comparar com:”),
p = N(t, “placeholderSeletor”, 3, “Escolha um item”),
c = N(t, “aoRecomecar”, 3, null);
const d = y(() => h() ?? a()[0]?.id ?? null),
u = y(() => a().find(I => I.id === s(d)) ?? null);
let z = r1(null);
oe(() => {
s(z) != null && (s(z) === s(d) || !a().some(I => I.id === s(z))) && K(z, null)
});
const g = y(() => s(z) != null ? a().find(I => I.id === s(z)) ?? null : null),
m = y(() => a().filter(I => I.id !== s(d))),
b = I => I ? r().reduce((W, h1) => W + (I.valores?.[h1.id] ?? 0), 0) : 0,
_ = y(() => b(s(u))),
w = y(() => b(s(g))),
C = y(() => Math.max(1, s(_), s(w)) * 1.08),
R = I => Math.max(0, Math.min(100, I / s(C) * 100)),
A = y(() => {
let I = 1;
for (const W of r()) I = Math.max(I, s(u)?.valores?.[W.id] ?? 0, s(g)?.valores?.[W.id] ?? 0);
return I * 1.02
}),
S = I => I == null ? 0 : Math.max(0, Math.min(100, I / s(A) * 100)),
F = I => I < 18 ? “ini” : I > 82 ? “fim” : “meio”;
var J = bi(),
q = M(J),
V = M(q),
D = O(V, !0),
H = f(V, 2),
t1 = M(H),
o1 = O(t1, !0);
t1.value = (t1.__value = null) ?? “”;
var z1 = f(t1);
i1(z1, 17, () => s(m), I => I.id, (I, W) => {
var h1 = fi(),
$1 = O(h1, !0),
M1 = {};
P(() => {
x($1, s(W).nome), M1 !== (M1 = s(W).id) && (h1.value = (h1.__value = M1) ?? “”)
}), k(I, h1)
}), kh(H);
var p1 = f(q, 2),
O1 = M(p1),
E1 = O(O1, !0),
L = f(O1, 2),
Z = M(L);
{
var l1 = I => {
const W = y(() => R(s(_)));
var h1 = pi(),
$1 = f(M(h1), 2),
M1 = M($1),
W1 = M(M1),
m1 = f(W1),
P1 = O(m1, !0);
P((G1, ve) => {
n1($1, `left:${s(W)}%;–c:${n()}`), k1(M1, 1, `etq ${G1??””}`, “svelte-19m7grf”), x(W1, s(u).nome), x(P1, ve)
}, [() => F(s(W)), () => l()(s(_))]), k(I, h1)
};
Q(Z, I => {
s(u) && I(l1)
})
}
var c1 = f(Z, 2);
{
var U = I => {
const W = y(() => R(s(w)));
var h1 = Mi(),
$1 = f(M(h1), 2),
M1 = M($1),
W1 = M(M1),
m1 = f(W1),
P1 = O(m1, !0);
P((G1, ve) => {
n1($1, `left:${s(W)}%;–c:${o()}`), k1(M1, 1, `etq ${G1??””}`, “svelte-19m7grf”), x(W1, s(g).nome), x(P1, ve)
}, [() => F(s(W)), () => l()(s(w))]), k(I, h1)
};
Q(c1, I => {
s(g) && I(U)
})
}
var B = f(p1, 2);
i1(B, 21, r, I => I.id, (I, W) => {
var h1 = gi(),
$1 = M(h1),
M1 = M($1),
W1 = M(M1);
Ye(W1, {
get nome() {
return s(W).icone
},
tamanho: 24,
cor: “currentColor”
});
var m1 = f(M1, 2),
P1 = M(m1),
G1 = O(P1, !0),
ve = f(P1, 2);
{
var ha = te => {
var ce = zi(),
Je = O(ce, !0);
P(() => x(Je, s(W).subtitulo)), k(te, ce)
};
Q(ve, te => {
s(W).subtitulo && te(ha)
})
}
var sa = f($1, 2),
St = M(sa),
lt = M(St),
na = O(lt),
it = f(lt, 2),
Nt = O(it, !0),
Ot = f(St, 2);
{
var oa = te => {
var ce = mi(),
Je = M(ce),
la = O(Je),
Et = f(Je, 2),
ia = O(Et, !0);
P((va, ca) => {
n1(la, va), n1(Et, `color:${o()}`), x(ia, ca)
}, [() => `width:${S(s(g)?.valores?.[s(W).id])}%;background:${o()}`, () => l()(s(g)?.valores?.[s(W).id] ?? 0)]), k(te, ce)
};
Q(Ot, te => {
s(g) && te(oa)
})
}
P((te, ce) => {
x(G1, s(W).titulo), n1(na, te), n1(it, `color:${n()}`), x(Nt, ce)
}, [() => `width:${S(s(u)?.valores?.[s(W).id])}%;background:${n()}`, () => l()(s(u)?.valores?.[s(W).id] ?? 0)]), k(I, h1)
});
var E = f(B, 2);
{
var b1 = I => {
var W = ki(),
h1 = O(W);
N1(“click”, h1, function(…$1) {
c()?.apply(this, $1)
}), k(I, W)
};
Q(E, I => {
c() && I(b1)
})
}
P(() => {
x(D, v()), x(o1, p()), x(E1, i())
}), Qn(H, () => s(z), I => K(z, I)), k(e, J), d1()
}
xe([“click”]);
const yi = [{
id: “habitacao”,
titulo: “Habita\xE7\xE3o”,
subtitulo: “Renda de um T2, \xE1gua e condom\xEDnio”,
icone: “casa”
}, {
id: “transportes”,
titulo: “Transportes”,
subtitulo: “Passe mensal ou combust\xEDvel”,
icone: “comboio”
}, {
id: “alimentacao”,
titulo: “Alimenta\xE7\xE3o”,
subtitulo: “Compras e algumas refei\xE7\xF5es fora”,
icone: “moeda”
}, {
id: “energia”,
titulo: “Energia”,
subtitulo: “Eletricidade, g\xE1s e aquecimento”,
icone: “bomba”
}, {
id: “servicos”,
titulo: “Servi\xE7os”,
subtitulo: “Internet, telem\xF3vel e seguros”,
icone: “carteira”
}, {
id: “lazer”,
titulo: “Lazer”,
subtitulo: “Gin\xE1sio, cinema e sa\xEDdas”,
icone: “relogio”
}],
xi = [{
id: “lisboa”,
nome: “Lisboa”,
valores: {
habitacao: 1250,
transportes: 40,
alimentacao: 360,
energia: 110,
servicos: 95,
lazer: 180
}
}, {
id: “porto”,
nome: “Porto”,
valores: {
habitacao: 980,
transportes: 40,
alimentacao: 330,
energia: 105,
servicos: 90,
lazer: 150
}
}, {
id: “braga”,
nome: “Braga”,
valores: {
habitacao: 680,
transportes: 32,
alimentacao: 300,
energia: 100,
servicos: 85,
lazer: 120
}
}, {
id: “coimbra”,
nome: “Coimbra”,
valores: {
habitacao: 720,
transportes: 30,
alimentacao: 310,
energia: 102,
servicos: 88,
lazer: 130
}
}];
var _i = T(‘
Escolha uma segunda cidade para comparar o custo de vida mensal.
‘);
function $i(e, t) {
u1(t, !0);
let a = r1(0);
var r = _i(),
h = f(M(r), 2);
Mh(h, () => s(a), n => {
wi(n, {
get itens() {
return xi
},
get categorias() {
return yi
},
principalId: “lisboa”,
formatar: o => `\u20AC ${Math.round(o).toLocaleString(“pt-PT”)}`,
aoRecomecar: () => K(a, s(a) + 1)
})
}), k(e, r), d1()
}
const Pi = new URLSearchParams(location.search).get(“demo”) === “comparador”,
Ci = En(Pi ? $i : di, {
target: document.getElementById(“app”)
});
export {
Ci as
default
};






