1var __defProp = Object.defineProperty; 2var __typeError = (msg) => { 3 throw TypeError(msg); 4}; 5var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; 6var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value); 7var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg); 8var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj)); 9var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value); 10/** 11* @vue/shared v3.5.13 12* (c) 2018-present Yuxi (Evan) You and Vue contributors 13* @license MIT 14**/ 15/*! #__NO_SIDE_EFFECTS__ */ 16// @__NO_SIDE_EFFECTS__ 17function makeMap(str) { 18 const map = /* @__PURE__ */ Object.create(null); 19 for (const key of str.split(",")) map[key] = 1; 20 return (val) => val in map; 21} 22const EMPTY_OBJ = {}; 23const EMPTY_ARR = []; 24const NOOP = () => { 25}; 26const NO = () => false; 27const isOn = (key) =>
vendor: 11,730 bytes, lines 27-339
27 key.charCodeAt(0) === 111 && key.charCodeAt(1) === 110 && // uppercase letter 28(key.charCodeAt(2) > 122 || key.charCodeAt(2) < 97); 29const isModelListener = (key) => key.startsWith("onUpdate:"); 30const extend$1 = Object.assign; 31const remove = (arr, el) => { 32 const i = arr.indexOf(el); 33 if (i > -1) { 34 arr.splice(i, 1); 35 } 36}; 37const hasOwnProperty$d = Object.prototype.hasOwnProperty; 38const hasOwn = (val, key) => hasOwnProperty$d.call(val, key); 39const isArray$4 = Array.isArray; 40const isMap$1 = (val) => toTypeString(val) === "[object Map]"; 41const isSet$1 = (val) => toTypeString(val) === "[object Set]"; 42const isDate$2 = (val) => toTypeString(val) === "[object Date]"; 43const isRegExp$1 = (val) => toTypeString(val) === "[object RegExp]"; 44const isFunction$4 = (val) => typeof val === "function"; 45const isString$1 = (val) => typeof val === "string"; 46const isSymbol$1 = (val) => typeof val === "symbol"; 47const isObject$4 = (val) => val !== null && typeof val === "object"; 48const isPromise$1 = (val) => { 49 return (isObject$4(val) || isFunction$4(val)) && isFunction$4(val.then) && isFunction$4(val.catch); 50}; 51const objectToString$2 = Object.prototype.toString; 52const toTypeString = (value) => objectToString$2.call(value); 53const toRawType = (value) => { 54 return toTypeString(value).slice(8, -1); 55}; 56const isPlainObject$4 = (val) => toTypeString(val) === "[object Object]"; 57const isIntegerKey = (key) => isString$1(key) && key !== "NaN" && key[0] !== "-" && "" + parseInt(key, 10) === key; 58const isReservedProp = /* @__PURE__ */ makeMap( 59 // the leading comma is intentional so empty string "" is also included 60 ",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted" 61); 62const isBuiltInDirective = /* @__PURE__ */ makeMap( 63 "bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo" 64); 65const cacheStringFunction = (fn) => { 66 const cache = /* @__PURE__ */ Object.create(null); 67 return (str) => { 68 const hit = cache[str]; 69 return hit || (cache[str] = fn(str)); 70 }; 71}; 72const camelizeRE = /-(\w)/g; 73const camelize = cacheStringFunction( 74 (str) => { 75 return str.replace(camelizeRE, (_, c2) => c2 ? c2.toUpperCase() : ""); 76 } 77); 78const hyphenateRE = /\B([A-Z])/g; 79const hyphenate = cacheStringFunction( 80 (str) => str.replace(hyphenateRE, "-$1").toLowerCase() 81); 82const capitalize$1 = cacheStringFunction((str) => { 83 return str.charAt(0).toUpperCase() + str.slice(1); 84}); 85const toHandlerKey = cacheStringFunction( 86 (str) => { 87 const s = str ? `on${capitalize$1(str)}` : ``; 88 return s; 89 } 90); 91const hasChanged = (value, oldValue) => !Object.is(value, oldValue); 92const invokeArrayFns = (fns, ...arg) => { 93 for (let i = 0; i < fns.length; i++) { 94 fns[i](...arg); 95 } 96}; 97const def = (obj, key, value, writable = false) => { 98 Object.defineProperty(obj, key, { 99 configurable: true, 100 enumerable: false, 101 writable, 102 value 103 }); 104}; 105const looseToNumber = (val) => { 106 const n = parseFloat(val); 107 return isNaN(n) ? val : n; 108}; 109const toNumber$2 = (val) => { 110 const n = isString$1(val) ? Number(val) : NaN; 111 return isNaN(n) ? val : n; 112}; 113let _globalThis$1; 114const getGlobalThis = () => { 115 return _globalThis$1 || (_globalThis$1 = typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : {}); 116}; 117const identRE = /^[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*$/; 118function genPropsAccessExp(name) { 119 return identRE.test(name) ? `__props.${name}` : `__props[${JSON.stringify(name)}]`; 120} 121function genCacheKey(source, options) { 122 return source + JSON.stringify( 123 options, 124 (_, val) => typeof val === "function" ? val.toString() : val 125 ); 126} 127const PatchFlags = { 128 "TEXT": 1, 129 "1": "TEXT", 130 "CLASS": 2, 131 "2": "CLASS", 132 "STYLE": 4, 133 "4": "STYLE", 134 "PROPS": 8, 135 "8": "PROPS", 136 "FULL_PROPS": 16, 137 "16": "FULL_PROPS", 138 "NEED_HYDRATION": 32, 139 "32": "NEED_HYDRATION", 140 "STABLE_FRAGMENT": 64, 141 "64": "STABLE_FRAGMENT", 142 "KEYED_FRAGMENT": 128, 143 "128": "KEYED_FRAGMENT", 144 "UNKEYED_FRAGMENT": 256, 145 "256": "UNKEYED_FRAGMENT", 146 "NEED_PATCH": 512, 147 "512": "NEED_PATCH", 148 "DYNAMIC_SLOTS": 1024, 149 "1024": "DYNAMIC_SLOTS", 150 "DEV_ROOT_FRAGMENT": 2048, 151 "2048": "DEV_ROOT_FRAGMENT", 152 "CACHED": -1, 153 "-1": "CACHED", 154 "BAIL": -2, 155 "-2": "BAIL" 156}; 157const PatchFlagNames = { 158 [1]: `TEXT`, 159 [2]: `CLASS`, 160 [4]: `STYLE`, 161 [8]: `PROPS`, 162 [16]: `FULL_PROPS`, 163 [32]: `NEED_HYDRATION`, 164 [64]: `STABLE_FRAGMENT`, 165 [128]: `KEYED_FRAGMENT`, 166 [256]: `UNKEYED_FRAGMENT`, 167 [512]: `NEED_PATCH`, 168 [1024]: `DYNAMIC_SLOTS`, 169 [2048]: `DEV_ROOT_FRAGMENT`, 170 [-1]: `HOISTED`, 171 [-2]: `BAIL` 172}; 173const ShapeFlags = { 174 "ELEMENT": 1, 175 "1": "ELEMENT", 176 "FUNCTIONAL_COMPONENT": 2, 177 "2": "FUNCTIONAL_COMPONENT", 178 "STATEFUL_COMPONENT": 4, 179 "4": "STATEFUL_COMPONENT", 180 "TEXT_CHILDREN": 8, 181 "8": "TEXT_CHILDREN", 182 "ARRAY_CHILDREN": 16, 183 "16": "ARRAY_CHILDREN", 184 "SLOTS_CHILDREN": 32, 185 "32": "SLOTS_CHILDREN", 186 "TELEPORT": 64, 187 "64": "TELEPORT", 188 "SUSPENSE": 128, 189 "128": "SUSPENSE", 190 "COMPONENT_SHOULD_KEEP_ALIVE": 256, 191 "256": "COMPONENT_SHOULD_KEEP_ALIVE", 192 "COMPONENT_KEPT_ALIVE": 512, 193 "512": "COMPONENT_KEPT_ALIVE", 194 "COMPONENT": 6, 195 "6": "COMPONENT" 196}; 197const SlotFlags = { 198 "STABLE": 1, 199 "1": "STABLE", 200 "DYNAMIC": 2, 201 "2": "DYNAMIC", 202 "FORWARDED": 3, 203 "3": "FORWARDED" 204}; 205const slotFlagsText = { 206 [1]: "STABLE", 207 [2]: "DYNAMIC", 208 [3]: "FORWARDED" 209}; 210const GLOBALS_ALLOWED = "Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol"; 211const isGloballyAllowed = /* @__PURE__ */ makeMap(GLOBALS_ALLOWED); 212const isGloballyWhitelisted = isGloballyAllowed; 213const range = 2; 214function generateCodeFrame(source, start = 0, end = source.length) { 215 start = Math.max(0, Math.min(start, source.length)); 216 end = Math.max(0, Math.min(end, source.length)); 217 if (start > end) return ""; 218 let lines = source.split(/(\r?\n)/); 219 const newlineSequences = lines.filter((_, idx) => idx % 2 === 1); 220 lines = lines.filter((_, idx) => idx % 2 === 0); 221 let count = 0; 222 const res = []; 223 for (let i = 0; i < lines.length; i++) { 224 count += lines[i].length + (newlineSequences[i] && newlineSequences[i].length || 0); 225 if (count >= start) { 226 for (let j = i - range; j <= i + range || end > count; j++) { 227 if (j < 0 || j >= lines.length) continue; 228 const line = j + 1; 229 res.push( 230 `${line}${" ".repeat(Math.max(3 - String(line).length, 0))}| ${lines[j]}` 231 ); 232 const lineLength = lines[j].length; 233 const newLineSeqLength = newlineSequences[j] && newlineSequences[j].length || 0; 234 if (j === i) { 235 const pad = start - (count - (lineLength + newLineSeqLength)); 236 const length = Math.max( 237 1, 238 end > count ? lineLength - pad : end - start 239 ); 240 res.push(` | ` + " ".repeat(pad) + "^".repeat(length)); 241 } else if (j > i) { 242 if (end > count) { 243 const length = Math.max(Math.min(end - count, lineLength), 1); 244 res.push(` | ` + "^".repeat(length)); 245 } 246 count += lineLength + newLineSeqLength; 247 } 248 } 249 break; 250 } 251 } 252 return res.join("\n"); 253} 254function normalizeStyle(value) { 255 if (isArray$4(value)) { 256 const res = {}; 257 for (let i = 0; i < value.length; i++) { 258 const item = value[i]; 259 const normalized = isString$1(item) ? parseStringStyle(item) : normalizeStyle(item); 260 if (normalized) { 261 for (const key in normalized) { 262 res[key] = normalized[key]; 263 } 264 } 265 } 266 return res; 267 } else if (isString$1(value) || isObject$4(value)) { 268 return value; 269 } 270} 271const listDelimiterRE = /;(?![^(]*\))/g; 272const propertyDelimiterRE = /:([^]+)/; 273const styleCommentRE = /\/\*[^]*?\*\//g; 274function parseStringStyle(cssText) { 275 const ret = {}; 276 cssText.replace(styleCommentRE, "").split(listDelimiterRE).forEach((item) => { 277 if (item) { 278 const tmp = item.split(propertyDelimiterRE); 279 tmp.length > 1 && (ret[tmp[0].trim()] = tmp[1].trim()); 280 } 281 }); 282 return ret; 283} 284function stringifyStyle(styles) { 285 if (!styles) return ""; 286 if (isString$1(styles)) return styles; 287 let ret = ""; 288 for (const key in styles) { 289 const value = styles[key]; 290 if (isString$1(value) || typeof value === "number") { 291 const normalizedKey = key.startsWith(`--`) ? key : hyphenate(key); 292 ret += `${normalizedKey}:${value};`; 293 } 294 } 295 return ret; 296} 297function normalizeClass(value) { 298 let res = ""; 299 if (isString$1(value)) { 300 res = value; 301 } else if (isArray$4(value)) { 302 for (let i = 0; i < value.length; i++) { 303 const normalized = normalizeClass(value[i]); 304 if (normalized) { 305 res += normalized + " "; 306 } 307 } 308 } else if (isObject$4(value)) { 309 for (const name in value) { 310 if (value[name]) { 311 res += name + " "; 312 } 313 } 314 } 315 return res.trim(); 316} 317function normalizeProps$1(props) { 318 if (!props) return null; 319 let { class: klass, style } = props; 320 if (klass && !isString$1(klass)) { 321 props.class = normalizeClass(klass); 322 } 323 if (style) { 324 props.style = normalizeStyle(style); 325 } 326 return props; 327} 328const HTML_TAGS = "html,body,base,head,link,meta,style,title,address,article,aside,footer,header,hgroup,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,summary,template,blockquote,iframe,tfoot"; 329const SVG_TAGS = "svg,animate,animateMotion,animateTransform,circle,clipPath,color-profile,defs,desc,discard,ellipse,feBlend,feColorMatrix,feComponentTransfer,feComposite,feConvolveMatrix,feDiffuseLighting,feDisplacementMap,feDistantLight,feDropShadow,feFlood,feFuncA,feFuncB,feFuncG,feFuncR,feGaussianBlur,feImage,feMerge,feMergeNode,feMorphology,feOffset,fePointLight,feSpecularLighting,feSpotLight,feTile,feTurbulence,filter,foreignObject,g,hatch,hatchpath,image,line,linearGradient,marker,mask,mesh,meshgradient,meshpatch,meshrow,metadata,mpath,path,pattern,polygon,polyline,radialGradient,rect,set,solidcolor,stop,switch,symbol,text,textPath,title,tspan,unknown,use,view"; 330const MATH_TAGS = "annotation,annotation-xml,maction,maligngroup,malignmark,math,menclose,merror,mfenced,mfrac,mfraction,mglyph,mi,mlabeledtr,mlongdiv,mmultiscripts,mn,mo,mover,mpadded,mphantom,mprescripts,mroot,mrow,ms,mscarries,mscarry,msgroup,msline,mspace,msqrt,msrow,mstack,mstyle,msub,msubsup,msup,mtable,mtd,mtext,mtr,munder,munderover,none,semantics"; 331const VOID_TAGS = "area,base,br,col,embed,hr,img,input,link,meta,param,source,track,wbr"; 332const isHTMLTag = /* @__PURE__ */ makeMap(HTML_TAGS); 333const isSVGTag = /* @__PURE__ */ makeMap(SVG_TAGS); 334const isMathMLTag = /* @__PURE__ */ makeMap(MATH_TAGS); 335const isVoidTag = /* @__PURE__ */ makeMap(VOID_TAGS); 336const specialBooleanAttrs = `itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly`; 337const isSpecialBooleanAttr = /* @__PURE__ */ makeMap(specialBooleanAttrs); 338const isBooleanAttr = /* @__PURE__ */ makeMap( 339 specialBooleanAttrs + `,async,autofocus,autoplay,controls,default,defer,disabled,hidden,inert,loop,open,required,reversed,scoped,seamless,
339checked,muted,multiple,selected` 340); 341function includeBooleanAttr(value) { 342 return !!value || value === ""; 343} 344const unsafeAttrCharRE = /[>/="'\u0009\u000a\u000c\u0020]/; 345const attrValidationCache = {}; 346function isSSRSafeAttrName(name) { 347 if (attrValidationCache.hasOwnProperty(name)) { 348 return attrValidationCache[name]; 349 } 350 const isUnsafe = unsafeAttrCharRE.test(name); 351 if (isUnsafe) { 352 console.error(`unsafe attribute name: ${name}`); 353 } 354 return attrValidationCache[name] = !isUnsafe; 355} 356const propsToAttrMap = { 357 acceptCharset: "accept-charset", 358 className: "class", 359 htmlFor: "for", 360 httpEquiv: "http-equiv" 361}; 362const isKnownHtmlAttr = /* @__PURE__ */ makeMap( 363 `accept,accept-charset,accesskey,action,align,allow,alt,async,autocapitalize,autocomplete,autofocus,autoplay,background,bgcolor,border,buffered,capture,challenge,charset,checked,cite,class,code,codebase,color,cols,colspan,content,contenteditable,contextmenu,controls,coords,crossorigin,csp,data,datetime,decoding,default,defer,dir,dirname,disabled,download,draggable,dropzone,enctype,enterkeyhint,for,form,formaction,formenctype,formmethod,formnovalidate,formtarget,headers,height,hidden,high,href,hreflang,http-equiv,icon,id,importance,inert,integrity,ismap,itemprop,keytype,kind,label,lang,language,loading,list,loop,low,manifest,max,maxlength,minlength,media,min,multiple,muted,name,novalidate,open,optimum,pattern,ping,placeholder,poster,preload,radiogroup,readonly,referrerpolicy,rel,required,reversed,rows,rowspan,sandbox,scope,scoped,selected,shape,size,sizes,slot,span,spellcheck,src,srcdoc,srclang,srcset,start,step,style,summary,tabindex,target,title,translate,type,usemap,value,width,wrap` 364); 365const isKnownSvgAttr = /* @__PURE__ */ makeMap( 366 `xmlns,accent-height,accumulate,additive,alignment-baseline,alphabetic,amplitude,arabic-form,ascent,attributeName,attributeType,azimuth,baseFrequency,baseline-shift,baseProfile,bbox,begin,bias,by,calcMode,cap-height,class,clip,clipPathUnits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,contentScriptType,contentStyleType,crossorigin,cursor,cx,cy,d,decelerate,descent,diffuseConstant,direction,display,divisor,dominant-baseline,dur,dx,dy,edgeMode,elevation,enable-background,end,exponent,fill,fill-opacity,fill-rule,filter,filterRes,filterUnits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,format,from,fr,fx,fy,g1,g2,glyph-name,glyph-orientation-horizontal,glyph-orientation-vertical,glyphRef,gradientTransform,gradientUnits,hanging,height,href,hreflang,horiz-adv-x,horiz-origin-x,id,ideographic,image-rendering,in,in2,intercept,k,k1,k2,k3,k4,kernelMatrix,kernelUnitLength,kerning,keyPoints,keySplines,keyTimes,lang,lengthAdjust,letter-spacing,lighting-color,limitingConeAngle,local,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mask,maskContentUnits,maskUnits,mathematical,max,media,method,min,mode,name,numOctaves,offset,opacity,operator,order,orient,orientation,origin,overflow,overline-position,overline-thickness,panose-1,paint-order,path,pathLength,patternContentUnits,patternTransform,patternUnits,ping,pointer-events,points,pointsAtX,pointsAtY,pointsAtZ,preserveAlpha,preserveAspectRatio,primitiveUnits,r,radius,referrerPolicy,refX,refY,rel,rendering-intent,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,result,rotate,rx,ry,scale,seed,shape-rendering,slope,spacing,specularConstant,specularExponent,speed,spreadMethod,startOffset,stdDeviation,stemh,stemv,stitchTiles,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,string,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,style,surfaceScale,systemLanguage,tabindex,tableValues,target,targetX,targetY,text-anchor,text-decoration,text-rendering,textLength,to,transform,transform-origin,type,u1,u2,underline-position,underline-thickness,unicode,unicode
366-bidi,unicode-range,units-per-em,v-alphabetic,v-hanging,v-ideographic,v-mathematical,values,vector-effect,version,vert-adv-y,vert-origin-x,vert-origin-y,viewBox,viewTarget,visibility,width,widths,word-spacing,writing-mode,x,x-height,x1,x2,xChannelSelector,xlink:actuate,xlink:arcrole,xlink:href,xlink:role,xlink:show,xlink:title,xlink:type,xmlns:xlink,xml:base,xml:lang,xml:space,y,y1,y2,yChannelSelector,z,zoomAndPan` 367); 368const isKnownMathMLAttr = /* @__PURE__ */ makeMap( 369 `accent,accentunder,actiontype,align,alignmentscope,altimg,altimg-height,altimg-valign,altimg-width,alttext,bevelled,close,columnsalign,columnlines,columnspan,denomalign,depth,dir,display,displaystyle,encoding,equalcolumns,equalrows,fence,fontstyle,fontweight,form,frame,framespacing,groupalign,height,href,id,indentalign,indentalignfirst,indentalignlast,indentshift,indentshiftfirst,indentshiftlast,indextype,justify,largetop,largeop,lquote,lspace,mathbackground,mathcolor,mathsize,mathvariant,maxsize,minlabelspacing,mode,other,overflow,position,rowalign,rowlines,rowspan,rquote,rspace,scriptlevel,scriptminsize,scriptsizemultiplier,selection,separator,separators,shift,side,src,stackalign,stretchy,subscriptshift,superscriptshift,symmetric,voffset,width,widths,xlink:href,xlink:show,xlink:type,xmlns` 370); 371function isRenderableAttrValue(value) { 372 if (value == null) { 373 return false; 374 } 375 const type = typeof value; 376 return type === "string" || type === "number" || type === "boolean"; 377} 378const escapeRE = /["'&<>]/; 379function escapeHtml$1(string) { 380 const str = "" + string; 381 const match2 = escapeRE.exec(str); 382 if (!match2) { 383 return str; 384 } 385 let html = ""; 386 let escaped; 387 let index2; 388 let lastIndex = 0; 389 for (index2 = match2.index; index2 < str.length; index2++) { 390 switch (str.charCodeAt(index2)) { 391 case 34: 392 escaped = """; 393 break; 394 case 38: 395 escaped = "&"; 396 break; 397 case 39: 398 escaped = "'"; 399 break; 400 case 60: 401 escaped = "<"; 402 break; 403 case 62: 404 escaped = ">"; 405 break; 406 default: 407 continue; 408 } 409 if (lastIndex !== index2) { 410 html += str.slice(lastIndex, index2); 411 } 412 lastIndex = index2 + 1; 413 html += escaped; 414 } 415 return lastIndex !== index2 ? html + str.slice(lastIndex, index2) : html; 416} 417const commentStripRE = /^-?>|<!--|-->|--!>|<!-$/g; 418function escapeHtmlComment(src) { 419 return src.replace(commentStripRE, ""); 420} 421const cssVarNameEscapeSymbolsRE = /[ !"#$%&'()*+,./:;<=>?@[\\\]^`{|}~]/g; 422function getEscapedCssVarName(key, doubleEscape) { 423 return key.replace( 424 cssVarNameEscapeSymbolsRE, 425 (s) => doubleEscape ? s === '"' ? '\\\\\\"' : `\\\\${s}` : `\\${s}` 426 ); 427} 428function looseCompareArrays(a, b2) { 429 if (a.length !== b2.length) return false; 430 let equal = true; 431 for (let i = 0; equal && i < a.length; i++) { 432 equal = looseEqual(a[i], b2[i]); 433 } 434 return equal; 435} 436function looseEqual(a, b2) { 437 if (a === b2) return true; 438 let aValidType = isDate$2(a); 439 let bValidType = isDate$2(b2); 440 if (aValidType || bValidType) { 441 return aValidType && bValidType ? a.getTime() === b2.getTime() : false; 442 } 443 aValidType = isSymbol$1(a); 444 bValidType = isSymbol$1(b2); 445 if (aValidType || bValidType) { 446 return a === b2; 447 } 448 aValidType = isArray$4(a); 449 bValidType = isArray$4(b2); 450 if (aValidType || bValidType) { 451 return aValidType && bValidType ? looseCompareArrays(a, b2) : false; 452 } 453 aValidType = isObject$4(a); 454 bValidType = isObject$4(b2); 455 if (aValidType || bValidType) { 456 if (!aValidType || !bValidType) { 457 return false; 458 } 459 const aKeysCount = Object.keys(a).length; 460 const bKeysCount = Object.keys(b2).length; 461 if (aKeysCount !== bKeysCount) { 462 return false; 463 } 464 for (const key in a) { 465 const aHasKey = a.hasOwnProperty(key); 466 const bHasKey = b2.hasOwnProperty(key); 467 if (aHasKey && !bHasKey || !aHasKey && bHasKey || !looseEqual(a[key], b2[key])) { 468 return false; 469 } 470 } 471 } 472 return String(a) === String(b2); 473} 474function looseIndexOf(arr, val) { 475 return arr.findIndex((item) => looseEqual(item, val)); 476} 477const isRef$1 = (val) => { 478 return !!(val && val["__v_isRef"] === true); 479}; 480const toDisplayString = (val) => { 481 return isString$1(val) ? val : val == null ? "" : isArray$4(val) || isObject$4(val) && (val.toString === objectToString$2 || !isFunction$4(val.toString)) ? isRef$1(val) ? toDisplayString(val.value) : JSON.stringify(val, replacer, 2) : String(val); 482}; 483const replacer = (_key, val) => { 484 if (isRef$1(val)) { 485 return replacer(_key, val.value); 486 } else if (isMap$1(val)) { 487 return { 488 [`Map(${val.size})`]: [...val.entries()].reduce( 489 (entries, [key, val2], i) => {
490 entries[stringifySymbol(key, i) + " =>"] = val2; 491 return entries; 492 }, 493 {} 494 ) 495 }; 496 } else if (isSet$1(val)) { 497 return { 498 [`Set(${val.size})`]: [...val.values()].map((v2) => stringifySymbol(v2)) 499 }; 500 } else if (isSymbol$1(val)) { 501 return stringifySymbol(val); 502 } else if (isObject$4(val) && !isArray$4(val) && !isPlainObject$4(val)) { 503 return String(val); 504 } 505 return val; 506}; 507const stringifySymbol = (v2, i = "") => { 508 var _a; 509 return ( 510 // Symbol.description in es2019+ so we need to cast here to pass 511 // the lib: es2016 check 512 isSymbol$1(v2) ? `Symbol(${(_a = v2.description) != null ? _a : i})` : v2 513 ); 514}; 515const shared_esmBundler = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 516 __proto__: null, 517 EMPTY_ARR, 518 EMPTY_OBJ, 519 NO, 520 NOOP, 521 PatchFlagNames, 522 PatchFlags, 523 ShapeFlags, 524 SlotFlags, 525 camelize, 526 capitalize: capitalize$1, 527 cssVarNameEscapeSymbolsRE, 528 def, 529 escapeHtml: escapeHtml$1, 530 escapeHtmlComment, 531 extend: extend$1, 532 genCacheKey, 533 genPropsAccessExp, 534 generateCodeFrame, 535 getEscapedCssVarName, 536 getGlobalThis, 537 hasChanged, 538 hasOwn, 539 hyphenate, 540 includeBooleanAttr, 541 invokeArrayFns, 542 isArray: isArray$4, 543 isBooleanAttr, 544 isBuiltInDirective, 545 isDate: isDate$2, 546 isFunction: isFunction$4, 547 isGloballyAllowed, 548 isGloballyWhitelisted, 549 isHTMLTag, 550 isIntegerKey, 551 isKnownHtmlAttr, 552 isKnownMathMLAttr, 553 isKnownSvgAttr, 554 isMap: isMap$1, 555 isMathMLTag, 556 isModelListener, 557 isObject: isObject$4, 558 isOn, 559 isPlainObject: isPlainObject$4, 560 isPromise: isPromise$1, 561 isRegExp: isRegExp$1, 562 isRenderableAttrValue, 563 isReservedProp, 564 isSSRSafeAttrName, 565 isSVGTag, 566 isSet: isSet$1, 567 isSpecialBooleanAttr, 568 isString: isString$1, 569 isSymbol: isSymbol$1, 570 isVoidTag, 571 looseEqual, 572 looseIndexOf, 573 looseToNumber, 574 makeMap, 575 normalizeClass, 576 normalizeProps: normalizeProps$1, 577 normalizeStyle, 578 objectToString: objectToString$2, 579 parseStringStyle, 580 propsToAttrMap, 581 remove, 582 slotFlagsText, 583 stringifyStyle, 584 toDisplayString, 585 toHandlerKey, 586 toNumber: toNumber$2, 587 toRawType, 588 toTypeString 589}, Symbol.toStringTag, { value: "Module" })); 590/** 591* @vue/reactivity v3.5.13 592* (c) 2018-present Yuxi (Evan) You and Vue contributors 593* @license MIT
594**/ 595let activeEffectScope; 596class EffectScope { 597 constructor(detached = false) { 598 this.detached = detached; 599 this._active = true; 600 this.effects = []; 601 this.cleanups = []; 602 this._isPaused = false; 603 this.parent = activeEffectScope; 604 if (!detached && activeEffectScope) { 605 this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push( 606 this 607 ) - 1; 608 } 609 } 610 get active() { 611 return this._active; 612 } 613 pause() { 614 if (this._active) { 615 this._isPaused = true; 616 let i, l3; 617 if (this.scopes) { 618 for (i = 0, l3 = this.scopes.length; i < l3; i++) { 619 this.scopes[i].pause(); 620 } 621 } 622 for (i = 0, l3 = this.effects.length; i < l3; i++) { 623 this.effects[i].pause(); 624 } 625 } 626 } 627 /** 628 * Resumes the effect scope, including all child scopes and effects. 629 */ 630 resume() { 631 if (this._active) { 632 if (this._isPaused) { 633 this._isPaused = false; 634 let i, l3; 635 if (this.scopes) { 636 for (i = 0, l3 = this.scopes.length; i < l3; i++) { 637 this.scopes[i].resume(); 638 } 639 } 640 for (i = 0, l3 = this.effects.length; i < l3; i++) { 641 this.effects[i].resume(); 642 } 643 } 644 } 645 } 646 run(fn) { 647 if (this._active) { 648 const currentEffectScope = activeEffectScope; 649 try { 650 activeEffectScope = this; 651 return fn(); 652 } finally { 653 activeEffectScope = currentEffectScope; 654 } 655 } 656 } 657 /** 658 * This should only be called on non-detached scopes 659 * @internal 660 */ 661 on() { 662 activeEffectScope = this; 663 } 664 /** 665 * This should only be called on non-detached scopes 666 * @internal 667 */ 668 off() { 669 activeEffectScope = this.parent; 670 } 671 stop(fromParent) { 672 if (this._active) { 673 this._active = false; 674 let i, l3; 675 for (i = 0, l3 = this.effects.length; i < l3; i++) { 676 this.effects[i].stop(); 677 } 678 this.effects.length = 0; 679 for (i = 0, l3 = this.cleanups.length; i < l3; i++) { 680 this.cleanups[i](); 681 } 682 this.cleanups.length = 0; 683 if (this.scopes) { 684 for (i = 0, l3 = this.scopes.length; i < l3; i++) { 685 this.scopes[i].stop(true); 686 } 687 this.scopes.length = 0; 688 } 689 if (!this.detached && this.parent && !fromParent) { 690 const last = this.parent.scopes.pop(); 691 if (last && last !== this) { 692 this.parent.scopes[this.index] = last; 693 last.index = this.index; 694 } 695 } 696 this.parent = void 0; 697 } 698 } 699} 700function effectScope(detached) { 701 return new EffectScope(detached); 702} 703function getCurrentScope() { 704 return activeEffectScope; 705} 706function onScopeDispose(fn, failSilently = false) { 707 if (activeEffectScope) { 708 activeEffectScope.cleanups.push(fn); 709 } 710} 711let activeSub; 712const pausedQueueEffects = /* @__PURE__ */ new WeakSet(); 713class ReactiveEffect { 714 constructor(fn) { 715 this.fn = fn; 716 this.deps = void 0; 717 this.depsTail = void 0; 718 this.flags = 1 | 4; 719 this.next = void 0; 720 this.cleanup = void 0; 721 this.scheduler = void 0; 722 if (activeEffectScope && activeEffectScope.active) { 723 activeEffectScope.effects.push(this); 724 } 725 } 726 pause() { 727 this.flags |= 64; 728 } 729 resume() { 730 if (this.flags & 64) { 731 this.flags &= -65; 732 if (pausedQueueEffects.has(this)) { 733 pausedQueueEffects.delete(this); 734 this.trigger(); 735 } 736 } 737 } 738 /** 739 * @internal 740 */ 741 notify() { 742 if (this.flags & 2 && !(this.flags & 32)) { 743 return; 744 } 745 if (!(this.flags & 8)) { 746 batch(this); 747 } 748 } 749 run() { 750 if (!(this.flags & 1)) { 751 return this.fn(); 752 } 753 this.flags |= 2; 754 cleanupEffect(this); 755 prepareDeps(this); 756 const prevEffect = activeSub; 757 const prevShouldTrack = shouldTrack; 758 activeSub = this; 759 shouldTrack = true; 760 try { 761 return this.fn(); 762 } finally { 763 cleanupDeps(this); 764 activeSub = prevEffect; 765 shouldTrack = prevShouldTrack; 766 this.flags &= -3; 767 } 768 } 769 stop() { 770 if (this.flags & 1) { 771 for (let link = this.deps; link; link = link.nextDep) { 772 removeSub(link); 773 } 774 this.deps = this.depsTail = void 0; 775 cleanupEffect(this); 776 this.onStop && this.onStop(); 777 this.flags &= -2; 778 } 779 } 780 trigger() { 781 if (this.flags & 64) {
vendor: 4,397 bytes, lines 782-985
782 pausedQueueEffects.add(this); 783 } else if (this.scheduler) { 784 this.scheduler(); 785 } else { 786 this.runIfDirty(); 787 } 788 } 789 /** 790 * @internal 791 */ 792 runIfDirty() { 793 if (isDirty(this)) { 794 this.run(); 795 } 796 } 797 get dirty() { 798 return isDirty(this); 799 } 800} 801let batchDepth = 0; 802let batchedSub; 803let batchedComputed; 804function batch(sub2, isComputed = false) { 805 sub2.flags |= 8; 806 if (isComputed) { 807 sub2.next = batchedComputed; 808 batchedComputed = sub2; 809 return; 810 } 811 sub2.next = batchedSub; 812 batchedSub = sub2; 813} 814function startBatch() { 815 batchDepth++; 816} 817function endBatch() { 818 if (--batchDepth > 0) { 819 return; 820 } 821 if (batchedComputed) { 822 let e = batchedComputed; 823 batchedComputed = void 0; 824 while (e) { 825 const next = e.next; 826 e.next = void 0; 827 e.flags &= -9; 828 e = next; 829 } 830 } 831 let error; 832 while (batchedSub) { 833 let e = batchedSub; 834 batchedSub = void 0; 835 while (e) { 836 const next = e.next; 837 e.next = void 0; 838 e.flags &= -9; 839 if (e.flags & 1) { 840 try { 841 ; 842 e.trigger(); 843 } catch (err) { 844 if (!error) error = err; 845 } 846 } 847 e = next; 848 } 849 } 850 if (error) throw error; 851} 852function prepareDeps(sub2) { 853 for (let link = sub2.deps; link; link = link.nextDep) { 854 link.version = -1; 855 link.prevActiveLink = link.dep.activeLink; 856 link.dep.activeLink = link; 857 } 858} 859function cleanupDeps(sub2) { 860 let head; 861 let tail = sub2.depsTail; 862 let link = tail; 863 while (link) { 864 const prev = link.prevDep; 865 if (link.version === -1) { 866 if (link === tail) tail = prev; 867 removeSub(link); 868 removeDep(link); 869 } else { 870 head = link; 871 } 872 link.dep.activeLink = link.prevActiveLink; 873 link.prevActiveLink = void 0; 874 link = prev; 875 } 876 sub2.deps = head; 877 sub2.depsTail = tail; 878} 879function isDirty(sub2) { 880 for (let link = sub2.deps; link; link = link.nextDep) { 881 if (link.dep.version !== link.version || link.dep.computed && (refreshComputed(link.dep.computed) || link.dep.version !== link.version)) { 882 return true; 883 } 884 } 885 if (sub2._dirty) { 886 return true; 887 } 888 return false; 889} 890function refreshComputed(computed2) { 891 if (computed2.flags & 4 && !(computed2.flags & 16)) { 892 return; 893 } 894 computed2.flags &= -17; 895 if (computed2.globalVersion === globalVersion) { 896 return; 897 } 898 computed2.globalVersion = globalVersion; 899 const dep = computed2.dep; 900 computed2.flags |= 2; 901 if (dep.version > 0 && !computed2.isSSR && computed2.deps && !isDirty(computed2)) { 902 computed2.flags &= -3; 903 return; 904 } 905 const prevSub = activeSub; 906 const prevShouldTrack = shouldTrack; 907 activeSub = computed2; 908 shouldTrack = true; 909 try { 910 prepareDeps(computed2); 911 const value = computed2.fn(computed2._value); 912 if (dep.version === 0 || hasChanged(value, computed2._value)) { 913 computed2._value = value; 914 dep.version++; 915 } 916 } catch (err) { 917 dep.version++; 918 throw err; 919 } finally { 920 activeSub = prevSub; 921 shouldTrack = prevShouldTrack; 922 cleanupDeps(computed2); 923 computed2.flags &= -3; 924 } 925} 926function removeSub(link, soft = false) { 927 const { dep, prevSub, nextSub } = link; 928 if (prevSub) { 929 prevSub.nextSub = nextSub; 930 link.prevSub = void 0; 931 } 932 if (nextSub) { 933 nextSub.prevSub = prevSub; 934 link.nextSub = void 0; 935 } 936 if (dep.subs === link) { 937 dep.subs = prevSub; 938 if (!prevSub && dep.computed) { 939 dep.computed.flags &= -5; 940 for (let l3 = dep.computed.deps; l3; l3 = l3.nextDep) { 941 removeSub(l3, true); 942 } 943 } 944 } 945 if (!soft && !--dep.sc && dep.map) { 946 dep.map.delete(dep.key); 947 } 948} 949function removeDep(link) { 950 const { prevDep, nextDep } = link; 951 if (prevDep) { 952 prevDep.nextDep = nextDep; 953 link.prevDep = void 0; 954 } 955 if (nextDep) { 956 nextDep.prevDep = prevDep; 957 link.nextDep = void 0; 958 } 959} 960function effect(fn, options) { 961 if (fn.effect instanceof ReactiveEffect) { 962 fn = fn.effect.fn; 963 } 964 const e = new ReactiveEffect(fn); 965 if (options) { 966 extend$1(e, options); 967 } 968 try { 969 e.run(); 970 } catch (err) { 971 e.stop(); 972 throw err; 973 } 974 const runner = e.run.bind(e); 975 runner.effect = e; 976 return runner; 977} 978function stop(runner) { 979 runner.effect.stop(); 980} 981let shouldTrack = true; 982const trackStack = []; 983function pauseTracking() { 984 trackStack.push(shouldTrack); 985 shouldTrack = false;
vendor: 3,760 bytes, lines 986-1143
986} 987function resetTracking() { 988 const last = trackStack.pop(); 989 shouldTrack = last === void 0 ? true : last; 990} 991function cleanupEffect(e) { 992 const { cleanup } = e; 993 e.cleanup = void 0; 994 if (cleanup) { 995 const prevSub = activeSub; 996 activeSub = void 0; 997 try { 998 cleanup(); 999 } finally { 1000 activeSub = prevSub; 1001 } 1002 } 1003} 1004let globalVersion = 0; 1005class Link { 1006 constructor(sub2, dep) { 1007 this.sub = sub2; 1008 this.dep = dep; 1009 this.version = dep.version; 1010 this.nextDep = this.prevDep = this.nextSub = this.prevSub = this.prevActiveLink = void 0; 1011 } 1012} 1013class Dep { 1014 constructor(computed2) { 1015 this.computed = computed2; 1016 this.version = 0; 1017 this.activeLink = void 0; 1018 this.subs = void 0; 1019 this.map = void 0; 1020 this.key = void 0; 1021 this.sc = 0; 1022 } 1023 track(debugInfo) { 1024 if (!activeSub || !shouldTrack || activeSub === this.computed) { 1025 return; 1026 } 1027 let link = this.activeLink; 1028 if (link === void 0 || link.sub !== activeSub) { 1029 link = this.activeLink = new Link(activeSub, this); 1030 if (!activeSub.deps) { 1031 activeSub.deps = activeSub.depsTail = link; 1032 } else { 1033 link.prevDep = activeSub.depsTail; 1034 activeSub.depsTail.nextDep = link; 1035 activeSub.depsTail = link; 1036 } 1037 addSub(link); 1038 } else if (link.version === -1) { 1039 link.version = this.version; 1040 if (link.nextDep) { 1041 const next = link.nextDep; 1042 next.prevDep = link.prevDep; 1043 if (link.prevDep) { 1044 link.prevDep.nextDep = next; 1045 } 1046 link.prevDep = activeSub.depsTail; 1047 link.nextDep = void 0; 1048 activeSub.depsTail.nextDep = link; 1049 activeSub.depsTail = link; 1050 if (activeSub.deps === link) { 1051 activeSub.deps = next; 1052 } 1053 } 1054 } 1055 return link; 1056 } 1057 trigger(debugInfo) { 1058 this.version++; 1059 globalVersion++; 1060 this.notify(debugInfo); 1061 } 1062 notify(debugInfo) { 1063 startBatch(); 1064 try { 1065 if (false) ; 1066 for (let link = this.subs; link; link = link.prevSub) { 1067 if (link.sub.notify()) { 1068 ; 1069 link.sub.dep.notify(); 1070 } 1071 } 1072 } finally { 1073 endBatch(); 1074 } 1075 } 1076} 1077function addSub(link) { 1078 link.dep.sc++; 1079 if (link.sub.flags & 4) { 1080 const computed2 = link.dep.computed; 1081 if (computed2 && !link.dep.subs) { 1082 computed2.flags |= 4 | 16; 1083 for (let l3 = computed2.deps; l3; l3 = l3.nextDep) { 1084 addSub(l3); 1085 } 1086 } 1087 const currentTail = link.dep.subs; 1088 if (currentTail !== link) { 1089 link.prevSub = currentTail; 1090 if (currentTail) currentTail.nextSub = link; 1091 } 1092 link.dep.subs = link; 1093 } 1094} 1095const targetMap = /* @__PURE__ */ new WeakMap(); 1096const ITERATE_KEY = Symbol( 1097 "" 1098); 1099const MAP_KEY_ITERATE_KEY = Symbol( 1100 "" 1101); 1102const ARRAY_ITERATE_KEY = Symbol( 1103 "" 1104); 1105function track(target, type, key) { 1106 if (shouldTrack && activeSub) { 1107 let depsMap = targetMap.get(target); 1108 if (!depsMap) { 1109 targetMap.set(target, depsMap = /* @__PURE__ */ new Map()); 1110 } 1111 let dep = depsMap.get(key); 1112 if (!dep) { 1113 depsMap.set(key, dep = new Dep()); 1114 dep.map = depsMap; 1115 dep.key = key; 1116 } 1117 { 1118 dep.track(); 1119 } 1120 } 1121} 1122function trigger(target, type, key, newValue, oldValue, oldTarget) { 1123 const depsMap = targetMap.get(target); 1124 if (!depsMap) { 1125 globalVersion++; 1126 return; 1127 } 1128 const run = (dep) => { 1129 if (dep) { 1130 { 1131 dep.trigger(); 1132 } 1133 } 1134 }; 1135 startBatch(); 1136 if (type === "clear") { 1137 depsMap.forEach(run); 1138 } else { 1139 const targetIsArray = isArray$4(target); 1140 const isArrayIndex = targetIsArray && isIntegerKey(key); 1141 if (targetIsArray && key === "length") { 1142 const newLength = Number(newValue); 1143 depsMap.forEach((dep, key2) => {
1144 if (key2 === "length" || key2 === ARRAY_ITERATE_KEY || !isSymbol$1(key2) && key2 >= newLength) { 1145 run(dep); 1146 } 1147 }); 1148 } else { 1149 if (key !== void 0 || depsMap.has(void 0)) { 1150 run(depsMap.get(key)); 1151 } 1152 if (isArrayIndex) { 1153 run(depsMap.get(ARRAY_ITERATE_KEY)); 1154 } 1155 switch (type) { 1156 case "add": 1157 if (!targetIsArray) { 1158 run(depsMap.get(ITERATE_KEY)); 1159 if (isMap$1(target)) { 1160 run(depsMap.get(MAP_KEY_ITERATE_KEY)); 1161 } 1162 } else if (isArrayIndex) { 1163 run(depsMap.get("length")); 1164 } 1165 break; 1166 case "delete": 1167 if (!targetIsArray) { 1168 run(depsMap.get(ITERATE_KEY)); 1169 if (isMap$1(target)) { 1170 run(depsMap.get(MAP_KEY_ITERATE_KEY)); 1171 } 1172 } 1173 break; 1174 case "set": 1175 if (isMap$1(target)) { 1176 run(depsMap.get(ITERATE_KEY)); 1177 } 1178 break; 1179 } 1180 } 1181 } 1182 endBatch(); 1183} 1184function getDepFromReactive(object, key) { 1185 const depMap = targetMap.get(object); 1186 return depMap && depMap.get(key); 1187} 1188function reactiveReadArray(array) { 1189 const raw = toRaw(array); 1190 if (raw === array) return raw; 1191 track(raw, "iterate", ARRAY_ITERATE_KEY); 1192 return isShallow(array) ? raw : raw.map(toReactive); 1193} 1194function shallowReadArray(arr) { 1195 track(arr = toRaw(arr), "iterate", ARRAY_ITERATE_KEY); 1196 return arr; 1197} 1198const arrayInstrumentations = { 1199 __proto__: null, 1200 [Symbol.iterator]() { 1201 return iterator$1(this, Symbol.iterator, toReactive); 1202 }, 1203 concat(...args) { 1204 return reactiveReadArray(this).concat( 1205 ...args.map((x2) => isArray$4(x2) ? reactiveReadArray(x2) : x2) 1206 ); 1207 }, 1208 entries() { 1209 return iterator$1(this, "entries", (value) => { 1210 value[1] = toReactive(value[1]); 1211 return value; 1212 }); 1213 }, 1214 every(fn, thisArg) { 1215 return apply$1(this, "every", fn, thisArg, void 0, arguments); 1216 }, 1217 filter(fn, thisArg) { 1218 return apply$1(this, "filter", fn, thisArg, (v2) => v2.map(toReactive), arguments); 1219 }, 1220 find(fn, thisArg) { 1221 return apply$1(this, "find", fn, thisArg, toReactive, arguments); 1222 }, 1223 findIndex(fn, thisArg) { 1224 return apply$1(this, "findIndex", fn, thisArg, void 0, arguments); 1225 }, 1226 findLast(fn, thisArg) { 1227 return apply$1(this, "findLast", fn, thisArg, toReactive, arguments); 1228 }, 1229 findLastIndex(fn, thisArg) { 1230 return apply$1(this, "findLastIndex", fn, thisArg, void 0, arguments); 1231 }, 1232 // flat, flatMap could benefit from ARRAY_ITERATE but are not straight-forward to implement 1233 forEach(fn, thisArg) { 1234 return apply$1(this, "forEach", fn, thisArg, void 0, arguments); 1235 }, 1236 includes(...args) { 1237 return searchProxy(this, "includes", args); 1238 }, 1239 indexOf(...args) { 1240 return searchProxy(this, "indexOf", args); 1241 }, 1242 join(separator) { 1243 return reactiveReadArray(this).join(separator); 1244 }, 1245 // keys() iterator only reads `length`, no optimisation required 1246 lastIndexOf(...args) { 1247 return searchProxy(this, "lastIndexOf", args); 1248 }, 1249 map(fn, thisArg) { 1250 return apply$1(this, "map", fn, thisArg, void 0, arguments); 1251 }, 1252 pop() { 1253 return noTracking(this, "pop"); 1254 }, 1255 push(...args) { 1256 return noTracking(this, "push", args); 1257 }, 1258 reduce(fn, ...args) { 1259 return reduce(this, "reduce", fn, args); 1260 }, 1261 reduceRight(fn, ...args) { 1262 return reduce(this, "reduceRight", fn, args); 1263 }, 1264 shift() { 1265 return noTracking(this, "shift"); 1266 }, 1267 // slice could use ARRAY_ITERATE but also seems to beg for range tracking 1268 some(fn, thisArg) { 1269 return apply$1(this, "some", fn, thisArg, void 0, arguments); 1270 }, 1271 splice(...args) { 1272 return noTracking(this, "splice", args); 1273 }, 1274 toReversed() { 1275 return reactiveReadArray(this).toReversed(); 1276 }, 1277 toSorted(comparer) { 1278 return reactiveReadArray(this).toSorted(comparer); 1279 }, 1280 toSpliced(...args) { 1281 return reactiveReadArray(this).toSpliced(...args); 1282 }, 1283 unshift(...args) { 1284 return noTracking(this, "unshift", args); 1285 }, 1286 values() { 1287 return iterator$1(this, "values", toReactive); 1288 } 1289}; 1290function iterator$1(self2, method, wrapValue) { 1291 const arr = shallowReadArray(self2); 1292 const iter = arr[method](); 1293 if (arr !== self2 && !isShallow(self2)) { 1294 iter._next = iter.next; 1295 iter.next = () => { 1296 const result = iter._next(); 1297 if (result.value) { 1298 result.value = wrapValue(result.value); 1299 } 1300 return result; 1301 }; 1302 } 1303 return iter; 1304} 1305const arrayProto$1 = Array.prototype; 1306function apply$1(self2, method, fn, thisArg, wrappedRetFn, args) { 1307 const arr = shallowReadArray(self2); 1308 const needsWrap = arr !== self2 && !isShallow(self2); 1309 const methodFn = arr[method]; 1310 if (methodFn !== arrayProto$1[method]) { 1311 const result2 = methodFn.apply(self2, args); 1312 return needsWrap ? toReactive(result2) : result2; 1313 } 1314 let wrappedFn = fn; 1315 if (arr !== self2) { 1316 if (needsWrap) { 1317 wrappedFn = function(item, index2) {
1318 return fn.call(this, toReactive(item), index2, self2); 1319 }; 1320 } else if (fn.length > 2) { 1321 wrappedFn = function(item, index2) { 1322 return fn.call(this, item, index2, self2); 1323 }; 1324 } 1325 } 1326 const result = methodFn.call(arr, wrappedFn, thisArg); 1327 return needsWrap && wrappedRetFn ? wrappedRetFn(result) : result; 1328} 1329function reduce(self2, method, fn, args) { 1330 const arr = shallowReadArray(self2); 1331 let wrappedFn = fn; 1332 if (arr !== self2) { 1333 if (!isShallow(self2)) { 1334 wrappedFn = function(acc, item, index2) { 1335 return fn.call(this, acc, toReactive(item), index2, self2); 1336 }; 1337 } else if (fn.length > 3) { 1338 wrappedFn = function(acc, item, index2) { 1339 return fn.call(this, acc, item, index2, self2); 1340 }; 1341 } 1342 } 1343 return arr[method](wrappedFn, ...args); 1344} 1345function searchProxy(self2, method, args) { 1346 const arr = toRaw(self2); 1347 track(arr, "iterate", ARRAY_ITERATE_KEY); 1348 const res = arr[method](...args); 1349 if ((res === -1 || res === false) && isProxy(args[0])) { 1350 args[0] = toRaw(args[0]); 1351 return arr[method](...args); 1352 } 1353 return res; 1354} 1355function noTracking(self2, method, args = []) { 1356 pauseTracking(); 1357 startBatch(); 1358 const res = toRaw(self2)[method].apply(self2, args); 1359 endBatch(); 1360 resetTracking(); 1361 return res; 1362} 1363const isNonTrackableKeys = /* @__PURE__ */ makeMap(`__proto__,__v_isRef,__isVue`); 1364const builtInSymbols = new Set( 1365 /* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((key) => key !== "arguments" && key !== "caller").map((key) => Symbol[key]).filter(isSymbol$1) 1366); 1367function hasOwnProperty$c(key) { 1368 if (!isSymbol$1(key)) key = String(key); 1369 const obj = toRaw(this); 1370 track(obj, "has", key); 1371 return obj.hasOwnProperty(key); 1372} 1373class BaseReactiveHandler { 1374 constructor(_isReadonly = false, _isShallow = false) { 1375 this._isReadonly = _isReadonly; 1376 this._isShallow = _isShallow; 1377 } 1378 get(target, key, receiver) { 1379 if (key === "__v_skip") return target["__v_skip"]; 1380 const isReadonly2 = this._isReadonly, isShallow2 = this._isShallow; 1381 if (key === "__v_isReactive") { 1382 return !isReadonly2; 1383 } else if (key === "__v_isReadonly") { 1384 return isReadonly2; 1385 } else if (key === "__v_isShallow") { 1386 return isShallow2; 1387 } else if (key === "__v_raw") { 1388 if (receiver === (isReadonly2 ? isShallow2 ? shallowReadonlyMap : readonlyMap : isShallow2 ? shallowReactiveMap : reactiveMap).get(target) || // receiver is not the reactive proxy, but has the same prototype 1389 // this means the receiver is a user proxy of the reactive proxy 1390 Object.getPrototypeOf(target) === Object.getPrototypeOf(receiver)) { 1391 return target; 1392 } 1393 return; 1394 } 1395 const targetIsArray = isArray$4(target); 1396 if (!isReadonly2) { 1397 let fn; 1398 if (targetIsArray && (fn = arrayInstrumentations[key])) { 1399 return fn; 1400 } 1401 if (key === "hasOwnProperty") { 1402 return hasOwnProperty$c; 1403 } 1404 } 1405 const res = Reflect.get( 1406 target, 1407 key, 1408 // if this is a proxy wrapping a ref, return methods using the raw ref 1409 // as receiver so that we don't have to call `toRaw` on the ref in all 1410 // its class methods 1411 isRef(target) ? target : receiver 1412 ); 1413 if (isSymbol$1(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) { 1414 return res; 1415 } 1416 if (!isReadonly2) { 1417 track(target, "get", key); 1418 } 1419 if (isShallow2) { 1420 return res; 1421 } 1422 if (isRef(res)) { 1423 return targetIsArray && isIntegerKey(key) ? res : res.value; 1424 } 1425 if (isObject$4(res)) { 1426 return isReadonly2 ? readonly(res) : reactive(res); 1427 } 1428 return res; 1429 } 1430} 1431class MutableReactiveHandler extends BaseReactiveHandler { 1432 constructor(isShallow2 = false) { 1433 super(false, isShallow2); 1434 } 1435 set(target, key, value, receiver) { 1436 let oldValue = target[key]; 1437 if (!this._isShallow) { 1438 const isOldValueReadonly = isReadonly(oldValue); 1439 if (!isShallow(value) && !isReadonly(value)) { 1440 oldValue = toRaw(oldValue); 1441 value = toRaw(value); 1442 } 1443 if (!isArray$4(target) && isRef(oldValue) && !isRef(value)) { 1444 if (isOldValueReadonly) { 1445 return false;
1446 } else { 1447 oldValue.value = value; 1448 return true; 1449 } 1450 } 1451 } 1452 const hadKey = isArray$4(target) && isIntegerKey(key) ? Number(key) < target.length : hasOwn(target, key); 1453 const result = Reflect.set( 1454 target, 1455 key, 1456 value, 1457 isRef(target) ? target : receiver 1458 ); 1459 if (target === toRaw(receiver)) { 1460 if (!hadKey) { 1461 trigger(target, "add", key, value); 1462 } else if (hasChanged(value, oldValue)) { 1463 trigger(target, "set", key, value); 1464 } 1465 } 1466 return result; 1467 } 1468 deleteProperty(target, key) { 1469 const hadKey = hasOwn(target, key); 1470 target[key]; 1471 const result = Reflect.deleteProperty(target, key); 1472 if (result && hadKey) { 1473 trigger(target, "delete", key, void 0); 1474 } 1475 return result; 1476 } 1477 has(target, key) { 1478 const result = Reflect.has(target, key); 1479 if (!isSymbol$1(key) || !builtInSymbols.has(key)) { 1480 track(target, "has", key); 1481 } 1482 return result; 1483 } 1484 ownKeys(target) { 1485 track( 1486 target, 1487 "iterate", 1488 isArray$4(target) ? "length" : ITERATE_KEY 1489 ); 1490 return Reflect.ownKeys(target); 1491 } 1492} 1493class ReadonlyReactiveHandler extends BaseReactiveHandler { 1494 constructor(isShallow2 = false) { 1495 super(true, isShallow2); 1496 } 1497 set(target, key) { 1498 return true; 1499 } 1500 deleteProperty(target, key) { 1501 return true; 1502 } 1503} 1504const mutableHandlers = /* @__PURE__ */ new MutableReactiveHandler(); 1505const readonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler(); 1506const shallowReactiveHandlers = /* @__PURE__ */ new MutableReactiveHandler(true); 1507const shallowReadonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler(true); 1508const toShallow = (value) => value; 1509const getProto = (v2) => Reflect.getPrototypeOf(v2); 1510function createIterableMethod(method, isReadonly2, isShallow2) { 1511 return function(...args) { 1512 const target = this["__v_raw"]; 1513 const rawTarget = toRaw(target); 1514 const targetIsMap = isMap$1(rawTarget); 1515 const isPair = method === "entries" || method === Symbol.iterator && targetIsMap; 1516 const isKeyOnly = method === "keys" && targetIsMap; 1517 const innerIterator = target[method](...args); 1518 const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive; 1519 !isReadonly2 && track( 1520 rawTarget, 1521 "iterate", 1522 isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY 1523 ); 1524 return { 1525 // iterator protocol 1526 next() { 1527 const { value, done } = innerIterator.next(); 1528 return done ? { value, done } : { 1529 value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value), 1530 done 1531 }; 1532 }, 1533 // iterable protocol 1534 [Symbol.iterator]() { 1535 return this; 1536 } 1537 }; 1538 }; 1539} 1540function createReadonlyMethod(type) { 1541 return function(...args) { 1542 return type === "delete" ? false : type === "clear" ? void 0 : this; 1543 }; 1544} 1545function createInstrumentations(readonly2, shallow) { 1546 const instrumentations = { 1547 get(key) { 1548 const target = this["__v_raw"]; 1549 const rawTarget = toRaw(target); 1550 const rawKey = toRaw(key); 1551 if (!readonly2) { 1552 if (hasChanged(key, rawKey)) { 1553 track(rawTarget, "get", key); 1554 } 1555 track(rawTarget, "get", rawKey); 1556 } 1557 const { has } = getProto(rawTarget); 1558 const wrap = shallow ? toShallow : readonly2 ? toReadonly : toReactive; 1559 if (has.call(rawTarget, key)) { 1560 return wrap(target.get(key)); 1561 } else if (has.call(rawTarget, rawKey)) { 1562 return wrap(target.get(rawKey)); 1563 } else if (target !== rawTarget) { 1564 target.get(key); 1565 } 1566 }, 1567 get size() { 1568 const target = this["__v_raw"]; 1569 !readonly2 && track(toRaw(target), "iterate", ITERATE_KEY); 1570 return Reflect.get(target, "size", target); 1571 }, 1572 has(key) { 1573 const target = this["__v_raw"]; 1574 const rawTarget = toRaw(target); 1575 const rawKey = toRaw(key); 1576 if (!readonly2) { 1577 if (hasChanged(key, rawKey)) { 1578 track(rawTarget, "has", key); 1579 } 1580 track(rawTarget, "has", rawKey); 1581 } 1582 return key === rawKey ? target.has(key) : target.has(key) || target.has(rawKey); 1583 },
vendor: 16,951 bytes, lines 1584-2212
1584 forEach(callback, thisArg) { 1585 const observed = this; 1586 const target = observed["__v_raw"]; 1587 const rawTarget = toRaw(target); 1588 const wrap = shallow ? toShallow : readonly2 ? toReadonly : toReactive; 1589 !readonly2 && track(rawTarget, "iterate", ITERATE_KEY); 1590 return target.forEach((value, key) => { 1591 return callback.call(thisArg, wrap(value), wrap(key), observed); 1592 }); 1593 } 1594 }; 1595 extend$1( 1596 instrumentations, 1597 readonly2 ? { 1598 add: createReadonlyMethod("add"), 1599 set: createReadonlyMethod("set"), 1600 delete: createReadonlyMethod("delete"), 1601 clear: createReadonlyMethod("clear") 1602 } : { 1603 add(value) { 1604 if (!shallow && !isShallow(value) && !isReadonly(value)) { 1605 value = toRaw(value); 1606 } 1607 const target = toRaw(this); 1608 const proto = getProto(target); 1609 const hadKey = proto.has.call(target, value); 1610 if (!hadKey) { 1611 target.add(value); 1612 trigger(target, "add", value, value); 1613 } 1614 return this; 1615 }, 1616 set(key, value) { 1617 if (!shallow && !isShallow(value) && !isReadonly(value)) { 1618 value = toRaw(value); 1619 } 1620 const target = toRaw(this); 1621 const { has, get: get2 } = getProto(target); 1622 let hadKey = has.call(target, key); 1623 if (!hadKey) { 1624 key = toRaw(key); 1625 hadKey = has.call(target, key); 1626 } 1627 const oldValue = get2.call(target, key); 1628 target.set(key, value); 1629 if (!hadKey) { 1630 trigger(target, "add", key, value); 1631 } else if (hasChanged(value, oldValue)) { 1632 trigger(target, "set", key, value); 1633 } 1634 return this; 1635 }, 1636 delete(key) { 1637 const target = toRaw(this); 1638 const { has, get: get2 } = getProto(target); 1639 let hadKey = has.call(target, key); 1640 if (!hadKey) { 1641 key = toRaw(key); 1642 hadKey = has.call(target, key); 1643 } 1644 get2 ? get2.call(target, key) : void 0; 1645 const result = target.delete(key); 1646 if (hadKey) { 1647 trigger(target, "delete", key, void 0); 1648 } 1649 return result; 1650 }, 1651 clear() { 1652 const target = toRaw(this); 1653 const hadItems = target.size !== 0; 1654 const result = target.clear(); 1655 if (hadItems) { 1656 trigger( 1657 target, 1658 "clear", 1659 void 0, 1660 void 0 1661 ); 1662 } 1663 return result; 1664 } 1665 } 1666 ); 1667 const iteratorMethods = [ 1668 "keys", 1669 "values", 1670 "entries", 1671 Symbol.iterator 1672 ]; 1673 iteratorMethods.forEach((method) => { 1674 instrumentations[method] = createIterableMethod(method, readonly2, shallow); 1675 }); 1676 return instrumentations; 1677} 1678function createInstrumentationGetter(isReadonly2, shallow) { 1679 const instrumentations = createInstrumentations(isReadonly2, shallow); 1680 return (target, key, receiver) => { 1681 if (key === "__v_isReactive") { 1682 return !isReadonly2; 1683 } else if (key === "__v_isReadonly") { 1684 return isReadonly2; 1685 } else if (key === "__v_raw") { 1686 return target; 1687 } 1688 return Reflect.get( 1689 hasOwn(instrumentations, key) && key in target ? instrumentations : target, 1690 key, 1691 receiver 1692 ); 1693 }; 1694} 1695const mutableCollectionHandlers = { 1696 get: /* @__PURE__ */ createInstrumentationGetter(false, false) 1697}; 1698const shallowCollectionHandlers = { 1699 get: /* @__PURE__ */ createInstrumentationGetter(false, true) 1700}; 1701const readonlyCollectionHandlers = { 1702 get: /* @__PURE__ */ createInstrumentationGetter(true, false) 1703}; 1704const shallowReadonlyCollectionHandlers = { 1705 get: /* @__PURE__ */ createInstrumentationGetter(true, true) 1706}; 1707const reactiveMap = /* @__PURE__ */ new WeakMap(); 1708const shallowReactiveMap = /* @__PURE__ */ new WeakMap(); 1709const readonlyMap = /* @__PURE__ */ new WeakMap(); 1710const shallowReadonlyMap = /* @__PURE__ */ new WeakMap(); 1711function targetTypeMap(rawType) { 1712 switch (rawType) { 1713 case "Object": 1714 case "Array": 1715 return 1; 1716 case "Map": 1717 case "Set": 1718 case "WeakMap": 1719 case "WeakSet": 1720 return 2; 1721 default: 1722 return 0; 1723 } 1724} 1725function getTargetType(value) { 1726 return value["__v_skip"] || !Object.isExtensible(value) ? 0 : targetTypeMap(toRawType(value)); 1727} 1728function reactive(target) { 1729 if (isReadonly(target)) { 1730 return target; 1731 } 1732 return createReactiveObject( 1733 target, 1734 false, 1735 mutableHandlers, 1736 mutableCollectionHandlers, 1737 reactiveMap 1738 ); 1739} 1740function shallowReactive(target) { 1741 return createReactiveObject( 1742 target, 1743 false, 1744 shallowReactiveHandlers, 1745 shallowCollectionHandlers, 1746 shallowReactiveMap 1747 ); 1748} 1749function readonly(target) { 1750 return createReactiveObject( 1751 target, 1752 true, 1753 readonlyHandlers, 1754 readonlyCollectionHandlers, 1755 readonlyMap 1756 ); 1757} 1758function shallowReadonly(target) { 1759 return createReactiveObject( 1760 target, 1761 true, 1762 shallowReadonlyHandlers, 1763 shallowReadonlyCollectionHandlers, 1764 shallowReadonlyMap 1765 ); 1766} 1767function createReactiveObject(target, isReadonly2, baseHandlers, collectionHandlers, proxyMap) { 1768 if (!isObject$4(target)) { 1769 return target; 1770 } 1771 if (target["__v_raw"] && !(isReadonly2 && target["__v_isReactive"])) { 1772 return target; 1773 } 1774 const existingProxy = proxyMap.get(target); 1775 if (existingProxy) { 1776 return existingProxy; 1777 } 1778 const targetType = getTargetType(target); 1779 if (targetType === 0) { 1780 return target; 1781 } 1782 const proxy = new Proxy( 1783 target, 1784 targetType === 2 ? collectionHandlers : baseHandlers 1785 ); 1786 proxyMap.set(target, proxy); 1787 return proxy; 1788} 1789function isReactive(value) { 1790 if (isReadonly(value)) { 1791 return isReactive(value["__v_raw"]); 1792 } 1793 return !!(value && value["__v_isReactive"]); 1794} 1795function isReadonly(value) { 1796 return !!(value && value["__v_isReadonly"]); 1797} 1798function isShallow(value) { 1799 return !!(value && value["__v_isShallow"]); 1800} 1801function isProxy(value) { 1802 return value ? !!value["__v_raw"] : false; 1803} 1804function toRaw(observed) { 1805 const raw = observed && observed["__v_raw"]; 1806 return raw ? toRaw(raw) : observed; 1807} 1808function markRaw(value) { 1809 if (!hasOwn(value, "__v_skip") && Object.isExtensible(value)) { 1810 def(value, "__v_skip", true); 1811 } 1812 return value; 1813} 1814const toReactive = (value) => isObject$4(value) ? reactive(value) : value; 1815const toReadonly = (value) => isObject$4(value) ? readonly(value) : value; 1816function isRef(r2) { 1817 return r2 ? r2["__v_isRef"] === true : false; 1818} 1819function ref(value) { 1820 return createRef(value, false); 1821} 1822function shallowRef(value) { 1823 return createRef(value, true); 1824} 1825function createRef(rawValue2, shallow) { 1826 if (isRef(rawValue2)) { 1827 return rawValue2; 1828 } 1829 return new RefImpl(rawValue2, shallow); 1830} 1831class RefImpl { 1832 constructor(value, isShallow2) { 1833 this.dep = new Dep(); 1834 this["__v_isRef"] = true; 1835 this["__v_isShallow"] = false; 1836 this._rawValue = isShallow2 ? value : toRaw(value); 1837 this._value = isShallow2 ? value : toReactive(value); 1838 this["__v_isShallow"] = isShallow2; 1839 } 1840 get value() { 1841 { 1842 this.dep.track(); 1843 } 1844 return this._value; 1845 } 1846 set value(newValue) { 1847 const oldValue = this._rawValue; 1848 const useDirectValue = this["__v_isShallow"] || isShallow(newValue) || isReadonly(newValue); 1849 newValue = useDirectValue ? newValue : toRaw(newValue); 1850 if (hasChanged(newValue, oldValue)) { 1851 this._rawValue = newValue; 1852 this._value = useDirectValue ? newValue : toReactive(newValue); 1853 { 1854 this.dep.trigger(); 1855 } 1856 } 1857 } 1858} 1859function triggerRef(ref2) { 1860 if (ref2.dep) { 1861 { 1862 ref2.dep.trigger(); 1863 } 1864 } 1865} 1866function unref(ref2) { 1867 return isRef(ref2) ? ref2.value : ref2; 1868} 1869function toValue(source) { 1870 return isFunction$4(source) ? source() : unref(source); 1871} 1872const shallowUnwrapHandlers = { 1873 get: (target, key, receiver) => key === "__v_raw" ? target : unref(Reflect.get(target, key, receiver)), 1874 set: (target, key, value, receiver) => { 1875 const oldValue = target[key]; 1876 if (isRef(oldValue) && !isRef(value)) { 1877 oldValue.value = value; 1878 return true; 1879 } else { 1880 return Reflect.set(target, key, value, receiver); 1881 } 1882 } 1883}; 1884function proxyRefs(objectWithRefs) { 1885 return isReactive(objectWithRefs) ? objectWithRefs : new Proxy(objectWithRefs, shallowUnwrapHandlers); 1886} 1887class CustomRefImpl { 1888 constructor(factory2) { 1889 this["__v_isRef"] = true; 1890 this._value = void 0; 1891 const dep = this.dep = new Dep(); 1892 const { get: get2, set: set2 } = factory2(dep.track.bind(dep), dep.trigger.bind(dep)); 1893 this._get = get2; 1894 this._set = set2; 1895 } 1896 get value() { 1897 return this._value = this._get(); 1898 } 1899 set value(newVal) { 1900 this._set(newVal); 1901 } 1902} 1903function customRef(factory2) { 1904 return new CustomRefImpl(factory2); 1905} 1906function toRefs(object) { 1907 const ret = isArray$4(object) ? new Array(object.length) : {}; 1908 for (const key in object) { 1909 ret[key] = propertyToRef(object, key); 1910 } 1911 return ret; 1912} 1913class ObjectRefImpl { 1914 constructor(_object, _key, _defaultValue) { 1915 this._object = _object; 1916 this._key = _key; 1917 this._defaultValue = _defaultValue; 1918 this["__v_isRef"] = true; 1919 this._value = void 0; 1920 } 1921 get value() { 1922 const val = this._object[this._key]; 1923 return this._value = val === void 0 ? this._defaultValue : val; 1924 } 1925 set value(newVal) { 1926 this._object[this._key] = newVal; 1927 } 1928 get dep() { 1929 return getDepFromReactive(toRaw(this._object), this._key); 1930 } 1931} 1932class GetterRefImpl { 1933 constructor(_getter) { 1934 this._getter = _getter; 1935 this["__v_isRef"] = true; 1936 this["__v_isReadonly"] = true; 1937 this._value = void 0; 1938 } 1939 get value() { 1940 return this._value = this._getter(); 1941 } 1942} 1943function toRef(source, key, defaultValue) { 1944 if (isRef(source)) { 1945 return source; 1946 } else if (isFunction$4(source)) { 1947 return new GetterRefImpl(source); 1948 } else if (isObject$4(source) && arguments.length > 1) { 1949 return propertyToRef(source, key, defaultValue); 1950 } else { 1951 return ref(source); 1952 } 1953} 1954function propertyToRef(source, key, defaultValue) { 1955 const val = source[key]; 1956 return isRef(val) ? val : new ObjectRefImpl(source, key, defaultValue); 1957} 1958class ComputedRefImpl { 1959 constructor(fn, setter, isSSR) { 1960 this.fn = fn; 1961 this.setter = setter; 1962 this._value = void 0; 1963 this.dep = new Dep(this); 1964 this.__v_isRef = true; 1965 this.deps = void 0; 1966 this.depsTail = void 0; 1967 this.flags = 16; 1968 this.globalVersion = globalVersion - 1; 1969 this.next = void 0; 1970 this.effect = this; 1971 this["__v_isReadonly"] = !setter; 1972 this.isSSR = isSSR; 1973 } 1974 /** 1975 * @internal 1976 */ 1977 notify() { 1978 this.flags |= 16; 1979 if (!(this.flags & 8) && // avoid infinite self recursion 1980 activeSub !== this) { 1981 batch(this, true); 1982 return true; 1983 } 1984 } 1985 get value() { 1986 const link = this.dep.track(); 1987 refreshComputed(this); 1988 if (link) { 1989 link.version = this.dep.version; 1990 } 1991 return this._value; 1992 } 1993 set value(newValue) { 1994 if (this.setter) { 1995 this.setter(newValue); 1996 } 1997 } 1998} 1999function computed$1(getterOrOptions, debugOptions, isSSR = false) { 2000 let getter; 2001 let setter; 2002 if (isFunction$4(getterOrOptions)) { 2003 getter = getterOrOptions; 2004 } else { 2005 getter = getterOrOptions.get; 2006 setter = getterOrOptions.set; 2007 } 2008 const cRef = new ComputedRefImpl(getter, setter, isSSR); 2009 return cRef; 2010} 2011const TrackOpTypes = { 2012 "GET": "get", 2013 "HAS": "has", 2014 "ITERATE": "iterate" 2015}; 2016const TriggerOpTypes = { 2017 "SET": "set", 2018 "ADD": "add", 2019 "DELETE": "delete", 2020 "CLEAR": "clear" 2021}; 2022const INITIAL_WATCHER_VALUE = {}; 2023const cleanupMap = /* @__PURE__ */ new WeakMap(); 2024let activeWatcher = void 0; 2025function getCurrentWatcher() { 2026 return activeWatcher; 2027} 2028function onWatcherCleanup(cleanupFn, failSilently = false, owner = activeWatcher) { 2029 if (owner) { 2030 let cleanups = cleanupMap.get(owner); 2031 if (!cleanups) cleanupMap.set(owner, cleanups = []); 2032 cleanups.push(cleanupFn); 2033 } 2034} 2035function watch$1(source, cb, options = EMPTY_OBJ) { 2036 const { immediate, deep, once, scheduler, augmentJob, call } = options; 2037 const reactiveGetter = (source2) => { 2038 if (deep) return source2; 2039 if (isShallow(source2) || deep === false || deep === 0) 2040 return traverse(source2, 1); 2041 return traverse(source2); 2042 }; 2043 let effect2; 2044 let getter; 2045 let cleanup; 2046 let boundCleanup; 2047 let forceTrigger = false; 2048 let isMultiSource = false; 2049 if (isRef(source)) { 2050 getter = () => source.value; 2051 forceTrigger = isShallow(source); 2052 } else if (isReactive(source)) { 2053 getter = () => reactiveGetter(source); 2054 forceTrigger = true; 2055 } else if (isArray$4(source)) { 2056 isMultiSource = true; 2057 forceTrigger = source.some((s) => isReactive(s) || isShallow(s)); 2058 getter = () => source.map((s) => { 2059 if (isRef(s)) { 2060 return s.value; 2061 } else if (isReactive(s)) { 2062 return reactiveGetter(s); 2063 } else if (isFunction$4(s)) { 2064 return call ? call(s, 2) : s(); 2065 } else ; 2066 }); 2067 } else if (isFunction$4(source)) { 2068 if (cb) { 2069 getter = call ? () => call(source, 2) : source; 2070 } else { 2071 getter = () => { 2072 if (cleanup) { 2073 pauseTracking(); 2074 try { 2075 cleanup(); 2076 } finally { 2077 resetTracking(); 2078 } 2079 } 2080 const currentEffect = activeWatcher; 2081 activeWatcher = effect2; 2082 try { 2083 return call ? call(source, 3, [boundCleanup]) : source(boundCleanup); 2084 } finally { 2085 activeWatcher = currentEffect; 2086 } 2087 }; 2088 } 2089 } else { 2090 getter = NOOP; 2091 } 2092 if (cb && deep) { 2093 const baseGetter = getter; 2094 const depth = deep === true ? Infinity : deep; 2095 getter = () => traverse(baseGetter(), depth); 2096 } 2097 const scope = getCurrentScope(); 2098 const watchHandle = () => { 2099 effect2.stop(); 2100 if (scope && scope.active) { 2101 remove(scope.effects, effect2); 2102 } 2103 }; 2104 if (once && cb) { 2105 const _cb = cb; 2106 cb = (...args) => { 2107 _cb(...args); 2108 watchHandle(); 2109 }; 2110 } 2111 let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE; 2112 const job = (immediateFirstRun) => { 2113 if (!(effect2.flags & 1) || !effect2.dirty && !immediateFirstRun) { 2114 return; 2115 } 2116 if (cb) { 2117 const newValue = effect2.run(); 2118 if (deep || forceTrigger || (isMultiSource ? newValue.some((v2, i) => hasChanged(v2, oldValue[i])) : hasChanged(newValue, oldValue))) { 2119 if (cleanup) { 2120 cleanup(); 2121 } 2122 const currentWatcher = activeWatcher; 2123 activeWatcher = effect2; 2124 try { 2125 const args = [ 2126 newValue, 2127 // pass undefined as the old value when it's changed for the first time 2128 oldValue === INITIAL_WATCHER_VALUE ? void 0 : isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE ? [] : oldValue, 2129 boundCleanup 2130 ]; 2131 call ? call(cb, 3, args) : ( 2132 // @ts-expect-error 2133 cb(...args) 2134 ); 2135 oldValue = newValue; 2136 } finally { 2137 activeWatcher = currentWatcher; 2138 } 2139 } 2140 } else { 2141 effect2.run(); 2142 } 2143 }; 2144 if (augmentJob) { 2145 augmentJob(job); 2146 } 2147 effect2 = new ReactiveEffect(getter); 2148 effect2.scheduler = scheduler ? () => scheduler(job, false) : job; 2149 boundCleanup = (fn) => onWatcherCleanup(fn, false, effect2); 2150 cleanup = effect2.onStop = () => { 2151 const cleanups = cleanupMap.get(effect2); 2152 if (cleanups) { 2153 if (call) { 2154 call(cleanups, 4); 2155 } else { 2156 for (const cleanup2 of cleanups) cleanup2(); 2157 } 2158 cleanupMap.delete(effect2); 2159 } 2160 }; 2161 if (cb) { 2162 if (immediate) { 2163 job(true); 2164 } else { 2165 oldValue = effect2.run(); 2166 } 2167 } else if (scheduler) { 2168 scheduler(job.bind(null, true), true); 2169 } else { 2170 effect2.run(); 2171 } 2172 watchHandle.pause = effect2.pause.bind(effect2); 2173 watchHandle.resume = effect2.resume.bind(effect2); 2174 watchHandle.stop = watchHandle; 2175 return watchHandle; 2176} 2177function traverse(value, depth = Infinity, seen2) { 2178 if (depth <= 0 || !isObject$4(value) || value["__v_skip"]) { 2179 return value; 2180 } 2181 seen2 = seen2 || /* @__PURE__ */ new Set(); 2182 if (seen2.has(value)) { 2183 return value; 2184 } 2185 seen2.add(value); 2186 depth--; 2187 if (isRef(value)) { 2188 traverse(value.value, depth, seen2); 2189 } else if (isArray$4(value)) { 2190 for (let i = 0; i < value.length; i++) { 2191 traverse(value[i], depth, seen2); 2192 } 2193 } else if (isSet$1(value) || isMap$1(value)) { 2194 value.forEach((v2) => { 2195 traverse(v2, depth, seen2); 2196 }); 2197 } else if (isPlainObject$4(value)) { 2198 for (const key in value) { 2199 traverse(value[key], depth, seen2); 2200 } 2201 for (const key of Object.getOwnPropertySymbols(value)) { 2202 if (Object.prototype.propertyIsEnumerable.call(value, key)) { 2203 traverse(value[key], depth, seen2); 2204 } 2205 } 2206 } 2207 return value; 2208} 2209/** 2210* @vue/runtime-core v3.5.13 2211* (c) 2018-present Yuxi (Evan) You and Vue contributors 2212* @license MIT
vendor: 4,589 bytes, lines 2213-2376
2213**/ 2214const stack = []; 2215function pushWarningContext(vnode) { 2216 stack.push(vnode); 2217} 2218function popWarningContext() { 2219 stack.pop(); 2220} 2221let isWarning = false; 2222function warn$1(msg, ...args) { 2223 if (isWarning) return; 2224 isWarning = true; 2225 pauseTracking(); 2226 const instance = stack.length ? stack[stack.length - 1].component : null; 2227 const appWarnHandler = instance && instance.appContext.config.warnHandler; 2228 const trace = getComponentTrace(); 2229 if (appWarnHandler) { 2230 callWithErrorHandling( 2231 appWarnHandler, 2232 instance, 2233 11, 2234 [ 2235 // eslint-disable-next-line no-restricted-syntax 2236 msg + args.map((a) => { 2237 var _a, _b; 2238 return (_b = (_a = a.toString) == null ? void 0 : _a.call(a)) != null ? _b : JSON.stringify(a); 2239 }).join(""), 2240 instance && instance.proxy, 2241 trace.map( 2242 ({ vnode }) => `at <${formatComponentName(instance, vnode.type)}>` 2243 ).join("\n"), 2244 trace 2245 ] 2246 ); 2247 } else { 2248 const warnArgs = [`[Vue warn]: ${msg}`, ...args]; 2249 if (trace.length && // avoid spamming console during tests 2250 true) { 2251 warnArgs.push(` 2252`, ...formatTrace(trace)); 2253 } 2254 console.warn(...warnArgs); 2255 } 2256 resetTracking(); 2257 isWarning = false; 2258} 2259function getComponentTrace() { 2260 let currentVNode = stack[stack.length - 1]; 2261 if (!currentVNode) { 2262 return []; 2263 } 2264 const normalizedStack = []; 2265 while (currentVNode) { 2266 const last = normalizedStack[0]; 2267 if (last && last.vnode === currentVNode) { 2268 last.recurseCount++; 2269 } else { 2270 normalizedStack.push({ 2271 vnode: currentVNode, 2272 recurseCount: 0 2273 }); 2274 } 2275 const parentInstance = currentVNode.component && currentVNode.component.parent; 2276 currentVNode = parentInstance && parentInstance.vnode; 2277 } 2278 return normalizedStack; 2279} 2280function formatTrace(trace) { 2281 const logs = []; 2282 trace.forEach((entry, i) => { 2283 logs.push(...i === 0 ? [] : [` 2284`], ...formatTraceEntry(entry)); 2285 }); 2286 return logs; 2287} 2288function formatTraceEntry({ vnode, recurseCount }) { 2289 const postfix = recurseCount > 0 ? `... (${recurseCount} recursive calls)` : ``; 2290 const isRoot = vnode.component ? vnode.component.parent == null : false; 2291 const open2 = ` at <${formatComponentName( 2292 vnode.component, 2293 vnode.type, 2294 isRoot 2295 )}`; 2296 const close = `>` + postfix; 2297 return vnode.props ? [open2, ...formatProps(vnode.props), close] : [open2 + close]; 2298} 2299function formatProps(props) { 2300 const res = []; 2301 const keys2 = Object.keys(props); 2302 keys2.slice(0, 3).forEach((key) => { 2303 res.push(...formatProp(key, props[key])); 2304 }); 2305 if (keys2.length > 3) { 2306 res.push(` ...`); 2307 } 2308 return res; 2309} 2310function formatProp(key, value, raw) { 2311 if (isString$1(value)) { 2312 value = JSON.stringify(value); 2313 return raw ? value : [`${key}=${value}`]; 2314 } else if (typeof value === "number" || typeof value === "boolean" || value == null) { 2315 return raw ? value : [`${key}=${value}`]; 2316 } else if (isRef(value)) { 2317 value = formatProp(key, toRaw(value.value), true); 2318 return raw ? value : [`${key}=Ref<`, value, `>`]; 2319 } else if (isFunction$4(value)) { 2320 return [`${key}=fn${value.name ? `<${value.name}>` : ``}`]; 2321 } else { 2322 value = toRaw(value); 2323 return raw ? value : [`${key}=`, value]; 2324 } 2325} 2326function assertNumber(val, type) { 2327 return; 2328} 2329const ErrorCodes = { 2330 "SETUP_FUNCTION": 0, 2331 "0": "SETUP_FUNCTION", 2332 "RENDER_FUNCTION": 1, 2333 "1": "RENDER_FUNCTION", 2334 "NATIVE_EVENT_HANDLER": 5, 2335 "5": "NATIVE_EVENT_HANDLER", 2336 "COMPONENT_EVENT_HANDLER": 6, 2337 "6": "COMPONENT_EVENT_HANDLER", 2338 "VNODE_HOOK": 7, 2339 "7": "VNODE_HOOK", 2340 "DIRECTIVE_HOOK": 8, 2341 "8": "DIRECTIVE_HOOK", 2342 "TRANSITION_HOOK": 9, 2343 "9": "TRANSITION_HOOK", 2344 "APP_ERROR_HANDLER": 10, 2345 "10": "APP_ERROR_HANDLER", 2346 "APP_WARN_HANDLER": 11, 2347 "11": "APP_WARN_HANDLER", 2348 "FUNCTION_REF": 12, 2349 "12": "FUNCTION_REF", 2350 "ASYNC_COMPONENT_LOADER": 13, 2351 "13": "ASYNC_COMPONENT_LOADER", 2352 "SCHEDULER": 14, 2353 "14": "SCHEDULER", 2354 "COMPONENT_UPDATE": 15, 2355 "15": "COMPONENT_UPDATE", 2356 "APP_UNMOUNT_CLEANUP": 16, 2357 "16": "APP_UNMOUNT_CLEANUP" 2358}; 2359const ErrorTypeStrings$1 = { 2360 ["sp"]: "serverPrefetch hook", 2361 ["bc"]: "beforeCreate hook", 2362 ["c"]: "created hook", 2363 ["bm"]: "beforeMount hook", 2364 ["m"]: "mounted hook", 2365 ["bu"]: "beforeUpdate hook", 2366 ["u"]: "updated", 2367 ["bum"]: "beforeUnmount hook", 2368 ["um"]: "unmounted hook", 2369 ["a"]: "activated hook", 2370 ["da"]: "deactivated hook", 2371 ["ec"]: "errorCaptured hook", 2372 ["rtc"]: "renderTracked hook", 2373 ["rtg"]: "renderTriggered hook", 2374 [0]: "setup function", 2375 [1]: "render function", 2376 [2]: "watcher getter",
vendor: 1,486 bytes, lines 2377-2424
2377 [3]: "watcher callback", 2378 [4]: "watcher cleanup function", 2379 [5]: "native event handler", 2380 [6]: "component event handler", 2381 [7]: "vnode hook", 2382 [8]: "directive hook", 2383 [9]: "transition hook", 2384 [10]: "app errorHandler", 2385 [11]: "app warnHandler", 2386 [12]: "ref function", 2387 [13]: "async component loader", 2388 [14]: "scheduler flush", 2389 [15]: "component update", 2390 [16]: "app unmount cleanup function" 2391}; 2392function callWithErrorHandling(fn, instance, type, args) { 2393 try { 2394 return args ? fn(...args) : fn(); 2395 } catch (err) { 2396 handleError(err, instance, type); 2397 } 2398} 2399function callWithAsyncErrorHandling(fn, instance, type, args) { 2400 if (isFunction$4(fn)) { 2401 const res = callWithErrorHandling(fn, instance, type, args); 2402 if (res && isPromise$1(res)) { 2403 res.catch((err) => { 2404 handleError(err, instance, type); 2405 }); 2406 } 2407 return res; 2408 } 2409 if (isArray$4(fn)) { 2410 const values = []; 2411 for (let i = 0; i < fn.length; i++) { 2412 values.push(callWithAsyncErrorHandling(fn[i], instance, type, args)); 2413 } 2414 return values; 2415 } 2416} 2417function handleError(err, instance, type, throwInDev = true) { 2418 const contextVNode = instance ? instance.vnode : null; 2419 const { errorHandler, throwUnhandledErrorInProduction } = instance && instance.appContext.config || EMPTY_OBJ; 2420 if (instance) { 2421 let cur = instance.parent; 2422 const exposedInstance = instance.proxy; 2423 const errorInfo = `https://vuejs.org/error-reference/#runtime-${type}`; 2424 while (cur) {
2425 const errorCapturedHooks = cur.ec; 2426 if (errorCapturedHooks) { 2427 for (let i = 0; i < errorCapturedHooks.length; i++) { 2428 if (errorCapturedHooks[i](err, exposedInstance, errorInfo) === false) { 2429 return; 2430 } 2431 } 2432 } 2433 cur = cur.parent; 2434 } 2435 if (errorHandler) { 2436 pauseTracking(); 2437 callWithErrorHandling(errorHandler, null, 10, [ 2438 err, 2439 exposedInstance, 2440 errorInfo 2441 ]); 2442 resetTracking(); 2443 return; 2444 } 2445 } 2446 logError(err, type, contextVNode, throwInDev, throwUnhandledErrorInProduction); 2447} 2448function logError(err, type, contextVNode, throwInDev = true, throwInProd = false) { 2449 if (throwInProd) { 2450 throw err; 2451 } else { 2452 console.error(err); 2453 } 2454} 2455const queue = []; 2456let flushIndex = -1; 2457const pendingPostFlushCbs = []; 2458let activePostFlushCbs = null; 2459let postFlushIndex = 0; 2460const resolvedPromise = /* @__PURE__ */ Promise.resolve(); 2461let currentFlushPromise = null; 2462function nextTick(fn) { 2463 const p2 = currentFlushPromise || resolvedPromise; 2464 return fn ? p2.then(this ? fn.bind(this) : fn) : p2; 2465} 2466function findInsertionIndex$1(id) { 2467 let start = flushIndex + 1; 2468 let end = queue.length; 2469 while (start < end) { 2470 const middle = start + end >>> 1; 2471 const middleJob = queue[middle]; 2472 const middleJobId = getId(middleJob); 2473 if (middleJobId < id || middleJobId === id && middleJob.flags & 2) { 2474 start = middle + 1; 2475 } else { 2476 end = middle; 2477 } 2478 } 2479 return start; 2480} 2481function queueJob(job) { 2482 if (!(job.flags & 1)) { 2483 const jobId = getId(job); 2484 const lastJob = queue[queue.length - 1]; 2485 if (!lastJob || // fast path when the job id is larger than the tail 2486 !(job.flags & 2) && jobId >= getId(lastJob)) { 2487 queue.push(job); 2488 } else { 2489 queue.splice(findInsertionIndex$1(jobId), 0, job); 2490 } 2491 job.flags |= 1; 2492 queueFlush(); 2493 } 2494} 2495function queueFlush() { 2496 if (!currentFlushPromise) { 2497 currentFlushPromise = resolvedPromise.then(flushJobs); 2498 } 2499} 2500function queuePostFlushCb(cb) { 2501 if (!isArray$4(cb)) { 2502 if (activePostFlushCbs && cb.id === -1) { 2503 activePostFlushCbs.splice(postFlushIndex + 1, 0, cb); 2504 } else if (!(cb.flags & 1)) { 2505 pendingPostFlushCbs.push(cb); 2506 cb.flags |= 1; 2507 } 2508 } else { 2509 pendingPostFlushCbs.push(...cb); 2510 } 2511 queueFlush(); 2512} 2513function flushPreFlushCbs(instance, seen2, i = flushIndex + 1) { 2514 for (; i < queue.length; i++) { 2515 const cb = queue[i]; 2516 if (cb && cb.flags & 2) { 2517 if (instance && cb.id !== instance.uid) { 2518 continue; 2519 } 2520 queue.splice(i, 1); 2521 i--; 2522 if (cb.flags & 4) { 2523 cb.flags &= -2; 2524 } 2525 cb(); 2526 if (!(cb.flags & 4)) { 2527 cb.flags &= -2; 2528 } 2529 } 2530 } 2531} 2532function flushPostFlushCbs(seen2) { 2533 if (pendingPostFlushCbs.length) { 2534 const deduped = [...new Set(pendingPostFlushCbs)].sort( 2535 (a, b2) => getId(a) - getId(b2) 2536 ); 2537 pendingPostFlushCbs.length = 0; 2538 if (activePostFlushCbs) { 2539 activePostFlushCbs.push(...deduped); 2540 return; 2541 } 2542 activePostFlushCbs = deduped; 2543 for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) { 2544 const cb = activePostFlushCbs[postFlushIndex]; 2545 if (cb.flags & 4) { 2546 cb.flags &= -2; 2547 } 2548 if (!(cb.flags & 8)) cb(); 2549 cb.flags &= -2; 2550 } 2551 activePostFlushCbs = null; 2552 postFlushIndex = 0; 2553 } 2554} 2555const getId = (job) => job.id == null ? job.flags & 2 ? -1 : Infinity : job.id; 2556function flushJobs(seen2) { 2557 try { 2558 for (flushIndex = 0; flushIndex < queue.length; flushIndex++) { 2559 const job = queue[flushIndex]; 2560 if (job && !(job.flags & 8)) { 2561 if (false) ; 2562 if (job.flags & 4) { 2563 job.flags &= ~1; 2564 } 2565 callWithErrorHandling( 2566 job, 2567 job.i, 2568 job.i ? 15 : 14 2569 ); 2570 if (!(job.flags & 4)) { 2571 job.flags &= ~1; 2572 } 2573 } 2574 } 2575 } finally { 2576 for (; flushIndex < queue.length; flushIndex++) { 2577 const job = queue[flushIndex]; 2578 if (job) { 2579 job.flags &= -2; 2580 } 2581 } 2582 flushIndex = -1; 2583 queue.length = 0; 2584 flushPostFlushCbs(); 2585 currentFlushPromise = null; 2586 if (queue.length || pendingPostFlushCbs.length) { 2587 flushJobs(); 2588 } 2589 } 2590} 2591let devtools$1; 2592let buffer = []; 2593function setDevtoolsHook$1(hook, target) { 2594 var _a, _b; 2595 devtools$1 = hook; 2596 if (devtools$1) { 2597 devtools$1.enabled = true; 2598 buffer.forEach(({ event, args }) => devtools$1.emit(event, ...args)); 2599 buffer = []; 2600 } else if ( 2601 // handle late devtools injection - only do this if we are in an actual 2602 // browser environment to avoid the timer handle stalling test runner exit 2603 // (#4815) 2604 typeof window !== "undefined" && // some envs mock window but not fully 2605 window.HTMLElement && // also exclude jsdom 2606 // eslint-disable-next-line no-restricted-syntax 2607 !((_b = (_a = window.navigator) == null ? void 0 : _a.userAgent) == null ? void 0 : _b.includes("jsdom")) 2608 ) { 2609 const replay = target.__VUE_DEVTOOLS_HOOK_REPLAY__ = target.__VUE_DEVTOOLS_HOOK_REPLAY__ || []; 2610 replay.push((newHook) => {
2611 setDevtoolsHook$1(newHook, target); 2612 }); 2613 setTimeout(() => { 2614 if (!devtools$1) { 2615 target.__VUE_DEVTOOLS_HOOK_REPLAY__ = null; 2616 buffer = []; 2617 } 2618 }, 3e3); 2619 } else { 2620 buffer = []; 2621 } 2622} 2623let currentRenderingInstance = null; 2624let currentScopeId = null; 2625function setCurrentRenderingInstance(instance) { 2626 const prev = currentRenderingInstance; 2627 currentRenderingInstance = instance; 2628 currentScopeId = instance && instance.type.__scopeId || null; 2629 return prev; 2630} 2631function pushScopeId(id) { 2632 currentScopeId = id; 2633} 2634function popScopeId() { 2635 currentScopeId = null; 2636} 2637const withScopeId = (_id) => withCtx; 2638function withCtx(fn, ctx = currentRenderingInstance, isNonScopedSlot) { 2639 if (!ctx) return fn; 2640 if (fn._n) { 2641 return fn; 2642 } 2643 const renderFnWithContext = (...args) => { 2644 if (renderFnWithContext._d) { 2645 setBlockTracking(-1); 2646 } 2647 const prevInstance = setCurrentRenderingInstance(ctx); 2648 let res; 2649 try { 2650 res = fn(...args); 2651 } finally { 2652 setCurrentRenderingInstance(prevInstance); 2653 if (renderFnWithContext._d) { 2654 setBlockTracking(1); 2655 } 2656 } 2657 return res; 2658 }; 2659 renderFnWithContext._n = true; 2660 renderFnWithContext._c = true; 2661 renderFnWithContext._d = true; 2662 return renderFnWithContext; 2663} 2664function withDirectives(vnode, directives) { 2665 if (currentRenderingInstance === null) { 2666 return vnode; 2667 } 2668 const instance = getComponentPublicInstance(currentRenderingInstance); 2669 const bindings = vnode.dirs || (vnode.dirs = []); 2670 for (let i = 0; i < directives.length; i++) { 2671 let [dir, value, arg, modifiers = EMPTY_OBJ] = directives[i]; 2672 if (dir) { 2673 if (isFunction$4(dir)) { 2674 dir = { 2675 mounted: dir, 2676 updated: dir 2677 }; 2678 } 2679 if (dir.deep) { 2680 traverse(value); 2681 } 2682 bindings.push({ 2683 dir, 2684 instance, 2685 value, 2686 oldValue: void 0, 2687 arg, 2688 modifiers 2689 }); 2690 } 2691 } 2692 return vnode; 2693} 2694function invokeDirectiveHook(vnode, prevVNode, instance, name) { 2695 const bindings = vnode.dirs; 2696 const oldBindings = prevVNode && prevVNode.dirs; 2697 for (let i = 0; i < bindings.length; i++) { 2698 const binding = bindings[i]; 2699 if (oldBindings) { 2700 binding.oldValue = oldBindings[i].value; 2701 } 2702 let hook = binding.dir[name]; 2703 if (hook) { 2704 pauseTracking(); 2705 callWithAsyncErrorHandling(hook, instance, 8, [ 2706 vnode.el, 2707 binding, 2708 vnode, 2709 prevVNode 2710 ]); 2711 resetTracking(); 2712 } 2713 } 2714} 2715const TeleportEndKey = Symbol("_vte"); 2716const isTeleport = (type) => type.__isTeleport; 2717const isTeleportDisabled = (props) => props && (props.disabled || props.disabled === ""); 2718const isTeleportDeferred = (props) => props && (props.defer || props.defer === ""); 2719const isTargetSVG = (target) => typeof SVGElement !== "undefined" && target instanceof SVGElement; 2720const isTargetMathML = (target) => typeof MathMLElement === "function" && target instanceof MathMLElement; 2721const resolveTarget = (props, select) => { 2722 const targetSelector = props && props.to; 2723 if (isString$1(targetSelector)) { 2724 if (!select) { 2725 return null; 2726 } else { 2727 const target = select(targetSelector); 2728 return target; 2729 } 2730 } else { 2731 return targetSelector; 2732 } 2733}; 2734const TeleportImpl = { 2735 name: "Teleport", 2736 __isTeleport: true, 2737 process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, internals) { 2738 const { 2739 mc: mountChildren, 2740 pc: patchChildren, 2741 pbc: patchBlockChildren, 2742 o: { insert, querySelector, createText, createComment } 2743 } = internals; 2744 const disabled = isTeleportDisabled(n2.props); 2745 let { shapeFlag, children, dynamicChildren } = n2; 2746 if (n1 == null) { 2747 const placeholder = n2.el = createText(""); 2748 const mainAnchor = n2.anchor = createText(""); 2749 insert(placeholder, container, anchor); 2750 insert(mainAnchor, container, anchor); 2751 const mount = (container2, anchor2) => { 2752 if (shapeFlag & 16) { 2753 if (parentComponent && parentComponent.isCE) { 2754 parentComponent.ce._teleportTarget = container2; 2755 } 2756 mountChildren( 2757 children, 2758 container2, 2759 anchor2, 2760 parentComponent, 2761 parentSuspense, 2762 namespace, 2763 slotScopeIds, 2764 optimized 2765 ); 2766 } 2767 }; 2768 const mountToTarget = () => { 2769 const target = n2.target = resolveTarget(n2.props, querySelector); 2770 const targetAnchor = prepareAnchor(target, n2, createText, insert); 2771 if (target) { 2772 if (namespace !== "svg" && isTargetSVG(target)) { 2773 namespace = "svg"; 2774 } else if (namespace !== "mathml" && isTargetMathML(target)) { 2775 namespace = "mathml"; 2776 } 2777 if (!disabled) { 2778 mount(target, targetAnchor); 2779 updateCssVars(n2, false); 2780 } 2781 } 2782 }; 2783 if (disabled) { 2784 mount(container, mainAnchor); 2785 updateCssVars(n2, true); 2786 } 2787 if (isTeleportDeferred(n2.props)) { 2788 queuePostRenderEffect(() => { 2789 mountToTarget(); 2790 n2.el.__isMounted = true; 2791 }, parentSuspense); 2792 } else { 2793 mountToTarget(); 2794 } 2795 } else { 2796 if (isTeleportDeferred(n2.props) && !n1.el.__isMounted) { 2797 queuePostRenderEffect(() => { 2798 TeleportImpl.process( 2799 n1, 2800 n2, 2801 container, 2802 anchor, 2803 parentComponent, 2804 parentSuspense, 2805 namespace, 2806 slotScopeIds, 2807 optimized, 2808 internals 2809 ); 2810 delete n1.el.__isMounted; 2811 }, parentSuspense); 2812 return; 2813 } 2814 n2.el = n1.el; 2815 n2.targetStart = n1.targetStart; 2816 const mainAnchor = n2.anchor = n1.anchor; 2817 const target = n2.target = n1.target; 2818 const targetAnchor = n2.targetAnchor = n1.targetAnchor; 2819 const wasDisabled = isTeleportDisabled(n1.props); 2820 const currentContainer = wasDisabled ? container : target; 2821 const currentAnchor = wasDisabled ? mainAnchor : targetAnchor; 2822 if (namespace === "svg" || isTargetSVG(target)) { 2823 namespace = "svg"; 2824 } else if (namespace === "mathml" || isTargetMathML(target)) { 2825 namespace = "mathml"; 2826 } 2827 if (dynamicChildren) { 2828 patchBlockChildren( 2829 n1.dynamicChildren, 2830 dynamicChildren, 2831 currentContainer, 2832 parentComponent, 2833 parentSuspense, 2834 namespace, 2835 slotScopeIds 2836 ); 2837 traverseStaticChildren(n1, n2, true); 2838 } else if (!optimized) { 2839 patchChildren( 2840 n1, 2841 n2, 2842 currentContainer, 2843 currentAnchor, 2844 parentComponent, 2845 parentSuspense, 2846 namespace, 2847 slotScopeIds, 2848 false 2849 ); 2850 } 2851 if (disabled) { 2852 if (!wasDisabled) { 2853 moveTeleport( 2854 n2, 2855 container, 2856 mainAnchor, 2857 internals, 2858 1 2859 ); 2860 } else { 2861 if (n2.props && n1.props && n2.props.to !== n1.props.to) { 2862 n2.props.to = n1.props.to; 2863 } 2864 } 2865 } else { 2866 if ((n2.props && n2.props.to) !== (n1.props && n1.props.to)) { 2867 const nextTarget = n2.target = resolveTarget( 2868 n2.props, 2869 querySelector 2870 ); 2871 if (nextTarget) { 2872 moveTeleport( 2873 n2, 2874 nextTarget, 2875 null, 2876 internals, 2877 0 2878 ); 2879 } 2880 } else if (wasDisabled) { 2881 moveTeleport( 2882 n2, 2883 target, 2884 targetAnchor, 2885 internals, 2886 1 2887 ); 2888 } 2889 } 2890 updateCssVars(n2, disabled); 2891 } 2892 }, 2893 remove(vnode, parentComponent, parentSuspense, { um: unmount, o: { remove: hostRemove } }, doRemove) { 2894 const { 2895 shapeFlag, 2896 children, 2897 anchor, 2898 targetStart, 2899 targetAnchor, 2900 target, 2901 props 2902 } = vnode; 2903 if (target) {
2904 hostRemove(targetStart); 2905 hostRemove(targetAnchor); 2906 } 2907 doRemove && hostRemove(anchor); 2908 if (shapeFlag & 16) { 2909 const shouldRemove = doRemove || !isTeleportDisabled(props); 2910 for (let i = 0; i < children.length; i++) { 2911 const child = children[i]; 2912 unmount( 2913 child, 2914 parentComponent, 2915 parentSuspense, 2916 shouldRemove, 2917 !!child.dynamicChildren 2918 ); 2919 } 2920 } 2921 }, 2922 move: moveTeleport, 2923 hydrate: hydrateTeleport 2924}; 2925function moveTeleport(vnode, container, parentAnchor, { o: { insert }, m: move }, moveType = 2) { 2926 if (moveType === 0) { 2927 insert(vnode.targetAnchor, container, parentAnchor); 2928 } 2929 const { el, anchor, shapeFlag, children, props } = vnode; 2930 const isReorder = moveType === 2; 2931 if (isReorder) { 2932 insert(el, container, parentAnchor); 2933 } 2934 if (!isReorder || isTeleportDisabled(props)) { 2935 if (shapeFlag & 16) { 2936 for (let i = 0; i < children.length; i++) { 2937 move( 2938 children[i], 2939 container, 2940 parentAnchor, 2941 2 2942 ); 2943 } 2944 } 2945 } 2946 if (isReorder) { 2947 insert(anchor, container, parentAnchor); 2948 } 2949} 2950function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, { 2951 o: { nextSibling, parentNode, querySelector, insert, createText } 2952}, hydrateChildren) { 2953 const target = vnode.target = resolveTarget( 2954 vnode.props, 2955 querySelector 2956 ); 2957 if (target) { 2958 const disabled = isTeleportDisabled(vnode.props); 2959 const targetNode = target._lpa || target.firstChild; 2960 if (vnode.shapeFlag & 16) { 2961 if (disabled) { 2962 vnode.anchor = hydrateChildren( 2963 nextSibling(node), 2964 vnode, 2965 parentNode(node), 2966 parentComponent, 2967 parentSuspense, 2968 slotScopeIds, 2969 optimized 2970 ); 2971 vnode.targetStart = targetNode; 2972 vnode.targetAnchor = targetNode && nextSibling(targetNode); 2973 } else { 2974 vnode.anchor = nextSibling(node); 2975 let targetAnchor = targetNode; 2976 while (targetAnchor) { 2977 if (targetAnchor && targetAnchor.nodeType === 8) { 2978 if (targetAnchor.data === "teleport start anchor") { 2979 vnode.targetStart = targetAnchor; 2980 } else if (targetAnchor.data === "teleport anchor") { 2981 vnode.targetAnchor = targetAnchor; 2982 target._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor); 2983 break; 2984 } 2985 } 2986 targetAnchor = nextSibling(targetAnchor); 2987 } 2988 if (!vnode.targetAnchor) { 2989 prepareAnchor(target, vnode, createText, insert); 2990 } 2991 hydrateChildren( 2992 targetNode && nextSibling(targetNode), 2993 vnode, 2994 target, 2995 parentComponent, 2996 parentSuspense, 2997 slotScopeIds, 2998 optimized 2999 ); 3000 } 3001 } 3002 updateCssVars(vnode, disabled); 3003 } 3004 return vnode.anchor && nextSibling(vnode.anchor); 3005} 3006const Teleport = TeleportImpl; 3007function updateCssVars(vnode, isDisabled) { 3008 const ctx = vnode.ctx; 3009 if (ctx && ctx.ut) { 3010 let node, anchor; 3011 if (isDisabled) { 3012 node = vnode.el; 3013 anchor = vnode.anchor; 3014 } else { 3015 node = vnode.targetStart; 3016 anchor = vnode.targetAnchor; 3017 } 3018 while (node && node !== anchor) { 3019 if (node.nodeType === 1) node.setAttribute("data-v-owner", ctx.uid); 3020 node = node.nextSibling; 3021 } 3022 ctx.ut(); 3023 } 3024} 3025function prepareAnchor(target, vnode, createText, insert) { 3026 const targetStart = vnode.targetStart = createText(""); 3027 const targetAnchor = vnode.targetAnchor = createText(""); 3028 targetStart[TeleportEndKey] = targetAnchor; 3029 if (target) { 3030 insert(targetStart, target); 3031 insert(targetAnchor, target); 3032 } 3033 return targetAnchor; 3034} 3035const leaveCbKey = Symbol("_leaveCb"); 3036const enterCbKey$1 = Symbol("_enterCb"); 3037function useTransitionState() { 3038 const state = { 3039 isMounted: false, 3040 isLeaving: false, 3041 isUnmounting: false, 3042 leavingVNodes: /* @__PURE__ */ new Map() 3043 }; 3044 onMounted(() => { 3045 state.isMounted = true; 3046 }); 3047 onBeforeUnmount(() => { 3048 state.isUnmounting = true; 3049 }); 3050 return state; 3051} 3052const TransitionHookValidator = [Function, Array]; 3053const BaseTransitionPropsValidators = { 3054 mode: String, 3055 appear: Boolean, 3056 persisted: Boolean, 3057 // enter 3058 onBeforeEnter: TransitionHookValidator, 3059 onEnter: TransitionHookValidator, 3060 onAfterEnter: TransitionHookValidator, 3061 onEnterCancelled: TransitionHookValidator, 3062 // leave 3063 onBeforeLeave: TransitionHookValidator, 3064 onLeave: TransitionHookValidator, 3065 onAfterLeave: TransitionHookValidator, 3066 onLeaveCancelled: TransitionHookValidator, 3067 // appear 3068 onBeforeAppear: TransitionHookValidator, 3069 onAppear: TransitionHookValidator, 3070 onAfterAppear: TransitionHookValidator, 3071 onAppearCancelled: TransitionHookValidator 3072}; 3073const recursiveGetSubtree = (instance) => { 3074 const subTree = instance.subTree; 3075 return subTree.component ? recursiveGetSubtree(subTree.component) : subTree; 3076}; 3077const BaseTransitionImpl = { 3078 name: `BaseTransition`, 3079 props: BaseTransitionPropsValidators, 3080 setup(props, { slots }) { 3081 const instance = getCurrentInstance(); 3082 const state = useTransitionState(); 3083 return () => { 3084 const children = slots.default && getTransitionRawChildren(slots.default(), true); 3085 if (!children || !children.length) { 3086 return; 3087 } 3088 const child = findNonCommentChild(children); 3089 const rawProps = toRaw(props); 3090 const { mode } = rawProps; 3091 if (state.isLeaving) { 3092 return emptyPlaceholder(child); 3093 } 3094 const innerChild = getInnerChild$1(child); 3095 if (!innerChild) { 3096 return emptyPlaceholder(child); 3097 } 3098 let enterHooks = resolveTransitionHooks( 3099 innerChild, 3100 rawProps, 3101 state, 3102 instance, 3103 // #11061, ensure enterHooks is fresh after clone 3104 (hooks) => enterHooks = hooks 3105 ); 3106 if (innerChild.type !== Comment) { 3107 setTransitionHooks(innerChild, enterHooks); 3108 } 3109 let oldInnerChild = instance.subTree && getInnerChild$1(instance.subTree); 3110 if (oldInnerChild && oldInnerChild.type !== Comment && !isSameVNodeType(innerChild, oldInnerChild) && recursiveGetSubtree(instance).type !== Comment) {
vendor: 4,439 bytes, lines 3111-3274
3111 let leavingHooks = resolveTransitionHooks( 3112 oldInnerChild, 3113 rawProps, 3114 state, 3115 instance 3116 ); 3117 setTransitionHooks(oldInnerChild, leavingHooks); 3118 if (mode === "out-in" && innerChild.type !== Comment) { 3119 state.isLeaving = true; 3120 leavingHooks.afterLeave = () => { 3121 state.isLeaving = false; 3122 if (!(instance.job.flags & 8)) { 3123 instance.update(); 3124 } 3125 delete leavingHooks.afterLeave; 3126 oldInnerChild = void 0; 3127 }; 3128 return emptyPlaceholder(child); 3129 } else if (mode === "in-out" && innerChild.type !== Comment) { 3130 leavingHooks.delayLeave = (el, earlyRemove, delayedLeave) => { 3131 const leavingVNodesCache = getLeavingNodesForType( 3132 state, 3133 oldInnerChild 3134 ); 3135 leavingVNodesCache[String(oldInnerChild.key)] = oldInnerChild; 3136 el[leaveCbKey] = () => { 3137 earlyRemove(); 3138 el[leaveCbKey] = void 0; 3139 delete enterHooks.delayedLeave; 3140 oldInnerChild = void 0; 3141 }; 3142 enterHooks.delayedLeave = () => { 3143 delayedLeave(); 3144 delete enterHooks.delayedLeave; 3145 oldInnerChild = void 0; 3146 }; 3147 }; 3148 } else { 3149 oldInnerChild = void 0; 3150 } 3151 } else if (oldInnerChild) { 3152 oldInnerChild = void 0; 3153 } 3154 return child; 3155 }; 3156 } 3157}; 3158function findNonCommentChild(children) { 3159 let child = children[0]; 3160 if (children.length > 1) { 3161 for (const c2 of children) { 3162 if (c2.type !== Comment) { 3163 child = c2; 3164 break; 3165 } 3166 } 3167 } 3168 return child; 3169} 3170const BaseTransition = BaseTransitionImpl; 3171function getLeavingNodesForType(state, vnode) { 3172 const { leavingVNodes } = state; 3173 let leavingVNodesCache = leavingVNodes.get(vnode.type); 3174 if (!leavingVNodesCache) { 3175 leavingVNodesCache = /* @__PURE__ */ Object.create(null); 3176 leavingVNodes.set(vnode.type, leavingVNodesCache); 3177 } 3178 return leavingVNodesCache; 3179} 3180function resolveTransitionHooks(vnode, props, state, instance, postClone) { 3181 const { 3182 appear, 3183 mode, 3184 persisted = false, 3185 onBeforeEnter, 3186 onEnter, 3187 onAfterEnter, 3188 onEnterCancelled, 3189 onBeforeLeave, 3190 onLeave, 3191 onAfterLeave, 3192 onLeaveCancelled, 3193 onBeforeAppear, 3194 onAppear, 3195 onAfterAppear, 3196 onAppearCancelled 3197 } = props; 3198 const key = String(vnode.key); 3199 const leavingVNodesCache = getLeavingNodesForType(state, vnode); 3200 const callHook2 = (hook, args) => { 3201 hook && callWithAsyncErrorHandling( 3202 hook, 3203 instance, 3204 9, 3205 args 3206 ); 3207 }; 3208 const callAsyncHook = (hook, args) => { 3209 const done = args[1]; 3210 callHook2(hook, args); 3211 if (isArray$4(hook)) { 3212 if (hook.every((hook2) => hook2.length <= 1)) done(); 3213 } else if (hook.length <= 1) { 3214 done(); 3215 } 3216 }; 3217 const hooks = { 3218 mode, 3219 persisted, 3220 beforeEnter(el) { 3221 let hook = onBeforeEnter; 3222 if (!state.isMounted) { 3223 if (appear) { 3224 hook = onBeforeAppear || onBeforeEnter; 3225 } else { 3226 return; 3227 } 3228 } 3229 if (el[leaveCbKey]) { 3230 el[leaveCbKey]( 3231 true 3232 /* cancelled */ 3233 ); 3234 } 3235 const leavingVNode = leavingVNodesCache[key]; 3236 if (leavingVNode && isSameVNodeType(vnode, leavingVNode) && leavingVNode.el[leaveCbKey]) { 3237 leavingVNode.el[leaveCbKey](); 3238 } 3239 callHook2(hook, [el]); 3240 }, 3241 enter(el) { 3242 let hook = onEnter; 3243 let afterHook = onAfterEnter; 3244 let cancelHook = onEnterCancelled; 3245 if (!state.isMounted) { 3246 if (appear) { 3247 hook = onAppear || onEnter; 3248 afterHook = onAfterAppear || onAfterEnter; 3249 cancelHook = onAppearCancelled || onEnterCancelled; 3250 } else { 3251 return; 3252 } 3253 } 3254 let called = false; 3255 const done = el[enterCbKey$1] = (cancelled) => { 3256 if (called) return; 3257 called = true; 3258 if (cancelled) { 3259 callHook2(cancelHook, [el]); 3260 } else { 3261 callHook2(afterHook, [el]); 3262 } 3263 if (hooks.delayedLeave) { 3264 hooks.delayedLeave(); 3265 } 3266 el[enterCbKey$1] = void 0; 3267 }; 3268 if (hook) { 3269 callAsyncHook(hook, [el, done]); 3270 } else { 3271 done(); 3272 } 3273 }, 3274 leave(el, remove2) {
3275 const key2 = String(vnode.key); 3276 if (el[enterCbKey$1]) { 3277 el[enterCbKey$1]( 3278 true 3279 /* cancelled */ 3280 ); 3281 } 3282 if (state.isUnmounting) { 3283 return remove2(); 3284 } 3285 callHook2(onBeforeLeave, [el]); 3286 let called = false; 3287 const done = el[leaveCbKey] = (cancelled) => { 3288 if (called) return; 3289 called = true; 3290 remove2(); 3291 if (cancelled) { 3292 callHook2(onLeaveCancelled, [el]); 3293 } else { 3294 callHook2(onAfterLeave, [el]); 3295 } 3296 el[leaveCbKey] = void 0; 3297 if (leavingVNodesCache[key2] === vnode) { 3298 delete leavingVNodesCache[key2]; 3299 } 3300 }; 3301 leavingVNodesCache[key2] = vnode; 3302 if (onLeave) { 3303 callAsyncHook(onLeave, [el, done]); 3304 } else { 3305 done(); 3306 } 3307 }, 3308 clone(vnode2) { 3309 const hooks2 = resolveTransitionHooks( 3310 vnode2, 3311 props, 3312 state, 3313 instance, 3314 postClone 3315 ); 3316 if (postClone) postClone(hooks2); 3317 return hooks2; 3318 } 3319 }; 3320 return hooks; 3321} 3322function emptyPlaceholder(vnode) { 3323 if (isKeepAlive(vnode)) { 3324 vnode = cloneVNode(vnode); 3325 vnode.children = null; 3326 return vnode; 3327 } 3328} 3329function getInnerChild$1(vnode) { 3330 if (!isKeepAlive(vnode)) { 3331 if (isTeleport(vnode.type) && vnode.children) { 3332 return findNonCommentChild(vnode.children); 3333 } 3334 return vnode; 3335 } 3336 const { shapeFlag, children } = vnode; 3337 if (children) { 3338 if (shapeFlag & 16) { 3339 return children[0]; 3340 } 3341 if (shapeFlag & 32 && isFunction$4(children.default)) { 3342 return children.default(); 3343 } 3344 } 3345} 3346function setTransitionHooks(vnode, hooks) { 3347 if (vnode.shapeFlag & 6 && vnode.component) { 3348 vnode.transition = hooks; 3349 setTransitionHooks(vnode.component.subTree, hooks); 3350 } else if (vnode.shapeFlag & 128) { 3351 vnode.ssContent.transition = hooks.clone(vnode.ssContent); 3352 vnode.ssFallback.transition = hooks.clone(vnode.ssFallback); 3353 } else { 3354 vnode.transition = hooks; 3355 } 3356} 3357function getTransitionRawChildren(children, keepComment = false, parentKey) { 3358 let ret = []; 3359 let keyedFragmentCount = 0; 3360 for (let i = 0; i < children.length; i++) {
3361 let child = children[i]; 3362 const key = parentKey == null ? child.key : String(parentKey) + String(child.key != null ? child.key : i); 3363 if (child.type === Fragment) { 3364 if (child.patchFlag & 128) keyedFragmentCount++; 3365 ret = ret.concat( 3366 getTransitionRawChildren(child.children, keepComment, key) 3367 ); 3368 } else if (keepComment || child.type !== Comment) { 3369 ret.push(key != null ? cloneVNode(child, { key }) : child); 3370 } 3371 } 3372 if (keyedFragmentCount > 1) { 3373 for (let i = 0; i < ret.length; i++) { 3374 ret[i].patchFlag = -2; 3375 } 3376 } 3377 return ret; 3378} 3379/*! #__NO_SIDE_EFFECTS__ */ 3380// @__NO_SIDE_EFFECTS__ 3381function defineComponent(options, extraOptions) { 3382 return isFunction$4(options) ? ( 3383 // #8236: extend call and options.name access are considered side-effects 3384 // by Rollup, so we have to wrap it in a pure-annotated IIFE. 3385 /* @__PURE__ */ (() => extend$1({ name: options.name }, extraOptions, { setup: options }))() 3386 ) : options; 3387} 3388function useId() { 3389 const i = getCurrentInstance(); 3390 if (i) { 3391 return (i.appContext.config.idPrefix || "v") + "-" + i.ids[0] + i.ids[1]++; 3392 } 3393 return ""; 3394} 3395function markAsyncBoundary(instance) { 3396 instance.ids = [instance.ids[0] + instance.ids[2]++ + "-", 0, 0]; 3397} 3398function useTemplateRef(key) { 3399 const i = getCurrentInstance(); 3400 const r2 = shallowRef(null); 3401 if (i) { 3402 const refs = i.refs === EMPTY_OBJ ? i.refs = {} : i.refs; 3403 { 3404 Object.defineProperty(refs, key, { 3405 enumerable: true, 3406 get: () => r2.value, 3407 set: (val) => r2.value = val 3408 }); 3409 } 3410 } 3411 const ret = r2; 3412 return ret; 3413} 3414function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) { 3415 if (isArray$4(rawRef)) { 3416 rawRef.forEach( 3417 (r2, i) => setRef( 3418 r2, 3419 oldRawRef && (isArray$4(oldRawRef) ? oldRawRef[i] : oldRawRef), 3420 parentSuspense, 3421 vnode, 3422 isUnmount 3423 ) 3424 ); 3425 return; 3426 } 3427 if (isAsyncWrapper(vnode) && !isUnmount) { 3428 if (vnode.shapeFlag & 512 && vnode.type.__asyncResolved && vnode.component.subTree.component) { 3429 setRef(rawRef, oldRawRef, parentSuspense, vnode.component.subTree); 3430 } 3431 return; 3432 } 3433 const refValue = vnode.shapeFlag & 4 ? getComponentPublicInstance(vnode.component) : vnode.el; 3434 const value = isUnmount ? null : refValue; 3435 const { i: owner, r: ref3 } = rawRef; 3436 const oldRef = oldRawRef && oldRawRef.r; 3437 const refs = owner.refs === EMPTY_OBJ ? owner.refs = {} : owner.refs; 3438 const setupState = owner.setupState; 3439 const rawSetupState = toRaw(setupState); 3440 const canSetSetupRef = setupState === EMPTY_OBJ ? () => false : (key) => { 3441 return hasOwn(rawSetupState, key); 3442 }; 3443 if (oldRef != null && oldRef !== ref3) { 3444 if (isString$1(oldRef)) { 3445 refs[oldRef] = null; 3446 if (canSetSetupRef(oldRef)) { 3447 setupState[oldRef] = null; 3448 } 3449 } else if (isRef(oldRef)) { 3450 oldRef.value = null; 3451 } 3452 } 3453 if (isFunction$4(ref3)) { 3454 callWithErrorHandling(ref3, owner, 12, [value, refs]); 3455 } else { 3456 const _isString = isString$1(ref3); 3457 const _isRef = isRef(ref3); 3458 if (_isString || _isRef) { 3459 const doSet = () => { 3460 if (rawRef.f) { 3461 const existing = _isString ? canSetSetupRef(ref3) ? setupState[ref3] : refs[ref3] : ref3.value; 3462 if (isUnmount) { 3463 isArray$4(existing) && remove(existing, refValue); 3464 } else { 3465 if (!isArray$4(existing)) { 3466 if (_isString) { 3467 refs[ref3] = [refValue]; 3468 if (canSetSetupRef(ref3)) { 3469 setupState[ref3] = refs[ref3]; 3470 } 3471 } else { 3472 ref3.value = [refValue]; 3473 if (rawRef.k) refs[rawRef.k] = ref3.value; 3474 } 3475 } else if (!existing.includes(refValue)) { 3476 existing.push(refValue); 3477 } 3478 } 3479 } else if (_isString) { 3480 refs[ref3] = value; 3481 if (canSetSetupRef(ref3)) { 3482 setupState[ref3] = value; 3483 } 3484 } else if (_isRef) { 3485 ref3.value = value; 3486 if (rawRef.k) refs[rawRef.k] = value; 3487 } else ; 3488 }; 3489 if (value) { 3490 doSet.id = -1; 3491 queuePostRenderEffect(doSet, parentSuspense); 3492 } else { 3493 doSet(); 3494 } 3495 } 3496 } 3497} 3498let hasLoggedMismatchError = false;
vendor: 6,744 bytes, lines 3499-3711
3499const logMismatchError = () => { 3500 if (hasLoggedMismatchError) { 3501 return; 3502 } 3503 console.error("Hydration completed but contains mismatches."); 3504 hasLoggedMismatchError = true; 3505}; 3506const isSVGContainer = (container) => container.namespaceURI.includes("svg") && container.tagName !== "foreignObject"; 3507const isMathMLContainer = (container) => container.namespaceURI.includes("MathML"); 3508const getContainerType = (container) => { 3509 if (container.nodeType !== 1) return void 0; 3510 if (isSVGContainer(container)) return "svg"; 3511 if (isMathMLContainer(container)) return "mathml"; 3512 return void 0; 3513}; 3514const isComment = (node) => node.nodeType === 8; 3515function createHydrationFunctions(rendererInternals) { 3516 const { 3517 mt: mountComponent, 3518 p: patch, 3519 o: { 3520 patchProp: patchProp2, 3521 createText, 3522 nextSibling, 3523 parentNode, 3524 remove: remove2, 3525 insert, 3526 createComment 3527 } 3528 } = rendererInternals; 3529 const hydrate2 = (vnode, container) => { 3530 if (!container.hasChildNodes()) { 3531 patch(null, vnode, container); 3532 flushPostFlushCbs(); 3533 container._vnode = vnode; 3534 return; 3535 } 3536 hydrateNode(container.firstChild, vnode, null, null, null); 3537 flushPostFlushCbs(); 3538 container._vnode = vnode; 3539 }; 3540 const hydrateNode = (node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized = false) => { 3541 optimized = optimized || !!vnode.dynamicChildren; 3542 const isFragmentStart = isComment(node) && node.data === "["; 3543 const onMismatch = () => handleMismatch( 3544 node, 3545 vnode, 3546 parentComponent, 3547 parentSuspense, 3548 slotScopeIds, 3549 isFragmentStart 3550 ); 3551 const { type, ref: ref3, shapeFlag, patchFlag } = vnode; 3552 let domType = node.nodeType; 3553 vnode.el = node; 3554 if (patchFlag === -2) { 3555 optimized = false; 3556 vnode.dynamicChildren = null; 3557 } 3558 let nextNode = null; 3559 switch (type) { 3560 case Text: 3561 if (domType !== 3) { 3562 if (vnode.children === "") { 3563 insert(vnode.el = createText(""), parentNode(node), node); 3564 nextNode = node; 3565 } else { 3566 nextNode = onMismatch(); 3567 } 3568 } else { 3569 if (node.data !== vnode.children) { 3570 logMismatchError(); 3571 node.data = vnode.children; 3572 } 3573 nextNode = nextSibling(node); 3574 } 3575 break; 3576 case Comment: 3577 if (isTemplateNode(node)) { 3578 nextNode = nextSibling(node); 3579 replaceNode( 3580 vnode.el = node.content.firstChild, 3581 node, 3582 parentComponent 3583 ); 3584 } else if (domType !== 8 || isFragmentStart) { 3585 nextNode = onMismatch(); 3586 } else { 3587 nextNode = nextSibling(node); 3588 } 3589 break; 3590 case Static: 3591 if (isFragmentStart) { 3592 node = nextSibling(node); 3593 domType = node.nodeType; 3594 } 3595 if (domType === 1 || domType === 3) { 3596 nextNode = node; 3597 const needToAdoptContent = !vnode.children.length; 3598 for (let i = 0; i < vnode.staticCount; i++) { 3599 if (needToAdoptContent) 3600 vnode.children += nextNode.nodeType === 1 ? nextNode.outerHTML : nextNode.data; 3601 if (i === vnode.staticCount - 1) { 3602 vnode.anchor = nextNode; 3603 } 3604 nextNode = nextSibling(nextNode); 3605 } 3606 return isFragmentStart ? nextSibling(nextNode) : nextNode; 3607 } else { 3608 onMismatch(); 3609 } 3610 break; 3611 case Fragment: 3612 if (!isFragmentStart) { 3613 nextNode = onMismatch(); 3614 } else { 3615 nextNode = hydrateFragment( 3616 node, 3617 vnode, 3618 parentComponent, 3619 parentSuspense, 3620 slotScopeIds, 3621 optimized 3622 ); 3623 } 3624 break; 3625 default: 3626 if (shapeFlag & 1) { 3627 if ((domType !== 1 || vnode.type.toLowerCase() !== node.tagName.toLowerCase()) && !isTemplateNode(node)) { 3628 nextNode = onMismatch(); 3629 } else { 3630 nextNode = hydrateElement( 3631 node, 3632 vnode, 3633 parentComponent, 3634 parentSuspense, 3635 slotScopeIds, 3636 optimized 3637 ); 3638 } 3639 } else if (shapeFlag & 6) { 3640 vnode.slotScopeIds = slotScopeIds; 3641 const container = parentNode(node); 3642 if (isFragmentStart) { 3643 nextNode = locateClosingAnchor(node); 3644 } else if (isComment(node) && node.data === "teleport start") { 3645 nextNode = locateClosingAnchor(node, node.data, "teleport end"); 3646 } else { 3647 nextNode = nextSibling(node); 3648 } 3649 mountComponent( 3650 vnode, 3651 container, 3652 null, 3653 parentComponent, 3654 parentSuspense, 3655 getContainerType(container), 3656 optimized 3657 ); 3658 if (isAsyncWrapper(vnode) && !vnode.type.__asyncResolved) { 3659 let subTree; 3660 if (isFragmentStart) { 3661 subTree = createVNode(Fragment); 3662 subTree.anchor = nextNode ? nextNode.previousSibling : container.lastChild; 3663 } else { 3664 subTree = node.nodeType === 3 ? createTextVNode("") : createVNode("div"); 3665 } 3666 subTree.el = node; 3667 vnode.component.subTree = subTree; 3668 } 3669 } else if (shapeFlag & 64) { 3670 if (domType !== 8) { 3671 nextNode = onMismatch(); 3672 } else { 3673 nextNode = vnode.type.hydrate( 3674 node, 3675 vnode, 3676 parentComponent, 3677 parentSuspense, 3678 slotScopeIds, 3679 optimized, 3680 rendererInternals, 3681 hydrateChildren 3682 ); 3683 } 3684 } else if (shapeFlag & 128) { 3685 nextNode = vnode.type.hydrate( 3686 node, 3687 vnode, 3688 parentComponent, 3689 parentSuspense, 3690 getContainerType(parentNode(node)), 3691 slotScopeIds, 3692 optimized, 3693 rendererInternals, 3694 hydrateNode 3695 ); 3696 } else ; 3697 } 3698 if (ref3 != null) { 3699 setRef(ref3, null, parentSuspense, vnode); 3700 } 3701 return nextNode; 3702 }; 3703 const hydrateElement = (el, vnode, parentComponent, parentSuspense, slotScopeIds, optimized) => { 3704 optimized = optimized || !!vnode.dynamicChildren; 3705 const { type, props, patchFlag, shapeFlag, dirs, transition } = vnode; 3706 const forcePatch = type === "input" || type === "option"; 3707 if (forcePatch || patchFlag !== -1) { 3708 if (dirs) { 3709 invokeDirectiveHook(vnode, null, parentComponent, "created"); 3710 } 3711 let needCallTransitionHooks = false;
vendor: 20,085 bytes, lines 3712-4392
3712 if (isTemplateNode(el)) { 3713 needCallTransitionHooks = needTransition( 3714 null, 3715 // no need check parentSuspense in hydration 3716 transition 3717 ) && parentComponent && parentComponent.vnode.props && parentComponent.vnode.props.appear; 3718 const content = el.content.firstChild; 3719 if (needCallTransitionHooks) { 3720 transition.beforeEnter(content); 3721 } 3722 replaceNode(content, el, parentComponent); 3723 vnode.el = el = content; 3724 } 3725 if (shapeFlag & 16 && // skip if element has innerHTML / textContent 3726 !(props && (props.innerHTML || props.textContent))) { 3727 let next = hydrateChildren( 3728 el.firstChild, 3729 vnode, 3730 el, 3731 parentComponent, 3732 parentSuspense, 3733 slotScopeIds, 3734 optimized 3735 ); 3736 while (next) { 3737 if (!isMismatchAllowed( 3738 el, 3739 1 3740 /* CHILDREN */ 3741 )) { 3742 logMismatchError(); 3743 } 3744 const cur = next; 3745 next = next.nextSibling; 3746 remove2(cur); 3747 } 3748 } else if (shapeFlag & 8) { 3749 let clientText = vnode.children; 3750 if (clientText[0] === "\n" && (el.tagName === "PRE" || el.tagName === "TEXTAREA")) { 3751 clientText = clientText.slice(1); 3752 } 3753 if (el.textContent !== clientText) { 3754 if (!isMismatchAllowed( 3755 el, 3756 0 3757 /* TEXT */ 3758 )) { 3759 logMismatchError(); 3760 } 3761 el.textContent = vnode.children; 3762 } 3763 } 3764 if (props) { 3765 if (forcePatch || !optimized || patchFlag & (16 | 32)) { 3766 const isCustomElement = el.tagName.includes("-"); 3767 for (const key in props) { 3768 if (forcePatch && (key.endsWith("value") || key === "indeterminate") || isOn(key) && !isReservedProp(key) || // force hydrate v-bind with .prop modifiers 3769 key[0] === "." || isCustomElement) { 3770 patchProp2(el, key, null, props[key], void 0, parentComponent); 3771 } 3772 } 3773 } else if (props.onClick) { 3774 patchProp2( 3775 el, 3776 "onClick", 3777 null, 3778 props.onClick, 3779 void 0, 3780 parentComponent 3781 ); 3782 } else if (patchFlag & 4 && isReactive(props.style)) { 3783 for (const key in props.style) props.style[key]; 3784 } 3785 } 3786 let vnodeHooks; 3787 if (vnodeHooks = props && props.onVnodeBeforeMount) { 3788 invokeVNodeHook(vnodeHooks, parentComponent, vnode); 3789 } 3790 if (dirs) { 3791 invokeDirectiveHook(vnode, null, parentComponent, "beforeMount"); 3792 } 3793 if ((vnodeHooks = props && props.onVnodeMounted) || dirs || needCallTransitionHooks) { 3794 queueEffectWithSuspense(() => { 3795 vnodeHooks && invokeVNodeHook(vnodeHooks, parentComponent, vnode); 3796 needCallTransitionHooks && transition.enter(el); 3797 dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted"); 3798 }, parentSuspense); 3799 } 3800 } 3801 return el.nextSibling; 3802 }; 3803 const hydrateChildren = (node, parentVNode, container, parentComponent, parentSuspense, slotScopeIds, optimized) => { 3804 optimized = optimized || !!parentVNode.dynamicChildren; 3805 const children = parentVNode.children; 3806 const l3 = children.length; 3807 for (let i = 0; i < l3; i++) { 3808 const vnode = optimized ? children[i] : children[i] = normalizeVNode(children[i]); 3809 const isText = vnode.type === Text; 3810 if (node) { 3811 if (isText && !optimized) { 3812 if (i + 1 < l3 && normalizeVNode(children[i + 1]).type === Text) { 3813 insert( 3814 createText( 3815 node.data.slice(vnode.children.length) 3816 ), 3817 container, 3818 nextSibling(node) 3819 ); 3820 node.data = vnode.children; 3821 } 3822 } 3823 node = hydrateNode( 3824 node, 3825 vnode, 3826 parentComponent, 3827 parentSuspense, 3828 slotScopeIds, 3829 optimized 3830 ); 3831 } else if (isText && !vnode.children) { 3832 insert(vnode.el = createText(""), container); 3833 } else { 3834 if (!isMismatchAllowed( 3835 container, 3836 1 3837 /* CHILDREN */ 3838 )) { 3839 logMismatchError(); 3840 } 3841 patch( 3842 null, 3843 vnode, 3844 container, 3845 null, 3846 parentComponent, 3847 parentSuspense, 3848 getContainerType(container), 3849 slotScopeIds 3850 ); 3851 } 3852 } 3853 return node; 3854 }; 3855 const hydrateFragment = (node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized) => { 3856 const { slotScopeIds: fragmentSlotScopeIds } = vnode; 3857 if (fragmentSlotScopeIds) { 3858 slotScopeIds = slotScopeIds ? slotScopeIds.concat(fragmentSlotScopeIds) : fragmentSlotScopeIds; 3859 } 3860 const container = parentNode(node); 3861 const next = hydrateChildren( 3862 nextSibling(node), 3863 vnode, 3864 container, 3865 parentComponent, 3866 parentSuspense, 3867 slotScopeIds, 3868 optimized 3869 ); 3870 if (next && isComment(next) && next.data === "]") { 3871 return nextSibling(vnode.anchor = next); 3872 } else { 3873 logMismatchError(); 3874 insert(vnode.anchor = createComment(`]`), container, next); 3875 return next; 3876 } 3877 }; 3878 const handleMismatch = (node, vnode, parentComponent, parentSuspense, slotScopeIds, isFragment) => { 3879 if (!isMismatchAllowed( 3880 node.parentElement, 3881 1 3882 /* CHILDREN */ 3883 )) { 3884 logMismatchError(); 3885 } 3886 vnode.el = null; 3887 if (isFragment) { 3888 const end = locateClosingAnchor(node); 3889 while (true) { 3890 const next2 = nextSibling(node); 3891 if (next2 && next2 !== end) { 3892 remove2(next2); 3893 } else { 3894 break; 3895 } 3896 } 3897 } 3898 const next = nextSibling(node); 3899 const container = parentNode(node); 3900 remove2(node); 3901 patch( 3902 null, 3903 vnode, 3904 container, 3905 next, 3906 parentComponent, 3907 parentSuspense, 3908 getContainerType(container), 3909 slotScopeIds 3910 ); 3911 if (parentComponent) { 3912 parentComponent.vnode.el = vnode.el; 3913 updateHOCHostEl(parentComponent, vnode.el); 3914 } 3915 return next; 3916 }; 3917 const locateClosingAnchor = (node, open2 = "[", close = "]") => { 3918 let match2 = 0; 3919 while (node) { 3920 node = nextSibling(node); 3921 if (node && isComment(node)) { 3922 if (node.data === open2) match2++; 3923 if (node.data === close) { 3924 if (match2 === 0) { 3925 return nextSibling(node); 3926 } else { 3927 match2--; 3928 } 3929 } 3930 } 3931 } 3932 return node; 3933 }; 3934 const replaceNode = (newNode, oldNode, parentComponent) => { 3935 const parentNode2 = oldNode.parentNode; 3936 if (parentNode2) { 3937 parentNode2.replaceChild(newNode, oldNode); 3938 } 3939 let parent = parentComponent; 3940 while (parent) { 3941 if (parent.vnode.el === oldNode) { 3942 parent.vnode.el = parent.subTree.el = newNode; 3943 } 3944 parent = parent.parent; 3945 } 3946 }; 3947 const isTemplateNode = (node) => { 3948 return node.nodeType === 1 && node.tagName === "TEMPLATE"; 3949 }; 3950 return [hydrate2, hydrateNode]; 3951} 3952const allowMismatchAttr = "data-allow-mismatch"; 3953const MismatchTypeString = { 3954 [ 3955 0 3956 /* TEXT */ 3957 ]: "text", 3958 [ 3959 1 3960 /* CHILDREN */ 3961 ]: "children", 3962 [ 3963 2 3964 /* CLASS */ 3965 ]: "class", 3966 [ 3967 3 3968 /* STYLE */ 3969 ]: "style", 3970 [ 3971 4 3972 /* ATTRIBUTE */ 3973 ]: "attribute" 3974}; 3975function isMismatchAllowed(el, allowedType) { 3976 if (allowedType === 0 || allowedType === 1) { 3977 while (el && !el.hasAttribute(allowMismatchAttr)) { 3978 el = el.parentElement; 3979 } 3980 } 3981 const allowedAttr = el && el.getAttribute(allowMismatchAttr); 3982 if (allowedAttr == null) { 3983 return false; 3984 } else if (allowedAttr === "") { 3985 return true; 3986 } else { 3987 const list = allowedAttr.split(","); 3988 if (allowedType === 0 && list.includes("children")) { 3989 return true; 3990 } 3991 return allowedAttr.split(",").includes(MismatchTypeString[allowedType]); 3992 } 3993} 3994const requestIdleCallback$1 = getGlobalThis().requestIdleCallback || ((cb) => setTimeout(cb, 1)); 3995const cancelIdleCallback$1 = getGlobalThis().cancelIdleCallback || ((id) => clearTimeout(id)); 3996const hydrateOnIdle = (timeout = 1e4) => (hydrate2) => { 3997 const id = requestIdleCallback$1(hydrate2, { timeout }); 3998 return () => cancelIdleCallback$1(id); 3999}; 4000function elementIsVisibleInViewport(el) { 4001 const { top, left, bottom, right } = el.getBoundingClientRect(); 4002 const { innerHeight, innerWidth } = window; 4003 return (top > 0 && top < innerHeight || bottom > 0 && bottom < innerHeight) && (left > 0 && left < innerWidth || right > 0 && right < innerWidth); 4004} 4005const hydrateOnVisible = (opts) => (hydrate2, forEach2) => { 4006 const ob = new IntersectionObserver((entries) => { 4007 for (const e of entries) { 4008 if (!e.isIntersecting) continue; 4009 ob.disconnect(); 4010 hydrate2(); 4011 break; 4012 } 4013 }, opts); 4014 forEach2((el) => { 4015 if (!(el instanceof Element)) return; 4016 if (elementIsVisibleInViewport(el)) { 4017 hydrate2(); 4018 ob.disconnect(); 4019 return false; 4020 } 4021 ob.observe(el); 4022 }); 4023 return () => ob.disconnect(); 4024}; 4025const hydrateOnMediaQuery = (query) => (hydrate2) => { 4026 if (query) { 4027 const mql = matchMedia(query); 4028 if (mql.matches) { 4029 hydrate2(); 4030 } else { 4031 mql.addEventListener("change", hydrate2, { once: true }); 4032 return () => mql.removeEventListener("change", hydrate2); 4033 } 4034 } 4035}; 4036const hydrateOnInteraction = (interactions = []) => (hydrate2, forEach2) => { 4037 if (isString$1(interactions)) interactions = [interactions]; 4038 let hasHydrated = false; 4039 const doHydrate = (e) => { 4040 if (!hasHydrated) { 4041 hasHydrated = true; 4042 teardown(); 4043 hydrate2(); 4044 e.target.dispatchEvent(new e.constructor(e.type, e)); 4045 } 4046 }; 4047 const teardown = () => { 4048 forEach2((el) => { 4049 for (const i of interactions) { 4050 el.removeEventListener(i, doHydrate); 4051 } 4052 }); 4053 }; 4054 forEach2((el) => { 4055 for (const i of interactions) { 4056 el.addEventListener(i, doHydrate, { once: true }); 4057 } 4058 }); 4059 return teardown; 4060}; 4061function forEachElement(node, cb) { 4062 if (isComment(node) && node.data === "[") { 4063 let depth = 1; 4064 let next = node.nextSibling; 4065 while (next) { 4066 if (next.nodeType === 1) { 4067 const result = cb(next); 4068 if (result === false) { 4069 break; 4070 } 4071 } else if (isComment(next)) { 4072 if (next.data === "]") { 4073 if (--depth === 0) break; 4074 } else if (next.data === "[") { 4075 depth++; 4076 } 4077 } 4078 next = next.nextSibling; 4079 } 4080 } else { 4081 cb(node); 4082 } 4083} 4084const isAsyncWrapper = (i) => !!i.type.__asyncLoader; 4085/*! #__NO_SIDE_EFFECTS__ */ 4086// @__NO_SIDE_EFFECTS__ 4087function defineAsyncComponent(source) { 4088 if (isFunction$4(source)) { 4089 source = { loader: source }; 4090 } 4091 const { 4092 loader, 4093 loadingComponent, 4094 errorComponent, 4095 delay = 200, 4096 hydrate: hydrateStrategy, 4097 timeout, 4098 // undefined = never times out 4099 suspensible = true, 4100 onError: userOnError 4101 } = source; 4102 let pendingRequest = null; 4103 let resolvedComp; 4104 let retries = 0; 4105 const retry = () => { 4106 retries++; 4107 pendingRequest = null; 4108 return load(); 4109 }; 4110 const load = () => { 4111 let thisRequest; 4112 return pendingRequest || (thisRequest = pendingRequest = loader().catch((err) => { 4113 err = err instanceof Error ? err : new Error(String(err)); 4114 if (userOnError) { 4115 return new Promise((resolve2, reject) => { 4116 const userRetry = () => resolve2(retry()); 4117 const userFail = () => reject(err); 4118 userOnError(err, userRetry, userFail, retries + 1); 4119 }); 4120 } else { 4121 throw err; 4122 } 4123 }).then((comp) => { 4124 if (thisRequest !== pendingRequest && pendingRequest) { 4125 return pendingRequest; 4126 } 4127 if (comp && (comp.__esModule || comp[Symbol.toStringTag] === "Module")) { 4128 comp = comp.default; 4129 } 4130 resolvedComp = comp; 4131 return comp; 4132 })); 4133 }; 4134 return /* @__PURE__ */ defineComponent({ 4135 name: "AsyncComponentWrapper", 4136 __asyncLoader: load, 4137 __asyncHydrate(el, instance, hydrate2) { 4138 const doHydrate = hydrateStrategy ? () => { 4139 const teardown = hydrateStrategy( 4140 hydrate2, 4141 (cb) => forEachElement(el, cb) 4142 ); 4143 if (teardown) { 4144 (instance.bum || (instance.bum = [])).push(teardown); 4145 } 4146 } : hydrate2; 4147 if (resolvedComp) { 4148 doHydrate(); 4149 } else { 4150 load().then(() => !instance.isUnmounted && doHydrate()); 4151 } 4152 }, 4153 get __asyncResolved() { 4154 return resolvedComp; 4155 }, 4156 setup() { 4157 const instance = currentInstance; 4158 markAsyncBoundary(instance); 4159 if (resolvedComp) { 4160 return () => createInnerComp(resolvedComp, instance); 4161 } 4162 const onError = (err) => { 4163 pendingRequest = null; 4164 handleError( 4165 err, 4166 instance, 4167 13, 4168 !errorComponent 4169 ); 4170 }; 4171 if (suspensible && instance.suspense || isInSSRComponentSetup) { 4172 return load().then((comp) => { 4173 return () => createInnerComp(comp, instance); 4174 }).catch((err) => { 4175 onError(err); 4176 return () => errorComponent ? createVNode(errorComponent, { 4177 error: err 4178 }) : null; 4179 }); 4180 } 4181 const loaded = ref(false); 4182 const error = ref(); 4183 const delayed = ref(!!delay); 4184 if (delay) { 4185 setTimeout(() => { 4186 delayed.value = false; 4187 }, delay); 4188 } 4189 if (timeout != null) { 4190 setTimeout(() => { 4191 if (!loaded.value && !error.value) { 4192 const err = new Error( 4193 `Async component timed out after ${timeout}ms.` 4194 ); 4195 onError(err); 4196 error.value = err; 4197 } 4198 }, timeout); 4199 } 4200 load().then(() => { 4201 loaded.value = true; 4202 if (instance.parent && isKeepAlive(instance.parent.vnode)) { 4203 instance.parent.update(); 4204 } 4205 }).catch((err) => { 4206 onError(err); 4207 error.value = err; 4208 }); 4209 return () => { 4210 if (loaded.value && resolvedComp) { 4211 return createInnerComp(resolvedComp, instance); 4212 } else if (error.value && errorComponent) { 4213 return createVNode(errorComponent, { 4214 error: error.value 4215 }); 4216 } else if (loadingComponent && !delayed.value) { 4217 return createVNode(loadingComponent); 4218 } 4219 }; 4220 } 4221 }); 4222} 4223function createInnerComp(comp, parent) { 4224 const { ref: ref22, props, children, ce } = parent.vnode; 4225 const vnode = createVNode(comp, props, children); 4226 vnode.ref = ref22; 4227 vnode.ce = ce; 4228 delete parent.vnode.ce; 4229 return vnode; 4230} 4231const isKeepAlive = (vnode) => vnode.type.__isKeepAlive; 4232const KeepAliveImpl = { 4233 name: `KeepAlive`, 4234 // Marker for special handling inside the renderer. We are not using a === 4235 // check directly on KeepAlive in the renderer, because importing it directly 4236 // would prevent it from being tree-shaken. 4237 __isKeepAlive: true, 4238 props: { 4239 include: [String, RegExp, Array], 4240 exclude: [String, RegExp, Array], 4241 max: [String, Number] 4242 }, 4243 setup(props, { slots }) { 4244 const instance = getCurrentInstance(); 4245 const sharedContext = instance.ctx; 4246 if (!sharedContext.renderer) { 4247 return () => { 4248 const children = slots.default && slots.default(); 4249 return children && children.length === 1 ? children[0] : children; 4250 }; 4251 } 4252 const cache = /* @__PURE__ */ new Map(); 4253 const keys2 = /* @__PURE__ */ new Set(); 4254 let current = null; 4255 const parentSuspense = instance.suspense; 4256 const { 4257 renderer: { 4258 p: patch, 4259 m: move, 4260 um: _unmount, 4261 o: { createElement } 4262 } 4263 } = sharedContext; 4264 const storageContainer = createElement("div"); 4265 sharedContext.activate = (vnode, container, anchor, namespace, optimized) => { 4266 const instance2 = vnode.component; 4267 move(vnode, container, anchor, 0, parentSuspense); 4268 patch( 4269 instance2.vnode, 4270 vnode, 4271 container, 4272 anchor, 4273 instance2, 4274 parentSuspense, 4275 namespace, 4276 vnode.slotScopeIds, 4277 optimized 4278 ); 4279 queuePostRenderEffect(() => { 4280 instance2.isDeactivated = false; 4281 if (instance2.a) { 4282 invokeArrayFns(instance2.a); 4283 } 4284 const vnodeHook = vnode.props && vnode.props.onVnodeMounted; 4285 if (vnodeHook) { 4286 invokeVNodeHook(vnodeHook, instance2.parent, vnode); 4287 } 4288 }, parentSuspense); 4289 }; 4290 sharedContext.deactivate = (vnode) => { 4291 const instance2 = vnode.component; 4292 invalidateMount(instance2.m); 4293 invalidateMount(instance2.a); 4294 move(vnode, storageContainer, null, 1, parentSuspense); 4295 queuePostRenderEffect(() => { 4296 if (instance2.da) { 4297 invokeArrayFns(instance2.da); 4298 } 4299 const vnodeHook = vnode.props && vnode.props.onVnodeUnmounted; 4300 if (vnodeHook) { 4301 invokeVNodeHook(vnodeHook, instance2.parent, vnode); 4302 } 4303 instance2.isDeactivated = true; 4304 }, parentSuspense); 4305 }; 4306 function unmount(vnode) { 4307 resetShapeFlag(vnode); 4308 _unmount(vnode, instance, parentSuspense, true); 4309 } 4310 function pruneCache(filter2) { 4311 cache.forEach((vnode, key) => { 4312 const name = getComponentName(vnode.type); 4313 if (name && !filter2(name)) { 4314 pruneCacheEntry(key); 4315 } 4316 }); 4317 } 4318 function pruneCacheEntry(key) { 4319 const cached = cache.get(key); 4320 if (cached && (!current || !isSameVNodeType(cached, current))) { 4321 unmount(cached); 4322 } else if (current) { 4323 resetShapeFlag(current); 4324 } 4325 cache.delete(key); 4326 keys2.delete(key); 4327 } 4328 watch( 4329 () => [props.include, props.exclude], 4330 ([include, exclude]) => { 4331 include && pruneCache((name) => matches(include, name)); 4332 exclude && pruneCache((name) => !matches(exclude, name)); 4333 }, 4334 // prune post-render after `current` has been updated 4335 { flush: "post", deep: true } 4336 ); 4337 let pendingCacheKey = null; 4338 const cacheSubtree = () => { 4339 if (pendingCacheKey != null) { 4340 if (isSuspense(instance.subTree.type)) { 4341 queuePostRenderEffect(() => { 4342 cache.set(pendingCacheKey, getInnerChild(instance.subTree)); 4343 }, instance.subTree.suspense); 4344 } else { 4345 cache.set(pendingCacheKey, getInnerChild(instance.subTree)); 4346 } 4347 } 4348 }; 4349 onMounted(cacheSubtree); 4350 onUpdated(cacheSubtree); 4351 onBeforeUnmount(() => { 4352 cache.forEach((cached) => { 4353 const { subTree, suspense } = instance; 4354 const vnode = getInnerChild(subTree); 4355 if (cached.type === vnode.type && cached.key === vnode.key) { 4356 resetShapeFlag(vnode); 4357 const da = vnode.component.da; 4358 da && queuePostRenderEffect(da, suspense); 4359 return; 4360 } 4361 unmount(cached); 4362 }); 4363 }); 4364 return () => { 4365 pendingCacheKey = null; 4366 if (!slots.default) { 4367 return current = null; 4368 } 4369 const children = slots.default(); 4370 const rawVNode = children[0]; 4371 if (children.length > 1) { 4372 current = null; 4373 return children; 4374 } else if (!isVNode(rawVNode) || !(rawVNode.shapeFlag & 4) && !(rawVNode.shapeFlag & 128)) { 4375 current = null; 4376 return rawVNode; 4377 } 4378 let vnode = getInnerChild(rawVNode); 4379 if (vnode.type === Comment) { 4380 current = null; 4381 return vnode; 4382 } 4383 const comp = vnode.type; 4384 const name = getComponentName( 4385 isAsyncWrapper(vnode) ? vnode.type.__asyncResolved || {} : comp 4386 ); 4387 const { include, exclude, max } = props; 4388 if (include && (!name || !matches(include, name)) || exclude && name && matches(exclude, name)) { 4389 vnode.shapeFlag &= -257; 4390 current = vnode; 4391 return rawVNode; 4392 }
vendor: 1,504 bytes, lines 4393-4442
4393 const key = vnode.key == null ? comp : vnode.key; 4394 const cachedVNode = cache.get(key); 4395 if (vnode.el) { 4396 vnode = cloneVNode(vnode); 4397 if (rawVNode.shapeFlag & 128) { 4398 rawVNode.ssContent = vnode; 4399 } 4400 } 4401 pendingCacheKey = key; 4402 if (cachedVNode) { 4403 vnode.el = cachedVNode.el; 4404 vnode.component = cachedVNode.component; 4405 if (vnode.transition) { 4406 setTransitionHooks(vnode, vnode.transition); 4407 } 4408 vnode.shapeFlag |= 512; 4409 keys2.delete(key); 4410 keys2.add(key); 4411 } else { 4412 keys2.add(key); 4413 if (max && keys2.size > parseInt(max, 10)) { 4414 pruneCacheEntry(keys2.values().next().value); 4415 } 4416 } 4417 vnode.shapeFlag |= 256; 4418 current = vnode; 4419 return isSuspense(rawVNode.type) ? rawVNode : vnode; 4420 }; 4421 } 4422}; 4423const KeepAlive = KeepAliveImpl; 4424function matches(pattern, name) { 4425 if (isArray$4(pattern)) { 4426 return pattern.some((p2) => matches(p2, name)); 4427 } else if (isString$1(pattern)) { 4428 return pattern.split(",").includes(name); 4429 } else if (isRegExp$1(pattern)) { 4430 pattern.lastIndex = 0; 4431 return pattern.test(name); 4432 } 4433 return false; 4434} 4435function onActivated(hook, target) { 4436 registerKeepAliveHook(hook, "a", target); 4437} 4438function onDeactivated(hook, target) { 4439 registerKeepAliveHook(hook, "da", target); 4440} 4441function registerKeepAliveHook(hook, type, target = currentInstance) { 4442 const wrappedHook = hook.__wdc || (hook.__wdc = () => {
vendor: 4,661 bytes, lines 4443-4599
4443 let current = target; 4444 while (current) { 4445 if (current.isDeactivated) { 4446 return; 4447 } 4448 current = current.parent; 4449 } 4450 return hook(); 4451 }); 4452 injectHook(type, wrappedHook, target); 4453 if (target) { 4454 let current = target.parent; 4455 while (current && current.parent) { 4456 if (isKeepAlive(current.parent.vnode)) { 4457 injectToKeepAliveRoot(wrappedHook, type, target, current); 4458 } 4459 current = current.parent; 4460 } 4461 } 4462} 4463function injectToKeepAliveRoot(hook, type, target, keepAliveRoot) { 4464 const injected = injectHook( 4465 type, 4466 hook, 4467 keepAliveRoot, 4468 true 4469 /* prepend */ 4470 ); 4471 onUnmounted(() => { 4472 remove(keepAliveRoot[type], injected); 4473 }, target); 4474} 4475function resetShapeFlag(vnode) { 4476 vnode.shapeFlag &= -257; 4477 vnode.shapeFlag &= -513; 4478} 4479function getInnerChild(vnode) { 4480 return vnode.shapeFlag & 128 ? vnode.ssContent : vnode; 4481} 4482function injectHook(type, hook, target = currentInstance, prepend = false) { 4483 if (target) { 4484 const hooks = target[type] || (target[type] = []); 4485 const wrappedHook = hook.__weh || (hook.__weh = (...args) => { 4486 pauseTracking(); 4487 const reset = setCurrentInstance(target); 4488 const res = callWithAsyncErrorHandling(hook, target, type, args); 4489 reset(); 4490 resetTracking(); 4491 return res; 4492 }); 4493 if (prepend) { 4494 hooks.unshift(wrappedHook); 4495 } else { 4496 hooks.push(wrappedHook); 4497 } 4498 return wrappedHook; 4499 } 4500} 4501const createHook = (lifecycle) => (hook, target = currentInstance) => { 4502 if (!isInSSRComponentSetup || lifecycle === "sp") { 4503 injectHook(lifecycle, (...args) => hook(...args), target); 4504 } 4505}; 4506const onBeforeMount = createHook("bm"); 4507const onMounted = createHook("m"); 4508const onBeforeUpdate = createHook( 4509 "bu" 4510); 4511const onUpdated = createHook("u"); 4512const onBeforeUnmount = createHook( 4513 "bum" 4514); 4515const onUnmounted = createHook("um"); 4516const onServerPrefetch = createHook( 4517 "sp" 4518); 4519const onRenderTriggered = createHook("rtg"); 4520const onRenderTracked = createHook("rtc"); 4521function onErrorCaptured(hook, target = currentInstance) { 4522 injectHook("ec", hook, target); 4523} 4524const COMPONENTS = "components"; 4525const DIRECTIVES = "directives"; 4526function resolveComponent(name, maybeSelfReference) { 4527 return resolveAsset(COMPONENTS, name, true, maybeSelfReference) || name; 4528} 4529const NULL_DYNAMIC_COMPONENT = Symbol.for("v-ndc"); 4530function resolveDynamicComponent(component) { 4531 if (isString$1(component)) { 4532 return resolveAsset(COMPONENTS, component, false) || component; 4533 } else { 4534 return component || NULL_DYNAMIC_COMPONENT; 4535 } 4536} 4537function resolveDirective(name) { 4538 return resolveAsset(DIRECTIVES, name); 4539} 4540function resolveAsset(type, name, warnMissing = true, maybeSelfReference = false) { 4541 const instance = currentRenderingInstance || currentInstance; 4542 if (instance) { 4543 const Component = instance.type; 4544 if (type === COMPONENTS) { 4545 const selfName = getComponentName( 4546 Component, 4547 false 4548 ); 4549 if (selfName && (selfName === name || selfName === camelize(name) || selfName === capitalize$1(camelize(name)))) { 4550 return Component; 4551 } 4552 } 4553 const res = ( 4554 // local registration 4555 // check instance[type] first which is resolved for options API 4556 resolve(instance[type] || Component[type], name) || // global registration 4557 resolve(instance.appContext[type], name) 4558 ); 4559 if (!res && maybeSelfReference) { 4560 return Component; 4561 } 4562 return res; 4563 } 4564} 4565function resolve(registry, name) { 4566 return registry && (registry[name] || registry[camelize(name)] || registry[capitalize$1(camelize(name))]); 4567} 4568function renderList(source, renderItem, cache, index2) { 4569 let ret; 4570 const cached = cache && cache[index2]; 4571 const sourceIsArray = isArray$4(source); 4572 if (sourceIsArray || isString$1(source)) { 4573 const sourceIsReactiveArray = sourceIsArray && isReactive(source); 4574 let needsWrap = false; 4575 if (sourceIsReactiveArray) { 4576 needsWrap = !isShallow(source); 4577 source = shallowReadArray(source); 4578 } 4579 ret = new Array(source.length); 4580 for (let i = 0, l3 = source.length; i < l3; i++) { 4581 ret[i] = renderItem( 4582 needsWrap ? toReactive(source[i]) : source[i], 4583 i, 4584 void 0, 4585 cached && cached[i] 4586 ); 4587 } 4588 } else if (typeof source === "number") { 4589 ret = new Array(source); 4590 for (let i = 0; i < source; i++) { 4591 ret[i] = renderItem(i + 1, i, void 0, cached && cached[i]); 4592 } 4593 } else if (isObject$4(source)) { 4594 if (source[Symbol.iterator]) { 4595 ret = Array.from( 4596 source, 4597 (item, i) => renderItem(item, i, void 0, cached && cached[i]) 4598 ); 4599 } else {
4600 const keys2 = Object.keys(source); 4601 ret = new Array(keys2.length); 4602 for (let i = 0, l3 = keys2.length; i < l3; i++) { 4603 const key = keys2[i]; 4604 ret[i] = renderItem(source[key], key, i, cached && cached[i]); 4605 } 4606 } 4607 } else { 4608 ret = []; 4609 } 4610 if (cache) { 4611 cache[index2] = ret; 4612 } 4613 return ret; 4614} 4615function createSlots(slots, dynamicSlots) { 4616 for (let i = 0; i < dynamicSlots.length; i++) { 4617 const slot = dynamicSlots[i]; 4618 if (isArray$4(slot)) { 4619 for (let j = 0; j < slot.length; j++) { 4620 slots[slot[j].name] = slot[j].fn; 4621 } 4622 } else if (slot) { 4623 slots[slot.name] = slot.key ? (...args) => { 4624 const res = slot.fn(...args); 4625 if (res) res.key = slot.key; 4626 return res; 4627 } : slot.fn; 4628 } 4629 } 4630 return slots; 4631} 4632function renderSlot(slots, name, props = {}, fallback, noSlotted) { 4633 if (currentRenderingInstance.ce || currentRenderingInstance.parent && isAsyncWrapper(currentRenderingInstance.parent) && currentRenderingInstance.parent.ce) { 4634 if (name !== "default") props.name = name; 4635 return openBlock(), createBlock( 4636 Fragment, 4637 null, 4638 [createVNode("slot", props, fallback && fallback())], 4639 64 4640 ); 4641 } 4642 let slot = slots[name]; 4643 if (slot && slot._c) { 4644 slot._d = false; 4645 } 4646 openBlock(); 4647 const validSlotContent = slot && ensureValidVNode(slot(props)); 4648 const slotKey = props.key || // slot content array of a dynamic conditional slot may have a branch 4649 // key attached in the `createSlots` helper, respect that 4650 validSlotContent && validSlotContent.key; 4651 const rendered = createBlock( 4652 Fragment, 4653 { 4654 key: (slotKey && !isSymbol$1(slotKey) ? slotKey : `_${name}`) + // #7256 force differentiate fallback content from actual content 4655 (!validSlotContent && fallback ? "_fb" : "") 4656 }, 4657 validSlotContent || (fallback ? fallback() : []), 4658 validSlotContent && slots._ === 1 ? 64 : -2 4659 ); 4660 if (!noSlotted && rendered.scopeId) { 4661 rendered.slotScopeIds = [rendered.scopeId + "-s"]; 4662 } 4663 if (slot && slot._c) { 4664 slot._d = true; 4665 } 4666 return rendered; 4667} 4668function ensureValidVNode(vnodes) { 4669 return vnodes.some((child) => { 4670 if (!isVNode(child)) return true; 4671 if (child.type === Comment) return false; 4672 if (child.type === Fragment && !ensureValidVNode(child.children)) 4673 return false; 4674 return true; 4675 }) ? vnodes : null; 4676} 4677function toHandlers(obj, preserveCaseIfNecessary) { 4678 const ret = {}; 4679 for (const key in obj) { 4680 ret[preserveCaseIfNecessary && /[A-Z]/.test(key) ? `on:${key}` : toHandlerKey(key)] = obj[key]; 4681 } 4682 return ret; 4683} 4684const getPublicInstance = (i) => { 4685 if (!i) return null; 4686 if (isStatefulComponent(i)) return getComponentPublicInstance(i); 4687 return getPublicInstance(i.parent); 4688}; 4689const publicPropertiesMap = ( 4690 // Move PURE marker to new line to workaround compiler discarding it 4691 // due to type annotation 4692 /* @__PURE__ */ extend$1(/* @__PURE__ */ Object.create(null), { 4693 $: (i) => i, 4694 $el: (i) => i.vnode.el, 4695 $data: (i) => i.data, 4696 $props: (i) => i.props, 4697 $attrs: (i) => i.attrs, 4698 $slots: (i) => i.slots, 4699 $refs: (i) => i.refs, 4700 $parent: (i) => getPublicInstance(i.parent), 4701 $root: (i) => getPublicInstance(i.root), 4702 $host: (i) => i.ce, 4703 $emit: (i) => i.emit, 4704 $options: (i) => resolveMergedOptions(i), 4705 $forceUpdate: (i) => i.f || (i.f = () => { 4706 queueJob(i.update); 4707 }), 4708 $nextTick: (i) => i.n || (i.n = nextTick.bind(i.proxy)), 4709 $watch: (i) => instanceWatch.bind(i) 4710 }) 4711); 4712const hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScriptSetup && hasOwn(state, key); 4713const PublicInstanceProxyHandlers = { 4714 get({ _: instance }, key) { 4715 if (key === "__v_skip") { 4716 return true; 4717 } 4718 const { ctx, setupState, data, props, accessCache, type, appContext } = instance; 4719 let normalizedProps; 4720 if (key[0] !== "$") { 4721 const n = accessCache[key]; 4722 if (n !== void 0) { 4723 switch (n) { 4724 case 1: 4725 return setupState[key]; 4726 case 2: 4727 return data[key]; 4728 case 4: 4729 return ctx[key]; 4730 case 3: 4731 return props[key]; 4732 } 4733 } else if (hasSetupBinding(setupState, key)) { 4734 accessCache[key] = 1; 4735 return setupState[key]; 4736 } else if (data !== EMPTY_OBJ && hasOwn(data, key)) { 4737 accessCache[key] = 2; 4738 return data[key]; 4739 } else if ( 4740 // only cache other properties when instance has declared (thus stable) 4741 // props 4742 (normalizedProps = instance.propsOptions[0]) && hasOwn(normalizedProps, key) 4743 ) { 4744 accessCache[key] = 3; 4745 return props[key]; 4746 } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) { 4747 accessCache[key] = 4; 4748 return ctx[key]; 4749 } else if (shouldCacheAccess) { 4750 accessCache[key] = 0; 4751 } 4752 } 4753 const publicGetter = publicPropertiesMap[key];
4754 let cssModule, globalProperties; 4755 if (publicGetter) { 4756 if (key === "$attrs") { 4757 track(instance.attrs, "get", ""); 4758 } 4759 return publicGetter(instance); 4760 } else if ( 4761 // css module (injected by vue-loader) 4762 (cssModule = type.__cssModules) && (cssModule = cssModule[key]) 4763 ) { 4764 return cssModule; 4765 } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) { 4766 accessCache[key] = 4; 4767 return ctx[key]; 4768 } else if ( 4769 // global properties 4770 globalProperties = appContext.config.globalProperties, hasOwn(globalProperties, key) 4771 ) { 4772 { 4773 return globalProperties[key]; 4774 } 4775 } else ; 4776 }, 4777 set({ _: instance }, key, value) { 4778 const { data, setupState, ctx } = instance; 4779 if (hasSetupBinding(setupState, key)) { 4780 setupState[key] = value; 4781 return true; 4782 } else if (data !== EMPTY_OBJ && hasOwn(data, key)) { 4783 data[key] = value; 4784 return true; 4785 } else if (hasOwn(instance.props, key)) { 4786 return false; 4787 } 4788 if (key[0] === "$" && key.slice(1) in instance) { 4789 return false; 4790 } else { 4791 { 4792 ctx[key] = value; 4793 } 4794 } 4795 return true; 4796 }, 4797 has({ 4798 _: { data, setupState, accessCache, ctx, appContext, propsOptions } 4799 }, key) { 4800 let normalizedProps; 4801 return !!accessCache[key] || data !== EMPTY_OBJ && hasOwn(data, key) || hasSetupBinding(setupState, key) || (normalizedProps = propsOptions[0]) && hasOwn(normalizedProps, key) || hasOwn(ctx, key) || hasOwn(publicPropertiesMap, key) || hasOwn(appContext.config.globalProperties, key); 4802 }, 4803 defineProperty(target, key, descriptor) { 4804 if (descriptor.get != null) { 4805 target._.accessCache[key] = 0; 4806 } else if (hasOwn(descriptor, "value")) { 4807 this.set(target, key, descriptor.value, null); 4808 } 4809 return Reflect.defineProperty(target, key, descriptor); 4810 } 4811}; 4812const RuntimeCompiledPublicInstanceProxyHandlers = /* @__PURE__ */ extend$1({}, PublicInstanceProxyHandlers, { 4813 get(target, key) { 4814 if (key === Symbol.unscopables) { 4815 return; 4816 } 4817 return PublicInstanceProxyHandlers.get(target, key, target); 4818 }, 4819 has(_, key) { 4820 const has = key[0] !== "_" && !isGloballyAllowed(key); 4821 return has; 4822 } 4823}); 4824function defineProps() { 4825 return null; 4826} 4827function defineEmits() { 4828 return null; 4829} 4830function defineExpose(exposed) { 4831} 4832function defineOptions(options) { 4833} 4834function defineSlots() { 4835 return null; 4836} 4837function defineModel() { 4838} 4839function withDefaults(props, defaults2) { 4840 return null; 4841} 4842function useSlots() { 4843 return getContext$1().slots; 4844} 4845function useAttrs() { 4846 return getContext$1().attrs; 4847} 4848function getContext$1() { 4849 const i = getCurrentInstance(); 4850 return i.setupContext || (i.setupContext = createSetupContext(i)); 4851} 4852function normalizePropsOrEmits(props) { 4853 return isArray$4(props) ? props.reduce( 4854 (normalized, p2) => (normalized[p2] = null, normalized), 4855 {} 4856 ) : props; 4857} 4858function mergeDefaults(raw, defaults2) { 4859 const props = normalizePropsOrEmits(raw); 4860 for (const key in defaults2) { 4861 if (key.startsWith("__skip")) continue; 4862 let opt = props[key]; 4863 if (opt) { 4864 if (isArray$4(opt) || isFunction$4(opt)) { 4865 opt = props[key] = { type: opt, default: defaults2[key] }; 4866 } else { 4867 opt.default = defaults2[key]; 4868 } 4869 } else if (opt === null) { 4870 opt = props[key] = { default: defaults2[key] }; 4871 } else ; 4872 if (opt && defaults2[`__skip_${key}`]) { 4873 opt.skipFactory = true; 4874 } 4875 } 4876 return props; 4877} 4878function mergeModels(a, b2) { 4879 if (!a || !b2) return a || b2; 4880 if (isArray$4(a) && isArray$4(b2)) return a.concat(b2); 4881 return extend$1({}, normalizePropsOrEmits(a), normalizePropsOrEmits(b2)); 4882} 4883function createPropsRestProxy(props, excludedKeys) { 4884 const ret = {}; 4885 for (const key in props) { 4886 if (!excludedKeys.includes(key)) { 4887 Object.defineProperty(ret, key, { 4888 enumerable: true, 4889 get: () => props[key] 4890 }); 4891 } 4892 } 4893 return ret; 4894} 4895function withAsyncContext(getAwaitable) { 4896 const ctx = getCurrentInstance(); 4897 let awaitable = getAwaitable(); 4898 unsetCurrentInstance();
vendor: 6,155 bytes, lines 4899-5116
4899 if (isPromise$1(awaitable)) { 4900 awaitable = awaitable.catch((e) => { 4901 setCurrentInstance(ctx); 4902 throw e; 4903 }); 4904 } 4905 return [awaitable, () => setCurrentInstance(ctx)]; 4906} 4907let shouldCacheAccess = true; 4908function applyOptions(instance) { 4909 const options = resolveMergedOptions(instance); 4910 const publicThis = instance.proxy; 4911 const ctx = instance.ctx; 4912 shouldCacheAccess = false; 4913 if (options.beforeCreate) { 4914 callHook$1(options.beforeCreate, instance, "bc"); 4915 } 4916 const { 4917 // state 4918 data: dataOptions, 4919 computed: computedOptions, 4920 methods, 4921 watch: watchOptions, 4922 provide: provideOptions, 4923 inject: injectOptions, 4924 // lifecycle 4925 created, 4926 beforeMount, 4927 mounted, 4928 beforeUpdate, 4929 updated, 4930 activated, 4931 deactivated, 4932 beforeDestroy, 4933 beforeUnmount, 4934 destroyed, 4935 unmounted, 4936 render: render4, 4937 renderTracked, 4938 renderTriggered, 4939 errorCaptured, 4940 serverPrefetch, 4941 // public API 4942 expose, 4943 inheritAttrs, 4944 // assets 4945 components, 4946 directives, 4947 filters 4948 } = options; 4949 const checkDuplicateProperties = null; 4950 if (injectOptions) { 4951 resolveInjections(injectOptions, ctx, checkDuplicateProperties); 4952 } 4953 if (methods) { 4954 for (const key in methods) { 4955 const methodHandler = methods[key]; 4956 if (isFunction$4(methodHandler)) { 4957 { 4958 ctx[key] = methodHandler.bind(publicThis); 4959 } 4960 } 4961 } 4962 } 4963 if (dataOptions) { 4964 const data = dataOptions.call(publicThis, publicThis); 4965 if (!isObject$4(data)) ; 4966 else { 4967 instance.data = reactive(data); 4968 } 4969 } 4970 shouldCacheAccess = true; 4971 if (computedOptions) { 4972 for (const key in computedOptions) { 4973 const opt = computedOptions[key]; 4974 const get2 = isFunction$4(opt) ? opt.bind(publicThis, publicThis) : isFunction$4(opt.get) ? opt.get.bind(publicThis, publicThis) : NOOP; 4975 const set2 = !isFunction$4(opt) && isFunction$4(opt.set) ? opt.set.bind(publicThis) : NOOP; 4976 const c2 = computed({ 4977 get: get2, 4978 set: set2 4979 }); 4980 Object.defineProperty(ctx, key, { 4981 enumerable: true, 4982 configurable: true, 4983 get: () => c2.value, 4984 set: (v2) => c2.value = v2 4985 }); 4986 } 4987 } 4988 if (watchOptions) { 4989 for (const key in watchOptions) { 4990 createWatcher(watchOptions[key], ctx, publicThis, key); 4991 } 4992 } 4993 if (provideOptions) { 4994 const provides = isFunction$4(provideOptions) ? provideOptions.call(publicThis) : provideOptions; 4995 Reflect.ownKeys(provides).forEach((key) => { 4996 provide(key, provides[key]); 4997 }); 4998 } 4999 if (created) { 5000 callHook$1(created, instance, "c"); 5001 } 5002 function registerLifecycleHook(register2, hook) { 5003 if (isArray$4(hook)) { 5004 hook.forEach((_hook) => register2(_hook.bind(publicThis))); 5005 } else if (hook) { 5006 register2(hook.bind(publicThis)); 5007 } 5008 } 5009 registerLifecycleHook(onBeforeMount, beforeMount); 5010 registerLifecycleHook(onMounted, mounted); 5011 registerLifecycleHook(onBeforeUpdate, beforeUpdate); 5012 registerLifecycleHook(onUpdated, updated); 5013 registerLifecycleHook(onActivated, activated); 5014 registerLifecycleHook(onDeactivated, deactivated); 5015 registerLifecycleHook(onErrorCaptured, errorCaptured); 5016 registerLifecycleHook(onRenderTracked, renderTracked); 5017 registerLifecycleHook(onRenderTriggered, renderTriggered); 5018 registerLifecycleHook(onBeforeUnmount, beforeUnmount); 5019 registerLifecycleHook(onUnmounted, unmounted); 5020 registerLifecycleHook(onServerPrefetch, serverPrefetch); 5021 if (isArray$4(expose)) { 5022 if (expose.length) { 5023 const exposed = instance.exposed || (instance.exposed = {}); 5024 expose.forEach((key) => { 5025 Object.defineProperty(exposed, key, { 5026 get: () => publicThis[key], 5027 set: (val) => publicThis[key] = val 5028 }); 5029 }); 5030 } else if (!instance.exposed) { 5031 instance.exposed = {}; 5032 } 5033 } 5034 if (render4 && instance.render === NOOP) { 5035 instance.render = render4; 5036 } 5037 if (inheritAttrs != null) { 5038 instance.inheritAttrs = inheritAttrs; 5039 } 5040 if (components) instance.components = components; 5041 if (directives) instance.directives = directives; 5042 if (serverPrefetch) { 5043 markAsyncBoundary(instance); 5044 } 5045} 5046function resolveInjections(injectOptions, ctx, checkDuplicateProperties = NOOP) { 5047 if (isArray$4(injectOptions)) { 5048 injectOptions = normalizeInject(injectOptions); 5049 } 5050 for (const key in injectOptions) { 5051 const opt = injectOptions[key]; 5052 let injected; 5053 if (isObject$4(opt)) { 5054 if ("default" in opt) { 5055 injected = inject( 5056 opt.from || key, 5057 opt.default, 5058 true 5059 ); 5060 } else { 5061 injected = inject(opt.from || key); 5062 } 5063 } else { 5064 injected = inject(opt); 5065 } 5066 if (isRef(injected)) { 5067 Object.defineProperty(ctx, key, { 5068 enumerable: true, 5069 configurable: true, 5070 get: () => injected.value, 5071 set: (v2) => injected.value = v2 5072 }); 5073 } else { 5074 ctx[key] = injected; 5075 } 5076 } 5077} 5078function callHook$1(hook, instance, type) { 5079 callWithAsyncErrorHandling( 5080 isArray$4(hook) ? hook.map((h2) => h2.bind(instance.proxy)) : hook.bind(instance.proxy), 5081 instance, 5082 type 5083 ); 5084} 5085function createWatcher(raw, ctx, publicThis, key) { 5086 let getter = key.includes(".") ? createPathGetter(publicThis, key) : () => publicThis[key]; 5087 if (isString$1(raw)) { 5088 const handler = ctx[raw]; 5089 if (isFunction$4(handler)) { 5090 { 5091 watch(getter, handler); 5092 } 5093 } 5094 } else if (isFunction$4(raw)) { 5095 { 5096 watch(getter, raw.bind(publicThis)); 5097 } 5098 } else if (isObject$4(raw)) { 5099 if (isArray$4(raw)) { 5100 raw.forEach((r2) => createWatcher(r2, ctx, publicThis, key)); 5101 } else { 5102 const handler = isFunction$4(raw.handler) ? raw.handler.bind(publicThis) : ctx[raw.handler]; 5103 if (isFunction$4(handler)) { 5104 watch(getter, handler, raw); 5105 } 5106 } 5107 } else ; 5108} 5109function resolveMergedOptions(instance) { 5110 const base = instance.type; 5111 const { mixins, extends: extendsOptions } = base; 5112 const { 5113 mixins: globalMixins, 5114 optionsCache: cache, 5115 config: { optionMergeStrategies } 5116 } = instance.appContext;
vendor: 2,830 bytes, lines 5117-5227
5117 const cached = cache.get(base); 5118 let resolved; 5119 if (cached) { 5120 resolved = cached; 5121 } else if (!globalMixins.length && !mixins && !extendsOptions) { 5122 { 5123 resolved = base; 5124 } 5125 } else { 5126 resolved = {}; 5127 if (globalMixins.length) { 5128 globalMixins.forEach( 5129 (m) => mergeOptions$1(resolved, m, optionMergeStrategies, true) 5130 ); 5131 } 5132 mergeOptions$1(resolved, base, optionMergeStrategies); 5133 } 5134 if (isObject$4(base)) { 5135 cache.set(base, resolved); 5136 } 5137 return resolved; 5138} 5139function mergeOptions$1(to, from, strats, asMixin = false) { 5140 const { mixins, extends: extendsOptions } = from; 5141 if (extendsOptions) { 5142 mergeOptions$1(to, extendsOptions, strats, true); 5143 } 5144 if (mixins) { 5145 mixins.forEach( 5146 (m) => mergeOptions$1(to, m, strats, true) 5147 ); 5148 } 5149 for (const key in from) { 5150 if (asMixin && key === "expose") ; 5151 else { 5152 const strat = internalOptionMergeStrats[key] || strats && strats[key]; 5153 to[key] = strat ? strat(to[key], from[key]) : from[key]; 5154 } 5155 } 5156 return to; 5157} 5158const internalOptionMergeStrats = { 5159 data: mergeDataFn, 5160 props: mergeEmitsOrPropsOptions, 5161 emits: mergeEmitsOrPropsOptions, 5162 // objects 5163 methods: mergeObjectOptions, 5164 computed: mergeObjectOptions, 5165 // lifecycle 5166 beforeCreate: mergeAsArray, 5167 created: mergeAsArray, 5168 beforeMount: mergeAsArray, 5169 mounted: mergeAsArray, 5170 beforeUpdate: mergeAsArray, 5171 updated: mergeAsArray, 5172 beforeDestroy: mergeAsArray, 5173 beforeUnmount: mergeAsArray, 5174 destroyed: mergeAsArray, 5175 unmounted: mergeAsArray, 5176 activated: mergeAsArray, 5177 deactivated: mergeAsArray, 5178 errorCaptured: mergeAsArray, 5179 serverPrefetch: mergeAsArray, 5180 // assets 5181 components: mergeObjectOptions, 5182 directives: mergeObjectOptions, 5183 // watch 5184 watch: mergeWatchOptions, 5185 // provide / inject 5186 provide: mergeDataFn, 5187 inject: mergeInject 5188}; 5189function mergeDataFn(to, from) { 5190 if (!from) { 5191 return to; 5192 } 5193 if (!to) { 5194 return from; 5195 } 5196 return function mergedDataFn() { 5197 return extend$1( 5198 isFunction$4(to) ? to.call(this, this) : to, 5199 isFunction$4(from) ? from.call(this, this) : from 5200 ); 5201 }; 5202} 5203function mergeInject(to, from) { 5204 return mergeObjectOptions(normalizeInject(to), normalizeInject(from)); 5205} 5206function normalizeInject(raw) { 5207 if (isArray$4(raw)) { 5208 const res = {}; 5209 for (let i = 0; i < raw.length; i++) { 5210 res[raw[i]] = raw[i]; 5211 } 5212 return res; 5213 } 5214 return raw; 5215} 5216function mergeAsArray(to, from) { 5217 return to ? [...new Set([].concat(to, from))] : from; 5218} 5219function mergeObjectOptions(to, from) { 5220 return to ? extend$1(/* @__PURE__ */ Object.create(null), to, from) : from; 5221} 5222function mergeEmitsOrPropsOptions(to, from) { 5223 if (to) { 5224 if (isArray$4(to) && isArray$4(from)) { 5225 return [.../* @__PURE__ */ new Set([...to, ...from])]; 5226 } 5227 return extend$1(
vendor: 6,157 bytes, lines 5228-5434
5228 /* @__PURE__ */ Object.create(null), 5229 normalizePropsOrEmits(to), 5230 normalizePropsOrEmits(from != null ? from : {}) 5231 ); 5232 } else { 5233 return from; 5234 } 5235} 5236function mergeWatchOptions(to, from) { 5237 if (!to) return from; 5238 if (!from) return to; 5239 const merged = extend$1(/* @__PURE__ */ Object.create(null), to); 5240 for (const key in from) { 5241 merged[key] = mergeAsArray(to[key], from[key]); 5242 } 5243 return merged; 5244} 5245function createAppContext() { 5246 return { 5247 app: null, 5248 config: { 5249 isNativeTag: NO, 5250 performance: false, 5251 globalProperties: {}, 5252 optionMergeStrategies: {}, 5253 errorHandler: void 0, 5254 warnHandler: void 0, 5255 compilerOptions: {} 5256 }, 5257 mixins: [], 5258 components: {}, 5259 directives: {}, 5260 provides: /* @__PURE__ */ Object.create(null), 5261 optionsCache: /* @__PURE__ */ new WeakMap(), 5262 propsCache: /* @__PURE__ */ new WeakMap(), 5263 emitsCache: /* @__PURE__ */ new WeakMap() 5264 }; 5265} 5266let uid$1 = 0; 5267function createAppAPI(render4, hydrate2) { 5268 return function createApp2(rootComponent, rootProps = null) { 5269 if (!isFunction$4(rootComponent)) { 5270 rootComponent = extend$1({}, rootComponent); 5271 } 5272 if (rootProps != null && !isObject$4(rootProps)) { 5273 rootProps = null; 5274 } 5275 const context = createAppContext(); 5276 const installedPlugins = /* @__PURE__ */ new WeakSet(); 5277 const pluginCleanupFns = []; 5278 let isMounted = false; 5279 const app = context.app = { 5280 _uid: uid$1++, 5281 _component: rootComponent, 5282 _props: rootProps, 5283 _container: null, 5284 _context: context, 5285 _instance: null, 5286 version, 5287 get config() { 5288 return context.config; 5289 }, 5290 set config(v2) { 5291 }, 5292 use(plugin, ...options) { 5293 if (installedPlugins.has(plugin)) ; 5294 else if (plugin && isFunction$4(plugin.install)) { 5295 installedPlugins.add(plugin); 5296 plugin.install(app, ...options); 5297 } else if (isFunction$4(plugin)) { 5298 installedPlugins.add(plugin); 5299 plugin(app, ...options); 5300 } else ; 5301 return app; 5302 }, 5303 mixin(mixin) { 5304 { 5305 if (!context.mixins.includes(mixin)) { 5306 context.mixins.push(mixin); 5307 } 5308 } 5309 return app; 5310 }, 5311 component(name, component) { 5312 if (!component) { 5313 return context.components[name]; 5314 } 5315 context.components[name] = component; 5316 return app; 5317 }, 5318 directive(name, directive) { 5319 if (!directive) { 5320 return context.directives[name]; 5321 } 5322 context.directives[name] = directive; 5323 return app; 5324 }, 5325 mount(rootContainer, isHydrate, namespace) { 5326 if (!isMounted) { 5327 const vnode = app._ceVNode || createVNode(rootComponent, rootProps); 5328 vnode.appContext = context; 5329 if (namespace === true) { 5330 namespace = "svg"; 5331 } else if (namespace === false) { 5332 namespace = void 0; 5333 } 5334 if (isHydrate && hydrate2) { 5335 hydrate2(vnode, rootContainer); 5336 } else { 5337 render4(vnode, rootContainer, namespace); 5338 } 5339 isMounted = true; 5340 app._container = rootContainer; 5341 rootContainer.__vue_app__ = app; 5342 return getComponentPublicInstance(vnode.component); 5343 } 5344 }, 5345 onUnmount(cleanupFn) { 5346 pluginCleanupFns.push(cleanupFn); 5347 }, 5348 unmount() { 5349 if (isMounted) { 5350 callWithAsyncErrorHandling( 5351 pluginCleanupFns, 5352 app._instance, 5353 16 5354 ); 5355 render4(null, app._container); 5356 delete app._container.__vue_app__; 5357 } 5358 }, 5359 provide(key, value) { 5360 context.provides[key] = value; 5361 return app; 5362 }, 5363 runWithContext(fn) { 5364 const lastApp = currentApp; 5365 currentApp = app; 5366 try { 5367 return fn(); 5368 } finally { 5369 currentApp = lastApp; 5370 } 5371 } 5372 }; 5373 return app; 5374 }; 5375} 5376let currentApp = null; 5377function provide(key, value) { 5378 if (!currentInstance) ; 5379 else { 5380 let provides = currentInstance.provides; 5381 const parentProvides = currentInstance.parent && currentInstance.parent.provides; 5382 if (parentProvides === provides) { 5383 provides = currentInstance.provides = Object.create(parentProvides); 5384 } 5385 provides[key] = value; 5386 } 5387} 5388function inject(key, defaultValue, treatDefaultAsFactory = false) { 5389 const instance = currentInstance || currentRenderingInstance; 5390 if (instance || currentApp) { 5391 const provides = currentApp ? currentApp._context.provides : instance ? instance.parent == null ? instance.vnode.appContext && instance.vnode.appContext.provides : instance.parent.provides : void 0; 5392 if (provides && key in provides) { 5393 return provides[key]; 5394 } else if (arguments.length > 1) { 5395 return treatDefaultAsFactory && isFunction$4(defaultValue) ? defaultValue.call(instance && instance.proxy) : defaultValue; 5396 } else ; 5397 } 5398} 5399function hasInjectionContext() { 5400 return !!(currentInstance || currentRenderingInstance || currentApp); 5401} 5402const internalObjectProto = {}; 5403const createInternalObject = () => Object.create(internalObjectProto); 5404const isInternalObject = (obj) => Object.getPrototypeOf(obj) === internalObjectProto; 5405function initProps(instance, rawProps, isStateful, isSSR = false) { 5406 const props = {}; 5407 const attrs = createInternalObject(); 5408 instance.propsDefaults = /* @__PURE__ */ Object.create(null); 5409 setFullProps(instance, rawProps, props, attrs); 5410 for (const key in instance.propsOptions[0]) { 5411 if (!(key in props)) { 5412 props[key] = void 0; 5413 } 5414 } 5415 if (isStateful) { 5416 instance.props = isSSR ? props : shallowReactive(props); 5417 } else { 5418 if (!instance.type.props) { 5419 instance.props = attrs; 5420 } else { 5421 instance.props = props; 5422 } 5423 } 5424 instance.attrs = attrs; 5425} 5426function updateProps(instance, rawProps, rawPrevProps, optimized) { 5427 const { 5428 props, 5429 attrs, 5430 vnode: { patchFlag } 5431 } = instance; 5432 const rawCurrentProps = toRaw(props); 5433 const [options] = instance.propsOptions; 5434 let hasAttrsChanged = false;
vendor: 4,450 bytes, lines 5435-5587
5435 if ( 5436 // always force full diff in dev 5437 // - #1942 if hmr is enabled with sfc component 5438 // - vite#872 non-sfc component used by sfc component 5439 (optimized || patchFlag > 0) && !(patchFlag & 16) 5440 ) { 5441 if (patchFlag & 8) { 5442 const propsToUpdate = instance.vnode.dynamicProps; 5443 for (let i = 0; i < propsToUpdate.length; i++) { 5444 let key = propsToUpdate[i]; 5445 if (isEmitListener(instance.emitsOptions, key)) { 5446 continue; 5447 } 5448 const value = rawProps[key]; 5449 if (options) { 5450 if (hasOwn(attrs, key)) { 5451 if (value !== attrs[key]) { 5452 attrs[key] = value; 5453 hasAttrsChanged = true; 5454 } 5455 } else { 5456 const camelizedKey = camelize(key); 5457 props[camelizedKey] = resolvePropValue( 5458 options, 5459 rawCurrentProps, 5460 camelizedKey, 5461 value, 5462 instance, 5463 false 5464 ); 5465 } 5466 } else { 5467 if (value !== attrs[key]) { 5468 attrs[key] = value; 5469 hasAttrsChanged = true; 5470 } 5471 } 5472 } 5473 } 5474 } else { 5475 if (setFullProps(instance, rawProps, props, attrs)) { 5476 hasAttrsChanged = true; 5477 } 5478 let kebabKey; 5479 for (const key in rawCurrentProps) { 5480 if (!rawProps || // for camelCase 5481 !hasOwn(rawProps, key) && // it's possible the original props was passed in as kebab-case 5482 // and converted to camelCase (#955) 5483 ((kebabKey = hyphenate(key)) === key || !hasOwn(rawProps, kebabKey))) { 5484 if (options) { 5485 if (rawPrevProps && // for camelCase 5486 (rawPrevProps[key] !== void 0 || // for kebab-case 5487 rawPrevProps[kebabKey] !== void 0)) { 5488 props[key] = resolvePropValue( 5489 options, 5490 rawCurrentProps, 5491 key, 5492 void 0, 5493 instance, 5494 true 5495 ); 5496 } 5497 } else { 5498 delete props[key]; 5499 } 5500 } 5501 } 5502 if (attrs !== rawCurrentProps) { 5503 for (const key in attrs) { 5504 if (!rawProps || !hasOwn(rawProps, key) && true) { 5505 delete attrs[key]; 5506 hasAttrsChanged = true; 5507 } 5508 } 5509 } 5510 } 5511 if (hasAttrsChanged) { 5512 trigger(instance.attrs, "set", ""); 5513 } 5514} 5515function setFullProps(instance, rawProps, props, attrs) { 5516 const [options, needCastKeys] = instance.propsOptions; 5517 let hasAttrsChanged = false; 5518 let rawCastValues; 5519 if (rawProps) { 5520 for (let key in rawProps) { 5521 if (isReservedProp(key)) { 5522 continue; 5523 } 5524 const value = rawProps[key]; 5525 let camelKey; 5526 if (options && hasOwn(options, camelKey = camelize(key))) { 5527 if (!needCastKeys || !needCastKeys.includes(camelKey)) { 5528 props[camelKey] = value; 5529 } else { 5530 (rawCastValues || (rawCastValues = {}))[camelKey] = value; 5531 } 5532 } else if (!isEmitListener(instance.emitsOptions, key)) { 5533 if (!(key in attrs) || value !== attrs[key]) { 5534 attrs[key] = value; 5535 hasAttrsChanged = true; 5536 } 5537 } 5538 } 5539 } 5540 if (needCastKeys) { 5541 const rawCurrentProps = toRaw(props); 5542 const castValues = rawCastValues || EMPTY_OBJ; 5543 for (let i = 0; i < needCastKeys.length; i++) { 5544 const key = needCastKeys[i]; 5545 props[key] = resolvePropValue( 5546 options, 5547 rawCurrentProps, 5548 key, 5549 castValues[key], 5550 instance, 5551 !hasOwn(castValues, key) 5552 ); 5553 } 5554 } 5555 return hasAttrsChanged; 5556} 5557function resolvePropValue(options, props, key, value, instance, isAbsent) { 5558 const opt = options[key]; 5559 if (opt != null) { 5560 const hasDefault = hasOwn(opt, "default"); 5561 if (hasDefault && value === void 0) { 5562 const defaultValue = opt.default; 5563 if (opt.type !== Function && !opt.skipFactory && isFunction$4(defaultValue)) { 5564 const { propsDefaults } = instance; 5565 if (key in propsDefaults) { 5566 value = propsDefaults[key]; 5567 } else { 5568 const reset = setCurrentInstance(instance); 5569 value = propsDefaults[key] = defaultValue.call( 5570 null, 5571 props 5572 ); 5573 reset(); 5574 } 5575 } else { 5576 value = defaultValue; 5577 } 5578 if (instance.ce) { 5579 instance.ce._setProp(key, value); 5580 } 5581 } 5582 if (opt[ 5583 0 5584 /* shouldCast */ 5585 ]) { 5586 if (isAbsent && !hasDefault) { 5587 value = false;
vendor: 15,398 bytes, lines 5588-6123
5588 } else if (opt[ 5589 1 5590 /* shouldCastTrue */ 5591 ] && (value === "" || value === hyphenate(key))) { 5592 value = true; 5593 } 5594 } 5595 } 5596 return value; 5597} 5598const mixinPropsCache = /* @__PURE__ */ new WeakMap(); 5599function normalizePropsOptions(comp, appContext, asMixin = false) { 5600 const cache = asMixin ? mixinPropsCache : appContext.propsCache; 5601 const cached = cache.get(comp); 5602 if (cached) { 5603 return cached; 5604 } 5605 const raw = comp.props; 5606 const normalized = {}; 5607 const needCastKeys = []; 5608 let hasExtends = false; 5609 if (!isFunction$4(comp)) { 5610 const extendProps = (raw2) => { 5611 hasExtends = true; 5612 const [props, keys2] = normalizePropsOptions(raw2, appContext, true); 5613 extend$1(normalized, props); 5614 if (keys2) needCastKeys.push(...keys2); 5615 }; 5616 if (!asMixin && appContext.mixins.length) { 5617 appContext.mixins.forEach(extendProps); 5618 } 5619 if (comp.extends) { 5620 extendProps(comp.extends); 5621 } 5622 if (comp.mixins) { 5623 comp.mixins.forEach(extendProps); 5624 } 5625 } 5626 if (!raw && !hasExtends) { 5627 if (isObject$4(comp)) { 5628 cache.set(comp, EMPTY_ARR); 5629 } 5630 return EMPTY_ARR; 5631 } 5632 if (isArray$4(raw)) { 5633 for (let i = 0; i < raw.length; i++) { 5634 const normalizedKey = camelize(raw[i]); 5635 if (validatePropName(normalizedKey)) { 5636 normalized[normalizedKey] = EMPTY_OBJ; 5637 } 5638 } 5639 } else if (raw) { 5640 for (const key in raw) { 5641 const normalizedKey = camelize(key); 5642 if (validatePropName(normalizedKey)) { 5643 const opt = raw[key]; 5644 const prop = normalized[normalizedKey] = isArray$4(opt) || isFunction$4(opt) ? { type: opt } : extend$1({}, opt); 5645 const propType = prop.type; 5646 let shouldCast = false; 5647 let shouldCastTrue = true; 5648 if (isArray$4(propType)) { 5649 for (let index2 = 0; index2 < propType.length; ++index2) { 5650 const type = propType[index2]; 5651 const typeName = isFunction$4(type) && type.name; 5652 if (typeName === "Boolean") { 5653 shouldCast = true; 5654 break; 5655 } else if (typeName === "String") { 5656 shouldCastTrue = false; 5657 } 5658 } 5659 } else { 5660 shouldCast = isFunction$4(propType) && propType.name === "Boolean"; 5661 } 5662 prop[ 5663 0 5664 /* shouldCast */ 5665 ] = shouldCast; 5666 prop[ 5667 1 5668 /* shouldCastTrue */ 5669 ] = shouldCastTrue; 5670 if (shouldCast || hasOwn(prop, "default")) { 5671 needCastKeys.push(normalizedKey); 5672 } 5673 } 5674 } 5675 } 5676 const res = [normalized, needCastKeys]; 5677 if (isObject$4(comp)) { 5678 cache.set(comp, res); 5679 } 5680 return res; 5681} 5682function validatePropName(key) { 5683 if (key[0] !== "$" && !isReservedProp(key)) { 5684 return true; 5685 } 5686 return false; 5687} 5688const isInternalKey = (key) => key[0] === "_" || key === "$stable"; 5689const normalizeSlotValue = (value) => isArray$4(value) ? value.map(normalizeVNode) : [normalizeVNode(value)]; 5690const normalizeSlot$1 = (key, rawSlot, ctx) => { 5691 if (rawSlot._n) { 5692 return rawSlot; 5693 } 5694 const normalized = withCtx((...args) => { 5695 if (false) ; 5696 return normalizeSlotValue(rawSlot(...args)); 5697 }, ctx); 5698 normalized._c = false; 5699 return normalized; 5700}; 5701const normalizeObjectSlots = (rawSlots, slots, instance) => { 5702 const ctx = rawSlots._ctx; 5703 for (const key in rawSlots) { 5704 if (isInternalKey(key)) continue; 5705 const value = rawSlots[key]; 5706 if (isFunction$4(value)) { 5707 slots[key] = normalizeSlot$1(key, value, ctx); 5708 } else if (value != null) { 5709 const normalized = normalizeSlotValue(value); 5710 slots[key] = () => normalized; 5711 } 5712 } 5713}; 5714const normalizeVNodeSlots = (instance, children) => { 5715 const normalized = normalizeSlotValue(children); 5716 instance.slots.default = () => normalized; 5717}; 5718const assignSlots = (slots, children, optimized) => { 5719 for (const key in children) { 5720 if (optimized || key !== "_") { 5721 slots[key] = children[key]; 5722 } 5723 } 5724}; 5725const initSlots = (instance, children, optimized) => { 5726 const slots = instance.slots = createInternalObject(); 5727 if (instance.vnode.shapeFlag & 32) { 5728 const type = children._; 5729 if (type) { 5730 assignSlots(slots, children, optimized); 5731 if (optimized) { 5732 def(slots, "_", type, true); 5733 } 5734 } else { 5735 normalizeObjectSlots(children, slots); 5736 } 5737 } else if (children) { 5738 normalizeVNodeSlots(instance, children); 5739 } 5740}; 5741const updateSlots = (instance, children, optimized) => { 5742 const { vnode, slots } = instance; 5743 let needDeletionCheck = true; 5744 let deletionComparisonTarget = EMPTY_OBJ; 5745 if (vnode.shapeFlag & 32) { 5746 const type = children._; 5747 if (type) { 5748 if (optimized && type === 1) { 5749 needDeletionCheck = false; 5750 } else { 5751 assignSlots(slots, children, optimized); 5752 } 5753 } else { 5754 needDeletionCheck = !children.$stable; 5755 normalizeObjectSlots(children, slots); 5756 } 5757 deletionComparisonTarget = children; 5758 } else if (children) { 5759 normalizeVNodeSlots(instance, children); 5760 deletionComparisonTarget = { default: 1 }; 5761 } 5762 if (needDeletionCheck) { 5763 for (const key in slots) { 5764 if (!isInternalKey(key) && deletionComparisonTarget[key] == null) { 5765 delete slots[key]; 5766 } 5767 } 5768 } 5769}; 5770const queuePostRenderEffect = queueEffectWithSuspense; 5771function createRenderer(options) { 5772 return baseCreateRenderer(options); 5773} 5774function createHydrationRenderer(options) { 5775 return baseCreateRenderer(options, createHydrationFunctions); 5776} 5777function baseCreateRenderer(options, createHydrationFns) { 5778 const target = getGlobalThis(); 5779 target.__VUE__ = true; 5780 const { 5781 insert: hostInsert, 5782 remove: hostRemove, 5783 patchProp: hostPatchProp, 5784 createElement: hostCreateElement, 5785 createText: hostCreateText, 5786 createComment: hostCreateComment, 5787 setText: hostSetText, 5788 setElementText: hostSetElementText, 5789 parentNode: hostParentNode, 5790 nextSibling: hostNextSibling, 5791 setScopeId: hostSetScopeId = NOOP, 5792 insertStaticContent: hostInsertStaticContent 5793 } = options; 5794 const patch = (n1, n2, container, anchor = null, parentComponent = null, parentSuspense = null, namespace = void 0, slotScopeIds = null, optimized = !!n2.dynamicChildren) => { 5795 if (n1 === n2) { 5796 return; 5797 } 5798 if (n1 && !isSameVNodeType(n1, n2)) { 5799 anchor = getNextHostNode(n1); 5800 unmount(n1, parentComponent, parentSuspense, true); 5801 n1 = null; 5802 } 5803 if (n2.patchFlag === -2) { 5804 optimized = false; 5805 n2.dynamicChildren = null; 5806 } 5807 const { type, ref: ref3, shapeFlag } = n2; 5808 switch (type) { 5809 case Text: 5810 processText(n1, n2, container, anchor); 5811 break; 5812 case Comment: 5813 processCommentNode(n1, n2, container, anchor); 5814 break; 5815 case Static: 5816 if (n1 == null) { 5817 mountStaticNode(n2, container, anchor, namespace); 5818 } 5819 break; 5820 case Fragment: 5821 processFragment( 5822 n1, 5823 n2, 5824 container, 5825 anchor, 5826 parentComponent, 5827 parentSuspense, 5828 namespace, 5829 slotScopeIds, 5830 optimized 5831 ); 5832 break; 5833 default: 5834 if (shapeFlag & 1) { 5835 processElement( 5836 n1, 5837 n2, 5838 container, 5839 anchor, 5840 parentComponent, 5841 parentSuspense, 5842 namespace, 5843 slotScopeIds, 5844 optimized 5845 ); 5846 } else if (shapeFlag & 6) { 5847 processComponent( 5848 n1, 5849 n2, 5850 container, 5851 anchor, 5852 parentComponent, 5853 parentSuspense, 5854 namespace, 5855 slotScopeIds, 5856 optimized 5857 ); 5858 } else if (shapeFlag & 64) { 5859 type.process( 5860 n1, 5861 n2, 5862 container, 5863 anchor, 5864 parentComponent, 5865 parentSuspense, 5866 namespace, 5867 slotScopeIds, 5868 optimized, 5869 internals 5870 ); 5871 } else if (shapeFlag & 128) { 5872 type.process( 5873 n1, 5874 n2, 5875 container, 5876 anchor, 5877 parentComponent, 5878 parentSuspense, 5879 namespace, 5880 slotScopeIds, 5881 optimized, 5882 internals 5883 ); 5884 } else ; 5885 } 5886 if (ref3 != null && parentComponent) { 5887 setRef(ref3, n1 && n1.ref, parentSuspense, n2 || n1, !n2); 5888 } 5889 }; 5890 const processText = (n1, n2, container, anchor) => { 5891 if (n1 == null) { 5892 hostInsert( 5893 n2.el = hostCreateText(n2.children), 5894 container, 5895 anchor 5896 ); 5897 } else { 5898 const el = n2.el = n1.el; 5899 if (n2.children !== n1.children) { 5900 hostSetText(el, n2.children); 5901 } 5902 } 5903 }; 5904 const processCommentNode = (n1, n2, container, anchor) => { 5905 if (n1 == null) { 5906 hostInsert( 5907 n2.el = hostCreateComment(n2.children || ""), 5908 container, 5909 anchor 5910 ); 5911 } else { 5912 n2.el = n1.el; 5913 } 5914 }; 5915 const mountStaticNode = (n2, container, anchor, namespace) => { 5916 [n2.el, n2.anchor] = hostInsertStaticContent( 5917 n2.children, 5918 container, 5919 anchor, 5920 namespace, 5921 n2.el, 5922 n2.anchor 5923 ); 5924 }; 5925 const moveStaticNode = ({ el, anchor }, container, nextSibling) => { 5926 let next; 5927 while (el && el !== anchor) { 5928 next = hostNextSibling(el); 5929 hostInsert(el, container, nextSibling); 5930 el = next; 5931 } 5932 hostInsert(anchor, container, nextSibling); 5933 }; 5934 const removeStaticNode = ({ el, anchor }) => { 5935 let next; 5936 while (el && el !== anchor) { 5937 next = hostNextSibling(el); 5938 hostRemove(el); 5939 el = next; 5940 } 5941 hostRemove(anchor); 5942 }; 5943 const processElement = (n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { 5944 if (n2.type === "svg") { 5945 namespace = "svg"; 5946 } else if (n2.type === "math") { 5947 namespace = "mathml"; 5948 } 5949 if (n1 == null) { 5950 mountElement( 5951 n2, 5952 container, 5953 anchor, 5954 parentComponent, 5955 parentSuspense, 5956 namespace, 5957 slotScopeIds, 5958 optimized 5959 ); 5960 } else { 5961 patchElement( 5962 n1, 5963 n2, 5964 parentComponent, 5965 parentSuspense, 5966 namespace, 5967 slotScopeIds, 5968 optimized 5969 ); 5970 } 5971 }; 5972 const mountElement = (vnode, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { 5973 let el; 5974 let vnodeHook; 5975 const { props, shapeFlag, transition, dirs } = vnode; 5976 el = vnode.el = hostCreateElement( 5977 vnode.type, 5978 namespace, 5979 props && props.is, 5980 props 5981 ); 5982 if (shapeFlag & 8) { 5983 hostSetElementText(el, vnode.children); 5984 } else if (shapeFlag & 16) { 5985 mountChildren( 5986 vnode.children, 5987 el, 5988 null, 5989 parentComponent, 5990 parentSuspense, 5991 resolveChildrenNamespace(vnode, namespace), 5992 slotScopeIds, 5993 optimized 5994 ); 5995 } 5996 if (dirs) { 5997 invokeDirectiveHook(vnode, null, parentComponent, "created"); 5998 } 5999 setScopeId(el, vnode, vnode.scopeId, slotScopeIds, parentComponent); 6000 if (props) { 6001 for (const key in props) { 6002 if (key !== "value" && !isReservedProp(key)) { 6003 hostPatchProp(el, key, null, props[key], namespace, parentComponent); 6004 } 6005 } 6006 if ("value" in props) { 6007 hostPatchProp(el, "value", null, props.value, namespace); 6008 } 6009 if (vnodeHook = props.onVnodeBeforeMount) { 6010 invokeVNodeHook(vnodeHook, parentComponent, vnode); 6011 } 6012 } 6013 if (dirs) { 6014 invokeDirectiveHook(vnode, null, parentComponent, "beforeMount"); 6015 } 6016 const needCallTransitionHooks = needTransition(parentSuspense, transition); 6017 if (needCallTransitionHooks) { 6018 transition.beforeEnter(el); 6019 } 6020 hostInsert(el, container, anchor); 6021 if ((vnodeHook = props && props.onVnodeMounted) || needCallTransitionHooks || dirs) { 6022 queuePostRenderEffect(() => { 6023 vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode); 6024 needCallTransitionHooks && transition.enter(el); 6025 dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted"); 6026 }, parentSuspense); 6027 } 6028 }; 6029 const setScopeId = (el, vnode, scopeId, slotScopeIds, parentComponent) => { 6030 if (scopeId) { 6031 hostSetScopeId(el, scopeId); 6032 } 6033 if (slotScopeIds) { 6034 for (let i = 0; i < slotScopeIds.length; i++) { 6035 hostSetScopeId(el, slotScopeIds[i]); 6036 } 6037 } 6038 if (parentComponent) { 6039 let subTree = parentComponent.subTree; 6040 if (vnode === subTree || isSuspense(subTree.type) && (subTree.ssContent === vnode || subTree.ssFallback === vnode)) { 6041 const parentVNode = parentComponent.vnode; 6042 setScopeId( 6043 el, 6044 parentVNode, 6045 parentVNode.scopeId, 6046 parentVNode.slotScopeIds, 6047 parentComponent.parent 6048 ); 6049 } 6050 } 6051 }; 6052 const mountChildren = (children, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, start = 0) => { 6053 for (let i = start; i < children.length; i++) { 6054 const child = children[i] = optimized ? cloneIfMounted(children[i]) : normalizeVNode(children[i]); 6055 patch( 6056 null, 6057 child, 6058 container, 6059 anchor, 6060 parentComponent, 6061 parentSuspense, 6062 namespace, 6063 slotScopeIds, 6064 optimized 6065 ); 6066 } 6067 }; 6068 const patchElement = (n1, n2, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { 6069 const el = n2.el = n1.el; 6070 let { patchFlag, dynamicChildren, dirs } = n2; 6071 patchFlag |= n1.patchFlag & 16; 6072 const oldProps = n1.props || EMPTY_OBJ; 6073 const newProps = n2.props || EMPTY_OBJ; 6074 let vnodeHook; 6075 parentComponent && toggleRecurse(parentComponent, false); 6076 if (vnodeHook = newProps.onVnodeBeforeUpdate) { 6077 invokeVNodeHook(vnodeHook, parentComponent, n2, n1); 6078 } 6079 if (dirs) { 6080 invokeDirectiveHook(n2, n1, parentComponent, "beforeUpdate"); 6081 } 6082 parentComponent && toggleRecurse(parentComponent, true); 6083 if (oldProps.innerHTML && newProps.innerHTML == null || oldProps.textContent && newProps.textContent == null) { 6084 hostSetElementText(el, ""); 6085 } 6086 if (dynamicChildren) { 6087 patchBlockChildren( 6088 n1.dynamicChildren, 6089 dynamicChildren, 6090 el, 6091 parentComponent, 6092 parentSuspense, 6093 resolveChildrenNamespace(n2, namespace), 6094 slotScopeIds 6095 ); 6096 } else if (!optimized) { 6097 patchChildren( 6098 n1, 6099 n2, 6100 el, 6101 null, 6102 parentComponent, 6103 parentSuspense, 6104 resolveChildrenNamespace(n2, namespace), 6105 slotScopeIds, 6106 false 6107 ); 6108 } 6109 if (patchFlag > 0) { 6110 if (patchFlag & 16) { 6111 patchProps(el, oldProps, newProps, parentComponent, namespace); 6112 } else { 6113 if (patchFlag & 2) { 6114 if (oldProps.class !== newProps.class) { 6115 hostPatchProp(el, "class", null, newProps.class, namespace); 6116 } 6117 } 6118 if (patchFlag & 4) { 6119 hostPatchProp(el, "style", oldProps.style, newProps.style, namespace); 6120 } 6121 if (patchFlag & 8) { 6122 const propsToUpdate = n2.dynamicProps; 6123 for (let i = 0; i < propsToUpdate.length; i++) {
vendor: 4,697 bytes, lines 6124-6247
6124 const key = propsToUpdate[i]; 6125 const prev = oldProps[key]; 6126 const next = newProps[key]; 6127 if (next !== prev || key === "value") { 6128 hostPatchProp(el, key, prev, next, namespace, parentComponent); 6129 } 6130 } 6131 } 6132 } 6133 if (patchFlag & 1) { 6134 if (n1.children !== n2.children) { 6135 hostSetElementText(el, n2.children); 6136 } 6137 } 6138 } else if (!optimized && dynamicChildren == null) { 6139 patchProps(el, oldProps, newProps, parentComponent, namespace); 6140 } 6141 if ((vnodeHook = newProps.onVnodeUpdated) || dirs) { 6142 queuePostRenderEffect(() => { 6143 vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, n2, n1); 6144 dirs && invokeDirectiveHook(n2, n1, parentComponent, "updated"); 6145 }, parentSuspense); 6146 } 6147 }; 6148 const patchBlockChildren = (oldChildren, newChildren, fallbackContainer, parentComponent, parentSuspense, namespace, slotScopeIds) => { 6149 for (let i = 0; i < newChildren.length; i++) { 6150 const oldVNode = oldChildren[i]; 6151 const newVNode = newChildren[i]; 6152 const container = ( 6153 // oldVNode may be an errored async setup() component inside Suspense 6154 // which will not have a mounted element 6155 oldVNode.el && // - In the case of a Fragment, we need to provide the actual parent 6156 // of the Fragment itself so it can move its children. 6157 (oldVNode.type === Fragment || // - In the case of different nodes, there is going to be a replacement 6158 // which also requires the correct parent container 6159 !isSameVNodeType(oldVNode, newVNode) || // - In the case of a component, it could contain anything. 6160 oldVNode.shapeFlag & (6 | 64)) ? hostParentNode(oldVNode.el) : ( 6161 // In other cases, the parent container is not actually used so we 6162 // just pass the block element here to avoid a DOM parentNode call. 6163 fallbackContainer 6164 ) 6165 ); 6166 patch( 6167 oldVNode, 6168 newVNode, 6169 container, 6170 null, 6171 parentComponent, 6172 parentSuspense, 6173 namespace, 6174 slotScopeIds, 6175 true 6176 ); 6177 } 6178 }; 6179 const patchProps = (el, oldProps, newProps, parentComponent, namespace) => { 6180 if (oldProps !== newProps) { 6181 if (oldProps !== EMPTY_OBJ) { 6182 for (const key in oldProps) { 6183 if (!isReservedProp(key) && !(key in newProps)) { 6184 hostPatchProp( 6185 el, 6186 key, 6187 oldProps[key], 6188 null, 6189 namespace, 6190 parentComponent 6191 ); 6192 } 6193 } 6194 } 6195 for (const key in newProps) { 6196 if (isReservedProp(key)) continue; 6197 const next = newProps[key]; 6198 const prev = oldProps[key]; 6199 if (next !== prev && key !== "value") { 6200 hostPatchProp(el, key, prev, next, namespace, parentComponent); 6201 } 6202 } 6203 if ("value" in newProps) { 6204 hostPatchProp(el, "value", oldProps.value, newProps.value, namespace); 6205 } 6206 } 6207 }; 6208 const processFragment = (n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { 6209 const fragmentStartAnchor = n2.el = n1 ? n1.el : hostCreateText(""); 6210 const fragmentEndAnchor = n2.anchor = n1 ? n1.anchor : hostCreateText(""); 6211 let { patchFlag, dynamicChildren, slotScopeIds: fragmentSlotScopeIds } = n2; 6212 if (fragmentSlotScopeIds) { 6213 slotScopeIds = slotScopeIds ? slotScopeIds.concat(fragmentSlotScopeIds) : fragmentSlotScopeIds; 6214 } 6215 if (n1 == null) { 6216 hostInsert(fragmentStartAnchor, container, anchor); 6217 hostInsert(fragmentEndAnchor, container, anchor); 6218 mountChildren( 6219 // #10007 6220 // such fragment like `<></>` will be compiled into 6221 // a fragment which doesn't have a children. 6222 // In this case fallback to an empty array 6223 n2.children || [], 6224 container, 6225 fragmentEndAnchor, 6226 parentComponent, 6227 parentSuspense, 6228 namespace, 6229 slotScopeIds, 6230 optimized 6231 ); 6232 } else { 6233 if (patchFlag > 0 && patchFlag & 64 && dynamicChildren && // #2715 the previous fragment could've been a BAILed one as a result 6234 // of renderSlot() with no valid children 6235 n1.dynamicChildren) { 6236 patchBlockChildren( 6237 n1.dynamicChildren, 6238 dynamicChildren, 6239 container, 6240 parentComponent, 6241 parentSuspense, 6242 namespace, 6243 slotScopeIds 6244 ); 6245 if ( 6246 // #2080 if the stable fragment has a key, it's a <template v-for> that may 6247 // get moved around. Make sure all root level vnodes inherit el.
vendor: 12,382 bytes, lines 6248-6688
6248 // #2134 or if it's a component root, it may also get moved around 6249 // as the component is being moved. 6250 n2.key != null || parentComponent && n2 === parentComponent.subTree 6251 ) { 6252 traverseStaticChildren( 6253 n1, 6254 n2, 6255 true 6256 /* shallow */ 6257 ); 6258 } 6259 } else { 6260 patchChildren( 6261 n1, 6262 n2, 6263 container, 6264 fragmentEndAnchor, 6265 parentComponent, 6266 parentSuspense, 6267 namespace, 6268 slotScopeIds, 6269 optimized 6270 ); 6271 } 6272 } 6273 }; 6274 const processComponent = (n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { 6275 n2.slotScopeIds = slotScopeIds; 6276 if (n1 == null) { 6277 if (n2.shapeFlag & 512) { 6278 parentComponent.ctx.activate( 6279 n2, 6280 container, 6281 anchor, 6282 namespace, 6283 optimized 6284 ); 6285 } else { 6286 mountComponent( 6287 n2, 6288 container, 6289 anchor, 6290 parentComponent, 6291 parentSuspense, 6292 namespace, 6293 optimized 6294 ); 6295 } 6296 } else { 6297 updateComponent(n1, n2, optimized); 6298 } 6299 }; 6300 const mountComponent = (initialVNode, container, anchor, parentComponent, parentSuspense, namespace, optimized) => { 6301 const instance = initialVNode.component = createComponentInstance( 6302 initialVNode, 6303 parentComponent, 6304 parentSuspense 6305 ); 6306 if (isKeepAlive(initialVNode)) { 6307 instance.ctx.renderer = internals; 6308 } 6309 { 6310 setupComponent(instance, false, optimized); 6311 } 6312 if (instance.asyncDep) { 6313 parentSuspense && parentSuspense.registerDep(instance, setupRenderEffect, optimized); 6314 if (!initialVNode.el) { 6315 const placeholder = instance.subTree = createVNode(Comment); 6316 processCommentNode(null, placeholder, container, anchor); 6317 } 6318 } else { 6319 setupRenderEffect( 6320 instance, 6321 initialVNode, 6322 container, 6323 anchor, 6324 parentSuspense, 6325 namespace, 6326 optimized 6327 ); 6328 } 6329 }; 6330 const updateComponent = (n1, n2, optimized) => { 6331 const instance = n2.component = n1.component; 6332 if (shouldUpdateComponent(n1, n2, optimized)) { 6333 if (instance.asyncDep && !instance.asyncResolved) { 6334 updateComponentPreRender(instance, n2, optimized); 6335 return; 6336 } else { 6337 instance.next = n2; 6338 instance.update(); 6339 } 6340 } else { 6341 n2.el = n1.el; 6342 instance.vnode = n2; 6343 } 6344 }; 6345 const setupRenderEffect = (instance, initialVNode, container, anchor, parentSuspense, namespace, optimized) => { 6346 const componentUpdateFn = () => { 6347 if (!instance.isMounted) { 6348 let vnodeHook; 6349 const { el, props } = initialVNode; 6350 const { bm, m, parent, root: root2, type } = instance; 6351 const isAsyncWrapperVNode = isAsyncWrapper(initialVNode); 6352 toggleRecurse(instance, false); 6353 if (bm) { 6354 invokeArrayFns(bm); 6355 } 6356 if (!isAsyncWrapperVNode && (vnodeHook = props && props.onVnodeBeforeMount)) { 6357 invokeVNodeHook(vnodeHook, parent, initialVNode); 6358 } 6359 toggleRecurse(instance, true); 6360 if (el && hydrateNode) { 6361 const hydrateSubTree = () => { 6362 instance.subTree = renderComponentRoot(instance); 6363 hydrateNode( 6364 el, 6365 instance.subTree, 6366 instance, 6367 parentSuspense, 6368 null 6369 ); 6370 }; 6371 if (isAsyncWrapperVNode && type.__asyncHydrate) { 6372 type.__asyncHydrate( 6373 el, 6374 instance, 6375 hydrateSubTree 6376 ); 6377 } else { 6378 hydrateSubTree(); 6379 } 6380 } else { 6381 if (root2.ce) { 6382 root2.ce._injectChildStyle(type); 6383 } 6384 const subTree = instance.subTree = renderComponentRoot(instance); 6385 patch( 6386 null, 6387 subTree, 6388 container, 6389 anchor, 6390 instance, 6391 parentSuspense, 6392 namespace 6393 ); 6394 initialVNode.el = subTree.el; 6395 } 6396 if (m) { 6397 queuePostRenderEffect(m, parentSuspense); 6398 } 6399 if (!isAsyncWrapperVNode && (vnodeHook = props && props.onVnodeMounted)) { 6400 const scopedInitialVNode = initialVNode; 6401 queuePostRenderEffect( 6402 () => invokeVNodeHook(vnodeHook, parent, scopedInitialVNode), 6403 parentSuspense 6404 ); 6405 } 6406 if (initialVNode.shapeFlag & 256 || parent && isAsyncWrapper(parent.vnode) && parent.vnode.shapeFlag & 256) { 6407 instance.a && queuePostRenderEffect(instance.a, parentSuspense); 6408 } 6409 instance.isMounted = true; 6410 initialVNode = container = anchor = null; 6411 } else { 6412 let { next, bu, u, parent, vnode } = instance; 6413 { 6414 const nonHydratedAsyncRoot = locateNonHydratedAsyncRoot(instance); 6415 if (nonHydratedAsyncRoot) { 6416 if (next) { 6417 next.el = vnode.el; 6418 updateComponentPreRender(instance, next, optimized); 6419 } 6420 nonHydratedAsyncRoot.asyncDep.then(() => { 6421 if (!instance.isUnmounted) { 6422 componentUpdateFn(); 6423 } 6424 }); 6425 return; 6426 } 6427 } 6428 let originNext = next; 6429 let vnodeHook; 6430 toggleRecurse(instance, false); 6431 if (next) { 6432 next.el = vnode.el; 6433 updateComponentPreRender(instance, next, optimized); 6434 } else { 6435 next = vnode; 6436 } 6437 if (bu) { 6438 invokeArrayFns(bu); 6439 } 6440 if (vnodeHook = next.props && next.props.onVnodeBeforeUpdate) { 6441 invokeVNodeHook(vnodeHook, parent, next, vnode); 6442 } 6443 toggleRecurse(instance, true); 6444 const nextTree = renderComponentRoot(instance); 6445 const prevTree = instance.subTree; 6446 instance.subTree = nextTree; 6447 patch( 6448 prevTree, 6449 nextTree, 6450 // parent may have changed if it's in a teleport 6451 hostParentNode(prevTree.el), 6452 // anchor may have changed if it's in a fragment 6453 getNextHostNode(prevTree), 6454 instance, 6455 parentSuspense, 6456 namespace 6457 ); 6458 next.el = nextTree.el; 6459 if (originNext === null) { 6460 updateHOCHostEl(instance, nextTree.el); 6461 } 6462 if (u) { 6463 queuePostRenderEffect(u, parentSuspense); 6464 } 6465 if (vnodeHook = next.props && next.props.onVnodeUpdated) { 6466 queuePostRenderEffect( 6467 () => invokeVNodeHook(vnodeHook, parent, next, vnode), 6468 parentSuspense 6469 ); 6470 } 6471 } 6472 }; 6473 instance.scope.on(); 6474 const effect2 = instance.effect = new ReactiveEffect(componentUpdateFn); 6475 instance.scope.off(); 6476 const update3 = instance.update = effect2.run.bind(effect2); 6477 const job = instance.job = effect2.runIfDirty.bind(effect2); 6478 job.i = instance; 6479 job.id = instance.uid; 6480 effect2.scheduler = () => queueJob(job); 6481 toggleRecurse(instance, true); 6482 update3(); 6483 }; 6484 const updateComponentPreRender = (instance, nextVNode, optimized) => { 6485 nextVNode.component = instance; 6486 const prevProps = instance.vnode.props; 6487 instance.vnode = nextVNode; 6488 instance.next = null; 6489 updateProps(instance, nextVNode.props, prevProps, optimized); 6490 updateSlots(instance, nextVNode.children, optimized); 6491 pauseTracking(); 6492 flushPreFlushCbs(instance); 6493 resetTracking(); 6494 }; 6495 const patchChildren = (n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized = false) => { 6496 const c1 = n1 && n1.children; 6497 const prevShapeFlag = n1 ? n1.shapeFlag : 0; 6498 const c2 = n2.children; 6499 const { patchFlag, shapeFlag } = n2; 6500 if (patchFlag > 0) { 6501 if (patchFlag & 128) { 6502 patchKeyedChildren( 6503 c1, 6504 c2, 6505 container, 6506 anchor, 6507 parentComponent, 6508 parentSuspense, 6509 namespace, 6510 slotScopeIds, 6511 optimized 6512 ); 6513 return; 6514 } else if (patchFlag & 256) { 6515 patchUnkeyedChildren( 6516 c1, 6517 c2, 6518 container, 6519 anchor, 6520 parentComponent, 6521 parentSuspense, 6522 namespace, 6523 slotScopeIds, 6524 optimized 6525 ); 6526 return; 6527 } 6528 } 6529 if (shapeFlag & 8) { 6530 if (prevShapeFlag & 16) { 6531 unmountChildren(c1, parentComponent, parentSuspense); 6532 } 6533 if (c2 !== c1) { 6534 hostSetElementText(container, c2); 6535 } 6536 } else { 6537 if (prevShapeFlag & 16) { 6538 if (shapeFlag & 16) { 6539 patchKeyedChildren( 6540 c1, 6541 c2, 6542 container, 6543 anchor, 6544 parentComponent, 6545 parentSuspense, 6546 namespace, 6547 slotScopeIds, 6548 optimized 6549 ); 6550 } else { 6551 unmountChildren(c1, parentComponent, parentSuspense, true); 6552 } 6553 } else { 6554 if (prevShapeFlag & 8) { 6555 hostSetElementText(container, ""); 6556 } 6557 if (shapeFlag & 16) { 6558 mountChildren( 6559 c2, 6560 container, 6561 anchor, 6562 parentComponent, 6563 parentSuspense, 6564 namespace, 6565 slotScopeIds, 6566 optimized 6567 ); 6568 } 6569 } 6570 } 6571 }; 6572 const patchUnkeyedChildren = (c1, c2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { 6573 c1 = c1 || EMPTY_ARR; 6574 c2 = c2 || EMPTY_ARR; 6575 const oldLength = c1.length; 6576 const newLength = c2.length; 6577 const commonLength = Math.min(oldLength, newLength); 6578 let i; 6579 for (i = 0; i < commonLength; i++) { 6580 const nextChild = c2[i] = optimized ? cloneIfMounted(c2[i]) : normalizeVNode(c2[i]); 6581 patch( 6582 c1[i], 6583 nextChild, 6584 container, 6585 null, 6586 parentComponent, 6587 parentSuspense, 6588 namespace, 6589 slotScopeIds, 6590 optimized 6591 ); 6592 } 6593 if (oldLength > newLength) { 6594 unmountChildren( 6595 c1, 6596 parentComponent, 6597 parentSuspense, 6598 true, 6599 false, 6600 commonLength 6601 ); 6602 } else { 6603 mountChildren( 6604 c2, 6605 container, 6606 anchor, 6607 parentComponent, 6608 parentSuspense, 6609 namespace, 6610 slotScopeIds, 6611 optimized, 6612 commonLength 6613 ); 6614 } 6615 }; 6616 const patchKeyedChildren = (c1, c2, container, parentAnchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { 6617 let i = 0; 6618 const l22 = c2.length; 6619 let e1 = c1.length - 1; 6620 let e2 = l22 - 1; 6621 while (i <= e1 && i <= e2) { 6622 const n1 = c1[i]; 6623 const n2 = c2[i] = optimized ? cloneIfMounted(c2[i]) : normalizeVNode(c2[i]); 6624 if (isSameVNodeType(n1, n2)) { 6625 patch( 6626 n1, 6627 n2, 6628 container, 6629 null, 6630 parentComponent, 6631 parentSuspense, 6632 namespace, 6633 slotScopeIds, 6634 optimized 6635 ); 6636 } else { 6637 break; 6638 } 6639 i++; 6640 } 6641 while (i <= e1 && i <= e2) { 6642 const n1 = c1[e1]; 6643 const n2 = c2[e2] = optimized ? cloneIfMounted(c2[e2]) : normalizeVNode(c2[e2]); 6644 if (isSameVNodeType(n1, n2)) { 6645 patch( 6646 n1, 6647 n2, 6648 container, 6649 null, 6650 parentComponent, 6651 parentSuspense, 6652 namespace, 6653 slotScopeIds, 6654 optimized 6655 ); 6656 } else { 6657 break; 6658 } 6659 e1--; 6660 e2--; 6661 } 6662 if (i > e1) { 6663 if (i <= e2) { 6664 const nextPos = e2 + 1; 6665 const anchor = nextPos < l22 ? c2[nextPos].el : parentAnchor; 6666 while (i <= e2) { 6667 patch( 6668 null, 6669 c2[i] = optimized ? cloneIfMounted(c2[i]) : normalizeVNode(c2[i]), 6670 container, 6671 anchor, 6672 parentComponent, 6673 parentSuspense, 6674 namespace, 6675 slotScopeIds, 6676 optimized 6677 ); 6678 i++; 6679 } 6680 } 6681 } else if (i > e2) { 6682 while (i <= e1) { 6683 unmount(c1[i], parentComponent, parentSuspense, true); 6684 i++; 6685 } 6686 } else { 6687 const s1 = i; 6688 const s2 = i;
vendor: 4,489 bytes, lines 6689-6835
6689 const keyToNewIndexMap = /* @__PURE__ */ new Map(); 6690 for (i = s2; i <= e2; i++) { 6691 const nextChild = c2[i] = optimized ? cloneIfMounted(c2[i]) : normalizeVNode(c2[i]); 6692 if (nextChild.key != null) { 6693 keyToNewIndexMap.set(nextChild.key, i); 6694 } 6695 } 6696 let j; 6697 let patched = 0; 6698 const toBePatched = e2 - s2 + 1; 6699 let moved = false; 6700 let maxNewIndexSoFar = 0; 6701 const newIndexToOldIndexMap = new Array(toBePatched); 6702 for (i = 0; i < toBePatched; i++) newIndexToOldIndexMap[i] = 0; 6703 for (i = s1; i <= e1; i++) { 6704 const prevChild = c1[i]; 6705 if (patched >= toBePatched) { 6706 unmount(prevChild, parentComponent, parentSuspense, true); 6707 continue; 6708 } 6709 let newIndex; 6710 if (prevChild.key != null) { 6711 newIndex = keyToNewIndexMap.get(prevChild.key); 6712 } else { 6713 for (j = s2; j <= e2; j++) { 6714 if (newIndexToOldIndexMap[j - s2] === 0 && isSameVNodeType(prevChild, c2[j])) { 6715 newIndex = j; 6716 break; 6717 } 6718 } 6719 } 6720 if (newIndex === void 0) { 6721 unmount(prevChild, parentComponent, parentSuspense, true); 6722 } else { 6723 newIndexToOldIndexMap[newIndex - s2] = i + 1; 6724 if (newIndex >= maxNewIndexSoFar) { 6725 maxNewIndexSoFar = newIndex; 6726 } else { 6727 moved = true; 6728 } 6729 patch( 6730 prevChild, 6731 c2[newIndex], 6732 container, 6733 null, 6734 parentComponent, 6735 parentSuspense, 6736 namespace, 6737 slotScopeIds, 6738 optimized 6739 ); 6740 patched++; 6741 } 6742 } 6743 const increasingNewIndexSequence = moved ? getSequence(newIndexToOldIndexMap) : EMPTY_ARR; 6744 j = increasingNewIndexSequence.length - 1; 6745 for (i = toBePatched - 1; i >= 0; i--) { 6746 const nextIndex = s2 + i; 6747 const nextChild = c2[nextIndex]; 6748 const anchor = nextIndex + 1 < l22 ? c2[nextIndex + 1].el : parentAnchor; 6749 if (newIndexToOldIndexMap[i] === 0) { 6750 patch( 6751 null, 6752 nextChild, 6753 container, 6754 anchor, 6755 parentComponent, 6756 parentSuspense, 6757 namespace, 6758 slotScopeIds, 6759 optimized 6760 ); 6761 } else if (moved) { 6762 if (j < 0 || i !== increasingNewIndexSequence[j]) { 6763 move(nextChild, container, anchor, 2); 6764 } else { 6765 j--; 6766 } 6767 } 6768 } 6769 } 6770 }; 6771 const move = (vnode, container, anchor, moveType, parentSuspense = null) => { 6772 const { el, type, transition, children, shapeFlag } = vnode; 6773 if (shapeFlag & 6) { 6774 move(vnode.component.subTree, container, anchor, moveType); 6775 return; 6776 } 6777 if (shapeFlag & 128) { 6778 vnode.suspense.move(container, anchor, moveType); 6779 return; 6780 } 6781 if (shapeFlag & 64) { 6782 type.move(vnode, container, anchor, internals); 6783 return; 6784 } 6785 if (type === Fragment) { 6786 hostInsert(el, container, anchor); 6787 for (let i = 0; i < children.length; i++) { 6788 move(children[i], container, anchor, moveType); 6789 } 6790 hostInsert(vnode.anchor, container, anchor); 6791 return; 6792 } 6793 if (type === Static) { 6794 moveStaticNode(vnode, container, anchor); 6795 return; 6796 } 6797 const needTransition2 = moveType !== 2 && shapeFlag & 1 && transition; 6798 if (needTransition2) { 6799 if (moveType === 0) { 6800 transition.beforeEnter(el); 6801 hostInsert(el, container, anchor); 6802 queuePostRenderEffect(() => transition.enter(el), parentSuspense); 6803 } else { 6804 const { leave, delayLeave, afterLeave } = transition; 6805 const remove22 = () => hostInsert(el, container, anchor); 6806 const performLeave = () => { 6807 leave(el, () => { 6808 remove22(); 6809 afterLeave && afterLeave(); 6810 }); 6811 }; 6812 if (delayLeave) { 6813 delayLeave(el, remove22, performLeave); 6814 } else { 6815 performLeave(); 6816 } 6817 } 6818 } else { 6819 hostInsert(el, container, anchor); 6820 } 6821 }; 6822 const unmount = (vnode, parentComponent, parentSuspense, doRemove = false, optimized = false) => { 6823 const { 6824 type, 6825 props, 6826 ref: ref3, 6827 children, 6828 dynamicChildren, 6829 shapeFlag, 6830 patchFlag, 6831 dirs, 6832 cacheIndex 6833 } = vnode; 6834 if (patchFlag === -2) { 6835 optimized = false;
6836 } 6837 if (ref3 != null) { 6838 setRef(ref3, null, parentSuspense, vnode, true); 6839 } 6840 if (cacheIndex != null) { 6841 parentComponent.renderCache[cacheIndex] = void 0; 6842 } 6843 if (shapeFlag & 256) { 6844 parentComponent.ctx.deactivate(vnode); 6845 return; 6846 } 6847 const shouldInvokeDirs = shapeFlag & 1 && dirs; 6848 const shouldInvokeVnodeHook = !isAsyncWrapper(vnode); 6849 let vnodeHook; 6850 if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeBeforeUnmount)) { 6851 invokeVNodeHook(vnodeHook, parentComponent, vnode); 6852 } 6853 if (shapeFlag & 6) { 6854 unmountComponent(vnode.component, parentSuspense, doRemove); 6855 } else { 6856 if (shapeFlag & 128) { 6857 vnode.suspense.unmount(parentSuspense, doRemove); 6858 return; 6859 } 6860 if (shouldInvokeDirs) { 6861 invokeDirectiveHook(vnode, null, parentComponent, "beforeUnmount"); 6862 } 6863 if (shapeFlag & 64) { 6864 vnode.type.remove( 6865 vnode, 6866 parentComponent, 6867 parentSuspense, 6868 internals, 6869 doRemove 6870 ); 6871 } else if (dynamicChildren && // #5154 6872 // when v-once is used inside a block, setBlockTracking(-1) marks the 6873 // parent block with hasOnce: true 6874 // so that it doesn't take the fast path during unmount - otherwise 6875 // components nested in v-once are never unmounted. 6876 !dynamicChildren.hasOnce && // #1153: fast path should not be taken for non-stable (v-for) fragments 6877 (type !== Fragment || patchFlag > 0 && patchFlag & 64)) { 6878 unmountChildren( 6879 dynamicChildren, 6880 parentComponent, 6881 parentSuspense, 6882 false, 6883 true 6884 ); 6885 } else if (type === Fragment && patchFlag & (128 | 256) || !optimized && shapeFlag & 16) { 6886 unmountChildren(children, parentComponent, parentSuspense); 6887 } 6888 if (doRemove) { 6889 remove2(vnode); 6890 } 6891 } 6892 if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeUnmounted) || shouldInvokeDirs) { 6893 queuePostRenderEffect(() => { 6894 vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode); 6895 shouldInvokeDirs && invokeDirectiveHook(vnode, null, parentComponent, "unmounted"); 6896 }, parentSuspense); 6897 } 6898 }; 6899 const remove2 = (vnode) => { 6900 const { type, el, anchor, transition } = vnode; 6901 if (type === Fragment) { 6902 { 6903 removeFragment(el, anchor); 6904 } 6905 return; 6906 } 6907 if (type === Static) { 6908 removeStaticNode(vnode); 6909 return; 6910 } 6911 const performRemove = () => { 6912 hostRemove(el); 6913 if (transition && !transition.persisted && transition.afterLeave) { 6914 transition.afterLeave(); 6915 } 6916 }; 6917 if (vnode.shapeFlag & 1 && transition && !transition.persisted) { 6918 const { leave, delayLeave } = transition; 6919 const performLeave = () => leave(el, performRemove); 6920 if (delayLeave) { 6921 delayLeave(vnode.el, performRemove, performLeave); 6922 } else { 6923 performLeave(); 6924 } 6925 } else { 6926 performRemove(); 6927 } 6928 }; 6929 const removeFragment = (cur, end) => { 6930 let next; 6931 while (cur !== end) { 6932 next = hostNextSibling(cur); 6933 hostRemove(cur); 6934 cur = next; 6935 } 6936 hostRemove(end); 6937 }; 6938 const unmountComponent = (instance, parentSuspense, doRemove) => { 6939 const { bum, scope, job, subTree, um, m, a } = instance; 6940 invalidateMount(m); 6941 invalidateMount(a); 6942 if (bum) { 6943 invokeArrayFns(bum); 6944 } 6945 scope.stop(); 6946 if (job) { 6947 job.flags |= 8; 6948 unmount(subTree, instance, parentSuspense, doRemove); 6949 } 6950 if (um) { 6951 queuePostRenderEffect(um, parentSuspense); 6952 } 6953 queuePostRenderEffect(() => { 6954 instance.isUnmounted = true; 6955 }, parentSuspense); 6956 if (parentSuspense && parentSuspense.pendingBranch && !parentSuspense.isUnmounted && instance.asyncDep && !instance.asyncResolved && instance.suspenseId === parentSuspense.pendingId) { 6957 parentSuspense.deps--; 6958 if (parentSuspense.deps === 0) { 6959 parentSuspense.resolve(); 6960 } 6961 } 6962 }; 6963 const unmountChildren = (children, parentComponent, parentSuspense, doRemove = false, optimized = false, start = 0) => { 6964 for (let i = start; i < children.length; i++) { 6965 unmount(children[i], parentComponent, parentSuspense, doRemove, optimized); 6966 } 6967 }; 6968 const getNextHostNode = (vnode) => { 6969 if (vnode.shapeFlag & 6) { 6970 return getNextHostNode(vnode.component.subTree); 6971 } 6972 if (vnode.shapeFlag & 128) { 6973 return vnode.suspense.next(); 6974 } 6975 const el = hostNextSibling(vnode.anchor || vnode.el); 6976 const teleportEnd = el && el[TeleportEndKey]; 6977 return teleportEnd ? hostNextSibling(teleportEnd) : el; 6978 }; 6979 let isFlushing = false;
vendor: 15,195 bytes, lines 6980-7539
6980 const render4 = (vnode, container, namespace) => { 6981 if (vnode == null) { 6982 if (container._vnode) { 6983 unmount(container._vnode, null, null, true); 6984 } 6985 } else { 6986 patch( 6987 container._vnode || null, 6988 vnode, 6989 container, 6990 null, 6991 null, 6992 null, 6993 namespace 6994 ); 6995 } 6996 container._vnode = vnode; 6997 if (!isFlushing) { 6998 isFlushing = true; 6999 flushPreFlushCbs(); 7000 flushPostFlushCbs(); 7001 isFlushing = false; 7002 } 7003 }; 7004 const internals = { 7005 p: patch, 7006 um: unmount, 7007 m: move, 7008 r: remove2, 7009 mt: mountComponent, 7010 mc: mountChildren, 7011 pc: patchChildren, 7012 pbc: patchBlockChildren, 7013 n: getNextHostNode, 7014 o: options 7015 }; 7016 let hydrate2; 7017 let hydrateNode; 7018 if (createHydrationFns) { 7019 [hydrate2, hydrateNode] = createHydrationFns( 7020 internals 7021 ); 7022 } 7023 return { 7024 render: render4, 7025 hydrate: hydrate2, 7026 createApp: createAppAPI(render4, hydrate2) 7027 }; 7028} 7029function resolveChildrenNamespace({ type, props }, currentNamespace) { 7030 return currentNamespace === "svg" && type === "foreignObject" || currentNamespace === "mathml" && type === "annotation-xml" && props && props.encoding && props.encoding.includes("html") ? void 0 : currentNamespace; 7031} 7032function toggleRecurse({ effect: effect2, job }, allowed) { 7033 if (allowed) { 7034 effect2.flags |= 32; 7035 job.flags |= 4; 7036 } else { 7037 effect2.flags &= -33; 7038 job.flags &= -5; 7039 } 7040} 7041function needTransition(parentSuspense, transition) { 7042 return (!parentSuspense || parentSuspense && !parentSuspense.pendingBranch) && transition && !transition.persisted; 7043} 7044function traverseStaticChildren(n1, n2, shallow = false) { 7045 const ch1 = n1.children; 7046 const ch2 = n2.children; 7047 if (isArray$4(ch1) && isArray$4(ch2)) { 7048 for (let i = 0; i < ch1.length; i++) { 7049 const c1 = ch1[i]; 7050 let c2 = ch2[i]; 7051 if (c2.shapeFlag & 1 && !c2.dynamicChildren) { 7052 if (c2.patchFlag <= 0 || c2.patchFlag === 32) { 7053 c2 = ch2[i] = cloneIfMounted(ch2[i]); 7054 c2.el = c1.el; 7055 } 7056 if (!shallow && c2.patchFlag !== -2) 7057 traverseStaticChildren(c1, c2); 7058 } 7059 if (c2.type === Text) { 7060 c2.el = c1.el; 7061 } 7062 } 7063 } 7064} 7065function getSequence(arr) { 7066 const p2 = arr.slice(); 7067 const result = [0]; 7068 let i, j, u, v2, c2; 7069 const len = arr.length; 7070 for (i = 0; i < len; i++) { 7071 const arrI = arr[i]; 7072 if (arrI !== 0) { 7073 j = result[result.length - 1]; 7074 if (arr[j] < arrI) { 7075 p2[i] = j; 7076 result.push(i); 7077 continue; 7078 } 7079 u = 0; 7080 v2 = result.length - 1; 7081 while (u < v2) { 7082 c2 = u + v2 >> 1; 7083 if (arr[result[c2]] < arrI) { 7084 u = c2 + 1; 7085 } else { 7086 v2 = c2; 7087 } 7088 } 7089 if (arrI < arr[result[u]]) { 7090 if (u > 0) { 7091 p2[i] = result[u - 1]; 7092 } 7093 result[u] = i; 7094 } 7095 } 7096 } 7097 u = result.length; 7098 v2 = result[u - 1]; 7099 while (u-- > 0) { 7100 result[u] = v2; 7101 v2 = p2[v2]; 7102 } 7103 return result; 7104} 7105function locateNonHydratedAsyncRoot(instance) { 7106 const subComponent = instance.subTree.component; 7107 if (subComponent) { 7108 if (subComponent.asyncDep && !subComponent.asyncResolved) { 7109 return subComponent; 7110 } else { 7111 return locateNonHydratedAsyncRoot(subComponent); 7112 } 7113 } 7114} 7115function invalidateMount(hooks) { 7116 if (hooks) { 7117 for (let i = 0; i < hooks.length; i++) 7118 hooks[i].flags |= 8; 7119 } 7120} 7121const ssrContextKey = Symbol.for("v-scx"); 7122const useSSRContext = () => { 7123 { 7124 const ctx = inject(ssrContextKey); 7125 return ctx; 7126 } 7127}; 7128function watchEffect(effect2, options) { 7129 return doWatch(effect2, null, options); 7130} 7131function watchPostEffect(effect2, options) { 7132 return doWatch( 7133 effect2, 7134 null, 7135 { flush: "post" } 7136 ); 7137} 7138function watchSyncEffect(effect2, options) { 7139 return doWatch( 7140 effect2, 7141 null, 7142 { flush: "sync" } 7143 ); 7144} 7145function watch(source, cb, options) { 7146 return doWatch(source, cb, options); 7147} 7148function doWatch(source, cb, options = EMPTY_OBJ) { 7149 const { immediate, deep, flush, once } = options; 7150 const baseWatchOptions = extend$1({}, options); 7151 const runsImmediately = cb && immediate || !cb && flush !== "post"; 7152 let ssrCleanup; 7153 if (isInSSRComponentSetup) { 7154 if (flush === "sync") { 7155 const ctx = useSSRContext(); 7156 ssrCleanup = ctx.__watcherHandles || (ctx.__watcherHandles = []); 7157 } else if (!runsImmediately) { 7158 const watchStopHandle = () => { 7159 }; 7160 watchStopHandle.stop = NOOP; 7161 watchStopHandle.resume = NOOP; 7162 watchStopHandle.pause = NOOP; 7163 return watchStopHandle; 7164 } 7165 } 7166 const instance = currentInstance; 7167 baseWatchOptions.call = (fn, type, args) => callWithAsyncErrorHandling(fn, instance, type, args); 7168 let isPre = false; 7169 if (flush === "post") { 7170 baseWatchOptions.scheduler = (job) => { 7171 queuePostRenderEffect(job, instance && instance.suspense); 7172 }; 7173 } else if (flush !== "sync") { 7174 isPre = true; 7175 baseWatchOptions.scheduler = (job, isFirstRun) => { 7176 if (isFirstRun) { 7177 job(); 7178 } else { 7179 queueJob(job); 7180 } 7181 }; 7182 } 7183 baseWatchOptions.augmentJob = (job) => { 7184 if (cb) { 7185 job.flags |= 4; 7186 } 7187 if (isPre) { 7188 job.flags |= 2; 7189 if (instance) { 7190 job.id = instance.uid; 7191 job.i = instance; 7192 } 7193 } 7194 }; 7195 const watchHandle = watch$1(source, cb, baseWatchOptions); 7196 if (isInSSRComponentSetup) { 7197 if (ssrCleanup) { 7198 ssrCleanup.push(watchHandle); 7199 } else if (runsImmediately) { 7200 watchHandle(); 7201 } 7202 } 7203 return watchHandle; 7204} 7205function instanceWatch(source, value, options) { 7206 const publicThis = this.proxy; 7207 const getter = isString$1(source) ? source.includes(".") ? createPathGetter(publicThis, source) : () => publicThis[source] : source.bind(publicThis, publicThis); 7208 let cb; 7209 if (isFunction$4(value)) { 7210 cb = value; 7211 } else { 7212 cb = value.handler; 7213 options = value; 7214 } 7215 const reset = setCurrentInstance(this); 7216 const res = doWatch(getter, cb.bind(publicThis), options); 7217 reset(); 7218 return res; 7219} 7220function createPathGetter(ctx, path) { 7221 const segments = path.split("."); 7222 return () => { 7223 let cur = ctx; 7224 for (let i = 0; i < segments.length && cur; i++) { 7225 cur = cur[segments[i]]; 7226 } 7227 return cur; 7228 }; 7229} 7230function useModel(props, name, options = EMPTY_OBJ) { 7231 const i = getCurrentInstance(); 7232 const camelizedName = camelize(name); 7233 const hyphenatedName = hyphenate(name); 7234 const modifiers = getModelModifiers(props, camelizedName); 7235 const res = customRef((track2, trigger2) => { 7236 let localValue; 7237 let prevSetValue = EMPTY_OBJ; 7238 let prevEmittedValue; 7239 watchSyncEffect(() => { 7240 const propValue = props[camelizedName]; 7241 if (hasChanged(localValue, propValue)) { 7242 localValue = propValue; 7243 trigger2(); 7244 } 7245 }); 7246 return { 7247 get() { 7248 track2(); 7249 return options.get ? options.get(localValue) : localValue; 7250 }, 7251 set(value) { 7252 const emittedValue = options.set ? options.set(value) : value; 7253 if (!hasChanged(emittedValue, localValue) && !(prevSetValue !== EMPTY_OBJ && hasChanged(value, prevSetValue))) { 7254 return; 7255 } 7256 const rawProps = i.vnode.props; 7257 if (!(rawProps && // check if parent has passed v-model 7258 (name in rawProps || camelizedName in rawProps || hyphenatedName in rawProps) && (`onUpdate:${name}` in rawProps || `onUpdate:${camelizedName}` in rawProps || `onUpdate:${hyphenatedName}` in rawProps))) { 7259 localValue = value; 7260 trigger2(); 7261 } 7262 i.emit(`update:${name}`, emittedValue); 7263 if (hasChanged(value, emittedValue) && hasChanged(value, prevSetValue) && !hasChanged(emittedValue, prevEmittedValue)) { 7264 trigger2(); 7265 } 7266 prevSetValue = value; 7267 prevEmittedValue = emittedValue; 7268 } 7269 }; 7270 }); 7271 res[Symbol.iterator] = () => { 7272 let i2 = 0; 7273 return { 7274 next() { 7275 if (i2 < 2) { 7276 return { value: i2++ ? modifiers || EMPTY_OBJ : res, done: false }; 7277 } else { 7278 return { done: true }; 7279 } 7280 } 7281 }; 7282 }; 7283 return res; 7284} 7285const getModelModifiers = (props, modelName) => { 7286 return modelName === "modelValue" || modelName === "model-value" ? props.modelModifiers : props[`${modelName}Modifiers`] || props[`${camelize(modelName)}Modifiers`] || props[`${hyphenate(modelName)}Modifiers`]; 7287}; 7288function emit(instance, event, ...rawArgs) { 7289 if (instance.isUnmounted) return; 7290 const props = instance.vnode.props || EMPTY_OBJ; 7291 let args = rawArgs; 7292 const isModelListener2 = event.startsWith("update:"); 7293 const modifiers = isModelListener2 && getModelModifiers(props, event.slice(7)); 7294 if (modifiers) { 7295 if (modifiers.trim) { 7296 args = rawArgs.map((a) => isString$1(a) ? a.trim() : a); 7297 } 7298 if (modifiers.number) { 7299 args = rawArgs.map(looseToNumber); 7300 } 7301 } 7302 let handlerName; 7303 let handler = props[handlerName = toHandlerKey(event)] || // also try camelCase event handler (#2249) 7304 props[handlerName = toHandlerKey(camelize(event))]; 7305 if (!handler && isModelListener2) { 7306 handler = props[handlerName = toHandlerKey(hyphenate(event))]; 7307 } 7308 if (handler) { 7309 callWithAsyncErrorHandling( 7310 handler, 7311 instance, 7312 6, 7313 args 7314 ); 7315 } 7316 const onceHandler = props[handlerName + `Once`]; 7317 if (onceHandler) { 7318 if (!instance.emitted) { 7319 instance.emitted = {}; 7320 } else if (instance.emitted[handlerName]) { 7321 return; 7322 } 7323 instance.emitted[handlerName] = true; 7324 callWithAsyncErrorHandling( 7325 onceHandler, 7326 instance, 7327 6, 7328 args 7329 ); 7330 } 7331} 7332function normalizeEmitsOptions(comp, appContext, asMixin = false) { 7333 const cache = appContext.emitsCache; 7334 const cached = cache.get(comp); 7335 if (cached !== void 0) { 7336 return cached; 7337 } 7338 const raw = comp.emits; 7339 let normalized = {}; 7340 let hasExtends = false; 7341 if (!isFunction$4(comp)) { 7342 const extendEmits = (raw2) => { 7343 const normalizedFromExtend = normalizeEmitsOptions(raw2, appContext, true); 7344 if (normalizedFromExtend) { 7345 hasExtends = true; 7346 extend$1(normalized, normalizedFromExtend); 7347 } 7348 }; 7349 if (!asMixin && appContext.mixins.length) { 7350 appContext.mixins.forEach(extendEmits); 7351 } 7352 if (comp.extends) { 7353 extendEmits(comp.extends); 7354 } 7355 if (comp.mixins) { 7356 comp.mixins.forEach(extendEmits); 7357 } 7358 } 7359 if (!raw && !hasExtends) { 7360 if (isObject$4(comp)) { 7361 cache.set(comp, null); 7362 } 7363 return null; 7364 } 7365 if (isArray$4(raw)) { 7366 raw.forEach((key) => normalized[key] = null); 7367 } else { 7368 extend$1(normalized, raw); 7369 } 7370 if (isObject$4(comp)) { 7371 cache.set(comp, normalized); 7372 } 7373 return normalized; 7374} 7375function isEmitListener(options, key) { 7376 if (!options || !isOn(key)) { 7377 return false; 7378 } 7379 key = key.slice(2).replace(/Once$/, ""); 7380 return hasOwn(options, key[0].toLowerCase() + key.slice(1)) || hasOwn(options, hyphenate(key)) || hasOwn(options, key); 7381} 7382function markAttrsAccessed() { 7383} 7384function renderComponentRoot(instance) { 7385 const { 7386 type: Component, 7387 vnode, 7388 proxy, 7389 withProxy, 7390 propsOptions: [propsOptions], 7391 slots, 7392 attrs, 7393 emit: emit2, 7394 render: render4, 7395 renderCache, 7396 props, 7397 data, 7398 setupState, 7399 ctx, 7400 inheritAttrs 7401 } = instance; 7402 const prev = setCurrentRenderingInstance(instance); 7403 let result; 7404 let fallthroughAttrs; 7405 try { 7406 if (vnode.shapeFlag & 4) { 7407 const proxyToUse = withProxy || proxy; 7408 const thisProxy = false ? new Proxy(proxyToUse, { 7409 get(target, key, receiver) { 7410 warn$1( 7411 `Property '${String( 7412 key 7413 )}' was accessed via 'this'. Avoid using 'this' in templates.` 7414 ); 7415 return Reflect.get(target, key, receiver); 7416 } 7417 }) : proxyToUse; 7418 result = normalizeVNode( 7419 render4.call( 7420 thisProxy, 7421 proxyToUse, 7422 renderCache, 7423 false ? shallowReadonly(props) : props, 7424 setupState, 7425 data, 7426 ctx 7427 ) 7428 ); 7429 fallthroughAttrs = attrs; 7430 } else { 7431 const render22 = Component; 7432 if (false) ; 7433 result = normalizeVNode( 7434 render22.length > 1 ? render22( 7435 false ? shallowReadonly(props) : props, 7436 false ? { 7437 get attrs() { 7438 markAttrsAccessed(); 7439 return shallowReadonly(attrs); 7440 }, 7441 slots, 7442 emit: emit2 7443 } : { attrs, slots, emit: emit2 } 7444 ) : render22( 7445 false ? shallowReadonly(props) : props, 7446 null 7447 ) 7448 ); 7449 fallthroughAttrs = Component.props ? attrs : getFunctionalFallthrough(attrs); 7450 } 7451 } catch (err) { 7452 blockStack.length = 0; 7453 handleError(err, instance, 1); 7454 result = createVNode(Comment); 7455 } 7456 let root2 = result; 7457 if (fallthroughAttrs && inheritAttrs !== false) { 7458 const keys2 = Object.keys(fallthroughAttrs); 7459 const { shapeFlag } = root2; 7460 if (keys2.length) { 7461 if (shapeFlag & (1 | 6)) { 7462 if (propsOptions && keys2.some(isModelListener)) { 7463 fallthroughAttrs = filterModelListeners( 7464 fallthroughAttrs, 7465 propsOptions 7466 ); 7467 } 7468 root2 = cloneVNode(root2, fallthroughAttrs, false, true); 7469 } 7470 } 7471 } 7472 if (vnode.dirs) { 7473 root2 = cloneVNode(root2, null, false, true); 7474 root2.dirs = root2.dirs ? root2.dirs.concat(vnode.dirs) : vnode.dirs; 7475 } 7476 if (vnode.transition) { 7477 setTransitionHooks(root2, vnode.transition); 7478 } 7479 { 7480 result = root2; 7481 } 7482 setCurrentRenderingInstance(prev); 7483 return result; 7484} 7485function filterSingleRoot(children, recurse = true) { 7486 let singleRoot; 7487 for (let i = 0; i < children.length; i++) { 7488 const child = children[i]; 7489 if (isVNode(child)) { 7490 if (child.type !== Comment || child.children === "v-if") { 7491 if (singleRoot) { 7492 return; 7493 } else { 7494 singleRoot = child; 7495 } 7496 } 7497 } else { 7498 return; 7499 } 7500 } 7501 return singleRoot; 7502} 7503const getFunctionalFallthrough = (attrs) => { 7504 let res; 7505 for (const key in attrs) { 7506 if (key === "class" || key === "style" || isOn(key)) { 7507 (res || (res = {}))[key] = attrs[key]; 7508 } 7509 } 7510 return res; 7511}; 7512const filterModelListeners = (attrs, props) => { 7513 const res = {}; 7514 for (const key in attrs) { 7515 if (!isModelListener(key) || !(key.slice(9) in props)) { 7516 res[key] = attrs[key]; 7517 } 7518 } 7519 return res; 7520}; 7521function shouldUpdateComponent(prevVNode, nextVNode, optimized) { 7522 const { props: prevProps, children: prevChildren, component } = prevVNode; 7523 const { props: nextProps, children: nextChildren, patchFlag } = nextVNode; 7524 const emits = component.emitsOptions; 7525 if (nextVNode.dirs || nextVNode.transition) { 7526 return true; 7527 } 7528 if (optimized && patchFlag >= 0) { 7529 if (patchFlag & 1024) { 7530 return true; 7531 } 7532 if (patchFlag & 16) { 7533 if (!prevProps) { 7534 return !!nextProps; 7535 } 7536 return hasPropsChanged(prevProps, nextProps, emits); 7537 } else if (patchFlag & 8) { 7538 const dynamicProps = nextVNode.dynamicProps; 7539 for (let i = 0; i < dynamicProps.length; i++) {
7540 const key = dynamicProps[i]; 7541 if (nextProps[key] !== prevProps[key] && !isEmitListener(emits, key)) { 7542 return true; 7543 } 7544 } 7545 } 7546 } else { 7547 if (prevChildren || nextChildren) { 7548 if (!nextChildren || !nextChildren.$stable) { 7549 return true; 7550 } 7551 } 7552 if (prevProps === nextProps) { 7553 return false; 7554 } 7555 if (!prevProps) { 7556 return !!nextProps; 7557 } 7558 if (!nextProps) { 7559 return true; 7560 } 7561 return hasPropsChanged(prevProps, nextProps, emits); 7562 } 7563 return false; 7564} 7565function hasPropsChanged(prevProps, nextProps, emitsOptions) { 7566 const nextKeys = Object.keys(nextProps); 7567 if (nextKeys.length !== Object.keys(prevProps).length) { 7568 return true; 7569 } 7570 for (let i = 0; i < nextKeys.length; i++) { 7571 const key = nextKeys[i]; 7572 if (nextProps[key] !== prevProps[key] && !isEmitListener(emitsOptions, key)) { 7573 return true; 7574 } 7575 } 7576 return false; 7577} 7578function updateHOCHostEl({ vnode, parent }, el) { 7579 while (parent) { 7580 const root2 = parent.subTree; 7581 if (root2.suspense && root2.suspense.activeBranch === vnode) { 7582 root2.el = vnode.el; 7583 } 7584 if (root2 === vnode) { 7585 (vnode = parent.vnode).el = el; 7586 parent = parent.parent; 7587 } else { 7588 break; 7589 } 7590 } 7591} 7592const isSuspense = (type) => type.__isSuspense; 7593let suspenseId = 0; 7594const SuspenseImpl = { 7595 name: "Suspense", 7596 // In order to make Suspense tree-shakable, we need to avoid importing it 7597 // directly in the renderer. The renderer checks for the __isSuspense flag 7598 // on a vnode's type and calls the `process` method, passing in renderer 7599 // internals. 7600 __isSuspense: true, 7601 process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals) { 7602 if (n1 == null) { 7603 mountSuspense( 7604 n2, 7605 container, 7606 anchor, 7607 parentComponent, 7608 parentSuspense, 7609 namespace, 7610 slotScopeIds, 7611 optimized, 7612 rendererInternals 7613 ); 7614 } else { 7615 if (parentSuspense && parentSuspense.deps > 0 && !n1.suspense.isInFallback) { 7616 n2.suspense = n1.suspense; 7617 n2.suspense.vnode = n2; 7618 n2.el = n1.el; 7619 return; 7620 } 7621 patchSuspense( 7622 n1, 7623 n2, 7624 container, 7625 anchor, 7626 parentComponent, 7627 namespace, 7628 slotScopeIds, 7629 optimized, 7630 rendererInternals 7631 ); 7632 } 7633 }, 7634 hydrate: hydrateSuspense, 7635 normalize: normalizeSuspenseChildren 7636}; 7637const Suspense = SuspenseImpl; 7638function triggerEvent(vnode, name) { 7639 const eventListener = vnode.props && vnode.props[name]; 7640 if (isFunction$4(eventListener)) { 7641 eventListener(); 7642 } 7643} 7644function mountSuspense(vnode, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals) { 7645 const { 7646 p: patch, 7647 o: { createElement } 7648 } = rendererInternals; 7649 const hiddenContainer = createElement("div"); 7650 const suspense = vnode.suspense = createSuspenseBoundary( 7651 vnode, 7652 parentSuspense, 7653 parentComponent, 7654 container, 7655 hiddenContainer, 7656 anchor, 7657 namespace, 7658 slotScopeIds, 7659 optimized, 7660 rendererInternals 7661 ); 7662 patch( 7663 null, 7664 suspense.pendingBranch = vnode.ssContent, 7665 hiddenContainer, 7666 null, 7667 parentComponent, 7668 suspense, 7669 namespace, 7670 slotScopeIds 7671 ); 7672 if (suspense.deps > 0) { 7673 triggerEvent(vnode, "onPending"); 7674 triggerEvent(vnode, "onFallback"); 7675 patch( 7676 null, 7677 vnode.ssFallback, 7678 container, 7679 anchor, 7680 parentComponent, 7681 null, 7682 // fallback tree will not have suspense context 7683 namespace, 7684 slotScopeIds 7685 ); 7686 setActiveBranch(suspense, vnode.ssFallback); 7687 } else { 7688 suspense.resolve(false, true); 7689 } 7690} 7691function patchSuspense(n1, n2, container, anchor, parentComponent, namespace, slotScopeIds, optimized, { p: patch, um: unmount, o: { createElement } }) { 7692 const suspense = n2.suspense = n1.suspense; 7693 suspense.vnode = n2; 7694 n2.el = n1.el; 7695 const newBranch = n2.ssContent; 7696 const newFallback = n2.ssFallback; 7697 const { activeBranch, pendingBranch, isInFallback, isHydrating } = suspense; 7698 if (pendingBranch) { 7699 suspense.pendingBranch = newBranch; 7700 if (isSameVNodeType(newBranch, pendingBranch)) { 7701 patch( 7702 pendingBranch, 7703 newBranch, 7704 suspense.hiddenContainer, 7705 null, 7706 parentComponent, 7707 suspense, 7708 namespace, 7709 slotScopeIds, 7710 optimized 7711 ); 7712 if (suspense.deps <= 0) { 7713 suspense.resolve(); 7714 } else if (isInFallback) { 7715 if (!isHydrating) { 7716 patch( 7717 activeBranch, 7718 newFallback, 7719 container, 7720 anchor, 7721 parentComponent, 7722 null, 7723 // fallback tree will not have suspense context 7724 namespace, 7725 slotScopeIds, 7726 optimized 7727 );
vendor: 1,065 bytes, lines 7728-7768
7728 setActiveBranch(suspense, newFallback); 7729 } 7730 } 7731 } else { 7732 suspense.pendingId = suspenseId++; 7733 if (isHydrating) { 7734 suspense.isHydrating = false; 7735 suspense.activeBranch = pendingBranch; 7736 } else { 7737 unmount(pendingBranch, parentComponent, suspense); 7738 } 7739 suspense.deps = 0; 7740 suspense.effects.length = 0; 7741 suspense.hiddenContainer = createElement("div"); 7742 if (isInFallback) { 7743 patch( 7744 null, 7745 newBranch, 7746 suspense.hiddenContainer, 7747 null, 7748 parentComponent, 7749 suspense, 7750 namespace, 7751 slotScopeIds, 7752 optimized 7753 ); 7754 if (suspense.deps <= 0) { 7755 suspense.resolve(); 7756 } else { 7757 patch( 7758 activeBranch, 7759 newFallback, 7760 container, 7761 anchor, 7762 parentComponent, 7763 null, 7764 // fallback tree will not have suspense context 7765 namespace, 7766 slotScopeIds, 7767 optimized 7768 );
7769 setActiveBranch(suspense, newFallback); 7770 } 7771 } else if (activeBranch && isSameVNodeType(newBranch, activeBranch)) { 7772 patch( 7773 activeBranch, 7774 newBranch, 7775 container, 7776 anchor, 7777 parentComponent, 7778 suspense, 7779 namespace, 7780 slotScopeIds, 7781 optimized 7782 ); 7783 suspense.resolve(true); 7784 } else { 7785 patch( 7786 null, 7787 newBranch, 7788 suspense.hiddenContainer, 7789 null, 7790 parentComponent, 7791 suspense, 7792 namespace, 7793 slotScopeIds, 7794 optimized 7795 ); 7796 if (suspense.deps <= 0) { 7797 suspense.resolve(); 7798 } 7799 } 7800 } 7801 } else { 7802 if (activeBranch && isSameVNodeType(newBranch, activeBranch)) { 7803 patch( 7804 activeBranch, 7805 newBranch, 7806 container, 7807 anchor, 7808 parentComponent, 7809 suspense, 7810 namespace, 7811 slotScopeIds, 7812 optimized 7813 ); 7814 setActiveBranch(suspense, newBranch); 7815 } else { 7816 triggerEvent(n2, "onPending"); 7817 suspense.pendingBranch = newBranch; 7818 if (newBranch.shapeFlag & 512) { 7819 suspense.pendingId = newBranch.component.suspenseId; 7820 } else { 7821 suspense.pendingId = suspenseId++; 7822 } 7823 patch( 7824 null, 7825 newBranch, 7826 suspense.hiddenContainer, 7827 null, 7828 parentComponent, 7829 suspense, 7830 namespace, 7831 slotScopeIds, 7832 optimized 7833 ); 7834 if (suspense.deps <= 0) { 7835 suspense.resolve(); 7836 } else { 7837 const { timeout, pendingId } = suspense; 7838 if (timeout > 0) { 7839 setTimeout(() => { 7840 if (suspense.pendingId === pendingId) { 7841 suspense.fallback(newFallback); 7842 } 7843 }, timeout); 7844 } else if (timeout === 0) { 7845 suspense.fallback(newFallback); 7846 } 7847 } 7848 } 7849 } 7850} 7851function createSuspenseBoundary(vnode, parentSuspense, parentComponent, container, hiddenContainer, anchor, namespace, slotScopeIds, optimized, rendererInternals, isHydrating = false) { 7852 const { 7853 p: patch, 7854 m: move, 7855 um: unmount, 7856 n: next, 7857 o: { parentNode, remove: remove2 } 7858 } = rendererInternals; 7859 let parentSuspenseId; 7860 const isSuspensible = isVNodeSuspensible(vnode); 7861 if (isSuspensible) { 7862 if (parentSuspense && parentSuspense.pendingBranch) { 7863 parentSuspenseId = parentSuspense.pendingId; 7864 parentSuspense.deps++; 7865 } 7866 } 7867 const timeout = vnode.props ? toNumber$2(vnode.props.timeout) : void 0; 7868 const initialAnchor = anchor; 7869 const suspense = { 7870 vnode, 7871 parent: parentSuspense, 7872 parentComponent, 7873 namespace, 7874 container, 7875 hiddenContainer, 7876 deps: 0, 7877 pendingId: suspenseId++, 7878 timeout: typeof timeout === "number" ? timeout : -1, 7879 activeBranch: null, 7880 pendingBranch: null, 7881 isInFallback: !isHydrating, 7882 isHydrating, 7883 isUnmounted: false, 7884 effects: [], 7885 resolve(resume = false, sync = false) { 7886 const { 7887 vnode: vnode2, 7888 activeBranch, 7889 pendingBranch, 7890 pendingId, 7891 effects, 7892 parentComponent: parentComponent2, 7893 container: container2 7894 } = suspense; 7895 let delayEnter = false; 7896 if (suspense.isHydrating) { 7897 suspense.isHydrating = false; 7898 } else if (!resume) { 7899 delayEnter = activeBranch && pendingBranch.transition && pendingBranch.transition.mode === "out-in"; 7900 if (delayEnter) { 7901 activeBranch.transition.afterLeave = () => { 7902 if (pendingId === suspense.pendingId) { 7903 move( 7904 pendingBranch, 7905 container2, 7906 anchor === initialAnchor ? next(activeBranch) : anchor, 7907 0 7908 ); 7909 queuePostFlushCb(effects); 7910 } 7911 }; 7912 } 7913 if (activeBranch) { 7914 if (parentNode(activeBranch.el) === container2) { 7915 anchor = next(activeBranch); 7916 } 7917 unmount(activeBranch, parentComponent2, suspense, true); 7918 } 7919 if (!delayEnter) { 7920 move(pendingBranch, container2, anchor, 0); 7921 } 7922 }
7923 setActiveBranch(suspense, pendingBranch); 7924 suspense.pendingBranch = null; 7925 suspense.isInFallback = false; 7926 let parent = suspense.parent; 7927 let hasUnresolvedAncestor = false; 7928 while (parent) { 7929 if (parent.pendingBranch) { 7930 parent.effects.push(...effects); 7931 hasUnresolvedAncestor = true; 7932 break; 7933 } 7934 parent = parent.parent; 7935 } 7936 if (!hasUnresolvedAncestor && !delayEnter) { 7937 queuePostFlushCb(effects); 7938 } 7939 suspense.effects = []; 7940 if (isSuspensible) { 7941 if (parentSuspense && parentSuspense.pendingBranch && parentSuspenseId === parentSuspense.pendingId) { 7942 parentSuspense.deps--; 7943 if (parentSuspense.deps === 0 && !sync) { 7944 parentSuspense.resolve(); 7945 } 7946 } 7947 } 7948 triggerEvent(vnode2, "onResolve"); 7949 }, 7950 fallback(fallbackVNode) { 7951 if (!suspense.pendingBranch) { 7952 return; 7953 } 7954 const { vnode: vnode2, activeBranch, parentComponent: parentComponent2, container: container2, namespace: namespace2 } = suspense; 7955 triggerEvent(vnode2, "onFallback"); 7956 const anchor2 = next(activeBranch); 7957 const mountFallback = () => { 7958 if (!suspense.isInFallback) { 7959 return; 7960 } 7961 patch( 7962 null, 7963 fallbackVNode, 7964 container2, 7965 anchor2, 7966 parentComponent2, 7967 null, 7968 // fallback tree will not have suspense context 7969 namespace2, 7970 slotScopeIds, 7971 optimized 7972 ); 7973 setActiveBranch(suspense, fallbackVNode); 7974 }; 7975 const delayEnter = fallbackVNode.transition && fallbackVNode.transition.mode === "out-in"; 7976 if (delayEnter) { 7977 activeBranch.transition.afterLeave = mountFallback; 7978 } 7979 suspense.isInFallback = true; 7980 unmount( 7981 activeBranch, 7982 parentComponent2, 7983 null, 7984 // no suspense so unmount hooks fire now 7985 true 7986 // shouldRemove 7987 ); 7988 if (!delayEnter) { 7989 mountFallback(); 7990 } 7991 },
vendor: 11,147 bytes, lines 7992-8360
7992 move(container2, anchor2, type) { 7993 suspense.activeBranch && move(suspense.activeBranch, container2, anchor2, type); 7994 suspense.container = container2; 7995 }, 7996 next() { 7997 return suspense.activeBranch && next(suspense.activeBranch); 7998 }, 7999 registerDep(instance, setupRenderEffect, optimized2) { 8000 const isInPendingSuspense = !!suspense.pendingBranch; 8001 if (isInPendingSuspense) { 8002 suspense.deps++; 8003 } 8004 const hydratedEl = instance.vnode.el; 8005 instance.asyncDep.catch((err) => { 8006 handleError(err, instance, 0); 8007 }).then((asyncSetupResult) => { 8008 if (instance.isUnmounted || suspense.isUnmounted || suspense.pendingId !== instance.suspenseId) { 8009 return; 8010 } 8011 instance.asyncResolved = true; 8012 const { vnode: vnode2 } = instance; 8013 handleSetupResult(instance, asyncSetupResult, false); 8014 if (hydratedEl) { 8015 vnode2.el = hydratedEl; 8016 } 8017 const placeholder = !hydratedEl && instance.subTree.el; 8018 setupRenderEffect( 8019 instance, 8020 vnode2, 8021 // component may have been moved before resolve. 8022 // if this is not a hydration, instance.subTree will be the comment 8023 // placeholder. 8024 parentNode(hydratedEl || instance.subTree.el), 8025 // anchor will not be used if this is hydration, so only need to 8026 // consider the comment placeholder case. 8027 hydratedEl ? null : next(instance.subTree), 8028 suspense, 8029 namespace, 8030 optimized2 8031 ); 8032 if (placeholder) { 8033 remove2(placeholder); 8034 } 8035 updateHOCHostEl(instance, vnode2.el); 8036 if (isInPendingSuspense && --suspense.deps === 0) { 8037 suspense.resolve(); 8038 } 8039 }); 8040 }, 8041 unmount(parentSuspense2, doRemove) { 8042 suspense.isUnmounted = true; 8043 if (suspense.activeBranch) { 8044 unmount( 8045 suspense.activeBranch, 8046 parentComponent, 8047 parentSuspense2, 8048 doRemove 8049 ); 8050 } 8051 if (suspense.pendingBranch) { 8052 unmount( 8053 suspense.pendingBranch, 8054 parentComponent, 8055 parentSuspense2, 8056 doRemove 8057 ); 8058 } 8059 } 8060 }; 8061 return suspense; 8062} 8063function hydrateSuspense(node, vnode, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals, hydrateNode) { 8064 const suspense = vnode.suspense = createSuspenseBoundary( 8065 vnode, 8066 parentSuspense, 8067 parentComponent, 8068 node.parentNode, 8069 // eslint-disable-next-line no-restricted-globals 8070 document.createElement("div"), 8071 null, 8072 namespace, 8073 slotScopeIds, 8074 optimized, 8075 rendererInternals, 8076 true 8077 ); 8078 const result = hydrateNode( 8079 node, 8080 suspense.pendingBranch = vnode.ssContent, 8081 parentComponent, 8082 suspense, 8083 slotScopeIds, 8084 optimized 8085 ); 8086 if (suspense.deps === 0) { 8087 suspense.resolve(false, true); 8088 } 8089 return result; 8090} 8091function normalizeSuspenseChildren(vnode) { 8092 const { shapeFlag, children } = vnode; 8093 const isSlotChildren = shapeFlag & 32; 8094 vnode.ssContent = normalizeSuspenseSlot( 8095 isSlotChildren ? children.default : children 8096 ); 8097 vnode.ssFallback = isSlotChildren ? normalizeSuspenseSlot(children.fallback) : createVNode(Comment); 8098} 8099function normalizeSuspenseSlot(s) { 8100 let block; 8101 if (isFunction$4(s)) { 8102 const trackBlock = isBlockTreeEnabled && s._c; 8103 if (trackBlock) { 8104 s._d = false; 8105 openBlock(); 8106 } 8107 s = s(); 8108 if (trackBlock) { 8109 s._d = true; 8110 block = currentBlock; 8111 closeBlock(); 8112 } 8113 } 8114 if (isArray$4(s)) { 8115 const singleChild = filterSingleRoot(s); 8116 s = singleChild; 8117 } 8118 s = normalizeVNode(s); 8119 if (block && !s.dynamicChildren) { 8120 s.dynamicChildren = block.filter((c2) => c2 !== s); 8121 } 8122 return s; 8123} 8124function queueEffectWithSuspense(fn, suspense) { 8125 if (suspense && suspense.pendingBranch) { 8126 if (isArray$4(fn)) { 8127 suspense.effects.push(...fn); 8128 } else { 8129 suspense.effects.push(fn); 8130 } 8131 } else { 8132 queuePostFlushCb(fn); 8133 } 8134} 8135function setActiveBranch(suspense, branch) { 8136 suspense.activeBranch = branch; 8137 const { vnode, parentComponent } = suspense; 8138 let el = branch.el; 8139 while (!el && branch.component) { 8140 branch = branch.component.subTree; 8141 el = branch.el; 8142 } 8143 vnode.el = el; 8144 if (parentComponent && parentComponent.subTree === vnode) { 8145 parentComponent.vnode.el = el; 8146 updateHOCHostEl(parentComponent, el); 8147 } 8148} 8149function isVNodeSuspensible(vnode) { 8150 const suspensible = vnode.props && vnode.props.suspensible; 8151 return suspensible != null && suspensible !== false; 8152} 8153const Fragment = Symbol.for("v-fgt"); 8154const Text = Symbol.for("v-txt"); 8155const Comment = Symbol.for("v-cmt"); 8156const Static = Symbol.for("v-stc"); 8157const blockStack = []; 8158let currentBlock = null; 8159function openBlock(disableTracking = false) { 8160 blockStack.push(currentBlock = disableTracking ? null : []); 8161} 8162function closeBlock() { 8163 blockStack.pop(); 8164 currentBlock = blockStack[blockStack.length - 1] || null; 8165} 8166let isBlockTreeEnabled = 1; 8167function setBlockTracking(value, inVOnce = false) { 8168 isBlockTreeEnabled += value; 8169 if (value < 0 && currentBlock && inVOnce) { 8170 currentBlock.hasOnce = true; 8171 } 8172} 8173function setupBlock(vnode) { 8174 vnode.dynamicChildren = isBlockTreeEnabled > 0 ? currentBlock || EMPTY_ARR : null; 8175 closeBlock(); 8176 if (isBlockTreeEnabled > 0 && currentBlock) { 8177 currentBlock.push(vnode); 8178 } 8179 return vnode; 8180} 8181function createElementBlock(type, props, children, patchFlag, dynamicProps, shapeFlag) { 8182 return setupBlock( 8183 createBaseVNode( 8184 type, 8185 props, 8186 children, 8187 patchFlag, 8188 dynamicProps, 8189 shapeFlag, 8190 true 8191 ) 8192 ); 8193} 8194function createBlock(type, props, children, patchFlag, dynamicProps) { 8195 return setupBlock( 8196 createVNode( 8197 type, 8198 props, 8199 children, 8200 patchFlag, 8201 dynamicProps, 8202 true 8203 ) 8204 ); 8205} 8206function isVNode(value) { 8207 return value ? value.__v_isVNode === true : false; 8208} 8209function isSameVNodeType(n1, n2) { 8210 return n1.type === n2.type && n1.key === n2.key; 8211} 8212function transformVNodeArgs(transformer) { 8213} 8214const normalizeKey = ({ key }) => key != null ? key : null; 8215const normalizeRef = ({ 8216 ref: ref3, 8217 ref_key, 8218 ref_for 8219}) => { 8220 if (typeof ref3 === "number") { 8221 ref3 = "" + ref3; 8222 } 8223 return ref3 != null ? isString$1(ref3) || isRef(ref3) || isFunction$4(ref3) ? { i: currentRenderingInstance, r: ref3, k: ref_key, f: !!ref_for } : ref3 : null; 8224}; 8225function createBaseVNode(type, props = null, children = null, patchFlag = 0, dynamicProps = null, shapeFlag = type === Fragment ? 0 : 1, isBlockNode = false, needFullChildrenNormalization = false) { 8226 const vnode = { 8227 __v_isVNode: true, 8228 __v_skip: true, 8229 type, 8230 props, 8231 key: props && normalizeKey(props), 8232 ref: props && normalizeRef(props), 8233 scopeId: currentScopeId, 8234 slotScopeIds: null, 8235 children, 8236 component: null, 8237 suspense: null, 8238 ssContent: null, 8239 ssFallback: null, 8240 dirs: null, 8241 transition: null, 8242 el: null, 8243 anchor: null, 8244 target: null, 8245 targetStart: null, 8246 targetAnchor: null, 8247 staticCount: 0, 8248 shapeFlag, 8249 patchFlag, 8250 dynamicProps, 8251 dynamicChildren: null, 8252 appContext: null, 8253 ctx: currentRenderingInstance 8254 }; 8255 if (needFullChildrenNormalization) { 8256 normalizeChildren$1(vnode, children); 8257 if (shapeFlag & 128) { 8258 type.normalize(vnode); 8259 } 8260 } else if (children) { 8261 vnode.shapeFlag |= isString$1(children) ? 8 : 16; 8262 } 8263 if (isBlockTreeEnabled > 0 && // avoid a block node from tracking itself 8264 !isBlockNode && // has current parent block 8265 currentBlock && // presence of a patch flag indicates this node needs patching on updates. 8266 // component nodes also should always be patched, because even if the 8267 // component doesn't need to update, it needs to persist the instance on to 8268 // the next vnode so that it can be properly unmounted later. 8269 (vnode.patchFlag > 0 || shapeFlag & 6) && // the EVENTS flag is only for hydration and if it is the only flag, the 8270 // vnode should not be considered dynamic due to handler caching. 8271 vnode.patchFlag !== 32) { 8272 currentBlock.push(vnode); 8273 } 8274 return vnode; 8275} 8276const createVNode = _createVNode; 8277function _createVNode(type, props = null, children = null, patchFlag = 0, dynamicProps = null, isBlockNode = false) { 8278 if (!type || type === NULL_DYNAMIC_COMPONENT) { 8279 type = Comment; 8280 } 8281 if (isVNode(type)) { 8282 const cloned = cloneVNode( 8283 type, 8284 props, 8285 true 8286 /* mergeRef: true */ 8287 ); 8288 if (children) { 8289 normalizeChildren$1(cloned, children); 8290 } 8291 if (isBlockTreeEnabled > 0 && !isBlockNode && currentBlock) { 8292 if (cloned.shapeFlag & 6) { 8293 currentBlock[currentBlock.indexOf(type)] = cloned; 8294 } else { 8295 currentBlock.push(cloned); 8296 } 8297 } 8298 cloned.patchFlag = -2; 8299 return cloned; 8300 } 8301 if (isClassComponent(type)) { 8302 type = type.__vccOpts; 8303 } 8304 if (props) { 8305 props = guardReactiveProps(props); 8306 let { class: klass, style } = props; 8307 if (klass && !isString$1(klass)) { 8308 props.class = normalizeClass(klass); 8309 } 8310 if (isObject$4(style)) { 8311 if (isProxy(style) && !isArray$4(style)) { 8312 style = extend$1({}, style); 8313 } 8314 props.style = normalizeStyle(style); 8315 } 8316 } 8317 const shapeFlag = isString$1(type) ? 1 : isSuspense(type) ? 128 : isTeleport(type) ? 64 : isObject$4(type) ? 4 : isFunction$4(type) ? 2 : 0; 8318 return createBaseVNode( 8319 type, 8320 props, 8321 children, 8322 patchFlag, 8323 dynamicProps, 8324 shapeFlag, 8325 isBlockNode, 8326 true 8327 ); 8328} 8329function guardReactiveProps(props) { 8330 if (!props) return null; 8331 return isProxy(props) || isInternalObject(props) ? extend$1({}, props) : props; 8332} 8333function cloneVNode(vnode, extraProps, mergeRef = false, cloneTransition = false) { 8334 const { props, ref: ref3, patchFlag, children, transition } = vnode; 8335 const mergedProps = extraProps ? mergeProps(props || {}, extraProps) : props; 8336 const cloned = { 8337 __v_isVNode: true, 8338 __v_skip: true, 8339 type: vnode.type, 8340 props: mergedProps, 8341 key: mergedProps && normalizeKey(mergedProps), 8342 ref: extraProps && extraProps.ref ? ( 8343 // #2078 in the case of <component :is="vnode" ref="extra"/> 8344 // if the vnode itself already has a ref, cloneVNode will need to merge 8345 // the refs so the single vnode can be set on multiple refs 8346 mergeRef && ref3 ? isArray$4(ref3) ? ref3.concat(normalizeRef(extraProps)) : [ref3, normalizeRef(extraProps)] : normalizeRef(extraProps) 8347 ) : ref3, 8348 scopeId: vnode.scopeId, 8349 slotScopeIds: vnode.slotScopeIds, 8350 children, 8351 target: vnode.target, 8352 targetStart: vnode.targetStart, 8353 targetAnchor: vnode.targetAnchor, 8354 staticCount: vnode.staticCount, 8355 shapeFlag: vnode.shapeFlag, 8356 // if the vnode is cloned with extra props, we can no longer assume its 8357 // existing patch flag to be reliable and need to add the FULL_PROPS flag. 8358 // note: preserve flag for fragments since they use the flag for children 8359 // fast paths only. 8360 patchFlag: extraProps && vnode.type !== Fragment ? patchFlag === -1 ? 16
vendor: 4,085 bytes, lines 8360-8493
8360: patchFlag | 16 : patchFlag, 8361 dynamicProps: vnode.dynamicProps, 8362 dynamicChildren: vnode.dynamicChildren, 8363 appContext: vnode.appContext, 8364 dirs: vnode.dirs, 8365 transition, 8366 // These should technically only be non-null on mounted VNodes. However, 8367 // they *should* be copied for kept-alive vnodes. So we just always copy 8368 // them since them being non-null during a mount doesn't affect the logic as 8369 // they will simply be overwritten. 8370 component: vnode.component, 8371 suspense: vnode.suspense, 8372 ssContent: vnode.ssContent && cloneVNode(vnode.ssContent), 8373 ssFallback: vnode.ssFallback && cloneVNode(vnode.ssFallback), 8374 el: vnode.el, 8375 anchor: vnode.anchor, 8376 ctx: vnode.ctx, 8377 ce: vnode.ce 8378 }; 8379 if (transition && cloneTransition) { 8380 setTransitionHooks( 8381 cloned, 8382 transition.clone(cloned) 8383 ); 8384 } 8385 return cloned; 8386} 8387function createTextVNode(text = " ", flag = 0) { 8388 return createVNode(Text, null, text, flag); 8389} 8390function createStaticVNode(content, numberOfNodes) { 8391 const vnode = createVNode(Static, null, content); 8392 vnode.staticCount = numberOfNodes; 8393 return vnode; 8394} 8395function createCommentVNode(text = "", asBlock = false) { 8396 return asBlock ? (openBlock(), createBlock(Comment, null, text)) : createVNode(Comment, null, text); 8397} 8398function normalizeVNode(child) { 8399 if (child == null || typeof child === "boolean") { 8400 return createVNode(Comment); 8401 } else if (isArray$4(child)) { 8402 return createVNode( 8403 Fragment, 8404 null, 8405 // #3666, avoid reference pollution when reusing vnode 8406 child.slice() 8407 ); 8408 } else if (isVNode(child)) { 8409 return cloneIfMounted(child); 8410 } else { 8411 return createVNode(Text, null, String(child)); 8412 } 8413} 8414function cloneIfMounted(child) { 8415 return child.el === null && child.patchFlag !== -1 || child.memo ? child : cloneVNode(child); 8416} 8417function normalizeChildren$1(vnode, children) { 8418 let type = 0; 8419 const { shapeFlag } = vnode; 8420 if (children == null) { 8421 children = null; 8422 } else if (isArray$4(children)) { 8423 type = 16; 8424 } else if (typeof children === "object") { 8425 if (shapeFlag & (1 | 64)) { 8426 const slot = children.default; 8427 if (slot) { 8428 slot._c && (slot._d = false); 8429 normalizeChildren$1(vnode, slot()); 8430 slot._c && (slot._d = true); 8431 } 8432 return; 8433 } else { 8434 type = 32; 8435 const slotFlag = children._; 8436 if (!slotFlag && !isInternalObject(children)) { 8437 children._ctx = currentRenderingInstance; 8438 } else if (slotFlag === 3 && currentRenderingInstance) { 8439 if (currentRenderingInstance.slots._ === 1) { 8440 children._ = 1; 8441 } else { 8442 children._ = 2; 8443 vnode.patchFlag |= 1024; 8444 } 8445 } 8446 } 8447 } else if (isFunction$4(children)) { 8448 children = { default: children, _ctx: currentRenderingInstance }; 8449 type = 32; 8450 } else { 8451 children = String(children); 8452 if (shapeFlag & 64) { 8453 type = 16; 8454 children = [createTextVNode(children)]; 8455 } else { 8456 type = 8; 8457 } 8458 } 8459 vnode.children = children; 8460 vnode.shapeFlag |= type; 8461} 8462function mergeProps(...args) { 8463 const ret = {}; 8464 for (let i = 0; i < args.length; i++) { 8465 const toMerge = args[i]; 8466 for (const key in toMerge) { 8467 if (key === "class") { 8468 if (ret.class !== toMerge.class) { 8469 ret.class = normalizeClass([ret.class, toMerge.class]); 8470 } 8471 } else if (key === "style") { 8472 ret.style = normalizeStyle([ret.style, toMerge.style]); 8473 } else if (isOn(key)) { 8474 const existing = ret[key]; 8475 const incoming = toMerge[key]; 8476 if (incoming && existing !== incoming && !(isArray$4(existing) && existing.includes(incoming))) { 8477 ret[key] = existing ? [].concat(existing, incoming) : incoming; 8478 } 8479 } else if (key !== "") { 8480 ret[key] = toMerge[key]; 8481 } 8482 } 8483 } 8484 return ret; 8485} 8486function invokeVNodeHook(hook, instance, vnode, prevVNode = null) { 8487 callWithAsyncErrorHandling(hook, instance, 7, [ 8488 vnode, 8489 prevVNode 8490 ]); 8491} 8492const emptyAppContext = createAppContext(); 8493let uid = 0;
vendor: 5,157 bytes, lines 8494-8677
8494function createComponentInstance(vnode, parent, suspense) { 8495 const type = vnode.type; 8496 const appContext = (parent ? parent.appContext : vnode.appContext) || emptyAppContext; 8497 const instance = { 8498 uid: uid++, 8499 vnode, 8500 type, 8501 parent, 8502 appContext, 8503 root: null, 8504 // to be immediately set 8505 next: null, 8506 subTree: null, 8507 // will be set synchronously right after creation 8508 effect: null, 8509 update: null, 8510 // will be set synchronously right after creation 8511 job: null, 8512 scope: new EffectScope( 8513 true 8514 /* detached */ 8515 ), 8516 render: null, 8517 proxy: null, 8518 exposed: null, 8519 exposeProxy: null, 8520 withProxy: null, 8521 provides: parent ? parent.provides : Object.create(appContext.provides), 8522 ids: parent ? parent.ids : ["", 0, 0], 8523 accessCache: null, 8524 renderCache: [], 8525 // local resolved assets 8526 components: null, 8527 directives: null, 8528 // resolved props and emits options 8529 propsOptions: normalizePropsOptions(type, appContext), 8530 emitsOptions: normalizeEmitsOptions(type, appContext), 8531 // emit 8532 emit: null, 8533 // to be set immediately 8534 emitted: null, 8535 // props default value 8536 propsDefaults: EMPTY_OBJ, 8537 // inheritAttrs 8538 inheritAttrs: type.inheritAttrs, 8539 // state 8540 ctx: EMPTY_OBJ, 8541 data: EMPTY_OBJ, 8542 props: EMPTY_OBJ, 8543 attrs: EMPTY_OBJ, 8544 slots: EMPTY_OBJ, 8545 refs: EMPTY_OBJ, 8546 setupState: EMPTY_OBJ, 8547 setupContext: null, 8548 // suspense related 8549 suspense, 8550 suspenseId: suspense ? suspense.pendingId : 0, 8551 asyncDep: null, 8552 asyncResolved: false, 8553 // lifecycle hooks 8554 // not using enums here because it results in computed properties 8555 isMounted: false, 8556 isUnmounted: false, 8557 isDeactivated: false, 8558 bc: null, 8559 c: null, 8560 bm: null, 8561 m: null, 8562 bu: null, 8563 u: null, 8564 um: null, 8565 bum: null, 8566 da: null, 8567 a: null, 8568 rtg: null, 8569 rtc: null, 8570 ec: null, 8571 sp: null 8572 }; 8573 { 8574 instance.ctx = { _: instance }; 8575 } 8576 instance.root = parent ? parent.root : instance; 8577 instance.emit = emit.bind(null, instance); 8578 if (vnode.ce) { 8579 vnode.ce(instance); 8580 } 8581 return instance; 8582} 8583let currentInstance = null; 8584const getCurrentInstance = () => currentInstance || currentRenderingInstance; 8585let internalSetCurrentInstance; 8586let setInSSRSetupState; 8587{ 8588 const g = getGlobalThis(); 8589 const registerGlobalSetter = (key, setter) => { 8590 let setters; 8591 if (!(setters = g[key])) setters = g[key] = []; 8592 setters.push(setter); 8593 return (v2) => { 8594 if (setters.length > 1) setters.forEach((set2) => set2(v2)); 8595 else setters[0](v2); 8596 }; 8597 }; 8598 internalSetCurrentInstance = registerGlobalSetter( 8599 `__VUE_INSTANCE_SETTERS__`, 8600 (v2) => currentInstance = v2 8601 ); 8602 setInSSRSetupState = registerGlobalSetter( 8603 `__VUE_SSR_SETTERS__`, 8604 (v2) => isInSSRComponentSetup = v2 8605 ); 8606} 8607const setCurrentInstance = (instance) => { 8608 const prev = currentInstance; 8609 internalSetCurrentInstance(instance); 8610 instance.scope.on(); 8611 return () => { 8612 instance.scope.off(); 8613 internalSetCurrentInstance(prev); 8614 }; 8615}; 8616const unsetCurrentInstance = () => { 8617 currentInstance && currentInstance.scope.off(); 8618 internalSetCurrentInstance(null); 8619}; 8620function isStatefulComponent(instance) { 8621 return instance.vnode.shapeFlag & 4; 8622} 8623let isInSSRComponentSetup = false; 8624function setupComponent(instance, isSSR = false, optimized = false) { 8625 isSSR && setInSSRSetupState(isSSR); 8626 const { props, children } = instance.vnode; 8627 const isStateful = isStatefulComponent(instance); 8628 initProps(instance, props, isStateful, isSSR); 8629 initSlots(instance, children, optimized); 8630 const setupResult = isStateful ? setupStatefulComponent(instance, isSSR) : void 0; 8631 isSSR && setInSSRSetupState(false); 8632 return setupResult; 8633} 8634function setupStatefulComponent(instance, isSSR) { 8635 const Component = instance.type; 8636 instance.accessCache = /* @__PURE__ */ Object.create(null); 8637 instance.proxy = new Proxy(instance.ctx, PublicInstanceProxyHandlers); 8638 const { setup } = Component; 8639 if (setup) { 8640 pauseTracking(); 8641 const setupContext = instance.setupContext = setup.length > 1 ? createSetupContext(instance) : null; 8642 const reset = setCurrentInstance(instance); 8643 const setupResult = callWithErrorHandling( 8644 setup, 8645 instance, 8646 0, 8647 [ 8648 instance.props, 8649 setupContext 8650 ] 8651 ); 8652 const isAsyncSetup = isPromise$1(setupResult); 8653 resetTracking(); 8654 reset(); 8655 if ((isAsyncSetup || instance.sp) && !isAsyncWrapper(instance)) { 8656 markAsyncBoundary(instance); 8657 } 8658 if (isAsyncSetup) { 8659 setupResult.then(unsetCurrentInstance, unsetCurrentInstance); 8660 if (isSSR) { 8661 return setupResult.then((resolvedResult) => { 8662 handleSetupResult(instance, resolvedResult, isSSR); 8663 }).catch((e) => { 8664 handleError(e, instance, 0); 8665 }); 8666 } else { 8667 instance.asyncDep = setupResult; 8668 } 8669 } else { 8670 handleSetupResult(instance, setupResult, isSSR); 8671 } 8672 } else { 8673 finishComponentSetup(instance, isSSR); 8674 } 8675} 8676function handleSetupResult(instance, setupResult, isSSR) { 8677 if (isFunction$4(setupResult)) {
8678 if (instance.type.__ssrInlineRender) { 8679 instance.ssrRender = setupResult; 8680 } else { 8681 instance.render = setupResult; 8682 } 8683 } else if (isObject$4(setupResult)) { 8684 instance.setupState = proxyRefs(setupResult); 8685 } else ; 8686 finishComponentSetup(instance, isSSR); 8687} 8688let compile; 8689let installWithProxy; 8690function registerRuntimeCompiler(_compile) { 8691 compile = _compile; 8692 installWithProxy = (i) => { 8693 if (i.render._rc) { 8694 i.withProxy = new Proxy(i.ctx, RuntimeCompiledPublicInstanceProxyHandlers); 8695 } 8696 }; 8697} 8698const isRuntimeOnly = () => !compile; 8699function finishComponentSetup(instance, isSSR, skipOptions) { 8700 const Component = instance.type; 8701 if (!instance.render) { 8702 if (!isSSR && compile && !Component.render) { 8703 const template = Component.template || resolveMergedOptions(instance).template; 8704 if (template) { 8705 const { isCustomElement, compilerOptions } = instance.appContext.config; 8706 const { delimiters, compilerOptions: componentCompilerOptions } = Component; 8707 const finalCompilerOptions = extend$1( 8708 extend$1( 8709 { 8710 isCustomElement, 8711 delimiters 8712 }, 8713 compilerOptions 8714 ), 8715 componentCompilerOptions 8716 ); 8717 Component.render = compile(template, finalCompilerOptions); 8718 } 8719 } 8720 instance.render = Component.render || NOOP; 8721 if (installWithProxy) { 8722 installWithProxy(instance); 8723 } 8724 } 8725 { 8726 const reset = setCurrentInstance(instance); 8727 pauseTracking(); 8728 try { 8729 applyOptions(instance); 8730 } finally { 8731 resetTracking(); 8732 reset(); 8733 } 8734 } 8735} 8736const attrsProxyHandlers = { 8737 get(target, key) { 8738 track(target, "get", ""); 8739 return target[key]; 8740 } 8741}; 8742function createSetupContext(instance) { 8743 const expose = (exposed) => { 8744 instance.exposed = exposed || {}; 8745 }; 8746 { 8747 return { 8748 attrs: new Proxy(instance.attrs, attrsProxyHandlers), 8749 slots: instance.slots, 8750 emit: instance.emit, 8751 expose 8752 }; 8753 } 8754} 8755function getComponentPublicInstance(instance) { 8756 if (instance.exposed) { 8757 return instance.exposeProxy || (instance.exposeProxy = new Proxy(proxyRefs(markRaw(instance.exposed)), { 8758 get(target, key) { 8759 if (key in target) { 8760 return target[key]; 8761 } else if (key in publicPropertiesMap) { 8762 return publicPropertiesMap[key](instance); 8763 } 8764 }, 8765 has(target, key) { 8766 return key in target || key in publicPropertiesMap; 8767 } 8768 })); 8769 } else { 8770 return instance.proxy; 8771 } 8772} 8773const classifyRE = /(?:^|[-_])(\w)/g; 8774const classify = (str) => str.replace(classifyRE, (c2) => c2.toUpperCase()).replace(/[-_]/g, ""); 8775function getComponentName(Component, includeInferred = true) { 8776 return isFunction$4(Component) ? Component.displayName || Component.name : Component.name || includeInferred && Component.__name; 8777} 8778function formatComponentName(instance, Component, isRoot = false) { 8779 let name = getComponentName(Component); 8780 if (!name && Component.__file) { 8781 const match2 = Component.__file.match(/([^/\\]+)\.\w+$/); 8782 if (match2) { 8783 name = match2[1]; 8784 } 8785 } 8786 if (!name && instance && instance.parent) { 8787 const inferFromRegistry = (registry) => { 8788 for (const key in registry) { 8789 if (registry[key] === Component) { 8790 return key; 8791 } 8792 } 8793 }; 8794 name = inferFromRegistry( 8795 instance.components || instance.parent.type.components 8796 ) || inferFromRegistry(instance.appContext.components); 8797 } 8798 return name ? classify(name) : isRoot ? `App` : `Anonymous`; 8799} 8800function isClassComponent(value) { 8801 return isFunction$4(value) && "__vccOpts" in value; 8802} 8803const computed = (getterOrOptions, debugOptions) => { 8804 const c2 = computed$1(getterOrOptions, debugOptions, isInSSRComponentSetup); 8805 return c2; 8806}; 8807function h(type, propsOrChildren, children) { 8808 const l3 = arguments.length; 8809 if (l3 === 2) { 8810 if (isObject$4(propsOrChildren) && !isArray$4(propsOrChildren)) { 8811 if (isVNode(propsOrChildren)) { 8812 return createVNode(type, null, [propsOrChildren]); 8813 } 8814 return createVNode(type, propsOrChildren); 8815 } else { 8816 return createVNode(type, null, propsOrChildren); 8817 } 8818 } else { 8819 if (l3 > 3) { 8820 children = Array.prototype.slice.call(arguments, 2); 8821 } else if (l3 === 3 && isVNode(children)) { 8822 children = [children]; 8823 } 8824 return createVNode(type, propsOrChildren, children); 8825 } 8826} 8827function initCustomFormatter() { 8828 { 8829 return; 8830 } 8831} 8832function withMemo(memo, render4, cache, index2) {
vendor: 1,164 bytes, lines 8833-8881
8833 const cached = cache[index2]; 8834 if (cached && isMemoSame(cached, memo)) { 8835 return cached; 8836 } 8837 const ret = render4(); 8838 ret.memo = memo.slice(); 8839 ret.cacheIndex = index2; 8840 return cache[index2] = ret; 8841} 8842function isMemoSame(cached, memo) { 8843 const prev = cached.memo; 8844 if (prev.length != memo.length) { 8845 return false; 8846 } 8847 for (let i = 0; i < prev.length; i++) { 8848 if (hasChanged(prev[i], memo[i])) { 8849 return false; 8850 } 8851 } 8852 if (isBlockTreeEnabled > 0 && currentBlock) { 8853 currentBlock.push(cached); 8854 } 8855 return true; 8856} 8857const version = "3.5.13"; 8858const warn = NOOP; 8859const ErrorTypeStrings = ErrorTypeStrings$1; 8860const devtools = devtools$1; 8861const setDevtoolsHook = setDevtoolsHook$1; 8862const _ssrUtils = { 8863 createComponentInstance, 8864 setupComponent, 8865 renderComponentRoot, 8866 setCurrentRenderingInstance, 8867 isVNode, 8868 normalizeVNode, 8869 getComponentPublicInstance, 8870 ensureValidVNode, 8871 pushWarningContext, 8872 popWarningContext 8873}; 8874const ssrUtils = _ssrUtils; 8875const resolveFilter = null; 8876const compatUtils = null; 8877const DeprecationTypes = null; 8878/** 8879* @vue/runtime-dom v3.5.13 8880* (c) 2018-present Yuxi (Evan) You and Vue contributors 8881* @license MIT
vendor: 5,400 bytes, lines 8882-9050
8882**/ 8883let policy = void 0; 8884const tt = typeof window !== "undefined" && window.trustedTypes; 8885if (tt) { 8886 try { 8887 policy = /* @__PURE__ */ tt.createPolicy("vue", { 8888 createHTML: (val) => val 8889 }); 8890 } catch (e) { 8891 } 8892} 8893const unsafeToTrustedHTML = policy ? (val) => policy.createHTML(val) : (val) => val; 8894const svgNS = "http://www.w3.org/2000/svg"; 8895const mathmlNS = "http://www.w3.org/1998/Math/MathML"; 8896const doc = typeof document !== "undefined" ? document : null; 8897const templateContainer = doc && /* @__PURE__ */ doc.createElement("template"); 8898const nodeOps = { 8899 insert: (child, parent, anchor) => { 8900 parent.insertBefore(child, anchor || null); 8901 }, 8902 remove: (child) => { 8903 const parent = child.parentNode; 8904 if (parent) { 8905 parent.removeChild(child); 8906 } 8907 }, 8908 createElement: (tag, namespace, is, props) => { 8909 const el = namespace === "svg" ? doc.createElementNS(svgNS, tag) : namespace === "mathml" ? doc.createElementNS(mathmlNS, tag) : is ? doc.createElement(tag, { is }) : doc.createElement(tag); 8910 if (tag === "select" && props && props.multiple != null) { 8911 el.setAttribute("multiple", props.multiple); 8912 } 8913 return el; 8914 }, 8915 createText: (text) => doc.createTextNode(text), 8916 createComment: (text) => doc.createComment(text), 8917 setText: (node, text) => { 8918 node.nodeValue = text; 8919 }, 8920 setElementText: (el, text) => { 8921 el.textContent = text; 8922 }, 8923 parentNode: (node) => node.parentNode, 8924 nextSibling: (node) => node.nextSibling, 8925 querySelector: (selector) => doc.querySelector(selector), 8926 setScopeId(el, id) { 8927 el.setAttribute(id, ""); 8928 }, 8929 // __UNSAFE__ 8930 // Reason: innerHTML. 8931 // Static content here can only come from compiled templates. 8932 // As long as the user only uses trusted templates, this is safe. 8933 insertStaticContent(content, parent, anchor, namespace, start, end) { 8934 const before = anchor ? anchor.previousSibling : parent.lastChild; 8935 if (start && (start === end || start.nextSibling)) { 8936 while (true) { 8937 parent.insertBefore(start.cloneNode(true), anchor); 8938 if (start === end || !(start = start.nextSibling)) break; 8939 } 8940 } else { 8941 templateContainer.innerHTML = unsafeToTrustedHTML( 8942 namespace === "svg" ? `<svg>${content}</svg>` : namespace === "mathml" ? `<math>${content}</math>` : content 8943 ); 8944 const template = templateContainer.content; 8945 if (namespace === "svg" || namespace === "mathml") { 8946 const wrapper = template.firstChild; 8947 while (wrapper.firstChild) { 8948 template.appendChild(wrapper.firstChild); 8949 } 8950 template.removeChild(wrapper); 8951 } 8952 parent.insertBefore(template, anchor); 8953 } 8954 return [ 8955 // first 8956 before ? before.nextSibling : parent.firstChild, 8957 // last 8958 anchor ? anchor.previousSibling : parent.lastChild 8959 ]; 8960 } 8961}; 8962const TRANSITION = "transition"; 8963const ANIMATION = "animation"; 8964const vtcKey = Symbol("_vtc"); 8965const DOMTransitionPropsValidators = { 8966 name: String, 8967 type: String, 8968 css: { 8969 type: Boolean, 8970 default: true 8971 }, 8972 duration: [String, Number, Object], 8973 enterFromClass: String, 8974 enterActiveClass: String, 8975 enterToClass: String, 8976 appearFromClass: String, 8977 appearActiveClass: String, 8978 appearToClass: String, 8979 leaveFromClass: String, 8980 leaveActiveClass: String, 8981 leaveToClass: String 8982}; 8983const TransitionPropsValidators = /* @__PURE__ */ extend$1( 8984 {}, 8985 BaseTransitionPropsValidators, 8986 DOMTransitionPropsValidators 8987); 8988const decorate$1 = (t) => { 8989 t.displayName = "Transition"; 8990 t.props = TransitionPropsValidators; 8991 return t; 8992}; 8993const Transition = /* @__PURE__ */ decorate$1( 8994 (props, { slots }) => h(BaseTransition, resolveTransitionProps(props), slots) 8995); 8996const callHook = (hook, args = []) => { 8997 if (isArray$4(hook)) { 8998 hook.forEach((h2) => h2(...args)); 8999 } else if (hook) { 9000 hook(...args); 9001 } 9002}; 9003const hasExplicitCallback = (hook) => { 9004 return hook ? isArray$4(hook) ? hook.some((h2) => h2.length > 1) : hook.length > 1 : false; 9005}; 9006function resolveTransitionProps(rawProps) { 9007 const baseProps = {}; 9008 for (const key in rawProps) { 9009 if (!(key in DOMTransitionPropsValidators)) { 9010 baseProps[key] = rawProps[key]; 9011 } 9012 } 9013 if (rawProps.css === false) { 9014 return baseProps; 9015 } 9016 const { 9017 name = "v", 9018 type, 9019 duration, 9020 enterFromClass = `${name}-enter-from`, 9021 enterActiveClass = `${name}-enter-active`, 9022 enterToClass = `${name}-enter-to`, 9023 appearFromClass = enterFromClass, 9024 appearActiveClass = enterActiveClass, 9025 appearToClass = enterToClass, 9026 leaveFromClass = `${name}-leave-from`, 9027 leaveActiveClass = `${name}-leave-active`, 9028 leaveToClass = `${name}-leave-to` 9029 } = rawProps; 9030 const durations = normalizeDuration(duration); 9031 const enterDuration = durations && durations[0]; 9032 const leaveDuration = durations && durations[1]; 9033 const { 9034 onBeforeEnter, 9035 onEnter, 9036 onEnterCancelled, 9037 onLeave, 9038 onLeaveCancelled, 9039 onBeforeAppear = onBeforeEnter, 9040 onAppear = onEnter, 9041 onAppearCancelled = onEnterCancelled 9042 } = baseProps; 9043 const finishEnter = (el, isAppear, done, isCancelled) => { 9044 el._enterCancelled = isCancelled; 9045 removeTransitionClass(el, isAppear ? appearToClass : enterToClass); 9046 removeTransitionClass(el, isAppear ? appearActiveClass : enterActiveClass); 9047 done && done(); 9048 }; 9049 const finishLeave = (el, done) => { 9050 el._isLeaving = false;
vendor: 8,616 bytes, lines 9051-9343
9051 removeTransitionClass(el, leaveFromClass); 9052 removeTransitionClass(el, leaveToClass); 9053 removeTransitionClass(el, leaveActiveClass); 9054 done && done(); 9055 }; 9056 const makeEnterHook = (isAppear) => { 9057 return (el, done) => { 9058 const hook = isAppear ? onAppear : onEnter; 9059 const resolve2 = () => finishEnter(el, isAppear, done); 9060 callHook(hook, [el, resolve2]); 9061 nextFrame(() => { 9062 removeTransitionClass(el, isAppear ? appearFromClass : enterFromClass); 9063 addTransitionClass(el, isAppear ? appearToClass : enterToClass); 9064 if (!hasExplicitCallback(hook)) { 9065 whenTransitionEnds(el, type, enterDuration, resolve2); 9066 } 9067 }); 9068 }; 9069 }; 9070 return extend$1(baseProps, { 9071 onBeforeEnter(el) { 9072 callHook(onBeforeEnter, [el]); 9073 addTransitionClass(el, enterFromClass); 9074 addTransitionClass(el, enterActiveClass); 9075 }, 9076 onBeforeAppear(el) { 9077 callHook(onBeforeAppear, [el]); 9078 addTransitionClass(el, appearFromClass); 9079 addTransitionClass(el, appearActiveClass); 9080 }, 9081 onEnter: makeEnterHook(false), 9082 onAppear: makeEnterHook(true), 9083 onLeave(el, done) { 9084 el._isLeaving = true; 9085 const resolve2 = () => finishLeave(el, done); 9086 addTransitionClass(el, leaveFromClass); 9087 if (!el._enterCancelled) { 9088 forceReflow(); 9089 addTransitionClass(el, leaveActiveClass); 9090 } else { 9091 addTransitionClass(el, leaveActiveClass); 9092 forceReflow(); 9093 } 9094 nextFrame(() => { 9095 if (!el._isLeaving) { 9096 return; 9097 } 9098 removeTransitionClass(el, leaveFromClass); 9099 addTransitionClass(el, leaveToClass); 9100 if (!hasExplicitCallback(onLeave)) { 9101 whenTransitionEnds(el, type, leaveDuration, resolve2); 9102 } 9103 }); 9104 callHook(onLeave, [el, resolve2]); 9105 }, 9106 onEnterCancelled(el) { 9107 finishEnter(el, false, void 0, true); 9108 callHook(onEnterCancelled, [el]); 9109 }, 9110 onAppearCancelled(el) { 9111 finishEnter(el, true, void 0, true); 9112 callHook(onAppearCancelled, [el]); 9113 }, 9114 onLeaveCancelled(el) { 9115 finishLeave(el); 9116 callHook(onLeaveCancelled, [el]); 9117 } 9118 }); 9119} 9120function normalizeDuration(duration) { 9121 if (duration == null) { 9122 return null; 9123 } else if (isObject$4(duration)) { 9124 return [NumberOf(duration.enter), NumberOf(duration.leave)]; 9125 } else { 9126 const n = NumberOf(duration); 9127 return [n, n]; 9128 } 9129} 9130function NumberOf(val) { 9131 const res = toNumber$2(val); 9132 return res; 9133} 9134function addTransitionClass(el, cls) { 9135 cls.split(/\s+/).forEach((c2) => c2 && el.classList.add(c2)); 9136 (el[vtcKey] || (el[vtcKey] = /* @__PURE__ */ new Set())).add(cls); 9137} 9138function removeTransitionClass(el, cls) { 9139 cls.split(/\s+/).forEach((c2) => c2 && el.classList.remove(c2)); 9140 const _vtc = el[vtcKey]; 9141 if (_vtc) { 9142 _vtc.delete(cls); 9143 if (!_vtc.size) { 9144 el[vtcKey] = void 0; 9145 } 9146 } 9147} 9148function nextFrame(cb) { 9149 requestAnimationFrame(() => { 9150 requestAnimationFrame(cb); 9151 }); 9152} 9153let endId = 0; 9154function whenTransitionEnds(el, expectedType, explicitTimeout, resolve2) { 9155 const id = el._endId = ++endId; 9156 const resolveIfNotStale = () => { 9157 if (id === el._endId) { 9158 resolve2(); 9159 } 9160 }; 9161 if (explicitTimeout != null) { 9162 return setTimeout(resolveIfNotStale, explicitTimeout); 9163 } 9164 const { type, timeout, propCount } = getTransitionInfo(el, expectedType); 9165 if (!type) { 9166 return resolve2(); 9167 } 9168 const endEvent = type + "end"; 9169 let ended = 0; 9170 const end = () => { 9171 el.removeEventListener(endEvent, onEnd); 9172 resolveIfNotStale(); 9173 }; 9174 const onEnd = (e) => { 9175 if (e.target === el && ++ended >= propCount) { 9176 end(); 9177 } 9178 }; 9179 setTimeout(() => { 9180 if (ended < propCount) { 9181 end(); 9182 } 9183 }, timeout + 1); 9184 el.addEventListener(endEvent, onEnd); 9185} 9186function getTransitionInfo(el, expectedType) { 9187 const styles = window.getComputedStyle(el); 9188 const getStyleProperties = (key) => (styles[key] || "").split(", "); 9189 const transitionDelays = getStyleProperties(`${TRANSITION}Delay`); 9190 const transitionDurations = getStyleProperties(`${TRANSITION}Duration`); 9191 const transitionTimeout = getTimeout(transitionDelays, transitionDurations); 9192 const animationDelays = getStyleProperties(`${ANIMATION}Delay`); 9193 const animationDurations = getStyleProperties(`${ANIMATION}Duration`); 9194 const animationTimeout = getTimeout(animationDelays, animationDurations); 9195 let type = null; 9196 let timeout = 0; 9197 let propCount = 0; 9198 if (expectedType === TRANSITION) { 9199 if (transitionTimeout > 0) { 9200 type = TRANSITION; 9201 timeout = transitionTimeout; 9202 propCount = transitionDurations.length; 9203 } 9204 } else if (expectedType === ANIMATION) { 9205 if (animationTimeout > 0) { 9206 type = ANIMATION; 9207 timeout = animationTimeout; 9208 propCount = animationDurations.length; 9209 } 9210 } else { 9211 timeout = Math.max(transitionTimeout, animationTimeout); 9212 type = timeout > 0 ? transitionTimeout > animationTimeout ? TRANSITION : ANIMATION : null; 9213 propCount = type ? type === TRANSITION ? transitionDurations.length : animationDurations.length : 0; 9214 } 9215 const hasTransform = type === TRANSITION && /\b(transform|all)(,|$)/.test( 9216 getStyleProperties(`${TRANSITION}Property`).toString() 9217 ); 9218 return { 9219 type, 9220 timeout, 9221 propCount, 9222 hasTransform 9223 }; 9224} 9225function getTimeout(delays, durations) { 9226 while (delays.length < durations.length) { 9227 delays = delays.concat(delays); 9228 } 9229 return Math.max(...durations.map((d, i) => toMs(d) + toMs(delays[i]))); 9230} 9231function toMs(s) { 9232 if (s === "auto") return 0; 9233 return Number(s.slice(0, -1).replace(",", ".")) * 1e3; 9234} 9235function forceReflow() { 9236 return document.body.offsetHeight; 9237} 9238function patchClass(el, value, isSVG) { 9239 const transitionClasses = el[vtcKey]; 9240 if (transitionClasses) { 9241 value = (value ? [value, ...transitionClasses] : [...transitionClasses]).join(" "); 9242 } 9243 if (value == null) { 9244 el.removeAttribute("class"); 9245 } else if (isSVG) { 9246 el.setAttribute("class", value); 9247 } else { 9248 el.className = value; 9249 } 9250} 9251const vShowOriginalDisplay = Symbol("_vod"); 9252const vShowHidden = Symbol("_vsh"); 9253const vShow = { 9254 beforeMount(el, { value }, { transition }) { 9255 el[vShowOriginalDisplay] = el.style.display === "none" ? "" : el.style.display; 9256 if (transition && value) { 9257 transition.beforeEnter(el); 9258 } else { 9259 setDisplay(el, value); 9260 } 9261 }, 9262 mounted(el, { value }, { transition }) { 9263 if (transition && value) { 9264 transition.enter(el); 9265 } 9266 }, 9267 updated(el, { value, oldValue }, { transition }) { 9268 if (!value === !oldValue) return; 9269 if (transition) { 9270 if (value) { 9271 transition.beforeEnter(el); 9272 setDisplay(el, true); 9273 transition.enter(el); 9274 } else { 9275 transition.leave(el, () => { 9276 setDisplay(el, false); 9277 }); 9278 } 9279 } else { 9280 setDisplay(el, value); 9281 } 9282 }, 9283 beforeUnmount(el, { value }) { 9284 setDisplay(el, value); 9285 } 9286}; 9287function setDisplay(el, value) { 9288 el.style.display = value ? el[vShowOriginalDisplay] : "none"; 9289 el[vShowHidden] = !value; 9290} 9291function initVShowForSSR() { 9292 vShow.getSSRProps = ({ value }) => { 9293 if (!value) { 9294 return { style: { display: "none" } }; 9295 } 9296 }; 9297} 9298const CSS_VAR_TEXT = Symbol(""); 9299function useCssVars(getter) { 9300 const instance = getCurrentInstance(); 9301 if (!instance) { 9302 return; 9303 } 9304 const updateTeleports = instance.ut = (vars = getter(instance.proxy)) => { 9305 Array.from( 9306 document.querySelectorAll(`[data-v-owner="${instance.uid}"]`) 9307 ).forEach((node) => setVarsOnNode(node, vars)); 9308 }; 9309 const setVars = () => { 9310 const vars = getter(instance.proxy); 9311 if (instance.ce) { 9312 setVarsOnNode(instance.ce, vars); 9313 } else { 9314 setVarsOnVNode(instance.subTree, vars); 9315 } 9316 updateTeleports(vars); 9317 }; 9318 onBeforeUpdate(() => { 9319 queuePostFlushCb(setVars); 9320 }); 9321 onMounted(() => { 9322 watch(setVars, NOOP, { flush: "post" }); 9323 const ob = new MutationObserver(setVars); 9324 ob.observe(instance.subTree.el.parentNode, { childList: true }); 9325 onUnmounted(() => ob.disconnect()); 9326 }); 9327} 9328function setVarsOnVNode(vnode, vars) { 9329 if (vnode.shapeFlag & 128) { 9330 const suspense = vnode.suspense; 9331 vnode = suspense.activeBranch; 9332 if (suspense.pendingBranch && !suspense.isHydrating) { 9333 suspense.effects.push(() => { 9334 setVarsOnVNode(suspense.activeBranch, vars); 9335 }); 9336 } 9337 } 9338 while (vnode.component) { 9339 vnode = vnode.component.subTree; 9340 } 9341 if (vnode.shapeFlag & 1 && vnode.el) { 9342 setVarsOnNode(vnode.el, vars); 9343 } else if (vnode.type === Fragment) {
9344 vnode.children.forEach((c2) => setVarsOnVNode(c2, vars)); 9345 } else if (vnode.type === Static) { 9346 let { el, anchor } = vnode; 9347 while (el) { 9348 setVarsOnNode(el, vars); 9349 if (el === anchor) break; 9350 el = el.nextSibling; 9351 } 9352 } 9353} 9354function setVarsOnNode(el, vars) { 9355 if (el.nodeType === 1) { 9356 const style = el.style; 9357 let cssText = ""; 9358 for (const key in vars) { 9359 style.setProperty(`--${key}`, vars[key]); 9360 cssText += `--${key}: ${vars[key]};`; 9361 } 9362 style[CSS_VAR_TEXT] = cssText; 9363 } 9364} 9365const displayRE = /(^|;)\s*display\s*:/; 9366function patchStyle(el, prev, next) { 9367 const style = el.style; 9368 const isCssString = isString$1(next); 9369 let hasControlledDisplay = false; 9370 if (next && !isCssString) { 9371 if (prev) { 9372 if (!isString$1(prev)) { 9373 for (const key in prev) { 9374 if (next[key] == null) { 9375 setStyle(style, key, ""); 9376 } 9377 } 9378 } else { 9379 for (const prevStyle of prev.split(";")) { 9380 const key = prevStyle.slice(0, prevStyle.indexOf(":")).trim(); 9381 if (next[key] == null) { 9382 setStyle(style, key, ""); 9383 } 9384 } 9385 } 9386 } 9387 for (const key in next) { 9388 if (key === "display") { 9389 hasControlledDisplay = true; 9390 } 9391 setStyle(style, key, next[key]); 9392 } 9393 } else { 9394 if (isCssString) { 9395 if (prev !== next) { 9396 const cssVarText = style[CSS_VAR_TEXT]; 9397 if (cssVarText) { 9398 next += ";" + cssVarText; 9399 } 9400 style.cssText = next; 9401 hasControlledDisplay = displayRE.test(next); 9402 } 9403 } else if (prev) { 9404 el.removeAttribute("style"); 9405 } 9406 } 9407 if (vShowOriginalDisplay in el) { 9408 el[vShowOriginalDisplay] = hasControlledDisplay ? style.display : ""; 9409 if (el[vShowHidden]) { 9410 style.display = "none"; 9411 } 9412 } 9413} 9414const importantRE = /\s*!important$/; 9415function setStyle(style, name, val) { 9416 if (isArray$4(val)) { 9417 val.forEach((v2) => setStyle(style, name, v2)); 9418 } else { 9419 if (val == null) val = ""; 9420 if (name.startsWith("--")) { 9421 style.setProperty(name, val); 9422 } else { 9423 const prefixed = autoPrefix(style, name); 9424 if (importantRE.test(val)) { 9425 style.setProperty( 9426 hyphenate(prefixed), 9427 val.replace(importantRE, ""), 9428 "important" 9429 ); 9430 } else { 9431 style[prefixed] = val; 9432 } 9433 } 9434 } 9435} 9436const prefixes = ["Webkit", "Moz", "ms"]; 9437const prefixCache = {}; 9438function autoPrefix(style, rawName) { 9439 const cached = prefixCache[rawName]; 9440 if (cached) { 9441 return cached; 9442 } 9443 let name = camelize(rawName); 9444 if (name !== "filter" && name in style) { 9445 return prefixCache[rawName] = name; 9446 } 9447 name = capitalize$1(name); 9448 for (let i = 0; i < prefixes.length; i++) { 9449 const prefixed = prefixes[i] + name; 9450 if (prefixed in style) { 9451 return prefixCache[rawName] = prefixed; 9452 } 9453 } 9454 return rawName; 9455} 9456const xlinkNS = "http://www.w3.org/1999/xlink"; 9457function patchAttr(el, key, value, isSVG, instance, isBoolean2 = isSpecialBooleanAttr(key)) { 9458 if (isSVG && key.startsWith("xlink:")) { 9459 if (value == null) { 9460 el.removeAttributeNS(xlinkNS, key.slice(6, key.length)); 9461 } else { 9462 el.setAttributeNS(xlinkNS, key, value); 9463 } 9464 } else { 9465 if (value == null || isBoolean2 && !includeBooleanAttr(value)) { 9466 el.removeAttribute(key); 9467 } else { 9468 el.setAttribute( 9469 key, 9470 isBoolean2 ? "" : isSymbol$1(value) ? String(value) : value 9471 ); 9472 } 9473 } 9474} 9475function patchDOMProp(el, key, value, parentComponent, attrName) { 9476 if (key === "innerHTML" || key === "textContent") { 9477 if (value != null) { 9478 el[key] = key === "innerHTML" ? unsafeToTrustedHTML(value) : value; 9479 } 9480 return; 9481 } 9482 const tag = el.tagName; 9483 if (key === "value" && tag !== "PROGRESS" && // custom elements may use _value internally 9484 !tag.includes("-")) { 9485 const oldValue = tag === "OPTION" ? el.getAttribute("value") || "" : el.value; 9486 const newValue = value == null ? ( 9487 // #11647: value should be set as empty string for null and undefined, 9488 // but <input type="checkbox"> should be set as 'on'. 9489 el.type === "checkbox" ? "on" : "" 9490 ) : String(value); 9491 if (oldValue !== newValue || !("_value" in el)) { 9492 el.value = newValue; 9493 } 9494 if (value == null) { 9495 el.removeAttribute(key); 9496 } 9497 el._value = value; 9498 return; 9499 } 9500 let needRemove = false;
vendor: 2,661 bytes, lines 9501-9594
9501 if (value === "" || value == null) { 9502 const type = typeof el[key]; 9503 if (type === "boolean") { 9504 value = includeBooleanAttr(value); 9505 } else if (value == null && type === "string") { 9506 value = ""; 9507 needRemove = true; 9508 } else if (type === "number") { 9509 value = 0; 9510 needRemove = true; 9511 } 9512 } 9513 try { 9514 el[key] = value; 9515 } catch (e) { 9516 } 9517 needRemove && el.removeAttribute(attrName || key); 9518} 9519function addEventListener(el, event, handler, options) { 9520 el.addEventListener(event, handler, options); 9521} 9522function removeEventListener(el, event, handler, options) { 9523 el.removeEventListener(event, handler, options); 9524} 9525const veiKey = Symbol("_vei"); 9526function patchEvent(el, rawName, prevValue, nextValue, instance = null) { 9527 const invokers = el[veiKey] || (el[veiKey] = {}); 9528 const existingInvoker = invokers[rawName]; 9529 if (nextValue && existingInvoker) { 9530 existingInvoker.value = nextValue; 9531 } else { 9532 const [name, options] = parseName(rawName); 9533 if (nextValue) { 9534 const invoker = invokers[rawName] = createInvoker( 9535 nextValue, 9536 instance 9537 ); 9538 addEventListener(el, name, invoker, options); 9539 } else if (existingInvoker) { 9540 removeEventListener(el, name, existingInvoker, options); 9541 invokers[rawName] = void 0; 9542 } 9543 } 9544} 9545const optionsModifierRE = /(?:Once|Passive|Capture)$/; 9546function parseName(name) { 9547 let options; 9548 if (optionsModifierRE.test(name)) { 9549 options = {}; 9550 let m; 9551 while (m = name.match(optionsModifierRE)) { 9552 name = name.slice(0, name.length - m[0].length); 9553 options[m[0].toLowerCase()] = true; 9554 } 9555 } 9556 const event = name[2] === ":" ? name.slice(3) : hyphenate(name.slice(2)); 9557 return [event, options]; 9558} 9559let cachedNow = 0; 9560const p = /* @__PURE__ */ Promise.resolve(); 9561const getNow = () => cachedNow || (p.then(() => cachedNow = 0), cachedNow = Date.now()); 9562function createInvoker(initialValue, instance) { 9563 const invoker = (e) => { 9564 if (!e._vts) { 9565 e._vts = Date.now(); 9566 } else if (e._vts <= invoker.attached) { 9567 return; 9568 } 9569 callWithAsyncErrorHandling( 9570 patchStopImmediatePropagation(e, invoker.value), 9571 instance, 9572 5, 9573 [e] 9574 ); 9575 }; 9576 invoker.value = initialValue; 9577 invoker.attached = getNow(); 9578 return invoker; 9579} 9580function patchStopImmediatePropagation(e, value) { 9581 if (isArray$4(value)) { 9582 const originalStop = e.stopImmediatePropagation; 9583 e.stopImmediatePropagation = () => { 9584 originalStop.call(e); 9585 e._stopped = true; 9586 }; 9587 return value.map( 9588 (fn) => (e2) => !e2._stopped && fn && fn(e2) 9589 ); 9590 } else { 9591 return value; 9592 } 9593} 9594const isNativeOn = (key) =>
9594 key.charCodeAt(0) === 111 && key.charCodeAt(1) === 110 && // lowercase letter 9595key.charCodeAt(2) > 96 && key.charCodeAt(2) < 123; 9596const patchProp = (el, key, prevValue, nextValue, namespace, parentComponent) => { 9597 const isSVG = namespace === "svg"; 9598 if (key === "class") { 9599 patchClass(el, nextValue, isSVG); 9600 } else if (key === "style") { 9601 patchStyle(el, prevValue, nextValue); 9602 } else if (isOn(key)) { 9603 if (!isModelListener(key)) { 9604 patchEvent(el, key, prevValue, nextValue, parentComponent); 9605 } 9606 } else if (key[0] === "." ? (key = key.slice(1), true) : key[0] === "^" ? (key = key.slice(1), false) : shouldSetAsProp(el, key, nextValue, isSVG)) { 9607 patchDOMProp(el, key, nextValue); 9608 if (!el.tagName.includes("-") && (key === "value" || key === "checked" || key === "selected")) { 9609 patchAttr(el, key, nextValue, isSVG, parentComponent, key !== "value"); 9610 } 9611 } else if ( 9612 // #11081 force set props for possible async custom element 9613 el._isVueCE && (/[A-Z]/.test(key) || !isString$1(nextValue)) 9614 ) { 9615 patchDOMProp(el, camelize(key), nextValue, parentComponent, key); 9616 } else { 9617 if (key === "true-value") { 9618 el._trueValue = nextValue; 9619 } else if (key === "false-value") { 9620 el._falseValue = nextValue; 9621 } 9622 patchAttr(el, key, nextValue, isSVG); 9623 } 9624}; 9625function shouldSetAsProp(el, key, value, isSVG) { 9626 if (isSVG) { 9627 if (key === "innerHTML" || key === "textContent") { 9628 return true; 9629 } 9630 if (key in el && isNativeOn(key) && isFunction$4(value)) { 9631 return true; 9632 } 9633 return false; 9634 } 9635 if (key === "spellcheck" || key === "draggable" || key === "translate") { 9636 return false; 9637 } 9638 if (key === "form") { 9639 return false; 9640 } 9641 if (key === "list" && el.tagName === "INPUT") { 9642 return false; 9643 } 9644 if (key === "type" && el.tagName === "TEXTAREA") { 9645 return false; 9646 } 9647 if (key === "width" || key === "height") { 9648 const tag = el.tagName; 9649 if (tag === "IMG" || tag === "VIDEO" || tag === "CANVAS" || tag === "SOURCE") { 9650 return false; 9651 } 9652 } 9653 if (isNativeOn(key) && isString$1(value)) { 9654 return false; 9655 } 9656 return key in el; 9657} 9658const REMOVAL = {}; 9659/*! #__NO_SIDE_EFFECTS__ */ 9660// @__NO_SIDE_EFFECTS__ 9661function defineCustomElement(options, extraOptions, _createApp) { 9662 const Comp = /* @__PURE__ */ defineComponent(options, extraOptions); 9663 if (isPlainObject$4(Comp)) extend$1(Comp, extraOptions); 9664 class VueCustomElement extends VueElement { 9665 constructor(initialProps) { 9666 super(Comp, initialProps, _createApp); 9667 } 9668 } 9669 VueCustomElement.def = Comp; 9670 return VueCustomElement; 9671} 9672/*! #__NO_SIDE_EFFECTS__ */ 9673const defineSSRCustomElement = /* @__NO_SIDE_EFFECTS__ */ (options, extraOptions) => { 9674 return /* @__PURE__ */ defineCustomElement(options, extraOptions, createSSRApp); 9675}; 9676const BaseClass = typeof HTMLElement !== "undefined" ? HTMLElement : class { 9677}; 9678class VueElement extends BaseClass { 9679 constructor(_def, _props = {}, _createApp = createApp) { 9680 super(); 9681 this._def = _def; 9682 this._props = _props; 9683 this._createApp = _createApp; 9684 this._isVueCE = true; 9685 this._instance = null; 9686 this._app = null; 9687 this._nonce = this._def.nonce; 9688 this._connected = false; 9689 this._resolved = false; 9690 this._numberProps = null; 9691 this._styleChildren = /* @__PURE__ */ new WeakSet(); 9692 this._ob = null; 9693 if (this.shadowRoot && _createApp !== createApp) { 9694 this._root = this.shadowRoot; 9695 } else { 9696 if (_def.shadowRoot !== false) { 9697 this.attachShadow({ mode: "open" }); 9698 this._root = this.shadowRoot; 9699 } else { 9700 this._root = this; 9701 } 9702 } 9703 if (!this._def.__asyncLoader) { 9704 this._resolveProps(this._def); 9705 } 9706 } 9707 connectedCallback() { 9708 if (!this.isConnected) return; 9709 if (!this.shadowRoot) { 9710 this._parseSlots(); 9711 } 9712 this._connected = true; 9713 let parent = this; 9714 while (parent = parent && (parent.parentNode || parent.host)) { 9715 if (parent instanceof VueElement) { 9716 this._parent = parent; 9717 break; 9718 } 9719 } 9720 if (!this._instance) { 9721 if (this._resolved) { 9722 this._setParent(); 9723 this._update(); 9724 } else { 9725 if (parent && parent._pendingResolve) { 9726 this._pendingResolve = parent._pendingResolve.then(() => { 9727 this._pendingResolve = void 0; 9728 this._resolveDef(); 9729 }); 9730 } else { 9731 this._resolveDef(); 9732 } 9733 } 9734 } 9735 } 9736 _setParent(parent = this._parent) { 9737 if (parent) { 9738 this._instance.parent = parent._instance; 9739 this._instance.provides = parent._instance.provides; 9740 } 9741 } 9742 disconnectedCallback() { 9743 this._connected = false;
9744 nextTick(() => { 9745 if (!this._connected) { 9746 if (this._ob) { 9747 this._ob.disconnect(); 9748 this._ob = null; 9749 } 9750 this._app && this._app.unmount(); 9751 if (this._instance) this._instance.ce = void 0; 9752 this._app = this._instance = null; 9753 } 9754 }); 9755 } 9756 /** 9757 * resolve inner component definition (handle possible async component) 9758 */ 9759 _resolveDef() { 9760 if (this._pendingResolve) { 9761 return; 9762 } 9763 for (let i = 0; i < this.attributes.length; i++) { 9764 this._setAttr(this.attributes[i].name); 9765 } 9766 this._ob = new MutationObserver((mutations) => { 9767 for (const m of mutations) { 9768 this._setAttr(m.attributeName); 9769 } 9770 }); 9771 this._ob.observe(this, { attributes: true }); 9772 const resolve2 = (def2, isAsync = false) => { 9773 this._resolved = true; 9774 this._pendingResolve = void 0; 9775 const { props, styles } = def2; 9776 let numberProps; 9777 if (props && !isArray$4(props)) { 9778 for (const key in props) { 9779 const opt = props[key]; 9780 if (opt === Number || opt && opt.type === Number) { 9781 if (key in this._props) { 9782 this._props[key] = toNumber$2(this._props[key]); 9783 } 9784 (numberProps || (numberProps = /* @__PURE__ */ Object.create(null)))[camelize(key)] = true; 9785 } 9786 } 9787 } 9788 this._numberProps = numberProps; 9789 if (isAsync) { 9790 this._resolveProps(def2); 9791 } 9792 if (this.shadowRoot) { 9793 this._applyStyles(styles); 9794 } 9795 this._mount(def2); 9796 }; 9797 const asyncDef = this._def.__asyncLoader; 9798 if (asyncDef) { 9799 this._pendingResolve = asyncDef().then( 9800 (def2) => resolve2(this._def = def2, true) 9801 ); 9802 } else { 9803 resolve2(this._def); 9804 } 9805 } 9806 _mount(def2) { 9807 this._app = this._createApp(def2); 9808 if (def2.configureApp) { 9809 def2.configureApp(this._app); 9810 } 9811 this._app._ceVNode = this._createVNode(); 9812 this._app.mount(this._root); 9813 const exposed = this._instance && this._instance.exposed; 9814 if (!exposed) return; 9815 for (const key in exposed) { 9816 if (!hasOwn(this, key)) { 9817 Object.defineProperty(this, key, { 9818 // unwrap ref to be consistent with public instance behavior 9819 get: () => unref(exposed[key]) 9820 }); 9821 } 9822 } 9823 } 9824 _resolveProps(def2) { 9825 const { props } = def2; 9826 const declaredPropKeys = isArray$4(props) ? props : Object.keys(props || {}); 9827 for (const key of Object.keys(this)) { 9828 if (key[0] !== "_" && declaredPropKeys.includes(key)) { 9829 this._setProp(key, this[key]); 9830 } 9831 } 9832 for (const key of declaredPropKeys.map(camelize)) { 9833 Object.defineProperty(this, key, { 9834 get() { 9835 return this._getProp(key); 9836 }, 9837 set(val) { 9838 this._setProp(key, val, true, true); 9839 } 9840 }); 9841 } 9842 } 9843 _setAttr(key) { 9844 if (key.startsWith("data-v-")) return; 9845 const has = this.hasAttribute(key); 9846 let value = has ? this.getAttribute(key) : REMOVAL; 9847 const camelKey = camelize(key); 9848 if (has && this._numberProps && this._numberProps[camelKey]) { 9849 value = toNumber$2(value); 9850 } 9851 this._setProp(camelKey, value, false, true); 9852 } 9853 /** 9854 * @internal 9855 */ 9856 _getProp(key) { 9857 return this._props[key]; 9858 } 9859 /** 9860 * @internal 9861 */ 9862 _setProp(key, val, shouldReflect = true, shouldUpdate = false) { 9863 if (val !== this._props[key]) { 9864 if (val === REMOVAL) { 9865 delete this._props[key]; 9866 } else { 9867 this._props[key] = val; 9868 if (key === "key" && this._app) { 9869 this._app._ceVNode.key = val; 9870 } 9871 } 9872 if (shouldUpdate && this._instance) { 9873 this._update(); 9874 } 9875 if (shouldReflect) { 9876 const ob = this._ob; 9877 ob && ob.disconnect(); 9878 if (val === true) { 9879 this.setAttribute(hyphenate(key), ""); 9880 } else if (typeof val === "string" || typeof val === "number") { 9881 this.setAttribute(hyphenate(key), val + ""); 9882 } else if (!val) { 9883 this.removeAttribute(hyphenate(key)); 9884 } 9885 ob && ob.observe(this, { attributes: true }); 9886 } 9887 } 9888 } 9889 _update() { 9890 render(this._createVNode(), this._root); 9891 } 9892 _createVNode() { 9893 const baseProps = {}; 9894 if (!this.shadowRoot) { 9895 baseProps.onVnodeMounted = baseProps.onVnodeUpdated = this._renderSlots.bind(this); 9896 } 9897 const vnode = createVNode(this._def, extend$1(baseProps, this._props)); 9898 if (!this._instance) { 9899 vnode.ce = (instance) => { 9900 this._instance = instance; 9901 instance.ce = this; 9902 instance.isCE = true; 9903 const dispatch2 = (event, args) => { 9904 this.dispatchEvent( 9905 new CustomEvent( 9906 event, 9907 isPlainObject$4(args[0]) ? extend$1({ detail: args }, args[0]) : { detail: args } 9908 ) 9909 ); 9910 }; 9911 instance.emit = (event, ...args) => { 9912 dispatch2(event, args); 9913 if (hyphenate(event) !== event) { 9914 dispatch2(hyphenate(event), args); 9915 } 9916 }; 9917 this._setParent(); 9918 }; 9919 } 9920 return vnode; 9921 } 9922 _applyStyles(styles, owner) { 9923 if (!styles) return; 9924 if (owner) { 9925 if (owner === this._def || this._styleChildren.has(owner)) { 9926 return; 9927 } 9928 this._styleChildren.add(owner); 9929 } 9930 const nonce = this._nonce; 9931 for (let i = styles.length - 1; i >= 0; i--) { 9932 const s = document.createElement("style"); 9933 if (nonce) s.setAttribute("nonce", nonce); 9934 s.textContent = styles[i];
9935 this.shadowRoot.prepend(s); 9936 } 9937 } 9938 /** 9939 * Only called when shadowRoot is false 9940 */ 9941 _parseSlots() { 9942 const slots = this._slots = {}; 9943 let n; 9944 while (n = this.firstChild) { 9945 const slotName = n.nodeType === 1 && n.getAttribute("slot") || "default"; 9946 (slots[slotName] || (slots[slotName] = [])).push(n); 9947 this.removeChild(n); 9948 } 9949 } 9950 /** 9951 * Only called when shadowRoot is false 9952 */ 9953 _renderSlots() { 9954 const outlets = (this._teleportTarget || this).querySelectorAll("slot"); 9955 const scopeId = this._instance.type.__scopeId; 9956 for (let i = 0; i < outlets.length; i++) { 9957 const o = outlets[i]; 9958 const slotName = o.getAttribute("name") || "default"; 9959 const content = this._slots[slotName]; 9960 const parent = o.parentNode; 9961 if (content) { 9962 for (const n of content) { 9963 if (scopeId && n.nodeType === 1) { 9964 const id = scopeId + "-s"; 9965 const walker = document.createTreeWalker(n, 1); 9966 n.setAttribute(id, ""); 9967 let child; 9968 while (child = walker.nextNode()) { 9969 child.setAttribute(id, ""); 9970 } 9971 } 9972 parent.insertBefore(n, o); 9973 } 9974 } else { 9975 while (o.firstChild) parent.insertBefore(o.firstChild, o); 9976 } 9977 parent.removeChild(o); 9978 } 9979 } 9980 /** 9981 * @internal 9982 */ 9983 _injectChildStyle(comp) { 9984 this._applyStyles(comp.styles, comp); 9985 } 9986 /** 9987 * @internal 9988 */ 9989 _removeChildStyle(comp) { 9990 } 9991} 9992function useHost(caller) { 9993 const instance = getCurrentInstance(); 9994 const el = instance && instance.ce; 9995 if (el) { 9996 return el; 9997 } 9998 return null; 9999} 10000function useShadowRoot() { 10001 const el = useHost(); 10002 return el && el.shadowRoot; 10003} 10004function useCssModule(name = "$style") { 10005 { 10006 const instance = getCurrentInstance(); 10007 if (!instance) { 10008 return EMPTY_OBJ; 10009 } 10010 const modules = instance.type.__cssModules; 10011 if (!modules) { 10012 return EMPTY_OBJ; 10013 } 10014 const mod = modules[name]; 10015 if (!mod) { 10016 return EMPTY_OBJ; 10017 } 10018 return mod; 10019 } 10020} 10021const positionMap = /* @__PURE__ */ new WeakMap(); 10022const newPositionMap = /* @__PURE__ */ new WeakMap(); 10023const moveCbKey = Symbol("_moveCb"); 10024const enterCbKey = Symbol("_enterCb"); 10025const decorate = (t) => { 10026 delete t.props.mode; 10027 return t; 10028}; 10029const TransitionGroupImpl = /* @__PURE__ */ decorate({ 10030 name: "TransitionGroup", 10031 props: /* @__PURE__ */ extend$1({}, TransitionPropsValidators, { 10032 tag: String, 10033 moveClass: String 10034 }), 10035 setup(props, { slots }) { 10036 const instance = getCurrentInstance(); 10037 const state = useTransitionState(); 10038 let prevChildren; 10039 let children; 10040 onUpdated(() => { 10041 if (!prevChildren.length) { 10042 return; 10043 } 10044 const moveClass = props.moveClass || `${props.name || "v"}-move`; 10045 if (!hasCSSTransform( 10046 prevChildren[0].el, 10047 instance.vnode.el, 10048 moveClass 10049 )) { 10050 return; 10051 } 10052 prevChildren.forEach(callPendingCbs); 10053 prevChildren.forEach(recordPosition); 10054 const movedChildren = prevChildren.filter(applyTranslation); 10055 forceReflow(); 10056 movedChildren.forEach((c2) => { 10057 const el = c2.el; 10058 const style = el.style; 10059 addTransitionClass(el, moveClass); 10060 style.transform = style.webkitTransform = style.transitionDuration = ""; 10061 const cb = el[moveCbKey] = (e) => { 10062 if (e && e.target !== el) { 10063 return; 10064 } 10065 if (!e || /transform$/.test(e.propertyName)) { 10066 el.removeEventListener("transitionend", cb); 10067 el[moveCbKey] = null; 10068 removeTransitionClass(el, moveClass); 10069 } 10070 }; 10071 el.addEventListener("transitionend", cb); 10072 }); 10073 }); 10074 return () => { 10075 const rawProps = toRaw(props); 10076 const cssTransitionProps = resolveTransitionProps(rawProps); 10077 let tag = rawProps.tag || Fragment; 10078 prevChildren = []; 10079 if (children) { 10080 for (let i = 0; i < children.length; i++) { 10081 const child = children[i]; 10082 if (child.el && child.el instanceof Element) { 10083 prevChildren.push(child); 10084 setTransitionHooks( 10085 child, 10086 resolveTransitionHooks( 10087 child, 10088 cssTransitionProps, 10089 state, 10090 instance 10091 ) 10092 ); 10093 positionMap.set( 10094 child, 10095 child.el.getBoundingClientRect() 10096 ); 10097 } 10098 } 10099 } 10100 children = slots.default ? getTransitionRawChildren(slots.default()) : []; 10101 for (let i = 0; i < children.length; i++) { 10102 const child = children[i]; 10103 if (child.key != null) { 10104 setTransitionHooks( 10105 child, 10106 resolveTransitionHooks(child, cssTransitionProps, state, instance) 10107 ); 10108 } 10109 } 10110 return createVNode(tag, null, children); 10111 }; 10112 } 10113}); 10114const TransitionGroup = TransitionGroupImpl; 10115function callPendingCbs(c2) { 10116 const el = c2.el; 10117 if (el[moveCbKey]) { 10118 el[moveCbKey](); 10119 } 10120 if (el[enterCbKey]) { 10121 el[enterCbKey](); 10122 } 10123} 10124function recordPosition(c2) { 10125 newPositionMap.set(c2, c2.el.getBoundingClientRect()); 10126} 10127function applyTranslation(c2) { 10128 const oldPos = positionMap.get(c2); 10129 const newPos = newPositionMap.get(c2); 10130 const dx = oldPos.left - newPos.left; 10131 const dy = oldPos.top - newPos.top; 10132 if (dx || dy) { 10133 const s = c2.el.style; 10134 s.transform = s.webkitTransform = `translate(${dx}px,${dy}px)`; 10135 s.transitionDuration = "0s"; 10136 return c2; 10137 } 10138} 10139function hasCSSTransform(el, root2, moveClass) { 10140 const clone = el.cloneNode(); 10141 const _vtc = el[vtcKey]; 10142 if (_vtc) {
10143 _vtc.forEach((cls) => { 10144 cls.split(/\s+/).forEach((c2) => c2 && clone.classList.remove(c2)); 10145 }); 10146 } 10147 moveClass.split(/\s+/).forEach((c2) => c2 && clone.classList.add(c2)); 10148 clone.style.display = "none"; 10149 const container = root2.nodeType === 1 ? root2 : root2.parentNode; 10150 container.appendChild(clone); 10151 const { hasTransform } = getTransitionInfo(clone); 10152 container.removeChild(clone); 10153 return hasTransform; 10154} 10155const getModelAssigner = (vnode) => { 10156 const fn = vnode.props["onUpdate:modelValue"] || false; 10157 return isArray$4(fn) ? (value) => invokeArrayFns(fn, value) : fn; 10158}; 10159function onCompositionStart(e) { 10160 e.target.composing = true; 10161} 10162function onCompositionEnd(e) { 10163 const target = e.target; 10164 if (target.composing) { 10165 target.composing = false; 10166 target.dispatchEvent(new Event("input")); 10167 } 10168} 10169const assignKey = Symbol("_assign"); 10170const vModelText = { 10171 created(el, { modifiers: { lazy, trim: trim2, number } }, vnode) { 10172 el[assignKey] = getModelAssigner(vnode); 10173 const castToNumber = number || vnode.props && vnode.props.type === "number"; 10174 addEventListener(el, lazy ? "change" : "input", (e) => { 10175 if (e.target.composing) return; 10176 let domValue = el.value; 10177 if (trim2) { 10178 domValue = domValue.trim(); 10179 } 10180 if (castToNumber) { 10181 domValue = looseToNumber(domValue); 10182 } 10183 el[assignKey](domValue); 10184 }); 10185 if (trim2) { 10186 addEventListener(el, "change", () => { 10187 el.value = el.value.trim(); 10188 }); 10189 } 10190 if (!lazy) { 10191 addEventListener(el, "compositionstart", onCompositionStart); 10192 addEventListener(el, "compositionend", onCompositionEnd); 10193 addEventListener(el, "change", onCompositionEnd); 10194 } 10195 }, 10196 // set value on mounted so it's after min/max for type="range" 10197 mounted(el, { value }) { 10198 el.value = value == null ? "" : value; 10199 }, 10200 beforeUpdate(el, { value, oldValue, modifiers: { lazy, trim: trim2, number } }, vnode) { 10201 el[assignKey] = getModelAssigner(vnode); 10202 if (el.composing) return; 10203 const elValue = (number || el.type === "number") && !/^0\d/.test(el.value) ? looseToNumber(el.value) : el.value; 10204 const newValue = value == null ? "" : value; 10205 if (elValue === newValue) { 10206 return; 10207 } 10208 if (document.activeElement === el && el.type !== "range") { 10209 if (lazy && value === oldValue) { 10210 return; 10211 } 10212 if (trim2 && el.value.trim() === newValue) { 10213 return; 10214 } 10215 } 10216 el.value = newValue; 10217 } 10218}; 10219const vModelCheckbox = { 10220 // #4096 array checkboxes need to be deep traversed 10221 deep: true, 10222 created(el, _, vnode) { 10223 el[assignKey] = getModelAssigner(vnode); 10224 addEventListener(el, "change", () => { 10225 const modelValue = el._modelValue; 10226 const elementValue = getValue$1(el); 10227 const checked = el.checked; 10228 const assign2 = el[assignKey]; 10229 if (isArray$4(modelValue)) { 10230 const index2 = looseIndexOf(modelValue, elementValue); 10231 const found = index2 !== -1; 10232 if (checked && !found) { 10233 assign2(modelValue.concat(elementValue)); 10234 } else if (!checked && found) { 10235 const filtered = [...modelValue]; 10236 filtered.splice(index2, 1); 10237 assign2(filtered); 10238 } 10239 } else if (isSet$1(modelValue)) { 10240 const cloned = new Set(modelValue); 10241 if (checked) { 10242 cloned.add(elementValue); 10243 } else { 10244 cloned.delete(elementValue); 10245 } 10246 assign2(cloned); 10247 } else { 10248 assign2(getCheckboxValue(el, checked)); 10249 } 10250 }); 10251 }, 10252 // set initial checked on mount to wait for true-value/false-value 10253 mounted: setChecked, 10254 beforeUpdate(el, binding, vnode) { 10255 el[assignKey] = getModelAssigner(vnode); 10256 setChecked(el, binding, vnode); 10257 } 10258}; 10259function setChecked(el, { value, oldValue }, vnode) { 10260 el._modelValue = value; 10261 let checked; 10262 if (isArray$4(value)) { 10263 checked = looseIndexOf(value, vnode.props.value) > -1; 10264 } else if (isSet$1(value)) { 10265 checked = value.has(vnode.props.value); 10266 } else { 10267 if (value === oldValue) return; 10268 checked = looseEqual(value, getCheckboxValue(el, true)); 10269 } 10270 if (el.checked !== checked) { 10271 el.checked = checked; 10272 } 10273} 10274const vModelRadio = { 10275 created(el, { value }, vnode) { 10276 el.checked = looseEqual(value, vnode.props.value); 10277 el[assignKey] = getModelAssigner(vnode); 10278 addEventListener(el, "change", () => { 10279 el[assignKey](getValue$1(el)); 10280 }); 10281 }, 10282 beforeUpdate(el, { value, oldValue }, vnode) { 10283 el[assignKey] = getModelAssigner(vnode); 10284 if (value !== oldValue) { 10285 el.checked = looseEqual(value, vnode.props.value); 10286 } 10287 } 10288}; 10289const vModelSelect = { 10290 // <select multiple> value need to be deep traversed 10291 deep: true, 10292 created(el, { value, modifiers: { number } }, vnode) { 10293 const isSetModel = isSet$1(value); 10294 addEventListener(el, "change", () => { 10295 const selectedVal = Array.prototype.filter.call(el.options, (o) => o.selected).map( 10296 (o) =>
10296 number ? looseToNumber(getValue$1(o)) : getValue$1(o) 10297 ); 10298 el[assignKey]( 10299 el.multiple ? isSetModel ? new Set(selectedVal) : selectedVal : selectedVal[0] 10300 ); 10301 el._assigning = true; 10302 nextTick(() => { 10303 el._assigning = false; 10304 }); 10305 }); 10306 el[assignKey] = getModelAssigner(vnode); 10307 }, 10308 // set value in mounted & updated because <select> relies on its children 10309 // <option>s. 10310 mounted(el, { value }) { 10311 setSelected(el, value); 10312 }, 10313 beforeUpdate(el, _binding, vnode) { 10314 el[assignKey] = getModelAssigner(vnode); 10315 }, 10316 updated(el, { value }) { 10317 if (!el._assigning) { 10318 setSelected(el, value); 10319 } 10320 } 10321}; 10322function setSelected(el, value) { 10323 const isMultiple = el.multiple; 10324 const isArrayValue = isArray$4(value); 10325 if (isMultiple && !isArrayValue && !isSet$1(value)) { 10326 return; 10327 } 10328 for (let i = 0, l3 = el.options.length; i < l3; i++) { 10329 const option = el.options[i]; 10330 const optionValue = getValue$1(option); 10331 if (isMultiple) { 10332 if (isArrayValue) { 10333 const optionType = typeof optionValue; 10334 if (optionType === "string" || optionType === "number") { 10335 option.selected = value.some((v2) => String(v2) === String(optionValue)); 10336 } else { 10337 option.selected = looseIndexOf(value, optionValue) > -1; 10338 } 10339 } else { 10340 option.selected = value.has(optionValue); 10341 } 10342 } else if (looseEqual(getValue$1(option), value)) { 10343 if (el.selectedIndex !== i) el.selectedIndex = i; 10344 return; 10345 } 10346 } 10347 if (!isMultiple && el.selectedIndex !== -1) { 10348 el.selectedIndex = -1; 10349 } 10350} 10351function getValue$1(el) { 10352 return "_value" in el ? el._value : el.value; 10353} 10354function getCheckboxValue(el, checked) { 10355 const key = checked ? "_trueValue" : "_falseValue"; 10356 return key in el ? el[key] : checked; 10357} 10358const vModelDynamic = { 10359 created(el, binding, vnode) { 10360 callModelHook(el, binding, vnode, null, "created"); 10361 }, 10362 mounted(el, binding, vnode) { 10363 callModelHook(el, binding, vnode, null, "mounted"); 10364 }, 10365 beforeUpdate(el, binding, vnode, prevVNode) { 10366 callModelHook(el, binding, vnode, prevVNode, "beforeUpdate"); 10367 }, 10368 updated(el, binding, vnode, prevVNode) { 10369 callModelHook(el, binding, vnode, prevVNode, "updated"); 10370 } 10371}; 10372function resolveDynamicModel(tagName, type) { 10373 switch (tagName) { 10374 case "SELECT": 10375 return vModelSelect; 10376 case "TEXTAREA": 10377 return vModelText; 10378 default: 10379 switch (type) { 10380 case "checkbox": 10381 return vModelCheckbox; 10382 case "radio": 10383 return vModelRadio; 10384 default: 10385 return vModelText; 10386 } 10387 } 10388} 10389function callModelHook(el, binding, vnode, prevVNode, hook) { 10390 const modelToUse = resolveDynamicModel( 10391 el.tagName, 10392 vnode.props && vnode.props.type 10393 ); 10394 const fn = modelToUse[hook]; 10395 fn && fn(el, binding, vnode, prevVNode); 10396} 10397function initVModelForSSR() { 10398 vModelText.getSSRProps = ({ value }) => ({ value }); 10399 vModelRadio.getSSRProps = ({ value }, vnode) => { 10400 if (vnode.props && looseEqual(vnode.props.value, value)) { 10401 return { checked: true }; 10402 } 10403 }; 10404 vModelCheckbox.getSSRProps = ({ value }, vnode) => { 10405 if (isArray$4(value)) { 10406 if (vnode.props && looseIndexOf(value, vnode.props.value) > -1) { 10407 return { checked: true }; 10408 } 10409 } else if (isSet$1(value)) { 10410 if (vnode.props && value.has(vnode.props.value)) { 10411 return { checked: true }; 10412 } 10413 } else if (value) { 10414 return { checked: true }; 10415 } 10416 }; 10417 vModelDynamic.getSSRProps = (binding, vnode) => { 10418 if (typeof vnode.type !== "string") { 10419 return; 10420 } 10421 const modelToUse = resolveDynamicModel( 10422 // resolveDynamicModel expects an uppercase tag name, but vnode.type is lowercase 10423 vnode.type.toUpperCase(), 10424 vnode.props && vnode.props.type 10425 ); 10426 if (modelToUse.getSSRProps) { 10427 return modelToUse.getSSRProps(binding, vnode); 10428 } 10429 }; 10430} 10431const systemModifiers = ["ctrl", "shift", "alt", "meta"]; 10432const modifierGuards = { 10433 stop: (e) => e.stopPropagation(), 10434 prevent: (e) => e.preventDefault(), 10435 self: (e) => e.target !== e.currentTarget, 10436 ctrl: (e) => !e.ctrlKey, 10437 shift: (e) => !e.shiftKey, 10438 alt: (e) => !e.altKey, 10439 meta: (e) => !e.metaKey, 10440 left: (e) => "button" in e && e.button !== 0, 10441 middle: (e) => "button" in e && e.button !== 1, 10442 right: (e) => "button" in e && e.button !== 2, 10443 exact: (e, modifiers) => systemModifiers.some((m) => e[`${m}Key`] && !modifiers.includes(m)) 10444}; 10445const withModifiers = (fn, modifiers) => { 10446 const cache = fn._withMods || (fn._withMods = {}); 10447 const cacheKey = modifiers.join("."); 10448 return cache[cacheKey] || (cache[cacheKey] = (event, ...args) => { 10449 for (let i = 0; i < modifiers.length; i++) { 10450 const guard = modifierGuards[modifiers[i]]; 10451 if (guard && guard(event, modifiers)) return; 10452 } 10453 return fn(event, ...args); 10454 }); 10455}; 10456const keyNames = { 10457 esc: "escape", 10458 space: " ", 10459 up: "arrow-up", 10460 left: "arrow-left", 10461 right: "arrow-right", 10462 down: "arrow-down", 10463 delete: "backspace" 10464}; 10465const withKeys = (fn, modifiers) => { 10466 const cache = fn._withKeys || (fn._withKeys = {}); 10467 const cacheKey = modifiers.join("."); 10468 return cache[cacheKey] || (cache[cacheKey] = (event) => { 10469 if (!("key" in event)) { 10470 return; 10471 } 10472 const eventKey = hyphenate(event.key); 10473 if (modifiers.some( 10474 (k3) =>
10474 k3 === eventKey || keyNames[k3] === eventKey 10475 )) { 10476 return fn(event); 10477 } 10478 }); 10479}; 10480const rendererOptions = /* @__PURE__ */ extend$1({ patchProp }, nodeOps); 10481let renderer; 10482let enabledHydration = false; 10483function ensureRenderer() { 10484 return renderer || (renderer = createRenderer(rendererOptions)); 10485} 10486function ensureHydrationRenderer() { 10487 renderer = enabledHydration ? renderer : createHydrationRenderer(rendererOptions); 10488 enabledHydration = true; 10489 return renderer; 10490} 10491const render = (...args) => { 10492 ensureRenderer().render(...args); 10493}; 10494const hydrate = (...args) => { 10495 ensureHydrationRenderer().hydrate(...args); 10496}; 10497const createApp = (...args) => { 10498 const app = ensureRenderer().createApp(...args); 10499 const { mount } = app; 10500 app.mount = (containerOrSelector) => { 10501 const container = normalizeContainer(containerOrSelector); 10502 if (!container) return; 10503 const component = app._component; 10504 if (!isFunction$4(component) && !component.render && !component.template) { 10505 component.template = container.innerHTML; 10506 } 10507 if (container.nodeType === 1) { 10508 container.textContent = ""; 10509 } 10510 const proxy = mount(container, false, resolveRootNamespace(container)); 10511 if (container instanceof Element) { 10512 container.removeAttribute("v-cloak"); 10513 container.setAttribute("data-v-app", ""); 10514 } 10515 return proxy; 10516 }; 10517 return app; 10518}; 10519const createSSRApp = (...args) => { 10520 const app = ensureHydrationRenderer().createApp(...args); 10521 const { mount } = app; 10522 app.mount = (containerOrSelector) => { 10523 const container = normalizeContainer(containerOrSelector); 10524 if (container) { 10525 return mount(container, true, resolveRootNamespace(container)); 10526 } 10527 }; 10528 return app; 10529}; 10530function resolveRootNamespace(container) { 10531 if (container instanceof SVGElement) { 10532 return "svg"; 10533 } 10534 if (typeof MathMLElement === "function" && container instanceof MathMLElement) { 10535 return "mathml"; 10536 } 10537} 10538function normalizeContainer(container) { 10539 if (isString$1(container)) { 10540 const res = document.querySelector(container); 10541 return res; 10542 } 10543 return container; 10544} 10545let ssrDirectiveInitialized = false; 10546const initDirectivesForSSR = () => { 10547 if (!ssrDirectiveInitialized) { 10548 ssrDirectiveInitialized = true; 10549 initVModelForSSR(); 10550 initVShowForSSR(); 10551 } 10552}; 10553const runtimeDom_esmBundler = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 10554 __proto__: null, 10555 BaseTransition, 10556 BaseTransitionPropsValidators, 10557 Comment, 10558 DeprecationTypes, 10559 EffectScope, 10560 ErrorCodes, 10561 ErrorTypeStrings, 10562 Fragment, 10563 KeepAlive, 10564 ReactiveEffect, 10565 Static, 10566 Suspense, 10567 Teleport, 10568 Text, 10569 TrackOpTypes, 10570 Transition, 10571 TransitionGroup, 10572 TriggerOpTypes, 10573 VueElement, 10574 assertNumber, 10575 callWithAsyncErrorHandling, 10576 callWithErrorHandling, 10577 camelize, 10578 capitalize: capitalize$1, 10579 cloneVNode, 10580 compatUtils, 10581 computed, 10582 createApp, 10583 createBlock, 10584 createCommentVNode, 10585 createElementBlock, 10586 createElementVNode: createBaseVNode, 10587 createHydrationRenderer, 10588 createPropsRestProxy, 10589 createRenderer, 10590 createSSRApp, 10591 createSlots, 10592 createStaticVNode, 10593 createTextVNode, 10594 createVNode, 10595 customRef, 10596 defineAsyncComponent, 10597 defineComponent, 10598 defineCustomElement, 10599 defineEmits, 10600 defineExpose, 10601 defineModel, 10602 defineOptions, 10603 defineProps, 10604 defineSSRCustomElement, 10605 defineSlots, 10606 devtools, 10607 effect, 10608 effectScope, 10609 getCurrentInstance, 10610 getCurrentScope, 10611 getCurrentWatcher, 10612 getTransitionRawChildren, 10613 guardReactiveProps, 10614 h, 10615 handleError, 10616 hasInjectionContext, 10617 hydrate, 10618 hydrateOnIdle, 10619 hydrateOnInteraction, 10620 hydrateOnMediaQuery, 10621 hydrateOnVisible, 10622 initCustomFormatter, 10623 initDirectivesForSSR, 10624 inject, 10625 isMemoSame, 10626 isProxy, 10627 isReactive, 10628 isReadonly, 10629 isRef, 10630 isRuntimeOnly, 10631 isShallow, 10632 isVNode, 10633 markRaw, 10634 mergeDefaults, 10635 mergeModels, 10636 mergeProps, 10637 nextTick, 10638 normalizeClass, 10639 normalizeProps: normalizeProps$1, 10640 normalizeStyle, 10641 onActivated, 10642 onBeforeMount, 10643 onBeforeUnmount, 10644 onBeforeUpdate, 10645 onDeactivated, 10646 onErrorCaptured, 10647 onMounted, 10648 onRenderTracked, 10649 onRenderTriggered, 10650 onScopeDispose, 10651 onServerPrefetch, 10652 onUnmounted, 10653 onUpdated, 10654 onWatcherCleanup, 10655 openBlock, 10656 popScopeId, 10657 provide, 10658 proxyRefs, 10659 pushScopeId, 10660 queuePostFlushCb, 10661 reactive, 10662 readonly, 10663 ref, 10664 registerRuntimeCompiler, 10665 render, 10666 renderList, 10667 renderSlot, 10668 resolveComponent, 10669 resolveDirective, 10670 resolveDynamicComponent, 10671 resolveFilter, 10672 resolveTransitionHooks, 10673 setBlockTracking, 10674 setDevtoolsHook, 10675 setTransitionHooks, 10676 shallowReactive, 10677 shallowReadonly, 10678 shallowRef, 10679 ssrContextKey, 10680 ssrUtils, 10681 stop, 10682 toDisplayString, 10683 toHandlerKey, 10684 toHandlers, 10685 toRaw, 10686 toRef, 10687 toRefs, 10688 toValue, 10689 transformVNodeArgs, 10690 triggerRef, 10691 unref, 10692 useAttrs, 10693 useCssModule, 10694 useCssVars, 10695 useHost, 10696 useId, 10697 useModel, 10698 useSSRContext, 10699 useShadowRoot, 10700 useSlots, 10701 useTemplateRef, 10702 useTransitionState, 10703 vModelCheckbox, 10704 vModelDynamic, 10705 vModelRadio, 10706 vModelSelect, 10707 vModelText, 10708 vShow, 10709 version, 10710 warn, 10711 watch, 10712 watchEffect, 10713 watchPostEffect, 10714 watchSyncEffect, 10715 withAsyncContext, 10716 withCtx, 10717 withDefaults, 10718 withDirectives, 10719 withKeys, 10720 withMemo, 10721 withModifiers, 10722 withScopeId 10723}, Symbol.toStringTag, { value: "Module" })); 10724const HASH_RE$2 = /#/g; 10725const AMPERSAND_RE$2 = /&/g; 10726const SLASH_RE$2 = /\//g; 10727const EQUAL_RE$2 = /=/g; 10728const PLUS_RE$2 = /\+/g; 10729const ENC_CARET_RE$2 = /%5e/gi; 10730const ENC_BACKTICK_RE$2 = /%60/gi; 10731const ENC_PIPE_RE$2 = /%7c/gi; 10732const ENC_SPACE_RE$2 = /%20/gi; 10733function encode$3(text) { 10734 return encodeURI("" + text).replace(ENC_PIPE_RE$2, "|"); 10735} 10736function encodeQueryValue$2(input) { 10737 return encode$3(typeof input === "string" ? input : JSON.stringify(input)).replace(PLUS_RE$2, "%2B").replace(ENC_SPACE_RE$2, "+").replace(HASH_RE$2, "%23").replace(AMPERSAND_RE$2, "%26").replace(ENC_BACKTICK_RE$2, "`").replace(ENC_CARET_RE$2, "^").replace(SLASH_RE$2, "%2F"); 10738} 10739function encodeQueryKey$2(text) { 10740 return encodeQueryValue$2(text).replace(EQUAL_RE$2, "%3D"); 10741} 10742function decode$2(text = "") { 10743 try { 10744 return decodeURIComponent("" + text); 10745 } catch { 10746 return "" + text; 10747 } 10748} 10749function decodeQueryKey$1(text) { 10750 return decode$2(text.replace(PLUS_RE$2, " ")); 10751} 10752function decodeQueryValue$1(text) { 10753 return decode$2(text.replace(PLUS_RE$2, " ")); 10754} 10755function parseQuery$2(parametersString = "") { 10756 const object = {}; 10757 if (parametersString[0] === "?") { 10758 parametersString = parametersString.slice(1); 10759 } 10760 for (const parameter of parametersString.split("&")) { 10761 const s = parameter.match(/([^=]+)=?(.*)/) || []; 10762 if (s.length < 2) { 10763 continue; 10764 }
10765 const key = decodeQueryKey$1(s[1]); 10766 if (key === "__proto__" || key === "constructor") { 10767 continue; 10768 } 10769 const value = decodeQueryValue$1(s[2] || ""); 10770 if (object[key] === void 0) { 10771 object[key] = value; 10772 } else if (Array.isArray(object[key])) { 10773 object[key].push(value); 10774 } else { 10775 object[key] = [object[key], value]; 10776 } 10777 } 10778 return object; 10779} 10780function encodeQueryItem$1(key, value) { 10781 if (typeof value === "number" || typeof value === "boolean") { 10782 value = String(value); 10783 } 10784 if (!value) { 10785 return encodeQueryKey$2(key); 10786 } 10787 if (Array.isArray(value)) { 10788 return value.map((_value) => `${encodeQueryKey$2(key)}=${encodeQueryValue$2(_value)}`).join("&"); 10789 } 10790 return `${encodeQueryKey$2(key)}=${encodeQueryValue$2(value)}`; 10791} 10792function stringifyQuery$2(query) { 10793 return Object.keys(query).filter((k3) => query[k3] !== void 0).map((k3) => encodeQueryItem$1(k3, query[k3])).filter(Boolean).join("&"); 10794} 10795const PROTOCOL_STRICT_REGEX$1 = /^[\s\w\0+.-]{2,}:([/\\]{1,2})/; 10796const PROTOCOL_REGEX$1 = /^[\s\w\0+.-]{2,}:([/\\]{2})?/; 10797const PROTOCOL_RELATIVE_REGEX$1 = /^([/\\]\s*){2,}[^/\\]/; 10798const JOIN_LEADING_SLASH_RE$1 = /^\.?\//; 10799function hasProtocol$1(inputString, opts = {}) { 10800 if (typeof opts === "boolean") { 10801 opts = { acceptRelative: opts }; 10802 } 10803 if (opts.strict) { 10804 return PROTOCOL_STRICT_REGEX$1.test(inputString); 10805 } 10806 return PROTOCOL_REGEX$1.test(inputString) || (opts.acceptRelative ? PROTOCOL_RELATIVE_REGEX$1.test(inputString) : false); 10807} 10808function hasTrailingSlash$1(input = "", respectQueryAndFragment) { 10809 { 10810 return input.endsWith("/"); 10811 } 10812} 10813function withoutTrailingSlash$1(input = "", respectQueryAndFragment) { 10814 { 10815 return (hasTrailingSlash$1(input) ? input.slice(0, -1) : input) || "/"; 10816 } 10817} 10818function withTrailingSlash$1(input = "", respectQueryAndFragment) { 10819 { 10820 return input.endsWith("/") ? input : input + "/"; 10821 } 10822} 10823function withBase(input, base) { 10824 if (isEmptyURL$1(base) || hasProtocol$1(input)) { 10825 return input; 10826 } 10827 const _base = withoutTrailingSlash$1(base); 10828 if (input.startsWith(_base)) { 10829 return input; 10830 } 10831 return joinURL$1(_base, input); 10832} 10833function withQuery$1(input, query) { 10834 const parsed = parseURL$2(input); 10835 const mergedQuery = { ...parseQuery$2(parsed.search), ...query }; 10836 parsed.search = stringifyQuery$2(mergedQuery); 10837 return stringifyParsedURL$1(parsed); 10838} 10839function isEmptyURL$1(url) { 10840 return !url || url === "/"; 10841} 10842function isNonEmptyURL$1(url) { 10843 return url && url !== "/"; 10844} 10845function joinURL$1(base, ...input) { 10846 let url = base || ""; 10847 for (const segment of input.filter((url2) => isNonEmptyURL$1(url2))) { 10848 if (url) { 10849 const _segment = segment.replace(JOIN_LEADING_SLASH_RE$1, ""); 10850 url = withTrailingSlash$1(url) + _segment; 10851 } else { 10852 url = segment; 10853 } 10854 } 10855 return url; 10856} 10857function joinRelativeURL(..._input) { 10858 var _a, _b, _c, _d; 10859 const JOIN_SEGMENT_SPLIT_RE = /\/(?!\/)/; 10860 const input = _input.filter(Boolean); 10861 const segments = []; 10862 let segmentsDepth = 0; 10863 for (const i of input) { 10864 if (!i || i === "/") { 10865 continue; 10866 } 10867 for (const [sindex, s] of i.split(JOIN_SEGMENT_SPLIT_RE).entries()) { 10868 if (!s || s === ".") { 10869 continue; 10870 } 10871 if (s === "..") { 10872 if (segments.length === 1 && hasProtocol$1(segments[0])) { 10873 continue; 10874 } 10875 segments.pop(); 10876 segmentsDepth--; 10877 continue; 10878 } 10879 if (sindex === 1 && ((_a = segments[segments.length - 1]) == null ? void 0 : _a.endsWith(":/"))) { 10880 segments[segments.length - 1] += "/" + s; 10881 continue; 10882 } 10883 segments.push(s); 10884 segmentsDepth++; 10885 } 10886 } 10887 let url = segments.join("/"); 10888 if (segmentsDepth >= 0) { 10889 if (((_b = input[0]) == null ? void 0 : _b.startsWith("/")) && !url.startsWith("/")) { 10890 url = "/" + url; 10891 } else if (((_c = input[0]) == null ? void 0 : _c.startsWith("./")) && !url.startsWith("./")) { 10892 url = "./" + url; 10893 } 10894 } else { 10895 url = "../".repeat(-1 * segmentsDepth) + url; 10896 } 10897 if (((_d = input[input.length - 1]) == null ? void 0 : _d.endsWith("/")) && !url.endsWith("/")) { 10898 url += "/"; 10899 } 10900 return url; 10901} 10902function withHttps(input) { 10903 return withProtocol(input, "https://"); 10904} 10905function withProtocol(input, protocol) { 10906 let match2 = input.match(PROTOCOL_REGEX$1); 10907 if (!match2) { 10908 match2 = input.match(/^\/{2,}/); 10909 } 10910 if (!match2) { 10911 return protocol + input; 10912 } 10913 return protocol + input.slice(match2[0].length); 10914} 10915const protocolRelative$1 = Symbol.for("ufo:protocolRelative"); 10916function parseURL$2(input = "", defaultProto) { 10917 const _specialProtoMatch = input.match( 10918 /^[\s\0]*(blob:|data:|javascript:|vbscript:)(.*)/i 10919 ); 10920 if (_specialProtoMatch) { 10921 const [, _proto, _pathname = ""] = _specialProtoMatch; 10922 return { 10923 protocol: _proto.toLowerCase(), 10924 pathname: _pathname, 10925 href: _proto + _pathname, 10926 auth: "", 10927 host: "", 10928 search: "", 10929 hash: "" 10930 }; 10931 }
10932 if (!hasProtocol$1(input, { acceptRelative: true })) { 10933 return parsePath$1(input); 10934 } 10935 const [, protocol = "", auth, hostAndPath = ""] = input.replace(/\\/g, "/").match(/^[\s\0]*([\w+.-]{2,}:)?\/\/([^/@]+@)?(.*)/) || []; 10936 let [, host = "", path = ""] = hostAndPath.match(/([^#/?]*)(.*)?/) || []; 10937 if (protocol === "file:") { 10938 path = path.replace(/\/(?=[A-Za-z]:)/, ""); 10939 } 10940 const { pathname, search, hash: hash2 } = parsePath$1(path); 10941 return { 10942 protocol: protocol.toLowerCase(), 10943 auth: auth ? auth.slice(0, Math.max(0, auth.length - 1)) : "", 10944 host, 10945 pathname, 10946 search, 10947 hash: hash2, 10948 [protocolRelative$1]: !protocol 10949 }; 10950} 10951function parsePath$1(input = "") { 10952 const [pathname = "", search = "", hash2 = ""] = (input.match(/([^#?]*)(\?[^#]*)?(#.*)?/) || []).splice(1); 10953 return { 10954 pathname, 10955 search, 10956 hash: hash2 10957 }; 10958} 10959function stringifyParsedURL$1(parsed) { 10960 const pathname = parsed.pathname || ""; 10961 const search = parsed.search ? (parsed.search.startsWith("?") ? "" : "?") + parsed.search : ""; 10962 const hash2 = parsed.hash || ""; 10963 const auth = parsed.auth ? parsed.auth + "@" : ""; 10964 const host = parsed.host || ""; 10965 const proto = parsed.protocol || parsed[protocolRelative$1] ? (parsed.protocol || "") + "//" : ""; 10966 return proto + auth + host + pathname + search + hash2; 10967} 10968const useRuntimeConfig$1 = () => { 10969 var _a; 10970 return ((_a = window == null ? void 0 : window.__NUXT__) == null ? void 0 : _a.config) || {}; 10971}; 10972const appConfig = useRuntimeConfig$1().app; 10973const baseURL = () => appConfig.baseURL; 10974const buildAssetsDir = () => appConfig.buildAssetsDir; 10975const buildAssetsURL = (...path) => joinRelativeURL(publicAssetsURL(), buildAssetsDir(), ...path); 10976const publicAssetsURL = (...path) => { 10977 const publicBase = appConfig.cdnURL || appConfig.baseURL; 10978 return path.length ? joinRelativeURL(publicBase, ...path) : publicBase; 10979}; 10980{ 10981 globalThis.__buildAssetsURL = buildAssetsURL; 10982 globalThis.__publicAssetsURL = publicAssetsURL; 10983} 10984function flatHooks(configHooks, hooks = {}, parentName) { 10985 for (const key in configHooks) { 10986 const subHook = configHooks[key]; 10987 const name = parentName ? `${parentName}:${key}` : key; 10988 if (typeof subHook === "object" && subHook !== null) { 10989 flatHooks(subHook, hooks, name); 10990 } else if (typeof subHook === "function") { 10991 hooks[name] = subHook; 10992 } 10993 } 10994 return hooks; 10995} 10996const defaultTask = { run: (function_) => function_() }; 10997const _createTask = () => defaultTask; 10998const createTask = typeof console.createTask !== "undefined" ? console.createTask : _createTask; 10999function serialTaskCaller(hooks, args) { 11000 const name = args.shift(); 11001 const task = createTask(name); 11002 return hooks.reduce( 11003 (promise, hookFunction) => promise.then(() => task.run(() => hookFunction(...args))), 11004 Promise.resolve() 11005 ); 11006} 11007function parallelTaskCaller(hooks, args) { 11008 const name = args.shift(); 11009 const task = createTask(name); 11010 return Promise.all(hooks.map((hook) => task.run(() => hook(...args)))); 11011} 11012function callEachWith(callbacks, arg0) { 11013 for (const callback of [...callbacks]) { 11014 callback(arg0); 11015 } 11016} 11017class Hookable { 11018 constructor() { 11019 this._hooks = {}; 11020 this._before = void 0; 11021 this._after = void 0; 11022 this._deprecatedMessages = void 0; 11023 this._deprecatedHooks = {}; 11024 this.hook = this.hook.bind(this); 11025 this.callHook = this.callHook.bind(this); 11026 this.callHookWith = this.callHookWith.bind(this); 11027 } 11028 hook(name, function_, options = {}) { 11029 if (!name || typeof function_ !== "function") { 11030 return () => { 11031 }; 11032 } 11033 const originalName = name; 11034 let dep; 11035 while (this._deprecatedHooks[name]) { 11036 dep = this._deprecatedHooks[name]; 11037 name = dep.to; 11038 } 11039 if (dep && !options.allowDeprecated) { 11040 let message2 = dep.message; 11041 if (!message2) { 11042 message2 = `${originalName} hook has been deprecated` + (dep.to ? `, please use ${dep.to}` : ""); 11043 } 11044 if (!this._deprecatedMessages) { 11045 this._deprecatedMessages = /* @__PURE__ */ new Set(); 11046 } 11047 if (!this._deprecatedMessages.has(message2)) { 11048 console.warn(message2); 11049 this._deprecatedMessages.add(message2); 11050 } 11051 } 11052 if (!function_.name) {
11053 try { 11054 Object.defineProperty(function_, "name", { 11055 get: () => "_" + name.replace(/\W+/g, "_") + "_hook_cb", 11056 configurable: true 11057 }); 11058 } catch { 11059 } 11060 } 11061 this._hooks[name] = this._hooks[name] || []; 11062 this._hooks[name].push(function_); 11063 return () => { 11064 if (function_) { 11065 this.removeHook(name, function_); 11066 function_ = void 0; 11067 } 11068 }; 11069 } 11070 hookOnce(name, function_) { 11071 let _unreg; 11072 let _function = (...arguments_) => { 11073 if (typeof _unreg === "function") { 11074 _unreg(); 11075 } 11076 _unreg = void 0; 11077 _function = void 0; 11078 return function_(...arguments_); 11079 }; 11080 _unreg = this.hook(name, _function); 11081 return _unreg; 11082 } 11083 removeHook(name, function_) { 11084 if (this._hooks[name]) { 11085 const index2 = this._hooks[name].indexOf(function_); 11086 if (index2 !== -1) { 11087 this._hooks[name].splice(index2, 1); 11088 } 11089 if (this._hooks[name].length === 0) { 11090 delete this._hooks[name]; 11091 } 11092 } 11093 } 11094 deprecateHook(name, deprecated) { 11095 this._deprecatedHooks[name] = typeof deprecated === "string" ? { to: deprecated } : deprecated; 11096 const _hooks = this._hooks[name] || []; 11097 delete this._hooks[name]; 11098 for (const hook of _hooks) { 11099 this.hook(name, hook); 11100 } 11101 } 11102 deprecateHooks(deprecatedHooks) { 11103 Object.assign(this._deprecatedHooks, deprecatedHooks); 11104 for (const name in deprecatedHooks) { 11105 this.deprecateHook(name, deprecatedHooks[name]); 11106 } 11107 } 11108 addHooks(configHooks) { 11109 const hooks = flatHooks(configHooks); 11110 const removeFns = Object.keys(hooks).map( 11111 (key) => this.hook(key, hooks[key]) 11112 ); 11113 return () => { 11114 for (const unreg of removeFns.splice(0, removeFns.length)) { 11115 unreg(); 11116 } 11117 }; 11118 } 11119 removeHooks(configHooks) { 11120 const hooks = flatHooks(configHooks); 11121 for (const key in hooks) { 11122 this.removeHook(key, hooks[key]); 11123 } 11124 } 11125 removeAllHooks() { 11126 for (const key in this._hooks) { 11127 delete this._hooks[key]; 11128 } 11129 } 11130 callHook(name, ...arguments_) { 11131 arguments_.unshift(name); 11132 return this.callHookWith(serialTaskCaller, name, ...arguments_); 11133 } 11134 callHookParallel(name, ...arguments_) { 11135 arguments_.unshift(name); 11136 return this.callHookWith(parallelTaskCaller, name, ...arguments_); 11137 } 11138 callHookWith(caller, name, ...arguments_) { 11139 const event = this._before || this._after ? { name, args: arguments_, context: {} } : void 0; 11140 if (this._before) { 11141 callEachWith(this._before, event); 11142 } 11143 const result = caller( 11144 name in this._hooks ? [...this._hooks[name]] : [], 11145 arguments_ 11146 ); 11147 if (result instanceof Promise) { 11148 return result.finally(() => { 11149 if (this._after && event) { 11150 callEachWith(this._after, event); 11151 } 11152 }); 11153 } 11154 if (this._after && event) { 11155 callEachWith(this._after, event); 11156 } 11157 return result; 11158 } 11159 beforeEach(function_) { 11160 this._before = this._before || []; 11161 this._before.push(function_); 11162 return () => { 11163 if (this._before !== void 0) { 11164 const index2 = this._before.indexOf(function_); 11165 if (index2 !== -1) { 11166 this._before.splice(index2, 1); 11167 } 11168 } 11169 }; 11170 } 11171 afterEach(function_) { 11172 this._after = this._after || []; 11173 this._after.push(function_); 11174 return () => { 11175 if (this._after !== void 0) { 11176 const index2 = this._after.indexOf(function_); 11177 if (index2 !== -1) { 11178 this._after.splice(index2, 1); 11179 } 11180 } 11181 }; 11182 } 11183} 11184function createHooks() { 11185 return new Hookable(); 11186} 11187function createContext(opts = {}) { 11188 let currentInstance2; 11189 let isSingleton = false; 11190 const checkConflict = (instance) => { 11191 if (currentInstance2 && currentInstance2 !== instance) { 11192 throw new Error("Context conflict"); 11193 } 11194 }; 11195 let als; 11196 if (opts.asyncContext) { 11197 const _AsyncLocalStorage = opts.AsyncLocalStorage || globalThis.AsyncLocalStorage; 11198 if (_AsyncLocalStorage) { 11199 als = new _AsyncLocalStorage(); 11200 } else { 11201 console.warn("[unctx] `AsyncLocalStorage` is not provided."); 11202 } 11203 } 11204 const _getCurrentInstance = () => { 11205 if (als) { 11206 const instance = als.getStore(); 11207 if (instance !== void 0) { 11208 return instance; 11209 } 11210 } 11211 return currentInstance2; 11212 }; 11213 return { 11214 use: () => { 11215 const _instance = _getCurrentInstance(); 11216 if (_instance === void 0) { 11217 throw new Error("Context is not available"); 11218 } 11219 return _instance; 11220 }, 11221 tryUse: () => { 11222 return _getCurrentInstance(); 11223 }, 11224 set: (instance, replace) => { 11225 if (!replace) { 11226 checkConflict(instance); 11227 } 11228 currentInstance2 = instance; 11229 isSingleton = true; 11230 }, 11231 unset: () => { 11232 currentInstance2 = void 0; 11233 isSingleton = false;
11234 }, 11235 call: (instance, callback) => { 11236 checkConflict(instance); 11237 currentInstance2 = instance; 11238 try { 11239 return als ? als.run(instance, callback) : callback(); 11240 } finally { 11241 if (!isSingleton) { 11242 currentInstance2 = void 0; 11243 } 11244 } 11245 }, 11246 async callAsync(instance, callback) { 11247 currentInstance2 = instance; 11248 const onRestore = () => { 11249 currentInstance2 = instance; 11250 }; 11251 const onLeave = () => currentInstance2 === instance ? onRestore : void 0; 11252 asyncHandlers.add(onLeave); 11253 try { 11254 const r2 = als ? als.run(instance, callback) : callback(); 11255 if (!isSingleton) { 11256 currentInstance2 = void 0; 11257 } 11258 return await r2; 11259 } finally { 11260 asyncHandlers.delete(onLeave); 11261 } 11262 } 11263 }; 11264} 11265function createNamespace(defaultOpts = {}) { 11266 const contexts = {}; 11267 return { 11268 get(key, opts = {}) { 11269 if (!contexts[key]) { 11270 contexts[key] = createContext({ ...defaultOpts, ...opts }); 11271 } 11272 return contexts[key]; 11273 } 11274 }; 11275} 11276const _globalThis = typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : typeof global !== "undefined" ? global : typeof window !== "undefined" ? window : {}; 11277const globalKey = "__unctx__"; 11278const defaultNamespace = _globalThis[globalKey] || (_globalThis[globalKey] = createNamespace()); 11279const getContext = (key, opts = {}) => defaultNamespace.get(key, opts); 11280const asyncHandlersKey = "__unctx_async_handlers__"; 11281const asyncHandlers = _globalThis[asyncHandlersKey] || (_globalThis[asyncHandlersKey] = /* @__PURE__ */ new Set()); 11282function executeAsync(function_) { 11283 const restores = []; 11284 for (const leaveHandler of asyncHandlers) { 11285 const restore2 = leaveHandler(); 11286 if (restore2) { 11287 restores.push(restore2); 11288 } 11289 } 11290 const restore = () => { 11291 for (const restore2 of restores) { 11292 restore2(); 11293 } 11294 }; 11295 let awaitable = function_(); 11296 if (awaitable && typeof awaitable === "object" && "catch" in awaitable) { 11297 awaitable = awaitable.catch((error) => { 11298 restore(); 11299 throw error; 11300 }); 11301 } 11302 return [awaitable, restore]; 11303} 11304const appLayoutTransition = false; 11305const appPageTransition = false; 11306const appKeepalive = false; 11307const nuxtLinkDefaults = { "componentName": "NuxtLink", "prefetch": true, "prefetchOn": { "visibility": true } }; 11308const asyncDataDefaults = { "value": null, "errorValue": null, "deep": true }; 11309const nuxtDefaultErrorValue = null; 11310const fetchDefaults = {}; 11311const vueAppRootContainer = "#__nuxt"; 11312const appId = "nuxt-app"; 11313const outdatedBuildInterval = 36e5; 11314const chunkErrorEvent = "vite:preloadError"; 11315function getNuxtAppCtx(id = appId) { 11316 return getContext(id, { 11317 asyncContext: false 11318 }); 11319} 11320const NuxtPluginIndicator = "__nuxt_plugin"; 11321function createNuxtApp(options) { 11322 var _a; 11323 let hydratingCount = 0; 11324 const nuxtApp = { 11325 _id: options.id || appId || "nuxt-app", 11326 _scope: effectScope(), 11327 provide: void 0, 11328 globalName: "nuxt", 11329 versions: { 11330 get nuxt() { 11331 return "3.17.1"; 11332 }, 11333 get vue() { 11334 return nuxtApp.vueApp.version; 11335 } 11336 }, 11337 payload: shallowReactive({ 11338 ...((_a = options.ssrContext) == null ? void 0 : _a.payload) || {}, 11339 data: shallowReactive({}), 11340 state: reactive({}), 11341 once: /* @__PURE__ */ new Set(), 11342 _errors: shallowReactive({}) 11343 }), 11344 static: { 11345 data: {} 11346 }, 11347 runWithContext(fn) { 11348 if (nuxtApp._scope.active && !getCurrentScope()) { 11349 return nuxtApp._scope.run(() => callWithNuxt(nuxtApp, fn)); 11350 } 11351 return callWithNuxt(nuxtApp, fn); 11352 }, 11353 isHydrating: true, 11354 deferHydration() { 11355 if (!nuxtApp.isHydrating) { 11356 return () => { 11357 }; 11358 } 11359 hydratingCount++; 11360 let called = false; 11361 return () => { 11362 if (called) { 11363 return; 11364 } 11365 called = true; 11366 hydratingCount--; 11367 if (hydratingCount === 0) { 11368 nuxtApp.isHydrating = false; 11369 return nuxtApp.callHook("app:suspense:resolve"); 11370 } 11371 }; 11372 }, 11373 _asyncDataPromises: {}, 11374 _asyncData: shallowReactive({}), 11375 _payloadRevivers: {}, 11376 ...options 11377 }; 11378 { 11379 const __NUXT__ = window.__NUXT__; 11380 if (__NUXT__) { 11381 for (const key in __NUXT__) { 11382 switch (key) { 11383 case "data": 11384 case "state": 11385 case "_errors": 11386 Object.assign(nuxtApp.payload[key], __NUXT__[key]); 11387 break; 11388 default: 11389 nuxtApp.payload[key] = __NUXT__[key]; 11390 } 11391 } 11392 } 11393 } 11394 nuxtApp.hooks = createHooks(); 11395 nuxtApp.hook = nuxtApp.hooks.hook; 11396 nuxtApp.callHook = nuxtApp.hooks.callHook; 11397 nuxtApp.provide = (name, value) => { 11398 const $name = "$" + name; 11399 defineGetter(nuxtApp, $name, value); 11400 defineGetter(nuxtApp.vueApp.config.globalProperties, $name, value); 11401 }; 11402 defineGetter(nuxtApp.vueApp, "$nuxt", nuxtApp); 11403 defineGetter(nuxtApp.vueApp.config.globalProperties, "$nuxt", nuxtApp); 11404 { 11405 { 11406 window.addEventListener(chunkErrorEvent, (event) => { 11407 nuxtApp.callHook("app:chunkError", { error: event.payload }); 11408 if (nuxtApp.isHydrating || event.payload.message.includes("Unable to preload CSS")) { 11409 event.preventDefault(); 11410 } 11411 }); 11412 } 11413 window.useNuxtApp || (window.useNuxtApp = useNuxtApp); 11414 const unreg = nuxtApp.hook("app:error", (...args) => { 11415 console.error("[nuxt] error caught during app initialization", ...args); 11416 }); 11417 nuxtApp.hook("app:mounted", unreg); 11418 } 11419 const runtimeConfig = nuxtApp.payload.config; 11420 nuxtApp.provide("config", runtimeConfig); 11421 return nuxtApp; 11422} 11423function registerPluginHooks(nuxtApp, plugin) { 11424 if (plugin.hooks) { 11425 nuxtApp.hooks.addHooks(plugin.hooks); 11426 } 11427} 11428async function applyPlugin(nuxtApp, plugin) { 11429 if (typeof plugin === "function") { 11430 const { provide: provide2 } = await nuxtApp.runWithContext(() => plugin(nuxtApp)) || {}; 11431 if (provide2 && typeof provide2 === "object") { 11432 for (const key in provide2) { 11433 nuxtApp.provide(key, provide2[key]); 11434 } 11435 } 11436 } 11437} 11438async function applyPlugins(nuxtApp, plugins) { 11439 const resolvedPlugins = []; 11440 const unresolvedPlugins = []; 11441 const parallels = []; 11442 const errors = []; 11443 let promiseDepth = 0; 11444 async function executePlugin(plugin) { 11445 var _a; 11446 const unresolvedPluginsForThisPlugin = ((_a = plugin.dependsOn) == null ? void 0 : _a.filter((name) => plugins.some((p2) => p2._name === name) && !resolvedPlugins.includes(name))) ?? []; 11447 if (unresolvedPluginsForThisPlugin.length > 0) { 11448 unresolvedPlugins.push([new Set(unresolvedPluginsForThisPlugin), plugin]); 11449 } else { 11450 const promise = applyPlugin(nuxtApp, plugin).then(async () => { 11451 if (plugin._name) { 11452 resolvedPlugins.push(plugin._name); 11453 await Promise.all(unresolvedPlugins.map(async ([dependsOn, unexecutedPlugin]) => { 11454 if (dependsOn.has(plugin._name)) { 11455 dependsOn.delete(plugin._name); 11456 if (dependsOn.size === 0) { 11457 promiseDepth++; 11458 await executePlugin(unexecutedPlugin); 11459 } 11460 } 11461 })); 11462 } 11463 }); 11464 if (plugin.parallel) { 11465 parallels.push(promise.catch((e) => errors.push(e))); 11466 } else { 11467 await promise; 11468 } 11469 } 11470 } 11471 for (const plugin of plugins) { 11472 registerPluginHooks(nuxtApp, plugin); 11473 } 11474 for (const plugin of plugins) { 11475 await executePlugin(plugin); 11476 } 11477 await Promise.all(parallels); 11478 if (promiseDepth) { 11479 for (let i = 0; i < promiseDepth; i++) { 11480 await Promise.all(parallels); 11481 } 11482 } 11483 if (errors.length) { 11484 throw errors[0]; 11485 } 11486} 11487// @__NO_SIDE_EFFECTS__ 11488function defineNuxtPlugin(plugin) { 11489 if (typeof plugin === "function") { 11490 return plugin; 11491 } 11492 const _name = plugin._name || plugin.name; 11493 delete plugin.name; 11494 return Object.assign(plugin.setup || (() => { 11495 }), plugin, { [NuxtPluginIndicator]: true, _name }); 11496} 11497function callWithNuxt(nuxt, setup, args) { 11498 const fn = () => setup(); 11499 const nuxtAppCtx = getNuxtAppCtx(nuxt._id); 11500 { 11501 nuxtAppCtx.set(nuxt); 11502 return nuxt.vueApp.runWithContext(fn); 11503 } 11504} 11505function tryUseNuxtApp(id) { 11506 var _a; 11507 let nuxtAppInstance; 11508 if (hasInjectionContext()) { 11509 nuxtAppInstance = (_a = getCurrentInstance()) == null ? void 0 : _a.appContext.app.$nuxt; 11510 } 11511 nuxtAppInstance || (nuxtAppInstance = getNuxtAppCtx(id).tryUse()); 11512 return nuxtAppInstance || null; 11513} 11514function useNuxtApp(id) { 11515 const nuxtAppInstance = tryUseNuxtApp(id); 11516 if (!nuxtAppInstance) { 11517 { 11518 throw new Error("[nuxt] instance unavailable"); 11519 } 11520 } 11521 return nuxtAppInstance; 11522} 11523// @__NO_SIDE_EFFECTS__ 11524function useRuntimeConfig(_event) { 11525 return useNuxtApp().$config; 11526} 11527function defineGetter(obj, key, val) { 11528 Object.defineProperty(obj, key, { get: () => val }); 11529} 11530function _createMatcher(table, strictTrailingSlash) { 11531 return { 11532 ctx: { table }, 11533 matchAll: (path) => _matchRoutes(path, table) 11534 }; 11535} 11536function _createTableFromExport(matcherExport) { 11537 const table = {}; 11538 for (const property in matcherExport) { 11539 table[property] = property === "dynamic" ? new Map( 11540 Object.entries(matcherExport[property]).map(([key, value]) => [ 11541 key, 11542 _createTableFromExport(value) 11543 ]) 11544 ) : new Map( 11545 Object.entries(matcherExport[property]) 11546 ); 11547 } 11548 return table; 11549} 11550function createMatcherFromExport(matcherExport) { 11551 return _createMatcher(_createTableFromExport(matcherExport)); 11552} 11553function _matchRoutes(path, table, strictTrailingSlash) { 11554 if (path.endsWith("/")) { 11555 path = path.slice(0, -1) || "/"; 11556 } 11557 const matches2 = []; 11558 for (const [key, value] of _sortRoutesMap(table.wildcard)) { 11559 if (path === key || path.startsWith(key + "/")) { 11560 matches2.push(value); 11561 } 11562 } 11563 for (const [key, value] of _sortRoutesMap(table.dynamic)) { 11564 if (path.startsWith(key + "/")) { 11565 const subPath = "/" + path.slice(key.length).split("/").splice(2).join("/"); 11566 matches2.push(..._matchRoutes(subPath, value)); 11567 } 11568 } 11569 const staticMatch = table.static.get(path); 11570 if (staticMatch) { 11571 matches2.push(staticMatch); 11572 } 11573 return matches2.filter(Boolean); 11574} 11575function _sortRoutesMap(m) { 11576 return [...m.entries()].sort((a, b2) => a[0].length - b2[0].length); 11577} 11578const suspectProtoRx = /"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/; 11579const suspectConstructorRx = /"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/; 11580const JsonSigRx = /^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/; 11581function jsonParseTransform(key, value) { 11582 if (key === "__proto__" || key === "constructor" && value && typeof value === "object" && "prototype" in value) { 11583 warnKeyDropped(key); 11584 return; 11585 } 11586 return value; 11587} 11588function warnKeyDropped(key) { 11589 console.warn(`[destr] Dropping "${key}" key to prevent prototype pollution.`); 11590} 11591function destr(value, options = {}) { 11592 if (typeof value !== "string") { 11593 return value; 11594 } 11595 if (value[0] === '"' && value[value.length - 1] === '"' && value.indexOf("\\") === -1) { 11596 return value.slice(1, -1); 11597 } 11598 const _value = value.trim(); 11599 if (_value.length <= 9) { 11600 switch (_value.toLowerCase()) { 11601 case "true": { 11602 return true; 11603 } 11604 case "false": { 11605 return false;
11606 } 11607 case "undefined": { 11608 return void 0; 11609 } 11610 case "null": { 11611 return null; 11612 } 11613 case "nan": { 11614 return Number.NaN; 11615 } 11616 case "infinity": { 11617 return Number.POSITIVE_INFINITY; 11618 } 11619 case "-infinity": { 11620 return Number.NEGATIVE_INFINITY; 11621 } 11622 } 11623 } 11624 if (!JsonSigRx.test(value)) { 11625 if (options.strict) { 11626 throw new SyntaxError("[destr] Invalid JSON"); 11627 } 11628 return value; 11629 } 11630 try { 11631 if (suspectProtoRx.test(value) || suspectConstructorRx.test(value)) { 11632 if (options.strict) { 11633 throw new Error("[destr] Possible prototype pollution"); 11634 } 11635 return JSON.parse(value, jsonParseTransform); 11636 } 11637 return JSON.parse(value); 11638 } catch (error) { 11639 if (options.strict) { 11640 throw error; 11641 } 11642 return value; 11643 } 11644} 11645function isPlainObject$3(value) { 11646 if (value === null || typeof value !== "object") { 11647 return false; 11648 } 11649 const prototype2 = Object.getPrototypeOf(value); 11650 if (prototype2 !== null && prototype2 !== Object.prototype && Object.getPrototypeOf(prototype2) !== null) { 11651 return false; 11652 } 11653 if (Symbol.iterator in value) { 11654 return false; 11655 } 11656 if (Symbol.toStringTag in value) { 11657 return Object.prototype.toString.call(value) === "[object Module]"; 11658 } 11659 return true; 11660} 11661function _defu(baseObject, defaults2, namespace = ".", merger) { 11662 if (!isPlainObject$3(defaults2)) { 11663 return _defu(baseObject, {}, namespace, merger); 11664 } 11665 const object = Object.assign({}, defaults2); 11666 for (const key in baseObject) { 11667 if (key === "__proto__" || key === "constructor") { 11668 continue; 11669 } 11670 const value = baseObject[key]; 11671 if (value === null || value === void 0) { 11672 continue; 11673 } 11674 if (merger && merger(object, key, value, namespace)) { 11675 continue; 11676 } 11677 if (Array.isArray(value) && Array.isArray(object[key])) { 11678 object[key] = [...value, ...object[key]]; 11679 } else if (isPlainObject$3(value) && isPlainObject$3(object[key])) { 11680 object[key] = _defu( 11681 value, 11682 object[key], 11683 (namespace ? `${namespace}.` : "") + key.toString(), 11684 merger 11685 ); 11686 } else { 11687 object[key] = value; 11688 } 11689 } 11690 return object; 11691} 11692function createDefu(merger) { 11693 return (...arguments_) => ( 11694 // eslint-disable-next-line unicorn/no-array-reduce 11695 arguments_.reduce((p2, c2) => _defu(p2, c2, "", merger), {}) 11696 ); 11697} 11698const defu = createDefu(); 11699function hasProp(obj, prop) { 11700 try { 11701 return prop in obj; 11702 } catch { 11703 return false; 11704 } 11705} 11706class H3Error extends Error { 11707 constructor(message2, opts = {}) { 11708 super(message2, opts); 11709 __publicField(this, "statusCode", 500); 11710 __publicField(this, "fatal", false); 11711 __publicField(this, "unhandled", false); 11712 __publicField(this, "statusMessage"); 11713 __publicField(this, "data"); 11714 __publicField(this, "cause"); 11715 if (opts.cause && !this.cause) { 11716 this.cause = opts.cause; 11717 } 11718 } 11719 toJSON() { 11720 const obj = { 11721 message: this.message, 11722 statusCode: sanitizeStatusCode(this.statusCode, 500) 11723 }; 11724 if (this.statusMessage) { 11725 obj.statusMessage = sanitizeStatusMessage(this.statusMessage); 11726 } 11727 if (this.data !== void 0) { 11728 obj.data = this.data; 11729 } 11730 return obj; 11731 } 11732} 11733__publicField(H3Error, "__h3_error__", true); 11734function createError$1(input) { 11735 if (typeof input === "string") { 11736 return new H3Error(input); 11737 } 11738 if (isError(input)) { 11739 return input; 11740 } 11741 const err = new H3Error(input.message ?? input.statusMessage ?? "", { 11742 cause: input.cause || input 11743 }); 11744 if (hasProp(input, "stack")) { 11745 try { 11746 Object.defineProperty(err, "stack", { 11747 get() { 11748 return input.stack; 11749 } 11750 }); 11751 } catch { 11752 try { 11753 err.stack = input.stack; 11754 } catch { 11755 } 11756 } 11757 } 11758 if (input.data) { 11759 err.data = input.data; 11760 } 11761 if (input.statusCode) { 11762 err.statusCode = sanitizeStatusCode(input.statusCode, err.statusCode); 11763 } else if (input.status) { 11764 err.statusCode = sanitizeStatusCode(input.status, err.statusCode); 11765 } 11766 if (input.statusMessage) { 11767 err.statusMessage = input.statusMessage; 11768 } else if (input.statusText) { 11769 err.statusMessage = input.statusText; 11770 } 11771 if (err.statusMessage) { 11772 const originalMessage = err.statusMessage; 11773 const sanitizedMessage = sanitizeStatusMessage(err.statusMessage); 11774 if (sanitizedMessage !== originalMessage) { 11775 console.warn( 11776 "[h3] Please prefer using `message` for longer error messages instead of `statusMessage`. In the future, `statusMessage` will be sanitized by default." 11777 ); 11778 } 11779 } 11780 if (input.fatal !== void 0) { 11781 err.fatal = input.fatal; 11782 } 11783 if (input.unhandled !== void 0) { 11784 err.unhandled = input.unhandled; 11785 } 11786 return err; 11787} 11788function isError(input) { 11789 var _a; 11790 return ((_a = input == null ? void 0 : input.constructor) == null ? void 0 : _a.__h3_error__) === true; 11791} 11792const DISALLOWED_STATUS_CHARS = /[^\u0009\u0020-\u007E]/g; 11793function sanitizeStatusMessage(statusMessage = "") { 11794 return statusMessage.replace(DISALLOWED_STATUS_CHARS, ""); 11795} 11796function sanitizeStatusCode(statusCode, defaultStatusCode = 200) { 11797 if (!statusCode) { 11798 return defaultStatusCode; 11799 } 11800 if (typeof statusCode === "string") { 11801 statusCode = Number.parseInt(statusCode, 10); 11802 } 11803 if (statusCode < 100 || statusCode > 999) { 11804 return defaultStatusCode; 11805 } 11806 return statusCode; 11807} 11808typeof setImmediate === "undefined" ? (fn) => fn() : setImmediate; 11809const HASH_RE$1 = /#/g; 11810const AMPERSAND_RE$1 = /&/g; 11811const SLASH_RE$1 = /\//g; 11812const EQUAL_RE$1 = /=/g; 11813const PLUS_RE$1 = /\+/g; 11814const ENC_CARET_RE$1 = /%5e/gi; 11815const ENC_BACKTICK_RE$1 = /%60/gi; 11816const ENC_PIPE_RE$1 = /%7c/gi; 11817const ENC_SPACE_RE$1 = /%20/gi; 11818function encode$2(text) { 11819 return encodeURI("" + text).replace(ENC_PIPE_RE$1, "|"); 11820} 11821function encodeQueryValue$1(input) { 11822 return encode$2(typeof input === "string" ? input : JSON.stringify(input)).replace(PLUS_RE$1, "%2B").replace(ENC_SPACE_RE$1, "+").replace(HASH_RE$1, "%23").replace(AMPERSAND_RE$1, "%26").replace(ENC_BACKTICK_RE$1, "`").replace(ENC_CARET_RE$1, "^").replace(SLASH_RE$1, "%2F"); 11823} 11824function encodeQueryKey$1(text) { 11825 return encodeQueryValue$1(text).replace(EQUAL_RE$1, "%3D"); 11826} 11827function decode$1(text = "") { 11828 try { 11829 return decodeURIComponent("" + text); 11830 } catch { 11831 return "" + text; 11832 } 11833} 11834function decodeQueryKey(text) { 11835 return decode$1(text.replace(PLUS_RE$1, " ")); 11836} 11837function decodeQueryValue(text) { 11838 return decode$1(text.replace(PLUS_RE$1, " ")); 11839} 11840function parseQuery$1(parametersString = "") { 11841 const object = /* @__PURE__ */ Object.create(null); 11842 if (parametersString[0] === "?") { 11843 parametersString = parametersString.slice(1); 11844 } 11845 for (const parameter of parametersString.split("&")) { 11846 const s = parameter.match(/([^=]+)=?(.*)/) || []; 11847 if (s.length < 2) { 11848 continue; 11849 }
vendor: 5,755 bytes, lines 11850-12028
11850 const key = decodeQueryKey(s[1]); 11851 if (key === "__proto__" || key === "constructor") { 11852 continue; 11853 } 11854 const value = decodeQueryValue(s[2] || ""); 11855 if (object[key] === void 0) { 11856 object[key] = value; 11857 } else if (Array.isArray(object[key])) { 11858 object[key].push(value); 11859 } else { 11860 object[key] = [object[key], value]; 11861 } 11862 } 11863 return object; 11864} 11865function encodeQueryItem(key, value) { 11866 if (typeof value === "number" || typeof value === "boolean") { 11867 value = String(value); 11868 } 11869 if (!value) { 11870 return encodeQueryKey$1(key); 11871 } 11872 if (Array.isArray(value)) { 11873 return value.map( 11874 (_value) => `${encodeQueryKey$1(key)}=${encodeQueryValue$1(_value)}` 11875 ).join("&"); 11876 } 11877 return `${encodeQueryKey$1(key)}=${encodeQueryValue$1(value)}`; 11878} 11879function stringifyQuery$1(query) { 11880 return Object.keys(query).filter((k3) => query[k3] !== void 0).map((k3) => encodeQueryItem(k3, query[k3])).filter(Boolean).join("&"); 11881} 11882const PROTOCOL_STRICT_REGEX = /^[\s\w\0+.-]{2,}:([/\\]{1,2})/; 11883const PROTOCOL_REGEX = /^[\s\w\0+.-]{2,}:([/\\]{2})?/; 11884const PROTOCOL_RELATIVE_REGEX = /^([/\\]\s*){2,}[^/\\]/; 11885const PROTOCOL_SCRIPT_RE = /^[\s\0]*(blob|data|javascript|vbscript):$/i; 11886const TRAILING_SLASH_RE$1 = /\/$|\/\?|\/#/; 11887const JOIN_LEADING_SLASH_RE = /^\.?\//; 11888function hasProtocol(inputString, opts = {}) { 11889 if (typeof opts === "boolean") { 11890 opts = { acceptRelative: opts }; 11891 } 11892 if (opts.strict) { 11893 return PROTOCOL_STRICT_REGEX.test(inputString); 11894 } 11895 return PROTOCOL_REGEX.test(inputString) || (opts.acceptRelative ? PROTOCOL_RELATIVE_REGEX.test(inputString) : false); 11896} 11897function isScriptProtocol(protocol) { 11898 return !!protocol && PROTOCOL_SCRIPT_RE.test(protocol); 11899} 11900function hasTrailingSlash(input = "", respectQueryAndFragment) { 11901 if (!respectQueryAndFragment) { 11902 return input.endsWith("/"); 11903 } 11904 return TRAILING_SLASH_RE$1.test(input); 11905} 11906function withoutTrailingSlash(input = "", respectQueryAndFragment) { 11907 if (!respectQueryAndFragment) { 11908 return (hasTrailingSlash(input) ? input.slice(0, -1) : input) || "/"; 11909 } 11910 if (!hasTrailingSlash(input, true)) { 11911 return input || "/"; 11912 } 11913 let path = input; 11914 let fragment = ""; 11915 const fragmentIndex = input.indexOf("#"); 11916 if (fragmentIndex !== -1) { 11917 path = input.slice(0, fragmentIndex); 11918 fragment = input.slice(fragmentIndex); 11919 } 11920 const [s0, ...s] = path.split("?"); 11921 const cleanPath = s0.endsWith("/") ? s0.slice(0, -1) : s0; 11922 return (cleanPath || "/") + (s.length > 0 ? `?${s.join("?")}` : "") + fragment; 11923} 11924function withTrailingSlash(input = "", respectQueryAndFragment) { 11925 if (!respectQueryAndFragment) { 11926 return input.endsWith("/") ? input : input + "/"; 11927 } 11928 if (hasTrailingSlash(input, true)) { 11929 return input || "/"; 11930 } 11931 let path = input; 11932 let fragment = ""; 11933 const fragmentIndex = input.indexOf("#"); 11934 if (fragmentIndex !== -1) { 11935 path = input.slice(0, fragmentIndex); 11936 fragment = input.slice(fragmentIndex); 11937 if (!path) { 11938 return fragment; 11939 } 11940 } 11941 const [s0, ...s] = path.split("?"); 11942 return s0 + "/" + (s.length > 0 ? `?${s.join("?")}` : "") + fragment; 11943} 11944function withoutBase(input, base) { 11945 if (isEmptyURL(base)) { 11946 return input; 11947 } 11948 const _base = withoutTrailingSlash(base); 11949 if (!input.startsWith(_base)) { 11950 return input; 11951 } 11952 const trimmed = input.slice(_base.length); 11953 return trimmed[0] === "/" ? trimmed : "/" + trimmed; 11954} 11955function withQuery(input, query) { 11956 const parsed = parseURL$1(input); 11957 const mergedQuery = { ...parseQuery$1(parsed.search), ...query }; 11958 parsed.search = stringifyQuery$1(mergedQuery); 11959 return stringifyParsedURL(parsed); 11960} 11961function isEmptyURL(url) { 11962 return !url || url === "/"; 11963} 11964function isNonEmptyURL(url) { 11965 return url && url !== "/"; 11966} 11967function joinURL(base, ...input) { 11968 let url = base || ""; 11969 for (const segment of input.filter((url2) => isNonEmptyURL(url2))) { 11970 if (url) { 11971 const _segment = segment.replace(JOIN_LEADING_SLASH_RE, ""); 11972 url = withTrailingSlash(url) + _segment; 11973 } else { 11974 url = segment; 11975 } 11976 } 11977 return url; 11978} 11979function isSamePath(p1, p2) { 11980 return decode$1(withoutTrailingSlash(p1)) === decode$1(withoutTrailingSlash(p2)); 11981} 11982const protocolRelative = Symbol.for("ufo:protocolRelative"); 11983function parseURL$1(input = "", defaultProto) { 11984 const _specialProtoMatch = input.match( 11985 /^[\s\0]*(blob:|data:|javascript:|vbscript:)(.*)/i 11986 ); 11987 if (_specialProtoMatch) { 11988 const [, _proto, _pathname = ""] = _specialProtoMatch; 11989 return { 11990 protocol: _proto.toLowerCase(), 11991 pathname: _pathname, 11992 href: _proto + _pathname, 11993 auth: "", 11994 host: "", 11995 search: "", 11996 hash: "" 11997 }; 11998 } 11999 if (!hasProtocol(input, { acceptRelative: true })) { 12000 return defaultProto ? parseURL$1(defaultProto + input) : parsePath(input); 12001 } 12002 const [, protocol = "", auth, hostAndPath = ""] = input.replace(/\\/g, "/").match(/^[\s\0]*([\w+.-]{2,}:)?\/\/([^/@]+@)?(.*)/) || []; 12003 let [, host = "", path = ""] = hostAndPath.match(/([^#/?]*)(.*)?/) || []; 12004 if (protocol === "file:") { 12005 path = path.replace(/\/(?=[A-Za-z]:)/, ""); 12006 } 12007 const { pathname, search, hash: hash2 } = parsePath(path); 12008 return { 12009 protocol: protocol.toLowerCase(), 12010 auth: auth ? auth.slice(0, Math.max(0, auth.length - 1)) : "", 12011 host, 12012 pathname, 12013 search, 12014 hash: hash2, 12015 [protocolRelative]: !protocol 12016 }; 12017} 12018function parsePath(input = "") { 12019 const [pathname = "", search = "", hash2 = ""] = (input.match(/([^#?]*)(\?[^#]*)?(#.*)?/) || []).splice(1); 12020 return { 12021 pathname, 12022 search, 12023 hash: hash2 12024 }; 12025} 12026function stringifyParsedURL(parsed) { 12027 const pathname = parsed.pathname || ""; 12028 const search = parsed.search ? (parsed.search.startsWith("?") ? "" : "?") + parsed.search : "";
12029 const hash2 = parsed.hash || ""; 12030 const auth = parsed.auth ? parsed.auth + "@" : ""; 12031 const host = parsed.host || ""; 12032 const proto = parsed.protocol || parsed[protocolRelative] ? (parsed.protocol || "") + "//" : ""; 12033 return proto + auth + host + pathname + search + hash2; 12034} 12035const LayoutMetaSymbol = Symbol("layout-meta"); 12036const PageRouteSymbol = Symbol("route"); 12037const useRouter$2 = () => { 12038 var _a; 12039 return (_a = useNuxtApp()) == null ? void 0 : _a.$router; 12040}; 12041const useRoute$2 = () => { 12042 if (hasInjectionContext()) { 12043 return inject(PageRouteSymbol, useNuxtApp()._route); 12044 } 12045 return useNuxtApp()._route; 12046}; 12047// @__NO_SIDE_EFFECTS__ 12048function defineNuxtRouteMiddleware(middleware) { 12049 return middleware; 12050} 12051const isProcessingMiddleware = () => { 12052 try { 12053 if (useNuxtApp()._processingMiddleware) { 12054 return true; 12055 } 12056 } catch { 12057 return false; 12058 } 12059 return false; 12060}; 12061const navigateTo = (to, options) => { 12062 to || (to = "/"); 12063 const toPath = typeof to === "string" ? to : "path" in to ? resolveRouteObject(to) : useRouter$2().resolve(to).href; 12064 if (options == null ? void 0 : options.open) { 12065 const { target = "_blank", windowFeatures = {} } = options.open; 12066 const features = Object.entries(windowFeatures).filter(([_, value]) => value !== void 0).map(([feature, value]) => `${feature.toLowerCase()}=${value}`).join(", "); 12067 open(toPath, target, features); 12068 return Promise.resolve(); 12069 } 12070 const isExternalHost = hasProtocol(toPath, { acceptRelative: true }); 12071 const isExternal = (options == null ? void 0 : options.external) || isExternalHost; 12072 if (isExternal) { 12073 if (!(options == null ? void 0 : options.external)) { 12074 throw new Error("Navigating to an external URL is not allowed by default. Use `navigateTo(url, { external: true })`."); 12075 } 12076 const { protocol } = new URL(toPath, window.location.href); 12077 if (protocol && isScriptProtocol(protocol)) { 12078 throw new Error(`Cannot navigate to a URL with '${protocol}' protocol.`); 12079 } 12080 } 12081 const inMiddleware = isProcessingMiddleware(); 12082 if (!isExternal && inMiddleware) { 12083 if (options == null ? void 0 : options.replace) { 12084 if (typeof to === "string") { 12085 const { pathname, search, hash: hash2 } = parseURL$1(to); 12086 return { 12087 path: pathname, 12088 ...search && { query: parseQuery$1(search) }, 12089 ...hash2 && { hash: hash2 }, 12090 replace: true 12091 }; 12092 } 12093 return { ...to, replace: true }; 12094 } 12095 return to; 12096 } 12097 const router = useRouter$2(); 12098 const nuxtApp = useNuxtApp(); 12099 if (isExternal) { 12100 nuxtApp._scope.stop(); 12101 if (options == null ? void 0 : options.replace) { 12102 location.replace(toPath); 12103 } else { 12104 location.href = toPath; 12105 } 12106 if (inMiddleware) { 12107 if (!nuxtApp.isHydrating) { 12108 return false; 12109 } 12110 return new Promise(() => { 12111 }); 12112 } 12113 return Promise.resolve(); 12114 } 12115 return (options == null ? void 0 : options.replace) ? router.replace(to) : router.push(to); 12116}; 12117function resolveRouteObject(to) { 12118 return withQuery(to.path || "", to.query || {}) + (to.hash || ""); 12119} 12120const NUXT_ERROR_SIGNATURE = "__nuxt_error"; 12121const useError = () => toRef(useNuxtApp().payload, "error"); 12122const showError = (error) => { 12123 const nuxtError = createError(error); 12124 try { 12125 const nuxtApp = useNuxtApp(); 12126 const error2 = useError(); 12127 if (true) { 12128 nuxtApp.hooks.callHook("app:error", nuxtError); 12129 } 12130 error2.value || (error2.value = nuxtError); 12131 } catch { 12132 throw nuxtError; 12133 } 12134 return nuxtError; 12135}; 12136const clearError = async (options = {}) => { 12137 const nuxtApp = useNuxtApp(); 12138 const error = useError(); 12139 nuxtApp.callHook("app:error:cleared", options); 12140 if (options.redirect) { 12141 await useRouter$2().replace(options.redirect); 12142 } 12143 error.value = nuxtDefaultErrorValue; 12144}; 12145const isNuxtError = (error) => !!error && typeof error === "object" && NUXT_ERROR_SIGNATURE in error; 12146const createError = (error) => { 12147 const nuxtError = createError$1(error); 12148 Object.defineProperty(nuxtError, NUXT_ERROR_SIGNATURE, { 12149 value: true, 12150 configurable: false, 12151 writable: false 12152 }); 12153 return nuxtError; 12154}; 12155function decode64(string) { 12156 const binaryString = asciiToBinary(string); 12157 const arraybuffer = new ArrayBuffer(binaryString.length); 12158 const dv = new DataView(arraybuffer); 12159 for (let i = 0; i < arraybuffer.byteLength; i++) { 12160 dv.setUint8(i, binaryString.charCodeAt(i)); 12161 } 12162 return arraybuffer; 12163} 12164const KEY_STRING = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
12164+/"; 12165function asciiToBinary(data) { 12166 if (data.length % 4 === 0) { 12167 data = data.replace(/==?$/, ""); 12168 } 12169 let output = ""; 12170 let buffer2 = 0; 12171 let accumulatedBits = 0; 12172 for (let i = 0; i < data.length; i++) { 12173 buffer2 <<= 6; 12174 buffer2 |= KEY_STRING.indexOf(data[i]); 12175 accumulatedBits += 6; 12176 if (accumulatedBits === 24) { 12177 output += String.fromCharCode((buffer2 & 16711680) >> 16); 12178 output += String.fromCharCode((buffer2 & 65280) >> 8); 12179 output += String.fromCharCode(buffer2 & 255); 12180 buffer2 = accumulatedBits = 0; 12181 } 12182 } 12183 if (accumulatedBits === 12) { 12184 buffer2 >>= 4; 12185 output += String.fromCharCode(buffer2); 12186 } else if (accumulatedBits === 18) { 12187 buffer2 >>= 2; 12188 output += String.fromCharCode((buffer2 & 65280) >> 8); 12189 output += String.fromCharCode(buffer2 & 255); 12190 } 12191 return output; 12192} 12193const UNDEFINED = -1; 12194const HOLE = -2; 12195const NAN$1 = -3; 12196const POSITIVE_INFINITY = -4; 12197const NEGATIVE_INFINITY = -5; 12198const NEGATIVE_ZERO = -6; 12199function parse(serialized, revivers) { 12200 return unflatten(JSON.parse(serialized), revivers); 12201} 12202function unflatten(parsed, revivers) { 12203 if (typeof parsed === "number") return hydrate2(parsed, true); 12204 if (!Array.isArray(parsed) || parsed.length === 0) { 12205 throw new Error("Invalid input"); 12206 } 12207 const values = ( 12208 /** @type {any[]} */ 12209 parsed 12210 ); 12211 const hydrated = Array(values.length); 12212 function hydrate2(index2, standalone = false) { 12213 if (index2 === UNDEFINED) return void 0; 12214 if (index2 === NAN$1) return NaN; 12215 if (index2 === POSITIVE_INFINITY) return Infinity; 12216 if (index2 === NEGATIVE_INFINITY) return -Infinity; 12217 if (index2 === NEGATIVE_ZERO) return -0; 12218 if (standalone) throw new Error(`Invalid input`); 12219 if (index2 in hydrated) return hydrated[index2]; 12220 const value = values[index2]; 12221 if (!value || typeof value !== "object") { 12222 hydrated[index2] = value; 12223 } else if (Array.isArray(value)) { 12224 if (typeof value[0] === "string") { 12225 const type = value[0]; 12226 const reviver = revivers == null ? void 0 : revivers[type]; 12227 if (reviver) { 12228 return hydrated[index2] = reviver(hydrate2(value[1])); 12229 } 12230 switch (type) { 12231 case "Date": 12232 hydrated[index2] = new Date(value[1]); 12233 break; 12234 case "Set": 12235 const set2 = /* @__PURE__ */ new Set(); 12236 hydrated[index2] = set2; 12237 for (let i = 1; i < value.length; i += 1) { 12238 set2.add(hydrate2(value[i])); 12239 } 12240 break; 12241 case "Map": 12242 const map = /* @__PURE__ */ new Map(); 12243 hydrated[index2] = map; 12244 for (let i = 1; i < value.length; i += 2) { 12245 map.set(hydrate2(value[i]), hydrate2(value[i + 1])); 12246 } 12247 break; 12248 case "RegExp": 12249 hydrated[index2] = new RegExp(value[1], value[2]); 12250 break; 12251 case "Object": 12252 hydrated[index2] = Object(value[1]); 12253 break; 12254 case "BigInt": 12255 hydrated[index2] = BigInt(value[1]); 12256 break; 12257 case "null": 12258 const obj = /* @__PURE__ */ Object.create(null); 12259 hydrated[index2] = obj; 12260 for (let i = 1; i < value.length; i += 2) { 12261 obj[value[i]] = hydrate2(value[i + 1]); 12262 } 12263 break; 12264 case "Int8Array": 12265 case "Uint8Array": 12266 case "Uint8ClampedArray": 12267 case "Int16Array": 12268 case "Uint16Array": 12269 case "Int32Array": 12270 case "Uint32Array": 12271 case "Float32Array": 12272 case "Float64Array": 12273 case "BigInt64Array": 12274 case "BigUint64Array": { 12275 const TypedArrayConstructor = globalThis[type]; 12276 const base64 = value[1]; 12277 const arraybuffer = decode64(base64); 12278 const typedArray = new TypedArrayConstructor(arraybuffer); 12279 hydrated[index2] = typedArray; 12280 break; 12281 } 12282 case "ArrayBuffer": { 12283 const base64 = value[1]; 12284 const arraybuffer = decode64(base64); 12285 hydrated[index2] = arraybuffer; 12286 break; 12287 } 12288 default: 12289 throw new Error(`Unknown type ${type}`); 12290 } 12291 } else { 12292 const array = new Array(value.length); 12293 hydrated[index2] = array; 12294 for (let i = 0; i < value.length; i += 1) { 12295 const n = value[i]; 12296 if (n === HOLE) continue; 12297 array[i] = hydrate2(n); 12298 } 12299 } 12300 } else { 12301 const object = {}; 12302 hydrated[index2] = object; 12303 for (const key in value) { 12304 const n = value[key]; 12305 object[key] = hydrate2(n); 12306 } 12307 } 12308 return hydrated[index2]; 12309 } 12310 return hydrate2(0); 12311} 12312const DupeableTags = /* @__PURE__ */ new Set(["link", "style", "script", "noscript"]); 12313const TagsWithInnerContent = /* @__PURE__ */ new Set(["title", "titleTemplate", "script", "style", "noscript"]); 12314const HasElementTags = /* @__PURE__ */ new Set([ 12315 "base", 12316 "meta", 12317 "link", 12318 "style", 12319 "script", 12320 "noscript" 12321]); 12322const ValidHeadTags = /* @__PURE__ */ new Set([ 12323 "title", 12324 "base", 12325 "htmlAttrs", 12326 "bodyAttrs", 12327 "meta", 12328 "link", 12329 "style", 12330 "script", 12331 "noscript" 12332]); 12333const UniqueTags = /* @__PURE__ */ new Set(["base", "title", "titleTemplate", "bodyAttrs", "htmlAttrs", "templateParams"]); 12334const TagConfigKeys = /* @__PURE__ */ new Set(["key", "tagPosition", "tagPriority", "tagDuplicateStrategy", "innerHTML", "textContent", "processTemplateParams"]); 12335const UsesMergeStrategy = /* @__PURE__ */ new Set(["templateParams", "htmlAttrs", "bodyAttrs"]); 12336const MetaTagsArrayable = /* @__PURE__ */ new Set([ 12337 "theme-color", 12338 "google-site-verification", 12339 "og", 12340 "article", 12341 "book", 12342 "profile", 12343 "twitter", 12344 "author" 12345]); 12346function defineHeadPlugin(plugin) { 12347 return plugin; 12348} 12349const allowedMetaProperties = ["name", "property", "http-equiv"]; 12350function isMetaArrayDupeKey(v2) { 12351 const k3 = v2.split(":")[1]; 12352 return MetaTagsArrayable.has(k3); 12353} 12354function dedupeKey(tag) { 12355 const { props, tag: name } = tag; 12356 if (UniqueTags.has(name)) 12357 return name; 12358 if (name === "link" && props.rel === "canonical") 12359 return "canonical"; 12360 if (props.charset) 12361 return "charset"; 12362 if (tag.tag === "meta") { 12363 for (const n of allowedMetaProperties) { 12364 if (props[n] !== void 0) { 12365 return `${name}:${props[n]}`; 12366 } 12367 } 12368 } 12369 if (tag.key) { 12370 return `${name}:key:${tag.key}`; 12371 } 12372 if (props.id) { 12373 return `${name}:id:${props.id}`; 12374 } 12375 if (TagsWithInnerContent.has(name)) { 12376 const v2 = tag.textContent || tag.innerHTML; 12377 if (v2) { 12378 return `${name}:content:${v2}`; 12379 } 12380 } 12381} 12382function hashTag(tag) { 12383 const dedupe = tag._h || tag._d; 12384 if (dedupe) 12385 return dedupe; 12386 const inner = tag.textContent || tag.innerHTML; 12387 if (inner) 12388 return inner; 12389 return `${tag.tag}:${Object.entries(tag.props).map(([k3, v2]) => `${k3}:${String(v2)}`).join(",")}`; 12390} 12391function walkResolver(val, resolve2, key) { 12392 const type = typeof val; 12393 if (type === "function") { 12394 if (!key || key !== "titleTemplate" && !(key[0] === "o" && key[1] === "
12394n")) { 12395 val = val(); 12396 } 12397 } 12398 let v2; 12399 if (resolve2) { 12400 v2 = resolve2(key, val); 12401 } 12402 if (Array.isArray(v2)) { 12403 return v2.map((r2) => walkResolver(r2, resolve2)); 12404 } 12405 if ((v2 == null ? void 0 : v2.constructor) === Object) { 12406 const next = {}; 12407 for (const key2 of Object.keys(v2)) { 12408 next[key2] = walkResolver(v2[key2], resolve2, key2); 12409 } 12410 return next; 12411 } 12412 return v2; 12413} 12414function normalizeStyleClassProps(key, value) { 12415 const store = key === "style" ? /* @__PURE__ */ new Map() : /* @__PURE__ */ new Set(); 12416 function processValue(rawValue2) { 12417 const value2 = rawValue2.trim(); 12418 if (!value2) 12419 return; 12420 if (key === "style") { 12421 const [k3, ...v2] = value2.split(":").map((s) => s.trim()); 12422 if (k3 && v2.length) 12423 store.set(k3, v2.join(":")); 12424 } else { 12425 value2.split(" ").filter(Boolean).forEach((c2) => store.add(c2)); 12426 } 12427 } 12428 if (typeof value === "string") { 12429 key === "style" ? value.split(";").forEach(processValue) : processValue(value); 12430 } else if (Array.isArray(value)) { 12431 value.forEach((item) => processValue(item)); 12432 } else if (value && typeof value === "object") { 12433 Object.entries(value).forEach(([k3, v2]) => { 12434 if (v2 && v2 !== "false") { 12435 key === "style" ? store.set(k3.trim(), v2) : processValue(k3); 12436 } 12437 }); 12438 } 12439 return store; 12440} 12441function normalizeProps(tag, input) { 12442 tag.props = tag.props || {}; 12443 if (!input) { 12444 return tag; 12445 } 12446 Object.entries(input).forEach(([key, value]) => { 12447 if (value === null) { 12448 tag.props[key] = null; 12449 return; 12450 } 12451 if (key === "class" || key === "style") { 12452 tag.props[key] = normalizeStyleClassProps(key, value); 12453 return; 12454 } 12455 if (TagConfigKeys.has(key)) { 12456 if (["textContent", "innerHTML"].includes(key) && typeof value === "object") { 12457 let type = input.type; 12458 if (!input.type) { 12459 type = "application/json"; 12460 } 12461 if (!(type == null ? void 0 : type.endsWith("json")) && type !== "speculationrules") { 12462 return; 12463 } 12464 input.type = type; 12465 tag.props.type = type; 12466 tag[key] = JSON.stringify(value); 12467 } else { 12468 tag[key] = value; 12469 } 12470 return; 12471 } 12472 const strValue = String(value); 12473 const isDataKey = key.startsWith("data-"); 12474 if (strValue === "true" || strValue === "") { 12475 tag.props[key] = isDataKey ? strValue : true; 12476 } else if (!value && isDataKey && strValue === "false") { 12477 tag.props[key] = "false"; 12478 } else if (value !== void 0) { 12479 tag.props[key] = value; 12480 } 12481 }); 12482 return tag; 12483} 12484function normalizeTag(tagName, _input) { 12485 const input = typeof _input === "object" && typeof _input !== "function" ? _input : { [tagName === "script" || tagName === "noscript" || tagName === "style" ? "innerHTML" : "textContent"]: _input }; 12486 const tag = normalizeProps({ tag: tagName, props: {} }, input); 12487 if (tag.key && DupeableTags.has(tag.tag)) { 12488 tag.props["data-hid"] = tag._h = tag.key; 12489 } 12490 if (tag.tag === "script" && typeof tag.innerHTML === "object") { 12491 tag.innerHTML = JSON.stringify(tag.innerHTML); 12492 tag.props.type = tag.props.type || "application/json"; 12493 } 12494 return Array.isArray(tag.props.content) ? tag.props.content.map((v2) => ({ ...tag, props: { ...tag.props, content: v2 } })) : tag; 12495} 12496function normalizeEntryToTags(input, propResolvers) { 12497 if (!input) { 12498 return []; 12499 } 12500 if (typeof input === "function") { 12501 input = input(); 12502 } 12503 const resolvers = (key, val) => { 12504 for (let i = 0; i < propResolvers.length; i++) { 12505 val = propResolvers[i](key, val); 12506 } 12507 return val; 12508 }; 12509 input = resolvers(void 0, input); 12510 const tags = []; 12511 input = walkResolver(input, resolvers); 12512 Object.entries(input || {}).forEach(([key, value]) => { 12513 if (value === void 0) 12514 return; 12515 for (const v2 of Array.isArray(value) ? value : [value]) 12516 tags.push(normalizeTag(key, v2)); 12517 }); 12518 return tags.flat(); 12519} 12520const sortTags = (a, b2) => a._w === b2._w ? a._p - b2._p : a._w - b2._w; 12521const TAG_WEIGHTS = { 12522 base: -10, 12523 title: 10 12524}; 12525const TAG_ALIASES = { 12526 critical: -8, 12527 high: -1, 12528 low: 2 12529}; 12530const WEIGHT_MAP = { 12531 meta: { 12532 "content-security-policy": -30, 12533 "charset": -20, 12534 "viewport": -15 12535 }, 12536 link: { 12537 "preconnect": 20, 12538 "stylesheet": 60, 12539 "preload": 70, 12540 "modulepreload": 70, 12541 "prefetch": 90, 12542 "dns-prefetch": 90, 12543 "prerender": 90 12544 }, 12545 script: { 12546 async: 30, 12547 defer: 80, 12548 sync: 50 12549 }, 12550 style: { 12551 imported: 40, 12552 sync: 60 12553 } 12554}; 12555const ImportStyleRe = /@import/; 12556const isTruthy = (val) => val === "" || val === true; 12557function tagWeight(head, tag) { 12558 var _a;
12559 if (typeof tag.tagPriority === "number") 12560 return tag.tagPriority; 12561 let weight = 100; 12562 const offset = TAG_ALIASES[tag.tagPriority] || 0; 12563 const weightMap = head.resolvedOptions.disableCapoSorting ? { 12564 link: {}, 12565 script: {}, 12566 style: {} 12567 } : WEIGHT_MAP; 12568 if (tag.tag in TAG_WEIGHTS) { 12569 weight = TAG_WEIGHTS[tag.tag]; 12570 } else if (tag.tag === "meta") { 12571 const metaType = tag.props["http-equiv"] === "content-security-policy" ? "content-security-policy" : tag.props.charset ? "charset" : tag.props.name === "viewport" ? "viewport" : null; 12572 if (metaType) 12573 weight = WEIGHT_MAP.meta[metaType]; 12574 } else if (tag.tag === "link" && tag.props.rel) { 12575 weight = weightMap.link[tag.props.rel]; 12576 } else if (tag.tag === "script") { 12577 if (isTruthy(tag.props.async)) { 12578 weight = weightMap.script.async; 12579 } else if (tag.props.src && !isTruthy(tag.props.defer) && !isTruthy(tag.props.async) && tag.props.type !== "module" && !((_a = tag.props.type) == null ? void 0 : _a.endsWith("json"))) { 12580 weight = weightMap.script.sync; 12581 } else if (isTruthy(tag.props.defer) && tag.props.src && !isTruthy(tag.props.async)) { 12582 weight = weightMap.script.defer; 12583 } 12584 } else if (tag.tag === "style") { 12585 weight = tag.innerHTML && ImportStyleRe.test(tag.innerHTML) ? weightMap.style.imported : weightMap.style.sync; 12586 } 12587 return (weight || 100) + offset; 12588} 12589function registerPlugin(head, p2) { 12590 const plugin = typeof p2 === "function" ? p2(head) : p2; 12591 const key = plugin.key || String(head.plugins.size + 1); 12592 const exists = head.plugins.get(key); 12593 if (!exists) { 12594 head.plugins.set(key, plugin); 12595 head.hooks.addHooks(plugin.hooks || {}); 12596 } 12597} 12598// @__NO_SIDE_EFFECTS__ 12599function createUnhead(resolvedOptions = {}) { 12600 var _a; 12601 const hooks = createHooks(); 12602 hooks.addHooks(resolvedOptions.hooks || {}); 12603 const ssr = !resolvedOptions.document; 12604 const entries = /* @__PURE__ */ new Map(); 12605 const plugins = /* @__PURE__ */ new Map(); 12606 const normalizeQueue = []; 12607 const head = { 12608 _entryCount: 1, 12609 // 0 is reserved for internal use 12610 plugins, 12611 dirty: false, 12612 resolvedOptions, 12613 hooks, 12614 ssr, 12615 entries, 12616 headEntries() { 12617 return [...entries.values()]; 12618 }, 12619 use: (p2) => registerPlugin(head, p2), 12620 push(input, _options) { 12621 const options = { ..._options || {} }; 12622 delete options.head; 12623 const _i = options._index ?? head._entryCount++; 12624 const inst = { _i, input, options }; 12625 const _ = { 12626 _poll(rm = false) { 12627 head.dirty = true; 12628 !rm && normalizeQueue.push(_i); 12629 hooks.callHook("entries:updated", head); 12630 }, 12631 dispose() { 12632 if (entries.delete(_i)) { 12633 _._poll(true); 12634 } 12635 }, 12636 // a patch is the same as creating a new entry, just a nice DX 12637 patch(input2) { 12638 if (!options.mode || options.mode === "server" && ssr || options.mode === "client" && !ssr) { 12639 inst.input = input2; 12640 entries.set(_i, inst); 12641 _._poll(); 12642 } 12643 } 12644 }; 12645 _.patch(input); 12646 return _; 12647 }, 12648 async resolveTags() { 12649 var _a2; 12650 const ctx = { 12651 tagMap: /* @__PURE__ */ new Map(), 12652 tags: [], 12653 entries: [...head.entries.values()] 12654 }; 12655 await hooks.callHook("entries:resolve", ctx); 12656 while (normalizeQueue.length) { 12657 const i = normalizeQueue.shift(); 12658 const e = entries.get(i); 12659 if (e) { 12660 const normalizeCtx = { 12661 tags: normalizeEntryToTags(e.input, resolvedOptions.propResolvers || []).map((t) => Object.assign(t, e.options)), 12662 entry: e 12663 }; 12664 await hooks.callHook("entries:normalize", normalizeCtx); 12665 e._tags = normalizeCtx.tags.map((t, i2) => { 12666 t._w = tagWeight(head, t); 12667 t._p = (e._i << 10) + i2; 12668 t._d = dedupeKey(t); 12669 return t; 12670 }); 12671 } 12672 } 12673 let hasFlatMeta = false; 12674 ctx.entries.flatMap((e) => (e._tags || []).map((t) => ({ ...t, props: { ...t.props } }))).sort(sortTags).reduce((acc, next) => {
12675 const k3 = String(next._d || next._p); 12676 if (!acc.has(k3)) 12677 return acc.set(k3, next); 12678 const prev = acc.get(k3); 12679 const strategy = (next == null ? void 0 : next.tagDuplicateStrategy) || (UsesMergeStrategy.has(next.tag) ? "merge" : null) || (next.key && next.key === prev.key ? "merge" : null); 12680 if (strategy === "merge") { 12681 const newProps = { ...prev.props }; 12682 Object.entries(next.props).forEach(([p2, v2]) => ( 12683 // @ts-expect-error untyped 12684 newProps[p2] = p2 === "style" ? new Map([...prev.props.style || /* @__PURE__ */ new Map(), ...v2]) : p2 === "class" ? /* @__PURE__ */ new Set([...prev.props.class || /* @__PURE__ */ new Set(), ...v2]) : v2 12685 )); 12686 acc.set(k3, { ...next, props: newProps }); 12687 } else if (next._p >> 10 === prev._p >> 10 && isMetaArrayDupeKey(next._d)) { 12688 acc.set(k3, Object.assign([...Array.isArray(prev) ? prev : [prev], next], next)); 12689 hasFlatMeta = true; 12690 } else if (next._w === prev._w ? next._p > prev._p : (next == null ? void 0 : next._w) < (prev == null ? void 0 : prev._w)) { 12691 acc.set(k3, next); 12692 } 12693 return acc; 12694 }, ctx.tagMap); 12695 const title = ctx.tagMap.get("title"); 12696 const titleTemplate = ctx.tagMap.get("titleTemplate"); 12697 head._title = title == null ? void 0 : title.textContent; 12698 if (titleTemplate) { 12699 const titleTemplateFn = titleTemplate == null ? void 0 : titleTemplate.textContent; 12700 head._titleTemplate = titleTemplateFn; 12701 if (titleTemplateFn) { 12702 let newTitle = typeof titleTemplateFn === "function" ? titleTemplateFn(title == null ? void 0 : title.textContent) : titleTemplateFn; 12703 if (typeof newTitle === "string" && !head.plugins.has("template-params")) { 12704 newTitle = newTitle.replace("%s", (title == null ? void 0 : title.textContent) || ""); 12705 } 12706 if (title) { 12707 newTitle === null ? ctx.tagMap.delete("title") : ctx.tagMap.set("title", { ...title, textContent: newTitle }); 12708 } else { 12709 titleTemplate.tag = "title"; 12710 titleTemplate.textContent = newTitle; 12711 } 12712 } 12713 } 12714 ctx.tags = Array.from(ctx.tagMap.values()); 12715 if (hasFlatMeta) { 12716 ctx.tags = ctx.tags.flat().sort(sortTags); 12717 } 12718 await hooks.callHook("tags:beforeResolve", ctx); 12719 await hooks.callHook("tags:resolve", ctx); 12720 await hooks.callHook("tags:afterResolve", ctx); 12721 const finalTags = []; 12722 for (const t of ctx.tags) { 12723 const { innerHTML, tag, props } = t; 12724 if (!ValidHeadTags.has(tag)) { 12725 continue; 12726 } 12727 if (Object.keys(props).length === 0 && !t.innerHTML && !t.textContent) { 12728 continue; 12729 } 12730 if (tag === "meta" && !props.content && !props["http-equiv"] && !props.charset) { 12731 continue; 12732 } 12733 if (tag === "script" && innerHTML) { 12734 if ((_a2 = props.type) == null ? void 0 : _a2.endsWith("json")) { 12735 const v2 = typeof innerHTML === "string" ? innerHTML : JSON.stringify(innerHTML); 12736 t.innerHTML = v2.replace(/</g, "\\u003C"); 12737 } else if (typeof innerHTML === "string") { 12738 t.innerHTML = innerHTML.replace(new RegExp(`</${tag}`, "g"), `<\\/${tag}`); 12739 } 12740 t._d = dedupeKey(t); 12741 } 12742 finalTags.push(t); 12743 } 12744 return finalTags; 12745 } 12746 }; 12747 ((resolvedOptions == null ? void 0 : resolvedOptions.plugins) || []).forEach((p2) => registerPlugin(head, p2)); 12748 head.hooks.callHook("init", head); 12749 (_a = resolvedOptions.init) == null ? void 0 : _a.forEach((e) => e && head.push(e)); 12750 return head; 12751} 12752const SepSub = "%separator"; 12753const SepSubRE = new RegExp(`${SepSub}(?:\\s*${SepSub})*`, "g"); 12754function sub(p2, token, isJson = false) { 12755 var _a; 12756 let val; 12757 if (token === "s" || token === "pageTitle") { 12758 val = p2.pageTitle; 12759 } else if (token.includes(".")) { 12760 const dotIndex = token.indexOf("."); 12761 val = (_a = p2[token.substring(0, dotIndex)]) == null ? void 0 : _a[token.substring(dotIndex + 1)]; 12762 } else { 12763 val = p2[token]; 12764 } 12765 if (val !== void 0) { 12766 return isJson ? (val || "").replace(/\\/g, "\\\\").replace(/</g, "\\u003C").replace(/"/g, '\\"') : val || ""; 12767 } 12768 return void 0; 12769} 12770function processTemplateParams(s, p2, sep, isJson = false) { 12771 if (typeof s !== "string" || !s.includes("%")) 12772 return s; 12773 let decoded = s; 12774 try { 12775 decoded = decodeURI(s); 12776 } catch { 12777 } 12778 const tokens = decoded.match(/%\w+(?:\.\w+)?/g); 12779 if (!tokens) { 12780 return s; 12781 } 12782 const hasSepSub = s.includes(SepSub); 12783 s = s.replace(/%\w+(?:\.\w+)?/g, (token) => { 12784 if (token === SepSub || !tokens.includes(token)) { 12785 return token; 12786 } 12787 const re = sub(p2, token.slice(1), isJson); 12788 return re !== void 0 ? re : token; 12789 }).trim(); 12790 if (hasSepSub) { 12791 if (s.endsWith(SepSub)) 12792 s = s.slice(0, -SepSub.length); 12793 if (s.startsWith(SepSub)) 12794 s = s.slice(SepSub.length); 12795 s = s.replace(SepSubRE, sep || "").trim(); 12796 } 12797 return s; 12798} 12799const formatKey = (k3) => !k3.includes(":key") ? k3.split(":").join(":key:") : k3; 12800const AliasSortingPlugin = defineHeadPlugin({ 12801 key: "aliasSorting", 12802 hooks: { 12803 "tags:resolve": (ctx) => { 12804 let m = false;
12805 for (const t of ctx.tags) { 12806 const p2 = t.tagPriority; 12807 if (!p2) 12808 continue; 12809 const s = String(p2); 12810 if (s.startsWith("before:")) { 12811 const k3 = formatKey(s.slice(7)); 12812 const l3 = ctx.tagMap.get(k3); 12813 if (l3) { 12814 if (typeof l3.tagPriority === "number") 12815 t.tagPriority = l3.tagPriority; 12816 t._p = l3._p - 1; 12817 m = true; 12818 } 12819 } else if (s.startsWith("after:")) { 12820 const k3 = formatKey(s.slice(6)); 12821 const l3 = ctx.tagMap.get(k3); 12822 if (l3) { 12823 if (typeof l3.tagPriority === "number") 12824 t.tagPriority = l3.tagPriority; 12825 t._p = l3._p + 1; 12826 m = true; 12827 } 12828 } 12829 } 12830 if (m) 12831 ctx.tags = ctx.tags.sort(sortTags); 12832 } 12833 } 12834}); 12835const DeprecationsPlugin = /* @__PURE__ */ defineHeadPlugin({ 12836 key: "deprecations", 12837 hooks: { 12838 "entries:normalize": ({ tags }) => { 12839 for (const tag of tags) { 12840 if (tag.props.children) { 12841 tag.innerHTML = tag.props.children; 12842 delete tag.props.children; 12843 } 12844 if (tag.props.hid) { 12845 tag.key = tag.props.hid; 12846 delete tag.props.hid; 12847 } 12848 if (tag.props.vmid) { 12849 tag.key = tag.props.vmid; 12850 delete tag.props.vmid; 12851 } 12852 if (tag.props.body) { 12853 tag.tagPosition = "bodyClose"; 12854 delete tag.props.body; 12855 } 12856 } 12857 } 12858 } 12859}); 12860async function walkPromises(v2) { 12861 const type = typeof v2; 12862 if (type === "function") { 12863 return v2; 12864 } 12865 if (v2 instanceof Promise) { 12866 return await v2; 12867 } 12868 if (Array.isArray(v2)) { 12869 return await Promise.all(v2.map((r2) => walkPromises(r2))); 12870 } 12871 if ((v2 == null ? void 0 : v2.constructor) === Object) { 12872 const next = {}; 12873 for (const key of Object.keys(v2)) { 12874 next[key] = await walkPromises(v2[key]); 12875 } 12876 return next; 12877 } 12878 return v2; 12879} 12880const PromisesPlugin = /* @__PURE__ */ defineHeadPlugin({ 12881 key: "promises", 12882 hooks: { 12883 "entries:resolve": async (ctx) => { 12884 const promises = []; 12885 for (const k3 in ctx.entries) { 12886 if (!ctx.entries[k3]._promisesProcessed) { 12887 promises.push( 12888 walkPromises(ctx.entries[k3].input).then((val) => { 12889 ctx.entries[k3].input = val; 12890 ctx.entries[k3]._promisesProcessed = true; 12891 }) 12892 ); 12893 } 12894 } 12895 await Promise.all(promises); 12896 } 12897 } 12898}); 12899const SupportedAttrs = { 12900 meta: "content", 12901 link: "href", 12902 htmlAttrs: "lang" 12903}; 12904const contentAttrs = ["innerHTML", "textContent"]; 12905const TemplateParamsPlugin = /* @__PURE__ */ defineHeadPlugin((head) => { 12906 return { 12907 key: "template-params", 12908 hooks: { 12909 "entries:normalize": (ctx) => { 12910 var _a, _b, _c; 12911 const params = ((_b = (_a = ctx.tags.filter((t) => t.tag === "templateParams" && t.mode === "server")) == null ? void 0 : _a[0]) == null ? void 0 : _b.props) || {}; 12912 if (Object.keys(params).length) { 12913 head._ssrPayload = { 12914 templateParams: { 12915 ...((_c = head._ssrPayload) == null ? void 0 : _c.templateParams) || {}, 12916 ...params 12917 } 12918 }; 12919 } 12920 }, 12921 "tags:resolve": ({ tagMap, tags }) => { 12922 var _a; 12923 const params = ((_a = tagMap.get("templateParams")) == null ? void 0 : _a.props) || {}; 12924 const sep = params.separator || "|"; 12925 delete params.separator; 12926 params.pageTitle = processTemplateParams( 12927 // find templateParams 12928 params.pageTitle || head._title || "", 12929 params, 12930 sep 12931 ); 12932 for (const tag of tags) { 12933 if (tag.processTemplateParams === false) { 12934 continue; 12935 } 12936 const v2 = SupportedAttrs[tag.tag]; 12937 if (v2 && typeof tag.props[v2] === "string") { 12938 tag.props[v2] = processTemplateParams(tag.props[v2], params, sep); 12939 } else if (tag.processTemplateParams || tag.tag === "titleTemplate" || tag.tag === "title") { 12940 for (const p2 of contentAttrs) { 12941 if (typeof tag[p2] === "string") 12942 tag[p2] = processTemplateParams(tag[p2], params, sep, tag.tag === "script" && tag.props.type.endsWith("json")); 12943 } 12944 } 12945 } 12946 head._templateParams = params; 12947 head._separator = sep; 12948 }, 12949 "tags:afterResolve": ({ tagMap }) => { 12950 const title = tagMap.get("title"); 12951 if ((title == null ? void 0 : title.textContent) && title.processTemplateParams !== false) { 12952 title.textContent = processTemplateParams(title.textContent, head._templateParams, head._separator); 12953 } 12954 } 12955 } 12956 }; 12957}); 12958const VueResolver = (_, value) => { 12959 return isRef(value) ? toValue(value) : value; 12960}; 12961const headSymbol = "usehead"; 12962function vueInstall(head) { 12963 const plugin = { 12964 install(app) { 12965 app.config.globalProperties.$unhead = head; 12966 app.config.globalProperties.$head = head; 12967 app.provide(headSymbol, head); 12968 } 12969 }; 12970 return plugin.install; 12971} 12972function injectHead$1() { 12973 if (hasInjectionContext()) { 12974 const instance = inject(headSymbol); 12975 if (!instance) { 12976 throw new Error("useHead() was called without provide context, ensure you call it through the setup() function."); 12977 } 12978 return instance; 12979 } 12980 throw new Error("useHead() was called without provide context, ensure you call it through the setup() function."); 12981} 12982function useHead$1(input, options = {}) { 12983 const head = options.head || injectHead$1(); 12984 return head.ssr ? head.push(input || {}, options) : clientUseHead(head, input, options); 12985} 12986function clientUseHead(head, input, options = {}) { 12987 const deactivated = ref(false); 12988 let entry; 12989 watchEffect(() => { 12990 const i = deactivated.value ? {} : walkResolver(input, VueResolver); 12991 if (entry) { 12992 entry.patch(i); 12993 } else { 12994 entry = head.push(i, options); 12995 } 12996 }); 12997 const vm = getCurrentInstance(); 12998 if (vm) { 12999 onBeforeUnmount(() => { 13000 entry.dispose(); 13001 }); 13002 onDeactivated(() => { 13003 deactivated.value = true; 13004 }); 13005 onActivated(() => { 13006 deactivated.value = false;
13007 }); 13008 } 13009 return entry; 13010} 13011function injectHead(nuxtApp) { 13012 var _a; 13013 const nuxt = nuxtApp || tryUseNuxtApp(); 13014 return ((_a = nuxt == null ? void 0 : nuxt.ssrContext) == null ? void 0 : _a.head) || (nuxt == null ? void 0 : nuxt.runWithContext(() => { 13015 if (hasInjectionContext()) { 13016 return inject(headSymbol); 13017 } 13018 })); 13019} 13020function useHead(input, options = {}) { 13021 const head = injectHead(options.nuxt); 13022 if (head) { 13023 return useHead$1(input, { head, ...options }); 13024 } 13025} 13026const scriptRel = "modulepreload"; 13027const assetsURL = function(dep, importerUrl) { 13028 return new URL(dep, importerUrl).href; 13029}; 13030const seen = {}; 13031const __vitePreload = function preload(baseModule, deps, importerUrl) { 13032 let promise = Promise.resolve(); 13033 if (deps && deps.length > 0) { 13034 let allSettled2 = function(promises) { 13035 return Promise.all( 13036 promises.map( 13037 (p2) => Promise.resolve(p2).then( 13038 (value) => ({ status: "fulfilled", value }), 13039 (reason) => ({ status: "rejected", reason }) 13040 ) 13041 ) 13042 ); 13043 }; 13044 const links = document.getElementsByTagName("link"); 13045 const cspNonceMeta = document.querySelector( 13046 "meta[property=csp-nonce]" 13047 ); 13048 const cspNonce = (cspNonceMeta == null ? void 0 : cspNonceMeta.nonce) || (cspNonceMeta == null ? void 0 : cspNonceMeta.getAttribute("nonce")); 13049 promise = allSettled2( 13050 deps.map((dep) => { 13051 dep = assetsURL(dep, importerUrl); 13052 if (dep in seen) return; 13053 seen[dep] = true; 13054 const isCss = dep.endsWith(".css"); 13055 const cssSelector = isCss ? '[rel="stylesheet"]' : ""; 13056 const isBaseRelative = !!importerUrl; 13057 if (isBaseRelative) { 13058 for (let i = links.length - 1; i >= 0; i--) { 13059 const link2 = links[i]; 13060 if (link2.href === dep && (!isCss || link2.rel === "stylesheet")) { 13061 return; 13062 } 13063 } 13064 } else if (document.querySelector(`link[href="${dep}"]${cssSelector}`)) { 13065 return; 13066 } 13067 const link = document.createElement("link"); 13068 link.rel = isCss ? "stylesheet" : scriptRel; 13069 if (!isCss) { 13070 link.as = "script"; 13071 } 13072 link.crossOrigin = ""; 13073 link.href = dep; 13074 if (cspNonce) { 13075 link.setAttribute("nonce", cspNonce); 13076 } 13077 document.head.appendChild(link); 13078 if (isCss) { 13079 return new Promise((res, rej) => { 13080 link.addEventListener("load", res); 13081 link.addEventListener( 13082 "error", 13083 () => rej(new Error(`Unable to preload CSS for ${dep}`)) 13084 ); 13085 }); 13086 } 13087 }) 13088 ); 13089 } 13090 function handlePreloadError(err) { 13091 const e = new Event("vite:preloadError", { 13092 cancelable: true 13093 }); 13094 e.payload = err; 13095 window.dispatchEvent(e); 13096 if (!e.defaultPrevented) { 13097 throw err; 13098 } 13099 } 13100 return promise.then((res) => { 13101 for (const item of res || []) { 13102 if (item.status !== "rejected") continue; 13103 handlePreloadError(item.reason); 13104 } 13105 return baseModule().catch(handlePreloadError); 13106 }); 13107}; 13108let manifest; 13109let matcher; 13110function fetchManifest() { 13111 { 13112 manifest = $fetch(buildAssetsURL(`builds/meta/${(/* @__PURE__ */ useRuntimeConfig()).app.buildId}.json`), { 13113 responseType: "json" 13114 }); 13115 } 13116 manifest.then((m) => { 13117 matcher = createMatcherFromExport(m.matcher); 13118 }).catch((e) => { 13119 console.error("[nuxt] Error fetching app manifest.", e); 13120 }); 13121 return manifest; 13122} 13123function getAppManifest() { 13124 return manifest || fetchManifest(); 13125} 13126async function getRouteRules(arg) { 13127 const path = typeof arg === "string" ? arg : arg.path; 13128 await getAppManifest(); 13129 if (!matcher) { 13130 console.error("[nuxt] Error creating app manifest matcher.", matcher); 13131 return {}; 13132 } 13133 try { 13134 return defu({}, ...matcher.matchAll(path).reverse()); 13135 } catch (e) { 13136 console.error("[nuxt] Error matching route rules.", e); 13137 return {}; 13138 } 13139} 13140async function loadPayload(url, opts = {}) { 13141 const shouldLoadPayload = await isPrerendered(url); 13142 if (!shouldLoadPayload) { 13143 return null; 13144 } 13145 const payloadURL = await _getPayloadURL(url, opts); 13146 return await _importPayload(payloadURL) || null; 13147} 13148const filename = "_payload.json"; 13149async function _getPayloadURL(url, opts = {}) { 13150 const u = new URL(url, "http://localhost"); 13151 if (u.host !== "localhost" || hasProtocol(u.pathname, { acceptRelative: true })) { 13152 throw new Error("Payload URL must not include hostname: " + url); 13153 } 13154 const config = /* @__PURE__ */ useRuntimeConfig(); 13155 const hash2 = opts.hash || (opts.fresh ? Date.now() : config.app.buildId); 13156 const cdnURL = config.app.cdnURL; 13157 const baseOrCdnURL = cdnURL && await isPrerendered(url) ? cdnURL : config.app.baseURL; 13158 return joinURL(baseOrCdnURL, u.pathname, filename + (hash2 ? `?${hash2}` : "")); 13159} 13160async function _importPayload(payloadURL) { 13161 const payloadPromise = fetch(payloadURL, { cache: "force-cache" }).then((res) => res.text().then(parsePayload)); 13162 try { 13163 return await payloadPromise; 13164 } catch (err) { 13165 console.warn("[nuxt] Cannot load payload ", payloadURL, err); 13166 } 13167 return null; 13168} 13169async function isPrerendered(url = useRoute$2().path) { 13170 const nuxtApp = useNuxtApp(); 13171 url = withoutTrailingSlash(url); 13172 const manifest2 = await getAppManifest(); 13173 if (manifest2.prerendered.includes(url)) { 13174 return true; 13175 } 13176 return nuxtApp.runWithContext(async () => { 13177 const rules = await getRouteRules({ path: url }); 13178 return !!rules.prerender && !rules.redirect; 13179 }); 13180} 13181let payloadCache = null; 13182async function getNuxtClientPayload() { 13183 var _a; 13184 if (payloadCache) { 13185 return payloadCache; 13186 } 13187 const el = document.getElementById("__NUXT_DATA__"); 13188 if (!el) { 13189 return {}; 13190 } 13191 const inlineData = await parsePayload(el.textContent || ""); 13192 const externalData = el.dataset.src ? await _importPayload(el.dataset.src) : void 0; 13193 payloadCache = { 13194 ...inlineData, 13195 ...externalData, 13196 ...window.__NUXT__ 13197 }; 13198 if ((_a = payloadCache.config) == null ? void 0 : _a.public) { 13199 payloadCache.config.public = reactive(payloadCache.config.public); 13200 } 13201 return payloadCache; 13202} 13203async function parsePayload(payload) { 13204 return await parse(payload, useNuxtApp()._payloadRevivers); 13205} 13206function definePayloadReviver(name, revive) { 13207 { 13208 useNuxtApp()._payloadRevivers[name] = revive; 13209 } 13210} 13211function getDevtoolsGlobalHook() { 13212 return getTarget().__VUE_DEVTOOLS_GLOBAL_HOOK__; 13213} 13214function getTarget() { 13215 return typeof navigator !== "undefined" && typeof window !== "undefined" ? window : typeof globalThis !== "undefined" ? globalThis : {}; 13216} 13217const isProxyAvailable = typeof Proxy === "function"; 13218const HOOK_SETUP = "devtools-plugin:setup"; 13219const HOOK_PLUGIN_SETTINGS_SET = "plugin:settings:set"; 13220let supported; 13221let perf; 13222function isPerformanceSupported() { 13223 var _a; 13224 if (supported !== void 0) { 13225 return supported; 13226 } 13227 if (typeof window !== "undefined" && window.performance) { 13228 supported = true; 13229 perf = window.performance; 13230 } else if (typeof globalThis !== "undefined" && ((_a = globalThis.perf_hooks) === null || _a === void 0 ? void 0 : _a.performance)) { 13231 supported = true; 13232 perf = globalThis.perf_hooks.performance; 13233 } else { 13234 supported = false;
13235 } 13236 return supported; 13237} 13238function now() { 13239 return isPerformanceSupported() ? perf.now() : Date.now(); 13240} 13241class ApiProxy { 13242 constructor(plugin, hook) { 13243 this.target = null; 13244 this.targetQueue = []; 13245 this.onQueue = []; 13246 this.plugin = plugin; 13247 this.hook = hook; 13248 const defaultSettings = {}; 13249 if (plugin.settings) { 13250 for (const id in plugin.settings) { 13251 const item = plugin.settings[id]; 13252 defaultSettings[id] = item.defaultValue; 13253 } 13254 } 13255 const localSettingsSaveId = `__vue-devtools-plugin-settings__${plugin.id}`; 13256 let currentSettings = Object.assign({}, defaultSettings); 13257 try { 13258 const raw = localStorage.getItem(localSettingsSaveId); 13259 const data = JSON.parse(raw); 13260 Object.assign(currentSettings, data); 13261 } catch (e) { 13262 } 13263 this.fallbacks = { 13264 getSettings() { 13265 return currentSettings; 13266 }, 13267 setSettings(value) { 13268 try { 13269 localStorage.setItem(localSettingsSaveId, JSON.stringify(value)); 13270 } catch (e) { 13271 } 13272 currentSettings = value; 13273 }, 13274 now() { 13275 return now(); 13276 } 13277 }; 13278 if (hook) { 13279 hook.on(HOOK_PLUGIN_SETTINGS_SET, (pluginId, value) => { 13280 if (pluginId === this.plugin.id) { 13281 this.fallbacks.setSettings(value); 13282 } 13283 }); 13284 } 13285 this.proxiedOn = new Proxy({}, { 13286 get: (_target, prop) => { 13287 if (this.target) { 13288 return this.target.on[prop]; 13289 } else { 13290 return (...args) => { 13291 this.onQueue.push({ 13292 method: prop, 13293 args 13294 }); 13295 }; 13296 } 13297 } 13298 }); 13299 this.proxiedTarget = new Proxy({}, { 13300 get: (_target, prop) => { 13301 if (this.target) { 13302 return this.target[prop]; 13303 } else if (prop === "on") { 13304 return this.proxiedOn; 13305 } else if (Object.keys(this.fallbacks).includes(prop)) { 13306 return (...args) => { 13307 this.targetQueue.push({ 13308 method: prop, 13309 args, 13310 resolve: () => { 13311 } 13312 }); 13313 return this.fallbacks[prop](...args); 13314 }; 13315 } else { 13316 return (...args) => { 13317 return new Promise((resolve2) => { 13318 this.targetQueue.push({ 13319 method: prop, 13320 args, 13321 resolve: resolve2 13322 }); 13323 }); 13324 }; 13325 } 13326 } 13327 }); 13328 } 13329 async setRealTarget(target) { 13330 this.target = target; 13331 for (const item of this.onQueue) { 13332 this.target.on[item.method](...item.args); 13333 } 13334 for (const item of this.targetQueue) { 13335 item.resolve(await this.target[item.method](...item.args)); 13336 } 13337 } 13338} 13339function setupDevtoolsPlugin(pluginDescriptor, setupFn) { 13340 const descriptor = pluginDescriptor; 13341 const target = getTarget(); 13342 const hook = getDevtoolsGlobalHook(); 13343 const enableProxy = isProxyAvailable && descriptor.enableEarlyProxy; 13344 if (hook && (target.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__ || !enableProxy)) { 13345 hook.emit(HOOK_SETUP, pluginDescriptor, setupFn); 13346 } else { 13347 const proxy = enableProxy ? new ApiProxy(descriptor, hook) : null; 13348 const list = target.__VUE_DEVTOOLS_PLUGINS__ = target.__VUE_DEVTOOLS_PLUGINS__ || []; 13349 list.push({ 13350 pluginDescriptor: descriptor, 13351 setupFn, 13352 proxy 13353 }); 13354 if (proxy) { 13355 setupFn(proxy.proxiedTarget); 13356 } 13357 } 13358} 13359/*! 13360 * vue-router v4.5.0 13361 * (c) 2024 Eduardo San Martin Morote 13362 * @license MIT 13363 */ 13364const isBrowser = typeof document !== "undefined"; 13365function isRouteComponent(component) { 13366 return typeof component === "object" || "displayName" in component || "props" in component || "__vccOpts" in component; 13367} 13368function isESModule(obj) { 13369 return obj.__esModule || obj[Symbol.toStringTag] === "Module" || // support CF with dynamic imports that do not 13370 // add the Module string tag 13371 obj.default && isRouteComponent(obj.default); 13372} 13373const assign = Object.assign; 13374function applyToParams(fn, params) { 13375 const newParams = {}; 13376 for (const key in params) { 13377 const value = params[key]; 13378 newParams[key] = isArray$3(value) ? value.map(fn) : fn(value); 13379 } 13380 return newParams; 13381} 13382const noop$2 = () => { 13383}; 13384const isArray$3 = Array.isArray; 13385const HASH_RE = /#/g; 13386const AMPERSAND_RE = /&/g; 13387const SLASH_RE = /\//g; 13388const EQUAL_RE = /=/g; 13389const IM_RE = /\?/g; 13390const PLUS_RE = /\+/g; 13391const ENC_BRACKET_OPEN_RE = /%5B/g; 13392const ENC_BRACKET_CLOSE_RE = /%5D/g; 13393const ENC_CARET_RE = /%5E/g; 13394const ENC_BACKTICK_RE = /%60/g; 13395const ENC_CURLY_OPEN_RE = /%7B/g; 13396const ENC_PIPE_RE = /%7C/g; 13397const ENC_CURLY_CLOSE_RE = /%7D/g; 13398const ENC_SPACE_RE = /%20/g; 13399function commonEncode(text) { 13400 return encodeURI("" + text).replace(ENC_PIPE_RE, "|").replace(ENC_BRACKET_OPEN_RE, "[").replace(ENC_BRACKET_CLOSE_RE, "]"); 13401} 13402function encodeHash(text) { 13403 return commonEncode(text).replace(ENC_CURLY_OPEN_RE, "{").replace(ENC_CURLY_CLOSE_RE, "}").replace(ENC_CARET_RE, "^"); 13404} 13405function encodeQueryValue(text) { 13406 return commonEncode(text).replace(PLUS_RE, "%2B").replace(ENC_SPACE_RE, "+").replace(HASH_RE, "%23").replace(AMPERSAND_RE, "%26").replace(ENC_BACKTICK_RE, "`").replace(ENC_CURLY_OPEN_RE, "{").replace(ENC_CURLY_CLOSE_RE, "}").replace(ENC_CARET_RE, "^"); 13407} 13408function encodeQueryKey(text) { 13409 return encodeQueryValue(text).replace(EQUAL_RE, "%3D"); 13410} 13411function encodePath(text) { 13412 return commonEncode(text).replace(HASH_RE, "%23").replace(IM_RE, "%3F"); 13413} 13414function encodeParam(text) { 13415 return text == null ? "" : encodePath(text).replace(SLASH_RE, "%2F"); 13416} 13417function decode(text) { 13418 try { 13419 return decodeURIComponent("" + text); 13420 } catch (err) { 13421 } 13422 return "" + text; 13423} 13424const TRAILING_SLASH_RE = /\/$/; 13425const removeTrailingSlash = (path) => path.replace(TRAILING_SLASH_RE, ""); 13426function parseURL(parseQuery2, location2, currentLocation = "/") { 13427 let path, query = {}, searchString = "", hash2 = "";
13428 const hashPos = location2.indexOf("#"); 13429 let searchPos = location2.indexOf("?"); 13430 if (hashPos < searchPos && hashPos >= 0) { 13431 searchPos = -1; 13432 } 13433 if (searchPos > -1) { 13434 path = location2.slice(0, searchPos); 13435 searchString = location2.slice(searchPos + 1, hashPos > -1 ? hashPos : location2.length); 13436 query = parseQuery2(searchString); 13437 } 13438 if (hashPos > -1) { 13439 path = path || location2.slice(0, hashPos); 13440 hash2 = location2.slice(hashPos, location2.length); 13441 } 13442 path = resolveRelativePath(path != null ? path : location2, currentLocation); 13443 return { 13444 fullPath: path + (searchString && "?") + searchString + hash2, 13445 path, 13446 query, 13447 hash: decode(hash2) 13448 }; 13449} 13450function stringifyURL(stringifyQuery2, location2) { 13451 const query = location2.query ? stringifyQuery2(location2.query) : ""; 13452 return location2.path + (query && "?") + query + (location2.hash || ""); 13453} 13454function stripBase(pathname, base) { 13455 if (!base || !pathname.toLowerCase().startsWith(base.toLowerCase())) 13456 return pathname; 13457 return pathname.slice(base.length) || "/"; 13458} 13459function isSameRouteLocation(stringifyQuery2, a, b2) { 13460 const aLastIndex = a.matched.length - 1; 13461 const bLastIndex = b2.matched.length - 1; 13462 return aLastIndex > -1 && aLastIndex === bLastIndex && isSameRouteRecord(a.matched[aLastIndex], b2.matched[bLastIndex]) && isSameRouteLocationParams(a.params, b2.params) && stringifyQuery2(a.query) === stringifyQuery2(b2.query) && a.hash === b2.hash; 13463} 13464function isSameRouteRecord(a, b2) { 13465 return (a.aliasOf || a) === (b2.aliasOf || b2); 13466} 13467function isSameRouteLocationParams(a, b2) { 13468 if (Object.keys(a).length !== Object.keys(b2).length) 13469 return false; 13470 for (const key in a) { 13471 if (!isSameRouteLocationParamsValue(a[key], b2[key])) 13472 return false; 13473 } 13474 return true; 13475} 13476function isSameRouteLocationParamsValue(a, b2) { 13477 return isArray$3(a) ? isEquivalentArray(a, b2) : isArray$3(b2) ? isEquivalentArray(b2, a) : a === b2; 13478} 13479function isEquivalentArray(a, b2) { 13480 return isArray$3(b2) ? a.length === b2.length && a.every((value, i) => value === b2[i]) : a.length === 1 && a[0] === b2; 13481} 13482function resolveRelativePath(to, from) { 13483 if (to.startsWith("/")) 13484 return to; 13485 if (!to) 13486 return from; 13487 const fromSegments = from.split("/"); 13488 const toSegments = to.split("/"); 13489 const lastToSegment = toSegments[toSegments.length - 1]; 13490 if (lastToSegment === ".." || lastToSegment === ".") { 13491 toSegments.push(""); 13492 } 13493 let position = fromSegments.length - 1; 13494 let toPosition; 13495 let segment; 13496 for (toPosition = 0; toPosition < toSegments.length; toPosition++) { 13497 segment = toSegments[toPosition]; 13498 if (segment === ".") 13499 continue; 13500 if (segment === "..") { 13501 if (position > 1) 13502 position--; 13503 } else 13504 break; 13505 } 13506 return fromSegments.slice(0, position).join("/") + "/" + toSegments.slice(toPosition).join("/"); 13507} 13508const START_LOCATION_NORMALIZED = { 13509 path: "/", 13510 // TODO: could we use a symbol in the future? 13511 name: void 0, 13512 params: {}, 13513 query: {}, 13514 hash: "", 13515 fullPath: "/", 13516 matched: [], 13517 meta: {}, 13518 redirectedFrom: void 0 13519}; 13520var NavigationType; 13521(function(NavigationType2) { 13522 NavigationType2["pop"] = "pop"; 13523 NavigationType2["push"] = "push"; 13524})(NavigationType || (NavigationType = {})); 13525var NavigationDirection; 13526(function(NavigationDirection2) { 13527 NavigationDirection2["back"] = "back"; 13528 NavigationDirection2["forward"] = "forward"; 13529 NavigationDirection2["unknown"] = ""; 13530})(NavigationDirection || (NavigationDirection = {})); 13531function normalizeBase(base) { 13532 if (!base) { 13533 if (isBrowser) { 13534 const baseEl = document.querySelector("base"); 13535 base = baseEl && baseEl.getAttribute("href") || "/"; 13536 base = base.replace(/^\w+:\/\/[^\/]+/, ""); 13537 } else { 13538 base = "/"; 13539 } 13540 } 13541 if (base[0] !== "/" && base[0] !== "#") 13542 base = "/" + base; 13543 return removeTrailingSlash(base); 13544} 13545const BEFORE_HASH_RE = /^[^#]+#/; 13546function createHref(base, location2) { 13547 return base.replace(BEFORE_HASH_RE, "#") + location2; 13548} 13549function getElementPosition(el, offset) { 13550 const docRect = document.documentElement.getBoundingClientRect(); 13551 const elRect = el.getBoundingClientRect(); 13552 return { 13553 behavior: offset.behavior, 13554 left: elRect.left - docRect.left - (offset.left || 0), 13555 top: elRect.top - docRect.top - (offset.top || 0) 13556 }; 13557} 13558const computeScrollPosition = () => ({ 13559 left: window.scrollX, 13560 top: window.scrollY 13561}); 13562function scrollToPosition(position) { 13563 let scrollToOptions; 13564 if ("el" in position) { 13565 const positionEl = position.el; 13566 const isIdSelector = typeof positionEl === "string" && positionEl.startsWith("#"); 13567 const el = typeof positionEl === "string" ? isIdSelector ? document.getElementById(positionEl.slice(1)) : document.querySelector(positionEl)
13567: positionEl; 13568 if (!el) { 13569 return; 13570 } 13571 scrollToOptions = getElementPosition(el, position); 13572 } else { 13573 scrollToOptions = position; 13574 } 13575 if ("scrollBehavior" in document.documentElement.style) 13576 window.scrollTo(scrollToOptions); 13577 else { 13578 window.scrollTo(scrollToOptions.left != null ? scrollToOptions.left : window.scrollX, scrollToOptions.top != null ? scrollToOptions.top : window.scrollY); 13579 } 13580} 13581function getScrollKey(path, delta) { 13582 const position = history.state ? history.state.position - delta : -1; 13583 return position + path; 13584} 13585const scrollPositions = /* @__PURE__ */ new Map(); 13586function saveScrollPosition(key, scrollPosition) { 13587 scrollPositions.set(key, scrollPosition); 13588} 13589function getSavedScrollPosition(key) { 13590 const scroll = scrollPositions.get(key); 13591 scrollPositions.delete(key); 13592 return scroll; 13593} 13594let createBaseLocation = () => location.protocol + "//" + location.host; 13595function createCurrentLocation(base, location2) { 13596 const { pathname, search, hash: hash2 } = location2; 13597 const hashPos = base.indexOf("#"); 13598 if (hashPos > -1) { 13599 let slicePos = hash2.includes(base.slice(hashPos)) ? base.slice(hashPos).length : 1; 13600 let pathFromHash = hash2.slice(slicePos); 13601 if (pathFromHash[0] !== "/") 13602 pathFromHash = "/" + pathFromHash; 13603 return stripBase(pathFromHash, ""); 13604 } 13605 const path = stripBase(pathname, base); 13606 return path + search + hash2; 13607} 13608function useHistoryListeners(base, historyState, currentLocation, replace) { 13609 let listeners = []; 13610 let teardowns = []; 13611 let pauseState = null; 13612 const popStateHandler = ({ state }) => { 13613 const to = createCurrentLocation(base, location); 13614 const from = currentLocation.value; 13615 const fromState = historyState.value; 13616 let delta = 0; 13617 if (state) { 13618 currentLocation.value = to; 13619 historyState.value = state; 13620 if (pauseState && pauseState === from) { 13621 pauseState = null; 13622 return; 13623 } 13624 delta = fromState ? state.position - fromState.position : 0; 13625 } else { 13626 replace(to); 13627 } 13628 listeners.forEach((listener) => { 13629 listener(currentLocation.value, from, { 13630 delta, 13631 type: NavigationType.pop, 13632 direction: delta ? delta > 0 ? NavigationDirection.forward : NavigationDirection.back : NavigationDirection.unknown 13633 }); 13634 }); 13635 }; 13636 function pauseListeners() { 13637 pauseState = currentLocation.value; 13638 } 13639 function listen(callback) { 13640 listeners.push(callback); 13641 const teardown = () => { 13642 const index2 = listeners.indexOf(callback); 13643 if (index2 > -1) 13644 listeners.splice(index2, 1); 13645 }; 13646 teardowns.push(teardown); 13647 return teardown; 13648 } 13649 function beforeUnloadListener() { 13650 const { history: history2 } = window; 13651 if (!history2.state) 13652 return; 13653 history2.replaceState(assign({}, history2.state, { scroll: computeScrollPosition() }), ""); 13654 } 13655 function destroy() { 13656 for (const teardown of teardowns) 13657 teardown(); 13658 teardowns = []; 13659 window.removeEventListener("popstate", popStateHandler); 13660 window.removeEventListener("beforeunload", beforeUnloadListener); 13661 } 13662 window.addEventListener("popstate", popStateHandler); 13663 window.addEventListener("beforeunload", beforeUnloadListener, { 13664 passive: true 13665 }); 13666 return { 13667 pauseListeners, 13668 listen, 13669 destroy 13670 }; 13671} 13672function buildState(back, current, forward, replaced = false, computeScroll = false) { 13673 return { 13674 back, 13675 current, 13676 forward, 13677 replaced, 13678 position: window.history.length, 13679 scroll: computeScroll ? computeScrollPosition() : null 13680 }; 13681} 13682function useHistoryStateNavigation(base) { 13683 const { history: history2, location: location2 } = window; 13684 const currentLocation = { 13685 value: createCurrentLocation(base, location2) 13686 }; 13687 const historyState = { value: history2.state }; 13688 if (!historyState.value) { 13689 changeLocation(currentLocation.value, { 13690 back: null, 13691 current: currentLocation.value, 13692 forward: null, 13693 // the length is off by one, we need to decrease it 13694 position: history2.length - 1, 13695 replaced: true, 13696 // don't add a scroll as the user may have an anchor, and we want 13697 // scrollBehavior to be triggered without a saved position 13698 scroll: null 13699 }, true); 13700 } 13701 function changeLocation(to, state, replace2) { 13702 const hashIndex = base.indexOf("#"); 13703 const url = hashIndex > -1 ? (location2.host && document.querySelector("base") ? base : base.slice(hashIndex)) + to : createBaseLocation() + base + to; 13704 try { 13705 history2[replace2 ? "replaceState" : "pushState"](state, "", url); 13706 historyState.value = state; 13707 } catch (err) { 13708 { 13709 console.error(err); 13710 } 13711 location2[replace2 ? "replace" : "assign"](url); 13712 } 13713 } 13714 function replace(to, data) { 13715 const state = assign({}, history2.state, buildState( 13716 historyState.value.back, 13717 // keep back and forward entries but override current position 13718 to, 13719 historyState.value.forward, 13720 true 13721 ), data, { position: historyState.value.position }); 13722 changeLocation(to, state, true); 13723 currentLocation.value = to; 13724 } 13725 function push2(to, data) { 13726 const currentState = assign( 13727 {}, 13728 // use current history state to gracefully handle a wrong call to 13729 // history.replaceState 13730 // https://github.com/vuejs/router/issues/366 13731 historyState.value, 13732 history2.state, 13733 { 13734 forward: to, 13735 scroll: computeScrollPosition() 13736 } 13737 ); 13738 changeLocation(currentState.current, currentState, true); 13739 const state = assign({}, buildState(currentLocation.value, to, null), { position: currentState.position + 1 }, data); 13740 changeLocation(to, state, false); 13741 currentLocation.value = to; 13742 } 13743 return { 13744 location: currentLocation, 13745 state: historyState, 13746 push: push2, 13747 replace 13748 }; 13749} 13750function createWebHistory(base) { 13751 base = normalizeBase(base); 13752 const historyNavigation = useHistoryStateNavigation(base); 13753 const historyListeners = useHistoryListeners(base, historyNavigation.state, historyNavigation.location, historyNavigation.replace); 13754 function go(delta, triggerListeners = true) { 13755 if (!triggerListeners) 13756 historyListeners.pauseListeners(); 13757 history.go(delta); 13758 } 13759 const routerHistory = assign({ 13760 // it's overridden right after 13761 location: "", 13762 base, 13763 go, 13764 createHref: createHref.bind(null, base) 13765 }, historyNavigation, historyListeners); 13766 Object.defineProperty(routerHistory, "location", { 13767 enumerable: true, 13768 get: () => historyNavigation.location.value 13769 }); 13770 Object.defineProperty(routerHistory, "state", { 13771 enumerable: true, 13772 get: () => historyNavigation.state.value 13773 }); 13774 return routerHistory; 13775} 13776function createWebHashHistory(base) { 13777 base = location.host ? base || location.pathname + location.search : ""; 13778 if (!base.includes("#")) 13779 base += "#"; 13780 return createWebHistory(base); 13781} 13782function isRouteLocation(route) { 13783 return typeof route === "string" || route && typeof route === "object"; 13784} 13785function isRouteName(name) { 13786 return typeof name === "string" || typeof name === "symbol"; 13787} 13788const NavigationFailureSymbol = Symbol(""); 13789var NavigationFailureType; 13790(function(NavigationFailureType2) { 13791 NavigationFailureType2[NavigationFailureType2["aborted"] = 4] = "aborted"; 13792 NavigationFailureType2[NavigationFailureType2["cancelled"] = 8] = "cancelled"; 13793 NavigationFailureType2[NavigationFailureType2["duplicated"] = 16] = "duplicated"; 13794})(NavigationFailureType || (NavigationFailureType = {})); 13795function createRouterError(type, params) { 13796 { 13797 return assign(new Error(), { 13798 type, 13799 [NavigationFailureSymbol]: true 13800 }, params); 13801 } 13802} 13803function isNavigationFailure(error, type) { 13804 return error instanceof Error && NavigationFailureSymbol in error && (type == null || !!(error.type & type)); 13805} 13806const BASE_PARAM_PATTERN = "[^/]+?"; 13807const BASE_PATH_PARSER_OPTIONS = { 13808 sensitive: false, 13809 strict: false, 13810 start: true, 13811 end: true 13812}; 13813const REGEX_CHARS_RE = /[.+*?^${}()[\]/\\]/g; 13814function tokensToParser(segments, extraOptions) { 13815 const options = assign({}, BASE_PATH_PARSER_OPTIONS, extraOptions); 13816 const score = []; 13817 let pattern = options.start ? "^" : "";
13818 const keys2 = []; 13819 for (const segment of segments) { 13820 const segmentScores = segment.length ? [] : [ 13821 90 13822 /* PathScore.Root */ 13823 ]; 13824 if (options.strict && !segment.length) 13825 pattern += "/"; 13826 for (let tokenIndex = 0; tokenIndex < segment.length; tokenIndex++) { 13827 const token = segment[tokenIndex]; 13828 let subSegmentScore = 40 + (options.sensitive ? 0.25 : 0); 13829 if (token.type === 0) { 13830 if (!tokenIndex) 13831 pattern += "/"; 13832 pattern += token.value.replace(REGEX_CHARS_RE, "\\$&"); 13833 subSegmentScore += 40; 13834 } else if (token.type === 1) { 13835 const { value, repeatable, optional, regexp } = token; 13836 keys2.push({ 13837 name: value, 13838 repeatable, 13839 optional 13840 }); 13841 const re2 = regexp ? regexp : BASE_PARAM_PATTERN; 13842 if (re2 !== BASE_PARAM_PATTERN) { 13843 subSegmentScore += 10; 13844 try { 13845 new RegExp(`(${re2})`); 13846 } catch (err) { 13847 throw new Error(`Invalid custom RegExp for param "${value}" (${re2}): ` + err.message); 13848 } 13849 } 13850 let subPattern = repeatable ? `((?:${re2})(?:/(?:${re2}))*)` : `(${re2})`; 13851 if (!tokenIndex) 13852 subPattern = // avoid an optional / if there are more segments e.g. /:p?-static 13853 // or /:p?-:p2 13854 optional && segment.length < 2 ? `(?:/${subPattern})` : "/" + subPattern; 13855 if (optional) 13856 subPattern += "?"; 13857 pattern += subPattern; 13858 subSegmentScore += 20; 13859 if (optional) 13860 subSegmentScore += -8; 13861 if (repeatable) 13862 subSegmentScore += -20; 13863 if (re2 === ".*") 13864 subSegmentScore += -50; 13865 } 13866 segmentScores.push(subSegmentScore); 13867 } 13868 score.push(segmentScores); 13869 } 13870 if (options.strict && options.end) { 13871 const i = score.length - 1; 13872 score[i][score[i].length - 1] += 0.7000000000000001; 13873 } 13874 if (!options.strict) 13875 pattern += "/?"; 13876 if (options.end) 13877 pattern += "$"; 13878 else if (options.strict && !pattern.endsWith("/")) 13879 pattern += "(?:/|$)"; 13880 const re = new RegExp(pattern, options.sensitive ? "" : "i"); 13881 function parse4(path) { 13882 const match2 = path.match(re); 13883 const params = {}; 13884 if (!match2) 13885 return null; 13886 for (let i = 1; i < match2.length; i++) { 13887 const value = match2[i] || ""; 13888 const key = keys2[i - 1]; 13889 params[key.name] = value && key.repeatable ? value.split("/") : value; 13890 } 13891 return params; 13892 } 13893 function stringify(params) { 13894 let path = ""; 13895 let avoidDuplicatedSlash = false; 13896 for (const segment of segments) { 13897 if (!avoidDuplicatedSlash || !path.endsWith("/")) 13898 path += "/"; 13899 avoidDuplicatedSlash = false; 13900 for (const token of segment) { 13901 if (token.type === 0) { 13902 path += token.value; 13903 } else if (token.type === 1) { 13904 const { value, repeatable, optional } = token; 13905 const param = value in params ? params[value] : ""; 13906 if (isArray$3(param) && !repeatable) { 13907 throw new Error(`Provided param "${value}" is an array but it is not repeatable (* or + modifiers)`); 13908 } 13909 const text = isArray$3(param) ? param.join("/") : param; 13910 if (!text) { 13911 if (optional) { 13912 if (segment.length < 2) { 13913 if (path.endsWith("/")) 13914 path = path.slice(0, -1); 13915 else 13916 avoidDuplicatedSlash = true; 13917 } 13918 } else 13919 throw new Error(`Missing required param "${value}"`); 13920 } 13921 path += text; 13922 } 13923 } 13924 } 13925 return path || "/"; 13926 } 13927 return { 13928 re, 13929 score, 13930 keys: keys2, 13931 parse: parse4, 13932 stringify 13933 }; 13934} 13935function compareScoreArray(a, b2) { 13936 let i = 0; 13937 while (i < a.length && i < b2.length) { 13938 const diff = b2[i] - a[i]; 13939 if (diff) 13940 return diff; 13941 i++; 13942 } 13943 if (a.length < b2.length) { 13944 return a.length === 1 && a[0] === 40 + 40 ? -1 : 1; 13945 } else if (a.length > b2.length) { 13946 return b2.length === 1 && b2[0] === 40 + 40 ? 1 : -1; 13947 } 13948 return 0; 13949} 13950function comparePathParserScore(a, b2) { 13951 let i = 0; 13952 const aScore = a.score; 13953 const bScore = b2.score; 13954 while (i < aScore.length && i < bScore.length) { 13955 const comp = compareScoreArray(aScore[i], bScore[i]); 13956 if (comp) 13957 return comp; 13958 i++; 13959 } 13960 if (Math.abs(bScore.length - aScore.length) === 1) { 13961 if (isLastScoreNegative(aScore)) 13962 return 1; 13963 if (isLastScoreNegative(bScore)) 13964 return -1; 13965 } 13966 return bScore.length - aScore.length; 13967} 13968function isLastScoreNegative(score) { 13969 const last = score[score.length - 1]; 13970 return score.length > 0 && last[last.length - 1] < 0; 13971} 13972const ROOT_TOKEN = { 13973 type: 0, 13974 value: "" 13975}; 13976const VALID_PARAM_RE = /[a-zA-Z0-9_]/; 13977function tokenizePath(path) { 13978 if (!path) 13979 return [[]]; 13980 if (path === "/") 13981 return [[ROOT_TOKEN]]; 13982 if (!path.startsWith("/")) { 13983 throw new Error(`Invalid path "${path}"`); 13984 } 13985 function crash(message2) { 13986 throw new Error(`ERR (${state})/"${buffer2}": ${message2}`); 13987 } 13988 let state = 0; 13989 let previousState = state; 13990 const tokens = []; 13991 let segment; 13992 function finalizeSegment() { 13993 if (segment) 13994 tokens.push(segment); 13995 segment = []; 13996 } 13997 let i = 0; 13998 let char; 13999 let buffer2 = ""; 14000 let customRe = ""; 14001 function consumeBuffer() { 14002 if (!buffer2) 14003 return; 14004 if (state === 0) { 14005 segment.push({ 14006 type: 0, 14007 value: buffer2 14008 }); 14009 } else if (state === 1 || state === 2 || state === 3) { 14010 if (segment.length > 1 && (char === "*" || char === "+")) 14011 crash(`A repeatable param (${buffer2}) must be alone in its segment. eg: '/:ids+.`); 14012 segment.push({ 14013 type: 1, 14014 value: buffer2, 14015 regexp: customRe, 14016 repeatable: char === "*" || char === "+", 14017 optional: char === "*" || char === "?" 14018 }); 14019 } else { 14020 crash("Invalid state to consume buffer"); 14021 } 14022 buffer2 = ""; 14023 } 14024 function addCharToBuffer() { 14025 buffer2 += char; 14026 } 14027 while (i < path.length) { 14028 char = path[i++]; 14029 if (char === "\\" && state !== 2) { 14030 previousState = state; 14031 state = 4; 14032 continue; 14033 } 14034 switch (state) { 14035 case 0: 14036 if (char === "/") { 14037 if (buffer2) { 14038 consumeBuffer(); 14039 } 14040 finalizeSegment(); 14041 } else if (char === ":") { 14042 consumeBuffer(); 14043 state = 1; 14044 } else { 14045 addCharToBuffer(); 14046 } 14047 break; 14048 case 4: 14049 addCharToBuffer(); 14050 state = previousState; 14051 break; 14052 case 1: 14053 if (char === "(") { 14054 state = 2; 14055 } else if (VALID_PARAM_RE.test(char)) { 14056 addCharToBuffer(); 14057 } else { 14058 consumeBuffer(); 14059 state = 0; 14060 if (char !== "*" && char !== "?" && char !== "+") 14061 i--; 14062 } 14063 break; 14064 case 2: 14065 if (char === ")") { 14066 if (customRe[customRe.length - 1] == "\\") 14067 customRe = customRe.slice(0, -1) + char; 14068 else 14069 state = 3; 14070 } else { 14071 customRe += char; 14072 } 14073 break; 14074 case 3: 14075 consumeBuffer(); 14076 state = 0; 14077 if (char !== "*" && char !== "?" && char !== "+") 14078 i--; 14079 customRe = ""; 14080 break; 14081 default: 14082 crash("Unknown state"); 14083 break; 14084 } 14085 } 14086 if (state === 2) 14087 crash(`Unfinished custom RegExp for param "${buffer2}"`); 14088 consumeBuffer(); 14089 finalizeSegment(); 14090 return tokens; 14091} 14092function createRouteRecordMatcher(record, parent, options) { 14093 const parser = tokensToParser(tokenizePath(record.path), options); 14094 const matcher2 = assign(parser, { 14095 record, 14096 parent, 14097 // these needs to be populated by the parent 14098 children: [],
14099 alias: [] 14100 }); 14101 if (parent) { 14102 if (!matcher2.record.aliasOf === !parent.record.aliasOf) 14103 parent.children.push(matcher2); 14104 } 14105 return matcher2; 14106} 14107function createRouterMatcher(routes, globalOptions) { 14108 const matchers = []; 14109 const matcherMap = /* @__PURE__ */ new Map(); 14110 globalOptions = mergeOptions({ strict: false, end: true, sensitive: false }, globalOptions); 14111 function getRecordMatcher(name) { 14112 return matcherMap.get(name); 14113 } 14114 function addRoute(record, parent, originalRecord) { 14115 const isRootAdd = !originalRecord; 14116 const mainNormalizedRecord = normalizeRouteRecord(record); 14117 mainNormalizedRecord.aliasOf = originalRecord && originalRecord.record; 14118 const options = mergeOptions(globalOptions, record); 14119 const normalizedRecords = [mainNormalizedRecord]; 14120 if ("alias" in record) { 14121 const aliases = typeof record.alias === "string" ? [record.alias] : record.alias; 14122 for (const alias of aliases) { 14123 normalizedRecords.push( 14124 // we need to normalize again to ensure the `mods` property 14125 // being non enumerable 14126 normalizeRouteRecord(assign({}, mainNormalizedRecord, { 14127 // this allows us to hold a copy of the `components` option 14128 // so that async components cache is hold on the original record 14129 components: originalRecord ? originalRecord.record.components : mainNormalizedRecord.components, 14130 path: alias, 14131 // we might be the child of an alias 14132 aliasOf: originalRecord ? originalRecord.record : mainNormalizedRecord 14133 // the aliases are always of the same kind as the original since they 14134 // are defined on the same record 14135 })) 14136 ); 14137 } 14138 } 14139 let matcher2; 14140 let originalMatcher; 14141 for (const normalizedRecord of normalizedRecords) { 14142 const { path } = normalizedRecord; 14143 if (parent && path[0] !== "/") { 14144 const parentPath = parent.record.path; 14145 const connectingSlash = parentPath[parentPath.length - 1] === "/" ? "" : "/"; 14146 normalizedRecord.path = parent.record.path + (path && connectingSlash + path); 14147 } 14148 matcher2 = createRouteRecordMatcher(normalizedRecord, parent, options); 14149 if (originalRecord) { 14150 originalRecord.alias.push(matcher2); 14151 } else { 14152 originalMatcher = originalMatcher || matcher2; 14153 if (originalMatcher !== matcher2) 14154 originalMatcher.alias.push(matcher2); 14155 if (isRootAdd && record.name && !isAliasRecord(matcher2)) { 14156 removeRoute(record.name); 14157 } 14158 } 14159 if (isMatchable(matcher2)) { 14160 insertMatcher(matcher2); 14161 } 14162 if (mainNormalizedRecord.children) { 14163 const children = mainNormalizedRecord.children; 14164 for (let i = 0; i < children.length; i++) { 14165 addRoute(children[i], matcher2, originalRecord && originalRecord.children[i]); 14166 } 14167 } 14168 originalRecord = originalRecord || matcher2; 14169 } 14170 return originalMatcher ? () => { 14171 removeRoute(originalMatcher); 14172 } : noop$2; 14173 } 14174 function removeRoute(matcherRef) { 14175 if (isRouteName(matcherRef)) { 14176 const matcher2 = matcherMap.get(matcherRef); 14177 if (matcher2) { 14178 matcherMap.delete(matcherRef); 14179 matchers.splice(matchers.indexOf(matcher2), 1); 14180 matcher2.children.forEach(removeRoute); 14181 matcher2.alias.forEach(removeRoute); 14182 } 14183 } else { 14184 const index2 = matchers.indexOf(matcherRef); 14185 if (index2 > -1) { 14186 matchers.splice(index2, 1); 14187 if (matcherRef.record.name) 14188 matcherMap.delete(matcherRef.record.name); 14189 matcherRef.children.forEach(removeRoute); 14190 matcherRef.alias.forEach(removeRoute); 14191 } 14192 } 14193 } 14194 function getRoutes() { 14195 return matchers; 14196 } 14197 function insertMatcher(matcher2) { 14198 const index2 = findInsertionIndex(matcher2, matchers); 14199 matchers.splice(index2, 0, matcher2); 14200 if (matcher2.record.name && !isAliasRecord(matcher2)) 14201 matcherMap.set(matcher2.record.name, matcher2); 14202 } 14203 function resolve2(location2, currentLocation) { 14204 let matcher2; 14205 let params = {}; 14206 let path; 14207 let name; 14208 if ("name" in location2 && location2.name) { 14209 matcher2 = matcherMap.get(location2.name); 14210 if (!matcher2) 14211 throw createRouterError(1, { 14212 location: location2 14213 }); 14214 name = matcher2.record.name; 14215 params = assign( 14216 // paramsFromLocation is a new object 14217 paramsFromLocation( 14218 currentLocation.params, 14219 // only keep params that exist in the resolved location 14220 // only keep optional params coming from a parent record 14221 matcher2.keys.filter((k3) => !k3.optional).concat(matcher2.parent ? matcher2.parent.keys.filter((k3) => k3.optional) : []).map((k3) => k3.name) 14222 ), 14223 // discard any existing params in the current location that do not exist here 14224 // #1497 this ensures better active/exact matching 14225 location2.params && paramsFromLocation(location2.params, matcher2.keys.map((k3) => k3.name)) 14226 ); 14227 path = matcher2.stringify(params); 14228 } else if (location2.path != null) { 14229 path = location2.path; 14230 matcher2 = matchers.find((m) => m.re.test(path)); 14231 if (matcher2) { 14232 params = matcher2.parse(path); 14233 name = matcher2.record.name; 14234 } 14235 } else { 14236 matcher2 = currentLocation.name ? matcherMap.get(currentLocation.name) : matchers.find((m) => m.re.test(currentLocation.path)); 14237 if (!matcher2) 14238 throw createRouterError(1, { 14239 location: location2, 14240 currentLocation 14241 }); 14242 name = matcher2.record.name; 14243 params = assign({}, currentLocation.params, location2.params); 14244 path = matcher2.stringify(params); 14245 } 14246 const matched = []; 14247 let parentMatcher = matcher2; 14248 while (parentMatcher) { 14249 matched.unshift(parentMatcher.record); 14250 parentMatcher = parentMatcher.parent; 14251 } 14252 return { 14253 name, 14254 path, 14255 params, 14256 matched, 14257 meta: mergeMetaFields(matched) 14258 }; 14259 }
14260 routes.forEach((route) => addRoute(route)); 14261 function clearRoutes() { 14262 matchers.length = 0; 14263 matcherMap.clear(); 14264 } 14265 return { 14266 addRoute, 14267 resolve: resolve2, 14268 removeRoute, 14269 clearRoutes, 14270 getRoutes, 14271 getRecordMatcher 14272 }; 14273} 14274function paramsFromLocation(params, keys2) { 14275 const newParams = {}; 14276 for (const key of keys2) { 14277 if (key in params) 14278 newParams[key] = params[key]; 14279 } 14280 return newParams; 14281} 14282function normalizeRouteRecord(record) { 14283 const normalized = { 14284 path: record.path, 14285 redirect: record.redirect, 14286 name: record.name, 14287 meta: record.meta || {}, 14288 aliasOf: record.aliasOf, 14289 beforeEnter: record.beforeEnter, 14290 props: normalizeRecordProps(record), 14291 children: record.children || [], 14292 instances: {}, 14293 leaveGuards: /* @__PURE__ */ new Set(), 14294 updateGuards: /* @__PURE__ */ new Set(), 14295 enterCallbacks: {}, 14296 // must be declared afterwards 14297 // mods: {}, 14298 components: "components" in record ? record.components || null : record.component && { default: record.component } 14299 }; 14300 Object.defineProperty(normalized, "mods", { 14301 value: {} 14302 }); 14303 return normalized; 14304} 14305function normalizeRecordProps(record) { 14306 const propsObject = {}; 14307 const props = record.props || false; 14308 if ("component" in record) { 14309 propsObject.default = props; 14310 } else { 14311 for (const name in record.components) 14312 propsObject[name] = typeof props === "object" ? props[name] : props; 14313 } 14314 return propsObject; 14315} 14316function isAliasRecord(record) { 14317 while (record) { 14318 if (record.record.aliasOf) 14319 return true; 14320 record = record.parent; 14321 } 14322 return false; 14323} 14324function mergeMetaFields(matched) { 14325 return matched.reduce((meta, record) => assign(meta, record.meta), {}); 14326} 14327function mergeOptions(defaults2, partialOptions) { 14328 const options = {}; 14329 for (const key in defaults2) { 14330 options[key] = key in partialOptions ? partialOptions[key] : defaults2[key]; 14331 } 14332 return options; 14333} 14334function findInsertionIndex(matcher2, matchers) { 14335 let lower = 0; 14336 let upper = matchers.length; 14337 while (lower !== upper) { 14338 const mid = lower + upper >> 1; 14339 const sortOrder = comparePathParserScore(matcher2, matchers[mid]); 14340 if (sortOrder < 0) { 14341 upper = mid; 14342 } else { 14343 lower = mid + 1; 14344 } 14345 } 14346 const insertionAncestor = getInsertionAncestor(matcher2); 14347 if (insertionAncestor) { 14348 upper = matchers.lastIndexOf(insertionAncestor, upper - 1); 14349 } 14350 return upper; 14351} 14352function getInsertionAncestor(matcher2) { 14353 let ancestor = matcher2; 14354 while (ancestor = ancestor.parent) { 14355 if (isMatchable(ancestor) && comparePathParserScore(matcher2, ancestor) === 0) { 14356 return ancestor; 14357 } 14358 } 14359 return; 14360} 14361function isMatchable({ record }) { 14362 return !!(record.name || record.components && Object.keys(record.components).length || record.redirect); 14363} 14364function parseQuery(search) { 14365 const query = {}; 14366 if (search === "" || search === "?") 14367 return query; 14368 const hasLeadingIM = search[0] === "?"; 14369 const searchParams = (hasLeadingIM ? search.slice(1) : search).split("&"); 14370 for (let i = 0; i < searchParams.length; ++i) { 14371 const searchParam = searchParams[i].replace(PLUS_RE, " "); 14372 const eqPos = searchParam.indexOf("="); 14373 const key = decode(eqPos < 0 ? searchParam : searchParam.slice(0, eqPos)); 14374 const value = eqPos < 0 ? null : decode(searchParam.slice(eqPos + 1)); 14375 if (key in query) { 14376 let currentValue = query[key]; 14377 if (!isArray$3(currentValue)) { 14378 currentValue = query[key] = [currentValue]; 14379 } 14380 currentValue.push(value); 14381 } else { 14382 query[key] = value; 14383 } 14384 } 14385 return query; 14386} 14387function stringifyQuery(query) { 14388 let search = ""; 14389 for (let key in query) { 14390 const value = query[key]; 14391 key = encodeQueryKey(key); 14392 if (value == null) { 14393 if (value !== void 0) { 14394 search += (search.length ? "&" : "") + key; 14395 } 14396 continue; 14397 } 14398 const values = isArray$3(value) ? value.map((v2) => v2 && encodeQueryValue(v2)) : [value && encodeQueryValue(value)]; 14399 values.forEach((value2) => { 14400 if (value2 !== void 0) { 14401 search += (search.length ? "&" : "") + key; 14402 if (value2 != null) 14403 search += "=" + value2; 14404 } 14405 }); 14406 } 14407 return search; 14408} 14409function normalizeQuery(query) { 14410 const normalizedQuery = {}; 14411 for (const key in query) { 14412 const value = query[key]; 14413 if (value !== void 0) { 14414 normalizedQuery[key] = isArray$3(value) ? value.map((v2) => v2 == null ? null : "" + v2) : value == null ? value : "" + value; 14415 } 14416 } 14417 return normalizedQuery; 14418} 14419const matchedRouteKey = Symbol(""); 14420const viewDepthKey = Symbol(""); 14421const routerKey = Symbol(""); 14422const routeLocationKey = Symbol(""); 14423const routerViewLocationKey = Symbol(""); 14424function useCallbacks() { 14425 let handlers = []; 14426 function add(handler) { 14427 handlers.push(handler); 14428 return () => { 14429 const i = handlers.indexOf(handler); 14430 if (i > -1) 14431 handlers.splice(i, 1); 14432 }; 14433 } 14434 function reset() { 14435 handlers = []; 14436 } 14437 return { 14438 add, 14439 list: () => handlers.slice(), 14440 reset 14441 }; 14442} 14443function guardToPromiseFn(guard, to, from, record, name, runWithContext = (fn) => fn()) { 14444 const enterCallbackArray = record && // name is defined if record
14444is because of the function overload 14445 (record.enterCallbacks[name] = record.enterCallbacks[name] || []); 14446 return () => new Promise((resolve2, reject) => { 14447 const next = (valid) => { 14448 if (valid === false) { 14449 reject(createRouterError(4, { 14450 from, 14451 to 14452 })); 14453 } else if (valid instanceof Error) { 14454 reject(valid); 14455 } else if (isRouteLocation(valid)) { 14456 reject(createRouterError(2, { 14457 from: to, 14458 to: valid 14459 })); 14460 } else { 14461 if (enterCallbackArray && // since enterCallbackArray is truthy, both record and name also are 14462 record.enterCallbacks[name] === enterCallbackArray && typeof valid === "function") { 14463 enterCallbackArray.push(valid); 14464 } 14465 resolve2(); 14466 } 14467 }; 14468 const guardReturn = runWithContext(() => guard.call(record && record.instances[name], to, from, next)); 14469 let guardCall = Promise.resolve(guardReturn); 14470 if (guard.length < 3) 14471 guardCall = guardCall.then(next); 14472 guardCall.catch((err) => reject(err)); 14473 }); 14474} 14475function extractComponentsGuards(matched, guardType, to, from, runWithContext = (fn) => fn()) { 14476 const guards = []; 14477 for (const record of matched) { 14478 for (const name in record.components) { 14479 let rawComponent = record.components[name]; 14480 if (guardType !== "beforeRouteEnter" && !record.instances[name]) 14481 continue; 14482 if (isRouteComponent(rawComponent)) { 14483 const options = rawComponent.__vccOpts || rawComponent; 14484 const guard = options[guardType]; 14485 guard && guards.push(guardToPromiseFn(guard, to, from, record, name, runWithContext)); 14486 } else { 14487 let componentPromise = rawComponent(); 14488 guards.push(() => componentPromise.then((resolved) => { 14489 if (!resolved) 14490 throw new Error(`Couldn't resolve component "${name}" at "${record.path}"`); 14491 const resolvedComponent = isESModule(resolved) ? resolved.default : resolved; 14492 record.mods[name] = resolved; 14493 record.components[name] = resolvedComponent; 14494 const options = resolvedComponent.__vccOpts || resolvedComponent; 14495 const guard = options[guardType]; 14496 return guard && guardToPromiseFn(guard, to, from, record, name, runWithContext)(); 14497 })); 14498 } 14499 } 14500 } 14501 return guards; 14502} 14503function useLink(props) { 14504 const router = inject(routerKey); 14505 const currentRoute = inject(routeLocationKey); 14506 const route = computed(() => { 14507 const to = unref(props.to); 14508 return router.resolve(to); 14509 }); 14510 const activeRecordIndex = computed(() => { 14511 const { matched } = route.value; 14512 const { length } = matched; 14513 const routeMatched = matched[length - 1]; 14514 const currentMatched = currentRoute.matched; 14515 if (!routeMatched || !currentMatched.length) 14516 return -1; 14517 const index2 = currentMatched.findIndex(isSameRouteRecord.bind(null, routeMatched)); 14518 if (index2 > -1) 14519 return index2; 14520 const parentRecordPath = getOriginalPath(matched[length - 2]); 14521 return ( 14522 // we are dealing with nested routes 14523 length > 1 && // if the parent and matched route have the same path, this link is 14524 // referring to the empty child. Or we currently are on a different 14525 // child of the same parent 14526 getOriginalPath(routeMatched) === parentRecordPath && // avoid comparing the child with its parent 14527 currentMatched[currentMatched.length - 1].path !== parentRecordPath ? currentMatched.findIndex(isSameRouteRecord.bind(null, matched[length - 2])) : index2 14528 ); 14529 }); 14530 const isActive = computed(() => activeRecordIndex.value > -1 && includesParams(currentRoute.params, route.value.params)); 14531 const isExactActive = computed(() => activeRecordIndex.value > -1 && activeRecordIndex.value === currentRoute.matched.length - 1 && isSameRouteLocationParams(currentRoute.params, route.value.params)); 14532 function navigate(e = {}) { 14533 if (guardEvent(e)) { 14534 const p2 = router[unref(props.replace) ? "replace" : "push"]( 14535 unref(props.to) 14536 // avoid uncaught errors are they are logged anyway 14537 ).catch(noop$2); 14538 if (props.viewTransition && typeof document !== "undefined" && "startViewTransition" in document) { 14539 document.startViewTransition(() => p2); 14540 } 14541 return p2; 14542 } 14543 return Promise.resolve(); 14544 } 14545 return { 14546 route, 14547 href: computed(() => route.value.href), 14548 isActive, 14549 isExactActive, 14550 navigate 14551 }; 14552} 14553function preferSingleVNode(vnodes) { 14554 return vnodes.length === 1 ? vnodes[0] : vnodes; 14555} 14556const RouterLinkImpl = /* @__PURE__ */ defineComponent({ 14557 name: "RouterLink", 14558 compatConfig: { MODE: 3 }, 14559 props: { 14560 to: { 14561 type: [String, Object], 14562 required: true 14563 }, 14564 replace: Boolean, 14565 activeClass: String, 14566 // inactiveClass: String, 14567 exactActiveClass: String, 14568 custom: Boolean, 14569 ariaCurrentValue: { 14570 type: String, 14571 default: "page" 14572 } 14573 }, 14574 useLink, 14575 setup(props, { slots }) { 14576 const link = reactive(useLink(props)); 14577 const { options } = inject(routerKey); 14578 const elClass = computed(() => ({ 14579 [getLinkClass(props.activeClass, options.linkActiveClass, "router-link-active")]: link.isActive, 14580 // [getLinkClass( 14581 // props.inactiveClass, 14582 // options.linkInactiveClass, 14583 // 'router-link-inactive' 14584 // )]: !link.isExactActive, 14585 [getLinkClass(props.exactActiveClass, options.linkExactActiveClass, "router-link-exact-active")]: link.isExactActive 14586 })); 14587 return () => { 14588 const children = slots.default && preferSingleVNode(slots.default(link)); 14589 return props.custom ? children : h("a", { 14590 "aria-current": link.isExactActive ? props.ariaCurrentValue : null, 14591 href: link.href, 14592 // this would override user added attrs but Vue will still add 14593 // the listener, so we end up triggering both 14594 onClick: link.navigate, 14595 class: elClass.value 14596 }, children); 14597 }; 14598 } 14599}); 14600const RouterLink = RouterLinkImpl; 14601function guardEvent(e) { 14602 if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) 14603 return; 14604 if (e.defaultPrevented) 14605 return; 14606 if (e.button !== void 0 && e.button !== 0) 14607 return; 14608 if (e.currentTarget && e.currentTarget.getAttribute) { 14609 const target = e.currentTarget.getAttribute("target"); 14610 if (/\b_blank\b/i.test(target)) 14611 return; 14612 } 14613 if (e.preventDefault) 14614 e.preventDefault(); 14615 return true; 14616} 14617function includesParams(outer, inner) { 14618 for (const key in inner) { 14619 const innerValue = inner[key]; 14620 const outerValue = outer[key]; 14621 if (typeof innerValue === "string") { 14622 if (innerValue !== outerValue) 14623 return false;
14624 } else { 14625 if (!isArray$3(outerValue) || outerValue.length !== innerValue.length || innerValue.some((value, i) => value !== outerValue[i])) 14626 return false; 14627 } 14628 } 14629 return true; 14630} 14631function getOriginalPath(record) { 14632 return record ? record.aliasOf ? record.aliasOf.path : record.path : ""; 14633} 14634const getLinkClass = (propClass, globalClass, defaultClass) => propClass != null ? propClass : globalClass != null ? globalClass : defaultClass; 14635const RouterViewImpl = /* @__PURE__ */ defineComponent({ 14636 name: "RouterView", 14637 // #674 we manually inherit them 14638 inheritAttrs: false, 14639 props: { 14640 name: { 14641 type: String, 14642 default: "default" 14643 }, 14644 route: Object 14645 }, 14646 // Better compat for @vue/compat users 14647 // https://github.com/vuejs/router/issues/1315 14648 compatConfig: { MODE: 3 }, 14649 setup(props, { attrs, slots }) { 14650 const injectedRoute = inject(routerViewLocationKey); 14651 const routeToDisplay = computed(() => props.route || injectedRoute.value); 14652 const injectedDepth = inject(viewDepthKey, 0); 14653 const depth = computed(() => { 14654 let initialDepth = unref(injectedDepth); 14655 const { matched } = routeToDisplay.value; 14656 let matchedRoute; 14657 while ((matchedRoute = matched[initialDepth]) && !matchedRoute.components) { 14658 initialDepth++; 14659 } 14660 return initialDepth; 14661 }); 14662 const matchedRouteRef = computed(() => routeToDisplay.value.matched[depth.value]); 14663 provide(viewDepthKey, computed(() => depth.value + 1)); 14664 provide(matchedRouteKey, matchedRouteRef); 14665 provide(routerViewLocationKey, routeToDisplay); 14666 const viewRef = ref(); 14667 watch(() => [viewRef.value, matchedRouteRef.value, props.name], ([instance, to, name], [oldInstance, from, oldName]) => { 14668 if (to) { 14669 to.instances[name] = instance; 14670 if (from && from !== to && instance && instance === oldInstance) { 14671 if (!to.leaveGuards.size) { 14672 to.leaveGuards = from.leaveGuards; 14673 } 14674 if (!to.updateGuards.size) { 14675 to.updateGuards = from.updateGuards; 14676 } 14677 } 14678 } 14679 if (instance && to && // if there is no instance but to and from are the same this might be 14680 // the first visit 14681 (!from || !isSameRouteRecord(to, from) || !oldInstance)) { 14682 (to.enterCallbacks[name] || []).forEach((callback) => callback(instance)); 14683 } 14684 }, { flush: "post" }); 14685 return () => { 14686 const route = routeToDisplay.value; 14687 const currentName = props.name; 14688 const matchedRoute = matchedRouteRef.value; 14689 const ViewComponent = matchedRoute && matchedRoute.components[currentName]; 14690 if (!ViewComponent) { 14691 return normalizeSlot(slots.default, { Component: ViewComponent, route }); 14692 } 14693 const routePropsOption = matchedRoute.props[currentName]; 14694 const routeProps = routePropsOption ? routePropsOption === true ? route.params : typeof routePropsOption === "function" ? routePropsOption(route) : routePropsOption : null; 14695 const onVnodeUnmounted = (vnode) => { 14696 if (vnode.component.isUnmounted) { 14697 matchedRoute.instances[currentName] = null; 14698 } 14699 }; 14700 const component = h(ViewComponent, assign({}, routeProps, attrs, { 14701 onVnodeUnmounted, 14702 ref: viewRef 14703 })); 14704 return ( 14705 // pass the vnode to the slot as a prop. 14706 // h and <component :is="..."> both accept vnodes 14707 normalizeSlot(slots.default, { Component: component, route }) || component 14708 ); 14709 }; 14710 } 14711}); 14712function normalizeSlot(slot, data) { 14713 if (!slot) 14714 return null; 14715 const slotContent = slot(data); 14716 return slotContent.length === 1 ? slotContent[0] : slotContent; 14717} 14718const RouterView = RouterViewImpl; 14719function createRouter(options) { 14720 const matcher2 = createRouterMatcher(options.routes, options); 14721 const parseQuery$12 = options.parseQuery || parseQuery; 14722 const stringifyQuery$12 = options.stringifyQuery || stringifyQuery; 14723 const routerHistory = options.history; 14724 const beforeGuards = useCallbacks(); 14725 const beforeResolveGuards = useCallbacks(); 14726 const afterGuards = useCallbacks(); 14727 const currentRoute = shallowRef(START_LOCATION_NORMALIZED); 14728 let pendingLocation = START_LOCATION_NORMALIZED; 14729 if (isBrowser && options.scrollBehavior && "scrollRestoration" in history) { 14730 history.scrollRestoration = "manual"; 14731 } 14732 const normalizeParams2 = applyToParams.bind(null, (paramValue) => "" + paramValue); 14733 const encodeParams = applyToParams.bind(null, encodeParam); 14734 const decodeParams = ( 14735 // @ts-expect-error: intentionally avoid the type check 14736 applyToParams.bind(null, decode) 14737 ); 14738 function addRoute(parentOrRoute, route) { 14739 let parent; 14740 let record; 14741 if (isRouteName(parentOrRoute)) { 14742 parent = matcher2.getRecordMatcher(parentOrRoute); 14743 record = route; 14744 } else { 14745 record = parentOrRoute; 14746 } 14747 return matcher2.addRoute(record, parent); 14748 } 14749 function removeRoute(name) { 14750 const recordMatcher = matcher2.getRecordMatcher(name); 14751 if (recordMatcher) { 14752 matcher2.removeRoute(recordMatcher); 14753 } 14754 } 14755 function getRoutes() { 14756 return matcher2.getRoutes().map((routeMatcher) => routeMatcher.record); 14757 } 14758 function hasRoute(name) { 14759 return !!matcher2.getRecordMatcher(name); 14760 } 14761 function resolve2(rawLocation, currentLocation) { 14762 currentLocation = assign({}, currentLocation || currentRoute.value); 14763 if (typeof rawLocation === "string") { 14764 const locationNormalized = parseURL(parseQuery$12, rawLocation, currentLocation.path); 14765 const matchedRoute2 = matcher2.resolve({ path: locationNormalized.path }, currentLocation); 14766 const href2 = routerHistory.createHref(locationNormalized.fullPath); 14767 return assign(locationNormalized, matchedRoute2, { 14768 params: decodeParams(matchedRoute2.params), 14769 hash: decode(locationNormalized.hash), 14770 redirectedFrom: void 0, 14771 href: href2 14772 }); 14773 } 14774 let matcherLocation; 14775 if (rawLocation.path != null) { 14776 matcherLocation = assign({}, rawLocation, { 14777 path: parseURL(parseQuery$12, rawLocation.path, currentLocation.path).path 14778 }); 14779 } else { 14780 const targetParams = assign({}, rawLocation.params); 14781 for (const key in targetParams) { 14782 if (targetParams[key] == null) { 14783 delete targetParams[key]; 14784 } 14785 } 14786 matcherLocation = assign({}, rawLocation, { 14787 params: encodeParams(targetParams) 14788 }); 14789 currentLocation.params = encodeParams(currentLocation.params); 14790 } 14791 const matchedRoute = matcher2.resolve(matcherLocation, currentLocation); 14792 const hash2 = rawLocation.hash || ""; 14793 matchedRoute.params = normalizeParams2(decodeParams(matchedRoute.params)); 14794 const fullPath = stringifyURL(stringifyQuery$12, assign({}, rawLocation, { 14795 hash: encodeHash(hash2), 14796 path: matchedRoute.path 14797 })); 14798 const href = routerHistory.createHref(fullPath); 14799 return assign({ 14800 fullPath, 14801 // keep the hash encoded so fullPath is effectively path + encodedQuery + 14802 // hash 14803 hash: hash2, 14804 query: ( 14805 // if the user is using a custom query lib like qs, we might have 14806 // nested objects, so we keep the query as is, meaning it can contain 14807 // numbers at `$route.query`, but at the point, the user will have to 14808 // use their own type anyway. 14809 // https://github.com/vuejs/router/issues/328#issuecomment-649481567
14810 stringifyQuery$12 === stringifyQuery ? normalizeQuery(rawLocation.query) : rawLocation.query || {} 14811 ) 14812 }, matchedRoute, { 14813 redirectedFrom: void 0, 14814 href 14815 }); 14816 } 14817 function locationAsObject(to) { 14818 return typeof to === "string" ? parseURL(parseQuery$12, to, currentRoute.value.path) : assign({}, to); 14819 } 14820 function checkCanceledNavigation(to, from) { 14821 if (pendingLocation !== to) { 14822 return createRouterError(8, { 14823 from, 14824 to 14825 }); 14826 } 14827 } 14828 function push2(to) { 14829 return pushWithRedirect(to); 14830 } 14831 function replace(to) { 14832 return push2(assign(locationAsObject(to), { replace: true })); 14833 } 14834 function handleRedirectRecord(to) { 14835 const lastMatched = to.matched[to.matched.length - 1]; 14836 if (lastMatched && lastMatched.redirect) { 14837 const { redirect } = lastMatched; 14838 let newTargetLocation = typeof redirect === "function" ? redirect(to) : redirect; 14839 if (typeof newTargetLocation === "string") { 14840 newTargetLocation = newTargetLocation.includes("?") || newTargetLocation.includes("#") ? newTargetLocation = locationAsObject(newTargetLocation) : ( 14841 // force empty params 14842 { path: newTargetLocation } 14843 ); 14844 newTargetLocation.params = {}; 14845 } 14846 return assign({ 14847 query: to.query, 14848 hash: to.hash, 14849 // avoid transferring params if the redirect has a path 14850 params: newTargetLocation.path != null ? {} : to.params 14851 }, newTargetLocation); 14852 } 14853 } 14854 function pushWithRedirect(to, redirectedFrom) { 14855 const targetLocation = pendingLocation = resolve2(to); 14856 const from = currentRoute.value; 14857 const data = to.state; 14858 const force = to.force; 14859 const replace2 = to.replace === true; 14860 const shouldRedirect = handleRedirectRecord(targetLocation); 14861 if (shouldRedirect) 14862 return pushWithRedirect( 14863 assign(locationAsObject(shouldRedirect), { 14864 state: typeof shouldRedirect === "object" ? assign({}, data, shouldRedirect.state) : data, 14865 force, 14866 replace: replace2 14867 }), 14868 // keep original redirectedFrom if it exists 14869 redirectedFrom || targetLocation 14870 ); 14871 const toLocation = targetLocation; 14872 toLocation.redirectedFrom = redirectedFrom; 14873 let failure; 14874 if (!force && isSameRouteLocation(stringifyQuery$12, from, targetLocation)) { 14875 failure = createRouterError(16, { to: toLocation, from }); 14876 handleScroll( 14877 from, 14878 from, 14879 // this is a push, the only way for it to be triggered from a 14880 // history.listen is with a redirect, which makes it become a push 14881 true, 14882 // This cannot be the first navigation because the initial location 14883 // cannot be manually navigated to 14884 false 14885 ); 14886 } 14887 return (failure ? Promise.resolve(failure) : navigate(toLocation, from)).catch((error) => isNavigationFailure(error) ? ( 14888 // navigation redirects still mark the router as ready 14889 isNavigationFailure( 14890 error, 14891 2 14892 /* ErrorTypes.NAVIGATION_GUARD_REDIRECT */ 14893 ) ? error : markAsReady(error) 14894 ) : ( 14895 // reject any unknown error 14896 triggerError(error, toLocation, from) 14897 )).then((failure2) => { 14898 if (failure2) { 14899 if (isNavigationFailure( 14900 failure2, 14901 2 14902 /* ErrorTypes.NAVIGATION_GUARD_REDIRECT */ 14903 )) { 14904 return pushWithRedirect( 14905 // keep options 14906 assign({ 14907 // preserve an existing replacement but allow the redirect to override it 14908 replace: replace2 14909 }, locationAsObject(failure2.to), { 14910 state: typeof failure2.to === "object" ? assign({}, data, failure2.to.state) : data, 14911 force 14912 }), 14913 // preserve the original redirectedFrom if any 14914 redirectedFrom || toLocation 14915 ); 14916 } 14917 } else { 14918 failure2 = finalizeNavigation(toLocation, from, true, replace2, data); 14919 } 14920 triggerAfterEach(toLocation, from, failure2); 14921 return failure2; 14922 }); 14923 } 14924 function checkCanceledNavigationAndReject(to, from) { 14925 const error = checkCanceledNavigation(to, from); 14926 return error ? Promise.reject(error) : Promise.resolve(); 14927 } 14928 function runWithContext(fn) { 14929 const app = installedApps.values().next().value; 14930 return app && typeof app.runWithContext === "function" ? app.runWithContext(fn) : fn(); 14931 } 14932 function navigate(to, from) { 14933 let guards; 14934 const [leavingRecords, updatingRecords, enteringRecords] = extractChangingRecords(to, from); 14935 guards = extractComponentsGuards(leavingRecords.reverse(), "beforeRouteLeave", to, from); 14936 for (const record of leavingRecords) { 14937 record.leaveGuards.forEach((guard) => { 14938 guards.push(guardToPromiseFn(guard, to, from)); 14939 }); 14940 } 14941 const canceledNavigationCheck = checkCanceledNavigationAndReject.bind(null, to, from); 14942 guards.push(canceledNavigationCheck); 14943 return runGuardQueue(guards).then(() => { 14944 guards = []; 14945 for (const guard of beforeGuards.list()) { 14946 guards.push(guardToPromiseFn(guard, to, from)); 14947 } 14948 guards.push(canceledNavigationCheck); 14949 return runGuardQueue(guards); 14950 }).then(() => { 14951 guards = extractComponentsGuards(updatingRecords, "beforeRouteUpdate", to, from); 14952 for (const record of updatingRecords) { 14953 record.updateGuards.forEach((guard) => { 14954 guards.push(guardToPromiseFn(guard, to, from)); 14955 }); 14956 } 14957 guards.push(canceledNavigationCheck); 14958 return runGuardQueue(guards); 14959 }).then(() => { 14960 guards = []; 14961 for (const record of enteringRecords) { 14962 if (record.beforeEnter) { 14963 if (isArray$3(record.beforeEnter)) { 14964 for (const beforeEnter of record.beforeEnter) 14965 guards.push(guardToPromiseFn(beforeEnter, to, from)); 14966 } else { 14967 guards.push(guardToPromiseFn(record.beforeEnter, to, from)); 14968 } 14969 } 14970 } 14971 guards.push(canceledNavigationCheck); 14972 return runGuardQueue(guards); 14973 }).then(() => { 14974 to.matched.forEach((record) => record.enterCallbacks = {}); 14975 guards = extractComponentsGuards(enteringRecords, "beforeRouteEnter", to, from, runWithContext); 14976 guards.push(canceledNavigationCheck); 14977 return runGuardQueue(guards); 14978 }).then(() => { 14979 guards = []; 14980 for (const guard of beforeResolveGuards.list()) { 14981 guards.push(guardToPromiseFn(guard, to, from)); 14982 } 14983 guards.push(canceledNavigationCheck); 14984 return runGuardQueue(guards); 14985 }).catch((err) => isNavigationFailure( 14986 err, 14987 8 14988 /* ErrorTypes.NAVIGATION_CANCELLED */ 14989 ) ? err : Promise.reject(err)); 14990 } 14991 function triggerAfterEach(to, from, failure) {
14992 afterGuards.list().forEach((guard) => runWithContext(() => guard(to, from, failure))); 14993 } 14994 function finalizeNavigation(toLocation, from, isPush, replace2, data) { 14995 const error = checkCanceledNavigation(toLocation, from); 14996 if (error) 14997 return error; 14998 const isFirstNavigation = from === START_LOCATION_NORMALIZED; 14999 const state = !isBrowser ? {} : history.state; 15000 if (isPush) { 15001 if (replace2 || isFirstNavigation) 15002 routerHistory.replace(toLocation.fullPath, assign({ 15003 scroll: isFirstNavigation && state && state.scroll 15004 }, data)); 15005 else 15006 routerHistory.push(toLocation.fullPath, data); 15007 } 15008 currentRoute.value = toLocation; 15009 handleScroll(toLocation, from, isPush, isFirstNavigation); 15010 markAsReady(); 15011 } 15012 let removeHistoryListener; 15013 function setupListeners() { 15014 if (removeHistoryListener) 15015 return; 15016 removeHistoryListener = routerHistory.listen((to, _from, info) => { 15017 if (!router.listening) 15018 return; 15019 const toLocation = resolve2(to); 15020 const shouldRedirect = handleRedirectRecord(toLocation); 15021 if (shouldRedirect) { 15022 pushWithRedirect(assign(shouldRedirect, { replace: true, force: true }), toLocation).catch(noop$2); 15023 return; 15024 } 15025 pendingLocation = toLocation; 15026 const from = currentRoute.value; 15027 if (isBrowser) { 15028 saveScrollPosition(getScrollKey(from.fullPath, info.delta), computeScrollPosition()); 15029 } 15030 navigate(toLocation, from).catch((error) => { 15031 if (isNavigationFailure( 15032 error, 15033 4 | 8 15034 /* ErrorTypes.NAVIGATION_CANCELLED */ 15035 )) { 15036 return error; 15037 } 15038 if (isNavigationFailure( 15039 error, 15040 2 15041 /* ErrorTypes.NAVIGATION_GUARD_REDIRECT */ 15042 )) { 15043 pushWithRedirect( 15044 assign(locationAsObject(error.to), { 15045 force: true 15046 }), 15047 toLocation 15048 // avoid an uncaught rejection, let push call triggerError 15049 ).then((failure) => { 15050 if (isNavigationFailure( 15051 failure, 15052 4 | 16 15053 /* ErrorTypes.NAVIGATION_DUPLICATED */ 15054 ) && !info.delta && info.type === NavigationType.pop) { 15055 routerHistory.go(-1, false); 15056 } 15057 }).catch(noop$2); 15058 return Promise.reject(); 15059 } 15060 if (info.delta) { 15061 routerHistory.go(-info.delta, false); 15062 } 15063 return triggerError(error, toLocation, from); 15064 }).then((failure) => { 15065 failure = failure || finalizeNavigation( 15066 // after navigation, all matched components are resolved 15067 toLocation, 15068 from, 15069 false 15070 ); 15071 if (failure) { 15072 if (info.delta && // a new navigation has been triggered, so we do not want to revert, that will change the current history 15073 // entry while a different route is displayed 15074 !isNavigationFailure( 15075 failure, 15076 8 15077 /* ErrorTypes.NAVIGATION_CANCELLED */ 15078 )) { 15079 routerHistory.go(-info.delta, false); 15080 } else if (info.type === NavigationType.pop && isNavigationFailure( 15081 failure, 15082 4 | 16 15083 /* ErrorTypes.NAVIGATION_DUPLICATED */ 15084 )) { 15085 routerHistory.go(-1, false); 15086 } 15087 } 15088 triggerAfterEach(toLocation, from, failure); 15089 }).catch(noop$2); 15090 }); 15091 } 15092 let readyHandlers = useCallbacks(); 15093 let errorListeners = useCallbacks(); 15094 let ready; 15095 function triggerError(error, to, from) { 15096 markAsReady(error); 15097 const list = errorListeners.list(); 15098 if (list.length) { 15099 list.forEach((handler) => handler(error, to, from)); 15100 } else { 15101 console.error(error); 15102 } 15103 return Promise.reject(error); 15104 } 15105 function isReady() { 15106 if (ready && currentRoute.value !== START_LOCATION_NORMALIZED) 15107 return Promise.resolve(); 15108 return new Promise((resolve22, reject) => { 15109 readyHandlers.add([resolve22, reject]); 15110 }); 15111 } 15112 function markAsReady(err) { 15113 if (!ready) { 15114 ready = !err; 15115 setupListeners();
15116 readyHandlers.list().forEach(([resolve22, reject]) => err ? reject(err) : resolve22()); 15117 readyHandlers.reset(); 15118 } 15119 return err; 15120 } 15121 function handleScroll(to, from, isPush, isFirstNavigation) { 15122 const { scrollBehavior } = options; 15123 if (!isBrowser || !scrollBehavior) 15124 return Promise.resolve(); 15125 const scrollPosition = !isPush && getSavedScrollPosition(getScrollKey(to.fullPath, 0)) || (isFirstNavigation || !isPush) && history.state && history.state.scroll || null; 15126 return nextTick().then(() => scrollBehavior(to, from, scrollPosition)).then((position) => position && scrollToPosition(position)).catch((err) => triggerError(err, to, from)); 15127 } 15128 const go = (delta) => routerHistory.go(delta); 15129 let started; 15130 const installedApps = /* @__PURE__ */ new Set(); 15131 const router = { 15132 currentRoute, 15133 listening: true, 15134 addRoute, 15135 removeRoute, 15136 clearRoutes: matcher2.clearRoutes, 15137 hasRoute, 15138 getRoutes, 15139 resolve: resolve2, 15140 options, 15141 push: push2, 15142 replace, 15143 go, 15144 back: () => go(-1), 15145 forward: () => go(1), 15146 beforeEach: beforeGuards.add, 15147 beforeResolve: beforeResolveGuards.add, 15148 afterEach: afterGuards.add, 15149 onError: errorListeners.add, 15150 isReady, 15151 install(app) { 15152 const router2 = this; 15153 app.component("RouterLink", RouterLink); 15154 app.component("RouterView", RouterView); 15155 app.config.globalProperties.$router = router2; 15156 Object.defineProperty(app.config.globalProperties, "$route", { 15157 enumerable: true, 15158 get: () => unref(currentRoute) 15159 }); 15160 if (isBrowser && // used for the initial navigation client side to avoid pushing 15161 // multiple times when the router is used in multiple apps 15162 !started && currentRoute.value === START_LOCATION_NORMALIZED) { 15163 started = true; 15164 push2(routerHistory.location).catch((err) => { 15165 }); 15166 } 15167 const reactiveRoute = {}; 15168 for (const key in START_LOCATION_NORMALIZED) { 15169 Object.defineProperty(reactiveRoute, key, { 15170 get: () => currentRoute.value[key], 15171 enumerable: true 15172 }); 15173 } 15174 app.provide(routerKey, router2); 15175 app.provide(routeLocationKey, shallowReactive(reactiveRoute)); 15176 app.provide(routerViewLocationKey, currentRoute); 15177 const unmountApp = app.unmount; 15178 installedApps.add(app); 15179 app.unmount = function() { 15180 installedApps.delete(app); 15181 if (installedApps.size < 1) { 15182 pendingLocation = START_LOCATION_NORMALIZED; 15183 removeHistoryListener && removeHistoryListener(); 15184 removeHistoryListener = null; 15185 currentRoute.value = START_LOCATION_NORMALIZED; 15186 started = false; 15187 ready = false; 15188 } 15189 unmountApp(); 15190 }; 15191 } 15192 }; 15193 function runGuardQueue(guards) { 15194 return guards.reduce((promise, guard) => promise.then(() => runWithContext(guard)), Promise.resolve()); 15195 } 15196 return router; 15197} 15198function extractChangingRecords(to, from) { 15199 const leavingRecords = []; 15200 const updatingRecords = []; 15201 const enteringRecords = []; 15202 const len = Math.max(from.matched.length, to.matched.length); 15203 for (let i = 0; i < len; i++) { 15204 const recordFrom = from.matched[i]; 15205 if (recordFrom) { 15206 if (to.matched.find((record) => isSameRouteRecord(record, recordFrom))) 15207 updatingRecords.push(recordFrom); 15208 else 15209 leavingRecords.push(recordFrom); 15210 } 15211 const recordTo = to.matched[i]; 15212 if (recordTo) { 15213 if (!from.matched.find((record) => isSameRouteRecord(record, recordTo))) { 15214 enteringRecords.push(recordTo); 15215 } 15216 } 15217 } 15218 return [leavingRecords, updatingRecords, enteringRecords]; 15219} 15220function useRouter$1() { 15221 return inject(routerKey); 15222} 15223function useRoute$1(_name) { 15224 return inject(routeLocationKey); 15225} 15226const _wrapInTransition = (props, children) => { 15227 return { default: () => { 15228 var _a; 15229 return props ? h(Transition, props === true ? {} : props, children) : (_a = children.default) == null ? void 0 : _a.call(children); 15230 } }; 15231}; 15232const ROUTE_KEY_PARENTHESES_RE = /(:\w+)\([^)]+\)/g; 15233const ROUTE_KEY_SYMBOLS_RE = /(:\w+)[?+*]/g; 15234const ROUTE_KEY_NORMAL_RE = /:\w+/g; 15235function generateRouteKey(route) { 15236 const source = (route == null ? void 0 : route.meta.key) ?? route.path.replace(ROUTE_KEY_PARENTHESES_RE, "$1").replace(ROUTE_KEY_SYMBOLS_RE, "$1").replace(ROUTE_KEY_NORMAL_RE, (r2) => { 15237 var _a; 15238 return ((_a = route.params[r2.slice(1)]) == null ? void 0 : _a.toString()) || ""; 15239 }); 15240 return typeof source === "function" ? source(route) : source; 15241} 15242function isChangingPage(to, from) { 15243 if (to === from || from === START_LOCATION_NORMALIZED) { 15244 return false;
15245 } 15246 if (generateRouteKey(to) !== generateRouteKey(from)) { 15247 return true; 15248 } 15249 const areComponentsSame = to.matched.every( 15250 (comp, index2) => { 15251 var _a, _b; 15252 return comp.components && comp.components.default === ((_b = (_a = from.matched[index2]) == null ? void 0 : _a.components) == null ? void 0 : _b.default); 15253 } 15254 ); 15255 if (areComponentsSame) { 15256 return false; 15257 } 15258 return true; 15259} 15260const routerOptions0 = { 15261 scrollBehavior(to, from, savedPosition) { 15262 var _a; 15263 const nuxtApp = useNuxtApp(); 15264 const behavior = ((_a = useRouter$2().options) == null ? void 0 : _a.scrollBehaviorType) ?? "auto"; 15265 let position = savedPosition || void 0; 15266 const routeAllowsScrollToTop = typeof to.meta.scrollToTop === "function" ? to.meta.scrollToTop(to, from) : to.meta.scrollToTop; 15267 if (!position && from && to && routeAllowsScrollToTop !== false && isChangingPage(to, from)) { 15268 position = { left: 0, top: 0 }; 15269 } 15270 if (to.path === from.path) { 15271 if (from.hash && !to.hash) { 15272 return { left: 0, top: 0 }; 15273 } 15274 if (to.hash) { 15275 return { el: to.hash, top: _getHashElementScrollMarginTop(to.hash), behavior }; 15276 } 15277 return false; 15278 } 15279 const hasTransition = (route) => !!(route.meta.pageTransition ?? appPageTransition); 15280 const hookToWait = hasTransition(from) && hasTransition(to) ? "page:transition:finish" : "page:loading:end"; 15281 return new Promise((resolve2) => { 15282 nuxtApp.hooks.hookOnce(hookToWait, () => { 15283 requestAnimationFrame(() => resolve2(_calculatePosition(to, "instant", position))); 15284 }); 15285 }); 15286 } 15287}; 15288function _getHashElementScrollMarginTop(selector) { 15289 try { 15290 const elem = document.querySelector(selector); 15291 if (elem) { 15292 return (Number.parseFloat(getComputedStyle(elem).scrollMarginTop) || 0) + (Number.parseFloat(getComputedStyle(document.documentElement).scrollPaddingTop) || 0); 15293 } 15294 } catch { 15295 } 15296 return 0; 15297} 15298function _calculatePosition(to, scrollBehaviorType, position) { 15299 if (position) { 15300 return position; 15301 } 15302 if (to.hash) { 15303 return { 15304 el: to.hash, 15305 top: _getHashElementScrollMarginTop(to.hash), 15306 behavior: scrollBehaviorType 15307 }; 15308 } 15309 return { left: 0, top: 0, behavior: scrollBehaviorType }; 15310} 15311const setInterval = window.setInterval; 15312const routerOptions1 = { 15313 scrollBehavior(to, from, savedPosition) { 15314 if (savedPosition) { 15315 return savedPosition; 15316 } 15317 window.scrollTo(0, 0); 15318 if (to.hash) { 15319 let attempts = 0; 15320 const maxAttempts = 10; 15321 let id = setInterval(() => { 15322 const element = document.getElementById(to.hash.substring(1)); 15323 if (element) { 15324 element.scrollIntoView({ behavior: "smooth" }); 15325 if (id) { 15326 clearInterval(id); 15327 } 15328 } else if (++attempts >= maxAttempts) { 15329 clearInterval(id); 15330 } 15331 }, 600); 15332 } 15333 } 15334}; 15335const configRouterOptions = { 15336 hashMode: false, 15337 scrollBehaviorType: "auto" 15338}; 15339const hashMode = routerOptions0.hashMode ?? false; 15340const routerOptions = { 15341 ...configRouterOptions, 15342 ...routerOptions0, 15343 ...routerOptions1 15344}; 15345function serialize(o) { 15346 return typeof o == "string" ? `'${o}'` : new c$1().serialize(o); 15347} 15348const c$1 = /* @__PURE__ */ function() { 15349 var _t; 15350 class o { 15351 constructor() { 15352 __privateAdd(this, _t, /* @__PURE__ */ new Map()); 15353 } 15354 compare(t, r2) { 15355 const e = typeof t, n = typeof r2; 15356 return e === "string" && n === "string" ? t.localeCompare(r2) : e === "number" && n === "number" ? t - r2 : String.prototype.localeCompare.call(this.serialize(t, true), this.serialize(r2, true)); 15357 } 15358 serialize(t, r2) { 15359 if (t === null) return "null"; 15360 switch (typeof t) { 15361 case "string": 15362 return r2 ? t : `'${t}'`; 15363 case "bigint": 15364 return `${t}n`; 15365 case "object": 15366 return this.$object(t); 15367 case "function": 15368 return this.$function(t); 15369 } 15370 return String(t); 15371 } 15372 serializeObject(t) { 15373 const r2 = Object.prototype.toString.call(t); 15374 if (r2 !== "[object Object]") return this.serializeBuiltInType(r2.length < 10 ? `unknown:${r2}` : r2.slice(8, -1), t); 15375 const e = t.constructor, n = e === Object || e === void 0 ? "" : e.name; 15376 if (n !== "" && globalThis[n] === e) return this.serializeBuiltInType(n, t); 15377 if (typeof t.toJSON == "function") { 15378 const i = t.toJSON(); 15379 return n + (i !== null && typeof i == "object" ? this.$object(i) : `(${this.serialize(i)})`); 15380 } 15381 return this.serializeObjectEntries(n, Object.entries(t)); 15382 } 15383 serializeBuiltInType(t, r2) { 15384 const e = this["$" + t]; 15385 if (e) return e.call(this, r2); 15386 if (typeof (r2 == null ? void 0 : r2.entries) == "function") return this.serializeObjectEntries(t, r2.entries()); 15387 throw new Error(`Cannot serialize ${t}`); 15388 } 15389 serializeObjectEntries(t, r2) { 15390 const e = Array.from(r2).sort((i, a) => this.compare(i[0], a[0])); 15391 let n = `${t}{`; 15392 for (let i = 0; i < e.length; i++) { 15393 const [a, l3] = e[i]; 15394 n += `${this.serialize(a, true)}:${this.serialize(l3)}`, i < e.length - 1 && (n += ","); 15395 } 15396 return n + "}"; 15397 } 15398 $object(t) { 15399 let r2 = __privateGet(this, _t).get(t); 15400 return r2 === void 0 && (__privateGet(this, _t).set(t, `#${__privateGet(this, _t).size}`), r2 = this.serializeObject(t), __privateGet(this, _t).set(t, r2)), r2; 15401 } 15402 $function(t) { 15403 const r2 = Function.prototype.toString.call(t); 15404 return r2.slice(-15) === "[native code] }" ? `${t.name || ""}()[native]` : `${t.name}(${t.length})${r2.replace(/\s*\n\s*/g, "")}`; 15405 } 15406 $Array(t) { 15407 let r2 = "["; 15408 for (let e = 0; e < t.length; e++) r2 += this.serialize(t[e]), e < t.length - 1 && (r2 += ","); 15409 return r2 + "]"; 15410 } 15411 $Date(t) {
15412 try { 15413 return `Date(${t.toISOString()})`; 15414 } catch { 15415 return "Date(null)"; 15416 } 15417 } 15418 $ArrayBuffer(t) { 15419 return `ArrayBuffer[${new Uint8Array(t).join(",")}]`; 15420 } 15421 $Set(t) { 15422 return `Set${this.$Array(Array.from(t).sort((r2, e) => this.compare(r2, e)))}`; 15423 } 15424 $Map(t) { 15425 return this.serializeObjectEntries("Map", t.entries()); 15426 } 15427 } 15428 _t = new WeakMap(); 15429 for (const s of ["Error", "RegExp", "URL"]) o.prototype["$" + s] = function(t) { 15430 return `${s}(${t})`; 15431 }; 15432 for (const s of ["Int8Array", "Uint8Array", "Uint8ClampedArray", "Int16Array", "Uint16Array", "Int32Array", "Uint32Array", "Float32Array", "Float64Array"]) o.prototype["$" + s] = function(t) { 15433 return `${s}[${t.join(",")}]`; 15434 }; 15435 for (const s of ["BigInt64Array", "BigUint64Array"]) o.prototype["$" + s] = function(t) { 15436 return `${s}[${t.join("n,")}${t.length > 0 ? "n" : ""}]`; 15437 }; 15438 return o; 15439}(); 15440const z = [1779033703, -1150833019, 1013904242, -1521486534, 1359893119, -1694144372, 528734635, 1541459225], R$1 = [1116352408, 1899447441, -1245643825, -373957723, 961987163, 1508970993, -1841331548, -1424204075, -670586216, 310598401, 607225278, 1426881987, 1925078388, -2132889090, -1680079193, -1046744716, -459576895, -272742522, 264347078, 604807628, 770255983, 1249150122, 1555081692, 1996064986, -1740746414, -1473132947, -1341970488, -1084653625, -958395405, -710438585, 113926993, 338241895, 666307205, 773529912, 1294757372, 1396182291, 1695183700, 1986661051, -2117940946, -1838011259, -1564481375, -1474664885, -1035236496, -949202525, -778901479, -694614492, -200395387, 275423344, 430227734, 506948616, 659060556, 883997877, 958139571, 1322822218, 1537002063, 1747873779, 1955562222, 2024104815, -2067236844, -1933114872, -1866530822, -1538233109, -1090935817, -965641998], S$1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_", r = []; 15441let k$1 = class k { 15442 constructor() { 15443 __publicField(this, "_data", new l$1()); 15444 __publicField(this, "_hash", new l$1([...z])); 15445 __publicField(this, "_nDataBytes", 0); 15446 __publicField(this, "_minBufferSize", 0); 15447 } 15448 finalize(e) { 15449 e && this._append(e); 15450 const s = this._nDataBytes * 8, t = this._data.sigBytes * 8; 15451 return this._data.words[t >>> 5] |= 128 << 24 - t % 32, this._data.words[(t + 64 >>> 9 << 4) + 14] = Math.floor(s / 4294967296), this._data.words[(t + 64 >>> 9 << 4) + 15] = s, this._data.sigBytes = this._data.words.length * 4, this._process(), this._hash; 15452 } 15453 _doProcessBlock(e, s) { 15454 const t = this._hash.words; 15455 let i = t[0], o = t[1], a = t[2], c2 = t[3], h2 = t[4], g = t[5], f = t[6], y = t[7]; 15456 for (let n = 0; n < 64; n++) { 15457 if (n < 16) r[n] = e[s + n] | 0; 15458 else { 15459 const d = r[n - 15], j = (d << 25 | d >>> 7) ^ (d << 14 | d >>> 18) ^ d >>> 3, B = r[n - 2], x2 = (B << 15 | B >>> 17) ^ (B << 13 | B >>> 19) ^ B >>> 10; 15460 r[n] = j + r[n - 7] + x2 + r[n - 16]; 15461 } 15462 const m = h2 & g ^ ~h2 & f, p2 = i & o ^ i & a ^ o & a, u = (i << 30 | i >>> 2) ^ (i << 19 | i >>> 13) ^ (i << 10 | i >>> 22), b2 = (h2 << 26 | h2 >>> 6) ^ (h2 << 21 | h2 >>> 11) ^ (h2 << 7 | h2 >>> 25), w2 = y + b2 + m + R$1[n] + r[n], M = u + p2; 15463 y = f, f = g, g = h2, h2 = c2 + w2 | 0, c2 = a, a = o, o = i, i = w2 + M | 0; 15464 } 15465 t[0] = t[0] + i | 0, t[1] = t[1] + o | 0, t[2] = t[2] + a | 0, t[3] = t[3] + c2 | 0, t[4] = t[4] + h2 | 0, t[5] = t[5] + g | 0, t[6] = t[6] + f | 0, t[7] = t[7] + y | 0; 15466 } 15467 _append(e) { 15468 typeof e == "string" && (e = l$1.fromUtf8(e)), this._data.concat(e), this._nDataBytes += e.sigBytes; 15469 } 15470 _process(e) { 15471 let s, t = this._data.sigBytes / 64; 15472 e ? t = Math.ceil(t) : t = Math.max((t | 0) - this._minBufferSize, 0); 15473 const i = t * 16, o = Math.min(i * 4, this._data.sigBytes); 15474 if (i) { 15475 for (let a = 0; a < i; a += 16) this._doProcessBlock(this._data.words, a); 15476 s = this._data.words.splice(0, i), this._data.sigBytes -= o; 15477 } 15478 return new l$1(s, o); 15479 } 15480}; 15481let l$1 = class l { 15482 constructor(e, s) { 15483 __publicField(this, "words"); 15484 __publicField(this, "sigBytes"); 15485 e = this.words = e || [], this.sigBytes = s === void 0 ? e.length * 4 : s; 15486 } 15487 static fromUtf8(e) { 15488 const s = unescape(encodeURIComponent(e)), t = s.length, i = []; 15489 for (let o = 0; o < t; o++) i[o >>> 2] |= (s.charCodeAt(o) & 255) << 24 - o % 4 * 8; 15490 return new l(i, t); 15491 } 15492 toBase64() { 15493 const e = []; 15494 for (let s = 0; s < this.sigBytes; s += 3) { 15495 const t = this.words[s >>> 2] >>> 24 - s % 4 * 8 & 255, i = this.words[s + 1 >>> 2] >>> 24 - (s + 1) % 4 * 8 & 255, o = this.words[s + 2 >>> 2] >>> 24 - (s + 2) % 4 * 8 & 255, a = t << 16 | i << 8 | o; 15496 for (let c2 = 0; c2 < 4 && s * 8 + c2 * 6 < this.sigBytes * 8; c2++) e.push(S$1.charAt(a >>> 6 * (3 - c2) & 63)); 15497 } 15498 return e.join(""); 15499 } 15500 concat(e) { 15501 if (this.words[this.sigBytes >>> 2] &= 4294967295 << 32 - this.sigBytes % 4 * 8, this.words.length = Math.ceil(this.sigBytes / 4), this.sigBytes % 4) for (let s = 0; s < e.sigBytes; s++) { 15502 const t = e.words[s >>> 2] >>> 24 - s % 4 * 8 & 255; 15503 this.words[this.sigBytes + s >>> 2] |= t << 24 - (this.sigBytes + s) % 4 * 8; 15504 } 15505 else for (let s = 0; s < e.sigBytes; s += 4) this.words[this.sigBytes + s >>> 2] = e.words[s >>> 2]; 15506 this.sigBytes += e.sigBytes; 15507 } 15508}; 15509function digest(_) { 15510 return new k$1().finalize(_).toBase64(); 15511} 15512function hash(input) { 15513 return digest(serialize(input)); 15514} 15515const DEBOUNCE_DEFAULTS = { 15516 trailing: true 15517}; 15518function debounce(fn, wait = 25, options = {}) { 15519 options = { ...DEBOUNCE_DEFAULTS, ...options }; 15520 if (!Number.isFinite(wait)) { 15521 throw new TypeError("Expected `wait` to be a finite number"); 15522 } 15523 let leadingValue; 15524 let timeout; 15525 let resolveList = []; 15526 let currentPromise; 15527 let trailingArgs; 15528 const applyFn = (_this, args) => { 15529 currentPromise = _applyPromised(fn, _this, args); 15530 currentPromise.finally(() => { 15531 currentPromise = null; 15532 if (options.trailing && trailingArgs && !timeout) { 15533 const promise = applyFn(_this, trailingArgs); 15534 trailingArgs = null; 15535 return promise; 15536 } 15537 }); 15538 return currentPromise; 15539 }; 15540 return function(...args) { 15541 if (currentPromise) { 15542 if (options.trailing) { 15543 trailingArgs = args; 15544 } 15545 return currentPromise; 15546 } 15547 return new Promise((resolve2) => { 15548 const shouldCallNow = !timeout && options.leading; 15549 clearTimeout(timeout); 15550 timeout = setTimeout(() => { 15551 timeout = null; 15552 const promise = options.leading ? leadingValue : applyFn(this, args); 15553 for (const _resolve of resolveList) { 15554 _resolve(promise); 15555 } 15556 resolveList = []; 15557 }, wait); 15558 if (shouldCallNow) { 15559 leadingValue = applyFn(this, args); 15560 resolve2(leadingValue); 15561 } else { 15562 resolveList.push(resolve2); 15563 } 15564 }); 15565 }; 15566} 15567async function _applyPromised(fn, _this, args) { 15568 return await fn.apply(_this, args); 15569} 15570const requestIdleCallback = globalThis.requestIdleCallback || ((cb) => { 15571 const start = Date.now(); 15572 const idleDeadline = { 15573 didTimeout: false, 15574 timeRemaining: () => Math.max(0, 50 - (Date.now() - start)) 15575 }; 15576 return setTimeout(() => { 15577 cb(idleDeadline); 15578 }, 1); 15579}); 15580const cancelIdleCallback = globalThis.cancelIdleCallback || ((id) => { 15581 clearTimeout(id); 15582}); 15583const onNuxtReady = (callback) => { 15584 const nuxtApp = useNuxtApp(); 15585 if (nuxtApp.isHydrating) { 15586 nuxtApp.hooks.hookOnce("app:suspense:resolve", () => { 15587 requestIdleCallback(() => callback()); 15588 }); 15589 } else { 15590 requestIdleCallback(() => callback()); 15591 } 15592}; 15593const isDefer = (dedupe) => dedupe === "defer" || dedupe === false; 15594function useAsyncData(...args) { 15595 var _a; 15596 const autoKey = typeof args[args.length - 1] === "string" ? args.pop() : void 0; 15597 if (typeof args[0] !== "string" && typeof args[0] !== "object" && !(typeof args[0] === "function" && typeof args[1] === "function")) { 15598 args.unshift(autoKey); 15599 } 15600 let [_key, _handler, options = {}] = args; 15601 const key = computed(() => toValue(_key)); 15602 if (typeof key.value !== "string") { 15603 throw new TypeError("[nuxt] [useAsyncData] key must be a string."); 15604 } 15605 if (typeof _handler !== "function") { 15606 throw new TypeError("[nuxt] [useAsyncData] handler must be a function."); 15607 } 15608 const nuxtApp = useNuxtApp(); 15609 const getDefault = () => asyncDataDefaults.value; 15610 const getDefaultCachedData = (key2, nuxtApp2, ctx) => { 15611 if (nuxtApp2.isHydrating) { 15612 return nuxtApp2.payload.data[key2]; 15613 } 15614 if (ctx.cause !== "refresh:manual" && ctx.cause !== "refresh:hook") { 15615 return nuxtApp2.static.data[key2]; 15616 } 15617 }; 15618 options.server ?? (options.server = true); 15619 options.default ?? (options.default = getDefault); 15620 options.getCachedData ?? (options.getCachedData = getDefaultCachedData); 15621 options.lazy ?? (options.lazy = false); 15622 options.immediate ?? (options.immediate = true); 15623 options.deep ?? (options.deep = asyncDataDefaults.deep); 15624 options.dedupe ?? (options.dedupe = "cancel"); 15625 options._functionName || "useAsyncData"; 15626 nuxtApp._asyncData[key.value]; 15627 const initialCachedData = options.getCachedData(key.value, nuxtApp, { cause: "initial" }); 15628 if (!((_a = nuxtApp._asyncData[key.value]) == null ? void 0 : _a._deps)) { 15629 nuxtApp._asyncData[key.value] = createAsyncData(nuxtApp, key.value, _handler, options, initialCachedData); 15630 } 15631 const asyncData = nuxtApp._asyncData[key.value]; 15632 asyncData._deps++; 15633 const initialFetch = () => nuxtApp._asyncData[key.value].execute({ cause: "initial", dedupe: options.dedupe }); 15634 const fetchOnServer = options.server !== false && nuxtApp.payload.serverRendered; 15635 { 15636 let unregister2 = function(key2) { 15637 const data = nuxtApp._asyncData[key2]; 15638 if (data == null ? void 0 : data._deps) { 15639 data._deps--; 15640 if (data._deps === 0) { 15641 data == null ? void 0 : data._off(); 15642 { 15643 clearNuxtDataByKey(nuxtApp, key2); 15644 data.execute = () => Promise.resolve(); 15645 nuxtApp._asyncData[key2].data.value = asyncDataDefaults.value; 15646 } 15647 } 15648 } 15649 }; 15650 const instance = getCurrentInstance(); 15651 if (instance && fetchOnServer && options.immediate && !instance.sp) { 15652 instance.sp = []; 15653 } 15654 if (instance && !instance._nuxtOnBeforeMountCbs) { 15655 instance._nuxtOnBeforeMountCbs = []; 15656 const cbs = instance._nuxtOnBeforeMountCbs; 15657 onBeforeMount(() => {
15658 cbs.forEach((cb) => { 15659 cb(); 15660 }); 15661 cbs.splice(0, cbs.length); 15662 }); 15663 onUnmounted(() => cbs.splice(0, cbs.length)); 15664 } 15665 if (fetchOnServer && nuxtApp.isHydrating && (asyncData.error.value || initialCachedData != null)) { 15666 { 15667 asyncData.pending.value = false; 15668 } 15669 asyncData.status.value = asyncData.error.value ? "error" : "success"; 15670 } else if (instance && (nuxtApp.payload.serverRendered && nuxtApp.isHydrating || options.lazy) && options.immediate) { 15671 instance._nuxtOnBeforeMountCbs.push(initialFetch); 15672 } else if (options.immediate) { 15673 initialFetch(); 15674 } 15675 const hasScope = getCurrentScope(); 15676 const unsub = watch([key, ...options.watch || []], ([newKey], [oldKey]) => { 15677 var _a2; 15678 if (oldKey === newKey) { 15679 asyncData._execute({ cause: "watch", dedupe: options.dedupe }); 15680 return; 15681 } 15682 if (oldKey) { 15683 unregister2(oldKey); 15684 } 15685 if (!((_a2 = nuxtApp._asyncData[newKey]) == null ? void 0 : _a2._deps)) { 15686 nuxtApp._asyncData[newKey] = createAsyncData(nuxtApp, newKey, _handler, options, options.getCachedData(newKey, nuxtApp, { cause: "initial" })); 15687 } 15688 nuxtApp._asyncData[newKey]._deps++; 15689 if (options.immediate) { 15690 nuxtApp._asyncData[newKey].execute({ cause: "initial", dedupe: options.dedupe }); 15691 } 15692 }); 15693 if (hasScope) { 15694 onScopeDispose(() => { 15695 unsub(); 15696 unregister2(key.value); 15697 }); 15698 } 15699 } 15700 const asyncReturn = { 15701 data: writableComputedRef(() => nuxtApp._asyncData[key.value].data), 15702 pending: writableComputedRef(() => nuxtApp._asyncData[key.value].pending), 15703 status: writableComputedRef(() => nuxtApp._asyncData[key.value].status), 15704 error: writableComputedRef(() => nuxtApp._asyncData[key.value].error), 15705 refresh: (...args2) => nuxtApp._asyncData[key.value].execute(...args2), 15706 execute: (...args2) => nuxtApp._asyncData[key.value].execute(...args2), 15707 clear: () => clearNuxtDataByKey(nuxtApp, key.value) 15708 }; 15709 const asyncDataPromise = Promise.resolve(nuxtApp._asyncDataPromises[key.value]).then(() => asyncReturn); 15710 Object.assign(asyncDataPromise, asyncReturn); 15711 return asyncDataPromise; 15712} 15713function writableComputedRef(getter) { 15714 return computed({ 15715 get() { 15716 return getter().value; 15717 }, 15718 set(value) { 15719 getter().value = value; 15720 } 15721 }); 15722} 15723function clearNuxtDataByKey(nuxtApp, key) { 15724 if (key in nuxtApp.payload.data) { 15725 nuxtApp.payload.data[key] = void 0; 15726 } 15727 if (key in nuxtApp.payload._errors) { 15728 nuxtApp.payload._errors[key] = asyncDataDefaults.errorValue; 15729 } 15730 if (nuxtApp._asyncData[key]) { 15731 nuxtApp._asyncData[key].data.value = void 0; 15732 nuxtApp._asyncData[key].error.value = asyncDataDefaults.errorValue; 15733 { 15734 nuxtApp._asyncData[key].pending.value = false; 15735 } 15736 nuxtApp._asyncData[key].status.value = "idle"; 15737 } 15738 if (key in nuxtApp._asyncDataPromises) { 15739 if (nuxtApp._asyncDataPromises[key]) { 15740 nuxtApp._asyncDataPromises[key].cancelled = true; 15741 } 15742 nuxtApp._asyncDataPromises[key] = void 0; 15743 } 15744} 15745function pick(obj, keys2) { 15746 const newObj = {}; 15747 for (const key of keys2) { 15748 newObj[key] = obj[key]; 15749 } 15750 return newObj; 15751} 15752function createAsyncData(nuxtApp, key, _handler, options, initialCachedData) { 15753 var _a; 15754 (_a = nuxtApp.payload._errors)[key] ?? (_a[key] = asyncDataDefaults.errorValue); 15755 const handler = _handler; 15756 const _ref = options.deep ? ref : shallowRef; 15757 const hasCachedData = initialCachedData != null; 15758 const asyncData = { 15759 data: _ref(hasCachedData ? initialCachedData : options.default()), 15760 pending: shallowRef(!hasCachedData), 15761 error: toRef(nuxtApp.payload._errors, key), 15762 status: shallowRef("idle"), 15763 execute: (opts = {}) => { 15764 if (nuxtApp._asyncDataPromises[key]) { 15765 if (isDefer(opts.dedupe ?? options.dedupe)) { 15766 return nuxtApp._asyncDataPromises[key]; 15767 } 15768 nuxtApp._asyncDataPromises[key].cancelled = true; 15769 } 15770 if (opts.cause === "initial" || nuxtApp.isHydrating) { 15771 const cachedData = opts.cause === "initial" ? initialCachedData : options.getCachedData(key, nuxtApp, { cause: opts.cause ?? "refresh:manual" }); 15772 if (cachedData != null) { 15773 nuxtApp.payload.data[key] = asyncData.data.value = cachedData; 15774 asyncData.error.value = asyncDataDefaults.errorValue; 15775 asyncData.status.value = "success"; 15776 return Promise.resolve(cachedData); 15777 } 15778 } 15779 { 15780 asyncData.pending.value = true; 15781 } 15782 asyncData.status.value = "pending"; 15783 const promise = new Promise( 15784 (resolve2, reject) => { 15785 try { 15786 resolve2(handler(nuxtApp)); 15787 } catch (err) { 15788 reject(err); 15789 } 15790 } 15791 ).then(async (_result) => { 15792 if (promise.cancelled) { 15793 return nuxtApp._asyncDataPromises[key]; 15794 } 15795 let result = _result; 15796 if (options.transform) { 15797 result = await options.transform(_result); 15798 } 15799 if (options.pick) { 15800 result = pick(result, options.pick); 15801 } 15802 nuxtApp.payload.data[key] = result; 15803 asyncData.data.value = result; 15804 asyncData.error.value = asyncDataDefaults.errorValue; 15805 asyncData.status.value = "success"; 15806 }).catch((error) => { 15807 if (promise.cancelled) { 15808 return nuxtApp._asyncDataPromises[key]; 15809 } 15810 asyncData.error.value = createError(error); 15811 asyncData.data.value = unref(options.default()); 15812 asyncData.status.value = "error"; 15813 }).finally(() => { 15814 if (promise.cancelled) { 15815 return; 15816 } 15817 { 15818 asyncData.pending.value = false;
15819 } 15820 delete nuxtApp._asyncDataPromises[key]; 15821 }); 15822 nuxtApp._asyncDataPromises[key] = promise; 15823 return nuxtApp._asyncDataPromises[key]; 15824 }, 15825 _execute: debounce((...args) => asyncData.execute(...args), 0, { leading: true }), 15826 _default: options.default, 15827 _deps: 0, 15828 _hash: void 0, 15829 _off: nuxtApp.hook("app:data:refresh", async (keys2) => { 15830 if (!keys2 || keys2.includes(key)) { 15831 await asyncData.execute({ cause: "refresh:hook" }); 15832 } 15833 }) 15834 }; 15835 return asyncData; 15836} 15837async function callOnce(...args) { 15838 var _a; 15839 const autoKey = typeof args[args.length - 1] === "string" ? args.pop() : void 0; 15840 if (typeof args[0] !== "string") { 15841 args.unshift(autoKey); 15842 } 15843 const [_key, fn, options] = args; 15844 if (!_key || typeof _key !== "string") { 15845 throw new TypeError("[nuxt] [callOnce] key must be a string: " + _key); 15846 } 15847 if (fn !== void 0 && typeof fn !== "function") { 15848 throw new Error("[nuxt] [callOnce] fn must be a function: " + fn); 15849 } 15850 const nuxtApp = useNuxtApp(); 15851 if ((options == null ? void 0 : options.mode) === "navigation") { 15852 nuxtApp.hooks.hookOnce("page:start", () => { 15853 nuxtApp.payload.once.delete(_key); 15854 }); 15855 } 15856 if (nuxtApp.payload.once.has(_key)) { 15857 return; 15858 } 15859 nuxtApp._once || (nuxtApp._once = {}); 15860 (_a = nuxtApp._once)[_key] || (_a[_key] = fn() || true); 15861 await nuxtApp._once[_key]; 15862 nuxtApp.payload.once.add(_key); 15863 delete nuxtApp._once[_key]; 15864} 15865const useStateKeyPrefix = "$s"; 15866function useState(...args) { 15867 const autoKey = typeof args[args.length - 1] === "string" ? args.pop() : void 0; 15868 if (typeof args[0] !== "string") { 15869 args.unshift(autoKey); 15870 } 15871 const [_key, init] = args; 15872 if (!_key || typeof _key !== "string") { 15873 throw new TypeError("[nuxt] [useState] key must be a string: " + _key); 15874 } 15875 if (init !== void 0 && typeof init !== "function") { 15876 throw new Error("[nuxt] [useState] init must be a function: " + init); 15877 } 15878 const key = useStateKeyPrefix + _key; 15879 const nuxtApp = useNuxtApp(); 15880 const state = toRef(nuxtApp.payload.state, key); 15881 if (state.value === void 0 && init) { 15882 const initialValue = init(); 15883 if (isRef(initialValue)) { 15884 nuxtApp.payload.state[key] = initialValue; 15885 return initialValue; 15886 } 15887 state.value = initialValue; 15888 } 15889 return state; 15890} 15891function useFetch(request, arg1, arg2) { 15892 const [opts = {}, autoKey] = typeof arg1 === "string" ? [{}, arg1] : [arg1, arg2]; 15893 const _request = computed(() => toValue(request)); 15894 const key = computed(() => toValue(opts.key) || "$f" + hash([autoKey, typeof _request.value === "string" ? _request.value : "", ...generateOptionSegments(opts)])); 15895 if (!opts.baseURL && typeof _request.value === "string" && (_request.value[0] === "/" && _request.value[1] === "/")) { 15896 throw new Error('[nuxt] [useFetch] the request URL must not start with "//".'); 15897 } 15898 const { 15899 server, 15900 lazy, 15901 default: defaultFn, 15902 transform, 15903 pick: pick2, 15904 watch: watchSources, 15905 immediate, 15906 getCachedData, 15907 deep, 15908 dedupe, 15909 ...fetchOptions 15910 } = opts; 15911 const _fetchOptions = reactive({ 15912 ...fetchDefaults, 15913 ...fetchOptions, 15914 cache: typeof opts.cache === "boolean" ? void 0 : opts.cache 15915 }); 15916 const _asyncDataOptions = { 15917 server, 15918 lazy, 15919 default: defaultFn, 15920 transform, 15921 pick: pick2, 15922 immediate, 15923 getCachedData, 15924 deep, 15925 dedupe, 15926 watch: watchSources === false ? [] : [...watchSources || [], _fetchOptions] 15927 }; 15928 if (watchSources !== false && !immediate) { 15929 watch([...watchSources || [], _fetchOptions], () => { 15930 _asyncDataOptions.immediate = true; 15931 }, { flush: "pre", once: true }); 15932 } 15933 let controller; 15934 const asyncData = useAsyncData(key, () => { 15935 var _a; 15936 (_a = controller == null ? void 0 : controller.abort) == null ? void 0 : _a.call(controller, new DOMException("Request aborted as another request to the same endpoint was initiated.", "AbortError")); 15937 controller = typeof AbortController !== "undefined" ? new AbortController() : {}; 15938 const timeoutLength = toValue(opts.timeout); 15939 let timeoutId; 15940 if (timeoutLength) { 15941 timeoutId = setTimeout(() => controller.abort(new DOMException("Request aborted due to timeout.", "AbortError")), timeoutLength); 15942 controller.signal.onabort = () => clearTimeout(timeoutId); 15943 } 15944 let _$fetch = opts.$fetch || globalThis.$fetch; 15945 return _$fetch(_request.value, { signal: controller.signal, ..._fetchOptions }).finally(() => { 15946 clearTimeout(timeoutId); 15947 }); 15948 }, _asyncDataOptions); 15949 return asyncData; 15950} 15951function generateOptionSegments(opts) { 15952 var _a; 15953 const segments = [ 15954 ((_a = toValue(opts.method)) == null ? void 0 : _a.toUpperCase()) || "GET", 15955 toValue(opts.baseURL) 15956 ]; 15957 for (const _obj of [opts.params || opts.query]) { 15958 const obj = toValue(_obj); 15959 if (!obj) { 15960 continue; 15961 } 15962 const unwrapped = {}; 15963 for (const [key, value] of Object.entries(obj)) { 15964 unwrapped[toValue(key)] = toValue(value); 15965 } 15966 segments.push(unwrapped); 15967 } 15968 if (opts.body) { 15969 segments.push(hash(toValue(opts.body))); 15970 } 15971 return segments; 15972} 15973async function preloadRouteComponents(to, router = useRouter$2()) { 15974 const { path, matched } = router.resolve(to); 15975 if (!matched.length) { 15976 return; 15977 } 15978 router._routePreloaded || (router._routePreloaded = /* @__PURE__ */ new Set()); 15979 if (router._routePreloaded.has(path)) { 15980 return; 15981 } 15982 const promises = router._preloadPromises || (router._preloadPromises = []); 15983 if (promises.length > 4) { 15984 return Promise.all(promises).then(() => preloadRouteComponents(to, router)); 15985 } 15986 router._routePreloaded.add(path); 15987 const components = matched.map((component) => { 15988 var _a; 15989 return (_a = component.components) == null ? void 0 : _a.default; 15990 }).filter((component) => typeof component === "function"); 15991 for (const component of components) { 15992 const promise = Promise.resolve(component()).catch(() => { 15993 }).finally(() => promises.splice(promises.indexOf(promise))); 15994 promises.push(promise); 15995 } 15996 await Promise.all(promises); 15997} 15998function reloadNuxtApp(options = {}) { 15999 const path = options.path || window.location.pathname; 16000 let handledPath = {}; 16001 try { 16002 handledPath = destr(sessionStorage.getItem("nuxt:reload") || "{}"); 16003 } catch { 16004 } 16005 if (options.force || (handledPath == null ? void 0 : handledPath.path) !== path || (handledPath == null ? void 0 : handledPath.expires) < Date.now()) { 16006 try { 16007 sessionStorage.setItem("nuxt:reload", JSON.stringify({ path, expires: Date.now() + (options.ttl ?? 1e4) })); 16008 } catch { 16009 } 16010 if (options.persistState) {
16011 try { 16012 sessionStorage.setItem("nuxt:reload:state", JSON.stringify({ state: useNuxtApp().payload.state })); 16013 } catch { 16014 } 16015 } 16016 if (window.location.pathname !== path) { 16017 window.location.href = path; 16018 } else { 16019 window.location.reload(); 16020 } 16021 } 16022} 16023function useRequestURL(opts) { 16024 return new URL(window.location.href); 16025} 16026const firstNonUndefined = (...args) => args.find((arg) => arg !== void 0); 16027// @__NO_SIDE_EFFECTS__ 16028function defineNuxtLink(options) { 16029 const componentName = options.componentName || "NuxtLink"; 16030 function isHashLinkWithoutHashMode(link) { 16031 return !hashMode && typeof link === "string" && link.startsWith("#"); 16032 } 16033 function resolveTrailingSlashBehavior(to, resolve2, trailingSlash) { 16034 const effectiveTrailingSlash = trailingSlash ?? options.trailingSlash; 16035 if (!to || effectiveTrailingSlash !== "append" && effectiveTrailingSlash !== "remove") { 16036 return to; 16037 } 16038 if (typeof to === "string") { 16039 return applyTrailingSlashBehavior(to, effectiveTrailingSlash); 16040 } 16041 const path = "path" in to && to.path !== void 0 ? to.path : resolve2(to).path; 16042 const resolvedPath = { 16043 ...to, 16044 name: void 0, 16045 // named routes would otherwise always override trailing slash behavior 16046 path: applyTrailingSlashBehavior(path, effectiveTrailingSlash) 16047 }; 16048 return resolvedPath; 16049 } 16050 function useNuxtLink(props) { 16051 const router = useRouter$2(); 16052 const config = /* @__PURE__ */ useRuntimeConfig(); 16053 const hasTarget = computed(() => !!props.target && props.target !== "_self"); 16054 const isAbsoluteUrl = computed(() => { 16055 const path = props.to || props.href || ""; 16056 return typeof path === "string" && hasProtocol(path, { acceptRelative: true }); 16057 }); 16058 const builtinRouterLink = resolveComponent("RouterLink"); 16059 const useBuiltinLink = builtinRouterLink && typeof builtinRouterLink !== "string" ? builtinRouterLink.useLink : void 0; 16060 const isExternal = computed(() => { 16061 if (props.external) { 16062 return true; 16063 } 16064 const path = props.to || props.href || ""; 16065 if (typeof path === "object") { 16066 return false; 16067 } 16068 return path === "" || isAbsoluteUrl.value; 16069 }); 16070 const to = computed(() => { 16071 const path = props.to || props.href || ""; 16072 if (isExternal.value) { 16073 return path; 16074 } 16075 return resolveTrailingSlashBehavior(path, router.resolve, props.trailingSlash); 16076 }); 16077 const link = isExternal.value ? void 0 : useBuiltinLink == null ? void 0 : useBuiltinLink({ ...props, to }); 16078 const href = computed(() => { 16079 var _a; 16080 const effectiveTrailingSlash = props.trailingSlash ?? options.trailingSlash; 16081 if (!to.value || isAbsoluteUrl.value || isHashLinkWithoutHashMode(to.value)) { 16082 return to.value; 16083 } 16084 if (isExternal.value) { 16085 const path = typeof to.value === "object" && "path" in to.value ? resolveRouteObject(to.value) : to.value; 16086 const href2 = typeof path === "object" ? router.resolve(path).href : path; 16087 return applyTrailingSlashBehavior(href2, effectiveTrailingSlash); 16088 } 16089 if (typeof to.value === "object") { 16090 return ((_a = router.resolve(to.value)) == null ? void 0 : _a.href) ?? null; 16091 } 16092 return applyTrailingSlashBehavior(joinURL(config.app.baseURL, to.value), effectiveTrailingSlash); 16093 }); 16094 return { 16095 to, 16096 hasTarget, 16097 isAbsoluteUrl, 16098 isExternal, 16099 // 16100 href, 16101 isActive: (link == null ? void 0 : link.isActive) ?? computed(() => to.value === router.currentRoute.value.path), 16102 isExactActive: (link == null ? void 0 : link.isExactActive) ?? computed(() => to.value === router.currentRoute.value.path), 16103 route: (link == null ? void 0 : link.route) ?? computed(() => router.resolve(to.value)), 16104 async navigate(_e) { 16105 await navigateTo(href.value, { replace: props.replace, external: isExternal.value || hasTarget.value }); 16106 } 16107 }; 16108 } 16109 return /* @__PURE__ */ defineComponent({ 16110 name: componentName, 16111 props: { 16112 // Routing 16113 to: { 16114 type: [String, Object], 16115 default: void 0, 16116 required: false 16117 }, 16118 href: { 16119 type: [String, Object], 16120 default: void 0, 16121 required: false 16122 }, 16123 // Attributes 16124 target: { 16125 type: String, 16126 default: void 0, 16127 required: false 16128 }, 16129 rel: { 16130 type: String, 16131 default: void 0, 16132 required: false 16133 }, 16134 noRel: { 16135 type: Boolean, 16136 default: void 0, 16137 required: false 16138 }, 16139 // Prefetching 16140 prefetch: { 16141 type: Boolean, 16142 default: void 0, 16143 required: false 16144 }, 16145 prefetchOn: { 16146 type: [String, Object], 16147 default: void 0, 16148 required: false 16149 }, 16150 noPrefetch: { 16151 type: Boolean, 16152 default: void 0, 16153 required: false 16154 }, 16155 // Styling 16156 activeClass: { 16157 type: String, 16158 default: void 0, 16159 required: false 16160 }, 16161 exactActiveClass: { 16162 type: String, 16163 default: void 0, 16164 required: false 16165 }, 16166 prefetchedClass: { 16167 type: String, 16168 default: void 0, 16169 required: false 16170 }, 16171 // Vue Router's `<RouterLink>` additional props 16172 replace: { 16173 type: Boolean, 16174 default: void 0, 16175 required: false 16176 }, 16177 ariaCurrentValue: { 16178 type: String, 16179 default: void 0, 16180 required: false 16181 }, 16182 // Edge cases handling 16183 external: { 16184 type: Boolean, 16185 default: void 0, 16186 required: false 16187 }, 16188 // Slot API 16189 custom: { 16190 type: Boolean, 16191 default: void 0, 16192 required: false 16193 }, 16194 // Behavior 16195 trailingSlash: { 16196 type: String, 16197 default: void 0, 16198 required: false 16199 } 16200 }, 16201 useLink: useNuxtLink, 16202 setup(props, { slots }) { 16203 const router = useRouter$2(); 16204 const { to, href, navigate, isExternal, hasTarget, isAbsoluteUrl } = useNuxtLink(props); 16205 const prefetched = ref(false); 16206 const el = ref(null); 16207 const elRef = (ref2) => { 16208 var _a; 16209 el.value = props.custom ? (_a = ref2 == null ? void 0 : ref2.$el) == null ? void 0 : _a.nextElementSibling : ref2 == null ? void 0 : ref2.$el; 16210 }; 16211 function shouldPrefetch(mode) { 16212 var _a, _b; 16213 return !prefetched.value && (typeof props.prefetchOn === "string" ? props.prefetchOn === mode : ((_a = props.prefetchOn) == null ? void 0 : _a[mode]) ?? ((_b = options.prefetchOn) == null ? void 0 : _b[mode])) && (props.prefetch ?? options.prefetch) !== false && props.noPrefetch !== true && props.target !== "_blank" && !isSlowConnection(); 16214 } 16215 async function prefetch(nuxtApp = useNuxtApp()) { 16216 if (prefetched.value) { 16217 return; 16218 } 16219 prefetched.value = true; 16220 const path = typeof to.value === "string" ? to.value : isExternal.value ? resolveRouteObject(to.value) : router.resolve(to.value).fullPath; 16221 const normalizedPath = isExternal.value ? new URL(path, window.location.href).href : path; 16222 await Promise.all([ 16223 nuxtApp.hooks.callHook("link:prefetch", normalizedPath).catch(() => { 16224 }), 16225 !isExternal.value && !hasTarget.value && preloadRouteComponents(to.value, router).catch(() => { 16226 }) 16227 ]); 16228 } 16229 { 16230 if (shouldPrefetch("visibility")) { 16231 const nuxtApp = useNuxtApp(); 16232 let idleId; 16233 let unobserve = null; 16234 onMounted(() => { 16235 const observer = useObserver(); 16236 onNuxtReady(() => { 16237 idleId = requestIdleCallback(() => { 16238 var _a; 16239 if ((_a = el == null ? void 0 : el.value) == null ? void 0 : _a.tagName) { 16240 unobserve = observer.observe(el.value, async () => { 16241 unobserve == null ? void 0 : unobserve(); 16242 unobserve = null; 16243 await prefetch(nuxtApp); 16244 }); 16245 } 16246 }); 16247 }); 16248 }); 16249 onBeforeUnmount(() => { 16250 if (idleId) { 16251 cancelIdleCallback(idleId); 16252 } 16253 unobserve == null ? void 0 : unobserve(); 16254 unobserve = null; 16255 }); 16256 } 16257 } 16258 return () => { 16259 var _a; 16260 if (!isExternal.value && !hasTarget.value && !isHashLinkWithoutHashMode(to.value)) { 16261 const routerLinkProps = { 16262 ref: elRef, 16263 to: to.value, 16264 activeClass: props.activeClass || options.activeClass, 16265 exactActiveClass: props.exactActiveClass || options.exactActiveClass, 16266 replace: props.replace, 16267 ariaCurrentValue: props.ariaCurrentValue, 16268 custom: props.custom 16269 }; 16270 if (!props.custom) { 16271 { 16272 if (shouldPrefetch("interaction")) { 16273 routerLinkProps.onPointerenter = prefetch.bind(null, void 0); 16274 routerLinkProps.onFocus = prefetch.bind(null, void 0); 16275 } 16276 if (prefetched.value) { 16277 routerLinkProps.class = props.prefetchedClass || options.prefetchedClass; 16278 } 16279 } 16280 routerLinkProps.rel = props.rel || void 0; 16281 } 16282 return h( 16283 resolveComponent("RouterLink"), 16284 routerLinkProps, 16285 slots.default 16286 ); 16287 } 16288 const target = props.target || null; 16289 const rel = firstNonUndefined( 16290 // converts `""` to `null` to prevent the attribute from being added as empty (`rel=""`) 16291 props.noRel ? "" : props.rel, 16292 options.externalRelAttribute, 16293 /* 16294 * A fallback rel of `noopener noreferrer` is applied for external links or links that open in a new tab. 16295 * This solves a reverse tabnapping security flaw in browsers pre-2021 as well as improving privacy. 16296 */ 16297 isAbsoluteUrl.value || hasTarget.value ? "noopener noreferrer" : "" 16298 ) || null; 16299 if (props.custom) { 16300 if (!slots.default) { 16301 return null; 16302 } 16303 return slots.default({ 16304 href: href.value, 16305 navigate, 16306 prefetch, 16307 get route() { 16308 if (!href.value) { 16309 return void 0; 16310 } 16311 const url = new URL(href.value, window.location.href); 16312 return { 16313 path: url.pathname, 16314 fullPath: url.pathname, 16315 get query() { 16316 return parseQuery$1(url.search); 16317 }, 16318 hash: url.hash, 16319 params: {}, 16320 name: void 0, 16321 matched: [], 16322 redirectedFrom: void 0, 16323 meta: {}, 16324 href: href.value 16325 }; 16326 }, 16327 rel, 16328 target, 16329 isExternal: isExternal.value || hasTarget.value, 16330 isActive: false, 16331 isExactActive: false 16332 }); 16333 } 16334 return h("a", { ref: el, href: href.value || null, rel, target }, (_a = slots.default) == null ? void 0 : _a.call(slots)); 16335 }; 16336 } 16337 // }) as unknown as DefineComponent<NuxtLinkProps, object, object, ComputedOptions, MethodOptions, object, object, EmitsOptions, string, object, NuxtLinkProps, object, SlotsType<NuxtLinkSlots>> 16338 }); 16339} 16340const __nuxt_component_2$5 = /* @__PURE__ */ defineNuxtLink(nuxtLinkDefaults); 16341function applyTrailingSlashBehavior(to, trailingSlash) { 16342 const normalizeFn = trailingSlash === "append" ? withTrailingSlash : withoutTrailingSlash; 16343 const hasProtocolDifferentFromHttp = hasProtocol(to) && !to.startsWith("http"); 16344 if (hasProtocolDifferentFromHttp) { 16345 return to; 16346 } 16347 return normalizeFn(to, true); 16348} 16349function useObserver() { 16350 const nuxtApp = useNuxtApp(); 16351 if (nuxtApp._observer) { 16352 return nuxtApp._observer; 16353 } 16354 let observer = null; 16355 const callbacks = /* @__PURE__ */ new Map(); 16356 const observe = (element, callback) => { 16357 observer || (observer = new IntersectionObserver((entries) => {
16358 for (const entry of entries) { 16359 const callback2 = callbacks.get(entry.target); 16360 const isVisible = entry.isIntersecting || entry.intersectionRatio > 0; 16361 if (isVisible && callback2) { 16362 callback2(); 16363 } 16364 } 16365 })); 16366 callbacks.set(element, callback); 16367 observer.observe(element); 16368 return () => { 16369 callbacks.delete(element); 16370 observer == null ? void 0 : observer.unobserve(element); 16371 if (callbacks.size === 0) { 16372 observer == null ? void 0 : observer.disconnect(); 16373 observer = null; 16374 } 16375 }; 16376 }; 16377 const _observer = nuxtApp._observer = { 16378 observe 16379 }; 16380 return _observer; 16381} 16382const IS_2G_RE = /2g/; 16383function isSlowConnection() { 16384 const cn = navigator.connection; 16385 if (cn && (cn.saveData || IS_2G_RE.test(cn.effectiveType))) { 16386 return true; 16387 } 16388 return false; 16389} 16390const index = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 16391 __proto__: null, 16392 applyPlugin, 16393 applyPlugins, 16394 callOnce, 16395 callWithNuxt, 16396 cancelIdleCallback, 16397 clearError, 16398 createError, 16399 createNuxtApp, 16400 defineNuxtLink, 16401 defineNuxtPlugin, 16402 defineNuxtRouteMiddleware, 16403 definePayloadReviver, 16404 getAppManifest, 16405 getRouteRules, 16406 injectHead, 16407 isNuxtError, 16408 isPrerendered, 16409 loadPayload, 16410 navigateTo, 16411 onNuxtReady, 16412 preloadRouteComponents, 16413 registerPluginHooks, 16414 reloadNuxtApp, 16415 requestIdleCallback, 16416 showError, 16417 tryUseNuxtApp, 16418 useAsyncData, 16419 useError, 16420 useFetch, 16421 useHead, 16422 useNuxtApp, 16423 useRequestURL, 16424 useRoute: useRoute$2, 16425 useRouter: useRouter$2, 16426 useRuntimeConfig, 16427 useState 16428}, Symbol.toStringTag, { value: "Module" })); 16429const LazyCoreBlockCalendly = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockCalendly$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16430const LazyCoreBlockContactCard = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockContactCard$3), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16431const LazyCoreBlockDisclosures = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockDisclosures$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16432const LazyCoreBlockForm = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockForm$3), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16433const LazyCoreBlockFooter = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooter$2), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16434const LazyCoreBlockFooterBackground = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterBackground), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16435const LazyCoreBlockFooterBanner = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterBanner), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16436const LazyCoreBlockFooterDisclosures = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterDisclosures), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16437const LazyCoreBlockFooterLogo = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterLogo), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16438const LazyCoreBlockFooterOneTrust = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterOneTrust), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16439const LazyCoreBlockFooterSocialLinks = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterSocialLinks), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16440const LazyCoreBlockFooterContact = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterContact), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16441const LazyCoreBlockFooterContactAddress = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterContactAddress), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16442const LazyCoreBlockFooterContactEmail = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterContactEmail), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16443const LazyCoreBlockFooterContactGroup = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterContactGroup), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16444const LazyCoreBlockFooterContactPhone = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterContactPhone), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16445const LazyCoreAnchorLinkNavigation = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreAnchorLinkNavigation), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16446const LazyCoreBlock = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlock), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16447const LazyCoreBlockAccessibleTooltip = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockAccessibleTooltip), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16448const LazyCoreBlockAddressAutocomplete = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockAddressAutocomplete$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16449const LazyCoreBlockArticleCard = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockArticleCard$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16450const LazyCoreBlockArticles = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockArticles$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16451const LazyCoreBlockBreadcrumbs = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockBreadcrumbs), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16452const LazyCoreBlockButton = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockButton$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16453const LazyCoreBlockCalculators = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockCalculators$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16454const LazyCoreBlockCalendlyEmbed = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockCalendlyEmbed), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16455const LazyCoreBlockCarousel = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockCarousel), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16456const LazyCoreBlockCenteredNavBar = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockCenteredNavBar), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16457const LazyCoreBlockColumns = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockColumns), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16458const LazyCoreBlockContactHero = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockContactHero$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16459const LazyCoreBlockContentCard = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockContentCard$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16460const LazyCoreBlockContentCardTextField = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockContentCardTextField), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16461const LazyCoreBlockDialog = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockDialog), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16462const LazyCoreBlockDivider = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockDivider$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16463const LazyCoreBlockDynamicForm = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockDynamicForm), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16464const LazyCoreBlockFile = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockFile$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16465const LazyCoreBlockFrameEmbed = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockFrameEmbed), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16466const LazyCoreBlockGrid = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockGrid$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16467const LazyCoreBlockHero = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockHero$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2));
16468const LazyCoreBlockHeroBackground = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockHeroBackground), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16469const LazyCoreBlockHeroComponent = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockHeroComponent), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16470const LazyCoreBlockHtml = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockHtml$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16471const LazyCoreBlockIcon = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockIcon$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16472const LazyCoreBlockImage = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockImage), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16473const LazyCoreBlockImageCropped = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockImageCropped), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16474const LazyCoreBlockLazy = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockLazy), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16475const LazyCoreBlockMainNav = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockMainNav), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16476const LazyCoreBlockMainNavImage = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockMainNavImage), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16477const LazyCoreBlockMap = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockMap), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16478const LazyCoreBlockMedia = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockMedia$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16479const LazyCoreBlockNavItem = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockNavItem), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16480const LazyCoreBlockOEmbed = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockOEmbed$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16481const LazyCoreBlockPencilBanner = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockPencilBanner$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16482const LazyCoreBlockRepeat = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockRepeat$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16483const LazyCoreBlockRichText = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockRichText), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16484const LazyCoreBlockRows = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockRows$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16485const LazyCoreBlockSelect = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockSelect), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16486const LazyCoreBlockSocialLinks = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockSocialLinks$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16487const LazyCoreBlockStickyButton = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockStickyButton), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16488const LazyCoreBlockText = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockText$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16489const LazyCoreBlockUnknown = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockUnknown$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16490const LazyCoreBlockVerticalDivider = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockVerticalDivider), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16491const LazyCoreBlockVideo = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockVideo), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16492const LazyCoreBlockContainer = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockContainer$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16493const LazyCoreBlockContainerAccordion = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockContainerAccordion), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16494const LazyCoreBlockContainerTabs = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockContainerTabs), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16495const LazyCoreBlockContainerToggle = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreBlockContainerToggle), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16496const LazyCoreIcon = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIcon), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16497const LazyCoreIconAccordion = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() =>
16497 CoreIconAccordion$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16498const LazyCoreIconAccount = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconAccount$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16499const LazyCoreIconActions = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconActions), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16500const LazyCoreIconActivity = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconActivity), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16501const LazyCoreIconAddFolder = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconAddFolder$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16502const LazyCoreIconAddPage = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconAddPage$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16503const LazyCoreIconAdvancedSearch = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconAdvancedSearch$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16504const LazyCoreIconAlignCenter = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconAlignCenter$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16505const LazyCoreIconAlignLeft = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconAlignLeft$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16506const LazyCoreIconAlignRight = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconAlignRight$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16507const LazyCoreIconAlignVerticalBottom = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconAlignVerticalBottom$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16508const LazyCoreIconAlignVerticalCenter = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconAlignVerticalCenter$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16509const LazyCoreIconAlignVerticalTop = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconAlignVerticalTop$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16510const LazyCoreIconAnalytics = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconAnalytics$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16511const LazyCoreIconAnchorLink = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconAnchorLink$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16512const LazyCoreIconArchive = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconArchive$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16513const LazyCoreIconArrowDown = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconArrowDown$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16514const LazyCoreIconArrowLeft = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconArrowLeft$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16515const LazyCoreIconArrowLeftCircle = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconArrowLeftCircle$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16516const LazyCoreIconArrowRight = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconArrowRight$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16517const LazyCoreIconArrowUp = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconArrowUp$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16518const LazyCoreIconArticle = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconArticle$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16519const LazyCoreIconBars = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconBars$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16520const LazyCoreIconBell = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconBell$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16521const LazyCoreIconBilling = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconBilling$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16522const LazyCoreIconBlock = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconBlock), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16523const LazyCoreIconBottomBanner = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconBottomBanner$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16524const LazyCoreIconBreadcrumbExpand = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconBreadcrumbExpand), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16525const LazyCoreIconBrush = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconBrush$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16526const LazyCoreIconButton = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconButton$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16527const LazyCoreIconCalendar = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCalendar$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16528const LazyCoreIconCalendly = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCalendly), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16529const LazyCoreIconCalendlyTitle = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCalendlyTitle), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16530const LazyCoreIconCamera = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCamera$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16531const LazyCoreIconCardAccount = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCardAccount), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16532const LazyCoreIconCarousel = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCarousel$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16533const LazyCoreIconCarouselBackward = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCarouselBackward$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16534const LazyCoreIconCarouselForward = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCarouselForward$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16535const LazyCoreIconCategories = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCategories$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16536const LazyCoreIconChanges = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconChanges$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16537const LazyCoreIconCheckmark = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCheckmark$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16538const LazyCoreIconChevronDown = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconChevronDown$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16539const LazyCoreIconChevronLeft = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconChevronLeft$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16540const LazyCoreIconChevronRight = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconChevronRight$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16541const LazyCoreIconChevronUp = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconChevronUp$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16542const LazyCoreIconCircleCheck = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCircleCheck), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16543const LazyCoreIconCircleCheckLight = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCircleCheckLight$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16544const LazyCoreIconCircleMinus = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCircleMinus$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16545const LazyCoreIconCircleMinusFilled = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCircleMinusFilled$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16546const LazyCoreIconCirclePlus = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCirclePlus$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16547const LazyCoreIconCirclePlusFilled = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCirclePlusFilled$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16548const LazyCoreIconClock = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconClock$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16549const LazyCoreIconClockFilled = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconClockFilled$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16550const LazyCoreIconClose = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconClose), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16551const LazyCoreIconCloseCircle = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCloseCircle$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16552const LazyCoreIconCloseCircleFilled = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCloseCircleFilled$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16553const LazyCoreIconCompliance = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCompliance$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16554const LazyCoreIconComputer = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconComputer$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16555const LazyCoreIconConnected = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconConnected$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16556const LazyCoreIconConnectedOutline = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconConnectedOutline$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16557const LazyCoreIconContact = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconContact$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16558const LazyCoreIconContactEmail = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconContactEmail$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16559const LazyCoreIconContactFax = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconContactFax$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16560const LazyCoreIconContactPage = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconContactPage$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16561const LazyCoreIconContactPhone = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconContactPhone$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16562const LazyCoreIconContactSmartphone = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconContactSmartphone$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16563const LazyCoreIconContainersIcon = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconContainersIcon$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16564const LazyCoreIconContentLibrary = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconContentLibrary$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16565const LazyCoreIconContentLibraryMedia = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconContentLibraryMedia), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16566const LazyCoreIconCopy = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Prom
16566ise.resolve().then(() => CoreIconCopy$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16567const LazyCoreIconCopyright = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCopyright$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16568const LazyCoreIconCornerDownRight = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCornerDownRight$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16569const LazyCoreIconCreditCard = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCreditCard$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16570const LazyCoreIconCrop = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconCrop$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16571const LazyCoreIconDefault = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconDefault$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16572const LazyCoreIconDesign = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconDesign$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16573const LazyCoreIconDevices = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconDevices$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16574const LazyCoreIconDiagonalRightArrow = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconDiagonalRightArrow), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16575const LazyCoreIconDisclosures = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconDisclosures$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16576const LazyCoreIconDivider = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconDivider$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16577const LazyCoreIconDomains = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconDomains$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16578const LazyCoreIconDotsHorizontal = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconDotsHorizontal$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16579const LazyCoreIconDotsVertical = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconDotsVertical$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16580const LazyCoreIconDownArrow = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconDownArrow), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16581const LazyCoreIconDownload = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconDownload$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16582const LazyCoreIconDraftDetails = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconDraftDetails), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16583const LazyCoreIconDrafts = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconDrafts$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16584const LazyCoreIconDuplicate = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconDuplicate$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16585const LazyCoreIconEdit = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconEdit$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16586const LazyCoreIconEditCircle = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconEditCircle$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16587const LazyCoreIconEllipsisOutlined = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconEllipsisOutlined$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16588const LazyCoreIconEmail = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconEmail$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16589const LazyCoreIconEmoji = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconEmoji$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16590const LazyCoreIconError = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconError), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16591const LazyCoreIconErrorFilled = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconErrorFilled$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16592const LazyCoreIconExternalLink = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconExternalLink$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16593const LazyCoreIconFacebook = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconFacebook), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16594const LazyCoreIconFavoriteFilled = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconFavoriteFilled$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16595const LazyCoreIconFavoriteUnfilled = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconFavoriteUnfilled$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16596const LazyCoreIconFax = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconFax$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16597const LazyCoreIconFile = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconFile$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16598const LazyCoreIconFilter = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconFilter$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16599const LazyCoreIconFilterOutline = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconFilterOutline$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16600const LazyCoreIconFocalPoint = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconFocalPoint$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16601const LazyCoreIconFolder = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconFolder$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16602const LazyCoreIconFooter = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconFooter$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16603const LazyCoreIconForm = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconForm$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16604const LazyCoreIconFormIcon = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconFormIcon$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16605const LazyCoreIconGlobe = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconGlobe$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16606const LazyCoreIconGradient = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconGradient$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16607const LazyCoreIconGradientSquare = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconGradientSquare$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16608const LazyCoreIconGrid = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconGrid$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16609const LazyCoreIconGridOn = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconGridOn$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16610const LazyCoreIconHamburgerMenu = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconHamburgerMenu), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16611const LazyCoreIconHeader = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconHeader$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16612const LazyCoreIconHome = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconHome$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16613const LazyCoreIconIcon71 = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconIcon71$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16614const LazyCoreIconIcons = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconIcons$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16615const LazyCoreIconImage = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconImage$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16616const LazyCoreIconImageOffset = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconImageOffset$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16617const LazyCoreIconInReview = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconInReview$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16618const LazyCoreIconInfo = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconInfo), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16619const LazyCoreIconInsertDriveFile = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconInsertDriveFile$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16620const LazyCoreIconInsertLink = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconInsertLink$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16621const LazyCoreIconInstagram = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconInstagram), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16622const LazyCoreIconLandingLogo = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconLandingLogo$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16623const LazyCoreIconLayout = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconLayout$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16624const LazyCoreIconLeftArrow = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconLeftArrow$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16625const LazyCoreIconLinkedin = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconLinkedin), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16626const LazyCoreIconList = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconList$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16627const LazyCoreIconListView = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconListView$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16628const LazyCoreIconLock = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconLock$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16629const LazyCoreIconLogo = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconLogo$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16630const LazyCoreIconMap = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconMap$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16631const LazyCoreIconMapPin = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconMapPin$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16632const LazyCoreIconMaximize = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconMaximize$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16633const LazyCoreIconMedia = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconMedia$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16634const LazyCoreIconMenuClose = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconMenuClose), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16635const LazyCoreIconMessageCircle = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconMessageCircle), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16636const LazyCoreIconMinimize = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconMinimize$1), true ? void 0 : void 0
16636, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16637const LazyCoreIconMinus = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconMinus$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16638const LazyCoreIconMobilePhone = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconMobilePhone$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16639const LazyCoreIconModal = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconModal$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16640const LazyCoreIconMonitor = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconMonitor$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16641const LazyCoreIconMovieStrip = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconMovieStrip$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16642const LazyCoreIconNews = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconNews$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16643const LazyCoreIconNotes = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconNotes$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16644const LazyCoreIconNotificationAlert = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconNotificationAlert$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16645const LazyCoreIconNotifications = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconNotifications$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16646const LazyCoreIconOneTrust = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconOneTrust$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16647const LazyCoreIconOpenInFull = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconOpenInFull$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16648const LazyCoreIconPaddingAll = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPaddingAll), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16649const LazyCoreIconPaddingBottom = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPaddingBottom), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16650const LazyCoreIconPaddingHorizontal = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPaddingHorizontal), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16651const LazyCoreIconPaddingLeft = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPaddingLeft), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16652const LazyCoreIconPaddingRight = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPaddingRight), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16653const LazyCoreIconPaddingTop = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPaddingTop), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16654const LazyCoreIconPage = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPage$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16655const LazyCoreIconPages = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPages$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16656const LazyCoreIconPaintersPalette = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPaintersPalette$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16657const LazyCoreIconPause = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPause$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16658const LazyCoreIconPauseCircle = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPauseCircle$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16659const LazyCoreIconPdf = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPdf$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16660const LazyCoreIconPhone = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPhone$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16661const LazyCoreIconPhotoLibrary = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPhotoLibrary$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16662const LazyCoreIconPlay = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPlay$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16663const LazyCoreIconPlayCircle = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPlayCircle$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16664const LazyCoreIconPlayCircleButton = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPlayCircleButton$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16665const LazyCoreIconPlus = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconPlus$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16666const LazyCoreIconQuestionMark = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconQuestionMark$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16667const LazyCoreIconReaderMode = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconReaderMode$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16668const LazyCoreIconRedo = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconRedo$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16669const LazyCoreIconReorder = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconReorder$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16670const LazyCoreIconReplace = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconReplace$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16671const LazyCoreIconReplay = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconReplay$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16672const LazyCoreIconRevert = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconRevert$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16673const LazyCoreIconRightArrow = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconRightArrow$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16674const LazyCoreIconRoundedSquare = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconRoundedSquare$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16675const LazyCoreIconSearch = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconSearch$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16676const LazyCoreIconSection = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconSection$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16677const LazyCoreIconSelectAll = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconSelectAll$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16678const LazyCoreIconSeo = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconSeo$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16679const LazyCoreIconSettings = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconSettings$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16680const LazyCoreIconShield = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconShield$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16681const LazyCoreIconShoppingBag = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconShoppingBag$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16682const LazyCoreIconShoppingCart = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconShoppingCart$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16683const LazyCoreIconSiteRedo = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconSiteRedo$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16684const LazyCoreIconSiteStyles = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconSiteStyles$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16685const LazyCoreIconSiteUndo = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconSiteUndo$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16686const LazyCoreIconSizing = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconSizing$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16687const LazyCoreIconSocial = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconSocial$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16688const LazyCoreIconSquareEdit = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconSquareEdit$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16689const LazyCoreIconStore = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconStore$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16690const LazyCoreIconTablet = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconTablet$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16691const LazyCoreIconTabs = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconTabs$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16692const LazyCoreIconTemplate = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconTemplate$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16693const LazyCoreIconTextStyle = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconTextStyle$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16694const LazyCoreIconTheme = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconTheme$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16695const LazyCoreIconTool = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconTool$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16696const LazyCoreIconTrash = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconTrash$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16697const LazyCoreIconTwitter = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconTwitter), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16698const LazyCoreIconUndo = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconUndo$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16699const LazyCoreIconUnlock = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() =>
16699 CoreIconUnlock$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16700const LazyCoreIconUpdate = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconUpdate$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16701const LazyCoreIconUpload = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconUpload$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16702const LazyCoreIconUser = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconUser), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16703const LazyCoreIconUserCheck = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconUserCheck$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16704const LazyCoreIconVideo = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconVideo$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16705const LazyCoreIconVideoPlay = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconVideoPlay$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16706const LazyCoreIconViewDesktop = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconViewDesktop$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16707const LazyCoreIconViewDesktopSettings = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconViewDesktopSettings), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16708const LazyCoreIconViewLiveSite = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconViewLiveSite$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16709const LazyCoreIconVisibilityOff = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconVisibilityOff$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16710const LazyCoreIconVisibilityOn = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconVisibilityOn$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16711const LazyCoreIconVolumeOff = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconVolumeOff$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16712const LazyCoreIconVolumeOn = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconVolumeOn$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16713const LazyCoreIconVolumeUp = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconVolumeUp$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16714const LazyCoreIconWatchLater = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconWatchLater$1), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16715const LazyCoreIconYoutube = /* @__PURE__ */ defineAsyncComponent(() => __vitePreload(() => Promise.resolve().then(() => CoreIconYoutube), true ? void 0 : void 0, import.meta.url).then((r2) => r2["default"] || r2.default || r2)); 16716const BRAND_FEATURE_FLAGS = { 16717 contentLibraryPermissionsRequired: 1, 16718 onBoardingMessages: 2, 16719 siteSettingsDataDictionary: 3, 16720 brightcoveRowBgVideoAutoPlayLoop: 4, 16721 stripeManualInvoices: 5, 16722 guidedTour: 6, 16723 siteViewerSites: 7, 16724 seoPermissions: 8, 16725 EditCustomSiteStyles: 9, 16726 ContactCardReadOnly: 10, 16727 CoreLite: 11, 16728 SubscriptionSelfService: 12, 16729 DomainSelfService: 13 16730}; 16731/*! 16732 * vuex v4.0.2 16733 * (c) 2021 Evan You 16734 * @license MIT 16735 */ 16736var storeKey = "store"; 16737function useStore$1(key) { 16738 if (key === void 0) key = null; 16739 return inject(key !== null ? key : storeKey); 16740} 16741function forEachValue(obj, fn) {
16742 Object.keys(obj).forEach(function(key) { 16743 return fn(obj[key], key); 16744 }); 16745} 16746function isObject$3(obj) { 16747 return obj !== null && typeof obj === "object"; 16748} 16749function isPromise(val) { 16750 return val && typeof val.then === "function"; 16751} 16752function partial(fn, arg) { 16753 return function() { 16754 return fn(arg); 16755 }; 16756} 16757function genericSubscribe(fn, subs, options) { 16758 if (subs.indexOf(fn) < 0) { 16759 options && options.prepend ? subs.unshift(fn) : subs.push(fn); 16760 } 16761 return function() { 16762 var i = subs.indexOf(fn); 16763 if (i > -1) { 16764 subs.splice(i, 1); 16765 } 16766 }; 16767} 16768function resetStore(store, hot) { 16769 store._actions = /* @__PURE__ */ Object.create(null); 16770 store._mutations = /* @__PURE__ */ Object.create(null); 16771 store._wrappedGetters = /* @__PURE__ */ Object.create(null); 16772 store._modulesNamespaceMap = /* @__PURE__ */ Object.create(null); 16773 var state = store.state; 16774 installModule(store, state, [], store._modules.root, true); 16775 resetStoreState(store, state, hot); 16776} 16777function resetStoreState(store, state, hot) { 16778 var oldState = store._state; 16779 store.getters = {}; 16780 store._makeLocalGettersCache = /* @__PURE__ */ Object.create(null); 16781 var wrappedGetters = store._wrappedGetters; 16782 var computedObj = {}; 16783 forEachValue(wrappedGetters, function(fn, key) { 16784 computedObj[key] = partial(fn, store); 16785 Object.defineProperty(store.getters, key, { 16786 // TODO: use `computed` when it's possible. at the moment we can't due to 16787 // https://github.com/vuejs/vuex/pull/1883 16788 get: function() { 16789 return computedObj[key](); 16790 }, 16791 enumerable: true 16792 // for local getters 16793 }); 16794 }); 16795 store._state = reactive({ 16796 data: state 16797 }); 16798 if (store.strict) { 16799 enableStrictMode(store); 16800 } 16801 if (oldState) { 16802 if (hot) { 16803 store._withCommit(function() { 16804 oldState.data = null; 16805 }); 16806 } 16807 } 16808} 16809function installModule(store, rootState, path, module2, hot) { 16810 var isRoot = !path.length; 16811 var namespace = store._modules.getNamespace(path); 16812 if (module2.namespaced) { 16813 if (store._modulesNamespaceMap[namespace] && false) ; 16814 store._modulesNamespaceMap[namespace] = module2; 16815 } 16816 if (!isRoot && !hot) { 16817 var parentState = getNestedState(rootState, path.slice(0, -1)); 16818 var moduleName = path[path.length - 1]; 16819 store._withCommit(function() { 16820 parentState[moduleName] = module2.state; 16821 }); 16822 } 16823 var local = module2.context = makeLocalContext(store, namespace, path); 16824 module2.forEachMutation(function(mutation, key) { 16825 var namespacedType = namespace + key; 16826 registerMutation(store, namespacedType, mutation, local); 16827 }); 16828 module2.forEachAction(function(action, key) { 16829 var type = action.root ? key : namespace + key; 16830 var handler = action.handler || action; 16831 registerAction(store, type, handler, local); 16832 }); 16833 module2.forEachGetter(function(getter, key) { 16834 var namespacedType = namespace + key; 16835 registerGetter(store, namespacedType, getter, local); 16836 }); 16837 module2.forEachChild(function(child, key) { 16838 installModule(store, rootState, path.concat(key), child, hot); 16839 }); 16840} 16841function makeLocalContext(store, namespace, path) { 16842 var noNamespace = namespace === ""; 16843 var local = { 16844 dispatch: noNamespace ? store.dispatch : function(_type, _payload, _options) { 16845 var args = unifyObjectStyle(_type, _payload, _options); 16846 var payload = args.payload; 16847 var options = args.options; 16848 var type = args.type; 16849 if (!options || !options.root) { 16850 type = namespace + type; 16851 } 16852 return store.dispatch(type, payload); 16853 }, 16854 commit: noNamespace ? store.commit : function(_type, _payload, _options) { 16855 var args = unifyObjectStyle(_type, _payload, _options); 16856 var payload = args.payload; 16857 var options = args.options; 16858 var type = args.type; 16859 if (!options || !options.root) { 16860 type = namespace + type; 16861 } 16862 store.commit(type, payload, options); 16863 } 16864 }; 16865 Object.defineProperties(local, { 16866 getters: { 16867 get: noNamespace ? function() { 16868 return store.getters; 16869 } : function() { 16870 return makeLocalGetters(store, namespace); 16871 } 16872 }, 16873 state: { 16874 get: function() { 16875 return getNestedState(store.state, path); 16876 } 16877 } 16878 }); 16879 return local; 16880} 16881function makeLocalGetters(store, namespace) { 16882 if (!store._makeLocalGettersCache[namespace]) { 16883 var gettersProxy = {}; 16884 var splitPos = namespace.length;
16885 Object.keys(store.getters).forEach(function(type) { 16886 if (type.slice(0, splitPos) !== namespace) { 16887 return; 16888 } 16889 var localType = type.slice(splitPos); 16890 Object.defineProperty(gettersProxy, localType, { 16891 get: function() { 16892 return store.getters[type]; 16893 }, 16894 enumerable: true 16895 }); 16896 }); 16897 store._makeLocalGettersCache[namespace] = gettersProxy; 16898 } 16899 return store._makeLocalGettersCache[namespace]; 16900} 16901function registerMutation(store, type, handler, local) { 16902 var entry = store._mutations[type] || (store._mutations[type] = []); 16903 entry.push(function wrappedMutationHandler(payload) { 16904 handler.call(store, local.state, payload); 16905 }); 16906} 16907function registerAction(store, type, handler, local) { 16908 var entry = store._actions[type] || (store._actions[type] = []); 16909 entry.push(function wrappedActionHandler(payload) { 16910 var res = handler.call(store, { 16911 dispatch: local.dispatch, 16912 commit: local.commit, 16913 getters: local.getters, 16914 state: local.state, 16915 rootGetters: store.getters, 16916 rootState: store.state 16917 }, payload); 16918 if (!isPromise(res)) { 16919 res = Promise.resolve(res); 16920 } 16921 if (store._devtoolHook) { 16922 return res.catch(function(err) { 16923 store._devtoolHook.emit("vuex:error", err); 16924 throw err; 16925 }); 16926 } else { 16927 return res; 16928 } 16929 }); 16930} 16931function registerGetter(store, type, rawGetter, local) { 16932 if (store._wrappedGetters[type]) { 16933 return; 16934 } 16935 store._wrappedGetters[type] = function wrappedGetter(store2) { 16936 return rawGetter( 16937 local.state, 16938 // local state 16939 local.getters, 16940 // local getters 16941 store2.state, 16942 // root state 16943 store2.getters 16944 // root getters 16945 ); 16946 }; 16947} 16948function enableStrictMode(store) { 16949 watch(function() { 16950 return store._state.data; 16951 }, function() { 16952 }, { deep: true, flush: "sync" }); 16953} 16954function getNestedState(state, path) { 16955 return path.reduce(function(state2, key) { 16956 return state2[key]; 16957 }, state); 16958} 16959function unifyObjectStyle(type, payload, options) { 16960 if (isObject$3(type) && type.type) { 16961 options = payload; 16962 payload = type; 16963 type = type.type; 16964 } 16965 return { type, payload, options }; 16966} 16967var LABEL_VUEX_BINDINGS = "vuex bindings"; 16968var MUTATIONS_LAYER_ID = "vuex:mutations"; 16969var ACTIONS_LAYER_ID = "vuex:actions"; 16970var INSPECTOR_ID = "vuex"; 16971var actionId = 0; 16972function addDevtools(app, store) { 16973 setupDevtoolsPlugin( 16974 { 16975 id: "org.vuejs.vuex", 16976 app, 16977 label: "Vuex", 16978 homepage: "https://next.vuex.vuejs.org/", 16979 logo: "https://vuejs.org/images/icons/favicon-96x96.png", 16980 packageName: "vuex", 16981 componentStateTypes: [LABEL_VUEX_BINDINGS] 16982 }, 16983 function(api) { 16984 api.addTimelineLayer({ 16985 id: MUTATIONS_LAYER_ID, 16986 label: "Vuex Mutations", 16987 color: COLOR_LIME_500 16988 }); 16989 api.addTimelineLayer({ 16990 id: ACTIONS_LAYER_ID, 16991 label: "Vuex Actions", 16992 color: COLOR_LIME_500 16993 }); 16994 api.addInspector({ 16995 id: INSPECTOR_ID, 16996 label: "Vuex", 16997 icon: "storage", 16998 treeFilterPlaceholder: "Filter stores..." 16999 }); 17000 api.on.getInspectorTree(function(payload) { 17001 if (payload.app === app && payload.inspectorId === INSPECTOR_ID) { 17002 if (payload.filter) { 17003 var nodes = []; 17004 flattenStoreForInspectorTree(nodes, store._modules.root, payload.filter, ""); 17005 payload.rootNodes = nodes; 17006 } else { 17007 payload.rootNodes = [ 17008 formatStoreForInspectorTree(store._modules.root, "") 17009 ]; 17010 } 17011 } 17012 }); 17013 api.on.getInspectorState(function(payload) { 17014 if (payload.app === app && payload.inspectorId === INSPECTOR_ID) {
17015 var modulePath = payload.nodeId; 17016 makeLocalGetters(store, modulePath); 17017 payload.state = formatStoreForInspectorState( 17018 getStoreModule(store._modules, modulePath), 17019 modulePath === "root" ? store.getters : store._makeLocalGettersCache, 17020 modulePath 17021 ); 17022 } 17023 }); 17024 api.on.editInspectorState(function(payload) { 17025 if (payload.app === app && payload.inspectorId === INSPECTOR_ID) { 17026 var modulePath = payload.nodeId; 17027 var path = payload.path; 17028 if (modulePath !== "root") { 17029 path = modulePath.split("/").filter(Boolean).concat(path); 17030 } 17031 store._withCommit(function() { 17032 payload.set(store._state.data, path, payload.state.value); 17033 }); 17034 } 17035 }); 17036 store.subscribe(function(mutation, state) { 17037 var data = {}; 17038 if (mutation.payload) { 17039 data.payload = mutation.payload; 17040 } 17041 data.state = state; 17042 api.notifyComponentUpdate(); 17043 api.sendInspectorTree(INSPECTOR_ID); 17044 api.sendInspectorState(INSPECTOR_ID); 17045 api.addTimelineEvent({ 17046 layerId: MUTATIONS_LAYER_ID, 17047 event: { 17048 time: Date.now(), 17049 title: mutation.type, 17050 data 17051 } 17052 }); 17053 }); 17054 store.subscribeAction({ 17055 before: function(action, state) { 17056 var data = {}; 17057 if (action.payload) { 17058 data.payload = action.payload; 17059 } 17060 action._id = actionId++; 17061 action._time = Date.now(); 17062 data.state = state; 17063 api.addTimelineEvent({ 17064 layerId: ACTIONS_LAYER_ID, 17065 event: { 17066 time: action._time, 17067 title: action.type, 17068 groupId: action._id, 17069 subtitle: "start", 17070 data 17071 } 17072 }); 17073 }, 17074 after: function(action, state) { 17075 var data = {}; 17076 var duration = Date.now() - action._time; 17077 data.duration = { 17078 _custom: { 17079 type: "duration", 17080 display: duration + "ms", 17081 tooltip: "Action duration", 17082 value: duration 17083 } 17084 }; 17085 if (action.payload) { 17086 data.payload = action.payload; 17087 } 17088 data.state = state; 17089 api.addTimelineEvent({ 17090 layerId: ACTIONS_LAYER_ID, 17091 event: { 17092 time: Date.now(), 17093 title: action.type, 17094 groupId: action._id, 17095 subtitle: "end", 17096 data 17097 } 17098 }); 17099 } 17100 }); 17101 } 17102 ); 17103} 17104var COLOR_LIME_500 = 8702998; 17105var COLOR_DARK = 6710886; 17106var COLOR_WHITE = 16777215; 17107var TAG_NAMESPACED = { 17108 label: "namespaced", 17109 textColor: COLOR_WHITE, 17110 backgroundColor: COLOR_DARK 17111}; 17112function extractNameFromPath(path) { 17113 return path && path !== "root" ? path.split("/").slice(-2, -1)[0] : "Root"; 17114} 17115function formatStoreForInspectorTree(module2, path) { 17116 return { 17117 id: path || "root", 17118 // all modules end with a `/`, we want the last segment only 17119 // cart/ -> cart 17120 // nested/cart/ -> cart 17121 label: extractNameFromPath(path), 17122 tags: module2.namespaced ? [TAG_NAMESPACED] : [], 17123 children: Object.keys(module2._children).map( 17124 function(moduleName) { 17125 return formatStoreForInspectorTree( 17126 module2._children[moduleName], 17127 path + moduleName + "/" 17128 ); 17129 } 17130 ) 17131 }; 17132} 17133function flattenStoreForInspectorTree(result, module2, filter2, path) { 17134 if (path.includes(filter2)) { 17135 result.push({ 17136 id: path || "root", 17137 label: path.endsWith("/") ? path.slice(0, path.length - 1) : path || "Root", 17138 tags: module2.namespaced ? [TAG_NAMESPACED] : [] 17139 }); 17140 } 17141 Object.keys(module2._children).forEach(function(moduleName) { 17142 flattenStoreForInspectorTree(result, module2._children[moduleName], filter2, path + moduleName + "/"); 17143 }); 17144} 17145function formatStoreForInspectorState(module2, getters, path) { 17146 getters = path === "root" ? getters : getters[path]; 17147 var gettersKeys = Object.keys(getters); 17148 var storeState = { 17149 state: Object.keys(module2.state).map(function(key) { 17150 return { 17151 key, 17152 editable: true, 17153 value: module2.state[key] 17154 }; 17155 }) 17156 }; 17157 if (gettersKeys.length) { 17158 var tree = transformPathsToObjectTree(getters); 17159 storeState.getters = Object.keys(tree).map(function(key) { 17160 return { 17161 key: key.endsWith("/") ? extractNameFromPath(key) : key, 17162 editable: false, 17163 value: canThrow(function() { 17164 return tree[key]; 17165 }) 17166 }; 17167 }); 17168 } 17169 return storeState; 17170} 17171function transformPathsToObjectTree(getters) { 17172 var result = {};
17173 Object.keys(getters).forEach(function(key) { 17174 var path = key.split("/"); 17175 if (path.length > 1) { 17176 var target = result; 17177 var leafKey = path.pop(); 17178 path.forEach(function(p2) { 17179 if (!target[p2]) { 17180 target[p2] = { 17181 _custom: { 17182 value: {}, 17183 display: p2, 17184 tooltip: "Module", 17185 abstract: true 17186 } 17187 }; 17188 } 17189 target = target[p2]._custom.value; 17190 }); 17191 target[leafKey] = canThrow(function() { 17192 return getters[key]; 17193 }); 17194 } else { 17195 result[key] = canThrow(function() { 17196 return getters[key]; 17197 }); 17198 } 17199 }); 17200 return result; 17201} 17202function getStoreModule(moduleMap, path) { 17203 var names = path.split("/").filter(function(n) { 17204 return n; 17205 }); 17206 return names.reduce( 17207 function(module2, moduleName, i) { 17208 var child = module2[moduleName]; 17209 if (!child) { 17210 throw new Error('Missing module "' + moduleName + '" for path "' + path + '".'); 17211 } 17212 return i === names.length - 1 ? child : child._children; 17213 }, 17214 path === "root" ? moduleMap : moduleMap.root._children 17215 ); 17216} 17217function canThrow(cb) { 17218 try { 17219 return cb(); 17220 } catch (e) { 17221 return e; 17222 } 17223} 17224var Module = function Module2(rawModule, runtime) { 17225 this.runtime = runtime; 17226 this._children = /* @__PURE__ */ Object.create(null); 17227 this._rawModule = rawModule; 17228 var rawState = rawModule.state; 17229 this.state = (typeof rawState === "function" ? rawState() : rawState) || {}; 17230}; 17231var prototypeAccessors$1 = { namespaced: { configurable: true } }; 17232prototypeAccessors$1.namespaced.get = function() { 17233 return !!this._rawModule.namespaced; 17234}; 17235Module.prototype.addChild = function addChild(key, module2) { 17236 this._children[key] = module2; 17237}; 17238Module.prototype.removeChild = function removeChild(key) { 17239 delete this._children[key]; 17240}; 17241Module.prototype.getChild = function getChild(key) { 17242 return this._children[key]; 17243}; 17244Module.prototype.hasChild = function hasChild(key) { 17245 return key in this._children; 17246}; 17247Module.prototype.update = function update(rawModule) { 17248 this._rawModule.namespaced = rawModule.namespaced; 17249 if (rawModule.actions) { 17250 this._rawModule.actions = rawModule.actions; 17251 } 17252 if (rawModule.mutations) { 17253 this._rawModule.mutations = rawModule.mutations; 17254 } 17255 if (rawModule.getters) { 17256 this._rawModule.getters = rawModule.getters; 17257 } 17258}; 17259Module.prototype.forEachChild = function forEachChild(fn) { 17260 forEachValue(this._children, fn); 17261}; 17262Module.prototype.forEachGetter = function forEachGetter(fn) { 17263 if (this._rawModule.getters) { 17264 forEachValue(this._rawModule.getters, fn); 17265 } 17266}; 17267Module.prototype.forEachAction = function forEachAction(fn) { 17268 if (this._rawModule.actions) { 17269 forEachValue(this._rawModule.actions, fn); 17270 } 17271}; 17272Module.prototype.forEachMutation = function forEachMutation(fn) { 17273 if (this._rawModule.mutations) { 17274 forEachValue(this._rawModule.mutations, fn); 17275 } 17276}; 17277Object.defineProperties(Module.prototype, prototypeAccessors$1); 17278var ModuleCollection = function ModuleCollection2(rawRootModule) { 17279 this.register([], rawRootModule, false); 17280}; 17281ModuleCollection.prototype.get = function get(path) { 17282 return path.reduce(function(module2, key) { 17283 return module2.getChild(key); 17284 }, this.root); 17285}; 17286ModuleCollection.prototype.getNamespace = function getNamespace(path) { 17287 var module2 = this.root; 17288 return path.reduce(function(namespace, key) { 17289 module2 = module2.getChild(key); 17290 return namespace + (module2.namespaced ? key + "/" : ""); 17291 }, ""); 17292}; 17293ModuleCollection.prototype.update = function update$1(rawRootModule) { 17294 update2([], this.root, rawRootModule); 17295}; 17296ModuleCollection.prototype.register = function register(path, rawModule, runtime) { 17297 var this$1$1 = this; 17298 if (runtime === void 0) runtime = true; 17299 var newModule = new Module(rawModule, runtime); 17300 if (path.length === 0) { 17301 this.root = newModule; 17302 } else { 17303 var parent = this.get(path.slice(0, -1)); 17304 parent.addChild(path[path.length - 1], newModule); 17305 } 17306 if (rawModule.modules) { 17307 forEachValue(rawModule.modules, function(rawChildModule, key) { 17308 this$1$1.register(path.concat(key), rawChildModule, runtime); 17309 }); 17310 } 17311}; 17312ModuleCollection.prototype.unregister = function unregister(path) { 17313 var parent = this.get(path.slice(0, -1)); 17314 var key = path[path.length - 1]; 17315 var child = parent.getChild(key); 17316 if (!child) { 17317 return; 17318 } 17319 if (!child.runtime) { 17320 return; 17321 } 17322 parent.removeChild(key); 17323}; 17324ModuleCollection.prototype.isRegistered = function isRegistered(path) { 17325 var parent = this.get(path.slice(0, -1)); 17326 var key = path[path.length - 1]; 17327 if (parent) { 17328 return parent.hasChild(key); 17329 } 17330 return false;
17331}; 17332function update2(path, targetModule, newModule) { 17333 targetModule.update(newModule); 17334 if (newModule.modules) { 17335 for (var key in newModule.modules) { 17336 if (!targetModule.getChild(key)) { 17337 return; 17338 } 17339 update2( 17340 path.concat(key), 17341 targetModule.getChild(key), 17342 newModule.modules[key] 17343 ); 17344 } 17345 } 17346} 17347function createStore(options) { 17348 return new Store(options); 17349} 17350var Store = function Store2(options) { 17351 var this$1$1 = this; 17352 if (options === void 0) options = {}; 17353 var plugins = options.plugins; 17354 if (plugins === void 0) plugins = []; 17355 var strict = options.strict; 17356 if (strict === void 0) strict = false; 17357 var devtools2 = options.devtools; 17358 this._committing = false; 17359 this._actions = /* @__PURE__ */ Object.create(null); 17360 this._actionSubscribers = []; 17361 this._mutations = /* @__PURE__ */ Object.create(null); 17362 this._wrappedGetters = /* @__PURE__ */ Object.create(null); 17363 this._modules = new ModuleCollection(options); 17364 this._modulesNamespaceMap = /* @__PURE__ */ Object.create(null); 17365 this._subscribers = []; 17366 this._makeLocalGettersCache = /* @__PURE__ */ Object.create(null); 17367 this._devtools = devtools2; 17368 var store = this; 17369 var ref2 = this; 17370 var dispatch2 = ref2.dispatch; 17371 var commit2 = ref2.commit; 17372 this.dispatch = function boundDispatch(type, payload) { 17373 return dispatch2.call(store, type, payload); 17374 }; 17375 this.commit = function boundCommit(type, payload, options2) { 17376 return commit2.call(store, type, payload, options2); 17377 }; 17378 this.strict = strict; 17379 var state = this._modules.root.state; 17380 installModule(this, state, [], this._modules.root); 17381 resetStoreState(this, state); 17382 plugins.forEach(function(plugin) { 17383 return plugin(this$1$1); 17384 }); 17385}; 17386var prototypeAccessors = { state: { configurable: true } }; 17387Store.prototype.install = function install(app, injectKey) { 17388 app.provide(injectKey || storeKey, this); 17389 app.config.globalProperties.$store = this; 17390 var useDevtools = this._devtools !== void 0 ? this._devtools : false; 17391 if (useDevtools) { 17392 addDevtools(app, this); 17393 } 17394}; 17395prototypeAccessors.state.get = function() { 17396 return this._state.data; 17397}; 17398prototypeAccessors.state.set = function(v2) { 17399}; 17400Store.prototype.commit = function commit(_type, _payload, _options) { 17401 var this$1$1 = this; 17402 var ref2 = unifyObjectStyle(_type, _payload, _options); 17403 var type = ref2.type; 17404 var payload = ref2.payload; 17405 var mutation = { type, payload }; 17406 var entry = this._mutations[type]; 17407 if (!entry) { 17408 return; 17409 } 17410 this._withCommit(function() { 17411 entry.forEach(function commitIterator(handler) { 17412 handler(payload); 17413 }); 17414 }); 17415 this._subscribers.slice().forEach(function(sub2) { 17416 return sub2(mutation, this$1$1.state); 17417 }); 17418}; 17419Store.prototype.dispatch = function dispatch(_type, _payload) { 17420 var this$1$1 = this; 17421 var ref2 = unifyObjectStyle(_type, _payload); 17422 var type = ref2.type; 17423 var payload = ref2.payload; 17424 var action = { type, payload }; 17425 var entry = this._actions[type]; 17426 if (!entry) { 17427 return; 17428 } 17429 try { 17430 this._actionSubscribers.slice().filter(function(sub2) { 17431 return sub2.before; 17432 }
17432).forEach(function(sub2) { 17433 return sub2.before(action, this$1$1.state); 17434 }); 17435 } catch (e) { 17436 } 17437 var result = entry.length > 1 ? Promise.all(entry.map(function(handler) { 17438 return handler(payload); 17439 })) : entry[0](payload); 17440 return new Promise(function(resolve2, reject) { 17441 result.then(function(res) { 17442 try { 17443 this$1$1._actionSubscribers.filter(function(sub2) { 17444 return sub2.after; 17445 }).forEach(function(sub2) { 17446 return sub2.after(action, this$1$1.state); 17447 }); 17448 } catch (e) { 17449 } 17450 resolve2(res); 17451 }, function(error) { 17452 try { 17453 this$1$1._actionSubscribers.filter(function(sub2) { 17454 return sub2.error; 17455 }).forEach(function(sub2) { 17456 return sub2.error(action, this$1$1.state, error); 17457 }); 17458 } catch (e) { 17459 } 17460 reject(error); 17461 }); 17462 }); 17463}; 17464Store.prototype.subscribe = function subscribe(fn, options) { 17465 return genericSubscribe(fn, this._subscribers, options); 17466}; 17467Store.prototype.subscribeAction = function subscribeAction(fn, options) { 17468 var subs = typeof fn === "function" ? { before: fn } : fn; 17469 return genericSubscribe(subs, this._actionSubscribers, options); 17470}; 17471Store.prototype.watch = function watch$12(getter, cb, options) { 17472 var this$1$1 = this; 17473 return watch(function() { 17474 return getter(this$1$1.state, this$1$1.getters); 17475 }, cb, Object.assign({}, options)); 17476}; 17477Store.prototype.replaceState = function replaceState(state) { 17478 var this$1$1 = this; 17479 this._withCommit(function() { 17480 this$1$1._state.data = state; 17481 }); 17482}; 17483Store.prototype.registerModule = function registerModule(path, rawModule, options) { 17484 if (options === void 0) options = {}; 17485 if (typeof path === "string") { 17486 path = [path]; 17487 } 17488 this._modules.register(path, rawModule); 17489 installModule(this, this.state, path, this._modules.get(path), options.preserveState); 17490 resetStoreState(this, this.state); 17491}; 17492Store.prototype.unregisterModule = function unregisterModule(path) { 17493 var this$1$1 = this; 17494 if (typeof path === "string") { 17495 path = [path]; 17496 } 17497 this._modules.unregister(path); 17498 this._withCommit(function() { 17499 var parentState = getNestedState(this$1$1.state, path.slice(0, -1)); 17500 delete parentState[path[path.length - 1]]; 17501 }); 17502 resetStore(this); 17503}; 17504Store.prototype.hasModule = function hasModule(path) { 17505 if (typeof path === "string") { 17506 path = [path]; 17507 } 17508 return this._modules.isRegistered(path); 17509}; 17510Store.prototype.hotUpdate = function hotUpdate(newOptions) { 17511 this._modules.update(newOptions); 17512 resetStore(this, true); 17513}; 17514Store.prototype._withCommit = function _withCommit(fn) { 17515 var committing = this._committing; 17516 this._committing = true; 17517 fn(); 17518 this._committing = committing; 17519}; 17520Object.defineProperties(Store.prototype, prototypeAccessors); 17521var mapGetters = normalizeNamespace(function(namespace, getters) { 17522 var res = {}; 17523 normalizeMap(getters).forEach(function(ref2) { 17524 var key = ref2.key; 17525 var val = ref2.val; 17526 val = namespace + val; 17527 res[key] = function mappedGetter() { 17528 if (namespace && !getModuleByNamespace(this.$store, "mapGetters", namespace)) { 17529 return; 17530 } 17531 return this.$store.getters[val]; 17532 }; 17533 res[key].vuex = true; 17534 }); 17535 return res; 17536}); 17537function normalizeMap(map) { 17538 if (!isValidMap(map)) { 17539 return []; 17540 } 17541 return Array.isArray(map) ? map.map(function(key) { 17542 return { key, val: key }; 17543 }) : Object.keys(map).map(function(key) { 17544 return { key, val: map[key] }; 17545 }); 17546} 17547function isValidMap(map) { 17548 return Array.isArray(map) || isObject$3(map); 17549} 17550function normalizeNamespace(fn) { 17551 return function(namespace, map) { 17552 if (typeof namespace !== "string") { 17553 map = namespace; 17554 namespace = ""; 17555 } else if (namespace.charAt(namespace.length - 1) !== "/") { 17556 namespace += "/"; 17557 } 17558 return fn(namespace, map); 17559 }; 17560} 17561function getModuleByNamespace(store, helper, namespace) { 17562 var module2 = store._modulesNamespaceMap[namespace]; 17563 return module2; 17564} 17565function bind(fn, thisArg) { 17566 return function wrap() { 17567 return fn.apply(thisArg, arguments); 17568 }; 17569} 17570const { toString: toString$1 } = Object.prototype; 17571const { getPrototypeOf } = Object; 17572const { iterator, toStringTag } = Symbol; 17573const kindOf = /* @__PURE__ */ ((cache) => (thing) => { 17574 const str = toString$1.call(thing); 17575 return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase()); 17576})(/* @__PURE__ */ Object.create(null)); 17577const kindOfTest = (type) => { 17578 type = type.toLowerCase(); 17579 return (thing) => kindOf(thing) === type; 17580}; 17581const typeOfTest = (type) => (thing) => typeof thing === type; 17582const { isArray: isArray$2 } = Array; 17583const isUndefined = typeOfTest("undefined"); 17584function isBuffer$1(val) { 17585 return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && isFunction$3(val.constructor.isBuffer) && val.constructor.isBuffer(val); 17586} 17587const isArrayBuffer = kindOfTest("ArrayBuffer"); 17588function isArrayBufferView(val) { 17589 let result; 17590 if (typeof ArrayBuffer !== "undefined" && ArrayBuffer.isView) { 17591 result = ArrayBuffer.isView(val); 17592 } else { 17593 result = val && val.buffer && isArrayBuffer(val.buffer); 17594 } 17595 return result; 17596} 17597const isString = typeOfTest("string"); 17598const isFunction$3 = typeOfTest("function"); 17599const isNumber = typeOfTest("number"); 17600const isObject$2 = (thing) => thing !== null && typeof thing === "object"; 17601const isBoolean = (thing) => thing === true || thing === false; 17602const isPlainObject$2 = (val) => { 17603 if (kindOf(val) !== "object") { 17604 return false;
17605 } 17606 const prototype2 = getPrototypeOf(val); 17607 return (prototype2 === null || prototype2 === Object.prototype || Object.getPrototypeOf(prototype2) === null) && !(toStringTag in val) && !(iterator in val); 17608}; 17609const isEmptyObject = (val) => { 17610 if (!isObject$2(val) || isBuffer$1(val)) { 17611 return false; 17612 } 17613 try { 17614 return Object.keys(val).length === 0 && Object.getPrototypeOf(val) === Object.prototype; 17615 } catch (e) { 17616 return false; 17617 } 17618}; 17619const isDate$1 = kindOfTest("Date"); 17620const isFile$1 = kindOfTest("File"); 17621const isReactNativeBlob = (value) => { 17622 return !!(value && typeof value.uri !== "undefined"); 17623}; 17624const isReactNative = (formData) => formData && typeof formData.getParts !== "undefined"; 17625const isBlob = kindOfTest("Blob"); 17626const isFileList = kindOfTest("FileList"); 17627const isStream = (val) => isObject$2(val) && isFunction$3(val.pipe); 17628function getGlobal() { 17629 if (typeof globalThis !== "undefined") return globalThis; 17630 if (typeof self !== "undefined") return self; 17631 if (typeof window !== "undefined") return window; 17632 if (typeof global !== "undefined") return global; 17633 return {}; 17634} 17635const G = getGlobal(); 17636const FormDataCtor = typeof G.FormData !== "undefined" ? G.FormData : void 0; 17637const isFormData = (thing) => { 17638 if (!thing) return false; 17639 if (FormDataCtor && thing instanceof FormDataCtor) return true; 17640 const proto = getPrototypeOf(thing); 17641 if (!proto || proto === Object.prototype) return false; 17642 if (!isFunction$3(thing.append)) return false; 17643 const kind = kindOf(thing); 17644 return kind === "formdata" || // detect form-data instance 17645 kind === "object" && isFunction$3(thing.toString) && thing.toString() === "[object FormData]"; 17646}; 17647const isURLSearchParams = kindOfTest("URLSearchParams"); 17648const [isReadableStream, isRequest, isResponse, isHeaders] = [ 17649 "ReadableStream", 17650 "Request", 17651 "Response", 17652 "Headers" 17653].map(kindOfTest); 17654const trim = (str) => { 17655 return str.trim ? str.trim() : str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ""); 17656}; 17657function forEach(obj, fn, { allOwnKeys = false } = {}) { 17658 if (obj === null || typeof obj === "undefined") { 17659 return; 17660 } 17661 let i; 17662 let l3; 17663 if (typeof obj !== "object") { 17664 obj = [obj]; 17665 } 17666 if (isArray$2(obj)) { 17667 for (i = 0, l3 = obj.length; i < l3; i++) { 17668 fn.call(null, obj[i], i, obj); 17669 } 17670 } else { 17671 if (isBuffer$1(obj)) { 17672 return; 17673 } 17674 const keys2 = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj); 17675 const len = keys2.length; 17676 let key; 17677 for (i = 0; i < len; i++) { 17678 key = keys2[i]; 17679 fn.call(null, obj[key], key, obj); 17680 } 17681 } 17682} 17683function findKey$1(obj, key) { 17684 if (isBuffer$1(obj)) { 17685 return null; 17686 } 17687 key = key.toLowerCase(); 17688 const keys2 = Object.keys(obj); 17689 let i = keys2.length; 17690 let _key; 17691 while (i-- > 0) { 17692 _key = keys2[i]; 17693 if (key === _key.toLowerCase()) { 17694 return _key; 17695 } 17696 } 17697 return null; 17698} 17699const _global = (() => { 17700 if (typeof globalThis !== "undefined") return globalThis; 17701 return typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : global; 17702})(); 17703const isContextDefined = (context) => !isUndefined(context) && context !== _global; 17704function merge$2(...objs) { 17705 const { caseless, skipUndefined } = isContextDefined(this) && this || {}; 17706 const result = {}; 17707 const assignValue2 = (val, key) => { 17708 if (key === "__proto__" || key === "constructor" || key === "prototype") { 17709 return; 17710 } 17711 const targetKey = caseless && findKey$1(result, key) || key; 17712 const existing = hasOwnProperty$b(result, targetKey) ? result[targetKey] : void 0; 17713 if (isPlainObject$2(existing) && isPlainObject$2(val)) { 17714 result[targetKey] = merge$2(existing, val); 17715 } else if (isPlainObject$2(val)) { 17716 result[targetKey] = merge$2({}, val); 17717 } else if (isArray$2(val)) { 17718 result[targetKey] = val.slice(); 17719 } else if (!skipUndefined || !isUndefined(val)) { 17720 result[targetKey] = val; 17721 } 17722 }; 17723 for (let i = 0, l3 = objs.length; i < l3; i++) { 17724 objs[i] && forEach(objs[i], assignValue2); 17725 } 17726 return result; 17727} 17728const extend = (a, b2, thisArg, { allOwnKeys } = {}) => { 17729 forEach( 17730 b2, 17731 (val, key) => { 17732 if (thisArg && isFunction$3(val)) { 17733 Object.defineProperty(a, key, { 17734 // Null-proto descriptor so a polluted Object.prototype.get cannot 17735 // hijack defineProperty's accessor-vs-data resolution. 17736 __proto__: null, 17737 value: bind(val, thisArg), 17738 writable: true, 17739 enumerable: true, 17740 configurable: true 17741 }); 17742 } else { 17743 Object.defineProperty(a, key, { 17744 __proto__: null, 17745 value: val, 17746 writable: true, 17747 enumerable: true, 17748 configurable: true 17749 }); 17750 } 17751 }, 17752 { allOwnKeys } 17753 ); 17754 return a; 17755}; 17756const stripBOM = (content) => { 17757 if (content.charCodeAt(0) === 65279) { 17758 content = content.slice(1); 17759 } 17760 return content; 17761}; 17762const inherits = (constructor, superConstructor, props, descriptors) => { 17763 constructor.prototype = Object.create(superConstructor.prototype, descriptors); 17764 Object.defineProperty(constructor.prototype, "constructor", { 17765 __proto__: null, 17766 value: constructor, 17767 writable: true, 17768 enumerable: false, 17769 configurable: true 17770 }); 17771 Object.defineProperty(constructor, "super", { 17772 __proto__: null, 17773 value: superConstructor.prototype 17774 }); 17775 props && Object.assign(constructor.prototype, props); 17776}; 17777const toFlatObject = (sourceObj, destObj, filter2, propFilter) => { 17778 let props; 17779 let i; 17780 let prop; 17781 const merged = {}; 17782 destObj = destObj || {}; 17783 if (sourceObj == null) return destObj; 17784 do { 17785 props = Object.getOwnPropertyNames(sourceObj); 17786 i = props.length; 17787 while (i-- > 0) { 17788 prop = props[i]; 17789 if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) { 17790 destObj[prop] = sourceObj[prop]; 17791 merged[prop] = true; 17792 } 17793 } 17794 sourceObj = filter2 !== false && getPrototypeOf(sourceObj); 17795 } while (sourceObj && (!filter2 || filter2(sourceObj, destObj)) && sourceObj !== Object.prototype); 17796 return destObj; 17797}; 17798const endsWith = (str, searchString, position) => { 17799 str = String(str); 17800 if (position === void 0 || position > str.length) { 17801 position = str.length; 17802 } 17803 position -= searchString.length; 17804 const lastIndex = str.indexOf(searchString, position); 17805 return lastIndex !== -1 && lastIndex === position; 17806}; 17807const toArray = (thing) => { 17808 if (!thing) return null; 17809 if (isArray$2(thing)) return thing; 17810 let i = thing.length; 17811 if (!isNumber(i)) return null; 17812 const arr = new Array(i); 17813 while (i-- > 0) { 17814 arr[i] = thing[i]; 17815 } 17816 return arr; 17817}; 17818const isTypedArray$1 = /* @__PURE__ */ ((TypedArray) => { 17819 return (thing) => { 17820 return TypedArray && thing instanceof TypedArray; 17821 }; 17822})(typeof Uint8Array !== "undefined" && getPrototypeOf(Uint8Array));
vendor: 6,575 bytes, lines 17823-18069
17823const forEachEntry = (obj, fn) => { 17824 const generator = obj && obj[iterator]; 17825 const _iterator = generator.call(obj); 17826 let result; 17827 while ((result = _iterator.next()) && !result.done) { 17828 const pair = result.value; 17829 fn.call(obj, pair[0], pair[1]); 17830 } 17831}; 17832const matchAll = (regExp, str) => { 17833 let matches2; 17834 const arr = []; 17835 while ((matches2 = regExp.exec(str)) !== null) { 17836 arr.push(matches2); 17837 } 17838 return arr; 17839}; 17840const isHTMLForm = kindOfTest("HTMLFormElement"); 17841const toCamelCase = (str) => { 17842 return str.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g, function replacer2(m, p1, p2) { 17843 return p1.toUpperCase() + p2; 17844 }); 17845}; 17846const hasOwnProperty$b = (({ hasOwnProperty: hasOwnProperty2 }) => (obj, prop) => hasOwnProperty2.call(obj, prop))(Object.prototype); 17847const isRegExp = kindOfTest("RegExp"); 17848const reduceDescriptors = (obj, reducer) => { 17849 const descriptors = Object.getOwnPropertyDescriptors(obj); 17850 const reducedDescriptors = {}; 17851 forEach(descriptors, (descriptor, name) => { 17852 let ret; 17853 if ((ret = reducer(descriptor, name, obj)) !== false) { 17854 reducedDescriptors[name] = ret || descriptor; 17855 } 17856 }); 17857 Object.defineProperties(obj, reducedDescriptors); 17858}; 17859const freezeMethods = (obj) => { 17860 reduceDescriptors(obj, (descriptor, name) => { 17861 if (isFunction$3(obj) && ["arguments", "caller", "callee"].includes(name)) { 17862 return false; 17863 } 17864 const value = obj[name]; 17865 if (!isFunction$3(value)) return; 17866 descriptor.enumerable = false; 17867 if ("writable" in descriptor) { 17868 descriptor.writable = false; 17869 return; 17870 } 17871 if (!descriptor.set) { 17872 descriptor.set = () => { 17873 throw Error("Can not rewrite read-only method '" + name + "'"); 17874 }; 17875 } 17876 }); 17877}; 17878const toObjectSet = (arrayOrString, delimiter) => { 17879 const obj = {}; 17880 const define = (arr) => { 17881 arr.forEach((value) => { 17882 obj[value] = true; 17883 }); 17884 }; 17885 isArray$2(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter)); 17886 return obj; 17887}; 17888const noop$1 = () => { 17889}; 17890const toFiniteNumber = (value, defaultValue) => { 17891 return value != null && Number.isFinite(value = +value) ? value : defaultValue; 17892}; 17893function isSpecCompliantForm(thing) { 17894 return !!(thing && isFunction$3(thing.append) && thing[toStringTag] === "FormData" && thing[iterator]); 17895} 17896const toJSONObject = (obj) => { 17897 const visited = /* @__PURE__ */ new WeakSet(); 17898 const visit = (source) => { 17899 if (isObject$2(source)) { 17900 if (visited.has(source)) { 17901 return; 17902 } 17903 if (isBuffer$1(source)) { 17904 return source; 17905 } 17906 if (!("toJSON" in source)) { 17907 visited.add(source); 17908 const target = isArray$2(source) ? [] : {}; 17909 forEach(source, (value, key) => { 17910 const reducedValue = visit(value); 17911 !isUndefined(reducedValue) && (target[key] = reducedValue); 17912 }); 17913 visited.delete(source); 17914 return target; 17915 } 17916 } 17917 return source; 17918 }; 17919 return visit(obj); 17920}; 17921const isAsyncFn = kindOfTest("AsyncFunction"); 17922const isThenable = (thing) => thing && (isObject$2(thing) || isFunction$3(thing)) && isFunction$3(thing.then) && isFunction$3(thing.catch); 17923const _setImmediate = ((setImmediateSupported, postMessageSupported) => { 17924 if (setImmediateSupported) { 17925 return setImmediate; 17926 } 17927 return postMessageSupported ? ((token, callbacks) => { 17928 _global.addEventListener( 17929 "message", 17930 ({ source, data }) => { 17931 if (source === _global && data === token) { 17932 callbacks.length && callbacks.shift()(); 17933 } 17934 }, 17935 false 17936 ); 17937 return (cb) => { 17938 callbacks.push(cb); 17939 _global.postMessage(token, "*"); 17940 }; 17941 })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb); 17942})(typeof setImmediate === "function", isFunction$3(_global.postMessage)); 17943const asap = typeof queueMicrotask !== "undefined" ? queueMicrotask.bind(_global) : typeof process !== "undefined" && process.nextTick || _setImmediate; 17944const isIterable = (thing) => thing != null && isFunction$3(thing[iterator]); 17945const utils$1 = { 17946 isArray: isArray$2, 17947 isArrayBuffer, 17948 isBuffer: isBuffer$1, 17949 isFormData, 17950 isArrayBufferView, 17951 isString, 17952 isNumber, 17953 isBoolean, 17954 isObject: isObject$2, 17955 isPlainObject: isPlainObject$2, 17956 isEmptyObject, 17957 isReadableStream, 17958 isRequest, 17959 isResponse, 17960 isHeaders, 17961 isUndefined, 17962 isDate: isDate$1, 17963 isFile: isFile$1, 17964 isReactNativeBlob, 17965 isReactNative, 17966 isBlob, 17967 isRegExp, 17968 isFunction: isFunction$3, 17969 isStream, 17970 isURLSearchParams, 17971 isTypedArray: isTypedArray$1, 17972 isFileList, 17973 forEach, 17974 merge: merge$2, 17975 extend, 17976 trim, 17977 stripBOM, 17978 inherits, 17979 toFlatObject, 17980 kindOf, 17981 kindOfTest, 17982 endsWith, 17983 toArray, 17984 forEachEntry, 17985 matchAll, 17986 isHTMLForm, 17987 hasOwnProperty: hasOwnProperty$b, 17988 hasOwnProp: hasOwnProperty$b, 17989 // an alias to avoid ESLint no-prototype-builtins detection 17990 reduceDescriptors, 17991 freezeMethods, 17992 toObjectSet, 17993 toCamelCase, 17994 noop: noop$1, 17995 toFiniteNumber, 17996 findKey: findKey$1, 17997 global: _global, 17998 isContextDefined, 17999 isSpecCompliantForm, 18000 toJSONObject, 18001 isAsyncFn, 18002 isThenable, 18003 setImmediate: _setImmediate, 18004 asap, 18005 isIterable 18006}; 18007const ignoreDuplicateOf = utils$1.toObjectSet([ 18008 "age", 18009 "authorization", 18010 "content-length", 18011 "content-type", 18012 "etag", 18013 "expires", 18014 "from", 18015 "host", 18016 "if-modified-since", 18017 "if-unmodified-since", 18018 "last-modified", 18019 "location", 18020 "max-forwards", 18021 "proxy-authorization", 18022 "referer", 18023 "retry-after", 18024 "user-agent" 18025]); 18026const parseHeaders = (rawHeaders) => { 18027 const parsed = {}; 18028 let key; 18029 let val; 18030 let i; 18031 rawHeaders && rawHeaders.split("\n").forEach(function parser(line) { 18032 i = line.indexOf(":"); 18033 key = line.substring(0, i).trim().toLowerCase(); 18034 val = line.substring(i + 1).trim(); 18035 if (!key || parsed[key] && ignoreDuplicateOf[key]) { 18036 return; 18037 } 18038 if (key === "set-cookie") { 18039 if (parsed[key]) { 18040 parsed[key].push(val); 18041 } else { 18042 parsed[key] = [val]; 18043 } 18044 } else { 18045 parsed[key] = parsed[key] ? parsed[key] + ", " + val : val; 18046 } 18047 }); 18048 return parsed; 18049}; 18050function trimSPorHTAB(str) { 18051 let start = 0; 18052 let end = str.length; 18053 while (start < end) { 18054 const code = str.charCodeAt(start); 18055 if (code !== 9 && code !== 32) { 18056 break; 18057 } 18058 start += 1; 18059 } 18060 while (end > start) { 18061 const code = str.charCodeAt(end - 1); 18062 if (code !== 9 && code !== 32) { 18063 break; 18064 } 18065 end -= 1; 18066 } 18067 return start === 0 && end === str.length ? str : str.slice(start, end); 18068} 18069const INVALID_UNICODE_HEADER_VALUE_CHARS = new RegExp("[\\u0000-\\u
180690008\\u000a-\\u001f\\u007f]+", "g"); 18070const INVALID_BYTE_STRING_HEADER_VALUE_CHARS = new RegExp("[^\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+", "g"); 18071function sanitizeValue(value, invalidChars) { 18072 if (utils$1.isArray(value)) { 18073 return value.map((item) => sanitizeValue(item, invalidChars)); 18074 } 18075 return trimSPorHTAB(String(value).replace(invalidChars, "")); 18076} 18077const sanitizeHeaderValue = (value) => sanitizeValue(value, INVALID_UNICODE_HEADER_VALUE_CHARS); 18078const sanitizeByteStringHeaderValue = (value) => sanitizeValue(value, INVALID_BYTE_STRING_HEADER_VALUE_CHARS); 18079function toByteStringHeaderObject(headers) { 18080 const byteStringHeaders = /* @__PURE__ */ Object.create(null); 18081 utils$1.forEach(headers.toJSON(), (value, header) => { 18082 byteStringHeaders[header] = sanitizeByteStringHeaderValue(value); 18083 }); 18084 return byteStringHeaders; 18085} 18086const $internals = Symbol("internals"); 18087function normalizeHeader(header) { 18088 return header && String(header).trim().toLowerCase(); 18089} 18090function normalizeValue(value) { 18091 if (value === false || value == null) { 18092 return value; 18093 } 18094 return utils$1.isArray(value) ? value.map(normalizeValue) : sanitizeHeaderValue(String(value)); 18095} 18096function parseTokens(str) { 18097 const tokens = /* @__PURE__ */ Object.create(null); 18098 const tokensRE = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g; 18099 let match2; 18100 while (match2 = tokensRE.exec(str)) { 18101 tokens[match2[1]] = match2[2]; 18102 } 18103 return tokens; 18104} 18105const isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim()); 18106function matchHeaderValue(context, value, header, filter2, isHeaderNameFilter) { 18107 if (utils$1.isFunction(filter2)) { 18108 return filter2.call(this, value, header); 18109 } 18110 if (isHeaderNameFilter) { 18111 value = header; 18112 } 18113 if (!utils$1.isString(value)) return; 18114 if (utils$1.isString(filter2)) { 18115 return value.indexOf(filter2) !== -1; 18116 } 18117 if (utils$1.isRegExp(filter2)) { 18118 return filter2.test(value); 18119 } 18120} 18121function formatHeader(header) { 18122 return header.trim().toLowerCase().replace(/([a-z\d])(\w*)/g, (w2, char, str) => { 18123 return char.toUpperCase() + str; 18124 }); 18125} 18126function buildAccessors(obj, header) { 18127 const accessorName = utils$1.toCamelCase(" " + header); 18128 ["get", "set", "has"].forEach((methodName) => { 18129 Object.defineProperty(obj, methodName + accessorName, { 18130 // Null-proto descriptor so a polluted Object.prototype.get cannot turn 18131 // this data descriptor into an accessor descriptor on the way in. 18132 __proto__: null, 18133 value: function(arg1, arg2, arg3) { 18134 return this[methodName].call(this, header, arg1, arg2, arg3); 18135 }, 18136 configurable: true 18137 }); 18138 }); 18139} 18140let AxiosHeaders$1 = class AxiosHeaders { 18141 constructor(headers) { 18142 headers && this.set(headers); 18143 } 18144 set(header, valueOrRewrite, rewrite) { 18145 const self2 = this; 18146 function setHeader(_value, _header, _rewrite) { 18147 const lHeader = normalizeHeader(_header); 18148 if (!lHeader) { 18149 throw new Error("header name must be a non-empty string"); 18150 } 18151 const key = utils$1.findKey(self2, lHeader); 18152 if (!key || self2[key] === void 0 || _rewrite === true || _rewrite === void 0 && self2[key] !== false) { 18153 self2[key || _header] = normalizeValue(_value); 18154 } 18155 } 18156 const setHeaders = (headers, _rewrite) => utils$1.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite)); 18157 if (utils$1.isPlainObject(header) || header instanceof this.constructor) { 18158 setHeaders(header, valueOrRewrite); 18159 } else if (utils$1.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) { 18160 setHeaders(parseHeaders(header), valueOrRewrite); 18161 } else if (utils$1.isObject(header) && utils$1.isIterable(header)) { 18162 let obj = {}, dest, key; 18163 for (const entry of header) { 18164 if (!utils$1.isArray(entry)) { 18165 throw TypeError("Object iterator must return a key-value pair"); 18166 } 18167 obj[key = entry[0]] = (dest = obj[key]) ? utils$1.isArray(dest) ? [...dest, entry[1]] : [dest, entry[1]] : entry[1]; 18168 } 18169 setHeaders(obj, valueOrRewrite); 18170 } else { 18171 header != null && setHeader(valueOrRewrite, header, rewrite); 18172 } 18173 return this; 18174 } 18175 get(header, parser) { 18176 header = normalizeHeader(header); 18177 if (header) {
vendor: 16,026 bytes, lines 18178-18687
18178 const key = utils$1.findKey(this, header); 18179 if (key) { 18180 const value = this[key]; 18181 if (!parser) { 18182 return value; 18183 } 18184 if (parser === true) { 18185 return parseTokens(value); 18186 } 18187 if (utils$1.isFunction(parser)) { 18188 return parser.call(this, value, key); 18189 } 18190 if (utils$1.isRegExp(parser)) { 18191 return parser.exec(value); 18192 } 18193 throw new TypeError("parser must be boolean|regexp|function"); 18194 } 18195 } 18196 } 18197 has(header, matcher2) { 18198 header = normalizeHeader(header); 18199 if (header) { 18200 const key = utils$1.findKey(this, header); 18201 return !!(key && this[key] !== void 0 && (!matcher2 || matchHeaderValue(this, this[key], key, matcher2))); 18202 } 18203 return false; 18204 } 18205 delete(header, matcher2) { 18206 const self2 = this; 18207 let deleted = false; 18208 function deleteHeader(_header) { 18209 _header = normalizeHeader(_header); 18210 if (_header) { 18211 const key = utils$1.findKey(self2, _header); 18212 if (key && (!matcher2 || matchHeaderValue(self2, self2[key], key, matcher2))) { 18213 delete self2[key]; 18214 deleted = true; 18215 } 18216 } 18217 } 18218 if (utils$1.isArray(header)) { 18219 header.forEach(deleteHeader); 18220 } else { 18221 deleteHeader(header); 18222 } 18223 return deleted; 18224 } 18225 clear(matcher2) { 18226 const keys2 = Object.keys(this); 18227 let i = keys2.length; 18228 let deleted = false; 18229 while (i--) { 18230 const key = keys2[i]; 18231 if (!matcher2 || matchHeaderValue(this, this[key], key, matcher2, true)) { 18232 delete this[key]; 18233 deleted = true; 18234 } 18235 } 18236 return deleted; 18237 } 18238 normalize(format2) { 18239 const self2 = this; 18240 const headers = {}; 18241 utils$1.forEach(this, (value, header) => { 18242 const key = utils$1.findKey(headers, header); 18243 if (key) { 18244 self2[key] = normalizeValue(value); 18245 delete self2[header]; 18246 return; 18247 } 18248 const normalized = format2 ? formatHeader(header) : String(header).trim(); 18249 if (normalized !== header) { 18250 delete self2[header]; 18251 } 18252 self2[normalized] = normalizeValue(value); 18253 headers[normalized] = true; 18254 }); 18255 return this; 18256 } 18257 concat(...targets) { 18258 return this.constructor.concat(this, ...targets); 18259 } 18260 toJSON(asStrings) { 18261 const obj = /* @__PURE__ */ Object.create(null); 18262 utils$1.forEach(this, (value, header) => { 18263 value != null && value !== false && (obj[header] = asStrings && utils$1.isArray(value) ? value.join(", ") : value); 18264 }); 18265 return obj; 18266 } 18267 [Symbol.iterator]() { 18268 return Object.entries(this.toJSON())[Symbol.iterator](); 18269 } 18270 toString() { 18271 return Object.entries(this.toJSON()).map(([header, value]) => header + ": " + value).join("\n"); 18272 } 18273 getSetCookie() { 18274 return this.get("set-cookie") || []; 18275 } 18276 get [Symbol.toStringTag]() { 18277 return "AxiosHeaders"; 18278 } 18279 static from(thing) { 18280 return thing instanceof this ? thing : new this(thing); 18281 } 18282 static concat(first, ...targets) { 18283 const computed2 = new this(first); 18284 targets.forEach((target) => computed2.set(target)); 18285 return computed2; 18286 } 18287 static accessor(header) { 18288 const internals = this[$internals] = this[$internals] = { 18289 accessors: {} 18290 }; 18291 const accessors = internals.accessors; 18292 const prototype2 = this.prototype; 18293 function defineAccessor(_header) { 18294 const lHeader = normalizeHeader(_header); 18295 if (!accessors[lHeader]) { 18296 buildAccessors(prototype2, _header); 18297 accessors[lHeader] = true; 18298 } 18299 } 18300 utils$1.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header); 18301 return this; 18302 } 18303}; 18304AxiosHeaders$1.accessor([ 18305 "Content-Type", 18306 "Content-Length", 18307 "Accept", 18308 "Accept-Encoding", 18309 "User-Agent", 18310 "Authorization" 18311]); 18312utils$1.reduceDescriptors(AxiosHeaders$1.prototype, ({ value }, key) => { 18313 let mapped = key[0].toUpperCase() + key.slice(1); 18314 return { 18315 get: () => value, 18316 set(headerValue) { 18317 this[mapped] = headerValue; 18318 } 18319 }; 18320}); 18321utils$1.freezeMethods(AxiosHeaders$1); 18322const REDACTED = "[REDACTED ****]"; 18323function hasOwnOrPrototypeToJSON(source) { 18324 if (utils$1.hasOwnProp(source, "toJSON")) { 18325 return true; 18326 } 18327 let prototype2 = Object.getPrototypeOf(source); 18328 while (prototype2 && prototype2 !== Object.prototype) { 18329 if (utils$1.hasOwnProp(prototype2, "toJSON")) { 18330 return true; 18331 } 18332 prototype2 = Object.getPrototypeOf(prototype2); 18333 } 18334 return false; 18335} 18336function redactConfig(config, redactKeys) { 18337 const lowerKeys = new Set(redactKeys.map((k3) => String(k3).toLowerCase())); 18338 const seen2 = []; 18339 const visit = (source) => { 18340 if (source === null || typeof source !== "object") return source; 18341 if (utils$1.isBuffer(source)) return source; 18342 if (seen2.indexOf(source) !== -1) return void 0; 18343 if (source instanceof AxiosHeaders$1) { 18344 source = source.toJSON(); 18345 } 18346 seen2.push(source); 18347 let result; 18348 if (utils$1.isArray(source)) { 18349 result = []; 18350 source.forEach((v2, i) => { 18351 const reducedValue = visit(v2); 18352 if (!utils$1.isUndefined(reducedValue)) { 18353 result[i] = reducedValue; 18354 } 18355 }); 18356 } else { 18357 if (!utils$1.isPlainObject(source) && hasOwnOrPrototypeToJSON(source)) { 18358 seen2.pop(); 18359 return source; 18360 } 18361 result = /* @__PURE__ */ Object.create(null); 18362 for (const [key, value] of Object.entries(source)) { 18363 const reducedValue = lowerKeys.has(key.toLowerCase()) ? REDACTED : visit(value); 18364 if (!utils$1.isUndefined(reducedValue)) { 18365 result[key] = reducedValue; 18366 } 18367 } 18368 } 18369 seen2.pop(); 18370 return result; 18371 }; 18372 return visit(config); 18373} 18374let AxiosError$1 = class AxiosError extends Error { 18375 static from(error, code, config, request, response, customProps) { 18376 const axiosError = new AxiosError(error.message, code || error.code, config, request, response); 18377 axiosError.cause = error; 18378 axiosError.name = error.name; 18379 if (error.status != null && axiosError.status == null) { 18380 axiosError.status = error.status; 18381 } 18382 customProps && Object.assign(axiosError, customProps); 18383 return axiosError; 18384 } 18385 /** 18386 * Create an Error with the specified message, config, error code, request and response. 18387 * 18388 * @param {string} message The error message. 18389 * @param {string} [code] The error code (for example, 'ECONNABORTED'). 18390 * @param {Object} [config] The config. 18391 * @param {Object} [request] The request. 18392 * @param {Object} [response] The response. 18393 * 18394 * @returns {Error} The created error. 18395 */ 18396 constructor(message2, code, config, request, response) { 18397 super(message2); 18398 Object.defineProperty(this, "message", { 18399 // Null-proto descriptor so a polluted Object.prototype.get cannot turn 18400 // this data descriptor into an accessor descriptor on the way in. 18401 __proto__: null, 18402 value: message2, 18403 enumerable: true, 18404 writable: true, 18405 configurable: true 18406 }); 18407 this.name = "AxiosError"; 18408 this.isAxiosError = true; 18409 code && (this.code = code); 18410 config && (this.config = config); 18411 request && (this.request = request); 18412 if (response) { 18413 this.response = response; 18414 this.status = response.status; 18415 } 18416 } 18417 toJSON() { 18418 const config = this.config; 18419 const redactKeys = config && utils$1.hasOwnProp(config, "redact") ? config.redact : void 0; 18420 const serializedConfig = utils$1.isArray(redactKeys) && redactKeys.length > 0 ? redactConfig(config, redactKeys) : utils$1.toJSONObject(config); 18421 return { 18422 // Standard 18423 message: this.message, 18424 name: this.name, 18425 // Microsoft 18426 description: this.description, 18427 number: this.number, 18428 // Mozilla 18429 fileName: this.fileName, 18430 lineNumber: this.lineNumber, 18431 columnNumber: this.columnNumber, 18432 stack: this.stack, 18433 // Axios 18434 config: serializedConfig, 18435 code: this.code, 18436 status: this.status 18437 }; 18438 } 18439}; 18440AxiosError$1.ERR_BAD_OPTION_VALUE = "ERR_BAD_OPTION_VALUE"; 18441AxiosError$1.ERR_BAD_OPTION = "ERR_BAD_OPTION"; 18442AxiosError$1.ECONNABORTED = "ECONNABORTED"; 18443AxiosError$1.ETIMEDOUT = "ETIMEDOUT"; 18444AxiosError$1.ECONNREFUSED = "ECONNREFUSED"; 18445AxiosError$1.ERR_NETWORK = "ERR_NETWORK"; 18446AxiosError$1.ERR_FR_TOO_MANY_REDIRECTS = "ERR_FR_TOO_MANY_REDIRECTS"; 18447AxiosError$1.ERR_DEPRECATED = "ERR_DEPRECATED"; 18448AxiosError$1.ERR_BAD_RESPONSE = "ERR_BAD_RESPONSE"; 18449AxiosError$1.ERR_BAD_REQUEST = "ERR_BAD_REQUEST"; 18450AxiosError$1.ERR_CANCELED = "ERR_CANCELED"; 18451AxiosError$1.ERR_NOT_SUPPORT = "ERR_NOT_SUPPORT"; 18452AxiosError$1.ERR_INVALID_URL = "ERR_INVALID_URL"; 18453AxiosError$1.ERR_FORM_DATA_DEPTH_EXCEEDED = "ERR_FORM_DATA_DEPTH_EXCEEDED"; 18454const httpAdapter = null; 18455function isVisitable(thing) { 18456 return utils$1.isPlainObject(thing) || utils$1.isArray(thing); 18457} 18458function removeBrackets(key) { 18459 return utils$1.endsWith(key, "[]") ? key.slice(0, -2) : key; 18460} 18461function renderKey(path, key, dots) { 18462 if (!path) return key; 18463 return path.concat(key).map(function each(token, i) { 18464 token = removeBrackets(token); 18465 return !dots && i ? "[" + token + "]" : token; 18466 }).join(dots ? "." : ""); 18467} 18468function isFlatArray(arr) { 18469 return utils$1.isArray(arr) && !arr.some(isVisitable); 18470} 18471const predicates = utils$1.toFlatObject(utils$1, {}, null, function filter(prop) { 18472 return /^is[A-Z]/.test(prop); 18473}); 18474function toFormData$1(obj, formData, options) { 18475 if (!utils$1.isObject(obj)) { 18476 throw new TypeError("target must be an object"); 18477 } 18478 formData = formData || new FormData(); 18479 options = utils$1.toFlatObject( 18480 options, 18481 { 18482 metaTokens: true, 18483 dots: false, 18484 indexes: false 18485 }, 18486 false, 18487 function defined(option, source) { 18488 return !utils$1.isUndefined(source[option]); 18489 } 18490 ); 18491 const metaTokens = options.metaTokens; 18492 const visitor = options.visitor || defaultVisitor; 18493 const dots = options.dots; 18494 const indexes = options.indexes; 18495 const _Blob = options.Blob || typeof Blob !== "undefined" && Blob; 18496 const maxDepth = options.maxDepth === void 0 ? 100 : options.maxDepth; 18497 const useBlob = _Blob && utils$1.isSpecCompliantForm(formData); 18498 if (!utils$1.isFunction(visitor)) { 18499 throw new TypeError("visitor must be a function"); 18500 } 18501 function convertValue(value) { 18502 if (value === null) return ""; 18503 if (utils$1.isDate(value)) { 18504 return value.toISOString(); 18505 } 18506 if (utils$1.isBoolean(value)) { 18507 return value.toString(); 18508 } 18509 if (!useBlob && utils$1.isBlob(value)) { 18510 throw new AxiosError$1("Blob is not supported. Use a Buffer instead."); 18511 } 18512 if (utils$1.isArrayBuffer(value) || utils$1.isTypedArray(value)) { 18513 return useBlob && typeof Blob === "function" ? new Blob([value]) : Buffer.from(value); 18514 } 18515 return value; 18516 } 18517 function defaultVisitor(value, key, path) { 18518 let arr = value; 18519 if (utils$1.isReactNative(formData) && utils$1.isReactNativeBlob(value)) { 18520 formData.append(renderKey(path, key, dots), convertValue(value)); 18521 return false; 18522 } 18523 if (value && !path && typeof value === "object") { 18524 if (utils$1.endsWith(key, "{}")) { 18525 key = metaTokens ? key : key.slice(0, -2); 18526 value = JSON.stringify(value); 18527 } else if (utils$1.isArray(value) && isFlatArray(value) || (utils$1.isFileList(value) || utils$1.endsWith(key, "[]")) && (arr = utils$1.toArray(value))) { 18528 key = removeBrackets(key); 18529 arr.forEach(function each(el, index2) { 18530 !(utils$1.isUndefined(el) || el === null) && formData.append( 18531 // eslint-disable-next-line no-nested-ternary 18532 indexes === true ? renderKey([key], index2, dots) : indexes === null ? key : key + "[]", 18533 convertValue(el) 18534 ); 18535 }); 18536 return false; 18537 } 18538 } 18539 if (isVisitable(value)) { 18540 return true; 18541 } 18542 formData.append(renderKey(path, key, dots), convertValue(value)); 18543 return false; 18544 } 18545 const stack2 = []; 18546 const exposedHelpers = Object.assign(predicates, { 18547 defaultVisitor, 18548 convertValue, 18549 isVisitable 18550 }); 18551 function build(value, path, depth = 0) { 18552 if (utils$1.isUndefined(value)) return; 18553 if (depth > maxDepth) { 18554 throw new AxiosError$1( 18555 "Object is too deeply nested (" + depth + " levels). Max depth: " + maxDepth, 18556 AxiosError$1.ERR_FORM_DATA_DEPTH_EXCEEDED 18557 ); 18558 } 18559 if (stack2.indexOf(value) !== -1) { 18560 throw Error("Circular reference detected in " + path.join(".")); 18561 } 18562 stack2.push(value); 18563 utils$1.forEach(value, function each(el, key) { 18564 const result = !(utils$1.isUndefined(el) || el === null) && visitor.call(formData, el, utils$1.isString(key) ? key.trim() : key, path, exposedHelpers); 18565 if (result === true) { 18566 build(el, path ? path.concat(key) : [key], depth + 1); 18567 } 18568 }); 18569 stack2.pop(); 18570 } 18571 if (!utils$1.isObject(obj)) { 18572 throw new TypeError("data must be an object"); 18573 } 18574 build(obj); 18575 return formData; 18576} 18577function encode$1(str) { 18578 const charMap = { 18579 "!": "%21", 18580 "'": "%27", 18581 "(": "%28", 18582 ")": "%29", 18583 "~": "%7E", 18584 "%20": "+" 18585 }; 18586 return encodeURIComponent(str).replace(/[!'()~]|%20/g, function replacer2(match2) { 18587 return charMap[match2]; 18588 }); 18589} 18590function AxiosURLSearchParams(params, options) { 18591 this._pairs = []; 18592 params && toFormData$1(params, this, options); 18593} 18594const prototype = AxiosURLSearchParams.prototype; 18595prototype.append = function append(name, value) { 18596 this._pairs.push([name, value]); 18597}; 18598prototype.toString = function toString(encoder) { 18599 const _encode = encoder ? function(value) { 18600 return encoder.call(this, value, encode$1); 18601 } : encode$1; 18602 return this._pairs.map(function each(pair) { 18603 return _encode(pair[0]) + "=" + _encode(pair[1]); 18604 }, "").join("&"); 18605}; 18606function encode(val) { 18607 return encodeURIComponent(val).replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+"); 18608} 18609function buildURL(url, params, options) { 18610 if (!params) { 18611 return url; 18612 } 18613 const _encode = options && options.encode || encode; 18614 const _options = utils$1.isFunction(options) ? { 18615 serialize: options 18616 } : options; 18617 const serializeFn = _options && _options.serialize; 18618 let serializedParams; 18619 if (serializeFn) { 18620 serializedParams = serializeFn(params, _options); 18621 } else { 18622 serializedParams = utils$1.isURLSearchParams(params) ? params.toString() : new AxiosURLSearchParams(params, _options).toString(_encode); 18623 } 18624 if (serializedParams) { 18625 const hashmarkIndex = url.indexOf("#"); 18626 if (hashmarkIndex !== -1) { 18627 url = url.slice(0, hashmarkIndex); 18628 } 18629 url += (url.indexOf("?") === -1 ? "?" : "&") + serializedParams; 18630 } 18631 return url; 18632} 18633class InterceptorManager { 18634 constructor() { 18635 this.handlers = []; 18636 } 18637 /** 18638 * Add a new interceptor to the stack 18639 * 18640 * @param {Function} fulfilled The function to handle `then` for a `Promise` 18641 * @param {Function} rejected The function to handle `reject` for a `Promise` 18642 * @param {Object} options The options for the interceptor, synchronous and runWhen 18643 * 18644 * @return {Number} An ID used to remove interceptor later 18645 */ 18646 use(fulfilled, rejected, options) { 18647 this.handlers.push({ 18648 fulfilled, 18649 rejected, 18650 synchronous: options ? options.synchronous : false, 18651 runWhen: options ? options.runWhen : null 18652 }); 18653 return this.handlers.length - 1; 18654 } 18655 /** 18656 * Remove an interceptor from the stack 18657 * 18658 * @param {Number} id The ID that was returned by `use` 18659 * 18660 * @returns {void} 18661 */ 18662 eject(id) { 18663 if (this.handlers[id]) { 18664 this.handlers[id] = null; 18665 } 18666 } 18667 /** 18668 * Clear all interceptors from the stack 18669 * 18670 * @returns {void} 18671 */ 18672 clear() { 18673 if (this.handlers) { 18674 this.handlers = []; 18675 } 18676 } 18677 /** 18678 * Iterate over all the registered interceptors 18679 * 18680 * This method is particularly useful for skipping over any 18681 * interceptors that may have become `null` calling `eject`. 18682 * 18683 * @param {Function} fn The function to call for each interceptor 18684 * 18685 * @returns {void} 18686 */ 18687 forEach(fn) {
18688 utils$1.forEach(this.handlers, function forEachHandler(h2) { 18689 if (h2 !== null) { 18690 fn(h2); 18691 } 18692 }); 18693 } 18694} 18695const transitionalDefaults = { 18696 silentJSONParsing: true, 18697 forcedJSONParsing: true, 18698 clarifyTimeoutError: false, 18699 legacyInterceptorReqResOrdering: true 18700}; 18701const URLSearchParams$1 = typeof URLSearchParams !== "undefined" ? URLSearchParams : AxiosURLSearchParams; 18702const FormData$1 = typeof FormData !== "undefined" ? FormData : null; 18703const Blob$1 = typeof Blob !== "undefined" ? Blob : null; 18704const platform$1 = { 18705 isBrowser: true, 18706 classes: { 18707 URLSearchParams: URLSearchParams$1, 18708 FormData: FormData$1, 18709 Blob: Blob$1 18710 }, 18711 protocols: ["http", "https", "file", "blob", "url", "data"] 18712}; 18713const hasBrowserEnv = typeof window !== "undefined" && typeof document !== "undefined"; 18714const _navigator = typeof navigator === "object" && navigator || void 0; 18715const hasStandardBrowserEnv = hasBrowserEnv && (!_navigator || ["ReactNative", "NativeScript", "NS"].indexOf(_navigator.product) < 0); 18716const hasStandardBrowserWebWorkerEnv = (() => { 18717 return typeof WorkerGlobalScope !== "undefined" && // eslint-disable-next-line no-undef 18718 self instanceof WorkerGlobalScope && typeof self.importScripts === "function"; 18719})(); 18720const origin = hasBrowserEnv && window.location.href || "http://localhost"; 18721const utils = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 18722 __proto__: null, 18723 hasBrowserEnv, 18724 hasStandardBrowserEnv, 18725 hasStandardBrowserWebWorkerEnv, 18726 navigator: _navigator, 18727 origin 18728}, Symbol.toStringTag, { value: "Module" })); 18729const platform = { 18730 ...utils, 18731 ...platform$1 18732}; 18733function toURLEncodedForm(data, options) { 18734 return toFormData$1(data, new platform.classes.URLSearchParams(), { 18735 visitor: function(value, key, path, helpers) { 18736 if (platform.isNode && utils$1.isBuffer(value)) { 18737 this.append(key, value.toString("base64")); 18738 return false; 18739 } 18740 return helpers.defaultVisitor.apply(this, arguments); 18741 }, 18742 ...options 18743 }); 18744} 18745function parsePropPath(name) { 18746 return utils$1.matchAll(/\w+|\[(\w*)]/g, name).map((match2) => { 18747 return match2[0] === "[]" ? "" : match2[1] || match2[0]; 18748 }); 18749} 18750function arrayToObject(arr) { 18751 const obj = {}; 18752 const keys2 = Object.keys(arr); 18753 let i; 18754 const len = keys2.length; 18755 let key; 18756 for (i = 0; i < len; i++) { 18757 key = keys2[i]; 18758 obj[key] = arr[key]; 18759 } 18760 return obj; 18761} 18762function formDataToJSON(formData) { 18763 function buildPath(path, value, target, index2) { 18764 let name = path[index2++]; 18765 if (name === "__proto__") return true; 18766 const isNumericKey = Number.isFinite(+name); 18767 const isLast = index2 >= path.length; 18768 name = !name && utils$1.isArray(target) ? target.length : name; 18769 if (isLast) { 18770 if (utils$1.hasOwnProp(target, name)) { 18771 target[name] = utils$1.isArray(target[name]) ? target[name].concat(value) : [target[name], value]; 18772 } else { 18773 target[name] = value; 18774 } 18775 return !isNumericKey; 18776 } 18777 if (!utils$1.hasOwnProp(target, name) || !utils$1.isObject(target[name])) { 18778 target[name] = []; 18779 } 18780 const result = buildPath(path, value, target[name], index2); 18781 if (result && utils$1.isArray(target[name])) { 18782 target[name] = arrayToObject(target[name]); 18783 } 18784 return !isNumericKey; 18785 } 18786 if (utils$1.isFormData(formData) && utils$1.isFunction(formData.entries)) { 18787 const obj = {}; 18788 utils$1.forEachEntry(formData, (name, value) => { 18789 buildPath(parsePropPath(name), value, obj, 0); 18790 }); 18791 return obj; 18792 } 18793 return null; 18794} 18795const own = (obj, key) => obj != null && utils$1.hasOwnProp(obj, key) ? obj[key] : void 0; 18796function stringifySafely(rawValue2, parser, encoder) { 18797 if (utils$1.isString(rawValue2)) { 18798 try { 18799 (parser || JSON.parse)(rawValue2); 18800 return utils$1.trim(rawValue2); 18801 } catch (e) { 18802 if (e.name !== "SyntaxError") { 18803 throw e; 18804 } 18805 } 18806 } 18807 return (encoder || JSON.stringify)(rawValue2); 18808} 18809const defaults = { 18810 transitional: transitionalDefaults, 18811 adapter: ["xhr", "http", "fetch"], 18812 transformRequest: [ 18813 function transformRequest(data, headers) { 18814 const contentType = headers.getContentType() || ""; 18815 const hasJSONContentType = contentType.indexOf("application/json") > -1; 18816 const isObjectPayload = utils$1.isObject(data); 18817 if (isObjectPayload && utils$1.isHTMLForm(data)) { 18818 data = new FormData(data); 18819 } 18820 const isFormData2 = utils$1.isFormData(data); 18821 if (isFormData2) { 18822 return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data; 18823 } 18824 if (utils$1.isArrayBuffer(data) || utils$1.isBuffer(data) || utils$1.isStream(data) || utils$1.isFile(data) || utils$1.isBlob(data) || utils$1.isReadableStream(data)) { 18825 return data; 18826 } 18827 if (utils$1.isArrayBufferView(data)) { 18828 return data.buffer; 18829 } 18830 if (utils$1.isURLSearchParams(data)) { 18831 headers.setContentType("application/x-www-form-urlencoded;charset=utf-8", false); 18832 return data.toString(); 18833 } 18834 let isFileList2; 18835 if (isObjectPayload) {
vendor: 5,632 bytes, lines 18836-19013
18836 const formSerializer = own(this, "formSerializer"); 18837 if (contentType.indexOf("application/x-www-form-urlencoded") > -1) { 18838 return toURLEncodedForm(data, formSerializer).toString(); 18839 } 18840 if ((isFileList2 = utils$1.isFileList(data)) || contentType.indexOf("multipart/form-data") > -1) { 18841 const env = own(this, "env"); 18842 const _FormData = env && env.FormData; 18843 return toFormData$1( 18844 isFileList2 ? { "files[]": data } : data, 18845 _FormData && new _FormData(), 18846 formSerializer 18847 ); 18848 } 18849 } 18850 if (isObjectPayload || hasJSONContentType) { 18851 headers.setContentType("application/json", false); 18852 return stringifySafely(data); 18853 } 18854 return data; 18855 } 18856 ], 18857 transformResponse: [ 18858 function transformResponse(data) { 18859 const transitional2 = own(this, "transitional") || defaults.transitional; 18860 const forcedJSONParsing = transitional2 && transitional2.forcedJSONParsing; 18861 const responseType = own(this, "responseType"); 18862 const JSONRequested = responseType === "json"; 18863 if (utils$1.isResponse(data) || utils$1.isReadableStream(data)) { 18864 return data; 18865 } 18866 if (data && utils$1.isString(data) && (forcedJSONParsing && !responseType || JSONRequested)) { 18867 const silentJSONParsing = transitional2 && transitional2.silentJSONParsing; 18868 const strictJSONParsing = !silentJSONParsing && JSONRequested; 18869 try { 18870 return JSON.parse(data, own(this, "parseReviver")); 18871 } catch (e) { 18872 if (strictJSONParsing) { 18873 if (e.name === "SyntaxError") { 18874 throw AxiosError$1.from(e, AxiosError$1.ERR_BAD_RESPONSE, this, null, own(this, "response")); 18875 } 18876 throw e; 18877 } 18878 } 18879 } 18880 return data; 18881 } 18882 ], 18883 /** 18884 * A timeout in milliseconds to abort a request. If set to 0 (default) a 18885 * timeout is not created. 18886 */ 18887 timeout: 0, 18888 xsrfCookieName: "XSRF-TOKEN", 18889 xsrfHeaderName: "X-XSRF-TOKEN", 18890 maxContentLength: -1, 18891 maxBodyLength: -1, 18892 env: { 18893 FormData: platform.classes.FormData, 18894 Blob: platform.classes.Blob 18895 }, 18896 validateStatus: function validateStatus(status) { 18897 return status >= 200 && status < 300; 18898 }, 18899 headers: { 18900 common: { 18901 Accept: "application/json, text/plain, */*", 18902 "Content-Type": void 0 18903 } 18904 } 18905}; 18906utils$1.forEach(["delete", "get", "head", "post", "put", "patch", "query"], (method) => { 18907 defaults.headers[method] = {}; 18908}); 18909function transformData(fns, response) { 18910 const config = this || defaults; 18911 const context = response || config; 18912 const headers = AxiosHeaders$1.from(context.headers); 18913 let data = context.data; 18914 utils$1.forEach(fns, function transform(fn) { 18915 data = fn.call(config, data, headers.normalize(), response ? response.status : void 0); 18916 }); 18917 headers.normalize(); 18918 return data; 18919} 18920function isCancel$1(value) { 18921 return !!(value && value.__CANCEL__); 18922} 18923let CanceledError$1 = class CanceledError extends AxiosError$1 { 18924 /** 18925 * A `CanceledError` is an object that is thrown when an operation is canceled. 18926 * 18927 * @param {string=} message The message. 18928 * @param {Object=} config The config. 18929 * @param {Object=} request The request. 18930 * 18931 * @returns {CanceledError} The created error. 18932 */ 18933 constructor(message2, config, request) { 18934 super(message2 == null ? "canceled" : message2, AxiosError$1.ERR_CANCELED, config, request); 18935 this.name = "CanceledError"; 18936 this.__CANCEL__ = true; 18937 } 18938}; 18939function settle(resolve2, reject, response) { 18940 const validateStatus2 = response.config.validateStatus; 18941 if (!response.status || !validateStatus2 || validateStatus2(response.status)) { 18942 resolve2(response); 18943 } else { 18944 reject(new AxiosError$1( 18945 "Request failed with status code " + response.status, 18946 response.status >= 400 && response.status < 500 ? AxiosError$1.ERR_BAD_REQUEST : AxiosError$1.ERR_BAD_RESPONSE, 18947 response.config, 18948 response.request, 18949 response 18950 )); 18951 } 18952} 18953function parseProtocol(url) { 18954 const match2 = /^([-+\w]{1,25}):(?:\/\/)?/.exec(url); 18955 return match2 && match2[1] || ""; 18956} 18957function speedometer(samplesCount, min) { 18958 samplesCount = samplesCount || 10; 18959 const bytes = new Array(samplesCount); 18960 const timestamps = new Array(samplesCount); 18961 let head = 0; 18962 let tail = 0; 18963 let firstSampleTS; 18964 min = min !== void 0 ? min : 1e3; 18965 return function push2(chunkLength) { 18966 const now2 = Date.now(); 18967 const startedAt = timestamps[tail]; 18968 if (!firstSampleTS) { 18969 firstSampleTS = now2; 18970 } 18971 bytes[head] = chunkLength; 18972 timestamps[head] = now2; 18973 let i = tail; 18974 let bytesCount = 0; 18975 while (i !== head) { 18976 bytesCount += bytes[i++]; 18977 i = i % samplesCount; 18978 } 18979 head = (head + 1) % samplesCount; 18980 if (head === tail) { 18981 tail = (tail + 1) % samplesCount; 18982 } 18983 if (now2 - firstSampleTS < min) { 18984 return; 18985 } 18986 const passed = startedAt && now2 - startedAt; 18987 return passed ? Math.round(bytesCount * 1e3 / passed) : void 0; 18988 }; 18989} 18990function throttle(fn, freq) { 18991 let timestamp = 0; 18992 let threshold = 1e3 / freq; 18993 let lastArgs; 18994 let timer; 18995 const invoke = (args, now2 = Date.now()) => { 18996 timestamp = now2; 18997 lastArgs = null; 18998 if (timer) { 18999 clearTimeout(timer); 19000 timer = null; 19001 } 19002 fn(...args); 19003 }; 19004 const throttled = (...args) => { 19005 const now2 = Date.now(); 19006 const passed = now2 - timestamp; 19007 if (passed >= threshold) { 19008 invoke(args, now2); 19009 } else { 19010 lastArgs = args; 19011 if (!timer) { 19012 timer = setTimeout(() => { 19013 timer = null;
19014 invoke(lastArgs); 19015 }, threshold - passed); 19016 } 19017 } 19018 }; 19019 const flush = () => lastArgs && invoke(lastArgs); 19020 return [throttled, flush]; 19021} 19022const progressEventReducer = (listener, isDownloadStream, freq = 3) => { 19023 let bytesNotified = 0; 19024 const _speedometer = speedometer(50, 250); 19025 return throttle((e) => { 19026 if (!e || typeof e.loaded !== "number") { 19027 return; 19028 } 19029 const rawLoaded = e.loaded; 19030 const total = e.lengthComputable ? e.total : void 0; 19031 const loaded = total != null ? Math.min(rawLoaded, total) : rawLoaded; 19032 const progressBytes = Math.max(0, loaded - bytesNotified); 19033 const rate = _speedometer(progressBytes); 19034 bytesNotified = Math.max(bytesNotified, loaded); 19035 const data = { 19036 loaded, 19037 total, 19038 progress: total ? loaded / total : void 0, 19039 bytes: progressBytes, 19040 rate: rate ? rate : void 0, 19041 estimated: rate && total ? (total - loaded) / rate : void 0, 19042 event: e, 19043 lengthComputable: total != null, 19044 [isDownloadStream ? "download" : "upload"]: true 19045 }; 19046 listener(data); 19047 }, freq); 19048}; 19049const progressEventDecorator = (total, throttled) => { 19050 const lengthComputable = total != null; 19051 return [ 19052 (loaded) => throttled[0]({ 19053 lengthComputable, 19054 total, 19055 loaded 19056 }), 19057 throttled[1] 19058 ]; 19059}; 19060const asyncDecorator = (fn) => (...args) => utils$1.asap(() => fn(...args)); 19061const isURLSameOrigin = platform.hasStandardBrowserEnv ? /* @__PURE__ */ ((origin2, isMSIE) => (url) => { 19062 url = new URL(url, platform.origin); 19063 return origin2.protocol === url.protocol && origin2.host === url.host && (isMSIE || origin2.port === url.port); 19064})( 19065 new URL(platform.origin), 19066 platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent) 19067) : () => true; 19068const cookies = platform.hasStandardBrowserEnv ? ( 19069 // Standard browser envs support document.cookie 19070 { 19071 write(name, value, expires, path, domain, secure, sameSite) { 19072 if (typeof document === "undefined") return; 19073 const cookie = [`${name}=${encodeURIComponent(value)}`]; 19074 if (utils$1.isNumber(expires)) { 19075 cookie.push(`expires=${new Date(expires).toUTCString()}`); 19076 } 19077 if (utils$1.isString(path)) { 19078 cookie.push(`path=${path}`); 19079 } 19080 if (utils$1.isString(domain)) { 19081 cookie.push(`domain=${domain}`); 19082 } 19083 if (secure === true) { 19084 cookie.push("secure"); 19085 } 19086 if (utils$1.isString(sameSite)) { 19087 cookie.push(`SameSite=${sameSite}`); 19088 } 19089 document.cookie = cookie.join("; "); 19090 }, 19091 read(name) { 19092 if (typeof document === "undefined") return null; 19093 const cookies2 = document.cookie.split(";"); 19094 for (let i = 0; i < cookies2.length; i++) { 19095 const cookie = cookies2[i].replace(/^\s+/, ""); 19096 const eq2 = cookie.indexOf("="); 19097 if (eq2 !== -1 && cookie.slice(0, eq2) === name) { 19098 return decodeURIComponent(cookie.slice(eq2 + 1)); 19099 } 19100 } 19101 return null; 19102 }, 19103 remove(name) { 19104 this.write(name, "", Date.now() - 864e5, "/"); 19105 } 19106 } 19107) : ( 19108 // Non-standard browser env (web workers, react-native) lack needed support. 19109 { 19110 write() { 19111 }, 19112 read() { 19113 return null; 19114 }, 19115 remove() { 19116 } 19117 } 19118); 19119function isAbsoluteURL(url) { 19120 if (typeof url !== "string") { 19121 return false; 19122 } 19123 return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url); 19124} 19125function combineURLs(baseURL2, relativeURL) { 19126 return relativeURL ? baseURL2.replace(/\/?\/$/, "") + "/" + relativeURL.replace(/^\/+/, "") : baseURL2; 19127} 19128function buildFullPath(baseURL2, requestedURL, allowAbsoluteUrls) { 19129 let isRelativeUrl = !isAbsoluteURL(requestedURL); 19130 if (baseURL2 && (isRelativeUrl || allowAbsoluteUrls === false)) { 19131 return combineURLs(baseURL2, requestedURL); 19132 } 19133 return requestedURL; 19134} 19135const headersToObject = (thing) => thing instanceof AxiosHeaders$1 ? { ...thing } : thing; 19136function mergeConfig$1(config1, config2) { 19137 config2 = config2 || {}; 19138 const config = /* @__PURE__ */ Object.create(null); 19139 Object.defineProperty(config, "hasOwnProperty", { 19140 // Null-proto descriptor so a polluted Object.prototype.get cannot turn 19141 // this data descriptor into an accessor descriptor on the way in. 19142 __proto__: null, 19143 value: Object.prototype.hasOwnProperty, 19144 enumerable: false, 19145 writable: true, 19146 configurable: true 19147 }); 19148 function getMergedValue(target, source, prop, caseless) { 19149 if (utils$1.isPlainObject(target) && utils$1.isPlainObject(source)) { 19150 return utils$1.merge.call({ caseless }, target, source); 19151 } else if (utils$1.isPlainObject(source)) { 19152 return utils$1.merge({}, source); 19153 } else if (utils$1.isArray(source)) { 19154 return source.slice(); 19155 } 19156 return source; 19157 } 19158 function mergeDeepProperties(a, b2, prop, caseless) { 19159 if (!utils$1.isUndefined(b2)) { 19160 return getMergedValue(a, b2, prop, caseless); 19161 } else if (!utils$1.isUndefined(a)) { 19162 return getMergedValue(void 0, a, prop, caseless); 19163 } 19164 } 19165 function valueFromConfig2(a, b2) { 19166 if (!utils$1.isUndefined(b2)) { 19167 return getMergedValue(void 0, b2); 19168 } 19169 } 19170 function defaultToConfig2(a, b2) { 19171 if (!utils$1.isUndefined(b2)) { 19172 return getMergedValue(void 0, b2); 19173 } else if (!utils$1.isUndefined(a)) { 19174 return getMergedValue(void 0, a); 19175 } 19176 } 19177 function mergeDirectKeys(a, b2, prop) { 19178 if (utils$1.hasOwnProp(config2, prop)) { 19179 return getMergedValue(a, b2); 19180 } else if (utils$1.hasOwnProp(config1, prop)) { 19181 return getMergedValue(void 0, a); 19182 } 19183 } 19184 const mergeMap = { 19185 url: valueFromConfig2, 19186 method: valueFromConfig2, 19187 data: valueFromConfig2, 19188 baseURL: defaultToConfig2, 19189 transformRequest: defaultToConfig2, 19190 transformResponse: defaultToConfig2, 19191 paramsSerializer: defaultToConfig2, 19192 timeout: defaultToConfig2, 19193 timeoutMessage: defaultToConfig2, 19194 withCredentials: defaultToConfig2, 19195 withXSRFToken: defaultToConfig2, 19196 adapter: defaultToConfig2, 19197 responseType: defaultToConfig2, 19198 xsrfCookieName: defaultToConfig2, 19199 xsrfHeaderName: defaultToConfig2, 19200 onUploadProgress: defaultToConfig2, 19201 onDownloadProgress: defaultToConfig2, 19202 decompress: defaultToConfig2, 19203 maxContentLength: defaultToConfig2,
vendor: 6,645 bytes, lines 19204-19382
19204 maxBodyLength: defaultToConfig2, 19205 beforeRedirect: defaultToConfig2, 19206 transport: defaultToConfig2, 19207 httpAgent: defaultToConfig2, 19208 httpsAgent: defaultToConfig2, 19209 cancelToken: defaultToConfig2, 19210 socketPath: defaultToConfig2, 19211 allowedSocketPaths: defaultToConfig2, 19212 responseEncoding: defaultToConfig2, 19213 validateStatus: mergeDirectKeys, 19214 headers: (a, b2, prop) => mergeDeepProperties(headersToObject(a), headersToObject(b2), prop, true) 19215 }; 19216 utils$1.forEach(Object.keys({ ...config1, ...config2 }), function computeConfigValue(prop) { 19217 if (prop === "__proto__" || prop === "constructor" || prop === "prototype") return; 19218 const merge2 = utils$1.hasOwnProp(mergeMap, prop) ? mergeMap[prop] : mergeDeepProperties; 19219 const a = utils$1.hasOwnProp(config1, prop) ? config1[prop] : void 0; 19220 const b2 = utils$1.hasOwnProp(config2, prop) ? config2[prop] : void 0; 19221 const configValue = merge2(a, b2, prop); 19222 utils$1.isUndefined(configValue) && merge2 !== mergeDirectKeys || (config[prop] = configValue); 19223 }); 19224 return config; 19225} 19226const FORM_DATA_CONTENT_HEADERS = ["content-type", "content-length"]; 19227function setFormDataHeaders(headers, formHeaders, policy2) { 19228 if (policy2 !== "content-only") { 19229 headers.set(formHeaders); 19230 return; 19231 } 19232 Object.entries(formHeaders).forEach(([key, val]) => { 19233 if (FORM_DATA_CONTENT_HEADERS.includes(key.toLowerCase())) { 19234 headers.set(key, val); 19235 } 19236 }); 19237} 19238const encodeUTF8 = (str) => encodeURIComponent(str).replace( 19239 /%([0-9A-F]{2})/gi, 19240 (_, hex) => String.fromCharCode(parseInt(hex, 16)) 19241); 19242const resolveConfig = (config) => { 19243 const newConfig = mergeConfig$1({}, config); 19244 const own2 = (key) => utils$1.hasOwnProp(newConfig, key) ? newConfig[key] : void 0; 19245 const data = own2("data"); 19246 let withXSRFToken = own2("withXSRFToken"); 19247 const xsrfHeaderName = own2("xsrfHeaderName"); 19248 const xsrfCookieName = own2("xsrfCookieName"); 19249 let headers = own2("headers"); 19250 const auth = own2("auth"); 19251 const baseURL2 = own2("baseURL"); 19252 const allowAbsoluteUrls = own2("allowAbsoluteUrls"); 19253 const url = own2("url"); 19254 newConfig.headers = headers = AxiosHeaders$1.from(headers); 19255 newConfig.url = buildURL( 19256 buildFullPath(baseURL2, url, allowAbsoluteUrls), 19257 config.params, 19258 config.paramsSerializer 19259 ); 19260 if (auth) { 19261 headers.set( 19262 "Authorization", 19263 "Basic " + btoa((auth.username || "") + ":" + (auth.password ? encodeUTF8(auth.password) : "")) 19264 ); 19265 } 19266 if (utils$1.isFormData(data)) { 19267 if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) { 19268 headers.setContentType(void 0); 19269 } else if (utils$1.isFunction(data.getHeaders)) { 19270 setFormDataHeaders(headers, data.getHeaders(), own2("formDataHeaderPolicy")); 19271 } 19272 } 19273 if (platform.hasStandardBrowserEnv) { 19274 if (utils$1.isFunction(withXSRFToken)) { 19275 withXSRFToken = withXSRFToken(newConfig); 19276 } 19277 const shouldSendXSRF = withXSRFToken === true || withXSRFToken == null && isURLSameOrigin(newConfig.url); 19278 if (shouldSendXSRF) { 19279 const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName); 19280 if (xsrfValue) { 19281 headers.set(xsrfHeaderName, xsrfValue); 19282 } 19283 } 19284 } 19285 return newConfig; 19286}; 19287const isXHRAdapterSupported = typeof XMLHttpRequest !== "undefined"; 19288const xhrAdapter = isXHRAdapterSupported && function(config) { 19289 return new Promise(function dispatchXhrRequest(resolve2, reject) { 19290 const _config = resolveConfig(config); 19291 let requestData = _config.data; 19292 const requestHeaders = AxiosHeaders$1.from(_config.headers).normalize(); 19293 let { responseType, onUploadProgress, onDownloadProgress } = _config; 19294 let onCanceled; 19295 let uploadThrottled, downloadThrottled; 19296 let flushUpload, flushDownload; 19297 function done() { 19298 flushUpload && flushUpload(); 19299 flushDownload && flushDownload(); 19300 _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled); 19301 _config.signal && _config.signal.removeEventListener("abort", onCanceled); 19302 } 19303 let request = new XMLHttpRequest(); 19304 request.open(_config.method.toUpperCase(), _config.url, true); 19305 request.timeout = _config.timeout; 19306 function onloadend() { 19307 if (!request) { 19308 return; 19309 } 19310 const responseHeaders = AxiosHeaders$1.from( 19311 "getAllResponseHeaders" in request && request.getAllResponseHeaders() 19312 ); 19313 const responseData = !responseType || responseType === "text" || responseType === "json" ? request.responseText : request.response; 19314 const response = { 19315 data: responseData, 19316 status: request.status, 19317 statusText: request.statusText, 19318 headers: responseHeaders, 19319 config, 19320 request 19321 }; 19322 settle( 19323 function _resolve(value) { 19324 resolve2(value); 19325 done(); 19326 }, 19327 function _reject(err) { 19328 reject(err); 19329 done(); 19330 }, 19331 response 19332 ); 19333 request = null; 19334 } 19335 if ("onloadend" in request) { 19336 request.onloadend = onloadend; 19337 } else { 19338 request.onreadystatechange = function handleLoad() { 19339 if (!request || request.readyState !== 4) { 19340 return; 19341 } 19342 if (request.status === 0 && !(request.responseURL && request.responseURL.startsWith("file:"))) { 19343 return; 19344 } 19345 setTimeout(onloadend); 19346 }; 19347 } 19348 request.onabort = function handleAbort() { 19349 if (!request) { 19350 return; 19351 } 19352 reject(new AxiosError$1("Request aborted", AxiosError$1.ECONNABORTED, config, request)); 19353 done(); 19354 request = null; 19355 }; 19356 request.onerror = function handleError2(event) { 19357 const msg = event && event.message ? event.message : "Network Error"; 19358 const err = new AxiosError$1(msg, AxiosError$1.ERR_NETWORK, config, request); 19359 err.event = event || null; 19360 reject(err); 19361 done(); 19362 request = null; 19363 }; 19364 request.ontimeout = function handleTimeout() { 19365 let timeoutErrorMessage = _config.timeout ? "timeout of " + _config.timeout + "ms exceeded" : "timeout exceeded"; 19366 const transitional2 = _config.transitional || transitionalDefaults; 19367 if (_config.timeoutErrorMessage) { 19368 timeoutErrorMessage = _config.timeoutErrorMessage; 19369 } 19370 reject( 19371 new AxiosError$1( 19372 timeoutErrorMessage, 19373 transitional2.clarifyTimeoutError ? AxiosError$1.ETIMEDOUT : AxiosError$1.ECONNABORTED, 19374 config, 19375 request 19376 ) 19377 ); 19378 done(); 19379 request = null; 19380 }; 19381 requestData === void 0 && requestHeaders.setContentType(null); 19382 if ("setRequestHeader" in request) {
vendor: 6,949 bytes, lines 19383-19624
19383 utils$1.forEach(toByteStringHeaderObject(requestHeaders), function setRequestHeader(val, key) { 19384 request.setRequestHeader(key, val); 19385 }); 19386 } 19387 if (!utils$1.isUndefined(_config.withCredentials)) { 19388 request.withCredentials = !!_config.withCredentials; 19389 } 19390 if (responseType && responseType !== "json") { 19391 request.responseType = _config.responseType; 19392 } 19393 if (onDownloadProgress) { 19394 [downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true); 19395 request.addEventListener("progress", downloadThrottled); 19396 } 19397 if (onUploadProgress && request.upload) { 19398 [uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress); 19399 request.upload.addEventListener("progress", uploadThrottled); 19400 request.upload.addEventListener("loadend", flushUpload); 19401 } 19402 if (_config.cancelToken || _config.signal) { 19403 onCanceled = (cancel) => { 19404 if (!request) { 19405 return; 19406 } 19407 reject(!cancel || cancel.type ? new CanceledError$1(null, config, request) : cancel); 19408 request.abort(); 19409 done(); 19410 request = null; 19411 }; 19412 _config.cancelToken && _config.cancelToken.subscribe(onCanceled); 19413 if (_config.signal) { 19414 _config.signal.aborted ? onCanceled() : _config.signal.addEventListener("abort", onCanceled); 19415 } 19416 } 19417 const protocol = parseProtocol(_config.url); 19418 if (protocol && !platform.protocols.includes(protocol)) { 19419 reject( 19420 new AxiosError$1( 19421 "Unsupported protocol " + protocol + ":", 19422 AxiosError$1.ERR_BAD_REQUEST, 19423 config 19424 ) 19425 ); 19426 return; 19427 } 19428 request.send(requestData || null); 19429 }); 19430}; 19431const composeSignals = (signals, timeout) => { 19432 signals = signals ? signals.filter(Boolean) : []; 19433 if (!timeout && !signals.length) { 19434 return; 19435 } 19436 const controller = new AbortController(); 19437 let aborted = false; 19438 const onabort = function(reason) { 19439 if (!aborted) { 19440 aborted = true; 19441 unsubscribe(); 19442 const err = reason instanceof Error ? reason : this.reason; 19443 controller.abort( 19444 err instanceof AxiosError$1 ? err : new CanceledError$1(err instanceof Error ? err.message : err) 19445 ); 19446 } 19447 }; 19448 let timer = timeout && setTimeout(() => { 19449 timer = null; 19450 onabort(new AxiosError$1(`timeout of ${timeout}ms exceeded`, AxiosError$1.ETIMEDOUT)); 19451 }, timeout); 19452 const unsubscribe = () => { 19453 if (!signals) { 19454 return; 19455 } 19456 timer && clearTimeout(timer); 19457 timer = null; 19458 signals.forEach((signal2) => { 19459 signal2.unsubscribe ? signal2.unsubscribe(onabort) : signal2.removeEventListener("abort", onabort); 19460 }); 19461 signals = null; 19462 }; 19463 signals.forEach((signal2) => signal2.addEventListener("abort", onabort)); 19464 const { signal } = controller; 19465 signal.unsubscribe = () => utils$1.asap(unsubscribe); 19466 return signal; 19467}; 19468const streamChunk = function* (chunk, chunkSize) { 19469 let len = chunk.byteLength; 19470 if (len < chunkSize) { 19471 yield chunk; 19472 return; 19473 } 19474 let pos = 0; 19475 let end; 19476 while (pos < len) { 19477 end = pos + chunkSize; 19478 yield chunk.slice(pos, end); 19479 pos = end; 19480 } 19481}; 19482const readBytes = async function* (iterable, chunkSize) { 19483 for await (const chunk of readStream(iterable)) { 19484 yield* streamChunk(chunk, chunkSize); 19485 } 19486}; 19487const readStream = async function* (stream) { 19488 if (stream[Symbol.asyncIterator]) { 19489 yield* stream; 19490 return; 19491 } 19492 const reader = stream.getReader(); 19493 try { 19494 for (; ; ) { 19495 const { done, value } = await reader.read(); 19496 if (done) { 19497 break; 19498 } 19499 yield value; 19500 } 19501 } finally { 19502 await reader.cancel(); 19503 } 19504}; 19505const trackStream = (stream, chunkSize, onProgress, onFinish) => { 19506 const iterator2 = readBytes(stream, chunkSize); 19507 let bytes = 0; 19508 let done; 19509 let _onFinish = (e) => { 19510 if (!done) { 19511 done = true; 19512 onFinish && onFinish(e); 19513 } 19514 }; 19515 return new ReadableStream( 19516 { 19517 async pull(controller) { 19518 try { 19519 const { done: done2, value } = await iterator2.next(); 19520 if (done2) { 19521 _onFinish(); 19522 controller.close(); 19523 return; 19524 } 19525 let len = value.byteLength; 19526 if (onProgress) { 19527 let loadedBytes = bytes += len; 19528 onProgress(loadedBytes); 19529 } 19530 controller.enqueue(new Uint8Array(value)); 19531 } catch (err) { 19532 _onFinish(err); 19533 throw err; 19534 } 19535 }, 19536 cancel(reason) { 19537 _onFinish(reason); 19538 return iterator2.return(); 19539 } 19540 }, 19541 { 19542 highWaterMark: 2 19543 } 19544 ); 19545}; 19546function estimateDataURLDecodedBytes(url) { 19547 if (!url || typeof url !== "string") return 0; 19548 if (!url.startsWith("data:")) return 0; 19549 const comma = url.indexOf(","); 19550 if (comma < 0) return 0; 19551 const meta = url.slice(5, comma); 19552 const body = url.slice(comma + 1); 19553 const isBase64 = /;base64/i.test(meta); 19554 if (isBase64) { 19555 let effectiveLen = body.length; 19556 const len = body.length; 19557 for (let i = 0; i < len; i++) { 19558 if (body.charCodeAt(i) === 37 && i + 2 < len) { 19559 const a = body.charCodeAt(i + 1); 19560 const b2 = body.charCodeAt(i + 2); 19561 const isHex = (a >= 48 && a <= 57 || a >= 65 && a <= 70 || a >= 97 && a <= 102) && (b2 >= 48 && b2 <= 57 || b2 >= 65 && b2 <= 70 || b2 >= 97 && b2 <= 102); 19562 if (isHex) { 19563 effectiveLen -= 2; 19564 i += 2; 19565 } 19566 } 19567 } 19568 let pad = 0; 19569 let idx = len - 1; 19570 const tailIsPct3D = (j) => j >= 2 && body.charCodeAt(j - 2) === 37 && // '%' 19571 body.charCodeAt(j - 1) === 51 && // '3' 19572 (body.charCodeAt(j) === 68 || body.charCodeAt(j) === 100); 19573 if (idx >= 0) { 19574 if (body.charCodeAt(idx) === 61) { 19575 pad++; 19576 idx--; 19577 } else if (tailIsPct3D(idx)) { 19578 pad++; 19579 idx -= 3; 19580 } 19581 } 19582 if (pad === 1 && idx >= 0) { 19583 if (body.charCodeAt(idx) === 61) { 19584 pad++; 19585 } else if (tailIsPct3D(idx)) { 19586 pad++; 19587 } 19588 } 19589 const groups = Math.floor(effectiveLen / 4); 19590 const bytes2 = groups * 3 - (pad || 0); 19591 return bytes2 > 0 ? bytes2 : 0; 19592 } 19593 if (typeof Buffer !== "undefined" && typeof Buffer.byteLength === "function") { 19594 return Buffer.byteLength(body, "utf8"); 19595 } 19596 let bytes = 0; 19597 for (let i = 0, len = body.length; i < len; i++) { 19598 const c2 = body.charCodeAt(i); 19599 if (c2 < 128) { 19600 bytes += 1; 19601 } else if (c2 < 2048) { 19602 bytes += 2; 19603 } else if (c2 >= 55296 && c2 <= 56319 && i + 1 < len) { 19604 const next = body.charCodeAt(i + 1); 19605 if (next >= 56320 && next <= 57343) { 19606 bytes += 4; 19607 i++; 19608 } else { 19609 bytes += 3; 19610 } 19611 } else { 19612 bytes += 3; 19613 } 19614 } 19615 return bytes; 19616} 19617const VERSION$1 = "1.16.1"; 19618const DEFAULT_CHUNK_SIZE = 64 * 1024; 19619const { isFunction: isFunction$2 } = utils$1; 19620const test = (fn, ...args) => { 19621 try { 19622 return !!fn(...args); 19623 } catch (e) { 19624 return false;
19625 } 19626}; 19627const factory = (env) => { 19628 const globalObject = utils$1.global !== void 0 && utils$1.global !== null ? utils$1.global : globalThis; 19629 const { ReadableStream: ReadableStream2, TextEncoder } = globalObject; 19630 env = utils$1.merge.call( 19631 { 19632 skipUndefined: true 19633 }, 19634 { 19635 Request: globalObject.Request, 19636 Response: globalObject.Response 19637 }, 19638 env 19639 ); 19640 const { fetch: envFetch, Request, Response } = env; 19641 const isFetchSupported = envFetch ? isFunction$2(envFetch) : typeof fetch === "function"; 19642 const isRequestSupported = isFunction$2(Request); 19643 const isResponseSupported = isFunction$2(Response); 19644 if (!isFetchSupported) { 19645 return false; 19646 } 19647 const isReadableStreamSupported = isFetchSupported && isFunction$2(ReadableStream2); 19648 const encodeText = isFetchSupported && (typeof TextEncoder === "function" ? /* @__PURE__ */ ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) : async (str) => new Uint8Array(await new Request(str).arrayBuffer())); 19649 const supportsRequestStream = isRequestSupported && isReadableStreamSupported && test(() => { 19650 let duplexAccessed = false; 19651 const request = new Request(platform.origin, { 19652 body: new ReadableStream2(), 19653 method: "POST", 19654 get duplex() { 19655 duplexAccessed = true; 19656 return "half"; 19657 } 19658 }); 19659 const hasContentType = request.headers.has("Content-Type"); 19660 if (request.body != null) { 19661 request.body.cancel(); 19662 } 19663 return duplexAccessed && !hasContentType; 19664 }); 19665 const supportsResponseStream = isResponseSupported && isReadableStreamSupported && test(() => utils$1.isReadableStream(new Response("").body)); 19666 const resolvers = { 19667 stream: supportsResponseStream && ((res) => res.body) 19668 }; 19669 isFetchSupported && (() => { 19670 ["text", "arrayBuffer", "blob", "formData", "stream"].forEach((type) => { 19671 !resolvers[type] && (resolvers[type] = (res, config) => { 19672 let method = res && res[type]; 19673 if (method) { 19674 return method.call(res); 19675 } 19676 throw new AxiosError$1( 19677 `Response type '${type}' is not supported`, 19678 AxiosError$1.ERR_NOT_SUPPORT, 19679 config 19680 ); 19681 }); 19682 }); 19683 })(); 19684 const getBodyLength = async (body) => { 19685 if (body == null) { 19686 return 0; 19687 } 19688 if (utils$1.isBlob(body)) { 19689 return body.size; 19690 } 19691 if (utils$1.isSpecCompliantForm(body)) { 19692 const _request = new Request(platform.origin, { 19693 method: "POST", 19694 body 19695 }); 19696 return (await _request.arrayBuffer()).byteLength; 19697 } 19698 if (utils$1.isArrayBufferView(body) || utils$1.isArrayBuffer(body)) { 19699 return body.byteLength; 19700 } 19701 if (utils$1.isURLSearchParams(body)) { 19702 body = body + ""; 19703 } 19704 if (utils$1.isString(body)) { 19705 return (await encodeText(body)).byteLength; 19706 } 19707 }; 19708 const resolveBodyLength = async (headers, body) => { 19709 const length = utils$1.toFiniteNumber(headers.getContentLength()); 19710 return length == null ? getBodyLength(body) : length; 19711 }; 19712 return async (config) => { 19713 let { 19714 url, 19715 method, 19716 data, 19717 signal, 19718 cancelToken, 19719 timeout, 19720 onDownloadProgress, 19721 onUploadProgress, 19722 responseType, 19723 headers, 19724 withCredentials = "same-origin", 19725 fetchOptions, 19726 maxContentLength, 19727 maxBodyLength 19728 } = resolveConfig(config); 19729 const hasMaxContentLength = utils$1.isNumber(maxContentLength) && maxContentLength > -1; 19730 const hasMaxBodyLength = utils$1.isNumber(maxBodyLength) && maxBodyLength > -1; 19731 let _fetch = envFetch || fetch; 19732 responseType = responseType ? (responseType + "").toLowerCase() : "text"; 19733 let composedSignal = composeSignals( 19734 [signal, cancelToken && cancelToken.toAbortSignal()], 19735 timeout 19736 ); 19737 let request = null; 19738 const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => { 19739 composedSignal.unsubscribe(); 19740 }); 19741 let requestContentLength; 19742 try { 19743 if (hasMaxContentLength && typeof url === "string" && url.startsWith("data:")) { 19744 const estimated = estimateDataURLDecodedBytes(url); 19745 if (estimated > maxContentLength) { 19746 throw new AxiosError$1( 19747 "maxContentLength size of " + maxContentLength + " exceeded", 19748 AxiosError$1.ERR_BAD_RESPONSE, 19749 config, 19750 request 19751 ); 19752 } 19753 } 19754 if (hasMaxBodyLength && method !== "get" && method !== "head") { 19755 const outboundLength = await resolveBodyLength(headers, data); 19756 if (typeof outboundLength === "number" && isFinite(outboundLength) && outboundLength > maxBodyLength) { 19757 throw new AxiosError$1( 19758 "Request body larger than maxBodyLength limit", 19759 AxiosError$1.ERR_BAD_REQUEST, 19760 config, 19761 request 19762 ); 19763 } 19764 } 19765 if (onUploadProgress && supportsRequestStream && method !== "get" && method !== "head" && (requestContentLength = await resolveBodyLength(headers, data)) !== 0) {
19766 let _request = new Request(url, { 19767 method: "POST", 19768 body: data, 19769 duplex: "half" 19770 }); 19771 let contentTypeHeader; 19772 if (utils$1.isFormData(data) && (contentTypeHeader = _request.headers.get("content-type"))) { 19773 headers.setContentType(contentTypeHeader); 19774 } 19775 if (_request.body) { 19776 const [onProgress, flush] = progressEventDecorator( 19777 requestContentLength, 19778 progressEventReducer(asyncDecorator(onUploadProgress)) 19779 ); 19780 data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush); 19781 } 19782 } 19783 if (!utils$1.isString(withCredentials)) { 19784 withCredentials = withCredentials ? "include" : "omit"; 19785 } 19786 const isCredentialsSupported = isRequestSupported && "credentials" in Request.prototype; 19787 if (utils$1.isFormData(data)) { 19788 const contentType = headers.getContentType(); 19789 if (contentType && /^multipart\/form-data/i.test(contentType) && !/boundary=/i.test(contentType)) { 19790 headers.delete("content-type"); 19791 } 19792 } 19793 headers.set("User-Agent", "axios/" + VERSION$1, false); 19794 const resolvedOptions = { 19795 ...fetchOptions, 19796 signal: composedSignal, 19797 method: method.toUpperCase(), 19798 headers: toByteStringHeaderObject(headers.normalize()), 19799 body: data, 19800 duplex: "half", 19801 credentials: isCredentialsSupported ? withCredentials : void 0 19802 }; 19803 request = isRequestSupported && new Request(url, resolvedOptions); 19804 let response = await (isRequestSupported ? _fetch(request, fetchOptions) : _fetch(url, resolvedOptions)); 19805 if (hasMaxContentLength) { 19806 const declaredLength = utils$1.toFiniteNumber(response.headers.get("content-length")); 19807 if (declaredLength != null && declaredLength > maxContentLength) { 19808 throw new AxiosError$1( 19809 "maxContentLength size of " + maxContentLength + " exceeded", 19810 AxiosError$1.ERR_BAD_RESPONSE, 19811 config, 19812 request 19813 ); 19814 } 19815 } 19816 const isStreamResponse = supportsResponseStream && (responseType === "stream" || responseType === "response"); 19817 if (supportsResponseStream && response.body && (onDownloadProgress || hasMaxContentLength || isStreamResponse && unsubscribe)) { 19818 const options = {}; 19819 ["status", "statusText", "headers"].forEach((prop) => { 19820 options[prop] = response[prop]; 19821 }); 19822 const responseContentLength = utils$1.toFiniteNumber(response.headers.get("content-length")); 19823 const [onProgress, flush] = onDownloadProgress && progressEventDecorator( 19824 responseContentLength, 19825 progressEventReducer(asyncDecorator(onDownloadProgress), true) 19826 ) || []; 19827 let bytesRead = 0; 19828 const onChunkProgress = (loadedBytes) => { 19829 if (hasMaxContentLength) { 19830 bytesRead = loadedBytes; 19831 if (bytesRead > maxContentLength) { 19832 throw new AxiosError$1( 19833 "maxContentLength size of " + maxContentLength + " exceeded", 19834 AxiosError$1.ERR_BAD_RESPONSE, 19835 config, 19836 request 19837 ); 19838 } 19839 } 19840 onProgress && onProgress(loadedBytes); 19841 }; 19842 response = new Response( 19843 trackStream(response.body, DEFAULT_CHUNK_SIZE, onChunkProgress, () => { 19844 flush && flush(); 19845 unsubscribe && unsubscribe(); 19846 }), 19847 options 19848 ); 19849 } 19850 responseType = responseType || "text"; 19851 let responseData = await resolvers[utils$1.findKey(resolvers, responseType) || "text"]( 19852 response, 19853 config 19854 ); 19855 if (hasMaxContentLength && !supportsResponseStream && !isStreamResponse) { 19856 let materializedSize; 19857 if (responseData != null) { 19858 if (typeof responseData.byteLength === "number") { 19859 materializedSize = responseData.byteLength; 19860 } else if (typeof responseData.size === "number") { 19861 materializedSize = responseData.size; 19862 } else if (typeof responseData === "string") { 19863 materializedSize = typeof TextEncoder === "function" ? new TextEncoder().encode(responseData).byteLength : responseData.length; 19864 } 19865 } 19866 if (typeof materializedSize === "number" && materializedSize > maxContentLength) { 19867 throw new AxiosError$1( 19868 "maxContentLength size of " + maxContentLength + " exceeded", 19869 AxiosError$1.ERR_BAD_RESPONSE, 19870 config, 19871 request 19872 ); 19873 } 19874 } 19875 !isStreamResponse && unsubscribe && unsubscribe(); 19876 return await new Promise((resolve2, reject) => { 19877 settle(resolve2, reject, { 19878 data: responseData, 19879 headers: AxiosHeaders$1.from(response.headers), 19880 status: response.status, 19881 statusText: response.statusText, 19882 config, 19883 request 19884 }); 19885 }); 19886 } catch (err) { 19887 unsubscribe && unsubscribe(); 19888 if (composedSignal && composedSignal.aborted && composedSignal.reason instanceof AxiosError$1) { 19889 const canceledError = composedSignal.reason; 19890 canceledError.config = config; 19891 request && (canceledError.request = request); 19892 err !== canceledError && (canceledError.cause = err); 19893 throw canceledError; 19894 } 19895 if (err && err.name === "TypeError" && /Load failed|fetch/i.test(err.message)) { 19896 throw Object.assign( 19897 new AxiosError$1( 19898 "Network Error", 19899 AxiosError$1.ERR_NETWORK, 19900 config, 19901 request, 19902 err && err.response 19903 ), 19904 { 19905 cause: err.cause || err 19906 } 19907 ); 19908 } 19909 throw AxiosError$1.from(err, err && err.code, config, request, err && err.response); 19910 } 19911 }; 19912}; 19913const seedCache = /* @__PURE__ */ new Map(); 19914const getFetch = (config) => { 19915 let env = config && config.env || {}; 19916 const { fetch: fetch2, Request, Response } = env; 19917 const seeds = [Request, Response, fetch2]; 19918 let len = seeds.length, i = len, seed, target, map = seedCache; 19919 while (i--) { 19920 seed = seeds[i]; 19921 target = map.get(seed);
vendor: 15,057 bytes, lines 19922-20388
19922 target === void 0 && map.set(seed, target = i ? /* @__PURE__ */ new Map() : factory(env)); 19923 map = target; 19924 } 19925 return target; 19926}; 19927getFetch(); 19928const knownAdapters = { 19929 http: httpAdapter, 19930 xhr: xhrAdapter, 19931 fetch: { 19932 get: getFetch 19933 } 19934}; 19935utils$1.forEach(knownAdapters, (fn, value) => { 19936 if (fn) { 19937 try { 19938 Object.defineProperty(fn, "name", { __proto__: null, value }); 19939 } catch (e) { 19940 } 19941 Object.defineProperty(fn, "adapterName", { __proto__: null, value }); 19942 } 19943}); 19944const renderReason = (reason) => `- ${reason}`; 19945const isResolvedHandle = (adapter) => utils$1.isFunction(adapter) || adapter === null || adapter === false; 19946function getAdapter$1(adapters2, config) { 19947 adapters2 = utils$1.isArray(adapters2) ? adapters2 : [adapters2]; 19948 const { length } = adapters2; 19949 let nameOrAdapter; 19950 let adapter; 19951 const rejectedReasons = {}; 19952 for (let i = 0; i < length; i++) { 19953 nameOrAdapter = adapters2[i]; 19954 let id; 19955 adapter = nameOrAdapter; 19956 if (!isResolvedHandle(nameOrAdapter)) { 19957 adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()]; 19958 if (adapter === void 0) { 19959 throw new AxiosError$1(`Unknown adapter '${id}'`); 19960 } 19961 } 19962 if (adapter && (utils$1.isFunction(adapter) || (adapter = adapter.get(config)))) { 19963 break; 19964 } 19965 rejectedReasons[id || "#" + i] = adapter; 19966 } 19967 if (!adapter) { 19968 const reasons = Object.entries(rejectedReasons).map( 19969 ([id, state]) => `adapter ${id} ` + (state === false ? "is not supported by the environment" : "is not available in the build") 19970 ); 19971 let s = length ? reasons.length > 1 ? "since :\n" + reasons.map(renderReason).join("\n") : " " + renderReason(reasons[0]) : "as no adapter specified"; 19972 throw new AxiosError$1( 19973 `There is no suitable adapter to dispatch the request ` + s, 19974 "ERR_NOT_SUPPORT" 19975 ); 19976 } 19977 return adapter; 19978} 19979const adapters = { 19980 /** 19981 * Resolve an adapter from a list of adapter names or functions. 19982 * @type {Function} 19983 */ 19984 getAdapter: getAdapter$1, 19985 /** 19986 * Exposes all known adapters 19987 * @type {Object<string, Function|Object>} 19988 */ 19989 adapters: knownAdapters 19990}; 19991function throwIfCancellationRequested(config) { 19992 if (config.cancelToken) { 19993 config.cancelToken.throwIfRequested(); 19994 } 19995 if (config.signal && config.signal.aborted) { 19996 throw new CanceledError$1(null, config); 19997 } 19998} 19999function dispatchRequest(config) { 20000 throwIfCancellationRequested(config); 20001 config.headers = AxiosHeaders$1.from(config.headers); 20002 config.data = transformData.call(config, config.transformRequest); 20003 if (["post", "put", "patch"].indexOf(config.method) !== -1) { 20004 config.headers.setContentType("application/x-www-form-urlencoded", false); 20005 } 20006 const adapter = adapters.getAdapter(config.adapter || defaults.adapter, config); 20007 return adapter(config).then( 20008 function onAdapterResolution(response) { 20009 throwIfCancellationRequested(config); 20010 config.response = response; 20011 try { 20012 response.data = transformData.call(config, config.transformResponse, response); 20013 } finally { 20014 delete config.response; 20015 } 20016 response.headers = AxiosHeaders$1.from(response.headers); 20017 return response; 20018 }, 20019 function onAdapterRejection(reason) { 20020 if (!isCancel$1(reason)) { 20021 throwIfCancellationRequested(config); 20022 if (reason && reason.response) { 20023 config.response = reason.response; 20024 try { 20025 reason.response.data = transformData.call( 20026 config, 20027 config.transformResponse, 20028 reason.response 20029 ); 20030 } finally { 20031 delete config.response; 20032 } 20033 reason.response.headers = AxiosHeaders$1.from(reason.response.headers); 20034 } 20035 } 20036 return Promise.reject(reason); 20037 } 20038 ); 20039} 20040const validators$1 = {}; 20041["object", "boolean", "number", "function", "string", "symbol"].forEach((type, i) => { 20042 validators$1[type] = function validator2(thing) { 20043 return typeof thing === type || "a" + (i < 1 ? "n " : " ") + type; 20044 }; 20045}); 20046const deprecatedWarnings = {}; 20047validators$1.transitional = function transitional(validator2, version2, message2) { 20048 function formatMessage(opt, desc) { 20049 return "[Axios v" + VERSION$1 + "] Transitional option '" + opt + "'" + desc + (message2 ? ". " + message2 : ""); 20050 } 20051 return (value, opt, opts) => { 20052 if (validator2 === false) { 20053 throw new AxiosError$1( 20054 formatMessage(opt, " has been removed" + (version2 ? " in " + version2 : "")), 20055 AxiosError$1.ERR_DEPRECATED 20056 ); 20057 } 20058 if (version2 && !deprecatedWarnings[opt]) { 20059 deprecatedWarnings[opt] = true; 20060 console.warn( 20061 formatMessage( 20062 opt, 20063 " has been deprecated since v" + version2 + " and will be removed in the near future" 20064 ) 20065 ); 20066 } 20067 return validator2 ? validator2(value, opt, opts) : true; 20068 }; 20069}; 20070validators$1.spelling = function spelling(correctSpelling) { 20071 return (value, opt) => { 20072 console.warn(`${opt} is likely a misspelling of ${correctSpelling}`); 20073 return true; 20074 }; 20075}; 20076function assertOptions(options, schema, allowUnknown) { 20077 if (typeof options !== "object") { 20078 throw new AxiosError$1("options must be an object", AxiosError$1.ERR_BAD_OPTION_VALUE); 20079 } 20080 const keys2 = Object.keys(options); 20081 let i = keys2.length; 20082 while (i-- > 0) { 20083 const opt = keys2[i]; 20084 const validator2 = Object.prototype.hasOwnProperty.call(schema, opt) ? schema[opt] : void 0; 20085 if (validator2) { 20086 const value = options[opt]; 20087 const result = value === void 0 || validator2(value, opt, options); 20088 if (result !== true) { 20089 throw new AxiosError$1( 20090 "option " + opt + " must be " + result, 20091 AxiosError$1.ERR_BAD_OPTION_VALUE 20092 ); 20093 } 20094 continue; 20095 } 20096 if (allowUnknown !== true) { 20097 throw new AxiosError$1("Unknown option " + opt, AxiosError$1.ERR_BAD_OPTION); 20098 } 20099 } 20100} 20101const validator = { 20102 assertOptions, 20103 validators: validators$1 20104}; 20105const validators = validator.validators; 20106let Axios$1 = class Axios { 20107 constructor(instanceConfig) { 20108 this.defaults = instanceConfig || {}; 20109 this.interceptors = { 20110 request: new InterceptorManager(), 20111 response: new InterceptorManager() 20112 }; 20113 } 20114 /** 20115 * Dispatch a request 20116 * 20117 * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults) 20118 * @param {?Object} config 20119 * 20120 * @returns {Promise} The Promise to be fulfilled 20121 */ 20122 async request(configOrUrl, config) { 20123 try { 20124 return await this._request(configOrUrl, config); 20125 } catch (err) { 20126 if (err instanceof Error) { 20127 let dummy = {}; 20128 Error.captureStackTrace ? Error.captureStackTrace(dummy) : dummy = new Error(); 20129 const stack2 = (() => { 20130 if (!dummy.stack) { 20131 return ""; 20132 } 20133 const firstNewlineIndex = dummy.stack.indexOf("\n"); 20134 return firstNewlineIndex === -1 ? "" : dummy.stack.slice(firstNewlineIndex + 1); 20135 })(); 20136 try { 20137 if (!err.stack) { 20138 err.stack = stack2; 20139 } else if (stack2) { 20140 const firstNewlineIndex = stack2.indexOf("\n"); 20141 const secondNewlineIndex = firstNewlineIndex === -1 ? -1 : stack2.indexOf("\n", firstNewlineIndex + 1); 20142 const stackWithoutTwoTopLines = secondNewlineIndex === -1 ? "" : stack2.slice(secondNewlineIndex + 1); 20143 if (!String(err.stack).endsWith(stackWithoutTwoTopLines)) { 20144 err.stack += "\n" + stack2; 20145 } 20146 } 20147 } catch (e) { 20148 } 20149 } 20150 throw err; 20151 } 20152 } 20153 _request(configOrUrl, config) { 20154 if (typeof configOrUrl === "string") { 20155 config = config || {}; 20156 config.url = configOrUrl; 20157 } else { 20158 config = configOrUrl || {}; 20159 } 20160 config = mergeConfig$1(this.defaults, config); 20161 const { transitional: transitional2, paramsSerializer, headers } = config; 20162 if (transitional2 !== void 0) { 20163 validator.assertOptions( 20164 transitional2, 20165 { 20166 silentJSONParsing: validators.transitional(validators.boolean), 20167 forcedJSONParsing: validators.transitional(validators.boolean), 20168 clarifyTimeoutError: validators.transitional(validators.boolean), 20169 legacyInterceptorReqResOrdering: validators.transitional(validators.boolean) 20170 }, 20171 false 20172 ); 20173 } 20174 if (paramsSerializer != null) { 20175 if (utils$1.isFunction(paramsSerializer)) { 20176 config.paramsSerializer = { 20177 serialize: paramsSerializer 20178 }; 20179 } else { 20180 validator.assertOptions( 20181 paramsSerializer, 20182 { 20183 encode: validators.function, 20184 serialize: validators.function 20185 }, 20186 true 20187 ); 20188 } 20189 } 20190 if (config.allowAbsoluteUrls !== void 0) ; 20191 else if (this.defaults.allowAbsoluteUrls !== void 0) { 20192 config.allowAbsoluteUrls = this.defaults.allowAbsoluteUrls; 20193 } else { 20194 config.allowAbsoluteUrls = true; 20195 } 20196 validator.assertOptions( 20197 config, 20198 { 20199 baseUrl: validators.spelling("baseURL"), 20200 withXsrfToken: validators.spelling("withXSRFToken") 20201 }, 20202 true 20203 ); 20204 config.method = (config.method || this.defaults.method || "get").toLowerCase(); 20205 let contextHeaders = headers && utils$1.merge(headers.common, headers[config.method]); 20206 headers && utils$1.forEach(["delete", "get", "head", "post", "put", "patch", "query", "common"], (method) => { 20207 delete headers[method]; 20208 }); 20209 config.headers = AxiosHeaders$1.concat(contextHeaders, headers); 20210 const requestInterceptorChain = []; 20211 let synchronousRequestInterceptors = true; 20212 this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) { 20213 if (typeof interceptor.runWhen === "function" && interceptor.runWhen(config) === false) { 20214 return; 20215 } 20216 synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous; 20217 const transitional3 = config.transitional || transitionalDefaults; 20218 const legacyInterceptorReqResOrdering = transitional3 && transitional3.legacyInterceptorReqResOrdering; 20219 if (legacyInterceptorReqResOrdering) { 20220 requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected); 20221 } else { 20222 requestInterceptorChain.push(interceptor.fulfilled, interceptor.rejected); 20223 } 20224 }); 20225 const responseInterceptorChain = []; 20226 this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) { 20227 responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected); 20228 }); 20229 let promise; 20230 let i = 0; 20231 let len; 20232 if (!synchronousRequestInterceptors) { 20233 const chain = [dispatchRequest.bind(this), void 0]; 20234 chain.unshift(...requestInterceptorChain); 20235 chain.push(...responseInterceptorChain); 20236 len = chain.length; 20237 promise = Promise.resolve(config); 20238 while (i < len) { 20239 promise = promise.then(chain[i++], chain[i++]); 20240 } 20241 return promise; 20242 } 20243 len = requestInterceptorChain.length; 20244 let newConfig = config; 20245 while (i < len) { 20246 const onFulfilled = requestInterceptorChain[i++]; 20247 const onRejected = requestInterceptorChain[i++]; 20248 try { 20249 newConfig = onFulfilled(newConfig); 20250 } catch (error) { 20251 onRejected.call(this, error); 20252 break; 20253 } 20254 } 20255 try { 20256 promise = dispatchRequest.call(this, newConfig); 20257 } catch (error) { 20258 return Promise.reject(error); 20259 } 20260 i = 0; 20261 len = responseInterceptorChain.length; 20262 while (i < len) { 20263 promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]); 20264 } 20265 return promise; 20266 } 20267 getUri(config) { 20268 config = mergeConfig$1(this.defaults, config); 20269 const fullPath = buildFullPath(config.baseURL, config.url, config.allowAbsoluteUrls); 20270 return buildURL(fullPath, config.params, config.paramsSerializer); 20271 } 20272}; 20273utils$1.forEach(["delete", "get", "head", "options"], function forEachMethodNoData(method) { 20274 Axios$1.prototype[method] = function(url, config) { 20275 return this.request( 20276 mergeConfig$1(config || {}, { 20277 method, 20278 url, 20279 data: (config || {}).data 20280 }) 20281 ); 20282 }; 20283}); 20284utils$1.forEach(["post", "put", "patch", "query"], function forEachMethodWithData(method) { 20285 function generateHTTPMethod(isForm) { 20286 return function httpMethod(url, data, config) { 20287 return this.request( 20288 mergeConfig$1(config || {}, { 20289 method, 20290 headers: isForm ? { 20291 "Content-Type": "multipart/form-data" 20292 } : {}, 20293 url, 20294 data 20295 }) 20296 ); 20297 }; 20298 } 20299 Axios$1.prototype[method] = generateHTTPMethod(); 20300 if (method !== "query") { 20301 Axios$1.prototype[method + "Form"] = generateHTTPMethod(true); 20302 } 20303}); 20304let CancelToken$1 = class CancelToken { 20305 constructor(executor) { 20306 if (typeof executor !== "function") { 20307 throw new TypeError("executor must be a function."); 20308 } 20309 let resolvePromise; 20310 this.promise = new Promise(function promiseExecutor(resolve2) { 20311 resolvePromise = resolve2; 20312 }); 20313 const token = this; 20314 this.promise.then((cancel) => { 20315 if (!token._listeners) return; 20316 let i = token._listeners.length; 20317 while (i-- > 0) { 20318 token._listeners[i](cancel); 20319 } 20320 token._listeners = null; 20321 }); 20322 this.promise.then = (onfulfilled) => { 20323 let _resolve; 20324 const promise = new Promise((resolve2) => { 20325 token.subscribe(resolve2); 20326 _resolve = resolve2; 20327 }).then(onfulfilled); 20328 promise.cancel = function reject() { 20329 token.unsubscribe(_resolve); 20330 }; 20331 return promise; 20332 }; 20333 executor(function cancel(message2, config, request) { 20334 if (token.reason) { 20335 return; 20336 } 20337 token.reason = new CanceledError$1(message2, config, request); 20338 resolvePromise(token.reason); 20339 }); 20340 } 20341 /** 20342 * Throws a `CanceledError` if cancellation has been requested. 20343 */ 20344 throwIfRequested() { 20345 if (this.reason) { 20346 throw this.reason; 20347 } 20348 } 20349 /** 20350 * Subscribe to the cancel signal 20351 */ 20352 subscribe(listener) { 20353 if (this.reason) { 20354 listener(this.reason); 20355 return; 20356 } 20357 if (this._listeners) { 20358 this._listeners.push(listener); 20359 } else { 20360 this._listeners = [listener]; 20361 } 20362 } 20363 /** 20364 * Unsubscribe from the cancel signal 20365 */ 20366 unsubscribe(listener) { 20367 if (!this._listeners) { 20368 return; 20369 } 20370 const index2 = this._listeners.indexOf(listener); 20371 if (index2 !== -1) { 20372 this._listeners.splice(index2, 1); 20373 } 20374 } 20375 toAbortSignal() { 20376 const controller = new AbortController(); 20377 const abort = (err) => { 20378 controller.abort(err); 20379 }; 20380 this.subscribe(abort); 20381 controller.signal.unsubscribe = () => this.unsubscribe(abort); 20382 return controller.signal; 20383 } 20384 /** 20385 * Returns an object that contains a new `CancelToken` and a function that, when called, 20386 * cancels the `CancelToken`. 20387 */ 20388 static source() {
20389 let cancel; 20390 const token = new CancelToken(function executor(c2) { 20391 cancel = c2; 20392 }); 20393 return { 20394 token, 20395 cancel 20396 }; 20397 } 20398}; 20399function spread$1(callback) { 20400 return function wrap(arr) { 20401 return callback.apply(null, arr); 20402 }; 20403} 20404function isAxiosError$1(payload) { 20405 return utils$1.isObject(payload) && payload.isAxiosError === true; 20406} 20407const HttpStatusCode$1 = { 20408 Continue: 100, 20409 SwitchingProtocols: 101, 20410 Processing: 102, 20411 EarlyHints: 103, 20412 Ok: 200, 20413 Created: 201, 20414 Accepted: 202, 20415 NonAuthoritativeInformation: 203, 20416 NoContent: 204, 20417 ResetContent: 205, 20418 PartialContent: 206, 20419 MultiStatus: 207, 20420 AlreadyReported: 208, 20421 ImUsed: 226, 20422 MultipleChoices: 300, 20423 MovedPermanently: 301, 20424 Found: 302, 20425 SeeOther: 303, 20426 NotModified: 304, 20427 UseProxy: 305, 20428 Unused: 306, 20429 TemporaryRedirect: 307, 20430 PermanentRedirect: 308, 20431 BadRequest: 400, 20432 Unauthorized: 401, 20433 PaymentRequired: 402, 20434 Forbidden: 403, 20435 NotFound: 404, 20436 MethodNotAllowed: 405, 20437 NotAcceptable: 406, 20438 ProxyAuthenticationRequired: 407, 20439 RequestTimeout: 408, 20440 Conflict: 409, 20441 Gone: 410, 20442 LengthRequired: 411, 20443 PreconditionFailed: 412, 20444 PayloadTooLarge: 413, 20445 UriTooLong: 414, 20446 UnsupportedMediaType: 415, 20447 RangeNotSatisfiable: 416, 20448 ExpectationFailed: 417, 20449 ImATeapot: 418, 20450 MisdirectedRequest: 421, 20451 UnprocessableEntity: 422, 20452 Locked: 423, 20453 FailedDependency: 424, 20454 TooEarly: 425, 20455 UpgradeRequired: 426, 20456 PreconditionRequired: 428, 20457 TooManyRequests: 429, 20458 RequestHeaderFieldsTooLarge: 431, 20459 UnavailableForLegalReasons: 451, 20460 InternalServerError: 500, 20461 NotImplemented: 501, 20462 BadGateway: 502, 20463 ServiceUnavailable: 503, 20464 GatewayTimeout: 504, 20465 HttpVersionNotSupported: 505, 20466 VariantAlsoNegotiates: 506, 20467 InsufficientStorage: 507, 20468 LoopDetected: 508, 20469 NotExtended: 510, 20470 NetworkAuthenticationRequired: 511, 20471 WebServerIsDown: 521, 20472 ConnectionTimedOut: 522, 20473 OriginIsUnreachable: 523, 20474 TimeoutOccurred: 524, 20475 SslHandshakeFailed: 525, 20476 InvalidSslCertificate: 526 20477}; 20478Object.entries(HttpStatusCode$1).forEach(([key, value]) => { 20479 HttpStatusCode$1[value] = key; 20480}); 20481function createInstance(defaultConfig) { 20482 const context = new Axios$1(defaultConfig); 20483 const instance = bind(Axios$1.prototype.request, context); 20484 utils$1.extend(instance, Axios$1.prototype, context, { allOwnKeys: true }); 20485 utils$1.extend(instance, context, null, { allOwnKeys: true }); 20486 instance.create = function create2(instanceConfig) { 20487 return createInstance(mergeConfig$1(defaultConfig, instanceConfig)); 20488 }; 20489 return instance; 20490} 20491const axios = createInstance(defaults); 20492axios.Axios = Axios$1; 20493axios.CanceledError = CanceledError$1; 20494axios.CancelToken = CancelToken$1; 20495axios.isCancel = isCancel$1; 20496axios.VERSION = VERSION$1; 20497axios.toFormData = toFormData$1; 20498axios.AxiosError = AxiosError$1; 20499axios.Cancel = axios.CanceledError; 20500axios.all = function all(promises) { 20501 return Promise.all(promises); 20502}; 20503axios.spread = spread$1; 20504axios.isAxiosError = isAxiosError$1; 20505axios.mergeConfig = mergeConfig$1; 20506axios.AxiosHeaders = AxiosHeaders$1; 20507axios.formToJSON = (thing) => formDataToJSON(utils$1.isHTMLForm(thing) ? new FormData(thing) : thing); 20508axios.getAdapter = adapters.getAdapter; 20509axios.HttpStatusCode = HttpStatusCode$1; 20510axios.default = axios; 20511const { 20512 Axios: Axios2, 20513 AxiosError: AxiosError2, 20514 CanceledError: CanceledError2, 20515 isCancel, 20516 CancelToken: CancelToken2, 20517 VERSION, 20518 all: all2, 20519 Cancel, 20520 isAxiosError, 20521 spread, 20522 toFormData, 20523 AxiosHeaders: AxiosHeaders2, 20524 HttpStatusCode, 20525 formToJSON, 20526 getAdapter, 20527 mergeConfig, 20528 create 20529} = axios; 20530/*! 20531 * mustache.js - Logic-less {{mustache}} templates with JavaScript 20532 * http://github.com/janl/mustache.js 20533 */ 20534var objectToString$1 = Object.prototype.toString; 20535var isArray$1 = Array.isArray || function isArrayPolyfill(object) { 20536 return objectToString$1.call(object) === "[object Array]"; 20537}; 20538function isFunction$1(object) { 20539 return typeof object === "function"; 20540} 20541function typeStr(obj) { 20542 return isArray$1(obj) ? "array" : typeof obj; 20543} 20544function escapeRegExp(string) { 20545 return string.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, "\\$&"); 20546} 20547function hasProperty(obj, propName) { 20548 return obj != null && typeof obj === "object" && propName in obj; 20549} 20550function primitiveHasOwnProperty(primitive, propName) { 20551 return primitive != null && typeof primitive !== "object" && primitive.hasOwnProperty && primitive.hasOwnProperty(propName); 20552} 20553var regExpTest = RegExp.prototype.test; 20554function testRegExp(re, string) { 20555 return regExpTest.call(re, string); 20556} 20557var nonSpaceRe = /\S/; 20558function isWhitespace(string) { 20559 return !testRegExp(nonSpaceRe, string); 20560} 20561var entityMap = { 20562 "&": "&", 20563 "<": "<", 20564 ">": ">", 20565 '"': """, 20566 "'": "'", 20567 "/": "/", 20568 "`": "`", 20569 "=": "=" 20570}; 20571function escapeHtml(string) { 20572 return String(string).replace(/[&<>
vendor: 5,893 bytes, lines 20572-20775
20572"'`=\/]/g, function fromEntityMap(s) { 20573 return entityMap[s]; 20574 }); 20575} 20576var whiteRe = /\s*/; 20577var spaceRe = /\s+/; 20578var equalsRe = /\s*=/; 20579var curlyRe = /\s*\}/; 20580var tagRe = /#|\^|\/|>|\{|&|=|!/; 20581function parseTemplate(template, tags) { 20582 if (!template) 20583 return []; 20584 var lineHasNonSpace = false; 20585 var sections = []; 20586 var tokens = []; 20587 var spaces = []; 20588 var hasTag = false; 20589 var nonSpace = false; 20590 var indentation = ""; 20591 var tagIndex = 0; 20592 function stripSpace() { 20593 if (hasTag && !nonSpace) { 20594 while (spaces.length) 20595 delete tokens[spaces.pop()]; 20596 } else { 20597 spaces = []; 20598 } 20599 hasTag = false; 20600 nonSpace = false; 20601 } 20602 var openingTagRe, closingTagRe, closingCurlyRe; 20603 function compileTags(tagsToCompile) { 20604 if (typeof tagsToCompile === "string") 20605 tagsToCompile = tagsToCompile.split(spaceRe, 2); 20606 if (!isArray$1(tagsToCompile) || tagsToCompile.length !== 2) 20607 throw new Error("Invalid tags: " + tagsToCompile); 20608 openingTagRe = new RegExp(escapeRegExp(tagsToCompile[0]) + "\\s*"); 20609 closingTagRe = new RegExp("\\s*" + escapeRegExp(tagsToCompile[1])); 20610 closingCurlyRe = new RegExp("\\s*" + escapeRegExp("}" + tagsToCompile[1])); 20611 } 20612 compileTags(tags || mustache.tags); 20613 var scanner = new Scanner(template); 20614 var start, type, value, chr, token, openSection; 20615 while (!scanner.eos()) { 20616 start = scanner.pos; 20617 value = scanner.scanUntil(openingTagRe); 20618 if (value) { 20619 for (var i = 0, valueLength = value.length; i < valueLength; ++i) { 20620 chr = value.charAt(i); 20621 if (isWhitespace(chr)) { 20622 spaces.push(tokens.length); 20623 indentation += chr; 20624 } else { 20625 nonSpace = true; 20626 lineHasNonSpace = true; 20627 indentation += " "; 20628 } 20629 tokens.push(["text", chr, start, start + 1]); 20630 start += 1; 20631 if (chr === "\n") { 20632 stripSpace(); 20633 indentation = ""; 20634 tagIndex = 0; 20635 lineHasNonSpace = false; 20636 } 20637 } 20638 } 20639 if (!scanner.scan(openingTagRe)) 20640 break; 20641 hasTag = true; 20642 type = scanner.scan(tagRe) || "name"; 20643 scanner.scan(whiteRe); 20644 if (type === "=") { 20645 value = scanner.scanUntil(equalsRe); 20646 scanner.scan(equalsRe); 20647 scanner.scanUntil(closingTagRe); 20648 } else if (type === "{") { 20649 value = scanner.scanUntil(closingCurlyRe); 20650 scanner.scan(curlyRe); 20651 scanner.scanUntil(closingTagRe); 20652 type = "&"; 20653 } else { 20654 value = scanner.scanUntil(closingTagRe); 20655 } 20656 if (!scanner.scan(closingTagRe)) 20657 throw new Error("Unclosed tag at " + scanner.pos); 20658 if (type == ">") { 20659 token = [type, value, start, scanner.pos, indentation, tagIndex, lineHasNonSpace]; 20660 } else { 20661 token = [type, value, start, scanner.pos]; 20662 } 20663 tagIndex++; 20664 tokens.push(token); 20665 if (type === "#" || type === "^") { 20666 sections.push(token); 20667 } else if (type === "/") { 20668 openSection = sections.pop(); 20669 if (!openSection) 20670 throw new Error('Unopened section "' + value + '" at ' + start); 20671 if (openSection[1] !== value) 20672 throw new Error('Unclosed section "' + openSection[1] + '" at ' + start); 20673 } else if (type === "name" || type === "{" || type === "&") { 20674 nonSpace = true; 20675 } else if (type === "=") { 20676 compileTags(value); 20677 } 20678 } 20679 stripSpace(); 20680 openSection = sections.pop(); 20681 if (openSection) 20682 throw new Error('Unclosed section "' + openSection[1] + '" at ' + scanner.pos); 20683 return nestTokens(squashTokens(tokens)); 20684} 20685function squashTokens(tokens) { 20686 var squashedTokens = []; 20687 var token, lastToken; 20688 for (var i = 0, numTokens = tokens.length; i < numTokens; ++i) { 20689 token = tokens[i]; 20690 if (token) { 20691 if (token[0] === "text" && lastToken && lastToken[0] === "text") { 20692 lastToken[1] += token[1]; 20693 lastToken[3] = token[3]; 20694 } else { 20695 squashedTokens.push(token); 20696 lastToken = token; 20697 } 20698 } 20699 } 20700 return squashedTokens; 20701} 20702function nestTokens(tokens) { 20703 var nestedTokens = []; 20704 var collector = nestedTokens; 20705 var sections = []; 20706 var token, section; 20707 for (var i = 0, numTokens = tokens.length; i < numTokens; ++i) { 20708 token = tokens[i]; 20709 switch (token[0]) { 20710 case "#": 20711 case "^": 20712 collector.push(token); 20713 sections.push(token); 20714 collector = token[4] = []; 20715 break; 20716 case "/": 20717 section = sections.pop(); 20718 section[5] = token[2]; 20719 collector = sections.length > 0 ? sections[sections.length - 1][4] : nestedTokens; 20720 break; 20721 default: 20722 collector.push(token); 20723 } 20724 } 20725 return nestedTokens; 20726} 20727function Scanner(string) { 20728 this.string = string; 20729 this.tail = string; 20730 this.pos = 0; 20731} 20732Scanner.prototype.eos = function eos() { 20733 return this.tail === ""; 20734}; 20735Scanner.prototype.scan = function scan(re) { 20736 var match2 = this.tail.match(re); 20737 if (!match2 || match2.index !== 0) 20738 return ""; 20739 var string = match2[0]; 20740 this.tail = this.tail.substring(string.length); 20741 this.pos += string.length; 20742 return string; 20743}; 20744Scanner.prototype.scanUntil = function scanUntil(re) { 20745 var index2 = this.tail.search(re), match2; 20746 switch (index2) { 20747 case -1: 20748 match2 = this.tail; 20749 this.tail = ""; 20750 break; 20751 case 0: 20752 match2 = ""; 20753 break; 20754 default: 20755 match2 = this.tail.substring(0, index2); 20756 this.tail = this.tail.substring(index2); 20757 } 20758 this.pos += match2.length; 20759 return match2; 20760}; 20761function Context(view, parentContext) { 20762 this.view = view; 20763 this.cache = { ".": this.view }; 20764 this.parent = parentContext; 20765} 20766Context.prototype.push = function push(view) { 20767 return new Context(view, this); 20768}; 20769Context.prototype.lookup = function lookup(name) { 20770 var cache = this.cache; 20771 var value; 20772 if (cache.hasOwnProperty(name)) { 20773 value = cache[name]; 20774 } else { 20775 var context = this, intermediateValue, names, index2, lookupHit = false;
20776 while (context) { 20777 if (name.indexOf(".") > 0) { 20778 intermediateValue = context.view; 20779 names = name.split("."); 20780 index2 = 0; 20781 while (intermediateValue != null && index2 < names.length) { 20782 if (index2 === names.length - 1) 20783 lookupHit = hasProperty(intermediateValue, names[index2]) || primitiveHasOwnProperty(intermediateValue, names[index2]); 20784 intermediateValue = intermediateValue[names[index2++]]; 20785 } 20786 } else { 20787 intermediateValue = context.view[name]; 20788 lookupHit = hasProperty(context.view, name); 20789 } 20790 if (lookupHit) { 20791 value = intermediateValue; 20792 break; 20793 } 20794 context = context.parent; 20795 } 20796 cache[name] = value; 20797 } 20798 if (isFunction$1(value)) 20799 value = value.call(this.view); 20800 return value; 20801}; 20802function Writer() { 20803 this.templateCache = { 20804 _cache: {}, 20805 set: function set2(key, value) { 20806 this._cache[key] = value; 20807 }, 20808 get: function get2(key) { 20809 return this._cache[key]; 20810 }, 20811 clear: function clear() { 20812 this._cache = {}; 20813 } 20814 }; 20815} 20816Writer.prototype.clearCache = function clearCache() { 20817 if (typeof this.templateCache !== "undefined") { 20818 this.templateCache.clear(); 20819 } 20820}; 20821Writer.prototype.parse = function parse2(template, tags) { 20822 var cache = this.templateCache; 20823 var cacheKey = template + ":" + (tags || mustache.tags).join(":"); 20824 var isCacheEnabled = typeof cache !== "undefined"; 20825 var tokens = isCacheEnabled ? cache.get(cacheKey) : void 0; 20826 if (tokens == void 0) { 20827 tokens = parseTemplate(template, tags); 20828 isCacheEnabled && cache.set(cacheKey, tokens); 20829 } 20830 return tokens; 20831}; 20832Writer.prototype.render = function render2(template, view, partials, config) { 20833 var tags = this.getConfigTags(config); 20834 var tokens = this.parse(template, tags); 20835 var context = view instanceof Context ? view : new Context(view, void 0); 20836 return this.renderTokens(tokens, context, partials, template, config); 20837}; 20838Writer.prototype.renderTokens = function renderTokens(tokens, context, partials, originalTemplate, config) { 20839 var buffer2 = ""; 20840 var token, symbol, value; 20841 for (var i = 0, numTokens = tokens.length; i < numTokens; ++i) { 20842 value = void 0; 20843 token = tokens[i]; 20844 symbol = token[0]; 20845 if (symbol === "#") value = this.renderSection(token, context, partials, originalTemplate, config); 20846 else if (symbol === "^") value = this.renderInverted(token, context, partials, originalTemplate, config); 20847 else if (symbol === ">") value = this.renderPartial(token, context, partials, config); 20848 else if (symbol === "&") value = this.unescapedValue(token, context); 20849 else if (symbol === "name") value = this.escapedValue(token, context, config); 20850 else if (symbol === "text") value = this.rawValue(token); 20851 if (value !== void 0) 20852 buffer2 += value; 20853 } 20854 return buffer2; 20855};
vendor: 1,842 bytes, lines 20856-20893
20856Writer.prototype.renderSection = function renderSection(token, context, partials, originalTemplate, config) { 20857 var self2 = this; 20858 var buffer2 = ""; 20859 var value = context.lookup(token[1]); 20860 function subRender(template) { 20861 return self2.render(template, context, partials, config); 20862 } 20863 if (!value) return; 20864 if (isArray$1(value)) { 20865 for (var j = 0, valueLength = value.length; j < valueLength; ++j) { 20866 buffer2 += this.renderTokens(token[4], context.push(value[j]), partials, originalTemplate, config); 20867 } 20868 } else if (typeof value === "object" || typeof value === "string" || typeof value === "number") { 20869 buffer2 += this.renderTokens(token[4], context.push(value), partials, originalTemplate, config); 20870 } else if (isFunction$1(value)) { 20871 if (typeof originalTemplate !== "string") 20872 throw new Error("Cannot use higher-order sections without the original template"); 20873 value = value.call(context.view, originalTemplate.slice(token[3], token[5]), subRender); 20874 if (value != null) 20875 buffer2 += value; 20876 } else { 20877 buffer2 += this.renderTokens(token[4], context, partials, originalTemplate, config); 20878 } 20879 return buffer2; 20880}; 20881Writer.prototype.renderInverted = function renderInverted(token, context, partials, originalTemplate, config) { 20882 var value = context.lookup(token[1]); 20883 if (!value || isArray$1(value) && value.length === 0) 20884 return this.renderTokens(token[4], context, partials, originalTemplate, config); 20885}; 20886Writer.prototype.indentPartial = function indentPartial(partial2, indentation, lineHasNonSpace) { 20887 var filteredIndentation = indentation.replace(/[^ \t]/g, ""); 20888 var partialByNl = partial2.split("\n"); 20889 for (var i = 0; i < partialByNl.length; i++) { 20890 if (partialByNl[i].length && (i > 0 || !lineHasNonSpace)) { 20891 partialByNl[i] = filteredIndentation + partialByNl[i]; 20892 } 20893 }
20894 return partialByNl.join("\n"); 20895}; 20896Writer.prototype.renderPartial = function renderPartial(token, context, partials, config) { 20897 if (!partials) return; 20898 var tags = this.getConfigTags(config); 20899 var value = isFunction$1(partials) ? partials(token[1]) : partials[token[1]]; 20900 if (value != null) { 20901 var lineHasNonSpace = token[6]; 20902 var tagIndex = token[5]; 20903 var indentation = token[4]; 20904 var indentedValue = value; 20905 if (tagIndex == 0 && indentation) { 20906 indentedValue = this.indentPartial(value, indentation, lineHasNonSpace); 20907 } 20908 var tokens = this.parse(indentedValue, tags); 20909 return this.renderTokens(tokens, context, partials, indentedValue, config); 20910 } 20911}; 20912Writer.prototype.unescapedValue = function unescapedValue(token, context) { 20913 var value = context.lookup(token[1]); 20914 if (value != null) 20915 return value; 20916}; 20917Writer.prototype.escapedValue = function escapedValue(token, context, config) { 20918 var escape = this.getConfigEscape(config) || mustache.escape; 20919 var value = context.lookup(token[1]); 20920 if (value != null) 20921 return typeof value === "number" && escape === mustache.escape ? String(value) : escape(value); 20922}; 20923Writer.prototype.rawValue = function rawValue(token) { 20924 return token[1]; 20925}; 20926Writer.prototype.getConfigTags = function getConfigTags(config) { 20927 if (isArray$1(config)) { 20928 return config; 20929 } else if (config && typeof config === "object") { 20930 return config.tags; 20931 } else { 20932 return void 0; 20933 } 20934}; 20935Writer.prototype.getConfigEscape = function getConfigEscape(config) { 20936 if (config && typeof config === "object" && !isArray$1(config)) { 20937 return config.escape; 20938 } else { 20939 return void 0; 20940 } 20941}; 20942var mustache = { 20943 name: "mustache.js", 20944 version: "4.2.0", 20945 tags: ["{{", "}}"], 20946 clearCache: void 0, 20947 escape: void 0, 20948 parse: void 0, 20949 render: void 0, 20950 Scanner: void 0, 20951 Context: void 0, 20952 Writer: void 0, 20953 /** 20954 * Allows a user to override the default caching strategy, by providing an 20955 * object with set, get and clear methods. This can also be used to disable 20956 * the cache by setting it to the literal `undefined`. 20957 */ 20958 set templateCache(cache) { 20959 defaultWriter.templateCache = cache; 20960 }, 20961 /** 20962 * Gets the default or overridden caching object from the default writer. 20963 */ 20964 get templateCache() { 20965 return defaultWriter.templateCache; 20966 } 20967}; 20968var defaultWriter = new Writer(); 20969mustache.clearCache = function clearCache2() { 20970 return defaultWriter.clearCache(); 20971}; 20972mustache.parse = function parse3(template, tags) { 20973 return defaultWriter.parse(template, tags); 20974}; 20975mustache.render = function render3(template, view, partials, config) { 20976 if (typeof template !== "string") { 20977 throw new TypeError('Invalid template! Template should be a "string" but "' + typeStr(template) + '" was given as the first argument for mustache#render(template, view, partials)'); 20978 } 20979 return defaultWriter.render(template, view, partials, config); 20980}; 20981mustache.escape = escapeHtml; 20982mustache.Scanner = Scanner; 20983mustache.Context = Context; 20984mustache.Writer = Writer; 20985const _export_sfc = (sfc, props) => { 20986 const target = sfc.__vccOpts || sfc; 20987 for (const [key, val] of props) { 20988 target[key] = val; 20989 } 20990 return target; 20991}; 20992const __variableDynamicImportRuntimeHelper = (glob, path, segs) => { 20993 const v2 = glob[path]; 20994 if (v2) { 20995 return typeof v2 === "function" ? v2() : Promise.resolve(v2); 20996 } 20997 return new Promise((_, reject) => { 20998 (typeof queueMicrotask === "function" ? queueMicrotask : setTimeout)( 20999 reject.bind( 21000 null, 21001 new Error( 21002 "Unknown variable dynamic import: " + path + (path.split("/").length !== segs ? ". Note that variables only represent file names one level deep." : "") 21003 ) 21004 ) 21005 ); 21006 }); 21007}; 21008function getRoot() { 21009 const vm = getCurrentInstance(); 21010 if (!vm || !vm.proxy) 21011 throw new Error( 21012 "Must be called within the setup function of a Vue component." 21013 ); 21014 return vm.proxy; 21015} 21016const useRoot = () => getRoot(); 21017const useStore = () => useStore$1(); 21018const useRoute = () => useRoute$1(); 21019const useRouter = () => useRouter$1(); 21020function useLoadComponent(props, options = {}) { 21021 let componentModule = shallowRef(null); 21022 const store = useStore(); 21023 const useBrandSpecificComponents = props.isEditable || (options.useBrandSpecificComponents ?? false); 21024 function getBlockComponent(props2, useResolvedPath = props2.isEditable) { 21025 var _a; 21026 const containerValue = useResolvedPath ? "container/CoreBlockContainer" : "CoreBlockContainer"; 21027 const footer = useResolvedPath ? "footer/CoreBlockFooter" : "CoreBlockFooter"; 21028 const types = { 21029 button: "CoreBlockButton", 21030 breadcrumbs: "CoreBlockBreadcrumbs", 21031 "contact-card": "CoreBlockContactCard", 21032 "contact-hero": "CoreBlockContactHero", 21033 columns: "CoreBlockColumns", 21034 container: containerValue, 21035 section: containerValue, 21036 accordion: containerValue, 21037 toggle: containerValue, 21038 tabs: containerValue, 21039 "content-card": "CoreBlockContentCard", 21040 disclosures: "CoreBlockDisclosures", 21041 divider: "CoreBlockDivider", 21042 file: "CoreBlockFile", 21043 grid: "CoreBlockGrid", 21044 heroComponent: "CoreBlockHeroComponent", 21045 hero: "CoreBlockHero", 21046 calculators: "CoreBlockCalculators", 21047 html: "CoreBlockHtml", 21048 icon: "CoreBlockIcon", 21049 image: "CoreBlockImage", 21050 media: "CoreBlockMedia", 21051 rows: "CoreBlockRows", 21052 "social-links": "CoreBlockSocialLinks", 21053 text: "CoreBlockText", 21054 video: "CoreBlockVideo", 21055 "pencil-banner": "CoreBlockPencilBanner", 21056 "rich-text": "CoreBlockRichText", 21057 form: "CoreBlockForm", 21058 calendly: "CoreBlockCalendly", 21059 calendlyEmbed: "CoreBlockCalendlyEmbed", 21060 map: "CoreBlockMap", 21061 select: "CoreBlockSelect", 21062 "anchor-link-nav": "CoreAnchorLinkNavigation", 21063 articles: "CoreBlockArticles", 21064 article: "CoreBlockArticleCard", 21065 footer, 21066 stickyButton: "CoreBlockStickyButton", 21067 repeat: "CoreBlockRepeat", 21068 oembed: "CoreBlockOEmbed", 21069 frameEmbed: "CoreBlockFrameEmbed" 21070 }; 21071 return types[(_a = props2.settings) == null ? void 0 : _a.type] || "CoreBlockUnknown"; 21072 } 21073 async function loadComponent() { 21074 var _a, _b, _c, _d; 21075 const componentType = getBlockComponent( 21076 props, 21077 useBrandSpecificComponents 21078 );
21079 let componentPath; 21080 let componentName; 21081 if (componentType.includes("/")) { 21082 const [folder, name] = componentType.split("/"); 21083 componentPath = folder; 21084 componentName = name; 21085 } else { 21086 componentPath = ""; 21087 componentName = componentName || componentType; 21088 } 21089 const brandId = (_b = (_a = store.state) == null ? void 0 : _a.brand) == null ? void 0 : _b.id; 21090 let brand = null; 21091 if (store.getters && store.getters["brand/getBrand"]) { 21092 brand = store.getters["brand/getBrand"](brandId); 21093 } else if ((_d = (_c = store.state) == null ? void 0 : _c.brand) == null ? void 0 : _d.brands) { 21094 brand = store.state.brand.brands.find((b2) => b2.id === brandId); 21095 } 21096 let module2; 21097 const brandHandle = brand == null ? void 0 : brand.handle; 21098 if (!brandHandle) { 21099 await loadGenericComponent(); 21100 return; 21101 } 21102 try { 21103 if (componentPath) { 21104 module2 = await __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({
21104"../components/nyl/block/footer/CoreBlockFooter.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooter$2), true ? void 0 : void 0, import.meta.url),
21104"../components/nyl/block/footer/CoreBlockFooterBackground.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterBackground), true ? void 0 : void 0, import.meta.url),
21104"../components/nyl/block/footer/CoreBlockFooterBanner.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterBanner), true ? void 0 : void 0, import.meta.url),
21104"../components/nyl/block/footer/CoreBlockFooterDisclosures.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterDisclosures), true ? void 0 : void 0, import.meta.url),
21104"../components/nyl/block/footer/CoreBlockFooterLogo.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterLogo), true ? void 0 : void 0, import.meta.url),
21104"../components/nyl/block/footer/CoreBlockFooterOneTrust.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterOneTrust), true ? void 0 : void 0, import.meta.url),
21104"../components/nyl/block/footer/CoreBlockFooterSocialLinks.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooterSocialLinks), true ? void 0 : void 0, import.meta.url) }), `../components/${brandHandle}/block/${componentPath}/${componentName}.vue`, 6).catch((e) => { 21105 throw e; 21106 }); 21107 } else { 21108 module2 = await __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({
21108"../components/nyl/block/CoreBlockCalendly.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockCalendly$1), true ? void 0 : void 0, import.meta.url),
21108"../components/nyl/block/CoreBlockContactCard.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockContactCard$3), true ? void 0 : void 0, import.meta.url),
21108"../components/nyl/block/CoreBlockDisclosures.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockDisclosures$1), true ? void 0 : void 0, import.meta.url),
21108"../components/nyl/block/CoreBlockForm.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockForm$3), true ? void 0 : void 0, import.meta.url) }), `../components/${brandHandle}/block/${componentName}.vue`, 5).catch((e) => { 21109 throw e; 21110 }); 21111 } 21112 componentModule.value = markRaw(module2.default || module2); 21113 } catch (error) { 21114 await loadGenericComponent(); 21115 } 21116 async function loadGenericComponent() { 21117 try { 21118 let fallbackModule; 21119 if (componentPath) { 21120 fallbackModule = await __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({
21120"../components/block/container/CoreBlockContainer.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockContainer$1), true ? void 0 : void 0, import.meta.url),
21120"../components/block/container/CoreBlockContainerAccordion.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockContainerAccordion), true ? void 0 : void 0, import.meta.url),
21120"../components/block/container/CoreBlockContainerTabs.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockContainerTabs), true ? void 0 : void 0, import.meta.url),
21120"../components/block/container/CoreBlockContainerToggle.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockContainerToggle), true ? void 0 : void 0, import.meta.url),
21120"../components/block/footer/CoreBlockFooter.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockFooter$1), true ? void 0 : void 0, import.meta.url) }), `../components/block/${componentPath}/${componentName}.vue`, 5); 21121 } else { 21122 fallbackModule = await __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({
21122"../components/block/CoreAnchorLinkNavigation.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreAnchorLinkNavigation), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlock.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlock), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockAccessibleTooltip.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockAccessibleTooltip), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockAddressAutocomplete.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockAddressAutocomplete$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockArticleCard.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockArticleCard$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockArticles.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockArticles$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockBreadcrumbs.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockBreadcrumbs), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockButton.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockButton$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockCalculators.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockCalculators$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockCalendlyEmbed.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockCalendlyEmbed), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockCarousel.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockCarousel), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockCenteredNavBar.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockCenteredNavBar), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockColumns.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockColumns), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockContactCard.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockContactCard$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockContactHero.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockContactHero$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockContentCard.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockContentCard$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockContentCardTextField.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockContentCardTextField), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockDialog.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockDialog), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockDivider.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockDivider$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockDynamicForm.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockDynamicForm), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockFile.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockFile$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockForm.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockForm$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockFrameEmbed.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockFrameEmbed), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockGrid.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockGrid$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockHero.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockHero$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockHeroBackground.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockHeroBackground), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockHeroComponent.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockHeroComponent), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockHtml.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockHtml$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockIcon.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockIcon$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockImage.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockImage), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockImageCropped.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockImageCropped), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockLazy.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockLazy), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockMainNav.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockMainNav), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockMainNavImage.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockMainNavImage), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockMap.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockMap), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockMedia.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockMedia$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockNavItem.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockNavItem), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockOEmbed.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockOEmbed$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockPencilBanner.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockPencilBanner$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockRepeat.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockRepeat$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockRichText.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockRichText), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockRows.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockRows$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockSelect.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockSelect), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockSocialLinks.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockSocialLinks$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockStickyButton.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockStickyButton), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockText.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockText$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockUnknown.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockUnknown$1), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockVerticalDivider.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockVerticalDivider), true ? void 0 : void 0, import.meta.url),
21122"../components/block/CoreBlockVideo.vue": () => __vitePreload(() => Promise.resolve().then(() => CoreBlockVideo), true ? void 0 : void 0, import.meta.url)
21122 }), `../components/block/${componentName}.vue`, 4); 21123 } 21124 componentModule.value = markRaw( 21125 fallbackModule.default || fallbackModule 21126 ); 21127 } catch (error) { 21128 const unknownModule = await __vitePreload(() => Promise.resolve().then(() => CoreBlockUnknown$1), true ? void 0 : void 0, import.meta.url); 21129 componentModule.value = markRaw( 21130 unknownModule.default || unknownModule 21131 ); 21132 } 21133 } 21134 } 21135 watch( 21136 () => props.settings.type, 21137 () => { 21138 loadComponent(); 21139 } 21140 ); 21141 if (useBrandSpecificComponents) { 21142 onMounted(() => { 21143 loadComponent(); 21144 }); 21145 watch( 21146 () => { 21147 var _a, _b; 21148 return (_b = (_a = store.state) == null ? void 0 : _a.brand) == null ? void 0 : _b.id; 21149 }, 21150 () => { 21151 setTimeout(() => { 21152 loadComponent(); 21153 }, 100); 21154 } 21155 ); 21156 } else if (props.settings) { 21157 componentModule.value = markRaw( 21158 resolveComponent(getBlockComponent(props)) 21159 ); 21160 } 21161 return { 21162 componentModule 21163 }; 21164} 21165function useEmptyComponent(settings) { 21166 const store = useStore(); 21167 const { getters } = store; 21168 const classes = ref([]); 21169 const emptyContainers = computed( 21170 () => getters["complianceAgent/getEmptyContainers"] 21171 ); 21172 const isEmptyComponent = computed( 21173 () => { 21174 var _a; 21175 return (_a = emptyContainers.value) == null ? void 0 : _a.some((block) => block.id && block.id === settings.id); 21176 } 21177 ); 21178 function updateClasses() { 21179 if (isEmptyComponent.value) { 21180 classes.value = ["block_empty"]; 21181 } else { 21182 classes.value = []; 21183 } 21184 } 21185 watch( 21186 emptyContainers, 21187 () => { 21188 updateClasses(); 21189 }, 21190 { immediate: true } 21191 ); 21192 return { 21193 classes 21194 }; 21195} 21196const SURFACE_BLOCK_TYPES = ["hero", "heroComponent", "contact-hero"]; 21197const DISTRIBUTING_BLOCK_TYPES = ["columns", "grid"]; 21198const MEDIA_BLEED_DEFER_BLOCK_TYPES = [ 21199 "rows", 21200 "container", 21201 ...DISTRIBUTING_BLOCK_TYPES 21202]; 21203const CONDITIONALLY_HIDDEN_CHILD_LAYOUTS = [ 21204 "carousel", 21205 "carousel-hero", 21206 "toggle", 21207 "tabbed" 21208]; 21209const NAV_HIDDEN_BLOCK_TYPES = ["breadcrumbs"]; 21210function useBlockNavOffset(props) { 21211 const store = useStore(); 21212 const isFirstPageLevelBlock = computed(() => !!props.isFirstPageLevelBlock); 21213 const isFirstPageLevelPosition = computed( 21214 () => !!props.isFirstPageLevelPosition 21215 ); 21216 const siteRecord = computed(() => { 21217 var _a; 21218 const state = store == null ? void 0 : store.state; 21219 return ((_a = state == null ? void 0 : state.site) == null ? void 0 : _a.workingSite) ?? (state == null ? void 0 : state.site); 21220 }); 21221 const getFeatureFlag = (flagName) => { 21222 var _a, _b; 21223 return ((_b = (_a = store == null ? void 0 : store.getters) == null ? void 0 : _a["settings/getFeatureFlag"]) == null ? void 0 : _b.call(_a, flagName)) === true; 21224 }; 21225 const navOffsetStyle = computed(() => { 21226 var _a, _b; 21227 if (props.isEditable) return null; 21228 return resolveNavOffsetStyle( 21229 (_b = (_a = siteRecord.value) == null ? void 0 : _a.navigation) == null ? void 0 : _b.navStyle, 21230 getFeatureFlag 21231 ); 21232 }); 21233 const isNavOffsetActive = computed(() => navOffsetStyle.value !== null); 21234 const navBarHeightSize = computed(() => { 21235 var _a, _b; 21236 if (!getFeatureFlag("NavBarEnhancements")) return null; 21237 return ((_b = (_a = siteRecord.value) == null ? void 0 : _a.navigation) == null ? void 0 : _b.navBarHeight) || null; 21238 }); 21239 const isStackedRightNav = computed( 21240 () => { 21241 var _a, _b; 21242 return !!((_b = (_a = siteRecord.value) == null ? void 0 : _a.navigation) == null ? void 0 : _b.stackedRight) && getFeatureFlag("BuilderEnhStackedRightNavigation"); 21243 } 21244 ); 21245 const hasSurface = computed(() => blockHasOwnSurface(props.settings)); 21246 const dataDictionary = computed(() => { 21247 var _a; 21248 return (_a = siteRecord.value) == null ? void 0 : _a.dataDictionary; 21249 }); 21250 const firstVisibleChild = computed( 21251 () => { 21252 var _a; 21253 return firstVisibleBlock( 21254 (_a = props.settings) == null ? void 0 : _a.blocks, 21255 dataDictionary.value, 21256 isNavOffsetActive.value 21257 ); 21258 } 21259 ); 21260 const isFirstEligibleChild = (childSettings) => isSameBlock(childSettings, firstVisibleChild.value); 21261 const firstStructuralChild = computed( 21262 () => { 21263 var _a; 21264 return firstVisibleBlock((_a = props.settings) == null ? void 0 : _a.blocks, dataDictionary.value, false); 21265 } 21266 ); 21267 const isFirstEligibleChildForPosition = (childSettings) => isSameBlock(childSettings, firstStructuralChild.value);
21268 const firstChildChainSome = (predicate, canDescend = () => true) => { 21269 const childrenOf = (blockSettings) => { 21270 if (!blockSettings) return []; 21271 if (DISTRIBUTING_BLOCK_TYPES.includes(blockSettings.type)) { 21272 return visibleChildren( 21273 blockSettings.blocks, 21274 dataDictionary.value, 21275 isNavOffsetActive.value 21276 ); 21277 } 21278 const child = firstVisibleBlock( 21279 blockSettings.blocks, 21280 dataDictionary.value, 21281 isNavOffsetActive.value 21282 ); 21283 return child ? [child] : []; 21284 }; 21285 const walk = (blockSettings) => childrenOf(blockSettings).some((child) => { 21286 if (predicate(child)) return true; 21287 if (!canDescend(child)) return false; 21288 return walk(child); 21289 }); 21290 return walk(props.settings); 21291 }; 21292 const canDeferFromThisBlock = computed( 21293 () => canDeferToMediaBleedBlock(props.settings) 21294 ); 21295 const firstChildChainHasSurface = computed( 21296 () => canDeferFromThisBlock.value && firstChildChainSome(blockHasOwnSurface) 21297 ); 21298 const firstChildChainHasMediaBleedBlock = computed( 21299 () => canDeferFromThisBlock.value && firstChildChainSome(isMediaBleedBlock, canDeferToMediaBleedBlock) 21300 ); 21301 const applyOffset = computed(() => { 21302 return isFirstPageLevelBlock.value && isNavOffsetActive.value; 21303 }); 21304 const hasBackgroundImageSurface = computed( 21305 () => blockHasBackgroundImageSurface(props.settings) 21306 ); 21307 const offsetMode = computed(() => { 21308 if (!applyOffset.value) return "none"; 21309 if (firstChildChainHasMediaBleedBlock.value && !hasBackgroundImageSurface.value) 21310 return "none"; 21311 if (hasSurface.value) return "inset"; 21312 if (firstChildChainHasSurface.value) return "none"; 21313 return "reserve"; 21314 }); 21315 const insetsOwnContent = computed(() => offsetMode.value === "inset"); 21316 const shouldDeferToChildren = computed( 21317 () => applyOffset.value && offsetMode.value === "none" 21318 ); 21319 const distributesToChildren = computed( 21320 () => { 21321 var _a; 21322 return shouldDeferToChildren.value && DISTRIBUTING_BLOCK_TYPES.includes((_a = props.settings) == null ? void 0 : _a.type); 21323 } 21324 ); 21325 const isFirstPageLevelBlockFor = (childSettings) => { 21326 if (!shouldDeferToChildren.value) return false; 21327 if (distributesToChildren.value) { 21328 return isBlockVisible(childSettings, dataDictionary.value, false); 21329 } 21330 return isFirstEligibleChild(childSettings); 21331 }; 21332 const isFirstPageLevelPositionFor = (childSettings) => isFirstPageLevelPosition.value && isFirstEligibleChildForPosition(childSettings); 21333 const isNavHidden = computed( 21334 () => { 21335 var _a; 21336 return isFirstPageLevelPosition.value && isNavOffsetActive.value && NAV_HIDDEN_BLOCK_TYPES.includes((_a = props.settings) == null ? void 0 : _a.type); 21337 } 21338 ); 21339 return { 21340 isFirstPageLevelBlock, 21341 isFirstPageLevelPosition, 21342 navOffsetStyle, 21343 isNavOffsetActive, 21344 hasSurface, 21345 insetsOwnContent, 21346 applyOffset, 21347 navBarHeightSize, 21348 isStackedRightNav, 21349 offsetMode, 21350 shouldDeferToChildren, 21351 distributesToChildren, 21352 isFirstEligibleChild, 21353 isFirstPageLevelBlockFor, 21354 isFirstPageLevelPositionFor, 21355 isNavHidden 21356 }; 21357} 21358function isSameBlock(a, b2) { 21359 if (!a || !b2) return false; 21360 if (a === b2) return true; 21361 return !!a.id && !!b2.id && a.id === b2.id; 21362} 21363function isBlockVisible(settings, dataDictionary, isNavOffsetActive) { 21364 const field = settings == null ? void 0 : settings.conditionalDisplay; 21365 const value = field && dataDictionary ? dataDictionary[field] : void 0; 21366 const conditionallyVisible = typeof value === "boolean" ? value : true; 21367 if (!conditionallyVisible) return false; 21368 if (isNavOffsetActive && NAV_HIDDEN_BLOCK_TYPES.includes(settings == null ? void 0 : settings.type)) { 21369 return false; 21370 } 21371 return true; 21372} 21373function visibleChildren(blocks, dataDictionary, isNavOffsetActive) { 21374 if (!Array.isArray(blocks)) return []; 21375 return blocks.filter( 21376 (block) => isBlockVisible(block, dataDictionary, isNavOffsetActive) 21377 ); 21378} 21379function firstVisibleBlock(blocks, dataDictionary, isNavOffsetActive) { 21380 return visibleChildren(blocks, dataDictionary, isNavOffsetActive)[0]; 21381} 21382function resolveNavOffsetStyle(navStyle, getFeatureFlag) { 21383 const style = navStyle || "standard"; 21384 if (style === "floating" && getFeatureFlag("FloatingNavigation") && getFeatureFlag("FloatingNavContentAdjustment")) { 21385 return "floating"; 21386 } 21387 if (style === "transparent" && getFeatureFlag("BuilderEnhTransparentNavigation")) { 21388 return "transparent";
21389 } 21390 return null; 21391} 21392function getFirstEligiblePageBlockIndex(blocks, dataDictionary, isNavOffsetActive) { 21393 if (!Array.isArray(blocks)) return -1; 21394 return blocks.findIndex( 21395 (block) => isBlockVisible(block, dataDictionary, isNavOffsetActive) 21396 ); 21397} 21398function blockHasOwnSurface(settings) { 21399 settings = settings || {}; 21400 const variants = settings.variants || {}; 21401 if (SURFACE_BLOCK_TYPES.includes(settings.type)) return true; 21402 if (settings.backgroundMediaSrc || settings.heroBackgroundMediaSrc) 21403 return true; 21404 if (variants.gradient) return true; 21405 if (settings["overlay-toggle"] || settings["gradient-toggle"]) return true; 21406 const bgColor = variants["bg-color"]; 21407 if (bgColor && bgColor !== "transparent") return true; 21408 return isMediaBleedBlock(settings); 21409} 21410function blockHasBackgroundImageSurface(settings) { 21411 settings = settings || {}; 21412 if (resolveMediaSrc(settings.backgroundMediaSrc)) return true; 21413 if (resolveMediaSrc(settings.heroBackgroundMediaSrc)) return true; 21414 if (settings.type === "grid" && resolveMediaSrc(settings.image)) 21415 return true; 21416 return false; 21417} 21418const MEDIA_BLEED_BLOCK_TYPES = { 21419 "content-card": (settings) => settings.media, 21420 image: (settings) => settings.src, 21421 grid: (settings) => settings.image 21422}; 21423function canDeferToMediaBleedBlock(settings) { 21424 var _a; 21425 if (!MEDIA_BLEED_DEFER_BLOCK_TYPES.includes(settings == null ? void 0 : settings.type)) return false; 21426 if (settings.hasAccordion) return false; 21427 return !CONDITIONALLY_HIDDEN_CHILD_LAYOUTS.includes( 21428 (_a = settings.variants) == null ? void 0 : _a.layout 21429 ); 21430} 21431function resolveMediaSrc(media) { 21432 return typeof media === "string" ? media : media == null ? void 0 : media.src; 21433} 21434function isMediaBleedBlock(settings) { 21435 const getMedia = MEDIA_BLEED_BLOCK_TYPES[settings == null ? void 0 : settings.type]; 21436 if (!getMedia) return false; 21437 return !!resolveMediaSrc(getMedia(settings)); 21438} 21439const ANIMATION_STYLE_FADE = "fade"; 21440const ANIMATION_STYLE_SCALE = "scale"; 21441const ANIMATION_STYLE_SLIDE = "slide"; 21442const ANIMATION_SPEED_SLOW = "slow"; 21443const ANIMATION_SPEED_MEDIUM = "medium"; 21444const ANIMATION_SPEED_FAST = "fast"; 21445const ANIMATION_SPEED_DURATIONS = { 21446 [ANIMATION_SPEED_SLOW]: 1.5, 21447 [ANIMATION_SPEED_MEDIUM]: 0.9, 21448 [ANIMATION_SPEED_FAST]: 0.6 21449}; 21450const DEFAULT_ANIMATION_SPEED = ANIMATION_SPEED_MEDIUM; 21451const SCROLL_ANIMATION_EXCLUDED_KEY = "scrollAnimationExcluded"; 21452const _scrollAnimationsSuppressed = ref(false); 21453const scrollAnimationsSuppressed = readonly(_scrollAnimationsSuppressed); 21454const VALID_ANIMATION_STYLES = /* @__PURE__ */ new Set([ 21455 ANIMATION_STYLE_FADE, 21456 ANIMATION_STYLE_SCALE, 21457 ANIMATION_STYLE_SLIDE 21458]); 21459function normalizeAnimationStyle(value) { 21460 if (value && VALID_ANIMATION_STYLES.has(value)) { 21461 return value; 21462 } 21463 return null; 21464} 21465function normalizeAnimationSpeed(value) {
21466 if (value && Object.prototype.hasOwnProperty.call(ANIMATION_SPEED_DURATIONS, value)) { 21467 return value; 21468 } 21469 return DEFAULT_ANIMATION_SPEED; 21470} 21471function isAnimationEnabled(style) { 21472 return normalizeAnimationStyle(style) !== null; 21473} 21474function unwrapSiteRecord(site) { 21475 if (!site || typeof site !== "object") { 21476 return null; 21477 } 21478 if ("value" in site && site.value && typeof site.value === "object") { 21479 return site.value; 21480 } 21481 return site; 21482} 21483function getSiteAnimationSettingsFromRecord(site) { 21484 const record = unwrapSiteRecord(site); 21485 if (!record) { 21486 return {}; 21487 } 21488 return { 21489 animationStyle: record.animationStyle ?? record.AnimationStyle, 21490 animationSpeed: record.animationSpeed ?? record.AnimationSpeed, 21491 animationEnabledOnMobile: record.animationEnabledOnMobile ?? record.AnimationEnabledOnMobile ?? false 21492 }; 21493} 21494const SCROLL_ANIMATION_CONTAINER_TYPES = /* @__PURE__ */ new Set([ 21495 "rows", 21496 "columns", 21497 "grid", 21498 "container", 21499 "section", 21500 "accordion", 21501 "tabs", 21502 "toggle", 21503 "content-card", 21504 "repeat", 21505 "footer", 21506 "divider", 21507 "breadcrumbs", 21508 "stickyButton", 21509 "pencil-banner", 21510 "calculators", 21511 "article", 21512 "calendly", 21513 "calendlyEmbed", 21514 "select", 21515 "anchor-link-nav" 21516]); 21517const SCROLL_ANIMATION_CONTENT_TYPES = /* @__PURE__ */ new Set([ 21518 "text", 21519 "rich-text", 21520 "button", 21521 "image", 21522 "media", 21523 "video", 21524 "icon", 21525 "map", 21526 "social-links", 21527 "oembed", 21528 "frameEmbed", 21529 "file", 21530 "html" 21531]); 21532const SCROLL_ANIMATION_WHOLE_BLOCK_TYPES = /* @__PURE__ */ new Set([ 21533 "articles", 21534 "form", 21535 "hero", 21536 "heroComponent", 21537 "contact-hero", 21538 "contact-card" 21539]); 21540function isScrollAnimatableBlockType(blockType) { 21541 if (!blockType) { 21542 return false; 21543 } 21544 if (SCROLL_ANIMATION_WHOLE_BLOCK_TYPES.has(blockType)) { 21545 return true; 21546 } 21547 if (SCROLL_ANIMATION_CONTAINER_TYPES.has(blockType)) { 21548 return false; 21549 } 21550 return SCROLL_ANIMATION_CONTENT_TYPES.has(blockType); 21551} 21552function useReducedMotion() { 21553 const prefersReducedMotion = ref( 21554 typeof window !== "undefined" ? window.matchMedia("(prefers-reduced-motion: reduce)").matches : false 21555 ); 21556 let mediaQuery = null; 21557 onMounted(() => { 21558 mediaQuery = window.matchMedia("(prefers-reduced-motion: reduce)"); 21559 if (mediaQuery) { 21560 prefersReducedMotion.value = mediaQuery.matches; 21561 mediaQuery.addEventListener("change", handleReducedMotionChange); 21562 } 21563 }); 21564 onUnmounted(() => { 21565 if (mediaQuery) 21566 mediaQuery.removeEventListener("change", handleReducedMotionChange); 21567 }); 21568 function handleReducedMotionChange(event) { 21569 prefersReducedMotion.value = event.matches; 21570 } 21571 return { prefersReducedMotion }; 21572} 21573const BREAKPOINT_MD = 768; 21574const BREAKPOINT_LG = 992; 21575const BREAKPOINT_XL = 1280; 21576const MOBILE_PREVIEW_WIDTH_PX = 390; 21577function useIsMobile(props = {}, options = {}) { 21578 const { widthValue = null, heightValue = null } = options; 21579 const breakpoint = BREAKPOINT_LG; 21580 const isMobile = ref(false); 21581 const windowWidth = ref(window.innerWidth); 21582 function checkIfMobile() { 21583 isMobile.value = !window.matchMedia(`(min-width: ${breakpoint}px)`).matches; 21584 } 21585 function setWindowWidth() { 21586 windowWidth.value = window.innerWidth; 21587 } 21588 function handleResize() { 21589 setWindowWidth(); 21590 checkIfMobile(); 21591 } 21592 { 21593 onMounted(() => { 21594 handleResize(); 21595 window.addEventListener("resize", handleResize); 21596 }); 21597 onBeforeUnmount(() => { 21598 window.removeEventListener("resize", handleResize); 21599 }); 21600 } 21601 const store = useStore(); 21602 const { state } = store; 21603 const mobileSettingsFF = computed( 21604 () => { 21605 var _a, _b; 21606 return (_b = (_a = state == null ? void 0 : state.settings) == null ? void 0 : _a.featureFlags) == null ? void 0 : _b.MobileSettings; 21607 } 21608 ); 21609 const isMobileView = computed(() => { 21610 return isMobile.value || props.isBuilderMobile; 21611 }); 21612 const viewportWidth = computed(() => { 21613 if (props.isBuilderMobile) { 21614 return MOBILE_PREVIEW_WIDTH_PX; 21615 } 21616 if (typeof window !== "undefined") { 21617 return window.innerWidth; 21618 } 21619 return null; 21620 }); 21621 const calculateNumericWidth = (widthValue2) => { 21622 if (!mobileSettingsFF.value || !widthValue2) return void 0; 21623 let numericValue = null; 21624 if (typeof widthValue2 === "string") { 21625 const numericMatch = widthValue2.match(/^(\d+)/); 21626 if (numericMatch) { 21627 numericValue = parseInt(numericMatch[1], 10); 21628 } 21629 } else if (typeof widthValue2 === "number") { 21630 numericValue = widthValue2; 21631 } 21632 if (numericValue === null) return void 0; 21633 if (isMobileView.value) { 21634 const maxViewportWidth = viewportWidth.value || BREAKPOINT_MD; 21635 numericValue = Math.min(numericValue, maxViewportWidth); 21636 } 21637 return numericValue; 21638 }; 21639 const calculateNumericHeight = (widthNum, heightValue2, originalWidth) => { 21640 if (!mobileSettingsFF.value || !widthNum || !heightValue2) 21641 return void 0; 21642 let heightNum = null; 21643 let widthNumFromHeight = widthNum; 21644 if (typeof heightValue2 === "string") { 21645 const numericMatch = heightValue2.match(/^(\d+)/); 21646 if (numericMatch) { 21647 heightNum = parseInt(numericMatch[1], 10); 21648 } 21649 } else if (typeof heightValue2 === "number") { 21650 heightNum = heightValue2; 21651 } 21652 if (heightNum === null) return void 0; 21653 if (originalWidth) { 21654 if (typeof originalWidth === "string") { 21655 const widthMatch = originalWidth.match(/^(\d+)/); 21656 if (widthMatch) { 21657 widthNumFromHeight = parseInt(widthMatch[1], 10); 21658 } 21659 } else if (typeof originalWidth === "number") { 21660 widthNumFromHeight = originalWidth; 21661 } 21662 } 21663 if (typeof widthNumFromHeight === "number" && !isNaN(widthNumFromHeight) && widthNumFromHeight > 0 && heightNum) { 21664 const aspectRatio = heightNum / widthNumFromHeight; 21665 return Math.round(widthNum * aspectRatio); 21666 } 21667 return heightNum; 21668 }; 21669 const imageWidthNumeric = computed(() => { 21670 return calculateNumericWidth(widthValue == null ? void 0 : widthValue.value); 21671 }); 21672 const imageHeightNumeric = computed(() => { 21673 const widthNum = imageWidthNumeric.value; 21674 if (!widthNum || !(heightValue == null ? void 0 : heightValue.value)) return void 0; 21675 return calculateNumericHeight( 21676 widthNum, 21677 heightValue.value, 21678 widthValue == null ? void 0 : widthValue.value 21679 ); 21680 }); 21681 const imageSizes = computed(() => { 21682 if (!mobileSettingsFF.value) return void 0; 21683 return `(max-width: ${BREAKPOINT_LG}
21683px) 100vw, ${BREAKPOINT_XL}px`; 21684 }); 21685 return { 21686 isMobile, 21687 mobileSettingsFF, 21688 isMobileView, 21689 viewportWidth, 21690 imageWidthNumeric, 21691 imageHeightNumeric, 21692 imageSizes, 21693 calculateNumericWidth, 21694 calculateNumericHeight 21695 }; 21696} 21697const DEFAULT_ROOT_MARGIN = "0px 0px -10% 0px"; 21698const DEFAULT_THRESHOLD = 0; 21699const MOBILE_MEDIA_QUERY = `(max-width: ${BREAKPOINT_LG - 1}px)`; 21700const pendingRevealChecks = /* @__PURE__ */ new Set(); 21701let scrollFrameRequested = false; 21702let scrollListenersAttached = false; 21703const getViewportSize = () => { 21704 if (typeof window === "undefined") { 21705 return { height: 0, width: 0 }; 21706 } 21707 return { 21708 height: window.innerHeight || document.documentElement.clientHeight, 21709 width: window.innerWidth || document.documentElement.clientWidth 21710 }; 21711}; 21712const isPartiallyInViewport = (rect) => { 21713 if (!rect) { 21714 return false; 21715 } 21716 const { height, width } = getViewportSize(); 21717 return rect.bottom > 0 && rect.right > 0 && rect.top < height && rect.left < width; 21718}; 21719const getEntryRect = (entry) => { 21720 var _a, _b; 21721 return entry.boundingClientRect ?? ((_b = (_a = entry.target) == null ? void 0 : _a.getBoundingClientRect) == null ? void 0 : _b.call(_a)) ?? null; 21722}; 21723const runPendingRevealChecks = () => { 21724 scrollFrameRequested = false; 21725 pendingRevealChecks.forEach((check) => check()); 21726}; 21727const schedulePendingRevealChecks = () => { 21728 if (scrollFrameRequested || typeof window === "undefined") { 21729 return; 21730 } 21731 scrollFrameRequested = true; 21732 requestAnimationFrame(runPendingRevealChecks); 21733}; 21734const attachPendingRevealListeners = () => { 21735 if (scrollListenersAttached || typeof window === "undefined") { 21736 return; 21737 } 21738 scrollListenersAttached = true; 21739 window.addEventListener("scroll", schedulePendingRevealChecks, { 21740 passive: true 21741 }); 21742 window.addEventListener("resize", schedulePendingRevealChecks, { 21743 passive: true 21744 }); 21745}; 21746const passesAnimationGates = ({ 21747 enabled, 21748 siteAnimationsFeatureEnabled, 21749 isCompliance, 21750 prefersReducedMotion, 21751 resolvedStyle, 21752 isMobileViewport, 21753 siteMobileAnimationsEnabled 21754}) => { 21755 if (typeof window === "undefined") return false; 21756 if (!unref(enabled)) return false; 21757 if (prefersReducedMotion.value) return false; 21758 if (!unref(siteAnimationsFeatureEnabled)) return false; 21759 if (unref(isCompliance)) return false; 21760 if (scrollAnimationsSuppressed.value) return false; 21761 if (!isAnimationEnabled(resolvedStyle.value)) return false; 21762 if (isMobileViewport.value && !unref(siteMobileAnimationsEnabled)) { 21763 return false; 21764 } 21765 return true; 21766}; 21767const isElementVisibleForPreview = (element, root2) => { 21768 if (!element || typeof window === "undefined") { 21769 return false; 21770 } 21771 const rect = element.getBoundingClientRect(); 21772 if (!isPartiallyInViewport(rect)) { 21773 return false; 21774 } 21775 const rootElement = unref(root2); 21776 if (!rootElement) { 21777 return true; 21778 } 21779 const rootRect = rootElement.getBoundingClientRect(); 21780 return !(rect.bottom <= rootRect.top || rect.top >= rootRect.bottom || rect.right <= rootRect.left || rect.left >= rootRect.right); 21781}; 21782function useScrollAnimation(elementRef, options = {}) { 21783 const { 21784 enabled = true, 21785 animationStyle = null, 21786 animationSpeed = "medium", 21787 isEditable = false, 21788 isCompliance = false, 21789 siteAnimationsFeatureEnabled = true, 21790 siteMobileAnimationsEnabled = false, 21791 isBuilderMobile = false, 21792 builderPreviewToken = 0, 21793 builderPreviewRoot = null, 21794 rootMargin = DEFAULT_ROOT_MARGIN, 21795 threshold = DEFAULT_THRESHOLD 21796 } = options; 21797 const isIntersecting = ref(false); 21798 const hasBeenRevealed = ref(false); 21799 const revealGeneration = ref(0); 21800 const showBuilderPreviewClasses = ref(false); 21801 const { prefersReducedMotion } = useReducedMotion(); 21802 const isMobile = ref(false); 21803 let mobileMediaQuery = null; 21804 const handleMobileMediaChange = (event) => { 21805 isMobile.value = event.matches; 21806 }; 21807 let observer = null; 21808 const resolvedStyle = computed( 21809 () => normalizeAnimationStyle(unref(animationStyle)) 21810 ); 21811 const resolvedSpeed = computed( 21812 () => normalizeAnimationSpeed(unref(animationSpeed)) 21813 ); 21814 const isMobileViewport = computed( 21815 () => unref(isBuilderMobile) || isMobile.value 21816 ); 21817 const animationGateOptions = computed(() => ({ 21818 enabled, 21819 siteAnimationsFeatureEnabled, 21820 isCompliance, 21821 prefersReducedMotion, 21822 resolvedStyle, 21823 isMobileViewport, 21824 siteMobileAnimationsEnabled 21825 })); 21826 const isBuilderPreviewMode = computed( 21827 () => unref(isEditable) && passesAnimationGates(animationGateOptions.value) 21828 ); 21829 const shouldRunScrollAnimations = computed(() => { 21830 if (unref(isEditable)) return false;
21831 return passesAnimationGates(animationGateOptions.value); 21832 }); 21833 const shouldRunAnimations = computed( 21834 () => shouldRunScrollAnimations.value || isBuilderPreviewMode.value && showBuilderPreviewClasses.value 21835 ); 21836 const shouldRenderInitialPendingState = computed( 21837 () => typeof window === "undefined" && unref(enabled) && unref(siteAnimationsFeatureEnabled) && !unref(isCompliance) && isAnimationEnabled(resolvedStyle.value) && unref(siteMobileAnimationsEnabled) 21838 ); 21839 const scrollAnimationClasses = computed(() => { 21840 if (!shouldRunAnimations.value && !shouldRenderInitialPendingState.value) { 21841 return []; 21842 } 21843 const style = resolvedStyle.value; 21844 const classes = [ 21845 "site-scroll-animate", 21846 `site-scroll-animate--${style}` 21847 ]; 21848 if (isIntersecting.value) { 21849 classes.push("site-scroll-animate--visible"); 21850 classes.push( 21851 `site-scroll-animate--reveal-${revealGeneration.value}` 21852 ); 21853 } else { 21854 classes.push("site-scroll-animate--pending"); 21855 } 21856 return classes; 21857 }); 21858 const resetReveal = () => { 21859 hasBeenRevealed.value = false; 21860 isIntersecting.value = false; 21861 }; 21862 const markRevealed = () => { 21863 if (hasBeenRevealed.value && isIntersecting.value) { 21864 return; 21865 } 21866 hasBeenRevealed.value = true; 21867 revealGeneration.value += 1; 21868 isIntersecting.value = true; 21869 }; 21870 const syncViewportState = (rect) => { 21871 if (!rect) { 21872 return; 21873 } 21874 if (isPartiallyInViewport(rect)) { 21875 if (!hasBeenRevealed.value) { 21876 markRevealed(); 21877 } 21878 return; 21879 } 21880 if (hasBeenRevealed.value || isIntersecting.value) { 21881 resetReveal(); 21882 } 21883 }; 21884 const syncViewportFromElement = () => { 21885 if (!shouldRunScrollAnimations.value) { 21886 return; 21887 } 21888 const element = elementRef.value; 21889 if (!element) { 21890 return; 21891 } 21892 syncViewportState(element.getBoundingClientRect()); 21893 }; 21894 const destroyObserver = () => { 21895 if (observer) { 21896 observer.disconnect(); 21897 observer = null; 21898 } 21899 }; 21900 const syncIntersectionState = (element) => { 21901 if (!element || typeof window === "undefined") { 21902 return; 21903 } 21904 syncViewportState(element.getBoundingClientRect()); 21905 }; 21906 const updateIntersectionFromEntry = (entry) => { 21907 if (entry.isIntersecting) { 21908 if (!hasBeenRevealed.value) { 21909 markRevealed(); 21910 } 21911 return; 21912 } 21913 syncViewportState(getEntryRect(entry)); 21914 }; 21915 const initObserver = async () => { 21916 destroyObserver(); 21917 if (!shouldRunScrollAnimations.value || !elementRef.value) { 21918 return; 21919 } 21920 await nextTick(); 21921 const element = elementRef.value; 21922 if (!shouldRunScrollAnimations.value || !element) { 21923 return; 21924 } 21925 syncIntersectionState(element); 21926 observer = new IntersectionObserver( 21927 (entries) => { 21928 entries.forEach((entry) => { 21929 if (entry.target === elementRef.value) { 21930 updateIntersectionFromEntry(entry); 21931 } 21932 }); 21933 }, 21934 { rootMargin, threshold } 21935 ); 21936 observer.observe(element); 21937 syncViewportFromElement(); 21938 }; 21939 const runBuilderPreview = async (token) => { 21940 if (!isBuilderPreviewMode.value || !token) { 21941 showBuilderPreviewClasses.value = false; 21942 isIntersecting.value = true; 21943 return; 21944 } 21945 await nextTick(); 21946 const element = elementRef.value; 21947 if (!element || !isElementVisibleForPreview(element, builderPreviewRoot)) { 21948 showBuilderPreviewClasses.value = false; 21949 isIntersecting.value = true; 21950 return; 21951 } 21952 showBuilderPreviewClasses.value = true; 21953 isIntersecting.value = false; 21954 await nextTick(); 21955 requestAnimationFrame(() => { 21956 if (unref(builderPreviewToken) === token) { 21957 isIntersecting.value = true; 21958 } 21959 }); 21960 }; 21961 onMounted(async () => { 21962 if (typeof window !== "undefined") { 21963 mobileMediaQuery = window.matchMedia(MOBILE_MEDIA_QUERY); 21964 isMobile.value = mobileMediaQuery.matches; 21965 mobileMediaQuery.addEventListener( 21966 "change", 21967 handleMobileMediaChange 21968 ); 21969 } 21970 pendingRevealChecks.add(syncViewportFromElement); 21971 attachPendingRevealListeners(); 21972 if (shouldRunScrollAnimations.value) {
21973 await initObserver(); 21974 } else { 21975 isIntersecting.value = true; 21976 } 21977 }); 21978 onBeforeUnmount(() => { 21979 pendingRevealChecks.delete(syncViewportFromElement); 21980 if (mobileMediaQuery) { 21981 mobileMediaQuery.removeEventListener( 21982 "change", 21983 handleMobileMediaChange 21984 ); 21985 } 21986 destroyObserver(); 21987 }); 21988 watch(shouldRunScrollAnimations, (active) => { 21989 if (active) { 21990 initObserver(); 21991 } else { 21992 destroyObserver(); 21993 if (!showBuilderPreviewClasses.value) { 21994 isIntersecting.value = true; 21995 } 21996 } 21997 }); 21998 watch( 21999 () => elementRef.value, 22000 (element, previous) => { 22001 if (element === previous) { 22002 return; 22003 } 22004 if (shouldRunScrollAnimations.value) { 22005 initObserver(); 22006 } else if (!element) { 22007 resetReveal(); 22008 } 22009 } 22010 ); 22011 watch( 22012 () => unref(builderPreviewToken), 22013 (token) => { 22014 runBuilderPreview(token); 22015 } 22016 ); 22017 watch(isBuilderPreviewMode, (active) => { 22018 if (!active) { 22019 showBuilderPreviewClasses.value = false; 22020 isIntersecting.value = true; 22021 } 22022 }); 22023 return { 22024 scrollAnimationClasses, 22025 shouldRunAnimations, 22026 isIntersecting, 22027 animationDurationSeconds: computed( 22028 () => ANIMATION_SPEED_DURATIONS[resolvedSpeed.value] 22029 ) 22030 }; 22031} 22032var freeGlobal = typeof global == "object" && global && global.Object === Object && global; 22033var freeSelf = typeof self == "object" && self && self.Object === Object && self; 22034var root = freeGlobal || freeSelf || Function("return this")(); 22035var Symbol$1 = root.Symbol; 22036var objectProto$d = Object.prototype; 22037var hasOwnProperty$a = objectProto$d.hasOwnProperty; 22038var nativeObjectToString$1 = objectProto$d.toString; 22039var symToStringTag$1 = Symbol$1 ? Symbol$1.toStringTag : void 0; 22040function getRawTag(value) { 22041 var isOwn = hasOwnProperty$a.call(value, symToStringTag$1), tag = value[symToStringTag$1]; 22042 try { 22043 value[symToStringTag$1] = void 0; 22044 var unmasked = true; 22045 } catch (e) { 22046 } 22047 var result = nativeObjectToString$1.call(value); 22048 if (unmasked) { 22049 if (isOwn) { 22050 value[symToStringTag$1] = tag; 22051 } else { 22052 delete value[symToStringTag$1]; 22053 } 22054 } 22055 return result; 22056} 22057var objectProto$c = Object.prototype; 22058var nativeObjectToString = objectProto$c.toString; 22059function objectToString(value) { 22060 return nativeObjectToString.call(value); 22061} 22062var nullTag = "[object Null]", undefinedTag = "[object Undefined]"; 22063var symToStringTag = Symbol$1 ? Symbol$1.toStringTag : void 0; 22064function baseGetTag(value) { 22065 if (value == null) { 22066 return value === void 0 ? undefinedTag : nullTag; 22067 } 22068 return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value); 22069} 22070function isObjectLike$2(value) { 22071 return value != null && typeof value == "object"; 22072} 22073var symbolTag$2 = "[object Symbol]"; 22074function isSymbol(value) { 22075 return typeof value == "symbol" || isObjectLike$2(value) && baseGetTag(value) == symbolTag$2; 22076} 22077function arrayMap(array, iteratee) { 22078 var index2 = -1, length = array == null ? 0 : array.length, result = Array(length); 22079 while (++index2 < length) { 22080 result[index2] = iteratee(array[index2], index2, array); 22081 } 22082 return result; 22083} 22084var isArray = Array.isArray; 22085var symbolProto$1 = Symbol$1 ? Symbol$1.prototype : void 0, symbolToString = symbolProto$1 ? symbolProto$1.toString : void 0; 22086function baseToString(value) { 22087 if (typeof value == "string") { 22088 return value; 22089 } 22090 if (isArray(value)) { 22091 return arrayMap(value, baseToString) + ""; 22092 } 22093 if (isSymbol(value)) { 22094 return symbolToString ? symbolToString.call(value) : ""; 22095 } 22096 var result = value + ""; 22097 return result == "0" && 1 / value == -Infinity ? "-0" : result; 22098} 22099var reWhitespace = /\s/; 22100function trimmedEndIndex(string) { 22101 var index2 = string.length; 22102 while (index2-- && reWhitespace.test(string.charAt(index2))) { 22103 } 22104 return index2; 22105} 22106var reTrimStart = /^\s+/; 22107function baseTrim(string) { 22108 return string ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, "") : string; 22109} 22110function isObject$1(value) { 22111 var type = typeof value; 22112 return value != null && (type == "object" || type == "function"); 22113} 22114var NAN = 0 / 0; 22115var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
22116var reIsBinary = /^0b[01]+$/i; 22117var reIsOctal = /^0o[0-7]+$/i; 22118var freeParseInt = parseInt; 22119function toNumber$1(value) { 22120 if (typeof value == "number") { 22121 return value; 22122 } 22123 if (isSymbol(value)) { 22124 return NAN; 22125 } 22126 if (isObject$1(value)) { 22127 var other = typeof value.valueOf == "function" ? value.valueOf() : value; 22128 value = isObject$1(other) ? other + "" : other; 22129 } 22130 if (typeof value != "string") { 22131 return value === 0 ? value : +value; 22132 } 22133 value = baseTrim(value); 22134 var isBinary = reIsBinary.test(value); 22135 return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value; 22136} 22137function identity(value) { 22138 return value; 22139} 22140var asyncTag = "[object AsyncFunction]", funcTag$2 = "[object Function]", genTag$1 = "[object GeneratorFunction]", proxyTag = "[object Proxy]"; 22141function isFunction(value) { 22142 if (!isObject$1(value)) { 22143 return false; 22144 } 22145 var tag = baseGetTag(value); 22146 return tag == funcTag$2 || tag == genTag$1 || tag == asyncTag || tag == proxyTag; 22147} 22148var coreJsData = root["__core-js_shared__"]; 22149var maskSrcKey = function() { 22150 var uid2 = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ""); 22151 return uid2 ? "Symbol(src)_1." + uid2 : ""; 22152}(); 22153function isMasked(func) { 22154 return !!maskSrcKey && maskSrcKey in func; 22155} 22156var funcProto$1 = Function.prototype; 22157var funcToString$1 = funcProto$1.toString; 22158function toSource(func) { 22159 if (func != null) { 22160 try { 22161 return funcToString$1.call(func); 22162 } catch (e) { 22163 } 22164 try { 22165 return func + ""; 22166 } catch (e) { 22167 } 22168 } 22169 return ""; 22170} 22171var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; 22172var reIsHostCtor = /^\[object .+?Constructor\]$/; 22173var funcProto = Function.prototype, objectProto$b = Object.prototype; 22174var funcToString = funcProto.toString; 22175var hasOwnProperty$9 = objectProto$b.hasOwnProperty; 22176var reIsNative = RegExp( 22177 "^" + funcToString.call(hasOwnProperty$9).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" 22178); 22179function baseIsNative(value) { 22180 if (!isObject$1(value) || isMasked(value)) { 22181 return false; 22182 } 22183 var pattern = isFunction(value) ? reIsNative : reIsHostCtor; 22184 return pattern.test(toSource(value)); 22185} 22186function getValue(object, key) { 22187 return object == null ? void 0 : object[key]; 22188} 22189function getNative(object, key) { 22190 var value = getValue(object, key); 22191 return baseIsNative(value) ? value : void 0; 22192} 22193var WeakMap$1 = getNative(root, "WeakMap"); 22194var metaMap = WeakMap$1 && new WeakMap$1(); 22195var objectCreate = Object.create; 22196var baseCreate = /* @__PURE__ */ function() { 22197 function object() { 22198 } 22199 return function(proto) { 22200 if (!isObject$1(proto)) { 22201 return {}; 22202 } 22203 if (objectCreate) { 22204 return objectCreate(proto); 22205 } 22206 object.prototype = proto; 22207 var result = new object(); 22208 object.prototype = void 0; 22209 return result; 22210 }; 22211}(); 22212function apply(func, thisArg, args) { 22213 switch (args.length) { 22214 case 0: 22215 return func.call(thisArg); 22216 case 1: 22217 return func.call(thisArg, args[0]); 22218 case 2: 22219 return func.call(thisArg, args[0], args[1]); 22220 case 3: 22221 return func.call(thisArg, args[0], args[1], args[2]); 22222 } 22223 return func.apply(thisArg, args); 22224} 22225function baseLodash() { 22226} 22227var MAX_ARRAY_LENGTH = 4294967295; 22228function LazyWrapper(value) { 22229 this.__wrapped__ = value; 22230 this.__actions__ = []; 22231 this.__dir__ = 1; 22232 this.__filtered__ = false; 22233 this.__iteratees__ = []; 22234 this.__takeCount__ = MAX_ARRAY_LENGTH; 22235 this.__views__ = []; 22236} 22237LazyWrapper.prototype = baseCreate(baseLodash.prototype); 22238LazyWrapper.prototype.constructor = LazyWrapper; 22239function noop() { 22240} 22241var getData = !metaMap ? noop : function(func) { 22242 return metaMap.get(func); 22243}; 22244var realNames = {}; 22245var objectProto$a = Object.prototype; 22246var hasOwnProperty$8 = objectProto$a.hasOwnProperty; 22247function getFuncName(func) { 22248 var result = func.name + "", array = realNames[result], length = hasOwnProperty$8.call(realNames, result) ? array.length : 0; 22249 while (length--) { 22250 var data = array[length], otherFunc = data.func; 22251 if (otherFunc == null || otherFunc == func) { 22252 return data.name; 22253 } 22254 } 22255 return result; 22256} 22257function LodashWrapper(value, chainAll) { 22258 this.__wrapped__ = value; 22259 this.__actions__ = []; 22260 this.__chain__ = !!chainAll; 22261 this.__index__ = 0; 22262 this.__values__ = void 0; 22263}
22264LodashWrapper.prototype = baseCreate(baseLodash.prototype); 22265LodashWrapper.prototype.constructor = LodashWrapper; 22266function copyArray(source, array) { 22267 var index2 = -1, length = source.length; 22268 array || (array = Array(length)); 22269 while (++index2 < length) { 22270 array[index2] = source[index2]; 22271 } 22272 return array; 22273} 22274function wrapperClone(wrapper) { 22275 if (wrapper instanceof LazyWrapper) { 22276 return wrapper.clone(); 22277 } 22278 var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__); 22279 result.__actions__ = copyArray(wrapper.__actions__); 22280 result.__index__ = wrapper.__index__; 22281 result.__values__ = wrapper.__values__; 22282 return result; 22283} 22284var objectProto$9 = Object.prototype; 22285var hasOwnProperty$7 = objectProto$9.hasOwnProperty; 22286function lodash(value) { 22287 if (isObjectLike$2(value) && !isArray(value) && !(value instanceof LazyWrapper)) { 22288 if (value instanceof LodashWrapper) { 22289 return value; 22290 } 22291 if (hasOwnProperty$7.call(value, "__wrapped__")) { 22292 return wrapperClone(value); 22293 } 22294 } 22295 return new LodashWrapper(value); 22296} 22297lodash.prototype = baseLodash.prototype; 22298lodash.prototype.constructor = lodash; 22299function isLaziable(func) { 22300 var funcName = getFuncName(func), other = lodash[funcName]; 22301 if (typeof other != "function" || !(funcName in LazyWrapper.prototype)) { 22302 return false; 22303 } 22304 if (func === other) { 22305 return true; 22306 } 22307 var data = getData(other); 22308 return !!data && func === data[0]; 22309} 22310var HOT_COUNT = 800, HOT_SPAN = 16; 22311var nativeNow = Date.now; 22312function shortOut(func) { 22313 var count = 0, lastCalled = 0; 22314 return function() { 22315 var stamp = nativeNow(), remaining = HOT_SPAN - (stamp - lastCalled); 22316 lastCalled = stamp; 22317 if (remaining > 0) { 22318 if (++count >= HOT_COUNT) { 22319 return arguments[0]; 22320 } 22321 } else { 22322 count = 0; 22323 } 22324 return func.apply(void 0, arguments); 22325 }; 22326} 22327function constant(value) { 22328 return function() { 22329 return value; 22330 }; 22331} 22332var defineProperty = function() { 22333 try { 22334 var func = getNative(Object, "defineProperty"); 22335 func({}, "", {}); 22336 return func; 22337 } catch (e) { 22338 } 22339}(); 22340var baseSetToString = !defineProperty ? identity : function(func, string) { 22341 return defineProperty(func, "toString", { 22342 "configurable": true, 22343 "enumerable": false, 22344 "value": constant(string), 22345 "writable": true 22346 }); 22347}; 22348var setToString = shortOut(baseSetToString); 22349function arrayEach(array, iteratee) { 22350 var index2 = -1, length = array == null ? 0 : array.length; 22351 while (++index2 < length) { 22352 if (iteratee(array[index2], index2, array) === false) { 22353 break; 22354 } 22355 } 22356 return array; 22357} 22358var MAX_SAFE_INTEGER$1 = 9007199254740991; 22359var reIsUint = /^(?:0|[1-9]\d*)$/; 22360function isIndex$1(value, length) { 22361 var type = typeof value; 22362 length = length == null ? MAX_SAFE_INTEGER$1 : length; 22363 return !!length && (type == "number" || type != "symbol" && reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length); 22364} 22365function baseAssignValue(object, key, value) { 22366 if (key == "__proto__" && defineProperty) { 22367 defineProperty(object, key, { 22368 "configurable": true, 22369 "enumerable": true, 22370 "value": value, 22371 "writable": true 22372 }); 22373 } else { 22374 object[key] = value; 22375 } 22376} 22377function eq(value, other) { 22378 return value === other || value !== value && other !== other; 22379} 22380var objectProto$8 = Object.prototype; 22381var hasOwnProperty$6 = objectProto$8.hasOwnProperty; 22382function assignValue(object, key, value) { 22383 var objValue = object[key]; 22384 if (!(hasOwnProperty$6.call(object, key) && eq(objValue, value)) || value === void 0 && !(key in object)) { 22385 baseAssignValue(object, key, value); 22386 } 22387} 22388var nativeMax = Math.max; 22389function overRest(func, start, transform) { 22390 start = nativeMax(start === void 0 ? func.length - 1 : start, 0); 22391 return function() { 22392 var args = arguments, index2 = -1, length = nativeMax(args.length - start, 0), array = Array(length); 22393 while (++index2 < length) { 22394 array[index2] = args[start + index2]; 22395 } 22396 index2 = -1; 22397 var otherArgs = Array(start + 1); 22398 while (++index2 < start) { 22399 otherArgs[index2] = args[index2]; 22400 } 22401 otherArgs[start] = transform(array); 22402 return apply(func, this, otherArgs); 22403 }; 22404} 22405var MAX_SAFE_INTEGER = 9007199254740991; 22406function isLength(value) { 22407 return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; 22408} 22409function isArrayLike(value) { 22410 return value != null && isLength(value.length) && !isFunction(value); 22411} 22412var objectProto$7 = Object.prototype; 22413function isPrototype(value) { 22414 var Ctor = value && value.constructor, proto = typeof Ctor == "function" && Ctor.prototype || objectProto$7; 22415 return value === proto; 22416} 22417function baseTimes(n, iteratee) { 22418 var index2 = -1, result = Array(n); 22419 while (++index2 < n) { 22420 result[index2] = iteratee(index2); 22421 } 22422 return result; 22423} 22424var argsTag$2 = "[object Arguments]"; 22425function baseIsArguments(value) { 22426 return isObjectLike$2(value) && baseGetTag(value) == argsTag$2; 22427} 22428var objectProto$6 = Object.prototype; 22429var hasOwnProperty$5 = objectProto$6.hasOwnProperty; 22430var propertyIsEnumerable$1 = objectProto$6.propertyIsEnumerable; 22431var isArguments = baseIsArguments(/* @__PURE__ */ function() { 22432 return arguments; 22433}()) ? baseIsArguments : function(value) { 22434 return isObjectLike$2(value) && hasOwnProperty$5.call(value, "callee") && !propertyIsEnumerable$1.call(value, "callee"); 22435}; 22436function stubFalse() { 22437 return false;
vendor: 6,534 bytes, lines 22438-22577
22438} 22439var freeExports$2 = typeof exports == "object" && exports && !exports.nodeType && exports; 22440var freeModule$2 = freeExports$2 && typeof module == "object" && module && !module.nodeType && module; 22441var moduleExports$2 = freeModule$2 && freeModule$2.exports === freeExports$2; 22442var Buffer$2 = moduleExports$2 ? root.Buffer : void 0; 22443var nativeIsBuffer = Buffer$2 ? Buffer$2.isBuffer : void 0; 22444var isBuffer = nativeIsBuffer || stubFalse; 22445var argsTag$1 = "[object Arguments]", arrayTag$1 = "[object Array]", boolTag$2 = "[object Boolean]", dateTag$2 = "[object Date]", errorTag$1 = "[object Error]", funcTag$1 = "[object Function]", mapTag$4 = "[object Map]", numberTag$2 = "[object Number]", objectTag$2 = "[object Object]", regexpTag$2 = "[object RegExp]", setTag$4 = "[object Set]", stringTag$2 = "[object String]", weakMapTag$2 = "[object WeakMap]"; 22446var arrayBufferTag$2 = "[object ArrayBuffer]", dataViewTag$3 = "[object DataView]", float32Tag$2 = "[object Float32Array]", float64Tag$2 = "[object Float64Array]", int8Tag$2 = "[object Int8Array]", int16Tag$2 = "[object Int16Array]", int32Tag$2 = "[object Int32Array]", uint8Tag$2 = "[object Uint8Array]", uint8ClampedTag$2 = "[object Uint8ClampedArray]", uint16Tag$2 = "[object Uint16Array]", uint32Tag$2 = "[object Uint32Array]"; 22447var typedArrayTags = {}; 22448typedArrayTags[float32Tag$2] = typedArrayTags[float64Tag$2] = typedArrayTags[int8Tag$2] = typedArrayTags[int16Tag$2] = typedArrayTags[int32Tag$2] = typedArrayTags[uint8Tag$2] = typedArrayTags[uint8ClampedTag$2] = typedArrayTags[uint16Tag$2] = typedArrayTags[uint32Tag$2] = true; 22449typedArrayTags[argsTag$1] = typedArrayTags[arrayTag$1] = typedArrayTags[arrayBufferTag$2] = typedArrayTags[boolTag$2] = typedArrayTags[dataViewTag$3] = typedArrayTags[dateTag$2] = typedArrayTags[errorTag$1] = typedArrayTags[funcTag$1] = typedArrayTags[mapTag$4] = typedArrayTags[numberTag$2] = typedArrayTags[objectTag$2] = typedArrayTags[regexpTag$2] = typedArrayTags[setTag$4] = typedArrayTags[stringTag$2] = typedArrayTags[weakMapTag$2] = false; 22450function baseIsTypedArray(value) { 22451 return isObjectLike$2(value) && isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; 22452} 22453function baseUnary(func) { 22454 return function(value) { 22455 return func(value); 22456 }; 22457} 22458var freeExports$1 = typeof exports == "object" && exports && !exports.nodeType && exports; 22459var freeModule$1 = freeExports$1 && typeof module == "object" && module && !module.nodeType && module; 22460var moduleExports$1 = freeModule$1 && freeModule$1.exports === freeExports$1; 22461var freeProcess = moduleExports$1 && freeGlobal.process; 22462var nodeUtil = function() { 22463 try { 22464 var types = freeModule$1 && freeModule$1.require && freeModule$1.require("util").types; 22465 if (types) { 22466 return types; 22467 } 22468 return freeProcess && freeProcess.binding && freeProcess.binding("util"); 22469 } catch (e) { 22470 } 22471}(); 22472var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; 22473var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; 22474var objectProto$5 = Object.prototype; 22475var hasOwnProperty$4 = objectProto$5.hasOwnProperty; 22476function arrayLikeKeys(value, inherited) { 22477 var isArr = isArray(value), isArg = !isArr && isArguments(value), isBuff = !isArr && !isArg && isBuffer(value), isType = !isArr && !isArg && !isBuff && isTypedArray(value), skipIndexes = isArr || isArg || isBuff || isType, result = skipIndexes ? baseTimes(value.length, String) : [], length = result.length; 22478 for (var key in value) { 22479 if (hasOwnProperty$4.call(value, key) && !(skipIndexes && // Safari 9 has enumerable `arguments.length` in strict mode. 22480 (key == "length" || // Node.js 0.10 has enumerable non-index properties on buffers. 22481 isBuff && (key == "offset" || key == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays. 22482 isType && (key == "buffer" || key == "byteLength" || key == "byteOffset") || // Skip index properties. 22483 isIndex$1(key, length)))) { 22484 result.push(key); 22485 } 22486 } 22487 return result; 22488} 22489function overArg(func, transform) { 22490 return function(arg) { 22491 return func(transform(arg)); 22492 }; 22493} 22494var nativeKeys = overArg(Object.keys, Object); 22495var objectProto$4 = Object.prototype; 22496var hasOwnProperty$3 = objectProto$4.hasOwnProperty; 22497function baseKeys(object) { 22498 if (!isPrototype(object)) { 22499 return nativeKeys(object); 22500 } 22501 var result = []; 22502 for (var key in Object(object)) { 22503 if (hasOwnProperty$3.call(object, key) && key != "constructor") { 22504 result.push(key); 22505 } 22506 } 22507 return result; 22508} 22509function keys(object) { 22510 return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); 22511} 22512var nativeCreate = getNative(Object, "create"); 22513function hashClear() { 22514 this.__data__ = nativeCreate ? nativeCreate(null) : {}; 22515 this.size = 0; 22516} 22517function hashDelete(key) { 22518 var result = this.has(key) && delete this.__data__[key]; 22519 this.size -= result ? 1 : 0; 22520 return result; 22521} 22522var HASH_UNDEFINED$1 = "__lodash_hash_undefined__"; 22523var objectProto$3 = Object.prototype; 22524var hasOwnProperty$2 = objectProto$3.hasOwnProperty; 22525function hashGet(key) { 22526 var data = this.__data__; 22527 if (nativeCreate) { 22528 var result = data[key]; 22529 return result === HASH_UNDEFINED$1 ? void 0 : result; 22530 } 22531 return hasOwnProperty$2.call(data, key) ? data[key] : void 0; 22532} 22533var objectProto$2 = Object.prototype; 22534var hasOwnProperty$1 = objectProto$2.hasOwnProperty; 22535function hashHas(key) { 22536 var data = this.__data__; 22537 return nativeCreate ? data[key] !== void 0 : hasOwnProperty$1.call(data, key); 22538} 22539var HASH_UNDEFINED = "__lodash_hash_undefined__"; 22540function hashSet(key, value) { 22541 var data = this.__data__; 22542 this.size += this.has(key) ? 0 : 1; 22543 data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED : value; 22544 return this; 22545} 22546function Hash(entries) { 22547 var index2 = -1, length = entries == null ? 0 : entries.length; 22548 this.clear(); 22549 while (++index2 < length) { 22550 var entry = entries[index2]; 22551 this.set(entry[0], entry[1]); 22552 } 22553} 22554Hash.prototype.clear = hashClear; 22555Hash.prototype["delete"] = hashDelete; 22556Hash.prototype.get = hashGet; 22557Hash.prototype.has = hashHas; 22558Hash.prototype.set = hashSet; 22559function listCacheClear() { 22560 this.__data__ = []; 22561 this.size = 0; 22562} 22563function assocIndexOf(array, key) { 22564 var length = array.length; 22565 while (length--) { 22566 if (eq(array[length][0], key)) { 22567 return length; 22568 } 22569 } 22570 return -1; 22571} 22572var arrayProto = Array.prototype; 22573var splice = arrayProto.splice; 22574function listCacheDelete(key) { 22575 var data = this.__data__, index2 = assocIndexOf(data, key); 22576 if (index2 < 0) { 22577 return false;
22578 } 22579 var lastIndex = data.length - 1; 22580 if (index2 == lastIndex) { 22581 data.pop(); 22582 } else { 22583 splice.call(data, index2, 1); 22584 } 22585 --this.size; 22586 return true; 22587} 22588function listCacheGet(key) { 22589 var data = this.__data__, index2 = assocIndexOf(data, key); 22590 return index2 < 0 ? void 0 : data[index2][1]; 22591} 22592function listCacheHas(key) { 22593 return assocIndexOf(this.__data__, key) > -1; 22594} 22595function listCacheSet(key, value) { 22596 var data = this.__data__, index2 = assocIndexOf(data, key); 22597 if (index2 < 0) { 22598 ++this.size; 22599 data.push([key, value]); 22600 } else { 22601 data[index2][1] = value; 22602 } 22603 return this; 22604} 22605function ListCache(entries) { 22606 var index2 = -1, length = entries == null ? 0 : entries.length; 22607 this.clear(); 22608 while (++index2 < length) { 22609 var entry = entries[index2]; 22610 this.set(entry[0], entry[1]); 22611 } 22612} 22613ListCache.prototype.clear = listCacheClear; 22614ListCache.prototype["delete"] = listCacheDelete; 22615ListCache.prototype.get = listCacheGet; 22616ListCache.prototype.has = listCacheHas; 22617ListCache.prototype.set = listCacheSet; 22618var Map$1 = getNative(root, "Map"); 22619function mapCacheClear() { 22620 this.size = 0; 22621 this.__data__ = { 22622 "hash": new Hash(), 22623 "map": new (Map$1 || ListCache)(), 22624 "string": new Hash() 22625 }; 22626} 22627function isKeyable(value) { 22628 var type = typeof value; 22629 return type == "string" || type == "number" || type == "symbol" || type == "boolean" ? value !== "__proto__" : value === null; 22630} 22631function getMapData(map, key) { 22632 var data = map.__data__; 22633 return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map; 22634} 22635function mapCacheDelete(key) { 22636 var result = getMapData(this, key)["delete"](key); 22637 this.size -= result ? 1 : 0; 22638 return result; 22639} 22640function mapCacheGet(key) { 22641 return getMapData(this, key).get(key); 22642} 22643function mapCacheHas(key) { 22644 return getMapData(this, key).has(key); 22645} 22646function mapCacheSet(key, value) { 22647 var data = getMapData(this, key), size = data.size; 22648 data.set(key, value); 22649 this.size += data.size == size ? 0 : 1; 22650 return this; 22651} 22652function MapCache(entries) { 22653 var index2 = -1, length = entries == null ? 0 : entries.length; 22654 this.clear(); 22655 while (++index2 < length) { 22656 var entry = entries[index2]; 22657 this.set(entry[0], entry[1]); 22658 } 22659} 22660MapCache.prototype.clear = mapCacheClear; 22661MapCache.prototype["delete"] = mapCacheDelete; 22662MapCache.prototype.get = mapCacheGet; 22663MapCache.prototype.has = mapCacheHas; 22664MapCache.prototype.set = mapCacheSet; 22665function toString2(value) { 22666 return value == null ? "" : baseToString(value); 22667} 22668function arrayPush(array, values) { 22669 var index2 = -1, length = values.length, offset = array.length; 22670 while (++index2 < length) { 22671 array[offset + index2] = values[index2]; 22672 } 22673 return array; 22674} 22675var spreadableSymbol = Symbol$1 ? Symbol$1.isConcatSpreadable : void 0; 22676function isFlattenable(value) { 22677 return isArray(value) || isArguments(value) || !!(spreadableSymbol && value && value[spreadableSymbol]); 22678} 22679function baseFlatten(array, depth, predicate, isStrict, result) { 22680 var index2 = -1, length = array.length; 22681 predicate || (predicate = isFlattenable); 22682 result || (result = []); 22683 while (++index2 < length) { 22684 var value = array[index2]; 22685 if (predicate(value)) { 22686 { 22687 arrayPush(result, value); 22688 } 22689 } else { 22690 result[result.length] = value; 22691 } 22692 } 22693 return result; 22694} 22695function flatten(array) { 22696 var length = array == null ? 0 : array.length; 22697 return length ? baseFlatten(array) : []; 22698} 22699function flatRest(func) { 22700 return setToString(overRest(func, void 0, flatten), func + ""); 22701} 22702var getPrototype = overArg(Object.getPrototypeOf, Object); 22703function baseSlice(array, start, end) { 22704 var index2 = -1, length = array.length; 22705 if (start < 0) { 22706 start = -start > length ? 0 : length + start; 22707 } 22708 end = end > length ? length : end; 22709 if (end < 0) { 22710 end += length; 22711 } 22712 length = start > end ? 0 : end - start >>> 0; 22713 start >>>= 0; 22714 var result = Array(length); 22715 while (++index2 < length) { 22716 result[index2] = array[index2 + start]; 22717 } 22718 return result; 22719} 22720function castSlice(array, start, end) { 22721 var length = array.length; 22722 end = end === void 0 ? length : end; 22723 return false ? array : baseSlice(array, start, end); 22724} 22725var rsAstralRange$2 = "\\ud800-\\udfff", rsComboMarksRange$3 = "\\u0300-\\u036f", reComboHalfMarksRange$3 = "\\ufe20-\\ufe2f", rsComboSymbol
vendor: 8,982 bytes, lines 22725-23010
22725sRange$3 = "\\u20d0-\\u20ff", rsComboRange$3 = rsComboMarksRange$3 + reComboHalfMarksRange$3 + rsComboSymbolsRange$3, rsVarRange$2 = "\\ufe0e\\ufe0f"; 22726var rsZWJ$2 = "\\u200d"; 22727var reHasUnicode = RegExp("[" + rsZWJ$2 + rsAstralRange$2 + rsComboRange$3 + rsVarRange$2 + "]"); 22728function hasUnicode(string) { 22729 return reHasUnicode.test(string); 22730} 22731function asciiToArray(string) { 22732 return string.split(""); 22733} 22734var rsAstralRange$1 = "\\ud800-\\udfff", rsComboMarksRange$2 = "\\u0300-\\u036f", reComboHalfMarksRange$2 = "\\ufe20-\\ufe2f", rsComboSymbolsRange$2 = "\\u20d0-\\u20ff", rsComboRange$2 = rsComboMarksRange$2 + reComboHalfMarksRange$2 + rsComboSymbolsRange$2, rsVarRange$1 = "\\ufe0e\\ufe0f"; 22735var rsAstral = "[" + rsAstralRange$1 + "]", rsCombo$2 = "[" + rsComboRange$2 + "]", rsFitz$1 = "\\ud83c[\\udffb-\\udfff]", rsModifier$1 = "(?:" + rsCombo$2 + "|" + rsFitz$1 + ")", rsNonAstral$1 = "[^" + rsAstralRange$1 + "]", rsRegional$1 = "(?:\\ud83c[\\udde6-\\uddff]){2}", rsSurrPair$1 = "[\\ud800-\\udbff][\\udc00-\\udfff]", rsZWJ$1 = "\\u200d"; 22736var reOptMod$1 = rsModifier$1 + "?", rsOptVar$1 = "[" + rsVarRange$1 + "]?", rsOptJoin$1 = "(?:" + rsZWJ$1 + "(?:" + [rsNonAstral$1, rsRegional$1, rsSurrPair$1].join("|") + ")" + rsOptVar$1 + reOptMod$1 + ")*", rsSeq$1 = rsOptVar$1 + reOptMod$1 + rsOptJoin$1, rsSymbol = "(?:" + [rsNonAstral$1 + rsCombo$2 + "?", rsCombo$2, rsRegional$1, rsSurrPair$1, rsAstral].join("|") + ")"; 22737var reUnicode = RegExp(rsFitz$1 + "(?=" + rsFitz$1 + ")|" + rsSymbol + rsSeq$1, "g"); 22738function unicodeToArray(string) { 22739 return string.match(reUnicode) || []; 22740} 22741function stringToArray(string) { 22742 return hasUnicode(string) ? unicodeToArray(string) : asciiToArray(string); 22743} 22744function createCaseFirst(methodName) { 22745 return function(string) { 22746 string = toString2(string); 22747 var strSymbols = hasUnicode(string) ? stringToArray(string) : void 0; 22748 var chr = strSymbols ? strSymbols[0] : string.charAt(0); 22749 var trailing = strSymbols ? castSlice(strSymbols, 1).join("") : string.slice(1); 22750 return chr[methodName]() + trailing; 22751 }; 22752} 22753var upperFirst = createCaseFirst("toUpperCase"); 22754function capitalize(string) { 22755 return upperFirst(toString2(string).toLowerCase()); 22756} 22757function arrayReduce(array, iteratee, accumulator, initAccum) { 22758 var index2 = -1, length = array == null ? 0 : array.length; 22759 while (++index2 < length) { 22760 accumulator = iteratee(accumulator, array[index2], index2, array); 22761 } 22762 return accumulator; 22763} 22764function basePropertyOf(object) { 22765 return function(key) { 22766 return object == null ? void 0 : object[key]; 22767 }; 22768} 22769var deburredLetters = { 22770 // Latin-1 Supplement block. 22771 "Ã": "A", 22772 "Ã": "A", 22773 "Ã": "A", 22774 "Ã": "A", 22775 "Ã": "A", 22776 "à ": "A", 22777 "à ": "a", 22778 "á": "a", 22779 "â": "a", 22780 "ã": "a", 22781 "ä": "a", 22782 "Ã¥": "a", 22783 "Ã": "C", 22784 "ç": "c", 22785 "Ã": "D", 22786 "ð": "d", 22787 "Ã": "E", 22788 "Ã": "E", 22789 "Ã": "E", 22790 "Ã": "E", 22791 "è": "e", 22792 "é": "e", 22793 "ê": "e", 22794 "ë": "e", 22795 "Ã": "I", 22796 "Ã": "I", 22797 "Ã": "I", 22798 "Ã": "I", 22799 "ì": "i", 22800 "Ã": "i", 22801 "î": "i", 22802 "ï": "i", 22803 "Ã": "N", 22804 "ñ": "n", 22805 "Ã": "O", 22806 "Ã": "O", 22807 "Ã": "O", 22808 "Ã": "O", 22809 "Ã": "O", 22810 "Ã": "O", 22811 "ò": "o", 22812 "ó": "o", 22813 "ô": "o", 22814 "õ": "o", 22815 "ö": "o", 22816 "ø": "o", 22817 "Ã": "U", 22818 "Ã": "U", 22819 "Ã": "U", 22820 "Ã": "U", 22821 "ù": "u", 22822 "ú": "u", 22823 "û": "u", 22824 "ü": "u", 22825 "Ã": "Y", 22826 "ý": "y", 22827 "ÿ": "y", 22828 "Ã": "Ae", 22829 "æ": "ae", 22830 "Ã": "Th", 22831 "þ": "th", 22832 "Ã": "ss", 22833 // Latin Extended-A block. 22834 "Ä": "A", 22835 "Ä": "A", 22836 "Ä": "A", 22837 "Ä": "a", 22838 "Ä": "a", 22839 "Ä ": "a", 22840 "Ä": "C", 22841 "Ä": "C", 22842 "Ä": "C", 22843 "Ä": "C", 22844 "Ä": "c", 22845 "Ä": "c", 22846 "Ä": "c", 22847 "Ä": "c", 22848 "Ä": "D", 22849 "Ä": "D", 22850 "Ä": "d", 22851 "Ä": "d", 22852 "Ä": "E", 22853 "Ä": "E", 22854 "Ä": "E", 22855 "Ä": "E", 22856 "Ä": "E", 22857 "Ä": "e", 22858 "Ä": "e", 22859 "Ä": "e", 22860 "Ä": "e", 22861 "Ä": "e", 22862 "Ä": "G", 22863 "Ä": "G", 22864 "Ä ": "G", 22865 "Ä¢": "G", 22866 "Ä": "g", 22867 "Ä": "g", 22868 "Ä¡": "g", 22869 "Ä£": "g", 22870 "Ĥ": "H", 22871 "Ħ": "H", 22872 "Ä¥": "h", 22873 "ħ": "h", 22874 "Ĩ": "I", 22875 "Ī": "I", 22876 "Ĭ": "I", 22877 "Ä®": "I", 22878 "İ": "I", 22879 "Ä©": "i", 22880 "Ä«": "i", 22881 "Ä": "i", 22882 "į": "i", 22883 "ı": "i", 22884 "Ä´": "J", 22885 "ĵ": "j", 22886 "Ķ": "K", 22887 "Ä·": "k", 22888 "ĸ": "k", 22889 "Ĺ": "L", 22890 "Ä»": "L", 22891 "Ľ": "L", 22892 "Ä¿": "L", 22893 "Å": "L", 22894 "ĺ": "l", 22895 "ļ": "l", 22896 "ľ": "l", 22897 "Å": "l", 22898 "Å": "l", 22899 "Å": "N", 22900 "Å ": "N", 22901 "Å": "N", 22902 "Å": "N", 22903 "Å": "n", 22904 "Å": "n", 22905 "Å": "n", 22906 "Å": "n", 22907 "Å": "O", 22908 "Å": "O", 22909 "Å": "O", 22910 "Å": "o", 22911 "Å": "o", 22912 "Å": "o", 22913 "Å": "R", 22914 "Å": "R", 22915 "Å": "R", 22916 "Å": "r", 22917 "Å": "r", 22918 "Å": "r", 22919 "Å": "S", 22920 "Å": "S", 22921 "Å": "S", 22922 "Å ": "S", 22923 "Å": "s", 22924 "Å": "s", 22925 "Å": "s", 22926 "Å¡": "s", 22927 "Å¢": "T", 22928 "Ť": "T", 22929 "Ŧ": "T", 22930 "Å£": "t", 22931 "Å¥": "t", 22932 "ŧ": "t", 22933 "Ũ": "U", 22934 "Ū": "U", 22935 "Ŭ": "U", 22936 "Å®": "U", 22937 "Ű": "U", 22938 "Ų": "U", 22939 "Å©": "u", 22940 "Å«": "u", 22941 "Å": "u", 22942 "ů": "u", 22943 "ű": "u", 22944 "ų": "u", 22945 "Å´": "W", 22946 "ŵ": "w", 22947 "Ŷ": "Y", 22948 "Å·": "y", 22949 "Ÿ": "Y", 22950 "Ź": "Z", 22951 "Å»": "Z", 22952 "Ž": "Z", 22953 "ź": "z", 22954 "ż": "z", 22955 "ž": "z", 22956 "IJ": "IJ", 22957 "ij": "ij", 22958 "Å": "Oe", 22959 "Å": "oe", 22960 "Å": "'n", 22961 "Å¿": "s" 22962}; 22963var deburrLetter = basePropertyOf(deburredLetters); 22964var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g; 22965var rsComboMarksRange$1 = "\\u0300-\\u036f", reComboHalfMarksRange$1 = "\\ufe20-\\ufe2f", rsComboSymbolsRange$1 = "\\u20d0-\\u20ff", rsComboRange$1 = rsComboMarksRange$1 + reComboHalfMarksRange$1 + rsComboSymbolsRange$1; 22966var rsCombo$1 = "[" + rsComboRange$1 + "]"; 22967var reComboMark = RegExp(rsCombo$1, "g"); 22968function deburr(string) { 22969 string = toString2(string); 22970 return string && string.replace(reLatin, deburrLetter).replace(reComboMark, ""); 22971} 22972var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g; 22973function asciiWords(string) { 22974 return string.match(reAsciiWord) || []; 22975} 22976var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/; 22977function hasUnicodeWord(string) { 22978 return reHasUnicodeWord.test(string); 22979} 22980var rsAstralRange = "\\ud800-\\udfff", rsComboMarksRange = "\\u0300-\\u036f", reComboHalfMarksRange = "\\ufe20-\\ufe2f", rsComboSymbolsRange = "\\u20d0-\\u20ff", rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, rsDingbatRange = "\\u2700-\\u27bf", rsLowerRange = "a-z\\xdf-\\xf6\\xf8-\\xff", rsMathOpRange = "\\xac\\xb1\\xd7\\xf7", rsNonCharRange = "\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf", rsPunctuationRange = "\\u2000-\\u206f", rsSpaceRange = " \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000", rsUpperRange = "A-Z\\xc0-\\xd6\\xd8-\\xde", rsVarRange = "\\ufe0e\\ufe0f", rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange; 22981var rsApos$1 = "['â]", rsBreak = "[" + rsBreakRange + "]", rsCombo = "[" + rsComboRange + "]", rsDigits = "\\d+", rsDingbat = "[" + rsDingbatRange + "]", rsLower = "[" + rsLowerRange + "]", rsMisc = "[^" + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + "]", rsFitz = "\\ud83c[\\udffb-\\udfff]", rsModifier = "(?:" + rsCombo + "|" + rsFitz + ")", rsNonAstral = "[^" + rsAstralRange + "]", rsRegional = "(?:\\ud83c[\\udde6-\\uddff]){2}", rsSurrPair = "[\\ud800-\\udbff][\\udc00-\\udfff]", rsUpper = "[" + rsUpperRange + "]", rsZWJ = "\\u200d"; 22982var rsMiscLower = "(?:" + rsLower + "|" + rsMisc + ")", rsMiscUpper = "(?:" + rsUpper + "|" + rsMisc + ")", rsOptContrLower = "(?:" + rsApos$1 + "(?:d|ll|m|re|s|t|ve))?", rsOptContrUpper = "(?:" + rsApos$1 + "(?:D|LL|M|RE|S|T|VE))?", reOptMod = rsModifier + "?", rsOptVar = "[" + rsVarRange + "]?", rsOptJoin = "(?:" + rsZWJ + "(?:" + [rsNonAstral, rsRegional, rsSurrPair].join("|") + ")" + rsOptVar + reOptMod + ")*", rsOrdLower = "\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])", rsOrdUpper = "\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])", rsSeq = rsOptVar + reOptMod + rsOptJoin, rsEmoji = "(?:" + [rsDingbat, rsRegional, rsSurrPair].join("|") + ")" + rsSeq; 22983var reUnicodeWord = RegExp([ 22984 rsUpper + "?" + rsLower + "+" + rsOptContrLower + "(?=" + [rsBreak, rsUpper, "$"].join("|") + ")", 22985 rsMiscUpper + "+" + rsOptContrUpper + "(?=" + [rsBreak, rsUpper + rsMiscLower, "$"].join("|") + ")", 22986 rsUpper + "?" + rsMiscLower + "+" + rsOptContrLower, 22987 rsUpper + "+" + rsOptContrUpper, 22988 rsOrdUpper, 22989 rsOrdLower, 22990 rsDigits, 22991 rsEmoji 22992].join("|"), "g"); 22993function unicodeWords(string) { 22994 return string.match(reUnicodeWord) || []; 22995} 22996function words(string, pattern, guard) { 22997 string = toString2(string); 22998 pattern = pattern; 22999 if (pattern === void 0) { 23000 return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string); 23001 } 23002 return string.match(pattern) || []; 23003} 23004var rsApos = "['â]"; 23005var reApos = RegExp(rsApos, "g"); 23006function createCompounder(callback) { 23007 return function(string) { 23008 return arrayReduce(words(deburr(string).replace(reApos, "")), callback, ""); 23009 }; 23010}
23011var camelCase = createCompounder(function(result, word, index2) { 23012 word = word.toLowerCase(); 23013 return result + (index2 ? capitalize(word) : word); 23014}); 23015function baseClamp(number, lower, upper) { 23016 if (number === number) { 23017 if (upper !== void 0) { 23018 number = number <= upper ? number : upper; 23019 } 23020 if (lower !== void 0) { 23021 number = number >= lower ? number : lower; 23022 } 23023 } 23024 return number; 23025} 23026function clamp(number, lower, upper) { 23027 if (upper === void 0) { 23028 upper = lower; 23029 lower = void 0; 23030 } 23031 if (upper !== void 0) { 23032 upper = toNumber$1(upper); 23033 upper = upper === upper ? upper : 0; 23034 } 23035 if (lower !== void 0) { 23036 lower = toNumber$1(lower); 23037 lower = lower === lower ? lower : 0; 23038 } 23039 return baseClamp(toNumber$1(number), lower, upper); 23040} 23041function stackClear() { 23042 this.__data__ = new ListCache(); 23043 this.size = 0; 23044} 23045function stackDelete(key) { 23046 var data = this.__data__, result = data["delete"](key); 23047 this.size = data.size; 23048 return result; 23049} 23050function stackGet(key) { 23051 return this.__data__.get(key); 23052} 23053function stackHas(key) { 23054 return this.__data__.has(key); 23055} 23056var LARGE_ARRAY_SIZE = 200; 23057function stackSet(key, value) { 23058 var data = this.__data__; 23059 if (data instanceof ListCache) { 23060 var pairs = data.__data__; 23061 if (!Map$1 || pairs.length < LARGE_ARRAY_SIZE - 1) { 23062 pairs.push([key, value]); 23063 this.size = ++data.size; 23064 return this; 23065 } 23066 data = this.__data__ = new MapCache(pairs); 23067 } 23068 data.set(key, value); 23069 this.size = data.size; 23070 return this; 23071} 23072function Stack(entries) { 23073 var data = this.__data__ = new ListCache(entries); 23074 this.size = data.size; 23075} 23076Stack.prototype.clear = stackClear; 23077Stack.prototype["delete"] = stackDelete; 23078Stack.prototype.get = stackGet; 23079Stack.prototype.has = stackHas; 23080Stack.prototype.set = stackSet; 23081var freeExports = typeof exports == "object" && exports && !exports.nodeType && exports; 23082var freeModule = freeExports && typeof module == "object" && module && !module.nodeType && module; 23083var moduleExports = freeModule && freeModule.exports === freeExports; 23084var Buffer$1 = moduleExports ? root.Buffer : void 0; 23085Buffer$1 ? Buffer$1.allocUnsafe : void 0; 23086function cloneBuffer(buffer2, isDeep) { 23087 { 23088 return buffer2.slice(); 23089 } 23090} 23091function arrayFilter(array, predicate) { 23092 var index2 = -1, length = array == null ? 0 : array.length, resIndex = 0, result = []; 23093 while (++index2 < length) { 23094 var value = array[index2]; 23095 if (predicate(value, index2, array)) { 23096 result[resIndex++] = value; 23097 } 23098 } 23099 return result; 23100} 23101function stubArray() { 23102 return []; 23103} 23104var objectProto$1 = Object.prototype; 23105var propertyIsEnumerable = objectProto$1.propertyIsEnumerable; 23106var nativeGetSymbols = Object.getOwnPropertySymbols; 23107var getSymbols = !nativeGetSymbols ? stubArray : function(object) { 23108 if (object == null) { 23109 return []; 23110 } 23111 object = Object(object); 23112 return arrayFilter(nativeGetSymbols(object), function(symbol) { 23113 return propertyIsEnumerable.call(object, symbol); 23114 }); 23115}; 23116function baseGetAllKeys(object, keysFunc, symbolsFunc) { 23117 var result = keysFunc(object); 23118 return isArray(object) ? result : arrayPush(result, symbolsFunc(object)); 23119} 23120function getAllKeys(object) { 23121 return baseGetAllKeys(object, keys, getSymbols); 23122} 23123var DataView$1 = getNative(root, "DataView"); 23124var Promise$1 = getNative(root, "Promise"); 23125var Set$1 = getNative(root, "Set"); 23126var mapTag$3 = "[object Map]", objectTag$1 = "[object Object]", promiseTag = "[object Promise]", setTag$3 = "[object Set]", weakMapTag$1 = "[object WeakMap]"; 23127var dataViewTag$2 = "[object DataView]"; 23128var dataViewCtorString = toSource(DataView$1), mapCtorString = toSource(Map$1), promiseCtorString = toSource(Promise$1), setCtorString = toSource(Set$1), weakMapCtorString = toSource(WeakMap$1); 23129var getTag$2 = baseGetTag; 23130if (DataView$1 && getTag$2(new DataView$1(new ArrayBuffer(1))) != dataViewTag$2 || Map$1 && getTag$2(new Map$1()) != mapTag$3 || Promise$1 && getTag$2(Promise$1.resolve()) != promiseTag || Set$1 && getTag$2(new Set$1()) != setTag$3 || WeakMap$1 && getTag$2(new WeakMap$1()) != weakMapTag$1) { 23131 getTag$2 = function(value) { 23132 var result = baseGetTag(value), Ctor = result == objectTag$1 ? value.constructor : void 0, ctorStr
23132ing = Ctor ? toSource(Ctor) : ""; 23133 if (ctorString) { 23134 switch (ctorString) { 23135 case dataViewCtorString: 23136 return dataViewTag$2; 23137 case mapCtorString: 23138 return mapTag$3; 23139 case promiseCtorString: 23140 return promiseTag; 23141 case setCtorString: 23142 return setTag$3; 23143 case weakMapCtorString: 23144 return weakMapTag$1; 23145 } 23146 } 23147 return result; 23148 }; 23149} 23150var objectProto = Object.prototype; 23151var hasOwnProperty = objectProto.hasOwnProperty; 23152function initCloneArray(array) { 23153 var length = array.length, result = new array.constructor(length); 23154 if (length && typeof array[0] == "string" && hasOwnProperty.call(array, "index")) { 23155 result.index = array.index; 23156 result.input = array.input; 23157 } 23158 return result; 23159} 23160var Uint8Array$1 = root.Uint8Array; 23161function cloneArrayBuffer(arrayBuffer) { 23162 var result = new arrayBuffer.constructor(arrayBuffer.byteLength); 23163 new Uint8Array$1(result).set(new Uint8Array$1(arrayBuffer)); 23164 return result; 23165} 23166function cloneDataView(dataView, isDeep) { 23167 var buffer2 = cloneArrayBuffer(dataView.buffer); 23168 return new dataView.constructor(buffer2, dataView.byteOffset, dataView.byteLength); 23169} 23170var reFlags = /\w*$/; 23171function cloneRegExp(regexp) { 23172 var result = new regexp.constructor(regexp.source, reFlags.exec(regexp)); 23173 result.lastIndex = regexp.lastIndex; 23174 return result; 23175} 23176var symbolProto = Symbol$1 ? Symbol$1.prototype : void 0, symbolValueOf = symbolProto ? symbolProto.valueOf : void 0; 23177function cloneSymbol(symbol) { 23178 return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {}; 23179} 23180function cloneTypedArray(typedArray, isDeep) { 23181 var buffer2 = cloneArrayBuffer(typedArray.buffer); 23182 return new typedArray.constructor(buffer2, typedArray.byteOffset, typedArray.length); 23183} 23184var boolTag$1 = "[object Boolean]", dateTag$1 = "[object Date]", mapTag$2 = "[object Map]", numberTag$1 = "[object Number]", regexpTag$1 = "[object RegExp]", setTag$2 = "[object Set]", stringTag$1 = "[object String]", symbolTag$1 = "[object Symbol]"; 23185var arrayBufferTag$1 = "[object ArrayBuffer]", dataViewTag$1 = "[object DataView]", float32Tag$1 = "[object Float32Array]", float64Tag$1 = "[object Float64Array]", int8Tag$1 = "[object Int8Array]", int16Tag$1 = "[object Int16Array]", int32Tag$1 = "[object Int32Array]", uint8Tag$1 = "[object Uint8Array]", uint8ClampedTag$1 = "[object Uint8ClampedArray]", uint16Tag$1 = "[object Uint16Array]", uint32Tag$1 = "[object Uint32Array]"; 23186function initCloneByTag(object, tag, isDeep) { 23187 var Ctor = object.constructor; 23188 switch (tag) { 23189 case arrayBufferTag$1: 23190 return cloneArrayBuffer(object); 23191 case boolTag$1: 23192 case dateTag$1: 23193 return new Ctor(+object); 23194 case dataViewTag$1: 23195 return cloneDataView(object); 23196 case float32Tag$1: 23197 case float64Tag$1: 23198 case int8Tag$1: 23199 case int16Tag$1: 23200 case int32Tag$1: 23201 case uint8Tag$1: 23202 case uint8ClampedTag$1: 23203 case uint16Tag$1: 23204 case uint32Tag$1: 23205 return cloneTypedArray(object); 23206 case mapTag$2: 23207 return new Ctor(); 23208 case numberTag$1: 23209 case stringTag$1: 23210 return new Ctor(object); 23211 case regexpTag$1: 23212 return cloneRegExp(object); 23213 case setTag$2: 23214 return new Ctor(); 23215 case symbolTag$1: 23216 return cloneSymbol(object); 23217 } 23218} 23219function initCloneObject(object) { 23220 return typeof object.constructor == "function" && !isPrototype(object) ? baseCreate(getPrototype(object)) : {}; 23221} 23222var mapTag$1 = "[object Map]"; 23223function baseIsMap(value) { 23224 return isObjectLike$2(value) && getTag$2(value) == mapTag$1; 23225} 23226var nodeIsMap = nodeUtil && nodeUtil.isMap; 23227var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap; 23228var setTag$1 = "[object Set]"; 23229function baseIsSet(value) { 23230 return isObjectLike$2(value) && getTag$2(value) == setTag$1; 23231} 23232var nodeIsSet = nodeUtil && nodeUtil.isSet; 23233var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet; 23234var argsTag = "[object Arguments]", arrayTag = "[object Array]", boolTag = "[object Boolean]", dateTag = "[object Date]", errorTag = "[object Error]", funcTag = "[object Function]", genTag = "[object GeneratorFunction]", mapTag = "[object Map]", numberTag = "[object Number]", objectTag = "[object Object]", regexpTag = "[object RegExp]", setTag = "[object Set]", stringTag = "[object String]", symbolTag = "[object Symbol]", weakMapTag = "[object WeakMap]"; 23235var arrayBufferTag = "[object ArrayBuffer]", dataViewTag = "[object DataView]", float32Tag = "[object Float32Array]", float64Tag = "[object Float64Array
23235]", int8Tag = "[object Int8Array]", int16Tag = "[object Int16Array]", int32Tag = "[object Int32Array]", uint8Tag = "[object Uint8Array]", uint8ClampedTag = "[object Uint8ClampedArray]", uint16Tag = "[object Uint16Array]", uint32Tag = "[object Uint32Array]"; 23236var cloneableTags = {}; 23237cloneableTags[argsTag] = cloneableTags[arrayTag] = cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = cloneableTags[boolTag] = cloneableTags[dateTag] = cloneableTags[float32Tag] = cloneableTags[float64Tag] = cloneableTags[int8Tag] = cloneableTags[int16Tag] = cloneableTags[int32Tag] = cloneableTags[mapTag] = cloneableTags[numberTag] = cloneableTags[objectTag] = cloneableTags[regexpTag] = cloneableTags[setTag] = cloneableTags[stringTag] = cloneableTags[symbolTag] = cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true; 23238cloneableTags[errorTag] = cloneableTags[funcTag] = cloneableTags[weakMapTag] = false; 23239function baseClone(value, bitmask, customizer, key, object, stack2) { 23240 var result; 23241 if (result !== void 0) { 23242 return result; 23243 } 23244 if (!isObject$1(value)) { 23245 return value; 23246 } 23247 var isArr = isArray(value); 23248 if (isArr) { 23249 result = initCloneArray(value); 23250 } else { 23251 var tag = getTag$2(value), isFunc = tag == funcTag || tag == genTag; 23252 if (isBuffer(value)) { 23253 return cloneBuffer(value); 23254 } 23255 if (tag == objectTag || tag == argsTag || isFunc && !object) { 23256 result = isFunc ? {} : initCloneObject(value); 23257 } else { 23258 if (!cloneableTags[tag]) { 23259 return object ? value : {}; 23260 } 23261 result = initCloneByTag(value, tag); 23262 } 23263 } 23264 stack2 || (stack2 = new Stack()); 23265 var stacked = stack2.get(value); 23266 if (stacked) { 23267 return stacked; 23268 } 23269 stack2.set(value, result); 23270 if (isSet(value)) { 23271 value.forEach(function(subValue) { 23272 result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack2)); 23273 }); 23274 } else if (isMap(value)) { 23275 value.forEach(function(subValue, key2) { 23276 result.set(key2, baseClone(subValue, bitmask, customizer, key2, value, stack2)); 23277 }); 23278 } 23279 var keysFunc = getAllKeys; 23280 var props = isArr ? void 0 : keysFunc(value); 23281 arrayEach(props || value, function(subValue, key2) { 23282 if (props) { 23283 key2 = subValue; 23284 subValue = value[key2]; 23285 } 23286 assignValue(result, key2, baseClone(subValue, bitmask, customizer, key2, value, stack2)); 23287 }); 23288 return result; 23289} 23290var CLONE_DEEP_FLAG = 1, CLONE_SYMBOLS_FLAG = 4; 23291function cloneDeep(value) { 23292 return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG); 23293} 23294var FUNC_ERROR_TEXT = "Expected a function"; 23295var WRAP_CURRY_FLAG = 8, WRAP_PARTIAL_FLAG = 32, WRAP_ARY_FLAG = 128, WRAP_REARG_FLAG = 256; 23296function createFlow(fromRight) { 23297 return flatRest(function(funcs) { 23298 var length = funcs.length, index2 = length, prereq = LodashWrapper.prototype.thru; 23299 while (index2--) { 23300 var func = funcs[index2]; 23301 if (typeof func != "function") { 23302 throw new TypeError(FUNC_ERROR_TEXT); 23303 } 23304 if (prereq && !wrapper && getFuncName(func) == "wrapper") { 23305 var wrapper = new LodashWrapper([], true); 23306 } 23307 } 23308 index2 = wrapper ? index2 : length; 23309 while (++index2 < length) { 23310 func = funcs[index2]; 23311 var funcName = getFuncName(func), data = funcName == "wrapper" ? getData(func) : void 0; 23312 if (data && isLaziable(data[0]) && data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) && !data[4].length && data[9] == 1) { 23313 wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]); 23314 } else { 23315 wrapper = func.length == 1 && isLaziable(func) ? wrapper[funcName]() : wrapper.thru(func); 23316 } 23317 } 23318 return function() { 23319 var args = arguments, value = args[0]; 23320 if (wrapper && args.length == 1 && isArray(value)) { 23321 return wrapper.plant(value).value(); 23322 } 23323 var index3 = 0, result = length ? funcs[index3].apply(this, args) : value; 23324 while (++index3 < length) { 23325 result = funcs[index3].call(this, result); 23326 } 23327 return result; 23328 }; 23329 }); 23330} 23331var flow = createFlow(); 23332function isNil(value) { 23333 return value == null; 23334} 23335var kebabCase = createCompounder(function(result, word, index2) { 23336 return result + (index2 ? "-" : "") + word.toLowerCase(); 23337}); 23338var htmlUnescapes = { 23339 "&": "&", 23340 "<": "<", 23341 ">": ">", 23342 """: '"', 23343 "'": "'" 23344}; 23345var unescapeHtmlChar = basePropertyOf(htmlUnescapes); 23346var reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g, reHasEscapedHtml = RegExp(reEscapedHtml.source); 23347function unescape$1(string) { 23348 string = toString2(string); 23349 return string && reHasEscapedHtml.test(string) ? string.replace(reEscapedHtml, unescapeHtmlChar) : string; 23350} 23351const isContentLibraryPath = (path) => Boolean(path == null ? void 0 : path.includes("/library/content")); 23352const isEmpty$1 = (value) => { 23353 if (value == null) return true; 23354 if (Array.isArray(value) || typeof value === "string") { 23355 return value.length === 0; 23356 } 23357 if (typeof value === "object") { 23358 return Object.keys(value).length === 0; 23359 } 23360 return false;
23361}; 23362const renderData = (value, object) => { 23363 if (typeof value !== "string") return null; 23364 if (value.replace(/(^<\w*>)|(<\/\w*>$)/gi, "")) { 23365 const hasAllBrackets = ["{{", "}}"].every( 23366 (item) => value.includes(item) 23367 ); 23368 try { 23369 return hasAllBrackets ? mustache.render(value, object) : value; 23370 } catch (err) { 23371 console.error("Rendering crashed:", err.message); 23372 } 23373 } else { 23374 return null; 23375 } 23376}; 23377const PLACEHOLDER_PHOTO_FALLBACK = "/img/Profile_Image_Empty.svg"; 23378const resolvePlaceholderPhotoUrl = (store) => { 23379 var _a, _b, _c, _d, _e, _f, _g; 23380 const contentLibraryPreview = (_c = (_b = (_a = store == null ? void 0 : store.state) == null ? void 0 : _a.settings) == null ? void 0 : _b.featureFlags) == null ? void 0 : _c.ContentLibraryPreview; 23381 if (!contentLibraryPreview) { 23382 return PLACEHOLDER_PHOTO_FALLBACK; 23383 } 23384 const placeholders = ((_e = (_d = store == null ? void 0 : store.state) == null ? void 0 : _d.cms) == null ? void 0 : _e.componentPlaceholderContent) || {}; 23385 const photoMedia = placeholders.photoURLProfile; 23386 if (photoMedia && typeof photoMedia === "object" && photoMedia.id && photoMedia.contentType) { 23387 const path = (_g = (_f = store.getters) == null ? void 0 : _f["cms/getCmsMediaPath"]) == null ? void 0 : _g.call(_f, photoMedia); 23388 return path || PLACEHOLDER_PHOTO_FALLBACK; 23389 } 23390 if (typeof photoMedia === "string") { 23391 return photoMedia; 23392 } 23393 return (photoMedia == null ? void 0 : photoMedia.name) ?? PLACEHOLDER_PHOTO_FALLBACK; 23394}; 23395const sitePath = (store) => { 23396 var _a, _b, _c, _d, _e, _f, _g; 23397 if ((_a = store == null ? void 0 : store.state) == null ? void 0 : _a.site) { 23398 const builderSite = store.state.site.workingSite; 23399 const generatorSite = store.state.site; 23400 const site = builderSite || generatorSite; 23401 const contentLibraryPreview = (_d = (_c = (_b = store.state) == null ? void 0 : _b.settings) == null ? void 0 : _c.featureFlags) == null ? void 0 : _d.ContentLibraryPreview; 23402 let isContentLibrary = false; 23403 try { 23404 const route = useRoute == null ? void 0 : useRoute(); 23405 isContentLibrary = isContentLibraryPath(route == null ? void 0 : route.path) ?? false; 23406 } catch (_) { 23407 } 23408 const shouldUsePlaceholders = contentLibraryPreview && (isContentLibrary || isEmpty$1((_e = site == null ? void 0 : site.user) == null ? void 0 : _e.ddcUserData)); 23409 if (shouldUsePlaceholders) { 23410 const { footer, ...placeholders } = ((_g = (_f = store.state) == null ? void 0 : _f.cms) == null ? void 0 : _g.componentPlaceholderContent) || {}; 23411 if (!isEmpty$1(placeholders)) { 23412 const photoURLProfile = resolvePlaceholderPhotoUrl(store); 23413 return { 23414 ...site, 23415 user: { 23416 ...site == null ? void 0 : site.user, 23417 ddcUserData: { 23418 ...placeholders, 23419 photoURLProfile 23420 } 23421 }, 23422 footer: { 23423 ...site == null ? void 0 : site.footer, 23424 ...footer, 23425 showDisclosures: isContentLibrary 23426 } 23427 }; 23428 } 23429 } 23430 return site; 23431 } 23432}; 23433const formatName = (name, ddcUserData) => { 23434 const firstName = ddcUserData == null ? void 0 : ddcUserData.mktrLglFirstNm; 23435 const preferredFirstName = ddcUserData == null ? void 0 : ddcUserData.mktrPrefFirstNm; 23436 const mktrPrefFirstNmRegex = /"[^"]*"/gi; 23437 if (preferredFirstName && firstName !== preferredFirstName) return name; 23438 return name == null ? void 0 : name.replace(mktrPrefFirstNmRegex, ""); 23439}; 23440const storageRoot = (config) => { 23441 const { storageURL } = (config == null ? void 0 : config.public) ?? {}; 23442 return typeof storageURL === "string" ? storageURL : null; 23443}; 23444const generateFallbackLogoURL = (brandId) => { 23445 const root2 = storageRoot(/* @__PURE__ */ useRuntimeConfig()); 23446 if (root2 === null || !brandId) return null; 23447 return `${root2}/brands/${brandId}/uploads/logos/default`; 23448}; 23449function useShowExpiredPresetId(getters) { 23450 return computed( 23451 () => { 23452 var _a; 23453 return ((_a = getters["settings/getFeatureFlag"]) == null ? void 0 : _a.call(getters, "ShowExpiredPresetId")) === true; 23454 } 23455 ); 23456} 23457function getPresetId(item) { 23458 return (item == null ? void 0 : item.presetId) ?? (item == null ? void 0 : item.id); 23459} 23460function useIsExpired(settings, itemCheckFunction) { 23461 const store = useStore(); 23462 const { getters } = store; 23463 const resolveSettings = () => typeof settings === "function" ? settings() : settings; 23464 const isExpired = computed(() => { 23465 var _a; 23466 return getters["library/isExpired"]( 23467 (_a = resolveSettings()) == null ? void 0 : _a.contentLibraryItems, 23468 itemCheckFunction 23469 ); 23470 }); 23471 const showExpiredPresetId = useShowExpiredPresetId(getters); 23472 const expiredPresetId = computed(() => { 23473 var _a, _b; 23474 if (!showExpiredPresetId.value) return void 0; 23475 const expiredItem = (_b = (_a = resolveSettings()) == null ? void 0 : _a.contentLibraryItems) == null ? void 0 : _b.find( 23476 (item) => getters["library/isContentExpired"](item == null ? void 0 : item.id, item) && itemCheckFunction(item) 23477 ); 23478 return getPresetId(expiredItem); 23479 }); 23480 const processExpiredLinks = (htmlContent) => { 23481 if (!htmlContent || typeof htmlContent !== "string" || typeof document === "undefined" || false) { 23482 return htmlContent; 23483 } 23484 setTimeout(() => { 23485 const domLinks = document.querySelectorAll("a[preset-id]"); 23486 domLinks.forEach((link) => { 23487 const presetId = link.getAttribute("preset-id"); 23488 if (presetId) { 23489 const presetIdNum = parseInt(presetId); 23490 if (getters["library/isPresetExpired"](presetIdNum)) { 23491 link.removeAttribute("href"); 23492 } 23493 } 23494 }); 23495 }, 0); 23496 return htmlContent; 23497 }; 23498 return { 23499 isExpired, 23500 expiredPresetId, 23501 processExpiredLinks 23502 }; 23503} 23504function useIsPresetExpired(settings) { 23505 const store = useStore(); 23506 const { getters, state } = store; 23507 const isExpired = computed(() => { 23508 var _a, _b; 23509 const presetId = settings == null ? void 0 : settings.presetId; 23510 const isPresetExpired = getters["library/isPresetExpired"](presetId); 23511 if (isPresetExpired) return true; 23512 const evaluateArticlesAsCLItems = (_b = (_a = state == null ? void 0 : state.settings) == null ? void 0 : _a.featureFlags) == null ? void 0 : _b.EvaluateArticlesAsCLItems;
23513 if (evaluateArticlesAsCLItems && (settings == null ? void 0 : settings.type) === "article" && (settings == null ? void 0 : settings.id)) { 23514 return getters["library/isContentExpired"](settings.id, settings); 23515 } 23516 return false; 23517 }); 23518 const showExpiredPresetId = useShowExpiredPresetId(getters); 23519 const expiredPresetId = computed(() => { 23520 if (!showExpiredPresetId.value || !isExpired.value) return void 0; 23521 return getPresetId(settings); 23522 }); 23523 return { 23524 isExpired, 23525 expiredPresetId 23526 }; 23527} 23528const _hoisted_1$4o = { 23529 key: 1, 23530 "data-testid": "expired-block", 23531 class: "block__body" 23532}; 23533const _hoisted_2$3_ = ["data-expired-preset-id"]; 23534const _sfc_main$4x = { 23535 __name: "CoreBlock", 23536 props: { 23537 index: { 23538 type: Number, 23539 default: 0 23540 }, 23541 disableLink: { 23542 type: Boolean, 23543 default: false 23544 }, 23545 isEditable: { 23546 type: Boolean, 23547 default: false 23548 }, 23549 nestedLevel: { 23550 type: Number, 23551 default: 0 23552 }, 23553 settings: { 23554 type: Object, 23555 required: true 23556 }, 23557 isBuilderMobile: { 23558 type: Boolean, 23559 default: false 23560 }, 23561 isFirstPageLevelBlock: { 23562 type: Boolean, 23563 default: void 0 23564 }, 23565 isFirstPageLevelPosition: { 23566 type: Boolean, 23567 default: void 0 23568 }, 23569 // Builder-only: forwarded to editable block renderers (e.g. rich text) 23570 // to enable inline canvas editing. Defaults off so SiteViewer is
23570inert. 23571 inlineEditable: { 23572 type: Boolean, 23573 default: false 23574 }, 23575 // Builder-only: whether inline editing is currently active for this block. 23576 inlineEditing: { 23577 type: Boolean, 23578 default: false 23579 }, 23580 // Builder-only: field keys the schema disables for inline editing. 23581 inlineDisabledFields: { 23582 type: Array, 23583 default: () => [] 23584 }, 23585 // Builder-only: the card field a nested block edits (e.g. `primaryLabel`). 23586 inlineFieldKey: { 23587 type: String, 23588 default: null 23589 }, 23590 // Builder-only: click point that opened inline editing, for caret seating. 23591 caretPoint: { 23592 type: Object, 23593 default: null 23594 } 23595 }, 23596 emits: ["inline-enter"], 23597 setup(__props, { emit: __emit }) { 23598 const props = __props; 23599 const emit2 = __emit; 23600 const store = useStore(); 23601 const route = useRoute(); 23602 const blockRootRef = ref(null); 23603 const setBlockRootRef = (element) => { 23604 if (!element) { 23605 blockRootRef.value = null; 23606 return; 23607 } 23608 blockRootRef.value = element.$el ?? element; 23609 }; 23610 const dataSite = computed(() => sitePath(store)); 23611 const scrollAnimationExcluded = inject(SCROLL_ANIMATION_EXCLUDED_KEY, false); 23612 const siteScrollAnimation = inject("siteScrollAnimation", null); 23613 const builderPreviewRoot = inject("siteScrollAnimationPreviewRoot", null); 23614 const siteScrollAnimationConfig = computed(() => { 23615 var _a, _b, _c; 23616 const source = siteScrollAnimation; 23617 const injected = unref(source); 23618 const siteRecord = ((_b = (_a = store.state) == null ? void 0 : _a.site) == null ? void 0 : _b.workingSite) ?? ((_c = store.state) == null ? void 0 : _c.site) ?? null; 23619 return { 23620 ...getSiteAnimationSettingsFromRecord(siteRecord), 23621 ...injected || {} 23622 }; 23623 }); 23624 const builderPreviewToken = computed(() => { 23625 var _a, _b; 23626 if (!props.isEditable) { 23627 return 0; 23628 } 23629 return ((_b = (_a = store.state) == null ? void 0 : _a.site) == null ? void 0 : _b.animationPreviewGeneration) ?? 0; 23630 }); 23631 const isScrollAnimatableBlock = computed( 23632 () => { 23633 var _a; 23634 return !scrollAnimationExcluded && isScrollAnimatableBlockType((_a = props.settings) == null ? void 0 : _a.type); 23635 } 23636 ); 23637 const siteAnimationsFeatureEnabled = computed( 23638 () => { 23639 var _a, _b; 23640 return ((_b = (_a = store.getters) == null ? void 0 : _a["settings/getFeatureFlag"]) == null ? void 0 : _b.call(_a, "SiteAnimations")) === true; 23641 } 23642 ); 23643 const { scrollAnimationClasses } = useScrollAnimation(blockRootRef, { 23644 enabled: isScrollAnimatableBlock, 23645 animationStyle: computed( 23646 () => { 23647 var _a; 23648 return (_a = siteScrollAnimationConfig.value) == null ? void 0 : _a.animationStyle; 23649 } 23650 ), 23651 animationSpeed: computed( 23652 () => { 23653 var _a; 23654 return (_a = siteScrollAnimationConfig.value) == null ? void 0 : _a.animationSpeed; 23655 } 23656 ), 23657 siteMobileAnimationsEnabled: computed( 23658 () => { 23659 var _a; 23660 return ((_a = siteScrollAnimationConfig.value) == null ? void 0 : _a.animationEnabledOnMobile) === true; 23661 } 23662 ), 23663 isEditable: computed(() => props.isEditable), 23664 isCompliance: computed(() => { 23665 var _a; 23666 return (_a = route == null ? void 0 : route.name) == null ? void 0 : _a.includes("compliance"); 23667 }), 23668 siteAnimationsFeatureEnabled, 23669 isBuilderMobile: computed(() => props.isBuilderMobile), 23670 builderPreviewToken, 23671 builderPreviewRoot 23672 }); 23673 const useBrandSpecificComponents = inject("useBrandSpecificComponents", false); 23674 const { componentModule } = useLoadComponent(props, { 23675 useBrandSpecificComponents 23676 }); 23677 const { classes: emptyComponentClasses } = useEmptyComponent(props == null ? void 0 : props.settings); 23678 const { isExpired, expiredPresetId } = useIsPresetExpired(props.settings); 23679 const { 23680 offsetMode: navOffsetMode, 23681 navOffsetStyle, 23682 navBarHeightSize, 23683 isStackedRightNav, 23684 isFirstPageLevelBlock: resolvedIsFirstPageLevelBlock, 23685 isNavHidden 23686 } = useBlockNavOffset(props); 23687 const displayLinkProperties = computed( 23688 () => { 23689 var _a, _b, _c; 23690 return !!(((_a = props.settings) == null ? void 0 : _a.displayLinkProperties) || ((_b = props.settings) == null ? void 0 : _b["image-link"]) || ((_c = props.settings) == null ? void 0 : _c.linkInternal)); 23691 } 23692 ); 23693 const internalLink = computed(() => { 23694 var _a; 23695 const url = (_a = props.settings) == null ? void 0 : _a.linkUrl; 23696 return isObject$1(url) || !!(url == null ? void 0 : url.startsWith("/")); 23697 }); 23698 const blockTag = computed(() => { 23699 var _a; 23700 if (displayLinkProperties.value && ((_a = props.settings) == null ? void 0 : _a.linkUrl) && !props.isEditable) { 23701 return internalLink.value ? __nuxt_component_2$5 : "a"; 23702 } 23703 return "div"; 23704 }); 23705 const linkUrl = computed(() => { 23706 var _a, _b, _c, _d; 23707 if (props.disableLink) { 23708 return ""; 23709 } 23710 if (isObject$1((_a = props.settings) == null ? void 0 : _a.linkUrl)) { 23711 return props.settings.linkUrl; 23712 } 23713 if (((_c = (_b = props.settings) == null ? void 0 : _b.linkUrl) == null ? void 0 : _c.charAt(0)) === "#") { 23714 return { 23715 hash: props.settings.linkUrl, 23716 path: route.path 23717 }; 23718 } 23719 return (_d = props.settings) == null ? void 0 : _d.linkUrl; 23720 }); 23721 const linkTarget = computed(() => { 23722 var _a, _b; 23723 if (((_a = props.settings) == null ? void 0 : _a.newWindowLink) === void 0) { 23724 return ((_b = props.settings) == null ? void 0 : _b.linkInternal) ? "_self" : "_blank"; 23725 } 23726 return props.settings.newWindowLink ? "_blank" : "_self"; 23727 }); 23728 const blockId = computed(() => props.settings.id); 23729 const blockStyle = computed(() => { 23730 const styleSetting = props.settings.style || ""; 23731 return [styleSetting].join("\n").replaceAll("#id", `#${blockId.value}`); 23732 }); 23733 const blockType = computed(() => props.settings.type); 23734 const NAV_OFFSET_AWARE_BLOCK_TYPES = [ 23735 "rows", 23736 "columns", 23737 "grid", 23738 "container", 23739 "heroComponent" 23740 ]; 23741 const navOffsetForwardedProps = computed(() => { 23742 if (!NAV_OFFSET_AWARE_BLOCK_TYPES.includes(blockType.value)) return {}; 23743 return { 23744 isFirstPageLevelBlock: resolvedIsFirstPageLevelBlock.value, 23745 isFirstPageLevelPosition: props.isFirstPageLevelPosition 23746 }; 23747 }); 23748 const forwardInlineEnter = (event) => emit2("inline-enter", event); 23749 const forwardedProps = computed(() => { 23750 var _a; 23751 if (!props.inlineEditable && !props.inlineEditing) { 23752 return navOffsetForwardedProps.value; 23753 } 23754 const inlineProps = { 23755 inlineEditable: props.inlineEditable, 23756 inlineEditing: props.inlineEditing, 23757 onInlineEnter: forwardInlineEnter 23758 }; 23759 if ((_a = props.inlineDisabledFields) == null ? void 0 : _a.length) { 23760 inlineProps.inlineDisabledFields = props.inlineDisabledFields; 23761 } 23762 if (props.inlineFieldKey != null) { 23763 inlineProps.inlineFieldKey = props.inlineFieldKey; 23764 } 23765 if (props.caretPoint != null) { 23766 inlineProps.caretPoint = props.caretPoint; 23767 } 23768 return { ...navOffsetForwardedProps.value, ...inlineProps }; 23769 }); 23770 const isCompliance = computed(() => { 23771 var _a; 23772 return (_a = route == null ? void 0 : route.name) == null ? void 0 : _a.includes("compliance"); 23773 }); 23774 const CORNER_RADIUS_VARIANT_KEYS = ["corner-radius", "per-column-corners"]; 23775 const cornerRadiusEnabled = computed( 23776 () => { 23777 var _a, _b; 23778 return ((_b = (_a = store.getters) == null ? void 0 : _a["settings/getFeatureFlag"]) == null ? void 0 : _b.call( 23779 _a, 23780 "BuilderEnhCornerRadius" 23781 )) === true; 23782 } 23783 ); 23784 const blockVariants = computed(() => { 23785 const variants = []; 23786 if (props.settings.variants) { 23787 for (const [variantKey, variantValue] of Object.entries( 23788 props.settings.variants 23789 )) { 23790 if (!cornerRadiusEnabled.value && CORNER_RADIUS_VARIANT_KEYS.includes(variantKey)) { 23791 continue; 23792 } 23793 if (variantKey !== "_custom") { 23794 if (variantValue === true) { 23795 variants.push(variantKey); 23796 } else { 23797 variants.push(variantValue); 23798 } 23799 } 23800 } 23801 } 23802 if (!variants.length) { 23803 variants.push("base"); 23804 } 23805 return variants; 23806 }); 23807 const blockClasses = computed(() => { 23808 var _a; 23809 const classList = ["block", `block_${blockType.value}`]; 23810 blockVariants.value.forEach((variant) => { 23811 if (variant) { 23812 classList.push(`block_${blockType.value}_${variant}`); 23813 } 23814 }); 23815 if ((_a = props.settings.variants) == null ? void 0 : _a._custom) { 23816 classList.push(props.settings.variants._custom.split(" ")); 23817 } 23818 if (!isCompliance.value) { 23819 classList.push(...emptyComponentClasses.value); 23820 } 23821 if ((props == null ? void 0 : props.settings.type) == "repeat" && !props.settings.dictionaryId) { 23822 classList.push(["repeat_without_source"]); 23823 }
23824 if (navOffsetMode.value !== "none") { 23825 classList.push(`block--nav-offset_${navOffsetMode.value}`); 23826 if (navOffsetStyle.value === "transparent") { 23827 classList.push("block--nav-offset-style_transparent"); 23828 } 23829 if (navBarHeightSize.value) { 23830 classList.push( 23831 `block--nav-offset-height_${navBarHeightSize.value}` 23832 ); 23833 } 23834 if (isStackedRightNav.value) { 23835 classList.push("block--nav-offset-stacked-right"); 23836 } 23837 } 23838 return classList; 23839 }); 23840 const blockClassesWithAnimation = computed(() => [ 23841 ...blockClasses.value, 23842 ...scrollAnimationClasses.value 23843 ]); 23844 const linkProps = computed(() => { 23845 if (!displayLinkProperties.value) return {}; 23846 return internalLink.value ? { to: linkUrl.value, target: linkTarget.value } : { href: linkUrl.value, target: linkTarget.value }; 23847 }); 23848 const relAttributes = computed(() => { 23849 var _a, _b, _c, _d; 23850 const featureEnabled = (_c = (_b = (_a = store.state) == null ? void 0 : _a.settings) == null ? void 0 : _b.featureFlags) == null ? void 0 : _c.SeoLinkRelAttributes; 23851 if (!featureEnabled) return null; 23852 if (!((_d = props.settings) == null ? void 0 : _d["image-link"])) return null; 23853 if (Array.isArray(props.settings.relAttributes) && props.settings.relAttributes.length > 0) { 23854 return props.settings.relAttributes.join(" "); 23855 } 23856 if (linkTarget.value === "_blank") { 23857 return "noopener noreferrer"; 23858 } 23859 return null; 23860 }); 23861 return (_ctx, _cache) => { 23862 return !unref(isExpired) && !unref(isNavHidden) ? (openBlock(), createBlock(resolveDynamicComponent(blockTag.value), mergeProps({ 23863 key: 0, 23864 id: blockId.value, 23865 ref: setBlockRootRef, 23866 target: linkTarget.value, 23867 class: blockClassesWithAnimation.value 23868 }, linkProps.value, { rel: relAttributes.value }), { 23869 default: withCtx(() => [ 23870 (openBlock(), createBlock(resolveDynamicComponent(unref(componentModule)), mergeProps({ 23871 settings: __props.settings, 23872 "nested-level": __props.nestedLevel, 23873 index: __props.index, 23874 "is-editable": __props.isEditable, 23875 "data-site": dataSite.value, 23876 "is-builder-mobile": __props.isBuilderMobile 23877 }, forwardedProps.value), createSlots({ _: 2 }, [ 23878 _ctx.$slots["inline-editor"] ? { 23879 name: "inline-editor", 23880 fn: withCtx((slotData) => [ 23881 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps(slotData))) 23882 ]), 23883 key: "0" 23884 } : void 0 23885 ]), 1040, ["settings", "nested-level", "index", "is-editable", "data-site", "is-builder-mobile"])), 23886 renderSlot(_ctx.$slots, "controls"), 23887 blockStyle.value ? (openBlock(), createBlock(resolveDynamicComponent("style"), { key: 0 }, { 23888 default: withCtx(() => [ 23889 createTextVNode(toDisplayString(blockStyle.value), 1) 23890 ]), 23891 _: 1 23892 })) : createCommentVNode("", true) 23893 ]), 23894 _: 3 23895 }, 16, ["id", "target", "class", "rel"])) : unref(isExpired) ? (openBlock(), createElementBlock("div", _hoisted_1$4o, [ 23896 createBaseVNode("div", { 23897 class: "expired-content", 23898 "data-expired-preset-id": unref(expiredPresetId) 23899 }, null, 8, _hoisted_2$3_) 23900 ])) : createCommentVNode("", true); 23901 }; 23902 } 23903}; 23904const CoreBlock = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 23905 __proto__: null, 23906 default: _sfc_main$4x 23907}, Symbol.toStringTag, { value: "Module" })); 23908const _sfc_main$4w = { 23909 name: "CoreBlockCalendly", 23910 props: { 23911 settings: { 23912 type: Object, 23913 required: true 23914 }, 23915 isEditable: { 23916 type: Boolean, 23917 default: false 23918 } 23919 }, 23920 computed: { 23921 calendlyUrl() { 23922 let eventType = this.settings.eventType; 23923 let calURL = ""; 23924 if (eventType === "Custom Event") { 23925 calURL = `https://calendly.com/${this.settings.calendlyId}/${this.customEvent}?utm_campaign=marketing&utm_source=agentwebsites`; 23926 } else if (eventType) { 23927 eventType = eventType.toLowerCase().replace(/\s/g, ""); 23928 calURL = `https://calendly.com/${this.settings.calendlyId}/${eventType}?utm_campaign=marketing&utm_source=agentwebsites`; 23929 } else { 23930 calURL = `https://calendly.com/${this.settings.calendlyId}/?utm_campaign=marketing&utm_source=agentwebsites`; 23931 } 23932 return calURL; 23933 }, 23934 customEvent() { 23935 const customEvent = this.settings.customEvent; 23936 const eventType = this.settings.eventType; 23937 if (customEvent && eventType === "Custom Event") { 23938 return customEvent; 23939 } 23940 switch (eventType) { 23941 case "General Discussion":
23942 return "generaldiscussion"; 23943 case "Intro Appointment": 23944 return "introappointment"; 23945 case "Review": 23946 return "review"; 23947 case "Intro to NYL": 23948 return "introtonyl"; 23949 case "Quick Checkin": 23950 return "quickcheckin"; 23951 case "First Interview": 23952 return "firstinterview"; 23953 default: 23954 return ""; 23955 } 23956 }, 23957 buttonText() { 23958 return this.settings.buttonText; 23959 }, 23960 getDisplayType() { 23961 return this.settings.displayType; 23962 }, 23963 primaryBtn() { 23964 return { 23965 type: "button", 23966 label: this.buttonText, 23967 newTab: this.settings.primaryBtnNewTab, 23968 event: this.showPopUp 23969 }; 23970 } 23971 }, 23972 methods: { 23973 showPopUp() { 23974 this.GTMCalendly(); 23975 { 23976 window.Calendly.showPopupWidget(this.calendlyUrl); 23977 this.setCalendlyAttributes(this.settings.iframeTitle); 23978 this.addModalListener(); 23979 this.focusPopup(); 23980 } 23981 return false; 23982 }, 23983 focusPopup() { 23984 const container = document.querySelector(".calendly-popup-content"); 23985 if (!container) { 23986 return; 23987 } 23988 const button = document.createElement("button"); 23989 container.prepend(button); 23990 button.focus(); 23991 button.remove(); 23992 }, 23993 setCalendlyAttributes(title) { 23994 var _a; 23995 const iframes = document.querySelectorAll("iframe"); 23996 for (const iframe of iframes) {
23997 if ((_a = iframe.src) == null ? void 0 : _a.includes("https://calendly.com")) { 23998 iframe.setAttribute( 23999 "title", 24000 title || "default-calendly-title" 24001 ); 24002 } 24003 } 24004 document.querySelector(".calendly-popup-close").setAttribute("tabIndex", "0"); 24005 }, 24006 closeModalKeyHandler(event) { 24007 if (event.key === "Escape" || event.keyCode === 27) { 24008 this.closeCalendlyModal(); 24009 } 24010 }, 24011 closeCalendlyModal() { 24012 window.Calendly.closePopupWidget(); 24013 document.removeEventListener( 24014 "keydown", 24015 this.closeModalKeyHandler, 24016 true 24017 ); 24018 }, 24019 addModalListener() { 24020 document.addEventListener( 24021 "keydown", 24022 this.closeModalKeyHandler, 24023 true 24024 ); 24025 }, 24026 GTMCalendly() { 24027 const { eventType, calendlyId } = this.decodeCalendlyUrl( 24028 this.settings.url 24029 ); 24030 this.$gtm.push({ 24031 event: "nyl-calendly", 24032 calendly_id: calendlyId, 24033 calendly_category: this.getCalendlyCategory(eventType), 24034 event_type: eventType, 24035 calendly_event_id: eventType == null ? void 0 : eventType.toLowerCase().replace(/\s/g, ""), 24036 click_url: this.settings.url 24037 }); 24038 }, 24039 decodeCalendlyUrl(url) { 24040 if (!url || typeof url !== "string" || url.trim() === "") { 24041 return { 24042 eventType: null, 24043 calendlyId: null 24044 }; 24045 } 24046 try { 24047 const urlObj = new URL(url); 24048 const pathParts = urlObj.pathname.split("/").filter((part) => part !== ""); 24049 const calendlyId = pathParts[0] || null; 24050 let eventType = ""; 24051 if (pathParts.length > 1) { 24052 eventType = decodeURIComponent(pathParts[1]); 24053 } 24054 if (!eventType || eventType.includes("utm_campaign") && eventType.includes("utm_source")) { 24055 eventType = null; 24056 } 24057 return { 24058 eventType, 24059 calendlyId 24060 }; 24061 } catch (error) { 24062 console.error("Invalid Calendly URL:", error); 24063 return { 24064 eventType: null, 24065 calendlyId: null 24066 }; 24067 } 24068 }, 24069 getCalendlyCategory(eventType) { 24070 var calendlyCategory = ""; 24071 switch (eventType) { 24072 case "Custom Event": 24073 calendlyCategory = "custom"; 24074 break; 24075 case "General Discussion": 24076 case "Intro Appointment": 24077 case "Review": 24078 calendlyCategory = "agent"; 24079 break; 24080 case "Intro to NYL": 24081 case "Quick Checkin": 24082 case "First Interview": 24083 calendlyCategory = "GO"; 24084 break; 24085 } 24086 return calendlyCategory; 24087 } 24088 } 24089}; 24090function _sfc_render$3V(_ctx, _cache, $props, $setup, $data, $options) { 24091 const _component_CoreBlock = _sfc_main$4x; 24092 return openBlock(), createElementBlock("div", null, [ 24093 $options.getDisplayType === "Button" ? (openBlock(), createBlock(_component_CoreBlock, { 24094 key: 0, 24095 settings: $options.primaryBtn, 24096 class: "primary-button", 24097 "is-editable": $props.isEditable 24098 }, null, 8, ["settings", "is-editable"])) : createCommentVNode("", true), 24099 $options.getDisplayType === "Link" ? (openBlock(), createElementBlock("a", { 24100 key: 1, 24101 class: "calendly__link", 24102 tabindex: "0", 24103 role: "button", 24104 onKeydown: _cache[0] || (_cache[0] = withKeys((...args) => $options.showPopUp && $options.showPopUp(...args), ["enter"])), 24105 onClick: _cache[1] || (_cache[1] = (...args) => $options.showPopUp && $options.showPopUp(...args)) 24106 }, toDisplayString($options.buttonText), 33)) : createCommentVNode("", true) 24107 ]); 24108} 24109const CoreBlockCalendly = /* @__PURE__ */ _export_sfc(_sfc_main$4w, [["render", _sfc_render$3V]]); 24110const CoreBlockCalendly$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 24111 __proto__: null, 24112 default: CoreBlockCalendly 24113}, Symbol.toStringTag, { value: "Module" })); 24114const iconSchema = [ 24115 { 24116 value: "account", 24117 label: "Account" 24118 }, 24119 { 24120 value: "add-folder", 24121 label: "Add Folder" 24122 }, 24123 { 24124 value: "add-page", 24125 label: "Add Page" 24126 }, 24127 { 24128 value: "advanced-search", 24129 label: "Advanced Search" 24130 }, 24131 { 24132 value: "align-vertical-bottom", 24133 label: "Align Vertical Bottom" 24134 }, 24135 { 24136 value: "align-center", 24137 label: "Align Center" 24138 }, 24139 { 24140 value: "align-left", 24141 label: "Align Left" 24142 }, 24143 { 24144 value: "align-right", 24145 label: "Align Right" 24146 }, 24147 { 24148 value: "align-vertical-center", 24149 label: "Align Vertical Center" 24150 }, 24151 { 24152 value: "align-vertical-top", 24153 label: "Align Vertical Top" 24154 }, 24155 { 24156 value: "analytics", 24157 label: "Analytics" 24158 }, 24159 { 24160 value: "anchor-link", 24161 label: "Anchor Link" 24162 }, 24163 { 24164 value: "archive", 24165 label: "Archive" 24166 }, 24167 { 24168 value: "arrow-down", 24169 label: "Arrow Down" 24170 }, 24171 { 24172 value: "arrow-left", 24173 label: "Arrow Left" 24174 }, 24175 { 24176 value: "arrow-left-circle", 24177 label: "Arrow Left Circle" 24178 }, 24179 { 24180 value: "arrow-right", 24181 label: "Arrow Right" 24182 }, 24183 { 24184 value: "arrow-up", 24185 label: "Arrow Up" 24186 }, 24187 { 24188 value: "article", 24189 label: "Article" 24190 }, 24191 { 24192 value: "breadcrumb-expand", 24193 label: "Breadcrumb Expand" 24194 }, 24195 { 24196 value: "brush", 24197 label: "Brush" 24198 }, 24199 { 24200 value: "button", 24201 label: "Button" 24202 }, 24203 { 24204 value: "calendar", 24205 label: "Calendar" 24206 }, 24207 { 24208 value: "carousel", 24209 label: "Carousel" 24210 }, 24211 { 24212 value: "carousel-backward", 24213 label: "Carousel Backward" 24214 }, 24215 { 24216 value: "carousel-forward", 24217 label: "Carousel Forward" 24218 }, 24219 { 24220 value: "changes", 24221 label: "Changes" 24222 }, 24223 { 24224 value: "checkmark", 24225 label: "Checkmark" 24226 }, 24227 { 24228 value: "chevron-down", 24229 label: "Chevron Down" 24230 }, 24231 { 24232 value: "chevron-left", 24233 label: "Chevron Left" 24234 }, 24235 { 24236 value: "chevron-right", 24237 label: "Chevron Right" 24238 }, 24239 { 24240 value: "chevron-up", 24241 label: "Chevron Up" 24242 }, 24243 { 24244 value: "circle-check", 24245 label: "Circle Check" 24246 }, 24247 { 24248 value: "circle-minus", 24249 label: "Circle Minus" 24250 }, 24251 { 24252 value: "circle-minus-filled", 24253 label: "Circle Minus Filled" 24254 }, 24255 { 24256 value: "circle-plus", 24257 label: "Circle Plus" 24258 }, 24259 { 24260 value: "circle-plus-filled", 24261 label: "CIrcle Plus Filled" 24262 }, 24263 { 24264 value: "clock", 24265 label: "Clock" 24266 }, 24267 { 24268 value: "clock-filled", 24269 label: "Clock Filled" 24270 }, 24271 { 24272 value: "close", 24273 label: "Close" 24274 }, 24275 { 24276 value: "close-circle", 24277 label: "Close Circle" 24278 }, 24279 { 24280 value: "compliance", 24281 label: "Compliance" 24282 }, 24283 { 24284 value: "computer", 24285 label: "Computer" 24286 }, 24287 { 24288 value: "connected", 24289 label: "Connected" 24290 }, 24291 { 24292 value: "connected-outline", 24293 label: "Connected Outline" 24294 }, 24295 { 24296 value: "contact", 24297 label: "Contact" 24298 }, 24299 { 24300 value: "contact-email", 24301 label: "Contact Email" 24302 }, 24303 { 24304 value: "contact-fax", 24305 label: "Contact Fax" 24306 }, 24307 { 24308 value: "contact-phone", 24309 label: "Contact Phone" 24310 }, 24311 { 24312 value: "contact-smartphone", 24313 label: "Contact Smartphone" 24314 }, 24315 { 24316 value: "containers-icon", 24317 label: "Containers Icon" 24318 }, 24319 { 24320 value: "content-library", 24321 label: "Content Library" 24322 }, 24323 { 24324 value: "copyright", 24325 label: "Copyright" 24326 }, 24327 { 24328 value: "default", 24329 label: "Default" 24330 }, 24331 { 24332 value: "design", 24333 label: "Design" 24334 }, 24335 { 24336 value: "devices", 24337 label: "Devices" 24338 }, 24339 { 24340 value: "domains", 24341 label: "Domains" 24342 }, 24343 { 24344 value: "down-arrow", 24345 label: "Down Arrow" 24346 }, 24347 { 24348 value: "download", 24349 label: "Download" 24350 }, 24351 { 24352 value: "drafts", 24353 label: "Drafts" 24354 }, 24355 { 24356 value: "duplicate", 24357 label: "Duplicate" 24358 }, 24359 { 24360 value: "edit", 24361 label: "Edit" 24362 }, 24363 { 24364 value: "email", 24365 label: "Email" 24366 }, 24367 { 24368 value: "emoji", 24369 label: "Emoji" 24370 }, 24371 { 24372 value: "error", 24373 label: "Error" 24374 }, 24375 { 24376 value: "error-filled", 24377 label: "Error Filled" 24378 }, 24379 { 24380 value: "external-link", 24381 label: "External Link" 24382 }, 24383 { 24384 value: "facebook", 24385 label: "Facebook" 24386 }, 24387 { 24388 value: "favorite-filled", 24389 label: "Favorite Filled" 24390 }, 24391 { 24392 value: "favorite-unfilled", 24393 label: "Favorite Unfilled" 24394 }, 24395 { 24396 value: "fax", 24397 label: "Fax" 24398 }, 24399 { 24400 value: "file", 24401 label: "File" 24402 }, 24403 { 24404 value: "filter", 24405 label: "Filter" 24406 }, 24407 { 24408 value: "folder", 24409 label: "Folder" 24410 }, 24411 { 24412 value: "footer", 24413 label: "Footer" 24414 }, 24415 { 24416 value: "form", 24417 label: "Form" 24418 }, 24419 { 24420 value: "form-icon", 24421 label: "Form Icon" 24422 }, 24423 { 24424 value: "gradient", 24425 label: "Gradient" 24426 }, 24427 { 24428 value: "gradient-square", 24429 label: "Gradient Square" 24430 }, 24431 { 24432 value: "grid", 24433 label: "Grid" 24434 }, 24435 { 24436 value: "grid-on", 24437 label: "Grid On" 24438 }, 24439 { 24440 value: "hamburger-menu", 24441 label: "Hamburger Menu" 24442 }, 24443 { 24444 value: "header", 24445 label: "Header" 24446 }, 24447 { 24448 value: "home", 24449 label: "Home" 24450 }, 24451 { 24452 value: "icons", 24453 label: "Icons" 24454 }, 24455 { 24456 value: "icon-71", 24457 label: "Icon 71" 24458 }, 24459 { 24460 value: "image", 24461 label: "Image" 24462 }, 24463 { 24464 value: "info", 24465 label: "Info" 24466 }, 24467 { 24468 value: "in-review", 24469 label: "In Review" 24470 }, 24471 { 24472 value: "insert-drive-file", 24473 label: "Insert Drive File" 24474 }, 24475 { 24476 value: "insert-link", 24477 label: "Insert Link" 24478 }, 24479 { 24480 value: "landing-logo", 24481 label: "Landing Logo" 24482 }, 24483 { 24484 value: "layout", 24485 label: "Layout" 24486 }, 24487 { 24488 value: "left-arrow", 24489 label: "Left Arrow" 24490 }, 24491 { 24492 value: "linkedin", 24493 label: "Linkedin" 24494 }, 24495 { 24496 value: "list", 24497 label: "List" 24498 }, 24499 { 24500 value: "list-view", 24501 label: "List View" 24502 }, 24503 { 24504 value: "lock", 24505 label: "Lock" 24506 }, 24507 { 24508 value: "logo", 24509 label: "Logo" 24510 }, 24511 { 24512 value: "map", 24513 label: "Map" 24514 }, 24515 { 24516 value: "map-pin", 24517 label: "Mappin" 24518 }, 24519 { 24520 value: "maximize", 24521 label: "Maximize" 24522 }, 24523 { 24524 value: "media", 24525 label: "Media" 24526 }, 24527 { 24528 value: "menu-close", 24529 label: "Menu Close" 24530 }, 24531 { 24532 value: "minimize", 24533 label: "Minimize" 24534 }, 24535 { 24536 value: "mobile-phone", 24537 label: "Mobile Phone" 24538 }, 24539 { 24540 value: "movie-strip", 24541 label: "Movie Strip" 24542 }, 24543 { 24544 value: "news", 24545 label: "News" 24546 }, 24547 { 24548 value: "notification-alert", 24549 label: "Notification Alert" 24550 }, 24551 { 24552 value: "notifications", 24553 label: "Notifications" 24554 }, 24555 { 24556 value: "open-in-full", 24557 label: "Open In Full" 24558 }, 24559 { 24560 value: "pages", 24561 label: "Pages" 24562 }, 24563 { 24564 value: "painters-palette", 24565 label: "Painters Palette" 24566 }, 24567 { 24568 value: "pause", 24569 label: "Pause" 24570 }, 24571 { 24572 value: "pause-circle", 24573 label: "Pause Circle" 24574 }, 24575 { 24576 value: "phone", 24577 label: "Phone" 24578 }, 24579 { 24580 value: "photo-library", 24581 label: "Photo Library" 24582 }, 24583 { 24584 value: "play", 24585 label: "Play" 24586 }, 24587 { 24588 value: "play-circle", 24589 label: "Play Circle" 24590 }, 24591 { 24592 value: "play-circle-button", 24593 label: "Play Circle Button" 24594 }, 24595 { 24596 value: "plus", 24597 label: "Plus" 24598 }, 24599 { 24600 value: "question-mark", 24601 label: "Question Mark" 24602 }, 24603 { 24604 value: "redo", 24605 label: "Redo" 24606 }, 24607 { 24608 value: "reorder", 24609 label: "Reorder" 24610 }, 24611 { 24612 value: "replay", 24613 label: "Replay" 24614 }, 24615 { 24616 value: "revert", 24617 label: "Revert" 24618 }, 24619 { 24620 value: "right-arrow", 24621 label: "Right Arrow" 24622 }, 24623 { 24624 value: "search", 24625 label: "Search" 24626 }, 24627 { 24628 value: "settings", 24629 label: "Settings" 24630 }, 24631 { 24632 value: "shopping-bag", 24633 label: "Shopping Bag" 24634 }, 24635 { 24636 value: "site-styles", 24637 label: "Site Styles" 24638 }, 24639 { 24640 value: "social", 24641 label: "Social" 24642 }, 24643 { 24644 value: "store", 24645 label: "Store" 24646 }, 24647 { 24648 value: "tablet", 24649 label: "Tablet" 24650 }, 24651 { 24652 value: "tabs", 24653 label: "Tabs" 24654 }, 24655 { 24656 value: "text-style", 24657 label: "Text Style" 24658 }, 24659 { 24660 value: "theme", 24661 label: "Theme" 24662 }, 24663 { 24664 value: "trash", 24665 label: "Trash" 24666 }, 24667 { 24668 value: "twitter", 24669 label: "Twitter" 24670 }, 24671 { 24672 value: "unlock", 24673 label: "Unlock" 24674 }, 24675 { 24676 value: "update", 24677 label: "Update" 24678 }, 24679 { 24680 value: "upload", 24681 label: "Upload" 24682 }, 24683 { 24684 value: "video", 24685 label: "Video" 24686 }, 24687 { 24688 value: "view-desktop", 24689 label: "View Desktop" 24690 }, 24691 { 24692 value: "visibility-off", 24693 label: "Visibility Off" 24694 }, 24695 { 24696 value: "visibility-on", 24697 label: "Visibility On" 24698 }, 24699 { 24700 value: "volume-off", 24701 label: "Volume Off" 24702 }, 24703 { 24704 value: "volume-on", 24705 label: "Volume On" 24706 }, 24707 { 24708 value: "volume-up", 24709 label: "Volume Up" 24710 }, 24711 { 24712 value: "watch-later", 24713 label: "Watch Later" 24714 }, 24715 { 24716 value: "youtube", 24717 label: "Youtube" 24718 }, 24719 { 24720 value: "tool", 24721 label: "Tool" 24722 }, 24723 { 24724 value: "bottom-banner", 24725 label: "Bottom Banner" 24726 }, 24727 { 24728 value: "notes", 24729 label: "Notes" 24730 }, 24731 { 24732 value: "sizing", 24733 label: "Sizing" 24734 }, 24735 { 24736 value: "select-all", 24737 label: "Select All" 24738 }, 24739 { 24740 value: "reader-mode", 24741 label: "Reader Mode" 24742 }, 24743 { 24744 value: "bars", 24745 label: "Bars" 24746 }, 24747 { 24748 value: "rounded-square", 24749 label: "Rounded Square" 24750 }, 24751 { 24752 value: "divider", 24753 label: "Divider" 24754 }, 24755 { 24756 value: "accordion", 24757 label: "Accordion" 24758 }, 24759 { 24760 value: "replace", 24761 label: "Replace" 24762 }, 24763 { 24764 value: "shield", 24765 label: "Shield" 24766 }, 24767 { 24768 value: "contact-page", 24769 label: "ContactPage" 24770 }, 24771 { 24772 value: "close-circle-filled", 24773 label: "Close Circle Filled" 24774 }, 24775 { 24776 value: "square-edit", 24777 label: "Square Edit" 24778 }, 24779 { 24780 value: "video-play", 24781 label: "Square Edit" 24782 }, 24783 { 24784 value: "pdf", 24785 label: "pdf" 24786 }, 24787 { 24788 value: "copy", 24789 label: "Copy" 24790 }, 24791 { 24792 value: "ellipsis-outlined", 24793 label: "ellipsis" 24794 }, 24795 { 24796 value: "page", 24797 label: "Page" 24798 }, 24799 { 24800 value: "section", 24801 label: "Section" 24802 }, 24803 { 24804 value: "categories", 24805 label: "Categories" 24806 }, 24807 { 24808 value: "content-library-media", 24809 label: "Content Library Media" 24810 }, 24811 { 24812 value: "template", 24813 label: "Template" 24814 }, 24815 { 24816 value: "disclosures", 24817 label: "Disclosures" 24818 } 24819]; 24820const _sfc_main$4v = { 24821 name: "CoreIcon", 24822 inject: { 24823 isBuilder: { 24824 default: false 24825 } 24826 }, 24827 props: { 24828 icon: { 24829 type: String, 24830 required: true 24831 }, 24832 settings: { 24833 type: Object, 24834 required: false, 24835 default: () => ({}) 24836 } 24837 }, 24838 computed: { 24839 style() { 24840 return { 24841 ...this.$attrs.style, 24842 color: this.isBuilder ? "currentColor" : "var(--_core__icon_color, currentColor)" 24843 }; 24844 }, 24845 iconName() { 24846 const iconValue = kebabCase(this.icon); 24847 const iconExists = iconSchema.some( 24848 (icon) => icon.value === iconValue 24849 ); 24850 const componentName = "CoreIcon" + flow(camelCase, upperFirst)(this.icon);
24851 try { 24852 const component = resolveComponent(componentName); 24853 if (iconExists && component) { 24854 return componentName; 24855 } 24856 return "CoreIconQuestionMark"; 24857 } catch (e) { 24858 return "CoreIconQuestionMark"; 24859 } 24860 } 24861 } 24862}; 24863function _sfc_render$3U(_ctx, _cache, $props, $setup, $data, $options) { 24864 return openBlock(), createBlock(resolveDynamicComponent($options.iconName), { 24865 class: "block_icon-icon", 24866 style: normalizeStyle($options.style), 24867 value: $props.icon, 24868 settings: $props.settings 24869 }, null, 8, ["style", "value", "settings"]); 24870} 24871const __nuxt_component_1$7 = /* @__PURE__ */ _export_sfc(_sfc_main$4v, [["render", _sfc_render$3U]]); 24872const CoreIcon = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 24873 __proto__: null, 24874 default: __nuxt_component_1$7 24875}, Symbol.toStringTag, { value: "Module" })); 24876const licenseStates = [ 24877 { value: "AL", text: "Alabama" }, 24878 { value: "AK", text: "Alaska" }, 24879 { value: "AZ", text: "Arizona" }, 24880 { value: "AR", text: "Arkansas" }, 24881 { value: "CA", text: "California" }, 24882 { value: "CO", text: "Colorado" }, 24883 { value: "CT", text: "Connecticut" }, 24884 { value: "DC", text: "District of Columbia" }, 24885 { value: "DE", text: "Delaware" }, 24886 { value: "FL", text: "Florida" }, 24887 { value: "GA", text: "Georgia" }, 24888 { value: "HI", text: "Hawaii" }, 24889 { value: "ID", text: "Idaho" }, 24890 { value: "IL", text: "Illinois" }, 24891 { value: "IN", text: "Indiana" }, 24892 { value: "IA", text: "Iowa" }, 24893 { value: "KS", text: "Kansas" }, 24894 { value: "KY", text: "Kentucky" }, 24895 { value: "LA", text: "Louisiana" }, 24896 { value: "ME", text: "Maine" }, 24897 { value: "MD", text: "Maryland" }, 24898 { value: "MA", text: "Massachusetts" }, 24899 { value: "MI", text: "Michigan" }, 24900 { value: "MN", text: "Minnesota" }, 24901 { value: "MS", text: "Mississippi" }, 24902 { value: "MO", text: "Missouri" }, 24903 { value: "MT", text: "Montana" }, 24904 { value: "NE", text: "Nebraska" }, 24905 { value: "NV", text: "Nevada" }, 24906 { value: "NH", text: "New Hampshire" }, 24907 { value: "NJ", text: "New Jersey" }, 24908 { value: "NM", text: "New Mexico" }, 24909 { value: "NY", text: "New York" }, 24910 { value: "NC", text: "North Carolina" }, 24911 { value: "ND", text: "North Dakota" }, 24912 { value: "OH", text: "Ohio" }, 24913 { value: "OK", text: "Oklahoma" }, 24914 { value: "OR", text: "Oregon" }, 24915 { value: "PA", text: "Pennsylvania" }, 24916 { value: "RI", text: "Rhode Island" }, 24917 { value: "SC", text: "South Carolina" }, 24918 { value: "SD", text: "South Dakota" }, 24919 { value: "TN", text: "Tennessee" }, 24920 { value: "TX", text: "Texas" }, 24921 { value: "UT", text: "Utah" }, 24922 { value: "VT", text: "Vermont" }, 24923 { value: "VA", text: "Virginia" }, 24924 { value: "WA", text: "Washington" }, 24925 { value: "WV", text: "West Virginia" }, 24926 { value: "WI", text: "Wisconsin" }, 24927 { value: "WY", text: "Wyoming" } 24928]; 24929const licenseItems = (args = {}, items) => { 24930 const licenses = items || []; 24931 const dateToTime = (date) => { 24932 if (date) { 24933 return new Date(date).getTime(); 24934 } 24935 return (/* @__PURE__ */ new Date()).getTime(); 24936 }; 24937 const filtered = licenses.filter((license) => { 24938 const today = dateToTime(); 24939 const paramsQuery = Object.entries(args).every((key) => { 24940 if (Array.isArray(key[1]) && key[0] === "licenseLobCode") { 24941 return key[1].includes(license[key[0]]); 24942 } 24943 return license[key[0]] === args[key[0]]; 24944 }); 24945 const notExpired = dateToTime(license.licenseExpiryDt) >= today && dateToTime(license.licenseIssueDt) <= today; 24946 return license.stateCountyCode && paramsQuery && notExpired; 24947 }); 24948 return filtered.filter( 24949 (obj, index2, self2) => index2 === self2.findIndex((t) => t.stateCountyCode === obj.stateCountyCode) 24950 ); 24951}; 24952const isAdult = (value) => { 24953 var today = /* @__PURE__ */ new Date(); 24954 var birthDate = new Date(value); 24955 var age = today.getFullYear() - birthDate.getFullYear(); 24956 var m = today.getMonth() - birthDate.getMonth(); 24957 if (m < 0 || m === 0 && today.getDate() < birthDate.getDate()) { 24958 age--; 24959 } 24960 return age >= 18; 24961}; 24962const isValidDate = (dateString) => { 24963 if (!/^\d{1,2}\/\d{1,2}\/\d{4}$/.test(dateString)) return false;
24964 var parts = dateString.split("/"); 24965 var day = parseInt(parts[1], 10); 24966 var month = parseInt(parts[0], 10); 24967 var year = parseInt(parts[2], 10); 24968 if (year < 1e3 || year > 3e3 || month == 0 || month > 12) return false; 24969 var monthLength = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; 24970 if (year % 400 == 0 || year % 100 != 0 && year % 4 == 0) 24971 monthLength[1] = 29; 24972 return day > 0 && day <= monthLength[month - 1]; 24973}; 24974const wysiwygRequired = (value) => { 24975 if (value === "" || value === void 0 || value === null) { 24976 return false; 24977 } 24978 if (typeof value == "string") { 24979 const textOnly = value.replace(/<[^>]*>/g, "").trim(); 24980 return textOnly.length > 0; 24981 } 24982 return true; 24983}; 24984const formatPhoneNumber = (phoneNumber) => { 24985 let extNumber = ""; 24986 if (phoneNumber) { 24987 phoneNumber = phoneNumber.replace(/\D/g, ""); 24988 if (phoneNumber.length > 10) { 24989 extNumber = phoneNumber.slice(10, phoneNumber.length); 24990 phoneNumber = phoneNumber.slice(0, 10); 24991 } 24992 const phoneNumberRegex = /^(\d{1,3})(\d{0,3})(\d{0,4})$/; 24993 phoneNumber = phoneNumber.replace( 24994 phoneNumberRegex, 24995 function(match2, p1, p2, p3) { 24996 let formattedNumber = ""; 24997 if (p1) { 24998 formattedNumber = `(${p1})`; 24999 } 25000 if (p2) { 25001 formattedNumber += ` ${p2}`; 25002 } 25003 if (p3) { 25004 formattedNumber += `-${p3}`; 25005 } 25006 return formattedNumber; 25007 } 25008 ); 25009 } 25010 if (extNumber !== "") phoneNumber += " ext. " + extNumber; 25011 return phoneNumber; 25012}; 25013const getNumbersOnlyFromPhoneFormat = (phoneNumber) => { 25014 if (phoneNumber) phoneNumber = phoneNumber.replace(/\D/g, ""); 25015 return phoneNumber; 25016}; 25017function useInlineActiveFieldRef(explicitRef) { 25018 return explicitRef ?? ref(null); 25019} 25020const INLINE_ACTIVE_FIELD_KEY = Symbol("inlineActiveField"); 25021function provideInlineActiveField(activeFieldRef) { 25022 provide(INLINE_ACTIVE_FIELD_KEY, activeFieldRef); 25023} 25024function injectInlineActiveField() { 25025 return inject(INLINE_ACTIVE_FIELD_KEY, null); 25026} 25027function isMediaEligible(value, settings) { 25028 const src = value && typeof value === "object" ? value.src : value; 25029 if (!src || src.includes("{{")) return false; 25030 if ((settings == null ? void 0 : settings.dataDictionaryIndex) != null) return false; 25031 return true; 25032} 25033function isHeroCardMediaEligible(settings) { 25034 const componentType = (settings == null ? void 0 : settings.component) || "content-card"; 25035 return componentType === "content-card" && isMediaEligible(settings == null ? void 0 : settings.media, settings); 25036} 25037const inlineMediaEditProps = { 25038 // Builder-only: enables inline canvas editing capability for this block. 25039 // SiteViewer never sets this, so published sites are unaffected. 25040 inlineEditable: { 25041 type: Boolean, 25042 default: false 25043 }, 25044 // Builder-only: whether inline editing is currently active for this block. 25045 inlineEditing: { 25046 type: Boolean, 25047 default: false 25048 } 25049}; 25050function useInlineMediaEdit(props, options = {}) { 25051 const slots = useSlots(); 25052 const getSource = options.getSource || (() => { 25053 var _a; 25054 return (_a = props.settings) == null ? void 0 : _a[options.mediaKey]; 25055 }); 25056 const mediaValue = computed(() => getSource()); 25057 const canInlineEdit = computed( 25058 () => { 25059 var _a; 25060 return !!props.inlineEditable && !((_a = options.isExpired) == null ? void 0 : _a.value) && isMediaEligible(mediaValue.value, props.settings); 25061 } 25062 ); 25063 const fieldKey = options.fieldKey ?? null; 25064 const activeField = fieldKey ? useInlineActiveFieldRef(options.activeField) : null; 25065 const isActiveField = computed( 25066 () => !activeField || activeField.value === fieldKey 25067 ); 25068 const showInlineEditor = computed( 25069 () => canInlineEdit.value && !!props.inlineEditing && isActiveField.value && !!slots["inline-editor"] 25070 ); 25071 function enter(event) { 25072 if (!activeField || !props.inlineEditing || !canInlineEdit.value) 25073 return; 25074 event == null ? void 0 : event.stopPropagation(); 25075 activeField.value = fieldKey; 25076 } 25077 return { mediaValue, canInlineEdit, showInlineEditor, enter }; 25078} 25079const inlineTextEditProps = { 25080 ...inlineMediaEditProps, 25081 // Builder-only: field keys the schema disables for inline editing.
25082 inlineDisabledFields: { 25083 type: Array, 25084 default: () => [] 25085 } 25086}; 25087function propertyKeysFor(key) { 25088 return key === "bodyText" || key === "richText" ? ["bodyText", "richText"] : [key]; 25089} 25090function isContentLibraryLocked(settings, propertyKey) { 25091 if (!propertyKey) return false; 25092 const keys2 = propertyKeysFor(propertyKey); 25093 return ((settings == null ? void 0 : settings.contentLibraryItems) || []).some( 25094 (item) => keys2.includes(item == null ? void 0 : item.propertyKey) && (item == null ? void 0 : item.type) === "copy" && !!(item == null ? void 0 : item.isLocked) && !(item == null ? void 0 : item.edited) 25095 ); 25096} 25097function isTextEligible(raw, settings, propertyKey) { 25098 if (!raw && !EMPTY_ENTERABLE_KEYS.has(propertyKey)) return false; 25099 if (raw == null ? void 0 : raw.includes("{{")) return false; 25100 if ((settings == null ? void 0 : settings.dataDictionaryIndex) != null) return false; 25101 if (isContentLibraryLocked(settings, propertyKey)) return false; 25102 return true; 25103} 25104function caretPointFrom(event) { 25105 return (event == null ? void 0 : event.clientX) == null ? null : { x: event.clientX, y: event.clientY }; 25106} 25107function getStoredRichText(settings) { 25108 return (settings == null ? void 0 : settings.bodyText) || (settings == null ? void 0 : settings.richText) || ""; 25109} 25110const CONTENT_CARD_TEXT_KEYS = ["headline", "bodyText", "disclosure"]; 25111const CONTENT_CARD_PLAIN_TEXT_KEYS = ["primaryLabel", "secondaryLabel"]; 25112const CONTENT_CARD_INLINE_KEYS = [ 25113 ...CONTENT_CARD_TEXT_KEYS, 25114 ...CONTENT_CARD_PLAIN_TEXT_KEYS 25115]; 25116function fieldSource(settings, key) { 25117 if (key === "bodyText") return getStoredRichText(settings); 25118 return (settings == null ? void 0 : settings[key]) || ""; 25119} 25120const CONTACT_CARD_INLINE_KEYS = ["buttonLabel", "buttonLabel2"]; 25121const BUTTON_LABEL_TOGGLES = { 25122 primaryLabel: "primaryButton", 25123 secondaryLabel: "secondaryButton", 25124 buttonLabel: "button", 25125 buttonLabel2: "button2" 25126}; 25127const EMPTY_ENTERABLE_KEYS = /* @__PURE__ */ new Set([ 25128 "label", 25129 ...Object.keys(BUTTON_LABEL_TOGGLES) 25130]); 25131function isInlineFieldShown(settings, key) { 25132 const toggle = BUTTON_LABEL_TOGGLES[key]; 25133 return !toggle || !!(settings == null ? void 0 : settings[toggle]); 25134} 25135function useInlineTextEdit(props, options = {}) { 25136 const slots = useSlots(); 25137 const getSource = options.getSource || (() => getStoredRichText(props.settings)); 25138 const propertyKey = options.propertyKey || "bodyText"; 25139 const editableSource = computed(() => getSource() || ""); 25140 const permitted = computed( 25141 () => { 25142 var _a; 25143 return !!props.inlineEditable && !((_a = options.isExpired) == null ? void 0 : _a.value) && !isContentLibraryLocked(props.settings, propertyKey) && !(props.inlineDisabledFields || []).includes(propertyKey); 25144 } 25145 ); 25146 const sourceEligible = computed( 25147 () => isTextEligible(editableSource.value, props.settings, propertyKey) 25148 ); 25149 const canInlineEdit = computed( 25150 () => permitted.value && sourceEligible.value 25151 ); 25152 const entryEligible = ref(false); 25153 watch( 25154 [ 25155 () => !!props.inlineEditing, 25156 () => !!props.inlineEditing && sourceEligible.value 25157 ], 25158 ([active, eligible]) => { 25159 if (!active) { 25160 entryEligible.value = false; 25161 return; 25162 } 25163 if (eligible) entryEligible.value = true; 25164 }, 25165 { immediate: true } 25166 ); 25167 const showInlineEditor = computed( 25168 () => permitted.value && entryEligible.value && !!slots["inline-editor"] 25169 ); 25170 return { editableSource, canInlineEdit, showInlineEditor }; 25171} 25172function useInlineTextFields(props, options = {}) { 25173 const slots = useSlots(); 25174 const editingField = useInlineActiveFieldRef(options.activeField); 25175 const entryPoint = ref(null); 25176 const keys2 = options.keys || CONTENT_CARD_INLINE_KEYS; 25177 const canEditFields = computed( 25178 () => { 25179 var _a; 25180 return props.inlineEditable && props.inlineEditing && !((_a = options.isExpired) == null ? void 0 : _a.value) && !!slots["inline-editor"]; 25181 } 25182 ); 25183 watch( 25184 () => props.inlineEditing, 25185 (active) => { 25186 if (!active) editingField.value = null; 25187 } 25188 ); 25189 watch( 25190 () => { 25191 var _a; 25192 return !!editingField.value && keys2.includes(editingField.value) && (!!((_a = options.isExpired) == null ? void 0 : _a.value) || isContentLibraryLocked(props.settings, editingField.value)); 25193 }, 25194 (blocked) => { 25195 if (blocked) editingField.value = null; 25196 } 25197 ); 25198 const rawField = (key) => fieldSource(props.settings, key); 25199 const canEditField = (key) => canEditFields.value && keys2.includes(key) && !(props.inlineDisabledFields || []).includes(key) && isInlineFieldShown(props.settings, key) && isTextEligible(rawField(key), props.settings, key); 25200 const enterField = (key, event) => { 25201 if (!canEditField(key)) return; 25202 event == null ? void 0 : event.stopPropagation(); 25203 entryPoint.value = caretPointFrom(event); 25204 editingField.value = key; 25205 }; 25206 const closeField = () => { 25207 editingField.value = null; 25208 entryPoint.value = null; 25209 }; 25210 const inlineButton = (key) => ({ 25211 inlineEditable: canEditField(key), 25212 inlineEditing: editingField.value === key, 25213 inlineFieldKey: key, 25214 caretPoint: entryPoint.value, 25215 onInlineEnter: (event) => enterField(key, event) 25216 }); 25217 return { 25218 inlineButton, 25219 editingField, 25220 entryPoint, 25221 canEditFields, 25222 canEditField, 25223 rawField, 25224 enterField, 25225 closeField 25226 }; 25227} 25228const _sfc_main$4u = { 25229 props: { 25230 settings: { 25231 type: Object, 25232 required: true 25233 }, 25234 dataSite: { 25235 type: Object, 25236 required: true 25237 }, 25238 isEditable: { 25239 type: Boolean, 25240 default: false 25241 }, 25242 contactCardClasses: { 25243 type: Array, 25244 default: () => [] 25245 }, 25246 isBuilderMobile: { 25247 type: Boolean, 25248 default: false 25249 }, 25250 ...inlineTextEditProps 25251 }, 25252 setup(props) { 25253 provide(SCROLL_ANIMATION_EXCLUDED_KEY, true); 25254 const store = useStore(); 25255 const { state } = store; 25256 const { isMobile } = useIsMobile(); 25257 const { inlineButton, closeField } = useInlineTextFields(props, { 25258 keys: CONTACT_CARD_INLINE_KEYS, 25259 activeField: injectInlineActiveField() 25260 }); 25261 return { 25262 state, 25263 isMobile, 25264 inlineButton, 25265 closeField 25266 }; 25267 }, 25268 data() { 25269 return { 25270 entityTitles: { 25271 "FINANCIAL ADVISOR": "Eagle Strategies LLC", 25272 "WEALTH ADVISOR": "Eagle Strategies LLC", 25273 "INVESTMENT ADVISER REPRESENTATIVE": "Eagle Strategies LLC", 25274 "FINANCIAL PLANNER": "Eagle Strategies LLC", 25275 "REGISTERED REPRESENTATIVE": "NYLIFE Securities LLC", 25276 AGENT: "New York Life Insurance Company", 25277 "LICENSED AGENT": "New York Life Insurance Company" 25278 }, 25279 photoLocation: "", 25280 widestTextComputed: false, 25281 widestText: 0 25282 }; 25283 }, 25284 computed: { 25285 isMobileView() { 25286 return this.isMobile || this.isBuilderMobile; 25287 }, 25288 mobileSettingsEnabled() { 25289 var _a; 25290 return !!((_a = this.state.settings.featureFlags) == null ? void 0 : _a.MobileSettings); 25291 }, 25292 titlePath() { 25293 var _a; 25294 return ((_a = this.settings) == null ? void 0 : _a.titles) ?? this.settings ?? {}; 25295 }, 25296 isAgent() { 25297 return !this.isDBA || !this.toggleDBA; 25298 }, 25299 toggleGo() { 25300 return this.settings["goName-show"]; 25301 }, 25302 isGo() { 25303 var _a; 25304 if (this.toggleGo === true) return true; 25305 if (this.isDBA) return false;
25306 if (!isNil(this.toggleGo)) return Boolean(this.toggleGo); 25307 return ((_a = this.dataSite.tags) == null ? void 0 : _a.includes(1305)) ?? false; 25308 }, 25309 toggleButton() { 25310 var _a; 25311 return (_a = this.settings) == null ? void 0 : _a.button; 25312 }, 25313 toggleButton2() { 25314 var _a; 25315 return (_a = this.settings) == null ? void 0 : _a.button2; 25316 }, 25317 toggleDBA() { 25318 var _a; 25319 return (_a = this.settings) == null ? void 0 : _a.toggleDba; 25320 }, 25321 toggleDesignation() { 25322 var _a; 25323 return (_a = this.settings) == null ? void 0 : _a.toggleDesignation; 25324 }, 25325 toggleEntityTitle() { 25326 return false; 25327 }, 25328 toggleImage() { 25329 var _a; 25330 return (_a = this.settings) == null ? void 0 : _a.toggleImage; 25331 }, 25332 imageHeight() { 25333 var _a; 25334 const height = (_a = this.settings) == null ? void 0 : _a.height; 25335 if (!height) return "auto"; 25336 return `${height}px`; 25337 }, 25338 imageWidth() { 25339 var _a; 25340 const width = (_a = this.settings) == null ? void 0 : _a.width; 25341 if (!width) return "100%"; 25342 return `${width}px`; 25343 }, 25344 toggleLicense() { 25345 var _a; 25346 return (_a = this.settings) == null ? void 0 : _a.toggleLicense; 25347 }, 25348 toggleName() { 25349 var _a; 25350 return (_a = this.settings) == null ? void 0 : _a.toggleName; 25351 }, 25352 toggleTitle() { 25353 return this.titlePath.toggleTitle; 25354 }, 25355 toggleTitle2() { 25356 return this.titlePath.toggleTitle2; 25357 }, 25358 toggleTitle3() { 25359 return this.titlePath.toggleTitle3; 25360 }, 25361 toggleTitle4() { 25362 return this.titlePath.toggleTitle4; 25363 }, 25364 dbaOnly() { 25365 return !this.toggleName && !this.toggleTitle; 25366 }, 25367 noPhoto() { 25368 return !this.blockPhoto && !this.photoTop && !this.photoBackground; 25369 }, 25370 blockPhoto() { 25371 if (this.isMemberSelected) 25372 return this.memberSelected.headshotImageURL; 25373 return renderData(this.mediaMetadataPhoto, this.dataSite); 25374 }, 25375 mediaMetadataPhoto() { 25376 var _a; 25377 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.photo; 25378 return mediaSrc && typeof mediaSrc === "object" ? mediaSrc.src : mediaSrc; 25379 }, 25380 photoMedia() { 25381 var _a, _b, _c; 25382 if (this.isMemberSelected) 25383 return this.memberSelected.headshotImageURL; 25384 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.photo; 25385 const { crop, focal } = mediaSrc; 25386 if (crop || focal) { 25387 const mediaObject = { src: crop || {} }; 25388 if (focal) mediaObject.src.focal = focal; 25389 return mediaObject; 25390 } 25391 return { src: (_c = (_b = this.settings) == null ? void 0 : _b.mediaMetadata) == null ? void 0 : _c.photo }; 25392 }, 25393 altText() { 25394 var _a; 25395 return (_a = this.settings) == null ? void 0 : _a.photo.alt; 25396 }, 25397 blockLogo() { 25398 return this.mediaMetadataLogo || null; 25399 }, 25400 mediaMetadataLogo() { 25401 var _a; 25402 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.logo; 25403 return mediaSrc && typeof mediaSrc === "object" ? mediaSrc.src : mediaSrc; 25404 }, 25405 logoMedia() { 25406 var _a, _b, _c; 25407 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.logo; 25408 const { crop, focal } = mediaSrc; 25409 if (crop || focal) { 25410 const mediaObject = { src: crop }; 25411 if (focal) mediaObject.src.focal = focal; 25412 return mediaObject; 25413 } 25414 return { src: (_c = (_b = this.settings) == null ? void 0 : _b.mediaMetadata) == null ? void 0 : _c.logo }; 25415 }, 25416 blockGoName() { 25417 if (this.isOrganizationSelected || this.isTeamMemberWithOrganization) { 25418 return this.dataSite.organizationName + " General Office"; 25419 } 25420 if (!this.isGo) return ""; 25421 const rawGoName = this.settings.goName != null && String(this.settings.goName).trim() !== "" ? this.settings.goName : "{{{ user.ddcUserData.orgUnitDesc }}}"; 25422 return renderData(`${rawGoName} General Office`, this.dataSite); 25423 }, 25424 managingPartner() { 25425 var _a, _b, _c, _d, _e; 25426 if (this.isMemberSelected) return ""; 25427 if (((_c = (_b = (_a = this.dataSite.user) == null ? void 0 : _a.ddcUserData) == null ? void 0 : _b.marketerTitleTpDesc) == null ? void 0 : _c.toLowerCase()) === "managing partner") { 25428 return renderData( 25429 (_e = (_d = this.dataSite.user) == null ? void 0 : _d.ddcUserData) == null ? void 0 : _e.marketerTitleTpDesc, 25430 this.dataSite 25431 ); 25432 } 25433 return false;
25434 }, 25435 blockContactName() { 25436 var _a, _b, _c, _d, _e, _f; 25437 if (this.isOrganizationSelected) { 25438 return ""; 25439 } 25440 if (this.isMemberSelected) { 25441 const renderedData = renderData( 25442 this.settings.name, 25443 this.memberSelected 25444 ); 25445 if (renderedData) return renderedData; 25446 return ((_a = this.memberSelected) == null ? void 0 : _a.displayName) || `${(_b = this.memberSelected) == null ? void 0 : _b.firstName} ${(_c = this.memberSelected) == null ? void 0 : _c.lastName}`; 25447 } 25448 const formattedContactName = formatName( 25449 this.settings.name, 25450 (_e = (_d = this.dataSite) == null ? void 0 : _d.user) == null ? void 0 : _e.ddcUserData 25451 ); 25452 return this.displayName || ((_f = renderData(formattedContactName, this.dataSite)) == null ? void 0 : _f.trim()) || ""; 25453 }, 25454 displayName() { 25455 var _a, _b, _c; 25456 return (_c = (_b = (_a = this.dataSite) == null ? void 0 : _a.user) == null ? void 0 : _b.ddcUserData) == null ? void 0 : _c.displayName; 25457 }, 25458 designationCharacters() { 25459 var _a; 25460 return (_a = this.blockContactDesignation) == null ? void 0 : _a.length; 25461 }, 25462 blockContactDesignation() { 25463 if (this.isMemberSelected) return ""; 25464 return renderData(this.settings.designation || "", this.dataSite); 25465 }, 25466 htmlFormattedDesignation() { 25467 const data = this.blockContactDesignation; 25468 if (!data) return; 25469 const tag = "sup"; 25470 const symbolClass = "block__name_designation-symbol"; 25471 const designationArray = data.split(",").map( 25472 (d, index2, arr) => index2 < arr.length - 1 ? `<span>${d.trim()}, </span>` : `<span>${d.trim()}</span>` 25473 ); 25474 const designation = designationArray.join(""); 25475 const symbolRegex = /©|\u00A9|®|\u00AE|™|\u2122/gi; 25476 return " " + (designation == null ? void 0 : designation.replace( 25477 symbolRegex, 25478 `<${tag} class="${symbolClass}">$&</${tag}>` 25479 )); 25480 }, 25481 blockContactTitle() { 25482 if (this.isMemberSelected) return this.memberSelected.title; 25483 return renderData(this.titlePath.title, this.dataSite); 25484 }, 25485 blockContactTitle2() { 25486 if (this.isMemberSelected) return this.memberSelected.title2; 25487 return renderData(this.titlePath.title2, this.dataSite); 25488 }, 25489 blockContactTitle3() { 25490 if (this.isMemberSelected) return this.memberSelected.title3; 25491 return renderData(this.titlePath.title3, this.dataSite); 25492 }, 25493 blockContactTitle4() { 25494 if (this.isMemberSelected) return this.memberSelected.title4; 25495 return renderData(this.titlePath.title4, this.dataSite); 25496 }, 25497 blockEntityTitle() { 25498 var _a; 25499 return this.entityTitles[(_a = this.blockContactTitle) == null ? void 0 : _a.toUpperCase()]; 25500 }, 25501 blockDBAName() { 25502 var _a; 25503 if (this.isOrganizationSelected || this.isTeamMemberWithOrganization) { 25504 return this.dataSite.organizationName + " General Office"; 25505 } 25506 const name = (_a = renderData( 25507 this.settings.dbaname, 25508 this.dataSite 25509 )) == null ? void 0 : _a.trim(); 25510 return name || null; 25511 }, 25512 blockContactDescription() { 25513 if (this.isMemberSelected) return ""; 25514 return this.settings.description; 25515 }, 25516 blockContactLandline() { 25517 var _a, _b; 25518 if (!((_a = this.settings) == null ? void 0 : _a["landline-show"])) return ""; 25519 const phoneNumber = getNumbersOnlyFromPhoneFormat( 25520 this.renderValue(this.settings.landline, "phoneNumber") 25521 ); 25522 if (!phoneNumber) return ""; 25523 const extension = this.renderValue( 25524 this.settings.extension, 25525 "phoneExt" 25526 ); 25527 const value = `${(_b = formatPhoneNumber(phoneNumber)) == null ? void 0 : _b.replace( 25528 " ext. ", 25529 "" 25530 )}${extension ? ` ext. ${extension}` : ""}`; 25531 return value; 25532 }, 25533 blockContactLandlineLabel() { 25534 var _a; 25535 if (!((_a = this.settings) == null ? void 0 : _a["landline-show"])) return ""; 25536 return this.addEndColon( 25537 this.renderValue(this.settings.landlineLabel, "phoneLabel") 25538 ); 25539 }, 25540 blockContactAltPhone1() { 25541 var _a, _b; 25542 if (!((_a = this.settings) == null ? void 0 : _a["alt_phone_1-show"])) return ""; 25543 const phoneNumber = getNumbersOnlyFromPhoneFormat( 25544 this.renderValue(this.settings.alt_phone_1, "altPhone1") 25545 ); 25546 if (!phoneNumber) return ""; 25547 const extension = this.renderValue( 25548 this.settings.extension_alt_phone_1, 25549 "altPhoneExt1" 25550 ); 25551 const value = `${(_b = formatPhoneNumber(phoneNumber)) == null ? void 0 : _b.replace( 25552 " ext. ", 25553 "" 25554 )}${extension ? ` ext. ${extension}` : ""}`; 25555 return value; 25556 }, 25557 blockContactAltPhone1Label() { 25558 var _a; 25559 if (!((_a = this.settings) == null ? void 0 : _a["alt_phone_1-show"])) return ""; 25560 const value = this.settings.alt_phone_1Label; 25561 if ((value == null ? void 0 : value.length) <= 100 || !value || this.isMustacheValue(value)) { 25562 return this.addEndColon( 25563 this.renderValue(value, "altPhoneLabel1") 25564 ); 25565 } 25566 return false;
25567 }, 25568 blockContactAltPhone2Label() { 25569 var _a; 25570 if (!((_a = this.settings) == null ? void 0 : _a["alt_phone_2-show"])) return ""; 25571 const value = this.settings.alt_phone_2Label; 25572 if ((value == null ? void 0 : value.length) <= 100 || !value || this.isMustacheValue(value)) { 25573 return this.addEndColon( 25574 this.renderValue(value, "altPhoneLabel2") 25575 ); 25576 } 25577 return false; 25578 }, 25579 blockContactAltPhone2() { 25580 var _a, _b; 25581 if (!((_a = this.settings) == null ? void 0 : _a["alt_phone_2-show"])) return ""; 25582 const phoneNumber = getNumbersOnlyFromPhoneFormat( 25583 this.renderValue(this.settings.alt_phone_2, "altPhone2") 25584 ); 25585 if (!phoneNumber) return ""; 25586 const extension = this.renderValue( 25587 this.settings.extension_alt_phone_2, 25588 "altPhoneExt2" 25589 ); 25590 const value = `${(_b = formatPhoneNumber(phoneNumber)) == null ? void 0 : _b.replace( 25591 " ext. ", 25592 "" 25593 )}${extension ? ` ext. ${extension}` : ""}`; 25594 return value; 25595 }, 25596 blockContactAltPhone3Label() { 25597 var _a; 25598 if (!((_a = this.settings) == null ? void 0 : _a["alt_phone_3-show"])) return ""; 25599 const value = this.settings.alt_phone_3Label; 25600 if ((value == null ? void 0 : value.length) <= 100 || !value || this.isMustacheValue(value)) { 25601 return this.addEndColon( 25602 this.renderValue(value, "altPhoneLabel3") 25603 ); 25604 } 25605 return false; 25606 }, 25607 blockContactAltPhone3() { 25608 var _a, _b; 25609 if (!((_a = this.settings) == null ? void 0 : _a["alt_phone_3-show"])) return ""; 25610 const phoneNumber = getNumbersOnlyFromPhoneFormat( 25611 this.renderValue(this.settings.alt_phone_3, "altPhone3") 25612 ); 25613 if (!phoneNumber) return ""; 25614 const extension = this.renderValue( 25615 this.settings.extension_alt_phone_3, 25616 "altPhoneExt3" 25617 ); 25618 const value = `${(_b = formatPhoneNumber(phoneNumber)) == null ? void 0 : _b.replace( 25619 " ext. ", 25620 "" 25621 )}${extension ? ` ext. ${extension}` : ""}`; 25622 return value; 25623 }, 25624 blockContactMobile() { 25625 var _a; 25626 if (!((_a = this.settings) == null ? void 0 : _a["mobile-show"])) return ""; 25627 if (this.isMemberSelected) return ""; 25628 const phoneNumber = getNumbersOnlyFromPhoneFormat( 25629 renderData(this.settings.mobile, this.dataSite) 25630 ); 25631 return formatPhoneNumber(phoneNumber); 25632 }, 25633 blockContactFax() { 25634 var _a; 25635 if (!((_a = this.settings) == null ? void 0 : _a["fax-show"])) return ""; 25636 if (this.isMemberSelected) return ""; 25637 const phoneNumber = getNumbersOnlyFromPhoneFormat( 25638 renderData(this.settings.fax, this.dataSite) 25639 ); 25640 return formatPhoneNumber(phoneNumber); 25641 }, 25642 blockContactEmail() { 25643 var _a; 25644 if (!((_a = this.settings) == null ? void 0 : _a["email-show"])) return ""; 25645 return this.renderValue(this.settings.email, "emailAddress"); 25646 }, 25647 hasAddressSection() { 25648 var _a; 25649 if (!((_a = this.settings) == null ? void 0 : _a["address-show"])) return false; 25650 return !!(this.blockContactAddressLine1 || this.blockContactAddressCity || this.blockContactAddressState || this.blockContactAddressZip); 25651 }, 25652 hasAddress2Section() { 25653 var _a; 25654 if (!((_a = this.settings) == null ? void 0 : _a["address2-show"])) return false; 25655 return !!(this.blockContactAddress2Line1 || this.blockContactAddress2City || this.blockContactAddress2State || this.blockContactAddress2Zip); 25656 }, 25657 hasAddress3Section() { 25658 var _a; 25659 if (!((_a = this.settings) == null ? void 0 : _a["address3-show"])) return false; 25660 return !!(this.blockContactAddress3Line1 || this.blockContactAddress3City || this.blockContactAddress3State || this.blockContactAddress3Zip); 25661 }, 25662 blockContactAddressLabel() { 25663 var _a; 25664 const value = (_a = this.settings.address) == null ? void 0 : _a.label; 25665 if ((value == null ? void 0 : value.length) <= 100 || !value || this.isMustacheValue(value)) { 25666 return this.addEndColon( 25667 this.renderValue(value, "addressLabel1") 25668 ); 25669 } 25670 return false;
25671 }, 25672 blockContactAddressLine1() { 25673 var _a; 25674 return this.renderValue((_a = this.settings.address) == null ? void 0 : _a.line1, "address"); 25675 }, 25676 blockContactAddressLine2() { 25677 var _a; 25678 return this.renderValue((_a = this.settings.address) == null ? void 0 : _a.line2, "address2"); 25679 }, 25680 blockContactAddressCity() { 25681 var _a; 25682 return this.renderValue((_a = this.settings.address) == null ? void 0 : _a.city, "city"); 25683 }, 25684 blockContactAddressState() { 25685 var _a; 25686 return this.renderValue((_a = this.settings.address) == null ? void 0 : _a.state, "state"); 25687 }, 25688 blockContactAddressZip() { 25689 var _a; 25690 return this.renderValue( 25691 (_a = this.settings.address) == null ? void 0 : _a.zip, 25692 "postalCode", 25693 "busLocAddrZipCodeExt" 25694 ); 25695 }, 25696 blockContactAddress2Label() { 25697 var _a; 25698 const value = (_a = this.settings.address2) == null ? void 0 : _a.label; 25699 if ((value == null ? void 0 : value.length) <= 100 || !value || this.isMustacheValue(value)) { 25700 return this.addEndColon( 25701 this.renderValue(value, "addressLabel2") 25702 ); 25703 } 25704 return false; 25705 }, 25706 blockContactAddress2Line1() { 25707 var _a; 25708 return this.renderValue( 25709 (_a = this.settings.address2) == null ? void 0 : _a.line1, 25710 "address2Line1" 25711 ); 25712 }, 25713 blockContactAddress2Line2() { 25714 var _a; 25715 return this.renderValue( 25716 (_a = this.settings.address2) == null ? void 0 : _a.line2, 25717 "address2Line2" 25718 ); 25719 }, 25720 blockContactAddress2City() { 25721 var _a; 25722 return this.renderValue((_a = this.settings.address2) == null ? void 0 : _a.city, "city2"); 25723 }, 25724 blockContactAddress2State() { 25725 var _a; 25726 return this.renderValue((_a = this.settings.address2) == null ? void 0 : _a.state, "state2"); 25727 }, 25728 blockContactAddress2Zip() { 25729 var _a; 25730 return this.renderValue( 25731 (_a = this.settings.address2) == null ? void 0 : _a.zip, 25732 "postalCode2", 25733 "busLocAddrZipCodeExt2" 25734 ); 25735 }, 25736 blockContactAddress3Label() { 25737 var _a; 25738 const value = (_a = this.settings.address3) == null ? void 0 : _a.label; 25739 if ((value == null ? void 0 : value.length) <= 100 || !value || this.isMustacheValue(value)) { 25740 return this.addEndColon( 25741 this.renderValue(value, "addressLabel3") 25742 ); 25743 } 25744 return false; 25745 }, 25746 blockContactAddress3Line1() { 25747 var _a; 25748 return this.renderValue( 25749 (_a = this.settings.address3) == null ? void 0 : _a.line1, 25750 "address3Line1" 25751 ); 25752 }, 25753 blockContactAddress3Line2() { 25754 var _a; 25755 return this.renderValue( 25756 (_a = this.settings.address3) == null ? void 0 : _a.line2, 25757 "address3Line2" 25758 ); 25759 }, 25760 blockContactAddress3City() { 25761 var _a; 25762 return this.renderValue((_a = this.settings.address3) == null ? void 0 : _a.city, "city3"); 25763 }, 25764 blockContactAddress3State() { 25765 var _a; 25766 return this.renderValue((_a = this.settings.address3) == null ? void 0 : _a.state, "state3"); 25767 }, 25768 blockContactAddress3Zip() { 25769 var _a; 25770 return this.renderValue( 25771 (_a = this.settings.address3) == null ? void 0 : _a.zip, 25772 "postalCode3", 25773 "busLocAddrZipCodeExt3" 25774 ); 25775 }, 25776 buttonSettings() { 25777 var _a; 25778 return { 25779 type: "button", 25780 icon: this.settings.buttonIcon, 25781 label: this.settings.buttonLabel, 25782 newWindow: this.settings.newWindow || false, 25783 url: this.settings.buttonUrl, 25784 relAttributes: this.settings.buttonRelAttributes, 25785 variants: { 25786 "icon-placement": this.settings.buttonIconPlacement || "icon-right", 25787 style: ((_a = this.settings) == null ? void 0 : _a.variants["buttonStyle"]) || "primary" 25788 } 25789 }; 25790 }, 25791 button2Settings() { 25792 return { 25793 type: "button", 25794 icon: this.settings.buttonIcon2, 25795 label: this.settings.buttonLabel2, 25796 newWindow: this.settings.newWindow2 || false, 25797 url: this.settings.buttonUrl2, 25798 relAttributes: this.settings.buttonRelAttributes2, 25799 variants: { 25800 "icon-placement": this.settings.buttonIconPlacement2 || "icon-right", 25801 style: "secondary" 25802 } 25803 }; 25804 }, 25805 socialLinksSettings() { 25806 return { 25807 type: "social-links", 25808 facebook: this.blockFacebook, 25809 instagram: this.blockInstagram, 25810 linkedin: this.blockLinkedin, 25811 twitter: this.blockTwitter, 25812 youtube: this.blockYoutube 25813 }; 25814 }, 25815 cleanAddress() { 25816 return `http://maps.google.com/?q=` + encodeURIComponent( 25817 `${this.blockContactAddressLine1} ${this.blockContactAddressLine2} ${this.blockContactAddressCity} ${this.blockContactAddressState} ${this.blockContactAddressZip}` 25818 ); 25819 }, 25820 cleanAddress2() { 25821 return `http://maps.google.com/?q=` + encodeURIComponent( 25822 `${this.blockContactAddress2Line1} ${this.blockContactAddress2Line2} ${this.blockContactAddress2City} ${this.blockContactAddress2State} ${this.blockContactAddress2Zip}` 25823 ); 25824 }, 25825 cleanAddress3() { 25826 return `http://maps.google.com/?q=` + encodeURIComponent( 25827 `${this.blockContactAddress3Line1} ${this.blockContactAddress3Line2} ${this.blockContactAddress3City} ${this.blockContactAddress3State} ${this.blockContactAddress3Zip}` 25828 ); 25829 }, 25830 blockFacebook() { 25831 var _a; 25832 if (!((_a = this.settings) == null ? void 0 : _a["facebook-show"])) return ""; 25833 if (this.isMemberSelected) return this.memberSelected.facebookUrl; 25834 return renderData(this.settings.facebook, this.dataSite); 25835 }, 25836 blockLinkedin() { 25837 var _a; 25838 if (!((_a = this.settings) == null ? void 0 : _a["linkedin-show"])) return ""; 25839 if (this.isMemberSelected) return this.memberSelected.linkedInUrl; 25840 return renderData(this.settings.linkedin, this.dataSite); 25841 }, 25842 blockInstagram() { 25843 var _a; 25844 if (!((_a = this.settings) == null ? void 0 : _a["instagram-show"])) return ""; 25845 if (this.isMemberSelected) return ""; 25846 return renderData(this.settings.instagram, this.dataSite); 25847 }, 25848 blockTwitter() { 25849 var _a; 25850 if (!((_a = this.settings) == null ? void 0 : _a["twitter-show"])) return ""; 25851 if (this.isMemberSelected) return this.memberSelected.twitterUrl; 25852 return renderData(this.settings.twitter, this.dataSite); 25853 }, 25854 blockYoutube() { 25855 if (this.isMemberSelected) return ""; 25856 return this.settings.youtube || null; 25857 }, 25858 photoPlacement() { 25859 var _a; 25860 if (this.isMobileView && this.mobileSettingsEnabled && this.imagePlacementMobile) { 25861 return this.imagePlacementMobile === "image-bottom" ? "bottom" : "top"; 25862 } 25863 return ((_a = this.settings) == null ? void 0 : _a.variants["photo-placement"]) || "top"; 25864 }, 25865 hideProfileImageOnMobile() { 25866 var _a; 25867 return this.mobileSettingsEnabled && this.isMobileView && !!((_a = this.settings) == null ? void 0 : _a.hideProfileImageOnMobile); 25868 }, 25869 imagePlacementMobile() { 25870 var _a; 25871 return ((_a = this.settings) == null ? void 0 : _a.imagePlacementMobile) || "image-top"; 25872 }, 25873 mobileSettingsClasses() { 25874 if (!this.mobileSettingsEnabled) { 25875 return []; 25876 } 25877 const classes = []; 25878 if (this.isMobileView) { 25879 if (this.hideProfileImageOnMobile) { 25880 classes.push( 25881 "block_contact-card_hide-profile-image-mobile" 25882 ); 25883 } 25884 const placement = this.imagePlacementMobile; 25885 if (placement === "image-bottom") { 25886 classes.push("block_contact-card_image-bottom"); 25887 } else if (placement === "image-top") { 25888 classes.push("block_contact-card_image-top"); 25889 } 25890 } 25891 return classes; 25892 },
25893 alignContent() { 25894 var _a; 25895 return ((_a = this.settings) == null ? void 0 : _a.variants["align-content"]) || "align-center"; 25896 }, 25897 photoBackground() { 25898 return ["background"].includes(this.photoPlacement); 25899 }, 25900 photoTop() { 25901 return ["top"].includes(this.photoPlacement); 25902 }, 25903 photoSides() { 25904 return !(this.photoTop || this.photoBackground || this.noPhoto); 25905 }, 25906 licenses() { 25907 var _a, _b, _c; 25908 if (this.memberSelected) return this.memberSelected.licenses || []; 25909 return ((_c = (_b = (_a = this.dataSite) == null ? void 0 : _a.user) == null ? void 0 : _b.ddcUserData) == null ? void 0 : _c.ddcLicenseData) || []; 25910 }, 25911 licensesCalifornia() { 25912 return this.getLicenses("CA"); 25913 }, 25914 licensesArkansas() { 25915 return this.getLicenses("AR"); 25916 }, 25917 isOrganizationSelected() { 25918 var _a; 25919 return this.settings["team-member"] === -1 && ((_a = this.dataSite) == null ? void 0 : _a.organizationId) != null; 25920 }, 25921 isTeamMemberWithOrganization() { 25922 var _a; 25923 return this.settings["team-member"] !== -1 && ((_a = this.dataSite) == null ? void 0 : _a.organizationId) != null; 25924 }, 25925 isDBA() { 25926 var _a, _b, _c, _d, _e, _f; 25927 return ((_c = (_b = (_a = this.dataSite) == null ? void 0 : _a.user) == null ? void 0 : _b.ddcUserData) == null ? void 0 : _c.dbaWebsiteOptIn) ?? !!((_f = (_e = (_d = this.dataSite) == null ? void 0 : _d.user) == null ? void 0 : _e.ddcUserData) == null ? void 0 : _f.dbaName); 25928 }, 25929 hasSocialIcons() { 25930 return this.blockFacebook || this.blockInstagram || this.blockLinkedin || this.blockTwitter || this.blockYoutube; 25931 }, 25932 hasDuplicateTitle() { 25933 if (this.managingPartner && this.blockContactTitle) { 25934 if (this.managingPartner.toLowerCase().trim() === this.blockContactTitle.toLowerCase().trim()) { 25935 return true; 25936 } 25937 } 25938 return false; 25939 }, 25940 memberSelected() { 25941 var _a, _b; 25942 return (_b = (_a = this.dataSite) == null ? void 0 : _a.teamMembers) == null ? void 0 : _b.find( 25943 (t) => this.settings["team-member"] !== -1 && t.id === this.settings["team-member"] 25944 ); 25945 }, 25946 isMemberSelected() { 25947 return !!this.memberSelected; 25948 } 25949 }, 25950 methods: { 25951 verifyAgentState(stateValue) { 25952 var _a, _b, _c; 25953 return ((_c = (_b = (_a = this.dataSite) == null ? void 0 : _a.user) == null ? void 0 : _b.ddcUserData) == null ? void 0 : _c.discBusLocAddrStateCode) === stateValue ? true : false; 25954 }, 25955 isMustacheValue(value) { 25956 return ["{{", "}}"].every( 25957 (item) => { 25958 var _a; 25959 return (_a = value == null ? void 0 : value.replace(/(^<\w*>)|(<\/\w*>$)/gi, "")) == null ? void 0 : _a.includes(item); 25960 } 25961 ); 25962 }, 25963 renderValue(value, fallback, extensionKey) { 25964 var _a, _b, _c, _d; 25965 if (this.isMemberSelected) { 25966 const renderedData = renderData(value, this.memberSelected); 25967 if (!renderedData && fallback) { 25968 return (_a = this.memberSelected) == null ? void 0 : _a[fallback]; 25969 } 25970 return renderedData; 25971 } 25972 const rendered = renderData(value, this.dataSite); 25973 const extension = extensionKey && this.isMustacheValue(value) && ((_d = (_c = (_b = this.dataSite) == null ? void 0 : _b.user) == null ? void 0 : _c.ddcUserData) == null ? void 0 : _d[extensionKey]); 25974 return extension ? `${rendered}-${extension}` : rendered; 25975 }, 25976 clickToCall(phoneNumber, extension) { 25977 const cleanPhoneNumber = phoneNumber && (phoneNumber == null ? void 0 : phoneNumber.replace(/[^0-9+]/g, "")); 25978 const cleanExtension = extension && (extension == null ? void 0 : extension.replace(/[^0-9+]/g, "")); 25979 if (cleanExtension) 25980 return `tel:${cleanPhoneNumber};${cleanExtension}`; 25981 return `tel:${cleanPhoneNumber}`; 25982 }, 25983 getLicenses(stateCountyCode) { 25984 let licenses = licenseItems( 25985 { 25986 stateCountyCode, 25987 licenseLobCode: "80", 25988 busLicenseTpCode: "I", 25989 busEntityCode: "001" 25990 }, 25991 this.licenses 25992 ); 25993 licenses = licenses.concat( 25994 licenseItems( 25995 { 25996 stateCountyCode, 25997 licenseLobCode: ["80", "70", "60", "50", "40"], 25998 busLicenseTpCode: "I", 25999 busEntityCode: "002" 26000 }, 26001 this.licenses 26002 ) 26003 ); 26004 licenses = licenses.concat( 26005 licenseItems( 26006 { 26007 stateCountyCode, 26008 licenseLobCode: "80", 26009 busLicenseTpCode: "I", 26010 busEntityCode: "004" 26011 }, 26012 this.licenses 26013 ) 26014 ); 26015 return licenses.filter(
26016 (obj, index2, self2) => index2 === self2.findIndex( 26017 (t) => t.stateCountyCode === obj.stateCountyCode 26018 ) 26019 ); 26020 }, 26021 addEndColon(str) { 26022 return str ? `${str}: ` : str; 26023 } 26024 } 26025}; 26026const _hoisted_1$4n = { 26027 key: 0, 26028 class: "block__section_photo" 26029}; 26030const _hoisted_2$3Z = { 26031 key: 0, 26032 class: "block__icon_group" 26033}; 26034const _hoisted_3$A = { class: "contactAgentContainer" }; 26035const _hoisted_4$q = { class: "contactNameContainer" }; 26036const _hoisted_5$o = ["innerHTML"]; 26037const _hoisted_6$g = { class: "contactInfoContainer" }; 26038const _hoisted_7$d = { 26039 key: 0, 26040 class: "block__section_info_contact" 26041}; 26042const _hoisted_8$c = ["innerHTML"]; 26043const _hoisted_9$a = ["title", "href"]; 26044const _hoisted_10$9 = { 26045 key: 1, 26046 class: "block__section_info_contact" 26047}; 26048const _hoisted_11$8 = ["innerHTML"]; 26049const _hoisted_12$8 = ["title", "href"]; 26050const _hoisted_13$8 = { 26051 key: 2, 26052 class: "block__section_info_contact" 26053}; 26054const _hoisted_14$8 = ["innerHTML"]; 26055const _hoisted_15$7 = ["title", "href"]; 26056const _hoisted_16$7 = { 26057 key: 3, 26058 class: "block__section_info_contact" 26059}; 26060const _hoisted_17$6 = ["innerHTML"]; 26061const _hoisted_18$6 = ["title", "href"]; 26062const _hoisted_19$6 = { 26063 key: 4, 26064 class: "block__section_info_contact" 26065}; 26066const _hoisted_20$4 = ["title", "href"]; 26067const _hoisted_21$3 = { 26068 key: 5, 26069 class: "block__section_info_contact" 26070}; 26071const _hoisted_22$2 = ["title"]; 26072const _hoisted_23$2 = { 26073 key: 6, 26074 class: "block__section_info_contact" 26075}; 26076const _hoisted_24$2 = ["href", "title"]; 26077const _hoisted_25$2 = { 26078 key: 7, 26079 class: "block__section_info_contact" 26080}; 26081const _hoisted_26$2 = { class: "block__section_info_address" }; 26082const _hoisted_27$2 = ["innerHTML"]; 26083const _hoisted_28$2 = ["href"]; 26084const _hoisted_29$2 = ["title"]; 26085const _hoisted_30$2 = ["title"]; 26086const _hoisted_31$2 = ["title"]; 26087const _hoisted_32$2 = { 26088 key: 8, 26089 class: "block__section_info_contact" 26090}; 26091const _hoisted_33$2 = { class: "block__section_info_address" }; 26092const _hoisted_34$2 = ["innerHTML"]; 26093const _hoisted_35$2 = ["href"]; 26094const _hoisted_36$2 = ["title"]; 26095const _hoisted_37$1 = ["title"]; 26096const _hoisted_38$1 = ["title"]; 26097const _hoisted_39$1 = { 26098 key: 9, 26099 class: "block__section_info_contact" 26100}; 26101const _hoisted_40$1 = { class: "block__section_info_address" }; 26102const _hoisted_41$1 = ["innerHTML"]; 26103const _hoisted_42$1 = ["href"]; 26104const _hoisted_43$1 = ["title"]; 26105const _hoisted_44$1 = ["title"]; 26106const _hoisted_45$1 = ["title"]; 26107const _hoisted_46$1 = { 26108 key: 10, 26109 class: "block__section-button-row" 26110}; 26111const _hoisted_47$1 = { 26112 key: 0, 26113 class: "block__button_container" 26114}; 26115const _hoisted_48$1 = { 26116 key: 1, 26117 class: "block__button_container" 26118}; 26119const _hoisted_49$1 = { 26120 key: 0, 26121 class: "block__icon_container block__icon_group" 26122}; 26123const _hoisted_50$1 = { 26124 key: 1, 26125 class: "block__section-button-row" 26126}; 26127const _hoisted_51$1 = { 26128 key: 0, 26129 class: "block__button_container" 26130}; 26131const _hoisted_52$1 = { 26132 key: 1, 26133 class: "block__button_container" 26134}; 26135function _sfc_render$3T(_ctx, _cache, $props, $setup, $data, $options) { 26136 const _component_CoreBlock = _sfc_main$4x; 26137 const _component_CoreIcon = __nuxt_component_1$7; 26138 return openBlock(), createElementBlock("div", { 26139 class: normalizeClass(["block__body", $options.mobileSettingsClasses]) 26140 }, [ 26141 $options.blockPhoto && !$options.photoBackground ? (openBlock(), createElementBlock("div", _hoisted_1$4n, [ 26142 withDirectives(createVNode(_component_CoreBlock, { 26143 "is-editable": $props.isEditable, 26144 settings: { 26145 alt: `Headshot of ${$options.blockContactName}`, 26146 height: $options.imageHeight, 26147 src: $options.blockPhoto, 26148 type: "image", 26149 width: $options.imageWidth, 26150 mediaMetadata: $options.photoMedia 26151 } 26152 }, null, 8, ["is-editable", "settings"]), [ 26153 [vShow, $options.toggleImage && !$options.hideProfileImageOnMobile] 26154 ]), 26155 !$options.photoTop && $options.hasSocialIcons ? (openBlock(), createElementBlock("div", _hoisted_2$3Z, [ 26156 createVNode(_component_CoreBlock, { 26157 settings: $options.socialLinksSettings, 26158 "is-editable": $props.isEditable 26159 }, null, 8, ["settings", "is-editable"]) 26160 ])) : createCommentVNode("", true) 26161 ])) : createCommentVNode("", true), 26162 createBaseVNode("div", { 26163 class: normalizeClass(["block__section_info", { "photo-background": $options.photoBackgroun
26163d }]), 26164 style: normalizeStyle([ 26165 $options.photoBackground ? { 26166 "background-image": `url('${$options.blockPhoto}')`, 26167 "background-position": "center", 26168 "background-repeat": "no-repeat" 26169 } : "" 26170 ]) 26171 }, [ 26172 $options.blockLogo && !$options.photoBackground ? (openBlock(), createBlock(_component_CoreBlock, { 26173 key: 0, 26174 "is-editable": $props.isEditable, 26175 settings: { 26176 alt: "Logo", 26177 height: "auto", 26178 src: $options.blockLogo, 26179 type: "image", 26180 width: "350px", 26181 mediaMetadata: $options.logoMedia 26182 } 26183 }, null, 8, ["is-editable", "settings"])) : createCommentVNode("", true), 26184 createBaseVNode("div", _hoisted_3$A, [ 26185 withDirectives(createVNode(_component_CoreBlock, { 26186 "is-editable": $props.isEditable, 26187 settings: { 26188 type: "text", 26189 text: $options.blockDBAName, 26190 tag: "h5", 26191 variants: { 26192 size: "text", 26193 class: $options.dbaOnly ? "contact-name" : "contact-title" 26194 } 26195 } 26196 }, null, 8, ["is-editable", "settings"]), [ 26197 [vShow, $options.isDBA && $options.toggleDBA] 26198 ]), 26199 withDirectives(createVNode(_component_CoreBlock, { 26200 "is-editable": $props.isEditable, 26201 settings: { 26202 type: "text", 26203 text: $options.blockGoName, 26204 tag: $options.isGo && $options.isAgent ? "h5" : "h6", 26205 variants: { size: "title", class: "contact-name-go" } 26206 } 26207 }, null, 8, ["is-editable", "settings"]), [ 26208 [vShow, $options.isGo] 26209 ]), 26210 createBaseVNode("div", _hoisted_4$q, [ 26211 createBaseVNode("div", { 26212 class: normalizeClass([ 26213 { block__name: $options.toggleDesignation }, 26214 "block__designation_name_group" 26215 ]) 26216 }, [ 26217 withDirectives(createVNode(_component_CoreBlock, { 26218 "is-editable": $props.isEditable, 26219 class: normalizeClass( 26220 $options.designationCharacters > 25 ? "designations-long" : "designations-short" 26221 ), 26222 settings: { 26223 type: "text", 26224 text: `${$options.blockContactName.replace( 26225 /^\s+|\s+$/g, 26226 `` 26227 )}${$options.toggleDesignation && $options.toggleName && $options.blockContactDesignation ? `,` : ``}`, 26228 tag: $options.blockDBAName === "" || $options.isAgent && !$options.isGo ? "h5" : "h6", 26229 variants: { 26230 size: $options.isGo ? "text" : "title", 26231 class: $options.isGo ? "contact-title" : "contact-name" 26232 } 26233 } 26234 }, null, 8, ["is-editable", "class", "settings"]), [ 26235 [vShow, $options.toggleName] 26236 ]), 26237 withDirectives(createBaseVNode("span", { 26238 class: normalizeClass(`block__name_designation ${$options.blockDBAName === "" || $options.isAgent && !$options.isGo ? "block__name_designation_h5" : "block__name_designation_h6"}`), 26239 innerHTML: $options.htmlFormattedDesignation 26240 }, null, 10, _hoisted_5$o), [ 26241 [vShow, $options.toggleDesignation && $options.toggleName] 26242 ]) 26243 ], 2), 26244 withDirectives(createVNode(_component_CoreBlock, { 26245 "is-editable": $props.isEditable, 26246 settings: { 26247 type: "text", 26248 text: $options.managingPartner, 26249 tag: "h6", 26250 variants: { size: "text", class: "contact-title" } 26251 } 26252 }, null, 8, ["is-editable", "settings"]), [ 26253 [vShow, $options.toggleTitle && $options.isGo] 26254 ]) 26255 ]), 26256 withDirectives(createVNode(_component_CoreBlock, { 26257 "is-editable": $props.isEditable, 26258 settings: { 26259 type: "text", 26260 text: $options.blockContactTitle, 26261 tag: "h6", 26262 variants: { 26263 size: $options.isGo ? "text" : "title", 26264 class: "contact-title" 26265 } 26266 } 26267 }, null, 8, ["is-editable", "settings"]), [ 26268 [vShow, $options.toggleName && $options.toggleTitle && !$options.hasDuplicateTitle] 26269 ]), 26270 withDirectives(createVNode(_component_CoreBlock, { 26271 "is-editable": $props.isEditable, 26272 settings: { 26273 type: "text", 26274 text: $options.blockContactTitle2, 26275 tag: "h6", 26276 variants: { 26277 size: "text", 26278 class: "contact-title" 26279 } 26280 } 26281 }, null, 8, ["is-editable", "settings"]), [ 26282 [vShow, $options.toggleName && $options.toggleTitle2] 26283 ]), 26284 withDirectives(createVNode(_component_CoreBlock, { 26285 "is-editable": $props.isEditable, 26286 settings: { 26287 type: "text", 26288 text: $options.blockContactTitle3, 26289 tag: "h6", 26290 variants: { 26291 size: "text", 26292 class: "contact-title" 26293 } 26294 } 26295 }, null, 8, ["is-editable", "settings"]), [ 26296 [vShow, $options.toggleName && $options.toggleTitle3] 26297 ]), 26298 withDirectives(createVNode(_component_CoreBlock, { 26299 "is-editable": $props.isEditable, 26300 settings: { 26301 type: "text", 26302 text: $options.blockContactTitle4, 26303 tag: "h6", 26304 variants: { 26305 size: "text", 26306 class: "contact-title" 26307 } 26308 } 26309 }, null, 8, ["is-editable", "settings"]), [ 26310 [vShow, $options.toggleName && $options.toggleTitle4] 26311 ]), 26312 withDirectives(createVNode(_component_CoreBlock, { 26313 "is-editable": $props.isEditable, 26314 settings: { 26315 type: "text", 26316 text: $options.blockEntityTitle, 26317 tag: "h6", 26318 variants: { 26319 size: $options.isGo ? "text" : "title", 26320 class: "contact-entity-title" 26321 } 26322 } 26323 }, null, 8, ["is-editable", "settings"]), [ 26324 [vShow, $options.toggleEntityTitle] 26325 ]), 26326 $options.blockContactDescription ? (openBlock(), createBlock(_component_CoreBlock, { 26327 key: 0, 26328 "is-editable": $props.isEditable, 26329 settings: { 26330 type: "text", 26331 tag: "p", 26332 text: $options.blockContactDescription, 26333 variants: { 26334 class: "contact-description", 26335 align: $options.alignContent 26336 } 26337 } 26338 }, null, 8, ["is-editable", "settings"])) : createCommentVNode("", true) 26339 ]), 26340 createBaseVNode("div", _hoisted_6$g, [ 26341 $options.blockContactLandline ? (openBlock(), createElementBlock("div", _hoisted_7$d, [ 26342 createVNode(_component_CoreIcon, { 26343 icon: "phone", 26344 class: "icon", 26345 settings: { ["aria-label"]: $options.blockContactLandline } 26346 }, null, 8, ["settings"]), 26347 $options.blockContactLandlineLabel ? (openBlock(), createElementBlock("span", { 26348 key: 0, 26349 innerHTML: $options.blockContactLandlineLabel 26350 }, null, 8, _hoisted_8$c)) : createCommentVNode("", true), 26351 createBaseVNode("a", { 26352 title: $options.blockContactLandline, 26353 href: $options.clickToCall( 26354 $options.renderValue($props.settings.landline), 26355 $options.renderValue($props.settings.extension) 26356 ) 26357 }, toDisplayString($options.blockContactLandline), 9, _hoisted_9$a) 26358 ])) : createCommentVNode("", true), 26359 $options.blockContactAltPhone1 ? (openBlock(), createElementBlock("div", _hoisted_10$9, [ 26360 createVNode(_component_CoreIcon, { 26361 icon: "phone", 26362 class: "icon", 26363 settings: { ["aria-label"]: $options.blockContactAltPhone1 } 26364 }, null, 8, ["settings"]), 26365 $options.blockContactAltPhone1Label ? (openBlock(), createElementBlock("span", { 26366 key: 0, 26367 innerHTML: $options.blockContactAltPhone1Label 26368 }, null, 8, _hoisted_11$8)) : createCommentVNode("", true), 26369 createBaseVNode("a", { 26370 title: $options.blockContactAltPhone1, 26371 href: $options.clickToCall( 26372 $options.renderValue($props.settings.alt_phone_1), 26373 $options.renderValue($props.settings.extension_alt_phone_1) 26374 ) 26375 }, toDisplayString($options.blockContactAltPhone1), 9, _hoisted_12$8) 26376 ])) : createCommentVNode("", true), 26377 $options.blockContactAltPhone2 ? (openBlock(), createElementBlock("div", _hoisted_13$8, [ 26378 createVNode(_component_CoreIcon, { 26379 icon: "phone", 26380 class: "icon", 26381 settings: { ["aria-label"]: $options.blockContactAltPhone2 } 26382 }, null, 8, ["settings"]), 26383 $options.blockContactAltPhone2Label ? (openBlock(), createElementBlock("span", { 26384 key: 0, 26385 innerHTML: $options.blockContactAltPhone2Label 26386 }, null, 8, _hoisted_14$8)) : createCommentVNode("", true), 26387 createBaseVNode("a", { 26388 title: $options.blockContactAltPhone2, 26389 href: $options.clickToCall( 26390 $options.renderValue($props.settings.alt_phone_2), 26391 $options.renderValue($props.settings.extension_alt_phone_2) 26392 ) 26393 }, toDisplayString($options.blockContactAltPhone2), 9, _hoisted_15$7) 26394 ])) : createCommentVNode("", true), 26395 $options.blockContactAltPhone3 ? (openBlock(), createElementBlock("div", _hoisted_16$7, [ 26396 createVNode(_component_CoreIcon, { 26397 icon: "phone", 26398 class: "icon", 26399 settings: { ["aria-label"]: $options.blockContactAltPhone3 } 26400 }, null, 8, ["settings"]), 26401 $options.blockContactAltPhone3Label ? (openBlock(), createElementBlock("span", { 26402 key: 0, 26403 innerHTML: $options.blockContactAltPhone3Label 26404 }, null, 8, _hoisted_17$6)) : createCommentVNode("", true), 26405 createBaseVNode("a", { 26406 title: $options.blockContactAltPhone3, 26407 href: $options.clickToCall( 26408 $options.renderValue($props.settings.alt_phone_3), 26409 $options.renderValue($props.settings.extension_alt_phone_3) 26410 ) 26411 }, toDisplayString($options.blockContactAltPhone3), 9, _hoisted_18$6) 26412 ])) : createCommentVNode("", true), 26413 $options.blockContactMobile ? (openBlock(), createElementBlock("div", _hoisted_19$6, [ 26414 createVNode(_component_CoreIcon, { 26415 icon: "mobile-phone", 26416 class: "icon", 26417 settings: { ["aria-label"]: $options.blockContactMobile } 26418 }, null, 8, ["settings"]), 26419 createBaseVNode("a", { 26420 title: $options.blockContactMobile, 26421 href: $options.clickToCall($options.renderValue($props.settings.mobile)) 26422 }, toDisplayString($options.blockContactMobile), 9, _hoisted_20$4) 26423 ])) : createCommentVNode("", true), 26424 $options.blockContactFax ? (openBlock(), createElementBlock("div", _hoisted_21$3, [ 26425 createVNode(_component_CoreIcon, { 26426 icon: "fax", 26427 class: "icon", 26428 settings: { ["aria-label"]: $options.blockContactFax } 26429 }, null, 8, ["settings"]), 26430 createBaseVNode("p", { 26431 class: "fax", 26432 title: $options.blockContactFax 26433 }, toDisplayString($options.blockContactFax), 9, _hoisted_22$2) 26434 ])) : createCommentVNode("", true), 26435 $options.blockContactEmail ? (openBlock(), createElementBlock("div", _hoisted_23$2, [ 26436 createVNode(_component_CoreIcon, { 26437 icon: "email", 26438 class: "icon", 26439 settings: { ["aria-label"]: $options.blockContactEmail } 26440 }, null, 8, ["settings"]), 26441 createBaseVNode("a", { 26442 href: `mailto:${$options.blockContactEmail}`, 26443 class: "email", 26444 title: $options.blockContactEmail 26445 }, toDisplayString($options.blockContactEmail), 9, _hoisted_24$2) 26446 ])) : createCommentVNode("", true), 26447 $options.hasAddressSection ? (openBlock(), createElementBlock("div", _hoisted_25$2, [ 26448 createVNode(_component_CoreIcon, { 26449 icon: "map-pin", 26450 class: "icon" 26451 }), 26452 createBaseVNode("div", _hoisted_26$2, [ 26453 $options.blockContactAddressLabel ? (openBlock(), createElementBlock("span", { 26454 key: 0, 26455 innerHTML: $options.blockContactAddressLabel 26456 }, null, 8, _hoisted_27$2)) : createCommentVNode("", true), 26457 createBaseVNode("a", { 26458 href: $options.cleanAddress, 26459 target: "_blank" 26460 }, [ 26461 createBaseVNode("p", { title: $options.blockContactAddressLine1 }, toDisplayString($options.blockContactAddressLine1), 9, _hoisted_29$2), 26462 $options.blockContactAddressLine2 ? (openBlock(), createElementBlock("p", { 26463 key: 0, 26464 title: $options.blockContactAddressLine2 26465 }, toDisplayString($options.blockContactAddressLine2), 9, _hoisted_30$2)) : createCommentVNode("", true), 26466 createBaseVNode("p", { 26467 title: `${$options.blockContactAddressCity}${$options.blockContactAddressState}${$options.blockContactAddressZip}` 26468 }, toDisplayString($options.blockContactAddressCity) + ", " + toDisplayString($options.blockContactAddressState) + " " + toDisplayString($options.blockContactAddressZip), 9, _hoisted_31$2) 26469 ], 8, _hoisted_28$2) 26470 ]) 26471 ])) : createCommentVNode("", true), 26472 $options.hasAddress2Section ? (openBlock(), createElementBlock("div", _hoisted_32$2, [ 26473 createVNode(_component_CoreIcon, { 26474 icon: "map-pin", 26475 class: "icon" 26476 }), 26477 createBaseVNode("div", _hoisted_33$2, [ 26478 $options.blockContactAddress2Label ? (openBlock(), createElementBlock("span", { 26479 key: 0, 26480 innerHTML: $options.blockContactAddress2Label 26481 }, null, 8, _hoisted_34$2)) : createCommentVNode("", true), 26482 createBaseVNode("a", { 26483 href: $options.cleanAddress2, 26484 target: "_blank" 26485 }, [ 26486 createBaseVNode("p", { title: $options.blockContactAddress2Line1 }, toDisplayString($options.blockContactAddress2Line1), 9, _hoisted_36$2), 26487 $options.blockContactAddress2Line2 ? (openBlock(), createElementBlock("p", { 26488 key: 0, 26489 title: $options.blockContactAddress2Line2 26490 }, toDisplayString($options.blockContactAddress2Line2), 9, _hoisted_37$1)) : createCommentVNode("", true), 26491 createBaseVNode("p", { 26492 title: `${$options.blockContactAddress2City}${$options.blockContactAddress2State}${$options.blockContactAddress2Zip}` 26493 }, toDisplayString($options.blockContactAddress2City) + " " + toDisplayString($options.blockContactAddress2State) + " " + toDisplayString($options.blockContactAddress2Zip), 9, _hoisted_38$1) 26494 ], 8, _hoisted_35$2) 26495 ]) 26496 ])) : createCommentVNode("", true), 26497 $options.hasAddress3Section ? (openBlock(), createElementBlock("div", _hoisted_39$1, [ 26498 createVNode(_component_CoreIcon, { 26499 icon: "map-pin", 26500 class: "icon" 26501 }), 26502 createBaseVNode("div", _hoisted_40$1, [ 26503 $options.blockContactAddress3Label ? (openBlock(), createElementBlock("span", { 26504 key: 0, 26505 innerHTML: $options.blockContactAddress3Label 26506 }, null, 8, _hoisted_41$1)) : createCommentVNode("", true), 26507 createBaseVNode("a", { 26508 href: $options.cleanAddress3, 26509 target: "_blank" 26510 }, [ 26511 createBaseVNode("p", { title: $options.blockContactAddress3Line1 }, toDisplayString($options.blockContactAddress3Line1), 9, _hoisted_43$1), 26512 $options.blockContactAddress3Line2 ? (openBlock(), createElementBlock("p", { 26513 key: 0, 26514 title: $options.blockContactAddress3Line2 26515 }, toDisplayString($options.blockContactAddress3Line2), 9, _hoisted_44$1)) : createCommentVNode("", true), 26516 createBaseVNod
26516e("p", { 26517 title: `${$options.blockContactAddress3City}${$options.blockContactAddress3State}${$options.blockContactAddress3Zip}` 26518 }, toDisplayString($options.blockContactAddress3City) + " " + toDisplayString($options.blockContactAddress3State) + " " + toDisplayString($options.blockContactAddress3Zip), 9, _hoisted_45$1) 26519 ], 8, _hoisted_42$1) 26520 ]) 26521 ])) : createCommentVNode("", true), 26522 $options.toggleButton || $options.toggleButton2 ? (openBlock(), createElementBlock("div", _hoisted_46$1, [ 26523 $options.toggleButton && $options.photoSides ? (openBlock(), createElementBlock("div", _hoisted_47$1, [ 26524 createVNode(_component_CoreBlock, mergeProps({ "is-editable": $props.isEditable }, $setup.inlineButton("buttonLabel"), { settings: $options.buttonSettings }), { 26525 "inline-editor": withCtx((slotProps) => [ 26526 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps({ 26527 ...slotProps, 26528 onClose: $setup.closeField 26529 }))) 26530 ]), 26531 _: 3 26532 }, 16, ["is-editable", "settings"]) 26533 ])) : createCommentVNode("", true), 26534 $options.toggleButton2 && $options.photoSides ? (openBlock(), createElementBlock("div", _hoisted_48$1, [ 26535 createVNode(_component_CoreBlock, mergeProps({ "is-editable": $props.isEditable }, $setup.inlineButton("buttonLabel2"), { settings: $options.button2Settings }), { 26536 "inline-editor": withCtx((slotProps) => [ 26537 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps({ 26538 ...slotProps, 26539 onClose: $setup.closeField 26540 }))) 26541 ]), 26542 _: 3 26543 }, 16, ["is-editable", "settings"]) 26544 ])) : createCommentVNode("", true) 26545 ])) : createCommentVNode("", true) 26546 ]), 26547 $options.isDBA && $options.verifyAgentState("AR") && $options.licensesArkansas.length || $options.isAgent && $options.licensesArkansas.length ? withDirectives((openBlock(), createBlock(_component_CoreBlock, { 26548 key: 1, 26549 "is-editable": $props.isEditable, 26550 settings: { 26551 type: "rich-text", 26552 richText: `<span>AR Insurance License:</span> <span class='license-number'>#${$options.licensesArkansas[0].licenseIdNumber}</span>`, 26553 variants: { 26554 class: "info_license" 26555 } 26556 } 26557 }, null, 8, ["is-editable", "settings"])), [ 26558 [vShow, $options.toggleLicense] 26559 ]) : createCommentVNode("", true), 26560 $options.isDBA && $options.verifyAgentState("CA") && $options.licensesCalifornia.length || $options.isAgent && $options.licensesCalifornia.length ? withDirectives((openBlock(), createBlock(_component_CoreBlock, { 26561 key: 2, 26562 "is-editable": $props.isEditable, 26563 settings: { 26564 type: "rich-text", 26565 richText: `<span>CA Insurance License:</span> <span class='license-number'>#${$options.licensesCalifornia[0].licenseIdNumber}</span>`, 26566 variants: { 26567 class: "info_license" 26568 } 26569 } 26570 }, null, 8, ["is-editable", "settings"])), [ 26571 [vShow, $options.toggleLicense] 26572 ]) : createCommentVNode("", true), 26573 !$options.photoSides ? (openBlock(), createElementBlock(Fragment, { key: 3 }, [ 26574 $options.hasSocialIcons ? (openBlock(), createElementBlock("div", _hoisted_49$1, [ 26575 createVNode(_component_CoreBlock, { 26576 "is-editable": $props.isEditable, 26577 settings: { 26578 ...$options.socialLinksSettings, 26579 variants: { 26580 style: "slim", 26581 align: $options.alignContent 26582 } 26583 } 26584 }, null, 8, ["is-editable", "settings"]) 26585 ])) : createCommentVNode("", true), 26586 $options.toggleButton || $options.toggleButton2 ? (openBlock(), createElementBlock("div", _hoisted_50$1, [ 26587 $options.toggleButton ? (openBlock(), createElementBlock("div", _hoisted_51$1, [ 26588 createVNode(_component_CoreBlock, mergeProps({ 26589 settings: $options.buttonSettings, 26590 "is-editable": $props.isEditable 26591 }, $setup.inlineButton("buttonLabel")), { 26592 "inline-editor": withCtx((slotProps) => [ 26593 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps({ 26594 ...slotProps, 26595 onClose: $setup.closeField 26596 }))) 26597 ]), 26598 _: 3 26599 }, 16, ["settings", "is-editable"]) 26600 ])) : createCommentVNode("", true), 26601 $options.toggleButton2 ? (openBlock(), createElementBlock("div", _hoisted_52$1, [ 26602 createVNode(_component_CoreBlock, mergeProps({ "is-editable": $props.isEditable }, $setup.inlineButton("buttonLabel2"), { settings: $options.button2Settings }), { 26603 "inline-editor": withCtx((slotProps) => [ 26604 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps({ 26605 ...slotProps, 26606 onClose: $setup.closeField 26607 }))) 26608 ]), 26609 _: 3 26610 }, 16, ["is-editable", "settings"]) 26611 ])) : createCommentVNode("", true) 26612 ])) : createCommentVNode("", true) 26613 ], 64)) : createCommentVNode("", true) 26614 ], 6) 26615 ], 2); 26616} 26617const CoreBlockContactCard$2 = /* @__PURE__ */ _export_sfc(_sfc_main$4u, [["render", _sfc_render$3T]]); 26618const CoreBlockContactCard$3 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 26619 __proto__: null, 26620 default: CoreBlockContactCard$2 26621}, Symbol.toStringTag, { value: "Module" })); 26622function getPageSettings(page) { 26623 const settings = page == null ? void 0 : page.settings; 26624 if (typeof settings !== "string") return settings; 26625 try { 26626 return JSON.parse(settings); 26627 } catch { 26628 return settings; 26629 } 26630} 26631function isDisclosuresPage(page) { 26632 var _a; 26633 return Boolean((_a = getPageSettings(page)) == null ? void 0 : _a.isDisclosures); 26634} 26635const _sfc_main$4t = { 26636 name: "CoreBlockFooterDisclosures", 26637 components: { 26638 NuxtLink: __nuxt_component_2$5 26639 }, 26640 props: { 26641 site: { 26642 type: Object, 26643 required: true 26644 }, 26645 isMobile: { 26646 type: Boolean, 26647 default: false 26648 }, 26649 isEditable: { 26650 type: Boolean, 26651 default: false 26652 }, 26653 showDisclosuresPageLink: { 26654 type: Boolean, 26655 default: false 26656 }, 26657 accordionWrapper: { 26658 type: Boolean, 26659 default: true 26660 } 26661 }, 26662 data() { 26663 return { 26664 clonedSite: null 26665 }; 26666 }, 26667 computed: { 26668 user() { 26669 return this.site.user || {}; 26670 }, 26671 isRegisteredRep() { 26672 var _a; 26673 return ((_a = this.user.ddcUserData) == null ? void 0 : _a.regRepInd) === "Y"; 26674 }, 26675 businessLocationState() { 26676 var _a; 26677 return (_a = this.user.ddcUserData) == null ? void 0 : _a.discBusLocAddrStateCode;
26678 }, 26679 disclosures() { 26680 var _a; 26681 const disclosures = ((_a = this.site.footer) == null ? void 0 : _a.disclosures) || []; 26682 return disclosures.map((item) => renderData(item, this.clonedSite)); 26683 }, 26684 showDisclosures() { 26685 var _a; 26686 return !!((_a = this.site.footer) == null ? void 0 : _a.showDisclosures); 26687 }, 26688 disclosuresPage() { 26689 const pages = this.site.pages || []; 26690 return pages.find(isDisclosuresPage); 26691 }, 26692 disclosuresPageLink() { 26693 return this.disclosuresPage ? `/${this.disclosuresPage.handle}` : "#"; 26694 }, 26695 wrapperSettings() { 26696 return this.accordionWrapper ? this.accordionSettings : this.rowSettings; 26697 }, 26698 disclosureBlocks() { 26699 return this.disclosures.map((disclosure) => { 26700 return { 26701 type: "rich-text", 26702 variants: { 26703 size: "disclosure" 26704 }, 26705 richText: disclosure 26706 }; 26707 }); 26708 }, 26709 accordionSettings() { 26710 return { 26711 accordionText: "<h5>Disclosure</h5>", 26712 blocks: [...this.disclosureBlocks], 26713 defaultOpen: true, 26714 hasAccordion: true, 26715 locked: null, 26716 type: "accordion", 26717 variants: {} 26718 }; 26719 }, 26720 rowSettings() { 26721 return { 26722 type: "rows", 26723 rowHeight: "auto", 26724 variants: {}, 26725 blocks: [...this.disclosureBlocks] 26726 }; 26727 }, 26728 sellingInsuranceLicenses() { 26729 var _a; 26730 return this.sellingInsuranceLicensesLogic( 26731 (_a = this.user.ddcUserData) == null ? void 0 : _a.ddcLicenseData 26732 ); 26733 }, 26734 registeredAgentLicenses() { 26735 var _a; 26736 return this.registeredAgentLicensesLogic( 26737 (_a = this.user.ddcUserData) == null ? void 0 : _a.ddcLicenseData, 26738 this.isRegisteredRep, 26739 this.businessLocationState 26740 ); 26741 }, 26742 eagleAdvisorLicenses() { 26743 var _a; 26744 return this.eagleAdvisorLicensesLogic( 26745 (_a = this.user.ddcUserData) == null ? void 0 : _a.ddcLicenseData 26746 ); 26747 }, 26748 statesSellingInsurance() { 26749 return this.states(this.sellingInsuranceLicenses); 26750 }, 26751 arCaLicenseNumbers() { 26752 return this.formatArCaLicenseNumbers(this.sellingInsuranceLicenses); 26753 }, 26754 sellingInsuranceStateText() { 26755 return this.stateText(this.sellingInsuranceLicenses); 26756 }, 26757 statesRegisteredAgent() { 26758 return this.states(this.registeredAgentLicenses); 26759 }, 26760 registeredAgentStateText() { 26761 return this.stateText(this.registeredAgentLicenses); 26762 }, 26763 statesEagleFinancial() { 26764 return this.states(this.eagleAdvisorLicenses); 26765 },
26766 eagleFinancialStateText() { 26767 return this.stateText(this.eagleAdvisorLicenses); 26768 } 26769 }, 26770 watch: { 26771 // Only these two feed addDataToSite's mustache context â watch them 26772 // directly instead of deep-watching the whole (large) site tree. 26773 user: { 26774 handler() { 26775 this.addDataToSite(); 26776 }, 26777 deep: true 26778 }, 26779 "site.teamMembers": { 26780 handler() { 26781 this.addDataToSite(); 26782 }, 26783 deep: true 26784 } 26785 }, 26786 created() { 26787 this.addDataToSite(); 26788 }, 26789 methods: { 26790 sellingInsuranceLicensesLogic(allLicenses) { 26791 let licenses = this.licenses( 26792 { 26793 licenseLobCode: "80", 26794 busLicenseTpCode: "I", 26795 busEntityCode: "001" 26796 }, 26797 allLicenses 26798 ); 26799 licenses = licenses.concat( 26800 this.licenses( 26801 { 26802 licenseLobCode: ["80", "70", "60", "50", "40"], 26803 busLicenseTpCode: "I", 26804 busEntityCode: "002" 26805 }, 26806 allLicenses 26807 ) 26808 ); 26809 licenses = licenses.concat( 26810 this.licenses( 26811 { 26812 licenseLobCode: "80", 26813 busLicenseTpCode: "I", 26814 busEntityCode: "004" 26815 }, 26816 allLicenses 26817 ) 26818 ); 26819 return licenses.filter( 26820 (obj, index2, self2) => index2 === self2.findIndex( 26821 (t) => t.stateCountyCode === obj.stateCountyCode 26822 ) 26823 ); 26824 }, 26825 registeredAgentLicensesLogic(allLicenses, isRegisteredRep, businessLocationState) { 26826 if (!isRegisteredRep) { 26827 return []; 26828 } 26829 const licenses = this.licenses( 26830 { 26831 licenseLobCode: ["30", "20"], 26832 busLicenseTpCode: "S" 26833 }, 26834 allLicenses 26835 ); 26836 if (!licenses.length) { 26837 const allowedStates = ["CO", "DC", "FL", "LA", "MD"]; 26838 if (allowedStates.includes(businessLocationState)) { 26839 return [ 26840 { 26841 stateCountyCode: businessLocationState 26842 } 26843 ]; 26844 } 26845 } 26846 return licenses; 26847 }, 26848 eagleAdvisorLicensesLogic(allLicenses) { 26849 return this.licenses({ eagleData: "Y" }, allLicenses); 26850 }, 26851 stateText(states) { 26852 return states.length > 1 ? "states" : "state"; 26853 }, 26854 licenses(args = {}, licenses) { 26855 return licenseItems(args, licenses); 26856 }, 26857 states(licenses) { 26858 const appendableStates = ["CA", "AR"]; 26859 const stateArray = licenses.map((license) => { 26860 const state = license.stateCountyCode; 26861 if (this.canShowLicenseNumber(license) && appendableStates.includes(state)) { 26862 return `${state} (${state} Insurance License #${license.licenseIdNumber})`; 26863 } 26864 if (!isNaN(state)) { 26865 return "FL"; 26866 } 26867 return state; 26868 }).join(",").split(","); 26869 stateArray.sort(); 26870 if (stateArray.length > 1) { 26871 const lastItem = stateArray.pop(); 26872 return `${stateArray.join(", ")}, and ${lastItem}`; 26873 } 26874 const singleState = stateArray[0].split(" ")[0].trim(); 26875 const fullState = licenseStates.find((state) => { 26876 return state.value === singleState; 26877 }); 26878 if (fullState) { 26879 const license = licenses.find( 26880 (l3) => l3.stateCountyCode === fullState.value 26881 ); 26882 if (this.canShowLicenseNumber(license) && appendableStates.includes(license.stateCountyCode.trim())) { 26883 return `${fullState.text} (${fullState.text} Insurance License #${license.licenseIdNumber})`; 26884 } 26885 return fullState.text; 26886 } 26887 return ""; 26888 }, 26889 formatArCaLicenseNumbers(licenses) { 26890 const appendableStates = ["AR", "CA"]; 26891 return licenses.filter( 26892 (license) => appendableStates.includes(license.stateCountyCode) && this.canShowLicenseNumber(license) 26893 ).sort( 26894 (a, b2) => a.stateCountyCode.localeCompare(b2.stateCountyCode) 26895 ).map((license) => { 26896 const state = license.stateCountyCode; 26897 return `(${state} Insurance License #${license.licenseIdNumber})`; 26898 }).join(" "); 26899 }, 26900 addDataToSite() { 26901 var _a, _b, _c; 26902 this.clonedSite = { 26903 statesSellingInsurance: this.statesSellingInsurance, 26904 arCaLicenseNumbers: this.arCaLicenseNumbers, 26905 statesRegisteredAgent: this.statesRegisteredAgent, 26906 sellingInsuranceStateText: this.sellingInsuranceStateText, 26907 registeredAgentStateText: this.registeredAgentStateText,
26908 eagleFinancialStateText: this.eagleFinancialStateText, 26909 statesEagleFinancial: this.statesEagleFinancial, 26910 ...this.site 26911 }; 26912 if (((_b = (_a = this.clonedSite) == null ? void 0 : _a.teamMembers) == null ? void 0 : _b.length) > 0) { 26913 const filteredTeamMembers = (_c = this.clonedSite) == null ? void 0 : _c.teamMembers.filter( 26914 (tm) => !!tm.nylId && tm.id !== -1 26915 ); 26916 filteredTeamMembers.forEach((tm) => { 26917 const licensesSellingInsurance = this.sellingInsuranceLicensesLogic(tm.licenses); 26918 const licensesEagle = this.eagleAdvisorLicensesLogic( 26919 tm.licenses 26920 ); 26921 const licensesRegRep = this.registeredAgentLicensesLogic( 26922 tm.licenses, 26923 tm.regRepInd === "Y", 26924 tm.discBusLocAddrStateCode 26925 ); 26926 this.clonedSite["statesSellingInsuranceTeamMember" + tm.id] = this.states(licensesSellingInsurance); 26927 this.clonedSite["sellingInsuranceStateTextTeamMember" + tm.id] = this.stateText(licensesSellingInsurance); 26928 this.clonedSite["statesEagleFinancialTeamMember" + tm.id] = this.states(licensesEagle);
26929 this.clonedSite["eagleFinancialStateTextTeamMember" + tm.id] = this.stateText(licensesEagle); 26930 this.clonedSite["statesRegisteredAgentTeamMember" + tm.id] = this.states(licensesRegRep); 26931 this.clonedSite["registeredAgentStateTextTeamMember" + tm.id] = this.stateText(licensesRegRep); 26932 }); 26933 } 26934 }, 26935 canShowLicenseNumber(license) { 26936 return (license == null ? void 0 : license.licenseIdNumber) && license.licenseLobCode !== "30" && // do not show license number if license is registered rep 26937 license.licenseLobCode !== "20" && license.busLicenseTpCode !== "S" && license.eagleData !== "Y"; 26938 } 26939 } 26940}; 26941function _sfc_render$3S(_ctx, _cache, $props, $setup, $data, $options) { 26942 const _component_CoreBlock = _sfc_main$4x; 26943 const _component_NuxtLink = __nuxt_component_2$5; 26944 return $options.showDisclosures && !$props.showDisclosuresPageLink ? (openBlock(), createBlock(_component_CoreBlock, { 26945 key: 0, 26946 class: normalizeClass(["disclosures", { "disclosures--mobile": $props.isMobile }]), 26947 settings: $options.wrapperSettings, 26948 "is-editable": $props.isEditable 26949 }, null, 8, ["class", "settings", "is-editable"])) : $options.showDisclosures && $props.showDisclosuresPageLink ? (openBlock(), createElementBlock("div", { 26950 key: 1, 26951 class: normalizeClass(["disclosures disclosures-page-link", { "disclosures--mobile": $props.isMobile }]), 26952 "data-testid": "disclosures-page-link" 26953 }, [ 26954 createVNode(_component_NuxtLink, { 26955 to: $options.disclosuresPageLink, 26956 class: "disclosures-page-link__link" 26957 }, { 26958 default: withCtx(() => _cache[0] || (_cache[0] = [ 26959 createTextVNode(" View Important Regulatory and Licensing Disclosures ") 26960 ])), 26961 _: 1 26962 }, 8, ["to"]), 26963 _cache[1] || (_cache[1] = createBaseVNode("p", { class: "disclosures-page-link__description" }, " This link includes important licensing and registration information, including, where applicable, insurance license information, state-specific license details, and securities and advisory role disclosures. ", -1)) 26964 ], 2)) : createCommentVNode("", true); 26965} 26966const __nuxt_component_0$d = /* @__PURE__ */ _export_sfc(_sfc_main$4t, [["render", _sfc_render$3S]]); 26967const CoreBlockFooterDisclosures = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 26968 __proto__: null, 26969 default: __nuxt_component_0$d 26970}, Symbol.toStringTag, { value: "Module" })); 26971const _hoisted_1$4m = { class: "block__body" }; 26972const _sfc_main$4s = { 26973 __name: "CoreBlockDisclosures", 26974 props: { 26975 settings: { 26976 type: Object, 26977 required: true 26978 }, 26979 dataSite: { 26980 type: Object, 26981 default: () => ({}) 26982 }, 26983 isBuilderMobile: { 26984 type: Boolean, 26985 default: false 26986 } 26987 }, 26988 setup(__props) { 26989 return (_ctx, _cache) => { 26990 return openBlock(), createElementBlock("div", _hoisted_1$4m, [ 26991 createVNode(__nuxt_component_0$d, { 26992 site: __props.dataSite, 26993 "is-mobile": __props.isBuilderMobile, 26994 "show-disclosures-page-link": false, 26995 "accordion-wrapper": false 26996 }, null, 8, ["site", "is-mobile"]) 26997 ]); 26998 }; 26999 } 27000}; 27001const CoreBlockDisclosures = /* @__PURE__ */ _export_sfc(_sfc_main$4s, [["__scopeId", "data-v-ac6abd73"]]); 27002const CoreBlockDisclosures$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 27003 __proto__: null, 27004 default: CoreBlockDisclosures 27005}, Symbol.toStringTag, { value: "Module" })); 27006const _sfc_main$4r = { 27007 name: "CoreIconCircleCheck", 27008 props: { 27009 settings: { 27010 type: Object, 27011 required: false 27012 } 27013 }, 27014 computed: { 27015 alt() { 27016 var _a, _b; 27017 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 27018 }, 27019 id() { 27020 var _a, _b; 27021 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 27022 } 27023 } 27024}; 27025const _hoisted_1$4l = ["aria-labelledby", "aria-label"]; 27026const _hoisted_2$3Y = ["id"]; 27027function _sfc_render$3R(_ctx, _cache, $props, $setup, $data, $options) { 27028 return openBlock(), createElementBlock("svg", { 27029 width: "24", 27030 height: "24",
27031 viewBox: "0 0 24 24", 27032 fill: "none", 27033 xmlns: "http://www.w3.org/2000/svg", 27034 role: "img", 27035 "aria-labelledby": `icon-title-${$options.id}`, 27036 "aria-label": $options.alt 27037 }, [ 27038 createBaseVNode("title", { 27039 id: `icon-title-${$options.id}` 27040 }, toDisplayString($options.alt), 9, _hoisted_2$3Y), 27041 _cache[0] || (_cache[0] = createBaseVNode("path", { 27042 "fill-rule": "evenodd", 27043 "clip-rule": "evenodd", 27044 d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22ZM18.7016 8.71257C19.0951 8.32508 19.1001 7.69194 18.7126 7.2984C18.3251 6.90486 17.6919 6.89995 17.2984 7.28743L9.88046 14.5912L6.70711 11.4179C6.31658 11.0274 5.68342 11.0274 5.29289 11.4179C4.90237 11.8084 4.90237 12.4416 5.29289 12.8321L9.16789 16.7071C9.55628 17.0955 10.1852 17.0979 10.5766 16.7126L18.7016 8.71257Z", 27045 fill: "currentColor" 27046 }, null, -1)) 27047 ], 8, _hoisted_1$4l); 27048} 27049const __nuxt_component_0$c = /* @__PURE__ */ _export_sfc(_sfc_main$4r, [["render", _sfc_render$3R]]); 27050const CoreIconCircleCheck = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 27051 __proto__: null, 27052 default: __nuxt_component_0$c 27053}, Symbol.toStringTag, { value: "Module" })); 27054const _sfc_main$4q = { 27055 name: "CoreIconError", 27056 props: { 27057 settings: { 27058 type: Object, 27059 required: false 27060 } 27061 }, 27062 computed: { 27063 alt() { 27064 var _a, _b; 27065 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 27066 }, 27067 id() { 27068 var _a, _b; 27069 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 27070 } 27071 } 27072}; 27073const _hoisted_1$4k = ["aria-labelledby", "aria-label"]; 27074const _hoisted_2$3X = ["id"]; 27075function _sfc_render$3Q(_ctx, _cache, $props, $setup, $data, $options) { 27076 return openBlock(), createElementBlock("svg", { 27077 width: "24", 27078 height: "24", 27079 viewBox: "0 0 24 24", 27080 fill: "none", 27081 xmlns: "http://www.w3.org/2000/svg", 27082 role: "img", 27083 "aria-labelledby": `icon-title-${$options.id}`, 27084 "aria-label": $options.alt 27085 }, [ 27086 createBaseVNode("title", { 27087 id: `icon-title-${$options.id}` 27088 }, toDisplayString($options.alt), 9, _hoisted_2$3X), 27089 _cache[0] || (_cache[0] = createBaseVNode("path", { 27090 d: "M10.738 3.96274L2.26802 18.1027C2.09339 18.4052 2.00099 18.748 2.00001 19.0973C1.99903 19.4465 2.08951 19.7899 2.26245 20.0933C2.43538 20.3967 2.68474 20.6495 2.98573 20.8266C3.28671 21.0037 3.62882 21.0989 3.97802 21.1027H20.918C21.2672 21.0989 21.6093 21.0037 21.9103 20.8266C22.2113 20.6495 22.4607 20.3967 22.6336 20.0933C22.8065 19.7899 22.897 19.4465 22.896 19.0973C22.8951 18.748 22.8027 18.4052 22.628 18.1027L14.158 3.96274C13.9797 3.66885 13.7287 3.42586 13.4292 3.25723C13.1297 3.08859 12.7918 3 12.448 3C12.1043 3 11.7663 3.08859 11.4668 3.25723C11.1673 3.42586 10.9163 3.66885 10.738 3.96274V3.96274Z", 27091 stroke: "currentColor", 27092 "stroke-width": "2", 27093 "stroke-linecap": "round", 27094 "stroke-linejoin": "round" 27095 }, null, -1)), 27096 _cache[1] || (_cache[1] = createBaseVNode("path", { 27097 d: "M12.448 9.10278V13.1028", 27098 stroke: "currentColor", 27099 "stroke-width": "2", 27100 "stroke-linecap": "round", 27101 "stroke-linejoin": "round" 27102 }, null, -1)), 27103 _cache[2] || (_cache[2] = createBaseVNode("path", { 27104 d: "M12.448 17.1028H12.458", 27105 stroke: "currentColor", 27106 "stroke-width": "2", 27107 "stroke-linecap": "round", 27108 "stroke-linejoin": "round" 27109 }, null, -1)) 27110 ], 8, _hoisted_1$4k); 27111} 27112const __nuxt_component_2$4 = /* @__PURE__ */ _export_sfc(_sfc_main$4q, [["render", _sfc_render$3Q]]); 27113const CoreIconError = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 27114 __proto__: null, 27115 default: __nuxt_component_2$4 27116}, Symbol.toStringTag, { value: "Module" })); 27117const _hoisted_1$4j = { class: "tooltip-wrapper" }; 27118const _hoisted_2$3W = { 27119 class: "tooltip", 27120 type: "button", 27121 tabindex: "0", 27122 role: "tooltip" 27123}; 27124const _hoisted_3$z = ["id"]; 27125const _sfc_main$4p = { 27126 __name: "CoreBlockAccessibleTooltip", 27127 props: { 27128 id: { 27129 type: String, 27130 required: true 27131 }, 27132 field: { 27133 type: Object, 27134 required: true 27135 } 27136 }, 27137 setup(__props) { 27138 const props = __props; 27139 const tooltip = computed(() => { 27140 return props.field.tooltip; 27141 }); 27142 return (_ctx, _cache) => { 27143 return openBlock(), createElementBlock("div", _hoisted_1$4j, [ 27144 createBaseVNode("div", _hoisted_2$3W, [ 27145 (openBlock(), createBlock(resolveDynamicComponent(`CoreIcon${tooltip.value.icon.name}`), { 27146 settings: { 27147 id: tooltip.value.icon.id, 27148 alt: tooltip.value.icon.alt 27149 } 27150 }, null, 8, ["settings"])), 27151 tooltip.value.content ? (openBlock(), createElementBlock("div", { 27152 key: 0, 27153 id: __props.id, 27154 class: "tooltip-content" 27155 }, toDisplayString(tooltip.value.content), 9, _hoisted_3$z)) : createCommentVNode("", true) 27156 ]) 27157 ]); 27158 }; 27159 } 27160}; 27161const __nuxt_component_0$b = /* @__PURE__ */ _export_sfc(_sfc_main$4p, [["__scopeId", "data-v-09be58b1"]]); 27162const CoreBlockAccessibleTooltip = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 27163 __proto__: null, 27164 default: __nuxt_component_0$b 27165}, Symbol.toStringTag, { value: "Module" })); 27166/** 27167 * vee-validate v4.15.0 27168 * (c) 2024 Abdelrahman Awad 27169 * @license MIT 27170 */ 27171function isCallable$1(fn) { 27172 return typeof fn === "function"; 27173} 27174function isNullOrUndefined$1(value) { 27175 return value === null || value === void 0; 27176} 27177const isObject = (obj) => obj !== null && !!obj && typeof obj === "object" && !Array.isArray(obj); 27178function isIndex(value) { 27179 return Number(value) >= 0; 27180} 27181function toNumber(value) { 27182 const n = parseFloat(value); 27183 return isNaN(n) ? value : n; 27184} 27185function isObjectLike$1(value) { 27186 return typeof value === "object" && value !== null; 27187} 27188function getTag$1(value) { 27189 if (value == null) {
vendor: 4,853 bytes, lines 27190-27341
27190 return value === void 0 ? "[object Undefined]" : "[object Null]"; 27191 } 27192 return Object.prototype.toString.call(value); 27193} 27194function isPlainObject$1(value) { 27195 if (!isObjectLike$1(value) || getTag$1(value) !== "[object Object]") { 27196 return false; 27197 } 27198 if (Object.getPrototypeOf(value) === null) { 27199 return true; 27200 } 27201 let proto = value; 27202 while (Object.getPrototypeOf(proto) !== null) { 27203 proto = Object.getPrototypeOf(proto); 27204 } 27205 return Object.getPrototypeOf(value) === proto; 27206} 27207function merge$1(target, source) { 27208 Object.keys(source).forEach((key) => { 27209 if (isPlainObject$1(source[key]) && isPlainObject$1(target[key])) { 27210 if (!target[key]) { 27211 target[key] = {}; 27212 } 27213 merge$1(target[key], source[key]); 27214 return; 27215 } 27216 target[key] = source[key]; 27217 }); 27218 return target; 27219} 27220function normalizeFormPath(path) { 27221 const pathArr = path.split("."); 27222 if (!pathArr.length) { 27223 return ""; 27224 } 27225 let fullPath = String(pathArr[0]); 27226 for (let i = 1; i < pathArr.length; i++) { 27227 if (isIndex(pathArr[i])) { 27228 fullPath += `[${pathArr[i]}]`; 27229 continue; 27230 } 27231 fullPath += `.${pathArr[i]}`; 27232 } 27233 return fullPath; 27234} 27235const RULES = {}; 27236function defineRule(id, validator2) { 27237 guardExtend(id, validator2); 27238 RULES[id] = validator2; 27239} 27240function resolveRule(id) { 27241 return RULES[id]; 27242} 27243function guardExtend(id, validator2) { 27244 if (isCallable$1(validator2)) { 27245 return; 27246 } 27247 throw new Error(`Extension Error: The validator '${id}' must be a function.`); 27248} 27249function set(obj, key, val) { 27250 if (typeof val.value === "object") val.value = klona(val.value); 27251 if (!val.enumerable || val.get || val.set || !val.configurable || !val.writable || key === "__proto__") { 27252 Object.defineProperty(obj, key, val); 27253 } else obj[key] = val.value; 27254} 27255function klona(x2) { 27256 if (typeof x2 !== "object") return x2; 27257 var i = 0, k3, list, tmp, str = Object.prototype.toString.call(x2); 27258 if (str === "[object Object]") { 27259 tmp = Object.create(x2.__proto__ || null); 27260 } else if (str === "[object Array]") { 27261 tmp = Array(x2.length); 27262 } else if (str === "[object Set]") { 27263 tmp = /* @__PURE__ */ new Set(); 27264 x2.forEach(function(val) { 27265 tmp.add(klona(val)); 27266 }); 27267 } else if (str === "[object Map]") { 27268 tmp = /* @__PURE__ */ new Map(); 27269 x2.forEach(function(val, key) { 27270 tmp.set(klona(key), klona(val)); 27271 }); 27272 } else if (str === "[object Date]") { 27273 tmp = /* @__PURE__ */ new Date(+x2); 27274 } else if (str === "[object RegExp]") { 27275 tmp = new RegExp(x2.source, x2.flags); 27276 } else if (str === "[object DataView]") { 27277 tmp = new x2.constructor(klona(x2.buffer)); 27278 } else if (str === "[object ArrayBuffer]") { 27279 tmp = x2.slice(0); 27280 } else if (str.slice(-6) === "Array]") { 27281 tmp = new x2.constructor(x2); 27282 } 27283 if (tmp) { 27284 for (list = Object.getOwnPropertySymbols(x2); i < list.length; i++) { 27285 set(tmp, list[i], Object.getOwnPropertyDescriptor(x2, list[i])); 27286 } 27287 for (i = 0, list = Object.getOwnPropertyNames(x2); i < list.length; i++) { 27288 if (Object.hasOwnProperty.call(tmp, k3 = list[i]) && tmp[k3] === x2[k3]) continue; 27289 set(tmp, k3, Object.getOwnPropertyDescriptor(x2, k3)); 27290 } 27291 } 27292 return tmp || x2; 27293} 27294const FormContextKey = Symbol("vee-validate-form"); 27295const PublicFormContextKey = Symbol("vee-validate-form-context"); 27296const FieldContextKey = Symbol("vee-validate-field-instance"); 27297const IS_ABSENT = Symbol("Default empty value"); 27298const isClient = typeof window !== "undefined"; 27299function isLocator(value) { 27300 return isCallable$1(value) && !!value.__locatorRef; 27301} 27302function isTypedSchema(value) { 27303 return !!value && isCallable$1(value.parse) && value.__type === "VVTypedSchema"; 27304} 27305function isYupValidator(value) { 27306 return !!value && isCallable$1(value.validate); 27307} 27308function hasCheckedAttr(type) { 27309 return type === "checkbox" || type === "radio"; 27310} 27311function isContainerValue(value) { 27312 return isObject(value) || Array.isArray(value); 27313} 27314function isEmptyContainer(value) { 27315 if (Array.isArray(value)) { 27316 return value.length === 0; 27317 } 27318 return isObject(value) && Object.keys(value).length === 0; 27319} 27320function isNotNestedPath(path) { 27321 return /^\[.+\]$/i.test(path); 27322} 27323function isNativeMultiSelect(el) { 27324 return isNativeSelect(el) && el.multiple; 27325} 27326function isNativeSelect(el) { 27327 return el.tagName === "SELECT"; 27328} 27329function isNativeMultiSelectNode(tag, attrs) { 27330 const hasTruthyBindingValue = ![false, null, void 0, 0].includes(attrs.multiple) && !Number.isNaN(attrs.multiple); 27331 return tag === "select" && "multiple" in attrs && hasTruthyBindingValue; 27332} 27333function shouldHaveValueBinding(tag, attrs) { 27334 return !isNativeMultiSelectNode(tag, attrs) && attrs.type !== "file" && !hasCheckedAttr(attrs.type); 27335} 27336function isFormSubmitEvent(evt) { 27337 return isEvent(evt) && evt.target && "submit" in evt.target; 27338} 27339function isEvent(evt) { 27340 if (!evt) { 27341 return false;
27342 } 27343 if (typeof Event !== "undefined" && isCallable$1(Event) && evt instanceof Event) { 27344 return true; 27345 } 27346 if (evt && evt.srcElement) { 27347 return true; 27348 } 27349 return false; 27350} 27351function isPropPresent(obj, prop) { 27352 return prop in obj && obj[prop] !== IS_ABSENT; 27353} 27354function isEqual(a, b2) { 27355 if (a === b2) 27356 return true; 27357 if (a && b2 && typeof a === "object" && typeof b2 === "object") { 27358 if (a.constructor !== b2.constructor) 27359 return false; 27360 var length, i, keys2; 27361 if (Array.isArray(a)) { 27362 length = a.length; 27363 if (length != b2.length) 27364 return false; 27365 for (i = length; i-- !== 0; ) 27366 if (!isEqual(a[i], b2[i])) 27367 return false; 27368 return true; 27369 } 27370 if (a instanceof Map && b2 instanceof Map) { 27371 if (a.size !== b2.size) 27372 return false; 27373 for (i of a.entries()) 27374 if (!b2.has(i[0])) 27375 return false; 27376 for (i of a.entries()) 27377 if (!isEqual(i[1], b2.get(i[0]))) 27378 return false; 27379 return true; 27380 } 27381 if (isFile(a) && isFile(b2)) { 27382 if (a.size !== b2.size) 27383 return false; 27384 if (a.name !== b2.name) 27385 return false; 27386 if (a.lastModified !== b2.lastModified) 27387 return false; 27388 if (a.type !== b2.type) 27389 return false; 27390 return true; 27391 } 27392 if (a instanceof Set && b2 instanceof Set) { 27393 if (a.size !== b2.size) 27394 return false; 27395 for (i of a.entries()) 27396 if (!b2.has(i[0])) 27397 return false; 27398 return true; 27399 } 27400 if (ArrayBuffer.isView(a) && ArrayBuffer.isView(b2)) { 27401 length = a.length; 27402 if (length != b2.length) 27403 return false; 27404 for (i = length; i-- !== 0; ) 27405 if (a[i] !== b2[i]) 27406 return false; 27407 return true; 27408 } 27409 if (a.constructor === RegExp) 27410 return a.source === b2.source && a.flags === b2.flags; 27411 if (a.valueOf !== Object.prototype.valueOf) 27412 return a.valueOf() === b2.valueOf(); 27413 if (a.toString !== Object.prototype.toString) 27414 return a.toString() === b2.toString(); 27415 keys2 = Object.keys(a); 27416 length = keys2.length - countUndefinedValues(a, keys2); 27417 if (length !== Object.keys(b2).length - countUndefinedValues(b2, Object.keys(b2))) 27418 return false; 27419 for (i = length; i-- !== 0; ) { 27420 if (!Object.prototype.hasOwnProperty.call(b2, keys2[i])) 27421 return false; 27422 } 27423 for (i = length; i-- !== 0; ) { 27424 var key = keys2[i]; 27425 if (!isEqual(a[key], b2[key])) 27426 return false; 27427 } 27428 return true; 27429 } 27430 return a !== a && b2 !== b2; 27431} 27432function countUndefinedValues(a, keys2) { 27433 let result = 0; 27434 for (let i = keys2.length; i-- !== 0; ) { 27435 var key = keys2[i]; 27436 if (a[key] === void 0) 27437 result++; 27438 } 27439 return result; 27440} 27441function isFile(a) { 27442 if (!isClient) { 27443 return false; 27444 } 27445 return a instanceof File; 27446} 27447function cleanupNonNestedPath(path) { 27448 if (isNotNestedPath(path)) { 27449 return path.replace(/\[|\]/gi, ""); 27450 } 27451 return path; 27452} 27453function getFromPath(object, path, fallback) { 27454 if (!object) { 27455 return fallback; 27456 } 27457 if (isNotNestedPath(path)) { 27458 return object[cleanupNonNestedPath(path)]; 27459 } 27460 const resolvedValue = (path || "").split(/\.|\[(\d+)\]/).filter(Boolean).reduce((acc, propKey) => { 27461 if (isContainerValue(acc) && propKey in acc) { 27462 return acc[propKey]; 27463 } 27464 return fallback; 27465 }, object); 27466 return resolvedValue; 27467} 27468function setInPath(object, path, value) { 27469 if (isNotNestedPath(path)) { 27470 object[cleanupNonNestedPath(path)] = value; 27471 return; 27472 } 27473 const keys2 = path.split(/\.|\[(\d+)\]/).filter(Boolean); 27474 let acc = object; 27475 for (let i = 0; i < keys2.length; i++) { 27476 if (i === keys2.length - 1) { 27477 acc[keys2[i]] = value; 27478 return; 27479 } 27480 if (!(keys2[i] in acc) || isNullOrUndefined$1(acc[keys2[i]])) { 27481 acc[keys2[i]] = isIndex(keys2[i + 1]) ? [] : {}; 27482 } 27483 acc = acc[keys2[i]]; 27484 } 27485} 27486function unset(object, key) { 27487 if (Array.isArray(object) && isIndex(key)) { 27488 object.splice(Number(key), 1); 27489 return; 27490 } 27491 if (isObject(object)) { 27492 delete object[key]; 27493 } 27494} 27495function unsetPath(object, path) { 27496 if (isNotNestedPath(path)) { 27497 delete object[cleanupNonNestedPath(path)]; 27498 return; 27499 }
27500 const keys2 = path.split(/\.|\[(\d+)\]/).filter(Boolean); 27501 let acc = object; 27502 for (let i = 0; i < keys2.length; i++) { 27503 if (i === keys2.length - 1) { 27504 unset(acc, keys2[i]); 27505 break; 27506 } 27507 if (!(keys2[i] in acc) || isNullOrUndefined$1(acc[keys2[i]])) { 27508 break; 27509 } 27510 acc = acc[keys2[i]]; 27511 } 27512 const pathValues = keys2.map((_, idx) => { 27513 return getFromPath(object, keys2.slice(0, idx).join(".")); 27514 }); 27515 for (let i = pathValues.length - 1; i >= 0; i--) { 27516 if (!isEmptyContainer(pathValues[i])) { 27517 continue; 27518 } 27519 if (i === 0) { 27520 unset(object, keys2[0]); 27521 continue; 27522 } 27523 unset(pathValues[i - 1], keys2[i - 1]); 27524 } 27525} 27526function keysOf(record) { 27527 return Object.keys(record); 27528} 27529function injectWithSelf(symbol, def2 = void 0) { 27530 const vm = getCurrentInstance(); 27531 return (vm === null || vm === void 0 ? void 0 : vm.provides[symbol]) || inject(symbol, def2); 27532} 27533function resolveNextCheckboxValue(currentValue, checkedValue, uncheckedValue) { 27534 if (Array.isArray(currentValue)) { 27535 const newVal = [...currentValue]; 27536 const idx = newVal.findIndex((v2) => isEqual(v2, checkedValue)); 27537 idx >= 0 ? newVal.splice(idx, 1) : newVal.push(checkedValue); 27538 return newVal; 27539 } 27540 return isEqual(currentValue, checkedValue) ? uncheckedValue : checkedValue; 27541} 27542function debounceAsync(inner, ms = 0) { 27543 let timer = null; 27544 let resolves = []; 27545 return function(...args) { 27546 if (timer) { 27547 clearTimeout(timer); 27548 } 27549 timer = setTimeout(() => { 27550 const result = inner(...args); 27551 resolves.forEach((r2) => r2(result)); 27552 resolves = []; 27553 }, ms); 27554 return new Promise((resolve2) => resolves.push(resolve2)); 27555 }; 27556} 27557function applyModelModifiers(value, modifiers) { 27558 if (!isObject(modifiers)) { 27559 return value; 27560 } 27561 if (modifiers.number) { 27562 return toNumber(value); 27563 } 27564 return value; 27565} 27566function withLatest(fn, onDone) { 27567 let latestRun; 27568 return async function runLatest(...args) { 27569 const pending = fn(...args); 27570 latestRun = pending; 27571 const result = await pending; 27572 if (pending !== latestRun) { 27573 return result; 27574 } 27575 latestRun = void 0; 27576 return onDone(result, args); 27577 }; 27578} 27579function normalizeErrorItem(message2) { 27580 return Array.isArray(message2) ? message2 : message2 ? [message2] : []; 27581} 27582function omit(obj, keys2) { 27583 const target = {}; 27584 for (const key in obj) { 27585 if (!keys2.includes(key)) { 27586 target[key] = obj[key]; 27587 } 27588 } 27589 return target; 27590} 27591function debounceNextTick(inner) { 27592 let lastTick = null; 27593 let resolves = []; 27594 return function(...args) { 27595 const thisTick = nextTick(() => { 27596 if (lastTick !== thisTick) { 27597 return; 27598 } 27599 const result = inner(...args); 27600 resolves.forEach((r2) => r2(result)); 27601 resolves = []; 27602 lastTick = null; 27603 }); 27604 lastTick = thisTick; 27605 return new Promise((resolve2) => resolves.push(resolve2)); 27606 }; 27607} 27608function normalizeChildren(tag, context, slotProps) { 27609 if (!context.slots.default) { 27610 return context.slots.default; 27611 } 27612 if (typeof tag === "string" || !tag) { 27613 return context.slots.default(slotProps()); 27614 } 27615 return { 27616 default: () => { 27617 var _a, _b; 27618 return (_b = (_a = context.slots).default) === null || _b === void 0 ? void 0 : _b.call(_a, slotProps()); 27619 } 27620 }; 27621} 27622function getBoundValue(el) { 27623 if (hasValueBinding(el)) { 27624 return el._value; 27625 } 27626 return void 0; 27627} 27628function hasValueBinding(el) { 27629 return "_value" in el; 27630} 27631function parseInputValue(el) { 27632 if (el.type === "number") { 27633 return Number.isNaN(el.valueAsNumber) ? el.value : el.valueAsNumber; 27634 } 27635 if (el.type === "range") { 27636 return Number.isNaN(el.valueAsNumber) ? el.value : el.valueAsNumber; 27637 } 27638 return el.value; 27639} 27640function normalizeEventValue(value) { 27641 if (!isEvent(value)) { 27642 return value; 27643 } 27644 const input = value.target; 27645 if (hasCheckedAttr(input.type) && hasValueBinding(input)) { 27646 return getBoundValue(input); 27647 } 27648 if (input.type === "file" && input.files) { 27649 const files = Array.from(input.files); 27650 return input.multiple ? files : files[0]; 27651 } 27652 if (isNativeMultiSelect(input)) { 27653 return Array.from(input.options).filter((opt) => opt.selected && !opt.disabled).map(getBoundValue); 27654 } 27655 if (isNativeSelect(input)) { 27656 const selectedOption = Array.from(input.options).find((opt) => opt.selected); 27657 return selectedOption ? getBoundValue(selectedOption) : input.value; 27658 } 27659 return parseInputValue(input); 27660} 27661function normalizeRules(rules) { 27662 const acc = {}; 27663 Object.defineProperty(acc, "_$$isNormalized", { 27664 value: true, 27665 writable: false, 27666 enumerable: false, 27667 configurable: false 27668 }); 27669 if (!rules) { 27670 return acc; 27671 } 27672 if (isObject(rules) && rules._$$isNormalized) { 27673 return rules; 27674 } 27675 if (isObject(rules)) { 27676 return Object.keys(rules).reduce((prev, curr) => { 27677 const params = normalizeParams(rules[curr]); 27678 if (rules[curr] !== false) { 27679 prev[curr] = buildParams(params); 27680 } 27681 return prev; 27682 }, acc); 27683 } 27684 if (typeof rules !== "string") { 27685 return acc; 27686 } 27687 return rules.split("|").reduce((prev, rule) => { 27688 const parsedRule = parseRule(rule); 27689 if (!parsedRule.name) { 27690 return prev; 27691 } 27692 prev[parsedRule.name] = buildParams(parsedRule.params); 27693 return prev; 27694 }, acc); 27695} 27696function normalizeParams(params) { 27697 if (params === true) { 27698 return []; 27699 } 27700 if (Array.isArray(params)) { 27701 return params; 27702 } 27703 if (isObject(params)) { 27704 return params; 27705 } 27706 return [params]; 27707} 27708function buildParams(provided) { 27709 const mapValueToLocator = (value) => { 27710 if (typeof value === "string" && value[0] === "@") { 27711 return createLocator(value.slice(1)); 27712 } 27713 return value; 27714 }; 27715 if (Array.isArray(provided)) { 27716 return provided.map(mapValueToLocator); 27717 } 27718 if (provided instanceof RegExp) { 27719 return [provided]; 27720 } 27721 return Object.keys(provided).reduce((prev, key) => {
27722 prev[key] = mapValueToLocator(provided[key]); 27723 return prev; 27724 }, {}); 27725} 27726const parseRule = (rule) => { 27727 let params = []; 27728 const name = rule.split(":")[0]; 27729 if (rule.includes(":")) { 27730 params = rule.split(":").slice(1).join(":").split(","); 27731 } 27732 return { name, params }; 27733}; 27734function createLocator(value) { 27735 const locator = (crossTable) => { 27736 var _a; 27737 const val = (_a = getFromPath(crossTable, value)) !== null && _a !== void 0 ? _a : crossTable[value]; 27738 return val; 27739 }; 27740 locator.__locatorRef = value; 27741 return locator; 27742} 27743function extractLocators(params) { 27744 if (Array.isArray(params)) { 27745 return params.filter(isLocator); 27746 } 27747 return keysOf(params).filter((key) => isLocator(params[key])).map((key) => params[key]); 27748} 27749const DEFAULT_CONFIG = { 27750 generateMessage: ({ field }) => `${field} is not valid.`, 27751 bails: true, 27752 validateOnBlur: true, 27753 validateOnChange: true, 27754 validateOnInput: false, 27755 validateOnModelUpdate: true 27756}; 27757let currentConfig = Object.assign({}, DEFAULT_CONFIG); 27758const getConfig = () => currentConfig; 27759const setConfig = (newConf) => { 27760 currentConfig = Object.assign(Object.assign({}, currentConfig), newConf); 27761}; 27762const configure = setConfig; 27763async function validate(value, rules, options = {}) { 27764 const shouldBail = options === null || options === void 0 ? void 0 : options.bails; 27765 const field = { 27766 name: (options === null || options === void 0 ? void 0 : options.name) || "{field}", 27767 rules, 27768 label: options === null || options === void 0 ? void 0 : options.label, 27769 bails: shouldBail !== null && shouldBail !== void 0 ? shouldBail : true, 27770 formData: (options === null || options === void 0 ? void 0 : options.values) || {} 27771 }; 27772 const result = await _validate(field, value); 27773 return Object.assign(Object.assign({}, result), { valid: !result.errors.length }); 27774} 27775async function _validate(field, value) { 27776 const rules = field.rules; 27777 if (isTypedSchema(rules) || isYupValidator(rules)) { 27778 return validateFieldWithTypedSchema(value, Object.assign(Object.assign({}, field), { rules })); 27779 } 27780 if (isCallable$1(rules) || Array.isArray(rules)) { 27781 const ctx = { 27782 field: field.label || field.name, 27783 name: field.name, 27784 label: field.label, 27785 form: field.formData, 27786 value 27787 }; 27788 const pipeline = Array.isArray(rules) ? rules : [rules]; 27789 const length2 = pipeline.length; 27790 const errors2 = []; 27791 for (let i = 0; i < length2; i++) { 27792 const rule = pipeline[i]; 27793 const result = await rule(value, ctx); 27794 const isValid2 = typeof result !== "string" && !Array.isArray(result) && result; 27795 if (isValid2) { 27796 continue; 27797 } 27798 if (Array.isArray(result)) { 27799 errors2.push(...result); 27800 } else { 27801 const message2 = typeof result === "string" ? result : _generateFieldError(ctx); 27802 errors2.push(message2); 27803 } 27804 if (field.bails) { 27805 return { 27806 errors: errors2 27807 }; 27808 } 27809 } 27810 return { 27811 errors: errors2 27812 }; 27813 } 27814 const normalizedContext = Object.assign(Object.assign({}, field), { rules: normalizeRules(rules) }); 27815 const errors = []; 27816 const rulesKeys = Object.keys(normalizedContext.rules); 27817 const length = rulesKeys.length; 27818 for (let i = 0; i < length; i++) { 27819 const rule = rulesKeys[i]; 27820 const result = await _test(normalizedContext, value, { 27821 name: rule, 27822 params: normalizedContext.rules[rule] 27823 }); 27824 if (result.error) { 27825 errors.push(result.error); 27826 if (field.bails) { 27827 return { 27828 errors 27829 }; 27830 } 27831 } 27832 } 27833 return { 27834 errors 27835 }; 27836} 27837function isYupError(err) { 27838 return !!err && err.name === "ValidationError"; 27839} 27840function yupToTypedSchema(yupSchema) { 27841 const schema = { 27842 __type: "VVTypedSchema", 27843 async parse(values, context) { 27844 var _a;
27845 try { 27846 const output = await yupSchema.validate(values, { abortEarly: false, context: (context === null || context === void 0 ? void 0 : context.formData) || {} }); 27847 return { 27848 output, 27849 errors: [] 27850 }; 27851 } catch (err) { 27852 if (!isYupError(err)) { 27853 throw err; 27854 } 27855 if (!((_a = err.inner) === null || _a === void 0 ? void 0 : _a.length) && err.errors.length) { 27856 return { errors: [{ path: err.path, errors: err.errors }] }; 27857 } 27858 const errors = err.inner.reduce((acc, curr) => { 27859 const path = curr.path || ""; 27860 if (!acc[path]) { 27861 acc[path] = { errors: [], path }; 27862 } 27863 acc[path].errors.push(...curr.errors); 27864 return acc; 27865 }, {}); 27866 return { errors: Object.values(errors) }; 27867 } 27868 } 27869 }; 27870 return schema; 27871} 27872async function validateFieldWithTypedSchema(value, context) { 27873 const typedSchema = isTypedSchema(context.rules) ? context.rules : yupToTypedSchema(context.rules); 27874 const result = await typedSchema.parse(value, { formData: context.formData }); 27875 const messages = []; 27876 for (const error of result.errors) { 27877 if (error.errors.length) { 27878 messages.push(...error.errors); 27879 } 27880 } 27881 return { 27882 value: result.value, 27883 errors: messages 27884 }; 27885} 27886async function _test(field, value, rule) { 27887 const validator2 = resolveRule(rule.name); 27888 if (!validator2) { 27889 throw new Error(`No such validator '${rule.name}' exists.`); 27890 } 27891 const params = fillTargetValues(rule.params, field.formData); 27892 const ctx = { 27893 field: field.label || field.name, 27894 name: field.name, 27895 label: field.label, 27896 value, 27897 form: field.formData, 27898 rule: Object.assign(Object.assign({}, rule), { params }) 27899 }; 27900 const result = await validator2(value, params, ctx); 27901 if (typeof result === "string") { 27902 return { 27903 error: result 27904 }; 27905 } 27906 return { 27907 error: result ? void 0 : _generateFieldError(ctx) 27908 }; 27909} 27910function _generateFieldError(fieldCtx) { 27911 const message2 = getConfig().generateMessage; 27912 if (!message2) { 27913 return "Field is invalid"; 27914 } 27915 return message2(fieldCtx); 27916} 27917function fillTargetValues(params, crossTable) { 27918 const normalize = (value) => { 27919 if (isLocator(value)) { 27920 return value(crossTable); 27921 } 27922 return value; 27923 }; 27924 if (Array.isArray(params)) { 27925 return params.map(normalize); 27926 } 27927 return Object.keys(params).reduce((acc, param) => { 27928 acc[param] = normalize(params[param]); 27929 return acc; 27930 }, {}); 27931} 27932async function validateTypedSchema(schema, values) { 27933 const typedSchema = isTypedSchema(schema) ? schema : yupToTypedSchema(schema); 27934 const validationResult = await typedSchema.parse(klona(values), { formData: klona(values) }); 27935 const results = {}; 27936 const errors = {}; 27937 for (const error of validationResult.errors) { 27938 const messages = error.errors; 27939 const path = (error.path || "").replace(/\["(\d+)"\]/g, (_, m) => { 27940 return `[${m}]`; 27941 }); 27942 results[path] = { valid: !messages.length, errors: messages }; 27943 if (messages.length) { 27944 errors[path] = messages[0]; 27945 } 27946 } 27947 return { 27948 valid: !validationResult.errors.length, 27949 results, 27950 errors, 27951 values: validationResult.value, 27952 source: "schema" 27953 }; 27954} 27955async function validateObjectSchema(schema, values, opts) { 27956 const paths = keysOf(schema); 27957 const validations = paths.map(async (path) => { 27958 var _a, _b, _c; 27959 const strings = (_a = opts === null || opts === void 0 ? void 0 : opts.names) === null || _a === void 0 ? void 0 : _a[path]; 27960 const fieldResult = await validate(getFromPath(values, path), schema[path], { 27961 name: (strings === null || strings === void 0 ? void 0 : strings.name) || path, 27962 label: strings === null || strings === void 0 ? void 0 : strings.label, 27963 values, 27964 bails: (_c = (_b = opts === null || opts === void 0 ? void 0 : opts.bailsMap) === null || _b === void 0 ? void 0 : _b[path]) !== null && _c !== void 0 ? _c : true 27965 }); 27966 return Object.assign(Object.assign({}, fieldResult), { path }); 27967 }); 27968 let isAllValid = true; 27969 const validationResults = await Promise.all(validations); 27970 const results = {}; 27971 const errors = {}; 27972 for (const result of validationResults) { 27973 results[result.path] = { 27974 valid: result.valid, 27975 errors: result.errors 27976 }; 27977 if (!result.valid) { 27978 isAllValid = false;
27979 errors[result.path] = result.errors[0]; 27980 } 27981 } 27982 return { 27983 valid: isAllValid, 27984 results, 27985 errors, 27986 source: "schema" 27987 }; 27988} 27989let ID_COUNTER = 0; 27990function useFieldState(path, init) { 27991 const { value, initialValue, setInitialValue } = _useFieldValue(path, init.modelValue, init.form); 27992 if (!init.form) { 27993 let setState2 = function(state2) { 27994 var _a; 27995 if ("value" in state2) { 27996 value.value = state2.value; 27997 } 27998 if ("errors" in state2) { 27999 setErrors(state2.errors); 28000 } 28001 if ("touched" in state2) { 28002 meta.touched = (_a = state2.touched) !== null && _a !== void 0 ? _a : meta.touched; 28003 } 28004 if ("initialValue" in state2) { 28005 setInitialValue(state2.initialValue); 28006 } 28007 }; 28008 const { errors: errors2, setErrors } = createFieldErrors(); 28009 const id = ID_COUNTER >= Number.MAX_SAFE_INTEGER ? 0 : ++ID_COUNTER; 28010 const meta = createFieldMeta(value, initialValue, errors2, init.schema); 28011 return { 28012 id, 28013 path, 28014 value, 28015 initialValue, 28016 meta, 28017 flags: { pendingUnmount: { [id]: false }, pendingReset: false }, 28018 errors: errors2, 28019 setState: setState2 28020 }; 28021 } 28022 const state = init.form.createPathState(path, { 28023 bails: init.bails, 28024 label: init.label, 28025 type: init.type, 28026 validate: init.validate, 28027 schema: init.schema 28028 }); 28029 const errors = computed(() => state.errors); 28030 function setState(state2) { 28031 var _a, _b, _c; 28032 if ("value" in state2) { 28033 value.value = state2.value; 28034 } 28035 if ("errors" in state2) { 28036 (_a = init.form) === null || _a === void 0 ? void 0 : _a.setFieldError(unref(path), state2.errors); 28037 } 28038 if ("touched" in state2) { 28039 (_b = init.form) === null || _b === void 0 ? void 0 : _b.setFieldTouched(unref(path), (_c = state2.touched) !== null && _c !== void 0 ? _c : false); 28040 } 28041 if ("initialValue" in state2) { 28042 setInitialValue(state2.initialValue); 28043 } 28044 } 28045 return { 28046 id: Array.isArray(state.id) ? state.id[state.id.length - 1] : state.id, 28047 path, 28048 value, 28049 errors, 28050 meta: state, 28051 initialValue, 28052 flags: state.__flags, 28053 setState 28054 }; 28055} 28056function _useFieldValue(path, modelValue, form) { 28057 const modelRef = ref(unref(modelValue)); 28058 function resolveInitialValue2() { 28059 if (!form) { 28060 return unref(modelRef); 28061 } 28062 return getFromPath(form.initialValues.value, unref(path), unref(modelRef)); 28063 } 28064 function setInitialValue(value2) { 28065 if (!form) { 28066 modelRef.value = value2; 28067 return; 28068 } 28069 form.setFieldInitialValue(unref(path), value2, true); 28070 } 28071 const initialValue = computed(resolveInitialValue2); 28072 if (!form) { 28073 const value2 = ref(resolveInitialValue2()); 28074 return { 28075 value: value2, 28076 initialValue, 28077 setInitialValue 28078 }; 28079 } 28080 const currentValue = resolveModelValue(modelValue, form, initialValue, path); 28081 form.stageInitialValue(unref(path), currentValue, true); 28082 const value = computed({ 28083 get() { 28084 return getFromPath(form.values, unref(path)); 28085 }, 28086 set(newVal) { 28087 form.setFieldValue(unref(path), newVal, false); 28088 } 28089 }); 28090 return { 28091 value, 28092 initialValue, 28093 setInitialValue 28094 }; 28095} 28096function resolveModelValue(modelValue, form, initialValue, path) { 28097 if (isRef(modelValue)) { 28098 return unref(modelValue); 28099 } 28100 if (modelValue !== void 0) { 28101 return modelValue; 28102 } 28103 return getFromPath(form.values, unref(path), unref(initialValue)); 28104} 28105function createFieldMeta(currentValue, initialValue, errors, schema) { 28106 const isRequired = computed(() => { 28107 var _a, _b, _c; 28108 return (_c = (_b = (_a = toValue(schema)) === null || _a === void 0 ? void 0 : _a.describe) === null || _b === void 0 ? void 0 : _b.call(_a).required) !== null && _c !== void 0 ? _c : false; 28109 }); 28110 const meta = reactive({ 28111 touched: false, 28112 pending: false, 28113 valid: true, 28114 required: isRequired, 28115 validated: !!unref(errors).length, 28116 initialValue: computed(() => unref(initialValue)), 28117 dirty: computed(() => { 28118 return !isEqual(unref(currentValue), unref(initialValue)); 28119 }) 28120 }); 28121 watch(errors, (value) => { 28122 meta.valid = !value.length; 28123 }, { 28124 immediate: true, 28125 flush: "sync" 28126 }); 28127 return meta; 28128} 28129function createFieldErrors() { 28130 const errors = ref([]); 28131 return { 28132 errors, 28133 setErrors: (messages) => { 28134 errors.value = normalizeErrorItem(messages); 28135 } 28136 }; 28137} 28138function useField(path, rules, opts) { 28139 if (hasCheckedAttr(opts === null || opts === void 0 ? void 0 : opts.type)) { 28140 return useFieldWithChecked(path, rules, opts); 28141 } 28142 return _useField(path, rules, opts); 28143} 28144function _useField(path, rules, opts) { 28145 const { initialValue: modelValue, validateOnMount, bails, type, checkedValue, label, validateOnValueUpdate, uncheckedValue, controlled, keepValueOnUnmount, syncVModel, form: controlForm } = normalizeOptions(opts); 28146 const injectedForm = controlled ? injectWithSelf(FormContextKey) : void 0; 28147 const form = controlForm || injectedForm; 28148 const name = computed(() => normalizeFormPath(toValue(path))); 28149 const validator2 = computed(() => { 28150 const schema = toValue(form === null || form === void 0 ? void 0 : form.schema); 28151 if (schema) { 28152 return void 0; 28153 } 28154 const rulesValue = unref(rules); 28155 if (isYupValidator(rulesValue) || isTypedSchema(rulesValue) || isCallable$1(rulesValue) || Array.isArray(rulesValue)) { 28156 return rulesValue; 28157 } 28158 return normalizeRules(rulesValue); 28159 }); 28160 const isTyped = !isCallable$1(validator2.value) && isTypedSchema(toValue(rules)); 28161 const { id, value, initialValue, meta, setState, errors, flags } = useFieldState(name, { 28162 modelValue, 28163 form, 28164 bails, 28165 label, 28166 type, 28167 validate: validator2.value ? validate$1 : void 0, 28168 schema: isTyped ? rules : void 0 28169 }); 28170 const errorMessage = computed(() => errors.value[0]); 28171 if (syncVModel) { 28172 useVModel({ 28173 value, 28174 prop: syncVModel, 28175 handleChange, 28176 shouldValidate: () =>
vendor: 7,081 bytes, lines 28176-28381
28176 validateOnValueUpdate && !flags.pendingReset 28177 }); 28178 } 28179 const handleBlur = (evt, shouldValidate = false) => { 28180 meta.touched = true; 28181 if (shouldValidate) { 28182 validateWithStateMutation(); 28183 } 28184 }; 28185 async function validateCurrentValue(mode) { 28186 var _a, _b; 28187 if (form === null || form === void 0 ? void 0 : form.validateSchema) { 28188 const { results } = await form.validateSchema(mode); 28189 return (_a = results[toValue(name)]) !== null && _a !== void 0 ? _a : { valid: true, errors: [] }; 28190 } 28191 if (validator2.value) { 28192 return validate(value.value, validator2.value, { 28193 name: toValue(name), 28194 label: toValue(label), 28195 values: (_b = form === null || form === void 0 ? void 0 : form.values) !== null && _b !== void 0 ? _b : {}, 28196 bails 28197 }); 28198 } 28199 return { valid: true, errors: [] }; 28200 } 28201 const validateWithStateMutation = withLatest(async () => { 28202 meta.pending = true; 28203 meta.validated = true; 28204 return validateCurrentValue("validated-only"); 28205 }, (result) => { 28206 if (flags.pendingUnmount[field.id]) { 28207 return result; 28208 } 28209 setState({ errors: result.errors }); 28210 meta.pending = false; 28211 meta.valid = result.valid; 28212 return result; 28213 }); 28214 const validateValidStateOnly = withLatest(async () => { 28215 return validateCurrentValue("silent"); 28216 }, (result) => { 28217 meta.valid = result.valid; 28218 return result; 28219 }); 28220 function validate$1(opts2) { 28221 if ((opts2 === null || opts2 === void 0 ? void 0 : opts2.mode) === "silent") { 28222 return validateValidStateOnly(); 28223 } 28224 return validateWithStateMutation(); 28225 } 28226 function handleChange(e, shouldValidate = true) { 28227 const newValue = normalizeEventValue(e); 28228 setValue(newValue, shouldValidate); 28229 } 28230 onMounted(() => { 28231 if (validateOnMount) { 28232 return validateWithStateMutation(); 28233 } 28234 if (!form || !form.validateSchema) { 28235 validateValidStateOnly(); 28236 } 28237 }); 28238 function setTouched(isTouched) { 28239 meta.touched = isTouched; 28240 } 28241 function resetField(state) { 28242 var _a; 28243 const newValue = state && "value" in state ? state.value : initialValue.value; 28244 setState({ 28245 value: klona(newValue), 28246 initialValue: klona(newValue), 28247 touched: (_a = state === null || state === void 0 ? void 0 : state.touched) !== null && _a !== void 0 ? _a : false, 28248 errors: (state === null || state === void 0 ? void 0 : state.errors) || [] 28249 }); 28250 meta.pending = false; 28251 meta.validated = false; 28252 validateValidStateOnly(); 28253 } 28254 const vm = getCurrentInstance(); 28255 function setValue(newValue, shouldValidate = true) { 28256 value.value = vm && syncVModel ? applyModelModifiers(newValue, vm.props.modelModifiers) : newValue; 28257 const validateFn = shouldValidate ? validateWithStateMutation : validateValidStateOnly; 28258 validateFn(); 28259 } 28260 function setErrors(errors2) { 28261 setState({ errors: Array.isArray(errors2) ? errors2 : [errors2] }); 28262 } 28263 const valueProxy = computed({ 28264 get() { 28265 return value.value; 28266 }, 28267 set(newValue) { 28268 setValue(newValue, validateOnValueUpdate); 28269 } 28270 }); 28271 const field = { 28272 id, 28273 name, 28274 label, 28275 value: valueProxy, 28276 meta, 28277 errors, 28278 errorMessage, 28279 type, 28280 checkedValue, 28281 uncheckedValue, 28282 bails, 28283 keepValueOnUnmount, 28284 resetField, 28285 handleReset: () => resetField(), 28286 validate: validate$1, 28287 handleChange, 28288 handleBlur, 28289 setState, 28290 setTouched, 28291 setErrors, 28292 setValue 28293 }; 28294 provide(FieldContextKey, field); 28295 if (isRef(rules) && typeof unref(rules) !== "function") { 28296 watch(rules, (value2, oldValue) => { 28297 if (isEqual(value2, oldValue)) { 28298 return; 28299 } 28300 meta.validated ? validateWithStateMutation() : validateValidStateOnly(); 28301 }, { 28302 deep: true 28303 }); 28304 } 28305 if (!form) { 28306 return field; 28307 } 28308 const dependencies = computed(() => { 28309 const rulesVal = validator2.value; 28310 if (!rulesVal || isCallable$1(rulesVal) || isYupValidator(rulesVal) || isTypedSchema(rulesVal) || Array.isArray(rulesVal)) { 28311 return {}; 28312 } 28313 return Object.keys(rulesVal).reduce((acc, rule) => { 28314 const deps = extractLocators(rulesVal[rule]).map((dep) => dep.__locatorRef).reduce((depAcc, depName) => { 28315 const depValue = getFromPath(form.values, depName) || form.values[depName]; 28316 if (depValue !== void 0) { 28317 depAcc[depName] = depValue; 28318 } 28319 return depAcc; 28320 }, {}); 28321 Object.assign(acc, deps); 28322 return acc; 28323 }, {}); 28324 }); 28325 watch(dependencies, (deps, oldDeps) => { 28326 if (!Object.keys(deps).length) { 28327 return; 28328 } 28329 const shouldValidate = !isEqual(deps, oldDeps); 28330 if (shouldValidate) { 28331 meta.validated ? validateWithStateMutation() : validateValidStateOnly(); 28332 } 28333 }); 28334 onBeforeUnmount(() => { 28335 var _a; 28336 const shouldKeepValue = (_a = toValue(field.keepValueOnUnmount)) !== null && _a !== void 0 ? _a : toValue(form.keepValuesOnUnmount); 28337 const path2 = toValue(name); 28338 if (shouldKeepValue || !form || flags.pendingUnmount[field.id]) { 28339 form === null || form === void 0 ? void 0 : form.removePathState(path2, id); 28340 return; 28341 } 28342 flags.pendingUnmount[field.id] = true; 28343 const pathState = form.getPathState(path2); 28344 const matchesId = Array.isArray(pathState === null || pathState === void 0 ? void 0 : pathState.id) && (pathState === null || pathState === void 0 ? void 0 : pathState.multiple) ? pathState === null || pathState === void 0 ? void 0 : pathState.id.includes(field.id) : (pathState === null || pathState === void 0 ? void 0 : pathState.id) === field.id; 28345 if (!matchesId) { 28346 return; 28347 } 28348 if ((pathState === null || pathState === void 0 ? void 0 : pathState.multiple) && Array.isArray(pathState.value)) { 28349 const valueIdx = pathState.value.findIndex((i) => isEqual(i, toValue(field.checkedValue))); 28350 if (valueIdx > -1) { 28351 const newVal = [...pathState.value]; 28352 newVal.splice(valueIdx, 1); 28353 form.setFieldValue(path2, newVal); 28354 } 28355 if (Array.isArray(pathState.id)) { 28356 pathState.id.splice(pathState.id.indexOf(field.id), 1); 28357 } 28358 } else { 28359 form.unsetPathValue(toValue(name)); 28360 } 28361 form.removePathState(path2, id); 28362 }); 28363 return field; 28364} 28365function normalizeOptions(opts) { 28366 const defaults2 = () => ({ 28367 initialValue: void 0, 28368 validateOnMount: false, 28369 bails: true, 28370 label: void 0, 28371 validateOnValueUpdate: true, 28372 keepValueOnUnmount: void 0, 28373 syncVModel: false, 28374 controlled: true 28375 }); 28376 const isVModelSynced = !!(opts === null || opts === void 0 ? void 0 : opts.syncVModel); 28377 const modelPropName = typeof (opts === null || opts === void 0 ? void 0 : opts.syncVModel) === "string" ? opts.syncVModel : (opts === null || opts === void 0 ? void 0 : opts.modelPropName) || "modelValue"; 28378 const initialValue = isVModelSynced && !("initialValue" in (opts || {})) ? getCurrentModelValue(getCurrentInstance(), modelPropName) : opts === null || opts === void 0 ? void 0 : opts.initialValue; 28379 if (!opts) { 28380 return Object.assign(Object.assign({}, defaults2()), { initialValue }); 28381 }
28382 const checkedValue = "valueProp" in opts ? opts.valueProp : opts.checkedValue; 28383 const controlled = "standalone" in opts ? !opts.standalone : opts.controlled; 28384 const syncVModel = (opts === null || opts === void 0 ? void 0 : opts.modelPropName) || (opts === null || opts === void 0 ? void 0 : opts.syncVModel) || false; 28385 return Object.assign(Object.assign(Object.assign({}, defaults2()), opts || {}), { 28386 initialValue, 28387 controlled: controlled !== null && controlled !== void 0 ? controlled : true, 28388 checkedValue, 28389 syncVModel 28390 }); 28391} 28392function useFieldWithChecked(name, rules, opts) { 28393 const form = !(opts === null || opts === void 0 ? void 0 : opts.standalone) ? injectWithSelf(FormContextKey) : void 0; 28394 const checkedValue = opts === null || opts === void 0 ? void 0 : opts.checkedValue; 28395 const uncheckedValue = opts === null || opts === void 0 ? void 0 : opts.uncheckedValue; 28396 function patchCheckedApi(field) { 28397 const handleChange = field.handleChange; 28398 const checked = computed(() => { 28399 const currentValue = toValue(field.value); 28400 const checkedVal = toValue(checkedValue); 28401 return Array.isArray(currentValue) ? currentValue.findIndex((v2) => isEqual(v2, checkedVal)) >= 0 : isEqual(checkedVal, currentValue); 28402 }); 28403 function handleCheckboxChange(e, shouldValidate = true) { 28404 var _a, _b; 28405 if (checked.value === ((_a = e === null || e === void 0 ? void 0 : e.target) === null || _a === void 0 ? void 0 : _a.checked)) { 28406 if (shouldValidate) { 28407 field.validate(); 28408 } 28409 return; 28410 } 28411 const path = toValue(name); 28412 const pathState = form === null || form === void 0 ? void 0 : form.getPathState(path); 28413 const value = normalizeEventValue(e); 28414 let newValue = (_b = toValue(checkedValue)) !== null && _b !== void 0 ? _b : value; 28415 if (form && (pathState === null || pathState === void 0 ? void 0 : pathState.multiple) && pathState.type === "checkbox") { 28416 newValue = resolveNextCheckboxValue(getFromPath(form.values, path) || [], newValue, void 0); 28417 } else if ((opts === null || opts === void 0 ? void 0 : opts.type) === "checkbox") { 28418 newValue = resolveNextCheckboxValue(toValue(field.value), newValue, toValue(uncheckedValue)); 28419 } 28420 handleChange(newValue, shouldValidate); 28421 } 28422 return Object.assign(Object.assign({}, field), { 28423 checked, 28424 checkedValue, 28425 uncheckedValue, 28426 handleChange: handleCheckboxChange 28427 }); 28428 } 28429 return patchCheckedApi(_useField(name, rules, opts)); 28430} 28431function useVModel({ prop, value, handleChange, shouldValidate }) { 28432 const vm = getCurrentInstance(); 28433 if (!vm || !prop) { 28434 return; 28435 } 28436 const propName = typeof prop === "string" ? prop : "modelValue"; 28437 const emitName = `update:${propName}`; 28438 if (!(propName in vm.props)) { 28439 return; 28440 } 28441 watch(value, (newValue) => { 28442 if (isEqual(newValue, getCurrentModelValue(vm, propName))) { 28443 return; 28444 } 28445 vm.emit(emitName, newValue); 28446 }); 28447 watch(() => getCurrentModelValue(vm, propName), (propValue) => { 28448 if (propValue === IS_ABSENT && value.value === void 0) { 28449 return; 28450 } 28451 const newValue = propValue === IS_ABSENT ? void 0 : propValue; 28452 if (isEqual(newValue, value.value)) { 28453 return; 28454 } 28455 handleChange(newValue, shouldValidate()); 28456 }); 28457} 28458function getCurrentModelValue(vm, propName) { 28459 if (!vm) { 28460 return void 0; 28461 } 28462 return vm.props[propName]; 28463} 28464const FieldImpl = /* @__PURE__ */ defineComponent({ 28465 name: "Field", 28466 inheritAttrs: false, 28467 props: { 28468 as: { 28469 type: [String, Object], 28470 default: void 0 28471 }, 28472 name: { 28473 type: String, 28474 required: true 28475 }, 28476 rules: { 28477 type: [Object, String, Function], 28478 default: void 0 28479 }, 28480 validateOnMount: { 28481 type: Boolean, 28482 default: false 28483 }, 28484 validateOnBlur: { 28485 type: Boolean, 28486 default: void 0 28487 }, 28488 validateOnChange: { 28489 type: Boolean, 28490 default: void 0 28491 }, 28492 validateOnInput: { 28493 type: Boolean, 28494 default: void 0 28495 }, 28496 validateOnModelUpdate: { 28497 type: Boolean, 28498 default: void 0 28499 }, 28500 bails: { 28501 type: Boolean, 28502 default: () => getConfig().bails 28503 }, 28504 label: { 28505 type: String, 28506 default: void 0 28507 }, 28508 uncheckedValue: { 28509 type: null, 28510 default: void 0 28511 }, 28512 modelValue: { 28513 type: null, 28514 default: IS_ABSENT 28515 }, 28516 modelModifiers: { 28517 type: null, 28518 default: () => ({}) 28519 }, 28520 "onUpdate:modelValue": { 28521 type: null, 28522 default: void 0 28523 }, 28524 standalone: { 28525 type: Boolean, 28526 default: false 28527 }, 28528 keepValue: { 28529 type: Boolean, 28530 default: void 0 28531 } 28532 }, 28533 setup(props, ctx) { 28534 const rules = toRef(props, "rules"); 28535 const name = toRef(props, "name"); 28536 const label = toRef(props, "label"); 28537 const uncheckedValue = toRef(props, "uncheckedValue");
28538 const keepValue = toRef(props, "keepValue"); 28539 const { errors, value, errorMessage, validate: validateField, handleChange, handleBlur, setTouched, resetField, handleReset, meta, checked, setErrors, setValue } = useField(name, rules, { 28540 validateOnMount: props.validateOnMount, 28541 bails: props.bails, 28542 standalone: props.standalone, 28543 type: ctx.attrs.type, 28544 initialValue: resolveInitialValue(props, ctx), 28545 // Only for checkboxes and radio buttons 28546 checkedValue: ctx.attrs.value, 28547 uncheckedValue, 28548 label, 28549 validateOnValueUpdate: props.validateOnModelUpdate, 28550 keepValueOnUnmount: keepValue, 28551 syncVModel: true 28552 }); 28553 const onChangeHandler = function handleChangeWithModel(e, shouldValidate = true) { 28554 handleChange(e, shouldValidate); 28555 }; 28556 const sharedProps = computed(() => { 28557 const { validateOnInput, validateOnChange, validateOnBlur, validateOnModelUpdate } = resolveValidationTriggers(props); 28558 function baseOnBlur(e) { 28559 handleBlur(e, validateOnBlur); 28560 if (isCallable$1(ctx.attrs.onBlur)) { 28561 ctx.attrs.onBlur(e); 28562 } 28563 } 28564 function baseOnInput(e) { 28565 onChangeHandler(e, validateOnInput); 28566 if (isCallable$1(ctx.attrs.onInput)) { 28567 ctx.attrs.onInput(e); 28568 } 28569 } 28570 function baseOnChange(e) { 28571 onChangeHandler(e, validateOnChange); 28572 if (isCallable$1(ctx.attrs.onChange)) { 28573 ctx.attrs.onChange(e); 28574 } 28575 } 28576 const attrs = { 28577 name: props.name, 28578 onBlur: baseOnBlur, 28579 onInput: baseOnInput, 28580 onChange: baseOnChange 28581 }; 28582 attrs["onUpdate:modelValue"] = (e) => onChangeHandler(e, validateOnModelUpdate); 28583 return attrs; 28584 }); 28585 const fieldProps = computed(() => { 28586 const attrs = Object.assign({}, sharedProps.value); 28587 if (hasCheckedAttr(ctx.attrs.type) && checked) { 28588 attrs.checked = checked.value; 28589 } 28590 const tag = resolveTag(props, ctx); 28591 if (shouldHaveValueBinding(tag, ctx.attrs)) { 28592 attrs.value = value.value; 28593 } 28594 return attrs; 28595 }); 28596 const componentProps = computed(() => { 28597 return Object.assign(Object.assign({}, sharedProps.value), { modelValue: value.value }); 28598 }); 28599 function slotProps() { 28600 return { 28601 field: fieldProps.value, 28602 componentField: componentProps.value, 28603 value: value.value, 28604 meta, 28605 errors: errors.value, 28606 errorMessage: errorMessage.value, 28607 validate: validateField, 28608 resetField, 28609 handleChange: onChangeHandler, 28610 handleInput: (e) => onChangeHandler(e, false), 28611 handleReset, 28612 handleBlur: sharedProps.value.onBlur, 28613 setTouched, 28614 setErrors, 28615 setValue 28616 }; 28617 } 28618 ctx.expose({ 28619 value, 28620 meta, 28621 errors, 28622 errorMessage, 28623 setErrors, 28624 setTouched, 28625 setValue, 28626 reset: resetField, 28627 validate: validateField, 28628 handleChange 28629 }); 28630 return () => { 28631 const tag = resolveDynamicComponent(resolveTag(props, ctx)); 28632 const children = normalizeChildren(tag, ctx, slotProps); 28633 if (tag) { 28634 return h(tag, Object.assign(Object.assign({}, ctx.attrs), fieldProps.value), children); 28635 } 28636 return children; 28637 }; 28638 } 28639}); 28640function resolveTag(props, ctx) { 28641 let tag = props.as || ""; 28642 if (!props.as && !ctx.slots.default) { 28643 tag = "input"; 28644 } 28645 return tag; 28646} 28647function resolveValidationTriggers(props) { 28648 var _a, _b, _c, _d; 28649 const { validateOnInput, validateOnChange, validateOnBlur, validateOnModelUpdate } = getConfig(); 28650 return { 28651 validateOnInput: (_a = props.validateOnInput) !== null && _a !== void 0 ? _a : validateOnInput, 28652 validateOnChange: (_b = props.validateOnChange) !== null && _b !== void 0 ? _b : validateOnChange, 28653 validateOnBlur: (_c = props.validateOnBlur) !== null && _c !== void 0 ? _c : validateOnBlur, 28654 validateOnModelUpdate: (_d = props.validateOnModelUpdate) !== null && _d !== void 0 ? _d : validateOnModelUpdate 28655 }; 28656} 28657function resolveInitialValue(props, ctx) { 28658 if (!hasCheckedAttr(ctx.attrs.type)) { 28659 return isPropPresent(props, "modelValue") ? props.modelValue : ctx.attrs.value; 28660 } 28661 return isPropPresent(props, "modelValue") ? props.modelValue : void 0; 28662} 28663const Field = FieldImpl; 28664let FORM_COUNTER = 0; 28665const PRIVATE_PATH_STATE_KEYS = ["bails", "fieldsCount", "id", "multiple", "type", "validate"]; 28666function resolveInitialValues(opts) { 28667 const givenInitial = (opts === null || opts === void 0 ? void 0 : opts.initialValues) || {}; 28668 const providedValues = Object.assign({}, toValue(givenInitial)); 28669 const schema = unref(opts === null || opts === void 0 ? void 0 : opts.validationSchema); 28670 if (schema && isTypedSchema(schema) && isCallable$1(schema.cast)) { 28671 return klona(schema.cast(providedValues) || {}); 28672 } 28673 return klona(providedValues); 28674} 28675function useForm(opts) { 28676 var _a; 28677 const formId = FORM_COUNTER++; 28678 const name = (opts === null || opts === void 0 ? void 0 : opts.name) || "Form"; 28679 let FIELD_ID_COUNTER = 0; 28680 const isSubmitting = ref(false); 28681 const isValidating = ref(false); 28682 const submitCount = ref(0); 28683 const fieldArrays = []; 28684 const formValues = reactive(resolveInitialValues(opts)); 28685 const pathStates = ref([]); 28686 const extraErrorsBag = ref({}); 28687 const pathStateLookup = ref({}); 28688 const rebuildPathLookup = debounceNextTick(() => { 28689 pathStateLookup.value = pathStates.value.reduce((names, state) => { 28690 names[normalizeFormPath(toValue(state.path))] = state; 28691 return names; 28692 }, {}); 28693 }); 28694 function setFieldError(field, message2) { 28695 const state = findPathState(field); 28696 if (!state) { 28697 if (typeof field === "string") { 28698 extraErrorsBag.value[normalizeFormPath(field)] = normalizeErrorItem(message2); 28699 } 28700 return; 28701 } 28702 if (typeof field === "string") { 28703 const normalizedPath = normalizeFormPath(field); 28704 if (extraErrorsBag.value[normalizedPath]) { 28705 delete extraErrorsBag.value[normalizedPath]; 28706 } 28707 } 28708 state.errors = normalizeErrorItem(message2); 28709 state.valid = !state.errors.length; 28710 } 28711 function setErrors(paths) {
vendor: 4,270 bytes, lines 28712-28808
28712 keysOf(paths).forEach((path) => { 28713 setFieldError(path, paths[path]); 28714 }); 28715 } 28716 if (opts === null || opts === void 0 ? void 0 : opts.initialErrors) { 28717 setErrors(opts.initialErrors); 28718 } 28719 const errorBag = computed(() => { 28720 const pathErrors = pathStates.value.reduce((acc, state) => { 28721 if (state.errors.length) { 28722 acc[toValue(state.path)] = state.errors; 28723 } 28724 return acc; 28725 }, {}); 28726 return Object.assign(Object.assign({}, extraErrorsBag.value), pathErrors); 28727 }); 28728 const errors = computed(() => { 28729 return keysOf(errorBag.value).reduce((acc, key) => { 28730 const errors2 = errorBag.value[key]; 28731 if (errors2 === null || errors2 === void 0 ? void 0 : errors2.length) { 28732 acc[key] = errors2[0]; 28733 } 28734 return acc; 28735 }, {}); 28736 }); 28737 const fieldNames = computed(() => { 28738 return pathStates.value.reduce((names, state) => { 28739 names[toValue(state.path)] = { name: toValue(state.path) || "", label: state.label || "" }; 28740 return names; 28741 }, {}); 28742 }); 28743 const fieldBailsMap = computed(() => { 28744 return pathStates.value.reduce((map, state) => { 28745 var _a2; 28746 map[toValue(state.path)] = (_a2 = state.bails) !== null && _a2 !== void 0 ? _a2 : true; 28747 return map; 28748 }, {}); 28749 }); 28750 const initialErrors = Object.assign({}, (opts === null || opts === void 0 ? void 0 : opts.initialErrors) || {}); 28751 const keepValuesOnUnmount = (_a = opts === null || opts === void 0 ? void 0 : opts.keepValuesOnUnmount) !== null && _a !== void 0 ? _a : false; 28752 const { initialValues, originalInitialValues, setInitialValues } = useFormInitialValues(pathStates, formValues, opts); 28753 const meta = useFormMeta(pathStates, formValues, originalInitialValues, errors); 28754 const controlledValues = computed(() => { 28755 return pathStates.value.reduce((acc, state) => { 28756 const value = getFromPath(formValues, toValue(state.path)); 28757 setInPath(acc, toValue(state.path), value); 28758 return acc; 28759 }, {}); 28760 }); 28761 const schema = opts === null || opts === void 0 ? void 0 : opts.validationSchema; 28762 function createPathState(path, config) { 28763 var _a2, _b; 28764 const initialValue = computed(() => getFromPath(initialValues.value, toValue(path))); 28765 const pathStateExists = pathStateLookup.value[toValue(path)]; 28766 const isCheckboxOrRadio = (config === null || config === void 0 ? void 0 : config.type) === "checkbox" || (config === null || config === void 0 ? void 0 : config.type) === "radio"; 28767 if (pathStateExists && isCheckboxOrRadio) { 28768 pathStateExists.multiple = true; 28769 const id2 = FIELD_ID_COUNTER++; 28770 if (Array.isArray(pathStateExists.id)) { 28771 pathStateExists.id.push(id2); 28772 } else { 28773 pathStateExists.id = [pathStateExists.id, id2]; 28774 } 28775 pathStateExists.fieldsCount++; 28776 pathStateExists.__flags.pendingUnmount[id2] = false; 28777 return pathStateExists; 28778 } 28779 const currentValue = computed(() => getFromPath(formValues, toValue(path))); 28780 const pathValue = toValue(path); 28781 const unsetBatchIndex = UNSET_BATCH.findIndex((_path) => _path === pathValue); 28782 if (unsetBatchIndex !== -1) { 28783 UNSET_BATCH.splice(unsetBatchIndex, 1); 28784 } 28785 const isRequired = computed(() => { 28786 var _a3, _b2, _c, _d; 28787 const schemaValue = toValue(schema); 28788 if (isTypedSchema(schemaValue)) { 28789 return (_b2 = (_a3 = schemaValue.describe) === null || _a3 === void 0 ? void 0 : _a3.call(schemaValue, toValue(path)).required) !== null && _b2 !== void 0 ? _b2 : false; 28790 } 28791 const configSchemaValue = toValue(config === null || config === void 0 ? void 0 : config.schema); 28792 if (isTypedSchema(configSchemaValue)) { 28793 return (_d = (_c = configSchemaValue.describe) === null || _c === void 0 ? void 0 : _c.call(configSchemaValue).required) !== null && _d !== void 0 ? _d : false; 28794 } 28795 return false; 28796 }); 28797 const id = FIELD_ID_COUNTER++; 28798 const state = reactive({ 28799 id, 28800 path, 28801 touched: false, 28802 pending: false, 28803 valid: true, 28804 validated: !!((_a2 = initialErrors[pathValue]) === null || _a2 === void 0 ? void 0 : _a2.length), 28805 required: isRequired, 28806 initialValue, 28807 errors: shallowRef([]), 28808 bails: (_b = config === null || config === void 0 ? void 0 : config.bail
28808s) !== null && _b !== void 0 ? _b : false, 28809 label: config === null || config === void 0 ? void 0 : config.label, 28810 type: (config === null || config === void 0 ? void 0 : config.type) || "default", 28811 value: currentValue, 28812 multiple: false, 28813 __flags: { 28814 pendingUnmount: { [id]: false }, 28815 pendingReset: false 28816 }, 28817 fieldsCount: 1, 28818 validate: config === null || config === void 0 ? void 0 : config.validate, 28819 dirty: computed(() => { 28820 return !isEqual(unref(currentValue), unref(initialValue)); 28821 }) 28822 }); 28823 pathStates.value.push(state); 28824 pathStateLookup.value[pathValue] = state; 28825 rebuildPathLookup(); 28826 if (errors.value[pathValue] && !initialErrors[pathValue]) { 28827 nextTick(() => { 28828 validateField(pathValue, { mode: "silent" }); 28829 }); 28830 } 28831 if (isRef(path)) { 28832 watch(path, (newPath) => { 28833 rebuildPathLookup(); 28834 const nextValue = klona(currentValue.value); 28835 pathStateLookup.value[newPath] = state; 28836 nextTick(() => { 28837 setInPath(formValues, newPath, nextValue); 28838 }); 28839 }); 28840 } 28841 return state; 28842 } 28843 const debouncedSilentValidation = debounceAsync(_validateSchema, 5); 28844 const debouncedValidation = debounceAsync(_validateSchema, 5); 28845 const validateSchema = withLatest(async (mode) => { 28846 return await (mode === "silent" ? debouncedSilentValidation() : debouncedValidation()); 28847 }, (formResult, [mode]) => { 28848 const currentErrorsPaths = keysOf(formCtx.errorBag.value); 28849 const paths = [ 28850 .../* @__PURE__ */ new Set([...keysOf(formResult.results), ...pathStates.value.map((p2) => p2.path), ...currentErrorsPaths]) 28851 ].sort(); 28852 const results = paths.reduce((validation, _path) => { 28853 var _a2; 28854 const expectedPath = _path; 28855 const pathState = findPathState(expectedPath) || findHoistedPath(expectedPath); 28856 const messages = ((_a2 = formResult.results[expectedPath]) === null || _a2 === void 0 ? void 0 : _a2.errors) || []; 28857 const path = toValue(pathState === null || pathState === void 0 ? void 0 : pathState.path) || expectedPath; 28858 const fieldResult = mergeValidationResults({ errors: messages, valid: !messages.length }, validation.results[path]); 28859 validation.results[path] = fieldResult; 28860 if (!fieldResult.valid) { 28861 validation.errors[path] = fieldResult.errors[0]; 28862 } 28863 if (pathState && extraErrorsBag.value[path]) { 28864 delete extraErrorsBag.value[path]; 28865 } 28866 if (!pathState) { 28867 setFieldError(path, messages); 28868 return validation; 28869 } 28870 pathState.valid = fieldResult.valid; 28871 if (mode === "silent") { 28872 return validation; 28873 } 28874 if (mode === "validated-only" && !pathState.validated) { 28875 return validation; 28876 } 28877 setFieldError(pathState, fieldResult.errors); 28878 return validation; 28879 }, { 28880 valid: formResult.valid, 28881 results: {}, 28882 errors: {}, 28883 source: formResult.source 28884 }); 28885 if (formResult.values) { 28886 results.values = formResult.values; 28887 results.source = formResult.source; 28888 } 28889 keysOf(results.results).forEach((path) => { 28890 var _a2; 28891 const pathState = findPathState(path); 28892 if (!pathState) { 28893 return; 28894 } 28895 if (mode === "silent") { 28896 return; 28897 } 28898 if (mode === "validated-only" && !pathState.validated) { 28899 return; 28900 } 28901 setFieldError(pathState, (_a2 = results.results[path]) === null || _a2 === void 0 ? void 0 : _a2.errors); 28902 }); 28903 return results; 28904 }); 28905 function mutateAllPathState(mutation) { 28906 pathStates.value.forEach(mutation); 28907 } 28908 function findPathState(path) { 28909 const normalizedPath = typeof path === "string" ? normalizeFormPath(path) : path; 28910 const pathState = typeof normalizedPath === "string" ? pathStateLookup.value[normalizedPath] : normalizedPath; 28911 return pathState; 28912 } 28913 function findHoistedPath(path) { 28914 const candidates = pathStates.value.filter((state) => path.startsWith(toValue(state.path))); 28915 return candidates.reduce((bestCandidate, candidate) => { 28916 if (!bestCandidate) { 28917 return candidate; 28918 } 28919 return candidate.path.length > bestCandidate.path.length ? candidate : bestCandidate; 28920 }, void 0); 28921 } 28922 let UNSET_BATCH = []; 28923 let PENDING_UNSET; 28924 function unsetPathValue(path) { 28925 UNSET_BATCH.push(path); 28926 if (!PENDING_UNSET) { 28927 PENDING_UNSET = nextTick(() => { 28928 const sortedPaths = [...UNSET_BATCH].sort().reverse(); 28929 sortedPaths.forEach((p2) => { 28930 unsetPath(formValues, p2); 28931 }); 28932 UNSET_BATCH = []; 28933 PENDING_UNSET = null; 28934 }); 28935 } 28936 return PENDING_UNSET; 28937 } 28938 function makeSubmissionFactory(onlyControlled) { 28939 return function submitHandlerFactory(fn, onValidationError) { 28940 return function submissionHandler(e) { 28941 if (e instanceof Event) { 28942 e.preventDefault(); 28943 e.stopPropagation(); 28944 } 28945 mutateAllPathState((s) => s.touched = true); 28946 isSubmitting.value = true; 28947 submitCount.value++; 28948 return validate2().then((result) => { 28949 const values = klona(formValues); 28950 if (result.valid && typeof fn === "function") { 28951 const controlled = klona(controlledValues.value); 28952 let submittedValues = onlyControlled ? controlled : values; 28953 if (result.values) { 28954 submittedValues = result.source === "schema" ? result.values : Object.assign({}, submittedValues, result.values); 28955 } 28956 return fn(submittedValues, { 28957 evt: e, 28958 controlledValues: controlled, 28959 setErrors, 28960 setFieldError, 28961 setTouched, 28962 setFieldTouched, 28963 setValues, 28964 setFieldValue, 28965 resetForm, 28966 resetField 28967 }); 28968 } 28969 if (!result.valid && typeof onValidationError === "function") { 28970 onValidationError({ 28971 values, 28972 evt: e, 28973 errors: result.errors, 28974 results: result.results 28975 }); 28976 } 28977 }).then((returnVal) => { 28978 isSubmitting.value = false;
28979 return returnVal; 28980 }, (err) => { 28981 isSubmitting.value = false; 28982 throw err; 28983 }); 28984 }; 28985 }; 28986 } 28987 const handleSubmitImpl = makeSubmissionFactory(false); 28988 const handleSubmit = handleSubmitImpl; 28989 handleSubmit.withControlled = makeSubmissionFactory(true); 28990 function removePathState(path, id) { 28991 const idx = pathStates.value.findIndex((s) => { 28992 return s.path === path && (Array.isArray(s.id) ? s.id.includes(id) : s.id === id); 28993 }); 28994 const pathState = pathStates.value[idx]; 28995 if (idx === -1 || !pathState) { 28996 return; 28997 } 28998 nextTick(() => { 28999 validateField(path, { mode: "silent", warn: false }); 29000 }); 29001 if (pathState.multiple && pathState.fieldsCount) { 29002 pathState.fieldsCount--; 29003 } 29004 if (Array.isArray(pathState.id)) { 29005 const idIndex = pathState.id.indexOf(id); 29006 if (idIndex >= 0) { 29007 pathState.id.splice(idIndex, 1); 29008 } 29009 delete pathState.__flags.pendingUnmount[id]; 29010 } 29011 if (!pathState.multiple || pathState.fieldsCount <= 0) { 29012 pathStates.value.splice(idx, 1); 29013 unsetInitialValue(path); 29014 rebuildPathLookup(); 29015 delete pathStateLookup.value[path]; 29016 } 29017 } 29018 function destroyPath(path) { 29019 keysOf(pathStateLookup.value).forEach((key) => { 29020 if (key.startsWith(path)) { 29021 delete pathStateLookup.value[key]; 29022 } 29023 }); 29024 pathStates.value = pathStates.value.filter((s) => !s.path.startsWith(path)); 29025 nextTick(() => { 29026 rebuildPathLookup(); 29027 }); 29028 } 29029 const formCtx = { 29030 name, 29031 formId, 29032 values: formValues, 29033 controlledValues, 29034 errorBag, 29035 errors, 29036 schema, 29037 submitCount, 29038 meta, 29039 isSubmitting, 29040 isValidating, 29041 fieldArrays, 29042 keepValuesOnUnmount, 29043 validateSchema: unref(schema) ? validateSchema : void 0, 29044 validate: validate2, 29045 setFieldError, 29046 validateField, 29047 setFieldValue, 29048 setValues, 29049 setErrors, 29050 setFieldTouched, 29051 setTouched, 29052 resetForm, 29053 resetField, 29054 handleSubmit, 29055 useFieldModel, 29056 defineInputBinds, 29057 defineComponentBinds, 29058 defineField, 29059 stageInitialValue, 29060 unsetInitialValue, 29061 setFieldInitialValue, 29062 createPathState, 29063 getPathState: findPathState, 29064 unsetPathValue, 29065 removePathState, 29066 initialValues, 29067 getAllPathStates: () => pathStates.value, 29068 destroyPath, 29069 isFieldTouched, 29070 isFieldDirty, 29071 isFieldValid 29072 }; 29073 function setFieldValue(field, value, shouldValidate = true) { 29074 const clonedValue = klona(value); 29075 const path = typeof field === "string" ? field : field.path; 29076 const pathState = findPathState(path); 29077 if (!pathState) { 29078 createPathState(path); 29079 } 29080 setInPath(formValues, path, clonedValue); 29081 if (shouldValidate) { 29082 validateField(path); 29083 } 29084 } 29085 function forceSetValues(fields, shouldValidate = true) { 29086 keysOf(formValues).forEach((key) => { 29087 delete formValues[key]; 29088 }); 29089 keysOf(fields).forEach((path) => { 29090 setFieldValue(path, fields[path], false); 29091 }); 29092 if (shouldValidate) { 29093 validate2(); 29094 } 29095 } 29096 function setValues(fields, shouldValidate = true) { 29097 merge$1(formValues, fields); 29098 fieldArrays.forEach((f) => f && f.reset()); 29099 if (shouldValidate) { 29100 validate2(); 29101 } 29102 } 29103 function createModel(path, shouldValidate) { 29104 const pathState = findPathState(toValue(path)) || createPathState(path); 29105 return computed({ 29106 get() { 29107 return pathState.value; 29108 }, 29109 set(value) { 29110 var _a2; 29111 const pathValue = toValue(path); 29112 setFieldValue(pathValue, value, (_a2 = toValue(shouldValidate)) !== null && _a2 !== void 0 ? _a2 : false); 29113 } 29114 }); 29115 } 29116 function setFieldTouched(field, isTouched) { 29117 const pathState = findPathState(field); 29118 if (pathState) { 29119 pathState.touched = isTouched; 29120 } 29121 } 29122 function isFieldTouched(field) { 29123 const pathState = findPathState(field); 29124 if (pathState) { 29125 return pathState.touched; 29126 } 29127 return pathStates.value.filter((s) => s.path.startsWith(field)).some((s) => s.touched); 29128 } 29129 function isFieldDirty(field) { 29130 const pathState = findPathState(field); 29131 if (pathState) { 29132 return pathState.dirty; 29133 } 29134 return pathStates.value.filter((s) => s.path.startsWith(field)).some((s) => s.dirty); 29135 } 29136 function isFieldValid(field) { 29137 const pathState = findPathState(field); 29138 if (pathState) { 29139 return pathState.valid; 29140 } 29141 return pathStates.value.filter((s) => s.path.startsWith(field)).every((s) => s.valid); 29142 } 29143 function setTouched(fields) { 29144 if (typeof fields === "boolean") { 29145 mutateAllPathState((state) => { 29146 state.touched = fields; 29147 }); 29148 return; 29149 }
29150 keysOf(fields).forEach((field) => { 29151 setFieldTouched(field, !!fields[field]); 29152 }); 29153 } 29154 function resetField(field, state) { 29155 var _a2; 29156 const newValue = state && "value" in state ? state.value : getFromPath(initialValues.value, field); 29157 const pathState = findPathState(field); 29158 if (pathState) { 29159 pathState.__flags.pendingReset = true; 29160 } 29161 setFieldInitialValue(field, klona(newValue), true); 29162 setFieldValue(field, newValue, false); 29163 setFieldTouched(field, (_a2 = state === null || state === void 0 ? void 0 : state.touched) !== null && _a2 !== void 0 ? _a2 : false); 29164 setFieldError(field, (state === null || state === void 0 ? void 0 : state.errors) || []); 29165 nextTick(() => { 29166 if (pathState) { 29167 pathState.__flags.pendingReset = false; 29168 } 29169 }); 29170 } 29171 function resetForm(resetState, opts2) { 29172 let newValues = klona((resetState === null || resetState === void 0 ? void 0 : resetState.values) ? resetState.values : originalInitialValues.value); 29173 newValues = (opts2 === null || opts2 === void 0 ? void 0 : opts2.force) ? newValues : merge$1(originalInitialValues.value, newValues); 29174 newValues = isTypedSchema(schema) && isCallable$1(schema.cast) ? schema.cast(newValues) : newValues; 29175 setInitialValues(newValues, { force: opts2 === null || opts2 === void 0 ? void 0 : opts2.force }); 29176 mutateAllPathState((state) => { 29177 var _a2; 29178 state.__flags.pendingReset = true; 29179 state.validated = false; 29180 state.touched = ((_a2 = resetState === null || resetState === void 0 ? void 0 : resetState.touched) === null || _a2 === void 0 ? void 0 : _a2[toValue(state.path)]) || false; 29181 setFieldValue(toValue(state.path), getFromPath(newValues, toValue(state.path)), false); 29182 setFieldError(toValue(state.path), void 0); 29183 }); 29184 (opts2 === null || opts2 === void 0 ? void 0 : opts2.force) ? forceSetValues(newValues, false) : setValues(newValues, false); 29185 setErrors((resetState === null || resetState === void 0 ? void 0 : resetState.errors) || {}); 29186 submitCount.value = (resetState === null || resetState === void 0 ? void 0 : resetState.submitCount) || 0; 29187 nextTick(() => { 29188 validate2({ mode: "silent" }); 29189 mutateAllPathState((state) => { 29190 state.__flags.pendingReset = false; 29191 }); 29192 }); 29193 } 29194 async function validate2(opts2) { 29195 const mode = (opts2 === null || opts2 === void 0 ? void 0 : opts2.mode) || "force"; 29196 if (mode === "force") { 29197 mutateAllPathState((f) => f.validated = true); 29198 } 29199 if (formCtx.validateSchema) { 29200 return formCtx.validateSchema(mode); 29201 } 29202 isValidating.value = true; 29203 const validations = await Promise.all(pathStates.value.map((state) => { 29204 if (!state.validate) { 29205 return Promise.resolve({ 29206 key: toValue(state.path), 29207 valid: true, 29208 errors: [], 29209 value: void 0 29210 }); 29211 } 29212 return state.validate(opts2).then((result) => { 29213 return { 29214 key: toValue(state.path), 29215 valid: result.valid, 29216 errors: result.errors, 29217 value: result.value 29218 }; 29219 }); 29220 })); 29221 isValidating.value = false; 29222 const results = {}; 29223 const errors2 = {}; 29224 const values = {}; 29225 for (const validation of validations) { 29226 results[validation.key] = { 29227 valid: validation.valid, 29228 errors: validation.errors 29229 }; 29230 if (validation.value) { 29231 setInPath(values, validation.key, validation.value); 29232 } 29233 if (validation.errors.length) { 29234 errors2[validation.key] = validation.errors[0]; 29235 } 29236 } 29237 return { 29238 valid: validations.every((r2) => r2.valid), 29239 results, 29240 errors: errors2, 29241 values, 29242 source: "fields" 29243 }; 29244 } 29245 async function validateField(path, opts2) { 29246 var _a2; 29247 const state = findPathState(path); 29248 if (state && (opts2 === null || opts2 === void 0 ? void 0 : opts2.mode) !== "silent") { 29249 state.validated = true; 29250 } 29251 if (schema) { 29252 const { results } = await validateSchema((opts2 === null || opts2 === void 0 ? void 0 : opts2.mode) || "validated-only"); 29253 return results[path] || { errors: [], valid: true }; 29254 } 29255 if (state === null || state === void 0 ? void 0 : state.validate) { 29256 return state.validate(opts2); 29257 } 29258 !state && ((_a2 = opts2 === null || opts2 === void 0 ? void 0 : opts2.warn) !== null && _a2 !== void 0 ? _a2 : true); 29259 return Promise.resolve({ errors: [], valid: true }); 29260 } 29261 function unsetInitialValue(path) { 29262 unsetPath(initialValues.value, path); 29263 } 29264 function stageInitialValue(path, value, updateOriginal = false) { 29265 setFieldInitialValue(path, value); 29266 setInPath(formValues, path, value); 29267 if (updateOriginal && !(opts === null || opts === void 0 ? void 0 : opts.initialValues)) { 29268 setInPath(originalInitialValues.value, path, klona(value)); 29269 } 29270 } 29271 function setFieldInitialValue(path, value, updateOriginal = false) { 29272 setInPath(initialValues.value, path, klona(value)); 29273 if (updateOriginal) { 29274 setInPath(originalInitialValues.value, path, klona(value)); 29275 } 29276 } 29277 async function _validateSchema() { 29278 const schemaValue = unref(schema); 29279 if (!schemaValue) { 29280 return { valid: true, results: {}, errors: {}, source: "none" }; 29281 } 29282 isValidating.value = true; 29283 const formResult = isYupValidator(schemaValue) || isTypedSchema(schemaValue) ? await validateTypedSchema(schemaValue, formValues) : await validateObjectSchema(schemaValue, formValues, { 29284 names: fieldNames.value, 29285 bailsMap: fieldBailsMap.value 29286 }); 29287 isValidating.value = false;
29288 return formResult; 29289 } 29290 const submitForm = handleSubmit((_, { evt }) => { 29291 if (isFormSubmitEvent(evt)) { 29292 evt.target.submit(); 29293 } 29294 }); 29295 onMounted(() => { 29296 if (opts === null || opts === void 0 ? void 0 : opts.initialErrors) { 29297 setErrors(opts.initialErrors); 29298 } 29299 if (opts === null || opts === void 0 ? void 0 : opts.initialTouched) { 29300 setTouched(opts.initialTouched); 29301 } 29302 if (opts === null || opts === void 0 ? void 0 : opts.validateOnMount) { 29303 validate2(); 29304 return; 29305 } 29306 if (formCtx.validateSchema) { 29307 formCtx.validateSchema("silent"); 29308 } 29309 }); 29310 if (isRef(schema)) { 29311 watch(schema, () => { 29312 var _a2; 29313 (_a2 = formCtx.validateSchema) === null || _a2 === void 0 ? void 0 : _a2.call(formCtx, "validated-only"); 29314 }); 29315 } 29316 provide(FormContextKey, formCtx); 29317 function defineField(path, config) { 29318 const label = isCallable$1(config) ? void 0 : config === null || config === void 0 ? void 0 : config.label; 29319 const pathState = findPathState(toValue(path)) || createPathState(path, { label }); 29320 const evalConfig = () => isCallable$1(config) ? config(omit(pathState, PRIVATE_PATH_STATE_KEYS)) : config || {}; 29321 function onBlur() { 29322 var _a2; 29323 pathState.touched = true; 29324 const validateOnBlur = (_a2 = evalConfig().validateOnBlur) !== null && _a2 !== void 0 ? _a2 : getConfig().validateOnBlur; 29325 if (validateOnBlur) { 29326 validateField(toValue(pathState.path)); 29327 } 29328 } 29329 function onInput() { 29330 var _a2; 29331 const validateOnInput = (_a2 = evalConfig().validateOnInput) !== null && _a2 !== void 0 ? _a2 : getConfig().validateOnInput; 29332 if (validateOnInput) { 29333 nextTick(() => { 29334 validateField(toValue(pathState.path)); 29335 }); 29336 } 29337 } 29338 function onChange() { 29339 var _a2; 29340 const validateOnChange = (_a2 = evalConfig().validateOnChange) !== null && _a2 !== void 0 ? _a2 : getConfig().validateOnChange; 29341 if (validateOnChange) { 29342 nextTick(() => { 29343 validateField(toValue(pathState.path)); 29344 }); 29345 } 29346 } 29347 const props = computed(() => { 29348 const base = { 29349 onChange, 29350 onInput, 29351 onBlur 29352 }; 29353 if (isCallable$1(config)) { 29354 return Object.assign(Object.assign({}, base), config(omit(pathState, PRIVATE_PATH_STATE_KEYS)).props || {}); 29355 } 29356 if (config === null || config === void 0 ? void 0 : config.props) { 29357 return Object.assign(Object.assign({}, base), config.props(omit(pathState, PRIVATE_PATH_STATE_KEYS))); 29358 } 29359 return base; 29360 }); 29361 const model = createModel(path, () => { 29362 var _a2, _b, _c; 29363 return (_c = (_a2 = evalConfig().validateOnModelUpdate) !== null && _a2 !== void 0 ? _a2 : (_b = getConfig()) === null || _b === void 0 ? void 0 : _b.validateOnModelUpdate) !== null && _c !== void 0 ? _c : true; 29364 }); 29365 return [model, props]; 29366 } 29367 function useFieldModel(pathOrPaths) { 29368 if (!Array.isArray(pathOrPaths)) { 29369 return createModel(pathOrPaths); 29370 } 29371 return pathOrPaths.map((p2) => createModel(p2, true)); 29372 } 29373 function defineInputBinds(path, config) { 29374 const [model, props] = defineField(path, config); 29375 function onBlur() { 29376 props.value.onBlur(); 29377 } 29378 function onInput(e) { 29379 const value = normalizeEventValue(e); 29380 setFieldValue(toValue(path), value, false); 29381 props.value.onInput(); 29382 } 29383 function onChange(e) { 29384 const value = normalizeEventValue(e); 29385 setFieldValue(toValue(path), value, false); 29386 props.value.onChange(); 29387 } 29388 return computed(() => { 29389 return Object.assign(Object.assign({}, props.value), { 29390 onBlur, 29391 onInput, 29392 onChange, 29393 value: model.value 29394 }); 29395 }); 29396 } 29397 function defineComponentBinds(path, config) { 29398 const [model, props] = defineField(path, config); 29399 const pathState = findPathState(toValue(path)); 29400 function onUpdateModelValue(value) { 29401 model.value = value; 29402 } 29403 return computed(() => { 29404 const conf = isCallable$1(config) ? config(omit(pathState, PRIVATE_PATH_STATE_KEYS)) : config || {}; 29405 return Object.assign({ [conf.model || "modelValue"]: model.value, [`onUpdate:${conf.model || "modelValue"}`]: onUpdateModelValue }, props.value); 29406 }); 29407 } 29408 const ctx = Object.assign(Object.assign({}, formCtx), { values: readonly(formValues), handleReset: () => resetForm(), submitForm }); 29409 provide(PublicFormContextKey, ctx); 29410 return ctx; 29411} 29412function useFormMeta(pathsState, currentValues, initialValues, errors) { 29413 const MERGE_STRATEGIES = {
29414 touched: "some", 29415 pending: "some", 29416 valid: "every" 29417 }; 29418 const isDirty2 = computed(() => { 29419 return !isEqual(currentValues, unref(initialValues)); 29420 }); 29421 function calculateFlags() { 29422 const states = pathsState.value; 29423 return keysOf(MERGE_STRATEGIES).reduce((acc, flag) => { 29424 const mergeMethod = MERGE_STRATEGIES[flag]; 29425 acc[flag] = states[mergeMethod]((s) => s[flag]); 29426 return acc; 29427 }, {}); 29428 } 29429 const flags = reactive(calculateFlags()); 29430 watchEffect(() => { 29431 const value = calculateFlags(); 29432 flags.touched = value.touched; 29433 flags.valid = value.valid; 29434 flags.pending = value.pending; 29435 }); 29436 return computed(() => { 29437 return Object.assign(Object.assign({ initialValues: unref(initialValues) }, flags), { valid: flags.valid && !keysOf(errors.value).length, dirty: isDirty2.value }); 29438 }); 29439} 29440function useFormInitialValues(pathsState, formValues, opts) { 29441 const values = resolveInitialValues(opts); 29442 const initialValues = ref(values); 29443 const originalInitialValues = ref(klona(values)); 29444 function setInitialValues(values2, opts2) { 29445 if (opts2 === null || opts2 === void 0 ? void 0 : opts2.force) { 29446 initialValues.value = klona(values2); 29447 originalInitialValues.value = klona(values2); 29448 } else { 29449 initialValues.value = merge$1(klona(initialValues.value) || {}, klona(values2)); 29450 originalInitialValues.value = merge$1(klona(originalInitialValues.value) || {}, klona(values2)); 29451 } 29452 if (!(opts2 === null || opts2 === void 0 ? void 0 : opts2.updateFields)) { 29453 return; 29454 } 29455 pathsState.value.forEach((state) => { 29456 const wasTouched = state.touched; 29457 if (wasTouched) { 29458 return; 29459 } 29460 const newValue = getFromPath(initialValues.value, toValue(state.path)); 29461 setInPath(formValues, toValue(state.path), klona(newValue)); 29462 }); 29463 } 29464 return { 29465 initialValues, 29466 originalInitialValues, 29467 setInitialValues 29468 }; 29469} 29470function mergeValidationResults(a, b2) { 29471 if (!b2) { 29472 return a; 29473 } 29474 return { 29475 valid: a.valid && b2.valid, 29476 errors: [...a.errors, ...b2.errors] 29477 }; 29478} 29479const FormImpl = /* @__PURE__ */ defineComponent({ 29480 name: "Form", 29481 inheritAttrs: false, 29482 props: { 29483 as: { 29484 type: null, 29485 default: "form" 29486 }, 29487 validationSchema: { 29488 type: Object, 29489 default: void 0 29490 }, 29491 initialValues: { 29492 type: Object, 29493 default: void 0 29494 }, 29495 initialErrors: { 29496 type: Object, 29497 default: void 0 29498 }, 29499 initialTouched: { 29500 type: Object, 29501 default: void 0 29502 }, 29503 validateOnMount: { 29504 type: Boolean, 29505 default: false 29506 }, 29507 onSubmit: { 29508 type: Function, 29509 default: void 0 29510 }, 29511 onInvalidSubmit: { 29512 type: Function, 29513 default: void 0 29514 }, 29515 keepValues: { 29516 type: Boolean, 29517 default: false 29518 }, 29519 name: { 29520 type: String, 29521 default: "Form" 29522 } 29523 }, 29524 setup(props, ctx) { 29525 const validationSchema = toRef(props, "validationSchema"); 29526 const keepValues = toRef(props, "keepValues"); 29527 const { errors, errorBag, values, meta, isSubmitting, isValidating, submitCount, controlledValues, validate: validate2, validateField, handleReset, resetForm, handleSubmit, setErrors, setFieldError, setFieldValue, setValues, setFieldTouched, setTouched, resetField } = useForm({ 29528 validationSchema: validationSchema.value ? validationSchema : void 0, 29529 initialValues: props.initialValues, 29530 initialErrors: props.initialErrors, 29531 initialTouched: props.initialTouched, 29532 validateOnMount: props.validateOnMount, 29533 keepValuesOnUnmount: keepValues, 29534 name: props.name 29535 }); 29536 const submitForm = handleSubmit((_, { evt }) => { 29537 if (isFormSubmitEvent(evt)) { 29538 evt.target.submit(); 29539 } 29540 }, props.onInvalidSubmit); 29541 const onSubmit = props.onSubmit ? handleSubmit(props.onSubmit, props.onInvalidSubmit) : submitForm; 29542 function handleFormReset(e) { 29543 if (isEvent(e)) { 29544 e.preventDefault(); 29545 } 29546 handleReset(); 29547 if (typeof ctx.attrs.onReset === "function") { 29548 ctx.attrs.onReset(); 29549 } 29550 } 29551 function handleScopedSlotSubmit(evt, onSubmit2) { 29552 const onSuccess = typeof evt === "function" && !onSubmit2 ? evt : onSubmit2; 29553 return handleSubmit(onSuccess, props.onInvalidSubmit)(evt); 29554 } 29555 function getValues() { 29556 return klona(values); 29557 } 29558 function getMeta() { 29559 return klona(meta.value); 29560 } 29561 function getErrors() { 29562 return klona(errors.value); 29563 } 29564 function slotProps() { 29565 return { 29566 meta: meta.value, 29567 errors: errors.value, 29568 errorBag: errorBag.value, 29569 values, 29570 isSubmitting: isSubmitting.value, 29571 isValidating: isValidating.value, 29572 submitCount: submitCount.value, 29573 controlledValues: controlledValues.value, 29574 validate: validate2, 29575 validateField, 29576 handleSubmit: handleScopedSlotSubmit, 29577 handleReset, 29578 submitForm, 29579 setErrors, 29580 setFieldError, 29581 setFieldValue, 29582 setValues, 29583 setFieldTouched, 29584 setTouched, 29585 resetForm, 29586 resetField, 29587 getValues, 29588 getMeta, 29589 getErrors 29590 }; 29591 } 29592 ctx.expose({ 29593 setFieldError, 29594 setErrors, 29595 setFieldValue, 29596 setValues, 29597 setFieldTouched, 29598 setTouched, 29599 resetForm, 29600 validate: validate2, 29601 validateField, 29602 resetField, 29603 getValues, 29604 getMeta, 29605 getErrors, 29606 values, 29607 meta, 29608 errors 29609 }); 29610 return function renderForm() { 29611 const tag = props.as === "form" ? props.as : !props.as ? null : resolveDynamicComponent(props.as); 29612 const children = normalizeChildren(tag, ctx, slotProps); 29613 if (!tag) { 29614 return children; 29615 } 29616 const formAttrs = tag === "form" ? { 29617 // Disables native validation as vee-validate will handle it. 29618 novalidate: true 29619 } : {}; 29620 return h(tag, Object.assign(Object.assign(Object.assign({}, formAttrs), ctx.attrs), { onSubmit, onReset: handleFormReset }), children); 29621 }; 29622 } 29623}); 29624const Form = FormImpl; 29625/** 29626 * vee-validate v4.15.0 29627 * (c) 2024 Abdelrahman Awad 29628 * @license MIT 29629 */
29630const alphanumeric = { 29631 en: /^[0-9A-Z]*$/i, 29632 cs: /^[0-9A-ZÃÄÄÃÄÃÅÃÅŠŤÃŮÎ]*$/i, 29633 da: /^[0-9A-ZÃÃà ]$/i, 29634 de: /^[0-9A-ZÃÃÃÃ]*$/i, 29635 es: /^[0-9A-ZÃÃÃÃÃÃÃ]*$/i, 29636 fr: /^[0-9A-ZÃÃÃÃÃÃÃÃÃÃÃÅÃÃß]*$/i, 29637 it: /^[0-9A-Z\xC0-\xFF]*$/i, 29638 lt: /^[0-9A-ZÄÄÄÄĮŠŲŪŽ]*$/i, 29639 hu: /^[0-9A-ZÃÃÃÃÃÅÃÃŰ]*$/i, 29640 nl: /^[0-9A-ZÃÃÃÃÃÃ]*$/i, 29641 pl: /^[0-9A-ZÄÄÄÅÅÅÃŻŹ]*$/i, 29642 pt: /^[0-9A-ZÃÃÃÃÃÃÃÃÃÃÃÃÃ]*$/i, 29643 ru: /^[0-9Ð-ЯÐ]*$/i, 29644 kz: /^[0-9Ð-ЯÐ\u04D8\u04B0\u0406\u04A2\u0492\u04AE\u049A\u04E8\u04BA]*$/i, 29645 sk: /^[0-9A-ZÃÃÄÄÃÃĹĽÅÃÅŠŤÃÃŽ]*$/i, 29646 sr: /^[0-9A-ZÄÄŽŠÄ]*$/i, 29647 sv: /^[0-9A-Zà ÃÃ]*$/i, 29648 tr: /^[0-9A-ZÃÄİıÃÅÃ]*$/i, 29649 uk: /^[0-9Ð-ЩЬЮЯÐÐÐÒ]*$/i, 29650 ar: /^[٠١٢٣٤٥٦٧٨٩0-9Ø¡Ø¢Ø£Ø¤Ø¥Ø¦Ø§Ø¨Ø©ØªØ«Ø¬ØØ®Ø¯Ø°Ø±Ø²Ø³Ø´ØµØ¶Ø·Ø¸Ø¹ØºÙÙÙÙÙ ÙÙÙÙÙÙÙÙÙÙÙÙÙÙ°]*$/, 29651 az: /^[0-9A-ZÃÆÄİıÃÅÃ]*$/i, 29652 ug: /^[0-9A-ZÚÛÛØ±ØªÙÛÚÙپھسداÛÙÙÙÙØ²Ø´ØºÛبÙÙ ÚÙÚ¯Ø®Ø¬ÛØ¦]*$/i 29653}; 29654const alphaDash = { 29655 en: /^[0-9A-Z_-]*$/i, 29656 cs: /^[0-9A-ZÃÄÄÃÄÃÅÃÅŠŤÃŮÎ_-]*$/i, 29657 da: /^[0-9A-ZÃÃà _-]*$/i, 29658 de: /^[0-9A-ZÃÃÃÃ_-]*$/i, 29659 es: /^[0-9A-ZÃÃÃÃÃÃÃ_-]*$/i, 29660 fr: /^[0-9A-ZÃÃÃÃÃÃÃÃÃÃÃÅÃÃß_-]*$/i, 29661 it: /^[0-9A-Z\xC0-\xFF_-]*$/i, 29662 lt: /^[0-9A-ZÄÄÄÄĮŠŲŪŽ_-]*$/i, 29663 nl: /^[0-9A-ZÃÃÃÃÃÃ_-]*$/i, 29664 hu: /^[0-9A-ZÃÃÃÃÃÅÃÃŰ_-]*$/i, 29665 pl: /^[0-9A-ZÄÄÄÅÅÅÃŻŹ_-]*$/i, 29666 pt: /^[0-9A-ZÃÃÃÃÃÃÃÃÃÃÃÃÃ_-]*$/i, 29667 ru: /^[0-9Ð-ЯÐ_-]*$/i, 29668 kz: /^[0-9Ð-ЯÐ\u04D8\u04B0\u0406\u04A2\u0492\u04AE\u049A\u04E8\u04BA_-]*$/i, 29669 sk: /^[0-9A-ZÃÃÄÄÃÃĹĽÅÃÅŠŤÃÃŽ_-]*$/i, 29670 sr: /^[0-9A-ZÄÄŽŠÄ_-]*$/i, 29671 sv: /^[0-9A-Zà ÃÃ_-]*$/i, 29672 tr: /^[0-9A-ZÃÄİıÃÅÃ_-]*$/i, 29673 uk: /^[0-9Ð-ЩЬЮЯÐÐÐÒ_-]*$/i, 29674 ar: /^[٠١٢٣٤٥٦٧٨٩0-9Ø¡Ø¢Ø£Ø¤Ø¥Ø¦Ø§Ø¨Ø©ØªØ«Ø¬ØØ®Ø¯Ø°Ø±Ø²Ø³Ø´ØµØ¶Ø·Ø¸Ø¹ØºÙÙÙÙÙ ÙÙÙÙÙÙÙÙÙÙÙÙÙÙ°_-]*$/, 29675 az: /^[0-9A-ZÃÆÄİıÃÅÃ_-]*$/i, 29676 ug: /^[0-9A-ZÚÛÛØ±ØªÙÛÚÙپھسداÛÙÙÙÙØ²Ø´ØºÛبÙÙ ÚÙÚ¯Ø®Ø¬ÛØ¦_-]*$/i 29677}; 29678const getLocale = (params) => { 29679 if (!params) { 29680 return void 0; 29681 } 29682 return Array.isArray(params) ? params[0] : params.locale; 29683}; 29684function getSingleParam(params, paramName) { 29685 return Array.isArray(params) ? params[0] : params[paramName]; 29686} 29687function isEmpty(value) { 29688 if (value === null || value === void 0 || value === "") { 29689 return true; 29690 } 29691 if (Array.isArray(value) && value.length === 0) { 29692 return true; 29693 } 29694 return false; 29695} 29696const alphaDashValidator = (value, params) => { 29697 if (isEmpty(value)) { 29698 return true; 29699 } 29700 const locale = getLocale(params); 29701 if (Array.isArray(value)) { 29702 return value.every((val) => alphaDashValidator(val, { locale })); 29703 } 29704 const valueAsString = String(value); 29705 if (!locale) { 29706 return Object.keys(alphaDash).some((loc) => alphaDash[loc].test(valueAsString)); 29707 } 29708 return (alphaDash[locale] || alphaDash.en).test(valueAsString); 29709}; 29710const alphaNumValidator = (value, params) => { 29711 if (isEmpty(value)) { 29712 return true; 29713 } 29714 const locale = getLocale(params); 29715 if (Array.isArray(value)) { 29716 return value.every((val) => alphaNumValidator(val, { locale })); 29717 } 29718 const valueAsString = String(value); 29719 if (!locale) { 29720 return Object.keys(alphanumeric).some((loc) => alphanumeric[loc].test(valueAsString)); 29721 } 29722 return (alphanumeric[locale] || alphanumeric.en).test(valueAsString); 29723}; 29724const emailRE = /^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i; 29725const emailValidator = (value) => { 29726 if (isEmpty(value)) { 29727 return true; 29728 } 29729 if (Array.isArray(value)) { 29730 return value.every((val) => emailRE.test(String(val))); 29731 } 29732 return emailRE.test(String(value)); 29733}; 29734const maxLengthValidator = (value, params) => { 29735 if (isEmpty(value)) { 29736 return true; 29737 } 29738 const length = getSingleParam(params, "length"); 29739 if (Array.isArray(value)) { 29740 return value.every((val) => maxLengthValidator(val, { length })); 29741 } 29742 return [...String(value)].length <= Number(length); 29743}; 29744const minValidator = (value, params) => { 29745 if (isEmpty(value)) { 29746 return true; 29747 } 29748 const length = getSingleParam(params, "length"); 29749 if (Array.isArray(value)) { 29750 return value.every((val) => minValidator(val, { length })); 29751 } 29752 return [...String(value)].length >= Number(length); 29753}; 29754const ar = /^[٠١٢٣٤٥٦٧٨٩]+$/; 29755const en = /^[0-9]+$/; 29756const numericValidator = (value) => { 29757 if (isEmpty(value)) { 29758 return true; 29759 } 29760 const testValue = (val) => { 29761 const strValue = String(val); 29762 return en.test(strValue) || ar.test(strValue); 29763 }; 29764 if (Array.isArray(value)) { 29765 return value.every(testValue); 29766 } 29767 return testValue(value); 29768}; 29769function isNullOrUndefined(value) { 29770 return value === null || value === void 0; 29771} 29772function isEmptyArray(arr) { 29773 return Array.isArray(arr) && arr.length === 0; 29774} 29775const requiredValidator = (value) => { 29776 if (isNullOrUndefined(value) || isEmptyArray(value) || value === false) { 29777 return false;
29778 } 29779 return !!String(value).trim().length; 29780}; 29781/** 29782 * vee-validate v4.15.0 29783 * (c) 2024 Abdelrahman Awad 29784 * @license MIT 29785 */ 29786function isCallable(fn) { 29787 return typeof fn === "function"; 29788} 29789function isObjectLike(value) { 29790 return typeof value === "object" && value !== null; 29791} 29792function getTag(value) { 29793 if (value == null) { 29794 return value === void 0 ? "[object Undefined]" : "[object Null]"; 29795 } 29796 return Object.prototype.toString.call(value); 29797} 29798function isPlainObject(value) { 29799 if (!isObjectLike(value) || getTag(value) !== "[object Object]") { 29800 return false; 29801 } 29802 if (Object.getPrototypeOf(value) === null) { 29803 return true; 29804 } 29805 let proto = value; 29806 while (Object.getPrototypeOf(proto) !== null) { 29807 proto = Object.getPrototypeOf(proto); 29808 } 29809 return Object.getPrototypeOf(value) === proto; 29810} 29811function merge(target, source) { 29812 Object.keys(source).forEach((key) => { 29813 if (isPlainObject(source[key]) && isPlainObject(target[key])) { 29814 if (!target[key]) { 29815 target[key] = {}; 29816 } 29817 merge(target[key], source[key]); 29818 return; 29819 } 29820 target[key] = source[key]; 29821 }); 29822 return target; 29823} 29824function interpolate(template, values, options) { 29825 const { prefix, suffix } = options; 29826 const regExp = buildRegex(prefix, suffix); 29827 return template.replace(regExp, function(_, param, placeholder) { 29828 if (!param || !values.params) { 29829 return placeholder in values ? values[placeholder] : values.params && placeholder in values.params ? values.params[placeholder] : `${prefix}${placeholder}${suffix}`; 29830 } 29831 if (!Array.isArray(values.params)) { 29832 return placeholder in values.params ? values.params[placeholder] : `${prefix}${placeholder}${suffix}`; 29833 } 29834 const paramIndex = Number(param.replace(":", "")); 29835 return paramIndex in values.params ? values.params[paramIndex] : `${param}${prefix}${placeholder}${suffix}`; 29836 }); 29837} 29838function escapeRegex(string) { 29839 return string.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"); 29840} 29841function buildRegex(prefix, suffix) { 29842 const safePrefix = escapeRegex(prefix); 29843 const safeSuffix = escapeRegex(suffix); 29844 return new RegExp(`([0-9]:)?${safePrefix}((?:(?!${safeSuffix}).)+)${safeSuffix}`, "g"); 29845} 29846class Dictionary { 29847 constructor(locale, dictionary, interpolateOptions = { prefix: "{", suffix: "}" }) { 29848 this.container = {}; 29849 this.locale = locale; 29850 this.interpolateOptions = interpolateOptions; 29851 this.merge(dictionary); 29852 } 29853 resolve(ctx, interpolateOptions) { 29854 let result = this.format(this.locale, ctx, interpolateOptions); 29855 if (!result && this.fallbackLocale && this.fallbackLocale !== this.locale) { 29856 result = this.format(this.fallbackLocale, ctx, interpolateOptions); 29857 } 29858 return result || this.getDefaultMessage(this.locale, ctx); 29859 } 29860 getDefaultMessage(locale, ctx) { 29861 const { label, name } = ctx; 29862 const fieldName = this.resolveLabel(locale, name, label); 29863 return `${fieldName} is not valid`; 29864 } 29865 getLocaleDefault(locale, field) { 29866 var _a, _b, _c, _d, _e; 29867 return ((_c = (_b = (_a = this.container[locale]) === null || _a === void 0 ? void 0 : _a.fields) === null || _b === void 0 ? void 0 : _b[field]) === null || _c === void 0 ? void 0 : _c._default) || ((_e = (_d = this.container[locale]) === null || _d === void 0 ? void 0 : _d.messages) === null || _e === void 0 ? void 0 : _e._default); 29868 } 29869 resolveLabel(locale, name, label) { 29870 var _a, _b, _c, _d; 29871 if (label) { 29872 return ((_b = (_a = this.container[locale]) === null || _a === void 0 ? void 0 : _a.names) === null || _b === void 0 ? void 0 : _b[label]) || label; 29873 } 29874 return ((_d = (_c = this.container[locale]) === null || _c === void 0 ? void 0 : _c.names) === null || _d === void 0 ? void 0 : _d[name]) || name; 29875 } 29876 format(locale, ctx, interpolateOptions) { 29877 var _a, _b, _c, _d, _e; 29878 let message2; 29879 const { rule, form, label, name } = ctx; 29880 const fieldName = this.resolveLabel(locale, name, label); 29881 if (!rule) { 29882 message2 = this.getLocaleDefault(locale, name) || ""; 29883 return isCallable(message2) ? message2(ctx) : interpolate(message2, Object.assign(Object.assign({}, form), { field: fieldName }), interpolateOptions !== null && interpolateOptions !== void 0 ? interpolateOptions : this.interpolateOptions); 29884 } 29885 message2 = ((_c = (_b = (_a = this.container[locale]) === null || _a === void 0 ? void 0 : _a.fields) === null || _b === void 0 ? void 0 : _b[name]) === null || _c === void 0 ? void 0 : _c[rule.name]) || ((_e = (_d = this.container[locale]) === null || _d === void 0 ? void 0 : _d.messages) === null || _e === void 0 ? void 0 : _e[rule.name]); 29886 if (!message2) { 29887 message2 = this.getLocaleDefault(locale, name) || ""; 29888 } 29889 return isCallable(message2) ? message2(ctx) : interpolate(message2, Object.assign(Object.assign({}, form), { field: fieldName, params: rule.params }), interpolateOptions !== null && interpolateOptions !== void 0 ? interpolateOptions : this.interpolateOptions); 29890 } 29891 merge(dictionary) { 29892 merge(this.container, dictionary); 29893 } 29894} 29895const DICTIONARY = new Dictionary("en", {}); 29896function localize$1(locale, dictionary, interpolateOptions) { 29897 const generateMessage = (ctx) => { 29898 return DICTIONARY.resolve(ctx, interpolateOptions); 29899 }; 29900 { 29901 DICTIONARY.locale = locale; 29902 if (dictionary) { 29903 DICTIONARY.merge({ [locale]: dictionary }); 29904 } 29905 return generateMessage; 29906 } 29907} 29908function veeValidateRules() { 29909 defineRule("required", requiredValidator); 29910 defineRule("required_named", requiredValidator); 29911 defineRule("required_named_format", requiredValidator); 29912 defineRule("required_named_alt", requiredValidator); 29913 defineRule("numeric", numericValidator); 29914 defineRule("max", maxLengthValidator); 29915 defineRule("min", minValidator); 29916 defineRule("email", emailValidator); 29917 defineRule("alpha_num", alphaNumValidator); 29918 defineRule("alpha_dash", alphaDashValidator); 29919 configure({ 29920 generateMessage: localize$1("en", { 29921 messages: { 29922 required: "This field is required", 29923 required_named: "{field} is required", 29924 required_named_alt: "Please enter a valid {field}", 29925 required_named_format: "{field} is required in the format 0:{format}", 29926 max: "{field} must be less than 0:{length} characters", 29927 min: "{field} must be more than 0:{length} characters", 29928 numeric: "{field} must be a number", 29929 email: "Please enter an email address in the [email protected] format", 29930 alpha_num: "{field} must contain only letters and numbers", 29931 alpha_dash: "{field} must contain only letters, numbers, or dashes" 29932 } 29933 }) 29934 }); 29935 defineRule("date_format", (value) => { 29936 if (!value) return true; 29937 const dateRegex2 = /^\d{2}\/\d{2}\/\d{4}$/; 29938 return dateRegex2.test(value) || "Please enter a date of birth in the MM/DD/YYYY format."; 29939 }); 29940 defineRule("zip", (value, [variant] = []) => { 29941 if (!value) return true; 29942 if (value.match(/^\d{5}$/) || value.match(/^\d{5}-\d{4}$/)) return true; 29943 return variant === "alt" ? "Please enter a valid Zip Code" : "This field must be 5 or 9 digits, 00000 or 00000-0000."; 29944 }); 29945 defineRule("linkedin", (value) => { 29946 if (!value) return true; 29947 const linkedinRegex = /^(http(s)?:\/\/)?([\w]+\.)?linkedin\.com\/(pub|in|profile)\/([-a-zA-Z0-9]+)\/*/; 29948 return linkedinRegex.test(value) || "Must be a valid LinkedIn url, e.g. https://linkedin.com/in/FirstName-LastName-xxxxxxxx"; 29949 }); 29950 defineRule("phone", (value) => { 29951 if (!value) return true; 29952 return value.match(/^\d{3}-\d{3}-\d{4}$/) || "Phone number can only contain numbers and must be in format: 000-000-0000"; 29953 }); 29954 defineRule("isAdult", (value) => { 29955 if (!value) return true; 29956 return isAdult(value) || "You must be 18 or older to submit this form."; 29957 }); 29958 defineRule("isValidDate", (value) => { 29959 if (!value) return true; 29960 return isValidDate(value) || "Please enter a valid date."; 29961 }); 29962} 29963const US_STATE_OPTIONS = [ 29964 { value: "AL", text: "Alabama" }, 29965 { value: "AK", text: "Alaska" }, 29966 { value: "AZ", text: "Arizona" }, 29967 { value: "AR", text: "Arkansas" }, 29968 { value: "CA", text: "California" }, 29969 { value: "CO", text: "Colorado" }, 29970 { value: "CT", text: "Connecticut" }, 29971 { value: "DC", text: "District of Columbia" }, 29972 { value: "DE", text: "Delaware" }, 29973 { value: "FL", text: "Florida" }, 29974 { value: "GA", text: "Georgia" }, 29975 { value: "HI", text: "Hawaii" }, 29976 { value: "ID", text: "Idaho" }, 29977 { value: "IL", text: "Illinois" }, 29978 { value: "IN", text: "Indiana" }, 29979 { value: "IA", text: "Iowa" }, 29980 { value: "KS", text: "Kansas" }, 29981 { value: "KY", text: "Kentucky" }, 29982 { value: "LA", text: "Louisiana" }, 29983 { value: "ME", text: "Maine" }, 29984 { value: "MD", text: "Maryland" }, 29985 { value: "MA", text: "Massachusetts" }, 29986 { value: "MI", text: "Michigan" }, 29987 { value: "MN", text: "Minnesota" }, 29988 { value: "MS", text: "Mississippi" }, 29989 { value: "MO", text: "Missouri" }, 29990 { value: "MT", text: "Montana" }, 29991 { value: "NE", text: "Nebraska" }, 29992 { value: "NV", text: "Nevada" }, 29993 { value: "NH", text: "New Hampshire" }, 29994 { value: "NJ", text: "New Jersey" }, 29995 { value: "NM", text: "New Mexico" }, 29996 { value: "NY", text: "New York" }, 29997 { value: "NC", text: "North Carolina" }, 29998 { value: "ND", text: "North Dakota" }, 29999 { value: "OH", text: "Ohio" }, 30000 { value: "OK", text: "Oklahoma" }, 30001 { value: "OR", text: "Oregon" }, 30002 { value: "PA", text: "Pennsylvania" }, 30003 { value: "RI", text: "Rhode Island" }, 30004 { value: "SC", text: "South Carolina" }, 30005 { value: "SD", text: "South Dakota" }, 30006 { value: "TN", text: "Tennessee" }, 30007 { value: "TX", text: "Texas" }, 30008 { value: "UT", text: "Utah" }, 30009 { value: "VT", text: "Vermont" }, 30010 { value: "VA", text: "Virginia" }, 30011 { value: "WA", text: "Washington" }, 30012 { value: "WV", text: "West Virginia" }, 30013 { value: "WI", text: "Wisconsin" }, 30014 { value: "WY", text: "Wyoming" } 30015]; 30016const LANGUAGE_OPTIONS = [ 30017 { value: "English", text: "English" }, 30018 { value: "Cantonese", text: "Cantonese" }, 30019 { value: "Farsi", text: "Farsi" }, 30020 { value: "French", text: "French" }, 30021 { value: "Fukienese", text: "Fukienese" }, 30022 { value: "German", text: "German" }, 30023 { value: "Gujarati", text: "Gujarati" }, 30024 { value: "Hebrew", text: "Hebrew" }, 30025 { value: "Hindi", text: "Hindi" }, 30026 { value: "Japanese", text: "Japanese" }, 30027 { value: "Korean", text: "Korean" }, 30028 { value: "Lao", text: "Lao" }, 30029 { value: "Mandarin", text: "Mandarin" }, 30030 { value: "Polish", text: "Polish" }, 30031 { value: "Portuguese", text: "Portuguese" }, 30032 { value: "Punjabi", text: "Punjabi" }, 30033 { value: "Russian", text: "Russian" }, 30034 { value: "Shanghainese", text: "Shanghainese" }, 30035 { value: "Spanish", text: "Spanish" }, 30036 { value: "Tagalog", text: "Tagalog" }, 30037 { value: "Taiwanese", text: "Taiwanese" }, 30038 { value: "Urdu", text: "Urdu" }, 30039 { value: "Vietnamese", text: "Vietnamese" } 30040]; 30041const CONTACT_METHOD_OPTIONS = [ 30042 { value: "Email", text: "Email" }, 30043 { value: "Phone", text: "Phone" } 30044]; 30045const CONTACT_TIME_OPTIONS = [ 30046 { value: "Morning", text: "Morning" }, 30047 { value: "Afternoon", text: "Afternoon" }, 30048 { value: "Evening", text: "Evening" } 30049]; 30050function settingsShowsLanguageFieldset({ settings }) { 30051 if ((settings == null ? void 0 : settings.formType) === "agentNewsletter") { 30052 return false;
30053 } 30054 return Boolean(settings == null ? void 0 : settings.languageFieldset); 30055} 30056function settingsShowsBestMethodFieldset({ settings }) { 30057 if ((settings == null ? void 0 : settings.formType) === "agentNewsletter") { 30058 return false; 30059 } 30060 return Boolean(settings == null ? void 0 : settings.bestMethodFieldset); 30061} 30062function settingsShowsBestTimeFieldset({ settings }) { 30063 if ((settings == null ? void 0 : settings.formType) === "agentNewsletter") { 30064 return false; 30065 } 30066 return Boolean(settings == null ? void 0 : settings.bestTimeFieldset); 30067} 30068function settingsShowsBirthDateFieldset({ settings }) { 30069 if ((settings == null ? void 0 : settings.formType) === "agentNewsletter") { 30070 return false; 30071 } 30072 const ft = settings == null ? void 0 : settings.formType; 30073 return ft === "goConsumer" || ft === "agentConsumer" || ft === "goCustom"; 30074} 30075function settingsShowsLinkedinFieldset({ settings }) { 30076 if ((settings == null ? void 0 : settings.formType) === "agentNewsletter") { 30077 return false; 30078 } 30079 return Boolean(settings == null ? void 0 : settings.linkedinFieldset); 30080} 30081function settingsShowsOpenTextFields({ settings }, openFieldNumber) { 30082 if ((settings == null ? void 0 : settings.formType) === "agentNewsletter") { 30083 return false; 30084 } 30085 return Boolean(settings == null ? void 0 : settings["openTextFieldset" + openFieldNumber]); 30086} 30087function openTextFieldLabel({ settings }, openFieldNumber) { 30088 return (settings == null ? void 0 : settings["openTextLabel" + openFieldNumber]) || "No Label"; 30089} 30090function requireContactMethod({ settings }) { 30091 return ["agentConsumer", "goRecruiter", "goConsumer"].includes( 30092 settings == null ? void 0 : settings.formType 30093 ); 30094} 30095function isEmailRequired({ settings, form }) { 30096 return (settings == null ? void 0 : settings.formType) === "goCustom" || (settings == null ? void 0 : settings.formType) === "agentNewsletter" || requireContactMethod({ settings }) || !form.phoneNumber && (settings == null ? void 0 : settings.formType) === "agentCustom"; 30097} 30098function isPhoneRequired({ settings, form }) { 30099 return (settings == null ? void 0 : settings.formType) === "goCustom" || requireContactMethod({ settings }) || !form.emailAddress && (settings == null ? void 0 : settings.formType) === "agentCustom" ? "###-###-####" : false; 30100} 30101function resolveFieldRequired(field, context) { 30102 if ((field == null ? void 0 : field.required) == null) { 30103 return void 0; 30104 } 30105 if (typeof field.required === "function") { 30106 return Boolean(field.required(context)) || void 0; 30107 } 30108 return Boolean(field.required) || void 0; 30109} 30110function resolveFieldRules(field, context) { 30111 if ((field == null ? void 0 : field.rules) == null) { 30112 return resolveFieldRequired(field, context) ? { required: true } : void 0; 30113 } 30114 if (typeof field.rules === "string") { 30115 return field.rules; 30116 } 30117 const raw = typeof field.rules === "object" ? { ...field.rules } : {}; 30118 const out = {}; 30119 for (const key of Object.keys(raw)) { 30120 let val = raw[key]; 30121 if (typeof val === "function") { 30122 val = val(context); 30123 } 30124 if (val === false) { 30125 continue; 30126 } 30127 out[key] = val; 30128 } 30129 const requiredWasDefinedInRules = Object.prototype.hasOwnProperty.call( 30130 raw, 30131 "required" 30132 ); 30133 const requiredDisabledInRules = requiredWasDefinedInRules && !Object.prototype.hasOwnProperty.call(out, "required"); 30134 if (resolveFieldRequired(field, context) && out.required === void 0 && !requiredDisabledInRules) { 30135 out.required = true; 30136 } 30137 return Object.keys(out).length ? out : void 0; 30138} 30139const LEAD_DYNAMIC_FORM_FIELDS = { 30140 "required-label": { 30141 id: "required-label", 30142 component: "div", 30143 type: "label", 30144 label: "*Required" 30145 }, 30146 "life-insurance": { 30147 id: "life-insurance", 30148 component: "input", 30149 type: "checkbox", 30150 label: "Life Insurance", 30151 checkboxValue: "Life Insurance" 30152 }, 30153 "retirement-planning": { 30154 id: "retirement-planning", 30155 component: "input", 30156 type: "checkbox", 30157 label: "Retirement Planning", 30158 checkboxValue: "Retirement Planning" 30159 }, 30160 "retirement-and-other-savings": { 30161 id: "retirement-and-other-savings", 30162 component: "input", 30163 type: "checkbox", 30164 label: "Retirement and Other Savings", 30165 checkboxValue: "Retirement and Other Savings" 30166 }, 30167 "estate-trust-legacy": { 30168 id: "estate-trust-legacy", 30169 component: "input", 30170 type: "checkbox", 30171 label: "Estate, Trust & Legacy Planning", 30172 checkboxValue: "Estate, Trust & Legacy Planning" 30173 }, 30174 "not-sure": { 30175 id: "not-sure", 30176 component: "input", 30177 type: "checkbox", 30178 label: "Not sure", 30179 checkboxValue: "Not sure" 30180 }, 30181 "financial-professional": { 30182 id: "financial-professional", 30183 component: "input", 30184 type: "checkbox", 30185 label: "Financial Professional", 30186 checkboxValue: "Financial Professional" 30187 }, 30188 "college-intern": { 30189 id: "college-intern", 30190 component: "input", 30191 type: "checkbox", 30192 label: "College Intern", 30193 checkboxValue: "College Intern" 30194 }, 30195 "fast-track": { 30196 id: "fast-track", 30197 component: "input", 30198 type: "checkbox", 30199 label: "Fast Track", 30200 checkboxValue: "Fast Track" 30201 }, 30202 management: { 30203 id: "management", 30204 component: "input", 30205 type: "checkbox", 30206 label: "Management", 30207 checkboxValue: "Management" 30208 }, 30209 "first-name": { 30210 id: "first-name", 30211 component: "input", 30212 cols: 3, 30213 label: "First Name", 30214 required: true, 30215 modelKey: "firstName", 30216 rules: { max: 31, required_named: true }, 30217 componentProps: { 30218 type: "text", 30219 autocomplete: "given-name" 30220 } 30221 }, 30222 "last-name": { 30223 id: "last-name", 30224 component: "input", 30225 cols: 3, 30226 label: "Last Name", 30227 required: true, 30228 modelKey: "lastName", 30229 rules: { max: 31, required_named: true }, 30230 componentProps: { 30231 type: "text", 30232 autocomplete: "family-name" 30233 } 30234 }, 30235 "language-preference": { 30236 id: "language", 30237 component: "CoreBlockSelect", 30238 cols: 3, 30239 label: "Language Preference", 30240 modelKey: "languagePref", 30241 show: settingsShowsLanguageFieldset, 30242 componentProps: { 30243 placeholder: "Select", 30244 options: LANGUAGE_OPTIONS 30245 } 30246 }, 30247 address: { 30248 id: "street-address", 30249 component: "input", 30250 cols: 4, 30251 label: "Address (street, apt, bldg., etc.)", 30252 required: true, 30253 modelKey: "address", 30254 googlePlacesAutocomplete: true, 30255 rules: { max: 31, required_named: true }, 30256 componentProps: { 30257 type: "text" 30258 } 30259 }, 30260 city: { 30261 id: "city", 30262 component: "input", 30263 cols: 3, 30264 label: "City", 30265 required: true, 30266 modelKey: "city", 30267 rules: { max: 31, required_named: true }, 30268 componentProps: { 30269 type: "text", 30270 autocomplete: "address-level2" 30271 } 30272 }, 30273 state: { 30274 id: "state", 30275 component: "CoreBlockSelect", 30276 cols: 3, 30277 label: "State", 30278 required: true, 30279 modelKey: "state", 30280 rules: { required_named: true }, 30281 componentProps: { 30282 placeholder: "Select", 30283 options: US_STATE_OPTIONS 30284 } 30285 }, 30286 zip: { 30287 id: "zipcode", 30288 component: "input", 30289 cols: 2, 30290 label: "Zip Code", 30291 required: true, 30292 modelKey: "zip", 30293 rules: { 30294 required_named_alt: true, 30295 max: 10, 30296 zip: "alt" 30297 }, 30298 componentProps: { 30299 type: "text", 30300 inputmode: "numeric", 30301 autocomplete: "postal-code", 30302 placeholder: "#####", 30303 ariaPlaceholder: "ZIP code", 30304 "data-maska": "#####-####" 30305 } 30306 }, 30307 "date-of-birth": { 30308 id: "birthDate", 30309 component: "input", 30310 cols: 3, 30311 label: "Date of Birth", 30312 required: true, 30313 modelKey: "birthDate", 30314 show: settingsShowsBirthDateFieldset, 30315 tooltip: { 30316 content: "This helps us understand your immediate needs.", 30317 icon: { 30318 id: "info", 30319 alt: "Info", 30320 name: "Info" 30321 } 30322 }, 30323 rules: { 30324 required_named_format: "MM/DD/YYYY", 30325 isValidDate: true, 30326 isAdult: true 30327 }, 30328 componentProps: { 30329 type: "text", 30330 placeholder: "MM/DD/YYYY",
30331 ariaPlaceholder: "Date as month, day, and year", 30332 "data-maska": "##/##/####" 30333 } 30334 }, 30335 email: { 30336 id: "emailAddress", 30337 component: "input", 30338 cols: 3, 30339 label: "Email", 30340 required: isEmailRequired, 30341 modelKey: "emailAddress", 30342 rules: { email: true, required_named: isEmailRequired, max: 40 }, 30343 componentProps: { 30344 type: "email", 30345 autocomplete: "email" 30346 } 30347 }, 30348 phone: { 30349 id: "phoneNumber", 30350 component: "input", 30351 cols: 3, 30352 label: "Phone Number", 30353 required: isPhoneRequired, 30354 modelKey: "phoneNumber", 30355 rules: { max: 12, phone: true, required_named_format: isPhoneRequired }, 30356 componentProps: { 30357 type: "tel", 30358 autocomplete: "tel", 30359 placeholder: "###-###-####", 30360 ariaPlaceholder: "Phone number with area code", 30361 "data-maska": "###-###-####" 30362 } 30363 }, 30364 "best-contact-method": { 30365 id: "best-contact-method", 30366 component: "CoreBlockSelect", 30367 cols: 3, 30368 label: "Best method to contact", 30369 modelKey: "contactMethod", 30370 show: settingsShowsBestMethodFieldset, 30371 componentProps: { 30372 placeholder: "Select", 30373 options: CONTACT_METHOD_OPTIONS 30374 } 30375 }, 30376 "best-time-to-call": { 30377 id: "best-time-to-call", 30378 component: "CoreBlockSelect", 30379 cols: 3, 30380 label: "Best time of day to call", 30381 modelKey: "bestTimeToCall", 30382 show: settingsShowsBestTimeFieldset, 30383 componentProps: { 30384 placeholder: "Select", 30385 options: CONTACT_TIME_OPTIONS 30386 } 30387 }, 30388 linkedin: { 30389 id: "linkin-url", 30390 component: "input", 30391 cols: 3, 30392 label: "LinkedIn", 30393 modelKey: "linkedinUrl", 30394 show: settingsShowsLinkedinFieldset, 30395 rules: { 30396 max: 50, 30397 linkedin: true 30398 }, 30399 componentProps: { 30400 type: "text", 30401 autocomplete: "off" 30402 } 30403 }, 30404 "open-text-field-1": { 30405 id: "openText1", 30406 component: "input", 30407 cols: 4, 30408 label: ({ settings }) => openTextFieldLabel({ settings }, 1), 30409 modelKey: "openText1", 30410 show: ({ settings }) => settingsShowsOpenTextFields({ settings }, 1), 30411 rules: { max: 255 } 30412 }, 30413 "open-text-field-2": { 30414 id: "openText2", 30415 component: "input", 30416 cols: 4, 30417 label: ({ settings }) => openTextFieldLabel({ settings }, 2), 30418 modelKey: "openText2", 30419 show: ({ settings }) => settingsShowsOpenTextFields({ settings }, 2), 30420 rules: { max: 255 } 30421 }, 30422 "open-text-field-3": { 30423 id: "openText3", 30424 component: "input", 30425 cols: 4, 30426 label: ({ settings }) => openTextFieldLabel({ settings }, 3), 30427 modelKey: "openText3", 30428 show: ({ settings }) => settingsShowsOpenTextFields({ settings }, 3), 30429 rules: { max: 255 } 30430 }, 30431 "open-text-field-4": { 30432 id: "openText4", 30433 component: "input", 30434 cols: 4, 30435 label: ({ settings }) => openTextFieldLabel({ settings }, 4), 30436 modelKey: "openText4", 30437 show: ({ settings }) => settingsShowsOpenTextFields({ settings }, 4), 30438 rules: { max: 255 } 30439 }, 30440 "open-text-field-5": { 30441 id: "openText5", 30442 component: "input", 30443 cols: 4, 30444 label: ({ settings }) => openTextFieldLabel({ settings }, 5), 30445 modelKey: "openText5", 30446 show: ({ settings }) => settingsShowsOpenTextFields({ settings }, 5), 30447 rules: { max: 255 } 30448 } 30449}; 30450function sectionFields(sectionId, fields) { 30451 return fields.map((field) => { 30452 var _a; 30453 const fieldId = typeof field === "object" ? field.id : field; 30454 const cols = typeof field === "object" ? field.cols : void 0; 30455 return { 30456 ...LEAD_DYNAMIC_FORM_FIELDS[fieldId], 30457 cols: cols ?? ((_a = LEAD_DYNAMIC_FORM_FIELDS[fieldId]) == null ? void 0 : _a.cols) 30458 }; 30459 }); 30460} 30461const AGENT_CONSUMER_FORM = { 30462 grouped: { 30463 sections: [ 30464 { 30465 id: "interests", 30466 title: "Interests", 30467 subtitle: "Select all topics you would like to discuss", 30468 autoCols: true, 30469 show: ({ settings }) => (settings == null ? void 0 : settings.formType) !== "agentNewsletter" && Boolean(settings == null ? void 0 : settings.interestsFieldset), 30470 fields: sectionFields("interests", [ 30471 "life-insurance", 30472 "retirement-planning", 30473 "retirement-and-other-savings", 30474 "estate-trust-legacy", 30475 "not-sure" 30476 ]) 30477 }, 30478 { 30479 id: "required-row", 30480 fields: sectionFields("required-row", ["required-label"]) 30481 }, 30482 { 30483 id: "row-1", 30484 title: "Personal information", 30485 fields: sectionFields("row-1", [ 30486 "first-name", 30487 "last-name", 30488 "language-preference" 30489 ]) 30490 }, 30491 { 30492 id: "row-2", 30493 fields: sectionFields("row-2", [ 30494 "address", 30495 "city", 30496 "state", 30497 "zip" 30498 ]) 30499 }, 30500 { 30501 id: "row-3", 30502 fields: sectionFields("row-3", ["date-of-birth"]) 30503 }, 30504 { 30505 id: "row-4", 30506 title: "Contact information", 30507 fields: sectionFields("row-4", [ 30508 "email", 30509 "phone", 30510 "best-contact-method", 30511 "best-time-to-call" 30512 ]) 30513 } 30514 ] 30515 }, 30516 ungrouped: { 30517 sections: [ 30518 { 30519 id: "interests", 30520 title: "Interests",
30521 subtitle: "Select all topics you would like to discuss", 30522 autoCols: true, 30523 show: ({ settings }) => (settings == null ? void 0 : settings.formType) !== "agentNewsletter" && Boolean(settings == null ? void 0 : settings.interestsFieldset), 30524 fields: sectionFields("interests", [ 30525 "life-insurance", 30526 "retirement-planning", 30527 "retirement-and-other-savings", 30528 "estate-trust-legacy", 30529 "not-sure" 30530 ]) 30531 }, 30532 { 30533 id: "required-row", 30534 fields: sectionFields("required-row", ["required-label"]) 30535 }, 30536 { 30537 id: "row-1", 30538 fields: sectionFields("row-1", [ 30539 "first-name", 30540 "last-name", 30541 "email", 30542 "phone" 30543 ]) 30544 }, 30545 { 30546 id: "row-2", 30547 fields: sectionFields("row-2", [ 30548 "address", 30549 "city", 30550 "state", 30551 "zip" 30552 ]) 30553 }, 30554 { 30555 id: "row-3", 30556 fields: sectionFields("row-3", [ 30557 "date-of-birth", 30558 "language-preference", 30559 "best-contact-method", 30560 "best-time-to-call" 30561 ]) 30562 } 30563 ] 30564 } 30565}; 30566const AGENT_NEWSLETTER_FORM = { 30567 ungrouped: { 30568 sections: [ 30569 { 30570 id: "required-row", 30571 fields: sectionFields("required-row", ["required-label"]) 30572 }, 30573 { 30574 id: "row-1", 30575 fields: sectionFields("row-1", [ 30576 { id: "first-name", cols: 6 }, 30577 { id: "last-name", cols: 6 } 30578 ]) 30579 }, 30580 { 30581 id: "row-2", 30582 fields: sectionFields("row-2", [{ id: "email", cols: 6 }]) 30583 } 30584 ] 30585 } 30586}; 30587const AGENT_CUSTOM_FORM = { 30588 grouped: { 30589 sections: [ 30590 { 30591 id: "interests", 30592 title: "Interests", 30593 subtitle: "Select all topics you would like to discuss", 30594 autoCols: true, 30595 show: ({ settings }) => (settings == null ? void 0 : settings.formType) !== "agentNewsletter" && Boolean(settings == null ? void 0 : settings.interestsFieldset), 30596 fields: sectionFields("interests", [ 30597 "life-insurance", 30598 "retirement-planning", 30599 "retirement-and-other-savings", 30600 "estate-trust-legacy", 30601 "not-sure" 30602 ]) 30603 }, 30604 { 30605 id: "required-row", 30606 fields: sectionFields("required-row", ["required-label"]) 30607 }, 30608 { 30609 id: "row-1", 30610 title: "Personal information", 30611 fields: sectionFields("row-1", [ 30612 "first-name", 30613 "last-name", 30614 "language-preference" 30615 ]) 30616 }, 30617 { 30618 id: "row-2", 30619 title: "Contact information", 30620 fields: sectionFields("row-2", [ 30621 "email", 30622 "phone", 30623 "best-contact-method", 30624 "best-time-to-call" 30625 ]) 30626 }, 30627 { 30628 id: "custom-fields", 30629 title: "Other information", 30630 fields: sectionFields("custom-fields", [ 30631 "open-text-field-1", 30632 "open-text-field-2", 30633 "open-text-field-3", 30634 "open-text-field-4", 30635 "open-text-field-5" 30636 ]) 30637 } 30638 ] 30639 }, 30640 ungrouped: { 30641 sections: [ 30642 { 30643 id: "interests", 30644 title: "Interests", 30645 subtitle: "Select all topics you would like to discuss", 30646 autoCols: true, 30647 show: ({ settings }) => (settings == null ? void 0 : settings.formType) !== "agentNewsletter" && Boolean(settings == null ? void 0 : settings.interestsFieldset), 30648 fields: sectionFields("interests", [ 30649 "life-insurance", 30650 "retirement-planning", 30651 "retirement-and-other-savings", 30652 "estate-trust-legacy", 30653 "not-sure" 30654 ]) 30655 }, 30656 { 30657 id: "required-row", 30658 fields: sectionFields("required-row", ["required-label"]) 30659 }, 30660 { 30661 id: "row-1", 30662 fields: sectionFields("row-1", [ 30663 "first-name", 30664 "last-name", 30665 "email", 30666 "phone" 30667 ]) 30668 }, 30669 { 30670 id: "row-2", 30671 fields: sectionFields("row-2", [ 30672 "language-preference", 30673 "best-contact-method", 30674 "best-time-to-call" 30675 ]) 30676 }, 30677 { 30678 id: "custom-fields", 30679 fields: sectionFields("custom-fields", [ 30680 "open-text-field-1", 30681 "open-text-field-2", 30682 "open-text-field-3", 30683 "open-text-field-4", 30684 "open-text-field-5" 30685 ]) 30686 } 30687 ] 30688 } 30689}; 30690const GO_CONSUMER_FORM = { 30691 grouped: { 30692 sections: [ 30693 { 30694 id: "interests", 30695 title: "Interests",
30696 subtitle: "Select all topics you would like to discuss", 30697 autoCols: true, 30698 show: ({ settings }) => (settings == null ? void 0 : settings.formType) !== "agentNewsletter" && Boolean(settings == null ? void 0 : settings.interestsFieldset), 30699 fields: sectionFields("interests", [ 30700 "life-insurance", 30701 "retirement-planning", 30702 "retirement-and-other-savings", 30703 "estate-trust-legacy", 30704 "not-sure" 30705 ]) 30706 }, 30707 { 30708 id: "required-row", 30709 fields: sectionFields("required-row", ["required-label"]) 30710 }, 30711 { 30712 id: "row-1", 30713 title: "Personal information", 30714 fields: sectionFields("row-1", [ 30715 "first-name", 30716 "last-name", 30717 "language-preference" 30718 ]) 30719 }, 30720 { 30721 id: "row-2", 30722 fields: sectionFields("row-2", [ 30723 "address", 30724 "city", 30725 "state", 30726 "zip" 30727 ]) 30728 }, 30729 { 30730 id: "row-3", 30731 fields: sectionFields("row-3", ["date-of-birth"]) 30732 }, 30733 { 30734 id: "row-4", 30735 title: "Contact information", 30736 fields: sectionFields("row-4", [ 30737 "email", 30738 "phone", 30739 "best-contact-method", 30740 "best-time-to-call" 30741 ]) 30742 } 30743 ] 30744 }, 30745 ungrouped: { 30746 sections: [ 30747 { 30748 id: "interests", 30749 title: "Interests", 30750 subtitle: "Select all topics you would like to discuss", 30751 autoCols: true, 30752 show: ({ settings }) => (settings == null ? void 0 : settings.formType) !== "agentNewsletter" && Boolean(settings == null ? void 0 : settings.interestsFieldset), 30753 fields: sectionFields("interests", [ 30754 "life-insurance", 30755 "retirement-planning", 30756 "retirement-and-other-savings", 30757 "estate-trust-legacy", 30758 "not-sure" 30759 ]) 30760 }, 30761 { 30762 id: "required-row", 30763 fields: sectionFields("required-row", ["required-label"]) 30764 }, 30765 { 30766 id: "row-1", 30767 fields: sectionFields("row-1", [ 30768 "first-name", 30769 "last-name", 30770 "email", 30771 "phone" 30772 ]) 30773 }, 30774 { 30775 id: "row-2", 30776 fields: sectionFields("row-2", [ 30777 "address", 30778 "city", 30779 "state", 30780 "zip" 30781 ]) 30782 }, 30783 { 30784 id: "row-3", 30785 fields: sectionFields("row-3", [ 30786 "date-of-birth", 30787 "language-preference", 30788 "best-contact-method", 30789 "best-time-to-call" 30790 ]) 30791 } 30792 ] 30793 } 30794}; 30795const GO_CUSTOM_FORM = { 30796 grouped: { 30797 sections: [ 30798 { 30799 id: "interests", 30800 title: "Interests", 30801 subtitle: "Select all topics you would like to discuss", 30802 autoCols: true, 30803 show: ({ settings }) => (settings == null ? void 0 : settings.formType) !== "agentNewsletter" && Boolean(settings == null ? void 0 : settings.interestsFieldset), 30804 fields: sectionFields("interests", [ 30805 "life-insurance", 30806 "retirement-planning", 30807 "retirement-and-other-savings", 30808 "estate-trust-legacy", 30809 "not-sure" 30810 ]) 30811 }, 30812 { 30813 id: "required-row", 30814 fields: sectionFields("required-row", ["required-label"]) 30815 }, 30816 { 30817 id: "row-1", 30818 title: "Personal information", 30819 fields: sectionFields("row-1", [ 30820 "first-name", 30821 "last-name", 30822 "language-preference" 30823 ]) 30824 }, 30825 { 30826 id: "row-2", 30827 fields: sectionFields("row-2", [ 30828 "address", 30829 "city", 30830 "state", 30831 "zip" 30832 ]) 30833 }, 30834 { 30835 id: "row-3", 30836 fields: sectionFields("row-3", ["date-of-birth"]) 30837 }, 30838 { 30839 id: "row-4", 30840 title: "Contact information", 30841 fields: sectionFields("row-4", [ 30842 "email", 30843 "phone", 30844 "best-contact-method", 30845 "best-time-to-call" 30846 ]) 30847 }, 30848 { 30849 id: "custom-fields", 30850 title: "Other information", 30851 fields: sectionFields("custom-fields", [ 30852 "open-text-field-1", 30853 "open-text-field-2", 30854 "open-text-field-3", 30855 "open-text-field-4", 30856 "open-text-field-5" 30857 ]) 30858 } 30859 ] 30860 }, 30861 ungrouped: { 30862 sections: [ 30863 { 30864 id: "interests", 30865 title: "Interests",
30866 subtitle: "Select all topics you would like to discuss", 30867 autoCols: true, 30868 show: ({ settings }) => (settings == null ? void 0 : settings.formType) !== "agentNewsletter" && Boolean(settings == null ? void 0 : settings.interestsFieldset), 30869 fields: sectionFields("interests", [ 30870 "life-insurance", 30871 "retirement-planning", 30872 "retirement-and-other-savings", 30873 "estate-trust-legacy", 30874 "not-sure" 30875 ]) 30876 }, 30877 { 30878 id: "required-row", 30879 fields: sectionFields("required-row", ["required-label"]) 30880 }, 30881 { 30882 id: "row-1", 30883 fields: sectionFields("row-1", [ 30884 "first-name", 30885 "last-name", 30886 "email", 30887 "phone" 30888 ]) 30889 }, 30890 { 30891 id: "row-2", 30892 fields: sectionFields("row-2", [ 30893 "address", 30894 "city", 30895 "state", 30896 "zip" 30897 ]) 30898 }, 30899 { 30900 id: "row-3", 30901 fields: sectionFields("row-3", [ 30902 "date-of-birth", 30903 "language-preference", 30904 "best-contact-method", 30905 "best-time-to-call" 30906 ]) 30907 }, 30908 { 30909 id: "custom-fields", 30910 fields: sectionFields("custom-fields", [ 30911 "open-text-field-1", 30912 "open-text-field-2", 30913 "open-text-field-3", 30914 "open-text-field-4", 30915 "open-text-field-5" 30916 ]) 30917 } 30918 ] 30919 } 30920}; 30921const GO_RECRUITER_FORM = { 30922 grouped: { 30923 sections: [ 30924 { 30925 id: "interests", 30926 title: "Interests", 30927 subtitle: "Select all topics you would like to discuss", 30928 autoCols: true, 30929 show: ({ settings }) => (settings == null ? void 0 : settings.formType) !== "agentNewsletter" && Boolean(settings == null ? void 0 : settings.interestsFieldset), 30930 fields: sectionFields("interests", [ 30931 "financial-professional", 30932 "college-intern", 30933 "fast-track", 30934 "management", 30935 "not-sure" 30936 ]) 30937 }, 30938 { 30939 id: "required-row", 30940 fields: sectionFields("required-row", ["required-label"]) 30941 }, 30942 { 30943 id: "row-1", 30944 title: "Personal information", 30945 fields: sectionFields("row-1", [ 30946 "first-name", 30947 "last-name", 30948 "language-preference" 30949 ]) 30950 }, 30951 { 30952 id: "row-2", 30953 fields: sectionFields("row-2", [ 30954 "address", 30955 "city", 30956 "state", 30957 "zip" 30958 ]) 30959 }, 30960 { 30961 id: "row-3", 30962 title: "Contact information", 30963 fields: sectionFields("row-3", [ 30964 "email", 30965 "phone", 30966 "best-contact-method", 30967 "best-time-to-call", 30968 "linkedin" 30969 ]) 30970 } 30971 ] 30972 }, 30973 ungrouped: { 30974 sections: [ 30975 { 30976 id: "interests", 30977 title: "Interests", 30978 subtitle: "Select all topics you would like to discuss", 30979 autoCols: true, 30980 show: ({ settings }) => (settings == null ? void 0 : settings.formType) !== "agentNewsletter" && Boolean(settings == null ? void 0 : settings.interestsFieldset), 30981 fields: sectionFields("interests", [ 30982 "financial-professional", 30983 "college-intern", 30984 "fast-track", 30985 "management", 30986 "not-sure" 30987 ]) 30988 }, 30989 { 30990 id: "required-row", 30991 fields: sectionFields("required-row", ["required-label"]) 30992 }, 30993 { 30994 id: "row-1", 30995 fields: sectionFields("row-1", [ 30996 "first-name", 30997 "last-name", 30998 "email", 30999 "phone" 31000 ]) 31001 }, 31002 { 31003 id: "row-2", 31004 fields: sectionFields("row-2", [ 31005 "address", 31006 "city", 31007 "state", 31008 "zip" 31009 ]) 31010 }, 31011 { 31012 id: "row-3", 31013 fields: sectionFields("row-3", [ 31014 "language-preference", 31015 "best-contact-method", 31016 "best-time-to-call", 31017 "linkedin" 31018 ]) 31019 } 31020 ] 31021 } 31022}; 31023const ADDITIONAL_FIELD_KEYS_BY_FORM_TYPE = { 31024 agentConsumer: [ 31025 "languageFieldset", 31026 "bestTimeFieldset", 31027 "bestMethodFieldset" 31028 ], 31029 agentCustom: [ 31030 "languageFieldset", 31031 "bestTimeFieldset", 31032 "bestMethodFieldset", 31033 "openTextFieldset1", 31034 "openTextFieldset2", 31035 "openTextFieldset3", 31036 "openTextFieldset4", 31037 "openTextFieldset5" 31038 ], 31039 goConsumer: ["languageFieldset", "bestTimeFieldset", "bestMethodFieldset"], 31040 goCustom: [ 31041 "languageFieldset", 31042 "bestTimeFieldset", 31043 "bestMethodFieldset", 31044 "openTextFieldset1", 31045 "openTextFieldset2", 31046 "openTextFieldset3", 31047 "openTextFieldset4", 31048 "openTextFieldset5" 31049 ], 31050 goRecruiter: [ 31051 "languageFieldset", 31052 "bestTimeFieldset", 31053 "bestMethodFieldset", 31054 "linkedinFieldset" 31055 ] 31056}; 31057function hasAdditionalFields(settings) { 31058 const keys2 = ADDITIONAL_FIELD_KEYS_BY_FORM_TYPE[settings == null ? void 0 : settings.formType] ?? []; 31059 return keys2.some((key) => settings == null ? void 0 : settings[key]); 31060} 31061function useCoreBlockDynamicForm(props) { 31062 const resolvedForm = computed(() => { 31063 const { settings } = unref(props); 31064 const formGrouping = hasAdditionalFields(settings) ? "grouped" : "ungrouped"; 31065 let formConfig = null; 31066 switch (settings == null ? void 0 : settings.formType) { 31067 case "agentNewsletter": 31068 formConfig = AGENT_NEWSLETTER_FORM; 31069 break; 31070 case "agentConsumer": 31071 formConfig = AGENT_CONSUMER_FORM; 31072 break; 31073 case "agentCustom": 31074 formConfig = AGENT_CUSTOM_FORM; 31075 break; 31076 case "goConsumer": 31077 formConfig = GO_CONSUMER_FORM; 31078 break; 31079 case "goCustom": 31080 formConfig = GO_CUSTOM_FORM; 31081 break; 31082 case "goRecruiter": 31083 formConfig = GO_RECRUITER_FORM; 31084 break; 31085 } 31086 if (formConfig) { 31087 return (formConfig == null ? void 0 : formConfig[formGrouping]) ?? (formConfig == null ? void 0 : formConfig.ungrouped); 31088 } 31089 return AGENT_CONSUMER_FORM == null ? void 0 : AGENT_CONSUMER_FORM.ungrouped; 31090 }); 31091 return { 31092 resolvedForm 31093 }; 31094} 31095const _sfc_main$4o = { 31096 name: "CoreBlockSelect", 31097 inheritAttrs: false, 31098 props: { 31099 id: { 31100 type: String, 31101 default: null 31102 }, 31103 options: { 31104 type: Array, 31105 required: true 31106 }, 31107 customClass: { 31108 type: String, 31109 default: null 31110 }, 31111 modelValue: { 31112 type: String, 31113 default: null 31114 }, 31115 placeholder: { 31116 type: String, 31117 default: null 31118 }, 31119 required: { 31120 type: Boolean, 31121 default: false 31122 }, 31123 disableFiltering: { 31124 type: Boolean, 31125 default: false 31126 } 31127 }, 31128 data() { 31129 return { 31130 _anonymousListboxKey: Math.random().toString(36).slice(2, 11), 31131 isOpen: false, 31132 isTouched: false, 31133 isTyping: false, 31134 searchText: "", 31135 selectedOption: null, 31136 highlightedIndex: null 31137 }; 31138 }, 31139 computed: { 31140 listboxId() { 31141 return this.id ? `cbs-lb-${this.id}` : `cbs-lb-${this._anonymousListboxKey}`; 31142 }, 31143 activeDescendantId() { 31144 if (!this.isOpen || this.highlightedIndex === null || this.filteredOptions.length === 0) { 31145 return void 0; 31146 } 31147 if (this.highlightedIndex < 0 || this.highlightedIndex >= this.filteredOptions.length) { 31148 return void 0; 31149 } 31150 return `${this.listboxId}-opt-${this.highlightedIndex}`; 31151 }, 31152 filteredOptions() { 31153 if (this.disableFiltering) { 31154 return this.options; 31155 } 31156 return this.options.filter( 31157 (option) => option.text.toLowerCase().includes(this.searchText.toLowerCase()) 31158 ); 31159 } 31160 }, 31161 watch: { 31162 modelValue: { 31163 handler(newValue) { 31164 this.selectedOption = this.options.find((option) => option.value === newValue) || null; 31165 this.searchText = this.selectedOption ? this.selectedOption.text : ""; 31166 const index2 = this.options.findIndex( 31167 (option) => option.value === newValue 31168 ); 31169 this.highlightedIndex = index2 === -1 ? null : index2; 31170 }, 31171 immediate: true 31172 }, 31173 selectedOption(newValue) { 31174 if (newValue) { 31175 this.$emit("update:modelValue", newValue.value); 31176 } else { 31177 this.$emit("update:modelValue", null); 31178 } 31179 } 31180 }, 31181 mounted() { 31182 window.addEventListener("click", this.closeDropdown); 31183 }, 31184 beforeUnmount() { 31185 window.removeEventListener("click", this.closeDropdown); 31186 }, 31187 methods: { 31188 openIfClosed() { 31189 this.isTouched = false;
31190 if (!this.isOpen) { 31191 this.searchText = ""; 31192 this.isOpen = true; 31193 } 31194 }, 31195 toggleDropdown() { 31196 if (this.isOpen) { 31197 this.searchText = this.selectedOption ? this.selectedOption.text : ""; 31198 } else { 31199 this.searchText = ""; 31200 } 31201 this.isOpen = !this.isOpen; 31202 }, 31203 selectOption(option) { 31204 this.selectedOption = option; 31205 this.searchText = (option == null ? void 0 : option.text) || ""; 31206 this.isOpen = false; 31207 }, 31208 handleInput(event) { 31209 if (event) { 31210 event.stopPropagation(); 31211 } 31212 this.isOpen = true; 31213 this.isTyping = true; 31214 this.highlightedIndex = 0; 31215 }, 31216 focusHandler() { 31217 }, 31218 blurHandler() { 31219 setTimeout(() => { 31220 if (this.searchText === "") { 31221 this.isTouched = true; 31222 this.$emit("update:modelValue", ""); 31223 } else { 31224 this.isOpen = false; 31225 } 31226 this.isTyping = false; 31227 }, 200); 31228 }, 31229 closeDropdown(event) { 31230 if (this.isOpen && !this.$el.contains(event.target)) { 31231 this.isTyping = false; 31232 this.isOpen = false; 31233 const matchedOption = this.options.find( 31234 (o) => o.text.toLowerCase() === this.searchText.toLowerCase() 31235 ); 31236 if (!matchedOption) { 31237 this.searchText = this.selectedOption ? this.selectedOption.text : ""; 31238 } else { 31239 this.selectOption(matchedOption); 31240 } 31241 } 31242 }, 31243 highlightOption(index2) { 31244 this.highlightedIndex = index2; 31245 }, 31246 clearHighlightOption() { 31247 this.highlightedIndex = null; 31248 }, 31249 isSelected(option) { 31250 return this.selectedOption === option; 31251 }, 31252 handleClick() { 31253 this.openIfClosed(); 31254 }, 31255 handleKeyDown(event) { 31256 if (event.key === "ArrowUp") { 31257 this.isOpen = true; 31258 event.preventDefault(); 31259 const lastOptionIndex = this.filteredOptions.length - 1; 31260 if ([null, 0].includes(this.highlightedIndex)) { 31261 this.highlightedIndex = lastOptionIndex; 31262 } else { 31263 this.highlightedIndex--; 31264 } 31265 this.scrollToHighlightedOption(); 31266 } else if (event.key === "ArrowDown") { 31267 this.isOpen = true; 31268 event.preventDefault(); 31269 const lastOptionIndex = this.filteredOptions.length - 1; 31270 if ([null, lastOptionIndex].includes(this.highlightedIndex)) { 31271 this.highlightedIndex = 0; 31272 } else { 31273 this.highlightedIndex++; 31274 } 31275 this.scrollToHighlightedOption(); 31276 } else if (event.key === "Enter") { 31277 event.preventDefault(); 31278 if (this.isOpen) { 31279 const selectedOption = this.filteredOptions[this.highlightedIndex]; 31280 this.selectOption(selectedOption); 31281 } else { 31282 this.openIfClosed(); 31283 } 31284 } else if (event.key === "Tab" && this.isOpen) { 31285 this.isOpen = false; 31286 if (this.filteredOptions.length === 0) { 31287 this.searchText = ""; 31288 this.$emit("update:modelValue", ""); 31289 } else if (this.highlightedIndex !== null && this.filteredOptions.length > 0) { 31290 const selectedOption = this.filteredOptions[this.highlightedIndex]; 31291 this.selectOption(selectedOption); 31292 } else { 31293 const matchedOption = this.filteredOptions.find( 31294 (o) => o.text.toLowerCase() === this.searchText.toLowerCase() 31295 ); 31296 if (matchedOption) { 31297 this.selectOption(matchedOption); 31298 } else { 31299 this.searchText = ""; 31300 this.$emit("update:modelValue", ""); 31301 } 31302 } 31303 } else if (event.key === "Escape") { 31304 this.isOpen = false; 31305 } 31306 }, 31307 scrollToHighlightedOption() { 31308 if (!this.$refs.dropdownList || this.highlightedIndex === null) { 31309 return; 31310 } 31311 const listElement = this.$refs.dropdownList; 31312 const itemElement = listElement.querySelector( 31313 `li:nth-child(${this.highlightedIndex + 1})` 31314 ); 31315 if (!itemElement) { 31316 return; 31317 } 31318 const itemOffsetTop = itemElement.offsetTop; 31319 const itemOffsetBottom = itemOffsetTop + itemElement.offsetHeight; 31320 const listScrollTop = listElement.scrollTop; 31321 const listScrollBottom = listScrollTop + listElement.offsetHeight; 31322 if (itemOffsetTop < listScrollTop) { 31323 listElement.scrollTop = itemOffsetTop; 31324 } else if (itemOffsetBottom > listScrollBottom) { 31325 listElement.scrollTop = itemOffsetBottom - listElement.offsetHeight; 31326 } 31327 } 31328 } 31329}; 31330const _hoisted_1$4i = ["id", "placeholder", "required", "aria-controls", "aria-owns", "aria-activedescendant", "aria-expanded"]; 31331const _hoisted_2$3V = ["id"]; 31332const _hoisted_3$y = ["id", "aria-label", "aria-selected", "onMousedown", "onMouseover"]; 31333function _sfc_render$3P(_ctx, _cache, $props, $setup, $data, $options) { 31334 return openBlock(), createElementBlock("div", { 31335 class: normalizeClass([$props.customClass, "custom-select", _ctx.$attrs.class]), 31336 onClick: _cache[8] || (_cache[8] = (...args) => $options.toggleDropdown && $options.toggleDropdown(...args)) 31337 }, [ 31338 createBaseVNode("div", { 31339 class: normalizeClass(["selected-option", { "is-open": $data.isOpen }]) 31340 }, [ 31341 withDirectives(createBaseVNode("input", { 31342 id: $props.id, 31343 "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => $data.searchText = $event), 31344 class: "search-input", 31345 type: "text", 31346 role: "combobox", 31347 placeholder: $props.placeholder, 31348 required: $props.required, 31349 "aria-autocomplete": "list", 31350 "aria-haspopup": "listbox", 31351 "aria-controls": $options.listboxId, 31352 "aria-owns": $data.isOpen ? $options.listboxId : void 0, 31353 "aria-activedescendant": $options.activeDescendantId, 31354 "aria-expanded": $data.isOpen.toString(), 31355 onInput: _cache[1] || (_cache[1] = (...args) => $options.handleInput && $options.handleInput(...args)), 31356 onBlur: _cache[2] || (_cache[2] = (...args) => $options.blurHandler && $options.blurHandler(...args)), 31357 onFocus: _cache[3] || (_cache[3] = (...args) => $options.focusHandler && $options.focusHandler(...args)), 31358 onKeydown: _cache[4] || (_cache[4] = (...args) => $options.handleKeyDown && $options.handleKeyDown(...args)), 31359 onClick: _cache[5] || (_cache[5] = withModifiers((...args) => $options.handleClick && $options.handleClick(...args), ["stop"])) 31360 }, null, 40, _hoisted_1$4i), [ 31361 [vModelText, $data.searchText] 31362 ]), 31363 _cache[9] || (_cache[9] = createBaseVNode("span", { class: "arrow" }, null, -1)) 31364 ], 2), 31365 withDirectives(createBaseVNode("ul", {
31366 id: $options.listboxId, 31367 ref: "dropdownList", 31368 class: "dropdown", 31369 role: "listbox", 31370 "aria-label": "Select an option" 31371 }, [ 31372 (openBlock(true), createElementBlock(Fragment, null, renderList($options.filteredOptions, (option, index2) => { 31373 return openBlock(), createElementBlock("li", { 31374 id: `${$options.listboxId}-opt-${index2}`, 31375 key: index2, 31376 class: normalizeClass({ 31377 highlighted: index2 === $data.highlightedIndex, 31378 selected: $options.isSelected(option) 31379 }), 31380 role: "option", 31381 "aria-label": option.text, 31382 "aria-selected": $options.isSelected(option), 31383 onMousedown: withModifiers(($event) => $options.selectOption(option), ["prevent"]), 31384 onClick: _cache[6] || (_cache[6] = withModifiers(() => { 31385 }, ["stop"])), 31386 onMouseover: ($event) => $options.highlightOption(index2), 31387 onMouseout: _cache[7] || (_cache[7] = (...args) => $options.clearHighlightOption && $options.clearHighlightOption(...args)) 31388 }, toDisplayString(option.text), 43, _hoisted_3$y); 31389 }), 128)) 31390 ], 8, _hoisted_2$3V), [ 31391 [vShow, $data.isOpen] 31392 ]) 31393 ], 2); 31394} 31395const __nuxt_component_4$2 = /* @__PURE__ */ _export_sfc(_sfc_main$4o, [["render", _sfc_render$3P], ["__scopeId", "data-v-a5b1902f"]]); 31396const CoreBlockSelect = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 31397 __proto__: null, 31398 default: __nuxt_component_4$2 31399}, Symbol.toStringTag, { value: "Module" })); 31400function useGooglePlacesAutocomplete(inputRef) { 31401 const suggestions = shallowRef([]); 31402 const isLoading = ref(false); 31403 const error = ref(null); 31404 let ignoreNextWatch = false; 31405 let sessionToken = null; 31406 let debounceTimer = null; 31407 const search = async (input) => { 31408 if (!(input == null ? void 0 : input.trim())) { 31409 suggestions.value = []; 31410 return; 31411 } 31412 try { 31413 isLoading.value = true; 31414 error.value = null; 31415 if (!sessionToken) { 31416 sessionToken = crypto.randomUUID(); 31417 } 31418 const { 31419 data: { suggestions: results } 31420 } = await axios.post("/api/places/autocomplete", { 31421 input, 31422 sessionToken 31423 }); 31424 suggestions.value = results; 31425 } catch (err) { 31426 error.value = err.message || "Failed to fetch suggestions"; 31427 suggestions.value = []; 31428 } finally { 31429 isLoading.value = false; 31430 } 31431 }; 31432 watch(inputRef, (value) => { 31433 if (ignoreNextWatch) { 31434 ignoreNextWatch = false; 31435 clearTimeout(debounceTimer); 31436 return; 31437 } 31438 clearTimeout(debounceTimer); 31439 debounceTimer = setTimeout(() => search(value), 300); 31440 }); 31441 const fetchFields = async (suggestion) => { 31442 try { 31443 isLoading.value = true; 31444 error.value = null; 31445 const { data: place } = await axios.get(`/api/places/details`, { 31446 params: { 31447 placeId: suggestion.placePrediction.placeId, 31448 sessionToken 31449 } 31450 }); 31451 ignoreNextWatch = true; 31452 return place; 31453 } catch (err) { 31454 error.value = err.message || "Failed to fetch place details"; 31455 return null; 31456 } finally { 31457 sessionToken = crypto.randomUUID(); 31458 isLoading.value = false; 31459 } 31460 }; 31461 const clearSuggestions = () => { 31462 suggestions.value = []; 31463 }; 31464 onUnmounted(() => { 31465 clearTimeout(debounceTimer); 31466 }); 31467 return { 31468 suggestions, 31469 isLoading: readonly(isLoading), 31470 error: readonly(error), 31471 fetchFields, 31472 clearSuggestions 31473 }; 31474} 31475function useLeadFormAddress(props, autocompleteModel) { 31476 const { 31477 suggestions: addressSuggestions, 31478 isLoading, 31479 fetchFields, 31480 clearSuggestions 31481 } = useGooglePlacesAutocomplete(autocompleteModel); 31482 async function suggestionSelected(suggestion) { 31483 const place = await fetchFields(suggestion); 31484 fillInAddress(place); 31485 } 31486 function fillInAddress(place) { 31487 if (!(place == null ? void 0 : place.addressComponents)) { 31488 return; 31489 } 31490 let address = ""; 31491 let postcode = ""; 31492 let city = ""; 31493 let state = ""; 31494 for (const component of place.addressComponents) { 31495 if (component.types.includes("street_number")) { 31496 address = `${component.longText} ${address}`; 31497 } 31498 if (component.types.includes("route")) { 31499 address += component.longText; 31500 } 31501 if (component.types.includes("postal_code")) { 31502 postcode = `${component.longText}${postcode}`; 31503 } 31504 if (component.types.includes("postal_code_suffix")) { 31505 postcode = `${postcode}-${component.longText}`; 31506 } 31507 if (component.types.includes("locality")) { 31508 city = component.longText; 31509 } else if (!city && component.types.includes("sublocality")) { 31510 city = component.longText; 31511 } 31512 if (component.types.includes("administrative_area_level_1")) { 31513 state = component.shortText; 31514 } 31515 } 31516 props.form.address = address; 31517 props.form.zip = postcode; 31518 props.form.city = city; 31519 props.form.state = state; 31520 clearSuggestions(); 31521 } 31522 return { 31523 suggestionSelected, 31524 addressSuggestions, 31525 isLoading 31526 }; 31527} 31528const _hoisted_1$4h = { class: "core-block-address-autocomplete-wrapper" }; 31529const _hoisted_2$3U = ["value", "aria-controls", "aria-expanded", "aria-activedescendant"]; 31530const _hoisted_3$x = { 31531 key: 0, 31532 class: "core-block-address-autocomplete-loader", 31533 role: "progressbar", 31534 "aria-label": "Loading address suggestions" 31535}; 31536const _hoisted_4$p = ["id"]; 31537const _hoisted_5$n = ["id", "aria-selected", "aria-label", "onMousedown"]; 31538const _sfc_main$4n = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, { 31539 __name: "CoreBlockAddressAutocomplete", 31540 props: { 31541 modelValue: { 31542 type: String, 31543 default: "" 31544 }, 31545 form: { 31546 type: Object, 31547 required: true 31548 }, 31549 field: { 31550 type: Object, 31551 required: true 31552 } 31553 }, 31554 emits: ["update:modelValue"], 31555 setup(__props, { emit: __emit }) { 31556 const props = __props; 31557 const emit2 = __emit; 31558 const attrs = useAttrs(); 31559 const isFocused = ref(false); 31560 const activeIndex = ref(-1); 31561 const autocompleteModel = computed(() => props.modelValue); 31562 const { addressSuggestions, isLoading, suggestionSelected } = useLeadFormAddress(props, autocompleteModel); 31563 const dropdownVisible = computed( 31564 () => { 31565 var _a; 31566 return props.field.googlePlacesAutocomplete && isFocused.value && !!((_a = addressSuggestions.value) == null ? void 0 : _a.length); 31567 } 31568 ); 31569 const listboxId = computed(() => { 31570 const id = attrs.id; 31571 return id ? `cbs-lb-${id}` : `cbs-lb-${fallbackId}`; 31572 }); 31573 const activeDescendantId = computed(() => { 31574 if (!dropdownVisible.value || activeIndex.value < 0) return void 0; 31575 const sug = addressSuggestions.value[activeIndex.value]; 31576 return sug ? `${listboxId.value}-opt-${sug.placePrediction.placeId}` : void 0; 31577 }); 31578 const fallbackId = Math.random().toString(36).slice(2, 11); 31579 watch(addressSuggestions, () => { 31580 activeIndex.value = -1; 31581 isFocused.value = true; 31582 }); 31583 watch(activeIndex, () => { 31584 nextTick(scrollActiveIntoView); 31585 }); 31586 function scrollActiveIntoView() { 31587 const i = activeIndex.value; 31588 if (i < 0) return; 31589 const sug = addressSuggestions.value[i]; 31590 if (!sug) return; 31591 const el = document.getElementById( 31592 `${listboxId.value}-opt-${sug.placePrediction.placeId}` 31593 ); 31594 el == null ? void 0 : el.scrollIntoView({ block: "nearest" }); 31595 } 31596 function onFocus() { 31597 isFocused.value = true; 31598 activeIndex.value = -1; 31599 } 31600 function onKeydown(e) { 31601 var _a; 31602 if (!dropdownVisible.value) return; 31603 const len = ((_a = addressSuggestions.value) == null ? void 0 : _a.length) ?? 0; 31604 if (!len) return; 31605 if (e.key === "ArrowDown") { 31606 e.preventDefault(); 31607 activeIndex.value = activeIndex.value < len - 1 ? activeIndex.value + 1 : 0; 31608 } else if (e.key === "ArrowUp") { 31609 e.preventDefault(); 31610 activeIndex.value = activeIndex.value <= 0 ? len - 1 : activeIndex.value - 1; 31611 } else if (e.key === "Enter" && activeIndex.value >= 0) { 31612 const suggestion = addressSuggestions.value[activeIndex.value]; 31613 if (suggestion) { 31614 e.preventDefault(); 31615 e.stopPropagation(); 31616 suggestionSelected(suggestion); 31617 } 31618 } else if (e.key === "Escape") { 31619 e.preventDefault(); 31620 isFocused.value = false;
31621 activeIndex.value = -1; 31622 } 31623 } 31624 return (_ctx, _cache) => { 31625 return openBlock(), createElementBlock("div", _hoisted_1$4h, [ 31626 createBaseVNode("input", mergeProps(_ctx.$attrs, { 31627 value: __props.modelValue, 31628 class: { "is-loading": unref(isLoading) }, 31629 role: "combobox", 31630 "aria-autocomplete": "list", 31631 "aria-haspopup": "listbox", 31632 "aria-controls": listboxId.value, 31633 "aria-expanded": String(dropdownVisible.value), 31634 "aria-activedescendant": activeDescendantId.value, 31635 onInput: _cache[0] || (_cache[0] = ($event) => emit2("update:modelValue", $event.target.value)), 31636 onFocus, 31637 onBlur: _cache[1] || (_cache[1] = ($event) => isFocused.value = false), 31638 onKeydown 31639 }), null, 16, _hoisted_2$3U), 31640 unref(isLoading) ? (openBlock(), createElementBlock("div", _hoisted_3$x)) : createCommentVNode("", true), 31641 withDirectives(createBaseVNode("ul", { 31642 id: listboxId.value, 31643 class: "core-block-address-autocomplete", 31644 role: "listbox", 31645 "aria-label": "Select an address" 31646 }, [ 31647 (openBlock(true), createElementBlock(Fragment, null, renderList(unref(addressSuggestions), (suggestion, index2) => { 31648 return openBlock(), createElementBlock("li", { 31649 id: `${listboxId.value}-opt-${suggestion.placePrediction.placeId}`, 31650 key: suggestion.placePrediction.placeId, 31651 class: normalizeClass(["core-block-address-autocomplete__item", { 31652 "core-block-address-autocomplete__item--active": index2 === activeIndex.value 31653 }]), 31654 role: "option", 31655 "aria-selected": index2 === activeIndex.value, 31656 "aria-label": suggestion.placePrediction.text.text, 31657 onMousedown: withModifiers(($event) => unref(suggestionSelected)(suggestion), ["prevent"]) 31658 }, toDisplayString(suggestion.placePrediction.text.text), 43, _hoisted_5$n); 31659 }), 128)), 31660 _cache[2] || (_cache[2] = createBaseVNode("li", { 31661 class: "core-block-address-autocomplete__attribution", 31662 role: "presentation", 31663 "aria-hidden": "true" 31664 }, [ 31665 createBaseVNode("img", { 31666 src: "https://maps.gstatic.com/mapfiles/api-3/images/powered-by-google-on-white3.png", 31667 alt: "", 31668 width: "120", 31669 height: "14", 31670 loading: "lazy", 31671 decoding: "async" 31672 }) 31673 ], -1)) 31674 ], 8, _hoisted_4$p), [ 31675 [vShow, !unref(isLoading) && dropdownVisible.value] 31676 ]) 31677 ]); 31678 }; 31679 } 31680}); 31681const CoreBlockAddressAutocomplete = /* @__PURE__ */ _export_sfc(_sfc_main$4n, [["__scopeId", "data-v-06e71309"]]); 31682const CoreBlockAddressAutocomplete$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 31683 __proto__: null, 31684 default: CoreBlockAddressAutocomplete 31685}, Symbol.toStringTag, { value: "Module" })); 31686var I = Object.defineProperty; 31687var S = (n, s, t) => s in n ? I(n, s, { enumerable: true, configurable: true, writable: true, value: t }) : n[s] = t; 31688var b = (n, s, t) => S(n, typeof s != "symbol" ? s + "" : s, t); 31689const N = { 31690 "#": { pattern: /[0-9]/ }, 31691 "@": { pattern: /[a-zA-Z]/ }, 31692 "*": { pattern: /[a-zA-Z0-9]/ } 31693}, R = (n, s, t) => n.replaceAll(s, "").replace(t, ".").replace("..", ".").replace(/[^.\d]/g, ""), C = (n, s, t) => { 31694 var e; 31695 return new Intl.NumberFormat(((e = t.number) == null ? void 0 : e.locale) ?? "en", { 31696 minimumFractionDigits: n, 31697 maximumFractionDigits: s, 31698 roundingMode: "trunc" 31699 }); 31700}, P = (n, s = true, t) => { 31701 var A, y, g, d; 31702 const e = ((A = t.number) == null ? void 0 : A.unsigned) !== true && n.startsWith("-") ? "-" : "", a = ((y = t.number) == null ? void 0 : y.fraction) ?? 0; 31703 let r2 = C(0, a, t); 31704 const h2 = r2.formatToParts(1000.12), u = ((g = h2.find((o) => o.type === "group")) == null ? void 0 : g.value) ?? " ", f = ((d = h2.find((o) => o.type === "decimal")) == null ? void 0 : d.value) ?? ".", i = R(n, u, f); 31705 if (Number.isNaN(parseFloat(i))) return e; 31706 const p2 = i.split("."); 31707 if (p2[1] != null && p2[1].length >= 1) { 31708 const o = p2[1].length <= a ? p2[1].length : a; 31709 r2 = C(o, a, t); 31710 } 31711 let l3 = r2.format(parseFloat(i)); 31712 return s ? a > 0 && i.endsWith(".") && !i.slice(0, -1).includes(".") && (l3 += f) : l3 = R(l3, u, f), e + l3; 31713}; 31714class F { 31715 constructor(s = {}) { 31716 b(this, "opts", {});
31717 b(this, "memo", /* @__PURE__ */ new Map()); 31718 const t = { ...s }; 31719 if (t.tokens != null) { 31720 t.tokens = t.tokensReplace ? { ...t.tokens } : { ...N, ...t.tokens }; 31721 for (const e of Object.values(t.tokens)) 31722 typeof e.pattern == "string" && (e.pattern = new RegExp(e.pattern)); 31723 } else 31724 t.tokens = N; 31725 Array.isArray(t.mask) && (t.mask.length > 1 ? t.mask = [...t.mask].sort((e, a) => e.length - a.length) : t.mask = t.mask[0] ?? ""), t.mask === "" && (t.mask = null), this.opts = t; 31726 } 31727 masked(s) { 31728 return this.process(String(s), this.findMask(String(s))); 31729 } 31730 unmasked(s) { 31731 return this.process(String(s), this.findMask(String(s)), false); 31732 } 31733 isEager() { 31734 return this.opts.eager === true; 31735 } 31736 isReversed() { 31737 return this.opts.reversed === true; 31738 } 31739 completed(s) { 31740 const t = this.findMask(String(s)); 31741 if (this.opts.mask == null || t == null) return false; 31742 const e = this.process(String(s), t).length; 31743 return typeof this.opts.mask == "string" ? e >= this.opts.mask.length : e >= t.length; 31744 } 31745 findMask(s) { 31746 const t = this.opts.mask; 31747 if (t == null) 31748 return null; 31749 if (typeof t == "string") 31750 return t; 31751 if (typeof t == "function") 31752 return t(s); 31753 const e = this.process(s, t.slice(-1).pop() ?? "", false); 31754 return t.find((a) => this.process(s, a, false).length >= e.length) ?? ""; 31755 } 31756 escapeMask(s) { 31757 const t = [], e = []; 31758 return s.split("").forEach((a, r2) => { 31759 a === "!" && s[r2 - 1] !== "!" ? e.push(r2 - e.length) : t.push(a); 31760 }), { mask: t.join(""), escaped: e }; 31761 } 31762 process(s, t, e = true) { 31763 if (this.opts.number != null) return P(s, e, this.opts); 31764 if (t == null) return s; 31765 const a = `v=${s},mr=${t},m=${e ? 1 : 0}`; 31766 if (this.memo.has(a)) return this.memo.get(a); 31767 const { mask: r2, escaped: h2 } = this.escapeMask(t), u = [], f = this.opts.tokens != null ? this.opts.tokens : {}, i = this.isReversed() ? -1 : 1, p2 = this.isReversed() ? "unshift" : "push", l3 = this.isReversed() ? 0 : r2.length - 1, A = this.isReversed() ? () => o > -1 && c2 > -1 : () => o < r2.length && c2 < s.length, y = (k3) => !this.isReversed() && k3 <= l3 || this.isReversed() && k3 >= l3; 31768 let g, d = -1, o = this.isReversed() ? r2.length - 1 : 0, c2 = this.isReversed() ? s.length - 1 : 0, E = false; 31769 for (; A(); ) { 31770 const k3 = r2.charAt(o), m = f[k3], M = (m == null ? void 0 : m.transform) != null ? m.transform(s.charAt(c2)) : s.charAt(c2); 31771 if (!h2.includes(o) && m != null ? (M.match(m.pattern) != null ? (u[p2](M), m.repeated ? (d === -1 ? d = o : o === l3 && o !== d && (o = d - i), l3 === d && (o -= i)) : m.multiple && (E = true, o -= i), o += i) : m.multiple ? E && (o += i, c2 -= i, E = false) : M === g ? g = void 0 : m.optional && (o += i, c2 -= i), c2 += i) : (e && !this.isEager() && u[p2](k3), M === k3 && !this.isEager() ? c2 += i : g = k3, this.isEager() || (o += i)), this.isEager()) 31772 for (; y(o) && (f[r2.charAt(o)] == null || h2.includes(o)); ) { 31773 if (e) { 31774 if (u[p2](r2.charAt(o)), s.charAt(c2) === r2.charAt(o)) { 31775 o += i, c2 += i; 31776 continue; 31777 } 31778 } else r2.charAt(o) === s.charAt(c2) && (c2 += i); 31779 o += i; 31780 } 31781 } 31782 return this.memo.set(a, u.join("")), this.memo.get(a); 31783 } 31784} 31785const w = (n) => JSON.parse(n.replaceAll("'", '"')), T = (n, s = {}) => { 31786 const t = { ...s }; 31787 n.dataset.maska != null && n.dataset.maska !== "" && (t.mask = x(n.dataset.maska)), n.dataset.maskaEager != null && (t.eager = v(n.dataset.maskaEager)), n.dataset.maskaReversed != null && (t.reversed = v(n.dataset.maskaReversed)), n.dataset.maskaTokensReplace != null && (t.tokensReplace = v(n.dataset.maskaTokensReplace)), n.dataset.maskaTokens != null && (t.tokens = W(n.dataset.maskaTokens)); 31788 const e = {}; 31789 return n.dataset.maskaNumberLocale != null && (e.locale = n.dataset.maskaNumberLocale), n.dataset.maskaNumberFraction != null && (e.fraction = parseInt(n.dataset.maskaNumberFraction)), n.dataset.maskaNumberUnsigned != null && (e.unsigned = v(n.dataset.maskaNumberUnsigned)), (n.dataset.maskaNumber != null || Ob
31789ject.values(e).length > 0) && (t.number = e), t; 31790}, v = (n) => n !== "" ? !!JSON.parse(n) : true, x = (n) => n.startsWith("[") && n.endsWith("]") ? w(n) : n, W = (n) => { 31791 if (n.startsWith("{") && n.endsWith("}")) 31792 return w(n); 31793 const s = {}; 31794 return n.split("|").forEach((t) => { 31795 const e = t.split(":"); 31796 s[e[0]] = { 31797 pattern: new RegExp(e[1]), 31798 optional: e[2] === "optional", 31799 multiple: e[2] === "multiple", 31800 repeated: e[2] === "repeated" 31801 }; 31802 }), s; 31803}; 31804class V { 31805 constructor(s, t = {}) { 31806 b(this, "items", /* @__PURE__ */ new Map()); 31807 b(this, "eventAbortController"); 31808 b(this, "onInput", (s2) => { 31809 if (s2 instanceof CustomEvent && s2.type === "input" && !s2.isTrusted && !s2.bubbles) 31810 return; 31811 const t2 = s2.target, e = this.items.get(t2), a = "inputType" in s2 && s2.inputType.startsWith("delete"), r2 = e.isEager(), h2 = a && r2 && e.unmasked(t2.value) === "" ? "" : t2.value; 31812 this.fixCursor(t2, a, () => this.setValue(t2, h2)); 31813 }); 31814 this.options = t, this.eventAbortController = new AbortController(), this.init(this.getInputs(s)); 31815 } 31816 update(s = {}) { 31817 this.options = { ...s }, this.init(Array.from(this.items.keys())); 31818 } 31819 updateValue(s) { 31820 s.value !== "" && s.value !== this.processInput(s).masked && this.setValue(s, s.value); 31821 } 31822 destroy() { 31823 this.eventAbortController.abort(), this.items.clear(); 31824 } 31825 init(s) { 31826 const t = this.getOptions(this.options); 31827 for (const e of s) { 31828 if (!this.items.has(e)) { 31829 const { signal: r2 } = this.eventAbortController; 31830 e.addEventListener("input", this.onInput, { capture: true, signal: r2 }); 31831 } 31832 const a = new F(T(e, t)); 31833 this.items.set(e, a), queueMicrotask(() => this.updateValue(e)), e.selectionStart === null && a.isEager() && console.warn("Maska: input of `%s` type is not supported", e.type); 31834 } 31835 } 31836 getInputs(s) { 31837 return typeof s == "string" ? Array.from(document.querySelectorAll(s)) : "length" in s ? Array.from(s) : [s]; 31838 } 31839 getOptions(s) { 31840 const { onMaska: t, preProcess: e, postProcess: a, ...r2 } = s; 31841 return r2; 31842 } 31843 fixCursor(s, t, e) { 31844 const a = s.selectionStart, r2 = s.value; 31845 if (e(), a === null || a === r2.length && !t) return; 31846 const h2 = s.value, u = r2.slice(0, a), f = h2.slice(0, a), i = this.processInput(s, u).unmasked, p2 = this.processInput(s, f).unmasked; 31847 let l3 = a; 31848 u !== f && (l3 += t ? h2.length - r2.length : i.length - p2.length), s.setSelectionRange(l3, l3); 31849 } 31850 setValue(s, t) { 31851 const e = this.processInput(s, t); 31852 s.value = e.masked, this.options.onMaska != null && (Array.isArray(this.options.onMaska) ? this.options.onMaska.forEach((a) => a(e)) : this.options.onMaska(e)), s.dispatchEvent(new CustomEvent("maska", { detail: e })), s.dispatchEvent(new CustomEvent("input", { detail: e.masked })); 31853 } 31854 processInput(s, t) { 31855 const e = this.items.get(s); 31856 let a = t ?? s.value; 31857 this.options.preProcess != null && (a = this.options.preProcess(a)); 31858 let r2 = e.masked(a); 31859 return this.options.postProcess != null && (r2 = this.options.postProcess(r2)), { 31860 masked: r2, 31861 unmasked: e.unmasked(a), 31862 completed: e.completed(a) 31863 }; 31864 } 31865} 31866const l2 = /* @__PURE__ */ new WeakMap(), c = (e, s) => { 31867 if (e.arg == null || e.instance == null) return; 31868 const a = "setup" in e.instance.$.type; 31869 e.arg in e.instance ? e.instance[e.arg] = s : a && console.warn("Maska: please expose `%s` using defineExpose", e.arg); 31870}, k2 = (e, s) => { 31871 var u; 31872 const a = e instanceof HTMLInputElement ? e : e.querySelector("input"); 31873 if (a == null || (a == null ? void 0 : a.type) === "file") return; 31874 let t = {}; 31875 if (s.value != null && (t = typeof s.value == "string" ? { mask: s.value } : { ...s.value }), s.arg != null) { 31876 const o = (r2) => { 31877 const p2 = s.modifiers.unmasked ? r2.unmasked : s.modifiers.completed ? r2.completed : r2.masked; 31878 c(s, p2); 31879 }; 31880 t.onMaska = t.onMaska == null ? o : Array.isArray(t.onMaska) ? [...t.onMaska, o] : [t.onMaska, o]; 31881 } 31882 l2.has(a) ? (u = l2.get(a)) == null || u.update(t) : l2.set(a, new V(a, t)); 31883}; 31884const _hoisted_1$4g = { 31885 key: 0, 31886 class: "core-block-dynamic-form__section" 31887}; 31888const _hoisted_2$3T = { 31889 key: 0, 31890 class: "core-block-dynamic-form__section-header" 31891}; 31892const _hoisted_3$w = { 31893 key: 0, 31894 class: "core-block-dynamic-form__title" 31895}; 31896const _hoisted_4$o = { 31897 key: 1, 31898 class: "core-block-dynamic-form__subtitle" 31899}; 31900const _hoisted_5$m = { 31901 key: 0, 31902 class: "core-block-dynamic-form__checkbox-row" 31903}; 31904const _hoisted_6$f = ["id", "value", "aria-label", "aria-checked"]; 31905const _hoisted_7$c = ["for"]; 31906const _hoisted_8$b = { 31907 key: 0, 31908 class: "core-block-dynamic-form__required" 31909}; 31910const _hoisted_9$9 = { 31911 key: 0, 31912 class: "core-block-dynamic-form__label-row" 31913}; 31914const _hoisted_10$8 = ["for"];
31915const _hoisted_11$7 = { 31916 key: 0, 31917 class: "core-block-dynamic-form__required" 31918}; 31919const _hoisted_12$7 = ["aria-invalid", "aria-required", "aria-describedby"]; 31920const _hoisted_13$7 = ["id"]; 31921const _hoisted_14$7 = { class: "core-block-dynamic-form__submit-button submit-button" }; 31922const _sfc_main$4m = { 31923 __name: "CoreBlockDynamicForm", 31924 props: { 31925 form: { 31926 type: Object, 31927 required: false, 31928 default: void 0 31929 }, 31930 settings: { 31931 type: Object, 31932 required: false, 31933 default: () => ({}) 31934 }, 31935 isEditable: { 31936 type: Boolean, 31937 default: false 31938 } 31939 }, 31940 emits: ["submit"], 31941 setup(__props, { expose: __expose, emit: __emit }) { 31942 veeValidateRules(); 31943 const FIELD_ALIGNMENTS = ["field-left", "field-center", "field-right"]; 31944 const COMPONENT_REGISTRY = { 31945 input: "input", 31946 CoreBlockSelect: __nuxt_component_4$2 31947 }; 31948 const props = __props; 31949 const emit2 = __emit; 31950 const { resolvedForm } = useCoreBlockDynamicForm(toRef(props)); 31951 const fallbackForm = reactive({}); 31952 const formModel = computed(() => props.form ?? fallbackForm); 31953 const fieldAlign = computed(() => { 31954 var _a, _b; 31955 const value = (_b = (_a = props.settings) == null ? void 0 : _a.variants) == null ? void 0 : _b["field-align"]; 31956 return FIELD_ALIGNMENTS.includes(value) ? value : "field-left"; 31957 }); 31958 const isGridAligned = computed(() => fieldAlign.value !== "field-left"); 31959 const fieldAlignClass = computed( 31960 () => isGridAligned.value ? `core-block-dynamic-form--${fieldAlign.value}` : "" 31961 ); 31962 function isSectionVisible(section) { 31963 const anyFieldVisible = section.fields.some( 31964 (field) => isFieldVisible(field) 31965 ); 31966 if (!anyFieldVisible) return false; 31967 const s = section == null ? void 0 : section.show; 31968 if (s == null) { 31969 return true; 31970 } 31971 if (typeof s === "function") { 31972 return Boolean( 31973 s({ 31974 form: formModel.value, 31975 settings: props.settings ?? {} 31976 }) 31977 ); 31978 } 31979 return Boolean(s); 31980 } 31981 function isFieldVisible(field) { 31982 const s = field == null ? void 0 : field.show; 31983 if (s == null) { 31984 return true; 31985 } 31986 if (typeof s === "function") { 31987 return Boolean( 31988 s({ 31989 form: formModel.value, 31990 settings: props.settings ?? {} 31991 }) 31992 ); 31993 } 31994 return Boolean(s); 31995 } 31996 function fieldDynamicContext() { 31997 return { 31998 form: formModel.value, 31999 settings: props.settings ?? {} 32000 }; 32001 } 32002 function resolveFieldLabel(field) { 32003 const raw = field == null ? void 0 : field.label; 32004 if (raw == null) { 32005 return ""; 32006 } 32007 if (typeof raw === "function") { 32008 const out = raw(fieldDynamicContext()); 32009 return out == null ? "" : String(out); 32010 } 32011 return String(raw); 32012 } 32013 function fieldValueKey(field) { 32014 return field.modelKey ?? field.id; 32015 } 32016 function fieldDisplayName(field) { 32017 const resolved = resolveFieldLabel(field); 32018 if (resolved) { 32019 return resolved; 32020 } 32021 return field.name ?? String(field.id ?? field.modelKey ?? "field"); 32022 } 32023 function fieldVid(field) { 32024 const id = field.id ?? fieldValueKey(field); 32025 return `dynamic-form-field:${id}`; 32026 } 32027 function fieldErrorDomId(sectionIndex, fieldIndex, field) { 32028 const { type } = field; 32029 if (type === "label") return void 0; 32030 return `error-${fieldDomId(sectionIndex, fieldIndex, field)}`; 32031 } 32032 function fieldAriaLabel(field) { 32033 return resolveFieldLabel(field) || void 0; 32034 } 32035 function applyFieldAriaLabel(bindings, field) { 32036 const { type } = field; 32037 if (type === "label") return; 32038 if (bindings["aria-label"]) { 32039 return; 32040 } 32041 const label = fieldAriaLabel(field); 32042 if (label) { 32043 bindings["aria-label"] = label; 32044 } 32045 } 32046 function fieldAriaDescribedBy(sectionIndex, fieldIndex, field) { 32047 const { type } = field; 32048 if (type === "label") return void 0; 32049 const ids = []; 32050 ids.push(fieldErrorDomId(sectionIndex, fieldIndex, field)); 32051 if (field.tooltip) { 32052 ids.push(`${fieldDomId(sectionIndex, fieldIndex, field)}-tooltip`); 32053 } 32054 return ids.length ? ids.join(" ") : void 0; 32055 } 32056 function isCheckboxField(field) { 32057 var _a; 32058 if (field.component !== "input") { 32059 return false;
32060 } 32061 const t = field.type ?? ((_a = field.componentProps) == null ? void 0 : _a.type); 32062 return t === "checkbox"; 32063 } 32064 function checkboxConcernValue(field) { 32065 return field.checkboxValue ?? field.value ?? (resolveFieldLabel(field) || field.id); 32066 } 32067 function checkboxExtraProps(field) { 32068 const extra = { ...field.componentProps ?? {} }; 32069 delete extra.type; 32070 delete extra.class; 32071 return extra; 32072 } 32073 function checkboxInputClass(field) { 32074 var _a; 32075 const extraClass = (_a = field.componentProps) == null ? void 0 : _a.class; 32076 return [ 32077 "core-block-dynamic-form__control", 32078 "core-block-dynamic-form__control--checkbox", 32079 extraClass 32080 ].filter(Boolean); 32081 } 32082 function seedFormModelKeys(formDef) { 32083 const target = props.form ?? fallbackForm; 32084 let anyCheckbox = false; 32085 for (const section of formDef.sections ?? []) { 32086 for (const field of section.fields ?? []) { 32087 if (field.type === "label") return; 32088 if (isCheckboxField(field)) { 32089 anyCheckbox = true; 32090 continue; 32091 } 32092 const key = fieldValueKey(field); 32093 if (key == null || key in target) { 32094 continue; 32095 } 32096 target[key] = ""; 32097 } 32098 } 32099 if (anyCheckbox && !Array.isArray(target.leadConcerns)) { 32100 target.leadConcerns = []; 32101 } 32102 } 32103 watch( 32104 resolvedForm, 32105 (formDef) => { 32106 seedFormModelKeys(formDef); 32107 }, 32108 { immediate: true, deep: true } 32109 ); 32110 function resolveIs(name) { 32111 return COMPONENT_REGISTRY[name] ?? name; 32112 } 32113 function rowClass(section) { 32114 if (section.autoCols) return "core-block-dynamic-form__row--flex"; 32115 return isGridAligned.value ? "core-block-dynamic-form__row--flex core-block-dynamic-form__row--grid-aligned" : "core-block-dynamic-form__row--grid"; 32116 } 32117 function cellClass(section, field) { 32118 if (section.autoCols && field.cols == null) { 32119 return "core-block-dynamic-form__cell--auto"; 32120 } 32121 return ""; 32122 } 32123 function cellStyle(section, field) { 32124 if (!section.autoCols) { 32125 const span = field.cols ?? 12; 32126 if (isGridAligned.value) { 32127 return { "--_core__form_cell-ratio": span / 12 }; 32128 } 32129 return { gridColumn: `span ${span}` }; 32130 } 32131 if (field.cols != null) { 32132 const pct = field.cols / 12 * 100; 32133 return { 32134 flex: `0 1 ${pct}%`, 32135 minWidth: 0, 32136 maxWidth: "100%" 32137 }; 32138 } 32139 return {}; 32140 } 32141 function fieldDomId(sectionIndex, fieldIndex, field) { 32142 const { type } = field; 32143 if (type === "label") return void 0; 32144 return field.id ? `${field.id}` : `dynamic-form-s${sectionIndex}-f${fieldIndex}`; 32145 } 32146 function mergedNativeBindings(field, domId, veeField) { 32147 const bindings = Object.assign( 32148 {}, 32149 veeField, 32150 controlVisualBind(field, domId) 32151 ); 32152 applyFieldAriaLabel(bindings, field); 32153 return bindings; 32154 } 32155 function mergedComponentBindings(field, domId, componentField) { 32156 const bindings = Object.assign( 32157 {}, 32158 componentField, 32159 controlVisualBind(field, domId) 32160 ); 32161 applyFieldAriaLabel(bindings, field); 32162 return bindings; 32163 } 32164 function controlVisualBind(field, domId) { 32165 const extra = { ...field.componentProps }; 32166 if (field.component === "input") { 32167 return { 32168 ...extra, 32169 id: domId, 32170 class: ["core-block-dynamic-form__control", extra.class].filter( 32171 Boolean 32172 ) 32173 }; 32174 } 32175 if (field.component === "CoreBlockSelect") { 32176 return { 32177 ...extra, 32178 id: domId, 32179 class: ["core-block-dynamic-form__control", extra.class].filter( 32180 Boolean 32181 ), 32182 required: resolveFieldRequired(field, fieldDynamicContext()) ?? false 32183 }; 32184 } 32185 return { 32186 ...extra, 32187 id: domId, 32188 class: ["core-block-dynamic-form__control", extra.class].filter( 32189 Boolean 32190 ) 32191 }; 32192 } 32193 function fieldHasValidationError(field, errors) { 32194 if (!errors) { 32195 return false;
32196 } 32197 return Boolean(errors[fieldDisplayName(field)]); 32198 } 32199 function getFocusableElement(domId, field) { 32200 const root2 = document.getElementById(domId); 32201 if (!root2) { 32202 return null; 32203 } 32204 if (root2.matches("input, select, textarea, [role='combobox']")) { 32205 return root2; 32206 } 32207 if (field.component === "CoreBlockSelect") { 32208 return root2; 32209 } 32210 return root2.querySelector("input, select, textarea, [role='combobox']") ?? root2; 32211 } 32212 async function focusFirstInvalidField(errors) { 32213 var _a; 32214 await nextTick(); 32215 for (let sectionIndex = 0; sectionIndex < resolvedForm.value.sections.length; sectionIndex++) { 32216 const section = resolvedForm.value.sections[sectionIndex]; 32217 if (!isSectionVisible(section)) { 32218 continue; 32219 } 32220 for (let fieldIndex = 0; fieldIndex < section.fields.length; fieldIndex++) { 32221 const field = section.fields[fieldIndex]; 32222 if (!isFieldVisible(field) || field.type === "label") { 32223 continue; 32224 } 32225 if (isCheckboxField(field)) { 32226 continue; 32227 } 32228 if (!fieldHasValidationError(field, errors)) { 32229 continue; 32230 } 32231 const focusTarget = getFocusableElement( 32232 fieldDomId(sectionIndex, fieldIndex, field), 32233 field 32234 ); 32235 if (!(focusTarget == null ? void 0 : focusTarget.focus)) { 32236 continue; 32237 } 32238 focusTarget.focus({ preventScroll: false }); 32239 (_a = focusTarget.scrollIntoView) == null ? void 0 : _a.call(focusTarget, { 32240 block: "nearest", 32241 behavior: "smooth" 32242 }); 32243 return true; 32244 } 32245 } 32246 return false; 32247 } 32248 __expose({ 32249 focusFirstInvalidField 32250 }); 32251 return (_ctx, _cache) => { 32252 const _component_CoreBlockAccessibleTooltip = __nuxt_component_0$b; 32253 const _component_CoreBlock = _sfc_main$4x; 32254 return openBlock(), createElementBlock("div", { 32255 class: normalizeClass(["core-block-dynamic-form", fieldAlignClass.value]) 32256 }, [ 32257 (openBlock(true), createElementBlock(Fragment, null, renderList(unref(resolvedForm).sections, (section, sectionIndex) => { 32258 return openBlock(), createElementBlock(Fragment, { 32259 key: section.id ?? `section-${sectionIndex}` 32260 }, [ 32261 isSectionVisible(section) ? (openBlock(), createElementBlock("section", _hoisted_1$4g, [ 32262 section.title || section.subtitle ? (openBlock(), createElementBlock("header", _hoisted_2$3T, [ 32263 section.title ? (openBlock(), createElementBlock("h5", _hoisted_3$w, toDisplayString(section.title), 1)) : createCommentVNode("", true), 32264 section.subtitle ? (openBlock(), createElementBlock("p", _hoisted_4$o, toDisplayString(section.subtitle), 1)) : createCommentVNode("", true) 32265 ])) : createCommentVNode("", true), 32266 createBaseVNode("div", { 32267 class: normalizeClass(["core-block-dynamic-form__row", rowClass(section)]) 32268 }, [ 32269 (openBlock(true), createElementBlock(Fragment, null, renderList(section.fields, (field, fieldIndex) => { 32270 return openBlock(), createElementBlock(Fragment, { 32271 key: field.id ?? `field-${sectionIndex}-${fieldIndex}` 32272 }, [ 32273 isFieldVisible(field) ? (openBlock(), createElementBlock("div", { 32274 key: 0, 32275 class: normalizeClass(["core-block-dynamic-form__cell", cellClass(section, field)]), 32276 style: normalizeStyle(cellStyle(section, field)) 32277 }, [ 32278 isCheckboxField(field) ? (openBlock(), createElementBlock("div", _hoisted_5$m, [ 32279 withDirectives(createBaseVNode("input", mergeProps({ 32280 id: fieldDomId( 32281 sectionIndex, 32282 fieldIndex, 32283 field 32284 ), 32285 "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => formModel.value.leadConcerns = $event), 32286 value: checkboxConcernValue(field), 32287 type: "checkbox", 32288 autocomplete: "off", 32289 ref_for: true 32290 }, checkboxExtraProps(field), { 32291 class: checkboxInputClass(field), 32292 "aria-label": fieldAriaLabel(field), 32293 "aria-checked": formModel.value.leadConcerns.includes( 32294 checkboxConcernValue(field) 32295 ) 32296 }), null, 16, _hoisted_6$f), [ 32297 [vModelCheckbox, formModel.value.leadConcerns] 32298 ]), 32299 resolveFieldLabel(field) ? (openBlock(), createElementBlock("label", { 32300 key: 0, 32301 class: "core-block-dynamic-form__checkbox-label", 32302 for: fieldDomId( 32303 sectionIndex, 32304 fieldIndex, 32305 field 32306 ) 32307 }, [ 32308 createTextVNode(toDisplayString(resolveFieldLabel(field)), 1), 32309 unref(resolveFieldRequired)( 32310 field, 32311 fieldDynamicContext() 32312 ) ? (openBlock(), createElementBlock("span", _hoisted_8$b, "*")) : createCommentVNode("", true) 32313 ], 8, _hoisted_7$c)) : createCommentVNode("", true) 32314 ])) : (openBlock(), createBlock(unref(Field), { 32315 key: 1, 32316 modelValue: formModel.value[fieldValueKey(field)], 32317 "onUpdate:modelValue": ($event) => formModel.value[fieldValueKey(field)] = $event, 32318 rules: unref(resolveFieldRules)( 32319 field, 32320 fieldDynamicContext() 32321 ), 32322 name: fieldDisplayName(field), 32323 vid: fieldVid(field), 32324 tag: "div", 32325 "validate-on-blur": "" 32326 }, { 32327 default: withCtx(({ 32328 field: veeField, 32329 componentField, 32330 errors 32331 }) => [ 32332 resolveFieldLabel(field) ? (openBlock(), createElementBlock("div", _hoisted_9$9, [ 32333 createBaseVNode("label", { 32334 class: normalizeClass(["core-block-dynamic-form__label", { 32335 "italic-label": field.type === "label", 32336 "has-tooltip": field.tooltip 32337 }]), 32338 for: fieldDomId( 32339 sectionIndex, 32340 fieldIndex, 32341 field 32342 ) 32343 }, [ 32344 createTextVNode(toDisplayString(resolveFieldLabel(field)), 1), 32345 unref(resolveFieldRequired)( 32346 field, 32347 fieldDynamicContext() 32348 ) ? (openBlock(), createElementBlock("span", _hoisted_11$7, "*")) : createCommentVNode("", true) 32349 ], 10, _hoisted_10$8) 32350 ])) : createCommentVNode("", true), 32351 field.component === "input" && !field.googlePlacesAutocomplete ? withDirectives((openBlock(), createElementBlock("input", mergeProps( 32352 { 32353 key: 1, 32354 ref_for: true 32355 }, 32356 mergedNativeBindings( 32357 field, 32358 fieldDomId( 32359 sectionIndex, 32360 fieldIndex, 32361 field 32362 ), 32363 veeField 32364 ), 32365 { 32366 class: { 32367 error: errors.length > 0 32368 }, 32369 "aria-invalid": errors.length > 0 ? true : void 0, 32370 "aria-required": unref(resolveFieldRequired)( 32371 field, 32372 fieldDynamicContext() 32373 ), 32374 "aria-describedby": fieldAriaDescribedBy( 32375 sectionIndex, 32376 fieldIndex, 32377 field 32378 ) 32379 } 32380 ), null, 16, _hoisted_12$7)), [ 32381 [unref(k2)] 32382 ]) : field.component === "CoreBlockSelect" ? (openBlock(), createBlock(resolveDynamicComponent(__nuxt_component_4$2), mergeProps( 32383 { 32384 key: 2, 32385 ref_for: true 32386 }, 32387 mergedComponentBindings( 32388 field, 32389 fieldDomId( 32390 sectionIndex, 32391 fieldIndex, 32392 field 32393 ), 32394 componentField 32395 ), 32396 { 32397 class: { 32398 error: errors.length > 0 32399 }, 32400 "aria-invalid": errors.length > 0 ? true : void 0, 32401 "aria-describedby": fieldAriaDescribedBy( 32402 sectionIndex, 32403 fieldIndex, 32404 field 32405 ) 32406 } 32407 ), null, 16, ["class", "aria-invalid", "aria-describedby"])) : field.component === "input" && field.googlePlacesAutocomplete ? (openBlock(), createBlock(resolveDynamicComponent(CoreBlockAddressAutocomplete), mergeProps( 32408 { 32409 key: 3, 32410 ref_for: true 32411 }, 32412 mergedComponentBindings( 32413 field, 32414 fieldDomId( 32415 sectionIndex, 32416 fieldIndex, 32417 field 32418 ), 32419 componentField 32420 ), 32421 { 32422 class: { 32423 error: errors.length > 0 32424 }, 32425 form: formModel.value, 32426 field, 32427 "aria-invalid": errors.length > 0 ? true : void 0, 32428 "aria-required": unref(resolveFieldRequired)( 32429 field, 32430 fieldDynamicContext() 32431 ), 32432 "aria-describedby": fieldAriaDescribedBy( 32433 sectionIndex, 32434 fieldIndex, 32435 field 32436 ) 32437 } 32438 ), null, 16, ["class", "form", "field", "aria-invalid", "aria-required", "aria-describedby"])) : (openBlock(), createBlock(resolveDynamicComponent(resolveIs(field.component)), mergeProps( 32439 { 32440 key: 4, 32441 ref_for: true 32442 }, 32443 mergedComponentBindings( 32444 field, 32445 fieldDomId( 32446 sectionIndex, 32447 fieldIndex, 32448 field 32449 ), 32450 componentField 32451 ), 32452 { 32453 "aria-invalid": errors.length > 0 ? true : void 0, 32454 "aria-describedby": fieldAriaDescribedBy( 32455 sectionIndex, 32456 fieldIndex, 32457 field 32458 ) 32459 } 32460 ), null, 16, ["aria-invalid", "aria-describedby"])), 32461 createBaseVNode("small", { 32462 id: fieldErrorDomId( 32463 sectionIndex, 32464 fieldIndex, 32465 field 32466 ), 32467 class: "text-error core-block-dynamic-form__error" 32468 }, toDisplayString(errors[0]), 9, _hoisted_13$7) 32469 ]), 32470 _: 2 32471 }, 1032, ["modelValue", "onUpdate:modelValue", "rules", "name", "vid"])), 32472 field.tooltip ? (openBlock(), createBlock(_component_CoreBlockAccessibleTooltip, { 32473 key: 2, 32474 id: `${fieldDomId( 32475 sectionIndex, 32476 fieldIndex, 32477 field 32478 )}-tooltip`, 32479 field, 32480 class: "core-block-dynamic-form__tooltip--positioned" 32481 }, null, 8, ["id", "field"])) : createCommentVNode("", true)
32482 ], 6)) : createCommentVNode("", true) 32483 ], 64); 32484 }), 128)) 32485 ], 2) 32486 ])) : createCommentVNode("", true) 32487 ], 64); 32488 }), 128)), 32489 createBaseVNode("div", _hoisted_14$7, [ 32490 createVNode(_component_CoreBlock, { 32491 "data-testid": `form-submit-button`, 32492 "is-editable": __props.isEditable, 32493 type: "submit", 32494 value: "submit", 32495 settings: { 32496 type: "button", 32497 label: __props.settings.formType === "agentNewsletter" ? "Sign up for my Newsletter" : "Submit", 32498 event: () => emit2("submit"), 32499 icon: null, 32500 variants: { 32501 style: "primary" 32502 } 32503 } 32504 }, null, 8, ["is-editable", "settings"]) 32505 ]) 32506 ], 2); 32507 }; 32508 } 32509}; 32510const __nuxt_component_3$4 = /* @__PURE__ */ _export_sfc(_sfc_main$4m, [["__scopeId", "data-v-0703c8a7"]]); 32511const CoreBlockDynamicForm = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 32512 __proto__: null, 32513 default: __nuxt_component_3$4 32514}, Symbol.toStringTag, { value: "Module" })); 32515const _sfc_main$4l = { 32516 props: { 32517 settings: { 32518 type: Object, 32519 required: false 32520 } 32521 }, 32522 computed: { 32523 alt() { 32524 var _a, _b; 32525 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 32526 }, 32527 id() { 32528 var _a, _b; 32529 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 32530 } 32531 } 32532}; 32533const _hoisted_1$4f = ["aria-labelledby", "aria-label"]; 32534const _hoisted_2$3S = ["id"]; 32535function _sfc_render$3O(_ctx, _cache, $props, $setup, $data, $options) { 32536 return openBlock(), createElementBlock("svg", { 32537 width: "24", 32538 height: "24", 32539 viewBox: "0 0 24 24", 32540 fill: "none", 32541 xmlns: "http://www.w3.org/2000/svg", 32542 role: "img", 32543 "aria-labelledby": `icon-title-${$options.id}`, 32544 "aria-label": $options.alt 32545 }, [ 32546 createBaseVNode("title", { 32547 id: `icon-title-${$options.id}` 32548 }, toDisplayString($options.alt), 9, _hoisted_2$3S), 32549 _cache[0] || (_cache[0] = createBaseVNode("path", { 32550 d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", 32551 stroke: "currentColor", 32552 "stroke-width": "2", 32553 "stroke-linecap": "round", 32554 "stroke-linejoin": "round" 32555 }, null, -1)), 32556 _cache[1] || (_cache[1] = createBaseVNode("path", { 32557 d: "M12 16V12", 32558 stroke: "currentColor", 32559 "stroke-width": "2", 32560 "stroke-linecap": "round", 32561 "stroke-linejoin": "round" 32562 }, null, -1)), 32563 _cache[2] || (_cache[2] = createBaseVNode("path", { 32564 d: "M12 8H12.01", 32565 stroke: "currentColor", 32566 "stroke-width": "2", 32567 "stroke-linecap": "round", 32568 "stroke-linejoin": "round" 32569 }, null, -1)) 32570 ], 8, _hoisted_1$4f); 32571} 32572const __nuxt_component_5$1 = /* @__PURE__ */ _export_sfc(_sfc_main$4l, [["render", _sfc_render$3O]]); 32573const CoreIconInfo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 32574 __proto__: null, 32575 default: __nuxt_component_5$1 32576}, Symbol.toStringTag, { value: "Module" })); 32577const clientOnlySymbol = Symbol.for("nuxt:client-only"); 32578const __nuxt_component_3$3 = /* @__PURE__ */ defineComponent({ 32579 name: "ClientOnly", 32580 inheritAttrs: false, 32581 props: ["fallback", "placeholder", "placeholderTag", "fallbackTag"], 32582 setup(_, { slots, attrs }) { 32583 const mounted = ref(false); 32584 onMounted(() => { 32585 mounted.value = true; 32586 }); 32587 provide(clientOnlySymbol, true); 32588 return (props) => { 32589 var _a; 32590 if (mounted.value) { 32591 return (_a = slots.default) == null ? void 0 : _a.call(slots); 32592 } 32593 const slot = slots.fallback || slots.placeholder; 32594 if (slot) { 32595 return slot(); 32596 } 32597 const fallbackStr = props.fallback || props.placeholder || ""; 32598 const fallbackTag = props.fallbackTag || props.placeholderTag || "span"; 32599 return createElementBlock(fallbackTag, attrs, fallbackStr); 32600 }; 32601 } 32602}); 32603const useRecaptcha = () => { 32604 const isLoaded = ref(false); 32605 const isLoading = ref(false); 32606 const error = ref(null); 32607 const recaptchaInstance = ref(null); 32608 const isReady = computed( 32609 () => isLoaded.value && recaptchaInstance.value && !error.value 32610 ); 32611 const initializeRecaptcha = async () => { 32612 if (typeof window === "undefined") return; 32613 try { 32614 isLoading.value = true; 32615 error.value = null; 32616 let nuxtRecaptcha = null;
32617 try { 32618 const { $recaptcha, $recaptchaLoaded } = useNuxtApp().vueApp.config.globalProperties; 32619 if ($recaptchaLoaded) { 32620 await $recaptchaLoaded(); 32621 const { $recaptcha: loadedRecaptcha } = useNuxtApp().vueApp.config.globalProperties; 32622 if (loadedRecaptcha && typeof loadedRecaptcha === "function") { 32623 recaptchaInstance.value = loadedRecaptcha; 32624 isLoaded.value = true; 32625 return; 32626 } 32627 } 32628 } catch (e) { 32629 } 32630 let attempts = 0; 32631 const maxAttempts = 50; 32632 while (attempts < maxAttempts) { 32633 if (typeof window !== "undefined") { 32634 if (window.$recaptchaLoaded) { 32635 await window.$recaptchaLoaded(); 32636 if (window.$recaptcha && typeof window.$recaptcha === "function") { 32637 recaptchaInstance.value = window.$recaptcha; 32638 isLoaded.value = true; 32639 break; 32640 } 32641 } 32642 } 32643 await new Promise((resolve2) => setTimeout(resolve2, 100)); 32644 attempts++; 32645 } 32646 } catch (err) { 32647 error.value = err.message || "Failed to initialize reCAPTCHA"; 32648 try { 32649 const { $appInsights } = useNuxtApp(); 32650 if ($appInsights && typeof $appInsights.trackException === "function") { 32651 $appInsights.trackException({ 32652 exception: err, 32653 properties: { 32654 location: "useRecaptcha-composable", 32655 action: "initialization-error", 32656 errorMessage: err.message 32657 } 32658 }); 32659 } 32660 } catch (e) { 32661 } 32662 } finally { 32663 isLoading.value = false; 32664 } 32665 }; 32666 const executeRecaptcha = async (action = "submit") => { 32667 if (!isReady.value) { 32668 if (!isLoading.value && !isLoaded.value) { 32669 await initializeRecaptcha(); 32670 } 32671 if (!isReady.value) { 32672 return { 32673 success: true, 32674 token: "recaptcha-unavailable" 32675 }; 32676 } 32677 } 32678 try { 32679 const token = await recaptchaInstance.value(action); 32680 return { 32681 success: true, 32682 token 32683 }; 32684 } catch (err) { 32685 const errorMessage = err.message || "reCAPTCHA execution failed"; 32686 try { 32687 const { $appInsights } = useNuxtApp(); 32688 if ($appInsights && typeof $appInsights.trackException === "function") { 32689 $appInsights.trackException({ 32690 exception: err, 32691 properties: { 32692 location: "useRecaptcha-composable", 32693 action: "execution-error", 32694 recaptchaAction: action, 32695 errorMessage: err.message 32696 } 32697 }); 32698 } 32699 } catch (e) { 32700 } 32701 return { 32702 success: false, 32703 error: errorMessage 32704 }; 32705 } 32706 }; 32707 const verifyRecaptcha = async (token) => { 32708 var _a; 32709 if (!token) { 32710 return { 32711 success: false, 32712 error: true, 32713 errorMessage: "No reCAPTCHA token provided" 32714 }; 32715 } 32716 if (token === "static-generation-bypass" || token === "recaptcha-unavailable") { 32717 return { 32718 success: true, 32719 error: false, 32720 errorMessage: null 32721 }; 32722 } 32723 try { 32724 const config = /* @__PURE__ */ useRuntimeConfig(); 32725 const baseURL2 = config.public.apiBaseURL || config.public.apiBaseUrl || "https://localhost:7283/api"; 32726 const response = await axios.post( 32727 `${baseURL2}/tooling/submit/recaptcha`, 32728 { 32729 responseToken: token 32730 } 32731 ); 32732 return { 32733 success: ((_a = response.data) == null ? void 0 : _a.success) || false, 32734 error: false, 32735 errorMessage: null 32736 }; 32737 } catch (err) { 32738 try { 32739 const { $appInsights } = useNuxtApp(); 32740 if ($appInsights && typeof $appInsights.trackException === "function") { 32741 $appInsights.trackException({ 32742 exception: err, 32743 properties: { 32744 location: "useRecaptcha-composable", 32745 action: "verification-error", 32746 token: token ? "provided" : "missing", 32747 errorMessage: err.message 32748 } 32749 }); 32750 } 32751 } catch (e) { 32752 } 32753 return { 32754 success: false, 32755 error: true, 32756 errorMessage: err.message || "Verification failed" 32757 }; 32758 } 32759 }; 32760 const handleRecaptcha = async (action = "submit") => { 32761 const executeResult = await executeRecaptcha(action); 32762 if (!executeResult.success) { 32763 return { 32764 success: false, 32765 error: true, 32766 errorMessage: executeResult.error 32767 }; 32768 } 32769 return await verifyRecaptcha(executeResult.token); 32770 }; 32771 onMounted(() => { 32772 { 32773 setTimeout(() => { 32774 initializeRecaptcha(); 32775 }, 100); 32776 } 32777 }); 32778 return { 32779 // State 32780 isLoaded: readonly(isLoaded), 32781 isLoading: readonly(isLoading), 32782 isReady: readonly(isReady), 32783 error: readonly(error), 32784 // Methods 32785 initializeRecaptcha, 32786 executeRecaptcha, 32787 verifyRecaptcha, 32788 handleRecaptcha 32789 }; 32790}; 32791const _sfc_main$4k = /* @__PURE__ */ defineComponent({ 32792 directives: { 32793 maska: k2 32794 }, 32795 components: { 32796 Form, 32797 Field 32798 }, 32799 props: { 32800 settings: { 32801 type: Object, 32802 required: true 32803 }, 32804 dataSite: { 32805 type: Object, 32806 default: () => { 32807 } 32808 }, 32809 isEditable: { 32810 type: Boolean, 32811 default: false 32812 } 32813 }, 32814 setup() { 32815 provide(SCROLL_ANIMATION_EXCLUDED_KEY, true); 32816 const store = useStore(); 32817 const { state } = store; 32818 const config = /* @__PURE__ */ useRuntimeConfig(); 32819 const baseURL2 = config.public.apiBaseURL || config.public.apiBaseUrl || "https://localhost:7283/api"; 32820 veeValidateRules(); 32821 const { 32822 isReady: recaptchaReady, 32823 handleRecaptcha, 32824 executeRecaptcha, 32825 error: recaptchaError 32826 } = useRecaptcha(); 32827 const leadFormOptimization = computed(() => { 32828 var _a, _b; 32829 return ((_b = (_a = state == null ? void 0 : state.settings) == null ? void 0 : _a.featureFlags) == null ? void 0 : _b.leadFormOptimization) || false; 32830 }); 32831 const recaptchaHardening = computed( 32832 () => { 32833 var _a, _b; 32834 return ((_b = (_a = state == null ? void 0 : state.settings) == null ? void 0 : _a.featureFlags) == null ? void 0 : _b.RecaptchaHardening) || false; 32835 } 32836 ); 32837 return { 32838 baseURL: baseURL2, 32839 recaptchaReady, 32840 handleRecaptcha, 32841 executeRecaptcha, 32842 recaptchaError, 32843 leadFormOptimization, 32844 recaptchaHardening 32845 }; 32846 }, 32847 data() { 32848 return { 32849 formValidationId: null, 32850 form: { 32851 // fields that are always included 32852 firstName: null, 32853 lastName: null, 32854 address: null, 32855 city: null, 32856 state: null, 32857 zip: null, 32858 emailAddress: null, 32859 phoneNumber: null, 32860 birthDate: null, 32861 // fields that are toggled on 32862 openText1: null, 32863 openText2: null, 32864 openText3: null, 32865 openText4: null, 32866 openText5: null, 32867 languagePref: null, 32868 bestTimeToCall: null, 32869 contactMethod: null, 32870 linkedinUrl: null, 32871 leadConcerns: [], 32872 // tells us where the lead came from i.e. google, bing, direct 32873 leadSource: "FUSION", 32874 // always fusion 32875 sourceCode: null, 32876 // values here: https://fusion92.sharepoint.com/:x:/s/NewYorkLife/EXkXq09zb4BFl-3OFknfg88BOrs99Jvk3YupzWfT5KWX2w 32877 leadProcessType: null, 32878 // agentPersWeb, goWeb, goWebRec 32879 campaignProgramCode: null, 32880 // C4, A2 32881 campaignCode: null 32882 // PAW667, PGW668, UL0235 32883 }, 32884 status: null, 32885 // null, "success", "fail" 32886 stateOptions: [ 32887 { value: "AL", text: "AL" }, 32888 { value: "AK", text: "AK" }, 32889 { value: "AZ", text: "AZ" }, 32890 { value: "AR", text: "AR" }, 32891 { value: "CA", text: "CA" }, 32892 { value: "CO", text: "CO" }, 32893 { value: "CT", text: "CT" }, 32894 { value: "DC", text: "DC" }, 32895 { value: "DE", text: "DE" }, 32896 { value: "FL", text: "FL" }, 32897 { value: "GA", text: "GA" }, 32898 { value: "HI", text: "HI" }, 32899 { value: "ID", text: "ID" }, 32900 { value: "IL", text: "IL" }, 32901 { value: "IN", text: "IN" }, 32902 { value: "IA", text: "IA" }, 32903 { value: "KS", text: "KS" }, 32904 { value: "KY", text: "KY" }, 32905 { value: "LA", text: "LA" }, 32906 { value: "ME", text: "ME" }, 32907 { value: "MD", text: "MD" }, 32908 { value: "MA", text: "MA" }, 32909 { value: "MI", text: "MI" }, 32910 { value: "MN", text: "MN" }, 32911 { value: "MS", text: "MS" }, 32912 { value: "MO", text: "MO" }, 32913 { value: "MT", text: "MT" }, 32914 { value: "NE", text: "NE" }, 32915 { value: "NV", text: "NV" }, 32916 { value: "NH", text: "NH" }, 32917 { value: "NJ", text: "NJ" }, 32918 { value: "NM", text: "NM" }, 32919 { value: "NY", text: "NY" }, 32920 { value: "NC", text: "NC" }, 32921 { value: "ND", text: "ND" }, 32922 { value: "OH", text: "OH" }, 32923 { value: "OK", text: "OK" }, 32924 { value: "OR", text: "OR" }, 32925 { value: "PA", text: "PA" }, 32926 { value: "RI", text: "RI" }, 32927 { value: "SC", text: "SC" }, 32928 { value: "SD", text: "SD" }, 32929 { value: "TN", text: "TN" },
32930 { value: "TX", text: "TX" }, 32931 { value: "UT", text: "UT" }, 32932 { value: "VT", text: "VT" }, 32933 { value: "VA", text: "VA" }, 32934 { value: "WA", text: "WA" }, 32935 { value: "WV", text: "WV" }, 32936 { value: "WI", text: "WI" }, 32937 { value: "WY", text: "WY" } 32938 ], 32939 stateSelectIsOpen: null, 32940 contactTimeOptions: [ 32941 { value: "Morning", text: "Morning" }, 32942 { value: "Afternoon", text: "Afternoon" }, 32943 { value: "Evening", text: "Evening" } 32944 ], 32945 contactMethodOptions: [ 32946 { value: "Email", text: "Email" }, 32947 { value: "Phone", text: "Phone" } 32948 ], 32949 languageOptions: [ 32950 { value: "English", text: "English" }, 32951 { value: "Cantonese", text: "Cantonese" }, 32952 { value: "Farsi", text: "Farsi" }, 32953 { value: "French", text: "French" }, 32954 { value: "Fukienese", text: "Fukienese" }, 32955 { value: "German", text: "German" }, 32956 { value: "Gujarati", text: "Gujarati" }, 32957 { value: "Hebrew", text: "Hebrew" }, 32958 { value: "Hindi", text: "Hindi" }, 32959 { value: "Japanese", text: "Japanese" }, 32960 { value: "Korean", text: "Korean" }, 32961 { value: "Lao", text: "Lao" }, 32962 { value: "Mandarin", text: "Mandarin" }, 32963 { value: "Polish", text: "Polish" }, 32964 { value: "Portuguese", text: "Portuguese" }, 32965 { value: "Punjabi", text: "Punjabi" }, 32966 { value: "Russian", text: "Russian" }, 32967 { value: "Shanghainese", text: "Shanghainese" }, 32968 { value: "Spanish", text: "Spanish" }, 32969 { value: "Tagalog", text: "Tagalog" }, 32970 { value: "Taiwanese", text: "Taiwanese" }, 32971 { value: "Urdu", text: "Urdu" }, 32972 { value: "Vietnamese", text: "Vietnamese" } 32973 ], 32974 userAge: null, 32975 selectedState: "" 32976 }; 32977 }, 32978 computed: { 32979 formType() { 32980 return this.settings.formType; 32981 }, 32982 hasInterestFields() { 32983 var _a; 32984 if (this.settings.formType !== "agentNewsletter") { 32985 return (_a = this.settings) == null ? void 0 : _a.interestsFieldset; 32986 } 32987 return false; 32988 }, 32989 interestOptions() { 32990 if (this.hasInterestFields) { 32991 if (this.settings.formType === "goConsumer" || this.settings.formType === "agentConsumer" || this.settings.formType === "agentCustom" || this.settings.formType === "goCustom") { 32992 return [ 32993 { value: "Life Insurance" }, 32994 { 32995 value: "Retirement Planning" 32996 }, 32997 { 32998 value: "Retirement and Other Savings" 32999 }, 33000 { 33001 value: "Estate, Trust & Legacy Planning" 33002 } 33003 ]; 33004 } 33005 if (this.settings.formType === "goRecruiter") { 33006 return [ 33007 { 33008 value: "Financial Professional" 33009 }, 33010 { value: "College Intern" }, 33011 { value: "Fast Track" }, 33012 { value: "Management" } 33013 ]; 33014 } 33015 } 33016 return []; 33017 }, 33018 hasAddressFields() { 33019 if (this.formType === "agentNewsletter" || this.formType === "agentCustom") { 33020 return false; 33021 } 33022 return true; 33023 }, 33024 hasPhoneFields() { 33025 if (this.formType === "agentNewsletter") { 33026 return false; 33027 } 33028 return true; 33029 }, 33030 isPhoneRequired() { 33031 if (this.formType === "goCustom") { 33032 return true; 33033 } 33034 return this.requireContactMethod || !this.form.emailAddress && this.formType === "agentCustom"; 33035 }, 33036 isEmailRequired() { 33037 return this.formType === "goCustom" || this.formType === "agentNewsletter" || this.requireContactMethod || !this.form.phoneNumber && this.formType === "agentCustom"; 33038 }, 33039 hasLanguageFields() { 33040 var _a; 33041 if (this.formType === "agentNewsletter") { 33042 return false; 33043 } 33044 return !!((_a = this.settings) == null ? void 0 : _a.languageFieldset); 33045 }, 33046 hasBestTimeFields() { 33047 var _a; 33048 if (this.formType === "agentNewsletter") { 33049 return false; 33050 } 33051 return !!((_a = this.settings) == null ? void 0 : _a.bestTimeFieldset); 33052 }, 33053 hasBestMethodFields() { 33054 var _a; 33055 if (this.formType === "agentNewsletter") { 33056 return false;
33057 } 33058 return !!((_a = this.settings) == null ? void 0 : _a.bestMethodFieldset); 33059 }, 33060 hasLinkedinFields() { 33061 var _a; 33062 if (this.formType === "agentNewsletter") { 33063 return false; 33064 } 33065 return !!((_a = this.settings) == null ? void 0 : _a.linkedinFieldset); 33066 }, 33067 hasBirthDateFields() { 33068 if (this.formType === "agentNewsletter") { 33069 return false; 33070 } 33071 return this.formType === "goConsumer" || this.formType === "agentConsumer" || this.formType === "goCustom"; 33072 }, 33073 hasOpenTextFields() { 33074 var _a, _b, _c, _d, _e; 33075 if (this.formType === "agentNewsletter") { 33076 return false; 33077 } 33078 return { 33079 1: !!((_a = this.settings) == null ? void 0 : _a.openTextFieldset1), 33080 2: !!((_b = this.settings) == null ? void 0 : _b.openTextFieldset2), 33081 3: !!((_c = this.settings) == null ? void 0 : _c.openTextFieldset3), 33082 4: !!((_d = this.settings) == null ? void 0 : _d.openTextFieldset4), 33083 5: !!((_e = this.settings) == null ? void 0 : _e.openTextFieldset5) 33084 }; 33085 }, 33086 openTextFieldLabel() { 33087 return (type) => { 33088 var _a, _b, _c, _d, _e; 33089 switch (type) { 33090 case 2: 33091 return ((_a = this.settings) == null ? void 0 : _a.openTextLabel2) || ""; 33092 case 3: 33093 return ((_b = this.settings) == null ? void 0 : _b.openTextLabel3) || ""; 33094 case 4: 33095 return ((_c = this.settings) == null ? void 0 : _c.openTextLabel4) || ""; 33096 case 5: 33097 return ((_d = this.settings) == null ? void 0 : _d.openTextLabel5) || ""; 33098 default: 33099 return ((_e = this.settings) == null ? void 0 : _e.openTextLabel1) || ""; 33100 } 33101 }; 33102 }, 33103 marketerNumber() { 33104 var _a, _b; 33105 if (this.formType === "goConsumer" || this.formType === "goRecruiter") { 33106 return null; 33107 } 33108 return ((_b = (_a = this.dataSite.user) == null ? void 0 : _a.ddcUserData) == null ? void 0 : _b.marketerNo) || null; 33109 }, 33110 orgUnitCD() { 33111 var _a, _b, _c; 33112 if (this.formType === "agentCustom" || this.formType === "agentConsumer" || this.formType === "agentNewsletter") { 33113 return null; 33114 } 33115 const orgUnitCode = (_a = this.dataSite.organization) == null ? void 0 : _a.tenantOrgId; 33116 const ddcUserUnitCode = (_c = (_b = this.dataSite.user) == null ? void 0 : _b.ddcUserData) == null ? void 0 : _c.orgUnitCode; 33117 return orgUnitCode || ddcUserUnitCode || null; 33118 }, 33119 requireContactMethod() { 33120 if (this.formType === "agentConsumer" || this.formType === "goRecruiter" || this.formType === "goConsumer") { 33121 return true; 33122 } 33123 return false; 33124 }, 33125 onSuccessMessage() { 33126 if (this.formType === "goRecruiter") { 33127 return "Thank you for your interest in joining our team at New York Life. A member of our team will c
33127ontact you soon."; 33128 } 33129 if (this.formType === "agentNewsletter") { 33130 return "Thank you for reaching out and signing up for our newsletter."; 33131 } 33132 return "Thank you for reaching out. A member of our team will contact you soon."; 33133 } 33134 }, 33135 watch: { 33136 form(val) { 33137 this.form = val.replace(/\W/g, ""); 33138 } 33139 }, 33140 created() { 33141 this.formValidationId = this.generateId(); 33142 }, 33143 methods: { 33144 statusAnnouncement() { 33145 if (this.status === "pending") { 33146 return "Submitting form, one moment..."; 33147 } 33148 if (this.status === "success") { 33149 return this.onSuccessMessage; 33150 } 33151 if (this.status === "fail") { 33152 return "There was problem submitting your form."; 33153 } 33154 return ""; 33155 }, 33156 scrollFormToTop() { 33157 var _a; 33158 if (typeof window === "undefined") { 33159 return; 33160 } 33161 (_a = this.$refs.formBlockRef) == null ? void 0 : _a.scrollIntoView({ 33162 behavior: "smooth", 33163 block: "start", 33164 inline: "start" 33165 }); 33166 }, 33167 async submit() { 33168 var _a, _b; 33169 const validResult = await this.$refs.observer.validate(); 33170 if (!validResult.valid) { 33171 if (this.leadFormOptimization) { 33172 await ((_b = (_a = this.$refs.dynamicForm) == null ? void 0 : _a.focusFirstInvalidField) == null ? void 0 : _b.call( 33173 _a, 33174 validResult.errors 33175 )); 33176 } 33177 return; 33178 } 33179 this.GTMForm(); 33180 let isFormSubmitable = false; 33181 let success = false; 33182 let token = null; 33183 if (this.recaptchaHardening) { 33184 const { success: recaptchaSuccess, token: recaptchaToken } = await this.executeRecaptcha("form"); 33185 isFormSubmitable = recaptchaSuccess && recaptchaToken; 33186 success = recaptchaSuccess; 33187 token = recaptchaToken; 33188 } else { 33189 const { success: recaptchaSuccess, error: recaptchaError } = await this.handleRecaptcha("form"); 33190 isFormSubmitable = recaptchaSuccess || recaptchaError; 33191 success = recaptchaSuccess; 33192 } 33193 if (isFormSubmitable) { 33194 await this.submitForm(token); 33195 } else if (success === false) { 33196 console.log("Form is not submitable, recaptcha not successful"); 33197 } 33198 }, 33199 async submitForm(token = null) { 33200 this.scrollFormToTop(); 33201 this.status = "pending"; 33202 try { 33203 const payload = { 33204 ...this.form, 33205 marketerNumber: this.marketerNumber, 33206 orgUnitCD: this.orgUnitCD, 33207 siteId: this.dataSite.id, 33208 acf2id: this.acf2id, 33209 formType: this.formType, 33210 referrer: document.referrer 33211 }; 33212 if (token) { 33213 payload.recaptchaToken = token; 33214 } 33215 payload.customFields = []; 33216 if (payload.zip) 33217 payload.zip = payload.zip.match(/\d+/g).join(""); 33218 if (payload.phoneNumber) 33219 payload.phoneNumber = payload.phoneNumber.match(/\d+/g).join(""); 33220 if (payload.openText1) { 33221 payload.customFields.push({ 33222 id: "1", 33223 label: this.openTextFieldLabel(1), 33224 value: payload.openText1 33225 }); 33226 } 33227 if (payload.openText2) { 33228 payload.customFields.push({ 33229 id: "2", 33230 label: this.openTextFieldLabel(2), 33231 value: payload.openText2 33232 }); 33233 } 33234 if (payload.openText3) { 33235 payload.customFields.push({ 33236 id: "3", 33237 label: this.openTextFieldLabel(3), 33238 value: payload.openText3 33239 }); 33240 } 33241 if (payload.openText4) { 33242 payload.customFields.push({ 33243 id: "4", 33244 label: this.openTextFieldLabel(4), 33245 value: payload.openText4 33246 }); 33247 } 33248 if (payload.openText5) { 33249 payload.customFields.push({ 33250 id: "5", 33251 label: this.openTextFieldLabel(5), 33252 value: payload.openText5 33253 }); 33254 } 33255 if (this.formType === "agentNewsletter") { 33256 payload.customFields = [ 33257 { 33258 id: "1", 33259 label: "call to action", 33260 value: "newsletter" 33261 } 33262 ]; 33263 } 33264 if (payload.leadConcerns) { 33265 const interestString = payload.leadConcerns.join(";"); 33266 payload.leadConcerns = interestString; 33267 } 33268 delete payload.openText1; 33269 delete payload.openText2; 33270 delete payload.openText3; 33271 delete payload.openText4; 33272 delete payload.openText5; 33273 const response = await axios.post( 33274 `${this.baseURL}
33274/leads/submit`, 33275 payload 33276 ); 33277 if (response.status === 200) { 33278 this.status = "success"; 33279 } else { 33280 this.status = "fail"; 33281 } 33282 } catch { 33283 this.status = "fail"; 33284 } 33285 }, 33286 preventAngleBracket(event) { 33287 if (/<|>/gi.test(event.key)) { 33288 event.preventDefault(); 33289 } 33290 }, 33291 GTMForm() { 33292 var _a; 33293 this.$gtm.push({ 33294 event: "nyl-form", 33295 lead_form: this.formType, 33296 lead_form_long: ((_a = this.dataSite) == null ? void 0 : _a.user.displayName) || "", 33297 lead_form_category: this.getLeadFormCategory(this.formType) 33298 }); 33299 }, 33300 getLeadFormCategory(formType) { 33301 let category = ""; 33302 switch (formType) { 33303 case "agentNewsletter": 33304 case "agentConsumer": 33305 case "agentCustom": 33306 category = "Customer"; 33307 break; 33308 default: 33309 category = formType; 33310 } 33311 return category; 33312 }, 33313 checkOpenTextFields(type) { 33314 if (this.formType !== "agentCustom" && this.formType !== "goCustom") { 33315 return false; 33316 } 33317 return this.hasOpenTextFields[type]; 33318 }, 33319 generateId(length = 4, otherIds = []) { 33320 let flag = true; 33321 while (flag) { 33322 const letters = "bcdfghjkmnpqrstvwxyz"; 33323 const characters = letters + "23456789"; 33324 let id = letters[Math.floor(Math.random() * letters.length)]; 33325 for (let i = 1; i < length; i++) { 33326 id += characters[Math.floor(Math.random() * characters.length)]; 33327 } 33328 if (otherIds.includes(id)) { 33329 continue; 33330 } 33331 flag = false; 33332 return id; 33333 } 33334 } 33335 } 33336}); 33337const _hoisted_1$4e = { 33338 ref: "formBlockRef", 33339 class: "block__body" 33340}; 33341const _hoisted_2$3R = { class: "container" }; 33342const _hoisted_3$v = ["aria-live", "role"]; 33343const _hoisted_4$n = { 33344 key: 0, 33345 class: "form--pending" 33346}; 33347const _hoisted_5$l = { 33348 key: 1, 33349 class: "form_success" 33350}; 33351const _hoisted_6$e = { 33352 key: 2, 33353 class: "form--fail" 33354}; 33355const _hoisted_7$b = { 33356 key: 3, 33357 class: "form" 33358}; 33359const _hoisted_8$a = ["onSubmit"]; 33360const _hoisted_9$8 = { class: "row" }; 33361const _hoisted_10$7 = { class: "col" }; 33362const _hoisted_11$6 = ["aria-invalid"]; 33363const _hoisted_12$6 = { 33364 key: 0, 33365 id: "error-first-name", 33366 class: "text-error", 33367 "aria-live": "assertive" 33368}; 33369const _hoisted_13$6 = { class: "col" }; 33370const _hoisted_14$6 = ["aria-invalid"]; 33371const _hoisted_15$6 = { 33372 key: 0, 33373 id: "error-last-name", 33374 class: "text-error", 33375 "aria-live": "assertive" 33376}; 33377const _hoisted_16$6 = { class: "row" }; 33378const _hoisted_17$5 = { class: "col" }; 33379const _hoisted_18$5 = ["aria-invalid"]; 33380const _hoisted_19$5 = { 33381 key: 0, 33382 id: "error-street-address", 33383 class: "text-error", 33384 "aria-live": "assertive" 33385}; 33386const _hoisted_20$3 = { class: "row" }; 33387const _hoisted_21$2 = { class: "col-6" }; 33388const _hoisted_22$1 = ["aria-invalid"]; 33389const _hoisted_23$1 = { 33390 key: 0, 33391 id: "error-city", 33392 class: "text-error", 33393 "aria-live": "assertive" 33394}; 33395const _hoisted_24$1 = { class: "col-6" }; 33396const _hoisted_25$1 = { 33397 key: 0, 33398 id: "error-state", 33399 class: "text-error", 33400 "aria-live": "assertive" 33401}; 33402const _hoisted_26$1 = { class: "col-6" }; 33403const _hoisted_27$1 = ["aria-invalid", "onBlur"]; 33404const _hoisted_28$1 = { 33405 key: 0, 33406 id: "error-zipcode", 33407 class: "text-error", 33408 "aria-live": "assertive" 33409}; 33410const _hoisted_29$1 = { 33411 key: 0, 33412 class: "col-6" 33413}; 33414const _hoisted_30$1 = ["aria-required", "aria-invalid", "onBlur"]; 33415const _hoisted_31$1 = { 33416 key: 0, 33417 id: "error-phoneNumber", 33418 class: "text-error", 33419 "aria-live": "assertive" 33420}; 33421const _hoisted_32$1 = { class: "row" }; 33422const _hoisted_33$1 = { class: "col" }; 33423const _hoisted_34$1 = ["aria-required", "aria-invalid"]; 33424const _hoisted_35$1 = { 33425 key: 0, 33426 id: "error-emailAddress", 33427 class: "text-error", 33428 "aria-live": "assertive" 33429}; 33430const _hoisted_36$1 = { 33431 key: 0, 33432 class: "col-6" 33433}; 33434const _hoisted_37 = ["aria-required", "aria-invalid", "onBlur"]; 33435const _hoisted_38 = { 33436 key: 0, 33437 id: "error-phoneNumber", 33438 class: "text-error", 33439 "aria-live": "assertive" 33440}; 33441const _hoisted_39 = { class: "row" }; 33442const _hoisted_40 = { 33443 key: 0, 33444 class: "col-6" 33445}; 33446const _hoisted_41 = { class: "birthContainer" }; 33447const _hoisted_42 = { class: "birthContainer-block" }; 33448const _hoisted_43 = ["aria-invalid", "onBlur"]; 33449const _hoisted_44 = { 33450 class: "icon-only cursor-help birthdate-icon", 33451 title: "This helps us understand your immediate needs." 33452}; 33453const _hoisted_45 = { 33454 key: 0, 33455 id: "error-birthDate", 33456 class: "text-error", 33457 "aria-live": "assertive" 33458}; 33459const _hoisted_46 = { 33460 key: 1, 33461 class: "col-6" 33462}; 33463const _hoisted_47 = { 33464 key: 2, 33465 class: "col-6" 33466}; 33467const _hoisted_48 = { 33468 key: 3, 33469 class: "col-6" 33470}; 33471const _hoisted_49 = { 33472 key: 4, 33473 class: "col-6" 33474}; 33475const _hoisted_50 = ["aria-invalid"]; 33476const _hoisted_51 = { 33477 key: 0, 33478 id: "error-linkin-url", 33479 class: "text-error", 33480 "aria-live": "assertive" 33481}; 33482const _hoisted_52 = { 33483 key: 1, 33484 class: "row row--interests" 33485}; 33486const _hoisted_53 = { class: "col" }; 33487const _hoisted_54 = ["for"]; 33488const _hoisted_55 = { class: "interests-container" }; 33489const _hoisted_56 = ["id", "aria-checked", "value"]; 33490const _hoisted_57 = { class: "interests-label" }; 33491const _hoisted_58 = { class: "col" }; 33492const _hoisted_59 = ["for"]; 33493const _hoisted_60 = ["id", "aria-invalid", "aria-errormessage", "name"]; 33494const _hoisted_61 = ["id"]; 33495const _hoisted_62 = { 33496 key: 2, 33497 class: "row" 33498}; 33499const _hoisted_63 = { class: "col submit-button" }; 33500const _hoisted_64 = { class: "form__debug" }; 33501const _hoisted_65 = { key: 0 }; 33502const _hoisted_66 = { key: 1 }; 33503function _sfc_render$3N(_ctx, _cache, $props, $setup, $data, $options) { 33504 const _component_CoreIconCircleCheck = __nuxt_component_0$c; 33505 const _component_CoreBlock = _sfc_main$4x; 33506 const _component_CoreIconError = __nuxt_component_2$4; 33507 const _component_CoreBlockDynamicForm = __nuxt_component_3$4;
33508 const _component_Field = resolveComponent("Field"); 33509 const _component_CoreBlockSelect = __nuxt_component_4$2; 33510 const _component_CoreIconInfo = __nuxt_component_5$1; 33511 const _component_Form = resolveComponent("Form"); 33512 const _component_ClientOnly = __nuxt_component_3$3; 33513 const _directive_maska = resolveDirective("maska"); 33514 return openBlock(), createElementBlock("div", _hoisted_1$4e, [ 33515 createBaseVNode("div", _hoisted_2$3R, [ 33516 createBaseVNode("div", { 33517 class: "form-status-announcer", 33518 "aria-live": _ctx.status === "fail" ? "assertive" : "polite", 33519 role: _ctx.status === "fail" ? "alert" : "status", 33520 "aria-atomic": "true" 33521 }, toDisplayString(_ctx.statusAnnouncement()), 9, _hoisted_3$v), 33522 _ctx.status === "pending" ? (openBlock(), createElementBlock("div", _hoisted_4$n, _cache[32] || (_cache[32] = [ 33523 createBaseVNode("p", null, "Submitting form, one moment...", -1), 33524 createBaseVNode("progress", null, null, -1) 33525 ]))) : _ctx.status === "success" ? (openBlock(), createElementBlock("div", _hoisted_5$l, [ 33526 createVNode(_component_CoreIconCircleCheck, { class: "form_success-check" }), 33527 createVNode(_component_CoreBlock, { 33528 "is-editable": _ctx.isEditable, 33529 settings: { 33530 type: "text", 33531 text: _ctx.onSuccessMessage, 33532 tag: "h4" 33533 } 33534 }, null, 8, ["is-editable", "settings"]) 33535 ])) : _ctx.status === "fail" ? (openBlock(), createElementBlock("div", _hoisted_6$e, [ 33536 createVNode(_component_CoreIconError, { class: "fail-icon" }), 33537 createVNode(_component_CoreBlock, { 33538 "is-editable": _ctx.isEditable, 33539 settings: { 33540 type: "text", 33541 text: "There was problem submitting your form.", 33542 tag: "h4" 33543 } 33544 }, null, 8, ["is-editable"]) 33545 ])) : (openBlock(), createElementBlock("div", _hoisted_7$b, [ 33546 createVNode(_component_ClientOnly, null, { 33547 default: withCtx(() => [ 33548 (openBlock(), createBlock(_component_Form, { 33549 key: _ctx.formValidationId, 33550 ref: "observer", 33551 onSubmit: _ctx.submit 33552 }, { 33553 default: withCtx(({ handleSubmit }) => [ 33554 createBaseVNode("form", { 33555 onSubmit: withModifiers(($event) => handleSubmit($event), ["prevent"]) 33556 }, [ 33557 _ctx.leadFormOptimization ? (openBlock(), createBlock(_component_CoreBlockDynamicForm, { 33558 key: 0, 33559 ref: "dynamicForm", 33560 form: _ctx.form, 33561 settings: _ctx.settings, 33562 "is-editable": _ctx.isEditable, 33563 onSubmit: _ctx.submit 33564 }, null, 8, ["form", "settings", "is-editable", "onSubmit"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [ 33565 createBaseVNode("div", _hoisted_9$8, [ 33566 createBaseVNode("div", _hoisted_10$7, [ 33567 createVNode(_component_Field, { 33568 modelValue: _ctx.form.firstName, 33569 "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => _ctx.form.firstName = $event), 33570 modelModifiers: { trim: true }, 33571 rules: { 33572 max: 31, 33573 required: true 33574 }, 33575 class: "col", 33576 name: "First Name", 33577 vid: `first-name-form:${_ctx.formValidationId}`, 33578 tag: "div", 33579 "validate-on-input": "" 33580 }, { 33581 default: withCtx(({ field, errors }) => [ 33582 _cache[33] || (_cache[33] = createBaseVNode("label", { 33583 for: "first-name", 33584 class: "required" 33585 }, " First Name ", -1)), 33586 createBaseVNode("input", mergeProps({ id: "first-name" }, field, { 33587 "aria-required": "true", 33588 "aria-invalid": errors.length > 0, 33589 "aria-errormessage": "error-first-name", 33590 type: "text", 33591 name: "first-name", 33592 autocomplete: "off", 33593 class: { 33594 "bd-error": errors.length 33595 }, 33596 onKeydown: _cache[0] || (_cache[0] = ($event) => _ctx.preventAngleBracket($event)) 33597 }), null, 16, _hoisted_11$6), 33598 errors ? (openBlock(), createElementBlock("small", _hoisted_12$6, toDisplayString(errors[0]), 1)) : createCommentVNode("", true) 33599 ]), 33600 _: 1 33601 }, 8, ["modelValue", "vid"]) 33602 ]), 33603 createBaseVNode("div", _hoisted_13$6, [ 33604 createVNode(_component_Field, { 33605 modelValue: _ctx.form.lastName, 33606 "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => _ctx.form.lastName = $event), 33607 modelModifiers: { trim: true }, 33608 rules: { 33609 max: 31, 33610 required: true 33611 }, 33612 class: "col", 33613 name: "Last Name", 33614 vid: `last-name-form:${_ctx.formValidationId}`, 33615 tag: "div", 33616 "validate-on-input": "" 33617 }, { 33618 default: withCtx(({ field, errors }) => [ 33619 _cache[34] || (_cache[34] = createBaseVNode("label", { 33620 for: "last-name", 33621 class: "required" 33622 }, " Last Name ", -1)), 33623 createBaseVNode("input", mergeProps({ id: "last-name" }, field, { 33624 "aria-required": "true", 33625 "aria-invalid": errors.length > 0, 33626 "aria-errormessage": "error-last-name", 33627 class: ["form-input", { 33628 "bd-error": errors.length 33629 }], 33630 type: "text", 33631 name: "last-name", 33632 autocomplete: "off", 33633 onKeydown: _cache[2] || (_cache[2] = ($event) => _ctx.preventAngleBracket($event)) 33634 }), null, 16, _hoisted_14$6), 33635 errors ? (openBlock(), createElementBlock("small", _hoisted_15$6, toDisplayString(errors[0]), 1)) : createCommentVNode("", true) 33636 ]), 33637 _: 1 33638 }, 8, ["modelValue", "vid"]) 33639 ]) 33640 ]), 33641 _ctx.hasAddressFields ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [ 33642 createBaseVNode("div", _hoisted_16$6, [ 33643 createBaseVNode("div", _hoisted_17$5, [ 33644 createVNode(_component_Field, { 33645 modelValue: _ctx.form.address, 33646 "onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => _ctx.form.address = $event), 33647 modelModifiers: { trim: true }, 33648 rules: { 33649 max: 31, 33650 required: true 33651 }, 33652 name: "Street Address", 33653 vid: `street-address-form:${_ctx.formValidationId}`, 33654 tag: "div", 33655 "validate-on-input": "" 33656 }, { 33657 default: withCtx(({ field, errors }) => [ 33658 _cache[35] || (_cache[35] = createBaseVNode("label", { 33659 for: "street-address", 33660 class: "required" 33661 }, " Street Address ", -1)), 33662 createBaseVNode("input", mergeProps({ id: "street-address" }, field, { 33663 "aria-required": "true", 33664 "aria-invalid": errors.length > 0, 33665 "aria-errormessage": "error-street-address", 33666 class: ["form-input", { 33667 "bd-error": errors.length 33668 }], 33669 type: "text", 33670 name: "street-address", 33671 autocomplete: "off", 33672 onKeydown: _cache[4] || (_cache[4] = ($event) => _ctx.preventAngleBracket( 33673 $event 33674 )) 33675 }), null, 16, _hoisted_18$5), 33676 errors ? (openBlock(), createElementBlock("small", _hoisted_19$5, toDisplayString(errors[0]), 1)) : createCommentVNode("", true) 33677 ]), 33678 _: 1 33679 }, 8, ["modelValue", "vid"]) 33680 ]) 33681 ]), 33682 createBaseVNode("div", _hoisted_20$3, [ 33683 createBaseVNode("div", _hoisted_21$2, [ 33684 createVNode(_component_Field, { 33685 modelValue: _ctx.form.city, 33686 "onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => _ctx.form.city = $event), 33687 modelModifiers: { trim: true }, 33688 rules: { 33689 max: 31, 33690 required: true 33691 }, 33692 class: "col-6", 33693 name: "City", 33694 vid: `city-form:${_ctx.formValidationId}`, 33695 tag: "div", 33696 "validate-on-input": "" 33697 }, { 33698 default: withCtx(({ field, errors }) => [ 33699 _cache[36] || (_cache[36] = createBaseVNode("label", { 33700 for: "city", 33701 class: "required" 33702 }, " City ", -1)), 33703 createBaseVNode("input", mergeProps({ id: "city" }, field, { 33704 "aria-required": "true", 33705 "aria-invalid": errors.length > 0, 33706 "aria-errormessage": "error-city", 33707 class: ["form-input", { 33708 "bd-error": errors.length 33709 }], 33710 type: "text", 33711 name: "city", 33712 autocomplete: "off", 33713 onKeydown: _cache[6] || (_cache[6] = ($event) => _ctx.preventAngleBracket( 33714 $event 33715 )) 33716 }), null, 16, _hoisted_22$1), 33717 errors ? (openBlock(), createElementBlock("small", _hoisted_23$1, toDisplayString(errors[0]), 1)) : createCommentVNode("", true) 33718 ]), 33719 _: 1 33720 }, 8, ["modelValue", "vid"]) 33721 ]), 33722 createBaseVNode("div", _hoisted_24$1, [ 33723 createVNode(_component_Field, { 33724 modelValue: _ctx.form.state, 33725 "onUpdate:modelValue": _cache[9] || (_cache[9] = ($event) => _ctx.form.state = $event), 33726 modelModifiers: { trim: true }, 33727 rules: { 33728 required: true 33729 }, 33730 class: "col-6", 33731 name: "State", 33732 vid: `state-form:${_ctx.formValidationId}`, 33733 tag: "div", 33734 "validate-on-input": "" 33735 }, { 33736 default: withCtx(({ field, errors }) => [ 33737 _cache[37] || (_cache[37] = createBaseVNode("label", { 33738 for: "state", 33739 class: "required" 33740 }, " State ", -1)), 33741 createVNode(_component_CoreBlockSelect, mergeProps({ id: "state" }, field, { 33742 "model-value": _ctx.form.state, 33743 "aria-required": "true", 33744 "aria-invalid": errors.length > 0, 33745 "aria-label": "State Select", 33746 "aria-errormessage": "error-state", 33747 name: "state", 33748 class: { 33749 "bd-error": errors.length 33750 }, 33751 options: _ctx.stateOptions, 33752 "onUpdate:modelValue": _cache[8] || (_cache[8] = ($event) => _ctx.form.state = $event) 33753 }), null, 16, ["model-value", "aria-invalid", "class", "options"]), 33754 errors ? (openBlock(), createElementBlock("small", _hoisted_25$1, toDisplayString(errors[0]), 1)) : createCommentVNode("", true) 33755 ]), 33756 _: 1 33757 }, 8, ["modelValue", "vid"]) 33758 ]), 33759 createBaseVNode("div", _hoisted_26$1, [ 33760 createVNode(_component_Field, { 33761 modelValue: _ctx.form.zip, 33762 "onUpdate:modelValue": _cache[12] || (_cache[12] = ($event) => _ctx.form.zip = $event), 33763 modelModifiers: { trim: true }, 33764 rules: { 33765 required: true, 33766 max: 10, 33767 zip: true 33768 }, 33769 class: "col-6", 33770 name: "Zip Code", 33771 vid: `zip-code-form:${_ctx.formValidationId}`, 33772 tag: "div", 33773 "validate-on-input": "" 33774 }, { 33775 default: withCtx(({ 33776 field, 33777 errors, 33778 handleBlur 33779 }) => [ 33780 _cache[38] || (_cache[38] = createBaseVNode("label", { 33781 for: "zipcode", 33782 class: "required" 33783 }, " Zip Code ", -1)), 33784 withDirectives(createBaseVNode("input", mergeProps({ id: "zipcode" }, field, { 33785 "onUpdate:modelValue": _cache[10] || (_cache[10] = ($event) => _ctx.form.zip = $event), 33786 "aria-required": "true", 33787 "aria-invalid": errors.length > 0, 33788 "aria-errormessage": "error-zipcode", 33789 class: ["form-input", { 33790 "bd-error": errors.length 33791 }], 33792 type: "text", 33793 autocomplete: "off", 33794 name: "zipcode", 33795 onKeydown: _cache[11] || (_cache[11] = ($event) => _ctx.preventAngleBracket( 33796 $event 33797 )), 33798 onBlur: handleBlur 33799
33799 }), null, 16, _hoisted_27$1), [ 33800 [vModelText, _ctx.form.zip], 33801 [_directive_maska, { 33802 mask: [ 33803 "#####", 33804 "#####-####" 33805 ] 33806 }] 33807 ]), 33808 errors ? (openBlock(), createElementBlock("small", _hoisted_28$1, toDisplayString(errors[0]), 1)) : createCommentVNode("", true) 33809 ]), 33810 _: 1 33811 }, 8, ["modelValue", "vid"]) 33812 ]), 33813 _ctx.hasPhoneFields ? (openBlock(), createElementBlock("div", _hoisted_29$1, [ 33814 createVNode(_component_Field, { 33815 modelValue: _ctx.form.phoneNumber, 33816 "onUpdate:modelValue": _cache[15] || (_cache[15] = ($event) => _ctx.form.phoneNumber = $event), 33817 modelModifiers: { trim: true }, 33818 rules: { 33819 max: 12, 33820 phone: true, 33821 required: _ctx.isPhoneRequired 33822 }, 33823 name: "Phone Number", 33824 vid: `phone-number-form:${_ctx.formValidationId}`, 33825 class: "col-6", 33826 tag: "div", 33827 "validate-on-input": "" 33828 }, { 33829 default: withCtx(({ 33830 field, 33831 errors, 33832 handleBlur 33833 }) => [ 33834 createBaseVNode("label", { 33835 for: "phoneNumber", 33836 class: normalizeClass({ 33837 required: _ctx.isPhoneRequired 33838 }) 33839 }, " Phone Number ", 2), 33840 withDirectives(createBaseVNode("input", mergeProps({ id: "phoneNumber" }, field, { 33841 "onUpdate:modelValue": _cache[13] || (_cache[13] = ($event) => _ctx.form.phoneNumber = $event), 33842 "aria-required": _ctx.isPhoneRequired, 33843 "aria-invalid": errors.length > 0, 33844 "aria-errormessage": "error-phoneNumber", 33845 "data-maska": "###-###-####", 33846 class: ["form-input", { 33847 "bd-error": errors.length 33848 }], 33849 type: "tel", 33850 autocomplete: "off", 33851 name: "phoneNumber", 33852 onKeydown: _cache[14] || (_cache[14] = ($event) => _ctx.preventAngleBracket( 33853 $event 33854 )), 33855 onBlur: handleBlur 33856 }), null, 16, _hoisted_30$1), [ 33857 [ 33858 vModelText, 33859 _ctx.form.phoneNumber 33860 ], 33861 [_directive_maska] 33862 ]), 33863 errors ? (openBlock(), createElementBlock("small", _hoisted_31$1, toDisplayString(errors[0]), 1)) : createCommentVNode("", true) 33864 ]), 33865 _: 1 33866 }, 8, ["modelValue", "rules", "vid"]) 33867 ])) : createCommentVNode("", true) 33868 ]) 33869 ], 64)) : createCommentVNode("", true), 33870 createBaseVNode("div", _hoisted_32$1, [ 33871 createBaseVNode("div", _hoisted_33$1, [ 33872 createVNode(_component_Field, { 33873 modelValue: _ctx.form.emailAddress, 33874 "onUpdate:modelValue": _cache[18] || (_cache[18] = ($event) => _ctx.form.emailAddress = $event), 33875 modelModifiers: { trim: true }, 33876 rules: { 33877 email: true, 33878 required: _ctx.isEmailRequired, 33879 max: 40 33880 }, 33881 class: "col", 33882 name: "Email", 33883 vid: `email-form:${_ctx.formValidationId}`, 33884 tag: "div", 33885 "validate-on-input": "" 33886 }, { 33887 default: withCtx(({ field, errors }) => [ 33888 createBaseVNode("label", { 33889 for: "emailAddress", 33890 class: normalizeClass({ 33891 required: _ctx.isEmailRequired 33892 }) 33893 }, " Email ", 2), 33894 withDirectives(createBaseVNode("input", mergeProps({ id: "emailAddress" }, field, { 33895 "onUpdate:modelValue": _cache[16] || (_cache[16] = ($event) => _ctx.form.emailAddress = $event), 33896 "aria-required": _ctx.isEmailRequired, 33897 "aria-invalid": errors.length > 0, 33898 "aria-errormessage": "error-emailAddress", 33899 class: ["form-input", { 33900 "bd-error": errors.length 33901 }], 33902 type: "email", 33903 name: "emailAddress", 33904 autocomplete: "off", 33905 onKeydown: _cache[17] || (_cache[17] = ($event) => _ctx.preventAngleBracket($event)) 33906 }), null, 16, _hoisted_34$1), [ 33907 [ 33908 vModelText, 33909 _ctx.form.emailAddress, 33910 void 0, 33911 { trim: true } 33912 ] 33913 ]), 33914 errors ? (openBlock(), createElementBlock("small", _hoisted_35$1, toDisplayString(errors[0]), 1)) : createCommentVNode("", true) 33915 ]), 33916 _: 1 33917 }, 8, ["modelValue", "rules", "vid"]) 33918 ]), 33919 _ctx.hasPhoneFields && !_ctx.hasAddressFields ? (openBlock(), createElementBlock("div", _hoisted_36$1, [ 33920 createVNode(_component_Field, { 33921 modelValue: _ctx.form.phoneNumber, 33922 "onUpdate:modelValue": _cache[21] || (_cache[21] = ($event) => _ctx.form.phoneNumber = $event), 33923 modelModifiers: { trim: true }, 33924 rules: { 33925 max: 12, 33926 phone: true, 33927 required: _ctx.isPhoneRequired 33928 }, 33929 name: "Phone Number", 33930 vid: `phone-number-form:${_ctx.formValidationId}`, 33931 class: "col-6", 33932 tag: "div", 33933 "validate-on-input": "" 33934 }, { 33935 default: withCtx(({ 33936 field, 33937 errors, 33938 handleBlur 33939 }) => [ 33940 createBaseVNode("label", { 33941 for: "phoneNumber", 33942 class: normalizeClass({ 33943 required: _ctx.isPhoneRequired 33944 }) 33945 }, " Phone Number ", 2), 33946 withDirectives(createBaseVNode("input", mergeProps({ id: "phoneNumber" }, field, { 33947 "onUpdate:modelValue": _cache[19] || (_cache[19] = ($event) => _ctx.form.phoneNumber = $event), 33948 "aria-required": _ctx.isPhoneRequired, 33949 "aria-invalid": errors.length > 0, 33950 "aria-errormessage": "error-phoneNumber", 33951 "data-maska": "###-###-####", 33952 class: ["form-input", { 33953 "bd-error": errors.length 33954 }], 33955 type: "tel", 33956 autocomplete: "off", 33957 name: "phoneNumber", 33958 onKeydown: _cache[20] || (_cache[20] = ($event) => _ctx.preventAngleBracket( 33959 $event 33960 )), 33961 onBlur: handleBlur 33962 }), null, 16, _hoisted_37), [ 33963 [vModelText, _ctx.form.phoneNumber], 33964 [_directive_maska] 33965 ]), 33966 errors ? (openBlock(), createElementBlock("small", _hoisted_38, toDisplayString(errors[0]), 1)) : createCommentVNode("", true) 33967 ]), 33968 _: 1 33969 }, 8, ["modelValue", "rules", "vid"]) 33970 ])) : createCommentVNode("", true) 33971 ]), 33972 createBaseVNode("div", _hoisted_39, [ 33973 _ctx.hasBirthDateFields ? (openBlock(), createElementBlock("div", _hoisted_40, [ 33974 createVNode(_component_Field, { 33975 modelValue: _ctx.form.birthDate, 33976 "onUpdate:modelValue": _cache[24] || (_cache[24] = ($event) => _ctx.form.birthDate = $event), 33977 modelModifiers: { trim: true }, 33978 rules: { 33979 required: true, 33980 isValidDate: true, 33981 isAdult: true 33982 }, 33983 class: "col-6", 33984 name: "Date of Birth", 33985 vid: `date-of-birth-form:${_ctx.formValidationId}`, 33986 tag: "div", 33987 "validate-on-input": "" 33988 }, { 33989 default: withCtx(({ errors, handleBlur }) => [ 33990 createBaseVNode("div", _hoisted_41, [ 33991 createBaseVNode("div", _hoisted_42, [ 33992 _cache[39] || (_cache[39] = createBaseVNode("label", { 33993 for: "birthDate", 33994 class: "required" 33995 }, " Date of Birth ", -1)), 33996 withDirectives(createBaseVNode("input", { 33997 id: "birthDate", 33998 "onUpdate:modelValue": _cache[22] || (_cache[22] = ($event) => _ctx.form.birthDate = $event), 33999 "aria-required": "true", 34000 "aria-invalid": errors.length > 0, 34001 "aria-errormessage": "error-birthDate", 34002 "data-maska": "##/##/####", 34003 placeholder: "MM/DD/YYYY", 34004 class: normalizeClass(["form-input", { 34005 "bd-error": errors.length 34006 }]), 34007 type: "tel", 34008 autocomplete: "off", 34009 name: "birthDate", 34010 onKeydown: _cache[23] || (_cache[23] = ($event) => _ctx.preventAngleBracket( 34011 $event 34012 )), 34013 onBlur: handleBlur 34014 }, null, 42, _hoisted_43), [ 34015 [ 34016 vModelText, 34017 _ctx.form.birthDate, 34018 void 0, 34019 { trim: true } 34020 ], 34021 [_directive_maska] 34022 ]) 34023 ]), 34024 createBaseVNode("div", _hoisted_44, [ 34025 createVNode(_component_CoreIconInfo) 34026 ]) 34027 ]), 34028 errors ? (openBlock(), createElementBlock("small", _hoisted_45, toDisplayString(errors[0]), 1)) : createCommentVNode("", true) 34029 ]), 34030 _: 1 34031 }, 8, ["modelValue", "vid"]) 34032 ])) : createCommentVNode("", true), 34033 _ctx.hasLanguageFields ? (openBlock(), createElementBlock("div", _hoisted_46, [ 34034 _cache[40] || (_cache[40] = createBaseVNode("label", { for: "language" }, " Language Preference: ", -1)), 34035 createVNode(_component_CoreBlockSelect, { 34036 id: "language", 34037 "model-value": _ctx.form.languagePref, 34038 options: _ctx.languageOptions, 34039 "onUpdate:modelValue": _cache[25] || (_cache[25] = ($event) => _ctx.form.languagePref = $event) 34040 }, null, 8, ["model-value", "options"]) 34041 ])) : createCommentVNode("", true), 34042 _ctx.hasBestMethodFields ? (openBlock(), createElementBlock("div", _hoisted_47, [ 34043 _cache[41] || (_cache[41] = createBaseVNode("label", { for: "best-contact-method" }, " Best Method to Contact: ", -1)), 34044 createVNode(_component_CoreBlockSelect, { 34045 id: "best-contact-method", 34046 "model-value": _ctx.form.contactMethod, 34047 options: _ctx.contactMethodOptions, 34048 "onUpdate:modelValue": _cache[26] || (_cache[26] = ($event) => _ctx.form.contactMethod = $event) 34049 }, null, 8, ["model-value", "options"]) 34050 ])) : createCommentVNode("", true), 34051 _ctx.hasBestTimeFields ? (openBlock(), createElementBlock("div", _hoisted_48, [ 34052 _cache[42] || (_cache[42] = createBaseVNode("label", { for: "best-time-to-call" }, " Best Time of Day to Call: ", -1)), 34053 createVNode(_component_CoreBlockSelect, { 34054 id: "best-time-to-call", 34055 "model-value": _ctx.form.bestTimeToCall, 34056 options: _ctx.contactTimeOptions, 34057 "onUpdate:modelValue": _cache[27] || (_cache[27] = ($event) => _ctx.form.bestTimeToCall = $event) 34058 }, null, 8, ["model-value", "options"]) 34059 ])) : createCommentVNode("", true), 34060 _ctx.hasLinkedinFields ? (openBlock(), createElementBlock("div", _hoisted_49, [ 34061 createVNode(_component_Field, { 34062 modelValue: _ctx.form.linkedinUrl, 34063 "onUpdate:modelValue": _cache[29] || (_cache[29] = ($event) => _ctx.form.linkedinUrl = $event), 34064 modelModifiers: { trim: true }, 34065 rules: { 34066 max: 50, 34067 linkedin: true 34068 }, 34069 class: "col-6", 34070 name: "LinkedIn", 34071 vid: `linkedin-form:${_ctx.formValidationId}`, 34072 tag: "div", 34073 "validate-on-input": "" 34074 }, { 34075 default: withCtx(({ errors }) => [ 34076 _cache[43] || (_cache[43] = createBaseVNode("label", {
34076for: "linkin-url" }, "LinkedIn:", -1)), 34077 withDirectives(createBaseVNode("input", { 34078 id: "linkin-url", 34079 "onUpdate:modelValue": _cache[28] || (_cache[28] = ($event) => _ctx.form.linkedinUrl = $event), 34080 "aria-invalid": errors.length > 0, 34081 "aria-errormessage": "error-linkin-url", 34082 class: normalizeClass(["form-input", { 34083 "bd-error": errors.length 34084 }]), 34085 name: "linkedin-url", 34086 type: "text", 34087 autocomplete: "off" 34088 }, null, 10, _hoisted_50), [ 34089 [ 34090 vModelText, 34091 _ctx.form.linkedinUrl, 34092 void 0, 34093 { trim: true } 34094 ] 34095 ]), 34096 errors ? (openBlock(), createElementBlock("small", _hoisted_51, toDisplayString(errors[0]), 1)) : createCommentVNode("", true) 34097 ]), 34098 _: 1 34099 }, 8, ["modelValue", "vid"]) 34100 ])) : createCommentVNode("", true) 34101 ]), 34102 _cache[46] || (_cache[46] = createBaseVNode("div", { class: "row" }, null, -1)), 34103 _ctx.hasInterestFields ? (openBlock(), createElementBlock("div", _hoisted_52, [ 34104 createBaseVNode("div", _hoisted_53, [ 34105 _cache[45] || (_cache[45] = createBaseVNode("p", null, "Interests:", -1)), 34106 (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.interestOptions, ({ value }) => { 34107 return openBlock(), createElementBlock("div", { key: value }, [ 34108 (openBlock(), createElementBlock("label", { 34109 key: value, 34110 for: value, 34111 class: "interests-field" 34112 }, [ 34113 createBaseVNode("span", _hoisted_55, [ 34114 withDirectives(createBaseVNode("input", { 34115 id: value, 34116 "onUpdate:modelValue": _cache[30] || (_cache[30] = ($event) => _ctx.form.leadConcerns = $event), 34117 "aria-checked": _ctx.form.leadConcerns.includes( 34118 value 34119 ), 34120 value, 34121 type: "checkbox", 34122 autocomplete: "off" 34123 }, null, 8, _hoisted_56), [ 34124 [ 34125 vModelCheckbox, 34126 _ctx.form.leadConcerns 34127 ] 34128 ]), 34129 _cache[44] || (_cache[44] = createBaseVNode("span", { class: "interests-checkmark" }, null, -1)) 34130 ]), 34131 createBaseVNode("span", _hoisted_57, toDisplayString(value), 1) 34132 ], 8, _hoisted_54)) 34133 ]); 34134 }), 128)) 34135 ]) 34136 ])) : createCommentVNode("", true), 34137 (openBlock(), createElementBlock(Fragment, null, renderList([1, 2, 3, 4, 5], (fieldNumber) => { 34138 return openBlock(), createElementBlock(Fragment, null, [ 34139 _ctx.checkOpenTextFields(fieldNumber) ? (openBlock(), createElementBlock("div", { 34140 key: `custom-field-${fieldNumber}`, 34141 class: "row row--open-text" 34142 }, [ 34143 (openBlock(), createBlock(_component_Field, { 34144 key: `openText${fieldNumber}`, 34145 modelValue: _ctx.form[`openText${fieldNumber}`], 34146 "onUpdate:modelValue": ($event) => _ctx.form[`openText${fieldNumber}`] = $event, 34147 modelModifiers: { trim: true }, 34148 name: `Custom Field${fieldNumber}`, 34149 vid: `custom-field-${fieldNumber}-form:${_ctx.formValidationId}`, 34150 class: "row row--open-text", 34151 rules: "max:255", 34152 tag: "div", 34153 "validate-on-input": "" 34154 }, { 34155 default: withCtx(({ field, errors }) => [ 34156 createBaseVNode("div", _hoisted_58, [ 34157 createBaseVNode("label", { 34158 for: `openText${fieldNumber}` 34159 }, toDisplayString(_ctx.openTextFieldLabel( 34160 fieldNumber 34161 ) || "No Label"), 9, _hoisted_59), 34162 createBaseVNode("input", mergeProps({ 34163 id: `openText${fieldNumber}`, 34164 ref_for: true 34165 }, field, { 34166 "aria-invalid": errors.length > 0, 34167 "aria-errormessage": `error-openText${fieldNumber}`, 34168 class: { 34169 "bd-error": errors.length 34170 }, 34171 name: `openText${fieldNumber}`, 34172 autocomplete: "off", 34173 type: "text", 34174 onKeydown: _cache[31] || (_cache[31] = ($event) => _ctx.preventAngleBracket( 34175 $event 34176 )) 34177 }), null, 16, _hoisted_60), 34178 errors ? (openBlock(), createElementBlock("small", { 34179 key: 0, 34180 id: `error-openText${fieldNumber}`, 34181 "aria-live": "assertive", 34182 class: "text-error" 34183 }, toDisplayString(errors[0]), 9, _hoisted_61)) : createCommentVNode("", true) 34184 ]) 34185 ]), 34186 _: 2 34187 }, 1032, ["modelValue", "onUpdate:modelValue", "name", "vid"])) 34188 ])) : createCommentVNode("", true) 34189 ], 64); 34190 }), 64)) 34191 ], 64)), 34192 !_ctx.leadFormOptimization ? (openBlock(), createElementBlock("div", _hoisted_62, [ 34193 createBaseVNode("div", _hoisted_63, [ 34194 createVNode(_component_CoreBlock, { 34195 "data-testid": `form-submit-button`, 34196 "is-editable": _ctx.isEditable, 34197 type: "submit", 34198 value: "submit", 34199 class: "button", 34200 settings: { 34201 type: "button", 34202 label: _ctx.formType === "agentNewsletter" ? "Sign up for my Newsletter" : "Submit", 34203 event: _ctx.submit, 34204 icon: null, 34205 variants: { 34206 style: "primary" 34207 } 34208 } 34209 }, null, 8, ["is-editable", "settings"]), 34210 _cache[47] || (_cache[47] = createBaseVNode("div", { class: "mt-2" }, "* Required", -1)) 34211 ]) 34212 ])) : createCommentVNode("", true), 34213 createBaseVNode("div", _hoisted_64, [ 34214 _ctx.marketerNumber ? (openBlock(), createElementBlock("p", _hoisted_65, " MarketerID: " + toDisplayString(_ctx.marketerNumber), 1)) : createCommentVNode("", true), 34215 _ctx.orgUnitCD ? (openBlock(), createElementBlock("p", _hoisted_66, "GO Code: " + toDisplayString(_ctx.orgUnitCD), 1)) : createCommentVNode("", true) 34216 ]) 34217 ], 40, _hoisted_8$a) 34218 ]), 34219 _: 1 34220 }, 8, ["onSubmit"])) 34221 ]), 34222 _: 1 34223 }) 34224 ])) 34225 ]) 34226 ], 512); 34227} 34228const CoreBlockForm$2 = /* @__PURE__ */ _export_sfc(_sfc_main$4k, [["render", _sfc_render$3N]]); 34229const CoreBlockForm$3 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 34230 __proto__: null, 34231 default: CoreBlockForm$2 34232}, Symbol.toStringTag, { value: "Module" })); 34233const _sfc_main$4j = { 34234 name: "CoreBlockFooterBanner", 34235 props: { 34236 site: { 34237 type: Object, 34238 required: true 34239 }, 34240 isEditable: { 34241 type: Boolean, 34242 default: false 34243 } 34244 }, 34245 computed: { 34246 banner() { 34247 var _a; 34248 return ((_a = this.site.footer) == null ? void 0 : _a.banner) || {}; 34249 }, 34250 bodyCopy() { 34251 return this.banner.bodyCopy; 34252 }, 34253 buttonText() { 34254 return this.banner.buttonText; 34255 }, 34256 buttonLink() { 34257 return this.banner.buttonLink; 34258 }, 34259 pencilBannerSettings() { 34260 var _a, _b; 34261 return { 34262 id: "f36wnm", 34263 type: "pencil-banner", 34264 variants: { 34265 alignment: "center", 34266 hidden: false, 34267 "text-align": "align-center" 34268 }, 34269 bodyCopy: this.bodyCopy, 34270 buttonText: this.buttonText, 34271 buttonLink: this.buttonLink, 34272 newTab: ((_a = this.banner) == null ? void 0 : _a.newTab) || null, 34273 // Not convinced this does anything 34274 newWindow: false, 34275 closeButton: ((_b = this.banner) == null ? void 0 : _b.closeButton) || null 34276 }; 34277 } 34278 } 34279}; 34280function _sfc_render$3M(_ctx, _cache, $props, $setup, $data, $options) { 34281 const _component_CoreBlock = _sfc_main$4x; 34282 return openBlock(), createBlock(_component_CoreBlock, { 34283 "is-editable": $props.isEditable, 34284 settings: $options.pencilBannerSettings, 34285 class: normalizeClass("footer-banner") 34286 }, null, 8, ["is-editable", "settings"]); 34287} 34288const __nuxt_component_1$6 = /* @__PURE__ */ _export_sfc(_sfc_main$4j, [["render", _sfc_render$3M]]); 34289const CoreBlockFooterBanner = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 34290 __proto__: null, 34291 default: __nuxt_component_1$6 34292}, Symbol.toStringTag, { value: "Module" })); 34293const _sfc_main$4i = { 34294 props: { 34295 footer: { 34296 type: Object, 34297 required: true 34298 }, 34299 clonedSite: { 34300 type: Object, 34301 required: true 34302 }, 34303 isFooterMobile: { 34304 type: Boolean, 34305 required: true 34306 },
34307 align: { 34308 type: String, 34309 default: "left", 34310 validator: (value) => ["left", "center", "right"].includes(value) 34311 } 34312 }, 34313 setup(props) { 34314 const showSocialTitle = computed(() => { 34315 return Object.prototype.hasOwnProperty.call( 34316 props.footer, 34317 "social-title-show" 34318 ) ? props.footer["social-title-show"] : true; 34319 }); 34320 const facebook = computed(() => { 34321 var _a; 34322 if (!((_a = props.footer) == null ? void 0 : _a["facebook-show"])) return ""; 34323 return renderData(props.footer.facebook, props.clonedSite); 34324 }); 34325 const linkedin = computed(() => { 34326 var _a; 34327 if (!((_a = props.footer) == null ? void 0 : _a["linkedin-show"])) return ""; 34328 return renderData(props.footer.linkedin, props.clonedSite); 34329 }); 34330 const twitter = computed(() => { 34331 var _a; 34332 if (!((_a = props.footer) == null ? void 0 : _a["twitter-show"])) return ""; 34333 return renderData(props.footer.twitter, props.clonedSite); 34334 }); 34335 const hasSocialLink = computed(() => { 34336 return facebook.value || linkedin.value || twitter.value; 34337 }); 34338 return { 34339 showSocialTitle, 34340 facebook, 34341 linkedin, 34342 twitter, 34343 hasSocialLink 34344 }; 34345 } 34346}; 34347const _hoisted_1$4d = { 34348 key: 0, 34349 "data-testid": "social-links", 34350 class: "footer__social-links" 34351}; 34352function _sfc_render$3L(_ctx, _cache, $props, $setup, $data, $options) { 34353 const _component_CoreBlock = _sfc_main$4x; 34354 return $setup.hasSocialLink ? (openBlock(), createElementBlock("div", _hoisted_1$4d, [ 34355 $setup.showSocialTitle ? (openBlock(), createBlock(_component_CoreBlock, { 34356 key: 0, 34357 "data-testid": "social-title", 34358 settings: { 34359 type: "text", 34360 text: "Connect on Social", 34361 tag: "p", 34362 variants: { 34363 align: $props.align === "center" ? "align-center" : "base" 34364 } 34365 } 34366 }, null, 8, ["settings"])) : createCommentVNode("", true), 34367 createVNode(_component_CoreBlock, { 34368 settings: { 34369 type: "social-links", 34370 facebook: $setup.facebook, 34371 linkedin: $setup.linkedin, 34372 twitter: $setup.twitter, 34373 variants: { 34374 style: "slim", 34375 align: $props.isFooterMobile ? "align-center" : `align-${$props.align}` 34376 } 34377 } 34378 }, null, 8, ["settings"]) 34379 ])) : createCommentVNode("", true); 34380} 34381const __nuxt_component_3$2 = /* @__PURE__ */ _export_sfc(_sfc_main$4i, [["render", _sfc_render$3L]]); 34382const CoreBlockFooterSocialLinks = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 34383 __proto__: null, 34384 default: __nuxt_component_3$2 34385}, Symbol.toStringTag, { value: "Module" })); 34386const _sfc_main$4h = { 34387 name: "CoreBlockFooterLogo", 34388 components: { 34389 NuxtLink: __nuxt_component_2$5 34390 }, 34391 props: { 34392 site: { 34393 type: Object, 34394 required: true 34395 }, 34396 isFooterMobile: { 34397 type: Boolean, 34398 default: false 34399 } 34400 }, 34401 setup(props) { 34402 const footer = computed(() => props.site.footer ?? {}); 34403 const isNYL = computed(() => { 34404 var _a; 34405 return ((_a = props.site) == null ? void 0 : _a.brandId) === 3; 34406 }); 34407 const isGO = computed(() => { 34408 var _a; 34409 return ((_a = props.site.tags) == null ? void 0 : _a.includes(1305)) ?? false; 34410 }); 34411 const defaultLogo = ref({ 34412 src: "/img/logos/nyl-logo-blue.svg", 34413 alt: "New York Life Insurance" 34414 }); 34415 const originalLogo = computed(() => { 34416 const logoSrc = isObject$1(footer.value.logo) ? footer.value.logo.src : footer.value.logo; 34417 const rendered = renderData(logoSrc, props.site); 34418 if (logoFallbackEnabled.value) 34419 return rendered || fallbackLogo.value || staticLogo.value; 34420 if (rendered) return rendered; 34421 if (isNYL.value) return defaultLogo.value.src; 34422 if (isCoreLite.value) return fallbackLogo.value || staticLogo.value; 34423 return "/img/core-logo.svg"; 34424 }); 34425 const store = useStore(); 34426 const logoFallbackEnabled = computed(() => { 34427 var _a; 34428 return (_a = store.state.settings.featureFlags) == null ? void 0 : _a.LogoFallback; 34429 }); 34430 const isCoreLite = computed( 34431 () => { 34432 var _a, _b, _c; 34433 return ((_c = (_b = (_a = store.state) == null ? void 0 : _a.settings) == null ? void 0 : _b.brandFeatureFlags) == null ? void 0 : _c.includes( 34434 BRAND_FEATURE_FLAGS.CoreLite 34435 )) ?? false; 34436 } 34437 ); 34438 const fallbackLogo = computed( 34439 () => generateFallbackLogoURL(props.site.brandId) 34440 ); 34441 const staticLogo = computed( 34442 () => isNYL.value ? defaultLogo.value.src : "/img/core-logo.svg" 34443 ); 34444 const logo = ref(null); 34445 onMounted(() => { 34446 logo.value = originalLogo.value; 34447 }); 34448 watch(originalLogo, (newLogo) => { 34449 logo.value = newLogo; 34450 }); 34451 const logoFailedToLoad = () => { 34452 if (!logoFallbackEnabled.value && !isCoreLite.value) return; 34453 if (logo.value === staticLogo.value) return; 34454 logo.value = fallbackLogo.value && logo.value !== fallbackLogo.value ? fallbackLogo.value : staticLogo.value; 34455 }; 34456 const teamMembersName = computed(() => { 34457 var _a, _b, _c; 34458 if ((_a = footer.value) == null ? void 0 : _a["team-member"]) { 34459 const teamMember = (_c = (_b = props.site) == null ? void 0 : _b.teamMembers) == null ? void 0 : _c.find( 34460 (t) => { 34461 var _a2; 34462 return t.id === ((_a2 = footer.value) == null ? void 0 : _a2["team-member"]); 34463 } 34464 ); 34465 if (!teamMember) { 34466 return ""; 34467 } 34468 const firstName = (teamMember == null ? void 0 : teamMember.firstName) ? (teamMember == null ? void 0 : teamMember.firstName) + " " : ""; 34469 const middleName = (teamMember == null ? void 0 : teamMember.middleName) ? (teamMember == null ? void 0 : teamMember.middleName) + " " : ""; 34470 const lastName = (teamMember == null ? void 0 : teamMember.lastName) ? (teamMember == null ? void 0 : teamMember.lastName) + " " : ""; 34471 return `${firstName}${middleName}${lastName}`; 34472 } 34473 return void 0; 34474 }); 34475 const logoShow = computed(() => { 34476 if (Object.prototype.hasOwnProperty.call(footer.value, "logoShow")) { 34477 return footer.value.logoShow; 34478 } 34479 return null; 34480 }); 34481 const logoStyle = computed(() => footer.value.logoStyle); 34482 const showText = computed(() => { 34483 if (logoShow.value === null) { 34484 return logoStyle.value !== "large" && logoStyle.value !== "
34484none"; 34485 } 34486 return !props.isFooterMobile; 34487 }); 34488 const showLogo = computed(() => { 34489 return logoShow.value !== null ? logoShow.value : logoStyle.value !== "none"; 34490 }); 34491 const nameFooter = computed(() => { 34492 var _a; 34493 const formattedName = formatName( 34494 footer.value.nameFooter, 34495 (_a = props.site.user) == null ? void 0 : _a.ddcUserData 34496 ); 34497 return hasDataNameFooter.value ? unescape$1(renderData(formattedName, props.site)) : props.site.title; 34498 }); 34499 const logoAltText = computed(() => { 34500 const logoAlt = isObject$1(footer.value.logo) ? footer.value.logo.alt : footer.value.logoAltText; 34501 if (logoFallbackEnabled.value) { 34502 return logoAlt || "Website Logo"; 34503 } else { 34504 const defaultAlt = logo.value === defaultLogo.value.src && defaultLogo.value.alt; 34505 return logoAlt || defaultAlt || nameFooter.value; 34506 } 34507 }); 34508 const logoLink = computed(() => footer.value.logoLink || "/#"); 34509 const logoInternalLink = computed(() => logoLink.value.startsWith("/")); 34510 const logoTag = computed(() => { 34511 if (logoInternalLink.value) { 34512 return "NuxtLink"; 34513 } 34514 return "a"; 34515 }); 34516 const externalLink = computed(() => logoLink.value); 34517 const goHeadquarters = computed( 34518 () => { 34519 var _a, _b; 34520 return (_b = (_a = props.site.user) == null ? void 0 : _a.ddcUserData) == null ? void 0 : _b.orgUnitDesc; 34521 } 34522 ); 34523 const hasOrganization = computed( 34524 () => props.site.organizationId != null 34525 ); 34526 const hasOrganizationManager = computed( 34527 () => props.site.organizationManagerId != null 34528 ); 34529 const organizationName = computed(() => props.site.organizationName); 34530 const overlineFooter = computed(() => { 34531 if (hasOrganization.value) { 34532 return organizationName.value + " General Office"; 34533 } 34534 if (isGO.value) { 34535 return goHeadquarters.value + " General Office"; 34536 } 34537 return unescape$1( 34538 renderData(footer.value.overlineFooter, props.site) 34539 ); 34540 }); 34541 const isManagingPartner = computed(() => { 34542 var _a, _b, _c; 34543 if (((_c = (_b = (_a = props.site.user) == null ? void 0 : _a.ddcUserData) == null ? void 0 : _b.marketerTitleTpDesc) == null ? void 0 : _c.toLowerCase()) === "managing partner") { 34544 return true; 34545 } 34546 if (hasOrganizationManager.value) { 34547 return true; 34548 } 34549 return false; 34550 }); 34551 const jobTitleFooter = computed(() => { 34552 if (isManagingPartner.value) { 34553 return "Managing Partner"; 34554 } 34555 return renderData(footer.value.jobTitleFooter, props.site); 34556 }); 34557 const showUsernameFooter = computed( 34558 () => footer.value.showUsernameFooter 34559 ); 34560 const showOverlineFooter = computed( 34561 () => footer.value.showOverlineFooter 34562 ); 34563 const showTitleFooter = computed(() => footer.value.showTitleFooter); 34564 const hasDataNameFooter = computed(() => { 34565 const dataName = renderData(footer.value.nameFooter, props.site) || ""; 34566 return !!dataName.trim(); 34567 }); 34568 const displayName = computed( 34569 () => { 34570 var _a, _b; 34571 return (_b = (_a = props.site.user) == null ? void 0 : _a.ddcUserData) == null ? void 0 : _b.displayName; 34572 } 34573 ); 34574 const showForm = computed(() => { 34575 const forms = ["left-aligned-form", "center-aligned-form"]; 34576 return isNYL.value && forms.includes(footer.value.component); 34577 }); 34578 const showImage = computed(() => { 34579 const imageTypes = [ 34580 "large-image-three-contact", 34581 "small-image-three-contact" 34582 ]; 34583 return imageTypes.includes(footer.value.component); 34584 }); 34585 const isCenterForm = computed( 34586 () => footer.value.component === "center-aligned-form" 34587 ); 34588 const isLargeImage = computed( 34589 () => footer.value.component === "large-image-three-contact" 34590 ); 34591 const isCenterLogo = computed(() => { 34592 const contactTypes = [ 34593 "center-logo-two-contact", 34594 "center-logo-stack-contact" 34595 ]; 34596 return contactTypes.includes(footer.value.component); 34597 }); 34598 const logoClass = computed(() => { 34599 if (isCenterLogo.value) { 34600 return "logo-center"; 34601 } 34602 if (showForm.value || showImage.value) { 34603 return isCenterForm.value || isLargeImage.value ? "logo-left" : "logo-right"; 34604 } 34605 return ""; 34606 }); 34607 const logoImgClass = computed( 34608 () => `logo_image logo_image--${logoStyle.value}` 34609 ); 34610 return { 34611 overlineFooter, 34612 showOverlineFooter, 34613 hasDataNameFooter, 34614 showUsernameFooter, 34615 displayName, 34616 nameFooter, 34617 jobTitleFooter, 34618 showTitleFooter, 34619 logoStyle, 34620 logoTag, 34621 logoInternalLink, 34622 logoLink, 34623 logoFallbackEnabled, 34624 fallbackLogo, 34625 originalLogo, 34626 externalLink, 34627 logoAltText, 34628 logoClass, 34629 logoImgClass, 34630 logo, 34631 logoFailedToLoad, 34632 showText, 34633 showLogo, 34634 teamMembersName 34635 }; 34636 } 34637}; 34638const _hoisted_1$4c = ["alt", "src"]; 34639const _hoisted_2$3Q = { class: "logo_text" }; 34640const _hoisted_3$u = { 34641 key: 0, 34642 class: "logo_text__subtitle" 34643}; 34644const _hoisted_4$m = { 34645 key: 1, 34646 class: "logo_text__title" 34647}; 34648const _hoisted_5$k = { 34649 key: 2, 34650 class: "logo_text__subtitle" 34651}; 34652function _sfc_render$3K(_ctx, _cache, $props, $setup, $data, $options) { 34653 return openBlock(), createElementBlock("figure", { 34654 class: normalizeClass(["logo", $setup.logoClass]) 34655 }, [ 34656 $setup.showLogo ? (openBlock(), createBlock(resolveDynamicComponent($setup.logoTag), mergeProps({ 34657 key: 0, 34658 class: "logo_link", 34659 target: $setup.logoInternalLink ? "_self" : "_blank" 34660 }, {
34661 ...$setup.logoInternalLink ? { to: $setup.logoLink } : { href: $setup.externalLink } 34662 }), { 34663 default: withCtx(() => [ 34664 createBaseVNode("img", { 34665 alt: $setup.logoAltText, 34666 class: normalizeClass($setup.logoImgClass), 34667 src: $setup.logo, 34668 onError: _cache[0] || (_cache[0] = (...args) => $setup.logoFailedToLoad && $setup.logoFailedToLoad(...args)) 34669 }, null, 42, _hoisted_1$4c) 34670 ]), 34671 _: 1 34672 }, 16, ["target"])) : createCommentVNode("", true), 34673 withDirectives(createBaseVNode("figcaption", _hoisted_2$3Q, [ 34674 $setup.overlineFooter && $setup.showOverlineFooter ? (openBlock(), createElementBlock("h6", _hoisted_3$u, toDisplayString($setup.overlineFooter), 1)) : createCommentVNode("", true), 34675 $setup.hasDataNameFooter && $setup.showUsernameFooter ? (openBlock(), createElementBlock("h4", _hoisted_4$m, toDisplayString($setup.teamMembersName || $setup.displayName || $setup.nameFooter), 1)) : createCommentVNode("", true), 34676 $setup.jobTitleFooter && $setup.showUsernameFooter && $setup.showTitleFooter ? (openBlock(), createElementBlock("h6", _hoisted_5$k, toDisplayString($setup.jobTitleFooter), 1)) : createCommentVNode("", true) 34677 ], 512), [ 34678 [vShow, $setup.showText] 34679 ]) 34680 ], 2); 34681} 34682const __nuxt_component_4$1 = /* @__PURE__ */ _export_sfc(_sfc_main$4h, [["render", _sfc_render$3K], ["__scopeId", "data-v-61eacf7f"]]); 34683const CoreBlockFooterLogo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 34684 __proto__: null, 34685 default: __nuxt_component_4$1 34686}, Symbol.toStringTag, { value: "Module" })); 34687const _sfc_main$4g = { 34688 name: "CoreBlockFooterContactAddress", 34689 props: { 34690 address: { 34691 type: Object, 34692 required: true 34693 }, 34694 dataObject: { 34695 type: Object, 34696 required: true 34697 } 34698 }, 34699 setup(props) { 34700 const streetAddress = computed(() => { 34701 return renderData( 34702 props.address.streetAddress || "", 34703 props.dataObject 34704 ); 34705 }); 34706 const streetAddress2 = computed(() => { 34707 return renderData( 34708 props.address.streetAddress2 || "", 34709 props.dataObject 34710 ); 34711 }); 34712 const city = computed(() => { 34713 return renderData(props.address.city || "", props.dataObject); 34714 }); 34715 const state = computed(() => { 34716 return renderData(props.address.state || "", props.dataObject); 34717 }); 34718 const zip = computed(() => { 34719 return renderData(props.address.zip || "", props.dataObject); 34720 }); 34721 const addressLabel = computed(() => { 34722 return renderData(props.address.label || "", props.dataObject); 34723 }); 34724 const cleanAddress = computed(() => { 34725 return `http://maps.google.com/?q=` + encodeURIComponent( 34726 `${streetAddress.value} ${city.value} ${state.value} ${zip.value}` 34727 ); 34728 }); 34729 return { 34730 addressLabel, 34731 streetAddress, 34732 streetAddress2, 34733 city, 34734 state, 34735 zip, 34736 cleanAddress 34737 }; 34738 } 34739}; 34740const _hoisted_1$4b = { class: "footer-address" }; 34741const _hoisted_2$3P = { key: 0 }; 34742const _hoisted_3$t = ["href"]; 34743const _hoisted_4$l = ["title"]; 34744const _hoisted_5$j = ["title"]; 34745const _hoisted_6$d = ["title"]; 34746function _sfc_render$3J(_ctx, _cache, $props, $setup, $data, $options) { 34747 const _component_CoreIcon = __nuxt_component_1$7; 34748 return openBlock(), createElementBlock("div", _hoisted_1$4b, [ 34749 createVNode(_component_CoreIcon, { 34750 icon: "map-pin", 34751 class: "footer-address__icon" 34752 }), 34753 createBaseVNode("div", null, [ 34754 $setup.addressLabel ? (openBlock(), createElementBlock("p", _hoisted_2$3P, toDisplayString($setup.addressLabel) + ":", 1)) : createCommentVNode("", true), 34755 createBaseVNode("a", { 34756 href: $setup.cleanAddress, 34757 target: "_blank" 34758 }, [ 34759 createBaseVNode("p", { title: $setup.streetAddress }, toDisplayString($setup.streetAddress), 9, _hoisted_4$l), 34760 createBaseVNode("p", { title: $setup.streetAddress2 }, toDisplayString($setup.streetAddress2), 9, _hoisted_5$j), 34761 createBaseVNode("p", { 34762 title: `${$setup.city}${$setup.state}${$setup.zip}` 34763 }, toDisplayString($setup.city) + ", " + toDisplayString($setup.state) + " " + toDisplayString($setup.zip), 9, _hoisted_6$d) 34764 ], 8, _hoisted_3$t) 34765 ]) 34766 ]); 34767} 34768const __nuxt_component_0$a = /* @__PURE__ */ _export_sfc(_sfc_main$4g, [["render", _sfc_render$3J], ["__scopeId", "data-v-fe43f690"]]); 34769const CoreBlockFooterContactAddress = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 34770 __proto__: null, 34771 default: __nuxt_component_0$a 34772}, Symbol.toStringTag, { value: "Module" })); 34773const _sfc_main$4f = { 34774 name: "CoreBlockFooterContactPhone", 34775 props: { 34776 phone: { 34777 type: Object, 34778 required: true 34779 }, 34780 dataObject: { 34781 type: Object, 34782 required: true 34783 } 34784 }, 34785 setup(props) { 34786 const phoneNumber = computed(() => { 34787 return formatPhoneNumber( 34788 renderData(props.phone.phone || "", props.dataObject) 34789 ); 34790 }); 34791 const phoneLabel = computed(() => { 34792 return renderData(props.phone.label || "", props.dataObject) || ""; 34793 }); 34794 const phoneExt = computed( 34795 () => renderData(props.phone.extension || "", props.dataObject) || "" 34796 ); 34797 const hasExtension = computed(() => phoneExt.value !== ""); 34798 const clickToCall = (phoneNumber2, extension = "") => { 34799 const cleanPhoneNumber = phoneNumber2 && phoneNumber2.replace(/[^0-9+]/g, ""); 34800 const cleanExtension = extension && extension.replace(/[^0-9+]/g, ""); 34801 if (cleanExtension) 34802 return `tel:${cleanPhoneNumber};${cleanExtension}`; 34803 return `tel:${cleanPhoneNumber}`; 34804 }; 34805 const iconType = computed(() => { 34806 return props.phone.type === "Mobile" ? "mobile-phone" : "phone"; 34807 }); 34808 return { 34809 phoneLabel, 34810 clickToCall, 34811 phoneNumber, 34812 phoneExt, 34813 hasExtension, 34814 iconType 34815 }; 34816 } 34817}; 34818const _hoisted_1$4a = { class: "footer-phone" }; 34819const _hoisted_2$3O = { key: 0 }; 34820const _hoisted_3$s = ["title", "href"]; 34821function _sfc_render$3I(_ctx, _cache, $props, $setup, $data, $options) { 34822 const _component_CoreIcon = __nuxt_component_1$7; 34823 return openBlock(), createElementBlock("div", _hoisted_1$4a, [ 34824 createVNode(_component_CoreIcon, { 34825 icon: $setup.iconType, 34826 class: "footer-phone__icon", 34827 settings: { ["aria-label"]: $setup.phoneNumber } 34828 }, null, 8, ["icon", "settings"]), 34829 createBaseVNode("div", null, [ 34830 $setup.phoneLabel ? (openBlock(), createElementBlock("p", _hoisted_2$3O, toDisplayString($setup.phoneLabel) + ":", 1)) : createCommentVNode("", true), 34831 createBaseVNode("a", { 34832 title: $setup.phoneNumber, 34833 href: $setup.clickToCall($setup.phoneNumber, $setup.phoneExt) 34834 }, toDisplayString($setup.phoneNumber) + " " + toDisplayString($setup.hasExtension ? `Ext. ${$setup.phoneExt}` : ""), 9, _hoisted_3$s) 34835 ]) 34836 ]); 34837} 34838const __nuxt_component_1$5 = /* @__PURE__ */ _export_sfc(_sfc_main$4f, [["render", _sfc_render$3I], ["__scopeId", "data-v-fcedcfe9"]]); 34839const CoreBlockFooterContactPhone = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 34840 __proto__: null, 34841 default: __nuxt_component_1$5 34842}, Symbol.toStringTag, { value: "Module" })); 34843const _sfc_main$4e = { 34844 name: "CoreBlockFooterContactEmail", 34845 props: { 34846 email: { 34847 type: String, 34848 required: true 34849 }, 34850 dataObject: { 34851 type: Object, 34852 required: true 34853 } 34854 }, 34855 setup(props) { 34856 const emailValue = computed( 34857 () => renderData(props.email || "", props.dataObject) 34858 ); 34859 return { emailValue }; 34860 } 34861}; 34862const _hoisted_1$49 = { class: "footer-email" }; 34863const _hoisted_2$3N = ["href", "title"]; 34864function _sfc_render$3H(_ctx, _cache, $props, $setup, $data, $options) { 34865 const _component_CoreIcon = __nuxt_component_1$7; 34866 return openBlock(), createElementBlock("div", _hoisted_1$49, [ 34867 createVNode(_component_CoreIcon, { 34868 icon: "email", 34869 class: "footer-email__icon", 34870 settings: { ["aria-label"]: $setup.emailValue } 34871 }, null, 8, ["settings"]), 34872 createBaseVNode("div", null, [ 34873 createBaseVNode("a", { 34874 href: `mailto:${$setup.emailValue}`, 34875 title: $setup.emailValue 34876 }, toDisplayString($setup.emailValue), 9, _hoisted_2$3N) 34877 ]) 34878 ]); 34879} 34880const __nuxt_component_2$3 = /* @__PURE__ */ _export_sfc(_sfc_main$4e, [["render", _sfc_render$3H], ["__scopeId", "data-v-4de2fc02"]]); 34881const CoreBlockFooterContactEmail = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 34882 __proto__: null, 34883 default: __nuxt_component_2$3 34884}, Symbol.toStringTag, { value: "Module" })); 34885const _sfc_main$4d = { 34886 name: "CoreBlockFooterContact", 34887 components: { 34888 CoreBlockFooterContactAddress: __nuxt_component_0$a, 34889 CoreBlockFooterContactPhone: __nuxt_component_1$5, 34890 CoreBlockFooterContactEmail: __nuxt_component_2$3 34891 }, 34892 props: { 34893 contact: { 34894 type: Object, 34895 required: true 34896 }, 34897 site: { 34898 type: Object, 34899 required: true 34900 }, 34901 type: { 34902 type: String, 34903 default: null, 34904 validator: (type) => ["contacts", "locations"].includes(type) 34905 }, 34906 teamMemberId: { 34907 type: String, 34908 default: null 34909 }, 34910 isStacked: { 34911 type: Boolean, 34912 default: false 34913 } 34914 }, 34915 setup(props) { 34916 const getContactFieldType = (field = {}) => { 34917 let fieldType; 34918 const types = [ 34919 "officePhone", 34920 "altPhone", 34921 "altPhone2", 34922 "altPhone3", 34923 "mobile", 34924 "fax", 34925 "email", 34926 "address", 34927 "address2", 34928 "address3" 34929 ]; 34930 for (const key of types) { 34931 if (key in field) { 34932 fieldType = key; 34933 break; 34934 } 34935 } 34936 return fieldType; 34937 }; 34938 const displayFieldType = (field) => { 34939 const fieldType = getContactFieldType(field); 34940 if (fieldType) { 34941 return { [`${fieldType}Display`]: (field == null ? void 0 : field.display) ?? true }; 34942 } 34943 }; 34944 const flattenedContact = computed(() => { 34945 const { type1, type2, type3 } = props.contact; 34946 displayFieldType(type1); 34947 return { 34948 ...type1, 34949 ...displayFieldType(type1), 34950 ...type2, 34951 ...displayFieldType(type2), 34952 ...type3, 34953 ...displayFieldType(type3) 34954 }; 34955 }); 34956 const footer = computed(() => { 34957 return props.site.footer; 34958 }); 34959 const teamMember = (teamMemberKey) => { 34960 var _a, _b; 34961 const memberId = footer.value[teamMemberKey || props.teamMemberId]; 34962 return (_b = (_a = props.site) == null ? void 0 : _a.teamMembers) == null ? void 0 : _b.find( 34963 (member) => memberId !== -1 && member.id === memberId 34964 ); 34965 }; 34966 const dataObject = computed(() => { 34967 if (teamMember(props.teamMemberId)) { 34968 return teamMember(props.teamMemberId); 34969 } 34970 return props.site; 34971 }); 34972 const displayHeading = computed( 34973 () => props.isStacked ? true : props.contact.displayTitle ?? true 34974 ); 34975 const heading = computed(() => { 34976 if (props.isStacked) { 34977 if (props.type === "contacts") { 34978 return "Contact us"; 34979 } 34980 if (props.type === "locations") { 34981 return "Our Locations"; 34982 } 34983 } 34984 return props.contact.title; 34985 }); 34986 const officePhone = computed(() => { 34987 var _a, _b, _c, _d, _e, _f, _g; 34988 if (!((_a = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _a.officePhoneDisplay)) return null; 34989 return { 34990 label: (_c = (_b = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _b.officePhone) == null ? void 0 : _c.label, 34991 phone: (_e = (_d = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _d.officePhone) == null ? void 0 : _e.phone, 34992 extension: (_g = (_f = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _f.officePhone) == null ? void 0 : _g.extension 34993 }; 34994 }); 34995 const altPhone = computed(() => { 34996 var _a, _b, _c, _d, _e, _f, _g; 34997 if (!((_a = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _a.altPhoneDisplay)) return null; 34998 return { 34999 label: (_c = (_b = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _b.altPhone) == null ? void 0 : _c.label, 35000 phone: (_e = (_d = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _d.altPhone) == null ? void 0 : _e.phone, 35001 extension: (_g = (_f = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _f.altPhone) == null ? void 0 : _g.extension 35002 }; 35003 }); 35004 const altPhone2 = computed(() => { 35005 var _a, _b, _c, _d, _e, _f, _g; 35006 if (!((_a = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _a.altPhone2Dis
35006play)) return null; 35007 return { 35008 label: (_c = (_b = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _b.altPhone2) == null ? void 0 : _c.label, 35009 phone: (_e = (_d = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _d.altPhone2) == null ? void 0 : _e.phone, 35010 extension: (_g = (_f = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _f.altPhone2) == null ? void 0 : _g.extension 35011 }; 35012 }); 35013 const altPhone3 = computed(() => { 35014 var _a, _b, _c, _d, _e, _f, _g; 35015 if (!((_a = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _a.altPhone3Display)) return null; 35016 return { 35017 label: (_c = (_b = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _b.altPhone3) == null ? void 0 : _c.label, 35018 phone: (_e = (_d = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _d.altPhone3) == null ? void 0 : _e.phone, 35019 extension: (_g = (_f = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _f.altPhone3) == null ? void 0 : _g.extension 35020 }; 35021 }); 35022 const mobile = computed(() => { 35023 if (!flattenedContact.value.mobileDisplay) return null; 35024 return { 35025 ...flattenedContact.value.mobile, 35026 type: "Mobile" 35027 }; 35028 }); 35029 const fax = computed(() => { 35030 if (!flattenedContact.value.faxDisplay) return null; 35031 return flattenedContact.value.fax; 35032 }); 35033 const email = computed(() => { 35034 var _a; 35035 if (!flattenedContact.value.emailDisplay) return null; 35036 if (teamMember(props.teamMemberId)) { 35037 return (_a = teamMember(props.teamMemberId)) == null ? void 0 : _a.emailAddress; 35038 } 35039 return flattenedContact.value.email; 35040 }); 35041 const address = computed(() => { 35042 var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m; 35043 if (!((_a = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _a.addressDisplay)) return null; 35044 return { 35045 label: (_c = (_b = flattenedContact.value) == null ? void 0 : _b.address) == null ? void 0 : _c.label, 35046 streetAddress: (_e = (_d = flattenedContact.value) == null ? void 0 : _d.address) == null ? void 0 : _e.streetAddress, 35047 streetAddress2: (_g = (_f = flattenedContact.value) == null ? void 0 : _f.address) == null ? void 0 : _g.streetAddress2, 35048 city: (_i = (_h = flattenedContact.value) == null ? void 0 : _h.address) == null ? void 0 : _i.city, 35049 state: (_k = (_j = flattenedContact.value) == null ? void 0 : _j.address) == null ? void 0 : _k.state, 35050 zip: (_m = (_l = flattenedContact.value) == null ? void 0 : _l.address) == null ? void 0 : _m.zip 35051 }; 35052 }); 35053 const address2 = computed(() => { 35054 var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m; 35055 if (!((_a = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _a.address2Display)) return null; 35056 return { 35057 label: (_c = (_b = flattenedContact.value) == null ? void 0 : _b.address2) == null ? void 0 : _c.label, 35058 streetAddress: (_e = (_d = flattenedContact.value) == null ? void 0 : _d.address2) == null ? void 0 : _e.streetAddress, 35059 streetAddress2: (_g = (_f = flattenedContact.value) == null ? void 0 : _f.address2) == null ? void 0 : _g.streetAddress2, 35060 city: (_i = (_h = flattenedContact.value) == null ? void 0 : _h.address2) == null ? void 0 : _i.city, 35061 state: (_k = (_j = flattenedContact.value) == null ? void 0 : _j.address2) == null ? void 0 : _k.state, 35062 zip: (_m = (_l = flattenedContact.value) == null ? void 0 : _l.address2) == null ? void 0 : _m.zip 35063 }; 35064 }); 35065 const address3 = computed(() => { 35066 var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m; 35067 if (!((_a = flattenedContact == null ? void 0 : flattenedContact.value) == null ? void 0 : _a.address3Display)) return null; 35068 return { 35069 label: (_c = (_b = flattenedContact.value) == null ? void 0 : _b.address3) == null ? void 0 : _c.label, 35070 streetAddress: (_e = (_d = flattenedContact.value) == null ? void 0 : _d.address3) == null ? void 0 : _e.streetAddress, 35071 streetAddress2: (_g = (_f = flattenedContact.value) == null ? void 0 : _f.address3) == null ? void 0 : _g.streetAddress2, 35072 city: (_i = (_h = flattenedContact.value) == null ? void 0 : _h.address3) == null ? void 0 : _i.city, 35073 state: (_k = (_j = flattenedContact.value) == null ? void 0 : _j.address3) == null ? void 0 : _k.state, 35074 zip: (_m = (_l = flattenedContact.value) == null ? void 0 : _l.address3) == null ? void 0 : _m.zip 35075 }; 35076 }); 35077 const contactData = computed(() => { 35078 if (!props.isStacked) return { addresses: {}, contacts: {} }; 35079 const types = ["type1", "type2", "type3"]; 35080 const locations = [ 35081 footer.value["contact-1"], 35082 footer.value["contact-2"], 35083 footer.value["contact-3"] 35084 ]; 35085 const addressObjects = {}; 35086 const contactObjects = {}; 35087 locations.forEach((location2, index2) => { 35088 var _a; 35089 const contactShow = Object.hasOwnProperty.call( 35090 footer.value, 35091 `contact-${index2 + 1}-show` 35092 ) ? footer.value[`contact-${index2 + 1}-show`] : true; 35093 if (location2 && contactShow) { 35094 const contactKey = `contact-${index2 + 1}`; 35095 const teamMemberKey = `team-member-${index2 + 1}`; 35096 const mergedProps = {};
35097 types.forEach((type) => { 35098 if (location2[type]) { 35099 Object.assign(mergedProps, location2[type]); 35100 } 35101 }); 35102 const { address: address4, ...contactProps } = mergedProps; 35103 if (address4) { 35104 if (teamMember(teamMemberKey)) { 35105 const member = teamMember(teamMemberKey); 35106 addressObjects[contactKey] = { 35107 label: address4.label, 35108 streetAddress: member.address, 35109 city: member.city, 35110 state: member.state, 35111 zip: member.postalCode 35112 }; 35113 } else { 35114 addressObjects[contactKey] = address4; 35115 } 35116 } 35117 if (Object.keys(contactProps).length > 0) { 35118 if (teamMember(teamMemberKey)) { 35119 const member = teamMember(teamMemberKey); 35120 contactObjects[contactKey] = { 35121 ...contactProps, 35122 officePhone: { 35123 label: (_a = contactProps.officePhone) == null ? void 0 : _a.label, 35124 phone: member.phoneNumber 35125 }, 35126 email: member.emailAddress 35127 }; 35128 } else { 35129 contactObjects[contactKey] = contactProps; 35130 } 35131 } 35132 } 35133 }); 35134 return { addresses: addressObjects, contacts: contactObjects }; 35135 }); 35136 return { 35137 flattenedContact, 35138 heading, 35139 displayHeading, 35140 officePhone, 35141 altPhone, 35142 altPhone2, 35143 altPhone3, 35144 mobile, 35145 fax, 35146 email, 35147 address, 35148 address2, 35149 address3, 35150 contactData, 35151 teamMember, 35152 dataObject 35153 }; 35154 } 35155}; 35156const _hoisted_1$48 = { 35157 class: "footer-contact", 35158 "data-testid": "footer-contact" 35159}; 35160const _hoisted_2$3M = { 35161 key: 0, 35162 class: "footer-contact__title" 35163}; 35164const _hoisted_3$r = { key: 1 }; 35165const _hoisted_4$k = { key: 0 }; 35166const _hoisted_5$i = { key: 1 }; 35167const _hoisted_6$c = { key: 2 }; 35168function _sfc_render$3G(_ctx, _cache, $props, $setup, $data, $options) { 35169 const _component_CoreBlockFooterContactAddress = __nuxt_component_0$a; 35170 const _component_CoreBlockFooterContactPhone = __nuxt_component_1$5; 35171 const _component_CoreBlockFooterContactEmail = __nuxt_component_2$3; 35172 return openBlock(), createElementBlock("div", _hoisted_1$48, [ 35173 createBaseVNode("div", null, [ 35174 $setup.heading && $setup.displayHeading ? (openBlock(), createElementBlock("h3", _hoisted_2$3M, toDisplayString($setup.heading), 1)) : createCommentVNode("", true), 35175 $props.isStacked ? (openBlock(), createElementBlock("div", _hoisted_3$r, [ 35176 $props.type === "locations" ? (openBlock(), createElementBlock("div", _hoisted_4$k, [ 35177 (openBlock(true), createElementBlock(Fragment, null, renderList($setup.contactData.addresses, (item, index2) => { 35178 return openBlock(), createBlock(_component_CoreBlockFooterContactAddress, { 35179 key: index2, 35180 address: item, 35181 "data-object": $setup.dataObject, 35182 "team-member": item.teamMember 35183 }, null, 8, ["address", "data-object", "team-member"]); 35184 }), 128)) 35185 ])) : createCommentVNode("", true), 35186 $props.type === "contacts" ? (openBlock(), createElementBlock("div", _hoisted_5$i, [ 35187 (openBlock(true), createElementBlock(Fragment, null, renderList($setup.contactData.contacts, (item, index2) => { 35188 return openBlock(), createElementBlock("div", { key: index2 }, [ 35189 item.officePhone ? (openBlock(), createBlock(_component_CoreBlockFooterContactPhone, { 35190 key: 0, 35191 phone: item.officePhone, 35192 "data-object": $setup.dataObject 35193 }, null, 8, ["phone", "data-object"])) : createCommentVNode("", true), 35194 item.altPhone ? (openBlock(), createBlock(_component_CoreBlockFooterContactPhone, { 35195 key: 1, 35196 phone: item.altPhone, 35197 "data-object": $setup.dataObject 35198 }, null, 8, ["phone", "data-object"])) : createCommentVNode("", true), 35199 item.altPhone2 ? (openBlock(), createBlock(_component_CoreBlockFooterContactPhone, { 35200 key: 2, 35201 phone: item.altPhone2, 35202 "data-object": $setup.dataObject 35203 }, null, 8, ["phone", "data-object"])) : createCommentVNode("", true), 35204 item.altPhone3 ? (openBlock(), createBlock(_component_CoreBlockFooterContactPhone, { 35205 key: 3, 35206 phone: item.altPhone3, 35207 "data-object": $setup.dataObject 35208 }, null, 8, ["phone", "data-object"])) : createCommentVNode("", true), 35209 item.mobile ? (openBlock(), createBlock(_component_CoreBlockFooterContactPhone, { 35210 key: 4, 35211 phone: item.mobile, 35212 "data-object": $setup.dataObject 35213 }, null, 8, ["phone", "data-object"])) : createCommentVNode("", true), 35214 item.fax ? (openBlock(), createBlock(_component_CoreBlockFooterContactPhone, { 35215 key: 5,
35216 phone: item.fax, 35217 "data-object": $setup.dataObject 35218 }, null, 8, ["phone", "data-object"])) : createCommentVNode("", true), 35219 item.email ? (openBlock(), createBlock(_component_CoreBlockFooterContactEmail, { 35220 key: 6, 35221 email: item.email, 35222 "data-object": $setup.dataObject 35223 }, null, 8, ["email", "data-object"])) : createCommentVNode("", true) 35224 ]); 35225 }), 128)) 35226 ])) : createCommentVNode("", true) 35227 ])) : (openBlock(), createElementBlock("div", _hoisted_6$c, [ 35228 $setup.officePhone ? (openBlock(), createBlock(_component_CoreBlockFooterContactPhone, { 35229 key: 0, 35230 phone: $setup.officePhone, 35231 "data-object": $setup.dataObject 35232 }, null, 8, ["phone", "data-object"])) : createCommentVNode("", true), 35233 $setup.altPhone ? (openBlock(), createBlock(_component_CoreBlockFooterContactPhone, { 35234 key: 1, 35235 phone: $setup.altPhone, 35236 "data-object": $setup.dataObject 35237 }, null, 8, ["phone", "data-object"])) : createCommentVNode("", true), 35238 $setup.altPhone2 ? (openBlock(), createBlock(_component_CoreBlockFooterContactPhone, { 35239 key: 2, 35240 phone: $setup.altPhone2, 35241 "data-object": $setup.dataObject 35242 }, null, 8, ["phone", "data-object"])) : createCommentVNode("", true), 35243 $setup.altPhone3 ? (openBlock(), createBlock(_component_CoreBlockFooterContactPhone, { 35244 key: 3, 35245 phone: $setup.altPhone3, 35246 "data-object": $setup.dataObject 35247 }, null, 8, ["phone", "data-object"])) : createCommentVNode("", true), 35248 $setup.mobile ? (openBlock(), createBlock(_component_CoreBlockFooterContactPhone, { 35249 key: 4, 35250 phone: $setup.mobile, 35251 "data-object": $setup.dataObject 35252 }, null, 8, ["phone", "data-object"])) : createCommentVNode("", true), 35253 $setup.fax ? (openBlock(), createBlock(_component_CoreBlockFooterContactPhone, { 35254 key: 5, 35255 phone: $setup.fax, 35256 "data-object": $setup.dataObject 35257 }, null, 8, ["phone", "data-object"])) : createCommentVNode("", true), 35258 $setup.email ? (openBlock(), createBlock(_component_CoreBlockFooterContactEmail, { 35259 key: 6, 35260 email: $setup.email, 35261 "data-object": $setup.dataObject 35262 }, null, 8, ["email", "data-object"])) : createCommentVNode("", true), 35263 $setup.address ? (openBlock(), createBlock(_component_CoreBlockFooterContactAddress, { 35264 key: 7, 35265 address: $setup.address, 35266 "data-object": $setup.dataObject 35267 }, null, 8, ["address", "data-object"])) : createCommentVNode("", true), 35268 $setup.address2 ? (openBlock(), createBlock(_component_CoreBlockFooterContactAddress, { 35269 key: 8, 35270 address: $setup.address2, 35271 "data-object": $setup.dataObject 35272 }, null, 8, ["address", "data-object"])) : createCommentVNode("", true), 35273 $setup.address3 ? (openBlock(), createBlock(_component_CoreBlockFooterContactAddress, { 35274 key: 9, 35275 address: $setup.address3, 35276 "data-object": $setup.dataObject 35277 }, null, 8, ["address", "data-object"])) : createCommentVNode("", true) 35278 ])) 35279 ]) 35280 ]); 35281} 35282const __nuxt_component_2$2 = /* @__PURE__ */ _export_sfc(_sfc_main$4d, [["render", _sfc_render$3G], ["__scopeId", "data-v-feef12a6"]]); 35283const CoreBlockFooterContact = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 35284 __proto__: null, 35285 default: __nuxt_component_2$2 35286}, Symbol.toStringTag, { value: "Module" })); 35287const _sfc_main$4c = { 35288 name: "CoreBlockFooterContactGroup", 35289 components: { 35290 CoreBlockFooterSocialLinks: __nuxt_component_3$2, 35291 CoreBlockFooterContact: __nuxt_component_2$2, 35292 CoreBlockFooterLogo: __nuxt_component_4$1 35293 }, 35294 props: { 35295 site: { 35296 type: Object, 35297 required: true 35298 }, 35299 isFooterMobile: { 35300 type: Boolean, 35301 default: false 35302 } 35303 }, 35304 setup(props) { 35305 const footer = computed(() => { 35306 return props.site.footer; 35307 }); 35308 const isStackedContentType = computed(() => { 35309 const contactTypes = [ 35310 "center-logo-stack-contact", 35311 "left-logo-stack-contact" 35312 ]; 35313 return contactTypes.includes(footer.value.component); 35314 }); 35315 const isCenterLogoType = computed(() => { 35316 const contactTypes = [ 35317 "center-logo-two-contact", 35318 "center-logo-stack-contact" 35319 ]; 35320 return contactTypes.includes(footer.value.component); 35321 }); 35322 const contact1 = computed(() => { 35323 return footer.value["contact-1"]; 35324 }); 35325 const showContact1 = computed(() => { 35326 if (Object.prototype.hasOwnProperty.call( 35327 footer.value, 35328 "contact-1-show" 35329 ) && !isStackedContentType.value) { 35330 return footer.value["contact-1-show"]; 35331 } 35332 return true; 35333 }); 35334 const contact2 = computed(() => { 35335 return footer.value["contact-2"]; 35336 }); 35337 const showContact2 = computed(() => { 35338 if (Object.prototype.hasOwnProperty.call( 35339 footer.value, 35340 "contact-2-show" 35341 ) && !isStackedContentType.value) { 35342 return footer.value["contact-2-show"]; 35343 } 35344 return true; 35345 }); 35346 const contact3 = computed(() => { 35347 return footer.value["contact-3"]; 35348 }); 35349 const showContact3 = computed(() => { 35350 if (isCenterLogoType.value || isStackedContentType.value) { 35351 return false;
35352 } 35353 if (Object.prototype.hasOwnProperty.call( 35354 footer.value, 35355 "contact-3-show" 35356 )) { 35357 return footer.value["contact-3-show"]; 35358 } 35359 return true; 35360 }); 35361 return { 35362 contact1, 35363 showContact1, 35364 contact2, 35365 showContact2, 35366 contact3, 35367 showContact3, 35368 isCenterLogoType, 35369 isStackedContentType, 35370 footer 35371 }; 35372 } 35373}; 35374const _hoisted_1$47 = { class: "footer-contact-group" }; 35375const _hoisted_2$3L = { key: 0 }; 35376const _hoisted_3$q = { key: 2 }; 35377function _sfc_render$3F(_ctx, _cache, $props, $setup, $data, $options) { 35378 const _component_CoreBlockFooterLogo = __nuxt_component_4$1; 35379 const _component_CoreBlockFooterSocialLinks = __nuxt_component_3$2; 35380 const _component_CoreBlockFooterContact = __nuxt_component_2$2; 35381 return openBlock(), createElementBlock("div", _hoisted_1$47, [ 35382 $setup.isCenterLogoType && $props.isFooterMobile ? (openBlock(), createElementBlock("div", _hoisted_2$3L, [ 35383 createVNode(_component_CoreBlockFooterLogo, { 35384 site: $props.site, 35385 "is-footer-mobile": true 35386 }, null, 8, ["site"]), 35387 createVNode(_component_CoreBlockFooterSocialLinks, { 35388 footer: $setup.footer, 35389 "cloned-site": $props.site, 35390 align: "center", 35391 "is-footer-mobile": true 35392 }, null, 8, ["footer", "cloned-site"]) 35393 ])) : createCommentVNode("", true), 35394 $setup.showContact1 && $setup.contact1 ? (openBlock(), createBlock(_component_CoreBlockFooterContact, { 35395 key: 1, 35396 contact: $setup.contact1, 35397 site: $props.site, 35398 type: "locations", 35399 "is-stacked": $setup.isStackedContentType, 35400 "team-member-id": "team-member-1" 35401 }, null, 8, ["contact", "site", "is-stacked"])) : createCommentVNode("", true), 35402 $setup.isCenterLogoType && !$props.isFooterMobile ? (openBlock(), createElementBlock("div", _hoisted_3$q, [ 35403 createVNode(_component_CoreBlockFooterLogo, { 35404 site: $props.site, 35405 "is-footer-mobile": false 35406 }, null, 8, ["site"]), 35407 createVNode(_component_CoreBlockFooterSocialLinks, { 35408 footer: $setup.footer, 35409 "cloned-site": $props.site, 35410 align: "center", 35411 "is-footer-mobile": false 35412 }, null, 8, ["footer", "cloned-site"]) 35413 ])) : createCommentVNode("", true), 35414 $setup.showContact2 && $setup.contact2 ? (openBlock(), createBlock(_component_CoreBlockFooterContact, { 35415 key: 3, 35416 contact: $setup.contact2, 35417 site: $props.site, 35418 type: "contacts", 35419 "is-stacked": $setup.isStackedContentType, 35420 "team-member-id": "team-member-2" 35421 }, null, 8, ["contact", "site", "is-stacked"])) : createCommentVNode("", true), 35422 $setup.showContact3 && $setup.contact3 ? (openBlock(), createBlock(_component_CoreBlockFooterContact, { 35423 key: 4, 35424 contact: $setup.contact3, 35425 site: $props.site, 35426 "team-member-id": "team-member-3" 35427 }, null, 8, ["contact", "site"])) : createCommentVNode("", true) 35428 ]); 35429} 35430const __nuxt_component_5 = /* @__PURE__ */ _export_sfc(_sfc_main$4c, [["render", _sfc_render$3F], ["__scopeId", "data-v-4319c159"]]); 35431const CoreBlockFooterContactGroup = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 35432 __proto__: null, 35433 default: __nuxt_component_5 35434}, Symbol.toStringTag, { value: "Module" })); 35435const _sfc_main$4b = { 35436 props: { 35437 settings: { 35438 type: Object, 35439 required: false 35440 } 35441 }, 35442 computed: { 35443 alt() { 35444 var _a, _b; 35445 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 35446 }, 35447 id() { 35448 var _a, _b; 35449 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 35450 } 35451 } 35452}; 35453const _hoisted_1$46 = ["aria-labelledby", "aria-label"]; 35454const _hoisted_2$3K = ["id"]; 35455function _sfc_render$3E(_ctx, _cache, $props, $setup, $data, $options) { 35456 return openBlock(), createElementBlock("svg", { 35457 width: "24", 35458 height: "24", 35459 viewBox: "0 0 24 24", 35460 fill: "none", 35461 "aria-label": "link", 35462 xmlns: "http://www.w3.org/2000/svg", 35463 role: "img", 35464 "aria-labelledby": `icon-title-${$options.id}` 35465 }, [ 35466 createBaseVNode("title", { 35467 id: `icon-title-${$options.id}` 35468 }, toDisplayString($options.alt), 9, _hoisted_2$3K), 35469 _cache[0] || (_cache[0] = createBaseVNode("path", { 35470 d: "M6 9L12 15L18 9", 35471 stroke: "currentColor", 35472 "stroke-width": "2", 35473 "stroke-linecap": "round", 35474 "stroke-linejoin": "round" 35475 }, null, -1)) 35476 ], 8, _hoisted_1$46); 35477} 35478const __nuxt_component_0$9 = /* @__PURE__ */ _export_sfc(_sfc_main$4b, [["render", _sfc_render$3E]]); 35479const CoreIconDownArrow = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 35480 __proto__: null, 35481 default: __nuxt_component_0$9 35482}, Symbol.toStringTag, { value: "Module" })); 35483const _hoisted_1$45 = { style: { "display": "flex" } }; 35484const _hoisted_2$3J = ["target", "href", "title", "aria-label"]; 35485const _hoisted_3$p = { style: { "display": "flex" } }; 35486const _hoisted_4$j = ["aria-expanded", "aria-label", "aria-controls", "onKeyup", "onKeydown"]; 35487const _hoisted_5$h = ["title", "aria-expanded", "aria-label", "aria-controls", "onKeydown"]; 35488const _hoisted_6$b = ["id", "aria-label"]; 35489const _hoisted_7$a = { 35490 key: 0, 35491 class: "navbar_item" 35492}; 35493const _hoisted_8$9 = { style: { "display": "flex" } }; 35494const _sfc_main$4a = { 35495 __name: "CoreBlockNavItem", 35496 props: { 35497 site: { 35498 type: Object, 35499 default: () => ({}) 35500 }, 35501 parentLinkUrl: { 35502 type: String, 35503 default: "" 35504 }, 35505 navitem: { 35506 type: Object, 35507 default: () => ({ 35508 id: "", 35509 title: "", 35510 openInNewTab: false 35511 }) 35512 }, 35513 tier: { 35514 type: Number, 35515 default: 1 35516 }, 35517 isBuilderMobile: { 35518 type: Boolean, 35519 default: false 35520 }, 35521 isFooter: { 35522 type: Boolean, 35523 default: false 35524 }, 35525 isNavOpen: { 35526 type: Boolean, 35527 default: false 35528 }, 35529 isMobile: { 35530 type: Boolean, 35531 default: false 35532 }, 35533 isEditable: { 35534 type: Boolean, 35535 default: false 35536 }, 35537 isBuilder: { 35538 type: Boolean, 35539 default: false 35540 } 35541 }, 35542 emits: ["click"], 35543 setup(__props, { emit: __emit }) { 35544 var _a; 35545 const props = __props; 35546 const emit2 = __emit; 35547 const route = useRoute(); 35548 const store = useStore(); 35549 const { state } = store; 35550 const featureFlags = computed(() => { 35551 var _a2; 35552 return (_a2 = state == null ? void 0 : state.settings) == null ? void 0 : _a2.featureFlags; 35553 }); 35554 const showDropDown = ref( 35555 ((_a = featureFlags.value) == null ? void 0 : _a.MobileNavItemCollapse) ? false : props.isMobile 35556 ); 35557 const autoCollapse = ref(true); 35558 const hoverPageId = ref(null); 35559 const submenuId = computed(() => { 35560 const prefix = props.isFooter ? "footer-nav-" : "nav-"; 35561 const baseId = props.navitem.id.toString() || (props.navitem.title ? props.navitem.title.replace(/\s+/g, "-") : "item"); 35562 const cleanBaseId = typeof baseId === "string" ? baseId.replace(/[^a-z0-9-_]/gi, "") : "item"; 35563 return `${prefix}${cleanBaseId}-tier${props.tier}`; 35564 }); 35565 const showSubmenu = computed(() => { 35566 const hasDropDown = hasChildren.value || isPageAsFolder.value; 35567 return hasDropDown && (showDropDown.value || props.tier == 1 && !props.isFooter && !props.isMobile || !props.isMobile && props.isFooter); 35568 }); 35569 const isFolder = computed(() => { 35570 var _a2; 35571 const hasBlocks = ((_a2 = props.navitem.blocks) == null ? void 0 : _a2.length) > 0 && isValidValue(props.navitem.blocks); 35572 const isLink = isValidValue(props.navitem.link); 35573 return !hasBlocks && !isLink && !isPageAsFolder.value; 35574 }); 35575 const isPageAsFolder = computed(() => { 35576 const pageSettings = parseString(props.navitem.settings); 35577 return pageSettings == null ? void 0 : pageSettings.pageAsFolder; 35578 }); 35579 const showPageAsFolderLink = computed(() => isPageAsFolder.value); 35580 const showFolderArrow = computed(() => { 35581 var _a2; 35582 if ((_a2 = featureFlags.value) == null ? void 0 : _a2.MobileNavItemCollapse) { 35583 return !!hasChildren.value && (props.isMobile || !props.isFooter); 35584 } 35585 return !props.isMobile && !props.isFooter; 35586 }); 35587 const showMobileCollapseSplit = computed( 35588 () => { 35589 var _a2; 35590 return ((_a2 = featureFlags.value) == null ? void 0 : _a2.MobileNavItemCollapse) && props.isMobile && !isFolder.value && hasChildren.value; 35591 } 35592 ); 35593 const rotateFolderArrow = computed(() => { 35594 var _a2; 35595 if ((_a2 = featureFlags.value) == null ? void 0 : _a2.MobileNavItemCollapse) { 35596 return showDropDown.value; 35597 } 35598 return showDropDown.value && !props.isMobile; 35599 }); 35600 const navTitle = computed( 35601 () => props.navitem.navigationTitle ? props.navitem.navigationTitle : props.navitem.title 35602 ); 35603 const isInternalLink = computed(() => { 35604 var _a2, _b, _c, _d; 35605 let link;
35606 try { 35607 link = (_b = JSON.parse((_a2 = props.navitem) == null ? void 0 : _a2.link)) == null ? void 0 : _b.url; 35608 } catch { 35609 link = (_d = (_c = props.navitem) == null ? void 0 : _c.link) == null ? void 0 : _d.url; 35610 } 35611 return !(typeof link === "string" && ((link == null ? void 0 : link.startsWith("http")) || (link == null ? void 0 : link.startsWith("mailto")) || (link == null ? void 0 : link.startsWith("tel")))); 35612 }); 35613 const navItems = computed( 35614 () => { 35615 var _a2, _b; 35616 return ((_b = (_a2 = props.site) == null ? void 0 : _a2.pages) == null ? void 0 : _b.filter((item) => !item.isPrivate)) || []; 35617 } 35618 ); 35619 const fullLinkUrl = computed(() => { 35620 var _a2, _b, _c, _d, _e, _f; 35621 let url; 35622 try { 35623 url = (_b = JSON.parse((_a2 = props.navitem) == null ? void 0 : _a2.link)) == null ? void 0 : _b.url; 35624 } catch { 35625 url = (_c = props.navitem.link) == null ? void 0 : _c.url; 35626 } 35627 const homepageId = (_d = props.site) == null ? void 0 : _d.homepageId; 35628 if (isInternalLink.value && !url) { 35629 const parentPath = props.parentLinkUrl !== "/" && props.parentLinkUrl !== "" ? props.parentLinkUrl : ""; 35630 return `${parentPath}/${props.navitem.handle}`; 35631 } else if (isInternalLink.value && (url == null ? void 0 : url.name) && (props.isEditable || props.isBuilder)) { 35632 return url.name; 35633 } else if (isInternalLink.value && (url == null ? void 0 : url.name)) { 35634 return { name: url.name, ...url.hash ? { hash: url.hash } : {} }; 35635 } else if (isInternalLink.value && url) { 35636 const page = (_f = (_e = props.site) == null ? void 0 : _e.pages) == null ? void 0 : _f.find( 35637 (p2) => p2.handle == url.substring(1) 35638 ); 35639 if ((page == null ? void 0 : page.id) == homepageId) { 35640 return "/"; 35641 } 35642 return url; 35643 } 35644 return url; 35645 }); 35646 const handleFocus = () => { 35647 if (props.isMobile) return; 35648 if (props.tier === 1) showDropDown.value = false; 35649 }; 35650 const parseString = (str) => { 35651 try { 35652 return JSON.parse(str); 35653 } catch { 35654 return str; 35655 } 35656 }; 35657 const isValidValue = (value) => { 35658 return value && value !== "null" && value !== "[]"; 35659 }; 35660 const subPages = computed(() => { 35661 return navItems.value.filter((nI) => nI.parentPageId == props.navitem.id); 35662 }); 35663 const target = computed( 35664 () => props.navitem.openInNewTab || !isInternalLink.value ? "_blank" : "_self" 35665 ); 35666 const hasChildren = computed(() => { 35667 var _a2; 35668 return (_a2 = subPages.value) == null ? void 0 : _a2.length; 35669 }); 35670 const activeLink = computed(() => { 35671 var _a2; 35672 const handle = (_a2 = props.navitem) == null ? void 0 : _a2.handle; 35673 if (!handle || !(route == null ? void 0 : route.path)) return false; 35674 const segment = `/${handle}`; 35675 const path = route.path; 35676 return path === segment || path.startsWith(`${segment}/`) || path.endsWith(segment); 35677 }); 35678 const toggleDropDown = () => { 35679 var _a2; 35680 if (((_a2 = featureFlags.value) == null ? void 0 : _a2.MobileNavItemCollapse) || !props.isMobile) { 35681 showDropDown.value = !showDropDown.value; 35682 } 35683 }; 35684 const closeDropDown = () => { 35685 showDropDown.value = false; 35686 }; 35687 const onClick = (event, closeNav = true) => { 35688 if (autoCollapse.value && !props.isMobile) showDropDown.value = false; 35689 emit2("click", event, closeNav); 35690 }; 35691 watch( 35692 () => props.isNavOpen, 35693 (newValue) => { 35694 var _a2; 35695 if (!newValue && autoCollapse.value) { 35696 if (!props.isMobile || ((_a2 = featureFlags.value) == null ? void 0 : _a2.MobileNavItemCollapse)) { 35697 showDropDown.value = false; 35698 } 35699 } 35700 } 35701 ); 35702 watch( 35703 () => props.isMobile, 35704 (newValue) => { 35705 var _a2; 35706 if (!((_a2 = featureFlags.value) == null ? void 0 : _a2.MobileNavItemCollapse)) { 35707 showDropDown.value = newValue; 35708 } 35709 } 35710 ); 35711 return (_ctx, _cache) => { 35712 const _component_CoreIconDownArrow = __nuxt_component_0$9; 35713 const _component_CoreBlockNavItem = _sfc_main$4a; 35714 return openBlock(), createElementBlock("li", { 35715 class: normalizeClass(["nav__item--container desktop-nav-updates", { "nuxt-link-active": activeLink.value }]), 35716 onMouseover: _cache[0] || (_cache[0] = ($event) => hoverPageId.value = `/${__props.navitem.handle}`), 35717 onMouseout: _cache[1] || (_cache[1] = ($event) => hoverPageId.value = null) 35718 }, [ 35719 isInternalLink.value && !isFolder.value && !hasChildren.value ? (openBlock(), createBlock(unref(__nuxt_component_2$5), { 35720 key: 0, 35721 to: fullLinkUrl.value, 35722 target: target.value, 35723 class: "navbar_link navbar_link-internal", 35724 tabindex: "0", 35725 exact: "", 35726 title: navTitle.value, 35727 "aria-label": navTitle.value, 35728 onClick 35729 }, { 35730 default: withCtx(() => [ 35731 createBaseVNode("div", null, toDisplayString(navTitle.value), 1), 35732 createBaseVNode("div", _hoisted_1$45, [ 35733 withDirectives(createVNode(_component_CoreIconDownArrow, { 35734 class: "right__arrow nav-arrow", 35735 "aria-hidden": "true" 35736 }, null, 512), [ 35737 [ 35738 vShow, 35739 featureFlags.value.MobileNavItemCollapse ? __props.isFooter && !__props.isMobile : __props.isFooter || __props.isMobile 35740 ] 35741 ]) 35742 ]) 35743 ]), 35744 _: 1 35745 }, 8, ["to", "target", "title", "aria-label"])) : !isFolder.value && !hasChildren.value ? (openBlock(), createElementBlock("a", { 35746 key: 1, 35747 class: "navbar_link navbar_link-external", 35748 target: target.value, 35749 href: fullLinkUrl.value, 35750 tabindex: "0", 35751 title: navTitle.value, 35752 "aria-label": navTitle.value 35753 }, [ 35754 createBaseVNode("div", null, toDisplayString(navTitle.value), 1), 35755 createBaseVNode("div", _hoisted_3$p, [ 35756 withDirectives(createVNode(_component_CoreIconDownArrow, { 35757 class: "right__arrow nav-arrow", 35758 "aria-hidden": "true" 35759 }, null, 512), [ 35760 [ 35761 vShow, 35762 featureFlags.value.MobileNavItemCollapse ? __props.isFooter && !__props.isMobile : __props.isFooter || __props.isMobile 35763 ] 35764 ]) 35765 ]) 35766 ], 8, _hoisted_2$3J)) : isFolder.value || hasChildren.value ? (openBlock(), createElementBlock(Fragment, { key: 2 }, [ 35767 showMobileCollapseSplit.value ? (openBlock(), createElementBlock("div", { 35768 key: 0, 35769 class: normalizeClass(["navbar_link navbar_link-folder navbar_link-folder--mobile-split", { "nuxt-link-active": activeLink.value }]) 35770 }, [ 35771 createVNode(unref(__nuxt_component_2$5), { 35772 to: fullLinkUrl.value, 35773 target: target.value, 35774 class: "navbar_link--split-text", 35775 tabindex: "0", 35776 exact: "", 35777 title: navTitle.value, 35778 "aria-label": navTitle.value, 35779 onClick 35780 }, { 35781 default: withCtx(() => [ 35782 createTextVNode(toDisplayString(navTitle.value), 1) 35783 ]), 35784 _: 1 35785 }, 8, ["to", "target", "title", "aria-label"]), 35786 createBaseVNode("button", { 35787 class: "navbar_link--split-toggle", 35788 "aria-expanded": String(showDropDown.value), 35789 "aria-label": `Toggle ${navTitle.value} submenu`, 35790 "aria-controls": submenuId.value, 35791 onClick: withModifiers(toggleDropDown, ["stop"]), 35792 onKeyup: [ 35793 withKeys(withModifiers(toggleDropDown, ["stop"]), ["enter"]), 35794 withKeys(withModifiers(toggleDropDown, ["stop"]), ["space"]) 35795 ], 35796 onKeydown: withKeys(withModifiers(closeDropDown, ["stop"]), ["escape"]) 35797 }, [ 35798 createVNode(_component_CoreIconDownArrow, { 35799 class: normalizeClass(["nav-arrow", { upward__arrow: showDropDown.value }]), 35800 "aria-hidden": "true" 35801 }, null, 8, ["class"]) 35802 ], 40, _hoisted_4$j) 35803 ], 2)) : (openBlock(), createElementBlock("div", { 35804 key: 1, 35805 class: normalizeClass(["navbar_link navbar_link-folder", { "nuxt-link-active": activeLink.value }]), 35806 role: "button", 35807 tabindex: "0", 35808 title: navTitle.value, 35809 "aria-expanded": String(showDropDown.value), 35810 "aria-label": navTitle.value, 35811 "aria-controls": submenuId.value, 35812 onKeyup: [ 35813 withKeys(toggleDropDown, ["enter"]), 35814 withKeys(toggleDropDown, ["space"]) 35815 ], 35816 onClick: toggleDropDown, 35817 onFocus: handleFocus, 35818 onKeydown: withKeys(withModifiers(closeDropDown, ["stop"]), ["escape"]) 35819 }, [ 35820 createTextVNode(toDisplayString(navTitle.value) + " ", 1), 35821 withDirectives(createVNode(_component_CoreIconDownArrow, { 35822 class: normalizeClass(["nav-arrow", { upward__arrow: rotateFolderArrow.value }]), 35823 "aria-hidden": "true" 35824 }, null, 8, ["class"]), [ 35825 [vShow, showFolderArrow.value] 35826 ]) 35827 ], 42, _hoisted_5$h)) 35828 ], 64)) : createCommentVNode("", true), 35829 showSubmenu.value ? (openBlock(), createElementBlock("ul", { 35830 key: 3, 35831 id: submenuId.value, 35832 class: normalizeClass(["navbar_nav navbar_nav--subnav", { "block_main-nav--subnav_open": showDropDown.value }]), 35833 "aria-label": `${navTitle.value} submenu` 35834 }, [ 35835 showPageAsFolderLink.value ? (openBlock(), createElementBlock("li", _hoisted_7$a, [ 35836 createVNode(unref(__nuxt_component_2$5), { 35837 to: fullLinkUrl.value, 35838 target: target.value, 35839 class: "navbar_link navbar_link-internal", 35840 tabindex: "0", 35841 exact: "", 35842 title: navTitle.value, 35843 "aria-label": navTitle.value, 35844 onClick 35845 }, { 35846 default: withCtx(() => [ 35847 createBaseVNode("div", null, toDisplayString(navTitle.value), 1), 35848 createBaseVNode("div", _hoisted_8$9, [ 35849 withDirectives(createVNode(_component_CoreIconDownArrow, { 35850 class: "right__arrow nav-arrow", 35851 "aria-hidden": "true" 35852 }, null, 512), [ 35853 [vShow, __props.isFooter || __props.isMobile] 35854 ]) 35855 ]) 35856 ]), 35857 _: 1 35858 }, 8, ["to", "target", "title", "aria-label"]) 35859 ])) : createCommentVNode("", true), 35860 (openBlock(true), createElementBlock(Fragment, null, renderList(subPages.value, (subPage) => { 35861 return openBlock(), createBlock(_component_CoreBlockNavItem, { 35862 key: subPage.title + subPage.handle, 35863 "is-editable": __props.isEditable, 35864 navitem: subPage, 35865 "parent-link-url": fullLinkUrl.value, 35866 site: __props.site, 35867 tier: __props.tier + 1, 35868 "is-footer": __props.isFooter, 35869 class: "navbar_item", 35870 tabindex: "-1", 35871 "is-mobile": __props.isMobile, 35872 onClick 35873 }
35873, null, 8, ["is-editable", "navitem", "parent-link-url", "site", "tier", "is-footer", "is-mobile"]); 35874 }), 128)) 35875 ], 10, _hoisted_6$b)) : createCommentVNode("", true) 35876 ], 34); 35877 }; 35878 } 35879}; 35880const CoreBlockNavItem = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 35881 __proto__: null, 35882 default: _sfc_main$4a 35883}, Symbol.toStringTag, { value: "Module" })); 35884const _sfc_main$49 = { 35885 name: "CoreBlockFooterOneTrust", 35886 props: { 35887 site: { 35888 type: Object, 35889 required: true 35890 }, 35891 isCoreLite: { 35892 type: Boolean, 35893 default: false 35894 } 35895 }, 35896 computed: { 35897 showLink() { 35898 var _a, _b, _c, _d; 35899 return ((_b = (_a = this.site.footer) == null ? void 0 : _a.oneTrust) == null ? void 0 : _b.useIntegration) && !((_d = (_c = this.site.footer) == null ? void 0 : _c.oneTrust) == null ? void 0 : _d.disabled) && !this.isCoreLite; 35900 } 35901 }, 35902 methods: { 35903 emitClick() { 35904 this.$el.querySelector(".ot-sdk-show-settings").click(); 35905 } 35906 } 35907}; 35908const _hoisted_1$44 = { 35909 key: 0, 35910 class: "one-trust-wrapper" 35911}; 35912function _sfc_render$3D(_ctx, _cache, $props, $setup, $data, $options) { 35913 return $options.showLink ? (openBlock(), createElementBlock("span", _hoisted_1$44, [ 35914 createBaseVNode("a", { 35915 tabindex: "0", 35916 role: "link", 35917 class: "ot-sdk-show-settings", 35918 title: "Your Privacy Choices", 35919 onKeyup: _cache[0] || (_cache[0] = withKeys((...args) => $options.emitClick && $options.emitClick(...args), ["enter"])) 35920 }, " Your Privacy Choices ", 32) 35921 ])) : createCommentVNode("", true); 35922} 35923const __nuxt_component_8 = /* @__PURE__ */ _export_sfc(_sfc_main$49, [["render", _sfc_render$3D]]); 35924const CoreBlockFooterOneTrust = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 35925 __proto__: null, 35926 default: __nuxt_component_8 35927}, Symbol.toStringTag, { value: "Module" })); 35928const _sfc_main$48 = { 35929 name: "CoreBlockImageCropped", 35930 props: { 35931 imageSrc: { 35932 type: [String, Object], 35933 default: "" 35934 }, 35935 mediaMetadata: { 35936 type: [String, Object], 35937 default: () => { 35938 } 35939 } 35940 }, 35941 computed: { 35942 cropSignature() { 35943 return JSON.stringify([this.imageSrc, this.mediaMetadata]); 35944 } 35945 }, 35946 watch: { 35947 cropSignature() { 35948 this.updateCanvas(); 35949 } 35950 }, 35951 mounted() { 35952 this.updateCanvas(); 35953 }, 35954 methods: { 35955 getMimeTypeByFilename(filename2) { 35956 try { 35957 const extension = filename2.split(".").splice(-1).join(); 35958 const mimeTypeMap = { 35959 // Add more extensions and MIME types as needed 35960 jpg: "image/jpeg", 35961 jpeg: "image/jpeg", 35962 png: "image/png" 35963 }; 35964 const lowercaseExtension = extension.toLowerCase(); 35965 return mimeTypeMap[lowercaseExtension] || "image/png"; 35966 } catch { 35967 return "image/png"; 35968 } 35969 }, 35970 updateCanvas() { 35971 var _a; 35972 const imageSrc = this.imageSrc && typeof this.imageSrc === "object" ? this.imageSrc.src : this.imageSrc; 35973 if (!((_a = this.mediaMetadata) == null ? void 0 : _a.image)) { 35974 return this.$emit("loaded", ""); 35975 } else { 35976 const requestedSignature = this.cropSignature; 35977 const imageToCrop = new Image(); 35978 imageToCrop.crossOrigin = "anonymous"; 35979 imageToCrop.onload = () => { 35980 if (this.cropSignature !== requestedSignature) return; 35981 const transformedImage = this.transformCanvas(imageToCrop); 35982 const croppedImage = this.cropCanvas(transformedImage); 35983 const type = this.getMimeTypeByFilename(imageSrc); 35984 const dataUrl = croppedImage == null ? void 0 : croppedImage.toDataURL(type, 0.8); 35985 this.$emit("loaded", dataUrl); 35986 }; 35987 imageToCrop.src = imageSrc; 35988 } 35989 }, 35990 transformCanvas(source) { 35991 try { 35992 const { image } = this.mediaMetadata; 35993 const sourceImage = source; 35994 const canvas = document.createElement("canvas"); 35995 if (canvas && image && sourceImage) { 35996 let postTranslateX, postTranslateY; 35997 const flipVertical = image.transforms.flip.vertical ? -1 : 1; 35998 const flipHorizontal = image.transforms.flip.horizontal ? -1 : 1; 35999 const convertedDegrees = Math.abs( 36000 image.transforms.rotate % 360 36001 ); 36002 if ([90, 270].includes(convertedDegrees)) { 36003 canvas.height = sourceImage.width; 36004 canvas.width = sourceImage.height; 36005 postTranslateX = canvas.height / 2; 36006 postTranslateY = canvas.width / 2; 36007 } else { 36008 canvas.height = sourceImage.height; 36009 canvas.width = sourceImage.width; 36010 postTranslateX = canvas.width / 2; 36011 postTranslateY = canvas.height / 2; 36012 } 36013 const ctx = canvas.getContext("2d"); 36014 ctx.translate(canvas.width / 2, canvas.height / 2); 36015 ctx.rotate(convertedDegrees * Math.PI / 180); 36016 ctx.scale(flipHorizontal, flipVertical); 36017 ctx.translate(-postTranslateX, -postTranslateY);
36018 ctx.drawImage(sourceImage, 0, 0); 36019 return canvas; 36020 } 36021 } catch (e) { 36022 this.$emit("loaded", ""); 36023 } 36024 }, 36025 cropCanvas(sourceCanvas) { 36026 try { 36027 const { coordinates } = this.mediaMetadata; 36028 const sourceImage = sourceCanvas; 36029 const canvas = document.createElement("canvas"); 36030 if (canvas && coordinates && sourceImage) { 36031 canvas.height = coordinates.height; 36032 canvas.width = coordinates.width; 36033 const ctx = canvas.getContext("2d"); 36034 ctx.drawImage( 36035 sourceImage, 36036 coordinates.left, 36037 coordinates.top, 36038 coordinates.width, 36039 coordinates.height, 36040 0, 36041 0, 36042 coordinates.width, 36043 coordinates.height 36044 ); 36045 return canvas; 36046 } 36047 } catch (e) { 36048 this.$emit("loaded", ""); 36049 } 36050 } 36051 } 36052}; 36053function _sfc_render$3C(_ctx, _cache, $props, $setup, $data, $options) { 36054 return createCommentVNode("", true); 36055} 36056const __nuxt_component_0$8 = /* @__PURE__ */ _export_sfc(_sfc_main$48, [["render", _sfc_render$3C]]); 36057const CoreBlockImageCropped = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 36058 __proto__: null, 36059 default: __nuxt_component_0$8 36060}, Symbol.toStringTag, { value: "Module" })); 36061function useMedia(mediaSrc) { 36062 const mediaUrl = computed(() => { 36063 return mediaSrc.value && typeof mediaSrc.value === "object" ? mediaSrc.value.src : mediaSrc.value; 36064 }); 36065 const isImage = computed(() => { 36066 return mediaUrl.value ? mediaUrl.value.match( 36067 /\.jpg|\.jpeg|\.jfif|\.pjpeg|\.pjp|\.gif|\.png|\.svg|\.webp|^data:image\//i 36068 ) : null; 36069 }); 36070 const isFile2 = computed(() => { 36071 return mediaUrl.value ? mediaUrl.value.match(/\.csv|\.pdf|\.html|\.txt/i) : null; 36072 }); 36073 const isBlobFile = computed(() => { 36074 return mediaUrl.value ? mediaUrl.value.includes("uploads") : false; 36075 }); 36076 const isYoutube = computed(() => { 36077 return mediaUrl.value ? mediaUrl.value.match(/https:\/\/www\.youtube\.com\/embed\/.*/) : null; 36078 }); 36079 const isVimeo = computed(() => { 36080 return mediaUrl.value ? mediaUrl.value.match(/https:\/\/player\.vimeo\.com\/video\/.*/) : null; 36081 }); 36082 const isBrightcove = computed(() => { 36083 return mediaUrl.value ? mediaUrl.value.match(/https:\/\/players\.brightcove\.net\/.*/) : null; 36084 }); 36085 const isEMoney = computed(() => { 36086 return mediaUrl.value ? mediaUrl.value.match(/https:\/\/abm\.emaplan\.com\/.*/) : null; 36087 }); 36088 const isUploadedVideo = computed(() => { 36089 if (mediaUrl.value) { 36090 return /\.(mp4|mov|avi|webm)(\?.*)?$/i.test(mediaUrl.value) && isBlobFile.value; 36091 } 36092 return null; 36093 }); 36094 const isVideo = computed(() => { 36095 return isYoutube.value || isVimeo.value || isBrightcove.value || isEMoney.value || isUploadedVideo.value; 36096 }); 36097 const videoAutoPlayUrl = computed(() => { 36098 if (!isVideo.value) return ""; 36099 try { 36100 const url = new URL(mediaUrl.value); 36101 if (isYoutube.value) { 36102 url.searchParams.set("autoplay", "1"); 36103 url.searchParams.set("mute", "1"); 36104 url.searchParams.set("rel", "0"); 36105 url.searchParams.set("iv_load_policy", "3"); 36106 return url.toString(); 36107 } 36108 url.searchParams.set("autoplay", "1"); 36109 url.searchParams.set("muted", "1"); 36110 return url.toString(); 36111 } catch (error) { 36112 return mediaUrl.value; 36113 } 36114 }); 36115 const videoLoopUrl = computed(() => { 36116 if (!isVideo.value) return ""; 36117 try { 36118 const url = new URL(videoAutoPlayUrl.value); 36119 if (isYoutube.value) { 36120 const videoId = url.toString().match(/\/embed\/([^?]*)/)[1]; 36121 url.searchParams.set("loop", "1"); 36122 url.searchParams.set("playlist", videoId); 36123 return url.toString(); 36124 } 36125 url.searchParams.set("loop", "1"); 36126 return url.toString(); 36127 } catch (error) { 36128 return videoAutoPlayUrl.value; 36129 } 36130 }); 36131 const mediaType = computed(() => { 36132 if (isImage.value) { 36133 return "image"; 36134 } 36135 if (isVideo.value) { 36136 return "video"; 36137 } 36138 if (isFile2.value) { 36139 return "file"; 36140 } 36141 return null; 36142 }); 36143 return { 36144 mediaUrl, 36145 isImage, 36146 isFile: isFile2, 36147 isBlobFile, 36148 isYoutube, 36149 isVimeo, 36150 isBrightcove, 36151 isEMoney, 36152 isUploadedVideo, 36153 isVideo, 36154 mediaType, 36155 videoAutoPlayUrl, 36156 videoLoopUrl 36157 }; 36158} 36159const JWPLAYER_LIBRARY_URL = "https://content.jwplatform.com/libraries/ljXVSIQY.js"; 36160async function loadExternalScriptOnce(src) { 36161 return new Promise((resolve2, reject) => { 36162 const existing = document.querySelector(`script[src="${src}"]`); 36163 if (existing) { 36164 resolve2(true); 36165 return; 36166 } 36167 const script = document.createElement("script"); 36168 script.src = src; 36169 script.onload = () => resolve2(true); 36170 script.onerror = () => reject(new Error(`Failed to load script ${src}`)); 36171 document.body.appendChild(script); 36172 }); 36173} 36174async function waitForJwPlayerReadyById(playerId, timeoutMs = 5e3) { 36175 const start = Date.now(); 36176 while (Date.now() - start < timeoutMs) { 36177 const el = document.getElementById(playerId); 36178 if (el && el.innerHTML && (el.innerHTML.includes("jwplayer") || el.querySelector("video, iframe"))) { 36179 return true; 36180 } 36181 await new Promise((r2) => setTimeout(r2, 100)); 36182 } 36183 return false;
36184} 36185async function ensureJwLibraryLoaded() { 36186 if (typeof window !== "undefined" && window.jwplayer) return true; 36187 await loadExternalScriptOnce(JWPLAYER_LIBRARY_URL); 36188 await new Promise((r2) => setTimeout(r2, 0)); 36189 return true; 36190} 36191const mediaHelper = { 36192 isImage(src) { 36193 return typeof src === "string" && src && src.match( 36194 /\.jpg|\.jpeg|\.jfif|\.pjpeg|\.pjp|\.gif|\.png|\.svg|\.webp|^data:image\//i 36195 ); 36196 }, 36197 isFile(src) { 36198 return typeof src === "string" && src && src.match(/\.csv|\.pdf|\.html|\.txt\//i); 36199 }, 36200 isVideo(src) { 36201 return typeof src === "string" && src && (this.isYoutube(src) || this.isVimeo(src) || this.isBrightcove(src) || this.isEMoney(src)); 36202 }, 36203 isYoutube(src) { 36204 return typeof src === "string" && src.match(/https:\/\/www\.youtube\.com\/embed\/.*/); 36205 }, 36206 isVimeo(src) { 36207 return typeof src === "string" && src.match(/https:\/\/player\.vimeo\.com\/video\/.*/); 36208 }, 36209 isBrightcove(src) { 36210 return typeof src === "string" && src.match(/https:\/\/players\.brightcove\.net\/.*/); 36211 }, 36212 isEMoney(src) { 36213 return typeof src === "string" && src.match(/https:\/\/abm\.emaplan\.com\/.*/); 36214 }, 36215 isCoreLiteUnsupportedVideo(src) { 36216 return Boolean(this.isEMoney(src) || this.isBrightcove(src)); 36217 }, 36218 loadImage(src) { 36219 return new Promise((resolve2, reject) => { 36220 const img = new Image(); 36221 img.src = src; 36222 img.onload = () => resolve2(img); 36223 img.onerror = (e) => reject(e); 36224 }); 36225 }, 36226 async getImageBackgroundPosition(metaData, focalPointMedatada, croppedCoordinates) { 36227 var _a, _b; 36228 try { 36229 const img = (metaData == null ? void 0 : metaData.image) || await this.loadImage(metaData.url); 36230 let x2 = (focalPointMedatada == null ? void 0 : focalPointMedatada.left) / ((croppedCoordinates == null ? void 0 : croppedCoordinates.width) || (img == null ? void 0 : img.width)) * 100; 36231 let y = (focalPointMedatada == null ? void 0 : focalPointMedatada.top) / ((croppedCoordinates == null ? void 0 : croppedCoordinates.height) || (img == null ? void 0 : img.height)) * 100; 36232 x2 = x2 > 100 ? 100 : x2; 36233 y = y > 100 ? 100 : y; 36234 x2 = ((_a = focalPointMedatada == null ? void 0 : focalPointMedatada.flip) == null ? void 0 : _a.horizontal) ? 100 - x2 : x2; 36235 y = ((_b = focalPointMedatada == null ? void 0 : focalPointMedatada.flip) == null ? void 0 : _b.vertical) ? 100 - y : y; 36236 if (isNaN(x2) || isNaN(y)) return "50% 50%"; 36237 return `${Math.round(x2)}% ${Math.round(y)}%`; 36238 } catch { 36239 return "50% 50%"; 36240 } 36241 }, 36242 getEncodedURI(url) { 36243 if (!url || typeof url !== "string") return url; 36244 try { 36245 const isEncoded = decodeURI(url) !== url; 36246 return isEncoded ? url : encodeURI(url).replace(/\(/g, "%28").replace(/\)/g, "%29"); 36247 } catch { 36248 return url; 36249 } 36250 }, 36251 checkIfHasPlayerId(url) { 36252 if (!url) return ""; 36253 try { 36254 let myUrl = new URL(url); 36255 let params = myUrl.searchParams; 36256 if (params.has("playerId")) { 36257 return params.get("playerId"); 36258 } 36259 } catch { 36260 return ""; 36261 } 36262 return ""; 36263 }, 36264 getMediaTypeFromSrc(src) { 36265 if (!src) return "unknown"; 36266 const _src = src.toLowerCase(); 36267 if (this.isImage(src)) return "image"; 36268 if (this.isVideo(src)) return "video"; 36269 if (_src.includes("mp4") || _src.includes("mov") || _src.includes("avi") || _src.includes("webm")) 36270 return "video"; 36271 return "unknown"; 36272 }, 36273 async getMediaTypeFromHeaders(url) { 36274 try { 36275 const response = await fetch(url, { method: "GET" }); 36276 const contentType = response.headers.get("content-type") || ""; 36277 if (contentType.startsWith("image/")) return "image"; 36278 if (contentType.startsWith("video/")) return "video"; 36279 return "unknown"; 36280 } catch (e) { 36281 return "unknown"; 36282 } 36283 } 36284}; 36285const _sfc_main$47 = { 36286 name: "CoreBlockFooterBackground", 36287 props: { 36288 footer: { 36289 type: Object, 36290 required: true 36291 } 36292 }, 36293 setup(props) { 36294 const { isExpired } = useIsExpired( 36295 props.footer, 36296 (item) => (item == null ? void 0 : item.propertyKey) === "backgroundImage" 36297 ); 36298 const backgroundImage = computed( 36299 () => props.footer.backgroundImage || {} 36300 ); 36301 const croppedImage = ref(null); 36302 const { isImage } = useMedia(backgroundImage); 36303 watch(backgroundImage, (newValue) => { 36304 if (!newValue || !newValue.src) { 36305 croppedImage.value = null; 36306 } 36307 }); 36308 const background = computed(() => { 36309 var _a, _b, _c; 36310 if (!backgroundImage.value) return ""; 36311 if (isExpired.value) return ""; 36312 const image = croppedImage.value || mediaHelper.getEncodedURI((_a = backgroundImage.value) == null ? void 0 : _a.src); 36313 if (!image) return ""; 36314 return { 36315 "background-image": `url(${image})`, 36316 "background-position": (_c = (_b = backgroundImage.value) == null ? void 0 : _b.focal) == null ? void 0 : _c.bgPosition, 36317 "background-repeat": "no-repeat", 36318 "background-size": "cover", 36319 height: "inherit" 36320 }; 36321 }); 36322 const backgroundClass = computed(() => { 36323 const color = props.footer.backgroundColor; 36324 switch (color) { 36325 case "white": 36326 return "footer__background--white"; 36327 case "grey": 36328 return "footer__background--grey"; 36329 case "light": 36330 return "footer__background--light"; 36331 case "dark": 36332 return "footer__background--dark"; 36333 default: 36334 return ""; 36335 } 36336 }); 36337 const applyOverlay = computed(() => { 36338 return !!props.footer.overlay || !!props.footer.gradient; 36339 });
36340 const overlayClasses = computed(() => { 36341 if (isExpired.value) return null; 36342 const overlay2 = props.footer.overlay; 36343 const gradient = props.footer.gradient; 36344 if (!overlay2 && !gradient) return false; 36345 const classes = { 36346 "footer__background--overlay": overlay2, 36347 "footer__background--gradient": gradient 36348 }; 36349 if (overlay2 && props.footer.overlayOpacity) { 36350 classes[`footer__background--${props.footer.overlayOpacity}`] = true; 36351 } 36352 if (overlay2 && props.footer.overlayColor) { 36353 classes[`footer__background--${props.footer.overlayColor}`] = true; 36354 } 36355 if (gradient && props.footer.gradientColor) { 36356 classes[`footer__background--${props.footer.gradientColor}`] = true; 36357 } 36358 if (gradient && props.footer.gradientDirection) { 36359 classes[`footer__background--${props.footer.gradientDirection}`] = true; 36360 } 36361 return classes; 36362 }); 36363 const overlay = computed(() => { 36364 return { 36365 enabled: applyOverlay.value, 36366 classes: overlayClasses.value 36367 }; 36368 }); 36369 const setCroppedImage = (image) => { 36370 croppedImage.value = image; 36371 }; 36372 return { 36373 applyOverlay, 36374 background, 36375 backgroundClass, 36376 backgroundImage, 36377 croppedImage, 36378 isExpired, 36379 isImage, 36380 overlay, 36381 setCroppedImage 36382 }; 36383 } 36384}; 36385const _hoisted_1$43 = { key: 0 }; 36386const _hoisted_2$3I = { class: "footer__content" }; 36387function _sfc_render$3B(_ctx, _cache, $props, $setup, $data, $options) { 36388 const _component_CoreBlockImageCropped = __nuxt_component_0$8; 36389 return openBlock(), createElementBlock("div", { 36390 class: normalizeClass(["footer__background", $setup.backgroundClass]), 36391 style: normalizeStyle($setup.background) 36392 }, [ 36393 $setup.isImage ? (openBlock(), createElementBlock("div", _hoisted_1$43, [ 36394 $setup.backgroundImage.src ? (openBlock(), createBlock(_component_CoreBlockImageCropped, { 36395 key: 0, 36396 "image-src": $setup.backgroundImage.src, 36397 "media-metadata": { 36398 ...$setup.backgroundImage.crop, 36399 ...$setup.backgroundImage.focal 36400 }, 36401 onLoaded: $setup.setCroppedImage 36402 }, null, 8, ["image-src", "media-metadata", "onLoaded"])) : createCommentVNode("", true) 36403 ])) : createCommentVNode("", true), 36404 createBaseVNode("div", _hoisted_2$3I, [ 36405 renderSlot(_ctx.$slots, "default"), 36406 $setup.applyOverlay ? (openBlock(), createElementBlock("div", { 36407 key: 0, 36408 class: normalizeClass($setup.overlay.classes) 36409 }, null, 2)) : createCommentVNode("", true) 36410 ]) 36411 ], 6); 36412} 36413const __nuxt_component_9 = /* @__PURE__ */ _export_sfc(_sfc_main$47, [["render", _sfc_render$3B]]); 36414const CoreBlockFooterBackground = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 36415 __proto__: null, 36416 default: __nuxt_component_9 36417}, Symbol.toStringTag, { value: "Module" })); 36418const BrandEnum = { 36419 NYL: 3 36420}; 36421const GENERAL_OFFICE_TAG_ID = 1305; 36422const isRegRepIndicator = (indicator) => (indicator == null ? void 0 : indicator.toUpperCase()) === "Y"; 36423const requiresSecuritiesDisclosure = (site) => { 36424 var _a, _b, _c, _d; 36425 if ((site == null ? void 0 : site.brandId) !== BrandEnum.NYL) return false; 36426 return (((_a = site.tags) == null ? void 0 : _a.includes(GENERAL_OFFICE_TAG_ID)) ?? false) || isRegRepIndicator((_c = (_b = site.user) == null ? void 0 : _b.ddcUserData) == null ? void 0 : _c.regRepInd) || (((_d = site.teamMembers) == null ? void 0 : _d.some( 36427 (member) => isRegRepIndicator(member == null ? void 0 : member.regRepInd) 36428 )) ?? false); 36429}; 36430const _sfc_main$46 = { 36431 name: "CoreBlockFooter", 36432 components: { 36433 NuxtLink: __nuxt_component_2$5, 36434 CoreBlockFooterDisclosures: __nuxt_component_0$d, 36435 CoreBlockFooterBanner: __nuxt_component_1$6, 36436 CoreBlockFooterOneTrust: __nuxt_component_8, 36437 CoreBlockFooterLogo: __nuxt_component_4$1, 36438 CoreBlockFooterContactGroup: __nuxt_component_5, 36439 CoreBlockFooterSocialLinks: __nuxt_component_3$2, 36440 CoreBlockFooterBackground: __nuxt_component_9 36441 }, 36442 props: { 36443 site: { 36444 type: Object, 36445 default: () => { 36446 return {}; 36447 } 36448 }, 36449 isBuilder: { 36450 type: Boolean, 36451 default: false 36452 }, 36453 // the builder preview is set to mobile view 36454 isBuilderMobile: { 36455 type: Boolean, 36456 default: false 36457 }, 36458 isEditable: { 36459 type: Boolean, 36460 default: false 36461 } 36462 }, 36463 setup(props) { 36464 provide(SCROLL_ANIMATION_EXCLUDED_KEY, true); 36465 const { isMobile } = useIsMobile(); 36466 const { isExpired } = useIsExpired( 36467 props.site.footer, 36468 (item) => (item == null ? void 0 : item.propertyKey) === "image" 36469 ); 36470 const store = useStore(); 36471 const { state, commit: commit2 } = store; 36472 const dataSite = computed(() => { 36473 const fromStore = sitePath(store); 36474 const hasPropSiteData = props.site && (props.site.footer !== void 0 || props.site.pages !== void 0); 36475 const hasStoreSiteData = fromStore && (fromStore.footer !== void 0 || fromStore.pages !== void 0); 36476 if (hasPropSiteData) return props.site; 36477 return hasStoreSiteData ? fromStore : props.site; 36478 }); 36479 const isCoreLite = computed( 36480 () => store.getters["settings/getBrandFeatureFlag"]("CoreLite") 36481 ); 36482 return { 36483 isExpired, 36484 isMobile, 36485 state, 36486 commit: commit2, 36487 dataSite, 36488 isCoreLite 36489 }; 36490 }, 36491 computed: { 36492 isNYL() { 36493 var _a; 36494 return ((_a = this == null ? void 0 : this.site) == null ? void 0 : _a.brandId) === BrandEnum.NYL; 36495 }, 36496 requiresSecuritiesDisclosure() { 36497 return requiresSecuritiesDisclosure(this.site); 36498 }, 36499 isAgentDisclosureUpdatesEnabled() { 36500 var _a, _b, _c; 36501 return !!((_c = (_b = (_a = this.state) == null ? void 0 : _a.settings) == null ? void 0 : _b.featureFlags) == null ? void 0 : _c.AgentDisclosureUpdatesUI); 36502 }, 36503 disclosureLocation() { 36504 var _a; 36505 return (_a = this.footer) == null ? void 0 : _a.disclosureLocation; 36506 }, 36507 showDisclosuresInsideFooter() { 36508 return this.isNYL && this.isAgentDisclosureUpdatesEnabled; 36509 }, 36510 showDisclosuresPageLink() { 36511 return this.isNYL && this.isAgentDisclosureUpdatesEnabled && this.disclosureLocation === "disclosures_page"; 36512 }, 36513 showDisclosuresAboveNav() { 36514 return this.showDisclosuresInsideFooter && this.showDisclosuresPageLink; 36515 }, 36516 showDisclosuresBelowNav() { 36517 return this.showDisclosuresInsideFooter && !this.showDisclosuresPageLink; 36518 }, 36519 hasFooterNav() { 36520 return this.pageTree.length > 1; 36521 }, 36522 blockClasses() { 36523 const classList = []; 36524 if (this.isBuilder) { 36525 classList.push("footer__pointer_all"); 36526 } 36527 if (this.showDisclosuresInsideFooter) { 36528 classList.push("footer--disclosures-inside-footer"); 36529 if (!this.hasFooterNav) { 36530 classList.push("footer--disclosures-no-nav"); 36531 } 36532 } 36533 return classList; 36534 }, 36535 pageTree() { 36536 var _a, _b, _c;
36537 try { 36538 const pageTree = ((_a = this == null ? void 0 : this.site) == null ? void 0 : _a.pages.filter( 36539 (p2) => { 36540 var _a2, _b2; 36541 return !p2.isPrivate && !p2.parentPageId && ((_a2 = this == null ? void 0 : this.site) == null ? void 0 : _a2.homepageId) != p2.id && !((_b2 = getPageSettings(p2)) == null ? void 0 : _b2.isNavButton); 36542 } 36543 )) || []; 36544 const navButton = (_c = (_b = this == null ? void 0 : this.site) == null ? void 0 : _b.pages) == null ? void 0 : _c.find( 36545 (p2) => { 36546 var _a2; 36547 return (_a2 = getPageSettings(p2)) == null ? void 0 : _a2.isNavButton; 36548 } 36549 ); 36550 if (navButton) { 36551 pageTree.push(navButton); 36552 } 36553 return pageTree; 36554 } catch (err) { 36555 return []; 36556 } 36557 }, 36558 footer() { 36559 var _a; 36560 return ((_a = this.site) == null ? void 0 : _a.footer) || {}; 36561 }, 36562 clonedSite() { 36563 const site = this.dataSite; 36564 if (!site) return null; 36565 const year = (/* @__PURE__ */ new Date()).getFullYear(); 36566 const needsCopyright = this.requiresSecuritiesDisclosure; 36567 return { year, needsCopyright, ...site }; 36568 }, 36569 copyright() { 36570 return renderData(this.footer.copyright, this.clonedSite); 36571 }, 36572 copyrightText() { 36573 var _a; 36574 return renderData( 36575 ((_a = this.footer) == null ? void 0 : _a.copyrightText) || "", 36576 this.clonedSite 36577 ); 36578 }, 36579 showFooter() { 36580 return this.footer.showFooter || false; 36581 }, 36582 showCopyright() { 36583 return this.footer.showCopyright || false; 36584 }, 36585 isCenterForm() { 36586 return this.footer.component === "center-aligned-form"; 36587 }, 36588 showForm() { 36589 const formTypes = ["left-aligned-form", "center-aligned-form"]; 36590 return formTypes.includes(this.footer.component); 36591 }, 36592 showImage() { 36593 const imageTypes = [ 36594 "large-image-three-contact", 36595 "small-image-three-contact" 36596 ]; 36597 return imageTypes.includes(this.footer.component); 36598 }, 36599 showContacts() { 36600 const contactTypes = [ 36601 "large-image-three-contact", 36602 "small-image-three-contact", 36603 "center-logo-two-contact", 36604 "top-logo-three-contact", 36605 "left-logo-three-contact", 36606 "left-logo-stack-contact", 36607 "center-logo-stack-contact" 36608 ]; 36609 return contactTypes.includes(this.footer.component); 36610 }, 36611 isLargeImage() { 36612 return this.footer.component === "large-image-three-contact"; 36613 }, 36614 image() { 36615 if (!this.showImage) { 36616 return {}; 36617 } 36618 return this.footer.image || { 36619 src: "https://f92core-nylwebsites.azureedge.net/3/uploads/Image-Placeholder-500x500.png", 36620 alt: "" 36621 }; 36622 }, 36623 imageClass() { 36624 if (!this.showImage) { 36625 return ""; 36626 } 36627 return this.isLargeImage ? "footer__image--large" : "footer__image--small"; 36628 }, 36629 formSettings() { 36630 return { 36631 location: "footer", 36632 type: "form", 36633 formType: "agentCustom", 36634 variants: { 36635 buttonAlign: this.isCenterForm ? "button-center" : "button-left" 36636 } 36637 }; 36638 }, 36639 formHeadline() { 36640 return this.footer.formHeadline; 36641 }, 36642 navItems() { 36643 var _a, _b; 36644 return ((_b = (_a = this == null ? void 0 : this.site) == null ? void 0 : _a.navigation) == null ? void 0 : _b.links) || []; 36645 }, 36646 isFooterMobile() { 36647 return (this.isBuilderMobile || this.isMobile) ?? false; 36648 }, 36649 isLogoLeft() { 36650 return !this.showForm && !this.showImage && !this.isLogoCenter && !this.isLogoTop || !this.isLogoRight; 36651 }, 36652 isLogoRight() { 36653 return !this.isCenterForm || this.isLargeImage; 36654 }, 36655 isLogoCenter() { 36656 const contactTypes = [ 36657 "center-logo-two-contact", 36658 "center-logo-stack-contact" 36659 ]; 36660 return contactTypes.includes(this.footer.component); 36661 }, 36662 isLogoTop() { 36663 return this.footer.component === "top-logo-three-contact"; 36664 } 36665 }, 36666 methods: { 36667 handleToggle() { 36668 if (this.isBuilder && this.isEditable && !this.state.interface.isLeftRailClosing) { 36669 if (!this.state.interface.activeSidebarKey) { 36670 this.commit("interface/toggleActiveSidebarKey", "footer"); 36671 } else { 36672 this.commit("interface/setActiveSidebarKey"); 36673 } 36674 this.commit( 36675 "interface/setRightRailOpening", 36676 !this.state.interface.isRightRailOpening 36677 ); 36678 this.commit("site/clearSelectedBlockIds"); 36679 setTimeout(() => { 36680 const targetElement = document.querySelector( 36681 ".editor-main-navigation" 36682 ); 36683 if (targetElement) 36684 targetElement.scrollIntoView({ behavior: "smooth" }); 36685 }, 500); 36686 } 36687 } 36688 } 36689}; 36690const _hoisted_1$42 = { class: "footer__top" }; 36691const _hoisted_2$3H = { class: "navbar" }; 36692const _hoisted_3$o = { class: "nav" }; 36693const _hoisted_4$i = { class: "nav-left" }; 36694const _hoisted_5$g = { key: 0 }; 36695const _hoisted_6$a = { 36696 key: 0, 36697 "data-testid": "footer-image-expired", 36698 class: "expired-content", 36699 "aria-hidden": "true" 36700}; 36701const _hoisted_7$9 = { key: 1 }; 36702const _hoisted_8$8 = { 36703 key: 2, 36704 class: "footer__form" 36705}; 36706const _hoisted_9$7 = { 36707 key: 0,
36708 class: "nav-center" 36709}; 36710const _hoisted_10$6 = { key: 0 }; 36711const _hoisted_11$5 = { 36712 key: 0, 36713 class: "footer__form" 36714}; 36715const _hoisted_12$5 = { class: "nav-right" }; 36716const _hoisted_13$5 = { class: "footer__top--right" }; 36717const _hoisted_14$5 = { 36718 key: 1, 36719 "aria-label": "Footer navigation" 36720}; 36721const _hoisted_15$5 = { 36722 class: "subnav", 36723 "aria-label": "Site pages" 36724}; 36725const _hoisted_16$5 = { 36726 class: "copyright-section", 36727 role: "region", 36728 "aria-label": "Copyright information" 36729}; 36730const _hoisted_17$4 = { class: "copyright-text" }; 36731const _hoisted_18$4 = { key: 0 }; 36732const _hoisted_19$4 = ["innerHTML"]; 36733function _sfc_render$3A(_ctx, _cache, $props, $setup, $data, $options) { 36734 const _component_CoreBlockFooterDisclosures = __nuxt_component_0$d; 36735 const _component_CoreBlockFooterBanner = __nuxt_component_1$6; 36736 const _component_CoreBlock = _sfc_main$4x; 36737 const _component_CoreBlockFooterSocialLinks = __nuxt_component_3$2; 36738 const _component_CoreBlockFooterLogo = __nuxt_component_4$1; 36739 const _component_CoreBlockFooterContactGroup = __nuxt_component_5; 36740 const _component_CoreBlockNavItem = _sfc_main$4a; 36741 const _component_NuxtLink = __nuxt_component_2$5; 36742 const _component_CoreBlockFooterOneTrust = __nuxt_component_8; 36743 const _component_CoreBlockFooterBackground = __nuxt_component_9; 36744 return withDirectives((openBlock(), createElementBlock("footer", { 36745 class: normalizeClass(["footer", $options.blockClasses]), 36746 role: "contentinfo", 36747 "aria-label": "Footer", 36748 onClick: _cache[0] || (_cache[0] = (...args) => $options.handleToggle && $options.handleToggle(...args)) 36749 }, [ 36750 $options.isNYL && !$options.showDisclosuresInsideFooter ? (openBlock(), createBlock(_component_CoreBlockFooterDisclosures, { 36751 key: 0, 36752 site: $props.site, 36753 "is-mobile": $options.isFooterMobile, 36754 "show-disclosures-page-link": $options.showDisclosuresPageLink 36755 }, null, 8, ["site", "is-mobile", "show-disclosures-page-link"])) : createCommentVNode("", true), 36756 $options.requiresSecuritiesDisclosure ? (openBlock(), createBlock(_component_CoreBlockFooterBanner, { 36757 key: 1, 36758 site: $props.site 36759 }, null, 8, ["site"])) : createCommentVNode("", true), 36760 createVNode(_component_CoreBlockFooterBackground, { footer: $options.footer }, { 36761 default: withCtx(() => [ 36762 createBaseVNode("div", _hoisted_1$42, [ 36763 createBaseVNode("div", _hoisted_2$3H, [ 36764 createBaseVNode("nav", _hoisted_3$o, [ 36765 createBaseVNode("div", _hoisted_4$i, [ 36766 $options.showImage ? (openBlock(), createElementBlock("div", _hoisted_5$g, [ 36767 $options.image.src ? (openBlock(), createElementBlock("div", { 36768 key: 0, 36769 class: normalizeClass($options.imageClass) 36770 }, [ 36771 $setup.isExpired ? (openBlock(), createElementBlock("div", _hoisted_6$a)) : (openBlock(), createBlock(_component_CoreBlock, { 36772 key: 1, 36773 settings: { 36774 type: "image", 36775 src: $options.image 36776 } 36777 }, null, 8, ["settings"])) 36778 ], 2)) : createCommentVNode("", true), 36779 $options.isLargeImage ? (openBlock(), createBlock(_component_CoreBlockFooterSocialLinks, { 36780 key: 1, 36781 footer: $options.footer, 36782 "cloned-site": $options.clonedSite, 36783 "is-footer-mobile": $options.isFooterMobile 36784 }, null, 8, ["footer", "cloned-site", "is-footer-mobile"])) : createCommentVNode("", true) 36785 ])) : createCommentVNode("", true), 36786 $options.showImage && $options.isLargeImage ? (openBlock(), createElementBlock("div", _hoisted_7$9, [ 36787 createVNode(_component_CoreBlockFooterLogo, { 36788 site: $props.site, 36789 "is-footer-mobile": $options.isFooterMobile 36790 }, null, 8, ["site", "is-footer-mobile"]), 36791 createVNode(_component_CoreBlockFooterContactGroup, { 36792 site: $setup.dataSite, 36793 "is-footer-mobile": $options.isFooterMobile 36794 }, null, 8, ["site", "is-footer-mobile"]) 36795 ])) : createCommentVNode("", true), 36796 $options.showForm && !$options.isCenterForm ? (openBlock(), createElementBlock("div", _hoisted_8$8, [ 36797 createVNode(_component_CoreBlock, { 36798 settings: {
36799 type: "rich-text", 36800 bodyText: $options.formHeadline 36801 } 36802 }, null, 8, ["settings"]), 36803 createVNode(_component_CoreBlock, { 36804 settings: $options.formSettings, 36805 "is-editable": $props.isEditable 36806 }, null, 8, ["settings", "is-editable"]) 36807 ])) : createCommentVNode("", true), 36808 $options.isLogoLeft ? (openBlock(), createBlock(_component_CoreBlockFooterLogo, { 36809 key: 3, 36810 site: $props.site, 36811 "is-footer-mobile": $options.isFooterMobile 36812 }, null, 8, ["site", "is-footer-mobile"])) : createCommentVNode("", true) 36813 ]), 36814 $options.showContacts || $options.showForm ? (openBlock(), createElementBlock("div", _hoisted_9$7, [ 36815 createBaseVNode("div", null, [ 36816 $options.isLogoTop ? (openBlock(), createElementBlock("div", _hoisted_10$6, [ 36817 createVNode(_component_CoreBlockFooterLogo, { 36818 site: $props.site, 36819 "is-footer-mobile": $options.isFooterMobile 36820 }, null, 8, ["site", "is-footer-mobile"]), 36821 createVNode(_component_CoreBlockFooterSocialLinks, { 36822 footer: $options.footer, 36823 "cloned-site": $options.clonedSite, 36824 "is-footer-mobile": $options.isFooterMobile, 36825 align: "center" 36826 }, null, 8, ["footer", "cloned-site", "is-footer-mobile"]) 36827 ])) : createCommentVNode("", true), 36828 $options.showContacts && !$options.isLargeImage ? (openBlock(), createBlock(_component_CoreBlockFooterContactGroup, { 36829 key: 1, 36830 site: $setup.dataSite, 36831 "is-footer-mobile": $options.isFooterMobile 36832 }, null, 8, ["site", "is-footer-mobile"])) : createCommentVNode("", true) 36833 ]), 36834 $options.showForm && $options.isCenterForm ? (openBlock(), createElementBlock("div", _hoisted_11$5, [ 36835 createVNode(_component_CoreBlock, { 36836 settings: { 36837 type: "rich-text", 36838 bodyText: $options.formHeadline 36839 } 36840 }, null, 8, ["settings"]), 36841 createVNode(_component_CoreBlock, { 36842 settings: $options.formSettings, 36843 "is-editable": $props.isEditable 36844 }, null, 8, ["settings", "is-editable"]) 36845 ])) : createCommentVNode("", true) 36846 ])) : createCommentVNode("", true), 36847 createBaseVNode("div", _hoisted_12$5, [ 36848 createBaseVNode("div", _hoisted_13$5, [ 36849 ($options.showForm || $options.showImage) && $options.isLogoRight && !$options.isLargeImage ? (openBlock(), createBlock(_component_CoreBlockFooterLogo, { 36850 key: 0, 36851 class: "mb-4", 36852 site: $props.site, 36853 "is-footer-mobile": $options.isFooterMobile 36854 }, null, 8, ["site", "is-footer-mobile"])) : createCommentVNode("", true), 36855 !$options.isLargeImage && !$options.isLogoTop && !$options.isLogoCenter ? (openBlock(), createBlock(_component_CoreBlockFooterSocialLinks, { 36856 key: 1, 36857 footer: $options.footer, 36858 "cloned-site": $options.clonedSite, 36859 "is-footer-mobile": $options.isFooterMobile, 36860 align: "right" 36861 }, null, 8, ["footer", "cloned-site", "is-footer-mobile"])) : createCommentVNode("", true) 36862 ]) 36863 ]) 36864 ]) 36865 ]) 36866 ]), 36867 $options.showDisclosuresAboveNav ? (openBlock(), createBlock(_component_CoreBlockFooterDisclosures, { 36868 key: 0, 36869 site: $props.site, 36870 "is-mobile": $options.isFooterMobile, 36871 "show-disclosures-page-link": $options.showDisclosuresPageLink 36872 }, null, 8, ["site", "is-mobile", "show-disclosures-page-link"])) : createCommentVNode("", true), 36873 $options.hasFooterNav ? (openBlock(), createElementBlock("nav", _hoisted_14$5, [ 36874 createBaseVNode("ul", _hoisted_15$5, [ 36875 (openBlock(true), createElementBlock(Fragment, null, renderList($options.pageTree, (pageItem, index2) => { 36876 return openBlock(), createBlock(_component_CoreBlockNavItem, { 36877 key: pageItem.linkText + pageItem.linkUrl + index2 || index2, 36878 site: $props.site, 36879 navitem: pageItem, 36880 "is-footer": true, 36881 class: "navbar_item navbar_item--dropdown", 36882 "is-mobile": $options.isFooterMobile, 36883 "is-editable": $props.isEditable 36884 }
36884, null, 8, ["site", "navitem", "is-mobile", "is-editable"]); 36885 }), 128)) 36886 ]) 36887 ])) : createCommentVNode("", true), 36888 $options.showDisclosuresBelowNav ? (openBlock(), createBlock(_component_CoreBlockFooterDisclosures, { 36889 key: 2, 36890 site: $props.site, 36891 "is-mobile": $options.isFooterMobile, 36892 "show-disclosures-page-link": $options.showDisclosuresPageLink 36893 }, null, 8, ["site", "is-mobile", "show-disclosures-page-link"])) : createCommentVNode("", true), 36894 withDirectives(createBaseVNode("div", _hoisted_16$5, [ 36895 withDirectives(createBaseVNode("div", { 36896 class: normalizeClass(["copyright", { "disclosures--mobile": $options.isFooterMobile }]) 36897 }, [ 36898 createBaseVNode("span", _hoisted_17$4, [ 36899 $options.isNYL ? (openBlock(), createElementBlock("p", _hoisted_18$4, [ 36900 createVNode(_component_NuxtLink, { 36901 rel: "noopener noreferrer nofollow", 36902 to: "/copyright", 36903 tabindex: "0", 36904 "aria-label": $options.copyrightText 36905 }, { 36906 default: withCtx(() => [ 36907 createTextVNode(toDisplayString($options.copyrightText), 1) 36908 ]), 36909 _: 1 36910 }, 8, ["aria-label"]) 36911 ])) : createCommentVNode("", true), 36912 createBaseVNode("span", { innerHTML: $options.copyright }, null, 8, _hoisted_19$4) 36913 ]) 36914 ], 2), [ 36915 [vShow, $options.copyright] 36916 ]) 36917 ], 512), [ 36918 [vShow, $options.showCopyright] 36919 ]), 36920 createVNode(_component_CoreBlockFooterOneTrust, { 36921 site: $props.site, 36922 "is-core-lite": $setup.isCoreLite 36923 }, null, 8, ["site", "is-core-lite"]) 36924 ]), 36925 _: 1 36926 }, 8, ["footer"]) 36927 ], 2)), [ 36928 [vShow, $options.showFooter] 36929 ]); 36930} 36931const __nuxt_component_2$1 = /* @__PURE__ */ _export_sfc(_sfc_main$46, [["render", _sfc_render$3A]]); 36932const CoreBlockFooter$2 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 36933 __proto__: null, 36934 default: __nuxt_component_2$1 36935}, Symbol.toStringTag, { value: "Module" })); 36936const _hoisted_1$41 = { class: "anchor_link_nav-wrapper" }; 36937const _hoisted_2$3G = ["title", "onClick"]; 36938const _sfc_main$45 = { 36939 __name: "CoreAnchorLinkNavigation", 36940 props: { 36941 settings: { 36942 type: Object, 36943 default: () => ({}) 36944 }, 36945 dataSite: { 36946 type: Object, 36947 default: () => ({}) 36948 }, 36949 isEditable: { 36950 type: Boolean, 36951 default: false 36952 } 36953 }, 36954 setup(__props) { 36955 const props = __props; 36956 const selectedIndex = ref(0); 36957 const offset = ref(0); 36958 const isFixed = ref(false); 36959 const links = computed(() => { 36960 var _a; 36961 return ((_a = props.settings) == null ? void 0 : _a.anchorLinks) || []; 36962 }); 36963 const isTop = computed( 36964 () => { 36965 var _a, _b, _c, _d; 36966 return ((_b = (_a = props.settings) == null ? void 0 : _a.variants) == null ? void 0 : _b.isTop) !== void 0 ? (_d = (_c = props.settings) == null ? void 0 : _c.variants) == null ? void 0 : _d.isTop : true; 36967 } 36968 ); 36969 const setSelectedIndex = (value) => { 36970 var _a; 36971 selectedIndex.value = value; 36972 const id = (_a = links.value[value]) == null ? void 0 : _a.section; 36973 if (id) { 36974 const el = document.getElementById(id); 36975 if (el) { 36976 el.scrollIntoView({ behavior: "smooth" }); 36977 } 36978 } 36979 }; 36980 const isSelectedIndex = (value) => selectedIndex.value === value; 36981 const updateOffset = () => { 36982 var _a; 36983 if (props.isEditable) { 36984 return; 36985 } 36986 const element = document.getElementById((_a = props.settings) == null ? void 0 : _a.id); 36987 if (!element) { 36988 return; 36989 } 36990 const rect = element.getBoundingClientRect(); 36991 const top = rect.top; 36992 if (isTop.value) { 36993 const mainNav = document.getElementById("main-nav"); 36994 if (mainNav) { 36995 const mainNavRect = mainNav.getBoundingClientRect(); 36996 const navOffset = mainNavRect.bottom; 36997 offset.value = navOffset; 36998 if (window.pageYOffset <= rect.top + window.pageYOffset - navOffset) { 36999 isFixed.value = false;
37000 } else { 37001 isFixed.value = true; 37002 } 37003 } else { 37004 isFixed.value = top <= 0; 37005 if (window.pageYOffset <= rect.top + window.pageYOffset) { 37006 isFixed.value = true; 37007 } 37008 } 37009 } else { 37010 const height = rect.height; 37011 const windowHeight = window.innerHeight; 37012 isFixed.value = top + height <= windowHeight; 37013 } 37014 }; 37015 onMounted(() => { 37016 updateOffset(); 37017 window.addEventListener("scroll", updateOffset); 37018 }); 37019 onBeforeUnmount(() => { 37020 window.removeEventListener("scroll", updateOffset); 37021 }); 37022 return (_ctx, _cache) => { 37023 return openBlock(), createElementBlock("div", _hoisted_1$41, [ 37024 createBaseVNode("div", { 37025 class: normalizeClass([ 37026 __props.isEditable ? "anchor_link_nav-builder" : "anchor_link_nav", 37027 isTop.value ? "anchor_link_nav-top" : "anchor_link_nav-bottom", 37028 isFixed.value && "anchor_link_nav-fixed" 37029 ]), 37030 style: normalizeStyle(isTop.value ? { top: `${offset.value}px` } : { bottom: `${offset.value}px` }) 37031 }, [ 37032 (openBlock(true), createElementBlock(Fragment, null, renderList(links.value, (link, index2) => { 37033 return openBlock(), createElementBlock("div", { 37034 key: `${link.text}-${link.section}-${index2}`, 37035 title: link.text, 37036 tabindex: 0, 37037 class: normalizeClass([ 37038 isTop.value ? "anchor_link_nav--text-top" : "anchor_link_nav--text-bottom", 37039 isSelectedIndex(index2) ? "anchor_link_nav--text-active" : "anchor_link_nav--text-inactive" 37040 ]), 37041 style: normalizeStyle({ 37042 display: link.text && link.text.length > 0 ? "inherit" : "none" 37043 }), 37044 onClick: ($event) => setSelectedIndex(index2) 37045 }, toDisplayString(link.text), 15, _hoisted_2$3G); 37046 }), 128)) 37047 ], 6), 37048 createBaseVNode("div", { 37049 class: normalizeClass( 37050 isFixed.value ? "anchor_link_nav-placeholder-active" : "anchor_link_nav-placeholder-inactive" 37051 ) 37052 }, null, 2) 37053 ]); 37054 }; 37055 } 37056}; 37057const CoreAnchorLinkNavigation = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 37058 __proto__: null, 37059 default: _sfc_main$45 37060}, Symbol.toStringTag, { value: "Module" })); 37061const millisecondsInWeek = 6048e5; 37062const millisecondsInDay = 864e5; 37063const millisecondsInMinute = 6e4; 37064const millisecondsInHour = 36e5; 37065const constructFromSymbol = Symbol.for("constructDateFrom"); 37066function constructFrom(date, value) { 37067 if (typeof date === "function") return date(value); 37068 if (date && typeof date === "object" && constructFromSymbol in date) 37069 return date[constructFromSymbol](value); 37070 if (date instanceof Date) return new date.constructor(value); 37071 return new Date(value); 37072} 37073function toDate(argument, context) { 37074 return constructFrom(context || argument, argument); 37075} 37076let defaultOptions = {}; 37077function getDefaultOptions() { 37078 return defaultOptions; 37079} 37080function startOfWeek(date, options) { 37081 var _a, _b, _c, _d; 37082 const defaultOptions2 = getDefaultOptions(); 37083 const weekStartsOn = (options == null ? void 0 : options.weekStartsOn) ?? ((_b = (_a = options == null ? void 0 : options.locale) == null ? void 0 : _a.options) == null ? void 0 : _b.weekStartsOn) ?? defaultOptions2.weekStartsOn ?? ((_d = (_c = defaultOptions2.locale) == null ? void 0 : _c.options) == null ? void 0 : _d.weekStartsOn) ?? 0; 37084 const _date = toDate(date, options == null ? void 0 : options.in); 37085 const day = _date.getDay(); 37086 const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn; 37087 _date.setDate(_date.getDate() - diff); 37088 _date.setHours(0, 0, 0, 0); 37089 return _date; 37090} 37091function startOfISOWeek(date, options) { 37092 return startOfWeek(date, { ...options, weekStartsOn: 1 }); 37093} 37094function getISOWeekYear(date, options) { 37095 const _date = toDate(date, options == null ? void 0 : options.in); 37096 const year = _date.getFullYear(); 37097 const fourthOfJanuaryOfNextYear = constructFrom(_date, 0); 37098 fourthOfJanuaryOfNextYear.setFullYear(year + 1, 0, 4); 37099 fourthOfJanuaryOfNextYear.setHours(0, 0, 0, 0); 37100 const startOfNextYear = startOfISOWeek(fourthOfJanuaryOfNextYear); 37101 const fourthOfJanuaryOfThisYear = constructFrom(_date, 0); 37102 fourthOfJanuaryOfThisYear.setFullYear(year, 0, 4); 37103 fourthOfJanuaryOfThisYear.setHours(0, 0, 0, 0); 37104 const startOfThisYear = startOfISOWeek(fourthOfJanuaryOfThisYear); 37105 if (_date.getTime() >= startOfNextYear.getTime()) { 37106 return year + 1; 37107 } else if (_date.getTime() >= startOfThisYear.getTime()) { 37108 return year; 37109 } else { 37110 return year - 1; 37111 } 37112} 37113function getTimezoneOffsetInMilliseconds(date) { 37114 const _date = toDate(date);
37115 const utcDate = new Date( 37116 Date.UTC( 37117 _date.getFullYear(), 37118 _date.getMonth(), 37119 _date.getDate(), 37120 _date.getHours(), 37121 _date.getMinutes(), 37122 _date.getSeconds(), 37123 _date.getMilliseconds() 37124 ) 37125 ); 37126 utcDate.setUTCFullYear(_date.getFullYear()); 37127 return +date - +utcDate; 37128} 37129function normalizeDates(context, ...dates) { 37130 const normalize = constructFrom.bind( 37131 null, 37132 dates.find((date) => typeof date === "object") 37133 ); 37134 return dates.map(normalize); 37135} 37136function startOfDay(date, options) { 37137 const _date = toDate(date, options == null ? void 0 : options.in); 37138 _date.setHours(0, 0, 0, 0); 37139 return _date; 37140} 37141function differenceInCalendarDays(laterDate, earlierDate, options) { 37142 const [laterDate_, earlierDate_] = normalizeDates( 37143 options == null ? void 0 : options.in, 37144 laterDate, 37145 earlierDate 37146 ); 37147 const laterStartOfDay = startOfDay(laterDate_); 37148 const earlierStartOfDay = startOfDay(earlierDate_); 37149 const laterTimestamp = +laterStartOfDay - getTimezoneOffsetInMilliseconds(laterStartOfDay); 37150 const earlierTimestamp = +earlierStartOfDay - getTimezoneOffsetInMilliseconds(earlierStartOfDay); 37151 return Math.round((laterTimestamp - earlierTimestamp) / millisecondsInDay); 37152} 37153function startOfISOWeekYear(date, options) { 37154 const year = getISOWeekYear(date, options); 37155 const fourthOfJanuary = constructFrom(date, 0); 37156 fourthOfJanuary.setFullYear(year, 0, 4); 37157 fourthOfJanuary.setHours(0, 0, 0, 0); 37158 return startOfISOWeek(fourthOfJanuary); 37159} 37160function isDate(value) { 37161 return value instanceof Date || typeof value === "object" && Object.prototype.toString.call(value) === "[object Date]"; 37162} 37163function isValid(date) { 37164 return !(!isDate(date) && typeof date !== "number" || isNaN(+toDate(date))); 37165} 37166function startOfYear(date, options) { 37167 const date_ = toDate(date, options == null ? void 0 : options.in); 37168 date_.setFullYear(date_.getFullYear(), 0, 1); 37169 date_.setHours(0, 0, 0, 0); 37170 return date_; 37171} 37172const formatDistanceLocale = { 37173 lessThanXSeconds: { 37174 one: "less than a second", 37175 other: "less than {{count}} seconds" 37176 }, 37177 xSeconds: { 37178 one: "1 second", 37179 other: "{{count}} seconds" 37180 }, 37181 halfAMinute: "half a minute", 37182 lessThanXMinutes: { 37183 one: "less than a minute", 37184 other: "less than {{count}} minutes" 37185 }, 37186 xMinutes: { 37187 one: "1 minute", 37188 other: "{{count}} minutes" 37189 }, 37190 aboutXHours: { 37191 one: "about 1 hour", 37192 other: "about {{count}} hours" 37193 }, 37194 xHours: { 37195 one: "1 hour", 37196 other: "{{count}} hours" 37197 }, 37198 xDays: { 37199 one: "1 day", 37200 other: "{{count}} days" 37201 }, 37202 aboutXWeeks: { 37203 one: "about 1 week", 37204 other: "about {{count}} weeks" 37205 }, 37206 xWeeks: { 37207 one: "1 week", 37208 other: "{{count}} weeks" 37209 }, 37210 aboutXMonths: { 37211 one: "about 1 month", 37212 other: "about {{count}} months" 37213 }, 37214 xMonths: { 37215 one: "1 month", 37216 other: "{{count}} months" 37217 }, 37218 aboutXYears: { 37219 one: "about 1 year", 37220 other: "about {{count}} years" 37221 }, 37222 xYears: { 37223 one: "1 year", 37224 other: "{{count}} years" 37225 }, 37226 overXYears: { 37227 one: "over 1 year", 37228 other: "over {{count}} years" 37229 }, 37230 almostXYears: { 37231 one: "almost 1 year", 37232 other: "almost {{count}} years" 37233 } 37234}; 37235const formatDistance = (token, count, options) => { 37236 let result; 37237 const tokenValue = formatDistanceLocale[token]; 37238 if (typeof tokenValue === "string") { 37239 result = tokenValue; 37240 } else if (count === 1) { 37241 result = tokenValue.one; 37242 } else { 37243 result = tokenValue.other.replace("{{count}}", count.toString()); 37244 } 37245 if (options == null ? void 0 : options.addSuffix) { 37246 if (options.comparison && options.comparison > 0) { 37247 return "in " + result; 37248 } else { 37249 return result + " ago"; 37250 } 37251 } 37252 return result; 37253}; 37254function buildFormatLongFn(args) { 37255 return (options = {}) => { 37256 const width = options.width ? String(options.width) : args.defaultWidth; 37257 const format2 = args.formats[width] || args.formats[args.defaultWidth]; 37258 return format2; 37259 }; 37260} 37261const dateFormats = { 37262 full: "EEEE, MMMM do, y", 37263 long: "MMMM do, y", 37264 medium: "MMM d, y", 37265 short: "MM/dd/yyyy" 37266}; 37267const timeFormats = { 37268 full: "h:mm:ss a zzzz", 37269 long: "h:mm:ss a z", 37270 medium: "h:mm:ss a", 37271 short: "h:mm a" 37272}; 37273const dateTimeFormats = { 37274 full: "{{date}} 'at' {{time}}", 37275 long: "{{date}} 'at' {{time}}", 37276 medium: "{{date}}, {{time}}", 37277 short: "{{date}}, {{time}}" 37278}; 37279const formatLong = { 37280 date: buildFormatLongFn({ 37281 formats: dateFormats, 37282 defaultWidth: "full" 37283 }), 37284 time: buildFormatLongFn({ 37285 formats: timeFormats, 37286 defaultWidth: "full" 37287 }), 37288 dateTime: buildFormatLongFn({ 37289 formats: dateTimeFormats, 37290 defaultWidth: "full" 37291 }) 37292}; 37293const formatRelativeLocale = { 37294 lastWeek: "'last' eeee 'at' p", 37295 yesterday: "'yesterday at' p", 37296 today: "'today at' p", 37297 tomorrow: "'tomorrow at' p", 37298 nextWeek: "eeee 'at' p", 37299 other: "P" 37300}; 37301const formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale[token]; 37302function buildLocalizeFn(args) { 37303 return (value, options) => { 37304 const context = (options == null ? void 0 : options.context) ? String(options.context) : "standalone"; 37305 let valuesArray; 37306 if (context === "formatting" && args.formattingValues) { 37307 const defaultWidth = args.defaultFormattingWidth || args.defaultWidth; 37308 const width = (options == null ? void 0 : options.width) ? String(options.width) : defaultWidth; 37309 valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth]; 37310 } else { 37311 const defaultWidth = args.defaultWidth; 37312 const width = (options == null ? void 0 : options.width) ? String(options.width) : args.defaultWidth; 37313 valuesArray = args.values[width] || args.values[defaultWidth]; 37314 } 37315 const index2 = args.argumentCallback ? args.argumentCallback(value) : value; 37316 return valuesArray[index2]; 37317 }; 37318} 37319const eraValues = { 37320 narrow: ["B", "A"], 37321 abbreviated: ["BC", "AD"], 37322 wide: ["Before Christ", "Anno Domini"] 37323}; 37324const quarterValues = { 37325 narrow: ["1", "2", "3", "4"], 37326 abbreviated: ["Q1", "Q2", "Q3", "Q4"], 37327 wide: ["1st quarter", "2nd quarter", "3rd quarter", "4th quarter"] 37328}; 37329const monthValues = { 37330 narrow: ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"], 37331 abbreviated: [ 37332 "Jan", 37333 "Feb", 37334 "Mar", 37335 "Apr", 37336 "May", 37337 "Jun", 37338 "Jul", 37339 "Aug", 37340 "Sep", 37341 "Oct", 37342 "Nov", 37343 "Dec" 37344 ], 37345 wide: [ 37346 "January", 37347 "February", 37348 "March", 37349 "April", 37350 "May", 37351 "June", 37352 "July", 37353 "August", 37354 "September", 37355 "October", 37356 "November", 37357 "December" 37358 ] 37359}; 37360const dayValues = { 37361 narrow: ["S", "M", "T", "W", "T", "F", "S"], 37362 short: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"], 37363 abbreviated: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], 37364 wide: [ 37365 "Sunday", 37366 "Monday", 37367 "Tuesday", 37368 "Wednesday", 37369 "Thursday", 37370 "Friday", 37371 "Saturday" 37372 ] 37373}; 37374const dayPeriodValues = { 37375 narrow: { 37376 am: "a", 37377 pm: "p", 37378 midnight: "mi", 37379 noon: "n", 37380 morning: "morning", 37381 afternoon: "afternoon", 37382 evening: "evening", 37383 night: "night" 37384 }, 37385 abbreviated: { 37386 am: "AM", 37387 pm: "PM", 37388 midnight: "midnight", 37389 noon: "noon", 37390 morning: "morning", 37391 afternoon: "afternoon", 37392 evening: "evening", 37393 night: "night" 37394 }, 37395 wide: { 37396 am: "a.m.", 37397 pm: "p.m.", 37398 midnight: "midnight", 37399 noon: "noon", 37400 morning: "morning", 37401 afternoon: "afternoon", 37402 evening: "evening", 37403 night: "night" 37404 } 37405}; 37406const formattingDayPeriodValues = { 37407 narrow: { 37408 am: "a", 37409 pm: "p", 37410 midnight: "mi", 37411 noon: "n", 37412 morning: "in the morning", 37413 afternoon: "in the afternoon", 37414 evening: "in the evening", 37415 night: "at night" 37416 }, 37417 abbreviated: { 37418 am: "AM", 37419 pm: "PM", 37420 midnight: "midnight", 37421 noon: "noon", 37422 morning: "in the morning", 37423 afternoon: "in the afternoon", 37424 evening: "in the evening", 37425 night: "at night" 37426 }, 37427 wide: { 37428 am: "a.m.", 37429 pm: "p.m.", 37430 midnight: "midnight", 37431 noon: "noon", 37432 morning: "in the morning", 37433 afternoon: "in the afternoon", 37434 evening: "in the evening", 37435 night: "at night" 37436 } 37437}; 37438const ordinalNumber = (dirtyNumber, _options) => { 37439 const number = Number(dirtyNumber); 37440 const rem100 = number % 100; 37441 if (rem100 > 20 || rem100 < 10) { 37442 switch (rem100 % 10) { 37443 case 1: 37444 return number + "st"; 37445 case 2: 37446 return number + "nd"; 37447 case 3: 37448 return number + "rd"; 37449 } 37450 } 37451 return number + "th"; 37452}; 37453const localize = { 37454 ordinalNumber, 37455 era: buildLocalizeFn({ 37456 values: eraValues, 37457 defaultWidth: "wide" 37458 }), 37459 quarter: buildLocalizeFn({ 37460 values: quarterValues, 37461 defaultWidth: "wide", 37462 argumentCallback: (quarter) => quarter - 1 37463 }), 37464 month: buildLocalizeFn({ 37465 values: monthValues, 37466 defaultWidth: "wide" 37467 }), 37468 day: buildLocalizeFn({ 37469 values: dayValues, 37470 defaultWidth: "wide" 37471 }), 37472 dayPeriod: buildLocalizeFn({ 37473 values: dayPeriodValues, 37474 defaultWidth: "wide", 37475 formattingValues: formattingDayPeriodValues, 37476 defaultFormattingWidth: "wide" 37477 }) 37478}; 37479function buildMatchFn(args) { 37480 return (string, options = {}) => { 37481 const width = options.width; 37482 const matchPattern = width && args.matchPatterns[width] || args.matchPatterns[args.defaultMatchWidth]; 37483 const matchResult = string.match(matchPattern); 37484 if (!matchResult) { 37485 return null; 37486 } 37487 const matchedString = matchResult[0]; 37488 const parsePatterns = width && args.parsePatterns[width] || args.parsePatterns[args.defaultParseWidth];
37489 const key = Array.isArray(parsePatterns) ? findIndex(parsePatterns, (pattern) => pattern.test(matchedString)) : ( 37490 // [TODO] -- I challenge you to fix the type 37491 findKey(parsePatterns, (pattern) => pattern.test(matchedString)) 37492 ); 37493 let value; 37494 value = args.valueCallback ? args.valueCallback(key) : key; 37495 value = options.valueCallback ? ( 37496 // [TODO] -- I challenge you to fix the type 37497 options.valueCallback(value) 37498 ) : value; 37499 const rest = string.slice(matchedString.length); 37500 return { value, rest }; 37501 }; 37502} 37503function findKey(object, predicate) { 37504 for (const key in object) { 37505 if (Object.prototype.hasOwnProperty.call(object, key) && predicate(object[key])) { 37506 return key; 37507 } 37508 } 37509 return void 0; 37510} 37511function findIndex(array, predicate) { 37512 for (let key = 0; key < array.length; key++) { 37513 if (predicate(array[key])) { 37514 return key; 37515 } 37516 } 37517 return void 0; 37518} 37519function buildMatchPatternFn(args) { 37520 return (string, options = {}) => { 37521 const matchResult = string.match(args.matchPattern); 37522 if (!matchResult) return null; 37523 const matchedString = matchResult[0]; 37524 const parseResult = string.match(args.parsePattern); 37525 if (!parseResult) return null; 37526 let value = args.valueCallback ? args.valueCallback(parseResult[0]) : parseResult[0]; 37527 value = options.valueCallback ? options.valueCallback(value) : value; 37528 const rest = string.slice(matchedString.length); 37529 return { value, rest }; 37530 }; 37531} 37532const matchOrdinalNumberPattern = /^(\d+)(th|st|nd|rd)?/i; 37533const parseOrdinalNumberPattern = /\d+/i; 37534const matchEraPatterns = { 37535 narrow: /^(b|a)/i, 37536 abbreviated: /^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i, 37537 wide: /^(before christ|before common era|anno domini|common era)/i 37538}; 37539const parseEraPatterns = { 37540 any: [/^b/i, /^(a|c)/i] 37541}; 37542const matchQuarterPatterns = { 37543 narrow: /^[1234]/i, 37544 abbreviated: /^q[1234]/i, 37545 wide: /^[1234](th|st|nd|rd)? quarter/i 37546}; 37547const parseQuarterPatterns = { 37548 any: [/1/i, /2/i, /3/i, /4/i] 37549}; 37550const matchMonthPatterns = { 37551 narrow: /^[jfmasond]/i, 37552 abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i, 37553 wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i 37554}; 37555const parseMonthPatterns = { 37556 narrow: [ 37557 /^j/i, 37558 /^f/i, 37559 /^m/i, 37560 /^a/i, 37561 /^m/i, 37562 /^j/i, 37563 /^j/i, 37564 /^a/i, 37565 /^s/i, 37566 /^o/i, 37567 /^n/i, 37568 /^d/i 37569 ], 37570 any: [ 37571 /^ja/i, 37572 /^f/i, 37573 /^mar/i, 37574 /^ap/i, 37575 /^may/i, 37576 /^jun/i, 37577 /^jul/i, 37578 /^au/i, 37579 /^s/i, 37580 /^o/i, 37581 /^n/i, 37582 /^d/i 37583 ] 37584}; 37585const matchDayPatterns = { 37586 narrow: /^[smtwf]/i, 37587 short: /^(su|mo|tu|we|th|fr|sa)/i, 37588 abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i, 37589 wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i 37590}; 37591const parseDayPatterns = { 37592 narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i], 37593 any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i] 37594}; 37595const matchDayPeriodPatterns = { 37596 narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i, 37597 any: /^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i 37598}; 37599const parseDayPeriodPatterns = { 37600 any: { 37601 am: /^a/i, 37602 pm: /^p/i, 37603 midnight: /^mi/i, 37604 noon: /^no/i, 37605 morning: /morning/i, 37606 afternoon: /afternoon/i, 37607 evening: /evening/i, 37608 night: /night/i 37609 } 37610}; 37611const match = { 37612 ordinalNumber: buildMatchPatternFn({ 37613 matchPattern: matchOrdinalNumberPattern, 37614 parsePattern: parseOrdinalNumberPattern, 37615 valueCallback: (value) => parseInt(value, 10) 37616 }), 37617 era: buildMatchFn({ 37618 matchPatterns: matchEraPatterns, 37619 defaultMatchWidth: "wide", 37620 parsePatterns: parseEraPatterns, 37621 defaultParseWidth: "any" 37622 }), 37623 quarter: buildMatchFn({ 37624 matchPatterns: matchQuarterPatterns, 37625 defaultMatchWidth: "wide", 37626 parsePatterns: parseQuarterPatterns, 37627 defaultParseWidth: "any", 37628 valueCallback: (index2) => index2 + 1 37629 }), 37630 month: buildMatchFn({ 37631 matchPatterns: matchMonthPatterns, 37632 defaultMatchWidth: "wide", 37633 parsePatterns: parseMonthPatterns, 37634 defaultParseWidth: "any" 37635 }), 37636 day: buildMatchFn({ 37637 matchPatterns: matchDayPatterns, 37638 defaultMatchWidth: "wide", 37639 parsePatterns: parseDayPatterns, 37640 defaultParseWidth: "any" 37641 }), 37642 dayPeriod: buildMatchFn({ 37643 matchPatterns: matchDayPeriodPatterns, 37644 defaultMatchWidth: "any", 37645 parsePatterns: parseDayPeriodPatterns, 37646 defaultParseWidth: "any" 37647 }) 37648}; 37649const enUS = { 37650 code: "en-US", 37651 formatDistance, 37652 formatLong, 37653 formatRelative, 37654 localize, 37655 match, 37656 options: { 37657 weekStartsOn: 0, 37658 firstWeekContainsDate: 1 37659 } 37660}; 37661function getDayOfYear(date, options) { 37662 const _date = toDate(date, options == null ? void 0 : options.in); 37663 const diff = differenceInCalendarDays(_date, startOfYear(_date)); 37664 const dayOfYear = diff + 1; 37665 return dayOfYear; 37666} 37667function getISOWeek(date, options) { 37668 const _date = toDate(date, options == null ? void 0 : options.in); 37669 const diff = +startOfISOWeek(_date) - +startOfISOWeekYear(_date); 37670 return Math.round(diff / millisecondsInWeek) + 1; 37671} 37672function getWeekYear(date, options) { 37673 var _a, _b, _c, _d; 37674 const _date = toDate(date, options == null ? void 0 : options.in); 37675 const year = _date.getFullYear(); 37676 const defaultOptions2 = getDefaultOptions(); 37677 const firstWeekContainsDate = (options == null ? void 0 : options.firstWeekContainsDate) ?? ((_b = (_a = options == null ? void 0 : options.locale) == null ? void 0 : _a.options) == null ? void 0 : _b.firstWeekContainsDate) ?? defaultOptions2.firstWeekContainsDate ?? ((_d = (_c = defaultOptions2.locale) == null ? void 0 : _c.options) == null ? void 0 : _d.firstWeekContainsDate) ?? 1; 37678 const firstWeekOfNextYear = constructFrom((options == null ? void 0 : options.in) || date, 0); 37679 firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate); 37680 firstWeekOfNextYear.setHours(0, 0, 0, 0); 37681 const startOfNextYear = startOfWeek(firstWeekOfNextYear, options); 37682 const firstWeekOfThisYear = constructFrom((options == null ? void 0 : options.in) || date, 0); 37683 firstWeekOfThisYear.setFullYear(year, 0, firstWeekContainsDate); 37684 firstWeekOfThisYear.setHours(0, 0, 0, 0); 37685 const startOfThisYear = startOfWeek(firstWeekOfThisYear, options); 37686 if (+_date >= +startOfNextYear) { 37687 return year + 1; 37688 } else if (+_date >= +startOfThisYear) { 37689 return year; 37690 } else { 37691 return year - 1; 37692 } 37693} 37694function startOfWeekYear(date, options) { 37695 var _a, _b, _c, _d; 37696 const defaultOptions2 = getDefaultOptions(); 37697 const firstWeekContainsDate = (options == null ? void 0 : options.firstWeekContainsDate) ?? ((_b = (_a = options == null ? void 0 : options.locale) == null ? void 0 : _a.options) == null ? void 0 : _b.firstWeekContainsDate) ?? defaultOptions2.firstWeekContainsDate ?? ((_d = (_c = defaultOptions2.locale) == null ? void 0 : _c.options) == null ? void 0 : _d.firstWeekContainsDate) ?? 1; 37698 const year = getWeekYear(date, options); 37699 const firstWeek = constructFrom((options == null ? void 0 : options.in) || date, 0); 37700 firstWeek.setFullYear(year, 0, firstWeekContainsDate); 37701 firstWeek.setHours(0, 0, 0, 0); 37702 const _date = startOfWeek(firstWeek, options); 37703 return _date; 37704} 37705function getWeek(date, options) { 37706 const _date = toDate(date, options == null ? void 0 : options.in); 37707 const diff = +startOfWeek(_date, options) - +startOfWeekYear(_date, options); 37708 return Math.round(diff / millisecondsInWeek) + 1; 37709} 37710function addLeadingZeros(number, targetLength) { 37711 const sign = number < 0 ? "-" : "";
vendor: 4,917 bytes, lines 37712-37875
37712 const output = Math.abs(number).toString().padStart(targetLength, "0"); 37713 return sign + output; 37714} 37715const lightFormatters = { 37716 // Year 37717 y(date, token) { 37718 const signedYear = date.getFullYear(); 37719 const year = signedYear > 0 ? signedYear : 1 - signedYear; 37720 return addLeadingZeros(token === "yy" ? year % 100 : year, token.length); 37721 }, 37722 // Month 37723 M(date, token) { 37724 const month = date.getMonth(); 37725 return token === "M" ? String(month + 1) : addLeadingZeros(month + 1, 2); 37726 }, 37727 // Day of the month 37728 d(date, token) { 37729 return addLeadingZeros(date.getDate(), token.length); 37730 }, 37731 // AM or PM 37732 a(date, token) { 37733 const dayPeriodEnumValue = date.getHours() / 12 >= 1 ? "pm" : "am"; 37734 switch (token) { 37735 case "a": 37736 case "aa": 37737 return dayPeriodEnumValue.toUpperCase(); 37738 case "aaa": 37739 return dayPeriodEnumValue; 37740 case "aaaaa": 37741 return dayPeriodEnumValue[0]; 37742 case "aaaa": 37743 default: 37744 return dayPeriodEnumValue === "am" ? "a.m." : "p.m."; 37745 } 37746 }, 37747 // Hour [1-12] 37748 h(date, token) { 37749 return addLeadingZeros(date.getHours() % 12 || 12, token.length); 37750 }, 37751 // Hour [0-23] 37752 H(date, token) { 37753 return addLeadingZeros(date.getHours(), token.length); 37754 }, 37755 // Minute 37756 m(date, token) { 37757 return addLeadingZeros(date.getMinutes(), token.length); 37758 }, 37759 // Second 37760 s(date, token) { 37761 return addLeadingZeros(date.getSeconds(), token.length); 37762 }, 37763 // Fraction of second 37764 S(date, token) { 37765 const numberOfDigits = token.length; 37766 const milliseconds = date.getMilliseconds(); 37767 const fractionalSeconds = Math.trunc( 37768 milliseconds * Math.pow(10, numberOfDigits - 3) 37769 ); 37770 return addLeadingZeros(fractionalSeconds, token.length); 37771 } 37772}; 37773const dayPeriodEnum = { 37774 midnight: "midnight", 37775 noon: "noon", 37776 morning: "morning", 37777 afternoon: "afternoon", 37778 evening: "evening", 37779 night: "night" 37780}; 37781const formatters = { 37782 // Era 37783 G: function(date, token, localize2) { 37784 const era = date.getFullYear() > 0 ? 1 : 0; 37785 switch (token) { 37786 // AD, BC 37787 case "G": 37788 case "GG": 37789 case "GGG": 37790 return localize2.era(era, { width: "abbreviated" }); 37791 // A, B 37792 case "GGGGG": 37793 return localize2.era(era, { width: "narrow" }); 37794 // Anno Domini, Before Christ 37795 case "GGGG": 37796 default: 37797 return localize2.era(era, { width: "wide" }); 37798 } 37799 }, 37800 // Year 37801 y: function(date, token, localize2) { 37802 if (token === "yo") { 37803 const signedYear = date.getFullYear(); 37804 const year = signedYear > 0 ? signedYear : 1 - signedYear; 37805 return localize2.ordinalNumber(year, { unit: "year" }); 37806 } 37807 return lightFormatters.y(date, token); 37808 }, 37809 // Local week-numbering year 37810 Y: function(date, token, localize2, options) { 37811 const signedWeekYear = getWeekYear(date, options); 37812 const weekYear = signedWeekYear > 0 ? signedWeekYear : 1 - signedWeekYear; 37813 if (token === "YY") { 37814 const twoDigitYear = weekYear % 100; 37815 return addLeadingZeros(twoDigitYear, 2); 37816 } 37817 if (token === "Yo") { 37818 return localize2.ordinalNumber(weekYear, { unit: "year" }); 37819 } 37820 return addLeadingZeros(weekYear, token.length); 37821 }, 37822 // ISO week-numbering year 37823 R: function(date, token) { 37824 const isoWeekYear = getISOWeekYear(date); 37825 return addLeadingZeros(isoWeekYear, token.length); 37826 }, 37827 // Extended year. This is a single number designating the year of this calendar system. 37828 // The main difference between `y` and `u` localizers are B.C. years: 37829 // | Year | `y` | `u` | 37830 // |------|-----|-----| 37831 // | AC 1 | 1 | 1 | 37832 // | BC 1 | 1 | 0 | 37833 // | BC 2 | 2 | -1 | 37834 // Also `yy` always returns the last two digits of a year, 37835 // while `uu` pads single digit years to 2 characters and returns other years unchanged. 37836 u: function(date, token) { 37837 const year = date.getFullYear(); 37838 return addLeadingZeros(year, token.length); 37839 }, 37840 // Quarter 37841 Q: function(date, token, localize2) { 37842 const quarter = Math.ceil((date.getMonth() + 1) / 3); 37843 switch (token) { 37844 // 1, 2, 3, 4 37845 case "Q": 37846 return String(quarter); 37847 // 01, 02, 03, 04 37848 case "QQ": 37849 return addLeadingZeros(quarter, 2); 37850 // 1st, 2nd, 3rd, 4th 37851 case "Qo": 37852 return localize2.ordinalNumber(quarter, { unit: "quarter" }); 37853 // Q1, Q2, Q3, Q4 37854 case "QQQ": 37855 return localize2.quarter(quarter, { 37856 width: "abbreviated", 37857 context: "formatting" 37858 }); 37859 // 1, 2, 3, 4 (narrow quarter; could be not numerical) 37860 case "QQQQQ": 37861 return localize2.quarter(quarter, { 37862 width: "narrow", 37863 context: "formatting" 37864 }); 37865 // 1st quarter, 2nd quarter, ... 37866 case "QQQQ": 37867 default: 37868 return localize2.quarter(quarter, { 37869 width: "wide", 37870 context: "formatting" 37871 }); 37872 } 37873 }, 37874 // Stand-alone quarter 37875 q: function(date, token, localize2) {
vendor: 1,751 bytes, lines 37876-37937
37876 const quarter = Math.ceil((date.getMonth() + 1) / 3); 37877 switch (token) { 37878 // 1, 2, 3, 4 37879 case "q": 37880 return String(quarter); 37881 // 01, 02, 03, 04 37882 case "qq": 37883 return addLeadingZeros(quarter, 2); 37884 // 1st, 2nd, 3rd, 4th 37885 case "qo": 37886 return localize2.ordinalNumber(quarter, { unit: "quarter" }); 37887 // Q1, Q2, Q3, Q4 37888 case "qqq": 37889 return localize2.quarter(quarter, { 37890 width: "abbreviated", 37891 context: "standalone" 37892 }); 37893 // 1, 2, 3, 4 (narrow quarter; could be not numerical) 37894 case "qqqqq": 37895 return localize2.quarter(quarter, { 37896 width: "narrow", 37897 context: "standalone" 37898 }); 37899 // 1st quarter, 2nd quarter, ... 37900 case "qqqq": 37901 default: 37902 return localize2.quarter(quarter, { 37903 width: "wide", 37904 context: "standalone" 37905 }); 37906 } 37907 }, 37908 // Month 37909 M: function(date, token, localize2) { 37910 const month = date.getMonth(); 37911 switch (token) { 37912 case "M": 37913 case "MM": 37914 return lightFormatters.M(date, token); 37915 // 1st, 2nd, ..., 12th 37916 case "Mo": 37917 return localize2.ordinalNumber(month + 1, { unit: "month" }); 37918 // Jan, Feb, ..., Dec 37919 case "MMM": 37920 return localize2.month(month, { 37921 width: "abbreviated", 37922 context: "formatting" 37923 }); 37924 // J, F, ..., D 37925 case "MMMMM": 37926 return localize2.month(month, { 37927 width: "narrow", 37928 context: "formatting" 37929 }); 37930 // January, February, ..., December 37931 case "MMMM": 37932 default: 37933 return localize2.month(month, { width: "wide", context: "formatting" }); 37934 } 37935 }, 37936 // Stand-alone month 37937 L: function(date, token, localize2) {
vendor: 11,725 bytes, lines 37938-38336
37938 const month = date.getMonth(); 37939 switch (token) { 37940 // 1, 2, ..., 12 37941 case "L": 37942 return String(month + 1); 37943 // 01, 02, ..., 12 37944 case "LL": 37945 return addLeadingZeros(month + 1, 2); 37946 // 1st, 2nd, ..., 12th 37947 case "Lo": 37948 return localize2.ordinalNumber(month + 1, { unit: "month" }); 37949 // Jan, Feb, ..., Dec 37950 case "LLL": 37951 return localize2.month(month, { 37952 width: "abbreviated", 37953 context: "standalone" 37954 }); 37955 // J, F, ..., D 37956 case "LLLLL": 37957 return localize2.month(month, { 37958 width: "narrow", 37959 context: "standalone" 37960 }); 37961 // January, February, ..., December 37962 case "LLLL": 37963 default: 37964 return localize2.month(month, { width: "wide", context: "standalone" }); 37965 } 37966 }, 37967 // Local week of year 37968 w: function(date, token, localize2, options) { 37969 const week = getWeek(date, options); 37970 if (token === "wo") { 37971 return localize2.ordinalNumber(week, { unit: "week" }); 37972 } 37973 return addLeadingZeros(week, token.length); 37974 }, 37975 // ISO week of year 37976 I: function(date, token, localize2) { 37977 const isoWeek = getISOWeek(date); 37978 if (token === "Io") { 37979 return localize2.ordinalNumber(isoWeek, { unit: "week" }); 37980 } 37981 return addLeadingZeros(isoWeek, token.length); 37982 }, 37983 // Day of the month 37984 d: function(date, token, localize2) { 37985 if (token === "do") { 37986 return localize2.ordinalNumber(date.getDate(), { unit: "date" }); 37987 } 37988 return lightFormatters.d(date, token); 37989 }, 37990 // Day of year 37991 D: function(date, token, localize2) { 37992 const dayOfYear = getDayOfYear(date); 37993 if (token === "Do") { 37994 return localize2.ordinalNumber(dayOfYear, { unit: "dayOfYear" }); 37995 } 37996 return addLeadingZeros(dayOfYear, token.length); 37997 }, 37998 // Day of week 37999 E: function(date, token, localize2) { 38000 const dayOfWeek = date.getDay(); 38001 switch (token) { 38002 // Tue 38003 case "E": 38004 case "EE": 38005 case "EEE": 38006 return localize2.day(dayOfWeek, { 38007 width: "abbreviated", 38008 context: "formatting" 38009 }); 38010 // T 38011 case "EEEEE": 38012 return localize2.day(dayOfWeek, { 38013 width: "narrow", 38014 context: "formatting" 38015 }); 38016 // Tu 38017 case "EEEEEE": 38018 return localize2.day(dayOfWeek, { 38019 width: "short", 38020 context: "formatting" 38021 }); 38022 // Tuesday 38023 case "EEEE": 38024 default: 38025 return localize2.day(dayOfWeek, { 38026 width: "wide", 38027 context: "formatting" 38028 }); 38029 } 38030 }, 38031 // Local day of week 38032 e: function(date, token, localize2, options) { 38033 const dayOfWeek = date.getDay(); 38034 const localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7; 38035 switch (token) { 38036 // Numerical value (Nth day of week with current locale or weekStartsOn) 38037 case "e": 38038 return String(localDayOfWeek); 38039 // Padded numerical value 38040 case "ee": 38041 return addLeadingZeros(localDayOfWeek, 2); 38042 // 1st, 2nd, ..., 7th 38043 case "eo": 38044 return localize2.ordinalNumber(localDayOfWeek, { unit: "day" }); 38045 case "eee": 38046 return localize2.day(dayOfWeek, { 38047 width: "abbreviated", 38048 context: "formatting" 38049 }); 38050 // T 38051 case "eeeee": 38052 return localize2.day(dayOfWeek, { 38053 width: "narrow", 38054 context: "formatting" 38055 }); 38056 // Tu 38057 case "eeeeee": 38058 return localize2.day(dayOfWeek, { 38059 width: "short", 38060 context: "formatting" 38061 }); 38062 // Tuesday 38063 case "eeee": 38064 default: 38065 return localize2.day(dayOfWeek, { 38066 width: "wide", 38067 context: "formatting" 38068 }); 38069 } 38070 }, 38071 // Stand-alone local day of week 38072 c: function(date, token, localize2, options) { 38073 const dayOfWeek = date.getDay(); 38074 const localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7; 38075 switch (token) { 38076 // Numerical value (same as in `e`) 38077 case "c": 38078 return String(localDayOfWeek); 38079 // Padded numerical value 38080 case "cc": 38081 return addLeadingZeros(localDayOfWeek, token.length); 38082 // 1st, 2nd, ..., 7th 38083 case "co": 38084 return localize2.ordinalNumber(localDayOfWeek, { unit: "day" }); 38085 case "ccc": 38086 return localize2.day(dayOfWeek, { 38087 width: "abbreviated", 38088 context: "standalone" 38089 }); 38090 // T 38091 case "ccccc": 38092 return localize2.day(dayOfWeek, { 38093 width: "narrow", 38094 context: "standalone" 38095 }); 38096 // Tu 38097 case "cccccc": 38098 return localize2.day(dayOfWeek, { 38099 width: "short", 38100 context: "standalone" 38101 }); 38102 // Tuesday 38103 case "cccc": 38104 default: 38105 return localize2.day(dayOfWeek, { 38106 width: "wide", 38107 context: "standalone" 38108 }); 38109 } 38110 }, 38111 // ISO day of week 38112 i: function(date, token, localize2) { 38113 const dayOfWeek = date.getDay(); 38114 const isoDayOfWeek = dayOfWeek === 0 ? 7 : dayOfWeek; 38115 switch (token) { 38116 // 2 38117 case "i": 38118 return String(isoDayOfWeek); 38119 // 02 38120 case "ii": 38121 return addLeadingZeros(isoDayOfWeek, token.length); 38122 // 2nd 38123 case "io": 38124 return localize2.ordinalNumber(isoDayOfWeek, { unit: "day" }); 38125 // Tue 38126 case "iii": 38127 return localize2.day(dayOfWeek, { 38128 width: "abbreviated", 38129 context: "formatting" 38130 }); 38131 // T 38132 case "iiiii": 38133 return localize2.day(dayOfWeek, { 38134 width: "narrow", 38135 context: "formatting" 38136 }); 38137 // Tu 38138 case "iiiiii": 38139 return localize2.day(dayOfWeek, { 38140 width: "short", 38141 context: "formatting" 38142 }); 38143 // Tuesday 38144 case "iiii": 38145 default: 38146 return localize2.day(dayOfWeek, { 38147 width: "wide", 38148 context: "formatting" 38149 }); 38150 } 38151 }, 38152 // AM or PM 38153 a: function(date, token, localize2) { 38154 const hours = date.getHours(); 38155 const dayPeriodEnumValue = hours / 12 >= 1 ? "pm" : "am"; 38156 switch (token) { 38157 case "a": 38158 case "aa": 38159 return localize2.dayPeriod(dayPeriodEnumValue, { 38160 width: "abbreviated", 38161 context: "formatting" 38162 }); 38163 case "aaa": 38164 return localize2.dayPeriod(dayPeriodEnumValue, { 38165 width: "abbreviated", 38166 context: "formatting" 38167 }).toLowerCase(); 38168 case "aaaaa": 38169 return localize2.dayPeriod(dayPeriodEnumValue, { 38170 width: "narrow", 38171 context: "formatting" 38172 }); 38173 case "aaaa": 38174 default: 38175 return localize2.dayPeriod(dayPeriodEnumValue, { 38176 width: "wide", 38177 context: "formatting" 38178 }); 38179 } 38180 }, 38181 // AM, PM, midnight, noon 38182 b: function(date, token, localize2) { 38183 const hours = date.getHours(); 38184 let dayPeriodEnumValue; 38185 if (hours === 12) { 38186 dayPeriodEnumValue = dayPeriodEnum.noon; 38187 } else if (hours === 0) { 38188 dayPeriodEnumValue = dayPeriodEnum.midnight; 38189 } else { 38190 dayPeriodEnumValue = hours / 12 >= 1 ? "pm" : "am"; 38191 } 38192 switch (token) { 38193 case "b": 38194 case "bb": 38195 return localize2.dayPeriod(dayPeriodEnumValue, { 38196 width: "abbreviated", 38197 context: "formatting" 38198 }); 38199 case "bbb": 38200 return localize2.dayPeriod(dayPeriodEnumValue, { 38201 width: "abbreviated", 38202 context: "formatting" 38203 }).toLowerCase(); 38204 case "bbbbb": 38205 return localize2.dayPeriod(dayPeriodEnumValue, { 38206 width: "narrow", 38207 context: "formatting" 38208 }); 38209 case "bbbb": 38210 default: 38211 return localize2.dayPeriod(dayPeriodEnumValue, { 38212 width: "wide", 38213 context: "formatting" 38214 }); 38215 } 38216 }, 38217 // in the morning, in the afternoon, in the evening, at night 38218 B: function(date, token, localize2) { 38219 const hours = date.getHours(); 38220 let dayPeriodEnumValue; 38221 if (hours >= 17) { 38222 dayPeriodEnumValue = dayPeriodEnum.evening; 38223 } else if (hours >= 12) { 38224 dayPeriodEnumValue = dayPeriodEnum.afternoon; 38225 } else if (hours >= 4) { 38226 dayPeriodEnumValue = dayPeriodEnum.morning; 38227 } else { 38228 dayPeriodEnumValue = dayPeriodEnum.night; 38229 } 38230 switch (token) { 38231 case "B": 38232 case "BB": 38233 case "BBB": 38234 return localize2.dayPeriod(dayPeriodEnumValue, { 38235 width: "abbreviated", 38236 context: "formatting" 38237 }); 38238 case "BBBBB": 38239 return localize2.dayPeriod(dayPeriodEnumValue, { 38240 width: "narrow", 38241 context: "formatting" 38242 }); 38243 case "BBBB": 38244 default: 38245 return localize2.dayPeriod(dayPeriodEnumValue, { 38246 width: "wide", 38247 context: "formatting" 38248 }); 38249 } 38250 }, 38251 // Hour [1-12] 38252 h: function(date, token, localize2) { 38253 if (token === "ho") { 38254 let hours = date.getHours() % 12; 38255 if (hours === 0) hours = 12; 38256 return localize2.ordinalNumber(hours, { unit: "hour" }); 38257 } 38258 return lightFormatters.h(date, token); 38259 }, 38260 // Hour [0-23] 38261 H: function(date, token, localize2) { 38262 if (token === "Ho") { 38263 return localize2.ordinalNumber(date.getHours(), { unit: "hour" }); 38264 } 38265 return lightFormatters.H(date, token); 38266 }, 38267 // Hour [0-11] 38268 K: function(date, token, localize2) { 38269 const hours = date.getHours() % 12; 38270 if (token === "Ko") { 38271 return localize2.ordinalNumber(hours, { unit: "hour" }); 38272 } 38273 return addLeadingZeros(hours, token.length); 38274 }, 38275 // Hour [1-24] 38276 k: function(date, token, localize2) { 38277 let hours = date.getHours(); 38278 if (hours === 0) hours = 24; 38279 if (token === "ko") { 38280 return localize2.ordinalNumber(hours, { unit: "hour" }); 38281 } 38282 return addLeadingZeros(hours, token.length); 38283 }, 38284 // Minute 38285 m: function(date, token, localize2) { 38286 if (token === "mo") { 38287 return localize2.ordinalNumber(date.getMinutes(), { unit: "minute" }); 38288 } 38289 return lightFormatters.m(date, token); 38290 }, 38291 // Second 38292 s: function(date, token, localize2) { 38293 if (token === "so") { 38294 return localize2.ordinalNumber(date.getSeconds(), { unit: "second" }); 38295 } 38296 return lightFormatters.s(date, token); 38297 }, 38298 // Fraction of second 38299 S: function(date, token) { 38300 return lightFormatters.S(date, token); 38301 }, 38302 // Timezone (ISO-8601. If offset is 0, output is always `'Z'`) 38303 X: function(date, token, _localize) { 38304 const timezoneOffset = date.getTimezoneOffset(); 38305 if (timezoneOffset === 0) { 38306 return "Z"; 38307 } 38308 switch (token) { 38309 // Hours and optional minutes 38310 case "X": 38311 return formatTimezoneWithOptionalMinutes(timezoneOffset); 38312 // Hours, minutes and optional seconds without `:` delimiter 38313 // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets 38314 // so this token always has the same output as `XX` 38315 case "XXXX": 38316 case "XX": 38317 return formatTimezone(timezoneOffset); 38318 // Hours, minutes and optional seconds with `:` delimiter 38319 // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets 38320 // so this token always has the same output as `XXX` 38321 case "XXXXX": 38322 case "XXX": 38323 // Hours and minutes with `:` delimiter 38324 default: 38325 return formatTimezone(timezoneOffset, ":"); 38326 } 38327 }, 38328 // Timezone (ISO-8601. If offset is 0, output is `'+00:00'` or equivalent) 38329 x: function(date, token, _localize) { 38330 const timezoneOffset = date.getTimezoneOffset(); 38331 switch (token) { 38332 // Hours and optional minutes 38333 case "x": 38334 return formatTimezoneWithOptionalMinutes(timezoneOffset); 38335 // Hours, minutes and optional seconds without `:` delimiter 38336 // Note: neither ISO-8601 nor JavaScript supports seconds
vendor: 6,739 bytes, lines 38336-38522
38336in timezone offsets 38337 // so this token always has the same output as `xx` 38338 case "xxxx": 38339 case "xx": 38340 return formatTimezone(timezoneOffset); 38341 // Hours, minutes and optional seconds with `:` delimiter 38342 // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets 38343 // so this token always has the same output as `xxx` 38344 case "xxxxx": 38345 case "xxx": 38346 // Hours and minutes with `:` delimiter 38347 default: 38348 return formatTimezone(timezoneOffset, ":"); 38349 } 38350 }, 38351 // Timezone (GMT) 38352 O: function(date, token, _localize) { 38353 const timezoneOffset = date.getTimezoneOffset(); 38354 switch (token) { 38355 // Short 38356 case "O": 38357 case "OO": 38358 case "OOO": 38359 return "GMT" + formatTimezoneShort(timezoneOffset, ":"); 38360 // Long 38361 case "OOOO": 38362 default: 38363 return "GMT" + formatTimezone(timezoneOffset, ":"); 38364 } 38365 }, 38366 // Timezone (specific non-location) 38367 z: function(date, token, _localize) { 38368 const timezoneOffset = date.getTimezoneOffset(); 38369 switch (token) { 38370 // Short 38371 case "z": 38372 case "zz": 38373 case "zzz": 38374 return "GMT" + formatTimezoneShort(timezoneOffset, ":"); 38375 // Long 38376 case "zzzz": 38377 default: 38378 return "GMT" + formatTimezone(timezoneOffset, ":"); 38379 } 38380 }, 38381 // Seconds timestamp 38382 t: function(date, token, _localize) { 38383 const timestamp = Math.trunc(+date / 1e3); 38384 return addLeadingZeros(timestamp, token.length); 38385 }, 38386 // Milliseconds timestamp 38387 T: function(date, token, _localize) { 38388 return addLeadingZeros(+date, token.length); 38389 } 38390}; 38391function formatTimezoneShort(offset, delimiter = "") { 38392 const sign = offset > 0 ? "-" : "+"; 38393 const absOffset = Math.abs(offset); 38394 const hours = Math.trunc(absOffset / 60); 38395 const minutes = absOffset % 60; 38396 if (minutes === 0) { 38397 return sign + String(hours); 38398 } 38399 return sign + String(hours) + delimiter + addLeadingZeros(minutes, 2); 38400} 38401function formatTimezoneWithOptionalMinutes(offset, delimiter) { 38402 if (offset % 60 === 0) { 38403 const sign = offset > 0 ? "-" : "+"; 38404 return sign + addLeadingZeros(Math.abs(offset) / 60, 2); 38405 } 38406 return formatTimezone(offset, delimiter); 38407} 38408function formatTimezone(offset, delimiter = "") { 38409 const sign = offset > 0 ? "-" : "+"; 38410 const absOffset = Math.abs(offset); 38411 const hours = addLeadingZeros(Math.trunc(absOffset / 60), 2); 38412 const minutes = addLeadingZeros(absOffset % 60, 2); 38413 return sign + hours + delimiter + minutes; 38414} 38415const dateLongFormatter = (pattern, formatLong2) => { 38416 switch (pattern) { 38417 case "P": 38418 return formatLong2.date({ width: "short" }); 38419 case "PP": 38420 return formatLong2.date({ width: "medium" }); 38421 case "PPP": 38422 return formatLong2.date({ width: "long" }); 38423 case "PPPP": 38424 default: 38425 return formatLong2.date({ width: "full" }); 38426 } 38427}; 38428const timeLongFormatter = (pattern, formatLong2) => { 38429 switch (pattern) { 38430 case "p": 38431 return formatLong2.time({ width: "short" }); 38432 case "pp": 38433 return formatLong2.time({ width: "medium" }); 38434 case "ppp": 38435 return formatLong2.time({ width: "long" }); 38436 case "pppp": 38437 default: 38438 return formatLong2.time({ width: "full" }); 38439 } 38440}; 38441const dateTimeLongFormatter = (pattern, formatLong2) => { 38442 const matchResult = pattern.match(/(P+)(p+)?/) || []; 38443 const datePattern = matchResult[1]; 38444 const timePattern = matchResult[2]; 38445 if (!timePattern) { 38446 return dateLongFormatter(pattern, formatLong2); 38447 } 38448 let dateTimeFormat; 38449 switch (datePattern) { 38450 case "P": 38451 dateTimeFormat = formatLong2.dateTime({ width: "short" }); 38452 break; 38453 case "PP": 38454 dateTimeFormat = formatLong2.dateTime({ width: "medium" }); 38455 break; 38456 case "PPP": 38457 dateTimeFormat = formatLong2.dateTime({ width: "long" }); 38458 break; 38459 case "PPPP": 38460 default: 38461 dateTimeFormat = formatLong2.dateTime({ width: "full" }); 38462 break; 38463 } 38464 return dateTimeFormat.replace("{{date}}", dateLongFormatter(datePattern, formatLong2)).replace("{{time}}", timeLongFormatter(timePattern, formatLong2)); 38465}; 38466const longFormatters = { 38467 p: timeLongFormatter, 38468 P: dateTimeLongFormatter 38469}; 38470const dayOfYearTokenRE = /^D+$/; 38471const weekYearTokenRE = /^Y+$/; 38472const throwTokens = ["D", "DD", "YY", "YYYY"]; 38473function isProtectedDayOfYearToken(token) { 38474 return dayOfYearTokenRE.test(token); 38475} 38476function isProtectedWeekYearToken(token) { 38477 return weekYearTokenRE.test(token); 38478} 38479function warnOrThrowProtectedError(token, format2, input) { 38480 const _message = message(token, format2, input); 38481 console.warn(_message); 38482 if (throwTokens.includes(token)) throw new RangeError(_message); 38483} 38484function message(token, format2, input) { 38485 const subject = token[0] === "Y" ? "years" : "days of the month"; 38486 return `Use \`${token.toLowerCase()}\` instead of \`${token}\` (in \`${format2}\`) for formatting ${subject} to the input \`${input}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`; 38487} 38488const formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g; 38489const longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g; 38490const escapedStringRegExp = /^'([^]*?)'?$/; 38491const doubleQuoteRegExp = /''/g; 38492const unescapedLatinCharacterRegExp = /[a-zA-Z]/; 38493function format(date, formatStr, options) { 38494 var _a, _b, _c, _d; 38495 const defaultOptions2 = getDefaultOptions(); 38496 const locale = defaultOptions2.locale ?? enUS; 38497 const firstWeekContainsDate = defaultOptions2.firstWeekContainsDate ?? ((_b = (_a = defaultOptions2.locale) == null ? void 0 : _a.options) == null ? void 0 : _b.firstWeekContainsDate) ?? 1; 38498 const weekStartsOn = defaultOptions2.weekStartsOn ?? ((_d = (_c = defaultOptions2.locale) == null ? void 0 : _c.options) == null ? void 0 : _d.weekStartsOn) ?? 0; 38499 const originalDate = toDate(date, options == null ? void 0 : options.in); 38500 if (!isValid(originalDate)) { 38501 throw new RangeError("Invalid time value"); 38502 } 38503 let parts = formatStr.match(longFormattingTokensRegExp).map((substring) => { 38504 const firstCharacter = substring[0]; 38505 if (firstCharacter === "p" || firstCharacter === "P") { 38506 const longFormatter = longFormatters[firstCharacter]; 38507 return longFormatter(substring, locale.formatLong); 38508 } 38509 return substring; 38510 }).join("").match(formattingTokensRegExp).map((substring) => { 38511 if (substring === "''") { 38512 return { isToken: false, value: "'" }; 38513 } 38514 const firstCharacter = substring[0]; 38515 if (firstCharacter === "'") { 38516 return { isToken: false, value: cleanEscapedString(substring) }; 38517 } 38518 if (formatters[firstCharacter]) { 38519 return { isToken: true, value: substring }; 38520 } 38521 if (firstCharacter.match(unescapedLatinCharacterRegExp)) { 38522 throw new RangeError(
38523 "Format string contains an unescaped latin alphabet character `" + firstCharacter + "`" 38524 ); 38525 } 38526 return { isToken: false, value: substring }; 38527 }); 38528 if (locale.localize.preprocessor) { 38529 parts = locale.localize.preprocessor(originalDate, parts); 38530 } 38531 const formatterOptions = { 38532 firstWeekContainsDate, 38533 weekStartsOn, 38534 locale 38535 }; 38536 return parts.map((part) => { 38537 if (!part.isToken) return part.value; 38538 const token = part.value; 38539 if (isProtectedWeekYearToken(token) || isProtectedDayOfYearToken(token)) { 38540 warnOrThrowProtectedError(token, formatStr, String(date)); 38541 } 38542 const formatter = formatters[token[0]]; 38543 return formatter(originalDate, token, locale.localize, formatterOptions); 38544 }).join(""); 38545} 38546function cleanEscapedString(input) { 38547 const matched = input.match(escapedStringRegExp); 38548 if (!matched) { 38549 return input; 38550 } 38551 return matched[1].replace(doubleQuoteRegExp, "'"); 38552} 38553function parseISO(argument, options) { 38554 const invalidDate = () => constructFrom(options == null ? void 0 : options.in, NaN); 38555 const additionalDigits = 2; 38556 const dateStrings = splitDateString(argument); 38557 let date; 38558 if (dateStrings.date) { 38559 const parseYearResult = parseYear(dateStrings.date, additionalDigits); 38560 date = parseDate(parseYearResult.restDateString, parseYearResult.year); 38561 } 38562 if (!date || isNaN(+date)) return invalidDate(); 38563 const timestamp = +date; 38564 let time = 0; 38565 let offset; 38566 if (dateStrings.time) { 38567 time = parseTime(dateStrings.time); 38568 if (isNaN(time)) return invalidDate(); 38569 } 38570 if (dateStrings.timezone) { 38571 offset = parseTimezone(dateStrings.timezone); 38572 if (isNaN(offset)) return invalidDate(); 38573 } else { 38574 const tmpDate = new Date(timestamp + time); 38575 const result = toDate(0, options == null ? void 0 : options.in); 38576 result.setFullYear( 38577 tmpDate.getUTCFullYear(), 38578 tmpDate.getUTCMonth(), 38579 tmpDate.getUTCDate() 38580 ); 38581 result.setHours( 38582 tmpDate.getUTCHours(), 38583 tmpDate.getUTCMinutes(), 38584 tmpDate.getUTCSeconds(), 38585 tmpDate.getUTCMilliseconds() 38586 ); 38587 return result; 38588 } 38589 return toDate(timestamp + time + offset, options == null ? void 0 : options.in); 38590} 38591const patterns = { 38592 dateTimeDelimiter: /[T ]/, 38593 timeZoneDelimiter: /[Z ]/i, 38594 timezone: /([Z+-].*)$/ 38595}; 38596const dateRegex = /^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/; 38597const timeRegex = /^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/; 38598const timezoneRegex = /^([+-])(\d{2})(?::?(\d{2}))?$/; 38599function splitDateString(dateString) { 38600 const dateStrings = {}; 38601 const array = dateString.split(patterns.dateTimeDelimiter); 38602 let timeString; 38603 if (array.length > 2) { 38604 return dateStrings; 38605 } 38606 if (/:/.test(array[0])) { 38607 timeString = array[0]; 38608 } else { 38609 dateStrings.date = array[0]; 38610 timeString = array[1]; 38611 if (patterns.timeZoneDelimiter.test(dateStrings.date)) { 38612 dateStrings.date = dateString.split(patterns.timeZoneDelimiter)[0]; 38613 timeString = dateString.substr( 38614 dateStrings.date.length, 38615 dateString.length 38616 ); 38617 } 38618 } 38619 if (timeString) { 38620 const token = patterns.timezone.exec(timeString); 38621 if (token) {
vendor: 1,028 bytes, lines 38622-38648
38622 dateStrings.time = timeString.replace(token[1], ""); 38623 dateStrings.timezone = token[1]; 38624 } else { 38625 dateStrings.time = timeString; 38626 } 38627 } 38628 return dateStrings; 38629} 38630function parseYear(dateString, additionalDigits) { 38631 const regex = new RegExp( 38632 "^(?:(\\d{4}|[+-]\\d{" + (4 + additionalDigits) + "})|(\\d{2}|[+-]\\d{" + (2 + additionalDigits) + "})$)" 38633 ); 38634 const captures = dateString.match(regex); 38635 if (!captures) return { year: NaN, restDateString: "" }; 38636 const year = captures[1] ? parseInt(captures[1]) : null; 38637 const century = captures[2] ? parseInt(captures[2]) : null; 38638 return { 38639 year: century === null ? year : century * 100, 38640 restDateString: dateString.slice((captures[1] || captures[2]).length) 38641 }; 38642} 38643function parseDate(dateString, year) { 38644 if (year === null) return /* @__PURE__ */ new Date(NaN); 38645 const captures = dateString.match(dateRegex); 38646 if (!captures) return /* @__PURE__ */ new Date(NaN); 38647 const isWeekDate = !!captures[4]; 38648 const dayOfYear = parseDateUnit(captures[1]);
38649 const month = parseDateUnit(captures[2]) - 1; 38650 const day = parseDateUnit(captures[3]); 38651 const week = parseDateUnit(captures[4]); 38652 const dayOfWeek = parseDateUnit(captures[5]) - 1; 38653 if (isWeekDate) { 38654 if (!validateWeekDate(year, week, dayOfWeek)) { 38655 return /* @__PURE__ */ new Date(NaN); 38656 } 38657 return dayOfISOWeekYear(year, week, dayOfWeek); 38658 } else { 38659 const date = /* @__PURE__ */ new Date(0); 38660 if (!validateDate(year, month, day) || !validateDayOfYearDate(year, dayOfYear)) { 38661 return /* @__PURE__ */ new Date(NaN); 38662 } 38663 date.setUTCFullYear(year, month, Math.max(dayOfYear, day)); 38664 return date; 38665 } 38666} 38667function parseDateUnit(value) { 38668 return value ? parseInt(value) : 1; 38669} 38670function parseTime(timeString) { 38671 const captures = timeString.match(timeRegex); 38672 if (!captures) return NaN; 38673 const hours = parseTimeUnit(captures[1]); 38674 const minutes = parseTimeUnit(captures[2]); 38675 const seconds = parseTimeUnit(captures[3]); 38676 if (!validateTime(hours, minutes, seconds)) { 38677 return NaN; 38678 } 38679 return hours * millisecondsInHour + minutes * millisecondsInMinute + seconds * 1e3; 38680} 38681function parseTimeUnit(value) { 38682 return value && parseFloat(value.replace(",", ".")) || 0; 38683} 38684function parseTimezone(timezoneString) { 38685 if (timezoneString === "Z") return 0; 38686 const captures = timezoneString.match(timezoneRegex); 38687 if (!captures) return 0; 38688 const sign = captures[1] === "+" ? -1 : 1; 38689 const hours = parseInt(captures[2]); 38690 const minutes = captures[3] && parseInt(captures[3]) || 0; 38691 if (!validateTimezone(hours, minutes)) { 38692 return NaN; 38693 } 38694 return sign * (hours * millisecondsInHour + minutes * millisecondsInMinute); 38695} 38696function dayOfISOWeekYear(isoWeekYear, week, day) { 38697 const date = /* @__PURE__ */ new Date(0); 38698 date.setUTCFullYear(isoWeekYear, 0, 4); 38699 const fourthOfJanuaryDay = date.getUTCDay() || 7; 38700 const diff = (week - 1) * 7 + day + 1 - fourthOfJanuaryDay; 38701 date.setUTCDate(date.getUTCDate() + diff); 38702 return date; 38703} 38704const daysInMonths = [31, null, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; 38705function isLeapYearIndex(year) { 38706 return year % 400 === 0 || year % 4 === 0 && year % 100 !== 0; 38707} 38708function validateDate(year, month, date) { 38709 return month >= 0 && month <= 11 && date >= 1 && date <= (daysInMonths[month] || (isLeapYearIndex(year) ? 29 : 28)); 38710} 38711function validateDayOfYearDate(year, dayOfYear) { 38712 return dayOfYear >= 1 && dayOfYear <= (isLeapYearIndex(year) ? 366 : 365); 38713} 38714function validateWeekDate(_year, week, day) { 38715 return week >= 1 && week <= 53 && day >= 0 && day <= 6; 38716} 38717function validateTime(hours, minutes, seconds) { 38718 if (hours === 24) { 38719 return minutes === 0 && seconds === 0; 38720 } 38721 return seconds >= 0 && seconds < 60 && minutes >= 0 && minutes < 60 && hours >= 0 && hours < 25; 38722} 38723function validateTimezone(_hours, minutes) { 38724 return minutes >= 0 && minutes <= 59; 38725} 38726const _sfc_main$44 = { 38727 name: "CoreBlockArticleCard", 38728 props: { 38729 settings: { 38730 type: Object, 38731 required: true 38732 }, 38733 isEditable: { 38734 type: Boolean, 38735 default: false 38736 } 38737 }, 38738 setup(props) { 38739 const isBuilder = inject("isBuilder", false); 38740 const articleSettings = computed(() => { 38741 var _a; 38742 return (_a = props.settings) == null ? void 0 : _a.presetSettings; 38743 }); 38744 const store = useStore(); 38745 const sitePages = computed(() => { 38746 var _a, _b, _c; 38747 const pages = props.isEditable || isBuilder ? (_b = (_a = store.state.site) == null ? void 0 : _a.workingSite) == null ? void 0 : _b.pages : (_c = store.state.site) == null ? void 0 : _c.pages; 38748 return pages ?? []; 38749 }); 38750 const articleAdapter = computed(() => { 38751 var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o; 38752 const articleMediaSrc = ((_a = props.settings) == null ? void 0 : _a.showMedia) ? articleSettings.value.url || articleSettings.value.webHostedAssetUrl : null; 38753 const headline = ((_b = props.settings) == null ? void 0 : _b.showHeadline) ? `<h4>${(_c = articleSettings.value) == null ? void 0 : _c.headline}</h4>` : null; 38754 const bodyText = ((_d = props.settings) == null ? void 0 : _d.showBody) ? (_e = articleSettings.value) == null ? void 0 : _e.bodyText : null; 38755 const parsedDate = parseISO((_f = props.settings) == null ? void 0 : _f.createdDt); 38756 const formattedDate = isValid(parsedDate) ? format(parsedDate, "dd MMM yyyy") : (_g = props.settings) == null ? void 0 : _g.createdDt; 38757 const overline = ((_h = props.settings) == null ? void 0 : _h.createdDt) && ((_i = props.settings) == null ? void 0 : _i.showDatePublished) ? `date published ${formattedDate}` : null; 38758 const headlineText = ((_j = articleSettings.value) == null ? void 0 : _j.headline) || ""; 38759 const secondaryLabel = ((_l = (_k = articleSettings.value) == null ? void 0 : _k.page) == null ? void 0 : _l.ctaText) ?? (headlineText ? `Read more: ${headlineText}` : "Read more"); 38760 let secondaryUrl = null; 38761 if (store.getters["settings/getFeatureFlag"]("UseNamedRouting")) { 38762 const selectedPage = sitePages.value.find( 38763 (page) => { 38764 var _a2, _b2; 38765 return page.handle === ((_b2 = (_a2 = articleSettings.value) == null ? void 0 : _a2.page) == null ? void 0 : _b2.urlSlug); 38766 } 38767 ); 38768 const pageHasRoute = selectedPage && !["null", "[]"].includes(selectedPage.blocks || "[]"); 38769 if (pageHasRoute) { 38770 secondaryUrl = { 38771 name: `page-${selectedPage.id}` 38772 }; 38773 } 38774 } else { 38775 secondaryUrl = { 38776 name: ((_o = (_n = (_m = articleSettings.value) == null ? void 0 : _m.page) == null ? void 0 : _n.urlSlug) == null ? void 0 : _o.toLowerCase()) ?? props.settings.title.toLowerCase().split(" ").join("-") 38777 }; 38778 } 38779 return { 38780 ...articleSettings.value, 38781 id: props.settings.id, 38782 type: "content-card", 38783 media: { 38784 src: articleMediaSrc, 38785 alt: articleSettings.value.altText 38786 }, 38787 overline, 38788 headline, 38789 bodyText, 38790 secondaryButton: true, 38791 secondaryBtnIcon: "arrow-right", 38792 secondaryBtnIconPlacement: "icon-right", 38793 secondaryBtnNewWindow: true, 38794 secondaryLabel, 38795 secondaryUrl, 38796 secondaryTypeText: true, 38797 variants: { 38798 cardStyle: "articles-section", 38799 "padding-x": "px-small" 38800 } 38801 }; 38802 }); 38803 const hideImage = computed(() => { 38804 var _a; 38805 return (_a = props.settings) == null ? void 0 : _a.hideImage; 38806 }); 38807 const isRemovedArticle = computed(() => { 38808 var _a; 38809 const contentRemovalEnabled = Boolean( 38810 store.getters["settings/isContentRemovalEnabled"] 38811 ); 38812 return contentRemovalEnabled && ((_a = props.settings) == null ? void 0 : _a.isRemoved) === true; 38813 }); 38814 const isArchivedArticle = computed( 38815 () => { 38816 var _a; 38817 return ((_a = props.settings) == null ? void 0 : _a.isArchived) === true; 38818 } 38819 ); 38820 const showExpiredPlaceholder = computed( 38821 () => !isBuilder && (isRemovedArticle.value || isArchivedArticle.value) 38822 ); 38823 return { 38824 articleSettings, 38825 articleAdapter, 38826 hideImage, 38827 isRemovedArticle, 38828 isArchivedArticle, 38829 showExpiredPlaceholder 38830 }; 38831 } 38832}; 38833const _hoisted_1$40 = { 38834 key: 0, 38835 "data-testid": "expired-block", 38836 class: "block__body" 38837}; 38838function _sfc_render$3z(_ctx, _cache, $props, $setup, $data, $options) { 38839 const _component_CoreBlock = _sfc_main$4x; 38840 return $setup.showExpiredPlaceholder ? (openBlock(), createElementBlock("div", _hoisted_1$40, _cache[0] || (_cache[0] = [ 38841 createBaseVNode("div", { class: "expired-content" }, null, -1) 38842 ]))) : (openBlock(), createBlock(_component_CoreBlock, { 38843 key: 1, 38844 settings: $setup.articleAdapter, 38845 "is-editable": $props.isEditable 38846 }, null, 8, ["settings", "is-editable"])); 38847} 38848const CoreBlockArticleCard = /* @__PURE__ */ _export_sfc(_sfc_main$44, [["render", _sfc_render$3z], ["__scopeId", "data-v-32e534a3"]]); 38849const CoreBlockArticleCard$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 38850 __proto__: null, 38851 default: CoreBlockArticleCard 38852}, Symbol.toStringTag, { value: "Module" })); 38853const _sfc_main$43 = { 38854 name: "CoreBlockArticles", 38855 props: { 38856 settings: { 38857 type: Object, 38858 required: true 38859 }, 38860 isEditable: { 38861 type: Boolean, 38862 default: false 38863 }, 38864 isBuilderMobile: { 38865 type: Boolean, 38866 default: false 38867 } 38868 }, 38869 setup(props) { 38870 provide(SCROLL_ANIMATION_EXCLUDED_KEY, true); 38871 const containerType = computed( 38872 () => { 38873 var _a; 38874 return (_a = props.settings) == null ? void 0 : _a["container-type"]; 38875 } 38876 ); 38877 const containerVariants = computed(() => { 38878 var _a, _b; 38879 return containerType.value === "container" ? { ...(_a = props.settings) == null ? void 0 : _a.variants, layout: "carousel" } : { ...(_b = props.settings) == null ? void 0 : _b.variants }; 38880 }); 38881 const title = computed(() => { 38882 var _a; 38883 return (_a = props.settings) == null ? void 0 : _a.title; 38884 }); 38885 const sortBy = computed(() => { 38886 var _a; 38887 return (_a = props.settings) == null ? void 0 : _a.sortBy; 38888 }); 38889 const articleFields = computed(() => { 38890 var _a, _b, _c, _d; 38891 return { 38892 showMedia: (_a = props.settings) == null ? void 0 : _a.showMedia, 38893 showDatePublished: (_b = props.settings) == null ? void 0 : _b.showDatePublished, 38894 showHeadline: (_c = props.settings) == null ? void 0 : _c.showHeadline, 38895 showBody: (_d = props.settings) == null ? void 0 : _d.showBody 38896 }; 38897 }); 38898 const itemsAdapter = (item) => { 38899 var _a, _b; 38900 if (!item) return item; 38901 switch (item.type) { 38902 case "image": 38903 case "video": 38904 return { 38905 id: item.id, 38906 type: item.type, 38907 src: { 38908 src: (_a = item == null ? void 0 : item.presetSettings) == null ? void 0 : _a.url, 38909 alt: (_b = item == null ? void 0 : item.presetSettings) == null ? void 0 : _b.altText 38910 } 38911 }; 38912 case "article": 38913 return { ...item, ...articleFields.value }; 38914 default: 38915 return item; 38916 } 38917 }; 38918 const items = computed(() => { 38919 var _a, _b; 38920 if (!Array.isArray((_a = props.settings) == null ? void 0 : _a.items)) return []; 38921 return (_b = props.settings) == null ? void 0 : _b.items.map(itemsAdapter); 38922 }); 38923 const getSettings = computed(() => ({ 38924 ...props.settings, 38925 id: `${props.settings.id}a`, 38926 items: null, 38927 type: containerType.value, 38928 variants: containerVariants.value, 38929 blocks: items.value 38930 })); 38931 return { 38932 containerType, 38933 containerVariants, 38934 title, 38935 items, 38936 sortBy, 38937 articleFields, 38938 getSettings 38939 }; 38940 } 38941}; 38942const _hoisted_1$3$ = ["innerHTML"]; 38943function _sfc_render$3y(_ctx, _cache, $props, $setup, $data, $options) { 38944 const _component_CoreBlock = _sfc_main$4x; 38945 return openBlock(), createElementBlock("div", null, [ 38946 $setup.title ? (openBlock(), createElementBlock("span", { 38947 key: 0, 38948 innerHTML: $setup.title 38949 }, null, 8, _hoisted_1$3$)) : createCommentVNode("", true), 38950 createVNode(_component_CoreBlock, { 38951 settings: $setup.getSettings, 38952 "is-editable": $props.isEditable, 38953 "is-builder-mobile": $props.isBuilderMobile 38954 }, null, 8, ["settings", "is-editable", "is-builder-mobile"]) 38955 ]); 38956} 38957const CoreBlockArticles = /* @__PURE__ */ _export_sfc(_sfc_main$43, [["render", _sfc_render$3y]]); 38958const CoreBlockArticles$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 38959 __proto__: null, 38960 default: CoreBlockArticles 38961}, Symbol.toStringTag, { value: "Module" })); 38962const _sfc_main$42 = { 38963 props: { 38964 settings: { 38965 type: Object, 38966 required: false 38967 } 38968 }, 38969 computed: { 38970 alt() { 38971 var _a, _b; 38972 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 38973 }, 38974 id() { 38975 var _a, _b; 38976 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 38977 } 38978 } 38979}; 38980const _hoisted_1$3_ = ["aria-labelledby", "aria-label"]; 38981const _hoisted_2$3F = ["id"]; 38982function _sfc_render$3x(_ctx, _cache, $props, $setup, $data, $options) { 38983 return openBlock(), createElementBlock("svg", { 38984 width: "24", 38985 height: "24",
38986 viewBox: "0 0 24 24", 38987 fill: "none", 38988 xmlns: "http://www.w3.org/2000/svg", 38989 role: "img", 38990 "aria-labelledby": `icon-title-${$options.id}`, 38991 "aria-label": $options.alt 38992 }, [ 38993 createBaseVNode("title", { 38994 id: `icon-title-${$options.id}` 38995 }, toDisplayString($options.alt), 9, _hoisted_2$3F), 38996 _cache[0] || (_cache[0] = createBaseVNode("circle", { 38997 cx: "8", 38998 cy: "12", 38999 r: "1", 39000 fill: "currentColor" 39001 }, null, -1)), 39002 _cache[1] || (_cache[1] = createBaseVNode("circle", { 39003 cx: "12", 39004 cy: "12", 39005 r: "1", 39006 fill: "currentColor" 39007 }, null, -1)), 39008 _cache[2] || (_cache[2] = createBaseVNode("circle", { 39009 cx: "16", 39010 cy: "12", 39011 r: "1", 39012 fill: "currentColor" 39013 }, null, -1)), 39014 _cache[3] || (_cache[3] = createBaseVNode("rect", { 39015 x: "3", 39016 y: "8", 39017 width: "18", 39018 height: "8", 39019 rx: "1", 39020 stroke: "currentColor", 39021 "stroke-width": "2" 39022 }, null, -1)) 39023 ], 8, _hoisted_1$3_); 39024} 39025const __nuxt_component_0$7 = /* @__PURE__ */ _export_sfc(_sfc_main$42, [["render", _sfc_render$3x]]); 39026const CoreIconBreadcrumbExpand = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 39027 __proto__: null, 39028 default: __nuxt_component_0$7 39029}, Symbol.toStringTag, { value: "Module" })); 39030const _sfc_main$41 = { 39031 name: "CoreBlockBreadcrumbs", 39032 components: { 39033 NuxtLink: __nuxt_component_2$5 39034 }, 39035 props: { 39036 settings: { 39037 type: Object, 39038 default: () => { 39039 } 39040 }, 39041 dataSite: { 39042 type: Object, 39043 default: () => { 39044 } 39045 } 39046 }, 39047 setup() { 39048 const router = useRouter(); 39049 const route = useRoute(); 39050 return { 39051 router, 39052 route 39053 }; 39054 }, 39055 data() { 39056 return { 39057 windowWidth: window.innerWidth, 39058 isCollapsed: true 39059 }; 39060 }, 39061 computed: { 39062 navItems() { 39063 var _a, _b; 39064 return ((_b = (_a = this.dataSite) == null ? void 0 : _a.navigation) == null ? void 0 : _b.links) || []; 39065 }, 39066 crumbs() { 39067 var _a, _b, _c, _d, _e; 39068 if ((_a = this.settings.breadcrumbList) == null ? void 0 : _a.length) { 39069 return this.settings.breadcrumbList; 39070 } 39071 const fullPath = (_b = this.route) == null ? void 0 : _b.fullPath; 39072 const params = fullPath.startsWith("/") ? fullPath.substring(1).split("/") : fullPath.split("/"); 39073 if (!params.length || params.length === 1 && params[0] === "") { 39074 return []; 39075 } 39076 const newBreadcrumbList = []; 39077 const selectedPageHandle = params[params.length - 1]; 39078 const homePage = (_d = (_c = this == null ? void 0 : this.dataSite) == null ? void 0 : _c.pages) == null ? void 0 : _d.find( 39079 (p2) => { 39080 var _a2; 39081 return p2.id === ((_a2 = this == null ? void 0 : this.dataSite) == null ? void 0 : _a2.homepageId); 39082 } 39083 ); 39084 if (homePage) { 39085 newBreadcrumbList.push({ 39086 title: homePage.title, 39087 pageId: homePage.handle, 39088 selectedPageId: selectedPageHandle, 39089 path: "/", 39090 linkUrl: `/${homePage.handle}` 39091 }); 39092 } 39093 let path = ""; 39094 for (const param of params.filter((p2) => p2 !== "")) { 39095 path = `${path}/${param}`; 39096 const match2 = this.router.resolve(path); 39097 const page = (_e = this == null ? void 0 : this.dataSite) == null ? void 0 : _e.pages.find( 39098 (p2) => p2.handle.replace(/^\/|\/$/g, "") === decodeURI(param) 39099 ); 39100 if (!page) { 39101 newBreadcrumbList.push({ 39102 title: param, 39103 pageId: param, 39104 selectedPageId: selectedPageHandle, 39105 path: `/${param}` 39106 }); 39107 continue; 39108 } 39109 newBreadcrumbList.push({ 39110 title: page.title, 39111 pageId: page.handle, 39112 selectedPageId: selectedPageHandle, 39113 path: (match2 == null ? void 0 : match2.path) || this.getPathForPage(page.handle), 39114 linkUrl: `/${page.handle}` 39115 }); 39116 } 39117 return newBreadcrumbList; 39118 }, 39119 variants() { 39120 var _a; 39121 return ((_a = this.settings) == null ? void 0 : _a.variants) || {}; 39122 }, 39123 isCompact() { 39124 return this.variants.breadcrumbVariant === "compact"; 39125 }, 39126 crumbClasses() { 39127 let classes = "breadcrumb"; 39128 if (this.isCompact) { 39129 classes = `${classes} breadcrumb__compact`; 39130 } 39131 return classes; 39132 }, 39133 listClasses() { 39134 let classes = "breadcrumb__list-item"; 39135 if (this.isCompact) { 39136 classes = `${classes} breadcrumb__list-item--compact`; 39137 } 39138 return classes; 39139 } 39140 }, 39141 created() { 39142 { 39143 this.windowWidth = window.innerWidth; 39144 window.addEventListener("resize", this.onResize); 39145 } 39146 }, 39147 unmounted() { 39148 { 39149 window.removeEventListener("resize", this.onResize); 39150 } 39151 }, 39152 methods: { 39153 onResize() { 39154 this.windowWidth = window.innerWidth; 39155 }, 39156 setIsCollapsed(value) { 39157 this.isCollapsed = value; 39158 },
39159 getPathForPage(pageHandle, pagePath = "") { 39160 var _a, _b; 39161 const page = (_b = (_a = this.dataSite) == null ? void 0 : _a.pages) == null ? void 0 : _b.find( 39162 (p2) => p2.handle === pageHandle || p2.id === pageHandle 39163 ); 39164 if (!page) { 39165 return pagePath ?? "/"; 39166 } 39167 pagePath = `/${page.handle}${pagePath}`; 39168 if (page.parentPageId || page.newFieldForParentId) { 39169 return this.getPathForPage( 39170 page.parentPageId || page.newFieldForParentId, 39171 pagePath 39172 ); 39173 } 39174 return pagePath; 39175 }, 39176 isFolder(crumb) { 39177 const navItem = this.navItems.find( 39178 (nav) => nav.linkUrl === crumb.linkUrl 39179 ); 39180 if (!navItem) { 39181 return true; 39182 } 39183 if (navItem.isFolder) { 39184 return true; 39185 } 39186 return false; 39187 } 39188 } 39189}; 39190const _hoisted_1$3Z = { class: "breadcrumb__list" }; 39191const _hoisted_2$3E = { 39192 key: 1, 39193 class: "breadcrumb__list-item-collapsed" 39194}; 39195const _hoisted_3$n = { 39196 key: 0, 39197 class: "breadcrumb__list-item--separator" 39198}; 39199const _hoisted_4$h = { 39200 key: 1, 39201 class: "breadcrumb__list-item--title" 39202}; 39203const _hoisted_5$f = { class: "breadcrumb__list-item--title" }; 39204function _sfc_render$3w(_ctx, _cache, $props, $setup, $data, $options) { 39205 const _component_CoreIconBreadcrumbExpand = __nuxt_component_0$7; 39206 const _component_NuxtLink = __nuxt_component_2$5; 39207 return $options.crumbs.length > 1 ? (openBlock(), createElementBlock("nav", { 39208 key: 0, 39209 "aria-label": "breadcrumb", 39210 class: normalizeClass($options.crumbClasses) 39211 }, [ 39212 createBaseVNode("ul", _hoisted_1$3Z, [ 39213 $data.windowWidth < 768 && $data.isCollapsed ? (openBlock(), createBlock(_component_CoreIconBreadcrumbExpand, { 39214 key: 0, 39215 "data-testid": "breadcrumb-expand", 39216 class: "breadcrumb-expand", 39217 onClick: _cache[0] || (_cache[0] = ($event) => $options.setIsCollapsed(false)) 39218 })) : createCommentVNode("", true), 39219 $data.windowWidth < 768 && $data.isCollapsed ? (openBlock(), createElementBlock("span", _hoisted_2$3E, toDisplayString($options.crumbs[$options.crumbs.length - 1].title), 1)) : (openBlock(true), createElementBlock(Fragment, { key: 2 }, renderList($options.crumbs, (crumb, index2) => { 39220 return openBlock(), createElementBlock("li", { 39221 key: index2, 39222 class: normalizeClass($options.listClasses) 39223 }, [ 39224 index2 !== 0 ? (openBlock(), createElementBlock("span", _hoisted_3$n, " > ")) : createCommentVNode("", true), 39225 $options.isFolder(crumb) ? (openBlock(), createElementBlock("span", _hoisted_4$h, toDisplayString(crumb.title), 1)) : (openBlock(), createBlock(_component_NuxtLink, { 39226 key: 2, 39227 to: crumb.path, 39228 "aria-current": crumb.selectedPageId === crumb.pageId 39229 }, { 39230 default: withCtx(() => [ 39231 createBaseVNode("span", _hoisted_5$f, toDisplayString(crumb.title), 1) 39232 ]), 39233 _: 2 39234 }, 1032, ["to", "aria-current"])) 39235 ], 2); 39236 }), 128)) 39237 ]) 39238 ], 2)) : createCommentVNode("", true); 39239} 39240const __nuxt_component_0$6 = /* @__PURE__ */ _export_sfc(_sfc_main$41, [["render", _sfc_render$3w]]); 39241const CoreBlockBreadcrumbs = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 39242 __proto__: null, 39243 default: __nuxt_component_0$6 39244}, Symbol.toStringTag, { value: "Module" })); 39245const _sfc_main$40 = { 39246 name: "CoreIconClose", 39247 props: { 39248 settings: { 39249 type: Object, 39250 required: false 39251 }, 39252 click: { 39253 type: Function, 39254 default: () => { 39255 } 39256 }, 39257 size: { 39258 type: Number, 39259 default: 24 39260 } 39261 }, 39262 computed: { 39263 alt() { 39264 var _a, _b; 39265 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 39266 }, 39267 id() { 39268 var _a, _b; 39269 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 39270 } 39271 } 39272}; 39273const _hoisted_1$3Y = ["width", "height", "aria-labelledby", "aria-label"]; 39274const _hoisted_2$3D = ["id"]; 39275function _sfc_render$3v(_ctx, _cache, $props, $setup, $data, $options) { 39276 return openBlock(), createElementBlock("svg", { 39277 width: $props.size, 39278 height: $props.size,
39279 viewBox: "0 0 24 24", 39280 fill: "none", 39281 xmlns: "http://www.w3.org/2000/svg", 39282 role: "img", 39283 "aria-labelledby": `icon-title-${$options.id}`, 39284 "aria-label": $options.alt, 39285 onClick: _cache[0] || (_cache[0] = (...args) => $props.click && $props.click(...args)) 39286 }, [ 39287 createBaseVNode("title", { 39288 id: `icon-title-${$options.id}` 39289 }, toDisplayString($options.alt), 9, _hoisted_2$3D), 39290 _cache[1] || (_cache[1] = createBaseVNode("path", { 39291 d: "M18 6L6 18", 39292 stroke: "currentColor", 39293 "stroke-width": "2", 39294 "stroke-linecap": "round", 39295 "stroke-linejoin": "round" 39296 }, null, -1)), 39297 _cache[2] || (_cache[2] = createBaseVNode("path", { 39298 d: "M6 6L18 18", 39299 stroke: "currentColor", 39300 "stroke-width": "2", 39301 "stroke-linecap": "round", 39302 "stroke-linejoin": "round" 39303 }, null, -1)) 39304 ], 8, _hoisted_1$3Y); 39305} 39306const __nuxt_component_0$5 = /* @__PURE__ */ _export_sfc(_sfc_main$40, [["render", _sfc_render$3v]]); 39307const CoreIconClose = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 39308 __proto__: null, 39309 default: __nuxt_component_0$5 39310}, Symbol.toStringTag, { value: "Module" })); 39311const _sfc_main$3$ = { 39312 name: "CoreBlockDialog", 39313 inheritAttrs: false, 39314 props: { 39315 show: { 39316 type: Boolean, 39317 default: false 39318 }, 39319 type: { 39320 type: String, 39321 default: "dialog" 39322 } 39323 }, 39324 data() { 39325 return { 39326 bodyScrollLocked: false, 39327 originalBodyOverflow: null, 39328 scrollPosition: 0 39329 }; 39330 }, 39331 watch: { 39332 show(value) { 39333 this.$nextTick(() => { 39334 if (!this.$refs.dialog) return; 39335 if (value) { 39336 if (this.type === "modal") { 39337 this.lockBodyScroll(); 39338 this.$refs.dialog.showModal(); 39339 } else { 39340 this.$refs.dialog.show(); 39341 } 39342 } else { 39343 this.$refs.dialog.close(); 39344 if (this.type === "modal") { 39345 this.unlockBodyScroll(); 39346 } 39347 } 39348 }); 39349 } 39350 }, 39351 mounted() { 39352 const dialog = this.$refs.dialog; 39353 dialog.addEventListener("close", this.handleClose); 39354 }, 39355 beforeUnmount() { 39356 const dialog = this.$refs.dialog; 39357 if (dialog) { 39358 dialog.removeEventListener("close", this.handleClose); 39359 } 39360 if (this.type === "modal" && this.bodyScrollLocked) { 39361 this.unlockBodyScroll(); 39362 } 39363 }, 39364 methods: { 39365 lockBodyScroll() { 39366 if (this.bodyScrollLocked || false) return; 39367 this.scrollPosition = window.scrollY || window.pageYOffset || document.documentElement.scrollTop; 39368 this.originalBodyOverflow = document.body.style.overflow; 39369 document.body.style.overflow = "hidden"; 39370 document.body.style.position = "fixed"; 39371 document.body.style.top = `-${this.scrollPosition}px`; 39372 document.body.style.left = "0"; 39373 document.body.style.width = "100%"; 39374 this.bodyScrollLocked = true; 39375 }, 39376 unlockBodyScroll() { 39377 if (!this.bodyScrollLocked || false) return; 39378 const scrollPosition = this.scrollPosition; 39379 document.body.style.overflow = this.originalBodyOverflow || ""; 39380 document.body.style.position = ""; 39381 document.body.style.top = ""; 39382 document.body.style.left = ""; 39383 document.body.style.width = ""; 39384 this.bodyScrollLocked = false; 39385 this.originalBodyOverflow = null; 39386 this.scrollPosition = 0; 39387 if (scrollPosition > 0) { 39388 document.documentElement.scrollTop = scrollPosition; 39389 window.scrollTo(0, scrollPosition); 39390 } 39391 }, 39392 handleClose() { 39393 if (this.type === "modal") { 39394 this.unlockBodyScroll(); 39395 this.$emit("modal-close"); 39396 } else { 39397 this.$emit("close", false); 39398 } 39399 }, 39400 handleClick() { 39401 this.$refs.dialog.close(); 39402 } 39403 } 39404}; 39405const _hoisted_1$3X = { class: "dialog-header" }; 39406const _hoisted_2$3C = { class: "dialog-body" }; 39407function _sfc_render$3u(_ctx, _cache, $props, $setup, $data, $options) { 39408 const _component_CoreIconClose = __nuxt_component_0$5; 39409 return openBlock(), createElementBlock("dialog", { 39410 ref: "dialog", 39411 class: normalizeClass([_ctx.$attrs.class, $props.type === "modal" ? "dialog--modal" : ""]) 39412 }, [ 39413 createBaseVNode("div", _hoisted_1$3X, [ 39414 createBaseVNode("button", { 39415 class: "dialog-button", 39416 onClick: _cache[0] || (_cache[0] = (...args) => $options.handleClick && $options.handleClick(...args)), 39417 onKeydown: _cache[1] || (_cache[1] = withKeys(withModifiers(() => { 39418 }, ["prevent"]), ["enter"])), 39419 onKeyup: _cache[2] || (_cache[2] = withKeys((...args) => $options.handleClick && $options.handleClick(...args), ["enter"])) 39420 }, [ 39421 _cache[3] || (_cache[3] = createBaseVNode("span", null, "Close", -1)), 39422 createVNode(_component_CoreIconClose) 39423 ], 32) 39424 ]), 39425 createBaseVNode("div", _hoisted_2$3C, [ 39426 renderSlot(_ctx.$slots, "default", {}, void 0, true) 39427 ]) 39428 ], 2); 39429} 39430const __nuxt_component_3$1 = /* @__PURE__ */ _export_sfc(_sfc_main$3$, [["render", _sfc_render$3u], ["__scopeId", "data-v-aea5e853"]]); 39431const CoreBlockDialog = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 39432 __proto__: null, 39433 default: __nuxt_component_3$1 39434}, Symbol.toStringTag, { value: "Module" })); 39435const LABEL_FALLBACK = "Button Label"; 39436const _sfc_main$3_ = { 39437 name: "CoreBlockButton", 39438 components: { 39439 NuxtLink: __nuxt_component_2$5 39440 }, 39441 props: { 39442 settings: { 39443 type: Object, 39444 required: true 39445 }, 39446 isEditable: { 39447 type: Boolean, 39448 default: false 39449 }, 39450 dataSite: { 39451 type: Object, 39452 default: () => ({}) 39453 }, 39454 ...inlineTextEditProps, 39455 // Builder-only: the settings key the label is stored under (a card's 39456 // button uses e.g. `primaryLabel`). 39457 inlineFieldKey: { 39458 type: String, 39459 default: "label" 39460 }, 39461 // Builder-only: click point that opened inline editing, for caret seating. 39462 caretPoint: { 39463 type: Object, 39464 default: null 39465 } 39466 }, 39467 emits: ["inline-enter"], 39468 setup(props, { emit: emit2 }) { 39469 const root2 = useRoot(); 39470 const router = useRouter(); 39471 const store = useStore(); 39472 const { state } = store; 39473 const coreLiteEnabled = computed( 39474 () => { 39475 var _a, _b; 39476 return ((_b = (_a = store.getters) == null ? void 0 : _a["settings/getBrandFeatureFlag"]) == null ? void 0 : _b.call(_a, "CoreLite")) ?? false; 39477 } 39478 ); 39479 const brandCalendlyId = computed( 39480 () => { 39481 var _a; 39482 return ((_a = store.getters) == null ? void 0 : _a["settings/getBrandCalendlyId"]) ?? null; 39483 } 39484 ); 39485 const effectiveCalendlyUrl = computed(() => { 39486 var _a; 39487 const url = (_a = props.settings) == null ? void 0 : _a.url; 39488 if (typeof url === "string" && url.includes("https://calendly.com")) { 39489 return url; 39490 } 39491 if (coreLiteEnabled.value && brandCalendlyId.value) { 39492 return `https://calendly.com/${brandCalendlyId.value}
39492/generaldiscussion`; 39493 } 39494 return null; 39495 }); 39496 const isDialogOpen = ref(false); 39497 const modalPageData = ref(null); 39498 const itemCheckFunction = (item) => item.type === "document" || item.type === "link"; 39499 const { isExpired } = useIsExpired(props.settings, itemCheckFunction); 39500 const { editableSource, canInlineEdit, showInlineEditor } = useInlineTextEdit(props, { 39501 getSource: () => { 39502 var _a; 39503 return ((_a = props.settings) == null ? void 0 : _a.label) || ""; 39504 }, 39505 isExpired, 39506 propertyKey: props.inlineFieldKey 39507 }); 39508 const isInlineEnterable = computed( 39509 () => canInlineEdit.value && !showInlineEditor.value 39510 ); 39511 const handleLabelClick = (event) => { 39512 if (!isInlineEnterable.value) return; 39513 event.preventDefault(); 39514 event.stopPropagation(); 39515 emit2("inline-enter", event); 39516 }; 39517 const buttonLabel = computed(() => { 39518 var _a; 39519 return ((_a = props.settings) == null ? void 0 : _a.label) || LABEL_FALLBACK; 39520 }); 39521 const buttonAltText = computed(() => { 39522 var _a; 39523 return ((_a = props.settings) == null ? void 0 : _a.alt) || buttonLabel.value; 39524 }); 39525 const isNuxtLink = computed(() => { 39526 if (!buttonUrl.value) return false; 39527 try { 39528 if (router.resolve(buttonUrl.value)) { 39529 return true; 39530 } 39531 return false; 39532 } catch (err) { 39533 return false; 39534 } 39535 }); 39536 const buttonUrl = computed(() => { 39537 var _a, _b; 39538 if (isExpired.value) return null; 39539 const url = (_a = props.settings) == null ? void 0 : _a.url; 39540 if (effectiveCalendlyUrl.value) { 39541 return null; 39542 } else if (url === "dialog" || isModal.value) { 39543 return null; 39544 } 39545 const newUrl = ((_b = props.settings) == null ? void 0 : _b.newWindow) && typeof url === "string" ? replaceUrlBasePath(url) : url; 39546 return newUrl || null; 39547 }); 39548 const clickEvent = computed(() => { 39549 var _a; 39550 if (effectiveCalendlyUrl.value) { 39551 GTMCalendly(); 39552 if (newWindowTarget.value === "_self") { 39553 return showPopUp; 39554 } else { 39555 return () => { 39556 window.open(effectiveCalendlyUrl.value, "_blank"); 39557 }; 39558 } 39559 } else if (isModal.value) { 39560 return toggleModalDialog; 39561 } else if (isDialog.value) { 39562 return toggleDialog; 39563 } 39564 return ((_a = props.settings) == null ? void 0 : _a.event) || noEventFound; 39565 }); 39566 const isInternal = computed(() => { 39567 var _a; 39568 const url = (_a = props.settings) == null ? void 0 : _a.url; 39569 return typeof url === "string" && (url == null ? void 0 : url.charAt(0)) == "/" || typeof url === "object" && url !== null; 39570 }); 39571 const isModal = computed(() => { 39572 var _a; 39573 const url = (_a = props.settings) == null ? void 0 : _a.url; 39574 return typeof url === "string" && (url == null ? void 0 : url.startsWith("modal:")); 39575 }); 39576 const modalId = computed(() => { 39577 var _a; 39578 if (!isModal.value) return null; 39579 const url = (_a = props.settings) == null ? void 0 : _a.url; 39580 const id = url.replace("modal:", ""); 39581 return isNaN(Number(id)) ? id : Number(id); 39582 }); 39583 const isDialog = computed(() => { 39584 var _a; 39585 return ((_a = props.settings) == null ? void 0 : _a.url) === "dialog" || isModal.value; 39586 }); 39587 const newWindowTarget = computed(() => { 39588 if (props.settings.newWindow === void 0) { 39589 return "_self"; 39590 } 39591 return props.settings.newWindow ? "_blank" : "_self"; 39592 }); 39593 const ariaLabel = computed(() => { 39594 const lastUrlSegment = getLastUrlSegment(); 39595 const urlSegment = lastUrlSegment ? " - " + lastUrlSegment.toLowerCase() : ""; 39596 if (props.settings.newWindow) 39597 return `${buttonLabel.value}${urlSegment} (opens in a new window)`; 39598 return `${buttonLabel.value}${urlSegment}`; 39599 }); 39600 const relAttributes = computed(() => { 39601 var _a, _b; 39602 const featureEnabled = (_b = (_a = state == null ? void 0 : state.settings) == null ? void 0 : _a.featureFlags) == null ? void 0 : _b.SeoLinkRelAttributes; 39603 if (!featureEnabled) { 39604 return null; 39605 } 39606 if (Array.isArray(props.settings.relAttributes) && props.settings.relAttributes.length > 0) { 39607 return props.settings.relAttributes.join(" "); 39608 } 39609 if (newWindowTarget.value === "_blank") { 39610 return "noopener noreferrer"; 39611 } 39612 return null; 39613 }); 39614 const buttonDataTestId = computed(() => { 39615 var _a, _b, _c; 39616 const calendlyUrlSelf = typeof ((_a = props.settings) == null ? void 0 : _a.url) === "string" && ((_c = (_b = props.settings) == null ? void 0 : _b.url) == null ? void 0 : _c.includes("https://calendly.com")) && newWindowTarget.value !== "_blank"; 39617 return isDialog.value || calendlyUrlSelf ? "dialog-button" : "button"; 39618 }); 39619 const formSettings = computed(() => { 39620 var _a; 39621 return ((_a = props.settings) == null ? void 0 : _a.dialog) || {}; 39622 }); 39623 const modalSize = computed(() => { 39624 if (!modalPageData.value) return "medium";
39625 try { 39626 const settings = typeof modalPageData.value.settings === "string" ? JSON.parse(modalPageData.value.settings) : modalPageData.value.settings; 39627 return (settings == null ? void 0 : settings.modalSize) || "medium"; 39628 } catch { 39629 return "medium"; 39630 } 39631 }); 39632 const modalBackgroundClass = computed(() => { 39633 if (!modalPageData.value) return ""; 39634 try { 39635 const settings = typeof modalPageData.value.settings === "string" ? JSON.parse(modalPageData.value.settings) : modalPageData.value.settings; 39636 const bgColor = (settings == null ? void 0 : settings.backgroundColor) || "default"; 39637 if (bgColor === "light") return "_themed-light"; 39638 if (bgColor === "dark") return "_themed-dark"; 39639 if (bgColor === "grey") return "_themed-grey"; 39640 return ""; 39641 } catch { 39642 return ""; 39643 } 39644 }); 39645 const modalBlocks = computed(() => { 39646 if (!modalPageData.value) return []; 39647 try { 39648 const blocks = typeof modalPageData.value.blocks === "string" ? JSON.parse(modalPageData.value.blocks) : modalPageData.value.blocks; 39649 return blocks || []; 39650 } catch { 39651 return []; 39652 } 39653 }); 39654 const noEventFound = () => { 39655 }; 39656 const focusPopup = () => { 39657 const container = document.querySelector(".calendly-popup-content"); 39658 if (!container) { 39659 return; 39660 } 39661 const button = document.createElement("button"); 39662 container.prepend(button); 39663 button.focus(); 39664 button.remove(); 39665 }; 39666 const showPopUp = () => { 39667 { 39668 window.Calendly.showPopupWidget(effectiveCalendlyUrl.value); 39669 setCalendlyAttributes(props.settings.iframeTitle); 39670 addModalListener(); 39671 focusPopup(); 39672 } 39673 return false; 39674 }; 39675 const toggleDialog = () => { 39676 isDialogOpen.value = !isDialogOpen.value; 39677 return false; 39678 }; 39679 const toggleModalDialog = () => { 39680 var _a; 39681 if (!isDialogOpen.value && modalId.value) { 39682 const sitePages = ((_a = props.dataSite) == null ? void 0 : _a.pages) || []; 39683 const modalPage = sitePages.find((p2) => p2.id === modalId.value); 39684 if (modalPage) { 39685 modalPageData.value = modalPage; 39686 } 39687 } 39688 toggleDialog(); 39689 }; 39690 const setCalendlyAttributes = (title) => { 39691 var _a; 39692 const iframes = document.querySelectorAll("iframe"); 39693 for (const iframe of iframes) {
39694 if ((_a = iframe.src) == null ? void 0 : _a.includes("https://calendly.com")) { 39695 iframe.setAttribute( 39696 "title", 39697 title || "default-calendly-title" 39698 ); 39699 } 39700 } 39701 const calendlyCloseButton = document.querySelector( 39702 ".calendly-popup-close" 39703 ); 39704 calendlyCloseButton.setAttribute("tabIndex", "0"); 39705 calendlyCloseButton.addEventListener( 39706 "keydown", 39707 closeModalEnterHandler, 39708 true 39709 ); 39710 }; 39711 const closeModalEnterHandler = (event) => { 39712 if (event.key === "Enter" || event.keyCode === 13) { 39713 closeCalendlyModal(); 39714 } 39715 }; 39716 const closeModalKeyHandler = (event) => { 39717 if (event.key === "Escape" || event.keyCode === 27) { 39718 closeCalendlyModal(); 39719 } 39720 }; 39721 const closeCalendlyModal = () => { 39722 window.Calendly.closePopupWidget(); 39723 document.removeEventListener("keydown", closeModalKeyHandler, true); 39724 }; 39725 const addModalListener = () => { 39726 document.addEventListener("keydown", closeModalKeyHandler, true); 39727 }; 39728 const GTMCalendly = () => { 39729 const { eventType, calendlyId } = decodeCalendlyUrl( 39730 props.settings.url 39731 ); 39732 root2.$gtm.push({ 39733 event: "nyl-calendly", 39734 calendly_id: calendlyId, 39735 calendly_category: getCalendlyCategory(eventType), 39736 event_type: eventType, 39737 calendly_event_id: eventType == null ? void 0 : eventType.toLowerCase().replace(/\s/g, ""), 39738 click_url: props.settings.url 39739 }); 39740 }; 39741 const getCalendlyCategory = (eventType) => { 39742 var calendlyCategory = ""; 39743 switch (eventType) { 39744 case "Custom Event": 39745 calendlyCategory = "custom"; 39746 break; 39747 case "General Discussion": 39748 case "Intro Appointment": 39749 case "Review": 39750 calendlyCategory = "agent"; 39751 break; 39752 case "Intro to NYL": 39753 case "Quick Checkin": 39754 case "First Interview": 39755 calendlyCategory = "GO"; 39756 break; 39757 } 39758 return calendlyCategory; 39759 }; 39760 const replaceUrlBasePath = (url) => { 39761 if (!url || !isInternal.value) return url; 39762 const config = /* @__PURE__ */ useRuntimeConfig(); 39763 const basePath = config.public.basePath || "/"; 39764 return `${basePath}/${url}`.replace(/\/+/g, "/"); 39765 }; 39766 const getLastUrlSegment = () => { 39767 if (!buttonUrl.value || typeof buttonUrl.value !== "string") { 39768 return ""; 39769 } 39770 const segments = buttonUrl.value.split("/"); 39771 const lastSegment = segments[segments.length - 1] || ""; 39772 return lastSegment.replace(/[-_]/g, " "); 39773 }; 39774 const decodeCalendlyUrl = (url) => { 39775 if (!url || typeof url !== "string" || url.trim() === "") { 39776 return { 39777 eventType: null, 39778 calendlyId: null 39779 }; 39780 } 39781 try { 39782 const urlObj = new URL(url); 39783 const pathParts = urlObj.pathname.split("/").filter((part) => part !== ""); 39784 const calendlyId = pathParts[0] || null; 39785 let eventType = ""; 39786 if (pathParts.length > 1) { 39787 eventType = decodeURIComponent(pathParts[1]); 39788 } 39789 if (!eventType || eventType.includes("utm_campaign") && eventType.includes("utm_source")) { 39790 eventType = null; 39791 } 39792 return { 39793 eventType, 39794 calendlyId 39795 }; 39796 } catch { 39797 return { 39798 eventType: null, 39799 calendlyId: null 39800 }; 39801 } 39802 }; 39803 return { 39804 LABEL_FALLBACK, 39805 addModalListener, 39806 buttonAltText, 39807 buttonDataTestId, 39808 buttonLabel, 39809 buttonUrl, 39810 clickEvent, 39811 closeCalendlyModal, 39812 closeModalKeyHandler, 39813 editableSource, 39814 formSettings, 39815 getCalendlyCategory, 39816 GTMCalendly, 39817 handleLabelClick, 39818 isDialog, 39819 isDialogOpen, 39820 isExpired, 39821 isInlineEnterable, 39822 isInternal, 39823 isModal, 39824 modalBackgroundClass, 39825 modalBlocks, 39826 modalId, 39827 modalSize, 39828 ariaLabel, 39829 newWindowTarget, 39830 noEventFound, 39831 relAttributes, 39832 replaceUrlBasePath, 39833 setCalendlyAttributes, 39834 showInlineEditor, 39835 showPopUp, 39836 toggleDialog, 39837 toggleModalDialog, 39838 isNuxtLink 39839 }; 39840 } 39841}; 39842const _hoisted_1$3W = ["data-testid"]; 39843const _hoisted_2$3B = ["href", "target", "rel", "aria-label", "title"]; 39844const _hoisted_3$m = { class: "button_icon--custom" }; 39845const _hoisted_4$g = { class: "button_label button_icon--down" }; 39846const _hoisted_5$e = { class: "button_icon--custom" }; 39847const _hoisted_6$9 = { class: "button_label button_icon--down" }; 39848const _hoisted_7$8 = { 39849 key: 0, 39850 class: "modal-content" 39851}; 39852function _sfc_render$3t(_ctx, _cache, $props, $setup, $data, $options) { 39853 const _component_CoreIcon = __nuxt_component_1$7; 39854 const _component_NuxtLink = __nuxt_component_2$5; 39855 const _component_CoreBlock = _sfc_main$4x; 39856 const _component_CoreBlockDialog = __nuxt_component_3$1; 39857 return openBlock(), createElementBlock("div", { 39858 class: "block__body", 39859 "data-testid": $setup.buttonDataTestId 39860 }, [ 39861 !$setup.isInternal || $props.settings.newWindow && typeof $setup.buttonUrl === "string" || $setup.isDialog || !$setup.isNuxtLink ? (openBlock(), createElementBlock("a", { 39862 key: 0, 39863 href: $setup.buttonUrl, 39864 target: $setup.newWindowTarget, 39865 rel: $setup.relAttributes, 39866 class: "button", 39867 role: "button", 39868 tabindex: "0", 39869 "aria-label": $setup.ariaLabel, 39870 title: $setup.buttonAltText, 39871 onClick: _cache[4] || (_cache[4] = withModifiers((...args) => $setup.clickEvent && $setup.clickEvent(...args), ["stop"])), 39872 onKeyup: _cache[5] || (_cache[5] = withKeys((...args) => $setup.clickEvent && $setup.clickEvent(...args), ["enter"])) 39873 }, [ 39874 createBaseVNode("span", _hoisted_3$m, [ 39875 $props.settings.icon ? (openBlock(), createBlock(_component_CoreIcon, { 39876 key: 0, 39877 "aria-label": $props.settings.label, 39878 icon: $props.settings.icon, 39879 class: "button_icon", 39880 name: "buttonIcon", 39881 role: "img" 39882 }, null, 8, ["aria-label", "icon"])) : createCommentVNode("", true) 39883 ]), 39884 createBaseVNode("span", _hoisted_4$g, [ 39885 $setup.showInlineEditor ? (openBlock(), createElementBlock("span", { 39886 key: 0, 39887 class: "button_label_text_inline-edit block__body_inline-edit", 39888 onMousedown: _cache[0] || (_cache[0] = withModifiers(() => { 39889 }, ["stop"])), 39890 onClick: _cache[1] || (_cache[1] = withModifiers(() => { 39891 }, ["stop", "prevent"])), 39892 onKeyup: _cache[2] || (_cache[2] = withModifiers(() => { 39893 }, ["stop"])) 39894 }, [ 39895 renderSlot(_ctx.$slots, "inline-editor", { 39896 field: $props.inlineFieldKey, 39897 html: $setup.editableSource, 39898 caretPoint: $props.caretPoint, 39899 placeholder: $setup.LABEL_FALLBACK 39900 }) 39901 ], 32)) : (openBlock(), createElementBlock("span", { 39902 key: 1, 39903 class: normalizeClass(["button_label_text", { 39904 "button_label_text--inline-enterable": $setup.isInlineEnterable 39905 }]), 39906 onClickCapture: _cache[3] || (_cache[3] = (...args) => $setup.handleLabelClick && $setup.handleLabelClick(...args)) 39907 }, toDisplayString($setup.buttonLabel), 35)), 39908 createVNode(_component_CoreIcon, { 39909 class: "button_icon button_i", 39910 icon: "down-arrow", 39911 role: "img" 39912 }) 39913 ]) 39914 ], 40, _hoisted_2$3B)) : (openBlock(), createBlock(_component_NuxtLink, mergeProps({ 39915 key: 1, 39916 to: $setup.buttonUrl, 39917 class: "button", 39918 role: "button" 39919 }, {
39920 ...$props.settings.newWindow && { target: "_blank" }, 39921 ...$setup.relAttributes && { rel: $setup.relAttributes } 39922 }, { 39923 "aria-label": $setup.ariaLabel, 39924 onClick: $setup.clickEvent 39925 }), { 39926 default: withCtx(() => [ 39927 createBaseVNode("span", _hoisted_5$e, [ 39928 $props.settings.icon ? (openBlock(), createBlock(_component_CoreIcon, { 39929 key: 0, 39930 "aria-label": $props.settings.label, 39931 icon: $props.settings.icon, 39932 class: "button_icon", 39933 name: "buttonIcon", 39934 role: "img" 39935 }, null, 8, ["aria-label", "icon"])) : createCommentVNode("", true) 39936 ]), 39937 createBaseVNode("span", _hoisted_6$9, [ 39938 $setup.showInlineEditor ? (openBlock(), createElementBlock("span", { 39939 key: 0, 39940 class: "button_label_text_inline-edit block__body_inline-edit", 39941 onMousedown: _cache[6] || (_cache[6] = withModifiers(() => { 39942 }, ["stop"])), 39943 onClick: _cache[7] || (_cache[7] = withModifiers(() => { 39944 }, ["stop", "prevent"])), 39945 onKeyup: _cache[8] || (_cache[8] = withModifiers(() => { 39946 }, ["stop"])) 39947 }, [ 39948 renderSlot(_ctx.$slots, "inline-editor", { 39949 field: $props.inlineFieldKey, 39950 html: $setup.editableSource, 39951 caretPoint: $props.caretPoint, 39952 placeholder: $setup.LABEL_FALLBACK 39953 }) 39954 ], 32)) : (openBlock(), createElementBlock("span", { 39955 key: 1, 39956 class: normalizeClass(["button_label_text", { 39957 "button_label_text--inline-enterable": $setup.isInlineEnterable 39958 }]), 39959 onClickCapture: _cache[9] || (_cache[9] = (...args) => $setup.handleLabelClick && $setup.handleLabelClick(...args)) 39960 }, toDisplayString($setup.buttonLabel), 35)), 39961 createVNode(_component_CoreIcon, { 39962 class: "button_icon button_i", 39963 icon: "down-arrow", 39964 role: "img" 39965 }) 39966 ]) 39967 ]), 39968 _: 3 39969 }, 16, ["to", "aria-label", "onClick"])), 39970 $setup.isDialog ? (openBlock(), createBlock(_component_CoreBlockDialog, { 39971 key: 2, 39972 show: $setup.isDialogOpen, 39973 type: "modal", 39974 class: normalizeClass( 39975 $setup.isModal ? `modal-size-${$setup.modalSize} block ${$setup.modalBackgroundClass}` : "" 39976 ), 39977 onClose: $setup.toggleDialog, 39978 onModalClose: $setup.toggleModalDialog 39979 }, { 39980 default: withCtx(() => [ 39981 $setup.isModal ? (openBlock(), createElementBlock("div", _hoisted_7$8, [ 39982 (openBlock(true), createElementBlock(Fragment, null, renderList($setup.modalBlocks, (block, index2) => { 39983 return openBlock(), createBlock(_component_CoreBlock, { 39984 key: block.id || index2, 39985 settings: block, 39986 index: index2, 39987 "is-editable": $props.isEditable 39988 }, null, 8, ["settings", "index", "is-editable"]); 39989 }), 128)) 39990 ])) : (openBlock(), createBlock(_component_CoreBlock, { 39991 key: 1, 39992 settings: $setup.formSettings, 39993 "is-editable": $props.isEditable 39994 }, null, 8, ["settings", "is-editable"])) 39995 ]), 39996 _: 1 39997 }, 8, ["show", "class", "onClose", "onModalClose"])) : createCommentVNode("", true) 39998 ], 8, _hoisted_1$3W); 39999} 40000const CoreBlockButton = /* @__PURE__ */ _export_sfc(_sfc_main$3_, [["render", _sfc_render$3t]]); 40001const CoreBlockButton$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 40002 __proto__: null, 40003 default: CoreBlockButton 40004}, Symbol.toStringTag, { value: "Module" })); 40005const _sfc_main$3Z = { 40006 name: "CoreBlockCalculators", 40007 props: { 40008 index: { 40009 type: Number, 40010 default: 0 40011 }, 40012 nestedLevel: { 40013 type: Number, 40014 default: 0 40015 }, 40016 settings: { 40017 type: Object, 40018 required: true 40019 }, 40020 isEditable: { 40021 type: Boolean, 40022 default: false 40023 } 40024 }, 40025 computed: { 40026 background() { 40027 if (this.mediaIsImg) { 40028 return { 40029 "background-image": `url('${this.mediaSrc}')`, 40030 "background-position": "center", 40031 "background-repeat": "no-repeat" 40032 }; 40033 } 40034 return null; 40035 }, 40036 childBlockComponent() { 40037 if (this.isEditable) { 40038 return "ForgeControlBlock"; 40039 } 40040 return "CoreBlock"; 40041 }, 40042 blockId() { 40043 return this.settings.id; 40044 }, 40045 variants() { 40046 return this.settings.variants || {}; 40047 }, 40048 imageAlign() { 40049 return (this.variants["image-align"] || "left").replace( 40050 "image-", 40051 "" 40052 ); 40053 }, 40054 videoMediaSrc() { 40055 let ret = this.mediaSrc; 40056 if (mediaHelper.isYoutube(this.mediaSrc)) { 40057 let embedId = this.mediaSrc.match( 40058 /https:\/\/www.youtube.com\/embed\/([^\/?]+)/ 40059 ); 40060 if ((embedId == null ? void 0 : embedId.length) > 1) { 40061 ret = `https://www.youtube.com/embed/${embedId}?playlist=${embedId[1]}
40061&controls=0&autoplay=1&fs=0&iv_load_policy=3&loop=1&disablekb=1&modestbranding=1&mute=1`; 40062 } 40063 } 40064 return ret; 40065 }, 40066 textAlign() { 40067 return (this.variants["text-align"] || "left").replace("text-", ""); 40068 }, 40069 verticalAlign() { 40070 return this.variants["vertical-align"] || null; 40071 }, 40072 mediaIsVideo() { 40073 return !!this.mediaSrc && mediaHelper.isVideo(this.mediaSrc); 40074 }, 40075 mediaIsImg() { 40076 return !!this.mediaSrc && mediaHelper.isImage(this.mediaSrc); 40077 }, 40078 mediaSrc() { 40079 var _a; 40080 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.backgroundMediaSrc; 40081 return mediaSrc && typeof mediaSrc === "object" ? mediaSrc.src : mediaSrc; 40082 }, 40083 sideMediaSrc() { 40084 var _a; 40085 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.sideMediaSrc; 40086 return mediaSrc && typeof mediaSrc === "object" ? mediaSrc.src : mediaSrc; 40087 } 40088 }, 40089 methods: { 40090 getSettings() { 40091 const response = { 40092 type: "columns", 40093 "column-count": 2, 40094 variants: { 40095 layout: "grid", 40096 "vertical-alignment": this.verticalAlign, 40097 "image-alignment": this.imageAlign, 40098 "padding-top": "pt-small", 40099 "bg-color": "transparent" 40100 // layout: "contained", 40101 }, 40102 locked: true, 40103 blocks: [] 40104 }; 40105 const imageBlock = { 40106 type: "rows", 40107 blocks: [], 40108 variants: { 40109 "bg-color": "transparent" 40110 } 40111 }; 40112 if (this.sideMediaSrc) { 40113 imageBlock.blocks.push({ 40114 id: `i1_${this.settings.id}`, 40115 type: "media", 40116 acceptTypes: ["video", "image"], 40117 variants: { 40118 sizing: "contain", 40119 "bg-color": "transparent" 40120 }, 40121 src: this.sideMediaSrc, 40122 width: "100%", 40123 height: "auto" 40124 }); 40125 } 40126 response.blocks.push(imageBlock); 40127 const contentBlock = { 40128 id: `c1_${this.settings.id}`, 40129 type: "rows", 40130 variants: { 40131 "padding-horizontal": "px-medium", 40132 "bg-color": "transparent" 40133 }, 40134 blocks: [ 40135 { 40136 type: "text", 40137 variants: { 40138 size: "overline", 40139 align: this.textAlign 40140 }, 40141 text: this.settings.overline 40142 }, 40143 { 40144 type: "text", 40145 variants: { 40146 size: "headline", 40147 align: this.textAlign, 40148 weight: "bold" 40149 }, 40150 text: this.settings.headline, 40151 tag: "h2" 40152 }, 40153 { 40154 type: "text", 40155 variants: { 40156 size: "subline", 40157 align: this.textAlign, 40158 weight: "bold" 40159 }, 40160 text: this.settings.subline 40161 }, 40162 { 40163 type: "rich-text", 40164 variants: { 40165 align: this.textAlign 40166 }, 40167 richText: this.settings.bodyText 40168 } 40169 ] 40170 }; 40171 const buttonContainer = this.getButtonContainer(); 40172 if (buttonContainer) { 40173 contentBlock.blocks.push(buttonContainer); 40174 } 40175 response.blocks.push(contentBlock); 40176 return response; 40177 }, 40178 getButtonContainer() { 40179 let response = null; 40180 if (this.settings["button-primary-url"] || this.settings["button-secondary-url"] || this.settings["button-tertiary-url"]) { 40181 response = { 40182 id: `c2_${this.settings.id}`, 40183 type: "container", 40184 variants: { 40185 layout: "columns", 40186 "bg-color": "transparent" 40187 }, 40188 locked: false, 40189 allowTypes: ["button"], 40190 blocks: [] 40191 }; 40192 if (this.settings["button-primary-url"]) { 40193 response.blocks.push({ 40194 id: `b1_${this.settings.id}`, 40195 type: "button", 40196 variants: { 40197 style: "primary" 40198 }, 40199 label: this.settings["button-primary-label"] || "Primary Button Label", 40200 url: this.settings["button-primary-url"] 40201 }); 40202 } 40203 if (this.settings["button-secondary-url"]) { 40204 response.blocks.push({ 40205 id: `b2_${this.settings.id}`, 40206 type: "button", 40207 variants: { 40208 style: "secondary" 40209 }, 40210 label: this.settings["button-secondary-label"] || "Secondary Button Label", 40211 url: this.settings["button-secondary-url"] 40212 }); 40213 } 40214 if (this.settings["button-tertiary-url"]) { 40215 response.blocks.push({ 40216 id: `b3_${this.settings.id}`, 40217 type: "button", 40218 variants: { 40219 style: "tertiary" 40220 }, 40221 label: this.settings["button-tertiary-label"] || "Tertiary Button Label" 40222 }); 40223 } 40224 } 40225 return response; 40226 }, 40227 scrollDown() { 40228 { 40229 window.scroll({ top: 900, behavior: "smooth" }); 40230 } 40231 } 40232 } 40233}; 40234const _hoisted_1$3V = ["src"]; 40235function _sfc_render$3s(_ctx, _cache, $props, $setup, $data, $options) { 40236 return openBlock(), createElementBlock("div", { 40237 class: "block__body", 40238 style: normalizeStyle({ 40239 ...$options.background 40240 }) 40241 }, [ 40242 $options.mediaIsVideo ? (openBlock(), createElementBlock("iframe", { 40243 key: 0, 40244 class: "block__section_content--player", 40245 src: $options.mediaSrc, 40246 title: "Video Block", 40247 frameborder: "0", 40248 allowfullscreen: "" 40249 }, null, 8, _hoisted_1$3V)) : createCommentVNode("", true), 40250 (openBlock(), createBlock(resolveDynamicComponent($options.childBlockComponent), { 40251 index: 0, 40252 "is-editable": $props.isEditable, 40253 "is-first-child": true, 40254 "is-last-child": true, 40255 settings: $options.getSettings() 40256 }, null, 8, ["is-editable", "settings"])) 40257 ], 4); 40258} 40259const CoreBlockCalculators = /* @__PURE__ */ _export_sfc(_sfc_main$3Z, [["render", _sfc_render$3s]]); 40260const CoreBlockCalculators$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 40261 __proto__: null, 40262 default: CoreBlockCalculators 40263}, Symbol.toStringTag, { value: "Module" })); 40264const _hoisted_1$3U = ["aria-labelledby", "aria-label"]; 40265const _hoisted_2$3A = ["id"]; 40266const _sfc_main$3Y = { 40267 __name: "CoreIconCalendlyTitle", 40268 props: { 40269 settings: { 40270 type: Object, 40271 required: false 40272 } 40273 }, 40274 setup(__props) { 40275 const props = __props; 40276 const alt = computed(() => { 40277 var _a, _b; 40278 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "Actions"; 40279 }); 40280 const id = computed(() => { 40281 var _a, _b; 40282 return ((_a = props.settings) == null ? void 0 : _a.id) || ((_b = props.settings) == null ? void 0 : _b.icon); 40283 }); 40284 return (_ctx, _cache) => { 40285 return openBlock(), createElementBlock("svg", { 40286 xmlns: "http://www.w3.org/2000/svg", 40287 width: "76", 40288 height: "19",
40289 viewBox: "0 0 76 19", 40290 fill: "none", 40291 "aria-labelledby": `icon-title-${unref(id)}`, 40292 "aria-label": unref(alt) 40293 }, [ 40294 createBaseVNode("title", { 40295 id: `icon-title-${unref(id)}` 40296 }, toDisplayString(unref(alt)), 9, _hoisted_2$3A), 40297 _cache[0] || (_cache[0] = createStaticVNode('<path d="M45.0178 7.1371C46.1811 7.1371 47.2826 7.84869 47.5151 9.38622H42.3346C42.5514 8.03703 43.56 7.1371 45.0178 7.1371ZM47.3495 11.661C46.9538 12.2777 46.1891 12.7521 45.1421 12.7521C43.6995 12.7521 42.5979 11.9613 42.3346 10.5651H48.8339C48.8652 10.365 48.8809 10.1628 48.8813 9.96024C48.8813 7.78892 47.3633 5.86523 45.0188 5.86523C42.5993 5.86523 40.9551 7.64897 40.9551 9.94506C40.9551 12.2696 42.6155 14.0249 45.1118 14.0249C46.663 14.0249 47.8419 13.3266 48.5241 12.2696L47.3495 11.661Z" fill="#006BFF"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M38.9673 2.5H40.3165V13.8234H38.9673V2.5Z" fill="#006BFF"></path><path d="M56.3888 9.06179V13.8233H55.0391V9.13911C55.0391 7.86725 54.3104 7.15376 53.1159 7.15376C51.8748 7.15376 50.8668 7.88291 50.8668 9.71314V13.8233H49.5171V6.06881H50.8668V7.18554C51.4408 6.27043 52.2937 5.86719 53.3811 5.86719C55.1956 5.86719 56.3902 7.0769 56.3902 9.06274" fill="#006BFF"></path><path d="M63.8294 9.94521C63.8294 8.36309 62.6349 7.16856 61.0684 7.16856C59.5171 7.16856 58.3231 8.36309 58.3231 9.94521C58.3231 11.5273 59.5171 12.7219 61.0684 12.7219C62.6339 12.7219 63.8294 11.5273 63.8294 9.94521ZM65.1786 2.5V13.8234H63.8294V12.4889C63.2089 13.4377 62.2164 14.025 60.8976 14.025C58.7415 14.025 56.9734 12.2408 56.9734 9.94521C56.9734 7.6496 58.7415 5.86538 60.8976 5.86538C62.216 5.86538 63.2089 6.45459 63.8294 7.40101V2.5H65.1786Z" fill="#006BFF"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M66.2668 2.5H67.616V13.8234H66.2668V2.5Z" fill="#006BFF"></path><path d="M36.5621 9.94701C36.5621 8.3649 35.368 7.17036 33.8011 7.17036C32.2503 7.17036 31.0557 8.3649 31.0557 9.94701C31.0557 11.5291 32.2503 12.7237 33.8011 12.7237C35.3666 12.7237 36.5621 11.5291 36.5621 9.94701ZM37.9117 6.07023V13.8247H36.5621V12.4907C35.9415 13.4395 34.9491 14.0268 33.6308 14.0268C31.4746 14.0268 29.7061 12.2426 29.7061 9.94701C29.7061 7.6514 31.4746 5.86719 33.6308 5.86719C34.9491 5.86719 35.9415 6.45639 36.5621 7.40282V6.07023H37.9117Z" fill="#006BFF"></path><path d="M27.7046 12.3318C27.2391 12.5036 26.7468 12.5915 26.2506 12.5915C23.9467 12.5915 22.0508 10.6956 22.0508 8.39163C22.0508 6.08767 23.9467 4.19178 26.2506 4.19178C27.2239 4.19178 28.1675 4.53008 28.919 5.14845C29.1561 5.3441 29.3706 5.56559 29.5585 5.80882L30.726 4.9549C29.6571 3.55756 27.995 2.73633 26.2357 2.73633C23.1343 2.73633 20.5823 5.28835 20.5823 8.38973C20.5823 11.4911 23.1343 14.0431 26.2357 14.0431C27.4879 14.0431 28.7053 13.6271 29.6956 12.8607L28.9185 11.6321C28.5555 11.9311 28.1452 12.1676 27.7046 12.3318Z" fill="#006BFF"></path><path d="M74.1295 6.07031V10.4718C74.1295 11.895 73.3017 12.7963 72.0379 12.7963C70.7741 12.7963 69.859 11.895 69.859 10.4718V6.07031H68.4937V10.3399C68.4937 12.5772 69.8879 14.0298 72.0379 14.0298C73.8975 14.0298 74.1879 12.8533 74.1879 12.8238V14.4074C74.1879 15.9762 73.5052 16.8624 72.0815 16.8624C71.0345 16.8676 70.136 16.0876 69.9942 15.0502L68.7735 15.4772C69.1322 17.0089 70.5108 18.1002 72.0839 18.0973C74.2918 18.0973 75.4996 16.6442 75.4996 14.4074V6.07031H74.1295Z" fill="#006BFF"></path><path d="M11.4841 10.5898C10.9656 11.0499 10.318 11.6225 9.1439 11.6225H8.44179C7.59215 11.6225 6.81935 11.3137 6.2662 10.7539C5.72586 10.2069 5.42842 9.45834 5.42842 8.6457V7.68504C5.42842 6.87239 5.72586 6.12379 6.2662 5.57681C6.81935 5.01702 7.59215 4.70866 8.44179 4.70866H9.1439C10.3195 4.70866 10.9656 5.28079 11.4841 5.74095C12.0226 6.21535 12.487 6.62998 13.7256 6.62998C13.9145 6.62993 14.1032 6.61484 14.2897 6.58491L14.2854 6.574C14.2112 6.38974 14.1242 6.21094 14.025 6.03888L13.1972 4.60477C12.4383 3.29059 11.0314 2.47847 9.51394 2.47852H7.85781C6.3403 2.47847 4.93343 3.29059 4.17458 4.60477L3.34675 6.03888C2.58819 7.3532 2.58819 8.97754 3.34675 10.2919L4.17458 11.726C4.93343 13.0401 6.3403 13.8523 7.85781 13.8522H9.51394C11.0314 13.8523 12.4383 13.0401 13.1972 11.726L14.025 10.2942C14.1242 10.1222 14.2112 9.94337 14.2854 9.75911L14.2897 9.74867C14.1033 9.71769 13.9146 9.70185 13.7256 9.70123C12.487 9.70123 12.0226 10.1135 11.4841 10.5903" fill="#006BFF"></path><path d="M9.1438 5.58008H8.44169C7.14848 5.58008 6.29883 6.50373 6.29883 7.68593V8.64659C6.29883 9.82879 7.14848 10.7524 8.44169 10.7524H9.1438C11.0281 10.7524 10.8801 8.83113 13.7255 8.83113C13.9951 8.83085 14.2642 8.85561 14.5292 8.90514C14.6155 8.41636 14.6155 7.91616 14.5292 7.42739C14.2641 7.47668 13.9951 7.50144 13.7255 7.50139C10.8791 7.50139 11.0281 5.58008 9.1438 5.58008Z" fill="#006BFF"></path><path d="M16.1641 9.60681C15.6796 9.25191 15.1207 9.01167 14.5298 8.90422V8.91845C14.479 9.20172 14.3995 9.47905 14.2926 9.74628C14.7807 9.82185 15.2439 10.0127 15.6437 10.3027C15.6437 10.3065 15.6413 10.3113 15.6399 10.3156C14.6996 13.3603 11.8656 15.4512 8.67896 15.4512C4.68234 15.4512 1.39362 12.1624 1.39362 8.16582C1.39362 4.1692 4.68234 0.880484 8.67896 0.880484C11.8656 0.880484 14.6996 2.9713 15.6399 6.01608C15.6399 6.02035 15.6423 6.0251 15.6437 6.02889C15.244 6.31904 14.7808 6.50965 14.2926 6.58489C14.3994 6.85245 14.4788 7.13011 14.5298 7.41366C14.5295 7.41807 14.5295 7.42253 14.5298 7.42695C15.1207 7.31968 15.6796 7.07959 16.1641 6.72484C16.63 6.37995 16.5398 5.99047 16.4692 5.75991C1
402975.4164 2.34533 12.239 0 8.66582 0C4.18617 0 0.5 3.68617 0.5 8.16582C0.5 12.6455 4.18617 16.3316 8.66582 16.3316C12.239 16.3316 15.4164 13.9863 16.4692 10.5717C16.5398 10.3412 16.63 9.95169 16.1641 9.60681Z" fill="#006BFF"></path><path d="M14.2895 6.58333C14.1031 6.61431 13.9145 6.63016 13.7255 6.63077C12.4868 6.63077 12.0224 6.21852 11.4844 5.74175C10.9654 5.28158 10.3193 4.70898 9.14371 4.70898H8.4416C7.59148 4.70898 6.81916 5.01782 6.26601 5.57761C5.72567 6.12459 5.42822 6.87319 5.42822 7.68583V8.64649C5.42822 9.45914 5.72567 10.2077 6.26601 10.7547C6.81916 11.3145 7.59148 11.6229 8.4416 11.6229H9.14371C10.3193 11.6229 10.9654 11.0507 11.4844 10.5906C12.0224 10.1162 12.4868 9.70155 13.7255 9.70155C13.9144 9.7016 14.103 9.71669 14.2895 9.74662C14.3966 9.47949 14.476 9.20211 14.5267 8.9188C14.527 8.91405 14.527 8.90931 14.5267 8.90456C14.2617 8.85542 13.9926 8.8308 13.7231 8.83103C10.8767 8.83103 11.0257 10.7528 9.14134 10.7528H8.43923C7.14602 10.7528 6.29637 9.82869 6.29637 8.64649V7.68394C6.29637 6.50174 7.14602 5.57808 8.43923 5.57808H9.14134C11.0257 5.57808 10.8776 7.49892 13.7231 7.49892C13.9927 7.4994 14.2617 7.47478 14.5267 7.42539V7.41211C14.4757 7.12856 14.3963 6.85089 14.2895 6.58333Z" fill="#0AE8F0"></path><path d="M14.2895 6.58333C14.1031 6.61431 13.9145 6.63016 13.7255 6.63077C12.4868 6.63077 12.0224 6.21852 11.4844 5.74175C10.9654 5.28158 10.3193 4.70898 9.14371 4.70898H8.4416C7.59148 4.70898 6.81916 5.01782 6.26601 5.57761C5.72567 6.12459 5.42822 6.87319 5.42822 7.68583V8.64649C5.42822 9.45914 5.72567 10.2077 6.26601 10.7547C6.81916 11.3145 7.59148 11.6229 8.4416 11.6229H9.14371C10.3193 11.6229 10.9654 11.0507 11.4844 10.5906C12.0224 10.1162 12.4868 9.70155 13.7255 9.70155C13.9144 9.7016 14.103 9.71669 14.2895 9.74662C14.3966 9.47949 14.476 9.20211 14.5267 8.9188C14.527 8.91405 14.527 8.90931 14.5267 8.90456C14.2617 8.85542 13.9926 8.8308 13.7231 8.83103C10.8767 8.83103 11.0257 10.7528 9.14134 10.7528H8.43923C7.14602 10.7528 6.29637 9.82869 6.29637 8.64649V7.68394C6.29637 6.50174 7.14602 5.57808 8.43923 5.57808H9.14134C11.0257 5.57808 10.8776 7.49892 13.7231 7.49892C13.9927 7.4994 14.2617 7.47478 14.5267 7.42539V7.41211C14.4757 7.12856 14.3963 6.85089 14.2895 6.58333Z" fill="#0AE8F0"></path>', 13)) 40298 ], 8, _hoisted_1$3U); 40299 }; 40300 } 40301}; 40302const CoreIconCalendlyTitle = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 40303 __proto__: null, 40304 default: _sfc_main$3Y 40305}, Symbol.toStringTag, { value: "Module" })); 40306const _hoisted_1$3T = { class: "block__body" }; 40307const _hoisted_2$3z = { 40308 key: 0, 40309 class: "calendly-no-url" 40310}; 40311const _hoisted_3$l = ["data-url"]; 40312const _sfc_main$3X = { 40313 __name: "CoreBlockCalendlyEmbed", 40314 props: { 40315 settings: { 40316 type: Object, 40317 required: true 40318 }, 40319 dataSite: { 40320 type: Object, 40321 required: true 40322 }, 40323 isEditable: { 40324 type: Boolean, 40325 default: false 40326 } 40327 }, 40328 setup(__props) { 40329 const props = __props; 40330 const store = useStore(); 40331 const calendlyContainer = ref(null); 40332 const isInitialized = ref(false); 40333 const itemCheckFunction = (item) => item.type === "link"; 40334 const { isExpired } = useIsExpired(props.settings, itemCheckFunction); 40335 const calendlyId = computed(() => { 40336 var _a, _b, _c, _d, _e, _f; 40337 const coreLiteEnabled = ((_b = (_a = store.getters) == null ? void 0 : _a["settings/getBrandFeatureFlag"]) == null ? void 0 : _b.call(_a, "CoreLite")) ?? false; 40338 const brandCalendlyId = ((_c = store.getters) == null ? void 0 : _c["settings/getBrandCalendlyId"]) ?? null; 40339 if (coreLiteEnabled && brandCalendlyId) return brandCalendlyId; 40340 if (!props.dataSite) return null; 40341 const site = props.dataSite; 40342 return ((_f = (_e = (_d = site.teamMembers) == null ? void 0 : _d.find( 40343 (member) => { 40344 var _a2; 40345 return ((_a2 = member.calendlyIntegrations) == null ? void 0 : _a2.length) > 0; 40346 } 40347 )) == null ? void 0 : _e.calendlyIntegrations[0]) == null ? void 0 : _f.calendlyAccountId) || null; 40348 }); 40349 const getDefaultCalendlyUrl = () => { 40350 var _a, _b; 40351 if (calendlyId.value) { 40352 const coreLiteEnabled = ((_b = (_a = store.getters) == null ? void 0 : _a["settings/getBrandFeatureFlag"]) == null ? void 0 : _b.call(_a, "CoreLite")) ?? false;
40353 const utmParams = coreLiteEnabled ? "" : "?utm_campaign=marketing&utm_source=agentwebsites"; 40354 return `https://calendly.com/${calendlyId.value}/generaldiscussion${utmParams}`; 40355 } 40356 return null; 40357 }; 40358 const calendlyUrl = computed(() => { 40359 var _a; 40360 if (isExpired.value) return null; 40361 const url = (_a = props.settings) == null ? void 0 : _a.url; 40362 if (typeof url === "string" && (url == null ? void 0 : url.includes("https://calendly.com"))) { 40363 return url; 40364 } 40365 if (!url || url.trim() === "") { 40366 return getDefaultCalendlyUrl(); 40367 } 40368 return null; 40369 }); 40370 const widgetHeight = computed(() => { 40371 var _a; 40372 return ((_a = props.settings) == null ? void 0 : _a.height) || "700px"; 40373 }); 40374 const widgetStyle = computed(() => { 40375 return { 40376 width: "100%", 40377 height: widgetHeight.value 40378 }; 40379 }); 40380 const loadCalendlyScript = () => { 40381 return new Promise((resolve2, reject) => { 40382 if (window.Calendly) { 40383 resolve2(); 40384 return; 40385 } 40386 const script = document.createElement("script"); 40387 script.src = "https://assets.calendly.com/assets/external/widget.js"; 40388 script.async = true; 40389 script.onload = () => resolve2(); 40390 script.onerror = () => reject(new Error("Failed to load Calendly script")); 40391 document.head.appendChild(script); 40392 const link = document.createElement("link"); 40393 link.href = "https://assets.calendly.com/assets/external/widget.css"; 40394 link.rel = "stylesheet"; 40395 document.head.appendChild(link); 40396 }); 40397 }; 40398 const clearCalendlyWidget = () => { 40399 if (calendlyContainer.value) { 40400 calendlyContainer.value.innerHTML = ""; 40401 } 40402 }; 40403 const initializeCalendly = async () => { 40404 if (!calendlyContainer.value) { 40405 return; 40406 } 40407 if (!calendlyUrl.value) { 40408 return; 40409 } 40410 try { 40411 clearCalendlyWidget(); 40412 await loadCalendlyScript(); 40413 if (window.Calendly) { 40414 window.Calendly.initInlineWidget({ 40415 url: calendlyUrl.value, 40416 parentElement: calendlyContainer.value 40417 }); 40418 isInitialized.value = true; 40419 setCalendlyIframeAttributes(); 40420 } 40421 } catch (error) { 40422 console.error("Error initializing Calendly:", error); 40423 } 40424 }; 40425 const setCalendlyIframeAttributes = () => { 40426 setTimeout(() => { 40427 var _a, _b; 40428 const iframe = (_a = calendlyContainer.value) == null ? void 0 : _a.querySelector("iframe"); 40429 if (iframe) { 40430 iframe.setAttribute( 40431 "title", 40432 ((_b = props.settings) == null ? void 0 : _b.iframeTitle) || "Calendly Scheduling Page" 40433 ); 40434 } 40435 }, 1e3); 40436 }; 40437 if (props.isEditable) { 40438 watch(calendlyUrl, (newUrl) => { 40439 isInitialized.value = false; 40440 if (newUrl && true) { 40441 initializeCalendly(); 40442 } else if (!newUrl && calendlyContainer.value) { 40443 clearCalendlyWidget(); 40444 } 40445 }); 40446 } 40447 onMounted(() => { 40448 if (calendlyUrl.value && true) { 40449 initializeCalendly(); 40450 } 40451 }); 40452 return (_ctx, _cache) => { 40453 const _component_CoreIconCalendlyTitle = _sfc_main$3Y; 40454 return openBlock(), createElementBlock("div", _hoisted_1$3T, [ 40455 !calendlyId.value && __props.isEditable ? (openBlock(), createElementBlock("div", _hoisted_2$3z, [ 40456 createBaseVNode("div", null, [ 40457 createVNode(_component_CoreIconCalendlyTitle, { 40458 width: "165", 40459 height: "40" 40460 }) 40461 ]), 40462 _cache[0] || (_cache[0] = createBaseVNode("p", null, "Choose a team member to add their scheduling calendar.", -1)) 40463 ])) : calendlyUrl.value ? (openBlock(), createElementBlock("div", { 40464 key: 1, 40465 ref_key: "calendlyContainer", 40466 ref: calendlyContainer, 40467 class: "calendly-inline-widget", 40468 style: normalizeStyle(widgetStyle.value), 40469 "data-url": calendlyUrl.value 40470 }, null, 12, _hoisted_3$l)) : createCommentVNode("", true) 40471 ]); 40472 }; 40473 } 40474}; 40475const CoreBlockCalendlyEmbed = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 40476 __proto__: null, 40477 default: _sfc_main$3X 40478}, Symbol.toStringTag, { value: "Module" })); 40479const _sfc_main$3W = { 40480 name: "CoreBlockCarousel", 40481 props: { 40482 settings: { 40483 type: Object, 40484 required: true 40485 }, 40486 isEditable: { 40487 type: Boolean, 40488 default: false 40489 } 40490 }, 40491 computed: { 40492 childBlockComponent() { 40493 return "CoreBlock"; 40494 } 40495 }, 40496 methods: { 40497 getSettings() { 40498 if (this.settings.arrayMediaSrc) { 40499 const carouselContainer = { 40500 ...this.settings, 40501 id: `carousel_${this.settings.id}`, 40502 blocks: [] 40503 }; 40504 for (const element of this.settings.arrayMediaSrc) { 40505 carouselContainer.blocks.push({ 40506 ...element, 40507 variants: { 40508 sizing: "contain", 40509 "bg-color": "transparent" 40510 }, 40511 width: "100%", 40512 height: "auto" 40513 }); 40514 } 40515 } 40516 } 40517 } 40518}; 40519const _hoisted_1$3S = { class: "block__body--carousel" }; 40520function _sfc_render$3r(_ctx, _cache, $props, $setup, $data, $options) { 40521 return openBlock(), createElementBlock("div", _hoisted_1$3S, [ 40522 (openBlock(), createBlock(resolveDynamicComponent($options.childBlockComponent), { 40523 index: 0, 40524 "is-first-child": true, 40525 "is-last-child": true, 40526 settings: $props.settings, 40527 "is-editable": $props.isEditable 40528 }, null, 8, ["settings", "is-editable"])) 40529 ]); 40530} 40531const __nuxt_component_1$4 = /* @__PURE__ */ _export_sfc(_sfc_main$3W, [["render", _sfc_render$3r]]); 40532const CoreBlockCarousel = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 40533 __proto__: null, 40534 default: __nuxt_component_1$4 40535}, Symbol.toStringTag, { value: "Module" })); 40536const _sfc_main$3V = { 40537 __name: "CoreBlockCenteredNavBar", 40538 props: { 40539 site: { 40540 type: Object, 40541 default: () => ({}) 40542 }, 40543 isBuilder: { 40544 type: Boolean, 40545 default: false 40546 }, 40547 isEditable: { 40548 type: Boolean, 40549 default: false 40550 }, 40551 isNavMobile: { 40552 type: Boolean, 40553 default: false 40554 }, 40555 colorOption: { 40556 type: String, 40557 default: "single-color-divider" 40558 }, 40559 pageTree: { 40560 type: Array, 40561 default: () => [] 40562 }, 40563 hamVisible: { 40564 type: Boolean, 40565 default: false 40566 } 40567 }, 40568 setup(__props) { 40569 const props = __props; 40570 const barClasses = computed(() => { 40571 if (props.colorOption === "two-color-split") { 40572 return ["centered-nav-bar--two-color"]; 40573 } 40574 return ["centered-nav-bar--single-color"]; 40575 }); 40576 const hasMoreThanOnePage = computed(() => { 40577 var _a; 40578 return ((_a = props.site.pages) == null ? void 0 : _a.length) > 1; 40579 }); 40580 function navClick(e) { 40581 var _a; 40582 e.target.blur(); 40583 (_a = e.target.parentNode) == null ? void 0 : _a.blur(); 40584 } 40585 return (_ctx, _cache) => { 40586 const _component_CoreBlockNavItem = _sfc_main$4a; 40587 return openBlock(), createElementBlock("div", { 40588 class: normalizeClass(["centered-nav-bar", barClasses.value]) 40589 }, [ 40590 hasMoreThanOnePage.value ? (openBlock(), createElementBlock("ul", { 40591 key: 0, 40592 id: "centered-nav-menu", 40593 class: normalizeClass(["centered-nav-bar__links navbar_nav navbar_nav--center", { "centered-nav-bar__links--open": __props.hamVisible }]), 40594 "aria-labelledby": "mainmenulabel", 40595 onClick: navClick 40596 }, [ 40597 (openBlock(true), createElementBlock(Fragment, null, renderList(__props.pageTree, (page, pIndex) => { 40598 return openBlock(), createBlock(_component_CoreBlockNavItem, { 40599 key: `${page.linkUrl}-${pIndex}`, 40600 site: __props.site, 40601 navitem: page, 40602 class: "navbar_item navbar_item--dropdown", 40603 "is-nav-open": __props.hamVisible, 40604 "is-mobile": __props.isNavMobile, 40605 "is-editable": __props.isEditable, 40606 "is-builder": __props.isBuilder, 40607 onClick: navClick 40608 }
40608, null, 8, ["site", "navitem", "is-nav-open", "is-mobile", "is-editable", "is-builder"]); 40609 }), 128)) 40610 ], 2)) : createCommentVNode("", true) 40611 ], 2); 40612 }; 40613 } 40614}; 40615const CoreBlockCenteredNavBar = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 40616 __proto__: null, 40617 default: _sfc_main$3V 40618}, Symbol.toStringTag, { value: "Module" })); 40619const _sfc_main$3U = { 40620 name: "CoreBlockVerticalDivider", 40621 props: { 40622 divider: { 40623 type: Object, 40624 default: () => { 40625 } 40626 } 40627 }, 40628 setup(props) { 40629 const dividerLineHeight = computed(() => { 40630 var _a; 40631 let unit; 40632 const defaultLineHeight = "100%"; 40633 const value = (_a = props.divider) == null ? void 0 : _a.lineHeight; 40634 if (!value) return defaultLineHeight; 40635 if (value.includes("%")) unit = "%"; 40636 else if (value.includes("px")) unit = "px"; 40637 if (!unit) return defaultLineHeight; 40638 let numericValue = Number(value.match(/\d/g).join("")); 40639 return `${numericValue}${unit}`; 40640 }); 40641 const dividerWidth = "24px"; 40642 const dividerStyle = computed(() => { 40643 var _a; 40644 return (_a = props.divider) == null ? void 0 : _a.style; 40645 }); 40646 const dividerWeight = computed(() => { 40647 var _a; 40648 return (_a = props.divider) == null ? void 0 : _a.weight; 40649 }); 40650 const dividerColorClass = computed(() => { 40651 var _a; 40652 const color = (_a = props.divider) == null ? void 0 : _a.color; 40653 if (!color) return "divider_default"; 40654 return `divider_${color}`; 40655 }); 40656 const weightConstant = { 40657 thin: "2px", 40658 medium: "6px", 40659 thick: "10px" 40660 }; 40661 const containerStylesObject = computed(() => { 40662 return { 40663 width: dividerWidth,
40664 "min-width": dividerWidth 40665 }; 40666 }); 40667 const lineStylesObject = computed(() => { 40668 let lineWeight = "0px"; 40669 if (dividerWeight.value) 40670 lineWeight = weightConstant[dividerWeight.value]; 40671 return { 40672 height: dividerLineHeight.value, 40673 "background-color": "transparent", 40674 "border-style": `${dividerStyle.value}`, 40675 "border-width": `0 ${lineWeight} 0 0` 40676 }; 40677 }); 40678 return { 40679 containerStylesObject, 40680 lineStylesObject, 40681 dividerColorClass 40682 }; 40683 } 40684}; 40685function _sfc_render$3q(_ctx, _cache, $props, $setup, $data, $options) { 40686 return openBlock(), createElementBlock("div", { 40687 class: "divider", 40688 style: normalizeStyle($setup.containerStylesObject) 40689 }, [ 40690 createBaseVNode("div", { 40691 class: normalizeClass($setup.dividerColorClass), 40692 style: normalizeStyle($setup.lineStylesObject) 40693 }, null, 6) 40694 ], 4); 40695} 40696const __nuxt_component_0$4 = /* @__PURE__ */ _export_sfc(_sfc_main$3U, [["render", _sfc_render$3q]]); 40697const CoreBlockVerticalDivider = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 40698 __proto__: null, 40699 default: __nuxt_component_0$4 40700}, Symbol.toStringTag, { value: "Module" })); 40701function useBlock(props) { 40702 const blockChildren = computed(() => { 40703 var _a; 40704 return ((_a = props.settings) == null ? void 0 : _a.blocks) || []; 40705 }); 40706 const blockChildrenCount = computed(() => { 40707 return blockChildren.value.length; 40708 }); 40709 const hasChildren = computed(() => { 40710 return blockChildrenCount.value > 0; 40711 }); 40712 const hasDivider = computed(() => { 40713 var _a, _b, _c; 40714 return ((_a = props.settings) == null ? void 0 : _a.divider) && ((_c = (_b = props.settings) == null ? void 0 : _b.divider) == null ? void 0 : _c.weight); 40715 }); 40716 const blockVariantLayout = computed(() => { 40717 var _a, _b; 40718 return ((_b = (_a = props.settings) == null ? void 0 : _a.variants) == null ? void 0 : _b.layout) || "rows"; 40719 }); 40720 const bodyClasses = computed(() => { 40721 const classList = ["block__body"]; 40722 if (!hasChildren.value) { 40723 classList.push("block__body--empty"); 40724 } 40725 return classList; 40726 }); 40727 const nestedLevelNext = computed(() => { 40728 return props.nestedLevel + 1; 40729 }); 40730 const childBlockComponent = computed( 40731 () => props.isEditable ? "ForgeControlBlock" : "CoreBlock" 40732 ); 40733 return { 40734 blockChildren, 40735 blockChildrenCount, 40736 hasChildren, 40737 hasDivider, 40738 blockVariantLayout, 40739 bodyClasses, 40740 nestedLevelNext, 40741 childBlockComponent 40742 }; 40743} 40744function useColumnsOverflow(props) { 40745 const { state, commit: commit2 } = useNuxtApp().$vuexStore; 40746 const featureFlags = computed(() => state.settings.featureFlags); 40747 const isColumnsOverflowEnabled = computed(() => { 40748 return featureFlags.value.ColumnsOverflow; 40749 }); 40750 const isBuilder = computed(() => props == null ? void 0 : props.isEditable); 40751 const block = computed(() => { 40752 var _a, _b, _c; 40753 if (!isColumnsOverflowEnabled.value) return null; 40754 if (((_a = props == null ? void 0 : props.settings) == null ? void 0 : _a.type) !== "columns") return null; 40755 const workingBlock = (_b = state.site) == null ? void 0 : _b.workingBlock; 40756 const blockToUse = (workingBlock == null ? void 0 : workingBlock.id) === ((_c = props == null ? void 0 : props.settings) == null ? void 0 : _c.id) ? workingBlock : props == null ? void 0 : props.settings; 40757 return blockToUse; 40758 }); 40759 const columnsOverflow = computed(() => { 40760 var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j; 40761 if (!block.value) return null; 40762 const show = Boolean( 40763 ((_b = (_a = block.value) == null ? void 0 : _a.blocks) == null ? void 0 : _b.length) > ((_c = block.value) == null ? void 0 : _c["column-count"]) 40764 ); 40765 const count = ((_e = (_d = block.value) == null ? void 0 : _d.blocks) == null ? void 0 : _e.length) - ((_f = block.value) == null ? void 0 : _f["column-count"]) || 0; 40766 const currentOffset = ((_g = block.value) == null ? void 0 : _g.offset) || 0; 40767 const maxOffset = ((_i = (_h = block.value) == null ? void 0 : _h.blocks) == null ? void 0 : _i.length) - ((_j = block.value) == null ? void 0 : _j["column-count"]) || 0; 40768 return { 40769 show, 40770 count, 40771 currentOffset, 40772 maxOffset 40773 }; 40774 }); 40775 const offsetValue = computed(() => { 40776 var _a, _b, _c, _d; 40777 if (!block.value) return null; 40778 if (!isBuilder.value) return null; 40779 const rawOffset = (_a = block.value) == null ? void 0 : _a.offset; 40780 if (!rawOffset) return null;
40781 let columnCountValue = (_b = block.value) == null ? void 0 : _b["column-count"]; 40782 const maxOffset = Math.max( 40783 0, 40784 ((_d = (_c = block.value) == null ? void 0 : _c.blocks) == null ? void 0 : _d.length) - columnCountValue 40785 ); 40786 return Math.max(0, Math.min(rawOffset, maxOffset)); 40787 }); 40788 const overflowStyles = computed(() => { 40789 if (!block.value) return null; 40790 if (!isBuilder.value) return null; 40791 const { blocks, ["column-count"]: columnCount } = block.value ?? {}; 40792 const styles = {}; 40793 styles["--column-count"] = columnCount; 40794 styles["--children-count"] = blocks == null ? void 0 : blocks.length; 40795 styles["--offset"] = offsetValue.value; 40796 return styles; 40797 }); 40798 function handleDirectionChange(direction) { 40799 if (!block.value) return; 40800 const { 40801 offset = 0, 40802 blocks = [], 40803 ["column-count"]: columnCount = 0 40804 } = block.value ?? {}; 40805 const maxOffset = (blocks == null ? void 0 : blocks.length) - columnCount; 40806 let newOffset; 40807 if (direction === "left") { 40808 newOffset = offset - 1; 40809 } else { 40810 newOffset = offset + 1; 40811 } 40812 newOffset = newOffset < 0 ? 0 : newOffset; 40813 newOffset = newOffset > maxOffset ? maxOffset : newOffset; 40814 commit2("site/setWorkingBlockSetting", { 40815 key: "offset", 40816 value: newOffset 40817 }); 40818 } 40819 return { 40820 isColumnsOverflowEnabled, 40821 overflowStyles, 40822 handleDirectionChange, 40823 columnsOverflow, 40824 offsetValue 40825 }; 40826} 40827const _hoisted_1$3R = ["data-offset"]; 40828const _hoisted_2$3y = ["data-offset"]; 40829const _sfc_main$3T = /* @__PURE__ */ Object.assign({ 40830 name: "CoreBlockColumns" 40831}, { 40832 __name: "CoreBlockColumns", 40833 props: { 40834 index: { 40835 type: Number, 40836 default: 0 40837 }, 40838 nestedLevel: { 40839 type: Number, 40840 default: 0 40841 }, 40842 settings: { 40843 type: Object, 40844 required: true 40845 }, 40846 isEditable: { 40847 type: Boolean, 40848 default: false 40849 }, 40850 isBuilderMobile: { 40851 type: Boolean, 40852 default: false 40853 }, 40854 isFirstPageLevelBlock: { 40855 type: Boolean, 40856 default: void 0 40857 }, 40858 isFirstPageLevelPosition: { 40859 type: Boolean, 40860 default: void 0 40861 } 40862 }, 40863 setup(__props) { 40864 const props = __props; 40865 const { 40866 bodyClasses, 40867 blockChildren, 40868 blockChildrenCount, 40869 nestedLevelNext, 40870 childBlockComponent, 40871 hasDivider 40872 } = useBlock(props); 40873 const store = useStore(); 40874 const { getters } = store; 40875 const { isColumnsOverflowEnabled, offsetValue, overflowStyles } = useColumnsOverflow(props); 40876 const { isFirstPageLevelBlockFor, isFirstPageLevelPositionFor } = useBlockNavOffset(props); 40877 const mobileSettingsFF = computed(() => { 40878 return getters["settings/getFeatureFlag"]("MobileSettings") || false; 40879 }); 40880 const dividerClass = computed(() => { 40881 if (hasDivider) { 40882 return "hasDivider"; 40883 } 40884 return ""; 40885 }); 40886 const mobileReverseClass = computed(() => { 40887 var _a; 40888 if (((_a = props.settings) == null ? void 0 : _a.mobileReverseOrder) === true && mobileSettingsFF.value) { 40889 return "block__section_main--mobile-reverse"; 40890 } 40891 return ""; 40892 }); 40893 const sectionMainClasses = computed(() => { 40894 const classList = ["block__container", "block__section_main"]; 40895 let columnCountValue = props.settings["column-count"]; 40896 if (columnCountValue < 2) { 40897 columnCountValue = 2; 40898 } 40899 if (columnCountValue > 6) { 40900 columnCountValue = 6; 40901 } 40902 classList.push(`block__section_main--${columnCountValue}_column`); 40903 if (mobileReverseClass.value) { 40904 classList.push(mobileReverseClass.value); 40905 } 40906 if (isColumnsOverflowEnabled.value) { 40907 classList.push("columns-overflow"); 40908 } 40909 return classList; 40910 }); 40911 const isTheFirst = (index2) => { 40912 return index2 == 0; 40913 }; 40914 const isTheLast = (index2) => { 40915 return blockChildrenCount.value - 1 == index2; 40916 }; 40917 const displayLeftDivider = computed(() => { 40918 var _a, _b; 40919 return (_b = (_a = props.settings) == null ? void 0 : _a.divider) == null ? void 0 : _b.left; 40920 }); 40921 const displayRightDivider = computed(() => { 40922 var _a, _b; 40923 return (_b = (_a = props.settings) == null ? void 0 : _a.divider) == null ? void 0 : _b.right; 40924 }); 40925 return (_ctx, _cache) => { 40926 const _component_CoreBlockVerticalDivider = __nuxt_component_0$4; 40927 return openBlock(), createElementBlock("div", { 40928 class: normalizeClass(unref(bodyClasses)) 40929 }, [
40930 !unref(hasDivider) ? (openBlock(), createElementBlock("div", { 40931 key: 0, 40932 class: normalizeClass(sectionMainClasses.value), 40933 style: normalizeStyle(unref(overflowStyles)), 40934 "data-offset": unref(offsetValue) 40935 }, [ 40936 (openBlock(true), createElementBlock(Fragment, null, renderList(unref(blockChildren), (childSettings, childIndex) => { 40937 return openBlock(), createBlock(resolveDynamicComponent(unref(childBlockComponent)), { 40938 key: childSettings.id, 40939 settings: childSettings, 40940 index: childIndex, 40941 "nested-level": unref(nestedLevelNext), 40942 "is-editable": __props.isEditable, 40943 "is-first-child": !childIndex, 40944 "is-last-child": childIndex >= unref(blockChildren).length - 1, 40945 "parent-is-horizontal": true, 40946 "is-builder-mobile": __props.isBuilderMobile, 40947 "is-first-page-level-block": unref(isFirstPageLevelBlockFor)(childSettings), 40948 "is-first-page-level-position": unref(isFirstPageLevelPositionFor)(childSettings) 40949 }, null, 8, ["settings", "index", "nested-level", "is-editable", "is-first-child", "is-last-child", "is-builder-mobile", "is-first-page-level-block", "is-first-page-level-position"]); 40950 }), 128)) 40951 ], 14, _hoisted_1$3R)) : (openBlock(), createElementBlock("div", { 40952 key: 1, 40953 class: normalizeClass([sectionMainClasses.value, dividerClass.value]), 40954 style: normalizeStyle(unref(overflowStyles)), 40955 "data-offset": unref(offsetValue) 40956 }, [ 40957 (openBlock(true), createElementBlock(Fragment, null, renderList(unref(blockChildren), (childSettings, childIndex) => { 40958 return openBlock(), createElementBlock("div", { 40959 key: childSettings.id, 40960 class: "ninjaBlock block" 40961 }, [ 40962 isTheFirst(childIndex) && displayLeftDivider.value ? (openBlock(), createBlock(_component_CoreBlockVerticalDivider, { 40963 key: 0, 40964 divider: __props.settings.divider 40965 }, null, 8, ["divider"])) : createCommentVNode("", true), 40966 (openBlock(), createBlock(resolveDynamicComponent(unref(childBlockComponent)), { 40967 settings: childSettings, 40968 index: childIndex, 40969 "nested-level": unref(nestedLevelNext), 40970 "is-editable": __props.isEditable, 40971 "is-first-child": !childIndex, 40972 "is-last-child": isTheLast(childIndex), 40973 "parent-is-horizontal": true, 40974 "is-builder-mobile": __props.isBuilderMobile, 40975 "is-first-page-level-block": unref(isFirstPageLevelBlockFor)(childSettings), 40976 "is-first-page-level-position": unref(isFirstPageLevelPositionFor)(childSettings) 40977 }, null, 8, ["settings", "index", "nested-level", "is-editable", "is-first-child", "is-last-child", "is-builder-mobile", "is-first-page-level-block", "is-first-page-level-position"])), 40978 !isTheLast(childIndex) || displayRightDivider.value ? (openBlock(), createBlock(_component_CoreBlockVerticalDivider, { 40979 key: 1, 40980 divider: __props.settings.divider 40981 }, null, 8, ["divider"])) : createCommentVNode("", true) 40982 ]); 40983 }), 128)) 40984 ], 14, _hoisted_2$3y)) 40985 ], 2); 40986 }; 40987 } 40988}); 40989const CoreBlockColumns = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 40990 __proto__: null, 40991 default: _sfc_main$3T 40992}, Symbol.toStringTag, { value: "Module" })); 40993const _sfc_main$3S = { 40994 name: "CoreBlockContactHero", 40995 props: { 40996 settings: { 40997 type: Object, 40998 required: true 40999 }, 41000 dataSite: { 41001 type: Object, 41002 required: true 41003 }, 41004 isEditable: { 41005 type: Boolean, 41006 default: false 41007 } 41008 }, 41009 setup(props) { 41010 provide(SCROLL_ANIMATION_EXCLUDED_KEY, true); 41011 const { componentModule: contactCardModule } = useLoadComponent({ 41012 ...props, 41013 settings: { type: "contact-card" } 41014 }); 41015 return { 41016 contactCardModule 41017 }; 41018 }, 41019 data() { 41020 return { 41021 croppedImage: null 41022 }; 41023 }, 41024 computed: { 41025 background() { 41026 if (this.mediaIsImg) { 41027 return { 41028 "background-image": `url('${this.croppedSrc}')`,
41029 "background-position": this.mediaBackgroundPosition, 41030 "background-repeat": "no-repeat", 41031 "background-size": "cover" 41032 }; 41033 } 41034 return null; 41035 }, 41036 videoMediaSrc() { 41037 let ret = this.mediaSrc; 41038 if (mediaHelper.isYoutube(this.mediaSrc)) { 41039 let embedId = this.mediaSrc.match( 41040 /https:\/\/www.youtube.com\/embed\/([^/?]+)/ 41041 ); 41042 if ((embedId == null ? void 0 : embedId.length) > 1) { 41043 ret = `https://www.youtube.com/embed/${embedId}?playlist=${embedId[1]}&controls=0&autoplay=1&fs=0&iv_load_policy=3&loop=1&disablekb=1&modestbranding=1&mute=1`; 41044 } 41045 } 41046 return ret; 41047 }, 41048 mediaIsVideo() { 41049 return !!this.mediaSrc && mediaHelper.isVideo(this.mediaSrc); 41050 }, 41051 mediaIsImg() { 41052 return !!this.mediaSrc && mediaHelper.isImage(this.mediaSrc); 41053 }, 41054 mediaSrc() { 41055 var _a; 41056 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.backgroundMediaSrc; 41057 return mediaSrc && typeof mediaSrc === "object" ? mediaSrc.src : mediaSrc; 41058 }, 41059 croppedSrc() { 41060 var _a; 41061 return ((_a = this.backgroundMediaCrop) == null ? void 0 : _a.image) ? this.croppedImage : mediaHelper.getEncodedURI(this.mediaSrc); 41062 }, 41063 mediaBackgroundPosition() { 41064 var _a; 41065 return ((_a = this.backgroundMediaFocal) == null ? void 0 : _a.bgPosition) || "center"; 41066 }, 41067 mediaAlt() { 41068 var _a, _b; 41069 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.backgroundMediaSrc; 41070 return mediaSrc && typeof mediaSrc === "object" ? mediaSrc.alt : (_b = this.settings) == null ? void 0 : _b.alt; 41071 }, 41072 //if backgroundMediaSrc is string means that the image has the above format, now backgroundMediaSrc is a object 41073 //when you add o edit the image, It will be saved as object 41074 backgroundMedia() { 41075 var _a, _b, _c; 41076 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.backgroundMediaSrc; 41077 const { crop, focal } = mediaSrc; 41078 if (crop || focal) { 41079 const mediaObject = crop || {}; 41080 if (focal) mediaObject.focal = focal; 41081 return mediaObject; 41082 } 41083 return (_c = (_b = this.settings) == null ? void 0 : _b.mediaMetadata) == null ? void 0 : _c.backgroundMediaSrc; 41084 }, 41085 backgroundMediaCrop() { 41086 return this.backgroundMedia; 41087 }, 41088 backgroundMediaFocal() { 41089 var _a; 41090 return (_a = this.backgroundMedia) == null ? void 0 : _a.focal; 41091 }, 41092 settingsObj() { 41093 return this.settings; 41094 }, 41095 dataSiteObj() { 41096 return this.dataSite; 41097 } 41098 }, 41099 methods: { 41100 getCarouselSettings() { 41101 const imageBlock = { 41102 type: "rows", 41103 blocks: [], 41104 variants: { 41105 "bg-color": "transparent" 41106 } 41107 }; 41108 if (this.settings.arrayMediaSrc) { 41109 const carouselContainer = { 41110 ...this.settings, 41111 id: `carousel_${this.settings.id}`, 41112 type: "container", 41113 variants: { 41114 layout: "carousel-hero", 41115 "child-width": "slim" 41116 }, 41117 blocks: [] 41118 }; 41119 for (const element of this.settings.arrayMediaSrc) { 41120 carouselContainer.blocks.push({ 41121 ...element, 41122 variants: { 41123 sizing: "contain", 41124 "bg-color": "transparent" 41125 }, 41126 width: "100%", 41127 height: "auto" 41128 }); 41129 } 41130 imageBlock.blocks = [carouselContainer]; 41131 } 41132 return imageBlock; 41133 } 41134 } 41135}; 41136const _hoisted_1$3Q = ["aria-label"]; 41137const _hoisted_2$3x = ["src"]; 41138const _hoisted_3$k = { class: "contact-card-inner" }; 41139const _hoisted_4$f = ["src", "alt"]; 41140const _hoisted_5$d = { class: "contact-hero block_contact-card" }; 41141function _sfc_render$3p(_ctx, _cache, $props, $setup, $data, $options) { 41142 const _component_CoreBlockImageCropped = __nuxt_component_0$8; 41143 const _component_CoreBlockCarousel = __nuxt_component_1$4; 41144 return openBlock(), createElementBlock("div", { 41145 class: "bg-img", 41146 style: normalizeStyle($options.background), 41147 role: "img", 41148 "aria-label": $options.mediaAlt 41149 }, [ 41150 $options.mediaSrc ? (openBlock(), createBlock(_component_CoreBlockImageCropped, { 41151 key: 0, 41152 "image-src": $options.mediaSrc, 41153 "media-metadata": $options.backgroundMediaCrop, 41154 onLoaded: _cache[0] || (_cache[0] = (value) => $data.croppedImage = value) 41155 }, null, 8, ["image-src", "media-metadata"])) : createCommentVNode("", true), 41156 createVNode(_component_CoreBlockCarousel, { 41157 settings: $options.getCarouselSettings() 41158 }, null, 8, ["settings"]), 41159 $options.mediaIsVideo ? (openBlock(), createElementBlock("iframe", { 41160 key: 1, 41161 width: "100%", 41162 height: "100%", 41163 class: "video-media", 41164 src: $options.videoMediaSrc, 41165 title: "Video player", 41166 frameborder: "0", 41167 allow: "accelerometer;autoplay;clipboard-write;encrypted-media;gyroscope;picture-in-picture;web-share", 41168 allowfullscreen: "" 41169 }, null, 8, _hoisted_2$3x)) : createCommentVNode("", true), 41170 createBaseVNode("div", _hoisted_3$k, [ 41171 $options.mediaIsImg ? (openBlock(), createElementBlock("img", { 41172 key: 0, 41173 src: $options.croppedSrc, 41174 alt: $options.mediaAlt, 41175 class: "contact-card-bg-img", 41176 style: normalizeStyle([{ "height": "100%", "width": "100%" }
41176, { objectPosition: $options.mediaBackgroundPosition }]) 41177 }, null, 12, _hoisted_4$f)) : createCommentVNode("", true), 41178 createBaseVNode("div", _hoisted_5$d, [ 41179 (openBlock(), createBlock(resolveDynamicComponent($setup.contactCardModule), { 41180 "is-editable": $props.isEditable, 41181 settings: $options.settingsObj, 41182 "data-site": $options.dataSiteObj 41183 }, null, 8, ["is-editable", "settings", "data-site"])) 41184 ]) 41185 ]) 41186 ], 12, _hoisted_1$3Q); 41187} 41188const CoreBlockContactHero = /* @__PURE__ */ _export_sfc(_sfc_main$3S, [["render", _sfc_render$3p]]); 41189const CoreBlockContactHero$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 41190 __proto__: null, 41191 default: CoreBlockContactHero 41192}, Symbol.toStringTag, { value: "Module" })); 41193const _hoisted_1$3P = { class: "block__body" }; 41194const _sfc_main$3R = { 41195 __name: "CoreBlockContentCardTextField", 41196 props: { 41197 field: { 41198 type: String, 41199 required: true 41200 }, 41201 editing: { 41202 type: Boolean, 41203 default: false 41204 }, 41205 text: { 41206 type: String, 41207 default: null 41208 }, 41209 rawHtml: { 41210 type: String, 41211 default: "" 41212 }, 41213 // Viewport point the user clicked to open this field, if any. 41214 caretPoint: { 41215 type: Object, 41216 default: null 41217 }, 41218 canEdit: { 41219 type: Boolean, 41220 default: false 41221 }, 41222 // Builder-only. Off in SiteViewer, where the click-target wrapper below 41223 // would otherwise add a DOM level to every published card. 41224 inlineCapable: { 41225 type: Boolean, 41226 default: false 41227 }, 41228 wrapperClass: { 41229 type: String, 41230 default: "" 41231 }, 41232 fieldClass: { 41233 type: [String, Array], 41234 default: "" 41235 }, 41236 isEditable: { 41237 type: Boolean, 41238 default: false 41239 }, 41240 blockSettings: { 41241 type: Object, 41242 required: true 41243 } 41244 }, 41245 emits: ["enter", "close"], 41246 setup(__props) { 41247 return (_ctx, _cache) => { 41248 const _component_CoreBlock = _sfc_main$4x; 41249 return __props.editing ? (openBlock(), createElementBlock("div", { 41250 key: 0, 41251 class: normalizeClass(["card-inline-editor block_rich-text", [__props.wrapperClass, __props.fieldClass]]), 41252 onMousedown: _cache[0] || (_cache[0] = withModifiers(() => { 41253 }, ["stop"])), 41254 onClick: _cache[1] || (_cache[1] = withModifiers(() => { 41255 }, ["stop"])) 41256 }, [ 41257 createBaseVNode("div", _hoisted_1$3P, [ 41258 renderSlot(_ctx.$slots, "inline-editor", { 41259 field: __props.field, 41260 html: __props.rawHtml, 41261 caretPoint: __props.caretPoint, 41262 onClose: () => _ctx.$emit("close") 41263 }) 41264 ]) 41265 ], 34)) : __props.inlineCapable && (__props.text || __props.canEdit) ? (openBlock(), createElementBlock("div", { 41266 key: 1, 41267 class: normalizeClass([ 41268 "card-inline-field", 41269 { 41270 "card-inline-field--editable": __props.canEdit, 41271 "card-inline-field--empty": !__props.text 41272 } 41273 ]), 41274 onClick: _cache[2] || (_cache[2] = ($event) => _ctx.$emit("enter", $event)) 41275 }, [ 41276 createVNode(_component_CoreBlock, { 41277 class: normalizeClass(__props.fieldClass), 41278 "is-editable": __props.isEditable, 41279 settings: __props.blockSettings 41280 }, null, 8, ["class", "is-editable", "settings"]) 41281 ], 2)) : __props.text ? (openBlock(), createBlock(_component_CoreBlock, { 41282 key: 2, 41283 class: normalizeClass(__props.fieldClass), 41284 "is-editable": __props.isEditable, 41285 settings: __props.blockSettings 41286 }, null, 8, ["class", "is-editable", "settings"])) : createCommentVNode("", true); 41287 }; 41288 } 41289}; 41290const CoreBlockContentCardTextField = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 41291 __proto__: null, 41292 default: _sfc_main$3R 41293}, Symbol.toStringTag, { value: "Module" })); 41294function useImageProperties(props, imageKey, imageComponent) { 41295 const croppedImage = ref(null); 41296 const imageSrc = computed(() => { 41297 const mediaSrc = props.settings[imageKey]; 41298 return mediaSrc && typeof mediaSrc === "object" ? mediaSrc.src : mediaSrc; 41299 }); 41300 const imageAlt = computed(() => { 41301 var _a, _b; 41302 const mediaSrc = (_a = props.settings) == null ? void 0 : _a[imageKey]; 41303 if (mediaSrc && typeof mediaSrc === "object") { 41304 return mediaSrc.decorative ? "" : mediaSrc.alt || ""; 41305 } 41306 return ((_b = props.settings) == null ? void 0 : _b.alt) || ""; 41307 }); 41308 const croppedSrc = computed(() => { 41309 var _a; 41310 return ((_a = backgroundMediaCrop.value) == null ? void 0 : _a.image) ? croppedImage.value : imageSrc.value; 41311 }); 41312 const imageHeight = computed(() => { 41313 var _a, _b; 41314 return ((_b = (_a = props.settings) == null ? void 0 : _a.extraProps) == null ? void 0 : _b.height) || props.settings.height || null; 41315 }); 41316 const imageWidth = computed(() => { 41317 var _a, _b; 41318 return ((_b = (_a = props.settings) == null ? void 0 : _a.extraProps) == null ? void 0 : _b.width) || props.settings.width || null; 41319 });
41320 const mediaBackgroundPosition = computed(() => { 41321 var _a; 41322 return ((_a = backgroundMediaFocal.value) == null ? void 0 : _a.bgPosition) || "center"; 41323 }); 41324 const backgroundMediaFocal = computed(() => { 41325 var _a; 41326 return (_a = backgroundMediaCrop.value) == null ? void 0 : _a.focal; 41327 }); 41328 const backgroundMediaCrop = computed(() => { 41329 var _a, _b, _c; 41330 const mediaSrc = ((_a = props.settings) == null ? void 0 : _a[imageKey]) || ""; 41331 const { crop, focal } = mediaSrc; 41332 if (crop || focal) { 41333 const mediaObject = { ...crop }; 41334 if (focal) mediaObject.focal = focal; 41335 return mediaObject; 41336 } 41337 return (_c = (_b = props.settings) == null ? void 0 : _b.mediaMetadata) == null ? void 0 : _c[imageKey]; 41338 }); 41339 const updateCroppedImage = (croppedImg) => { 41340 if (!imageComponent.value) imageComponent.value = {}; 41341 if (!croppedImg) { 41342 return imageComponent.value[imageKey] = imageSrc.value; 41343 } 41344 croppedImage.value = croppedImg; 41345 imageComponent.value[imageKey] = croppedImg; 41346 }; 41347 return { 41348 imageAlt, 41349 imageSrc, 41350 croppedImage, 41351 croppedSrc, 41352 imageHeight, 41353 imageWidth, 41354 mediaBackgroundPosition, 41355 backgroundMediaFocal, 41356 backgroundMediaCrop, 41357 updateCroppedImage 41358 }; 41359} 41360function useSocialIcons(props) { 41361 const blockFacebook = computed(() => { 41362 var _a; 41363 if (!((_a = props.settings) == null ? void 0 : _a["facebook-show"])) return ""; 41364 return renderData(props.settings.facebook, props.dataSite); 41365 }); 41366 const blockLinkedin = computed(() => { 41367 var _a; 41368 if (!((_a = props.settings) == null ? void 0 : _a["linkedin-show"])) return ""; 41369 return renderData(props.settings.linkedin, props.dataSite); 41370 }); 41371 const blockTwitter = computed(() => { 41372 var _a; 41373 if (!((_a = props.settings) == null ? void 0 : _a["twitter-show"])) return ""; 41374 return renderData(props.settings.twitter, props.dataSite); 41375 }); 41376 const blockYoutube = computed(() => { 41377 return props.settings.youtube || null; 41378 }); 41379 const hasSocialIcons = computed(() => { 41380 return blockFacebook.value || blockLinkedin.value || blockTwitter.value || blockYoutube.value; 41381 }); 41382 return { 41383 blockFacebook, 41384 blockLinkedin, 41385 blockTwitter, 41386 blockYoutube, 41387 hasSocialIcons 41388 }; 41389} 41390const _sfc_main$3Q = { 41391 name: "CoreBlockContentCard", 41392 props: { 41393 settings: { 41394 type: Object, 41395 required: true 41396 }, 41397 dataSite: { 41398 type: Object, 41399 required: true 41400 }, 41401 isEditable: { 41402 type: Boolean, 41403 default: false 41404 }, 41405 isBuilderMobile: { 41406 type: Boolean, 41407 default: false 41408 }, 41409 index: { 41410 type: Number, 41411 default: 0 41412 }, 41413 nestedLevel: { 41414 type: Number, 41415 default: 0 41416 }, 41417 ...inlineTextEditProps 41418 }, 41419 setup(props) { 41420 var _a, _b; 41421 const store = useStore(); 41422 const { state } = store; 41423 const { isExpired: hasExpiredCopy } = useIsExpired( 41424 () => props.settings, 41425 (item) => item.type === "copy" 41426 ); 41427 const { 41428 editingField, 41429 entryPoint, 41430 canEditField, 41431 rawField, 41432 enterField, 41433 closeField, 41434 inlineButton 41435 } = useInlineTextFields(props, { 41436 isExpired: hasExpiredCopy, 41437 activeField: injectInlineActiveField() 41438 }); 41439 const { 41440 canInlineEdit: mediaCanInlineEdit, 41441 showInlineEditor: mediaShowInlineEditor, 41442 enter: enterMediaField 41443 } = useInlineMediaEdit(props, { 41444 mediaKey: "media", 41445 getSource: () => { 41446 var _a2; 41447 return (_a2 = props.settings) == null ? void 0 : _a2.media; 41448 }, 41449 isExpired: hasExpiredCopy, 41450 fieldKey: "media", 41451 activeField: editingField 41452 }); 41453 const mediaInlineCapable = computed( 41454 () => props.inlineEditing && mediaCanInlineEdit.value 41455 ); 41456 const mediaSizingFlag = (_b = (_a = state == null ? void 0 : state.settings) == null ? void 0 : _a.featureFlags) == null ? void 0 : _b.ContentCardMediaSizing; 41457 const { imageSrc: mediaSrc, imageAlt: mediaAlt } = useImageProperties( 41458 props, 41459 "media", 41460 null 41461 ); 41462 const { 41463 blockFacebook, 41464 blockLinkedin, 41465 blockTwitter, 41466 blockYoutube, 41467 hasSocialIcons 41468 } = useSocialIcons(props); 41469 const { isMobile } = useIsMobile(); 41470 const isMobileView = computed(() => { 41471 return isMobile.value || props.isBuilderMobile; 41472 }); 41473 const mobileSettingsEnabled = computed(() => { 41474 var _a2, _b2; 41475 return !!((_b2 = (_a2 = state == null ? void 0 : state.settings) == null ? void 0 : _a2.featureFlags) == null ? void 0 : _b2.MobileSettings); 41476 }); 41477 const hideOnMobile = computed(() => { 41478 var _a2; 41479 return mobileSettingsEnabled.value && !!((_a2 = props.settings) == null ? void 0 : _a2.hideOnMobile); 41480 }); 41481 const hasMobilePlaceholder = computed(() => { 41482 var _a2, _b2, _c; 41483 const placeholder = (_a2 = props.settings) == null ? void 0 : _a2.placeholderImageMobile; 41484 return mobileSettingsEnabled.value && !((_b2 = props.settings) == null ? void 0 : _b2.hideOnMobile) && !!((_c = props.settings) == null ? void 0 : _c.togglePlaceholderMobile) && !!(typeof placeholder === "string" ? placeholder : placeholder == null ? void 0 : placeholder.src); 41485 }); 41486 const imagePlacementMobile = computed(() => { 41487 var _a2; 41488 return (_a2 = props.settings) == null ? void 0 : _a2.imagePlacementMobile; 41489 }); 41490 const displayMediaSrc = computed(() => { 41491 var _a2; 41492 if (hideOnMobile.value && isMobileView.value) { 41493 return null; 41494 } 41495 if (hasMobilePlaceholder.value && isMobileView.value) { 41496 const placeholder = (_a2 = props.settings) == null ? void 0 : _a2.placeholderImageMobile; 41497 if (placeholder && typeof placeholder === "string") { 41498 return placeholder; 41499 } 41500 return (placeholder == null ? void 0 : placeholder.src) || null; 41501 } 41502 return mediaSrc.value; 41503 }); 41504 const displayMediaAlt = computed(() => { 41505 var _a2; 41506 if (hasMobilePlaceholder.value && isMobileView.value) { 41507 const placeholder = (_a2 = props.settings) == null ? void 0 : _a2.placeholderImageMobile; 41508 if (placeholder && typeof placeholder === "object") { 41509 return placeholder.alt || ""; 41510 } 41511 return ""; 41512 } 41513 return mediaAlt.value; 41514 }); 41515 const displayMediaMetadata = computed(() => { 41516 var _a2; 41517 if (hasMobilePlaceholder.value && isMobileView.value) { 41518 const placeholder = (_a2 = props.settings) == null ? void 0 : _a2.placeholderImageMobile; 41519 if (!placeholder || typeof placeholder === "string") { 41520 return { src: placeholder }; 41521 } 41522 const { crop } = placeholder; 41523 return { src: crop ? crop : placeholder }; 41524 } 41525 return mediaMetadata.value; 41526 }); 41527 const mobileSettingsClasses = computed(() => { 41528 if (!mobileSettingsEnabled.value) { 41529 return []; 41530 } 41531 const classes = []; 41532 if (isMobileView.value) { 41533 if (hideOnMobile.value) { 41534 classes.push("block_content-card_hide-media-mobile"); 41535 } 41536 } 41537 const placement = imagePlacementMobile.value; 41538 if (placement === "image-bottom") { 41539 classes.push("block_content-card_image-bottom"); 41540 } else if (placement === "image-top") { 41541 classes.push("block_content-card_image-top"); 41542 } 41543 return classes; 41544 }); 41545 const contentLibraryItems = computed(() => { 41546 var _a2; 41547 return ((_a2 = props.settings) == null ? void 0 : _a2.contentLibraryItems) || []; 41548 }); 41549 const overlineType = computed(() => { 41550 var _a2; 41551 const containsHTML = (str) => /<[^>]*>/.test(str); 41552 if (containsHTML((_a2 = props.settings) == null ? void 0 : _a2.overline)) { 41553 return "rich-text"; 41554 } 41555 return "text"; 41556 }); 41557 const autoPlayProp = computed(() => { 41558 var _a2; 41559 return ((_a2 = props.settings) == null ? void 0 : _a2.autoPlay) || false; 41560 }); 41561 const loopProp = computed(() => { 41562 var _a2; 41563 return ((_a2 = props.settings) == null ? void 0 : _a2.loop) || false; 41564 }); 41565 const overlineText = computed(() => { 41566 var _a2, _b2; 41567 return wysiwygRequired((_a2 = props.settings) == null ? void 0 : _a2.overline) ? renderData((_b2 = props.settings) == null ? void 0 : _b2.overline, props.dataSite) : null; 41568 }); 41569 const headlineText = computed(() => { 41570 var _a2, _b2; 41571 return wysiwygRequired((_a2 = props.settings) == null ? void 0 : _a2.headline) ? renderData((_b2 = props.settings) == null ? void 0 : _b2.headline, props.dataSite) : null; 41572 }); 41573 const bodyText = computed(() => { 41574 const textValue = getStoredRichText(props.settings); 41575 return textValue && wysiwygRequired(textValue) ? renderData(textValue, props.dataSite) : null; 41576 }); 41577 const disclosureText = computed(() => { 41578 var _a2; 41579 return wysiwygRequired((_a2 = props.settings) == null ? void 0 : _a2.disclosure) ? renderData(props.settings.disclosure, props.dataSite) : null; 41580 }); 41581 const mediaMetadata = computed(() => { 41582 var _a2, _b2, _c, _d; 41583 const background = (_a2 = props.settings) == null ? void 0 : _a2.media; 41584 const mediaSrc2 = background && typeof background === "string" ? (_c = (_b2 = props.settings) == null ? void 0 : _b2.mediaMetadata) == null ? void 0 : _c.media : (_d = props.settings) == null ? void 0 : _d.media; 41585 if (!mediaSrc2) return { src: background }; 41586 const { crop } = mediaSrc2; 41587 return { src: crop ? crop : mediaSrc2 }; 41588 }); 41589 const wrapText = computed(() => { 41590 var _a2, _b2; 41591 return ((_b2 = (_a2 = props.settings) == null ? void 0 : _a2.variants) == null ? void 0 : _b2.wrapText) || false; 41592 }); 41593 const mediaHeight = computed(() => { 41594 var _a2, _b2; 41595 if (mediaSizingFlag) { 41596 return ((_a2 = props.settings) == null ? void 0 : _a2.mediaHeight) || (wrapText.value ? "auto" : "100%"); 41597 } 41598 return ((_b2 = props.settings) == null ? void 0 : _b2.mediaHeight) || "100%"; 41599 }); 41600 const mediaWidth = computed(() => { 41601 var _a2; 41602 return ((_a2 = props.settings) == null ? void 0 : _a2.mediaWidth) || "auto"; 41603 }); 41604 const validMediaWidth = computed(() => { 41605 if (mediaWidth.value === "auto") { 41606 return false;
41607 } else { 41608 return /^(\d+)(px|%|em|rem)$/.test(mediaWidth.value); 41609 } 41610 }); 41611 const hasButtons = computed(() => { 41612 return hasPrimaryButton.value || hasSecondaryButton.value; 41613 }); 41614 const hasPrimaryButton = computed(() => { 41615 var _a2; 41616 return ((_a2 = props.settings) == null ? void 0 : _a2.primaryButton) || false; 41617 }); 41618 const hasSecondaryButton = computed(() => { 41619 var _a2; 41620 return ((_a2 = props.settings) == null ? void 0 : _a2.secondaryButton) || false; 41621 }); 41622 const secondaryButtonAsPrimary = computed(() => { 41623 var _a2, _b2; 41624 return ((_b2 = (_a2 = props.settings) == null ? void 0 : _a2.variants) == null ? void 0 : _b2["secondary-as-primary"]) || false; 41625 }); 41626 const secondaryTypeText = computed(() => { 41627 var _a2; 41628 return ((_a2 = props.settings) == null ? void 0 : _a2.secondaryTypeText) ?? false; 41629 }); 41630 const primaryButtonSettings = computed(() => ({ 41631 type: "button", 41632 url: props.settings.primaryUrl, 41633 label: props.settings.primaryLabel, 41634 newWindow: props.settings.primaryBtnNewWindow, 41635 icon: props.settings.primaryBtnIcon || false, 41636 variants: { 41637 style: "primary", 41638 "icon-placement": props.settings.primaryBtnIconPlacement || "icon-left" 41639 }, 41640 contentLibraryItems: contentLibraryItems.value, 41641 relAttributes: props.settings.primaryRelAttributes 41642 })); 41643 const secondaryButtonSettings = computed(() => ({ 41644 type: "button", 41645 url: props.settings.secondaryUrl, 41646 label: props.settings.secondaryLabel, 41647 newWindow: props.settings.secondaryBtnNewWindow, 41648 icon: props.settings.secondaryBtnIcon || false, 41649 variants: { 41650 style: secondaryTypeText.value ? "text" : "secondary", 41651 outline: !secondaryButtonAsPrimary.value, 41652 "icon-placement": props.settings.secondaryBtnIconPlacement || "icon-left" 41653 }, 41654 contentLibraryItems: contentLibraryItems.value, 41655 relAttributes: props.settings.secondaryRelAttributes 41656 })); 41657 const imageLocation = computed(() => { 41658 var _a2; 41659 return (_a2 = props.settings.variants) == null ? void 0 : _a2["align-image"]; 41660 }); 41661 const imageLocationHorizontal = computed(() => { 41662 return imageLocation.value === "image-left" || imageLocation.value === "image-right"; 41663 }); 41664 const columnOffset = computed(() => { 41665 var _a2; 41666 return ((_a2 = props.settings.variants) == null ? void 0 : _a2["column-offset"]) || false; 41667 }); 41668 const mediaContainerStyles = computed(() => { 41669 var _a2; 41670 return { 41671 width: mediaWidth.value, 41672 height: mediaHeight.value, 41673 ...imageLocationHorizontal.value && (mediaSizingFlag || wrapText.value) && { 41674 "flex-basis": isMobileView.value ? mediaHeight.value === "auto" || !((_a2 = props.settings) == null ? void 0 : _a2.mediaHeight) ? "50%" : mediaHeight.value : mediaWidth.value === "auto" ? "50%" : mediaWidth.value, 41675 width: `${mediaWidth.value === "auto" ? "auto" : mediaWidth.value}`, 41676 // 24px to account for the container gap 41677 ...mediaSizingFlag && !isMobileView.value && { 41678 maxWidth: "calc(75% - 24px)" 41679 } 41680 }, 41681 ...columnOffset.value && { width: "unset", height: "unset" } 41682 }; 41683 }); 41684 const textBlockStyles = computed(() => { 41685 if (mediaSrc.value && imageLocationHorizontal.value) { 41686 return { 41687 flexBasis: `calc(100% - ${mediaWidth.value === "auto" ? "50%" : mediaWidth.value})`, 41688 // 24px to account for the container gap 41689 ...mediaSizingFlag && !isMobileView.value && { 41690 minWidth: "calc(25% - 24px)" 41691 } 41692 }; 41693 } 41694 return {}; 41695 }); 41696 const nestedLevelNext = computed(() => props.nestedLevel + 1); 41697 return { 41698 editingField, 41699 entryPoint, 41700 canEditField, 41701 rawField, 41702 enterField, 41703 closeField, 41704 inlineButton, 41705 primaryButtonSettings, 41706 secondaryButtonSettings, 41707 mediaCanInlineEdit, 41708 mediaShowInlineEditor, 41709 enterMediaField, 41710 mediaInlineCapable, 41711 contentLibraryItems, 41712 overlineText, 41713 overlineType, 41714 headlineText, 41715 bodyText, 41716 disclosureText, 41717 mediaSrc, 41718 mediaAlt, 41719 mediaMetadata, 41720 wrapText, 41721 mediaHeight, 41722 mediaWidth, 41723 validMediaWidth, 41724 hasButtons, 41725 hasPrimaryButton, 41726 hasSecondaryButton, 41727 secondaryButtonAsPrimary, 41728 secondaryTypeText, 41729 hasSocialIcons, 41730 blockFacebook, 41731 blockLinkedin, 41732 blockTwitter, 41733 blockYoutube, 41734 imageLocation, 41735 imageLocationHorizontal, 41736 columnOffset, 41737 isMobile, 41738 isMobileView, 41739 autoPlayProp, 41740 loopProp, 41741 nestedLevelNext, 41742 mediaContainerStyles, 41743 textBlockStyles, 41744 mobileSettingsEnabled, 41745 hideOnMobile, 41746 hasMobilePlaceholder, 41747 imagePlacementMobile, 41748 displayMediaSrc, 41749 displayMediaAlt, 41750 displayMediaMetadata, 41751 mobileSettingsClasses 41752 }; 41753 } 41754}; 41755const _hoisted_1$3O = { 41756 key: 0, 41757 class: "block__section_btns" 41758}; 41759function _sfc_render$3o(_ctx, _cache, $props, $setup, $data, $options) { 41760 const _component_CoreBlock = _sfc_main$4x; 41761 const _component_CoreBlockContentCardTextField = _sfc_main$3R; 41762 return openBlock(), createElementBlock("div", { 41763 class: normalizeClass(["block__body block__content-card", $setup.mobileSettingsClasses]) 41764 }, [ 41765 createBaseVNode("div", { 41766 class: normalizeClass(["container", { 41767 "wrapping-text": $setup.wrapText 41768 }]) 41769 }, [ 41770 $setup.displayMediaSrc ? (openBlock(), createElementBlock("div", { 41771 key: 0, 41772 class: normalizeClass(["media-container", { 41773 "width-50": !$setup.validMediaWidth, 41774 "media-container--editable": $setup.mediaInlineCapable 41775 }]), 41776 style: normalizeStyle($setup.mediaContainerStyles), 41777 onClick: _cache[0] || (_cache[0] = ($event) => $setup.enterMediaField($event)) 41778 }, [ 41779 createVNode(_component_CoreBlock, { 41780 "is-editable": $props.isEditable, 41781 "is-builder-mobile": $props.isBuilderMobile, 41782 index: 0, 41783 "nested-level": $setup.nestedLevelNext, 41784 "inline-editable": $setup.mediaCanInlineEdit, 41785 "inline-editing": $setup.mediaShowInlineEditor, 41786 settings: { 41787 type: "media", 41788 src: $setup.displayMediaSrc, 41789 height: $setup.mediaHeight, 41790 width: "100%", 41791 ...$setup.columnOffset && $setup.mediaWidth !== "auto" && { 41792 width: $setup.mediaWidth, 41793 height: $setup.mediaHeight === "auto" ? "auto" : $setup.mediaHeight 41794 }, 41795 ...$setup.columnOffset && $setup.mediaHeight !== "auto" && { 41796 height: $setup.mediaHeight, 41797 width: $setup.mediaWidth === "auto" ? "auto" : $setup.mediaWidth 41798 }, 41799 alt: $setup.displayMediaAlt, 41800 mediaMetadata: $setup.displayMediaMetadata, 41801 showHeadline: $props.settings.showHeadline || false, 41802 videoHeadline: $props.settings.videoHeadline || "", 41803 contentLibraryItems: $setup.contentLibraryItems, 41804 autoPlay: $setup.autoPlayProp, 41805 loop: $setup.loopProp 41806 } 41807 }, createSlots({ _: 2 }, [ 41808 $setup.mediaCanInlineEdit ? { 41809 name: "inline-editor", 41810 fn: withCtx((slotProps) => [ 41811 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps({ ...slotProps, field: "media" }))) 41812 ]), 41813 key: "0" 41814 } : void 0 41815 ]), 1032, ["is-editable", "is-builder-mobile", "nested-level", "inline-editable", "inline-editing", "settings"]), 41816 $setup.hasSocialIcons ? (openBlock(), createBlock(_component_CoreBlock, { 41817 key: 0, 41818 "is-editable": $props.isEditable, 41819 settings: { 41820 type: "social-links", 41821 facebook: $setup.blockFacebook, 41822 linkedin: $setup.blockLinkedin, 41823 twitter: $setup.blockTwitter, 41824 youtube: $setup.blockYoutube 41825 } 41826 }, null, 8, ["is-editable", "settings"])) : createCommentVNode("", true)
41827 ], 6)) : createCommentVNode("", true), 41828 createBaseVNode("div", { 41829 class: "block__section_text", 41830 style: normalizeStyle($setup.textBlockStyles) 41831 }, [ 41832 createVNode(_component_CoreBlockContentCardTextField, { 41833 field: "overline", 41834 text: $setup.overlineText, 41835 "is-editable": $props.isEditable, 41836 "block-settings": { 41837 type: $setup.overlineType, 41838 text: $setup.overlineText, 41839 bodyText: $setup.overlineText, 41840 tag: "h6", 41841 variants: { 41842 size: "overline" 41843 }, 41844 contentLibraryItems: $setup.contentLibraryItems 41845 } 41846 }, null, 8, ["text", "is-editable", "block-settings"]), 41847 createVNode(_component_CoreBlockContentCardTextField, { 41848 field: "headline", 41849 "inline-capable": _ctx.inlineEditing, 41850 editing: $setup.editingField === "headline", 41851 text: $setup.headlineText, 41852 "raw-html": $setup.rawField("headline"), 41853 "caret-point": $setup.entryPoint, 41854 "can-edit": $setup.canEditField("headline"), 41855 "wrapper-class": "block_rich-text_headline", 41856 "is-editable": $props.isEditable, 41857 "block-settings": { 41858 type: "rich-text", 41859 richText: $setup.headlineText, 41860 variants: { 41861 size: "headline" 41862 }, 41863 contentLibraryItems: $setup.contentLibraryItems 41864 }, 41865 onEnter: _cache[1] || (_cache[1] = ($event) => $setup.enterField("headline", $event)), 41866 onClose: $setup.closeField 41867 }, { 41868 "inline-editor": withCtx((slotProps) => [ 41869 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps(slotProps))) 41870 ]), 41871 _: 3 41872 }, 8, ["inline-capable", "editing", "text", "raw-html", "caret-point", "can-edit", "is-editable", "block-settings", "onClose"]), 41873 createVNode(_component_CoreBlockContentCardTextField, { 41874 field: "bodyText", 41875 "inline-capable": _ctx.inlineEditing, 41876 editing: $setup.editingField === "bodyText", 41877 text: $setup.bodyText, 41878 "raw-html": $setup.rawField("bodyText"), 41879 "caret-point": $setup.entryPoint, 41880 "can-edit": $setup.canEditField("bodyText"), 41881 "wrapper-class": "block_rich-text_base", 41882 "is-editable": $props.isEditable, 41883 "block-settings": { 41884 type: "rich-text", 41885 richText: $setup.bodyText, 41886 contentLibraryItems: $setup.contentLibraryItems 41887 }, 41888 onEnter: _cache[2] || (_cache[2] = ($event) => $setup.enterField("bodyText", $event)), 41889 onClose: $setup.closeField 41890 }, { 41891 "inline-editor": withCtx((slotProps) => [ 41892 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps(slotProps))) 41893 ]), 41894 _: 3 41895 }, 8, ["inline-capable", "editing", "text", "raw-html", "caret-point", "can-edit", "is-editable", "block-settings", "onClose"]), 41896 $setup.hasButtons ? (openBlock(), createElementBlock("div", _hoisted_1$3O, [ 41897 $setup.hasPrimaryButton ? (openBlock(), createBlock(_component_CoreBlock, mergeProps({ 41898 key: 0, 41899 "is-editable": $props.isEditable 41900 }, $setup.inlineButton("primaryLabel"), { settings: $setup.primaryButtonSettings }), { 41901 "inline-editor": withCtx((slotProps) => [ 41902 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps({ 41903 ...slotProps, 41904 onClose: $setup.closeField 41905 }))) 41906 ]), 41907 _: 3 41908 }, 16, ["is-editable", "settings"])) : createCommentVNode("", true), 41909 $setup.hasSecondaryButton ? (openBlock(), createBlock(_component_CoreBlock, mergeProps({ 41910 key: 1, 41911 "is-editable": $props.isEditable 41912 }, $setup.inlineButton("secondaryLabel"), { settings: $setup.secondaryButtonSettings }), { 41913 "inline-editor": withCtx((slotProps) => [ 41914 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps({ 41915 ...slotProps, 41916 onClose: $setup.closeField 41917 }))) 41918 ]), 41919 _: 3 41920 }, 16, ["is-editable", "settings"])) : createCommentVNode("", true) 41921 ])) : createCommentVNode("", true), 41922 createVNode(_component_CoreBlockContentCardTextField, { 41923 field: "disclosure", 41924 "inline-capable": _ctx.inlineEditing, 41925 editing: $setup.editingField === "disclosure", 41926 text: $setup.disclosureText, 41927 "raw-html": $setup.rawField("disclosure"), 41928 "caret-point": $setup.entryPoint, 41929 "can-edit": $setup.canEditField("disclosure"), 41930 "wrapper-class": "block_rich-text_disclosure", 41931 "field-class": "disclosure-text", 41932 "is-editable": $props.isEditable, 41933 "block-settings": {
41934 type: "rich-text", 41935 richText: $setup.disclosureText, 41936 variants: { 41937 size: "disclosure" 41938 } 41939 }, 41940 onEnter: _cache[3] || (_cache[3] = ($event) => $setup.enterField("disclosure", $event)), 41941 onClose: $setup.closeField 41942 }, { 41943 "inline-editor": withCtx((slotProps) => [ 41944 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps(slotProps))) 41945 ]), 41946 _: 3 41947 }, 8, ["inline-capable", "editing", "text", "raw-html", "caret-point", "can-edit", "is-editable", "block-settings", "onClose"]) 41948 ], 4) 41949 ], 2) 41950 ], 2); 41951} 41952const CoreBlockContentCard = /* @__PURE__ */ _export_sfc(_sfc_main$3Q, [["render", _sfc_render$3o]]); 41953const CoreBlockContentCard$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 41954 __proto__: null, 41955 default: CoreBlockContentCard 41956}, Symbol.toStringTag, { value: "Module" })); 41957const _sfc_main$3P = { 41958 name: "CoreBlockDivider", 41959 props: { 41960 settings: { 41961 type: Object, 41962 required: true 41963 } 41964 }, 41965 setup(props) { 41966 const blockContent = computed(() => props.settings.content || null); 41967 const dividerWidth = computed(() => { 41968 var _a; 41969 return ((_a = props.settings) == null ? void 0 : _a.dividerWidth) || "100%"; 41970 }); 41971 const dividerHorizontalAlignment = computed(() => { 41972 var _a; 41973 return ((_a = props.settings) == null ? void 0 : _a.dividerHorizontalAlignment) || "center"; 41974 }); 41975 return { 41976 blockContent, 41977 dividerWidth, 41978 dividerHorizontalAlignment 41979 }; 41980 } 41981}; 41982const _hoisted_1$3N = { 41983 key: 0, 41984 class: "block__section_content" 41985}; 41986function _sfc_render$3n(_ctx, _cache, $props, $setup, $data, $options) { 41987 return openBlock(), createElementBlock("div", { 41988 class: "block__body", 41989 style: normalizeStyle(`justify-content: ${$setup.dividerHorizontalAlignment}`) 41990 }, [ 41991 createBaseVNode("hr", { 41992 class: "divider", 41993 style: normalizeStyle(`width: ${$setup.dividerWidth};`) 41994 }, null, 4), 41995 $setup.blockContent ? (openBlock(), createElementBlock("div", _hoisted_1$3N, toDisplayString($setup.blockContent), 1)) : createCommentVNode("", true) 41996 ], 4); 41997} 41998const CoreBlockDivider = /* @__PURE__ */ _export_sfc(_sfc_main$3P, [["render", _sfc_render$3n]]); 41999const CoreBlockDivider$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 42000 __proto__: null, 42001 default: CoreBlockDivider 42002}, Symbol.toStringTag, { value: "Module" })); 42003const _sfc_main$3O = { 42004 name: "CoreBlockFile", 42005 props: { 42006 settings: { 42007 type: Object, 42008 required: true 42009 } 42010 } 42011}; 42012const _hoisted_1$3M = { class: "block__body" }; 42013function _sfc_render$3m(_ctx, _cache, $props, $setup, $data, $options) { 42014 return openBlock(), createElementBlock("div", _hoisted_1$3M, _cache[0] || (_cache[0] = [ 42015 createBaseVNode("div", { class: "block__section_content" }, "File", -1) 42016 ])); 42017} 42018const CoreBlockFile = /* @__PURE__ */ _export_sfc(_sfc_main$3O, [["render", _sfc_render$3m]]); 42019const CoreBlockFile$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 42020 __proto__: null, 42021 default: CoreBlockFile 42022}, Symbol.toStringTag, { value: "Module" })); 42023const _hoisted_1$3L = { 42024 key: 0, 42025 class: "block__body frame-embed-container" 42026}; 42027const _hoisted_2$3w = { 42028 key: 0, 42029 class: "frame-embed-no-url" 42030}; 42031const _hoisted_3$j = ["src", "width", "height", "title"]; 42032const _sfc_main$3N = { 42033 __name: "CoreBlockFrameEmbed", 42034 props: { 42035 settings: { 42036 type: Object, 42037 required: true 42038 }, 42039 dataSite: { 42040 type: Object, 42041 required: true 42042 }, 42043 isEditable: { 42044 type: Boolean, 42045 default: false 42046 } 42047 }, 42048 setup(__props) { 42049 const props = __props; 42050 const store = useStore(); 42051 const componentEnabled = computed(() => { 42052 var _a; 42053 if (!props.isEditable) { 42054 return true; 42055 } 42056 const getBrandFeatureFlag = (_a = store.getters) == null ? void 0 : _a["settings/getBrandFeatureFlag"]; 42057 if (typeof getBrandFeatureFlag === "function") { 42058 return getBrandFeatureFlag("CoreLite"); 42059 } 42060 return false;
42061 }); 42062 const frameUrl = computed(() => { 42063 var _a; 42064 const url = (_a = props.settings) == null ? void 0 : _a.url; 42065 if (typeof url === "string" && url.trim() !== "") { 42066 return url; 42067 } 42068 return null; 42069 }); 42070 const frameHeight = computed(() => { 42071 var _a; 42072 return ((_a = props.settings) == null ? void 0 : _a.height) || "400px"; 42073 }); 42074 const frameWidth = computed(() => { 42075 var _a; 42076 return ((_a = props.settings) == null ? void 0 : _a.width) || "100%"; 42077 }); 42078 const frameTitle = computed(() => { 42079 var _a; 42080 return ((_a = props.settings) == null ? void 0 : _a.iframeTitle) || "Embedded Content"; 42081 }); 42082 return (_ctx, _cache) => { 42083 return componentEnabled.value ? (openBlock(), createElementBlock("div", _hoisted_1$3L, [ 42084 !frameUrl.value && __props.isEditable ? (openBlock(), createElementBlock("div", _hoisted_2$3w, _cache[0] || (_cache[0] = [ 42085 createBaseVNode("p", null, "Enter a URL to embed content in an iframe.", -1) 42086 ]))) : frameUrl.value ? (openBlock(), createElementBlock("iframe", { 42087 key: 1, 42088 src: frameUrl.value, 42089 width: frameWidth.value, 42090 height: frameHeight.value, 42091 title: frameTitle.value, 42092 frameborder: "0", 42093 allowfullscreen: "" 42094 }, null, 8, _hoisted_3$j)) : createCommentVNode("", true) 42095 ])) : createCommentVNode("", true); 42096 }; 42097 } 42098}; 42099const CoreBlockFrameEmbed = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 42100 __proto__: null, 42101 default: _sfc_main$3N 42102}, Symbol.toStringTag, { value: "Module" })); 42103const _sfc_main$3M = { 42104 name: "CoreBlockGrid", 42105 props: { 42106 index: { 42107 type: Number, 42108 default: 0 42109 }, 42110 nestedLevel: { 42111 type: Number, 42112 default: 0 42113 }, 42114 settings: { 42115 type: Object, 42116 required: true 42117 }, 42118 isEditable: { 42119 type: Boolean, 42120 default: false 42121 }, 42122 isBuilderMobile: { 42123 type: Boolean, 42124 default: false 42125 }, 42126 isFirstPageLevelBlock: { 42127 type: Boolean, 42128 default: void 0 42129 }, 42130 isFirstPageLevelPosition: { 42131 type: Boolean, 42132 default: void 0 42133 }, 42134 ...inlineMediaEditProps 42135 }, 42136 setup(props) { 42137 const { 42138 blockChildren, 42139 blockChildrenCount, 42140 blockVariantLayout, 42141 bodyClasses, 42142 childBlockComponent, 42143 hasChildren, 42144 nestedLevelNext 42145 } = useBlock(props); 42146 const { isFirstPageLevelBlockFor, isFirstPageLevelPositionFor } = useBlockNavOffset(props); 42147 const { showInlineEditor } = useInlineMediaEdit(props, { 42148 mediaKey: "image" 42149 }); 42150 const blockId = computed(() => { 42151 return props.settings.id; 42152 }); 42153 const blockBackgroundImage = computed(() => { 42154 var _a, _b; 42155 const imgSrc = isObject$1(props.settings.image) ? props.settings.image.src : props.settings.image; 42156 const bgPosition = isObject$1(props.settings.image) ? (_b = (_a = props.settings.image) == null ? void 0 : _a.focal) == null ? void 0 : _b.bgPosition : "center"; 42157 const bgStyle = { 42158 "background-image": `url('${imgSrc}')`, 42159 "background-position": bgPosition, 42160 "padding-top": "12rem" 42161 }; 42162 return props.settings.image ? bgStyle : ""; 42163 }); 42164 const sectionMainClasses = computed(() => { 42165 const fillSpace = props.settings["fill-space"]; 42166 const classList = [ 42167 "block__section_main", 42168 fillSpace ? "block__section_main-fill-space" : "block__section_main-fill-container" 42169 ]; 42170 let columnCount = props.settings["column-count"]; 42171 if (isNaN(columnCount)) { 42172 columnCount = 2; 42173 } else { 42174 if (columnCount < 2) { 42175 columnCount = 2; 42176 } 42177 if (columnCount > 6) { 42178 columnCount = 6; 42179 } 42180 } 42181 classList.push( 42182 `block__section_main--${columnCount}_column${fillSpace ? "_fill-space" : ""}` 42183 ); 42184 return classList; 42185 }); 42186 return { 42187 showInlineEditor, 42188 blockBackgroundImage, 42189 blockChildren, 42190 blockChildrenCount, 42191 blockId, 42192 blockVariantLayout, 42193 bodyClasses, 42194 childBlockComponent, 42195 hasChildren, 42196 nestedLevelNext,
42197 sectionMainClasses, 42198 isFirstPageLevelBlockFor, 42199 isFirstPageLevelPositionFor 42200 }; 42201 } 42202}; 42203const _hoisted_1$3K = { 42204 key: 0, 42205 class: "block__inline-media" 42206}; 42207function _sfc_render$3l(_ctx, _cache, $props, $setup, $data, $options) { 42208 return openBlock(), createElementBlock("div", { 42209 class: normalizeClass($setup.bodyClasses) 42210 }, [ 42211 createBaseVNode("div", { 42212 class: normalizeClass($setup.sectionMainClasses), 42213 style: normalizeStyle([$setup.blockBackgroundImage]) 42214 }, [ 42215 (openBlock(true), createElementBlock(Fragment, null, renderList($setup.blockChildren, (childSettings, childIndex) => { 42216 return openBlock(), createBlock(resolveDynamicComponent($setup.childBlockComponent), { 42217 key: childSettings.id, 42218 index: childIndex, 42219 "is-editable": $props.isEditable, 42220 "is-first-child": !childIndex, 42221 "is-last-child": childIndex >= $setup.blockChildren.length - 1, 42222 "nested-level": $setup.nestedLevelNext, 42223 "parent-is-horizontal": true, 42224 settings: childSettings, 42225 "is-builder-mobile": $props.isBuilderMobile, 42226 "is-first-page-level-block": $setup.isFirstPageLevelBlockFor(childSettings), 42227 "is-first-page-level-position": $setup.isFirstPageLevelPositionFor(childSettings) 42228 }, null, 8, ["index", "is-editable", "is-first-child", "is-last-child", "nested-level", "settings", "is-builder-mobile", "is-first-page-level-block", "is-first-page-level-position"]); 42229 }), 128)) 42230 ], 6), 42231 $setup.showInlineEditor ? (openBlock(), createElementBlock("div", _hoisted_1$3K, [ 42232 renderSlot(_ctx.$slots, "inline-editor", { field: "image" }) 42233 ])) : createCommentVNode("", true) 42234 ], 2); 42235} 42236const CoreBlockGrid = /* @__PURE__ */ _export_sfc(_sfc_main$3M, [["render", _sfc_render$3l]]); 42237const CoreBlockGrid$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 42238 __proto__: null, 42239 default: CoreBlockGrid 42240}, Symbol.toStringTag, { value: "Module" })); 42241const _sfc_main$3L = { 42242 name: "CoreBlockHero", 42243 props: { 42244 index: { 42245 type: Number, 42246 default: 0 42247 }, 42248 nestedLevel: { 42249 type: Number, 42250 default: 0 42251 }, 42252 settings: { 42253 type: Object, 42254 required: true 42255 }, 42256 isEditable: { 42257 type: Boolean, 42258 default: false 42259 } 42260 }, 42261 setup() { 42262 provide(SCROLL_ANIMATION_EXCLUDED_KEY, true); 42263 }, 42264 data() { 42265 return { 42266 dataUrl: null 42267 }; 42268 }, 42269 computed: { 42270 background() { 42271 if (this.mediaIsImg) { 42272 return { 42273 "background-image": `url('${this.croppedSrc}')`, 42274 "background-position": this.mediaBackgroundPosition, 42275 "background-repeat": "no-repeat", 42276 "background-size": "cover" 42277 }; 42278 } 42279 return null; 42280 }, 42281 childBlockComponent() { 42282 if (this.isEditable) { 42283 return "ForgeControlBlock"; 42284 } 42285 return "CoreBlock"; 42286 }, 42287 blockId() { 42288 return this.settings.id; 42289 }, 42290 variants() { 42291 return this.settings.variants || {}; 42292 }, 42293 imageAlign() { 42294 return (this.variants["image-align"] || "left").replace( 42295 "image-", 42296 "" 42297 ); 42298 }, 42299 textAlign() { 42300 return (this.variants["text-align"] || "left").replace("text-", ""); 42301 }, 42302 verticalAlign() { 42303 return this.variants["vertical-align"] || null; 42304 }, 42305 mediaIsVideo() { 42306 return !!this.mediaSrc && mediaHelper.isVideo(this.mediaSrc); 42307 }, 42308 mediaIsImg() { 42309 return !!this.mediaSrc && mediaHelper.isImage(this.mediaSrc); 42310 }, 42311 mediaSrc() { 42312 var _a; 42313 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.backgroundMediaSrc; 42314 return mediaSrc && typeof mediaSrc === "object" ? mediaSrc.src : mediaSrc; 42315 }, 42316 croppedSrc() { 42317 var _a; 42318 return ((_a = this.mediaMetadataBackground) == null ? void 0 : _a.image) ? this.dataUrl : mediaHelper.getEncodedURI(this.mediaSrc); 42319 }, 42320 mediaBackgroundPosition() { 42321 var _a; 42322 return ((_a = this.backgroundMediaFocal) == null ? void 0 : _a.bgPosition) || "center"; 42323 }, 42324 backgroundMediaFocal() { 42325 var _a, _b, _c, _d; 42326 const background = (_a = this.settings) == null ? void 0 : _a.backgroundMediaSrc; 42327 const mediaSrc = background && typeof background === "string" ? (_c = (_b = this.settings) == null ? void 0 : _b.mediaMetadata) == null ? void 0 : _c.backgroundMediaSrc : (_d = this.settings) == null ? void 0 : _d.backgroundMediaSrc; 42328 return mediaSrc == null ? void 0 : mediaSrc.focal; 42329 }, 42330 sideMediaSrc() { 42331 var _a; 42332 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.sideMediaSrc; 42333 return mediaSrc && typeof mediaSrc === "object" ? mediaSrc.src : mediaSrc; 42334 }, 42335 settingsObj() { 42336 return this.settings; 42337 }, 42338 mediaAlt() { 42339 var _a, _b; 42340 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.backgroundMediaSrc; 42341 return mediaSrc && typeof mediaSrc === "object" ? mediaSrc.alt : (_b = this.settings) == null ? void 0 : _b.alt; 42342 },
42343 mediaMetadataBackground() { 42344 var _a, _b, _c, _d; 42345 const background = (_a = this.settings) == null ? void 0 : _a.backgroundMediaSrc; 42346 const mediaSrc = background && typeof background === "string" ? (_c = (_b = this.settings) == null ? void 0 : _b.mediaMetadata) == null ? void 0 : _c.backgroundMediaSrc : (_d = this.settings) == null ? void 0 : _d.backgroundMediaSrc; 42347 if (!mediaSrc) return background; 42348 const { crop } = mediaSrc; 42349 return crop ? crop : mediaSrc; 42350 }, 42351 mediaMetadataSide() { 42352 var _a, _b, _c; 42353 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.sideMediaSrc; 42354 const { crop, focal } = mediaSrc; 42355 if (crop || focal) { 42356 const mediaObject = { src: crop }; 42357 if (focal) mediaObject.src.focal = focal; 42358 return mediaObject; 42359 } 42360 return { src: (_c = (_b = this.settings) == null ? void 0 : _b.mediaMetadata) == null ? void 0 : _c.sideMediaSrc }; 42361 } 42362 }, 42363 methods: { 42364 getSettings() { 42365 const response = { 42366 type: "columns", 42367 "column-count": 2, 42368 variants: { 42369 layout: "grid", 42370 "vertical-alignment": this.verticalAlign, 42371 "image-alignment": this.imageAlign, 42372 "padding-top": "pt-small", 42373 "bg-color": "transparent" 42374 // layout: "contained", 42375 }, 42376 locked: true, 42377 blocks: [] 42378 }; 42379 const imageBlock = { 42380 type: "rows", 42381 blocks: [], 42382 variants: { 42383 "bg-color": "transparent" 42384 } 42385 }; 42386 if (this.sideMediaSrc) { 42387 imageBlock.blocks.push({ 42388 id: `i1_${this.settings.id}`, 42389 type: "media", 42390 acceptTypes: ["video", "image"], 42391 variants: { 42392 sizing: "contain", 42393 "bg-color": "transparent" 42394 }, 42395 src: this.sideMediaSrc, 42396 width: "100%", 42397 height: "auto", 42398 mediaMetadata: this.mediaMetadataSide 42399 }); 42400 } 42401 response.blocks.push(imageBlock); 42402 const contentBlock = { 42403 id: `c1_${this.settings.id}`, 42404 type: "rows", 42405 variants: { 42406 "padding-horizontal": "px-medium", 42407 "bg-color": "transparent" 42408 }, 42409 blocks: [ 42410 { 42411 type: "text", 42412 variants: { 42413 size: "overline", 42414 align: this.textAlign 42415 }, 42416 text: this.settings.overline 42417 }, 42418 { 42419 type: "text", 42420 variants: { 42421 size: "headline", 42422 align: this.textAlign, 42423 weight: "bold" 42424 }, 42425 text: this.settings.headline 42426 }, 42427 { 42428 type: "text", 42429 variants: { 42430 size: "subline", 42431 align: this.textAlign, 42432 weight: "bold" 42433 }, 42434 text: this.settings.subline 42435 }, 42436 { 42437 type: "rich-text", 42438 variants: { 42439 align: this.textAlign 42440 }, 42441 richText: this.settings.bodyText 42442 } 42443 ] 42444 }; 42445 const buttonContainer = this.getButtonContainer(); 42446 if (buttonContainer) { 42447 contentBlock.blocks.push(buttonContainer); 42448 } 42449 response.blocks.push(contentBlock); 42450 return response; 42451 }, 42452 getCarouselSettings() { 42453 const imageBlock = { 42454 type: "rows", 42455 blocks: [], 42456 variants: { 42457 "bg-color": "transparent" 42458 } 42459 }; 42460 if (this.settings.arrayMediaSrc) { 42461 const carouselContainer = { 42462 ...this.settings, 42463 id: `carousel_${this.settings.id}`, 42464 type: "container", 42465 variants: { 42466 layout: "carousel-hero", 42467 "child-width": "slim" 42468 }, 42469 blocks: [] 42470 }; 42471 for (const element of this.settings.arrayMediaSrc) { 42472 carouselContainer.blocks.push({ 42473 ...element, 42474 variants: { 42475 sizing: "contain", 42476 "bg-color": "transparent" 42477 }, 42478 width: "100%", 42479 height: "auto" 42480 }); 42481 } 42482 imageBlock.blocks = [carouselContainer]; 42483 } 42484 return imageBlock; 42485 }, 42486 getButtonContainer() { 42487 let response = null; 42488 if (this.settings["button-primary-url"] || this.settings["button-secondary-url"] || this.settings["button-tertiary-url"]) { 42489 response = { 42490 id: `c2_${this.settings.id}`, 42491 type: "container", 42492 variants: { 42493 layout: "columns", 42494 "bg-color": "transparent" 42495 },
42496 locked: false, 42497 allowTypes: ["button"], 42498 blocks: [] 42499 }; 42500 if (this.settings["button-primary-url"]) { 42501 response.blocks.push({ 42502 icon: this.settings["button-primary-icon"], 42503 id: `b1_${this.settings.id}`, 42504 label: this.settings["button-primary-label"] || "Primary Button Label", 42505 newWindow: this.settings["button-primary-newTab"], 42506 type: "button", 42507 url: this.settings["button-primary-url"], 42508 variants: { 42509 "icon-placement": this.settings["button-primary-icon-placement"], 42510 style: "primary" 42511 } 42512 }); 42513 } 42514 if (this.settings["button-secondary-url"]) { 42515 response.blocks.push({ 42516 icon: this.settings["button-secondary-icon"], 42517 id: `b2_${this.settings.id}`, 42518 label: this.settings["button-secondary-label"] || "Secondary Button Label", 42519 newWindow: this.settings["button-secondary-newTab"], 42520 type: "button", 42521 url: this.settings["button-secondary-url"], 42522 variants: { 42523 "icon-placement": this.settings["button-secondary-icon-placement"], 42524 style: "secondary" 42525 } 42526 }); 42527 } 42528 if (this.settings["button-tertiary-url"]) { 42529 response.blocks.push({ 42530 icon: this.settings["button-tertiary-icon"], 42531 id: `b3_${this.settings.id}`, 42532 label: this.settings["button-tertiary-label"] || "Tertiary Button Label", 42533 newWindow: this.settings["button-tertiary-newTab"], 42534 type: "button", 42535 url: this.settings["button-tertiary-url"], 42536 variants: { 42537 "icon-placement": this.settings["button-tertiary-icon-placement"], 42538 style: "tertiary" 42539 } 42540 }); 42541 } 42542 } 42543 return response; 42544 }, 42545 scrollDown() { 42546 { 42547 window.scroll({ top: 900, behavior: "smooth" }); 42548 } 42549 } 42550 } 42551}; 42552const _hoisted_1$3J = ["aria-label"]; 42553const _hoisted_2$3v = ["src"]; 42554const _hoisted_3$i = ["src", "alt"]; 42555function _sfc_render$3k(_ctx, _cache, $props, $setup, $data, $options) { 42556 const _component_CoreBlockImageCropped = __nuxt_component_0$8; 42557 const _component_CoreBlockCarousel = __nuxt_component_1$4; 42558 const _component_CoreBlockBreadcrumbs = __nuxt_component_0$6; 42559 const _component_CoreBlock = _sfc_main$4x; 42560 return openBlock(), createElementBlock("div", { 42561 class: "block__body bg-img", 42562 style: normalizeStyle($options.background), 42563 "aria-label": $options.mediaAlt, 42564 role: "img" 42565 }, [ 42566 $options.mediaSrc ? (openBlock(), createBlock(_component_CoreBlockImageCropped, { 42567 key: 0, 42568 "image-src": $options.mediaSrc, 42569 "media-metadata": $options.mediaMetadataBackground, 42570 onLoaded: _cache[0] || (_cache[0] = (value) => $data.dataUrl = value) 42571 }, null, 8, ["image-src", "media-metadata"])) : createCommentVNode("", true), 42572 createVNode(_component_CoreBlockCarousel, { 42573 settings: $options.getCarouselSettings() 42574 }, null, 8, ["settings"]), 42575 $options.mediaIsVideo ? (openBlock(), createElementBlock("iframe", { 42576 key: 1, 42577 class: "block__section_content--player", 42578 src: $options.mediaSrc, 42579 title: "Video Block", 42580 frameborder: "0", 42581 allowfullscreen: "" 42582 }, null, 8, _hoisted_2$3v)) : createCommentVNode("", true), 42583 $props.settings.showBreadcrumb ? (openBlock(), createBlock(_component_CoreBlockBreadcrumbs, { 42584 key: 2, 42585 settings: $props.settings 42586 }, null, 8, ["settings"])) : createCommentVNode("", true), 42587 createBaseVNode("div", { 42588 class: normalizeClass($options.mediaIsImg ? `hero-frame-inner-img` : `hero-frame-inner`) 42589 }, [ 42590 $options.mediaIsImg ? (openBlock(), createElementBlock("img", { 42591 key: 0, 42592 src: $options.croppedSrc, 42593 alt: $options.mediaAlt, 42594 class: "hero-img-frame-bg-img", 42595 style: normalizeStyle([{ "height": "100%", "width": "100%" }, { objectPosition: $options.mediaBackgroundPosition }]) 42596 }, null, 12, _hoisted_3$i)) : createCommentVNode("", true), 42597 (openBlock(), createBlock(resolveDynamicComponent($options.childBlockComponent), { 42598 index: 0, 42599 "is-editable": $props.isEditable, 42600 "is-first-child": true, 42601 "is-last-child": true, 42602 settings: $options.getSettings() 42603 }, null, 8, ["is-editable", "settings"])), 42604 $props.settings.showKeepScrolling ? (openBlock(), createBlock(_component_CoreBlock, { 42605 key: 1, 42606 "is-editable": $props.isEditable, 42607 settings: { 42608 type: "button", 42609 label: "Keep Scrolling", 42610 variants: { 42611 scroll: true 42612 }, 42613 event: $options.scrollDown 42614 } 42615 }, null, 8, ["is-editable", "settings"])) : createCommentVNode("", true) 42616 ], 2) 42617 ], 12, _hoisted_1$3J); 42618} 42619const CoreBlockHero = /* @__PURE__ */ _export_sfc(_sfc_main$3L, [["render", _sfc_render$3k]]); 42620const CoreBlockHero$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 42621 __proto__: null, 42622 default: CoreBlockHero 42623}, Symbol.toStringTag, { value: "Module" })); 42624function useIntersectionObserver(elementRef, options = {}) { 42625 const { 42626 rootMargin = "200px 0px", 42627 threshold = 0, 42628 enabled = true, 42629 initialHeuristic = false 42630 }
42630 = options; 42631 const getHeuristicValue = (heuristic) => typeof heuristic === "object" && "value" in heuristic ? heuristic.value : heuristic; 42632 const initialHeuristicValue = getHeuristicValue(initialHeuristic); 42633 const isAboveFold = ref(initialHeuristicValue); 42634 let observer = null; 42635 let wasAboveFoldDetermined = false; 42636 const checkInitialPosition = () => { 42637 if (!elementRef.value) return; 42638 const currentHeuristic = getHeuristicValue(initialHeuristic); 42639 if (currentHeuristic) { 42640 return; 42641 } 42642 const rect = elementRef.value.getBoundingClientRect(); 42643 const viewportHeight = window.innerHeight || 800; 42644 const rootMarginTop = parseInt(rootMargin.split(" ")[0]) || 0; 42645 const hasNoDimensions = rect.width === 0 && rect.height === 0; 42646 const isAtOrigin = rect.top === 0 && rect.left === 0 && rect.bottom === 0; 42647 const isInViewport = rect.top < viewportHeight + rootMarginTop && rect.bottom > 0; 42648 if (!wasAboveFoldDetermined) { 42649 isAboveFold.value = hasNoDimensions || isAtOrigin ? true : isInViewport; 42650 } 42651 }; 42652 if (!initialHeuristicValue) { 42653 watchEffect(() => { 42654 if (elementRef.value && true) { 42655 checkInitialPosition(); 42656 } 42657 }); 42658 } 42659 const initializeObserver = () => { 42660 const isEnabled = unref(enabled); 42661 if (!isEnabled || !elementRef.value) { 42662 return; 42663 } 42664 if (observer) { 42665 return; 42666 } 42667 checkInitialPosition(); 42668 const finalizeDetermination = () => { 42669 wasAboveFoldDetermined = true; 42670 observer.unobserve(elementRef.value); 42671 }; 42672 observer = new IntersectionObserver( 42673 (entries) => { 42674 entries.forEach((entry) => { 42675 if (!wasAboveFoldDetermined) { 42676 if (isAboveFold.value === true) { 42677 finalizeDetermination(); 42678 } else { 42679 isAboveFold.value = entry.isIntersecting; 42680 finalizeDetermination(); 42681 } 42682 } 42683 }); 42684 }, 42685 { 42686 rootMargin, 42687 threshold 42688 } 42689 ); 42690 observer.observe(elementRef.value); 42691 }; 42692 const destroyObserver = () => { 42693 if (observer) { 42694 observer.disconnect(); 42695 observer = null; 42696 } 42697 }; 42698 const isRef2 = (value) => typeof value === "object" && value !== null && "value" in value; 42699 onMounted(() => { 42700 const isEnabled = unref(enabled); 42701 if (isEnabled) { 42702 initializeObserver(); 42703 } else { 42704 checkInitialPosition(); 42705 } 42706 if (isRef2(enabled)) { 42707 watch(enabled, (newValue) => { 42708 if (newValue && !observer) { 42709 initializeObserver(); 42710 } else if (!newValue && observer) { 42711 destroyObserver(); 42712 checkInitialPosition(); 42713 } 42714 }); 42715 } 42716 if (isRef2(initialHeuristic)) { 42717 watch(initialHeuristic, (newValue) => { 42718 if (!observer || !elementRef.value) { 42719 isAboveFold.value = newValue; 42720 } 42721 }); 42722 } 42723 }); 42724 onBeforeUnmount(() => { 42725 destroyObserver(); 42726 }); 42727 return { 42728 isAboveFold 42729 }; 42730} 42731const _sfc_main$3K = { 42732 __name: "CoreBlockLazy", 42733 props: { 42734 onLoad: { 42735 type: Function, 42736 default: () => { 42737 } 42738 }, 42739 trackAboveFold: { 42740 type: Boolean, 42741 default: false 42742 }, 42743 rootMargin: { 42744 type: String, 42745 default: "200px 0px" 42746 } 42747 }, 42748 setup(__props) { 42749 const props = __props; 42750 const lazyComponent = ref(null); 42751 const observer = ref(null); 42752 const hasLoaded = ref(false); 42753 const { isAboveFold } = useIntersectionObserver(lazyComponent, { 42754 enabled: computed(() => props.trackAboveFold), 42755 rootMargin: props.rootMargin 42756 }); 42757 provide("isAboveFold", isAboveFold); 42758 const initializeObserver = () => { 42759 if (observer.value || false || !lazyComponent.value) { 42760 return; 42761 } 42762 observer.value = new IntersectionObserver( 42763 (entries, obs) => { 42764 entries.forEach((entry) => { 42765 if (!entry.isIntersecting || hasLoaded.value) { 42766 return; 42767 } 42768 hasLoaded.value = true; 42769 props.onLoad(entry.target.children); 42770 obs.unobserve(entry.target); 42771 }); 42772 }, 42773 { 42774 threshold: 0.1 42775 } 42776 ); 42777 observer.value.observe(lazyComponent.value); 42778 }; 42779 const destroyObserver = () => { 42780 if (observer.value) { 42781 observer.value.disconnect(); 42782 observer.value = null; 42783 } 42784 }; 42785 onMounted(() => { 42786 initializeObserver(); 42787 }); 42788 onBeforeUnmount(() => { 42789 destroyObserver(); 42790 }); 42791 return (_ctx, _cache) => { 42792 return openBlock(), createElementBlock("span", { 42793 ref_key: "lazyComponent", 42794 ref: lazyComponent 42795 }, [ 42796 renderSlot(_ctx.$slots, "default", { isAboveFold: unref(isAboveFold) }) 42797 ], 512); 42798 }; 42799 } 42800}; 42801const CoreBlockLazy = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 42802 __proto__: null, 42803 default: _sfc_main$3K 42804}, Symbol.toStringTag, { value: "Module" })); 42805const _hoisted_1$3I = ["data-testid", "data-expired-preset-id"]; 42806const _hoisted_2$3u = ["id"]; 42807const _hoisted_3$h = ["src", "title", "loading", "fetchpriority", "width", "height"]; 42808const _hoisted_4$e = ["src", "poster", "preload", "width", "height"]; 42809const _hoisted_5$c = { key: 0 }; 42810const _hoisted_6$8 = ["id"];
42811const _hoisted_7$7 = ["src", "title", "loading", "fetchpriority", "width", "height"]; 42812const _hoisted_8$7 = ["src", "poster", "preload", "width", "height"]; 42813const _hoisted_9$6 = { 42814 key: 3, 42815 class: "block__inline-media" 42816}; 42817const _sfc_main$3J = { 42818 __name: "CoreBlockVideo", 42819 props: { 42820 settings: { 42821 type: Object, 42822 required: true 42823 }, 42824 isEditable: { 42825 type: Boolean, 42826 default: false 42827 }, 42828 isBuilderMobile: { 42829 type: Boolean, 42830 default: false 42831 }, 42832 index: { 42833 type: Number, 42834 default: 0 42835 }, 42836 nestedLevel: { 42837 type: Number, 42838 default: 0 42839 }, 42840 // Builder-only: enables inline canvas editing capability for this block. 42841 // SiteViewer never sets this, so published sites are unaffected. 42842 inlineEditable: { 42843 type: Boolean, 42844 default: false 42845 }, 42846 // Builder-only: whether inline editing is currently active for this block. 42847 inlineEditing: { 42848 type: Boolean, 42849 default: false 42850 } 42851 }, 42852 setup(__props) { 42853 const props = __props; 42854 const store = useStore(); 42855 const { state } = store; 42856 const seoVideoImprovementsFF = computed( 42857 () => { 42858 var _a, _b; 42859 return !!((_b = (_a = state == null ? void 0 : state.settings) == null ? void 0 : _a.featureFlags) == null ? void 0 : _b.SeoVideoImprovements); 42860 } 42861 ); 42862 const { mobileSettingsFF, isMobile, imageWidthNumeric, imageHeightNumeric } = useIsMobile(props, { 42863 widthValue: computed( 42864 () => { 42865 var _a, _b, _c; 42866 return ((_a = props.settings) == null ? void 0 : _a.width) || ((_c = (_b = props.settings) == null ? void 0 : _b.extraProps) == null ? void 0 : _c.width); 42867 } 42868 ), 42869 heightValue: computed( 42870 () => { 42871 var _a, _b, _c; 42872 return ((_a = props.settings) == null ? void 0 : _a.height) || ((_c = (_b = props.settings) == null ? void 0 : _b.extraProps) == null ? void 0 : _c.height); 42873 } 42874 ) 42875 }); 42876 const videoElementRef = ref(null); 42877 const { isAboveFold } = useIntersectionObserver(videoElementRef, { 42878 enabled: true, 42879 initialHeuristic: computed( 42880 () => props.nestedLevel <= 2 && props.index === 0 42881 ) 42882 }); 42883 const componentId = Math.random().toString(36).substr(2, 9); 42884 const htmlVideoId = `jwplayer-script-video-${componentId}`; 42885 const { isExpired, expiredPresetId } = useIsExpired( 42886 props.settings, 42887 (item) => item.type === props.settings.type 42888 ); 42889 const { showInlineEditor } = useInlineMediaEdit(props, { 42890 mediaKey: "src", 42891 isExpired 42892 }); 42893 const shouldHideOnMobile = computed(() => { 42894 var _a; 42895 return mobileSettingsFF.value && ((_a = props.settings) == null ? void 0 : _a.hideOnMobile) === true && (isMobile.value || props.isBuilderMobile); 42896 }); 42897 const videoContainer = ref(null); 42898 const shouldLoadVideo = ref(false); 42899 const mediaSrc = computed(() => { 42900 var _a; 42901 return (_a = props.settings) == null ? void 0 : _a.src; 42902 }); 42903 const { 42904 mediaUrl: src, 42905 isBlobFile: isFile2, 42906 isEMoney: isEMoneyUrl, 42907 videoAutoPlayUrl, 42908 videoLoopUrl 42909 } = useMedia(mediaSrc); 42910 const { prefersReducedMotion } = useReducedMotion(); 42911 const shouldUseLazyLoading = computed(() => { 42912 if (!mobileSettingsFF.value || isExpired.value || !src.value) return false; 42913 if (seoVideoImprovementsFF.value) return !isAboveFold.value; 42914 return true; 42915 }); 42916 const fullSrc = computed(() => { 42917 if (!src.value) return; 42918 const shouldDisableAutoplay = prefersReducedMotion.value || !props.settings.autoPlay; 42919 if (shouldDisableAutoplay) { 42920 try { 42921 const videoUrl = new URL(src.value); 42922 videoUrl.searchParams.set("autoplay", "false"); 42923 if (props.isEditable) { 42924 videoUrl.searchParams.set("muted", "1"); 42925 } 42926 return videoUrl.toString(); 42927 } catch (error) { 42928 return src.value; 42929 } 42930 } 42931 if (props.settings.autoPlay && props.settings.loop) 42932 return videoLoopUrl.value; 42933 if (props.settings.autoPlay) return videoAutoPlayUrl.value; 42934 return src.value; 42935 }); 42936 const playerId = computed(() => { 42937 if (isEMoneyUrl.value) { 42938 return mediaHelper.checkIfHasPlayerId(src.value); 42939 } 42940 return ""; 42941 }); 42942 const loadingStrategy = computed(() => { 42943 if (seoVideoImprovementsFF.value) 42944 return isAboveFold.value ? "eager" : "lazy"; 42945 if (!mobileSettingsFF.value) return void 0; 42946 return isAboveFold.value ? "eager" : "lazy"; 42947 }); 42948 const fetchPriority = computed(() => { 42949 if (seoVideoImprovementsFF.value) return isAboveFold.value ? "high" : "low"; 42950 if (!mobileSettingsFF.value) return void 0; 42951 return isAboveFold.value ? "high" : "low"; 42952 }); 42953 const videoWidth = computed(() => { 42954 if (!mobileSettingsFF.value) return void 0; 42955 return imageWidthNumeric.value; 42956 }); 42957 const videoHeight = computed(() => { 42958 if (!mobileSettingsFF.value) return void 0; 42959 return imageHeightNumeric.value; 42960 }); 42961 const videoStyle = computed(() => { 42962 if (!mobileSettingsFF.value) return void 0; 42963 return { 42964 "max-width": "100vw" 42965 }; 42966 }); 42967 const posterUrl = computed(() => { 42968 var _a, _b; 42969 const url = ((_a = props.settings) == null ? void 0 : _a.thumbnailUrl) || ((_b = props.settings) == null ? void 0 : _b.posterUrl); 42970 return url || void 0; 42971 }); 42972 const videoPreload = computed(() => { 42973 if (shouldUseLazyLoading.value && !isAboveFold.value) return "none"; 42974 return "metadata"; 42975 }); 42976 const iframeTitle = computed(() => { 42977 var _a; 42978 return ((_a = props.settings) == null ? void 0 : _a.videoTitle) || "Video Block"; 42979 }); 42980 function loadPlayer() { 42981 if (!src.value || !playerId.value) { 42982 return; 42983 } 42984 const allPlayersWithId = document.querySelectorAll( 42985 `[id="${playerId.value}"]` 42986 ); 42987 const currentContainer = document.getElementById(playerId.value); 42988 for (const player of allPlayersWithId) { 42989 if (player !== currentContainer && player.innerHTML && (player.innerHTML.includes("jwplayer") || player.querySelector("video, iframe"))) { 42990 const clone = player.cloneNode(true); 42991 clone.id = `${playerId.value}-${componentId}`; 42992 const nestedElements = clone.querySelectorAll( 42993 `[id="${playerId.value}"]` 42994 );
42995 nestedElements.forEach((el) => { 42996 el.id = `${playerId.value}-${componentId}`; 42997 }); 42998 currentContainer.innerHTML = ""; 42999 currentContainer.appendChild(clone); 43000 return; 43001 } 43002 } 43003 const existingPlayerScript = document.getElementById(htmlVideoId); 43004 if (existingPlayerScript) { 43005 removeLoadedVideoScript(); 43006 } 43007 const script = document.createElement("script"); 43008 script.id = htmlVideoId; 43009 script.src = src.value; 43010 document.head.appendChild(script); 43011 } 43012 function removeLoadedVideoScript() { 43013 const existingVideoScript = document.getElementById(htmlVideoId); 43014 if (existingVideoScript) { 43015 existingVideoScript.parentNode.removeChild(existingVideoScript); 43016 } 43017 } 43018 const handleLazyLoad = async () => { 43019 shouldLoadVideo.value = true; 43020 if (isEMoneyUrl.value && isEMoneyUrl.value.length > 0) { 43021 await ensureJwLibraryLoaded(); 43022 loadPlayer(); 43023 } 43024 }; 43025 if (props.isEditable) { 43026 watch(isEMoneyUrl, async (newVal) => { 43027 if (newVal && newVal.length > 0) { 43028 await ensureJwLibraryLoaded(); 43029 loadPlayer(); 43030 } else { 43031 removeLoadedVideoScript(); 43032 } 43033 }); 43034 watch(src, async (newSrc, oldSrc) => { 43035 if (newSrc !== oldSrc && isEMoneyUrl.value) { 43036 await ensureJwLibraryLoaded(); 43037 loadPlayer(); 43038 } 43039 }); 43040 } 43041 onMounted(async () => { 43042 if (shouldUseLazyLoading.value) { 43043 return; 43044 } 43045 if (isEMoneyUrl.value && isEMoneyUrl.value.length > 0) { 43046 await ensureJwLibraryLoaded(); 43047 loadPlayer(); 43048 } 43049 }); 43050 return (_ctx, _cache) => { 43051 const _component_CoreBlock = _sfc_main$4x; 43052 return !shouldHideOnMobile.value ? (openBlock(), createElementBlock("div", { 43053 key: 0, 43054 ref_key: "videoElementRef", 43055 ref: videoElementRef, 43056 class: "block__body" 43057 }, [ 43058 unref(isExpired) ? (openBlock(), createElementBlock("div", { 43059 key: 0, 43060 "data-testid": `${__props.settings.type}-expired`, 43061 "data-expired-preset-id": unref(expiredPresetId), 43062 class: "expired-content" 43063 }, null, 8, _hoisted_1$3I)) : createCommentVNode("", true), 43064 __props.settings.showHeadline && __props.settings.videoHeadline && !unref(isExpired) ? (openBlock(), createBlock(_component_CoreBlock, { 43065 key: 1, 43066 "is-editable": __props.isEditable, 43067 settings: { 43068 bodyText: __props.settings.videoHeadline, 43069 type: "rich-text", 43070 variants: { 43071 "padding-bottom": "pb-small", 43072 "padding-top": "pt-small", 43073 size: "headline" 43074 }, 43075 contentLibraryItems: __props.settings.contentLibraryItems 43076 } 43077 }, null, 8, ["is-editable", "settings"])) : createCommentVNode("", true), 43078 !unref(isExpired) ? (openBlock(), createElementBlock(Fragment, { key: 2 }, [ 43079 shouldUseLazyLoading.value ? (openBlock(), createBlock(_sfc_main$3K, { 43080 key: 0, 43081 "on-load": handleLazyLoad 43082 }, { 43083 default: withCtx(() => [ 43084 unref(isEMoneyUrl) ? (openBlock(), createElementBlock("div", { 43085 key: 0, 43086 id: playerId.value, 43087 ref_key: "videoContainer", 43088 ref: videoContainer 43089 }, null, 8, _hoisted_2$3u)) : (openBlock(), createElementBlock("div", { 43090 key: 1, 43091 ref_key: "videoContainer", 43092 ref: videoContainer, 43093 class: "block__section_content", 43094 style: normalizeStyle(unref(mobileSettingsFF) ? videoStyle.value : void 0) 43095 }, [ 43096 !unref(isFile2) && shouldLoadVideo.value ? (openBlock(), createElementBlock("iframe", { 43097 key: 0, 43098 class: "block__section_content--player", 43099 type: "video", 43100 src: fullSrc.value, 43101 title: iframeTitle.value, 43102 allow: "fullscreen;encrypted-media", 43103 loading: loadingStrategy.value, 43104 fetchpriority: fetchPriority.value, 43105 width: unref(mobileSettingsFF) ? videoWidth.value : void 0, 43106 height: unref(mobileSettingsFF) ? videoHeight.value : void 0 43107 }, null, 8, _hoisted_3$h)) : createCommentVNode("", true), 43108 unref(isFile2) && shouldLoadVideo.value ? (openBlock(), createElementBlock("video", mergeProps({ 43109 key: 1, 43110 controls: "", 43111 playsinline: "", 43112 class: "block__section_content--player", 43113 src: unref(src), 43114 poster: posterUrl.value, 43115 preload: videoPreload.value, 43116 width: unref(mobileSettingsFF) ? videoWidth.value : void 0, 43117 height: unref(mobileSettingsFF) ? videoHeight.value : void 0 43118 }, _ctx.$attrs), null, 16, _hoisted_4$e)) : createCommentVNode("", true) 43119 ], 4)) 43120 ]), 43121 _: 1 43122 })) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [ 43123 unref(isEMoneyUrl) ? (openBlock(), createElementBlock("div", _hoisted_5$c, [ 43124 createBaseVNode("div", { id: playerId.value }, null, 8, _hoisted_6$8) 43125 ])) : (openBlock(), createElementBlock("div", { 43126 key: 1, 43127 class: "block__section_content", 43128 style: normalizeStyle(unref(mobileSettingsFF) ? videoStyle.value : void 0) 43129 }, [ 43130 !unref(isFile2) ? (openBlock(), createElementBlock("iframe", { 43131 key: 0, 43132 class: "block__section_content--player", 43133 type: "video", 43134 src: fullSrc.value, 43135 title: iframeTitle.value, 43136 allow: "fullscreen;encrypted-media", 43137 loading: loadingStrategy.value, 43138 fetchpriority: fetchPriority.value, 43139 width: unref(mobileSettingsFF) ? videoWidth.value : void 0, 43140 height: unref(mobileSettingsFF) ? videoHeight.value : void 0 43141 }, null, 8, _hoisted_7$7)) : createCommentVNode("", true), 43142 unref(isFile2) ? (openBlock(), createElementBlock("video", mergeProps({ 43143 key: 1, 43144 controls: "", 43145 playsinline: "", 43146 class: "block__section_content--player", 43147 src: unref(src), 43148 poster: posterUrl.value, 43149 preload: videoPreload.value, 43150 width: unref(mobileSettingsFF) ? videoWidth.value : void 0, 43151 height: unref(mobileSettingsFF) ? videoHeight.value : void 0 43152 }, _ctx.$attrs), null, 16, _hoisted_8$7)) : createCommentVNode("", true) 43153 ], 4)) 43154 ], 64)) 43155 ], 64)) : createCommentVNode("", true), 43156 unref(showInlineEditor) ? (openBlock(), createElementBlock("div", _hoisted_9$6, [ 43157 renderSlot(_ctx.$slots, "inline-editor", { field: "src" }) 43158 ])) : createCommentVNode("", true) 43159 ], 512)) : createCommentVNode("", true); 43160 }; 43161 } 43162}; 43163const CoreBlockVideo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 43164 __proto__: null, 43165 default: _sfc_main$3J 43166}, Symbol.toStringTag, { value: "Module" })); 43167const _hoisted_1$3H = { 43168 key: 0, 43169 "data-testid": "hero-expired", 43170 class: "expired-content" 43171}; 43172const _hoisted_2$3t = ["aria-label"]; 43173const _hoisted_3$g = { 43174 key: 2, 43175 class: "hosted-video-container" 43176}; 43177const _hoisted_4$d = ["aria-label"]; 43178const _hoisted_5$b = { 43179 key: 5,
43180 class: "block__inline-media" 43181}; 43182const _sfc_main$3I = /* @__PURE__ */ Object.assign({ 43183 name: "CoreBlockHeroBackground" 43184}, { 43185 __name: "CoreBlockHeroBackground", 43186 props: { 43187 slide: { 43188 type: Object, 43189 default: () => ({ 43190 src: "", 43191 focal: {} 43192 }) 43193 }, 43194 slideIndex: { 43195 type: Number, 43196 default: null 43197 }, 43198 currentSlide: { 43199 type: Number, 43200 default: 0 43201 }, 43202 componentType: { 43203 type: String, 43204 default: "contact-card" 43205 }, 43206 // Whether the content-card variant's own media field is eligible for 43207 // inline editing. Only true when componentType is "content-card" and it 43208 // actually has its own media configured. 43209 cardMediaEligible: { 43210 type: Boolean, 43211 default: false 43212 }, 43213 overlay: { 43214 type: Object, 43215 default: () => ({}) 43216 }, 43217 backgroundClasses: { 43218 type: Array, 43219 default: () => [] 43220 }, 43221 // Builder-only: enables inline canvas editing capability for this block. 43222 // SiteViewer never sets this, so published sites are unaffected. 43223 inlineEditable: { 43224 type: Boolean, 43225 default: false 43226 }, 43227 // Builder-only: whether inline editing is currently active for this block. 43228 inlineEditing: { 43229 type: Boolean, 43230 default: false 43231 } 43232 }, 43233 setup(__props) { 43234 var _a, _b; 43235 const props = __props; 43236 const store = useStore(); 43237 const { state } = store; 43238 const croppedImage = ref(null); 43239 const videoPaused = ref(true); 43240 const imageLoadTimeout = ref(null); 43241 const itemCheckFunction = (item) => (item == null ? void 0 : item.propertyKey) === "heroBackgroundMediaSrc"; 43242 const { isExpired } = useIsExpired(props.slide, itemCheckFunction); 43243 const { 43244 canInlineEdit: canInlineEditBackground, 43245 showInlineEditor: canShowInlineMediaEditor, 43246 enter: enterBackgroundMedia 43247 } = useInlineMediaEdit(props, { 43248 mediaKey: "heroBackgroundMediaSrc", 43249 getSource: () => { 43250 var _a2; 43251 return (_a2 = props.slide) == null ? void 0 : _a2.src; 43252 }, 43253 isExpired, 43254 // Only the content-card variant gates on exclusivity with its sibling 43255 // CoreBlockContentCard's fields (see CoreBlockHeroComponent.vue) - the 43256 // contact-card/background variants have no such sibling and keep 43257 // today's auto-show-on-selection behavior (no fieldKey). 43258 fieldKey: props.componentType === "content-card" ? "heroBackgroundMediaSrc" : void 0, 43259 activeField: injectInlineActiveField() 43260 }); 43261 const showInlineEditor = computed( 43262 () => canShowInlineMediaEditor.value && props.slideIndex === props.currentSlide && !props.cardMediaEligible 43263 ); 43264 const backgroundMediaEditable = computed( 43265 () => props.inlineEditable && props.inlineEditing && canInlineEditBackground.value && props.componentType === "content-card" && !props.cardMediaEligible && props.slideIndex === props.currentSlide 43266 ); 43267 const handleBackgroundClick = (event) => { 43268 if (!backgroundMediaEditable.value) return; 43269 enterBackgroundMedia(event); 43270 }; 43271 const mediaSrc = computed(() => { 43272 var _a2; 43273 return (_a2 = props.slide) == null ? void 0 : _a2.src; 43274 }); 43275 const { 43276 isEMoney: isEMoneyUrl, 43277 isImage: mediaIsImg, 43278 isUploadedVideo, 43279 isVideo 43280 } = useMedia(mediaSrc); 43281 const root2 = useRoot(); 43282 const videoTemplateRef = ref(null); 43283 const video = computed(() => { 43284 var _a2, _b2; 43285 return (_b2 = (_a2 = videoTemplateRef.value) == null ? void 0 : _a2.$el) == null ? void 0 : _b2.querySelector("video"); 43286 }); 43287 const mobileSettingsFF = (_b = (_a = state == null ? void 0 : state.settings) == null ? void 0 : _a.featureFlags) == null ? void 0 : _b.MobileSettings; 43288 const computedVideoObject = computed(() => { 43289 var _a2, _b2, _c; 43290 return { 43291 src: (_a2 = props.slide) == null ? void 0 : _a2.src, 43292 autoPlay: (_b2 = props.slide) == null ? void 0 : _b2.autoPlay, 43293 loop: (_c = props.slide) == null ? void 0 : _c.loop 43294 }; 43295 }); 43296 const staticVideoClass = { 43297 "hosted-video-container_eMoney": isEMoneyUrl 43298 }; 43299 const computedVideoBind = computed(() => { 43300 return { 43301 muted: true, 43302 playsinline: true 43303 }; 43304 }); 43305 const background = computed(() => { 43306 var _a2, _b2, _c; 43307 return { 43308 "background-image": `url(${croppedImage.value || mediaHelper.getEncodedURI((_a2 = props.slide) == null ? void 0 : _a2.src)})`, 43309 "background-position": (_c = (_b2 = props.slide) == null ? void 0 : _b2.focal) == null ? void 0 : _c.bgPosition, 43310 "background-repeat": "no-repeat", 43311 "background-size": "cover", 43312 height: "inherit" 43313 }; 43314 }); 43315 const toggleVideoStatus = () => { 43316 if (video.value) { 43317 video.value.paused ? video.value.play() : video.value.pause(); 43318 videoPaused.value = video.value.paused; 43319 } 43320 };
43321 const emitBackgroundReady = () => { 43322 if (!root2.$emit) return; 43323 root2.$emit("backgroundReady"); 43324 }; 43325 const handleCanPlay = () => { 43326 emitBackgroundReady(); 43327 }; 43328 const initializeVideoReady = async () => { 43329 if (mediaIsImg.value) { 43330 if (!mobileSettingsFF || !needsCanvasProcessing.value && !isExpired.value) { 43331 emitBackgroundReady(); 43332 } 43333 return; 43334 } 43335 if (!isUploadedVideo.value || isEMoneyUrl.value) { 43336 emitBackgroundReady(); 43337 return; 43338 } 43339 await nextTick(); 43340 if (!video.value) { 43341 emitBackgroundReady(); 43342 } 43343 }; 43344 const needsCanvasProcessing = computed(() => { 43345 var _a2, _b2; 43346 if (!mobileSettingsFF) return true; 43347 return !!((_b2 = (_a2 = props.slide) == null ? void 0 : _a2.crop) == null ? void 0 : _b2.image); 43348 }); 43349 const cropSignature = computed( 43350 () => { 43351 var _a2, _b2, _c; 43352 return JSON.stringify([(_a2 = props.slide) == null ? void 0 : _a2.src, (_b2 = props.slide) == null ? void 0 : _b2.crop, (_c = props.slide) == null ? void 0 : _c.focal]); 43353 } 43354 ); 43355 const applyOverlay = computed(() => { 43356 var _a2; 43357 if (isVideo.value) return false; 43358 return ((_a2 = props.overlay) == null ? void 0 : _a2.enabled) ?? false; 43359 }); 43360 watch( 43361 () => props.currentSlide, 43362 (nv) => { 43363 if (!mediaIsImg.value && isUploadedVideo.value && video.value) { 43364 if (nv == props.slideIndex) { 43365 video.value.play(); 43366 videoPaused.value = false; 43367 } else { 43368 video.value.pause(); 43369 videoPaused.value = true; 43370 } 43371 } 43372 } 43373 ); 43374 watch( 43375 [mediaIsImg, needsCanvasProcessing, isExpired], 43376 ([isImg, needsCanvas, expired]) => { 43377 if (mobileSettingsFF && isImg && !needsCanvas && !expired) { 43378 emitBackgroundReady(); 43379 } 43380 }, 43381 { immediate: true } 43382 ); 43383 watch(cropSignature, () => { 43384 if (!mobileSettingsFF) return; 43385 if (imageLoadTimeout.value) { 43386 clearTimeout(imageLoadTimeout.value); 43387 imageLoadTimeout.value = null; 43388 } 43389 croppedImage.value = null; 43390 }); 43391 watch(croppedImage, (newValue, oldValue) => { 43392 if (mobileSettingsFF && mediaIsImg.value && needsCanvasProcessing.value && oldValue === null && newValue !== null) { 43393 if (imageLoadTimeout.value) { 43394 clearTimeout(imageLoadTimeout.value); 43395 imageLoadTimeout.value = null; 43396 } 43397 emitBackgroundReady(); 43398 } 43399 }); 43400 watch(isExpired, async (newValue, oldValue) => { 43401 if (newValue && video.value) { 43402 video.value.removeEventListener("canplay", handleCanPlay); 43403 } else if (!newValue && oldValue) { 43404 await initializeVideoReady(); 43405 } 43406 }); 43407 watch(video, (newVideo) => { 43408 if (newVideo && !isExpired.value && isUploadedVideo.value && !isEMoneyUrl.value) { 43409 newVideo.removeEventListener("canplay", handleCanPlay); 43410 if (newVideo.readyState >= 2) { 43411 emitBackgroundReady(); 43412 } else { 43413 newVideo.addEventListener("canplay", handleCanPlay); 43414 } 43415 } 43416 }); 43417 onMounted(async () => { 43418 if (isExpired.value) { 43419 emitBackgroundReady(); 43420 return; 43421 } 43422 await initializeVideoReady(); 43423 if (mobileSettingsFF && mediaIsImg.value && needsCanvasProcessing.value && !isExpired.value) { 43424 imageLoadTimeout.value = setTimeout(() => { 43425 if (croppedImage.value === null) { 43426 emitBackgroundReady(); 43427 } 43428 imageLoadTimeout.value = null; 43429 }, 5e3); 43430 } 43431 if (!mediaIsImg.value && isUploadedVideo.value && props.slideIndex === 0) 43432 videoPaused.value = false; 43433 }); 43434 onBeforeUnmount(() => { 43435 if (video.value) { 43436 video.value.removeEventListener("canplay", handleCanPlay); 43437 } 43438 if (imageLoadTimeout.value) { 43439 clearTimeout(imageLoadTimeout.value); 43440 imageLoadTimeout.value = null; 43441 } 43442 }); 43443 return (_ctx, _cache) => { 43444 var _a2; 43445 const _component_CoreBlockImageCropped = __nuxt_component_0$8; 43446 const _component_CoreBlockVideo = _sfc_main$3J; 43447 const _component_CoreIcon = __nuxt_component_1$7; 43448 return openBlock(), createElementBlock("div", { 43449 style: { "height": "inherit", "position": "relative" }, 43450 class: normalizeClass({ "hero-bg--editable": backgroundMediaEditable.value }),
43451 onClick: handleBackgroundClick 43452 }, [ 43453 unref(isExpired) ? (openBlock(), createElementBlock("div", _hoisted_1$3H)) : createCommentVNode("", true), 43454 unref(mediaIsImg) && !unref(isExpired) ? (openBlock(), createElementBlock("div", { 43455 key: 1, 43456 class: normalizeClass(`bg-img ${__props.componentType === "content-card" ? "bg-img_content-card" : ""}`), 43457 style: normalizeStyle(background.value), 43458 "aria-label": __props.slide.alt, 43459 role: "img" 43460 }, [ 43461 __props.slide.src && needsCanvasProcessing.value ? (openBlock(), createBlock(_component_CoreBlockImageCropped, { 43462 key: 0, 43463 "image-src": __props.slide.src, 43464 "media-metadata": { 43465 ...__props.slide.crop, 43466 ...__props.slide.focal 43467 }, 43468 onLoaded: _cache[0] || (_cache[0] = (value) => croppedImage.value = value) 43469 }, null, 8, ["image-src", "media-metadata"])) : createCommentVNode("", true) 43470 ], 14, _hoisted_2$3t)) : !unref(isExpired) ? (openBlock(), createElementBlock("div", _hoisted_3$g, [ 43471 createVNode(_component_CoreBlockVideo, mergeProps({ 43472 ref_key: "videoTemplateRef", 43473 ref: videoTemplateRef, 43474 class: staticVideoClass, 43475 settings: computedVideoObject.value 43476 }, computedVideoBind.value), null, 16, ["settings"]), 43477 !unref(isEMoneyUrl) && unref(isUploadedVideo) && !unref(isExpired) ? (openBlock(), createElementBlock("div", { 43478 key: 0, 43479 class: "playBtn", 43480 role: "button", 43481 "aria-label": videoPaused.value ? "Play Video" : "Pause Video", 43482 tabindex: "0", 43483 onClick: toggleVideoStatus, 43484 onKeyup: withKeys(toggleVideoStatus, ["enter"]) 43485 }, [ 43486 createVNode(_component_CoreIcon, { 43487 icon: videoPaused.value ? "play-circle-button" : "pause-circle" 43488 }, null, 8, ["icon"]) 43489 ], 40, _hoisted_4$d)) : createCommentVNode("", true) 43490 ])) : createCommentVNode("", true), 43491 ((_a2 = __props.backgroundClasses) == null ? void 0 : _a2.length) ? (openBlock(), createElementBlock("div", { 43492 key: 3, 43493 class: normalizeClass(["plain-background", __props.backgroundClasses]) 43494 }, null, 2)) : createCommentVNode("", true), 43495 applyOverlay.value ? (openBlock(), createElementBlock("div", { 43496 key: 4, 43497 class: normalizeClass(__props.overlay.classes) 43498 }, null, 2)) : createCommentVNode("", true), 43499 showInlineEditor.value ? (openBlock(), createElementBlock("div", _hoisted_5$b, [ 43500 renderSlot(_ctx.$slots, "inline-editor", { 43501 field: "heroBackgroundMediaSrc", 43502 index: __props.slideIndex 43503 }) 43504 ])) : createCommentVNode("", true) 43505 ], 2); 43506 }; 43507 } 43508}); 43509const CoreBlockHeroBackground = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 43510 __proto__: null, 43511 default: _sfc_main$3I 43512}, Symbol.toStringTag, { value: "Module" })); 43513const _hoisted_1$3G = { 43514 key: 0, 43515 class: "slider-wrapper" 43516}; 43517const _hoisted_2$3s = { 43518 id: "slides-container", 43519 class: "slides-container" 43520}; 43521const _hoisted_3$f = { class: "block__control block__control_nav" }; 43522const _hoisted_4$c = ["aria-label", "onClick", "onKeyup"]; 43523const _hoisted_5$a = ["aria-label"]; 43524const _hoisted_6$7 = { 43525 key: 1, 43526 class: "mobile-placeholder-wrapper" 43527}; 43528const _hoisted_7$6 = ["src", "alt", "loading", "fetchpriority", "width", "height", "sizes"]; 43529const _hoisted_8$6 = ["aria-label"]; 43530const _hoisted_9$5 = { 43531 key: 2, 43532 class: "contact-card-inner" 43533}; 43534const _hoisted_10$5 = { 43535 key: 3, 43536 class: "content-card-inner" 43537}; 43538const _sfc_main$3H = /* @__PURE__ */ Object.assign({ 43539 name: "CoreBlockHero" 43540}, { 43541 __name: "CoreBlockHeroComponent", 43542 props: { 43543 index: { 43544 type: Number, 43545 default: 0 43546 }, 43547 settings: { 43548 type: Object, 43549 required: true 43550 }, 43551 isEditable: { 43552 type: Boolean, 43553 default: false 43554 }, 43555 dataSite: { 43556 type: Object, 43557 required: true 43558 }, 43559 isBuilderMobile: { 43560 type: Boolean, 43561 default: false 43562 }, 43563 nestedLevel: { 43564 type: Number, 43565 default: 0 43566 }, 43567 isFirstPageLevelBlock: { 43568 type: Boolean, 43569 default: void 0 43570 }, 43571 // Builder-only: forwarded to the nested content-card CoreBlock to enable
43572 // inline canvas editing. Defaults off so SiteViewer is inert. 43573 inlineEditable: { 43574 type: Boolean, 43575 default: false 43576 }, 43577 // Builder-only: whether inline editing is currently active for this block. 43578 inlineEditing: { 43579 type: Boolean, 43580 default: false 43581 }, 43582 inlineDisabledFields: { 43583 type: Array, 43584 default: () => [] 43585 } 43586 }, 43587 setup(__props) { 43588 var _a; 43589 const props = __props; 43590 provide(SCROLL_ANIMATION_EXCLUDED_KEY, true); 43591 const heroActiveField = ref(null); 43592 if (["content-card", "contact-card"].includes( 43593 ((_a = props.settings) == null ? void 0 : _a.component) || "content-card" 43594 )) { 43595 provideInlineActiveField(heroActiveField); 43596 } 43597 const store = useStore(); 43598 const { state } = store; 43599 const currentSlide = ref(0); 43600 watch(currentSlide, () => { 43601 heroActiveField.value = null; 43602 }); 43603 const slidesContainer = ref(null); 43604 const slide = ref(null); 43605 const slideWidth = ref(null); 43606 const autoSlide = ref(null); 43607 const autoSlidePaused = ref(false); 43608 const lastSlideChangeTime = ref(0); 43609 const throttleDuration = ref(400); 43610 const mobilePlaceholderCropped = ref(null); 43611 const root2 = useRoot(); 43612 const useBrandSpecificComponents = inject("useBrandSpecificComponents", false); 43613 const { componentModule: contactCardModule } = useLoadComponent( 43614 { 43615 ...props, 43616 settings: { type: "contact-card" } 43617 }, 43618 { useBrandSpecificComponents } 43619 ); 43620 const { applyOffset: applyNavOffset, insetsOwnContent: navOffsetInsets } = useBlockNavOffset(props); 43621 const heroHeightStyle = computed(() => { 43622 const baseHeight = `${props.settings.heroHeight || 700}px`; 43623 if (!applyNavOffset.value || !navOffsetInsets.value) return baseHeight; 43624 return `calc(${baseHeight} + var(--_core__nav-offset_height-bump, 0px))`; 43625 }); 43626 const componentSettings = computed(() => { 43627 if (componentType.value === "content-card") { 43628 return { 43629 ...props.settings, 43630 type: "content-card" 43631 }; 43632 } else { 43633 return { 43634 ...props.settings, 43635 newWindow: props.settings.buttonNewWindow || false, 43636 newWindow2: props.settings.buttonNewWindow2 || false 43637 }; 43638 } 43639 }); 43640 const randomIndex = useState("hero-random-index", () => 0); 43641 const filteredHeroBackgroundMediaSrc = computed(() => { 43642 var _a2, _b; 43643 return ((_b = (_a2 = props.settings) == null ? void 0 : _a2.heroBackgroundMediaSrc) == null ? void 0 : _b.filter( 43644 (image) => image.src && image.src !== "" 43645 )) || []; 43646 }); 43647 const carouselSlides = computed(() => { 43648 var _a2; 43649 if (hasMobilePlaceholder.value) { 43650 return []; 43651 } 43652 let heroBackgroundMediaSrc = filteredHeroBackgroundMediaSrc.value; 43653 if (randomSlideEnabled.value) { 43654 if (randomIndex.value > 0) { 43655 const [randomItem] = heroBackgroundMediaSrc.splice( 43656 randomIndex.value, 43657 1 43658 ); 43659 heroBackgroundMediaSrc.unshift(randomItem); 43660 } 43661 } 43662 const contentLibraryItems = ((_a2 = props.settings) == null ? void 0 : _a2.contentLibraryItems) || []; 43663 return heroBackgroundMediaSrc.map((heroItem) => { 43664 var _a3, _b; 43665 const matchingItem = contentLibraryItems.find( 43666 (item) => item.localItemId === heroItem.localItemId 43667 ); 43668 const autoPlay = (_a3 = props.settings) == null ? void 0 : _a3.autoPlay; 43669 const loop = (_b = props.settings) == null ? void 0 : _b.loop; 43670 return { 43671 ...heroItem, 43672 contentLibraryItems: [matchingItem], 43673 autoPlay, 43674 loop 43675 }; 43676 }); 43677 }); 43678 const applyOverlay = computed(() => { 43679 var _a2, _b, _c, _d; 43680 return !!((_b = (_a2 = props.settings) == null ? void 0 : _a2.variants) == null ? void 0 : _b.overlay) || !!((_d = (_c = props.settings) == null ? void 0 : _c.variants) == null ? void 0 : _d.gradient); 43681 }); 43682 const overlayClasses = computed(() => { 43683 var _a2, _b, _c, _d, _e, _f, _g, _h; 43684 if (!((_b = (_a2 = props.settings) == null ? void 0 : _a2.variants) == null ? void 0 : _b.overlay) && !((_d = (_c = props.settings) == null ? void 0 : _c.variants) == null ? void 0 : _d.gradient)) 43685 return false;
43686 return { 43687 "slide-overlay": (_f = (_e = props.settings) == null ? void 0 : _e.variants) == null ? void 0 : _f.overlay, 43688 "slide-gradient": (_h = (_g = props.settings) == null ? void 0 : _g.variants) == null ? void 0 : _h.gradient 43689 }; 43690 }); 43691 const backgroundClasses = computed(() => { 43692 var _a2, _b; 43693 const color = (_b = (_a2 = props.settings) == null ? void 0 : _a2.variants) == null ? void 0 : _b["hero-background-color"]; 43694 if (!color) return []; 43695 return ["plain-background_" + color]; 43696 }); 43697 const overlay = computed(() => { 43698 return { 43699 enabled: applyOverlay.value, 43700 classes: overlayClasses.value 43701 }; 43702 }); 43703 const componentType = computed(() => { 43704 var _a2; 43705 return ((_a2 = props.settings) == null ? void 0 : _a2.component) || "content-card"; 43706 }); 43707 const cardMediaEligible = computed( 43708 () => isHeroCardMediaEligible(props.settings) 43709 ); 43710 const displayCarouselControls = computed(() => { 43711 if (isRandomMode.value) return false; 43712 return carouselSlides.value.length > 1; 43713 }); 43714 const autoSlideEnabled = computed(() => { 43715 var _a2, _b; 43716 return ((_b = (_a2 = state == null ? void 0 : state.settings) == null ? void 0 : _a2.featureFlags) == null ? void 0 : _b.HeroComponentEnhancements) && carouselSlides.value.length > 1 && props.settings["background-mode"] === "auto" && !props.isEditable; 43717 }); 43718 const siteAnimationsFeatureEnabled = computed( 43719 () => { 43720 var _a2, _b; 43721 return ((_b = (_a2 = store.getters) == null ? void 0 : _a2["settings/getFeatureFlag"]) == null ? void 0 : _b.call(_a2, "SiteAnimations")) === true; 43722 } 43723 ); 43724 let fadeRaf1 = null; 43725 let fadeRaf2 = null; 43726 const fadeComponent = () => { 43727 if (typeof window === "undefined") return; 43728 if (!root2.$el) return; 43729 const el = root2.$el; 43730 const shouldAnimate = siteAnimationsFeatureEnabled.value && !window.matchMedia("(prefers-reduced-motion: reduce)").matches && !scrollAnimationsSuppressed.value; 43731 if (fadeRaf1) cancelAnimationFrame(fadeRaf1); 43732 if (fadeRaf2) cancelAnimationFrame(fadeRaf2); 43733 fadeRaf1 = null; 43734 fadeRaf2 = null; 43735 if (!shouldAnimate) { 43736 el.style.opacity = "1"; 43737 return; 43738 } 43739 el.style.transition = "none"; 43740 el.style.opacity = "0"; 43741 fadeRaf1 = requestAnimationFrame(() => { 43742 fadeRaf2 = requestAnimationFrame(() => { 43743 fadeRaf1 = null; 43744 fadeRaf2 = null; 43745 el.style.removeProperty("transition"); 43746 el.style.opacity = "1"; 43747 }); 43748 }); 43749 }; 43750 const startAutoSlideTimer = () => { 43751 if (autoSlidePaused.value) return; 43752 const interval = props.settings["auto-rotation-speed"] ? props.settings["auto-rotation-speed"] : 10; 43753 autoSlide.value = setInterval(() => { 43754 nextSlide(); 43755 }, +interval * 1e3); 43756 }; 43757 const restartAutoSlide = () => { 43758 clearInterval(autoSlide.value); 43759 startAutoSlideTimer(); 43760 }; 43761 const toggleAutoSlide = () => { 43762 autoSlidePaused.value = !autoSlidePaused.value; 43763 if (autoSlidePaused.value) { 43764 clearInterval(autoSlide.value); 43765 autoSlide.value = null; 43766 } else { 43767 startAutoSlideTimer(); 43768 } 43769 }; 43770 const isRandomMode = computed(() => { 43771 var _a2, _b; 43772 return ((_b = (_a2 = state == null ? void 0 : state.settings) == null ? void 0 : _a2.featureFlags) == null ? void 0 : _b.HeroComponentEnhancements) && props.settings["background-mode"] === "random"; 43773 }); 43774 const randomSlideEnabled = computed(() => { 43775 return isRandomMode.value && !props.isEditable; 43776 }); 43777 const canChangeSlide = () => { 43778 const now2 = Date.now(); 43779 if (now2 - lastSlideChangeTime.value < throttleDuration.value) { 43780 return false; 43781 } 43782 lastSlideChangeTime.value = now2; 43783 return true; 43784 }; 43785 const nextSlide = () => { 43786 var _a2; 43787 if (!canChangeSlide()) { 43788 return; 43789 } 43790 slideWidth.value = (_a2 = slide.value) == null ? void 0 : _a2.clientWidth; 43791 if (currentSlide.value + 1 < carouselSlides.value.length) { 43792 slidesContainer.value.scrollLeft += slideWidth.value; 43793 currentSlide.value++; 43794 } else { 43795 slidesContainer.value.scrollLeft -= slideWidth.value * carouselSlides.value.length - 1; 43796 currentSlide.value = 0; 43797 } 43798 if (autoSlideEnabled.value) restartAutoSlide(); 43799 }; 43800 const previousSlide = () => { 43801 var _a2; 43802 if (!canChangeSlide()) { 43803 return; 43804 } 43805 slideWidth.value = (_a2 = slide.value) == null ? void 0 : _a2.clientWidth; 43806 if (currentSlide.value - 1 >= 0) { 43807 slidesContainer.value.scrollLeft -= slideWidth.value; 43808 currentSlide.value--; 43809 } else { 43810 slidesContainer.value.scrollLeft += slideWidth.value * carouselSlides.value.length - 1; 43811 currentSlide.value = carouselSlides.value.length - 1; 43812 } 43813 if (autoSlideEnabled.value) restartAutoSlide(); 43814 }; 43815 const goToSlide = (i) => { 43816 var _a2; 43817 if (!canChangeSlide()) { 43818 return; 43819 } 43820 slideWidth.value = (_a2 = slide.value) == null ? void 0 : _a2.clientWidth; 43821 if (currentSlide.value !== i) { 43822 if (currentSlide.value > i) { 43823 slidesContainer.value.scrollLeft -= slideWidth.value * (currentSlide.value - i); 43824 currentSlide.value = i; 43825 } else { 43826 slidesContainer.value.scrollLeft += slideWidth.value * (i - currentSlide.value); 43827 currentSlide.value = i; 43828 } 43829 if (autoSlideEnabled.value) restartAutoSlide(); 43830 } 43831 }; 43832 const contactCardClasses = computed(() => { 43833 var _a2, _b; 43834 const color = (_b = (_a2 = props.settings) == null ? void 0 : _a2.variants) == null ? void 0 : _b["bg-color"]; 43835 if (!color) return []; 43836 return ["block_contact-card_" + color]; 43837 }); 43838 const mobileSettingsEnabled = computed(() => { 43839 var _a2, _b; 43840 return !!((_b = (_a2 = state == null ? void 0 : state.settings) == null ? void 0 : _a2.featureFlags) == null ? void 0 : _b.MobileSettings); 43841 }); 43842 const { mobileSettingsFF, isMobileView, viewportWidth } = useIsMobile(props); 43843 const mobilePlaceholderWidth = computed(() => { 43844 var _a2, _b; 43845 if (!mobileSettingsFF.value || !((_b = (_a2 = props.settings) == null ? void 0 : _a2.placeholderImageMobile) == null ? void 0 : _b.src)) { 43846 return void 0; 43847 } 43848 if (isMobileView.value) { 43849 return viewportWidth.value || BREAKPOINT_MD; 43850 } 43851 return BREAKPOINT_XL; 43852 }); 43853 const mobilePlaceholderHeight = computed(() => { 43854 if (!mobileSettingsFF.value || !mobilePlaceholderWidth.value) { 43855 return void 0; 43856 } 43857 const aspectRatio = 9 / 16; 43858 return Math.round(mobilePlaceholderWidth.value * aspectRatio); 43859 }); 43860 const mobilePlaceholderSizes = computed(() => { 43861 if (!mobileSettingsFF.value) return void 0; 43862 return "100vw"; 43863 }); 43864 const mobilePlaceholderLoading = computed(() => { 43865 if (!mobileSettingsFF.value) return void 0; 43866 return "eager"; 43867 }); 43868 const mobilePlaceholderFetchPriority = computed(() => { 43869 if (!mobileSettingsFF.value) return void 0; 43870 return "high"; 43871 }); 43872 const hideOnMobile = computed(() => { 43873 var _a2; 43874 return mobileSettingsEnabled.value && !!((_a2 = props.settings) == null ? void 0 : _a2.hideOnMobile); 43875 }); 43876 const hasMobilePlaceholder = computed(() => { 43877 var _a2, _b, _c; 43878 const placeholder = (_a2 = props.settings) == null ? void 0 : _a2.placeholderImageMobile; 43879 const hasPlaceholderSettings = mobileSettingsEnabled.value && !((_b = props.settings) == null ? void 0 : _b.hideOnMobile) && !!((_c = props.settings) == null ? void 0 : _c.togglePlaceholderMobile) && !!(typeof placeholder === "string" ? placeholder : placeholder == null ? void 0 : placeholder.src); 43880 return hasPlaceholderSettings && isMobileView.value; 43881 }); 43882 const needsMobilePlaceholderCrop = computed(() => { 43883 var _a2, _b; 43884 const crop = (_b = (_a2 = props.settings) == null ? void 0 : _a2.placeholderImageMobile) == null ? void 0 : _b.crop; 43885 if (!crop) return false;
43886 return !!crop.image; 43887 }); 43888 const mobilePlaceholderFocalStyle = computed(() => { 43889 var _a2, _b; 43890 const focal = (_b = (_a2 = props.settings) == null ? void 0 : _a2.placeholderImageMobile) == null ? void 0 : _b.focal; 43891 if (!(focal == null ? void 0 : focal.bgPosition)) return {}; 43892 return { 43893 "object-position": focal.bgPosition 43894 }; 43895 }); 43896 const mobilePlaceholderBackground = computed(() => { 43897 var _a2, _b; 43898 const placeholder = (_a2 = props.settings) == null ? void 0 : _a2.placeholderImageMobile; 43899 if (!(placeholder == null ? void 0 : placeholder.src)) return {}; 43900 const imageSrc = mobilePlaceholderCropped.value || mediaHelper.getEncodedURI(placeholder.src); 43901 return { 43902 "background-image": `url(${imageSrc})`, 43903 "background-position": ((_b = placeholder == null ? void 0 : placeholder.focal) == null ? void 0 : _b.bgPosition) || "center", 43904 "background-repeat": "no-repeat", 43905 "background-size": "cover" 43906 }; 43907 }); 43908 const mobileSettingsClasses = computed(() => { 43909 var _a2; 43910 if (!mobileSettingsEnabled.value) { 43911 return []; 43912 } 43913 const classes = []; 43914 if (hideOnMobile.value) { 43915 classes.push("block_heroComponent_hide-media-mobile"); 43916 return classes; 43917 } 43918 if (hasMobilePlaceholder.value) { 43919 classes.push("block_heroComponent_has-mobile-placeholder"); 43920 } 43921 const placement = (_a2 = props.settings) == null ? void 0 : _a2.imagePlacementMobile; 43922 if (placement === "image-bottom") { 43923 classes.push("block_heroComponent_image-bottom"); 43924 } else if (placement === "image-top") { 43925 classes.push("block_heroComponent_image-top"); 43926 } 43927 return classes; 43928 }); 43929 onMounted(async () => { 43930 var _a2, _b; 43931 if (carouselSlides.value.length > 0) { 43932 slidesContainer.value = (_a2 = root2.$el) == null ? void 0 : _a2.querySelector("#slides-container"); 43933 slide.value = (_b = root2.$el) == null ? void 0 : _b.querySelector(".slide"); 43934 } else { 43935 await nextTick(); 43936 fadeComponent(); 43937 } 43938 if (autoSlideEnabled.value) { 43939 autoSlidePaused.value = false; 43940 startAutoSlideTimer(); 43941 } 43942 }); 43943 onBeforeUnmount(() => { 43944 clearInterval(autoSlide.value); 43945 }); 43946 return (_ctx, _cache) => { 43947 var _a2, _b, _c, _d, _e, _f; 43948 const _component_CoreBlockBreadcrumbs = __nuxt_component_0$6; 43949 const _component_CoreBlockHeroBackground = _sfc_main$3I; 43950 const _component_CoreIcon = __nuxt_component_1$7; 43951 const _component_CoreBlockImageCropped = __nuxt_component_0$8; 43952 const _component_CoreBlock = _sfc_main$4x; 43953 return openBlock(), createElementBlock("div", { 43954 "data-testid": "slider-container", 43955 class: normalizeClass(["block__body block_heroComponent", mobileSettingsClasses.value]), 43956 style: normalizeStyle({ 43957 height: heroHeightStyle.value 43958 }) 43959 }, [ 43960 !hasMobilePlaceholder.value ? (openBlock(), createElementBlock("div", _hoisted_1$3G, [ 43961 createBaseVNode("ul", _hoisted_2$3s, [ 43962 __props.settings.showBreadcrumb ? (openBlock(), createBlock(_component_CoreBlockBreadcrumbs, { 43963 key: 0, 43964 settings: __props.settings, 43965 style: { "position": "absolute", "z-index": "102" } 43966 }, null, 8, ["settings"])) : createCommentVNode("", true), 43967 (openBlock(true), createElementBlock(Fragment, null, renderList(carouselSlides.value, (carouselSlide, slideIndex) => { 43968 return openBlock(), createElementBlock("li", { 43969 key: carouselSlide.localItemId, 43970 class: "slide" 43971 }, [ 43972 createVNode(_component_CoreBlockHeroBackground, { 43973 slide: carouselSlide, 43974 "current-slide": currentSlide.value, 43975 "slide-index": slideIndex, 43976 "component-type": componentType.value, 43977 "card-media-eligible": cardMediaEligible.value, 43978 overlay: overlay.value,
43979 "background-classes": backgroundClasses.value, 43980 "inline-editable": __props.inlineEditable, 43981 "inline-editing": __props.inlineEditing, 43982 onBackgroundReady: fadeComponent 43983 }, createSlots({ _: 2 }, [ 43984 _ctx.$slots["inline-editor"] ? { 43985 name: "inline-editor", 43986 fn: withCtx((slotData) => [ 43987 renderSlot(_ctx.$slots, "inline-editor", mergeProps({ ref_for: true }, slotData)) 43988 ]), 43989 key: "0" 43990 } : void 0 43991 ]), 1032, ["slide", "current-slide", "slide-index", "component-type", "card-media-eligible", "overlay", "background-classes", "inline-editable", "inline-editing"]) 43992 ]); 43993 }), 128)) 43994 ]), 43995 withDirectives(createBaseVNode("div", { 43996 class: normalizeClass(`carousel__navigation carousel__navigation_${componentType.value}`) 43997 }, [ 43998 createBaseVNode("ul", _hoisted_3$f, [ 43999 createBaseVNode("div", { 44000 class: "block__control block__control_slide", 44001 tabindex: "0", 44002 "aria-label": "Carousel Backward", 44003 role: "button", 44004 onClick: previousSlide, 44005 onKeyup: withKeys(previousSlide, ["enter"]) 44006 }, [ 44007 createVNode(_component_CoreIcon, { 44008 icon: "carousel-backward", 44009 style: { "height": "48px", "width": "48px" } 44010 }) 44011 ], 32), 44012 (openBlock(true), createElementBlock(Fragment, null, renderList(carouselSlides.value, (childSettings, childIndex) => { 44013 return openBlock(), createElementBlock("li", { 44014 key: childIndex + "-nav-control", 44015 "data-testid": "slider-item", 44016 class: normalizeClass({ 44017 block__control_nav_item: true, 44018 "block__control_nav_item--active": currentSlide.value === childIndex 44019 }), 44020 tabindex: "0", 44021 "aria-label": `${childIndex + 1} Carousel Slide`, 44022 role: "button", 44023 onClick: ($event) => goToSlide(childIndex), 44024 onKeyup: withKeys(($event) => goToSlide(childIndex), ["enter"]) 44025 }, toDisplayString(childIndex + 1), 43, _hoisted_4$c); 44026 }), 128)), 44027 createBaseVNode("div", { 44028 class: "block__control block__control_slide", 44029 tabindex: "0", 44030 "aria-label": "Carousel Forward", 44031 role: "button", 44032 onClick: nextSlide, 44033 onKeyup: withKeys(nextSlide, ["enter"]) 44034 }, [ 44035 createVNode(_component_CoreIcon, { 44036 style: { "height": "48px", "width": "48px" }, 44037 icon: "carousel-forward" 44038 }) 44039 ], 32) 44040 ]) 44041 ], 2), [ 44042 [vShow, displayCarouselControls.value] 44043 ]), 44044 autoSlideEnabled.value ? (openBlock(), createElementBlock("div", { 44045 key: 0, 44046 class: "playBtn", 44047 role: "button", 44048 "aria-label": autoSlidePaused.value ? "Play Auto Slide" : "Pause Auto Slide", 44049 tabindex: "0", 44050 onClick: toggleAutoSlide, 44051 onKeyup: withKeys(toggleAutoSlide, ["enter"]) 44052 }, [ 44053 createVNode(_component_CoreIcon, { 44054 icon: autoSlidePaused.value ? "play-circle-button" : "pause-circle" 44055 }, null, 8, ["icon"]) 44056 ], 40, _hoisted_5$a)) : createCommentVNode("", true) 44057 ])) : createCommentVNode("", true), 44058 hasMobilePlaceholder.value ? (openBlock(), createElementBlock("div", _hoisted_6$7, [ 44059 !needsMobilePlaceholderCrop.value ? (openBlock(), createElementBlock("img", { 44060 key: 0, 44061 class: normalizeClass(["mobile-placeholder-img", { 44062 "mobile-placeholder-img_content-card": componentType.value === "content-card" 44063 }]), 44064 src: (_a2 = __props.settings.placeholderImageMobile) == null ? void 0 : _a2.src, 44065 alt: ((_b = __props.settings.placeholderImageMobile) == null ? void 0 : _b.alt) || "",
44066 style: normalizeStyle(mobilePlaceholderFocalStyle.value), 44067 loading: mobilePlaceholderLoading.value, 44068 fetchpriority: mobilePlaceholderFetchPriority.value, 44069 width: mobilePlaceholderWidth.value, 44070 height: mobilePlaceholderHeight.value, 44071 sizes: mobilePlaceholderSizes.value, 44072 decoding: "async" 44073 }, null, 14, _hoisted_7$6)) : (openBlock(), createElementBlock("div", { 44074 key: 1, 44075 class: normalizeClass(["mobile-placeholder-img", { 44076 "mobile-placeholder-img_content-card": componentType.value === "content-card" 44077 }]), 44078 style: normalizeStyle(mobilePlaceholderBackground.value), 44079 "aria-label": ((_c = __props.settings.placeholderImageMobile) == null ? void 0 : _c.alt) || "", 44080 role: "img" 44081 }, [ 44082 ((_d = __props.settings.placeholderImageMobile) == null ? void 0 : _d.src) ? (openBlock(), createBlock(_component_CoreBlockImageCropped, { 44083 key: 0, 44084 "image-src": __props.settings.placeholderImageMobile.src, 44085 "media-metadata": { 44086 ...(_e = __props.settings.placeholderImageMobile) == null ? void 0 : _e.crop, 44087 ...(_f = __props.settings.placeholderImageMobile) == null ? void 0 : _f.focal 44088 }, 44089 onLoaded: _cache[0] || (_cache[0] = (value) => mobilePlaceholderCropped.value = value) 44090 }, null, 8, ["image-src", "media-metadata"])) : createCommentVNode("", true) 44091 ], 14, _hoisted_8$6)) 44092 ])) : createCommentVNode("", true), 44093 componentType.value === "contact-card" ? (openBlock(), createElementBlock("div", _hoisted_9$5, [ 44094 createBaseVNode("div", { 44095 class: normalizeClass(["contact-hero block_contact-card", contactCardClasses.value]) 44096 }, [ 44097 (openBlock(), createBlock(resolveDynamicComponent(unref(contactCardModule)), { 44098 "is-editable": __props.isEditable, 44099 settings: componentSettings.value, 44100 "data-site": __props.dataSite, 44101 "inline-editable": __props.inlineEditable, 44102 "inline-editing": __props.inlineEditing, 44103 "inline-disabled-fields": __props.inlineDisabledFields 44104 }, createSlots({ _: 2 }, [ 44105 _ctx.$slots["inline-editor"] ? { 44106 name: "inline-editor", 44107 fn: withCtx((slotData) => [ 44108 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps(slotData))) 44109 ]), 44110 key: "0" 44111 } : void 0 44112 ]), 1032, ["is-editable", "settings", "data-site", "inline-editable", "inline-editing", "inline-disabled-fields"])) 44113 ], 2) 44114 ])) : createCommentVNode("", true), 44115 componentType.value === "content-card" ? (openBlock(), createElementBlock("div", _hoisted_10$5, [ 44116 createVNode(_component_CoreBlock, { 44117 "is-editable": __props.isEditable, 44118 "is-builder-mobile": __props.isBuilderMobile, 44119 "nested-level": __props.nestedLevel + 1, 44120 settings: componentSettings.value, 44121 "inline-editable": __props.inlineEditable, 44122 "inline-editing": __props.inlineEditing, 44123 "inline-disabled-fields": __props.inlineDisabledFields 44124 }, createSlots({ _: 2 }, [ 44125 _ctx.$slots["inline-editor"] ? { 44126 name: "inline-editor", 44127 fn: withCtx((slotData) => [ 44128 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps(slotData))) 44129 ]), 44130 key: "0" 44131 } : void 0 44132 ]), 1032, ["is-editable", "is-builder-mobile", "nested-level", "settings", "inline-editable", "inline-editing", "inline-disabled-fields"]) 44133 ])) : createCommentVNode("", true) 44134 ], 6); 44135 }; 44136 } 44137}); 44138const CoreBlockHeroComponent = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 44139 __proto__: null, 44140 default: _sfc_main$3H 44141}, Symbol.toStringTag, { value: "Module" })); 44142const _sfc_main$3G = { 44143 name: "CoreBlockHtml", 44144 props: { 44145 settings: { 44146 type: Object, 44147 required: true 44148 }, 44149 isEditable: { 44150 type: Boolean, 44151 default: false 44152 } 44153 }, 44154 computed: { 44155 blockContent() { 44156 var _a; 44157 return ((_a = this.settings) == null ? void 0 : _a.html) || null; 44158 } 44159 } 44160}; 44161const _hoisted_1$3F = ["innerHTML"]; 44162const _hoisted_2$3r = { 44163 key: 1, 44164 class: "block__body_html--editable" 44165}; 44166function _sfc_render$3j(_ctx, _cache, $props, $setup, $data, $options) { 44167 return $options.blockContent ? (openBlock(), createElementBlock("div", { 44168 key: 0, 44169 class: "block__body", 44170 innerHTML: $options.blockContent 44171 }, null, 8, _hoisted_1$3F)) : $props.isEditable ? (openBlock(), createElementBlock("div", _hoisted_2$3r)) : createCommentVNode("", true); 44172} 44173const CoreBlockHtml = /* @__PURE__ */ _export_sfc(_sfc_main$3G, [["render", _sfc_render$3j]]); 44174const CoreBlockHtml$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 44175 __proto__: null, 44176 default: CoreBlockHtml 44177}, Symbol.toStringTag, { value: "Module" })); 44178const _sfc_main$3F = { 44179 name: "CoreBlockButton", 44180 props: { 44181 settings: { 44182 type: Object, 44183 required: true 44184 } 44185 }, 44186 setup(props) { 44187 const icon = computed(() => { 44188 var _a; 44189 return (_a = props.settings) == null ? void 0 : _a.icon; 44190 }); 44191 return { 44192 icon 44193 }; 44194 } 44195}; 44196const _hoisted_1$3E = { class: "block__body" }; 44197const _hoisted_2$3q = { class: "icon--custom" }; 44198function _sfc_render$3i(_ctx, _cache, $props, $setup, $data, $options) { 44199 const _component_CoreIcon = __nuxt_component_1$7; 44200 return openBlock(), createElementBlock("div", _hoisted_1$3E, [ 44201 createBaseVNode("span", _hoisted_2$3q, [ 44202 $setup.icon ? (openBlock(), createBlock(_component_CoreIcon, { 44203 key: 0, 44204 icon: $setup.icon, 44205 class: "icon", 44206 settings: $props.settings 44207 }, null, 8, ["icon", "settings"])) : createCommentVNode("", true) 44208 ]) 44209 ]); 44210} 44211const CoreBlockIcon = /* @__PURE__ */ _export_sfc(_sfc_main$3F, [["render", _sfc_render$3i]]); 44212const CoreBlockIcon$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 44213 __proto__: null, 44214 default: CoreBlockIcon 44215}, Symbol.toStringTag, { value: "Module" })); 44216const oneOf = (value, allowed, fallback) => allowed.includes(value) ? value : fallback; 44217const OFFSET_ACCENT_SHAPE_TYPES = ["border", "solid"]; 44218const OFFSET_ACCENT_COLORS = ["primary", "secondary", "tertiary"]; 44219const OFFSET_ACCENT_WEIGHTS = ["thin", "medium", "bold"]; 44220const OFFSET_ACCENT_RADII = ["none", "small", "medium", "large"]; 44221const OFFSET_ACCENT_DISTANCES = [ 44222 "x-small", 44223 "small", 44224 "medium", 44225 "large", 44226 "x-large" 44227]; 44228const OFFSET_ACCENT_LAYERS = ["behind", "front"]; 44229const OFFSET_ACCENT_EFFECTS = ["none", "shadow", "white-border"]; 44230const OFFSET_ACCENT_POSITIONS = [ 44231 "top-left", 44232 "top-right", 44233 "bottom-left", 44234 "bottom-right" 44235]; 44236const OFFSET_ACCENT_SHAPE_DEFAULTS = Object.freeze({
44237 type: "border", 44238 color: "primary", 44239 weight: "medium", 44240 radius: "none", 44241 distance: "medium", 44242 position: "top-left" 44243}); 44244const OFFSET_ACCENT_IMAGE_SIZE = Object.freeze({ 44245 min: 10, 44246 max: 100, 44247 step: 5 44248}); 44249const OFFSET_ACCENT_IMAGE_POSITION = Object.freeze({ 44250 min: -50, 44251 max: 100, 44252 // Where a new accent starts: up and left of the main image's top-left 44253 // corner, so the author sees an offset before they move anything. 44254 default: -10, 44255 nudge: 1, 44256 nudgeLarge: 10 44257}); 44258const OFFSET_ACCENT_IMAGE_DEFAULTS = Object.freeze({ 44259 layer: "behind", 44260 effect: "none", 44261 radius: "none", 44262 size: 40, 44263 position: Object.freeze({ 44264 x: OFFSET_ACCENT_IMAGE_POSITION.default, 44265 y: OFFSET_ACCENT_IMAGE_POSITION.default 44266 }) 44267}); 44268const ACCENT_CLASS = "block__image-accent"; 44269const OFFSET_ACCENT_SHAPE_PROPERTY_KEY = "offsetAccentShape"; 44270const OFFSET_ACCENT_IMAGE_PROPERTY_KEY = "offsetAccentImage"; 44271const resolveShape = (stored) => { 44272 if (!stored) return null; 44273 return { 44274 type: oneOf( 44275 stored.type, 44276 OFFSET_ACCENT_SHAPE_TYPES, 44277 OFFSET_ACCENT_SHAPE_DEFAULTS.type 44278 ), 44279 color: oneOf( 44280 stored.color, 44281 OFFSET_ACCENT_COLORS, 44282 OFFSET_ACCENT_SHAPE_DEFAULTS.color 44283 ), 44284 weight: oneOf( 44285 stored.weight, 44286 OFFSET_ACCENT_WEIGHTS, 44287 OFFSET_ACCENT_SHAPE_DEFAULTS.weight 44288 ), 44289 radius: oneOf( 44290 stored.radius, 44291 OFFSET_ACCENT_RADII, 44292 OFFSET_ACCENT_SHAPE_DEFAULTS.radius 44293 ), 44294 distance: oneOf( 44295 stored.distance, 44296 OFFSET_ACCENT_DISTANCES, 44297 OFFSET_ACCENT_SHAPE_DEFAULTS.distance 44298 ), 44299 position: oneOf( 44300 stored.position, 44301 OFFSET_ACCENT_POSITIONS, 44302 OFFSET_ACCENT_SHAPE_DEFAULTS.position 44303 ) 44304 }; 44305}; 44306const clampPercent = (value, { min, max }, fallback) => { 44307 const percent = typeof value === "number" ? value : Number.parseFloat(value); 44308 return Number.isFinite(percent) ? clamp(percent, min, max) : fallback; 44309}; 44310const clampSize = (value) => clampPercent( 44311 value, 44312 OFFSET_ACCENT_IMAGE_SIZE, 44313 OFFSET_ACCENT_IMAGE_DEFAULTS.size 44314); 44315const clampOffsetAccentPosition = (value) => clampPercent( 44316 value, 44317 OFFSET_ACCENT_IMAGE_POSITION, 44318 OFFSET_ACCENT_IMAGE_POSITION.default 44319); 44320const resolvePosition = (stored) => ({ 44321 x: clampOffsetAccentPosition(stored == null ? void 0 : stored.x), 44322 y: clampOffsetAccentPosition(stored == null ? void 0 : stored.y) 44323}); 44324const resolveOffsetAccentImage = (stored) => { 44325 const src = typeof (stored == null ? void 0 : stored.src) === "string" ? stored.src : ""; 44326 if (!src) return null; 44327 return { 44328 src, 44329 layer: oneOf( 44330 stored.layer, 44331 OFFSET_ACCENT_LAYERS, 44332 OFFSET_ACCENT_IMAGE_DEFAULTS.layer 44333 ), 44334 effect: oneOf( 44335 stored.effect, 44336 OFFSET_ACCENT_EFFECTS, 44337 OFFSET_ACCENT_IMAGE_DEFAULTS.effect 44338 ), 44339 radius: oneOf( 44340 stored.radius, 44341 OFFSET_ACCENT_RADII, 44342 OFFSET_ACCENT_IMAGE_DEFAULTS.radius 44343 ), 44344 size: clampSize(stored.size), 44345 position: resolvePosition(stored.position) 44346 }; 44347}; 44348function useOffsetAccent(settings, guards = {}) { 44349 const suppressed = computed( 44350 () => unref(guards.enabled) === false || Boolean(unref(guards.isVideo)) || Boolean(unref(guards.isExpired)) || !unref(guards.hasImage) 44351 ); 44352 const shape = computed(() => { 44353 var _a; 44354 if (suppressed.value) return null; 44355 return resolveShape( 44356 (_a = unref(settings)) == null ? void 0 : _a[OFFSET_ACCENT_SHAPE_PROPERTY_KEY] 44357 ); 44358 }); 44359 const image = computed(() => { 44360 var _a; 44361 if (suppressed.value) return null; 44362 return resolveOffsetAccentImage( 44363 (_a = unref(settings)) == null ? void 0 : _a[OFFSET_ACCENT_IMAGE_PROPERTY_KEY] 44364 ); 44365 }); 44366 const hasShapeAccent = computed(() => shape.value !== null); 44367 const hasOffsetAccent = computed( 44368 () => hasShapeAccent.value || image.value !== null 44369 ); 44370 const offsetAccentClasses = computed(() => { 44371 if (!hasOffsetAccent.value) return []; 44372 const classes = [ACCENT_CLASS]; 44373 if (shape.value) { 44374 const { type, color, weight, radius, distance, position } = shape.value; 44375 classes.push( 44376 `${ACCENT_CLASS}--shape_${type}`, 44377 `${ACCENT_CLASS}--shape-color_${color}`, 44378 `${ACCENT_CLASS}--shape-radius_${radius}`, 44379 `${ACCENT_CLASS}--shape-distance_${distance}`, 44380 `${ACCENT_CLASS}--shape-position_${position}` 44381 ); 44382 if (type === "border") { 44383 classes.push(`${ACCENT_CLASS}--shape-weight_${weight}`); 44384 } 44385 } 44386 if (image.value) { 44387 const { layer, effect: effect2, radius } = image.value; 44388 classes.push( 44389 `${ACCENT_CLASS}--image-layer_${layer}`, 44390 `${ACCENT_CLASS}--image-effect_${effect2}`, 44391 `${ACCENT_CLASS}--image-radius_${radius}` 44392 ); 44393 } 44394 return classes; 44395 }); 44396 const offsetAccentStyle = computed(() => { 44397 if (!image.value) return {}; 44398 const { size, position } = image.value; 44399 return { 44400 "--_core__image_offset_image-size": `${size}%`, 44401 "--_core__image_offset_image-x": `${position.x}%`, 44402 "--_core__image_offset_image-y": `${position.y}%` 44403 }; 44404 }); 44405 const offsetImage = computed( 44406 () => image.value ? { src: image.value.src } : null 44407 ); 44408 return { 44409 hasOffsetAccent, 44410 hasShapeAccent, 44411 offsetAccentClasses, 44412 offsetAccentStyle, 44413 offsetImage 44414 }; 44415} 44416const ACCENT_SELECTOR = ".block__image-accent"; 44417const LAYER_SELECTOR = ".block__image-accent_shape, .block__image-accent_image"; 44418const NO_OVERHANG = Object.freeze({ top: 0, bottom: 0 }); 44419const measureOffsetAccentOverhang = (accentEl) => { 44420 if (!accentEl) return NO_OVERHANG; 44421 const box = accentEl.getBoundingClientRect(); 44422 let top = 0; 44423 let bottom = 0;
44424 accentEl.querySelectorAll(LAYER_SELECTOR).forEach((layer) => { 44425 const rect = layer.getBoundingClientRect(); 44426 top = Math.max(top, box.top - rect.top); 44427 bottom = Math.max(bottom, rect.bottom - box.bottom); 44428 }); 44429 const scale = box.height > 0 && accentEl.offsetHeight > 0 ? box.height / accentEl.offsetHeight : 1; 44430 return { 44431 top: Math.round(top / scale), 44432 bottom: Math.round(bottom / scale) 44433 }; 44434}; 44435function useOffsetAccentOverhang(containerRef, { enabled, deps = [] } = {}) { 44436 const overhang = ref(NO_OVERHANG); 44437 let observer = null; 44438 const findAccent = () => { 44439 var _a, _b; 44440 return unref(enabled) === false ? null : ((_b = (_a = containerRef.value) == null ? void 0 : _a.querySelector) == null ? void 0 : _b.call(_a, ACCENT_SELECTOR)) ?? null; 44441 }; 44442 const update3 = () => { 44443 const next = measureOffsetAccentOverhang(findAccent()); 44444 if (next.top !== overhang.value.top || next.bottom !== overhang.value.bottom) { 44445 overhang.value = next; 44446 } 44447 }; 44448 const disconnect = () => { 44449 observer == null ? void 0 : observer.disconnect(); 44450 observer = null; 44451 }; 44452 const connect = () => { 44453 disconnect(); 44454 const accent = findAccent(); 44455 if (accent && typeof ResizeObserver !== "undefined") { 44456 observer = new ResizeObserver(update3); 44457 observer.observe(containerRef.value); 44458 observer.observe(accent); 44459 accent.querySelectorAll(LAYER_SELECTOR).forEach((layer) => observer.observe(layer)); 44460 } 44461 update3(); 44462 }; 44463 onMounted(connect); 44464 watch([containerRef, () => unref(enabled), ...deps], connect, { 44465 flush: "post", 44466 deep: true 44467 }); 44468 onBeforeUnmount(disconnect); 44469 const toPx = (value) => value ? `${value}px` : void 0; 44470 const overhangStyle = computed(() => ({ 44471 "--_core__image_offset_overhang-top": toPx(overhang.value.top), 44472 "--_core__image_offset_overhang-bottom": toPx(overhang.value.bottom) 44473 })); 44474 return { overhang, overhangStyle }; 44475} 44476const _hoisted_1$3D = ["data-testid", "data-expired-preset-id"]; 44477const _hoisted_2$3p = ["src", "alt", "loading", "fetchpriority", "width", "height", "sizes"]; 44478const _hoisted_3$e = ["data-src", "alt"]; 44479const _hoisted_4$b = { 44480 key: 2, 44481 class: "block__inline-media" 44482}; 44483const _sfc_main$3E = /* @__PURE__ */ Object.assign({ 44484 name: "CoreBlockImage" 44485}, { 44486 __name: "CoreBlockImage", 44487 props: { 44488 settings: { 44489 type: Object, 44490 required: true 44491 }, 44492 isBuilderMobile: { 44493 type: Boolean, 44494 default: false 44495 }, 44496 index: { 44497 type: Number, 44498 default: 0 44499 }, 44500 nestedLevel: { 44501 type: Number, 44502 default: 0 44503 }, 44504 isEditable: { 44505 type: Boolean, 44506 default: false 44507 }, 44508 // Builder-only: enables inline canvas editing capability for this block. 44509 // SiteViewer never sets this, so published sites are unaffected. 44510 inlineEditable: { 44511 type: Boolean, 44512 default: false 44513 }, 44514 // Builder-only: whether inline editing is currently active for this block. 44515 inlineEditing: { 44516 type: Boolean, 44517 default: false 44518 } 44519 }, 44520 setup(__props) { 44521 const AccentWrapper = (props2, { slots }) => { 44522 var _a, _b; 44523 const shape = h("span", { 44524 class: "block__image-accent_shape", 44525 "aria-hidden": "true" 44526 }); 44527 const offsetImage2 = h("img", { 44528 class: "block__image-accent_image", 44529 src: (_a = props2.offsetImage) == null ? void 0 : _a.src, 44530 alt: "", 44531 "aria-hidden": "true" 44532 }); 44533 return h("div", { class: props2.accentClasses, style: props2.accentStyle }, [ 44534 props2.hasShape ? shape : null, 44535 props2.offsetImage ? offsetImage2 : null, 44536 ...((_b = slots.default) == null ? void 0 : _b.call(slots)) ?? [] 44537 ]); 44538 }; 44539 AccentWrapper.props = { 44540 accentClasses: { type: Array, default: () => [] }, 44541 accentStyle: { type: Object, default: () => ({}) }, 44542 hasShape: { type: Boolean, default: false }, 44543 offsetImage: { type: Object, default: null } 44544 }; 44545 const AccentPassThrough = (_props, { slots }) => { 44546 var _a; 44547 const children = ((_a = slots.default) == null ? void 0 : _a.call(slots)) ?? []; 44548 return children.length === 1 ? children[0] : children; 44549 }; 44550 AccentPassThrough.inheritAttrs = false;
44551 const props = __props; 44552 const store = useStore(); 44553 const imageComponent = ref(null); 44554 const imageElementRef = ref(null); 44555 const { 44556 mobileSettingsFF, 44557 isMobile, 44558 imageWidthNumeric, 44559 imageHeightNumeric, 44560 imageSizes 44561 } = useIsMobile(props, { 44562 widthValue: computed( 44563 () => { 44564 var _a, _b, _c; 44565 return ((_a = props.settings) == null ? void 0 : _a.width) || ((_c = (_b = props.settings) == null ? void 0 : _b.extraProps) == null ? void 0 : _c.width); 44566 } 44567 ), 44568 heightValue: computed( 44569 () => { 44570 var _a, _b, _c; 44571 return ((_a = props.settings) == null ? void 0 : _a.height) || ((_c = (_b = props.settings) == null ? void 0 : _b.extraProps) == null ? void 0 : _c.height); 44572 } 44573 ) 44574 }); 44575 const { isAboveFold } = useIntersectionObserver(imageElementRef, { 44576 enabled: true, 44577 initialHeuristic: computed( 44578 () => props.nestedLevel <= 2 && props.index === 0 44579 ) 44580 }); 44581 const { 44582 imageSrc, 44583 imageAlt, 44584 croppedSrc, 44585 croppedImage, 44586 imageHeight, 44587 imageWidth, 44588 backgroundMediaFocal, 44589 backgroundMediaCrop, 44590 updateCroppedImage 44591 } = useImageProperties(props, "src", imageComponent); 44592 const objectPositionStyle = computed(() => { 44593 var _a, _b, _c, _d, _e; 44594 const sizing = (_b = (_a = props.settings) == null ? void 0 : _a.variants) == null ? void 0 : _b.sizing; 44595 if (sizing === "contain" || sizing === "cover") { 44596 const vAlign = (_d = (_c = props.settings) == null ? void 0 : _c.variants) == null ? void 0 : _d["vertical-alignment"]; 44597 if (vAlign === "y-top") return "top center"; 44598 if (vAlign === "y-center") return "center"; 44599 if (vAlign === "y-bottom") return "bottom center"; 44600 } 44601 return ((_e = backgroundMediaFocal.value) == null ? void 0 : _e.bgPosition) || "center"; 44602 }); 44603 const mediaSrc = computed(() => { 44604 var _a; 44605 return (_a = props.settings) == null ? void 0 : _a.src; 44606 }); 44607 const { isVideo } = useMedia(mediaSrc); 44608 const { isExpired, expiredPresetId } = useIsExpired( 44609 props.settings, 44610 (item) => item.type === props.settings.type || item.propertyKey === props.settings.type 44611 ); 44612 const { showInlineEditor } = useInlineMediaEdit(props, { 44613 mediaKey: "src", 44614 isExpired 44615 }); 44616 const shouldHideOnMobile = computed(() => { 44617 var _a; 44618 return mobileSettingsFF.value && ((_a = props.settings) == null ? void 0 : _a.hideOnMobile) === true && (isMobile.value || props.isBuilderMobile); 44619 }); 44620 const needsCanvasProcessing = computed(() => { 44621 var _a; 44622 if (!imageSrc.value || !((_a = backgroundMediaCrop.value) == null ? void 0 : _a.image)) { 44623 return false; 44624 } 44625 if (!mobileSettingsFF.value) { 44626 return true; 44627 } 44628 return true; 44629 }); 44630 const shouldUseLazyLoading = computed(() => { 44631 var _a; 44632 return !!(mobileSettingsFF.value && imageSrc.value && ((_a = backgroundMediaCrop.value) == null ? void 0 : _a.image)); 44633 }); 44634 watch( 44635 () => { 44636 const crop = { ...backgroundMediaCrop.value }; 44637 delete crop.focal; 44638 return JSON.stringify(crop); 44639 }, 44640 () => { 44641 if (mobileSettingsFF.value) croppedImage.value = null; 44642 } 44643 ); 44644 const displayImageSrc = computed(() => { 44645 if (mobileSettingsFF.value && needsCanvasProcessing.value) { 44646 return croppedImage.value || null; 44647 } 44648 if (mobileSettingsFF.value) { 44649 return imageSrc.value; 44650 } 44651 return croppedSrc.value; 44652 }); 44653 const loadImage = (image) => { 44654 const src = image.getAttribute("data-src"); 44655 image.src = src; 44656 image.removeAttribute("data-src"); 44657 }; 44658 const handleLazyLoad = () => { 44659 }; 44660 const loadingStrategy = computed(() => { 44661 if (!mobileSettingsFF.value) return void 0; 44662 return isAboveFold.value ? "eager" : "lazy"; 44663 }); 44664 const fetchPriority = computed(() => { 44665 if (!mobileSettingsFF.value) return void 0; 44666 return isAboveFold.value ? "high" : "low"; 44667 }); 44668 const numericWidth = computed(() => { 44669 if (!mobileSettingsFF.value) return void 0; 44670 return imageWidthNumeric.value; 44671 }); 44672 const numericHeight = computed(() => { 44673 if (!mobileSettingsFF.value) return void 0; 44674 return imageHeightNumeric.value; 44675 }); 44676 const sizesAttribute = computed(() => { 44677 if (!mobileSettingsFF.value) return void 0; 44678 return imageSizes.value; 44679 }); 44680 const { 44681 hasOffsetAccent, 44682 hasShapeAccent, 44683 offsetAccentClasses, 44684 offsetAccentStyle, 44685 offsetImage 44686 } = useOffsetAccent( 44687 computed(() => props.settings), 44688 { 44689 // The flag gates the render too, so it stays a kill switch for 44690 // accents that authors already saved. 44691 enabled: computed( 44692 () => { 44693 var _a, _b, _c; 44694 return ((_c = (_b = (_a = store == null ? void 0 : store.state) == null ? void 0 : _a.settings) == null ? void 0 : _b.featureFlags) == null ? void 0 : _c.BuilderEnhImageOffsetAccent) === true; 44695 } 44696 ), 44697 isVideo, 44698 isExpired, 44699 hasImage: computed(() => !!imageSrc.value) 44700 } 44701 ); 44702 const { overhangStyle } = useOffsetAccentOverhang(imageElementRef, { 44703 enabled: hasOffsetAccent, 44704 deps: [offsetAccentClasses, offsetAccentStyle, offsetImage] 44705 }); 44706 const toPixelLength = (value) => { 44707 if (typeof value === "number") return `${value}px`; 44708 const match2 = typeof value === "string" ? value.trim().match(/^(\d+(?:\.\d+)?)(px)?$/) : null; 44709 return match2 ? `${match2[1]}px` : void 0; 44710 }; 44711 const accentStyleWithSize = computed(() => ({ 44712 ...offsetAccentStyle.value, 44713 width: toPixelLength(imageWidth.value), 44714 height: toPixelLength(imageHeight.value) 44715 })); 44716 return (_ctx, _cache) => { 44717 const _component_CoreBlockImageCropped = __nuxt_component_0$8; 44718 return unref(isVideo) && !shouldHideOnMobile.value ? (openBlock(), createBlock(_sfc_main$3J, { 44719 key: 0, 44720 settings: __props.settings, 44721 "is-expired": unref(isExpired), 44722 "is-builder-mobile": __props.isBuilderMobile, 44723 index: __props.index, 44724 "nested-level": __props.nestedLevel, 44725 "inline-editable": __props.inlineEditable, 44726 "inline-editing": __props.inlineEditing 44727 }, createSlots({ _: 2 }, [ 44728 _ctx.$slots["inline-editor"] ? { 44729 name: "inline-editor", 44730 fn: withCtx((slotData) => [ 44731 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps(slotData))) 44732 ]), 44733 key: "0" 44734 } : void 0 44735 ]), 1032, ["settings", "is-expired", "is-builder-mobile", "index", "nested-level", "inline-editable", "inline-editing"])) : !unref(isVideo) && !shouldHideOnMobile.value ? (openBlock(), createElementBlock("div", { 44736 key: 1, 44737 ref_key: "imageElementRef", 44738 ref: imageElementRef, 44739 class: normalizeClass(["block__body", { "block__body--empty": !unref(imageSrc) }]) 44740 }, [ 44741 unref(isExpired) ? (openBlock(), createElementBlock("div", { 44742 key: 0, 44743 "data-testid": `${__props.settings.type}-expired`, 44744 "data-expired-preset-id": unref(expiredPresetId), 44745 class: "expired-content" 44746 }, null, 8, _hoisted_1$3D)) : (openBlock(), createElementBlock("figure", { 44747 key: 1, 44748 class: "block__section_content", 44749 style: normalizeStyle(unref(overhangStyle)) 44750 }, [ 44751 (openBlock(), createBlock(resolveDynamicComponent(unref(hasOffsetAccent) ? AccentWrapper : AccentPassThrough), { 44752 "accent-classes": unref(offsetAccentClasses), 44753 "accent-style": accentStyleWithSize.value, 44754 "has-shape": unref(hasShapeAccent), 44755 "offset-image": unref(offsetImage) 44756 }, { 44757 default: withCtx(() => [ 44758 unref(mobileSettingsFF) ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [ 44759 displayImageSrc.value && (!needsCanvasProcessing.value || unref(croppedImage)) ? (openBlock(), createElementBlock("img", { 44760 key: 0, 44761 ref_key: "imageComponent", 44762 ref: imageComponent, 44763 src: displayImageSrc.value, 44764 alt: unref(imageAlt), 44765 loading: loadingStrategy.value, 44766 fetchpriority: fetchPriority.value, 44767 width: numericWidth.value, 44768 height: numericHeight.value, 44769 sizes: sizesAttribute.value, 44770 decoding: "async", 44771 style: normalizeStyle({ 44772 height: unref(imageHeight), 44773 width: unref(imageWidth), 44774 objectPosition: objectPositionStyle.value 44775 }) 44776 }, null, 12, _hoisted_2$3p)) : shouldUseLazyLoading.value && !unref(croppedImage) ? (openBlock(), createBlock(_sfc_main$3K, { 44777 key: 1, 44778 "on-load": handleLazyLoad, 44779 "track-above-fold": true 44780 }, { 44781 default: withCtx(() => [ 44782 createVNode(_component_CoreBlockImageCropped, { 44783 "image-src": unref(imageSrc), 44784 "media-metadata": unref(backgroundMediaCrop
44784), 44785 onLoaded: unref(updateCroppedImage) 44786 }, null, 8, ["image-src", "media-metadata", "onLoaded"]) 44787 ]), 44788 _: 1 44789 })) : createCommentVNode("", true) 44790 ], 64)) : (openBlock(), createBlock(_sfc_main$3K, { 44791 key: 1, 44792 "on-load": (children) => loadImage(children[0]), 44793 "track-above-fold": true 44794 }, { 44795 default: withCtx(() => [ 44796 createBaseVNode("img", mergeProps({ 44797 ...__props.isEditable && { src: unref(croppedSrc) } 44798 }, { 44799 ref_key: "imageComponent", 44800 ref: imageComponent, 44801 "data-src": unref(croppedSrc), 44802 alt: unref(imageAlt), 44803 style: { 44804 height: unref(imageHeight), 44805 width: unref(imageWidth), 44806 objectPosition: objectPositionStyle.value 44807 } 44808 }), null, 16, _hoisted_3$e), 44809 unref(imageSrc) ? (openBlock(), createBlock(_component_CoreBlockImageCropped, { 44810 key: 0, 44811 "image-src": unref(imageSrc), 44812 "media-metadata": unref(backgroundMediaCrop), 44813 onLoaded: unref(updateCroppedImage) 44814 }, null, 8, ["image-src", "media-metadata", "onLoaded"])) : createCommentVNode("", true) 44815 ]), 44816 _: 1 44817 }, 8, ["on-load"])) 44818 ]), 44819 _: 1 44820 }, 8, ["accent-classes", "accent-style", "has-shape", "offset-image"])) 44821 ], 4)), 44822 unref(showInlineEditor) ? (openBlock(), createElementBlock("div", _hoisted_4$b, [ 44823 renderSlot(_ctx.$slots, "inline-editor", { field: "src" }) 44824 ])) : createCommentVNode("", true) 44825 ], 2)) : createCommentVNode("", true); 44826 }; 44827 } 44828}); 44829const CoreBlockImage = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 44830 __proto__: null, 44831 default: _sfc_main$3E 44832}, Symbol.toStringTag, { value: "Module" })); 44833const _sfc_main$3D = { 44834 props: { 44835 settings: { 44836 type: Object, 44837 required: false 44838 } 44839 }, 44840 computed: { 44841 alt() { 44842 var _a, _b; 44843 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 44844 }, 44845 id() { 44846 var _a, _b; 44847 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 44848 } 44849 } 44850}; 44851const _hoisted_1$3C = ["aria-labelledby", "aria-label"]; 44852const _hoisted_2$3o = ["id"]; 44853function _sfc_render$3h(_ctx, _cache, $props, $setup, $data, $options) { 44854 return openBlock(), createElementBlock("svg", { 44855 width: "24", 44856 height: "24", 44857 viewBox: "0 0 24 24", 44858 fill: "none", 44859 xmlns: "http://www.w3.org/2000/svg", 44860 role: "img", 44861 "aria-labelledby": `icon-title-${$options.id}`, 44862 "aria-label": $options.alt 44863 }, [ 44864 createBaseVNode("title", { 44865 id: `icon-title-${$options.id}` 44866 }, toDisplayString($options.alt), 9, _hoisted_2$3o), 44867 _cache[0] || (_cache[0] = createBaseVNode("path", { 44868 d: "M18 6L6 18", 44869 stroke: "currentColor", 44870 "stroke-width": "2", 44871 "stroke-linecap": "round", 44872 "stroke-linejoin": "round" 44873 }, null, -1)), 44874 _cache[1] || (_cache[1] = createBaseVNode("path", { 44875 d: "M6 6L18 18", 44876 stroke: "currentColor", 44877 "stroke-width": "2", 44878 "stroke-linecap": "round", 44879 "stroke-linejoin": "round" 44880 }, null, -1)) 44881 ], 8, _hoisted_1$3C); 44882} 44883const __nuxt_component_0$3 = /* @__PURE__ */ _export_sfc(_sfc_main$3D, [["render", _sfc_render$3h]]); 44884const CoreIconMenuClose = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 44885 __proto__: null, 44886 default: __nuxt_component_0$3 44887}, Symbol.toStringTag, { value: "Module" })); 44888const _sfc_main$3C = { 44889 name: "CoreIconHamburgerMenu", 44890 props: { 44891 settings: { 44892 type: Object, 44893 required: false 44894 } 44895 }, 44896 computed: { 44897 alt() { 44898 var _a, _b; 44899 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 44900 }, 44901 id() { 44902 var _a, _b; 44903 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 44904 } 44905 } 44906}; 44907const _hoisted_1$3B = ["aria-labelledby", "aria-label"]; 44908const _hoisted_2$3n = ["id"]; 44909function _sfc_render$3g(_ctx, _cache, $props, $setup, $data, $options) { 44910 return openBlock(), createElementBlock("svg", { 44911 role: "img", 44912 width: "20", 44913 height: "17",
44914 viewBox: "0 0 20 17", 44915 fill: "none", 44916 xmlns: "http://www.w3.org/2000/svg", 44917 "aria-labelledby": `icon-title-${$options.id}`, 44918 "aria-label": $options.alt 44919 }, [ 44920 createBaseVNode("title", { 44921 id: `icon-title-${$options.id}` 44922 }, toDisplayString($options.alt), 9, _hoisted_2$3n), 44923 _cache[0] || (_cache[0] = createBaseVNode("path", { 44924 d: "M1 6H19", 44925 stroke: "currentColor", 44926 "stroke-width": "2", 44927 "stroke-linecap": "round", 44928 "stroke-linejoin": "round" 44929 }, null, -1)), 44930 _cache[1] || (_cache[1] = createBaseVNode("path", { 44931 d: "M1 1H19", 44932 stroke: "currentColor", 44933 "stroke-width": "2", 44934 "stroke-linecap": "round", 44935 "stroke-linejoin": "round" 44936 }, null, -1)), 44937 _cache[2] || (_cache[2] = createBaseVNode("path", { 44938 d: "M1 11H19", 44939 stroke: "currentColor", 44940 "stroke-width": "2", 44941 "stroke-linecap": "round", 44942 "stroke-linejoin": "round" 44943 }, null, -1)), 44944 _cache[3] || (_cache[3] = createBaseVNode("path", { 44945 d: "M1 16H19", 44946 stroke: "currentColor", 44947 "stroke-width": "2", 44948 "stroke-linecap": "round", 44949 "stroke-linejoin": "round" 44950 }, null, -1)) 44951 ], 8, _hoisted_1$3B); 44952} 44953const __nuxt_component_1$3 = /* @__PURE__ */ _export_sfc(_sfc_main$3C, [["render", _sfc_render$3g]]); 44954const CoreIconHamburgerMenu = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 44955 __proto__: null, 44956 default: __nuxt_component_1$3 44957}, Symbol.toStringTag, { value: "Module" })); 44958const _hoisted_1$3A = ["alt", "src"]; 44959const _sfc_main$3B = { 44960 __name: "CoreBlockMainNavImage", 44961 props: { 44962 site: { 44963 type: Object, 44964 default: () => { 44965 return {}; 44966 } 44967 } 44968 }, 44969 emits: ["click"], 44970 setup(__props, { emit: __emit }) { 44971 const emit2 = __emit; 44972 const props = __props; 44973 const navigation = computed(() => { 44974 return props.site.navigation; 44975 }); 44976 const navigationImage = computed(() => { 44977 var _a; 44978 return (_a = navigation.value) == null ? void 0 : _a.navImage; 44979 }); 44980 const navigationImageLink = computed(() => { 44981 var _a; 44982 return ((_a = navigation.value) == null ? void 0 : _a.navImageLink) || "/"; 44983 }); 44984 const navigationImageInternalLink = computed(() => { 44985 var _a; 44986 return (_a = navigationImageLink.value) == null ? void 0 : _a.startsWith("/"); 44987 }); 44988 const navigationImageTag = computed(() => { 44989 if (navigationImageInternalLink.value) { 44990 return __nuxt_component_2$5; 44991 } 44992 return "a"; 44993 }); 44994 const imageClick = (event, closeNav = true) => { 44995 emit2("click", event, closeNav); 44996 }; 44997 return (_ctx, _cache) => { 44998 return openBlock(), createBlock(resolveDynamicComponent(navigationImageTag.value), mergeProps({ 44999 class: "navbar_nav-end-link", 45000 target: navigationImageInternalLink.value ? "_self" : "_blank" 45001 }, { 45002 ...navigationImageInternalLink.value ? { to: navigationImageLink.value } : { href: navigationImageLink.value } 45003 }, { onClick: imageClick }), { 45004 default: withCtx(() => [ 45005 createBaseVNode("img", { 45006 class: "navbar_nav-image", 45007 alt: navigationImage.value.alt, 45008 src: navigationImage.value.src 45009 }, null, 8, _hoisted_1$3A) 45010 ]), 45011 _: 1 45012 }, 16, ["target"]); 45013 }; 45014 } 45015}; 45016const CoreBlockMainNavImage = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 45017 __proto__: null, 45018 default: _sfc_main$3B 45019}, Symbol.toStringTag, { value: "Module" })); 45020const NAV_STYLES_WITH_DISPLAY_INFO = ["standard", "transparent"]; 45021const NAV_LAYOUTS = { 45022 "stacked-center": { 45023 flag: "CenteredLogoNavigation", 45024 classes: ["block_main-nav--stacked-center"], 45025 sticky: true 45026 }, 45027 floating: { 45028 flag: "FloatingNavigation", 45029 classes: ["block_main-nav--floating"], 45030 sticky: false 45031 }, 45032 transparent: { 45033 flag: "BuilderEnhTransparentNavigation", 45034 classes: ["block_main-nav--transparent"], 45035 sticky: false 45036 } 45037};
45038const STACKED_RIGHT_NAV_STYLES = ["standard", "floating", "transparent"]; 45039const STANDARD_NAV_LAYOUT = { flag: null, classes: [], sticky: true }; 45040const _sfc_main$3A = { 45041 name: "CoreBlockMainNav", 45042 components: { 45043 NuxtLink: __nuxt_component_2$5 45044 }, 45045 props: { 45046 site: { 45047 type: Object, 45048 default: () => { 45049 return {}; 45050 } 45051 }, 45052 isBuilder: { 45053 type: Boolean, 45054 default: false 45055 }, 45056 isBuilderMobile: { 45057 type: Boolean, 45058 default: false 45059 }, 45060 isEditable: { 45061 type: Boolean, 45062 default: false 45063 } 45064 }, 45065 setup() { 45066 const store = useStore(); 45067 const { state, commit: commit2 } = store; 45068 const { isMobile } = useIsMobile(); 45069 return { isMobile, state, commit: commit2 }; 45070 }, 45071 data() { 45072 return { 45073 hamVisible: false, 45074 hoverPageId: null, 45075 mobileNavVisible: false, 45076 windowScroll: null, 45077 showSkipLink: false, 45078 blockId: void 0, 45079 scrollLockHandler: null, 45080 navScrollHandler: null, 45081 isNavAtTop: true, 45082 logoSrc: null, 45083 defaultLogo: { 45084 src: "/img/logos/nyl-logo-blue.svg", 45085 alt: "New York Life Insurance" 45086 } 45087 }; 45088 }, 45089 computed: { 45090 isNYL() { 45091 var _a; 45092 return ((_a = this == null ? void 0 : this.site) == null ? void 0 : _a.brandId) === 3; 45093 }, 45094 isCoreLite() { 45095 var _a, _b, _c; 45096 return ((_c = (_b = (_a = this.state) == null ? void 0 : _a.settings) == null ? void 0 : _b.brandFeatureFlags) == null ? void 0 : _c.includes( 45097 BRAND_FEATURE_FLAGS.CoreLite 45098 )) ?? false; 45099 }, 45100 buttonSettings() { 45101 return { 45102 icon: this.navButtonIcon, 45103 label: this.navButton ? this.navButton.title : "", 45104 newWindow: this.navButtonLink && !isObject$1(this.navButtonLink) ? this.navButtonLink.startsWith("http") : false, 45105 type: "button", 45106 url: this.navButtonLink, 45107 relAttributes: this.navButtonRelAttributes, 45108 variants: { 45109 "icon-placement": this.navButtonIconPlacement, 45110 style: this.navButtonStyle 45111 } 45112 }; 45113 }, 45114 navButton() { 45115 var _a, _b; 45116 return (_b = (_a = this == null ? void 0 : this.site) == null ? void 0 : _a.pages) == null ? void 0 : _b.find( 45117 (p2) => { 45118 var _a2; 45119 return (_a2 = getPageSettings(p2)) == null ? void 0 : _a2.isNavButton; 45120 } 45121 ); 45122 }, 45123 showNavigationImage() { 45124 var _a, _b; 45125 return ((_a = this.navigation) == null ? void 0 : _a.navImage) && ((_b = this.state.settings.featureFlags) == null ? void 0 : _b.NavBarEnhancements); 45126 }, 45127 navButtonDialog() { 45128 var _a, _b, _c, _d;
45129 try { 45130 const dialog = (_b = JSON.parse((_a = this.navButton) == null ? void 0 : _a.link)) == null ? void 0 : _b.dialog; 45131 return dialog; 45132 } catch { 45133 return (_d = (_c = this.navButton) == null ? void 0 : _c.link) == null ? void 0 : _d.dialog; 45134 } 45135 }, 45136 navButtonIcon() { 45137 var _a, _b, _c, _d; 45138 try { 45139 const icon = (_b = JSON.parse((_a = this.navButton) == null ? void 0 : _a.settings)) == null ? void 0 : _b.icon; 45140 return icon; 45141 } catch { 45142 return (_d = (_c = this.navButton) == null ? void 0 : _c.settings) == null ? void 0 : _d.icon; 45143 } 45144 }, 45145 navButtonIconPlacement() { 45146 var _a, _b, _c, _d; 45147 try { 45148 const iconPlacement = (_b = JSON.parse( 45149 (_a = this.navButton) == null ? void 0 : _a.settings 45150 )) == null ? void 0 : _b.iconPlacement; 45151 return iconPlacement ?? "icon-left"; 45152 } catch { 45153 return ((_d = (_c = this.navButton) == null ? void 0 : _c.settings) == null ? void 0 : _d.iconPlacement) ?? "icon-left"; 45154 } 45155 }, 45156 navButtonStyle() { 45157 var _a; 45158 return ((_a = this.navigation) == null ? void 0 : _a.buttonStyle) ?? "primary"; 45159 }, 45160 navButtonLink() { 45161 var _a, _b, _c, _d, _e, _f; 45162 try { 45163 return ((_b = JSON.parse((_a = this.navButton) == null ? void 0 : _a.link)) == null ? void 0 : _b.url) || `/${(_c = this.navButton) == null ? void 0 : _c.handle}`; 45164 } catch { 45165 return ((_e = (_d = this.navButton) == null ? void 0 : _d.link) == null ? void 0 : _e.url) || `/${(_f = this.navButton) == null ? void 0 : _f.handle}`; 45166 } 45167 }, 45168 navButtonRelAttributes() { 45169 var _a, _b, _c, _d;
45170 try { 45171 return (_b = JSON.parse((_a = this.navButton) == null ? void 0 : _a.link)) == null ? void 0 : _b.relAttributes; 45172 } catch { 45173 return (_d = (_c = this.navButton) == null ? void 0 : _c.link) == null ? void 0 : _d.relAttributes; 45174 } 45175 }, 45176 pageTree() { 45177 var _a; 45178 try { 45179 return ((_a = this == null ? void 0 : this.site) == null ? void 0 : _a.pages.filter( 45180 (p2) => { 45181 var _a2, _b; 45182 return !p2.isPrivate && !p2.parentPageId && ((_a2 = this == null ? void 0 : this.site) == null ? void 0 : _a2.homepageId) != p2.id && !((_b = getPageSettings(p2)) == null ? void 0 : _b.isNavButton); 45183 } 45184 )) || []; 45185 } catch (err) { 45186 return []; 45187 } 45188 }, 45189 logoInternalLink() { 45190 return isObject$1(this.logoLink) || this.logoLink.startsWith("/"); 45191 }, 45192 logoTag() { 45193 if (this.logoInternalLink) { 45194 return "NuxtLink"; 45195 } 45196 return "a"; 45197 }, 45198 blockClasses() { 45199 var _a, _b; 45200 const classList = ["block", "block_main-nav"]; 45201 if ((_a = this.navigation) == null ? void 0 : _a.menuAlignment) { 45202 classList.push( 45203 `block_main-nav_align-${this.navigation.menuAlignment}` 45204 ); 45205 } 45206 if (this.hamVisible) { 45207 classList.push("block_main-nav--subnav_open"); 45208 } 45209 classList.push(...this.navLayout.classes); 45210 if (this.navLayout.sticky && !this.isBuilder) { 45211 classList.push("block_main-nav--sticky_nav"); 45212 } 45213 if (this.invertNavColors) { 45214 classList.push("block_main-nav--transparent-invert"); 45215 } 45216 if (this.isTransparent && !this.isBuilder && this.isNavAtTop) { 45217 classList.push("block_main-nav--at-top"); 45218 } 45219 if (this.isStackedRightDesktop) { 45220 classList.push("block_main-nav--stacked-right"); 45221 } 45222 if (this.isBuilder) { 45223 classList.push("block_main-nav--pointer_all"); 45224 classList.push("block_main-nav--builder-canvas"); 45225 } 45226 if (((_b = this.state.settings.featureFlags) == null ? void 0 : _b.NavBarEnhancements) && this.navigation.navBarHeight && !(this.isNavMobile && this.navigation.toggleNavHeightMobile)) { 45227 classList.push( 45228 `block_main-nav--height-${this.navigation.navBarHeight}` 45229 ); 45230 } 45231 return classList; 45232 }, 45233 navigation() { 45234 var _a; 45235 return ((_a = this.site) == null ? void 0 : _a.navigation) || {}; 45236 }, 45237 navStyle() { 45238 return this.navigation.navStyle || "standard"; 45239 }, 45240 resolvedNavStyle() { 45241 var _a; 45242 const layout = NAV_LAYOUTS[this.navStyle]; 45243 if (layout && ((_a = this.state.settings.featureFlags) == null ? void 0 : _a[layout.flag])) { 45244 return this.navStyle; 45245 } 45246 return "standard"; 45247 }, 45248 navLayout() { 45249 return NAV_LAYOUTS[this.resolvedNavStyle] || STANDARD_NAV_LAYOUT; 45250 }, 45251 isStackedCenter() { 45252 return this.resolvedNavStyle === "stacked-center"; 45253 }, 45254 isFloating() { 45255 return this.resolvedNavStyle === "floating"; 45256 }, 45257 isTransparent() { 45258 return this.resolvedNavStyle === "transparent"; 45259 }, 45260 invertNavColors() { 45261 return this.isTransparent && !!this.navigation.invertNavColors; 45262 }, 45263 isStackedRight() { 45264 var _a; 45265 return !!this.navigation.stackedRight && !!((_a = this.state.settings.featureFlags) == null ? void 0 : _a.BuilderEnhStackedRightNavigation) && STACKED_RIGHT_NAV_STYLES.includes(this.resolvedNavStyle); 45266 }, 45267 isStackedRightDesktop() { 45268 return this.isStackedRight && !this.isNavMobile; 45269 }, 45270 centeredNavColorOption() { 45271 return this.navigation.centeredNavColorOption || "single-color-divider"; 45272 }, 45273 originalLogo() { 45274 const logoSrc = isObject$1(this.navigation.logo) ? this.navigation.logo.src : this.navigation.logo; 45275 const rendered = renderData(logoSrc, this.site); 45276 if (this.logoFallbackEnabled) { 45277 return rendered || this.fallbackLogo || this.staticLogo; 45278 } 45279 if (rendered) return rendered; 45280 if (this.isCoreLite) return this.fallbackLogo || this.staticLogo; 45281 if (this.isNYL) return this.defaultLogo.src; 45282 return "/img/core-logo.svg"; 45283 }, 45284 // Both fallback rungs must describe the same brand: in the Builder the loaded brand wins 45285 // over the edited site's, so deriving them separately would mix two brands' logos. 45286 logoBrandId() { 45287 var _a, _b, _c; 45288 return ((_b = (_a = this.state) == null ? void 0 : _a.brand) == null ? void 0 : _b.id) ?? ((_c = this.site) == null ? void 0 : _c.brandId); 45289 }, 45290 fallbackLogo() { 45291 return generateFallbackLogoURL(this.logoBrandId); 45292 }, 45293 // Last resort, bundled with the app so it cannot 404 the way a remote URL can. 45294 staticLogo() { 45295 return this.logoBrandId === 3 ? this.defaultLogo.src : "/img/core-logo.svg"; 45296 }, 45297 logoFallbackEnabled() { 45298 var _a; 45299 return (_a = this.state.settings.featureFlags) == null ? void 0 : _a.LogoFallback; 45300 }, 45301 logoStyle() { 45302 return this.navigation.logoStyle; 45303 }, 45304 logoAltText() { 45305 const logoAlt = isObject$1(this.navigation.logo) ? this.navigation.logo.alt : this.navigation.logoAltText; 45306 if (this.logoFallbackEnabled) { 45307 return logoAlt || "Website Logo"; 45308 } else { 45309 const defaultAlt = this.logoSrc === this.defaultLogo.src && this.defaultLogo.alt; 45310 return logoAlt || defaultAlt || this.name; 45311 } 45312 }, 45313 logoLink() { 45314 return this.isCoreLite ? "/" : this.navigation.logoLink || "/"; 45315 }, 45316 hasDataName() { 45317 const dataName = renderData(this.navigation.name, this.site) || ""; 45318 return !!dataName.trim(); 45319 }, 45320 name() { 45321 var _a; 45322 const formattedName = formatName( 45323 this.navigation.name, 45324 (_a = this.site.user) == null ? void 0 : _a.ddcUserData 45325 ); 45326 return this.hasDataName ? unescape$1(renderData(formattedName, this.site)) : this.site.title; 45327 }, 45328 displayName() { 45329 var _a, _b; 45330 return (_b = (_a = this.site.user) == null ? void 0 : _a.ddcUserData) == null ? void 0 : _b.dis
45330playName; 45331 }, 45332 showsDisplayInformation() { 45333 return !this.isCoreLite && NAV_STYLES_WITH_DISPLAY_INFO.includes(this.navStyle); 45334 }, 45335 showUsername() { 45336 if (!this.showsDisplayInformation) return false; 45337 return this.navigation.showUsername; 45338 }, 45339 showOverline() { 45340 if (!this.showsDisplayInformation) return false; 45341 return this.navigation.showOverline; 45342 }, 45343 showTitle() { 45344 if (!this.showsDisplayInformation) return false; 45345 return this.navigation.showTitle; 45346 }, 45347 isManagingPartner() { 45348 var _a, _b, _c; 45349 if (((_c = (_b = (_a = this.site.user) == null ? void 0 : _a.ddcUserData) == null ? void 0 : _b.marketerTitleTpDesc) == null ? void 0 : _c.toLowerCase()) === "managing partner") { 45350 return true; 45351 } 45352 if (this.hasOrganizationManager) { 45353 return true; 45354 } 45355 return false; 45356 }, 45357 overline() { 45358 if (this.hasOrganization) { 45359 return this.organizationName + " General Office"; 45360 } 45361 if (this.isGO) { 45362 return this.goHeadquarters + " General Office"; 45363 } 45364 return unescape$1(renderData(this.navigation.overline, this.site)); 45365 }, 45366 jobTitle() { 45367 if (this.isManagingPartner) { 45368 return "Managing Partner"; 45369 } 45370 return renderData(this.navigation.jobTitle, this.site); 45371 }, 45372 isGO() { 45373 var _a; 45374 return ((_a = this.site.tags) == null ? void 0 : _a.includes(1305)) ?? false; 45375 }, 45376 hasOrganization() { 45377 return this.site.organizationId != null; 45378 }, 45379 hasOrganizationManager() { 45380 return this.site.organizationManagerId != null; 45381 }, 45382 organizationName() { 45383 return this.site.organizationName; 45384 }, 45385 organizationTitle() { 45386 var _a, _b; 45387 return (_b = (_a = this.site.user) == null ? void 0 : _a.ddcUserData) == null ? void 0 : _b.AgentTitleExternalDesc; 45388 }, 45389 goHeadquarters() { 45390 var _a, _b; 45391 return (_b = (_a = this.site.user) == null ? void 0 : _a.ddcUserData) == null ? void 0 : _b.orgUnitDesc; 45392 }, 45393 hasButton() { 45394 var _a; 45395 return (_a = this.navigation) == null ? void 0 : _a.button; 45396 }, 45397 buttonLink() { 45398 var _a; 45399 return (_a = this.navigation) == null ? void 0 : _a.buttonLink; 45400 }, 45401 buttonText() { 45402 var _a; 45403 return (_a = this.navigation) == null ? void 0 : _a.buttonText; 45404 }, 45405 buttonTarget() { 45406 var _a; 45407 return (_a = this.navigation) == null ? void 0 : _a.buttonTarget; 45408 }, 45409 menuAlignmentClass() { 45410 return `navbar__nav--${this.navigation.menuAlignment}`; 45411 }, 45412 logoClass() { 45413 return `brand_image brand_image--${this.logoStyle}`; 45414 }, 45415 navCenterClasses() { 45416 return [ 45417 "nav-center", 45418 "navbar__nav", 45419 "hide-xs", 45420 "hide-sm", 45421 `text-${this.navigation.menuAlignment}` 45422 ]; 45423 }, 45424 hasMoreThanOnePage() { 45425 var _a; 45426 return ((_a = this.site.pages) == null ? void 0 : _a.length) > 1; 45427 }, 45428 isNavMobile() { 45429 return this.isBuilderMobile || this.isMobile; 45430 }, 45431 teamMembersName() { 45432 var _a, _b, _c; 45433 if ((_a = this.navigation) == null ? void 0 : _a["team-member"]) { 45434 const teamMember = (_c = (_b = this.site) == null ? void 0 : _b.teamMembers) == null ? void 0 : _c.find( 45435 (t) => { 45436 var _a2; 45437 return t.id === ((_a2 = this.navigation) == null ? void 0 : _a2["team-member"]); 45438 } 45439 ); 45440 if (!teamMember) { 45441 return ""; 45442 } 45443 const firstName = (teamMember == null ? void 0 : teamMember.firstName) ? (teamMember == null ? void 0 : teamMember.firstName) + " " : ""; 45444 const middleName = (teamMember == null ? void 0 : teamMember.middleName) ? (teamMember == null ? void 0 : teamMember.middleName) + " " : ""; 45445 const lastName = (teamMember == null ? void 0 : teamMember.lastName) ? (teamMember == null ? void 0 : teamMember.lastName) + " " : ""; 45446 return `${firstName}${middleName}${lastName}`; 45447 } 45448 return ""; 45449 } 45450 }, 45451 watch: { 45452 "state.brand.id"() { 45453 this.logoSrc = this.originalLogo; 45454 }, 45455 originalLogo(newVal) { 45456 this.logoSrc = newVal; 45457 }, 45458 isNavMobile(nv) { 45459 if (!nv && this.hamVisible) this.hamVisible = false;
45460 }, 45461 hamVisible(nv) { 45462 if (nv && this.isNavMobile) { 45463 this.lockScroll(); 45464 } else { 45465 this.unlockScroll(); 45466 } 45467 }, 45468 navStyle() { 45469 this.syncNavScrollPadding(); 45470 this.syncTransparentScrollListener(); 45471 } 45472 }, 45473 mounted() { 45474 this.logoSrc = this.originalLogo; 45475 this.syncNavScrollPadding(); 45476 this.syncTransparentScrollListener(); 45477 }, 45478 beforeUnmount() { 45479 document.documentElement.style.scrollPaddingTop = ""; 45480 this.unlockScroll(); 45481 this.teardownNavScrollListener(); 45482 }, 45483 methods: { 45484 lockScroll() { 45485 this.unlockScroll(); 45486 const panel = this.$el.querySelector("#main-nav-menu"); 45487 this.scrollLockHandler = (event) => { 45488 if (panel && panel.contains(event.target)) return; 45489 event.preventDefault(); 45490 }; 45491 window.addEventListener("wheel", this.scrollLockHandler, { 45492 passive: false 45493 }); 45494 window.addEventListener("touchmove", this.scrollLockHandler, { 45495 passive: false 45496 }); 45497 }, 45498 unlockScroll() { 45499 if (!this.scrollLockHandler) return; 45500 window.removeEventListener("wheel", this.scrollLockHandler); 45501 window.removeEventListener("touchmove", this.scrollLockHandler); 45502 this.scrollLockHandler = null; 45503 }, 45504 syncNavScrollPadding() { 45505 if (this.isBuilder) { 45506 document.documentElement.style.scrollPaddingTop = ""; 45507 return; 45508 } 45509 if (this.isFloating) { 45510 document.documentElement.style.scrollPaddingTop = "calc(var(--_core__nav_height) + var(--_core__floating-nav_gutter) * 2)"; 45511 } else if (this.isTransparent) { 45512 document.documentElement.style.scrollPaddingTop = "var(--_core__nav_height)"; 45513 } else { 45514 document.documentElement.style.scrollPaddingTop = ""; 45515 } 45516 }, 45517 syncTransparentScrollListener() { 45518 this.teardownNavScrollListener(); 45519 if (this.isBuilder || !this.isTransparent) { 45520 this.isNavAtTop = true; 45521 return; 45522 } 45523 this.navScrollHandler = () => { 45524 this.isNavAtTop = window.scrollY <= 0; 45525 }; 45526 window.addEventListener("scroll", this.navScrollHandler, { 45527 passive: true 45528 }); 45529 this.navScrollHandler(); 45530 }, 45531 teardownNavScrollListener() { 45532 if (!this.navScrollHandler) return; 45533 window.removeEventListener("scroll", this.navScrollHandler); 45534 this.navScrollHandler = null; 45535 }, 45536 // Steps one rung down the chain: site logo -> brand default -> bundled static. 45537 logoFailedToLoad() { 45538 if (!this.logoFallbackEnabled && !this.isCoreLite) return; 45539 if (this.logoSrc === this.staticLogo) return; 45540 this.logoSrc = this.fallbackLogo && this.logoSrc !== this.fallbackLogo ? this.fallbackLogo : this.staticLogo; 45541 }, 45542 handleToggle() { 45543 if (this.isBuilder && this.isEditable && !this.state.interface.isLeftRailClosing) { 45544 if (!this.state.interface.activeSidebarKey) { 45545 this.commit( 45546 "interface/toggleActiveSidebarKey", 45547 "navigation" 45548 ); 45549 } else { 45550 this.commit("interface/setActiveSidebarKey"); 45551 } 45552 this.commit( 45553 "interface/setRightRailOpening", 45554 !this.state.interface.isRightRailOpening 45555 ); 45556 this.commit("site/clearSelectedBlockIds"); 45557 setTimeout(() => { 45558 const targetElement = document.querySelector( 45559 ".editor-main-navigation" 45560 ); 45561 if (targetElement) 45562 targetElement.scrollIntoView({ behavior: "smooth" }); 45563 }, 500); 45564 } 45565 }, 45566 toggleHamVisible() { 45567 if (this.isNavMobile) { 45568 this.hamVisible = !this.hamVisible; 45569 } 45570 }, 45571 handleEscapeKey() { 45572 if (this.hamVisible) { 45573 this.hamVisible = false; 45574 this.$nextTick(() => { 45575 var _a; 45576 (_a = this.$refs.hamburgerBtn) == null ? void 0 : _a.focus(); 45577 }); 45578 } 45579 }, 45580 navClick(e, closeNav) { 45581 e.target.blur(); 45582 e.target.parentNode.blur(); 45583 if (closeNav) this.hamVisible = false; 45584 }, 45585 handleSkipLinkFocus() { 45586 this.blockId = this.getBlockId(); 45587 }, 45588 handleSkipNavigation(event) { 45589 event.preventDefault(); 45590 var firstChild = this.getFirstChild(); 45591 if (firstChild) { 45592 firstChild.scrollIntoView({ 45593 behavior: "smooth", 45594 block: "start", 45595 inline: "start" 45596 }); 45597 } 45598 this.$refs.skipLink.blur(); 45599 }, 45600 getBlockId() { 45601 var firstChild = this.getFirstChild(); 45602 var firstChildId = firstChild ? "#" + firstChild.id : null; 45603 return firstChildId; 45604 }, 45605 getFirstChild() { 45606 var parentElement = document.querySelector(".page__blocks"); 45607 var firstChild = parentElement.querySelector(":first-child"); 45608 return firstChild; 45609 } 45610 } 45611}; 45612const _hoisted_1$3z = { class: "block__body" }; 45613const _hoisted_2$3m = { 45614 class: /* @__PURE__ */ normalizeClass({ 45615 navbar: true 45616 }), 45617 "aria-labelledby": "mainmenulabel" 45618}; 45619const _hoisted_3$d = { class: "navbar_nav navbar_nav--left" };
45620const _hoisted_4$a = ["href"]; 45621const _hoisted_5$9 = { class: "brand" }; 45622const _hoisted_6$6 = ["alt", "src"]; 45623const _hoisted_7$5 = { class: "brand_text" }; 45624const _hoisted_8$5 = { 45625 key: 0, 45626 class: "brand_text__subtitle" 45627}; 45628const _hoisted_9$4 = { 45629 key: 1, 45630 class: "brand_text__title" 45631}; 45632const _hoisted_10$4 = { 45633 key: 2, 45634 class: "brand_text__subtitle" 45635}; 45636const _hoisted_11$4 = { class: "d-flex" }; 45637const _hoisted_12$4 = ["aria-expanded"]; 45638const _hoisted_13$4 = { 45639 key: 0, 45640 class: "navbar_nav--stacked-center-right" 45641}; 45642const _hoisted_14$4 = { 45643 key: 0, 45644 class: "navbar_item navbar_item--button navbar_item--stacked-center-btn" 45645}; 45646const _hoisted_15$4 = { 45647 key: 1, 45648 class: "navbar_nav navbar_nav--end" 45649}; 45650const _hoisted_16$4 = { 45651 key: 1, 45652 class: "navbar_nav--stacked-right-top" 45653}; 45654const _hoisted_17$3 = { 45655 key: 0, 45656 class: "navbar_item navbar_item--button" 45657}; 45658const _hoisted_18$3 = { 45659 key: 1, 45660 class: "navbar_nav navbar_nav--end" 45661}; 45662const _hoisted_19$3 = { 45663 key: 0, 45664 class: "navbar_item navbar_item--button" 45665}; 45666const _hoisted_20$2 = { 45667 key: 1, 45668 class: "navbar_nav navbar_nav--end navbar_nav--end-mobile" 45669}; 45670const _hoisted_21$1 = { 45671 key: 3, 45672 class: "navbar_nav navbar_nav--end" 45673}; 45674function _sfc_render$3f(_ctx, _cache, $props, $setup, $data, $options) { 45675 const _component_CoreIconMenuClose = __nuxt_component_0$3; 45676 const _component_CoreIconHamburgerMenu = __nuxt_component_1$3; 45677 const _component_CoreBlock = _sfc_main$4x; 45678 const _component_CoreBlockMainNavImage = _sfc_main$3B; 45679 const _component_CoreBlockNavItem = _sfc_main$4a; 45680 const _component_CoreBlockCenteredNavBar = _sfc_main$3V; 45681 return openBlock(), createElementBlock("div", { 45682 id: "main-nav", 45683 class: normalizeClass($options.blockClasses), 45684 onClick: _cache[8] || (_cache[8] = (...args) => $options.handleToggle && $options.handleToggle(...args)), 45685 onKeydown: _cache[9] || (_cache[9] = withKeys((...args) => $options.handleEscapeKey && $options.handleEscapeKey(...args), ["escape"])) 45686 }, [ 45687 createBaseVNode("div", _hoisted_1$3z, [ 45688 createBaseVNode("nav", _hoisted_2$3m, [ 45689 createBaseVNode("div", _hoisted_3$d, [ 45690 !$props.isBuilder ? (openBlock(), createElementBlock("a", { 45691 key: 0, 45692 ref: "skipLink", 45693 href: $data.blockId, 45694 class: "skiptocontent", 45695 role: "link", 45696 tabindex: "0", 45697 onFocus: _cache[0] || (_cache[0] = (...args) => $options.handleSkipLinkFocus && $options.handleSkipLinkFocus(...args)), 45698 onClick: _cache[1] || (_cache[1] = (...args) => $options.handleSkipNavigation && $options.handleSkipNavigation(...args)) 45699 }, " skip to main content ", 40, _hoisted_4$a)) : createCommentVNode("", true), 45700 _cache[11] || (_cache[11] = createBaseVNode("div", { 45701 id: "mainmenulabel", 45702 class: "navbar_label--hidden" 45703 }, " Main Menu ", -1)), 45704 createBaseVNode("figure", _hoisted_5$9, [ 45705 withDirectives((openBlock(), createBlock(resolveDynamicComponent($options.logoTag), mergeProps({ 45706 class: "brand_link", 45707 target: $options.logoInternalLink ? "_self" : "_blank" 45708 }, { 45709 ...$options.logoInternalLink ? { to: $options.logoLink } : { href: $options.logoLink } 45710 }), { 45711 default: withCtx(() => [ 45712 createBaseVNode("img", { 45713 alt: $options.logoAltText, 45714 class: normalizeClass($options.logoClass), 45715 src: $data.logoSrc, 45716 onError: _cache[2] || (_cache[2] = (...args) => $options.logoFailedToLoad && $options.logoFailedToLoad(...args)) 45717 }, null, 42, _hoisted_6$6) 45718 ]), 45719 _: 1 45720 }, 16, ["target"])), [ 45721 [vShow, $options.logoStyle !== "none"] 45722 ]), 45723 withDirectives(createBaseVNode("figcaption", _hoisted_7$5, [ 45724 $options.overline && $options.showOverline ? (openBlock(), createElementBlock("h6", _hoisted_8$5, toDisplayString($options.overline), 1)) : createCommentVNode("", true), 45725 $options.hasDataName && $options.showUsername ? (openBlock(), createElementBlock("h4", _hoisted_9$4, toDisplayString($options.teamMembersName || $options.displayName || $options.name), 1)) : createCommentVNode("", true), 45726 $options.jobTitle && $options.showUsername && $options.showTitle ? (openBlock(), createElementBlock("h6", _hoisted_10$4, toDisplayString($options.jobTitle), 1)) : createCommentVNode("", true) 45727 ], 512), [ 45728 [ 45729 vShow, 45730 $options.logoStyle !== "large" && $options.logoStyle !== "none" 45731 ] 45732 ]) 45733 ]), 45734 $options.logoStyle === "none" ? (openBlock(), createBlock(resolveDynamicComponent($options.logoTag), mergeProps( 45735 { 45736 key: 1, 45737 class: [ 45738 "navbar_link", 45739 $options.logoInternalLink ? "navbar_link-internal" : "navbar_link-external" 45740 ], 45741 target: $options.logoInternalLink ? "_self" : "_blank" 45742 }, 45743 $options.logoInternalLink ? { to: $options.logoLink } : { href: $options.logoLink } 45744 ), { 45745 default: withCtx(() => _cache[10] || (_cache[10] = [ 45746 createTextVNode(" Home ") 45747 ])), 45748 _: 1 45749 }, 16, ["class", "target"])) : createCommentVNode("", true) 45750 ]), 45751 createBaseVNode("div", { 45752 class: normalizeClass(["navbar_nav navbar_nav--right d-block", { 45753 "d-none-lg": !$options.isNavMobile 45754 }]) 45755 }, [ 45756 createBaseVNode("div", _hoisted_11$4, [ 45757 createBaseVNode("button", { 45758 ref: "hamburgerBtn", 45759 type: "button",
45760 class: "hamburger-menu-button", 45761 "aria-expanded": $data.hamVisible, 45762 "aria-controls": "main-nav-menu", 45763 "aria-label": "Toggle navigation menu", 45764 onClick: _cache[3] || (_cache[3] = (...args) => $options.toggleHamVisible && $options.toggleHamVisible(...args)) 45765 }, [ 45766 _cache[12] || (_cache[12] = createBaseVNode("span", { class: "hamburger-menu-label visually-hidden" }, "Menu", -1)), 45767 $data.hamVisible ? (openBlock(), createBlock(_component_CoreIconMenuClose, { 45768 key: 0, 45769 "aria-hidden": "true" 45770 })) : (openBlock(), createBlock(_component_CoreIconHamburgerMenu, { 45771 key: 1, 45772 "aria-hidden": "true" 45773 })) 45774 ], 8, _hoisted_12$4) 45775 ]) 45776 ], 2), 45777 $options.isStackedCenter && !$options.isNavMobile ? (openBlock(), createElementBlock("div", _hoisted_13$4, [ 45778 $options.navButton ? (openBlock(), createElementBlock("div", _hoisted_14$4, [ 45779 createVNode(_component_CoreBlock, { 45780 "is-editable": $props.isEditable, 45781 settings: $options.buttonSettings, 45782 onClick: _cache[4] || (_cache[4] = () => $data.hamVisible = false) 45783 }, null, 8, ["is-editable", "settings"]) 45784 ])) : createCommentVNode("", true), 45785 $options.showNavigationImage ? (openBlock(), createElementBlock("div", _hoisted_15$4, [ 45786 createVNode(_component_CoreBlockMainNavImage, { 45787 site: $props.site, 45788 onClick: $options.navClick 45789 }, null, 8, ["site", "onClick"]) 45790 ])) : createCommentVNode("", true) 45791 ])) : createCommentVNode("", true), 45792 $options.isStackedRightDesktop && ($options.navButton || $options.showNavigationImage) ? (openBlock(), createElementBlock("div", _hoisted_16$4, [ 45793 $options.navButton ? (openBlock(), createElementBlock("div", _hoisted_17$3, [ 45794 createVNode(_component_CoreBlock, { 45795 "is-editable": $props.isEditable, 45796 settings: $options.buttonSettings, 45797 onClick: _cache[5] || (_cache[5] = () => $data.hamVisible = false) 45798 }, null, 8, ["is-editable", "settings"]) 45799 ])) : createCommentVNode("", true), 45800 $options.showNavigationImage ? (openBlock(), createElementBlock("div", _hoisted_18$3, [ 45801 createVNode(_component_CoreBlockMainNavImage, { 45802 site: $props.site, 45803 onClick: $options.navClick 45804 }, null, 8, ["site", "onClick"]) 45805 ])) : createCommentVNode("", true) 45806 ])) : createCommentVNode("", true), 45807 $options.hasMoreThanOnePage && (!$options.isStackedCenter || $options.isNavMobile) ? (openBlock(), createElementBlock("ul", { 45808 key: 2, 45809 id: "main-nav-menu", 45810 class: normalizeClass(["navbar_nav navbar_nav--center", { "navbar_nav--center-mobile": $options.isNavMobile }]), 45811 "aria-labelledby": "mainmenulabel", 45812 onClick: _cache[7] || (_cache[7] = (...args) => $options.navClick && $options.navClick(...args)) 45813 }, [ 45814 (openBlock(true), createElementBlock(Fragment, null, renderList($options.pageTree, (page1, pIndex) => { 45815 return openBlock(), createBlock(_component_CoreBlockNavItem, { 45816 key: page1.linkText + page1.linkUrl + pIndex || pIndex, 45817 site: $props.site, 45818 navitem: page1, 45819 class: "navbar_item navbar_item--dropdown", 45820 "is-nav-open": $data.hamVisible, 45821 "is-mobile": $options.isNavMobile, 45822 "is-editable": $props.isEditable, 45823 "is-builder": $props.isBuilder, 45824 onClick: $options.navClick 45825 }, null, 8, ["site", "navitem", "is-nav-open", "is-mobile", "is-editable", "is-builder", "onClick"]); 45826 }), 128)), 45827 $options.navButton && !$options.isStackedRightDesktop ? (openBlock(), createElementBlock("li", _hoisted_19$3, [ 45828 createVNode(_component_CoreBlock, { 45829 "is-editable": $props.isEditable, 45830 settings: $options.buttonSettings, 45831 onClick: _cache[6] || (_cache[6] = () => $data.hamVisible = false) 45832 }, null, 8, ["is-editable", "settings"]) 45833 ])) : createCommentVNode("", true), 45834 $options.showNavigationImage && $options.isNavMobile ? (openBlock(), createElementBlock("li", _hoisted_20$2, [ 45835 createVNode(_component_CoreBlockMainNavImage, { 45836 site: $props.site, 45837 onClick: $options.navClick 45838 }, null, 8, ["site", "onClick"]) 45839 ])) : createCommentVNode("", true) 45840 ], 2)) : createCommentVNode("", true), 45841 $options.showNavigationImage && !$options.isNavMobile && !$options.isStackedCenter && !$options.isStackedRightDesktop ? (openBlock(), createElementBlock("div", _hoisted_21$1, [ 45842 createVNode(_component_CoreBlockMainNavImage, { 45843 site: $props.site, 45844 onClick: $options.navClick 45845 }, null, 8, ["site", "onClick"]) 45846 ])) : createCommentVNode("", true) 45847 ]), 45848 $options.isStackedCenter && !$options.isNavMobile ? (openBlock(), createBlock(_component_CoreBlockCenteredNavBar, { 45849 key: 0, 45850 site: $props.site, 45851 "is-builder": $props.isBuilder, 45852 "is-editable": $props.isEditable, 45853 "is-nav-mobile": $options.isNavMobile, 45854 "color-option": $options.centeredNavColorOption, 45855 "page-tree": $options.pageTree, 45856 "ham-visible": $data.hamVisible 45857 }, null, 8, ["site", "is-builder", "is-editable", "is-nav-mobile", "color-option", "page-tree", "ham-visible"])) : createCommentVNode("", true) 45858 ]) 45859 ], 34); 45860} 45861const __nuxt_component_0$2 = /* @__PURE__ */ _export_sfc(_sfc_main$3A, [["render", _sfc_render$3f]]); 45862const CoreBlockMainNav = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 45863 __proto__: null, 45864 default: __nuxt_component_0$2 45865}, Symbol.toStringTag, { value: "Module" })); 45866const _hoisted_1$3y = ["src", "alt"]; 45867const _hoisted_2$3l = { 45868 key: 1, 45869 class: "map-overlay" 45870}; 45871const _sfc_main$3z = { 45872 __name: "CoreBlockMap", 45873 props: { 45874 settings: { 45875 type: Object, 45876 required: true 45877 }, 45878 dataSite: { 45879 type: Object, 45880 required: true 45881 } 45882 }, 45883 setup(__props) { 45884 const props = __props; 45885 const store = useStore(); 45886 const { state } = store; 45887 const useStaticMapFlag = computed( 45888 () => { 45889 var _a, _b; 45890 return (_b = (_a = state == null ? void 0 : state.settings) == null ? void 0 : _a.featureFlags) == null ? void 0 : _b.StaticMap; 45891 } 45892 ); 45893 const mapContainer = ref(); 45894 const map = ref(); 45895 const showInteractiveMap = ref(false); 45896 const loaded = ref(false); 45897 const mapInstance = shallowRef(null); 45898 const mapMarker = ref(null); 45899 const apiKey = ref(null); 45900 onMounted(async () => {
45901 try { 45902 const { useRuntimeConfig: useRuntimeConfig2 } = await __vitePreload(async () => { 45903 const { useRuntimeConfig: useRuntimeConfig3 } = await Promise.resolve().then(() => index); 45904 return { useRuntimeConfig: useRuntimeConfig3 }; 45905 }, true ? void 0 : void 0, import.meta.url); 45906 const config = useRuntimeConfig2(); 45907 apiKey.value = config.public.googleMapsKey; 45908 if (!useStaticMapFlag.value) { 45909 loadInteractiveMap(); 45910 } 45911 } catch { 45912 console.warn( 45913 "Runtime config not available. Google Maps API key should be provided via environment or props." 45914 ); 45915 } 45916 }); 45917 const address = computed(() => props.settings.address || {}); 45918 const line1 = computed(() => renderData(address.value.line1, props.dataSite)); 45919 const line2 = computed(() => renderData(address.value.line2, props.dataSite)); 45920 const city = computed(() => renderData(address.value.city, props.dataSite)); 45921 const stateValue = computed( 45922 () => renderData(address.value.state, props.dataSite) 45923 ); 45924 const zip = computed(() => renderData(address.value.zip, props.dataSite)); 45925 const fullAddress = computed(() => { 45926 return `${line1.value ? line1.value : ""} ${line2.value ? line2.value : ""}, ${city.value ? city.value : ""}, ${stateValue.value ? stateValue.value : ""}, ${zip.value ? zip.value : ""}`; 45927 }); 45928 const staticMapUrl = computed(() => { 45929 if (!apiKey.value || !mapContainer.value) return ""; 45930 const address2 = `${line1.value ? encodeURIComponent(line1.value) : ""} ${line2.value ? encodeURIComponent(line2.value) : ""}, ${city.value ? encodeURIComponent(city.value) : ""}, ${stateValue.value ? encodeURIComponent(stateValue.value) : ""}`; 45931 const zoom = 18; 45932 const scale = mapContainer.value.offsetWidth > 640 ? 2 : 1; 45933 const width = mapContainer.value.offsetWidth > 640 ? Math.floor(mapContainer.value.offsetWidth / 2) : mapContainer.value.offsetWidth || 600; 45934 const height = Math.floor(500 / scale); 45935 const size = `${width}x${height}`; 45936 return `https://maps.googleapis.com/maps/api/staticmap?center=${address2}&markers=color:red%7C${address2}&zoom=${zoom}&size=${size}&scale=${scale}&style=feature:poi|visibility:off&key=${apiKey.value}`; 45937 }); 45938 const mapAlt = computed(() => `Map showing ${city.value}, ${stateValue.value}`); 45939 const handleMapClick = () => { 45940 loadInteractiveMap(); 45941 }; 45942 const handleMapKeydown = (event) => { 45943 if (event.key === "Enter" || event.key === " ") { 45944 event.preventDefault(); 45945 loadInteractiveMap(); 45946 } 45947 }; 45948 const loadInteractiveMap = async () => { 45949 if (!apiKey.value || loaded.value) return; 45950 showInteractiveMap.value = true; 45951 try { 45952 const GoogleMapsLoader = await __vitePreload(() => import("./CJDL-Qke.js"), true ? [] : void 0, import.meta.url); 45953 const loader = new GoogleMapsLoader.Loader({ 45954 apiKey: apiKey.value, 45955 version: "weekly", 45956 libraries: ["marker"] 45957 }); 45958 await loader.load(); 45959 const { Map: Map2, Geocoder, GeocoderStatus, marker, InfoWindow } = google.maps; 45960 mapInstance.value = new Map2(map.value, { 45961 zoom: 18, 45962 mapId: "8a73bae3db62b7306bacbbda" 45963 }); 45964 const geocoder = new Geocoder(); 45965 geocoder.geocode({ address: fullAddress.value }, (results, status) => { 45966 if (status === GeocoderStatus.OK && mapInstance.value) { 45967 const location2 = results[0].geometry.location; 45968 mapInstance.value.setCenter(location2); 45969 mapInstance.value.setZoom(18); 45970 mapMarker.value = new marker.AdvancedMarkerElement({ 45971 map: mapInstance.value, 45972 position: location2, 45973 title: fullAddress.value 45974 }); 45975 const infoWindow = new InfoWindow({ 45976 content: `<div class='poi-info-window'> 45977 <p class='info-address'>${fullAddress.value}</p> 45978 <div> 45979 <a href='https://www.google.com/maps/search/${encodeURIComponent( 45980 fullAddress.value 45981 )}' target='_blank' class='info-map-link' aria-label='open Google Maps in a new tab'>view larger map</a> 45982 | 45983 <a href='https://www.google.com/maps/dir//${encodeURIComponent( 45984 fullAddress.value 45985 )}' target='_blank' class='info-directions-link' aria-label='open Google Maps Directions in a new tab'>get directions</a> 45986 </div> 45987 </div>` 45988 }); 45989 mapMarker.value.addListener("click", () => { 45990 infoWindow.open({ 45991 anchor: mapMarker.value, 45992 map: mapInstance.value 45993 }); 45994 }); 45995 } 45996 }); 45997 loaded.value = true; 45998 } catch (error) { 45999 console.error("Failed to load Google Maps:", error); 46000 } 46001 }; 46002 return (_ctx, _cache) => { 46003 return openBlock(), createElementBlock("div", { 46004 ref_key: "mapContainer", 46005 ref: mapContainer, 46006 class: "block__body" 46007 }, [ 46008 useStaticMapFlag.value && !showInteractiveMap.value ? (openBlock(), createElementBlock("div", { 46009 key: 0, 46010 class: normalizeClass(["block_map block_map--static", { "block_map--disabled": !apiKey.value }]) 46011 }, [ 46012 apiKey.value && staticMapUrl.value ? (openBlock(), createElementBlock("img", { 46013 key: 0, 46014 src: staticMapUrl.value, 46015 alt: mapAlt.value, 46016 class: "static-map-image", 46017 tabindex: "0", 46018 role: "button", 46019 "aria-label": "Click to open interactive map", 46020 onClick: handleMapClick, 46021 onKeydown: handleMapKeydown 46022 }, null, 40, _hoisted_1$3y)) : createCommentVNode("", true), 46023 apiKey.value ? (openBlock(), createElementBlock("div", _hoisted_2$3l, [ 46024 createBaseVNode("button", { 46025 class: "map-overlay-button", 46026 "aria-label": "Open interactive map", 46027 onClick: handleMapClick 46028 }, _cache[0] || (_cache[0] = [ 46029 createBaseVNode("svg", { 46030 width: "24", 46031 height: "24",
46032 viewBox: "0 0 24 24", 46033 fill: "none", 46034 xmlns: "http://www.w3.org/2000/svg" 46035 }, [ 46036 createBaseVNode("path", { 46037 d: "M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z", 46038 fill: "currentColor" 46039 }) 46040 ], -1), 46041 createTextVNode(" Open Interactive Map ") 46042 ])) 46043 ])) : createCommentVNode("", true) 46044 ], 2)) : createCommentVNode("", true), 46045 !useStaticMapFlag.value || showInteractiveMap.value ? (openBlock(), createElementBlock("div", { 46046 key: 1, 46047 ref_key: "map", 46048 ref: map, 46049 class: normalizeClass(["block_map block_map--interactive", { "block_map--disabled": !apiKey.value }]) 46050 }, null, 2)) : createCommentVNode("", true) 46051 ], 512); 46052 }; 46053 } 46054}; 46055const CoreBlockMap = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 46056 __proto__: null, 46057 default: _sfc_main$3z 46058}, Symbol.toStringTag, { value: "Module" })); 46059const _sfc_main$3y = { 46060 name: "CoreBlockMedia", 46061 props: { 46062 settings: { 46063 type: Object, 46064 required: true 46065 }, 46066 isEditable: { 46067 type: Boolean, 46068 default: false 46069 }, 46070 // Builder-only: forwarded to the inner CoreBlock (image/video) to 46071 // enable inline canvas editing. Defaults off so SiteViewer is
46071inert. 46072 inlineEditable: { 46073 type: Boolean, 46074 default: false 46075 }, 46076 // Builder-only: whether inline editing is currently active for this block. 46077 inlineEditing: { 46078 type: Boolean, 46079 default: false 46080 } 46081 }, 46082 setup(props) { 46083 const mediaSrc = computed(() => { 46084 var _a; 46085 return (_a = props.settings) == null ? void 0 : _a.src; 46086 }); 46087 const { mediaType } = useMedia(mediaSrc); 46088 return { 46089 mediaType 46090 }; 46091 } 46092}; 46093function _sfc_render$3e(_ctx, _cache, $props, $setup, $data, $options) { 46094 const _component_CoreBlock = _sfc_main$4x; 46095 return openBlock(), createElementBlock("div", null, [ 46096 createVNode(_component_CoreBlock, { 46097 settings: { ...$props.settings, type: $setup.mediaType }, 46098 "is-editable": $props.isEditable, 46099 "inline-editable": $props.inlineEditable, 46100 "inline-editing": $props.inlineEditing 46101 }, createSlots({ _: 2 }, [ 46102 _ctx.$slots["inline-editor"] ? { 46103 name: "inline-editor", 46104 fn: withCtx((slotData) => [ 46105 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps(slotData))) 46106 ]), 46107 key: "0" 46108 } : void 0 46109 ]), 1032, ["settings", "is-editable", "inline-editable", "inline-editing"]) 46110 ]); 46111} 46112const CoreBlockMedia = /* @__PURE__ */ _export_sfc(_sfc_main$3y, [["render", _sfc_render$3e]]); 46113const CoreBlockMedia$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 46114 __proto__: null, 46115 default: CoreBlockMedia 46116}, Symbol.toStringTag, { value: "Module" })); 46117const _hoisted_1$3x = { 46118 key: 0, 46119 class: "block__body oembed-container" 46120}; 46121const _hoisted_2$3k = { key: 0 }; 46122const _hoisted_3$c = ["innerHTML"]; 46123const _hoisted_4$9 = { key: 1 }; 46124const _hoisted_5$8 = ["src", "width", "height", "alt"]; 46125const _sfc_main$3x = { 46126 __name: "CoreBlockOEmbed", 46127 props: { 46128 settings: { 46129 type: Object, 46130 required: true 46131 }, 46132 dataSite: { 46133 type: Object, 46134 required: true 46135 } 46136 }, 46137 setup(__props) { 46138 const props = __props; 46139 const config = /* @__PURE__ */ useRuntimeConfig(); 46140 const type = ref(null); 46141 const oEmbed = ref({}); 46142 const emptyContent = ref(false); 46143 const store = useStore(); 46144 const { state } = store; 46145 const baseURL2 = config.public.apiBaseURL || // Generator (Deprecated) 46146 config.public.apiBaseUrl || // SiteViewer 46147 config.public.apiBase || // Builder 46148 "https://localhost:34924/api"; 46149 const oembedSrc = computed(() => { 46150 var _a; 46151 return (_a = props.settings) == null ? void 0 : _a.src; 46152 }); 46153 const componentEnabled = computed(() => { 46154 var _a, _b; 46155 return (_b = (_a = state == null ? void 0 : state.settings) == null ? void 0 : _a.featureFlags) == null ? void 0 : _b.OEmbedComponent; 46156 }); 46157 onMounted(async () => { 46158 await getData2(); 46159 }); 46160 watch(oembedSrc, async () => { 46161 await getData2(); 46162 }); 46163 const getData2 = async () => { 46164 if (componentEnabled.value && oembedSrc.value) { 46165 const encodedUrlParam = encodeURIComponent(oembedSrc.value); 46166 const response = await axios.get( 46167 `${baseURL2}/oembed?brandId=${props.dataSite.brandId}&url=${encodedUrlParam}` 46168 ); 46169 if (response.status === 204) emptyContent.value = true; 46170 else { 46171 emptyContent.value = false; 46172 oEmbed.value = { 46173 html: response.data.html, 46174 url: response.data.url, 46175 width: response.data.width, 46176 height: response.data.height, 46177 title: response.data.title 46178 }; 46179 type.value = response.data.type; 46180 } 46181 } 46182 }; 46183 return (_ctx, _cache) => { 46184 return componentEnabled.value ? (openBlock(), createElementBlock("div", _hoisted_1$3x, [ 46185 emptyContent.value ? (openBlock(), createElementBlock("div", _hoisted_2$3k, "Cannot load oEmbed data")) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [ 46186 type.value === "rich" || type.value === "video" ? (openBlock(), createElementBlock("div", { 46187 key: 0, 46188 innerHTML: oEmbed.value.html 46189 }
46189, null, 8, _hoisted_3$c)) : type.value === "photo" ? (openBlock(), createElementBlock("div", _hoisted_4$9, [ 46190 createBaseVNode("img", { 46191 src: oEmbed.value.url, 46192 width: oEmbed.value.width, 46193 height: oEmbed.value.height, 46194 alt: oEmbed.value.title 46195 }, null, 8, _hoisted_5$8) 46196 ])) : createCommentVNode("", true) 46197 ], 64)) 46198 ])) : createCommentVNode("", true); 46199 }; 46200 } 46201}; 46202const CoreBlockOEmbed = /* @__PURE__ */ _export_sfc(_sfc_main$3x, [["__scopeId", "data-v-9635d32d"]]); 46203const CoreBlockOEmbed$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 46204 __proto__: null, 46205 default: CoreBlockOEmbed 46206}, Symbol.toStringTag, { value: "Module" })); 46207const _sfc_main$3w = { 46208 name: "CoreBlockPencilBanner", 46209 props: { 46210 settings: { 46211 type: Object, 46212 required: true 46213 }, 46214 dataSite: { 46215 type: Object, 46216 default: () => ({}) 46217 }, 46218 isEditable: { 46219 type: Boolean, 46220 default: false 46221 } 46222 }, 46223 setup(props) { 46224 const bannerIsClosed = ref(false); 46225 const bodyCopy = computed(() => { 46226 let copy = props.settings.bodyCopy || ""; 46227 if (!/<\/?[a-z][\s\S]*>/i.test(copy)) copy = `<p>${copy}</p>`; 46228 return renderData(copy, props.dataSite); 46229 }); 46230 const label = computed( 46231 () => renderData(props.settings.buttonText, props.dataSite) 46232 ); 46233 const url = computed(() => { 46234 if (props.settings.buttonLink) { 46235 return renderData(props.settings.buttonLink, props.dataSite); 46236 } 46237 if (props.settings["button-url"]) { 46238 return renderData(props.settings["button-url"], props.dataSite); 46239 } 46240 return null; 46241 }); 46242 return { 46243 bannerIsClosed, 46244 bodyCopy, 46245 label, 46246 url 46247 }; 46248 } 46249}; 46250const _hoisted_1$3w = { 46251 key: 0, 46252 class: "block__body", 46253 role: "banner" 46254}; 46255const _hoisted_2$3j = { class: "block__body-container" }; 46256function _sfc_render$3d(_ctx, _cache, $props, $setup, $data, $options) { 46257 const _component_CoreBlock = _sfc_main$4x; 46258 const _component_CoreIcon = __nuxt_component_1$7; 46259 return !$setup.bannerIsClosed ? (openBlock(), createElementBlock("div", _hoisted_1$3w, [ 46260 createBaseVNode("div", _hoisted_2$3j, [ 46261 createVNode(_component_CoreBlock, { 46262 settings: { type: "rich-text", bodyText: $setup.bodyCopy }, 46263 "is-editable": $props.isEditable 46264 }, null, 8, ["settings", "is-editable"]), 46265 $setup.label ? (openBlock(), createBlock(_component_CoreBlock, { 46266 key: 0, 46267 "is-editable": $props.isEditable, 46268 class: "block__body-container_button", 46269 settings: { 46270 type: "button", 46271 label: $setup.label, 46272 newWindow: $props.settings.newWindow, 46273 url: $setup.url, 46274 icon: "right-arrow", 46275 variants: { 46276 style: "text", 46277 "icon-placement": "icon-right" 46278 } 46279 } 46280 }, null, 8, ["is-editable", "settings"])) : createCommentVNode("", true) 46281 ]), 46282 $props.settings.closeButton && !$setup.bannerIsClosed ? (openBlock(), createElementBlock("div", { 46283 key: 0, 46284 class: "d-flex cursor-pointer", 46285 onClick: _cache[0] || (_cache[0] = ($event) => $setup.bannerIsClosed = true) 46286 }, [ 46287 createVNode(_component_CoreIcon, { icon: "close" }) 46288 ])) : createCommentVNode("", true) 46289 ])) : createCommentVNode("", true); 46290} 46291const CoreBlockPencilBanner = /* @__PURE__ */ _export_sfc(_sfc_main$3w, [["render", _sfc_render$3d]]); 46292const CoreBlockPencilBanner$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 46293 __proto__: null, 46294 default: CoreBlockPencilBanner 46295}, Symbol.toStringTag, { value: "Module" })); 46296const _sfc_main$3v = { 46297 name: "CoreBlockRepeat", 46298 props: { 46299 index: { 46300 type: Number, 46301 default: 0 46302 }, 46303 nestedLevel: { 46304 type: Number, 46305 default: 0 46306 }, 46307 settings: { 46308 type: Object, 46309 required: true 46310 }, 46311 isEditable: { 46312 type: Boolean, 46313 default: false 46314 }, 46315 dataSite: { 46316 type: Object, 46317 required: false 46318 }, 46319 isBuilderMobile: { 46320 type: Boolean, 46321 default: false 46322 } 46323 }, 46324 setup(props) { 46325 const blockChildren = computed(() => { 46326 var _a; 46327 return ((_a = props.settings) == null ? void 0 : _a.blocks) || []; 46328 }); 46329 const hasChildren = computed(() => { 46330 var _a, _b; 46331 return !!((_b = (_a = props.settings) == null ? void 0 : _a.blocks) == null ? void 0 : _b.length); 46332 }); 46333 const nestedLevelNext = computed(() => props.nestedLevel + 1); 46334 const listItems = computed(() => { 46335 if (!props.dataSite) return [{}];
46336 const key = props.settings.dictionaryId; 46337 if (!key) return [{}]; 46338 const out = props.dataSite.dataDictionary[key]; 46339 return out; 46340 }); 46341 function childBlockComponent(index2) { 46342 if (!props.isEditable) { 46343 return "CoreBlock"; 46344 } 46345 if (index2 == 0) return "ForgeControlBlock"; 46346 return "CoreBlock"; 46347 } 46348 const isConditionalVisible = computed(() => { 46349 if (!hasConditionalDisplay.value) return true; 46350 if (!props.dataSite) return true; 46351 if (!props.dataSite.dataDictionary) return true; 46352 const field = props.settings.conditionalDisplay; 46353 const value = props.dataSite.dataDictionary[field]; 46354 if (typeof value == "boolean") { 46355 return value; 46356 } 46357 return true; 46358 }); 46359 const hasConditionalDisplay = computed(() => { 46360 if (!props.settings) { 46361 return false; 46362 } 46363 if ("conditionalDisplay" in props.settings) { 46364 return !!props.settings.conditionalDisplay; 46365 } 46366 return false; 46367 }); 46368 const addIndexToSettings = (settings, idx) => { 46369 return Object.assign( 46370 { 46371 dataDictionaryIndex: idx, 46372 dataDictionaryKey: props.settings.dictionaryId 46373 }, 46374 settings 46375 ); 46376 }; 46377 return { 46378 blockChildren, 46379 hasChildren, 46380 nestedLevelNext, 46381 childBlockComponent, 46382 hasConditionalDisplay, 46383 isConditionalVisible, 46384 listItems, 46385 addIndexToSettings 46386 }; 46387 } 46388}; 46389const _hoisted_1$3v = { class: "block__container block__section_main" }; 46390function _sfc_render$3c(_ctx, _cache, $props, $setup, $data, $options) { 46391 return openBlock(), createElementBlock("div", null, [ 46392 (openBlock(true), createElementBlock(Fragment, null, renderList($setup.listItems, (item, itemIndex) => { 46393 return openBlock(), createElementBlock("div", _hoisted_1$3v, [ 46394 (openBlock(true), createElementBlock(Fragment, null, renderList($setup.blockChildren, (childSettings, childIndex) => { 46395 return openBlock(), createBlock(resolveDynamicComponent($setup.childBlockComponent(itemIndex)), { 46396 key: childSettings.id, 46397 settings: $setup.addIndexToSettings(childSettings, itemIndex), 46398 index: childIndex, 46399 "nested-level": $setup.nestedLevelNext, 46400 "is-editable": $props.isEditable, 46401 "parent-is-horizontal": false, 46402 "is-first-child": !childIndex, 46403 "is-last-child": childIndex >= $setup.blockChildren.length - 1, 46404 "is-builder-mobile": $props.isBuilderMobile 46405 }, null, 8, ["settings", "index", "nested-level", "is-editable", "is-first-child", "is-last-child", "is-builder-mobile"]); 46406 }), 128)) 46407 ]); 46408 }), 256)) 46409 ]); 46410} 46411const CoreBlockRepeat = /* @__PURE__ */ _export_sfc(_sfc_main$3v, [["render", _sfc_render$3c]]); 46412const CoreBlockRepeat$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 46413 __proto__: null, 46414 default: CoreBlockRepeat 46415}, Symbol.toStringTag, { value: "Module" })); 46416const _hoisted_1$3u = ["data-testid"]; 46417const _hoisted_2$3i = { 46418 key: 1, 46419 class: "block__body" 46420}; 46421const _hoisted_3$b = { 46422 key: 2, 46423 class: "block__body" 46424}; 46425const _hoisted_4$8 = ["innerHTML"]; 46426const _hoisted_5$7 = { class: "modal-content" }; 46427const _hoisted_6$5 = { 46428 key: 3, 46429 class: "block__body" 46430}; 46431const _sfc_main$3u = { 46432 __name: "CoreBlockRichText", 46433 props: { 46434 settings: { 46435 type: Object, 46436 required: true 46437 }, 46438 dataSite: { 46439 type: Object, 46440 default: () => ({}) 46441 }, 46442 // Builder-only: enables inline canvas editing capability for this block. 46443 // SiteViewer never sets this, so published sites are unaffected. 46444 inlineEditable: { 46445 type: Boolean, 46446 default: false 46447 }, 46448 // Builder-only: whether inline editing is currently active for this block. 46449 inlineEditing: { 46450 type: Boolean, 46451 default: false 46452 } 46453 }, 46454 setup(__props) { 46455 const props = __props; 46456 const store = useStore(); 46457 const { state } = store; 46458 const useModalsEnabled = computed( 46459 () => { 46460 var _a, _b; 46461 return (_b = (_a = state == null ? void 0 : state.settings) == null ? void 0 : _a.featureFlags) == null ? void 0 : _b.UseModals; 46462 } 46463 ); 46464 const isDialogOpen = ref(false); 46465 const modalPageData = ref(null); 46466 const parseJsonSafe = (value, fallback) => { 46467 if (!value) return fallback;
46468 try { 46469 return typeof value === "string" ? JSON.parse(value) : value; 46470 } catch { 46471 return fallback; 46472 } 46473 }; 46474 const modalSettings = computed( 46475 () => { 46476 var _a; 46477 return parseJsonSafe((_a = modalPageData.value) == null ? void 0 : _a.settings, {}); 46478 } 46479 ); 46480 const modalSize = computed(() => { 46481 var _a; 46482 return ((_a = modalSettings.value) == null ? void 0 : _a.modalSize) || "medium"; 46483 }); 46484 const modalBackgroundClass = computed(() => { 46485 var _a; 46486 const bgColorMap = { 46487 light: "_themed-light", 46488 dark: "_themed-dark", 46489 grey: "_themed-grey" 46490 }; 46491 return bgColorMap[(_a = modalSettings.value) == null ? void 0 : _a.backgroundColor] || ""; 46492 }); 46493 const modalBlocks = computed( 46494 () => { 46495 var _a; 46496 return parseJsonSafe((_a = modalPageData.value) == null ? void 0 : _a.blocks, []); 46497 } 46498 ); 46499 const closeModal = () => { 46500 isDialogOpen.value = false; 46501 modalPageData.value = null; 46502 }; 46503 const handleModalLinkClick = (event) => { 46504 var _a, _b; 46505 if (!useModalsEnabled.value) return; 46506 const target = event.target.closest("a"); 46507 if (!target) return; 46508 const href = target.getAttribute("href"); 46509 if (!(href == null ? void 0 : href.startsWith("modal:"))) return; 46510 event.preventDefault(); 46511 event.stopPropagation(); 46512 const id = Number(href.replace("modal:", "")); 46513 const modalPage = (_b = (_a = props.dataSite) == null ? void 0 : _a.pages) == null ? void 0 : _b.find((p2) => p2.id === id); 46514 if (modalPage) { 46515 modalPageData.value = modalPage; 46516 nextTick(() => { 46517 isDialogOpen.value = true; 46518 }); 46519 } 46520 }; 46521 const itemCheckFunction = (item) => item.type === "copy"; 46522 const { isExpired, processExpiredLinks } = useIsExpired( 46523 () => props.settings, 46524 itemCheckFunction 46525 ); 46526 const replaceUrlBasePathInContent = (content) => { 46527 const config = /* @__PURE__ */ useRuntimeConfig(); 46528 const basePath = config.public.basePath || "/"; 46529 return renderData( 46530 (content == null ? void 0 : content.replace(/href=('|")[/]/gi, `href="${basePath}`)) || "", 46531 getDataSource.value 46532 ); 46533 }; 46534 const getDataSource = computed(() => { 46535 if (props.settings.dataDictionaryIndex === null) { 46536 return props.dataSite; 46537 } 46538 const key = props.settings.dataDictionaryKey; 46539 if (!key) { 46540 return props.dataSite; 46541 } 46542 const arr = props.dataSite.dataDictionary[key]; 46543 if (!arr) { 46544 return props.dataSite; 46545 } 46546 const arrValue = arr[props.settings.dataDictionaryIndex]; 46547 const copy = cloneDeep(props.dataSite); 46548 if (typeof arrValue === "string") { 46549 return Object.assign(copy, { 46550 value: arrValue 46551 }); 46552 } 46553 const out = Object.assign(copy, arrValue); 46554 return out; 46555 }); 46556 const blockContent = computed(() => { 46557 var _a; 46558 const content = ((_a = props.settings) == null ? void 0 : _a.bodyText) ? replaceUrlBasePathInContent(props.settings.bodyText) : replaceUrlBasePathInContent(props.settings.richText); 46559 return processExpiredLinks(content); 46560 }); 46561 const { editableSource, showInlineEditor } = useInlineTextEdit(props, { 46562 isExpired 46563 }); 46564 return (_ctx, _cache) => { 46565 const _component_CoreBlock = _sfc_main$4x; 46566 const _component_CoreBlockDialog = __nuxt_component_3$1; 46567 return unref(isExpired) ? (openBlock(), createElementBlock("div", { 46568 key: 0, 46569 "data-testid": `${__props.settings.type}-expired` 46570 }, null, 8, _hoisted_1$3u)) : unref(showInlineEditor) ? (openBlock(), createElementBlock("div", _hoisted_2$3i, [ 46571 createBaseVNode("div", { 46572 class: "block__body_inline-edit", 46573 onMousedown: _cache[0] || (_cache[0] = withModifiers(() => { 46574 }, ["stop"])), 46575 onClick: _cache[1] || (_cache[1] = withModifiers(() => { 46576 }, ["stop"])) 46577 }, [ 46578 renderSlot(_ctx.$slots, "inline-editor", { html: unref(editableSource) }) 46579 ], 32) 46580 ])) : blockContent.value ? (openBlock(), createElementBlock("div", _hoisted_3$b, [ 46581 createBaseVNode("div", { 46582 onClick: handleModalLinkClick, 46583 innerHTML: blockContent.value 46584 }, null, 8, _hoisted_4$8), 46585 useModalsEnabled.value && modalPageData.value ? (openBlock(), createBlock(_component_CoreBlockDialog, { 46586 key: 0, 46587 show: isDialogOpen.value, 46588 type: "modal",
46589 class: normalizeClass(`modal-size-${modalSize.value} block ${modalBackgroundClass.value}`), 46590 onModalClose: closeModal 46591 }, { 46592 default: withCtx(() => [ 46593 createBaseVNode("div", _hoisted_5$7, [ 46594 (openBlock(true), createElementBlock(Fragment, null, renderList(modalBlocks.value, (block, index2) => { 46595 return openBlock(), createBlock(_component_CoreBlock, { 46596 key: block.id || index2, 46597 settings: block, 46598 index: index2, 46599 "data-site": __props.dataSite 46600 }, null, 8, ["settings", "index", "data-site"]); 46601 }), 128)) 46602 ]) 46603 ]), 46604 _: 1 46605 }, 8, ["show", "class"])) : createCommentVNode("", true) 46606 ])) : (openBlock(), createElementBlock("div", _hoisted_6$5)); 46607 }; 46608 } 46609}; 46610const CoreBlockRichText = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 46611 __proto__: null, 46612 default: _sfc_main$3u 46613}, Symbol.toStringTag, { value: "Module" })); 46614const _sfc_main$3t = { 46615 name: "CoreBlockRows", 46616 props: { 46617 index: { 46618 type: Number, 46619 default: 0 46620 }, 46621 nestedLevel: { 46622 type: Number, 46623 default: 0 46624 }, 46625 settings: { 46626 type: Object, 46627 required: true 46628 }, 46629 isEditable: { 46630 type: Boolean, 46631 default: false 46632 }, 46633 dataSite: { 46634 type: Object, 46635 default: null 46636 }, 46637 isBuilderMobile: { 46638 type: Boolean, 46639 default: false 46640 }, 46641 isFirstPageLevelBlock: { 46642 type: Boolean, 46643 default: void 0 46644 }, 46645 isFirstPageLevelPosition: { 46646 type: Boolean, 46647 default: void 0 46648 }, 46649 ...inlineMediaEditProps 46650 }, 46651 setup(props) { 46652 const imageComponent = ref(null); 46653 const eMoneyPlayerRef = ref(null); 46654 const { showInlineEditor } = useInlineMediaEdit(props, { 46655 mediaKey: "backgroundMediaSrc" 46656 }); 46657 const { 46658 croppedSrc, 46659 mediaBackgroundPosition, 46660 backgroundMediaFocal, 46661 backgroundMediaCrop, 46662 imageSrc: mediaSrc, 46663 updateCroppedImage 46664 } = useImageProperties(props, "backgroundMediaSrc", imageComponent); 46665 const { 46666 isVideo: mediaIsVideo, 46667 isImage: mediaIsImg, 46668 isEMoney: isEMoneyUrl, 46669 videoAutoPlayUrl, 46670 videoLoopUrl 46671 } = useMedia(mediaSrc); 46672 const componentId = Math.random().toString(36).substr(2, 9); 46673 const htmlVideoId = "jwplayer-script-row-" + Math.random().toString(36).substr(2, 9); 46674 const canUseDom = typeof window !== "undefined" && typeof document !== "undefined"; 46675 const playerId = computed(() => { 46676 if (!isEMoneyUrl.value) return ""; 46677 return mediaHelper.checkIfHasPlayerId(mediaSrc.value); 46678 }); 46679 const { isMobile } = useIsMobile(); 46680 const isMobileView = computed( 46681 () => props.isBuilderMobile || isMobile.value 46682 ); 46683 const { 46684 applyOffset: applyNavOffset, 46685 insetsOwnContent: navOffsetInsets, 46686 isFirstPageLevelBlockFor, 46687 isFirstPageLevelPositionFor 46688 } = useBlockNavOffset(props); 46689 const blockChildren = computed(() => { 46690 var _a; 46691 return ((_a = props.settings) == null ? void 0 : _a.blocks) || []; 46692 }); 46693 const blockVariants = computed(() => { 46694 var _a; 46695 return Object.entries(((_a = props.settings) == null ? void 0 : _a.variants) || {}).map( 46696 ([key, value]) => { 46697 return { 46698 key, 46699 value 46700 }; 46701 } 46702 ); 46703 }); 46704 const applyOverlay = computed(() => { 46705 var _a, _b; 46706 return ((_a = props.settings) == null ? void 0 : _a["overlay-toggle"]) || ((_b = props.settings) == null ? void 0 : _b["gradient-toggle"]); 46707 }); 46708 const legacyOverlayClasses = computed(() => { 46709 var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j; 46710 const isNewOverlayToggled = ((_a = props.settings) == null ? void 0 : _a["overlay-toggle"]) !== void 0 || ((_b = props.settings) == null ? void 0 : _b["gradient-toggle"]) !== void 0; 46711 if (isNewOverlayToggled) return false; 46712 return { 46713 "row-overlay": ((_c = props.settings) == null ? void 0 : _c["overlay-show"]) || ((_e = (_d = props.settings) == null ? void 0 : _d.variants) == null ? void 0 : _e["bg-overlay"]) ? (_g = (_f = props.settings) == null ? void 0 : _f.variants) == null ? void 0 : _g["bg-overlay"] : null, 46714 "row-gradient": ((_h = props.settings) == null ? void 0 : _h["gradient-show"]) ? (_j = (_i = props.settings) == null ? void 0 : _i.variants) == null ? void 0 : _j["bg-gradient"] : null 46715 }; 46716 });
46717 const overlayClasses = computed(() => { 46718 var _a, _b, _c, _d, _e, _f, _g, _h; 46719 if (!((_a = props.settings) == null ? void 0 : _a["overlay-toggle"]) && !((_b = props.settings) == null ? void 0 : _b["gradient-toggle"])) 46720 return false; 46721 return { 46722 "row-overlay": ((_c = props.settings) == null ? void 0 : _c["overlay-toggle"]) && ((_e = (_d = props.settings) == null ? void 0 : _d.variants) == null ? void 0 : _e["bg-overlay"]), 46723 "row-gradient": ((_f = props.settings) == null ? void 0 : _f["gradient-toggle"]) && ((_h = (_g = props.settings) == null ? void 0 : _g.variants) == null ? void 0 : _h["bg-gradient"]) 46724 }; 46725 }); 46726 const hasChildren = computed(() => { 46727 var _a, _b; 46728 return !!((_b = (_a = props.settings) == null ? void 0 : _a.blocks) == null ? void 0 : _b.length); 46729 }); 46730 const nestedLevelNext = computed(() => props.nestedLevel + 1); 46731 const bodyClasses = computed(() => { 46732 const classList = [ 46733 "block__body", 46734 ...blockVariants.value.map((variant) => { 46735 return `${variant.key}-${variant.value}`; 46736 }) 46737 ]; 46738 if (!hasChildren.value) { 46739 classList.push("block__body--empty"); 46740 } 46741 return [...classList]; 46742 }); 46743 const bodyStyles = computed(() => { 46744 var _a, _b, _c; 46745 const mobileRowSizeShow = (_a = props.settings) == null ? void 0 : _a.mobileRowSizeShow; 46746 const mobileRowSizeHeight = (_b = props.settings) == null ? void 0 : _b.mobileRowSizeHeight; 46747 const formatHeight = (height) => { 46748 if (!height || height === "auto") return height; 46749 if (typeof height === "number" || /^\d+$/.test(String(height))) { 46750 return `${height}px`; 46751 } 46752 return height; 46753 }; 46754 let rowHeight = isMobileView.value && mobileRowSizeShow === true && mobileRowSizeHeight ? formatHeight(mobileRowSizeHeight) : formatHeight((_c = props.settings) == null ? void 0 : _c.rowHeight) || "100%"; 46755 if (applyNavOffset.value && navOffsetInsets.value && rowHeight !== "auto" && rowHeight !== "100%") { 46756 rowHeight = `calc(${rowHeight} + var(--_core__nav-offset_height-bump, 0px))`; 46757 } 46758 if (mediaIsImg.value) { 46759 return { 46760 "background-image": `url('${croppedSrc.value}')`, 46761 "background-position": mediaBackgroundPosition.value, 46762 "background-repeat": "no-repeat", 46763 "background-size": "cover", 46764 width: "100%", 46765 "min-height": rowHeight 46766 }; 46767 } 46768 return { 46769 "min-height": rowHeight 46770 }; 46771 }); 46772 const childBlockComponent = computed( 46773 () => props.isEditable ? "ForgeControlBlock" : "CoreBlock" 46774 ); 46775 const isConditionalVisible = computed(() => { 46776 if (!hasConditionalDisplay.value) return true; 46777 if (!props.dataSite) return true; 46778 if (!props.dataSite.dataDictionary) return true; 46779 const field = props.settings.conditionalDisplay; 46780 const value = props.dataSite.dataDictionary[field]; 46781 if (typeof value == "boolean") { 46782 return value; 46783 } 46784 return true; 46785 }); 46786 const hasConditionalDisplay = computed(() => { 46787 if (!props.settings) { 46788 return false; 46789 } 46790 if ("conditionalDisplay" in props.settings) { 46791 return !!props.settings.conditionalDisplay; 46792 } 46793 return false; 46794 }); 46795 const fullVideoSrc = computed(() => { 46796 if (!mediaIsVideo.value) return mediaSrc.value; 46797 if (props.settings.autoPlay && props.settings.loop) 46798 return videoLoopUrl.value; 46799 if (props.settings.autoPlay) return videoAutoPlayUrl.value; 46800 return mediaSrc.value; 46801 }); 46802 const removeLoadedVideoScript = () => { 46803 if (!canUseDom) return; 46804 const existingVideoScript = document.getElementById(htmlVideoId); 46805 if (existingVideoScript) { 46806 existingVideoScript.parentNode.removeChild(existingVideoScript); 46807 } 46808 }; 46809 const loadEmoneyPlayer = async () => { 46810 if (!canUseDom) return; 46811 if (!isEMoneyUrl.value || !playerId.value || !mediaSrc.value) 46812 return; 46813 await ensureJwLibraryLoaded(); 46814 const container = eMoneyPlayerRef.value; 46815 if (!container) return; 46816 const cloneExistingPlayer = () => { 46817 const allPlayersWithId2 = document.querySelectorAll( 46818 `[id="${playerId.value}"]` 46819 ); 46820 for (const player of allPlayersWithId2) { 46821 if (player !== container && player.innerHTML && (player.innerHTML.includes("jwplayer") || player.querySelector("video, iframe"))) { 46822 const clone = player.cloneNode(true); 46823 const cloneId = `${playerId.value}-${componentId}`; 46824 clone.id = cloneId; 46825 const nestedElements = clone.querySelectorAll( 46826 `[id="${playerId.value}"]` 46827 );
46828 nestedElements.forEach((el, index2) => { 46829 el.id = `${cloneId}-${index2}`; 46830 }); 46831 container.innerHTML = ""; 46832 container.appendChild(clone); 46833 return true; 46834 } 46835 } 46836 return false; 46837 }; 46838 const waitForCloneFromExistingPlayer = (timeoutMs = 2e3) => { 46839 return new Promise((resolve2) => { 46840 if (cloneExistingPlayer()) { 46841 resolve2(true); 46842 return; 46843 } 46844 const observer = new MutationObserver(() => { 46845 if (cloneExistingPlayer()) { 46846 cleanup(); 46847 resolve2(true); 46848 } 46849 }); 46850 const cleanup = () => { 46851 observer.disconnect(); 46852 clearTimeout(timeoutId); 46853 }; 46854 const timeoutId = setTimeout(() => { 46855 cleanup(); 46856 resolve2(cloneExistingPlayer()); 46857 }, timeoutMs); 46858 observer.observe(document.body, { 46859 childList: true, 46860 subtree: true 46861 }); 46862 }); 46863 }; 46864 if (cloneExistingPlayer()) return; 46865 const allPlayersWithId = document.querySelectorAll( 46866 `[id="${playerId.value}"]` 46867 ); 46868 const firstPlayerWithId = allPlayersWithId[0]; 46869 if (firstPlayerWithId && firstPlayerWithId !== container) { 46870 await waitForJwPlayerReadyById(playerId.value); 46871 await waitForCloneFromExistingPlayer(); 46872 return; 46873 } 46874 removeLoadedVideoScript(); 46875 const script = document.createElement("script"); 46876 script.id = htmlVideoId; 46877 script.src = mediaSrc.value; 46878 container.insertAdjacentElement("afterend", script); 46879 }; 46880 watch( 46881 [mediaSrc, playerId, isEMoneyUrl], 46882 async ([src, id, isEMoney]) => { 46883 if (!canUseDom) return; 46884 if (!src || !isEMoney || !id) { 46885 removeLoadedVideoScript(); 46886 return; 46887 } 46888 await loadEmoneyPlayer(); 46889 }, 46890 { immediate: true } 46891 ); 46892 onMounted(async () => { 46893 if (isEMoneyUrl.value && playerId.value) { 46894 await loadEmoneyPlayer(); 46895 } 46896 }); 46897 onBeforeUnmount(() => { 46898 removeLoadedVideoScript(); 46899 }); 46900 return { 46901 showInlineEditor, 46902 fullVideoSrc, 46903 eMoneyPlayerRef, 46904 imageComponent, 46905 blockChildren, 46906 blockVariants, 46907 applyOverlay, 46908 legacyOverlayClasses, 46909 overlayClasses, 46910 hasChildren, 46911 nestedLevelNext, 46912 bodyClasses, 46913 bodyStyles, 46914 mediaIsImg, 46915 mediaSrc, 46916 croppedSrc, 46917 mediaBackgroundPosition, 46918 backgroundMediaCrop, 46919 backgroundMediaFocal, 46920 childBlockComponent, 46921 mediaIsVideo, 46922 isEMoneyUrl, 46923 playerId, 46924 updateCroppedImage, 46925 hasConditionalDisplay, 46926 isConditionalVisible, 46927 navOffsetInsets, 46928 isFirstPageLevelBlockFor, 46929 isFirstPageLevelPositionFor, 46930 isMobile 46931 }; 46932 } 46933}; 46934const _hoisted_1$3t = { 46935 key: 2, 46936 class: "video-media video-media-emoney" 46937}; 46938const _hoisted_2$3h = ["id"]; 46939const _hoisted_3$a = ["src"]; 46940const _hoisted_4$7 = { 46941 key: 4, 46942 class: "block__inline-media" 46943}; 46944function _sfc_render$3b(_ctx, _cache, $props, $setup, $data, $options) { 46945 const _component_CoreBlockImageCropped = __nuxt_component_0$8; 46946 return $setup.isConditionalVisible ? (openBlock(), createElementBlock("div", { 46947 key: 0, 46948 class: normalizeClass([$setup.bodyClasses, $setup.legacyOverlayClasses]), 46949 style: normalizeStyle($setup.bodyStyles) 46950 }, [ 46951 $setup.applyOverlay ? (openBlock(), createElementBlock("div", { 46952 key: 0, 46953 class: normalizeClass($setup.overlayClasses) 46954 }, null, 2)) : createCommentVNode("", true), 46955 $setup.mediaSrc && !$setup.mediaIsVideo ? (openBlock(), createBlock(_component_CoreBlockImageCropped, { 46956 key: 1, 46957 "image-src": $setup.mediaSrc, 46958 "media-metadata": $setup.backgroundMediaCrop, 46959 onLoaded: $setup.updateCroppedImage 46960 }, null, 8, ["image-src", "media-metadata", "onLoaded"])) : createCommentVNode("", true), 46961 $setup.mediaIsVideo && $setup.isEMoneyUrl && $setup.playerId ? (openBlock(), createElementBlock("div", _hoisted_1$3t, [ 46962 createBaseVNode("div", { 46963 id: $setup.playerId, 46964 ref: "eMoneyPlayerRef" 46965 }, null, 8, _hoisted_2$3h) 46966 ])) : $setup.mediaIsVideo ? (openBlock(), createElementBlock("iframe", { 46967 key: 3, 46968 width: "100%", 46969 height: "100%", 46970 class: "video-media", 46971 src: $setup.fullVideoSrc, 46972 title: "Video player", 46973 frameborder: "0", 46974 allow: "accelerometer;autoplay;clipboard-write;encrypted-media;gyroscope;picture-in-picture;web-share", 46975 allowfullscreen: "" 46976 }, null, 8, _hoisted_3$a)) : createCommentVNode("", true), 46977 $setup.showInlineEditor ? (openBlock(), createElementBlock("div", _hoisted_4$7, [ 46978 renderSlot(_ctx.$slots, "inline-editor", { field: "backgroundMediaSrc" }) 46979 ])) : createCommentVNode("", true), 46980 createBaseVNode("div", { 46981 class: normalizeClass([ 46982 "block__container", 46983 "block__section_main", 46984 { 46985 "block__section_main--has-video": $setup.mediaIsVideo && !$props.isEditable 46986 } 46987 ]) 46988 }, [ 46989 (openBlock(true), createElementBlock(Fragment, null, renderList($setup.blockChildren, (childSettings, childIndex) => { 46990 return openBlock(), createBlock(resolveDynamicComponent($setup.childBlockComponent), { 46991 key: childSettings.id, 46992 settings: childSettings, 46993 index: childIndex, 46994 "nested-level": $setup.nestedLevelNext, 46995 "is-editable": $props.isEditable, 46996 "parent-is-horizontal": false, 46997 "is-first-child": !childIndex, 46998 "is-last-child": childIndex >= $setup.blockChildren.length - 1, 46999 "is-builder-mobile": $props.isBuilderMobile, 47000 "is-first-page-level-block": $setup.isFirstPageLevelBlockFor(childSettings), 47001 "is-first-page-level-position": $setup.isFirstPageLevelPositionFor(childSettings) 47002 }, null, 8, ["settings", "index", "nested-level", "is-editable", "is-first-child", "is-last-child", "is-builder-mobile", "is-first-page-level-block", "is-first-page-level-position"]); 47003 }), 128)) 47004 ], 2) 47005 ], 6)) : createCommentVNode("", true); 47006} 47007const CoreBlockRows = /* @__PURE__ */ _export_sfc(_sfc_main$3t, [["render", _sfc_render$3b]]); 47008const CoreBlockRows$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 47009 __proto__: null, 47010 default: CoreBlockRows 47011}, Symbol.toStringTag, { value: "Module" })); 47012const _sfc_main$3s = { 47013 name: "CoreIconFacebook", 47014 props: { 47015 settings: { 47016 type: Object, 47017 required: false 47018 } 47019 }, 47020 computed: { 47021 alt() { 47022 var _a, _b; 47023 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 47024 }, 47025 id() { 47026 var _a, _b; 47027 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 47028 } 47029 } 47030}; 47031const _hoisted_1$3s = ["aria-labelledby", "aria-label"]; 47032const _hoisted_2$3g = ["id"]; 47033function _sfc_render$3a(_ctx, _cache, $props, $setup, $data, $options) { 47034 return openBlock(), createElementBlock("svg", { 47035 width: "24", 47036 height: "24", 47037 class: "facebookicon",
47038 viewBox: "0 0 24 24", 47039 fill: "none", 47040 xmlns: "http://www.w3.org/2000/svg", 47041 role: "img", 47042 "aria-labelledby": `icon-title-${$options.id}`, 47043 "aria-label": $options.alt 47044 }, [ 47045 createBaseVNode("title", { 47046 id: `icon-title-${$options.id}` 47047 }, toDisplayString($options.alt), 9, _hoisted_2$3g), 47048 _cache[0] || (_cache[0] = createBaseVNode("path", { 47049 d: "M12 0C5.373 0 0 5.373 0 12C0 18.627 5.373 24 12 24C18.627 24 24 18.627 24 12C24 5.373 18.627 0 12 0ZM15 8H13.65C13.112 8 13 8.221 13 8.778V10H15L14.791 12H13V19H10V12H8V10H10V7.692C10 5.923 10.931 5 13.029 5H15V8Z", 47050 fill: "currentColor" 47051 }, null, -1)) 47052 ], 8, _hoisted_1$3s); 47053} 47054const __nuxt_component_0$1 = /* @__PURE__ */ _export_sfc(_sfc_main$3s, [["render", _sfc_render$3a]]); 47055const CoreIconFacebook = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 47056 __proto__: null, 47057 default: __nuxt_component_0$1 47058}, Symbol.toStringTag, { value: "Module" })); 47059const _sfc_main$3r = { 47060 name: "CoreIconTwitter", 47061 props: { 47062 settings: { 47063 type: Object, 47064 required: false 47065 } 47066 }, 47067 computed: { 47068 alt() { 47069 var _a, _b; 47070 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 47071 }, 47072 id() { 47073 var _a, _b; 47074 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 47075 }, 47076 ariaAttrs() { 47077 const value = this.settings && this.settings["aria-label"] ? this.settings["aria-label"] : ""; 47078 return { 47079 "aria-label": `Twitter${value ? ` ${value}` : ""}` 47080 }; 47081 } 47082 } 47083}; 47084const _hoisted_1$3r = ["aria-label"]; 47085function _sfc_render$39(_ctx, _cache, $props, $setup, $data, $options) { 47086 return openBlock(), createElementBlock("svg", { 47087 width: "24", 47088 height: "24", 47089 viewBox: "0 0 24 24", 47090 class: "twittericon", 47091 fill: "none", 47092 xmlns: "http://www.w3.org/2000/svg", 47093 role: "img", 47094 "aria-label": $options.ariaAttrs["aria-label"] 47095 }, [ 47096 createBaseVNode("title", null, toDisplayString($options.alt), 1), 47097 _cache[0] || (_cache[0] = createBaseVNode("path", { 47098 d: "M12 0C5.373 0 0 5.373 0 12C0 18.627 5.373 24 12 24C18.627 24 24 18.627 24 12C24 5.373 18.627 0 12 0ZM18.066 9.645C18.249 13.685 15.236 18.189 9.902 18.189C8.28 18.189 6.771 17.713 5.5 16.898C7.024 17.078 8.545 16.654 9.752 15.709C8.496 15.686 7.435 14.855 7.068 13.714C7.519 13.8 7.963 13.775 8.366 13.665C6.985 13.387 6.031 12.143 6.062 10.812C6.45 11.027 6.892 11.156 7.363 11.171C6.084 10.316 5.722 8.627 6.474 7.336C7.89 9.074 10.007 10.217 12.394 10.337C11.975 8.541 13.338 6.81 15.193 6.81C16.018 6.81 16.765 7.159 17.289 7.717C17.943 7.589 18.559 7.349 19.113 7.02C18.898 7.691 18.443 8.253 17.85 8.609C18.431 8.539 18.985 8.385 19.499 8.156C19.115 8.734 18.629 9.24 18.066 9.645Z", 47099 fill: "currentColor" 47100 }, null, -1)) 47101 ], 8, _hoisted_1$3r); 47102} 47103const __nuxt_component_1$2 = /* @__PURE__ */ _export_sfc(_sfc_main$3r, [["render", _sfc_render$39]]); 47104const CoreIconTwitter = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 47105 __proto__: null, 47106 default: __nuxt_component_1$2 47107}, Symbol.toStringTag, { value: "Module" })); 47108const _sfc_main$3q = { 47109 name: "CoreIconLinkedin", 47110 props: { 47111 settings: { 47112 type: Object, 47113 required: false 47114 } 47115 }, 47116 computed: { 47117 alt() { 47118 var _a, _b; 47119 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 47120 }, 47121 id() { 47122 var _a, _b; 47123 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 47124 } 47125 } 47126}; 47127const _hoisted_1$3q = ["aria-labelledby", "aria-label"]; 47128const _hoisted_2$3f = ["id"]; 47129function _sfc_render$38(_ctx, _cache, $props, $setup, $data, $options) { 47130 return openBlock(), createElementBlock("svg", { 47131 width: "24", 47132 height: "24", 47133 viewBox: "0 0 24 24", 47134 class: "linkedinicon", 47135 fill: "none", 47136 xmlns: "http://www.w3.org/2000/svg", 47137 role: "img", 47138 "aria-labelledby": `icon-title-${$options.id}`, 47139 "aria-label": $options.alt 47140 }, [ 47141 createBaseVNode("title", { 47142 id: `icon-title-${$options.id}` 47143 }, toDisplayString($options.alt), 9, _hoisted_2$3f), 47144 _cache[0] || (_cache[0] = createBaseVNode("path", { 47145 "fill-rule": "evenodd", 47146 "clip-rule": "evenodd", 47147 d: "M12 24C18.6274 24 24 18.6274 24 12C24 5.37258 18.6274 0 12 0C5.37258 0 0 5.37258 0 12C0 18.6274 5.37258 24 12 24ZM6.5625 7.75C7.41875 7.75 8.1125 7.05062 8.1125 6.1875C8.1125 5.325 7.41875 4.625 6.5625 4.625C5.70625 4.625 5.0125 5.325 5.0125 6.1875C5.0125 7.05062 5.70625 7.75 6.5625 7.75ZM5 19V9H8.125V19H5ZM10.0087 9H13.1138V10.3469C14.4237 7.9225 20 7.74312 20 12.6681V19H16.8825V13.7506C16.8825 10.593
471471 13.1144 10.8319 13.1144 13.7506V19H10.0087V9Z", 47148 fill: "currentColor" 47149 }, null, -1)) 47150 ], 8, _hoisted_1$3q); 47151} 47152const __nuxt_component_2 = /* @__PURE__ */ _export_sfc(_sfc_main$3q, [["render", _sfc_render$38]]); 47153const CoreIconLinkedin = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 47154 __proto__: null, 47155 default: __nuxt_component_2 47156}, Symbol.toStringTag, { value: "Module" })); 47157const _sfc_main$3p = { 47158 name: "CoreIconInstagram", 47159 props: { 47160 settings: { 47161 type: Object, 47162 required: false 47163 } 47164 }, 47165 computed: { 47166 alt() { 47167 var _a, _b; 47168 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 47169 }, 47170 id() { 47171 var _a, _b; 47172 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 47173 } 47174 } 47175}; 47176const _hoisted_1$3p = ["aria-labelledby", "aria-label"]; 47177const _hoisted_2$3e = ["id"]; 47178function _sfc_render$37(_ctx, _cache, $props, $setup, $data, $options) { 47179 return openBlock(), createElementBlock("svg", { 47180 width: "24", 47181 height: "24", 47182 viewBox: "0 0 24 24", 47183 class: "instagramicon", 47184 fill: "none", 47185 xmlns: "http://www.w3.org/2000/svg", 47186 role: "img", 47187 "aria-labelledby": `icon-title-${$options.id}`, 47188 "aria-label": $options.alt 47189 }, [ 47190 createBaseVNode("title", { 47191 id: `icon-title-${$options.id}` 47192 }, toDisplayString($options.alt), 9, _hoisted_2$3e), 47193 _cache[0] || (_cache[0] = createStaticVNode('<defs><radialGradient id="rg" r="150%" cx="30%" cy="107%"><stop stop-color="#fdf497" offset="0"></stop><stop stop-color="#fdf497" offset="0.05"></stop><stop stop-color="#fd5949" offset="0.45"></stop><stop stop-color="#d6249f" offset="0.6"></stop><stop stop-color="#285AEB" offset="0.9"></stop></radialGradient></defs><path d="M14.829 6.302C14.091 6.268 13.869 6.262 12 6.262C10.131 6.262 9.91 6.269 9.172 6.302C7.273 6.389 6.389 7.288 6.302 9.172C6.269 9.91 6.261 10.131 6.261 12C6.261 13.869 6.269 14.09 6.302 14.829C6.389 16.708 7.269 17.612 9.172 17.699C9.909 17.732 10.131 17.74 12 17.74C13.87 17.74 14.091 17.733 14.829 17.699C16.728 17.613 17.611 16.711 17.699 14.829C17.732 14.091 17.739 13.869 17.739 12C17.739 10.131 17.732 9.91 17.699 9.172C17.611 7.289 16.726 6.389 14.829 6.302ZM12 15.595C10.015 15.595 8.405 13.986 8.405 12C8.405 10.015 10.015 8.406 12 8.406C13.985 8.406 15.595 10.015 15.595 12C15.595 13.985 13.985 15.595 12 15.595ZM15.737 9.104C15.273 9.104 14.897 8.728 14.897 8.264C14.897 7.8 15.273 7.424 15.737 7.424C16.201 7.424 16.577 7.8 16.577 8.264C16.577 8.727 16.201 9.104 15.737 9.104ZM14.333 12C14.333 13.289 13.288 14.333 12 14.333C10.712 14.333 9.667 13.289 9.667 12C9.667 10.711 10.712 9.667 12 9.667C13.288 9.667 14.333 10.711 14.333 12ZM12 0C5.373 0 0 5.373 0 12C0 18.627 5.373 24 12 24C18.627 24 24 18.627 24 12C24 5.373 18.627 0 12 0ZM18.958 14.886C18.843 17.431 17.426 18.841 14.887 18.958C14.14 18.992 13.901 19 12 19C10.099 19 9.861 18.992 9.114 18.958C6.57 18.841 5.159 17.429 5.042 14.886C5.008 14.14 5 13.901 5 12C5 10.099 5.008 9.861 5.042 9.114C5.159 6.57 6.571 5.159 9.114 5.043C9.861 5.008 10.099 5 12 5C13.901 5 14.14 5.008 14.887 5.043C17.432 5.16 18.844 6.575 18.958 9.114C18.992 9.861 19 10.099 19 12C19 13.901 18.992 14.14 18.958 14.886Z"></path>', 2)) 47194 ], 8, _hoisted_1$3p); 47195} 47196const __nuxt_component_3 = /* @__PURE__ */ _export_sfc(_sfc_main$3p, [["render", _sfc_render$37]]); 47197const CoreIconInstagram = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 47198 __proto__: null, 47199 default: __nuxt_component_3 47200}, Symbol.toStringTag, { value: "Module" })); 47201const _sfc_main$3o = { 47202 name: "CoreIconYoutube", 47203 props: { 47204 settings: { 47205 type: Object, 47206 required: false 47207 } 47208 }, 47209 computed: { 47210 alt() { 47211 var _a, _b; 47212 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 47213 }, 47214 id() { 47215 var _a, _b; 47216 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 47217 } 47218 } 47219}; 47220const _hoisted_1$3o = ["aria-labelledby", "aria-label"]; 47221const _hoisted_2$3d = ["id"]; 47222function _sfc_render$36(_ctx, _cache, $props, $setup, $data, $options) { 47223 return openBlock(), createElementBlock("svg", { 47224 width: "24", 47225 height: "24", 47226 class: "youtubeicon",
47227 viewBox: "0 0 24 24", 47228 fill: "none", 47229 xmlns: "http://www.w3.org/2000/svg", 47230 role: "img", 47231 "aria-labelledby": `icon-title-${$options.id}`, 47232 "aria-label": $options.alt 47233 }, [ 47234 createBaseVNode("title", { 47235 id: `icon-title-${$options.id}` 47236 }, toDisplayString($options.alt), 9, _hoisted_2$3d), 47237 _cache[0] || (_cache[0] = createBaseVNode("path", { 47238 d: "M12 0C5.373 0 0 5.373 0 12C0 18.627 5.373 24 12 24C18.627 24 24 18.627 24 12C24 5.373 18.627 0 12 0ZM16.441 16.892C14.339 17.036 9.657 17.036 7.558 16.892C5.282 16.736 5.017 15.622 5 12C5.017 8.371 5.285 7.264 7.558 7.108C9.657 6.964 14.34 6.964 16.441 7.108C18.718 7.264 18.982 8.378 19 12C18.982 15.629 18.715 16.736 16.441 16.892ZM10 9.658L14.917 11.996L10 14.342V9.658Z", 47239 fill: "currentColor" 47240 }, null, -1)) 47241 ], 8, _hoisted_1$3o); 47242} 47243const __nuxt_component_4 = /* @__PURE__ */ _export_sfc(_sfc_main$3o, [["render", _sfc_render$36]]); 47244const CoreIconYoutube = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 47245 __proto__: null, 47246 default: __nuxt_component_4 47247}, Symbol.toStringTag, { value: "Module" })); 47248const _sfc_main$3n = { 47249 name: "CoreBlockSocialLinks", 47250 props: { 47251 settings: { 47252 type: Object, 47253 required: true 47254 }, 47255 dataSite: { 47256 type: Object, 47257 default: () => ({}) 47258 } 47259 }, 47260 setup(props) { 47261 const blockHeadline = computed(() => { 47262 var _a; 47263 if (!((_a = props.settings) == null ? void 0 : _a["headline-show"])) return null; 47264 return props.settings.headline || null; 47265 }); 47266 const blockUsername = computed(() => { 47267 var _a; 47268 if (!((_a = props.settings) == null ? void 0 : _a["username-show"])) return ""; 47269 return props.settings.username || null; 47270 }); 47271 const blockFacebook = computed(() => { 47272 var _a; 47273 if (((_a = props.settings) == null ? void 0 : _a["facebook-show"]) === false) return ""; 47274 return renderData(props.settings.facebook, props.dataSite); 47275 }); 47276 const blockLinkedin = computed(() => { 47277 var _a; 47278 if (((_a = props.settings) == null ? void 0 : _a["linkedin-show"]) === false) return ""; 47279 return renderData(props.settings.linkedin, props.dataSite); 47280 }); 47281 const blockInstagram = computed(() => { 47282 return props.settings.instagram || ""; 47283 }); 47284 const blockTwitter = computed(() => { 47285 var _a; 47286 if (((_a = props.settings) == null ? void 0 : _a["twitter-show"]) === false) return ""; 47287 return renderData(props.settings.twitter, props.dataSite); 47288 }); 47289 const blockYoutube = computed(() => { 47290 return props.settings.youtube || ""; 47291 }); 47292 return { 47293 blockHeadline, 47294 blockUsername, 47295 blockFacebook, 47296 blockLinkedin, 47297 blockInstagram, 47298 blockTwitter, 47299 blockYoutube 47300 }; 47301 } 47302}; 47303const _hoisted_1$3n = { class: "block__body" }; 47304const _hoisted_2$3c = { class: "block__header_group" }; 47305const _hoisted_3$9 = ["innerHTML"]; 47306const _hoisted_4$6 = { class: "block__icon_group" }; 47307const _hoisted_5$6 = { 47308 key: 0, 47309 class: "block__facebook" 47310}; 47311const _hoisted_6$4 = ["href"]; 47312const _hoisted_7$4 = { 47313 key: 1, 47314 class: "block__twitter" 47315}; 47316const _hoisted_8$4 = ["href"]; 47317const _hoisted_9$3 = { 47318 key: 2, 47319 class: "block__linkedin" 47320}; 47321const _hoisted_10$3 = ["href"]; 47322const _hoisted_11$3 = { 47323 key: 3, 47324 class: "block__instagram" 47325}; 47326const _hoisted_12$3 = ["href"]; 47327const _hoisted_13$3 = { 47328 key: 4, 47329 class: "block__youtube" 47330}; 47331const _hoisted_14$3 = ["href"]; 47332const _hoisted_15$3 = { class: "block__header_group" }; 47333const _hoisted_16$3 = { 47334 key: 0, 47335 class: "block__username" 47336}; 47337function _sfc_render$35(_ctx, _cache, $props, $setup, $data, $options) { 47338 const _component_CoreIconFacebook = __nuxt_component_0$1; 47339 const _component_CoreIconTwitter = __nuxt_component_1$2; 47340 const _component_CoreIconLinkedin = __nuxt_component_2; 47341 const _component_CoreIconInstagram = __nuxt_component_3; 47342 const _component_CoreIconYoutube = __nuxt_component_4; 47343 return openBlock(), createElementBlock("div", _hoisted_1$3n, [ 47344 createBaseVNode("div", _hoisted_2$3c, [ 47345 $setup.blockHeadline ? (openBlock(), createElementBlock("div", { 47346 key: 0, 47347 class: "block__headline", 47348 innerHTML: $setup.blockHeadline 47349 }, null, 8, _hoisted_3$9)) : createCommentVNode("", true) 47350 ]), 47351 createBaseVNode("div", _hoisted_4$6, [ 47352 $setup.blockFacebook ? (openBlock(), createElementBlock("div", _hoisted_5$6, [ 47353 createBaseVNode("a", { 47354 class: "block__link", 47355 href: $setup.blockFacebook, 47356 target: "_blank" 47357 }, [ 47358 createVNode(_component_CoreIconFacebook) 47359 ], 8, _hoisted_6$4) 47360 ])) : createCommentVNode("", true), 47361 $setup.blockTwitter ? (openBlock(), createElementBlock("div", _hoisted_7$4, [ 47362 createBaseVNode("a", { 47363 href: $setup.blockTwitter, 47364 class: "block__link", 47365 target: "_blank" 47366 }, [ 47367 createVNode(_component_CoreIconTwitter) 47368 ], 8, _hoisted_8$4) 47369 ])) : createCommentVNode("", true), 47370 $setup.blockLinkedin ? (openBlock(), createElementBlock("div", _hoisted_9$3, [ 47371 createBaseVNode("a", { 47372 href: $setup.blockLinkedin, 47373 class: "block__link", 47374 target: "_blank" 47375 }, [ 47376 createVNode(_component_CoreIconLinkedin) 47377 ], 8, _hoisted_10$3) 47378 ])) : createCommentVNode("", true), 47379 $setup.blockInstagram ? (openBlock(), createElementBlock("div", _hoisted_11$3, [ 47380 createBaseVNode("a", { 47381 href: $setup.blockInstagram, 47382 class: "block__link", 47383 target: "_blank" 47384 }, [ 47385 createVNode(_component_CoreIconInstagram) 47386 ], 8, _hoisted_12$3) 47387 ])) : createCommentVNode("", true), 47388 $setup.blockYoutube ? (openBlock(), createElementBlock("div", _hoisted_13$3, [ 47389 createBaseVNode("a", { 47390 href: $setup.blockYoutube, 47391 class: "block__link", 47392 target: "_blank" 47393 }, [ 47394 createVNode(_component_CoreIconYoutube) 47395 ], 8, _hoisted_14$3) 47396 ])) : createCommentVNode("", true) 47397 ]), 47398 createBaseVNode("div", _hoisted_15$3, [ 47399 $setup.blockUsername ? (openBlock(), createElementBlock("div", _hoisted_16$3, toDisplayString($setup.blockUsername), 1)) : createCommentVNode("", true) 47400 ]) 47401 ]); 47402} 47403const CoreBlockSocialLinks = /* @__PURE__ */ _export_sfc(_sfc_main$3n, [["render", _sfc_render$35]]); 47404const CoreBlockSocialLinks$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 47405 __proto__: null, 47406 default: CoreBlockSocialLinks 47407}, Symbol.toStringTag, { value: "Module" })); 47408const _sfc_main$3m = { 47409 name: "CoreBlockStickyButton", 47410 components: { 47411 NuxtLink: __nuxt_component_2$5 47412 }, 47413 props: { 47414 isEditable: { 47415 type: Boolean, 47416 default: false 47417 }, 47418 isBuilder: { 47419 type: Boolean, 47420 default: false 47421 }, 47422 settings: { 47423 type: Object, 47424 required: true 47425 } 47426 }, 47427 setup(props) { 47428 const root2 = useRoot(); 47429 useRoute(); 47430 const { getters, state, commit: commit2 } = useStore(); 47431 const isDialogOpen = ref(false); 47432 const offset = ref(0); 47433 const isFixed = ref(false); 47434 const mainNavHeight = ref(100); 47435 const isStickyNavOnTop = ref(false); 47436 const handleToggle = () => { 47437 if (props.isBuilder && props.isEditable && !state.interface.isLeftRailClosing) { 47438 const hasPermission = getters["authorization/hasScopePermission"]("site", "SITE_STICKY_BUTTON"); 47439 if (!hasPermission) { 47440 return; 47441 } 47442 if (!state.interface.activeSidebarKey) { 47443 commit2("interface/toggleActiveSidebarKey", "stickyButton"); 47444 } else { 47445 commit2("interface/setActiveSidebarKey"); 47446 } 47447 commit2( 47448 "interface/setRightRailOpening", 47449 !state.interface.isRightRailOpening 47450 ); 47451 commit2("site/clearSelectedBlockIds"); 47452 setTimeout(() => { 47453 const targetElement = document.querySelector( 47454 ".editor-main-navigation" 47455 ); 47456 if (targetElement) 47457 targetElement.scrollIntoView({ behavior: "smooth" }); 47458 }, 500); 47459 } 47460 }; 47461 const itemCheckFunction = (item) => item.type === "document" || item.type === "link"; 47462 const { isExpired } = useIsExpired(props.settings, itemCheckFunction); 47463 const buttonLabel = computed(() => { 47464 var _a; 47465 return ((_a = props.settings) == null ? void 0 : _a.label) ?? ""; 47466 }); 47467 const buttonAltText = computed(() => { 47468 var _a; 47469 return ((_a = props.settings) == null ? void 0 : _a.alt) || buttonLabel.value; 47470 }); 47471 const buttonUrl = computed(() => { 47472 var _a, _b; 47473 if (isExpired.value) return ""; 47474 const url = (_a = props.settings) == null ? void 0 : _a.url; 47475 if (typeof url === "string" && (url == null ? void 0 : url.includes("https://calendly.com"))) { 47476 return ""; 47477 } else if (url === "dialog") { 47478 return ""; 47479 } 47480 if (typeof url === "object" && url !== null && url.name) { 47481 const router = useRouter$2(); 47482 if (!router.hasRoute(url.name)) { 47483 return ""; 47484 } 47485 } 47486 const newUrl = ((_b = props.settings) == null ? void 0 : _b.newWindow) ? replaceUrlBasePath(url) : url; 47487 return newUrl || ""; 47488 }); 47489 const clickEvent = computed(() => { 47490 var _a, _b, _c; 47491 if (typeof ((_a = props.settings) == null ? void 0 : _a.url) === "string" && ((_c = (_b = props.settings) == null ? void 0 : _b.url) == null ? void 0 : _c.includes("https://calendly.com"))) { 47492 return (e) => { 47493 e.preventDefault(); 47494 showPopUp(); 47495 }; 47496 } else if (isDialog.value) { 47497 return (e) => { 47498 e.preventDefault(); 47499 toggleDialog(); 47500 }; 47501 } 47502 return (e) => { 47503 var _a2; 47504 if ((_a2 = props.settings) == null ? void 0 : _a2.event) { 47505 e.preventDefault(); 47506 props.settings.event(); 47507 } 47508 }; 47509 }); 47510 const isInternal = computed(() => { 47511 var _a; 47512 const url = (_a = props.settings) == null ? void 0 : _a.url; 47513 return typeof url === "string" && (url == null ? void 0 : url.charAt(0)) == "/" || typeof url === "object" && url !== null; 47514 }); 47515 const isDialog = computed(() => { 47516 var _a; 47517 return ((_a = props.settings) == null ? void 0 : _a.url) === "dialog"; 47518 }); 47519 const newWindowTarget = computed(() => { 47520 var _a; 47521 if ((_a = props.settings) == null ? void 0 : _a.newWindow) return "_blank"; 47522 return "_self"; 47523 }); 47524 const newWindowAriaLabel = computed(() => { 47525 if (props.settings.newWindow && buttonLabel.value) 47526 return `${buttonLabel.value} (opens in a new window)`; 47527 return null; 47528 }); 47529 const relAttributes = computed(() => { 47530 var _a, _b; 47531 const featureEnabled = (_b = (_a = state == null ? void 0 : state.settings) == null ? void 0 : _a.featureFlags) == null ? void 0 : _b.SeoLinkRelAttributes; 47532 if (!featureEnabled) { 47533 return null; 47534 } 47535 if (Array.isArray(props.settings.relAttributes) && props.settings.relAttributes.length > 0) { 47536 return props.settings.relAttributes.join(" "); 47537 } 47538 if (newWindowTarget.value === "_blank") { 47539 return "noopener noreferrer"; 47540 } 47541 return null; 47542 }); 47543 const buttonDataTestId = computed(() => { 47544 var _a, _b, _c; 47545 const calendlyUrlSelf = typeof ((_a = props.settings) == null ? void 0 : _a.url) === "string" && ((_c = (_b = props.settings) == null ? void 0 : _b.url) == null ? void 0 : _c.includes("https://calendly.com")) && newWindowTarget.value !== "_blank"; 47546 return isDialog.value || calendlyUrlSelf ? "dialog-button" : "button"; 47547 }); 47548 const formSettings = computed(() => { 47549 var _a; 47550 return ((_a = props.settings) == null ? void 0 : _a.dialog) || {}; 47551 }); 47552 const focusPopup = () => { 47553 const container = document.querySelector(".calendly-popup-content"); 47554 if (!container) { 47555 return; 47556 } 47557 const button = document.createElement("button"); 47558 container.prepend(button); 47559 button.focus(); 47560 button.remove(); 47561 }; 47562 const showPopUp = () => { 47563 var _a; 47564 GTMCalendly(); 47565 { 47566 window.Calendly.showPopupWidget((_a = props.settings) == null ? void 0 : _a.url); 47567 setCalendlyAttributes(props.settings.iframeTitle); 47568 addModalListener(); 47569 focusPopup(); 47570 } 47571 return false;
47572 }; 47573 const toggleDialog = () => { 47574 isDialogOpen.value = !isDialogOpen.value; 47575 return false; 47576 }; 47577 const setCalendlyAttributes = (title) => { 47578 var _a; 47579 const iframes = document.querySelectorAll("iframe"); 47580 for (const iframe of iframes) { 47581 if ((_a = iframe.src) == null ? void 0 : _a.includes("https://calendly.com")) { 47582 iframe.setAttribute( 47583 "title", 47584 title || "default-calendly-title" 47585 ); 47586 } 47587 } 47588 const calendlyCloseButton = document.querySelector( 47589 ".calendly-popup-close" 47590 ); 47591 calendlyCloseButton.setAttribute("tabIndex", "0"); 47592 calendlyCloseButton.addEventListener( 47593 "keydown", 47594 closeModalEnterHandler, 47595 true 47596 ); 47597 }; 47598 const closeModalEnterHandler = (event) => { 47599 if (event.key === "Enter" || event.keyCode === 13) { 47600 closeCalendlyModal(); 47601 } 47602 }; 47603 const closeModalKeyHandler = (event) => { 47604 if (event.key === "Escape" || event.keyCode === 27) { 47605 closeCalendlyModal(); 47606 } 47607 }; 47608 const closeCalendlyModal = () => { 47609 window.Calendly.closePopupWidget(); 47610 document.removeEventListener("keydown", closeModalKeyHandler, true); 47611 }; 47612 const addModalListener = () => { 47613 document.addEventListener("keydown", closeModalKeyHandler, true); 47614 }; 47615 const GTMCalendly = () => { 47616 const { eventType, calendlyId } = decodeCalendlyUrl( 47617 props.settings.url 47618 ); 47619 root2.$gtm.push({ 47620 event: "nyl-calendly", 47621 calendly_id: calendlyId, 47622 calendly_category: getCalendlyCategory(eventType), 47623 event_type: eventType, 47624 calendly_event_id: eventType == null ? void 0 : eventType.toLowerCase().replace(/\s/g, ""), 47625 click_url: props.settings.url 47626 }); 47627 }; 47628 const getCalendlyCategory = (eventType) => { 47629 var calendlyCategory = ""; 47630 switch (eventType) { 47631 case "Custom Event": 47632 calendlyCategory = "custom"; 47633 break; 47634 case "General Discussion": 47635 case "Intro Appointment": 47636 case "Review": 47637 calendlyCategory = "agent"; 47638 break; 47639 case "Intro to NYL": 47640 case "Quick Checkin": 47641 case "First Interview": 47642 calendlyCategory = "GO"; 47643 break; 47644 } 47645 return calendlyCategory; 47646 }; 47647 const replaceUrlBasePath = (url) => { 47648 if (!url || !isInternal.value) return url; 47649 const config = /* @__PURE__ */ useRuntimeConfig(); 47650 const basePath = config.public.basePath || "/"; 47651 return `${basePath}/${url}`.replace(/\/+/g, "/"); 47652 }; 47653 const decodeCalendlyUrl = (url) => { 47654 if (!url || typeof url !== "string" || url.trim() === "") { 47655 return { 47656 eventType: null, 47657 calendlyId: null 47658 }; 47659 } 47660 try { 47661 if (!url || typeof url !== "string" || url.trim() === "") { 47662 return url; 47663 } 47664 const urlObj = new URL(url); 47665 const pathParts = urlObj.pathname.split("/").filter((part) => part !== ""); 47666 const calendlyId = pathParts[0] || null; 47667 let eventType = ""; 47668 if (pathParts.length > 1) { 47669 eventType = decodeURIComponent(pathParts[1]); 47670 } 47671 if (!eventType || eventType.includes("utm_campaign") && eventType.includes("utm_source")) { 47672 eventType = null; 47673 } 47674 return { 47675 eventType, 47676 calendlyId 47677 }; 47678 } catch (error) { 47679 console.error("Invalid Calendly URL:", error); 47680 return { 47681 eventType: null, 47682 calendlyId: null 47683 }; 47684 } 47685 }; 47686 const isTop = computed(() => { 47687 var _a, _b, _c; 47688 return (_c = (_b = (_a = props.settings) == null ? void 0 : _a.variants) == null ? void 0 : _b.location) == null ? void 0 : _c.includes("top"); 47689 }); 47690 const classList = computed(() => { 47691 var _a; 47692 const variants = ((_a = props.settings) == null ? void 0 : _a.variants) || {}; 47693 let classes = []; 47694 Object.keys(variants).forEach((key) => { 47695 if (variants[key]) { 47696 classes.push(`block_sticky-button_${variants[key]}`); 47697 if (variants[key] === "top-left" || variants[key] === "bottom-left") { 47698 classes.push(`block_sticky-button_pl-huge`); 47699 classes.push(`block_sticky-button_align-left`); 47700 } 47701 if (variants[key] === "top-right" || variants[key] === "bottom-right") { 47702 classes.push(`block_sticky-button_pr-huge`); 47703 classes.push(`block_sticky-button_align-right`); 47704 } 47705 } 47706 }); 47707 if (isFixed.value) { 47708 classes.push(`block_sticky-button_fixed`); 47709 } 47710 return classes.join(" "); 47711 }); 47712 const updateOffset = () => { 47713 var _a, _b; 47714 if (props.isBuilder) { 47715 return; 47716 } 47717 const topValue = (_b = (_a = document == null ? void 0 : document.getElementsByTagName("footer")) == null ? void 0 : _a[0]) == null ? void 0 : _b.getBoundingClientRect().top; 47718 if (isTop.value) { 47719 const top = document.getElementById("sticky-button").getBoundingClientRect().top; 47720 offset.value = 0; 47721 isStickyNavOnTop.value = !!(document == null ? void 0 : document.querySelector( 47722 ".block_anchor-link-nav_isTop .anchor_link_nav-fixed" 47723 )); 47724 const TOP_OFFSET = isStickyNavOnTop.value ? 40 : 20; 47725 const mainNav = document.getElementById("main-nav"); 47726 if (mainNav) { 47727 const navHeight = mainNav.getBoundingClientRect().height + TOP_OFFSET; 47728 offset.value = navHeight; 47729 if (top <= navHeight) { 47730 isFixed.value = true; 47731 } 47732 } else { 47733 if (top <= 0) { 47734 isFixed.value = true; 47735 } else { 47736 isFixed.value = false;
47737 } 47738 } 47739 } else { 47740 const BOTTOM_OFFSET = 30; 47741 const toggleFix = topValue > window.innerHeight - BOTTOM_OFFSET; 47742 if (toggleFix) { 47743 offset.value = BOTTOM_OFFSET; 47744 isFixed.value = true; 47745 } else { 47746 offset.value = 0; 47747 isFixed.value = false; 47748 } 47749 } 47750 }; 47751 onMounted(() => { 47752 var _a; 47753 mainNavHeight.value = ((_a = document == null ? void 0 : document.getElementById("main-nav")) == null ? void 0 : _a.getBoundingClientRect().height) ?? 100; 47754 updateOffset(); 47755 window.addEventListener("scroll", updateOffset); 47756 window.addEventListener("resize", updateOffset); 47757 }); 47758 onBeforeUnmount(() => { 47759 window.removeEventListener("scroll", updateOffset); 47760 window.removeEventListener("resize", updateOffset); 47761 }); 47762 const routePath = computed(() => { 47763 var _a; 47764 return ((_a = root2 == null ? void 0 : root2.$route) == null ? void 0 : _a.fullPath) || ""; 47765 }); 47766 watch(routePath, async () => { 47767 { 47768 await nextTick(); 47769 requestAnimationFrame(() => { 47770 updateOffset(); 47771 setTimeout(() => { 47772 window.dispatchEvent(new Event("scroll")); 47773 }, 200); 47774 }); 47775 } 47776 }); 47777 return { 47778 addModalListener, 47779 buttonAltText, 47780 buttonDataTestId, 47781 buttonLabel, 47782 buttonUrl, 47783 clickEvent, 47784 closeCalendlyModal, 47785 closeModalKeyHandler, 47786 formSettings, 47787 getCalendlyCategory, 47788 GTMCalendly, 47789 isDialog, 47790 isDialogOpen, 47791 isExpired, 47792 isInternal, 47793 newWindowAriaLabel, 47794 newWindowTarget, 47795 relAttributes, 47796 replaceUrlBasePath, 47797 setCalendlyAttributes, 47798 showPopUp, 47799 toggleDialog, 47800 handleToggle, 47801 classList, 47802 isTop, 47803 offset, 47804 isFixed, 47805 mainNavHeight 47806 }; 47807 } 47808}; 47809const _hoisted_1$3m = ["data-testid"]; 47810const _hoisted_2$3b = ["href", "target", "rel", "aria-label", "title"]; 47811const _hoisted_3$8 = { class: "button_icon--custom" }; 47812const _hoisted_4$5 = { class: "button_label button_icon--down" }; 47813const _hoisted_5$5 = { class: "button_label_text" }; 47814const _hoisted_6$3 = { class: "button_icon--custom" }; 47815const _hoisted_7$3 = { class: "button_label button_icon--down" }; 47816const _hoisted_8$3 = { class: "button_label_text" }; 47817function _sfc_render$34(_ctx, _cache, $props, $setup, $data, $options) { 47818 const _component_CoreIcon = __nuxt_component_1$7; 47819 const _component_NuxtLink = __nuxt_component_2$5; 47820 const _component_CoreBlock = _sfc_main$4x; 47821 const _component_CoreBlockDialog = __nuxt_component_3$1; 47822 return openBlock(), createElementBlock("span", null, [ 47823 $setup.isFixed && $setup.isTop ? (openBlock(), createElementBlock("div", { 47824 key: 0, 47825 id: "sticky-button-placeholder", 47826 style: normalizeStyle(`height: ${$setup.mainNavHeight}px`) 47827 }, null, 4)) : createCommentVNode("", true), 47828 createBaseVNode("div", { 47829 id: "sticky-button", 47830 class: normalizeClass(`${$setup.classList} control-block_container block block_sticky-button`), 47831 style: normalizeStyle({ 47832 zIndex: $setup.isFixed ? 300 : "unset", 47833 pointerEvents: "all", 47834 cursor: "pointer", 47835 height: $props.isBuilder ? "unset" : "0px", 47836 marginBottom: $props.isBuilder ? "0px" : "44px", 47837 ...$setup.isTop ? { top: `${$setup.offset}px` } : { bottom: `${$setup.offset}px` } 47838 }), 47839 onClick: _cache[2] || (_cache[2] = (...args) => $setup.handleToggle && $setup.handleToggle(...args)) 47840 }, [ 47841 createBaseVNode("div", { 47842 class: "block__body", 47843 "data-testid": $setup.buttonDataTestId 47844 }, [ 47845 !$setup.isInternal || $props.settings.newWindow || $setup.isDialog ? (openBlock(), createElementBlock("a", { 47846 key: 0, 47847 href: $setup.buttonUrl, 47848 target: $setup.newWindowTarget, 47849 rel: $setup.relAttributes, 47850 class: "button", 47851 role: "button", 47852 tabindex: "0", 47853 "aria-label": $setup.newWindowAriaLabel, 47854 title: $setup.buttonAltText, 47855 onClick: _cache[0] || (_cache[0] = withModifiers((...args) => $setup.clickEvent && $setup.clickEvent(...args), ["stop"])), 47856 onKeyup: _cache[1] || (_cache[1] = withKeys((...args) => $setup.clickEvent && $setup.clickEvent(...args), ["enter"])) 47857 }, [ 47858 createBaseVNode("span", _hoisted_3$8, [ 47859 $props.settings.icon ? (openBlock(), createBlock(_component_CoreIcon, { 47860 key: 0, 47861 "aria-label": $props.settings.label, 47862 icon: $props.settings.icon, 47863 class: "button_icon", 47864 name: "buttonIcon", 47865 role: "img" 47866 }, null, 8, ["aria-label", "icon"])) : createCommentVNode("", true) 47867 ]), 47868 createBaseVNode("span", _hoisted_4$5, [ 47869 createBaseVNode("span", _hoisted_5$5, toDisplayString($setup.buttonLabel), 1), 47870 createVNode(_component_CoreIcon, { 47871 class: "button_icon button_i", 47872 icon: "down-arrow", 47873 role: "img" 47874 }) 47875 ]) 47876 ], 40, _hoisted_2$3b)) : (openBlock(), createBlock(_component_NuxtLink, mergeProps({ 47877 key: 1, 47878 to: $setup.buttonUrl, 47879 class: "button", 47880 role: "button" 47881 }, { 47882 ...$setup.relAttributes && { rel: $setup.relAttributes } 47883 }, { onClick: $setup.clickEvent }), { 47884 default: withCtx(() => [ 47885 createBaseVNode("span", _hoisted_6$3, [ 47886 $props.settings.icon ? (openBlock(), createBlock(_component_CoreIcon, { 47887 key: 0, 47888 "aria-label": $props.settings.label, 47889 icon: $props.settings.icon, 47890 class: "button_icon", 47891 name: "buttonIcon", 47892 role: "img" 47893 }, null, 8, ["aria-label", "icon"])) : createCommentVNode("", true) 47894 ]), 47895 createBaseVNode("span", _hoisted_7$3, [ 47896 createBaseVNode("span", _hoisted_8$3, toDisplayString($setup.buttonLabel), 1), 47897 createVNode(_component_CoreIcon, { 47898 class: "button_icon button_i", 47899 icon: "down-arrow", 47900 role: "img" 47901 }) 47902 ]) 47903 ]), 47904 _: 1 47905 }, 16, ["to", "onClick"])), 47906 $setup.isDialog ? (openBlock(), createBlock(_component_CoreBlockDialog, { 47907 key: 2, 47908 show: $setup.isDialogOpen, 47909 type: "modal", 47910 onClose: $setup.toggleDialog 47911 }, { 47912 default: withCtx(() => [ 47913 createVNode(_component_CoreBlock, { 47914 settings: $setup.formSettings, 47915 "is-editable": $props.isEditable 47916 }, null, 8, ["settings", "is-editable"]) 47917 ]), 47918 _: 1 47919 }, 8, ["show", "onClose"])) : createCommentVNode("", true) 47920 ], 8, _hoisted_1$3m) 47921 ], 6) 47922 ]); 47923} 47924const __nuxt_component_1$1 = /* @__PURE__ */ _export_sfc(_sfc_main$3m, [["render", _sfc_render$34]]); 47925const CoreBlockStickyButton = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 47926 __proto__: null, 47927 default: __nuxt_component_1$1 47928}, Symbol.toStringTag, { value: "Module" })); 47929const _sfc_main$3l = { 47930 name: "CoreBlockText", 47931 props: { 47932 settings: { 47933 type: Object, 47934 required: true 47935 } 47936 }, 47937 setup() { 47938 const store = useStore(); 47939 const { getters } = store; 47940 return { 47941 getters 47942 }; 47943 }, 47944 computed: { 47945 isExpired() { 47946 const itemCheckFunction = (item) => item.type === "copy"; 47947 return this.getters["library/isExpired"]( 47948 this.settings.contentLibraryItems, 47949 itemCheckFunction 47950 ); 47951 }, 47952 blockContent() { 47953 var _a; 47954 return ((_a = this.settings) == null ? void 0 : _a.text) || null; 47955 }, 47956 blockTag() { 47957 var _a; 47958 return ((_a = this.settings) == null ? void 0 : _a.tag) || "p"; 47959 } 47960 } 47961}; 47962const _hoisted_1$3l = { class: "block__body" }; 47963const _hoisted_2$3a = ["data-testid"]; 47964function _sfc_render$33(_ctx, _cache, $props, $setup, $data, $options) { 47965 return openBlock(), createElementBlock("div", _hoisted_1$3l, [ 47966 $options.isExpired ? (openBlock(), createElementBlock("div", { 47967 key: 0, 47968 "data-testid": `${$props.settings.type}-expired` 47969 }, null, 8, _hoisted_2$3a)) : $options.blockContent ? (openBlock(), createBlock(resolveDynamicComponent($options.blockTag), { key: 1 }, { 47970 default: withCtx(() => [ 47971 createTextVNode(toDisplayString($options.blockContent), 1) 47972 ]), 47973 _: 1 47974 })) : createCommentVNode("", true) 47975 ]); 47976} 47977const CoreBlockText = /* @__PURE__ */ _export_sfc(_sfc_main$3l, [["render", _sfc_render$33]]); 47978const CoreBlockText$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 47979 __proto__: null, 47980 default: CoreBlockText 47981}, Symbol.toStringTag, { value: "Module" })); 47982const _imports_0 = publicAssetsURL("/img/Add_Component_Icon.svg"); 47983const _sfc_main$3k = { 47984 name: "CoreBlockUnknown", 47985 props: { 47986 isEditable: { 47987 type: Boolean, 47988 default: false 47989 }, 47990 settings: { 47991 type: Object, 47992 required: true 47993 } 47994 } 47995}; 47996const _hoisted_1$3k = { 47997 class: "block__body", 47998 style: { 47999 display: "flex", 48000 alignContent: "center", 48001 justifyContent: "center", 48002 padding: "1rem" 48003 } 48004}; 48005const _hoisted_2$39 = { class: "block__section_content" }; 48006const _hoisted_3$7 = { key: 0 }; 48007const _hoisted_4$4 = { key: 1 }; 48008const _hoisted_5$4 = { 48009 key: 2, 48010 class: "add-component-container" 48011}; 48012function _sfc_render$32(_ctx, _cache, $props, $setup, $data, $options) { 48013 return openBlock(), createElementBlock("div", _hoisted_1$3k, [ 48014 createBaseVNode("div", _hoisted_2$39, [ 48015 !$props.isEditable ? (openBlock(), createElementBlock("div", _hoisted_3$7)) : $props.settings.type ? (openBlock(), createElementBlock("div", _hoisted_4$4, [ 48016 _cache[0] || (_cache[0] = createTextVNode(" UNREGISTERED BLOCK TYPE: ")), 48017 _cache[1] || (_cache[1] = createBaseVNode("br", null, null, -1)), 48018 createBaseVNode("strong", null, toDisplayString($props.settings.type), 1) 48019 ])) : (openBlock(), createElementBlock("div", _hoisted_5$4, _cache[2] || (_cache[2] = [ 48020 createBaseVNode("img", { 48021 src: _imports_0, 48022 class: "add-component-icon" 48023 }, null, -1), 48024 createBaseVNode("button", { 48025 "data-testid": "add-component-btn", 48026 class: "add-component-btn" 48027 }, [ 48028 createBaseVNode("span", { class: "material-icons" }), 48029 createTextVNode(" Add Component ") 48030 ], -1) 48031 ]))) 48032 ]) 48033 ]); 48034} 48035const CoreBlockUnknown = /* @__PURE__ */ _export_sfc(_sfc_main$3k, [["render", _sfc_render$32]]); 48036const CoreBlockUnknown$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 48037 __proto__: null, 48038 default: CoreBlockUnknown 48039}, Symbol.toStringTag, { value: "Module" })); 48040const _sfc_main$3j = { 48041 name: "CoreBlockContainerToggle", 48042 props: { 48043 settings: { 48044 type: Object, 48045 required: true 48046 }, 48047 activeId: { 48048 type: String, 48049 required: true 48050 }, 48051 // Pre-filtered by the parent CoreBlockContainer, whose hasOverlay gate 48052 // (flag + settings.hasOverlay + overlay child present) is the source of 48053 // truth. Falls back to the raw settings.blocks when rendered standalone. 48054 blocks: { 48055 type: Array, 48056 default: null 48057 } 48058 }, 48059 computed: { 48060 blockChildren() { 48061 var _a; 48062 return this.blocks ?? ((_a = this.settings) == null ? void 0 : _a.blocks) ?? []; 48063 } 48064 }, 48065 methods: { 48066 toggleLabel(toggleIndex) { 48067 return this.settings[`label-${toggleIndex + 1}`] || "Toggle"; 48068 }, 48069 setToggle(event) { 48070 this.$emit("set-item", event); 48071 } 48072 } 48073}; 48074const _hoisted_1$3j = { class: "block_container_toggle__buttons--container" }; 48075const _hoisted_2$38 = { class: "block_container_toggle__buttons" }; 48076const _hoisted_3$6 = ["onClick"]; 48077function _sfc_render$31(_ctx, _cache, $props, $setup, $data, $options) { 48078 return openBlock(), createElementBlock("div", _hoisted_1$3j, [ 48079 createBaseVNode("div", _hoisted_2$38, [ 48080 (openBlock(true), createElementBlock(Fragment, null, renderList($options.blockChildren, (toggle, childIndex) => { 48081 return openBlock(), createElementBlock("button", { 48082 key: toggle.id, 48083 class: normalizeClass({ active: $props.activeId === toggle.id }), 48084 onClick: ($event) => $options.setToggle(toggle.id) 48085 }, toDisplayString($options.toggleLabel(childIndex)), 11, _hoisted_3$6); 48086 }), 128)) 48087 ]) 48088 ]); 48089} 48090const __nuxt_component_0 = /* @__PURE__ */ _export_sfc(_sfc_main$3j, [["render", _sfc_render$31]]); 48091const CoreBlockContainerToggle = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 48092 __proto__: null, 48093 default: __nuxt_component_0 48094}, Symbol.toStringTag, { value: "Module" })); 48095const _sfc_main$3i = { 48096 name: "CoreBlockContainerTabs", 48097 props: { 48098 settings: { 48099 type: Object, 48100 required: true 48101 }, 48102 activeId: { 48103 type: String, 48104 required: true 48105 }, 48106 // Pre-filtered by the parent CoreBlockContainer, whose hasOverlay gate 48107 // (flag + settings.hasOverlay + overlay child present) is the source of 48108 // truth. Falls back to the raw settings.blocks when rendered standalone. 48109 blocks: { 48110 type: Array, 48111 default: null 48112 } 48113 }, 48114 computed: { 48115 blockChildren() { 48116 var _a; 48117 return this.blocks ?? ((_a = this.settings) == null ? void 0 : _a.blocks) ?? []; 48118 } 48119 }, 48120 methods: { 48121 setTab(event) { 48122 this.$emit("set-item", event); 48123 } 48124 } 48125}; 48126const _hoisted_1$3i = { class: "block__control block__control_nav" }; 48127const _hoisted_2$37 = ["onClick"]; 48128function _sfc_render$30(_ctx, _cache, $props, $setup, $data, $options) { 48129 return openBlock(), createElementBlock("ul", _hoisted_1$3i, [ 48130 (openBlock(true), createElementBlock(Fragment, null, renderList($options.blockChildren, (tab, tabIndex) => { 48131 return openBlock(), createElementBlock("li", { 48132 key: tab.id, 48133 class: normalizeClass({ 48134 block__control_nav_item: true, 48135 "block__control_nav_item--active": $props.activeId === tab.id 48136 }), 48137 onClick: ($event) => $options.setTab(tab.id) 48138 }, toDisplayString(`Tab ${tabIndex + 1}`), 11, _hoisted_2$37); 48139 }), 128)) 48140 ]); 48141} 48142const __nuxt_component_1 = /* @__PURE__ */ _export_sfc(_sfc_main$3i, [["render", _sfc_render$30]]); 48143const CoreBlockContainerTabs = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 48144 __proto__: null, 48145 default: __nuxt_component_1 48146}, Symbol.toStringTag, { value: "Module" })); 48147const _hoisted_1$3h = ["data-testid"]; 48148const _sfc_main$3h = { 48149 __name: "CoreBlockContainerAccordion", 48150 props: { 48151 isShowingContents: { 48152 type: Boolean, 48153 default: true 48154 }, 48155 settings: { 48156 type: Object, 48157 required: true 48158 }, 48159 isEditable: { 48160 type: Boolean, 48161 default: false 48162 } 48163 }, 48164 emits: ["toggle-contents"], 48165 setup(__props, { emit: __emit }) { 48166 const store = useStore(); 48167 const { state } = store; 48168 const props = __props; 48169 const accordionLabel = computed(() => { 48170 var _a; 48171 let label = ((_a = props.settings) == null ? void 0 : _a.accordionText) || ""; 48172 if (!/<\/?[a-z][\s\S]*>/i.test(label)) label = `<h5>${label}</h5>`; 48173 return label.replaceAll(/<[^>]*>/g, "") ? label : "<h5>Accordion</h5>"; 48174 }); 48175 const accordionDataTestId = computed(() => { 48176 return props.isShowingContents ? "component" : "clickable-component"; 48177 }); 48178 const accordionBuilderClasses = computed(() => { 48179 var _a, _b; 48180 if (!((_a = state.interface) == null ? void 0 : _a.activeSidebarKey) || !((_b = state.site) == null ? void 0 : _b.workingBlock)) 48181 return ""; 48182 return "block__control_accordion-sidebar_open"; 48183 }); 48184 return (_ctx, _cache) => { 48185 const _component_CoreBlock = _sfc_main$4x; 48186 const _component_CoreIcon = __nuxt_component_1$7; 48187 return openBlock(), createElementBlock("div", { 48188 "data-testid": accordionDataTestId.value, 48189 class: normalizeClass(["block__control block__control_accordion", accordionBuilderClasses.value]), 48190 tabindex: "0", 48191 role: "link", 48192 onKeydown: _cache[0] || (_cache[0] = withKeys(($event) => _ctx.$emit("toggle-contents"), ["enter"])), 48193 onClick: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("toggle-contents")) 48194 }, [ 48195 createVNode(_component_CoreBlock, { 48196 "is-editab
48196le": __props.isEditable, 48197 settings: { 48198 ...__props.settings, 48199 bodyText: __props.settings.bodyText || accordionLabel.value, 48200 type: "rich-text" 48201 } 48202 }, null, 8, ["is-editable", "settings"]), 48203 __props.isShowingContents ? (openBlock(), createBlock(_component_CoreIcon, { 48204 key: 0, 48205 icon: "circle-minus", 48206 role: "button", 48207 "aria-label": "Collapse Accordion", 48208 tabindex: "0" 48209 })) : (openBlock(), createBlock(_component_CoreIcon, { 48210 key: 1, 48211 icon: "circle-plus", 48212 role: "button", 48213 "aria-label": "Expand Accordion", 48214 tabindex: "0" 48215 })) 48216 ], 42, _hoisted_1$3h); 48217 }; 48218 } 48219}; 48220const CoreBlockContainerAccordion = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 48221 __proto__: null, 48222 default: _sfc_main$3h 48223}, Symbol.toStringTag, { value: "Module" })); 48224const OVERLAY_ANIMATIONS = [ 48225 "fade", 48226 "bottom-to-top", 48227 "top-to-bottom", 48228 "left-to-right", 48229 "right-to-left" 48230]; 48231const _sfc_main$3g = { 48232 name: "CoreBlockContainer", 48233 props: { 48234 index: { 48235 type: Number, 48236 default: 0 48237 }, 48238 nestedLevel: { 48239 type: Number, 48240 default: 0 48241 }, 48242 settings: { 48243 type: Object, 48244 required: true 48245 }, 48246 isEditable: { 48247 type: Boolean, 48248 default: false 48249 }, 48250 isBuilderMobile: { 48251 type: Boolean, 48252 default: false 48253 }, 48254 isFirstPageLevelBlock: { 48255 type: Boolean, 48256 default: void 0 48257 }, 48258 isFirstPageLevelPosition: { 48259 type: Boolean, 48260 default: void 0 48261 } 48262 }, 48263 setup(props) { 48264 const { isMobile } = useIsMobile(); 48265 const { 48266 isFirstPageLevelBlockFor, 48267 isFirstPageLevelPositionFor, 48268 shouldDeferToChildren 48269 } = useBlockNavOffset(props); 48270 const store = useStore(); 48271 return { 48272 isMobile, 48273 isFirstPageLevelBlockFor, 48274 isFirstPageLevelPositionFor, 48275 shouldDeferToChildren, 48276 store 48277 }; 48278 }, 48279 data() { 48280 return { 48281 activeChildId: null, 48282 isShowingContents: true, 48283 mainSectionStyles: { 48284 display: "flex", 48285 width: "100%", 48286 minWidth: "100%", 48287 marginLeft: "0%", 48288 transition: "margin-left .2s", 48289 alignItems: "stretch", 48290 justifyContent: "center", 48291 gap: "24px" 48292 }, 48293 carouselInterval: null, 48294 currentSlideIndex: 0 48295 }; 48296 }, 48297 computed: { 48298 activeChildIndex() { 48299 if (!this.activeChildId) { 48300 return null; 48301 } 48302 const childIndex = this.blockChildren.findIndex((childSettings) => { 48303 return childSettings.id === this.activeChildId; 48304 }); 48305 if (childIndex >= 0) { 48306 return childIndex; 48307 } 48308 return this.blockChildren.length ? 0 : null; 48309 }, 48310 overlayFeatureEnabled() { 48311 var _a, _b, _c; 48312 return ((_c = (_b = (_a = this.store) == null ? void 0 : _a.getters) == null ? void 0 : _b["settings/getFeatureFlag"]) == null ? void 0 : _c.call( 48313 _b, 48314 "BuilderEnhContainerOverlay" 48315 )) === true; 48316 }, 48317 // Single pass over settings.blocks: skipped entirely unless the flag and 48318 // hasOverlay are both on, and shared by blockChildren/overlayBlock/ 48319 // overlayChildIndex instead of each re-scanning the array separately. 48320 overlayScan() { 48321 var _a, _b; 48322 const blocks = ((_a = this.settings) == null ? void 0 : _a.blocks) || []; 48323 if (!this.overlayFeatureEnabled || !((_b = this.settings) == null ? void 0 : _b.hasOverlay)) { 48324 return { 48325 visibleBlocks: blocks, 48326 overlayBlock: null, 48327 overlayIndex: -1 48328 }; 48329 } 48330 const visibleBlocks = []; 48331 let overlayBlock = null; 48332 let overlayIndex = -1; 48333 blocks.forEach((block, index2) => { 48334 if (block == null ? void 0 : block.isOverlay) { 48335 overlayBlock = block; 48336 overlayIndex = index2; 48337 } else { 48338 visibleBlocks.push(block); 48339 } 48340 }); 48341 return { visibleBlocks, overlayBlock, overlayIndex }; 48342 }, 48343 blockChildren() { 48344 return this.overlayScan.visibleBlocks; 48345 }, 48346 overlayBlock() { 48347 return this.overlayScan.overlayBlock; 48348 }, 48349 overlayChildIndex() { 48350 return this.overlayScan.overlayIndex; 48351 }, 48352 hasOverlay() { 48353 return !!this.overlayBlock; 48354 }, 48355 isEditingOverlay() { 48356 var _a; 48357 return this.isEditable && this.hasOverlay && (((_a = this.settings) == null ? void 0 : _a.overlayEditView) || "overlay") === "overlay"; 48358 }, 48359 showOverlayLayer() { 48360 return this.hasOverlay && (!this.isEditable || this.isEditingOverlay); 48361 }, 48362 overlayAnimation() { 48363 var _a; 48364 return oneOf( 48365 (_a = this.settings) == null ? void 0 : _a.overlayAnimation, 48366 OVERLAY_ANIMATIONS, 48367 "fade" 48368 ); 48369 }, 48370 overlayBodyClasses() { 48371 var _a; 48372 if (!this.hasOverlay || this.isEditable) { 48373 return []; 48374 } 48375 const classes = [ 48376 "block__body--has-overlay", 48377 `block__body--overlay-${this.overlayAnimation}` 48378 ]; 48379 if ((_a = this.settings) == null ? void 0 : _a.overlayVariableHeight) { 48380 classes.push("block__body--overlay-variable-height"); 48381 } 48382 return classes; 48383 }, 48384 slidePages() { 48385 let chunkSize = this.isContainerMobile ? 1 : 3; 48386 if (this.blockVariantLayout === "carousel" && !this.isSlim) { 48387 chunkSize = 1; 48388 } 48389 const pages = []; 48390 for (let i = 0; i < this.blockChildren.length; i += chunkSize) { 48391 const chunk = this.blockChildren.slice(i, i + chunkSize); 48392 pages.push({ id: chunk[0].id }); 48393 } 48394 return pages; 48395 }, 48396 blockChildrenCount() { 48397 return this.blockChildren.length; 48398 }, 48399 blockId() { 48400 return this.settings.id; 48401 }, 48402 blockVariantLayout() { 48403 var _a, _b; 48404 return ((_b = (_a = this.settings) == null ? void 0 : _a.variants) == null ? void 0 : _b.layout) || "rows"; 48405 }, 48406 isSlim() { 48407 var _a, _b; 48408 this.handleResizeMainSection(); 48409 return ((_a = this.settings) == null ? void 0 : _a.variants) && ((_b = this.settings) == null ? void 0 : _b.variants["child-width"]) === "slim"; 48410 }, 48411 carouselHeight() { 48412 var _a; 48413 return { 48414 height: (_a = this.settings) == null ? void 0 : _a.height 48415 }; 48416 }, 48417 blockSectionMainStyles() { 48418 if (this.hasSlideControls) { 48419 return this.mainSectionStyles; 48420 } 48421 return null; 48422 }, 48423 nestedLevelNext() { 48424 return this.nestedLevel + 1; 48425 }, 48426 isHorizontal() { 48427 return [ 48428 "columns", 48429 "grid", 48430 "carousel", 48431 "tabbed", 48432 "toggle", 48433 "carousel-hero" 48434 ].indexOf(this.blockVariantLayout) >= 0; 48435 }, 48436 /* 48437 todo the childBlockComponent property is only useful for the builder 48438 so it should be separated from this block's logic 48439 */ 48440 childBlockComponent() { 48441 if (this.isEditable) { 48442 return "ForgeControlBlock"; 48443 } 48444 return "CoreBlock"; 48445 }, 48446 hasPageControls() { 48447 return ["carousel", "tabbed", "toggle", "carousel-hero"].indexOf( 48448 this.blockVariantLayout 48449 ) >= 0; 48450 },
48451 hasSlideControls() { 48452 return ["carousel", "carousel-hero"].indexOf( 48453 this.blockVariantLayout 48454 ) >= 0; 48455 }, 48456 displayCarouselArrows() { 48457 return this.settings.showArrows || this.settings.showArrows === void 0; 48458 }, 48459 hasAccordionControls() { 48460 return this.settings.hasAccordion; 48461 }, 48462 hasToggleControls() { 48463 return ["toggle"].indexOf(this.blockVariantLayout) >= 0; 48464 }, 48465 showTabs() { 48466 return this.isShowingContents && this.hasPageControls && !this.hasSlideControls && !this.hasToggleControls; 48467 }, 48468 enableCarouselMode() { 48469 return this.settings.enableCarouselMode; 48470 }, 48471 autoSwipeMode() { 48472 return this.intervalSwipeTime; 48473 }, 48474 intervalSwipeTime() { 48475 return this.settings.intervalSwipeTime; 48476 }, 48477 introText() { 48478 var _a; 48479 if (this.blockVariantLayout === "carousel" && ((_a = this.settings) == null ? void 0 : _a["intro-text-show"])) { 48480 return this.settings["intro-text"]; 48481 } 48482 return ""; 48483 }, 48484 containerDataTestId() { 48485 return this.showSlide ? "slider-container" : null; 48486 }, 48487 isContainerMobile() { 48488 if (this.isBuilderMobile) { 48489 return true; 48490 } 48491 return this.isMobile; 48492 }, 48493 showSlide() { 48494 void this.isContainerMobile; 48495 return this.isShowingContents && this.hasPageControls && this.hasSlideControls && this.blockChildrenCount * this.blockChildrenWidth() > 100 && this.isCarouselModeEnabled(); 48496 }, 48497 visibleBlockChildren() { 48498 if (this.blockVariantLayout.includes("carousel")) { 48499 if (this.isSlim && !this.isContainerMobile) { 48500 return this.blockChildren.slice( 48501 this.activeChildIndex, 48502 this.activeChildIndex + 3 48503 ); 48504 } else { 48505 const carouselChildren = this.blockChildren[this.activeChildIndex]; 48506 if (carouselChildren) 48507 return [this.blockChildren[this.activeChildIndex]]; 48508 } 48509 } 48510 return this.blockChildren; 48511 } 48512 }, 48513 watch: { 48514 blockChildren: function(newBlocksChildren, oldBlocksChildren) { 48515 this.handleResizeMainSection(); 48516 this.handleBlockChildrenChange( 48517 newBlocksChildren, 48518 oldBlocksChildren 48519 ); 48520 }, 48521 enableCarouselMode() { 48522 if (!this.enableCarouselMode) { 48523 if (this.carouselInterval) { 48524 clearInterval(this.carouselInterval); 48525 } 48526 return; 48527 } 48528 if (this.autoSwipeMode) { 48529 this.generateSwipeInterval(); 48530 } 48531 }, 48532 autoSwipeMode: function() { 48533 if (!this.autoSwipeMode) { 48534 clearInterval(this.carouselInterval); 48535 return; 48536 } 48537 this.generateSwipeInterval(); 48538 }, 48539 intervalSwipeTime: function() { 48540 if (this.carouselInterval) { 48541 clearInterval(this.carouselInterval); 48542 } 48543 this.generateSwipeInterval(); 48544 }, 48545 hasAccordionControls(value) { 48546 if (!value) this.isShowingContents = true; 48547 }, 48548 isSlim: { 48549 handler() { 48550 this.handleResizeMainSection(); 48551 }, 48552 immediate: true 48553 } 48554 }, 48555 mounted() { 48556 if (this.hasSlideControls) { 48557 const swipeArea = this.$el; 48558 let touchstartX = 0; 48559 let touchstartY = 0; 48560 let touchendX = 0; 48561 let touchendY = 0; 48562 const threshold = 50; 48563 swipeArea.addEventListener( 48564 "touchstart", 48565 (event) => { 48566 touchstartX = event.changedTouches[0].screenX; 48567 touchstartY = event.changedTouches[0].screenY; 48568 }, 48569 false 48570 ); 48571 swipeArea.addEventListener( 48572 "touchend", 48573 (event) => { 48574 touchendX = event.changedTouches[0].screenX; 48575 touchendY = event.changedTouches[0].screenY; 48576 const deltaX = touchendX - touchstartX; 48577 const deltaY = touchendY - touchstartY; 48578 if (Math.abs(deltaX) > threshold && Math.abs(deltaY) < threshold) { 48579 this.handleSwipe(deltaX > 0 ? "right" : "left"); 48580 } 48581 }, 48582 false 48583 ); 48584 } 48585 if (this.isCarouselModeEnabled() && this.autoSwipeMode && !this.isEditable) { 48586 this.generateSwipeInterval(); 48587 } 48588 window.addEventListener("resize", this.handleResizeMainSection); 48589 this.handleResizeMainSection(); 48590 }, 48591 created() { 48592 if (this.hasPageControls) { 48593 if (this.blockChildren.length) { 48594 this.setActiveChild(this.blockChildren[0].id); 48595 } 48596 } 48597 if (this.hasSlideControls) ; 48598 if (this.hasAccordionControls) { 48599 this.isShowingContents = this.settings.defaultOpen || false; 48600 } 48601 }, 48602 beforeUnmount() { 48603 window.removeEventListener("resize", this.handleResizeMainSection); 48604 if (this.carouselInterval) { 48605 clearInterval(this.carouselInterval); 48606 } 48607 }, 48608 methods: { 48609 toggleContents() { 48610 this.isShowingContents = !this.isShowingContents; 48611 }, 48612 setActiveChild(childId) { 48613 this.activeChildId = childId; 48614 this.currentSlideIndex = this.blockChildren.findIndex( 48615 (childSettings) => childSettings.id === childId 48616 ); 48617 this.handleResizeMarginLeft(); 48618 }, 48619 resetActiveChild() { 48620 var _a; 48621 this.setActiveChild((_a = this.blockChildren[0]) == null ? void 0 : _a.id); 48622 this.handleResizeMarginLeft(); 48623 }, 48624 showNextSlide() { 48625 let currentSlideIndex = this.slidePages.findIndex((slide) => { 48626 return slide.id === this.activeChildId; 48627 }); 48628 currentSlideIndex++; 48629 if (currentSlideIndex >= this.slidePages.length) { 48630 currentSlideIndex = 0; 48631 } 48632 if (this.slidePages[currentSlideIndex]) { 48633 this.setActiveChild(this.slidePages[currentSlideIndex].id); 48634 } 48635 }, 48636 showPreviousSlide() { 48637 let currentSlideIndex = this.slidePages.findIndex((slide) => { 48638 return slide.id === this.activeChildId; 48639 }); 48640 currentSlideIndex--; 48641 if (currentSlideIndex < 0) { 48642 currentSlideIndex = this.slidePages.length - 1; 48643 } 48644 if (this.slidePages[currentSlideIndex]) { 48645 this.setActiveChild(this.slidePages[currentSlideIndex].id); 48646 } 48647 }, 48648 handleSwipe(direction) { 48649 if (direction === "right") { 48650 this.showPreviousSlide(); 48651 } else { 48652 this.showNextSlide(); 48653 } 48654 }, 48655 handleResizeMainSection() { 48656 if (this.blockVariantLayout.includes("carousel")) return; 48657 this.mainSectionStyles.width = `${this.blockChildrenCount * this.blockChildrenWidth()}%`; 48658 if (this.currentSlideIndex === 0) { 48659 this.mainSectionStyles.maxWidth = "100%"; 48660 } else { 48661 this.mainSectionStyles.maxWidth = "unset"; 48662 } 48663 this.handleResizeMarginLeft(); 48664 if (!this.showSlide) { 48665 this.resetActiveChild(); 48666 } 48667 }, 48668 handleResizeMarginLeft() { 48669 if (this.blockVariantLayout.includes("carousel")) return; 48670 this.mainSectionStyles.marginLeft = `${-this.activeChildIndex * this.blockChildrenWidth()}%`; 48671 }, 48672 blockChildrenWidth() { 48673 if (this.isSlim) { 48674 { 48675 if (window.matchMedia("(min-width: 992px)").matches && this.blockVariantLayout != "carousel-hero") { 48676 return 33.3; 48677 } 48678 } 48679 } 48680 return 100; 48681 }, 48682 isCarouselModeEnabled() { 48683 if (this.blockVariantLayout !== "carousel-hero") { 48684 return true; 48685 } 48686 return !!this.enableCarouselMode; 48687 }, 48688 generateSwipeInterval() { 48689 clearInterval(this.carouselInterval); 48690 if (!this.intervalSwipeTime || this.intervalSwipeTime <= 0) { 48691 return; 48692 } 48693 this.carouselInterval = setInterval( 48694 (function() { 48695 this.handleSwipe("left"); 48696 }).bind(this), 48697 this.intervalSwipeTime * 1e3 > 1e3 ? this.intervalSwipeTime * 1e3 : 3e3 48698 ); 48699 }, 48700 handleBlockChildrenChange(newBlocksChildren, oldBlocksChildren) { 48701 if (this.showSlide) { 48702 if ((newBlocksChildren == null ? void 0 : newBlocksChildren.length) > (oldBlocksChildren == null ? void 0 : oldBlocksChildren.length)) { 48703 const oldBlocksChildrenIds = oldBlocksChildren.map( 48704 (o) => o.id 48705 ); 48706 const newBlock = newBlocksChildren.find( 48707 (nb) => !oldBlocksChildrenIds.includes(nb.id) 48708 ); 48709 if (newBlock) this.setActiveChild(newBlock.id); 48710 } else if ((newBlocksChildren == null ? void 0 : newBlocksChildren.length) < (oldBlocksChildren == null ? void 0 : oldBlocksChildren.length)) { 48711 this.resetActiveChild(); 48712 } 48713 } 48714 }, 48715 shouldHiddeChildBlock(childIndex) { 48716 if (this.blockVariantLayout === "carousel") { 48717 if (this.isSlim) { 48718 return !(childIndex === this.activeChildIndex || childIndex === this.activeChildIndex + 1 || childIndex === this.activeChildIndex + 2); 48719 } else { 48720 return childIndex !== this.activeChildIndex; 48721 } 48722 } 48723 return false;
48724 } 48725 } 48726}; 48727const _hoisted_1$3g = ["data-testid"]; 48728const _hoisted_2$36 = ["innerHTML"]; 48729const _hoisted_3$5 = { 48730 key: 4, 48731 class: "block__control block__control_nav" 48732}; 48733const _hoisted_4$3 = ["aria-label", "onClick", "onKeyup"]; 48734const _hoisted_5$3 = { 48735 key: 5, 48736 class: "block__overlay", 48737 "data-testid": "container-overlay" 48738}; 48739function _sfc_render$2$(_ctx, _cache, $props, $setup, $data, $options) { 48740 const _component_CoreBlockContainerToggle = __nuxt_component_0; 48741 const _component_CoreBlockContainerTabs = __nuxt_component_1; 48742 const _component_CoreBlockContainerAccordion = _sfc_main$3h; 48743 const _component_CoreIcon = __nuxt_component_1$7; 48744 return openBlock(), createElementBlock("div", { 48745 class: normalizeClass(["block__body", $options.overlayBodyClasses]), 48746 "data-testid": $options.containerDataTestId 48747 }, [ 48748 $options.introText ? (openBlock(), createElementBlock("span", { 48749 key: 0, 48750 innerHTML: $options.introText 48751 }, null, 8, _hoisted_2$36)) : createCommentVNode("", true), 48752 $options.hasToggleControls ? (openBlock(), createBlock(_component_CoreBlockContainerToggle, { 48753 key: 1, 48754 "active-id": $data.activeChildId || "", 48755 settings: $props.settings, 48756 blocks: $options.blockChildren, 48757 onSetItem: $options.setActiveChild 48758 }, null, 8, ["active-id", "settings", "blocks", "onSetItem"])) : createCommentVNode("", true), 48759 $options.showTabs ? (openBlock(), createBlock(_component_CoreBlockContainerTabs, { 48760 key: 2, 48761 settings: $props.settings, 48762 blocks: $options.blockChildren, 48763 "active-id": $data.activeChildId || "", 48764 onSetItem: $options.setActiveChild 48765 }, null, 8, ["settings", "blocks", "active-id", "onSetItem"])) : createCommentVNode("", true), 48766 $options.hasAccordionControls ? (openBlock(), createBlock(_component_CoreBlockContainerAccordion, { 48767 key: 3, 48768 settings: $props.settings, 48769 "is-showing-contents": $data.isShowingContents, 48770 onToggleContents: $options.toggleContents 48771 }, null, 8, ["settings", "is-showing-contents", "onToggleContents"])) : createCommentVNode("", true), 48772 withDirectives(createBaseVNode("div", { 48773 class: normalizeClass({ 48774 block__section_main: true 48775 }), 48776 style: normalizeStyle([$options.carouselHeight, $options.blockSectionMainStyles]) 48777 }, [ 48778 (openBlock(true), createElementBlock(Fragment, null, renderList($options.visibleBlockChildren, (childSettings, childIndex) => { 48779 return openBlock(), createBlock(resolveDynamicComponent($options.childBlockComponent), { 48780 key: childSettings.id, 48781 settings: childSettings, 48782 index: childIndex, 48783 "nested-level": $options.nestedLevelNext, 48784 "is-editable": $props.isEditable, 48785 "is-first-child": !childIndex, 48786 "is-last-child": childIndex >= $options.visibleBlockChildren.length - 1, 48787 "parent-is-horizontal": $options.isHorizontal, 48788 class: normalizeClass({ 48789 complianceRemovedBlock: childSettings._removeBlock, 48790 "block__child--active": $data.activeChildId === childSettings.id 48791 }), 48792 "is-builder-mobile": $props.isBuilderMobile, 48793 "is-first-page-level-block": $setup.isFirstPageLevelBlockFor(childSettings), 48794 "is-first-page-level-position": $setup.isFirstPageLevelPositionFor(childSettings), 48795 onImageLoaded: $options.handleResizeMainSection 48796 }, null, 40, ["settings", "index", "nested-level", "is-editable", "is-first-child", "is-last-child", "parent-is-horizontal", "class", "is-builder-mobile", "is-first-page-level-block", "is-first-page-level-position", "onImageLoaded"]); 48797 }), 128)) 48798 ], 4), [ 48799 [vShow, $data.isShowingContents && !$options.isEditingOverlay] 48800 ]), 48801 $options.showSlide ? (openBlock(), createElementBlock("ul", _hoisted_3$5, [ 48802 $data.isShowingContents && $options.hasSlideControls && $options.displayCarouselArrows ? (openBlock(), createElementBlock("div", { 48803 key: 0, 48804 class: "block__control block__control_slide", 48805 tabindex: "0", 48806 "aria-label": "Carousel Backward", 48807 role: "button", 48808 onClick: _cache[0] || (_cache[0] = (...args) => $options.showPreviousSlide && $options.showPreviousSlide(...args)), 48809 onKeyup: _cache[1] || (_cache[1] = withKeys((...args) => $options.showPreviousSlide && $options.showPreviousSlide(...args), ["enter"])) 48810 }, [ 48811 createVNode(_component_CoreIcon, { 48812 style: { "height": "48px", "width": "48px" }, 48813 icon: "carousel-backward", 48814 settings: { alt: "Previous slide" } 48815 }) 48816 ], 32)) : createCommentVNode("", true), 48817 (openBlock(true), createElementBlock(Fragment, null, renderList($options.slidePages, (slide, slideIndex) => { 48818 return openBlock(), createElementBlock("li", { 48819 key: slideIndex, 48820 "data-testid": "slider-item", 48821 class: normalizeClass({ 48822 block__control_nav_item: true, 48823 "block__control_nav_item--active": $data.activeChildId === slide.id 48824 }), 48825 tabindex: "0", 48826 "aria-label": `${slideIndex + 1} Carousel Slide`, 48827 role: "button", 48828 onClick: ($event) => $options.setActiveChild(slide.id), 48829 onKeyup: withKeys(($event) => $options.setActiveChild(slide.id), ["enter"]) 48830 }, toDisplayString(slideIndex + 1), 43, _hoisted_4$3); 48831 }), 128)), 48832 $data.isShowingContents && $options.hasSlideControls && $options.displayCarouselArrows ? (openBlock(), createElementBlock("div", { 48833 key: 1, 48834 class: "block__control block__control_slide", 48835 tabindex: "0", 48836 "aria-label": "Carousel Forward", 48837 role: "button", 48838 onClick: _cache[2] || (_cache[2] = (...args) => $options.showNextSlide && $options.showNextSlide(...args)), 48839 onKeyup: _cache[3] || (_cache[3] = withKeys((...args) => $options.showNextSlide && $options.showNextSlide(...args), ["enter"])) 48840 }, [ 48841 createVNode(_component_CoreIcon, { 48842 style: { "height": "48px", "width": "48px" }, 48843 icon: "carousel-forward", 48844 settings: { alt: "Next slide" } 48845 }) 48846 ], 32)) : createCommentVNode("", true) 48847 ])) : createCommentVNode("", true), 48848 $options.showOverlayLayer ? (openBlock(), createElementBlock("div", _hoisted_5$3, [ 48849 (openBlock(), createBlock(resolveDynamicComponent($options.childBlockComponent), { 48850 settings: $options.overlayBlock, 48851 index: $options.overlayChildIndex, 48852 "nested-level": $options.nestedLevelNext, 48853 "is-editable": $props.isEditable, 48854 "is-first-child": true, 48855 "is-last-child": true, 48856 "is-builder-mobile": $props.isBuilderMobile, 48857 "is-first-page-level-block": $setup.shouldDeferToChildren, 48858 "is-first-page-level-position": $props.isFirstPageLevelPosition 48859 }, null, 8, ["settings", "index", "nested-level", "is-editable", "is-builder-mobile", "is-first-page-level-block", "is-first-page-level-position"])) 48860 ])) : createCommentVNode("", true) 48861 ], 10, _hoisted_1$3g); 48862} 48863const CoreBlockContainer = /* @__PURE__ */ _export_sfc(_sfc_main$3g, [["render", _sfc_render$2$]]); 48864const CoreBlockContainer$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 48865 __proto__: null, 48866 default: CoreBlockContainer 48867}, Symbol.toStringTag, { value: "Module" })); 48868const _sfc_main$3f = { 48869 props: { 48870 settings: { 48871 type: Object, 48872 required: false, 48873 default: () => { 48874 } 48875 } 48876 }, 48877 computed: { 48878 alt() { 48879 var _a, _b; 48880 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 48881 }, 48882 id() { 48883 var _a, _b; 48884 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 48885 } 48886 } 48887}; 48888const _hoisted_1$3f = ["aria-labelledby", "aria-label"]; 48889const _hoisted_2$35 = ["id"]; 48890function _sfc_render$2_(_ctx, _cache, $props, $setup, $data, $options) { 48891 return openBlock(), createElementBlock("svg", { 48892 width: "24", 48893 height: "24",
48894 viewBox: "0 0 24 24", 48895 fill: "none", 48896 xmlns: "http://www.w3.org/2000/svg", 48897 role: "img", 48898 "aria-labelledby": `icon-title-${$options.id}`, 48899 "aria-label": $options.alt 48900 }, [ 48901 createBaseVNode("title", { 48902 id: `icon-title-${$options.id}` 48903 }, toDisplayString($options.alt), 9, _hoisted_2$35), 48904 _cache[0] || (_cache[0] = createBaseVNode("path", { 48905 d: "M19 8.98865H5C3.9 8.98865 3 9.88865 3 10.9886V19.9886C3 21.0886 3.9 21.9886 5 21.9886H19C20.1 21.9886 21 21.0886 21 19.9886V10.9886C21 9.88865 20.1 8.98865 19 8.98865ZM19 19.9886H5V10.9886H19V19.9886Z", 48906 fill: "CurrentColor" 48907 }, null, -1)), 48908 _cache[1] || (_cache[1] = createBaseVNode("path", { 48909 d: "M19 2.0116H5C3.9 2.0116 3 2.9116 3 4.0116V6.0116C3 7.1116 3.9 8.0116 5 8.0116H19C20.1 8.0116 21 7.1116 21 6.0116V4.0116C21 2.9116 20.1 2.0116 19 2.0116ZM19 6.0116H5V4.0116H19V6.0116Z", 48910 fill: "CurrentColor" 48911 }, null, -1)) 48912 ], 8, _hoisted_1$3f); 48913} 48914const CoreIconAccordion = /* @__PURE__ */ _export_sfc(_sfc_main$3f, [["render", _sfc_render$2_]]); 48915const CoreIconAccordion$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 48916 __proto__: null, 48917 default: CoreIconAccordion 48918}, Symbol.toStringTag, { value: "Module" })); 48919const _sfc_main$3e = { 48920 props: { 48921 settings: { 48922 type: Object, 48923 required: false 48924 } 48925 }, 48926 computed: { 48927 alt() { 48928 var _a, _b; 48929 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 48930 }, 48931 id() { 48932 var _a, _b; 48933 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 48934 } 48935 } 48936}; 48937const _hoisted_1$3e = ["aria-labelledby", "aria-label"]; 48938const _hoisted_2$34 = ["id"]; 48939function _sfc_render$2Z(_ctx, _cache, $props, $setup, $data, $options) { 48940 return openBlock(), createElementBlock("svg", { 48941 width: "24", 48942 height: "24", 48943 viewBox: "0 0 24 24", 48944 fill: "none", 48945 xmlns: "http://www.w3.org/2000/svg", 48946 role: "img", 48947 "aria-labelledby": `icon-title-${$options.id}`, 48948 "aria-label": $options.alt 48949 }, [ 48950 createBaseVNode("title", { 48951 id: `icon-title-${$options.id}` 48952 }, toDisplayString($options.alt), 9, _hoisted_2$34), 48953 _cache[0] || (_cache[0] = createBaseVNode("path", { 48954 d: "M20 21V19C20 17.9391 19.5786 16.9217 18.8284 16.1716C18.0783 15.4214 17.0609 15 16 15H8C6.93913 15 5.92172 15.4214 5.17157 16.1716C4.42143 16.9217 4 17.9391 4 19V21", 48955 stroke: "currentColor", 48956 "stroke-width": "2", 48957 "stroke-linecap": "round", 48958 "stroke-linejoin": "round" 48959 }, null, -1)), 48960 _cache[1] || (_cache[1] = createBaseVNode("path", { 48961 d: "M12 11C14.2091 11 16 9.20913 16 7C16 4.79086 14.2091 3 12 3C9.79086 3 8 4.79086 8 7C8 9.20913 9.79086 11 12 11Z", 48962 stroke: "currentColor", 48963 "stroke-width": "2", 48964 "stroke-linecap": "round", 48965 "stroke-linejoin": "round" 48966 }, null, -1)) 48967 ], 8, _hoisted_1$3e); 48968} 48969const CoreIconAccount = /* @__PURE__ */ _export_sfc(_sfc_main$3e, [["render", _sfc_render$2Z]]); 48970const CoreIconAccount$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 48971 __proto__: null, 48972 default: CoreIconAccount 48973}, Symbol.toStringTag, { value: "Module" })); 48974const _hoisted_1$3d = ["aria-labelledby", "aria-label"]; 48975const _hoisted_2$33 = ["id"]; 48976const _sfc_main$3d = { 48977 __name: "CoreIconActions", 48978 props: { 48979 settings: { 48980 type: Object, 48981 required: false 48982 } 48983 }, 48984 setup(__props) { 48985 const props = __props; 48986 const alt = computed(() => { 48987 var _a, _b; 48988 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "Actions"; 48989 }); 48990 const id = computed(() => { 48991 var _a, _b; 48992 return ((_a = props.settings) == null ? void 0 : _a.id) || ((_b = props.settings) == null ? void 0 : _b.icon); 48993 }); 48994 return (_ctx, _cache) => { 48995 return openBlock(), createElementBlock("svg", { 48996 width: "22", 48997 height: "20",
48998 viewBox: "0 0 22 20", 48999 fill: "none", 49000 xmlns: "http://www.w3.org/2000/svg", 49001 "aria-labelledby": `icon-title-${unref(id)}`, 49002 "aria-label": unref(alt) 49003 }, [ 49004 createBaseVNode("title", { 49005 id: `icon-title-${unref(id)}` 49006 }, toDisplayString(unref(alt)), 9, _hoisted_2$33), 49007 _cache[0] || (_cache[0] = createBaseVNode("path", { 49008 d: "M21 10H17L14 19L8 1L5 10H1", 49009 stroke: "currentColor", 49010 "stroke-width": "2", 49011 "stroke-linecap": "round", 49012 "stroke-linejoin": "round" 49013 }, null, -1)) 49014 ], 8, _hoisted_1$3d); 49015 }; 49016 } 49017}; 49018const CoreIconActions = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49019 __proto__: null, 49020 default: _sfc_main$3d 49021}, Symbol.toStringTag, { value: "Module" })); 49022const _hoisted_1$3c = { 49023 width: "24", 49024 height: "24", 49025 viewBox: "0 0 24 24", 49026 fill: "none", 49027 xmlns: "http://www.w3.org/2000/svg" 49028}; 49029const _sfc_main$3c = { 49030 __name: "CoreIconActivity", 49031 props: { 49032 settings: { 49033 type: Object, 49034 required: false 49035 } 49036 }, 49037 setup(__props) { 49038 const props = __props; 49039 const alt = computed(() => { 49040 var _a, _b; 49041 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "Activity & Usage"; 49042 }); 49043 return (_ctx, _cache) => { 49044 return openBlock(), createElementBlock("svg", _hoisted_1$3c, [ 49045 createBaseVNode("title", null, toDisplayString(unref(alt)), 1), 49046 _cache[0] || (_cache[0] = createBaseVNode("path", { 49047 d: "M22 12H18L15 21L9 3L6 12H2", 49048 stroke: "currentColor", 49049 "stroke-width": "2", 49050 "stroke-linecap": "round", 49051 "stroke-linejoin": "round" 49052 }, null, -1)) 49053 ]); 49054 }; 49055 } 49056}; 49057const CoreIconActivity = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49058 __proto__: null, 49059 default: _sfc_main$3c 49060}, Symbol.toStringTag, { value: "Module" })); 49061const _sfc_main$3b = { 49062 props: { 49063 settings: { 49064 type: Object, 49065 required: false 49066 } 49067 }, 49068 computed: { 49069 alt() { 49070 var _a, _b; 49071 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49072 }, 49073 id() { 49074 var _a, _b; 49075 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49076 } 49077 } 49078}; 49079const _hoisted_1$3b = ["aria-labelledby", "aria-label"]; 49080const _hoisted_2$32 = ["id"]; 49081function _sfc_render$2Y(_ctx, _cache, $props, $setup, $data, $options) { 49082 return openBlock(), createElementBlock("svg", { 49083 width: "24", 49084 height: "24", 49085 viewBox: "0 0 24 24", 49086 fill: "none", 49087 xmlns: "http://www.w3.org/2000/svg", 49088 role: "img", 49089 "aria-labelledby": `icon-title-${$options.id}`, 49090 "aria-label": $options.alt 49091 }, [ 49092 createBaseVNode("title", { 49093 id: `icon-title-${$options.id}` 49094 }, toDisplayString($options.alt), 9, _hoisted_2$32), 49095 _cache[0] || (_cache[0] = createBaseVNode("path", { 49096 "fill-rule": "evenodd", 49097 "clip-rule": "evenodd", 49098 d: "M20 13.2921V18H4V6H9.17L11.014 7.844C11.0047 7.70276 11 7.56026 11 7.41667C11 6.69086 11.1205 5.9932 11.3426 5.3426L10 4H4C2.9 4 2.01 4.9 2.01 6L2 18C2 19.1 2.9 20 4 20H20C21.1 20 22 19.1 22 18V11.9074C21.4315 12.4875 20.7537 12.9602 20 13.2921Z", 49099 fill: "currentColor" 49100 }, null, -1)), 49101 _cache[1] || (_cache[1] = createBaseVNode("path", { 49102 d: "M17.4167 12C19.948 12 22 9.94801 22 7.41671C22 4.8854 19.948 2.83337 17.4167 2.83337C14.8854 2.83337 12.8333 4.8854 12.8333 7.41671C12.8333 9.94801 14.8854 12 17.4167 12Z", 49103 stroke: "currentColor", 49104 "stroke-width": "1.27907", 49105 "stroke-linecap": "round", 49106 "stroke-linejoin": "round" 49107 }, null, -1)), 49108 _cache[2] || (_cache[2] = createBaseVNode("path", { 49109 d: "M17.4166 5.58337V9.25004", 49110 stroke: "currentColor", 49111 "stroke-width": "0.916667", 49112 "stroke-linecap": "round", 49113 "stroke-linejoin": "round" 49114 }, null, -1)), 49115 _cache[3] || (_cache[3] = createBaseVNode("path", { 49116 d: "M15.5833 7.41687H19.25", 49117 stroke: "currentColor", 49118 "stroke-width": "0.916667", 49119 "stroke-linecap": "round", 49120 "stroke-linejoin": "round" 49121 }, null, -1)) 49122 ], 8, _hoisted_1$3b); 49123} 49124const CoreIconAddFolder = /* @__PURE__ */ _export_sfc(_sfc_main$3b, [["render", _sfc_render$2Y]]); 49125const CoreIconAddFolder$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49126 __proto__: null, 49127 default: CoreIconAddFolder 49128}, Symbol.toStringTag, { value: "Module" })); 49129const _sfc_main$3a = { 49130 props: { 49131 settings: { 49132 type: Object, 49133 required: false 49134 } 49135 }, 49136 computed: { 49137 alt() { 49138 var _a, _b; 49139 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49140 }, 49141 id() { 49142 var _a, _b; 49143 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49144 } 49145 } 49146}; 49147const _hoisted_1$3a = ["aria-labelledby", "aria-label"]; 49148const _hoisted_2$31 = ["id"]; 49149function _sfc_render$2X(_ctx, _cache, $props, $setup, $data, $options) { 49150 return openBlock(), createElementBlock("svg", { 49151 width: "24", 49152 height: "24",
49153 viewBox: "0 0 24 24", 49154 fill: "none", 49155 xmlns: "http://www.w3.org/2000/svg", 49156 role: "img", 49157 "aria-labelledby": `icon-title-${$options.id}`, 49158 "aria-label": $options.alt 49159 }, [ 49160 createBaseVNode("title", { 49161 id: `icon-title-${$options.id}` 49162 }, toDisplayString($options.alt), 9, _hoisted_2$31), 49163 _cache[0] || (_cache[0] = createBaseVNode("path", { 49164 d: "M17.4167 12C19.948 12 22 9.94801 22 7.41671C22 4.8854 19.948 2.83337 17.4167 2.83337C14.8854 2.83337 12.8333 4.8854 12.8333 7.41671C12.8333 9.94801 14.8854 12 17.4167 12Z", 49165 stroke: "currentColor", 49166 "stroke-width": "1.27907", 49167 "stroke-linecap": "round", 49168 "stroke-linejoin": "round" 49169 }, null, -1)), 49170 _cache[1] || (_cache[1] = createBaseVNode("path", { 49171 d: "M17.4166 5.58337V9.25004", 49172 stroke: "currentColor", 49173 "stroke-width": "0.916667", 49174 "stroke-linecap": "round", 49175 "stroke-linejoin": "round" 49176 }, null, -1)), 49177 _cache[2] || (_cache[2] = createBaseVNode("path", { 49178 d: "M15.5833 7.41687H19.25", 49179 stroke: "currentColor", 49180 "stroke-width": "0.916667", 49181 "stroke-linecap": "round", 49182 "stroke-linejoin": "round" 49183 }, null, -1)), 49184 _cache[3] || (_cache[3] = createBaseVNode("path", { 49185 "fill-rule": "evenodd", 49186 "clip-rule": "evenodd", 49187 d: "M18 13.8072V19H7V5H11.4707C11.7747 4.25276 12.2154 3.57573 12.7619 3H7C5.9 3 5.01 3.9 5.01 5L5 19C5 20.1 5.89 21 6.99 21H18C19.1 21 20 20.1 20 19V13.2921C19.3787 13.5657 18.7058 13.7436 18 13.8072Z", 49188 fill: "currentColor" 49189 }, null, -1)) 49190 ], 8, _hoisted_1$3a); 49191} 49192const CoreIconAddPage = /* @__PURE__ */ _export_sfc(_sfc_main$3a, [["render", _sfc_render$2X]]); 49193const CoreIconAddPage$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49194 __proto__: null, 49195 default: CoreIconAddPage 49196}, Symbol.toStringTag, { value: "Module" })); 49197const _sfc_main$39 = { 49198 props: { 49199 settings: { 49200 type: Object, 49201 required: false 49202 } 49203 }, 49204 computed: { 49205 alt() { 49206 var _a, _b; 49207 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49208 }, 49209 id() { 49210 var _a, _b; 49211 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49212 } 49213 } 49214}; 49215const _hoisted_1$39 = ["aria-labelledby", "aria-label"]; 49216const _hoisted_2$30 = ["id"]; 49217function _sfc_render$2W(_ctx, _cache, $props, $setup, $data, $options) { 49218 return openBlock(), createElementBlock("svg", { 49219 width: "24", 49220 height: "24", 49221 viewBox: "0 0 24 24", 49222 fill: "none", 49223 xmlns: "http://www.w3.org/2000/svg", 49224 role: "img", 49225 "aria-labelledby": `icon-title-${$options.id}`, 49226 "aria-label": $options.alt 49227 }, [ 49228 createBaseVNode("title", { 49229 id: `icon-title-${$options.id}` 49230 }, toDisplayString($options.alt), 9, _hoisted_2$30), 49231 _cache[0] || (_cache[0] = createBaseVNode("path", { 49232 d: "M7.005 6H17.005L11.995 12.3L7.005 6ZM4.255 5.61C6.275 8.2 10.005 13 10.005 13V19C10.005 19.55 10.455 20 11.005 20H13.005C13.555 20 14.005 19.55 14.005 19V13C14.005 13 17.725 8.2 19.745 5.61C20.255 4.95 19.785 4 18.955 4H5.045C4.215 4 3.745 4.95 4.255 5.61Z", 49233 fill: "currentColor" 49234 }, null, -1)) 49235 ], 8, _hoisted_1$39); 49236} 49237const CoreIconAdvancedSearch = /* @__PURE__ */ _export_sfc(_sfc_main$39, [["render", _sfc_render$2W]]); 49238const CoreIconAdvancedSearch$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49239 __proto__: null, 49240 default: CoreIconAdvancedSearch 49241}, Symbol.toStringTag, { value: "Module" })); 49242const _sfc_main$38 = { 49243 props: { 49244 settings: { 49245 type: Object, 49246 required: false 49247 } 49248 }, 49249 computed: { 49250 alt() { 49251 var _a, _b; 49252 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49253 }, 49254 id() { 49255 var _a, _b; 49256 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49257 } 49258 } 49259}; 49260const _hoisted_1$38 = ["aria-labelledby", "aria-label"]; 49261const _hoisted_2$2$ = ["id"]; 49262function _sfc_render$2V(_ctx, _cache, $props, $setup, $data, $options) { 49263 return openBlock(), createElementBlock("svg", { 49264 width: "24", 49265 height: "24",
49266 viewBox: "0 0 24 24", 49267 fill: "none", 49268 xmlns: "http://www.w3.org/2000/svg", 49269 role: "img", 49270 "aria-labelledby": `icon-title-${$options.id}`, 49271 "aria-label": $options.alt 49272 }, [ 49273 createBaseVNode("title", { 49274 id: `icon-title-${$options.id}` 49275 }, toDisplayString($options.alt), 9, _hoisted_2$2$), 49276 _cache[0] || (_cache[0] = createBaseVNode("path", { 49277 d: "M11 2H13V7H21V10H13V14H18V17H13V22H11V17H6V14H11V10H3V7H11V2Z", 49278 fill: "currentColor" 49279 }, null, -1)) 49280 ], 8, _hoisted_1$38); 49281} 49282const CoreIconAlignCenter = /* @__PURE__ */ _export_sfc(_sfc_main$38, [["render", _sfc_render$2V]]); 49283const CoreIconAlignCenter$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49284 __proto__: null, 49285 default: CoreIconAlignCenter 49286}, Symbol.toStringTag, { value: "Module" })); 49287const _sfc_main$37 = { 49288 props: { 49289 settings: { 49290 type: Object, 49291 required: false 49292 } 49293 }, 49294 computed: { 49295 alt() { 49296 var _a, _b; 49297 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49298 }, 49299 id() { 49300 var _a, _b; 49301 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49302 } 49303 } 49304}; 49305const _hoisted_1$37 = ["aria-labelledby", "aria-label"]; 49306const _hoisted_2$2_ = ["id"]; 49307function _sfc_render$2U(_ctx, _cache, $props, $setup, $data, $options) { 49308 return openBlock(), createElementBlock("svg", { 49309 width: "24", 49310 height: "24", 49311 viewBox: "0 0 24 24", 49312 fill: "none", 49313 xmlns: "http://www.w3.org/2000/svg", 49314 role: "img", 49315 "aria-labelledby": `icon-title-${$options.id}`, 49316 "aria-label": $options.alt 49317 }, [ 49318 createBaseVNode("title", { 49319 id: `icon-title-${$options.id}` 49320 }, toDisplayString($options.alt), 9, _hoisted_2$2_), 49321 _cache[0] || (_cache[0] = createBaseVNode("path", { 49322 d: "M4 22H2V2H4V22ZM22 7H6V10H22V7ZM16 14H6V17H16V14Z", 49323 fill: "currentColor" 49324 }, null, -1)) 49325 ], 8, _hoisted_1$37); 49326} 49327const CoreIconAlignLeft = /* @__PURE__ */ _export_sfc(_sfc_main$37, [["render", _sfc_render$2U]]); 49328const CoreIconAlignLeft$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49329 __proto__: null, 49330 default: CoreIconAlignLeft 49331}, Symbol.toStringTag, { value: "Module" })); 49332const _sfc_main$36 = { 49333 props: { 49334 settings: { 49335 type: Object, 49336 required: false 49337 } 49338 }, 49339 computed: { 49340 alt() { 49341 var _a, _b; 49342 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49343 }, 49344 id() { 49345 var _a, _b; 49346 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49347 } 49348 } 49349}; 49350const _hoisted_1$36 = ["aria-labelledby", "aria-label"]; 49351const _hoisted_2$2Z = ["id"]; 49352function _sfc_render$2T(_ctx, _cache, $props, $setup, $data, $options) { 49353 return openBlock(), createElementBlock("svg", { 49354 width: "24", 49355 height: "24", 49356 viewBox: "0 0 24 24", 49357 fill: "none", 49358 xmlns: "http://www.w3.org/2000/svg", 49359 role: "img", 49360 "aria-labelledby": `icon-title-${$options.id}`, 49361 "aria-label": $options.alt 49362 }, [ 49363 createBaseVNode("title", { 49364 id: `icon-title-${$options.id}` 49365 }, toDisplayString($options.alt), 9, _hoisted_2$2Z), 49366 _cache[0] || (_cache[0] = createBaseVNode("path", { 49367 d: "M20 2H22V22H20V2ZM2 10H18V7H2V10ZM8 17H18V14H8V17Z", 49368 fill: "currentColor" 49369 }, null, -1)) 49370 ], 8, _hoisted_1$36); 49371} 49372const CoreIconAlignRight = /* @__PURE__ */ _export_sfc(_sfc_main$36, [["render", _sfc_render$2T]]); 49373const CoreIconAlignRight$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49374 __proto__: null, 49375 default: CoreIconAlignRight 49376}, Symbol.toStringTag, { value: "Module" })); 49377const _sfc_main$35 = { 49378 props: { 49379 settings: { 49380 type: Object, 49381 required: false 49382 } 49383 }, 49384 computed: { 49385 alt() { 49386 var _a, _b; 49387 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49388 }, 49389 id() { 49390 var _a, _b; 49391 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49392 } 49393 } 49394}; 49395const _hoisted_1$35 = ["aria-labelledby", "aria-label"]; 49396const _hoisted_2$2Y = ["id"]; 49397function _sfc_render$2S(_ctx, _cache, $props, $setup, $data, $options) { 49398 return openBlock(), createElementBlock("svg", { 49399 width: "18", 49400 height: "18",
49401 viewBox: "0 0 18 18", 49402 fill: "none", 49403 xmlns: "http://www.w3.org/2000/svg", 49404 role: "img", 49405 "aria-labelledby": `icon-title-${$options.id}`, 49406 "aria-label": $options.alt 49407 }, [ 49408 createBaseVNode("title", { 49409 id: `icon-title-${$options.id}` 49410 }, toDisplayString($options.alt), 9, _hoisted_2$2Y), 49411 _cache[0] || (_cache[0] = createBaseVNode("path", { 49412 d: "M16.5 16.5H1.5V15H16.5V16.5ZM7.5 1.5H5.25V13.5H7.5V1.5ZM12.75 6H10.5V13.5H12.75V6Z", 49413 fill: "currentColor" 49414 }, null, -1)) 49415 ], 8, _hoisted_1$35); 49416} 49417const CoreIconAlignVerticalBottom = /* @__PURE__ */ _export_sfc(_sfc_main$35, [["render", _sfc_render$2S]]); 49418const CoreIconAlignVerticalBottom$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49419 __proto__: null, 49420 default: CoreIconAlignVerticalBottom 49421}, Symbol.toStringTag, { value: "Module" })); 49422const _sfc_main$34 = { 49423 props: { 49424 settings: { 49425 type: Object, 49426 required: false 49427 } 49428 }, 49429 computed: { 49430 alt() { 49431 var _a, _b; 49432 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49433 }, 49434 id() { 49435 var _a, _b; 49436 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49437 } 49438 } 49439}; 49440const _hoisted_1$34 = ["aria-labelledby", "aria-label"]; 49441const _hoisted_2$2X = ["id"]; 49442function _sfc_render$2R(_ctx, _cache, $props, $setup, $data, $options) { 49443 return openBlock(), createElementBlock("svg", { 49444 width: "18", 49445 height: "18", 49446 viewBox: "0 0 18 18", 49447 fill: "none", 49448 xmlns: "http://www.w3.org/2000/svg", 49449 role: "img", 49450 "aria-labelledby": `icon-title-${$options.id}`, 49451 "aria-label": $options.alt 49452 }, [ 49453 createBaseVNode("title", { 49454 id: `icon-title-${$options.id}` 49455 }, toDisplayString($options.alt), 9, _hoisted_2$2X), 49456 _cache[0] || (_cache[0] = createBaseVNode("path", { 49457 d: "M16.5599 8.25H12.8099V4.5H10.5599V8.25H7.55994V2.25H5.30994V8.25H1.43994V9.75H5.30994V15.75H7.55994V9.75H10.5599V13.5H12.8099V9.75H16.5599V8.25Z", 49458 fill: "currentColor" 49459 }, null, -1)) 49460 ], 8, _hoisted_1$34); 49461} 49462const CoreIconAlignVerticalCenter = /* @__PURE__ */ _export_sfc(_sfc_main$34, [["render", _sfc_render$2R]]); 49463const CoreIconAlignVerticalCenter$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49464 __proto__: null, 49465 default: CoreIconAlignVerticalCenter 49466}, Symbol.toStringTag, { value: "Module" })); 49467const _sfc_main$33 = { 49468 props: { 49469 settings: { 49470 type: Object, 49471 required: false 49472 } 49473 }, 49474 computed: { 49475 alt() { 49476 var _a, _b; 49477 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49478 }, 49479 id() { 49480 var _a, _b; 49481 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49482 } 49483 } 49484}; 49485const _hoisted_1$33 = ["aria-labelledby", "aria-label"]; 49486const _hoisted_2$2W = ["id"]; 49487function _sfc_render$2Q(_ctx, _cache, $props, $setup, $data, $options) { 49488 return openBlock(), createElementBlock("svg", { 49489 width: "18", 49490 height: "18", 49491 viewBox: "0 0 18 18", 49492 fill: "none", 49493 xmlns: "http://www.w3.org/2000/svg", 49494 role: "img", 49495 "aria-labelledby": `icon-title-${$options.id}`, 49496 "aria-label": $options.alt 49497 }, [ 49498 createBaseVNode("title", { 49499 id: `icon-title-${$options.id}` 49500 }, toDisplayString($options.alt), 9, _hoisted_2$2W), 49501 _cache[0] || (_cache[0] = createBaseVNode("path", { 49502 d: "M16.5 1.5V3H1.5V1.5H16.5ZM5.25 16.5H7.5V4.5H5.25V16.5ZM10.5 12H12.75V4.5H10.5V12Z", 49503 fill: "currentColor" 49504 }, null, -1)) 49505 ], 8, _hoisted_1$33); 49506} 49507const CoreIconAlignVerticalTop = /* @__PURE__ */ _export_sfc(_sfc_main$33, [["render", _sfc_render$2Q]]); 49508const CoreIconAlignVerticalTop$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49509 __proto__: null, 49510 default: CoreIconAlignVerticalTop 49511}, Symbol.toStringTag, { value: "Module" })); 49512const _sfc_main$32 = { 49513 props: { 49514 settings: { 49515 type: Object, 49516 required: false 49517 } 49518 }, 49519 computed: { 49520 alt() { 49521 var _a, _b; 49522 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49523 }, 49524 id() { 49525 var _a, _b; 49526 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49527 } 49528 } 49529}; 49530const _hoisted_1$32 = ["aria-labelledby", "aria-label"]; 49531const _hoisted_2$2V = ["id"]; 49532function _sfc_render$2P(_ctx, _cache, $props, $setup, $data, $options) { 49533 return openBlock(), createElementBlock("svg", { 49534 width: "25", 49535 height: "25",
49536 viewBox: "0 0 25 25", 49537 fill: "none", 49538 xmlns: "http://www.w3.org/2000/svg", 49539 role: "img", 49540 "aria-labelledby": `icon-title-${$options.id}`, 49541 "aria-label": $options.alt 49542 }, [ 49543 createBaseVNode("title", { 49544 id: `icon-title-${$options.id}` 49545 }, toDisplayString($options.alt), 9, _hoisted_2$2V), 49546 _cache[0] || (_cache[0] = createBaseVNode("path", { 49547 d: "M18.498 20.0078V10.0078", 49548 stroke: "currentColor", 49549 "stroke-width": "2", 49550 "stroke-linecap": "round", 49551 "stroke-linejoin": "round" 49552 }, null, -1)), 49553 _cache[1] || (_cache[1] = createBaseVNode("path", { 49554 d: "M12.498 20.0078V4.00781", 49555 stroke: "currentColor", 49556 "stroke-width": "2", 49557 "stroke-linecap": "round", 49558 "stroke-linejoin": "round" 49559 }, null, -1)), 49560 _cache[2] || (_cache[2] = createBaseVNode("path", { 49561 d: "M6.49805 20.0078V14.0078", 49562 stroke: "currentColor", 49563 "stroke-width": "2", 49564 "stroke-linecap": "round", 49565 "stroke-linejoin": "round" 49566 }, null, -1)) 49567 ], 8, _hoisted_1$32); 49568} 49569const CoreIconAnalytics = /* @__PURE__ */ _export_sfc(_sfc_main$32, [["render", _sfc_render$2P]]); 49570const CoreIconAnalytics$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49571 __proto__: null, 49572 default: CoreIconAnalytics 49573}, Symbol.toStringTag, { value: "Module" })); 49574const _sfc_main$31 = { 49575 props: { 49576 settings: { 49577 type: Object, 49578 required: false 49579 } 49580 }, 49581 computed: { 49582 alt() { 49583 var _a, _b; 49584 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49585 }, 49586 id() { 49587 var _a, _b; 49588 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49589 } 49590 } 49591}; 49592const _hoisted_1$31 = ["aria-labelledby", "aria-label"]; 49593const _hoisted_2$2U = ["id"]; 49594function _sfc_render$2O(_ctx, _cache, $props, $setup, $data, $options) { 49595 return openBlock(), createElementBlock("svg", { 49596 width: "24", 49597 height: "24", 49598 viewBox: "0 0 24 24", 49599 fill: "none", 49600 xmlns: "http://www.w3.org/2000/svg", 49601 role: "img", 49602 "aria-labelledby": `icon-title-${$options.id}`, 49603 "aria-label": $options.alt 49604 }, [ 49605 createBaseVNode("title", { 49606 id: `icon-title-${$options.id}` 49607 }, toDisplayString($options.alt), 9, _hoisted_2$2U), 49608 _cache[0] || (_cache[0] = createBaseVNode("g", { "clip-path": "url(#clip0_840_12490)" }, [ 49609 createBaseVNode("path", { 49610 d: "M17 15L18.55 16.55C17.59 18.24 15.22 19.59 13 19.92V11H16V9H13V7.82C14.16 7.4 15 6.3 15 5C15 3.35 13.65 2 12 2C10.35 2 9 3.35 9 5C9 6.3 9.84 7.4 11 7.82V9H8V11H11V19.92C8.78 19.59 6.41 18.24 5.45 16.55L7 15L3 12V15C3 18.88 7.92 22 12 22C16.08 22 21 18.88 21 15V12L17 15ZM12 4C12.55 4 13 4.45 13 5C13 5.55 12.55 6 12 6C11.45 6 11 5.55 11 5C11 4.45 11.45 4 12 4Z", 49611 fill: "currentColor" 49612 }) 49613 ], -1)), 49614 _cache[1] || (_cache[1] = createBaseVNode("defs", null, [ 49615 createBaseVNode("clipPath", { id: "clip0_840_12490" }, [ 49616 createBaseVNode("rect", { 49617 width: "24", 49618 height: "24", 49619 fill: "white" 49620 }) 49621 ]) 49622 ], -1)) 49623 ], 8, _hoisted_1$31); 49624} 49625const CoreIconAnchorLink = /* @__PURE__ */ _export_sfc(_sfc_main$31, [["render", _sfc_render$2O]]); 49626const CoreIconAnchorLink$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49627 __proto__: null, 49628 default: CoreIconAnchorLink 49629}, Symbol.toStringTag, { value: "Module" })); 49630const _sfc_main$30 = { 49631 props: { 49632 settings: { 49633 type: Object, 49634 required: false 49635 } 49636 }, 49637 computed: { 49638 alt() { 49639 var _a, _b; 49640 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49641 }, 49642 id() { 49643 var _a, _b; 49644 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49645 } 49646 } 49647}; 49648const _hoisted_1$30 = ["aria-labelledby", "aria-label"]; 49649const _hoisted_2$2T = ["id"]; 49650function _sfc_render$2N(_ctx, _cache, $props, $setup, $data, $options) { 49651 return openBlock(), createElementBlock("svg", { 49652 width: "24", 49653 height: "24",
49654 viewBox: "0 0 24 24", 49655 fill: "none", 49656 xmlns: "http://www.w3.org/2000/svg", 49657 role: "img", 49658 "aria-labelledby": `icon-title-${$options.id}`, 49659 "aria-label": $options.alt 49660 }, [ 49661 createBaseVNode("title", { 49662 id: `icon-title-${$options.id}` 49663 }, toDisplayString($options.alt), 9, _hoisted_2$2T), 49664 _cache[0] || (_cache[0] = createBaseVNode("path", { 49665 d: "M20.54 5.23L19.15 3.55C18.88 3.21 18.47 3 18 3H6C5.53 3 5.12 3.21 4.84 3.55L3.46 5.23C3.17 5.57 3 6.02 3 6.5V19C3 20.1 3.9 21 5 21H19C20.1 21 21 20.1 21 19V6.5C21 6.02 20.83 5.57 20.54 5.23ZM6.24 5H17.76L18.57 5.97H5.44L6.24 5ZM5 19V8H19V19H5ZM13.45 10H10.55V13H8L12 17L16 13H13.45V10Z", 49666 fill: "currentColor" 49667 }, null, -1)) 49668 ], 8, _hoisted_1$30); 49669} 49670const CoreIconArchive = /* @__PURE__ */ _export_sfc(_sfc_main$30, [["render", _sfc_render$2N]]); 49671const CoreIconArchive$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49672 __proto__: null, 49673 default: CoreIconArchive 49674}, Symbol.toStringTag, { value: "Module" })); 49675const _sfc_main$2$ = { 49676 props: { 49677 settings: { 49678 type: Object, 49679 required: false 49680 } 49681 }, 49682 computed: { 49683 alt() { 49684 var _a, _b; 49685 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49686 }, 49687 id() { 49688 var _a, _b; 49689 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49690 } 49691 } 49692}; 49693const _hoisted_1$2$ = ["aria-labelledby", "aria-label"]; 49694const _hoisted_2$2S = ["id"]; 49695function _sfc_render$2M(_ctx, _cache, $props, $setup, $data, $options) { 49696 return openBlock(), createElementBlock("svg", { 49697 width: "24", 49698 height: "24", 49699 viewBox: "0 0 24 24", 49700 fill: "none", 49701 xmlns: "http://www.w3.org/2000/svg", 49702 role: "img", 49703 "aria-labelledby": `icon-title-${$options.id}`, 49704 "aria-label": $options.alt 49705 }, [ 49706 createBaseVNode("title", { 49707 id: `icon-title-${$options.id}` 49708 }, toDisplayString($options.alt), 9, _hoisted_2$2S), 49709 _cache[0] || (_cache[0] = createBaseVNode("path", { 49710 d: "M12 5V19", 49711 stroke: "currentColor", 49712 "stroke-width": "2", 49713 "stroke-linecap": "round", 49714 "stroke-linejoin": "round" 49715 }, null, -1)), 49716 _cache[1] || (_cache[1] = createBaseVNode("path", { 49717 d: "M19 12L12 19L5 12", 49718 stroke: "currentColor", 49719 "stroke-width": "2", 49720 "stroke-linecap": "round", 49721 "stroke-linejoin": "round" 49722 }, null, -1)) 49723 ], 8, _hoisted_1$2$); 49724} 49725const CoreIconArrowDown = /* @__PURE__ */ _export_sfc(_sfc_main$2$, [["render", _sfc_render$2M]]); 49726const CoreIconArrowDown$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49727 __proto__: null, 49728 default: CoreIconArrowDown 49729}, Symbol.toStringTag, { value: "Module" })); 49730const _sfc_main$2_ = { 49731 props: { 49732 settings: { 49733 type: Object, 49734 required: false 49735 } 49736 }, 49737 computed: { 49738 alt() { 49739 var _a, _b; 49740 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49741 }, 49742 id() { 49743 var _a, _b; 49744 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49745 } 49746 } 49747}; 49748const _hoisted_1$2_ = ["aria-labelledby", "aria-label"]; 49749const _hoisted_2$2R = ["id"]; 49750function _sfc_render$2L(_ctx, _cache, $props, $setup, $data, $options) { 49751 return openBlock(), createElementBlock("svg", { 49752 width: "24", 49753 height: "24", 49754 viewBox: "0 0 24 24", 49755 fill: "none", 49756 xmlns: "http://www.w3.org/2000/svg", 49757 role: "img", 49758 "aria-labelledby": `icon-title-${$options.id}`, 49759 "aria-label": $options.alt 49760 }, [ 49761 createBaseVNode("title", { 49762 id: `icon-title-${$options.id}` 49763 }, toDisplayString($options.alt), 9, _hoisted_2$2R), 49764 _cache[0] || (_cache[0] = createBaseVNode("path", { 49765 d: "M19 12H5", 49766 stroke: "currentColor", 49767 "stroke-width": "2", 49768 "stroke-linecap": "round", 49769 "stroke-linejoin": "round" 49770 }, null, -1)), 49771 _cache[1] || (_cache[1] = createBaseVNode("path", { 49772 d: "M12 19L5 12L12 5", 49773 stroke: "currentColor", 49774 "stroke-width": "2", 49775 "stroke-linecap": "round", 49776 "stroke-linejoin": "round" 49777 }, null, -1)) 49778 ], 8, _hoisted_1$2_); 49779} 49780const CoreIconArrowLeft = /* @__PURE__ */ _export_sfc(_sfc_main$2_, [["render", _sfc_render$2L]]); 49781const CoreIconArrowLeft$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49782 __proto__: null, 49783 default: CoreIconArrowLeft 49784}, Symbol.toStringTag, { value: "Module" })); 49785const _sfc_main$2Z = { 49786 props: { 49787 settings: { 49788 type: Object, 49789 required: false 49790 } 49791 }, 49792 computed: { 49793 alt() { 49794 var _a, _b; 49795 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49796 }, 49797 id() { 49798 var _a, _b; 49799 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49800 } 49801 } 49802}; 49803const _hoisted_1$2Z = ["aria-labelledby", "aria-label"]; 49804const _hoisted_2$2Q = ["id"]; 49805function _sfc_render$2K(_ctx, _cache, $props, $setup, $data, $options) { 49806 return openBlock(), createElementBlock("svg", { 49807 width: "24", 49808 height: "24",
49809 viewBox: "0 0 24 24", 49810 fill: "none", 49811 xmlns: "http://www.w3.org/2000/svg", 49812 role: "img", 49813 "aria-labelledby": `icon-title-${$options.id}`, 49814 "aria-label": $options.alt 49815 }, [ 49816 createBaseVNode("title", { 49817 id: `icon-title-${$options.id}` 49818 }, toDisplayString($options.alt), 9, _hoisted_2$2Q), 49819 _cache[0] || (_cache[0] = createBaseVNode("path", { 49820 d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", 49821 stroke: "currentColor", 49822 "stroke-width": "2", 49823 "stroke-linecap": "round", 49824 "stroke-linejoin": "round" 49825 }, null, -1)), 49826 _cache[1] || (_cache[1] = createBaseVNode("path", { 49827 d: "M12 8L8 12L12 16", 49828 stroke: "currentColor", 49829 "stroke-width": "2", 49830 "stroke-linecap": "round", 49831 "stroke-linejoin": "round" 49832 }, null, -1)), 49833 _cache[2] || (_cache[2] = createBaseVNode("path", { 49834 d: "M16 12H8", 49835 stroke: "currentColor", 49836 "stroke-width": "2", 49837 "stroke-linecap": "round", 49838 "stroke-linejoin": "round" 49839 }, null, -1)) 49840 ], 8, _hoisted_1$2Z); 49841} 49842const CoreIconArrowLeftCircle = /* @__PURE__ */ _export_sfc(_sfc_main$2Z, [["render", _sfc_render$2K]]); 49843const CoreIconArrowLeftCircle$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49844 __proto__: null, 49845 default: CoreIconArrowLeftCircle 49846}, Symbol.toStringTag, { value: "Module" })); 49847const _sfc_main$2Y = { 49848 props: { 49849 settings: { 49850 type: Object, 49851 required: false 49852 } 49853 }, 49854 computed: { 49855 alt() { 49856 var _a, _b; 49857 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49858 }, 49859 id() { 49860 var _a, _b; 49861 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49862 } 49863 } 49864}; 49865const _hoisted_1$2Y = ["aria-labelledby", "aria-label"]; 49866const _hoisted_2$2P = ["id"]; 49867function _sfc_render$2J(_ctx, _cache, $props, $setup, $data, $options) { 49868 return openBlock(), createElementBlock("svg", { 49869 width: "24", 49870 height: "24", 49871 viewBox: "0 0 24 24", 49872 fill: "none", 49873 xmlns: "http://www.w3.org/2000/svg", 49874 role: "img", 49875 "aria-labelledby": `icon-title-${$options.id}`, 49876 "aria-label": $options.alt 49877 }, [ 49878 createBaseVNode("title", { 49879 id: `icon-title-${$options.id}` 49880 }, toDisplayString($options.alt), 9, _hoisted_2$2P), 49881 _cache[0] || (_cache[0] = createBaseVNode("path", { 49882 d: "M5 12H19", 49883 stroke: "currentColor", 49884 "stroke-width": "2", 49885 "stroke-linecap": "round", 49886 "stroke-linejoin": "round" 49887 }, null, -1)), 49888 _cache[1] || (_cache[1] = createBaseVNode("path", { 49889 d: "M12 5L19 12L12 19", 49890 stroke: "currentColor", 49891 "stroke-width": "2", 49892 "stroke-linecap": "round", 49893 "stroke-linejoin": "round" 49894 }, null, -1)) 49895 ], 8, _hoisted_1$2Y); 49896} 49897const CoreIconArrowRight = /* @__PURE__ */ _export_sfc(_sfc_main$2Y, [["render", _sfc_render$2J]]); 49898const CoreIconArrowRight$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49899 __proto__: null, 49900 default: CoreIconArrowRight 49901}, Symbol.toStringTag, { value: "Module" })); 49902const _sfc_main$2X = { 49903 props: { 49904 settings: { 49905 type: Object, 49906 required: false 49907 } 49908 }, 49909 computed: { 49910 alt() { 49911 var _a, _b; 49912 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49913 }, 49914 id() { 49915 var _a, _b; 49916 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49917 } 49918 } 49919}; 49920const _hoisted_1$2X = ["aria-labelledby", "aria-label"]; 49921const _hoisted_2$2O = ["id"]; 49922function _sfc_render$2I(_ctx, _cache, $props, $setup, $data, $options) { 49923 return openBlock(), createElementBlock("svg", { 49924 width: "24", 49925 height: "24", 49926 viewBox: "0 0 24 24", 49927 fill: "none", 49928 xmlns: "http://www.w3.org/2000/svg", 49929 role: "img", 49930 "aria-labelledby": `icon-title-${$options.id}`, 49931 "aria-label": $options.alt 49932 }, [ 49933 createBaseVNode("title", { 49934 id: `icon-title-${$options.id}` 49935 }, toDisplayString($options.alt), 9, _hoisted_2$2O), 49936 _cache[0] || (_cache[0] = createBaseVNode("path", { 49937 d: "M12 19V5", 49938 stroke: "currentColor", 49939 "stroke-width": "2", 49940 "stroke-linecap": "round", 49941 "stroke-linejoin": "round" 49942 }, null, -1)), 49943 _cache[1] || (_cache[1] = createBaseVNode("path", { 49944 d: "M5 12L12 5L19 12", 49945 stroke: "currentColor", 49946 "stroke-width": "2", 49947 "stroke-linecap": "round", 49948 "stroke-linejoin": "round" 49949 }, null, -1)) 49950 ], 8, _hoisted_1$2X); 49951} 49952const CoreIconArrowUp = /* @__PURE__ */ _export_sfc(_sfc_main$2X, [["render", _sfc_render$2I]]); 49953const CoreIconArrowUp$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49954 __proto__: null, 49955 default: CoreIconArrowUp 49956}, Symbol.toStringTag, { value: "Module" })); 49957const _sfc_main$2W = { 49958 props: { 49959 settings: { 49960 type: Object, 49961 required: false 49962 } 49963 }, 49964 computed: { 49965 alt() { 49966 var _a, _b; 49967 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 49968 }, 49969 id() { 49970 var _a, _b; 49971 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 49972 } 49973 } 49974}; 49975const _hoisted_1$2W = ["aria-labelledby", "aria-label"]; 49976const _hoisted_2$2N = ["id"]; 49977function _sfc_render$2H(_ctx, _cache, $props, $setup, $data, $options) { 49978 return openBlock(), createElementBlock("svg", { 49979 width: "25", 49980 height: "25",
49981 viewBox: "0 0 25 25", 49982 fill: "none", 49983 xmlns: "http://www.w3.org/2000/svg", 49984 role: "img", 49985 "aria-labelledby": `icon-title-${$options.id}`, 49986 "aria-label": $options.alt 49987 }, [ 49988 createBaseVNode("title", { 49989 id: `icon-title-${$options.id}` 49990 }, toDisplayString($options.alt), 9, _hoisted_2$2N), 49991 _cache[0] || (_cache[0] = createStaticVNode('<g clip-path="url(#clip0_1006_14979)"><path d="M19.7917 5.20833V19.7917H5.20833V5.20833H19.7917ZM19.7917 3.125H5.20833C4.0625 3.125 3.125 4.0625 3.125 5.20833V19.7917C3.125 20.9375 4.0625 21.875 5.20833 21.875H19.7917C20.9375 21.875 21.875 20.9375 21.875 19.7917V5.20833C21.875 4.0625 20.9375 3.125 19.7917 3.125Z" fill="currentColor"></path><path d="M14.5833 17.7083H7.29167V15.625H14.5833V17.7083ZM17.7083 13.5416H7.29167V11.4583H17.7083V13.5416ZM17.7083 9.37496H7.29167V7.29163H17.7083V9.37496Z" fill="currentColor"></path></g><defs><clipPath id="clip0_1006_14979"><rect width="25" height="25" fill="white"></rect></clipPath></defs>', 2)) 49992 ], 8, _hoisted_1$2W); 49993} 49994const CoreIconArticle = /* @__PURE__ */ _export_sfc(_sfc_main$2W, [["render", _sfc_render$2H]]); 49995const CoreIconArticle$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 49996 __proto__: null, 49997 default: CoreIconArticle 49998}, Symbol.toStringTag, { value: "Module" })); 49999const _sfc_main$2V = { 50000 props: { 50001 settings: { 50002 type: Object, 50003 required: false, 50004 default: () => { 50005 } 50006 } 50007 }, 50008 computed: { 50009 alt() { 50010 var _a, _b; 50011 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 50012 }, 50013 id() { 50014 var _a, _b; 50015 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 50016 } 50017 } 50018}; 50019const _hoisted_1$2V = ["aria-labelledby", "aria-label"]; 50020const _hoisted_2$2M = ["id"]; 50021function _sfc_render$2G(_ctx, _cache, $props, $setup, $data, $options) { 50022 return openBlock(), createElementBlock("svg", { 50023 xmlns: "http://www.w3.org/2000/svg", 50024 width: "24", 50025 height: "24", 50026 viewBox: "0 0 24 24", 50027 fill: "none", 50028 role: "img", 50029 "aria-labelledby": `icon-title-${$options.id}`, 50030 "aria-label": $options.alt 50031 }, [ 50032 createBaseVNode("title", { 50033 id: `icon-title-${$options.id}` 50034 }, toDisplayString($options.alt), 9, _hoisted_2$2M), 50035 _cache[0] || (_cache[0] = createBaseVNode("path", { 50036 d: "M3 12H21", 50037 stroke: "CurrentColor", 50038 "stroke-width": "2", 50039 "stroke-linecap": "round", 50040 "stroke-linejoin": "round" 50041 }, null, -1)), 50042 _cache[1] || (_cache[1] = createBaseVNode("path", { 50043 d: "M3 6H21", 50044 stroke: "CurrentColor", 50045 "stroke-width": "2", 50046 "stroke-linecap": "round", 50047 "stroke-linejoin": "round" 50048 }, null, -1)), 50049 _cache[2] || (_cache[2] = createBaseVNode("path", { 50050 d: "M3 18H21", 50051 stroke: "CurrentColor", 50052 "stroke-width": "2", 50053 "stroke-linecap": "round", 50054 "stroke-linejoin": "round" 50055 }, null, -1)) 50056 ], 8, _hoisted_1$2V); 50057} 50058const CoreIconBars = /* @__PURE__ */ _export_sfc(_sfc_main$2V, [["render", _sfc_render$2G]]); 50059const CoreIconBars$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50060 __proto__: null, 50061 default: CoreIconBars 50062}, Symbol.toStringTag, { value: "Module" })); 50063const _sfc_main$2U = { 50064 props: { 50065 settings: { 50066 type: Object, 50067 required: false 50068 } 50069 }, 50070 computed: { 50071 alt() { 50072 var _a, _b; 50073 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 50074 }, 50075 id() { 50076 var _a, _b; 50077 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 50078 } 50079 } 50080}; 50081const _hoisted_1$2U = ["aria-labelledby", "aria-label"]; 50082const _hoisted_2$2L = ["id"]; 50083function _sfc_render$2F(_ctx, _cache, $props, $setup, $data, $options) { 50084 return openBlock(), createElementBlock("svg", { 50085 width: "24", 50086 height: "24", 50087 viewBox: "0 0 24 24", 50088 fill: "none", 50089 xmlns: "http://www.w3.org/2000/svg", 50090 role: "img", 50091 "aria-labelledby": `icon-title-${$options.id}`, 50092 "aria-label": $options.alt 50093 }, [ 50094 createBaseVNode("title", { 50095 id: `icon-title-${$options.id}` 50096 }, toDisplayString($options.alt), 9, _hoisted_2$2L), 50097 _cache[0] || (_cache[0] = createBaseVNode("path", { 50098 d: "M12 21.75C13.1 21.75 14 20.85 14 19.75H10C10 20.85 10.9 21.75 12 21.75ZM18 15.75V10.75C18 7.68 16.37 5.11 13.5 4.43V3.75C13.5 2.92 12.83 2.25 12 2.25C11.17 2.25 10.5 2.92 10.5 3.75V4.43C7.64 5.11 6 7.67 6 10.75V15.75L4 17.75V18.7
500985H20V17.75L18 15.75ZM16 16.75H8V10.75C8 8.27 9.51 6.25 12 6.25C14.49 6.25 16 8.27 16 10.75V16.75Z", 50099 fill: "black" 50100 }, null, -1)) 50101 ], 8, _hoisted_1$2U); 50102} 50103const CoreIconBell = /* @__PURE__ */ _export_sfc(_sfc_main$2U, [["render", _sfc_render$2F]]); 50104const CoreIconBell$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50105 __proto__: null, 50106 default: CoreIconBell 50107}, Symbol.toStringTag, { value: "Module" })); 50108const _sfc_main$2T = { 50109 props: { 50110 settings: { 50111 type: Object, 50112 required: false 50113 } 50114 }, 50115 computed: { 50116 alt() { 50117 var _a, _b; 50118 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 50119 }, 50120 id() { 50121 var _a, _b; 50122 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 50123 } 50124 } 50125}; 50126const _hoisted_1$2T = ["aria-labelledby", "aria-label"]; 50127const _hoisted_2$2K = ["id"]; 50128function _sfc_render$2E(_ctx, _cache, $props, $setup, $data, $options) { 50129 return openBlock(), createElementBlock("svg", { 50130 width: "24", 50131 height: "24", 50132 viewBox: "0 0 24 24", 50133 fill: "none", 50134 xmlns: "http://www.w3.org/2000/svg", 50135 role: "img", 50136 "aria-labelledby": `icon-title-${$options.id}`, 50137 "aria-label": $options.alt 50138 }, [ 50139 createBaseVNode("title", { 50140 id: `icon-title-${$options.id}` 50141 }, toDisplayString($options.alt), 9, _hoisted_2$2K), 50142 _cache[0] || (_cache[0] = createBaseVNode("path", { 50143 d: "M18.36 9L18.96 12H5.04L5.64 9H18.36ZM20 4H4V6H20V4ZM20 7H4L3 12V14H4V20H14V14H18V20H20V14H21V12L20 7ZM6 18V14H12V18H6Z", 50144 fill: "black" 50145 }, null, -1)) 50146 ], 8, _hoisted_1$2T); 50147} 50148const CoreIconBilling = /* @__PURE__ */ _export_sfc(_sfc_main$2T, [["render", _sfc_render$2E]]); 50149const CoreIconBilling$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50150 __proto__: null, 50151 default: CoreIconBilling 50152}, Symbol.toStringTag, { value: "Module" })); 50153const _hoisted_1$2S = ["aria-labelledby", "aria-label"]; 50154const _hoisted_2$2J = ["id"]; 50155const _sfc_main$2S = { 50156 __name: "CoreIconBlock", 50157 props: { 50158 settings: { 50159 type: Object, 50160 required: false 50161 } 50162 }, 50163 setup(__props) { 50164 const props = __props; 50165 const alt = computed(() => { 50166 var _a, _b; 50167 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "Actions"; 50168 }); 50169 const id = computed(() => { 50170 var _a, _b; 50171 return ((_a = props.settings) == null ? void 0 : _a.id) || ((_b = props.settings) == null ? void 0 : _b.icon); 50172 }); 50173 return (_ctx, _cache) => { 50174 return openBlock(), createElementBlock("svg", { 50175 width: "24", 50176 height: "24", 50177 xmlns: "http://www.w3.org/2000/svg",
50178 viewBox: "0 0 24 24", 50179 "aria-labelledby": `icon-title-${unref(id)}`, 50180 "aria-label": unref(alt) 50181 }, [ 50182 createBaseVNode("title", { 50183 id: `icon-title-${unref(id)}` 50184 }, toDisplayString(unref(alt)), 9, _hoisted_2$2J), 50185 _cache[0] || (_cache[0] = createBaseVNode("path", { d: "M5 3C3.9 3 3 3.9 3 5S2.1 7 1 7V9C2.1 9 3 9.9 3 11S3.9 13 5 13H7V11H5V10C5 8.9 4.1 8 3 8C4.1 8 5 7.1 5 6V5H7V3M11 3C12.1 3 13 3.9 13 5S13.9 7 15 7V9C13.9 9 13 9.9 13 11S12.1 13 11 13H9V11H11V10C11 8.9 11.9 8 13 8C11.9 8 11 7.1 11 6V5H9V3H11M22 6V18C22 19.11 21.11 20 20 20H4C2.9 20 2 19.11 2 18V15H4V18H20V6H17.03V4H20C21.11 4 22 4.89 22 6Z" }, null, -1)) 50186 ], 8, _hoisted_1$2S); 50187 }; 50188 } 50189}; 50190const CoreIconBlock = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50191 __proto__: null, 50192 default: _sfc_main$2S 50193}, Symbol.toStringTag, { value: "Module" })); 50194const _sfc_main$2R = { 50195 props: { 50196 settings: { 50197 type: Object, 50198 required: false 50199 } 50200 }, 50201 computed: { 50202 alt() { 50203 var _a, _b; 50204 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 50205 }, 50206 id() { 50207 var _a, _b; 50208 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 50209 } 50210 } 50211}; 50212const _hoisted_1$2R = ["aria-labelledby", "aria-label"]; 50213const _hoisted_2$2I = ["id"]; 50214function _sfc_render$2D(_ctx, _cache, $props, $setup, $data, $options) { 50215 return openBlock(), createElementBlock("svg", { 50216 xmlns: "http://www.w3.org/2000/svg", 50217 width: "24", 50218 height: "25", 50219 viewBox: "0 0 24 25", 50220 fill: "none", 50221 role: "img", 50222 "aria-labelledby": `icon-title-${$options.id}`, 50223 "aria-label": $options.alt 50224 }, [ 50225 createBaseVNode("title", { 50226 id: `icon-title-${$options.id}` 50227 }, toDisplayString($options.alt), 9, _hoisted_2$2I), 50228 _cache[0] || (_cache[0] = createBaseVNode("path", { 50229 d: "M21 3.17773H3C1.9 3.17773 1 4.07773 1 5.17773V19.1777C1 20.2777 1.9 21.1777 3 21.1777H21C22.1 21.1777 23 20.2777 23 19.1777V5.17773C23 4.07773 22.1 3.17773 21 3.17773ZM21 19.1777H3V5.17773H21V19.1777ZM5 15.1777H19V18.1777H5V15.1777Z", 50230 fill: "currentColor" 50231 }, null, -1)) 50232 ], 8, _hoisted_1$2R); 50233} 50234const CoreIconBottomBanner = /* @__PURE__ */ _export_sfc(_sfc_main$2R, [["render", _sfc_render$2D]]); 50235const CoreIconBottomBanner$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50236 __proto__: null, 50237 default: CoreIconBottomBanner 50238}, Symbol.toStringTag, { value: "Module" })); 50239const _sfc_main$2Q = { 50240 props: { 50241 settings: { 50242 type: Object, 50243 required: false 50244 } 50245 }, 50246 computed: { 50247 alt() { 50248 var _a, _b; 50249 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 50250 }, 50251 id() { 50252 var _a, _b; 50253 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 50254 } 50255 } 50256}; 50257const _hoisted_1$2Q = ["aria-labelledby", "aria-label"]; 50258const _hoisted_2$2H = ["id"]; 50259function _sfc_render$2C(_ctx, _cache, $props, $setup, $data, $options) { 50260 return openBlock(), createElementBlock("svg", { 50261 width: "24", 50262 height: "24", 50263 viewBox: "0 0 24 24", 50264 fill: "none", 50265 xmlns: "http://www.w3.org/2000/svg", 50266 role: "img", 50267 "aria-labelledby": `icon-title-${$options.id}`, 50268 "aria-label": $options.alt 50269 }, [ 50270 createBaseVNode("title", { 50271 id: `icon-title-${$options.id}` 50272 }, toDisplayString($options.alt), 9, _hoisted_2$2H), 50273 _cache[0] || (_cache[0] = createBaseVNode("path", { 50274 d: "M7 14.0025C5.34 14.0025 4 15.3425 4 17.0025C4 18.3125 2.84 19.0025 2 19.0025C2.92 20.2225 4.49 21.0025 6 21.0025C8.21 21.0025 10 19.2125 10 17.0025C10 15.3425 8.66 14.0025 7 14.0025ZM20.71 4.6325L19.37 3.2925C18.98 2.9025 18.35 2.9025 17.96 3.2925L9 12.2525L11.75 15.0025L20.71 6.0425C21.1 5.6525 21.1 5.0225 20.71 4.6325Z", 50275 fill: "currentColor" 50276 }, null, -1)) 50277 ], 8, _hoisted_1$2Q); 50278} 50279const CoreIconBrush = /* @__PURE__ */ _export_sfc(_sfc_main$2Q, [["render", _sfc_render$2C]]); 50280const CoreIconBrush$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50281 __proto__: null, 50282 default: CoreIconBrush 50283}, Symbol.toStringTag, { value: "Module" })); 50284const _sfc_main$2P = { 50285 props: { 50286 settings: { 50287 type: Object, 50288 required: false 50289 } 50290 }, 50291 computed: { 50292 alt() { 50293 var _a, _b; 50294 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 50295 }, 50296 id() { 50297 var _a, _b; 50298 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 50299 } 50300 } 50301}; 50302const _hoisted_1$2P = ["aria-labelledby", "aria-label"];
50303const _hoisted_2$2G = ["id"]; 50304function _sfc_render$2B(_ctx, _cache, $props, $setup, $data, $options) { 50305 return openBlock(), createElementBlock("svg", { 50306 width: "24", 50307 height: "24", 50308 viewBox: "0 0 24 24", 50309 fill: "none", 50310 xmlns: "http://www.w3.org/2000/svg", 50311 role: "img", 50312 "aria-labelledby": `icon-title-${$options.id}`, 50313 "aria-label": $options.alt 50314 }, [ 50315 createBaseVNode("title", { 50316 id: `icon-title-${$options.id}` 50317 }, toDisplayString($options.alt), 9, _hoisted_2$2G), 50318 _cache[0] || (_cache[0] = createBaseVNode("path", { 50319 d: "M19 13H5C3.9 13 3 13.9 3 15V19C3 20.1 3.9 21 5 21H19C20.1 21 21 20.1 21 19V15C21 13.9 20.1 13 19 13ZM19 19H5V15H19V19Z", 50320 fill: "currentColor" 50321 }, null, -1)), 50322 _cache[1] || (_cache[1] = createBaseVNode("path", { 50323 d: "M19 3H5C3.9 3 3 3.9 3 5V9C3 10.1 3.9 11 5 11H19C20.1 11 21 10.1 21 9V5C21 3.9 20.1 3 19 3ZM19 9H5V5H19V9Z", 50324 fill: "currentColor" 50325 }, null, -1)) 50326 ], 8, _hoisted_1$2P); 50327} 50328const CoreIconButton = /* @__PURE__ */ _export_sfc(_sfc_main$2P, [["render", _sfc_render$2B]]); 50329const CoreIconButton$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50330 __proto__: null, 50331 default: CoreIconButton 50332}, Symbol.toStringTag, { value: "Module" })); 50333const _sfc_main$2O = { 50334 props: { 50335 settings: { 50336 type: Object, 50337 required: false 50338 } 50339 }, 50340 computed: { 50341 alt() { 50342 var _a, _b; 50343 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 50344 }, 50345 id() { 50346 var _a, _b; 50347 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 50348 } 50349 } 50350}; 50351const _hoisted_1$2O = ["aria-labelledby", "aria-label"]; 50352const _hoisted_2$2F = ["id"]; 50353function _sfc_render$2A(_ctx, _cache, $props, $setup, $data, $options) { 50354 return openBlock(), createElementBlock("svg", { 50355 width: "24", 50356 height: "24", 50357 viewBox: "0 0 24 24", 50358 fill: "none", 50359 xmlns: "http://www.w3.org/2000/svg", 50360 role: "img", 50361 "aria-labelledby": `icon-title-${$options.id}`, 50362 "aria-label": $options.alt 50363 }, [ 50364 createBaseVNode("title", { 50365 id: `icon-title-${$options.id}` 50366 }, toDisplayString($options.alt), 9, _hoisted_2$2F), 50367 _cache[0] || (_cache[0] = createBaseVNode("path", { 50368 d: "M19 4H5C3.89543 4 3 4.89543 3 6V20C3 21.1046 3.89543 22 5 22H19C20.1046 22 21 21.1046 21 20V6C21 4.89543 20.1046 4 19 4Z", 50369 stroke: "currentColor", 50370 "stroke-width": "2", 50371 "stroke-linecap": "round", 50372 "stroke-linejoin": "round" 50373 }, null, -1)), 50374 _cache[1] || (_cache[1] = createBaseVNode("path", { 50375 d: "M16 2V6", 50376 stroke: "currentColor", 50377 "stroke-width": "2", 50378 "stroke-linecap": "round", 50379 "stroke-linejoin": "round" 50380 }, null, -1)), 50381 _cache[2] || (_cache[2] = createBaseVNode("path", { 50382 d: "M8 2V6", 50383 stroke: "currentColor", 50384 "stroke-width": "2", 50385 "stroke-linecap": "round", 50386 "stroke-linejoin": "round" 50387 }, null, -1)), 50388 _cache[3] || (_cache[3] = createBaseVNode("path", { 50389 d: "M3 10H21", 50390 stroke: "currentColor", 50391 "stroke-width": "2", 50392 "stroke-linecap": "round", 50393 "stroke-linejoin": "round" 50394 }, null, -1)) 50395 ], 8, _hoisted_1$2O); 50396} 50397const CoreIconCalendar = /* @__PURE__ */ _export_sfc(_sfc_main$2O, [["render", _sfc_render$2A]]); 50398const CoreIconCalendar$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50399 __proto__: null, 50400 default: CoreIconCalendar 50401}, Symbol.toStringTag, { value: "Module" })); 50402const _hoisted_1$2N = ["aria-labelledby", "aria-label"]; 50403const _hoisted_2$2E = ["id"]; 50404const _sfc_main$2N = { 50405 __name: "CoreIconCalendly", 50406 props: { 50407 settings: { 50408 type: Object, 50409 required: false 50410 } 50411 }, 50412 setup(__props) { 50413 const props = __props; 50414 const alt = computed(() => { 50415 var _a, _b; 50416 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "Actions"; 50417 }); 50418 const id = computed(() => { 50419 var _a, _b; 50420 return ((_a = props.settings) == null ? void 0 : _a.id) || ((_b = props.settings) == null ? void 0 : _b.icon); 50421 }); 50422 return (_ctx, _cache) => { 50423 return openBlock(), createElementBlock("svg", { 50424 width: "18", 50425 height: "18", 50426 fill: "none", 50427 xmlns: "http://www.w3.org/2000/svg", 50428 style: { "vertical-align": "middle" }, 50429 "aria-labelledby": `icon-title-${unref(id)}`, 50430 "aria-label": unref(alt) 50431 }, [ 50432 createBaseVNode("title", { 50433 id: `icon-title-${unref(id)}` 50434 }, toDisplayString(unref(alt)), 9, _hoisted_2$2E), 50435 _cache[0] || (_cache[0] = createBaseVNode("path", { 50436 d: "M9.663 6.24h-.75c-1.38 0-2.288.985-2.288 2.247v1.025c0 1.262.907 2.247 2.288 2.247h.75c2.011 0 1.853-2.05 4.89-2.05.289 0 .576.026.858.079a4.517 4.517 0 0 0 0-1.577 4.65 4.65 0 0 1-.857.079c-3.039 0-2.88-2.05-4.891-2.05Z", 50437 fill: "currentColor" 50438 }, null, -1)), 50439 _cache[1] || (_cache[1] = createBaseVNode("path", {
50440 d: "M17.149 10.528a4.232 4.232 0 0 0-1.74-.744v.015c-.055.3-.14.595-.253.878.52.08 1.013.282 1.44.59 0 .004-.004.01-.005.014-1.264 4.077-5.608 6.362-9.702 5.103-4.093-1.26-6.387-5.587-5.123-9.664C3.03 2.643 7.374.358 11.467 1.617a7.74 7.74 0 0 1 5.124 5.103c0 .005.002.01.003.014-.426.308-.92.51-1.44.59.115.284.199.578.254.879v.014a4.244 4.244 0 0 0 1.74-.745c.496-.366.4-.779.325-1.023C16.057 1.877 11.19-.685 6.6.724 2.011 2.134-.562 6.98.853 11.552c1.416 4.57 6.283 7.134 10.872 5.724a8.681 8.681 0 0 0 5.748-5.724c.075-.245.172-.658-.324-1.024Z", 50441 fill: "currentColor" 50442 }, null, -1)), 50443 _cache[2] || (_cache[2] = createBaseVNode("path", { 50444 "fill-rule": "evenodd", 50445 "clip-rule": "evenodd", 50446 d: "m15.176 7.344-.004-.012a4.442 4.442 0 0 0-.277-.569l-.88-1.525a4.524 4.524 0 0 0-3.918-2.261H8.334c-1.616 0-3.11.861-3.917 2.26l-.881 1.526a4.525 4.525 0 0 0 0 4.524l.88 1.526a4.524 4.524 0 0 0 3.918 2.26h1.763c1.615 0 3.109-.861 3.917-2.26l.881-1.524a4.5 4.5 0 0 0 .277-.57l.005-.01a3.635 3.635 0 0 0-.602-.05c-1.311 0-1.806.438-2.375.94l-.008.006-.001.002c-.553.489-1.24 1.096-2.489 1.096h-.747c-.905 0-1.726-.328-2.314-.923-.575-.582-.891-1.377-.891-2.242V8.516c0-.423.075-.83.22-1.202.151-.391.378-.745.672-1.043.587-.595 1.41-.923 2.314-.923h.747c1.25 0 1.938.609 2.489 1.098l.009.008c.57.501 1.065.938 2.375.938a3.818 3.818 0 0 0 .6-.049v.001Z", 50447 fill: "currentColor" 50448 }, null, -1)) 50449 ], 8, _hoisted_1$2N); 50450 }; 50451 } 50452}; 50453const CoreIconCalendly = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50454 __proto__: null, 50455 default: _sfc_main$2N 50456}, Symbol.toStringTag, { value: "Module" })); 50457const _sfc_main$2M = { 50458 name: "CoreIconCamera", 50459 props: { 50460 width: { 50461 type: Number, 50462 default: 28 50463 }, 50464 height: { 50465 type: Number, 50466 default: 27 50467 }, 50468 settings: { 50469 type: Object, 50470 required: false 50471 } 50472 }, 50473 computed: { 50474 alt() { 50475 var _a, _b; 50476 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 50477 }, 50478 id() { 50479 var _a, _b; 50480 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 50481 } 50482 } 50483}; 50484const _hoisted_1$2M = ["width", "height", "aria-labelledby", "aria-label"]; 50485const _hoisted_2$2D = ["id"]; 50486const _hoisted_3$4 = ["width", "height"]; 50487function _sfc_render$2z(_ctx, _cache, $props, $setup, $data, $options) { 50488 return openBlock(), createElementBlock("svg", { 50489 width: $props.width, 50490 height: $props.height, 50491 viewBox: "0 0 25 24", 50492 fill: "none", 50493 xmlns: "http://www.w3.org/2000/svg", 50494 "aria-labelledby": `icon-title-${$options.id}`, 50495 "aria-label": $options.alt 50496 }, [ 50497 createBaseVNode("title", { 50498 id: `icon-title-${$options.id}` 50499 }, toDisplayString($options.alt), 9, _hoisted_2$2D), 50500 createBaseVNode("rect", { 50501 width: $props.width, 50502 height: $props.height, 50503 fill: "currentColor" 50504 }, null, 8, _hoisted_3$4), 50505 _cache[0] || (_cache[0] = createBaseVNode("path", { 50506 d: "M21 17.4092C21 17.819 20.8372 18.2121 20.5474 18.502C20.2575 18.7918 19.8645 18.9546 19.4546 18.9546H5.54549C5.1356 18.9546 4.74251 18.7918 4.45268 18.502C4.16285 18.2121 4.00003 17.819 4.00003 17.4092V8.90917C4.00003 8.49929 4.16285 8.1062 4.45268 7.81637C4.74251 7.52654 5.1356 7.36371 5.54549 7.36371H8.63639L10.1818 5.04553H14.8182L16.3637 7.36371H19.4546C19.8645 7.36371 20.2575 7.52654 20.5474 7.81637C20.8372 8.1062 21 8.49929 21 8.90917V17.4092Z", 50507 stroke: "white", 50508 "stroke-width": "1.83", 50509 "stroke-linecap": "round", 50510 "stroke-linejoin": "round" 50511 }, null, -1)), 50512 _cache[1] || (_cache[1] = createBaseVNode("path", { 50513 d: "M12.5004 15.8637C14.2075 15.8637 15.5913 14.4799 15.5913 12.7728C15.5913 11.0657 14.2075 9.68188 12.5004 9.68188C10.7933 9.68188 9.4095 11.0657 9.4095 12.7728C9.4095 14.4799 10.7933 15.8637 12.5004 15.8637Z", 50514 stroke: "white", 50515 "stroke-width": "1.83", 50516 "stroke-linecap": "round", 50517 "stroke-linejoin": "round" 50518 }, null, -1)) 50519 ], 8, _hoisted_1$2M); 50520} 50521const CoreIconCamera = /* @__PURE__ */ _export_sfc(_sfc_main$2M, [["render", _sfc_render$2z], ["__scopeId", "data-v-87116f10"]]); 50522const CoreIconCamera$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50523 __proto__: null, 50524 default: CoreIconCamera 50525}, Symbol.toStringTag, { value: "Module" })); 50526const _hoisted_1$2L = ["aria-labelledby", "aria-label"]; 50527const _hoisted_2$2C = ["id"]; 50528const _sfc_main$2L = { 50529 __name: "CoreIconCardAccount", 50530 props: { 50531 settings: { 50532 type: Object, 50533 required: false 50534 } 50535 }, 50536 setup(__props) { 50537 const props = __props; 50538 const alt = computed(() => { 50539 var _a, _b; 50540 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "Actions"; 50541 }); 50542 const id = computed(() => { 50543 var _a, _b; 50544 return ((_a = props.settings) == null ? void 0 : _a.id) || ((_b = props.settings) == null ? void 0 : _b.icon); 50545 }); 50546 return (_ctx, _cache) => { 50547 return openBlock(), createElementBlock("svg", { 50548 xmlns: "http://www.w3.org/2000/svg", 50549 width: "24", 50550 height: "25",
50551 viewBox: "0 0 24 25", 50552 fill: "none", 50553 role: "img", 50554 "aria-labelledby": `icon-title-${unref(id)}`, 50555 "aria-label": unref(alt) 50556 }, [ 50557 createBaseVNode("title", { 50558 id: `icon-title-${unref(id)}` 50559 }, toDisplayString(unref(alt)), 9, _hoisted_2$2C), 50560 _cache[0] || (_cache[0] = createBaseVNode("path", { 50561 d: "M21.8182 3.2002H2.18182C0.981818 3.2002 0 4.1002 0 5.2002V19.2002C0 20.3002 0.981818 21.2002 2.18182 21.2002H21.8182C23.0182 21.2002 24 20.3002 24 19.2002V5.2002C24 4.1002 23.0182 3.2002 21.8182 3.2002ZM22.3636 19.7002H1.63636V12.2002V4.7002H22.3636V19.7002Z", 50562 fill: "currentColor" 50563 }, null, -1)), 50564 _cache[1] || (_cache[1] = createBaseVNode("path", { 50565 d: "M7.82651 11.7002C9.11782 11.7002 10.1743 10.6877 10.1743 9.4502C10.1743 8.2127 9.11782 7.2002 7.82651 7.2002C6.53521 7.2002 5.47869 8.2127 5.47869 9.4502C5.47869 10.6877 6.53521 11.7002 7.82651 11.7002ZM7.82651 8.7002C8.25695 8.7002 8.60912 9.0377 8.60912 9.4502C8.60912 9.8627 8.25695 10.2002 7.82651 10.2002C7.39608 10.2002 7.0439 9.8627 7.0439 9.4502C7.0439 9.0377 7.39608 8.7002 7.82651 8.7002ZM12.5222 15.1427C12.5222 13.2677 9.41521 12.4577 7.82651 12.4577C6.23782 12.4577 3.13086 13.2677 3.13086 15.1427V16.2002H7.82651H12.5222V15.1427ZM5.07173 14.7002C5.65086 14.3252 6.80912 13.9502 7.82651 13.9502C8.8439 13.9502 9.99434 14.3177 10.5813 14.7002H5.07173Z", 50566 fill: "currentColor" 50567 }, null, -1)), 50568 _cache[2] || (_cache[2] = createBaseVNode("rect", { 50569 x: "14", 50570 y: "9.16113", 50571 width: "7", 50572 height: "1.5", 50573 fill: "currentColor" 50574 }, null, -1)), 50575 _cache[3] || (_cache[3] = createBaseVNode("rect", { 50576 x: "14", 50577 y: "13.1611", 50578 width: "7", 50579 height: "1.5", 50580 fill: "currentColor" 50581 }, null, -1)) 50582 ], 8, _hoisted_1$2L); 50583 }; 50584 } 50585}; 50586const CoreIconCardAccount = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50587 __proto__: null, 50588 default: _sfc_main$2L 50589}, Symbol.toStringTag, { value: "Module" })); 50590const _sfc_main$2K = { 50591 props: { 50592 settings: { 50593 type: Object, 50594 required: false 50595 } 50596 }, 50597 computed: { 50598 alt() { 50599 var _a, _b; 50600 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 50601 }, 50602 id() { 50603 var _a, _b; 50604 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 50605 } 50606 } 50607}; 50608const _hoisted_1$2K = ["aria-labelledby", "aria-label"]; 50609const _hoisted_2$2B = ["id"]; 50610function _sfc_render$2y(_ctx, _cache, $props, $setup, $data, $options) { 50611 return openBlock(), createElementBlock("svg", { 50612 width: "24", 50613 height: "24", 50614 viewBox: "0 0 24 24", 50615 fill: "none", 50616 xmlns: "http://www.w3.org/2000/svg", 50617 role: "img", 50618 "aria-labelledby": `icon-title-${$options.id}`, 50619 "aria-label": $options.alt 50620 }, [ 50621 createBaseVNode("title", { 50622 id: `icon-title-${$options.id}` 50623 }, toDisplayString($options.alt), 9, _hoisted_2$2B), 50624 _cache[0] || (_cache[0] = createStaticVNode('<g clip-path="url(#clip0_529_2866)"><rect x="7" y="8" width="10" height="8" rx="1" stroke="currentColor" stroke-width="2"></rect><rect x="7" y="-4" width="10" height="8" rx="1" stroke="currentColor" stroke-width="2"></rect><rect x="7" y="20" width="10" height="8" rx="1" stroke="currentColor" stroke-width="2"></rect></g><defs><clipPath id="clip0_529_2866"><rect width="24" height="24" fill="white" transform="translate(0 24) rotate(-90)"></rect></clipPath></defs>', 2)) 50625 ], 8, _hoisted_1$2K); 50626} 50627const CoreIconCarousel = /* @__PURE__ */ _export_sfc(_sfc_main$2K, [["render", _sfc_render$2y]]); 50628const CoreIconCarousel$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50629 __proto__: null, 50630 default: CoreIconCarousel 50631}, Symbol.toStringTag, { value: "Module" })); 50632const _sfc_main$2J = { 50633 props: { 50634 settings: { 50635 type: Object, 50636 required: false, 50637 default: () => ({}) 50638 } 50639 }, 50640 computed: { 50641 alt() { 50642 var _a, _b; 50643 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 50644 }, 50645 id() { 50646 var _a, _b; 50647 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 50648 } 50649 } 50650}; 50651const _hoisted_1$2J = ["aria-labelledby", "aria-label"]; 50652const _hoisted_2$2A = ["id"]; 50653function _sfc_render$2x(_ctx, _cache, $props, $setup, $data, $options) { 50654 return openBlock(), createElementBlock("svg", { 50655 width: "48", 50656 height: "48",
50657 viewBox: "0 0 48 48", 50658 xmlns: "http://www.w3.org/2000/svg", 50659 role: "img", 50660 "aria-labelledby": `icon-title-${$options.id}`, 50661 "aria-label": $options.alt, 50662 fill: "none" 50663 }, [ 50664 createBaseVNode("title", { 50665 id: `icon-title-${$options.id}` 50666 }, toDisplayString($options.alt), 9, _hoisted_2$2A), 50667 _cache[0] || (_cache[0] = createBaseVNode("rect", { 50668 fill: "var(--_core__container_control_carousel_svg_fill)", 50669 x: "47", 50670 y: "47", 50671 width: "46", 50672 height: "46", 50673 rx: "23", 50674 transform: "rotate(-180 47 47)" 50675 }, null, -1)), 50676 _cache[1] || (_cache[1] = createBaseVNode("path", { 50677 d: "M27.3716 16.705L19.3716 24.705L27.3716 32.705", 50678 stroke: "var(--_core__container_control_carousel_svg_stroke)", 50679 "stroke-width": "2", 50680 "stroke-linecap": "round", 50681 "stroke-linejoin": "round" 50682 }, null, -1)), 50683 _cache[2] || (_cache[2] = createBaseVNode("rect", { 50684 x: "47", 50685 y: "47", 50686 width: "46", 50687 height: "46", 50688 rx: "23", 50689 transform: "rotate(-180 47 47)",
50690 stroke: "var(--_core__container_control_carousel_svg_stroke)", 50691 "stroke-width": "2" 50692 }, null, -1)) 50693 ], 8, _hoisted_1$2J); 50694} 50695const CoreIconCarouselBackward = /* @__PURE__ */ _export_sfc(_sfc_main$2J, [["render", _sfc_render$2x]]); 50696const CoreIconCarouselBackward$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50697 __proto__: null, 50698 default: CoreIconCarouselBackward 50699}, Symbol.toStringTag, { value: "Module" })); 50700const _sfc_main$2I = { 50701 props: { 50702 settings: { 50703 type: Object, 50704 required: false, 50705 default: () => ({}) 50706 } 50707 }, 50708 computed: { 50709 alt() { 50710 var _a, _b; 50711 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 50712 }, 50713 id() { 50714 var _a, _b; 50715 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 50716 } 50717 } 50718}; 50719const _hoisted_1$2I = ["aria-labelledby", "aria-label"]; 50720const _hoisted_2$2z = ["id"]; 50721function _sfc_render$2w(_ctx, _cache, $props, $setup, $data, $options) { 50722 return openBlock(), createElementBlock("svg", { 50723 width: "48", 50724 height: "48", 50725 viewBox: "0 0 48 48", 50726 xmlns: "http://www.w3.org/2000/svg", 50727 role: "img", 50728 "aria-labelledby": `icon-title-${$options.id}`, 50729 "aria-label": $options.alt, 50730 fill: "none" 50731 }, [ 50732 createBaseVNode("title", { 50733 id: `icon-title-${$options.id}` 50734 }, toDisplayString($options.alt), 9, _hoisted_2$2z), 50735 _cache[0] || (_cache[0] = createBaseVNode("rect", {
50736 fill: "var(--_core__container_control_carousel_svg_fill)", 50737 x: "1", 50738 y: "1", 50739 width: "46", 50740 height: "46", 50741 rx: "23" 50742 }, null, -1)), 50743 _cache[1] || (_cache[1] = createBaseVNode("path", { 50744 d: "M21.9155 32.5821L29.9155 24.5822L21.9155 16.5822", 50745 stroke: "var(--_core__container_control_carousel_svg_stroke)", 50746 "stroke-width": "2", 50747 "stroke-linecap": "round", 50748 "stroke-linejoin": "round" 50749 }, null, -1)), 50750 _cache[2] || (_cache[2] = createBaseVNode("rect", { 50751 x: "1", 50752 y: "1", 50753 width: "46", 50754 height: "46", 50755 rx: "23", 50756 stroke: "var(--_core__container_control_carousel_svg_stroke)", 50757 "stroke-width": "2" 50758 }, null, -1)) 50759 ], 8, _hoisted_1$2I); 50760} 50761const CoreIconCarouselForward = /* @__PURE__ */ _export_sfc(_sfc_main$2I, [["render", _sfc_render$2w]]); 50762const CoreIconCarouselForward$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50763 __proto__: null, 50764 default: CoreIconCarouselForward 50765}, Symbol.toStringTag, { value: "Module" })); 50766const _sfc_main$2H = { 50767 props: { 50768 settings: { 50769 type: Object, 50770 required: false 50771 } 50772 }, 50773 computed: { 50774 alt() { 50775 var _a, _b; 50776 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 50777 }, 50778 id() { 50779 var _a, _b; 50780 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 50781 } 50782 } 50783}; 50784const _hoisted_1$2H = ["aria-labelledby", "aria-label"]; 50785const _hoisted_2$2y = ["id"]; 50786function _sfc_render$2v(_ctx, _cache, $props, $setup, $data, $options) { 50787 return openBlock(), createElementBlock("svg", { 50788 width: "24", 50789 height: "24", 50790 viewBox: "0 0 24 24", 50791 fill: "none", 50792 xmlns: "http://www.w3.org/2000/svg", 50793 role: "img", 50794 "aria-labelledby": `icon-title-${$options.id}`, 50795 "aria-label": $options.alt 50796 }, [ 50797 createBaseVNode("title", { 50798 id: `icon-title-${$options.id}` 50799 }, toDisplayString($options.alt), 9, _hoisted_2$2y), 50800 _cache[0] || (_cache[0] = createBaseVNode("svg", { 50801 width: "24", 50802 height: "24", 50803 viewBox: "0 0 24 24", 50804 fill: "none", 50805 xmlns: "http://www.w3.org/2000/svg" 50806 }, [ 50807 createBaseVNode("path", { 50808 "fill-rule": "evenodd", 50809 "clip-rule": "evenodd", 50810 d: "M12.0109 3.90612L8.80548 8.99981H15.1838L12.0109 3.90612ZM11.9507 1.64074C12.2434 1.63024 12.5338 1.69553 12.7938 1.83028C13.0539 1.96504 13.2747 2.16469 13.4349 2.40989L13.4465 2.42808L17.1379 8.35412C17.3044 8.60287 17.4024 8.89136 17.4217 9.19046C17.4416 9.49994 17.3766 9.80897 17.2335 10.0841C17.0904 10.3593 16.8748 10.59 16.61 10.7514C16.3452 10.9128 16.0413 10.9987 15.7312 10.9998L15.7277 10.9998H8.321C8.01912 11.0104 7.71966 10.9403 7.45355 10.7966C7.17769 10.6476 6.94842 10.4252 6.79108 10.154C6.63374 9.88275 6.55446 9.57333 6.56202 9.25988C6.56951 8.94892 6.66218 8.64602 6.82986 8.38414L10.5419 2.48532C10.6833 2.24203 10.883 2.03749 11.1233 1.89025C11.373 1.73719 11.658 1.65125 11.9507 1.64074Z", 50811 fill: "currentColor" 50812 }), 50813 createBaseVNode("path", { 50814 "fill-rule": "evenodd", 50815 "clip-rule": "evenodd", 50816 d: "M2 15C2 13.8954 2.89543 13 4 13H9C10.1046 13 11 13.8954 11 15V20C11 21.1046 10.1046 22 9 22H4C2.89543 22 2 21.1046 2 20V15ZM9 15H4V20H9V15Z", 50817 fill: "currentColor" 50818 }), 50819 createBaseVNode("path", { 50820 "fill-rule": "evenodd", 50821 "clip-rule": "evenodd", 50822 d: "M17.5 15C16.1193 15 15 16.1193 15 17.5C15 18.8807 16.1193 20 17.5 20C18.8807 20 20 18.8807 20 17.5C20 16.1193 18.8807 15 17.5 15ZM13 17.5C13 15.0147 15.0147 13 17.5 13C19.9853 13 22 15.0147 22 17.5C22 19.9853 19.9853 22 17.5 22C15.0147 22 13 19.9853 13 17.5Z", 50823 fill: "currentColor" 50824 }) 50825 ], -1)) 50826 ], 8, _hoisted_1$2H); 50827} 50828const CoreIconCategories = /* @__PURE__ */ _export_sfc(_sfc_main$2H, [["render", _sfc_render$2v]]); 50829const CoreIconCategories$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50830 __proto__: null, 50831 default: CoreIconCategories 50832}, Symbol.toStringTag, { value: "Module" })); 50833const _sfc_main$2G = { 50834 props: { 50835 settings: { 50836 type: Object, 50837 required: false 50838 } 50839 }, 50840 computed: { 50841 alt() { 50842 var _a, _b; 50843 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 50844 }, 50845 id() { 50846 var _a, _b; 50847 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 50848 } 50849 } 50850}; 50851const _hoisted_1$2G = ["aria-labelledby", "aria-label"]; 50852const _hoisted_2$2x = ["id"]; 50853function _sfc_render$2u(_ctx, _cache, $props, $setup, $data, $options) { 50854 return openBlock(), createElementBlock("svg", { 50855 width: "24", 50856 height: "24",
50857 viewBox: "0 0 24 24", 50858 fill: "none", 50859 xmlns: "http://www.w3.org/2000/svg", 50860 role: "img", 50861 "aria-labelledby": `icon-title-${$options.id}`, 50862 "aria-label": $options.alt 50863 }, [ 50864 createBaseVNode("title", { 50865 id: `icon-title-${$options.id}` 50866 }, toDisplayString($options.alt), 9, _hoisted_2$2x), 50867 _cache[0] || (_cache[0] = createBaseVNode("path", { 50868 d: "M19.1024 10.39L20.1624 9.33C20.9424 8.55 20.9424 7.28 20.1624 6.5L18.7524 5.09C17.9724 4.31 16.7024 4.31 15.9224 5.09L14.8624 6.15L19.1024 10.39ZM14.8624 11.81L7.66244 19H6.25244V17.59L13.4424 10.4L14.8624 11.81ZM13.4424 7.56L4.25244 16.76V21H8.49244L17.6824 11.81L13.4424 7.56ZM19.2524 17.5C19.2524 19.69 16.7124 21 14.2524 21C13.7024 21 13.2524 20.55 13.2524 20C13.2524 19.45 13.7024 19 14.2524 19C15.7924 19 17.2524 18.27 17.2524 17.5C17.2524 17.03 16.7724 16.63 16.0224 16.3L17.5024 14.82C18.5724 15.45 19.2524 16.29 19.2524 17.5ZM4.83244 13.35C3.86244 12.79 3.25244 12.06 3.25244 11C3.25244 9.2 5.14244 8.37 6.81244 7.64C7.84244 7.18 9.25244 6.56 9.25244 6C9.25244 5.59 8.47244 5 7.25244 5C5.99244 5 5.45244 5.61 5.42244 5.64C5.07244 6.05 4.44244 6.1 4.02244 5.76C3.61244 5.42 3.53244 4.81 3.87244 4.38C3.98244 4.24 5.01244 3 7.25244 3C9.49244 3 11.2524 4.32 11.2524 6C11.2524 7.87 9.32244 8.72 7.61244 9.47C6.67244 9.88 5.25244 10.5 5.25244 11C5.25244 11.31 5.68244 11.6 6.32244 11.86L4.83244 13.35Z", 50869 fill: "currentColor" 50870 }, null, -1)) 50871 ], 8, _hoisted_1$2G); 50872} 50873const CoreIconChanges = /* @__PURE__ */ _export_sfc(_sfc_main$2G, [["render", _sfc_render$2u]]); 50874const CoreIconChanges$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50875 __proto__: null, 50876 default: CoreIconChanges 50877}, Symbol.toStringTag, { value: "Module" })); 50878const _sfc_main$2F = { 50879 props: { 50880 settings: { 50881 type: Object, 50882 required: false 50883 } 50884 }, 50885 computed: { 50886 alt() { 50887 var _a, _b; 50888 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 50889 }, 50890 id() { 50891 var _a, _b; 50892 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 50893 } 50894 } 50895}; 50896const _hoisted_1$2F = ["aria-labelledby", "aria-label"]; 50897const _hoisted_2$2w = ["id"]; 50898function _sfc_render$2t(_ctx, _cache, $props, $setup, $data, $options) { 50899 return openBlock(), createElementBlock("svg", { 50900 width: "24", 50901 height: "24", 50902 viewBox: "0 0 24 24", 50903 fill: "none", 50904 xmlns: "http://www.w3.org/2000/svg", 50905 role: "img", 50906 "aria-labelledby": `icon-title-${$options.id}`, 50907 "aria-label": $options.alt 50908 }, [ 50909 createBaseVNode("title", { 50910 id: `icon-title-${$options.id}` 50911 }, toDisplayString($options.alt), 9, _hoisted_2$2w), 50912 _cache[0] || (_cache[0] = createBaseVNode("path", { 50913 d: "M20 6L9 17L4 12", 50914 stroke: "currentColor", 50915 "stroke-width": "2", 50916 "stroke-linecap": "round", 50917 "stroke-linejoin": "round" 50918 }, null, -1)) 50919 ], 8, _hoisted_1$2F); 50920} 50921const CoreIconCheckmark = /* @__PURE__ */ _export_sfc(_sfc_main$2F, [["render", _sfc_render$2t]]); 50922const CoreIconCheckmark$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50923 __proto__: null, 50924 default: CoreIconCheckmark 50925}, Symbol.toStringTag, { value: "Module" })); 50926const _sfc_main$2E = { 50927 props: { 50928 settings: { 50929 type: Object, 50930 required: false 50931 } 50932 }, 50933 computed: { 50934 alt() { 50935 var _a, _b; 50936 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 50937 }, 50938 id() { 50939 var _a, _b; 50940 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 50941 } 50942 } 50943}; 50944const _hoisted_1$2E = ["aria-labelledby", "aria-label"]; 50945const _hoisted_2$2v = ["id"]; 50946function _sfc_render$2s(_ctx, _cache, $props, $setup, $data, $options) { 50947 return openBlock(), createElementBlock("svg", { 50948 width: "24", 50949 height: "24", 50950 viewBox: "0 0 24 24", 50951 fill: "none", 50952 xmlns: "http://www.w3.org/2000/svg", 50953 role: "img", 50954 "aria-labelledby": `icon-title-${$options.id}`, 50955 "aria-label": $options.alt 50956 }, [ 50957 createBaseVNode("title", { 50958 id: `icon-title-${$options.id}` 50959 }, toDisplayString($options.alt), 9, _hoisted_2$2v), 50960 _cache[0] || (_cache[0] = createBaseVNode("path", { 50961 d: "M6 9L12 15L18 9", 50962 stroke: "currentColor", 50963 "stroke-width": "2", 50964 "stroke-linecap": "round", 50965 "stroke-linejoin": "round" 50966 }, null, -1)) 50967 ], 8, _hoisted_1$2E); 50968} 50969const CoreIconChevronDown = /* @__PURE__ */ _export_sfc(_sfc_main$2E, [["render", _sfc_render$2s]]); 50970const CoreIconChevronDown$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 50971 __proto__: null, 50972 default: CoreIconChevronDown 50973}, Symbol.toStringTag, { value: "Module" })); 50974const _sfc_main$2D = { 50975 props: { 50976 settings: { 50977 type: Object, 50978 required: false 50979 } 50980 }, 50981 computed: { 50982 alt() { 50983 var _a, _b; 50984 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 50985 }, 50986 id() { 50987 var _a, _b; 50988 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 50989 } 50990 } 50991}; 50992const _hoisted_1$2D = ["aria-labelledby", "aria-label"]; 50993const _hoisted_2$2u = ["id"]; 50994function _sfc_render$2r(_ctx, _cache, $props, $setup, $data, $options) { 50995 return openBlock(), createElementBlock("svg", { 50996 width: "24", 50997 height: "24",
50998 viewBox: "0 0 24 24", 50999 fill: "none", 51000 xmlns: "http://www.w3.org/2000/svg", 51001 role: "img", 51002 "aria-labelledby": `icon-title-${$options.id}`, 51003 "aria-label": $options.alt 51004 }, [ 51005 createBaseVNode("title", { 51006 id: `icon-title-${$options.id}` 51007 }, toDisplayString($options.alt), 9, _hoisted_2$2u), 51008 _cache[0] || (_cache[0] = createBaseVNode("path", { 51009 d: "M14 18L8 12L14 6", 51010 stroke: "currentColor", 51011 "stroke-width": "2", 51012 "stroke-linecap": "round", 51013 "stroke-linejoin": "round" 51014 }, null, -1)) 51015 ], 8, _hoisted_1$2D); 51016} 51017const CoreIconChevronLeft = /* @__PURE__ */ _export_sfc(_sfc_main$2D, [["render", _sfc_render$2r]]); 51018const CoreIconChevronLeft$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51019 __proto__: null, 51020 default: CoreIconChevronLeft 51021}, Symbol.toStringTag, { value: "Module" })); 51022const _sfc_main$2C = { 51023 props: { 51024 settings: { 51025 type: Object, 51026 required: false 51027 } 51028 }, 51029 computed: { 51030 alt() { 51031 var _a, _b; 51032 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51033 }, 51034 id() { 51035 var _a, _b; 51036 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51037 } 51038 } 51039}; 51040const _hoisted_1$2C = ["aria-labelledby", "aria-label"]; 51041const _hoisted_2$2t = ["id"]; 51042function _sfc_render$2q(_ctx, _cache, $props, $setup, $data, $options) { 51043 return openBlock(), createElementBlock("svg", { 51044 width: "24", 51045 height: "24", 51046 viewBox: "0 0 24 24", 51047 fill: "none", 51048 xmlns: "http://www.w3.org/2000/svg", 51049 role: "img", 51050 "aria-labelledby": `icon-title-${$options.id}`, 51051 "aria-label": $options.alt 51052 }, [ 51053 createBaseVNode("title", { 51054 id: `icon-title-${$options.id}` 51055 }, toDisplayString($options.alt), 9, _hoisted_2$2t), 51056 _cache[0] || (_cache[0] = createBaseVNode("path", { 51057 d: "M10 18L16 12L10 6", 51058 stroke: "currentColor", 51059 "stroke-width": "2", 51060 "stroke-linecap": "round", 51061 "stroke-linejoin": "round" 51062 }, null, -1)) 51063 ], 8, _hoisted_1$2C); 51064} 51065const CoreIconChevronRight = /* @__PURE__ */ _export_sfc(_sfc_main$2C, [["render", _sfc_render$2q]]); 51066const CoreIconChevronRight$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51067 __proto__: null, 51068 default: CoreIconChevronRight 51069}, Symbol.toStringTag, { value: "Module" })); 51070const _sfc_main$2B = { 51071 props: { 51072 settings: { 51073 type: Object, 51074 required: false 51075 } 51076 }, 51077 computed: { 51078 alt() { 51079 var _a, _b; 51080 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51081 }, 51082 id() { 51083 var _a, _b; 51084 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51085 } 51086 } 51087}; 51088const _hoisted_1$2B = ["aria-labelledby", "aria-label"]; 51089const _hoisted_2$2s = ["id"]; 51090function _sfc_render$2p(_ctx, _cache, $props, $setup, $data, $options) { 51091 return openBlock(), createElementBlock("svg", { 51092 width: "24", 51093 height: "24", 51094 viewBox: "0 0 24 24", 51095 fill: "none", 51096 xmlns: "http://www.w3.org/2000/svg", 51097 role: "img", 51098 "aria-labelledby": `icon-title-${$options.id}`, 51099 "aria-label": $options.alt 51100 }, [ 51101 createBaseVNode("title", { 51102 id: `icon-title-${$options.id}` 51103 }, toDisplayString($options.alt), 9, _hoisted_2$2s), 51104 _cache[0] || (_cache[0] = createBaseVNode("path", { 51105 d: "M18 15L12 9L6 15", 51106 stroke: "currentColor", 51107 "stroke-width": "2", 51108 "stroke-linecap": "round", 51109 "stroke-linejoin": "round" 51110 }, null, -1)) 51111 ], 8, _hoisted_1$2B); 51112} 51113const CoreIconChevronUp = /* @__PURE__ */ _export_sfc(_sfc_main$2B, [["render", _sfc_render$2p]]); 51114const CoreIconChevronUp$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51115 __proto__: null, 51116 default: CoreIconChevronUp 51117}, Symbol.toStringTag, { value: "Module" })); 51118const _sfc_main$2A = { 51119 name: "CoreIconCircleCheckLight", 51120 props: { 51121 settings: { 51122 type: Object, 51123 required: false 51124 } 51125 }, 51126 computed: { 51127 alt() { 51128 var _a, _b; 51129 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51130 }, 51131 id() { 51132 var _a, _b; 51133 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51134 } 51135 } 51136}; 51137const _hoisted_1$2A = ["aria-labelledby", "aria-label"]; 51138const _hoisted_2$2r = ["id"]; 51139function _sfc_render$2o(_ctx, _cache, $props, $setup, $data, $options) { 51140 return openBlock(), createElementBlock("svg", { 51141 width: "32", 51142 height: "32",
51143 viewBox: "0 0 32 32", 51144 fill: "none", 51145 xmlns: "http://www.w3.org/2000/svg", 51146 role: "img", 51147 "aria-labelledby": `icon-title-${$options.id}`, 51148 "aria-label": $options.alt 51149 }, [ 51150 createBaseVNode("title", { 51151 id: `icon-title-${$options.id}` 51152 }, toDisplayString($options.alt), 9, _hoisted_2$2r), 51153 _cache[0] || (_cache[0] = createBaseVNode("rect", { 51154 width: "32", 51155 height: "32", 51156 rx: "16", 51157 fill: "#CAE7DD", 51158 "fill-opacity": "0.866667" 51159 }, null, -1)), 51160 _cache[1] || (_cache[1] = createBaseVNode("path", { 51161 d: "M24 10L13 22L8 16.5455", 51162 stroke: "#2E8540", 51163 "stroke-width": "2", 51164 "stroke-linecap": "round", 51165 "stroke-linejoin": "round" 51166 }, null, -1)) 51167 ], 8, _hoisted_1$2A); 51168} 51169const CoreIconCircleCheckLight = /* @__PURE__ */ _export_sfc(_sfc_main$2A, [["render", _sfc_render$2o]]); 51170const CoreIconCircleCheckLight$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51171 __proto__: null, 51172 default: CoreIconCircleCheckLight 51173}, Symbol.toStringTag, { value: "Module" })); 51174const _sfc_main$2z = { 51175 props: { 51176 settings: { 51177 type: Object, 51178 required: false 51179 } 51180 }, 51181 computed: { 51182 alt() { 51183 var _a, _b; 51184 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51185 }, 51186 id() { 51187 var _a, _b; 51188 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51189 } 51190 } 51191}; 51192const _hoisted_1$2z = ["aria-labelledby", "aria-label"]; 51193const _hoisted_2$2q = ["id"]; 51194function _sfc_render$2n(_ctx, _cache, $props, $setup, $data, $options) { 51195 return openBlock(), createElementBlock("svg", { 51196 width: "24", 51197 height: "24", 51198 viewBox: "0 0 24 24", 51199 fill: "none", 51200 xmlns: "http://www.w3.org/2000/svg", 51201 role: "img", 51202 "aria-labelledby": `icon-title-${$options.id}`, 51203 "aria-label": $options.alt 51204 }, [ 51205 createBaseVNode("title", { 51206 id: `icon-title-${$options.id}` 51207 }, toDisplayString($options.alt), 9, _hoisted_2$2q), 51208 _cache[0] || (_cache[0] = createBaseVNode("path", { 51209 d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", 51210 stroke: "currentColor", 51211 "stroke-width": "2", 51212 "stroke-linecap": "round", 51213 "stroke-linejoin": "round" 51214 }, null, -1)), 51215 _cache[1] || (_cache[1] = createBaseVNode("path", { 51216 d: "M8 12L16 12", 51217 stroke: "currentColor", 51218 "stroke-width": "2", 51219 "stroke-linecap": "round", 51220 "stroke-linejoin": "round" 51221 }, null, -1)) 51222 ], 8, _hoisted_1$2z); 51223} 51224const CoreIconCircleMinus = /* @__PURE__ */ _export_sfc(_sfc_main$2z, [["render", _sfc_render$2n]]); 51225const CoreIconCircleMinus$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51226 __proto__: null, 51227 default: CoreIconCircleMinus 51228}, Symbol.toStringTag, { value: "Module" })); 51229const _sfc_main$2y = { 51230 props: { 51231 settings: { 51232 type: Object, 51233 required: false 51234 } 51235 }, 51236 computed: { 51237 alt() { 51238 var _a, _b; 51239 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51240 }, 51241 id() { 51242 var _a, _b; 51243 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51244 } 51245 } 51246}; 51247const _hoisted_1$2y = ["aria-labelledby", "aria-label"]; 51248const _hoisted_2$2p = ["id"]; 51249function _sfc_render$2m(_ctx, _cache, $props, $setup, $data, $options) { 51250 return openBlock(), createElementBlock("svg", { 51251 width: "24", 51252 height: "24", 51253 viewBox: "0 0 24 24", 51254 fill: "none", 51255 xmlns: "http://www.w3.org/2000/svg", 51256 role: "img", 51257 "aria-labelledby": `icon-title-${$options.id}`, 51258 "aria-label": $options.alt 51259 }, [ 51260 createBaseVNode("title", { 51261 id: `icon-title-${$options.id}` 51262 }, toDisplayString($options.alt), 9, _hoisted_2$2p), 51263 _cache[0] || (_cache[0] = createBaseVNode("path", { 51264 "fill-rule": "evenodd", 51265 "clip-rule": "evenodd", 51266 d: "M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM8 11C7.44772 11 7 11.4477 7 12C7 12.5523 7.44772 13 8 13H16C16.5523 13 17 12.5523 17 12C17 11.4477 16.5523 11 16 11H8Z", 51267 fill: "currentColor" 51268 }, null, -1)) 51269 ], 8, _hoisted_1$2y); 51270} 51271const CoreIconCircleMinusFilled = /* @__PURE__ */ _export_sfc(_sfc_main$2y, [["render", _sfc_render$2m]]); 51272const CoreIconCircleMinusFilled$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51273 __proto__: null, 51274 default: CoreIconCircleMinusFilled 51275}, Symbol.toStringTag, { value: "Module" })); 51276const _sfc_main$2x = { 51277 props: { 51278 settings: { 51279 type: Object, 51280 required: false 51281 } 51282 }, 51283 computed: { 51284 alt() { 51285 var _a, _b; 51286 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51287 }, 51288 id() { 51289 var _a, _b; 51290 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51291 } 51292 } 51293}; 51294const _hoisted_1$2x = ["aria-labelledby", "aria-label"]; 51295const _hoisted_2$2o = ["id"]; 51296function _sfc_render$2l(_ctx, _cache, $props, $setup, $data, $options) { 51297 return openBlock(), createElementBlock("svg", { 51298 width: "24", 51299 height: "24",
51300 viewBox: "0 0 24 24", 51301 fill: "none", 51302 xmlns: "http://www.w3.org/2000/svg", 51303 role: "img", 51304 "aria-labelledby": `icon-title-${$options.id}`, 51305 "aria-label": $options.alt 51306 }, [ 51307 createBaseVNode("title", { 51308 id: `icon-title-${$options.id}` 51309 }, toDisplayString($options.alt), 9, _hoisted_2$2o), 51310 _cache[0] || (_cache[0] = createBaseVNode("path", { 51311 d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", 51312 stroke: "currentColor", 51313 "stroke-width": "2", 51314 "stroke-linecap": "round", 51315 "stroke-linejoin": "round" 51316 }, null, -1)), 51317 _cache[1] || (_cache[1] = createBaseVNode("path", { 51318 d: "M12 8V16", 51319 stroke: "currentColor", 51320 "stroke-width": "2", 51321 "stroke-linecap": "round", 51322 "stroke-linejoin": "round" 51323 }, null, -1)), 51324 _cache[2] || (_cache[2] = createBaseVNode("path", { 51325 d: "M8 12H16", 51326 stroke: "currentColor", 51327 "stroke-width": "2", 51328 "stroke-linecap": "round", 51329 "stroke-linejoin": "round" 51330 }, null, -1)) 51331 ], 8, _hoisted_1$2x); 51332} 51333const CoreIconCirclePlus = /* @__PURE__ */ _export_sfc(_sfc_main$2x, [["render", _sfc_render$2l]]); 51334const CoreIconCirclePlus$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51335 __proto__: null, 51336 default: CoreIconCirclePlus 51337}, Symbol.toStringTag, { value: "Module" })); 51338const _sfc_main$2w = { 51339 props: { 51340 settings: { 51341 type: Object, 51342 required: false 51343 } 51344 }, 51345 computed: { 51346 alt() { 51347 var _a, _b; 51348 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51349 }, 51350 id() { 51351 var _a, _b; 51352 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51353 } 51354 } 51355}; 51356const _hoisted_1$2w = ["aria-labelledby", "aria-label"]; 51357const _hoisted_2$2n = ["id"]; 51358function _sfc_render$2k(_ctx, _cache, $props, $setup, $data, $options) { 51359 return openBlock(), createElementBlock("svg", { 51360 width: "24", 51361 height: "24", 51362 viewBox: "0 0 24 24", 51363 fill: "none", 51364 xmlns: "http://www.w3.org/2000/svg", 51365 role: "img", 51366 "aria-labelledby": `icon-title-${$options.id}`, 51367 "aria-label": $options.alt 51368 }, [ 51369 createBaseVNode("title", { 51370 id: `icon-title-${$options.id}` 51371 }, toDisplayString($options.alt), 9, _hoisted_2$2n), 51372 _cache[0] || (_cache[0] = createBaseVNode("path", { 51373 "fill-rule": "evenodd", 51374 "clip-rule": "evenodd", 51375 d: "M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM12 7C12.5523 7 13 7.44772 13 8V11H16C16.5523 11 17 11.4477 17 12C17 12.5523 16.5523 13 16 13H13V16C13 16.5523 12.5523 17 12 17C11.4477 17 11 16.5523 11 16V13H8C7.44772 13 7 12.5523 7 12C7 11.4477 7.44772 11 8 11H11V8C11 7.44772 11.4477 7 12 7Z", 51376 fill: "currentColor" 51377 }, null, -1)) 51378 ], 8, _hoisted_1$2w); 51379} 51380const CoreIconCirclePlusFilled = /* @__PURE__ */ _export_sfc(_sfc_main$2w, [["render", _sfc_render$2k]]); 51381const CoreIconCirclePlusFilled$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51382 __proto__: null, 51383 default: CoreIconCirclePlusFilled 51384}, Symbol.toStringTag, { value: "Module" })); 51385const _sfc_main$2v = { 51386 props: { 51387 settings: { 51388 type: Object, 51389 required: false 51390 } 51391 }, 51392 computed: { 51393 alt() { 51394 var _a, _b; 51395 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51396 }, 51397 id() { 51398 var _a, _b; 51399 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51400 } 51401 } 51402}; 51403const _hoisted_1$2v = ["aria-labelledby", "aria-label"]; 51404const _hoisted_2$2m = ["id"]; 51405function _sfc_render$2j(_ctx, _cache, $props, $setup, $data, $options) { 51406 return openBlock(), createElementBlock("svg", { 51407 width: "24", 51408 height: "24", 51409 viewBox: "0 0 24 24", 51410 fill: "none", 51411 xmlns: "http://www.w3.org/2000/svg", 51412 role: "img", 51413 "aria-labelledby": `icon-title-${$options.id}`, 51414 "aria-label": $options.alt 51415 }, [ 51416 createBaseVNode("title", { 51417 id: `icon-title-${$options.id}` 51418 }, toDisplayString($options.alt), 9, _hoisted_2$2m), 51419 _cache[0] || (_cache[0] = createBaseVNode("path", { 51420 d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", 51421 stroke: "currentColor", 51422 "stroke-width": "2", 51423 "stroke-linecap": "round", 51424 "stroke-linejoin": "round" 51425 }, null, -1)), 51426 _cache[1] || (_cache[1] = createBaseVNode("path", { 51427 d: "M12 6V12L16 14", 51428 stroke: "currentColor", 51429 "stroke-width": "2", 51430 "stroke-linecap": "round", 51431 "stroke-linejoin": "round" 51432 }, null, -1)) 51433 ], 8, _hoisted_1$2v); 51434} 51435const CoreIconClock = /* @__PURE__ */ _export_sfc(_sfc_main$2v, [["render", _sfc_render$2j]]); 51436const CoreIconClock$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51437 __proto__: null, 51438 default: CoreIconClock 51439}, Symbol.toStringTag, { value: "Module" })); 51440const _sfc_main$2u = { 51441 props: { 51442 settings: { 51443 type: Object, 51444 required: false 51445 } 51446 }, 51447 computed: { 51448 alt() { 51449 var _a, _b; 51450 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51451 }, 51452 id() { 51453 var _a, _b; 51454 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51455 } 51456 } 51457}; 51458const _hoisted_1$2u = ["aria-labelledby", "aria-label"]; 51459const _hoisted_2$2l = ["id"]; 51460function _sfc_render$2i(_ctx, _cache, $props, $setup, $data, $options) { 51461 return openBlock(), createElementBlock("svg", { 51462 width: "24", 51463 height: "24",
51464 viewBox: "0 0 24 24", 51465 fill: "none", 51466 xmlns: "http://www.w3.org/2000/svg", 51467 role: "img", 51468 "aria-labelledby": `icon-title-${$options.id}`, 51469 "aria-label": $options.alt 51470 }, [ 51471 createBaseVNode("title", { 51472 id: `icon-title-${$options.id}` 51473 }, toDisplayString($options.alt), 9, _hoisted_2$2l), 51474 _cache[0] || (_cache[0] = createBaseVNode("path", { 51475 "fill-rule": "evenodd", 51476 "clip-rule": "evenodd", 51477 d: "M12 1C5.92487 1 1 5.92487 1 12C1 18.0751 5.92487 23 12 23C18.0751 23 23 18.0751 23 12C23 5.92487 18.0751 1 12 1ZM12 5C12.5523 5 13 5.44772 13 6V11.382L16.4472 13.1056C16.9412 13.3526 17.1414 13.9532 16.8944 14.4472C16.6474 14.9412 16.0468 15.1414 15.5528 14.8944L11.5528 12.8944C11.214 12.725 11 12.3788 11 12V6C11 5.44772 11.4477 5 12 5Z", 51478 fill: "currentColor" 51479 }, null, -1)) 51480 ], 8, _hoisted_1$2u); 51481} 51482const CoreIconClockFilled = /* @__PURE__ */ _export_sfc(_sfc_main$2u, [["render", _sfc_render$2i]]); 51483const CoreIconClockFilled$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51484 __proto__: null, 51485 default: CoreIconClockFilled 51486}, Symbol.toStringTag, { value: "Module" })); 51487const _sfc_main$2t = { 51488 props: { 51489 settings: { 51490 type: Object, 51491 required: false 51492 } 51493 }, 51494 computed: { 51495 alt() { 51496 var _a, _b; 51497 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51498 }, 51499 id() { 51500 var _a, _b; 51501 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51502 } 51503 } 51504}; 51505const _hoisted_1$2t = ["aria-labelledby", "aria-label"]; 51506const _hoisted_2$2k = ["id"]; 51507function _sfc_render$2h(_ctx, _cache, $props, $setup, $data, $options) { 51508 return openBlock(), createElementBlock("svg", { 51509 width: "24", 51510 height: "24", 51511 viewBox: "0 0 24 24", 51512 fill: "none", 51513 xmlns: "http://www.w3.org/2000/svg", 51514 role: "img", 51515 "aria-labelledby": `icon-title-${$options.id}`, 51516 "aria-label": $options.alt 51517 }, [ 51518 createBaseVNode("title", { 51519 id: `icon-title-${$options.id}` 51520 }, toDisplayString($options.alt), 9, _hoisted_2$2k), 51521 _cache[0] || (_cache[0] = createBaseVNode("path", { 51522 d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", 51523 stroke: "currentColor", 51524 "stroke-width": "2", 51525 "stroke-linecap": "round", 51526 "stroke-linejoin": "round" 51527 }, null, -1)), 51528 _cache[1] || (_cache[1] = createBaseVNode("path", { 51529 d: "M15 9L9 15", 51530 stroke: "currentColor", 51531 "stroke-width": "2", 51532 "stroke-linecap": "round", 51533 "stroke-linejoin": "round" 51534 }, null, -1)), 51535 _cache[2] || (_cache[2] = createBaseVNode("path", { 51536 d: "M9 9L15 15", 51537 stroke: "currentColor", 51538 "stroke-width": "2", 51539 "stroke-linecap": "round", 51540 "stroke-linejoin": "round" 51541 }, null, -1)) 51542 ], 8, _hoisted_1$2t); 51543} 51544const CoreIconCloseCircle = /* @__PURE__ */ _export_sfc(_sfc_main$2t, [["render", _sfc_render$2h]]); 51545const CoreIconCloseCircle$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51546 __proto__: null, 51547 default: CoreIconCloseCircle 51548}, Symbol.toStringTag, { value: "Module" })); 51549const _sfc_main$2s = { 51550 props: { 51551 settings: { 51552 type: Object, 51553 required: false, 51554 default: () => ({}) 51555 } 51556 }, 51557 computed: { 51558 alt() { 51559 var _a, _b; 51560 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51561 }, 51562 id() { 51563 var _a, _b; 51564 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51565 } 51566 } 51567}; 51568const _hoisted_1$2s = ["aria-labelledby", "aria-label"]; 51569const _hoisted_2$2j = ["id"]; 51570function _sfc_render$2g(_ctx, _cache, $props, $setup, $data, $options) { 51571 return openBlock(), createElementBlock("svg", { 51572 width: "24", 51573 height: "24", 51574 viewBox: "0 0 24 24", 51575 fill: "none", 51576 xmlns: "http://www.w3.org/2000/svg", 51577 role: "img", 51578 "aria-labelledby": `icon-title-${$options.id}`, 51579 "aria-label": $options.alt 51580 }, [ 51581 createBaseVNode("title", { 51582 id: `icon-title-${$options.id}` 51583 }, toDisplayString($options.alt), 9, _hoisted_2$2j), 51584 _cache[0] || (_cache[0] = createBaseVNode("path", { 51585 d: "M12 2C6.47 2 2 6.47 2 12C2 17.53 6.47 22 12 22C17.53 22 22 17.53 22 12C22 6.47 17.53 2 12 2ZM17 15.59L15.59 17L12 13.41L8.41 17L7 15.59L10.59 12L7 8.41L8.41 7L12 10.59L15.59 7L17 8.41L13.41 12L17 15.59Z", 51586 fill: "currentColor" 51587 }, null, -1)) 51588 ], 8, _hoisted_1$2s); 51589} 51590const CoreIconCloseCircleFilled = /* @__PURE__ */ _export_sfc(_sfc_main$2s, [["render", _sfc_render$2g]]); 51591const CoreIconCloseCircleFilled$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51592 __proto__: null, 51593 default: CoreIconCloseCircleFilled 51594}, Symbol.toStringTag, { value: "Module" })); 51595const _sfc_main$2r = { 51596 props: { 51597 settings: { 51598 type: Object, 51599 required: false 51600 } 51601 }, 51602 computed: { 51603 alt() { 51604 var _a, _b; 51605 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51606 }, 51607 id() { 51608 var _a, _b; 51609 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51610 } 51611 } 51612}; 51613const _hoisted_1$2r = ["aria-labelledby", "aria-label"]; 51614const _hoisted_2$2i = ["id"]; 51615function _sfc_render$2f(_ctx, _cache, $props, $setup, $data, $options) { 51616 return openBlock(), createElementBlock("svg", { 51617 width: "24", 51618 height: "24",
51619 viewBox: "0 0 24 24", 51620 fill: "none", 51621 xmlns: "http://www.w3.org/2000/svg", 51622 role: "img", 51623 "aria-labelledby": `icon-title-${$options.id}`, 51624 "aria-label": $options.alt 51625 }, [ 51626 createBaseVNode("title", { 51627 id: `icon-title-${$options.id}` 51628 }, toDisplayString($options.alt), 9, _hoisted_2$2i), 51629 _cache[0] || (_cache[0] = createBaseVNode("path", { 51630 d: "M12 3.18772L19 6.29447V10.9896C19 15.5049 16.02 19.6705 12 20.9092C7.98 19.6705 5 15.5049 5 10.9896V6.29447L12 3.18772ZM12 1L3 4.99583V10.9896C3 16.5338 6.84 21.7184 12 22.9771C17.16 21.7184 21 16.5338 21 10.9896V4.99583L12 1Z", 51631 fill: "currentColor" 51632 }, null, -1)) 51633 ], 8, _hoisted_1$2r); 51634} 51635const CoreIconCompliance = /* @__PURE__ */ _export_sfc(_sfc_main$2r, [["render", _sfc_render$2f]]); 51636const CoreIconCompliance$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51637 __proto__: null, 51638 default: CoreIconCompliance 51639}, Symbol.toStringTag, { value: "Module" })); 51640const _sfc_main$2q = { 51641 props: { 51642 settings: { 51643 type: Object, 51644 required: false, 51645 default: () => ({}) 51646 } 51647 }, 51648 computed: { 51649 alt() { 51650 var _a, _b; 51651 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51652 }, 51653 id() { 51654 var _a, _b; 51655 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51656 } 51657 } 51658}; 51659const _hoisted_1$2q = ["aria-labelledby", "aria-label"]; 51660const _hoisted_2$2h = ["id"]; 51661function _sfc_render$2e(_ctx, _cache, $props, $setup, $data, $options) { 51662 return openBlock(), createElementBlock("svg", { 51663 width: "36", 51664 height: "30", 51665 viewBox: "0 0 36 30", 51666 fill: "none", 51667 xmlns: "http://www.w3.org/2000/svg", 51668 "aria-labelledby": `icon-title-${$options.id}`, 51669 "aria-label": $options.alt 51670 }, [ 51671 createBaseVNode("title", { 51672 id: `icon-title-${$options.id}` 51673 }, toDisplayString($options.alt), 9, _hoisted_2$2h), 51674 _cache[0] || (_cache[0] = createStaticVNode('<g id="Group 1175"><path id="Subtract" fill-rule="evenodd" clip-rule="evenodd" d="M3.0522 4.82049C3.0522 4.06232 3.66681 3.44771 4.42498 3.44771H26.3895C27.1476 3.44771 27.7622 4.06232 27.7622 4.82049V7.16218H30.5078V4.82049C30.5078 2.54599 28.6639 0.702148 26.3895 0.702148H4.42498C2.15048 0.702148 0.306641 2.54599 0.306641 4.82049V18.5483C0.306641 20.8228 2.15048 22.6666 4.42498 22.6666H14.0347V25.4126H9.91597C9.1578 25.4126 8.54319 26.0272 8.54319 26.7854C8.54319 27.5436 9.1578 28.1582 9.91597 28.1582H20.8982C21.6564 28.1582 22.271 27.5436 22.271 26.7854C22.271 26.0272 21.6564 25.4126 20.8982 25.4126H16.7803V22.6666H19.6869V19.9211H4.42498C3.66681 19.9211 3.0522 19.3064 3.0522 18.5483V4.82049Z" fill="currentColor"></path><g id="Group 1172"><path id="Vector (Stroke)" fill-rule="evenodd" clip-rule="evenodd" d="M25.2616 11.7018C25.1832 11.7918 25.112 11.9455 25.112 12.147V26.1799C25.112 26.3814 25.1832 26.5351 25.2616 26.6251C25.3377 26.7127 25.3993 26.7227 25.427 26.7227H33.0585C33.0862 26.7227 33.1478 26.7127 33.224 26.6251C33.3023 26.5351 33.3736 26.3814 33.3736 26.1799V12.147C33.3736 11.9455 33.3023 11.7918 33.224 11.7018C33.1478 11.6142 33.0862 11.6042 33.0585 11.6042H25.427C25.3993 11.6042 25.3377 11.6142 25.2616 11.7018ZM22.6895 12.147C22.6895 10.673 23.7624 9.18164 25.427 9.18164H33.0585C34.7232 9.18164 35.7961 10.673 35.7961 12.147V26.1799C35.7961 27.6539 34.7232 29.1453 33.0585 29.1453H25.427C23.7624 29.1453 22.6895 27.6539 22.6895 26.1799V12.147Z" fill="currentColor"></path><path id="Vector (Stroke)_2" fill-rule="evenodd" clip-rule="evenodd" d="M28.4956 25.2114C28.4956 24.7244 28.8904 24.3296 29.3774 24.3296H29.3877C29.8747 24.3296 30.2695 24.7244 30.2695 25.2114C30.2695 25.6984 29.8747 26.0932 29.3877 26.0932H29.3774C28.8904 26.0932 28.4956 25.6984 28.4956 25.2114Z" fill="currentColor"></path></g></g>', 1)) 51675 ], 8, _hoisted_1$2q); 51676} 51677const CoreIconComputer = /* @__PURE__ */ _export_sfc(_sfc_main$2q, [["render", _sfc_render$2e]]); 51678const CoreIconComputer$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51679 __proto__: null, 51680 default: CoreIconComputer 51681}, Symbol.toStringTag, { value: "Module" })); 51682const _sfc_main$2p = { 51683 props: { 51684 settings: { 51685 type: Object, 51686 required: false 51687 } 51688 }, 51689 computed: { 51690 alt() { 51691 var _a, _b; 51692 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51693 }, 51694 id() { 51695 var _a, _b; 51696 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51697 } 51698 } 51699}; 51700const _hoisted_1$2p = ["aria-labelledby", "aria-label"];
51701const _hoisted_2$2g = ["id"]; 51702function _sfc_render$2d(_ctx, _cache, $props, $setup, $data, $options) { 51703 return openBlock(), createElementBlock("svg", { 51704 width: "24", 51705 height: "24", 51706 viewBox: "0 0 24 24", 51707 fill: "none", 51708 xmlns: "http://www.w3.org/2000/svg", 51709 role: "img", 51710 "aria-labelledby": `icon-title-${$options.id}`, 51711 "aria-label": $options.alt 51712 }, [ 51713 createBaseVNode("title", { 51714 id: `icon-title-${$options.id}` 51715 }, toDisplayString($options.alt), 9, _hoisted_2$2g), 51716 _cache[0] || (_cache[0] = createBaseVNode("path", { 51717 "fill-rule": "evenodd", 51718 "clip-rule": "evenodd", 51719 d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22ZM9 10.14C7.974 10.14 7.14 10.974 7.14 12C7.14 13.026 7.974 13.86 9 13.86H11.4V15H9C7.344 15 6 13.656 6 12C6 10.344 7.344 9 9 9H11.4V10.14H9ZM12.6 9H15C16.656 9 18 10.344 18 12C18 13.656 16.656 15 15 15H12.6V13.86H15C16.026 13.86 16.86 13.026 16.86 12C16.86 10.974 16.026 10.14 15 10.14H12.6V9ZM14.4 12.6H9.6V11.4H14.4V12.6Z", 51720 fill: "currentColor" 51721 }, null, -1)) 51722 ], 8, _hoisted_1$2p); 51723} 51724const CoreIconConnected = /* @__PURE__ */ _export_sfc(_sfc_main$2p, [["render", _sfc_render$2d]]); 51725const CoreIconConnected$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51726 __proto__: null, 51727 default: CoreIconConnected 51728}, Symbol.toStringTag, { value: "Module" })); 51729const _sfc_main$2o = { 51730 props: { 51731 settings: { 51732 type: Object, 51733 required: false 51734 } 51735 }, 51736 computed: { 51737 alt() { 51738 var _a, _b; 51739 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51740 }, 51741 id() { 51742 var _a, _b; 51743 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51744 } 51745 } 51746}; 51747const _hoisted_1$2o = ["aria-labelledby", "aria-label"];
51748const _hoisted_2$2f = ["id"]; 51749function _sfc_render$2c(_ctx, _cache, $props, $setup, $data, $options) { 51750 return openBlock(), createElementBlock("svg", { 51751 width: "24", 51752 height: "24", 51753 viewBox: "0 0 24 24", 51754 fill: "none", 51755 xmlns: "http://www.w3.org/2000/svg", 51756 role: "img", 51757 "aria-labelledby": `icon-title-${$options.id}`, 51758 "aria-label": $options.alt 51759 }, [ 51760 createBaseVNode("title", { 51761 id: `icon-title-${$options.id}` 51762 }, toDisplayString($options.alt), 9, _hoisted_2$2f), 51763 _cache[0] || (_cache[0] = createBaseVNode("path", { 51764 d: "M11.4 10.215H11.475V10.14V9V8.925H11.4H9C7.30258 8.925 5.925 10.3026 5.925 12C5.925 13.6974 7.30258 15.075 9 15.075H11.4H11.475V15V13.86V13.785H11.4H9C8.01542 13.785 7.215 12.9846 7.215 12C7.215 11.0154 8.01542 10.215 9 10.215H11.4ZM9.525 12.6V12.675H9.6H14.4H14.475V12.6V11.4V11.325H14.4H9.6H9.525V11.4V12.6ZM12.6 8.925H12.525V9V10.14V10.215H12.6H15C15.9846 10.215 16.785 11.0154 16.785 12C16.785 12.9846 15.9846 13.785 15 13.785H12.6H12.525V13.86V15V15.075H12.6H15C16.6974 15.075 18.075 13.6974 18.075 12C18.075 10.3026 16.6974 8.925 15 8.925H12.6Z", 51765 fill: "currentColor", 51766 stroke: "currentColor", 51767 "stroke-width": "0.15" 51768 }, null, -1)), 51769 _cache[1] || (_cache[1] = createBaseVNode("path", { 51770 d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", 51771 stroke: "currentColor", 51772 "stroke-width": "2", 51773 "stroke-linecap": "round", 51774 "stroke-linejoin": "round" 51775 }, null, -1)) 51776 ], 8, _hoisted_1$2o); 51777} 51778const CoreIconConnectedOutline = /* @__PURE__ */ _export_sfc(_sfc_main$2o, [["render", _sfc_render$2c]]); 51779const CoreIconConnectedOutline$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51780 __proto__: null, 51781 default: CoreIconConnectedOutline 51782}, Symbol.toStringTag, { value: "Module" })); 51783const _sfc_main$2n = { 51784 props: { 51785 settings: { 51786 type: Object, 51787 required: false 51788 } 51789 }, 51790 computed: { 51791 alt() { 51792 var _a, _b; 51793 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51794 }, 51795 id() { 51796 var _a, _b; 51797 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51798 } 51799 } 51800}; 51801const _hoisted_1$2n = ["aria-labelledby", "aria-label"]; 51802const _hoisted_2$2e = ["id"]; 51803function _sfc_render$2b(_ctx, _cache, $props, $setup, $data, $options) { 51804 return openBlock(), createElementBlock("svg", { 51805 width: "24", 51806 height: "24", 51807 viewBox: "0 0 24 24", 51808 fill: "none", 51809 xmlns: "http://www.w3.org/2000/svg", 51810 role: "img", 51811 "aria-labelledby": `icon-title-${$options.id}`, 51812 "aria-label": $options.alt 51813 }, [ 51814 createBaseVNode("title", { 51815 id: `icon-title-${$options.id}` 51816 }, toDisplayString($options.alt), 9, _hoisted_2$2e), 51817 _cache[0] || (_cache[0] = createBaseVNode("path", { 51818 d: "M20 15.7252C18.76 15.7252 17.55 15.5252 16.43 15.1552C16.33 15.1152 16.22 15.1052 16.12 15.1052C15.86 15.1052 15.61 15.2052 15.41 15.3952L13.21 17.5952C10.38 16.1452 8.06 13.8352 6.62 11.0052L8.82 8.80516C9.1 8.52516 9.18 8.13516 9.07 7.78516C8.7 6.66516 8.5 5.46516 8.5 4.21516C8.5 3.66516 8.05 3.21516 7.5 3.21516H4C3.45 3.21516 3 3.66516 3 4.21516C3 13.6052 10.61 21.2152 20 21.2152C20.55 21.2152 21 20.7652 21 20.2152V16.7252C21 16.1752 20.55 15.7252 20 15.7252ZM5.03 5.21516H6.53C6.6 6.10516 6.75 6.97516 6.99 7.80516L5.79 9.00516C5.38 7.80516 5.12 6.53516 5.03 5.21516ZM19 19.1852C17.68 19.0952 16.41 18.8352 15.2 18.4352L16.39 17.2452C17.24 17.4852 18.11 17.6352 18.99 17.6952V19.1852H19ZM18 9.21516H15.41L20.43 4.19516L19.02 2.78516L14 7.80516V5.21516H12V11.2152H18V9.21516Z", 51819 fill: "currentColor" 51820 }, null, -1)) 51821 ], 8, _hoisted_1$2n); 51822} 51823const CoreIconContact = /* @__PURE__ */ _export_sfc(_sfc_main$2n, [["render", _sfc_render$2b]]); 51824const CoreIconContact$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51825 __proto__: null, 51826 default: CoreIconContact 51827}, Symbol.toStringTag, { value: "Module" })); 51828const _sfc_main$2m = { 51829 props: { 51830 settings: { 51831 type: Object, 51832 required: false 51833 } 51834 }, 51835 computed: { 51836 alt() { 51837 var _a, _b; 51838 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51839 }, 51840 id() { 51841 var _a, _b; 51842 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51843 } 51844 } 51845}; 51846const _hoisted_1$2m = ["aria-labelledby", "aria-label"]; 51847const _hoisted_2$2d = ["id"]; 51848function _sfc_render$2a(_ctx, _cache, $props, $setup, $data, $options) { 51849 return openBlock(), createElementBlock("svg", { 51850 width: "24", 51851 height: "24",
51852 viewBox: "0 0 24 24", 51853 fill: "none", 51854 xmlns: "http://www.w3.org/2000/svg", 51855 role: "img", 51856 "aria-labelledby": `icon-title-${$options.id}`, 51857 "aria-label": $options.alt 51858 }, [ 51859 createBaseVNode("title", { 51860 id: `icon-title-${$options.id}` 51861 }, toDisplayString($options.alt), 9, _hoisted_2$2d), 51862 _cache[0] || (_cache[0] = createBaseVNode("path", { 51863 d: "M4 4H20C21.1 4 22 4.9 22 6V18C22 19.1 21.1 20 20 20H4C2.9 20 2 19.1 2 18V6C2 4.9 2.9 4 4 4Z", 51864 stroke: "currentColor", 51865 "stroke-width": "2", 51866 "stroke-linecap": "round", 51867 "stroke-linejoin": "round" 51868 }, null, -1)), 51869 _cache[1] || (_cache[1] = createBaseVNode("path", { 51870 d: "M22 6L12 13L2 6", 51871 stroke: "currentColor", 51872 "stroke-width": "2", 51873 "stroke-linecap": "round", 51874 "stroke-linejoin": "round" 51875 }, null, -1)) 51876 ], 8, _hoisted_1$2m); 51877} 51878const CoreIconContactEmail = /* @__PURE__ */ _export_sfc(_sfc_main$2m, [["render", _sfc_render$2a]]); 51879const CoreIconContactEmail$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51880 __proto__: null, 51881 default: CoreIconContactEmail 51882}, Symbol.toStringTag, { value: "Module" })); 51883const _sfc_main$2l = { 51884 props: { 51885 settings: { 51886 type: Object, 51887 required: false 51888 } 51889 }, 51890 computed: { 51891 alt() { 51892 var _a, _b; 51893 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51894 }, 51895 id() { 51896 var _a, _b; 51897 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51898 } 51899 } 51900}; 51901const _hoisted_1$2l = ["aria-labelledby", "aria-label"]; 51902const _hoisted_2$2c = ["id"]; 51903function _sfc_render$29(_ctx, _cache, $props, $setup, $data, $options) { 51904 return openBlock(), createElementBlock("svg", { 51905 width: "24", 51906 height: "24", 51907 viewBox: "0 0 24 24", 51908 fill: "none", 51909 xmlns: "http://www.w3.org/2000/svg", 51910 role: "img", 51911 "aria-labelledby": `icon-title-${$options.id}`, 51912 "aria-label": $options.alt 51913 }, [ 51914 createBaseVNode("title", { 51915 id: `icon-title-${$options.id}` 51916 }, toDisplayString($options.alt), 9, _hoisted_2$2c), 51917 _cache[0] || (_cache[0] = createBaseVNode("path", { 51918 d: "M6 9V2H18V9", 51919 stroke: "currentColor", 51920 "stroke-width": "2", 51921 "stroke-linecap": "round", 51922 "stroke-linejoin": "round" 51923 }, null, -1)), 51924 _cache[1] || (_cache[1] = createBaseVNode("path", { 51925 d: "M6 18H4C3.46957 18 2.96086 17.7893 2.58579 17.4142C2.21071 17.0391 2 16.5304 2 16V11C2 10.4696 2.21071 9.96086 2.58579 9.58579C2.96086 9.21071 3.46957 9 4 9H20C20.5304 9 21.0391 9.21071 21.4142 9.58579C21.7893 9.96086 22 10.4696 22 11V16C22 16.5304 21.7893 17.0391 21.4142 17.4142C21.0391 17.7893 20.5304 18 20 18H18", 51926 stroke: "currentColor", 51927 "stroke-width": "2", 51928 "stroke-linecap": "round", 51929 "stroke-linejoin": "round" 51930 }, null, -1)), 51931 _cache[2] || (_cache[2] = createBaseVNode("path", { 51932 d: "M18 14H6V22H18V14Z", 51933 stroke: "currentColor", 51934 "stroke-width": "2", 51935 "stroke-linecap": "round", 51936 "stroke-linejoin": "round" 51937 }, null, -1)) 51938 ], 8, _hoisted_1$2l); 51939} 51940const CoreIconContactFax = /* @__PURE__ */ _export_sfc(_sfc_main$2l, [["render", _sfc_render$29]]); 51941const CoreIconContactFax$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 51942 __proto__: null, 51943 default: CoreIconContactFax 51944}, Symbol.toStringTag, { value: "Module" })); 51945const _sfc_main$2k = { 51946 props: { 51947 settings: { 51948 type: Object, 51949 default: () => ({}) 51950 }, 51951 width: { 51952 type: String, 51953 default: "24" 51954 }, 51955 height: { 51956 type: String, 51957 default: "24" 51958 } 51959 }, 51960 computed: { 51961 alt() { 51962 var _a, _b; 51963 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 51964 }, 51965 id() { 51966 var _a, _b; 51967 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 51968 } 51969 } 51970}; 51971const _hoisted_1$2k = ["width", "height", "aria-labelledby", "aria-label"];
51972const _hoisted_2$2b = ["id"]; 51973function _sfc_render$28(_ctx, _cache, $props, $setup, $data, $options) { 51974 return openBlock(), createElementBlock("svg", { 51975 xmlns: "http://www.w3.org/2000/svg", 51976 width: $props.width, 51977 height: $props.height, 51978 viewBox: "0 0 24 25", 51979 fill: "none", 51980 "aria-labelledby": `icon-title-${$options.id}`, 51981 "aria-label": $options.alt 51982 }, [ 51983 createBaseVNode("title", { 51984 id: `icon-title-${$options.id}` 51985 }, toDisplayString($options.alt), 9, _hoisted_2$2b), 51986 _cache[0] || (_cache[0] = createBaseVNode("g", { "clip-path": "url(#clip0_5845_47954)" }, [ 51987 createBaseVNode("path", { 51988 d: "M13.17 4.03894L18 8.86894V20.0389H6V4.03894H13.17ZM14 2.03894H6C4.9 2.03894 4 2.93894 4 4.03894V20.0389C4 21.1389 4.9 22.0389 6 22.0389H18C19.1 22.0389 20 21.1389 20 20.0389V8.03894L14 2.03894ZM12 14.0389C13.1 14.0389 14 13.1389 14 12.0389C14 10.9389 13.1 10.0389 12 10.0389C10.9 10.0389 10 10.9389 10 12.0389C10 13.1389 10.9 14.0389 12 14.0389ZM16 17.4689C16 16.6589 15.52 15.9389 14.78 15.6189C13.93 15.2489 12.99 15.0389 12 15.0389C11.01 15.0389 10.07 15.2489 9.22 15.6189C8.48 15.9389 8 16.6589 8 17.4689V18.0389H16V17.4689Z", 51989 fill: "currentColor" 51990 }) 51991 ], -1)), 51992 _cache[1] || (_cache[1] = createBaseVNode("defs", null, [ 51993 createBaseVNode("clipPath", { id: "clip0_5845_47954" }, [ 51994 createBaseVNode("rect", { 51995 width: "24", 51996 height: "24", 51997 fill: "white", 51998 transform: "translate(0 0.0389404)" 51999 }) 52000 ]) 52001 ], -1)) 52002 ], 8, _hoisted_1$2k); 52003} 52004const CoreIconContactPage = /* @__PURE__ */ _export_sfc(_sfc_main$2k, [["render", _sfc_render$28]]); 52005const CoreIconContactPage$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52006 __proto__: null, 52007 default: CoreIconContactPage 52008}, Symbol.toStringTag, { value: "Module" })); 52009const _sfc_main$2j = { 52010 props: { 52011 settings: { 52012 type: Object, 52013 required: false 52014 } 52015 }, 52016 computed: { 52017 alt() { 52018 var _a, _b; 52019 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52020 }, 52021 id() { 52022 var _a, _b; 52023 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52024 } 52025 } 52026}; 52027const _hoisted_1$2j = ["aria-labelledby", "aria-label"]; 52028const _hoisted_2$2a = ["id"]; 52029function _sfc_render$27(_ctx, _cache, $props, $setup, $data, $options) { 52030 return openBlock(), createElementBlock("svg", { 52031 width: "24", 52032 height: "24", 52033 viewBox: "0 0 24 24", 52034 fill: "none", 52035 xmlns: "http://www.w3.org/2000/svg", 52036 role: "img", 52037 "aria-labelledby": `icon-title-${$options.id}`, 52038 "aria-label": $options.alt 52039 }, [ 52040 createBaseVNode("title", { 52041 id: `icon-title-${$options.id}` 52042 }, toDisplayString($options.alt), 9, _hoisted_2$2a), 52043 _cache[0] || (_cache[0] = createBaseVNode("path", { 52044 d: "M22 16.9201V19.9201C22.0011 20.1986 21.9441 20.4743 21.8325 20.7294C21.7209 20.9846 21.5573 21.2137 21.3521 21.402C21.1468 21.5902 20.9046 21.7336 20.6407 21.8228C20.3769 21.912 20.0974 21.9452 19.82 21.9201C16.7428 21.5857 13.787 20.5342 11.19 18.8501C8.77382 17.3148 6.72533 15.2663 5.18999 12.8501C3.49997 10.2413 2.44824 7.27109 2.11999 4.1801C2.095 3.90356 2.12787 3.62486 2.21649 3.36172C2.30512 3.09859 2.44756 2.85679 2.63476 2.65172C2.82196 2.44665 3.0498 2.28281 3.30379 2.17062C3.55777 2.05843 3.83233 2.00036 4.10999 2.0001H7.10999C7.5953 1.99532 8.06579 2.16718 8.43376 2.48363C8.80173 2.80008 9.04207 3.23954 9.10999 3.7201C9.23662 4.68016 9.47144 5.62282 9.80999 6.5301C9.94454 6.88802 9.97366 7.27701 9.8939 7.65098C9.81415 8.02494 9.62886 8.36821 9.35999 8.6401L8.08999 9.9101C9.51355 12.4136 11.5864 14.4865 14.09 15.9101L15.36 14.6401C15.6319 14.3712 15.9751 14.1859 16.3491 14.1062C16.7231 14.0264 17.1121 14.0556 17.47 14.1901C18.3773 14.5286 19.3199 14.7635 20.28 14.8901C20.7658 14.9586 21.2094 15.2033 21.5265 15.5776C21.8437 15.9519 22.0122 16.4297 22 16.9201Z", 52045 stroke: "currentColor", 52046 "stroke-width": "2", 52047 "stroke-linecap": "round", 52048 "stroke-linejoin": "round" 52049 }, null, -1)) 52050 ], 8, _hoisted_1$2j); 52051} 52052const CoreIconContactPhone = /* @__PURE__ */ _export_sfc(_sfc_main$2j, [["render", _sfc_render$27]]); 52053const CoreIconContactPhone$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52054 __proto__: null, 52055 default: CoreIconContactPhone 52056}, Symbol.toStringTag, { value: "Module" })); 52057const _sfc_main$2i = { 52058 props: { 52059 settings: { 52060 type: Object, 52061 required: false 52062 } 52063 }, 52064 computed: { 52065 alt() { 52066 var _a, _b; 52067 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52068 }, 52069 id() { 52070 var _a, _b; 52071 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52072 } 52073 } 52074}; 52075const _hoisted_1$2i = ["aria-labelledby", "aria-label"]; 52076const _hoisted_2$29 = ["id"]; 52077function _sfc_render$26(_ctx, _cache, $props, $setup, $data, $options) { 52078 return openBlock(), createElementBlock("svg", { 52079 width: "24", 52080 height: "24",
52081 viewBox: "0 0 24 24", 52082 fill: "none", 52083 xmlns: "http://www.w3.org/2000/svg", 52084 role: "img", 52085 "aria-labelledby": `icon-title-${$options.id}`, 52086 "aria-label": $options.alt 52087 }, [ 52088 createBaseVNode("title", { 52089 id: `icon-title-${$options.id}` 52090 }, toDisplayString($options.alt), 9, _hoisted_2$29), 52091 _cache[0] || (_cache[0] = createBaseVNode("path", { 52092 d: "M17 2H7C5.89543 2 5 2.89543 5 4V20C5 21.1046 5.89543 22 7 22H17C18.1046 22 19 21.1046 19 20V4C19 2.89543 18.1046 2 17 2Z", 52093 stroke: "currentColor", 52094 "stroke-width": "2", 52095 "stroke-linecap": "round", 52096 "stroke-linejoin": "round" 52097 }, null, -1)), 52098 _cache[1] || (_cache[1] = createBaseVNode("path", { 52099 d: "M12 18H12.01", 52100 stroke: "currentColor", 52101 "stroke-width": "2", 52102 "stroke-linecap": "round", 52103 "stroke-linejoin": "round" 52104 }, null, -1)) 52105 ], 8, _hoisted_1$2i); 52106} 52107const CoreIconContactSmartphone = /* @__PURE__ */ _export_sfc(_sfc_main$2i, [["render", _sfc_render$26]]); 52108const CoreIconContactSmartphone$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52109 __proto__: null, 52110 default: CoreIconContactSmartphone 52111}, Symbol.toStringTag, { value: "Module" })); 52112const _sfc_main$2h = { 52113 props: { 52114 settings: { 52115 type: Object, 52116 required: false 52117 } 52118 }, 52119 computed: { 52120 alt() { 52121 var _a, _b; 52122 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52123 }, 52124 id() { 52125 var _a, _b; 52126 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52127 } 52128 } 52129}; 52130const _hoisted_1$2h = ["aria-labelledby", "aria-label"]; 52131const _hoisted_2$28 = ["id"]; 52132function _sfc_render$25(_ctx, _cache, $props, $setup, $data, $options) { 52133 return openBlock(), createElementBlock("svg", { 52134 width: "24", 52135 height: "24", 52136 viewBox: "0 0 24 24", 52137 fill: "none", 52138 xmlns: "http://www.w3.org/2000/svg", 52139 role: "img", 52140 "aria-labelledby": `icon-title-${$options.id}`, 52141 "aria-label": $options.alt 52142 }, [ 52143 createBaseVNode("title", { 52144 id: `icon-title-${$options.id}` 52145 }, toDisplayString($options.alt), 9, _hoisted_2$28), 52146 _cache[0] || (_cache[0] = createBaseVNode("path", { 52147 d: "M19 3H5C3.89543 3 3 3.89543 3 5V19C3 20.1046 3.89543 21 5 21H19C20.1046 21 21 20.1046 21 19V5C21 3.89543 20.1046 3 19 3Z", 52148 stroke: "currentColor", 52149 "stroke-width": "2", 52150 "stroke-linecap": "round", 52151 "stroke-linejoin": "round" 52152 }, null, -1)), 52153 _cache[1] || (_cache[1] = createBaseVNode("path", { 52154 d: "M12 3V21", 52155 stroke: "currentColor", 52156 "stroke-width": "2", 52157 "stroke-linecap": "round", 52158 "stroke-linejoin": "round" 52159 }, null, -1)) 52160 ], 8, _hoisted_1$2h); 52161} 52162const CoreIconContainersIcon = /* @__PURE__ */ _export_sfc(_sfc_main$2h, [["render", _sfc_render$25]]); 52163const CoreIconContainersIcon$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52164 __proto__: null, 52165 default: CoreIconContainersIcon 52166}, Symbol.toStringTag, { value: "Module" })); 52167const _sfc_main$2g = { 52168 props: { 52169 settings: { 52170 type: Object, 52171 required: false 52172 } 52173 }, 52174 computed: { 52175 alt() { 52176 var _a, _b; 52177 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52178 }, 52179 id() { 52180 var _a, _b; 52181 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52182 } 52183 } 52184}; 52185const _hoisted_1$2g = ["aria-labelledby", "aria-label"]; 52186const _hoisted_2$27 = ["id"]; 52187function _sfc_render$24(_ctx, _cache, $props, $setup, $data, $options) { 52188 return openBlock(), createElementBlock("svg", { 52189 width: "24", 52190 height: "24", 52191 viewBox: "0 0 24 24", 52192 fill: "none", 52193 xmlns: "http://www.w3.org/2000/svg", 52194 role: "img", 52195 "aria-labelledby": `icon-title-${$options.id}`, 52196 "aria-label": $options.alt 52197 }, [ 52198 createBaseVNode("title", { 52199 id: `icon-title-${$options.id}` 52200 }, toDisplayString($options.alt), 9, _hoisted_2$27), 52201 _cache[0] || (_cache[0] = createBaseVNode("path", { 52202 d: "M21 5C19.89 4.65 18.67 4.5 17.5 4.5C15.55 4.5 13.45 4.9 12 6C10.55 4.9 8.45 4.5 6.5 4.5C4.55 4.5 2.45 4.9 1 6V20.65C1 20.9 1.25 21.15 1.5 21.15C1.6 21.15 1.65 21.1 1.75 21.1C3.1 20.45 5.05 20 6.5 20C8.45 20 10.55 20.4 12 21.5C13.35 20.65 15.8 20 17.5 20C19.15 20 20.85 20.3 22.25 21.05C22.35 21.1 22.4 21.1 22.5 21.1C22.75 21.1 23 20.85 23 20.6V6C22.4 5.55 21.75 5.25 21 5ZM3
5220218.5V7C4.1 6.65 5.3 6.5 6.5 6.5C7.84 6.5 9.63 6.91 11 7.49V18.99C9.63 18.41 7.84 18 6.5 18C5.3 18 4.1 18.15 3 18.5ZM21 18.5C19.9 18.15 18.7 18 17.5 18C16.16 18 14.37 18.41 13 18.99V7.49C14.37 6.9 16.16 6.5 17.5 6.5C18.7 6.5 19.9 6.65 21 7V18.5Z", 52203 fill: "currentColor" 52204 }, null, -1)) 52205 ], 8, _hoisted_1$2g); 52206} 52207const CoreIconContentLibrary = /* @__PURE__ */ _export_sfc(_sfc_main$2g, [["render", _sfc_render$24]]); 52208const CoreIconContentLibrary$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52209 __proto__: null, 52210 default: CoreIconContentLibrary 52211}, Symbol.toStringTag, { value: "Module" })); 52212const _hoisted_1$2f = ["aria-labelledby", "aria-label"]; 52213const _hoisted_2$26 = ["id"]; 52214const _sfc_main$2f = { 52215 __name: "CoreIconContentLibraryMedia", 52216 props: { 52217 settings: { 52218 type: Object, 52219 required: false 52220 } 52221 }, 52222 setup(__props) { 52223 const props = __props; 52224 const alt = computed(() => { 52225 var _a, _b; 52226 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "Media Management Icon"; 52227 }); 52228 const id = computed(() => { 52229 var _a, _b; 52230 return ((_a = props.settings) == null ? void 0 : _a.id) || ((_b = props.settings) == null ? void 0 : _b.icon); 52231 }); 52232 return (_ctx, _cache) => { 52233 return openBlock(), createElementBlock("svg", { 52234 width: "24", 52235 height: "25",
52236 viewBox: "0 0 24 25", 52237 fill: "none", 52238 xmlns: "http://www.w3.org/2000/svg", 52239 "aria-labelledby": `icon-title-${unref(id)}`, 52240 "aria-label": unref(alt) 52241 }, [ 52242 createBaseVNode("title", { 52243 id: `icon-title-${unref(id)}` 52244 }, toDisplayString(unref(alt)), 9, _hoisted_2$26), 52245 _cache[0] || (_cache[0] = createBaseVNode("path", { 52246 "fill-rule": "evenodd", 52247 "clip-rule": "evenodd", 52248 d: "M3 4.56672C3 3.91502 3.5283 3.38672 4.18 3.38672H6V6.38672H3V4.56672ZM3 8.38672H6V11.3867H3V8.38672ZM1 4.56672V7.38672V12.3867V17.3867V20.2067C1 21.963 2.42373 23.3867 4.18 23.3867H7H17H19.82C21.5763 23.3867 23 21.963 23 20.2067V17.3867V12.3867V7.38672V4.56672C23 2.81045 21.5763 1.38672 19.82 1.38672H17H7H4.18C2.42373 1.38672 1 2.81045 1 4.56672ZM21 6.38672V4.56672C21 3.91502 20.4717 3.38672 19.82 3.38672H18V6.38672H21ZM18 8.38672H21V11.3867H18V8.38672ZM16 7.38672V3.38672H8V7.38672V11.3867H16V7.38672ZM21 13.3867V16.3867H18V13.3867H21ZM21 18.3867H18V21.3867H19.82C20.4717 21.3867 21 20.8584 21 20.2067V18.3867ZM16 13.3867V17.3867V21.3867H8V17.3867V13.3867H16ZM3 18.3867V20.2067C3 20.8584 3.5283 21.3867 4.18 21.3867H6V18.3867H3ZM6 16.3867H3V13.3867H6V16.3867Z", 52249 fill: "currentColor" 52250 }, null, -1)) 52251 ], 8, _hoisted_1$2f); 52252 }; 52253 } 52254}; 52255const CoreIconContentLibraryMedia = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52256 __proto__: null, 52257 default: _sfc_main$2f 52258}, Symbol.toStringTag, { value: "Module" })); 52259const _sfc_main$2e = { 52260 props: { 52261 settings: { 52262 type: Object, 52263 required: false 52264 } 52265 }, 52266 computed: { 52267 alt() { 52268 var _a, _b; 52269 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52270 }, 52271 id() { 52272 var _a, _b; 52273 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52274 } 52275 } 52276}; 52277const _hoisted_1$2e = ["aria-labelledby", "aria-label"]; 52278const _hoisted_2$25 = ["id"]; 52279function _sfc_render$23(_ctx, _cache, $props, $setup, $data, $options) { 52280 return openBlock(), createElementBlock("svg", { 52281 width: "24", 52282 height: "24", 52283 version: "1.1", 52284 xmlns: "http://www.w3.org/2000/svg", 52285 "xmlns:xlink": "http://www.w3.org/1999/xlink", 52286 viewBox: "0 0 30 30", 52287 style: { "enable-background": "new 0 0 30 30" }, 52288 "aria-labelledby": `icon-title-${$options.id}`, 52289 "aria-label": $options.alt, 52290 fill: "currentColor" 52291 }, [ 52292 createBaseVNode("title", { 52293 id: `icon-title-${$options.id}` 52294 }, toDisplayString($options.alt), 9, _hoisted_2$25), 52295 _cache[0] || (_cache[0] = createBaseVNode("path", { d: "M2.5,23.1h25v5h-25V23.1z M6.9,19.4h3l1.6-4.5h7.1l1.6,4.5h3L16.6,1.9h-3.1L6.9,19.4z M12.4,12.4l2.5-7.2h0.1\n l2.5,7.2H12.4z" }, null, -1)) 52296 ], 8, _hoisted_1$2e); 52297} 52298const CoreIconCopy = /* @__PURE__ */ _export_sfc(_sfc_main$2e, [["render", _sfc_render$23]]); 52299const CoreIconCopy$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52300 __proto__: null, 52301 default: CoreIconCopy 52302}, Symbol.toStringTag, { value: "Module" })); 52303const _sfc_main$2d = { 52304 props: { 52305 settings: { 52306 type: Object, 52307 required: false 52308 } 52309 }, 52310 computed: { 52311 alt() { 52312 var _a, _b; 52313 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52314 }, 52315 id() { 52316 var _a, _b; 52317 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52318 } 52319 } 52320}; 52321const _hoisted_1$2d = ["aria-labelledby", "aria-label"]; 52322const _hoisted_2$24 = { id: "`icon-title-${id}`" }; 52323function _sfc_render$22(_ctx, _cache, $props, $setup, $data, $options) { 52324 return openBlock(), createElementBlock("svg", { 52325 width: "24", 52326 height: "24", 52327 viewBox: "0 0 24 24", 52328 fill: "none", 52329 xmlns: "http://www.w3.org/2000/svg", 52330 role: "img", 52331 "aria-labelledby": `icon-title-${$options.id}`, 52332 "aria-label": $options.alt 52333 }, [ 52334 createBaseVNode("title", _hoisted_2$24, toDisplayString($options.alt), 1), 52335 _cache[0] || (_cache[0] = createBaseVNode("g", { "clip-path": "url(#clip0_548_2917)" }, [ 52336 createBaseVNode("path", { 52337 d: "M11.88 9.14C13.16 9.2 13.49 10.29 13.51 10.8H15.3C15.22 8.82 13.81 7.61 11.85 7.61C9.64 7.61 8 9 8 12.14C8 14.08 8.93 16.38 11.84 16.38C14.06 16.38 15.25 14.73 15.28 13.43H13.49C13.46 14.02 13.04 14.81 11.86 14.87C10.55 14.83 10 13.81 10 12.14C10 9.25 11.28 9.16 11.88 9.14ZM12 2C6.48 2 2 6.48 2 12C2 17.52 6.48 22 12 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 12 2ZM12 20C7.59 20 4 16.41 4 12C4 7.59 7.59 4 12 4C16.41 4 20 7.59 20 12C20 16.41 16.41 20 12 20Z", 52338 fill: "currentColor" 52339 }) 52340 ], -1)), 52341 _cache[1] || (_cache[1] = createBaseVNode("defs", null, [ 52342 createBaseVNode("clipPath", { id: "clip0_548_2917" }, [ 52343 createBaseVNode("rect", { 52344 width: "24", 52345 height: "24", 52346 fill: "white" 52347 }) 52348 ]) 52349 ], -1)) 52350 ], 8, _hoisted_1$2d); 52351} 52352const CoreIconCopyright = /* @__PURE__ */ _export_sfc(_sfc_main$2d, [["render", _sfc_render$22]]); 52353const CoreIconCopyright$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52354 __proto__: null, 52355 default: CoreIconCopyright 52356}, Symbol.toStringTag, { value: "Module" })); 52357const _sfc_main$2c = { 52358 props: { 52359 settings: { 52360 type: Object, 52361 required: false 52362 } 52363 }, 52364 computed: { 52365 alt() { 52366 var _a, _b; 52367 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52368 }, 52369 id() { 52370 var _a, _b; 52371 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52372 } 52373 } 52374}; 52375const _hoisted_1$2c = ["aria-labelledby", "aria-label"]; 52376const _hoisted_2$23 = ["id"]; 52377function _sfc_render$21(_ctx, _cache, $props, $setup, $data, $options) { 52378 return openBlock(), createElementBlock("svg", { 52379 xmlns: "http://www.w3.org/2000/svg", 52380 width: "24", 52381 height: "24",
52382 viewBox: "0 0 24 24", 52383 fill: "none", 52384 role: "img", 52385 "aria-labelledby": `icon-title-${$options.id}`, 52386 "aria-label": $options.alt 52387 }, [ 52388 createBaseVNode("title", { 52389 id: `icon-title-${$options.id}` 52390 }, toDisplayString($options.alt), 9, _hoisted_2$23), 52391 _cache[0] || (_cache[0] = createBaseVNode("path", { 52392 d: "M15.17 14L13.58 12.41L15 11L19 15L15 19L13.59 17.59L15.17 16H7C5.9 16 5 15.1 5 14V5H7V14H15.17Z", 52393 fill: "black" 52394 }, null, -1)) 52395 ], 8, _hoisted_1$2c); 52396} 52397const CoreIconCornerDownRight = /* @__PURE__ */ _export_sfc(_sfc_main$2c, [["render", _sfc_render$21]]); 52398const CoreIconCornerDownRight$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52399 __proto__: null, 52400 default: CoreIconCornerDownRight 52401}, Symbol.toStringTag, { value: "Module" })); 52402const _sfc_main$2b = { 52403 props: { 52404 settings: { 52405 type: Object, 52406 required: false 52407 } 52408 }, 52409 computed: { 52410 alt() { 52411 var _a, _b; 52412 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52413 }, 52414 id() { 52415 var _a, _b; 52416 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52417 } 52418 } 52419}; 52420const _hoisted_1$2b = ["aria-labelledby", "aria-label"]; 52421const _hoisted_2$22 = ["id"]; 52422function _sfc_render$20(_ctx, _cache, $props, $setup, $data, $options) { 52423 return openBlock(), createElementBlock("svg", { 52424 xmlns: "http://www.w3.org/2000/svg", 52425 width: "24", 52426 height: "24", 52427 viewBox: "0 0 24 24", 52428 fill: "none", 52429 role: "img", 52430 "aria-labelledby": `icon-title-${$options.id}`, 52431 "aria-label": $options.alt 52432 }, [ 52433 createBaseVNode("title", { 52434 id: `icon-title-${$options.id}` 52435 }, toDisplayString($options.alt), 9, _hoisted_2$22), 52436 _cache[0] || (_cache[0] = createBaseVNode("path", { 52437 d: "M21 4H3C1.89543 4 1 4.89543 1 6V18C1 19.1046 1.89543 20 3 20H21C22.1046 20 23 19.1046 23 18V6C23 4.89543 22.1046 4 21 4Z", 52438 stroke: "currentColor", 52439 "stroke-width": "2", 52440 "stroke-linecap": "round", 52441 "stroke-linejoin": "round" 52442 }, null, -1)), 52443 _cache[1] || (_cache[1] = createBaseVNode("path", { 52444 d: "M1 10H23", 52445 stroke: "currentColor", 52446 "stroke-width": "2", 52447 "stroke-linecap": "round", 52448 "stroke-linejoin": "round" 52449 }, null, -1)) 52450 ], 8, _hoisted_1$2b); 52451} 52452const CoreIconCreditCard = /* @__PURE__ */ _export_sfc(_sfc_main$2b, [["render", _sfc_render$20]]); 52453const CoreIconCreditCard$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52454 __proto__: null, 52455 default: CoreIconCreditCard 52456}, Symbol.toStringTag, { value: "Module" })); 52457const _sfc_main$2a = { 52458 props: { 52459 settings: { 52460 type: Object, 52461 required: false 52462 } 52463 }, 52464 computed: { 52465 alt() { 52466 var _a, _b; 52467 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52468 }, 52469 id() { 52470 var _a, _b; 52471 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52472 } 52473 } 52474}; 52475const _hoisted_1$2a = ["aria-labelledby", "aria-label"]; 52476const _hoisted_2$21 = ["id"]; 52477function _sfc_render$1$(_ctx, _cache, $props, $setup, $data, $options) { 52478 return openBlock(), createElementBlock("svg", { 52479 xmlns: "http://www.w3.org/2000/svg", 52480 width: "24", 52481 height: "25", 52482 viewBox: "0 0 24 25", 52483 fill: "none", 52484 role: "img", 52485 "aria-labelledby": `icon-title-${$options.id}`, 52486 "aria-label": $options.alt 52487 }, [ 52488 createBaseVNode("title", { 52489 id: `icon-title-${$options.id}` 52490 }, toDisplayString($options.alt), 9, _hoisted_2$21), 52491 _cache[0] || (_cache[0] = createBaseVNode("path", { 52492 d: "M17 15.1182H19V7.11816C19 6.01816 18.1 5.11816 17 5.11816H9V7.11816H17V15.1182ZM7 17.1182V1.11816H5V5.11816H1V7.11816H5V17.1182C5 18.2182 5.9 19.1182 7 19.1182H17V23.1182H19V19.1182H23V17.1182H7Z", 52493 fill: "currentColor" 52494 }, null, -1)) 52495 ], 8, _hoisted_1$2a); 52496} 52497const CoreIconCrop = /* @__PURE__ */ _export_sfc(_sfc_main$2a, [["render", _sfc_render$1$]]); 52498const CoreIconCrop$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52499 __proto__: null, 52500 default: CoreIconCrop 52501}, Symbol.toStringTag, { value: "Module" })); 52502const _sfc_main$29 = { 52503 props: { 52504 settings: { 52505 type: Object, 52506 required: false 52507 } 52508 }, 52509 computed: { 52510 alt() { 52511 var _a, _b; 52512 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52513 }, 52514 id() { 52515 var _a, _b; 52516 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52517 } 52518 } 52519}; 52520const _hoisted_1$29 = ["aria-labelledby", "aria-label"]; 52521const _hoisted_2$20 = ["id"]; 52522function _sfc_render$1_(_ctx, _cache, $props, $setup, $data, $options) { 52523 return openBlock(), createElementBlock("svg", { 52524 width: "24", 52525 height: "24",
52526 viewBox: "0 0 24 24", 52527 fill: "none", 52528 xmlns: "http://www.w3.org/2000/svg", 52529 role: "img", 52530 "aria-labelledby": `icon-title-${$options.id}`, 52531 "aria-label": $options.alt 52532 }, [ 52533 createBaseVNode("title", { 52534 id: `icon-title-${$options.id}` 52535 }, toDisplayString($options.alt), 9, _hoisted_2$20), 52536 _cache[0] || (_cache[0] = createBaseVNode("path", { 52537 d: "M21.275 16.87L22.415 15.87L21.415 14.14L19.965 14.63C19.645 14.36 19.285 14.15 18.885 14L18.585 12.5H16.585L16.285 13.99C15.885 14.14 15.525 14.35 15.205 14.62L13.755 14.13L12.755 15.86L13.895 16.86C13.815 17.36 13.815 17.62 13.895 18.12L12.755 19.12L13.755 20.85L15.205 20.36C15.525 20.63 15.885 20.84 16.285 20.99L16.585 22.5H18.585L18.885 21.01C19.285 20.86 19.645 20.65 19.965 20.38L21.415 20.87L22.415 19.14L21.275 18.14C21.355 17.63 21.355 17.37 21.275 16.87ZM17.585 19.5C16.485 19.5 15.585 18.6 15.585 17.5C15.585 16.4 16.485 15.5 17.585 15.5C18.685 15.5 19.585 16.4 19.585 17.5C19.585 18.6 18.685 19.5 17.585 19.5ZM19.585 10.5C19.585 5.53 15.555 1.5 10.585 1.5C7.75496 1.5 5.23496 2.82 3.58496 4.86V2.5H1.58496V8.5H7.58496V6.5H4.84496C6.11496 4.69 8.21496 3.5 10.585 3.5C14.445 3.5 17.585 6.64 17.585 10.5H19.585ZM9.44496 17.41C6.45496 16.92 4.09496 14.51 3.66496 11.5H1.64496C2.14496 16 5.95496 19.5 10.585 19.5C10.605 19.5 10.635 19.5 10.655 19.5L9.44496 17.41Z", 52538 fill: "currentColor" 52539 }, null, -1)) 52540 ], 8, _hoisted_1$29); 52541} 52542const CoreIconDefault = /* @__PURE__ */ _export_sfc(_sfc_main$29, [["render", _sfc_render$1_]]); 52543const CoreIconDefault$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52544 __proto__: null, 52545 default: CoreIconDefault 52546}, Symbol.toStringTag, { value: "Module" })); 52547const _sfc_main$28 = { 52548 props: { 52549 settings: { 52550 type: Object, 52551 required: false 52552 } 52553 }, 52554 computed: { 52555 alt() { 52556 var _a, _b; 52557 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52558 }, 52559 id() { 52560 var _a, _b; 52561 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52562 } 52563 } 52564}; 52565const _hoisted_1$28 = ["aria-labelledby", "aria-label"]; 52566const _hoisted_2$1$ = ["id"]; 52567function _sfc_render$1Z(_ctx, _cache, $props, $setup, $data, $options) { 52568 return openBlock(), createElementBlock("svg", { 52569 width: "24", 52570 height: "24", 52571 viewBox: "0 0 24 24", 52572 fill: "none", 52573 xmlns: "http://www.w3.org/2000/svg", 52574 role: "img", 52575 "aria-labelledby": `icon-title-${$options.id}`, 52576 "aria-label": $options.alt 52577 }, [ 52578 createBaseVNode("title", { 52579 id: `icon-title-${$options.id}` 52580 }, toDisplayString($options.alt), 9, _hoisted_2$1$), 52581 _cache[0] || (_cache[0] = createStaticVNode('<path d="M12 22C6.49 22 2 17.51 2 12C2 6.49 6.49 2 12 2C17.51 2 22 6.04 22 11C22 14.31 19.31 17 16 17H14.23C13.95 17 13.73 17.22 13.73 17.5C13.73 17.62 13.78 17.73 13.86 17.83C14.27 18.3 14.5 18.89 14.5 19.5C14.5 20.88 13.38 22 12 22ZM12 4C7.59 4 4 7.59 4 12C4 16.41 7.59 20 12 20C12.28 20 12.5 19.78 12.5 19.5C12.5 19.34 12.42 19.22 12.36 19.15C11.95 18.69 11.73 18.1 11.73 17.5C11.73 16.12 12.85 15 14.23 15H16C18.21 15 20 13.21 20 11C20 7.14 16.41 4 12 4Z" fill="currentColor"></path><path d="M6.5 13C7.32843 13 8 12.3284 8 11.5C8 10.6716 7.32843 10 6.5 10C5.67157 10 5 10.6716 5 11.5C5 12.3284 5.67157 13 6.5 13Z" fill="currentColor"></path><path d="M9.5 9C10.3284 9 11 8.32843 11 7.5C11 6.67157 10.3284 6 9.5 6C8.67157 6 8 6.67157 8 7.5C8 8.32843 8.67157 9 9.5 9Z" fill="currentColor"></path><path d="M14.5 9C15.3284 9 16 8.32843 16 7.5C16 6.67157 15.3284 6 14.5 6C13.6716 6 13 6.67157 13 7.5C13 8.32843 13.6716 9 14.5 9Z" fill="currentColor"></path><path d="M17.5 13C18.3284 13 19 12.3284 19 11.5C19 10.6716 18.3284 10 17.5 10C16.6716 10 16 10.6716 16 11.5C16 12.3284 16.6716 13 17.5 13Z" fill="currentColor"></path>', 5)) 52582 ], 8, _hoisted_1$28); 52583} 52584const CoreIconDesign = /* @__PURE__ */ _export_sfc(_sfc_main$28, [["render", _sfc_render$1Z]]); 52585const CoreIconDesign$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52586 __proto__: null, 52587 default: CoreIconDesign 52588}, Symbol.toStringTag, { value: "Module" })); 52589const _sfc_main$27 = { 52590 props: { 52591 settings: { 52592 type: Object, 52593 required: false 52594 } 52595 }, 52596 computed: { 52597 alt() { 52598 var _a, _b; 52599 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52600 }, 52601 id() { 52602 var _a, _b; 52603 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52604 } 52605 } 52606}; 52607const _hoisted_1$27 = ["aria-labelledby", "aria-label"]; 52608const _hoisted_2$1_ = ["id"]; 52609function _sfc_render$1Y(_ctx, _cache, $props, $setup, $data, $options) { 52610 return openBlock(), createElementBlock("svg", { 52611 width: "24", 52612 height: "24",
52613 viewBox: "0 0 24 24", 52614 fill: "none", 52615 xmlns: "http://www.w3.org/2000/svg", 52616 role: "img", 52617 "aria-labelledby": `icon-title-${$options.id}`, 52618 "aria-label": $options.alt 52619 }, [ 52620 createBaseVNode("title", { 52621 id: `icon-title-${$options.id}` 52622 }, toDisplayString($options.alt), 9, _hoisted_2$1_), 52623 _cache[0] || (_cache[0] = createBaseVNode("path", { 52624 "fill-rule": "evenodd", 52625 "clip-rule": "evenodd", 52626 d: "M3.60193 6.38361C3.60193 5.94125 3.96053 5.58264 4.40289 5.58264H17.2183C17.6607 5.58264 18.0193 5.94125 18.0193 6.38361V7.74995H19.6212V6.38361C19.6212 5.05653 18.5454 3.98071 17.2183 3.98071H4.40289C3.07581 3.98071 2 5.05653 2 6.38361V14.3933C2 15.7203 3.07581 16.7961 4.40289 16.7961H10.0096V18.3981H7.60673C7.16437 18.3981 6.80576 18.7567 6.80576 19.1991C6.80576 19.6414 7.16437 20 7.60673 20H14.0144C14.4568 20 14.8154 19.6414 14.8154 19.1991C14.8154 18.7567 14.4568 18.3981 14.0144 18.3981H11.6116V16.7961H13.3077V15.1942H10.8232L10.8106 15.1941L10.798 15.1942H4.40289C3.96053 15.1942 3.60193 14.8356 3.60193 14.3933V6.38361Z", 52627 fill: "currentColor" 52628 }, null, -1)), 52629 _cache[1] || (_cache[1] = createBaseVNode("path", { 52630 "fill-rule": "evenodd", 52631 "clip-rule": "evenodd", 52632 d: "M16.5602 10.3983C16.5145 10.4508 16.473 10.5405 16.473 10.658V18.8457C16.473 18.9632 16.5145 19.0529 16.5602 19.1055C16.6047 19.1565 16.6406 19.1624 16.6568 19.1624H21.1095C21.1256 19.1624 21.1616 19.1565 21.206 19.1055C21.2517 19.0529 21.2933 18.9632 21.2933 18.8457V10.658C21.2933 10.5405 21.2517 10.4508 21.206 10.3983C21.1616 10.3472 21.1256 10.3413 21.1095 10.3413H16.6568C16.6406 10.3413 16.6047 10.3472 16.5602 10.3983ZM15.0595 10.658C15.0595 9.79801 15.6855 8.92786 16.6568 8.92786H21.1095C22.0807 8.92786 22.7067 9.79801 22.7067 10.658V18.8457C22.7067 19.7057 22.0807 20.5759 21.1095 20.5759H16.6568C15.6855 20.5759 15.0595 19.7057 15.0595 18.8457V10.658Z", 52633 fill: "currentColor" 52634 }, null, -1)), 52635 _cache[2] || (_cache[2] = createBaseVNode("path", { 52636 "fill-rule": "evenodd", 52637 "clip-rule": "evenodd", 52638 d: "M18.4471 18.2809C18.4471 17.9967 18.6775 17.7664 18.9616 17.7664H18.9676C19.2518 17.7664 19.4821 17.9967 19.4821 18.2809C19.4821 18.565 19.2518 18.7954 18.9676 18.7954H18.9616C18.6775 18.7954 18.4471 18.565 18.4471 18.2809Z", 52639 fill: "currentColor" 52640 }, null, -1)) 52641 ], 8, _hoisted_1$27); 52642} 52643const CoreIconDevices = /* @__PURE__ */ _export_sfc(_sfc_main$27, [["render", _sfc_render$1Y]]); 52644const CoreIconDevices$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52645 __proto__: null, 52646 default: CoreIconDevices 52647}, Symbol.toStringTag, { value: "Module" })); 52648const _hoisted_1$26 = ["aria-labelledby", "aria-label"]; 52649const _hoisted_2$1Z = ["id"]; 52650const _sfc_main$26 = { 52651 __name: "CoreIconDiagonalRightArrow", 52652 props: { 52653 settings: { 52654 type: Object, 52655 required: false 52656 } 52657 }, 52658 setup(__props) { 52659 const props = __props; 52660 const alt = computed(() => { 52661 var _a, _b; 52662 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "Arrow Icon"; 52663 }); 52664 const id = computed(() => { 52665 var _a, _b; 52666 return ((_a = props.settings) == null ? void 0 : _a.id) || ((_b = props.settings) == null ? void 0 : _b.icon); 52667 }); 52668 return (_ctx, _cache) => { 52669 return openBlock(), createElementBlock("svg", { 52670 xmlns: "http://www.w3.org/2000/svg", 52671 width: "24", 52672 height: "25",
52673 viewBox: "0 0 24 25", 52674 fill: "none", 52675 role: "img", 52676 "aria-labelledby": `icon-title-${unref(id)}`, 52677 "aria-label": unref(alt) 52678 }, [ 52679 createBaseVNode("title", { 52680 id: `icon-title-${unref(id)}` 52681 }, toDisplayString(unref(alt)), 9, _hoisted_2$1Z), 52682 _cache[0] || (_cache[0] = createBaseVNode("path", { 52683 d: "M3 12.7012L22 3.70117L13 22.7012L11 14.7012L3 12.7012Z", 52684 stroke: "currentColor", 52685 "stroke-width": "2", 52686 "stroke-linecap": "round", 52687 "stroke-linejoin": "round" 52688 }, null, -1)) 52689 ], 8, _hoisted_1$26); 52690 }; 52691 } 52692}; 52693const CoreIconDiagonalRightArrow = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52694 __proto__: null, 52695 default: _sfc_main$26 52696}, Symbol.toStringTag, { value: "Module" })); 52697const _sfc_main$25 = { 52698 props: { 52699 settings: { 52700 type: Object, 52701 required: false 52702 } 52703 }, 52704 computed: { 52705 alt() { 52706 var _a, _b; 52707 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon) || "Disclosures"; 52708 }, 52709 id() { 52710 var _a, _b; 52711 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52712 } 52713 } 52714}; 52715const _hoisted_1$25 = ["aria-labelledby", "aria-label"];
52716const _hoisted_2$1Y = ["id"]; 52717function _sfc_render$1X(_ctx, _cache, $props, $setup, $data, $options) { 52718 return openBlock(), createElementBlock("svg", { 52719 width: "24", 52720 height: "25", 52721 viewBox: "0 0 24 25", 52722 fill: "none", 52723 xmlns: "http://www.w3.org/2000/svg", 52724 "aria-labelledby": `icon-title-${$options.id}`, 52725 "aria-label": $options.alt 52726 }, [ 52727 createBaseVNode("title", { 52728 id: `icon-title-${$options.id}` 52729 }, toDisplayString($options.alt), 9, _hoisted_2$1Y), 52730 _cache[0] || (_cache[0] = createBaseVNode("path", { 52731 "fill-rule": "evenodd", 52732 "clip-rule": "evenodd", 52733 d: "M4.79138 6.77008C4.79138 6.32772 5.14999 5.96912 5.59235 5.96912H18.4078C18.8501 5.96912 19.2087 6.32772 19.2087 6.77008V10.9492H20.8107V6.77008C20.8107 5.443 19.7349 4.36719 18.4078 4.36719H5.59235C4.26527 4.36719 3.18945 5.443 3.18945 6.77008V14.7797C3.18945 16.1068 4.26527 17.1826 5.59235 17.1826H11.1992V18.7852H8.79608C8.35372 18.7852 7.99512 19.1438 7.99512 19.5861C7.99512 20.0285 8.35372 20.3871 8.79608 20.3871H11.9656C11.971 20.3873 11.9765 20.3875 11.982 20.3876C11.988 20.3878 11.9941 20.3878 12.0002 20.3878C12.0118 20.3878 12.0233 20.3876 12.0348 20.3871H15.2038C15.6462 20.3871 16.0048 20.0285 16.0048 19.5861C16.0048 19.1438 15.6462 18.7852 15.2038 18.7852H12.8011V17.1826H16.0947V15.5807H5.59235C5.14999 15.5807 4.79138 15.2221 4.79138 14.7797V6.77008Z", 52734 fill: "currentColor" 52735 }, null, -1)), 52736 _cache[1] || (_cache[1] = createBaseVNode("path", { 52737 d: "M21.6543 14.4902V13.4902C21.6543 12.3902 20.7543 11.4902 19.6543 11.4902C18.5543 11.4902 17.6543 12.3902 17.6543 13.4902V14.4902C17.1043 14.4902 16.6543 14.9402 16.6543 15.4902V18.4902C16.6543 19.0402 17.1043 19.4902 17.6543 19.4902H21.6543C22.2043 19.4902 22.6543 19.0402 22.6543 18.4902V15.4902C22.6543 14.9402 22.2043 14.4902 21.6543 14.4902ZM20.6543 14.4902H18.6543V13.4902C18.6543 12.9402 19.1043 12.4902 19.6543 12.4902C20.2043 12.4902 20.6543 12.9402 20.6543 13.4902V14.4902Z", 52738 fill: "currentColor" 52739 }, null, -1)), 52740 _cache[2] || (_cache[2] = createBaseVNode("rect", { 52741 x: "6.00391", 52742 y: "12.9727", 52743 width: "10.6509", 52744 height: "1.5", 52745 fill: "currentColor" 52746 }, null, -1)) 52747 ], 8, _hoisted_1$25); 52748} 52749const CoreIconDisclosures = /* @__PURE__ */ _export_sfc(_sfc_main$25, [["render", _sfc_render$1X]]); 52750const CoreIconDisclosures$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52751 __proto__: null, 52752 default: CoreIconDisclosures 52753}, Symbol.toStringTag, { value: "Module" })); 52754const _sfc_main$24 = { 52755 props: { 52756 settings: { 52757 type: Object, 52758 required: false, 52759 default: () => { 52760 } 52761 } 52762 }, 52763 computed: { 52764 alt() { 52765 var _a, _b; 52766 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52767 }, 52768 id() { 52769 var _a, _b; 52770 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52771 } 52772 } 52773}; 52774const _hoisted_1$24 = ["aria-labelledby", "aria-label"]; 52775const _hoisted_2$1X = ["id"]; 52776function _sfc_render$1W(_ctx, _cache, $props, $setup, $data, $options) { 52777 return openBlock(), createElementBlock("svg", { 52778 xmlns: "http://www.w3.org/2000/svg", 52779 width: "24", 52780 height: "24", 52781 viewBox: "0 0 24 24", 52782 fill: "none", 52783 role: "img", 52784 "aria-labelledby": `icon-title-${$options.id}`, 52785 "aria-label": $options.alt 52786 }, [ 52787 createBaseVNode("title", { 52788 id: `icon-title-${$options.id}` 52789 }, toDisplayString($options.alt), 9, _hoisted_2$1X), 52790 _cache[0] || (_cache[0] = createBaseVNode("path", { 52791 "fill-rule": "evenodd", 52792 "clip-rule": "evenodd", 52793 d: "M20.9999 11.9999C20.9999 12.5522 20.5522 12.9999 19.9999 12.9999H3.99994C3.44765 12.9999 2.99994 12.5522 2.99994 11.9999C2.99994 11.4476 3.44765 10.9999 3.99994 10.9999H19.9999C20.5522 10.9999 20.9999 11.4476 20.9999 11.9999Z", 52794 fill: "CurrentColor" 52795 }, null, -1)) 52796 ], 8, _hoisted_1$24); 52797} 52798const CoreIconDivider = /* @__PURE__ */ _export_sfc(_sfc_main$24, [["render", _sfc_render$1W]]); 52799const CoreIconDivider$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52800 __proto__: null, 52801 default: CoreIconDivider 52802}, Symbol.toStringTag, { value: "Module" })); 52803const _sfc_main$23 = { 52804 props: { 52805 settings: { 52806 type: Object, 52807 required: false 52808 } 52809 }, 52810 computed: { 52811 alt() { 52812 var _a, _b; 52813 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52814 }, 52815 id() { 52816 var _a, _b; 52817 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52818 } 52819 } 52820}; 52821const _hoisted_1$23 = ["aria-labelledby", "aria-label"]; 52822const _hoisted_2$1W = ["id"]; 52823function _sfc_render$1V(_ctx, _cache, $props, $setup, $data, $options) { 52824 return openBlock(), createElementBlock("svg", { 52825 width: "24", 52826 height: "24",
52827 viewBox: "0 0 24 24", 52828 fill: "none", 52829 xmlns: "http://www.w3.org/2000/svg", 52830 role: "img", 52831 "aria-labelledby": `icon-title-${$options.id}`, 52832 "aria-label": $options.alt 52833 }, [ 52834 createBaseVNode("title", { 52835 id: `icon-title-${$options.id}` 52836 }, toDisplayString($options.alt), 9, _hoisted_2$1W), 52837 _cache[0] || (_cache[0] = createBaseVNode("path", { 52838 d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", 52839 stroke: "currentColor", 52840 "stroke-width": "2", 52841 "stroke-linecap": "round", 52842 "stroke-linejoin": "round" 52843 }, null, -1)), 52844 _cache[1] || (_cache[1] = createBaseVNode("path", { 52845 d: "M2 12H22", 52846 stroke: "currentColor", 52847 "stroke-width": "2", 52848 "stroke-linecap": "round", 52849 "stroke-linejoin": "round" 52850 }, null, -1)), 52851 _cache[2] || (_cache[2] = createBaseVNode("path", { 52852 d: "M12 2C14.5013 4.73835 15.9228 8.29203 16 12C15.9228 15.708 14.5013 19.2616 12 22C9.49872 19.2616 8.07725 15.708 8 12C8.07725 8.29203 9.49872 4.73835 12 2V2Z", 52853 stroke: "currentColor", 52854 "stroke-width": "2", 52855 "stroke-linecap": "round", 52856 "stroke-linejoin": "round" 52857 }, null, -1)) 52858 ], 8, _hoisted_1$23); 52859} 52860const CoreIconDomains = /* @__PURE__ */ _export_sfc(_sfc_main$23, [["render", _sfc_render$1V]]); 52861const CoreIconDomains$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52862 __proto__: null, 52863 default: CoreIconDomains 52864}, Symbol.toStringTag, { value: "Module" })); 52865const _sfc_main$22 = { 52866 name: "CoreIconHamburgerMenu", 52867 props: { 52868 settings: { 52869 type: Object, 52870 required: false 52871 } 52872 }, 52873 computed: { 52874 alt() { 52875 var _a, _b; 52876 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52877 }, 52878 id() { 52879 var _a, _b; 52880 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52881 } 52882 } 52883}; 52884const _hoisted_1$22 = ["aria-labelledby", "aria-label"]; 52885const _hoisted_2$1V = ["id"]; 52886function _sfc_render$1U(_ctx, _cache, $props, $setup, $data, $options) { 52887 return openBlock(), createElementBlock("svg", { 52888 role: "img", 52889 width: "20", 52890 height: "17", 52891 viewBox: "0 0 20 17", 52892 fill: "none", 52893 xmlns: "http://www.w3.org/2000/svg", 52894 "aria-labelledby": `icon-title-${$options.id}`, 52895 "aria-label": $options.alt 52896 }, [ 52897 createBaseVNode("title", { 52898 id: `icon-title-${$options.id}` 52899 }, toDisplayString($options.alt), 9, _hoisted_2$1V), 52900 _cache[0] || (_cache[0] = createBaseVNode("path", { 52901 d: "M1 6H19", 52902 stroke: "currentColor", 52903 "stroke-width": "2", 52904 "stroke-linecap": "round", 52905 "stroke-linejoin": "round" 52906 }, null, -1)), 52907 _cache[1] || (_cache[1] = createBaseVNode("path", { 52908 d: "M1 1H19", 52909 stroke: "currentColor", 52910 "stroke-width": "2", 52911 "stroke-linecap": "round", 52912 "stroke-linejoin": "round" 52913 }, null, -1)), 52914 _cache[2] || (_cache[2] = createBaseVNode("path", { 52915 d: "M1 11H19", 52916 stroke: "currentColor", 52917 "stroke-width": "2", 52918 "stroke-linecap": "round", 52919 "stroke-linejoin": "round" 52920 }, null, -1)), 52921 _cache[3] || (_cache[3] = createBaseVNode("path", { 52922 d: "M1 16H19", 52923 stroke: "currentColor", 52924 "stroke-width": "2", 52925 "stroke-linecap": "round", 52926 "stroke-linejoin": "round" 52927 }, null, -1)) 52928 ], 8, _hoisted_1$22); 52929} 52930const CoreIconDotsHorizontal = /* @__PURE__ */ _export_sfc(_sfc_main$22, [["render", _sfc_render$1U]]); 52931const CoreIconDotsHorizontal$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52932 __proto__: null, 52933 default: CoreIconDotsHorizontal 52934}, Symbol.toStringTag, { value: "Module" })); 52935const _sfc_main$21 = { 52936 props: { 52937 settings: { 52938 type: Object, 52939 required: false, 52940 default: () => { 52941 } 52942 } 52943 }, 52944 computed: { 52945 alt() { 52946 var _a, _b; 52947 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52948 }, 52949 id() { 52950 var _a, _b; 52951 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52952 } 52953 } 52954}; 52955const _hoisted_1$21 = ["aria-labelledby", "aria-label"]; 52956const _hoisted_2$1U = ["id"]; 52957function _sfc_render$1T(_ctx, _cache, $props, $setup, $data, $options) { 52958 return openBlock(), createElementBlock("svg", { 52959 xmlns: "http://www.w3.org/2000/svg",
52960 viewBox: "0 0 24 24", 52961 role: "img", 52962 width: "20", 52963 height: "30", 52964 fill: "currentColor", 52965 "aria-labelledby": `icon-title-${$options.id}`, 52966 "aria-label": $options.alt 52967 }, [ 52968 createBaseVNode("title", { 52969 id: `icon-title-${$options.id}` 52970 }, toDisplayString($options.alt), 9, _hoisted_2$1U), 52971 _cache[0] || (_cache[0] = createBaseVNode("path", { 52972 stroke: "currentColor", 52973 d: "M12,16A2,2 0 0,1 14,18A2,2 0 0,1 12,20A2,2 0 0,1 10,18A2,2 0 0,1 12,16M12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12A2,2 0 0,1 12,10M12,4A2,2 0 0,1 14,6A2,2 0 0,1 12,8A2,2 0 0,1 10,6A2,2 0 0,1 12,4Z" 52974 }, null, -1)) 52975 ], 8, _hoisted_1$21); 52976} 52977const CoreIconDotsVertical = /* @__PURE__ */ _export_sfc(_sfc_main$21, [["render", _sfc_render$1T]]); 52978const CoreIconDotsVertical$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 52979 __proto__: null, 52980 default: CoreIconDotsVertical 52981}, Symbol.toStringTag, { value: "Module" })); 52982const _sfc_main$20 = { 52983 props: { 52984 settings: { 52985 type: Object, 52986 required: false 52987 } 52988 }, 52989 computed: { 52990 alt() { 52991 var _a, _b; 52992 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 52993 }, 52994 id() { 52995 var _a, _b; 52996 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 52997 } 52998 } 52999}; 53000const _hoisted_1$20 = ["aria-labelledby", "aria-label"]; 53001const _hoisted_2$1T = ["id"]; 53002function _sfc_render$1S(_ctx, _cache, $props, $setup, $data, $options) { 53003 return openBlock(), createElementBlock("svg", { 53004 width: "24", 53005 height: "24", 53006 viewBox: "0 0 24 24", 53007 fill: "none", 53008 xmlns: "http://www.w3.org/2000/svg", 53009 role: "img", 53010 "aria-labelledby": `icon-title-${$options.id}`, 53011 "aria-label": $options.alt 53012 }, [ 53013 createBaseVNode("title", { 53014 id: `icon-title-${$options.id}` 53015 }, toDisplayString($options.alt), 9, _hoisted_2$1T), 53016 _cache[0] || (_cache[0] = createBaseVNode("path", { 53017 d: "M18 15V18H6V15H4V18C4 19.1 4.9 20 6 20H18C19.1 20 20 19.1 20 18V15H18ZM17 11L15.59 9.59L13 12.17V4H11V12.17L8.41 9.59L7 11L12 16L17 11Z", 53018 fill: "currentColor" 53019 }, null, -1)) 53020 ], 8, _hoisted_1$20); 53021} 53022const CoreIconDownload = /* @__PURE__ */ _export_sfc(_sfc_main$20, [["render", _sfc_render$1S]]); 53023const CoreIconDownload$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53024 __proto__: null, 53025 default: CoreIconDownload 53026}, Symbol.toStringTag, { value: "Module" })); 53027const _hoisted_1$1$ = { 53028 width: "24", 53029 height: "24", 53030 viewBox: "0 0 24 24", 53031 fill: "none", 53032 xmlns: "http://www.w3.org/2000/svg" 53033}; 53034const _sfc_main$1$ = { 53035 __name: "CoreIconDraftDetails", 53036 props: { 53037 settings: { 53038 type: Object, 53039 required: false 53040 } 53041 }, 53042 setup(__props) { 53043 const props = __props; 53044 const alt = computed(() => { 53045 var _a, _b; 53046 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "Draft details"; 53047 }); 53048 return (_ctx, _cache) => { 53049 return openBlock(), createElementBlock("svg", _hoisted_1$1$, [ 53050 createBaseVNode("title", null, toDisplayString(unref(alt)), 1), 53051 _cache[0] || (_cache[0] = createBaseVNode("path", { 53052 d: "M12.5 22H18C18.5304 22 19.0391 21.7893 19.4142 21.4142C19.7893 21.0391 20 20.5304 20 20V7L15 2H6C5.46957 2 4.96086 2.21071 4.58579 2.58579C4.21071 2.96086 4 3.46957 4 4V13.5M14 2V6C14 6.53043 14.2107 7.03914 14.5858 7.41421C14.9609 7.78929 15.4696 8 16 8H20M13.378 15.6259C13.5752 15.4287 13.7317 15.1945 13.8384 14.9368C13.9452 14.6791 14.0001 14.4029 14.0001 14.1239C14.0001 13.845 13.9452 13.5687 13.8384 13.311C13.7317 13.0533 13.5752 12.8191 13.378 12.6219C13.1807 12.4247 12.9466 12.2682 12.6889 12.1614C12.4311 12.0547 12.1549 11.9998 11.876 11.9998C11.597 11.9998 11.3208 12.0547 11.0631 12.1614C10.8054 12.2682 10.5712 12.4247 10.374 12.6219L5.36398 17.6339C5.12622 17.8715 4.9522 18.1652 4.85798 18.4879L4.02098 21.3579C3.99588 21.444 3.99437 21.5352 4.01662 21.622C4.03887 21.7088 4.08404 21.7881 4.14742 21.8515C4.2108 21.9148 4.29006 21.96 4.37689 21.9823C4.46372 22.0045 4.55493 22.003 4.64098 21.9779L7.51098 21.1409C7.83364 21.0467 8.12735 20.8727 8.36498 20.6349L13.378 15.6259Z", 53053 stroke: "currentColor", 53054 "stroke-width": "2", 53055 "stroke-linecap": "round", 53056 "stroke-linejoin": "round" 53057 }, null, -1)) 53058 ]); 53059 }; 53060 } 53061}; 53062const CoreIconDraftDetails = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53063 __proto__: null, 53064 default: _sfc_main$1$ 53065}, Symbol.toStringTag, { value: "Module" })); 53066const _sfc_main$1_ = { 53067 props: { 53068 settings: { 53069 type: Object, 53070 required: false 53071 } 53072 }, 53073 computed: { 53074 alt() { 53075 var _a, _b; 53076 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53077 }, 53078 id() { 53079 var _a, _b; 53080 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53081 } 53082 } 53083}; 53084const _hoisted_1$1_ = ["aria-labelledby", "aria-label"]; 53085const _hoisted_2$1S = ["id"]; 53086function _sfc_render$1R(_ctx, _cache, $props, $setup, $data, $options) { 53087 return openBlock(), createElementBlock("svg", { 53088 width: "24", 53089 height: "24",
53090 viewBox: "0 0 24 24", 53091 fill: "none", 53092 xmlns: "http://www.w3.org/2000/svg", 53093 role: "img", 53094 "aria-labelledby": `icon-title-${$options.id}`, 53095 "aria-label": $options.alt 53096 }, [ 53097 createBaseVNode("title", { 53098 id: `icon-title-${$options.id}` 53099 }, toDisplayString($options.alt), 9, _hoisted_2$1S), 53100 _cache[0] || (_cache[0] = createBaseVNode("path", { 53101 d: "M20 6H12L10 4H4C2.9 4 2.01 4.9 2.01 6L2 18C2 19.1 2.9 20 4 20H20C21.1 20 22 19.1 22 18V8C22 6.9 21.1 6 20 6ZM20 18H4V6H9.17L11.17 8H20V18Z", 53102 fill: "currentColor" 53103 }, null, -1)), 53104 _cache[1] || (_cache[1] = createBaseVNode("path", { 53105 d: "M13 13.16L14.59 11.58L16 12.99L11.99 17L8 12.99L9.41 11.57L11 13.16L11 9L13 9L13 13.16Z", 53106 fill: "currentColor" 53107 }, null, -1)) 53108 ], 8, _hoisted_1$1_); 53109} 53110const CoreIconDrafts = /* @__PURE__ */ _export_sfc(_sfc_main$1_, [["render", _sfc_render$1R]]); 53111const CoreIconDrafts$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53112 __proto__: null, 53113 default: CoreIconDrafts 53114}, Symbol.toStringTag, { value: "Module" })); 53115const _sfc_main$1Z = { 53116 props: { 53117 settings: { 53118 type: Object, 53119 default: () => ({}) 53120 } 53121 }, 53122 computed: { 53123 alt() { 53124 var _a, _b; 53125 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53126 }, 53127 id() { 53128 var _a, _b; 53129 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53130 } 53131 } 53132}; 53133const _hoisted_1$1Z = ["aria-labelledby", "aria-label"]; 53134const _hoisted_2$1R = ["id"]; 53135function _sfc_render$1Q(_ctx, _cache, $props, $setup, $data, $options) { 53136 return openBlock(), createElementBlock("svg", { 53137 width: "24", 53138 height: "24", 53139 viewBox: "0 0 24 24", 53140 fill: "none", 53141 xmlns: "http://www.w3.org/2000/svg", 53142 role: "img", 53143 "aria-labelledby": `icon-title-${$options.id}`, 53144 "aria-label": $options.alt 53145 }, [ 53146 createBaseVNode("title", { 53147 id: `icon-title-${$options.id}` 53148 }, toDisplayString($options.alt), 9, _hoisted_2$1R), 53149 _cache[0] || (_cache[0] = createBaseVNode("path", { 53150 d: "M4 6H2V20C2 21.1 2.9 22 4 22H18V20H4V6ZM20 2H8C6.9 2 6 2.9 6 4V16C6 17.1 6.9 18 8 18H20C21.1 18 22 17.1 22 16V4C22 2.9 21.1 2 20 2ZM20 16H8V4H20V16ZM13 15H15V11H19V9H15V5H13V9H9V11H13V15Z", 53151 fill: "currentColor" 53152 }, null, -1)) 53153 ], 8, _hoisted_1$1Z); 53154} 53155const CoreIconDuplicate = /* @__PURE__ */ _export_sfc(_sfc_main$1Z, [["render", _sfc_render$1Q]]); 53156const CoreIconDuplicate$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53157 __proto__: null, 53158 default: CoreIconDuplicate 53159}, Symbol.toStringTag, { value: "Module" })); 53160const _sfc_main$1Y = { 53161 props: { 53162 settings: { 53163 type: Object, 53164 required: false 53165 } 53166 }, 53167 computed: { 53168 alt() { 53169 var _a, _b; 53170 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53171 }, 53172 id() { 53173 var _a, _b; 53174 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53175 } 53176 } 53177}; 53178const _hoisted_1$1Y = ["aria-labelledby", "aria-label"]; 53179const _hoisted_2$1Q = ["id"]; 53180function _sfc_render$1P(_ctx, _cache, $props, $setup, $data, $options) { 53181 return openBlock(), createElementBlock("svg", { 53182 width: "24", 53183 height: "24", 53184 viewBox: "0 0 24 24", 53185 fill: "none", 53186 xmlns: "http://www.w3.org/2000/svg", 53187 role: "img", 53188 "aria-labelledby": `icon-title-${$options.id}`, 53189 "aria-label": $options.alt 53190 }, [ 53191 createBaseVNode("title", { 53192 id: `icon-title-${$options.id}` 53193 }, toDisplayString($options.alt), 9, _hoisted_2$1Q), 53194 _cache[0] || (_cache[0] = createBaseVNode("path", { 53195 d: "M17 3.00006C17.2626 2.73741 17.5744 2.52907 17.9176 2.38693C18.2608 2.24479 18.6286 2.17163 19 2.17163C19.3714 2.17163 19.7392 2.24479 20.0824 2.38693C20.4256 2.52907 20.7374 2.73741 21 3.00006C21.2626 3.2627 21.471 3.57451 21.6131 3.91767C21.7553 4.26083 21.8284 4.62862 21.8284 5.00006C21.8284 5.37149 21.7553 5.73929 21.6131 6.08245C21.471 6.42561 21.2626 6.73741 21 7.00006L7.5 20.5001L2 22.0001L3.5 16.5001L17 3.00006Z", 53196 stroke: "currentColor", 53197 "stroke-width": "2", 53198 "stroke-linecap": "round", 53199 "stroke-linejoin": "round" 53200 }, null, -1)) 53201 ], 8, _hoisted_1$1Y); 53202} 53203const CoreIconEdit = /* @__PURE__ */ _export_sfc(_sfc_main$1Y, [["render", _sfc_render$1P]]); 53204const CoreIconEdit$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53205 __proto__: null, 53206 default: CoreIconEdit 53207}, Symbol.toStringTag, { value: "Module" })); 53208const _sfc_main$1X = { 53209 props: { 53210 settings: { 53211 type: Object, 53212 required: false 53213 } 53214 }, 53215 computed: { 53216 alt() { 53217 var _a, _b; 53218 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53219 }, 53220 id() { 53221 var _a, _b; 53222 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53223 } 53224 } 53225}; 53226const _hoisted_1$1X = ["aria-labelledby", "aria-label"]; 53227const _hoisted_2$1P = ["id"]; 53228function _sfc_render$1O(_ctx, _cache, $props, $setup, $data, $options) { 53229 return openBlock(), createElementBlock("svg", { 53230 width: "24", 53231 height: "24",
53232 viewBox: "0 0 24 24", 53233 fill: "none", 53234 xmlns: "http://www.w3.org/2000/svg", 53235 "aria-labelledby": `icon-title-${$options.id}`, 53236 "aria-label": $options.alt 53237 }, [ 53238 createBaseVNode("title", { 53239 id: `icon-title-${$options.id}` 53240 }, toDisplayString($options.alt), 9, _hoisted_2$1P), 53241 _cache[0] || (_cache[0] = createStaticVNode('<rect x="0.666667" y="0.666667" width="22.6667" height="22.6667" rx="11.3333" fill="#0051CA"></rect><rect x="0.666667" y="0.666667" width="22.6667" height="22.6667" rx="11.3333" stroke="white" stroke-width="1.33333"></rect><g clip-path="url(#clip0_9595_22556)"><path d="M14.2334 7.50015C14.3647 7.36883 14.5206 7.26466 14.6922 7.19359C14.8638 7.12252 15.0477 7.08594 15.2334 7.08594C15.4191 7.08594 15.603 7.12252 15.7746 7.19359C15.9462 7.26466 16.1021 7.36883 16.2334 7.50015C16.3647 7.63147 16.4689 7.78737 16.54 7.95895C16.611 8.13054 16.6476 8.31443 16.6476 8.50015C16.6476 8.68587 16.611 8.86977 16.54 9.04135C16.4689 9.21293 16.3647 9.36883 16.2334 9.50015L9.4834 16.2502L6.7334 17.0002L7.4834 14.2502L14.2334 7.50015Z" stroke="white" stroke-linecap="round" stroke-linejoin="round"></path></g><defs><clipPath id="clip0_9595_22556"><rect width="12" height="12" fill="white" transform="translate(5.7334 6)"></rect></clipPath></defs>', 4)) 53242 ], 8, _hoisted_1$1X); 53243} 53244const CoreIconEditCircle = /* @__PURE__ */ _export_sfc(_sfc_main$1X, [["render", _sfc_render$1O]]); 53245const CoreIconEditCircle$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53246 __proto__: null, 53247 default: CoreIconEditCircle 53248}, Symbol.toStringTag, { value: "Module" })); 53249const _sfc_main$1W = { 53250 name: "CoreIconCamera", 53251 props: { 53252 width: { 53253 type: Number, 53254 default: 28 53255 }, 53256 height: { 53257 type: Number, 53258 default: 27 53259 }, 53260 settings: { 53261 type: Object, 53262 required: false, 53263 default: () => ({}) 53264 } 53265 }, 53266 setup(props) { 53267 const alt = computed(() => { 53268 var _a, _b; 53269 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon); 53270 }); 53271 const id = computed(() => { 53272 var _a, _b; 53273 return ((_a = props.settings) == null ? void 0 : _a.id) || ((_b = props.settings) == null ? void 0 : _b.icon); 53274 }); 53275 return { 53276 alt, 53277 id 53278 }; 53279 } 53280}; 53281const _hoisted_1$1W = ["width", "height", "aria-labelledby", "aria-label"]; 53282const _hoisted_2$1O = ["id"]; 53283function _sfc_render$1N(_ctx, _cache, $props, $setup, $data, $options) { 53284 return openBlock(), createElementBlock("svg", { 53285 width: $props.width, 53286 height: $props.height, 53287 viewBox: "0 0 24 25", 53288 fill: "none", 53289 xmlns: "http://www.w3.org/2000/svg", 53290 "aria-labelledby": `icon-title-${$setup.id}`, 53291 "aria-label": $setup.alt 53292 }, [ 53293 createBaseVNode("title", { 53294 id: `icon-title-${$setup.id}` 53295 }, toDisplayString($setup.alt), 9, _hoisted_2$1O), 53296 _cache[0] || (_cache[0] = createBaseVNode("path", { 53297 d: "M12 22.8174C17.5228 22.8174 22 18.3402 22 12.8174C22 7.29454 17.5228 2.81738 12 2.81738C6.47715 2.81738 2 7.29454 2 12.8174C2 18.3402 6.47715 22.8174 12 22.8174Z", 53298 stroke: "currentColor", 53299 "stroke-width": "2", 53300 "stroke-linecap": "round", 53301 "stroke-linejoin": "round" 53302 }, null, -1)), 53303 _cache[1] || (_cache[1] = createBaseVNode("path", { 53304 d: "M17 12.8174H17.01", 53305 stroke: "currentColor", 53306 "stroke-width": "2", 53307 "stroke-linecap": "round", 53308 "stroke-linejoin": "round" 53309 }, null, -1)), 53310 _cache[2] || (_cache[2] = createBaseVNode("path", { 53311 d: "M12 12.8174H12.01", 53312 stroke: "currentColor", 53313 "stroke-width": "2", 53314 "stroke-linecap": "round", 53315 "stroke-linejoin": "round" 53316 }, null, -1)), 53317 _cache[3] || (_cache[3] = createBaseVNode("path", { 53318 d: "M7 12.8174H7.01", 53319 stroke: "currentColor", 53320 "stroke-width": "2", 53321 "stroke-linecap": "round", 53322 "stroke-linejoin": "round" 53323 }, null, -1)) 53324 ], 8, _hoisted_1$1W); 53325} 53326const CoreIconEllipsisOutlined = /* @__PURE__ */ _export_sfc(_sfc_main$1W, [["render", _sfc_render$1N], ["__scopeId", "data-v-de4d3df8"]]); 53327const CoreIconEllipsisOutlined$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53328 __proto__: null, 53329 default: CoreIconEllipsisOutlined 53330}, Symbol.toStringTag, { value: "Module" }));
53331const _sfc_main$1V = { 53332 props: { 53333 settings: { 53334 type: Object, 53335 required: false 53336 } 53337 }, 53338 computed: { 53339 alt() { 53340 var _a, _b; 53341 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53342 }, 53343 id() { 53344 var _a, _b; 53345 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53346 } 53347 } 53348}; 53349const _hoisted_1$1V = ["aria-labelledby", "aria-label"]; 53350const _hoisted_2$1N = ["id"]; 53351function _sfc_render$1M(_ctx, _cache, $props, $setup, $data, $options) { 53352 return openBlock(), createElementBlock("svg", { 53353 width: "24", 53354 height: "24", 53355 viewBox: "0 0 24 24", 53356 fill: "none", 53357 xmlns: "http://www.w3.org/2000/svg", 53358 role: "img", 53359 "aria-labelledby": `icon-title-${$options.id}`, 53360 "aria-label": $options.alt 53361 }, [ 53362 createBaseVNode("title", { 53363 id: `icon-title-${$options.id}` 53364 }, toDisplayString($options.alt), 9, _hoisted_2$1N), 53365 _cache[0] || (_cache[0] = createBaseVNode("path", { 53366 d: "M4 4H20C21.1 4 22 4.9 22 6V18C22 19.1 21.1 20 20 20H4C2.9 20 2 19.1 2 18V6C2 4.9 2.9 4 4 4Z", 53367 stroke: "currentColor", 53368 "stroke-width": "2", 53369 "stroke-linecap": "round", 53370 "stroke-linejoin": "round" 53371 }, null, -1)), 53372 _cache[1] || (_cache[1] = createBaseVNode("path", { 53373 d: "M22 6L12 13L2 6", 53374 stroke: "currentColor", 53375 "stroke-width": "2", 53376 "stroke-linecap": "round", 53377 "stroke-linejoin": "round" 53378 }, null, -1)) 53379 ], 8, _hoisted_1$1V); 53380} 53381const CoreIconEmail = /* @__PURE__ */ _export_sfc(_sfc_main$1V, [["render", _sfc_render$1M]]); 53382const CoreIconEmail$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53383 __proto__: null, 53384 default: CoreIconEmail 53385}, Symbol.toStringTag, { value: "Module" })); 53386const _sfc_main$1U = { 53387 props: { 53388 settings: { 53389 type: Object, 53390 required: false 53391 } 53392 }, 53393 computed: { 53394 alt() { 53395 var _a, _b; 53396 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53397 }, 53398 id() { 53399 var _a, _b; 53400 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53401 } 53402 } 53403}; 53404const _hoisted_1$1U = ["aria-labelledby", "aria-label"]; 53405const _hoisted_2$1M = ["id"]; 53406function _sfc_render$1L(_ctx, _cache, $props, $setup, $data, $options) { 53407 return openBlock(), createElementBlock("svg", { 53408 width: "14", 53409 height: "15", 53410 viewBox: "0 0 14 15", 53411 fill: "none", 53412 xmlns: "http://www.w3.org/2000/svg", 53413 role: "img", 53414 "aria-labelledby": `icon-title-${$options.id}`, 53415 "aria-label": $options.alt 53416 }, [ 53417 createBaseVNode("title", { 53418 id: `icon-title-${$options.id}` 53419 }, toDisplayString($options.alt), 9, _hoisted_2$1M), 53420 _cache[0] || (_cache[0] = createBaseVNode("path", { 53421 d: "M6.99325 0.827888C5.65852 0.829223 4.35414 1.22624 3.24499 1.96875C2.13585 2.71126 1.27174 3.76593 0.761881 4.99945C0.252024 6.23297 0.119314 7.58995 0.380526 8.89888C0.641738 10.2078 1.28515 11.4099 2.22942 12.3532C3.17369 13.2966 4.37644 13.9388 5.68562 14.1987C6.99481 14.4586 8.35166 14.3245 9.58467 13.8134C10.8177 13.3023 11.8715 12.4372 12.6129 11.3273C13.3543 10.2174 13.75 8.91263 13.75 7.57789C13.7504 6.69077 13.5759 5.81228 13.2364 4.9927C12.8969 4.17311 12.3992 3.42852 11.7716 2.80155C11.144 2.17458 10.3989 1.67754 9.57896 1.33887C8.75903 1.0002 7.88037 0.826564 6.99325 0.827888V0.827888ZM7 12.8279C5.96165 12.8279 4.94662 12.52 4.08326 11.9431C3.2199 11.3662 2.547 10.5463 2.14964 9.58698C1.75228 8.62766 1.64831 7.57206 1.85088 6.55366C2.05345 5.53526 2.55347 4.5998 3.28769 3.86558C4.02192 3.13135 4.95738 2.63134 5.97578 2.42877C6.99418 2.22619 8.04978 2.33016 9.00909 2.72752C9.9684 3.12488 10.7883 3.79779 11.3652 4.66114C11.9421 5.5245 12.25 6.53954 12.25 7.57789C12.2502 8.26738 12.1145 8.95016 11.8508 9.5872C11.587 10.2242 11.2003 10.8031 10.7127 11.2906C10.2252 11.7782 9.64636 12.1649 9.00932 12.4286C8.37227 12.6924 7.6895 12.8281 7 12.8279V12.8279ZM9.32875 8.92789H10.456C10.1848 9.62388 9.70982 10.2218 9.09317 10.6433C8.47652 11.
534210649 7.74696 11.2904 7 11.2904C6.25304 11.2904 5.52349 11.0649 4.90684 10.6433C4.29019 10.2218 3.81518 9.62388 3.544 8.92789H4.67125C4.90614 9.33806 5.2452 9.67892 5.65413 9.91598C6.06305 10.153 6.52733 10.2779 7 10.2779C7.47267 10.2779 7.93695 10.153 8.34588 9.91598C8.75481 9.67892 9.09386 9.33806 9.32875 8.92789V8.92789ZM3.625 5.89039C3.625 5.69013 3.68439 5.49438 3.79564 5.32787C3.90689 5.16137 4.06503 5.03159 4.25004 4.95496C4.43505 4.87833 4.63863 4.85828 4.83503 4.89734C5.03144 4.93641 5.21185 5.03284 5.35345 5.17444C5.49505 5.31604 5.59148 5.49645 5.63055 5.69286C5.66962 5.88927 5.64956 6.09285 5.57293 6.27786C5.4963 6.46287 5.36652 6.621 5.20002 6.73225C5.03351 6.84351 4.83776 6.90289 4.6375 6.90289C4.36897 6.90289 4.11144 6.79621 3.92156 6.60633C3.73168 6.41645 3.625 6.15892 3.625 5.89039ZM8.35 5.89039C8.35 5.69013 8.40939 5.49438 8.52064 5.32787C8.6319 5.16137 8.79003 5.03159 8.97504 4.95496C9.16005 4.87833 9.36363 4.85828 9.56003 4.89734C9.75644 4.93641 9.93685 5.03284 10.0784 5.17444C10.22 5.31604 10.3165 5.49645 10.3555 5.69286C10.3946 5.88927 10.3746 6.09285 10.2979 6.27786C10.2213 6.46287 10.0915 6.621 9.92502 6.73225C9.75851 6.84351 9.56276 6.90289 9.3625 6.90289C9.09397 6.90289 8.83644 6.79621 8.64656 6.60633C8.45668 6.41645 8.35 6.15892 8.35 5.89039V5.89039Z", 53422 fill: "currentColor" 53423 }, null, -1)) 53424 ], 8, _hoisted_1$1U); 53425} 53426const CoreIconEmoji = /* @__PURE__ */ _export_sfc(_sfc_main$1U, [["render", _sfc_render$1L]]); 53427const CoreIconEmoji$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53428 __proto__: null, 53429 default: CoreIconEmoji 53430}, Symbol.toStringTag, { value: "Module" })); 53431const _sfc_main$1T = { 53432 props: { 53433 settings: { 53434 type: Object, 53435 default: () => ({}) 53436 }, 53437 width: { 53438 type: String, 53439 default: "24" 53440 }, 53441 height: { 53442 type: String, 53443 default: "24" 53444 } 53445 }, 53446 computed: { 53447 alt() { 53448 var _a, _b; 53449 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53450 }, 53451 id() { 53452 var _a, _b; 53453 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53454 } 53455 } 53456}; 53457const _hoisted_1$1T = ["width", "height", "aria-labelledby", "aria-label"]; 53458const _hoisted_2$1L = ["id"]; 53459function _sfc_render$1K(_ctx, _cache, $props, $setup, $data, $options) { 53460 return openBlock(), createElementBlock("svg", { 53461 width: $props.width, 53462 height: $props.height, 53463 viewBox: "0 0 24 24", 53464 fill: "none", 53465 xmlns: "http://www.w3.org/2000/svg", 53466 role: "img", 53467 "aria-labelledby": `icon-title-${$options.id}`, 53468 "aria-label": $options.alt 53469 }, [ 53470 createBaseVNode("title", { 53471 id: `icon-title-${$options.id}` 53472 }, toDisplayString($options.alt), 9, _hoisted_2$1L), 53473 _cache[0] || (_cache[0] = createBaseVNode("path", { 53474 "fill-rule": "evenodd", 53475 "clip-rule": "evenodd", 53476 d: "M12.448 2C11.9324 2 11.4255 2.13289 10.9762 2.38584C10.5269 2.6388 10.1504 3.00328 9.88302 3.44412L1.40203 17.6027C1.14008 18.0563 1.00148 18.5706 1.00001 19.0945C0.998545 19.6183 1.13426 20.1334 1.39367 20.5885C1.65307 21.0436 2.02712 21.4228 2.47859 21.6885C2.93006 21.9541 3.44322 22.097 3.96703 22.1027L20.918 22.1028L20.929 22.1027C21.4528 22.0969 21.966 21.9541 22.4174 21.6885C22.8689 21.4228 23.243 21.0436 23.5024 20.5885C23.7618 20.1334 23.8975 19.6183 23.896 19.0945C23.8946 18.5706 23.756 18.0563 23.494 17.6027L23.4859 17.5889L15.0159 3.44886L15.013 3.44412C14.7456 3.00328 14.3691 2.6388 13.9198 2.38584C13.4705 2.13289 12.9636 2 12.448 2ZM12.448 8.10278C13.0003 8.10278 13.448 8.5505 13.448 9.10278V13.1028C13.448 13.6551 13.0003 14.1028 12.448 14.1028C11.8957 14.1028 11.448 13.6551 11.448 13.1028V9.10278C11.448 8.5505 11.8957 8.10278 12.448 8.10278ZM11.448 17.1028C11.448 16.5505 11.8957 16.1028 12.448 16.1028H12.458C13.0103 16.1028 13.458 16.5505 13.458 17.1028C13.458 17.6551 13.0103 18.1028 12.458 18.1028H12.448C11.8957 18.1028 11.448 17.6551 11.448 17.1028Z", 53477 fill: "currentColor" 53478 }, null, -1)) 53479 ], 8, _hoisted_1$1T); 53480} 53481const CoreIconErrorFilled = /* @__PURE__ */ _export_sfc(_sfc_main$1T, [["render", _sfc_render$1K]]); 53482const CoreIconErrorFilled$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53483 __proto__: null, 53484 default: CoreIconErrorFilled 53485}, Symbol.toStringTag, { value: "Module" })); 53486const _sfc_main$1S = { 53487 props: { 53488 settings: { 53489 type: Object, 53490 required: false 53491 } 53492 }, 53493 computed: { 53494 alt() { 53495 var _a, _b; 53496 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53497 }, 53498 id() { 53499 var _a, _b; 53500 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53501 } 53502 } 53503}; 53504const _hoisted_1$1S = ["aria-labelledby", "aria-label"]; 53505const _hoisted_2$1K = ["id"]; 53506function _sfc_render$1J(_ctx, _cache, $props, $setup, $data, $options) { 53507 return openBlock(), createElementBlock("svg", { 53508 width: "24", 53509 height: "24", 53510 version: "1.1", 53511 xmlns: "http://www.w3.org/2000/svg", 53512 "xmlns:xlink": "http://www.w3.org/1999/xlink",
53513 viewBox: "0 0 31 31", 53514 fill: "currentColor", 53515 "aria-labelledby": `icon-title-${$options.id}`, 53516 "aria-label": $options.alt 53517 }, [ 53518 createBaseVNode("title", { 53519 id: `icon-title-${$options.id}` 53520 }, toDisplayString($options.alt), 9, _hoisted_2$1K), 53521 _cache[0] || (_cache[0] = createBaseVNode("path", { 53522 class: "st0", 53523 d: "M23.2,15.7c-0.6,0-1,0.4-1,1v7.5c0,0.4-0.2,0.8-0.4,1.1s-0.7,0.4-1.1,0.4H6.9c-0.4,0-0.8-0.2-1.1-0.4\n c-0.3-0.3-0.4-0.7-0.4-1.1V10.5c0-0.4,0.2-0.8,0.4-1.1C6.1,9.1,6.5,9,6.9,9h7.5c0.6,0,1-0.4,1-1s-0.4-1-1-1H6.9C6,7,5.1,7.3,4.4,8\n c-0.7,0.7-1,1.5-1,2.5v13.8c0,0.9,0.4,1.8,1,2.5c0.7,0.7,1.5,1,2.5,1h13.8c0.9,0,1.8-0.4,2.5-1s1-1.5,1-2.5v-7.5\n C24.2,16.2,23.7,15.7,23.2,15.7z" 53524 }, null, -1)), 53525 _cache[1] || (_cache[1] = createBaseVNode("path", { 53526 class: "st0", 53527 d: "M27.8,3.8c-0.1-0.2-0.3-0.4-0.5-0.5c-0.1-0.1-0.3-0.1-0.4-0.1h-7.5c-0.6,0-1,0.4-1,1s0.4,1,1,1h5.1l-12,12\n c-0.4,0.4-0.4,1,0,1.4c0.2,0.2,0.5,0.3,0.7,0.3s0.5-0.1,0.7-0.3l12-12v5.1c0,0.6,0.4,1,1,1s1-0.4,1-1V4.2\n C27.9,4.1,27.9,3.9,27.8,3.8z" 53528 }, null, -1)) 53529 ], 8, _hoisted_1$1S); 53530} 53531const CoreIconExternalLink = /* @__PURE__ */ _export_sfc(_sfc_main$1S, [["render", _sfc_render$1J]]); 53532const CoreIconExternalLink$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53533 __proto__: null, 53534 default: CoreIconExternalLink 53535}, Symbol.toStringTag, { value: "Module" })); 53536const _sfc_main$1R = { 53537 props: { 53538 settings: { 53539 type: Object, 53540 required: false 53541 } 53542 }, 53543 computed: { 53544 alt() { 53545 var _a, _b; 53546 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53547 }, 53548 id() { 53549 var _a, _b; 53550 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53551 } 53552 } 53553}; 53554const _hoisted_1$1R = ["aria-labelledby", "aria-label"]; 53555const _hoisted_2$1J = ["id"]; 53556function _sfc_render$1I(_ctx, _cache, $props, $setup, $data, $options) { 53557 return openBlock(), createElementBlock("svg", { 53558 width: "24", 53559 height: "24", 53560 viewBox: "0 0 24 24", 53561 fill: "none", 53562 xmlns: "http://www.w3.org/2000/svg", 53563 role: "img", 53564 "aria-labelledby": `icon-title-${$options.id}`, 53565 "aria-label": $options.alt 53566 }, [ 53567 createBaseVNode("title", { 53568 id: `icon-title-${$options.id}` 53569 }, toDisplayString($options.alt), 9, _hoisted_2$1J), 53570 _cache[0] || (_cache[0] = createBaseVNode("path", { 53571 d: "M12 22L10.55 20.6332C5.4 15.7978 2 12.6087 2 8.69482C2 5.50572 4.42 3 7.5 3C9.24 3 10.91 3.83869 12 5.16403C13.09 3.83869 14.76 3 16.5 3C19.58 3 22 5.50572 22 8.69482C22 12.6087 18.6 15.7978 13.45 20.6436L12 22Z", 53572 fill: "currentColor" 53573 }, null, -1)) 53574 ], 8, _hoisted_1$1R); 53575} 53576const CoreIconFavoriteFilled = /* @__PURE__ */ _export_sfc(_sfc_main$1R, [["render", _sfc_render$1I]]); 53577const CoreIconFavoriteFilled$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53578 __proto__: null, 53579 default: CoreIconFavoriteFilled 53580}, Symbol.toStringTag, { value: "Module" })); 53581const _sfc_main$1Q = { 53582 props: { 53583 settings: { 53584 type: Object, 53585 required: false 53586 } 53587 }, 53588 computed: { 53589 alt() { 53590 var _a, _b; 53591 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53592 }, 53593 id() { 53594 var _a, _b; 53595 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53596 } 53597 } 53598}; 53599const _hoisted_1$1Q = ["aria-labelledby", "aria-label"]; 53600const _hoisted_2$1I = ["id"]; 53601function _sfc_render$1H(_ctx, _cache, $props, $setup, $data, $options) { 53602 return openBlock(), createElementBlock("svg", { 53603 width: "24", 53604 height: "24", 53605 viewBox: "0 0 24 24", 53606 fill: "none", 53607 xmlns: "http://www.w3.org/2000/svg", 53608 role: "img", 53609 "aria-labelledby": `icon-title-${$options.id}`, 53610 "aria-label": $options.alt 53611 }, [ 53612 createBaseVNode("title", { 53613 id: `icon-title-${$options.id}` 53614 }, toDisplayString($options.alt), 9, _hoisted_2$1I), 53615 _cache[0] || (_cache[0] = createBaseVNode("path", { 53616 d: "M11.2359 19.9056L11.2345 19.9042C8.63993 17.4681 6.56587 15.5182 5.12845 13.6986C3.70344 11.8947 3 10.3345 3 8.69482C3 6.02491 5.00481 4 7.5 4C8.92398 4 10.3166 4.69142 11.2277 5.79923L12 6.73834L12.7723 5.79923C13.6834 4.69142 15.076 4 16.5 4C18.9952 4 21 6.02491 21 8.69482C21 10.3345 20.2966 11.8947 18.8713 13.7001C17.4339 15.521 15.3601 17.4732 12.7659 19.9142C12.7655 19.9146 12.7651 19.9149 12.7647 19.9153L12.0026 20.6282L11.2359 19.9056Z", 53617 stroke: "currentColor", 53618 "stroke-width": "2" 53619 }, null, -1)) 53620 ], 8, _hoisted_1$1Q); 53621} 53622const CoreIconFavoriteUnfilled = /* @__PURE__ */ _export_sfc(_sfc_main$1Q, [["render", _sfc_render$1H]]); 53623const CoreIconFavoriteUnfilled$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53624 __proto__: null, 53625 default: CoreIconFavoriteUnfilled 53626}, Symbol.toStringTag, { value: "Module" })); 53627const _sfc_main$1P = { 53628 props: { 53629 settings: { 53630 type: Object, 53631 required: false 53632 } 53633 }, 53634 computed: { 53635 alt() { 53636 var _a, _b; 53637 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53638 }, 53639 id() { 53640 var _a, _b; 53641 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53642 } 53643 } 53644}; 53645const _hoisted_1$1P = ["aria-labelledby", "aria-label"]; 53646const _hoisted_2$1H = ["id"]; 53647function _sfc_render$1G(_ctx, _cache, $props, $setup, $data, $options) { 53648 return openBlock(), createElementBlock("svg", { 53649 width: "24", 53650 height: "24",
53651 viewBox: "0 0 24 24", 53652 fill: "none", 53653 xmlns: "http://www.w3.org/2000/svg", 53654 role: "img", 53655 "aria-labelledby": `icon-title-${$options.id}`, 53656 "aria-label": $options.alt 53657 }, [ 53658 createBaseVNode("title", { 53659 id: `icon-title-${$options.id}` 53660 }, toDisplayString($options.alt), 9, _hoisted_2$1H), 53661 _cache[0] || (_cache[0] = createBaseVNode("path", { 53662 d: "M6 9V2H18V9", 53663 stroke: "currentColor", 53664 "stroke-width": "2", 53665 "stroke-linecap": "round", 53666 "stroke-linejoin": "round" 53667 }, null, -1)), 53668 _cache[1] || (_cache[1] = createBaseVNode("path", { 53669 d: "M6 18H4C3.46957 18 2.96086 17.7893 2.58579 17.4142C2.21071 17.0391 2 16.5304 2 16V11C2 10.4696 2.21071 9.96086 2.58579 9.58579C2.96086 9.21071 3.46957 9 4 9H20C20.5304 9 21.0391 9.21071 21.4142 9.58579C21.7893 9.96086 22 10.4696 22 11V16C22 16.5304 21.7893 17.0391 21.4142 17.4142C21.0391 17.7893 20.5304 18 20 18H18", 53670 stroke: "currentColor", 53671 "stroke-width": "2", 53672 "stroke-linecap": "round", 53673 "stroke-linejoin": "round" 53674 }, null, -1)), 53675 _cache[2] || (_cache[2] = createBaseVNode("path", { 53676 d: "M18 14H6V22H18V14Z", 53677 stroke: "currentColor", 53678 "stroke-width": "2", 53679 "stroke-linecap": "round", 53680 "stroke-linejoin": "round" 53681 }, null, -1)) 53682 ], 8, _hoisted_1$1P); 53683} 53684const CoreIconFax = /* @__PURE__ */ _export_sfc(_sfc_main$1P, [["render", _sfc_render$1G]]); 53685const CoreIconFax$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53686 __proto__: null, 53687 default: CoreIconFax 53688}, Symbol.toStringTag, { value: "Module" })); 53689const _sfc_main$1O = { 53690 props: { 53691 settings: { 53692 type: Object, 53693 required: false 53694 } 53695 }, 53696 computed: { 53697 alt() { 53698 var _a, _b; 53699 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53700 }, 53701 id() { 53702 var _a, _b; 53703 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53704 } 53705 } 53706}; 53707const _hoisted_1$1O = ["aria-labelledby", "aria-label"]; 53708const _hoisted_2$1G = ["id"]; 53709function _sfc_render$1F(_ctx, _cache, $props, $setup, $data, $options) { 53710 return openBlock(), createElementBlock("svg", { 53711 "data-testid": "icon-file", 53712 xmlns: "http://www.w3.org/2000/svg", 53713 width: "24", 53714 height: "24", 53715 viewBox: "0 0 24 24", 53716 fill: "none", 53717 role: "img", 53718 "aria-labelledby": `icon-title-${$options.id}`, 53719 "aria-label": $options.alt 53720 }, [ 53721 createBaseVNode("title", { 53722 id: `icon-title-${$options.id}` 53723 }, toDisplayString($options.alt), 9, _hoisted_2$1G), 53724 _cache[0] || (_cache[0] = createBaseVNode("path", { 53725 d: "M14 2.04H6c-1.1 0-1.99.9-1.99 2l-.01 16c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2v-12l-6-6Zm-8 18v-16h7v5h5v11H6Z", 53726 fill: "currentColor", 53727 stroke: "currentColor" 53728 }, null, -1)) 53729 ], 8, _hoisted_1$1O); 53730} 53731const CoreIconFile = /* @__PURE__ */ _export_sfc(_sfc_main$1O, [["render", _sfc_render$1F]]); 53732const CoreIconFile$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53733 __proto__: null, 53734 default: CoreIconFile 53735}, Symbol.toStringTag, { value: "Module" })); 53736const _sfc_main$1N = { 53737 props: { 53738 settings: { 53739 type: Object, 53740 required: false 53741 } 53742 }, 53743 computed: { 53744 alt() { 53745 var _a, _b; 53746 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53747 }, 53748 id() { 53749 var _a, _b; 53750 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53751 } 53752 } 53753}; 53754const _hoisted_1$1N = ["aria-labelledby", "aria-label"]; 53755const _hoisted_2$1F = ["id"]; 53756function _sfc_render$1E(_ctx, _cache, $props, $setup, $data, $options) { 53757 return openBlock(), createElementBlock("svg", { 53758 width: "24", 53759 height: "24", 53760 viewBox: "0 0 24 24", 53761 fill: "none", 53762 xmlns: "http://www.w3.org/2000/svg", 53763 role: "img", 53764 "aria-labelledby": `icon-title-${$options.id}`, 53765 "aria-label": $options.alt 53766 }, [ 53767 createBaseVNode("title", { 53768 id: `icon-title-${$options.id}` 53769 }, toDisplayString($options.alt), 9, _hoisted_2$1F), 53770 _cache[0] || (_cache[0] = createBaseVNode("g", { "clip-path": "url(#clip0_979_12430)" }, [ 53771 createBaseVNode("path", { 53772 d: "M10 18H14V16H10V18ZM3 6V8H21V6H3ZM6 13H18V11H6V13Z", 53773 fill: "currentColor" 53774 }) 53775 ], -1)), 53776 _cache[1] || (_cache[1] = createBaseVNode("defs", null, [ 53777 createBaseVNode("clipPath", { id: "clip0_979_12430" }, [ 53778 createBaseVNode("rect", { 53779 width: "24", 53780 height: "24", 53781 fill: "white" 53782 }) 53783 ]) 53784 ], -1)) 53785 ], 8, _hoisted_1$1N); 53786} 53787const CoreIconFilter = /* @__PURE__ */ _export_sfc(_sfc_main$1N, [["render", _sfc_render$1E]]); 53788const CoreIconFilter$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53789 __proto__: null, 53790 default: CoreIconFilter 53791}, Symbol.toStringTag, { value: "Module" })); 53792const _sfc_main$1M = { 53793 props: { 53794 settings: { 53795 type: Object, 53796 default: () => ({}) 53797 }, 53798 color: { 53799 type: String, 53800 default: "currentColor" 53801 } 53802 }, 53803 computed: { 53804 alt() { 53805 var _a, _b; 53806 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53807 }, 53808 id() { 53809 var _a, _b; 53810 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53811 } 53812 } 53813}; 53814const _hoisted_1$1M = ["aria-labelledby", "aria-label"]; 53815const _hoisted_2$1E = ["id"]; 53816const _hoisted_3$3 = ["fill", "stroke"]; 53817function _sfc_render$1D(_ctx, _cache, $props, $setup, $data, $options) { 53818 return openBlock(), createElementBlock("svg", { 53819 width: "24", 53820 height: "24",
53821 viewBox: "0 0 24 24", 53822 fill: "none", 53823 xmlns: "http://www.w3.org/2000/svg", 53824 role: "img", 53825 "aria-labelledby": `icon-title-${$options.id}`, 53826 "aria-label": $options.alt 53827 }, [ 53828 createBaseVNode("title", { 53829 id: `icon-title-${$options.id}` 53830 }, toDisplayString($options.alt), 9, _hoisted_2$1E), 53831 createBaseVNode("path", { 53832 d: "M7.00457 5.5H5.9707L6.61263 6.31045L11.6026 12.6104L11.9938 13.1043L12.3859 12.6112L17.3959 6.31121L18.041 5.5H17.0046H7.00457ZM10.0046 13L10.3993 12.6931L10.3992 12.693L10.3987 12.6923L10.3967 12.6897L10.3886 12.6793L10.357 12.6386L10.2351 12.4819L9.78496 11.9027C9.40369 11.4122 8.8743 10.7312 8.28177 9.9693C7.09707 8.44595 5.65983 6.59878 4.64964 5.30353C4.39538 4.97332 4.62883 4.5 5.04457 4.5H18.9546C19.3703 4.5 19.6037 4.97326 19.3496 5.30347C18.3392 6.59894 16.9043 8.44632 15.7221 9.96971C15.1308 10.7316 14.6026 11.4126 14.2223 11.9031L13.7732 12.4824L13.6517 12.6392L13.6201 12.6799L13.6121 12.6902L13.61 12.6928L13.6095 12.6935L13.6094 12.6937L14.0046 13L13.6094 12.6937L13.5046 12.8289V13V19C13.5046 19.2739 13.2784 19.5 13.0046 19.5H11.0046C10.7307 19.5 10.5046 19.2739 10.5046 19V13V12.8286L10.3994 12.6932L10.0046 13Z", 53833 fill: $props.color, 53834 stroke: $props.color 53835 }, null, 8, _hoisted_3$3) 53836 ], 8, _hoisted_1$1M); 53837} 53838const CoreIconFilterOutline = /* @__PURE__ */ _export_sfc(_sfc_main$1M, [["render", _sfc_render$1D]]); 53839const CoreIconFilterOutline$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53840 __proto__: null, 53841 default: CoreIconFilterOutline 53842}, Symbol.toStringTag, { value: "Module" })); 53843const _sfc_main$1L = { 53844 props: { 53845 settings: { 53846 type: Object, 53847 required: false 53848 } 53849 }, 53850 computed: { 53851 alt() { 53852 var _a, _b; 53853 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53854 }, 53855 id() { 53856 var _a, _b; 53857 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53858 } 53859 } 53860}; 53861const _hoisted_1$1L = ["aria-labelledby", "aria-label"]; 53862const _hoisted_2$1D = ["id"]; 53863function _sfc_render$1C(_ctx, _cache, $props, $setup, $data, $options) { 53864 return openBlock(), createElementBlock("svg", { 53865 xmlns: "http://www.w3.org/2000/svg", 53866 width: "24", 53867 height: "25", 53868 viewBox: "0 0 24 25", 53869 fill: "none", 53870 role: "img", 53871 "aria-labelledby": `icon-title-${$options.id}`, 53872 "aria-label": $options.alt 53873 }, [ 53874 createBaseVNode("title", { 53875 id: `icon-title-${$options.id}` 53876 }, toDisplayString($options.alt), 9, _hoisted_2$1D), 53877 _cache[0] || (_cache[0] = createBaseVNode("path", { 53878 d: "M5 15.1182H3V19.1182C3 20.2182 3.9 21.1182 5 21.1182H9V19.1182H5V15.1182ZM5 5.11816H9V3.11816H5C3.9 3.11816 3 4.01816 3 5.11816V9.11816H5V5.11816ZM12 8.11816C9.79 8.11816 8 9.90816 8 12.1182C8 14.3282 9.79 16.1182 12 16.1182C14.21 16.1182 16 14.3282 16 12.1182C16 9.90816 14.21 8.11816 12 8.11816ZM12 14.1182C10.9 14.1182 10 13.2182 10 12.1182C10 11.0182 10.9 10.1182 12 10.1182C13.1 10.1182 14 11.0182 14 12.1182C14 13.2182 13.1 14.1182 12 14.1182ZM19 3.11816H15V5.11816H19V9.11816H21V5.11816C21 4.01816 20.1 3.11816 19 3.11816ZM19 19.1182H15V21.1182H19C20.1 21.1182 21 20.2182 21 19.1182V15.1182H19V19.1182Z", 53879 fill: "currentColor" 53880 }, null, -1)) 53881 ], 8, _hoisted_1$1L); 53882} 53883const CoreIconFocalPoint = /* @__PURE__ */ _export_sfc(_sfc_main$1L, [["render", _sfc_render$1C]]); 53884const CoreIconFocalPoint$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53885 __proto__: null, 53886 default: CoreIconFocalPoint 53887}, Symbol.toStringTag, { value: "Module" })); 53888const _sfc_main$1K = { 53889 props: { 53890 settings: { 53891 type: Object, 53892 required: false 53893 } 53894 }, 53895 computed: { 53896 alt() { 53897 var _a, _b; 53898 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53899 }, 53900 id() { 53901 var _a, _b; 53902 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53903 } 53904 } 53905}; 53906const _hoisted_1$1K = ["aria-labelledby", "aria-label"]; 53907const _hoisted_2$1C = ["id"]; 53908function _sfc_render$1B(_ctx, _cache, $props, $setup, $data, $options) { 53909 return openBlock(), createElementBlock("svg", { 53910 "data-testid": "icon-folder", 53911 xmlns: "http://www.w3.org/2000/svg", 53912 width: "24", 53913 height: "25",
53914 viewBox: "0 0 24 25", 53915 fill: "none", 53916 role: "img", 53917 "aria-labelledby": `icon-title-${$options.id}`, 53918 "aria-label": $options.alt, 53919 stroke: "currentColor" 53920 }, [ 53921 createBaseVNode("title", { 53922 id: `icon-title-${$options.id}` 53923 }, toDisplayString($options.alt), 9, _hoisted_2$1C), 53924 _cache[0] || (_cache[0] = createBaseVNode("path", { 53925 d: "M9.17 6.46753L11.17 8.46753H20V18.4675H4V6.46753H9.17ZM10 4.46753H4C2.9 4.46753 2.01 5.36753 2.01 6.46753L2 18.4675C2 19.5675 2.9 20.4675 4 20.4675H20C21.1 20.4675 22 19.5675 22 18.4675V8.46753C22 7.36753 21.1 6.46753 20 6.46753H12L10 4.46753Z", 53926 fill: "currentColor" 53927 }, null, -1)) 53928 ], 8, _hoisted_1$1K); 53929} 53930const CoreIconFolder = /* @__PURE__ */ _export_sfc(_sfc_main$1K, [["render", _sfc_render$1B]]); 53931const CoreIconFolder$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53932 __proto__: null, 53933 default: CoreIconFolder 53934}, Symbol.toStringTag, { value: "Module" })); 53935const _sfc_main$1J = { 53936 props: { 53937 settings: { 53938 type: Object, 53939 required: false 53940 } 53941 }, 53942 computed: { 53943 alt() { 53944 var _a, _b; 53945 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53946 }, 53947 id() { 53948 var _a, _b; 53949 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53950 } 53951 } 53952}; 53953const _hoisted_1$1J = ["aria-labelledby", "aria-label"]; 53954const _hoisted_2$1B = ["id"]; 53955function _sfc_render$1A(_ctx, _cache, $props, $setup, $data, $options) { 53956 return openBlock(), createElementBlock("svg", { 53957 width: "24", 53958 height: "24", 53959 viewBox: "0 0 24 24", 53960 fill: "none", 53961 xmlns: "http://www.w3.org/2000/svg", 53962 role: "img", 53963 "aria-labelledby": `icon-title-${$options.id}`, 53964 "aria-label": $options.alt 53965 }, [ 53966 createBaseVNode("title", { 53967 id: `icon-title-${$options.id}` 53968 }, toDisplayString($options.alt), 9, _hoisted_2$1B), 53969 _cache[0] || (_cache[0] = createBaseVNode("path", { 53970 d: "M14.17 3L19 7.83V20H5V3H14.17ZM14.17 1H5C3.9 1 3 1.9 3 3V20C3 21.1 3.9 22 5 22H19C20.1 22 21 21.1 21 20V7.83C21 7.3 20.79 6.79 20.41 6.42L15.58 1.59C15.21 1.21 14.7 1 14.17 1ZM7 17H17V19H12H7V17Z", 53971 fill: "currentColor" 53972 }, null, -1)) 53973 ], 8, _hoisted_1$1J); 53974} 53975const CoreIconFooter = /* @__PURE__ */ _export_sfc(_sfc_main$1J, [["render", _sfc_render$1A]]); 53976const CoreIconFooter$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 53977 __proto__: null, 53978 default: CoreIconFooter 53979}, Symbol.toStringTag, { value: "Module" })); 53980const _sfc_main$1I = { 53981 props: { 53982 settings: { 53983 type: Object, 53984 required: false 53985 } 53986 }, 53987 computed: { 53988 alt() { 53989 var _a, _b; 53990 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 53991 }, 53992 id() { 53993 var _a, _b; 53994 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 53995 } 53996 } 53997}; 53998const _hoisted_1$1I = ["aria-labelledby", "aria-label"]; 53999const _hoisted_2$1A = ["id"]; 54000function _sfc_render$1z(_ctx, _cache, $props, $setup, $data, $options) { 54001 return openBlock(), createElementBlock("svg", { 54002 width: "24", 54003 height: "24", 54004 viewBox: "0 0 24 24", 54005 fill: "none", 54006 xmlns: "http://www.w3.org/2000/svg", 54007 role: "img", 54008 "aria-labelledby": `icon-title-${$options.id}`, 54009 "aria-label": $options.alt 54010 }, [ 54011 createBaseVNode("title", { 54012 id: `icon-title-${$options.id}` 54013 }, toDisplayString($options.alt), 9, _hoisted_2$1A), 54014 _cache[0] || (_cache[0] = createBaseVNode("path", { 54015 d: "M11 4H4C3.46957 4 2.96086 4.21071 2.58579 4.58579C2.21071 4.96086 2 5.46957 2 6V20C2 20.5304 2.21071 21.0391 2.58579 21.4142C2.96086 21.7893 3.46957 22 4 22H18C18.5304 22 19.0391 21.7893 19.4142 21.4142C19.7893 21.0391 20 20.5304 20 20V13", 54016 stroke: "currentColor", 54017 "stroke-width": "2", 54018 "stroke-linecap": "round", 54019 "stroke-linejoin": "round" 54020 }, null, -1)), 54021 _cache[1] || (_cache[1] = createBaseVNode("path", { 54022 d: "M18.5 2.49998C18.8978 2.10216 19.4374 1.87866 20 1.87866C20.5626 1.87866 21.1022 2.10216 21.5 2.49998C21.8978 2.89781 22.1213 3.43737 22.1213 3.99998C22.1213 4.56259 21.8978 5.10216 21.5 5.49998L12 15L8 16L9 12L18.5 2.49998Z", 54023 stroke: "currentColor", 54024 "stroke-width": "2", 54025 "stroke-linecap": "round", 54026 "stroke-linejoin": "round" 54027 }, null, -1)) 54028 ], 8, _hoisted_1$1I); 54029} 54030const CoreIconForm = /* @__PURE__ */ _export_sfc(_sfc_main$1I, [["render", _sfc_render$1z]]); 54031const CoreIconForm$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54032 __proto__: null, 54033 default: CoreIconForm 54034}, Symbol.toStringTag, { value: "Module" })); 54035const _sfc_main$1H = { 54036 props: { 54037 settings: { 54038 type: Object, 54039 required: false 54040 } 54041 }, 54042 computed: { 54043 alt() { 54044 var _a, _b; 54045 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54046 }, 54047 id() { 54048 var _a, _b; 54049 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54050 } 54051 } 54052}; 54053const _hoisted_1$1H = ["aria-labelledby", "aria-label"]; 54054const _hoisted_2$1z = ["id"]; 54055function _sfc_render$1y(_ctx, _cache, $props, $setup, $data, $options) { 54056 return openBlock(), createElementBlock("svg", { 54057 width: "24", 54058 height: "24",
54059 viewBox: "0 0 24 24", 54060 fill: "none", 54061 xmlns: "http://www.w3.org/2000/svg", 54062 role: "img", 54063 "aria-labelledby": `icon-title-${$options.id}`, 54064 "aria-label": $options.alt 54065 }, [ 54066 createBaseVNode("title", { 54067 id: `icon-title-${$options.id}` 54068 }, toDisplayString($options.alt), 9, _hoisted_2$1z), 54069 _cache[0] || (_cache[0] = createBaseVNode("path", { 54070 d: "M22 2L11 13", 54071 stroke: "currentColor", 54072 "stroke-width": "2", 54073 "stroke-linecap": "round", 54074 "stroke-linejoin": "round" 54075 }, null, -1)), 54076 _cache[1] || (_cache[1] = createBaseVNode("path", { 54077 d: "M22 2L15 22L11 13L2 9L22 2Z", 54078 stroke: "currentColor", 54079 "stroke-width": "2", 54080 "stroke-linecap": "round", 54081 "stroke-linejoin": "round" 54082 }, null, -1)) 54083 ], 8, _hoisted_1$1H); 54084} 54085const CoreIconFormIcon = /* @__PURE__ */ _export_sfc(_sfc_main$1H, [["render", _sfc_render$1y]]); 54086const CoreIconFormIcon$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54087 __proto__: null, 54088 default: CoreIconFormIcon 54089}, Symbol.toStringTag, { value: "Module" })); 54090const _sfc_main$1G = { 54091 props: { 54092 settings: { 54093 type: Object, 54094 required: false 54095 } 54096 }, 54097 computed: { 54098 alt() { 54099 var _a, _b; 54100 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54101 }, 54102 id() { 54103 var _a, _b; 54104 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54105 } 54106 } 54107}; 54108const _hoisted_1$1G = ["aria-labelledby", "aria-label"]; 54109const _hoisted_2$1y = ["id"]; 54110function _sfc_render$1x(_ctx, _cache, $props, $setup, $data, $options) { 54111 return openBlock(), createElementBlock("svg", { 54112 xmlns: "http://www.w3.org/2000/svg", 54113 width: "24", 54114 height: "24", 54115 viewBox: "0 0 24 24", 54116 fill: "none", 54117 role: "img", 54118 "aria-labelledby": `icon-title-${$options.id}`, 54119 "aria-label": $options.alt 54120 }, [ 54121 createBaseVNode("title", { 54122 id: `icon-title-${$options.id}` 54123 }, toDisplayString($options.alt), 9, _hoisted_2$1y), 54124 _cache[0] || (_cache[0] = createBaseVNode("path", { 54125 d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", 54126 stroke: "currentColor", 54127 "stroke-width": "2", 54128 "stroke-linecap": "round", 54129 "stroke-linejoin": "round" 54130 }, null, -1)), 54131 _cache[1] || (_cache[1] = createBaseVNode("path", { 54132 d: "M2 12H22", 54133 stroke: "currentColor", 54134 "stroke-width": "2", 54135 "stroke-linecap": "round", 54136 "stroke-linejoin": "round" 54137 }, null, -1)), 54138 _cache[2] || (_cache[2] = createBaseVNode("path", { 54139 d: "M12 2C14.5013 4.73835 15.9228 8.29203 16 12C15.9228 15.708 14.5013 19.2616 12 22C9.49872 19.2616 8.07725 15.708 8 12C8.07725 8.29203 9.49872 4.73835 12 2Z", 54140 stroke: "currentColor", 54141 "stroke-width": "2", 54142 "stroke-linecap": "round", 54143 "stroke-linejoin": "round" 54144 }, null, -1)) 54145 ], 8, _hoisted_1$1G); 54146} 54147const CoreIconGlobe = /* @__PURE__ */ _export_sfc(_sfc_main$1G, [["render", _sfc_render$1x]]); 54148const CoreIconGlobe$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54149 __proto__: null, 54150 default: CoreIconGlobe 54151}, Symbol.toStringTag, { value: "Module" })); 54152const _sfc_main$1F = { 54153 props: { 54154 settings: { 54155 type: Object, 54156 required: false 54157 } 54158 }, 54159 computed: { 54160 alt() { 54161 var _a, _b; 54162 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54163 }, 54164 id() { 54165 var _a, _b; 54166 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54167 } 54168 } 54169}; 54170const _hoisted_1$1F = ["aria-labelledby", "aria-label"]; 54171const _hoisted_2$1x = ["id"]; 54172function _sfc_render$1w(_ctx, _cache, $props, $setup, $data, $options) { 54173 return openBlock(), createElementBlock("svg", { 54174 width: "24", 54175 height: "24", 54176 viewBox: "0 0 24 24", 54177 fill: "none", 54178 xmlns: "http://www.w3.org/2000/svg", 54179 role: "img", 54180 "aria-labelledby": `icon-title-${$options.id}`, 54181 "aria-label": $options.alt 54182 }, [ 54183 createBaseVNode("title", { 54184 id: `icon-title-${$options.id}` 54185 }, toDisplayString($options.alt), 9, _hoisted_2$1x), 54186 _cache[0] || (_cache[0] = createBaseVNode("circle", { 54187 cx: "9", 54188 cy: "15", 54189 r: "8", 54190 fill: "#565656" 54191 }, null, -1)), 54192 _cache[1] || (_cache[1] = createBaseVNode("rect", { 54193 x: "7", 54194 y: "1", 54195 width: "16", 54196 height: "16", 54197 fill: "currentColor", 54198 "fill-opacity": "0.4" 54199 }, null, -1)) 54200 ], 8, _hoisted_1$1F); 54201} 54202const CoreIconGradient = /* @__PURE__ */ _export_sfc(_sfc_main$1F, [["render", _sfc_render$1w]]); 54203const CoreIconGradient$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54204 __proto__: null, 54205 default: CoreIconGradient 54206}, Symbol.toStringTag, { value: "Module" })); 54207const _sfc_main$1E = { 54208 props: { 54209 settings: { 54210 type: Object, 54211 required: false 54212 } 54213 }, 54214 computed: { 54215 alt() { 54216 var _a, _b; 54217 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54218 }, 54219 id() { 54220 var _a, _b; 54221 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54222 } 54223 } 54224}; 54225const _hoisted_1$1E = ["aria-labelledby", "aria-label"]; 54226const _hoisted_2$1w = ["id"]; 54227function _sfc_render$1v(_ctx, _cache, $props, $setup, $data, $options) { 54228 return openBlock(), createElementBlock("svg", { 54229 width: "24", 54230 height: "24",
54231 viewBox: "0 0 24 24", 54232 fill: "none", 54233 xmlns: "http://www.w3.org/2000/svg", 54234 role: "img", 54235 "aria-labelledby": `icon-title-${$options.id}`, 54236 "aria-label": $options.alt 54237 }, [ 54238 createBaseVNode("title", { 54239 id: `icon-title-${$options.id}` 54240 }, toDisplayString($options.alt), 9, _hoisted_2$1w), 54241 _cache[0] || (_cache[0] = createBaseVNode("rect", { 54242 width: "24", 54243 height: "24", 54244 fill: "url(#paint0_linear_548_2912)" 54245 }, null, -1)), 54246 _cache[1] || (_cache[1] = createBaseVNode("defs", null, [ 54247 createBaseVNode("linearGradient", { 54248 id: "paint0_linear_548_2912", 54249 x1: "4.6549e-08", 54250 y1: "11.907", 54251 x2: "24", 54252 y2: "11.907", 54253 gradientUnits: "userSpaceOnUse" 54254 }, [ 54255 createBaseVNode("stop"), 54256 createBaseVNode("stop", { 54257 offset: "1", 54258 "stop-opacity": "0" 54259 }) 54260 ]) 54261 ], -1)) 54262 ], 8, _hoisted_1$1E); 54263} 54264const CoreIconGradientSquare = /* @__PURE__ */ _export_sfc(_sfc_main$1E, [["render", _sfc_render$1v]]); 54265const CoreIconGradientSquare$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54266 __proto__: null, 54267 default: CoreIconGradientSquare 54268}, Symbol.toStringTag, { value: "Module" })); 54269const _sfc_main$1D = { 54270 props: { 54271 settings: { 54272 type: Object, 54273 required: false 54274 } 54275 }, 54276 computed: { 54277 alt() { 54278 var _a, _b; 54279 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54280 }, 54281 id() { 54282 var _a, _b; 54283 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54284 } 54285 } 54286}; 54287const _hoisted_1$1D = ["aria-labelledby", "aria-label"]; 54288const _hoisted_2$1v = ["id"]; 54289function _sfc_render$1u(_ctx, _cache, $props, $setup, $data, $options) { 54290 return openBlock(), createElementBlock("svg", { 54291 width: "24", 54292 height: "24", 54293 viewBox: "0 0 24 24", 54294 fill: "none", 54295 xmlns: "http://www.w3.org/2000/svg", 54296 role: "img", 54297 "aria-labelledby": `icon-title-${$options.id}`, 54298 "aria-label": $options.alt 54299 }, [ 54300 createBaseVNode("title", { 54301 id: `icon-title-${$options.id}` 54302 }, toDisplayString($options.alt), 9, _hoisted_2$1v), 54303 _cache[0] || (_cache[0] = createBaseVNode("path", { 54304 d: "M4 4V11.1111H11.1111V4H4ZM9.33333 9.33333H5.77778V5.77778H9.33333V9.33333ZM4 12.8889V20H11.1111V12.8889H4ZM9.33333 18.2222H5.77778V14.6667H9.33333V18.2222ZM12.8889 4V11.1111H20V4H12.8889ZM18.2222 9.33333H14.6667V5.77778H18.2222V9.33333ZM12.8889 12.8889V20H20V12.8889H12.8889ZM18.2222 18.2222H14.6667V14.6667H18.2222V18.2222Z", 54305 fill: "currentColor" 54306 }, null, -1)) 54307 ], 8, _hoisted_1$1D); 54308} 54309const CoreIconGrid = /* @__PURE__ */ _export_sfc(_sfc_main$1D, [["render", _sfc_render$1u]]); 54310const CoreIconGrid$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54311 __proto__: null, 54312 default: CoreIconGrid 54313}, Symbol.toStringTag, { value: "Module" })); 54314const _sfc_main$1C = { 54315 props: { 54316 settings: { 54317 type: Object, 54318 required: false, 54319 default: () => { 54320 } 54321 } 54322 }, 54323 computed: { 54324 alt() { 54325 var _a, _b; 54326 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54327 }, 54328 id() { 54329 var _a, _b; 54330 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54331 } 54332 } 54333}; 54334const _hoisted_1$1C = ["aria-labelledby", "aria-label"]; 54335const _hoisted_2$1u = ["id"]; 54336function _sfc_render$1t(_ctx, _cache, $props, $setup, $data, $options) { 54337 return openBlock(), createElementBlock("svg", { 54338 xmlns: "http://www.w3.org/2000/svg", 54339 width: "24", 54340 height: "24", 54341 viewBox: "0 0 24 24", 54342 fill: "none", 54343 role: "img", 54344 "aria-labelledby": `icon-title-${$options.id}`, 54345 "aria-label": $options.alt 54346 }, [ 54347 createBaseVNode("title", { 54348 id: `icon-title-${$options.id}` 54349 }, toDisplayString($options.alt), 9, _hoisted_2$1u), 54350 _cache[0] || (_cache[0] = createBaseVNode("path", { 54351 d: "M20 2H4C2.9 2 2 2.9 2 4V20C2 21.1 2.9 22 4 22H20C21.1 22 22 21.1 22 20V4C22 2.9 21.1 2 20 2ZM8 20H4V16H8V20ZM8 14H4V10H8V14ZM8 8H4V4H8V8ZM14 20H10V16H14V20ZM14 14H10V10H14V14ZM14 8H10V4H14V8ZM20 20H16V16H20V20ZM20 14H16V10H20V14ZM20 8H16V4H20V8Z", 54352 fill: "CurrentColor" 54353 }, null, -1)) 54354 ], 8, _hoisted_1$1C); 54355} 54356const CoreIconGridOn = /* @__PURE__ */ _export_sfc(_sfc_main$1C, [["render", _sfc_render$1t]]); 54357const CoreIconGridOn$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54358 __proto__: null, 54359 default: CoreIconGridOn 54360}, Symbol.toStringTag, { value: "Module" })); 54361const _sfc_main$1B = { 54362 props: { 54363 settings: { 54364 type: Object, 54365 required: false 54366 } 54367 }, 54368 computed: { 54369 alt() { 54370 var _a, _b; 54371 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54372 }, 54373 id() { 54374 var _a, _b; 54375 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54376 } 54377 } 54378}; 54379const _hoisted_1$1B = ["aria-labelledby", "aria-label"]; 54380const _hoisted_2$1t = ["id"]; 54381function _sfc_render$1s(_ctx, _cache, $props, $setup, $data, $options) { 54382 return openBlock(), createElementBlock("svg", { 54383 width: "24", 54384 height: "24",
54385 viewBox: "0 0 24 24", 54386 fill: "none", 54387 xmlns: "http://www.w3.org/2000/svg", 54388 role: "img", 54389 "aria-labelledby": `icon-title-${$options.id}`, 54390 "aria-label": $options.alt 54391 }, [ 54392 createBaseVNode("title", { 54393 id: `icon-title-${$options.id}` 54394 }, toDisplayString($options.alt), 9, _hoisted_2$1t), 54395 _cache[0] || (_cache[0] = createBaseVNode("path", { 54396 d: "M14.17 3L19 7.83V20H5V3H14.17ZM14.17 1H5C3.9 1 3 1.9 3 3V20C3 21.1 3.9 22 5 22H19C20.1 22 21 21.1 21 20V7.83C21 7.3 20.79 6.79 20.41 6.42L15.58 1.59C15.21 1.21 14.7 1 14.17 1ZM6 5H15V7H6V5Z", 54397 fill: "currentColor" 54398 }, null, -1)) 54399 ], 8, _hoisted_1$1B); 54400} 54401const CoreIconHeader = /* @__PURE__ */ _export_sfc(_sfc_main$1B, [["render", _sfc_render$1s]]); 54402const CoreIconHeader$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54403 __proto__: null, 54404 default: CoreIconHeader 54405}, Symbol.toStringTag, { value: "Module" })); 54406const _sfc_main$1A = { 54407 props: { 54408 settings: { 54409 type: Object, 54410 required: false 54411 } 54412 }, 54413 computed: { 54414 alt() { 54415 var _a, _b; 54416 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54417 }, 54418 id() { 54419 var _a, _b; 54420 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54421 } 54422 } 54423}; 54424const _hoisted_1$1A = ["aria-labelledby", "aria-label"]; 54425const _hoisted_2$1s = ["id"]; 54426function _sfc_render$1r(_ctx, _cache, $props, $setup, $data, $options) { 54427 return openBlock(), createElementBlock("svg", { 54428 "data-testid": "icon-home", 54429 width: "24", 54430 height: "24", 54431 viewBox: "0 0 24 24", 54432 fill: "none", 54433 xmlns: "http://www.w3.org/2000/svg", 54434 role: "img", 54435 "aria-labelledby": `icon-title-${$options.id}`, 54436 "aria-label": $options.alt 54437 }, [ 54438 createBaseVNode("title", { 54439 id: `icon-title-${$options.id}` 54440 }, toDisplayString($options.alt), 9, _hoisted_2$1s), 54441 _cache[0] || (_cache[0] = createBaseVNode("path", { 54442 d: "M4.2229 9.23284L12.2365 3L20.2502 9.23284V19.0273C20.2502 19.4996 20.0626 19.9526 19.7286 20.2865C19.3946 20.6205 18.9417 20.8081 18.4694 20.8081H6.00371C5.53141 20.8081 5.07845 20.6205 4.74449 20.2865C4.41052 19.9526 4.2229 19.4996 4.2229 19.0273V9.23284Z", 54443 stroke: "currentColor", 54444 "stroke-width": "1.78081", 54445 "stroke-linecap": "round", 54446 "stroke-linejoin": "round" 54447 }, null, -1)), 54448 _cache[1] || (_cache[1] = createBaseVNode("path", { 54449 d: "M9.56543 20.8081V11.9041H14.9079V20.8081", 54450 stroke: "currentColor", 54451 "stroke-width": "1.78081", 54452 "stroke-linecap": "round", 54453 "stroke-linejoin": "round" 54454 }, null, -1)) 54455 ], 8, _hoisted_1$1A); 54456} 54457const CoreIconHome = /* @__PURE__ */ _export_sfc(_sfc_main$1A, [["render", _sfc_render$1r]]); 54458const CoreIconHome$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54459 __proto__: null, 54460 default: CoreIconHome 54461}, Symbol.toStringTag, { value: "Module" })); 54462const _sfc_main$1z = { 54463 props: { 54464 settings: { 54465 type: Object, 54466 required: false 54467 } 54468 }, 54469 computed: { 54470 alt() { 54471 var _a, _b; 54472 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54473 }, 54474 id() { 54475 var _a, _b; 54476 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54477 } 54478 } 54479}; 54480const _hoisted_1$1z = ["aria-labelledby", "aria-label"]; 54481const _hoisted_2$1r = ["id"]; 54482function _sfc_render$1q(_ctx, _cache, $props, $setup, $data, $options) { 54483 return openBlock(), createElementBlock("svg", { 54484 width: "24", 54485 height: "24", 54486 viewBox: "0 0 24 24", 54487 fill: "none", 54488 xmlns: "http://www.w3.org/2000/svg", 54489 role: "img", 54490 "aria-labelledby": `icon-title-${$options.id}`, 54491 "aria-label": $options.alt 54492 }, [ 54493 createBaseVNode("title", { 54494 id: `icon-title-${$options.id}` 54495 }, toDisplayString($options.alt), 9, _hoisted_2$1r), 54496 _cache[0] || (_cache[0] = createBaseVNode("path", { 54497 d: "M12.6633 9.2406H11.9135C10.5327 9.2406 9.62567 10.2257 9.62567 11.4877V12.5122C9.62567 13.7742 10.5327 14.7593 11.9135 14.7593H12.6633C14.6749 14.7593 14.5167 12.7096 17.5543 12.7096C17.8424 12.7096 18.1295 12.7351 18.412 12.7882C18.5044 12.2673 18.5044 11.7336 18.412 11.2118C18.1295 11.2639 17.8424 11.2913 17.5543 11.2904C14.5158 11.2904 14.6749 9.2406 12.6633 9.2406Z", 54498 fill: "currentColor" 54499 }, null, -1)), 54500 _cache[1] || (_cache[1] = createBaseVNode("path", { 54501 d: "M20.1492 13.5285C19.633 13.1524 19.0383 12.8971 18.4089 12.7836V12.799C18.3542 13.0988 18.2703 13.394 18.1563 13.6766C18.6762 13.7565 19.1696 13.9591 19.5956 14.2671C19.5956 14.2707 19.5928 14.2761 19.5919 14.2807C18.3277 18.3578 13.9833 20.6426 9.88979 19.3835C5.79623 18.1243 3.50227 13.7974 4.76646 9.72025C6.03065 5.64311 10.3741 3.35836 14.4677 4.61747C16.9176 5.37058 18.8349 7.28105 19.591 9.72025C19.591 9.72479 19.5937 9.73024 19.5947 9.73388C19.1687 10.0418 18.6752 10.2435 18.1553 10.3235C18.2694 10.6078 18.3533 10.9021 18.408 11.2028C18.408 11.2074 18.408 11.2119 18.408 11.2174C19.0374 11.1029 19.6321 10.8485 20.1483 10.4724C20.6445 10.1063 20.5487 9.693 20.473 9.44862C19.0574 4.87729 14.1904 2.3
545011454 9.60156 3.72355C5.01182 5.13347 2.43875 9.98098 3.85344 14.5523C5.26903 19.1227 10.1361 21.6855 14.7249 20.2765C17.4731 19.4325 19.6248 17.2895 20.473 14.5523C20.5487 14.307 20.6454 13.8937 20.1492 13.5285Z", 54502 fill: "currentColor" 54503 }, null, -1)), 54504 _cache[2] || (_cache[2] = createBaseVNode("path", { 54505 "fill-rule": "evenodd", 54506 "clip-rule": "evenodd", 54507 d: "M18.1763 10.3446C18.1764 10.3446 18.1766 10.3445 18.1767 10.3445L18.1722 10.3327C18.0938 10.1368 18.0009 9.94637 17.8952 9.76325L17.0142 8.2381C16.2061 6.83869 14.7128 5.97681 13.0966 5.97681H11.3346C9.7183 5.97681 8.22504 6.83869 7.41692 8.2381L6.5359 9.76325C5.72778 11.1627 5.72778 12.8873 6.5359 14.2877L7.41692 15.8128C8.22504 17.2122 9.7183 18.0741 11.3346 18.0741H13.0966C14.7119 18.0741 16.2061 17.2122 17.0142 15.8128L17.8952 14.2895C18.0009 14.1064 18.0929 13.9169 18.1722 13.7201L18.1767 13.7091C18.1013 13.6963 18.0255 13.686 17.9496 13.6781C17.8254 13.6659 17.7006 13.6599 17.5755 13.6599C16.2641 13.6599 15.7688 14.0969 15.1999 14.5987L15.1921 14.6056L15.1908 14.6068C14.638 15.0958 13.9512 15.7035 12.7021 15.7035H11.955C11.0503 15.7035 10.2295 15.3755 9.64091 14.7806C9.06602 14.1984 8.74988 13.403 8.74988 12.5384V11.5162C8.74988 11.0932 8.82554 10.6868 8.97015 10.3138C9.12125 9.92302 9.34782 9.56895 9.64177 9.27126C10.2294 8.67633 11.0521 8.34834 11.9559 8.34834H12.703C13.9539 8.34834 14.6409 8.95694 15.1921 9.44619L15.2009 9.45399C15.7702 9.95546 16.2657 10.3919 17.5763 10.3919C17.7202 10.3919 17.8636 10.384 18.0062 10.3678C18.063 10.361 18.1196 10.3529 18.1759 10.3436C18.176 10.3439 18.1761 10.3443 18.1763 10.3446Z", 54508 fill: "currentColor" 54509 }, null, -1)) 54510 ], 8, _hoisted_1$1z); 54511} 54512const CoreIconIcon71 = /* @__PURE__ */ _export_sfc(_sfc_main$1z, [["render", _sfc_render$1q]]); 54513const CoreIconIcon71$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54514 __proto__: null, 54515 default: CoreIconIcon71 54516}, Symbol.toStringTag, { value: "Module" })); 54517const _sfc_main$1y = { 54518 props: { 54519 settings: { 54520 type: Object, 54521 required: false 54522 } 54523 }, 54524 computed: { 54525 alt() { 54526 var _a, _b; 54527 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54528 }, 54529 id() { 54530 var _a, _b; 54531 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54532 } 54533 } 54534}; 54535const _hoisted_1$1y = ["aria-labelledby", "aria-label"]; 54536const _hoisted_2$1q = ["id"]; 54537function _sfc_render$1p(_ctx, _cache, $props, $setup, $data, $options) { 54538 return openBlock(), createElementBlock("svg", { 54539 width: "24", 54540 height: "24", 54541 viewBox: "0 0 24 24", 54542 fill: "none", 54543 xmlns: "http://www.w3.org/2000/svg", 54544 role: "img", 54545 "aria-labelledby": `icon-title-${$options.id}`, 54546 "aria-label": $options.alt 54547 }, [ 54548 createBaseVNode("title", { 54549 id: `icon-title-${$options.id}` 54550 }, toDisplayString($options.alt), 9, _hoisted_2$1q), 54551 _cache[0] || (_cache[0] = createStaticVNode('<g clip-path="url(#clip0_548_2904)"><path d="M17 19.22H5V7H12V5H5C3.9 5 3 5.9 3 7V19C3 20.1 3.9 21 5 21H17C18.1 21 19 20.1 19 19V12H17V19.22Z" fill="currentColor"></path><path d="M19 2H17V5H14C14.01 5.01 14 7 14 7H17V9.99C17.01 10 19 9.99 19 9.99V7H22V5H19V2Z" fill="currentColor"></path><path d="M7 9V17H15V9H12H7Z" fill="currentColor"></path></g><defs><clipPath id="clip0_548_2904"><rect width="24" height="24" fill="white"></rect></clipPath></defs>', 2)) 54552 ], 8, _hoisted_1$1y); 54553} 54554const CoreIconIcons = /* @__PURE__ */ _export_sfc(_sfc_main$1y, [["render", _sfc_render$1p]]); 54555const CoreIconIcons$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54556 __proto__: null, 54557 default: CoreIconIcons 54558}, Symbol.toStringTag, { value: "Module" })); 54559const _sfc_main$1x = { 54560 props: { 54561 settings: { 54562 type: Object, 54563 required: false 54564 } 54565 }, 54566 computed: { 54567 alt() { 54568 var _a, _b; 54569 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54570 }, 54571 id() { 54572 var _a, _b; 54573 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54574 } 54575 } 54576}; 54577const _hoisted_1$1x = ["aria-labelledby", "aria-label"]; 54578const _hoisted_2$1p = ["id"]; 54579function _sfc_render$1o(_ctx, _cache, $props, $setup, $data, $options) { 54580 return openBlock(), createElementBlock("svg", { 54581 width: "24", 54582 height: "24",
54583 viewBox: "0 0 24 24", 54584 fill: "none", 54585 xmlns: "http://www.w3.org/2000/svg", 54586 role: "img", 54587 "aria-labelledby": `icon-title-${$options.id}`, 54588 "aria-label": $options.alt 54589 }, [ 54590 createBaseVNode("title", { 54591 id: `icon-title-${$options.id}` 54592 }, toDisplayString($options.alt), 9, _hoisted_2$1p), 54593 _cache[0] || (_cache[0] = createBaseVNode("path", { 54594 d: "M19 3H5C3.89543 3 3 3.89543 3 5V19C3 20.1046 3.89543 21 5 21H19C20.1046 21 21 20.1046 21 19V5C21 3.89543 20.1046 3 19 3Z", 54595 stroke: "currentColor", 54596 "stroke-width": "2", 54597 "stroke-linecap": "round", 54598 "stroke-linejoin": "round" 54599 }, null, -1)), 54600 _cache[1] || (_cache[1] = createBaseVNode("path", { 54601 d: "M8.5 10C9.32843 10 10 9.32843 10 8.5C10 7.67157 9.32843 7 8.5 7C7.67157 7 7 7.67157 7 8.5C7 9.32843 7.67157 10 8.5 10Z", 54602 stroke: "currentColor", 54603 "stroke-width": "2", 54604 "stroke-linecap": "round", 54605 "stroke-linejoin": "round" 54606 }, null, -1)), 54607 _cache[2] || (_cache[2] = createBaseVNode("path", { 54608 d: "M21 15L16 10L5 21", 54609 stroke: "currentColor", 54610 "stroke-width": "2", 54611 "stroke-linecap": "round", 54612 "stroke-linejoin": "round" 54613 }, null, -1)) 54614 ], 8, _hoisted_1$1x); 54615} 54616const CoreIconImage = /* @__PURE__ */ _export_sfc(_sfc_main$1x, [["render", _sfc_render$1o]]); 54617const CoreIconImage$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54618 __proto__: null, 54619 default: CoreIconImage 54620}, Symbol.toStringTag, { value: "Module" })); 54621const _sfc_main$1w = { 54622 props: { 54623 settings: { 54624 type: Object, 54625 required: false 54626 } 54627 }, 54628 computed: { 54629 alt() { 54630 var _a, _b; 54631 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54632 }, 54633 id() { 54634 var _a, _b; 54635 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54636 } 54637 } 54638}; 54639const _hoisted_1$1w = ["aria-labelledby", "aria-label"]; 54640const _hoisted_2$1o = ["id"]; 54641function _sfc_render$1n(_ctx, _cache, $props, $setup, $data, $options) { 54642 return openBlock(), createElementBlock("svg", { 54643 xmlns: "http://www.w3.org/2000/svg", 54644 width: "24", 54645 height: "24", 54646 viewBox: "0 0 24 24", 54647 fill: "none", 54648 role: "img", 54649 "aria-labelledby": `icon-title-${$options.id}`, 54650 "aria-label": $options.alt 54651 }, [ 54652 createBaseVNode("title", { 54653 id: `icon-title-${$options.id}` 54654 }, toDisplayString($options.alt), 9, _hoisted_2$1o), 54655 _cache[0] || (_cache[0] = createBaseVNode("rect", { 54656 x: "1", 54657 y: "1", 54658 width: "15", 54659 height: "15", 54660 rx: "1", 54661 stroke: "currentColor", 54662 "stroke-width": "2", 54663 fill: "none" 54664 }, null, -1)), 54665 _cache[1] || (_cache[1] = createBaseVNode("rect", { 54666 x: "8", 54667 y: "8", 54668 width: "15", 54669 height: "15", 54670 rx: "1", 54671 fill: "currentColor" 54672 }, null, -1)) 54673 ], 8, _hoisted_1$1w); 54674} 54675const CoreIconImageOffset = /* @__PURE__ */ _export_sfc(_sfc_main$1w, [["render", _sfc_render$1n]]); 54676const CoreIconImageOffset$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54677 __proto__: null, 54678 default: CoreIconImageOffset 54679}, Symbol.toStringTag, { value: "Module" })); 54680const _sfc_main$1v = { 54681 props: { 54682 settings: { 54683 type: Object, 54684 required: false 54685 } 54686 }, 54687 computed: { 54688 alt() { 54689 var _a, _b; 54690 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54691 }, 54692 id() { 54693 var _a, _b; 54694 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54695 } 54696 } 54697}; 54698const _hoisted_1$1v = ["aria-labelledby", "aria-label"]; 54699const _hoisted_2$1n = ["id"]; 54700function _sfc_render$1m(_ctx, _cache, $props, $setup, $data, $options) { 54701 return openBlock(), createElementBlock("svg", { 54702 width: "24", 54703 height: "24", 54704 viewBox: "0 0 24 24", 54705 fill: "none", 54706 xmlns: "http://www.w3.org/2000/svg", 54707 role: "img", 54708 "aria-labelledby": `icon-title-${$options.id}`, 54709 "aria-label": $options.alt 54710 }, [ 54711 createBaseVNode("title", { 54712 id: `icon-title-${$options.id}` 54713 }, toDisplayString($options.alt), 9, _hoisted_2$1n), 54714 _cache[0] || (_cache[0] = createBaseVNode("path", { 54715 d: "M4 18H20C21.1 18 21.99 17.1 21.99 16L22 5C22 3.9 21.1 3 20 3H4C2.9 3 2 3.9 2 5V16C2 17.1 2.9 18 4 18ZM4 5H2
547150V16H4V5Z", 54716 fill: "currentColor" 54717 }, null, -1)), 54718 _cache[1] || (_cache[1] = createBaseVNode("path", { 54719 d: "M23 19H1V21H23V19Z", 54720 fill: "currentColor" 54721 }, null, -1)), 54722 _cache[2] || (_cache[2] = createBaseVNode("path", { 54723 d: "M13.97 7.53C12.6 6.16 10.39 6.16 9.02 7.53C7.65 8.9 7.65 11.11 9.02 12.48C10.2 13.66 12.02 13.82 13.38 12.95L15.47 15.04L16.53 13.98L14.44 11.89C15.31 10.53 15.16 8.71 13.97 7.53ZM12.91 11.41C12.13 12.19 10.86 12.19 10.08 11.41C9.3 10.63 9.3 9.36 10.08 8.58C10.86 7.8 12.13 7.8 12.91 8.58C13.69 9.37 13.69 10.63 12.91 11.41Z", 54724 fill: "currentColor" 54725 }, null, -1)) 54726 ], 8, _hoisted_1$1v); 54727} 54728const CoreIconInReview = /* @__PURE__ */ _export_sfc(_sfc_main$1v, [["render", _sfc_render$1m]]); 54729const CoreIconInReview$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54730 __proto__: null, 54731 default: CoreIconInReview 54732}, Symbol.toStringTag, { value: "Module" })); 54733const _sfc_main$1u = { 54734 props: { 54735 settings: { 54736 type: Object, 54737 required: false 54738 } 54739 }, 54740 computed: { 54741 alt() { 54742 var _a, _b; 54743 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54744 }, 54745 id() { 54746 var _a, _b; 54747 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54748 } 54749 } 54750}; 54751const _hoisted_1$1u = ["aria-labelledby", "aria-label"]; 54752const _hoisted_2$1m = ["id"]; 54753function _sfc_render$1l(_ctx, _cache, $props, $setup, $data, $options) { 54754 return openBlock(), createElementBlock("svg", { 54755 width: "24", 54756 height: "24", 54757 viewBox: "0 0 24 24", 54758 fill: "none", 54759 xmlns: "http://www.w3.org/2000/svg", 54760 role: "img", 54761 "aria-labelledby": `icon-title-${$options.id}`, 54762 "aria-label": $options.alt 54763 }, [ 54764 createBaseVNode("title", { 54765 id: `icon-title-${$options.id}` 54766 }, toDisplayString($options.alt), 9, _hoisted_2$1m), 54767 _cache[0] || (_cache[0] = createBaseVNode("path", { 54768 d: "M14 2H6C4.9 2 4.01 2.9 4.01 4L4 20C4 21.1 4.89 22 5.99 22H18C19.1 22 20 21.1 20 20V8L14 2ZM6 20V4H13V9H18V20H6Z", 54769 fill: "currentColor" 54770 }, null, -1)) 54771 ], 8, _hoisted_1$1u); 54772} 54773const CoreIconInsertDriveFile = /* @__PURE__ */ _export_sfc(_sfc_main$1u, [["render", _sfc_render$1l]]); 54774const CoreIconInsertDriveFile$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54775 __proto__: null, 54776 default: CoreIconInsertDriveFile 54777}, Symbol.toStringTag, { value: "Module" })); 54778const _sfc_main$1t = { 54779 props: { 54780 settings: { 54781 type: Object, 54782 required: false 54783 } 54784 }, 54785 computed: { 54786 alt() { 54787 var _a, _b; 54788 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54789 }, 54790 id() { 54791 var _a, _b; 54792 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54793 } 54794 } 54795}; 54796const _hoisted_1$1t = ["aria-labelledby", "aria-label"]; 54797const _hoisted_2$1l = ["id"]; 54798function _sfc_render$1k(_ctx, _cache, $props, $setup, $data, $options) { 54799 return openBlock(), createElementBlock("svg", { 54800 "data-testid": "icon-insert-link", 54801 width: "24", 54802 height: "24", 54803 viewBox: "0 0 24 24", 54804 fill: "none", 54805 xmlns: "http://www.w3.org/2000/svg", 54806 role: "img", 54807 "aria-labelledby": `icon-title-${$options.id}`, 54808 "aria-label": $options.alt 54809 }, [ 54810 createBaseVNode("title", { 54811 id: `icon-title-${$options.id}` 54812 }, toDisplayString($options.alt), 9, _hoisted_2$1l), 54813 _cache[0] || (_cache[0] = createBaseVNode("path", { 54814 d: "M3.9 12C3.9 10.29 5.29 8.9 7 8.9H11V7H7C4.24 7 2 9.24 2 12C2 14.76 4.24 17 7 17H11V15.1H7C5.29 15.1 3.9 13.71 3.9 12ZM8 13H16V11H8V13ZM17 7H13V8.9H17C18.71 8.9 20.1 10.29 20.1 12C20.1 13.71 18.71 15.1 17 15.1H13V17H17C19.76 17 22 14.76 22 12C22 9.24 19.76 7 17 7Z", 54815 fill: "currentColor" 54816 }, null, -1)) 54817 ], 8, _hoisted_1$1t); 54818} 54819const CoreIconInsertLink = /* @__PURE__ */ _export_sfc(_sfc_main$1t, [["render", _sfc_render$1k]]); 54820const CoreIconInsertLink$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54821 __proto__: null, 54822 default: CoreIconInsertLink 54823}, Symbol.toStringTag, { value: "Module" })); 54824const _sfc_main$1s = { 54825 props: { 54826 settings: { 54827 type: Object, 54828 required: false 54829 } 54830 }, 54831 computed: { 54832 alt() { 54833 var _a, _b; 54834 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54835 }, 54836 id() { 54837 var _a, _b; 54838 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54839 } 54840 } 54841}; 54842const _hoisted_1$1s = ["aria-labelledby", "aria-label"]; 54843const _hoisted_2$1k = ["id"]; 54844function _sfc_render$1j(_ctx, _cache, $props, $setup, $data, $options) { 54845 return openBlock(), createElementBlock("svg", { 54846 width: "65", 54847 height: "65",
54848 viewBox: "0 0 65 65", 54849 fill: "none", 54850 xmlns: "http://www.w3.org/2000/svg", 54851 role: "img", 54852 "aria-labelledby": `icon-title-${$options.id}`, 54853 "aria-label": $options.alt 54854 }, [ 54855 createBaseVNode("title", { 54856 id: `icon-title-${$options.id}` 54857 }, toDisplayString($options.alt), 9, _hoisted_2$1k), 54858 _cache[0] || (_cache[0] = createStaticVNode('<g clip-path="url(#clip0_1254_20648)"><path d="M24.2185 25.3259C23.5008 25.2695 22.7812 25.4074 22.1352 25.7251C21.4891 26.0428 20.9406 26.5286 20.5472 27.1315C19.6565 28.4315 19.7106 31.507 19.7106 31.507C19.5421 35.5695 20.5292 37.1824 20.5292 37.1824C20.8274 37.7848 21.2783 38.2985 21.8369 38.6724C22.3955 39.0462 23.0424 39.2671 23.713 39.313C24.513 39.3842 25.316 39.2135 26.0179 38.8229C26.7197 38.4322 27.288 37.8397 27.6491 37.1222C28.5519 35.1181 28.3954 31.507 28.3954 31.507C28.3231 28.4616 27.4083 27.1315 27.4083 27.1315C27.0862 26.5733 26.6204 26.1114 26.0595 25.7939C25.4986 25.4764 24.8629 25.3148 24.2185 25.3259Z" fill="white"></path><path d="M31.9764 11.0862C31.8449 10.7209 31.6038 10.4051 31.2859 10.1821C30.9681 9.95908 30.5892 9.83972 30.2009 9.84033C30.2009 9.84033 29.6653 9.70191 26.5898 9.84033C26.5898 9.84033 25.5426 9.84032 25.6028 11.2246V14.7514C25.6028 14.7514 27.3782 14.8417 30.0866 14.6973C30.4124 14.67 30.7337 14.6033 31.0435 14.4987L30.7606 16.8098C30.7606 16.8098 30.6764 16.4426 25.8255 16.6112C25.7754 16.6126 25.7271 16.6296 25.6872 16.6598C25.6473 16.69 25.6178 16.7319 25.6028 16.7797C25.6028 16.7797 25.5185 18.7899 25.6028 21.3237C25.6657 21.6495 25.8481 21.94 26.1143 22.1382C26.3804 22.3364 26.711 22.428 27.0412 22.395C27.0412 22.395 31.4708 22.5093 32.4278 22.0038C32.4278 22.0038 32.8491 21.9315 33.4449 20.8723C33.4449 20.8723 33.4449 21.2213 33.162 24.0561H36.713C36.713 24.0561 37.1463 24.0019 37.1463 23.6047C37.1463 23.6047 37.3449 23.1834 36.5445 21.095C35.1927 17.6833 33.6681 14.3427 31.9764 11.0862V11.0862Z" fill="white"></path><path d="M46.6255 40.0051C46.9204 40.0051 46.9083 39.2287 46.9083 39.2287C47.2755 32.3736 46.9384 26.3972 46.9384 26.3972C46.7398 24.1402 45.9875 23.9898 45.9875 23.9898H47.1912C47.1573 23.6207 47.0722 23.2581 46.9384 22.9125C44.3143 15.3291 42.7616 11.9768 42.7616 11.9768C40.619 17.9953 39.2528 22.8463 39.2528 22.8463C39.1264 23.3638 39.0421 24.05 39.0421 24.05C41.8889 23.9958 42.5088 24.4713 42.5088 24.4713C44.2421 25.1935 44.3444 27.318 44.3444 27.318C44.3973 27.8421 44.3251 28.3712 44.1336 28.862C43.9421 29.3527 43.6369 29.7909 43.2431 30.1407C42.5536 30.7058 41.7196 31.0665 40.8357 31.1819C41.9548 33.7091 43.2751 36.1424 44.7838 38.4583C45.9875 40.324 46.6255 40.0051 46.6255 40.0051Z" fill="white"></path><path d="M61.9907 0H3.00926C2.21115 0 1.44574 0.317044 0.881399 0.881389C0.317053 1.44574 0 2.21115 0 3.00926V61.9907C0 62.7888 0.317053 63.5543 0.881399 64.1186C1.44574 64.683 2.21115 65 3.00926 65H61.9907C62.7888 65 63.5543 64.683 64.1186 64.1186C64.683 63.5543 65 62.7888 65 61.9907V3.00926C65 2.21115 64.683 1.44574 64.1186 0.881389C63.5543 0.317044 62.7888 0 61.9907 0V0ZM52.6681 55.1296C52.6681 55.1296 52.5838 56.1769 52.0662 56.1468C52.0662 56.1468 51.8917 56.3694 47.2514 56.0866C47.2514 56.0866 46.2403 55.8338 42.5449 56.0866C42.5449 56.0866 43.3634 55.888 43.5019 53.7755C43.5019 53.7755 43.7306 47.7931 43.6162 41.1366C43.6162 41.1366 43.6583 40.1676 42.9662 40.0954C42.7649 40.1124 42.5628 40.0743 42.3815 39.9853C42.2002 39.8962 42.0466 39.7595 41.937 39.5898C41.937 39.5898 39.9028 35.4731 38.5907 32.175C38.4423 31.7738 38.3039 31.4066 38.1755 31.0736C38.1755 31.0736 37.8625 30.6764 38.4824 30.7907C39.2945 30.7993 40.0835 30.52 40.7093 30.0023C41.0558 29.6508 41.3135 29.2218 41.4611 28.7508C41.6086 28.2798 41.6418 27.7804 41.5579 27.294C41.5271 26.8931 41.3719 26.5117 41.1141 26.2032C40.8562 25.8946 40.5085 25.6742 40.1194 25.5727C39.1312 25.3285 38.0984 25.3285 37.1102 25.5727C36.9111 25.6117 36.733 25.7217 36.609 25.8823C36.485 26.0428 36.4236 26.2429 36.4361 26.4454V38.8495C36.4361 38.8495 36.2375 40.1796 37.7903 40.0532H39.9028C39.9028 40.0532 40.607 39.9329 40.3843 40.5528L40.0713 42.0755C40.0713 42.0755 40.0171 41.8347 39.2227 41.7745C39.2227 41.7745 38.4644 41.5157 34.9435 41.7083C34.9435 41.7083 34.125 41.7083 34.0949 42.1898V47.0046H37.6519C38.4782 47.0443 39.3064 47.006 40.1255 46.8903L39.6801 49.1954C39.3936 48.9872 39.0382 48.8967 38.687 48.9426C38.687 48.9426 37.6157 48.7199 34.0648 48.8884L34.125 54.1306C34.125 54.1306 34.0949 55.9361 34.9435 56.1347C33.4149 55.9771 31.874 55.9771 30.3454 56.1347C30.6652 55.9855 30.9343 55.7457 31.1194 55.4451C31.3044 55.1446 31.3973 54.7963 31.3866 54.4435C31.3866 54.4435 31.8079 48.2083 31.6394 42.4606C31.6394 42.4606 31.7838 40.0833 30.8208 39.8005H32.2893C32.2893 39.8005 33.4208 39.9991 33.6435 37.4352C33.6435 37.4352 33.8662 35.094 33.8903 32.163C33.913 30.459 33.8406 28.7551 33.6736 27.0593C33.6736 27.0593 33.7037 24.4593 32.0065 24.2907H26.1986C26.1986 24.2907 28.4796 24.9648 29.6111 26.3792C29.6111 26.3792 31.2602 28.1847 31.2482 31.6213C31.2482 31.6213 31.2482 31.8199 31.2482 32.187C31.2903 33.4269 31.2481 36.6829 29.6171 38.362C29.6171 38.362 29.1898 39.319 26.5417 39.9931C26.5417 39.9931 25.3861 40.4444 25.4102 42.2801C25.4102 42.2801 25.2718 47.9736 25.4102 54.919C25.4372 55.2069 25.5479 55.4805 25.7287 55.7062C25.9094 55.9318 26.1523 56.0996 26.4273 56.1889C24.7375 55.9379 23.0229 55.8995 21.3236 56.0745C21.3236 56.0745 22.0579 56.0144 22.2866 54.9731C22.2866 54.9731 22.738 53.8778 22.762 47.8954V42.256C22.762 42.256 22.7921 40.2579 21.6065 39.975C21.6065 39.975 19.4398 39.6319 18.4227 38.4222C18.4227 38.4222 16.9542 37.3208 16.9 32.8972C16.9 32.8972 16.8699 32.6384 16.8639 32.1931C16.7914 30.5702 17.0835 28.9517 17.7185 27.4565C18.0881 26.6712 18.6425 25.9871 19.3343 25.463C20.0261 24.9389 20.8347 24.5904 21.6907 24.4472C21.6907 24.4472 20.6014 22.4731 13.4995 11.7301V22.8102C13.5405 23.1572 13.7034 23.4783 13.9591 23.7164C14.2148 23.9545 14.5468 24.0941 14.8958 24.1102H18.0796C18.0796 24.1102 17.4778 24.248
548586 13.4032 31.4107C13.4032 31.4107 13.1986 31.7357 12.9398 32.2051C12.5125 32.9935 11.9407 34.2032 11.9889 34.9676V38.687C11.9889 38.687 11.9889 39.644 13.3731 39.8426H16.0815C15.892 39.8329 15.7024 39.8613 15.5241 39.926C15.3457 39.9908 15.1821 40.0906 15.043 40.2197C14.9039 40.3487 14.792 40.5043 14.714 40.6773C14.636 40.8503 14.5935 41.0372 14.5889 41.2269C14.2759 46.9204 14.4986 53.7875 14.4986 53.7875C14.4444 54.5458 15.6301 54.6301 15.6301 54.6301C16.7949 54.707 17.9639 54.695 19.1269 54.594C19.4313 54.5474 19.7232 54.4397 19.9849 54.2773C20.2466 54.1149 20.4727 53.9012 20.6495 53.6491L20.3125 55.575C20.3125 55.575 20.2704 56.0144 19.6083 56.1769C19.6083 56.1769 19.2232 56.4056 16.5028 56.1287C14.6246 56.0192 12.7416 56.0192 10.8634 56.1287C10.8634 56.1287 12.019 55.7616 11.9889 53.4204C11.9889 53.4204 12.0792 48.5153 11.9889 42.4847C11.9889 42.4847 11.9347 40.0773 10.3579 40.1676L8.18519 40.1977C8.58519 40.0648 8.93475 39.8123 9.18662 39.4743C9.43848 39.1363 9.58051 38.7292 9.59352 38.3079V34.3296C9.54804 33.4342 9.27233 32.5656 8.79305 31.8079C8.14305 30.7125 7.22223 28.4315 5.51899 26.3912C3.81575 24.3509 2.44352 24.1583 2.44352 24.1583H6.22917C7.00387 24.4943 7.66897 25.0406 8.14908 25.7352C8.75093 26.5116 11.375 31.4407 11.375 31.4407L14.1676 26.5116C14.1676 26.5116 15.1546 24.393 13.662 24.2546H9.9125C10.2768 24.2549 10.6271 24.114 10.8897 23.8615C11.1523 23.609 11.3068 23.2645 11.3208 22.9005C11.5586 18.816 11.5867 14.7221 11.4051 10.6347C11.4051 10.6347 11.4352 8.82916 10.6708 8.3236H15.4074C15.4074 8.3236 15.2991 9.28056 16.6532 11.4773L22.8704 21.1792V10.6889C22.8704 10.6889 22.9546 8.34768 21.9134 8.17916C21.9134 8.17916 23.719 8.3176 33.3185 8.20927C33.3185 8.20927 33.9204 8.04075 34.3356 9.33473C34.3356 9.33473 35.2745 12.4403 38.35 18.4708C38.35 18.4708 39.638 15.0583 41.269 9.50325C41.269 9.50325 41.6241 8.37778 41.0583 8.14908C42.1711 8.29295 43.2978 8.29295 44.4107 8.14908C44.4107 8.14908 44.3023 8.66064 45.8792 12.7472C45.8792 12.7472 46.4148 14.1014 48.5032 19.2352C48.5032 19.2352 49.8815 15.7384 51.5125 10.2074C51.5125 10.2074 52.2227 8.60047 51.3199 8.26343C52.4439 8.38895 53.5784 8.38895 54.7023 8.26343C54.7023 8.26343 54.1005 8.52222 49.0329 24.0319H50.357C50.357 24.0319 49.7551 24.1102 49.713 25.1815V32.175C49.713 34.0969 49.713 36.4181 49.713 39.1384C49.713 39.1384 49.713 40.1676 50.6458 40.0713H51.9699C51.9699 40.0713 52.9028 40.0292 52.7583 40.3782L52.3611 42.1296C52.3611 42.1296 52.1384 41.7204 51.35 41.7204C51.35 41.7204 50.6157 41.5218 47.2032 41.606C47.2032 41.606 46.3727 41.5639 46.3787 42.2681V46.6676H49.5685C51.8255 46.7278 51.9759 46.5833 51.9759 46.5833L51.6148 48.756C51.6148 48.756 51.3861 48.5333 50.5676 48.5093C49.1665 48.3848 47.7579 48.3707 46.3546 48.4671V53.4324C46.3546 53.4324 46.3847 54.2449 47.4861 54.3051C48.501 54.4886 49.5406 54.4886 50.5556 54.3051C50.5556 54.3051 52.644 54.4315 53.0713 53.1014L52.6681 55.1296ZM56.7005 40.0472C56.0986 40.1315 55.575 39.3972 55.575 39.3972C50.2185 31.1097 49.9357 31.0796 49.9357 31.0796C53.5167 26.8667 55.6292 24.5134 55.6292 24.5134C55.9985 24.1766 56.4836 23.9955 56.9833 24.0079H59.2403C58.5233 24.4417 57.876 24.9814 57.3204 25.6088C55.1236 27.7273 52.8065 30.4597 52.8065 30.4597C58.5602 39.5657 59.8963 40.0472 59.8963 40.0472H56.7005Z" fill="white"></path></g><defs><clipPath id="clip0_1254_20648"><rect width="65" height="65" fill="white"></rect></clipPath></defs>', 2)) 54859 ], 8, _hoisted_1$1s); 54860} 54861const CoreIconLandingLogo = /* @__PURE__ */ _export_sfc(_sfc_main$1s, [["render", _sfc_render$1j]]); 54862const CoreIconLandingLogo$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54863 __proto__: null, 54864 default: CoreIconLandingLogo 54865}, Symbol.toStringTag, { value: "Module" })); 54866const _sfc_main$1r = { 54867 props: { 54868 settings: { 54869 type: Object, 54870 required: false 54871 } 54872 }, 54873 computed: { 54874 alt() { 54875 var _a, _b; 54876 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54877 }, 54878 id() { 54879 var _a, _b; 54880 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54881 } 54882 } 54883}; 54884const _hoisted_1$1r = ["aria-labelledby", "aria-label"]; 54885const _hoisted_2$1j = ["id"]; 54886function _sfc_render$1i(_ctx, _cache, $props, $setup, $data, $options) { 54887 return openBlock(), createElementBlock("svg", { 54888 width: "24", 54889 height: "24",
54890 viewBox: "0 0 24 24", 54891 fill: "none", 54892 xmlns: "http://www.w3.org/2000/svg", 54893 role: "img", 54894 "aria-labelledby": `icon-title-${$options.id}`, 54895 "aria-label": $options.alt 54896 }, [ 54897 createBaseVNode("title", { 54898 id: `icon-title-${$options.id}` 54899 }, toDisplayString($options.alt), 9, _hoisted_2$1j), 54900 _cache[0] || (_cache[0] = createBaseVNode("path", { 54901 d: "M19 3H5C3.9 3 3 3.9 3 5V19C3 20.1 3.9 21 5 21H19C20.1 21 21 20.1 21 19V5C21 3.9 20.1 3 19 3ZM5 19V5H11V19H5ZM19 19H13V12H19V19ZM19 10H13V5H19V10Z", 54902 fill: "currentColor" 54903 }, null, -1)) 54904 ], 8, _hoisted_1$1r); 54905} 54906const CoreIconLayout = /* @__PURE__ */ _export_sfc(_sfc_main$1r, [["render", _sfc_render$1i]]); 54907const CoreIconLayout$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54908 __proto__: null, 54909 default: CoreIconLayout 54910}, Symbol.toStringTag, { value: "Module" })); 54911const _sfc_main$1q = { 54912 props: { 54913 settings: { 54914 type: Object, 54915 required: false 54916 } 54917 }, 54918 computed: { 54919 alt() { 54920 var _a, _b; 54921 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54922 }, 54923 id() { 54924 var _a, _b; 54925 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54926 } 54927 } 54928}; 54929const _hoisted_1$1q = ["aria-labelledby", "aria-label"]; 54930const _hoisted_2$1i = ["id"]; 54931function _sfc_render$1h(_ctx, _cache, $props, $setup, $data, $options) { 54932 return openBlock(), createElementBlock("svg", { 54933 role: "img", 54934 width: "25", 54935 height: "24", 54936 viewBox: "0 0 25 24", 54937 fill: "none", 54938 xmlns: "http://www.w3.org/2000/svg", 54939 "aria-labelledby": `icon-title-${$options.id}`, 54940 "aria-label": $options.alt 54941 }, [ 54942 createBaseVNode("title", { 54943 id: `icon-title-${$options.id}` 54944 }, toDisplayString($options.alt), 9, _hoisted_2$1i), 54945 _cache[0] || (_cache[0] = createBaseVNode("path", { 54946 d: "M19.5 12H5.5", 54947 stroke: "currentColor", 54948 "stroke-width": "2", 54949 "stroke-linecap": "round", 54950 "stroke-linejoin": "round" 54951 }, null, -1)), 54952 _cache[1] || (_cache[1] = createBaseVNode("path", { 54953 d: "M12.5 19L5.5 12L12.5 5", 54954 stroke: "currentColor", 54955 "stroke-width": "2", 54956 "stroke-linecap": "round", 54957 "stroke-linejoin": "round" 54958 }, null, -1)) 54959 ], 8, _hoisted_1$1q); 54960} 54961const CoreIconLeftArrow = /* @__PURE__ */ _export_sfc(_sfc_main$1q, [["render", _sfc_render$1h]]); 54962const CoreIconLeftArrow$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 54963 __proto__: null, 54964 default: CoreIconLeftArrow 54965}, Symbol.toStringTag, { value: "Module" })); 54966const _sfc_main$1p = { 54967 props: { 54968 settings: { 54969 type: Object, 54970 required: false 54971 } 54972 }, 54973 computed: { 54974 alt() { 54975 var _a, _b; 54976 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 54977 }, 54978 id() { 54979 var _a, _b; 54980 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 54981 } 54982 } 54983}; 54984const _hoisted_1$1p = ["aria-labelledby", "aria-label"]; 54985const _hoisted_2$1h = ["id"]; 54986function _sfc_render$1g(_ctx, _cache, $props, $setup, $data, $options) { 54987 return openBlock(), createElementBlock("svg", { 54988 width: "24", 54989 height: "24", 54990 viewBox: "0 0 24 24", 54991 fill: "none", 54992 xmlns: "http://www.w3.org/2000/svg", 54993 role: "img", 54994 "aria-labelledby": `icon-title-${$options.id}`, 54995 "aria-label": $options.alt 54996 }, [ 54997 createBaseVNode("title", { 54998 id: `icon-title-${$options.id}` 54999 }, toDisplayString($options.alt), 9, _hoisted_2$1h), 55000 _cache[0] || (_cache[0] = createBaseVNode("path", { 55001 d: "M11 7H17V9H11V7ZM11 11H17V13H11V11ZM11 15H17V17H11V15ZM7 7H9V9H7V7ZM7 11H9V13H7V11ZM7 15H9V17H7V15ZM20.1 3H3.9C3.4 3 3 3.4 3 3.9V20.1C3 20.5 3.4 21 3.9 21H20.1C20.5 21 21 20.5 21 20.1V3.9C21 3.4 20.5 3 20.1 3ZM19 19H5V5H19V19Z", 55002 fill: "currentColor" 55003 }, null, -1)) 55004 ], 8, _hoisted_1$1p); 55005} 55006const CoreIconList = /* @__PURE__ */ _export_sfc(_sfc_main$1p, [["render", _sfc_render$1g]]); 55007const CoreIconList$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55008 __proto__: null, 55009 default: CoreIconList 55010}, Symbol.toStringTag, { value: "Module" })); 55011const _sfc_main$1o = { 55012 props: { 55013 settings: { 55014 type: Object, 55015 required: false 55016 } 55017 }, 55018 computed: { 55019 alt() { 55020 var _a, _b; 55021 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55022 }, 55023 id() { 55024 var _a, _b; 55025 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55026 } 55027 } 55028}; 55029const _hoisted_1$1o = ["aria-labelledby", "aria-label"]; 55030const _hoisted_2$1g = ["id"]; 55031function _sfc_render$1f(_ctx, _cache, $props, $setup, $data, $options) { 55032 return openBlock(), createElementBlock("svg", { 55033 width: "24", 55034 height: "24",
55035 viewBox: "0 0 24 24", 55036 fill: "none", 55037 xmlns: "http://www.w3.org/2000/svg", 55038 role: "img", 55039 "aria-labelledby": `icon-title-${$options.id}`, 55040 "aria-label": $options.alt 55041 }, [ 55042 createBaseVNode("title", { 55043 id: `icon-title-${$options.id}` 55044 }, toDisplayString($options.alt), 9, _hoisted_2$1g), 55045 _cache[0] || (_cache[0] = createBaseVNode("path", { 55046 d: "M3 13H5V11H3V13ZM3 19H5V17H3V19ZM3 7H5V5H3V7ZM7 13H21V11H7V13ZM7 19H21V17H7V19ZM7 5V7H21V5H7Z", 55047 fill: "currentColor" 55048 }, null, -1)) 55049 ], 8, _hoisted_1$1o); 55050} 55051const CoreIconListView = /* @__PURE__ */ _export_sfc(_sfc_main$1o, [["render", _sfc_render$1f]]); 55052const CoreIconListView$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55053 __proto__: null, 55054 default: CoreIconListView 55055}, Symbol.toStringTag, { value: "Module" })); 55056const _sfc_main$1n = { 55057 props: { 55058 settings: { 55059 type: Object, 55060 required: false 55061 } 55062 }, 55063 computed: { 55064 alt() { 55065 var _a, _b; 55066 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55067 }, 55068 id() { 55069 var _a, _b; 55070 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55071 }, 55072 height() { 55073 var _a; 55074 return ((_a = this.settings) == null ? void 0 : _a.height) || 24; 55075 }, 55076 width() { 55077 var _a; 55078 return ((_a = this.settings) == null ? void 0 : _a.width) || 24; 55079 } 55080 } 55081}; 55082const _hoisted_1$1n = ["aria-labelledby", "aria-label", "height", "width"]; 55083const _hoisted_2$1f = ["id"]; 55084function _sfc_render$1e(_ctx, _cache, $props, $setup, $data, $options) { 55085 return openBlock(), createElementBlock("svg", { 55086 fill: "none", 55087 role: "img", 55088 viewBox: "0 0 24 24", 55089 xmlns: "http://www.w3.org/2000/svg", 55090 "aria-labelledby": `icon-title-${$options.id}`, 55091 "aria-label": $options.alt, 55092 height: $options.height, 55093 width: $options.width 55094 }, [ 55095 createBaseVNode("title", { 55096 id: `icon-title-${$options.id}` 55097 }, toDisplayString($options.alt), 9, _hoisted_2$1f), 55098 _cache[0] || (_cache[0] = createBaseVNode("path", { 55099 d: "M18 8.5H17V6.5C17 3.74 14.76 1.5 12 1.5C9.24 1.5 7 3.74 7 6.5V8.5H6C4.9 8.5 4 9.4 4 10.5V20.5C4 21.6 4.9 22.5 6 22.5H18C19.1 22.5 20 21.6 20 20.5V10.5C20 9.4 19.1 8.5 18 8.5ZM9 6.5C9 4.84 10.34 3.5 12 3.5C13.66 3.5 15 4.84 15 6.5V8.5H9V6.5ZM18 20.5H6V10.5H18V20.5Z", 55100 fill: "currentColor" 55101 }, null, -1)) 55102 ], 8, _hoisted_1$1n); 55103} 55104const CoreIconLock = /* @__PURE__ */ _export_sfc(_sfc_main$1n, [["render", _sfc_render$1e]]); 55105const CoreIconLock$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55106 __proto__: null, 55107 default: CoreIconLock 55108}, Symbol.toStringTag, { value: "Module" })); 55109const _sfc_main$1m = { 55110 props: { 55111 settings: { 55112 type: Object, 55113 required: false 55114 } 55115 }, 55116 computed: { 55117 alt() { 55118 var _a, _b; 55119 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55120 }, 55121 id() { 55122 var _a, _b; 55123 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55124 } 55125 } 55126}; 55127const _hoisted_1$1m = ["aria-labelledby", "aria-label"]; 55128const _hoisted_2$1e = ["id"]; 55129function _sfc_render$1d(_ctx, _cache, $props, $setup, $data, $options) { 55130 return openBlock(), createElementBlock("svg", { 55131 width: "24", 55132 height: "24", 55133 viewBox: "0 0 24 24", 55134 fill: "none", 55135 xmlns: "http://www.w3.org/2000/svg", 55136 role: "img", 55137 "aria-labelledby": `icon-title-${$options.id}`, 55138 "aria-label": $options.alt 55139 }, [ 55140 createBaseVNode("title", { 55141 id: `icon-title-${$options.id}` 55142 }, toDisplayString($options.alt), 9, _hoisted_2$1e), 55143 _cache[0] || (_cache[0] = createBaseVNode("path", { 55144 d: "M21.8182 3H2.18182C0.981818 3 0 3.9 0 5V19C0 20.1 0.981818 21 2.18182 21H21.8182C23.0182 21 24 20.1 24 19V5C24 3.9 23.0182 3 21.8182 3ZM22.3636 19.5H1.63636V12V4.5H22.3636V19.5Z", 55145 fill: "currentColor" 55146 }, null, -1)), 55147 _cache[1] || (_cache[1] = createBaseVNode("path", {
55148 d: "M7.82651 11.5C9.11782 11.5 10.1743 10.4875 10.1743 9.25C10.1743 8.0125 9.11782 7 7.82651 7C6.53521 7 5.47869 8.0125 5.47869 9.25C5.47869 10.4875 6.53521 11.5 7.82651 11.5ZM7.82651 8.5C8.25695 8.5 8.60912 8.8375 8.60912 9.25C8.60912 9.6625 8.25695 10 7.82651 10C7.39608 10 7.0439 9.6625 7.0439 9.25C7.0439 8.8375 7.39608 8.5 7.82651 8.5ZM12.5222 14.9425C12.5222 13.0675 9.41521 12.2575 7.82651 12.2575C6.23782 12.2575 3.13086 13.0675 3.13086 14.9425V16H7.82651H12.5222V14.9425ZM5.07173 14.5C5.65086 14.125 6.80912 13.75 7.82651 13.75C8.8439 13.75 9.99434 14.1175 10.5813 14.5H5.07173Z", 55149 fill: "currentColor" 55150 }, null, -1)), 55151 _cache[2] || (_cache[2] = createBaseVNode("rect", { 55152 x: "14", 55153 y: "8.96094", 55154 width: "7", 55155 height: "1.5", 55156 fill: "currentColor" 55157 }, null, -1)), 55158 _cache[3] || (_cache[3] = createBaseVNode("rect", { 55159 x: "14", 55160 y: "12.9609", 55161 width: "7", 55162 height: "1.5", 55163 fill: "currentColor" 55164 }, null, -1)) 55165 ], 8, _hoisted_1$1m); 55166} 55167const CoreIconLogo = /* @__PURE__ */ _export_sfc(_sfc_main$1m, [["render", _sfc_render$1d]]); 55168const CoreIconLogo$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55169 __proto__: null, 55170 default: CoreIconLogo 55171}, Symbol.toStringTag, { value: "Module" })); 55172const _sfc_main$1l = { 55173 props: { 55174 settings: { 55175 type: Object, 55176 required: false 55177 } 55178 }, 55179 computed: { 55180 alt() { 55181 var _a, _b; 55182 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55183 }, 55184 id() { 55185 var _a, _b; 55186 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55187 } 55188 } 55189}; 55190const _hoisted_1$1l = ["aria-labelledby", "aria-label"]; 55191const _hoisted_2$1d = ["id"]; 55192function _sfc_render$1c(_ctx, _cache, $props, $setup, $data, $options) { 55193 return openBlock(), createElementBlock("svg", { 55194 width: "24", 55195 height: "24", 55196 viewBox: "0 0 24 24", 55197 fill: "none", 55198 xmlns: "http://www.w3.org/2000/svg", 55199 role: "img", 55200 "aria-labelledby": `icon-title-${$options.id}`, 55201 "aria-label": $options.alt 55202 }, [ 55203 createBaseVNode("title", { 55204 id: `icon-title-${$options.id}` 55205 }, toDisplayString($options.alt), 9, _hoisted_2$1d), 55206 _cache[0] || (_cache[0] = createStaticVNode('<path d="M5.17227 10.1035C4.13536 10.696 3.65503 10.8621 3.65503 10.8621V23.0001L8.96537 19.9656L15.0343 23.0001L20.3447 19.9656V7.82764L18.8274 8.96557" stroke="currentColor" stroke-width="1.51724" stroke-linecap="round" stroke-linejoin="round"></path><path d="M8.96558 15.4138L8.96558 19.9655" stroke="currentColor" stroke-width="1.51724" stroke-linecap="round" stroke-linejoin="round"></path><path d="M15.0344 15.4138V23" stroke="currentColor" stroke-width="1.51724" stroke-linecap="round" stroke-linejoin="round"></path><path d="M18.8275 7.82759C18.8275 13.1379 11.9999 17.6897 11.9999 17.6897C11.9999 17.6897 5.17236 13.1379 5.17236 7.82759C5.17236 6.0168 5.8917 4.28017 7.17212 2.99975C8.45254 1.71933 10.1892 1 11.9999 1C13.8107 1 15.5474 1.71933 16.8278 2.99975C18.1082 4.28017 18.8275 6.0168 18.8275 7.82759Z" stroke="currentColor" stroke-width="1.51724" stroke-linecap="round" stroke-linejoin="round"></path><path d="M12 10.1035C13.2569 10.1035 14.2758 9.08454 14.2758 7.82762C14.2758 6.5707 13.2569 5.55176 12 5.55176C10.7431 5.55176 9.72412 6.5707 9.72412 7.82762C9.72412 9.08454 10.7431 10.1035 12 10.1035Z" stroke="currentColor" stroke-width="1.51724" stroke-linecap="round" stroke-linejoin="round"></path>', 5)) 55207 ], 8, _hoisted_1$1l); 55208} 55209const CoreIconMap = /* @__PURE__ */ _export_sfc(_sfc_main$1l, [["render", _sfc_render$1c]]); 55210const CoreIconMap$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55211 __proto__: null, 55212 default: CoreIconMap 55213}, Symbol.toStringTag, { value: "Module" })); 55214const _sfc_main$1k = { 55215 props: { 55216 settings: { 55217 type: Object, 55218 required: false 55219 } 55220 }, 55221 computed: { 55222 alt() { 55223 var _a, _b; 55224 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55225 }, 55226 id() { 55227 var _a, _b; 55228 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55229 } 55230 } 55231}; 55232const _hoisted_1$1k = ["aria-labelledby", "aria-label"]; 55233const _hoisted_2$1c = ["id"]; 55234function _sfc_render$1b(_ctx, _cache, $props, $setup, $data, $options) { 55235 return openBlock(), createElementBlock("svg", { 55236 width: "24", 55237 height: "24",
55238 viewBox: "0 0 24 24", 55239 fill: "none", 55240 xmlns: "http://www.w3.org/2000/svg", 55241 role: "img", 55242 "aria-labelledby": `icon-title-${$options.id}`, 55243 "aria-label": $options.alt 55244 }, [ 55245 createBaseVNode("title", { 55246 id: `icon-title-${$options.id}` 55247 }, toDisplayString($options.alt), 9, _hoisted_2$1c), 55248 _cache[0] || (_cache[0] = createBaseVNode("path", { 55249 d: "M21 10C21 17 12 23 12 23C12 23 3 17 3 10C3 7.61305 3.94821 5.32387 5.63604 3.63604C7.32387 1.94821 9.61305 1 12 1C14.3869 1 16.6761 1.94821 18.364 3.63604C20.0518 5.32387 21 7.61305 21 10Z", 55250 stroke: "currentColor", 55251 "stroke-width": "2", 55252 "stroke-linecap": "round", 55253 "stroke-linejoin": "round" 55254 }, null, -1)), 55255 _cache[1] || (_cache[1] = createBaseVNode("path", { 55256 d: "M12 13C13.6569 13 15 11.6569 15 10C15 8.34315 13.6569 7 12 7C10.3431 7 9 8.34315 9 10C9 11.6569 10.3431 13 12 13Z", 55257 stroke: "currentColor", 55258 "stroke-width": "2", 55259 "stroke-linecap": "round", 55260 "stroke-linejoin": "round" 55261 }, null, -1)) 55262 ], 8, _hoisted_1$1k); 55263} 55264const CoreIconMapPin = /* @__PURE__ */ _export_sfc(_sfc_main$1k, [["render", _sfc_render$1b]]); 55265const CoreIconMapPin$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55266 __proto__: null, 55267 default: CoreIconMapPin 55268}, Symbol.toStringTag, { value: "Module" })); 55269const _sfc_main$1j = { 55270 props: { 55271 settings: { 55272 type: Object, 55273 required: false 55274 } 55275 }, 55276 computed: { 55277 alt() { 55278 var _a, _b; 55279 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55280 }, 55281 id() { 55282 var _a, _b; 55283 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55284 } 55285 } 55286}; 55287const _hoisted_1$1j = ["aria-labelledby", "aria-label"]; 55288const _hoisted_2$1b = ["id"]; 55289function _sfc_render$1a(_ctx, _cache, $props, $setup, $data, $options) { 55290 return openBlock(), createElementBlock("svg", { 55291 width: "24", 55292 height: "24", 55293 viewBox: "0 0 24 24", 55294 fill: "none", 55295 xmlns: "http://www.w3.org/2000/svg", 55296 role: "img", 55297 "aria-labelledby": `icon-title-${$options.id}`, 55298 "aria-label": $options.alt 55299 }, [ 55300 createBaseVNode("title", { 55301 id: `icon-title-${$options.id}` 55302 }, toDisplayString($options.alt), 9, _hoisted_2$1b), 55303 _cache[0] || (_cache[0] = createBaseVNode("path", { 55304 d: "M14.3333 5H19V9.66667", 55305 stroke: "currentColor", 55306 "stroke-width": "1.55556", 55307 "stroke-linecap": "round", 55308 "stroke-linejoin": "round" 55309 }, null, -1)), 55310 _cache[1] || (_cache[1] = createBaseVNode("path", { 55311 d: "M9.66667 19H5V14.3334", 55312 stroke: "currentColor", 55313 "stroke-width": "1.55556", 55314 "stroke-linecap": "round", 55315 "stroke-linejoin": "round" 55316 }, null, -1)), 55317 _cache[2] || (_cache[2] = createBaseVNode("path", { 55318 d: "M19 5L13.5556 10.4444", 55319 stroke: "currentColor", 55320 "stroke-width": "1.55556", 55321 "stroke-linecap": "round", 55322 "stroke-linejoin": "round" 55323 }, null, -1)), 55324 _cache[3] || (_cache[3] = createBaseVNode("path", { 55325 d: "M5 19L10.4444 13.5555", 55326 stroke: "currentColor", 55327 "stroke-width": "1.55556", 55328 "stroke-linecap": "round", 55329 "stroke-linejoin": "round" 55330 }, null, -1)) 55331 ], 8, _hoisted_1$1j); 55332} 55333const CoreIconMaximize = /* @__PURE__ */ _export_sfc(_sfc_main$1j, [["render", _sfc_render$1a]]); 55334const CoreIconMaximize$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55335 __proto__: null, 55336 default: CoreIconMaximize 55337}, Symbol.toStringTag, { value: "Module" })); 55338const _sfc_main$1i = { 55339 props: { 55340 settings: { 55341 type: Object, 55342 required: false 55343 } 55344 }, 55345 computed: { 55346 alt() { 55347 var _a, _b; 55348 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55349 }, 55350 id() { 55351 var _a, _b; 55352 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55353 } 55354 } 55355}; 55356const _hoisted_1$1i = ["aria-labelledby", "aria-label"]; 55357const _hoisted_2$1a = ["id"]; 55358function _sfc_render$19(_ctx, _cache, $props, $setup, $data, $options) { 55359 return openBlock(), createElementBlock("svg", { 55360 width: "24", 55361 height: "24",
55362 viewBox: "0 0 24 24", 55363 fill: "none", 55364 xmlns: "http://www.w3.org/2000/svg", 55365 role: "img", 55366 "aria-labelledby": `icon-title-${$options.id}`, 55367 "aria-label": $options.alt 55368 }, [ 55369 createBaseVNode("title", { 55370 id: `icon-title-${$options.id}` 55371 }, toDisplayString($options.alt), 9, _hoisted_2$1a), 55372 _cache[0] || (_cache[0] = createBaseVNode("path", { 55373 "fill-rule": "evenodd", 55374 "clip-rule": "evenodd", 55375 d: "M3 4.18C3 3.5283 3.5283 3 4.18 3H6V6H3V4.18ZM3 8H6V11H3V8ZM1 4.18V7V12V17V19.82C1 21.5763 2.42373 23 4.18 23H7H17H19.82C21.5763 23 23 21.5763 23 19.82V17V12V7V4.18C23 2.42373 21.5763 1 19.82 1H17H7H4.18C2.42373 1 1 2.42373 1 4.18ZM21 6V4.18C21 3.5283 20.4717 3 19.82 3H18V6H21ZM18 8H21V11H18V8ZM16 7V3H8V7V11H16V7ZM21 13V16H18V13H21ZM21 18H18V21H19.82C20.4717 21 21 20.4717 21 19.82V18ZM16 13V17V21H8V17V13H16ZM3 18V19.82C3 20.4717 3.5283 21 4.18 21H6V18H3ZM6 16H3V13H6V16Z", 55376 fill: "currentColor" 55377 }, null, -1)) 55378 ], 8, _hoisted_1$1i); 55379} 55380const CoreIconMedia = /* @__PURE__ */ _export_sfc(_sfc_main$1i, [["render", _sfc_render$19]]); 55381const CoreIconMedia$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55382 __proto__: null, 55383 default: CoreIconMedia 55384}, Symbol.toStringTag, { value: "Module" })); 55385const _hoisted_1$1h = ["aria-labelledby", "aria-label"]; 55386const _hoisted_2$19 = ["id"]; 55387const _sfc_main$1h = { 55388 __name: "CoreIconMessageCircle", 55389 props: { 55390 settings: { 55391 type: Object, 55392 required: false 55393 } 55394 }, 55395 setup(__props) { 55396 const props = __props; 55397 const alt = computed(() => { 55398 var _a, _b; 55399 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "Message Circle"; 55400 }); 55401 const id = computed(() => { 55402 var _a, _b; 55403 return ((_a = props.settings) == null ? void 0 : _a.id) || ((_b = props.settings) == null ? void 0 : _b.icon); 55404 }); 55405 return (_ctx, _cache) => { 55406 return openBlock(), createElementBlock("svg", { 55407 xmlns: "http://www.w3.org/2000/svg", 55408 width: "24", 55409 height: "24",
55410 viewBox: "0 0 24 24", 55411 fill: "none", 55412 role: "img", 55413 "aria-labelledby": `icon-title-${unref(id)}`, 55414 "aria-label": unref(alt) 55415 }, [ 55416 createBaseVNode("title", { 55417 id: `icon-title-${unref(id)}` 55418 }, toDisplayString(unref(alt)), 9, _hoisted_2$19), 55419 _cache[0] || (_cache[0] = createBaseVNode("path", { 55420 d: "M21 12.0278C21.0034 13.2743 20.695 14.504 20.1 15.6167C19.3944 16.95 18.3097 18.0714 16.9674 18.8554C15.6251 19.6394 14.0782 20.055 12.5 20.0556C11.1801 20.0588 9.8781 19.7676 8.69999 19.2056L3 21L4.9 15.6167C4.30493 14.504 3.99656 13.2743 4 12.0278C4.00061 10.5372 4.44061 9.07627 5.27072 7.80854C6.10082 6.54081 7.28825 5.51639 8.69999 4.85003C9.8781 4.28802 11.1801 3.99678 12.5 4.00003H13C15.0843 4.10863 17.053 4.93952 18.5291 6.33361C20.0052 7.7277 20.885 9.58702 21 11.5556V12.0278Z", 55421 stroke: "currentColor", 55422 "stroke-width": "2", 55423 "stroke-linecap": "round", 55424 "stroke-linejoin": "round" 55425 }, null, -1)) 55426 ], 8, _hoisted_1$1h); 55427 }; 55428 } 55429}; 55430const CoreIconMessageCircle = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55431 __proto__: null, 55432 default: _sfc_main$1h 55433}, Symbol.toStringTag, { value: "Module" })); 55434const _sfc_main$1g = { 55435 props: { 55436 settings: { 55437 type: Object, 55438 required: false 55439 } 55440 }, 55441 computed: { 55442 alt() { 55443 var _a, _b; 55444 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55445 }, 55446 id() { 55447 var _a, _b; 55448 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55449 } 55450 } 55451}; 55452const _hoisted_1$1g = ["aria-labelledby", "aria-label"]; 55453const _hoisted_2$18 = ["id"]; 55454function _sfc_render$18(_ctx, _cache, $props, $setup, $data, $options) { 55455 return openBlock(), createElementBlock("svg", { 55456 width: "24", 55457 height: "24", 55458 viewBox: "0 0 24 24", 55459 fill: "none", 55460 xmlns: "http://www.w3.org/2000/svg", 55461 role: "img", 55462 "aria-labelledby": `icon-title-${$options.id}`, 55463 "aria-label": $options.alt 55464 }, [ 55465 createBaseVNode("title", { 55466 id: `icon-title-${$options.id}` 55467 }, toDisplayString($options.alt), 9, _hoisted_2$18), 55468 _cache[0] || (_cache[0] = createBaseVNode("path", { 55469 d: "M4 14H10V20", 55470 stroke: "currentColor", 55471 "stroke-width": "2", 55472 "stroke-linecap": "round", 55473 "stroke-linejoin": "round" 55474 }, null, -1)), 55475 _cache[1] || (_cache[1] = createBaseVNode("path", { 55476 d: "M20 10H14V4", 55477 stroke: "currentColor", 55478 "stroke-width": "2", 55479 "stroke-linecap": "round", 55480 "stroke-linejoin": "round" 55481 }, null, -1)), 55482 _cache[2] || (_cache[2] = createBaseVNode("path", { 55483 d: "M14 10L21 3", 55484 stroke: "currentColor", 55485 "stroke-width": "2", 55486 "stroke-linecap": "round", 55487 "stroke-linejoin": "round" 55488 }, null, -1)), 55489 _cache[3] || (_cache[3] = createBaseVNode("path", { 55490 d: "M3 21L10 14", 55491 stroke: "currentColor", 55492 "stroke-width": "2", 55493 "stroke-linecap": "round", 55494 "stroke-linejoin": "round" 55495 }, null, -1)) 55496 ], 8, _hoisted_1$1g); 55497} 55498const CoreIconMinimize = /* @__PURE__ */ _export_sfc(_sfc_main$1g, [["render", _sfc_render$18]]); 55499const CoreIconMinimize$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55500 __proto__: null, 55501 default: CoreIconMinimize 55502}, Symbol.toStringTag, { value: "Module" })); 55503const _sfc_main$1f = { 55504 props: { 55505 settings: { 55506 type: Object, 55507 required: false 55508 } 55509 }, 55510 computed: { 55511 alt() { 55512 var _a, _b; 55513 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55514 }, 55515 id() { 55516 var _a, _b; 55517 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55518 } 55519 } 55520}; 55521const _hoisted_1$1f = ["aria-labelledby", "aria-label"]; 55522const _hoisted_2$17 = ["id"]; 55523function _sfc_render$17(_ctx, _cache, $props, $setup, $data, $options) { 55524 return openBlock(), createElementBlock("svg", { 55525 width: "24", 55526 height: "24",
55527 viewBox: "0 0 24 24", 55528 fill: "none", 55529 xmlns: "http://www.w3.org/2000/svg", 55530 role: "img", 55531 "aria-labelledby": `icon-title-${$options.id}`, 55532 "aria-label": $options.alt 55533 }, [ 55534 createBaseVNode("title", { 55535 id: `icon-title-${$options.id}` 55536 }, toDisplayString($options.alt), 9, _hoisted_2$17), 55537 _cache[0] || (_cache[0] = createBaseVNode("path", { 55538 d: "M20.4853 11.9999H3.51472", 55539 stroke: "currentColor", 55540 "stroke-width": "2", 55541 "stroke-linecap": "round", 55542 "stroke-linejoin": "round" 55543 }, null, -1)) 55544 ], 8, _hoisted_1$1f); 55545} 55546const CoreIconMinus = /* @__PURE__ */ _export_sfc(_sfc_main$1f, [["render", _sfc_render$17]]); 55547const CoreIconMinus$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55548 __proto__: null, 55549 default: CoreIconMinus 55550}, Symbol.toStringTag, { value: "Module" })); 55551const _sfc_main$1e = { 55552 props: { 55553 settings: { 55554 type: Object, 55555 required: false 55556 } 55557 }, 55558 computed: { 55559 alt() { 55560 var _a, _b; 55561 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55562 }, 55563 id() { 55564 var _a, _b; 55565 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55566 } 55567 } 55568}; 55569const _hoisted_1$1e = ["aria-labelledby", "aria-label"]; 55570const _hoisted_2$16 = ["id"]; 55571function _sfc_render$16(_ctx, _cache, $props, $setup, $data, $options) { 55572 return openBlock(), createElementBlock("svg", { 55573 width: "24", 55574 height: "24", 55575 viewBox: "0 0 24 24", 55576 fill: "none", 55577 xmlns: "http://www.w3.org/2000/svg", 55578 role: "img", 55579 "aria-labelledby": `icon-title-${$options.id}`, 55580 "aria-label": $options.alt 55581 }, [ 55582 createBaseVNode("title", { 55583 id: `icon-title-${$options.id}` 55584 }, toDisplayString($options.alt), 9, _hoisted_2$16), 55585 _cache[0] || (_cache[0] = createBaseVNode("path", { 55586 d: "M17 2H7C5.89543 2 5 2.89543 5 4V20C5 21.1046 5.89543 22 7 22H17C18.1046 22 19 21.1046 19 20V4C19 2.89543 18.1046 2 17 2Z", 55587 stroke: "currentColor", 55588 "stroke-width": "2", 55589 "stroke-linecap": "round", 55590 "stroke-linejoin": "round" 55591 }, null, -1)), 55592 _cache[1] || (_cache[1] = createBaseVNode("path", { 55593 d: "M12 18H12.01", 55594 stroke: "currentColor", 55595 "stroke-width": "2", 55596 "stroke-linecap": "round", 55597 "stroke-linejoin": "round" 55598 }, null, -1)) 55599 ], 8, _hoisted_1$1e); 55600} 55601const CoreIconMobilePhone = /* @__PURE__ */ _export_sfc(_sfc_main$1e, [["render", _sfc_render$16]]); 55602const CoreIconMobilePhone$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55603 __proto__: null, 55604 default: CoreIconMobilePhone 55605}, Symbol.toStringTag, { value: "Module" })); 55606const _sfc_main$1d = { 55607 props: { 55608 settings: { 55609 type: Object, 55610 required: false 55611 } 55612 }, 55613 computed: { 55614 alt() { 55615 var _a, _b; 55616 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55617 }, 55618 id() { 55619 var _a, _b; 55620 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55621 } 55622 } 55623}; 55624const _hoisted_1$1d = ["aria-labelledby", "aria-label"]; 55625const _hoisted_2$15 = ["id"]; 55626function _sfc_render$15(_ctx, _cache, $props, $setup, $data, $options) { 55627 return openBlock(), createElementBlock("svg", { 55628 width: "20", 55629 height: "19", 55630 viewBox: "0 0 20 19", 55631 fill: "none", 55632 xmlns: "http://www.w3.org/2000/svg", 55633 role: "img", 55634 "aria-labelledby": `icon-title-${$options.id}`, 55635 "aria-label": $options.alt 55636 }, [ 55637 createBaseVNode("title", { 55638 id: `icon-title-${$options.id}` 55639 }, toDisplayString($options.alt), 9, _hoisted_2$15), 55640 _cache[0] || (_cache[0] = createBaseVNode("path", { 55641 d: "M2 3H0V17C0 18.1 0.9 19 2 19H16V17H2V3Z", 55642 fill: "currentColor" 55643 }, null, -1)), 55644 _cache[1] || (_cache[1] = createBaseVNode("path", { 55645 d: "M18.1111 0H4.88889C3.84056 0 3 0.9 3 2V14C3 15.1 3.84056 16 4.88889 16H18.1111C19.15 16 20 15.1 20 14V2C20 0.9 19.1594 0 18.1111 0ZM18.1111 14H4.88889V4H18.1111V14Z", 55646 fill: "currentColor" 55647 }, null, -1)) 55648 ], 8, _hoisted_1$1d); 55649} 55650const CoreIconModal = /* @__PURE__ */ _export_sfc(_sfc_main$1d, [["render", _sfc_render$15]]); 55651const CoreIconModal$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55652 __proto__: null, 55653 default: CoreIconModal 55654}, Symbol.toStringTag, { value: "Module" })); 55655const _sfc_main$1c = { 55656 props: { 55657 settings: { 55658 type: Object, 55659 required: false 55660 } 55661 }, 55662 computed: { 55663 alt() { 55664 var _a, _b; 55665 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55666 }, 55667 id() { 55668 var _a, _b; 55669 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55670 } 55671 } 55672}; 55673const _hoisted_1$1c = ["aria-labelledby", "aria-label"]; 55674const _hoisted_2$14 = ["id"]; 55675function _sfc_render$14(_ctx, _cache, $props, $setup, $data, $options) { 55676 return openBlock(), createElementBlock("svg", { 55677 width: "24", 55678 height: "24",
55679 viewBox: "0 0 24 24", 55680 fill: "none", 55681 xmlns: "http://www.w3.org/2000/svg", 55682 role: "img", 55683 "aria-labelledby": `icon-title-${$options.id}`, 55684 "aria-label": $options.alt 55685 }, [ 55686 createBaseVNode("title", { 55687 id: `icon-title-${$options.id}` 55688 }, toDisplayString($options.alt), 9, _hoisted_2$14), 55689 _cache[0] || (_cache[0] = createBaseVNode("path", { 55690 "fill-rule": "evenodd", 55691 "clip-rule": "evenodd", 55692 d: "M3.602 6.384a.8.8 0 0 1 .8-.801h12.816a.8.8 0 0 1 .801.8V7.75h1.602V6.384a2.403 2.403 0 0 0-2.403-2.403H4.403A2.403 2.403 0 0 0 2 6.384v8.01a2.403 2.403 0 0 0 2.403 2.402h5.607v1.602H7.607a.801.801 0 0 0 0 1.602h6.407a.801.801 0 1 0 0-1.602h-2.402v-1.602h1.696v-1.602H4.403a.8.8 0 0 1-.801-.8v-8.01Z", 55693 fill: "currentColor" 55694 }, null, -1)), 55695 _cache[1] || (_cache[1] = createBaseVNode("path", { 55696 "fill-rule": "evenodd", 55697 "clip-rule": "evenodd", 55698 d: "M16.56 10.398a.397.397 0 0 0-.087.26v8.188c0 .117.042.207.087.26.045.05.08.056.097.056h4.453c.016 0 .052-.005.096-.056a.397.397 0 0 0 .087-.26v-8.188a.397.397 0 0 0-.087-.26c-.044-.05-.08-.057-.096-.057h-4.453c-.016 0-.052.006-.097.057Zm-1.5.26c0-.86.626-1.73 1.597-1.73h4.453c.97 0 1.597.87 1.597 1.73v8.188c0 .86-.626 1.73-1.598 1.73h-4.452c-.971 0-1.597-.87-1.597-1.73v-8.188Z", 55699 fill: "currentColor" 55700 }, null, -1)), 55701 _cache[2] || (_cache[2] = createBaseVNode("path", { 55702 "fill-rule": "evenodd", 55703 "clip-rule": "evenodd", 55704 d: "M18.447 18.28c0-.283.23-.514.515-.514h.006a.515.515 0 0 1 0 1.03h-.006a.515.515 0 0 1-.515-.515Z", 55705 fill: "currentColor" 55706 }, null, -1)) 55707 ], 8, _hoisted_1$1c); 55708} 55709const CoreIconMonitor = /* @__PURE__ */ _export_sfc(_sfc_main$1c, [["render", _sfc_render$14]]); 55710const CoreIconMonitor$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55711 __proto__: null, 55712 default: CoreIconMonitor 55713}, Symbol.toStringTag, { value: "Module" })); 55714const _sfc_main$1b = { 55715 props: { 55716 settings: { 55717 type: Object, 55718 required: false 55719 } 55720 }, 55721 computed: { 55722 alt() { 55723 var _a, _b; 55724 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55725 }, 55726 id() { 55727 var _a, _b; 55728 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55729 } 55730 } 55731}; 55732const _hoisted_1$1b = ["aria-labelledby", "aria-label"]; 55733const _hoisted_2$13 = ["id"]; 55734function _sfc_render$13(_ctx, _cache, $props, $setup, $data, $options) { 55735 return openBlock(), createElementBlock("svg", { 55736 width: "24", 55737 height: "24", 55738 viewBox: "0 0 24 24", 55739 fill: "none", 55740 xmlns: "http://www.w3.org/2000/svg", 55741 role: "img", 55742 "aria-labelledby": `icon-title-${$options.id}`, 55743 "aria-label": $options.alt 55744 }, [ 55745 createBaseVNode("title", { 55746 id: `icon-title-${$options.id}` 55747 }, toDisplayString($options.alt), 9, _hoisted_2$13), 55748 _cache[0] || (_cache[0] = createBaseVNode("path", { 55749 "fill-rule": "evenodd", 55750 "clip-rule": "evenodd", 55751 d: "M3 4.18C3 3.5283 3.5283 3 4.18 3H6V6H3V4.18ZM3 8H6V11H3V8ZM1 4.18V7V12V17V19.82C1 21.5763 2.42373 23 4.18 23H7H17H19.82C21.5763 23 23 21.5763 23 19.82V17V12V7V4.18C23 2.42373 21.5763 1 19.82 1H17H7H4.18C2.42373 1 1 2.42373 1 4.18ZM21 6V4.18C21 3.5283 20.4717 3 19.82 3H18V6H21ZM18 8H21V11H18V8ZM16 7V3H8V7V11H16V7ZM21 13V16H18V13H21ZM21 18H18V21H19.82C20.4717 21 21 20.4717 21 19.82V18ZM16 13V17V21H8V17V13H16ZM3 18V19.82C3 20.4717 3.5283 21 4.18 21H6V18H3ZM6 16H3V13H6V16Z", 55752 fill: "currentColor" 55753 }, null, -1)) 55754 ], 8, _hoisted_1$1b); 55755} 55756const CoreIconMovieStrip = /* @__PURE__ */ _export_sfc(_sfc_main$1b, [["render", _sfc_render$13]]); 55757const CoreIconMovieStrip$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55758 __proto__: null, 55759 default: CoreIconMovieStrip 55760}, Symbol.toStringTag, { value: "Module" })); 55761const _sfc_main$1a = { 55762 props: { 55763 settings: { 55764 type: Object, 55765 required: false 55766 } 55767 }, 55768 computed: { 55769 alt() { 55770 var _a, _b; 55771 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55772 }, 55773 id() { 55774 var _a, _b; 55775 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55776 } 55777 } 55778}; 55779const _hoisted_1$1a = ["aria-labelledby", "aria-label"]; 55780const _hoisted_2$12 = ["id"]; 55781function _sfc_render$12(_ctx, _cache, $props, $setup, $data, $options) { 55782 return openBlock(), createElementBlock("svg", { 55783 width: "24", 55784 height: "24",
55785 viewBox: "0 0 24 24", 55786 fill: "none", 55787 xmlns: "http://www.w3.org/2000/svg", 55788 role: "img", 55789 "aria-labelledby": `icon-title-${$options.id}`, 55790 "aria-label": $options.alt 55791 }, [ 55792 createBaseVNode("title", { 55793 id: `icon-title-${$options.id}` 55794 }, toDisplayString($options.alt), 9, _hoisted_2$12), 55795 _cache[0] || (_cache[0] = createBaseVNode("path", { 55796 d: "M2 3V18C2 19.645 3.35503 21 5 21H19C20.645 21 22 19.645 22 18V7H20V18C20 18.565 19.565 19 19 19C18.435 19 18 18.565 18 18V3H2ZM4 5H16V18C16 18.3883 16.279 18.658 16.416 19H5C4.43497 19 4 18.565 4 18V5ZM6 7V10H14V7H6ZM6 12V14H14V12H6ZM6 16V18H14V16H6Z", 55797 fill: "currentColor" 55798 }, null, -1)) 55799 ], 8, _hoisted_1$1a); 55800} 55801const CoreIconNews = /* @__PURE__ */ _export_sfc(_sfc_main$1a, [["render", _sfc_render$12]]); 55802const CoreIconNews$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55803 __proto__: null, 55804 default: CoreIconNews 55805}, Symbol.toStringTag, { value: "Module" })); 55806const _sfc_main$19 = { 55807 props: { 55808 settings: { 55809 type: Object, 55810 required: false 55811 } 55812 }, 55813 computed: { 55814 alt() { 55815 var _a, _b; 55816 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55817 }, 55818 id() { 55819 var _a, _b; 55820 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55821 } 55822 } 55823}; 55824const _hoisted_1$19 = ["aria-labelledby", "aria-label"]; 55825const _hoisted_2$11 = ["id"]; 55826function _sfc_render$11(_ctx, _cache, $props, $setup, $data, $options) { 55827 return openBlock(), createElementBlock("svg", { 55828 xmlns: "http://www.w3.org/2000/svg", 55829 width: "24", 55830 height: "25", 55831 viewBox: "0 0 24 25", 55832 fill: "none", 55833 role: "img", 55834 "aria-labelledby": `icon-title-${$options.id}`, 55835 "aria-label": $options.alt 55836 }, [ 55837 createBaseVNode("title", { 55838 id: `icon-title-${$options.id}` 55839 }, toDisplayString($options.alt), 9, _hoisted_2$11), 55840 _cache[0] || (_cache[0] = createBaseVNode("path", { 55841 d: "M21 11.1877L3 11.1777V13.1777H21V11.1877ZM3 16.1777H15V18.1777H3V16.1777ZM21 6.17773H3V8.18773L21 8.17773V6.17773Z", 55842 fill: "currentColor" 55843 }, null, -1)) 55844 ], 8, _hoisted_1$19); 55845} 55846const CoreIconNotes = /* @__PURE__ */ _export_sfc(_sfc_main$19, [["render", _sfc_render$11]]); 55847const CoreIconNotes$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55848 __proto__: null, 55849 default: CoreIconNotes 55850}, Symbol.toStringTag, { value: "Module" })); 55851const _sfc_main$18 = { 55852 props: { 55853 settings: { 55854 type: Object, 55855 required: false 55856 } 55857 }, 55858 computed: { 55859 alt() { 55860 var _a, _b; 55861 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55862 }, 55863 id() { 55864 var _a, _b; 55865 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55866 } 55867 } 55868}; 55869const _hoisted_1$18 = ["aria-labelledby", "aria-label"]; 55870const _hoisted_2$10 = ["id"]; 55871function _sfc_render$10(_ctx, _cache, $props, $setup, $data, $options) { 55872 return openBlock(), createElementBlock("svg", { 55873 width: "24", 55874 height: "24", 55875 viewBox: "0 0 24 24", 55876 fill: "none", 55877 xmlns: "http://www.w3.org/2000/svg", 55878 role: "img", 55879 "aria-labelledby": `icon-title-${$options.id}`, 55880 "aria-label": $options.alt 55881 }, [ 55882 createBaseVNode("title", { 55883 id: `icon-title-${$options.id}` 55884 }, toDisplayString($options.alt), 9, _hoisted_2$10), 55885 _cache[0] || (_cache[0] = createBaseVNode("path", { 55886 d: "M12 21.75C13.1 21.75 14 20.85 14 19.75H10C10 20.85 10.9 21.75 12 21.75ZM18 15.75V10.75C18 7.68 16.37 5.11 13.5 4.43V3.75C13.5 2.92 12.83 2.25 12 2.25C11.17 2.25 10.5 2.92 10.5 3.75V4.43C7.64 5.11 6 7.67 6 10.75V15.75L4 17.75V18.75H20V17.75L18 15.75ZM16 16.75H8V10.75C8 8.27 9.51 6.25 12 6.25C14.49 6.25 16 8.27 16 10.75V16.75Z", 55887 fill: "currentColor" 55888 }, null, -1)), 55889 _cache[1] || (_cache[1] = createBaseVNode("circle", { 55890 cx: "17", 55891 cy: "7", 55892 r: "3", 55893 fill: "#DE0D0D" 55894 }, null, -1)) 55895 ], 8, _hoisted_1$18); 55896} 55897const CoreIconNotificationAlert = /* @__PURE__ */ _export_sfc(_sfc_main$18, [["render", _sfc_render$10]]); 55898const CoreIconNotificationAlert$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55899 __proto__: null, 55900 default: CoreIconNotificationAlert 55901}, Symbol.toStringTag, { value: "Module" })); 55902const _sfc_main$17 = { 55903 props: { 55904 settings: { 55905 type: Object, 55906 required: false 55907 } 55908 }, 55909 computed: { 55910 alt() { 55911 var _a, _b; 55912 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55913 }, 55914 id() { 55915 var _a, _b; 55916 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55917 } 55918 } 55919}; 55920const _hoisted_1$17 = ["aria-labelledby", "aria-label"];
55921const _hoisted_2$$ = ["id"]; 55922function _sfc_render$$(_ctx, _cache, $props, $setup, $data, $options) { 55923 return openBlock(), createElementBlock("svg", { 55924 width: "24", 55925 height: "24", 55926 viewBox: "0 0 24 24", 55927 fill: "none", 55928 xmlns: "http://www.w3.org/2000/svg", 55929 role: "img", 55930 "aria-labelledby": `icon-title-${$options.id}`, 55931 "aria-label": $options.alt 55932 }, [ 55933 createBaseVNode("title", { 55934 id: `icon-title-${$options.id}` 55935 }, toDisplayString($options.alt), 9, _hoisted_2$$), 55936 _cache[0] || (_cache[0] = createBaseVNode("path", { 55937 d: "M12 21.75C13.1 21.75 14 20.85 14 19.75H10C10 20.85 10.9 21.75 12 21.75ZM18 15.75V10.75C18 7.68 16.37 5.11 13.5 4.43V3.75C13.5 2.92 12.83 2.25 12 2.25C11.17 2.25 10.5 2.92 10.5 3.75V4.43C7.64 5.11 6 7.67 6 10.75V15.75L4 17.75V18.75H20V17.75L18 15.75ZM16 16.75H8V10.75C8 8.27 9.51 6.25 12 6.25C14.49 6.25 16 8.27 16 10.75V16.75Z", 55938 fill: "currentColor" 55939 }, null, -1)) 55940 ], 8, _hoisted_1$17); 55941} 55942const CoreIconNotifications = /* @__PURE__ */ _export_sfc(_sfc_main$17, [["render", _sfc_render$$]]); 55943const CoreIconNotifications$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55944 __proto__: null, 55945 default: CoreIconNotifications 55946}, Symbol.toStringTag, { value: "Module" })); 55947const _sfc_main$16 = { 55948 props: { 55949 settings: { 55950 type: Object, 55951 required: false 55952 } 55953 }, 55954 computed: { 55955 alt() { 55956 var _a, _b; 55957 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 55958 }, 55959 id() { 55960 var _a, _b; 55961 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 55962 } 55963 } 55964}; 55965const _hoisted_1$16 = ["aria-labelledby", "aria-label"]; 55966const _hoisted_2$_ = ["id"]; 55967function _sfc_render$_(_ctx, _cache, $props, $setup, $data, $options) { 55968 return openBlock(), createElementBlock("svg", { 55969 id: "Layer_1", 55970 version: "1.1", 55971 xmlns: "http://www.w3.org/2000/svg", 55972 "xmlns:xlink": "http://www.w3.org/1999/xlink", 55973 x: "0px", 55974 y: "0px", 55975 height: "30", 55976 width: "45", 55977 viewBox: "0 0 30 14", 55978 style: { "enable-background": "new 0 0 30 14" }, 55979 "xml:space": "preserve", 55980 role: "img", 55981 "aria-labelledby": `icon-title-${$options.id}`, 55982 "aria-label": $options.alt 55983 }, [ 55984 createBaseVNode("title", { 55985 id: `icon-title-${$options.id}` 55986 }, toDisplayString($options.alt), 9, _hoisted_2$_), 55987 _cache[0] || (_cache[0] = createStaticVNode('<g data-v-600b03c5><g id="final---dec.11-2020_1_" data-v-600b03c5><g id="_x30_208-our-toggle_2_" transform="translate(-1275.000000, -200.000000)" data-v-600b03c5><g id="Final-Copy-2_2_" transform="translate(1275.000000, 200.000000)" data-v-600b03c5><path class="st0" d="M7.4,12.8h6.8l3.1-11.6H7.4C4.2,1.2,1.6,3.8,1.6,7S4.2,12.8,7.4,12.8z" data-v-600b03c5></path></g></g></g><g id="final---dec.11-2020" data-v-600b03c5><g id="_x30_208-our-toggle" transform="translate(-1275.000000, -200.000000)" data-v-600b03c5><g id="Final-Copy-2" transform="translate(1275.000000, 200.000000)" data-v-600b03c5><path class="st1" d="M22.6,0H7.4c-3.9,0-7,3.1-7,7s3.1,7,7,7h15.2c3.9,0,7-3.1,7-7S26.4,0,22.6,0z M1.6,7c0-3.2,2.6-5.8,5.8-5.8\n h9.9l-3.1,11.6H7.4C4.2,12.8,1.6,10.2,1.6,7z" data-v-600b03c5></path><path id="x" class="st2" d="M24.6,4c0.2,0.2,0.2,0.6,0,0.8l0,0L22.5,7l2.2,2.2c0.2,0.2,0.2,0.6,0,0.8c-0.2,0.2-0.6,0.2-0.8,0\n l0,0l-2.2-2.2L19.5,10c-0.2,0.2-0.6,0.2-0.8,0c-0.2-0.2-0.2-0.6,0-0.8l0,0L20.8,7l-2.2-2.2c-0.2-0.2-0.2-0.6,0-0.8\n c0.2-0.2,0.6-0.2,0.8,0l0,0l2.2,2.2L23.8,4C24,3.8,24.4,3.8,24.6,4z" data-v-600b03c5></path><path id="y" class="st3" d="M12.7,4.1c0.2,0.2,0.3,0.6,0.1,0.8l0,0L8.6,9.8C8.5,9.9,8.4,10,8.3,10c-0.2,0.1-0.5,0.1-0.7-0.1l0,0\n L5.4,7.7c-0.2-0.2-0.2-0.6,0-0.8c0.2-0.2,0.6-0.2,0.8,0l0,0L8,8.6l3.8-4.5C12,3.9,12.4,3.9,12.7,4.1z" data-v-600b03c5></path></g></g></g></g>', 1)) 55988 ], 8, _hoisted_1$16); 55989} 55990const CoreIconOneTrust = /* @__PURE__ */ _export_sfc(_sfc_main$16, [["render", _sfc_render$_], ["__scopeId", "data-v-600b03c5"]]); 55991const CoreIconOneTrust$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 55992 __proto__: null, 55993 default: CoreIconOneTrust 55994}, Symbol.toStringTag, { value: "Module" })); 55995const _sfc_main$15 = { 55996 props: { 55997 settings: { 55998 type: Object, 55999 required: false 56000 } 56001 }, 56002 computed: { 56003 alt() { 56004 var _a, _b; 56005 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 56006 }, 56007 id() { 56008 var _a, _b; 56009 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 56010 } 56011 } 56012}; 56013const _hoisted_1$15 = ["aria-labelledby", "aria-label"]; 56014const _hoisted_2$Z = ["id"]; 56015function _sfc_render$Z(_ctx, _cache, $props, $setup, $data, $options) { 56016 return openBlock(), createElementBlock("svg", { 56017 width: "24", 56018 height: "24",
56019 viewBox: "0 0 24 24", 56020 fill: "none", 56021 xmlns: "http://www.w3.org/2000/svg", 56022 role: "img", 56023 "aria-labelledby": `icon-title-${$options.id}`, 56024 "aria-label": $options.alt 56025 }, [ 56026 createBaseVNode("title", { 56027 id: `icon-title-${$options.id}` 56028 }, toDisplayString($options.alt), 9, _hoisted_2$Z), 56029 _cache[0] || (_cache[0] = createBaseVNode("path", { 56030 d: "M21 11V3H13L16.29 6.29L6.29 16.29L3 13V21H11L7.71 17.71L17.71 7.71L21 11Z", 56031 fill: "currentColor" 56032 }, null, -1)) 56033 ], 8, _hoisted_1$15); 56034} 56035const CoreIconOpenInFull = /* @__PURE__ */ _export_sfc(_sfc_main$15, [["render", _sfc_render$Z]]); 56036const CoreIconOpenInFull$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56037 __proto__: null, 56038 default: CoreIconOpenInFull 56039}, Symbol.toStringTag, { value: "Module" })); 56040const _hoisted_1$14 = ["aria-labelledby", "aria-label"]; 56041const _hoisted_2$Y = ["id"]; 56042const _sfc_main$14 = { 56043 __name: "CoreIconPaddingAll", 56044 props: { 56045 settings: { 56046 type: Object, 56047 required: false 56048 } 56049 }, 56050 setup(__props) { 56051 const props = __props; 56052 const alt = computed(() => { 56053 var _a, _b; 56054 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "Padding All"; 56055 }); 56056 const id = computed(() => { 56057 var _a, _b; 56058 return ((_a = props.settings) == null ? void 0 : _a.id) || ((_b = props.settings) == null ? void 0 : _b.icon); 56059 }); 56060 return (_ctx, _cache) => { 56061 return openBlock(), createElementBlock("svg", { 56062 xmlns: "http://www.w3.org/2000/svg", 56063 width: "18", 56064 height: "18",
56065 viewBox: "0 0 18 18", 56066 fill: "none", 56067 "aria-labelledby": `icon-title-${unref(id)}`, 56068 "aria-label": unref(alt) 56069 }, [ 56070 createBaseVNode("title", { 56071 id: `icon-title-${unref(id)}` 56072 }, toDisplayString(unref(alt)), 9, _hoisted_2$Y), 56073 _cache[0] || (_cache[0] = createStaticVNode('<path d="M2.91217 15.75L14.9894 15.75V14.25L2.91217 14.25L2.91217 15.75ZM2.456 3.75L15.3886 3.75V2.25L2.456 2.25L2.456 3.75ZM2.25 15.75H3.75L3.75 2.25L2.25 2.25L2.25 15.75Z" fill="black"></path><path d="M3.75 15.75H2.25L2.25 2.25L3.75 2.25L3.75 15.75Z" fill="black"></path><path d="M3.75 15.75H2.25L2.25 2.25L3.75 2.25L3.75 15.75Z" fill="black"></path><path d="M15.75 15.75H14.25L14.2492 2.25L15.7492 2.25L15.75 15.75Z" fill="black"></path><path d="M15.75 15.75H14.25L14.2492 2.25L15.7492 2.25L15.75 15.75Z" fill="black"></path>', 5)) 56074 ], 8, _hoisted_1$14); 56075 }; 56076 } 56077}; 56078const CoreIconPaddingAll = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56079 __proto__: null, 56080 default: _sfc_main$14 56081}, Symbol.toStringTag, { value: "Module" })); 56082const _hoisted_1$13 = ["aria-labelledby", "aria-label"]; 56083const _hoisted_2$X = ["id"]; 56084const _sfc_main$13 = { 56085 __name: "CoreIconPaddingBottom", 56086 props: { 56087 settings: { 56088 type: Object, 56089 required: false 56090 } 56091 }, 56092 setup(__props) { 56093 const props = __props; 56094 const alt = computed(() => { 56095 var _a, _b; 56096 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "Padding Bottom"; 56097 }); 56098 const id = computed(() => { 56099 var _a, _b; 56100 return ((_a = props.settings) == null ? void 0 : _a.id) || ((_b = props.settings) == null ? void 0 : _b.icon); 56101 }); 56102 return (_ctx, _cache) => { 56103 return openBlock(), createElementBlock("svg", { 56104 xmlns: "http://www.w3.org/2000/svg", 56105 width: "18", 56106 height: "18",
56107 viewBox: "0 0 18 18", 56108 fill: "none", 56109 "aria-labelledby": `icon-title-${unref(id)}`, 56110 "aria-label": unref(alt) 56111 }, [ 56112 createBaseVNode("title", { 56113 id: `icon-title-${unref(id)}` 56114 }, toDisplayString(unref(alt)), 9, _hoisted_2$X), 56115 _cache[0] || (_cache[0] = createBaseVNode("path", { 56116 d: "M15.75 9.75L15.75 8.25L14.25 8.25L14.25 9.75L15.75 9.75ZM3.75 9.75L3.75 8.25L2.25 8.25L2.25 9.75L3.75 9.75ZM15.75 12.75L15.75 11.25L14.25 11.25L14.25 12.75L15.75 12.75ZM3.75 12.75L3.75 11.25L2.25 11.25L2.25 12.75L3.75 12.75ZM15.75 15.75L15.75 14.25L2.25 14.25L2.25 15.75L15.75 15.75ZM6.75 3.75L6.75 2.25L5.25 2.25L5.25 3.75L6.75 3.75ZM15.75 6.75L15.75 5.25L14.25 5.25L14.25 6.75L15.75 6.75ZM12.75 3.75L12.75 2.25L11.25 2.25L11.25 3.75L12.75 3.75ZM2.25 3.75L3.75 3.75L3.75 2.25L2.25 2.25L2.25 3.75ZM9.75 3.75L9.75 2.25L8.25 2.25L8.25 3.75L9.75 3.75ZM15.75 3.75L15.75 2.25L14.25 2.25L14.25 3.75L15.75 3.75ZM3.75 6.75L3.75 5.25L2.25 5.25L2.25 6.75L3.75 6.75Z", 56117 fill: "black" 56118 }, null, -1)) 56119 ], 8, _hoisted_1$13); 56120 }; 56121 } 56122}; 56123const CoreIconPaddingBottom = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56124 __proto__: null, 56125 default: _sfc_main$13 56126}, Symbol.toStringTag, { value: "Module" })); 56127const _hoisted_1$12 = ["aria-labelledby", "aria-label"]; 56128const _hoisted_2$W = ["id"]; 56129const _sfc_main$12 = { 56130 __name: "CoreIconPaddingHorizontal", 56131 props: { 56132 settings: { 56133 type: Object, 56134 required: false 56135 } 56136 }, 56137 setup(__props) { 56138 const props = __props; 56139 const alt = computed(() => { 56140 var _a, _b; 56141 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "Padding Horizontal"; 56142 }); 56143 const id = computed(() => { 56144 var _a, _b; 56145 return ((_a = props.settings) == null ? void 0 : _a.id) || ((_b = props.settings) == null ? void 0 : _b.icon); 56146 }); 56147 return (_ctx, _cache) => { 56148 return openBlock(), createElementBlock("svg", { 56149 xmlns: "http://www.w3.org/2000/svg", 56150 width: "18", 56151 height: "18",
56152 viewBox: "0 0 18 18", 56153 fill: "none", 56154 "aria-labelledby": `icon-title-${unref(id)}`, 56155 "aria-label": unref(alt) 56156 }, [ 56157 createBaseVNode("title", { 56158 id: `icon-title-${unref(id)}` 56159 }, toDisplayString(unref(alt)), 9, _hoisted_2$W), 56160 _cache[0] || (_cache[0] = createStaticVNode('<path d="M8.25 15.75H9.75V14.25H8.25V15.75ZM8.25 3.75H9.75V2.25L8.25 2.25V3.75ZM5.25 15.75H6.75V14.25H5.25V15.75ZM5.25 3.75L6.75 3.75V2.25L5.25 2.25V3.75ZM2.25 15.75H3.75L3.75 2.25L2.25 2.25L2.25 15.75ZM11.25 15.75H12.75V14.25H11.25V15.75ZM11.25 3.75H12.75V2.25L11.25 2.25V3.75Z" fill="black"></path><path d="M3.75 15.75H2.25L2.25 2.25L3.75 2.25L3.75 15.75Z" fill="black"></path><path d="M3.75 15.75H2.25L2.25 2.25L3.75 2.25L3.75 15.75Z" fill="black"></path><path d="M15.75 15.75H14.25L14.2492 2.25L15.7492 2.25L15.75 15.75Z" fill="black"></path><path d="M15.75 15.75H14.25L14.2492 2.25L15.7492 2.25L15.75 15.75Z" fill="black"></path>', 5)) 56161 ], 8, _hoisted_1$12); 56162 }; 56163 } 56164}; 56165const CoreIconPaddingHorizontal = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56166 __proto__: null, 56167 default: _sfc_main$12 56168}, Symbol.toStringTag, { value: "Module" })); 56169const _hoisted_1$11 = ["aria-labelledby", "aria-label"]; 56170const _hoisted_2$V = ["id"]; 56171const _sfc_main$11 = { 56172 __name: "CoreIconPaddingLeft", 56173 props: { 56174 settings: { 56175 type: Object, 56176 required: false 56177 } 56178 }, 56179 setup(__props) { 56180 const props = __props; 56181 const alt = computed(() => { 56182 var _a, _b; 56183 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "Padding Left"; 56184 }); 56185 const id = computed(() => { 56186 var _a, _b; 56187 return ((_a = props.settings) == null ? void 0 : _a.id) || ((_b = props.settings) == null ? void 0 : _b.icon); 56188 }); 56189 return (_ctx, _cache) => { 56190 return openBlock(), createElementBlock("svg", { 56191 xmlns: "http://www.w3.org/2000/svg", 56192 width: "18", 56193 height: "18",
56194 viewBox: "0 0 18 18", 56195 fill: "none", 56196 "aria-labelledby": `icon-title-${unref(id)}`, 56197 "aria-label": unref(alt) 56198 }, [ 56199 createBaseVNode("title", { 56200 id: `icon-title-${unref(id)}` 56201 }, toDisplayString(unref(alt)), 9, _hoisted_2$V), 56202 _cache[0] || (_cache[0] = createBaseVNode("path", { 56203 d: "M8.25 15.75H9.75V14.25H8.25V15.75ZM8.25 3.75H9.75V2.25L8.25 2.25V3.75ZM5.25 15.75H6.75V14.25H5.25V15.75ZM5.25 3.75L6.75 3.75V2.25L5.25 2.25V3.75ZM2.25 15.75H3.75L3.75 2.25L2.25 2.25L2.25 15.75ZM14.25 6.75H15.75V5.25H14.25V6.75ZM11.25 15.75H12.75V14.25H11.25V15.75ZM14.25 12.75H15.75V11.25H14.25V12.75ZM14.25 2.25V3.75L15.75 3.75V2.25L14.25 2.25ZM14.25 9.75H15.75V8.25H14.25V9.75ZM14.25 15.75H15.75V14.25H14.25V15.75ZM11.25 3.75H12.75V2.25L11.25 2.25V3.75Z", 56204 fill: "black" 56205 }, null, -1)) 56206 ], 8, _hoisted_1$11); 56207 }; 56208 } 56209}; 56210const CoreIconPaddingLeft = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56211 __proto__: null, 56212 default: _sfc_main$11 56213}, Symbol.toStringTag, { value: "Module" })); 56214const _hoisted_1$10 = ["aria-labelledby", "aria-label"]; 56215const _hoisted_2$U = ["id"]; 56216const _sfc_main$10 = { 56217 __name: "CoreIconPaddingRight", 56218 props: { 56219 settings: { 56220 type: Object, 56221 required: false 56222 } 56223 }, 56224 setup(__props) { 56225 const props = __props; 56226 const alt = computed(() => { 56227 var _a, _b; 56228 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "Padding Right"; 56229 }); 56230 const id = computed(() => { 56231 var _a, _b; 56232 return ((_a = props.settings) == null ? void 0 : _a.id) || ((_b = props.settings) == null ? void 0 : _b.icon); 56233 }); 56234 return (_ctx, _cache) => { 56235 return openBlock(), createElementBlock("svg", { 56236 xmlns: "http://www.w3.org/2000/svg", 56237 width: "18", 56238 height: "18",
56239 viewBox: "0 0 18 18", 56240 fill: "none", 56241 "aria-labelledby": `icon-title-${unref(id)}`, 56242 "aria-label": unref(alt) 56243 }, [ 56244 createBaseVNode("title", { 56245 id: `icon-title-${unref(id)}` 56246 }, toDisplayString(unref(alt)), 9, _hoisted_2$U), 56247 _cache[0] || (_cache[0] = createBaseVNode("path", { 56248 d: "M9.75 2.25L8.25 2.25L8.25 3.75L9.75 3.75L9.75 2.25ZM9.75 14.25L8.25 14.25L8.25 15.75L9.75 15.75L9.75 14.25ZM12.75 2.25L11.25 2.25L11.25 3.75L12.75 3.75L12.75 2.25ZM12.75 14.25L11.25 14.25L11.25 15.75L12.75 15.75L12.75 14.25ZM15.75 2.25L14.25 2.25L14.25 15.75L15.75 15.75L15.75 2.25ZM3.75 11.25L2.25 11.25L2.25 12.75L3.75 12.75L3.75 11.25ZM6.75 2.25L5.25 2.25L5.25 3.75L6.75 3.75L6.75 2.25ZM3.75 5.25L2.25 5.25L2.25 6.75L3.75 6.75L3.75 5.25ZM3.75 15.75L3.75 14.25L2.25 14.25L2.25 15.75L3.75 15.75ZM3.75 8.25L2.25 8.25L2.25 9.75L3.75 9.75L3.75 8.25ZM3.75 2.25L2.25 2.25L2.25 3.75L3.75 3.75L3.75 2.25ZM6.75 14.25L5.25 14.25L5.25 15.75L6.75 15.75L6.75 14.25Z", 56249 fill: "black" 56250 }, null, -1)) 56251 ], 8, _hoisted_1$10); 56252 }; 56253 } 56254}; 56255const CoreIconPaddingRight = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56256 __proto__: null, 56257 default: _sfc_main$10 56258}, Symbol.toStringTag, { value: "Module" })); 56259const _hoisted_1$$ = ["aria-labelledby", "aria-label"]; 56260const _hoisted_2$T = ["id"]; 56261const _sfc_main$$ = { 56262 __name: "CoreIconPaddingTop", 56263 props: { 56264 settings: { 56265 type: Object, 56266 required: false 56267 } 56268 }, 56269 setup(__props) { 56270 const props = __props; 56271 const alt = computed(() => { 56272 var _a, _b; 56273 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "Padding Top"; 56274 }); 56275 const id = computed(() => { 56276 var _a, _b; 56277 return ((_a = props.settings) == null ? void 0 : _a.id) || ((_b = props.settings) == null ? void 0 : _b.icon); 56278 }); 56279 return (_ctx, _cache) => { 56280 return openBlock(), createElementBlock("svg", { 56281 xmlns: "http://www.w3.org/2000/svg", 56282 width: "18", 56283 height: "18",
56284 viewBox: "0 0 18 18", 56285 fill: "none", 56286 "aria-labelledby": `icon-title-${unref(id)}`, 56287 "aria-label": unref(alt) 56288 }, [ 56289 createBaseVNode("title", { 56290 id: `icon-title-${unref(id)}` 56291 }, toDisplayString(unref(alt)), 9, _hoisted_2$T), 56292 _cache[0] || (_cache[0] = createBaseVNode("path", { 56293 d: "M2.25 8.25L2.25 9.75L3.75 9.75L3.75 8.25L2.25 8.25ZM14.25 8.25L14.25 9.75L15.75 9.75L15.75 8.25L14.25 8.25ZM2.25 5.25L2.25 6.75L3.75 6.75L3.75 5.25L2.25 5.25ZM14.25 5.25L14.25 6.75L15.75 6.75L15.75 5.25L14.25 5.25ZM2.25 2.25L2.25 3.75L15.75 3.75L15.75 2.25L2.25 2.25ZM11.25 14.25L11.25 15.75L12.75 15.75L12.75 14.25L11.25 14.25ZM2.25 11.25L2.25 12.75L3.75 12.75L3.75 11.25L2.25 11.25ZM5.25 14.25L5.25 15.75L6.75 15.75L6.75 14.25L5.25 14.25ZM15.75 14.25L14.25 14.25L14.25 15.75L15.75 15.75L15.75 14.25ZM8.25 14.25L8.25 15.75L9.75 15.75L9.75 14.25L8.25 14.25ZM2.25 14.25L2.25 15.75L3.75 15.75L3.75 14.25L2.25 14.25ZM14.25 11.25L14.25 12.75L15.75 12.75L15.75 11.25L14.25 11.25Z", 56294 fill: "black" 56295 }, null, -1)) 56296 ], 8, _hoisted_1$$); 56297 }; 56298 } 56299}; 56300const CoreIconPaddingTop = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56301 __proto__: null, 56302 default: _sfc_main$$ 56303}, Symbol.toStringTag, { value: "Module" })); 56304const _sfc_main$_ = { 56305 props: { 56306 settings: { 56307 type: Object, 56308 required: false 56309 } 56310 }, 56311 computed: { 56312 alt() { 56313 var _a, _b; 56314 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 56315 }, 56316 id() { 56317 var _a, _b; 56318 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 56319 } 56320 } 56321}; 56322const _hoisted_1$_ = ["aria-labelledby", "aria-label"]; 56323const _hoisted_2$S = ["id"]; 56324function _sfc_render$Y(_ctx, _cache, $props, $setup, $data, $options) { 56325 return openBlock(), createElementBlock("svg", { 56326 width: "24", 56327 height: "24", 56328 viewBox: "0 0 27 27", 56329 fill: "none", 56330 xmlns: "http://www.w3.org/2000/svg", 56331 stroke: "currentColor", 56332 "aria-labelledby": `icon-title-${$options.id}`, 56333 "aria-label": $options.alt 56334 }, [ 56335 createBaseVNode("title", { 56336 id: `icon-title-${$options.id}` 56337 }, toDisplayString($options.alt), 9, _hoisted_2$S), 56338 _cache[0] || (_cache[0] = createBaseVNode("path", { 56339 d: "M14.3004 2.19922H6.60039C6.01691 2.19922 5.45734 2.431 5.04476 2.84358C4.63218 3.25616 4.40039 3.81574 4.40039 4.39922V21.9992C4.40039 22.5827 4.63218 23.1423 5.04476 23.5549C5.45734 23.9674 6.01691 24.1992 6.60039 24.1992H19.8004C20.3839 24.1992 20.9434 23.9674 21.356 23.5549C21.7686 23.1423 22.0004 22.5827 22.0004 21.9992V9.89922L14.3004 2.19922Z", 56340 "stroke-width": "1.83", 56341 "stroke-linecap": "round", 56342 "stroke-linejoin": "round" 56343 }, null, -1)), 56344 _cache[1] || (_cache[1] = createBaseVNode("path", { 56345 d: "M14.2998 2.19922V9.89922H21.9998", 56346 "stroke-width": "1.83", 56347 "stroke-linecap": "round", 56348 "stroke-linejoin": "round" 56349 }, null, -1)) 56350 ], 8, _hoisted_1$_); 56351} 56352const CoreIconPage = /* @__PURE__ */ _export_sfc(_sfc_main$_, [["render", _sfc_render$Y]]); 56353const CoreIconPage$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56354 __proto__: null, 56355 default: CoreIconPage 56356}, Symbol.toStringTag, { value: "Module" })); 56357const _sfc_main$Z = { 56358 props: { 56359 settings: { 56360 type: Object, 56361 required: false 56362 } 56363 }, 56364 computed: { 56365 alt() { 56366 var _a, _b; 56367 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 56368 }, 56369 id() { 56370 var _a, _b; 56371 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 56372 } 56373 } 56374}; 56375const _hoisted_1$Z = ["aria-labelledby", "aria-label"]; 56376const _hoisted_2$R = ["id"]; 56377function _sfc_render$X(_ctx, _cache, $props, $setup, $data, $options) { 56378 return openBlock(), createElementBlock("svg", { 56379 width: "24", 56380 height: "24", 56381 viewBox: "0 0 24 24", 56382 fill: "none", 56383 xmlns: "http://www.w3.org/2000/svg", 56384 role: "img", 56385 "aria-labelledby": `icon-title-${$options.id}`, 56386 "aria-label": $options.alt 56387 }, [ 56388 createBaseVNode("title", { 56389 id: `icon-title-${$options.id}` 56390 }, toDisplayString($options.alt), 9, _hoisted_2$R), 56391 _cache[0] || (_cache[0] = createBaseVNode("path", { 56392 d: "M16.5 1H4.5C3.4 1 2.5 1.9 2.5 3V17H4.5V3H16.5V1ZM15.5 5H8.5C7.4 5 6.51 5.9 6.51 7L6.5 21C6.5 22.1 7.39 23 8.49 23H19.5C20.6 23 21.5 22.1 21.5 21V11L15.5 5ZM8.5 21V7H14.5V12H19.5V21H8.5Z", 56393 fill: "currentColor" 56394 }, null, -1)) 56395 ], 8, _hoisted_1$Z); 56396} 56397const CoreIconPages = /* @__PURE__ */ _export_sfc(_sfc_main$Z, [["render", _sfc_render$X]]); 56398const CoreIconPages$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56399 __proto__: null, 56400 default: CoreIconPages 56401}, Symbol.toStringTag, { value: "Module" })); 56402const _sfc_main$Y = { 56403 props: { 56404 settings: { 56405 type: Object, 56406 required: false 56407 } 56408 }, 56409 computed: { 56410 alt() { 56411 var _a, _b; 56412 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 56413 }, 56414 id() { 56415 var _a, _b; 56416 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 56417 } 56418 } 56419}; 56420const _hoisted_1$Y = ["aria-labelledby", "aria-label"]; 56421const _hoisted_2$Q = ["id"]; 56422function _sfc_render$W(_ctx, _cache, $props, $setup, $data, $options) { 56423 return openBlock(), createElementBlock("svg", { 56424 role: "img", 56425 width: "20", 56426 height: "20",
56427 viewBox: "0 0 20 20", 56428 fill: "none", 56429 xmlns: "http://www.w3.org/2000/svg", 56430 "aria-labelledby": `icon-title-${$options.id}`, 56431 "aria-label": $options.alt 56432 }, [ 56433 createBaseVNode("title", { 56434 id: `icon-title-${$options.id}` 56435 }, toDisplayString($options.alt), 9, _hoisted_2$Q), 56436 _cache[0] || (_cache[0] = createStaticVNode('<path d="M10 20C4.49 20 0 15.51 0 10C0 4.49 4.49 0 10 0C15.51 0 20 4.04 20 9C20 12.31 17.31 15 14 15H12.23C11.95 15 11.73 15.22 11.73 15.5C11.73 15.62 11.78 15.73 11.86 15.83C12.27 16.3 12.5 16.89 12.5 17.5C12.5 18.88 11.38 20 10 20ZM10 2C5.59 2 2 5.59 2 10C2 14.41 5.59 18 10 18C10.28 18 10.5 17.78 10.5 17.5C10.5 17.34 10.42 17.22 10.36 17.15C9.95 16.69 9.73 16.1 9.73 15.5C9.73 14.12 10.85 13 12.23 13H14C16.21 13 18 11.21 18 9C18 5.14 14.41 2 10 2Z" fill="currentColor"></path><path d="M4.5 11C5.32843 11 6 10.3284 6 9.5C6 8.67157 5.32843 8 4.5 8C3.67157 8 3 8.67157 3 9.5C3 10.3284 3.67157 11 4.5 11Z" fill="currentColor"></path><path d="M7.5 7C8.32843 7 9 6.32843 9 5.5C9 4.67157 8.32843 4 7.5 4C6.67157 4 6 4.67157 6 5.5C6 6.32843 6.67157 7 7.5 7Z" fill="currentColor"></path><path d="M12.5 7C13.3284 7 14 6.32843 14 5.5C14 4.67157 13.3284 4 12.5 4C11.6716 4 11 4.67157 11 5.5C11 6.32843 11.6716 7 12.5 7Z" fill="currentColor"></path><path d="M15.5 11C16.3284 11 17 10.3284 17 9.5C17 8.67157 16.3284 8 15.5 8C14.6716 8 14 8.67157 14 9.5C14 10.3284 14.6716 11 15.5 11Z" fill="currentColor"></path>', 5)) 56437 ], 8, _hoisted_1$Y); 56438} 56439const CoreIconPaintersPalette = /* @__PURE__ */ _export_sfc(_sfc_main$Y, [["render", _sfc_render$W]]); 56440const CoreIconPaintersPalette$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56441 __proto__: null, 56442 default: CoreIconPaintersPalette 56443}, Symbol.toStringTag, { value: "Module" })); 56444const _sfc_main$X = { 56445 props: { 56446 settings: { 56447 type: Object, 56448 required: false 56449 } 56450 }, 56451 computed: { 56452 alt() { 56453 var _a, _b; 56454 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 56455 }, 56456 id() { 56457 var _a, _b; 56458 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 56459 } 56460 } 56461}; 56462const _hoisted_1$X = ["aria-labelledby", "aria-label"]; 56463const _hoisted_2$P = ["id"]; 56464function _sfc_render$V(_ctx, _cache, $props, $setup, $data, $options) { 56465 return openBlock(), createElementBlock("svg", { 56466 width: "24", 56467 height: "24", 56468 viewBox: "0 0 24 24", 56469 fill: "none", 56470 xmlns: "http://www.w3.org/2000/svg", 56471 role: "img", 56472 "aria-labelledby": `icon-title-${$options.id}`, 56473 "aria-label": $options.alt 56474 }, [ 56475 createBaseVNode("title", { 56476 id: `icon-title-${$options.id}` 56477 }, toDisplayString($options.alt), 9, _hoisted_2$P), 56478 _cache[0] || (_cache[0] = createBaseVNode("path", { 56479 d: "M10 4H6V20H10V4Z", 56480 stroke: "currentColor", 56481 "stroke-width": "2", 56482 "stroke-linecap": "round", 56483 "stroke-linejoin": "round" 56484 }, null, -1)), 56485 _cache[1] || (_cache[1] = createBaseVNode("path", { 56486 d: "M18 4H14V20H18V4Z", 56487 stroke: "currentColor", 56488 "stroke-width": "2", 56489 "stroke-linecap": "round", 56490 "stroke-linejoin": "round" 56491 }, null, -1)) 56492 ], 8, _hoisted_1$X); 56493} 56494const CoreIconPause = /* @__PURE__ */ _export_sfc(_sfc_main$X, [["render", _sfc_render$V]]); 56495const CoreIconPause$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56496 __proto__: null, 56497 default: CoreIconPause 56498}, Symbol.toStringTag, { value: "Module" })); 56499const _sfc_main$W = { 56500 props: { 56501 settings: { 56502 type: Object, 56503 required: false 56504 } 56505 }, 56506 computed: { 56507 alt() { 56508 var _a, _b; 56509 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 56510 }, 56511 id() { 56512 var _a, _b; 56513 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 56514 } 56515 } 56516}; 56517const _hoisted_1$W = ["aria-labelledby", "aria-label"]; 56518const _hoisted_2$O = ["id"]; 56519function _sfc_render$U(_ctx, _cache, $props, $setup, $data, $options) { 56520 return openBlock(), createElementBlock("svg", { 56521 width: "48", 56522 height: "48",
56523 viewBox: "0 0 48 48", 56524 fill: "none", 56525 xmlns: "http://www.w3.org/2000/svg", 56526 role: "img", 56527 "aria-labelledby": `icon-title-${$options.id}`, 56528 "aria-label": $options.alt 56529 }, [ 56530 createBaseVNode("title", { 56531 id: `icon-title-${$options.id}` 56532 }, toDisplayString($options.alt), 9, _hoisted_2$O), 56533 _cache[0] || (_cache[0] = createBaseVNode("rect", { 56534 x: "1", 56535 y: "1", 56536 width: "46", 56537 height: "46", 56538 rx: "23", 56539 fill: "var(--_core__container_control_carousel_svg_fill)" 56540 }, null, -1)), 56541 _cache[1] || (_cache[1] = createBaseVNode("rect", { 56542 x: "1", 56543 y: "1", 56544 width: "46", 56545 height: "46", 56546 rx: "23", 56547 "stroke-width": "2" 56548 }, null, -1)), 56549 _cache[2] || (_cache[2] = createBaseVNode("path", { 56550 d: "M21.3333 13.334H16V34.6673H21.3333V13.334Z", 56551 fill: "var(--_core__container_control_carousel_svg_stroke)", 56552 stroke: "var(--_core__container_control_carousel_svg_stroke)", 56553 "stroke-linecap": "round", 56554 "stroke-linejoin": "round" 56555 }, null, -1)), 56556 _cache[3] || (_cache[3] = createBaseVNode("path", { 56557 d: "M31.9998 13.334H26.6665V34.6673H31.9998V13.334Z",
56558 fill: "var(--_core__container_control_carousel_svg_stroke)", 56559 stroke: "var(--_core__container_control_carousel_svg_stroke)", 56560 "stroke-linecap": "round", 56561 "stroke-linejoin": "round" 56562 }, null, -1)) 56563 ], 8, _hoisted_1$W); 56564} 56565const CoreIconPauseCircle = /* @__PURE__ */ _export_sfc(_sfc_main$W, [["render", _sfc_render$U]]); 56566const CoreIconPauseCircle$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56567 __proto__: null, 56568 default: CoreIconPauseCircle 56569}, Symbol.toStringTag, { value: "Module" })); 56570const _sfc_main$V = { 56571 props: { 56572 settings: { 56573 type: Object, 56574 required: false 56575 } 56576 }, 56577 computed: { 56578 alt() { 56579 var _a, _b; 56580 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 56581 }, 56582 id() { 56583 var _a, _b; 56584 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 56585 } 56586 } 56587}; 56588const _hoisted_1$V = ["aria-labelledby", "aria-label"]; 56589const _hoisted_2$N = ["id"]; 56590function _sfc_render$T(_ctx, _cache, $props, $setup, $data, $options) { 56591 return openBlock(), createElementBlock("svg", { 56592 width: "24", 56593 height: "24", 56594 version: "1.1", 56595 xmlns: "http://www.w3.org/2000/svg", 56596 "xmlns:xlink": "http://www.w3.org/1999/xlink", 56597 viewBox: "0 0 31 31", 56598 style: { "enable-background": "new 0 0 31 31" }, 56599 fill: "currentColor", 56600 "aria-labelledby": `icon-title-${$options.id}`, 56601 "aria-label": $options.alt 56602 }, [ 56603 createBaseVNode("title", { 56604 id: `icon-title-${$options.id}` 56605 }, toDisplayString($options.alt), 9, _hoisted_2$N), 56606 _cache[0] || (_cache[0] = createBaseVNode("path", { d: "M29.9,8.6L22,0.9c-0.2-0.2-0.5-0.3-0.7-0.3H9.5C8,0.6,6.7,1.8,6.7,3.3v7.4H2.4c-1.2,0-2.2,1-2.2,2.1v8.4\n c0,1.2,1,2.1,2.2,2.1h4.3v4.6c0,1.5,1.3,2.7,2.8,2.7h17.8c1.6,0,2.8-1.2,2.8-2.7V9.3C30.2,9.1,30.1,8.8,29.9,8.6z M26.8,8.5h-4.9\n V3.7L26.8,8.5z M8.8,23.4h9.7c1.2,0,2.2-1,2.2-2.1v-8.4c0-1.2-1-2.1-2.2-2.1H8.8V3.3c0-0.4,0.3-0.7,0.7-0.7h10.2v6.8\n c0,0.6,0.5,1,1,1h7.3v17.5c0,0.4-0.3,0.7-0.7,0.7H9.5c-0.4,0-0.7-0.3-0.7-0.7V23.4z M2.2,12.8c0-0.1,0.1-0.1,0.1-0.1h16\n c0.1,0,0.1,0.1,0.1,0.1v8.4c0,0.1-0.1,0.1-0.1,0.1h-16c-0.1,0-0.1-0.1-0.1-0.1V12.8z" }, null, -1)), 56607 _cache[1] || (_cache[1] = createBaseVNode("path", { d: "M7.4,15c-0.2-0.3-0.5-0.5-0.8-0.6c-0.2-0.1-0.6-0.1-1.3-0.1H3.5v5.5h1.3l0,0v-2h0.6c0.5,0,0.9,0,1.1-0.1\n c0.2,0,0.4-0.1,0.6-0.3c0.2-0.1,0.4-0.3,0.5-0.6c0.1-0.2,0.2-0.5,0.2-0.9C7.7,15.6,7.6,15.3,7.4,15z M6.4,16.1c0,0.1,0,0.2-0.1,0.3\n c-0.1,0.1-0.2,0.2-0.3,0.2c-0.1,0-0.3,0.1-0.8,0.1H4.8v-1.2h0.4c0.4,0,0.6,0,0.7,0c0.1,0,0.3,0.1,0.4,0.2\n C6.4,15.8,6.4,15.9,6.4,16.1z" }, null, -1)), 56608 _cache[2] || (_cache[2] = createBaseVNode("path", { d: "M12.8,15.8c-0.1-0.3-0.3-0.6-0.5-0.9c-0.2-0.2-0.5-0.4-0.8-0.5c-0.2-0.1-0.6-0.1-1-0.1h-2v5.5h2.1\n c0.4,0,0.7,0,1-0.1c0.3-0.1,0.6-0.3,0.8-0.4c0.3-0.2,0.5-0.6,0.6-1c0.1-0.3,0.2-0.7,0.2-1.1C13,16.6,12.9,16.2,12.8,15.8z\n M11.6,17.1c0,0.4,0,0.7-0.1,0.9c-0.1,0.2-0.1,0.4-0.2,0.5c-0.1,0.1-0.2,0.2-0.4,0.2c-0.1,0-0.3,0-0.6,0H9.6l0,0v-3.2H10\n c0.4,0,0.7,0,0.8,0c0.2,0,0.3,0.1,0.4,0.2c0.1,0.1,0.2,0.3,0.3,0.5C11.6,16.4,11.6,16.7,11.6,17.1z" }, null, -1)), 56609 _cache[3] || (_cache[3] = createBaseVNode("polygon", { points: "17.4,15.4 17.4,14.3 13.6,14.3 13.6,19.8 14.9,19.8 14.9,19.8 14.9,17.6 17.1,17.6 17.1,16.5\n 14.9,16.5 14.9,15.4 " }, null, -1)) 56610 ], 8, _hoisted_1$V); 56611} 56612const CoreIconPdf = /* @__PURE__ */ _export_sfc(_sfc_main$V, [["render", _sfc_render$T]]); 56613const CoreIconPdf$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56614 __proto__: null, 56615 default: CoreIconPdf 56616}, Symbol.toStringTag, { value: "Module" })); 56617const _sfc_main$U = { 56618 props: { 56619 settings: { 56620 type: Object, 56621 required: false 56622 } 56623 }, 56624 computed: { 56625 alt() { 56626 var _a, _b; 56627 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 56628 }, 56629 id() { 56630 var _a, _b; 56631 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 56632 } 56633 } 56634}; 56635const _hoisted_1$U = ["aria-labelledby", "aria-label"]; 56636const _hoisted_2$M = ["id"]; 56637function _sfc_render$S(_ctx, _cache, $props, $setup, $data, $options) { 56638 return openBlock(), createElementBlock("svg", { 56639 role: "img", 56640 width: "24", 56641 height: "24",
56642 viewBox: "0 0 24 24", 56643 fill: "none", 56644 xmlns: "http://www.w3.org/2000/svg", 56645 "aria-labelledby": `icon-title-${$options.id}`, 56646 "aria-label": $options.alt 56647 }, [ 56648 createBaseVNode("title", { 56649 id: `icon-title-${$options.id}` 56650 }, toDisplayString($options.alt), 9, _hoisted_2$M), 56651 _cache[0] || (_cache[0] = createBaseVNode("path", { 56652 d: "M21.9999 16.92V19.92C22.0011 20.1985 21.944 20.4741 21.8324 20.7293C21.7209 20.9845 21.5572 21.2136 21.352 21.4018C21.1468 21.5901 20.9045 21.7335 20.6407 21.8227C20.3769 21.9119 20.0973 21.945 19.8199 21.92C16.7428 21.5856 13.7869 20.5341 11.1899 18.85C8.77376 17.3146 6.72527 15.2661 5.18993 12.85C3.49991 10.2412 2.44818 7.27097 2.11993 4.17997C2.09494 3.90344 2.12781 3.62474 2.21643 3.3616C2.30506 3.09846 2.4475 2.85666 2.6347 2.6516C2.82189 2.44653 3.04974 2.28268 3.30372 2.1705C3.55771 2.05831 3.83227 2.00024 4.10993 1.99997H7.10993C7.59524 1.9952 8.06572 2.16705 8.43369 2.48351C8.80166 2.79996 9.04201 3.23942 9.10993 3.71997C9.23656 4.68004 9.47138 5.6227 9.80993 6.52997C9.94448 6.8879 9.9736 7.27689 9.89384 7.65086C9.81408 8.02482 9.6288 8.36809 9.35993 8.63998L8.08993 9.90997C9.51349 12.4135 11.5864 14.4864 14.0899 15.91L15.3599 14.64C15.6318 14.3711 15.9751 14.1858 16.3491 14.1061C16.723 14.0263 17.112 14.0554 17.4699 14.19C18.3772 14.5285 19.3199 14.7634 20.2799 14.89C20.7657 14.9585 21.2093 15.2032 21.5265 15.5775C21.8436 15.9518 22.0121 16.4296 21.9999 16.92Z", 56653 stroke: "currentColor", 56654 "stroke-width": "2", 56655 "stroke-linecap": "round", 56656 "stroke-linejoin": "round" 56657 }, null, -1)) 56658 ], 8, _hoisted_1$U); 56659} 56660const CoreIconPhone = /* @__PURE__ */ _export_sfc(_sfc_main$U, [["render", _sfc_render$S]]); 56661const CoreIconPhone$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56662 __proto__: null, 56663 default: CoreIconPhone 56664}, Symbol.toStringTag, { value: "Module" })); 56665const _sfc_main$T = { 56666 props: { 56667 settings: { 56668 type: Object, 56669 required: false 56670 } 56671 }, 56672 computed: { 56673 alt() { 56674 var _a, _b; 56675 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 56676 }, 56677 id() { 56678 var _a, _b; 56679 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 56680 } 56681 } 56682}; 56683const _hoisted_1$T = ["aria-labelledby", "aria-label"]; 56684const _hoisted_2$L = ["id"]; 56685function _sfc_render$R(_ctx, _cache, $props, $setup, $data, $options) { 56686 return openBlock(), createElementBlock("svg", { 56687 width: "24", 56688 height: "24", 56689 viewBox: "0 0 24 24", 56690 fill: "none", 56691 xmlns: "http://www.w3.org/2000/svg", 56692 role: "img", 56693 "aria-labelledby": `icon-title-${$options.id}`, 56694 "aria-label": $options.alt 56695 }, [ 56696 createBaseVNode("title", { 56697 id: `icon-title-${$options.id}` 56698 }, toDisplayString($options.alt), 9, _hoisted_2$L), 56699 _cache[0] || (_cache[0] = createBaseVNode("path", { 56700 d: "M20 4V16H8V4H20ZM20 2H8C6.9 2 6 2.9 6 4V16C6 17.1 6.9 18 8 18H20C21.1 18 22 17.1 22 16V4C22 2.9 21.1 2 20 2ZM11.5 11.67L13.19 13.93L15.67 10.83L19 15H9L11.5 11.67ZM2 6V20C2 21.1 2.9 22 4 22H18V20H4V6H2Z", 56701 fill: "currentColor" 56702 }, null, -1)) 56703 ], 8, _hoisted_1$T); 56704} 56705const CoreIconPhotoLibrary = /* @__PURE__ */ _export_sfc(_sfc_main$T, [["render", _sfc_render$R]]); 56706const CoreIconPhotoLibrary$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56707 __proto__: null, 56708 default: CoreIconPhotoLibrary 56709}, Symbol.toStringTag, { value: "Module" })); 56710const _sfc_main$S = { 56711 props: { 56712 settings: { 56713 type: Object, 56714 required: false 56715 } 56716 }, 56717 computed: { 56718 alt() { 56719 var _a, _b; 56720 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 56721 }, 56722 id() { 56723 var _a, _b; 56724 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 56725 } 56726 } 56727}; 56728const _hoisted_1$S = ["aria-labelledby", "aria-label"]; 56729const _hoisted_2$K = ["id"]; 56730function _sfc_render$Q(_ctx, _cache, $props, $setup, $data, $options) { 56731 return openBlock(), createElementBlock("svg", { 56732 width: "24", 56733 height: "24",
56734 viewBox: "0 0 24 24", 56735 fill: "none", 56736 xmlns: "http://www.w3.org/2000/svg", 56737 role: "img", 56738 "aria-labelledby": `icon-title-${$options.id}`, 56739 "aria-label": $options.alt 56740 }, [ 56741 createBaseVNode("title", { 56742 id: `icon-title-${$options.id}` 56743 }, toDisplayString($options.alt), 9, _hoisted_2$K), 56744 _cache[0] || (_cache[0] = createBaseVNode("path", { 56745 d: "M5 3L19 12L5 21V3Z", 56746 stroke: "currentColor", 56747 "stroke-width": "2", 56748 "stroke-linecap": "round", 56749 "stroke-linejoin": "round" 56750 }, null, -1)) 56751 ], 8, _hoisted_1$S); 56752} 56753const CoreIconPlay = /* @__PURE__ */ _export_sfc(_sfc_main$S, [["render", _sfc_render$Q]]); 56754const CoreIconPlay$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56755 __proto__: null, 56756 default: CoreIconPlay 56757}, Symbol.toStringTag, { value: "Module" })); 56758const _sfc_main$R = { 56759 props: { 56760 settings: { 56761 type: Object, 56762 required: false 56763 } 56764 }, 56765 computed: { 56766 alt() { 56767 var _a, _b; 56768 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 56769 }, 56770 id() { 56771 var _a, _b; 56772 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 56773 } 56774 } 56775}; 56776const _hoisted_1$R = ["aria-labelledby", "aria-label"]; 56777const _hoisted_2$J = ["id"]; 56778function _sfc_render$P(_ctx, _cache, $props, $setup, $data, $options) { 56779 return openBlock(), createElementBlock("svg", { 56780 width: "24", 56781 height: "24", 56782 viewBox: "0 0 24 24", 56783 fill: "none", 56784 xmlns: "http://www.w3.org/2000/svg", 56785 role: "img", 56786 "aria-labelledby": `icon-title-${$options.id}`, 56787 "aria-label": $options.alt 56788 }, [ 56789 createBaseVNode("title", { 56790 id: `icon-title-${$options.id}` 56791 }, toDisplayString($options.alt), 9, _hoisted_2$J), 56792 _cache[0] || (_cache[0] = createBaseVNode("path", { 56793 d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", 56794 stroke: "currentColor", 56795 "stroke-width": "2", 56796 "stroke-linecap": "round", 56797 "stroke-linejoin": "round" 56798 }, null, -1)), 56799 _cache[1] || (_cache[1] = createBaseVNode("path", { 56800 d: "M10 8L16 12L10 16V8Z", 56801 fill: "currentColor", 56802 stroke: "currentColor", 56803 "stroke-width": "2", 56804 "stroke-linecap": "round", 56805 "stroke-linejoin": "round" 56806 }, null, -1)) 56807 ], 8, _hoisted_1$R); 56808} 56809const CoreIconPlayCircle = /* @__PURE__ */ _export_sfc(_sfc_main$R, [["render", _sfc_render$P]]); 56810const CoreIconPlayCircle$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56811 __proto__: null, 56812 default: CoreIconPlayCircle 56813}, Symbol.toStringTag, { value: "Module" })); 56814const _sfc_main$Q = { 56815 props: { 56816 settings: { 56817 type: Object, 56818 required: false, 56819 default: () => ({}) 56820 } 56821 }, 56822 computed: { 56823 alt() { 56824 var _a, _b; 56825 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 56826 }, 56827 id() { 56828 var _a, _b; 56829 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 56830 } 56831 } 56832}; 56833const _hoisted_1$Q = ["aria-labelledby", "aria-label"]; 56834const _hoisted_2$I = ["id"]; 56835function _sfc_render$O(_ctx, _cache, $props, $setup, $data, $options) { 56836 return openBlock(), createElementBlock("svg", { 56837 width: "48", 56838 height: "48", 56839 viewBox: "0 0 48 48", 56840 fill: "none", 56841 xmlns: "http://www.w3.org/2000/svg", 56842 role: "img", 56843 "aria-labelledby": `icon-title-${$options.id}`, 56844 "aria-label": $options.alt 56845 }, [ 56846 createBaseVNode("title", { 56847 id: `icon-title-${$options.id}` 56848 }, toDisplayString($options.alt), 9, _hoisted_2$I), 56849 _cache[0] || (_cache[0] = createBaseVNode("rect", { 56850 x: "1", 56851 y: "1", 56852 width: "46", 56853 height: "46", 56854 rx: "23",
56855 fill: "var(--_core__container_control_carousel_svg_fill)" 56856 }, null, -1)), 56857 _cache[1] || (_cache[1] = createBaseVNode("rect", { 56858 x: "1", 56859 y: "1", 56860 width: "46", 56861 height: "46", 56862 rx: "23", 56863 "stroke-width": "2" 56864 }, null, -1)), 56865 _cache[2] || (_cache[2] = createBaseVNode("path", { 56866 d: "M17.6665 12L36.3332 24L17.6665 36V12Z", 56867 fill: "var(--_core__container_control_carousel_svg_stroke)", 56868 stroke: "var(--_core__container_control_carousel_svg_stroke)", 56869 "stroke-width": "2", 56870 "stroke-linecap": "round", 56871 "stroke-linejoin": "round" 56872 }, null, -1)) 56873 ], 8, _hoisted_1$Q); 56874} 56875const CoreIconPlayCircleButton = /* @__PURE__ */ _export_sfc(_sfc_main$Q, [["render", _sfc_render$O]]); 56876const CoreIconPlayCircleButton$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56877 __proto__: null, 56878 default: CoreIconPlayCircleButton 56879}, Symbol.toStringTag, { value: "Module" })); 56880const _sfc_main$P = { 56881 props: { 56882 settings: { 56883 type: Object, 56884 required: false 56885 } 56886 }, 56887 computed: { 56888 alt() { 56889 var _a, _b; 56890 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 56891 }, 56892 id() { 56893 var _a, _b; 56894 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 56895 } 56896 } 56897}; 56898const _hoisted_1$P = ["aria-labelledby", "aria-label"]; 56899const _hoisted_2$H = ["id"]; 56900function _sfc_render$N(_ctx, _cache, $props, $setup, $data, $options) { 56901 return openBlock(), createElementBlock("svg", { 56902 width: "24", 56903 height: "24", 56904 viewBox: "0 0 24 24", 56905 fill: "none", 56906 xmlns: "http://www.w3.org/2000/svg", 56907 role: "img", 56908 "aria-labelledby": `icon-title-${$options.id}`, 56909 "aria-label": $options.alt 56910 }, [ 56911 createBaseVNode("title", { 56912 id: `icon-title-${$options.id}` 56913 }, toDisplayString($options.alt), 9, _hoisted_2$H), 56914 _cache[0] || (_cache[0] = createBaseVNode("path", { 56915 d: "M20.4853 11.9999H3.51472", 56916 stroke: "currentColor", 56917 "stroke-width": "2", 56918 "stroke-linecap": "round", 56919 "stroke-linejoin": "round" 56920 }, null, -1)), 56921 _cache[1] || (_cache[1] = createBaseVNode("path", { 56922 d: "M12 3.51465V20.4852", 56923 stroke: "currentColor", 56924 "stroke-width": "2", 56925 "stroke-linecap": "round", 56926 "stroke-linejoin": "round" 56927 }, null, -1)) 56928 ], 8, _hoisted_1$P); 56929} 56930const CoreIconPlus = /* @__PURE__ */ _export_sfc(_sfc_main$P, [["render", _sfc_render$N]]); 56931const CoreIconPlus$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56932 __proto__: null, 56933 default: CoreIconPlus 56934}, Symbol.toStringTag, { value: "Module" })); 56935const _sfc_main$O = { 56936 props: { 56937 settings: { 56938 type: Object, 56939 required: false 56940 } 56941 }, 56942 computed: { 56943 alt() { 56944 var _a, _b; 56945 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 56946 }, 56947 id() { 56948 var _a, _b; 56949 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 56950 } 56951 } 56952}; 56953const _hoisted_1$O = ["aria-labelledby", "aria-label"]; 56954const _hoisted_2$G = ["id"]; 56955function _sfc_render$M(_ctx, _cache, $props, $setup, $data, $options) { 56956 return openBlock(), createElementBlock("svg", { 56957 width: "24", 56958 height: "24", 56959 viewBox: "0 0 24 24", 56960 fill: "none", 56961 xmlns: "http://www.w3.org/2000/svg", 56962 role: "img", 56963 "aria-labelledby": `icon-title-${$options.id}`, 56964 "aria-label": $options.alt 56965 }, [ 56966 createBaseVNode("title", { 56967 id: `icon-title-${$options.id}` 56968 }, toDisplayString($options.alt), 9, _hoisted_2$G), 56969 _cache[0] || (_cache[0] = createBaseVNode("path", { 56970 d: "M10.738 3.96274L2.26802 18.1027C2.09339 18.4052 2.00099 18.748 2.00001 19.0973C1.99903 19.4465 2.08951 19.7899 2.26245 20.0933C2.43538 20.3967 2.68474 20.6495 2.98573 20.8266C3.28671 21.0037 3.62882 21.0989 3.97802 21.1027H20.918C21.2672 21.0989 21.6093 21.0037 21.9103 20.8266C22.2113 20.6495 22.4607 20.3967 22.6336 20.0933C22.8065 19.7899 22.897 19.4465 22.896 19.0973C22.8951 18.748 22.8027 18.4052 22.628 18.1027L14.158 3.96274C13.9797 3.66885 13.7287 3.42586 13.4292 3.25723C13.1297 3.08859 12.7918 3 12.448 3C12.1043 3 11.7663 3.08859 11.4668 3.25723C11.1673 3.42586 10.9163 3.66885 10.738 3.96274V3.96274Z", 56971 stroke: "currentColor", 56972 "stroke-width": "2", 56973 "stroke-linecap": "round", 56974 "stroke-linejoin": "round" 56975 }, null, -1)), 56976 _cache[1] || (_cache[1] = createBaseVNode("path", { 56977 d: "M12.448 9.10278V13.1028", 56978 stroke: "currentColor", 56979 "stroke-width": "2", 56980 "stroke-linecap": "round", 56981 "stroke-linejoin": "round" 56982 }, null, -1)), 56983 _cache[2] || (_cache[2] = createBaseVNode("path", { 56984 d: "M12.448 17.1028H12.458", 56985 stroke: "currentColor", 56986 "stroke-width": "2", 56987 "stroke-linecap": "round", 56988 "stroke-linejoin": "round" 56989 }, null, -1)) 56990 ], 8, _hoisted_1$O); 56991} 56992const CoreIconQuestionMark = /* @__PURE__ */ _export_sfc(_sfc_main$O, [["render", _sfc_render$M]]); 56993const CoreIconQuestionMark$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 56994 __proto__: null, 56995 default: CoreIconQuestionMark 56996}, Symbol.toStringTag, { value: "Module" })); 56997const _sfc_main$N = { 56998 props: { 56999 settings: { 57000 type: Object, 57001 required: false, 57002 default: () => { 57003 } 57004 } 57005 }, 57006 computed: { 57007 alt() { 57008 var _a, _b; 57009 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57010 }, 57011 id() { 57012 var _a, _b; 57013 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57014 } 57015 } 57016}; 57017const _hoisted_1$N = ["aria-labelledby", "aria-label"]; 57018const _hoisted_2$F = ["id"]; 57019function _sfc_render$L(_ctx, _cache, $props, $setup, $data, $options) { 57020 return openBlock(), createElementBlock("svg", { 57021 xmlns: "http://www.w3.org/2000/svg", 57022 width: "24", 57023 height: "24",
57024 viewBox: "0 0 24 24", 57025 fill: "none", 57026 role: "img", 57027 "aria-labelledby": `icon-title-${$options.id}`, 57028 "aria-label": $options.alt 57029 }, [ 57030 createBaseVNode("title", { 57031 id: `icon-title-${$options.id}` 57032 }, toDisplayString($options.alt), 9, _hoisted_2$F), 57033 _cache[0] || (_cache[0] = createBaseVNode("path", { 57034 d: "M21 3.5H3C1.9 3.5 1 4.4 1 5.5V18.5C1 19.6 1.9 20.5 3 20.5H21C22.1 20.5 23 19.6 23 18.5V5.5C23 4.4 22.1 3.5 21 3.5ZM3 18.5V5.5H11V18.5H3ZM21 18.5H13V5.5H21V18.5ZM14 9H20V10.5H14V9ZM14 11.5H20V13H14V11.5ZM14 14H20V15.5H14V14Z", 57035 fill: "CurrentColor" 57036 }, null, -1)) 57037 ], 8, _hoisted_1$N); 57038} 57039const CoreIconReaderMode = /* @__PURE__ */ _export_sfc(_sfc_main$N, [["render", _sfc_render$L]]); 57040const CoreIconReaderMode$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57041 __proto__: null, 57042 default: CoreIconReaderMode 57043}, Symbol.toStringTag, { value: "Module" })); 57044const _sfc_main$M = { 57045 props: { 57046 settings: { 57047 type: Object, 57048 required: false 57049 } 57050 }, 57051 computed: { 57052 alt() { 57053 var _a, _b; 57054 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57055 }, 57056 id() { 57057 var _a, _b; 57058 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57059 } 57060 } 57061}; 57062const _hoisted_1$M = ["aria-labelledby", "aria-label"]; 57063const _hoisted_2$E = ["id"]; 57064function _sfc_render$K(_ctx, _cache, $props, $setup, $data, $options) { 57065 return openBlock(), createElementBlock("svg", { 57066 width: "24", 57067 height: "24", 57068 viewBox: "0 0 24 24", 57069 fill: "none", 57070 xmlns: "http://www.w3.org/2000/svg", 57071 role: "img", 57072 "aria-labelledby": `icon-title-${$options.id}`, 57073 "aria-label": $options.alt 57074 }, [ 57075 createBaseVNode("title", { 57076 id: `icon-title-${$options.id}` 57077 }, toDisplayString($options.alt), 9, _hoisted_2$E), 57078 _cache[0] || (_cache[0] = createBaseVNode("path", { 57079 d: "M18.63 11.1C16.78 9.49 14.38 8.5 11.73 8.5C7.08002 8.5 3.15002 11.53 1.77002 15.72L4.13002 16.5C5.18002 13.31 8.18002 11 11.73 11C13.68 11 15.46 11.72 16.85 12.88L13.23 16.5H22.23V7.5L18.63 11.1Z", 57080 fill: "currentColor" 57081 }, null, -1)) 57082 ], 8, _hoisted_1$M); 57083} 57084const CoreIconRedo = /* @__PURE__ */ _export_sfc(_sfc_main$M, [["render", _sfc_render$K]]); 57085const CoreIconRedo$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57086 __proto__: null, 57087 default: CoreIconRedo 57088}, Symbol.toStringTag, { value: "Module" })); 57089const _sfc_main$L = { 57090 props: { 57091 settings: { 57092 type: Object, 57093 required: false 57094 } 57095 }, 57096 computed: { 57097 alt() { 57098 var _a, _b; 57099 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57100 }, 57101 id() { 57102 var _a, _b; 57103 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57104 } 57105 } 57106}; 57107const _hoisted_1$L = ["aria-labelledby", "aria-label"]; 57108const _hoisted_2$D = ["id"]; 57109function _sfc_render$J(_ctx, _cache, $props, $setup, $data, $options) { 57110 return openBlock(), createElementBlock("svg", { 57111 width: "24", 57112 height: "24", 57113 viewBox: "0 0 24 24", 57114 fill: "none", 57115 xmlns: "http://www.w3.org/2000/svg", 57116 role: "img", 57117 "aria-labelledby": `icon-title-${$options.id}`, 57118 "aria-label": $options.alt 57119 }, [ 57120 createBaseVNode("title", { 57121 id: `icon-title-${$options.id}` 57122 }, toDisplayString($options.alt), 9, _hoisted_2$D), 57123 _cache[0] || (_cache[0] = createBaseVNode("path", { 57124 d: "M3 9H21", 57125 stroke: "currentColor", 57126 "stroke-width": "2", 57127 "stroke-linecap": "round", 57128 "stroke-linejoin": "round" 57129 }, null, -1)), 57130 _cache[1] || (_cache[1] = createBaseVNode("path", { 57131 d: "M3 4H21", 57132 stroke: "currentColor", 57133 "stroke-width": "2", 57134 "stroke-linecap": "round", 57135 "stroke-linejoin": "round" 57136 }, null, -1)), 57137 _cache[2] || (_cache[2] = createBaseVNode("path", { 57138 d: "M3 14H21", 57139 stroke: "currentColor", 57140 "stroke-width": "2", 57141 "stroke-linecap": "round", 57142 "stroke-linejoin": "round" 57143 }, null, -1)), 57144 _cache[3] || (_cache[3] = createBaseVNode("path", { 57145 d: "M3 19H21", 57146 stroke: "currentColor", 57147 "stroke-width": "2", 57148 "stroke-linecap": "round", 57149 "stroke-linejoin": "round" 57150 }, null, -1)) 57151 ], 8, _hoisted_1$L); 57152} 57153const CoreIconReorder = /* @__PURE__ */ _export_sfc(_sfc_main$L, [["render", _sfc_render$J]]); 57154const CoreIconReorder$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57155 __proto__: null, 57156 default: CoreIconReorder 57157}, Symbol.toStringTag, { value: "Module" })); 57158const _sfc_main$K = { 57159 props: { 57160 settings: { 57161 type: Object, 57162 default: () => ({}) 57163 } 57164 }, 57165 computed: { 57166 alt() { 57167 var _a, _b; 57168 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57169 }, 57170 id() { 57171 var _a, _b; 57172 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57173 } 57174 } 57175}; 57176const _hoisted_1$K = ["aria-labelledby", "aria-label"]; 57177const _hoisted_2$C = ["id"]; 57178function _sfc_render$I(_ctx, _cache, $props, $setup, $data, $options) { 57179 return openBlock(), createElementBlock("svg", { 57180 xmlns: "http://www.w3.org/2000/svg", 57181 width: "22", 57182 height: "23",
57183 viewBox: "0 0 22 23", 57184 fill: "none", 57185 "aria-labelledby": `icon-title-${$options.id}`, 57186 "aria-label": $options.alt 57187 }, [ 57188 createBaseVNode("title", { 57189 id: `icon-title-${$options.id}` 57190 }, toDisplayString($options.alt), 9, _hoisted_2$C), 57191 _cache[0] || (_cache[0] = createStaticVNode('<g clip-path="url(#clip0_143_10767)"><path d="M15.5832 0.989899L19.2499 4.65657L15.5832 8.32323" stroke="currentColor" stroke-width="1.83333" stroke-linecap="round" stroke-linejoin="round"></path><path d="M2.74982 10.1566V8.32325C2.74982 7.35079 3.13613 6.41816 3.82376 5.73053C4.51139 5.04289 5.44402 4.65659 6.41648 4.65659H19.2498" stroke="currentColor" stroke-width="1.83333" stroke-linecap="round" stroke-linejoin="round"></path><path d="M6.41648 21.1566L2.74982 17.4899L6.41648 13.8232" stroke="currentColor" stroke-width="1.83333" stroke-linecap="round" stroke-linejoin="round"></path><path d="M19.2498 11.9899V13.8232C19.2498 14.7957 18.8635 15.7283 18.1759 16.416C17.4882 17.1036 16.5556 17.4899 15.5832 17.4899H2.74982" stroke="currentColor" stroke-width="1.83333" stroke-linecap="round" stroke-linejoin="round"></path></g><defs><clipPath id="clip0_143_10767"><rect width="22" height="22" fill="white" transform="translate(0 0.0732422)"></rect></clipPath></defs>', 2)) 57192 ], 8, _hoisted_1$K); 57193} 57194const CoreIconReplace = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["render", _sfc_render$I]]); 57195const CoreIconReplace$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57196 __proto__: null, 57197 default: CoreIconReplace 57198}, Symbol.toStringTag, { value: "Module" })); 57199const _sfc_main$J = { 57200 props: { 57201 settings: { 57202 type: Object, 57203 required: false 57204 } 57205 }, 57206 computed: { 57207 alt() { 57208 var _a, _b; 57209 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57210 }, 57211 id() { 57212 var _a, _b; 57213 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57214 } 57215 } 57216}; 57217const _hoisted_1$J = ["aria-labelledby", "aria-label"]; 57218const _hoisted_2$B = ["id"]; 57219function _sfc_render$H(_ctx, _cache, $props, $setup, $data, $options) { 57220 return openBlock(), createElementBlock("svg", { 57221 width: "24", 57222 height: "24", 57223 viewBox: "0 0 24 24", 57224 fill: "none", 57225 xmlns: "http://www.w3.org/2000/svg", 57226 role: "img", 57227 "aria-labelledby": `icon-title-${$options.id}`, 57228 "aria-label": $options.alt 57229 }, [ 57230 createBaseVNode("title", { 57231 id: `icon-title-${$options.id}` 57232 }, toDisplayString($options.alt), 9, _hoisted_2$B), 57233 _cache[0] || (_cache[0] = createBaseVNode("path", { 57234 d: "M2 4V10H8", 57235 stroke: "currentColor", 57236 "stroke-width": "2", 57237 "stroke-linecap": "round", 57238 "stroke-linejoin": "round" 57239 }, null, -1)), 57240 _cache[1] || (_cache[1] = createBaseVNode("path", { 57241 d: "M4.51 14.9999C5.15839 16.8403 6.38734 18.4201 8.01166 19.5013C9.63598 20.5825 11.5677 21.1065 13.5157 20.9944C15.4637 20.8823 17.3226 20.1401 18.8121 18.8797C20.3017 17.6193 21.3413 15.9089 21.7742 14.0063C22.2072 12.1037 22.0101 10.1119 21.2126 8.33105C20.4152 6.55019 19.0605 5.07674 17.3528 4.13271C15.6451 3.18868 13.6769 2.82521 11.7447 3.09707C9.81245 3.36892 8.02091 4.26137 6.64 5.63995L2 9.99995", 57242 stroke: "currentColor", 57243 "stroke-width": "2", 57244 "stroke-linecap": "round", 57245 "stroke-linejoin": "round" 57246 }, null, -1)) 57247 ], 8, _hoisted_1$J); 57248} 57249const CoreIconReplay = /* @__PURE__ */ _export_sfc(_sfc_main$J, [["render", _sfc_render$H]]); 57250const CoreIconReplay$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57251 __proto__: null, 57252 default: CoreIconReplay 57253}, Symbol.toStringTag, { value: "Module" })); 57254const _sfc_main$I = { 57255 props: { 57256 settings: { 57257 type: Object, 57258 required: false 57259 } 57260 }, 57261 computed: { 57262 alt() { 57263 var _a, _b; 57264 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57265 }, 57266 id() { 57267 var _a, _b; 57268 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57269 } 57270 } 57271}; 57272const _hoisted_1$I = ["aria-labelledby", "aria-label"]; 57273const _hoisted_2$A = ["id"]; 57274function _sfc_render$G(_ctx, _cache, $props, $setup, $data, $options) { 57275 return openBlock(), createElementBlock("svg", { 57276 width: "24", 57277 height: "24",
57278 viewBox: "0 0 24 24", 57279 fill: "none", 57280 xmlns: "http://www.w3.org/2000/svg", 57281 role: "img", 57282 "aria-labelledby": `icon-title-${$options.id}`, 57283 "aria-label": $options.alt 57284 }, [ 57285 createBaseVNode("title", { 57286 id: `icon-title-${$options.id}` 57287 }, toDisplayString($options.alt), 9, _hoisted_2$A), 57288 _cache[0] || (_cache[0] = createBaseVNode("path", { 57289 d: "M11 8V13L15.25 15.52L16.02 14.24L12.5 12.15V8H11ZM21 10V3L18.36 5.64C16.74 4.01 14.49 3 12 3C7.03 3 3 7.03 3 12C3 16.97 7.03 21 12 21C16.97 21 21 16.97 21 12H19C19 15.86 15.86 19 12 19C8.14 19 5 15.86 5 12C5 8.14 8.14 5 12 5C13.93 5 15.68 5.79 16.95 7.05L14 10H21Z", 57290 fill: "currentColor" 57291 }, null, -1)) 57292 ], 8, _hoisted_1$I); 57293} 57294const CoreIconRevert = /* @__PURE__ */ _export_sfc(_sfc_main$I, [["render", _sfc_render$G]]); 57295const CoreIconRevert$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57296 __proto__: null, 57297 default: CoreIconRevert 57298}, Symbol.toStringTag, { value: "Module" })); 57299const _sfc_main$H = { 57300 props: { 57301 settings: { 57302 type: Object, 57303 required: false 57304 } 57305 }, 57306 computed: { 57307 alt() { 57308 var _a, _b; 57309 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57310 }, 57311 id() { 57312 var _a, _b; 57313 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57314 } 57315 } 57316}; 57317const _hoisted_1$H = ["aria-labelledby", "aria-label"]; 57318const _hoisted_2$z = ["id"]; 57319function _sfc_render$F(_ctx, _cache, $props, $setup, $data, $options) { 57320 return openBlock(), createElementBlock("svg", { 57321 width: "25", 57322 height: "24", 57323 viewBox: "0 0 25 24", 57324 fill: "none", 57325 xmlns: "http://www.w3.org/2000/svg", 57326 role: "img", 57327 "aria-labelledby": `icon-title-${$options.id}`, 57328 "aria-label": $options.alt 57329 }, [ 57330 createBaseVNode("title", { 57331 id: `icon-title-${$options.id}` 57332 }, toDisplayString($options.alt), 9, _hoisted_2$z), 57333 _cache[0] || (_cache[0] = createBaseVNode("path", { 57334 d: "M5.5 12H19.5", 57335 stroke: "currentColor", 57336 "stroke-width": "2", 57337 "stroke-linecap": "round", 57338 "stroke-linejoin": "round" 57339 }, null, -1)), 57340 _cache[1] || (_cache[1] = createBaseVNode("path", { 57341 d: "M12.5 5L19.5 12L12.5 19", 57342 stroke: "currentColor", 57343 "stroke-width": "2", 57344 "stroke-linecap": "round", 57345 "stroke-linejoin": "round" 57346 }, null, -1)) 57347 ], 8, _hoisted_1$H); 57348} 57349const CoreIconRightArrow = /* @__PURE__ */ _export_sfc(_sfc_main$H, [["render", _sfc_render$F]]); 57350const CoreIconRightArrow$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57351 __proto__: null, 57352 default: CoreIconRightArrow 57353}, Symbol.toStringTag, { value: "Module" })); 57354const _sfc_main$G = { 57355 props: { 57356 settings: { 57357 type: Object, 57358 required: false, 57359 default: () => { 57360 } 57361 } 57362 }, 57363 computed: { 57364 alt() { 57365 var _a, _b; 57366 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57367 }, 57368 id() { 57369 var _a, _b; 57370 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57371 } 57372 } 57373}; 57374const _hoisted_1$G = ["aria-labelledby", "aria-label"]; 57375const _hoisted_2$y = ["id"]; 57376function _sfc_render$E(_ctx, _cache, $props, $setup, $data, $options) { 57377 return openBlock(), createElementBlock("svg", { 57378 xmlns: "http://www.w3.org/2000/svg", 57379 width: "24", 57380 height: "24", 57381 viewBox: "0 0 24 24", 57382 fill: "none", 57383 role: "img", 57384 "aria-labelledby": `icon-title-${$options.id}`, 57385 "aria-label": $options.alt 57386 }, [ 57387 createBaseVNode("title", { 57388 id: `icon-title-${$options.id}` 57389 }, toDisplayString($options.alt), 9, _hoisted_2$y), 57390 _cache[0] || (_cache[0] = createBaseVNode("path", { 57391 d: "M19 3H5C3.9 3 3 3.9 3 5V19C3 20.1 3.9 21 5 21H19C20.1 21 21 20.1 21 19V5C21 3.9 20.1 3 19 3ZM19 19H5V5H19V19Z", 57392 fill: "CurrentColor" 57393 }, null, -1)) 57394 ], 8, _hoisted_1$G); 57395} 57396const CoreIconRoundedSquare = /* @__PURE__ */ _export_sfc(_sfc_main$G, [["render", _sfc_render$E]]); 57397const CoreIconRoundedSquare$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57398 __proto__: null, 57399 default: CoreIconRoundedSquare 57400}, Symbol.toStringTag, { value: "Module" })); 57401const _sfc_main$F = { 57402 props: { 57403 settings: { 57404 type: Object, 57405 required: false 57406 } 57407 }, 57408 computed: { 57409 alt() { 57410 var _a, _b; 57411 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57412 }, 57413 id() { 57414 var _a, _b; 57415 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57416 } 57417 } 57418}; 57419const _hoisted_1$F = ["aria-labelledby", "aria-label"]; 57420const _hoisted_2$x = ["id"]; 57421function _sfc_render$D(_ctx, _cache, $props, $setup, $data, $options) { 57422 return openBlock(), createElementBlock("svg", { 57423 width: "24", 57424 height: "24",
57425 viewBox: "0 0 24 24", 57426 fill: "none", 57427 xmlns: "http://www.w3.org/2000/svg", 57428 role: "img", 57429 "aria-labelledby": `icon-title-${$options.id}`, 57430 "aria-label": $options.alt 57431 }, [ 57432 createBaseVNode("title", { 57433 id: `icon-title-${$options.id}` 57434 }, toDisplayString($options.alt), 9, _hoisted_2$x), 57435 _cache[0] || (_cache[0] = createBaseVNode("path", { 57436 d: "M10.5266 18.6089C14.9449 18.6089 18.5266 15.0272 18.5266 10.6089C18.5266 6.19061 14.9449 2.60889 10.5266 2.60889C6.10833 2.60889 2.52661 6.19061 2.52661 10.6089C2.52661 15.0272 6.10833 18.6089 10.5266 18.6089Z", 57437 stroke: "currentColor", 57438 "stroke-width": "2", 57439 "stroke-linecap": "round", 57440 "stroke-linejoin": "round" 57441 }, null, -1)), 57442 _cache[1] || (_cache[1] = createBaseVNode("path", { 57443 d: "M20.5265 20.6088L16.1765 16.2588", 57444 stroke: "currentColor", 57445 "stroke-width": "2", 57446 "stroke-linecap": "round", 57447 "stroke-linejoin": "round" 57448 }, null, -1)) 57449 ], 8, _hoisted_1$F); 57450} 57451const CoreIconSearch = /* @__PURE__ */ _export_sfc(_sfc_main$F, [["render", _sfc_render$D]]); 57452const CoreIconSearch$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57453 __proto__: null, 57454 default: CoreIconSearch 57455}, Symbol.toStringTag, { value: "Module" })); 57456const _sfc_main$E = { 57457 props: { 57458 settings: { 57459 type: Object, 57460 required: false 57461 } 57462 }, 57463 computed: { 57464 alt() { 57465 var _a, _b; 57466 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57467 }, 57468 id() { 57469 var _a, _b; 57470 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57471 } 57472 } 57473}; 57474const _hoisted_1$E = ["aria-labelledby", "aria-label"]; 57475const _hoisted_2$w = ["id"]; 57476function _sfc_render$C(_ctx, _cache, $props, $setup, $data, $options) { 57477 return openBlock(), createElementBlock("svg", { 57478 width: "24", 57479 height: "24", 57480 viewBox: "0 0 27 27", 57481 fill: "none", 57482 xmlns: "http://www.w3.org/2000/svg", 57483 "aria-labelledby": `icon-title-${$options.id}`, 57484 "aria-label": $options.alt 57485 }, [ 57486 createBaseVNode("title", { 57487 id: `icon-title-${$options.id}` 57488 }, toDisplayString($options.alt), 9, _hoisted_2$w), 57489 _cache[0] || (_cache[0] = createBaseVNode("path", { 57490 d: "M21.266 14.4961H5.86602C4.65602 14.4961 3.66602 15.4861 3.66602 16.6961V21.0961C3.66602 22.3061 4.65602 23.2961 5.86602 23.2961H21.266C22.476 23.2961 23.466 22.3061 23.466 21.0961V16.6961C23.466 15.4861 22.476 14.4961 21.266 14.4961ZM21.266 21.0961H5.86602V16.6961H21.266V21.0961Z", 57491 fill: "currentColor" 57492 }, null, -1)), 57493 _cache[1] || (_cache[1] = createBaseVNode("path", { 57494 d: "M21.266 3.49609H5.86602C4.65602 3.49609 3.66602 4.48609 3.66602 5.69609V10.0961C3.66602 11.3061 4.65602 12.2961 5.86602 12.2961H21.266C22.476 12.2961 23.466 11.3061 23.466 10.0961V5.69609C23.466 4.48609 22.476 3.49609 21.266 3.49609ZM21.266 10.0961H5.86602V5.69609H21.266V10.0961Z", 57495 fill: "currentColor" 57496 }, null, -1)) 57497 ], 8, _hoisted_1$E); 57498} 57499const CoreIconSection = /* @__PURE__ */ _export_sfc(_sfc_main$E, [["render", _sfc_render$C]]); 57500const CoreIconSection$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57501 __proto__: null, 57502 default: CoreIconSection 57503}, Symbol.toStringTag, { value: "Module" })); 57504const _sfc_main$D = { 57505 props: { 57506 settings: { 57507 type: Object, 57508 required: false, 57509 default: () => { 57510 } 57511 } 57512 }, 57513 computed: { 57514 alt() { 57515 var _a, _b; 57516 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57517 }, 57518 id() { 57519 var _a, _b; 57520 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57521 } 57522 } 57523}; 57524const _hoisted_1$D = ["aria-labelledby", "aria-label"]; 57525const _hoisted_2$v = ["id"]; 57526function _sfc_render$B(_ctx, _cache, $props, $setup, $data, $options) { 57527 return openBlock(), createElementBlock("svg", { 57528 xmlns: "http://www.w3.org/2000/svg", 57529 width: "24", 57530 height: "24",
57531 viewBox: "0 0 24 24", 57532 fill: "none", 57533 role: "img", 57534 "aria-labelledby": `icon-title-${$options.id}`, 57535 "aria-label": $options.alt 57536 }, [ 57537 createBaseVNode("title", { 57538 id: `icon-title-${$options.id}` 57539 }, toDisplayString($options.alt), 9, _hoisted_2$v), 57540 _cache[0] || (_cache[0] = createBaseVNode("path", { 57541 d: "M3 5H5V3C3.9 3 3 3.9 3 5ZM3 13H5V11H3V13ZM7 21H9V19H7V21ZM3 9H5V7H3V9ZM13 3H11V5H13V3ZM19 3V5H21C21 3.9 20.1 3 19 3ZM5 21V19H3C3 20.1 3.9 21 5 21ZM3 17H5V15H3V17ZM9 3H7V5H9V3ZM11 21H13V19H11V21ZM19 13H21V11H19V13ZM19 21C20.1 21 21 20.1 21 19H19V21ZM19 9H21V7H19V9ZM19 17H21V15H19V17ZM15 21H17V19H15V21ZM15 5H17V3H15V5ZM7 17H17V7H7V17ZM9 9H15V15H9V9Z", 57542 fill: "currentColor" 57543 }, null, -1)) 57544 ], 8, _hoisted_1$D); 57545} 57546const CoreIconSelectAll = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["render", _sfc_render$B]]); 57547const CoreIconSelectAll$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57548 __proto__: null, 57549 default: CoreIconSelectAll 57550}, Symbol.toStringTag, { value: "Module" })); 57551const _sfc_main$C = { 57552 props: { 57553 settings: { 57554 type: Object, 57555 required: false, 57556 default: () => ({ 57557 alt: "SEO", 57558 id: "seo" 57559 }) 57560 } 57561 }, 57562 computed: { 57563 alt() { 57564 var _a; 57565 return (_a = this.settings) == null ? void 0 : _a.alt; 57566 }, 57567 id() { 57568 var _a; 57569 return (_a = this.settings) == null ? void 0 : _a.id; 57570 } 57571 } 57572}; 57573const _hoisted_1$C = ["aria-labelledby", "aria-label"]; 57574const _hoisted_2$u = ["id"]; 57575function _sfc_render$A(_ctx, _cache, $props, $setup, $data, $options) { 57576 return openBlock(), createElementBlock("svg", { 57577 width: "24", 57578 height: "24", 57579 viewBox: "0 0 24 24", 57580 fill: "none", 57581 xmlns: "http://www.w3.org/2000/svg", 57582 role: "img", 57583 "aria-labelledby": `icon-title-${$options.id}`, 57584 "aria-label": $options.alt 57585 }, [ 57586 createBaseVNode("title", { 57587 id: `icon-title-${$options.id}` 57588 }, toDisplayString($options.alt), 9, _hoisted_2$u), 57589 _cache[0] || (_cache[0] = createBaseVNode("circle", { 57590 cx: "10", 57591 cy: "10", 57592 r: "7", 57593 stroke: "currentColor", 57594 "stroke-width": "2", 57595 "stroke-linecap": "round", 57596 "stroke-linejoin": "round" 57597 }, null, -1)), 57598 _cache[1] || (_cache[1] = createBaseVNode("path", { 57599 d: "M15 15L21 21", 57600 stroke: "currentColor", 57601 "stroke-width": "2", 57602 "stroke-linecap": "round", 57603 "stroke-linejoin": "round" 57604 }, null, -1)), 57605 _cache[2] || (_cache[2] = createBaseVNode("path", { 57606 d: "M7 10L9 8L11 9L13 6", 57607 stroke: "currentColor", 57608 "stroke-width": "1.5", 57609 "stroke-linecap": "round", 57610 "stroke-linejoin": "round" 57611 }, null, -1)) 57612 ], 8, _hoisted_1$C); 57613} 57614const CoreIconSeo = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["render", _sfc_render$A]]); 57615const CoreIconSeo$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57616 __proto__: null, 57617 default: CoreIconSeo 57618}, Symbol.toStringTag, { value: "Module" })); 57619const _sfc_main$B = { 57620 props: { 57621 settings: { 57622 type: Object, 57623 required: false 57624 } 57625 }, 57626 computed: { 57627 alt() { 57628 var _a, _b; 57629 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57630 }, 57631 id() { 57632 var _a, _b; 57633 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57634 } 57635 } 57636}; 57637const _hoisted_1$B = ["aria-labelledby", "aria-label"]; 57638const _hoisted_2$t = ["id"]; 57639function _sfc_render$z(_ctx, _cache, $props, $setup, $data, $options) { 57640 return openBlock(), createElementBlock("svg", { 57641 width: "24", 57642 height: "24", 57643 viewBox: "0 0 24 24", 57644 fill: "none", 57645 xmlns: "http://www.w3.org/2000/svg", 57646 role: "img", 57647 "aria-labelledby": `icon-title-${$options.id}`, 57648 "aria-label": $options.alt 57649 }, [ 57650 createBaseVNode("title", { 57651 id: `icon-title-${$options.id}` 57652 }, toDisplayString($options.alt), 9, _hoisted_2$t), 57653 _cache[0] || (_cache[0] = createStaticVNode('<g clip-path="url(#clip0_23_744)"><path d="M12 15C13.6569 15 15 13.6569 15 12C15 10.3431 13.6569 9 12 9C10.3431 9 9 10.3431 9 12C9 13.6569 10.3431 15 12 15Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path>
57653<path d="M19.4 15C19.2669 15.3016 19.2272 15.6362 19.286 15.9606C19.3448 16.285 19.4995 16.5843 19.73 16.82L19.79 16.88C19.976 17.0657 20.1235 17.2863 20.2241 17.5291C20.3248 17.7719 20.3766 18.0322 20.3766 18.295C20.3766 18.5578 20.3248 18.8181 20.2241 19.0609C20.1235 19.3037 19.976 19.5243 19.79 19.71C19.6043 19.896 19.3837 20.0435 19.1409 20.1441C18.8981 20.2448 18.6378 20.2966 18.375 20.2966C18.1122 20.2966 17.8519 20.2448 17.6091 20.1441C17.3663 20.0435 17.1457 19.896 16.96 19.71L16.9 19.65C16.6643 19.4195 16.365 19.2648 16.0406 19.206C15.7162 19.1472 15.3816 19.1869 15.08 19.32C14.7842 19.4468 14.532 19.6572 14.3543 19.9255C14.1766 20.1938 14.0813 20.5082 14.08 20.83V21C14.08 21.5304 13.8693 22.0391 13.4942 22.4142C13.1191 22.7893 12.6104 23 12.08 23C11.5496 23 11.0409 22.7893 10.6658 22.4142C10.2907 22.0391 10.08 21.5304 10.08 21V20.91C10.0723 20.579 9.96512 20.258 9.77251 19.9887C9.5799 19.7194 9.31074 19.5143 9 19.4C8.69838 19.2669 8.36381 19.2272 8.03941 19.286C7.71502 19.3448 7.41568 19.4995 7.18 19.73L7.12 19.79C6.93425 19.976 6.71368 20.1235 6.47088 20.2241C6.22808 20.3248 5.96783 20.3766 5.705 20.3766C5.44217 20.3766 5.18192 20.3248 4.93912 20.2241C4.69632 20.1235 4.47575 19.976 4.29 19.79C4.10405 19.6043 3.95653 19.3837 3.85588 19.1409C3.75523 18.8981 3.70343 18.6378 3.70343 18.375C3.70343 18.1122 3.75523 17.8519 3.85588 17.6091C3.95653 17.3663 4.10405 17.1457 4.29 16.96L4.35 16.9C4.58054 16.6643 4.73519 16.365 4.794 16.0406C4.85282 15.7162 4.81312 15.3816 4.68 15.08C4.55324 14.7842 4.34276 14.532 4.07447 14.3543C3.80618 14.1766 3.49179 14.0813 3.17 14.08H3C2.46957 14.08 1.96086 13.8693 1.58579 13.4942C1.21071 13.1191 1 12.6104 1 12.08C1 11.5496 1.21071 11.0409 1.58579 10.6658C1.96086 10.2907 2.46957 10.08 3 10.08H3.09C3.42099 10.0723 3.742 9.96512 4.0113 9.77251C4.28059 9.5799 4.48572 9.31074 4.6 9C4.73312 8.69838 4.77282 8.36381 4.714 8.03941C4.65519 7.71502 4.50054 7.41568 4.27 7.18L4.21 7.12C4.02405 6.93425 3.87653 6.71368 3.77588 6.47088C3.67523 6.22808 3.62343 5.96783 3.62343 5.705C3.62343 5.44217 3.67523 5.18192 3.77588 4.93912C3.87653 4.69632 4.02405 4.47575 4.21 4.29C4.39575 4.10405 4.61632 3.95653 4.85912 3.85588C5.10192 3.75523 5.36217 3.70343 5.625 3.70343C5.88783 3.70343 6.14808 3.75523 6.39088 3.85588C6.63368 3.95653 6.85425 4.10405 7.04 4.29L7.1 4.35C7.33568 4.58054 7.63502 4.73519 7.95941 4.794C8.28381 4.85282 8.61838 4.81312 8.92 4.68H9C9.29577 4.55324 9.54802 4.34276 9.72569 4.07447C9.90337 3.80618 9.99872 3.49179 10 3.17V3C10 2.46957 10.2107 1.96086 10.5858 1.58579C10.9609 1.21071 11.4696 1 12 1C12.5304 1 13.0391 1.21071 13.4142 1.58579C13.7893 1.96086 14 2.46957 14 3V3.09C14.0013 3.41179 14.0966 3.72618 14.2743 3.99447C14.452 4.26276 14.7042 4.47324 15 4.6C15.3016 4.73312 15.6362 4.77282 15.9606 4.714C16.285 4.65519 16.5843 4.50054 16.82 4.27L16.88 4.21C17.0657 4.02405 17.2863 3.87653 17.5291 3.77588C17.7719 3.67523 18.0322 3.62343 18.295 3.62343C18.5578 3.62343 18.8181 3.67523 19.0609 3.77588C19.3037 3.87653 19.5243 4.02405 19.71 4.21C19.896 4.39575 20.0435 4.61632 20.1441 4.85912C20.2448 5.10192 20.2966 5.36217 20.2966 5.625C20.2966 5.88783 20.2448 6.14808 20.1441 6.39088C20.0435 6.63368 19.896 6.85425 19.71 7.04L19.65 7.1C19.4195 7.33568 19.2648 7.63502 19.206 7.95941C19.1472 8.28381 19.1869 8.61838 19.32 8.92V9C19.4468 9.29577 19.6572 9.54802 19.9255 9.72569C20.1938 9.90337 20.5082 9.99872 20.83 10H21C21.5304 10 22.0391 10.2107 22.4142 10.5858C22.7893 10.9609 23 11.4696 23 12C23 12.5304 22.7893 13.0391 22.4142 13.4142C22.0391 13.7893 21.5304 14 21 14H20.91C20.5882 14.0013 20.2738 14.0966 20.0055 14.2743C19.7372 14.452 19.5268 14.7042 19.4 15V15Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path></g><defs><clipPath id="clip0_23_744"><rect width="24" height="24" fill="white"></rect></clipPath></defs>', 2)) 57654 ], 8, _hoisted_1$B); 57655} 57656const CoreIconSettings = /* @__PURE__ */ _export_sfc(_sfc_main$B, [["render", _sfc_render$z]]); 57657const CoreIconSettings$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57658 __proto__: null, 57659 default: CoreIconSettings 57660}, Symbol.toStringTag, { value: "Module" })); 57661const _sfc_main$A = { 57662 props: { 57663 settings: { 57664 type: Object, 57665 required: false, 57666 default: () => { 57667 } 57668 } 57669 }, 57670 computed: { 57671 alt() { 57672 var _a, _b; 57673 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57674 }, 57675 id() { 57676 var _a, _b; 57677 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57678 } 57679 } 57680}; 57681const _hoisted_1$A = ["aria-labelledby", "aria-label"]; 57682const _hoisted_2$s = ["id"]; 57683function _sfc_render$y(_ctx, _cache, $props, $setup, $data, $options) { 57684 return openBlock(), createElementBlock("svg", { 57685 xmlns: "http://www.w3.org/2000/svg", 57686 width: "18", 57687 height: "17",
57688 viewBox: "0 0 18 17", 57689 fill: "currentColor", 57690 "aria-labelledby": `icon-title-${$options.id}`, 57691 "aria-label": $options.alt 57692 }, [ 57693 createBaseVNode("title", { 57694 id: `icon-title-${$options.id}` 57695 }, toDisplayString($options.alt), 9, _hoisted_2$s), 57696 _cache[0] || (_cache[0] = createBaseVNode("path", { 57697 "fill-rule": "evenodd", 57698 "clip-rule": "evenodd", 57699 d: "M1.125 8.5C1.125 4.15076 4.65076 0.625 9 0.625C13.3492 0.625 16.875 4.15076 16.875 8.5C16.875 12.8492 13.3492 16.375 9 16.375C4.65076 16.375 1.125 12.8492 1.125 8.5ZM12.9184 5.45114L9.01659 3.71943L5.1148 5.45114V8.06818C5.1148 10.585 6.77585 12.9069 9.01659 13.5974C11.2573 12.9069 12.9184 10.585 12.9184 8.06818V5.45114ZM4 4.72727L9.01659 2.5L14.0332 4.72727V8.06818C14.0332 11.1585 11.8928 14.0484 9.01659 14.75C6.14041 14.0484 4 11.1585 4 8.06818V4.72727Z", 57700 fill: "currentColor" 57701 }, null, -1)) 57702 ], 8, _hoisted_1$A); 57703} 57704const CoreIconShield = /* @__PURE__ */ _export_sfc(_sfc_main$A, [["render", _sfc_render$y]]); 57705const CoreIconShield$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57706 __proto__: null, 57707 default: CoreIconShield 57708}, Symbol.toStringTag, { value: "Module" })); 57709const _sfc_main$z = { 57710 props: { 57711 settings: { 57712 type: Object, 57713 required: false 57714 } 57715 }, 57716 computed: { 57717 alt() { 57718 var _a, _b; 57719 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57720 }, 57721 id() { 57722 var _a, _b; 57723 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57724 } 57725 } 57726}; 57727const _hoisted_1$z = ["aria-labelledby", "aria-label"]; 57728const _hoisted_2$r = ["id"]; 57729function _sfc_render$x(_ctx, _cache, $props, $setup, $data, $options) { 57730 return openBlock(), createElementBlock("svg", { 57731 width: "24", 57732 height: "24", 57733 viewBox: "0 0 24 24", 57734 fill: "none", 57735 xmlns: "http://www.w3.org/2000/svg", 57736 role: "img", 57737 "aria-labelledby": `icon-title-${$options.id}`, 57738 "aria-label": $options.alt 57739 }, [ 57740 createBaseVNode("title", { 57741 id: `icon-title-${$options.id}` 57742 }, toDisplayString($options.alt), 9, _hoisted_2$r), 57743 _cache[0] || (_cache[0] = createBaseVNode("path", { 57744 d: "M18 6H16C16 3.79 14.21 2 12 2C9.79 2 8 3.79 8 6H6C4.9 6 4 6.9 4 8V20C4 21.1 4.9 22 6 22H18C19.1 22 20 21.1 20 20V8C20 6.9 19.1 6 18 6ZM12 4C13.1 4 14 4.9 14 6H10C10 4.9 10.9 4 12 4ZM18 20H6V8H8V10C8 10.55 8.45 11 9 11C9.55 11 10 10.55 10 10V8H14V10C14 10.55 14.45 11 15 11C15.55 11 16 10.55 16 10V8H18V20Z", 57745 fill: "currentColor" 57746 }, null, -1)) 57747 ], 8, _hoisted_1$z); 57748} 57749const CoreIconShoppingBag = /* @__PURE__ */ _export_sfc(_sfc_main$z, [["render", _sfc_render$x]]); 57750const CoreIconShoppingBag$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57751 __proto__: null, 57752 default: CoreIconShoppingBag 57753}, Symbol.toStringTag, { value: "Module" })); 57754const _sfc_main$y = { 57755 props: { 57756 settings: { 57757 type: Object, 57758 required: false 57759 } 57760 }, 57761 computed: { 57762 alt() { 57763 var _a, _b; 57764 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57765 }, 57766 id() { 57767 var _a, _b; 57768 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57769 } 57770 } 57771}; 57772const _hoisted_1$y = { 57773 width: "21", 57774 height: "20", 57775 fill: "none", 57776 xmlns: "http://www.w3.org/2000/svg" 57777}; 57778function _sfc_render$w(_ctx, _cache, $props, $setup, $data, $options) { 57779 return openBlock(), createElementBlock("svg", _hoisted_1$y, _cache[0] || (_cache[0] = [ 57780 createBaseVNode("g", { 57781 "clip-path": "url(#a)", 57782 stroke: "#002840", 57783 "stroke-width": "1.667", 57784 "stroke-linecap": "round", 57785 "stroke-linejoin": "round" 57786 }, [ 57787 createBaseVNode("path", { d: "M8.001 18.333a.833.833 0 1 0 0-1.667.833.833 0 0 0 0 1.667ZM17.165 18.333a.833.833 0 1 0 0-1.667.833.833 0 0 0 0 1.667ZM1.332.834h3.333L6.9 11.992a1.667 1.667 0 0 0 1.666 1.342h8.1a1.666 1.666 0 0 0 1.667-1.342l1.333-6.991H5.5" }) 57788 ], -1), 57789 createBaseVNode("defs", null, [ 57790 createBaseVNode("clipPath", { id: "a" }, [ 57791 createBaseVNode("path", { 57792 fill: "#fff", 57793 transform: "translate(.5)", 57794 d: "M0 0h20v20H0z" 57795 }) 57796 ]) 57797 ], -1) 57798 ])); 57799} 57800const CoreIconShoppingCart = /* @__PURE__ */ _export_sfc(_sfc_main$y, [["render", _sfc_render$w]]); 57801const CoreIconShoppingCart$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57802 __proto__: null, 57803 default: CoreIconShoppingCart 57804}, Symbol.toStringTag, { value: "Module" })); 57805const _sfc_main$x = { 57806 inheritAttrs: false, 57807 props: { 57808 settings: { 57809 type: Object, 57810 default: () => ({}) 57811 } 57812 }, 57813 computed: { 57814 alt() { 57815 var _a, _b; 57816 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57817 }, 57818 id() { 57819 var _a, _b; 57820 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57821 } 57822 } 57823}; 57824const _hoisted_1$x = ["fill"]; 57825const _hoisted_2$q = ["fill"]; 57826function _sfc_render$v(_ctx, _cache, $props, $setup, $data, $options) { 57827 return openBlock(), createElementBlock("svg", { 57828 xmlns: "http://www.w3.org/2000/svg", 57829 width: "16", 57830 height: "8",
57831 viewBox: "0 0 16 8", 57832 fill: _ctx.$attrs.fill || "none" 57833 }, [ 57834 createBaseVNode("path", { 57835 "fill-rule": "evenodd", 57836 "clip-rule": "evenodd", 57837 d: "M14.1698 1.42111C14.1698 1.03132 14.4857 0.715332 14.8755 0.715332C15.2653 0.715332 15.5813 1.03132 15.5813 1.42111V6.36153C15.5813 6.75131 15.2653 7.0673 14.8755 7.0673H14.6883C14.6454 7.07141 14.6026 7.07136 14.5603 7.0673H9.93511C9.54532 7.0673 9.22933 6.75131 9.22933 6.36153C9.22933 5.97174 9.54532 5.65575 9.93511 5.65575H13.3979C11.9867 3.60977 9.8714 2.44273 7.80398 2.36074C5.45303 2.2675 3.06238 3.57272 1.75496 6.84154C1.60855 7.20759 1.2026 7.38172 0.848238 7.23049C0.493879 7.07925 0.325302 6.6599 0.47171 6.29386C1.98732 2.50454 4.88979 0.809844 7.85725 0.927533C10.2075 1.02074 12.5327 2.24811 14.1698 4.33599V1.42111Z", 57838 fill: _ctx.$attrs.fill || "#989898" 57839 }, null, 8, _hoisted_2$q) 57840 ], 8, _hoisted_1$x); 57841} 57842const CoreIconSiteRedo = /* @__PURE__ */ _export_sfc(_sfc_main$x, [["render", _sfc_render$v]]); 57843const CoreIconSiteRedo$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57844 __proto__: null, 57845 default: CoreIconSiteRedo 57846}, Symbol.toStringTag, { value: "Module" })); 57847const _sfc_main$w = { 57848 props: { 57849 settings: { 57850 type: Object, 57851 required: false 57852 } 57853 }, 57854 computed: { 57855 alt() { 57856 var _a, _b; 57857 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57858 }, 57859 id() { 57860 var _a, _b; 57861 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57862 } 57863 } 57864}; 57865const _hoisted_1$w = ["aria-labelledby", "aria-label"]; 57866const _hoisted_2$p = ["id"]; 57867function _sfc_render$u(_ctx, _cache, $props, $setup, $data, $options) { 57868 return openBlock(), createElementBlock("svg", { 57869 width: "24", 57870 height: "24", 57871 viewBox: "0 0 24 24", 57872 fill: "none", 57873 xmlns: "http://www.w3.org/2000/svg", 57874 role: "img", 57875 "aria-labelledby": $options.id, 57876 "aria-label": $options.alt 57877 }, [ 57878 createBaseVNode("title", { id: $options.id }, toDisplayString($options.alt), 9, _hoisted_2$p), 57879 _cache[0] || (_cache[0] = createStaticVNode('<path d="M12 22C6.49 22 2 17.51 2 12C2 6.49 6.49 2 12 2C17.51 2 22 6.04 22 11C22 14.31 19.31 17 16 17H14.23C13.95 17 13.73 17.22 13.73 17.5C13.73 17.62 13.78 17.73 13.86 17.83C14.27 18.3 14.5 18.89 14.5 19.5C14.5 20.88 13.38 22 12 22ZM12 4C7.59 4 4 7.59 4 12C4 16.41 7.59 20 12 20C12.28 20 12.5 19.78 12.5 19.5C12.5 19.34 12.42 19.22 12.36 19.15C11.95 18.69 11.73 18.1 11.73 17.5C11.73 16.12 12.85 15 14.23 15H16C18.21 15 20 13.21 20 11C20 7.14 16.41 4 12 4Z" fill="currentColor"></path><path d="M6.5 13C7.32843 13 8 12.3284 8 11.5C8 10.6716 7.32843 10 6.5 10C5.67157 10 5 10.6716 5 11.5C5 12.3284 5.67157 13 6.5 13Z" fill="currentColor"></path><path d="M9.5 9C10.3284 9 11 8.32843 11 7.5C11 6.67157 10.3284 6 9.5 6C8.67157 6 8 6.67157 8 7.5C8 8.32843 8.67157 9 9.5 9Z" fill="currentColor"></path><path d="M14.5 9C15.3284 9 16 8.32843 16 7.5C16 6.67157 15.3284 6 14.5 6C13.6716 6 13 6.67157 13 7.5C13 8.32843 13.6716 9 14.5 9Z" fill="currentColor"></path><path d="M17.5 13C18.3284 13 19 12.3284 19 11.5C19 10.6716 18.3284 10 17.5 10C16.6716 10 16 10.6716 16 11.5C16 12.3284 16.6716 13 17.5 13Z" fill="currentColor"></path>', 5)) 57880 ], 8, _hoisted_1$w); 57881} 57882const CoreIconSiteStyles = /* @__PURE__ */ _export_sfc(_sfc_main$w, [["render", _sfc_render$u]]); 57883const CoreIconSiteStyles$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57884 __proto__: null, 57885 default: CoreIconSiteStyles 57886}, Symbol.toStringTag, { value: "Module" })); 57887const _sfc_main$v = { 57888 inheritAttrs: false, 57889 props: { 57890 settings: { 57891 type: Object, 57892 required: false 57893 } 57894 }, 57895 computed: { 57896 alt() { 57897 var _a, _b; 57898 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57899 }, 57900 id() { 57901 var _a, _b; 57902 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57903 } 57904 } 57905}; 57906const _hoisted_1$v = ["fill"]; 57907const _hoisted_2$o = ["fill"]; 57908function _sfc_render$t(_ctx, _cache, $props, $setup, $data, $options) { 57909 return openBlock(), createElementBlock("svg", { 57910 xmlns: "http://www.w3.org/2000/svg", 57911 width: "16", 57912 height: "8",
57913 viewBox: "0 0 16 8", 57914 fill: _ctx.$attrs.fill || "none" 57915 }, [ 57916 createBaseVNode("path", { 57917 "fill-rule": "evenodd", 57918 "clip-rule": "evenodd", 57919 d: "M1.83035 1.42091C1.83035 1.0311 1.51434 0.715088 1.12453 0.715088C0.73471 0.715088 0.418701 1.0311 0.418701 1.42091V6.36169C0.418701 6.75151 0.73471 7.06752 1.12453 7.06752H1.31315C1.35534 7.07151 1.39755 7.07145 1.43925 7.06752H6.06531C6.45512 7.06752 6.77113 6.75151 6.77113 6.36169C6.77113 5.97188 6.45512 5.65587 6.06531 5.65587H2.60257C4.01388 3.60968 6.12939 2.44253 8.19699 2.36053C10.5481 2.26728 12.9389 3.57259 14.2465 6.84165C14.3929 7.20772 14.7989 7.38188 15.1532 7.23063C15.5076 7.07938 15.6762 6.66 15.5298 6.29393C14.0141 2.50433 11.1114 0.809516 8.14372 0.927213C5.79309 1.02044 3.46753 2.24809 1.83035 4.33643V1.42091Z", 57920 fill: _ctx.$attrs.fill || "#989898" 57921 }, null, 8, _hoisted_2$o) 57922 ], 8, _hoisted_1$v); 57923} 57924const CoreIconSiteUndo = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["render", _sfc_render$t]]); 57925const CoreIconSiteUndo$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57926 __proto__: null, 57927 default: CoreIconSiteUndo 57928}, Symbol.toStringTag, { value: "Module" })); 57929const _sfc_main$u = { 57930 props: { 57931 settings: { 57932 type: Object, 57933 required: false 57934 } 57935 }, 57936 computed: { 57937 alt() { 57938 var _a, _b; 57939 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57940 }, 57941 id() { 57942 var _a, _b; 57943 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57944 } 57945 } 57946}; 57947const _hoisted_1$u = ["aria-labelledby", "aria-label"]; 57948const _hoisted_2$n = ["id"]; 57949function _sfc_render$s(_ctx, _cache, $props, $setup, $data, $options) { 57950 return openBlock(), createElementBlock("svg", { 57951 xmlns: "http://www.w3.org/2000/svg", 57952 width: "24", 57953 height: "25", 57954 viewBox: "0 0 24 25", 57955 fill: "none", 57956 role: "img", 57957 "aria-labelledby": $options.id, 57958 "aria-label": $options.alt 57959 }, [ 57960 createBaseVNode("title", { id: $options.id }, toDisplayString($options.alt), 9, _hoisted_2$n), 57961 _cache[0] || (_cache[0] = createStaticVNode('<path d="M3.88289 21.0391L19.9859 21.0391V19.0391L3.88289 19.0391V21.0391ZM3.27467 5.03906L20.5181 5.03906V3.03906L3.27467 3.03906L3.27467 5.03906ZM3 21.0391H5L5 3.03906L3 3.03906L3 21.0391Z" fill="currentColor"></path><path d="M5 21.0391H3L3 3.03906L5 3.03906L5 21.0391Z" fill="currentColor"></path><path d="M5 21.0391H3L3 3.03906L5 3.03906L5 21.0391Z" fill="currentColor"></path><path d="M21 21.0391H19L18.9989 3.03906L20.9989 3.03906L21 21.0391Z" fill="currentColor"></path><path d="M21 21.0391H19L18.9989 3.03906L20.9989 3.03906L21 21.0391Z" fill="currentColor"></path><path d="M15.6868 12.8726H17.6282V17.726H12.7748V15.7846H15.6868V12.8726Z" fill="currentColor"></path><path d="M11.2254 8.29389H8.31342V11.2059H6.37207V6.35254H11.2254V8.29389Z" fill="currentColor"></path>', 7)) 57962 ], 8, _hoisted_1$u); 57963} 57964const CoreIconSizing = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["render", _sfc_render$s]]); 57965const CoreIconSizing$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 57966 __proto__: null, 57967 default: CoreIconSizing 57968}, Symbol.toStringTag, { value: "Module" })); 57969const _sfc_main$t = { 57970 props: { 57971 settings: { 57972 type: Object, 57973 required: false 57974 } 57975 }, 57976 computed: { 57977 alt() { 57978 var _a, _b; 57979 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 57980 }, 57981 id() { 57982 var _a, _b; 57983 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 57984 } 57985 } 57986}; 57987const _hoisted_1$t = { 57988 width: "24", 57989 height: "24", 57990 viewBox: "0 0 24 24", 57991 fill: "none", 57992 xmlns: "http://www.w3.org/2000/svg", 57993 role: "img", 57994 "aria-labelledby": "socialicon", 57995 "aria-label": "socialicon" 57996}; 57997const _hoisted_2$m = { id: "socialicon" }; 57998function _sfc_render$r(_ctx, _cache, $props, $setup, $data, $options) { 57999 return openBlock(), createElementBlock("svg", _hoisted_1$t, [ 58000 createBaseVNode("title", _hoisted_2$m, toDisplayString($options.alt), 1), 58001 _cache[0] || (_cache[0] = createBaseVNode("path", {
58002 d: "M21 9H14.69L15.64 4.43L15.67 4.11C15.67 3.7 15.5 3.32 15.23 3.05L14.17 2L7.59 8.59C7.22 8.95 7 9.45 7 10V20C7 21.1 7.9 22 9 22H18C18.83 22 19.54 21.5 19.84 20.78L22.86 13.73C22.95 13.5 23 13.26 23 13V11C23 9.9 22.1 9 21 9ZM21 13L18 20H9V10L13.34 5.66L12.23 11H21V13ZM1 10H5V22H1V10Z", 58003 fill: "currentColor" 58004 }, null, -1)) 58005 ]); 58006} 58007const CoreIconSocial = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["render", _sfc_render$r]]); 58008const CoreIconSocial$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58009 __proto__: null, 58010 default: CoreIconSocial 58011}, Symbol.toStringTag, { value: "Module" })); 58012const _sfc_main$s = {}; 58013const _hoisted_1$s = { 58014 xmlns: "http://www.w3.org/2000/svg", 58015 width: "24", 58016 height: "24", 58017 viewBox: "0 0 24 24", 58018 fill: "none", 58019 stroke: "currentColor", 58020 "stroke-width": "2", 58021 "stroke-linecap": "round", 58022 "stroke-linejoin": "round", 58023 class: "feather feather-edit" 58024}; 58025function _sfc_render$q(_ctx, _cache) { 58026 return openBlock(), createElementBlock("svg", _hoisted_1$s, _cache[0] || (_cache[0] = [ 58027 createBaseVNode("path", { d: "M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7" }, null, -1), 58028 createBaseVNode("path", { d: "M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z" }, null, -1) 58029 ])); 58030} 58031const CoreIconSquareEdit = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["render", _sfc_render$q]]); 58032const CoreIconSquareEdit$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58033 __proto__: null, 58034 default: CoreIconSquareEdit 58035}, Symbol.toStringTag, { value: "Module" })); 58036const _sfc_main$r = { 58037 props: { 58038 settings: { 58039 type: Object, 58040 required: false 58041 } 58042 }, 58043 computed: { 58044 alt() { 58045 var _a, _b; 58046 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58047 }, 58048 id() { 58049 var _a, _b; 58050 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58051 } 58052 } 58053}; 58054const _hoisted_1$r = ["aria-labelledby", "aria-label"]; 58055const _hoisted_2$l = ["id"]; 58056function _sfc_render$p(_ctx, _cache, $props, $setup, $data, $options) { 58057 return openBlock(), createElementBlock("svg", { 58058 width: "24", 58059 height: "24", 58060 viewBox: "0 0 24 24", 58061 fill: "none", 58062 xmlns: "http://www.w3.org/2000/svg", 58063 role: "img", 58064 "aria-labelledby": $options.id, 58065 "aria-label": $options.alt 58066 }, [ 58067 createBaseVNode("title", { id: $options.id }, toDisplayString($options.alt), 9, _hoisted_2$l), 58068 _cache[0] || (_cache[0] = createBaseVNode("path", { 58069 d: "M18.36 9L18.96 12H5.04L5.64 9H18.36ZM20 4H4V6H20V4ZM20 7H4L3 12V14H4V20H14V14H18V20H20V14H21V12L20 7ZM6 18V14H12V18H6Z", 58070 fill: "currentColor" 58071 }, null, -1)) 58072 ], 8, _hoisted_1$r); 58073} 58074const CoreIconStore = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["render", _sfc_render$p]]); 58075const CoreIconStore$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58076 __proto__: null, 58077 default: CoreIconStore 58078}, Symbol.toStringTag, { value: "Module" })); 58079const _sfc_main$q = { 58080 props: { 58081 settings: { 58082 type: Object, 58083 required: false 58084 } 58085 }, 58086 computed: { 58087 alt() { 58088 var _a, _b; 58089 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58090 }, 58091 id() { 58092 var _a, _b; 58093 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58094 } 58095 } 58096}; 58097const _hoisted_1$q = ["aria-labelledby", "aria-label"]; 58098const _hoisted_2$k = ["id"]; 58099function _sfc_render$o(_ctx, _cache, $props, $setup, $data, $options) { 58100 return openBlock(), createElementBlock("svg", { 58101 width: "24", 58102 height: "24", 58103 viewBox: "0 0 24 24", 58104 fill: "none", 58105 xmlns: "http://www.w3.org/2000/svg", 58106 role: "img", 58107 "aria-labelledby": $options.id, 58108 "aria-label": $options.alt 58109 }, [ 58110 createBaseVNode("title", { id: $options.id }, toDisplayString($options.alt), 9, _hoisted_2$k), 58111 _cache[0] || (_cache[0] = createBaseVNode("path", { 58112 d: "M2 6L2 18C2 19.1046 2.89543 20 4 20L20 20C21.1046 20 22 19.1046 22 18L22 6C22 4.89543 21.1046 4 20 4L4 4C2.89543 4 2 4.89543 2 6Z", 58113 stroke: "currentColor", 58114 "stroke-width": "2", 58115 "stroke-linecap": "round", 58116 "stroke-linejoin": "round" 58117 }, null, -1)), 58118 _cache[1] || (_cache[1] = createBaseVNode("path", { 58119 d: "M18 12L18 11.99", 58120 stroke: "currentColor", 58121 "stroke-width": "2", 58122 "stroke-linecap": "round", 58123 "stroke-linejoin": "round" 58124 }, null, -1)) 58125 ], 8, _hoisted_1$q); 58126} 58127const CoreIconTablet = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["render", _sfc_render$o]]); 58128const CoreIconTablet$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58129 __proto__: null, 58130 default: CoreIconTablet 58131}, Symbol.toStringTag, { value: "Module" })); 58132const _sfc_main$p = { 58133 props: { 58134 settings: { 58135 type: Object, 58136 required: false 58137 } 58138 }, 58139 computed: { 58140 alt() { 58141 var _a, _b; 58142 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58143 }, 58144 id() { 58145 var _a, _b; 58146 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58147 } 58148 } 58149}; 58150const _hoisted_1$p = ["aria-labelledby", "aria-label"]; 58151const _hoisted_2$j = ["id"]; 58152function _sfc_render$n(_ctx, _cache, $props, $setup, $data, $options) { 58153 return openBlock(), createElementBlock("svg", { 58154 width: "24", 58155 height: "24",
58156 viewBox: "0 0 24 24", 58157 fill: "none", 58158 xmlns: "http://www.w3.org/2000/svg", 58159 role: "img", 58160 "aria-labelledby": $options.id, 58161 "aria-label": $options.alt 58162 }, [ 58163 createBaseVNode("title", { id: $options.id }, toDisplayString($options.alt), 9, _hoisted_2$j), 58164 _cache[0] || (_cache[0] = createBaseVNode("path", { 58165 d: "M3 19.5H20V21.5H3C1.9 21.5 1 20.6 1 19.5V6.5H3V19.5ZM23 6.5V15.5C23 16.6 22.1 17.5 21 17.5H7C5.9 17.5 5 16.6 5 15.5L5.01 4.5C5.01 3.4 5.9 2.5 7 2.5H12L14 4.5H21C22.1 4.5 23 5.4 23 6.5ZM7 15.5H21V6.5H13.17L11.17 4.5H7V15.5Z", 58166 fill: "currentColor" 58167 }, null, -1)) 58168 ], 8, _hoisted_1$p); 58169} 58170const CoreIconTabs = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["render", _sfc_render$n]]); 58171const CoreIconTabs$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58172 __proto__: null, 58173 default: CoreIconTabs 58174}, Symbol.toStringTag, { value: "Module" })); 58175const _sfc_main$o = { 58176 props: { 58177 settings: { 58178 type: Object, 58179 required: false 58180 } 58181 }, 58182 computed: { 58183 alt() { 58184 var _a, _b; 58185 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58186 }, 58187 id() { 58188 var _a, _b; 58189 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58190 } 58191 } 58192}; 58193const _hoisted_1$o = { 58194 width: "24", 58195 height: "24", 58196 viewBox: "0 0 24 24", 58197 fill: "none", 58198 role: "img", 58199 xmlns: "http://www.w3.org/2000/svg" 58200}; 58201function _sfc_render$m(_ctx, _cache, $props, $setup, $data, $options) { 58202 return openBlock(), createElementBlock("svg", _hoisted_1$o, _cache[0] || (_cache[0] = [ 58203 createStaticVNode('<path d="M9.67097 5.00002L8.0428 5.00002L8.0428 6.62819L9.67097 6.62819L9.67097 5.00002ZM6.41464 5.00002L4.78647 5.00002L4.78647 6.62819L6.41464 6.62819L6.41464 5.00002ZM16.1836 5.00002L14.5555 5.00002L14.5555 6.62819L16.1836 6.62819L16.1836 5.00002ZM12.9273 5.00002L11.2991 5.00002L11.2991 6.62819L12.9273 6.62819L12.9273 5.00002ZM6.41464 8.25635L4.78647 8.25635L4.78647 9.88452L6.41464 9.88452L6.41464 8.25635ZM6.41464 11.5127L4.78648 11.5127L4.78648 13.1409L6.41464 13.1409L6.41464 11.5127ZM6.41464 14.769L4.78648 14.769L4.78648 16.3972L6.41464 16.3972L6.41464 14.769Z" fill="currentColor"></path><path d="M9.67097 5.00002L8.0428 5.00002L8.0428 6.62819L9.67097 6.62819L9.67097 5.00002ZM6.41464 5.00002L4.78647 5.00002L4.78647 6.62819L6.41464 6.62819L6.41464 5.00002ZM16.1836 5.00002L14.5555 5.00002L14.5555 6.62819L16.1836 6.62819L16.1836 5.00002ZM12.9273 5.00002L11.2991 5.00002L11.2991 6.62819L12.9273 6.62819L12.9273 5.00002ZM6.41464 8.25635L4.78647 8.25635L4.78647 9.88452L6.41464 9.88452L6.41464 8.25635ZM6.41464 11.5127L4.78648 11.5127L4.78648 13.1409L6.41464 13.1409L6.41464 11.5127ZM6.41464 14.769L4.78648 14.769L4.78648 16.3972L6.41464 16.3972L6.41464 14.769Z" fill="currentColor"></path><path d="M4.78648 18.0046L6.41464 18.0046L6.41464 19.6328L4.78648 19.6328L4.78648 18.0046Z" fill="currentColor"></path><path d="M17.7566 5L19.3847 5L19.3847 6.62817L17.7566 6.62817L17.7566 5Z" fill="currentColor"></path><path d="M8.05078 8.15234V22.8058H22.7043V8.15234H8.05078ZM21.0761 21.1777H9.67895V9.78051H21.0761V21.1777Z" fill="currentColor"></path><path d="M1.5293 16.3976V1.74414H16.1828V3.37231H3.15746V16.3976H1.5293Z" fill="currentColor"></path>', 6) 58204 ])); 58205} 58206const CoreIconTemplate = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["render", _sfc_render$m]]); 58207const CoreIconTemplate$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58208 __proto__: null, 58209 default: CoreIconTemplate 58210}, Symbol.toStringTag, { value: "Module" })); 58211const _sfc_main$n = { 58212 props: { 58213 settings: { 58214 type: Object, 58215 required: false 58216 } 58217 }, 58218 computed: { 58219 alt() { 58220 var _a, _b; 58221 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58222 }, 58223 id() { 58224 var _a, _b; 58225 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58226 } 58227 } 58228}; 58229const _hoisted_1$n = { 58230 width: "24", 58231 height: "24", 58232 viewBox: "0 0 24 24", 58233 fill: "none", 58234 xmlns: "http://www.w3.org/2000/svg", 58235 role: "img", 58236 "aria-labelledby": "textstyleicon", 58237 "aria-label": "textstyleicon" 58238}; 58239const _hoisted_2$i = { id: "textstyleicon" }; 58240function _sfc_render$l(_ctx, _cache, $props, $setup, $data, $options) { 58241 return openBlock(), createElementBlock("svg", _hoisted_1$n, [ 58242 createBaseVNode("title", _hoisted_2$i, toDisplayString($options.alt), 1), 58243 _cache[0] || (_cache[0] = createBaseVNode("path", { 58244 d: "M2 18.5H22V22.5H2V18.5ZM5.49 15.5H7.91L9.18 11.92H14.83L16.09 15.5H18.51L13.25 1.5H10.75L5.49 15.5ZM9.91 9.89L11.94 4.1H12.06L14.09 9.89H9.91Z", 58245 fill: "currentColor" 58246 }, null, -1)) 58247 ]); 58248} 58249const CoreIconTextStyle = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["render", _sfc_render$l]]); 58250const CoreIconTextStyle$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58251 __proto__: null, 58252 default: CoreIconTextStyle 58253}, Symbol.toStringTag, { value: "Module" })); 58254const _sfc_main$m = { 58255 props: { 58256 settings: { 58257 type: Object, 58258 required: false 58259 } 58260 }, 58261 computed: { 58262 alt() { 58263 var _a, _b; 58264 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58265 }, 58266 id() { 58267 var _a, _b; 58268 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58269 } 58270 } 58271}; 58272const _hoisted_1$m = ["aria-labelledby", "aria-label"]; 58273const _hoisted_2$h = ["id"]; 58274function _sfc_render$k(_ctx, _cache, $props, $setup, $data, $options) { 58275 return openBlock(), createElementBlock("svg", { 58276 width: "24", 58277 height: "24",
58278 viewBox: "0 0 24 24", 58279 fill: "none", 58280 xmlns: "http://www.w3.org/2000/svg", 58281 role: "img", 58282 "aria-labelledby": $options.id, 58283 "aria-label": $options.alt 58284 }, [ 58285 createBaseVNode("title", { id: $options.id }, toDisplayString($options.alt), 9, _hoisted_2$h), 58286 _cache[0] || (_cache[0] = createBaseVNode("path", { 58287 d: "M10 3H5C3.9 3 3 3.9 3 5V19C3 20.1 3.9 21 5 21H10V23H12V1H10V3ZM10 18H5L10 12V18ZM19 3H14V5H19V18L14 12V21H19C20.1 21 21 20.1 21 19V5C21 3.9 20.1 3 19 3Z", 58288 fill: "currentColor" 58289 }, null, -1)) 58290 ], 8, _hoisted_1$m); 58291} 58292const CoreIconTheme = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["render", _sfc_render$k]]); 58293const CoreIconTheme$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58294 __proto__: null, 58295 default: CoreIconTheme 58296}, Symbol.toStringTag, { value: "Module" })); 58297const _sfc_main$l = { 58298 props: { 58299 settings: { 58300 type: Object, 58301 required: false 58302 } 58303 }, 58304 computed: { 58305 alt() { 58306 var _a, _b; 58307 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58308 }, 58309 id() { 58310 var _a, _b; 58311 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58312 } 58313 } 58314}; 58315const _hoisted_1$l = ["aria-labelledby", "aria-label"];
58316const _hoisted_2$g = ["id"]; 58317function _sfc_render$j(_ctx, _cache, $props, $setup, $data, $options) { 58318 return openBlock(), createElementBlock("svg", { 58319 width: "24", 58320 height: "24", 58321 viewBox: "0 0 24 24", 58322 fill: "currentColor", 58323 xmlns: "http://www.w3.org/2000/svg", 58324 role: "img", 58325 "aria-labelledby": $options.id, 58326 "aria-label": $options.alt 58327 }, [ 58328 createBaseVNode("title", { id: $options.id }, toDisplayString($options.alt), 9, _hoisted_2$g), 58329 _cache[0] || (_cache[0] = createBaseVNode("path", { 58330 d: "m22.656 18.99-9.08-9.08c.93-2.34.45-5.1-1.44-7-2.3-2.3-5.88-2.51-8.43-.65l3.84 3.85-1.42 1.41-3.83-3.83c-1.86 2.54-1.65 6.13.65 8.42 1.86 1.86 4.57 2.35 6.89 1.48l9.11 9.11c.39.39 1.02.39 1.41 0l2.3-2.3c.4-.38.4-1.01 0-1.41Zm-3 1.6-9.46-9.46c-.61.45-1.29.72-2 .82-1.36.2-2.79-.21-3.83-1.25-.95-.94-1.39-2.2-1.32-3.44l3.09 3.09 4.24-4.24-3.09-3.09c1.24-.07 2.49.37 3.44 1.31a4.469 4.469 0 0 1 1.24 3.96 4.35 4.35 0 0 1-.88 1.96l9.45 9.45-.88.89Z", 58331 fill: "currentColor" 58332 }, null, -1)) 58333 ], 8, _hoisted_1$l); 58334} 58335const CoreIconTool = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$j]]); 58336const CoreIconTool$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58337 __proto__: null, 58338 default: CoreIconTool 58339}, Symbol.toStringTag, { value: "Module" })); 58340const _sfc_main$k = { 58341 name: "CoreIconCircleTrash", 58342 props: { 58343 settings: { 58344 type: Object, 58345 required: false 58346 }, 58347 click: { 58348 type: Function, 58349 default: () => { 58350 } 58351 }, 58352 size: { 58353 type: Number, 58354 default: 24 58355 } 58356 }, 58357 computed: { 58358 alt() { 58359 var _a, _b; 58360 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58361 }, 58362 id() { 58363 var _a, _b; 58364 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58365 } 58366 } 58367}; 58368const _hoisted_1$k = ["width", "height", "aria-labelledby", "aria-label"]; 58369const _hoisted_2$f = ["id"]; 58370function _sfc_render$i(_ctx, _cache, $props, $setup, $data, $options) { 58371 return openBlock(), createElementBlock("svg", { 58372 width: $props.size, 58373 height: $props.size, 58374 viewBox: "0 0 24 24", 58375 fill: "none", 58376 xmlns: "http://www.w3.org/2000/svg", 58377 onClick: _cache[0] || (_cache[0] = (...args) => $props.click && $props.click(...args)), 58378 role: "img", 58379 "aria-labelledby": $options.id, 58380 "aria-label": $options.alt 58381 }, [ 58382 createBaseVNode("title", { id: $options.id }, toDisplayString($options.alt), 9, _hoisted_2$f), 58383 _cache[1] || (_cache[1] = createBaseVNode("path", { 58384 d: "M6 19.0391C6 20.1391 6.9 21.0391 8 21.0391H16C17.1 21.0391 18 20.1391 18 19.0391V7.03906H6V19.0391ZM8 9.03906H16V19.0391H8V9.03906ZM15.5 4.03906L14.5 3.03906H9.5L8.5 4.03906H5V6.03906H19V4.03906H15.5Z", 58385 fill: "currentColor" 58386 }, null, -1)) 58387 ], 8, _hoisted_1$k); 58388} 58389const CoreIconTrash = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["render", _sfc_render$i]]); 58390const CoreIconTrash$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58391 __proto__: null, 58392 default: CoreIconTrash 58393}, Symbol.toStringTag, { value: "Module" })); 58394const _sfc_main$j = { 58395 name: "CoreIconUndo", 58396 props: { 58397 settings: { 58398 type: Object, 58399 required: false 58400 } 58401 }, 58402 computed: { 58403 alt() { 58404 var _a, _b; 58405 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58406 }, 58407 id() { 58408 var _a, _b; 58409 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58410 } 58411 } 58412}; 58413const _hoisted_1$j = ["aria-labelledby", "aria-label"]; 58414const _hoisted_2$e = ["id"]; 58415function _sfc_render$h(_ctx, _cache, $props, $setup, $data, $options) { 58416 return openBlock(), createElementBlock("svg", { 58417 width: "19", 58418 height: "18", 58419 viewBox: "0 0 19 18", 58420 fill: "none", 58421 xmlns: "http://www.w3.org/2000/svg", 58422 role: "img", 58423 "aria-labelledby": $options.id, 58424 "aria-label": $options.alt 58425 }, [ 58426 createBaseVNode("title", { id: $options.id }, toDisplayString($options.alt), 9, _hoisted_2$e), 58427 _cache[0] || (_cache[0] = createBaseVNode("path", { 58428 d: "M8.5 5V10L12.75 12.52L13.52 11.24L10 9.15V5H8.5ZM18.5 7V0L15.86 2.64C14.24 1.01 11.99 0 9.5 0C4.53 0 0.5 4.03 0.5 9C0.5 13.97 4.53 18 9.5 18C14.47 18 18.5 13.97 18.5 9H16.5C16.5 12.86 13.36 16 9.5 16C5.64 16 2.5 12.86 2.5 9
58428C2.5 5.14 5.64 2 9.5 2C11.43 2 13.18 2.79 14.45 4.05L11.5 7H18.5Z", 58429 fill: "currentColor" 58430 }, null, -1)) 58431 ], 8, _hoisted_1$j); 58432} 58433const CoreIconUndo = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["render", _sfc_render$h]]); 58434const CoreIconUndo$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58435 __proto__: null, 58436 default: CoreIconUndo 58437}, Symbol.toStringTag, { value: "Module" })); 58438const _sfc_main$i = { 58439 props: { 58440 settings: { 58441 type: Object, 58442 required: false 58443 } 58444 }, 58445 computed: { 58446 alt() { 58447 var _a, _b; 58448 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58449 }, 58450 id() { 58451 var _a, _b; 58452 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58453 } 58454 } 58455}; 58456const _hoisted_1$i = ["aria-labelledby", "aria-label"]; 58457const _hoisted_2$d = ["id"]; 58458function _sfc_render$g(_ctx, _cache, $props, $setup, $data, $options) { 58459 return openBlock(), createElementBlock("svg", { 58460 width: "24", 58461 height: "24", 58462 viewBox: "0 0 24 24", 58463 fill: "none", 58464 xmlns: "http://www.w3.org/2000/svg", 58465 role: "img", 58466 "aria-labelledby": $options.id, 58467 "aria-label": $options.alt 58468 }, [ 58469 createBaseVNode("title", { id: $options.id }, toDisplayString($options.alt), 9, _hoisted_2$d), 58470 _cache[0] || (_cache[0] = createBaseVNode("path", { 58471 d: "M18 8.5H17V6.5C17 3.74 14.76 1.5 12 1.5C9.24 1.5 7 3.74 7 6.5H9C9 4.84 10.34 3.5 12 3.5C13.66 3.5 15 4.84 15 6.5V8.5H6C4.9 8.5 4 9.4 4 10.5V20.5C4 21.6 4.9 22.5 6 22.5H18C19.1 22.5 20 21.6 20 20.5V10.5C20 9.4 19.1 8.5 18 8.5ZM18 20.5H6V10.5H18V20.5ZM12 17.5C13.1 17.5 14 16.6 14 15.5C14 14.4 13.1 13.5 12 13.5C10.9 13.5 10 14.4 10 15.5C10 16.6 10.9 17.5 12 17.5Z", 58472 fill: "currentColor" 58473 }, null, -1)) 58474 ], 8, _hoisted_1$i); 58475} 58476const CoreIconUnlock = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["render", _sfc_render$g]]); 58477const CoreIconUnlock$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58478 __proto__: null, 58479 default: CoreIconUnlock 58480}, Symbol.toStringTag, { value: "Module" })); 58481const _sfc_main$h = { 58482 props: { 58483 settings: { 58484 type: Object, 58485 required: false 58486 } 58487 }, 58488 computed: { 58489 alt() { 58490 var _a, _b; 58491 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58492 }, 58493 id() { 58494 var _a, _b; 58495 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58496 } 58497 } 58498}; 58499const _hoisted_1$h = ["aria-labelledby", "aria-label"]; 58500const _hoisted_2$c = ["id"]; 58501function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) { 58502 return openBlock(), createElementBlock("svg", { 58503 width: "24", 58504 height: "24", 58505 viewBox: "0 0 24 24", 58506 fill: "none", 58507 xmlns: "http://www.w3.org/2000/svg", 58508 role: "img", 58509 "aria-labelledby": $options.id, 58510 "aria-label": $options.alt 58511 }, [ 58512 createBaseVNode("title", { id: $options.id }, toDisplayString($options.alt), 9, _hoisted_2$c), 58513 _cache[0] || (_cache[0] = createBaseVNode("path", { 58514 d: "M19 8L15 12H18C18 15.31 15.31 18 12 18C10.99 18 10.03 17.75 9.2 17.3L7.74 18.76C8.97 19.54 10.43 20 12 20C16.42 20 20 16.42 20 12H23L19 8ZM6 12C6 8.69 8.69 6 12 6C13.01 6 13.97 6.25 14.8 6.7L16.26 5.24C15.03 4.46 13.57 4 12 4C7.58 4 4 7.58 4 12H1L5 16L9 12H6Z", 58515 fill: "currentColor" 58516 }, null, -1)) 58517 ], 8, _hoisted_1$h); 58518} 58519const CoreIconUpdate = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["render", _sfc_render$f]]); 58520const CoreIconUpdate$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58521 __proto__: null, 58522 default: CoreIconUpdate 58523}, Symbol.toStringTag, { value: "Module" })); 58524const _sfc_main$g = { 58525 props: { 58526 settings: { 58527 type: Object, 58528 required: false 58529 } 58530 }, 58531 computed: { 58532 alt() { 58533 var _a, _b; 58534 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58535 }, 58536 id() { 58537 var _a, _b; 58538 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58539 } 58540 } 58541}; 58542const _hoisted_1$g = ["aria-labelledby", "aria-label"];
58543const _hoisted_2$b = ["id"]; 58544function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) { 58545 return openBlock(), createElementBlock("svg", { 58546 width: "24", 58547 height: "24", 58548 viewBox: "0 0 24 24", 58549 fill: "none", 58550 xmlns: "http://www.w3.org/2000/svg", 58551 role: "img", 58552 "aria-labelledby": $options.id, 58553 "aria-label": $options.alt 58554 }, [ 58555 createBaseVNode("title", { id: $options.id }, toDisplayString($options.alt), 9, _hoisted_2$b), 58556 _cache[0] || (_cache[0] = createBaseVNode("path", { 58557 d: "M21 15V19C21 19.5304 20.7893 20.0391 20.4142 20.4142C20.0391 20.7893 19.5304 21 19 21H5C4.46957 21 3.96086 20.7893 3.58579 20.4142C3.21071 20.0391 3 19.5304 3 19V15", 58558 stroke: "currentColor", 58559 "stroke-width": "2", 58560 "stroke-linecap": "round", 58561 "stroke-linejoin": "round" 58562 }, null, -1)), 58563 _cache[1] || (_cache[1] = createBaseVNode("path", { 58564 d: "M17 8L12 3L7 8", 58565 stroke: "currentColor", 58566 "stroke-width": "2", 58567 "stroke-linecap": "round", 58568 "stroke-linejoin": "round" 58569 }, null, -1)), 58570 _cache[2] || (_cache[2] = createBaseVNode("path", { 58571 d: "M12 3V15", 58572 stroke: "currentColor", 58573 "stroke-width": "2", 58574 "stroke-linecap": "round", 58575 "stroke-linejoin": "round" 58576 }, null, -1)) 58577 ], 8, _hoisted_1$g); 58578} 58579const CoreIconUpload = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["render", _sfc_render$e]]); 58580const CoreIconUpload$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58581 __proto__: null, 58582 default: CoreIconUpload 58583}, Symbol.toStringTag, { value: "Module" })); 58584const _hoisted_1$f = { 58585 width: "31", 58586 height: "30", 58587 viewBox: "0 0 31 30", 58588 fill: "none", 58589 xmlns: "http://www.w3.org/2000/svg" 58590}; 58591const _sfc_main$f = { 58592 __name: "CoreIconUser", 58593 props: { 58594 settings: { 58595 type: Object, 58596 required: false 58597 } 58598 }, 58599 setup(__props) { 58600 const props = __props; 58601 const alt = computed(() => { 58602 var _a, _b; 58603 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "User"; 58604 }); 58605 return (_ctx, _cache) => { 58606 return openBlock(), createElementBlock("svg", _hoisted_1$f, [ 58607 createBaseVNode("title", null, toDisplayString(unref(alt)), 1), 58608 _cache[0] || (_cache[0] = createBaseVNode("path", { 58609 d: "M25.9453 26.2499V23.7499C25.9453 22.4238 25.4185 21.152 24.4808 20.2143C23.5431 19.2766 22.2714 18.7499 20.9453 18.7499H10.9453C9.61923 18.7499 8.34746 19.2766 7.40978 20.2143C6.4721 21.152 5.94531 22.4238 5.94531 23.7499V26.2499", 58610 stroke: "currentColor", 58611 "stroke-width": "2.5", 58612 "stroke-linecap": "round", 58613 "stroke-linejoin": "round" 58614 }, null, -1)), 58615 _cache[1] || (_cache[1] = createBaseVNode("path", { 58616 d: "M15.9453 13.75C18.7067 13.75 20.9453 11.5114 20.9453 8.75001C20.9453 5.98859 18.7067 3.75002 15.9453 3.75002C13.1839 3.75002 10.9453 5.98859 10.9453 8.75001C10.9453 11.5114 13.1839 13.75 15.9453 13.75Z", 58617 stroke: "currentColor", 58618 "stroke-width": "2.5", 58619 "stroke-linecap": "round", 58620 "stroke-linejoin": "round" 58621 }, null, -1)) 58622 ]); 58623 }; 58624 } 58625}; 58626const CoreIconUser = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58627 __proto__: null, 58628 default: _sfc_main$f 58629}, Symbol.toStringTag, { value: "Module" })); 58630const _sfc_main$e = {}; 58631const _hoisted_1$e = { 58632 xmlns: "http://www.w3.org/2000/svg", 58633 width: "24", 58634 height: "25", 58635 viewBox: "0 0 24 25", 58636 fill: "none", 58637 role: "img", 58638 "aria-label": "user-check-icon" 58639}; 58640function _sfc_render$d(_ctx, _cache) { 58641 return openBlock(), createElementBlock("svg", _hoisted_1$e, _cache[0] || (_cache[0] = [ 58642 createBaseVNode("path", { 58643 d: "M16 22.7012V20.7012C16 19.6403 15.5786 18.6229 14.8284 17.8727C14.0783 17.1226 13.0609 16.7012 12 16.7012H5C3.93913 16.7012 2.92172 17.1226 2.17157 17.8727C1.42143 18.6229 1 19.6403 1 20.7012V22.7012", 58644 stroke: "currentColor", 58645 "stroke-width": "2", 58646 "stroke-linecap": "round", 58647 "stroke-linejoin": "round" 58648 }, null, -1), 58649 createBaseVNode("path", { 58650 d: "M8.5 12.7012C10.7091 12.7012 12.5 10.9103 12.5 8.70117C12.5 6.49203 10.7091 4.70117 8.5 4.70117C6.29086 4.70117 4.5 6.49203 4.5 8.70117C4.5 10.9103 6.29086 12.7012 8.5 12.7012Z", 58651 stroke: "currentColor", 58652 "stroke-width": "2", 58653 "stroke-linecap": "round", 58654 "stroke-linejoin": "round" 58655 }, null, -1), 58656 createBaseVNode("path", { 58657 d: "M17 12.7012L19 14.7012L23 10.7012", 58658 stroke: "currentColor", 58659 "stroke-width": "2", 58660 "stroke-linecap": "round", 58661 "stroke-linejoin": "round" 58662 }, null, -1) 58663 ])); 58664} 58665const CoreIconUserCheck = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["render", _sfc_render$d]]); 58666const CoreIconUserCheck$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58667 __proto__: null, 58668 default: CoreIconUserCheck 58669}, Symbol.toStringTag, { value: "Module" })); 58670const _sfc_main$d = { 58671 props: { 58672 settings: { 58673 type: Object, 58674 required: false 58675 } 58676 }, 58677 computed: { 58678 alt() { 58679 var _a, _b; 58680 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58681 }, 58682 id() { 58683 var _a, _b; 58684 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58685 } 58686 } 58687}; 58688const _hoisted_1$d = { 58689 width: "24", 58690 height: "25", 58691 viewBox: "0 0 24 25", 58692 fill: "none", 58693 xmlns: "http://www.w3.org/2000/svg", 58694 role: "img", 58695 "aria-labelledby": "videoicon", 58696 "aria-label": "videoicon" 58697}; 58698const _hoisted_2$a = { id: "videoicon" }; 58699function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) { 58700 return openBlock(), createElementBlock("svg", _hoisted_1$d, [ 58701 createBaseVNode("title", _hoisted_2$a, toDisplayString($options.alt), 1), 58702 _cache[0] || (_cache[0] = createBaseVNode("path", { 58703 d: "M20 4.03894V16.0389H8V4.03894H20ZM20 2.03894H8C6.9 2.03894 6 2.93894 6 4.03894V16.0389C6 17.1389 6.9 18.0389 8 18.0389H20C21.1 18.0389 22 17.1389 22 16.0389V4.03894C22 2.93894 21.1 2.03894 20 2.03894ZM11.5 11.7089L13.19 13.9689L15.67 10.8689L19 15.0389H9L11.5 11.7089ZM2 6.03894V20.0389C2 21.1389 2.9 22.0389 4 22.0389H18V20.0389H4V6.03894H2Z", 58704 fill: "currentColor" 58705 }, null, -1)) 58706 ]); 58707} 58708const CoreIconVideo = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["render", _sfc_render$c]]); 58709const CoreIconVideo$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58710 __proto__: null, 58711 default: CoreIconVideo 58712}, Symbol.toStringTag, { value: "Module" })); 58713const _sfc_main$c = { 58714 props: { 58715 settings: { 58716 type: Object, 58717 required: false 58718 } 58719 }, 58720 computed: { 58721 alt() { 58722 var _a, _b; 58723 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58724 }, 58725 id() { 58726 var _a, _b; 58727 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58728 } 58729 } 58730}; 58731const _hoisted_1$c = ["aria-label"]; 58732function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) { 58733 return openBlock(), createElementBlock("svg", { 58734 width: "24", 58735 height: "24", 58736 version: "1.1", 58737 xmlns: "http://www.w3.org/2000/svg", 58738 "xmlns:xlink": "http://www.w3.org/1999/xlink",
58739 viewBox: "0 0 31 31", 58740 "aria-label": $options.alt, 58741 fill: "currentColor", 58742 stroke: "currentColor" 58743 }, _cache[0] || (_cache[0] = [ 58744 createBaseVNode("path", { d: "M15.7,1.7C8.2,1.7,2.2,7.7,2.2,15.2c0,7.4,6.1,13.5,13.5,13.5c7.4,0,13.5-6.1,13.5-13.5\n C29.2,7.7,23.1,1.7,15.7,1.7z M15.7,26.7c-6.3,0-11.5-5.2-11.5-11.5c0-6.3,5.2-11.5,11.5-11.5c6.3,0,11.5,5.2,11.5,11.5\n C27.2,21.5,22,26.7,15.7,26.7z" }, null, -1), 58745 createBaseVNode("path", { 58746 style: { "stroke-width": "2.0833", "stroke-linecap": "round", "stroke-linejoin": "round" }, 58747 d: "M13.2,10.2l7.5,5l-7.5,5V10.2z" 58748 }, null, -1) 58749 ]), 8, _hoisted_1$c); 58750} 58751const CoreIconVideoPlay = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["render", _sfc_render$b]]); 58752const CoreIconVideoPlay$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58753 __proto__: null, 58754 default: CoreIconVideoPlay 58755}, Symbol.toStringTag, { value: "Module" })); 58756const _sfc_main$b = { 58757 props: { 58758 settings: { 58759 type: Object, 58760 required: false 58761 } 58762 }, 58763 computed: { 58764 alt() { 58765 var _a, _b; 58766 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58767 }, 58768 id() { 58769 var _a, _b; 58770 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58771 } 58772 } 58773}; 58774const _hoisted_1$b = ["aria-labelledby", "aria-label"]; 58775const _hoisted_2$9 = ["id"]; 58776function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) { 58777 return openBlock(), createElementBlock("svg", { 58778 width: "24", 58779 height: "24", 58780 viewBox: "0 0 24 24", 58781 fill: "none", 58782 xmlns: "http://www.w3.org/2000/svg", 58783 role: "img", 58784 "aria-labelledby": $options.id, 58785 "aria-label": $options.alt 58786 }, [ 58787 createBaseVNode("title", { id: $options.id }, toDisplayString($options.alt), 9, _hoisted_2$9), 58788 _cache[0] || (_cache[0] = createBaseVNode("path", { 58789 d: "M19.6541 3.18701H3.65405C2.54948 3.18701 1.65405 4.08244 1.65405 5.18701V15.187C1.65405 16.2916 2.54948 17.187 3.65405 17.187H19.6541C20.7586 17.187 21.6541 16.2916 21.6541 15.187V5.18701C21.6541 4.08244 20.7586 3.18701 19.6541 3.18701Z", 58790 stroke: "currentColor", 58791 "stroke-width": "2", 58792 "stroke-linecap": "round", 58793 "stroke-linejoin": "round" 58794 }, null, -1)), 58795 _cache[1] || (_cache[1] = createBaseVNode("path", { 58796 d: "M7.65405 21.187H15.6541", 58797 stroke: "currentColor", 58798 "stroke-width": "2", 58799 "stroke-linecap": "round", 58800 "stroke-linejoin": "round" 58801 }, null, -1)), 58802 _cache[2] || (_cache[2] = createBaseVNode("path", { 58803 d: "M11.6541 17.187V21.187", 58804 stroke: "currentColor", 58805 "stroke-width": "2", 58806 "stroke-linecap": "round", 58807 "stroke-linejoin": "round" 58808 }, null, -1)) 58809 ], 8, _hoisted_1$b); 58810} 58811const CoreIconViewDesktop = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["render", _sfc_render$a]]); 58812const CoreIconViewDesktop$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58813 __proto__: null, 58814 default: CoreIconViewDesktop 58815}, Symbol.toStringTag, { value: "Module" })); 58816const _hoisted_1$a = { 58817 width: "31", 58818 height: "30", 58819 viewBox: "0 0 31 30", 58820 fill: "none", 58821 xmlns: "http://www.w3.org/2000/svg" 58822}; 58823const _sfc_main$a = { 58824 __name: "CoreIconViewDesktopSettings", 58825 props: { 58826 settings: { 58827 type: Object, 58828 required: false 58829 } 58830 }, 58831 setup(__props) { 58832 const props = __props; 58833 const alt = computed(() => { 58834 var _a, _b; 58835 return ((_a = props.settings) == null ? void 0 : _a.alt) || ((_b = props.settings) == null ? void 0 : _b.icon) || "View Desktop Settings"; 58836 }); 58837 return (_ctx, _cache) => { 58838 return openBlock(), createElementBlock("svg", _hoisted_1$a, [ 58839 createBaseVNode("title", null, toDisplayString(unref(alt)), 1), 58840 _cache[0] || (_cache[0] = createStaticVNode('<g clip-path="url(#clip0_2131_12558)"><path fill-rule="evenodd" clip-rule="evenodd" d="M5.44772 7.97951C5.44772 7.42656 5.89598 6.9783 6.44893 6.9783H22.4682C23.0212 6.9783 23.4694 7.42656 23.4694 7.97951V9.68742H25.4718V7.97951C25.4718 6.32066 24.1271 4.97589 22.4682 4.97589H6.44893C4.79008 4.97589 3.44531 6.32066 3.44531 7.97951V17.99
5884016C3.44531 19.6504 4.79008 20.9952 6.44893 20.9952H13.4551V22.9977H10.4524C9.89943 22.9977 9.45117 23.4459 9.45117 23.9989C9.45117 24.5518 9.89943 25.0001 10.4524 25.0001H18.462C19.015 25.0001 19.4632 24.5518 19.4632 23.9989C19.4632 23.4459 19.015 22.9977 18.462 22.9977H15.4575V20.9952H17.5811V18.9928H14.4718L14.4563 18.9927L14.4407 18.9928H6.44893C5.89598 18.9928 5.44772 18.5445 5.44772 17.9916V7.97951Z" fill="currentColor"></path><path d="M24.0732 18.4092C24.9204 18.4092 25.6072 17.7224 25.6072 16.8751C25.6072 16.0279 24.9204 15.341 24.0732 15.341C23.2259 15.341 22.5391 16.0279 22.5391 16.8751C22.5391 17.7224 23.2259 18.4092 24.0732 18.4092Z" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"></path><path d="M27.8544 18.4091C27.7863 18.5633 27.766 18.7344 27.7961 18.9003C27.8262 19.0662 27.9053 19.2193 28.0232 19.3398L28.0538 19.3705C28.1489 19.4654 28.2244 19.5782 28.2758 19.7024C28.3273 19.8265 28.3538 19.9596 28.3538 20.094C28.3538 20.2284 28.3273 20.3615 28.2758 20.4857C28.2244 20.6098 28.1489 20.7226 28.0538 20.8176C27.9589 20.9127 27.8461 20.9881 27.7219 21.0396C27.5977 21.0911 27.4647 21.1176 27.3303 21.1176C27.1959 21.1176 27.0628 21.0911 26.9386 21.0396C26.8145 20.9881 26.7017 20.9127 26.6067 20.8176L26.576 20.7869C26.4555 20.669 26.3024 20.59 26.1365 20.5599C25.9706 20.5298 25.7995 20.5501 25.6453 20.6182C25.4941 20.683 25.3651 20.7906 25.2742 20.9278C25.1834 21.065 25.1346 21.2258 25.1339 21.3903V21.4773C25.1339 21.7485 25.0262 22.0087 24.8344 22.2004C24.6426 22.3922 24.3825 22.5 24.1112 22.5C23.84 22.5 23.5798 22.3922 23.388 22.2004C23.1962 22.0087 23.0885 21.7485 23.0885 21.4773V21.4312C23.0845 21.262 23.0297 21.0978 22.9313 20.9601C22.8328 20.8224 22.6951 20.7175 22.5362 20.6591C22.382 20.591 22.2109 20.5707 22.045 20.6008C21.8791 20.6309 21.7261 20.71 21.6055 20.8278L21.5749 20.8585C21.4799 20.9536 21.3671 21.029 21.2429 21.0805C21.1188 21.132 20.9857 21.1585 20.8513 21.1585C20.7169 21.1585 20.5838 21.132 20.4596 21.0805C20.3355 21.029 20.2227 20.9536 20.1277 20.8585C20.0326 20.7635 19.9572 20.6507 19.9057 20.5266C19.8542 20.4024 19.8277 20.2693 19.8277 20.1349C19.8277 20.0005 19.8542 19.8675 19.9057 19.7433C19.9572 19.6191 20.0326 19.5063 20.1277 19.4114L20.1584 19.3807C20.2763 19.2602 20.3554 19.1071 20.3854 18.9412C20.4155 18.7753 20.3952 18.6042 20.3271 18.45C20.2623 18.2988 20.1547 18.1698 20.0175 18.0789C19.8803 17.9881 19.7195 17.9393 19.555 17.9386H19.468C19.1968 17.9386 18.9367 17.8309 18.7449 17.6391C18.5531 17.4473 18.4453 17.1872 18.4453 16.9159C18.4453 16.6447 18.5531 16.3845 18.7449 16.1927C18.9367 16.0009 19.1968 15.8932 19.468 15.8932H19.5141C19.6833 15.8892 19.8475 15.8344 19.9852 15.7359C20.1229 15.6375 20.2278 15.4998 20.2862 15.3409C20.3543 15.1867 20.3746 15.0156 20.3445 14.8497C20.3144 14.6838 20.2354 14.5307 20.1175 14.4102L20.0868 14.3795C19.9917 14.2846 19.9163 14.1718 19.8648 14.0476C19.8133 13.9235 19.7868 13.7904 19.7868 13.656C19.7868 13.5216 19.8133 13.3885 19.8648 13.2643C19.9163 13.1402 19.9917 13.0274 20.0868 12.9324C20.1818 12.8373 20.2946 12.7619 20.4187 12.7104C20.5429 12.6589 20.676 12.6324 20.8104 12.6324C20.9448 12.6324 21.0779 12.6589 21.202 12.7104C21.3262 12.7619 21.439 12.8373 21.5339 12.9324L21.5646 12.9631C21.6851 13.081 21.8382 13.16 22.0041 13.1901C22.17 13.2202 22.3411 13.1999 22.4953 13.1318H22.5362C22.6875 13.067 22.8165 12.9594 22.9073 12.8222C22.9982 12.685 23.0469 12.5242 23.0476 12.3597V12.2727C23.0476 12.0015 23.1553 11.7413 23.3471 11.5495C23.5389 11.3578 23.7991 11.25 24.0703 11.25C24.3416 11.25 24.6017 11.3578 24.7935 11.5495C24.9853 11.7413 25.093 12.0015 25.093 12.2727V12.3187C25.0937 12.4833 25.1425 12.6441 25.2333 12.7813C25.3242 12.9185 25.4532 13.0261 25.6044 13.0909C25.7586 13.159 25.9297 13.1793 26.0956 13.1492C26.2615 13.1191 26.4146 13.04 26.5351 12.9222L26.5658 12.8915C26.6608 12.7964 26.7735 12.721 26.8977 12.6695C27.0219 12.618 27.1549 12.5915 27.2893 12.5915C27.4237 12.5915 27.5568 12.618 27.681 12.6695C27.8051 12.721 27.9179 12.7964 28.0129 12.8915C28.108 12.9865 28.1835 13.0993 28.2349 13.2234C28.2864 13.3476 28.3129 13.4807 28.3129 13.6151C28.3129 13.7495 28.2864 13.8825 28.2349 14.0067C28.1835 14.1309 28.108 14.2437 28.0129 14.3386L27.9822 14.3693C27.8644 14.4898 27.7853 14.6429 27.7552 14.8088C27.7251 14.9747 27.7454 15.1458 27.8135 15.3V15.3409C27.8783 15.4922 27.9859 15.6211 28.1231 15.712C28.2603 15.8029 28.4211 15.8516 28.5857 15.8523H28.6726C28.9438 15.8523 29.204 15.96 29.3958 16.1518C29.5876 16.3436 29.6953 16.6038 29.6953 16.875C29.6953 17.1462 29.5876 17.4064 29.3958 17.5982C29.204 17.79 28.9438 17.8977 28.6726 17.8977H28.6266C28.462 17.8984 28.3012 17.9471 28.1641 18.038C28.0269 18.1289 27.9192 18.2578 27.8544 18.4091Z" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"></path></g><defs><clipPath id="clip0_2131_12558"><rect width="30" height="30" fill="white" transform="translate(0.945312)"></rect></clipPath></defs>', 2)) 58841 ]); 58842 }; 58843 } 58844}; 58845const CoreIconViewDesktopSettings = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58846 __proto__: null, 58847 default: _sfc_main$a 58848}
58848, Symbol.toStringTag, { value: "Module" })); 58849const _sfc_main$9 = {}; 58850const _hoisted_1$9 = { 58851 xmlns: "http://www.w3.org/2000/svg", 58852 width: "24", 58853 height: "24", 58854 viewBox: "0 0 24 24", 58855 fill: "none" 58856}; 58857function _sfc_render$9(_ctx, _cache) { 58858 return openBlock(), createElementBlock("svg", _hoisted_1$9, _cache[0] || (_cache[0] = [ 58859 createBaseVNode("path", { 58860 d: "M18 13V19C18 19.5304 17.7893 20.0391 17.4142 20.4142C17.0391 20.7893 16.5304 21 16 21H5C4.46957 21 3.96086 20.7893 3.58579 20.4142C3.21071 20.0391 3 19.5304 3 19V8C3 7.46957 3.21071 6.96086 3.58579 6.58579C3.96086 6.21071 4.46957 6 5 6H11", 58861 stroke: "black", 58862 "stroke-width": "2", 58863 "stroke-linecap": "round", 58864 "stroke-linejoin": "round" 58865 }, null, -1), 58866 createBaseVNode("path", { 58867 d: "M15 3H21V9", 58868 stroke: "black", 58869 "stroke-width": "2", 58870 "stroke-linecap": "round", 58871 "stroke-linejoin": "round" 58872 }, null, -1), 58873 createBaseVNode("path", { 58874 d: "M10 14L21 3", 58875 stroke: "black", 58876 "stroke-width": "2", 58877 "stroke-linecap": "round", 58878 "stroke-linejoin": "round" 58879 }, null, -1) 58880 ])); 58881} 58882const CoreIconViewLiveSite = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["render", _sfc_render$9]]); 58883const CoreIconViewLiveSite$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58884 __proto__: null, 58885 default: CoreIconViewLiveSite 58886}, Symbol.toStringTag, { value: "Module" })); 58887const _sfc_main$8 = { 58888 props: { 58889 settings: { 58890 type: Object, 58891 required: false 58892 } 58893 }, 58894 computed: { 58895 alt() { 58896 var _a, _b; 58897 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58898 }, 58899 id() { 58900 var _a, _b; 58901 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58902 } 58903 } 58904}; 58905const _hoisted_1$8 = ["aria-labelledby", "aria-label"]; 58906const _hoisted_2$8 = ["id"]; 58907function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) { 58908 return openBlock(), createElementBlock("svg", { 58909 width: "24", 58910 height: "24", 58911 viewBox: "0 0 24 24", 58912 fill: "none", 58913 xmlns: "http://www.w3.org/2000/svg", 58914 role: "img", 58915 "aria-labelledby": `icon-title-${$options.id}`, 58916 "aria-label": $options.alt 58917 }, [ 58918 createBaseVNode("title", { 58919 id: `icon-title-${$options.id}` 58920 }, toDisplayString($options.alt), 9, _hoisted_2$8), 58921 _cache[0] || (_cache[0] = createBaseVNode("path", { 58922 d: "M12 5.97505C15.79 5.97505 19.17 8.10505 20.82 11.475C20.23 12.695 19.4 13.745 18.41 14.595L19.82 16.005C21.21 14.775 22.31 13.235 23 11.475C21.27 7.08505 17 3.97505 12 3.97505C10.73 3.97505 9.51 4.17505 8.36 4.54505L10.01 6.19505C10.66 6.06505 11.32 5.97505 12 5.97505ZM10.93 7.11505L13 9.18505C13.57 9.43505 14.03 9.89505 14.28 10.465L16.35 12.535C16.43 12.195 16.49 11.835 16.49 11.465C16.5 8.98505 14.48 6.97505 12 6.97505C11.63 6.97505 11.28 7.02505 10.93 7.11505ZM2.01 3.84505L4.69 6.52505C3.06 7.80505 1.77 9.50505 1 11.475C2.73 15.865 7 18.975 12 18.975C13.52 18.975 14.98 18.685 16.32 18.155L19.74 21.575L21.15 20.165L3.42 2.42505L2.01 3.84505ZM9.51 11.345L12.12 13.955C12.08 13.965 12.04 13.975 12 13.975C10.62 13.975 9.5 12.855 9.5 11.475C9.5 11.425 9.51 11.395 9.51 11.345ZM6.11 7.94505L7.86 9.69505C7.63 10.245 7.5 10.845 7.5 11.475C7.5 13.955 9.52 15.975 12 15.975C12.63 15.975 13.23 15.845 13.77 15.615L14.75 16.595C13.87 16.835 12.95 16.975 12 16.975C8.21 16.975 4.83 14.845 3.18 11.475C3.88 10.045 4.9 8.86505 6.11 7.94505Z", 58923 fill: "currentColor" 58924 }, null, -1)) 58925 ], 8, _hoisted_1$8); 58926} 58927const CoreIconVisibilityOff = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["render", _sfc_render$8]]); 58928const CoreIconVisibilityOff$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58929 __proto__: null, 58930 default: CoreIconVisibilityOff 58931}, Symbol.toStringTag, { value: "Module" })); 58932const _sfc_main$7 = { 58933 props: { 58934 settings: { 58935 type: Object, 58936 required: false 58937 } 58938 }, 58939 computed: { 58940 alt() { 58941 var _a, _b; 58942 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58943 }, 58944 id() { 58945 var _a, _b; 58946 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58947 } 58948 } 58949}; 58950const _hoisted_1$7 = ["aria-labelledby", "aria-label"]; 58951const _hoisted_2$7 = ["id"]; 58952function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) { 58953 return openBlock(), createElementBlock("svg", { 58954 width: "24", 58955 height: "24",
58956 viewBox: "0 0 24 24", 58957 fill: "none", 58958 xmlns: "http://www.w3.org/2000/svg", 58959 role: "img", 58960 "aria-labelledby": `icon-title-${$options.id}`, 58961 "aria-label": $options.alt 58962 }, [ 58963 createBaseVNode("title", { 58964 id: `icon-title-${$options.id}` 58965 }, toDisplayString($options.alt), 9, _hoisted_2$7), 58966 _cache[0] || (_cache[0] = createBaseVNode("path", { 58967 d: "M12 6.5C15.79 6.5 19.17 8.63 20.82 12C19.17 15.37 15.79 17.5 12 17.5C8.21 17.5 4.83 15.37 3.18 12C4.83 8.63 8.21 6.5 12 6.5ZM12 4.5C7 4.5 2.73 7.61 1 12C2.73 16.39 7 19.5 12 19.5C17 19.5 21.27 16.39 23 12C21.27 7.61 17 4.5 12 4.5ZM12 9.5C13.38 9.5 14.5 10.62 14.5 12C14.5 13.38 13.38 14.5 12 14.5C10.62 14.5 9.5 13.38 9.5 12C9.5 10.62 10.62 9.5 12 9.5ZM12 7.5C9.52 7.5 7.5 9.52 7.5 12C7.5 14.48 9.52 16.5 12 16.5C14.48 16.5 16.5 14.48 16.5 12C16.5 9.52 14.48 7.5 12 7.5Z", 58968 fill: "currentColor" 58969 }, null, -1)) 58970 ], 8, _hoisted_1$7); 58971} 58972const CoreIconVisibilityOn = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["render", _sfc_render$7]]); 58973const CoreIconVisibilityOn$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 58974 __proto__: null, 58975 default: CoreIconVisibilityOn 58976}, Symbol.toStringTag, { value: "Module" })); 58977const _sfc_main$6 = { 58978 props: { 58979 settings: { 58980 type: Object, 58981 required: false 58982 } 58983 }, 58984 computed: { 58985 alt() { 58986 var _a, _b; 58987 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 58988 }, 58989 id() { 58990 var _a, _b; 58991 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 58992 } 58993 } 58994}; 58995const _hoisted_1$6 = ["aria-labelledby", "aria-label"]; 58996const _hoisted_2$6 = ["id"]; 58997function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) { 58998 return openBlock(), createElementBlock("svg", { 58999 width: "24", 59000 height: "24", 59001 viewBox: "0 0 24 24", 59002 fill: "none", 59003 xmlns: "http://www.w3.org/2000/svg", 59004 role: "img", 59005 "aria-labelledby": `icon-title-${$options.id}`, 59006 "aria-label": $options.alt 59007 }, [ 59008 createBaseVNode("title", { 59009 id: `icon-title-${$options.id}` 59010 }, toDisplayString($options.alt), 9, _hoisted_2$6), 59011 _cache[0] || (_cache[0] = createStaticVNode('<g clip-path="url(#clip0_153_329)"><path d="M11 5L6 9H2V15H6L11 19V5Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path><path d="M23 9L17 15" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path><path d="M17 9L23 15" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path></g><defs><clipPath id="clip0_153_329"><rect width="24" height="24" fill="white"></rect></clipPath></defs>', 2)) 59012 ], 8, _hoisted_1$6); 59013} 59014const CoreIconVolumeOff = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["render", _sfc_render$6]]); 59015const CoreIconVolumeOff$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 59016 __proto__: null, 59017 default: CoreIconVolumeOff 59018}, Symbol.toStringTag, { value: "Module" })); 59019const _sfc_main$5 = { 59020 props: { 59021 settings: { 59022 type: Object, 59023 required: false 59024 } 59025 }, 59026 computed: { 59027 alt() { 59028 var _a, _b; 59029 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 59030 }, 59031 id() { 59032 var _a, _b; 59033 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 59034 } 59035 } 59036}; 59037const _hoisted_1$5 = ["aria-labelledby", "aria-label"]; 59038const _hoisted_2$5 = ["id"]; 59039function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) { 59040 return openBlock(), createElementBlock("svg", { 59041 width: "24", 59042 height: "24", 59043 viewBox: "0 0 24 24", 59044 fill: "none", 59045 xmlns: "http://www.w3.org/2000/svg", 59046 role: "img", 59047 "aria-labelledby": `icon-title-${$options.id}`, 59048 "aria-label": $options.alt 59049 }, [ 59050 createBaseVNode("title", { 59051 id: `icon-title-${$options.id}` 59052 }, toDisplayString($options.alt), 9, _hoisted_2$5), 59053 _cache[0] || (_cache[0] = createBaseVNode("path", {
59054 d: "M10.9143 4.71802L5.91431 8.71802H1.91431V14.718H5.91431L10.9143 18.718V4.71802Z", 59055 stroke: "currentColor", 59056 "stroke-width": "2", 59057 "stroke-linecap": "round", 59058 "stroke-linejoin": "round" 59059 }, null, -1)) 59060 ], 8, _hoisted_1$5); 59061} 59062const CoreIconVolumeOn = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["render", _sfc_render$5]]); 59063const CoreIconVolumeOn$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 59064 __proto__: null, 59065 default: CoreIconVolumeOn 59066}, Symbol.toStringTag, { value: "Module" })); 59067const _sfc_main$4 = { 59068 props: { 59069 settings: { 59070 type: Object, 59071 required: false 59072 } 59073 }, 59074 computed: { 59075 alt() { 59076 var _a, _b; 59077 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 59078 }, 59079 id() { 59080 var _a, _b; 59081 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 59082 } 59083 } 59084}; 59085const _hoisted_1$4 = ["aria-labelledby", "aria-label"]; 59086const _hoisted_2$4 = ["id"]; 59087function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) { 59088 return openBlock(), createElementBlock("svg", { 59089 width: "24", 59090 height: "24", 59091 viewBox: "0 0 24 24", 59092 fill: "none", 59093 xmlns: "http://www.w3.org/2000/svg", 59094 role: "img", 59095 "aria-labelledby": `icon-title-${$options.id}`, 59096 "aria-label": $options.alt 59097 }, [ 59098 createBaseVNode("title", { 59099 id: `icon-title-${$options.id}` 59100 }, toDisplayString($options.alt), 9, _hoisted_2$4), 59101 _cache[0] || (_cache[0] = createBaseVNode("path", { 59102 d: "M11 5.06982L6 9.06982H2V15.0698H6L11 19.0698V5.06982Z", 59103 stroke: "currentColor", 59104 "stroke-width": "2", 59105 "stroke-linecap": "round", 59106 "stroke-linejoin": "round" 59107 }, null, -1)), 59108 _cache[1] || (_cache[1] = createBaseVNode("path", { 59109 d: "M19.07 5C20.9447 6.87528 21.9979 9.41836 21.9979 12.07C21.9979 14.7216 20.9447 17.2647 19.07 19.14M15.54 8.53C16.4774 9.46764 17.004 10.7392 17.004 12.065C17.004 13.3908 16.4774 14.6624 15.54 15.6", 59110 stroke: "currentColor", 59111 "stroke-width": "2", 59112 "stroke-linecap": "round", 59113 "stroke-linejoin": "round" 59114 }, null, -1)) 59115 ], 8, _hoisted_1$4); 59116} 59117const CoreIconVolumeUp = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["render", _sfc_render$4]]); 59118const CoreIconVolumeUp$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 59119 __proto__: null, 59120 default: CoreIconVolumeUp 59121}, Symbol.toStringTag, { value: "Module" })); 59122const _sfc_main$3 = { 59123 props: { 59124 settings: { 59125 type: Object, 59126 required: false 59127 } 59128 }, 59129 computed: { 59130 alt() { 59131 var _a, _b; 59132 return ((_a = this.settings) == null ? void 0 : _a.alt) || ((_b = this.settings) == null ? void 0 : _b.icon); 59133 }, 59134 id() { 59135 var _a, _b; 59136 return ((_a = this.settings) == null ? void 0 : _a.id) || ((_b = this.settings) == null ? void 0 : _b.icon); 59137 } 59138 } 59139}; 59140const _hoisted_1$3 = ["aria-labelledby", "aria-label"]; 59141const _hoisted_2$3 = ["id"]; 59142function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) { 59143 return openBlock(), createElementBlock("svg", { 59144 width: "24", 59145 height: "24", 59146 viewBox: "0 0 24 24", 59147 fill: "none", 59148 xmlns: "http://www.w3.org/2000/svg", 59149 role: "img", 59150 "aria-labelledby": `icon-title-${$options.id}`, 59151 "aria-label": $options.alt 59152 }, [ 59153 createBaseVNode("title", { 59154 id: `icon-title-${$options.id}` 59155 }, toDisplayString($options.alt), 9, _hoisted_2$3), 59156 _cache[0] || (_cache[0] = createBaseVNode("g", { "clip-path": "url(#clip0_594_7435)" }, [ 59157 createBaseVNode("path", { 59158 d: "M12.0105 2C6.5105 2 2.0105 6.5 2.0105 12C2.0105 17.5 6.5105 22 12.0105 22C17.5105 22 22.0105 17.5 22.0105 12C22.0105 6.5 17.5105 2 12.0105 2ZM12.0105 20C7.6005 20 4.0105 16.41 4.0105 12C4.0105 7.59 7.6005 4 12.0105 4C16.4205 4 20.0105 7.59 20.0105 12C20.0105 16.41 16.4205 20 12.0105 20ZM12.5105 7H11.0105V13L16.2105 16.2L17.0105 14.9L12.5105 12.2V7Z", 59159 fill: "currentColor" 59160 }) 59161 ], -1)), 59162 _cache[1] || (_cache[1] = createBaseVNode("defs", null, [ 59163 createBaseVNode("clipPath", { id: "clip0_594_7435" }, [ 59164 createBaseVNode("rect", { 59165 width: "24", 59166 height: "24", 59167 fill: "white" 59168 }) 59169 ]) 59170 ], -1)) 59171 ], 8, _hoisted_1$3); 59172} 59173const CoreIconWatchLater = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["render", _sfc_render$3]]); 59174const CoreIconWatchLater$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 59175 __proto__: null, 59176 default: CoreIconWatchLater 59177}, Symbol.toStringTag, { value: "Module" })); 59178const _sfc_main$2 = { 59179 name: "CoreBlockFooter", 59180 components: { 59181 NuxtLink: __nuxt_component_2$5 59182 }, 59183 props: { 59184 site: { 59185 type: Object, 59186 default: () => { 59187 return {}; 59188 } 59189 }, 59190 isBuilder: { 59191 type: Boolean, 59192 default: false 59193 }, 59194 // the builder preview is set to mobile view 59195 isBuilderMobile: { 59196 type: Boolean, 59197 default: false 59198 }, 59199 isEditable: { 59200 type: Boolean, 59201 default: false 59202 } 59203 }, 59204 setup() { 59205 provide(SCROLL_ANIMATION_EXCLUDED_KEY, true); 59206 const { isMobile } = useIsMobile(); 59207 const store = useStore(); 59208 const { state, commit: commit2 } = store; 59209 return { isMobile, state, commit: commit2 }; 59210 }, 59211 data() { 59212 return { 59213 emailForm: { 59214 email: null,
59215 disclosureChecked: false 59216 }, 59217 clonedSite: null, 59218 defaultLogo: { 59219 src: "/img/core-logo.svg", 59220 alt: "Core CMS Logo" 59221 }, 59222 logoSrc: null 59223 }; 59224 }, 59225 computed: { 59226 ...mapGetters("settings", ["getBrandFeatureFlag"]), 59227 isCoreLite() { 59228 return this.getBrandFeatureFlag("CoreLite"); 59229 }, 59230 blockClasses() { 59231 const classList = []; 59232 if (this.isBuilder) { 59233 classList.push("footer__pointer_all"); 59234 } 59235 return classList; 59236 }, 59237 pageTree() { 59238 var _a, _b, _c, _d; 59239 try { 59240 let pageTree; 59241 try { 59242 pageTree = (_a = this == null ? void 0 : this.site) == null ? void 0 : _a.pages.filter( 59243 (p2) => { 59244 var _a2, _b2; 59245 return !p2.isPrivate && !p2.parentPageId && ((_a2 = this == null ? void 0 : this.site) == null ? void 0 : _a2.homepageId) != p2.id && !((_b2 = JSON.parse(p2.settings)) == null ? void 0 : _b2.isNavButton); 59246 } 59247 ); 59248 } catch (err) { 59249 pageTree = ((_b = this
59249== null ? void 0 : this.site) == null ? void 0 : _b.pages.filter( 59250 (p2) => { 59251 var _a2, _b2; 59252 return !p2.isPrivate && !p2.parentPageId && ((_a2 = this == null ? void 0 : this.site) == null ? void 0 : _a2.homepageId) != p2.id && !((_b2 = p2.settings) == null ? void 0 : _b2.isNavButton); 59253 } 59254 )) || []; 59255 } 59256 const navButton = (_d = (_c = this == null ? void 0 : this.site) == null ? void 0 : _c.pages) == null ? void 0 : _d.find((p2) => { 59257 var _a2, _b2; 59258 try { 59259 return (_a2 = JSON.parse(p2.settings)) == null ? void 0 : _a2.isNavButton; 59260 } catch { 59261 return (_b2 = p2.settings) == null ? void 0 : _b2.isNavButton; 59262 } 59263 }); 59264 if (navButton) { 59265 pageTree.push(navButton); 59266 } 59267 return pageTree; 59268 } catch (err) { 59269 return []; 59270 } 59271 }, 59272 logoInternalLink() { 59273 return this.logoLink.startsWith("/"); 59274 }, 59275 logoTag() { 59276 if (this.logoInternalLink) { 59277 return "NuxtLink"; 59278 } 59279 return "a"; 59280 }, 59281 externalLink() { 59282 return this.logoLink; 59283 }, 59284 footer() { 59285 var _a; 59286 return ((_a = this.site) == null ? void 0 : _a.footer) || {}; 59287 }, 59288 copyright() { 59289 return renderData(this.footer.copyright, this.clonedSite); 59290 }, 59291 copyrightText() { 59292 var _a; 59293 return renderData( 59294 ((_a = this.footer) == null ? void 0 : _a.copyrightText) || "", 59295 this.clonedSite 59296 ); 59297 }, 59298 copyrightLink() { 59299 var _a; 59300 return ((_a = this.footer) == null ? void 0 : _a.copyrightLink) || ""; 59301 }, 59302 showFooter() { 59303 return this.footer.showFooter || false; 59304 }, 59305 showCopyright() { 59306 return this.footer.showCopyright || false; 59307 }, 59308 originalLogo() { 59309 const logoSrc = isObject$1(this.footer.logo) ? this.footer.logo.src : this.footer.logo; 59310 if (this.logoFallbackEnabled) { 59311 return renderData(logoSrc, this.site) || this.fallbackLogo || this.staticLogo; 59312 } else { 59313 return renderData(logoSrc, this.clonedSite) || this.defaultLogo.src; 59314 } 59315 }, 59316 fallbackLogo() { 59317 var _a; 59318 const brandId = (_a = this.site) == null ? void 0 : _a.brandId; 59319 return generateFallbackLogoURL(brandId); 59320 }, 59321 // Last resort, bundled with the app so it cannot 404 the way a remote URL can. 59322 // No brand branch: NYL renders nyl/block/footer/CoreBlockFooter.vue, so this 59323 // component only ever serves brands with no brand-specific override. 59324 staticLogo() { 59325 return this.defaultLogo.src; 59326 }, 59327 logoFallbackEnabled() { 59328 var _a; 59329 return (_a = this.state.settings.featureFlags) == null ? void 0 : _a.LogoFallback; 59330 }, 59331 logoStyle() { 59332 return this.footer.logoStyle; 59333 }, 59334 logoAltText() { 59335 const logoAlt = isObject$1(this.footer.logo) ? this.footer.logo.alt : this.footer.logoAltText; 59336 if (this.logoFallbackEnabled) { 59337 return logoAlt || "Website Logo"; 59338 } else { 59339 const defaultAlt = this.logoSrc === this.defaultLogo.src && this.defaultLogo.alt; 59340 return logoAlt || defaultAlt || this.nameFooter; 59341 } 59342 }, 59343 logoLink() { 59344 return this.footer.logoLink || "/#"; 59345 }, 59346 hasDataNameFooter() { 59347 const dataName = renderData(this.footer.nameFooter, this.clonedSite) || ""; 59348 return !!dataName.trim(); 59349 }, 59350 nameFooter() { 59351 var _a; 59352 const formattedName = formatName( 59353 this.footer.nameFooter, 59354 (_a = this.site.user) == null ? void 0 : _a.ddcUserData 59355 ); 59356 return this.hasDataNameFooter ? unescape$1(renderData(formattedName, this.clonedSite)) : this.site.title; 59357 }, 59358 displayName() { 59359 var _a, _b; 59360 return (_b = (_a = this.site.user) == null ? void 0 : _a.ddcUserData) == null ? void 0 : _b.displayName; 59361 }, 59362 overlineFooter() { 59363 return unescape$1( 59364 renderData(this.footer.overlineFooter, this.clonedSite) 59365 ); 59366 }, 59367 jobTitleFooter() { 59368 return renderData(this.footer.jobTitleFooter, this.clonedSite); 59369 }, 59370 showUsernameFooter() { 59371 return this.footer.showUsernameFooter; 59372 }, 59373 showOverlineFooter() { 59374 return this.footer.showOverlineFooter; 59375 }, 59376 showTitleFooter() { 59377 return this.footer.showTitleFooter; 59378 }, 59379 logoClass() { 59380 return `brand_image brand_image--${this.logoStyle}`; 59381 }, 59382 hasSocialLink() { 59383 return this.facebook || this.linkedin || this.twitter; 59384 }, 59385 showSocialTitle() { 59386 var _a; 59387 return ((_a = this.footer) == null ? void 0 : _a["social-title-show"]) !== false; 59388 }, 59389 showLogo() { 59390 var _a; 59391 return ((_a = this.footer) == null ? void 0 : _a.logoShow) !== false; 59392 }, 59393 facebook() { 59394 var _a; 59395 if (!((_a = this.footer) == null ? void 0 : _a["facebook-show"])) return ""; 59396 return renderData(this.footer.facebook, this.clonedSite); 59397 }, 59398 linkedin() { 59399 var _a; 59400 if (!((_a = this.footer) == null ? void 0 : _a["linkedin-show"])) return ""; 59401 return renderData(this.footer.linkedin, this.clonedSite); 59402 }, 59403 instagram() { 59404 return this.footer.instagram; 59405 }, 59406 twitter() { 59407 var _a; 59408 if (!((_a = this.footer) == null ? void 0 : _a["twitter-show"])) return ""; 59409 return renderData(this.footer.twitter, this.clonedSite); 59410 }, 59411 youtube() { 59412 return this.footer.youtube; 59413 }, 59414 isFooterMobile() { 59415 return (this.isBuilderMobile || this.isMobile) ?? false; 59416 } 59417 }, 59418 watch: { 59419 originalLogo(newVal) { 59420 this.logoSrc = newVal; 59421 } 59422 }, 59423 mounted() { 59424 this.logoSrc = this.originalLogo; 59425 }, 59426 created() { 59427 this.addDataToSite(); 59428 }, 59429 methods: { 59430 handleToggle() { 59431 if (this.isBuilder && this.isEditable && !this.state.interface.isLeftRailClosing) { 59432 if (!this.state.interface.activeSidebarKey) { 59433 this.commit("interface/toggleActiveSidebarKey", "footer"); 59434 } else { 59435 this.commit("interface/setActiveSidebarKey"); 59436 } 59437 this.commit( 59438 "interface/setRightRailOpening", 59439 !this.state.interface.isRightRailOpening 59440 ); 59441 this.commit("site/clearSelectedBlockIds"); 59442 setTimeout(() => { 59443 const targetElement = document.querySelector( 59444 ".editor-main-navigation" 59445 ); 59446 if (targetElement) 59447 targetElement.scrollIntoView({ behavior: "smooth" }); 59448 }, 500); 59449 } 59450 }, 59451 addDataToSite() { 59452 const year = (/* @__PURE__ */ new Date()).getFullYear(); 59453 this.clonedSite = { year, ...this.site }; 59454 }, 59455 // Steps one rung down the chain: site logo -> brand default -> bundled static. 59456 logoFailedToLoad() { 59457 if (!this.logoFallbackEnabled) return; 59458 if (this.logoSrc === this.staticLogo) return; 59459 this.logoSrc = this.fallbackLogo && this.logoSrc !== this.fallbackLogo ? this.fallbackLogo : this.staticLogo; 59460 } 59461 } 59462};
59463const _hoisted_1$2 = { class: "footer__content-wrapper" }; 59464const _hoisted_2$2 = { class: "footer__content" }; 59465const _hoisted_3$2 = { class: "footer__top" }; 59466const _hoisted_4$2 = { class: "navbar" }; 59467const _hoisted_5$2 = { 59468 class: "nav", 59469 "aria-label": "Brand and social links" 59470}; 59471const _hoisted_6$2 = { class: "nav-left" }; 59472const _hoisted_7$2 = { class: "brand" }; 59473const _hoisted_8$2 = ["alt", "src"]; 59474const _hoisted_9$2 = { class: "brand_text" }; 59475const _hoisted_10$2 = { 59476 key: 0, 59477 class: "brand_text__subtitle" 59478}; 59479const _hoisted_11$2 = { 59480 key: 1, 59481 class: "brand_text__title" 59482}; 59483const _hoisted_12$2 = { 59484 key: 2, 59485 class: "brand_text__subtitle" 59486}; 59487const _hoisted_13$2 = { class: "nav-right" }; 59488const _hoisted_14$2 = { 59489 key: 0, 59490 class: "footer__top--social-links" 59491}; 59492const _hoisted_15$2 = { 59493 key: 0, 59494 "aria-label": "Footer navigation" 59495}; 59496const _hoisted_16$2 = { 59497 class: "subnav", 59498 "aria-label": "Site pages" 59499}; 59500const _hoisted_17$2 = { 59501 class: "copyright-section", 59502 role: "region", 59503 "aria-label": "Copyright information" 59504}; 59505const _hoisted_18$2 = { class: "copyright-text" }; 59506const _hoisted_19$2 = ["innerHTML"]; 59507function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) { 59508 const _component_CoreBlock = _sfc_main$4x; 59509 const _component_CoreBlockNavItem = _sfc_main$4a; 59510 const _component_NuxtLink = __nuxt_component_2$5; 59511 return withDirectives((openBlock(), createElementBlock("footer", { 59512 class: normalizeClass(["footer", $options.blockClasses]), 59513 role: "contentinfo", 59514 "aria-label": "Footer", 59515 onClick: _cache[1] || (_cache[1] = (...args) => $options.handleToggle && $options.handleToggle(...args)) 59516 }, [ 59517 createBaseVNode("div", _hoisted_1$2, [ 59518 createBaseVNode("div", _hoisted_2$2, [ 59519 createBaseVNode("div", _hoisted_3$2, [ 59520 createBaseVNode("div", _hoisted_4$2, [ 59521 createBaseVNode("nav", _hoisted_5$2, [ 59522 createBaseVNode("div", _hoisted_6$2, [ 59523 createBaseVNode("figure", _hoisted_7$2, [ 59524 withDirectives((openBlock(), createBlock(resolveDynamicComponent($options.logoTag), mergeProps({ 59525 class: "brand_link", 59526 target: $options.logoInternalLink ? "_self" : "_blank" 59527 }, { 59528 ...$options.logoInternalLink ? { to: $options.logoLink } : { href: $options.externalLink } 59529 }, { 59530 "aria-label": $options.logoAltText, 59531 tabindex: "0" 59532 }), { 59533 default: withCtx(() => [ 59534 createBaseVNode("img", { 59535 alt: $options.logoAltText, 59536 class: normalizeClass($options.logoClass), 59537 src: $data.logoSrc, 59538 onError: _cache[0] || (_cache[0] = (...args) => $options.logoFailedToLoad && $options.logoFailedToLoad(...args)) 59539 }, null, 42, _hoisted_8$2) 59540 ]), 59541 _: 1 59542 }, 16, ["target", "aria-label"])), [ 59543 [ 59544 vShow, 59545 $options.showLogo && $options.logoStyle !== "none" 59546 ] 59547 ]), 59548 withDirectives(createBaseVNode("figcaption", _hoisted_9$2, [ 59549 $options.overlineFooter && $options.showOverlineFooter ? (openBlock(), createElementBlock("h6", _hoisted_10$2, toDisplayString($options.overlineFooter), 1)) : createCommentVNode("", true), 59550 $options.hasDataNameFooter && $options.showUsernameFooter ? (openBlock(), createElementBlock("h4", _hoisted_11$2, toDisplayString($options.displayName || $options.nameFooter), 1)) : createCommentVNode("", true), 59551 $options.jobTitleFooter && $options.showUsernameFooter && $options.showTitleFooter ? (openBlock(), createElementBlock("h6", _hoisted_12$2, toDisplayString($options.jobTitleFooter), 1)) : createCommentVNode("", true) 59552 ], 512), [ 59553 [ 59554 vShow, 59555 $options.logoStyle !== "large" && $options.logoStyle !== "none" && !$options.isFooterMobile 59556 ] 59557 ]) 59558 ]) 59559 ]), 59560 createBaseVNode("div", _hoisted_13$2, [ 59561 $options.hasSocialLink ? (openBlock(), createElementBlock("div", _hoisted_14$2, [ 59562 $options.showSocialTitle ? (openBlock(), createBlock(_component_CoreBlock, { 59563 key: 0, 59564 "is-editable": $props.isEditable, 59565 settings: { 59566 type: "text", 59567 text: "Connect on Social", 59568 tag: "p" 59569 } 59570 }, null, 8, ["is-editable"])) : createCommentVNode("", true), 59571 createVNode(_component_CoreBlock, { 59572 "is-editable": $props.isEditable, 59573 settings: { 59574 type: "social-links", 59575 facebook: $options.facebook, 59576 linkedin: $options.linkedin, 59577 twitter: $options.twitter, 59578 variants: { 59579 style: "slim", 59580 align: $options.isFooterMobile ? "align-center" : "align-right" 59581 } 59582 } 59583 }, null, 8, ["is-editable", "settings"]) 59584 ])) : createCommentVNode("", true) 59585 ]) 59586 ]) 59587 ]) 59588 ]), 59589 $options.pageTree.length > 1 ? (openBlock(), createElementBlock("nav", _hoisted_15$2, [ 59590 createBaseVNode("ul", _hoisted_16$2, [ 59591 (openBlock(true), createElementBlock(Fragment, null, renderList($options.pageTree, (pageItem, index2) => { 59592 return openBlock(), createBlock(_component_CoreBlockNavItem, { 59593 key: pageItem.linkText + pageItem.linkUrl + index2 || index2, 59594 site: $props.site, 59595 navitem: pageItem, 59596 "is-footer": true, 59597 class: "navbar_item navbar_item--dropdown", 59598 "is-mobile": $options.isFooterMobile, 59599 "is-editable": $props.isEditable 59600 }
59600, null, 8, ["site", "navitem", "is-mobile", "is-editable"]); 59601 }), 128)) 59602 ]) 59603 ])) : createCommentVNode("", true), 59604 withDirectives(createBaseVNode("div", _hoisted_17$2, [ 59605 createBaseVNode("div", { 59606 class: normalizeClass(["copyright", { "disclosures--mobile": $options.isFooterMobile }]) 59607 }, [ 59608 createBaseVNode("span", _hoisted_18$2, [ 59609 createBaseVNode("p", null, [ 59610 createVNode(_component_NuxtLink, { 59611 rel: "noopener noreferrer nofollow", 59612 to: $options.copyrightLink, 59613 tabindex: "0", 59614 "aria-label": $options.copyrightText 59615 }, { 59616 default: withCtx(() => [ 59617 createTextVNode(toDisplayString($options.copyrightText), 1) 59618 ]), 59619 _: 1 59620 }, 8, ["to", "aria-label"]) 59621 ]), 59622 createBaseVNode("span", { innerHTML: $options.copyright }, null, 8, _hoisted_19$2) 59623 ]) 59624 ], 2) 59625 ], 512), [ 59626 [vShow, $options.showCopyright] 59627 ]) 59628 ]) 59629 ]) 59630 ], 2)), [ 59631 [vShow, $options.showFooter] 59632 ]); 59633} 59634const CoreBlockFooter = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["render", _sfc_render$2]]); 59635const CoreBlockFooter$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 59636 __proto__: null, 59637 default: CoreBlockFooter 59638}, Symbol.toStringTag, { value: "Module" })); 59639const _sfc_main$1 = { 59640 props: { 59641 settings: { 59642 type: Object, 59643 required: true 59644 }, 59645 dataSite: { 59646 type: Object, 59647 required: true 59648 }, 59649 isEditable: { 59650 type: Boolean, 59651 default: false 59652 }, 59653 isBuilderMobile: { 59654 type: Boolean, 59655 default: false 59656 }, 59657 ...inlineTextEditProps 59658 }, 59659 setup(props) { 59660 provide(SCROLL_ANIMATION_EXCLUDED_KEY, true); 59661 const store = useStore(); 59662 const { state } = store; 59663 const { isMobile } = useIsMobile(); 59664 const { inlineButton, closeField } = useInlineTextFields(props, { 59665 keys: ["buttonLabel"], 59666 activeField: injectInlineActiveField() 59667 }); 59668 return { 59669 state, 59670 isMobile, 59671 inlineButton, 59672 closeField 59673 }; 59674 }, 59675 data() { 59676 return { 59677 photoLocation: "", 59678 widestTextComputed: false, 59679 widestText: 0 59680 }; 59681 }, 59682 computed: { 59683 isMobileView() { 59684 return this.isMobile || this.isBuilderMobile; 59685 }, 59686 mobileSettingsEnabled() { 59687 var _a; 59688 return !!((_a = this.state.settings.featureFlags) == null ? void 0 : _a.MobileSettings); 59689 }, 59690 titlePath() { 59691 var _a; 59692 return ((_a = this.settings) == null ? void 0 : _a.titles) ?? this.settings ?? {}; 59693 }, 59694 toggleButton() { 59695 var _a; 59696 return (_a = this.settings) == null ? void 0 : _a.button; 59697 }, 59698 toggleDesignation() { 59699 var _a; 59700 return (_a = this.settings) == null ? void 0 : _a.toggleDesignation; 59701 }, 59702 toggleImage() { 59703 var _a; 59704 return (_a = this.settings) == null ? void 0 : _a.toggleImage; 59705 }, 59706 imageHeight() { 59707 var _a; 59708 const height = (_a = this.settings) == null ? void 0 : _a.height; 59709 if (!height) return "auto"; 59710 return `${height}px`; 59711 }, 59712 imageWidth() { 59713 var _a; 59714 const width = (_a = this.settings) == null ? void 0 : _a.width; 59715 if (!width) return "100%"; 59716 return `${width}px`; 59717 }, 59718 toggleLicense() { 59719 var _a; 59720 return (_a = this.settings) == null ? void 0 : _a.toggleLicense; 59721 }, 59722 toggleName() { 59723 var _a; 59724 return (_a = this.settings) == null ? void 0 : _a.toggleName; 59725 }, 59726 toggleTitle() { 59727 return this.titlePath.toggleTitle; 59728 }, 59729 toggleTitle2() { 59730 return this.titlePath.toggleTitle2; 59731 }, 59732 toggleTitle3() { 59733 return this.titlePath.toggleTitle3; 59734 }, 59735 toggleTitle4() { 59736 return this.titlePath.toggleTitle4; 59737 }, 59738 noPhoto() { 59739 return !this.blockPhoto && !this.photoTop && !this.photoBackground; 59740 }, 59741 blockPhoto() { 59742 if (this.isMemberSelected) 59743 return this.memberSelected.headshotImageURL; 59744 return renderData(this.mediaMetadataPhoto, this.dataSite); 59745 }, 59746 mediaMetadataPhoto() { 59747 var _a; 59748 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.photo; 59749 return mediaSrc && typeof mediaSrc === "object" ? mediaSrc.src : mediaSrc; 59750 }, 59751 photoMedia() { 59752 var _a, _b, _c; 59753 if (this.isMemberSelected) 59754 return this.memberSelected.headshotImageURL; 59755 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.photo; 59756 const { crop, focal } = mediaSrc; 59757 if (crop || focal) { 59758 const mediaObject = { src: crop || {} }; 59759 if (focal) mediaObject.src.focal = focal; 59760 return mediaObject; 59761 } 59762 return { src: (_c = (_b = this.settings) == null ? void 0 : _b.mediaMetadata) == null ? void 0 : _c.photo }; 59763 }, 59764 blockLogo() { 59765 return this.mediaMetadataLogo || null; 59766 }, 59767 mediaMetadataLogo() { 59768 var _a; 59769 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.logo; 59770 return mediaSrc && typeof mediaSrc === "object" ? mediaSrc.src : mediaSrc; 59771 }, 59772 logoMedia() { 59773 var _a, _b, _c; 59774 const mediaSrc = (_a = this.settings) == null ? void 0 : _a.logo; 59775 const { crop, focal } = mediaSrc; 59776 if (crop || focal) { 59777 const mediaObject = { src: crop }; 59778 if (focal) mediaObject.src.focal = focal; 59779 return mediaObject; 59780 } 59781 return { src: (_c = (_b = this.settings) == null ? void 0 : _b.mediaMetadata) == null ? void 0 : _c.logo }; 59782 }, 59783 blockContactName() { 59784 var _a, _b, _c, _d, _e, _f; 59785 if (this.isMemberSelected) 59786 return ((_a = this.memberSelected) == null ? void 0 : _a.displayName) || `${(_b = this.memberSelected) == null ? void 0 : _b.firstName} ${(_c = this.memberSelected) == null ? void 0 : _c.lastName}`; 59787 const formattedContactName = formatName( 59788 this.settings.name, 59789 (_e = (_d = this.dataSite) == null ? void 0 : _d.user) == null ? void 0 : _e.ddcUserData 59790 ); 59791 return this.displayName || ((_f = renderData(formattedContactName, this.dataSite)) == null ? void 0 : _f.trim()) || ""; 59792 }, 59793 displayName() { 59794 var _a, _b, _c; 59795 return (_c = (_b = (_a = this.dataSite) == null ? void 0 : _a.user) == null ? void 0 : _b.ddcUserData) == null ? void 0 : _c.displayName; 59796 }, 59797 designationCharacters() { 59798 var _a; 59799 return (_a = this.blockContactDesignation) == null ? void 0 : _a.length; 59800 }, 59801 blockContactDesignation() { 59802 if (this.isMemberSelected) return ""; 59803 return renderData(this.settings.designation || "", this.dataSite); 59804 }, 59805 htmlFormattedDesignation() { 59806 const data = this.blockContactDesignation; 59807 if (!data) return; 59808 const tag = "sup"; 59809 const symbolClass = "block__name_designation-symbol"; 59810 const designationArray = data.split(",").map( 59811 (d, index2, arr) =>
59811 index2 < arr.length - 1 ? `<span>${d.trim()}, </span>` : `<span>${d.trim()}</span>` 59812 ); 59813 const designation = designationArray.join(""); 59814 const symbolRegex = /©|\u00A9|®|\u00AE|™|\u2122/gi; 59815 return " " + (designation == null ? void 0 : designation.replace( 59816 symbolRegex, 59817 `<${tag} class="${symbolClass}">$&</${tag}>` 59818 )); 59819 }, 59820 blockContactTitle() { 59821 if (this.isMemberSelected) return this.memberSelected.title; 59822 return renderData(this.titlePath.title, this.dataSite); 59823 }, 59824 blockContactTitle2() { 59825 if (this.isMemberSelected) return this.memberSelected.title2; 59826 return renderData(this.titlePath.title2, this.dataSite); 59827 }, 59828 blockContactTitle3() { 59829 if (this.isMemberSelected) return this.memberSelected.title3; 59830 return renderData(this.titlePath.title3, this.dataSite); 59831 }, 59832 blockContactTitle4() { 59833 if (this.isMemberSelected) return this.memberSelected.title4; 59834 return renderData(this.titlePath.title4, this.dataSite); 59835 }, 59836 blockContactDescription() { 59837 if (this.isMemberSelected) return ""; 59838 return this.settings.description; 59839 }, 59840 blockContactLandline() { 59841 var _a, _b; 59842 if (!((_a = this.settings) == null ? void 0 : _a["landline-show"])) return ""; 59843 if (this.isMemberSelected) 59844 return formatPhoneNumber(this.memberSelected.phoneNumber); 59845 const phoneNumber = getNumbersOnlyFromPhoneFormat( 59846 renderData(this.settings.landline, this.dataSite) 59847 ); 59848 if (!phoneNumber) return ""; 59849 const extension = renderData( 59850 this.settings.extension, 59851 this.dataSite 59852 ); 59853 const value = `${(_b = formatPhoneNumber(phoneNumber)) == null ? void 0 : _b.replace( 59854 " ext. ", 59855 "" 59856 )}${extension ? ` ext. ${extension}` : ""}`; 59857 return value; 59858 }, 59859 blockContactLandlineLabel() { 59860 if (this.isMemberSelected) return ""; 59861 if (this.settings.landlineLabel) { 59862 return this.addEndColon( 59863 renderData(this.settings.landlineLabel, this.dataSite) 59864 ); 59865 } 59866 return false; 59867 }, 59868 blockContactAltPhone1() { 59869 var _a, _b; 59870 if (!((_a = this.settings) == null ? void 0 : _a["alt_phone_1-show"])) return ""; 59871 const phoneNumber = getNumbersOnlyFromPhoneFormat( 59872 renderData(this.settings.alt_phone_1, this.dataSite) 59873 ); 59874 if (!phoneNumber) return ""; 59875 const extension = renderData( 59876 this.settings.extension_alt_phone_1, 59877 this.dataSite 59878 ); 59879 const value = `${(_b = formatPhoneNumber(phoneNumber)) == null ? void 0 : _b.replace( 59880 " ext. ", 59881 "" 59882 )}${extension ? ` ext. ${extension}` : ""}`; 59883 return value; 59884 }, 59885 blockContactAltPhone1Label() { 59886 if (this.settings.alt_phone_1Label) { 59887 return this.addEndColon( 59888 renderData(this.settings.alt_phone_1Label, this.dataSite) 59889 ); 59890 } 59891 return false; 59892 }, 59893 blockContactAltPhone2Label() { 59894 if (this.settings.alt_phone_2Label) { 59895 return this.addEndColon( 59896 renderData(this.settings.alt_phone_2Label, this.dataSite) 59897 ); 59898 } 59899 return false; 59900 }, 59901 blockContactAltPhone2() { 59902 var _a, _b; 59903 if (!((_a = this.settings) == null ? void 0 : _a["alt_phone_2-show"])) return ""; 59904 if (this.isMemberSelected) return ""; 59905 const phoneNumber = getNumbersOnlyFromPhoneFormat( 59906 renderData(this.settings.alt_phone_2, this.dataSite) 59907 ); 59908 if (!phoneNumber) return ""; 59909 const extension = renderData( 59910 this.settings.extension_alt_phone_2, 59911 this.dataSite 59912 ); 59913 const value = `${(_b = formatPhoneNumber(phoneNumber)) == null ? void 0 : _b.replace( 59914 " ext. ", 59915 "" 59916 )}${extension ? ` ext. ${extension}` : ""}`; 59917 return value; 59918 }, 59919 blockContactMobile() { 59920 var _a; 59921 if (!((_a = this.settings) == null ? void 0 : _a["mobile-show"])) return ""; 59922 if (this.isMemberSelected) return ""; 59923 const phoneNumber = getNumbersOnlyFromPhoneFormat( 59924 renderData(this.settings.mobile, this.dataSite) 59925 ); 59926 return formatPhoneNumber(phoneNumber); 59927 }, 59928 blockContactFax() { 59929 var _a; 59930 if (!((_a = this.settings) == null ? void 0 : _a["fax-show"])) return ""; 59931 if (this.isMemberSelected) return ""; 59932 const phoneNumber = getNumbersOnlyFromPhoneFormat( 59933 renderData(this.settings.fax, this.dataSite) 59934 ); 59935 return formatPhoneNumber(phoneNumber); 59936 }, 59937 blockContactEmail() { 59938 var _a; 59939 if (!((_a = this.settings) == null ? void 0 : _a["email-show"])) return ""; 59940 if (this.isMemberSelected) return this.memberSelected.emailAddress; 59941 return renderData(this.settings.email, this.dataSite); 59942 }, 59943 hasAddressSection() { 59944 var _a; 59945 if (!((_a = this.settings) == null ? void 0 : _a["address-show"])) return false;
59946 return !!(this.blockContactAddressLine1 || this.blockContactAddressCity || this.blockContactAddressState || this.blockContactAddressZip); 59947 }, 59948 hasAddress2Section() { 59949 var _a; 59950 if (!((_a = this.settings) == null ? void 0 : _a["address2-show"])) return false; 59951 return !!(this.blockContactAddress2Line1 || this.blockContactAddress2City || this.blockContactAddress2Zip); 59952 }, 59953 blockContactAddressLine1() { 59954 var _a; 59955 if (this.isMemberSelected) return this.memberSelected.address; 59956 return renderData((_a = this.settings.address) == null ? void 0 : _a.line1, this.dataSite); 59957 }, 59958 blockContactAddressLine2() { 59959 var _a; 59960 if (this.isMemberSelected) return ""; 59961 return renderData((_a = this.settings.address) == null ? void 0 : _a.line2, this.dataSite); 59962 }, 59963 blockContactAddressCity() { 59964 var _a; 59965 if (this.isMemberSelected) return this.memberSelected.city; 59966 return renderData((_a = this.settings.address) == null ? void 0 : _a.city, this.dataSite); 59967 }, 59968 blockContactAddressState() { 59969 var _a; 59970 if (this.isMemberSelected) return this.memberSelected.state; 59971 return renderData((_a = this.settings.address) == null ? void 0 : _a.state, this.dataSite); 59972 }, 59973 blockContactAddressZip() { 59974 var _a; 59975 if (this.isMemberSelected) return this.memberSelected.postalCode; 59976 return this.renderValue( 59977 (_a = this.settings.address) == null ? void 0 : _a.zip, 59978 null, 59979 "busLocAddrZipCodeExt" 59980 ); 59981 }, 59982 blockContactAddress2Line1() { 59983 var _a; 59984 if (this.isMemberSelected) return this.memberSelected.address2; 59985 return renderData((_a = this.settings.address2) == null ? void 0 : _a.line1, this.dataSite); 59986 }, 59987 blockContactAddress2Line2() { 59988 var _a; 59989 if (this.isMemberSelected) return ""; 59990 return renderData((_a = this.settings.address2) == null ? void 0 : _a.line2, this.dataSite); 59991 }, 59992 blockContactAddress2City() { 59993 var _a; 59994 if (this.isMemberSelected) return ""; 59995 return renderData((_a = this.settings.address2) == null ? void 0 : _a.city, this.dataSite); 59996 }, 59997 blockContactAddress2State() { 59998 var _a; 59999 if (this.isMemberSelected) return ""; 60000 return renderData((_a = this.settings.address2) == null ? void 0 : _a.state, this.dataSite); 60001 }, 60002 blockContactAddress2Zip() { 60003 var _a; 60004 if (this.isMemberSelected) return ""; 60005 return this.renderValue( 60006 (_a = this.settings.address2) == null ? void 0 : _a.zip, 60007 null, 60008 "busLocAddrZipCodeExt2" 60009 ); 60010 }, 60011 buttonSettings() { 60012 var _a; 60013 return { 60014 type: "button", 60015 icon: this.settings.buttonIcon, 60016 label: this.settings.buttonLabel, 60017 newWindow: this.settings.newWindow || false, 60018 url: this.settings.buttonUrl, 60019 variants: { 60020 "icon-placement": this.settings.buttonIconPlacement || "icon-right", 60021 style: ((_a = this.settings) == null ? void 0 : _a.variants["buttonStyle"]) || "primary" 60022 } 60023 }; 60024 }, 60025 socialLinksSettings() { 60026 return { 60027 type: "social-links", 60028 facebook: this.blockFacebook, 60029 instagram: this.blockInstagram, 60030 linkedin: this.blockLinkedin, 60031 twitter: this.blockTwitter, 60032 youtube: this.blockYoutube 60033 }; 60034 }, 60035 cleanAddress() { 60036 return `http://maps.google.com/?q=` + encodeURIComponent( 60037 `${this.blockContactAddressLine1} ${this.blockContactAddressLine2} ${this.blockContactAddressCity} ${this.blockContactAddressState} ${this.blockContactAddressZip}` 60038 ); 60039 }, 60040 cleanAddress2() { 60041 return `http://maps.google.com/?q=` + encodeURIComponent( 60042 `${this.blockContactAddress2Line1} ${this.blockContactAddress2Line2} ${this.blockContactAddress2City} ${this.blockContactAddress2State} ${this.blockContactAddress2Zip}` 60043 ); 60044 }, 60045 blockFacebook() { 60046 var _a; 60047 if (!((_a = this.settings) == null ? void 0 : _a["facebook-show"])) return ""; 60048 if (this.isMemberSelected) return this.memberSelected.facebookUrl; 60049 return renderData(this.settings.facebook, this.dataSite); 60050 }, 60051 blockLinkedin() { 60052 var _a; 60053 if (!((_a = this.settings) == null ? void 0 : _a["linkedin-show"])) return ""; 60054 if (this.isMemberSelected) return this.memberSelected.linkedInUrl; 60055 return renderData(this.settings.linkedin, this.dataSite); 60056 }, 60057 blockInstagram() { 60058 var _a; 60059 if (!((_a = this.settings) == null ? void 0 : _a["instagram-show"])) return ""; 60060 if (this.isMemberSelected) return ""; 60061 return renderData(this.settings.instagram, this.dataSite); 60062 }, 60063 blockTwitter() { 60064 var _a; 60065 if (!((_a = this.settings) == null ? void 0 : _a["twitter-show"])) return ""; 60066 if (this.isMemberSelected) return this.memberSelected.twitterUrl; 60067 return renderData(this.settings.twitter, this.dataSite); 60068 }, 60069 blockYoutube() { 60070 if (this.isMemberSelected) return ""; 60071 return this.settings.youtube || null; 60072 }, 60073 photoPlacement() { 60074 var _a; 60075 if (this.isMobileView && this.mobileSettingsEnabled && this.imagePlacementMobile) { 60076 return this.imagePlacementMobile === "image-bottom" ? "bottom" : "top"; 60077 } 60078 return ((_a = this.settings) == null ? void 0 : _a.variants["photo-placement"]) || "top"; 60079 }, 60080 hideProfileImageOnMobile() { 60081 var _a; 60082 return this.mobileSettingsEnabled && this.isMobileView && !!((_a = this.settings) == null ? void 0 : _a.hideProfileImageOnMobile); 60083 }, 60084 imagePlacementMobile() { 60085 var _a; 60086 return ((_a = this.settings) == null ? void 0 : _a.imagePlacementMobile) || "image-top"; 60087 }, 60088 mobileSettingsClasses() { 60089 if (!this.mobileSettingsEnabled) { 60090 return []; 60091 } 60092 const classes = []; 60093 if (this.isMobileView) { 60094 if (this.hideProfileImageOnMobile) { 60095 classes.push( 60096 "block_contact-card_hide-profile-image-mobile" 60097 ); 60098 } 60099 const placement = this.imagePlacementMobile; 60100 if (placement === "image-bottom") { 60101 classes.push("block_contact-card_image-bottom"); 60102 } else if (placement === "image-top") { 60103 classes.push("block_contact-card_image-top"); 60104 } 60105 } 60106 return classes; 60107 },
60108 alignContent() { 60109 var _a; 60110 return ((_a = this.settings) == null ? void 0 : _a.variants["align-content"]) || "align-center"; 60111 }, 60112 photoBackground() { 60113 return ["background"].includes(this.photoPlacement); 60114 }, 60115 photoTop() { 60116 return ["top"].includes(this.photoPlacement); 60117 }, 60118 photoSides() { 60119 return !(this.photoTop || this.photoBackground || this.noPhoto); 60120 }, 60121 hasSocialIcons() { 60122 return this.blockFacebook || this.blockInstagram || this.blockLinkedin || this.blockTwitter || this.blockYoutube; 60123 }, 60124 memberSelected() { 60125 var _a, _b; 60126 return (_b = (_a = this.dataSite) == null ? void 0 : _a.teamMembers) == null ? void 0 : _b.find( 60127 (t) => this.settings["team-member"] !== -1 && t.id === this.settings["team-member"] 60128 ); 60129 }, 60130 isMemberSelected() { 60131 return !!this.memberSelected; 60132 } 60133 }, 60134 methods: { 60135 renderValue(value, fallback, extensionKey) { 60136 var _a, _b, _c, _d; 60137 if (this.isMemberSelected) { 60138 const renderedData = renderData(value, this.memberSelected); 60139 if (!renderedData && fallback) { 60140 return (_a = this.memberSelected) == null ? void 0 : _a[fallback]; 60141 } 60142 return renderedData; 60143 } 60144 const rendered = renderData(value, this.dataSite); 60145 const extension = extensionKey && ["{{", "}}"].every((c2) => value == null ? void 0 : value.includes(c2)) && ((_d = (_c = (_b = this.dataSite) == null ? void 0 : _b.user) == null ? void 0 : _c.ddcUserData) == null ? void 0 : _d[extensionKey]); 60146 return extension ? `${rendered}-${extension}` : rendered; 60147 }, 60148 clickToCall(phoneNumber, extension) { 60149 const cleanPhoneNumber = phoneNumber && phoneNumber.replace(/[^0-9+]/g, ""); 60150 const cleanExtension = extension && extension.replace(/[^0-9+]/g, ""); 60151 if (cleanExtension) 60152 return `tel:${cleanPhoneNumber};${cleanExtension}`; 60153 return `tel:${cleanPhoneNumber}`; 60154 }, 60155 addEndColon(str) { 60156 return str ? `${str}: ` : str; 60157 } 60158 } 60159}; 60160const _hoisted_1$1 = { 60161 key: 0, 60162 class: "block__section_photo" 60163}; 60164const _hoisted_2$1 = { 60165 key: 0, 60166 class: "block__icon_group" 60167}; 60168const _hoisted_3$1 = { class: "contactAgentContainer" }; 60169const _hoisted_4$1 = { class: "contactNameContainer" }; 60170const _hoisted_5$1 = ["innerHTML"]; 60171const _hoisted_6$1 = { class: "contactInfoContainer" }; 60172const _hoisted_7$1 = { 60173 key: 0, 60174 class: "block__section_info_contact" 60175}; 60176const _hoisted_8$1 = ["innerHTML"]; 60177const _hoisted_9$1 = ["title", "href"]; 60178const _hoisted_10$1 = { 60179 key: 1, 60180 class: "block__section_info_contact" 60181}; 60182const _hoisted_11$1 = ["innerHTML"]; 60183const _hoisted_12$1 = ["title", "href"]; 60184const _hoisted_13$1 = { 60185 key: 2, 60186 class: "block__section_info_contact" 60187}; 60188const _hoisted_14$1 = ["innerHTML"]; 60189const _hoisted_15$1 = ["title", "href"]; 60190const _hoisted_16$1 = { 60191 key: 3, 60192 class: "block__section_info_contact" 60193}; 60194const _hoisted_17$1 = ["title", "href"]; 60195const _hoisted_18$1 = { 60196 key: 4, 60197 class: "block__section_info_contact" 60198}; 60199const _hoisted_19$1 = ["title"]; 60200const _hoisted_20$1 = { 60201 key: 5, 60202 class: "block__section_info_contact" 60203}; 60204const _hoisted_21 = ["href", "title"]; 60205const _hoisted_22 = { 60206 key: 6, 60207 class: "block__section_info_contact" 60208}; 60209const _hoisted_23 = { class: "block__section_info_address" }; 60210const _hoisted_24 = ["href"]; 60211const _hoisted_25 = ["title"]; 60212const _hoisted_26 = ["title"]; 60213const _hoisted_27 = ["title"]; 60214const _hoisted_28 = { 60215 key: 7, 60216 class: "block__section_info_contact" 60217}; 60218const _hoisted_29 = { class: "block__section_info_address" }; 60219const _hoisted_30 = ["href"]; 60220const _hoisted_31 = ["title"]; 60221const _hoisted_32 = ["title"]; 60222const _hoisted_33 = ["title"]; 60223const _hoisted_34 = { 60224 key: 8, 60225 class: "block__button_container" 60226}; 60227const _hoisted_35 = { 60228 key: 0, 60229 class: "block__icon_container block__icon_group" 60230}; 60231const _hoisted_36 = { 60232 key: 1, 60233 class: "block__button_container" 60234}; 60235function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) { 60236 const _component_CoreBlock = _sfc_main$4x; 60237 const _component_CoreIcon = __nuxt_component_1$7; 60238 return openBlock(), createElementBlock("div", { 60239 class: normalizeClass(["block__body", $options.mobileSettingsClasses]) 60240 }, [
60241 $options.blockPhoto && !$options.photoBackground ? (openBlock(), createElementBlock("div", _hoisted_1$1, [ 60242 withDirectives(createVNode(_component_CoreBlock, { 60243 "is-editable": $props.isEditable, 60244 settings: { 60245 alt: `Headshot of ${$options.blockContactName}`, 60246 height: $options.imageHeight, 60247 src: $options.blockPhoto, 60248 type: "image", 60249 width: $options.imageWidth, 60250 mediaMetadata: $options.photoMedia 60251 } 60252 }, null, 8, ["is-editable", "settings"]), [ 60253 [vShow, $options.toggleImage && !$options.hideProfileImageOnMobile] 60254 ]), 60255 !$options.photoTop && $options.hasSocialIcons ? (openBlock(), createElementBlock("div", _hoisted_2$1, [ 60256 createVNode(_component_CoreBlock, { 60257 "is-editable": $props.isEditable, 60258 settings: $options.socialLinksSettings 60259 }, null, 8, ["is-editable", "settings"]) 60260 ])) : createCommentVNode("", true) 60261 ])) : createCommentVNode("", true), 60262 createBaseVNode("div", { 60263 class: normalizeClass(["block__section_info", { "photo-background": $options.photoBackground }]), 60264 style: normalizeStyle([ 60265 $options.photoBackground ? { 60266 "background-image": `url('${$options.blockPhoto}')`, 60267 "background-position": "center", 60268 "background-repeat": "no-repeat" 60269 } : "" 60270 ]) 60271 }, [ 60272 $options.blockLogo && !$options.photoBackground ? (openBlock(), createBlock(_component_CoreBlock, { 60273 key: 0, 60274 "is-editable": $props.isEditable, 60275 settings: { 60276 alt: "Logo", 60277 height: "auto", 60278 src: $options.blockLogo, 60279 type: "image", 60280 width: "350px", 60281 mediaMetadata: $options.logoMedia 60282 } 60283 }, null, 8, ["is-editable", "settings"])) : createCommentVNode("", true), 60284 createBaseVNode("div", _hoisted_3$1, [ 60285 createBaseVNode("div", _hoisted_4$1, [ 60286 createBaseVNode("div", { 60287 class: normalizeClass([ 60288 { block__name: $options.toggleDesignation }, 60289 "block__designation_name_group" 60290 ]) 60291 }, [ 60292 withDirectives(createVNode(_component_CoreBlock, { 60293 "is-editable": $props.isEditable, 60294 class: normalizeClass( 60295 $options.designationCharacters > 25 ? "designations-long" : "designations-short" 60296 ), 60297 settings: { 60298 type: "text", 60299 text: `${$options.blockContactName.replace( 60300 /^\s+|\s+$/g, 60301 `` 60302 )}${$options.toggleDesignation && $options.toggleName && $options.blockContactDesignation ? `,` : ``}`, 60303 tag: "h6", 60304 variants: { 60305 size: "text", 60306 class: "contact-name" 60307 } 60308 } 60309 }, null, 8, ["is-editable", "class", "settings"]), [ 60310 [vShow, $options.toggleName] 60311 ]), 60312 withDirectives(createBaseVNode("span", { 60313 class: normalizeClass(`block__name_designation block__name_designation_h6`), 60314 innerHTML: $options.htmlFormattedDesignation 60315 }, null, 8, _hoisted_5$1), [ 60316 [vShow, $options.toggleDesignation && $options.toggleName] 60317 ]) 60318 ], 2) 60319 ]), 60320 withDirectives(createVNode(_component_CoreBlock, { 60321 "is-editable": $props.isEditable, 60322 settings: { 60323 type: "text", 60324 text: $options.blockContactTitle, 60325 tag: "h6", 60326 variants: { 60327 size: "text", 60328 class: "contact-title" 60329 } 60330 } 60331 }, null, 8, ["is-editable", "settings"]), [ 60332 [vShow, $options.toggleName && $options.toggleTitle] 60333 ]), 60334 withDirectives(createVNode(_component_CoreBlock, { 60335 "is-editable": $props.isEditable, 60336 settings: { 60337 type: "text", 60338 text: $options.blockContactTitle2, 60339 tag: "h6", 60340 variants: { 60341 size: "text", 60342 class: "contact-title" 60343 } 60344 } 60345 }, null, 8, ["is-editable", "settings"]), [ 60346 [vShow, $options.toggleName && $options.toggleTitle2] 60347 ]), 60348 withDirectives(createVNode(_component_CoreBlock, { 60349 "is-editable": $props.isEditable, 60350 settings: { 60351 type: "text", 60352 text: $options.blockContactTitle3, 60353 tag: "h6", 60354 variants: { 60355 size: "text", 60356 class: "contact-title" 60357 } 60358 } 60359 }, null, 8, ["is-editable", "settings"]), [ 60360 [vShow, $options.toggleName && $options.toggleTitle3] 60361 ]), 60362 withDirectives(createVNode(_component_CoreBlock, { 60363 "is-editable": $props.isEditable, 60364 settings: { 60365 type: "text", 60366 text: $options.blockContactTitle4, 60367 tag: "h6", 60368 variants: { 60369 size: "text", 60370 class: "contact-title" 60371 } 60372 } 60373 }, null, 8, ["is-editable", "settings"]), [ 60374 [vShow, $options.toggleName && $options.toggleTitle4] 60375 ]), 60376 $options.blockContactDescription ? (openBlock(), createBlock(_component_CoreBlock, { 60377 key: 0, 60378 "is-editable": $props.isEditable, 60379 settings: { 60380 type: "text", 60381 tag: "p", 60382 text: $options.blockContactDescription, 60383 variants: { 60384 class: "contact-description", 60385 align: $options.alignContent 60386 } 60387 } 60388 }, null, 8, ["is-editable", "settings"])) : createCommentVNode("", true) 60389 ]), 60390 createBaseVNode("div", _hoisted_6$1, [ 60391 $options.blockContactLandline ? (openBlock(), createElementBlock("div", _hoisted_7$1, [ 60392 createVNode(_component_CoreIcon, { 60393 icon: "phone", 60394 class: "icon", 60395 settings: { ["aria-label"]: $options.blockContactLandline } 60396 }, null, 8, ["settings"]), 60397 $options.blockContactLandlineLabel ? (openBlock(), createElementBlock("span", { 60398 key: 0, 60399 innerHTML: $options.blockContactLandlineLabel 60400 }, null, 8, _hoisted_8$1)) : createCommentVNode("", true), 60401 createBaseVNode("a", { 60402 title: $options.blockContactLandline, 60403 href: $options.clickToCall( 60404 $options.renderValue($props.settings.landline), 60405 $options.renderValue($props.settings.extension) 60406 ) 60407 }, toDisplayString($options.blockContactLandline), 9, _hoisted_9$1) 60408 ])) : createCommentVNode("", true), 60409 $options.blockContactAltPhone1 ? (openBlock(), createElementBlock("div", _hoisted_10$1, [ 60410 createVNode(_component_CoreIcon, { 60411 icon: "phone", 60412 class: "icon", 60413 settings: { ["aria-label"]: $options.blockContactAltPhone1 } 60414 }, null, 8, ["settings"]), 60415 $options.blockContactAltPhone1Label ? (openBlock(), createElementBlock("span", { 60416 key: 0, 60417 innerHTML: $options.blockContactAltPhone1Label 60418 }, null, 8, _hoisted_11$1)) : createCommentVNode("", true), 60419 createBaseVNode("a", { 60420 title: $options.blockContactAltPhone1, 60421 href: $options.clickToCall( 60422 $options.renderValue($props.settings.alt_phone_1), 60423 $options.renderValue($props.settings.extension_alt_phone_1) 60424 ) 60425 }, toDisplayString($options.blockContactAltPhone1), 9, _hoisted_12$1) 60426 ])) : createCommentVNode("", true), 60427 $options.blockContactAltPhone2 ? (openBlock(), createElementBlock("div", _hoisted_13$1, [ 60428 createVNode(_component_CoreIcon, { 60429 icon: "phone", 60430 class: "icon", 60431 settings: { ["aria-label"]: $options.blockContactAltPhone2 } 60432 }, null, 8, ["settings"]), 60433 $options.blockContactAltPhone2Label ? (openBlock(), createElementBlock("span", { 60434 key: 0, 60435 innerHTML: $options.blockContactAltPhone2Label 60436 }, null, 8, _hoisted_14$1)) : createCommentVNode("", true), 60437 createBaseVNode("a", { 60438 title: $options.blockContactAltPhone2, 60439 href: $options.clickToCall( 60440 $options.renderValue($props.settings.alt_phone_2), 60441 $options.renderValue($props.settings.extension_alt_phone_2) 60442 ) 60443 }, toDisplayString($options.blockContactAltPhone2), 9, _hoisted_15$1) 60444 ])) : createCommentVNode("", true), 60445 $options.blockContactMobile ? (openBlock(), createElementBlock("div", _hoisted_16$1, [ 60446 createVNode(_component_CoreIcon, { 60447 icon: "mobile-phone", 60448 class: "icon", 60449 settings: { ["aria-label"]: $options.blockContactMobile } 60450 }, null, 8, ["settings"]), 60451 createBaseVNode("a", { 60452 title: $options.blockContactMobile, 60453 href: $options.clickToCall($options.renderValue($props.settings.mobile)) 60454 }, toDisplayString($options.blockContactMobile), 9, _hoisted_17$1) 60455 ])) : createCommentVNode("", true), 60456 $options.blockContactFax ? (openBlock(), createElementBlock("div", _hoisted_18$1, [ 60457 createVNode(_component_CoreIcon, { 60458 icon: "fax", 60459 class: "icon", 60460 settings: { ["aria-label"]: $options.blockContactFax } 60461 }, null, 8, ["settings"]), 60462 createBaseVNode("p", { 60463 class: "fax", 60464 title: $options.blockContactFax 60465 }, toDisplayString($options.blockContactFax), 9, _hoisted_19$1) 60466 ])) : createCommentVNode("", true), 60467 $options.blockContactEmail ? (openBlock(), createElementBlock("div", _hoisted_20$1, [ 60468 createVNode(_component_CoreIcon, { 60469 icon: "email", 60470 class: "icon", 60471 settings: { ["aria-label"]: $options.blockContactEmail } 60472 }, null, 8, ["settings"]), 60473 createBaseVNode("a", { 60474 href: `mailto:${$options.blockContactEmail}`, 60475 class: "email", 60476 title: $options.blockContactEmail 60477 }, toDisplayString($options.blockContactEmail), 9, _hoisted_21) 60478 ])) : createCommentVNode("", true), 60479 $options.hasAddressSection ? (openBlock(), createElementBlock("div", _hoisted_22, [ 60480 createVNode(_component_CoreIcon, { 60481 icon: "map-pin", 60482 class: "icon" 60483 }), 60484 createBaseVNode("div", _hoisted_23, [ 60485 createBaseVNode("a", { 60486 href: $options.cleanAddress, 60487 target: "_blank" 60488 }, [ 60489 createBaseVNode("p", { title: $options.blockContactAddressLine1 }, toDisplayString($options.blockContactAddressLine1), 9, _hoisted_25), 60490 $options.blockContactAddressLine2 ? (openBlock(), createElementBlock("p", { 60491 key: 0, 60492 title: $options.blockContactAddressLine2 60493 }, toDisplayString($options.blockContactAddressLine2), 9, _hoisted_26)) : createCommentVNode("", true), 60494 createBaseVNode("p", { 60495 title: `${$options.blockContactAddressCity}${$options.blockContactAddressState}${$options.blockContactAddressZip}` 60496 }, toDisplayString($options.blockContactAddressCity) + ", " + toDisplayString($options.blockContactAddressState) + " " + toDisplayString($options.blockContactAddressZip), 9, _hoisted_27) 60497 ], 8, _hoisted_24) 60498 ]) 60499 ])) : createCommentVNode("", true), 60500 $options.hasAddress2Section ? (openBlock(), createElementBlock("div", _hoisted_28, [ 60501 createVNode(_component_CoreIcon, { 60502 icon: "map-pin", 60503 class: "icon" 60504 }), 60505 createBaseVNode("div", _hoisted_29, [ 60506 createBaseVNode("a", { 60507 href: $options.cleanAddress2, 60508 target: "_blank" 60509 }, [ 60510 createBaseVNode("p", { title: $options.blockContactAddress2Line1 }, toDisplayString($options.blockContactAddress2Line1), 9, _hoisted_31), 60511 $options.blockContactAddress2Line2 ? (openBlock(), createElementBlock("p", { 60512 key: 0, 60513 title: $options.blockContactAddress2Line2 60514 }, toDisplayString($options.blockContactAddress2Line2), 9, _hoisted_32)) : createCommentVNode("", true), 60515 createBaseVNode("p", { 60516 title: `${$options.blockContactAddress2City}${$options.blockContactAddress2State}${$options.blockContactAddress2Zip}` 60517 }, toDisplayString($options.blockContactAddress2City) + " " + toDisplayString($options.blockContactAddress2State) + " " + toDisplayString($options.blockContactAddress2Zip), 9, _hoisted_33) 60518 ], 8, _hoisted_30) 60519 ]) 60520 ])) : createCommentVNode("", true), 60521 $options.toggleButton && $options.photoSides ? (openBlock(), createElementBlock("div", _hoisted_34, [ 60522 createVNode(_component_CoreBlock, mergeProps({ "is-editable": $props.isEditable }, $setup.inlineButton("buttonLabel"), { settings: $options.buttonSettings }), { 60523 "inline-editor": withCtx((slotProps) => [ 60524 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps({ 60525 ...slotProps, 60526 onClose: $setup.closeField 60527 }))) 60528 ]), 60529 _: 3 60530 }, 16, ["is-editable", "settings"]) 60531 ])) : createCommentVNode("", true) 60532 ]), 60533 !$options.photoSides ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [ 60534 $options.hasSocialIcons ? (openBlock(), createElementBlock("div", _hoisted_35, [ 60535 createVNode(_component_CoreBlock, { 60536 "is-editable": $props.isEditable, 60537 settings: { 60538 ...$options.socialLinksSettings, 60539 variants: { 60540 style: "slim", 60541 align: $options.alignContent 60542 } 60543 } 60544 }, null, 8, ["is-editable", "settings"]) 60545 ])) : createCommentVNode("", true), 60546 $options.toggleButton ? (openBlock(), createElementBlock("div", _hoisted_36, [ 60547 createVNode(_component_CoreBlock, mergeProps({ "is-editable": $props.isEditable }, $setup.inlineButton("buttonLabel"), { settings: $options.buttonSettings }), { 60548 "inline-editor": withCtx((slotProps) => [ 60549 renderSlot(_ctx.$slots, "inline-editor", normalizeProps$1(guardReactiveProps({ 60550 ...slotProps, 60551 onClose: $setup.closeField 60552 }))) 60553 ]), 60554 _: 3 60555 }, 16, ["is-editable", "settings"]) 60556 ])) : createCommentVNode("", true) 60557 ], 64)) : createCommentVNode("", true) 60558 ], 6) 60559 ], 2); 60560} 60561const CoreBlockContactCard = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render$1]]); 60562const CoreBlockContactCard$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 60563 __proto__: null, 60564 default: CoreBlockContactCard 60565}, Symbol.toStringTag, { value: "Module" })); 60566var define_process_env_default = {};
60567const _sfc_main = { 60568 directives: { 60569 maska: k2 60570 }, 60571 components: { 60572 Form, 60573 Field 60574 }, 60575 props: { 60576 settings: { 60577 type: Object, 60578 required: true 60579 }, 60580 dataSite: { 60581 type: Object, 60582 default: () => { 60583 } 60584 }, 60585 isEditable: { 60586 type: Boolean, 60587 default: false 60588 } 60589 }, 60590 setup(props) { 60591 provide(SCROLL_ANIMATION_EXCLUDED_KEY, true); 60592 const config = /* @__PURE__ */ useRuntimeConfig(); 60593 veeValidateRules(); 60594 const root2 = useRoot(); 60595 const { 60596 isReady: recaptchaReady, 60597 handleRecaptcha, 60598 error: recaptchaError 60599 } = useRecaptcha(); 60600 const formValidationId = ref(null); 60601 const formBlockRef = ref(null); 60602 const form = ref({ 60603 firstName: null, 60604 lastName: null, 60605 emailAddress: null, 60606 phoneNumber: null 60607 }); 60608 const status = ref(null); 60609 const baseURL2 = define_process_env_default.NUXT_ENV_API_BASE_URL || config.public.apiBaseUrl || "https://localhost:7283/api"; 60610 const formType = computed(() => props.settings.formType); 60611 const isPhoneRequired2 = computed(() => !form.value.emailAddress); 60612 const isEmailRequired2 = computed(() => !form.value.phoneNumber); 60613 const onSuccessMessage = computed( 60614 () =>
60614 "Thank you for reaching out. A member of our team will contact you soon." 60615 ); 60616 const statusAnnouncement = () => { 60617 if (status.value === "pending") { 60618 return "Submitting form, one moment..."; 60619 } 60620 if (status.value === "success") { 60621 return onSuccessMessage.value; 60622 } 60623 if (status.value === "fail") { 60624 return "There was problem submitting your form."; 60625 } 60626 return ""; 60627 }; 60628 const generateId = (length = 4, otherIds = []) => { 60629 let flag = true; 60630 while (flag) { 60631 const letters = "bcdfghjkmnpqrstvwxyz"; 60632 const characters = letters + "23456789"; 60633 let id = letters[Math.floor(Math.random() * letters.length)]; 60634 for (let i = 1; i < length; i++) { 60635 id += characters[Math.floor(Math.random() * characters.length)]; 60636 } 60637 if (otherIds.includes(id)) { 60638 continue; 60639 } 60640 flag = false; 60641 return id; 60642 } 60643 }; 60644 const scrollFormToTop = () => { 60645 var _a; 60646 if (typeof window === "undefined") { 60647 return; 60648 } 60649 (_a = formBlockRef.value) == null ? void 0 : _a.scrollIntoView({ 60650 behavior: "smooth", 60651 block: "start", 60652 inline: "start" 60653 }); 60654 }; 60655 const submit = async () => { 60656 const validResult = await root2.$refs.observer.validate(); 60657 if (validResult.valid) { 60658 GTMForm(); 60659 const { success, error: recaptchaError2 } = await handleRecaptcha("form"); 60660 const isFormSubmitable = success || recaptchaError2; 60661 if (isFormSubmitable) { 60662 scrollFormToTop(); 60663 status.value = "pending"; 60664 try { 60665 const payload = { 60666 ...form.value, 60667 siteId: props == null ? void 0 : props.dataSite.id, 60668 formType: formType.value, 60669 referrer: document.referrer 60670 }; 60671 if (payload.phoneNumber) 60672 payload.phoneNumber = payload.phoneNumber.match(/\d+/g).join(""); 60673 const response = await axios.post( 60674 `${baseURL2}/leads/submit`, 60675 payload 60676 ); 60677 if (response.status === 200) { 60678 status.value = "success"; 60679 } else { 60680 status.value = "fail"; 60681 } 60682 } catch { 60683 status.value = "fail"; 60684 } 60685 } else if (success === false) { 60686 console.log( 60687 "Form is not submitable, recaptcha not successful" 60688 ); 60689 } 60690 } 60691 }; 60692 const preventAngleBracket = (event) => { 60693 if (/<|>/gi.test(event.key)) { 60694 event.preventDefault(); 60695 } 60696 }; 60697 const GTMForm = () => { 60698 var _a; 60699 root2.$gtm.push({ 60700 event: "form", 60701 lead_form: formType.value, 60702 lead_form_long: ((_a = props.dataSite) == null ? void 0 : _a.user.displayName) || "" 60703 }); 60704 }; 60705 return { 60706 formBlockRef, 60707 formValidationId, 60708 form, 60709 status, 60710 baseURL: baseURL2, 60711 formType, 60712 isPhoneRequired: isPhoneRequired2, 60713 isEmailRequired: isEmailRequired2, 60714 onSuccessMessage, 60715 statusAnnouncement, 60716 generateId, 60717 scrollFormToTop, 60718 submit, 60719 preventAngleBracket, 60720 GTMForm, 60721 recaptchaReady, 60722 handleRecaptcha, 60723 recaptchaError 60724 }; 60725 } 60726}; 60727const _hoisted_1 = { 60728 ref: "formBlockRef", 60729 class: "block__body" 60730}; 60731const _hoisted_2 = { class: "container" }; 60732const _hoisted_3 = ["aria-live", "role"]; 60733const _hoisted_4 = { 60734 key: 0, 60735 class: "form--pending" 60736}; 60737const _hoisted_5 = { 60738 key: 1, 60739 class: "form_success" 60740}; 60741const _hoisted_6 = { 60742 key: 2, 60743 class: "form--fail" 60744}; 60745const _hoisted_7 = { 60746 key: 3, 60747 class: "form" 60748}; 60749const _hoisted_8 = ["onSubmit"]; 60750const _hoisted_9 = { class: "row" }; 60751const _hoisted_10 = ["aria-invalid"]; 60752const _hoisted_11 = { 60753 key: 0, 60754 id: "error-first-name", 60755 class: "text-error", 60756 "aria-live": "assertive" 60757}; 60758const _hoisted_12 = ["aria-invalid"]; 60759const _hoisted_13 = { 60760 key: 0, 60761 id: "error-last-name", 60762 class: "text-error", 60763 "aria-live": "assertive" 60764}; 60765const _hoisted_14 = { class: "row" }; 60766const _hoisted_15 = ["aria-required", "aria-invalid"]; 60767const _hoisted_16 = { 60768 key: 0, 60769 id: "error-emailAddress", 60770 class: "text-error", 60771 "aria-live": "assertive" 60772}; 60773const _hoisted_17 = ["aria-required", "aria-invalid", "onBlur"]; 60774const _hoisted_18 = { 60775 key: 0, 60776 id: "error-phoneNumber", 60777 class: "text-error", 60778 "aria-live": "assertive" 60779}; 60780const _hoisted_19 = { class: "row" }; 60781const _hoisted_20 = { class: "col submit-button" }; 60782function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { 60783 const _component_CoreIconCircleCheck = __nuxt_component_0$c; 60784 const _component_CoreBlock = _sfc_main$4x; 60785 const _component_CoreIconError = __nuxt_component_2$4;
60786 const _component_Field = resolveComponent("Field"); 60787 const _component_Form = resolveComponent("Form"); 60788 const _component_ClientOnly = __nuxt_component_3$3; 60789 const _directive_maska = resolveDirective("maska"); 60790 return openBlock(), createElementBlock("div", _hoisted_1, [ 60791 createBaseVNode("div", _hoisted_2, [ 60792 createBaseVNode("div", { 60793 class: "form-status-announcer", 60794 "aria-live": $setup.status === "fail" ? "assertive" : "polite", 60795 role: $setup.status === "fail" ? "alert" : "status", 60796 "aria-atomic": "true" 60797 }, toDisplayString($setup.statusAnnouncement()), 9, _hoisted_3), 60798 $setup.status === "pending" ? (openBlock(), createElementBlock("div", _hoisted_4, _cache[12] || (_cache[12] = [ 60799 createBaseVNode("p", null, "Submitting form, one moment...", -1), 60800 createBaseVNode("progress", null, null, -1) 60801 ]))) : $setup.status === "success" ? (openBlock(), createElementBlock("div", _hoisted_5, [ 60802 createVNode(_component_CoreIconCircleCheck, { class: "form_success-check" }), 60803 createVNode(_component_CoreBlock, { 60804 "is-editable": $props.isEditable, 60805 settings: { 60806 type: "text", 60807 text: $setup.onSuccessMessage, 60808 tag: "h4" 60809 } 60810 }, null, 8, ["is-editable", "settings"]) 60811 ])) : $setup.status === "fail" ? (openBlock(), createElementBlock("div", _hoisted_6, [ 60812 createVNode(_component_CoreIconError, { class: "fail-icon" }), 60813 createVNode(_component_CoreBlock, { 60814 "is-editable": $props.isEditable, 60815 settings: { 60816 type: "text", 60817 text: "There was problem submitting your form.", 60818 tag: "h4" 60819 } 60820 }, null, 8, ["is-editable"]) 60821 ])) : (openBlock(), createElementBlock("div", _hoisted_7, [ 60822 createVNode(_component_ClientOnly, null, { 60823 default: withCtx(() => [ 60824 createVNode(_component_Form, { 60825 ref: "observer", 60826 onSubmit: $setup.submit 60827 }, { 60828 default: withCtx(({ handleSubmit }) => [ 60829 createBaseVNode("form", { 60830 onSubmit: withModifiers(($event) => handleSubmit($event), ["prevent"]) 60831 }, [ 60832 createBaseVNode("div", _hoisted_9, [ 60833 createVNode(_component_Field, { 60834 modelValue: $setup.form.firstName, 60835 "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => $setup.form.firstName = $event), 60836 rules: { 60837 max: 31, 60838 required: true 60839 }, 60840 class: "col", 60841 name: "First Name", 60842 vid: `first-name-form:${$setup.formValidationId}` 60843 }, { 60844 default: withCtx(({ field, errors }) => [ 60845 createBaseVNode("div", null, [ 60846 _cache[13] || (_cache[13] = createBaseVNode("label", { 60847 for: "first-name", 60848 class: "required" 60849 }, "First Name", -1)), 60850 withDirectives(createBaseVNode("input", mergeProps({ id: "first-name" }, field, { 60851 "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => $setup.form.firstName = $event), 60852 "aria-required": "true", 60853 "aria-invalid": errors.length > 0, 60854 "aria-errormessage": "error-first-name", 60855 type: "text", 60856 name: "first-name", 60857 autocomplete: "off", 60858 class: { 60859 "bd-error": errors.length 60860 }, 60861 onKeydown: _cache[1] || (_cache[1] = ($event) => $setup.preventAngleBracket($event)) 60862 }), null, 16, _hoisted_10), [ 60863 [ 60864 vModelText, 60865 $setup.form.firstName, 60866 void 0, 60867 { trim: true } 60868 ] 60869 ]), 60870 errors ? (openBlock(), createElementBlock("small", _hoisted_11, toDisplayString(errors[0]), 1)) : createCommentVNode("", true) 60871 ]) 60872 ]), 60873 _: 1 60874 }, 8, ["modelValue", "vid"]), 60875 createVNode(_component_Field, { 60876 modelValue: $setup.form.lastName, 60877 "onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => $setup.form.lastName = $event), 60878 rules: { 60879 max: 31, 60880 required: true 60881 }, 60882 class: "col", 60883 name: "Last Name", 60884 vid: `last-name-form:${$setup.formValidationId}` 60885 }, { 60886 default: withCtx(({ field, errors }) => [ 60887 createBaseVNode("div", null, [ 60888 _cache[14] || (_cache[14] = createBaseVNode("label", { 60889 for: "last-name", 60890 class: "required" 60891 }, "Last Name", -1)), 60892 withDirectives(createBaseVNode("input", mergeProps({ id: "last-name" }, field, { 60893 "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => $setup.form.lastName = $event), 60894 "aria-required": "true", 60895 "aria-invalid": errors.length > 0, 60896 "aria-errormessage": "error-last-name", 60897 class: ["form-input", { 60898 "bd-error": errors.length 60899 }], 60900 type: "text", 60901 name: "last-name", 60902 autocomplete: "off", 60903 onKeydown: _cache[4] || (_cache[4] = ($event) => $setup.preventAngleBracket($event)) 60904 }), null, 16, _hoisted_12), [ 60905 [ 60906 vModelText, 60907 $setup.form.lastName, 60908 void 0, 60909 { trim: true } 60910 ] 60911 ]), 60912 errors ? (openBlock(), createElementBlock("small", _hoisted_13, toDisplayString(errors[0]), 1)) : createCommentVNode("", true) 60913 ]) 60914 ]), 60915 _: 1 60916 }, 8, ["modelValue", "vid"]) 60917 ]), 60918 createBaseVNode("div", _hoisted_14, [ 60919 createVNode(_component_Field, { 60920 modelValue: $setup.form.emailAddress, 60921 "onUpdate:modelValue": _cache[8] || (_cache[8] = ($event) => $setup.form.emailAddress = $event), 60922 rules: { 60923 email: true, 60924 required: $setup.isEmailRequired, 60925 max: 40 60926 }, 60927 class: "col", 60928 name: "Email", 60929 vid: `email-form:${$setup.formValidationId}` 60930 }, { 60931 default: withCtx(({ field, errors }) => [ 60932 createBaseVNode("div", null, [ 60933 createBaseVNode("label", { 60934 for: "emailAddress", 60935 class: normalizeClass({ 60936 required: $setup.isEmailRequired 60937 }) 60938 }, " Email ", 2), 60939 withDirectives(createBaseVNode("input", mergeProps({ id: "emailAddress" }, field, { 60940 "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => $setup.form.emailAddress = $event), 60941 "aria-required": $setup.isEmailRequired, 60942 "aria-invalid": errors.length > 0, 60943 "aria-errormessage": "error-emailAddress", 60944 class: ["form-input", { 60945 "bd-error": errors.length 60946 }], 60947 type: "email", 60948 name: "emailAddress", 60949 autocomplete: "off", 60950 onKeydown: _cache[7] || (_cache[7] = ($event) => $setup.preventAngleBracket($event)) 60951 }), null, 16, _hoisted_15), [ 60952 [ 60953 vModelText, 60954 $setup.form.emailAddress, 60955 void 0, 60956 { trim: true } 60957 ] 60958 ]), 60959 errors ? (openBlock(), createElementBlock("small", _hoisted_16, toDisplayString(errors[0]), 1)) : createCommentVNode("", true) 60960 ]) 60961 ]), 60962 _: 1 60963 }, 8, ["modelValue", "rules", "vid"]), 60964 createVNode(_component_Field, { 60965 modelValue: $setup.form.phoneNumber, 60966 "onUpdate:modelValue": _cache[11] || (_cache[11] = ($event) => $setup.form.phoneNumber = $event), 60967 rules: { 60968 max: 12, 60969 phone: true, 60970 required: $setup.isPhoneRequired 60971 }, 60972 name: "Phone Number", 60973 vid: `phone-number-form:${$setup.formValidationId}`, 60974 class: "col-6" 60975 }, { 60976 default: withCtx(({ field, errors, validate: validate2 }) => [ 60977 createBaseVNode("div", null, [ 60978 createBaseVNode("label", { 60979 for: "phoneNumber", 60980 class: normalizeClass({ 60981 required: $setup.isPhoneRequired 60982 }) 60983 }, " Phone Number ", 2), 60984 withDirectives(createBaseVNode("input", mergeProps({ id: "phoneNumber" }, field, { 60985 "onUpdate:modelValue": _cache[9] || (_cache[9] = ($event) => $setup.form.phoneNumber = $event), 60986 "aria-required": $setup.isPhoneRequired, 60987 "aria-invalid": errors.length > 0, 60988 "aria-errormessage": "error-phoneNumber", 60989 "data-maska": "###-###-####", 60990 class: ["form-input", { 60991 "bd-error": errors.length 60992 }], 60993 type: "tel", 60994 autocomplete: "off", 60995 name: "phoneNumber", 60996 onKeydown: _cache[10] || (_cache[10] = ($event) => $setup.preventAngleBracket($event)), 60997 onBlur: validate2 60998 }), null, 16, _hoisted_17), [ 60999 [vModelText, $setup.form.phoneNumber], 61000 [_directive_maska] 61001 ]), 61002 errors ? (openBlock(), createElementBlock("small", _hoisted_18, toDisplayString(errors[0]), 1)) : createCommentVNode("", true) 61003 ]) 61004 ]), 61005 _: 1 61006 }, 8, ["modelValue", "rules", "vid"]) 61007 ]), 61008 createBaseVNode("div", _hoisted_19, [ 61009 createBaseVNode("div", _hoisted_20, [ 61010 createVNode(_component_CoreBlock, { 61011 "data-testid": `form-submit-button`, 61012 "is-editable": $props.isEditable, 61013 type: "submit", 61014 value: "submit", 61015 class: "button", 61016 settings: { 61017 type: "button", 61018 label: "Submit", 61019 event: $setup.submit, 61020 icon: null, 61021 variants: { 61022 style: "primary" 61023 } 61024 } 61025 }, null, 8, ["is-editable", "settings"]), 61026 _cache[15] || (_cache[15] = createBaseVNode("div", { class: "mt-2" }, "* Required", -1)) 61027 ]) 61028 ]) 61029 ], 40, _hoisted_8) 61030 ]), 61031 _: 1 61032 }, 8, ["onSubmit"]) 61033 ]), 61034 _: 1 61035 }) 61036 ])) 61037 ]) 61038 ], 512); 61039} 61040const CoreBlockForm = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]); 61041const CoreBlockForm$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ 61042 __proto__: null, 61043 default: CoreBlockForm 61044}, Symbol.toStringTag, { value: "Module" })); 61045export { 61046 getAppManifest as $, 61047 AliasSortingPlugin as A, 61048 useRuntimeConfig as B, 61049 hashMode as C, 61050 DeprecationsPlugin as D, 61051 routerOptions as E, 61052 createWebHashHistory as F, 61053 createWebHistory as G, 61054 HasElementTags as H, 61055 createRouter as I, 61056 useError as J, 61057 KeepAlive as K, 61058 clearError as L, 61059 isReadonly as M,
61060 createError$1 as N, 61061 isNuxtError as O, 61062 PromisesPlugin as P, 61063 withoutBase as Q, 61064 isSamePath as R, 61065 START_LOCATION_NORMALIZED as S, 61066 TemplateParamsPlugin as T, 61067 toValue as U, 61068 hasProtocol$1 as V, 61069 withHttps as W, 61070 useState as X, 61071 loadPayload as Y, 61072 onNuxtReady as Z, 61073 __vitePreload as _, 61074 withQuery$1 as a, 61075 LazyCoreBlockText as a$, 61076 outdatedBuildInterval as a0, 61077 buildAssetsURL as a1, 61078 joinURL as a2, 61079 reloadNuxtApp as a3, 61080 LazyCoreBlockCalendly as a4, 61081 LazyCoreBlockContactCard as a5, 61082 LazyCoreBlockDisclosures as a6, 61083 LazyCoreBlockForm as a7, 61084 LazyCoreBlockFooter as a8, 61085 LazyCoreBlockFooterBackground as a9, 61086 LazyCoreBlockDialog as aA, 61087 LazyCoreBlockDivider as aB, 61088 LazyCoreBlockDynamicForm as aC, 61089 LazyCoreBlockFile as aD, 61090 LazyCoreBlockFrameEmbed as aE, 61091 LazyCoreBlockGrid as aF, 61092 LazyCoreBlockHero as aG, 61093 LazyCoreBlockHeroBackground as aH, 61094 LazyCoreBlockHeroComponent as aI, 61095 LazyCoreBlockHtml as aJ, 61096 LazyCoreBlockIcon as aK, 61097 LazyCoreBlockImage as aL, 61098 LazyCoreBlockImageCropped as aM, 61099 LazyCoreBlockLazy as aN, 61100 LazyCoreBlockMainNav as aO, 61101 LazyCoreBlockMainNavImage as aP, 61102 LazyCoreBlockMap as aQ, 61103 LazyCoreBlockMedia as aR, 61104 LazyCoreBlockNavItem as aS, 61105 LazyCoreBlockOEmbed as aT, 61106 LazyCoreBlockPencilBanner as aU, 61107 LazyCoreBlockRepeat as aV, 61108 LazyCoreBlockRichText as aW, 61109 LazyCoreBlockRows as aX, 61110 LazyCoreBlockSelect as aY, 61111 LazyCoreBlockSocialLinks as aZ, 61112 LazyCoreBlockStickyButton as a_, 61113 LazyCoreBlockFooterBanner as aa, 61114 LazyCoreBlockFooterDisclosures as ab, 61115 LazyCoreBlockFooterLogo as ac, 61116 LazyCoreBlockFooterOneTrust as ad, 61117 LazyCoreBlockFooterSocialLinks as ae, 61118 LazyCoreBlockFooterContact as af, 61119 LazyCoreBlockFooterContactAddress as ag, 61120 LazyCoreBlockFooterContactEmail as ah, 61121 LazyCoreBlockFooterContactGroup as ai, 61122 LazyCoreBlockFooterContactPhone as aj, 61123 LazyCoreAnchorLinkNavigation as ak, 61124 LazyCoreBlock as al, 61125 LazyCoreBlockAccessibleTooltip as am, 61126 LazyCoreBlockAddressAutocomplete as an, 61127 LazyCoreBlockArticleCard as ao, 61128 LazyCoreBlockArticles as ap, 61129 LazyCoreBlockBreadcrumbs as aq, 61130 LazyCoreBlockButton as ar, 61131 LazyCoreBlockCalculators as as, 61132 LazyCoreBlockCalendlyEmbed as at, 61133 LazyCoreBlockCarousel as au, 61134 LazyCoreBlockCenteredNavBar as av, 61135 LazyCoreBlockColumns as aw, 61136 LazyCoreBlockContactHero as ax, 61137 LazyCoreBlockContentCard as ay, 61138 LazyCoreBlockContentCardTextField as az, 61139 baseURL as b, 61140 LazyCoreIconCloseCircleFilled as b$, 61141 LazyCoreBlockUnknown as b0, 61142 LazyCoreBlockVerticalDivider as b1, 61143 LazyCoreBlockVideo as b2, 61144 LazyCoreBlockContainer as b3, 61145 LazyCoreBlockContainerAccordion as b4, 61146 LazyCoreBlockContainerTabs as b5, 61147 LazyCoreBlockContainerToggle as b6, 61148 LazyCoreIcon as b7, 61149 LazyCoreIconAccordion as b8, 61150 LazyCoreIconAccount as b9, 61151 LazyCoreIconBrush as bA, 61152 LazyCoreIconButton as bB, 61153 LazyCoreIconCalendar as bC, 61154 LazyCoreIconCalendly as bD, 61155 LazyCoreIconCalendlyTitle as bE, 61156 LazyCoreIconCamera as bF, 61157 LazyCoreIconCardAccount as bG, 61158 LazyCoreIconCarousel as bH, 61159 LazyCoreIconCarouselBackward as bI, 61160 LazyCoreIconCarouselForward as bJ, 61161 LazyCoreIconCategories as bK, 61162 LazyCoreIconChanges as bL, 61163 LazyCoreIconCheckmark as bM, 61164 LazyCoreIconChevronDown as bN, 61165 LazyCoreIconChevronLeft as bO, 61166 LazyCoreIconChevronRight as bP, 61167 LazyCoreIconChevronUp as bQ, 61168 LazyCoreIconCircleCheck as bR, 61169 LazyCoreIconCircleCheckLight as bS, 61170 LazyCoreIconCircleMinus as bT, 61171 LazyCoreIconCircleMinusFilled as bU, 61172 LazyCoreIconCirclePlus as bV, 61173 LazyCoreIconCirclePlusFilled as bW, 61174 LazyCoreIconClock as bX, 61175 LazyCoreIconClockFilled as bY, 61176 LazyCoreIconClose as bZ, 61177 LazyCoreIconCloseCircle as b_, 61178 LazyCoreIconActions as ba, 61179 LazyCoreIconActivity as bb, 61180 LazyCoreIconAddFolder as bc, 61181 LazyCoreIconAddPage as bd, 61182 LazyCoreIconAdvancedSearch as be, 61183 LazyCoreIconAlignCenter as bf, 61184 LazyCoreIconAlignLeft as bg, 61185 LazyCoreIconAlignRight as bh, 61186 LazyCoreIconAlignVerticalBottom as bi, 61187 LazyCoreIconAlignVerticalCenter as bj, 61188 LazyCoreIconAlignVerticalTop as bk, 61189 LazyCoreIconAnalytics as bl, 61190 LazyCoreIconAnchorLink as bm, 61191 LazyCoreIconArchive as bn, 61192 LazyCoreIconArrowDown as bo, 61193 LazyCoreIconArrowLeft as bp, 61194 LazyCoreIconArrowLeftCircle as bq, 61195 LazyCoreIconArrowRight as br, 61196 LazyCoreIconArrowUp as bs, 61197 LazyCoreIconArticle as bt, 61198 LazyCoreIconBars as bu, 61199 LazyCoreIconBell as bv, 61200 LazyCoreIconBilling as bw, 61201 LazyCoreIconBlock as bx, 61202 LazyCoreIconBottomBanner as by, 61203 LazyCoreIconBreadcrumbExpand as bz, 61204 createError as c, 61205 LazyCoreIconImageOffset as c$, 61206 LazyCoreIconCompliance as c0, 61207 LazyCoreIconComputer as c1, 61208 LazyCoreIconConnected as c2, 61209 LazyCoreIconConnectedOutline as c3, 61210 LazyCoreIconContact as c4, 61211 LazyCoreIconContactEmail as c5, 61212 LazyCoreIconContactFax as c6, 61213 LazyCoreIconContactPage as c7, 61214 LazyCoreIconContactPhone as c8, 61215 LazyCoreIconContactSmartphone as c9, 61216 LazyCoreIconEmoji as cA, 61217 LazyCoreIconError as cB, 61218 LazyCoreIconErrorFilled as cC, 61219 LazyCoreIconExternalLink as cD, 61220 LazyCoreIconFacebook as cE, 61221 LazyCoreIconFavoriteFilled as cF, 61222 LazyCoreIconFavoriteUnfilled as cG, 61223 LazyCoreIconFax as cH, 61224 LazyCoreIconFile as cI, 61225 LazyCoreIconFilter as cJ, 61226 LazyCoreIconFilterOutline as cK, 61227 LazyCoreIconFocalPoint as cL, 61228 LazyCoreIconFolder as cM, 61229 LazyCoreIconFooter as cN, 61230 LazyCoreIconForm as cO, 61231 LazyCoreIconFormIcon as cP, 61232 LazyCoreIconGlobe as cQ, 61233 LazyCoreIconGradient as cR, 61234 LazyCoreIconGradientSquare as cS, 61235 LazyCoreIconGrid as cT, 61236 LazyCoreIconGridOn as cU, 61237 LazyCoreIconHamburgerMenu as cV, 61238 LazyCoreIconHeader as cW, 61239 LazyCoreIconHome as cX, 61240 LazyCoreIconIcon71 as cY, 61241 LazyCoreIconIcons as cZ, 61242 LazyCoreIconImage as c_, 61243 LazyCoreIconContainersIcon as ca, 61244 LazyCoreIconContentLibrary as cb, 61245 LazyCoreIconContentLibraryMedia as cc, 61246 LazyCoreIconCopy as cd, 61247 LazyCoreIconCopyright as ce, 61248 LazyCoreIconCornerDownRight as cf, 61249 LazyCoreIconCreditCard as cg, 61250 LazyCoreIconCrop as ch, 61251 LazyCoreIconDefault as ci, 61252 LazyCoreIconDesign as cj, 61253 LazyCoreIconDevices as ck, 61254 LazyCoreIconDiagonalRightArrow as cl, 61255 LazyCoreIconDisclosures as cm, 61256 LazyCoreIconDivider as cn, 61257 LazyCoreIconDomains as co, 61258 LazyCoreIconDotsHorizontal as cp, 61259 LazyCoreIconDotsVertical as cq, 61260 LazyCoreIconDownArrow as cr, 61261 LazyCoreIconDownload as cs, 61262 LazyCoreIconDraftDetails as ct, 61263 LazyCoreIconDrafts as cu, 61264 LazyCoreIconDuplicate as cv, 61265 LazyCoreIconEdit as cw, 61266 LazyCoreIconEditCircle as cx, 61267 LazyCoreIconEllipsisOutlined as cy, 61268 LazyCoreIconEmail as cz, 61269 defineNuxtPlugin as d, 61270 LazyCoreIconSettings as d$, 61271 LazyCoreIconInReview as d0, 61272 LazyCoreIconInfo as d1, 61273 LazyCoreIconInsertDriveFile as d2, 61274 LazyCoreIconInsertLink as d3, 61275 LazyCoreIconInstagram as d4, 61276 LazyCoreIconLandingLogo as d5, 61277 LazyCoreIconLayout as d6,
61278 LazyCoreIconLeftArrow as d7, 61279 LazyCoreIconLinkedin as d8, 61280 LazyCoreIconList as d9, 61281 LazyCoreIconPaddingRight as dA, 61282 LazyCoreIconPaddingTop as dB, 61283 LazyCoreIconPage as dC, 61284 LazyCoreIconPages as dD, 61285 LazyCoreIconPaintersPalette as dE, 61286 LazyCoreIconPause as dF, 61287 LazyCoreIconPauseCircle as dG, 61288 LazyCoreIconPdf as dH, 61289 LazyCoreIconPhone as dI, 61290 LazyCoreIconPhotoLibrary as dJ, 61291 LazyCoreIconPlay as dK, 61292 LazyCoreIconPlayCircle as dL, 61293 LazyCoreIconPlayCircleButton as dM, 61294 LazyCoreIconPlus as dN, 61295 LazyCoreIconQuestionMark as dO, 61296 LazyCoreIconReaderMode as dP, 61297 LazyCoreIconRedo as dQ, 61298 LazyCoreIconReorder as dR, 61299 LazyCoreIconReplace as dS, 61300 LazyCoreIconReplay as dT, 61301 LazyCoreIconRevert as dU, 61302 LazyCoreIconRightArrow as dV, 61303 LazyCoreIconRoundedSquare as dW, 61304 LazyCoreIconSearch as dX, 61305 LazyCoreIconSection as dY, 61306 LazyCoreIconSelectAll as dZ, 61307 LazyCoreIconSeo as d_, 61308 LazyCoreIconListView as da, 61309 LazyCoreIconLock as db, 61310 LazyCoreIconLogo as dc, 61311 LazyCoreIconMap as dd, 61312 LazyCoreIconMapPin as de, 61313 LazyCoreIconMaximize as df, 61314 LazyCoreIconMedia as dg, 61315 LazyCoreIconMenuClose as dh, 61316 LazyCoreIconMessageCircle as di, 61317 LazyCoreIconMinimize as dj, 61318 LazyCoreIconMinus as dk, 61319 LazyCoreIconMobilePhone as dl, 61320 LazyCoreIconModal as dm, 61321 LazyCoreIconMonitor as dn, 61322 LazyCoreIconMovieStrip as dp, 61323 LazyCoreIconNews as dq, 61324 LazyCoreIconNotes as dr, 61325 LazyCoreIconNotificationAlert as ds, 61326 LazyCoreIconNotifications as dt, 61327 LazyCoreIconOneTrust as du, 61328 LazyCoreIconOpenInFull as dv, 61329 LazyCoreIconPaddingAll as dw, 61330 LazyCoreIconPaddingBottom as dx, 61331 LazyCoreIconPaddingHorizontal as dy, 61332 LazyCoreIconPaddingLeft as dz, 61333 shallowReactive as e, 61334 generateCodeFrame as e$, 61335 LazyCoreIconShield as e0, 61336 LazyCoreIconShoppingBag as e1, 61337 LazyCoreIconShoppingCart as e2, 61338 LazyCoreIconSiteRedo as e3, 61339 LazyCoreIconSiteStyles as e4, 61340 LazyCoreIconSiteUndo as e5, 61341 LazyCoreIconSizing as e6, 61342 LazyCoreIconSocial as e7, 61343 LazyCoreIconSquareEdit as e8, 61344 LazyCoreIconStore as e9, 61345 defineAsyncComponent as eA, 61346 toRaw as eB, 61347 nextTick as eC, 61348 BRAND_FEATURE_FLAGS as eD, 61349 createStore as eE, 61350 axios as eF, 61351 mustache as eG, 61352 NOOP as eH, 61353 extend$1 as eI, 61354 isString$1 as eJ, 61355 NO as eK, 61356 isSymbol$1 as eL, 61357 isBuiltInDirective as eM, 61358 capitalize$1 as eN, 61359 camelize as eO, 61360 EMPTY_OBJ as eP, 61361 isObject$4 as eQ, 61362 toHandlerKey as eR, 61363 isArray$4 as eS, 61364 isOn as eT, 61365 isReservedProp as eU, 61366 isHTMLTag as eV, 61367 isSVGTag as eW, 61368 isMathMLTag as eX, 61369 isVoidTag as eY, 61370 parseStringStyle as eZ, 61371 makeMap as e_, 61372 LazyCoreIconTablet as ea, 61373 LazyCoreIconTabs as eb, 61374 LazyCoreIconTemplate as ec, 61375 LazyCoreIconTextStyle as ed, 61376 LazyCoreIconTheme as ee, 61377 LazyCoreIconTool as ef, 61378 LazyCoreIconTrash as eg, 61379 LazyCoreIconTwitter as eh, 61380 LazyCoreIconUndo as ei, 61381 LazyCoreIconUnlock as ej, 61382 LazyCoreIconUpdate as ek, 61383 LazyCoreIconUpload as el, 61384 LazyCoreIconUser as em, 61385 LazyCoreIconUserCheck as en, 61386 LazyCoreIconVideo as eo, 61387 LazyCoreIconVideoPlay as ep, 61388 LazyCoreIconViewDesktop as eq, 61389 LazyCoreIconViewDesktopSettings as er, 61390 LazyCoreIconViewLiveSite as es, 61391 LazyCoreIconVisibilityOff as et, 61392 LazyCoreIconVisibilityOn as eu, 61393 LazyCoreIconVolumeOff as ev, 61394 LazyCoreIconVolumeOn as ew, 61395 LazyCoreIconVolumeUp as ex, 61396 LazyCoreIconWatchLater as ey, 61397 LazyCoreIconYoutube as ez, 61398 reactive as f, 61399 __nuxt_component_0$2 as f$, 61400 runtimeDom_esmBundler as f0, 61401 shared_esmBundler as f1, 61402 defineComponent as f2, 61403 provide as f3, 61404 PageRouteSymbol as f4, 61405 inject as f5, 61406 watch as f6, 61407 onBeforeUnmount as f7, 61408 appPageTransition as f8, 61409 appKeepalive as f9, 61410 vueAppRootContainer as fA, 61411 useHead as fB, 61412 createBaseVNode as fC, 61413 toDisplayString as fD, 61414 createTextVNode as fE, 61415 __nuxt_component_2$5 as fF, 61416 useBlockNavOffset as fG, 61417 normalizeClass as fH, 61418 createStaticVNode as fI, 61419 useStore$1 as fJ, 61420 useRequestURL as fK, 61421 withAsyncContext as fL, 61422 navigateTo as fM, 61423 resolveNavOffsetStyle as fN, 61424 getFirstEligiblePageBlockIndex as fO, 61425 onMounted as fP, 61426 createCommentVNode as fQ, 61427 renderList as fR, 61428 _sfc_main$4x as fS, 61429 __variableDynamicImportRuntimeHelper as fT, 61430 useFetch as fU, 61431 getSiteAnimationSettingsFromRecord as fV, 61432 isAnimationEnabled as fW, 61433 normalizeAnimationSpeed as fX,
61434 ANIMATION_SPEED_DURATIONS as fY, 61435 callOnce as fZ, 61436 onUnmounted as f_, 61437 _wrapInTransition as fa, 61438 Suspense as fb, 61439 RouterView as fc, 61440 defu as fd, 61441 Fragment as fe, 61442 LayoutMetaSymbol as ff, 61443 useRoute$2 as fg, 61444 useRoute$1 as fh, 61445 computed as fi, 61446 unref as fj, 61447 appLayoutTransition as fk, 61448 mergeProps as fl, 61449 _export_sfc as fm, 61450 createBlock as fn, 61451 openBlock as fo, 61452 withCtx as fp, 61453 createVNode as fq, 61454 normalizeProps$1 as fr, 61455 guardReactiveProps as fs, 61456 onErrorCaptured as ft, 61457 createElementBlock as fu, 61458 resolveDynamicComponent as fv, 61459 createSSRApp as fw, 61460 createApp as fx, 61461 createNuxtApp as fy, 61462 applyPlugins as fz, 61463 definePayloadReviver as g, 61464 renderSlot as g0, 61465 __nuxt_component_2$1 as g1, 61466 __nuxt_component_1$1 as g2, 61467 executeAsync as h, 61468 getNuxtClientPayload as i, 61469 destr as j, 61470 hashTag as k, 61471 isMetaArrayDupeKey as l, 61472 dedupeKey as m, 61473 normalizeProps as n, 61474 createUnhead as o, 61475 h as p, 61476 defineNuxtRouteMiddleware as q, 61477 ref as r, 61478 shallowRef as s, 61479 useRouter$2 as t, 61480 useNuxtApp as u, 61481 vueInstall as v, 61482 withBase as w, 61483 showError as x, 61484 getRouteRules as y, 61485 hasProtocol as z 61486};
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.