PageSourceSearch

https://textkits.org/_next/static/chunks/6186.8324cfd5b810ff58.js

js textkits.org collected 2026-10-01 13:08:11 UTC 30,486 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6186],{13804:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(19904).A)("refresh-ccw",[["path",{d:"M21 12a9 9 0 0 0-9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"14sxne"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M3 12a9 9 0 0 0 9 9 9.75 9.75 0 0 0 6.74-2.74L21 16",key:"1hlbsb"}],["path",{d:"M16 16h5v5",key:"ccwih5"}]])},17181:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(19904).A)("share-2",[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]])},21786:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(19904).A)("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]])},27395:(e,t,a)=>{a.d(t,{RM:()=>p,Uq:()=>g,XY:()=>o,iC:()=>s,pO:()=>n,us:()=>h,ut:()=>b,uu:()=>r});let r={topText:"CIRCLE SALE",bottomText:"SAVE 20%",mode:"badge",radius:232,fontSize:54,letterSpacing:2,fontFamily:"Inter, Arial, sans-serif",textColor:"#0f172a",backgroundMode:"color",backgroundColor:"#ecfdf5",showGuide:!0,showInnerRing:!0,showOuterRing:!0,backgroundZoom:1.08,backgroundOffsetX:0,backgroundOffsetY:0},o=[{value:"Inter, Arial, sans-serif",label:"Clean Sans",note:"Best default for badges"},{value:"Georgia, 'Times New Roman', serif",label:"Classic Serif",note:"Good for seals"},{value:"Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif",label:"Poster Bold",note:"Short sticker text"},{value:"'Courier New', Courier, monospace",label:"Mono Stamp",note:"Label-like spacing"},{value:"'Trebuchet MS', Arial, sans-serif",label:"Soft Sans",note:"Rounded social badges"}],n=[{label:"Sale badge",topText:"CIRCLE SALE",bottomText:"SAVE 20%",mode:"badge",radius:230,fontSize:56,letterSpacing:3,fontFamily:"Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif",textColor:"#14532d",backgroundColor:"#dcfce7"},{label:"Coffee logo",topText:"MOON ROAST",bottomText:"FRESH COFFEE",mode:"badge",radius:226,fontSize:46,letterSpacing:4,fontFamily:"Georgia, 'Times New Roman', serif",textColor:"#422006",backgroundColor:"#fef3c7"},{label:"Team patch",topText:"NORTH SIDE",bottomText:"TIGERS",mode:"badge",radius:236,fontSize:52,letterSpacing:2,fontFamily:"Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif",textColor:"#1e3a8a",backgroundColor:"#dbeafe"},{label:"Event seal",topText:"SUMMER MARKET",bottomText:"JUNE 2026",mode:"badge",radius:220,fontSize:44,letterSpacing:3,fontFamily:"Georgia, 'Times New Roman', serif",textColor:"#7c2d12",backgroundColor:"#ffedd5"},{label:"Round sticker",topText:"HANDMADE",bottomText:"WITH CARE",mode:"full",radius:214,fontSize:42,letterSpacing:5,fontFamily:"'Trebuchet MS', Arial, sans-serif",textColor:"#0f766e",backgroundColor:"#ccfbf1"}],l=/^#[0-9a-f]{6}$/iu;function c(e,t,a){let r=Number(e);return Number.isFinite(r)?Math.min(Math.max(r,t),a):t}function s(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"#0f172a",a=String(null!=e?e:"").trim().toLowerCase();return l.test(a)?a:t}function i(e){return String(null!=e?e:"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function d(e){return i(e).replace(/"/g,"&quot;")}function u(e,t){return String(null!=e?e:"").replace(/\s+/g," ").trim().slice(0,80)||t}function g(){var e,t,a,n,l,i;let d=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},g=["badge","top","bottom","full"].includes(d.mode)?d.mode:r.mode;return{topText:u(d.topText,r.topText),bottomText:u(d.bottomText,r.bottomText),mode:g,radius:c(null!=(e=d.radius)?e:r.radius,154,286),fontSize:c(null!=(t=d.fontSize)?t:r.fontSize,28,76),letterSpacing:c(null!=(a=d.letterSpacing)?a:r.letterSpacing,-1,9),fontFamily:o.some(e=>e.value===d.fontFamily)?d.fontFamily:r.fontFamily,textColor:s(d.textColor,r.textColor),backgroundMode:"transparent"===d.backgroundMode?"transparent":"color",backgroundColor:s(d.backgroundColor,r.backgroundColor),backgroundImageSrc:"string"==typeof d.backgroundImageSrc?d.backgroundImageSrc:"",showGuide:!1!==d.showGuide,showInnerRing:!1!==d.showInnerRing,showOuterRing:!1!==d.showOuterRing,backgroundZoom:c(null!=(n=d.backgroundZoom)?n:r.backgroundZoom,1,2.2),backgroundOffsetX:c(null!=(l=
1d.backgroundOffsetX)?l:r.backgroundOffsetX,-100,100),backgroundOffsetY:c(null!=(i=d.backgroundOffsetY)?i:r.backgroundOffsetY,-100,100)}}function m(e,t,a){let r=u(e,"");return r?r.length*t*.58+Math.max(0,r.length-1)*a:0}function x(e){let t=s(e,"#ffffff").slice(1),a=[0,2,4].map(e=>{let a=Number.parseInt(t.slice(e,e+2),16)/255;return a<=.03928?a/12.92:((a+.055)/1.055)**2.4});return .2126*a[0]+.7152*a[1]+.0722*a[2]}function p(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=g(e),a=Math.PI*t.radius*.92,r=Math.PI*t.radius*1.82,o=[],n=m(t.topText,t.fontSize,t.letterSpacing),l=m(t.bottomText,t.fontSize,t.letterSpacing);return["badge","top"].includes(t.mode)&&n>a&&o.push("Top text is crowded on the arc. Shorten it, lower the size, or raise the radius."),["badge","bottom"].includes(t.mode)&&l>a&&o.push("Bottom text is crowded on the arc. Shorter badge copy will export cleaner."),"full"===t.mode&&n>r&&o.push("Full-ring text is too long for a clean circle at the current size."),t.radius<180&&t.fontSize>54&&o.push("Large letters on a tight radius can overlap. Increase the radius or reduce text size."),t.letterSpacing<1&&t.fontSize>50&&o.push("Tight spacing can make curved text harder to read. Try a little more letter spacing."),"color"===t.backgroundMode&&(Math.max(x(t.textColor),x(t.backgroundColor))+.05)/(Math.min(x(t.textColor),x(t.backgroundColor))+.05)<3.2&&o.push("Text and background colors are close. Increase contrast before downloading."),o.slice(0,3)}function b(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=g(e),r=!1!==t.includeBackground,o=!1!==t.includeGuide&&a.showGuide,n=function(e,t){let a=Math.min(330,e+Math.round(.58*t));return{top:"M ".concat(360-e," ").concat(360," A ").concat(e," ").concat(e," 0 0 1 ").concat(360+e," ").concat(360),bottom:"M ".concat(360-a," ").concat(360," A ").concat(a," ").concat(a," 0 0 0 ").concat(360+a," ").concat(360),full:"M ".concat(360," ").concat(360-e," A ").concat(e," ").concat(e," 0 1 1 ").concat(360," ").concat(360+e," A ").concat(e," ").concat(e," 0 1 1 ").concat(360," ").concat(360-e)}}(a.radius,a.fontSize),l=["font-family:".concat(a.fontFamily),"font-size:".concat(a.fontSize,"px"),"font-weight:900","letter-spacing:".concat(a.letterSpacing,"px"),"fill:".concat(a.textColor)].join(";"),c="transparent"===a.backgroundMode?"#e2e8f0":"#ffffff",s=['<path id="circle-text-top" d="'.concat(n.top,'" fill="none" />'),'<path id="circle-text-bottom" d="'.concat(n.bottom,'" fill="none" />'),'<path id="circle-text-full" d="'.concat(n.full,'" fill="none" />')].join("\n"),u=[];return("badge"===a.mode||"top"===a.mode)&&u.push('<text style="'.concat(d(l),'"><textPath href="#circle-text-top" startOffset="50%" text-anchor="middle">').concat(i(a.topText),"</textPath></text>")),("badge"===a.mode||"bottom"===a.mode)&&u.push('<text style="'.concat(d(l),'"><textPath href="#circle-text-bottom" startOffset="50%" text-anchor="middle">').concat(i(a.bottomText),"</textPath></text>")),"full"===a.mode&&u.push('<text style="'.concat(d(l),'"><textPath href="#circle-text-full" startOffset="50%" text-anchor="middle">').concat(i(a.topText),"</textPath></text>")),'<svg xmlns="http://www.w3.org/2000/svg" width="'.concat(720,'" height="').concat(720,'" viewBox="0 0 ').concat(720," ").concat(720,'" role="img" aria-label="Circle text generator preview">\n<defs>\n').concat(s,'\n<clipPath id="circle-text-background-clip"><circle cx="').concat(360,'" cy="').concat(360,'" r="').concat(Math.min(332,a.radius+96),'" /></clipPath>\n</defs>\n').concat(function(e,t){if(!t||"transparent"===e.backgroundMode)return"";if(e.backgroundImageSrc){let t=Math.min(332,e.radius+96),a=720*e.backgroundZoom,r=Math.max(0,(a-720)/2),o=(720-a)/2+e.backgroundOffsetX/100*r,n=(720-a)/2+e.backgroundOffsetY/100*r;return['<rect x="0" y="0" width="'.concat(720,'" height="').concat(720,'" fill="').concat(e.backgroundColor,'" />'),'<circle cx="'.concat(360,'" cy="').concat(360,'" r="').concat(t,'" fill="').concat(e.backgroundColor,'" />'),'<image href="'.concat(d(e.backgroundImageSrc),'" x="').concat(o.toFixed(2),'" y="').concat(n.toFixed(2),'" width="').concat(a.toFixed(2),'" height="').concat(a.toFixed(2),'" preserveAspectRatio="xMidYMid slice" clip-path="url(#circle-text-background-clip)" />'),'<circle cx="'.concat(360,'" cy="').concat(360,'" r="').concat(t,'" fill="rgba(255,255,255,0.08)" />')].join("\n")}return'<rect x="0" y="0" width="'.concat(720,'" height="').concat(720,'" fill="').concat(e.backgroundColor,'" />')}(a,r),"\n").concat(a.showInnerRing?'<circle cx="'.concat(360,'" cy="').concat(360,'" r="').concat(Math.max(96,a.radius-84),'" fill="none" stroke="').concat(c,'" stroke-width="6" opacity="0.68" />'):"","\n").concat(a.showOuterRing?'<circle cx="'.concat(360,'" cy="').concat(360,'" r="').concat(a.radius+38,'" fill="none" stroke="').concat(a.textColor,'" stroke-width="10" opacity="0.18" />'):"","\n").concat(o?'<circle cx="'.concat(360,'" cy="').concat(360,'" r="').concat(Math.max(72,a.radius-126),'" fill="none" stroke="').concat(a.textColor,'" stroke-width="3" stroke-dasharray="12 14" opacity="0.34" />'):"","\n<g>").concat(u.join("\n"),"</g>\n</svg>")}function h(e){let t=u(e,"Circle Sale");return{key:"circle-text",title:"Circle Text Generator",href:"/circle-text-generator/",description:"Preview badge-style circle text source and open the full P
1NG tool.",output:"Top ring: ".concat(t.toUpperCase(),"\nBottom ring: TEXTKITS"),copyValue:"".concat(t.toUpperCase()," / TEXTKITS"),note:"Full tool exports PNG"}}},39867:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(19904).A)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]])},52056:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(19904).A)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},75426:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(19904).A)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]])},86186:(e,t,a)=>{a.r(t),a.d(t,{default:()=>z});var r=a(95155),o=a(12115),n=a(99051),l=a(5917),c=a(13804),s=a(52056),i=a(39926),d=a(87855),u=a(21786),g=a(71360);let m=(0,a(19904).A)("sliders-horizontal",[["path",{d:"M10 5H3",key:"1qgfaw"}],["path",{d:"M12 19H3",key:"yhmn1j"}],["path",{d:"M14 3v4",key:"1sua03"}],["path",{d:"M16 17v4",key:"1q0r14"}],["path",{d:"M21 12h-9",key:"1o4lsq"}],["path",{d:"M21 19h-5",key:"1rlt1p"}],["path",{d:"M21 5h-7",key:"1oszz2"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M8 12H3",key:"a7s4jb"}]]);var x=a(75426),p=a(17181),b=a(39867),h=a(73161),f=a(27329),k=a(70517),w=a(49498),v=a(27395);let y=[{value:"badge",label:"Badge"},{value:"top",label:"Top arc"},{value:"bottom",label:"Bottom arc"},{value:"full",label:"Full ring"}],N=[{label:"Ink",text:"#0f172a",bg:"#ecfdf5"},{label:"Coffee",text:"#422006",bg:"#fef3c7"},{label:"Blue",text:"#1e3a8a",bg:"#dbeafe"},{label:"Citrus",text:"#7c2d12",bg:"#ffedd5"}],j={backgroundColor:"bgColor",backgroundMode:"bg",bottomText:"bottom",fontFamily:"font",fontSize:"size",letterSpacing:"spacing",mode:"mode",radius:"radius",showInnerRing:"inner",showOuterRing:"outer",textColor:"textColor",topText:"top"},C=new Set(["fontSize","letterSpacing","radius"]),S=new Set(["showInnerRing","showOuterRing"]);function M(e){let t=(0,v.Uq)({...e,backgroundImageSrc:"",backgroundMode:"transparent"===e.backgroundMode?"transparent":"color"}),a=new URL(window.location.href);return a.search="",a.hash="",Object.entries(j).forEach(e=>{let[r,o]=e,n=t[r];if(S.has(r))return void a.searchParams.set(o,n?"1":"0");a.searchParams.set(o,String(null!=n?n:""))}),a.toString()}function T(e){let{className:t,children:a,...o}=e;return(0,r.jsx)(h.$,{...o,className:(0,w.cn)("h-12 min-w-0 rounded-[1.1rem] border-2 px-4 text-sm font-black tracking-tight shadow-[0_8px_24px_-18px_rgba(15,23,42,0.22)] sm:h-14 sm:px-5 sm:text-base",t),children:a})}function A(e){return"data:image/svg+xml;charset=utf-8,".concat(encodeURIComponent(e))}async function O(e){let{title:t,text:a,url:r}=e;return!function(){var e;if("undefined"==typeof navigator||"function"!=typeof navigator.share)return!1;if(null==(e=navigator.userAgentData)?void 0:e.mobile)return!0;let t=navigator.userAgent||"",a=/Android|iPhone|iPad|iPod|Mobile/i.test(t),r="MacIntel"===navigator.platform&&navigator.maxTouchPoints>1;return a||r}()?(await navigator.clipboard.writeText(r),"copied"):(await navigator.share({title:t,text:a,url:r}),"shared")}async function R(e){let t=new Image,a=A(e);await new Promise((e,r)=>{t.onload=e,t.onerror=()=>r(Error("Preview image could not be exported.")),t.src=a});let r=document.createElement("canvas");r.width=t.naturalWidth||720,r.height=t.naturalHeight||720;let o=r.getContext("2d");if(!o)throw Error("Canvas export is unavailable in this browser.");return o.drawImage(t,0,0),await new Promise((e,t)=>{r.toBlob(a=>{if(a)return void e(a);t(Error("PNG export failed."))},"image/png")})}function z(){let e=(0,o.useRef)(null),t=(0,o.useRef)(null),[a,h]=(0,o.useState)(v.uu),[z,I]=(0,o.useState)(""),[P,G]=(0,o.useState)("Ready"),E=(0,o.useMemo)(()=>(0,v.Uq)(a),[a]),F=(0,o.useMemo)(()=>(0,v.RM)(E),[E]),L=(0,o.useMemo)(()=>(0,v.ut)(E,{includeBackground:!0}),[E]),B=!!E.backgroundImageSrc;function _(e){G(e),window.clearTimeout(t.current),t.current=window.setTimeout(()=>G("Ready"),2400)}function U(e){h(t=>({...t,...e}))}async function X(){let e="full"===E.mode?E.topText:"".concat(E.topText," / ").concat(E.bottomText);await navigator.clipboard.writeText(e),_("Fallback text copied"),(0,k.nj)({action:"copy",path:"/circle-text-generator/",shareUrl:M(E),text:e})}async function Y(){try{let e=await O({title:"Circle Text Generator",text:"Share this circle text design from TextKits.",url:M(E)});_("".concat("shared"===e?"Share sheet opened":"Share link copied",".").concat(B?" Uploaded background image is not included.":""))}catch(e){if((null==e?void 0:e.name)==="AbortError")return;_("Share link could not be copied.")}}async function Z(e){try{let a="transparent"===e?{...E,backgroundMode:"transparent",backgroundImageSrc:""}
1:E,r=(0,v.ut)(a,{includeBackground:"transparent"!==e,includeGuide:!1});var t=await R(r);let o=URL.createObjectURL(t),n=document.createElement("a");n.href=o,n.download="transparent"===e?"circle-text-generator-transparent.png":"circle-text-generator-background.png",document.body.append(n),n.click(),n.remove(),window.setTimeout(()=>URL.revokeObjectURL(o),1e3),_("transparent"===e?"Transparent PNG downloaded":"PNG with background downloaded"),(0,k.nj)({action:"download",path:"/circle-text-generator/",shareNote:"background"===e&&a.backgroundImageSrc?"Uploaded background image is not included in this link.":"",shareUrl:M(a),text:"full"===E.mode?E.topText:"".concat(E.topText," / ").concat(E.bottomText)})}catch(e){_((null==e?void 0:e.message)||"PNG export failed.")}}return(0,o.useEffect)(()=>{let e=function(){let e=new URLSearchParams(window.location.search),t={};return(Object.entries(j).forEach(a=>{let[r,o]=a;if(!e.has(o))return;let n=e.get(o);if(C.has(r)){t[r]=Number(n);return}if(S.has(r)){t[r]="0"!==n;return}t[r]=n||""}),Object.keys(t).length)?(0,v.Uq)({...v.uu,...t,backgroundImageSrc:""}):null}();e&&(h(e),I(""),_("Shared design loaded"))},[]),(0,r.jsx)("section",{className:"mt-8 rounded-[2.5rem] border-4 border-white bg-white/90 p-4 shadow-[0_30px_90px_-55px_rgba(15,23,42,0.35)] sm:p-6 lg:p-7","aria-label":"Circle text generator tool",children:(0,r.jsxs)("div",{className:"grid min-w-0 gap-5 lg:grid-cols-[minmax(0,0.94fr)_minmax(0,1.06fr)]",children:[(0,r.jsxs)("div",{className:"min-w-0 rounded-[2rem] bg-slate-50 p-4 sm:p-5",children:[(0,r.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,r.jsxs)("span",{className:"inline-flex items-center gap-2 rounded-full bg-emerald-100 px-4 py-2 text-xs font-black uppercase tracking-[0.12em] text-emerald-800",children:[(0,r.jsx)(n.A,{className:"size-4","aria-hidden":"true"}),"Circle layout"]}),(0,r.jsx)("span",{className:"rounded-full bg-white px-4 py-2 text-xs font-black uppercase tracking-[0.12em] text-slate-500",children:"Local preview"})]}),(0,r.jsxs)("div",{className:"mt-5 grid gap-4",children:[(0,r.jsxs)("label",{className:"grid gap-2",children:[(0,r.jsx)("span",{className:"text-sm font-black uppercase tracking-[0.12em] text-slate-500",children:"Top text"}),(0,r.jsx)("textarea",{rows:3,value:a.topText,onChange:e=>U({topText:e.target.value}),className:"w-full min-h-28 resize-none rounded-[1.25rem] border-2 border-slate-200 bg-white px-5 py-4 text-lg font-black text-slate-950 shadow-none outline-none transition placeholder:text-slate-400 focus-visible:border-emerald-200 focus-visible:ring-2 focus-visible:ring-emerald-400 disabled:cursor-not-allowed disabled:opacity-50","aria-label":"Top circle text"})]}),(0,r.jsxs)("label",{className:"grid gap-2",children:[(0,r.jsx)("span",{className:"text-sm font-black uppercase tracking-[0.12em] text-slate-500",children:"Bottom text"}),(0,r.jsx)("textarea",{rows:3,value:a.bottomText,onChange:e=>U({bottomText:e.target.value}),className:"w-full min-h-28 resize-none rounded-[1.25rem] border-2 border-slate-200 bg-white px-5 py-4 text-lg font-black text-slate-950 shadow-none outline-none transition placeholder:text-slate-400 focus-visible:border-emerald-200 focus-visible:ring-2 focus-visible:ring-emerald-400 disabled:cursor-not-allowed disabled:opacity-50","aria-label":"Bottom circle text"})]})]}),(0,r.jsxs)("div",{className:"mt-5 grid gap-3 sm:grid-cols-2",children:[(0,r.jsxs)("label",{className:"grid gap-2",children:[(0,r.jsx)("span",{className:"text-sm font-black uppercase tracking-[0.12em] text-slate-500",children:"Layout"}),(0,r.jsx)("select",{value:a.mode,onChange:e=>U({mode:e.target.value}),className:"h-12 rounded-[1.1rem] border-2 border-slate-200 bg-white px-4 text-sm font-black text-slate-900","aria-label":"Circle text layout",children:y.map(e=>(0,r.jsx)("option",{value:e.value,children:e.label},e.value))})]}),(0,r.jsxs)("label",{className:"grid gap-2",children:[(0,r.jsx)("span",{className:"text-sm font-black uppercase tracking-[0.12em] text-slate-500",children:"Font"}),(0,r.jsx)("select",{value:a.fontFamily,onChange:e=>U({fontFamily:e.target.value}),className:"h-12 rounded-[1.1rem] border-2 border-slate-200 bg-white px-4 text-sm font-black text-slate-900","aria-label":"Circle text font",children:v.XY.map(e=>(0,r.jsx)("option",{value:e.value,children:e.label},e.value))})]})]}),(0,r.jsx)("div",{className:"mt-5 grid gap-4",children:[["Radius","radius",154,286],["Size","fontSize",28,76],["Spacing","letterSpacing",-1,9]].map(e=>{let[t,o,n,l]=e;return(0,r.jsxs)("label",{className:"grid gap-2",children:[(0,r.jsxs)("span",{className:"flex items-center justify-between gap-3 text-sm font-black uppercase tracking-[0.12em] text-slate-500",children:[t,(0,r.jsx)("span",{className:"text-slate-900",children:E[o]})]}),(0,r.jsx)("input",{type:"range",min:n,max:l,value:a[o],onChange:e=>U({[o]:Number(e.target.value)}),className:"accent-emerald-700","aria-label":"Circle text ".concat(String(t).toLowerCase())})]},o)})}),(0,r.jsxs)("div",{className:"mt-5 rounded-[1.25rem] border-2 border-slate-200 bg-white p-4",children:[(0,r.jsx)("div",{className:"text-sm font-black uppercase tracking-[0.12em] text-slate-500",children:"Lines"}),(0,r.jsxs)("label",{className:"mt-3 flex min-w-0 items-center justify-between gap-4 roun
1ded-[1rem] bg-slate-50 px-4 py-3",children:[(0,r.jsxs)("span",{className:"min-w-0",children:[(0,r.jsx)("span",{className:"block text-sm font-black text-slate-900",children:"Inner ring"}),(0,r.jsx)("span",{className:"block text-xs font-bold leading-snug text-slate-500",children:"Show the inside circle line in preview and PNG exports."})]}),(0,r.jsx)("input",{type:"checkbox",checked:E.showInnerRing,onChange:e=>U({showInnerRing:e.target.checked}),className:"size-5 shrink-0 accent-emerald-700","aria-label":"Show inner ring"})]}),(0,r.jsxs)("label",{className:"mt-3 flex min-w-0 items-center justify-between gap-4 rounded-[1rem] bg-slate-50 px-4 py-3",children:[(0,r.jsxs)("span",{className:"min-w-0",children:[(0,r.jsx)("span",{className:"block text-sm font-black text-slate-900",children:"Outer ring"}),(0,r.jsx)("span",{className:"block text-xs font-bold leading-snug text-slate-500",children:"Show the outside circle line in preview and PNG exports."})]}),(0,r.jsx)("input",{type:"checkbox",checked:E.showOuterRing,onChange:e=>U({showOuterRing:e.target.checked}),className:"size-5 shrink-0 accent-emerald-700","aria-label":"Show outer ring"})]})]}),(0,r.jsx)("div",{className:"mt-5 flex flex-wrap gap-2",children:v.pO.map((t,a)=>(0,r.jsx)("button",{type:"button",onClick:()=>{U({topText:t.topText,bottomText:t.bottomText,mode:t.mode,radius:t.radius,fontSize:t.fontSize,letterSpacing:t.letterSpacing,fontFamily:t.fontFamily,textColor:t.textColor,backgroundColor:t.backgroundColor,backgroundMode:"color",backgroundImageSrc:"",backgroundZoom:v.uu.backgroundZoom,backgroundOffsetX:v.uu.backgroundOffsetX,backgroundOffsetY:v.uu.backgroundOffsetY}),I(""),e.current&&(e.current.value=""),_("".concat(t.label," preset applied"))},className:(0,w.cn)("rounded-full border-2 border-white bg-white px-4 py-2 text-sm font-black text-slate-700 shadow-sm transition hover:-translate-y-0.5 hover:border-emerald-200 hover:text-emerald-800",a>1&&"hidden sm:inline-flex"),children:t.label},t.label))})]}),(0,r.jsxs)("div",{className:"min-w-0 rounded-[2rem] bg-slate-950 p-4 text-white sm:p-5",children:[(0,r.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("h2",{className:"text-2xl font-black tracking-tighter",children:"Live circle preview"}),(0,r.jsx)("p",{className:"mt-1 text-sm font-bold text-slate-300",children:"Transparent PNG and PNG with the current background are separate exports."})]}),(0,r.jsxs)("div",{className:"inline-flex items-center gap-2 rounded-full bg-emerald-400/15 px-3 py-2 text-sm font-black text-emerald-100","aria-live":"polite",children:["Ready"===P?(0,r.jsx)(l.A,{className:"size-4","aria-hidden":"true"}):(0,r.jsx)(c.A,{className:"size-4","aria-hidden":"true"}),P]})]}),(0,r.jsx)("div",{className:(0,w.cn)("mt-5 min-w-0 overflow-hidden rounded-[1.75rem] border-4 border-slate-800","transparent"===E.backgroundMode?"bg-[linear-gradient(45deg,rgba(255,255,255,.12)_25%,transparent_25%),linear-gradient(-45deg,rgba(255,255,255,.12)_25%,transparent_25%),linear-gradient(45deg,transparent_75%,rgba(255,255,255,.12)_75%),linear-gradient(-45deg,transparent_75%,rgba(255,255,255,.12)_75%)] bg-[length:28px_28px] bg-[position:0_0,0_14px,14px_-14px,-14px_0]":""),children:(0,r.jsx)("img",{src:A(L),alt:"Circle text generator live preview",className:"aspect-square h-auto w-full"})}),F.length?(0,r.jsx)("div",{className:"mt-4 grid gap-2",children:F.map(e=>(0,r.jsxs)("div",{className:"flex gap-2 rounded-[1.1rem] bg-amber-300/15 p-3 text-sm font-bold leading-snug text-amber-100",children:[(0,r.jsx)(s.A,{className:"mt-0.5 size-4 shrink-0","aria-hidden":"true"}),(0,r.jsx)("span",{children:e})]},e))}):null,(0,r.jsxs)("div",{className:"mt-5 grid gap-3 md:grid-cols-2",children:[(0,r.jsxs)("div",{className:"rounded-[1.4rem] bg-white/10 p-4",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2 text-sm font-black uppercase tracking-[0.12em] text-slate-300",children:[(0,r.jsx)(i.A,{className:"size-4","aria-hidden":"true"}),"Colors"]}),(0,r.jsx)("div",{className:"mt-3 flex flex-wrap gap-2",children:N.map(e=>(0,r.jsxs)("button",{type:"button",onClick:()=>U({textColor:e.text,backgroundColor:e.bg,backgroundMode:"color"}),className:"inline-flex items-center gap-2 rounded-full bg-white px-3 py-2 text-xs font-black text-slate-800","aria-label":"Use ".concat(e.label," color preset"),children:[(0,r.jsx)("span",{className:"size-4 rounded-full border border-slate-200",style:{backgroundColor:e.text},"aria-hidden":"true"}),e.label]},e.label))}),(0,r.jsxs)("div",{className:"mt-4 grid grid-cols-2 gap-3",children:[(0,r.jsxs)("label",{className:"grid gap-1 text-xs font-black uppercase tracking-[0.1em] text-slate-300",children:["Text",(0,r.jsx)("input",{type:"color",value:E.textColor,onChange:e=>U({textColor:(0,v.iC)(e.target.value)}),className:"h-10 w-full rounded-lg","aria-label":"Choose circle text color"})]}),(0,r.jsxs)("label",{className:"grid gap-1 text-xs font-black uppercase tracking-[0.1em] text-slate-300",children:["Backgroun
1d",(0,r.jsx)("input",{type:"color",value:E.backgroundColor,onChange:e=>U({backgroundColor:(0,v.iC)(e.target.value),backgroundMode:"color"}),className:"h-10 w-full rounded-lg","aria-label":"Choose circle background color"})]})]})]}),(0,r.jsxs)("div",{className:"rounded-[1.4rem] bg-white/10 p-4",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2 text-sm font-black uppercase tracking-[0.12em] text-slate-300",children:[(0,r.jsx)(d.A,{className:"size-4","aria-hidden":"true"}),"Background"]}),(0,r.jsxs)("div",{className:"mt-3 flex flex-wrap gap-2",children:[(0,r.jsxs)(T,{type:"button",onClick:()=>{e.current&&(e.current.value="",e.current.click())},className:"border-emerald-300 bg-emerald-300 text-slate-950 hover:bg-emerald-200","aria-label":"Upload image background",children:[(0,r.jsx)(u.A,{className:"size-5","aria-hidden":"true"}),B?"Replace":"Upload"]}),(0,r.jsxs)(T,{type:"button",onClick:function(){U({backgroundImageSrc:"",backgroundZoom:v.uu.backgroundZoom,backgroundOffsetX:v.uu.backgroundOffsetX,backgroundOffsetY:v.uu.backgroundOffsetY}),I(""),e.current&&(e.current.value=""),_("Background image removed")},disabled:!B,className:"border-white/15 bg-white/10 text-white hover:bg-white/15 disabled:opacity-50","aria-label":"Remove image background",children:[(0,r.jsx)(g.A,{className:"size-5","aria-hidden":"true"}),"Remove"]})]}),(0,r.jsx)("input",{ref:e,type:"file",accept:"image/png,image/jpeg,image/webp",onChange:function(e){var t;let a=null==(t=e.target.files)?void 0:t[0];if(!a)return;if(!a.type.startsWith("image/")){_("Choose a PNG, JPG, or WebP image."),e.target.value="";return}if(a.size>4194304){_("Use an image under 4 MB for this browser preview."),e.target.value="";return}let r=new FileReader;r.onload=()=>{U({backgroundMode:"color",backgroundImageSrc:String(r.result||""),backgroundZoom:v.uu.backgroundZoom,backgroundOffsetX:v.uu.backgroundOffsetX,backgroundOffsetY:v.uu.backgroundOffsetY}),I(a.name),_("Background image loaded")},r.onerror=()=>_("Background image could not be loaded."),r.readAsDataURL(a)},className:"sr-only"}),(0,r.jsx)("p",{className:"mt-3 break-words text-sm font-bold leading-relaxed text-slate-300",children:B?"Loaded and circle-cropped: ".concat(z):"Upload a PNG, JPG, or WebP image under 4 MB. It is center-cropped into a circular background for preview and PNG export."}),B?(0,r.jsxs)("div",{className:"mt-4 rounded-[1.1rem] bg-slate-950/30 p-3",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2 text-xs font-black uppercase tracking-[0.12em] text-slate-300",children:[(0,r.jsx)(m,{className:"size-4","aria-hidden":"true"}),"Crop"]}),(0,r.jsx)("button",{type:"button",onClick:function(){U({backgroundZoom:v.uu.backgroundZoom,backgroundOffsetX:v.uu.backgroundOffsetX,backgroundOffsetY:v.uu.backgroundOffsetY}),_("Background crop reset")},className:"rounded-full bg-white/10 px-3 py-1 text-xs font-black text-white transition hover:bg-white/15",children:"Reset crop"})]}),(0,r.jsx)("div",{className:"mt-3 grid gap-3",children:[{label:"Zoom",key:"backgroundZoom",min:1,max:2.2,step:.05,valueLabel:"".concat(Math.round(100*E.backgroundZoom),"%")},{label:"Horizontal",key:"backgroundOffsetX",min:-100,max:100,step:1,valueLabel:"".concat(Math.round(E.backgroundOffsetX))},{label:"Vertical",key:"backgroundOffsetY",min:-100,max:100,step:1,valueLabel:"".concat(Math.round(E.backgroundOffsetY))}].map(e=>(0,r.jsxs)("label",{className:"grid gap-1.5",children:[(0,r.jsxs)("span",{className:"flex items-center justify-between gap-3 text-xs font-black uppercase tracking-[0.1em] text-slate-300",children:[e.label,(0,r.jsx)("span",{className:"text-white",children:e.valueLabel})]}),(0,r.jsx)("input",{type:"range",min:e.min,max:e.max,step:e.step,value:a[e.key],onChange:t=>U({[e.key]:Number(t.target.value)}),className:"accent-emerald-300","aria-label":"Background crop ".concat(e.label.toLowerCase())})]},e.key))})]}):null]})]}),(0,r.jsxs)("div",{className:"mt-5 grid gap-3 sm:grid-cols-2 xl:grid-cols-4",children:[(0,r.jsxs)(T,{type:"button",onClick:X,className:"border-slate-600 bg-slate-800 text-white hover:bg-slate-700","aria-label":"Copy circle text fallback",children:[(0,r.jsx)(x.A,{className:"size-5","aria-hidden":"true"}),"Copy text"]}),(0,r.jsxs)(T,{type:"button",onClick:Y,className:"border-slate-600 bg-slate-800 text-white hover:bg-slate-700","aria-label":"Share circle text design",children:[(0,r.jsx)(p.A,{className:"size-5","aria-hidden":"true"}),"Share design"]}),(0,r.jsxs)(T,{type:"button",onClick:()=>Z("transparent"),className:"border-white bg-white text-slate-950 hover:bg-slate-100","aria-label":"Download transparent PNG",children:[(0,r.jsx)(b.A,{className:"size-5","aria-hidden":"true"}),"Transparent PNG"]}),(0,r.jsxs)(T,{type:"button",onClick:()=>Z("background"),className:"border-emerald-300 bg-emerald-300 text-slate-950 hover:bg-emerald-200","aria-label":"Download PNG with background",children:[(0,r.jsx)(b.A,{className:"size-5","aria-hidden":"true"}),"PNG with background"]}
1)]}),(0,r.jsx)(f.Ay,{currentPath:"/circle-text-generator/"})]})]})})}},87855:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(19904).A)("image-plus",[["path",{d:"M16 5h6",key:"1vod17"}],["path",{d:"M19 2v6",key:"4bpg5p"}],["path",{d:"M21 11.5V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7.5",key:"1ue2ih"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}]])}}]);

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.