1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2311e3d6-d0ec-4932-9efc-04cc3c277bfb",e._sentryDebugIdIdentifier="sentry-dbid-2311e3d6-d0ec-4932-9efc-04cc3c277bfb")}catch(e){}}();"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[20434],{7981:(e,t,a)=>{a.d(t,{Gs:()=>n,Qj:()=>i,lQ:()=>o,rP:()=>s,wR:()=>r});let n=["Pages & funnels","Email & SMS","Video & presentations","Webinars & events","Ads & creative","Social & content","Lead magnets","Sales enablement & proof"],i=[{family:"Pages & funnels",href:"/operator/pages",entries:[["sales-page","Sales page","Present the offer, proof, objections and next step."],["landing-page","Landing page","Turn campaign traffic into a clear next action.","squeeze opt-in capture lead"],["vsl-page","VSL page","Place your video, offer and call to action."],["registration-page","Webinar registration","Capture registrations for your event."],["application-page","Application page","Qualify leads before a sales conversation."],["booking-page","Booking page","Guide visitors to schedule a call."],["order-form","Order form","Use the existing checkout and connected payment provider.","checkout payment buy"],["order-bump","Order bump","Add a relevant checkout complement in the existing builder."],["upsell-page","Upsell or downsell","Build the next offer page in your funnel."],["thank-you-page","Thank-you page","Give buyers or subscribers a clear next step."],["replay-page","Replay page","Share the recording and follow-up offer."],["full-funnel","Complete funnel","Build a connected sequence of pages."]]},{family:"Email & SMS",entries:[["email-broadcast","Email broadcast","One focused message with a clear call to action."],["email-nurture","Nurture sequence","Build trust and move subscribers toward an offer."],["email-launch","Product launch emails","Prelaunch, opening, proof, objections and closing."],["email-invitation","Event invitations","Invite the right people to a webinar or workshop."],["email-reminders","Reminder sequence","Confirmation, preparation and show-up reminders."],["email-replay","Replay follow-up","Follow up with attendees and people who missed it."],["email-cart","Cart recovery","Address hesitation and recover abandoned checkouts."],["email-onboarding","Customer onboarding","Help new customers reach their first useful outcome."],["email-reactivation","Reactivation emails","Reconnect with inactive subscribers or customers."],["email-ascension","Ascension sequence","Introduce the next offer when a customer is ready."],["sms-campaign","SMS campaign","Draft concise messages; sending requires consent and a provider.","text texts text message messages"],["sms-reminders","SMS reminders","Short event or appointment reminders with opt-out guidance."]]},{family:"Video & presentations",entries:[["vsl","Video sales letter","Build the brief, script, storyboard and production handoff.","sales video main offer"],["application-vsl","Application VSL","Create a video that moves qualified viewers to apply.","application video"],["booking-vsl","Booking VSL","Sell the value of the next sales conversation.","booking video appointment"],["b2b-vsl","B2B sales video","Explain business value, proof and the buying decision."],["upsell-vsl","Upsell video","Introduce a relevant next step after purchase."],["explainer","Explainer video","Explain a problem, mechanism or new idea."],["product-demo","Product demo","Show the product solving a specific problem."],["video-ad","Video ad script","Hook, story, demonstration and call to action."],["pitch-deck","Pitch deck","Develop the narrative, slide copy and presenter notes."],["storyboard","Storyboard","Turn a script into scenes, shots and visual directions."]]},{family:"Webinars & events",entries:[["webinar","Complete webinar plan","Teaching, presentation, pitch and the attendee journey.","masterclass training live automated evergreen"],["webinar-deck","Webinar presentation","Slide copy, examples and presenter notes."],["webinar-script","Webinar script","Write the teaching, transition, pitch and close."],["webinar-pitch","Webinar offer pitch","Connect the teaching to the offer and objections."],["webinar-qa","Q&A and objections","Prepare honest answers and supporting evidence."],["workshop","Workshop plan","Hands-on teaching with exercises and outcomes."],["challenge","Challenge plan","Daily milestones, participant actions and follow-up."],["event-journey","Registration-to-replay journey","Plan registration, reminders, access, replay and delivery."]]},{family:"Ads & creative",entries:[["ad-strategy","Campaign strategy","Audience, angle, offer, channel and test plan."],["ad-hooks","Hooks and angles","Explore distinct reasons to pay attention."],["ad-copy","Ad copy variations","Create focused variations around one hypothesis."],["creative-brief","Creative brief","Specify the message, visual
1s, format and production needs."],["ad-images","Image creative","Generate images in Asset studio.","graphic visual image"],["retargeting","Retargeting campaign","Plan follow-up by customer intent and objections."],["creative-tests","Creative testing plan","Define the variable, decision metric and next experiment."],["ugc-brief","UGC creator brief","Create the concept, talking points and shot list."]]},{family:"Social & content",entries:[["content-strategy","Content strategy","Positioning, topics, channels and audience progression."],["content-calendar","Content calendar","Map useful topics and a sustainable publishing rhythm."],["social-posts","Social posts","Create channel-specific copy and calls to action."],["carousel","Carousel","Develop the slide-by-slide story and design brief."],["short-video","Short-form video scripts","Draft reels, shorts and concise demonstrations.","tiktok reels youtube shorts"],["article","Article or blog","Teach a specific idea with supporting examples."],["podcast","Podcast outline","Shape an episode, questions and listener takeaway."],["repurpose","Repurpose existing content","Turn supplied source material into a coordinated content set."],["newsletter","Newsletter","Deliver useful insight and a relevant next step."],["youtube","YouTube video package","Outline, script, title ideas and thumbnail directions."]]},{family:"Lead magnets",entries:[["ebook","Ebook","Write chapters and practical takeaways that draw in your audience.","book pdf digital product"],["guide","Practical guide","Teach a focused process people can apply."],["checklist","Checklist","Turn expertise into a repeatable list of actions."],["workbook","Workbook","Guide readers through exercises and decisions."],["templates","Template pack","Package reusable documents, frameworks or worksheets."],["swipe-file","Swipe file","Organize your examples with context and usage notes."],["assessment","Quiz or assessment","Write questions, interpretation and next-step recommendations."],["resource-library","Resource library","Curate resources around a specific customer outcome."]]},{family:"Sales enablement & proof",entries:[["sales-script","Sales call script","Discovery, diagnosis, offer, objections and next steps."],["discovery","Discovery questions","Understand fit, needs, constraints and decision process."],["proposal","Proposal","Scope, outcomes, deliverables and commercial decisions."],["case-study","Case study","Turn documented customer evidence into a clear story."],["testimonial","Testimonial collection kit","Ask customers for specific, verifiable experiences."],["objections","Objection library","Address concerns with reasoning and real evidence."],["comparison","Comparison guide","Explain fit and tradeoffs without invented competitor claims."],["affiliate-kit","Affiliate or partner kit","Provide messaging, assets, terms and handoff guidance."]]}].flatMap(e=>e.entries.map(t=>{var a;let[n,i,s,o]=t;return{id:n,title:i,description:s,aliases:o,family:e.family,kind:null!=(a=e.kind)?a:"asset",href:"ad-images"===n?"/operator/assets":e.href}})),s=["business-foundation","offer-launch","course-build","webinar-launch","audience-growth","funnel-improvement","customer-onboarding","custom"];function o(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"All",a=e.trim().toLowerCase().split(/\s+/).filter(Boolean);return i.filter(e=>("All"===t||e.family===t)&&a.every(t=>{var a;return"".concat(e.title," ").concat(e.description," ").concat(null!=(a=e.aliases)?a:""," ").concat(e.family).toLowerCase().includes(t)}))}function r(e){var t,a;return null!=(a=null==(t=i.find(t=>t.id===e))?void 0:t.title)?a:e.replaceAll("-"," ").replace(/^./,e=>e.toUpperCase())}},20434:(e,t,a)=>{a.r(t),a.d(t,{SaveToMarketingDialog:()=>h,suggestPieceTitle:()=>m});var n=a(95155),i=a(12115),s=a(52619),o=a.n(s),r=a(97003),l=a(54679),c=a(33789),d=a(42971),u=a(7981),p=a(57156);function m(e){var t;let a=e.split("\n").map(e=>e.trim()).filter(Boolean),n=a.find(e=>/^#{1,3}\s/.test(e)),i=(null!=(t=null!=n?n:a[0])?t:"").replace(/^#{1,6}\s+/,"").replace(/[*_`]/g,"").trim();return i.length>80?"".concat(i.slice(0,77).trimEnd(),"..."):i}
1function h(e){let{content:t,onClose:a}=e,[s]=(0,i.useState)(()=>crypto.randomUUID()),[h,f]=(0,i.useState)(()=>m(t)),[g,b]=(0,i.useState)("custom"),[v,y]=(0,i.useState)(""),[k,w]=(0,i.useState)(null),[x,j]=(0,i.useState)(!1),[S,C]=(0,i.useState)(""),[A,T]=(0,i.useState)(null),P=t.length>1e5,E=(0,i.useMemo)(()=>u.Qj.filter(e=>!e.href),[]);async function D(){j(!0),C("");let e=null==k?void 0:k.find(e=>e.id===v),a={...(0,d.n)("asset",h.trim(),g),content:t,links:e?[{itemId:e.id,relation:"project",revision:e.revision}]:[]};try{T((await (0,p.VH)(s,0,a)).item)}catch(e){if(e instanceof p.tH&&409===e.status)try{T((await (0,p.vA)("/".concat(s))).item);return}catch(e){}C(e instanceof Error?e.message:"This reply could not be saved.")}finally{j(!1)}}return(0,i.useEffect)(()=>{let e=new AbortController;return(0,p.vA)("?kind=project&archived=false",{signal:e.signal}).then(e=>w(e.items)).catch(()=>{e.signal.aborted||w([])}),()=>e.abort()},[]),(0,n.jsx)(l.lG,{open:!0,onOpenChange:e=>{e||x||a()},children:(0,n.jsxs)(l.Cf,{children:[(0,n.jsxs)(l.c7,{children:[(0,n.jsx)(l.L3,{children:A?"Saved to Marketing":"Save to Marketing"}),(0,n.jsx)(l.rr,{children:A?"It is in your library now. Edit it there any time.":"Keep this reply as a piece you can find, edit and reuse."})]}),A?(0,n.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,n.jsx)(r.$,{variant:"outline",onClick:a,children:"Done"}),(0,n.jsx)(r.$,{asChild:!0,children:(0,n.jsx)(o(),{href:(0,d.w)(A),children:"Open in Marketing"})})]}):(0,n.jsxs)("form",{className:"space-y-4",onSubmit:e=>{e.preventDefault(),D()},children:[(0,n.jsxs)("label",{className:"block space-y-2 text-sm font-medium",children:["Name",(0,n.jsx)(c.p,{autoFocus:!0,value:h,onChange:e=>f(e.target.value),maxLength:160,required:!0,disabled:x})]}),(0,n.jsxs)("label",{className:"block space-y-2 text-sm font-medium",children:["Type",(0,n.jsxs)("select",{className:"h-10 w-full rounded-md border border-border bg-background px-3",value:g,onChange:e=>b(e.target.value),disabled:x,children:[(0,n.jsx)("option",{value:"custom",children:"Other"}),u.Gs.map(e=>{let t=E.filter(t=>t.family===e);return t.length?(0,n.jsx)("optgroup",{label:e,children:t.map(e=>(0,n.jsx)("option",{value:e.id,children:e.title},e.id))},e):null})]})]}),(0,n.jsxs)("label",{className:"block space-y-2 text-sm font-medium",children:["Launch",(0,n.jsxs)("select",{className:"h-10 w-full rounded-md border border-border bg-background px-3",value:v,onChange:e=>y(e.target.value),disabled:x||null===k,children:[(0,n.jsx)("option",{value:"",children:null===k?"Loading launches...":"Not part of a launch"}),(null!=k?k:[]).map(e=>(0,n.jsx)("option",{value:e.id,children:e.document.title},e.id))]})]}),P&&(0,n.jsx)("p",{role:"alert",className:"text-sm text-red-700",children:"This reply is longer than one piece can hold. Ask your agent to split it, then save each part."}),S&&(0,n.jsx)("p",{role:"alert",className:"text-sm text-red-700",children:S}),(0,n.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,n.jsx)(r.$,{type:"button",variant:"outline",disabled:x,onClick:a,children:"Cancel"}),(0,n.jsx)(r.$,{type:"submit",disabled:x||P||!h.trim(),children:x?"Saving...":"Save"})]})]})]})})}},42971:(e,t,a)=>{function n(e,t){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e;return{kind:e,title:t,format:a,summary:"",content:"",sections:[],tasks:[],links:[],destinations:[],checks:[],archived:!1}}function i(e){let t="project"===e.document.kind||"asset"===e.document.kind?"marketing":"products";return"/operator/".concat(t,"/").concat(e.id)}a.d(t,{n:()=>n,w:()=>i})},57156:(e,t,a)=>{a.d(t,{El:()=>o,VH:()=>s,tH:()=>n,vA:()=>i});class n extends Error{constructor(e,t,a){super(e),this.status=t,this.proposal=a}}async function i(e,t){let a=new Headers(null==t?void 0:t.headers);a.has("Content-Type")||a.set("Content-Type","application/json");let i=await fetch("/api/operator/workspace/items".concat(e),{...t,cache:"no-store",headers:a}),s=await i.json().catch(()=>null);if(!i.ok||!s){var o;throw new n(null!=(o=null==s?void 0:s.error)?o:"Your workspace could not be reached. Please try again.",i.status,null==s?void 0:s.proposal)}return s}function s(e,t,a){return i("",{method:"POST",body:JSON.stringify({id:e,expectedRevision:t,document:a})})}function o(e){let t=["# ".concat(e.title),"Draft ⢠".concat(e.format),e.summary,e.content,...e.sections.map(e=>"## ".concat(e.title,"\n\n").concat(e.body)),e.tasks.length?"## Plan\n"+e.tasks.map(e=>"- [".concat("done"===e.status?"x":" ","] ").concat(e.title).concat(e.due?" (due ".concat(e.due,")"):"")).join("\n"):"",e.de
1stinations.length?"## Destinations\n"+e.destinations.map(e=>"- ".concat(e.label,": ").concat(e.url)).join("\n"):""].filter(Boolean).join("\n\n"),a=URL.createObjectURL(new Blob([t],{type:"text/markdown;charset=utf-8"})),n=window.document.createElement("a");n.href=a,n.download="".concat(e.title.replace(/[^a-z0-9-]/gi,"-").slice(0,80)||"draft",".md"),n.click(),setTimeout(()=>URL.revokeObjectURL(a),1e3)}}}]);
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.