PageSourceSearch

https://polyscript.app/assets/DownloadsPage-BJ7Cu8Ss.js

js polyscript.app collected 2026-09-24 14:32:04 UTC 15,898 bytes, 9 lines download raw bytes

1import{j as e}from"./index-BDRNyBuN.js";import"./react-DqbaNhOL.js";import"./audio-Bu2lAtPy.js";const S="/assets/app-store-qr-code-CPaRbTfr.png",v="/assets/play-store-code-CcxWGvmz.png",R="/assets/chrome-web-store-code-B8H-pqPy.png";function I(r){return String(r).replace(/\/+$/,"")}function z(r,o){try{const n=new URL(r);if(n.hostname!=="github.com")return o;const[i,t]=n.pathname.split("/").filter(Boolean);return!i||!t?o:`${i}/${t.replace(/\.git$/i,"")}`}catch{return o}}function k(r){const o=I(r);return o?`${o}/releases`:""}const l="https://www.polyscript.app/desktop-downloads/",A="mac".toLowerCase(),L="https://www.polyscript.app/desktop-downloads/PolyScript-3.0.76.dmg",f="https://apps.apple.com/id/app/polyscript/id6740437815",u="https://play.google.com/store/apps/details?id=com.sammo.poly",m="https://chromewebstore.google.com/detail/jdjbdhoffbdeaaffgghonfplhnnphnpj",g="https://iina.io",p="https://github.com/polyscript-app/polyplugin-release",b=k(p)||p,P=z(p,"polyscript-app/polyplugin-release"),j="https://github.com/SammoMichael/polyscript-vlc-plugin/releases/download/vlc-v0.1.2/Polyscript-VLC-mac.zip",y="/download/vlc/release-notes",w=[{key:"mac",title:"macOS",subtitle:"Apple Silicon and Intel",icon:"macos",format:".dmg",directUrl:L,browseUrl:l},{key:"windows",title:"Windows",subtitle:"Windows 10/11",icon:"windows",format:".msi",directUrl:"https://www.polyscript.app/desktop-downloads/PolyScript-3.0.76.msi",browseUrl:l},{key:"linux",title:"Linux",subtitle:"Debian/Ubuntu/Fedora",icon:"linux",format:".deb / .rpm",directUrl:"https://www.polyscript.app/desktop-downloads/polyscript_3.0.76-1_amd64.deb",browseUrl:l}];function U(r){var t;const o=String(((t=r==null?void 0:r.userAgentData)==null?void 0:t.platform)||(r==null?void 0:r.platform)||"").toLowerCase(),n=String((r==null?void 0:r.userAgent)||"").toLowerCase(),i=`${o} ${n}`.trim();return!i||/android|iphone|ipad|ipod|mobile/i.test(i)?null:i.includes("win")?"windows":i.includes("mac")?"mac":i.includes("linux")||i.includes("x11")?"linux":null}function B(r,o,n){const i=U(n)||o;return r.find(t=>t.key===i)||r.find(t=>t.key===o)||r[0]}function D(r){return r!=null&&r.directUrl?{url:r.directUrl,label:`Download Now (${r.title})`,description:`Most users start with ${r.title} (${r.format}) on this device.`,external:!1}:{url:(r==null?void 0:r.browseUrl)||l,label:`Open ${(r==null?void 0:r.title)||"Desktop"} Releases`,description:`A direct ${(r==null?void 0:r.title)||"desktop"} installer is not configured yet, so we’ll open the public release repo instead.`,external:!0}}function _(r,o){return!r||!r.directUrl?!1:r.key===o}function N({name:r}){return r==="chrome"?e.jsx("span",{style:{width:"72%",height:"72%",borderRadius:"999px",background:"conic-gradient(#ea4335 0 34%, #fbbc05 0 66%, #34a853 0 100%)",display:"inline-flex",alignItems:"center",justifyContent:"center",position:"relative"},children:e.jsx("span",{style:{width:"40%",height:"40%",borderRadius:"999px",background:"#4285f4",border:"2px solid #fff",boxSizing:"border-box"}})}):r==="app-store"?e.jsxs("svg",{viewBox:"0 0 48 48","aria-hidden":"true",style:{width:"76%",height:"76%"},children:[e.jsx("rect",{width:"48",height:"48",rx:"12",fill:"#0a84ff"}),e.jsx("path",{d:"M17 34l8-20M31 34l-8-20M14 29h20",stroke:"#fff",strokeWidth:"4",strokeLinecap:"round"}),e.jsx("path",{d:"M20 18l3-5M25 13l3 5",stroke:"#fff",strokeWidth:"3",strokeLinecap:"round",opacity:"0.9"})]}):r==="google-play"?e.jsxs("svg",{viewBox:"0 0 48 48","aria-hidden":"true",style:{width:"76%",height:"76%"},children:[e.jsx("path",{d:"M12 9v30l15-15z",fill:"#34a853"}),e.jsx("path",{d:"M27 24l8-8-23-7z",fill:"#4285f4"}),e.jsx("path",{d:"M27 24l8 8-23 7z",fill:"#fbbc05"}),e.jsx("path",{d:"M35 16l5 5c2 2 2 4 0 6l-5 5-8-8z",fill:"#ea4335"})]}):r==="vlc"?e.jsxs("svg",{viewBox:"0 0 48 48","aria-hidden":"true",style:{width:"76%",height:"76%"},children:[e.jsx("ellipse",{cx:"24",cy:"39",rx:"16",ry:"5",fill:"#d96900",opacity:"0.32"}),e.jsx("path",{d:"M15 38h18L26 8h-4z",fill:"#ff8800"}),e.jsx("path",{d:"M18 27h12l-1.2-5h-9.6zM16.5 34h15l-1.1-4.5H17.6zM20.5 16h7l-1-4h-5z",fill:"#fff"}),e.jsx("path",{d:"M15 38h18l2 4H13z",fill:"#ff8800"})]}):r==="windows"?e.jsx("svg",{viewBox:"0 0 48 48","aria-hidden":"true",style:{width:"70%",height:"70%"},children:e.jsx("path",{d:"M8 11l14-2v14H8zM25 8l15-2v17H25zM8 25h14v14L8 37zM25 25h15v17l-15-2z",fill:"#0078d4"})}):r==="linux"?e.jsxs("svg",{viewBox:"0 0 48 48","aria-hidden":"true",style:{width:"78%",height:"78%"},children:[e.jsx("ellipse",{cx:"18",cy:"40",rx:"8",ry:"4",fill:"#f5c542"}),e.jsx("ellipse",{cx:"30",cy:"40",rx:"8",ry:"4",fill:"#f5c542"}),e.jsx("path",{d:"M16 22c0-9 4-15 8-15s8 6 8 15c0 9 5 15 5 18H11c0-3 5-9 5-18z",fill:"#222"}),e.jsx("ellipse",{cx:"24",cy:"29",rx:"8",ry:"10",fill:"#fff"}),e.jsx("circle",{cx:"21",cy:"16",r:"1.8",fill:"#fff"}),e.jsx("circle",{cx:"27",cy:"16",r:"1.8",fill:"#fff"}),e.jsx("path",{d:"M21 21h6l-3 3z",fill:"#f5c542"})]}):r==="macos"?e.jsxs("svg",{viewBox:"0 0 48 48","aria-hidden":"true",style:{width:"74%",height:"74%"}
1,children:[e.jsx("rect",{x:"6",y:"6",width:"36",height:"36",rx:"11",fill:"#111827"}),e.jsx("path",{d:"M18 27c-3-4-1-11 4-11 1 0 2 .4 3 .4s2-.5 3-.5c2 0 4 1 5 3-4 2-4 8 .6 10-.9 3-3 7-5.4 7-1.2 0-2-.7-3.4-.7-1.5 0-2.3.7-3.5.7-1.8 0-2.8-2-3.3-2.8z",fill:"#f8fafc"}),e.jsx("path",{d:"M25 15c0-3 2.3-5.1 5-5-.1 2.6-2 5-5 5z",fill:"#f8fafc"})]}):r==="iina"?e.jsxs("svg",{viewBox:"0 0 48 48","aria-hidden":"true",style:{width:"76%",height:"76%"},children:[e.jsx("rect",{x:"6",y:"6",width:"36",height:"36",rx:"10",fill:"#171923"}),e.jsx("path",{d:"M20 15l14 9-14 9z",fill:"#fff"}),e.jsx("circle",{cx:"15",cy:"14",r:"3",fill:"#7c3aed"}),e.jsx("circle",{cx:"34",cy:"34",r:"3",fill:"#06b6d4"})]}):null}function c({styles:r,icon:o,size:n=42,accent:i=!1}){return e.jsx("span",{"aria-hidden":"true",style:{width:`${n}px`,height:`${n}px`,borderRadius:i?"16px":"14px",border:`1px solid ${r.border}`,background:i?"#fff":r.bgSecondary,display:"inline-flex",alignItems:"center",justifyContent:"center",boxShadow:i?"0 12px 28px rgba(15, 23, 42, 0.12)":void 0,flex:"0 0 auto"},children:e.jsx(N,{name:o})})}function d({styles:r,href:o,children:n,primary:i=!1,external:t=!0,maxWidth:a}){return e.jsx("a",{href:o,target:t?"_blank":void 0,rel:t?"noreferrer":void 0,className:"ps-raise",style:{textDecoration:"none",border:`1px solid ${r.border}`,borderRadius:"10px",display:"inline-flex",justifyContent:"center",alignItems:"center",minHeight:i?"46px":"42px",fontWeight:i?800:700,color:i?"#ffffff":r.text,background:i?"#111827":r.bgSecondary,padding:"0 14px",maxWidth:a},children:n})}function s({styles:r,icon:o,title:n,description:i,primaryLabel:t,primaryUrl:a,secondaryLabel:x,secondaryUrl:h}){return e.jsxs("div",{className:"ps-raise",style:{border:`1px solid ${r.border}`,borderRadius:"14px",padding:"16px",background:r.cardBg,display:"grid",gap:"10px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"12px"},children:[e.jsx(c,{styles:r,icon:o}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:"18px",fontWeight:700},children:n}),e.jsx("div",{style:{fontSize:"13px",color:r.textSecondary,marginTop:"6px",lineHeight:1.4},children:i})]})]}),e.jsx(d,{styles:r,href:a,children:t}),x&&h?e.jsx("a",{href:h,target:"_blank",rel:"noreferrer",style:{color:r.textSecondary,fontSize:"13px",textDecoration:"underline"},children:x}):null]})}function C({styles:r,primaryTarget:o}){return e.jsxs(e.Fragment,{children:[e.jsx("h2",{style:{margin:"8px 0 10px",fontSize:"22px"},children:"Desktop Apps"}),e.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(240px, 1fr))",gap:"14px",marginBottom:"18px"},children:w.map(n=>{const i=_(n,o==null?void 0:o.key);return e.jsxs("div",{className:"ps-raise",style:{border:`1px solid ${r.border}`,borderRadius:"14px",padding:"16px",background:r.cardBg,display:"grid",gap:"10px",minHeight:"178px"},children:[e.jsxs("div",{style:{display:"flex",gap:"12px",alignItems:"flex-start"},children:[e.jsx(c,{styles:r,icon:n.icon}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:"20px",fontWeight:700},children:n.title}),e.jsx("div",{style:{fontSize:"13px",color:r.textSecondary},children:n.subtitle}),e.jsxs("div",{style:{marginTop:"8px",fontSize:"12px",color:r.textSecondary},children:["Installer format: ",e.jsx("b",{style:{color:r.text},children:n.format})]})]})]}),i?e.jsx(d,{styles:r,href:n.directUrl,external:!1,children:"Direct Download"}):e.jsx(d,{styles:r,href:n.browseUrl,children:"Open Public Releases"})]},n.key)})})]})}function $({styles:r}){const o=(r==null?void 0:r.shadow)||"rgba(15, 23, 42, 0.16)",n=B(w,A,typeof window>"u"?void 0:window.navigator);return e.jsxs("div",{className:"ps-downloads",style:{background:r.bg,color:r.text,padding:"var(--dl-page-padding)"},children:[e.jsx("style",{children:`
2        .ps-raise {
3          transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
4        }
5        .ps-raise:hover {
6          transform: translateY(-4px);
7          box-shadow: 0 16px 34px ${o};
8        }
9      `}),e.jsxs("div",{style:{maxWidth:"1040px",margin:"0 auto"},children:[e.jsxs("div",{style:{marginBottom:"18px"},children:[e.jsx("h1",{style:{margin:0,fontSize:"var(--dl-title-size)",lineHeight:1.1},children:"Download Polyscript Everywhere"}),e.jsx("p",{style:{marginTop:"10px",marginBottom:0,color:r.textSecondary,maxWidth:"760px"},children:"Install once, continue across web, browser extension, desktop, mobile, VLC, and the IINA plugin flow on macOS."})]}),e.jsxs("div",{className:"ps-raise",style:{border:`1px solid ${r.border}`,borderRadius:"14px",padding:"var(--dl-card-padding)",background:r.cardBg,marginBottom:"18px",display:"grid",gridTemplateColumns:"var(--dl-card-columns)",gap:"16px",alignItems:"center"},children:[e.jsxs("div",{style:{display:"flex",gap:"14px",alignItems:"flex-start"},children:[e.jsx(c,{styles:r,icon:"chrome",size:56,accent:!0}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:"var(--dl-label-size)",color:r.textSecondary,fontWeight:700,marginBottom:"4px"},children:"Recommended first"}),e.jsx("div",{style:{fontSize:"var(--dl-heading-size)",fontWeight:900,lineHeight:1.1},children:"Browser Extension"}),e.jsx("div",{style:{fontSize:"14px",color:r.textSecondary,marginTop:"8px",lineHeight:1.45,maxWidth:"620px"},children:"Add Polyscript to YouTube, Netflix, and other video sites from Chrome."})]})]}),e.jsx(d,{styles:r,href:m,primary:!0,maxWidth:"var(--dl-action-width)",children:"Install E
9xtension"})]}),e.jsx("h2",{style:{margin:"8px 0 10px",fontSize:"22px"},children:"More Ways to Use Polyscript"}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(230px, 1fr))",gap:"14px",marginBottom:"18px"},children:[e.jsx(s,{styles:r,icon:"vlc",title:"VLC Extension",description:"Add Polyscript subtitle translation to VLC for local media on macOS.",primaryLabel:"Download VLC Extension",primaryUrl:j,secondaryLabel:"View VLC Release Notes",secondaryUrl:y}),e.jsx(s,{styles:r,icon:"iina",title:"IINA + Polyplugin",description:"A macOS player workflow for local video.",primaryLabel:"Install IINA",primaryUrl:g,secondaryLabel:"Open Polyplugin Releases",secondaryUrl:b}),e.jsx(s,{styles:r,icon:"app-store",title:"iOS App",description:"Study and sync on iPhone and iPad.",primaryLabel:"Open App Store",primaryUrl:f}),e.jsx(s,{styles:r,icon:"google-play",title:"Android App",description:"Practice and playback on Android and WearOS.",primaryLabel:"Open Google Play",primaryUrl:u})]}),e.jsx("div",{className:"ps-phone-only",children:e.jsx("div",{style:{border:`1px solid ${r.border}`,borderRadius:"14px",padding:"12px",background:r.cardBg,marginBottom:"18px",color:r.textSecondary,fontSize:"13px",lineHeight:1.5},children:"On phones, use the install buttons above for fastest setup. QR codes are still available on larger screens."})}),e.jsx("div",{className:"ps-desktop-only",children:e.jsxs(e.Fragment,{children:[e.jsx("h2",{style:{margin:"8px 0 10px",fontSize:"22px"},children:"Quick QR Links"}),e.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:"14px",marginBottom:"18px"},children:[{title:"App Store",subtitle:"Scan to install iOS app",qr:S,href:f},{title:"Google Play",subtitle:"Scan to install Android + WearOS app",qr:v,href:u},{title:"Chrome Web Store",subtitle:"Scan to install extension",qr:R,href:m}].map(i=>e.jsxs("a",{href:i.href,target:"_blank",rel:"noreferrer",className:"ps-raise",style:{textDecoration:"none",border:`1px solid ${r.border}`,borderRadius:"14px",padding:"14px",background:r.cardBg,color:r.text,display:"grid",gap:"8px",justifyItems:"center"},children:[e.jsx("img",{src:i.qr,alt:`${i.title} QR code`,style:{width:"140px",height:"140px",objectFit:"contain"}}),e.jsx("div",{style:{fontWeight:700},children:i.title}),e.jsx("div",{style:{fontSize:"12px",color:r.textSecondary},children:i.subtitle})]},i.title))})]})}),e.jsx("h2",{style:{margin:"8px 0 10px",fontSize:"22px"},children:"Mobile Browser Extension Notes"}),e.jsx("div",{className:"ps-raise",style:{border:`1px solid ${r.border}`,borderRadius:"14px",padding:"16px",background:r.cardBg,marginBottom:"16px"},children:e.jsxs("ul",{style:{margin:0,paddingLeft:"20px",color:r.textSecondary,lineHeight:1.55},children:[e.jsx("li",{children:"iOS includes the Polyscript Safari extension for YouTube, but YouTube extension overlays do not appear during full-screen playback."}),e.jsx("li",{children:"Android users can add the Polyscript browser extension to YouTube in Yandex Browser or other Android browsers that support Chrome extensions."})]})}),e.jsx("h2",{style:{margin:"8px 0 10px",fontSize:"22px"},children:"Install VLC Extension (macOS)"}),e.jsxs("div",{className:"ps-raise",style:{border:`1px solid ${r.border}`,borderRadius:"14px",padding:"16px",background:r.cardBg,marginBottom:"16px"},children:[e.jsx("p",{style:{margin:0,color:r.textSecondary,lineHeight:1.55},children:"Download the extension, open the installer, then restart VLC. After that, open a video and choose Polyscript from VLC’s extension menu when you want translated subtitles."}),e.jsxs("div",{style:{display:"flex",flexWrap:"wrap",gap:"10px",marginTop:"14px"},children:[e.jsx("a",{href:j,target:"_blank",rel:"noreferrer",style:{color:r.text,fontWeight:700},children:"Download the VLC extension"}),e.jsx("a",{href:y,target:"_blank",rel:"noreferrer",style:{color:r.textSecondary},children:"Checksums and update notes"})]})]}),e.jsx("h2",{style:{margin:"8px 0 10px",fontSize:"22px"},children:"Install IINA + Polyplugin (macOS)"}),e.jsx("div",{className:"ps-raise",style:{border:`1px solid ${r.border}`,borderRadius:"14px",padding:"16px",background:r.cardBg,marginBottom:"16
9px"},children:e.jsxs("ol",{style:{margin:0,paddingLeft:"20px",color:r.textSecondary,lineHeight:1.55},children:[e.jsxs("li",{children:["Install IINA from ",e.jsx("a",{href:g,target:"_blank",rel:"noreferrer",style:{color:r.text},children:"iina.io"}),"."]}),e.jsx("li",{children:"In IINA, open Preferences, then Plugins."}),e.jsxs("li",{children:["Use the plugin option to install from GitHub and enter ",e.jsx("b",{style:{color:r.text},children:P}),"."]}),e.jsx("li",{children:"Restart IINA and verify Polyscript plugin controls are available."}),e.jsxs("li",{children:["If GitHub install fails, use the manual fallback from ",e.jsx("a",{href:b,target:"_blank",rel:"noreferrer",style:{color:r.text},children:"the public Polyplugin releases"})," and install the downloaded package."]})]})}),e.jsx(C,{styles:r,primaryTarget:n}),e.jsxs("div",{style:{marginTop:"12px",color:r.textSecondary,fontSize:"13px",lineHeight:1.4},children:["Need older desktop builds or specific architectures?"," ",e.jsx("a",{href:l,target:"_blank",rel:"noreferrer",style:{color:r.text},children:"Open all desktop releases"}),"."]})]})]})}export{$ as DownloadsPage,U as detectDesktopTargetKey,D as resolvePrimaryDesktopAction,B as resolvePrimaryDesktopTarget};

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.