1import {homepageFields as fields} from "./shop-collections-repaired-20260926.js"; 2/* AMP / Studio homepage. Original AMP assets and catalogue; no competitor content. */ 3import {r as React,L as Link} from './vendor-BQFFLPmI-v6905-fonttrial20260907.js'; 4import {u as useCart,a as useToast,S as SEO} from './index-B-sPGeca-v6905-welcome20260907.js'; 5import {s as catalogue} from './shopProducts-rcdGHNEX-v6905-welcome20260907.js'; 6import {Mark,PremiumProductCard,SectionHeading,localImage,liveProduct,sizeAvailable,useCatalogueRevision} from './premium-ui-20260926.js'; 7const h=React.createElement; 8function useData(url) { 9 const [data,setData]=React.useState(null); 10 React.useEffect(()=>{const controller=new AbortController();let alive=true;const timer=setTimeout(()=>controller.abort(),7000);fetch(url,{signal:controller.signal}).then(r=>r.ok?r.json():null).then(value=>{if(alive)setData(value);}).catch(()=>{}).finally(()=>clearTimeout(timer));return()=>{alive=false;clearTimeout(timer);controller.abort();};},[url]);return data; 11} 12export default function PremiumHome() { 13 const revision=useCatalogueRevision(); 14 const products=React.useMemo(()=>catalogue.map(liveProduct),[revision]); 15 const cart=useCart(),toast=useToast(); 16 const labs=useData('/lab-results.json'),reviews=useData('/assets/reviews.json'); 17 const find=slug=>products.find(p=>p.cleanSlug===slug||p.id.replace(/-\d+(?:mcg|mg|ml)$/i,'')===slug); 18 const highlights=['retatrutide','ghk-cu','tesamorelin','melanotan-2'].map(find).filter(Boolean); 19 const blends=products.filter(p=>p.category==='blends').slice(0,4); 20 const seenReports=new Set();const reports=(labs?.results||[]).filter(r=>{if(!r.product||!r.size||!Number.isFinite(Number(r.purityPercent))||!r.certificatePdf||seenReports.has(r.product))return false;seenReports.add(r.product);return true;}).slice(0,4); 21 const quotes=(reviews?.reviews||[]).filter(r=>r.author&&r.title&&r.text&&r.experienceDate).slice(0,3); 22 function add(p){const s=p.sizes.find(s=>sizeAvailable(p,s));if(!s){toast.addToast('This product is currently sold out','error');return;}cart.addItem({productId:p.id,name:p.name,slug:p.slug,size:s.size,price:s.price,image:localImage(s.image||p.image)});} 23 const heroVials=['ghk-cu','retatrutide','tesamorelin'].map(find).filter(Boolean); 24 return h(React.Fragment,null, 25 h(SEO,{title:'AllMyPeptides | Research Peptides, Considered in Every Detail',description:'Explore research peptides, compare vial sizes, view published batch documents and build your order. AllMyPeptides. For laboratory research only.',canonical:'https://allmypeptides.com/'}), 26 h('main',{className:'amp-premium-home',id:'ap-main'}, 27 h('section',{className:'ap-hero'}, 28 h('div',{className:'ap-container ap-hero-grid'}, 29 h('div',{className:'ap-hero-copy'}, 30 h('p',{className:'ap-eyebrow'},h('span',{className:'ap-status-dot'}),'THE DETAILS MAKE THE DIFFERENCE'), 31 h('h1',null,'Research essentials.',h('span',null,'Nothing overlooked.')), 32 h('p',{className:'ap-hero-lead'},'A considered collection of research compounds. Clear choices, useful batch information and all the details in one place.'), 33 h('div',{className:'ap-hero-actions'},h(Link,{to:'/shop/',className:'ap-button ap-button-primary'},'Explore the shop',h(Mark)),h(Link,{to:'/coa/',className:'ap-button ap-button-secondary'},'View batch documents',h(Mark,{name:'document'}))), 34 h('div',{className:'ap-hero-facts'},h('span',null,h('strong',null,products.length),'Compounds to explore'),h('span',null,h('strong',null,'Your choice'),'Multiple vial sizes'),h('span',null,h('strong',null,'UK delivery'),'Tracked to your door')), 35 h('p',{className:'ap-research-note'},'For laboratory research only. Not for human consumption.')), 36 h('div',{className:'ap-hero-art'}, 37 h('span',{className:'ap-art-label'},'ALLMYPEPTIDES',h('span',null,'THE RESEARCH EDIT')), 38 h('div',{className:'ap-art-orbit','aria-hidden':true}),h('div',{className:'ap-art-grid','aria-hidden':true}), 39 h('div',{className:'ap-hero-vials'},heroVials.map((p,i)=>h('img',{key:p.id,src:localImage(p.image),alt:p.name+' research vial',width:600,height:600,className:'ap-hero-vial ap-vial-'+i,fetchPriority:i===1?'high':'auto',decoding:'async'}))), 40 h('div',{className:'ap-art-caption'},h('span',null,'Built around your research.'),h('span',null,'AMP',h(Mark,{name:'plus'})))) 41 )), 42 h('div',{className:'ap-benefits'},h('div',{className:'ap-container ap-benefits-inner'}, 43 h(Link,{to:'/coa/'},h(Mark,{name:'document'}),h('span',null,'Batch documents',h('small',null,'Explore the COA library'))), 44 h(Link,{to:'/shipping/'},h(Mark,{name:'truck'}),h('span',null,'Free UK shipping over £75',h('small',null,'After promo discounts'))), 45 h(Link,{to:'/shop/'},h(Mark,{name:'tag'}),h('span',null,'Multi-buy savings',h('small',null,'10% for 2 · 15% for 3+ of the same item'))), 46 h(Link,{to:'/contact/'},h(Mark,{name:'bag'}),h('span',null,'Here to help',h('small',null,'Contact our support team'))))), 47 h('section',{className:'ap-section ap-container'},h(SectionHeading,{eyebrow:'MEET YOUR NEXT ESSENTIAL',title:'Collection highlights.',link:'/shop/',label:'Shop the collection'}),h('div',{className:'ap-product-grid'},highlights.map(p=>h(PremiumProductCard,{key:p.id,product:p,onAdd:()=>
47add(p)})))), 48 h('section',{className:'ap-section ap-fields-section'},h('div',{className:'ap-container'},h(SectionHeading,{eyebrow:'A DIFFERENT WAY TO DISCOVER',title:'Follow your field.',detail:'Explore the collection by research category.'}), 49 h('div',{className:'ap-fields'},fields.map((field,index)=>{const p=find(field.image);return h(Link,{key:field.id,to:'/shop/?category='+field.id,className:'ap-field ap-field-'+field.tone+' '+(field.layout||'')}, 50 h('span',{className:'ap-field-index'},String(index+1).padStart(2,'0'),' / RESEARCH'), 51 p&&h('img',{src:localImage(p.image),alt:'',width:600,height:600,loading:'lazy',decoding:'async'}), 52 h('div',{className:'ap-field-copy'},h('h3',null,field.name),h('p',null,field.small)),h('span',{className:'ap-field-arrow'},h(Mark)))})))), 53 blends.length>0&&h('section',{className:'ap-section ap-container'},h(SectionHeading,{eyebrow:'THE BLEND COLLECTION',title:'Better together. By design.',detail:'Browse the existing blend range and available vial sizes.',link:'/shop/?category=blends',label:'Explore blends'}),h('div',{className:'ap-product-grid'},blends.map(p=>h(PremiumProductCard,{key:p.id,product:p,onAdd:()=>add(p)})))), 54 h('section',{className:'ap-documents'},h('div',{className:'ap-container'},h('div',{className:'ap-proof-intro'},h('div',null,h('p',{className:'ap-eyebrow'},'DETAILS, NOT GUESSWORK'),h('h2',null,'Know whatâs',h('br'),h('span',null,'in the report.'))),h('div',null,h('p',null,'Explore published laboratory reports, batch references and recorded results. Check the document that matches your supplied batch.'),h(Link,{to:'/coa/',className:'ap-text-link'},'Explore all certificates',h(Mark)))), 55 reports.length>0&&h('div',{className:'ap-report-rail'+(reports.length<=2?' ap-report-pair':''),'aria-label':'Published batch reports',tabIndex:0},reports.map(r=>h('article',{key:r.reportNumber+'-'+r.size,className:'ap-report-card'}, 56 h('div',{className:'ap-report-top'},h(Mark,{name:'document'}),h('span',null,'BATCH REPORT')), 57 h('h3',null,r.product,' ',r.size),h('p',{className:'ap-report-batch'},r.batch), 58 h('p',{className:'ap-report-purity'},Number(r.purityPercent).toFixed(2),h('span',null,'%')),h('p',{className:'ap-report-label'},'RECORDED PURITY'), 59 h('dl',null,h('div',null,h('dt',null,'Reported content'),h('dd',null,r.contentFoundMg!=null?Number(r.contentFoundMg).toFixed(2)+' mg':'See report')),h('div',null,h('dt',null,'Laboratory'),h('dd',null,r.laboratory)),h('div',null,h('dt',null,'Batch'),h('dd',null,r.batch))), 60 h('a',{href:localImage(r.certificatePdf),target:'_blank',rel:'noopener noreferrer',className:'ap-report-link'},'Open certificate',h(Mark))))))), 61 h('section',{className:'ap-section ap-reviews-section'},h('div',{className:'ap-container'},h(SectionHeading,{eyebrow:'THE PEOPLE BEHIND THE ORDERS',title:'From our customers.',detail:'Selected reviews from the existing AMP review collection.'}), 62 quotes.length>0?h('div',{className:'ap-review-grid'},quotes.map(r=>h('article',{className:'ap-review-card',key:r.id},h('span',{className:'ap-review-stars','aria-label':r.rating+' out of 5'},'â '.repeat(Math.max(1,Math.min(5,r.rating)))),h('h3',null,r.title),h('p',null,r.text),h('footer',null,h('span',{className:'ap-avatar','aria-hidden':true},r.author.slice(0,1)),h('div',null,h('strong',null,r.author),h('small',null,new Date(r.experienceDate+'T12:00:00').toLocaleDateString('en-GB',{day:'numeric',month:'short',year:'numeric'}))),r.verified&&h('span',{className:'ap-review-verified'},h(Mark,{name:'check'}),'Verified'))))):h('p',{className:'ap-muted'},'Explore customer feedback on our review profile.'), 63 h('div',{className:'ap-centre'},h('a',{href:'https://uk.trustpilot.com/review/allmypeptides.com',target:'_blank',rel:'noopener noreferrer',className:'ap-text-link'},'Read customer reviews',h(Mark))))), 64 h('section',{className:'ap-resources ap-container'},h(Link,{to:'/rewards/',className:'ap-resource'},h('p',{className:'ap-eyebrow'},'A LITTLE MORE FROM AMP'),h('h2',null,'Your research.',h('br'),'Rewarded.'),h('p',null,'Explore your points, membership benefits and the AMP Rewards programme.'),h('span',{className:'ap-text-link'},'Explore Rewards',h(Mark))),h(Link,{to:'/guides/',className:'ap-resource'},h('p',{className:'ap-eyebrow'},'KEEP EXPLORING'),h('h2',null,'The details',h('br'),'are here.'),h('p',null,'Browse research guides and supporting information in one place.'),h('span',{className:'ap-text-link'},'Browse the guides',h(Mark)))), 65 h('section',{className:'ap-disclaimer'},h('div',{className:'ap-container'},h('p',{className:'ap-eyebrow'},'AN IMPORTANT DISTINCTION'),h('h2',null,'For research.',h('span',null,'Not for human consumption.')),h('div',null,h('p',null,'Our products are supplied for laboratory research only, not for human or veterinary use. Please review the research-use information and Terms of Service before ordering.'),h('a',{href:'/research-use-only/',className:'ap-text-link'},'Read the research-use notice',h(Mark))))) 66 )); 67}
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.