UNPKG

@accounter/client

Version:
2 lines (1 loc) 6.53 kB
import{j as n,r as x,g9 as g,B as v,a5 as h,gB as j,a as D,F as R,u as E,L as y,bC as w,T as f,dZ as C,gC as T}from"./index-CDv8MTrU.js";import{d as A}from"./graphql-document-dedupe-fragments-ByT8-wlV.js";import{P as b}from"./page-layout-BnRhikMQ.js";import{P as F}from"./modal-hw2uDJ0Z.js";import{F as N}from"./funnel-2GvmLyCV.js";import{T as I}from"./Table-CnwiwZMD.js";const i=({originalAmount:a,diffAmount:t})=>!t||a===t?n.jsx("td",{children:a}):n.jsx("td",{children:n.jsxs("div",{className:"flex flex-col",children:[n.jsx("p",{className:t?"line-through":"",children:a}),t&&n.jsx("div",{className:"border-2 border-yellow-500 rounded-md",children:t})]})});function P({years:a,setYears:t}){const[r,o]=x.useState(!1);return n.jsxs(n.Fragment,{children:[n.jsx(F,{opened:r,onClose:()=>o(!1),withCloseButton:!0,content:n.jsx(g,{type:"multiple",label:"Pick years",value:a?.map(c=>new Date(c,0,1)),onChange:c=>t(c.map(p=>p.getFullYear())),popoverProps:{withinPortal:!0},minDate:new Date(2010,0,1),maxDate:new Date})}),n.jsx(v,{variant:"outline",size:"icon",className:"size-7.5",onClick:()=>o(!0),children:n.jsx(N,{className:"size-5"})})]})}const u=({originalRuleData:a,diffRuleData:t})=>{const r=h(j,a),o=h(j,t),c=o?.isCompliant!==r.isCompliant||o?.percentage.formatted!==r.percentage.formatted;return!o||!c?n.jsx("td",{className:r.isCompliant?"text-green-500":"text-red-500",children:r.percentage.formatted}):n.jsx("td",{className:r.isCompliant?"text-green-500":"text-red-500",children:n.jsxs("div",{className:"flex flex-col",children:[n.jsx("p",{className:"line-through ".concat(r.isCompliant?"text-green-500":"text-red-500"),children:r.percentage.formatted}),o&&n.jsx("div",{className:"border-2 border-yellow-500 rounded-md ".concat(o.isCompliant?"text-green-500":"text-red-500"),children:o.percentage.formatted})]})})},d=(a,t)=>C(t).format(a);function m(a,t){if(a.length!==0)return d(a.reduce((r,o)=>r+o,0),t)}const O=()=>{const{year:a}=D(),{setFiltersContext:t}=x.useContext(R),[r,o]=x.useState(a?[Number(a)]:[new Date().getFullYear()]),[{data:c,fetching:p}]=E({query:A(T),variables:{years:r}});x.useEffect(()=>{t(n.jsx("div",{className:"flex flex-row gap-2",children:n.jsx(P,{years:r,setYears:o})}))},[r,p,t]);const s=c?.corporateTaxRulingComplianceReport??[];return n.jsx(b,{title:"Corporate Tax Ruling Compliance Report",children:p?n.jsx(y,{className:"h-10 w-10 animate-spin mr-2 self-center"}):n.jsx("div",{className:"flex flex-col gap-4",children:s&&n.jsxs(I,{highlightOnHover:!0,fontSize:"md",children:[n.jsx("thead",{children:n.jsxs("tr",{children:[n.jsx("th",{}),r.map(e=>n.jsx("th",{children:n.jsx(w,{inline:!0,size:12,processing:!s.find(l=>l.year===e)?.differences,disabled:!!s.find(l=>l.year===e)?.differences,color:"orange",zIndex:"auto",children:e})},e)),n.jsx("th",{children:"Summary"},"sum")]})}),n.jsxs("tbody",{children:[n.jsxs("tr",{children:[n.jsx("td",{children:"Total Income"}),s.map(e=>n.jsx(i,{originalAmount:e.totalIncome.formatted,diffAmount:e.differences?.totalIncome?.formatted??void 0},e.year)),n.jsx(i,{originalAmount:d(s.map(e=>e.totalIncome.raw).reduce((e,l)=>e+l,0),s[0].totalIncome.currency),diffAmount:m(s.map(e=>e.differences?.totalIncome?.raw??e.totalIncome.raw).filter(e=>!!e),s[0].totalIncome.currency)},"sum")]}),n.jsxs("tr",{children:[n.jsx("td",{children:"Total R&D Expensess"}),s.map(e=>n.jsx(i,{originalAmount:e.researchAndDevelopmentExpenses.formatted,diffAmount:e.differences?.researchAndDevelopmentExpenses?.formatted??void 0},e.year)),n.jsx(i,{originalAmount:d(s.map(e=>e.researchAndDevelopmentExpenses.raw).reduce((e,l)=>e+l,0),s[0].researchAndDevelopmentExpenses.currency),diffAmount:m(s.map(e=>e.differences?.researchAndDevelopmentExpenses?.raw??e.researchAndDevelopmentExpenses.raw).filter(e=>!!e),s[0].researchAndDevelopmentExpenses.currency)},"sum")]}),n.jsxs("tr",{children:[n.jsx("th",{children:n.jsx(f,{content:s[0]?.rndRelativeToIncome.rule,className:"max-w-[220px] whitespace-normal",children:n.jsx("p",{children:"R&D Expenses out of Income"})})}),s.map(e=>n.jsx(u,{originalRuleData:e.rndRelativeToIncome,diffRuleData:e.differences?.rndRelativeToIncome??void 0},e.year)),n.jsx("td",{})]}),n.jsxs("tr",{children:[n.jsx("td",{children:"Local Development Expenses"}),s.map(e=>n.jsx(i,{originalAmount:e.localDevelopmentExpenses.formatted,diffAmount:e.differences?.localDevelopmentExpenses?.formatted??void 0},e.year)),n.jsx(i,{originalAmount:d(s.map(e=>e.localDevelopmentExpenses.raw).reduce((e,l)=>e+l,0),s[0].localDevelopmentExpenses.currency),diffAmount:m(s.map(e=>e.differences?.localDevelopmentExpenses?.raw??e.localDevelopmentExpenses.raw).filter(e=>!!e),s[0].localDevelopmentExpenses.currency)},"sum")]}),n.jsxs("tr",{children:[n.jsx("th",{children:n.jsx(f,{content:s[0]?.localDevelopmentRelativeToRnd.rule,className:"max-w-[220px] whitespace-normal",children:n.jsx("p",{children:"Local Development out of R&D"})})}),s.map(e=>n.jsx(u,{originalRuleData:e.localDevelopmentRelativeToRnd,diffRuleData:e.differences?.localDevelopmentRelativeToRnd??void 0},e.year)),n.jsx("td",{})]}),n.jsxs("tr",{children:[n.jsx("td",{children:"Foreign Development Expenses"}),s.map(e=>n.jsx(i,{originalAmount:e.foreignDevelopmentExpenses.formatted,diffAmount:e.differences?.foreignDevelopmentExpenses?.formatted??void 0},e.year)),n.jsx(i,{originalAmount:d(s.map(e=>e.foreignDevelopmentExpenses.raw).reduce((e,l)=>e+l,0),s[0].foreignDevelopmentExpenses.currency),diffAmount:m(s.map(e=>e.differences?.foreignDevelopmentExpenses?.raw??e.foreignDevelopmentExpenses.raw).filter(e=>!!e),s[0].foreignDevelopmentExpenses.currency)},"sum")]}),n.jsxs("tr",{children:[n.jsx("th",{children:n.jsx(f,{content:s[0]?.foreignDevelopmentRelativeToRnd.rule,className:"max-w-[220px] whitespace-normal",children:n.jsx("p",{children:"Foreign Development out of R&D"})})}),s.map(e=>n.jsx(u,{originalRuleData:e.foreignDevelopmentRelativeToRnd,diffRuleData:e.differences?.foreignDevelopmentRelativeToRnd??void 0},e.year)),n.jsx("td",{})]}),n.jsxs("tr",{children:[n.jsx("td",{children:"R&D Business Trips Expenses"}),s.map(e=>n.jsx(i,{originalAmount:e.businessTripRndExpenses.formatted,diffAmount:e.differences?.businessTripRndExpenses?.formatted??void 0},e.year)),n.jsx(i,{originalAmount:d(s.map(e=>e.businessTripRndExpenses.raw).reduce((e,l)=>e+l,0),s[0].businessTripRndExpenses.currency),diffAmount:m(s.map(e=>e.differences?.businessTripRndExpenses?.raw??e.businessTripRndExpenses.raw).filter(e=>!!e),s[0].businessTripRndExpenses.currency)},"sum")]})]})]})})})};export{O as CorporateTaxRulingComplianceReport};