PageSourceSearch

http://xn--90aciakhhg8arp.xn--p1ai/build/assets/CalculatorComponent-61fe3ea0.js

js xn--90aciakhhg8arp.xn--p1ai collected 2026-10-02 20:07:56 UTC 7,330 bytes, 1 lines download raw bytes

1import{D as f}from"./DropdownSelect-feb62a16.js";import{n as v,o as m,p as c,D as h,q as t,y as r,u as e,H as b,v as y,B as a,C as u}from"./directives-29ec0e3e.js";import{_ as C}from"./_plugin-vue_export-helper-c27b6911.js";const g={name:"CalculatorComponent",components:{DropdownSelect:f},props:{owners:{type:Object},employers:{type:Object},privateSector:{type:Object},employable:null,pensioners:null,children:null,more:null,less:null},data(){return{isCalculatorResult:!1,loading:!1,showResults:!1,calculator:{residentialForm:null,numberAbleBodied:null,numberPensioners:null,numberChildren:null,income:null,communal:null},results:{familyComposition:0,resultIncome:0,averageIncome:0,livingWage:0,correctionFactor:0,standartMaxExsenses:0,standartCost:0,subsidy:0},residentialForms:[{id:1,title:"Собственник"},{id:2,title:"Наниматель"},{id:3,title:"Частный сектор"}]}},methods:{calculating(){this.isCalculatorResult=!0,this.results.familyComposition=this.calculator.numberAbleBodied+this.calculator.numberPensioners+this.calculator.numberChildren,this.results.resultIncome=this.formatNumber(this.calculator.income),this.results.averageIncome=this.calculator.income/this.results.familyComposition,this.results.livingWage=this.calculator.numberAbleBodied*this.employable+this.calculator.numberPensioners*this.pensioners+this.calculator.numberChildren*this.children;const s={Собственник:this.owners,Наниматель:this.employers,"Частный сектор":this.privateSector}[this.calculator.residentialForm]||this.privateSector;let d=Math.min(this.results.familyComposition,3);this.results.standartCost=s[d]||0,this.calculator.income>=this.results.livingWage?(this.results.standartMaxExsenses=this.more,this.results.correctionFactor=1,this.results.subsidy=this.results.standartCost*this.results.familyComposition-this.results.standartMaxExsenses/100*this.calculator.income):(this.results.standartMaxExsenses=this.less,this.results.correctionFactor=this.formatNumber(this.calculator.income/this.results.livingWage),this.results.subsidy=this.results.standartCost*this.results.familyComposition-this.results.standartMaxExsenses/100*this.calculator.income*this.results.correctionFactor),this.results.subsidy=Math.max(this.results.subsidy,0),this.showResults=!0},formatNumber(n){return typeof n=="number"?n.toFixed(2):n},validateForm(){return!this.calculator.residentialForm||!this.calculator.numberAbleBodied||!this.calculator.income||!this.calculator.communal}}},_={class:"calculator"},x={class:"calculator-result__item"},F={class:"calculator-result__item"},B={class:"calculator-result__item"},V={class:"calculator-result__item"},N={class:"calculator-result__item"},S={class:"calculator-result__item"},w={class:"calculator-result__item"},M={class:"calculator-result__item"},A={key:0,class:"calculator-result__item"},E={class:"calculator-wrapper"},D={class:"calculator-item select"},I={class:"calculator-item"},P={class:"calculator-item"},R={class:"calculator-item"},U={class:"calculator-item"},k={class:"calculator-item"},W=["disabled"];function T(n,s,d,j,l,i){const p=v("DropdownSelect");return m(),c("div",_,[l.showResults?(m(),c("div",{key:0,class:h(["calculator-result",{hidden:!l.isCalculatorResult}])},[t("div",x,[s[7]||(s[7]=r(" Состав семьи: ")),t("strong",null,e(this.results.familyComposition)+" чел.",1)]),t("div",F,[s[8]||(s[8]=r(" Совокупный доход в месяц:")),t("strong",null,e(this.results.resultIncome)+" руб.",1)]),t("div",B,[s[9]||(s[9]=r(" Среднедушевой доход в месяц:")),t("strong",null,e(i.formatNumber(this.results.averageIncome))+" руб.",1)]),t("div",V,[s[10]||(s[10]=r(" Прожиточный минимум семьи, рассчитанный с учетом прожиточных минимумов для граждан различных социально-демографических групп: ")),t("strong",null,e(i.formatNumber(this.results.livingWage))+" руб.",1)]),t("div",N,[s[11]||(s[11]=r(" Поправочный коэффициент при среднедушевом доходе семьи ниже прожиточного минимума:")),t("strong",null,e(this.results.correctionFactor),1)]),t("div",S,[s[12]||(s[12]=r(" Стандарт максимально допустимой доли расходов:")),t("strong",null,e(this.results.standartMaxExsenses)+"%",1)]),t("div",w,[s[13]||(s[13]=r(" Стандарт стоимости жилищно-коммунальных услуг: ")),t("strong",null,e(i.formatNumber(this.results.standartCost))+" руб. на человека",1)]),t("div",M,[s[14]||(s[14]=r(" Субсидия: ")),t("strong",null," ("+e(this.results.standartCost)+" * "+e(this.results.familyComposition)+") - ("+e(this.results.standartMaxExsenses)+"% * "+e(this.results.resultIncome)+" * "+e(this.results.correctionFactor)+") = "+e(this.results.subsidy)+" руб. ",1)]),this.calculator.communal<this.results.subsidy?(m(),c("div",A,[s[15]||(s[15]=r(" Если расходы на оплату ЖКУ в месяц меньше размера субсидии, то субсидия равна сумме расходов на оплату ЖКУ в месяц: ")),t("strong",null,e(this.calculator.communal)+" руб. ",1)])):b("",!0)],2)):b("",!0),t("div",E,[t("div",D,[y(p,{name:"adaptationNeediness",options:l.residentialForms,modelValue:l.calculator.residentialForm,"onUpdate:modelValue":s[0]||(s[0]=o=>l.calculator.residentialForm=o),label:"Категория"},null,8,["options","modelValue"])]),t("div",I,[s[16]||(s[16]=t("label",{for:"numberAbleBodied"},"Количество трудоспособных членов семьи:",-1)),a(t("input",{type:"number",name:"numberAbleBodied",placeholder:"10","onUpdate:modelValue":s[1]||(s[1]=o=>l.calculator.numberAbleBodied=o)},null,512),[[u,l.calculator.numberAbleBodied]])]),t("div",P,[s[17]||(s[17]=t("label",{for:"numberPensioners"},"Количество пенсионеров:",-1)),a(t("input",{type:"number",name:"numberPensioners",placeholder:"10","onUpdate:modelValue":s[2]||(s[2]=o=>l.calculator.numberPensioners=o)},null,512),[[u,l.calculator.numberPensioners]])]),t("div",R,[s[18]||(s[18]=t("label",{for:"numberChildren"},"Количество детей:",-1)),a(t("input",{type:"number",name:"numberChildren",placeholder:"10","onUpdate:modelValue":s[3]||(s[3]=o=>l.calculator.numberChildren=o)},null,512),[[u,l.calculator.numberChildren]])]),t("div",U,[s[19]||(s[19]=t("label",{for:"income"},"Совокупный доход семьи (руб.):",-1)),a(t("input",{type:"number",name:"income",placeholder:"10","onUpdate:modelValue":s[4]||(s[4]=o=>l.calculator.income=o)},null,512),[[u,l.calculator.income]])]),t("div",k,[s[20]||(s[20]=t("label",{for:"communal"},"Расходы на оплату ЖКУ в месяц:",-1)),a(t("input",{type:"number",name:"communal",placeholder:"10","onUpdate:modelValue":s[5]||(s[5]=o=>l.calculator.communal=o)},null,512),[[u,l.calculator.communal]])]),t("button",{class:h(["calculator-button",i.validateForm()?"calculator-button__disabled":null]),onClick:s[6]||(s[6]=(...o)=>i.calculating&&i.calculating(...o)),disabled:i.validateForm()},"Рассчитать",10,W)])])}const H=C(g,[["render",T]]);export{H as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.