1"use strict";(self.webpackChunkuniprot_website=self.webpackChunkuniprot_website||[]).push([[3467],{36392(n,e,o){o.r(e),o.d(e,{default:()=>W}),o(67622),o(34059),o(90508),o(38660);var i=o(36371),t=o(78375),s=o(34821),r=o(52871),c=o(58877),a=(o(29690),o(80746),o(71763)),l=o(85399),d=o(87912),m=o(61151),p=o(38251),x=o(51153),h=o(69429),g=o(39014),j=o(44032),u=o(72695),I=o(43594),L=(o(29833),o(36967),o(91482),o(11207),o(84160),o(31511),o(19675),o(87870),o(21862),o(64636),o(69516),o(80329),o(61284),o(37930),o(99453),o(50906),o(79747),o(3731),o(14357),o(99469),o(36411),o(43462),o(69992),o(97500)),f=o.n(L),b=o(89381),A=o(27594),C=o(5782),D=o(49612),S=o(7671),N=o(94040),v=o(4500),E=o(91987);const w=({taxID:n,start:e,end:o,chromosome:i})=>`https://www.ensembl.org/${n}/Location/View?r=${i?`${i}:`:""}${e}-${o}`,$=({genomicLocation:n,taxID:e,noLink:o})=>{const t=(0,E.jsxs)(E.Fragment,{children:[n.chromosome&&`${n.chromosome}:`,(0,E.jsx)(i.Ig,{children:(n.reverseStrand?n.end:n.start)??""})," - ",(0,E.jsx)(i.Ig,{children:(n.reverseStrand?n.start:n.end)??""})]});return(0,E.jsx)(m.A,{className:v.A["no-wrap"],url:o?null:w({taxID:e,start:n.reverseStrand?n.end:n.start,end:n.reverseStrand?n.start:n.end,chromosome:n.chromosome}),children:t})},y="O5jXO";var k=o(51960);const F=(n,e)=>{const[o,i]=n.accession.split("-"),[t,s]=e.accession.split("-");return o!==t?o<t?-1:1:+i-+s},q=(0,d.Tn)(h.g$.uniprotkb),G=({exon:n,xrefInfo:e,isEnsemblID:o,canonical:t,maneSelect:s})=>(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)("td",{children:(0,E.jsx)(m.A,{url:n.transcriptID&&(0,u.rJ)(e?.uriLink,{id:n.transcriptID})||null,children:n.transcriptID})}),(0,E.jsx)("td",{children:(0,E.jsx)(m.A,{url:n.translationID&&(0,u.rJ)(e?.uriLink,{id:n.translationID})||null,children:n.translationID})}),(0,E.jsx)("td",{children:(0,E.jsx)(m.A,{url:o&&n.id&&(0,u.rJ)(e?.uriLink,{id:n.id})||null,children:n.id})}),(0,E.jsxs)("td",{children:[(0,E.jsx)(l.N_,{to:q(n.accession,I.l.Entry),children:n.accession}),n.accession===t&&(0,E.jsx)(i.vu,{compact:!0,children:"canonical"}),n.transcriptID===s&&(0,E.jsx)(i.vu,{compact:!0,children:"MANE-Select"})]}),(0,E.jsx)("td",{children:n.proteinLocation.position?(0,E.jsx)(i.Ig,{children:n.proteinLocation.position.position}):(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)(i.Ig,{children:n.proteinLocation.begin.position}),"-",(0,E.jsx)(i.Ig,{children:n.proteinLocation.end.position})]})}),(0,E.jsx)("td",{children:(0,E.jsxs)("div",{className:"button-group",children:[(0,E.jsx)(S.A,{selectedEntries:[n.accessionWithCoordinates],blast:!0,children:e=>(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)("li",{children:(0,E.jsx)(D.A,{peps:n.proteinSequence,disabled:n.proteinSequence.length<7,title:"Search this peptide in UniProtKB",location:d.aZ.PeptideSearch,children:"Peptide Search (1)"})}),(0,E.jsx)("li",{children:(0,E.jsx)(C.A,{textToCopy:n.proteinSequence,postCopy:e,children:"Copy sequence"})})]})}),(0,E.jsx)(b.A,{selectedEntries:n.accessionWithCoordinates})]})})]}),T=({gnCoordinates:n,taxID:e,exons:o,isEnsemblID:t,mappedIsoforms:s})=>{const r=(0,E.jsxs)(E.Fragment,{children:[n.genomicLocation.chromosome&&`${n.genomicLocation.chromosome}:`,o[0].genomeLocation.position?(0,E.jsx)(i.Ig,{children:o[0].genomeLocation.position.position}):(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)(i.Ig,{children:n.genomicLocation.reverseStrand?o[0].genomeLocation.end.position:o[0].genomeLocation.begin.position})," - ",(0,E.jsx)(i.Ig,{children:n.genomicLocation.reverseStrand?o[0].genomeLocation.begin.position:o[0].genomeLocation.end.position})]})]});return(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)("td",{children:t?(0,E.jsx)(m.A,{url:o[0].genomeLocation.position?w({taxID:e,start:o[0].genomeLocation.position.position,end:o[0].genomeLocation.position.position,chromosome:n.genomicLocation.chromosome}):w({taxID:e,start:n.genomicLocation.reverseStrand?o[0].genomeLocation.end.position:o[0].genomeLocation.begin.position,end:n.genomicLocation.reverseStrand?o[0].genomeLocation.begin.position:o[0].genomeLocation.end.position,chromosome:n.genomicLocation.chromosome}),children:r}):r}),s.map(n=>{const e=o.find(e=>e.accession===n);return e?e.proteinLocation.position?(0,E.jsxs)(a.Fragment,{children:[(0,E.jsx)("td",{className:y}),(0,E.jsx)("td",{className:y}),(0,E.jsx)("td",{className:y,children:(0,E.jsx)(i.Ig,{children:e.proteinLocation.position.position})}),(0,E.jsx)("td",{className:y})]},n):(0,E.jsxs)(a.Fragment,{children:[(0,E.jsx)("td",{className:y,children:(0,E.jsx)(i.Ig,{children:e.proteinLocation.begin.position})}),(0,E.jsx)("td",{className:y,children:"-"}),(0,E.jsx)("td",{className:y,children:(0,E.jsx)(i.Ig,{children:e.proteinLocation.end.position})}),(0,E.jsx)("td",{className:y})]},n):(0,E.jsxs)(a.Fragment,{children:[(0,E.jsx)("td",{className:y}),(0,E.jsx)("td",{className:y,children:"â"}),(0,E.jsx)("td",{className:y}),(0,E.jsx)("td",{className:y})]},n)})]})},O=({exons:n,xrefInfo:e,isEnsemblID:o,colSpan:t})=>{const s=new Set(n.map(n=>n.proteinSequence));return(0,E.jsx)("td",{colSpan:t,children:(0,E.jsxs)(i.Zp,{className:"rdXZc",children:[n.length>1&&(0,E.jsx)("div",{children:1===s.size?"All proteins sequences from these exons are identical.":(0,E.jsxs)(E.Fragment,{children:["There are ",s.size," unique protein sequences resulting from these ",n.length," exons."," ",(0,E.jsx)("div",{className:"button-group",children:(0,E.jsx)(S.A,{selectedEntries:n.map(n=>n.accessionWithCoordinates),align:(0,E.jsx)(A.A,{selectedEntries:n.map(n=>n.accessionWithCoordinates),textSuffix:"peptides"})})})]})}),(0,E.jsxs)(N.A,{children:[(0,E.jsxs)(N.A.Head,{toggleAll:n.length>1,children:[(0,E.jsx)("th",{children:"Transcript ID"}),(0,E.jsx)("th",{children:"Translation ID"}),(0,E.jsx)("th",{children:"Exon ID"}),(0,E.jsx)("th",{children:"UniProtKB Isoform"}),(0,E.jsx)("th",{children:"Position(s)"}),(0,E.jsx)("th",{})]}),(0,E.jsx)(N.A.Body,{data:n,children:n=>({key:`${n.transcriptID}|${n.translationID}|${n.id}`,row:(0,E.jsx)(G,{exon:n,xrefInfo:e,isEnsemblID:o}),extraContent:(0,E.jsx)("td",{colSpan:6,children:n.proteinSequence})})})]})]})})},B=({flatGenomicEntries:n,xrefInfo:e,mappedIsoforms:o,isEnsemblID:t,canonical:s})=>{const r=Object.entries((n=>{return(0,k.A)(n.map(n=>n.gnCoordinate.genomicLocation.exon.map(e=>({...e,accession:n.accession,transcriptID:n.gnCoordinate.ensemblTranscriptId,translationID:n.gnCoordinate.ensemblTranslationId,proteinSequence:e.proteinLocation.position?n.sequence.charAt(e.proteinLocation.position.position-1):n.sequence.slice(e.proteinLocation.begin.position-1,e.proteinLocation.end.position),accessionWithCoordinates:`${n.accession}[${e.proteinLocation.position?e.proteinLocation.position.position:`${e.proteinLocation.begin.position}-${e.proteinLocation.end.position}`}]`}))).flat(2).sort((e=n[0].gnCoordinate.genomicLocation.reverseStrand,(n,o)=>{const i=n.genomeLocation.position?n.genomeLocation.position.position:n.genomeLocation.begin.position,t=o.genomeLocation.position?o.genomeLocation.position.position:o.genomeLocation.begin.position;if(i!==t)return e?t-i:i-t;const s=n.genomeLocation.position?n.genomeLocation.position.position:n.genomeLocation.begin.position,r=o.genomeLocation.position?o.genomeLocation.position.position:o.genomeLocation.begin.position;return e?r-s:s-r})),n=>n.genomeLocation.position?.position||`${n.genomeLocation.begin?.position}-${n.genomeLocation.end?.position}`);var e})(n));
1return(0,E.jsx)("section",{className:f()("wqUFs"),children:(0,E.jsxs)(N.A,{className:f()("YEs5L",v.A["no-wrap"]),children:[(0,E.jsxs)(N.A.Head,{toggleAll:r.length>1,children:[(0,E.jsx)("th",{children:"Exon coordinates"}),o.map(n=>(0,E.jsxs)("th",{title:`Protein coordinates for ${n} mapping to specific exons. Click to view isoform`,colSpan:4,children:[(0,E.jsx)(l.N_,{to:q(n,I.l.Entry),children:n}),s===n&&(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)("br",{}),(0,E.jsx)(i.vu,{compact:!0,children:"canonical"})]})]},n))]}),(0,E.jsx)(N.A.Body,{data:r,children:([i,s])=>({key:i,row:(0,E.jsx)(T,{gnCoordinates:n[0].gnCoordinate,taxID:n[0].taxid,exons:s,isEnsemblID:t,mappedIsoforms:o}),extraContent:(0,E.jsx)(O,{exons:s,xrefInfo:e,isEnsemblID:t,colSpan:1+4*o.length})})})]})})},_=(0,d.Tn)(h.g$.uniprotkb),J=({entries:n,xrefInfo:e,isEnsemblID:o,oneIsoformOnly:t,isCanonical:s,maneSelect:r})=>{const c=n[0],a=[{title:"Genomic location",content:c.gnCoordinate.genomicLocation.start&&c.gnCoordinate.genomicLocation.end&&(0,E.jsx)($,{genomicLocation:c.gnCoordinate.genomicLocation,taxID:n[0].taxid,noLink:!o})},{title:"Number of exons",content:c.gnCoordinate.genomicLocation.exon.length},{title:(o?"Ensembl t":"T")+"ranscript and translation IDs",content:(0,E.jsx)(E.Fragment,{children:n.map((n,o)=>{const{ensemblTranscriptId:t,ensemblTranslationId:s}=n.gnCoordinate;return(0,E.jsxs)("div",{children:[(0,E.jsx)(m.A,{url:t&&(0,u.rJ)(e?.uriLink,{id:t})||null,children:t}),(0,E.jsx)(m.A,{url:s&&(0,u.rJ)(e?.uriLink,{id:s})||null,children:s}),t&&r.has(t)&&(0,E.jsx)(i.vu,{compact:!0,children:"MANE-Select"})]},o)})})}];return(0,E.jsxs)("section",{children:[(0,E.jsxs)("h4",{className:f()({"visually-hidden":t}),children:["Isoform:"," ",(0,E.jsx)(l.N_,{to:_(c.accession,I.l.Entry),children:c.accession}),s&&(0,E.jsx)(i.vu,{compact:!0,children:"canonical"})]}),(0,E.jsx)(i.f9,{infoData:a,columns:!0})]})},M=(0,d.Tn)(h.g$.uniprotkb),P=({entries:n,index:e,isoformIDs:o,canonical:t,maneSelect:s})=>{const r=Object.entries(n),c=r[0][1][0],d=(0,x.A)(),h=Boolean(c.gnCoordinate.ensemblGeneId?.startsWith("ENS")),L=d?.databaseToDatabaseInfo[h?"Ensembl":"EnsemblBacteria"],f=[{title:"Chromosome",content:c.gnCoordinate.genomicLocation.chromosome},{title:"Strand",content:c.gnCoordinate.genomicLocation.reverseStrand?"Reverse":"Forward"},{title:"Assembly Name",content:c.gnCoordinate.genomicLocation.assemblyName},{title:"Nucleotide ID",content:c.gnCoordinate.genomicLocation.nucleotideId},{title:(h?"Ensembl g":"G")+"ene ID",content:(0,E.jsx)(m.A,{url:c.gnCoordinate.ensemblGeneId&&(0,u.rJ)(L?.uriLink,{id:c.gnCoordinate.ensemblGeneId})||null,children:c.gnCoordinate.ensemblGeneId})}],b=r.map(([n])=>n),A=o.filter(n=>!b.includes(n));return(0,E.jsxs)(i.Zp,{header:(0,E.jsx)("h3",{children:c.gnCoordinate.ensemblGeneId?`Gene ${c.gnCoordinate.ensemblGeneId}`:`Genomic location ${e+1}`}),children:[(0,E.jsx)(i.f9,{infoData:f,columns:!0}),r.map(([n,e])=>(0,E.jsx)(J,{entries:e,xrefInfo:L,isEnsemblID:h,oneIsoformOnly:1===o.length,isCanonical:t===n,maneSelect:s},n)),(0,E.jsx)(p.A,{rootMargin:"0px 0px",children:(0,E.jsx)(B,{flatGenomicEntries:r.flatMap(([,n])=>n),xrefInfo:L,mappedIsoforms:b,isEnsemblID:h,canonical:t})}),A.length?(0,E.jsxs)(i.QB,{level:"info",children:["The ",(0,j.aX)("isoform",A.length)," ",A.map((n,e)=>(0,E.jsxs)(a.Fragment,{children:[(0,g.A)(e,A),(0,E.jsx)(l.N_,{to:M(n,I.l.Entry),children:n})]},n))," ",(0,j.aX)("has",A.length,"have")," no known mapping for this genomic location"]}):null]})},W=({primaryAccession:n,isoforms:e,maneSelect:o,title:a})=>{let l,d=[n];e&&(d=e.flatMap(n=>n.isoformIds),l=e.find(n=>"Displayed"===n.isoformSequenceStatus)?.isoformIds[0]);const{loading:m,data:p,progress:x,error:h,status:g}=(0,r.A)(s.A.proteinsApi.coordinates(d));if(m)return(0,E.jsxs)("div",{className:"wider-tab-content",children:[a&&(0,E.jsx)("h3",{children:a}),(0,E.jsx)(i.aH,{progress:x})]});if(h&&404!==g)return(0,E.jsx)("div",{className:"wider-tab-content",children:(0,E.jsx)(t.A,{status:g,error:h})});if(404===g||!p||!p?.length)return(0,E.jsxs)("section",{className:"wider-tab-content",children:[a&&(0,E.jsx)("h3",{children:a}),(0,E.jsxs)("div",{className:c.A["no-data"],children:["No genomic coordinate information available for ",n]})]});const j=(n=>{const e=Array.from(n).sort(F).flatMap(n=>n.gnCoordinate&&n.gnCoordinate.map(e=>({...n,gnCoordinate:e}))).filter(n=>Boolean(n)),o=(0,k.A)(e,n=>n?.gnCoordinate.ensemblGeneId),i=Object.fromEntries(Object.entries(o).map(([n,e])=>[n,(0,k.A)(e,n=>
1n.accession)]));return i})(p);return(0,E.jsxs)("section",{className:"wider-tab-content",children:[a&&(0,E.jsx)("h2",{children:a}),Object.entries(j).map(([n,e],i)=>(0,E.jsx)(P,{entries:e,index:i,isoformIDs:d,canonical:l,maneSelect:o},n))]})}},58877(n,e,o){o.d(e,["A",0,{"no-data":"OQOtm","too-many":"QS_GQ","zoom-tool-row":"eqtSR"}])}}]); 2//# sourceMappingURL=modern.uniprotkb-entry-genomic-coordinates.0ce86b.js.map
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.