PageSourceSearch

https://mattiapispisa.it/assets/Skills-D5wdYFBm.js

js mattiapispisa.it collected 2026-10-05 06:57:51 UTC 3,297 bytes, 1 lines download raw bytes

1import{c as v,r as w,j as t}from"./react-DCZPTYgm.js";import{a as y,B as N,T as h}from"./index-CMrB0TKV.js";import"./fontawesome-BccMS8y1.js";import{S as D}from"./SubTitle-BngBvGdj.js";import"./i18n-BDRrJkzb.js";function _(s){const e=v.c(21),{title:a,description:i,level:r,microskills:l}=s.skill,{t:n}=y(),[x,j]=w.useState(!1),b=r/5*100,u=l&&l.length>0;let c;e[0]!==a?(c=t.jsx(h,{type:"h3",size:"lg",className:"font-bold uppercase break-words min-w-0 flex-1",children:a}),e[0]=a,e[1]=c):c=e[1];let o;e[2]!==r?(o=t.jsxs(h,{type:"span",semantic:"secondary",size:"xs",className:"whitespace-nowrap flex-shrink-0",children:[r,"/5"]}),e[2]=r,e[3]=o):o=e[3];let d;e[4]!==c||e[5]!==o?(d=t.jsxs("div",{className:"flex justify-between items-baseline gap-2",children:[c,o]}),e[4]=c,e[5]=o,e[6]=d):d=e[6];const k=`${b}%`;let p;e[7]!==k?(p=t.jsx("div",{className:"w-full h-2 bg-gray-200 dark:bg-gray-700 rounded-full overflow-hidden print:h-1.5",children:t.jsx("div",{className:"h-full bg-primary dark:bg-primary-dark transition-all duration-300 print:transition-none",style:{width:k}})}),e[7]=k,e[8]=p):p=e[8];let m;e[9]!==i?(m=i&&t.jsx(h,{size:"sm",className:"break-words",children:i}),e[9]=i,e[10]=m):m=e[10];let f;e[11]!==u||e[12]!==x||e[13]!==l||e[14]!==n?(f=u&&t.jsxs(t.Fragment,{children:[t.jsx(N,{variant:"flat",semantic:"secondary",size:"sm",onClick:()=>j(!x),text:t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"mr-1",children:x?"▼":"▶"}),n("moreDetail")]}),className:"justify-start px-2 py-1 -ml-2 print:hidden"}),t.jsx("div",{className:`flex flex-wrap gap-1.5 mt-1 ${x?"":"hidden print:flex"}`,children:l.map(S)})]}),e[11]=u,e[12]=x,e[13]=l,e[14]=n,e[15]=f):f=e[15];let g;return e[16]!==d||e[17]!==p||e[18]!==m||e[19]!==f?(g=t.jsxs("div",{className:"flex flex-col gap-2 print:gap-1 print-avoid-break h-full min-w-0",children:[d,p,m,f]}),e[16]=d,e[17]=p,e[18]=m,e[19]=f,e[20]=g):g=e[20],g}function S(s,e){return t.jsx(h,{type:"span",size:"xs",semantic:"secondary",className:"bg-gray-100 dark:bg-gray-800 px-2 py-0.5 rounded print:bg-transparent print:border print:border-gray-400 ",children:s},e)}const R=s=>[{title:"Dart",description:s("skillDartDesc"),level:5,microskills:["code_generation","dart_frog","rx_dart","melos","hive","get_it"]},{title:"Flutter",description:s("skillFlutterDesc"),level:5,microskills:["bloc_pattern","animations","platform_channels"]},{title:"Javascript & Typescript",description:s("skillJsTsDesc"),level:5},{title:"React & React Router",description:s("skillReactDesc"),level:5},{title:"Python",description:s("skillPythonDesc"),level:3.5,microskills:["pytorch","tensorflow","scikit-learn","pandas"]},{title:"Android",level:4.5},{title:"iOS",level:3.5},{title:"SQL",level:3.5},{title:"Java",level:3.5},{title:"C#",level:3.5}];function A(){const s=v.c(11),{t:e}=y();let a;s[0]!==e?(a=e("skills"),s[0]=e,s[1]=a):a=s[1];let i;s[2]!==a?(i=t.jsx(D,{children:a}),s[2]=a,s[3]=i):i=s[3];let r;s[4]!==e?(r=R(e).map(T),s[4]=e,s[5]=r):r=s[5];let l;s[6]!==r?(l=t.jsx("div",{className:"grid grid-cols-2 md:grid-cols-3 xl:grid-cols-4 gap-6 print:grid-cols-2 print:gap-4",children:r}),s[6]=r,s[7]=l):l=s[7];let n;return s[8]!==i||s[9]!==l?(n=t.jsxs(t.Fragment,{children:[i,l]}),s[8]=i,s[9]=l,s[10]=n):n=s[10],n}function T(s,e){return t.jsx(_,{skill:s},e)}export{A 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.