1import { WsButton as ke, WsTooltip as tt, WsAlert as si, toast as $o, ToastStatus as ea, WsHtmlViewer as ta, WsInput as Qe, WsDialogForm as li, WsDialogSection as ui, WsDialogActions as ci, openDialog as di, WsLogo as mi, useQuasarPlugin as fi } from "@mfl/common-components"; 2import { bootstrapMicrofrontend as pi } from "@mfl/vue-common"; 3import { defineComponent as j, ref as B, openBlock as m, createElementBlock as b, Fragment as de, renderList as Pe, createElementVNode as l, normalizeClass as H, createTextVNode as q, toDisplayString as _, createCommentVNode as D, createBlock as Y, unref as d, createVNode as x, withCtx as Q, computed as R, watch as X, onBeforeMount as Vn, onActivated as gi, renderSlot as mn, useTemplateRef as tn, onMounted as De, onUnmounted as nn, useModel as ce, normalizeStyle as Le, Teleport as na, mergeModels as me, withDirectives as oa, vModelText as bi, reactive as vi, withModifiers as _i, nextTick as jt, onBeforeUnmount as aa, resolveDirective as hi, resolveDynamicComponent as so, normalizeProps as ki, guardReactiveProps as yi } from "vue"; 4import { NEW_EDITOR_PATH as lo, reportUserAnalyticEvent as ia, openCentralizedManagementDialog as Si, getAccountBasicInfo as zn, auth4Sdks as Ue, currentUser as Se, EntitelmentTypes as Nt, PermissionTypes as Ve, PURCHASE_PLANS_URL as Ii, completeSetupStage as uo, setOnboardingStatus as Ei, onSetupCompleted as Ai, hideHelpDeskLauncher as Oi, showHelpDeskLauncher as co } from "@mfl/platform-shell"; 5import { navigateTo as ze, loadingDone as ra, reportMonitoringException as at } from "@mfl/framework"; 6import { refreshOnboardingStatus as Li, getOnboardingStatus as Ci, isSetupStepFirstVisit as wi, RETURN_TO_QUERY_PARAM as Ri, appendReturnToQuery as sa, RETURN_TO_TARGETS as Ln, setupProgressState as mo, SetupProgressBadge as Ti } from "@mfl/setup-progress"; 7import { E as Pt, s as oe, S as Ke, o as ne, a as Oe, r as Ni, b as Wt, e as Qt, c as Kt, g as je, d as pt, C as Cn, f as Pi, i as fo, h as on, j as Fi, k as Bi, l as Mi, u as Ui, m as fn, n as Di, p as pn, A as xi, q as Yi, t as Gi, v as Wi, w as po } from "./onboarding-routes-Bg4WGjhf.js"; 8import { e as gn, _ as ee } from "./_plugin-vue_export-helper-Bj5o8gOv.js"; 9import { HeaderMode as la, headerMode as ua } from "@mfe/core-header"; 10import { NavigationBarMode as ca, navigationBarMode as da } from "@mfe/core-navigation"; 11import { openScheduleDemoModal as Vi } from "@mfl/schedule-demo-modal"; 12import { UcFileUploader as zi } from "@mfl/uploadcare"; 13import { CompanyBrandColorField as Ki } from "@mfl/company-profile-dialog";
14const Hi = "/assets-ws1/1790849113105/onboarding/account-setup/setup-confetti.gif", ji = "/assets-ws1/1790849113105/onboarding/account-setup/setup-completed.png", Qi = "campaign-onboarding50off", Ji = /* @__PURE__ */ new Set([ 15 Pt.STANDARD, 16 Pt.STANDARD_WEBMAIL 17]); 18function Xi(e) { 19 return e === void 0 ? !1 : Ji.has(e); 20} 21function ma(e) { 22 const t = new URLSearchParams({ studioReturnTo: "setup" }); 23 return e?.signatureUpdate !== !0 && Xi(e?.experienceState) && t.set("setupFlow", "1"), `${e?.signatureUpdate === !0 ? `${lo}/last` : `${lo}/gallery`}?${t.toString()}`; 24} 25const K = { 26 title: "Setup", 27 /** Shown in the title-row badge; CSS uses text-transform: capitalize. */ 28 progressBadgeLabel: "{percent}% done", 29 description: "Four steps to your first professional signature. Most teams finish in under 10 minutes.", 30 learnMore: "Learn more", 31 setupCompletedDescr: "ð You're all set! Your signature is live.", 32 addEmployeeTitle: "Who needs a signature?", 33 addEmployeeDescr: "", 34 addEmployeeTeamTitle: "My team", 35 addEmployeeTeamDescr: "Add people by email, CSV upload, or sync from your directory. Everyone gets a branded signature automatically.", 36 addEmployeeDirectoryActionBtn: "Add employees", 37 addEmployeeJustMeTitle: "Just me for now", 38 addEmployeeJustMeDescr: "You can always add teammates later.", 39 addEmployeeActionBtn: "Add employees", 40 setConfigurationTitle: "Add signature to email", 41 setConfigurationDescr: "", 42 installRecommendedBadge: "Recommended", 43 installCentralizedTitle: "For my team", 44 installCentralizedDescr: "Connect your email service to automatically manage and deploy signatures for your entire team.", 45 installCentralizedActionBtn: "Connect your email platform", 46 installSelfTitle: "Just for me", 47 installSelfDescr: "Takes about 2 minutes. Step-by-step for Gmail, Outlook, or your email client.", 48 installSelfActionBtn: "Get install instructions", 49 signatureUpdateTitle: "Edit your signature", 50 signatureUpdateDescr: "Edit your current design, or choose another template from the gallery.", 51 signatureUpdateActionBtn: "Edit signature", 52 actionDisabledAlert: "You don't have the required permissions. Please contact your admin for assistance.", 53 additionalActionTitle: "Just me for now", 54 selectPlanTitle: "Choose a plan", 55 selectPlanDescr: "You're on a free 14-day trial with full access. Pick a plan to keep everything you've built.", 56 selectPlanActionBtn: "See plans â", 57 selectPlanBadge: "{days} days left in trial" 58}, qi = ["aid", "onClick"], Zi = { class: "text-md font-semibold item-title" }, $i = { 59 key: 0, 60 class: "item-badge" 61}, er = { 62 key: 0, 63 class: "item-expanded" 64}, tr = { class: "descr" }, nr = { key: 0 }, or = { class: "install-option-head" }, ar = { class: "install-option-title" }, ir = { 65 key: 0, 66 class: "install-option-badge" 67}, rr = { class: "install-option-descr" }, sr = { 68 key: 4, 69 class: "action-area" 70}, lr = { key: 0 }, ur = ["src"], cr = /* @__PURE__ */ j({ 71 __name: "setup-item-list", 72 props: { 73 accountSetupData: { default: () => [] }, 74 userRole: { default: "" }, 75 emailPlatform: { default: "OTHER" } 76 }, 77 emits: ["completeStage", "expandOption"], 78 setup(e, { emit: t }) { 79 const n = t, o = e; 80 function a() { 81 return { 82 tasks_completed: `${o.accountSetupData.filter((u) => u.isCompleted).length}`, 83 total_tasks: `${o.accountSetupData.length}`, 84 connector_type: o.emailPlatform, 85 role: o.userRole 86 }; 87 } 88 function i(u) { 89 oe({ 90 eventName: u.linkEventName, 91 eventAttributes: a() 92 }), ze(u.learnMoreLink, { reload: !0, newTab: !0 }); 93 } 94 async function r(u) { 95 if (oe({ 96 eventName: u.actionEventName, 97 eventAttributes: a() 98 }), u.actionFn) { 99 await u.actionFn(); 100 return; 101 } 102 if (u.id === Ke.selectPlan && ia({ 103 eventName: "navigated_to_pricing_page", 104 metadata: { origin: "setup_item_list" } 105 }), u.id === Ke.signatureUpdate) { 106 const v = await Li().catch(() => { 107 }) ?? Ci(); 108 u.isCompleted || v?.signatureUpdate === !0 ? ze(ma({ signatureUpdate: !0 }), { 109 reload: !0 110 }) : ze(u.actionLink, { reload: !0 }); 111 return; 112 } 113 ze(u.actionLink, { reload: !0 }); 114 } 115 const s = B(null); 116 async function f(u, v) { 117 if (!(v.disabled || s.value)) { 118 if (v.key === "centralized" && !u.hasIntegrationsEntitlement) { 119 await Si(); 120 return; 121 } 122 if (oe({ 123 eventName: v.actionEventName, 124 eventAttributes: a() 125 }), v.actionFn) { 126 s.value = v.key; 127 try { 128 await v.actionFn(); 129 } finally { 130 s.value = null; 131 } 132 return; 133 } 134 v.actionLink && ze(v.actionLink, { reload: !0 }); 135 } 136 } 137 return (u, v) => (m(!0), b(de, null, Pe(o.accountSetupData, (c, k) => (m(), b("div", { 138 key: `setup-account-${k}-${c.id}`, 139 class: "item" 140 }, [ 141 l("div", { 142 class: "item-collapsed", 143 aid: `SETUP_ACCOUNT_${c.id.toLocaleUpperCase()}_STEP`, 144 onClick: (E) => n("expandOption", c) 145 }, [ 146 l("i", { 147 class: H( 148 c.isCompleted ? "item-status-done fa-solid fa-circle-check" : `item-status-number fa-kit fa-${k + 1}` 149 ) 150 }, null, 2), 151 l("div", Zi, [ 152 q(_(c.title) + " ", 1), 153 c.badgeText && !c.isCompleted ? (m(), b("span", $i, [ 154 v[0] || (v[0] = l("i", { class: "fa-regular fa-alarm-clock" }, null, -1)), 155 q(" " + _(c.badgeText), 1) 156 ])) : D("", !0) 157 ]), 158 l("div", { 159 class: H([ 160 "fa-regular", 161 { 162 "fa-chevron-down": !c.isExpanded, 163 "fa-chevron-up": c.isExpanded 164 } 165 ]) 166 }, null, 2) 167 ], 8, qi), 168 c.isExpanded ? (m(), b("div", er, [ 169 l("div", tr, [ 170 c.descr ? (m(), b("div", nr, _(c.descr), 1)) : D("", !0), 171 c.learnMoreLink ? (m(), Y(d(ke), { 172 key: 1, 173 label: d(K).learnMore, 174 icon: "fa-regular fa-arrow-up-right-from-square", 175 variant: "text", 176 class: "learn-more", 177 aid: `SETUP_ACCOUNT_LEARN_MORE_${c.id.toLocaleUpperCase()}`, 178 size: "sm", 179 onClick: (E) => i(c) 180 }, null, 8, ["label", "aid", "onClick"])) : c.installOptions ? D("", !0) : (m(), b("div", { 181 key: 2, 182 class: H( 183 c.isPromotionCard ? "promotion-divider" : "action-divider" 184 ) 185 }, null, 2)), 186 c.installOptions ? (m(), b("div", { 187 key: 3, 188 class: H([ 189 "install-options", 190 { "install-options--after-descr": !c.learnMoreLink } 191 ]) 192 }, [ 193 (m(!0), b(de, null, Pe(c.installOptions, (E) => (m(), b("div", { 194 key: E.key, 195 class: H(["install-option", { recommended: E.recommended }]) 196 }, [ 197 l("div", or, [ 198 l("span", ar, _(E.title), 1), 199 E.recommended ? (m(), b("span", ir, _(d(K).installRecommendedBadge), 1)) : D("", !0) 200 ]), 201 l("div", rr, _(E.descr), 1), 202 x(d(ke), { 203 disabled: E.disabled, 204 loading: s.value === E.key, 205 size: "sm", 206 variant: E.recommended || E.primaryAction ? void 0 : "outlined", 207 color: E.recommended || E.primaryAction ? "primary" : "gray-500", 208 aid: E.aid, 209 onClick: (N) => f(c, E) 210 }, { 211 default: Q(() => [ 212 q(_(E.actionTitle) + " ", 1), 213 E.disabled && E.tooltip ? (m(), Y(d(tt), {
214 key: 0, 215 aid: `${E.aid}_TOOLTIP` 216 }, { 217 default: Q(() => [ 218 q(_(E.tooltip), 1) 219 ]), 220 _: 2 221 }, 1032, ["aid"])) : D("", !0) 222 ]), 223 _: 2 224 }, 1032, ["disabled", "loading", "variant", "color", "aid", "onClick"]) 225 ], 2))), 128)) 226 ], 2)) : D("", !0), 227 c.actionLink || c.actionFn ? (m(), b("div", sr, [ 228 x(d(ke), { 229 disabled: c.disabled, 230 size: "sm", 231 aid: `SETUP_ACCOUNT_BTN_${c.id.toLocaleUpperCase()}`, 232 onClick: (E) => r(c) 233 }, { 234 default: Q(() => [ 235 q(_(c.actionTitle) + " ", 1), 236 c.disabled && c.tooltip ? (m(), Y(d(tt), { 237 key: 0, 238 aid: `SETUP_ACCOUNT_BTN_${c.id.toLocaleUpperCase()}_TOOLTIP` 239 }, { 240 default: Q(() => [ 241 q(_(c.tooltip), 1) 242 ]), 243 _: 2 244 }, 1032, ["aid"])) : D("", !0) 245 ]), 246 _: 2 247 }, 1032, ["disabled", "aid", "onClick"]) 248 ])) : D("", !0), 249 c.canManageDomain ? D("", !0) : (m(), Y(d(si), { 250 key: 5, 251 type: "info", 252 variant: "outlined", 253 closable: !1, 254 open: !0, 255 aid: `SETUP_ACCOUNT_BTN_ALERT_${c.id.toLocaleUpperCase()}` 256 }, { 257 default: Q(() => [ 258 q(_(d(K).actionDisabledAlert), 1) 259 ]), 260 _: 1 261 }, 8, ["aid"])) 262 ]), 263 c.imgScr ? (m(), b("div", lr, [ 264 l("img", { 265 src: c.imgScr, 266 class: H(c.imgCssClass || void 0) 267 }, null, 10, ur) 268 ])) : D("", !0) 269 ])) : D("", !0) 270 ]))), 128)); 271 } 272}), dr = "https://hub.wisestamp.com", mr = "setupFirstVisit"; 273function fr(e, t) { 274 e.searchParams.set(Ri, "setup"), t.includeSetupFirstVisit && e.searchParams.set(mr, "1"); 275} 276async function pr() { 277 return wi("setConfiguration"); 278} 279function gr(e) { 280 if (!e) return; 281 const t = e.signatureId?.trim(); 282 if (t) return t; 283 const n = e.group?.signatureId?.trim(); 284 if (n) return n; 285} 286function br(e) { 287 switch (e) { 288 case Oe.GOOGLE: 289 return "gmail"; 290 case Oe.MICROSOFT: 291 return "outlook/for-web"; 292 default: 293 return "other"; 294 } 295} 296function vr(e) { 297 const t = e.toLowerCase().split("@")[1] ?? ""; 298 return t === "gmail.com" || t === "googlemail.com" ? "gmail" : t === "outlook.com" || t === "hotmail.com" || t === "live.com" ? "outlook/for-web" : "other"; 299} 300function _r(e, t) { 301 if (e === Oe.OTHER) { 302 const n = vr(t); 303 if (n !== "other") return n; 304 } 305 return br(e); 306} 307async function hr() { 308 const { userEmail: e } = zn(); 309 if (!e) return { error: "No user email on the account" }; 310 await gn.init(Ue()); 311 const { employees: t } = await gn.searchEmployees({ 312 filters: [{ field: "email", value: [e] }], 313 limit: 1 314 }), n = t?.[0]; 315 if (!n) return { error: `No employee found for ${e}` }; 316 const o = gr(n); 317 if (!o) 318 return { error: `Employee ${e} has no assigned signature` }; 319 await ne.init(Ue()); 320 const { emailPlatform: a } = await ne.getBasicInfo({}), i = _r(a, e), s = ((await gn.getOrganizationSetting({}))?.employeeHubUrl || dr).replace( 321 /\/$/, 322 "" 323 ), f = new URL( 324 `/instructions/${o}/${i}`, 325 s 326 ), u = await pr(); 327 return fr(f, { includeSetupFirstVisit: u }), { url: f.toString() }; 328} 329async function kr() { 330 let e; 331 try { 332 e = await hr(); 333 } catch (t) { 334 console.error("[self-install] resolve threw", t), e = { 335 error: t instanceof Error ? t.message : "Unexpected error" 336 }; 337 } 338 if ("error" in e) { 339 console.warn("[self-install] not navigating to hub:", e.error), $o({ 340 aid: "SELF_INSTALL_RESOLVE_ERROR", 341 status: ea.Error, 342 message: `Couldn't open install instructions: ${e.error}` 343 }); 344 return; 345 } 346 ze(e.url, { reload: !0 }); 347} 348function Jt(e) { 349 return sa(e, Ln.setup); 350} 351function yr() { 352 return { 353 title: K.installCentralizedTitle, 354 descr: K.installCentralizedDescr 355 }; 356} 357function Sr() { 358 return { 359 title: K.addEmployeeTeamTitle, 360 descr: K.addEmployeeTeamDescr 361 }; 362} 363function Ir(e, t, n) { 364 const o = !t; 365 if (e.key === "directory") { 366 const a = Sr(); 367 return { 368 key: "directory", 369 title: a.title, 370 descr: a.descr, 371 actionTitle: K.addEmployeeDirectoryActionBtn, 372 actionLink: Jt(n ? "/v1/employees" : "/v1/employees?addEmployee"), 373 recommended: e.recommended, 374 primaryAction: o, 375 disabled: !e.enabled, 376 aid: "SETUP_ACCOUNT_BTN_ADDEMPLOYEE", 377 actionEventName: "setup_page_add_employees_clicked" 378 }; 379 } 380 if (e.key === "justMe") 381 return { 382 key: "justMe", 383 title: K.addEmployeeJustMeTitle, 384 descr: K.addEmployeeJustMeDescr, 385 actionTitle: K.additionalActionTitle, 386 recommended: e.recommended, 387 aid: "JUST_ME_ACTION_BTN", 388 actionEventName: "setup_page_just_me_clicked" 389 }; 390} 391function Er(e) { 392 const t = Se.isEntitledTo( 393 Nt.integrations 394 ); 395 if (e.key === "centralized") { 396 const n = yr(), o = Se.isAllowedTo( 397 Ve.manageDomain 398 ), a = Se.isEntitledTo(Nt.centralizedManagement) && !t; 399 return { 400 key: "centralized", 401 title: n.title, 402 descr: n.descr, 403 actionTitle: K.installCentralizedActionBtn, 404 // `integrate=emailPlatform` matches Integrations' own 405 // INTEGRATE_PURPOSE_QUERY_PARAM contract (setup-journey-query.ts), 406 // carrying the guided-arrival purpose across in-module navigation. 407 actionLink: `${Jt("/v1/integrations")}&integrate=emailPlatform`, 408 recommended: e.recommended, 409 // Mode-off users still need to click through to configure centralized 410 // management, so only the domain permission (not opt.enabled) blocks them. 411 disabled: a ? !o : !e.enabled, 412 aid: "SETUP_ACCOUNT_BTN_SETCONFIGURATION", 413 actionEventName: "setup_page_add_connector_clicked" 414 }; 415 } 416 if (e.key === "selfInstall") 417 return { 418 key: "selfInstall", 419 title: K.installSelfTitle, 420 descr: K.installSelfDescr, 421 actionTitle: K.installSelfActionBtn, 422 actionFn: kr, 423 recommended: e.recommended, 424 disabled: !e.enabled, 425 aid: "INSTALL_OPTION_SELF", 426 actionEventName: "setup_page_activate_employees_clicked" 427 }; 428} 429function Ar(e, t) { 430 const n = e.options?.filter((r) => r.visible) ?? []; 431 if (n.length === 0) return; 432 const o = n.some((r) => r.recommended), a = [...n].sort((r, s) => r.recommended === s.recommended ? r.order - s.order : r.recommended ? -1 : 1), i = []; 433 for (const r of a) { 434 let s; 435 e.id === "addEmployee" ? s = Ir( 436 r, 437 o, 438 !!t.onboardingStatus.addEmployee 439 ) : e.id === "deploySignature" && (s = Er(r)), s && i.push(s); 440 } 441 return i.length ? i : void 0; 442} 443function Or(e, t) { 444 const n = Se.isAllowedTo(Ve.manageDomain), o = Se.isEntitledTo( 445 Nt.integrations 446 ), a = Ar(e, t), i = { 447 canManageDomain: n, 448 hasIntegrationsEntitlement: o, 449 isCompleted: e.completed 450 }; 451 switch (e.id) { 452 case "signatureUpdate": 453 return { 454 ...i, 455 id: Ke.signatureUpdate, 456 title: K.signatureUpdateTitle, 457 descr: K.signatureUpdateDescr, 458 imgScr: Wt("account-setup/design-signature.png"), 459 learnMoreLink: "https://support.wisestamp.com/hc/en-us/articles/12170554703517-Overview-of-the-Signature-Editor", 460 actionLink: ma({ 461 signatureUpdate: t.onboardingStatus.signatureUpdate, 462 experienceState: t.experienceState 463 }), 464 actionTitle: K.signatureUpdateActionBtn, 465 disabled: !Se.isAllowedTo(Ve.editSignature), 466 actionEventName: "setup_page_edit_template_clicked", 467 linkEventName: "setup_page_learn_more_about_templates" 468 }; 469 case "addEmployee": 470 return { 471 ...i, 472 id: Ke.addEmployee, 473 title: K.addEmployeeTitle, 474 descr: K.addEmployeeDescr, 475 imgScr: Wt("account-setup/add-employee.svg"), 476 learnMoreLink: "https://support.wisestamp.com/hc/en-us/articles/13509289151261-Add-and-Import-Employees", 477 linkEventName: "setup_page_learn_more_about_add_employees", 478 installOptions: a 479 }; 480 case "deploySignature": 481 return { 482 ...i, 483 // Keep setConfiguration id for progress / analytics continuity in UI 484 id: Ke.setConfiguration, 485 title: K.setConfigurationTitle, 486 descr: K.setConfigurationDescr, 487 imgScr: Wt("account-setup/set-configuration.png"), 488 learnMoreLink: "https://support.wisestamp.com/hc/en-us/articles/14792851691165-Connectors-Comparison", 489 linkEventName: "setup_page_learn_more_about_connectors", 490 installOptions: a 491 }; 492 case "selectPlan": 493 return { 494 ...i, 495 id: Ke.selectPlan, 496 title: K.selectPlanTitle, 497 descr: K.selectPlanDescr, 498 imgScr: Wt("account-setup/select-plan.svg"), 499 imgCssClass: "select-plan-img", 500 actionLink: Jt(Ii), 501 actionTitle: K.selectPlanActionBtn, 502 actionEventName: "setup_page_select_plan_clicked", 503 isPromotionCard: !0, 504 badgeText: t.trialDaysLeft !== void 0 ? K.selectPlanBadge.replace( 505 "{days}", 506 String(t.trialDaysLeft) 507 ) : void 0 508 }; 509 default: 510 return; 511 } 512} 513function Lr(e, t) { 514 return e.boxes.filter((n) => n.visible).map((n) => Or(n, t)).filter((n) => n !== void 0); 515} 516function go(e) { 517 const t = []; 518 Se.isEntitledTo(Nt.integrations) && t.push("integrations"), Se.isEntitledTo(Nt.centralizedManagement) && t.push("centralizedManagement"); 519 const n = []; 520 return Se.isAllowedTo(Ve.manageDomain) && n.push(Ve.manageDomain), Se.isAllowedTo(Ve.manageEmployee) && n.push(Ve.manageEmployee), Se.isAllowedTo(Ve.editSignature) && n.push(Ve.editSignature), Ni( 521 e.experienceState, 522 { 523 ...e.context, 524 entitlements: t, 525 permissions: n 526 }, 527 e.progress 528 ); 529} 530const Cr = { 531 key: 0, 532 class: "setup-completed" 533}, wr = { class: "form" }, Rr = { class: "descr" }, Tr = { class: "text-2xl font-bold" }, Nr = { 534 key: 1, 535 class: "account-setup" 536}, Pr = { class: "form" }, Fr = { class: "account-setup-header" }, Br = { class: "account-setup-title text-2xl font-bold" }, Mr = { 537 key: 0, 538 aid: "SETUP_PAGE_PROGRESS_BADGE" 539}, Ur = { class: "descr text-md font-semibold" }, Dr = /* @__PURE__ */ j({ 540 __name: "account-setup", 541 setup(e) { 542 const t = B(!0), n = B({ 543 userBasicInfo: {}, 544 accountTypeInfo: {}, 545 workspaceInfo: {}, 546 demoSession: void 0, 547 demoScheduled: !1, 548 userEmail: "", 549 userCountry: "", 550 userRole: "" 551 }), o = B([]), a = B([]), i = B(), r = R(() => o.value.length && o.value.length === o.value.filter((C) => C.isCompleted).length), s = R(() => ({ 552 tasks_completed: `${o.value.filter((C) => C.isCompleted).length}`, 553 total_tasks: `${o.value.length}`, 554 connector_type: y(), 555 role: n.value.userRole 556 })), f = R(() => { 557 const { total: C, completed: M } = mo.value; 558 return C <= 0 ? 0 : Math.round(M / C * 100); 559 }), u = R( 560 () => mo.value.total > 0 561 ), v = (C, M) => C === Ke.setConfiguration ? !!(M.setConfiguration || M.activateEmployee) : !!M[C], c = (C, M) => { 562 let se = !1; 563 return M.map(function(W) { 564 const he = v(W.id, C), g = { 565 ...W, 566 isCompleted: he, 567 isExpanded: !se && !he 568 }; 569 return W.id === Ke.addEmployee && g.installOptions && (g.installOptions = g.installOptions.map( 570 (S) => S.key === "justMe" ? { ...S, actionFn: L } : S.key === "directory" ? { 571 ...S, 572 actionFn: () => A(S.actionLink) 573 } : S 574 )), !se && !he && (se = !0), g; 575 }); 576 }; 577 let k; 578 async function E() { 579 if (r.value) 580 return k || (k = (async () => { 581 try { 582 if (await ne.completeSetup({}), a.value.length) 583 for (const C of a.value) 584 await ne.completeSetupStage({ 585 stepName: C 586 }); 587 Ai(); 588 } catch (C) { 589 k = void 0, console.error("Failed to persist setup completion", C); 590 } 591 })(), k); 592 } 593 X( 594 r, 595 (C) => { 596 C && E(); 597 }, 598 { immediate: !0 } 599 ), Vn(async () => {
600 try { 601 await ne.init(Ue()), await N(), await oe({ 602 eventName: "setup_page_view", 603 eventAttributes: s.value 604 }); 605 } catch (C) { 606 console.error("get onboarding status failed", C), Qt("SETUP_ERROR_TOAST"); 607 } finally { 608 t.value = !0, ra(); 609 } 610 }), gi(async () => { 611 if (t.value) 612 try { 613 await N(), await E(); 614 } catch (C) { 615 console.error("refresh setup data failed", C); 616 } 617 }); 618 async function N() { 619 const C = await ne.getBasicInfo({}), M = C.onboardingStatus || {}; 620 let se, W; 621 try { 622 const S = zn(); 623 se = S.isInTrial ? Number(S.remainDays) : void 0, W = { 624 isActive: !!S.isSubscriptionActive, 625 isInTrial: !!S.isInTrial, 626 remainDays: Number(S.remainDays) 627 }; 628 } catch (S) { 629 console.error("Failed to get account info for trial data", S); 630 } 631 const he = { 632 emailPlatform: C.emailPlatform, 633 creatingFor: C.creatingFor, 634 companySize: C.companySize, 635 companyIndustry: C.companyIndustry, 636 addEmployeeChoice: i.value, 637 subscription: W 638 }; 639 let be = C.setupPlan && !i.value ? C.setupPlan : go({ 640 experienceState: C.experienceState, 641 context: he, 642 progress: M 643 }); 644 if (be.autoCompleteFlags && be.autoCompleteFlags.length > 0) { 645 for (const S of be.autoCompleteFlags) { 646 const P = S; 647 M[P] === !1 && (await uo(P), M[P] = !0); 648 } 649 be = go({ 650 experienceState: C.experienceState, 651 context: he, 652 progress: M 653 }); 654 } 655 const g = Lr(be, { 656 ...he, 657 trialDaysLeft: se, 658 onboardingStatus: M, 659 experienceState: C.experienceState 660 }); 661 o.value = c(M, g), Kt(n.value, C), Ei(M); 662 } 663 function y() { 664 return n.value.workspaceInfo.emailPlatform === void 0 ? "" : Oe[n.value.workspaceInfo.emailPlatform]; 665 } 666 async function L() { 667 try { 668 i.value = "justMe", await uo(Ke.addEmployee), await N(); 669 } catch (C) { 670 console.error("Failed to complete setup stage", C), Qt("SETUP_STAGE_UPDATE_FAILED_TOAST"); 671 } 672 } 673 function A(C) { 674 C && (i.value = "directory", ze(C, { reload: !0 })); 675 } 676 function ae(C) { 677 C.isCompleted = !0; 678 } 679 function fe(C) { 680 if (C.isExpanded) 681 C.isExpanded = !1; 682 else { 683 const M = o.value.find((se) => se.isExpanded); 684 M && (M.isExpanded = !1), C.isExpanded = !0; 685 } 686 } 687 return (C, M) => t.value && r.value ? (m(), b("div", Cr, [ 688 M[1] || (M[1] = l("img", { 689 src: Hi, 690 aid: "SIGNUP_FLOW_SUCCESS_STATE", 691 class: "setup-completed__confetti-img" 692 }, null, -1)), 693 l("div", wr, [ 694 l("div", Rr, [ 695 M[0] || (M[0] = l("img", { 696 src: ji, 697 aid: "SIGNUP_FLOW_SUCCESS_STATE" 698 }, null, -1)), 699 l("div", Tr, _(d(K).setupCompletedDescr), 1) 700 ]) 701 ]) 702 ])) : t.value ? (m(), b("div", Nr, [ 703 l("div", Pr, [ 704 l("div", Fr, [ 705 l("div", Br, _(d(K).title), 1), 706 u.value ? (m(), b("div", Mr, [ 707 x(d(Ti), { 708 percent: f.value, 709 "label-template": d(K).progressBadgeLabel 710 }, null, 8, ["percent", "label-template"]) 711 ])) : D("", !0) 712 ]), 713 l("div", Ur, _(d(K).description), 1), 714 o.value.length ? (m(), Y(cr, { 715 key: 0, 716 "account-setup-data": o.value, 717 "user-role": n.value.userRole, 718 "email-platform": y(), 719 onCompleteStage: ae, 720 onExpandOption: fe 721 }, null, 8, ["account-setup-data", "user-role", "email-platform"])) : D("", !0) 722 ]) 723 ])) : D("", !0); 724 } 725}), xr = /* @__PURE__ */ ee(Dr, [["__scopeId", "data-v-a8ea2ac6"]]), Yr = "data:image/png;base64,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", dt = { 726 pageTitle: "Welcome to WiseStamp!", 727 previewTitle: "Here's a first look at your signature â¨", 728 previewBodyLead: "We built a draft using your company info and just sent it to your inbox s
728o you can see how it'll look in a real email.", 729 previewBodyRest: "", 730 finalTouchLead: "Ready for the final touch?", 731 desktopInstruction: "To complete your installation or make further layout adjustments, please head over to your desktop computer." 732}, Gr = { class: "onboarding-completed-mobile" }, Wr = { class: "onboarding-completed-mobile_content_text" }, Vr = { class: "onboarding-completed-mobile__eyebrow" }, zr = { class: "onboarding-completed-mobile__hero" }, Kr = { class: "onboarding-completed-mobile__inbox" }, Hr = { class: "onboarding-completed-mobile__next-steps" }, jr = { class: "onboarding-completed-mobile__lead" }, Qr = /* @__PURE__ */ j({ 733 __name: "onboarding-completed-mobile", 734 setup(e) { 735 return ua.value = la.Hidden, da.value = ca.Hidden, (t, n) => (m(), b("div", Gr, [ 736 l("div", Wr, [ 737 l("p", Vr, _(d(dt).pageTitle), 1), 738 l("h1", zr, _(d(dt).previewTitle), 1), 739 l("p", Kr, [ 740 l("strong", null, _(d(dt).previewBodyLead), 1), 741 q(" " + _(" ") + _(d(dt).previewBodyRest), 1) 742 ]), 743 l("div", Hr, [ 744 l("p", jr, _(d(dt).finalTouchLead), 1), 745 l("p", null, _(d(dt).desktopInstruction), 1) 746 ]) 747 ]), 748 n[0] || (n[0] = l("img", { 749 src: Yr, 750 alt: "Onboarding Completed" 751 }, null, -1)) 752 ])); 753 } 754}), Jr = /* @__PURE__ */ ee(Qr, [["__scopeId", "data-v-83a32fb6"]]), xt = "ws1/user-gateway", Xr = xt + "/user-profile", qr = xt + "/organization", Zr = xt + "/bi-analytics"; 755var bo; 756(function(e) { 757 e.expired = "EXPIRED", e.grace = "GRACE", e.active = "ACTIVE", e.cancelled = "CANCELLED", e.soloPro = "pro", e.soloFree = "free", e.trialActive = "TRIAL-ACTIVE", e.trialExpired = "TRIAL-EXPIRED"; 758})(bo || (bo = {})); 759var vo; 760(function(e) { 761 e.GATEWAY_ERROR_MISSING_AUTH_DATA = "accountId or userId are missing", e.GATEWAY_ERROR_MISSING_REQUIRED_DATA = "required data is missing", e.GATEWAY_ERROR_INVALID_ACCOUNT_STATE_FOR_ONBOARDING = "invalid account state for onboarding", e.GATEWAY_ERROR_FAILED_TO_CREATE_BILLING_ACCOUNT = "failed to create billing account", e.GATEWAY_ERROR_FAILED_TO_CREATE_SUBSCRIPTION = "failed to create subscription", e.GATEWAY_ERROR_SET_WORKSPACE_FAILED = "set workspace failed", e.BRIDGE_SERVER_ERROR_UPDATE_BASIC_INFO = "update basic info bridge error", e.BRIDGE_SERVER_ERROR_SET_ACCOUNT_TYPE = "set account type bridge error", e.BRIDGE_SERVER_ERROR_COMPLETE_SETUP = "complete setup bridge error", e.BRIDGE_SERVER_ERROR_REMOVE_ORGANIZATION = "remove organization bridge error", e.ORGANIZATION_COUNT_ERROR_REMOVE_ORGANIZATION = "remove organization count of organization less then two", e.BRIDGE_SERVER_ERROR_COMPLETE_SETUP_STAGE = "complete setup stage bridge error", e.SERVER_ERROR_CREATE_ORGANIZATION = "create organization error", e.LIMIT_ERROR_CREATE_ORGANIZATION = "create organization limit error", e.ORGANIZATION_NAME_ALREADY_EXISTS = "organization name already exists", e.SERVER_ERROR_SET_DEFAULT_ORGANIZATION = "set default organization error", e.GATEWAY_ERROR_USER_NOT_FOUND = "user not found"; 762})(vo || (vo = {})); 763var _o; 764(function(e) { 765 e[e.EXPERIENCE_STATE_UNSPECIFIED = 0] = "EXPERIENCE_STATE_UNSPECIFIED", e[e.STANDARD = 1] = "STANDARD", e[e.GENERATOR_PRO = 2] = "GENERATOR_PRO", e[e.GENERATOR_ORGANIZATION = 3] = "GENERATOR_ORGANIZATION", e[e.STANDARD_WEBMAIL = 4] = "STANDARD_WEBMAIL"; 766})(_o || (_o = {})); 767const $r = [ 768 "accountBasicInfo", 769 "getAccountLimits" 770], es = [ 771 "reportAnonymousUserAnalyticEvent", 772 "reportRegisteredUserAnalyticEvent" 773]; 774var ho; 775(function(e) { 776 e[e.MICROSOFT = 0] = "MICROSOFT", e[e.GOOGLE = 1] = "GOOGLE", e[e.OTHER = 2] = "OTHER"; 777})(ho || (ho = {})); 778const ts = [ 779 "getOrganizationsList", 780 "removeOrganization", 781 "createOrganization", 782 "setDefaultOrganization" 783]; 784var ko; 785(function(e) { 786 e[e.Success = 0] = "Success", e[e.UserNotFound = 1] = "UserNotFound", e[e.InternalError = 2] = "InternalError", e[e.InvalidRequest = 3] = "InvalidRequest"; 787})(ko || (ko = {})); 788var yo; 789(function(e) { 790 e[e.Success = 0] = "Success", e[e.EmailAlreadyInUse = 1] = "EmailAlreadyInUse", e[e.InvalidPassword = 2] = "InvalidPassword", e[e.UserNotFound = 3] = "UserNotFound", e[e.InvalidData = 4] = "InvalidData", e[e.InternalError = 5] = "InternalError"; 791})(yo || (yo = {})); 792var So; 793(function(e) { 794 e[e.TooExpensive = 0] = "TooExpensive", e[e.CouldntFindTemplateILike = 1] = "CouldntFindTemplateILike", e[e.MissingFeatureCustomizationOption = 2] = "MissingFeatureCustomizationOption", e[e.TooDifficultToUse = 3] = "TooDifficultToUse", e[e.SignatureDidntInsertProperly = 4] = "SignatureDidntInsertProperly", e[e.FoundBetterSolution = 5] = "FoundBetterSolution", e[e.Other = 6] = "Other"; 795})(So || (So = {})); 796var Io; 797(function(e) { 798 e[e.Success = 0] = "Success", e[e.InvalidPassword = 1] = "InvalidPassword", e[e.UserNotFound = 2] = "UserNotFound", e[e.AccessDenied = 3] = "AccessDenied"; 799})(Io || (Io = {})); 800const ns = [ 801 "getProfile", 802 "updateProfile", 803 "deleteAccount" 804], os = [ 805 "convertSoloToTeams", 806 "convertPersonalSignaturesToOrganization" 807], Eo = je({ 808 baseRoute: xt, 809 methods: $r, 810 sdkPackageName: "@msl/user-gateway-sdk", 811 requireAuth: !0 812}); 813je({ 814 baseRoute: qr, 815 methods: ts, 816 sdkPackageName: "@msl/user-gateway-sdk", 817 requireAuth: !0 818}); 819je({ 820 baseRoute: Xr, 821 methods: ns, 822 sdkPackageName: "@msl/user-gateway-sdk", 823 requireAuth: !0 824}); 825je({ 826 baseRoute: xt, 827 methods: os, 828 sdkPackageName: "@msl/user-gateway-sdk", 829 requireAuth: !0 830}); 831je({ 832 baseRoute: Zr, 833 methods: es, 834 sdkPackageName: "@msl/user-gateway-sdk", 835 requireAuth: ["reportRegisteredUserAnalyticEvent"] 836}); 837const as = { 838 overlay: "Done! We sent a preview to {{email}}. Check your inbox." 839}; 840function is(e, t, n = !1) { 841 const o = t.trim() || "your inbox", a = n ? `<strong>${o}</strong>` : o; 842 return e.replace(/\{\{email\}\}/g, a); 843} 844const p = { 845 generalServerError: "Something went wrong. Please try again.", 846 demoSessionMarginHeader: "Trusted by", 847 buttonContinueLabel: "Continue", 848 buttonScheduleLabel: "Schedule a demo", 849 buttonContinueDisabledTooltip: "Please fill all required data", 850 buttonBackLabel: "Back", 851 buttonSkipLabel: "Skip", 852 tellUsAboutYourFormHeader: "Let's start with your details", 853 userNameLabel: "Full name", 854 userNameRequired: "Please fill in your name", 855 userTitleLabel: "Job title", 856 userMobileLabel: "Phone", 857 companyNameRequired: "Please fill in your company name", 858 userMobileInvalid: "mobile invalid", 859 companyNameLabel: "Company name", 860 companyWebsiteLabel: "Company website", 861 companyWebsiteInvalid: "Enter a valid website URL (e.g. acme.com)", 862 companyWebsiteAiAriaLabel: "Provide your website to automatically import your brand info.", 863 makeSignatureYoursHeader: "Brand your signature", 864 makeSignatureYoursCollectingTitle: "Finding your brand", 865 makeSignatureYoursCollectingSubtitle: "This process usually takes 10s", 866 makeSignatureYoursCollectingStepSearchWebsite: "Searching company website", 867 makeSignatureYoursCollectingStepExtractLogoColor: "Extracting company logo and color", 868 makeSignatureYoursCollectingStepMakeSignature: "Making your signature on brand", 869 makeSignatureYoursCollectingStepAlmostReady: "Almost ready...", 870 makeSignatureYoursImageLabel: "Your image", 871 makeSignatureYoursUploadLogoLabel: "Upload your own...", 872 makeSignatureYoursBrandColorLabel: "Brand color", 873 makeSignatureYoursBrandColorAiLabel: "AI color", 874 makeSignatureYoursBrandColorDarkerShadeLabel: "Darker shade", 875 makeSignatureYoursBrandColorNeutralLabel: "Neutral", 876 makeSignatureYoursBrandColorCustomLabel: "Choose your own...", 877 makeSignatureYoursBrandColorPickerHexLabel: "Hex:", 878 makeSignatureYoursBrandColorPickerCancel: "Cancel", 879 makeSignatureYoursBrandColorPickerDone: "Done", 880 makeSignatureYoursSocialLinksLabel: "Social links", 881 makeSignatureYoursInstagramPlaceholder: "https://instagram.com/...", 882 makeSignatureYoursFacebookPlaceholder: "https://facebook.com/...", 883 makeSignatureYoursLinkedinPlaceholder: "https://linkedin.com/company/...", 884 companyLogoLabel: "Company logo", 885 companyLogoAlt: "Company logo", 886 companyLogoUploadButton: "Click to upload", 887 companyLogoReplaceButton: "Replace", 888 companyLogoUploadError: "Logo upload failed. Please try again.", 889 signatureIntentHeader: "How many people work at your company?", 890 signatureIntentAudienceHeader: "Who are you creating signatures for?", 891 signatureIntentJustForMeLabel: "Just for me", 892 signatureIntentJustForMeDescription: "Create and install a professional signature for yourself.", 893 signatureIntentCompanyWideLabel: "Company-wide template", 894 signatureIntentCompanyWideDescription: "Create one branded template, sync your directory, and deploy signatures centrally.", 895 signatureIntentCompanyTemplatePreviewLabel: "Company template", 896 signatureIntentEmployeePreviewLabel: "Generated for every employee", 897 signatureIntentSwitcherJustForMe: "My signature", 898 signatureIntentSwitcherCompanyWide: "Company template", 899 signatureIntentTintedFieldsNote: "Tinted fields auto-fill with each employee's data", 900 tellUsAboutYourFormCompanySizeHeader: "How many people work at your company?", 901 centralizedManagementHeader: "How do you want to set up email signatures?", 902 centralizedManagementOptionCentralizedLabel: "Centralized by the company", 903 centralizedManagementOptionCentralizedDescription: "Admins or IT set and install signatures for everyone automatically.", 904 centralizedManagementOptionDecentralizedLabel: "Each employee installs their own", 905 centralizedManagementOptionDecentralizedDescription: "You create the signature once and employees follow the install steps, no IT needed.", 906 whoAreCreatingSigForFormIndustryHeader: "Which best describes your industry?", 907 nameYourWorkspaceFormEmailPlatformHeader: "What is your email platform?", 908 accountTypeOptionJustMe: "Just for me", 909 accountTypeOptionCompany: "A company-wide signature", 910 accountTypeOptionIT: "An Agency / IT for my clients", 911 companyIndustryOptionTechnology: "Technology", 912 companyIndustryOptionRealEstate: "Real Estate", 913 companyIndustryOptionHealthcare: "Healthcare", 914 companyIndustryOptionBusiness: "Business Services", 915 companyIndustryOptionFinance: "Finance", 916 companyIndustryOptionNonProfit: "Non-Profit", 917 companyIndustryOptionMarketing: "Marketing", 918 companyIndustryOptionEducation: "Education", 919 companyIndustryOptionLegal: "Legal", 920 companyIndustryOptionArchitecture: "Architecture & Construction", 921 companyIndustryOptionRetail: "Retail", 922 companyIndustryOptionIndustrial: "Industrial",
923 companyIndustryOptionHospitality: "Hospitality", 924 companyIndustryOptionMedia: "Media & Entertainment", 925 companyIndustryOptionTransportation: "Transportation", 926 companyIndustryOptionPublic: "Public & Government", 927 companyIndustryOptionOther: "Other", 928 bookDemoSessionOptionYes: "Yes", 929 bookDemoSessionOptionNo: "No", 930 companySizeOptionIndividual: "Just me", 931 companySizeOptionSmall: "2-10", 932 companySizeOptionMedium: "11-50", 933 companySizeOptionLarge: "51-100", 934 companySizeOptionXlarge: "101-200", 935 companySizeOptionXXlarge: "200+", 936 emailPlatformOptionMicrosoft: "Microsoft", 937 emailPlatformOptionGoogle: "Google Workspace", 938 emailPlatformOptionOther: "Other", 939 demoSessionFormHeader: "Would you like to book a free demo session?", 940 marginTrustedBy: "Trusted by", 941 completeOnboardingGettingReadyMsg: "Getting ready", 942 demoSessionDialogHeader: "Book your free demo session", 943 bookADemoHeader: "Get a personalized demo - talk with our product experts", 944 demoBenefitsExploreBestSetup: "Explore the best setup for your organization", 945 demoBenefitsIntegrateWithTools: "See how easily we integrate with your tools and workflows", 946 demoBenefitsChooseTheRightPlan: "Choose the right plan for your business and receive a tailored quote", 947 webmailFinalStepWelcomeBadge: "Welcome offer · this screen only", 948 webmailFinalStepBilledAnnually: "Billed annually", 949 webmailFinalStepFirstYearSummary: "{discountedAnnual} for your first year", 950 webmailFinalStepSkipOfferLabel: "Skip offer", 951 webmailFinalStepGetOfferLabel: "Get 50% off" 952}, rs = { class: "live-preview-margin-shell" }, ss = { class: "live-preview-margin-shell__switcher-slot" }, ls = { class: "live-preview-margin-shell__preview" }, us = /* @__PURE__ */ j({ 953 __name: "live-preview-margin-shell", 954 props: { 955 showFooterNote: { type: Boolean } 956 }, 957 setup(e) { 958 return (t, n) => (m(), b("div", rs, [ 959 l("div", ss, [ 960 mn(t.$slots, "switcher") 961 ]), 962 l("div", ls, [ 963 mn(t.$slots, "default") 964 ]), 965 l("div", { 966 class: H(["live-preview-margin-shell__footer-note", { 967 "live-preview-margin-shell__footer-note--visible": e.showFooterNote 968 }]) 969 }, [ 970 mn(t.$slots, "footer-note") 971 ], 2) 972 ])); 973 } 974}), fa = /* @__PURE__ */ ee(us, [["__scopeId", "data-v-bd8089f3"]]), cs = "ws1/signature-editor-gateway", ds = `${cs}/gallery-template`, ms = [ 975 "loadStudioGalleryInitialState", 976 "loadGalleryTemplatesByCategory", 977 "renderGalleryTemplateForSignup", 978 "getLayoutTemplates" 979], Ao = je({ 980 baseRoute: ds, 981 methods: ms, 982 sdkPackageName: "@msl/signature-editor-gateway-sdk", 983 requireAuth: !0 984}), fs = "ws1/signature-generator-gateway", ps = `${fs}/api`; 985var wn; 986(function(e) { 987 e[e.ARIAL = 0] = "ARIAL", e[e.TIMES_NEW_ROMAN = 1] = "TIMES_NEW_ROMAN", e[e.HELVETICA = 2] = "HELVETICA", e[e.GEORGIA = 3] = "GEORGIA", e[e.VERDANA = 4] = "VERDANA"; 988})(wn || (wn = {})); 989var Oo; 990(function(e) { 991 e[e.FULL = 0] = "FULL", e[e.ICON = 1] = "ICON", e[e.INITIAL = 2] = "INITIAL", e[e.NONE = 3] = "NONE"; 992})(Oo || (Oo = {})); 993const gs = [ 994 "getTemplates", 995 "renderSignature", 996 "renderAnonymousSignature", 997 "uploadPhoto", 998 "getSavedSignature", 999 "getAnonymousSignature", 1000 "saveAnonymousSignature", 1001 "extractSocialLinks", 1002 "getAnonymousSignaturePayload" 1003], bt = je({ 1004 baseRoute: ps, 1005 methods: gs, 1006 sdkPackageName: "@msl/signature-generator-gateway-sdk", 1007 requireAuth: !1 1008}), pa = "generator"; 1009function vt(e) { 1010 return e === pa; 1011} 1012const U = { 1013 name: "Full name", 1014 title: "Job title", 1015 phone: "Phone", 1016 email: "Email", 1017 companyName: "Company name", 1018 companyWebsite: "Company website", 1019 logoUrl: "https://d36urhup7zbd7q.cloudfront.net/a/854d91ee-1d6c-4db6-9604-0ad595387946.png#logo", 1020 facebookLink: "wisestamp", 1021 instagramLink: "wisestamp", 1022 twitterLink: "wisestamp", 1023 linkedinLink: "company/wisestamp", 1024 tiktokLink: "@wisestamp" 1025}, ge = { 1026 name: "Employee name", 1027 title: "Employee job title", 1028 phone: "Employee phone", 1029 email: "Employee email", 1030 companyName: "Company name", 1031 companyWebsite: "Company website" 1032}; 1033function bs(e) { 1034 if (e) 1035 return e.includes("#logo") ? e : `${e}#logo`; 1036} 1037function nt(e, t) { 1038 const n = e?.trim() || t?.trim(); 1039 return bs(n) || U.logoUrl; 1040} 1041function vs() { 1042 return { 1043 employee: { 1044 name: U.name, 1045 title: U.title, 1046 phone: U.phone, 1047 mobile: U.phone,
1048 email: U.email 1049 }, 1050 company: { 1051 name: U.companyName, 1052 website: U.companyWebsite, 1053 logo: U.logoUrl, 1054 facebook_link: U.facebookLink, 1055 instagram_link: U.instagramLink, 1056 twitter_link: U.twitterLink, 1057 linkedin_link: U.linkedinLink, 1058 tiktok_link: U.tiktokLink 1059 } 1060 }; 1061} 1062function _s() { 1063 return { 1064 employee: { 1065 name: ge.name, 1066 title: ge.title, 1067 phone: ge.phone, 1068 mobile: ge.phone, 1069 email: ge.email 1070 }, 1071 company: { 1072 name: ge.companyName, 1073 website: ge.companyWebsite, 1074 logo: U.logoUrl, 1075 facebook_link: U.facebookLink, 1076 instagram_link: U.instagramLink, 1077 twitter_link: U.twitterLink, 1078 linkedin_link: U.linkedinLink, 1079 tiktok_link: U.tiktokLink 1080 } 1081 }; 1082} 1083function hs(e) { 1084 const t = e.employee ?? {}, n = e.company ?? {}, o = {}; 1085 t.name && (o.name = t.name), t.title && (o.title = t.title), t.mobile && (o.phone = t.mobile, o.mobile = t.mobile), t.email && (o.email = t.email), t.photo && (o.photo = t.photo); 1086 const a = {}; 1087 return n.name && (a.name = n.name), n.website && (a.website = n.website), a.logo = nt(void 0, n.logo), n.facebookLink && (a.facebook_link = n.facebookLink), n.instagramLink && (a.instagram_link = n.instagramLink), n.twitterLink && (a.twitter_link = n.twitterLink), n.linkedinLink && (a.linkedin_link = n.linkedinLink), n.tiktokLink && (a.tiktok_link = n.tiktokLink), n.youtubeLink && (a.youtube_link = n.youtubeLink), { employee: o, company: a }; 1088} 1089function ks(e) { 1090 const t = {}, n = e.company; 1091 n.name && (t.name = n.name), n.website && (t.website = n.website), n.logo && (t.logo = n.logo), n.facebook_link && (t.facebookLink = n.facebook_link), n.instagram_link && (t.instagramLink = n.instagram_link), n.twitter_link && (t.twitterLink = n.twitter_link), n.linkedin_link && (t.linkedinLink = n.linkedin_link), n.tiktok_link && (t.tiktokLink = n.tiktok_link), n.youtube_link && (t.youtubeLink = n.youtube_link), n.address && (t.address = n.address), n.phone && (t.phone = n.phone); 1092 const o = {}, a = e.employee; 1093 return a.name && (o.name = a.name), a.title && (o.title = a.title), a.mobile && (o.mobile = a.mobile), a.email && (o.email = a.email), a.photo && (o.photo = a.photo), { employee: o, company: t }; 1094} 1095const ga = { 1096 scale: 1, 1097 themeColor: "#000000", 1098 fontFamily: wn.ARIAL 1099}; 1100async function Lo(e, t, n) { 1101 if (!Me || Me.kind !== "generator") return; 1102 const { templateId: o, styles: a, apps: i, generatorPayload: r } = Me, s = r?.employee ?? {}, f = r?.company ?? {}, u = { 1103 ...s, 1104 name: e.userName?.trim() || s.name || "", 1105 title: e.userTitle?.trim() || s.title || "", 1106 mobile: e.userMobile?.trim() || s.mobile || "", 1107 email: t?.trim() || s.email || "" 1108 }, v = { 1109 ...f, 1110 name: e.companyName?.trim() || f.name || "", 1111 website: e.companyWebsite?.trim() || f.website || "", 1112 logo: n || f.logo || "" 1113 }; 1114 try { 1115 await bt.init(), await bt.saveAnonymousSignature({ 1116 templateId: o, 1117 payload: { employee: u, company: v }, 1118 styles: a ?? ga, 1119 apps: i 1120 }); 1121 } catch (c) { 1122 at(c); 1123 } 1124} 1125let mt, Xt, Ct, Me, qt; 1126function Ft(e = {}) { 1127 return Ct || (Ct = (async () => { 1128 if (e.signupOrigin === pa) 1129 try { 1130 await bt.init(); 1131 const n = await bt.getAnonymousSignature({}); 1132 if (n?.templateId) { 1133 const o = { 1134 kind: "generator", 1135 templateId: n.templateId, 1136 styles: n.styles, 1137 apps: n.apps, 1138 generatorPayload: n.payload 1139 }; 1140 return Me = o, o; 1141 } 1142 } catch (n) { 1143 at(n); 1144 } 1145 const t = { kind: "signup" }; 1146 return Me = t, t; 1147 })(), Ct); 1148} 1149async function ba(e, t) { 1150 if (e.kind === "generator") { 1151 await bt.init(); 1152 const { html: o } = await bt.renderSignature({ 1153 templateId: e.templateId, 1154 payload: ks(t), 1155 styles: e.styles ?? ga, 1156 apps: e.apps 1157 }); 1158 return o ?? ""; 1159 } 1160 await Ao.init(Ue()); 1161 const n = await Ao.renderGalleryTemplateForSignup({ 1162 payload: t 1163 }); 1164 return n.layout && (qt = n.layout), n.html ?? ""; 1165} 1166function va(e = {}) { 1167 if (mt) return mt; 1168 const t = (async () => { 1169 try { 1170 const n = await Ft(e), o = n.kind === "generator" && n.generatorPayload ? hs(n.generatorPayload) : vs(), a = await ba(n, o); 1171 return Xt = a, a; 1172 } catch (n) { 1173 throw at(n), mt = void 0, Xt = void 0, n; 1174 } 1175 })(); 1176 return mt = t, t; 1177} 1178function ys() { 1179 return Xt; 1180} 1181function Ss() { 1182 return mt; 1183} 1184function Rn() { 1185 return Me; 1186} 1187function Yt() { 1188 if (qt) 1189 return { json: JSON.stringify(qt) }; 1190} 1191function Is() { 1192 if (Me?.kind === "generator") 1193 return { 1194 payload: Me.generatorPayload, 1195 styles: Me.styles 1196 }; 1197} 1198function Es() { 1199 mt = void 0, Xt = void 0, Ct = void 0, Me = void 0, qt = void 0, Kn.clear(), ft = void 0, sessionStorage.removeItem(Hn); 1200} 1201const Kn = /* @__PURE__ */ new Map(); 1202function Co(e) { 1203 return Kn.get(e); 1204} 1205function As(e, t) { 1206 Kn.set(e, t); 1207} 1208const Hn = "ws_onboarding_basic_info_baseline"; 1209let ft; 1210function Os() { 1211 try { 1212 const e = sessionStorage.getItem(Hn); 1213 return e ? JSON.parse(e) : void 0; 1214 } catch { 1215 return; 1216 } 1217} 1218function Ls(e) { 1219 const t = Os(); 1220 if (t) { 1221 ft = t; 1222 return; 1223 } 1224 ft || (ft = { 1225 userName: e.userName?.trim() ?? "", 1226 userTitle: e.userTitle?.trim() ?? "", 1227 userMobile: e.userMobile?.trim() ?? "", 1228 companyName: e.companyName?.trim() ?? "", 1229 companyWebsite: e.companyWebsite?.trim() ?? "" 1230 }, sessionStorage.setItem( 1231 Hn, 1232 JSON.stringify(ft) 1233 )); 1234} 1235function Tn() { 1236 return ft; 1237} 1238const Cs = "data:image/svg+xml,%3csvg%20width='32'%20height='32'%20viewBox='0%200%2032%2032'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3crect%20x='0.5'%20y='0.5'%20width='31'%20height='31'%20rx='6'%20stroke='%23D1D5DB'%20stroke-dasharray='4%203'%20fill='%23FAFAFA'/%3e%3cpath%20d='M16%2010V20M16%2010L12.5%2013.5M16%2010L19.5%2013.5'%20stroke='%239CA3AF'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M11%2022H21'%20stroke='%239CA3AF'%20stroke-width='1.5'%20stroke-linecap='round'/%3e%3c/svg%3e", $ = "upload", ye = "custom"; 1239function Zt() { 1240 return { 1241 id: $, 1242 label: p.makeSignatureYoursUploadLogoLabel, 1243 previewSrc: Cs 1244 }; 1245} 1246const jn = "brand-kit-color-", ws = 8, Rs = "ai-color", Ts = "dar
1246ker-shade", Ns = "neutral", Ps = [ 1247 { 1248 id: Rs, 1249 label: p.makeSignatureYoursBrandColorAiLabel, 1250 detail: "#4F46E5", 1251 previewColor: "#4F46E5" 1252 }, 1253 { 1254 id: Ts, 1255 label: p.makeSignatureYoursBrandColorDarkerShadeLabel, 1256 detail: "#3b35ac", 1257 previewColor: "#3b35ac" 1258 }, 1259 { 1260 id: Ns, 1261 label: p.makeSignatureYoursBrandColorNeutralLabel, 1262 detail: "#0F172A", 1263 previewColor: "#0F172A" 1264 } 1265]; 1266function Nn() { 1267 return { 1268 id: ye, 1269 label: p.makeSignatureYoursBrandColorCustomLabel 1270 }; 1271} 1272function wo() { 1273 return [Nn()]; 1274} 1275function Fs(e) { 1276 const t = e.trim(); 1277 if (!t) return; 1278 const n = t.startsWith("#") ? t : `#${t}`; 1279 if (/^#[0-9A-Fa-f]{6}$/.test(n)) 1280 return n.toUpperCase(); 1281} 1282function Pn(e) { 1283 const t = []; 1284 let n = 0; 1285 return (e ?? []).forEach((o, a) => { 1286 if (t.length >= ws) return; 1287 const i = Fs(o); 1288 i && (n += 1, t.push({ 1289 id: `${jn}${a}`, 1290 label: `Color option ${n}`, 1291 detail: i, 1292 previewColor: i 1293 })); 1294 }), t.length === 0 ? [...Ps, Nn()] : [...t, Nn()]; 1295} 1296function Bs(e) { 1297 return e.brandKitBrandColorOptions?.length ? e.brandKitBrandColorOptions : e.brandKit?.colors?.length ? Pn(e.brandKit.colors) : Pn([]); 1298} 1299function Ms(e, t, n) { 1300 if (e === ye) 1301 return t?.trim() || void 0; 1302 const o = n.find( 1303 (a) => a.id === e 1304 ); 1305 return o?.previewColor ?? o?.detail; 1306} 1307function Je(e) { 1308 return /^<svg\b/i.test(e.trim()); 1309} 1310function Us(e) { 1311 return `data:image/svg+xml;charset=utf-8,${encodeURIComponent(e.trim())}`; 1312} 1313function Ds(e) { 1314 return e.trim(); 1315} 1316function Qn(e) { 1317 const t = e.previewSrc?.trim(); 1318 if (t) 1319 return Ds(t); 1320 const n = e.previewInlineSvg?.trim() || (e.rawLogo?.trim() && Je(e.rawLogo) ? e.rawLogo.trim() : ""); 1321 if (n && Je(n)) 1322 return Us(n); 1323 const o = e.rawLogo?.trim(); 1324 if (o && /^https?:\/\//i.test(o)) 1325 return o; 1326} 1327const _t = "brand-kit-"; 1328function xs(e) { 1329 return e.brandKitLogoOptions?.some( 1330 (t) => t.id.startsWith(_t) 1331 ) ? !0 : (e.brandKit?.logos ?? []).some((t) => !!t?.trim()); 1332} 1333function Bt(e) { 1334 return !!e?.startsWith(_t); 1335} 1336function _a(e) { 1337 return !!e?.startsWith(jn); 1338} 1339function ha(e) { 1340 if (!Bt(e)) 1341 return; 1342 const t = Number(e.slice(_t.length)); 1343 if (!(!Number.isInteger(t) || t < 0)) 1344 return t; 1345} 1346function Ys(e) { 1347 return !/^https?:\/\//i.test(e) || Je(e) ? !1 : !/\.svg(?:[?#]|$)/i.test(e); 1348} 1349function ka(e, t) { 1350 const n = ha(t); 1351 if (n === void 0) 1352 return; 1353 const o = e.brandKit?.logos?.[n]?.trim(), a = e.brandKit?.logoPreviews?.[n]?.trim(); 1354 if (o && Ys(o) || o && Je(o)) 1355 return o; 1356 const i = e.brandKitLogoOptions?.find((r) => r.id === t)?.previewInlineSvg?.trim(); 1357 if (i && Je(i)) 1358 return i; 1359 if (o && /^https?:\/\//i.test(o)) 1360 return o; 1361 if (a?.startsWith("data:image/")) 1362 return a; 1363} 1364const Gs = !0; 1365function Ws() { 1366 return Gs; 1367} 1368function xe(e) { 1369 return Ws() ? !vt(e.signupOrigin) : !1; 1370} 1371function Vs(e) { 1372 const t = e?.trim(); 1373 return !t || Je(t) ? !1 : /^https?:\/\//i.test(t); 1374} 1375function ya(e) { 1376 return e.previewSrc?.trim() ? !1 : Vs(e.rawLogo); 1377} 1378function Mt(e) { 1379 return e.id === $ ? !0 : ya(e) ? e.remoteLogoReachable === !0 : !!Qn({ 1380 previewSrc: e.previewSrc, 1381 rawLogo: e.rawLogo, 1382 previewInlineSvg: e.previewInlineSvg 1383 }); 1384} 1385function zs(e) { 1386 return e.filter( 1387 (t) => t.id !== $ && Mt(t) 1388 ); 1389} 1390function Ks(e) { 1391 return new Promise((t) => { 1392 const n = new Image(); 1393 n.referrerPolicy = "no-referrer", n.onload = () => t(!0), n.onerror = () => t(!1), n.src = e.trim(); 1394 }); 1395} 1396const Hs = 4, js = 2, Qs = 3; 1397function Js(e) { 1398 return e.makeSignatureYours?.logoOptionId === $ ? Qs : js; 1399} 1400function Sa(e) { 1401 const t = e.trim(); 1402 if (!t) 1403 return; 1404 const n = t.startsWith("#") ? t : `#${t}`; 1405 if (/^#[0-9A-Fa-f]{6}$/.test(n)) 1406 return n.toUpperCase(); 1407} 1408function Xs(e) { 1409 return Sa(e.previewColor ?? e.detail ?? ""); 1410} 1411function qs(e) { 1412 const t = Sa( 1413 kt(e) ?? "" 1414 ), n = /* @__PURE__ */ new Set(), o = []; 1415 for (const a of rn( 1416 e 1417 )) { 1418 if (!_a(a.id)) 1419 continue; 1420 const i = Xs(a); 1421 if (!(!i || i === t || n.has(i)) && (n.add(i), o.push(i), o.length >= Hs)) 1422 break; 1423 } 1424 return o; 1425} 1426function Ht(e) { 1427 const t = e.trim(); 1428 return !t || t.startsWith("data:") ? !1 : Je(t) ? !0 : /^https?:\/\//i.test(t); 1429} 1430function Zs(e) { 1431 const t = e.makeSignatureYours?.logoOptionId, n = [], o = Js(e); 1432 for (const a of an(e)) { 1433 if (!Bt(a.id) || Bt(t) && a.id === t || !Mt(a)) 1434 continue; 1435 const i = ka(e, a.id); 1436 if (!(!i?.trim() || !Ht(i)) && (n.push(i.trim()), n.length >= o)) 1437 break; 1438 } 1439 return n; 1440} 1441const $s = [ 1442 "Arial", 1443 "Courier New", 1444 "Georgia", 1445 "Lucida Sans", 1446 "Palatino", 1447 "Times New Roman", 1448 "Trebuchet MS", 1449 "Verdana" 1450], el = "Arial", Ia = new Map( 1451 $s.map((e) => [e.toLowerCase(), e]) 1452); 1453function tl(e) { 1454 return e.trim().replace(/['"]/g, ""); 1455} 1456function Ea(e) { 1457 const t = tl(e); 1458 if (!t) 1459 return []; 1460 const n = t.split(",")[0]?.trim(); 1461 return n && n !== t ? [n, t] : [t]; 1462} 1463function nl(e) { 1464 for (const t of e) 1465 for (const n of Ea(t)) { 1466 const o = Ia.get(n.toLowerCase()); 1467 if (o) 1468 return o; 1469 } 1470 return el; 1471} 1472function ol(e) { 1473 for (const t of e) 1474 for (const n of Ea(t)) 1475 if (Ia.has(n.toLowerCase())) return !0; 1476 return !1; 1477} 1478function al(e) { 1479 if (!(e.brandKitFetchStatus !== "done" || !e.brandKit)) 1480 return nl(e.brandKit.fonts ?? []); 1481} 1482function an(e) { 1483 return xe(e) ? e.brandKitLogoOptions?.length ? e.brandKitLogoOptions : [Zt()] : [Zt()]; 1484} 1485function rn(e) { 1486 return !xe(e) || Jn(e) && !e.brandKitBrandColorOptions?.length && !e.brandKit?.colors?.length ? wo() : Bs(e); 1487} 1488function Jn(e) { 1489 return xe(e) ? e.brandKitFetchStatus !== "done" : !0; 1490} 1491function il(e) { 1492 return an(e).length > 1; 1493} 1494function rl(e) { 1495 return rn(e).length > 1; 1496} 1497function Xn(e) { 1498 return !xe(e) || il(e) || Jn(e) ? !0 : !xs(e); 1499} 1500function qn(e) { 1501 return !xe(e) || rl(e) ? !0 : Jn(e) && !e.brandKitBrandColorOptions?.length && !e.brandKit?.colors?.length; 1502} 1503function ht() { 1504 return { 1505 logoOptionId: null, 1506 brandColorOptionId: null, 1507 brandColor: "", 1508 instagramLink: "", 1509 facebookLink: "", 1510 linkedinLink: "" 1511 }; 1512} 1513function Ut(e) { 1514 const t = e.companyLogo?.trim(), n = e.makeSignatureYours; 1515 if (!Xn(e)) 1516 return t || void 0; 1517 if (n?.logoOptionId === $ && t) 1518 return t;
1519 const o = an(e).find( 1520 (s) => s.id === n?.logoOptionId 1521 ); 1522 if (!o || n?.logoOptionId === $ || !Mt(o)) 1523 return t || void 0; 1524 const a = ha(n?.logoOptionId), i = a !== void 0 ? e.brandKit?.logos?.[a]?.trim() : o.rawLogo?.trim(); 1525 return Qn({ 1526 previewSrc: o.previewSrc, 1527 rawLogo: i, 1528 previewInlineSvg: o.previewInlineSvg 1529 }) ?? t ?? void 0; 1530} 1531function kt(e) { 1532 const t = e.makeSignatureYours; 1533 return qn(e) ? Ms( 1534 t?.brandColorOptionId, 1535 t?.brandColor, 1536 rn(e) 1537 ) : t?.brandColor?.trim() || void 0; 1538} 1539function Fn(e) { 1540 const t = ka( 1541 e, 1542 e.makeSignatureYours?.logoOptionId 1543 ); 1544 if (t && Ht(t)) 1545 return t; 1546 const n = e.companyLogo?.trim(); 1547 if (e.makeSignatureYours?.logoOptionId === $ && n && Ht(n)) 1548 return n; 1549 const o = Ut(e)?.trim(); 1550 if (!(!o || !Ht(o))) 1551 return o; 1552} 1553function sl(e) { 1554 const t = Fn(e), n = kt(e)?.trim(), o = al(e), a = qs(e), i = Zs(e), r = e.makeSignatureYours, s = r?.facebookLink?.trim(), f = r?.linkedinLink?.trim(), u = r?.instagramLink?.trim(), v = e.brandKit?.socials?.x?.trim(), c = e.brandKit?.socials?.youtube?.trim(); 1555 return { 1556 ...t ? { companyLogo: t } : {}, 1557 ...n ? { brandColor: n } : {}, 1558 ...o ? { brandFontFamily: o } : {}, 1559 ...a.length ? { additionalBrandColors: a } : {}, 1560 ...i.length ? { additionalCompanyLogos: i } : {}, 1561 ...s ? { facebookLink: s } : {}, 1562 ...f ? { linkedinLink: f } : {}, 1563 ...u ? { instagramLink: u } : {}, 1564 ...v ? { xLink: v } : {}, 1565 ...c ? { youtubeLink: c } : {} 1566 }; 1567} 1568function Aa(e, t) { 1569 const n = t.makeSignatureYours, o = kt(t); 1570 o && (e.primary_color = o, e.primary_color_hex = o.replace(/^#/, "").toUpperCase()); 1571 const a = n?.facebookLink?.trim(); 1572 a && (e.facebook_link = a); 1573 const i = n?.linkedinLink?.trim(); 1574 i && (e.linkedin_link = i); 1575 const r = n?.instagramLink?.trim(); 1576 r && (e.instagram_link = r); 1577} 1578const ll = { 1579 class: "preview-card", 1580 aid: "ONBOARDING_LIVE_SIGNATURE_PREVIEW" 1581}, ul = { class: "preview-card__to-subject" }, cl = { class: "preview-card__to-subject-row" }, dl = { class: "preview-card__to-subject-row" }, ml = { 1582 key: 0, 1583 class: "preview-loader" 1584}, fl = { 1585 key: 2, 1586 class: "preview-fallback" 1587}, pl = 300, gl = "fit", bl = /* @__PURE__ */ j({ 1588 __name: "tell-us-about-you", 1589 props: { 1590 onboardingData: {}, 1591 previewKind: { default: "single" }, 1592 tinted: { type: Boolean, default: !1 }, 1593 visible: { type: Boolean, default: !0 }, 1594 applyMakeSignatureYoursToPreview: { type: Boolean, default: !1 } 1595 }, 1596 setup(e) { 1597 const t = e; 1598 let n, o = 0, a = Rn(); 1599 const i = R(() => { 1600 const g = t.onboardingData.makeSignatureYours, S = t.applyMakeSignatureYoursToPreview || vt(t.onboardingData.signupOrigin); 1601 return JSON.stringify({ 1602 previewKind: t.previewKind, 1603 applyMakeSignatureYoursToPreview: t.applyMakeSignatureYoursToPreview, 1604 name: t.onboardingData.userBasicInfo.userName ?? "", 1605 title: t.onboardingData.userBasicInfo.userTitle ?? "", 1606 companyName: t.onboardingData.userBasicInfo.companyName ?? "", 1607 companyWebsite: t.onboardingData.userBasicInfo.companyWebsite ?? "", 1608 phone: t.onboardingData.userBasicInfo.userMobile ?? "", 1609 email: t.onboardingData.userEmail ?? "", 1610 companyLogo: S ? Ut(t.onboardingData) ?? "" : "", 1611 brandColor: S ? kt(t.onboardingData) ?? "" : "", 1612 logoOptionId: S ? g?.logoOptionId ?? "" : "", 1613 brandColorOptionId: S ? g?.brandColorOptionId ?? "" : "", 1614 facebookLink: S ? g?.facebookLink ?? "" : "", 1615 linkedinLink: S ? g?.linkedinLink ?? "" : "", 1616 instagramLink: S ? g?.instagramLink ?? "" : "" 1617 }); 1618 }), r = t.previewKind !== "companyTemplate" ? ys() : void 0, s = B( 1619 Co(i.value) ?? r ?? "" 1620 ), f = B( 1621 !s.value && r === void 0 1622 ), u = B(!s.value && r === ""), v = Object.values(ge).filter( 1623 (g) => g !== ge.companyName && g !== ge.companyWebsite 1624 ); 1625 function c(g, S, P) { 1626 return g.replace( 1627 /(<[^>]*>)|([^<]+)/g, 1628 (V, T, re) => T || (re ? re.replaceAll(S, P) : "") 1629 ); 1630 }
1631 const k = R(() => { 1632 if (t.previewKind !== "companyTemplate" || !s.value) 1633 return s.value; 1634 let g = s.value; 1635 for (const S of v) 1636 g = c( 1637 g, 1638 S, 1639 `<span class="placeholder-pill">${S}</span>` 1640 ); 1641 return g; 1642 }), E = tn("htmlViewer"); 1643 function N() { 1644 t.visible && requestAnimationFrame(() => { 1645 const g = E.value?.$el; 1646 if (!g || !t.visible) return; 1647 const S = g.clientWidth; 1648 S && (g.style.width = `${S - 1}px`, requestAnimationFrame(() => { 1649 g.style.width = ""; 1650 })); 1651 }); 1652 } 1653 X(k, N), X( 1654 () => t.visible, 1655 (g) => { 1656 g && N(); 1657 } 1658 ), X( 1659 i, 1660 () => { 1661 y(); 1662 }, 1663 { immediate: !0 } 1664 ), De(async () => { 1665 try { 1666 if (!(t.previewKind === "companyTemplate" && a?.kind === "generator") && !fe()) { 1667 const P = await ae(); 1668 if (P !== void 0) { 1669 a = Rn() ?? a, o === 0 && A(P); 1670 return; 1671 } 1672 } 1673 a = await Ft(), await L(); 1674 } catch (g) { 1675 u.value = !0, f.value = !1, at(g), console.error("[onboarding live preview] failed to initialize:", g); 1676 } 1677 }), nn(() => { 1678 n && clearTimeout(n); 1679 }); 1680 function y() { 1681 n && clearTimeout(n); 1682 const g = Co(i.value); 1683 if (g) { 1684 A(g); 1685 return; 1686 } 1687 n = setTimeout(() => { 1688 L(); 1689 }, pl); 1690 } 1691 async function L() { 1692 const g = ++o; 1693 try { 1694 a || (a = await Ft()); 1695 const S = await ba(a, M()); 1696 if (g !== o) return; 1697 A(S); 1698 } catch (S) { 1699 g === o && (u.value = !0, at(S), console.error("[onboarding live preview] render failed:", S)); 1700 } finally { 1701 g === o && (f.value = !1); 1702 } 1703 } 1704 function A(g) { 1705 if (f.value = !1, g) { 1706 s.value = g, u.value = !1, As(i.value, g); 1707 return; 1708 } 1709 s.value || (u.value = !0, console.error("[onboarding live preview] renderer returned empty HTML")); 1710 } 1711 async function ae() { 1712 const g = Ss() ?? va(); 1713 try { 1714 return await g; 1715 } catch { 1716 return; 1717 } 1718 } 1719 function fe() { 1720 const { userBasicInfo: g } = t.onboardingData; 1721 return !!(g.userName?.trim() || g.userTitle?.trim() || g.companyName?.trim() || g.companyWebsite?.trim() || g.userMobile?.trim()); 1722 } 1723 function C() { 1724 if (t.applyMakeSignatureYoursToPreview || vt(t.onboardingData.signupOrigin)) 1725 return Ut(t.onboardingData); 1726 } 1727 function M() { 1728 const { userBasicInfo: g, userEmail: S } = t.onboardingData, P = C(), V = a?.kind === "generator" ? a.generatorPayload : void 0; 1729 let T; 1730 if (t.previewKind === "companyTemplate") 1731 if (V) { 1732 const { employee: re, company: G } = V; 1733 T = he( 1734 g, 1735 S, 1736 Tn(), 1737 re, 1738 G, 1739 P 1740 ); 1741 } else { 1742 T = _s(); 1743 const re = g.companyName?.trim(), G = g.companyWebsite?.trim(); 1744 re && (T.company.name = re), G && (T.company.website = G), T.company.logo = nt(P); 1745 } 1746 else if (V) { 1747 const { employee: re, company: G } = V; 1748 T = be( 1749 g, 1750 S, 1751 Tn(), 1752 re, 1753 G, 1754 P 1755 ); 1756 } else 1757 T = se(g, S, P); 1758 return t.applyMakeSignatureYoursToPreview && Aa(T.company, t.onboardingData), T; 1759 } 1760 function se(g, S, P) { 1761 const V = g.userName?.trim() || U.name, T = g.userTitle?.trim() || U.title, re = g.userMobile?.trim() || U.phone, G = S?.trim() || U.email, J = g.companyName?.trim() || U.companyName, Ye = g.companyWebsite?.trim() || U.companyWebsite; 1762 return { 1763 employee: { name: V, title: T, phone: re, mobile: re, email: G }, 1764 company: { 1765 name: J, 1766 website: Ye, 1767 logo: nt(P), 1768 facebook_link: U.facebookLink, 1769 instagram_link: U.instagramLink, 1770 twitter_link: U.twitterLink, 1771 linkedin_link: U.linkedinLink, 1772 tiktok_link: U.tiktokLink 1773 } 1774 }; 1775 } 1776 function W(g, S, P) { 1777 const V = g?.trim() ?? ""; 1778 return V !== (S ?? "") ? V || void 0 : P || void 0; 1779 } 1780 function he(g, S, P, V, T, re) { 1781 const G = {}, J = {}; 1782 return W( 1783 g.userName, 1784 P?.userName, 1785 V?.name 1786 ) && (G.name = ge.name), W( 1787 g.userTitle, 1788 P?.userTitle, 1789 V?.title 1790 ) && (G.title = ge.title), W( 1791 g.userMobile, 1792 P?.userMobile, 1793 V?.mobile 1794 ) && (G.phone = ge.phone, G.mobile = ge.phone), (S?.trim() || V?.email) && (G.email = ge.email), V?.photo && (G.photo = V.photo), J.name = W( 1795 g.companyName, 1796 P?.companyName, 1797 T?.name 1798 ) || ge.companyName, J.website = W( 1799 g.companyWebsite, 1800 P?.companyWebsite, 1801 T?.website 1802 ) || ge.companyWebsite, J.logo = nt(re, T?.logo), T?.facebookLink && (J.facebook_link = T.facebookLink), T?.instagramLink && (J.instagram_link = T.instagramLink), T?.twitterLink && (J.twitter_link = T.twitterLink), T?.linkedinLink && (J.linkedin_link = T.linkedinLink), T?.tiktokLink && (J.tiktok_link = T.tiktokLink), T?.youtubeLink && (J.youtube_link = T.youtubeLink), { employee: G, company: J }; 1803 } 1804 function be(g, S, P, V, T, re) { 1805 const G = {}, J = {}, Ye = W( 1806 g.userName, 1807 P?.userName, 1808 V?.name 1809 ); 1810 Ye && (G.name = Ye); 1811 const Xe = W( 1812 g.userTitle, 1813 P?.userTitle, 1814 V?.title 1815 ); 1816 Xe && (G.title = Xe); 1817 const qe = W( 1818 g.userMobile, 1819 P?.userMobile, 1820 V?.mobile 1821 ); 1822 qe && (G.phone = qe, G.mobile = qe); 1823 const st = S?.trim() || V?.email; 1824 st && (G.email = st), V?.photo && (G.photo = V.photo); 1825 const lt = W( 1826 g.companyName, 1827 P?.companyName, 1828 T?.name 1829 ); 1830 lt && (J.name = lt); 1831 const ut = W( 1832 g.companyWebsite, 1833 P?.companyWebsite, 1834 T?.website 1835 ); 1836 return ut && (J.website = ut), J.logo = nt(re, T?.logo), T?.facebookLink && (J.facebook_link = T.facebookLink), T?.instagramLink && (J.instagram_link = T.instagramLink), T?.twitterLink && (J.twitter_link = T.twitterLink), T?.linkedinLink && (J.linkedin_link = T.linkedinLink), T?.tiktokLink && (J.tiktok_link = T.tiktokLink), T?.youtubeLink && (J.youtube_link = T.youtubeLink), { employee: G, company: J }; 1837 } 1838 return (g, S) => (m(), b("div", { 1839 class: H(["preview-wrapper", { tinted: e.tinted }]) 1840 }, [ 1841 l("div", ll, [ 1842 l("div", ul, [ 1843 l("div", cl, _(d(pt).toLabel), 1), 1844 l("div", dl, _(d(pt).subjectLabel), 1) 1845 ]), 1846 f.value ? (m(), b("div", ml)) : k.value ? (m(), Y(d(ta), { 1847 key: 1, 1848 ref: "htmlViewer", 1849 content: k.value, 1850 scale: gl, 1851 aid: "ONBOARDING_LIVE_SIGNATURE_PREVIEW_CONTENT" 1852 }, null, 8, ["content"])) : u.value ? (m(), b("div", fl, _(d(pt).previewPlaceholder), 1)) : D("", !0) 1853 ]) 1854 ], 2)); 1855 } 1856}), Dt = /* @__PURE__ */ ee(bl, [["__scopeId", "data-v-a04f3bb4"]]), vl = { class: "live-preview-margin-shell__preview-slot" }, _l = /* @__PURE__ */ j({ 1857 __name: "live-preview-step-margin", 1858 props: { 1859 onboardingData: {} 1860 }, 1861 setup(e) { 1862 return (t, n) => (m(), Y(fa, null, { 1863 default: Q(() => [ 1864 l("div", vl, [ 1865 x(Dt, { "onboarding-data": e.onboardingData }, null, 8, ["onboarding-data"]) 1866 ]) 1867 ]), 1868 _: 1 1869 })); 1870 } 1871}), hl = "/assets-ws1/1790849113105/onboarding/onboarding-wrapper/book-a-demo-or-skip.png", kl = { class: "text-3xl font-semibold" }, yl = /* @__PURE__ */ j({ 1872 __name: "book-a-demo-or-skip", 1873 setup(e) { 1874 return (t, n) => (m(), b(de, null, [ 1875 l("div", kl, _(d(p).marginTrustedBy), 1), 1876 n[0] || (n[0] = l("img", { src: hl }, null, -1)) 1877 ], 64)); 1878 } 1879}), Sl = /* @__PURE__ */ ee(yl, [["__scopeId", "data-v-b5f4c555"]]), Il = "/assets-ws1/1790849113105/onboarding/onboarding-wrapper/select-email-platform.png", El = {}, Al = { src: Il }; 1880function Ol(e, t) { 1881 return m(), b("img", Al); 1882} 1883const Ll = /* @__PURE__ */ ee(El, [["render", Ol]]), Cl = { class: "signature-intent-preview__stack live-preview-margin-shell__preview-slot" }, wl = /* @__PURE__ */ j({ 1884 __name: "signature-intent", 1885 props: { 1886 onboardingData: { 1887 required: !0 1888 }, 1889 onboardingDataModifiers: {} 1890 }, 1891 emits: ["update:onboardingData"], 1892 setup(e) { 1893 const t = ce(e, "onboardingData"), n = R( 1894 () => t.value.userBasicInfo.creatingFor === Cn.MY_ORGANIZATION 1895 ), o = B(!1); 1896 return X(n, (a) => { 1897 a || (o.value = !1); 1898 }), (a, i) => (m(), Y(fa, { "show-footer-note": n.value }, {
1899 switcher: Q(() => [ 1900 l("div", { 1901 class: "signature-intent-preview__switcher", 1902 style: Le(n.value ? void 0 : { visibility: "hidden" }) 1903 }, [ 1904 l("button", { 1905 type: "button", 1906 class: H(["signature-intent-preview__tab", { 1907 "signature-intent-preview__tab--active": o.value 1908 }]), 1909 aid: "ONBOARDING_PREVIEW_SWITCHER_JUST_FOR_ME", 1910 onClick: i[0] || (i[0] = (r) => o.value = !0) 1911 }, _(d(p).signatureIntentSwitcherJustForMe), 3), 1912 l("button", { 1913 type: "button", 1914 class: H(["signature-intent-preview__tab", { 1915 "signature-intent-preview__tab--active": !o.value 1916 }]), 1917 aid: "ONBOARDING_PREVIEW_SWITCHER_COMPANY_WIDE", 1918 onClick: i[1] || (i[1] = (r) => o.value = !1) 1919 }, _(d(p).signatureIntentSwitcherCompanyWide), 3) 1920 ], 4) 1921 ]), 1922 "footer-note": Q(() => [ 1923 l("span", { 1924 style: Le(o.value ? { visibility: "hidden" } : void 0) 1925 }, [ 1926 i[2] || (i[2] = l("i", { class: "fa-light fa-users" }, null, -1)), 1927 q(" " + _(d(p).signatureIntentTintedFieldsNote), 1) 1928 ], 4) 1929 ]), 1930 default: Q(() => [ 1931 l("div", Cl, [ 1932 x(Dt, { 1933 class: H({ "preview-hidden": n.value && !o.value }), 1934 style: Le( 1935 n.value && !o.value ? { visibility: "hidden" } : void 0 1936 ), 1937 "onboarding-data": t.value, 1938 visible: !n.value || o.value, 1939 "preview-kind": "single" 1940 }, null, 8, ["class", "style", "onboarding-data", "visible"]), 1941 x(Dt, { 1942 class: H({ "preview-hidden": !n.value || o.value }), 1943 style: Le( 1944 !n.value || o.value ? { visibility: "hidden" } : void 0 1945 ), 1946 "onboarding-data": t.value, 1947 visible: n.value && !o.value, 1948 "preview-kind": "companyTemplate", 1949 tinted: "" 1950 }, null, 8, ["class", "style", "onboarding-data", "visible"]) 1951 ]) 1952 ]), 1953 _: 1 1954 }, 8, ["show-footer-note"])); 1955 } 1956}), Rl = /* @__PURE__ */ ee(wl, [["__scopeId", "data-v-1a57891e"]]), Tl = /* @__PURE__ */ j({ 1957 __name: "make-signature-yours", 1958 props: { 1959 onboardingData: {} 1960 }, 1961 setup(e) { 1962 return (t, n) => (m(), Y(Dt, { 1963 "onboarding-data": e.onboardingData, 1964 "apply-make-signature-yours-to-preview": "" 1965 }, null, 8, ["onboarding-data"])); 1966 } 1967}), Nl = /* @__PURE__ */ j({ 1968 __name: "webmail-final-step", 1969 props: { 1970 onboardingData: {} 1971 }, 1972 setup(e) { 1973 return (t, n) => (m(), Y(Dt, { 1974 "onboarding-data": e.onboardingData, 1975 "apply-make-signature-yours-to-preview": "" 1976 }, null, 8, ["onboarding-data"])); 1977 } 1978}), Pl = "data:image/svg+xml,%3csvg%20width='50'%20height='50'%20viewBox='0%200%2050%2050'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3ccircle%20cx='25'%20cy='25'%20r='25'%20fill='%23F5F5F5'/%3e%3cg%20clip-path='url(%23clip0_25644_13438)'%3e%3cpath%20d='M23.7754%2023.3286C23.4102%2022.9634%2023.4102%2022.3696%2023.7754%2022.0024L24.8516%2020.9263C25.2168%2020.561%2025.8105%2020.561%2026.1777%2020.9263L27.2559%2022.0024C27.6211%2022.3677%2027.6211%2022.9614%2027.2559%2023.3286L26.3164%2024.2681C26.1035%2024.481%2025.8164%2024.6001%2025.5156%2024.6001C25.2148%2024.6001%2024.9277%2024.481%2024.7148%2024.2681L23.7754%2023.3286ZM23.1133%2021.3403C22.748%2021.7056%2022.1543%2021.7056%2021.7871%2021.3403L20.8477%2020.4009C20.6348%2020.188%2020.5156%2019.9009%2020.5156%2019.6001C20.5156%2019.2993%2020.6348%2019.0122%2020.8477%2018.7993L21.7871%2017.8599C22.1523%2017.4946%2022.7461%2017.4946%2023.1133%2017.8599L24.1895%2018.936C24.5547%2019.3013%2024.5547%2019.895%2024.1895%2020.2622L23.1133%2021.3403ZM23.7754%2015.8716L24.7148%2014.9321C24.9277%2014.7192%2025.2148%2014.6001%2025.5156%2014.6001C25.8164%2014.6001%2026.1035%2014.7192%2026.3164%2014.9321L27.2559%2015.8716C27.6211%2016.2368%2027.6211%2016.8306%2027.2559%2017.1978L26.1797%2018.2739C25.8145%2018.6392%2025.2207%2018.6392%2024.8535%2018.2739L23.7754%2017.1978C23.4102%2016.8325%2023.4102%2016.2388%2023.7754%2015.8716ZM29.2441%2017.8599L30.1836%2018.7993C30.3965%2019.0122%2030.5156%2019.2993%2030.5156%2019.6001C30.5156%2019.9009%2030.3965%2020.188%2030.1836%2020.4009L29.2441%2021.3403C28.8789%2021.7056%2028.2852%2021.7056%2027.918%2021.3403L26.8418%2020.2642C26.4766%2019.8989%2026.4766%2019.3052%2026.8418%2018.938L27.918%2017.8599C28.2832%2017.4946%2028.877%2017.4946%2029.2441%2017.8599Z'%20fill='%23828282'/%3e%3c/g%3e%3cpath%20d='M32.2578%2032.12C32.2578%2031.38%2032.3911%2030.74%2032.6578%2030.2C32.9311%2029.66%2033.3211%2029.2433%2033.8278%2028.95C34.3345%2028.65%2034.9378%2028.5%2035.6378%2028.5C36.3311%2028.5%2036.9311%2028.65%2037.4378%2028.95C37.9445%2029.2433%2038.3345%2029.66%2038.6078%2030.2C38.8878%2030.74%2039.0278%2031.3767%2039.0278%2032.11C39.0278%2032.85%2038.8878%2033.4933%2038.6078%2034.04C38.3345%2034.58%2037.9445%2035%2037.4378%2035.3C36.9311%2035.6%2036.3311%2035.75%2035.6378%2035.75C34.9378%2035.75%2034.3345%2035.6%2033.8278%2035.3C33.3278%2035%2032.9411%2034.58%2032.6678%2034.04C32.3945%2033.4933%2032.2578%2032.8533%2032.2578%2032.12ZM33.6078%2032.12C33.6078%2032.9133%2033.7778%2033.5333%2034.1178%2033.98C34.4578%2034.4267%2034.9645%2034.65%2035.6378%2034.65C36.2911%2034.65%2036.7945%2034.4267%2037.1478%2033.98C37.5011%2033.5333%2037.6778%2032.9133%2037.6778%2032.12C37.6778%2031.32%2037.5011%2030.7%2037.1478%2030.26C36.8011%2029.82%2036.2978%2029.6%2035.6378%2029.6C34.9645%2029.6%2034.4578%2029.82%2034.1178%2030.26C33.7778%2030.7%2033.6078%2031.32%2033.6078%2032.12Z'%20fill='%23828282'/%3e%3cpath%20d='M28.4894%2035.75C27.696%2035.75%2027.0294%2035.6033%2026.4894%2035.31C25.9494%2035.0167%2025.5427%2034.6%2025.2694%2034.06C24.996%2033.52%2024.8594%2032.88%2024.8594%2032.14C24.8594%2031.3933%2025.006%2030.75%2025.2994%2030.21C25.5927%2029.6633%2026.0127%2029.2433%2026.5594%2028.95C27.1127%2028.65%2027.776%2028.5%2028.5494%2028.5C29.0627%2028.5%2029.5127%2028.57%2029.8994%2028.71C30.286%2028.8433%2030.626%2029.04%2030.9194%2029.3L30.4894%2030.3C30.276%2030.1333%2030.0727%2030%2029.8794%2029.9C29.686%2029.8%2029.486%2029.73%2029.2794%2029.69C29.0727%2029.6433%2028.8327%2029.62%2028.5
1978594%2029.62C27.786%2029.62%2027.1994%2029.84%2026.7994%2030.28C26.406%2030.7133%2026.2094%2031.3367%2026.2094%2032.15C26.2094%2032.9633%2026.396%2033.5833%2026.7694%2034.01C27.1494%2034.4367%2027.7427%2034.65%2028.5494%2034.65C28.8227%2034.65%2029.096%2034.6233%2029.3694%2034.57C29.6494%2034.5167%2029.9227%2034.44%2030.1894%2034.34L29.9494%2034.88V32.77H28.2994V31.83H31.0194V35.22C30.6927%2035.3867%2030.3027%2035.5167%2029.8494%2035.61C29.396%2035.7033%2028.9427%2035.75%2028.4894%2035.75Z'%20fill='%23828282'/%3e%3cpath%20d='M16.9844%2032.12C16.9844%2031.38%2017.1177%2030.74%2017.3844%2030.2C17.6577%2029.66%2018.0477%2029.2433%2018.5544%2028.95C19.061%2028.65%2019.6644%2028.5%2020.3644%2028.5C21.0577%2028.5%2021.6577%2028.65%2022.1644%2028.95C22.671%2029.2433%2023.061%2029.66%2023.3344%2030.2C23.6144%2030.74%2023.7544%2031.3767%2023.7544%2032.11C23.7544%2032.85%2023.6144%2033.4933%2023.3344%2034.04C23.061%2034.58%2022.671%2035%2022.1644%2035.3C21.6577%2035.6%2021.0577%2035.75%2020.3644%2035.75C19.6644%2035.75%2019.061%2035.6%2018.5544%2035.3C18.0544%2035%2017.6677%2034.58%2017.3944%2034.04C17.121%2033.4933%2016.9844%2032.8533%2016.9844%2032.12ZM18.3344%2032.12C18.3344%2032.9133%2018.5044%2033.5333%2018.8444%2033.98C19.1844%2034.4267%2019.691%2034.65%2020.3644%2034.65C21.0177%2034.65%2021.521%2034.4267%2021.8744%2033.98C22.2277%2033.5333%2022.4044%2032.9133%2022.4044%2032.12C22.4044%2031.32%2022.2277%2030.7%2021.8744%2030.26C21.5277%2029.82%2021.0244%2029.6%2020.3644%2029.6C19.691%2029.6%2019.1844%2029.82%2018.8444%2030.26C18.5044%2030.7%2018.3344%2031.32%2018.3344%2032.12Z'%20fill='%23828282'/%3e%3cpath%20d='M12%2035.6501V28.6001H13.29V34.5601H16.61V35.6501H12Z'%20fill='%23828282'/%3e%3cdefs%3e%3cclipPath%20id='clip0_25644_13438'%3e%3crect%20width='10'%20height='10'%20fill='white'%20transform='translate(20.5156%2014.6001)'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e", Fl = { class: "logo-upload__preview" }, Bl = ["src", "alt"], Ml = ["src", "alt"], Ul = { class: "logo-upload__text" }, Dl = { class: "logo-upload__label" }, xl = { 1979 key: 0, 1980 class: "logo-upload__action" 1981}, Yl = { 1982 key: 1, 1983 class: "logo-upload__action" 1984}, Gl = /* @__PURE__ */ j({ 1985 __name: "logo-upload", 1986 props: /* @__PURE__ */ me({ 1987 uploaderCtxName: { default: "onboarding-logo-uploader" }, 1988 aidPrefix: {}, 1989 headless: { type: Boolean, default: !1 } 1990 }, { 1991 modelValue: {}, 1992 modelModifiers: {} 1993 }), 1994 emits: /* @__PURE__ */ me(["upload", "cancel"], ["update:modelValue"]), 1995 setup(e, { expose: t, emit: n }) { 1996 const o = e, a = `${o.aidPrefix}_UPLOAD`, i = `${o.aidPrefix}_REMOVE`, r = `${o.aidPrefix}_UPLOAD_ERROR_TOAST`, s = ce(e, "modelValue"), f = n, u = tn("file-uploader"), v = R(() => u.value?.uploaderCtx.getAPI()), c = B(!1); 1997 let k = !1; 1998 async function E(A) { 1999 c.value = !0; 2000 const ae = A.detail.successEntries[0]; 2001 try { 2002 await ne.init(Ue()); 2003 const fe = ae.fileInfo.imageInfo?.format; 2004 if (!fe) 2005 throw new Error("Uploadcare entry missing imageInfo.format for logo"); 2006 const { objectCdnUrl: C } = await ne.uploadCompanyLogo({ 2007 uuid: ae.uuid, 2008 cdnUrl: ae.cdnUrl, 2009 imageFormat: fe 2010 }); 2011 s.value = C, v.value?.removeAllFiles(), k = !1, f("upload"); 2012 } catch (fe) { 2013 at(fe), $o({ 2014 message: p.companyLogoUploadError, 2015 status: ea.Error, 2016 aid: r 2017 }); 2018 } finally { 2019 c.value = !1; 2020 } 2021 } 2022 function N() { 2023 if (!v.value) { 2024 at(new Error("Logo uploader API not found")); 2025 return; 2026 } 2027 k = !0, v.value.removeAllFiles(), v.value.initFlow(); 2028 } 2029 function y() { 2030 v.value?.removeAllFiles(), k && (k = !1, f("cancel")); 2031 } 2032 function L(A) { 2033 A.stopPropagation(), s.value = void 0; 2034 } 2035 return De(() => { 2036 const A = u.value?.uploaderCtx; 2037 A && (A.addEventListener("done-click", E), A.addEventListener("modal-close", y)); 2038 }), nn(() => { 2039 const A = u.value?.uploaderCtx; 2040 A && (A.removeEventListener("done-click", E), A.removeEventListener("modal-close", y)); 2041 }), t({
2042 openUploader: N 2043 }), (A, ae) => (m(), b(de, null, [ 2044 o.headless ? D("", !0) : (m(), b("div", { 2045 key: 0, 2046 class: H(["logo-upload", { "logo-upload--uploading": c.value }]), 2047 aid: a, 2048 onClick: N 2049 }, [ 2050 l("div", Fl, [ 2051 s.value ? (m(), b("img", { 2052 key: 0, 2053 src: s.value, 2054 alt: d(p).companyLogoAlt, 2055 class: "logo-upload__image" 2056 }, null, 8, Bl)) : (m(), b("img", { 2057 key: 1, 2058 src: d(Pl), 2059 alt: d(p).companyLogoAlt, 2060 class: "logo-upload__placeholder" 2061 }, null, 8, Ml)) 2062 ]), 2063 l("div", Ul, [ 2064 l("span", Dl, _(d(p).companyLogoLabel), 1), 2065 s.value ? (m(), b("span", xl, _(d(p).companyLogoReplaceButton), 1)) : (m(), b("span", Yl, _(d(p).companyLogoUploadButton), 1)) 2066 ]), 2067 s.value ? (m(), b("button", { 2068 key: 0, 2069 type: "button", 2070 class: "logo-upload__remove", 2071 aid: i, 2072 onClick: L 2073 }, [...ae[0] || (ae[0] = [ 2074 l("i", { class: "fa-light fa-xmark" }, null, -1) 2075 ])])) : D("", !0) 2076 ], 2)), 2077 (m(), Y(na, { to: "body" }, [ 2078 x(d(zi), { 2079 ref: "file-uploader", 2080 "ctx-name": o.uploaderCtxName, 2081 "img-only": "true", 2082 "source-list": "local, url, dropbox, gdrive", 2083 "max-local-file-size-bytes": 10485760, 2084 "use-cloud-image-editor": !0 2085 }, null, 8, ["ctx-name"]) 2086 ])) 2087 ], 64)); 2088 } 2089}), Bn = /* @__PURE__ */ ee(Gl, [["__scopeId", "data-v-a7aae2e4"]]), it = { 2090 scrapeSuccess: "onboarding_brand_kit_scrape_success", 2091 scrapeFailed: "onboarding_brand_kit_scrape_failed", 2092 logoUnreachable: "onboarding_brand_kit_logo_unreachable", 2093 interaction: "onboarding_interaction", 2094 stepView: "onboarding_page_view", 2095 stepSkipped: "onboarding_skipped", 2096 onboardingComparison: "onboarding_completed_brand_kit_comparison" 2097}; 2098function Wl(e, t) { 2099 try { 2100 ia({ 2101 eventName: e, 2102 metadata: { 2103 account_id: Se.accountId, 2104 ...Pi(), 2105 ...t 2106 } 2107 }).catch(() => { 2108 }); 2109 } catch { 2110 } 2111} 2112const Oa = { 2113 facebookLink: "facebook", 2114 linkedinLink: "linkedin", 2115 instagramLink: "instagram" 2116}; 2117function Vl(e) { 2118 return `manual_social_${e}`; 2119} 2120function La(e, t) { 2121 const n = Oa[t]; 2122 return e.brandKit?.socials?.[n]?.trim() ?? ""; 2123} 2124function Ca(e, t, n) { 2125 return n.trim() !== La(e, t); 2126} 2127function Mn(e) { 2128 const t = e?.trim() ?? ""; 2129 if (!t) return ""; 2130 const n = t.startsWith("#") ? t : `#${t}`; 2131 if (!/^#[0-9A-Fa-f]{3}([0-9A-Fa-f]{3})?$/.test(n)) return ""; 2132 if (n.length === 4) { 2133 const [, o, a, i] = n; 2134 return `#${o}${o}${a}${a}${i}${i}`.toUpperCase(); 2135 } 2136 return n.toUpperCase(); 2137} 2138function zl(e) { 2139 const t = e.brandKit?.colors ?? []; 2140 return new Set( 2141 t.map((n) => Mn(n)).filter((n) => n.length > 0) 2142 ); 2143} 2144function Kl(e) { 2145 const t = (e.brandKit?.logos?.length ?? 0) > 0, n = e.makeSignatureYours?.logoOptionId === $ && !!e.companyLogo?.trim(); 2146 return { scraped: t, rejected: t && n }; 2147} 2148function Hl(e) { 2149 const t = zl(e), n = t.size > 0; 2150 if (!n) return { scraped: !1, rejected: !1 }; 2151 const o = Mn( 2152 kt(e) ?? "" 2153 ), a = Mn( 2154 e.makeSignatureYours?.brandColor ?? "" 2155 ), i = o.length > 0 && !t.has(o), r = a.length > 0 && !t.has(a); 2156 return { scraped: n, rejected: i || r }; 2157} 2158function bn(e, t) { 2159 const n = La(e, t) !== "", o = e.makeSignatureYours?.[t] ?? ""; 2160 return { 2161 scraped: n, 2162 rejected: n && Ca(e, t, o) 2163 }; 2164} 2165function jl(e) { 2166 return { 2167 logo: Kl(e), 2168 color: Hl(e), 2169 facebook: bn(e, "facebookLink"), 2170 linkedin: bn(e, "linkedinLink"), 2171 instagram: bn(e, "instagramLink") 2172 }; 2173} 2174const Ql = 2048, Jl = /* @__PURE__ */ new Set(["http:", "https:"]), Xl = [ 2175 "127.", 2176 "10.", 2177 "172.16.", 2178 "172.17.", 2179 "172.18.", 2180 "172.19.", 2181 "172.20.", 2182 "172.21.", 2183 "172.22.", 2184 "172.23.", 2185 "172.24.", 2186 "172.25.", 2187 "172.26.", 2188 "172.27.", 2189 "172.28.", 2190 "172.29.", 2191 "172.30.", 2192 "172.31.", 2193 "192.168.", 2194 "169.254." 2195]; 2196function wa(e) { 2197 return /^https?:\/\//i.test(e) ? e : `https://${e}`; 2198} 2199function ql(e) { 2200 const t = e.toLowerCase(); 2201 return !(!t.includes(".") || t.startsWith(".") || t.endsWith(".")); 2202} 2203function Un(e) { 2204 const t = e.trim(); 2205 if (!t || t.length > Ql) return !1; 2206 let n; 2207 try { 2208 n = new URL(wa(t)); 2209 } catch { 2210 return !1; 2211 } 2212 if (!Jl.has(n.protocol)) return !1; 2213 const o = n.hostname.toLowerCase(); 2214 return !(!ql(o) || o === "localhost" || o === "127.0.0.1" || Xl.some( 2215 (i) => o.startsWith(i) 2216 ) || o.endsWith(".local")); 2217} 2218function Zn(e) { 2219 const t = e.trim(); 2220 if (!t) return ""; 2221 try { 2222 return new URL(wa(t)).hostname.toLowerCase().replace(/^www\./, ""); 2223 } catch { 2224 return t.slice(0, 200); 2225 } 2226} 2227function le(e) { 2228 return e ? "true" : "false"; 2229} 2230function Et(e, t) { 2231 const n = e?.[t]; 2232 return typeof n == "string" && n.trim().length > 0; 2233} 2234function ot(e) { 2235 return e?.filter((t) => t.trim().length > 0).length ?? 0; 2236} 2237function Zl(e) { 2238 return e ? Object.values(e).filter((t) => t?.trim()).length : 0; 2239} 2240function $l(e) { 2241 return (e.logos ?? []).reduce((t, n, o) => n.trim() ? e.logoPreviews?.[o]?.trim() ? t : t + 1 : t, 0); 2242} 2243function Ra(e) { 2244 return { 2245 has_response: le(!!e), 2246 logo_count: String(ot(e?.logos)), 2247 logo_preview_count: String(ot(e?.logoPreviews)), 2248 logo_preview_failure_count: String( 2249 e ? $l(e) : 0 2250 ), 2251 color_count: String(ot(e?.colors)), 2252 font_count: String(ot(e?.fonts)), 2253 social_count: String(Zl(e?.socials)) 2254 }; 2255} 2256function eu(e) { 2257 try { 2258 return new URL(e).hostname.toLowerCase(); 2259 } catch { 2260 return "unknown"; 2261 } 2262} 2263function tu(e) { 2264 const t = e.brandKit?.domain?.trim(); 2265 return t || Zn(e.userBasicInfo.companyWebsite ?? ""); 2266} 2267function nu(e) { 2268 const { response: t, durationMs: n } = e, o = t.socials; 2269 return { 2270 url: t.domain, 2271 color: le((t.colors?.length ?? 0) > 0), 2272 logo: le((t.logos?.length ?? 0) > 0), 2273 address: le(!!t.address?.trim()), 2274 phone: le(!!t.phone?.trim()), 2275 facebook: le(Et(o, "facebook")), 2276 instagram: le(Et(o, "instagram")), 2277 x: le(Et(o, "x")), 2278 linkedin: le(Et(o, "linkedin")), 2279 youtube: le(Et(o, "youtube")), 2280 time_to_success_s: String(Math.round(n / 1e3)), 2281 from_cache: le(t.fromCache), 2282 whitelist_font: le(ol(t.fonts ?? [])), 2283 ...Ra(t) 2284 }; 2285} 2286function ou(e) { 2287 const { failure: t } = e; 2288 return { 2289 url: Zn(e.websiteUrl), 2290 reason: t.reason, 2291 error_code: t.errorCode, 2292 stage: t.stage, 2293 upstream_status: String(t.upstreamStatus ?? 0), 2294 gateway_status: String(t.gatewayStatus ?? 0), 2295 request_sent: le(e.requestSent ?? !0), 2296 time_to_failure_s: String(Math.round(e.durationMs / 1e3)), 2297 from_cache: le(e.fromCache ?? !1), 2298 ...Ra(e.response) 2299 }; 2300} 2301function au(e) { 2302 return { 2303 url: Zn(e.websiteUrl), 2304 logo_host: eu(e.logoUrl), 2305 logo_slot: String(e.slot) 2306 }; 2307} 2308function iu(e) { 2309 return { 2310 step: e.step, 2311 field: e.field 2312 }; 2313} 2314function ru(e) { 2315 return { 2316 step: e.step 2317 }; 2318} 2319function su(e) { 2320 return { 2321 step: e.step 2322 }; 2323} 2324function lu(e) { 2325 const { data: t } = e, n = jl(t); 2326 return { 2327 url: tu(t), 2328 logo_rejected: le(n.logo.rejected), 2329 color_rejected: le(n.color.rejected), 2330 facebook_rejected: le(n.facebook.rejected), 2331 linkedin_rejected: le(n.linkedin.rejected), 2332 instagram_rejected: le(n.instagram.rejected) 2333 }; 2334} 2335function uu(e) { 2336 const t = ot(e.logos) === 0, n = ot(e.colors) === 0, o = ot(e.fonts) === 0, a = !e.address?.trim(), i = !e.phone?.trim(), r = !e.socials || Object.values(e.socials).every((s) => !s?.trim()); 2337 return t && n && o && a && i && r; 2338} 2339function cu(e) { 2340 rt( 2341 it.scrapeSuccess, 2342 () => nu(e) 2343 ); 2344} 2345function vn(e) { 2346 rt( 2347 it.scrapeFailed, 2348 () => ou(e) 2349 ); 2350} 2351function du(e) { 2352 rt( 2353 it.logoUnreachable, 2354 () => au(e) 2355 ); 2356} 2357function mu(e) { 2358 rt( 2359 it.interaction, 2360 () => iu(e) 2361 ); 2362} 2363function fu(e) { 2364 rt( 2365 it.stepView, 2366 () => ru(e) 2367 ); 2368} 2369function pu(e) { 2370 rt( 2371 it.stepSkipped, 2372 () => su(e) 2373 ); 2374} 2375function gu(e) { 2376 xe(e.data) && e.data.makeSignatureYours && (e.data.brandKitStepSkipped || rt( 2377 it.onboardingComparison, 2378 () => lu(e) 2379 )); 2380} 2381function rt(e, t) { 2382 try { 2383 Wl(e, t()); 2384 } catch { 2385 } 2386} 2387const bu = "ws1/brand-kit-gateway"; 2388var pe; 2389(function(e) { 2390 e[e.EXTRACT_BRAND_KIT_FAILURE_CODE_UNSPECIFIED = 0] = "EXTRACT_BRAND_KIT_FAILURE_CODE_UNSPECIFIED", e[e.INVALID_URL = 1] = "INVALID_URL", e[e.FIRECRAWL_NOT_CONFIGURED = 2] = "FIRECRAWL_NOT_CONFIGURED", e[e.FIRECRAWL_NETWORK_E
2390RROR = 3] = "FIRECRAWL_NETWORK_ERROR", e[e.FIRECRAWL_INVALID_RESPONSE = 4] = "FIRECRAWL_INVALID_RESPONSE", e[e.FIRECRAWL_UNAUTHORIZED = 5] = "FIRECRAWL_UNAUTHORIZED", e[e.FIRECRAWL_RATE_LIMITED = 6] = "FIRECRAWL_RATE_LIMITED", e[e.FIRECRAWL_CLIENT_ERROR = 7] = "FIRECRAWL_CLIENT_ERROR", e[e.FIRECRAWL_SERVER_ERROR = 8] = "FIRECRAWL_SERVER_ERROR", e[e.FIRECRAWL_FAILED = 9] = "FIRECRAWL_FAILED", e[e.WEBSITE_DNS_FAILURE = 10] = "WEBSITE_DNS_FAILURE", e[e.WEBSITE_SSL_FAILURE = 11] = "WEBSITE_SSL_FAILURE", e[e.WEBSITE_TIMEOUT = 12] = "WEBSITE_TIMEOUT", e[e.WEBSITE_UNREACHABLE = 13] = "WEBSITE_UNREACHABLE", e[e.CACHE_READ_FAILED = 14] = "CACHE_READ_FAILED", e[e.CACHE_WRITE_FAILED = 15] = "CACHE_WRITE_FAILED"; 2391})(pe || (pe = {})); 2392const vu = [ 2393 "extractBrandKit", 2394 "checkWebsiteReachability" 2395], Dn = je({ 2396 baseRoute: bu, 2397 methods: vu, 2398 sdkPackageName: "@msl/brand-kit-gateway-sdk", 2399 requireAuth: !0 2400}), _e = "api_error", Ee = "firecrawl", wt = "website_unreachable", _u = { 2401 [pe.INVALID_URL]: { 2402 reason: _e, 2403 errorCode: "invalid_url", 2404 stage: "gateway" 2405 }, 2406 [pe.FIRECRAWL_NOT_CONFIGURED]: { 2407 reason: _e, 2408 errorCode: "firecrawl_not_configured", 2409 stage: Ee 2410 }, 2411 [pe.FIRECRAWL_NETWORK_ERROR]: { 2412 reason: _e, 2413 errorCode: "firecrawl_network_error", 2414 stage: Ee 2415 }, 2416 [pe.FIRECRAWL_INVALID_RESPONSE]: { 2417 reason: _e, 2418 errorCode: "firecrawl_invalid_response", 2419 stage: Ee 2420 }, 2421 [pe.FIRECRAWL_UNAUTHORIZED]: { 2422 reason: _e, 2423 errorCode: "firecrawl_unauthorized", 2424 stage: Ee 2425 }, 2426 [pe.FIRECRAWL_RATE_LIMITED]: { 2427 reason: _e, 2428 errorCode: "firecrawl_rate_limited", 2429 stage: Ee 2430 }, 2431 [pe.FIRECRAWL_CLIENT_ERROR]: { 2432 reason: _e, 2433 errorCode: "firecrawl_client_error", 2434 stage: Ee 2435 }, 2436 [pe.FIRECRAWL_SERVER_ERROR]: { 2437 reason: _e, 2438 errorCode: "firecrawl_server_error", 2439 stage: Ee 2440 }, 2441 [pe.FIRECRAWL_FAILED]: { 2442 reason: _e, 2443 errorCode: "firecrawl_failed", 2444 stage: Ee 2445 }, 2446 [pe.WEBSITE_DNS_FAILURE]: { 2447 reason: wt, 2448 errorCode: "website_dns_failure", 2449 stage: Ee 2450 }, 2451 [pe.WEBSITE_SSL_FAILURE]: { 2452 reason: wt, 2453 errorCode: "website_ssl_failure", 2454 stage: Ee 2455 }, 2456 [pe.WEBSITE_TIMEOUT]: { 2457 reason: wt, 2458 errorCode: "website_timeout", 2459 stage: Ee 2460 }, 2461 [pe.WEBSITE_UNREACHABLE]: { 2462 reason: wt, 2463 errorCode: "website_unreachable", 2464 stage: Ee 2465 }, 2466 [pe.CACHE_READ_FAILED]: { 2467 reason: _e, 2468 errorCode: "cache_read_failed", 2469 stage: "cache" 2470 }, 2471 [pe.CACHE_WRITE_FAILED]: { 2472 reason: _e, 2473 errorCode: "cache_write_failed", 2474 stage: "cache" 2475 } 2476}, hu = [ 2477 "enotfound", 2478 "eai_again", 2479 "no such host", 2480 "name not resolved", 2481 "err_name_not_resolved", 2482 "dns" 2483], ku = ["certificate", "ssl", "cert_"], yu = ["timeout", "timed out", "etimedout"], Su = [ 2484 "econnrefused", 2485 "unreachable", 2486 "net::err", 2487 "navigation failed", 2488 "failed to scrape" 2489]; 2490function Iu(e) { 2491 return e instanceof Error ? e.message.trim() : typeof e == "string" ? e.trim() : ""; 2492} 2493function Vt(e, t) { 2494 return t.some((n) => e.includes(n)); 2495} 2496function $e(e, t) { 2497 return { ...e, ...t }; 2498} 2499function Eu(e) { 2500 const t = e.match(/\bfailed:\s*(\d{3})\b/i)?.[1]; 2501 return t ? Number(t) : void 0; 2502} 2503const Au = { 2504 401: "gateway_unauthorized", 2505 403: "gateway_forbidden", 2506 408: "gateway_timeout", 2507 429: "gateway_rate_limited", 2508 504: "gateway_timeout" 2509}, Ou = "gateway_error"; 2510function Lu(e) { 2511 return Au[e] ?? Ou; 2512} 2513const Cu = { 2514 reason: _e, 2515 errorCode: "client_network_error", 2516 stage: "client" 2517}, wu = { 2518 reason: _e, 2519 errorCode: "gateway_error", 2520 stage: "gateway" 2521}; 2522function Ru(e, t) { 2523 const n = _u[e] ?? { 2524 reason: "unknown", 2525 errorCode: "unknown", 2526 stage: "gateway" 2527 }; 2528 return $e(n, { upstreamStatus: t }); 2529} 2530function Tu(e) { 2531 const t = Iu(e); 2532 if (!t) 2533 return $e({ 2534 reason: "unknown", 2535 errorCode: "unknown", 2536 stage: "client" 2537 }); 2538 const n = t.toLowerCase(); 2539 if (n.includes("sdk not initialized")) 2540 return $e({ 2541 reason: _e, 2542 errorCode: "sdk_not_initialized", 2543 stage: "client" 2544 }); 2545 const o = Eu(t); 2546 if (o) 2547 return $e( 2548 { 2549 reason: _e, 2550 errorCode: Lu(o), 2551 stage: "gateway" 2552 }, 2553 { gatewayStatus: o } 2554 ); 2555 const a = Vt(n, hu) ? "website_dns_failure" : Vt(n, ku) ? "website_ssl_failure" : Vt(n, Su) ? "website_unreachable" : void 0; 2556 if (a) 2557 return $e({ 2558 reason: wt, 2559 errorCode: a, 2560 stage: Ee 2561 }); 2562 if (Vt(n, yu)) 2563 return $e({ 2564 reason: _e, 2565 errorCode: "client_timeout", 2566 stage: "client" 2567 }); 2568 const i = n.includes("failed to fetch") || n.includes("networkerror") || n === "
2568network"; 2569 return $e( 2570 i ? Cu : wu 2571 ); 2572} 2573function Nu() { 2574 return {}; 2575} 2576function Pu(e) { 2577 return e.makeSignatureYoursManuallyEdited || (e.makeSignatureYoursManuallyEdited = Nu()), e.makeSignatureYoursManuallyEdited; 2578} 2579function Ta(e, t) { 2580 return e.makeSignatureYoursManuallyEdited?.[t] === !0; 2581} 2582function Re(e, t) { 2583 Pu(e)[t] = !0; 2584} 2585function Fu(e) { 2586 const t = e.trim(); 2587 return t ? (t.startsWith("#") ? t : `#${t}`).toUpperCase() : ""; 2588} 2589function Bu(e) { 2590 const t = e.payload?.company, n = e.styles?.themeColor?.trim(), o = {}, a = t?.logo?.trim(); 2591 a && (o.companyLogo = a), n && (o.brandColor = Fu(n)); 2592 const i = t?.facebookLink?.trim(); 2593 i && (o.facebookLink = i); 2594 const r = t?.linkedinLink?.trim(); 2595 r && (o.linkedinLink = r); 2596 const s = t?.instagramLink?.trim(); 2597 return s && (o.instagramLink = s), o; 2598} 2599function Mu(e) { 2600 return !!(e.companyLogo || e.brandColor || e.facebookLink || e.linkedinLink || e.instagramLink); 2601} 2602function Uu(e) { 2603 if (!e) return; 2604 const t = Na(e); 2605 return Object.keys(t).length > 0 ? t : void 0; 2606} 2607function Na(e) { 2608 const t = {}, n = e.companyLogo?.trim(); 2609 n && (t.companyLogo = n); 2610 const o = e.brandColor?.trim(); 2611 o && (t.brandColor = o); 2612 const a = e.facebookLink?.trim(); 2613 a && (t.facebookLink = a); 2614 const i = e.linkedinLink?.trim(); 2615 i && (t.linkedinLink = i); 2616 const r = e.instagramLink?.trim(); 2617 return r && (t.instagramLink = r), t; 2618} 2619function Du(e, t) { 2620 const n = Na(t); 2621 e.makeSignatureYoursFromGenerator = { 2622 ...e.makeSignatureYoursFromGenerator, 2623 ...n 2624 }; 2625} 2626function xu(e, t) { 2627 return t ? !e.companyLogo?.trim() : !0; 2628} 2629function Yu(e, t) { 2630 return t ? !e.brandColor?.trim() : !0; 2631} 2632function _n(e, t, n) { 2633 return n ? !e[t]?.trim() : !0; 2634} 2635function Gu(e, t, n = {}) { 2636 const o = n.respectExistingValues ?? !0; 2637 if (!Mu(t)) return !1; 2638 Du(e, t), e.makeSignatureYours || (e.makeSignatureYours = ht()); 2639 const a = e.makeSignatureYours; 2640 let i = !1; 2641 return t.companyLogo && xu(e, o) && (e.companyLogo = t.companyLogo, Xn(e) && (a.logoOptionId = $), i = !0), t.brandColor && Yu(a, o) && (a.brandColor = t.brandColor, qn(e) && (a.brandColorOptionId = ye), i = !0), t.facebookLink && _n(a, "facebookLink", o) && (a.facebookLink = t.facebookLink, i = !0), t.linkedinLink && _n(a, "linkedinLink", o) && (a.linkedinLink = t.linkedinLink, i = !0), t.instagramLink && _n(a, "instagramLink", o) && (a.instagramLink = t.instagramLink, i = !0), i; 2642} 2643const $n = "ws_onboarding_make_signature_yours"; 2644function Wu(e) { 2645 return typeof e == "object" && e !== null && !("makeSignatureYours" in e) && ("logoOptionId" in e || "brandColorOptionId" in e || "customLogoUrl" in e || "brandColor" in e || "facebookLink" in e || "linkedinLink" in e || "instagramLink" in e); 2646} 2647function Ro(e) { 2648 if (!e) return; 2649 const { customLogoUrl: t, ...n } = e; 2650 return { 2651 ...ht(), 2652 ...n 2653 }; 2654} 2655function To(e) { 2656 return e?.customLogoUrl?.trim() || void 0; 2657} 2658function Be(e, t, n) { 2659 return n in e ? e[n] : t?.[n]; 2660} 2661function Pa() { 2662 try { 2663 const e = sessionStorage.getItem($n); 2664 if (!e) return; 2665 const t = JSON.parse(e); 2666 if (Wu(t)) 2667 return { 2668 companyLogo: To(t), 2669 makeSignatureYours: Ro(t) 2670 }; 2671 const n = t, o = Ro(n.makeSignatureYours); 2672 return { 2673 companyLogo: n.companyLogo?.trim() || To(n.makeSignatureYours), 2674 makeSignatureYours: o, 2675 brandKit: n.brandKit, 2676 brandKitFetchStatus: n.brandKitFetchStatus, 2677 brandKitFetchStartedAt: n.brandKitFetchStartedAt, 2678 brandKitLogoOptions: n.brandKitLogoOptions, 2679 brandKitBrandColorOptions: n.brandKitBrandColorOptions, 2680 brandKitFetchedForWebsiteUrl: n.brandKitFetchedForWebsiteUrl, 2681 makeSignatureYoursManuallyEdited: n.makeSignatureYoursManuallyEdited, 2682 makeSignatureYoursFromGenerator: Uu( 2683 n.makeSignatureYoursFromGenerator 2684 ) 2685 }; 2686 } catch { 2687 return; 2688 } 2689} 2690function Fa(e) { 2691 const t = Pa(); 2692 sessionStorage.setItem( 2693 $n, 2694 JSON.stringify({ 2695 companyLogo: Be(e, t, "companyLogo"), 2696 makeSignatureYours: Be( 2697 e, 2698 t, 2699 "makeSignatureYours" 2700 ), 2701 brandKit: Be(e, t, "brandKit"), 2702 brandKitFetchStatus: Be( 2703 e, 2704 t, 2705 "brandKitFetchStatus" 2706 ), 2707 brandKitFetchStartedAt: Be( 2708 e, 2709 t, 2710 "brandKitFetchStartedAt" 2711 ), 2712 brandKitLogoOptions: Be( 2713 e, 2714 t, 2715 "brandKitLogoOptions" 2716 ), 2717 brandKitBrandColorOptions: Be( 2718 e, 2719 t, 2720 "brandKitBrandColorOptions" 2721 ), 2722 brandKitFetchedForWebsiteUrl: Be( 2723 e, 2724 t, 2725 "brandKitFetchedForWebsiteUrl" 2726 ), 2727 makeSignatureYoursManuallyEdited: Be( 2728 e, 2729 t, 2730 "makeSignatureYoursManuallyEdited" 2731 ), 2732 makeSignatureYoursFromGenerator: Be( 2733 e, 2734 t, 2735 "makeSignatureYoursFromGenerator" 2736 ) 2737 }) 2738 ); 2739} 2740function Ba() { 2741 sessionStorage.removeItem($n); 2742} 2743function Ma(e) { 2744 const t = e.makeSignatureYours; 2745 return t ? t.logoOptionId === $ && !!e.companyLogo?.trim() : !1; 2746} 2747function Ua(e) { 2748 const t = Ma(e); 2749 e.makeSignatureYours || (e.makeSignatureYours = ht()); 2750 const n = e.makeSignatureYours; 2751 t ? e.makeSignatureYoursManuallyEdited = { 2752 logoOptionId: !0, 2753 companyLogo: !0 2754 } : (n.logoOptionId = null, e.companyLogo = void 0, e.makeSignatureYoursManuallyEdited = void 0), n.brandColor = "", n.brandColorOptionId = null, n.instagramLink = "", n.facebookLink = "", n.linkedinLink = "", e.brandKit = void 0, e.brandKitLogoOptions = void 0, e.brandKitBrandColorOptions = void 0, e.brandKitFetchedForWebsiteUrl = void 0, e.brandKitFetchStartedAt = void 0; 2755} 2756function Da(e) { 2757 e.companyLogo = void 0, e.makeSignatureYours = ht(), e.makeSignatureYoursManuallyEdited = void 0, e.brandKit = void 0, e.brandKitFetchStatus = void 0, e.brandKitFetchStartedAt = void 0, e.brandKitLogoOptions = void 0, e.brandKitBrandColorOptions = void 0, e.brandKitFetchedForWebsiteUrl = void 0, Ba(); 2758} 2759function Vu(e) { 2760 Da(e), e.makeSignatureYoursFromGenerator = void 0; 2761} 2762function zu(e, t) { 2763 const n = []; 2764 let o = 0;
2765 return (e ?? []).forEach((a, i) => { 2766 const r = a?.trim(); 2767 if (!r) return; 2768 o += 1; 2769 const s = t?.[i]?.trim() ?? "", f = Je(r) ? r : void 0; 2770 n.push({ 2771 id: `${_t}${i}`, 2772 label: `Logo option ${o}`, 2773 previewSrc: s, 2774 previewInlineSvg: f, 2775 rawLogo: r 2776 }); 2777 }), n.length === 0 ? [Zt()] : [...n, Zt()]; 2778} 2779function Ku(e) { 2780 const t = e.makeSignatureYours; 2781 return t ? Ta(e, "brandColorOptionId") ? !0 : t.brandColorOptionId === ye && !!t.brandColor?.trim() : !1; 2782} 2783function hn(e, t, n) { 2784 if (Ta(e, t)) return; 2785 const o = e.makeSignatureYours; 2786 if (!o) return; 2787 const a = n?.trim(); 2788 if (!a) return; 2789 o[t]?.trim() || (o[t] = a); 2790} 2791function Hu(e) { 2792 if (Ku(e)) return; 2793 const t = e.makeSignatureYours; 2794 if (!t) return; 2795 const n = e.brandKitBrandColorOptions ?? [], o = n.find( 2796 (a) => a.id.startsWith(jn) 2797 ) ?? n.find((a) => a.id !== ye); 2798 o && (t.brandColorOptionId = o.id, t.brandColor = ""); 2799} 2800function ju(e) { 2801 if (Ma(e)) return; 2802 const t = e.makeSignatureYours; 2803 if (!t) return; 2804 const o = (e.brandKitLogoOptions ?? []).find( 2805 (a) => a.id.startsWith(_t) 2806 ); 2807 o && (t.logoOptionId = o.id, e.companyLogo = void 0); 2808} 2809function xa(e) { 2810 if (e.brandKitFetchStatus !== "done" || !e.brandKit) return !1; 2811 e.makeSignatureYours || (e.makeSignatureYours = ht()); 2812 const t = e.brandKit; 2813 return e.brandKitLogoOptions = zu( 2814 t.logos, 2815 t.logoPreviews
2816 ), e.brandKitBrandColorOptions = Pn( 2817 t.colors 2818 ), ju(e), Hu(e), hn(e, "instagramLink", t.socials.instagram), hn(e, "facebookLink", t.socials.facebook), hn(e, "linkedinLink", t.socials.linkedin), !0; 2819} 2820function Ya(e) { 2821 return xe(e) ? e.brandKitFetchStatus === "loading" : !1; 2822} 2823let kn; 2824async function Ga() { 2825 kn || (kn = Dn.init(Ue())), await kn; 2826} 2827let Wa = 0; 2828const eo = /* @__PURE__ */ new Set(); 2829function No(e, t) { 2830 eo.add(t), e.brandKitFetchStatus = "error", gt(e); 2831} 2832function sn(e) { 2833 const t = e.userBasicInfo.companyWebsite?.trim(); 2834 if (!(!t || !Un(t))) 2835 return t; 2836} 2837function to(e, t) { 2838 return e.brandKitFetchedForWebsiteUrl?.trim() !== t; 2839} 2840function Qu(e, t) { 2841 return e.brandKitFetchedForWebsiteUrl?.trim() === t && e.brandKitFetchStatus === "done" && !!e.brandKit; 2842} 2843function Ju(e) { 2844 const t = sn(e); 2845 if (!t) return !1; 2846 const n = to(e, t); 2847 return !(e.brandKitFetchStatus === "loading" && !n || !n && Qu(e, t) || !n && !e.brandKit && eo.has(t)); 2848} 2849function gt(e) { 2850 Fa({ 2851 companyLogo: e.companyLogo, 2852 makeSignatureYours: e.makeSignatureYours, 2853 brandKit: e.brandKit, 2854 brandKitFetchStatus: e.brandKitFetchStatus, 2855 brandKitFetchStartedAt: e.brandKitFetchStartedAt, 2856 brandKitLogoOptions: e.brandKitLogoOptions, 2857 brandKitBrandColorOptions: e.brandKitBrandColorOptions, 2858 brandKitFetchedForWebsiteUrl: e.brandKitFetchedForWebsiteUrl, 2859 makeSignatureYoursManuallyEdited: e.makeSignatureYoursManuallyEdited, 2860 makeSignatureYoursFromGenerator: e.makeSignatureYoursFromGenerator 2861 }); 2862} 2863function zt(e, t, n) { 2864 return n === Wa && sn(e) === t; 2865} 2866function Va(e) { 2867 if (!xe(e)) return !1; 2868 const t = sn(e); 2869 return !t || !to(e, t) ? !1 : (Ua(e), gt(e), !0); 2870} 2871function no(e) { 2872 if (!xe(e)) return; 2873 const t = sn(e); 2874 if (!t) { 2875 Da(e); 2876 return; 2877 } 2878 if (!Ju(e)) return; 2879 to(e, t) && (eo.clear(), Ua(e), gt(e)); 2880 const o = ++Wa; 2881 e.brandKitFetchStatus = "loading", e.brandKitFetchStartedAt = Date.now(), e.brandKitFetchedForWebsiteUrl = t, Xu(e, t, o); 2882} 2883async function Xu(e, t, n) { 2884 const o = e.brandKitFetchStartedAt ?? Date.now(); 2885 try { 2886 await Ga(); 2887 let a; 2888 try { 2889 a = await Dn.checkWebsiteReachability({ 2890 websiteUrl: t 2891 }); 2892 } catch (s) { 2893 if (console.error("brand kit reachability check failed", s), !zt(e, t, n)) return; 2894 No(e, t); 2895 return; 2896 } 2897 if (!zt(e, t, n)) return; 2898 if (!a.reachable) { 2899 console.debug("brand kit website unreachable", { 2900 websiteUrl: t, 2901 failureCode: a.failureCode 2902 }), No(e, t); 2903 return; 2904 } 2905 const i = await Dn.extractBrandKit({ websiteUrl: t }); 2906 if (!zt(e, t, n)) return; 2907 const r = Date.now() - o; 2908 if (i.failureCode !== void 0) { 2909 vn({ 2910 websiteUrl: t, 2911 failure: Ru( 2912 i.failureCode, 2913 i.upstreamStatus 2914 ), 2915 durationMs: r 2916 }), e.brandKitFetchStatus = "error", gt(e); 2917 return; 2918 } 2919 uu(i) ? vn({ 2920 websiteUrl: t, 2921 failure: { 2922 reason: "empty_result", 2923 errorCode: "empty_result", 2924 stage: "result" 2925 }, 2926 durationMs: r, 2927 response: i, 2928 fromCache: i.fromCache 2929 }) : cu({ response: i, durationMs: r }), e.brandKit = i, e.brandKitFetchStatus = "done", e.brandKitFetchedForWebsiteUrl = t, xa(e), gt(e); 2930 } catch (a) { 2931 if (console.error("brand kit fetch error.", a), !zt(e, t, n)) return; 2932 vn({ 2933 websiteUrl: t, 2934 failure: Tu(a), 2935 durationMs: Date.now() - o 2936 }), e.brandKitFetchStatus = "error", gt(e); 2937 } 2938} 2939const qu = { class: "onboarding-sql-step" }, Zu = { class: "text-3xl font-semibold form-header" }, $u = ["aria-label"], ec = /* @__PURE__ */ j({ 2940 __name: "tell-us-about-you", 2941 props: { 2942 modelValue: { 2943 required: !0 2944 }, 2945 modelModifiers: {} 2946 }, 2947 emits: /* @__PURE__ */ me(["enableToContinue", "logoUploaded"], ["update:modelValue"]), 2948 setup(e, { emit: t }) { 2949 const n = t, o = R( 2950 () => vt(i.value.signupOrigin) 2951 ), a = R( 2952 () => xe(i.value) 2953 ), i = ce(e, "modelValue"), r = B(!1), s = B(!1), f = B(!1), u = B(!1), v = B(!1), c = R(() => !fo(i.value.userBasicInfo.userName || "")); 2954 X( 2955 () => i.value.userBasicInfo.userName, 2956 (y) => { 2957 y && !r.value && (oe({ eventName: "user_started_typing_name" }), r.value = !0); 2958 } 2959 ), X( 2960 () => i.value.userBasicInfo.userTitle, 2961 (y) => { 2962 y && !s.value && (oe({ eventName: "user_started_typing_title" }), s.value = !0); 2963 } 2964 ), X( 2965 () => i.value.userBasicInfo.userMobile, 2966 (y) => { 2967 y && !f.value && (oe({ eventName: "user_started_typing_mobile" }), f.value = !0); 2968 } 2969 ), X( 2970 () => i.value.userBasicInfo.companyName, 2971 (y) => { 2972 y && !u.value && (oe({ eventName: "user_started_typing_company_name" }), u.value = !0); 2973 } 2974 ), X( 2975 () => i.value.userBasicInfo.companyWebsite, 2976 (y) => { 2977 y && !v.value && (oe({ eventName: "user_started_typing_company_website" }), v.value = !0); 2978 } 2979 ), De(() => { 2980 oe({ eventName: "onboarding_sql_step_view" }), on( 2981 i.value, 2982 "tellUsAboutYou", 2983 c.value 2984 ), n("enableToContinue", c.value); 2985 }), X(c, (y) => { 2986 n("enableToContinue", y); 2987 }); 2988 function k(y) { 2989 return fo(y) ? p.userNameRequired : !0; 2990 } 2991 function E(y) { 2992 const L = y?.trim(); 2993 return L ? Un(L) ? !0 : p.companyWebsiteInvalid : !0; 2994 } 2995 function N() { 2996 const y = i.value.userBasicInfo.companyWebsite?.trim() ?? ""; 2997 y && !Un(y) || no(i.value); 2998 } 2999 return (y, L) => (m(), b("div", qu, [ 3000 l("div", Zu, _(d(p).tellUsAboutYourFormHeader), 1), 3001 x(d(Qe), {
3002 modelValue: i.value.userBasicInfo.userName, 3003 "onUpdate:modelValue": L[0] || (L[0] = (A) => i.value.userBasicInfo.userName = A), 3004 modelModifiers: { trim: !0 }, 3005 aid: "ONBOARDING_USER_NAME", 3006 size: "lg", 3007 class: "onboarding-sql-step__required-input", 3008 label: d(p).userNameLabel, 3009 rules: [k] 3010 }, null, 8, ["modelValue", "label", "rules"]), 3011 x(d(Qe), { 3012 modelValue: i.value.userBasicInfo.userTitle, 3013 "onUpdate:modelValue": L[1] || (L[1] = (A) => i.value.userBasicInfo.userTitle = A), 3014 modelModifiers: { trim: !0 }, 3015 aid: "ONBOARDING_USER_TITLE", 3016 size: "lg", 3017 label: d(p).userTitleLabel 3018 }, null, 8, ["modelValue", "label"]), 3019 x(d(Qe), { 3020 modelValue: i.value.userBasicInfo.companyName, 3021 "onUpdate:modelValue": L[2] || (L[2] = (A) => i.value.userBasicInfo.companyName = A), 3022 modelModifiers: { trim: !0 }, 3023 aid: "ONBOARDING_USER_COMPANY_NAME", 3024 size: "lg", 3025 label: d(p).companyNameLabel 3026 }, null, 8, ["modelValue", "label"]), 3027 a.value ? (m(), Y(d(Qe), { 3028 key: 0, 3029 modelValue: i.value.userBasicInfo.companyWebsite, 3030 "onUpdate:modelValue": L[3] || (L[3] = (A) => i.value.userBasicInfo.companyWebsite = A), 3031 modelModifiers: { trim: !0 }, 3032 aid: "ONBOARDING_USER_COMPANY_WEBSITE", 3033 size: "lg", 3034 class: "onboarding-sql-step__website-input", 3035 label: d(p).companyWebsiteLabel, 3036 rules: [E], 3037 onBlur: N 3038 }, { 3039 append: Q(() => [ 3040 l("i", { 3041 class: "fa-solid fa-sparkles text-lg", 3042 "aria-label": d(p).companyWebsiteAiAriaLabel 3043 }, [ 3044 x(d(tt), { 3045 aid: "ONBOARDING_COMPANY_WEBSITE_AI_TOOLTIP", 3046 text: d(p).companyWebsiteAiAriaLabel 3047 }, { 3048 default: Q(() => [ 3049 q(_(d(p).companyWebsiteAiAriaLabel), 1) 3050 ]), 3051 _: 1 3052 }, 8, ["text"]) 3053 ], 8, $u) 3054 ]), 3055 _: 1 3056 }, 8, ["modelValue", "label", "rules"])) : D("", !0), 3057 x(d(Qe), { 3058 modelValue: i.value.userBasicInfo.userMobile, 3059 "onUpdate:modelValue": L[4] || (L[4] = (A) => i.value.userBasicInfo.userMobile = A), 3060 modelModifiers: { trim: !0 }, 3061 aid: "ONBOARDING_USER_MOBILE", 3062 size: "lg", 3063 label: d(p).userMobileLabel 3064 }, null, 8, ["modelValue", "label"]), 3065 a.value ? D("", !0) : (m(), Y(d(Qe), { 3066 key: 1, 3067 modelValue: i.value.userBasicInfo.companyWebsite, 3068 "onUpdate:modelValue": L[5] || (L[5] = (A) => i.value.userBasicInfo.companyWebsite = A), 3069 modelModifiers: { trim: !0 }, 3070 aid: "ONBOARDING_USER_COMPANY_WEBSITE", 3071 size: "lg", 3072 label: d(p).companyWebsiteLabel, 3073 rules: [E], 3074 onBlur: N 3075 }, null, 8, ["modelValue", "label", "rules"])), 3076 o.value ? (m(), Y(Bn, { 3077 key: 2, 3078 modelValue: i.value.companyLogo, 3079 "onUpdate:modelValue": L[6] || (L[6] = (A) => i.value.companyLogo = A), 3080 "aid-prefix": "ONBOARDING_GENERATOR_COMPANY_LOGO", 3081 onUpload: L[7] || (L[7] = (A) => n("logoUploaded")) 3082 }, null, 8, ["modelValue"])) : D("", !0) 3083 ])); 3084 } 3085}), tc = /* @__PURE__ */ ee(ec, [["__scopeId", "data-v-90e7609b"]]), nc = { class: "text-3xl font-semibold form-header" }, oc = { class: "benefits-container" }, ac = { class: "text-base benefits-text" }, ic = /* @__PURE__ */ j({ 3086 __name: "book-a-demo-or-skip", 3087 props: { 3088 modelValue: { 3089 required: !0 3090 }, 3091 modelModifiers: {} 3092 }, 3093 emits: /* @__PURE__ */ me(["enableToContinue"], ["update:modelValue"]), 3094 setup(e, { emit: t }) { 3095 const n = t, o = ce(e, "modelValue"), a = B([ 3096 p.demoBenefitsExploreBestSetup, 3097 p.demoBenefitsIntegrateWithTools, 3098 p.demoBenefitsChooseTheRightPlan 3099 ]), i = R(() => o.value.workspaceInfo.emailPlatform !== void 0 && o.value.workspaceInfo.emailPlatform in Oe); 3100 return De(() => { 3101 n("enableToContinue", i.value); 3102 }), X(i, (r) => { 3103 n("enableToContinue", r); 3104 }), (r, s) => (m(), b(de, null, [ 3105 l("div", nc, _(d(p).bookADemoHeader), 1), 3106 l("div", oc, [ 3107 (m(!0), b(de, null, Pe(a.value, (f, u) => (m(), b("div", { 3108 key: u, 3109 class: "benefits-list" 3110 }, [ 3111 s[0] || (s[0] = l("i", { class: "fa-solid fa-circle-check circle-check-blue" }, null, -1)), 3112 l("span", ac, _(f), 1) 3113 ]))), 128)) 3114 ]) 3115 ], 64)); 3116 } 3117}), rc = /* @__PURE__ */ ee(ic, [["__scopeId", "data-v-9d097e4b"]]), sc = ["aid"], lc = ["aid", "onClick"], xn = /* @__PURE__ */ j({ 3118 __name: "radio-button", 3119 props: /* @__PURE__ */ me({ 3120 options: { default: () => [] }, 3121 aid: {}, 3122 optionWidth: {}, 3123 disabled: { type: Boolean, default: !1 } 3124 }, { 3125 modelValue: { type: [String, Number, Boolean] }, 3126 modelModifiers: {} 3127 }), 3128 emits: ["update:modelValue"], 3129 setup(e) { 3130 const t = e, n = ce(e, "modelValue"); 3131 function o(a) { 3132 t.disabled || (n.value = a.value); 3133 } 3134 return (a, i) => (m(), b("div", { 3135 aid: e.aid, 3136 class: "chips-group" 3137 }, [ 3138 (m(!0), b(de, null, Pe(e.options, (r, s) => (m(), b("div", { 3139 key: `${s}${e.aid}`, 3140 class: H([ 3141 "text-md", 3142 "font-normal", 3143 "chip", 3144 { selected: n.value == r.value }, 3145 { disabled: e.disabled } 3146 ]), 3147 style: Le({ width: e.optionWidth }), 3148 aid: `${e.aid}_${s}`, 3149 onClick: (f) => o(r) 3150 }, [ 3151 l("span", { 3152 class: H(r.className) 3153 }, _(r.label), 3) 3154 ], 14, lc))), 128)) 3155 ], 8, sc)); 3156 } 3157}), uc = { class: "text-3xl font-semibold form-header" }, cc = { class: "text-3xl font-semibold form-header" }, dc = /* @__PURE__ */ j({ 3158 __name: "select-email-platform", 3159 props: { 3160 modelValue: { 3161 required: !0 3162 }, 3163 modelModifiers: {} 3164 }, 3165 emits: /* @__PURE__ */ me(["enableToContinue"], ["update:modelValue"]), 3166 setup(e, { emit: t }) { 3167 const n = t, o = ce(e, "modelValue"), a = B([ 3168 { 3169 value: Oe.MICROSOFT, 3170 label: p.emailPlatformOptionMicrosoft, 3171 className: "microsoft" 3172 }, 3173 { 3174 value: Oe.GOOGLE, 3175 label: p.emailPlatformOptionGoogle, 3176 className: "google" 3177 }, 3178 { 3179 value: Oe.OTHER, 3180 label: p.emailPlatformOptionOther 3181 } 3182 ]), i = B([ 3183 { 3184 value: "TECHNOLOGY", 3185 label: p.companyIndustryOptionTechnology 3186 }, 3187 { 3188 value: "REAL_ESTATE", 3189 label: p.companyIndustryOptionRealEstate 3190 }, 3191 { 3192 value: "HEALTH_CARE", 3193 label: p.companyIndustryOptionHealthcare 3194 }, 3195 { 3196 value: "BUSINESS_SERVICES", 3197 label: p.companyIndustryOptionBusiness 3198 }, 3199 { value: "FINANCE", label: p.companyIndustryOptionFinance }, 3200 { 3201 value: "NON_PROFIT", 3202 label: p.companyIndustryOptionNonProfit 3203 }, 3204 { 3205 value: "MARKETING", 3206 label: p.companyIndustryOptionMarketing 3207 }, 3208 { 3209 value: "EDUCATION", 3210 label: p.companyIndustryOptionEducation 3211 }, 3212 { 3213 value: "ARCHITECTURE_CONSTRUCTION", 3214 label: p.companyIndustryOptionArchitecture 3215 }, 3216 { value: "LEGAL", label: p.companyIndustryOptionLegal }, 3217 { value: "RETAIL", label: p.companyIndustryOptionRetail }, 3218 { 3219 value: "INDUSTRIAL", 3220 label: p.companyIndustryOptionIndustrial 3221 }, 3222 { 3223 value: "HOSPITALITY", 3224 label: p.companyIndustryOptionHospitality 3225 }, 3226 { 3227 value: "MEDIA_ENTERTAINMENT", 3228 label: p.companyIndustryOptionMedia 3229 }, 3230 { 3231 value: "TRANSPORTATION", 3232 label: p.companyIndustryOptionTransportation 3233 }, 3234 { 3235 value: "PUBLIC_GOVERNMENT", 3236 label: p.companyIndustryOptionPublic 3237 }, 3238 { value: "OTHER", label: p.companyIndustryOptionOther } 3239 ]), r = R(() => o.value.workspaceInfo.emailPlatform !== void 0 && o.value.workspaceInfo.emailPlatform in Oe); 3240 return De(() => { 3241 oe({ eventName: "onboarding_email_provider_view" }), o.value.centralizedManagement === !1 && (o.value.workspaceInfo.emailPlatform = Oe.OTHER), on( 3242 o.value, 3243 "selectEmailPlatform", 3244 r.value 3245 ), n("enableToContinue", r.value); 3246 }), X(r, (s) => { 3247 n("enableToContinue", s); 3248 }), X( 3249 () => o.value.centralizedManagement, 3250 (s) => { 3251 s === !1 && (o.value.workspaceInfo.emailPlatform = Oe.OTHER); 3252 } 3253 ), (s, f) => (m(), b(de, null, [ 3254 o.value.centralizedManagement !== !1 ? (m(), b(de, { key: 0 }, [ 3255 l("div", uc, _(d(p).nameYourWorkspaceFormEmailPlatformHeader), 1), 3256 x(xn, { 3257 modelValue: o.value.workspaceInfo.emailPlatform, 3258 "onUpdate:modelValue": f[0] || (f[0] = (u) => o.value.workspaceInfo.emailPlatform = u), 3259 options: a.value, 3260 aid: "ONBOARDING_EMAIL_PLATFORM" 3261 }, null, 8, ["modelValue", "options"]) 3262 ], 64)) : D("", !0), 3263 l("div", cc, _(d(p).whoAreCreatingSigForFormIndustryHeader), 1), 3264 x(xn, { 3265 modelValue: o.value.accountTypeInfo.companyIndustry, 3266 "onUpdate:modelValue": f[1] || (f[1] = (u) => o.value.accountTypeInfo.companyIndustry = u), 3267 options: i.value, 3268 class: "industry-options", 3269 aid: "ONBOARDING_INDUSTRY" 3270 }, null, 8, ["modelValue", "options"]) 3271 ], 64)); 3272 } 3273}), mc = { class: "signature-intent-step" }, fc = { class: "form-section" }, pc = { class: "text-3xl font-semibold form-header" }, gc = { 3274 key: 0, 3275 class: "form-section" 3276}, bc = { class: "text-3xl font-semibold section-header" }, vc = { 3277 class: "intent-options", 3278 aid: "ONBOARDING_SIGNATURE_INTENT" 3279}, _c = ["aid", "onClick"], hc = { class: "intent-icon" }, kc = { class: "intent-copy" }, yc = { class: "intent-title" }, Sc = { class: "intent-description" }, Ic = /* @__PURE__ */ j({ 3280 __name: "signature-intent", 3281 props: { 3282 modelValue: { 3283 required: !0 3284 }, 3285 modelModifiers: {} 3286 }, 3287 emits: /* @__PURE__ */ me(["enableToContinue"], ["update:modelValue"]), 3288 setup(e, { emit: t }) { 3289 const n = t, o = ce(e, "modelValue"), a = B([ 3290 { 3291 value: "individual", 3292 label: p.companySizeOptionIndividual 3293 }, 3294 { 3295 value: "small", 3296 label: p.companySizeOptionSmall 3297 }, 3298 { 3299 value: "medium", 3300 label: p.companySizeOptionMedium 3301 }, 3302 { 3303 value: "large", 3304 label: p.companySizeOptionLarge 3305 }, 3306 { 3307 value: "xlarge", 3308 label: p.companySizeOptionXlarge 3309 }, 3310 { 3311 value: "xxlarge", 3312 label: p.companySizeOptionXXlarge 3313 } 3314 ]), i = [ 3315 { 3316 value: Cn.MYSELF, 3317 label: p.signatureIntentJustForMeLabel, 3318 description: p.signatureIntentJustForMeDescription, 3319 icon: "fa-regular fa-user" 3320 }, 3321 { 3322 value: Cn.MY_ORGANIZATION, 3323 label: p.signatureIntentCompanyWideLabel, 3324 description: p.signatureIntentCompanyWideDescription, 3325 icon: "fa-regular fa-building" 3326 } 3327 ], r = R( 3328 () => !!o.value.userBasicInfo.companySize && !!o.value.userBasicInfo.creatingFor 3329 ); 3330 De(() => { 3331 oe({ eventName: "onboarding_signature_intent_view" }), on( 3332 o.value, 3333 "signatureIntent", 3334 r.value 3335 ), n("enableToContinue", r.value); 3336 }), X(r, (f) => { 3337 n("enableToContinue", f); 3338 }); 3339 function s(f) { 3340 o.value.userBasicInfo.creatingFor = f; 3341 } 3342 return (f, u) => (m(), b("div", mc, [ 3343 l("div", fc, [ 3344 l("div", pc, _(d(p).signatureIntentHeader), 1), 3345 x(xn, { 3346 modelValue: o.value.userBasicInfo.companySize, 3347 "onUpdate:modelValue": u[0] || (u[0] = (v) => o.value.userBasicInfo.companySize = v), 3348 class: "company-size-chips", 3349 options: a.value, 3350 aid: "ONBOARDING_COMPANY_SIZE" 3351 }, null, 8, ["modelValue", "options"]) 3352 ]), 3353 o.value.userBasicInfo.companySize ? (m(), b("div", gc, [ 3354 l("div", bc, _(d(p).signatureIntentAudienceHeader), 1), 3355 l("div", vc, [ 3356 (m(), b(de, null, Pe(i, (v) => l("button", { 3357 key: v.value, 3358 type: "button", 3359 class: H(["intent-option", { 3360 selected: o.value.userBasicInfo.creatingFor === v.value 3361 }]), 3362 aid: `ONBOARDING_SIGNATURE_INTENT_${v.value}`, 3363 onClick: (c) => s(v.value) 3364 }, [ 3365 l("span", hc, [ 3366 l("i", { 3367 class: H(v.icon) 3368 }, null, 2) 3369 ]), 3370 l("span", kc, [ 3371 l("span", yc, _(v.label), 1), 3372 l("span", Sc, _(v.description), 1) 3373 ]) 3374 ], 10, _c)), 64)) 3375 ]) 3376 ])) : D("", !0) 3377 ])); 3378 } 3379}), Ec = /* @__PURE__ */ ee(Ic, [["__scopeId", "data-v-d8517820"]]), Ac = [0, 2500, 7e3], Oc = 4; 3380function Lc(e) { 3381 const t = Ac.filter( 3382 (n) => e >= n 3383 ).length; 3384 return Array.from({ length: Oc }, (n, o) => o < t ? "completed" : o === t ? "active" : "pending"); 3385} 3386const Cc = { 3387 class: "brand-kit-collecting-data", 3388 aid: "ONBOARDING_MAKE_SIGNATURE_YOURS_BRAND_KIT_LOADING" 3389}, wc = { class: "brand-kit-collecting-data__header" }, Rc = { class: "brand-kit-collecting-data__titles" }, Tc = { class: "brand-kit-collecting-data__title" }, Nc = { class: "brand-kit-collecting-data__subtitle" }, Pc = { class: "brand-kit-collecting-data__steps" }, Fc = { 3390 class: "brand-kit-collecting-data__step-marker", 3391 "aria-hidden": "true" 3392}, Bc = { 3393 key: 0, 3394 class: "fa-solid fa-check brand-kit-collecting-data__step-check" 3395}, Mc = { class: "brand-kit-collecting-data__step-label" }, Uc = /* @__PURE__ */ j({ 3396 __name: "brand-kit-collecting-data", 3397 props: { 3398 fetchStartedAt: {} 3399 }, 3400 setup(e) { 3401 const t = e, n = B(Date.now()); 3402 let o; 3403 De(() => { 3404 o = setInterval(() => { 3405 n.value = Date.now(); 3406 }, 500); 3407 }), nn(() => { 3408 o && clearInterval(o); 3409 }); 3410 const a = R(() => { 3411 const s = t.fetchStartedAt ?? n.value; 3412 return Math.max(0, n.value - s); 3413 }), i = R( 3414 () => Lc(a.value) 3415 ), r = R(() => [ 3416 { 3417 label: p.makeSignatureYoursCollectingStepSearchWebsite, 3418 state: i.value[0] 3419 }, 3420 { 3421 label: p.makeSignatureYoursCollectingStepExtractLogoColor, 3422 state: i.value[1] 3423 }, 3424 { 3425 label: p.makeSignatureYoursCollectingStepMakeSignature, 3426 state: i.value[2] 3427 }, 3428 { 3429 label: p.makeSignatureYoursCollectingStepAlmostReady, 3430 state: i.value[3] 3431 } 3432 ]); 3433 return (s, f) => (m(), b("div", Cc, [ 3434 l("div", wc, [ 3435 f[0] || (f[0] = l("div", { 3436 class: "brand-kit-collecting-data__icon", 3437 "aria-hidden": "true" 3438 }, [ 3439 l("div", { class: "brand-kit-collecting-data__icon-ring" }, [ 3440 l("i", { class: "fa-solid fa-sparkles brand-kit-collecting-data__sparkles" }) 3441 ]) 3442 ], -1)), 3443 l("div", Rc, [ 3444 l("div", Tc, _(d(p).makeSignatureYoursCollectingTitle), 1), 3445 l("div", Nc, _(d(p).makeSignatureYoursCollectingSubtitle), 1) 3446 ]) 3447 ]), 3448 l("ul", Pc, [ 3449 (m(!0), b(de, null, Pe(r.value, (u, v) => (m(), b("li", { 3450 key: v, 3451 class: H(["brand-kit-collecting-data__step", `brand-kit-collecting-data__step--${u.state}`]) 3452 }, [ 3453 l("span", Fc, [ 3454 u.state === "completed" ? (m(), b("i", Bc)) : D("", !0) 3455 ]), 3456 l("span", Mc, _(u.label), 1) 3457 ], 2))), 128)) 3458 ]) 3459 ])); 3460 } 3461}), Dc = /* @__PURE__ */ ee(Uc, [["__scopeId", "data-v-aeef9b4c"]]); 3462function $t(e) { 3463 "@babel/helpers - typeof"; 3464 return $t = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) { 3465 return typeof t; 3466 } : function(t) { 3467 return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t; 3468 }, $t(e); 3469} 3470var xc = /^\s+/, Yc = /\s+$/; 3471function O(e, t) { 3472 if (e = e || "", t = t || {}, e instanceof O) 3473 return e; 3474 if (!(this instanceof O)) 3475 return new O(e, t); 3476 var n = Gc(e); 3477 this._originalInput = e, this._r = n.r, this._g = n.g, this._b = n.b, this._a = n.a, this._roundA = Math.round(100 * this._a) / 100, this._format = t.format || n.format, this._gradientType = t.gradientType, this._r < 1 && (this._r = Ma
vendor: 17,400 bytes, lines 3477-4070
3477th.round(this._r)), this._g < 1 && (this._g = Math.round(this._g)), this._b < 1 && (this._b = Math.round(this._b)), this._ok = n.ok; 3478} 3479O.prototype = { 3480 isDark: function() { 3481 return this.getBrightness() < 128; 3482 }, 3483 isLight: function() { 3484 return !this.isDark(); 3485 }, 3486 isValid: function() { 3487 return this._ok; 3488 }, 3489 getOriginalInput: function() { 3490 return this._originalInput; 3491 }, 3492 getFormat: function() { 3493 return this._format; 3494 }, 3495 getAlpha: function() { 3496 return this._a; 3497 }, 3498 getBrightness: function() { 3499 var t = this.toRgb(); 3500 return (t.r * 299 + t.g * 587 + t.b * 114) / 1e3; 3501 }, 3502 getLuminance: function() { 3503 var t = this.toRgb(), n, o, a, i, r, s; 3504 return n = t.r / 255, o = t.g / 255, a = t.b / 255, n <= 0.03928 ? i = n / 12.92 : i = Math.pow((n + 0.055) / 1.055, 2.4), o <= 0.03928 ? r = o / 12.92 : r = Math.pow((o + 0.055) / 1.055, 2.4), a <= 0.03928 ? s = a / 12.92 : s = Math.pow((a + 0.055) / 1.055, 2.4), 0.2126 * i + 0.7152 * r + 0.0722 * s; 3505 }, 3506 setAlpha: function(t) { 3507 return this._a = za(t), this._roundA = Math.round(100 * this._a) / 100, this; 3508 }, 3509 toHsv: function() { 3510 var t = Fo(this._r, this._g, this._b); 3511 return { 3512 h: t.h * 360, 3513 s: t.s, 3514 v: t.v, 3515 a: this._a 3516 }; 3517 }, 3518 toHsvString: function() { 3519 var t = Fo(this._r, this._g, this._b), n = Math.round(t.h * 360), o = Math.round(t.s * 100), a = Math.round(t.v * 100); 3520 return this._a == 1 ? "hsv(" + n + ", " + o + "%, " + a + "%)" : "hsva(" + n + ", " + o + "%, " + a + "%, " + this._roundA + ")"; 3521 }, 3522 toHsl: function() { 3523 var t = Po(this._r, this._g, this._b); 3524 return { 3525 h: t.h * 360, 3526 s: t.s, 3527 l: t.l, 3528 a: this._a 3529 }; 3530 }, 3531 toHslString: function() { 3532 var t = Po(this._r, this._g, this._b), n = Math.round(t.h * 360), o = Math.round(t.s * 100), a = Math.round(t.l * 100); 3533 return this._a == 1 ? "hsl(" + n + ", " + o + "%, " + a + "%)" : "hsla(" + n + ", " + o + "%, " + a + "%, " + this._roundA + ")"; 3534 }, 3535 toHex: function(t) { 3536 return Bo(this._r, this._g, this._b, t); 3537 }, 3538 toHexString: function(t) { 3539 return "#" + this.toHex(t); 3540 }, 3541 toHex8: function(t) { 3542 return Kc(this._r, this._g, this._b, this._a, t); 3543 }, 3544 toHex8String: function(t) { 3545 return "#" + this.toHex8(t); 3546 }, 3547 toRgb: function() { 3548 return { 3549 r: Math.round(this._r), 3550 g: Math.round(this._g), 3551 b: Math.round(this._b), 3552 a: this._a 3553 }; 3554 }, 3555 toRgbString: function() { 3556 return this._a == 1 ? "rgb(" + Math.round(this._r) + ", " + Math.round(this._g) + ", " + Math.round(this._b) + ")" : "rgba(" + Math.round(this._r) + ", " + Math.round(this._g) + ", " + Math.round(this._b) + ", " + this._roundA + ")"; 3557 }, 3558 toPercentageRgb: function() { 3559 return { 3560 r: Math.round(te(this._r, 255) * 100) + "%", 3561 g: Math.round(te(this._g, 255) * 100) + "%", 3562 b: Math.round(te(this._b, 255) * 100) + "%", 3563 a: this._a 3564 }; 3565 }, 3566 toPercentageRgbString: function() { 3567 return this._a == 1 ? "rgb(" + Math.round(te(this._r, 255) * 100) + "%, " + Math.round(te(this._g, 255) * 100) + "%, " + Math.round(te(this._b, 255) * 100) + "%)" : "rgba(" + Math.round(te(this._r, 255) * 100) + "%, " + Math.round(te(this._g, 255) * 100) + "%, " + Math.round(te(this._b, 255) * 100) + "%, " + this._roundA + ")"; 3568 }, 3569 toName: function() { 3570 return this._a === 0 ? "transparent" : this._a < 1 ? !1 : od[Bo(this._r, this._g, this._b, !0)] || !1; 3571 }, 3572 toFilter: function(t) { 3573 var n = "#" + Mo(this._r, this._g, this._b, this._a), o = n, a = this._gradientType ? "GradientType = 1, " : ""; 3574 if (t) { 3575 var i = O(t); 3576 o = "#" + Mo(i._r, i._g, i._b, i._a); 3577 } 3578 return "progid:DXImageTransform.Microsoft.gradient(" + a + "startColorstr=" + n + ",endColorstr=" + o + ")"; 3579 }, 3580 toString: function(t) { 3581 var n = !!t; 3582 t = t || this._format; 3583 var o = !1, a = this._a < 1 && this._a >= 0, i = !n && a && (t === "hex" || t === "hex6" || t === "hex3" || t === "hex4" || t === "hex8" || t === "name"); 3584 return i ? t === "name" && this._a === 0 ? this.toName() : this.toRgbString() : (t === "rgb" && (o = this.toRgbString()), t === "prgb" && (o = this.toPercentageRgbString()), (t === "hex" || t === "hex6") && (o = this.toHexString()), t === "hex3" && (o = this.toHexString(!0)), t === "hex4" && (o = this.toHex8String(!0)), t === "hex8" && (o = this.toHex8String()), t === "name" && (o = this.toName()), t === "hsl" && (o = this.toHslString()), t === "hsv" && (o = this.toHsvString()), o || this.toHexString()); 3585 }, 3586 clone: function() { 3587 return O(this.toString()); 3588 }, 3589 _applyModification: function(t, n) { 3590 var o = t.apply(null, [this].concat([].slice.call(n))); 3591 return this._r = o._r, this._g = o._g, this._b = o._b, this.setAlpha(o._a), this; 3592 }, 3593 lighten: function() { 3594 return this._applyModification(Jc, arguments); 3595 }, 3596 brighten: function() { 3597 return this._applyModification(Xc, arguments); 3598 }, 3599 darken: function() { 3600 return this._applyModification(qc, arguments); 3601 }, 3602 desaturate: function() { 3603 return this._applyModification(Hc, arguments); 3604 }, 3605 saturate: function() { 3606 return this._applyModification(jc, arguments); 3607 }, 3608 greyscale: function() { 3609 return this._applyModification(Qc, arguments); 3610 }, 3611 spin: function() { 3612 return this._applyModification(Zc, arguments); 3613 }, 3614 _applyCombination: function(t, n) { 3615 return t.apply(null, [this].concat([].slice.call(n))); 3616 }, 3617 analogous: function() { 3618 return this._applyCombination(td, arguments); 3619 }, 3620 complement: function() { 3621 return this._applyCombination($c, arguments); 3622 }, 3623 monochromatic: function() { 3624 return this._applyCombination(nd, arguments); 3625 }, 3626 splitcomplement: function() { 3627 return this._applyCombination(ed, arguments); 3628 }, 3629 // Disabled until https://github.com/bgrins/TinyColor/issues/254 3630 // polyad: function (number) { 3631 // return this._applyCombination(polyad, [number]); 3632 // }, 3633 triad: function() { 3634 return this._applyCombination(Uo, [3]); 3635 }, 3636 tetrad: function() { 3637 return this._applyCombination(Uo, [4]); 3638 } 3639}; 3640O.fromRatio = function(e, t) { 3641 if ($t(e) == "object") { 3642 var n = {}; 3643 for (var o in e) 3644 e.hasOwnProperty(o) && (o === "a" ? n[o] = e[o] : n[o] = Rt(e[o])); 3645 e = n; 3646 } 3647 return O(e, t); 3648}; 3649function Gc(e) { 3650 var t = { 3651 r: 0, 3652 g: 0, 3653 b: 0 3654 }, n = 1, o = null, a = null, i = null, r = !1, s = !1; 3655 return typeof e == "string" && (e = sd(e)), $t(e) == "object" && (We(e.r) && We(e.g) && We(e.b) ? (t = Wc(e.r, e.g, e.b), r = !0, s = String(e.r).substr(-1) === "%" ? "prgb" : "rgb") : We(e.h) && We(e.s) && We(e.v) ? (o = Rt(e.s), a = Rt(e.v), t = zc(e.h, o, a), r = !0, s = "hsv") : We(e.h) && We(e.s) && We(e.l) && (o = Rt(e.s), i = Rt(e.l), t = Vc(e.h, o, i), r = !0, s = "hsl"), e.hasOwnProperty("a") && (n = e.a)), n = za(n), { 3656 ok: r, 3657 format: e.format || s, 3658 r: Math.min(255, Math.max(t.r, 0)), 3659 g: Math.min(255, Math.max(t.g, 0)), 3660 b: Math.min(255, Math.max(t.b, 0)), 3661 a: n 3662 }; 3663} 3664function Wc(e, t, n) { 3665 return { 3666 r: te(e, 255) * 255, 3667 g: te(t, 255) * 255, 3668 b: te(n, 255) * 255 3669 }; 3670} 3671function Po(e, t, n) { 3672 e = te(e, 255), t = te(t, 255), n = te(n, 255); 3673 var o = Math.max(e, t, n), a = Math.min(e, t, n), i, r, s = (o + a) / 2; 3674 if (o == a) 3675 i = r = 0; 3676 else { 3677 var f = o - a; 3678 switch (r = s > 0.5 ? f / (2 - o - a) : f / (o + a), o) { 3679 case e: 3680 i = (t - n) / f + (t < n ? 6 : 0); 3681 break; 3682 case t: 3683 i = (n - e) / f + 2; 3684 break; 3685 case n: 3686 i = (e - t) / f + 4; 3687 break; 3688 } 3689 i /= 6; 3690 } 3691 return { 3692 h: i, 3693 s: r, 3694 l: s 3695 }; 3696} 3697function Vc(e, t, n) { 3698 var o, a, i; 3699 e = te(e, 360), t = te(t, 100), n = te(n, 100); 3700 function r(u, v, c) { 3701 return c < 0 && (c += 1), c > 1 && (c -= 1), c < 1 / 6 ? u + (v - u) * 6 * c : c < 1 / 2 ? v : c < 2 / 3 ? u + (v - u) * (2 / 3 - c) * 6 : u; 3702 } 3703 if (t === 0) 3704 o = a = i = n; 3705 else { 3706 var s = n < 0.5 ? n * (1 + t) : n + t - n * t, f = 2 * n - s; 3707 o = r(f, s, e + 1 / 3), a = r(f, s, e), i = r(f, s, e - 1 / 3); 3708 } 3709 return { 3710 r: o * 255, 3711 g: a * 255, 3712 b: i * 255 3713 }; 3714} 3715function Fo(e, t, n) { 3716 e = te(e, 255), t = te(t, 255), n = te(n, 255); 3717 var o = Math.max(e, t, n), a = Math.min(e, t, n), i, r, s = o, f = o - a; 3718 if (r = o === 0 ? 0 : f / o, o == a) 3719 i = 0; 3720 else { 3721 switch (o) { 3722 case e: 3723 i = (t - n) / f + (t < n ? 6 : 0); 3724 break; 3725 case t: 3726 i = (n - e) / f + 2; 3727 break; 3728 case n: 3729 i = (e - t) / f + 4; 3730 break; 3731 } 3732 i /= 6; 3733 } 3734 return { 3735 h: i, 3736 s: r, 3737 v: s 3738 }; 3739} 3740function zc(e, t, n) { 3741 e = te(e, 360) * 6, t = te(t, 100), n = te(n, 100); 3742 var o = Math.floor(e), a = e - o, i = n * (1 - t), r = n * (1 - a * t), s = n * (1 - (1 - a) * t), f = o % 6, u = [n, r, i, i, s, n][f], v = [s, n, n, r, i, i][f], c = [i, i, s, n, n, r][f]; 3743 return { 3744 r: u * 255, 3745 g: v * 255, 3746 b: c * 255 3747 }; 3748} 3749function Bo(e, t, n, o) { 3750 var a = [Ne(Math.round(e).toString(16)), Ne(Math.round(t).toString(16)), Ne(Math.round(n).toString(16))]; 3751 return o && a[0].charAt(0) == a[0].charAt(1) && a[1].charAt(0) == a[1].charAt(1) && a[2].charAt(0) == a[2].charAt(1) ? a[0].charAt(0) + a[1].charAt(0) + a[2].charAt(0) : a.join(""); 3752} 3753function Kc(e, t, n, o, a) { 3754 var i = [Ne(Math.round(e).toString(16)), Ne(Math.round(t).toString(16)), Ne(Math.round(n).toString(16)), Ne(Ka(o))]; 3755 return a && i[0].charAt(0) == i[0].charAt(1) && i[1].charAt(0) == i[1].charAt(1) && i[2].charAt(0) == i[2].charAt(1) && i[3].charAt(0) == i[3].charAt(1) ? i[0].charAt(0) + i[1].charAt(0) + i[2].charAt(0) + i[3].charAt(0) : i.join(""); 3756} 3757function Mo(e, t, n, o) { 3758 var a = [Ne(Ka(o)), Ne(Math.round(e).toString(16)), Ne(Math.round(t).toString(16)), Ne(Math.round(n).toString(16))]; 3759 return a.join(""); 3760} 3761O.equals = function(e, t) { 3762 return !e || !t ? !1 : O(e).toRgbString() == O(t).toRgbString(); 3763}; 3764O.random = function() { 3765 return O.fromRatio({ 3766 r: Math.random(), 3767 g: Math.random(), 3768 b: Math.random() 3769 }); 3770}; 3771function Hc(e, t) { 3772 t = t === 0 ? 0 : t || 10; 3773 var n = O(e).toHsl(); 3774 return n.s -= t / 100, n.s = ln(n.s), O(n); 3775} 3776function jc(e, t) { 3777 t = t === 0 ? 0 : t || 10; 3778 var n = O(e).toHsl(); 3779 return n.s += t / 100, n.s = ln(n.s), O(n); 3780} 3781function Qc(e) { 3782 return O(e).desaturate(100); 3783} 3784function Jc(e, t) { 3785 t = t === 0 ? 0 : t || 10; 3786 var n = O(e).toHsl(); 3787 return n.l += t / 100, n.l = ln(n.l), O(n); 3788} 3789function Xc(e, t) { 3790 t = t === 0 ? 0 : t || 10; 3791 var n = O(e).toRgb(); 3792 return n.r = Math.max(0, Math.min(255, n.r - Math.round(255 * -(t / 100)))), n.g = Math.max(0, Math.min(255, n.g - Math.round(255 * -(t / 100)))), n.b = Math.max(0, Math.min(255, n.b - Math.round(255 * -(t / 100)))), O(n); 3793} 3794function qc(e, t) { 3795 t = t === 0 ? 0 : t || 10; 3796 var n = O(e).toHsl(); 3797 return n.l -= t / 100, n.l = ln(n.l), O(n); 3798} 3799function Zc(e, t) { 3800 var n = O(e).toHsl(), o = (n.h + t) % 360; 3801 return n.h = o < 0 ? 360 + o : o, O(n); 3802} 3803function $c(e) { 3804 var t = O(e).toHsl(); 3805 return t.h = (t.h + 180) % 360, O(t); 3806} 3807function Uo(e, t) { 3808 if (isNaN(t) || t <= 0) 3809 throw new Error("Argument to polyad must be a positive number"); 3810 for (var n = O(e).toHsl(), o = [O(e)], a = 360 / t, i = 1; i < t; i++) 3811 o.push(O({ 3812 h: (n.h + i * a) % 360, 3813 s: n.s, 3814 l: n.l 3815 })); 3816 return o; 3817} 3818function ed(e) { 3819 var t = O(e).toHsl(), n = t.h; 3820 return [O(e), O({ 3821 h: (n + 72) % 360, 3822 s: t.s, 3823 l: t.l 3824 }), O({ 3825 h: (n + 216) % 360, 3826 s: t.s, 3827 l: t.l 3828 })]; 3829} 3830function td(e, t, n) { 3831 t = t || 6, n = n || 30; 3832 var o = O(e).toHsl(), a = 360 / n, i = [O(e)]; 3833 for (o.h = (o.h - (a * t >> 1) + 720) % 360; --t; ) 3834 o.h = (o.h + a) % 360, i.push(O(o)); 3835 return i; 3836} 3837function nd(e, t) { 3838 t = t || 6; 3839 for (var n = O(e).toHsv(), o = n.h, a = n.s, i = n.v, r = [], s = 1 / t; t--; ) 3840 r.push(O({ 3841 h: o, 3842 s: a, 3843 v: i 3844 })), i = (i + s) % 1; 3845 return r; 3846} 3847O.mix = function(e, t, n) { 3848 n = n === 0 ? 0 : n || 50; 3849 var o = O(e).toRgb(), a = O(t).toRgb(), i = n / 100, r = { 3850 r: (a.r - o.r) * i + o.r, 3851 g: (a.g - o.g) * i + o.g, 3852 b: (a.b - o.b) * i + o.b, 3853 a: (a.a - o.a) * i + o.a 3854 }; 3855 return O(r); 3856}; 3857O.readability = function(e, t) { 3858 var n = O(e), o = O(t); 3859 return (Math.max(n.getLuminance(), o.getLuminance()) + 0.05) / (Math.min(n.getLuminance(), o.getLuminance()) + 0.05); 3860}; 3861O.isReadable = function(e, t, n) { 3862 var o = O.readability(e, t), a, i; 3863 switch (i = !1, a = ld(n), a.level + a.size) { 3864 case "AAsmall": 3865 case "AAAlarge": 3866 i = o >= 4.5; 3867 break; 3868 case "AAlarge": 3869 i = o >= 3; 3870 break; 3871 case "AAAsmall": 3872 i = o >= 7; 3873 break; 3874 } 3875 return i; 3876}; 3877O.mostReadable = function(e, t, n) { 3878 var o = null, a = 0, i, r, s, f; 3879 n = n || {}, r = n.includeFallbackColors, s = n.level, f = n.size; 3880 for (var u = 0; u < t.length; u++) 3881 i = O.readability(e, t[u]), i > a && (a = i, o = O(t[u])); 3882 return O.isReadable(e, o, { 3883 level: s, 3884 size: f 3885 }) || !r ? o : (n.includeFallbackColors = !1, O.mostReadable(e, ["#fff", "#000"], n)); 3886}; 3887var Yn = O.names = { 3888 aliceblue: "f0f8ff", 3889 antiquewhite: "faebd7", 3890 aqua: "0ff", 3891 aquamarine: "7fffd4", 3892 azure: "f0ffff", 3893 beige: "f5f5dc", 3894 bisque: "ffe4c4", 3895 black: "000", 3896 blanchedalmond: "ffebcd", 3897 blue: "00f", 3898 blueviolet: "8a2be2", 3899 brown: "a52a2a", 3900 burlywood: "deb887", 3901 burntsienna: "ea7e5d", 3902 cadetblue: "5f9ea0", 3903 chartreuse: "7fff00", 3904 chocolate: "d2691e", 3905 coral: "ff7f50", 3906 cornflowerblue: "6495ed", 3907 cornsilk: "fff8dc", 3908 crimson: "dc143c", 3909 cyan: "0ff", 3910 darkblue: "00008b", 3911 darkcyan: "008b8b", 3912 darkgoldenrod: "b8860b", 3913 darkgray: "a9a9a9", 3914 darkgreen: "006400", 3915 darkgrey: "a9a9a9", 3916 darkkhaki: "bdb76b", 3917 darkmagenta: "8b008b", 3918 darkolivegreen: "556b2f", 3919 darkorange: "ff8c00", 3920 darkorchid: "9932cc", 3921 darkred: "8b0000", 3922 darksalmon: "e9967a", 3923 darkseagreen: "8fbc8f", 3924 darkslateblue: "483d8b", 3925 darkslategray: "2f4f4f", 3926 darkslategrey: "2f4f4f", 3927 darkturquoise: "00ced1", 3928 darkviolet: "9400d3", 3929 deeppink: "ff1493", 3930 deepskyblue: "00bfff", 3931 dimgray: "696969", 3932 dimgrey: "696969", 3933 dodgerblue: "1e90ff", 3934 firebrick: "b22222", 3935 floralwhite: "fffaf0", 3936 forestgreen: "228b22", 3937 fuchsia: "f0f", 3938 gainsboro: "dcdcdc", 3939 ghostwhite: "f8f8ff", 3940 gold: "ffd700", 3941 goldenrod: "daa520", 3942 gray: "808080", 3943 green: "008000", 3944 greenyellow: "adff2f", 3945 grey: "808080", 3946 honeydew: "f0fff0", 3947 hotpink: "ff69b4", 3948 indianred: "cd5c5c", 3949 indigo: "4b0082", 3950 ivory: "fffff0", 3951 khaki: "f0e68c", 3952 lavender: "e6e6fa", 3953 lavenderblush: "fff0f5", 3954 lawngreen: "7cfc00", 3955 lemonchiffon: "fffacd", 3956 lightblue: "add8e6", 3957 lightcoral: "f08080", 3958 lightcyan: "e0ffff", 3959 lightgoldenrodyellow: "fafad2", 3960 lightgray: "d3d3d3", 3961 lightgreen: "90ee90", 3962 lightgrey: "d3d3d3", 3963 lightpink: "ffb6c1", 3964 lightsalmon: "ffa07a", 3965 lightseagreen: "20b2aa", 3966 lightskyblue: "87cefa", 3967 lightslategray: "789", 3968 lightslategrey: "789", 3969 lightsteelblue: "b0c4de", 3970 lightyellow: "ffffe0", 3971 lime: "0f0", 3972 limegreen: "32cd32", 3973 linen: "faf0e6", 3974 magenta: "f0f", 3975 maroon: "800000", 3976 mediumaquamarine: "66cdaa", 3977 mediumblue: "0000cd", 3978 mediumorchid: "ba55d3", 3979 mediumpurple: "9370db", 3980 mediumseagreen: "3cb371", 3981 mediumslateblue: "7b68ee", 3982 mediumspringgreen: "00fa9a", 3983 mediumturquoise: "48d1cc", 3984 mediumvioletred: "c71585", 3985 midnightblue: "191970", 3986 mintcream: "f5fffa", 3987 mistyrose: "ffe4e1", 3988 moccasin: "ffe4b5", 3989 navajowhite: "ffdead", 3990 navy: "000080", 3991 oldlace: "fdf5e6", 3992 olive: "808000", 3993 olivedrab: "6b8e23", 3994 orange: "ffa500", 3995 orangered: "ff4500", 3996 orchid: "da70d6", 3997 palegoldenrod: "eee8aa", 3998 palegreen: "98fb98", 3999 paleturquoise: "afeeee", 4000 palevioletred: "db7093", 4001 papayawhip: "ffefd5", 4002 peachpuff: "ffdab9", 4003 peru: "cd853f", 4004 pink: "ffc0cb", 4005 plum: "dda0dd", 4006 powderblue: "b0e0e6", 4007 purple: "800080", 4008 rebeccapurple: "663399", 4009 red: "f00", 4010 rosybrown: "bc8f8f", 4011 royalblue: "4169e1", 4012 saddlebrown: "8b4513", 4013 salmon: "fa8072", 4014 sandybrown: "f4a460", 4015 seagreen: "2e8b57", 4016 seashell: "fff5ee", 4017 sienna: "a0522d", 4018 silver: "c0c0c0", 4019 skyblue: "87ceeb", 4020 slateblue: "6a5acd", 4021 slategray: "708090", 4022 slategrey: "708090", 4023 snow: "fffafa", 4024 springgreen: "00ff7f", 4025 steelblue: "4682b4", 4026 tan: "d2b48c", 4027 teal: "008080", 4028 thistle: "d8bfd8", 4029 tomato: "ff6347", 4030 turquoise: "40e0d0", 4031 violet: "ee82ee", 4032 wheat: "f5deb3", 4033 white: "fff", 4034 whitesmoke: "f5f5f5", 4035 yellow: "ff0", 4036 yellowgreen: "9acd32" 4037}, od = O.hexNames = ad(Yn); 4038function ad(e) { 4039 var t = {}; 4040 for (var n in e) 4041 e.hasOwnProperty(n) && (t[e[n]] = n); 4042 return t; 4043} 4044function za(e) { 4045 return e = parseFloat(e), (isNaN(e) || e < 0 || e > 1) && (e = 1), e; 4046} 4047function te(e, t) { 4048 id(e) && (e = "100%"); 4049 var n = rd(e); 4050 return e = Math.min(t, Math.max(0, parseFloat(e))), n && (e = parseInt(e * t, 10) / 100), Math.abs(e - t) < 1e-6 ? 1 : e % t / parseFloat(t); 4051} 4052function ln(e) { 4053 return Math.min(1, Math.max(0, e)); 4054} 4055function Ae(e) { 4056 return parseInt(e, 16); 4057} 4058function id(e) { 4059 return typeof e == "string" && e.indexOf(".") != -1 && parseFloat(e) === 1; 4060} 4061function rd(e) { 4062 return typeof e == "string" && e.indexOf("%") != -1; 4063} 4064function Ne(e) { 4065 return e.length == 1 ? "0" + e : "" + e; 4066} 4067function Rt(e) { 4068 return e <= 1 && (e = e * 100 + "%"), e; 4069} 4070function Ka(e) {
4071 return Math.round(parseFloat(e) * 255).toString(16); 4072} 4073function Do(e) { 4074 return Ae(e) / 255; 4075} 4076var Te = (function() { 4077 var e = "[-\\+]?\\d+%?", t = "[-\\+]?\\d*\\.\\d+%?", n = "(?:" + t + ")|(?:" + e + ")", o = "[\\s|\\(]+(" + n + ")[,|\\s]+(" + n + ")[,|\\s]+(" + n + ")\\s*\\)?", a = "[\\s|\\(]+(" + n + ")[,|\\s]+(" + n + ")[,|\\s]+(" + n + ")[,|\\s]+(" + n + ")\\s*\\)?"; 4078 return { 4079 CSS_UNIT: new RegExp(n), 4080 rgb: new RegExp("rgb" + o), 4081 rgba: new RegExp("rgba" + a), 4082 hsl: new RegExp("hsl" + o), 4083 hsla: new RegExp("hsla" + a), 4084 hsv: new RegExp("hsv" + o), 4085 hsva: new RegExp("hsva" + a), 4086 hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/, 4087 hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/, 4088 hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/, 4089 hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/ 4090 }; 4091})(); 4092function We(e) { 4093 return !!Te.CSS_UNIT.exec(e); 4094} 4095function sd(e) { 4096 e = e.replace(xc, "").replace(Yc, "").toLowerCase(); 4097 var t = !1; 4098 if (Yn[e]) 4099 e = Yn[e], t = !0; 4100 else if (e == "transparent") 4101 return { 4102 r: 0, 4103 g: 0, 4104 b: 0, 4105 a: 0, 4106 format: "name" 4107 }; 4108 var n; 4109 return (n = Te.rgb.exec(e)) ? { 4110 r: n[1], 4111 g: n[2], 4112 b: n[3] 4113 } : (n = Te.rgba.exec(e)) ? { 4114 r: n[1], 4115 g: n[2], 4116 b: n[3], 4117 a: n[4] 4118 } : (n = Te.hsl.exec(e)) ? { 4119 h: n[1], 4120 s: n[2], 4121 l: n[3] 4122 } : (n = Te.hsla.exec(e)) ? { 4123 h: n[1], 4124 s: n[2], 4125 l: n[3], 4126 a: n[4] 4127 } : (n = Te.hsv.exec(e)) ? { 4128 h: n[1], 4129 s: n[2], 4130 v: n[3] 4131 } : (n = Te.hsva.exec(e)) ? { 4132 h: n[1], 4133 s: n[2], 4134 v: n[3], 4135 a: n[4] 4136 } : (n = Te.hex8.exec(e)) ? { 4137 r: Ae(n[1]), 4138 g: Ae(n[2]), 4139 b: Ae(n[3]), 4140 a: Do(n[4]), 4141 format: t ? "name" : "hex8" 4142 } : (n = Te.hex6.exec(e)) ? { 4143 r: Ae(n[1]), 4144 g: Ae(n[2]), 4145 b: Ae(n[3]), 4146 format: t ? "name" : "hex" 4147 } : (n = Te.hex4.exec(e)) ? { 4148 r: Ae(n[1] + "" + n[1]), 4149 g: Ae(n[2] + "" + n[2]), 4150 b: Ae(n[3] + "" + n[3]), 4151 a: Do(n[4] + "" + n[4]), 4152 format: t ? "name" : "hex8" 4153 } : (n = Te.hex3.exec(e)) ? { 4154 r: Ae(n[1] + "" + n[1]), 4155 g: Ae(n[2] + "" + n[2]), 4156 b: Ae(n[3] + "" + n[3]), 4157 format: t ? "name" : "hex" 4158 } : !1; 4159} 4160function ld(e) { 4161 var t, n; 4162 return e = e || { 4163 level: "AA", 4164 size: "small" 4165 }, t = (e.level || "AA").toUpperCase(), n = (e.size || "small").toLowerCase(), t !== "AA" && t !== "AAA" && (t = "AA"), n !== "small" && n !== "large" && (n = "small"), { 4166 level: t, 4167 size: n 4168 }; 4169} 4170const ud = ["aid"], cd = /* @__PURE__ */ j({ 4171 __name: "brand-color-hue-slider", 4172 props: /* @__PURE__ */ me({ 4173 aid: {} 4174 }, { 4175 modelValue: { 4176 required: !0, 4177 validator: (e) => e >= 0 && e <= 360 4178 }, 4179 modelModifiers: {} 4180 }), 4181 emits: ["update:modelValue"], 4182 setup(e) { 4183 const t = ce(e, "modelValue"); 4184 return (n, o) => oa((m(), b("input", { 4185 "onUpdate:modelValue": o[0] || (o[0] = (a) => t.value = a), 4186 type: "range", 4187 min: "0", 4188 max: "360", 4189 class: "brand-color-hue-slider", 4190 aid: e.aid, 4191 style: Le({ "--brand-color-hue-slider-value": t.value }) 4192 }, null, 12, ud)), [ 4193 [ 4194 bi, 4195 t.value, 4196 void 0, 4197 { number: !0 } 4198 ] 4199 ]); 4200 } 4201}), dd = /* @__PURE__ */ ee(cd, [["__scopeId", "data-v-aa4f238d"]]), md = ["aid"], fd = /* @__PURE__ */ j({ 4202 __name: "brand-color-saturation-brightness-picker", 4203 props: /* @__PURE__ */ me({ 4204 aid: {}, 4205 hue: {} 4206 }, { 4207 saturation: { 4208 required: !0, 4209 validator: (e) => e >= 0 && e <= 1 4210 }, 4211 saturationModifiers: {}, 4212 brightness: { 4213 required: !0, 4214 validator: (e) => e >= 0 && e <= 1 4215 }, 4216 brightnessModifiers: {} 4217 }), 4218 emits: ["update:saturation", "update:brightness"], 4219 setup(e) { 4220 const t = ce(e, "saturation"), n = ce(e, "brightness"), o = e, a = tn("container"); 4221 function i(f) { 4222 const { clientX: u, clientY: v } = "touches" in f ? f.touches[0] : f; 4223 if (!a.value) return; 4224 const c = a.value.getBoundingClientRect(), k = u - c.left, E = v - c.top; 4225 t.value = Math.max(0, Math.min(k / c.width, 1)), n.value = Math.max(0, Math.min(1 - E / c.height, 1)); 4226 } 4227 function r(f) { 4228 i(f), document.addEventListener("pointermove", i), document.addEventListener( 4229 "pointerup", 4230 () => document.removeEventListener( 4231 "pointermove", 4232 i 4233 ), 4234 { once: !0 } 4235 ); 4236 } 4237 const s = R( 4238 () => O({ 4239 h: o.hue, 4240 s: t.value, 4241 v: n.value 4242 }).toHslString() 4243 ); 4244 return (f, u) => (m(), b("div", { 4245 ref_key: "container", 4246 ref: a,
4247 class: "brand-color-saturation-brightness-picker", 4248 aid: e.aid, 4249 style: Le({ background: `hsl(${e.hue}deg 100% 50%)` }), 4250 onPointerdown: r 4251 }, [ 4252 u[0] || (u[0] = l("div", { class: "brand-color-saturation-brightness-picker__white-gradient" }, null, -1)), 4253 u[1] || (u[1] = l("div", { class: "brand-color-saturation-brightness-picker__black-gradient" }, null, -1)), 4254 l("div", { 4255 class: "brand-color-saturation-brightness-picker__cursor", 4256 style: Le({ 4257 insetInlineStart: `${t.value * 100}%`, 4258 insetBlockStart: `${(1 - n.value) * 100}%`, 4259 backgroundColor: s.value 4260 }) 4261 }, null, 4) 4262 ], 44, md)); 4263 } 4264}), pd = /* @__PURE__ */ ee(fd, [["__scopeId", "data-v-c2d2f2d4"]]), gd = { class: "onboarding-brand-color-picker-panel__body" }, bd = { class: "onboarding-brand-color-picker-panel__hex" }, vd = { class: "onboarding-brand-color-picker-panel__hex-label" }, _d = { class: "onboarding-brand-color-picker-panel__hex-row" }, hd = { class: "onboarding-brand-color-picker-panel__actions" }, kd = { class: "onboarding-brand-color-picker-panel__actions-row" }, yd = /* @__PURE__ */ j({ 4265 __name: "onboarding-brand-color-picker-panel", 4266 props: { 4267 initialColor: {}, 4268 aidPrefix: {} 4269 }, 4270 emits: ["done", "cancel"], 4271 setup(e, { emit: t }) { 4272 const n = e, o = `${n.aidPrefix}_CANCEL`, a = `${n.aidPrefix}_DONE`, i = `${n.aidPrefix}_HEX_INPUT`, r = `${n.aidPrefix}_HUE_SLIDER`, s = `${n.aidPrefix}_SATURATION_BRIGHTNESS`, f = t, u = vi({ 4273 h: 0, 4274 s: 0.5, 4275 v: 0.5 4276 }), v = B(O()), c = B(""); 4277 function k(y) { 4278 v.value = O(y), c.value = v.value.toHexString().toUpperCase(); 4279 } 4280 function E(y) { 4281 const L = O(y); 4282 if (!L.isValid()) return; 4283 v.value = L; 4284 const { h: A, s: ae, v: fe } = L.toHsv(); 4285 u.h = A, u.s = ae, u.v = fe, c.value = v.value.toHexString().toUpperCase(); 4286 } 4287 const N = window.getComputedStyle(document.body).getPropertyValue("--color-primary"); 4288 return E(n.initialColor ?? `rgb ${N}`), c.value = v.value.toHexString().toUpperCase(), (y, L) => (m(), b("form", { 4289 class: "onboarding-brand-color-picker-panel", 4290 onSubmit: L[8] || (L[8] = _i((A) => f("done", v.value.toHexString()), ["prevent"])) 4291 }, [ 4292 l("div", gd, [ 4293 x(pd, { 4294 saturation: u.s, 4295 "onUpdate:saturation": [ 4296 L[0] || (L[0] = (A) => u.s = A), 4297 L[2] || (L[2] = (A) => k({ ...u, s: A })) 4298 ], 4299 brightness: u.v, 4300 "onUpdate:brightness": [ 4301 L[1] || (L[1] = (A) => u.v = A), 4302 L[3] || (L[3] = (A) => k({ ...u, v: A })) 4303 ], 4304 aid: s, 4305 hue: u.h, 4306 class: "onboarding-brand-color-picker-panel__saturation" 4307 }, null, 8, ["saturation", "brightness", "hue"]), 4308 x(dd, { 4309 modelValue: u.h, 4310 "onUpdate:modelValue": [ 4311 L[4] || (L[4] = (A) => u.h = A), 4312 L[5] || (L[5] = (A) => k({ ...u, h: A })) 4313 ], 4314 aid: r, 4315 class: "onboarding-brand-color-picker-panel__hue" 4316 }, null, 8, ["modelValue"]), 4317 l("div", bd, [ 4318 l("label", vd, _(d(p).makeSignatureYoursBrandColorPickerHexLabel), 1), 4319 l("div", _d, [ 4320 x(d(Qe), { 4321 modelValue: c.value, 4322 "onUpdate:modelValue": [ 4323 L[6] || (L[6] = (A) => c.value = A), 4324 E 4325 ], 4326 size: "xs", 4327 "hide-bottom-space": "", 4328 class: "onboarding-brand-color-picker-panel__hex-input", 4329 aid: i 4330 }, null, 8, ["modelValue"]), 4331 l("div", { 4332 class: "onboarding-brand-color-picker-panel__preview", 4333 style: Le({ background: v.value.toHslString() }) 4334 }, null, 4) 4335 ]) 4336 ]) 4337 ]), 4338 l("div", hd, [ 4339 l("div", kd, [ 4340 x(d(ke), { 4341 type: "button", 4342 variant: "outlined", 4343 color: "gray-500", 4344 size: "sm", 4345 aid: o, 4346 onClick: L[7] || (L[7] = (A) => f("cancel")) 4347 }, { 4348 default: Q(() => [ 4349 q(_(d(p).makeSignatureYoursBrandColorPickerCancel), 1) 4350 ]), 4351 _: 1 4352 }), 4353 x(d(ke), { 4354 type: "submit", 4355 size: "sm", 4356 aid: a 4357 }, { 4358 default: Q(() => [ 4359 q(_(d(p).makeSignatureYoursBrandColorPickerDone), 1) 4360 ]), 4361 _: 1 4362 }) 4363 ]) 4364 ]) 4365 ], 32)); 4366 } 4367}), Sd = /* @__PURE__ */ ee(yd, [["__scopeId", "data-v-352b07e3"]]), Id = ["aid"], Ed = 8, Ad = /* @__PURE__ */ j({ 4368 __name: "headless-brand-color-picker", 4369 props: /* @__PURE__ */ me({ 4370 aid: {}, 4371 positionAnchorRef: {} 4372 }, { 4373 modelValue: { 4374 required: !0, 4375 default: "" 4376 }, 4377 modelModifiers: {} 4378 }), 4379 emits: /* @__PURE__ */ me(["cancel", "done"], ["update:modelValue"]), 4380 setup(e, { expose: t, emit: n }) { 4381 const o = e, a = ce(e, "modelValue"), i = n, r = B(!1), s = B(0), f = B(null), u = B({}); 4382 let v = 0, c = !1, k, E = []; 4383 function N() { 4384 const g = o.positionAnchorRef; 4385 return g instanceof HTMLElement ? g : g?.value instanceof HTMLElement ? g.value : null; 4386 } 4387 function y() { 4388 const g = N(); 4389 if (typeof g?.getBoundingClientRect != "function") 4390 return; 4391 const S = g.getBoundingClientRect(); 4392 u.value = { 4393 top: `${S.bottom + Ed}px`, 4394 left: `${S.left}px` 4395 }; 4396 } 4397 function L() { 4398 r.value = !1; 4399 } 4400 function A() { 4401 L(), i("cancel"); 4402 } 4403 function ae() { 4404 s.value += 1, v = Date.now() + 400, c = !0, r.value = !0; 4405 } 4406 function fe(g) { 4407 const S = []; 4408 let P = g.parentElement; 4409 for (; P; ) { 4410 const { overflowY: V } = getComputedStyle(P);
4411 (V === "auto" || V === "scroll") && S.push(P), P = P.parentElement; 4412 } 4413 return S; 4414 } 4415 function C() { 4416 Date.now() < v || A(); 4417 } 4418 function M() { 4419 E.forEach((g) => { 4420 g.removeEventListener("scroll", C); 4421 }), E = []; 4422 } 4423 function se(g) { 4424 if (c) { 4425 c = !1; 4426 return; 4427 } 4428 const S = N(); 4429 if (!r.value) 4430 return; 4431 const P = g.target; 4432 P instanceof Node && (S?.contains(P) || f.value?.contains(P) || A()); 4433 } 4434 function W() { 4435 k !== void 0 && (clearTimeout(k), k = void 0); 4436 } 4437 X(r, async (g) => { 4438 if (!g) { 4439 W(), document.removeEventListener("click", se), M(); 4440 return; 4441 } 4442 await jt(), y(), W(), k = setTimeout(() => { 4443 document.addEventListener("click", se), k = void 0; 4444 }, 0); 4445 const S = N(); 4446 S && (E = fe(S), E.forEach((P) => { 4447 P.addEventListener("scroll", C, { passive: !0 }); 4448 })); 4449 }), aa(() => { 4450 W(), document.removeEventListener("click", se), M(); 4451 }); 4452 function he(g) { 4453 a.value = g.toUpperCase(), L(), i("done"); 4454 } 4455 function be() { 4456 A(); 4457 } 4458 return t({ 4459 openColorPicker: ae 4460 }), (g, S) => (m(), Y(na, { to: "body" }, [ 4461 r.value ? (m(), b("div", { 4462 key: 0, 4463 ref_key: "popupRef", 4464 ref: f, 4465 class: "headless-brand-color-picker", 4466 style: Le(u.value), 4467 aid: `${e.aid}_POPUP` 4468 }, [ 4469 (m(), Y(Sd, { 4470 key: s.value, 4471 "initial-color": a.value || void 0, 4472 "aid-prefix": e.aid, 4473 onDone: he, 4474 onCancel: be 4475 }, null, 8, ["initial-color", "aid-prefix"])) 4476 ], 12, Id)) : D("", !0) 4477 ])); 4478 } 4479}), Od = /* @__PURE__ */ ee(Ad, [["__scopeId", "data-v-d797977f"]]), Ld = {}, Cd = { 4480 class: "brand-color-plus-icon", 4481 xmlns: "http://www.w3.org/2000/svg", 4482 width: "19", 4483 height: "19", 4484 viewBox: "0 0 19 19", 4485 fill: "none", 4486 "aria-hidden": "true" 4487}; 4488function wd(e, t) { 4489 return m(), b("svg", Cd, [...t[0] || (t[0] = [ 4490 l("path", { 4491 d: "M9.67742 0.645161C9.67742 0.290323 9.3871 0 9.03226 0C8.67742 0 8.3871 0.290323 8.3871 0.645161V8.3871H0.645161C0.290323 8.3871 0 8.67742 0 9.03226C0 9.3871 0.290323 9.67742 0.645161 9.67742H8.3871V17.4194C8.3871 17.7742 8.67742 18.0645 9.03226 18.0645C9.3871 18.0645 9.67742 17.7742 9.67742 17.4194V9.67742H17.4194C17.7742 9.67742 18.0645 9.3871 18.0645 9.03226C18.0645 8.67742 17.7742 8.3871 17.4194 8.3871H9.67742V0.645161Z", 4492 fill: "var(--Gray-500, #2D2E30)" 4493 }, null, -1) 4494 ])]); 4495} 4496const Gn = /* @__PURE__ */ ee(Ld, [["render", wd], ["__scopeId", "data-v-2cf6e33b"]]), Rd = ["aria-label"], Td = ["aria-checked", "aria-label", "aid", "onClick"], Nd = { 4497 key: 0, 4498 class: "brand-color-circle-picker__frame" 4499}, Pd = ["aria-checked", "aria-label", "aid"], Fd = { 4500 key: 0, 4501 class: "brand-color-circle-picker__frame" 4502}, Bd = { 4503 key: 1, 4504 class: "brand-color-circle-picker__frame" 4505}, Md = { class: "brand-color-circle-picker__add-inner" }, Ud = { 4506 key: 2, 4507 class: "brand-color-circle-picker__frame brand-color-circle-picker__frame--add" 4508}, Dd = { class: "brand-color-circle-picker__add-inner" }, xd = /* @__PURE__ */ j({ 4509 __name: "brand-color-circle-picker", 4510 props: /* @__PURE__ */ me({ 4511 options: {}, 4512 aid: {} 4513 }, { 4514 modelValue: { default: null }, 4515 modelModifiers: {} 4516 }), 4517 emits: /* @__PURE__ */ me(["optionSelect"], ["update:modelValue"]), 4518 setup(e, { emit: t }) { 4519 const n = ce(e, "modelValue"), o = e, a = t, i = R( 4520 () => o.options.filter((k) => k.id !== ye) 4521 ), r = R( 4522 () => o.options.find((k) => k.id === ye) 4523 ), s = R( 4524 () => n.value === ye 4525 ), f = R(() => { 4526 if (s.value) 4527 return r.value?.previewColor; 4528 }); 4529 function u(k) { 4530 if (k === n.value && k === ye) { 4531 a("optionSelect", k); 4532 return; 4533 } 4534 k !== n.value && (n.value = k, a("optionSelect", k)); 4535 } 4536 function v(k) { 4537 return k.previewColor ?? k.detail; 4538 } 4539 function c(k) { 4540 return n.value === k; 4541 } 4542 return (k, E) => (m(), b("div", { 4543 class: "brand-color-circle-picker", 4544 role: "radiogroup", 4545 "aria-label": d(p).makeSignatureYoursBrandColorLabel 4546 }, [ 4547 (m(!0), b(de, null, Pe(i.value, (N) => (m(), b("button", { 4548 key: N.id, 4549 type: "button", 4550 role: "radio", 4551 class: H(["brand-color-circle-picker__swatch", { 4552 "brand-color-circle-picker__swatch--selected": c( 4553 N.id 4554 ) 4555 }]), 4556 "aria-checked": c(N.id), 4557 "aria-label": N.label, 4558 aid: `${e.aid}_${N.id}`, 4559 onClick: (y) =>
4559 u(N.id) 4560 }, [ 4561 c(N.id) ? (m(), b("span", Nd, [ 4562 l("span", { 4563 class: "brand-color-circle-picker__fill", 4564 style: Le({ backgroundColor: v(N) }) 4565 }, null, 4) 4566 ])) : (m(), b("span", { 4567 key: 1, 4568 class: "brand-color-circle-picker__fill brand-color-circle-picker__fill--unselected", 4569 style: Le({ backgroundColor: v(N) }) 4570 }, null, 4)) 4571 ], 10, Td))), 128)), 4572 r.value ? (m(), b("button", { 4573 key: 0, 4574 type: "button", 4575 role: "radio", 4576 class: H(["brand-color-circle-picker__swatch brand-color-circle-picker__swatch--add", { 4577 "brand-color-circle-picker__swatch--selected": s.value 4578 }]), 4579 "aria-checked": s.value, 4580 "aria-label": r.value.label, 4581 aid: `${e.aid}_${d(ye)}`, 4582 onClick: E[0] || (E[0] = (N) => u(d(ye))) 4583 }, [ 4584 s.value && f.value ? (m(), b("span", Fd, [ 4585 l("span", { 4586 class: "brand-color-circle-picker__fill", 4587 style: Le({ backgroundColor: f.value }) 4588 }, null, 4) 4589 ])) : s.value ? (m(), b("span", Bd, [ 4590 l("span", Md, [ 4591 x(Gn) 4592 ]) 4593 ])) : (m(), b("span", Ud, [ 4594 l("span", Dd, [ 4595 x(Gn) 4596 ]) 4597 ])) 4598 ], 10, Pd)) : D("", !0) 4599 ], 8, Rd)); 4600 } 4601}), Yd = /* @__PURE__ */ ee(xd, [["__scopeId", "data-v-e1971b4d"]]), Gd = ["src"], Wd = { 4602 key: 1, 4603 class: "logo-option-preview__placeholder" 4604}, Vd = /* @__PURE__ */ j({ 4605 __name: "logo-option-preview", 4606 props: { 4607 option: {}, 4608 layout: { default: "compact" } 4609 }, 4610 setup(e) { 4611 const t = e, n = R( 4612 () => Qn({ 4613 previewSrc: t.option?.previewSrc, 4614 rawLogo: t.option?.rawLogo, 4615 previewInlineSvg: t.option?.previewInlineSvg 4616 }) 4617 ); 4618 return (o, a) => (m(), b("span", { 4619 class: H(["logo-option-preview", { 4620 "logo-option-preview--fill": e.layout === "fill" 4621 }]), 4622 "aria-hidden": "true" 4623 }, [ 4624 n.value ? (m(), b("img", { 4625 key: 0, 4626 src: n.value, 4627 alt: "", 4628 referrerpolicy: "no-referrer", 4629 class: "logo-option-preview__image" 4630 }, null, 8, Gd)) : (m(), b("span", Wd)) 4631 ], 2)); 4632 } 4633}), xo = /* @__PURE__ */ ee(Vd, [["__scopeId", "data-v-a9bd5d85"]]), zd = ["aria-label"], Kd = ["aria-checked", "aria-label", "aid", "onClick"], Hd = { 4634 key: 0, 4635 class: "logo-card-picker__check-badge", 4636 "aria-hidden": "true" 4637}, jd = ["aria-checked", "aria-label", "aid"], Qd = { 4638 key: 0, 4639 class: "logo-card-picker__check-badge", 4640 "aria-hidden": "true" 4641}, Jd = { 4642 key: 2, 4643 class: "logo-card-picker__add" 4644}, Xd = { class: "logo-card-picker__add-frame" }, qd = { class: "logo-card-picker__add-inner" }, Zd = /* @__PURE__ */ j({ 4645 __name: "logo-card-picker", 4646 props: /* @__PURE__ */ me({ 4647 options: {}, 4648 aid: {}, 4649 hasUploadedLogo: { type: Boolean } 4650 }, { 4651 modelValue: { default: null }, 4652 modelModifiers: {} 4653 }), 4654 emits: /* @__PURE__ */ me(["optionSelect"], ["update:modelValue"]), 4655 setup(e, { emit: t }) { 4656 const n = ce(e, "modelValue"), o = e, a = t, i = R( 4657 () => zs(o.options) 4658 ), r = R( 4659 () => o.options.find((k) => k.id === $) 4660 ), s = R( 4661 () => n.value === $ 4662 ), f = R(() => i.value.length === 0); 4663 function u(k) { 4664 return n.value === k; 4665 } 4666 function v(k) { 4667 return k.previewSrc?.trim() ? f.value ? !!o.hasUploadedLogo : s.value : !1; 4668 } 4669 function c(k) { 4670 if (k === n.value && k === $) { 4671 a("optionSelect", k); 4672 return; 4673 } 4674 k !== n.value && (n.value = k, a("optionSelect", k)); 4675 } 4676 return (k, E) => (m(), b("div", { 4677 class: H(["logo-card-picker", { "logo-card-picker--upload-only": f.value }]), 4678 role: "radiogroup", 4679 "aria-label": d(p).makeSignatureYoursImageLabel 4680 }, [ 4681 (m(!0), b(de, null, Pe(i.value, (N) => (m(), b("button", { 4682 key: N.id, 4683 type: "button", 4684 role: "radio", 4685 class: H(["logo-card-picker__card", { 4686 "logo-card-picker__card--selected": u(N.id) 4687 }]), 4688 "aria-checked": u(N.id), 4689 "aria-label": N.label, 4690 aid: `${e.aid}_${N.id}`, 4691 onClick: (y) => c(N.id) 4692 }, [ 4693 u(N.id) ? (m(), b("span", Hd, [...E[1] || (E[1] = [ 4694 l("span", { class: "fa-solid fa-check" }, null, -1) 4695 ])])) : D("", !0), 4696 x(xo, { 4697 option: N, 4698 layout: "fill", 4699 class: "logo-card-picker__preview" 4700 }, null, 8, ["option"]) 4701 ], 10, Kd))), 128)), 4702 r.value ? (m(), b("button", { 4703 key: 0, 4704 type: "button", 4705 role: "radio", 4706 class: H(["logo-card-picker__card logo-card-picker__card--upload", { 4707 "logo-card-picker__card--selected": s.value 4708 }]), 4709 "aria-checked": s.value, 4710 "aria-label": r.value.label, 4711 aid: `${e.aid}_${d($)}`, 4712 onClick: E[0] || (E[0] = (N) => c(d($))) 4713 }, [ 4714 s.value ? (m(), b("span", Qd, [...E[2] || (E[2] = [ 4715 l("span", { class: "fa-solid fa-check" }, null, -1) 4716 ])])) : D("", !0), 4717 v(r.value) ? (m(), Y(xo, { 4718 key: 1, 4719 option: r.value, 4720 layout: "fill", 4721 class: "logo-card-picker__preview" 4722 }, null, 8, ["option"])) : (m(), b("span", Jd, [ 4723 l("span", Xd, [ 4724 l("span", qd, [ 4725 x(Gn) 4726 ]) 4727 ]) 4728 ])) 4729 ], 10, jd)) : D("", !0) 4730 ], 10, zd)); 4731 } 4732}), $d = /* @__PURE__ */ ee(Zd, [["__scopeId", "data-v-ab96eabe"]]), em = { class: "social-links-fields" }, tm = /* @__PURE__ */ j({ 4733 __name: "social-links-fields", 4734 props: { 4735 instagramLink: { default: "" }, 4736 instagramLinkModifiers: {}, 4737 facebookLink: { default: "" }, 4738 facebookLinkModifiers: {}, 4739 linkedinLink: { default: "" }, 4740 linkedinLinkModifiers: {} 4741 }, 4742 emits: /* @__PURE__ */ me(["fieldEdit", "fieldBlur"], ["update:instagramLink", "update:facebookLink", "update:linkedinLink"]), 4743 setup(e, { emit: t }) { 4744 const n = t, o = ce(e, "instagramLink"), a = ce(e, "facebookLink"), i = ce(e, "linkedinLink"), r = [ 4745 { 4746 key: "instagram", 4747 field: "instagramLink", 4748 iconClass: "fa-instagram", 4749 placeholder: p.makeSignatureYoursInstagramPlaceholder, 4750 model: o 4751 }, 4752 { 4753 key: "facebook", 4754 field: "facebookLink", 4755 iconClass: "fa-facebook-f", 4756 placeholder: p.makeSignatureYoursFacebookPlaceholder, 4757 model: a 4758 }, 4759 { 4760 key: "linkedin", 4761 field: "linkedinLink", 4762 iconClass: "fa-linkedin-in", 4763 placeholder: p.makeSignatureYoursLinkedinPlaceholder, 4764 model: i 4765 } 4766 ]; 4767 function s(u) { 4768 n("fieldEdit", u); 4769 } 4770 function f(u) { 4771 n("fieldBlur", u); 4772 } 4773 return (u, v) => (m(), b("div", em, [ 4774 (m(), b(de, null, Pe(r, (c) => l("div", { 4775 key: c.key, 4776 class: "social-links-fields__row" 4777 }, [ 4778 l("span", { 4779 class: H(["social-links-fields__icon-circle", `social-links-fields__icon-circle--${c.key}`]), 4780 "aria-hidden": "true" 4781 }, [ 4782 l("i", { 4783 class: H(["fa-brands text-lg", c.iconClass]) 4784 }, null, 2) 4785 ], 2), 4786 x(d(Qe), {
4787 modelValue: c.model.value, 4788 "onUpdate:modelValue": [(k) => c.model.value = k, (k) => s(c.field)], 4789 modelModifiers: { trim: !0 }, 4790 aid: `ONBOARDING_SOCIAL_${c.key.toUpperCase()}`, 4791 class: "social-links-fields__input", 4792 size: "lg", 4793 "hide-bottom-space": "", 4794 placeholder: c.placeholder, 4795 onBlur: (k) => f(c.field) 4796 }, null, 8, ["modelValue", "onUpdate:modelValue", "aid", "placeholder", "onBlur"]) 4797 ])), 64)) 4798 ])); 4799 } 4800}), nm = /* @__PURE__ */ ee(tm, [["__scopeId", "data-v-6ee85424"]]); 4801function om(e, t, n) { 4802 if (!e?.length) return e; 4803 const o = e.findIndex((i) => i.id === t); 4804 if (o === -1) return e; 4805 const a = [...e]; 4806 return a[o] = { ...a[o], remoteLogoReachable: n }, a; 4807} 4808function Yo(e) { 4809 const t = e.makeSignatureYours; 4810 if (!t?.logoOptionId || t.logoOptionId === $) 4811 return; 4812 const n = e.brandKitLogoOptions ?? [], o = n.find((i) => i.id === t.logoOptionId); 4813 if (o && Mt(o)) 4814 return; 4815 const a = n.find( 4816 (i) => Bt(i.id) && Mt(i) 4817 ); 4818 t.logoOptionId = a?.id ?? $; 4819} 4820function am(e, t) { 4821 let n = 0; 4822 const o = /* @__PURE__ */ new Set(); 4823 X( 4824 t, 4825 (a) => { 4826 const i = ++n; 4827 (async () => { 4828 for (const r of a) { 4829 if (!ya(r) || r.remoteLogoReachable !== void 0) continue; 4830 const s = r.rawLogo?.trim(); 4831 if (!s) continue; 4832 const f = await Ks(s); 4833 if (i !== n) return; 4834 if (!f && !o.has(s)) { 4835 const v = e.value.userBasicInfo.companyWebsite?.trim(), c = Number( 4836 r.id.slice(_t.length) 4837 ); 4838 v && Number.isInteger(c) && (du({ websiteUrl: v, logoUrl: s, slot: c }), o.add(s)); 4839 } 4840 const u = om( 4841 e.value.brandKitLogoOptions, 4842 r.id, 4843 f 4844 ); 4845 u && (e.value.brandKitLogoOptions = u), Yo(e.value); 4846 } 4847 })(); 4848 }, 4849 { immediate: !0 } 4850 ), X( 4851 () => [ 4852 e.value.brandKitLogoOptions, 4853 e.value.makeSignatureYours?.logoOptionId 4854 ], 4855 () => { 4856 Yo(e.value); 4857 }, 4858 { deep: !0 } 4859 ); 4860} 4861const im = { class: "make-signature-yours-step" }, rm = { class: "text-3xl font-semibold form-header make-signature-yours-step__header" }, sm = { 4862 key: 1, 4863 class: "make-signature-yours-step__content", 4864 aid: "ONBOARDING_MAKE_SIGNATURE_YOURS_CONTENT" 4865}, lm = { class: "make-signature-yours-step__logo-type" }, um = { class: "make-signature-yours-step__field-label make-signature-yours-step__field-label--section" }, cm = { class: "make-signature-yours-step__brand-color" }, dm = { class: "make-signature-yours-step__field-label make-signature-yours-step__field-label--section" }, mm = { 4866 class: "make-signature-yours-step__social-links", 4867 aid: "ONBOARDING_MAKE_SIGNATURE_YOURS_SOCIAL_LINKS" 4868}, fm = { class: "make-signature-yours-step__field-label make-signature-yours-step__field-label--section" }, At = "make_signature_yours", pm = /* @__PURE__ */ j({ 4869 __name: "make-signature-yours", 4870 props: { 4871 modelValue: { 4872 required: !0 4873 }, 4874 modelModifiers: {} 4875 }, 4876 emits: /* @__PURE__ */ me(["enableToContinue", "logoUploaded"], ["update:modelValue"]), 4877 setup(e, { emit: t }) { 4878 const n = t, o = ce(e, "modelValue"), a = tn("headless-logo-upload"), i = B(0), r = B(null), s = B(null), f = B(null), u = B(null), v = B(!1), c = B({ 4879 optionId: null, 4880 brandColor: "" 4881 }), k = B(null), E = B(!1), N = /* @__PURE__ */ new Set(), y = R( 4882 () => o.value.makeSignatureYours 4883 ), L = R(() => !!y.value), A = R( 4884 () => Ya(o.value) 4885 ), ae = R( 4886 () => an(o.value).map((w) => w.id !== $ || !o.value.companyLogo ? w : { 4887 ...w, 4888 previewSrc: o.value.companyLogo 4889 }) 4890 ), fe = R( 4891 () => !!o.value.companyLogo?.trim() 4892 ), C = R( 4893 () => rn(o.value).map( 4894 (w) => w.id !== ye || !y.value.brandColor ? w : { 4895 ...w, 4896 previewColor: y.value.brandColor, 4897 detail: y.value.brandColor 4898 } 4899 ) 4900 ), M = R( 4901 () => Xn(o.value) 4902 ), se = R( 4903 () => qn(o.value) 4904 ), W = R({ 4905 get() { 4906 return y.value.logoOptionId; 4907 }, 4908 set(w) { 4909 if (w) { 4910 if (w === y.value.logoOptionId) { 4911 w === $ && P(); 4912 return; 4913 } 4914 V(w); 4915 } 4916 } 4917 }); 4918 function he(w) { 4919 if (w) { 4920 if (w === $) { 4921 o.value.companyLogo?.trim() && (f.value = $); 4922 return; 4923 } 4924 f.value = w; 4925 } 4926 } 4927 function be() { 4928 c.value = { 4929 optionId: y.value.brandColorOptionId, 4930 brandColor: y.value.brandColor 4931 }; 4932 } 4933 function g() { 4934 i.value += 1, jt(() => { 4935 requestAnimationFrame(() => { 4936 a.value?.openUploader(); 4937 }); 4938 }); 4939 } 4940 function S(w) { 4941 if (Re(o.value, "logoOptionId"), w === $) { 4942 Re(o.value, "companyLogo"); 4943 return; 4944 } 4945 Bt(w) && Re(o.value, "companyLogo"); 4946 } 4947 function P() { 4948 v.value || (u.value = f.value, v.value = !0, g()); 4949 } 4950 function V(w) { 4951 if (w === $) { 4952 P(); 4953 return; 4954 } 4955 v.value = !1, u.value = null, y.value.logoOptionId = w, S(w), f.value = w, o.value.companyLogo = void 0; 4956 } 4957 function T(w) { 4958 W.value = w; 4959 } 4960 function re() { 4961 jt(() => { 4962 requestAnimationFrame(() => { 4963 s.value?.openColorPicker(); 4964 }); 4965 }); 4966 } 4967 function G(w, Z) { 4968 N.has(w) || (N.add(w), mu(Z)); 4969 } 4970 function J() { 4971 v.value = !1, u.value = null, M.value ? y.value.logoOptionId = $ : y.value.logoOptionId = null, Re(o.value, "logoOptionId"), Re(o.value, "companyLogo"), f.value = $, G("make_signature_yours:upload_logo", { 4972 step: At, 4973 field: "upload_logo" 4974 }), n("logoUploaded"); 4975 } 4976 function Ye() { 4977 v.value && (v.value = !1, u.value = null); 4978 } 4979 function Xe(w) { 4980 Re(o.value, "brandColorOptionId"), (w === ye || _a(w)) && Re(o.value, "brandColor"); 4981 } 4982 function qe(w) { 4983 if (w === ye) { 4984 k.value = { 4985 ...c.value 4986 }, E.value = !0, re(); 4987 return; 4988 } 4989 Xe(w), y.value.brandColor = "", c.value = { 4990 optionId: w, 4991 brandColor: "" 4992 }; 4993 } 4994 function st() { 4995 if (!E.value) return; 4996 E.value = !1; 4997 const w = k.value; 4998 k.value = null, w?.optionId && (y.value.brandColorOptionId = w.optionId, y.value.brandColor = w.brandColor, be()); 4999 } 5000 function lt() { 5001 E.value = !1, k.value = null, y.value.brandColorOptionId = ye, Re(o.value, "brandColorOptionId"), Re(o.value, "brandColor"), G("make_signature_yours:color_picker", { 5002 step: At, 5003 field: "color_picker" 5004 }), be(); 5005 } 5006 function ut(w) { 5007 Re(o.value, w); 5008 } 5009 function Ge(w) { 5010 const Z = y.value[w] ?? ""; 5011 if (!Ca(o.value, w, Z)) return; 5012 const ie = Oa[w], h = Vl(ie); 5013 G(`make_signature_yours:${h}`, { 5014 step: At, 5015 field: h 5016 }); 5017 } 5018 function yt() { 5019 Re(o.value, "brandColor"), y.value.brandColorOptionId = null, G("make_signature_yours:color_picker", { 5020 step: At, 5021 field: "color_picker" 5022 }); 5023 } 5024 function St() { 5025 n("enableToContinue", L.value && !A.value); 5026 } 5027 return am(o, ae), X( 5028 () => y.value.logoOptionId, 5029 (w) => { 5030 he(w); 5031 }, 5032 { immediate: !0 } 5033 ), X( 5034 () => [ 5035 y.value.brandColorOptionId, 5036 y.value.brandColor 5037 ], 5038 () => { 5039 E.value || be(); 5040 }, 5041 { immediate: !0 } 5042 ), X( 5043 () => o.value.brandKitFetchStatus, 5044 () => { 5045 St(); 5046 } 5047 ), X([L, A], () => { 5048 St(); 5049 }), De(() => { 5050 fu({ step: At }), Va(o.value), no(o.value), xa(o.value), on( 5051 o.value, 5052 "makeSignatureYours", 5053 L.value 5054 ), St(); 5055 }), (w, Z) => (m(), b("div", im, [ 5056 l("div", rm, _(d(p).makeSignatureYoursHeader), 1), 5057 A.value ? (m(), Y(Dc, { 5058 key: 0, 5059 "fetch-started-at": o.value.brandKitFetchStartedAt 5060 }, null, 8, ["fetch-started-at"])) : (m(), b("div", sm, [ 5061 l("div", lm, [ 5062 l("label", um, _(d(p).makeSignatureYoursImageLabel), 1), 5063 M.value ? (m(), Y($d, { 5064 key: 0, 5065 modelValue: W.value, 5066 "onUpdate:modelValue": Z[0] || (Z[0] = (ie) => W.value = ie), 5067 aid: "ONBOARDING_LOGO_TYPE", 5068 options: ae.value, 5069 "has-uploaded-logo": fe.value, 5070 onOptionSelect: T 5071 }, null, 8, ["modelValue", "options", "has-uploaded-logo"])) : D("", !0), 5072 M.value ? (m(), Y(Bn, { 5073 key: i.value, 5074 ref: "headless-logo-upload", 5075 modelValue: o.value.companyLogo, 5076 "onUpdate:modelValue": Z[1] || (Z[1] = (ie) => o.value.companyLogo = ie), 5077 headless: "", 5078 "uploader-ctx-name": "onboarding-logo-uploader", 5079 "aid-prefix": "ONBOARDING_COMPANY_LOGO", 5080 onUpload: J, 5081 onCancel: Ye 5082 }, null, 8, ["modelValue"])) : (m(), Y(Bn, { 5083 key: 2, 5084 modelValue: o.value.companyLogo, 5085 "onUpdate:modelValue": Z[2] || (Z[2] = (ie) => o.value.companyLogo = ie), 5086 "uploader-ctx-name": "onboarding-logo-uploader", 5087 "aid-prefix": "ONBOARDING_COMPANY_LOGO", 5088 onUpload: J 5089 }, null, 8, ["modelValue"])) 5090 ]), 5091 l("div", cm, [ 5092 l("label", dm, _(d(p).makeSignatureYoursBrandColorLabel), 1), 5093 se.value ? (m(), b("div", { 5094 key: 0, 5095 ref_key: "brandColorPickerAnchorEl", 5096 ref: r, 5097 class: "make-signature-yours-step__brand-color-picker" 5098 }, [ 5099 x(Yd, {
5100 modelValue: y.value.brandColorOptionId, 5101 "onUpdate:modelValue": Z[3] || (Z[3] = (ie) => y.value.brandColorOptionId = ie), 5102 aid: "ONBOARDING_BRAND_COLOR", 5103 options: C.value, 5104 onOptionSelect: qe 5105 }, null, 8, ["modelValue", "options"]) 5106 ], 512)) : (m(), Y(d(Ki), { 5107 key: 1, 5108 modelValue: y.value.brandColor, 5109 "onUpdate:modelValue": [ 5110 Z[4] || (Z[4] = (ie) => y.value.brandColor = ie), 5111 yt 5112 ], 5113 aid: "ONBOARDING_BRAND_COLOR" 5114 }, null, 8, ["modelValue"])), 5115 se.value ? (m(), Y(Od, { 5116 key: 2, 5117 ref_key: "brandColorPickerRef", 5118 ref: s, 5119 modelValue: y.value.brandColor, 5120 "onUpdate:modelValue": Z[5] || (Z[5] = (ie) => y.value.brandColor = ie), 5121 "position-anchor-ref": r.value, 5122 aid: "ONBOARDING_CUSTOM_BRAND_COLOR", 5123 onCancel: st, 5124 onDone: lt 5125 }, null, 8, ["modelValue", "position-anchor-ref"])) : D("", !0) 5126 ]), 5127 l("div", mm, [ 5128 l("label", fm, _(d(p).makeSignatureYoursSocialLinksLabel), 1), 5129 x(nm, { 5130 "instagram-link": y.value.instagramLink, 5131 "onUpdate:instagramLink": Z[6] || (Z[6] = (ie) => y.value.instagramLink = ie), 5132 "facebook-link": y.value.facebookLink, 5133 "onUpdate:facebookLink": Z[7] || (Z[7] = (ie) => y.value.facebookLink = ie), 5134 "linkedin-link": y.value.linkedinLink, 5135 "onUpdate:linkedinLink": Z[8] || (Z[8] = (ie) => y.value.linkedinLink = ie), 5136 onFieldEdit: ut, 5137 onFieldBlur: Ge 5138 }, null, 8, ["instagram-link", "facebook-link", "linkedin-link"]) 5139 ]) 5140 ])) 5141 ])); 5142 } 5143}), gm = /* @__PURE__ */ ee(pm, [["__scopeId", "data-v-ad1ec844"]]), en = { 5144 mainPage: "main_page", 5145 skipOfferModal: "skip_offer_modal" 5146}, oo = { 5147 view: "onboarding_webmail_final_step_view", 5148 offer50OffClicked: "onboarding_webmail_offer_50off_clicked", 5149 offerSkipClicked: "onboarding_webmail_offer_skip_clicked" 5150}; 5151function bm() { 5152 oe({ 5153 eventName: oo.view 5154 }); 5155} 5156function Ha(e) { 5157 oe({ 5158 eventName: oo.offer50OffClicked, 5159 eventAttributes: { source: e } 5160 }); 5161} 5162function ja(e) { 5163 oe({ 5164 eventName: oo.offerSkipClicked, 5165 eventAttributes: { source: e } 5166 }); 5167} 5168const vm = 50, _m = { 5169 sectionTitle: "Pro+ includes:", 5170 originalMonthlyDisplay: "$9.00", 5171 discountedMonthlyDisplay: "$4.50", 5172 discountPercent: vm, 5173 originalAnnualDisplay: "$108.00", 5174 discountedAnnualDisplay: "$54", 5175 intervalSuffix: "/month" 5176}, hm = [ 5177 { 5178 icon: "fa-solid fa-sparkles", 5179 text: "AI Signature Designer" 5180 }, 5181 { 5182 text: "Your professional email signature" 5183 }, 5184 { 5185 text: "Rich template gallery & Signature studio" 5186 }, 5187 { 5188 text: "One-click Gmail and Outlook sync" 5189 } 5190]; 5191var Go; 5192(function(e) { 5193 e[e.UPGRADE = 0] = "UPGRADE", e[e.DOWNGRADE = 1] = "DOWNGRADE", e[e.ONTOP = 2] = "ONTOP", e[e.UPGRADE_ASSISTED = 3] = "UPGRADE_ASSISTED", e[e.DOWNGRADE_ASSISTED = 4] = "DOWNGRADE_ASSISTED", e[e.CANCEL = -1] = "CANCEL", e[e.TERMINATE = -2] = "TERMINATE", e[e.CANCEL_ASSISTED = -3] = "CANCEL_ASSISTED"; 5194})(Go || (Go = {})); 5195var Wo; 5196(function(e) { 5197 e[e.PURCHASE = 1] = "PURCHASE", e[e.OFFER = 2] = "OFFER"; 5198})(Wo || (Wo = {})); 5199var Vo; 5200(function(e) { 5201 e[e.QUOTA_ALL = 0] = "QUOTA_ALL", e[e.QUOTA_AI_CREDITS = 1] = "QUOTA_AI_CREDITS", e[e.QUOTA_LINKS = 2] = "QUOTA_LINKS", e[e.QUOTA_QR_CODES = 3] = "QUOTA_QR_CODES", e[e.QUOTA_SURVEY_RESPONSES = 4] = "QUOTA_SURVEY_RESPONSES", e[e.QUOTA_ANALYTICS_HISTORY = 5] = "QUOTA_ANALYTICS_HISTORY", e[e.QUOTA_SURVEY_IMPORTS = 6] = "QUOTA_SURVEY_IMPORTS"; 5202})(Vo || (Vo = {})); 5203var zo; 5204(function(e) { 5205 e[e.SUCCESS = 0] = "SUCCESS", e[e.CAMPAIGN_NOT_FOUND = 1] = "CAMPAIGN_NOT_FOUND", e[e.CAMPAIGN_EXPIRED = 2] = "CAMPAIGN_EXPIRED", e[e.PLAN_NOT_FOUND = 3] = "PLAN_NOT_FOUND", e[e.PLAN_INELIGIBLE = 4] = "PLAN_INELIGIBLE"; 5206})(zo || (zo = {})); 5207var Ko; 5208(function(e) { 5209 e[e.PROMOTION_CAMPAIGN_RESOLUTION_STATUS_UNSPECIFIED = 0] = "PROMOTION_CAMPAIGN_RESOLUTION_STATUS_UNSPECIFIED", e[e.NOT_ELIGIBLE = 1] = "NOT_ELIGIBLE", e[e.CONTROL = 2] = "CONTROL", e[e.TREATMENT = 3] = "TREATMENT", e[e.DEEP_LINK_ACTIVE = 4] = "DEEP_LINK_ACTIVE"; 5210})(Ko || (Ko = {})); 5211var Ho; 5212(function(e) { 5213 e[e.UNSPECIFIED = 0] = "UNSPECIFIED", e[e.PERCENTAGE = 1] = "PERCENTAGE", e[e.FIXED = 2] = "FIXED"; 5214})(Ho || (Ho = {})); 5215const km = [ 5216 "createSubscription", 5217 "getBillingInfo", 5218 "getInvoices", 5219 "getInvoicePdf", 5220 "getPlanInfo", 5221 "getPlanTransitions", 5222 "getCancelTransitions", 5223 "getPurchasePreview", 5224 "getPurchasePreviewUpdate", 5225 "getSubscriptions", 5226 "listComposedPlans", 5227 "updateSubscription", 5228 "updateBillingInfo", 5229 "validateCoupon", 5230 "getCountries", 5231 "validateCountryRequirements", 5232 "cancelSubscription", 5233 "terminateSubscription", 5234 "contactUs", 5235 "hasPendingChangesForProductLine", 5236 "checkAddonsMatchRecurly", 5237 "getQuotaUsage", 5238 "getBillingCampaignByShortCode", 5239 "recordBillingCampaignUsage", 5240 "resolvePromotionCampaign" 5241], ym = "ws1/billing-gateway", Qa = je({ 5242 baseRoute: ym, 5243 methods: km, 5244 sdkPackageName: "@msl/billing-gateway-sdk", 5245 requireAuth: !0 5246}), He = "webmailProPlusOffer", ao = "webmailProPlusOfferUnlocked"; 5247function jo(e) { 5248 const t = Fi( 5249 Bi(e?.experienceState, { 5250 companySize: e?.companySize, 5251 creatingFor: e?.creatingFor 5252 }) 5253 ) ? Ln.gallery : Ln.setup; 5254 return sa( 5255 `/v1/purchase/payment?campaign=${Qi}`, 5256 t 5257 ); 5258} 5259const Ja = "OTHER", un = "selectEmailPlatform", Sm = "makeSignatureYours", Im = /* @__PURE__ */ new Set([ 5260 un, 5261 Sm 5262]); 5263function yn(e) { 5264 return e.backendScreens.filter( 5265 (t) => t !== He 5266 ); 5267} 5268function Em() { 5269 try { 5270 return sessionStorage.getItem(ao) === "true"; 5271 } catch { 5272 return !1; 5273 } 5274} 5275function Am() { 5276 sessionStorage.setItem(ao, "true"); 5277}
5278function Om() { 5279 sessionStorage.removeItem(ao); 5280} 5281function Lm(e, t) { 5282 if (!t.includes(He) || !io(t) || !Im.has(e)) return !1; 5283 const n = t.indexOf( 5284 He 5285 ), o = t.indexOf(e); 5286 return !(o < 0 || o >= n || t.includes(un) && !Em()); 5287} 5288function io(e) { 5289 return e?.length ? e.includes("bookADemoOrSkip") || e.includes(He) : !1; 5290} 5291function Cm(e) { 5292 if (e.setWorkspaceComplete || e.experienceState !== Pt.GENERATOR_PRO) return !1; 5293 const t = e.backendScreens; 5294 if (!t?.length) return !1; 5295 const n = t.indexOf(un); 5296 if (n !== 0) return !1; 5297 const o = t.indexOf(He); 5298 return o >= 0 ? o === n + 1 : t.length === 1; 5299} 5300function Xa(e) { 5301 return Nm(e).filter( 5302 (t) => t !== He 5303 ); 5304} 5305function wm(e) { 5306 return Xa( 5307 e 5308 ).length === 0; 5309} 5310function Rm() { 5311 return { 5312 emailPlatform: Oe.OTHER, 5313 companyIndustry: Ja 5314 }; 5315} 5316function Tm(e) { 5317 e.workspaceInfo.emailPlatform = Oe.OTHER, e.accountTypeInfo.companyIndustry = Ja; 5318} 5319function Gt(e) { 5320 return e?.includes(He) ?? !1; 5321} 5322function Nm(e) { 5323 return e.filter( 5324 (t) => t !== un 5325 ); 5326} 5327const qa = "ws1-plan-pro-v3"; 5328let Sn, Ot; 5329async function Pm() { 5330 Sn || (Sn = Qa.init(Ue())), await Sn; 5331} 5332async function Fm(e) { 5333 if (Gt(e.visibleScreenIds) && e.webmailComposedPlansFetchStatus !== "done") { 5334 if (Ot) { 5335 await Ot; 5336 return; 5337 } 5338 e.webmailComposedPlansFetchStatus !== "loading" && (Ot = (async () => { 5339 e.webmailComposedPlansFetchStatus = "loading"; 5340 try { 5341 await Pm(); 5342 const t = await Qa.listComposedPlans({ 5343 externalPlanIds: [qa], 5344 allowMissingHermesEnrichmentForTrials: !0 5345 }); 5346 e.webmailComposedPlans = t.data ?? [], e.webmailComposedPlansFetchStatus = "done"; 5347 } catch (t) { 5348 console.error("prefetchWebmailComposedPlans failed", t), e.webmailComposedPlansFetchStatus = "error"; 5349 } finally { 5350 Ot = void 0; 5351 } 5352 })(), await Ot); 5353 } 5354} 5355function Qo(e) { 5356 Gt(e.visibleScreenIds) && Fm(e).catch(() => { 5357 }); 5358} 5359function ro(e) { 5360 const t = e.webmailComposedPlans; 5361 if (t?.length) 5362 return t.find( 5363 (n) => n.externalPlanId === qa 5364 ); 5365} 5366function Bm(e) { 5367 return (ro(e)?.marketingFeatures?.[1]?.features ?? []).filter((n) => !!n.text).map((n) => ({ 5368 text: n.text ?? "", 5369 icon: n.icon 5370 })); 5371} 5372function Za(e) { 5373 return e.webmailComposedPlansFetchStatus === "loading" ? !1 : !ro(e); 5374} 5375function Mm(e) { 5376 const t = Bm(e); 5377 return t.length > 0 ? t : Za(e) ? hm : []; 5378} 5379const In = 50; 5380function Jo(e) { 5381 return new Intl.NumberFormat("en-US", { 5382 style: "currency", 5383 currency: "USD", 5384 minimumFractionDigits: e % 1 === 0 ? 0 : 2, 5385 maximumFractionDigits: 2 5386 }).format(e); 5387} 5388function Xo(e) { 5389 return new Intl.NumberFormat("en-US", { 5390 style: "currency", 5391 currency: "USD", 5392 minimumFractionDigits: 2, 5393 maximumFractionDigits: 2 5394 }).format(e); 5395} 5396function qo(e, t) { 5397 return e * (1 - t / 100); 5398} 5399function Um(e) { 5400 if (!e) return; 5401 const t = e.currencies?.[0]?.unitAmount; 5402 if (!t) return; 5403 const n = e.intervalLength ?? 12, o = t, a = o / n, i = qo( 5404 o, 5405 In 5406 ), r = qo( 5407 a, 5408 In 5409 ); 5410 return { 5411 sectionTitle: e.marketingFeatures?.[1]?.title ?? "Pro+ includes", 5412 originalMonthlyDisplay: Xo(a), 5413 discountedMonthlyDisplay: Jo(r), 5414 discountPercent: In, 5415 originalAnnualDisplay: Xo(o), 5416 discountedAnnualDisplay: Jo(i), 5417 intervalSuffix: "/month" 5418 }; 5419} 5420function Dm(e) { 5421 const t = Um(ro(e)); 5422 if (t) return t; 5423 if (Za(e)) 5424 return _m; 5425} 5426const xm = { 5427 class: "webmail-final-step", 5428 aid: "WEBMAIL_FINAL_STEP_OFFER" 5429}, Ym = { class: "webmail-final-step__badge text-base font-semibold" }, Gm = { 5430 key: 0, 5431 class: "webmail-final-step__loading" 5432}, Wm = { class: "webmail-final-step__plan-name text-3xl font-bold" }, Vm = { class: "webmail-final-step__price-row" }, zm = { class: "webmail-final-step__price-strike webmail-final-step__text-md" }, Km = { class: "webmail-final-step__discount-badge text-xs font-bold" }, Hm = { class: "webmail-final-step__price-main" }, jm = { class: "webmail-final-step__price-amount text-3xl font-bold" }, Qm = { class: "webmail-final-step__price-interval webmail-final-step__text-md font-medium" }, Jm = { class: "webmail-final-step__billing-cycle webmail-final-step__text-md font-bold" }, Xm = { class: "webmail-final-step__annual-row" }, qm = { class: "webmail-final-step__price-strike webmail-final-step__text-md" }, Zm = { class: "webmail-final-step__annual-summary webmail-final-step__text-md font-bold" }, $m = { 5433 key: 0, 5434 class: "webmail-final-step__features" 5435}, ef = { 5436 key: 1, 5437 class: "fa-solid fa-circle-check webmail-final-step__feature-icon text-lg" 5438}, tf = /* @__PURE__ */ j({
5439 __name: "webmail-final-step", 5440 props: { 5441 modelValue: { 5442 required: !0 5443 }, 5444 modelModifiers: {} 5445 }, 5446 emits: /* @__PURE__ */ me(["enableToContinue"], ["update:modelValue"]), 5447 setup(e, { emit: t }) { 5448 const n = t, o = ce(e, "modelValue"), a = R( 5449 () => Mm(o.value) 5450 ), i = R( 5451 () => Dm(o.value) 5452 ), r = R( 5453 () => o.value.webmailComposedPlansFetchStatus === "loading" || o.value.webmailComposedPlansFetchStatus === void 0 && !i.value 5454 ), s = R(() => i.value ? p.webmailFinalStepFirstYearSummary.replace( 5455 "{discountedAnnual}", 5456 i.value.discountedAnnualDisplay 5457 ) : ""); 5458 return De(() => { 5459 n("enableToContinue", !0), bm(); 5460 }), (f, u) => { 5461 const v = hi("loading-l"); 5462 return m(), b("div", xm, [ 5463 l("div", Ym, _(d(p).webmailFinalStepWelcomeBadge), 1), 5464 l("div", { 5465 class: H(["webmail-final-step__card", { "webmail-final-step__card--loading": r.value }]) 5466 }, [ 5467 r.value ? oa((m(), b("div", Gm, null, 512)), [ 5468 [v, !0] 5469 ]) : i.value ? (m(), b(de, { key: 1 }, [ 5470 l("div", Wm, _(i.value.sectionTitle), 1), 5471 l("div", Vm, [ 5472 l("span", zm, _(i.value.originalMonthlyDisplay), 1), 5473 l("span", Km, " -" + _(i.value.discountPercent) + "% ", 1), 5474 l("span", Hm, [ 5475 l("span", jm, _(i.value.discountedMonthlyDisplay), 1), 5476 l("span", Qm, _(i.value.intervalSuffix), 1) 5477 ]) 5478 ]), 5479 l("div", Jm, _(d(p).webmailFinalStepBilledAnnually), 1), 5480 l("div", Xm, [ 5481 l("span", qm, _(i.value.originalAnnualDisplay), 1), 5482 l("span", Zm, _(s.value), 1) 5483 ]), 5484 a.value.length > 0 ? (m(), b("ul", $m, [ 5485 (m(!0), b(de, null, Pe(a.value, (c, k) => (m(), b("li", { 5486 key: `feature-${k}`, 5487 class: "webmail-final-step__feature-row text-base" 5488 }, [ 5489 c.icon ? (m(), b("i", { 5490 key: 0, 5491 class: H([ 5492 c.icon, 5493 "webmail-final-step__feature-icon text-lg" 5494 ]) 5495 }, null, 2)) : (m(), b("i", ef)), 5496 l("span", null, _(c.text), 1) 5497 ]))), 128)) 5498 ])) : D("", !0) 5499 ], 64)) : D("", !0) 5500 ], 2) 5501 ]); 5502 }; 5503 } 5504}), nf = /* @__PURE__ */ ee(tf, [["__scopeId", "data-v-4da1e16d"]]); 5505function cn(e) { 5506 if (vt(e.signupOrigin)) return; 5507 const t = sl(e); 5508 Object.keys(t).length && ne.applyOnboardingBrandKit(t).catch((n) => { 5509 console.error("applyOnboardingBrandKit failed", n); 5510 }); 5511} 5512function dn(e, t) { 5513 const n = e?.trim(); 5514 return n || (t?.trim() ?? ""); 5515} 5516function of() { 5517 const e = Mi(); 5518 return e === "mobile" ? "mobile" : e === "tablet" ? "tablet" : "desktop"; 5519} 5520const $a = (e, t = {}) => { 5521 const n = e.userBasicInfo.userName?.split(" "), o = e.userBasicInfo.companySize === "xxlarge" ? "xlarge" : e.userBasicInfo.companySize || "", a = dn( 5522 e.userBasicInfo.companyName, 5523 e.userBasicInfo.userName 5524 ); 5525 return { 5526 eventName: "onboarding_sql_step_completed", 5527 eventAttributes: { 5528 company_size: o, 5529 company_name: a, 5530 email: e.userEmail || "", 5531 auto_filled: String(e.prefillSnapshot?.tellUsAboutYou ?? !1), 5532 auto_completed: String(t.autoCompleted ?? !1) 5533 }, 5534 cioEventName: "company_data_update", 5535 cioEventAttributes: { 5536 company_name: a, 5537 company_size: o, 5538 title: e.userBasicInfo.userTitle || "", 5539 full_name: e.userBasicInfo.userName || "", 5540 first_name: n?.shift() || "", 5541 last_name: n?.join(" ") || "", 5542 signup_device: of() 5543 } 5544 }; 5545}, ei = (e, t = {}) => ({ 5546 eventName: "onboarding_email_provider_completed", 5547 eventAttributes: { 5548 use_case: "company", 5549 industry: e.accountTypeInfo.companyIndustry || "", 5550 auto_filled: String(e.prefillSnapshot?.selectEmailPlatform ?? !1), 5551 auto_completed: String(t.autoCompleted ?? !1) 5552 }, 5553 cioEventName: "company_data_update", 5554 cioEventAttributes: { 5555 company_industry: e.accountTypeInfo.companyIndustry || "" 5556 } 5557}), af = (e, t = {}) => ({ 5558 eventName: "onboarding_make_signature_yours_completed", 5559 eventAttributes: { 5560 auto_filled: String(e.prefillSnapshot?.makeSignatureYours ?? !1), 5561 auto_completed: String(t.autoCompleted ?? !1) 5562 } 5563}), rf = (e, t = {}) => { 5564 const n = e.userBasicInfo.companySize === "xxlarge" ? "xlarge" : e.userBasicInfo.companySize || ""; 5565 return { 5566 eventName: "onboarding_signature_intent_completed", 5567 eventAttributes: {
5568 company_size: n, 5569 creating_for: e.userBasicInfo.creatingFor || "", 5570 auto_filled: String(e.prefillSnapshot?.signatureIntent ?? !1), 5571 auto_completed: String(t.autoCompleted ?? !1) 5572 }, 5573 cioEventName: "company_data_update", 5574 cioEventAttributes: { 5575 company_size: n, 5576 creating_for: e.userBasicInfo.creatingFor || "" 5577 } 5578 }; 5579}, sf = async (e) => { 5580 try { 5581 const { userBasicInfo: t } = e, n = dn( 5582 t.companyName, 5583 t.userName 5584 ); 5585 return await ne.updateBasicInfo({ 5586 userName: t.userName ?? "", 5587 userTitle: t.userTitle ?? "", 5588 userMobile: t.userMobile ?? "", 5589 // Optional field: persist effective name for CRM/backoffice (same as when mandatory). 5590 companyName: n, 5591 companyWebsite: t.companyWebsite ?? "" 5592 }), $a(e); 5593 } catch (t) { 5594 return console.error("tell us about you error.", t), {}; 5595 } 5596}, lf = async (e) => { 5597 try { 5598 const { userBasicInfo: t } = e, n = dn( 5599 t.companyName, 5600 t.userName 5601 ); 5602 return await ne.updateBasicInfo({ 5603 ...t, 5604 companyName: n 5605 }), rf(e); 5606 } catch (t) { 5607 return console.error("signature intent error.", t), {}; 5608 } 5609}, uf = async (e) => { 5610 try { 5611 return af(e); 5612 } catch (t) { 5613 return console.error("make signature yours error.", t), {}; 5614 } 5615}, cf = async (e) => { 5616 try { 5617 const t = localStorage.getItem("prefilled_signature_data"); 5618 return await ne.setWorkspace({ 5619 ...e.workspaceInfo, 5620 signatureData: t || void 0, 5621 centralizedManagement: e.centralizedManagement, 5622 signupGalleryLayout: Yt() 5623 }), await cn(e), t && localStorage.removeItem("prefilled_signature_data"), { 5624 eventName: "onboarding_webmail_final_step_completed" 5625 }; 5626 } catch (t) { 5627 return console.error("webmail final step error.", t), {}; 5628 } 5629}, df = async (e) => { 5630 try { 5631 if (await ne.setAccountType({ 5632 accountType: e.accountTypeInfo.accountType, 5633 companyIndustry: e.accountTypeInfo.companyIndustry 5634 }), !io(e.visibleScreenIds)) { 5635 const t = localStorage.getItem("prefilled_signature_data"); 5636 await ne.setWorkspace({ 5637 ...e.workspaceInfo, 5638 signatureData: t || void 0, 5639 centralizedManagement: e.centralizedManagement, 5640 // Pass the gallery layout captured during live preview so the backend 5641 // can skip the redundant fetchSignupGalleryLayout call. 5642 signupGalleryLayout: Yt() 5643 }), await cn(e), t && localStorage.removeItem("prefilled_signature_data"); 5644 } 5645 return ei(e); 5646 } catch (t) { 5647 return console.error("set account type error.", t), {}; 5648 } 5649}, mf = async (e) => { 5650 try { 5651 const t = localStorage.getItem("prefilled_signature_data"); 5652 return await ne.setWorkspace({ 5653 ...e.workspaceInfo, 5654 signatureData: t || void 0, 5655 centralizedManagement: e.centralizedManagement, 5656 signupGalleryLayout: Yt() 5657 }), await cn(e), t && localStorage.removeItem("prefilled_signature_data"), { 5658 eventName: `onboarding_completed_user_${e.demoScheduled ? "booked_a" : "skipped"}_demo`, 5659 eventAttributes: { 5660 demo_scheduled: `${e.demoScheduled}`, 5661 auto_filled: "false", 5662 auto_completed: "false" 5663 } 5664 }; 5665 } catch (t) { 5666 return console.error("set workspace error.", t), {}; 5667 } 5668}, ff = !0; 5669function Lt(e, t, n) { 5670 const o = e?.trim() ?? ""; 5671 return o !== (t ?? "") ? o || void 0 : n || void 0; 5672} 5673function pf(e, t, n) { 5674 const o = e.userName?.trim() || U.name, a = e.userTitle?.trim() || U.title, i = e.userMobile?.trim() || U.phone, r = t?.trim() || U.email, s = e.companyName?.trim() || U.companyName, f = e.companyWebsite?.trim() || U.companyWebsite; 5675 return { 5676 employee: { name: o, title: a, phone: i, mobile: i, email: r }, 5677 company: { 5678 name: s, 5679 website: f, 5680 logo: nt(n), 5681 facebook_link: U.facebookLink, 5682 instagram_link: U.instagramLink, 5683 twitter_link: U.twitterLink, 5684 linkedin_link: U.linkedinLink, 5685 tiktok_link: U.tiktokLink 5686 } 5687 }; 5688} 5689function gf(e, t, n, o, a, i) { 5690 const r = {}, s = {}, f = Lt( 5691 e.userName, 5692 n?.userName, 5693 o?.name 5694 ); 5695 f && (r.name = f); 5696 const u = Lt( 5697 e.userTitle, 5698 n?.userTitle, 5699 o?.title 5700 ); 5701 u && (r.title = u); 5702 const v = Lt( 5703 e.userMobile, 5704 n?.userMobile, 5705 o?.mobile 5706 ); 5707 v && (r.phone = v, r.mobile = v); 5708 const c = t?.trim() || o?.email;
5709 c && (r.email = c), o?.photo && (r.photo = o.photo); 5710 const k = Lt( 5711 e.companyName, 5712 n?.companyName, 5713 a?.name 5714 ); 5715 k && (s.name = k); 5716 const E = Lt( 5717 e.companyWebsite, 5718 n?.companyWebsite, 5719 a?.website 5720 ); 5721 return E && (s.website = E), s.logo = nt(i, a?.logo), a?.facebookLink && (s.facebook_link = a.facebookLink), a?.instagramLink && (s.instagram_link = a.instagramLink), a?.twitterLink && (s.twitter_link = a.twitterLink), a?.linkedinLink && (s.linkedin_link = a.linkedinLink), a?.tiktokLink && (s.tiktok_link = a.tiktokLink), a?.youtubeLink && (s.youtube_link = a.youtubeLink), { employee: r, company: s }; 5722} 5723function bf(e) { 5724 return Ut(e); 5725} 5726function ti(e) { 5727 const t = e.makeSignatureYours; 5728 return JSON.stringify({ 5729 previewKind: "single", 5730 applyMakeSignatureYoursToPreview: ff, 5731 name: e.userBasicInfo.userName ?? "", 5732 title: e.userBasicInfo.userTitle ?? "", 5733 companyName: e.userBasicInfo.companyName ?? "", 5734 companyWebsite: e.userBasicInfo.companyWebsite ?? "", 5735 phone: e.userBasicInfo.userMobile ?? "", 5736 email: e.userEmail ?? "", 5737 companyLogo: Ut(e) ?? "", 5738 brandColor: kt(e) ?? "", 5739 logoOptionId: t?.logoOptionId ?? "", 5740 brandColorOptionId: t?.brandColorOptionId ?? "", 5741 facebookLink: t?.facebookLink ?? "", 5742 linkedinLink: t?.linkedinLink ?? "", 5743 instagramLink: t?.instagramLink ?? "" 5744 }); 5745} 5746function vf(e, t) { 5747 const { userBasicInfo: n, userEmail: o } = e, a = bf(e), i = Tn(), r = t?.kind === "generator" ? t.generatorPayload : void 0; 5748 let s; 5749 if (r) { 5750 const { employee: f, company: u } = r; 5751 s = gf( 5752 n, 5753 o, 5754 i, 5755 f, 5756 u, 5757 a 5758 ); 5759 } else 5760 s = pf(n, o, a); 5761 return Aa(s.company, e), s; 5762} 5763let Tt, Wn, et; 5764async function ni(e) { 5765 const t = Rn() ?? await Ft(), n = vf(e, t), o = t?.kind === "generator"; 5766 return await ne.init(Ue()), (await ne.renderSkipOfferSignaturePreview({ 5767 payload: n, 5768 fromGenerator: o, 5769 signupGalleryLayout: o ? void 0 : Yt() 5770 })).html ?? ""; 5771} 5772function oi(e) { 5773 const t = ti(e); 5774 if (Wn === t && Tt) 5775 return Tt; 5776} 5777async function ai(e) { 5778 if (!Gt(e.visibleScreenIds)) 5779 return ""; 5780 const t = ti(e); 5781 return Wn === t && Tt ? Tt : et ? await et : (et = (async () => { 5782 try { 5783 const n = await ni(e); 5784 return Wn = t, Tt = n, n; 5785 } catch (n) { 5786 throw console.error("prefetchSkipOfferSignaturePreview failed", n), n; 5787 } finally { 5788 et = void 0; 5789 } 5790 })(), await et); 5791} 5792function _f(e) { 5793 Gt(e.visibleScreenIds) && ai(e).catch(() => { 5794 }); 5795} 5796async function hf(e) { 5797 const t = oi(e); 5798 return t || (et ? await et : Gt(e.visibleScreenIds) ? await ai(e) : await ni(e)); 5799} 5800const ii = "Your 50% off ends when you leave this screen", we = { 5801 title: ii, 5802 subtitle: "Upgrade now to keep the welcome discount and remove the watermark from your signature.", 5803 featuresTitle: "Every plan includes", 5804 featureNoWatermark: "Remove WiseStamp branding", 5805 featureAiDesigner: "AI Signature Designer", 5806 featureGalleryStudio: "Rich template gallery & Signature studio", 5807 featureGmailOutlookSync: "One-click Gmail and Outlook sync", 5808 featureTeammatesPrefix: "Up to 10 teammates at", 5809 featureTeammatesListPrice: "$2 ", 5810 featureTeammatesSalePrice: "$1/mo each", 5811 getFiftyOff: "Get 50% off", 5812 discountCodeNote: "from $4.50/mo", 5813 skipOffer: "Skip offer" 5814}, kf = [ 5815 we.featureNoWatermark, 5816 we.featureAiDesigner, 5817 we.featureGalleryStudio, 5818 we.featureGmailOutlookSync 5819], yf = { class: "webmail-skip-offer-dialog__subtitle" }, Sf = { class: "webmail-skip-offer-dialog__columns" }, If = { class: "webmail-skip-offer-dialog__features" }, Ef = { class: "webmail-skip-offer-dialog__features-title" }, Af = { class: "webmail-skip-offer-dialog__features-list" }, Of = { class: "webmail-skip-offer-dialog__feature" }, Lf = { class: "webmail-skip-offer-dialog__feature-teammates" }, Cf = { class: "webmail-skip-offer-dialog__feature-list-price" }, wf = { class: "webmail-skip-offer-dialog__feature-sale-price" }, Rf = { 5820 class: "webmail-skip-offer-dialog__preview-column", 5821 aid: "WEBMAIL_SKIP_OFFER_SIGNATURE_PREVIEW" 5822}, Tf = { class: "preview-card" }, Nf = { class: "preview-card__to-subject" }, Pf = { class: "preview-card__to-subject-row" }, Ff = { class: "preview-card__to-subject-row" }, Bf = { 5823 key: 0, 5824 class: "preview-loader" 5825}, Mf = { 5826 key: 2, 5827 class: "preview-fallback" 5828}, Uf = { class: "webmail-skip-offer-dialog__actions" }
5828, Df = ["data-pricing"], Zo = "webmail-skip-offer-dialog-overrides", xf = ".q-dialog-plugin.ws-dialog__card[aid='WEBMAIL_SKIP_OFFER_DIALOG']", Yf = "fit", Gf = /* @__PURE__ */ j({ 5829 __name: "webmail-skip-offer-dialog", 5830 props: { 5831 dialog: {} 5832 }, 5833 setup(e) { 5834 const t = ` 5835${xf} .ws-dialog__header__text { 5836 font-size: 26px !important; 5837 line-height: 42px !important; 5838 font-weight: 700 !important; 5839 color: #2d2e30 !important; 5840} 5841`, n = B(""), o = B(!1), a = B(!1); 5842 async function i() { 5843 const f = oi( 5844 e.dialog.input.onboardingData 5845 ); 5846 if (f) { 5847 n.value = f, a.value = !f; 5848 return; 5849 } 5850 try { 5851 o.value = !0, a.value = !1, n.value = await hf( 5852 e.dialog.input.onboardingData 5853 ), n.value || (a.value = !0); 5854 } catch (u) { 5855 console.error("webmail skip offer preview failed", u), a.value = !0; 5856 } finally { 5857 o.value = !1; 5858 } 5859 } 5860 function r() { 5861 ja(en.skipOfferModal), e.dialog.close("complete"); 5862 } 5863 function s() { 5864 Ha(en.skipOfferModal), e.dialog.close("acceptOffer"); 5865 } 5866 return Vn(() => { 5867 i(); 5868 }), De(() => { 5869 const f = document.createElement("style"); 5870 f.id = Zo, f.textContent = t, document.head.appendChild(f); 5871 }), aa(() => { 5872 document.getElementById(Zo)?.remove(); 5873 }), (f, u) => (m(), Y(d(li), { class: "webmail-skip-offer-dialog" }, { 5874 default: Q(() => [ 5875 x(d(ui), { class: "webmail-skip-offer-dialog__body" }, { 5876 default: Q(() => [ 5877 l("p", yf, _(d(we).subtitle), 1), 5878 l("div", Sf, [ 5879 l("div", If, [ 5880 l("h3", Ef, _(d(we).featuresTitle), 1), 5881 l("ul", Af, [ 5882 (m(!0), b(de, null, Pe(d(kf), (v) => (m(), b("li", { 5883 key: v, 5884 class: "webmail-skip-offer-dialog__feature" 5885 }, [ 5886 u[0] || (u[0] = l("span", { 5887 class: "webmail-skip-offer-dialog__feature-icon", 5888 "aria-hidden": "true" 5889 }, [ 5890 l("i", { class: "fa-solid fa-check" }) 5891 ], -1)), 5892 l("span", null, _(v), 1) 5893 ]))), 128)), 5894 l("li", Of, [ 5895 u[1] || (u[1] = l("span", { 5896 class: "webmail-skip-offer-dialog__feature-icon", 5897 "aria-hidden": "true" 5898 }, [ 5899 l("i", { class: "fa-solid fa-check" }) 5900 ], -1)), 5901 l("span", Lf, [ 5902 q(_(d(we).featureTeammatesPrefix) + " ", 1), 5903 l("span", Cf, _(d(we).featureTeammatesListPrice), 1), 5904 l("span", wf, _(d(we).featureTeammatesSalePrice), 1) 5905 ]) 5906 ]) 5907 ]) 5908 ]), 5909 l("div", Rf, [ 5910 l("div", Tf, [ 5911 l("div", Nf, [ 5912 l("div", Pf, _(d(pt).toLabel), 1), 5913 l("div", Ff, _(d(pt).subjectLabel), 1) 5914 ]), 5915 o.value ? (m(), b("div", Bf)) : n.value ? (m(), Y(d(ta), { 5916 key: 1, 5917 content: n.value, 5918 scale: Yf, 5919 aid: "WEBMAIL_SKIP_OFFER_SIGNATURE_PREVIEW_CONTENT" 5920 }, null, 8, ["content"])) : a.value ? (m(), b("div", Mf, _(d(pt).previewPlaceholder), 1)) : D("", !0) 5921 ]) 5922 ]) 5923 ]) 5924 ]), 5925 _: 1 5926 }), 5927 x(d(ci), null, { 5928 default: Q(() => [ 5929 l("div", Uf, [ 5930 l("div", { 5931 class: "webmail-skip-offer-dialog__cta", 5932 "data-pricing": d(we).discountCodeNote 5933 }, [ 5934 x(d(ke), { 5935 aid: "WEBMAIL_SKIP_OFFER_UPGRADE_NOW_BUTTON", 5936 color: "primary", 5937 size: "lg", 5938 onClick: s 5939 }, { 5940 default: Q(() => [ 5941 q(_(d(we).getFiftyOff), 1) 5942 ]), 5943 _: 1 5944 }) 5945 ], 8, Df), 5946 x(d(ke), { 5947 aid: "WEBMAIL_SKIP_OFFER_MAYBE_LATER_BUTTON", 5948 variant: "text", 5949 color: "gray-500", 5950 size: "sm", 5951 onClick: r 5952 }, { 5953 default: Q(() => [ 5954 q(_(d(we).skipOffer), 1) 5955 ]), 5956 _: 1 5957 }) 5958 ]) 5959 ]), 5960 _: 1 5961 }) 5962 ]), 5963 _: 1 5964 })); 5965 } 5966}), Wf = /* @__PURE__ */ ee(Gf, [["__scopeId", "data-v-de9ee2f6"]]); 5967async function Vf(e) { 5968 return await di({ 5969 aid: "WEBMAIL_SKIP_OFFER_DIALOG", 5970 headerText: ii, 5971 component: Wf, 5972 input: { onboardingData: e }, 5973 showTopSeparator: !1 5974 }); 5975} 5976const zf = { 5977 key: 0, 5978 class: "onboarding-container" 5979}, Kf = ["aid"], Hf = { class: "footer" }, jf = { key: 1 }, Qf = { key: 2 }, Jf = { 5980 key: 3, 5981 class: "webmail-final-step-footer" 5982}, Xf = { key: 4 }, qf = { key: 5 }, Zf = { 5983 key: 1, 5984 class: "overlay" 5985}, $f = { class: "message" }, ep = { class: "text-sm font-semibold" }, En = "ws_signup_origin", An = "ws_signup_type", On = "ws_onboarding_visible_screens", tp = /* @__PURE__ */ j({ 5986 __name: "onboarding-wrapper", 5987 setup(e) { 5988 const { isXs: t } = Ui(); 5989 X( 5990 t, 5991 (h) => { 5992 h ? Oi() : co(); 5993 }, 5994 { immediate: !0 } 5995 ), ua.value = la.Hidden, da.value = ca.Hidden; 5996 function n() { 5997 window.location.pathname !== fn && window.history.pushState(null, "", fn); 5998 } 5999 window.history.pushState(null, "", fn), window.addEventListener("popstate", n); 6000 function o() { 6001 let h, I; 6002 if (h = sessionStorage.getItem(En) || void 0, I = sessionStorage.getItem(An) || void 0, !h && !I && document.referrer) 6003 try { 6004 const F = new URL(document.referrer); 6005 F.pathname.includes("/signup") && (h = F.searchParams.get("origin") || void 0, I = F.searchParams.get("type") || void 0); 6006 } catch { 6007 } 6008 return h && sessionStorage.setItem(En, h), I && sessionStorage.setItem(An, I), { signupOrigin: h, signupType: I }; 6009 } 6010 const a = B({ 6011 userBasicInfo: {}, 6012 accountTypeInfo: {}, 6013 workspaceInfo: {}, 6014 demoSession: void 0, 6015 demoScheduled: !1, 6016 userEmail: "", 6017 userCountry: "", 6018 userRole: "", 6019 centralizedManagement: void 0, 6020 generatorCreatedFor: void 0, 6021 generatorCompanySize: void 0, 6022 // Experience tracking 6023 experienceState: void 0, 6024 visibleScreenIds: [], 6025 detectionConditions: void 0 6026 }), i = B(!1), r = B(-1), s = B(""), f = B(null); 6027 X(r, async () => { 6028 r.value < 0 || (await jt(), f.value?.scrollTo({ top: 0, left: 0, behavior: "instant" })); 6029 }), X( 6030 () => ({ 6031 companyLogo: a.value.companyLogo, 6032 makeSignatureYours: a.value.makeSignatureYours, 6033 brandKit: a.value.brandKit, 6034 brandKitFetchStatus: a.value.brandKitFetchStatus, 6035 brandKitFetchStartedAt: a.value.brandKitFetchStartedAt, 6036 brandKitLogoOptions: a.value.brandKitLogoOptions, 6037 brandKitBrandColorOptions: a.value.brandKitBrandColorOptions, 6038 brandKitFetchedForWebsiteUrl: a.value.brandKitFetchedForWebsiteUrl, 6039 makeSignatureYoursManuallyEdited: a.value.makeSignatureYoursManuallyEdited, 6040 makeSignatureYoursFromGenerator: a.value.makeSignatureYoursFromGenerator 6041 }), 6042 (h) => { 6043 Fa(h); 6044 }, 6045 { deep: !0 } 6046 ), Vn(async () => {
6047 try { 6048 await Promise.all([ 6049 ne.init(Ue()), 6050 Ga() 6051 ]), await g(); 6052 } catch (h) { 6053 console.error("get onboarding status failed", h), Qt("ONBOARDING_ERROR_TOAST"); 6054 } finally { 6055 ra(); 6056 } 6057 }), nn(() => { 6058 window.removeEventListener("popstate", n), co(); 6059 }); 6060 const u = { 6061 tellUsAboutYou: { 6062 aid: "ONBOARD_SCREEN_TELL_US_ABOUT_YOU", 6063 svg: _l, 6064 form: tc, 6065 action: sf 6066 }, 6067 signatureIntent: { 6068 aid: "ONBOARD_SCREEN_SIGNATURE_INTENT", 6069 svg: Rl, 6070 form: Ec, 6071 action: lf 6072 }, 6073 makeSignatureYours: { 6074 aid: "ONBOARD_SCREEN_MAKE_SIGNATURE_YOURS", 6075 svg: Tl, 6076 form: gm, 6077 action: uf 6078 }, 6079 selectEmailPlatform: { 6080 aid: "ONBOARD_SCREEN_SELECT_EMAIL_PLATFORM", 6081 svg: Ll, 6082 form: dc, 6083 action: df 6084 }, 6085 webmailProPlusOffer: { 6086 aid: "ONBOARD_SCREEN_WEBMAIL_PRO_PLUS_OFFER", 6087 svg: Nl, 6088 form: nf, 6089 action: cf 6090 }, 6091 bookADemoOrSkip: { 6092 aid: "ONBOARD_SCREEN_BOOK_A_DEMO_OR_SKIP", 6093 svg: Sl, 6094 form: rc, 6095 action: mf 6096 } 6097 }, v = R(() => { 6098 const h = a.value.visibleScreenIds; 6099 if (h && h.length > 0) 6100 return h.map((ve) => u[ve]).filter(Boolean); 6101 const I = { 6102 userName: a.value.userBasicInfo.userName, 6103 companyName: a.value.userBasicInfo.companyName, 6104 companySize: a.value.userBasicInfo.companySize, 6105 creatingFor: a.value.userBasicInfo.creatingFor, 6106 emailPlatform: a.value.workspaceInfo.emailPlatform, 6107 companyIndustry: a.value.accountTypeInfo.companyIndustry 6108 }; 6109 return Di( 6110 Pt.STANDARD, 6111 I 6112 ).map((ve) => u[ve]).filter(Boolean); 6113 }), c = R(() => v.value[r.value]), k = R(() => c.value?.aid === u.tellUsAboutYou.aid), E = R(() => c.value?.aid === u.signatureIntent.aid), N = R(() => c.value?.aid === u.makeSignatureYours.aid), y = R(() => c.value?.aid === u.webmailProPlusOffer.aid); 6114 X(y, (h) => { 6115 h && _f(a.value); 6116 }); 6117 const L = R(() => N.value ? !Ya(a.value) : !1), A = R(() => k.value || E.value || N.value || y.value ? { 6118 onboardingData: a.value 6119 } : {}), ae = R(() => r.value == v.value.length - 1), fe = R(() => c.value?.aid === u.bookADemoOrSkip.aid), C = R(() => r.value == 0), M = B(!1), se = R(() => a.value.demoScheduled); 6120 X(se, async (h) => { 6121 h && await Ge(); 6122 }); 6123 function W(h, I, F) { 6124 const ve = F ?? Pt.STANDARD, Fe = Wi(ve); 6125 if (Fe) { 6126 const z = /* @__PURE__ */ new Map(); 6127 for (const ue of Fe.onboarding.screens) 6128 ue.onboardingStep && z.set( 6129 ue.id, 6130 ue.onboardingStep 6131 ); 6132 const Ie = I.length > 0 ? I : v.value.map((ue) => Object.keys(u).find( 6133 (Ze) => u[Ze] === ue 6134 ) || ""); 6135 for (let ue = 0; ue < Ie.length; ue++) { 6136 const Ze = Fe.onboarding.screens.find( 6137 (It) => It.id === Ie[ue] 6138 ); 6139 if (Ze && he(Ze)) { 6140 r.value = ue; 6141 return; 6142 } 6143 const ct = z.get(Ie[ue]); 6144 if (ct && !h?.[ct]) { 6145 if (ct === "setWorkspace" && Lm(Ie[ue], Ie)) 6146 continue; 6147 r.value = ue; 6148 return; 6149 } 6150 } 6151 r.value = Math.max(0, Ie.length - 1); 6152 return; 6153 } 6154 r.value = 0; 6155 } 6156 function he(h) { 6157 return h.requiredFields.some((I) => !be(I)); 6158 } 6159 function be(h) { 6160 const { userBasicInfo: I, workspaceInfo: F, accountTypeInfo: ve } = a.value, z = { 6161 userName: I.userName, 6162 companyName: I.companyName, 6163 companyWebsite: I.companyWebsite, 6164 companySize: I.companySize, 6165 creatingFor: I.creatingFor, 6166 emailPlatform: F.emailPlatform, 6167 companyIndustry: ve.companyIndustry 6168 }[h]; 6169 return typeof z == "string" ? !!z.trim() : z != null; 6170 } 6171 async function g() { 6172 const h = o(); 6173 a.value.signupOrigin = h.signupOrigin; 6174 const I = vt(h.signupOrigin); 6175 va({ 6176 signupOrigin: h.signupOrigin 6177 }).catch(() => { 6178 }); 6179 const F = await ne.getBasicInfo({ 6180 signupOrigin: h.signupOrigin, 6181 signupType: h.signupType 6182 }); 6183 if (!F.experienceState && F.onboardingStatus?.setWorkspace) { 6184 ze("/v1/app"); 6185 return; 6186 } 6187 a.value.experienceState = F.experienceState, Kt(a.value, F); 6188 const ve = St(), Fe = yn({ 6189 experienceState: F.experienceState, 6190 backendScreens: F.visibleScreens ?? [] 6191 }); 6192 if (a.value.visibleScreenIds = ve.length > 0 ? Z(ve, Fe) : Fe, w(a.value.visibleScreenIds), Qo(a.value), F.autoSubmitAction) { 6193 s.value = p.completeOnboardingGettingReadyMsg, Kt(a.value, F), F.forcedCentralizedManagement !== void 0 && (a.value.centralizedManagement = F.forcedCentralizedManagement), a.value.workspaceInfo.emailPlatform = F.autoSubmitAction.emailPlatform, a.value.accountTypeInfo.companyIndustry = F.autoSubmitAction.companyIndustry, a.value.detectionConditions = F.detectionConditions, pn(a.value), a.value.prefillSnapshot = { 6194 tellUsAboutYou: !0, 6195 signatureIntent: !0, 6196 selectEmailPlatform: !0 6197 }, await P(F.autoSubmitAction), s.value || W( 6198 F.onboardingStatus || {}, 6199 a.value.visibleScreenIds || [], 6200 F.experienceState 6201 ); 6202 return; 6203 } 6204 Ls(a.value.userBasicInfo); 6205 const z = Pa(); 6206 z && (a.value.companyLogo = z.companyLogo), z?.makeSignatureYours && (a.value.makeSignatureYours = z.makeSignatureYours), I || (z?.brandKit && (a.value.brandKit = z.brandKit), z?.brandKitFetchStatus && (a.value.brandKitFetchStatus = z.brandKitFetchStatus), z?.brandKitFetchStartedAt && (a.value.brandKitFetchStartedAt = z.brandKitFetchStartedAt), z?.brandKitLogoOptions && (a.value.brandKitLogoOptions = z.brandKitLogoOptions), z?.brandKitBrandColorOptions && (a.value.brandKitBrandColorOptions = z.brandKitBrandColorOptions), z?.brandKitFetchedForWebsiteUrl && (a.value.brandKitFetchedForWebsiteUrl = z.brandKitFetchedForWebsiteUrl)), z?.makeSignatureYoursManuallyEdited && (a.value.makeSignatureYoursManuallyEdited = z.makeSignatureYoursManuallyEdited), z?.makeSignatureYoursFromGenerator && (a.value.makeSignatureYoursFromGenerator = z.makeSignatureYoursFromGenerator), a.value.makeSignatureYours || (a.value.makeSignatureYours = ht()), Va(a.value) && no(a.value), I && Ft({ signupOrigin: h.signupOrigin }).then( 6207 () => { 6208 const Ie = Is(); 6209 if (!Ie) return; 6210 const ue = Bu(Ie); 6211 Gu( 6212 a.value, 6213 ue, 6214 { respectExistingValues: !0 } 6215 ) && ue.companyLogo && oe({ eventName: "onboarding_logo_from_generator" }); 6216 } 6217 ), a.value.detectionConditions = F.detectionConditions, a.value.centralizedManagement = F.forcedCentralizedManagement, pn(a.value), await S(F) === "noop" && W( 6218 F.onboardingStatus || {}, 6219 a.value.visibleScreenIds || [], 6220 F.experienceState 6221 ); 6222 } 6223 async function S(h) { 6224 if (!Cm({ 6225 experienceState: h.experienceState, 6226 backendScreens: h.visibleScreens ?? [], 6227 setWorkspaceComplete: h.onboardingStatus?.setWorkspace 6228 })) 6229 return "noop"; 6230 const I = yn({ 6231 experienceState: h.experienceState, 6232 backendScreens: h.visibleScreens ?? [] 6233 }); 6234 if (Tm(a.value), a.value.prefillSnapshot = { 6235 ...a.value.prefillSnapshot, 6236 tellUsAboutYou: !0, 6237 signatureIntent: !0, 6238 selectEmailPlatform: !0 6239 }, wm( 6240 I 6241 )) 6242 return s.value = p.completeOnboardingGettingReadyMsg, await P( 6243 Rm() 6244 ), s.value || W( 6245 h.onboardingStatus || {}, 6246 a.value.visibleScreenIds || [], 6247 h.experienceState 6248 ), "completed";
6249 try { 6250 await ne.setAccountType({ 6251 accountType: a.value.accountTypeInfo.accountType, 6252 companyIndustry: a.value.accountTypeInfo.companyIndustry 6253 }); 6254 } catch (F) { 6255 return console.error( 6256 "Generator webmail selectEmailPlatform auto-complete failed", 6257 F 6258 ), W( 6259 h.onboardingStatus || {}, 6260 a.value.visibleScreenIds || [], 6261 h.experienceState 6262 ), "noop"; 6263 } 6264 return a.value.visibleScreenIds = Xa( 6265 I 6266 ), w(a.value.visibleScreenIds), r.value = 0, "advanced"; 6267 } 6268 async function P(h) { 6269 if (h) 6270 try { 6271 s.value = p.completeOnboardingGettingReadyMsg, await ne.setAccountType({ 6272 accountType: a.value.accountTypeInfo.accountType, 6273 companyIndustry: h.companyIndustry 6274 }), await Lo( 6275 a.value.userBasicInfo, 6276 a.value.userEmail, 6277 Fn(a.value) 6278 ); 6279 const I = localStorage.getItem("prefilled_signature_data"); 6280 await ne.setWorkspace({ 6281 ...a.value.workspaceInfo, 6282 emailPlatform: h.emailPlatform, 6283 signatureData: I || void 0, 6284 centralizedManagement: a.value.centralizedManagement, 6285 signupGalleryLayout: Yt() 6286 }), await cn(a.value), I && localStorage.removeItem("prefilled_signature_data"), await oe( 6287 $a(a.value, { autoCompleted: !0 }) 6288 ), await oe( 6289 ei(a.value, { autoCompleted: !0 }) 6290 ), await Ye(); 6291 } catch (I) { 6292 console.error("Auto-submit failed", I), s.value = ""; 6293 } 6294 } 6295 function V(h) { 6296 M.value = h; 6297 } 6298 function T() { 6299 oe({ eventName: "onboarding_logo_uploaded" }); 6300 } 6301 async function re() { 6302 return await Eo.init(Ue()), await Eo.accountBasicInfo({}); 6303 } 6304 function G(h) { 6305 return new Promise((I) => { 6306 setTimeout(I, h); 6307 }); 6308 } 6309 function J(h) { 6310 if (!h) 6311 return "business"; 6312 const I = h.toLowerCase().split("@")[1]; 6313 return ["gmail.com", "yahoo.com", "icloud.com"].includes(I) ? "personal" : "business"; 6314 } 6315 async function Ye(h) { 6316 gu({ data: a.value }); 6317 const I = window.dataLayer ? await re() : {}; 6318 await G(1e3), s.value = is( 6319 as.overlay, 6320 a.value.userEmail ?? I.userEmail ?? "" 6321 ), await G(1e3), window.dataLayer && window.dataLayer.push({ 6322 event: "sign_up_complete", 6323 //'type': (onboardingData.value.accountTypeInfo.accountType === AccountType.TEAMS) ? 'TEAMS' : 'SOLO', 6324 type: "TEAMS", 6325 // currently all the accounts we create from onboarding are TEAMS 6326 trial_days: I.remainDays, 6327 signup_company_size: a.value.userBasicInfo.companySize, 6328 target_audience: a.value.accountTypeInfo.accountType === xi.TEAMS ? "my company" : "myself", 6329 industry: a.value.accountTypeInfo.companyIndustry, 6330 email_type: J(a.value.userEmail) 6331 }), Yi(a.value.experienceState, { 6332 companySize: a.value.userBasicInfo.companySize, 6333 creatingFor: a.value.userBasicInfo.creatingFor 6334 }) && await oe({ eventName: "onboarding_setup_skipped" }), sessionStorage.removeItem(En), sessionStorage.removeItem(An), sessionStorage.removeItem(On), Om(), Ba(), Es(), sessionStorage.removeItem("domainId"), sessionStorage.removeItem("domainKey"), localStorage.removeItem("prefilled_signature_data"), ze( 6335 Gi( 6336 zn(), 6337 { 6338 experienceState: a.value.experienceState, 6339 companySize: a.value.userBasicInfo.companySize, 6340 creatingFor: a.value.userBasicInfo.creatingFor 6341 }, 6342 h 6343 ), 6344 { 6345 reload: !0 6346 } 6347 ); 6348 } 6349 function Xe() { 6350 ae.value || r.value++; 6351 } 6352 function qe() { 6353 C.value || r.value--; 6354 } 6355 async function st() { 6356 ja(en.mainPage); 6357 const h = await Vf(a.value); 6358 if (h === "acceptOffer") { 6359 await Ge({ 6360 postCompleteRoute: jo({ 6361 experienceState: a.value.experienceState, 6362 companySize: a.value.userBasicInfo.companySize, 6363 creatingFor: a.value.userBasicInfo.creatingFor 6364 }) 6365 }); 6366 return; 6367 } 6368 h === "complete" && await Ge(); 6369 } 6370 async function lt() { 6371 Ha(en.mainPage), await Ge({ 6372 postCompleteRoute: jo({ 6373 experienceState: a.value.experienceState, 6374 companySize: a.value.userBasicInfo.companySize, 6375 creatingFor: a.value.userBasicInfo.creatingFor 6376 }) 6377 }); 6378 } 6379 async function ut() { 6380 i.value || (Vu(a.value), a.value.brandKitStepSkipped = !0, pu({ step: "make_signature_yours" }), Xe()); 6381 } 6382 async function Ge(h) { 6383 i.value = !0; 6384 const I = c.value, F = I === u.selectEmailPlatform, ve = I === u.webmailProPlusOffer, Fe = I === u.bookADemoOrSki
6384p, z = !a.value.visibleScreenIds?.includes("bookADemoOrSkip"), Ie = a.value.visibleScreenIds?.includes( 6385 He 6386 ), ue = F && (z || ae.value) && !Ie, Ze = ve && ae.value; 6387 s.value = Fe || ue || Ze ? p.completeOnboardingGettingReadyMsg : "", (Fe || ve || F && !io( 6388 a.value.visibleScreenIds 6389 )) && await Lo( 6390 a.value.userBasicInfo, 6391 a.value.userEmail, 6392 Fn(a.value) 6393 ); 6394 const ct = await I.action(a.value); 6395 await oe(ct); 6396 const It = Object.keys(ct).length > 0; 6397 if (It && F && z && !Ie && await oe({ 6398 eventName: "onboarding_completed_user_skipped_demo", 6399 eventAttributes: { 6400 demo_scheduled: `${a.value.demoScheduled}`, 6401 auto_filled: "true", 6402 auto_completed: "true" 6403 } 6404 }), s.value && It) 6405 await Ye(h?.postCompleteRoute); 6406 else if (i.value = !1, s.value = "", It) { 6407 if (I === u.tellUsAboutYou || I === u.signatureIntent) { 6408 const Ce = await ne.getBasicInfo({}), ri = Z( 6409 a.value.visibleScreenIds, 6410 yn({ 6411 experienceState: Ce.experienceState, 6412 backendScreens: Ce.visibleScreens ?? [] 6413 }) 6414 ); 6415 if (Ce.autoSubmitAction) { 6416 s.value = p.completeOnboardingGettingReadyMsg, a.value.workspaceInfo.emailPlatform = Ce.autoSubmitAction.emailPlatform, a.value.accountTypeInfo.companyIndustry = Ce.autoSubmitAction.companyIndustry, await P(Ce.autoSubmitAction); 6417 return; 6418 } 6419 if (a.value.visibleScreenIds = ri, w(a.value.visibleScreenIds), Qo(a.value), Kt(a.value, Ce), a.value.detectionConditions = Ce.detectionConditions, a.value.centralizedManagement = Ce.forcedCentralizedManagement, pn(a.value), await S(Ce) !== "noop") 6420 return; 6421 if (I === u.tellUsAboutYou) { 6422 yt("tellUsAboutYou"); 6423 return; 6424 } 6425 if (I === u.signatureIntent) { 6426 yt("signatureIntent"); 6427 return; 6428 } 6429 W( 6430 Ce.onboardingStatus || {}, 6431 a.value.visibleScreenIds || [], 6432 Ce.experienceState 6433 ); 6434 return; 6435 } 6436 if (I === u.selectEmailPlatform && Ie) { 6437 Am(), yt("selectEmailPlatform"); 6438 return; 6439 } 6440 Xe(); 6441 } else 6442 Qt("ONBOARDING_ERROR_TOAST"); 6443 } 6444 function yt(h) { 6445 const I = a.value.visibleScreenIds || [], F = I.indexOf(h); 6446 if (F >= 0 && F < I.length - 1) { 6447 r.value = F + 1; 6448 return; 6449 } 6450 if (F === -1) { 6451 r.value = Math.min( 6452 r.value, 6453 v.value.length - 1 6454 ); 6455 return; 6456 } 6457 r.value = Math.min( 6458 r.value + 1, 6459 v.value.length - 1 6460 ); 6461 } 6462 function St() { 6463 try { 6464 const h = sessionStorage.getItem(On); 6465 return h ? JSON.parse(h) : []; 6466 } catch { 6467 return []; 6468 } 6469 } 6470 function w(h) { 6471 sessionStorage.setItem(On, JSON.stringify(h)); 6472 } 6473 function Z(h, I) { 6474 const F = /* @__PURE__ */ new Set([...h ?? [], ...I]); 6475 return Object.keys(u).filter( 6476 (ve) => F.has(ve) && ve !== He 6477 ); 6478 } 6479 const ie = async () => { 6480 if (!a.value.demoScheduled) { 6481 const { userBasicInfo: h } = a.value, I = await Vi({ 6482 context: "onboarding", 6483 analytics: { from: "platform" }, 6484 data: { 6485 companySize: h.companySize, 6486 userCountry: a.value.userCountry, 6487 name: h.userName, 6488 email: a.value.userEmail, 6489 phone: h.userMobile, 6490 title: h.userTitle, 6491 company: dn( 6492 h.companyName, 6493 h.userName 6494 ), 6495 userId: Se.userId, 6496 accountId: Se.accountId 6497 } 6498 }); 6499 a.value.demoScheduled = I?.demoScheduled || !1; 6500 } 6501 }; 6502 return (h, I) => (m(), b(de, null, [ 6503 c.value ? (m(), b("div", zf, [ 6504 l("div", { 6505 ref_key: "formScrollEl", 6506 ref: f, 6507 class: "form" 6508 }, [ 6509 l("div", { 6510 class: H(["form-content", { 6511 "last-screen": fe.value 6512 }]), 6513 aid: c.value.aid 6514 }, [ 6515 x(d(mi), { class: "logo" }), 6516 (m(), Y(so(c.value.form), { 6517 modelValue: a.value, 6518 "onUpdate:modelValue": I[0] || (I[0] = (F) => a.value = F), 6519 onEnableToContinue: V,
6520 onLogoUploaded: T 6521 }, null, 40, ["modelValue"])) 6522 ], 10, Kf), 6523 l("div", Hf, [ 6524 C.value ? (m(), b("div", jf)) : (m(), Y(d(ke), { 6525 key: 0, 6526 color: "gray-500", 6527 label: d(p).buttonBackLabel, 6528 size: "lg", 6529 variant: "text", 6530 icon: "fa-regular fa-chevron-left", 6531 aid: `SIGNUP_FLOW_BACK_BTN_${c.value.aid}`, 6532 onClick: qe 6533 }, null, 8, ["label", "aid"])), 6534 fe.value ? (m(), b("div", Qf, [ 6535 x(d(ke), { 6536 class: "skip-btn", 6537 color: "gray-400", 6538 disabled: !M.value, 6539 label: d(p).buttonSkipLabel, 6540 size: "lg", 6541 variant: "text", 6542 aid: `SIGNUP_FLOW_SKIP_BTN_${c.value.aid}`, 6543 onClick: I[1] || (I[1] = () => Ge()) 6544 }, { 6545 default: Q(() => [ 6546 q(_(d(p).buttonSkipLabel) + " ", 1), 6547 M.value ? D("", !0) : (m(), Y(d(tt), { 6548 key: 0, 6549 aid: "SIGNUP_FLOW_CONTINUE_BTN_TOOLTIP" 6550 }, { 6551 default: Q(() => [ 6552 q(_(d(p).buttonContinueDisabledTooltip), 1) 6553 ]), 6554 _: 1 6555 })) 6556 ]), 6557 _: 1 6558 }, 8, ["disabled", "label", "aid"]), 6559 x(d(ke), { 6560 color: "primary", 6561 label: d(p).buttonScheduleLabel, 6562 disabled: !M.value, 6563 size: "lg", 6564 aid: `SIGNUP_FLOW_CONTINUE_BTN_${c.value.aid}`, 6565 onClick: ie 6566 }, { 6567 default: Q(() => [ 6568 q(_(d(p).buttonScheduleLabel) + " ", 1), 6569 M.value ? D("", !0) : (m(), Y(d(tt), { 6570 key: 0, 6571 aid: "SIGNUP_FLOW_CONTINUE_BTN_TOOLTIP" 6572 }, { 6573 default: Q(() => [ 6574 q(_(d(p).buttonContinueDisabledTooltip), 1) 6575 ]), 6576 _: 1 6577 })) 6578 ]), 6579 _: 1 6580 }, 8, ["label", "disabled", "aid"]) 6581 ])) : y.value ? (m(), b("div", Jf, [ 6582 x(d(ke), { 6583 class: "skip-btn", 6584 color: "gray-400", 6585 disabled: i.value, 6586 label: d(p).webmailFinalStepSkipOfferLabel, 6587 size: "lg", 6588 variant: "text", 6589 aid: `SIGNUP_FLOW_SKIP_OFFER_BTN_${c.value.aid}`, 6590 onClick: st 6591 }, { 6592 default: Q(() => [ 6593 q(_(d(p).webmailFinalStepSkipOfferLabel), 1) 6594 ]), 6595 _: 1 6596 }, 8, ["disabled", "label", "aid"]), 6597 x(d(ke), { 6598 color: "primary", 6599 label: d(p).webmailFinalStepGetOfferLabel, 6600 disabled: !M.value, 6601 loading: i.value, 6602 size: "lg", 6603 aid: `SIGNUP_FLOW_GET_OFFER_BTN_${c.value.aid}`, 6604 onClick: lt 6605 }, { 6606 default: Q(() => [ 6607 q(_(d(p).webmailFinalStepGetOfferLabel), 1) 6608 ]), 6609 _: 1 6610 }, 8, ["label", "disabled", "loading", "aid"]) 6611 ])) : N.value ? (m(), b("div", Xf, [ 6612 L.value ? (m(), Y(d(ke), { 6613 key: 0, 6614 class: "skip-btn", 6615 color: "gray-400", 6616 disabled: i.value, 6617 label: d(p).buttonSkipLabel, 6618 size: "lg", 6619 variant: "text", 6620 aid: `SIGNUP_FLOW_SKIP_BTN_${c.value.aid}`, 6621 onClick: ut 6622 }, { 6623 default: Q(() => [ 6624 q(_(d(p).buttonSkipLabel), 1) 6625 ]), 6626 _: 1 6627 }, 8, ["disabled", "label", "aid"])) : D("", !0), 6628 x(d(ke), { 6629 color: "primary", 6630 label: d(p).buttonContinueLabel, 6631 disabled: !M.value, 6632 loading: i.value, 6633 size: "lg", 6634 aid: `SIGNUP_FLOW_CONTINUE_BTN_${c.value.aid}`, 6635 onClick: I[2] || (I[2] = () => Ge()) 6636 }, { 6637 default: Q(() => [ 6638 q(_(d(p).buttonContinueLabel) + " ", 1), 6639 M.value ? D("", !0) : (m(), Y(d(tt), {
6640 key: 0, 6641 aid: "SIGNUP_FLOW_CONTINUE_BTN_TOOLTIP" 6642 }, { 6643 default: Q(() => [ 6644 q(_(d(p).buttonContinueDisabledTooltip), 1) 6645 ]), 6646 _: 1 6647 })) 6648 ]), 6649 _: 1 6650 }, 8, ["label", "disabled", "loading", "aid"]) 6651 ])) : (m(), b("div", qf, [ 6652 x(d(ke), { 6653 color: "primary", 6654 label: d(p).buttonContinueLabel, 6655 disabled: !M.value, 6656 loading: i.value, 6657 size: "lg", 6658 aid: `SIGNUP_FLOW_CONTINUE_BTN_${c.value.aid}`, 6659 onClick: I[3] || (I[3] = () => Ge()) 6660 }, { 6661 default: Q(() => [ 6662 q(_(d(p).buttonContinueLabel) + " ", 1), 6663 M.value ? D("", !0) : (m(), Y(d(tt), { 6664 key: 0, 6665 aid: "SIGNUP_FLOW_CONTINUE_BTN_TOOLTIP" 6666 }, { 6667 default: Q(() => [ 6668 q(_(d(p).buttonContinueDisabledTooltip), 1) 6669 ]), 6670 _: 1 6671 })) 6672 ]), 6673 _: 1 6674 }, 8, ["label", "disabled", "loading", "aid"]) 6675 ])) 6676 ]) 6677 ], 512), 6678 l("div", { 6679 class: H(["margin", { 6680 "margin-live-preview": k.value || E.value || N.value || y.value 6681 }]) 6682 }, [ 6683 (m(), Y(so(c.value.svg), ki(yi(A.value)), null, 16)) 6684 ], 2) 6685 ])) : D("", !0), 6686 s.value ? (m(), b("div", Zf, [ 6687 l("div", $f, [ 6688 l("div", ep, _(s.value), 1), 6689 I[4] || (I[4] = l("div", { class: "loader" }, null, -1)) 6690 ]) 6691 ])) : D("", !0) 6692 ], 64)); 6693 } 6694}), np = /* @__PURE__ */ ee(tp, [["__scopeId", "data-v-9e95d062"]]), op = /* @__PURE__ */ j({ 6695 __name: "onboarding-mfe", 6696 setup(e) { 6697 const t = window.location.pathname, n = /^\/v1\/onboarding(\/|$)/.test(t), o = t === po || t.startsWith(`${po}/`); 6698 return (a, i) => d(n) ? (m(), Y(np, { key: 0 })) : d(o) ? (m(), Y(Jr, { key: 1 })) : (m(), Y(xr, { key: 2 })); 6699 } 6700}), { bootstrap: vp, mount: _p, unmount: hp } = pi({ 6701 name: "onboarding", 6702 targetElement: "#content", 6703 mainComponent: op, 6704 includeCss: !0, 6705 viteCdnPrefix: "/assets-ws1/1790849113105", 6706 handleVueApp: (e) => { 6707 fi(e); 6708 } 6709}); 6710export { 6711 vp as bootstrap, 6712 _p as mount, 6713 hp as unmount 6714}; 6715//# sourceMappingURL=onboarding-mfe.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.